:root{color-scheme:light;--paper:oklch(95.5% .018 83);--ink:oklch(20.5% .026 80);--ink-muted:oklch(40.5% .025 80);--ink-soft:oklch(56% .022 82);--surface:oklch(92.5% .02 83);--surface-2:oklch(98.5% .011 86);--surface-3:oklch(87.5% .026 82);--panel:oklch(97.5% .014 86);--panel-raised:oklch(99.5% .008 88);--panel-inverse:oklch(20.5% .026 82);--panel-inverse-2:oklch(24.5% .03 82);--inverse-ink:oklch(96.5% .012 86);--inverse-muted:oklch(80% .018 84);--canvas:oklch(90% .024 86);--line:oklch(70% .03 78);--line-strong:oklch(50% .04 72);--line-soft:oklch(74% .026 80/.58);--accent:oklch(64% .15 64);--accent-strong:oklch(52% .15 58);--on-accent:oklch(99% .01 88);--label-ink:oklch(48% .14 56);--tracking-label:.07em;--num:tabular-nums lining-nums;--accent-2:oklch(54% .11 152);--accent-subtle:oklch(82% .05 72);--point-color:oklch(66% .18 52);--danger:oklch(54% .15 32);--success:oklch(55% .1 148);--warning:oklch(62% .14 58);--info:oklch(48% .1 220);--selected-stroke:oklch(55% .16 250);--map-outline:oklch(58% .03 84);--workbench:oklch(97.5% .014 86);--workbench-panel:oklch(99.5% .008 88);--workbench-ink:var(--ink);--workbench-muted:var(--ink-muted);--workbench-line:oklch(69% .03 78/.62);--focus-ring:oklch(66% .16 64);--theme-color:#f1eadb;--body-bg:radial-gradient(circle at 16% 0%, oklch(78% .1 66/.36), transparent 30rem), radial-gradient(circle at 86% 16%, oklch(68% .07 156/.24), transparent 28rem), linear-gradient(135deg, var(--paper), var(--surface));--map-canvas-bg:radial-gradient(circle at 50% 42%, oklch(94.5% .016 86), oklch(87.5% .026 84) 76%), var(--canvas);--shadow:0 18px 50px oklch(23% .03 72/.14), 0 2px 8px oklch(23% .03 72/.1);--shadow-strong:0 28px 80px oklch(22% .035 72/.22), 0 6px 18px oklch(23% .03 72/.15);--shadow-subtle:0 8px 22px oklch(23% .03 72/.1), 0 1px 4px oklch(23% .03 72/.08);--ease-out-back:cubic-bezier(.25, 1, .5, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-premium:cubic-bezier(.32, .72, 0, 1)}:root[data-theme=dark]{color-scheme:dark;--paper:oklch(17.5% .016 90);--ink:oklch(94.5% .012 86);--ink-muted:oklch(80% .018 84);--ink-soft:oklch(70% .018 84);--surface:oklch(14.5% .014 90);--surface-2:oklch(22.5% .018 86);--surface-3:oklch(27.5% .02 84);--panel:oklch(21.5% .016 88);--panel-raised:oklch(26.5% .018 86);--panel-inverse:oklch(12.5% .014 90);--panel-inverse-2:oklch(17.5% .018 88);--inverse-ink:oklch(96% .012 86);--inverse-muted:oklch(80% .018 84);--canvas:oklch(20.5% .016 88);--line:oklch(42% .016 84);--line-strong:oklch(60% .026 82);--line-soft:oklch(50% .02 84/.6);--accent:oklch(80% .15 72);--accent-strong:oklch(80% .15 72);--on-accent:oklch(16% .02 84);--accent-2:oklch(78% .11 156);--accent-subtle:oklch(45% .075 72);--point-color:oklch(84% .16 74);--danger:oklch(70% .15 32);--success:oklch(76% .11 150);--warning:oklch(80% .14 70);--info:oklch(74% .1 230);--label-ink:oklch(83% .13 74);--selected-stroke:oklch(80% .15 250);--map-outline:oklch(60% .024 84);--workbench:oklch(19.5% .015 88);--workbench-panel:oklch(24.5% .018 86);--workbench-ink:var(--ink);--workbench-muted:var(--ink-muted);--workbench-line:oklch(46% .02 84/.7);--focus-ring:oklch(80% .15 72);--theme-color:#1a1712;--body-bg:radial-gradient(circle at 18% -4%, oklch(34% .09 62/.4), transparent 32rem), radial-gradient(circle at 88% 14%, oklch(32% .07 160/.3), transparent 32rem), linear-gradient(135deg, var(--paper), var(--surface));--map-canvas-bg:radial-gradient(circle at 50% 42%, oklch(24.5% .018 88), oklch(16.5% .014 90) 72%), var(--canvas);--shadow:0 18px 50px oklch(3% .006 84/.46), 0 2px 8px oklch(3% .006 84/.3);--shadow-strong:0 28px 80px oklch(3% .006 84/.6), 0 6px 18px oklch(3% .006 84/.38);--shadow-subtle:0 8px 22px oklch(3% .006 84/.34), 0 1px 4px oklch(3% .006 84/.24)}*{box-sizing:border-box}html{background:var(--surface);color:var(--ink);scroll-behavior:smooth;font-family:Avenir Next,Optima,Candara,Trebuchet MS,sans-serif;font-size:16px;line-height:1.5}body{background:var(--body-bg);min-width:320px;margin:0;position:relative}button,select{font:inherit;color:inherit}button,.state-tile{cursor:pointer}button:focus-visible,select:focus-visible,.state-tile:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}.skip-link{z-index:50;background:var(--accent);color:oklch(17% .025 105);border-radius:.4rem;padding:.75rem 1rem;font-weight:800;position:fixed;top:1rem;left:1rem;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{color:var(--label-ink);letter-spacing:var(--tracking-label);text-transform:uppercase;margin:0 0 .35rem;font-size:.74rem;font-weight:700}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,Charter,serif;font-weight:400}h1{letter-spacing:0;margin-bottom:.5rem;font-size:2.5rem;line-height:1.15}h2{letter-spacing:0;margin-bottom:.5rem;font-size:1.5rem;line-height:1.25}.app-shell{z-index:2;width:min(100%,1840px);margin:0 auto;padding:clamp(.6rem,1.4vw,1rem);position:relative}.topbar{border-bottom:1px solid var(--line-soft);background:color-mix(in oklch, var(--panel) 82%, transparent);grid-template-columns:minmax(0,1fr) minmax(220px,420px);align-items:center;gap:.75rem;min-height:58px;padding:.45rem clamp(.35rem,1vw,.75rem);display:grid}.topbar-brand{flex-direction:column;justify-content:center;display:flex}.topbar-actions{justify-content:flex-end;align-items:center;gap:1rem;display:flex}.topbar h1{color:var(--ink);margin:0;font-size:1.45rem}.audit-strip{flex-wrap:wrap;justify-self:end;gap:.45rem;display:flex}.audit-strip span{border:1px solid var(--line);background:color-mix(in oklch, var(--workbench) 78%, var(--ink) 10%);min-height:36px;color:var(--workbench-muted);border-radius:.45rem;align-items:center;padding:0 .75rem;font-size:.86rem;display:inline-flex;box-shadow:0 8px 18px oklch(25% .03 70/.18)}.audit-strip strong{color:var(--workbench-ink);font-variant-numeric:tabular-nums;margin-right:.35rem}.help-button,.theme-toggle{border:1px solid var(--line-strong);background:var(--panel-raised);min-height:44px;color:var(--ink);cursor:pointer;box-shadow:var(--shadow-subtle);transition:transform .18s var(--ease-premium), border-color .18s var(--ease-premium), background .18s var(--ease-premium);font-weight:800}.help-button:hover,.theme-toggle:hover{border-color:var(--accent);transform:translateY(-1px)}.help-button{width:44px;height:44px;color:var(--accent);border-radius:50%;font-size:1.1rem}.theme-toggle{border-radius:999px;align-items:center;gap:.45rem;min-width:92px;padding:0 .75rem 0 .45rem;font-size:.82rem;display:inline-flex}.theme-toggle [data-theme-toggle-icon]{background:var(--accent);width:30px;height:30px;color:var(--panel-inverse);border-radius:999px;place-items:center;font-size:.72rem;font-weight:950;display:inline-grid}.workspace{grid-template-columns:minmax(230px,280px) minmax(0,1fr) minmax(300px,360px);align-items:start;gap:clamp(.85rem,1.2vw,1.4rem);padding-top:.75rem;padding-bottom:1.25rem;display:grid;container-type:inline-size}.control-rail,.inspector{gap:1rem;display:grid}.control-rail-toggle{display:none}.control-block,.inspector-card{background:var(--panel-raised);border:1px solid var(--line);min-width:0;box-shadow:var(--shadow-subtle);overflow-wrap:anywhere;border-radius:12px;padding:1.15rem}.control-block h2{color:var(--ink);margin-bottom:1rem}.field-label,.panel-label,.eyebrow{color:var(--label-ink);letter-spacing:var(--tracking-label);text-transform:uppercase;font-size:.82rem;font-weight:700}.segmented{grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;display:grid}.segmented button{border:1px solid var(--line);background:var(--panel);min-height:48px;color:var(--ink);transition:background .18s var(--ease-premium), border-color .18s var(--ease-premium), transform .18s var(--ease-premium);border-radius:10px}.segmented button.is-active{background:var(--accent);border-color:color-mix(in oklch, var(--accent) 72%, var(--line));color:var(--panel-inverse);font-weight:700}select{border:1px solid var(--line-strong);background:var(--panel);width:100%;min-width:0;max-width:100%;min-height:46px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:10px;margin-top:.5rem;padding:0 .85rem;font-size:.95rem;overflow:hidden}.layer-help,.microcopy{color:var(--ink-muted);overflow-wrap:anywhere;margin:.75rem 0 0;font-size:.86rem;line-height:1.5}.recipe-list{gap:.6rem;display:grid}.recipe-list button{text-align:left;background:var(--panel);border:1px solid var(--line);width:100%;color:var(--ink);border-radius:10px;padding:.85rem}.map-stage{border:1px solid var(--workbench-line);background:var(--workbench);box-shadow:var(--shadow);border-radius:14px;flex-direction:column;padding:.7rem;display:flex;position:relative;overflow:hidden;container-type:inline-size}.map-header{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench-panel) 92%, var(--accent) 4%);border-radius:10px;order:1;grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) minmax(220px,.95fr);align-items:stretch;gap:.55rem .75rem;padding:.75rem .85rem;display:grid}.map-header>*,.map-header-info,.map-header-badges,.map-header-controls,.overlay-switch{min-width:0;max-width:100%}.map-header-info strong{color:var(--workbench-ink);max-width:36ch;font-size:1.08rem;line-height:1.12;display:block}.map-header-badges,.map-mode-panel,.overlay-switch{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench) 84%, transparent);border-radius:10px;padding:.55rem}.map-header-info p{display:none}.layer-meta{flex-wrap:wrap;gap:.45rem;margin-top:.45rem;display:flex}.layer-meta span{border:1px solid var(--workbench-line);min-height:28px;color:color-mix(in oklch, var(--workbench-ink) 88%, var(--accent));background:color-mix(in oklch, var(--workbench-panel) 88%, var(--accent) 8%);border-radius:999px;align-items:center;padding:0 .55rem;font-size:.76rem;font-weight:800;display:inline-flex}.map-mode-panel{grid-template-columns:minmax(112px,.7fr) minmax(0,1.3fr);gap:.55rem;display:grid}.map-control-cluster,.compare-cluster{gap:.4rem;min-width:0;display:grid}.control-kicker{color:var(--workbench-muted);text-transform:uppercase;font-size:.7rem;font-weight:900}.compare-label-row{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.map-mode-panel select{min-width:0;min-height:38px;margin:0;padding:0 .65rem;font-size:.82rem}.map-header-controls{flex-wrap:wrap;justify-content:flex-start;gap:.35rem;display:flex}.map-header-controls button{border:1px solid color-mix(in oklch, var(--line-strong) 74%, transparent);background:color-mix(in oklch, var(--workbench-panel) 94%, transparent);color:var(--workbench-ink);border-radius:10px;flex:4.8rem;min-height:38px;padding:0 .75rem;font-size:.84rem;font-weight:760}.map-header-controls button.is-active{background:var(--accent);border-color:var(--accent);color:oklch(16% .025 82);font-weight:700}.overlay-switch{gap:.45rem;display:grid}.overlay-switch summary{color:var(--workbench-muted);text-transform:uppercase;cursor:pointer;font-size:.72rem;font-weight:850;list-style:none}.overlay-switch summary::-webkit-details-marker{display:none}.overlay-switch summary:after{content:"Show";float:right;color:var(--accent-2);font-size:.72rem}.overlay-switch[open] summary:after{content:"Hide"}.overlay-switch div{flex-wrap:wrap;gap:.35rem;display:flex}.overlay-switch button{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench-panel) 92%, transparent);min-height:32px;color:var(--workbench-ink);border-radius:999px;padding:0 .7rem;font-size:.74rem;font-weight:760}.overlay-switch button.is-active{border-color:var(--accent-2);background:color-mix(in oklch, var(--accent-2) 16%, var(--workbench-panel));color:var(--workbench-ink)}@container (width<=760px){.map-header{grid-template-columns:minmax(0,1fr) minmax(210px,.75fr)}.map-header-badges{grid-column:1}.overlay-switch{grid-area:2/2}.map-mode-panel{grid-area:1/2;grid-template-columns:1fr}.source-badge{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}}.map-reading-guide{background:color-mix(in oklch, var(--workbench-panel) 86%, transparent);border:1px solid var(--workbench-line);color:var(--workbench-muted);border-radius:10px;order:2;align-items:baseline;gap:.65rem;margin:.55rem 0 0;padding:.45rem .65rem;font-size:.8rem;display:flex}.map-reading-guide strong{color:var(--accent);text-transform:uppercase;letter-spacing:0;flex:none;font-size:.78rem}.map-reading-guide span{overflow-wrap:anywhere;min-width:0}.map-error{border:1px solid color-mix(in oklch, var(--danger) 58%, var(--line));background:color-mix(in oklch, var(--danger) 12%, var(--panel-raised));color:var(--ink);border-radius:10px;margin:.55rem 0 0;padding:.75rem 1rem;font-size:.9rem;font-weight:700}.evidence-band{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);align-items:start;gap:clamp(.9rem,1.3vw,1.5rem);margin:clamp(1rem,1.8vw,1.75rem) 0 0;display:grid}.chapter-panel{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench-panel) 88%, var(--accent-2) 5%);color:var(--workbench-ink);border-radius:14px;grid-template-columns:1fr;gap:.85rem;padding:clamp(1rem,1.5vw,1.35rem);display:grid}.chapter-panel h2{color:var(--workbench-ink);margin-bottom:.35rem;font-family:Avenir Next,Optima,Candara,Trebuchet MS,sans-serif;font-size:1.25rem;font-weight:900}.chapter-panel p{max-width:76ch;color:var(--workbench-muted);margin:0;font-size:.88rem}.coverage-summary{border:1px solid var(--line);background:var(--panel-raised);min-height:34px;color:var(--ink);border-radius:999px;align-items:center;gap:.5rem;padding:0 .75rem;font-size:.82rem;font-weight:850;display:inline-flex}.coverage-summary strong{color:var(--accent)}.chapter-progress{background:color-mix(in oklch, var(--line) 46%, transparent);border-radius:999px;width:100%;height:7px;display:block;overflow:hidden}.chapter-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;display:block}.chapter-progress-copy{display:none}.chapter-coverage-meter{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench) 86%, transparent);border-radius:10px;gap:.45rem;padding:.75rem;display:grid}.chapter-coverage-meter div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.5rem;display:flex}.chapter-coverage-meter strong{color:var(--workbench-ink);font-size:.95rem}.chapter-coverage-meter span{color:var(--accent);font-size:.8rem;font-weight:850}.chapter-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:0;display:grid}.chapter-facts div{border:1px solid var(--workbench-line);background:color-mix(in oklch, var(--workbench) 86%, transparent);border-radius:10px;padding:.75rem}.chapter-facts dt{color:var(--accent)}.chapter-facts dd{color:var(--workbench-ink);padding-top:.25rem;font-size:.95rem}.chapter-chip-group{gap:.45rem;display:grid}.chapter-chip-group.missing{display:none}.chapter-chip-group strong{color:var(--accent);letter-spacing:var(--tracking-label,.06em);text-transform:uppercase;font-size:.72rem;font-weight:700}.chapter-chip-group div{flex-wrap:wrap;gap:.4rem;display:flex}.chapter-chip-group span{border:1px solid color-mix(in oklch, var(--accent) 32%, var(--line));background:color-mix(in oklch, var(--accent) 12%, var(--panel-raised));min-height:30px;color:var(--ink);border-radius:999px;align-items:center;padding:0 .6rem;font-size:.76rem;font-weight:600;display:inline-flex}.chapter-chip-group.missing span{border-color:color-mix(in oklch, var(--warning) 40%, var(--line));background:color-mix(in oklch, var(--warning) 14%, var(--panel-raised))}.tournament-board{border:1px solid color-mix(in oklch, var(--line-strong) 76%, transparent);background:var(--panel);border-radius:14px;grid-template-columns:1fr;gap:1rem;padding:clamp(1rem,1.5vw,1.35rem);display:grid}.tournament-heading h2{color:var(--ink);margin:0;font-size:1.15rem}.tournament-intro{max-width:64ch;color:var(--ink-muted);margin:.4rem 0 0;font-size:.86rem;line-height:1.5}.tournament-list{grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:.5rem;display:grid}.tournament-row{border:1px solid var(--line);background:var(--panel-raised);min-height:58px;color:var(--ink);text-align:left;border-radius:8px;gap:.25rem;padding:.5rem .6rem;display:grid}.tournament-row span{color:var(--accent);letter-spacing:0;font-size:.7rem;font-weight:900}.tournament-row strong{color:var(--ink);font-size:.9rem}.tournament-row em{color:var(--ink-muted);font-size:.76rem;font-style:normal;font-weight:800}.tournament-row.is-active{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 18%, var(--panel-raised));box-shadow:var(--shadow-subtle)}.tournament-row.is-cut{border-color:var(--danger)}.tournament-row.is-cut em:after{content:" accepted";color:var(--danger)}.tournament-row.is-winner{box-shadow:0 0 0 3px oklch(72% .14 75/.32), var(--shadow-subtle)}.user-bracket{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.85rem 1.25rem;padding-top:1rem;display:grid}.user-bracket>div:first-child,.bracket-share{grid-column:1/-1}.user-bracket h3{color:var(--ink);margin:0 0 .25rem;font-size:1rem}.user-bracket p{color:var(--ink-muted);margin:0}.bracket-actions{flex-wrap:wrap;gap:.5rem;display:flex}.bracket-actions button{min-height:42px;color:var(--ink);background:oklch(97% .016 88);border:1px solid oklch(56% .05 76);border-radius:999px;padding:0 .8rem;font-weight:850}.bracket-actions button:not(:disabled):hover{border-color:var(--accent);background:oklch(91% .045 78)}.bracket-actions button:disabled{cursor:not-allowed;opacity:.5}.user-bracket-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.user-bracket-summary div{border:1px solid var(--line);background:var(--panel-raised);border-radius:10px;padding:.75rem}.user-bracket-summary strong{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:.74rem}.bracket-share{gap:.45rem;display:grid}.share-field{grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.share-link-preview{border:1px solid var(--line);background:var(--panel-raised);min-width:0;min-height:42px;color:var(--ink);text-overflow:ellipsis;white-space:nowrap;border-radius:8px;align-items:center;padding:0 .75rem;font-size:.82rem;font-weight:760;display:flex;overflow:hidden}.share-field input{border:1px solid var(--line);background:var(--panel-raised);min-width:0;min-height:42px;color:var(--ink);font:inherit;text-overflow:ellipsis;white-space:nowrap;border-radius:8px;padding:0 .75rem;font-size:.82rem;overflow:hidden}.share-field button,.text-action{border:1px solid var(--line-strong);background:var(--panel-raised);min-height:42px;color:var(--ink);border-radius:8px;padding:0 .8rem;font-weight:850}.share-field button:hover,.text-action:hover{border-color:var(--accent);background:color-mix(in oklch, var(--accent) 16%, var(--panel-raised))}.text-action{justify-self:start}.map-toolbar{z-index:5;background:color-mix(in oklch, var(--panel-raised) 90%, transparent);backdrop-filter:blur(6px);border:1px solid var(--line);box-shadow:var(--shadow-subtle);border-radius:10px;gap:.4rem;padding:.4rem;display:flex;position:absolute;bottom:.75rem;right:.75rem}.map-toolbar button{background:var(--panel-raised);border-color:var(--line);min-width:38px;min-height:38px;color:var(--ink);padding:0 .65rem;font-weight:850}.map-canvas{touch-action:none;contain:layout paint style;background:var(--map-canvas-bg);border:1px solid var(--workbench-line);border-radius:10px;order:3;min-height:clamp(520px,64vh,760px);margin:.65rem 0 0;position:relative;overflow:hidden}svg{width:100%;height:100%;min-height:clamp(520px,64vh,760px);display:block}[data-map-svg]{max-height:760px}.map-grid{transform-origin:50%;transition:transform .3s cubic-bezier(.4,0,.2,1)}.tile-shape{fill:var(--tile-fill,var(--accent-subtle));stroke:var(--map-outline);stroke-width:1.5px;vector-effect:non-scaling-stroke;transform-origin:50%;filter:drop-shadow(0 2px 3px oklch(24% .03 70/.2));transition:fill .4s cubic-bezier(.4,0,.2,1),stroke .25s ease-out}.tile-label{pointer-events:none;fill:oklch(16% .02 80);stroke:oklch(99% .01 88);stroke-width:3px;paint-order:stroke;font-size:.66rem;font-weight:700}.state-tile{transition:transform .4s var(--ease-premium);opacity:.98}.state-tile:hover .tile-shape{transform:scale(1.06)}.state-tile:hover .tile-shape,.state-tile.is-selected .tile-shape{stroke:var(--selected-stroke);stroke-width:4px;filter:drop-shadow(0 7px 10px oklch(45% .12 45/.34))}.state-tile:focus-visible .tile-shape{stroke:var(--accent);stroke-width:5px;filter:drop-shadow(0 0 0 3px oklch(72% .14 75/.5))}.geo-state{fill:var(--state-fill,var(--accent-subtle));stroke:var(--map-outline);stroke-width:1px;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke;transition:fill .18s,stroke-width .12s}.geo-state:hover,.geo-state.is-selected{stroke:var(--selected-stroke)}.geo-state.is-selected{stroke-width:3px}.overlay-points{pointer-events:none}.overlay-point{fill:var(--point-color);stroke:oklch(20% .02 70/.85);stroke-width:var(--point-stroke,1.2px);paint-order:stroke;vector-effect:non-scaling-stroke;pointer-events:none}:root[data-theme=dark] .overlay-point{stroke:oklch(12% .012 90/.9)}.map-tooltip{z-index:6;pointer-events:none;border:1px solid var(--line-strong);background:color-mix(in oklch, var(--panel-raised) 92%, transparent);backdrop-filter:blur(8px);max-width:240px;box-shadow:var(--shadow);color:var(--ink);transition:opacity .12s var(--ease-premium);border-radius:10px;padding:.5rem .7rem;font-size:.82rem;line-height:1.32;position:absolute;transform:translate(-50%,calc(-100% - 14px))}.map-tooltip[hidden]{display:none}.map-tooltip strong{color:var(--ink);margin-bottom:.2rem;font-size:.92rem;display:block}.map-tooltip .tt-row{color:var(--ink-muted);justify-content:space-between;gap:1rem;display:flex}.map-tooltip .tt-row b{color:var(--ink);font-variant-numeric:var(--num);font-weight:700}.map-tooltip .tt-row.tt-compare b{color:var(--accent-2)}.legend{color:var(--workbench-muted);order:4;grid-template-columns:auto minmax(140px,1fr) auto;align-items:center;gap:1rem;margin:0;padding:.75rem .35rem .2rem;font-size:.92rem;font-weight:800;display:grid}.legend-ramp{border:1px solid color-mix(in oklch, var(--line-strong) 76%, transparent);background:linear-gradient(90deg,oklch(91% .05 70),oklch(69% .135 62),oklch(40% .11 46));border-radius:999px;height:14px}:root[data-theme=dark] .legend-ramp{background:linear-gradient(90deg,oklch(30% .045 66),oklch(58% .125 62),oklch(82% .15 72))}.legend-scale{gap:.32rem;display:grid}.legend-ticks{color:var(--ink-muted);font-variant-numeric:var(--num);justify-content:space-between;font-size:.72rem;font-weight:600;display:flex}.inspector{align-content:start;position:relative}.inspector-card{background:var(--panel-raised);color:var(--ink);border-color:var(--line)}.inspector-card h2{color:var(--ink);overflow-wrap:anywhere;margin-bottom:.5rem}.inspector-card p,.source-note{overflow-wrap:anywhere}.metric-grid{grid-template-columns:repeat(auto-fit,minmax(8rem,1fr));gap:.75rem;margin:1.25rem 0 0;display:grid}.metric-grid div:first-child{background:color-mix(in oklch, var(--accent) 20%, var(--panel-raised));border-color:var(--accent);grid-column:1/-1}.metric-grid div{border:1px solid var(--line);background:color-mix(in oklch, var(--surface-3) 44%, var(--panel-raised));border-radius:4px;min-width:0;padding:.8rem;overflow:hidden}dt{min-width:0;color:var(--ink-muted);letter-spacing:0;text-transform:uppercase;overflow-wrap:anywhere;padding-bottom:.25rem;font-size:.68rem;font-weight:760;line-height:1.25}dd{font-variant-numeric:var(--num);min-width:0;color:var(--ink);overflow-wrap:normal;word-break:normal;margin:0;padding-top:.5rem;font-size:1.18rem;font-weight:800;line-height:1.15}dd small{color:var(--ink-muted);margin-left:.12rem;font-size:.8rem;font-weight:600}@media (width<=1120px){.workspace{grid-template-columns:280px minmax(0,1fr)}.map-stage,.inspector{position:relative;top:auto}.inspector{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr))}.map-header,.chapter-panel,.tournament-board,.evidence-band{grid-template-columns:1fr}}@media (width<=960px){.app-shell{padding:.75rem}.topbar,.workspace,.inspector{grid-template-columns:1fr}.coverage-summary{max-width:100%}.audit-strip{justify-self:start}.map-header{grid-template-columns:1fr}.control-rail-toggle{border:1px solid var(--line);background:var(--surface-2);min-height:44px;color:var(--ink);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.control-rail[aria-expanded=false] .control-rail-content{display:none}.legend,.metric-grid,.chapter-facts,.tournament-list,.user-bracket-summary,.user-bracket{grid-template-columns:1fr}.map-toolbar{bottom:.75rem;right:.75rem}}.source-row em{color:var(--ink-muted);letter-spacing:0;text-transform:uppercase;font-size:.72rem;font-style:normal;font-weight:800}.source-row span{color:var(--ink);font-weight:900}.source-row small{color:var(--ink-muted);line-height:1.42}.source-row{gap:.35rem;display:grid}.source-row.is-unavailable{cursor:not-allowed;opacity:.74}.source-row strong{border:1px solid var(--line);color:var(--ink);letter-spacing:0;text-transform:uppercase;border-radius:999px;justify-self:start;padding:.16rem .5rem;font-size:.68rem;font-weight:900}.source-row strong[data-source-status=verified]{background:color-mix(in oklch, var(--success) 28%, var(--panel-raised))}.source-row strong[data-source-status=available],.source-row strong[data-source-status=manual],.source-row strong[data-source-status=concept]{background:color-mix(in oklch, var(--warning) 28%, var(--panel-raised))}.source-row strong[data-source-status=blocked]{background:color-mix(in oklch, var(--danger) 26%, var(--panel-raised))}.map-header-badges{flex-wrap:wrap;align-items:center;gap:.6rem;display:flex}.source-badge{letter-spacing:0;background:color-mix(in oklch, var(--success) 28%, var(--panel-raised));min-height:34px;color:var(--ink);border:1px solid color-mix(in oklch, var(--success) 52%, var(--line));white-space:normal;overflow-wrap:anywhere;border-radius:999px;align-items:center;gap:.3rem;max-width:100%;padding:.2rem .65rem;font-size:.72rem;font-weight:600;line-height:1.3;display:inline-flex}.source-badge[data-badge-status=definition]{background:color-mix(in oklch, var(--warning) 20%, var(--panel-raised));color:var(--ink);border-color:color-mix(in oklch, var(--warning) 50%, var(--line))}.compare-reveal-btn{border:1.5px solid var(--accent-2);min-width:54px;min-height:28px;color:var(--accent-2);cursor:pointer;transition:all .2s var(--ease-out-back);white-space:nowrap;background:0 0;border-radius:999px;padding:.15rem .6rem;font-size:.78rem;font-weight:600}.compare-reveal-btn:hover,.compare-reveal-btn.is-revealed{background:var(--accent-2);color:var(--panel-inverse)}.data-band{border:1px solid var(--line);background:var(--panel-raised);box-shadow:var(--shadow-subtle);border-radius:16px;margin:0 0 2rem;overflow:hidden}.data-band summary{cursor:pointer;gap:.15rem;padding:1rem 1.25rem;display:grid}.data-band summary span{color:var(--accent);letter-spacing:0;text-transform:uppercase;font-size:.78rem;font-weight:900}.data-band summary strong{color:var(--ink);font-size:1.05rem}.data-band-intro{max-width:82ch;color:var(--ink-muted);margin:0;padding:0 1.25rem 1rem;font-size:.94rem}.layer-table-wrap{border-top:1px solid var(--line);overflow-x:auto}.data-attribution{border-top:1px solid var(--line);color:var(--ink-muted);margin:0;padding:1rem 1.25rem;font-size:.86rem}.data-attribution a{color:var(--label-ink);font-weight:700}table{border-collapse:collapse;width:100%;min-width:760px}th,td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:.85rem 1rem}th{color:var(--ink);font-size:.82rem}td{color:var(--ink-muted);font-size:.88rem}.status-pill{border:1px solid var(--line);min-height:28px;color:var(--ink);letter-spacing:0;text-transform:uppercase;border-radius:999px;align-items:center;padding:0 .55rem;font-size:.7rem;font-weight:900;display:inline-flex}.status-pill.verified{background:color-mix(in oklch, var(--success) 28%, var(--panel-raised))}.status-pill.definition{background:color-mix(in oklch, var(--warning) 24%, var(--panel-raised))}.matrix-modal[hidden],.help-modal[hidden]{display:none}.matrix-modal,.help-modal{z-index:70;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.matrix-modal-backdrop,.help-modal-backdrop{background:oklch(12% .018 82/.62);position:absolute;inset:0}.matrix-modal-content,.help-modal-content{z-index:1;border:1px solid var(--line-strong);background:var(--panel-raised);width:min(100%,920px);max-height:min(86vh,760px);color:var(--ink);box-shadow:var(--shadow-strong);border-radius:18px;position:relative;overflow:auto}.matrix-modal-header,.help-modal-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.25rem;display:flex}.matrix-modal-close,.help-modal-close{border:1px solid var(--line);background:var(--surface-2);min-width:44px;min-height:44px;color:var(--ink);border-radius:999px;font-weight:900}.matrix-modal-body,.help-modal-body{padding:1.25rem}.help-modal-nav{border-bottom:1px solid var(--line);gap:.5rem;padding:.8rem 1.25rem;display:flex;overflow-x:auto}.help-nav-item,.matrix-state-chip{border:1px solid var(--line);background:var(--surface-2);min-height:42px;color:var(--ink);border-radius:999px;padding:0 .8rem;font-weight:800}.help-nav-item.is-active,.matrix-state-chip.is-selected{background:var(--accent);color:var(--panel-inverse);border-color:var(--accent)}.help-tab-content{display:none}.help-tab-content.is-active{gap:1rem;display:grid}.help-step,.help-shortcut,.help-recipe{border-bottom:1px solid var(--line);gap:.35rem;padding:.9rem 0;display:grid}.help-step-number,kbd{border:1px solid var(--line);background:var(--surface);border-radius:.45rem;align-items:center;width:fit-content;min-height:28px;padding:0 .5rem;font-weight:900;display:inline-flex}.matrix-state-selector{flex-wrap:wrap;gap:.5rem;max-height:12rem;margin-top:.6rem;padding:.1rem .1rem .35rem;display:flex;overflow:auto}.matrix-grid{margin-top:1rem;overflow-x:auto}.matrix-empty{border:1px dashed var(--line);color:var(--ink-muted);border-radius:12px;padding:1rem}.matrix-table td{color:var(--ink)}:root[data-theme=dark] .tournament-board,:root[data-theme=dark] .user-bracket-summary div,:root[data-theme=dark] .share-field input,:root[data-theme=dark] .share-field button,:root[data-theme=dark] .text-action,:root[data-theme=dark] .bracket-actions button,:root[data-theme=dark] .map-toolbar,:root[data-theme=dark] .map-toolbar button,:root[data-theme=dark] .recipe-list button,:root[data-theme=dark] select{background:var(--panel);color:var(--ink)}:root[data-theme=dark] .bracket-actions button:disabled{background:color-mix(in oklch, var(--panel) 78%, var(--surface));color:var(--ink-soft);opacity:.62}:root[data-theme=dark] .chapter-panel,:root[data-theme=dark] .chapter-coverage-meter,:root[data-theme=dark] .chapter-facts div{background:color-mix(in oklch, var(--panel) 78%, var(--paper))}:root[data-theme=dark] .source-badge,:root[data-theme=dark] .coverage-summary,:root[data-theme=dark] .help-button,:root[data-theme=dark] .theme-toggle{color:var(--ink)}:root[data-theme=dark] .tile-label{fill:oklch(97% .01 88);stroke:oklch(12% .01 88)}:root[data-theme=dark] .map-stage{box-shadow:0 0 0 1px oklch(60% .06 70/.18), var(--shadow-strong)}.state-tile{transition:fill .5s cubic-bezier(.25,1,.5,1),stroke .5s cubic-bezier(.25,1,.5,1),opacity .3s}@media (width<=768px){.topbar-actions{align-items:stretch;gap:.5rem}.audit-strip{flex:auto;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.audit-strip span{min-height:44px;padding:0 .55rem}.topbar h1{font-size:1.65rem}#top button,#top select,#top summary,.matrix-modal button,.help-modal button{min-height:44px}.help-button,.map-toolbar button{min-width:44px}.map-stage{padding:.5rem}.map-canvas,.map-canvas svg,[data-map-svg],[data-geo-svg]{min-height:clamp(300px,72vw,430px)}.map-header{grid-template-columns:1fr;padding:.55rem}.map-mode-panel,.overlay-switch{grid-area:auto}.map-mode-panel{grid-template-columns:1fr}.map-header-badges,.map-reading-guide{display:none}.map-header-info strong{max-width:100%;font-size:1.25rem}.map-header-controls button{flex:8.5rem}.overlay-switch button{flex:auto}.chapter-panel h2{font-size:1.1rem}.map-header-badges{gap:.4rem}.source-badge{padding:.25rem .5rem;font-size:.65rem}.compare-reveal-btn{padding:.3rem .7rem;font-size:.7rem}}.skip-link,.segmented button.is-active,.map-header-controls button.is-active,.help-nav-item.is-active,.matrix-state-chip.is-selected{background:var(--accent-strong);color:var(--on-accent);border-color:var(--accent-strong)}.theme-toggle [data-theme-toggle-icon]{background:var(--accent-strong);color:var(--on-accent)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
