.shell:has(>.scc){--part-blue:var(--accent);--part-blue-soft:var(--accent-soft)}.scc{--accent:var(--civics-accent);--accent-hover:var(--civics-accent-hover);--accent-soft:var(--civics-accent-soft);--accent-line:var(--civics-accent-line);--pc:var(--accent);--ps:var(--accent-soft);max-width:900px;line-height:1.6}.scc button{font:inherit;cursor:pointer}.scc input[type=text],.scc select,.scc textarea{width:100%}.scc textarea{resize:vertical;min-height:92px;line-height:1.5}.scc textarea.tall{min-height:140px}.scc .sr{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.scc .tc-panel p{margin:1em 0}.scc .tc-panel>p:first-child{margin-top:0}.scc .tc-panel h2,.scc .tc-panel h3{font-weight:700}.scc .tc-panel h3{font-size:var(--t-h3)}.scc .tc-panel *+h3{margin-top:20px}.scc .tc-panel ol.howto{margin:8px 0 0;padding-left:22px}.scc-hero{position:relative}.scc .scc-hero h1{font-size:var(--t-display);margin:0 0 10px;font-weight:700}.scc .scc-hero .sub{max-width:680px;color:var(--ink-2);margin:6px 0}.scc .goal{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-md);max-width:700px;margin-top:16px;padding:12px 14px;position:relative}.scc .goal b{color:var(--accent)}.scc .pillars{width:260px;color:var(--ink);opacity:.06;pointer-events:none;position:absolute;bottom:-6px;right:-10px}.scc .progress{flex-wrap:wrap;justify-content:space-between}.scc .seg{background:var(--surface);border:1px solid var(--rule);border-radius:999px;gap:2px;padding:3px;display:inline-flex}.scc .seg button{color:var(--ink-2);font-family:var(--font-sans);font-size:var(--t-ui);white-space:nowrap;background:0 0;border:0;border-radius:999px;padding:6px 12px;font-weight:700}.scc .seg button[aria-pressed=true]{background:var(--accent);color:var(--on-solid)}.scc .progress .prog{font-family:var(--font-sans);font-size:var(--t-ui);color:var(--ink-2);align-items:center;gap:8px;font-weight:700;display:flex}.scc .progress .bar{flex:0 0 120px}.scc .progress .bar i{background:var(--prep);transition:width .4s}.scc .row2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.scc .tc-panel p.note{border-left:4px solid var(--prep);border-radius:var(--r-sm);background:var(--prep-soft);font-size:var(--t-ui);margin:1em 0;padding:10px 14px}.scc .who p.note{margin-top:14px}.scc .tc-panel p.choose{font-family:var(--font-sans);margin:12px 0 4px;font-weight:700}.scc .tc-panel ul.levels{font-size:var(--t-ui);color:var(--ink-2);margin:0;padding-left:20px;list-style:outside}.scc .tc-panel h2#routeH{font-size:var(--t-h2)}.scc ol.route{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.scc ol.route a{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-ui);justify-content:space-between;gap:8px;padding:9px 12px;text-decoration:none;display:flex}.scc ol.route a:hover{border-color:var(--accent)}.scc ol.route a span{font-family:var(--font-mono);font-size:var(--t-code);color:var(--ink-2);white-space:nowrap}.scc ol.route a.done{border-color:var(--cool);background:var(--cool-soft)}.scc .station{scroll-margin-top:calc(var(--tc-header-h) + 64px);margin:34px 0}.scc .station>.tc-panel{margin-top:18px}.scc .st-head{align-items:flex-start;gap:14px;margin-bottom:6px;display:flex}.scc .st-num{border-radius:var(--r-md);background:var(--accent);width:44px;height:44px;color:var(--on-solid);font-family:var(--font-sans);font-size:var(--t-h3);flex:none;place-items:center;font-weight:700;display:grid}.scc .st-head h2{font-size:var(--t-h2)}.scc .time{border-radius:var(--r-sm);font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:.05em;text-transform:uppercase;color:var(--prep);background:var(--prep-soft);margin-top:6px;padding:5px 8px;font-weight:700;line-height:1;display:inline-block}.scc .tc-panel p.lead{color:var(--ink-2);margin:6px 0 0}.scc label.field{margin:14px 0 6px}.scc .tc-panel p.scoreline{margin:12px 0 0}.scc .tc-panel p.counts{margin:0}.scc .score{font-family:var(--font-sans);color:var(--accent);font-weight:700}.scc .actions{margin-top:12px}.scc #s1 .actions{margin-top:0}.scc a.cta{border-radius:var(--r-md);background:var(--accent);color:var(--on-solid);font-family:var(--font-sans);align-items:center;gap:8px;padding:12px 18px;font-size:16px;font-weight:700;text-decoration:none;display:inline-flex}.scc a.cta:hover{background:var(--accent-hover)}.scc button.primary:disabled,.scc button.secondary:disabled{opacity:.45;cursor:not-allowed}.scc .starters{margin-top:4px}.scc button.addline{border:1px solid var(--rule);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--t-ui);text-align:left;border-radius:999px;margin:3px 4px 3px 0;padding:4px 10px;display:inline-block}.scc button.addline:hover{border-color:var(--accent)}.scc .items{gap:10px;margin-top:12px;display:grid}.scc .item{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-md);padding:12px 14px}.scc .tc-panel .item p{margin:0 0 8px}.scc .choice{flex-wrap:wrap;gap:8px;display:flex}.scc .choice button{border:1px solid var(--rule);background:var(--field);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-ui);border-radius:999px;padding:7px 14px;font-weight:700}.scc .choice button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-solid)}.scc .choice button.right{background:var(--cool);border-color:var(--cool);color:var(--on-solid)}.scc .choice button.wrong{background:var(--lesson);border-color:var(--lesson);color:var(--on-solid)}.scc .choice button:disabled{cursor:default}.scc .fb{border-radius:var(--r-sm);font-size:var(--t-ui);color:var(--ink);margin-top:8px;padding:8px 12px;display:none}.scc .fb.show{display:block}.scc .fb b{font-family:var(--font-sans)}.scc .fb.ok{background:var(--cool-soft)}.scc .fb.no{background:color-mix(in srgb, var(--lesson) 14%, var(--surface))}.scc .fb.info{background:var(--accent-soft)}.scc .flow{grid-template-columns:repeat(4,1fr);gap:8px;margin:12px 0;display:grid}.scc .flow div{border-radius:var(--r-md);background:var(--accent-soft);font-size:var(--t-ui);text-align:center;padding:10px}.scc .flow div b{font-family:var(--font-sans);font-size:var(--t-ui);color:var(--accent);display:block}.scc .grid3{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px;margin-top:10px;display:grid}.scc .flip{perspective:900px;text-align:left;min-height:150px;color:var(--ink);background:0 0;border:0;padding:0}.scc .flip .in{width:100%;height:100%;min-height:150px;transform-style:preserve-3d;transition:transform .5s;position:relative}.scc .flip[aria-pressed=true] .in{transform:rotateY(180deg)}.scc .flip .f,.scc .flip .b{-webkit-backface-visibility:hidden;backface-visibility:hidden;border-radius:var(--r-md);border:1px solid var(--rule);flex-direction:column;justify-content:center;padding:14px;display:flex;position:absolute;inset:0}.scc .flip .f{background:var(--surface)}.scc .flip .f b{font-family:var(--font-sans);font-size:var(--t-h3);color:var(--accent);font-weight:700;line-height:1.25}.scc .flip .f small{font-family:var(--font-sans);font-size:var(--t-code);color:var(--ink-2)}.scc .flip .b{background:var(--accent-soft);font-size:var(--t-ui);transform:rotateY(180deg)}.scc .flip .b small.orig{color:var(--ink-2);margin-top:6px}@media (prefers-reduced-motion:reduce){.scc .flip .in{transition:none}}.scc .amend{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--surface);padding:12px}.scc .amend b{font-family:var(--font-sans);font-size:var(--t-h3);color:var(--prep);font-weight:700}.scc .tc-panel .amend p{font-size:var(--t-ui);margin:4px 0 0}.scc .pA{--pc:var(--accent);--ps:var(--accent-soft)}.scc .pB{--pc:var(--hota-accent);--ps:var(--hota-accent-soft)}.scc .pC{--pc:var(--part-blue,var(--stu));--ps:var(--part-blue-soft,var(--stu-soft))}.scc .pD{--pc:var(--lesson);--ps:color-mix(in srgb, var(--lesson) 14%, var(--surface))}.scc .part-banner{border-radius:var(--r-md);border-left:5px solid var(--pc);background:var(--ps);color:var(--ink);font-family:var(--font-sans);align-items:center;gap:12px;margin:8px 0 4px;padding:12px 16px;font-weight:700;display:flex}.scc .nav{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin-top:10px;display:grid}.scc .nav a{border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-code);align-items:center;gap:6px;padding:7px 9px;line-height:1.25;text-decoration:none;display:flex}.scc .nav a.prog{font-weight:700}.scc .nav a i{background:var(--rule);border-radius:50%;flex:none;width:10px;height:10px}.scc .nav a.prog i{background:var(--prep)}.scc .nav a.done i{background:var(--cool)}.scc .nav a.done{border-color:var(--cool)}.scc details.case{border-left:5px solid var(--pc);scroll-margin-top:calc(var(--tc-header-h) + 64px);margin:12px 0;padding:0}.scc details.case>summary{cursor:pointer;align-items:center;gap:12px;padding:14px 16px;list-style:none;display:flex}.scc details.case>summary::-webkit-details-marker{display:none}.scc .cnum{background:var(--ps);width:34px;height:34px;color:var(--pc);font-family:var(--font-sans);border-radius:50%;flex:none;place-items:center;font-weight:700;display:grid}.scc .ctitle{flex:1;min-width:0}.scc .ctitle b{font-family:var(--font-sans);font-size:var(--t-h3);font-weight:700;line-height:1.3;display:block}.scc .ctitle span{font-family:var(--font-mono);font-size:var(--t-code);color:var(--ink-2)}.scc .status{border-radius:var(--r-sm);background:var(--surface);color:var(--ink-2);font-family:var(--font-mono);font-size:var(--t-meta);letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:4px 8px;font-weight:700}.scc .status.prog{background:var(--prep-soft);color:var(--prep)}.scc .status.done{background:var(--cool-soft);color:var(--cool)}.scc .chev{color:var(--ink-2);transition:transform .2s}.scc details[open] .chev{transform:rotate(90deg)}.scc .cbody{padding:0 16px 18px}.scc .tabs{border-bottom:1px solid var(--rule);flex-wrap:wrap;gap:6px;margin-bottom:12px;padding-bottom:10px;display:flex}.scc .tabs button{border:1px solid var(--rule);background:var(--surface);color:var(--ink-2);font-family:var(--font-sans);font-size:var(--t-ui);border-radius:999px;padding:6px 12px;font-weight:700}.scc .tabs button[aria-selected=true]{background:var(--pc);border-color:var(--pc);color:var(--on-solid)}.scc .tabs button:disabled{opacity:.5;cursor:not-allowed}.scc .tabs button .lock{font-size:var(--t-meta)}.scc .pane{min-height:90px;font-size:var(--t-lede)}.scc .tc-panel .pane p{margin:0 0 10px}.lvl-easy .scc .pane{font-size:var(--t-h3);line-height:1.75}.scc .pane .kicker{font-family:var(--font-mono);font-size:var(--t-code);letter-spacing:.05em;text-transform:uppercase;color:var(--pc);font-weight:700}.scc .predict{grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;display:grid}.scc .predict button{border:2px solid var(--rule);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font-family:var(--font-sans);text-align:left;padding:14px;font-weight:700}.scc .predict button[aria-pressed=true]{border-color:var(--pc);background:var(--ps)}.scc .tc-panel .pane p.locked{margin-top:10px}.scc .verdict{border-radius:var(--r-md);background:var(--surface);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;padding:10px 12px;display:flex}.scc .verdict b{font-family:var(--font-sans)}.scc .verdict small{color:var(--ink-2)}.scc .dots{gap:4px;display:flex}.scc .dots i{border-radius:50%;width:16px;height:16px;display:block}.scc .dots i.m{background:var(--pc)}.scc .dots i.d{border:2px solid var(--pc);background:0 0}.scc .dots i.x{background:var(--rule);opacity:.6}.scc .tc-panel .pane p.legend{font-family:var(--font-sans);font-size:var(--t-code);color:var(--ink-2);margin:-4px 0 10px}.scc .legend .absdot{opacity:.6}.scc .vtag{border-radius:var(--r-sm);font-family:var(--font-sans);font-size:var(--t-code);padding:3px 8px;font-weight:700}.scc .vtag.ok{background:var(--cool-soft);color:var(--cool)}.scc .vtag.no{background:color-mix(in srgb, var(--lesson) 14%, var(--surface));color:var(--lesson)}.scc .connect{border-radius:var(--r-md);background:var(--prep-soft);font-size:var(--t-ui);margin-top:12px;padding:10px 12px}.scc .connect b{font-family:var(--font-sans);color:var(--prep)}.scc .next{margin-top:10px}.scc .pane button.primary,.scc .pane button.secondary{padding:10px 16px}.scc .chart{border-top:2px dashed var(--rule);margin-top:16px;padding-top:14px}.scc .tc-panel .chart h3{font-size:var(--t-h3);align-items:center;gap:8px;display:flex}.scc .chart h3 svg{color:var(--pc)}.scc .amfb{min-height:1em;font-family:var(--font-sans);font-size:var(--t-code);margin-top:6px}.scc .amfb.ok{color:var(--cool);font-weight:700}.scc .amfb.no{color:var(--lesson);font-weight:700}.scc .mslots{counter-reset:m;gap:6px;margin:10px 0;display:grid}.scc .mslots div{counter-increment:m;border:1.5px dashed var(--rule);border-radius:var(--r-md);min-height:42px;color:var(--ink-2);padding:9px 12px}.scc .mslots div.filled{border-style:solid;border-color:var(--pc);background:var(--ps);color:var(--ink)}.scc .mslots div:before{content:counter(m) ". ";font-family:var(--font-sans);color:var(--pc);font-weight:700}.scc .mpool{flex-wrap:wrap;gap:8px;display:flex}.scc .mpool button{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--field);color:var(--ink);font-size:var(--t-ui);text-align:left;padding:8px 12px}.scc .mpool button.used{opacity:.3;pointer-events:none}.scc .mpool button.shake{border-color:var(--lesson);animation:.4s scc-shake}@keyframes scc-shake{25%{transform:translate(-5px)}75%{transform:translate(5px)}}.scc .tl{margin:14px 0 6px;padding-left:24px;position:relative}.scc .tl:before{content:"";background:var(--rule);border-radius:3px;width:3px;position:absolute;top:4px;bottom:4px;left:8px}.scc .tl div{margin:0 0 12px;position:relative}.scc .tl div:before{content:"";background:var(--panel);border:3px solid var(--lesson);border-radius:50%;width:13px;height:13px;position:absolute;top:6px;left:-21px}.scc .tl div.hl:before{background:var(--lesson)}.scc .tl b{font-family:var(--font-sans);color:var(--lesson)}.scc .tablewrap{border:1px solid var(--rule);border-radius:var(--r-md);background:var(--surface);margin-top:10px;overflow-x:auto}.scc table.sc{border-collapse:collapse;width:100%;min-width:640px;font-size:var(--t-ui)}.scc table.sc th{background:var(--accent);color:var(--on-solid);font-family:var(--font-sans);text-align:left;padding:9px 10px;position:sticky;top:0}.scc table.sc td{border-top:1px solid var(--rule);vertical-align:top;padding:8px 10px}.scc table.sc tr.miss td{background:color-mix(in srgb, var(--lesson) 14%, var(--surface))}.scc table.sc td.cn{font-family:var(--font-sans);white-space:nowrap;font-weight:700}.scc table.sc td.cn a{color:var(--ink);text-decoration:underline}.scc table.sc .empty{color:var(--lesson);font-style:italic}.scc ol.steps{padding-left:22px}.scc ol.steps li{margin:6px 0}.scc .danger{border:1px solid var(--lesson);border-radius:var(--r-md);background:color-mix(in srgb, var(--lesson) 14%, var(--surface));margin-top:14px;padding:12px}.scc .danger b{font-family:var(--font-sans)}.scc .tc-panel .danger p{font-size:var(--t-ui);margin:4px 0 8px}.scc button.secondary.warn{color:var(--lesson);border-color:var(--lesson)}.scc button.primary.warn{background:var(--lesson)}.scc-foot{text-align:center;font-family:var(--font-sans);font-size:var(--t-ui);color:var(--ink-2);margin:0;padding:14px 16px 6px}.scc .toast{z-index:50;border-radius:var(--r-md);background:var(--ink);max-width:90vw;color:var(--page);font-family:var(--font-sans);font-size:var(--t-ui);text-align:center;padding:10px 16px;font-weight:700;transition:transform .3s;position:fixed;bottom:20px;left:50%;transform:translate(-50%)translateY(120px)}.scc .toast.show{transform:translate(-50%)translateY(0)}.scc .toast:empty{display:none}@media (width<=620px){.scc .flow{grid-template-columns:1fr 1fr}}@media (width<=560px){.scc .row2{grid-template-columns:1fr}.scc .seg button{font-size:var(--t-code);padding:6px 9px}.scc .progress .bar{flex-basis:70px}.scc .pillars{width:160px}}@media (width<=520px){.scc details.case>summary{grid-template-columns:auto 1fr auto;gap:4px 10px;padding:12px;display:grid}.scc .ctitle b{font-size:var(--t-body)}.scc .status{grid-area:2/2;justify-self:start;padding:3px 7px;font-size:11px}.scc .chev{grid-area:1/3}.scc .cbody{padding:0 12px 16px}.scc .predict{grid-template-columns:1fr}}#printReport{display:none}@media print{@page{margin:.6in}body,.scc{font-size:11pt;color:#000!important;background:#fff!important}#printReport *{color:#000!important}body>:not(.shell),.shell>:not(.scc),.scc>:not(#printReport){display:none!important}body>.shell{max-width:none;margin:0;padding:0}.scc{max-width:none}#printReport{font-family:var(--font-sans);line-height:1.6;display:block}#printReport h1{margin:0 0 4pt;font:700 18pt Georgia,serif}#printReport h2{border-bottom:1px solid #999;margin:14pt 0 4pt;font:700 13pt Georgia,serif}#printReport table{border-collapse:collapse;width:100%;font-size:9.5pt}#printReport th,#printReport td{vertical-align:top;text-align:left;border:1px solid #888;padding:4pt}#printReport th{background:#e8e8e8}#printReport tr{page-break-inside:avoid}#printReport .qa{margin:0 0 6pt}#printReport .qa b{display:block}}
