:root{--ink:#202124;--muted:#62666b;--paper:#f7f5ef;--card:#fff;--line:#d7d3c8;--accent:#273b4a;--soft:#e9eef1;--focus:#fff2b8;--danger:#7d2e2e;--radius:16px}*{box-sizing:border-box}html{font-size:17px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.5}.skip{position:absolute;left:-9999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.7rem;z-index:10}.hero{max-width:1100px;margin:auto;padding:3rem 1.25rem 1.5rem;display:flex;gap:2rem;justify-content:space-between;align-items:end}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.72rem;color:var(--muted);margin:0 0 .35rem}.hero h1{font-size:clamp(2.2rem,7vw,4.7rem);line-height:.95;margin:.15rem 0}.hero h1 span{display:block;font-size:.43em;letter-spacing:.04em;margin-top:.45rem}.lede{max-width:650px;font-size:1.08rem}.reset-card{min-width:245px;border:2px solid var(--ink);padding:1rem 1.15rem;background:var(--focus);box-shadow:6px 6px 0 var(--ink)}.reset-card span,.reset-card small{display:block}.reset-card span{font-size:1.25rem;font-weight:800}.phase-nav{max-width:1100px;margin:0 auto 1.25rem;padding:0 1.25rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}.phase{border:2px solid var(--ink);background:#fff;padding:.8rem;font-weight:900;font-size:1rem;cursor:pointer}.phase small{display:block;font-weight:400}.phase.active{background:var(--ink);color:#fff}main{max-width:1100px;margin:auto;padding:0 1.25rem 3rem}.panel,.framework{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:1.35rem;margin-bottom:1rem}.today,.section-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.today h2,.panel h2,.framework h2{margin:.1rem 0 .5rem}.primary,.ghost,#proofButton{border:2px solid var(--ink);border-radius:9px;padding:.7rem 1rem;font-weight:800;cursor:pointer}.primary{background:var(--ink);color:#fff}.ghost{background:#fff}.primary:focus,.ghost:focus,.phase:focus,#proofButton:focus,select:focus,textarea:focus{outline:4px solid var(--focus);outline-offset:2px}.autopsy-core,.choice-grid{display:grid;gap:.7rem}.autopsy-core{grid-template-columns:repeat(5,1fr)}.choice-grid{grid-template-columns:repeat(5,1fr);margin-top:.7rem}.autopsy-core label,.choice-grid label{background:var(--soft);padding:.85rem;border-radius:12px}.autopsy-core b,.choice-grid b,.wide b{display:block;font-size:1.05rem}.autopsy-core span,.wide span{display:block;color:var(--muted);font-size:.82rem;min-height:2.5em}.choice-grid textarea{min-height:72px}.autopsy-block,.autopsy-review{margin-top:1.1rem;padding-top:1rem;border-top:1px solid var(--line)}.autopsy-block h3{margin:.15rem 0 .35rem}.hint{margin:0;color:var(--muted)}.autopsy-review{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.save-state{margin:.35rem 0 0;font-size:.85rem;color:var(--muted)}.save-state.saved{color:#2f5d3a}.save-state.saving{color:var(--accent)}.button-row.compact{margin-top:0;justify-content:flex-end}.miss-tag{display:inline-block;margin-top:.35rem;padding:.15rem .45rem;border:1px solid var(--line);border-radius:6px;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;background:var(--soft)}textarea,select{width:100%;font:inherit;border:1px solid #aaa;border-radius:8px;background:#fff;padding:.65rem;margin-top:.45rem}textarea{min-height:95px;resize:vertical}.proof-strip{margin-top:1rem;display:flex;align-items:center;gap:.7rem;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:1rem}.proof-strip button{background:var(--focus)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.answer-card,.trap-card{margin-top:1rem;padding:1rem;background:var(--soft);border-left:5px solid var(--accent);min-height:150px}.answer-card h3,.trap-card h3{margin-top:0}.button-row{display:flex;gap:.6rem;margin-top:1rem;flex-wrap:wrap}.paragraphs{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.paragraph-card{padding:.8rem;background:var(--soft);border-radius:12px}.paragraph-card input{width:100%;padding:.55rem;border:1px solid #aaa;border-radius:7px;font:inherit;margin-top:.35rem}.wide{display:block;margin-top:1rem}.writing-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.writing-grid label{font-weight:700}.writing-grid textarea{min-height:75px}.error-item{border-bottom:1px solid var(--line);padding:.8rem 0}.error-item:last-child{border:0}.error-item time{font-size:.8rem;color:var(--muted)}.error-item p{margin:.2rem 0}.empty{color:var(--muted);font-style:italic}footer{background:var(--ink);color:#fff;text-align:center;padding:1.5rem;display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}footer small{width:100%;opacity:.7}#toast{position:fixed;right:1rem;bottom:1rem;background:var(--ink);color:#fff;padding:.8rem 1rem;border-radius:8px;opacity:0;pointer-events:none;transition:.2s}#toast.show{opacity:1}@media(max-width:800px){.hero{align-items:stretch;flex-direction:column}.reset-card{min-width:0}.autopsy-core,.choice-grid,.autopsy-review{grid-template-columns:1fr 1fr}.two-col{grid-template-columns:1fr}.today{align-items:flex-start;flex-direction:column}}@media(max-width:520px){html{font-size:16px}.autopsy-core,.choice-grid,.autopsy-review,.paragraphs,.writing-grid{grid-template-columns:1fr}.phase-nav{gap:.25rem}.phase{padding:.55rem .2rem}.hero{padding-top:2rem}.panel,.framework{padding:1rem}}@media print{.hero,.phase-nav,footer,.primary,.ghost,#proofButton,#toast{display:none!important}body{background:#fff;font-size:11pt}.panel,.framework{break-inside:avoid;border:1px solid #777}.two-col{display:block}.autopsy-core,.choice-grid{grid-template-columns:repeat(2,1fr)}.autopsy-review{grid-template-columns:1fr}textarea{border:1px solid #777;min-height:70px}}

.aid-nav{max-width:1100px;margin:0 auto .9rem;padding:0 1.25rem;display:flex;flex-wrap:wrap;gap:.5rem}
.aid-nav a{display:inline-block;padding:.45rem .75rem;border:1px solid var(--line);border-radius:999px;background:#fff;color:var(--ink);text-decoration:none;font-size:.9rem;font-weight:700}
.aid-nav a:focus{outline:4px solid var(--focus);outline-offset:2px}
.hint{color:var(--muted);margin:.15rem 0 0;max-width:46rem}
.button-row.compact{gap:.45rem}
.decision-mat-wrap{overflow-x:auto}
.decision-mat{width:100%;border-collapse:collapse;font-size:.95rem}
.decision-mat th,.decision-mat td{border:1px solid var(--line);padding:.7rem .75rem;vertical-align:top;text-align:left}
.decision-mat th{background:var(--soft);font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.decision-mat tr:nth-child(even) td{background:#fcfcfa}
.mat-job{color:var(--muted);font-size:.86rem;margin-top:.25rem}
.trap-deck{display:grid;grid-template-columns:repeat(2,1fr);gap:.8rem}
.trap-print-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:1rem;min-height:220px}
.trap-print-card h3{margin:.15rem 0 .55rem;font-size:1.15rem}
.trap-print-card p{margin:.35rem 0}
@media(max-width:800px){.trap-deck{grid-template-columns:1fr}.aid-nav{padding:0 1rem}}
@media print{
body[data-print] .hero,
body[data-print] .phase-nav,
body[data-print] .aid-nav,
body[data-print] footer,
body[data-print] #toast,
body[data-print] .no-print,
body[data-print] .primary,
body[data-print] .ghost{display:none!important}
body[data-print] main > section{display:none!important}
body[data-print="decisionMat"] #decisionMat,
body[data-print="trapDeck"] #trapDeck,
body[data-print="translationDict"] #translationDict,
body[data-print="viewpointTracker"] #viewpointTracker,
body[data-print="logicTiles"] #logicTiles{display:block!important;border:0;box-shadow:none;padding:0;margin:0}
body[data-print] .decision-mat th,
body[data-print] .decision-mat td{border:1px solid #444;padding:.45rem}
body[data-print] .trap-deck{grid-template-columns:repeat(2,1fr);gap:.5rem}
body[data-print] .trap-print-card{break-inside:avoid;border:1px solid #444;border-radius:0;background:#fff;min-height:0;padding:.7rem}
}


.translation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.translation-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:1rem}
.translation-card h3{margin:0 0 .55rem;font-size:1.15rem}
.translation-card p{margin:.35rem 0}
.filter-label{display:flex;align-items:center;gap:.45rem;font-weight:700;font-size:.9rem}
.filter-label input{font:inherit;padding:.45rem .65rem;border:1px solid var(--line);border-radius:8px;min-width:11rem;background:#fff}
.empty{color:var(--muted);font-style:italic}
@media(max-width:800px){.translation-grid{grid-template-columns:1fr}}

body[data-print] .translation-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}
body[data-print] .translation-card{break-inside:avoid;border:1px solid #444;border-radius:0;background:#fff;padding:.7rem}

.viewpoint-prompts{margin:0 0 .9rem;padding:.75rem 1rem;background:var(--soft);border-left:4px solid var(--accent);border-radius:8px}
.viewpoint-prompts p{margin:0}
.viewpoint-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem;margin-bottom:.8rem}
.viewpoint-grid label{background:var(--soft);padding:.85rem;border-radius:12px}
.viewpoint-grid b{display:block;font-size:1.02rem}
.viewpoint-grid span{display:block;color:var(--muted);font-size:.82rem;min-height:2.4em}
@media(max-width:900px){.viewpoint-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.viewpoint-grid{grid-template-columns:1fr}}

body[data-print] .viewpoint-grid{grid-template-columns:repeat(2,1fr);gap:.5rem}
body[data-print] .viewpoint-grid label{break-inside:avoid;border:1px solid #444;background:#fff}

.logic-workspace{display:grid;grid-template-columns:1fr 1.2fr;gap:1rem;margin-bottom:1rem}
.logic-bank,.logic-chain{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center;min-height:4.5rem;padding:.75rem;background:var(--soft);border-radius:12px;border:1px dashed var(--line)}
.logic-tile{border:2px solid var(--ink);background:#fff;border-radius:10px;padding:.55rem .7rem;cursor:pointer;font:inherit;min-width:4.8rem;text-align:left}
.logic-tile strong{display:block;font-size:1rem;letter-spacing:.04em}
.logic-tile small{display:block;color:var(--muted);font-size:.72rem;margin-top:.15rem}
.logic-tile:focus{outline:4px solid var(--focus);outline-offset:2px}
.logic-tile.on-chain{background:var(--focus)}
.logic-arrow{font-weight:900;color:var(--muted)}
.logic-plain{margin:.7rem 0 0;font-weight:700}
.logic-print-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.55rem}
.logic-print-tile{border:1px solid var(--line);border-radius:10px;padding:.8rem;background:var(--soft);min-height:110px}
.logic-print-tile strong{display:block;font-size:1.15rem;margin-bottom:.35rem;letter-spacing:.04em}
.logic-print-tile span{display:block;margin-bottom:.35rem}
.logic-print-tile small{color:var(--muted)}
.print-only{display:none}
@media(max-width:900px){.logic-workspace{grid-template-columns:1fr}.logic-print-grid{grid-template-columns:repeat(2,1fr)}}

body[data-print="logicTiles"] .logic-workspace{display:none!important}
body[data-print="logicTiles"] .print-only{display:block!important}
body[data-print] .logic-print-grid{grid-template-columns:repeat(4,1fr);gap:.4rem}
body[data-print] .logic-print-tile{break-inside:avoid;border:1px solid #444;border-radius:0;background:#fff;min-height:90px}

.preflight-tip{margin:0 0 .9rem;padding:.75rem 1rem;background:var(--soft);border-left:4px solid var(--accent);border-radius:8px}
.preflight-tip p{margin:0}
.preflight-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem}
.preflight-grid label{background:var(--soft);padding:.85rem;border-radius:12px;display:flex;flex-direction:column;gap:.35rem}
.preflight-grid b{font-size:1.02rem}
.preflight-grid span{color:var(--muted);font-size:.82rem}
.two-col.tight{gap:.9rem;margin-top:.6rem}
.progress-legend{display:flex;flex-wrap:wrap;gap:.7rem 1.1rem;margin:0 0 1rem;color:var(--muted);font-size:.9rem}
.progress-legend b{color:var(--ink)}
.progress-board{display:grid;gap:.65rem}
.progress-row{display:grid;grid-template-columns:minmax(12rem,1.2fr) 2fr;gap:.7rem;align-items:center;padding:.75rem .85rem;background:var(--soft);border-radius:12px}
.progress-skill{margin:0;font-weight:800}
.stage-options{display:flex;flex-wrap:wrap;gap:.4rem}
.stage-option{display:inline-flex;align-items:center;gap:.3rem;padding:.35rem .55rem;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:.85rem;cursor:pointer}
.stage-option:has(input:checked){background:var(--focus);border-color:var(--ink);font-weight:700}
.stage-option input{accent-color:var(--ink)}
@media(max-width:800px){.preflight-grid{grid-template-columns:1fr}.progress-row{grid-template-columns:1fr}}

body[data-print="writingPreflight"] #writingPreflight,
body[data-print="progressBoard"] #progressBoard{display:block!important;border:0;box-shadow:none;padding:0;margin:0}

body[data-print] .preflight-grid{grid-template-columns:repeat(2,1fr);gap:.45rem}
body[data-print] .preflight-grid label{break-inside:avoid;border:1px solid #444;background:#fff}
body[data-print] .progress-row{break-inside:avoid;border:1px solid #444;background:#fff}
body[data-print="writingPreflight"] .preflight-tip{border:1px solid #444}
body[data-print="progressBoard"] .progress-legend{color:#000}

.today-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}
.inline-label{display:flex;align-items:center;gap:.4rem;font-weight:700;font-size:.9rem}
.inline-label select{font:inherit;padding:.4rem .55rem;border:1px solid var(--line);border-radius:8px;background:#fff}
[hidden]{display:none!important}
.practice-idle,.practice-active,.practice-summary{margin-top:.5rem}
.practice-idle-controls{display:grid;gap:.65rem;margin:.85rem 0 1rem;padding:1rem;background:var(--soft);border:1px solid var(--line);border-radius:12px;position:relative;z-index:2}
.practice-idle-controls .button-row{flex-wrap:wrap;align-items:end;justify-content:flex-start}
.practice-idle-controls .primary{min-width:9rem;width:100%;max-width:22rem;position:relative;z-index:3}
.practice-steps-preview{margin:.4rem 0 0;padding-left:1.2rem}
.practice-status{display:flex;flex-wrap:wrap;gap:.7rem 1rem;align-items:center;justify-content:space-between;margin-bottom:.8rem}
.practice-timer{margin:0;font-weight:800}
.practice-timer.over{color:var(--danger)}
.practice-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem .8rem;margin-bottom:.9rem}
.practice-checklist label{display:flex;gap:.45rem;align-items:flex-start;background:var(--soft);padding:.65rem .75rem;border-radius:10px}
.practice-result{margin-bottom:.8rem}
.practice-blind{margin:1rem 0;padding:1rem;border:1px solid var(--line);border-radius:12px;background:linear-gradient(180deg,var(--soft),#fff)}
.practice-blind .eyebrow{margin-bottom:.25rem}
.practice-queues{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.25rem}
.practice-queues .queue-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:1rem}
.practice-queues .queue-card h3{margin:.1rem 0 .6rem;font-size:1.1rem}
.queue-list{display:grid;gap:.55rem}
.queue-item{background:#fff;border:1px solid var(--line);border-radius:10px;padding:.7rem .8rem}
.queue-item p{margin:.15rem 0}
@media(max-width:800px){.practice-queues{grid-template-columns:1fr}}
.study-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem}
.study-card{background:var(--soft);border:1px solid var(--line);border-radius:12px;padding:1rem;min-height:170px;break-inside:avoid}
.study-card h3{margin:.15rem 0 .55rem;font-size:1.12rem}
.study-card p{margin:.35rem 0}
@media(max-width:900px){.practice-checklist,.study-card-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.practice-checklist,.study-card-grid{grid-template-columns:1fr}}

body[data-print="studyCards"] #studyCards{display:block!important;border:0;box-shadow:none;padding:0;margin:0}

body[data-print="studyCards"] .section-head .button-row,
body[data-print="studyCards"] .inline-label{display:none!important}
body[data-print] .study-card-grid{grid-template-columns:repeat(3,1fr);gap:.45rem}
body[data-print] .study-card{border:1px solid #444;border-radius:0;background:#fff;min-height:140px}
