:root{
  --bg:#faf8f3; --surface:#ffffff; --ink:#2c2c28; --muted:#6b6a62; --hint:#9a988e;
  --line:rgba(0,0,0,.10); --accent:#1d7a5a; --track:#ece9e0; --pill:#eef3ec; --radius:14px; --max:760px; --warn:#a8432f;
  --t-meas-bg:#e6f1fb; --t-meas-fg:#185fa5; --t-cert-bg:#e1f5ee; --t-cert-fg:#0f6e56; --t-ass-bg:#faeeda; --t-ass-fg:#854f0b;
  /* Design system v2 — type, space, radius, elevation, motion (theme-independent) */
  --font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Roboto,system-ui,sans-serif;
  --font-display:"Iowan Old Style","Palatino Linotype",Palatino,"Hoefler Text",Georgia,ui-serif,serif;
  --font-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;
  --fs-xs:.75rem; --fs-sm:.86rem; --fs-base:1rem; --fs-md:1.12rem; --fs-lg:1.3rem; --fs-xl:1.62rem; --fs-2xl:2.1rem; --fs-display:clamp(2.3rem,5.2vw,3.1rem);
  --lh-tight:1.1; --lh-snug:1.35; --lh-base:1.6;
  --sp-1:.25rem; --sp-2:.5rem; --sp-3:.75rem; --sp-4:1rem; --sp-5:1.5rem; --sp-6:2rem; --sp-7:3rem;
  --r-1:8px; --r-2:12px; --r-3:16px; --r-4:22px; --r-pill:999px;
  --e1:0 1px 2px rgba(24,38,30,.05), 0 3px 10px rgba(24,38,30,.05);
  --e2:0 4px 16px rgba(24,38,30,.09), 0 14px 36px rgba(24,38,30,.08);
  --ease:cubic-bezier(.2,.7,.2,1); --dur-1:.13s; --dur-2:.22s;
}
/* Dark palette — applied automatically by OS preference (unless you forced light via the toggle),
   AND by an explicit data-theme="dark". color-scheme keeps native controls/scrollbars in step. */
html{color-scheme:light dark}
@media (prefers-color-scheme:dark){ :root:not([data-theme=light]){
  --bg:#16170f; --surface:#1e1f17; --ink:#e7e5d8; --muted:#a3a193; --hint:#76756a;
  --line:rgba(255,255,255,.12); --accent:#5dcaa5; --track:#2a2b20; --pill:#222418; --warn:#e3a594;
  --t-meas-bg:#0c2c44; --t-meas-fg:#85b7eb; --t-cert-bg:#0a2e26; --t-cert-fg:#5dcaa5; --t-ass-bg:#3a2a0c; --t-ass-fg:#ef9f27;
  --e1:0 1px 2px rgba(0,0,0,.3), 0 3px 10px rgba(0,0,0,.3); --e2:0 6px 22px rgba(0,0,0,.5); } }
:root[data-theme=dark]{
  --bg:#16170f; --surface:#1e1f17; --ink:#e7e5d8; --muted:#a3a193; --hint:#76756a;
  --line:rgba(255,255,255,.12); --accent:#5dcaa5; --track:#2a2b20; --pill:#222418; --warn:#e3a594;
  --t-meas-bg:#0c2c44; --t-meas-fg:#85b7eb; --t-cert-bg:#0a2e26; --t-cert-fg:#5dcaa5; --t-ass-bg:#3a2a0c; --t-ass-fg:#ef9f27;
  --e1:0 1px 2px rgba(0,0,0,.3), 0 3px 10px rgba(0,0,0,.3); --e2:0 6px 22px rgba(0,0,0,.5);
  color-scheme:dark; }
:root[data-theme=light]{color-scheme:light}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);
  font-family:var(--font-sans);line-height:var(--lh-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"kern" 1}
.wrap{max-width:var(--max);margin:0 auto;padding:1.25rem 1.25rem 4rem}
/* Design system v2 — editorial display headings + calm elevation + reduced-motion */
.hero,.sectionh,.wedge-q,.vc-name,.ghead h1,.guidecard .gt,.guidecard.primer .gt,.featured .ft{font-family:var(--font-display);font-weight:600}
h1,h2,.hero,.sectionh,.wedge-q,.vc-name{text-wrap:balance}
.door,.guidecard,.territory,.onramp,.ctype{transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}
.door:hover,.guidecard:hover,.territory:hover,.onramp:hover,.ctype.live:hover{box-shadow:var(--e1);transform:translateY(-1px)}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
  .door:hover,.guidecard:hover,.territory:hover,.onramp:hover,.ctype.live:hover{transform:none}
}

/* nav */
.nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;
  padding-bottom:1rem;margin-bottom:1.5rem;border-bottom:.5px solid var(--line)}
.wordmark{font-family:var(--font-display);font-weight:600;font-size:1.14rem;letter-spacing:-.01em;color:var(--ink);text-decoration:none}
.navlinks{display:flex;gap:.55rem .95rem;flex-wrap:wrap;align-items:center}
.navlinks a{color:var(--muted);text-decoration:none;font-size:.92rem}
.navlinks a:hover{color:var(--accent)}
.navlinks a.active{color:var(--accent);font-weight:500}
.locale{font:inherit;font-size:.78rem;padding:.2rem .45rem;border:.5px solid var(--line);border-radius:8px;background:var(--surface);color:var(--muted);cursor:pointer}
.navback{display:inline-flex;gap:.3rem;align-items:center}
.navbtn{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 .5rem;border:.5px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:1.05rem;cursor:pointer;text-decoration:none;font-family:inherit}
.navbtn:hover{border-color:var(--accent);color:var(--accent)}
.navbtn:disabled{opacity:.35;cursor:default}
.themebtn{font-size:1rem;line-height:1}
.totop{position:fixed;right:1rem;bottom:1rem;width:42px;height:42px;border-radius:50%;border:.5px solid var(--line);background:var(--surface);color:var(--ink);font-size:1.2rem;line-height:1;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.15);z-index:60;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);pointer-events:none;transition:opacity .2s,transform .2s,border-color .12s,color .12s}
.totop.show{opacity:1;transform:none;pointer-events:auto}
.totop:hover{border-color:var(--accent);color:var(--accent)}
@media (max-width:600px){.totop{width:46px;height:46px;right:.8rem;bottom:.8rem}}
.navutil{display:inline-flex;align-items:center;gap:.7rem}
.navyou{display:inline-flex;align-items:center;gap:.35rem;color:var(--muted);text-decoration:none;font-size:.92rem}
.navyou-av{width:16px;height:16px;border-radius:50%;background:var(--pill);border:1px solid var(--line);display:inline-block}
.navyou:hover,.navyou.active{color:var(--accent)}
.navyou.active .navyou-av{border-color:var(--accent)}
.navtoggle{display:none;align-items:center;justify-content:center;min-width:40px;height:34px;padding:0 .55rem;border:.5px solid var(--line);border-radius:9px;background:var(--surface);color:var(--ink);font-size:1.1rem;cursor:pointer;font-family:inherit}
.navtoggle:hover{border-color:var(--accent);color:var(--accent)}
.tabbar{display:none}
.skip{position:absolute;left:-999px;top:.4rem;background:var(--accent);color:#fff;padding:.5rem .9rem;border-radius:8px;z-index:100;text-decoration:none}
.skip:focus{left:.6rem}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px}
h1[tabindex],h2[tabindex],.sectionh[tabindex]{outline:none}
.recents{display:flex;flex-direction:column;gap:.35rem}
.recent{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;text-decoration:none;color:var(--ink);border:.5px solid var(--line);border-radius:10px;padding:.6rem .9rem}
.recent:hover{border-color:var(--accent)}
.recent .rl{font-weight:500}
.recent .rh{font-size:.74rem;color:var(--hint);font-family:ui-monospace,monospace}
/* Explore map */
.exptoggle{margin:0 0 1rem}
.modetoggle{display:inline-flex;gap:.25rem;background:var(--track);border-radius:999px;padding:.2rem}
.modetoggle .mt{text-decoration:none;color:var(--muted);font-size:.88rem;padding:.4rem .9rem;border-radius:999px}
.modetoggle .mt.on{background:var(--surface);color:var(--ink);font-weight:500}
/* The Garden lens — the commons as a living thing (additive; biophilic). */
.garden{margin-top:1rem}
.gbed{margin:0 0 1.5rem}
.gbed-h{font-family:var(--font-display,serif);font-size:1.05rem;margin:0 0 .55rem;padding-bottom:.3rem;border-bottom:1px dashed var(--line)}
.gbed-h a{color:var(--ink);text-decoration:none}
.gbed-h a:hover{color:var(--accent)}
.gplots{display:grid;grid-template-columns:repeat(auto-fill,minmax(106px,1fr));gap:.5rem}
.plant{display:flex;flex-direction:column;align-items:center;text-align:center;gap:.12rem;padding:.6rem .4rem .5rem;border:.5px solid var(--line);border-radius:12px;background:var(--surface);text-decoration:none;color:var(--ink);transition:border-color .12s,transform .12s}
.plant:hover{border-color:var(--accent);transform:translateY(-1px)}
.plant.seed{background:transparent;border-style:dashed;opacity:.82}
.plant .psvg{margin-bottom:.1rem}
.plant-l{font-size:.8rem;line-height:1.15;font-weight:500}
.plant-s{font-size:.66rem;color:var(--muted)}
.gardlegend{display:flex;gap:1.2rem;font-size:.82rem;color:var(--muted);margin:.2rem 0 .7rem}
/* Community-authored indexes — the builder + saved list (additive). */
.idxbuild-row{display:flex;gap:.5rem;align-items:center;margin-top:.7rem;flex-wrap:wrap}
#idxname{flex:1;min-width:180px;padding:.5rem .7rem;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);font:inherit}
.idxrow{display:flex;justify-content:space-between;align-items:center;gap:.6rem;flex-wrap:wrap;margin-bottom:.5rem}
.idxrow-v{margin-left:.45rem}
.idxrow-a{display:flex;gap:.3rem;flex-wrap:wrap}
.mapgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:.9rem;margin-top:.6rem}
.territory{border:.5px solid var(--line);border-radius:var(--radius);padding:.9rem 1rem;background:var(--surface)}
.territory.growing{opacity:.6;border-style:dashed}
.territory .th{display:flex;justify-content:space-between;align-items:baseline;gap:.5rem;margin-bottom:.6rem}
.territory .tn{font-weight:600;font-size:.98rem}
.territory .tc{font-size:.74rem;color:var(--hint);white-space:nowrap}
.places{display:flex;flex-wrap:wrap;gap:.4rem}
.place{display:inline-flex;align-items:center;gap:.35rem;text-decoration:none;color:var(--ink);background:var(--bg);border:.5px solid var(--line);border-radius:10px;padding:.34rem .6rem;font-size:.85rem}
.place:hover{border-color:var(--accent)}
.place.hot{border-color:var(--accent);background:var(--pill);color:var(--accent)}
.place .pn{font-size:.7rem;color:var(--hint)}
.place.hot .pn{color:var(--accent)}

/* homepage */
.masthead{text-align:center;margin:1rem 0 2rem}
.mission{color:var(--muted);font-size:1rem;max-width:480px;margin:.5rem auto 1.25rem}
.hero{font-size:var(--fs-display);font-weight:600;line-height:1.06;letter-spacing:-.015em;color:var(--ink);margin:.4rem 0 .6rem}
.herosub{color:var(--muted);font-size:1.02rem;max-width:48ch;margin:0 auto 1.25rem}
/* T3 — the first-run primary CTA: lead newcomers to VALUES, not navigation */
.valuescta{display:block;max-width:540px;margin:0 auto 1.1rem;padding:.85rem 1.1rem;text-align:center;background:var(--pill);border:1px solid var(--accent);border-radius:var(--radius);color:var(--accent);font-weight:600;text-decoration:none;transition:box-shadow .12s}
.valuescta:hover{box-shadow:0 0 0 1px var(--accent)}
.valuescta b{color:inherit}
/* T1 — the 5-second live demo: real options, the real engine, your order */
.homedemo{max-width:540px;margin:0 auto 1.25rem;padding:.9rem 1rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);text-align:left}
.hd-eyebrow{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}
.hd-chips{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.65rem}
.hd-list{display:flex;flex-direction:column;gap:.35rem}
.hd-row{display:grid;grid-template-columns:1.2rem 1fr auto auto;align-items:baseline;gap:.55rem;padding:.45rem .6rem;border:1px solid var(--line);border-radius:calc(var(--radius) - 6px);background:var(--bg);text-decoration:none}
.hd-row:hover{border-color:var(--accent)}
.hd-row.lead{border-color:var(--accent)}
.hd-rk{color:var(--hint);font-size:.8rem;text-align:right}
.hd-nm{color:var(--ink);font-weight:600;font-size:.92rem;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hd-why{color:var(--muted);font-size:.74rem;white-space:nowrap}
.hd-sc{color:var(--ink);font-weight:600;font-size:.95rem}
.hd-sc small{color:var(--hint);font-weight:400;font-size:.7rem}
.hd-status{color:var(--muted);font-size:.8rem;margin:.5rem 0 0;min-height:1.1em}
.hd-note{color:var(--hint);font-size:.76rem;margin:.25rem 0 0;line-height:1.45}
@media(max-width:560px){.hd-why{display:none}}
.wedge{display:block;text-align:left;max-width:540px;margin:0 auto 1.1rem;text-decoration:none;background:var(--surface);border:1px solid var(--accent);border-radius:var(--radius);padding:1.05rem 1.2rem;transition:box-shadow .12s}
.wedge:hover{box-shadow:0 0 0 1px var(--accent)}
.wedge-eyebrow{display:block;font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:.35rem}
.wedge-q{display:block;font-size:1.3rem;font-weight:600;color:var(--ink);line-height:1.2;margin-bottom:.35rem}
.wedge-s{display:block;color:var(--muted);font-size:.94rem;line-height:1.5;margin-bottom:.5rem}
.wedge-s b{color:var(--ink)}
.wedge .link{color:var(--accent);font-weight:500;font-size:.94rem}
.proof{display:flex;gap:.6rem;max-width:540px;margin:0 auto 1.1rem}
.proofcard{flex:1;display:flex;flex-direction:column;gap:.15rem;padding:.6rem .75rem;border:1px solid var(--line);border-left-width:3px;border-radius:calc(var(--radius) - 4px);background:var(--surface);text-decoration:none;transition:box-shadow .12s}
.proofcard:hover{box-shadow:0 0 0 1px var(--line)}
.proofcard.low{border-left-color:#b23a3a}
.proofcard.high{border-left-color:var(--accent)}
.proof-name{font-weight:600;color:var(--ink);font-size:.92rem}
.proof-tag{color:var(--muted);font-size:.8rem;line-height:1.35}
.proof-see{color:var(--accent);font-size:.76rem;font-weight:500;margin-top:.15rem}
@media(max-width:560px){.proof{flex-direction:column}}
.onramps{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;max-width:540px;margin:0 auto 1.1rem}
.onramp{display:flex;flex-direction:column;align-items:flex-start;gap:.12rem;padding:.6rem .7rem;border:1px solid var(--line);border-radius:calc(var(--radius) - 4px);background:var(--surface);text-decoration:none;transition:box-shadow .12s,border-color .12s}
.onramp:hover{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.or-i{font-size:1.25rem}
.or-t{font-weight:600;color:var(--ink);font-size:.9rem;line-height:1.15}
.or-d{color:var(--muted);font-size:.76rem;line-height:1.2}
@media(max-width:560px){.onramps{grid-template-columns:repeat(2,1fr)}}
.support{margin-top:1.75rem}
.maplens{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin:.8rem 0 .3rem}
.mll{font-size:.85rem;color:var(--muted)}
.mlchip{background:transparent;border:1px solid var(--line);border-radius:999px;padding:.25rem .7rem;cursor:pointer;font-size:.82rem;color:var(--muted);font-family:inherit}
.mlchip:hover{border-color:var(--accent)}
.mlchip.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.maplens-note{font-size:.82rem;color:var(--muted);margin:.2rem 0 .6rem}
.maplens-note a{color:var(--accent)}
.subgroup{margin:.5rem 0 .2rem}
.sgh{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:.35rem 0 .3rem}
.place.dim{opacity:.4}
.place.dim:hover{opacity:.85}
.newhere{text-align:center;font-size:.9rem;color:var(--muted);margin:0 0 1.75rem}
.newhere a{color:var(--accent)}
.seeall{text-align:center;font-size:.9rem;color:var(--muted);margin:.1rem 0 .5rem}
.seeall a{color:var(--accent);font-weight:500}
.hsearch{display:flex;gap:8px;max-width:500px;margin:0 auto}
.hsearch input{flex:1;font:inherit;padding:.7rem 1rem;border:.5px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--ink)}
.hsearch button{font:inherit;padding:.7rem 1.1rem;border:.5px solid var(--line);border-radius:var(--radius);background:var(--accent);color:#fff;cursor:pointer}
.doors{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:1.5rem}
.door{display:block;text-decoration:none;color:var(--ink);background:var(--surface);border:.5px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.2rem;transition:border-color .12s}
.door:hover{border-color:var(--accent)}
.door .dt{font-weight:500;margin-bottom:.25rem}
.door .ds{font-size:.85rem;color:var(--muted)}
.featured{display:block;text-decoration:none;background:var(--pill);border:.5px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.3rem;margin-bottom:1.75rem}
.featured .flabel{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}
.featured .ft{font-weight:500;font-size:1.15rem;color:var(--ink);margin:.3rem 0}
.featured .fs{color:var(--muted);font-size:.92rem;margin:0 0 .5rem}
.featured .link{color:var(--accent);font-size:.92rem}
.maphdr{font-size:.85rem;color:var(--muted);margin-bottom:.6rem}
.commonsmap{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin-bottom:1.75rem}
.ctype{display:flex;flex-direction:column;gap:.3rem;text-decoration:none;color:var(--ink);border:.5px solid var(--line);border-radius:var(--radius);padding:.85rem 1rem}
.ctype.live:hover{border-color:var(--accent)}
.ctype.growing .nm{color:var(--muted)}
.ctype.growing:hover{border-color:var(--accent)}
.ctype.growing .req{font-size:.78rem;color:var(--accent)}
.ckind{font:inherit;padding:.45rem .7rem;border:.5px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink)}
.ctype .nm{font-weight:500;font-size:.95rem}
.ctype .sub{font-size:.78rem;color:var(--hint)}
.badge{align-self:flex-start;font-size:.7rem;border-radius:999px;padding:1px 9px;background:var(--track);color:var(--muted)}
.badge.live{background:var(--pill);color:var(--accent)}
.principles{display:flex;flex-wrap:wrap;gap:.5rem 1.1rem;justify-content:center;border-top:.5px solid var(--line);padding-top:1.25rem;font-size:.85rem;color:var(--muted)}
.principles span::before{content:"· "}
.principles span:first-child::before{content:""}
.antiapp{text-align:center;margin:.75rem 0 0}
.antiapp a{color:var(--accent);font-size:.85rem;font-weight:500}
.contribute{text-align:center;color:var(--hint);font-size:.8rem;margin-top:1rem}
.contribute a{color:var(--accent)}

/* section headers (guides list, browse) */
.sectionh{font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;margin:.5rem 0 .3rem}
.sectionsub{color:var(--muted);font-size:.95rem;margin:0 0 1.5rem}
.guidecard{display:block;text-decoration:none;color:var(--ink);background:var(--surface);border:.5px solid var(--line);border-radius:var(--radius);padding:1.1rem 1.3rem;margin-bottom:.85rem;transition:border-color .12s}
.guidecard:hover{border-color:var(--accent)}
.guidecard .gt{font-weight:500;font-size:1.1rem}
.guidecard .gc{font-size:.78rem;color:var(--hint);margin:.15rem 0 .4rem}
.guidecard .gs{color:var(--muted);font-size:.9rem;margin:0}
.gsec{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:1.7rem 0 .6rem}
.guidecard.primer{background:var(--pill);border-color:var(--accent)}
.guidecard.primer .gt{font-size:1.2rem}
.guidecard.primer .link{color:var(--accent);font-size:.9rem;font-weight:500;display:inline-block;margin-top:.4rem}
.featured.primer{border-color:var(--accent)}
.explainmore{margin:.6rem 0 0}
.explainmore a{color:var(--accent);font-size:.85rem;font-weight:500}
.gd-cta{margin:2.2rem 0 .6rem}
/* Evidence-coverage meter */
.evcovline{margin:.1rem 0 .4rem}
.ev{display:inline-block;font-size:.72rem;font-weight:600;padding:.12rem .55rem;border-radius:7px;letter-spacing:.01em;cursor:help}
.ev-strong{background:var(--t-cert-bg);color:var(--t-cert-fg)}
.ev-partial{background:var(--t-ass-bg);color:var(--t-ass-fg)}
.ev-early{background:var(--track);color:var(--hint)}
/* Verdict card — a shareable, screenshot-friendly single-entity verdict */
.vcard{max-width:460px;margin:1rem auto;background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:1.6rem 1.5rem;text-align:center;box-shadow:0 6px 28px rgba(0,0,0,.10)}
.vc-brandbar{font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--accent);margin-bottom:1rem}
.vc-name{font-size:1.5rem;font-weight:600;line-height:1.2;color:var(--ink)}
.vc-brand{color:var(--muted);font-size:.92rem;margin-top:.15rem}
.vc-score{margin:1.1rem 0 .35rem;display:flex;flex-direction:column;align-items:center;gap:.45rem}
.vc-num{font-size:3rem;font-weight:600;line-height:1;color:var(--ink)}
.vc-num small{font-size:1rem;color:var(--hint);font-weight:400}
.vc-score .stier{font-size:.92rem;padding:.2rem .8rem}
.vc-basis{font-size:.78rem;color:var(--hint);margin-bottom:.7rem}
.vc-reason{font-size:.92rem;color:var(--ink);background:var(--pill);border-radius:11px;padding:.75rem .9rem;margin:.6rem 0 .2rem;text-align:left;line-height:1.5}
.vc-reason a{color:var(--accent);white-space:nowrap}
.vc-axis b{color:var(--ink)}
.vc-foot{font-size:.78rem;color:var(--muted);margin-top:1rem;letter-spacing:.01em}
.vc-actions{max-width:460px;margin:.9rem auto 0;display:flex;gap:.6rem;justify-content:center;flex-wrap:wrap}
.vc-hint{text-align:center;color:var(--hint);font-size:.82rem;margin:.7rem 0}
.vc-sharex{max-width:460px;margin:.5rem auto 0;display:flex;flex-direction:column;align-items:center;gap:.25rem;text-align:center}
.vc-dl{display:inline-block;color:var(--accent);font-size:.82rem;text-decoration:none;border-bottom:1px solid transparent}
.vc-dl:hover{border-bottom-color:var(--accent)}
.vc-sharenote{color:var(--hint);font-size:.76rem;line-height:1.4;max-width:36ch}
.savebtn.ghost{opacity:.82}
/* The wall of verdicts — static gallery at /c/ */
.ghead{margin:1.5rem 0 1rem}
.ghead h1{font-size:1.9rem;margin:0 0 .4rem;color:var(--ink)}
.ghead-sub{color:var(--muted);max-width:72ch;line-height:1.55;margin:0}
.gnav{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:1rem}
.gnav a{font-size:.8rem;color:var(--accent);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.2rem .6rem}
.gnav a:hover{border-color:var(--accent)}
.gn-n{color:var(--muted)}
.gsec{margin:1.6rem 0;scroll-margin-top:1rem}
.gsec-h{font-size:1.15rem;margin:0 0 .7rem;display:flex;align-items:baseline;gap:.5rem;color:var(--ink)}
.gsec-n{font-size:.78rem;font-weight:400;color:var(--muted)}
.ggrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.6rem}
.gt{display:flex;flex-direction:column;gap:.2rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;transition:box-shadow .12s}
.gt:hover{box-shadow:0 0 0 1px var(--accent)}
.gt-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}
.gt-name{color:var(--ink);font-size:.95rem;line-height:1.2}
.gt-brand{color:var(--muted);font-size:.78rem}
.gt-reason{color:var(--muted);font-size:.8rem;margin-top:.15rem}
.gt-reason b{color:var(--ink)}
.gfoot{margin:2rem 0 1rem;color:var(--muted);text-align:center}
.youneed{margin:.75rem 0}
.youneed-h{font-size:.9rem;font-weight:600;color:var(--ink);margin-bottom:.4rem}
.youselect{font-family:inherit;font-size:.9rem;padding:.3rem .5rem;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);margin-right:.5rem}
/* The 30-second values elicitation */
.quiz{max-width:540px;margin:1.5rem auto;text-align:center}
.quiz-eyebrow{font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}
.quiz-h{font-family:var(--font-display);font-size:var(--fs-xl);font-weight:600;letter-spacing:-.01em;margin:.2rem 0 .6rem;text-wrap:balance}
.quiz-sub{color:var(--muted);font-size:.95rem;line-height:1.55;max-width:46ch;margin:0 auto 1.3rem}
.quiz-actions{display:flex;gap:.9rem;align-items:center;justify-content:center;flex-wrap:wrap}
.quiz-skip{color:var(--muted);font-size:.85rem;text-decoration:none;cursor:pointer;background:none;border:none;font-family:inherit;padding:.3rem}
.quiz-skip:hover{color:var(--accent)}
.qprog{display:flex;align-items:center;justify-content:center;gap:.4rem;margin-bottom:1.5rem}
.qdot{width:8px;height:8px;border-radius:50%;background:var(--track)}
.qdot.done{background:var(--accent)}
.qdot.now{background:var(--accent);box-shadow:0 0 0 3px var(--pill)}
.qcount{font-size:.78rem;color:var(--hint);margin-left:.5rem}
.quiz-scene{font-family:var(--font-display);font-size:var(--fs-lg);color:var(--ink);margin:.4rem 0 1.3rem;line-height:1.3;text-wrap:balance}
.qchoices{display:grid;gap:.7rem}
.qchoice{font-family:inherit;font-size:1rem;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.1rem 1.2rem;cursor:pointer;text-align:left;transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}
.qchoice:hover{border-color:var(--accent);box-shadow:var(--e1);transform:translateY(-1px)}
.quiz-foot{color:var(--hint);font-size:.8rem;margin-top:1.2rem}
.qresult{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin:.5rem 0 1.2rem}
.qresult-chip{font-size:1.05rem;font-weight:500;color:var(--accent);background:var(--pill);border:1px solid var(--accent);border-radius:999px;padding:.4rem 1rem}
/* Domain landing page */
.domain-h{font-size:var(--fs-2xl)}
.dsh{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:1.4rem 0 .5rem}
.dgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:.6rem}
.dcard{display:flex;flex-direction:column;gap:.2rem;padding:.85rem 1rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);text-decoration:none;transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}
.dcard:hover{border-color:var(--accent);box-shadow:var(--e1);transform:translateY(-1px)}
.dcard-n{font-weight:600;color:var(--ink);font-size:.98rem}
.dcard-c{color:var(--muted);font-size:.8rem}
.dguides{display:flex;flex-direction:column;gap:.5rem}
.territory .tn.dlink{color:var(--ink);text-decoration:none}
.territory .tn.dlink:hover{color:var(--accent)}
.ont-th a{color:var(--ink);text-decoration:none}
.ont-th a:hover{color:var(--accent)}
/* D1 — verdict-forward entity (the decision moment) */
.vd-id .nm.big{font-family:var(--font-display)}
.vd-verdict{display:flex;align-items:center;gap:1.1rem;margin:.7rem 0 .2rem}
.vd-score{display:flex;align-items:baseline;gap:.15rem;flex:0 0 auto}
.vd-num{font-size:2.7rem;font-weight:600;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.vd-den{font-size:.9rem;color:var(--hint)}
.vd-fit{font-size:1rem;color:var(--ink)}
.vd-for{color:var(--muted)}
.vd-conf{font-size:.82rem;color:var(--muted);margin-top:.35rem;display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.vd-reason{border-left:3px solid var(--accent);background:var(--pill);border-radius:0 10px 10px 0;padding:.65rem .85rem;margin:.85rem 0 .2rem;font-size:.92rem;line-height:1.5}
.vd-rl{display:block;color:var(--ink)}
.vd-rn{display:block;color:var(--muted);margin-top:.25rem}
.vd-rn a{color:var(--accent);white-space:nowrap}
.vd-action{display:flex;align-items:center;justify-content:center;gap:.4rem;width:100%;box-sizing:border-box;padding:.8rem 1rem;margin:1rem 0;background:var(--accent);color:var(--bg);border-radius:14px;text-decoration:none;font-weight:600;font-size:1rem;transition:box-shadow var(--dur-2) var(--ease),transform var(--dur-2) var(--ease)}
.vd-action:hover{box-shadow:var(--e2);transform:translateY(-1px)}
.breakdown{margin:1.2rem 0 .5rem;border-top:1px solid var(--line);padding-top:.7rem}
.breakdown>summary{cursor:pointer;font-size:.9rem;color:var(--muted);list-style:none;padding:.2rem 0}
.breakdown>summary::-webkit-details-marker{display:none}
.breakdown>summary::before{content:'▸';color:var(--hint);margin-right:.4rem;display:inline-block;transition:transform var(--dur-1) var(--ease)}
.breakdown[open]>summary::before{transform:rotate(90deg)}
/* D2 — ambient values chip in the nav + footer reachability for demoted destinations */
.navvalues{display:inline-flex;align-items:center;gap:.3rem;text-decoration:none;color:var(--muted);font-size:.84rem;border:1px solid var(--line);border-radius:999px;padding:.18rem .6rem;transition:border-color var(--dur-1) var(--ease),color var(--dur-1) var(--ease)}
.navvalues:hover,.navvalues.active{border-color:var(--accent);color:var(--accent)}
.nv-ics{font-size:.95rem;letter-spacing:-.04em}
.nv-lbl{font-size:.8rem}
@media(max-width:600px){.nv-lbl{display:none}}
.footlinks{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;justify-content:center;margin-bottom:.9rem}
.footlinks a{color:var(--muted);font-size:.82rem;text-decoration:none}
.footlinks a:hover{color:var(--accent)}
/* R3 — breadcrumbs (orientation) */
.crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:.05rem .1rem;font-size:.82rem;margin:0 0 1.1rem;color:var(--muted)}
.crumb{color:var(--muted);text-decoration:none;padding:.1rem .2rem;border-radius:6px;white-space:nowrap}
a.crumb:hover{color:var(--accent)}
.crumb.cur{color:var(--ink);font-weight:500}
.crumb-sep{color:var(--hint);margin:0 .2rem}
/* Values Studio — continuous, expressive value allocation (the budget) */
.studio{max-width:560px}
.vbar{display:flex;height:36px;border-radius:999px;overflow:hidden;border:1px solid var(--line);margin:.4rem 0;background:var(--track)}
.vseg{display:flex;align-items:center;justify-content:center;min-width:0;background:var(--pill);border-right:1px solid var(--bg);font-size:.95rem}
.vseg:last-child{border-right:none}
.vseg.empty{flex:1;color:var(--hint);font-size:.8rem;background:transparent}
.vmix{font-size:.88rem;color:var(--muted);text-align:center;margin:.1rem 0 1rem}
.vstudio{display:flex;flex-direction:column;gap:.15rem;text-align:left;margin:.3rem 0 1.1rem}
.vrow{display:grid;grid-template-columns:1fr 132px 1.4rem;align-items:center;gap:.8rem;padding:.45rem 0;border-bottom:1px solid var(--line)}
.vrow:last-child{border-bottom:none}
.vlabel{display:flex;flex-direction:column;font-size:.95rem;color:var(--ink)}
.vblurb{font-size:.74rem;color:var(--hint)}
.vslider{width:100%;accent-color:var(--accent)}
.vval{font-variant-numeric:tabular-nums;color:var(--muted);text-align:right;font-size:.92rem}
@media(max-width:480px){.vrow{grid-template-columns:1fr auto}.vslider{grid-column:1/-1;order:3}.vval{order:2}}
/* You — local identity & data dignity */
.youcard{background:var(--surface);border:.5px solid var(--line);border-radius:var(--radius);padding:1.05rem 1.2rem;margin-bottom:1rem}
.youhd{font-weight:600;margin-bottom:.45rem}
.youhd .youmuted{font-weight:400}
.youmuted{color:var(--muted);font-size:.92rem;margin:.35rem 0}
.youmuted.small{font-size:.82rem}
.yousum{font-size:1.05rem;margin:.1rem 0 .7rem}
.youstats{display:flex;gap:.7rem;flex-wrap:wrap}
.youstat{display:flex;flex-direction:column;align-items:center;gap:.1rem;min-width:88px;padding:.7rem 1rem;background:var(--pill);border:.5px solid var(--line);border-radius:11px;text-decoration:none;color:var(--ink)}
.youstat:hover{border-color:var(--accent)}
.youstat .yn{font-size:1.4rem;font-weight:600;line-height:1.1}
.youstat .yl{font-size:.8rem;color:var(--muted)}
.yourow{display:flex;gap:.6rem;flex-wrap:wrap;margin:.5rem 0 .2rem}
.youbtn{font:inherit;font-size:.9rem;padding:.55rem .95rem;border:.5px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);cursor:pointer}
.youbtn:hover{border-color:var(--accent);color:var(--accent)}
.youbtn.warn{color:var(--warn);border-color:var(--warn)}
.youbtn.warn:hover{color:var(--surface);background:var(--warn);border-color:var(--warn)}
.you-danger{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;margin-top:.9rem;padding-top:.8rem;border-top:.5px solid var(--line)}
.youconfirm{font-size:.88rem;color:var(--warn);display:inline-flex;gap:.5rem;align-items:center;flex-wrap:wrap}
.youlist{margin:.4rem 0 .3rem;padding-left:1.15rem;color:var(--muted);font-size:.92rem}
.youlist li{margin:.25rem 0}
.youlist b{color:var(--ink)}

/* guide page (rendered markdown) */
.guidehead .gcat{font-size:.78rem;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);margin-bottom:.5rem}
.guidehead .gdisc{font-size:.85rem;color:var(--muted);font-style:italic;margin:0 0 1rem;border-left:2px solid var(--accent);padding-left:.8rem}
.guide-body{font-size:1rem;line-height:1.75}
.guide-body h1{font-size:1.7rem;font-weight:600;margin:.5rem 0 1rem}
.guide-body h2{font-size:1.25rem;font-weight:600;margin:2rem 0 .5rem}
.guide-body h3{font-size:1.05rem;font-weight:600;margin:1.5rem 0 .4rem}
.guide-body p{margin:.7rem 0}
.guide-body ul,.guide-body ol{margin:.7rem 0;padding-left:1.4rem}
.guide-body li{margin:.3rem 0}
.guide-body a{color:var(--accent)}
.guide-body blockquote{border-left:3px solid var(--accent);margin:1.2rem 0;padding:.3rem 0 .3rem 1.1rem;color:var(--ink);font-size:1.05rem}
.guide-body hr{border:none;border-top:.5px solid var(--line);margin:2rem 0}
.guide-body code{background:var(--pill);border-radius:5px;padding:.05rem .35rem;font-size:.9em}
.guide-body table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.92rem}
.guide-body th,.guide-body td{text-align:left;padding:.5rem .6rem;border-bottom:.5px solid var(--line);vertical-align:top}
.guide-body th{color:var(--muted);font-weight:500;font-size:.85rem}

/* explore tool */
.cats{margin-bottom:.5rem}
.catbtn{background:transparent;border:.5px solid var(--line);border-radius:10px;padding:.4rem 1rem;cursor:pointer;font-size:.95rem;color:var(--ink);font-family:inherit}
.catbtn:hover{border-color:var(--accent)}
.catbtn.active{background:var(--accent);color:#fff;border-color:var(--accent)}
.cattype{flex-basis:100%;font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;color:var(--hint);margin:.6rem 0 .05rem}
.cattype:first-child{margin-top:0}
/* Explore category picker — per-domain accordion (calm at 50+ categories) */
.catdom{display:flex;align-items:center;gap:.45rem;width:100%;background:transparent;border:none;border-top:.5px solid var(--line);padding:.5rem .1rem;cursor:pointer;font-family:inherit;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);text-align:left}
.catdom:first-child{border-top:none}
.catdom::before{content:"▸";font-size:.65rem;color:var(--hint)}
.catdom:hover{color:var(--ink)}
.catdom.open{color:var(--ink)}
.catdom.open::before{content:"▾"}
.catdom-n{margin-left:auto;color:var(--hint);font-size:.7rem;letter-spacing:0}
.catgroup{display:flex;flex-wrap:wrap;gap:.5rem;padding:.15rem 0 .55rem}
.catgroup.collapsed{display:none}
.catextra{display:flex;flex-wrap:wrap;gap:.5rem;border-top:.5px solid var(--line);padding-top:.6rem;margin-top:.2rem}
.savetag{background:var(--pill);color:var(--accent);border:.5px solid var(--line);border-radius:10px;padding:.4rem 1rem;cursor:pointer;font-size:.9rem;font-family:inherit}
.savetag.first{margin-left:auto}
.savetag:hover{border-color:var(--accent)}
.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:1.25rem 1.4rem;margin:1rem 0 1.5rem}
.themebar{margin:0 0 1rem;padding:0 0 .95rem;border-bottom:.5px solid var(--line)}
.themehd{font-size:.82rem;color:var(--muted);margin:0 0 .6rem}
.themechips{display:flex;flex-wrap:wrap;gap:.4rem}
.themechip{background:var(--surface);border:.5px solid var(--line);border-radius:999px;padding:.34rem .72rem;font-size:.85rem;color:var(--ink);cursor:pointer;font-family:inherit;display:inline-flex;align-items:center;gap:.3rem}
.themechip .ti{font-size:.95rem}
.themechip:hover{border-color:var(--accent)}
.themechip.on{background:var(--pill);border-color:var(--accent);color:var(--accent);font-weight:500}
.panel h2{font-size:.8rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem}
.presets{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}
.presets button{background:var(--pill);color:var(--accent);border:.5px solid var(--line);border-radius:999px;padding:.35rem .9rem;cursor:pointer;font-size:.85rem;font-family:inherit}
.presets button:hover{border-color:var(--accent)}
.sliders{display:flex;flex-direction:column;gap:1.15rem;margin-top:.5rem}
.sgh-theme{font-size:.78rem;font-weight:600;color:var(--ink);margin:0 0 .55rem;display:flex;align-items:center;gap:.35rem;letter-spacing:.01em}
.sliders-in{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem 1.8rem}
/* P3 — lead with the list: the granular per-factor sliders fold into a tasteful disclosure (themes + presets stay live above) */
.finetune{margin:.1rem 0 0;border:1px solid var(--line);border-radius:12px;background:var(--bg);overflow:hidden}
.finetune>summary{cursor:pointer;list-style:none;padding:.6rem .85rem;font-size:.86rem;color:var(--muted);display:flex;align-items:center;gap:.45rem}
.finetune>summary::-webkit-details-marker{display:none}
.finetune>summary::before{content:'▸';color:var(--hint);display:inline-block;transition:transform var(--dur-1) var(--ease)}
.finetune[open]>summary::before{transform:rotate(90deg)}
.finetune[open]>summary{border-bottom:1px solid var(--line);color:var(--ink)}
.finetune .sliders{padding:.9rem .9rem .3rem}
.finetune .hint{padding:0 .9rem .85rem;margin:0}
.slider{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:.3rem .6rem}
.slider label{grid-row:1;grid-column:1;font-size:.9rem;color:var(--ink);line-height:1.25}
.slider .v{grid-row:1;grid-column:2;text-align:right;color:var(--muted);font-size:.82rem;font-variant-numeric:tabular-nums;min-width:1ch}
.slider input[type=range]{grid-row:2;grid-column:1/-1;-webkit-appearance:none;appearance:none;width:100%;height:6px;border-radius:999px;background:var(--track);cursor:pointer;margin:.2rem 0 0}
.slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:var(--accent);border:2px solid var(--surface);box-shadow:var(--e1);cursor:pointer}
.slider input[type=range]::-moz-range-thumb{width:16px;height:16px;border:2px solid var(--surface);border-radius:50%;background:var(--accent);box-shadow:var(--e1);cursor:pointer}
.slider input[type=range]::-moz-range-progress{background:var(--accent);height:6px;border-radius:999px}
.slider input[type=range]::-moz-range-track{background:var(--track);height:6px;border-radius:999px}
.slider input[type=range]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.hint{font-size:.8rem;color:var(--hint);margin:.5rem 0 0}
.filters{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin-top:1rem;align-items:center}
.filters span{font-size:.85rem;color:var(--muted)}
.filters label{font-size:.85rem;display:inline-flex;align-items:center;gap:.3rem;cursor:pointer}
.find{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:1rem}
.find input,.find select,textarea{font:inherit;padding:.55rem .8rem;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);transition:border-color var(--dur-1) var(--ease),box-shadow var(--dur-1) var(--ease)}
.find input{flex:1 1 200px;min-width:0}
.find select{flex:1 1 150px;min-width:0;-webkit-appearance:none;appearance:none;padding-right:1.9rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='M2 4.5l4 4 4-4' stroke='%231d7a5a' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .7rem center}
.find input:focus,.find select:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
textarea{width:100%;resize:vertical;margin-top:.7rem;line-height:1.5}
.rx{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.2rem}
.profnote{margin-top:.9rem;font-size:.78rem;color:var(--hint);display:flex;align-items:center;gap:.5rem}
.profnote a{color:var(--accent);cursor:pointer}
.explain{margin-top:.8rem}
.explain summary{cursor:pointer;color:var(--accent);font-size:.83rem}
.explain p{margin:.5rem 0 0;font-size:.85rem;line-height:1.65;color:var(--muted)}
.explain b{font-weight:500;color:var(--ink)}
.filternote{font-size:.78rem;color:var(--hint);margin:.7rem 0 0;line-height:1.5}
.count{color:var(--muted);font-size:.85rem;margin:.5rem 0 1rem}
.reranked{margin-left:.6em;color:var(--accent);font-weight:600;opacity:1;transition:opacity .7s} /* T1 — the calm one-shot "✓ re-ranked" confirmation */
.reranked.out{opacity:0}
.card{background:var(--surface);border:.5px solid var(--line);border-radius:var(--radius);padding:1rem 1.25rem;margin-bottom:.85rem}
.card.click{cursor:pointer;transition:border-color .12s}
.card.click:hover{border-color:var(--accent)}
.card.click:focus-visible,.back:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.card .top{display:flex;justify-content:space-between;align-items:baseline;gap:1rem}
.card .nm{font-weight:500}
.card .nm.big{font-size:1.2rem}
.card .br{color:var(--muted);font-size:.85rem}
.card .sc{font-size:1.5rem;font-weight:600;line-height:1;white-space:nowrap}
.card .sc.big{font-size:2.1rem}
.card .sc small{font-size:.7rem;color:var(--muted);font-weight:400}
.why{color:var(--muted);font-size:.83rem;margin:.35rem 0 .5rem}
.bars{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.3rem 1.25rem;margin:.6rem 0}
.bar{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .55rem;font-size:.8rem;margin:.15rem 0}
.bar .bl{flex:0 0 auto;color:var(--muted)}
.bar .tr{flex:1 1 70px;min-width:60px;height:5px;background:var(--track);border-radius:3px;overflow:hidden}
.bar .fl{height:100%;background:var(--accent)}
.bar.assessed .fl{opacity:.5}
.bar .pv{flex:1 1 100%;order:5;text-align:left;color:var(--hint);font-size:.74rem;margin:0 0 .15rem}
.bandlbl{font-size:.62rem;font-weight:600;letter-spacing:.02em;padding:.04rem .4rem;border-radius:6px;margin-left:.3rem;vertical-align:middle}
.bd-hi{background:var(--t-cert-bg);color:var(--t-cert-fg)}
.bd-good{background:var(--pill);color:var(--accent)}
.bd-mid{background:var(--track);color:var(--muted)}
.bd-low{background:var(--track);color:var(--muted)}
.bd-poor{background:var(--track);color:var(--hint)}
.prov-src{color:var(--accent);text-decoration:none;white-space:nowrap}
.prov-src:hover{text-decoration:underline}
.prov-asof{color:var(--hint)}
.tier{font-size:.58rem;font-weight:500;letter-spacing:.02em;padding:.05rem .38rem;border-radius:6px;white-space:nowrap;text-transform:lowercase}
.t-measured{background:var(--t-meas-bg);color:var(--t-meas-fg)}
.t-certified{background:var(--t-cert-bg);color:var(--t-cert-fg)}
.t-assessed{background:var(--t-ass-bg);color:var(--t-ass-fg)}
.bar.bmiss .bl{flex:0 0 84px}
.bar.bmiss .pv{flex:1;text-align:left;font-style:italic;color:var(--hint)}
.sc.low{opacity:.5}
.tierkey{font-size:.66rem;color:var(--hint);margin:.5rem 0 .1rem;display:flex;gap:.3rem;align-items:center;flex-wrap:wrap;line-height:2}
.stier{font-size:.62rem;font-weight:500;padding:.05rem .42rem;border-radius:6px;white-space:nowrap}
.st-hi{background:var(--t-cert-bg);color:var(--t-cert-fg)}
.st-good{background:var(--pill);color:var(--accent)}
.st-mid{background:var(--t-ass-bg);color:var(--t-ass-fg)}
.st-low{background:var(--track);color:var(--ink)}
.listend{text-align:center;color:var(--hint);font-size:.8rem;margin:1.4rem 0 .3rem;padding-top:1rem;border-top:.5px solid var(--line)}
.weakest{color:var(--muted);font-size:.8rem;margin:-.15rem 0 .5rem}
.weakest b{color:var(--ink)}
.capnote{color:var(--t-ass-fg);background:var(--t-ass-bg);font-size:.8rem;padding:.32rem .6rem;border-radius:8px;margin:-.1rem 0 .55rem}
.capnote b{color:var(--t-ass-fg)}
.card.tied .why::before{content:"≈ tied · ";color:var(--hint)}
.alg{font-size:.8rem;color:var(--muted);margin-top:.5rem;display:flex;gap:.4rem;align-items:flex-start}
.back{display:inline-flex;align-items:center;gap:.3rem;margin-bottom:1rem;color:var(--accent);cursor:pointer;font-size:.9rem;text-decoration:none}
.mfoot{color:var(--hint);font-size:.78rem;margin-top:1rem;border-top:.5px solid var(--line);padding-top:.75rem;display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.mfoot a{color:var(--accent)}
.alts-h{font-size:.95rem;font-weight:600;margin:1.75rem 0 .25rem}
.alts-sub{color:var(--muted);font-size:.83rem;margin:0 0 .9rem}
.savebtn{background:transparent;border:.5px solid var(--line);border-radius:999px;padding:.25rem .7rem;cursor:pointer;font-size:.8rem;color:var(--muted);font-family:inherit;white-space:nowrap}
.savebtn:hover{border-color:var(--accent)}
.savebtn.on{color:var(--accent);border-color:var(--accent)}
.catbadge{font-size:.72rem;color:var(--hint);border:.5px solid var(--line);border-radius:999px;padding:.1rem .5rem;margin-left:.5rem;white-space:nowrap}
.attr{color:var(--hint);font-size:.78rem;margin-top:1.5rem}
footer{color:var(--hint);font-size:.8rem;margin-top:2.5rem;text-align:center;line-height:1.8;border-top:.5px solid var(--line);padding-top:1.5rem}
footer a{color:var(--accent)}

/* Phase C / C1 — richer record: description, focuses, links */
.desc{font-size:.92rem;color:var(--ink);margin:.4rem 0 .55rem;line-height:1.6}
.focuses{display:flex;flex-wrap:wrap;gap:.4rem;margin:.1rem 0 .7rem}
.focus{font-size:.74rem;color:var(--muted);background:var(--pill);border-radius:999px;padding:.15rem .65rem}
.links{display:flex;flex-wrap:wrap;gap:.4rem .9rem;margin:.7rem 0 .1rem}
.links a{color:var(--accent);font-size:.83rem;text-decoration:none}
.links a:hover{text-decoration:underline}

/* Phase C / C2 — ontology browse (simple surface, deep index) */
.ont-legend{font-size:.83rem;color:var(--muted);margin:0 0 1.25rem}
.ont-type{margin-bottom:1.5rem}
.ont-th{font-size:1.05rem;font-weight:600;margin:0 0 .6rem;padding-bottom:.3rem;border-bottom:.5px solid var(--line)}
.ont-cats{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.35rem}
.ont-cat{text-decoration:none;font-size:.85rem;border-radius:999px;padding:.25rem .75rem;border:.5px solid var(--line)}
.ont-cat.live{background:var(--pill);color:var(--accent)}
.ont-cat.live:hover{border-color:var(--accent)}
.ont-cat.growing{color:var(--hint);background:transparent}
.ont-cat.growing:hover{border-color:var(--accent);color:var(--muted)}

/* Phase C / C4 — category→guide link + posture-before-plan cue */
.guidelink{display:block;background:var(--pill);border:.5px solid var(--line);border-radius:var(--radius);padding:.7rem 1rem;margin-bottom:1rem;text-decoration:none;color:var(--ink);font-size:.9rem}
.guidelink:hover{border-color:var(--accent)}
.posture{font-size:.83rem;color:var(--muted);background:var(--pill);border-radius:10px;padding:.6rem .85rem;margin:.2rem 0 .7rem;line-height:1.55}
.posture b{color:var(--ink);font-weight:500}

/* UX flagship — first-run welcome (calm, dismissible, once) */
.onboard{background:var(--pill);border:.5px solid var(--accent);border-radius:var(--radius);padding:1rem 1.2rem;margin-bottom:1rem;font-size:.9rem;color:var(--ink);line-height:1.65}
.onboard b{font-weight:600}

/* The Lab — experimental features */
.lab-top{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.labtoggle{min-width:48px;text-align:center}
.fingerprint{display:flex;align-items:center;gap:.6rem;margin-bottom:1rem;font-size:.76rem;color:var(--muted)}
.fp-bars{display:flex;align-items:flex-end;gap:3px;height:26px}
.fp-bar{width:8px;height:26px;display:flex;align-items:flex-end;background:var(--track);border-radius:2px;overflow:hidden}
.fp-bar i{display:block;width:100%;background:var(--accent);border-radius:2px;transition:height .35s cubic-bezier(.2,.7,.2,1)}
.pick-callout{background:var(--pill);border:.5px solid var(--accent);border-radius:var(--radius);padding:.7rem 1rem;margin-bottom:1rem;font-size:.9rem;color:var(--ink)}
.pick-callout b{font-weight:600}
.explainlab{margin:.1rem 0 .5rem}
.ex-wrap{margin-top:.5rem}
.ex-note{font-size:.8rem;color:var(--muted);margin:0 0 .5rem}
.ex-row{display:grid;grid-template-columns:92px 1fr 46px;align-items:center;gap:.6rem;font-size:.8rem;margin:.25rem 0}
.ex-l{color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ex-tr{height:6px;background:var(--track);border-radius:3px;overflow:hidden}
.ex-fl{display:block;height:100%;background:var(--accent);transition:width .35s cubic-bezier(.2,.7,.2,1)}
.ex-v{text-align:right;color:var(--hint);font-size:.74rem;font-variant-numeric:tabular-nums}
.posture-q{font-size:.83rem;color:var(--muted);margin-bottom:.5rem}
.posture-btns{display:flex;flex-wrap:wrap;gap:.45rem}
.posture-resp{font-size:.83rem;color:var(--accent);margin-top:.55rem;min-height:1.1em}

/* The faceted index — Discover */
.facet-h{font-size:.85rem;color:var(--muted);margin:1.3rem 0 .5rem;font-weight:500}
.facets{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.4rem}
.facet{text-decoration:none;font-size:.85rem;border-radius:999px;padding:.3rem .8rem;border:.5px solid var(--line);color:var(--ink);background:var(--surface)}
.facet:hover{border-color:var(--accent)}
.facet.on{background:var(--accent);color:#fff;border-color:var(--accent)}
.facet .fc{font-size:.72rem;color:var(--hint);margin-left:.25rem}
.facet.on .fc{color:rgba(255,255,255,.85)}
.facet-more{margin:-.1rem 0 .4rem}
.facet-more>summary{cursor:pointer;color:var(--accent);font-size:.82rem;padding:.2rem 0;list-style:none}
.facet-more>summary::-webkit-details-marker{display:none}
.facet-more>summary::before{content:"＋ "}
.facet-more[open]>summary{color:var(--muted)}
.facet-more[open]>summary::before{content:"－ "}
.facet-more .facets{margin-top:.5rem}

/* Compare mode + floating action button */
.cmpfab{position:fixed;bottom:1.1rem;right:1.1rem;z-index:50;background:var(--accent);color:#fff;border-radius:999px;padding:.6rem 1.1rem;font-size:.9rem;text-decoration:none;box-shadow:0 4px 16px rgba(0,0,0,.15)}
.cmp-wrap{overflow-x:auto;margin-top:.5rem}
.cmp{width:100%;border-collapse:collapse;font-size:.85rem;min-width:440px}
.cmp th,.cmp td{padding:.55rem .6rem;border-bottom:.5px solid var(--line);text-align:left;vertical-align:middle}
.cmp-nm{font-weight:500}
.cmp-br{font-size:.74rem;color:var(--hint)}
.cmp-x{margin-top:.35rem;font-size:.72rem;padding:.15rem .55rem}
.cmp-cl{color:var(--muted);white-space:nowrap}
.cmp-bar{display:inline-block;width:56px;height:6px;background:var(--track);border-radius:3px;overflow:hidden;vertical-align:middle}
.cmp-bar span{display:block;height:100%;background:var(--accent)}
.cmp-v{font-variant-numeric:tabular-nums;color:var(--muted);font-size:.8rem}
.cmp-na{color:var(--hint)}

/* mobile — thumb-friendly tap targets + clean stacking for the shop-aisle use case (≥44px hit areas) */
@media (max-width:600px){
  .wrap{padding:1rem .85rem 3.5rem}
  .nav{gap:.5rem .8rem;margin-bottom:1.1rem;padding-bottom:.8rem}
  .navtoggle{display:inline-flex;min-height:44px;order:3}
  .navback{order:1}
  .wordmark{order:2;flex:1 1 auto}
  .navlinks{order:5;flex-basis:100%;display:none;flex-direction:column;gap:0;margin-top:.4rem;border-top:.5px solid var(--line)}
  .navlinks a{font-size:1rem;padding:.7rem .2rem;border-bottom:.5px solid var(--line)}
  .nav.open .navlinks{display:flex}
  .navutil{order:6;flex-basis:100%;display:none;justify-content:flex-start;gap:1.1rem;margin-top:.5rem}
  .nav.open .navutil{display:inline-flex}
  .panel{padding:1rem .95rem}
  .catbtn,.facet,.themechip,.presets button,.savetag{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .themechip{padding:.5rem .9rem;font-size:.9rem}
  .catbtn,.facet,.presets button{padding:.6rem 1rem}
  .catdom{min-height:44px;padding:.7rem .1rem}
  .find input,.find select{flex:1 1 100%}
  .guide-body{font-size:1.02rem}
  .cmpfab{bottom:.8rem;right:.8rem}
  .navyou{min-height:36px}
  .youbtn{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
  .hero{font-size:1.55rem}
  .wedge-q{font-size:1.15rem}
}
/* R5 — mobile bottom tab bar (thumb-reachable; the hamburger retires; utility stays in the top bar) */
@media (max-width:600px){
  .navtoggle{display:none}
  .navlinks{display:none}
  .navutil{order:3;display:inline-flex;flex-basis:auto;justify-content:flex-end;gap:.7rem;margin-top:0}
  .navyou{display:none}
  .tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:70;background:var(--surface);border-top:1px solid var(--line);justify-content:space-around;padding:.2rem .2rem;padding-bottom:calc(.2rem + env(safe-area-inset-bottom,0px))}
  .tab{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:.3rem 0;min-height:48px;justify-content:center;text-decoration:none;color:var(--muted);font-size:.66rem}
  .tab-i{font-size:1.2rem;line-height:1}
  .tab.active{color:var(--accent)}
  .wrap{padding-bottom:5rem}
  .totop{bottom:5rem}
}
