@font-face{font-family:Jakarta;src:url('assets/fonts/PlusJakartaSans-latin-wght.woff2') format('woff2');font-weight:200 800;font-display:swap}
:root{--primary:#2250e0;--green:#0a7a5a;--ink:#0e1c3a;--muted:#53627f;--wash:#f6f8fc;--paper:#fff;--line:#d9e2ee;--soft:#e9f5f0;--focus:#2250e0}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{font:14px/1.5 Jakarta,Arial,sans-serif;color:var(--ink);background:var(--wash)}body.dark{color-scheme:dark;--ink:#f1f5fb;--muted:#bdcce0;--wash:#0c172b;--paper:#15243a;--line:#3d506b;--soft:#173e35;--green:#7be0b9;--focus:#a3bdff}
button,input,select{font:inherit}button{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:12px;padding:7.5px 12px;cursor:pointer;transition:background .15s,transform .15s}button:hover:not(:disabled){border-color:var(--primary);background:var(--wash)}button:disabled{cursor:default;color:var(--muted);background:var(--wash);opacity:1}button[aria-pressed=true]{border:2px solid var(--primary);background:var(--wash)}button.primary{background:var(--primary);border-color:var(--primary);color:#fff}button.primary:hover:not(:disabled){background:#193eb7}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
[hidden]{display:none!important}.skip{position:absolute;top:-100px;left:12px;z-index:50;background:var(--paper);color:var(--ink);padding:6px}.skip:focus{top:6px}#player{height:100dvh;max-width:1440px;margin:auto;display:flex;flex-direction:column;padding:9px 15px 12px}.header{display:flex;align-items:center;gap:9px;min-height:56px;margin-bottom:7.5px}.header>div{order:0}.brand{order:2;margin-left:auto;display:flex;align-items:center;gap:6px;text-decoration:none;color:var(--primary);flex-shrink:0}.brand .logo{width:24px;height:27px}.wordmark{font-size:14px;font-weight:800;position:relative;letter-spacing:-.7px}.wordmark:after{content:'';position:absolute;height:3px;width:30px;border-radius:2px;background:#f2c744;bottom:-4px;right:0}.dark .brand{color:#f1f5fb}.divider{display:none}.collection{font-size:10px;text-transform:uppercase;letter-spacing:1.5px;color:var(--muted)}.course-title{font-size:12px;font-weight:700}.progress{height:3px;background:var(--line);border-radius:3px;margin-bottom:7.5px}#progress-fill{height:100%;background:var(--green);border-radius:3px}#status{padding:3.8px;font-size:12px}
#slide{position:relative;flex:1;min-height:0;background:var(--paper);border:1px solid var(--line);border-radius:22px;overflow:hidden;padding-top:44.2px;box-shadow:0 10px 40px #0e1c3a08}#slide-controls{position:absolute;top:12px;right:16px;display:flex;gap:5.2px;align-items:center;z-index:10}#slide-controls>button,#additional-controls-button{height:33px;min-height:33px;max-height:33px;font-size:12px;line-height:1;padding:4.5px 8.2px;border-radius:20px;white-space:nowrap}#page-label{font-size:11px;color:var(--muted);margin-right:6px}.more{position:relative}#additional-controls-menu{position:absolute;right:0;top:40px;width:205px;max-height:min(65vh,360px);overflow:auto;background:var(--paper);border:1px solid var(--line);padding:6px;box-shadow:0 10px 28px #0002;border-radius:16px;display:grid;gap:3.8px}#additional-controls-menu button{min-height:33px;font-size:12px;text-align:left;padding:5.2px 7.5px}
#screen{height:100%;overflow:auto;overscroll-behavior:contain;padding:3px 24px 21px;scrollbar-gutter:stable}#screen:focus{outline:none}.screen-heading{margin-bottom:13.5px;max-width:1100px}.eyebrow{font-size:11px;letter-spacing:1.8px;text-transform:uppercase;font-weight:800;color:var(--green);margin:0 0 6px}h1{font-size:clamp(21px,2.5vw,33.2px);line-height:1.14;letter-spacing:-1.1px;margin:0 0 9px;max-width:1000px}h1:focus{outline:none}h2{font-size:clamp(16.6px,1.8vw,21.9px);line-height:1.3;margin:0 0 10.5px;letter-spacing:-.5px}p{margin:0 0 10.5px}.intro{color:var(--muted);max-width:980px;font-size:14px}.stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:21px;align-items:start}figure{margin:0;min-width:0}.art{display:block;width:100%;height:auto;max-height:42vh;object-fit:contain;border-radius:16px}.panel{border:1px solid var(--line);border-radius:18px;padding:16.5px;background:var(--paper);min-width:0}.choices{display:grid;gap:7.5px}.choices button{text-align:left;font-size:14px;padding:9px 11.2px}.feedback{margin-top:10.5px;border-left:4px solid var(--primary);background:var(--wash);border-radius:4px 10px 10px 4px;padding:9.8px 11.2px;font-size:14px}.feedback.good{border-color:var(--green);background:var(--soft)}.feedback:focus{outline:2px solid var(--focus);outline-offset:3px}.feedback+button{margin-top:10.5px}.small{font-size:12.2px;color:var(--muted);margin-top:10.5px}.path{display:flex;gap:6.8px;flex-wrap:wrap;margin-top:15px}.path span{border-bottom:3px solid var(--green);font-weight:700;padding:3px 7.5px}.tabs{display:flex;gap:5.2px;flex-wrap:wrap;margin-bottom:13.5px}.tabs button{font-size:12.2px;padding:5.2px 7.5px}.model-beat{animation:enter .24s ease}.step-number{display:inline-grid;place-items:center;border-radius:50%;width:34px;height:34px;background:var(--soft);color:var(--green);font-weight:800;margin-bottom:9px}.task-tile{border:2px solid var(--primary);background:var(--wash);padding:13.5px;border-radius:14px;margin-bottom:10.5px;cursor:grab}.task-tile h2{margin:0}.lanes{display:grid;gap:6.8px}.lane{text-align:left;font-size:14px}.dossier{display:flex;gap:10.5px;margin-bottom:12px}.dossier img{width:76px;height:76px;border-radius:12px;object-fit:contain;background:var(--wash)}.dossier p{font-size:12.2px;color:var(--muted);margin:3px 0 0}.time-track{display:flex;justify-content:space-between;gap:6px;border-bottom:3px solid var(--green);padding-bottom:7.5px;margin-bottom:13.5px;font-size:12px}.hotspot-scene{position:relative}.hotspot{position:absolute;transform:translate(-50%,-50%);width:38px;height:38px;border:2px solid #fff;border-radius:50%;padding:0;background:var(--primary);color:#fff;font-weight:800;box-shadow:0 2px 8px #0003}.hotspot.visited{background:#0a7a5a}.hotspot:hover:not(:disabled){background:#193eb7;color:#fff}details{border:1px solid var(--line);border-radius:10px;padding:7.5px 9.8px;margin-bottom:6.8px}summary{cursor:pointer;font-weight:700;font-size:13.1px}details p{font-size:13.1px;margin:7.5px 0 0}.comparisons{margin-bottom:10.5px}.quiz-panel{max-width:900px;margin:auto}.quiz-panel h2{font-size:20.1px}.results-panel{max-width:720px;margin:auto}.result-ring{width:105px;height:105px;display:flex;flex-direction:column;justify-content:center;align-items:center;border:7px solid var(--green);border-radius:50%;font-size:28px;font-weight:800;margin:0 0 13.5px}.result-ring span{font-size:12px;font-weight:500}.results-panel>button{margin:6px 6px 0 0}#finish-note{margin-top:9px}body:has([data-finish]) .eyebrow:before,body:has([data-start]) .eyebrow:before{content:'';display:inline-block;width:18px;height:3px;border-radius:2px;background:#f2c744;margin-right:6px;vertical-align:middle}
dialog{color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:18px;max-width:650px;max-height:85vh}dialog::backdrop{background:#0e1c3a88}#close-dialog{display:block;margin-left:auto;margin-bottom:10.5px}.caption{position:absolute;bottom:10px;left:20px;right:20px;background:#0e1c3a;color:#fff;padding:7.5px 10.5px;border-radius:10px;z-index:8;max-height:100px;overflow:auto;font-size:13.1px}
@keyframes enter{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(min-width:1500px){#player{padding:15px 25.5px}#screen{padding:6px 30px 21px}.stage{gap:27px}.panel{padding:21px}.art{max-height:47vh}}
@media(max-width:900px){#player{padding:6px 9px}#screen{padding:4.5px 16.5px 18px}.stage{gap:13.5px}.panel{padding:12.8px}.header{min-height:52px}.wordmark{font-size:12.2px}.collection{font-size:9px}.course-title{max-width:300px;font-size:12px}}
@media(max-width:650px){.stage{grid-template-columns:1fr}.art{max-height:26vh}.header{gap:6px}.collection{display:none}.course-title{font-size:11px;max-width:180px}.brand .logo{width:21px;height:23px}.wordmark{font-size:12px}.header{min-height:42px}#slide{border-radius:16px;padding-top:42.8px}#slide-controls{right:10px;top:12px;gap:3.8px}#page-label{display:none}#screen{padding:3.8px 12px 18px}.screen-heading{margin-bottom:12px}h1{font-size:22.8px;letter-spacing:-.8px}.panel{padding:12.8px}.intro{font-size:14px}.choices button{font-size:14px}.hotspot-scene{max-width:400px;margin:auto;width:100%}.hotspot{width:33px;height:33px}.time-track{font-size:12px}.quiz-panel h2{font-size:17.5px}.caption{left:8px;right:8px}.dossier img{width:66px;height:66px}}

.stage.no-art{grid-template-columns:1fr;max-width:950px;margin-inline:auto}
@media(min-width:651px) and (max-height:700px){
 #player{padding:4.5px 9px 6px}.header{min-height:40px;margin-bottom:4.5px}.progress{margin-bottom:4.5px}
 #screen{padding:0 15px 13.5px}.screen-heading{margin-bottom:9px}h1{font-size:23.6px;margin-bottom:6px}h2{font-size:17.5px;margin-bottom:7.5px}p{margin-bottom:7.5px}
 .stage{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:12px}.panel{padding:10.5px}.tabs{gap:3.8px;margin-bottom:7.5px}.tabs button{padding:3.8px 6px}.choices{gap:5.2px}.choices button{padding:6px 9px}.dossier{margin-bottom:7.5px}.dossier p{line-height:1.35}.model-beat .step-number{margin-bottom:4.5px}
 #screen[data-type=compare] .stage,#screen[data-type=action] .stage{grid-template-columns:1fr}
 #screen[data-type=compare] figure,#screen[data-type=action] figure{display:none}
 #screen[data-type=compare] .comparisons,#screen[data-type=compare] .choices,#screen[data-type=action] .choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
 #screen[data-type=compare] .choices button,#screen[data-type=action] .choices button{font-size:14px}
 .results-panel .result-ring{float:right;width:70px;height:70px;font-size:22.8px;margin:0 0 9px 11.2px}.results-panel p{margin-bottom:6px}.results-panel button{padding:5.2px 9px}
}

/* IN-17 editorial case desk; all substantive text >=16px. */
.theme-case-desk #slide{border-radius:8px;border-top:4px solid var(--ink);box-shadow:8px 8px 0 var(--line)}
.theme-case-desk .screen-heading{border-left:4px solid var(--green);padding-left:12px}
.theme-case-desk .stage.no-art{max-width:1100px}.theme-case-desk .panel{border-radius:5px;border-top:3px solid var(--line)}
.theme-case-desk .tabs button,.theme-case-desk .small{font-size:14px}.theme-case-desk .art{border-radius:4px}
.theme-case-desk .stage{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.theme-case-desk .stage.no-art{grid-template-columns:1fr}.theme-case-desk .choices button{border-radius:6px;font-size:14px}
.theme-case-desk .model-beat{padding:6px 9px;border-left:3px solid var(--primary)}
.accounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-bottom:10.5px}.accounts aside{display:flex;gap:9px;padding:9px;background:var(--wash);border:1px solid var(--line)}.accounts img{width:52px;height:52px;object-fit:contain;flex-shrink:0}.accounts p{font-size:14px;line-height:1.4;margin:3.8px 0 0}
.evidence-desk{display:grid;grid-template-columns:minmax(180px,.35fr) minmax(0,1fr);gap:15px;max-width:1100px;margin:auto}.evidence-tabs{display:grid;align-content:start;gap:7.5px}.evidence-tab{text-align:left;border-radius:4px;font-size:14px}.evidence-tab.visited{border-left:4px solid var(--green)}.evidence-paper{background:var(--wash);border:1px solid var(--line);padding:18px;min-height:230px}
.agreement-lab{display:grid;grid-template-columns:minmax(220px,.6fr) minmax(0,1.4fr);gap:15px;align-items:start;max-width:1200px;margin:auto}.agreement-record{border:1px solid var(--line);background:var(--wash);padding:13.5px}.agreement-record summary{font-size:14px;font-weight:700}.agreement-record p{font-size:14px}.primary:disabled{background:var(--wash);border-color:var(--line);color:var(--muted)}
@media(min-width:651px) and (max-height:700px){.accounts{margin-bottom:7.5px}.accounts aside{padding:6px}.accounts p{margin-top:2.2px}.agreement-lab{gap:10.5px;grid-template-columns:minmax(210px,.55fr) minmax(0,1.45fr)}.agreement-record{padding:9px}.theme-case-desk .stage{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr)}.theme-case-desk .stage.no-art{grid-template-columns:1fr}}
@media(max-width:650px){.theme-case-desk .stage,.agreement-lab{grid-template-columns:1fr}.accounts{grid-template-columns:1fr}.accounts aside{padding:6.8px}.evidence-desk{grid-template-columns:1fr;gap:9px}.evidence-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.evidence-paper{padding:12.8px;min-height:0}.agreement-record{padding:9px}.agreement-record details{margin-bottom:5.2px}.theme-case-desk h1{font-size:22.8px}}

.agreement-record>summary{font-size:14px;font-weight:800;cursor:pointer}.agreement-record[open]>summary{margin-bottom:9px}.agreement-record>details{margin-top:7.5px}
@media(max-width:650px){.agreement-lab .panel{grid-row:1}.agreement-lab .agreement-record{grid-row:2}}
/*mls-compact-end*/
.learn{margin:0 0 10.5px;padding-left:15px}.learn li{margin:4.5px 0}


/* IN-56 casebook look: warm sand paper, slate ink, folder tabs. Substantive text >= 16px; the Sources link is deliberately fine print (owner request). */
.theme-casebook{--wash:#f4efe6;--paper:#fbf8f2;--line:#d8cfbe;--soft:#e7f1ea;--ink:#2f3e4e;--muted:#566472;--green:#0b7a5c}
.theme-casebook.dark,body.dark.theme-casebook{--ink:#f1f5fb;--muted:#c5d0de;--wash:#1a2230;--paper:#232d3d;--line:#46566c;--soft:#173e35;--green:#7be0b9}
.theme-casebook{background:var(--wash)}
.theme-casebook #slide{border-radius:6px;border:1px solid var(--line);border-top:5px solid #2f3e4e;box-shadow:6px 6px 0 var(--line);background:var(--paper);background-image:radial-gradient(#00000006 1px,transparent 1px);background-size:5px 5px}
.theme-casebook.dark #slide{border-top-color:#a3bdff;background-image:none}
.theme-casebook .screen-heading .eyebrow{display:inline-block;background:var(--wash);border:1px solid var(--line);border-bottom:none;border-radius:8px 8px 0 0;padding:3.8px 9px;margin:0;color:var(--ink)}
.theme-casebook .screen-heading h1{border-top:2px solid var(--line);padding-top:9px;margin-top:0}
.theme-casebook .panel{border-radius:4px;border:1px solid var(--line);border-top:3px solid #2f3e4e;background:var(--paper)}
.theme-casebook.dark .panel{border-top-color:#a3bdff}
.theme-casebook .stage{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.theme-casebook .stage.no-art{grid-template-columns:1fr;max-width:1000px}
.theme-casebook .art{border-radius:3px;border:1px solid var(--line);width:auto;max-width:100%;margin-inline:auto}
.theme-casebook .choices button,.theme-casebook .lane,.theme-casebook .tabs button{border-radius:5px;font-size:14px}
.settings{display:flex;flex-wrap:wrap;gap:6px;margin:4.5px 0 12px}.settings button{font-size:14px}
.notice{border-left:4px solid #f2c744;background:var(--wash);padding:7.5px 10.5px;margin:0 0 12px;font-size:14px}
.case-quote{margin:0 0 12px;padding:9px 12px;border-left:4px solid var(--ink);background:var(--wash);font-size:14.9px;font-style:italic}
.feel-board{display:grid;gap:6px;margin-bottom:10.5px}.feel-row{border:1px solid var(--line);border-radius:5px;padding:6px 9px;background:var(--wash);display:grid;grid-template-columns:minmax(120px,.9fr) minmax(0,2.1fr);gap:4.5px 9px;align-items:center}.feel-row>div:first-child strong,.feel-row>div:first-child span{display:block}.feel-scale{display:flex;gap:4.5px}.feel-scale button{flex:1;min-width:0;font-size:14px;padding:6px 4.5px}.feel-reveal{grid-column:1/-1;margin:1.5px 0 0;font-size:14px}.feel-row .small{font-size:14px;margin:0}
.thread{display:grid;gap:4.5px;margin:0 0 10.5px}.bubble{background:var(--wash);border:1px solid var(--line);border-radius:12px 12px 12px 2px;padding:6px 9px;margin:0;max-width:92%;font-size:14px}.bubble strong{display:block;font-size:12.2px;color:var(--muted)}
.item-art{max-height:26vh;margin-bottom:9px}
.timeline{list-style:none;margin:0 0 10.5px;padding:0 0 0 16.5px;border-left:3px solid var(--green)}.timeline li{position:relative;margin-bottom:6px}.timeline li:before{content:'';position:absolute;left:-30px;top:12px;width:13px;height:13px;border-radius:50%;background:var(--green);border:2px solid var(--paper)}.timeline details{margin:0}.timeline summary{font-size:14px}
.stamp{display:inline-block;border:3px solid var(--green);color:var(--green);border-radius:6px;padding:4.5px 10.5px;font-weight:800;letter-spacing:1px;text-transform:uppercase;transform:rotate(-3deg);margin-bottom:10.5px;font-size:14px}
.scope{border:1px dashed var(--line);border-radius:5px;padding:9px 10.5px;margin-top:10.5px;font-size:14px;background:var(--wash)}
.takeaway{font-weight:700;border-bottom:3px solid #f2c744;padding-bottom:2.2px}.lead{font-size:15.8px}.panel .takeaway+*{margin-top:9px}
.sources{margin:0;padding-left:13.5px}.sources li{margin-bottom:9px;font-size:13.1px;word-break:break-word}
.src-link{position:absolute;right:16px;bottom:6px;z-index:9;font-size:12px;line-height:1;padding:3px 6px;border:none;background:color-mix(in srgb,var(--paper) 88%,transparent);color:var(--muted);text-decoration:underline;border-radius:4px;min-height:24px}
.src-link:hover:not(:disabled){background:var(--wash);color:var(--ink);border:none}
.src-link:focus-visible{outline:3px solid var(--focus);outline-offset:2px}
#screen{padding-bottom:27px}
@media(max-width:650px){.theme-casebook .stage{grid-template-columns:1fr}.feel-row{grid-template-columns:1fr}.item-art{max-height:22vh}.src-link{right:10px}}
@media(min-width:651px) and (max-height:700px){.theme-casebook .stage{grid-template-columns:minmax(0,.6fr) minmax(0,1.4fr)}.theme-casebook .stage.no-art{grid-template-columns:1fr}.item-art{max-height:20vh}}

.art-col{min-width:0}.art-col .case-quote{margin:10.5px 0 0}
@media(max-width:650px){#screen[data-type=feelingsboard] .art-col figure{display:none}.art-col .case-quote{margin:0 0 9px}}
/*mls-compact-end*/
