@font-face{font-family:Open Sans;src:url(assets/opensans-regular.ttf) format('truetype');font-weight:400;font-display:swap}@font-face{font-family:Open Sans;src:url(assets/opensans-semibold.ttf) format('truetype');font-weight:600;font-display:swap}@font-face{font-family:Open Sans;src:url(assets/opensans-bold.ttf) format('truetype');font-weight:700;font-display:swap}
:root{--ink:#172d46;--muted:#5e6e80;--brand:#1768ab;--navy:#173b60;--line:#e0e6ed;--surface:#f4f6f8;--red:#a62d3c;--amber:#825314;--green:#276542;--blue-wash:#edf4fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--ink);background:var(--surface);font:13px/1.55 'Open Sans',sans-serif}button,input,select{font:inherit;color:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button,a,summary{touch-action:manipulation}button{cursor:pointer}a{color:var(--brand);text-underline-offset:3px}button{border:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #287cc5;outline-offset:3px}svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button{transition:background .18s ease,color .18s ease}h1,h2,h3,p{margin-top:0}h1{font-size:28px;font-weight:700;line-height:1.3;letter-spacing:-.03em;margin-bottom:9px}h1 span{font-weight:400;margin-left:8px;color:var(--muted)}h2{font-size:16px;font-weight:700;letter-spacing:-.02em}h3{font-size:13px;font-weight:700;margin:24px 0 10px}button svg{vertical-align:middle}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}.skip{position:fixed;top:-100px;left:10px;z-index:30;background:white;padding:12px}.skip:focus{top:10px}.sidebar{width:224px;position:fixed;inset:0 auto 0 0;background:#fff;border-right:1px solid var(--line);padding:28px 17px;display:flex;flex-direction:column;z-index:10}.brand{padding:0 4px;display:block;margin-bottom:37px}.brand img{display:block;width:185px;max-width:100%;height:auto}.workspace{display:flex;align-items:center;gap:11px;margin:0 8px 27px}.project-symbol{background:var(--navy);color:white;display:grid;place-items:center;width:36px;height:39px;border-radius:9px;font-size:20px;font-weight:700}.workspace strong{font-size:14px;display:block}.workspace div>span{font-size:11px;color:var(--muted)}nav{display:grid;gap:5px}nav button{display:flex;align-items:center;gap:10px;padding:12px 10px;background:transparent;color:var(--muted);border-radius:7px;text-align:left;font-size:11px;font-weight:600;white-space:nowrap}nav button svg{width:17px;height:17px}nav button>span:last-child{margin-left:auto;font-size:10px;min-width:19px;text-align:center}nav button.active{background:var(--blue-wash);color:#14598f}nav button:hover{background:#f1f4f7}.side-note{margin: auto 9px 23px;padding-top:30px;font-size:11px}.side-note strong{font-weight:600}.side-note p{margin:8px 0 12px;color:var(--muted);line-height:1.7}.side-note>span:last-child{font-size:10px;color:var(--muted)}.live-dot{display:inline-block;width:6px;height:6px;background:#347b61;border-radius:50%;margin-right:7px;vertical-align:middle}.source-download{border-top:1px solid var(--line);padding:17px 9px 0;font-size:10px;color:var(--muted);text-decoration:none;display:flex;justify-content:space-between}.app{margin-left:224px}.topbar{height:66px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 35px;font-size:11px;color:var(--muted)}.top-project{font-weight:700;color:var(--navy)}.separator{color:#98a5b3;margin:0 12px}.topbar strong{font-weight:600}.cut-date{font-size:10px}main{padding:33px 32px 0;max-width:1800px;margin:auto}.page-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:29px}.page-intro p{margin:0;color:var(--muted);font-size:12px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;padding:10px 14px;font-size:11px;font-weight:600;min-height:40px;white-space:nowrap}.primary{background:var(--navy);color:white}.primary:hover{background:#24547f}.secondary{background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.secondary:hover{background:#edf3f9}.overview{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:10px;background:#fff;margin-bottom:20px;overflow:hidden}.overview button{text-align:left;background:transparent;padding:20px 21px;border-right:1px solid var(--line)}.overview button:last-child{border-right:0}.overview button:hover{background:#f9fbfd}.overview button>span{font-size:11px;color:var(--muted);display:block}.overview strong{display:block;font-size:31px;letter-spacing:-.04em;font-weight:600;line-height:1.6;font-variant-numeric:tabular-nums}.overview small{font-size:10px;color:var(--muted)}.red-text{color:var(--red)}.amber-text{color:var(--amber)}.scope-note{display:flex;gap:10px;align-items:flex-start;font-size:11px;padding:0 2px 22px;color:var(--muted)}.scope-note svg{width:16px;height:16px;margin-top:2px;color:#57748d}.scope-note p{margin:0;max-width:115ch}.scope-note strong{color:var(--ink);font-weight:600}.register{background:white;border:1px solid var(--line);border-radius:10px;overflow:hidden}.register-heading{padding:20px 22px 16px;display:flex;justify-content:space-between;gap:15px;align-items:center}.register-heading>div:first-child{display:flex;align-items:baseline;gap:12px}.register-heading h2{margin:0}.register-heading span#result-count{font-size:10px;color:var(--muted)}.evidence-total{display:flex;align-items:center;gap:6px;font-size:10px;color:var(--muted)}.evidence-total svg{width:15px}.filters{padding:0 22px 18px;display:flex;gap:9px;flex-wrap:wrap}.filters label{display:flex;min-width:0}.search{flex:1;position:relative;min-width:210px!important}.search svg{position:absolute;top:10px;left:11px;width:16px;color:var(--muted)}.search input{width:100%;padding:9px 10px 9px 34px}input,select{border:1px solid #ccd6e0;background:white;border-radius:6px;font-size:10px;min-height:38px}select{padding:8px 24px 8px 10px;max-width:158px}input::placeholder{color:#647487}.quiet{background:transparent;color:var(--muted);font-size:10px;padding:9px 3px;min-height:38px}.quiet:hover{color:var(--brand)}.review-workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(355px,1fr);border-top:1px solid var(--line);align-items:start}.list-pane{min-width:0}.table-scroll{height:820px;overflow:auto;scrollbar-width:thin;scrollbar-color:#c5cfda transparent}table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:left}th{position:sticky;top:0;background:#f9fafc;z-index:1;padding:12px 13px;font-size:9px;color:var(--muted);font-weight:600;border-bottom:1px solid var(--line)}th:first-child{width:46%;padding-left:20px}th:nth-child(2){width:18%}th:nth-child(3){width:17%}th:nth-child(4){width:19%}td{vertical-align:top;padding:16px 10px 16px 13px;border-bottom:1px solid #e9edf2;font-size:10px}td:first-child{padding-left:20px}tr{background:white}tbody tr:hover{background:#f7fafc}tbody tr.selected{background:#edf4fb}tbody tr.selected td:first-child{box-shadow:inset 3px 0 0 var(--brand)}.issue-link{font-size:10px;font-weight:700;text-decoration:none;letter-spacing:.02em}.issue-title{display:block;color:var(--ink);font-weight:600;font-size:11px;line-height:1.6;margin-top:5px;text-decoration:none;overflow-wrap:anywhere}.issue-owner{color:var(--muted);font-size:9px;display:block;margin-top:7px}.badge{display:inline-block;border-radius:4px;font-size:9px;font-weight:600;line-height:1.5;padding:4px 6px;background:#f0f3f6;color:#556578;overflow-wrap:anywhere}.badge.blue{color:#205f96;background:#e7f0f9}.badge.red{color:#9e2a3d;background:#fbeef0}.badge.amber{color:#80541b;background:#fbf2e4}.badge.green{color:#276542;background:#edf5ef}.badge.violet{color:#65508e;background:#f0edf6}.review-dot{width:5px;height:5px;border-radius:50%;display:inline-block;margin-right:4px;background:currentColor;vertical-align:middle}.list-footer{font-size:9px;color:var(--muted);padding:13px 20px;display:flex;justify-content:space-between;gap:12px;border-top:1px solid var(--line)}.detail-pane{border-left:1px solid var(--line);padding:23px 24px;min-height:862px;background:#fff;min-width:0;overflow-wrap:anywhere}.detail-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:14px}.detail-id{font-size:12px;font-weight:700;letter-spacing:.02em;color:var(--brand)}.detail-top .secondary{min-height:30px;font-size:9px;padding:6px 9px}.detail-title{font-size:19px;line-height:1.45;letter-spacing:-.025em;margin-bottom:12px}.detail-meta{font-size:10px;color:var(--muted);margin-bottom:18px}.status-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:20px}.status-cell{padding:10px 12px;background:#f7f9fb;border-radius:6px}.status-cell>span:first-child{display:block;font-size:9px;color:var(--muted);margin-bottom:5px}.verdict{border:1px solid #d7e3ee;border-radius:7px;padding:14px 15px;background:#f7fafd}.verdict .badge{margin-bottom:8px}.verdict strong{display:block;font-size:12px;line-height:1.6}.verdict p{font-size:11px;line-height:1.8;margin:8px 0 0;color:var(--muted)}.verdict.has-difference{background:#fff8f8;border-color:#eedade}.verdict.has-difference strong{color:#922b3a}.review-scope{font-size:9px!important;color:#566d83!important;margin-top:10px!important}.detail-description{white-space:pre-line;font-size:11px;color:#40546c;line-height:1.9;margin:0}.source-comment{font-size:11px;color:var(--muted);line-height:1.8;padding:12px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.source-comment strong{font-size:10px;display:block;color:var(--ink);margin-bottom:4px}.next-step{font-size:11px;line-height:1.8;color:#40546c}.evidence-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.evidence-button{display:block;padding:0;text-align:left;background:#f5f7fa;border:1px solid var(--line);border-radius:6px;overflow:hidden;min-width:0}.evidence-button img{width:100%;height:108px;object-fit:contain;background:#edf1f5;display:block}.evidence-button span{display:block;padding:7px 8px;font-size:9px;color:var(--muted)}.evidence-button:hover{border-color:var(--brand)}.section-help{font-size:10px;color:var(--muted);line-height:1.7}.file-reference{border-bottom:1px solid var(--line);font-size:10px;padding:9px 0;color:var(--muted);line-height:1.7}.file-reference strong{display:block;color:var(--ink);font-size:10px}.file-reference span{display:block;font-size:9px}.source-list{font-size:10px;line-height:1.8;list-style:none;padding:0;color:var(--muted)}.source-list li{margin:6px 0;overflow-wrap:anywhere}.source-list code{font-size:9px}.relations{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.relations a{font-size:10px}.timeline{list-style:none;padding:0;font-size:10px;color:var(--muted);margin:12px 0 0}.timeline li{padding:0 0 16px 15px;border-left:1px solid var(--line);position:relative}.timeline li::before{position:absolute;content:'';width:5px;height:5px;background:#8ea6bb;left:-3px;top:6px;border-radius:50%}.timeline time{font-size:9px}.timeline strong{display:block;color:var(--ink);margin:2px 0 5px;font-weight:600}.timeline p{margin:0}.trace{font-size:9px;color:var(--muted);line-height:1.8;background:#f8fafc;padding:11px 12px;border-radius:5px}.methodology{padding:33px 2px 10px}.methodology h2{margin-bottom:17px}.methodology>div{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.methodology p{font-size:11px;color:var(--muted);line-height:1.9;max-width:75ch}.methodology strong{color:var(--ink);font-weight:600}details summary{font-size:11px;color:var(--brand);cursor:pointer;padding:9px 0}details p{margin:12px 0}.local-proof{display:flex;gap:20px;flex-wrap:wrap;font-size:11px}.hash{font-size:9px!important;word-break:break-all}.page-footer{margin:14px 34px 0;padding:18px 0 24px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:9px;color:var(--muted)}.empty{text-align:center;padding:80px 22px;color:var(--muted)}.empty p{font-size:11px;margin:10px auto 20px;max-width:38ch}.loading{padding:40px;color:var(--muted)}dialog{border:0;border-radius:10px;padding:18px;max-width:min(95vw,1300px);width:95vw;max-height:95vh;color:var(--ink);box-shadow:0 20px 80px #122b4455}dialog::backdrop{background:#14283dd9}dialog>img{display:block;width:100%;max-height:76vh;object-fit:contain;background:#f1f4f7}.viewer-head{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:14px}.viewer-head p{margin:0;font-size:12px}.viewer-note{font-size:10px;color:var(--muted);margin:12px 0 0}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:var(--navy);color:white;font-size:12px;padding:12px 18px;border-radius:7px;box-shadow:0 8px 24px #102a4233;z-index:40;display:none;max-width:90vw}.toast.visible{display:block}.mobile-back{display:none}.mobile-detail-title{display:none}
@media(min-width:1550px){body{font-size:14px}.review-workspace{grid-template-columns:minmax(0,1.3fr) minmax(440px,1fr)}th,td .badge,.issue-owner{font-size:10px}.issue-title{font-size:12px}.detail-description,.verdict p,.next-step{font-size:12px}.detail-pane{padding:25px 30px}}
@media(max-width:1200px){.sidebar{width:194px;padding:25px 12px}.app{margin-left:194px}.brand img{width:163px}nav button{font-size:10px;gap:7px}main{padding:25px 22px 0}.topbar{padding:0 24px}.page-intro{align-items:flex-start}h1{font-size:25px}h1 span{display:block;margin:3px 0 0}.overview button{padding:16px 13px}.overview small{font-size:9px}.review-workspace{grid-template-columns:minmax(0,1fr) minmax(320px,.95fr)}.filters{padding:0 16px 16px;gap:7px}.filters .search{flex-basis:100%}.filters label:not(.search){flex:1}select{width:100%;max-width:none}.detail-pane{padding:20px 18px}.detail-title{font-size:17px}.register-heading{padding:18px 16px}.register-heading>div:first-child{display:block}.register-heading h2{margin-bottom:4px}.evidence-total{font-size:9px}td{padding:14px 8px;font-size:9px}td:first-child{padding-left:13px}th:first-child{padding-left:13px}th{padding:10px 8px}.badge{font-size:8px;padding:3px 5px}.methodology>div{gap:20px}}
@media(max-width:960px){.sidebar{width:175px}.app{margin-left:175px}.brand img{width:145px}.workspace{margin-left:3px}.workspace strong{font-size:12px}nav button{font-size:9px;padding-left:6px;padding-right:6px}nav button svg{width:15px}.review-workspace{display:block}.detail-pane{border-left:0;border-top:1px solid var(--line);min-height:0}.table-scroll{height:580px}.detail-pane .detail-description{max-width:85ch}.evidence-grid{grid-template-columns:repeat(3,1fr)}.overview{grid-template-columns:repeat(2,1fr)}.overview button:nth-child(2){border-right:0}.overview button:nth-child(-n+2){border-bottom:1px solid var(--line)}.overview strong{font-size:28px}.methodology>div{grid-template-columns:1fr;gap:0}.methodology p{max-width:90ch}.cut-date{display:none}}
@media(max-width:650px){.sidebar{position:static;width:100%;padding:16px 18px 0;border-right:0;border-bottom:1px solid var(--line);display:block}.brand{margin:0 0 17px;padding:0}.brand img{width:174px}.workspace,.side-note,.source-download{display:none}nav{display:flex;overflow-x:auto;gap:5px;padding-bottom:12px;scrollbar-width:thin}nav button{font-size:10px;padding:10px;flex-shrink:0}nav button svg{display:none}nav button>span:last-child{margin-left:8px}.app{margin:0}.topbar{height:44px;padding:0 19px;font-size:10px}.separator{margin:0 9px}main{padding:24px 15px 0}.page-intro{gap:10px;margin-bottom:22px}h1{font-size:23px;line-height:1.4}h1 span{font-size:20px;margin-top:0}.page-intro p{font-size:11px;max-width:26ch}.primary{padding:9px 10px;min-height:36px;font-size:10px}.primary svg{width:14px}.overview{border-radius:8px;margin-bottom:17px}.overview button{padding:14px 13px}.overview button>span{font-size:10px}.overview small{font-size:8px;line-height:1.5;display:block}.overview strong{font-size:28px}.scope-note{font-size:10px;line-height:1.8;padding-bottom:18px}.scope-note svg{margin-top:4px}.register-heading{padding:17px 13px 12px;align-items:flex-start;gap:6px}.register-heading h2{font-size:14px}.evidence-total{max-width:95px;font-size:9px;flex-wrap:wrap;gap:3px}.evidence-total svg{width:13px}.filters{padding:0 13px 14px;gap:8px}.filters label:not(.search){flex-basis:calc(50% - 8px)}.filters label:last-of-type{flex-basis:70%}.filters .quiet{margin-left:auto;min-width:45px}select,input{font-size:10px;min-height:40px}.table-scroll{height:650px}thead{display:none}table,tbody,tr,td{display:block;width:100%}tr{position:relative;padding:14px 13px 13px;border-bottom:1px solid var(--line)}td,td:first-child{border:0;padding:0}tbody tr.selected td:first-child{box-shadow:none}tbody tr.selected{box-shadow:inset 3px 0 0 var(--brand)}td:nth-child(n+2){display:inline-block;width:auto;margin:9px 6px 0 0;vertical-align:top}td:nth-child(2)::before{content:'Dev ';font-size:9px;color:var(--muted)}td:nth-child(3)::before{content:'QA ';font-size:9px;color:var(--muted)}td:nth-child(4)::before{content:'Rev. ';font-size:9px;color:var(--muted)}.issue-title{font-size:12px;margin:5px 0}.issue-owner{font-size:10px}.issue-link{font-size:11px}.badge{font-size:8px}.list-footer{padding:13px;font-size:9px}.list-footer>span:first-child{max-width:30ch}.detail-pane{padding:20px 16px}.detail-title{font-size:19px}.detail-meta{font-size:10px}.detail-description,.verdict p,.next-step{font-size:12px}.evidence-grid{grid-template-columns:1fr 1fr}.evidence-button img{height:110px}.mobile-back{display:block;background:transparent;color:var(--brand);font-size:11px;padding:0 0 19px;min-height:39px}.detail-top .secondary{min-height:35px;font-size:10px}.status-cell .badge{font-size:10px}.methodology{padding-top:26px}.methodology p{font-size:11px}.page-footer{margin:15px 17px 0;display:block;font-size:9px;line-height:2}.page-footer span{display:block}dialog{padding:12px;border-radius:8px}.viewer-head p{font-size:11px}.viewer-head .secondary{font-size:10px}.toast{width:max-content}body.detail-open .list-pane{display:none}body.detail-open .detail-pane{border-top:0}body:not(.detail-open) .detail-pane{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
@media print{.sidebar,.topbar,.filters,.primary,.detail-top button,.mobile-back,.page-footer,.scope-note svg{display:none!important}.app{margin:0}main{padding:0}.table-scroll{height:auto;overflow:visible}.detail-pane{display:block!important;break-before:page}.review-workspace{display:block}th{position:static}.overview{break-inside:avoid}.methodology{break-before:page}.evidence-button{break-inside:avoid}.register{overflow:visible}body{background:white;color:#111;font-size:11px}.scope-note{color:#333}.list-pane{display:block!important}}
