/* QCC Notes paper design (from Ch1 pages). Guarded: never styles imported content inside .qcc-src */
:root{--paper:#F8F4EA; --paper2:#F0EADB; --card:#FCFAF2;
  --ink:#211E17; --ink2:#4A463B; --muted:#6E6758;
  --line:#E4DCCA; --line2:#CFC5AA;
  --accent:#BC3F1B; --accent-soft:#F3E1D6;
  --teal:#136A63; --teal-soft:#E0EBE6;
  --mono:'IBM Plex Mono',ui-monospace,monospace;
  --serif:'Source Serif 4',Georgia,serif;
  --disp:'Fraunces',Georgia,serif;}
*{margin:0;padding:0;box-sizing:border-box}
@media (prefers-reduced-motion: no-preference){html{scroll-behavior:smooth}}
body{background:var(--paper); color:var(--ink);
  font:400 1.0625rem/1.68 var(--serif);
  font-optical-sizing:auto;
  overflow-x:clip;
  -webkit-font-smoothing:antialiased;}
::selection{background:var(--accent-soft);color:var(--ink)}
a:not(.qcc-src *){color:var(--teal);text-decoration-thickness:1px;text-underline-offset:3px}
a:hover:not(.qcc-src *){color:var(--accent)}
:focus-visible{outline:2px solid var(--teal);outline-offset:2px;border-radius:2px}
sup:not(.qcc-src *),sub:not(.qcc-src *){line-height:0}
h1:not(.qcc-src *),h2:not(.qcc-src *),h3:not(.qcc-src *){font-family:var(--disp);font-weight:600;letter-spacing:-.01em;text-wrap:balance}
.ic:not(.qcc-src *){width:1em;height:1em;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;vertical-align:-.12em}
.mono-label:not(.qcc-src *){font:600 .6875rem/1 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.container:not(.qcc-src *){max-width:1300px;margin-inline:auto;padding-inline:clamp(1.25rem,4vw,2.5rem)}
.skip:not(.qcc-src *){position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--paper);padding:.6rem 1rem;z-index:99;font-family:var(--mono);font-size:.8rem}
.skip:focus:not(.qcc-src *){left:12px;top:12px}
#progress:not(.qcc-src *){position:fixed;top:0;left:0;right:0;height:2px;background:var(--accent);transform:scaleX(0);transform-origin:0 50%;z-index:60}
.topbar:not(.qcc-src *){position:sticky;top:0;z-index:50;background:rgba(248,244,234,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.topbar .container:not(.qcc-src *){display:flex;align-items:center;height:60px;gap:1rem}
.brand:not(.qcc-src *){display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ink)}
.brand svg:not(.qcc-src *){width:22px;height:22px;color:var(--accent)}
.brand b:not(.qcc-src *){font:600 1.15rem var(--disp)}
.top-tags:not(.qcc-src *){margin-left:auto;display:flex;gap:.5rem}
.tag:not(.qcc-src *){font:500 .6875rem var(--mono);letter-spacing:.1em;color:var(--ink2);border:1px solid var(--line2);padding:.32rem .6rem;border-radius:3px;background:var(--card)}
.crumbs:not(.qcc-src *){padding-top:1.4rem}
.crumbs ol:not(.qcc-src *){list-style:none;display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;font:500 .72rem var(--mono);letter-spacing:.06em;text-transform:uppercase}
.crumbs li:not(.qcc-src *){display:flex;align-items:center;gap:.45rem;color:var(--muted)}
.crumbs a:not(.qcc-src *){color:var(--muted);text-decoration:none}
.crumbs a:hover:not(.qcc-src *){color:var(--accent);text-decoration:underline}
.crumbs .ic:not(.qcc-src *){width:.75rem;height:.75rem;color:var(--line2)}
.crumbs [aria-current]:not(.qcc-src *){color:var(--ink);font-weight:600}
.layout:not(.qcc-src *){display:grid;grid-template-columns:minmax(0,1fr);gap:40px;padding-top:1rem;padding-bottom:4rem}
@media(min-width:1024px){.layout:not(.qcc-src *){grid-template-columns:230px minmax(0,1fr)}}
@media(min-width:1360px){.layout:not(.qcc-src *){grid-template-columns:230px minmax(0,720px) minmax(0,1fr)}}
article:not(.qcc-src *){max-width:720px}
.rail:not(.qcc-src *){display:none}
@media(min-width:1024px){.rail:not(.qcc-src *){display:block;position:sticky;top:84px;align-self:start;max-height:calc(100vh - 110px);overflow:auto;padding-right:.5rem;scrollbar-width:thin}}
.rail-title:not(.qcc-src *){margin-bottom:.7rem}
.onpage:not(.qcc-src *){list-style:none;border-left:1px solid var(--line)}
.onpage a:not(.qcc-src *){display:flex;gap:.55rem;align-items:baseline;padding:.4rem .2rem .4rem .85rem;margin-left:-1px;border-left:2px solid transparent;text-decoration:none;font:500 .72rem/1.5 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.onpage a .num:not(.qcc-src *){color:var(--accent);font-weight:600}
.onpage a:hover:not(.qcc-src *){color:var(--ink)}
.onpage a.act:not(.qcc-src *){border-color:var(--accent);color:var(--ink)}
.rail hr:not(.qcc-src *){border:0;border-top:1px solid var(--line);margin:1.4rem 0}
.chaplist:not(.qcc-src *){list-style:none}
.chaplist li:not(.qcc-src *){border-top:1px solid var(--line)}
.chaplist a:not(.qcc-src *),.chaplist .cur:not(.qcc-src *){display:flex;gap:.6rem;padding:.42rem .1rem;font-size:.83rem;line-height:1.45;text-decoration:none;color:var(--muted)}
.chaplist .cn:not(.qcc-src *){font:600 .68rem/1.9 var(--mono);color:var(--muted);min-width:1.6em}
.chaplist a:hover:not(.qcc-src *){color:var(--accent)}
.chaplist .cur:not(.qcc-src *){color:var(--ink);font-weight:600}
.chaplist .cur .cn:not(.qcc-src *){color:var(--accent)}
.chaplist .cur:not(.qcc-src *){border-left:2px solid var(--accent);padding-left:.5rem;margin-left:-2px}
.rail-chip:not(.qcc-src *){margin-top:1.2rem;font:500 .65rem var(--mono);letter-spacing:.1em;color:var(--muted);border:1px dashed var(--line2);padding:.5rem .7rem;border-radius:3px;text-align:center}
.art-head:not(.qcc-src *){padding-top:2.2rem}
.kicker:not(.qcc-src *){display:flex;align-items:center;gap:1rem}
.kicker .sec-no:not(.qcc-src *){font:600 .78rem var(--mono);letter-spacing:.12em;color:var(--accent)}
.kicker .rule:not(.qcc-src *){flex:1;height:1px;background:var(--line2)}
.kicker .kr:not(.qcc-src *){font:500 .68rem var(--mono);letter-spacing:.14em;color:var(--muted);text-transform:uppercase}
h1:not(.qcc-src *){font-size:clamp(2.2rem,4.8vw,3.3rem);line-height:1.06;margin-top:1.1rem}
.deck:not(.qcc-src *){font:italic 400 1.13rem/1.6 var(--serif);color:var(--ink2);max-width:60ch;margin-top:1.1rem}
.byline:not(.qcc-src *){display:flex;flex-wrap:wrap;align-items:center;gap:.6rem .9rem;margin-top:1.4rem;font-size:.86rem;color:var(--muted)}
.mono-av:not(.qcc-src *){width:30px;height:30px;border-radius:50%;background:var(--ink);color:var(--paper);display:grid;place-items:center;font:600 .7rem var(--mono);letter-spacing:.05em}
.byline b:not(.qcc-src *){color:var(--ink);font-weight:600}
.byline .dot:not(.qcc-src *){color:var(--line2)}
.byline .m:not(.qcc-src *){font:500 .72rem var(--mono);letter-spacing:.06em}
.band:not(.qcc-src *){position:relative;margin-top:2.4rem;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2);padding:2.1rem .4rem;display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem 3rem}
.band .tick:not(.qcc-src *){position:absolute;font:400 1rem var(--mono);color:var(--line2);line-height:1}
.tick.t1:not(.qcc-src *){top:-.55rem;left:-.3rem}
.tick.t2:not(.qcc-src *){top:-.55rem;right:-.3rem}
.tick.t3:not(.qcc-src *){bottom:-.55rem;left:-.3rem}
.tick.t4:not(.qcc-src *){bottom:-.55rem;right:-.3rem}
.avog-num:not(.qcc-src *){font-family:var(--disp);font-weight:700;font-size:clamp(3.2rem,7vw,5.2rem);line-height:1;color:var(--accent);letter-spacing:-.02em;white-space:nowrap}
.avog-num .x10:not(.qcc-src *){font-weight:600;color:var(--ink);font-size:.62em;margin-left:.12em}
.avog-num sup:not(.qcc-src *){font-size:.44em;color:var(--ink);font-weight:600}
.band-meta:not(.qcc-src *){margin-left:auto;text-align:right;font:500 .68rem/1.9 var(--mono);letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}
.band-meta b:not(.qcc-src *){color:var(--ink);font-weight:600}
.sec:not(.qcc-src *){margin-top:4.2rem;scroll-margin-top:96px}
.sec-head:not(.qcc-src *){display:flex;align-items:center;gap:1rem}
.sec-head .idx:not(.qcc-src *){font:600 .8rem var(--mono);letter-spacing:.1em;color:var(--accent)}
.sec-head .rule:not(.qcc-src *){flex:1;height:1px;background:var(--line)}
.sec h2:not(.qcc-src *){font-size:clamp(1.55rem,2.6vw,1.95rem);margin-top:.9rem}
.sec > p:not(.qcc-src *){max-width:68ch;margin-top:1rem;color:var(--ink2)}
.sec p b:not(.qcc-src *),.sec p strong:not(.qcc-src *){color:var(--ink)}
.lead-in:not(.qcc-src *){font-style:italic}
.strip:not(.qcc-src *){display:flex;flex-wrap:wrap;gap:.8rem;margin:1.5rem 0 1.7rem}
.chip:not(.qcc-src *){background:var(--card);border:1px solid var(--line2);border-radius:4px;padding:.6rem .95rem}
.chip small:not(.qcc-src *){display:block;font:600 .6rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin-bottom:.25rem}
.chip code:not(.qcc-src *){font:600 .95rem var(--mono);color:var(--ink)}
.tbl-label:not(.qcc-src *){font:600 .66rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:1.8rem 0 .5rem}
.tbl-wrap:not(.qcc-src *){overflow-x:auto;border:1px solid var(--line);border-radius:4px;background:var(--card)}
table.data:not(.qcc-src *){width:100%;border-collapse:collapse;min-width:560px}
.data th:not(.qcc-src *){font:600 .66rem var(--mono);letter-spacing:.1em;text-transform:uppercase;text-align:left;color:var(--ink);padding:.7rem .85rem;border-bottom:2px solid var(--ink)}
.data td:not(.qcc-src *){padding:.62rem .85rem;border-bottom:1px solid var(--line);font-size:.93rem;vertical-align:top}
.data tr:last-child td:not(.qcc-src *){border-bottom:0}
.data tr:hover td:not(.qcc-src *){background:var(--paper2)}
.data .num-cell:not(.qcc-src *){font:500 .87rem var(--mono)}
.data .dash:not(.qcc-src *){color:var(--muted)}
.trap:not(.qcc-src *){background:var(--accent-soft);border-left:3px solid var(--accent);padding:1rem 1.2rem;margin:1.7rem 0;border-radius:0 4px 4px 0;max-width:56ch}
.trap-tag:not(.qcc-src *){display:inline-flex;align-items:center;gap:.45rem;font:600 .65rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--accent);margin-bottom:.45rem}
.trap-tag .ic:not(.qcc-src *){width:.95rem;height:.95rem}
.trap p:not(.qcc-src *){font-size:.92rem;line-height:1.6;color:#5C2413}
.trap p b:not(.qcc-src *){color:var(--accent)}
@media(min-width:1360px){.trap:not(.qcc-src *){float:right;clear:right;width:290px;margin:.2rem -370px 1.4rem 1.6rem;max-width:none}}
.mapband:not(.qcc-src *){border:1px solid var(--line2);border-radius:6px;background:var(--card);padding:clamp(1rem,3vw,1.8rem);margin-top:1.6rem}
figure.map:not(.qcc-src *){margin:0}
figure.map svg:not(.qcc-src *){width:100%;height:auto;display:block}
figcaption:not(.qcc-src *){font:500 .72rem/1.7 var(--mono);letter-spacing:.05em;color:var(--muted);margin-top:.9rem;border-top:1px dashed var(--line2);padding-top:.8rem}
.hub-c:not(.qcc-src *){fill:var(--ink);stroke:none}
.hub-name:not(.qcc-src *){font:600 12.5px var(--mono);letter-spacing:.16em;fill:var(--paper);opacity:.85;text-anchor:middle}
.hub-sym:not(.qcc-src *){font:italic 600 36px var(--disp);fill:var(--paper);text-anchor:middle}
.hub-unit:not(.qcc-src *){font:500 11px var(--mono);letter-spacing:.08em;fill:var(--paper);opacity:.65;text-anchor:middle}
.node-c:not(.qcc-src *){fill:var(--card);stroke:var(--ink2);stroke-width:1.5;transition:stroke .2s,transform .2s}
.node:not(.qcc-src *){cursor:pointer;text-decoration:none}
.node:hover .node-c:not(.qcc-src *),.node:focus-visible .node-c:not(.qcc-src *){stroke:var(--accent);stroke-width:2.5}
.node text:not(.qcc-src *){pointer-events:none}
.nt-name:not(.qcc-src *){font:600 12px var(--mono);letter-spacing:.14em;fill:var(--ink2);text-anchor:middle}
.nt-sym:not(.qcc-src *){font:italic 600 26px var(--disp);fill:var(--ink);text-anchor:middle}
.nt-unit:not(.qcc-src *){font:500 11px var(--mono);letter-spacing:.04em;fill:var(--muted);text-anchor:middle}
.edge line:not(.qcc-src *){stroke:var(--ink);stroke-width:1.6;marker-start:url(#arrI);marker-end:url(#arrI);transition:stroke .2s,stroke-width .2s}
.edge .el:not(.qcc-src *){font:600 13.5px var(--mono);fill:var(--muted);paint-order:stroke;stroke:var(--card);stroke-width:6px;transition:fill .2s}
.edge.live line:not(.qcc-src *){stroke:var(--accent);stroke-width:2.6;marker-start:url(#arrA);marker-end:url(#arrA)}
.edge.live .el:not(.qcc-src *){fill:var(--accent)}
.orbit:not(.qcc-src *){fill:none;stroke:var(--line2);stroke-dasharray:3 8}
.fig-tag:not(.qcc-src *){font:600 11px var(--mono);letter-spacing:.14em;fill:var(--muted)}
.fig-hint:not(.qcc-src *){font:500 11px var(--mono);letter-spacing:.04em;fill:var(--muted);font-style:italic}
.conv:not(.qcc-src *){margin-top:1.8rem;border:1px solid var(--line2);border-radius:5px;background:var(--paper);padding:1.3rem}
.conv-head:not(.qcc-src *){display:flex;flex-wrap:wrap;align-items:end;gap:1rem;justify-content:space-between}
.conv-head h3:not(.qcc-src *){font-size:1.25rem;margin-top:.3rem}
.subs:not(.qcc-src *){display:flex;gap:.6rem;align-items:end;flex-wrap:wrap}
.subs label:not(.qcc-src *),.field label:not(.qcc-src *){display:block;font:600 .62rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.35rem}
select:not(.qcc-src *),input[type=number]:not(.qcc-src *){font:500 .95rem var(--mono);color:var(--ink);background:var(--card);border:1px solid var(--line2);border-radius:3px;padding:.55rem .7rem;transition:border-color .15s,box-shadow .15s}
select:not(.qcc-src *){appearance:none;padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236E6758' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center}
select:focus:not(.qcc-src *),input:focus:not(.qcc-src *){outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
input[type=number]:not(.qcc-src *)::-webkit-inner-spin-button,input[type=number]:not(.qcc-src *)::-webkit-outer-spin-button{-webkit-appearance:none}
input[type=number]:not(.qcc-src *){-moz-appearance:textfield;appearance:textfield}
#f-custom:not(.qcc-src *){width:110px}
.hidden:not(.qcc-src *){display:none}
.conv-fields:not(.qcc-src *){display:grid;grid-template-columns:repeat(4,1fr);gap:.8rem;margin-top:1.2rem}
@media(max-width:640px){.conv-fields:not(.qcc-src *){grid-template-columns:repeat(2,1fr)}}
.inp:not(.qcc-src *){display:flex;align-items:center;background:var(--card);border:1px solid var(--line2);border-radius:3px;transition:border-color .15s,box-shadow .15s}
.inp:focus-within:not(.qcc-src *){border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}
.inp input:not(.qcc-src *){border:0;background:transparent;width:100%;min-width:0;padding:.55rem .2rem .55rem .7rem}
.inp input:focus:not(.qcc-src *){box-shadow:none;border:0}
.inp .u:not(.qcc-src *){font:500 .72rem var(--mono);color:var(--muted);padding-right:.6rem;white-space:nowrap}
.read:not(.qcc-src *){margin-top:1.2rem;border-top:1px dashed var(--line2);padding-top:1rem;font:500 .9rem/2 var(--mono);color:var(--ink2)}
.read b:not(.qcc-src *){color:var(--accent);font-weight:600}
.conv-note:not(.qcc-src *){margin-top:.8rem;font:400 .72rem var(--mono);color:var(--muted)}
.ex:not(.qcc-src *){border:1px solid var(--line);border-radius:5px;background:var(--card);padding:clamp(1.1rem,2.5vw,1.6rem);margin-top:1.4rem}
.ex-head:not(.qcc-src *){display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center}
.ex-no:not(.qcc-src *){font:600 .72rem var(--mono);letter-spacing:.12em;color:var(--accent)}
.ex-lv:not(.qcc-src *){font:500 .62rem var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line2);border-radius:3px;padding:.28rem .55rem}
.ex h3:not(.qcc-src *){font-size:1.15rem;font-family:var(--serif);font-weight:600;margin-top:.7rem}
.ex-q:not(.qcc-src *){margin-top:.6rem;color:var(--ink2);font-size:.98rem;max-width:64ch}
.steps:not(.qcc-src *){list-style:none;margin-top:1.1rem;border-top:1px solid var(--line)}
.steps li:not(.qcc-src *){display:grid;grid-template-columns:96px 1fr;gap:1rem;padding:.7rem 0;border-bottom:1px solid var(--line);align-items:baseline}
.steps .st:not(.qcc-src *){font:600 .62rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}
.steps .sx:not(.qcc-src *){font-size:.94rem;color:var(--ink2)}
.steps .sx code:not(.qcc-src *){font:500 .9rem var(--mono);color:var(--ink)}
@media(max-width:560px){.steps li:not(.qcc-src *){grid-template-columns:1fr}
.steps .st:not(.qcc-src *){margin-bottom:.15rem}}
.final:not(.qcc-src *){display:flex;align-items:center;gap:.55rem;margin-top:1rem;background:var(--teal-soft);border-left:3px solid var(--teal);padding:.7rem .95rem;border-radius:0 3px 3px 0;font:600 .92rem var(--mono);color:#0C4A45}
.final .ic:not(.qcc-src *){flex:none}
.p-head:not(.qcc-src *){display:flex;flex-wrap:wrap;align-items:baseline;gap:.6rem 1.4rem;margin-top:1rem}
.score:not(.qcc-src *){font:600 .75rem var(--mono);letter-spacing:.08em;color:var(--muted)}
.reset:not(.qcc-src *){background:none;border:0;cursor:pointer;font:600 .72rem var(--mono);letter-spacing:.08em;color:var(--muted);text-decoration:underline;text-underline-offset:3px;padding:0}
.reset:hover:not(.qcc-src *){color:var(--accent)}
.quiz:not(.qcc-src *){border:1px solid var(--line);border-radius:5px;background:var(--card);padding:clamp(1.1rem,2.5vw,1.5rem);margin-top:1.3rem}
.quiz-top:not(.qcc-src *){display:flex;align-items:center;gap:.9rem}
.qno:not(.qcc-src *){font:600 .8rem var(--mono);color:var(--accent);letter-spacing:.08em}
.qtag:not(.qcc-src *){font:500 .6rem var(--mono);letter-spacing:.11em;text-transform:uppercase;color:var(--muted);border:1px solid var(--line2);border-radius:3px;padding:.28rem .55rem}
.qtext:not(.qcc-src *){margin-top:.7rem;font-size:1rem;max-width:62ch}
.opts:not(.qcc-src *){display:grid;gap:.55rem;margin-top:1rem}
.opt:not(.qcc-src *){display:flex;align-items:center;gap:.8rem;text-align:left;width:100%;background:var(--paper);border:1px solid var(--line2);border-radius:4px;padding:.62rem .8rem;font:400 .95rem var(--serif);color:var(--ink);cursor:pointer;transition:border-color .15s,transform .15s,opacity .2s}
.opt:hover:not(:disabled):not(.qcc-src *){border-color:var(--ink2);transform:translateX(3px)}
.opt:disabled:not(.qcc-src *){cursor:default}
.ol:not(.qcc-src *){flex:none;width:26px;height:26px;display:grid;place-items:center;border:1px solid var(--line2);border-radius:3px;font:600 .72rem var(--mono);color:var(--ink2);transition:all .2s}
.opt.is-correct:not(.qcc-src *){border-color:var(--teal);background:var(--teal-soft)}
.opt.is-correct .ol:not(.qcc-src *){background:var(--teal);border-color:var(--teal);color:var(--paper)}
.opt.is-wrong:not(.qcc-src *){border-color:var(--accent);background:var(--accent-soft)}
.opt.is-wrong .ol:not(.qcc-src *){background:var(--accent);border-color:var(--accent);color:var(--paper)}
.opt.is-dim:not(.qcc-src *){opacity:.45}
.quiz-foot:not(.qcc-src *){display:flex;flex-wrap:wrap;align-items:center;gap:.4rem 1.2rem;margin-top:.9rem}
.verdict:not(.qcc-src *){display:inline-flex;align-items:center;gap:.45rem;font:600 .82rem var(--mono);letter-spacing:.03em}
.verdict.ok:not(.qcc-src *){color:var(--teal)}
.verdict.no:not(.qcc-src *){color:var(--accent)}
.reveal:not(.qcc-src *){background:none;border:0;cursor:pointer;font:600 .72rem var(--mono);letter-spacing:.08em;color:var(--muted);text-decoration:underline;text-underline-offset:3px;margin-left:auto;padding:.2rem 0}
.reveal:hover:not(:disabled):not(.qcc-src *){color:var(--accent)}
.reveal:disabled:not(.qcc-src *){cursor:default;text-decoration:none;color:var(--muted)}
.solution:not(.qcc-src *){display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s ease}
.solution.open:not(.qcc-src *){grid-template-rows:1fr}
.sol-in:not(.qcc-src *){overflow:hidden}
.sol-body:not(.qcc-src *){margin-top:1rem;border-left:3px solid var(--teal);background:var(--paper2);border-radius:0 4px 4px 0;padding:1rem 1.2rem}
.sol-tag:not(.qcc-src *){font:600 .62rem var(--mono);letter-spacing:.13em;text-transform:uppercase;color:var(--teal);margin-bottom:.5rem}
.sol-body ol:not(.qcc-src *){margin-left:1.2rem;font-size:.93rem;color:var(--ink2)}
.sol-body li:not(.qcc-src *){margin:.3rem 0}
.ans:not(.qcc-src *){display:flex;align-items:center;gap:.5rem;margin-top:.8rem;font:600 .88rem var(--mono);color:#0C4A45}
.fcard:not(.qcc-src *){border:1px solid var(--line2);border-radius:6px;background:var(--card);margin-top:1.5rem;overflow:hidden}
.fcard-head:not(.qcc-src *){display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.4rem;border-bottom:1px solid var(--line)}
.fcard-head h3:not(.qcc-src *){font-size:1.3rem;margin-top:.3rem}
.copybtn:not(.qcc-src *){display:inline-flex;align-items:center;gap:.5rem;background:transparent;border:1px solid var(--ink);border-radius:3px;color:var(--ink);font:600 .68rem var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:.55rem .9rem;cursor:pointer;transition:background .15s,color .15s}
.copybtn:hover:not(.qcc-src *){background:var(--ink);color:var(--paper)}
.frow:not(.qcc-src *){display:grid;grid-template-columns:minmax(190px,300px) 1fr;gap:1.2rem;padding:.8rem 1.4rem;border-bottom:1px solid var(--line);align-items:baseline}
.frow:last-of-type:not(.qcc-src *){border-bottom:0}
.frow:nth-child(odd of .frow):not(.qcc-src *){background:var(--paper)}
.f-eq:not(.qcc-src *){font:600 .98rem var(--mono);color:var(--ink)}
.f-desc:not(.qcc-src *){font-size:.9rem;color:var(--muted)}
@media(max-width:560px){.frow:not(.qcc-src *){grid-template-columns:1fr;gap:.2rem}}
.consts:not(.qcc-src *){margin:1.4rem 0 0;background:var(--paper2);border:1px dashed var(--line2);border-radius:4px;padding:.9rem 1.2rem;font:500 .78rem/2 var(--mono);color:var(--ink2)}
.consts b:not(.qcc-src *){color:var(--ink)}
.takeaways:not(.qcc-src *){list-style:none;counter-reset:tk;margin-top:1.3rem;border-top:1px solid var(--line2)}
.takeaways li:not(.qcc-src *){counter-increment:tk;display:grid;grid-template-columns:3rem 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line);align-items:baseline;max-width:66ch}
.takeaways li:not(.qcc-src *)::before{content:"0" counter(tk);font:italic 600 1.35rem var(--disp);color:var(--accent)}
.takeaways li:not(.qcc-src *){font-size:1rem;color:var(--ink2)}
.takeaways b:not(.qcc-src *){color:var(--ink)}
.faq-list:not(.qcc-src *){margin-top:1.2rem;border-top:1px solid var(--line2)}
.faq-item:not(.qcc-src *){padding:1.25rem 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:2.2rem 1fr;gap:.4rem}
.faq-item .qm:not(.qcc-src *){font:italic 600 1.1rem var(--disp);color:var(--accent)}
.fq:not(.qcc-src *){font:600 1.06rem var(--serif)}
.fa:not(.qcc-src *){grid-column:2;color:var(--ink2);font-size:.96rem;max-width:64ch;margin-top:.25rem}
.pn:not(.qcc-src *){display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:4.5rem}
@media(max-width:560px){.pn:not(.qcc-src *){grid-template-columns:1fr}}
.pn-card:not(.qcc-src *){display:flex;gap:.9rem;align-items:flex-start;border:1px solid var(--line2);border-radius:5px;background:var(--card);padding:1.1rem 1.2rem;text-decoration:none;color:var(--ink);transition:border-color .15s,transform .15s}
.pn-card:hover:not(.qcc-src *){border-color:var(--ink);transform:translateY(-2px);color:var(--ink)}
.pn-card .ic:not(.qcc-src *){flex:none;margin-top:.35rem;color:var(--accent);width:1.1rem;height:1.1rem}
.pn-card.nx:not(.qcc-src *){flex-direction:row-reverse;text-align:right}
.pn-card small:not(.qcc-src *){display:block;font:600 .62rem var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:.3rem}
.pn-card b:not(.qcc-src *){font:600 1.02rem var(--disp)}
.related:not(.qcc-src *){margin-top:3rem}
.rel-title:not(.qcc-src *){margin-bottom:.4rem}
.rel-list:not(.qcc-src *){list-style:none;border-top:1px solid var(--line2)}
.rel-list a:not(.qcc-src *){display:flex;align-items:center;gap:.8rem;padding:.85rem .2rem;border-bottom:1px solid var(--line);text-decoration:none;color:var(--ink);font-size:1rem}
.rel-list a:hover:not(.qcc-src *){color:var(--accent)}
.rel-list .rn:not(.qcc-src *){font:600 .72rem var(--mono);color:var(--accent);min-width:2.6rem}
.rel-list .ic:not(.qcc-src *){margin-left:auto;color:var(--muted);transition:transform .15s}
.rel-list a:hover .ic:not(.qcc-src *){transform:translateX(4px);color:var(--accent)}
.eeat:not(.qcc-src *){display:flex;gap:1.2rem;align-items:flex-start;border:1px solid var(--line2);border-radius:6px;background:var(--card);padding:1.4rem;margin-top:3.2rem;flex-wrap:wrap}
.eeat .mono-av:not(.qcc-src *){width:52px;height:52px;font:600 1rem var(--mono)}
.eeat h3:not(.qcc-src *){font-size:1.1rem}
.eeat .role:not(.qcc-src *){font-size:.88rem;color:var(--muted);margin-top:.2rem;max-width:52ch}
.eeat .meta:not(.qcc-src *){margin-left:auto;text-align:right;font:500 .68rem/1.9 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.site-foot:not(.qcc-src *){background:var(--ink);color:var(--paper);margin-top:4.5rem}
.site-foot .container:not(.qcc-src *){padding-top:3rem;padding-bottom:1.6rem}
.sf-grid:not(.qcc-src *){display:grid;grid-template-columns:1fr;gap:2.2rem}
@media(min-width:820px){.sf-grid:not(.qcc-src *){grid-template-columns:1.4fr 1fr 1fr}}
.sf-brand .brand:not(.qcc-src *){color:var(--paper)}
.sf-brand .brand svg:not(.qcc-src *){color:var(--accent)}
.sf-brand p:not(.qcc-src *){margin-top:.8rem;font-size:.9rem;color:#B9B29E;max-width:36ch}
.sf-h:not(.qcc-src *){font:600 .66rem var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#8F8974;margin-bottom:.7rem}
.sf-links:not(.qcc-src *){list-style:none}
.sf-links a:not(.qcc-src *){display:block;padding:.28rem 0;font-size:.9rem;color:#D8D2BE;text-decoration:none}
.sf-links a:hover:not(.qcc-src *){color:#fff;text-decoration:underline}
.sf-note:not(.qcc-src *){font-size:.82rem;color:#8F8974;line-height:1.8}
.sf-bar:not(.qcc-src *){border-top:1px solid rgba(248,244,234,.15);margin-top:2.4rem;padding-top:1.2rem;font:500 .7rem var(--mono);letter-spacing:.06em;color:#8F8974;display:flex;flex-wrap:wrap;gap:.5rem 1.5rem}
.toast:not(.qcc-src *){position:fixed;left:50%;bottom:26px;transform:translate(-50%,16px);display:flex;align-items:center;gap:.55rem;background:var(--ink);color:var(--paper);font:500 .8rem var(--mono);letter-spacing:.03em;padding:.7rem 1.1rem;border-radius:4px;box-shadow:0 8px 24px rgba(33,30,23,.28);opacity:0;pointer-events:none;transition:opacity .25s,transform .25s;z-index:80}
.toast.show:not(.qcc-src *){opacity:1;transform:translate(-50%,0)}
.toast .ic:not(.qcc-src *){color:#7FC8BF}