:root{color-scheme:light dark;--paper:light-dark(#faf8f2,#171d1a);--raised:light-dark(#fff,#222c25);--ink:light-dark(#20362e,#edf2e9);--muted:light-dark(#536359,#c0ccbf);--line:light-dark(#d5dfd3,#4b5b4f);--accent:light-dark(#1a604d,#a9debd);--on-accent:light-dark(#fff,#12291f);--soft:light-dark(#e6eee2,#2b3e2e);font-family:system-ui,sans-serif;font-size:16px;line-height:1.55;background:var(--paper);color:var(--ink)}
*{box-sizing:border-box}body{margin:0}header{max-width:1100px;margin:auto;padding:1.1rem 1.3rem;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.brand{font-family:Georgia,serif;font-size:1.5rem;color:var(--ink);text-decoration:none}#identity{font-size:.875rem;color:var(--muted);margin-left:auto}main{max-width:1000px;padding:1.2rem;margin:auto}#login{max-width:520px;margin:3rem auto}h1{font-family:Georgia,serif;font-size:clamp(1.8rem,5vw,2.6rem);font-weight:400;line-height:1.2;max-width:760px}h2{font-size:1.2rem;font-weight:500}h3{font-size:1rem;font-weight:500}p{overflow-wrap:anywhere}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.8rem;color:var(--accent);margin-top:1.5rem}.small,small{font-size:.875rem;color:var(--muted)}
#staff-access{max-width:720px;scroll-margin-top:1rem}#staff-access>summary{font-weight:600}#staff-access .actions button{flex:1 1 180px}.staff-fingerprint{font-family:ui-monospace,monospace;overflow-wrap:anywhere;padding:.75rem;background:var(--soft);border-radius:.5rem}#staff-access-message{min-height:3rem}
button,input,select,textarea{font:inherit;color:var(--ink);background:var(--raised);border:1px solid var(--line);border-radius:.65rem}button{min-height:46px;padding:.55rem .9rem;cursor:pointer}button:disabled{opacity:.5;cursor:default}button[aria-pressed=true]{background:var(--soft);border-color:var(--accent);color:var(--accent)}button.primary{background:var(--accent);color:var(--on-accent);border-color:var(--accent)}input:not([type=checkbox]):not([type=radio]),select,textarea{display:block;width:100%;padding:.7rem;min-height:46px;margin:.35rem 0 1rem}textarea{min-height:110px;resize:vertical}label{display:block;margin-top:.8rem}fieldset{border:1px solid var(--line);border-radius:.8rem;padding:.8rem}fieldset label,.check{display:flex;gap:.6rem;align-items:center;min-height:46px}input[type=checkbox],input[type=radio]{width:22px;height:22px;flex-shrink:0;accent-color:var(--accent)}nav{display:flex;gap:.4rem;margin-bottom:1.5rem;flex-wrap:wrap}nav button{flex:1;min-width:75px}.actions,.pager{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin:1rem 0}.pager span{flex:1;text-align:center}details{border-block:1px solid var(--line);padding:.5rem 0;margin:1rem 0}summary{min-height:44px;padding:.5rem 0;cursor:pointer}.entry{padding:1rem 0;border-bottom:1px solid var(--line)}.entry p{margin:.4rem 0}.entry button{margin-top:.5rem}.id{overflow-wrap:anywhere;font-size:.875rem;color:var(--muted)}.empty{padding:1.4rem;background:var(--soft);border-radius:1rem}#status{min-height:1.5rem}#status[data-error=true]{color:light-dark(#9b1c1c,#ffb6b6)}footer{padding:2rem 1.2rem;max-width:1000px;margin:auto;color:var(--muted);font-size:.8rem}pre{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--raised);padding:1rem;border-radius:.7rem}figure{margin:1rem 0}img{display:block;max-width:100%;height:auto;border:1px solid var(--line)}figcaption{font-size:.875rem;color:var(--muted);margin:.5rem 0}#evidence-swipe{display:flex;gap:.6rem;align-items:center;touch-action:pan-y;margin-bottom:1rem}#evidence-swipe span{flex:1;text-align:center;font-size:.875rem}#evidence-swipe button{flex-shrink:0}#snapshot{word-break:break-all}[hidden]{display:none!important}
@media(min-width:760px){#search{display:grid;grid-template-columns:1fr 1fr auto;gap:.5rem 1rem;align-items:end}#search label[for=query]{grid-column:1;grid-row:1}#search label[for=pack]{grid-column:2;grid-row:1}#search input,#search select{margin-bottom:0}#search button{grid-column:3;grid-row:2}#finding-panel{max-width:700px}#workspace>nav{max-width:500px}#task-view>nav{max-width:500px}}
@media(prefers-reduced-motion:no-preference){button{transition:background-color .12s}}@media(max-width:360px){main,header{padding:.85rem}nav button{padding:.5rem .4rem;font-size:.875rem}}
.card{padding:1.25rem;margin:1rem 0;background:var(--raised);border:1px solid var(--line);border-radius:1.2rem}.card>.eyebrow{margin-top:0}.card h2{font-family:Georgia,serif;font-size:1.5rem}.metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.metric{border:1px solid var(--line);border-radius:1rem;padding:1rem;background:var(--soft)}.metric strong{font-family:Georgia,serif;font-size:2.4rem;font-weight:400}.metric p{font-size:.875rem;margin:.4rem 0 0}progress{width:100%;height:16px;accent-color:var(--accent)}.recognition-list{padding-left:1.6rem}.recognition-list li{padding:.8rem .2rem;border-bottom:1px solid var(--line)}.recognition-list strong{margin-inline:1rem .3rem}#finding-receipt:not(:empty){padding:1rem;margin-top:1rem;background:var(--soft);border-radius:1rem}#finding-receipt h2{margin-top:0}#finish-actions button{flex:1}#desk-case{scroll-margin-top:1rem}#workspace>nav{max-width:none}#workspace>nav button{font-size:.875rem;min-width:68px}.quiet #finding-receipt{background:transparent;border:1px solid var(--line)}:focus-visible{outline:3px solid var(--accent);outline-offset:3px}a{color:var(--accent)}
.source-viewer{max-width:850px;margin:1rem 0}.scan-controls{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap;margin:.6rem 0}.scan-controls button{flex:1;font-size:.875rem;min-width:86px}.scan-controls span{flex:1;text-align:center}.scan-stage{position:relative;width:100%;height:65svh;min-height:240px;max-height:700px;overflow:auto;background:var(--soft);border:1px solid var(--line);border-radius:.7rem;touch-action:none;overscroll-behavior:contain;cursor:grab}.scan-stage:active{cursor:grabbing}.scan-sheet{position:relative;min-width:1px;min-height:1px}.scan-page{position:absolute;transform-origin:0 0;left:0;top:0}.scan-page img{width:100%;height:100%;max-width:none;border:0;user-select:none;pointer-events:none}.scan-regions{position:absolute;inset:0;pointer-events:none}.scan-region{position:absolute;outline:3px solid #16836a;background:transparent}.source-viewer h2{overflow-wrap:anywhere}.source-viewer .check{font-size:.875rem}
h1,h2,h3{overflow-wrap:anywhere}
.scan-page-picker{margin:.65rem 0;font-size:.875rem}.scan-page-picker select{max-width:100%;font-size:1rem;margin-bottom:.6rem}.scan-page-picker span{overflow-wrap:anywhere}
.scan-controls button{flex:1 1 7em;min-width:min(100%,7em);overflow-wrap:normal}
#reports-view .card>button{margin:.5rem .5rem .5rem 0}#reports-view li{margin-block:.7rem;overflow-wrap:anywhere}#reports-view ol{padding-left:1.5rem}
fieldset{min-width:0;margin:1rem 0}legend{max-width:100%;overflow-wrap:anywhere}.check span{min-width:0;overflow-wrap:anywhere}#desk-preparation section{scroll-margin-top:1rem}
#desk-preparation fieldset label:not(.check){display:block}
button{max-width:100%;overflow-wrap:anywhere}input,select,textarea{min-width:0}
@media(max-width:480px){main,header{padding:14px}.card{padding:16px}fieldset{padding:12px}}
.practice-entry{border-block:1px solid var(--line);padding:.8rem 0;margin:1rem 0}.practice-entry p{margin-top:0}.practice-stage{max-height:56svh;overflow:auto;border:1px solid var(--line);border-radius:.8rem;background:#faf8f2;overscroll-behavior:contain}.practice-stage img{width:100%;max-width:none;border:0}.practice-swipe{display:flex;align-items:center;gap:.6rem;touch-action:pan-y;margin:1rem 0}.practice-swipe span{flex:1;text-align:center;font-size:.875rem}#practice-view label span{min-width:0;overflow-wrap:anywhere}#practice-view section>button{margin:.4rem .4rem .4rem 0}#practice-view [role=status]:not(:empty){margin-top:1rem}#focus-task h2,#focus-home h2{margin-top:0}#focus-task p,#focus-home p{margin:.5rem 0}
#workspace>nav button{padding:.55rem .5rem;min-width:max-content;overflow-wrap:normal}
@media(max-width:360px){#workspace>nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,8em),1fr))}#workspace>nav button{min-width:0;overflow-wrap:normal}}
@media(max-width:480px){#task-view>nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5em),1fr))}#evidence-swipe{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}#evidence-swipe span{grid-column:1/-1;grid-row:1}#evidence-swipe button{min-width:0;padding-inline:.5rem}}
/* Phone reading: the evidence gets the screen; movement never chooses a verdict. */
#reading-navigation nav{margin-bottom:.5rem}#reading-navigation{background:var(--paper);border-radius:1rem}
#reading-navigation #evidence-swipe{margin-bottom:0}#reading-navigation button{min-height:46px}
#reading-navigation nav button{overflow-wrap:normal;min-width:0}
.reading-mode main{max-width:90rem}
#evidence-workspace.side-by-side{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:1.25rem}
#evidence-workspace>div{min-width:0}
#evidence-workspace.side-by-side #text-panel{position:sticky;top:1rem;max-height:calc(100svh - 2rem);overflow:auto;overscroll-behavior:contain;padding-inline:1rem;border:1px solid var(--line);border-radius:.7rem}
#finding-panel{max-width:54rem}
.has-reading-dock{padding-bottom:calc(var(--reading-dock-height) + 2rem)}
.has-reading-dock :focus{scroll-margin-bottom:calc(var(--reading-dock-height) + 2rem)}
.thumb-docked{position:fixed;z-index:5;bottom:0;left:0;right:0;padding:.6rem max(14px,env(safe-area-inset-left)) max(.6rem,env(safe-area-inset-bottom));border:1px solid var(--line);box-shadow:0 -4px 18px #00000012}
#focus-task.card{padding:.5rem .8rem;margin:.7rem 0;background:var(--soft);border:0;border-radius:.7rem}
#focus-task .session-caption{font-size:.875rem;font-weight:600}
.milestone-collection{margin-block:1.5rem}.milestone-card{border:1px solid var(--line);padding:1rem;border-radius:1rem;margin:.7rem 0;background:var(--raised)}
.milestone-card .eyebrow{margin-top:0}.milestone-card[data-reached=true]{border-inline-start:5px solid var(--accent)}
.milestone-card h3{font-size:1.15rem;margin:.5rem 0}.recognition-list li[data-self=true]{background:var(--soft);border-radius:.6rem}
.quiet .milestone-collection{display:none}
.list-pager{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,10em),1fr));gap:.6rem;align-items:stretch}
.list-pager>span{grid-column:1/-1;grid-row:1;text-align:center}
.list-pager>button{min-width:0;min-height:46px}
@media(max-width:759px){
  .reading-mode #workspace>nav{display:none}
  #task-view .actions{margin-top:0}#task-view #task-kind{margin-top:.8rem}
  #question{font-size:1.6rem;margin:.65rem 0}#task-version{margin:.4rem 0}
  #reading-navigation nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,5.5em),1fr));gap:.4rem}
  #reading-navigation #evidence-swipe{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.4rem}
  #reading-navigation #evidence-swipe span{grid-column:2;grid-row:1;font-size:.875rem;line-height:1.25}
  #reading-navigation #step-back{grid-column:1;grid-row:1}#reading-navigation #step-next{grid-column:3;grid-row:1}
  #reading-navigation #evidence-swipe button{padding:.45rem .7rem}
  #reading-navigation:not(.thumb-docked) #evidence-swipe{grid-template-columns:repeat(2,minmax(0,1fr))}
  #reading-navigation:not(.thumb-docked) #evidence-swipe span{grid-column:1/-1;grid-row:1}
  #reading-navigation:not(.thumb-docked) #step-back{grid-column:1;grid-row:2}
  #reading-navigation:not(.thumb-docked) #step-next{grid-column:2;grid-row:2}
}
/* Public introduction: desktop is a reading spread, not a stretched phone.
   Scoped to prelaunch so authenticated task and source-viewer layouts stay put. */
.prelaunch-mode{min-height:100svh;display:flex;flex-direction:column}
.prelaunch-mode header{width:100%;max-width:1200px;padding:1.3rem 2rem}
.prelaunch-mode .brand{display:inline-flex;align-items:center;min-height:44px}
.prelaunch-mode main{width:100%;max-width:1200px;padding:3.5rem 2rem 1rem;flex:1}
.prelaunch-mode #login,.prelaunch-mode #status{display:none}
.prelaunch-mode footer{width:100%;max-width:1200px;padding:1.2rem 2rem 2rem;font-size:.75rem}
.scholar-overview{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.scholar-overview>*{min-width:0}
.overview-kicker{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;color:var(--accent);font-size:.78rem;letter-spacing:.055em;text-transform:uppercase;margin:1.4rem 0 2rem}
.status-dot{width:7px;height:7px;flex:none;border-radius:50%;background:var(--accent)}
.phase-label{padding:.2rem .55rem;border:1px solid var(--line);border-radius:2rem;letter-spacing:.02em;font-size:.7rem}
.overview-copy h1{font-size:clamp(2.5rem,4.4vw,3.7rem);line-height:1.1;letter-spacing:-.025em;margin:0 0 1.6rem;max-width:12ch}
.overview-copy h1 em{font-weight:400;color:var(--accent)}
.overview-intro{font-size:1.07rem;line-height:1.7;max-width:43ch;color:var(--muted);margin:0 0 1.6rem}
.overview-link{display:inline-flex;align-items:center;justify-content:space-between;gap:1.5rem;min-height:48px;max-width:100%;padding:.4rem 0;border-bottom:1px solid var(--accent);text-decoration:none;font-weight:500}
.overview-link span{font-size:1.3rem}
.access-note{border-left:2px solid var(--line);padding:0 0 0 1.1rem;margin:2.8rem 0 1rem;max-width:44ch}
.access-note h2{font-family:inherit;font-size:.95rem;font-weight:600;margin:0 0 .5rem}
.access-note p{font-size:.9rem;line-height:1.65;color:var(--muted);margin:0}
.process-panel{padding:1.8rem;background:var(--soft);border:1px solid var(--line);border-radius:1.3rem;scroll-margin-top:1.5rem}
.process-heading{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;flex-wrap:wrap}
.process-heading .eyebrow{font-size:.7rem;margin:0}.process-caption{font-size:.7rem;color:var(--muted)}
.process-panel>h2{font-family:Georgia,serif;font-size:1.95rem;line-height:1.2;font-weight:400;margin:1rem 0 1.4rem}
.reading-illustration{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.illustrated-page{min-width:0;padding:1rem 1rem .7rem;background:var(--raised);border:1px solid var(--line);border-radius:.25rem;box-shadow:0 4px 12px #152c2010}
.illustrated-page>span{display:block;font-family:Georgia,serif;font-size:.95rem;margin-bottom:.9rem}
.illustrated-page i{display:block;height:4px;background:var(--line);margin:.55rem 0;border-radius:1px}
.illustrated-page .marked-line{background:var(--accent);opacity:.5}.illustrated-page .short-line{width:68%}
.illustrated-page small{display:block;font-size:.65rem;margin-top:1rem;color:var(--muted)}
.illustration-caption{font-size:.68rem;color:var(--muted);margin:.55rem 0 1.1rem}
.process-steps{list-style:none;padding:0;margin:0}
.process-steps li{display:flex;gap:1rem;align-items:baseline;padding:.9rem 0;border-top:1px solid var(--line)}
.process-steps li:last-child{padding-bottom:0}.process-steps li>div{min-width:0}
.step-number{font-size:.75rem;font-variant-numeric:tabular-nums;color:var(--accent);flex-shrink:0}
.process-steps h3{font-size:.9rem;font-weight:600;margin:0 0 .3rem}.process-steps p{font-size:.83rem;line-height:1.55;color:var(--muted);margin:0}
.scholar-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2rem;border-top:1px solid var(--line);margin-top:3rem;padding-top:1.4rem}
.scholar-principles h2{font-family:Georgia,serif;font-size:1.2rem;margin:0 0 .5rem}.scholar-principles p{font-size:.85rem;color:var(--muted);margin:0;max-width:34ch}
.research-boundary{font-size:.75rem;color:var(--muted);margin:2rem 0 0;max-width:90ch}
@media(max-width:820px){
  .prelaunch-mode main{padding-top:2rem}.scholar-overview{grid-template-columns:1fr;gap:1.8rem}
  .overview-copy h1{font-size:clamp(2.5rem,7vw,3.7rem);max-width:18ch}.overview-copy h1 em{display:inline-block}
  .overview-kicker{margin:0 0 1.4rem}.overview-intro{max-width:48ch}
  .access-note{max-width:48ch;margin-top:2rem}.process-panel{max-width:38rem;width:100%}
  .scholar-principles{gap:1.4rem}.scholar-principles h2{font-size:1.1rem}
}
@media(max-width:540px){
  .prelaunch-mode header{padding:1.1rem 20px}.prelaunch-mode main{padding:1.8rem 20px .5rem}.prelaunch-mode footer{padding:1.2rem 20px 1.5rem}
  .overview-copy h1{font-size:clamp(2rem,10.5vw,2.55rem);max-width:13ch}.overview-intro{font-size:1rem;line-height:1.65}
  .overview-link{font-size:.9rem}.process-panel{padding:20px}.process-panel>h2{font-size:clamp(1.5rem,7vw,1.75rem)}
  .reading-illustration{grid-template-columns:repeat(auto-fit,minmax(min(100%,7rem),1fr));gap:12px}.illustrated-page{padding:12px;overflow-wrap:anywhere}
  .process-steps li{gap:12px}.scholar-principles{grid-template-columns:1fr;gap:1.2rem;margin-top:2rem}
  .scholar-principles p{max-width:45ch}.research-boundary{margin-top:1.5rem}
}
