/* SPECTRA Layering Map — component styles. Everything is scoped under #slm.
   The first rule isolates the component from site-wide CSS (SVG excluded). Do not add unscoped rules here. */
#slm :where(*:not(svg,svg *)){all:revert}
#slm{--bg:var(--paper); --surface:var(--canvas); --surface-2:var(--paper);
  --ink:#1D1F22; --ink-2:#5F656C; --ink-3:#8A9097; --line:var(--hairline);
  --graphite:#2D3136; --on-graphite:#FFFFFF;
  --accent:inherit; --accent-2:var(--link-ink,var(--accent-text)); --accent-soft:var(--surface-2);
  --stage:var(--paper); --stage-line:var(--hairline); --outline:#69717A; --label:#5B646D;
  
  --tooth:#F4EEE5; --root:#ECE3D4; --die:#E7DAC5; --die-line:#8E8170; --hatch:#C8B99F;
  --hl-line:#2D3136; --glow:rgba(196,122,58,.6); --hl-zone:#C47A3A;
  --f-display:var(--font);
  --f-body:var(--font);
  --f-mono:"IBM Plex Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace}
@media (prefers-color-scheme: dark){
  #slm[data-theme="auto"]{--bg:var(--tile); --surface:var(--tile-2); --surface-2:var(--tile);
    --ink:#E9ECEE; --ink-2:#AAB2BA; --ink-3:#8A939B; --line:#5F656C;
    --graphite:#E9ECEE; --on-graphite:#14171A;
    --accent:var(--accent-on-dark); --accent-2:var(--link-ink,var(--accent-text)); --accent-soft:var(--surface-2);
    --stage:var(--tile); --stage-line:#5F656C; --outline:#A9B1B8; --label:#A3ACB4;
    color-scheme:dark}}
#slm[data-theme="dark"]{--bg:var(--tile); --surface:var(--tile-2); --surface-2:var(--tile);
  --ink:#E9ECEE; --ink-2:#AAB2BA; --ink-3:#8A939B; --line:#5F656C;
  --graphite:#E9ECEE; --on-graphite:#14171A;
  --accent:var(--accent-on-dark); --accent-2:var(--link-ink,var(--accent-text)); --accent-soft:var(--surface-2);
  --stage:var(--tile); --stage-line:#5F656C; --outline:#A9B1B8; --label:#A3ACB4;
  color-scheme:dark}
#slm,#slm *{box-sizing:border-box}
#slm{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:17px;line-height:1.65;-webkit-text-size-adjust:100%;letter-spacing:normal;word-spacing:normal;text-transform:none;text-align:start;font-style:normal;font-weight:400;text-indent:0;text-shadow:none;white-space:normal;display:block}
#slm button{font:inherit;color:inherit;touch-action:manipulation}
#slm a{color:var(--link-ink,var(--accent-text))}
#slm :focus-visible{outline:2px solid var(--accent-2);outline-offset:2px;border-radius:var(--r-tool)}
#slm bdi{unicode-bidi:isolate}
#slm [hidden]{display:none!important}
#slm .page{max-width:1180px;margin-inline:auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:14px 40px}
#slm .crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:14px;color:var(--ink-3);margin:0 0 14px}
#slm .crumbs a{color:var(--ink-2);text-decoration:none}
#slm .crumbs a:hover{text-decoration:underline}
#slm .hd-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px 28px}
#slm .hd-text{min-width:0;flex:1 1 520px}
#slm .eyebrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0 0 6px;font:400 12px/1.4 var(--f-mono);letter-spacing:.16em;color:var(--ink-2);direction:ltr;justify-content:flex-end}
#slm[dir="ltr"] .eyebrow{justify-content:flex-start}
#slm .proto{font:400 12px/1 var(--f-body);letter-spacing:0;padding:5px 9px;border-radius:var(--r-pill);background:var(--surface-2);color:var(--link-ink,var(--accent-text))}
#slm h1{font:700 clamp(32px,4.4vw,56px)/1.15 var(--f-display);margin:0;text-wrap:balance;letter-spacing:0}
#slm .sub{margin:6px 0 0;font:400 14px/1.5 var(--f-display);color:var(--ink-2)}
#slm .lede{margin:10px 0 0;max-width:62ch;color:var(--ink-2)}
#slm .hd-tools{display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap}
#slm .fld{display:grid;gap:4px;font-size:12px;color:var(--ink-3)}
#slm .fld select{appearance:none;-webkit-appearance:none;min-width:116px;height:42px;padding-inline:14px 34px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M1 1l4 4 4-4' fill='none' stroke='%23808891' stroke-width='1.6'/%3E%3C/svg%3E") no-repeat;background-position:left 12px center;font:400 14px var(--f-mono);color:var(--ink)}
#slm[dir="ltr"] .fld select{padding-inline:14px 34px;background-position:right 12px center}
#slm .btn-ghost{height:42px;padding-inline:16px;border:1px solid var(--line);border-radius:var(--r-pill);background:transparent;color:var(--ink);font-weight:400;cursor:pointer}
#slm .btn-ghost:hover{background:var(--surface)}
#slm .teeth{display:flex;gap:2px;padding:3px;border:1px solid var(--line);border-radius:var(--r-card);background:var(--surface)}
#slm .tb{display:inline-flex;align-items:center;gap:7px;height:34px;padding:0 10px 0 8px;border:0;border-radius:var(--r-tool);background:none;color:var(--ink-2);cursor:pointer}
#slm .tb:hover{background:var(--surface-2)}
#slm .tb svg{flex:0 0 auto;width:15px;height:21px}
#slm .tb .g-c{fill:currentColor;fill-opacity:.16;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round}
#slm .tb .g-r{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linejoin:round;opacity:.55}
#slm .tb span{display:grid;line-height:1.1;text-align:start}
#slm .tb b{font:400 14px/1.1 var(--f-mono);color:var(--ink)}
#slm .tb small{font-size:12px;line-height:1.15;color:var(--ink-3)}
#slm .tb[aria-pressed="true"]{background:var(--graphite)}
#slm .tb[aria-pressed="true"],#slm .tb[aria-pressed="true"] b,#slm .tb[aria-pressed="true"] small{color:var(--on-graphite)}
#slm .tb[aria-pressed="true"] small{opacity:.78}
#slm .tabs{display:flex;gap:2px;margin:22px 0 16px;border-bottom:1px solid var(--line);overflow-x:auto;scrollbar-width:none}
#slm .tab{flex:0 0 auto;padding:11px 14px 12px;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;font:400 14px/1.2 var(--f-display);color:var(--ink-3);cursor:pointer}
#slm .tab[aria-selected="true"]{color:var(--ink);border-bottom-color:var(--accent-2)}
#slm .tab:hover{color:var(--ink)}
@media (max-width:420px){
  #slm .tab{padding-inline:7px;font-size:14px}}
#slm .grid{display:grid;gap:18px;align-items:start}
@media (min-width:960px){
  #slm .grid{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}}
#slm .stage{background:var(--stage);border:1px solid var(--stage-line);border-radius:var(--r-card);padding:12px 12px 10px;min-width:0}
@media (min-width:960px){
  #slm .stage{position:sticky;top:calc(var(--slm-sticky-top,0px) + 12px)}}
@media (max-width:959px){
  #slm .stage{position:sticky;top:var(--slm-sticky-top,env(safe-area-inset-top,0px));z-index:5;box-shadow:none}}
#slm .stage-top{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:34px}
#slm .stage-cap{margin:0;font:400 14px/1.4 var(--f-display);color:var(--ink);min-width:0}
#slm .seg{display:inline-flex;padding:3px;border:1px solid var(--line);border-radius:var(--r-tool);background:var(--surface);gap:2px;flex:0 0 auto}
#slm .seg button{border:0;background:none;padding:6px 12px;border-radius:var(--r-pill);font-weight:400;font-size:14px;color:var(--ink-2);cursor:pointer}
#slm .seg button[aria-pressed="true"]{background:var(--graphite);color:var(--on-graphite)}
#slm .views{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:4px}
#slm .vw{margin:0;position:relative;min-width:0;display:flex;flex-direction:column;align-items:center}
#slm .vw svg{display:block;width:100%;height:auto;max-height:min(66vh,520px)}
#slm .vw figcaption{font:400 12px/1.3 var(--f-mono);letter-spacing:.14em;color:var(--ink-3);text-transform:uppercase;margin-top:-2px}
@media (min-width:700px){
  #slm #slm-viewSeg{display:none}}
@media (max-width:699px){
  #slm .views{grid-template-columns:1fr}
  #slm .views[data-show="1"] .vw[data-slot="2"],#slm .views[data-show="2"] .vw[data-slot="1"]{display:none}
  #slm .vw svg{max-height:34vh}
  #slm .legend>span:not(.lg){display:none}}
#slm .offplane{position:absolute;inset-inline:6%;bottom:26px;margin:0;padding:8px 12px;border:1px dashed var(--line);border-radius:var(--r-tool);background:var(--surface);color:var(--ink-2);font-size:14px;line-height:1.5;text-align:center}
#slm .legend{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:6px 2px 0;font-size:12px;color:var(--ink-3)}
#slm .lg{display:inline-flex;align-items:center;gap:6px;color:var(--ink-2);font-weight:400}
#slm .lg i{width:12px;height:12px;border-radius:var(--r-tool);background:var(--sw,transparent);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
#slm .lg i.cur{background:transparent;box-shadow:none;border:1.5px dashed var(--ink-2)}
#slm .lg i.built{background:var(--ink-3)}
#slm .lbl{font-family:var(--f-body);font-size:12px;fill:var(--label)}
#slm .lbl.m{font-family:var(--f-mono);font-size:12px;letter-spacing:.1em;fill:var(--label)}
#slm .lbl.big{font-family:var(--f-mono);font-size:14px;font-weight:400;fill:var(--ink-2)}
#slm .tick{stroke:var(--label);stroke-width:.8;stroke-dasharray:2 3;opacity:.7}
#slm .tooth{fill:var(--tooth)}
#slm .root{fill:var(--root)}
#slm .root-line{fill:none;stroke:var(--outline);stroke-width:1.5;stroke-linejoin:round}
#slm .tooth-line,#slm .outer-line{fill:none;stroke:var(--outline);stroke-width:1.5;stroke-linejoin:round}
#slm .target{fill:none;stroke:var(--outline);stroke-width:1.2;stroke-dasharray:4 4;opacity:.75}
#slm .spec{pointer-events:none}
#slm .die-fill{fill:var(--die)}
#slm .die-hatch{fill:url(#slm-sHatch);opacity:.55}
#slm .die-line{fill:none;stroke:var(--die-line);stroke-width:1;stroke-linejoin:round}
#slm .die-lbl{font-family:var(--f-body);font-size:12px;fill:var(--die-line)}
#slm .unbuilt .tooth{fill:none}
#slm .unbuilt .tooth-line,#slm .unbuilt .outer-line{stroke-dasharray:4 4;opacity:.8}
#slm .z{transition:opacity .28s ease,fill .28s ease,stroke .28s ease}
#slm .z.off{opacity:0;pointer-events:none}
#slm .z.rest,#slm .z.dim,#slm .z.built{fill:var(--zc);stroke:none}
#slm .z.built{opacity:.95}
#slm .z.hl{fill:var(--zc);stroke:var(--hl-line);stroke-width:1.3;stroke-dasharray:5 3;animation:slm-ants 1.1s linear infinite;filter:drop-shadow(0 0 3px var(--glow))}
#slm .glass.built{fill-opacity:.42}
#slm .glass.hl{fill-opacity:.55}
#slm .z.built[data-z="cervical"]{opacity:.3}
#slm .unbuilt .spec{display:none}
#slm .zs.rest,#slm .zs.dim,#slm .zs.built,#slm .zs.hl{fill:none;stroke:var(--zc);stroke-dasharray:none}
#slm .zs.hl{animation:slm-pulse 1.6s ease-in-out infinite}
#slm .z.zs.stain{stroke-width:2.2;stroke-linecap:round}
#slm .z.zs[data-z="od"]{stroke-width:30}
#slm .z.zs[data-z="frame"]{stroke-width:20}
#slm .zonemode .z.off.zm{opacity:1;fill:none;stroke:var(--label);stroke-width:.8;stroke-dasharray:2 3;filter:none;animation:none}
#slm .hits{display:none}
#slm .zonemode .hits{display:inline}
#slm .hits path,#slm .hits rect{fill:transparent;stroke:none;cursor:pointer;pointer-events:all}
#slm .hits path.hs{fill:none;stroke:#000;stroke-opacity:0;stroke-width:9;stroke-linecap:round;pointer-events:stroke}
#slm .odecor{fill:none;stroke:var(--outline);stroke-width:1;stroke-linejoin:round;opacity:.5;pointer-events:none}
#slm .odecor.ridge{stroke-dasharray:3 3;opacity:.6}
#slm .ogroove{fill:none;stroke:var(--outline);stroke-width:1.25;stroke-linecap:round;stroke-linejoin:round;opacity:.85;pointer-events:none}
@keyframes slm-ants{to{stroke-dashoffset:-16}}
@keyframes slm-pulse{50%{stroke-opacity:.55}}
@media (prefers-reduced-motion:reduce){
  #slm .z.hl,#slm .zs.hl{animation:none}
  #slm .z{transition:none}}
#slm .panel{min-width:0;display:grid;gap:14px}
#slm .chip-all{display:flex}
#slm .cg{display:grid;gap:6px}
#slm .cg-t{margin:0;font:400 12px/1.3 var(--f-mono);letter-spacing:.12em;color:var(--ink-3);text-transform:uppercase}
#slm[dir="rtl"] .cg-t{font:400 12px/1.3 var(--f-body);letter-spacing:0}
#slm .cg-row{display:flex;flex-wrap:wrap;gap:6px}
#slm .chips{display:grid;gap:12px}
#slm .chip{display:inline-flex;align-items:center;gap:8px;min-height:38px;padding:6px 13px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font:400 14px/1.2 var(--f-body);cursor:pointer;text-align:start}
#slm .chip:hover{border-color:var(--ink-3)}
#slm .chip i{flex:0 0 auto;width:12px;height:12px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
#slm .chip[aria-pressed="true"]{background:var(--graphite);border-color:var(--graphite);color:var(--on-graphite)}
#slm .chip.na{opacity:.5}
#slm .chip.na[aria-pressed="true"]{opacity:1}
#slm .chip .tri{width:12px;height:12px;border-radius:var(--r-tool);background:conic-gradient(#EECB93 0 25%,#E3965A 0 50%,#AFA6E6 0 75%,#C9D9E8 0)}
#slm .card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-card);padding:18px 18px 16px;min-width:0}
#slm .eb{margin:0 0 4px;font:400 12px/1.4 var(--f-mono);letter-spacing:.14em;color:var(--link-ink,var(--accent-text));text-transform:uppercase;direction:ltr;text-align:start}
#slm[dir="rtl"] .eb{text-align:right}
#slm .card h2{margin:0;font:700 clamp(28px,3vw,40px)/1.25 var(--f-display);text-wrap:balance}
#slm .card .lat{margin:2px 0 0;font:400 14px/1.4 var(--f-mono);color:var(--ink-3)}
#slm .role{margin:10px 0 0;color:var(--ink)}
#slm .fact{margin:8px 0 0;font-size:14px;color:var(--ink-2)}
#slm .fact.note{padding-inline-start:10px;border-inline-start:2px solid var(--accent-2);font-size:14px}
#slm .na-box{margin:10px 0 0;padding:10px 12px;border:1px dashed var(--accent-2);border-radius:var(--r-tool);background:var(--surface-2)}
#slm .na-box p{margin:0;font-weight:400}
#slm .na-box .st-m{align-items:center;margin-top:6px;font-size:14px;color:var(--ink-2)}
#slm .facts{margin:14px 0 0;display:grid;gap:12px}
#slm .facts dt{font-size:12px;font-weight:400;color:var(--ink-3);margin:0 0 4px}
#slm .facts dd{margin:0}
#slm .tags{display:flex;flex-wrap:wrap;gap:6px}
#slm .tag{display:inline-block;padding:3px 10px;border-radius:var(--r-tool);background:var(--surface-2);color:var(--ink);font-size:14px;line-height:1.5}
#slm .depth{display:flex;gap:3px;max-width:320px}
#slm .depth span{flex:1;height:7px;border-radius:var(--r-tool);background:var(--line)}
#slm .depth span.in{background:var(--ink-3);opacity:.45}
#slm .depth span.on{background:var(--graphite)}
#slm .depth-t{display:block;margin-top:5px;font-size:14px;color:var(--ink-2)}
#slm .shades{margin-top:14px}
#slm .lblx{margin:0 0 6px;font-size:12px;font-weight:400;color:var(--ink-3)}
#slm .sh-row{display:flex;flex-wrap:wrap;gap:5px;direction:ltr;justify-content:flex-start}
#slm[dir="rtl"] .sh-row{justify-content:flex-end}
#slm .sh{padding:4px 9px;border:1px solid var(--line);border-radius:var(--r-tool);background:var(--surface-2);font:400 12px/1.4 var(--f-mono);cursor:pointer}
#slm .sh:hover{border-color:var(--ink-3)}
#slm .sh[aria-pressed="true"]{border-color:var(--accent-2);background:var(--surface-2)}
#slm .sh.cur{box-shadow:none}
#slm .sh-note{margin:8px 0 0;font-size:14px;color:var(--ink-2)}
#slm .tips{margin:14px 0 0;padding:0;list-style:none;display:grid;gap:8px}
#slm .tips li{position:relative;padding-inline-start:16px;font-size:14px;color:var(--ink-2)}
#slm .tips li::before{content:"";position:absolute;inset-inline-start:0;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--graphite)}
#slm .links{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
#slm .lk{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:8px 14px;border-radius:var(--r-tool);font-weight:400;font-size:14px;text-decoration:none}
#slm .lk-p{background:var(--graphite);color:var(--on-graphite)}
#slm .lk-g{border:1px solid var(--line);color:var(--ink)}
#slm .lk:hover{filter:brightness(1.08)}
#slm .stack{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:4px}
#slm .stack button,#slm .mrow{width:100%;display:grid;grid-template-columns:auto 14px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid transparent;border-radius:var(--r-pill);background:none;cursor:pointer;text-align:start}
#slm .stack button:hover,#slm .mrow:hover{background:var(--surface-2);border-color:var(--line)}
#slm .stack .n{font:400 12px var(--f-mono);color:var(--ink-3);min-width:1.6em;text-align:center}
#slm .stack i,#slm .mrow i{width:14px;height:14px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
#slm .stack .nm,#slm .mrow .mn{font-weight:400;min-width:0}
#slm .stack .lt,#slm .mrow .ml{font:400 12px var(--f-mono);color:var(--ink-3);direction:ltr}
#slm .mrow{grid-template-columns:14px minmax(0,1fr) auto}
#slm .mrow .ms{grid-column:2/-1;font-size:12px;color:var(--link-ink,var(--accent-text))}
#slm .mlist{margin:8px 0 0;padding:0;list-style:none;display:grid;gap:2px}
#slm .hint{margin:0;font-size:14px;color:var(--ink-2)}
#slm .zlist{display:grid;gap:12px}
#slm .zg{display:grid;gap:6px}
#slm .zrow{display:flex;flex-wrap:wrap;gap:6px}
#slm .mini b{font:400 12px var(--f-mono)}
#slm .zb{min-height:36px;padding:6px 12px;border:1px solid var(--line);border-radius:var(--r-tool);background:var(--surface);font-size:14px;cursor:pointer}
#slm .zb[aria-pressed="true"]{background:var(--graphite);color:var(--on-graphite);border-color:var(--graphite)}
#slm .tech{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#slm .tech button{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);text-align:start;cursor:pointer}
#slm .tech button b{font:400 14px/1.2 var(--f-mono)}
#slm .tech button small{font-size:12px;color:var(--ink-3)}
#slm .tech button[aria-pressed="true"]{border-color:var(--accent-2);box-shadow:none;background:var(--surface-2)}
#slm .tech-d{margin:0;font-size:14px;color:var(--ink-2)}
#slm .steps{list-style:none;margin:0;padding:0;display:grid}
#slm .st-b{width:100%;display:flex;align-items:center;gap:12px;padding:9px 10px;border:1px solid transparent;border-radius:var(--r-tool);background:none;cursor:pointer;text-align:start;font-weight:400}
#slm .st-b:hover{background:var(--surface)}
#slm .st-n{flex:0 0 auto;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--line);font:400 14px var(--f-mono);color:var(--ink-2);background:var(--surface)}
#slm .st.done .st-n{background:var(--ink-3);border-color:var(--ink-3);color:var(--surface)}
#slm .st.cur .st-b{background:var(--surface);border-color:var(--line)}
#slm .st.cur .st-n{background:var(--graphite);border-color:var(--accent-2);color:#fff}
#slm .st-x{padding:6px 10px 10px;padding-inline-start:50px}
#slm .st-x p{margin:0;font-size:14px;color:var(--ink-2)}
#slm .st-m{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
#slm .mini{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--line);border-radius:var(--r-pill);background:var(--surface);font-size:14px;cursor:pointer}
#slm .mini i{width:10px;height:10px;border-radius:50%;background:var(--sw);box-shadow:inset 0 0 0 1px rgba(0,0,0,.18)}
#slm .fire{display:flex;align-items:center;gap:8px;margin:2px 0 4px;padding-inline-start:16px;font:400 12px/1.4 var(--f-body);color:var(--link-ink,var(--accent-text))}
#slm .fire::after{content:"";flex:1;border-top:1px dashed var(--accent-2);opacity:.6}
#slm .fire svg{flex:0 0 auto}
#slm .step-nav{display:flex;align-items:center;justify-content:space-between;gap:10px}
#slm .step-nav span{font:400 14px var(--f-mono);color:var(--ink-3)}
#slm .nb{min-height:40px;padding:8px 16px;border:1px solid var(--line);border-radius:var(--r-tool);background:var(--surface);font-weight:400;cursor:pointer}
#slm .nb:disabled{opacity:.4;cursor:default}
#slm .nb.pri{background:var(--graphite);color:var(--on-graphite);border-color:var(--graphite)}
#slm .next{margin-top:34px;border-top:1px solid var(--line);padding-top:18px}
#slm .next h3{margin:0 0 12px;font:700 21px/1.3 var(--f-display)}
#slm .nx{display:grid;gap:14px 26px}
@media (min-width:700px){
  #slm .nx{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1080px){
  #slm .nx{grid-template-columns:repeat(4,minmax(0,1fr))}}
#slm .nx div{min-width:0;border-top:2px solid var(--accent-2);padding-top:10px}
#slm .nx b{display:block;font:400 14px/1.4 var(--f-display)}
#slm .nx p{margin:4px 0 0;font-size:14px;color:var(--ink-2)}
#slm .ft{margin-top:28px;padding-top:14px;border-top:1px solid var(--line);font-size:14px;color:var(--ink-3);display:grid;gap:6px}
#slm .ft p{margin:0;max-width:90ch}
#slm .fire svg{width:14px;height:14px}
#slm .tb svg,#slm .fire svg{max-width:none}
/* Keep the isolated support module on the shared visual system. */
#slm{font-family:var(--font);font-size:17px;line-height:1.65;--link-ink:var(--accent-text);--action-fill:var(--accent);--action-border:var(--accent-border);--primary-border-width:1px}
#slm h1{font-size:clamp(32px,4.4vw,56px);font-weight:700}
#slm h2{font-size:clamp(28px,3vw,40px);font-weight:700}
#slm :is(h3,h4,h5,h6){font-size:21px;font-weight:700}
#slm :is(b,strong){font-weight:400}
#slm :is(h1,h2,h3,h4,h5,h6) :is(b,strong){font-weight:700}
#slm a{color:var(--link-ink,var(--accent-text))!important}
#slm :is(button,.lk){border-radius:var(--r-pill)!important;min-height:44px;font-weight:400;box-shadow:none!important;transition:transform .15s,background-color .15s,border-color .15s,color .15s!important}
#slm :is(button,.lk):active{transform:scale(.95)!important}
#slm :is(.btn-ghost,.lk,.nb){padding:11px 22px;min-height:44px;border:1px solid var(--action-border,var(--accent-border))!important;background:transparent!important;color:var(--link-ink,var(--accent-text))!important}
#slm :is(.lk-p,.nb.pri){background:var(--action-fill,var(--accent))!important;border:var(--primary-border-width,1px) solid var(--action-border,var(--accent-border))!important;color:var(--on-accent)!important}
#slm .fld select{height:auto;min-height:44px;border-radius:var(--r-pill);font-size:17px}
#slm :is(.tb,.zb){height:auto;min-height:44px}
#slm :is(.card,.stage,.next){border-radius:var(--r-card);box-shadow:none}
#slm[data-theme="dark"]{--link-ink:var(--accent-on-dark);--action-fill:var(--accent-on-dark);--action-border:var(--accent-on-dark);--primary-border-width:0px}
@media(prefers-color-scheme:dark){#slm[data-theme="auto"]{--link-ink:var(--accent-on-dark);--action-fill:var(--accent-on-dark);--action-border:var(--accent-on-dark);--primary-border-width:0px}}
#slm a{text-decoration:underline!important;text-decoration-color:currentColor!important;text-underline-offset:3px!important;text-decoration-thickness:1px!important}
#slm a.lk{text-decoration:none!important}
#slm :focus-visible{outline:2px solid var(--link-ink,var(--accent-text))!important;outline-offset:2px!important}
