@font-face{font-family:Inter;src:url('assets/inter-400.ttf')}
@font-face{font-family:Inter;src:url('assets/inter-500.ttf');font-weight:500}
@font-face{font-family:Inter;src:url('assets/inter-600.ttf');font-weight:600}
@font-face{font-family:Inter;src:url('assets/inter-700.ttf');font-weight:700}
:root{--ink:#131313;--charcoal:#17181b;--muted:#656a70;--mint:#8fffd0;--blue:#409cff;--paper:#f6f7f6;--line:#dde0dd;--white:#fff;--space:clamp(24px,5vw,80px)}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
button,a,select,summary{touch-action:manipulation}
button{cursor:pointer}
button:disabled{cursor:default;opacity:.5}
button,a,select,summary{ -webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--blue);outline-offset:5px}
button:active,.primary:active,.secondary:active{transform:translateY(1px)}
h1,h2,h3,p{margin:0}
h1{font-size:clamp(40px,5.2vw,72px);font-weight:600;letter-spacing:-.052em;line-height:1.06}
h2{font-size:clamp(28px,3vw,40px);font-weight:600;letter-spacing:-.04em;line-height:1.15}
h3{font-size:21px;font-weight:600;letter-spacing:-.025em;line-height:1.25}
p{max-width:70ch}
.muted{color:var(--muted)}
.eyebrow{font-size:12px;letter-spacing:.13em;text-transform:uppercase;font-weight:600;margin-bottom:20px}
.small{font-size:13px}
.skip{position:fixed;top:-100px;left:24px;background:white;padding:12px;z-index:100}
.skip:focus{top:12px}
.preview-badge{font-size:11px;color:#c1c5c7;border:1px solid #ffffff30;border-radius:6px;padding:5px 9px;white-space:nowrap}
.context-bar{padding:14px var(--space);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-size:13px;gap:20px;background:white}
.context-bar>div{display:flex;gap:20px;align-items:center}
.context-date{color:var(--muted)}
.role-picker{display:flex;gap:10px;align-items:center;color:var(--muted);white-space:nowrap}
.role-picker select{background:var(--paper);border:1px solid var(--line);border-radius:8px;min-height:40px;padding:4px 30px 4px 12px;color:var(--ink);font-size:13px;font-weight:500}
.hero{background:var(--paper);color:var(--ink);padding:64px var(--space) 0}
.hero-inner{max-width:1280px;margin:auto;display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center;padding-bottom:56px}
.hero .eyebrow{color:var(--mint)}
.hero .intro{font-size:18px;color:#b7bdbd;margin:24px 0 32px;max-width:45ch}
.hero-art{background:#e9ede9;border-radius:16px;position:relative;min-height:350px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hero-art .robot{width:88%;height:330px;object-fit:contain}
.hero-art .anatomy{position:absolute;width:26%;height:125px;object-fit:contain;bottom:25px;right:15px}
.art-caption{position:absolute;bottom:16px;left:20px;color:#4c5653;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.primary,.secondary{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:12px 22px;border:1px solid transparent;border-radius:10px;font-weight:500;font-size:14px;transition:background .15s,transform .15s}
.primary{background:var(--blue);color:#091827}
.primary:hover{background:#6db5ff}
.secondary{background:white;border-color:var(--line);color:var(--ink)}
.secondary:hover{background:#ecf0ec}
.hero .text-link{color:#d3d8d5;font-size:14px;display:inline-block;padding:14px 0}
.actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap}
.hero-meta{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff25;max-width:1280px;margin:auto;padding:22px 0 26px;gap:24px}
.hero-meta span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:#b5bcb8;margin-bottom:6px}
.hero-meta strong{font-size:14px;font-weight:500}
.section{max-width:1440px;margin:auto;padding:64px var(--space)}
.section+.section{border-top:1px solid var(--line)}
.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:32px}
.section-heading p{color:var(--muted);margin-top:12px;max-width:56ch}
.text-link{font-size:14px;font-weight:500;text-decoration:underline;text-underline-offset:5px}
.text-link:hover{color:#2474c4}
.journey-list{border-top:1px solid var(--line)}
.journey-row{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:24px;border-bottom:1px solid var(--line);padding:24px 8px;transition:background .15s}
.journey-row:hover{background:#eceedf55}
.step-number{color:#858b89;font-size:14px;font-variant-numeric:tabular-nums}
.journey-row h3{font-size:20px}
.journey-row p{font-size:14px;color:var(--muted);margin-top:7px}
.row-end{display:flex;gap:20px;align-items:center}
.arrow{font-size:24px;font-weight:400}
.tag{font-size:11px;color:#50635a;background:#e8eee9;padding:5px 9px;border-radius:6px;white-space:nowrap}
.tag.done{background:#ddf5e7;color:#21603f}
.note{font-size:13px;color:var(--muted);margin-top:20px}
.kit-strip{background:white;border:1px solid var(--line);border-radius:16px;display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.kit-piece{padding:24px;min-width:0;border-right:1px solid var(--line)}
.kit-piece:last-child{border:0}
.kit-piece img{height:150px;width:100%;object-fit:contain;margin-bottom:20px}
.kit-piece h3{font-size:15px}
.kit-piece p{font-size:12px;color:var(--muted);margin-top:8px}
.footnote{font-size:12px;color:var(--muted);margin-top:16px}
.page-top{padding:52px var(--space) 40px;max-width:1440px;margin:auto}
.page-top .eyebrow{color:var(--muted);margin-bottom:16px}
.page-top h1{font-size:clamp(36px,4vw,54px)}
.page-top p:not(.eyebrow){font-size:18px;color:var(--muted);margin-top:20px;max-width:65ch}
.page-body{max-width:1440px;padding:0 var(--space) 64px;margin:auto}
.role-note{border-left:3px solid var(--mint);background:#eaf0eb;padding:18px 24px;font-size:14px;margin-bottom:32px}
.schedule{border-top:1px solid var(--line)}
.schedule-row{display:grid;grid-template-columns:170px 1fr;gap:32px;border-bottom:1px solid var(--line);padding:24px 0}
.schedule-row time{font-size:14px;color:#555e59;font-variant-numeric:tabular-nums}
.schedule-row h3{font-size:18px}
.schedule-row p{font-size:14px;color:var(--muted);margin-top:8px}
.schedule-row a{display:inline-block;margin-top:12px;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.lesson-shell{max-width:1440px;margin:auto;display:grid;grid-template-columns:250px 1fr;min-height:700px}
.lesson-nav{padding:40px 24px 40px var(--space);border-right:1px solid var(--line)}
.lesson-nav .eyebrow{font-size:10px;color:var(--muted);margin-bottom:20px}
.lesson-nav a{display:flex;gap:12px;align-items:flex-start;font-size:13px;padding:12px 8px;margin:0 -8px 4px;border-radius:8px;color:var(--muted)}
.lesson-nav a[aria-current=step]{background:#e4e9e4;color:var(--ink);font-weight:500}
.lesson-nav a:hover{background:#e9ede9}
.lesson-nav .back{margin-bottom:30px}
.lesson{padding:44px var(--space);max-width:1000px}
.lesson h1{font-size:clamp(34px,3.6vw,50px)}
.lesson .intro{font-size:18px;color:var(--muted);margin:20px 0 32px}
.lesson section{padding:28px 0;border-top:1px solid var(--line)}
.lesson section h2{font-size:23px;margin-bottom:20px}
.steps{list-style:none;margin:0;padding:0;counter-reset:steps}
.steps li{counter-increment:steps;display:grid;grid-template-columns:30px 1fr;gap:14px;margin-bottom:22px;font-size:15px}
.steps li:before{content:counter(steps,decimal-leading-zero);color:var(--muted);font-size:12px;padding-top:3px}
.evidence{background:var(--charcoal);color:white;padding:24px;border-radius:12px}
.evidence .eyebrow{color:var(--mint);margin-bottom:12px}
.evidence ul{padding-left:20px;margin:0;font-size:15px}
.field{display:block;margin-bottom:24px;font-size:14px;font-weight:500}
.field textarea,.field input{display:block;width:100%;border:1px solid #cbd1cb;background:#fff;border-radius:8px;padding:14px;margin-top:10px;color:var(--ink);font-size:15px;line-height:1.5;font-weight:400}
.field textarea{resize:vertical;min-height:110px}
.save-line{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;color:var(--muted);margin-bottom:24px}
.check-label{display:flex;gap:12px;align-items:flex-start;font-size:14px;padding:16px 0}
.check-label input{accent-color:#217b55;width:18px;height:18px;flex:none;margin:2px 0 0}
.checkpoint{border-left:3px solid #8cb8a0;padding:0 0 0 20px;font-size:15px}
.checkpoint strong{display:block;font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:10px}
.lesson-actions{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:16px;padding-top:28px}
.text-button{border:0;background:transparent;padding:10px 0;color:inherit;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.text-button:hover{color:#2474c4}
.resource-list{border-top:1px solid var(--line)}
.resource-row{padding:24px 0;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;border-bottom:1px solid var(--line)}
.resource-row h3{font-size:18px}
.resource-row p{font-size:14px;color:var(--muted);margin-top:8px}
.resource-state{font-size:12px;color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:48px}
.two-col h2{font-size:24px;margin-bottom:20px}
.plain-list{padding-left:20px}
.plain-list li{margin-bottom:14px;font-size:15px}
.setup-block{display:grid;grid-template-columns:280px 1fr;gap:48px;padding:40px 0;border-top:1px solid var(--line)}
.setup-art{background:#e9ede9;border-radius:14px;padding:24px;align-self:start}
.setup-art img{width:100%;height:210px;object-fit:contain}
.setup-block h2{font-size:26px;margin-bottom:20px}
.setup-copy dl{margin:0}
.setup-copy dt{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-top:20px}
.setup-copy dd{margin:5px 0 0;font-size:15px;max-width:65ch}
.equipment{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}
.equipment span{padding:8px 14px;border-radius:6px;border:1px solid #ccd4cd;font-size:13px}
.rubric{width:100%;border-collapse:collapse}
.rubric th,.rubric td{text-align:left;padding:20px 0;border-bottom:1px solid var(--line)}
.rubric th{color:var(--muted);font-size:12px;font-weight:500}
.rubric th:last-child,.rubric td:last-child{text-align:right}
.rubric td:last-child{font-variant-numeric:tabular-nums}
.print-hero{display:none}
.footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:24px;padding:24px var(--space);font-size:12px;color:var(--muted)}
.toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:var(--charcoal);color:#fff;padding:14px 24px;border-radius:10px;box-shadow:0 8px 28px #0002;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s;z-index:30;font-size:14px;max-width:90vw}
.toast.visible{opacity:1;transform:translate(-50%,0)}
dialog{border:1px solid var(--line);border-radius:16px;padding:32px;max-width:500px;width:calc(100% - 32px);box-shadow:0 24px 100px #0003}
dialog::backdrop{background:#0007}
dialog h2{font-size:28px;margin-bottom:16px}
dialog p{font-size:14px;color:var(--muted)}
.dialog-actions{display:flex;gap:12px;margin-top:28px}
.danger{background:#a72d2d;color:#fff;border:0;border-radius:10px;padding:12px 18px;font-size:14px}
.loading{padding:80px var(--space);color:var(--muted)}
.print-only{display:none}
.review-disclosure{margin-top:32px;border-top:1px solid var(--line);padding-top:24px;font-size:13px;color:var(--muted)}
.review-disclosure summary{cursor:pointer;padding:8px 0;color:var(--ink)}
.review-disclosure ul{padding-left:20px;margin-top:16px}
.review-disclosure li{margin:10px 0}
.resource-tools{display:flex;gap:16px;flex-wrap:wrap;margin:32px 0}
.score-total{font-size:36px;font-weight:600;letter-spacing:-.04em}
.score-total small{font-size:15px;font-weight:400;letter-spacing:0;color:var(--muted)}
.judge-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
@media(min-width:1500px){.lesson-shell{grid-template-columns:280px 1fr}}
@media(max-width:1000px){.hero-inner{gap:32px}
.hero-art{min-height:280px}
.hero-art .robot{height:280px}
.context-date{display:none}
.kit-piece{padding:16px}
.kit-piece img{height:120px}
.lesson-shell{grid-template-columns:210px 1fr}
.lesson-nav{padding-left:24px}
.setup-block{grid-template-columns:220px 1fr;gap:32px}}
@media(max-width:700px){:root{--space:24px}
.preview-badge{font-size:10px}
.context-bar{padding:12px 24px;gap:12px}
.context-bar>div{font-size:11px;max-width:46%}
.role-picker{font-size:11px;gap:6px}
.role-picker select{max-width:123px;font-size:12px}
.hero{padding-top:40px}
.hero-inner{grid-template-columns:1fr;gap:36px;padding-bottom:32px}
.hero h1{font-size:48px}
.hero .intro{font-size:16px}
.hero-art{min-height:230px}
.hero-art .robot{height:235px;width:80%}
.hero-art .anatomy{height:95px}
.hero-meta{gap:16px;grid-template-columns:1fr 1fr}
.hero-meta>div:last-child{grid-column:1/-1}
.section{padding-top:40px;padding-bottom:40px}
.section-heading{display:block}
.section-heading>.text-link{display:inline-block;margin-top:20px}
.journey-row{grid-template-columns:25px 1fr 20px;gap:12px;padding:22px 0}
.journey-row h3{font-size:17px}
.journey-row p{font-size:13px}
.row-end .tag{display:none}
.kit-strip{grid-template-columns:1fr 1fr}
.kit-piece:nth-child(2){border-right:0}
.kit-piece:nth-child(-n+2){border-bottom:1px solid var(--line)}
.kit-piece img{height:130px}
.page-top{padding-top:36px;padding-bottom:32px}
.page-top p:not(.eyebrow){font-size:16px}
.two-col,.judge-grid{grid-template-columns:1fr;gap:32px}
.schedule-row{grid-template-columns:100px 1fr;gap:16px}
.schedule-row time{font-size:12px}
.schedule-row h3{font-size:16px}
.schedule-row p{font-size:13px}
.lesson-shell{display:block}
.lesson-nav{border-right:0;border-bottom:1px solid var(--line);padding:20px 24px;display:flex;gap:8px;overflow-x:auto}
.lesson-nav .eyebrow,.lesson-nav .back{display:none}
.lesson-nav a{flex:none;align-items:center;font-size:11px;padding:10px;margin:0;gap:5px}
.lesson-nav a span:last-child{max-width:115px}
.lesson{padding:32px 24px 48px}
.lesson .intro{font-size:16px}
.lesson-actions{align-items:flex-start}
.lesson-actions .primary{gap:12px;font-size:13px}
.setup-block{grid-template-columns:1fr;gap:24px}
.setup-art{max-width:none}
.setup-art img{height:200px}
.resource-row{gap:12px}
.resource-row h3{font-size:16px}
.resource-row .secondary{padding:10px 14px;font-size:12px}
.footer{flex-wrap:wrap;font-size:11px;gap:12px}
.footer>span:nth-child(2){order:3;width:100%}
.dialog-actions{flex-wrap:wrap}
.save-line{align-items:flex-start}
.rubric td{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*,*:before,*:after{transition:none!important;animation:none!important}}
@media print{@page{margin:18mm}
body{background:white;font-size:10pt;color:black}
.hero{background:white;color:black;padding:0}
.hero-inner{display:block;padding:0}
.hero-art{display:none}
.hero .intro,.hero .eyebrow{color:black}
.hero-meta{border-color:#bbb;padding-bottom:20px}
.hero-meta span{color:#333}
.hero-meta strong{color:black}
.section,.page-top,.page-body,.lesson{padding:16px 0;max-width:none}
.lesson-shell{display:block;min-height:0}
.page-top h1,.lesson h1,.hero h1{font-size:30pt}
.page-top p,.lesson .intro{font-size:12pt}
.lesson section{break-inside:avoid}
.field textarea{border:0;border-bottom:1px solid #aaa;border-radius:0;min-height:90px;resize:none;padding:6px 0}
.evidence{background:#eee;color:black;print-color-adjust:exact}
.evidence .eyebrow{color:black}
.kit-strip{display:grid}
.kit-piece img{height:100px}
.setup-block{grid-template-columns:160px 1fr;gap:24px;break-inside:avoid}
.setup-art img{height:130px}
.schedule-row{padding:12px 0;break-inside:avoid}
.tag{background:none!important;border:1px solid #aaa}
.print-only{display:block}
.judge-grid{display:block}
.print-hero{display:block}
a[href^='http']:after{content:' (' attr(href) ')';font-size:8pt;overflow-wrap:anywhere}}
.theme-toggle{border:1px solid #ffffff25;border-radius:8px;display:flex;align-items:center;gap:8px;min-height:40px;padding:8px 12px;background:transparent;color:#ddd;font-size:12px}
.theme-toggle:hover{background:#ffffff10;color:white}
.theme-toggle svg{height:17px;width:17px}
.hub-nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding:0 var(--space);background:var(--white)}
.hub-nav{display:flex;gap:32px;overflow-x:auto}
.hub-nav a{font-size:13px;padding:16px 0 14px;border-bottom:2px solid transparent;white-space:nowrap;color:var(--muted);min-height:48px}
.hub-nav a:hover{color:var(--ink)}
.hub-nav a[aria-current=page]{color:var(--ink);border-color:#319a6c}
.hub-nav-wrap .preview-badge{color:var(--muted);border-color:var(--line)}
@media screen{html[data-theme=dark]{color-scheme:dark;--ink:#f4f4f6;--charcoal:#232428;--muted:#a4aaa8;--paper:#17181b;--line:#ffffff17;--white:#1d1f22}
html[data-theme=dark] body{background:#17181b}
html[data-theme=dark] .context-bar,html[data-theme=dark] .hub-nav-wrap{background:#17181b}
html[data-theme=dark] .role-picker select{background:#232428}
html[data-theme=dark] .hero-art,html[data-theme=dark] .setup-art{background:#252a2b}
html[data-theme=dark] .art-caption{color:#afb9b6}
html[data-theme=dark] .secondary{background:#282b2e;border-color:#ffffff20;color:#f4f4f6}
html[data-theme=dark] .secondary:hover{background:#34383b}
html[data-theme=dark] .tag{background:#2a3530;color:#b2cbbb}
html[data-theme=dark] .tag.done{background:#234435;color:#a3e6c2}
html[data-theme=dark] .journey-row:hover{background:#ffffff04}
html[data-theme=dark] .kit-strip{background:#202326}
html[data-theme=dark] .role-note{background:#222c27}
html[data-theme=dark] .schedule-row time{color:#b6bfba}
html[data-theme=dark] .lesson-nav a[aria-current=step]{background:#2b3530}
html[data-theme=dark] .lesson-nav a:hover{background:#252c28}
html[data-theme=dark] .field textarea,html[data-theme=dark] .field input{background:#202326;border-color:#414747;color:#f4f4f6}
html[data-theme=dark] .evidence{background:#252c28}
html[data-theme=dark] .equipment span{border-color:#46534b}
html[data-theme=dark] .step-number{color:#a3aaa7}
html[data-theme=dark] .text-link:hover,html[data-theme=dark] .text-button:hover{color:#8fc5ff}
html[data-theme=dark] .toast{background:#f4f4f6;color:#17181b}
html[data-theme=dark] dialog{background:#232428;color:#f4f4f6}
html[data-theme=dark] .skip{background:#232428}
html[data-theme=dark] .hub-nav a[aria-current=page]{border-color:var(--mint)}}
@media(max-width:700px){.hub-nav{gap:24px}
.hub-nav a{font-size:12px}
.hub-nav-wrap .preview-badge{display:none}
.theme-toggle{padding:8px 10px;min-height:40px}}
@media print{.hub-nav-wrap{display:none!important}}
@media(max-width:700px){.lesson-nav{scrollbar-width:none}
.lesson-nav::-webkit-scrollbar{display:none}}
.field textarea:hover,.field input:hover{border-color:#8b9891}
.field textarea:focus,.field input:focus{outline:2px solid var(--blue);outline-offset:2px}
.primary:focus-visible{outline-color:#8fc5ff}
.hub-nav-wrap{min-width:0}
.lesson{min-width:0}
.hero-inner>div{min-width:0}
.setup-copy{min-width:0}
.resource-row>div{min-width:0}
.role-picker select{cursor:pointer}
.check-label{cursor:pointer}
.context-date{white-space:nowrap}
/* Header host only. Navbar geometry and interaction are generated from Website/moonshot. */
.website-header{position:relative;height:110px;background:#131313;z-index:50;color:#fff;font-family:Inter,Arial,sans-serif}
.context-controls{display:flex;align-items:center;gap:24px}
.context-bar>.context-controls{max-width:none}
.context-controls .theme-toggle{border-color:var(--line);color:var(--ink)}
.context-controls .theme-toggle:hover{background:#7f8b8212}
@media(max-width:991px){.website-header{height:80px}}
@media(max-width:700px){.context-controls{gap:12px}.context-controls .theme-toggle{padding:8px;min-width:36px;min-height:40px}.context-controls .theme-toggle span{display:none}.context-bar>div:first-child{max-width:40%}}
@media print{.website-header{display:none!important}}

@media print{.context-bar,.footer,.lesson-nav,.toast,.actions,.lesson-actions,.resource-tools,.review-disclosure,.role-note,.preview-badge,dialog,.save-line,.text-button,.primary,.secondary{display:none!important}}

/* Learn's quiet entry screen; the website navigation remains source-derived. */
.context-bar{background:var(--paper)}
body[data-page=overview] .hub-nav-wrap{display:none}
body[data-page=overview] .context-bar{border-bottom:0;justify-content:flex-end;padding-top:16px;padding-bottom:0}
body[data-page=overview] .context-bar>div:first-child{display:none}
body[data-page=overview] .footer{border-top:0}
body[data-page=overview] .footer>span:nth-child(2),body[data-page=overview] .footer #print{display:none}
.hero{padding-top:48px;padding-bottom:48px}
.hero-inner{max-width:1280px;min-height:540px;grid-template-columns:1fr 1fr;gap:64px;padding-bottom:0}
.hero .eyebrow{color:var(--muted);font-size:12px;letter-spacing:.08em;margin-bottom:28px}
.hero h1{font-size:clamp(56px,6vw,80px);line-height:1.05}
.hero-subtitle{font-size:clamp(26px,3vw,38px);letter-spacing:-.035em;line-height:1.2;margin-top:18px;font-weight:500}
.hero .intro{color:var(--muted);font-size:16px;max-width:39ch;margin:24px 0 28px}
.delivery-detail{color:var(--muted);font-size:12px;line-height:1.8;margin-top:36px}
.hero-art{margin:0;background:transparent!important;border-radius:0;min-height:440px;display:flex;flex-direction:column;overflow:visible}
.hero-art .robot{width:100%;height:400px}
.hero-art figcaption{color:var(--muted);font-size:11px;text-align:center;margin-top:20px}
@media(max-width:700px){
.hero{padding-top:32px;padding-bottom:24px}
.hero-inner{grid-template-columns:1fr;min-height:0;gap:32px}
.hero h1{font-size:52px}
.hero-subtitle{font-size:28px}
.hero .eyebrow{margin-bottom:20px}
.hero .intro{font-size:15px;margin:20px 0 24px}
.delivery-detail{margin-top:24px}
.hero-art{min-height:0}
.hero-art .robot{height:260px;width:100%}
.hero-art figcaption{margin-top:12px}
}
@media print{.hero{background:white;color:black}.hero-inner{min-height:0}.hero-art{display:none}}

/* Requested product identity extension of the authored website logo. */
.website-header .brand-2{display:flex;align-items:center;gap:20px;width:auto}
.learn-wordmark{display:inline-block;border-left:1px solid #ffffff40;padding-left:20px;color:#f4f4f6;font-size:20px;font-weight:500;letter-spacing:.08em;line-height:28px}
@media(max-width:700px){.website-header .brand-2{gap:14px}.learn-wordmark{padding-left:14px;font-size:17px}}

/* Instructor: one current step and one next action. */
body[data-role=instructor][data-page=module] .hub-nav-wrap,
body[data-role=instructor][data-page=module]>.footer,
body[data-role=instructor][data-page=module] .context-bar>div:first-child{display:none}
body[data-role=instructor][data-page=module] .context-bar{justify-content:flex-end;border:0;padding-top:12px;padding-bottom:12px}
.instructor-stage{max-width:1056px;margin:0 auto;padding:24px 48px 0}
.step-top{display:flex;justify-content:space-between;align-items:center;gap:24px;color:var(--muted);font-size:13px}
.step-picker{position:relative}
.step-picker summary{cursor:pointer;list-style:none;padding:12px 0;display:flex;gap:24px;align-items:center}
.step-picker summary::-webkit-details-marker{display:none}
.step-picker nav{position:absolute;top:100%;left:0;width:260px;padding:12px;background:var(--white);border:1px solid var(--line);border-radius:12px;z-index:10;box-shadow:0 16px 48px #0002}
.step-picker nav a{display:block;padding:12px;border-radius:6px}
.step-picker nav a:hover,.step-picker nav a[aria-current]{background:var(--paper);color:var(--ink)}
.teaching-focus{padding:64px 0 72px;max-width:720px}
.teaching-focus .eyebrow{color:var(--muted);margin-bottom:20px;letter-spacing:.08em}
.teaching-focus h1{font-size:clamp(40px,5vw,64px)}
.teaching-cue{font-size:clamp(20px,2.2vw,26px);line-height:1.5;color:var(--muted);margin-top:24px;max-width:36ch}
.teaching-details{margin-top:40px;font-size:14px}
.teaching-details>summary{display:flex;gap:32px;align-items:center;cursor:pointer;list-style:none;min-height:44px;width:fit-content;color:var(--muted)}
.teaching-details>summary::-webkit-details-marker{display:none}
.teaching-details[open]>summary{color:var(--ink)}
.teaching-detail-content{padding:16px 0 0;max-width:65ch}
.teaching-detail-content h2{font-size:18px;margin:24px 0 12px}
.teaching-detail-content p,.teaching-detail-content li{color:var(--muted);margin-bottom:12px}
.teaching-detail-content ol{padding-left:20px}
.teaching-next{display:flex;gap:24px;align-items:center;border-top:1px solid var(--line);padding:24px 0 40px}
.teaching-next .primary{margin-left:auto;min-width:116px}
.step-back{display:flex;align-items:center;justify-content:center;width:44px;height:44px;font-size:24px;color:var(--muted)}
.next-label{font-size:12px;color:var(--muted)}
.teaching-next p{font-size:16px;margin-top:4px}
@media(max-width:700px){.instructor-stage{padding:12px 24px 0}.teaching-focus{padding:44px 0 56px}.teaching-cue{font-size:21px}.teaching-next{gap:16px}.teaching-next .primary{min-width:96px;gap:16px}.step-time{font-size:12px}.step-back{width:28px}.teaching-details{margin-top:28px}}

.instructor-home{max-width:1200px;padding:36px 48px 56px;margin:auto}
.instructor-home-heading{padding-bottom:48px}
.instructor-home-heading .eyebrow{color:var(--muted)}
.instructor-home-heading h1{font-size:clamp(36px,4vw,52px)}
.instructor-home-heading>p:not(.eyebrow){color:var(--muted);margin:16px 0 24px;font-size:14px}
.instructor-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;border-top:1px solid var(--line);padding-top:32px}
.instructor-overview-grid h2{font-size:23px;margin-bottom:24px}
.day-compact>div{display:grid;grid-template-columns:120px 1fr;gap:16px;margin-bottom:18px;font-size:14px}
.day-compact time{color:var(--muted);font-size:13px}
.overview-checks,.prep-actions{padding-left:20px;font-size:15px}
.overview-checks li,.prep-actions li{padding-left:8px;margin-bottom:16px}
.overview-kit{font-size:14px;margin:24px 0;color:var(--muted)}
.overview-kit summary{cursor:pointer;min-height:32px}
.instructor-overview-grid .overview-resource-title{margin-top:32px;margin-bottom:20px}
.overview-resource-links{display:flex;flex-wrap:wrap;gap:20px;align-items:center}
.overview-teach{border-top:1px solid var(--line);padding-top:24px;margin-top:40px;display:flex;gap:24px;font-size:14px;color:var(--muted)}
.prep-actions{margin:32px 0}
body[data-role=instructor][data-page=prepare] .hub-nav-wrap,body[data-role=instructor][data-page=prepare]>.footer,body[data-role=instructor][data-page=prepare] .context-bar>div:first-child{display:none}
body[data-role=instructor][data-page=prepare] .context-bar{justify-content:flex-end;border:0}
@media(max-width:700px){.instructor-home{padding:24px}.instructor-overview-grid{grid-template-columns:1fr;gap:32px}.overview-teach{flex-direction:column;gap:12px}.day-compact>div{grid-template-columns:110px 1fr;gap:12px}}

.instructor-landing{max-width:840px;margin:0 auto;padding:48px 48px 64px}
.instructor-landing header .eyebrow{color:var(--muted);margin-bottom:16px}
.instructor-landing h1{font-size:56px}
.landing-meta{font-size:14px;color:var(--muted);margin-top:16px}
.instructor-choices{margin:40px 0 32px;border-top:1px solid var(--line)}
.instructor-choices a{display:flex;align-items:center;justify-content:space-between;min-height:72px;border-bottom:1px solid var(--line);font-size:22px;letter-spacing:-.02em}
.instructor-choices a>span:last-child{font-size:20px;color:var(--muted)}
.instructor-choices a:hover{color:var(--blue)}
.landing-start{display:flex;align-items:center;justify-content:space-between;gap:24px}
.landing-start p{font-size:17px;margin-top:4px}
.landing-skip{display:block;font-size:12px;color:var(--muted);margin-top:28px;text-align:right;text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.instructor-landing{padding:32px 24px}.instructor-landing h1{font-size:44px}.landing-start{align-items:flex-start;flex-direction:column}.landing-skip{text-align:left}}

/* Experience tabs stay centered; appearance is a quiet side control. */
.context-bar,body[data-page=overview] .context-bar,body[data-role=instructor][data-page=module] .context-bar,body[data-role=instructor][data-page=prepare] .context-bar{justify-content:center;position:relative;padding:16px var(--space);min-height:72px}
.context-bar>div:first-child{display:none}
.role-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line);border-radius:10px;background:var(--paper)}
.role-tabs button{border:0;background:transparent;color:var(--muted);padding:9px 24px;min-height:40px;border-radius:7px;font-size:13px;font-weight:500}
.role-tabs button[aria-selected=true]{background:var(--white);color:var(--ink);box-shadow:0 1px 4px #0002}
.context-controls .theme-toggle{position:fixed;right:24px;top:50%;z-index:20;background:var(--paper);border-color:var(--line)}
@media(max-width:700px){.context-controls .theme-toggle{right:12px;top:auto;bottom:20px}.role-tabs button{padding:9px 22px}}
@media print{.context-controls .theme-toggle{display:none}}

/* A stable map and an ordered instructor journey. */
body[data-role=instructor] .hub-nav-wrap,body[data-role=instructor]>.footer{display:none}
.instructor-workspace{display:grid;grid-template-columns:248px minmax(0,1fr);max-width:1280px;margin:0 auto;min-height:600px;border-top:1px solid var(--line)}
.instructor-rail{padding:28px 24px;border-right:1px solid var(--line)}
.rail-label{font-size:12px;color:var(--muted);margin:0 12px 20px}
.instructor-rail nav{display:grid;gap:8px}
.instructor-rail a{display:block;padding:14px 12px;border-radius:8px}
.instructor-rail a strong{display:block;font-size:14px;font-weight:500}
.instructor-rail a span{display:block;font-size:11px;color:var(--muted);margin-top:5px}
.instructor-rail a[aria-current=page]{background:var(--white);box-shadow:inset 3px 0 var(--blue)}
.instructor-rail a:hover{background:var(--white)}
.instructor-content{min-width:0}
.day-overview{padding:32px 40px 40px;max-width:960px}
.day-overview .eyebrow{font-size:10px;letter-spacing:.07em;color:var(--muted);margin-bottom:12px}
.day-overview h1{font-size:36px;letter-spacing:-.035em}
.overview-lead{color:var(--muted);font-size:14px;margin-top:12px}
.first-action{display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--white);padding:20px 24px;border-radius:10px;margin:28px 0}
.first-action h2{font-size:20px;margin-top:6px}
.first-action .primary{white-space:nowrap}
.day-title{font-size:19px;margin-bottom:16px}
.day-timeline{border-top:1px solid var(--line)}
.day-timeline>div{display:grid;grid-template-columns:106px minmax(0,1fr) 82px;gap:16px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}
.day-timeline time{font-size:12px;color:var(--muted)}
.day-timeline a{font-size:11px;color:var(--muted);text-decoration:underline;text-underline-offset:4px}
.instructor-content .instructor-stage{padding:28px 40px 0}
.instructor-content .teaching-focus{padding:36px 0 40px}
.instructor-content .teaching-focus h1{font-size:40px}
.instructor-content .teaching-cue{font-size:21px}
@media(max-width:800px){.instructor-workspace{grid-template-columns:180px minmax(0,1fr)}.instructor-rail{padding:24px 12px}.day-overview{padding:28px 24px}.day-timeline>div{grid-template-columns:90px 1fr}.day-timeline a{grid-column:2}.first-action{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.instructor-workspace{display:block}.instructor-rail{border-right:0;border-bottom:1px solid var(--line);padding:12px}.rail-label,.instructor-rail a span{display:none}.instructor-rail nav{display:flex;overflow:auto;gap:4px}.instructor-rail a{white-space:nowrap;padding:12px}.instructor-rail a strong{font-size:12px}.instructor-content .instructor-stage{padding:24px}.day-overview h1{font-size:32px}}

/* Appearance belongs to the utility row, never over the workspace. */
.context-controls .theme-toggle{position:absolute;right:var(--space);top:50%;bottom:auto;transform:translateY(-50%);z-index:auto}
.context-controls .theme-toggle:active{transform:translateY(-50%)}
.instructor-rail{padding-top:24px}
.instructor-rail a{padding:13px 12px}
.instructor-rail nav{gap:6px}
.first-action{margin:24px 0;padding:16px 20px}
.day-overview{padding-top:28px}
.instructor-content .teaching-focus{padding-top:28px;padding-bottom:32px}
@media(max-width:700px){.context-controls .theme-toggle{position:absolute;right:16px;top:50%;bottom:auto}.context-bar{padding-right:60px!important}.role-tabs button{padding:9px 16px}}

/* Shared navigation: neutral selection, blue task actions. */
.experience-sidebar{position:absolute;left:0;top:110px;bottom:0;width:56px;min-height:calc(100vh - 110px);padding:20px 10px;border-right:1px solid var(--line);background:var(--paper);display:flex;flex-direction:column;gap:6px;z-index:20}
.experience-sidebar.is-expanded{width:208px;padding:20px 12px}
body>#main,body>.footer{margin-left:56px;margin-right:0}
body.menu-expanded>#main,body.menu-expanded>.footer{margin-left:208px}
body>.hub-nav-wrap{display:none}
.experience-sidebar .context-bar,.experience-sidebar .context-controls,.experience-sidebar .role-tabs,#sidebar-navigation,#sidebar-navigation nav{display:contents!important}
#expand-menu{display:flex;align-items:center;justify-content:center;gap:14px;width:36px;min-height:40px;margin:0 0 16px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:16px}
.experience-sidebar.is-expanded #expand-menu{width:100%;justify-content:flex-start;padding:0 12px;font-size:14px;color:var(--ink)}
.experience-sidebar .role-tabs button,.experience-sidebar .theme-toggle,#sidebar-navigation a{position:relative;display:flex;align-items:center;justify-content:center;width:36px;height:40px;min-height:40px;margin:0;padding:0;gap:12px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:0;box-shadow:none;transform:none}
.experience-sidebar.is-expanded .role-tabs button,.experience-sidebar.is-expanded .theme-toggle,.experience-sidebar.is-expanded #sidebar-navigation a{width:100%;justify-content:flex-start;padding:0 12px;font-size:13px}
.experience-sidebar .role-tabs button::after,.dot-mark{content:'';display:block;width:5px;height:5px;flex:none;border-radius:50%;background:var(--muted)}
.experience-sidebar .theme-toggle{position:relative;top:auto;right:auto;bottom:auto;order:10;margin-top:28px}
.experience-sidebar .theme-toggle svg{width:16px;height:16px}
.experience-sidebar .theme-toggle span{display:none}
.experience-sidebar.is-expanded .theme-toggle span{display:inline}
.experience-sidebar.is-expanded .role-tabs button::after,.experience-sidebar.is-expanded .dot-mark{display:none}
.dot-label{position:absolute;right:auto;left:44px;background:var(--white);color:var(--ink);font-size:12px;white-space:nowrap;padding:5px 8px;border-radius:4px;opacity:0;pointer-events:none}
.experience-sidebar.is-expanded .dot-label{position:static;opacity:1;background:transparent;padding:0;color:inherit;font-size:13px}
#sidebar-navigation a:hover .dot-label,#sidebar-navigation a:focus-visible .dot-label{opacity:1}
.experience-sidebar .role-tabs button[aria-selected=true],#sidebar-navigation a[aria-current=page]{background:var(--white);color:var(--ink)}
.experience-sidebar .role-tabs button:hover,.experience-sidebar .theme-toggle:hover,#sidebar-navigation a:hover{background:var(--white);color:var(--ink)}
#sidebar-navigation a:first-child{margin-top:20px}
.day-overview{max-width:960px;padding:36px 48px;margin:auto}
.tag.done{background:var(--white);color:var(--ink)}
@media screen{html[data-theme=dark] .tag.done{background:#2b2d30;color:#e4e6e5}html[data-theme=dark] .lesson-nav a[aria-current=step]{background:#2b2d30}}
.lesson-nav a[aria-current=step]{background:#e4e6e5}
.hub-nav a[aria-current=page],html[data-theme=dark] .hub-nav a[aria-current=page]{border-color:var(--ink)}
.check-label input{accent-color:var(--blue)}
@media(max-width:991px){.experience-sidebar{top:80px;min-height:calc(100vh - 80px)}}
@media print{.experience-sidebar{display:none}body>#main,body.menu-expanded>#main{margin-left:0}}

.station-focus{display:grid;grid-template-columns:240px 1fr;gap:40px;align-items:center;padding:48px 0;min-height:380px}.station-focus>img{width:100%;height:240px;object-fit:contain}.station-focus h1{font-size:36px}.station-focus .teaching-cue{font-size:18px;margin-top:20px}@media(max-width:850px){.station-focus{grid-template-columns:1fr}.station-focus>img{height:180px}}

.question-access{border:0;background:transparent;color:var(--muted);font-size:13px;text-align:left;padding:12px;border-radius:7px;min-height:40px}.question-access:hover{background:var(--white);color:var(--ink)}.student-evidence{margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.student-evidence h2{font-size:18px}.student-evidence ul{padding-left:20px;color:var(--muted);font-size:14px}.saved-question{border-top:1px solid var(--line);padding:16px 0}.saved-question .text-button{display:block}#question-dialog{max-height:85vh;overflow:auto}#question-form{margin-top:24px}

#ask-learn{position:fixed;right:28px;bottom:24px;display:flex;align-items:center;gap:10px;padding:12px 18px;border:1px solid var(--line);border-radius:28px;background:var(--white);color:var(--ink);box-shadow:0 6px 24px #0002;font-size:13px;font-weight:500;z-index:30;min-height:48px}
#ask-learn svg{width:24px;height:24px;color:var(--blue)}
#ask-learn:hover{border-color:var(--blue)}
#question-dialog{position:fixed;inset: auto 24px 88px auto;margin:0;width:390px;max-width:calc(100vw - 32px);max-height:calc(100vh - 130px);padding:24px;border-radius:18px;box-shadow:0 16px 64px #0004;overflow:auto}
#question-dialog::backdrop{background:#0002}
#question-dialog>.text-button{display:block;margin-left:auto;margin-bottom:8px;padding:0}
.assistant-heading{display:flex;gap:12px;align-items:center;margin-bottom:24px}.assistant-heading h2{font-size:20px;margin:0}.assistant-heading p{font-size:11px;margin-top:4px}.assistant-avatar{display:flex;align-items:center;justify-content:center;width:40px;height:40px;flex:none;border-radius:14px;background:var(--blue);color:#091827;font-size:22px;font-weight:500}.assistant-intro{font-size:16px!important;color:var(--ink)!important;margin-bottom:12px}#question-dialog .field textarea{min-height:90px}#question-dialog .small{font-size:11px}#saved-questions{margin-top:20px}
@media print{#ask-learn,#question-dialog{display:none!important}}
#ask-learn{right:auto;left:calc(50% + 104px);transform:translateX(-50%);bottom:20px;padding:10px 16px;min-height:44px;font-size:12px;gap:8px}
#ask-learn svg{width:20px;height:20px}
#ask-learn:active{transform:translateX(-50%) translateY(1px)}

#ask-learn .orbit-icon{width:25px;height:25px}.assistant-avatar{background:transparent;color:var(--blue)}.assistant-avatar .orbit-icon{width:36px;height:36px}

/* Orbit stays a small, modeless composer; the guide remains interactive. */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
#question-dialog{inset:auto auto 20px calc(50% + 104px);transform:translateX(-50%);width:480px;max-width:calc(100vw - 260px);max-height:240px;margin:0;padding:12px 16px;border-radius:18px;background:var(--white);box-shadow:0 6px 24px #0002;z-index:40}
.orbit-bar-heading{display:flex;align-items:center;gap:12px;margin-bottom:8px}
#question-dialog .orbit-bar-heading h2{font-size:13px;margin:0}
#assistant-context{color:var(--muted);font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
#orbit-close{background:transparent;border:0;color:var(--muted);font-size:21px;min-width:28px;min-height:28px;padding:0}
#question-form{display:flex;align-items:center;gap:8px;margin:0}
#question-text{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);font-size:14px;height:36px;outline-offset:0;padding:4px 0}
#question-form>button{border:0;border-radius:50%;width:30px;height:30px;background:var(--blue);color:#091827;font-size:20px;flex:none}
#question-dialog #question-save-status{font-size:10px;color:var(--muted);margin:4px 0}
#question-save-status:empty{display:none}
.orbit-history{font-size:10px;color:var(--muted);margin-top:8px}
.orbit-history summary{cursor:pointer}
.orbit-history[open]{padding-top:4px}
.orbit-history #saved-questions{margin-top:8px}
body.orbit-open #ask-learn{display:none}
#main{padding-bottom:160px}
@media print{#question-dialog{display:none!important}#main{padding-bottom:0}}
body.orbit-open{overflow:hidden}
body.orbit-open #main{height:calc(100svh - 260px);overflow-y:auto;padding-bottom:32px;scrollbar-gutter:stable}
body.orbit-open #question-dialog{max-height:130px}
body.orbit-open #question-dialog:has(.orbit-history[open]){max-height:240px}
body.orbit-open:has(.orbit-history[open]) #main{height:calc(100svh - 370px)}
#question-text:focus{outline:0;box-shadow:0 1px var(--blue)}

/* Orbit follows Forge panel icon conventions: 24-unit, rounded 2px strokes. */
#ask-learn{left:auto;right:24px;transform:none;bottom:20px;color:var(--ink)}
#ask-learn:active{transform:translateY(1px)}
#ask-learn .orbit-icon{width:22px;height:22px;color:var(--muted)}
#ask-learn:hover{border-color:var(--muted)}
#question-dialog{left:auto;right:24px;transform:none;width:360px;max-width:calc(100vw - 260px)}
#question-form>button{background:var(--paper);color:var(--ink);border:1px solid var(--line)}
#question-form>button:hover{background:var(--line)}
#orbit-close svg,#question-form>button svg{width:18px;height:18px;display:block;margin:auto}
#question-text:focus{box-shadow:0 1px var(--muted)}

/* A minimal composer above the existing page; no layout or scroll changes. */
body.orbit-open{overflow:auto}
body.orbit-open #main,body.orbit-open:has(.orbit-history[open]) #main{height:auto;overflow:visible;padding-bottom:160px;scrollbar-gutter:auto}
#question-dialog{bottom:76px;padding:12px 16px;max-height:120px}
#question-dialog .orbit-history{display:none}
.orbit-bar-heading{position:absolute;right:8px;top:6px;margin:0}
#orbit-close{width:24px;min-width:24px;height:24px;min-height:24px}
#question-form{padding-top:14px}
#question-text{font-size:14px;box-shadow:none}
body.orbit-open #ask-learn{display:flex}

#orbit-answer:empty{display:none}#orbit-answer{padding:16px 16px 4px 0;font-size:13px;line-height:1.5}#orbit-answer p{color:var(--ink);font-size:13px}#orbit-answer a{display:inline-block;margin-top:10px;text-decoration:underline;text-underline-offset:4px;color:var(--ink);font-size:12px}#question-dialog:has(#orbit-answer:not(:empty)),body.orbit-open #question-dialog:has(#orbit-answer:not(:empty)){max-height:300px}body.orbit-open #main{height:auto;overflow:visible}

.station-overview{max-width:1040px;margin:auto;padding:32px 40px}.station-overview .eyebrow{font-size:11px;color:var(--muted);margin-bottom:12px}.station-overview h1{font-size:34px}.station-tabs{display:flex;gap:8px;margin:24px 0;flex-wrap:wrap}.station-tabs a{padding:10px 16px;border-radius:8px;font-size:13px;border:1px solid var(--line);min-width:106px}.station-tabs a[aria-current]{background:var(--white);color:var(--ink)}.station-tabs span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.station-help{font-size:13px;color:var(--muted);margin-bottom:20px}.station-groups{display:grid;grid-template-columns:1fr 1fr;gap:24px 32px}.station-groups section{display:grid;grid-template-columns:110px 1fr;gap:20px;border-top:1px solid var(--line);padding:20px 0}.station-groups img{width:110px;height:140px;object-fit:contain}.station-groups h2{font-size:18px;margin-bottom:12px}.station-groups ul{padding-left:16px;font-size:13px;color:var(--muted);margin:0}.station-groups li{margin-bottom:5px}.station-groups .check-label{font-size:12px;line-height:1.5;padding-bottom:0}.station-overview .teaching-next{margin-top:28px}@media(max-width:1050px){.station-groups{grid-template-columns:1fr}}

.station-contents{font-size:13px;color:var(--muted);margin-bottom:12px}.station-details{font-size:11px;color:var(--muted);margin-top:14px}.station-details summary{cursor:pointer}.station-details p{margin:12px 0}.station-groups section{padding:24px 0}.station-tabs a{min-width:0;padding:10px 16px}.station-tabs{margin-bottom:12px}

.visual-setup{max-width:1120px;margin:auto;padding:24px 40px}.visual-setup .step-top{justify-content:flex-start;gap:24px}.visual-setup h1{font-size:28px;letter-spacing:-.03em}.assembly-view{display:block;width:100%;height:min(59vh,620px);object-fit:contain;margin:12px auto}.visual-setup .teaching-next{padding:16px 0;border-top:1px solid var(--line);justify-content:space-between}.visual-setup .teaching-next .primary{margin-left:auto}

/* Shared three-step instructor setup. */
.visual-setup{padding:28px 40px;max-width:1240px}.visual-setup .step-top{justify-content:space-between}.setup-progress{display:flex;gap:24px}.setup-progress a{color:var(--muted);padding:8px 0;border-bottom:2px solid transparent}.setup-progress a[aria-current]{color:var(--ink);border-color:var(--ink)}.setup-focus{display:grid;grid-template-columns:minmax(280px,44%) 1fr;gap:48px;align-items:center;min-height:54vh}.setup-focus .assembly-view{height:390px;width:100%;margin:0}.setup-focus h1{font-size:clamp(30px,3vw,46px);line-height:1.12;margin:14px 0 22px}.setup-focus .teaching-cue{font-size:21px;max-width:430px;line-height:1.55}.setup-focus .eyebrow{font-size:11px;color:var(--muted)}.visual-setup .teaching-next{gap:28px;padding-top:24px}.visual-setup .teaching-next p{font-size:16px;margin-top:6px}

.visual-setup .teaching-next{border-top:0;padding-top:0}.setup-focus{min-height:49vh;gap:32px}.setup-focus h1{font-size:36px;margin:0 0 18px}.setup-focus .teaching-cue{font-size:18px}.setup-progress{gap:28px}

.setup-art{position:relative;min-width:0}.magnet-detail{position:absolute;right:-12px;bottom:12px;width:132px;height:132px;background:var(--paper);border:1px solid var(--line);border-radius:16px;padding:6px}.setup-art .assembly-view{width:100%;object-fit:contain}
.visual-setup .setup-art{background:transparent;border:0;border-radius:0;padding:0;aspect-ratio:auto;height:390px;display:block}.visual-setup .setup-art .assembly-view{height:390px;margin:0;width:100%}

.visual-setup .setup-controls{justify-content:flex-end;gap:12px;padding:20px 0 12px;margin:0;border:0}.visual-setup .setup-controls .text-link,.visual-setup .setup-controls .primary{margin:0;min-width:0;min-height:42px;padding:11px 18px;border-radius:9px;font-size:14px;line-height:20px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:10px}.visual-setup .setup-controls .text-link{color:var(--muted);background:transparent}.visual-setup .setup-controls .text-link:hover{color:var(--ink);background:var(--line)}

.visual-setup .setup-progress{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:11px;background:transparent}.visual-setup .setup-progress a{padding:7px 16px;border:0;border-radius:7px;font-size:13px;line-height:20px;color:var(--muted);text-decoration:none}.visual-setup .setup-progress a[aria-current]{color:var(--ink);background:var(--line);border:0}.visual-setup .step-top{margin-bottom:20px}

html[data-theme] .visual-setup .setup-art{background:transparent;border:0;box-shadow:none}.visual-setup .setup-art{align-self:center}
/* Appearance changes colors, never control geometry. */
html{scrollbar-gutter:stable}html[data-theme=light]{color-scheme:light}
.experience-sidebar.is-expanded .theme-toggle,.experience-sidebar.is-expanded .theme-toggle:active{transform:none;transition:none;justify-content:flex-start;height:40px;min-height:40px;gap:12px}
.experience-sidebar .theme-toggle svg{flex:0 0 16px;display:block}.experience-sidebar.is-expanded .theme-toggle span{display:inline-block;min-width:42px;text-align:left}

/* Give the teaching illustration the majority of the desktop canvas. */
.visual-setup{max-width:1440px;padding:24px 32px}.visual-setup .setup-focus{grid-template-columns:minmax(0,62%) minmax(0,1fr);gap:40px;min-height:0;padding:16px 0}.visual-setup .setup-art,.visual-setup .setup-art .assembly-view{height:clamp(420px,62vh,680px)}.visual-setup .setup-focus h1{font-size:32px}.visual-setup .teaching-cue{max-width:320px;font-size:17px}
.visual-setup .setup-controls{padding-right:140px}

.visual-setup .setup-focus .setup-controls{justify-content:flex-start;padding:24px 0 0;gap:10px;flex-wrap:wrap}.visual-setup .setup-focus .setup-controls .primary{margin:0}
.day-overview>header{margin-bottom:44px}.day-overview>header h1{line-height:1.12;margin-top:14px}.day-overview .day-title{margin:0 0 22px;line-height:1.3}

/* Paired setup navigation uses the same quiet surface in both directions. */
html[data-theme] .visual-setup .setup-controls a{background:var(--line);color:var(--ink);border:1px solid var(--line);box-shadow:none;text-decoration:none}
html[data-theme] .visual-setup .setup-controls a:hover{background:var(--paper);border-color:var(--muted);color:var(--ink)}
.visual-setup .setup-controls a:focus-visible{outline:2px solid var(--ink);outline-offset:3px}

html[data-theme=dark] .power-off-text{color:#ffce55;font-weight:700}
html[data-theme=light] .power-off-text{color:#8a5b00;font-weight:700}

.run-actions{list-style:none;counter-reset:run;padding:0;margin:24px 0 0;display:grid;gap:16px}.run-actions li{counter-increment:run;display:grid;grid-template-columns:22px 1fr;gap:12px;font-size:17px;line-height:1.45;color:var(--ink)}.run-actions li::before{content:counter(run);color:var(--muted);font-size:13px;padding-top:3px}

.run-on-status{display:inline-flex;align-items:center;gap:5px;margin-left:6px;padding:2px 7px;border:1px solid #8fffd050;border-radius:5px;background:#8fffd00c;color:#8fffd0;font-size:11px;font-weight:600;vertical-align:middle}.run-on-status span{font-size:7px}html[data-theme=light] .run-on-status{color:#176b4c;border-color:#176b4c60;background:#176b4c0c}

.run-actions a { color: inherit; text-decoration: underline; text-underline-offset: 4px; }

.run-actions li > span { min-width: 0; }
.run-actions li a { display: inline; white-space: nowrap; }

/* Keep setup navigation anchored across steps. */
.visual-setup { padding-bottom: 110px; }
.visual-setup > .setup-controls { position: fixed; z-index: 20; left: 56px; right: 0; bottom: 0; display: flex; justify-content: space-between; gap: 16px; margin: 0; padding: 18px 32px; border-top: 1px solid var(--line); background: var(--paper); }
body.menu-expanded .visual-setup > .setup-controls { left: 208px; }
.visual-setup > .setup-controls .primary { margin-left: auto; }
@media(max-width:700px) { .visual-setup > .setup-controls { padding: 14px 20px; } }
@media print { .visual-setup > .setup-controls { display: none; } }

.visual-setup .setup-focus > div:last-child { min-height: 365px; display: flex; flex-direction: column; align-self: center; }
.visual-setup .setup-focus .setup-controls { position: static; margin-top: auto; padding: 20px 0 0; border-top: 1px solid var(--line); justify-content: flex-start; }
.visual-setup .setup-focus .setup-controls .primary { margin-left: 0; }
.run-on-status { box-shadow: none; text-shadow: none; }
/* Shared text-column height keeps headings and navigation aligned on every step. */
.visual-setup .setup-focus > div:last-child { min-height: 440px; }
.visual-setup .setup-focus { min-height: 480px; }
.visual-setup .setup-focus h1 { flex-shrink: 0; }
@media (max-width: 700px) {
  .visual-setup .setup-focus > div:last-child { min-height: 440px; }
}
.visual-setup .setup-focus .setup-controls { border-top: 0; }
.visual-setup .run-actions li { color: var(--muted); }
.visual-setup .run-actions li > span, .visual-setup .run-actions a { color: inherit; }

.power-off-badge { position: relative; isolation: isolate; display: inline-flex; align-items: center; gap: 7px; padding: 3px 10px; margin: 0 3px; border-radius: 8px; color: #ffe19a; font-size: .9em; line-height: 1.4; vertical-align: baseline; white-space: nowrap; }
.power-off-badge::before { content: ''; position: absolute; inset: 0; z-index: -1; border: 1px solid #ffce5599; border-radius: inherit; background: #302b1d; animation: off-badge-pulse 2.4s ease-in-out infinite; }
.power-off-badge svg { width: 18px; height: 18px; fill: none; stroke: #ffce55; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
@keyframes off-badge-pulse { 0%,100% { opacity: 1; } 50% { opacity: .58; } }
@media(prefers-reduced-motion:reduce) { .power-off-badge::before { animation: none; } }
.teaching-cue .power-off-badge { gap: 5px; padding: 2px 7px; margin: 0 0 0 2px; font-size: .85em; line-height: 1.2; vertical-align: .05em; border-radius: 6px; }
.teaching-cue .power-off-badge svg { width: 15px; height: 15px; }

/* One continuous teaching flow, with navigation that stays within the page. */
.teach-page { max-width: 1160px; margin: auto; padding: 36px 40px 80px; }
.teach-header { max-width: 730px; margin-bottom: 48px; }
.teach-header h1 { font-size: clamp(30px,3.4vw,44px); line-height: 1.12; letter-spacing: -.035em; margin: 12px 0 18px; }
.teach-header > p:last-child { color: var(--muted); font-size: 18px; line-height: 1.55; }
.teach-layout { display: grid; grid-template-columns: 175px minmax(0,1fr); gap: 48px; align-items: start; }
.teach-sections { position: sticky; top: 28px; display: grid; gap: 4px; }
.teach-sections button { display: flex; gap: 12px; text-align: left; border: 0; background: transparent; color: var(--muted); font: inherit; font-size: 13px; line-height: 1.5; padding: 10px 8px; border-radius: 7px; cursor: pointer; }
.teach-sections button span { font-size: 11px; opacity: .7; padding-top: 1px; }
.teach-sections button:hover, .teach-sections button[aria-current] { color: var(--ink); background: var(--line); }
.teach-sections button:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.teach-section { scroll-margin-top: 32px; padding: 0 0 42px; margin-bottom: 42px; border-bottom: 1px solid var(--line); }
.teach-section h2 { font-size: 28px; letter-spacing: -.025em; margin: 10px 0 12px; }
.teach-objective, .teach-section > p { color: var(--muted); line-height: 1.6; }
.teach-actions { padding-left: 20px; margin: 24px 0; }
.teach-actions li { color: var(--ink); font-size: 16px; line-height: 1.65; padding-left: 7px; margin-bottom: 15px; }
.teach-actions li::marker { color: var(--muted); font-size: 12px; }
.teach-checkpoint { border-left: 2px solid var(--line); padding: 2px 0 2px 18px; margin: 25px 0; }
.teach-checkpoint ul { padding-left: 17px; margin: 10px 0 0; color: var(--muted); font-size: 14px; line-height: 1.7; }
.teach-support { margin: 20px 0; font-size: 14px; line-height: 1.65; color: var(--muted); }
.teach-support summary { cursor: pointer; color: var(--ink); padding: 8px 0; }
.teach-support p { margin-top: 12px; }
.teach-resources { font-size: 13px; line-height: 1.6; margin: 20px 0; }
.teach-resources a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.teach-section .check-label { font-size: 13px; color: var(--muted); }
.teach-criteria { margin: 24px 0; }
.teach-criteria > div { display: flex; justify-content: space-between; gap: 20px; padding: 12px 0; border-bottom: 1px solid var(--line); font-size: 14px; }
.teach-end { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; }
@media(max-width:800px) { .teach-page { padding: 24px; } .teach-layout { grid-template-columns: 1fr; gap: 28px; } .teach-sections { position: sticky; top: 0; z-index: 5; display: flex; overflow-x: auto; background: var(--paper); padding: 8px 0; } .teach-sections button { white-space: nowrap; flex-shrink: 0; } .teach-section { scroll-margin-top: 80px; } }
@media print { .teach-sections,.teach-end,.teach-section .check-label { display: none; } .teach-layout { display: block; } .teach-support { display: block; } .teach-section { break-inside: avoid; } }

.teach-section[hidden] { display: none; }
@media print { .teach-section[hidden] { display: block; } }
.case-present { margin-top: 22px; }
.case-talkthrough { margin: 30px 0; }
.case-talkthrough > article { display: grid; grid-template-columns: 28px 1fr; gap: 16px; padding: 20px 0; border-bottom: 1px solid var(--line); }
.case-sequence-number { font-size: 11px; color: var(--muted); padding-top: 5px; }
.case-talkthrough h3 { font-size: 18px; font-weight: 600; margin: 0 0 8px; }
.case-question { color: var(--muted); font-size: 16px; line-height: 1.5; }
.case-talkthrough details { font-size: 13px; color: var(--muted); margin-top: 10px; line-height: 1.65; }
.case-talkthrough summary { cursor: pointer; }
.case-talkthrough details p { margin: 12px 0; }
body.presenting { overflow: hidden; }
body.presenting > :not(#case-presentation) { visibility: hidden; }
#case-presentation { position: fixed; inset: 0; z-index: 1000; background: #17181b; color: #f1f2f3; display: grid; grid-template-rows: auto minmax(0,1fr) auto; padding: 28px 5vw; overflow: auto; }
#case-presentation[hidden] { display: none; }
#case-presentation:fullscreen { box-sizing: border-box; width: 100%; height: 100%; }
.presentation-top,.presentation-controls { display: flex; justify-content: space-between; align-items: center; gap: 20px; font-size: 13px; color: #a8aeaf; }
.presentation-top button,.presentation-controls button { border: 1px solid #ffffff24; border-radius: 8px; padding: 10px 16px; font: inherit; background: #ffffff08; color: #dce0e2; cursor: pointer; }
.presentation-controls button:disabled { opacity: .25; cursor: default; }
.presentation-top button:focus-visible,.presentation-controls button:focus-visible { outline: 2px solid #c6ced3; outline-offset: 4px; }
.presentation-slide { width: 100%; max-width: 1400px; margin: auto; align-self: center; padding: 40px 0; }
.presentation-slide.has-visual { display: grid; grid-template-columns: 1.1fr 1fr; align-items: center; gap: 5vw; }
.presentation-slide h1 { font-size: clamp(38px,5vw,78px); line-height: 1.07; letter-spacing: -.045em; max-width: 18ch; margin: 20px 0 28px; }
.presentation-slide .eyebrow { font-size: 12px; color: #a8aeaf; }
.presentation-prompt { font-size: clamp(23px,2.5vw,36px); color: #c6ced3; line-height: 1.4; max-width: 30ch; }
.presentation-slide ul { list-style: none; padding: 0; margin: 36px 0 0; display: grid; gap: 14px; font-size: clamp(18px,1.7vw,25px); color: #a8aeaf; }
.presentation-slide figure { margin: 0; }
.presentation-slide img { width: 100%; height: min(53vh,500px); object-fit: contain; }
.presentation-slide figcaption { text-align: center; font-size: 12px; color: #8d959a; margin-top: 16px; }
@media(max-width:700px) { #case-presentation { padding: 18px 24px; } .presentation-slide.has-visual { grid-template-columns: 1fr; gap: 20px; } .presentation-slide img { height: 25vh; } .presentation-slide { padding: 24px 0; } .presentation-slide h1 { font-size: 36px; } }

.case-simple { padding-left: 22px; margin: 30px 0 12px; color: var(--muted); font-size: 18px; line-height: 2.2; }
.case-simple li { padding-left: 8px; }
#teach-case { min-height: 360px; border-bottom: 0; margin-bottom: 0; }

.patient-case-brief {border-left:2px solid var(--accent, #409cff);padding:8px 16px;margin:24px 0;}
.patient-case-brief p {margin:8px 0 0;}

/* Presenter view: one idea, one action, generous space. */
.teacher-minimal .teach-header {padding-bottom:12px;}
.teacher-minimal .teaching-stage {min-height:62vh;padding:42px 0 32px;border:0;}
.teacher-minimal .teaching-stage h2 {font-size:clamp(42px,4.5vw,72px);line-height:1.06;letter-spacing:-.045em;max-width:12ch;margin:26px 0;}
.stage-cue {font-size:clamp(21px,2vw,30px);line-height:1.5;color:var(--muted);margin:0 0 34px;}
.teacher-minimal .teach-support {margin-top:52px;max-width:660px;font-size:15px;}
.teacher-minimal .teach-support summary {font-size:14px;color:var(--muted);}
.teacher-minimal .teach-support p {font-size:15px;line-height:1.65;}
.clinical-references {margin-bottom:64px;}
.clinical-references > p {color:var(--muted);margin:16px 0 28px;}
.presentation-slide:not(.has-visual) {max-width:1120px;}
.presentation-slide:not(.has-visual) h1 {font-size:clamp(44px,6vw,92px);max-width:17ch;}
@media(max-width:700px){.teacher-minimal .teaching-stage{padding-top:20px;min-height:55vh}.teacher-minimal .teaching-stage h2{font-size:42px}.teacher-minimal .teach-support{margin-top:36px}}

/* The same teaching canvas, in preparation and full screen. */
.day-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px}
.day-heading h1{font-size:clamp(34px,4vw,58px);max-width:20ch}
.day-timeline>div{grid-template-columns:135px minmax(0,1fr);padding:13px 0;font-size:17px}
.day-timeline time{font-size:14px;font-variant-numeric:tabular-nums}
.day-timeline small{display:block;font-size:12px;color:var(--muted);margin-top:3px}
.day-begin{display:inline-block;margin-top:28px;color:var(--mint)}
.presenter-exit{display:none}
.opening-title{font-size:clamp(40px,5vw,72px);line-height:1.03;letter-spacing:-.05em;margin:10px 0 20px}
.opening-cue{font-size:20px;color:var(--muted);max-width:48ch;margin-bottom:32px}
.teacher-minimal .teaching-stage{padding-top:0;min-height:0}
.teacher-minimal .teaching-card{padding:20px 0 42px}
.teacher-minimal .teaching-card h2{max-width:17ch;font-size:clamp(38px,4vw,64px)}
.stage-points{list-style:none;padding:0;margin:24px 0;display:grid;gap:15px;font-size:21px;color:var(--muted)}
.teaching-card.with-visual{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center}
.teaching-card figure{margin:0}
.teaching-card img{width:100%;max-height:420px;object-fit:contain}
.teaching-card figcaption{font-size:11px;color:var(--muted);text-align:center}
.teaching-card .teach-support{grid-column:1/-1;margin-top:12px}
body.presenter-view>.website-header,body.presenter-view>.experience-sidebar,body.presenter-view>.hub-nav-wrap,body.presenter-view>.footer,body.presenter-view>#ask-learn{display:none!important}
body.presenter-view>#main{margin:0!important;padding:0 0 32px!important}
body.presenter-view .presenter-toggle{display:none}
body.presenter-view .presenter-exit{display:inline-flex}
body.presenter-view .teach-page,body.presenter-view .day-overview{max-width:1500px;margin:auto;padding:28px 5vw}
body.presenter-view .teach-layout{grid-template-columns:230px minmax(0,1fr);gap:48px}
body.presenter-view .teach-support,body.presenter-view .teach-end,body.presenter-view .day-begin{display:none}
@media(max-width:800px){.teaching-card.with-visual{grid-template-columns:1fr}.day-timeline>div{grid-template-columns:112px 1fr;font-size:15px}.day-timeline time{font-size:12px}body.presenter-view .teach-layout{grid-template-columns:1fr}.day-heading{flex-wrap:wrap}}
/* Quiet projected view. Controls remain available on hover or keyboard focus. */
body.presenter-view .teach-header>.eyebrow{font-size:10px;letter-spacing:.1em;color:var(--muted);opacity:.65}
body.presenter-view .presenter-exit{opacity:0;transition:opacity .15s;font-size:11px;padding:7px 12px}
body.presenter-view .day-heading:hover .presenter-exit,body.presenter-view .presenter-exit:focus-visible{opacity:1}
body.presenter-view .teach-header{margin-bottom:16px;padding-bottom:0}
body.presenter-view #teach-day .opening-title{font-size:clamp(34px,4vw,56px);margin:8px 0 12px}
body.presenter-view #teach-day .opening-cue{font-size:17px;margin-bottom:18px}
body.presenter-view .day-timeline>div{padding:9px 0;font-size:16px}
body.presenter-view .day-timeline small{font-size:11px}
body.presenter-view #teach-day>.eyebrow{font-size:10px;margin-bottom:12px}
.presenter-toggle{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:12px;color:var(--muted);background:transparent;flex-shrink:0}
.presenter-toggle:hover{color:var(--ink);background:var(--white)}
.teacher-minimal .teach-header{width:100%}
#presenter-dock{display:none}
body.presenter-view #presenter-dock{display:flex;position:fixed;bottom:0;left:0;right:0;height:86px;z-index:1000;align-items:flex-end;justify-content:center;padding:0 20px 16px}
#presenter-dock>div{display:flex;gap:8px;padding:6px;border:1px solid #ffffff20;border-radius:14px;background:#222428ee;opacity:0;transform:translateY(12px);transition:opacity .16s,transform .16s;pointer-events:none}
#presenter-dock:hover>div,#presenter-dock:focus-within>div{opacity:1;transform:none;pointer-events:auto}
#presenter-dock button{border:0;border-radius:8px;padding:9px 16px;background:transparent;color:#e6e8e9;font-size:13px}
#presenter-dock button:hover{background:#ffffff12}
#presenter-dock button:disabled{opacity:.25}
body.presenter-view .teacher-minimal .teaching-card:not(.presenter-current),body.presenter-view #teach-day:not(.presenter-current){display:none}
body.presenter-view .teacher-minimal .teaching-stage{padding-bottom:65px}
@media(prefers-reduced-motion:reduce){#presenter-dock>div{transition:none}}
/* Project the content; retain the section guide in preparation only. */
body.presenter-view .teach-sections{display:none!important}
body.presenter-view .teach-layout{display:block;max-width:none;width:100%}
body.presenter-view .teach-sequence{width:100%;min-width:0}
body.presenter-view .teach-page,body.presenter-view .day-overview{max-width:none;width:100%;padding:24px 6vw}
body.presenter-view .teaching-card{min-height:calc(100svh - 150px);display:flex;flex-direction:column;justify-content:center;max-width:1400px;margin:auto}
body.presenter-view .teaching-card.with-visual{display:grid;grid-template-columns:1.1fr 1fr;gap:5vw;align-content:center}
body.presenter-view .teaching-card h2{font-size:clamp(48px,5.5vw,90px);max-width:19ch}
body.presenter-view .stage-cue{font-size:clamp(24px,2.5vw,40px);max-width:42ch}
body.presenter-view .stage-points{font-size:clamp(20px,2vw,32px);gap:20px}
body.presenter-view .teaching-card img{max-height:65svh}
body.presenter-view #teach-day{display:grid;grid-template-columns:.9fr 1.1fr;column-gap:7vw;align-content:center;min-height:calc(100svh - 120px)}
body.presenter-view #teach-day>.eyebrow{grid-column:1;align-self:end}
body.presenter-view #teach-day .opening-title{grid-column:1;font-size:clamp(46px,6vw,96px);align-self:center}
body.presenter-view #teach-day .opening-cue{grid-column:1;font-size:clamp(20px,2vw,30px);align-self:start}
body.presenter-view #teach-day .day-timeline{grid-column:2;grid-row:1/5;align-self:center;width:100%}
body.presenter-view #teach-day .day-timeline>div{padding:12px 0;font-size:clamp(15px,1.4vw,22px);grid-template-columns:130px 1fr}
body.presenter-view #teach-day .day-timeline time{font-size:clamp(12px,1.1vw,17px)}
body.presenter-view #teach-day .day-timeline small{font-size:clamp(11px,.9vw,14px)}
@media(max-width:800px){body.presenter-view #teach-day{display:block}body.presenter-view .teaching-card.with-visual{grid-template-columns:1fr}body.presenter-view .teaching-card h2{font-size:44px}body.presenter-view #teach-day .opening-title{font-size:48px}}
/* One 16:9 slide canvas, scaled identically in Teach and presentation. */
.teacher-minimal .teach-layout{display:block!important}
.teacher-minimal .teach-sections{display:flex;gap:6px;position:static;margin-bottom:20px;flex-wrap:wrap}
.teacher-minimal .teach-sections button{font-size:12px;padding:9px 12px}
.teacher-minimal .teach-sequence{position:relative;width:100%;overflow:hidden;background:#17181b;border:1px solid var(--line);border-radius:12px}
.teacher-minimal .slide-canvas{position:absolute;top:0;left:50%;width:1440px;height:810px;transform:translateX(-50%) scale(var(--slide-scale, .6));transform-origin:top center;padding:64px 72px;color:#f1f2f3;background:#17181b}
.teacher-minimal .slide-canvas:before{content:'MOONSHOT';position:absolute;left:72px;top:25px;font-size:10px;letter-spacing:2px;color:#899093}
.teacher-minimal .slide-canvas .teaching-card:not(.presenter-current),.teacher-minimal .slide-canvas #teach-day:not(.presenter-current){display:none!important}
.teacher-minimal .slide-canvas .teaching-card{min-height:682px!important;max-width:none;padding:0!important;margin:0;display:flex;flex-direction:column;justify-content:center}
.teacher-minimal .slide-canvas .teaching-card.with-visual{display:grid;grid-template-columns:1.1fr 1fr;gap:60px;align-content:center;align-items:center}
.teacher-minimal .slide-canvas h2{font-size:72px!important;line-height:1.06;max-width:19ch;margin:20px 0 28px}
.teacher-minimal .slide-canvas .stage-cue{font-size:30px;line-height:1.4;margin-bottom:24px}
.teacher-minimal .slide-canvas .stage-points{font-size:25px;gap:18px}
.teacher-minimal .slide-canvas img{max-height:560px}
.teacher-minimal .slide-canvas .teach-support{display:none}
.teacher-minimal .slide-canvas #teach-day{display:grid;grid-template-columns:.9fr 1.1fr;column-gap:75px;align-content:center;min-height:682px!important;padding:0}
.teacher-minimal .slide-canvas #teach-day>.eyebrow{grid-column:1;align-self:end;font-size:12px;margin-bottom:16px}
.teacher-minimal .slide-canvas #teach-day .opening-title{grid-column:1;font-size:82px!important;align-self:center;margin:10px 0 24px}
.teacher-minimal .slide-canvas #teach-day .opening-cue{grid-column:1;font-size:26px;align-self:start;margin:0}
.teacher-minimal .slide-canvas #teach-day .day-timeline{grid-column:2;grid-row:1/5;align-self:center}
.teacher-minimal .slide-canvas #teach-day .day-timeline>div{grid-template-columns:125px 1fr;padding:13px 0;font-size:21px}
.teacher-minimal .slide-canvas #teach-day .day-timeline time{font-size:16px}
.teacher-minimal .slide-canvas #teach-day .day-timeline small{font-size:13px}
.teacher-minimal .slide-canvas .teach-criteria{width:100%;max-width:850px}
.teacher-minimal .slide-canvas .teach-criteria>div{font-size:20px}
.slide-preview-controls{display:flex;align-items:center;justify-content:center;gap:24px;margin-top:18px;font-size:12px;color:var(--muted)}
body.presenter-view .slide-preview-controls{display:none}
body.presenter-view .teacher-minimal .teach-sequence{border:0;border-radius:0}
body.presenter-view .teacher-minimal{padding:12px 2vw!important}
body.presenter-view .teacher-minimal .teach-header{margin-bottom:0;height:48px}
.teacher-minimal .teach-header{align-items:center;margin-bottom:14px}
.teacher-minimal .teach-header>.eyebrow{margin:0;font-size:11px;color:var(--muted)}
.teacher-minimal .teach-sections{padding:0 0 14px;margin:0;gap:8px;background:transparent}
.teacher-minimal .teach-sections button{border-radius:8px;display:flex;gap:8px;align-items:center}
.teacher-minimal .teach-sections button[aria-current]{background:#ffffff0d;color:var(--ink)}
.slide-preview-controls{gap:18px;margin-top:14px}
.slide-preview-controls .secondary{padding:8px 16px;min-height:36px;font-size:12px;background:transparent}
#slide-position{min-width:48px;text-align:center;font-variant-numeric:tabular-nums}
/* Event-led opening. No Moonshot branding on the projected slides. */
.teacher-minimal .slide-canvas:before{content:'NEXTGEN INNOVATION CHALLENGE';font-size:9px;letter-spacing:1.5px;color:#737c82}
.teacher-minimal .slide-canvas .intro-card h2{white-space:normal}
.teacher-minimal .slide-canvas .challenge-title .conference-mark{width:650px;height:auto;max-height:none;object-fit:contain;margin-bottom:62px}
.teacher-minimal .slide-canvas .challenge-title h2{font-size:88px!important;margin-top:12px}
.teacher-minimal .slide-canvas .challenge-title .eyebrow{font-size:15px;color:#8fffd0}
.teacher-minimal .slide-canvas .hosts-slide h2{font-size:54px!important;max-width:none;margin:12px 0 40px}
.host-pair{display:grid;grid-template-columns:1fr 1fr;gap:60px;width:100%}
.host-profile{display:flex;gap:25px;align-items:center}
.teacher-minimal .slide-canvas .host-profile img{width:190px;height:245px;object-fit:cover;border-radius:10px;object-position:50% 22%}
.host-profile h3{font-size:32px;margin:0 0 13px}
.host-profile p{font-size:20px;color:#d3d7d9;line-height:1.4;margin:0 0 12px}
.host-profile span{font-size:16px;line-height:1.5;color:#939ca3;display:block;max-width:26ch}
.vision-roles{display:flex;gap:14px;margin:20px 0 35px}
.vision-roles span{padding:11px 18px;border:1px solid #ffffff25;border-radius:30px;font-size:19px;color:#8fffd0}
.vision-thanks{font-size:21px;color:#9da5aa}
.teacher-minimal .slide-canvas .intro-card .eyebrow{color:#9da5aa}
.hosts-purpose{font-size:24px;color:#9da5aa;margin-top:44px}
.vision-history{font-size:17px;color:#737e85;margin:0 0 15px}
.preview-notes{margin:20px auto 0;max-width:880px;font-size:13px;color:var(--muted);line-height:1.6}
.preview-notes summary{cursor:pointer;padding:8px 0}
.preview-notes p{margin-top:10px}
body.presenter-view .preview-notes{display:none}
/* Official conference lockup, consistent across the slide canvas. */
.teacher-minimal .slide-canvas:before{content:none}
.slide-event-brand{position:absolute;top:23px;left:72px;right:72px;height:50px;display:flex;align-items:center;border-bottom:1px solid #ffffff18;padding-bottom:14px}
.teacher-minimal .slide-canvas .slide-event-brand img{width:270px;height:auto;max-height:47px;object-fit:contain}
.teacher-minimal .slide-canvas h2{font-weight:700;letter-spacing:-.045em}
.teacher-minimal .slide-canvas .hosts-slide h2{font-size:72px!important;margin-bottom:46px}
.teacher-minimal .slide-canvas .intro-card .eyebrow{font-size:13px;font-weight:600;letter-spacing:.1em}
.host-profile h3{font-weight:700;font-size:34px}
.host-profile p{font-size:23px;font-weight:500}
.host-profile span{font-size:19px;color:#b3bbc0}
.teacher-minimal .slide-canvas .stage-points{color:#d2d7da;font-size:28px}
.teacher-minimal .slide-canvas .challenge-title h2{font-size:96px!important}
.teacher-minimal .teach-header{justify-content:flex-end;gap:12px}
.teacher-minimal .teach-header>.eyebrow{margin-right:auto}
.speaker-window-button{font-size:12px;padding:9px 14px}
body.presenter-view .speaker-window-button{display:none}
html:fullscreen #presenter-dock [data-action="present-case"]{display:none}
.slide-event-brand{gap:28px}
.slide-event-brand>span{border-left:1px solid #ffffff30;padding-left:28px;color:#b3bbc0;font-size:14px;font-weight:600;letter-spacing:.03em;line-height:1.3}
body.presenter-view .teacher-minimal .teach-header>.eyebrow{visibility:hidden}
/* Consistent title and copy positions across the opening sequence. */
.teacher-minimal .slide-canvas .intro-card{position:relative;display:block!important;min-height:682px!important;padding-top:68px!important}
.teacher-minimal .slide-canvas .intro-card>.eyebrow{position:absolute;top:68px;left:0;margin:0;font-size:13px;line-height:20px;letter-spacing:.1em}
.teacher-minimal .slide-canvas .intro-card>h2{position:absolute;top:116px;left:0;right:0;margin:0!important;font-size:78px!important;line-height:1.08;max-width:none;letter-spacing:-.045em}
.teacher-minimal .slide-canvas .intro-card>.stage-cue{position:absolute;top:326px;left:0;right:0;margin:0;font-size:30px;line-height:1.4;max-width:none}
.teacher-minimal .slide-canvas .intro-card>.stage-points{position:absolute;top:402px;left:0;right:0;margin:0;gap:22px}
.teacher-minimal .slide-canvas .intro-card>.vision-roles{position:absolute;top:418px;left:0;margin:0}
.teacher-minimal .slide-canvas .hosts-slide>.host-pair{position:absolute;top:285px;left:0;right:0}
.teacher-minimal .slide-canvas .challenge-title>h2{font-size:88px!important}
.day-timeline small,.teacher-minimal .slide-canvas #teach-day .day-timeline small{color:var(--mint,#8fffd0);font-weight:500}
.teacher-minimal .slide-canvas #teach-day .day-timeline small{font-size:16px;margin-top:5px}
.teacher-minimal .slide-canvas .intro-card>.mission-lines{top:270px;display:grid;gap:18px;font-size:42px;line-height:1.25;color:#e0e5e7;font-weight:500}
.mission-lines span{display:block}
.presenter-current .mission-lines span{animation:mission-line-in .45s ease-out both;animation-delay:calc(var(--line-index)*.18s)}
@keyframes mission-line-in{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.presenter-current .mission-lines span{animation:none}}
/* Match the clinical handoff to the opening title grid. */
.teacher-minimal .slide-canvas .patient-slide{position:relative;display:block!important;min-height:682px!important;padding:0!important}
.teacher-minimal .slide-canvas .patient-slide>div{position:static}
.teacher-minimal .slide-canvas .patient-slide .eyebrow{position:absolute;top:68px;left:0;margin:0;font-size:13px;line-height:20px;letter-spacing:.1em}
.teacher-minimal .slide-canvas .patient-slide h2{position:absolute;top:116px;left:0;right:0;margin:0!important;font-size:78px!important;line-height:1.08;max-width:none}
.teacher-minimal .slide-canvas .patient-slide .stage-cue{position:absolute;top:326px;left:0;right:0;margin:0;font-size:30px;line-height:1.4;max-width:none}
/* Shared title grid for every presentation slide. */
.teacher-minimal .slide-canvas .teaching-card{position:relative;display:block!important;min-height:682px!important;padding:0!important}
.teacher-minimal .slide-canvas .teaching-card .eyebrow{position:absolute;top:68px;left:0;margin:0;font-size:13px;line-height:20px}
.teacher-minimal .slide-canvas .teaching-card h2{position:absolute;top:116px;left:0;right:0;margin:0!important;font-size:78px!important;line-height:1.08;max-width:22ch}
.teacher-minimal .slide-canvas .teaching-card .stage-cue{position:absolute;top:326px;left:0;right:0;margin:0;font-size:30px;line-height:1.4;max-width:none}
.teacher-minimal .slide-canvas .teaching-card .stage-points{position:absolute;top:412px;left:0;right:0;margin:0;font-size:26px;gap:18px}
.teacher-minimal .slide-canvas .teaching-card.with-visual>div{width:52%}
.teacher-minimal .slide-canvas .teaching-card.with-visual h2,.teacher-minimal .slide-canvas .teaching-card.with-visual .stage-cue,.teacher-minimal .slide-canvas .teaching-card.with-visual .stage-points{right:48%}
.teacher-minimal .slide-canvas .teaching-card.with-visual figure{position:absolute;left:57%;right:0;top:112px;margin:0}
.teacher-minimal .slide-canvas .teaching-card.with-visual img{height:470px;max-height:470px}
.teacher-minimal .slide-canvas .teach-criteria{position:absolute;top:405px;left:0;margin:0;max-width:900px}
.teacher-minimal .slide-canvas .teach-criteria+.stage-cue{top:auto;bottom:0;font-size:20px}
.teacher-minimal .slide-canvas #teach-day{position:relative;display:block!important}
.teacher-minimal .slide-canvas #teach-day .opening-title{position:absolute;top:116px;left:0;margin:0!important;font-size:78px!important;line-height:1.08}
.teacher-minimal .slide-canvas #teach-day .opening-cue{position:absolute;top:326px;left:0;width:43%;font-size:28px}
.teacher-minimal .slide-canvas #teach-day .day-timeline{position:absolute;left:49%;right:0;top:40px}
.teacher-minimal .slide-canvas.slide-light{background:#f7f8fa;color:#17252f}
.teacher-minimal .slide-canvas.slide-light .slide-event-brand{border-color:#17252f25}
.teacher-minimal .slide-canvas.slide-light .slide-event-brand img{filter:brightness(0);opacity:.85}
.teacher-minimal .slide-canvas.slide-light .eyebrow{color:#596a76}
.teacher-minimal .slide-canvas.slide-light h2{color:#17252f}
.teacher-minimal .slide-canvas.slide-light .stage-cue,.teacher-minimal .slide-canvas.slide-light .stage-points{color:#405565}
.teacher-minimal .slide-canvas.slide-light .teach-criteria>div{color:#17252f;border-color:#17252f25}
.teacher-minimal .slide-canvas.slide-light figcaption{color:#596a76}
/* Keep the clinical prompt with its title, on the same left edge. */
.teacher-minimal .slide-canvas .patient-slide .stage-cue{top:238px;left:0;right:auto;width:100%;padding:0;margin:0!important;text-align:left}
.teacher-minimal .slide-canvas .work-block-slide .work-blocks{position:absolute!important;top:275px;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.work-blocks>section{border-top:2px solid #8fffd0;padding-top:20px}
.work-blocks h3{font-size:36px;font-weight:700;margin-bottom:14px}
.work-time{font-size:19px;color:#8fffd0;font-weight:600;line-height:1.5}
.work-duration{font-size:15px;color:#9fa8af;margin:4px 0 20px}
.work-description{font-size:23px;line-height:1.45;color:#d5dadd}
.work-deadline{font-size:17px;line-height:1.5;color:#8fffd0;margin-top:22px;font-weight:600}
.work-packet{position:absolute;left:0;bottom:35px;font-size:21px;color:#b6bec3}
.work-packet strong{color:#f1f2f3;font-weight:600}
.work-pitch{position:absolute;left:0;bottom:0;font-size:18px;color:#9fa8af}
.student-pace{border-left:2px solid var(--mint);padding:16px 20px;margin:24px 0 30px;background:#8fffd005}
.student-pace>.eyebrow{font-size:11px;margin-bottom:10px;color:var(--mint)}
.student-pace strong{font-size:18px;font-weight:600}
.student-pace p{font-size:14px;line-height:1.6;color:var(--muted);margin-top:10px}
.student-pace .pace-help{font-size:12px}
.teacher-minimal .slide-canvas #teach-plan .work-block-slide>.work-blocks{position:absolute!important}
.work-blocks h3{font-size:42px;margin-bottom:30px}
.work-description{font-size:29px;line-height:1.45;max-width:20ch}
.work-deadline{font-size:23px;margin-top:28px}
.work-packet{bottom:52px;color:#9fa8af;font-size:21px}
.work-pitch{bottom:0;display:flex;gap:44px;align-items:center;font-size:23px}
.work-pitch strong{color:#8fffd0;font-size:30px;font-weight:600}
/* Keep all five judging criteria clear of the awards footer. */
.teacher-minimal .slide-canvas .teach-criteria{top:385px}
.teacher-minimal .slide-canvas .teach-criteria>div{padding:8px 0;font-size:21px;line-height:1.3}
.teacher-minimal .slide-canvas .teach-criteria+.stage-cue{top:638px;bottom:auto;font-size:19px}
.work-pitch,.work-pitch strong{font-size:26px;font-weight:500;color:#8fffd0}
/* Equal team slots, shown as a clean proportional time bar. */
.teacher-minimal .slide-canvas .judging-slide>.pitch-timeline{position:absolute!important;top:338px;left:0;right:0;display:flex;gap:5px}
.pitch-part{flex:var(--segment);min-width:0;padding:17px 24px 20px;background:#8fffd016;border-top:4px solid #8fffd0}
.pitch-part-1{background:#8fffd025}.pitch-part-2{background:#8fffd00b}
.pitch-part>div{display:flex;align-items:baseline;gap:10px}
.pitch-part strong{font-size:54px;line-height:1;color:#8fffd0;font-weight:600;letter-spacing:-.04em}
.pitch-part>div>span{font-size:12px;color:#a9b3b9;letter-spacing:.1em}
.pitch-part h3{font-size:27px;margin:12px 0 6px}
.pitch-part p{font-size:17px;color:#a9b3b9;line-height:1.4}
.teacher-minimal .slide-canvas .judging-slide>.judging-weights{position:absolute!important;top:562px;left:0;right:0}
.judging-weights>p{font-size:14px;color:#8fffd0;margin-bottom:16px;font-weight:500}
.judging-weights>div{display:grid;grid-template-columns:repeat(5,1fr);gap:25px}
.judging-weights span{font-size:19px;line-height:1.4;color:#c4cbd0;border-top:1px solid #ffffff25;padding-top:13px}
.work-pitch{gap:30px;font-size:23px}
.work-pitch strong,.work-pitch>span{font-size:23px;font-weight:500;color:#8fffd0}
.student-pitch-timing{color:var(--mint);font-weight:500}
.teacher-minimal .slide-canvas .work-block-slide>.work-day-track{position:absolute!important;left:0;right:0;top:550px;display:grid;grid-template-columns:repeat(5,1fr);gap:22px;border-top:1px solid #8fffd04d;padding-top:18px}
.work-day-track>div{position:relative}
.work-day-track>div:before{content:'';position:absolute;top:-23px;left:0;width:8px;height:8px;background:#8fffd0;border-radius:50%}
.work-day-track time{display:block;font-size:25px;font-weight:600;color:#8fffd0;line-height:1.2;font-variant-numeric:tabular-nums}
.work-day-track span{display:block;font-size:18px;color:#c2cbd0;margin-top:8px}
.work-lunch-reminder{position:absolute;left:0;top:651px;font-size:19px;color:#8fffd0;font-weight:500}
.work-simple-footer{position:absolute;left:0;right:0;bottom:10px;display:flex;gap:48px;font-size:22px;color:#9fa8af}
.teacher-minimal .slide-canvas .work-block-slide>.work-blocks{top:285px}
.work-blocks>section{border:0;padding-top:0}
.work-blocks h3{margin-bottom:26px}
.work-deadline{margin-top:30px}
/* Notes belong to the slide workspace, not a detached centered column. */
.teacher-minimal .preview-notes{width:100%;max-width:none;margin:16px 0 0;padding:0 22px;border:1px solid var(--line);border-radius:10px;background:#ffffff03}
.teacher-minimal .preview-notes summary{padding:15px 0;color:var(--ink);font-size:13px;font-weight:500}
.teacher-minimal .preview-notes p{margin:0;padding:2px 0 20px;max-width:95ch;font-size:14px;line-height:1.7;color:var(--muted)}
.teacher-minimal .slide-preview-controls{margin-top:12px;margin-bottom:0}
/* One connected slide workspace with notes in its control bar. */
.teacher-minimal .teach-sequence{border-radius:12px 12px 0 0;border-bottom:0}
.slide-tools{border:1px solid var(--line);border-radius:0 0 12px 12px;background:#ffffff02}
.teacher-minimal .slide-tools .slide-preview-controls{position:relative;min-height:62px;margin:0;padding:12px 190px;gap:18px}
.notes-toggle{position:absolute;left:20px;top:50%;transform:translateY(-50%);display:inline-flex;gap:9px;align-items:center;border:0;background:transparent;color:var(--muted);padding:8px 0;font-size:12px}
.notes-toggle:hover,.notes-toggle[aria-expanded=true]{color:var(--ink)}
.teacher-minimal .slide-tools .preview-notes{border:0;border-top:1px solid var(--line);border-radius:0;background:transparent;margin:0;padding:0 22px}
.teacher-minimal .slide-tools .preview-notes>summary{display:none}
.teacher-minimal .slide-tools .preview-notes p{padding:20px 0}
body.presenter-view .slide-tools{display:none}
@media(max-width:650px){.teacher-minimal .slide-tools .slide-preview-controls{padding:12px 10px 12px 118px;gap:10px}.notes-toggle{left:12px;font-size:11px;max-width:98px}.notes-toggle svg{display:none}.slide-tools .secondary{padding:7px 9px}}
/* Preserve the notes button position and suppress browser scroll anchoring. */
.notes-toggle:active{transform:translateY(-50%)}
.teacher-minimal,.slide-tools,.preview-notes{overflow-anchor:none}
html{scrollbar-gutter:stable}
/* A single progression replaces the loose schedule footer. */
.teacher-minimal .slide-canvas .work-block-slide>.work-progress{position:absolute!important;top:562px;left:0;right:0;display:grid;grid-template-columns:repeat(5,1fr);gap:0}
.work-progress:before{content:'';position:absolute;top:5px;left:0;right:0;height:2px;background:linear-gradient(90deg,#8fffd0,#8fffd055)}
.work-progress>div{position:relative;padding-top:27px}
.work-progress i{position:absolute;top:0;left:0;width:12px;height:12px;border:2px solid #8fffd0;border-radius:50%;background:#17181b}
.work-progress>div:nth-child(-n+3) i{background:#8fffd0}
.work-progress time{display:block;font-size:29px;line-height:1.2;font-weight:600;color:#8fffd0;font-variant-numeric:tabular-nums}
.work-progress span{display:block;font-size:18px;color:#b6c0c6;margin-top:9px}
.build-lunch{display:inline-block;margin-top:24px;padding:7px 12px;border-radius:7px;background:#ffffff09;color:#a7b2b9;font-size:17px;line-height:1.4}
/* Phase checkpoints share the exact three-column grid above. */
.teacher-minimal .slide-canvas .work-block-slide>.work-progress{grid-template-columns:repeat(3,1fr);gap:36px;top:535px}
.work-progress i,.work-progress>div:nth-child(-n+3) i{background:#17181b}
.work-progress:before{right:0}
.work-after{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;justify-content:flex-end;gap:22px;font-size:19px;line-height:1.4;color:#a7b2b9}
.work-after>span[aria-hidden]{color:#60706d}
/* Chronological cards: time, activity, one task. Read left to right by row. */
.teacher-minimal .slide-canvas .schedule-card-slide h2{font-size:68px!important;top:92px}
.teacher-minimal .slide-canvas .schedule-card-slide>.work-schedule-cards{position:absolute!important;top:220px;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:205px 205px;gap:18px}
.day-task-card{padding:22px;border:1px solid #ffffff17;border-radius:14px;background:#ffffff04}
.task-card-time{font-size:18px;font-weight:600;color:#8fffd0;font-variant-numeric:tabular-nums;margin:0 0 16px}
.day-task-card h3{font-size:28px;font-weight:600;line-height:1.13;letter-spacing:-.035em;margin:0 0 16px}
.task-card-copy{font-size:19px;line-height:1.4;color:#b8c1c7;margin:0;max-width:24ch}
.day-task-card.break{background:#8fffd00b;border-color:#8fffd032}
.day-task-card.break .task-card-copy{color:#8fffd0}
.day-task-card.finish{background:#ffffff02}
.teacher-minimal .slide-canvas .schedule-card-slide>.work-schedule-cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.team-patient-picker{display:flex;align-items:center;gap:16px;margin-top:24px;flex-wrap:wrap;font-size:13px}
.team-patient-picker>span:first-child{font-weight:600}
.team-patient-picker>div{display:flex;gap:6px}
.team-patient-picker button{width:36px;height:36px;border:1px solid var(--line);border-radius:8px;background:transparent;color:var(--ink)}
.team-patient-picker button[aria-pressed=true]{border-color:var(--mint);color:var(--mint);background:#8fffd00b}
.patient-picker-cue,.patient-empty,.reference-caption{color:var(--muted);font-size:12px}
.patient-reference{margin:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:14px 0}
.patient-reference summary{cursor:pointer;font-size:14px;font-weight:500}
.patient-reference .reference-caption{margin:10px 0 16px}
.patient-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.patient-image-grid figure{margin:0}
.patient-image-grid img{display:block;width:100%;height:155px;object-fit:contain;background:#17181b;border:1px solid var(--line);border-radius:8px}
.patient-image-grid figcaption{font-size:11px;color:var(--muted);margin-top:7px}
@media(max-width:650px){.patient-image-grid{grid-template-columns:1fr}.patient-image-grid img{height:220px}}
.hero-title-qualifier{font-size:.68em;letter-spacing:-.045em;white-space:nowrap}
body[data-page=overview]>.footer{display:none}
.hero .intro{margin:18px 0 22px}
.hero-copy>.primary{margin-top:0}
.hero-copy>.primary{min-height:42px;width:auto;min-width:0;padding:10px 18px;gap:12px;border-radius:9px;font-size:14px;line-height:20px;vertical-align:top}
.hero-copy>.primary>span{font-size:18px;line-height:20px}
.hero-copy>.primary{gap:14px;padding:11px 20px;min-height:46px}
.hero-copy>.primary .start-arrow{display:block;flex:0 0 22px;width:22px;height:22px}
.teach-sections a{display:flex;align-items:center;gap:14px;padding:14px 16px;border-radius:9px;font-size:15px;color:var(--muted)}
.teach-sections a>span{font-size:12px;color:var(--muted)}
.teach-sections a[aria-current=page]{background:#ffffff0d;color:var(--ink)}
.teach-sections a:hover{background:#ffffff06;color:var(--ink)}
@media(max-width:800px){.teach-sections a{white-space:nowrap;flex-shrink:0}}
.student-setup .teach-actions>li{margin-bottom:26px}
.student-setup .teach-actions>li>p{font-size:14px;color:var(--muted);line-height:1.6;margin-top:9px}
.student-setup .teach-actions .secondary{font-size:12px;min-height:36px;padding:6px 12px;margin-left:10px}
.setup-ready{display:flex;align-items:center;gap:18px;font-size:15px;color:var(--mint);padding:18px 0;margin:18px 0;border-top:1px solid var(--line)}
.robot-help{margin:22px 0;border-bottom:1px solid var(--line);padding:14px 0;font-size:14px;color:var(--muted)}
.robot-help summary{cursor:pointer;color:var(--ink);font-weight:500}
.robot-help p{margin-top:12px;line-height:1.6}
.robot-help img{display:block;width:100%;max-width:950px;margin-top:20px}
.robot-help .teach-actions{font-size:14px;margin-top:16px}
.power-on-text{color:var(--mint)}
.student-run-diagram{margin:24px 0 30px;width:100%}
.student-run-diagram img{display:block;width:100%;height:auto;max-height:480px;object-fit:contain}

.student-setup{border-bottom:0}
.student-setup>.teach-end{border-top:1px solid var(--line);padding-top:32px;margin-top:42px}
.resource-slides{display:block;width:100%;height:auto;aspect-ratio:1440/930;border:1px solid var(--line);border-radius:12px;margin:20px 0 40px;background:var(--paper)}
body.slides-embedded{padding:0!important;margin:0!important;overflow:hidden}
body.slides-embedded> :not(#main){display:none!important}
body.slides-embedded>#main{margin:0!important;padding:0!important;max-width:none!important}
.slides-embedded .teacher-minimal{padding:0!important;margin:0!important}
.slides-embedded .teacher-minimal>.teach-header,.slides-embedded .teacher-minimal .teach-sections{display:none!important}
.slides-embedded .teacher-minimal .teach-layout{display:block!important;margin:0!important;padding:0!important}
.slides-embedded .slide-tools{margin:0!important}

.pace-checklist{display:grid;gap:20px;margin:24px 0}.student-pace .pace-checklist .check-label{display:grid;grid-template-columns:22px minmax(0,1fr);align-items:start;gap:14px;margin:0;padding:0;font-size:16px;line-height:26px}.student-pace .pace-checklist input{width:22px;height:22px;min-width:22px;margin:2px 0 0;accent-color:var(--blue)}.pace-checklist .check-label span{margin:0;line-height:26px}

.reference-resolution{display:block;font-size:12px;margin-top:5px;color:var(--muted)}

.patient-image-grid .reference-insight{font-size:14px;line-height:1.6;margin:12px 0 0}.reference-insight strong{display:block;color:var(--ink)}.patient-insight{margin:24px 0 16px}.patient-insight p{margin:6px 0}.reference-question{font-size:16px;line-height:1.6;margin:20px 0}

.patient-viewer{display:block;width:100%;height:720px;border:1px solid var(--line);border-radius:12px;margin:22px 0 0;background:#15191e}@media(max-width:800px){.patient-viewer{height:850px}}

.patient-viewer{height:1030px}@media(max-width:800px){.patient-viewer{height:1030px}}

.build-guide{margin-top:30px}.build-guide-step{border-top:1px solid var(--line);padding:22px 0}.build-guide-step:last-child{border-bottom:0}.build-guide-step summary{font-size:20px;font-weight:600;cursor:pointer}.build-guide-step .teach-actions{font-size:16px;line-height:1.65;margin:24px 0}.build-guide-note{font-size:14px;color:var(--muted);margin:18px 0}.build-config{padding:20px;background:var(--paper);border:1px solid var(--line);border-radius:8px;overflow-x:auto;font-size:14px;line-height:1.7}

.build-video{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:10px;margin-top:24px}.build-guide-step .teach-actions:empty{display:none}

.build-guide-part{margin:26px 0}.build-guide-part h3{font-size:18px;font-weight:600}.build-guide-part .teach-actions{margin:16px 0}

.worksheet-image-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}.worksheet-image-grid figure{margin:0}.worksheet-image-grid img{display:block;width:100%;max-height:390px;object-fit:contain;background:#fff;border-radius:8px}.worksheet-image-grid figcaption{font-size:13px;color:var(--muted);margin-top:10px;line-height:1.5}@media(max-width:700px){.worksheet-image-grid{grid-template-columns:1fr}}

.worksheet-step-image{margin:18px 0 30px;max-width:680px}.worksheet-step-image img{display:block;width:auto;max-width:100%;max-height:430px;object-fit:contain;border-radius:8px;background:#fff}.build-guide-part .teach-actions li:has(.worksheet-step-image){margin-bottom:28px}

.build-warning{color:#ff7979;font-size:17px;line-height:1.5;border-left:3px solid #ff7979;padding:14px 18px;background:rgba(255,70,70,.07);margin:20px 0}.build-warning strong{font-weight:700}

.inline-python{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;color:#a9d7ff;background:rgba(120,170,220,.09);padding:2px 6px;border-radius:4px;white-space:nowrap}.build-config code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.py-string{color:#b8d990}.py-keyword{color:#c5a5ed}.py-setting{color:#9cd5ff}

.teach-section:has(>.patient-selection-empty){border-bottom:0}.patient-selection-empty{border-top:1px solid var(--line);padding-top:28px;margin-top:30px}.patient-selection-empty .patient-empty{color:#ffd166;font-size:16px;line-height:1.5;margin:0;padding:14px 18px;border-left:3px solid #ffd166;background:rgba(255,209,102,.06)}

.vscode-run-menu{position:relative;width:100%;max-width:560px;aspect-ratio:560/340;overflow:hidden;border-radius:8px}.worksheet-step-image .vscode-run-menu img{position:absolute;left:-114.3%;top:0;width:271.8%;max-width:none;height:auto;max-height:none;border-radius:0}

.forge-environment-image{margin:22px 0 0;max-width:1100px}.forge-environment-image img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--line)}

.pitch-staff-note{margin:32px 0!important;line-height:1.7;padding:8px 0}.teach-section .pitch-staff-note+*{margin-top:24px}

.student-judging .judging-slide>.eyebrow{display:none}.student-judging .judging-slide{padding:0;border:0;background:none}.student-judging .judging-slide>h2{font-size:28px;line-height:1.25;letter-spacing:-.025em;margin:10px 0 28px}.student-judging .pitch-timeline{display:flex;gap:5px;margin:0 0 36px}.student-judging .judging-weights{margin-top:32px}.student-judging .judging-weights>div{gap:18px}.student-judging .judging-weights span{font-size:16px}@media(max-width:700px){.student-judging .pitch-part{padding:16px 12px}.student-judging .pitch-part h3{font-size:20px}.student-judging .pitch-part p{font-size:13px}.student-judging .judging-weights>div{grid-template-columns:1fr}}
.team-patient-picker .patient-picker-cue{color:#ffd166;font-weight:600}
.student-judging>.eyebrow{color:var(--ink)}

.instructor-gate{max-width:480px;margin:70px auto;padding:24px}.instructor-gate h1{font-size:32px;margin:12px 0 30px}.instructor-gate form{display:grid;gap:14px}.instructor-gate input{width:100%;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font:inherit}.instructor-gate .primary{justify-self:start}.instructor-gate #instructor-passcode-error{color:#ff7979;min-height:20px;margin:0}

#ask-learn,#question-dialog{display:none!important}

/* Keep lesson content full-width on phones. */
@media(max-width:700px){
.experience-sidebar,.experience-sidebar.is-expanded{position:relative;top:auto;bottom:auto;width:100%;min-height:0;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line);gap:8px}
body>#main,body.menu-expanded>#main,body>.footer,body.menu-expanded>.footer{margin-left:0;min-width:0}
.experience-sidebar #sidebar-navigation nav{display:flex!important;gap:4px;overflow-x:auto}
.experience-sidebar .role-tabs{display:flex!important;gap:8px}
.experience-sidebar.is-expanded #sidebar-navigation a,.experience-sidebar.is-expanded .role-tabs button{width:auto;flex-shrink:0;padding:8px 12px;height:auto;min-height:40px}
#sidebar-navigation a:first-child{margin-top:0}
.hero-inner{grid-template-columns:minmax(0,1fr);min-height:0;gap:24px}
.hero h1{font-size:52px}.hero-title-qualifier{white-space:normal}
.hero-art{min-height:0}.hero-art .robot{height:250px}
.day-overview{padding:28px 24px}.teach-page{padding:24px}
}
