@font-face{font-family:Marcellus SC;font-style:normal;font-display:swap;font-weight:400;src:url(./marcellus-sc-latin-400-normal-BVWXGf4k.woff2)format("woff2"),url(./marcellus-sc-latin-400-normal-BE55TSha.woff)format("woff")}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:500;src:url(./alegreya-latin-500-normal-C25lLdV_.woff2)format("woff2"),url(./alegreya-latin-500-normal-B7TqNLeg.woff)format("woff")}@font-face{font-family:Alegreya;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-latin-700-normal-Vpz_43wJ.woff2)format("woff2"),url(./alegreya-latin-700-normal-BS7r-qZs.woff)format("woff")}@font-face{font-family:Alegreya;font-style:italic;font-display:swap;font-weight:500;src:url(./alegreya-latin-500-italic-CLRFusCx.woff2)format("woff2"),url(./alegreya-latin-500-italic-BOyCbY3P.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:400;src:url(./alegreya-sans-latin-400-normal-DtLlO8BS.woff2)format("woff2"),url(./alegreya-sans-latin-400-normal-DmA8jeke.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:500;src:url(./alegreya-sans-latin-500-normal-DS713u5J.woff2)format("woff2"),url(./alegreya-sans-latin-500-normal-vXxrTKJT.woff)format("woff")}@font-face{font-family:Alegreya Sans;font-style:normal;font-display:swap;font-weight:700;src:url(./alegreya-sans-latin-700-normal-DEbcy2sF.woff2)format("woff2"),url(./alegreya-sans-latin-700-normal-BnzUNlma.woff)format("woff")}:root{--bg:#0d1015;--surface-1:#11141a;--surface-2:#151920;--surface-3:#1a1f27;--track:#262c36;--gold:#d6b26a;--gold-light:#ecd29a;--on-gold:#1a140b;--line:#d6b26a4d;--line-soft:#d6b26a24;--line-card:#d6b26a38;--selected-bg:#d6b26a1f;--text-strong:#f3ead6;--text:#ece4d3;--text-soft:#b3aa98;--text-muted:#a89f8f;--text-faint:#8a8273;--positive:#9fd08a;--negative:#ef9a83;--horde:#d4553d;--alliance:#5d8ad0;--horde-text:#ef8f7a;--alliance-text:#9ec3f0;--font-display:"Marcellus SC", "Trajan Pro", Georgia, serif;--font-serif:"Alegreya", Georgia, serif;--font-body:"Alegreya Sans", "Gill Sans", system-ui, sans-serif;--radius:4px;--radius-button:3px;--hit:44px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:var(--font-body);font-size:16px;line-height:1.5}*{box-sizing:border-box}html{scrollbar-gutter:stable}body{color:var(--text);background-color:var(--bg);background-image:radial-gradient(80% 50% at 50% -10%,#d6b26a1a,#0000 70%),repeating-linear-gradient(45deg,#d6b26a06 0 1px,#0000 1px 22px),repeating-linear-gradient(-45deg,#d6b26a06 0 1px,#0000 1px 22px);margin:0}.app{max-width:1480px;margin:0 auto;padding:28px 24px 64px}@media (width<600px){.app{padding:16px 16px 48px}}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:.04em;color:var(--text-strong);font-weight:400;line-height:1.2}h1{letter-spacing:.02em;margin:0;font-size:36px;line-height:1.1}h2{font-size:1.4rem}h3{margin:16px 0 8px;font-size:1.1rem}.tagline,.note,.racials,.spec-name,.eyebrow,.spec-score,.race-score,.count{color:var(--text-muted)}.help{color:var(--text-soft)}.help,.note{font-size:15px}a{color:var(--gold-light)}:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}button,input,textarea{font:inherit;color:inherit}button{min-height:var(--hit);border:1px solid var(--line);border-radius:var(--radius-button);color:#e3d7bd;cursor:pointer;background:0 0;padding:0 18px;font-size:15px}button:hover:not(:disabled){border-color:var(--gold);color:var(--text-strong)}button:disabled{opacity:.45;cursor:not-allowed}button.primary{background:var(--gold);border-color:var(--gold-light);color:var(--on-gold);padding:0 20px;font-weight:700}button.primary:hover:not(:disabled){background:var(--gold-light);color:var(--on-gold)}button.danger{color:var(--negative)}button.link{text-underline-offset:3px;min-height:36px;color:var(--text-muted);border:none;padding:0 8px;font-size:13px;text-decoration:underline}input[type=text],textarea{width:100%;min-height:var(--hit);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-button);padding:8px 12px}details>summary{cursor:pointer}.panel,.pair{background:var(--surface-2);border:1px solid var(--line-card);border-radius:var(--radius);margin:16px 0;padding:20px;position:relative}.row{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.row input[type=text]{flex:200px;width:auto}.notice{background:var(--surface-3);border:1px solid var(--line);border-left:3px solid var(--gold);border-radius:var(--radius);margin:12px 0;padding:10px 14px;font-size:15px}.notice p{margin:4px 0}.app-head{border:1px solid var(--line);border-radius:var(--radius);box-shadow:0 0 0 4px var(--bg), 0 0 0 5px var(--line-soft), 0 24px 48px -24px #000c;background:linear-gradient(#171b22,#12151b);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;padding:22px 28px;display:flex}.brand{align-items:center;gap:20px;display:flex}.logo{color:var(--gold);flex:none}.brand-text{flex-direction:column;gap:2px;display:flex}.eyebrow-label{font-family:var(--font-display);letter-spacing:.32em;color:var(--gold);font-size:13px}.tagline{color:var(--text-soft);margin:0}.head-actions{flex-wrap:wrap;align-items:center;gap:12px 16px;display:flex}.progress{align-items:center;gap:12px;display:flex}.progress-ring text{font-family:var(--font-serif);fill:var(--text-strong);font-size:15px;font-weight:700}.progress-text{color:var(--text-muted);flex-direction:column;font-size:14px;line-height:1.2;display:flex}.progress-text strong{font-family:var(--font-serif);color:var(--text-strong);font-size:18px;font-weight:700}.beta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px 18px;margin:18px 0 28px;padding:0 4px;font-size:14px;display:flex}.beta-badge{font-family:var(--font-display);letter-spacing:.14em;background:var(--gold);color:var(--on-gold);border-radius:2px;padding:2px 8px;font-size:12px}.save-panel{grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:0 16px;display:grid}.layout{grid-template-columns:minmax(0,1fr);align-items:start;gap:28px;display:grid}.questions-col,.questionnaire{min-width:0}.chapters{flex-direction:column;gap:64px;min-width:0;display:flex}.sidebar .drawer-close,.mobile-bar{display:none}@media (width>=900px){.layout{grid-template-columns:minmax(0,1fr) minmax(340px,440px)}.sidebar{scrollbar-width:thin;scrollbar-color:var(--line) transparent;max-height:calc(100vh - 40px);position:sticky;top:20px;overflow-y:auto}}@media (width>=1200px){.layout{grid-template-columns:minmax(200px,240px) minmax(0,1fr) minmax(340px,440px)}.questions-col,.questionnaire{display:contents}}@media (width<900px){.sidebar{display:none}.sidebar.drawer-open{z-index:20;background:var(--bg);padding:16px;display:block;position:fixed;inset:0;overflow-y:auto}.sidebar.drawer-open .drawer-close{align-items:center;margin-bottom:8px;display:inline-flex}.mobile-bar{z-index:10;border-width:1px 0 0;border-color:var(--line);background:var(--surface-1);color:var(--text);padding:10px 16px calc(10px + env(safe-area-inset-bottom));text-align:left;border-radius:0;flex-wrap:wrap;align-items:center;gap:6px 14px;display:flex;position:fixed;bottom:0;left:0;right:0}.app{padding-bottom:120px}}.mobile-label{font-family:var(--font-display);letter-spacing:.08em;color:var(--gold)}.mobile-hint{color:var(--text-muted);font-size:14px;font-style:italic}.mobile-entry{align-items:center;gap:6px;font-size:14px;display:inline-flex}.language-switch{gap:4px;display:flex}.language-switch button{min-width:2.5em;padding:6px 8px}.language-switch button[aria-pressed=true]{border-color:currentColor;font-weight:700}.chapter-nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;gap:4px;padding:18px 0;display:flex;position:sticky;top:20px}.chapter-nav-title{font-family:var(--font-display);letter-spacing:.24em;color:var(--gold);margin:0;padding:0 12px 10px;font-size:13px}.chapter-chip{min-height:var(--hit);border-radius:var(--radius-button);color:var(--text);flex-direction:column;justify-content:center;gap:5px;padding:6px 12px;text-decoration:none;display:flex}.chapter-chip:hover{background:var(--surface-3)}.chapter-chip.current{background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--line);color:var(--text-strong)}.chapter-chip-row{align-items:center;gap:8px;font-size:15px;display:flex}.chapter-chip-name{flex:auto}.count{font-variant-numeric:tabular-nums;font-size:13px}.chapter-chip-bar{background:var(--track);border-radius:2px;height:3px;display:block;overflow:hidden}.chapter-chip-bar span{background:#8a7550;height:100%;display:block}.chapter-chip.complete .chapter-chip-bar span{background:var(--gold)}.gate-marker{border-radius:8px;padding:0 5px;font-size:11px;line-height:1.5}.gate-marker.boosted{background:var(--gold);color:var(--on-gold);letter-spacing:.04em;font-weight:700}.gate-marker.muted{color:var(--text-muted);border:1px dashed var(--text-faint)}@media (width<1200px){.chapter-nav{z-index:15;scrollbar-width:thin;background:var(--bg);border-top:none;flex-direction:row;gap:6px;margin:0 -24px 28px;padding:8px 24px;top:0;overflow-x:auto;box-shadow:0 8px 16px -12px #000000e6}.chapter-nav-title{display:none}.chapter-chip{border:1px solid var(--line-soft);background:var(--surface-2);flex:none;min-width:132px}html{scroll-padding-top:92px}}@media (width<600px){.chapter-nav{margin:0 -16px;padding:8px 16px}}.chapter{flex-direction:column;gap:22px;scroll-margin-top:20px;display:flex}.chapter-head{text-align:center;flex-direction:column;align-items:center;gap:8px;display:flex}.chapter-head h2{margin:0;font-size:34px}.ornament{color:var(--gold)}.chapter-head p{font-family:var(--font-serif);color:var(--text-soft);margin:0;font-size:18px;font-style:italic}.gate-badge{color:#c9c0ad;border:1px solid #d6b26a59;border-radius:10px;padding:1px 10px;font-size:13px}.gate-badge.boosted{background:var(--gold);color:var(--on-gold);border:none;padding:2px 10px;font-weight:700}.gate-badge.muted{border-style:dashed;border-color:var(--text-faint)}.question{background:var(--surface-2);border:1px solid var(--line-card);flex-direction:column;gap:18px;min-width:0;margin:0;padding:26px 28px;display:flex}@media (width<600px){.question{padding:20px 18px}}.question.gate{background:linear-gradient(180deg, #d6b26a14, #d6b26a05), var(--surface-2);border-color:#d6b26a73}.question.muted{border-style:dashed;border-color:var(--line-soft);background:var(--surface-1)}.question.muted h3,.question.muted .option-label{color:var(--text-soft)}.question.muted .option{border-color:var(--line-soft);background:0 0}.question-head{flex-direction:column;gap:6px;display:flex}.question h3{font-family:var(--font-serif);letter-spacing:0;color:var(--text-strong);margin:0;font-size:24px;font-weight:700;line-height:1.25}.question .help{max-width:70ch;margin:0;font-size:16px}.question-meta{letter-spacing:.04em;min-height:36px;color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;display:flex}.question-number{font-variant-numeric:tabular-nums}.question.gate .question-number{font-family:var(--font-display);letter-spacing:.16em;color:var(--gold)}.status-badge{border:1px solid var(--line);min-height:24px;color:var(--text-muted);cursor:help;background:0 0;border-radius:12px;align-items:center;gap:3px;padding:0 8px;display:inline-flex;position:relative}.status-badge:after{content:"";position:absolute;inset:-10px -2px}.status-icon{align-items:center;gap:3px;display:inline-flex}.status-text{font-family:var(--font-serif);letter-spacing:0;font-size:13px;font-weight:700}.status-answered{color:var(--positive);border-color:#9fd08a73}.status-high,.status-high:hover:not(:disabled){background:var(--gold);border-color:var(--gold);color:var(--on-gold)}.status-all-chosen,.status-unrated{color:var(--gold)}.status-not-counting{color:var(--text-soft)}.status-requirements{color:#c9c0ad}.status-dont-care{border-style:dashed;border-color:var(--text-faint)}.question-meta .reset{margin-left:auto}.tip{display:inline-flex;position:relative}.tip-body{z-index:20;border-radius:var(--radius);width:max-content;max-width:min(280px,80vw);font-family:var(--font-body);letter-spacing:0;text-transform:none;color:var(--text);background:#1f242d;border:1px solid #d6b26a73;padding:10px 12px;font-size:14px;font-style:normal;font-weight:400;line-height:1.4;position:absolute;bottom:calc(100% + 8px);left:0;box-shadow:0 12px 24px -8px #000c}@media (width<600px){.tip{position:static}.tip-body{width:auto;max-width:none;left:12px;right:12px}.question-meta,.factors li,.evidence-list li{position:relative}}.tip-body:after{content:"";height:8px;position:absolute;top:100%;left:0;right:0}.tip-body[hidden]{display:none}.influence,.strict-badge{border:1px solid var(--line);cursor:help;background:0 0;border-radius:12px;align-items:center;gap:5px;min-height:24px;padding:0 9px;display:inline-flex;position:relative}.influence:after,.strict-badge:after{content:"";position:absolute;inset:-10px -2px}.influence{gap:4px}.strict-badge{letter-spacing:0;color:#c9c0ad;border-color:#d6b26a59;padding:0 8px;font-size:12px}.diamond{border:1px solid #d6b26a73;width:7px;height:7px;margin:0 1px;transform:rotate(45deg)}.diamond.filled{background:var(--gold);border-color:var(--gold)}.options{grid-template-columns:repeat(auto-fit, minmax(min(var(--tile-min,210px), 100%), 1fr));gap:12px;display:grid}.option{min-height:var(--hit);text-align:left;color:inherit;font-weight:inherit;border-radius:var(--radius);background:var(--surface-3);border:1px solid #d6b26a33;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.option:hover:not(:disabled){border-color:var(--line);color:inherit}.option.selected,.option.selected:hover:not(:disabled){border-color:var(--gold);background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--gold)}.question.dont-care .option{border-color:var(--line-soft);background:0 0}.question.dont-care .option-label{color:var(--text-soft)}.question.dont-care .indicator{border-color:var(--text-faint)}.option-text{flex-direction:column;flex:auto;gap:6px;min-width:0;display:flex}.option-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.option-label{font-family:var(--font-serif);color:var(--text-strong);font-size:18px;font-weight:700;line-height:1.3}.option-text small{color:var(--text-muted);font-size:15px;line-height:1.45}.option.selected .option-text small{color:#c9c0ad}.indicator{border:1.5px solid var(--text-faint);width:20px;height:20px;color:var(--on-gold);flex:none;justify-content:center;align-items:center;margin-top:2px;display:inline-flex}.indicator.circle{border-radius:50%}.indicator.box{border-radius:3px}.option.selected .indicator{background:var(--gold);border-color:var(--gold)}.indicator .dot{background:var(--on-gold);border-radius:50%;width:8px;height:8px}.unrated{border:1px dashed var(--text-faint);color:var(--text-muted);border-radius:10px;align-self:flex-start;padding:0 8px;font-size:12px}.options.compact .option{padding:12px 14px}.options.compact .option-label{font-size:16px}.options.compact .option-text small{font-size:14px}.crest{flex:none}.crest.faction-alliance{stroke:var(--alliance);fill:#3d6fb82e}.crest.faction-horde{stroke:var(--horde);fill:#c0432f33}.question-foot{border-top:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;display:flex}.weight-wrap{align-items:center;gap:10px;margin-left:auto;display:flex}.weight{border-radius:var(--radius);border:1px solid var(--line);background:var(--bg);gap:2px;padding:3px;display:flex}.weight button{border-radius:var(--radius-button);color:#e3d7bd;border:none;min-height:30px;padding:0 12px;font-size:13px;font-weight:500;position:relative}.weight button:after{content:"";position:absolute;inset:-3px 0}.weight button[aria-checked=true]{color:var(--text-strong);font-weight:700}.weight .weight-dont-care[aria-checked=true]{background:var(--track)}.weight .weight-normal[aria-checked=true],.weight .weight-count[aria-checked=true]{background:var(--selected-bg);box-shadow:inset 0 0 0 1px var(--line)}.weight .weight-high[aria-checked=true]{background:var(--gold);color:var(--on-gold)}.sidebar>*+*{margin-top:14px}.sidebar{background:var(--surface-1);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 30px 60px -30px #000c}.ranking-header{justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.ranking-header h2{margin:0;font-size:26px}.faction-badge{border:1px solid var(--text-faint);font-family:var(--font-display);letter-spacing:.12em;color:var(--text-strong);border-radius:2px;flex:none;padding:4px 12px;font-size:14px}.faction-badge.faction-horde{border-color:var(--horde);background:#c0432f2e}.faction-badge.faction-alliance{border-color:var(--alliance);background:#3d6fb82e}.ranking ol{flex-direction:column;gap:2px;margin:14px 0 0;padding:0;list-style:none;display:flex}.class-title{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.class-name{font-family:var(--font-display);font-size:19px;font-weight:400}.spec-name{color:var(--text-muted);font-size:14px}.class-diamond{flex:none;width:9px;height:9px;display:inline-block;transform:rotate(45deg)}.penalty-badge{color:var(--negative);align-items:center;display:inline-flex}.factors .penalty-cost{color:var(--negative);margin-left:18px;font-size:14px}.factors .penalty-also{color:var(--text-soft);margin-left:18px;font-size:14px}.ranking-item.open{border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--class-color) 55%, transparent);background:linear-gradient(160deg, color-mix(in srgb, var(--class-color) 16%, transparent), color-mix(in srgb, var(--class-color) 3%, transparent) 55%), #171a24;flex-direction:column;gap:16px;margin:6px 0 10px;padding:20px;display:flex}.ranking-item.open .ranking-head{text-align:left;width:100%;color:var(--text);cursor:default;border:none;align-items:center;gap:14px;padding:0;display:flex}.ranking-item.open .class-diamond{display:none}.ranking-item.open .class-title{flex-direction:column;flex:auto;align-items:flex-start}.ranking-item.open .class-name{letter-spacing:.02em;font-size:27px;line-height:1.1}.ranking-item.open .spec-name{color:var(--text-soft);font-size:15px}.rank-diamond{background:var(--gold);border-radius:2px;flex:none;place-items:center;width:34px;height:34px;margin:0 4px;display:grid;transform:rotate(45deg)}.rank-diamond .rank{font-family:var(--font-serif);color:var(--on-gold);font-size:16px;font-weight:700;transform:rotate(-45deg)}.score-ring-wrap{flex:none;width:66px;height:66px;position:relative}.score-ring-wrap .score-value{font-family:var(--font-serif);color:var(--text-strong);place-items:center;font-size:17px;font-weight:700;display:grid;position:absolute;inset:0}.class-summary{font-family:var(--font-serif);color:#e3d9c4;margin:0;font-size:17px;line-height:1.5}.open-sheet{border:none;justify-content:center;align-items:center;gap:10px;width:100%;font-weight:700;display:inline-flex}.open-sheet:hover:not(:disabled){color:inherit;filter:brightness(1.08)}.ranking-body{flex-direction:column;gap:16px;display:flex}.ranking-item:not(.open){border-bottom:1px solid var(--line-soft)}.ranking-item:not(.open) .ranking-head{text-align:left;width:100%;color:var(--text);border:none;align-items:center;gap:8px;padding:12px 10px;display:flex}.ranking-item:not(.open) .ranking-head:hover:not(:disabled){background:var(--surface-3)}.ranking-item:not(.open) .rank{text-align:center;font-family:var(--font-serif);font-variant-numeric:tabular-nums;color:var(--text-muted);flex:0 0 22px;font-size:15px;font-weight:700}.ranking-item:not(.open) .class-title{flex:auto}.ranking-item:not(.open) .score-value{text-align:right;font-family:var(--font-serif);color:var(--text-strong);flex:0 0 48px;font-size:18px;font-weight:700}.factor-grid{border-top:1px solid var(--line-soft);grid-template-columns:repeat(auto-fit,minmax(min(170px,100%),1fr));gap:16px;padding-top:14px;display:grid}.factors ul,.race-list,.secondary-list,.profiles,.perks,.tags{margin:0;padding:0;list-style:none}.factors ul{flex-direction:column;gap:10px;display:flex}.factors h3,.factors h4,.sheet .factors h3,.sheet .factors h4{letter-spacing:.16em;border:none;margin:0 0 10px;padding:0;font-size:13px}.factors li{flex-direction:column;align-items:flex-start;gap:2px;font-size:15px;display:flex}.factor-line{gap:8px;display:flex}.factors .sign{font-weight:700}.factors.good h3,.factors.good h4,.factors.good .sign{color:var(--positive)}.factors .ok{color:var(--text-soft);font-style:italic}.factors.bad h3,.factors.bad h4,.factors.bad .sign,.factors .penalty .sign{color:var(--negative)}.factor-evidence{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.factor-evidence+.factor-evidence{margin-top:4px}.factors .note{color:var(--text-muted);margin-left:18px;font-size:14px;line-height:1.4}.evidence-list{color:var(--text-muted);gap:4px;margin:6px 0 0;padding:0;font-size:14px;line-height:1.4;list-style:none;display:grid}.evidence-trait{color:var(--text);font-weight:600}@media (width>=600px){.ranking-body .factors.bad .tip-body,.sheet .factors.bad .tip-body{left:auto;right:0}}.provenance-badge{vertical-align:middle;background:0 0;border:none;justify-content:center;align-items:center;min-height:0;padding:0;line-height:1;display:inline-flex}button.provenance-badge{cursor:help;position:relative}button.provenance-badge:after{content:"";position:absolute;inset:-15px -5px}.provenance-badge-confirmed,button.provenance-badge-confirmed:hover:not(:disabled){color:var(--positive);background:0 0}.provenance-badge-classic,button.provenance-badge-classic:hover:not(:disabled){color:var(--alliance-text);background:0 0}.provenance-badge-unconfirmed,button.provenance-badge-unconfirmed:hover:not(:disabled){color:#f2b86b;background:0 0}.provenance-badge-estimate,button.provenance-badge-estimate:hover:not(:disabled){color:var(--text-soft);background:0 0}.provenance-badge-community,button.provenance-badge-community:hover:not(:disabled){color:#c4a7f2;background:0 0}.legend{border-top:1px solid var(--line-soft);padding:14px 4px 2px;font-size:13px;line-height:1.4}.legend h3{letter-spacing:.18em;color:var(--text-soft);margin:0 0 8px;font-size:12px}.legend ul{color:var(--text-muted);flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.sheet-overlay{z-index:50;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#05070ac7;justify-content:center;align-items:flex-start;padding:5vh 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.sheet{border-radius:var(--radius);background:var(--surface-2);width:100%;max-width:900px;box-shadow:inset 0 3px 0 var(--class-color), 0 40px 80px -20px #000000e6;border:1px solid #d6b26a73;grid-template-columns:repeat(auto-fit,minmax(min(360px,100%),1fr));gap:26px 32px;padding:28px 30px 30px;display:grid}@media (width<600px){.sheet{padding:22px 18px}}.sheet-head,.spec-cards,.sheet-summary,.sheet .legend{grid-column:1/-1}.sheet-head{border-bottom:1px solid #d6b26a33;align-items:center;gap:14px;padding-bottom:18px;display:flex}.sheet-head .class-diamond{width:11px;height:11px}.sheet-title{flex-direction:column;flex:auto;min-width:0;display:flex}.sheet-label{font-family:var(--font-display);letter-spacing:.24em;color:var(--text-muted);font-size:12px}.sheet-head h2{margin:0;font-size:34px;line-height:1.1}.sheet-score{font-family:var(--font-serif);color:var(--text-strong);font-size:26px;font-weight:700}.sheet-close{width:var(--hit);place-items:center;padding:0;display:grid}.spec-cards{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:12px;display:grid}.spec-card{min-height:var(--hit);border-radius:var(--radius);background:var(--surface-3);text-align:left;border:1px solid #d6b26a33;flex-direction:column;align-items:flex-start;gap:4px;padding:14px;display:flex}.spec-card.selected,.spec-card.selected:hover:not(:disabled){border-color:color-mix(in srgb, var(--class-color) 50%, transparent);background:color-mix(in srgb, var(--class-color) 10%, var(--surface-2));box-shadow:inset 0 3px 0 var(--class-color)}.spec-card .eyebrow{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:12px}.spec-card strong{font-family:var(--font-display);color:var(--text-strong);font-size:20px;font-weight:400}.spec-card .spec-score{font-family:var(--font-serif);color:var(--text-soft);font-size:16px;font-weight:700}.sheet-summary{border-radius:var(--radius);background:var(--surface-3);flex-direction:column;gap:16px;padding:20px 22px;display:flex}.sheet-summary .class-summary{font-size:18px}.sheet-summary .factor-grid{grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:16px 32px}.sheet h3{border-bottom:1px solid var(--line-soft);letter-spacing:.16em;color:var(--gold-light);margin:0 0 8px;padding-bottom:8px;font-size:15px}.sheet .help{font-size:15px}.race-list>li{border-bottom:1px solid #d6b26a1a;padding:8px 0}.race-list summary{min-height:var(--hit);justify-content:space-between;align-items:center;gap:8px;list-style:none;display:flex}.race-list summary::-webkit-details-marker{display:none}.race-list summary:after{content:"›";color:var(--gold);flex:none;margin-left:4px;font-size:20px;transition:transform .15s}.race-list details[open] summary:after{transform:rotate(90deg)}.race-head{flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:16px;display:flex}.race-score{font-family:var(--font-serif);color:var(--text-strong);margin-left:auto;font-weight:700}.race-meter{background:var(--track);border-radius:2px;height:3px;margin-top:6px;display:block;overflow:hidden}.race-meter span{background:var(--gold);height:100%;display:block}.faction{border:1px solid #0000;border-radius:10px;padding:0 8px;font-size:12px}.faction.faction-horde{color:var(--horde-text);border-color:#d4553d99}.faction.faction-alliance{color:var(--alliance-text);border-color:#5d8ad0b3}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{border:1px solid var(--line);color:var(--text-soft);border-radius:10px;padding:1px 10px;font-size:13px}.tag.new{border-color:var(--gold);background:var(--gold);color:var(--on-gold);padding:0 8px;font-weight:700}.professions .pair{background:var(--surface-3);border:none;flex-direction:column;gap:12px;margin:0;padding:16px;display:flex}.pair-head{font-family:var(--font-serif);justify-content:space-between;gap:8px;font-size:18px;display:flex}.pair-score{color:var(--gold-light);font-weight:700}.professions .pair .help{margin:0}.professions .pair .help strong{color:var(--text-strong)}.professions details{border:1px solid var(--line-soft);border-radius:var(--radius);margin-top:12px}.professions summary{min-height:var(--hit);justify-content:space-between;align-items:center;padding:0 14px;font-size:15px;list-style:none;display:flex}.professions summary::-webkit-details-marker{display:none}.professions summary:after{content:"›";color:var(--gold);font-size:20px;transition:transform .15s}.professions details[open] summary:after{transform:rotate(90deg)}.professions details .pair{margin:0 12px 12px}.secondary-list>li,.perks>li{border-bottom:1px solid #d6b26a1a;flex-direction:column;gap:2px;padding:10px 0;display:flex}.secondary-profession-head,.perk-head{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.secondary-profession-score{font-family:var(--font-serif);color:var(--text-strong);font-weight:700}.perk-head .tag{padding:0 8px;font-size:12px}.info-box{border-radius:var(--radius);background:var(--surface-3);color:var(--text-soft);margin-bottom:8px;padding:12px 14px;font-size:14px}.info-box p{margin:0}.info-box p+p{margin-top:6px}.profiles li{border-bottom:1px solid var(--line-soft);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 0;display:flex}.profiles .row{margin:0}.share label,.import label{margin-top:12px;display:block}.share textarea{word-break:break-all;font-family:ui-monospace,monospace;font-size:.85rem}.import button{margin-top:8px}.app-foot{border-top:1px solid var(--line-soft);color:var(--text-muted);text-align:center;margin-top:32px;font-size:.85rem}.repo-link{vertical-align:middle;display:inline-flex}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.factors .more-factors{margin:6px 0 0 18px;padding:0}.provenance-badge-with-links{align-items:center;gap:8px;display:inline-flex}.provenance-badge-with-links .source-link:after{inset:-11px -3px}.factors .provenance-badge-with-links{margin-left:18px}.factors .provenance-badge-with-links .tip{margin-left:0}.source-link{width:22px;height:22px;color:var(--gold-light);border-radius:50%;place-items:center;display:inline-grid;position:relative}.source-link:hover{background:var(--selected-bg)}.source-link:after{content:"";position:absolute;inset:-11px}
