:root {
  --ink:#172a43;--muted:#63748a;--quiet:#8795a8;--blue:#245796;--blue-2:#356cae;--navy:#123e72;--gold:#f0c540;--gold-soft:#fff6d7;
  --bg:#f6f8fc;--panel:#fff;--tint:#f1f5fb;--line:#e3eaf3;--line-dark:#cfdbea;--green:#20836b;--green-bg:#eaf7f0;
  --shadow:0 18px 50px rgba(24,46,84,.065);--radius:17px;
  font-family:Inter,"Segoe UI",-apple-system,BlinkMacSystemFont,Arial,sans-serif;color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-size:15px;line-height:1.57}
button,input,textarea,select{font:inherit}
button{cursor:pointer}
button:disabled{opacity:.5;cursor:not-allowed}
a{color:var(--blue);text-decoration:none}
a:hover{text-decoration:underline}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #d4a90b;outline-offset:3px}
h1,h2,h3,h4,p{margin-top:0}
h1{font-size:clamp(1.75rem,3vw,2.85rem);line-height:1.14;letter-spacing:-.035em;margin-bottom:14px;font-weight:750}
h2{font-size:1.62rem;line-height:1.24;letter-spacing:-.025em;margin-bottom:12px}
h3{font-size:1.14rem;line-height:1.35;margin-bottom:10px}
h4{font-size:1rem;margin-bottom:6px}
p{margin-bottom:12px}
small,.small{font-size:.8rem}
strong{font-weight:680}
.muted{color:var(--muted)}
.micro{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;font-weight:780;color:var(--blue);margin-bottom:10px}
.skip-link{position:absolute;left:-9999px;top:5px;background:#fff;color:#111;z-index:50;padding:10px}
.skip-link:focus{left:10px}
.site-header{height:88px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}
.header-inner{max-width:1600px;margin:auto;height:100%;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.header-brand{display:flex;align-items:center;gap:20px;color:var(--ink);min-width:0;text-decoration:none}
.header-brand:hover{text-decoration:none}
.header-brand img{height:62px;width:166px;object-fit:contain;object-position:left center}
.header-brand-divider{width:1px;height:38px;background:var(--line-dark)}
.header-caption{display:flex;flex-direction:column;line-height:1.25;gap:2px;white-space:nowrap}
.header-caption strong{font-size:1.05rem;letter-spacing:.015em;color:var(--navy)}
.header-caption small{color:var(--muted);font-size:.73rem}
.header-right{display:flex;align-items:center;gap:20px;color:var(--muted);font-size:.82rem;white-space:nowrap}
.header-date{display:flex;align-items:center;gap:8px}
.date-dot{height:8px;width:8px;border-radius:50%;background:var(--gold);display:inline-block}
.save-indicator{display:flex;align-items:center;gap:8px;color:var(--green)}
.saved-circle{width:7px;height:7px;border-radius:50%;background:currentColor;display:inline-block}
.app-shell{max-width:1600px;margin:auto;display:grid;grid-template-columns:255px minmax(0,1fr);min-height:calc(100vh - 88px)}
.sidebar{border-right:1px solid var(--line);background:rgba(255,255,255,.7);padding:29px 15px 30px;display:flex;flex-direction:column;min-height:calc(100vh - 88px)}
.sidebar-label,.sidebar-group-label{color:#8190a5;font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;padding:8px 15px;margin-bottom:9px}
.sidebar-group-label{margin-top:23px;margin-bottom:8px}
.course-nav{display:flex;flex-direction:column;gap:5px}
.nav-link{display:flex;align-items:center;gap:12px;border:1px solid transparent;background:transparent;border-radius:11px;padding:10px 11px;color:#54667b;font-weight:600;text-align:left;width:100%;min-height:45px;font-size:.89rem}
.nav-link:hover{background:#edf2fa;color:var(--navy)}
.nav-link.active{background:#e7eef9;border-color:#d4e0f3;color:var(--navy)}
.nav-icon,.nav-stage{flex:0 0 29px;width:29px;height:29px;display:grid;place-items:center;border-radius:9px;font-size:.68rem;letter-spacing:.03em;font-weight:750;background:#ecf1f7;color:#597088}
.nav-stage{color:#fff;font-size:.95rem}
.nav-stage[data-stage="a"]{background:#2873b5}.nav-stage[data-stage="r"]{background:#18857d}.nav-stage[data-stage="e"]{background:#c38b25}.nav-stage[data-stage="c"]{background:#5d8b42}
.nav-done{margin-left:auto;color:#27946e;font-weight:800;font-size:.75rem}
.sidebar-bottom{display:flex;align-items:start;gap:10px;margin:40px 7px 0;padding:15px;border-radius:12px;background:#ebf2fa}
.sidebar-bottom strong{font-size:.78rem}.sidebar-bottom p{font-size:.74rem;color:var(--muted);margin:3px 0 0;line-height:1.45}.privacy-icon{color:var(--blue)}
.main-content{padding:35px clamp(24px,4.2vw,70px) 100px;min-width:0;width:100%;max-width:1270px;margin:0 auto}
.content-limit{max-width:1045px;margin:0 auto}
.page-overline{color:var(--blue);font-size:.72rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase;margin:0 0 11px}
.page-subtitle{color:var(--muted);font-size:1.01rem;max-width:780px;line-height:1.65}
.page-header{margin-bottom:27px}
.hero{background:linear-gradient(112deg,#0f3769 0%,#174f8d 54%,#2661a2 100%);color:#fff;border-radius:23px;padding:35px 39px 32px;position:relative;overflow:hidden;box-shadow:0 22px 48px rgba(18,62,114,.14)}
.hero:before{content:"";pointer-events:none;position:absolute;right:-90px;top:-150px;width:440px;height:440px;border:1px solid rgba(255,255,255,.14);border-radius:50%;box-shadow:0 0 0 50px rgba(255,255,255,.03),0 0 0 105px rgba(255,255,255,.024),0 0 0 160px rgba(255,255,255,.015)}
.hero:after{content:"";pointer-events:none;position:absolute;right:15%;bottom:-90px;width:225px;height:225px;border:30px solid rgba(242,202,67,.13);border-radius:50%}
.hero-content{max-width:725px;position:relative;z-index:1}
.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2);padding:6px 10px;border-radius:50px;color:#e4edfd;font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;font-weight:750;margin-bottom:25px}
.hero h1{color:#fff;font-size:clamp(1.9rem,3.2vw,3.05rem);line-height:1.15;max-width:850px}
.hero p{color:#d9e6fa;max-width:665px;margin:13px 0 23px;font-size:1.01rem}
.hero-meta{display:flex;align-items:center;gap:17px;flex-wrap:wrap;color:#e1ebfb;font-size:.82rem;margin:0 0 27px}
.hero-meta span{display:flex;align-items:center;gap:7px}
.hero-meta svg{width:17px;height:17px}
.hero-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;min-height:41px;border:1px solid transparent;border-radius:10px;padding:10px 15px;font-size:.86rem;font-weight:700;line-height:1.2;text-decoration:none;transition:background .16s,transform .16s,border-color .16s;white-space:normal;text-align:center}
.btn:hover:not(:disabled){transform:translateY(-1px);text-decoration:none}
.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:#16467f}
.btn.gold{background:var(--gold);color:#1b3556}.btn.gold:hover{background:#ffd75a}
.btn.outline{border-color:var(--line-dark);background:#fff;color:var(--navy)}.btn.outline:hover{background:#f1f5fb}
.btn.ghost{color:var(--blue);background:#eef3fb}
.btn.hero-outline{border-color:rgba(255,255,255,.34);color:#fff;background:rgba(255,255,255,.1)}
.btn.danger{color:#9f3032;border:1px solid #e8c9c7;background:#fff}
.btn.small{font-size:.78rem;min-height:35px;padding:7px 11px;border-radius:8px}
.btn:focus-visible{outline-offset:2px}
.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:39px 0 16px}
.section-title h2{margin:0}.section-title small{color:var(--muted)}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.card-body{padding:23px}
.card h3{margin-bottom:6px}
.card p:last-child{margin-bottom:0}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px}
.icon-tile{width:44px;height:44px;border-radius:13px;background:#eaf1fa;color:var(--blue);display:grid;place-items:center;font-size:.93rem;font-weight:800;flex-shrink:0}
.icon-tile.amber{background:#fff4d3;color:#926518}.icon-tile.teal{background:#e6f5f1;color:#18857d}.icon-tile.olive{background:#edf5e9;color:#4b8437}
.kicker{font-size:.71rem;color:var(--muted);font-weight:770;letter-spacing:.08em;text-transform:uppercase}
.tile-step{font-size:1.28rem;color:var(--navy);font-weight:760;letter-spacing:-.03em;margin:6px 0 4px}
.tile-copy{font-size:.82rem;color:var(--muted);margin-bottom:0}
.module-tile{padding:18px;display:flex;flex-direction:column;gap:12px;min-height:186px}
.module-tile button{align-self:flex-start;margin-top:auto}
.module-band{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px;font-size:.75rem;color:var(--muted)}
.case-card{display:grid;grid-template-columns:1fr 300px;min-height:255px;overflow:hidden}
.case-card-body{padding:26px 27px}
.case-card-graphic{background:linear-gradient(145deg,#edf4ff,#dfeaf8);position:relative;display:flex;justify-content:center;align-items:center;overflow:hidden}
.case-card-graphic:before{content:"";width:255px;height:255px;border-radius:50%;background:rgba(47,97,170,.08);position:absolute;right:-50px;top:-70px}
.factory-graphic{width:210px;position:relative;z-index:1}
.factory-graphic svg{width:100%;height:auto}
.stat-strip{display:flex;gap:15px;flex-wrap:wrap;margin:17px 0}
.stat-pill{background:#edf3fb;border-radius:9px;padding:8px 11px;font-size:.75rem;color:#48647f}.stat-pill strong{color:var(--navy)}
.badge{display:inline-flex;align-items:center;border-radius:100px;background:#edf2f9;color:#335a83;padding:4px 10px;font-size:.7rem;font-weight:730;white-space:nowrap}
.badge.green{background:var(--green-bg);color:var(--green)}.badge.gold{background:var(--gold-soft);color:#806123}.badge.gray{background:#f0f2f5;color:#63748a}
.info-banner{padding:14px 17px;border-radius:12px;border:1px solid #d5e5f4;background:#edf5fc;display:flex;gap:12px;align-items:start;color:#2b517b;font-size:.87rem}
.info-banner.amber{border-color:#f0e1b3;background:#fffbef;color:#715720}.info-banner.green{border-color:#d3eadf;background:#eef8f3;color:#285947}
.info-symbol{display:inline-grid;place-items:center;border-radius:50%;width:21px;height:21px;flex-shrink:0;border:1px solid currentColor;font-weight:800;font-size:.7rem;line-height:1}
.module-heading{display:flex;align-items:center;gap:15px;margin:0 0 20px}
.module-letter{width:62px;height:62px;flex-shrink:0;border-radius:17px;display:grid;place-items:center;font-size:2rem;font-weight:800;color:#fff;background:#2873b5}
.module-letter.r{background:#18857d}.module-letter.e{background:#c18a22}.module-letter.c{background:#5d8b42}
.module-heading h1{font-size:clamp(1.68rem,2.5vw,2.4rem);margin-bottom:3px}
.module-heading p{margin:0;color:var(--muted)}
.lesson-tabs{background:#eaf0f8;padding:5px;border-radius:13px;display:flex;gap:4px;margin:24px 0 20px;overflow:auto}
.lesson-tab{color:#697e95;background:transparent;border:0;border-radius:9px;padding:10px 15px;font-weight:750;font-size:.83rem;white-space:nowrap;flex:1;min-width:max-content}
.lesson-tab.active{background:white;color:var(--navy);box-shadow:0 2px 8px rgba(24,47,81,.09)}
.lesson-tab:hover{color:var(--navy)}
.content-card{padding:25px 27px;margin-bottom:17px}
.content-card h2{font-size:1.27rem;margin-bottom:10px}
.content-card h3{font-size:1.05rem}
.content-card p{color:#495f77;font-size:.9rem}
.content-card ul,.content-card ol{padding-left:23px;color:#495f77;font-size:.9rem;line-height:1.7}
.content-card li{padding:3px 0}
.subhead{display:flex;justify-content:space-between;gap:14px;align-items:center;margin-bottom:13px}
.note{font-size:.79rem;color:var(--muted)}
.field{display:flex;flex-direction:column;gap:7px;min-width:0}
.field label{font-size:.75rem;font-weight:750;color:#4c6078}
.field input,.field select,.field textarea{width:100%;border:1px solid #cfdbe8;background:#fff;color:var(--ink);border-radius:9px;padding:10px 11px;outline:none;min-height:42px;font-size:.89rem;transition:border-color .14s,box-shadow .14s}
.field textarea{resize:vertical;min-height:82px;line-height:1.5}
.field input:focus,.field textarea:focus,.field select:focus{border-color:#477db8;box-shadow:0 0 0 3px #dceafa}
.field .hint{font-size:.7rem;color:var(--muted)}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px 15px}
.field-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.field.full{grid-column:1/-1}
.entry-card{border:1px solid var(--line);background:#fbfcff;border-radius:13px;padding:17px;margin:13px 0}
.entry-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px}
.entry-header strong{color:var(--navy);font-size:.87rem}
.entry-label{font-size:.69rem;color:var(--muted);font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.divider{height:1px;background:var(--line);margin:19px 0}
.flow-list{display:grid;gap:6px;max-width:680px;margin:18px auto}
.flow-row{border:1px solid var(--line);background:#f8fafd;border-radius:10px;padding:13px 15px;display:flex;gap:15px;align-items:center}
.flow-number{height:32px;width:32px;display:grid;place-items:center;border-radius:9px;background:#e3edfa;color:var(--blue);font-weight:800;flex-shrink:0}
.flow-arrow{text-align:center;line-height:1;font-size:16px;color:#9aabc1}
.flow-row strong{font-size:.91rem}.flow-row span{font-size:.78rem;color:var(--muted);display:block}
.list-check{margin:8px 0;padding:0;list-style:none;display:grid;gap:9px}
.list-check li{display:flex;gap:10px;align-items:start;color:#435c77;font-size:.88rem}
.list-check li:before{content:"";width:7px;height:7px;background:#4c89bb;border-radius:50%;flex-shrink:0;margin-top:10px}
.evidence-card{padding:19px 20px;border:1px solid var(--line);border-radius:13px;background:#fcfdff;margin-bottom:12px}
.evidence-card .evidence-title{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.evidence-card .evidence-title strong{font-size:.94rem}
.evidence-card .evidence-text{font-size:.86rem;color:#4d6078;line-height:1.65;white-space:pre-wrap}
.evidence-footer{display:flex;gap:8px;flex-wrap:wrap;padding-top:10px}
.prompt-box{background:#102f54;color:#e8effa;padding:21px 23px;border-radius:13px;border:1px solid #335b88;position:relative;margin:12px 0}
.prompt-box pre{font:normal .84rem/1.68 "Segoe UI",Arial,sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;max-height:360px;overflow:auto}
.prompt-box .prompt-head{display:flex;justify-content:space-between;align-items:center;color:#abc4e6;font-size:.72rem;text-transform:uppercase;letter-spacing:.09em;font-weight:750;padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid rgba(255,255,255,.17)}
.prompt-footer{display:flex;justify-content:flex-end;margin-top:12px}
.prompt-footer .btn{background:#f4cb4b;color:#233b58}
.article-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.77rem;margin-bottom:14px}
.lesson-number{font-weight:780;letter-spacing:.07em;color:var(--blue);font-size:.73rem}
.section-index{display:inline-grid;place-items:center;width:32px;height:32px;border-radius:10px;background:#e9f2fb;color:var(--blue);font-weight:800;margin-right:7px}
.action-footer{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:17px 0 4px}
.worksheet-header{display:flex;align-items:center;justify-content:space-between;gap:13px;margin:5px 0 16px}
.answer-panel{background:#f2f9f5;border:1px solid #d0e8d8;border-radius:13px;padding:20px;color:#315b47}
.answer-panel table{font-size:.79rem;background:#fff}
.answer-panel p{color:#315b47}
.data-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:11px;background:#fff;margin:15px 0}
table{border-collapse:collapse;width:100%;font-size:.83rem;text-align:left}
th{background:#f1f5fa;color:#49617e;font-size:.71rem;letter-spacing:.04em;text-transform:uppercase;padding:12px 14px;white-space:nowrap}
td{padding:12px 14px;border-top:1px solid var(--line);vertical-align:top;color:#344c66}
td input{border:1px solid var(--line-dark);padding:9px 10px;border-radius:8px;width:100%;min-width:72px}
.number-output{background:#e9f2fc;padding:15px 18px;border-radius:13px;display:flex;gap:12px;justify-content:space-between;align-items:center}
.number-output strong{font-size:1.5rem;color:var(--navy)}
.number-output small{display:block;color:var(--muted);font-size:.75rem}
.half-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.quiz-item{padding:17px 0;border-bottom:1px solid var(--line)}.quiz-item:last-child{border:0}
.quiz-options{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.choice{border:1px solid var(--line-dark);background:#fff;color:#476079;border-radius:9px;padding:9px 13px;font-size:.82rem;font-weight:730;min-width:125px}
.choice:hover{background:#f1f6fc}.choice.selected{background:#dce9f8;border-color:#a9c2e0;color:var(--navy)}
.feedback{margin-top:10px;padding:10px 12px;border-radius:9px;font-size:.8rem}.feedback.ok{background:#e9f6ee;color:#266548}.feedback.retry{background:#fff8e4;color:#825f22}
.workbook-section{margin-top:15px;padding:20px 22px;background:#fff;border:1px solid var(--line);border-radius:13px}
.workbook-section h3{display:flex;align-items:center;gap:10px}
.workbook-section .workbook-letter{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#e7effa;color:var(--blue);font-weight:800}
.report-empty{color:#8893a1;font-style:italic;font-size:.81rem}
.report-list{margin:9px 0 13px;padding:0;list-style:none}.report-list li{padding:9px 0;border-bottom:1px solid #edf0f5;font-size:.86rem}
.report-list li:last-child{border:0}.report-list strong{display:block;margin-bottom:2px;color:#28435e}
.stage-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.stage-unit{height:9px;border-radius:20px;background:#dce5f1}.stage-unit.done{background:var(--blue)}
.resource-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);padding:14px 0}
.resource-row:last-child{border:0}.resource-row strong{font-size:.9rem}.resource-row p{font-size:.79rem;color:var(--muted);margin:3px 0 0}
.resource-pill{width:42px;height:42px;background:#edf3fb;color:var(--blue);border-radius:11px;display:grid;place-items:center;flex-shrink:0;font-weight:750;font-size:.73rem}
details{border:1px solid var(--line);border-radius:12px;background:#fff;margin:10px 0;overflow:hidden}
details summary{list-style:none;padding:15px 18px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-weight:700;font-size:.88rem;gap:12px}
details summary::-webkit-details-marker{display:none}
details summary:after{content:"+";font-size:1.2rem;color:var(--blue)}details[open] summary:after{content:"-"}
details[open] summary{border-bottom:1px solid var(--line)}
.details-inner{padding:16px 18px}.details-inner p,.details-inner li{font-size:.86rem;color:#52657b}
.footer-note{margin-top:47px;padding-top:20px;border-top:1px solid var(--line);color:#748397;font-size:.77rem}
.toast{position:fixed;bottom:26px;right:24px;background:#153b67;color:white;border-radius:10px;padding:12px 18px;box-shadow:0 14px 40px #162c4e33;font-weight:630;font-size:.83rem;z-index:99;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .2s,transform .2s;max-width:min(430px,calc(100vw - 36px))}
.toast.visible{opacity:1;transform:translateY(0)}
.prose pre{white-space:pre-wrap;overflow-wrap:anywhere}.prose code{font-size:.83rem}
.fake-line{height:10px;border-radius:50px;background:#e3eaf3;margin-top:8px}
.timer-display{text-align:center;padding:23px 0;font-size:3.2rem;font-weight:770;color:var(--navy);font-variant-numeric:tabular-nums;letter-spacing:-.04em}
.print-only{display:none}
@media(max-width:1160px){.app-shell{grid-template-columns:215px 1fr}.main-content{padding:29px 28px 80px}.case-card{grid-template-columns:1fr 230px}.header-inner{padding:0 22px}}
@media(max-width:930px){.app-shell{display:block}.sidebar{min-height:0;padding:10px 12px 9px;border-right:0;border-bottom:1px solid var(--line);background:#fff}.course-nav{display:flex;flex-direction:row;overflow-x:auto;gap:5px;padding-bottom:4px}.nav-link{flex:0 0 auto;width:auto;padding:7px 10px;min-height:38px}.nav-link .nav-icon,.nav-link .nav-stage{width:23px;height:23px;flex-basis:23px;font-size:.72rem}.sidebar-label,.sidebar-group-label,.sidebar-bottom,.nav-done{display:none}.main-content{max-width:850px;padding:24px 22px 80px}.header-brand img{height:52px;width:145px}.site-header{height:72px}.header-right{gap:10px}.header-caption small{display:none}}
@media(max-width:680px){.header-inner{padding:0 14px}.header-brand img{height:45px;width:120px}.header-brand-divider{height:28px}.header-caption strong{font-size:.87rem}.header-date{display:none}.save-indicator{font-size:0;gap:4px}.saved-circle{width:9px;height:9px}.main-content{padding:22px 15px 60px}.hero{padding:26px 23px;border-radius:16px}.hero:before{opacity:.3}.hero h1{font-size:1.85rem}.hero p{font-size:.88rem}.grid-2,.grid-3,.grid-4,.half-row,.field-grid,.field-grid.three{grid-template-columns:1fr}.case-card{grid-template-columns:1fr}.case-card-graphic{height:155px;order:-1}.factory-graphic{width:140px}.card-body,.content-card{padding:19px 17px}.module-heading{align-items:start}.module-letter{width:52px;height:52px;font-size:1.6rem}.lesson-tab{padding:9px 11px;font-size:.76rem;flex:0 0 auto}.field.full{grid-column:auto}.btn{font-size:.81rem}.resource-row{align-items:start}.header-right{gap:5px}.hero-meta{gap:10px}.action-footer>.btn{flex:1}.timer-display{font-size:2.4rem}}
@media print{
  @page{size:A4;margin:15mm}
  :root{--ink:#111;--muted:#444}
  body{background:#fff;font-size:10pt;line-height:1.4;print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .site-header,.sidebar,.skip-link,.toast,.screen-only,.page-header,.action-footer,.lesson-tabs,.btn,.footer-note{display:none!important}
  .app-shell,.main-content{display:block;max-width:none;width:100%;margin:0;padding:0}
  .print-only{display:block!important}
  .report-cover{padding:0 0 15mm;border-bottom:2pt solid #17457c;margin-bottom:12mm}
  .report-cover img{max-width:62mm;height:auto;display:block;margin-bottom:8mm}
  .report-cover h1{font-size:19pt;line-height:1.2;max-width:160mm}
  h2{font-size:14pt}h3{font-size:11pt}
  .workbook-section,.card{box-shadow:none;border:1px solid #d4d9e0;break-inside:avoid;margin-bottom:5mm}
  .workbook-section{padding:5mm}.report-list li{break-inside:avoid}
  .report-page{display:block!important}
}
