/*! tailwindcss v4.3.0 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--font-display:"Palatino Linotype", "Book Antiqua", Palatino, "Iowan Old Style", Georgia, serif;--font-ui:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-num:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.relative{position:relative}.static{position:static}.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.hero-x-mark{--hero-x-mark:url(data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20fill%3D%22none%22%20viewBox%3D%220%200%2024%2024%22%20stroke-width%3D%221.5%22%20stroke%3D%22currentColor%22%20aria-hidden%3D%22true%22%20data-slot%3D%22icon%22%3E%20%20%3Cpath%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20d%3D%22M6%2018%2018%206M6%206l12%2012%22%2F%3E%3C%2Fsvg%3E);-webkit-mask:var(--hero-x-mark);-webkit-mask:var(--hero-x-mark);-webkit-mask:var(--hero-x-mark);mask:var(--hero-x-mark);vertical-align:middle;background-color:currentColor;width:1.5rem;height:1.5rem;display:inline-block;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.table{display:table}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}[data-phx-session],[data-phx-teleported-src]{display:contents}:root{--ground:#eceeea;--panel:#fff;--panel-2:#f4f6f2;--line:#d3d8cf;--line-soft:#e3e7df;--ink:#131a18;--ink-2:#414e4a;--muted:#7a867f;--accent:#2c7563;--accent-ink:#fff;--accent-soft:#2c75631a;--brass:#86690f;--brass-soft:#86690f1a;--gain:#2c7563;--loss:#a8443a;--locked:#8c7a5e;--todo:#b0721c;--todo-abil:#5c7fa6;--cls-s:48%;--cls-l:40%;--prc-s:30%;--prc-l:52%;--save:#4c5ba8;--spine-w:316px;--r:3px;--shadow:0 1px 2px #131a180f, 0 8px 24px -12px #131a182e}@media (prefers-color-scheme:dark){:root{--ground:#10151a;--panel:#171e24;--panel-2:#1d262d;--line:#2a353e;--line-soft:#212b33;--ink:#dde4e3;--ink-2:#a3b0af;--muted:#74838b;--accent:#58b79f;--accent-ink:#0c1316;--accent-soft:#58b79f1f;--brass:#c9a227;--brass-soft:#c9a2271f;--gain:#58b79f;--loss:#d9736a;--locked:#9a8763;--todo:#d9a03c;--todo-abil:#8aa9c9;--cls-s:52%;--cls-l:60%;--prc-s:34%;--prc-l:70%;--save:#8c9be8;--shadow:0 1px 2px #0006, 0 10px 30px -14px #000000b3}}:root[data-theme=light]{--ground:#eceeea;--panel:#fff;--panel-2:#f4f6f2;--line:#d3d8cf;--line-soft:#e3e7df;--ink:#131a18;--ink-2:#414e4a;--muted:#7a867f;--accent:#2c7563;--accent-ink:#fff;--accent-soft:#2c75631a;--brass:#86690f;--brass-soft:#86690f1a;--gain:#2c7563;--loss:#a8443a;--locked:#8c7a5e;--todo:#b0721c;--todo-abil:#5c7fa6;--cls-s:48%;--cls-l:40%;--prc-s:30%;--prc-l:52%;--save:#4c5ba8;--shadow:0 1px 2px #131a180f, 0 8px 24px -12px #131a182e}:root[data-theme=dark]{--ground:#10151a;--panel:#171e24;--panel-2:#1d262d;--line:#2a353e;--line-soft:#212b33;--ink:#dde4e3;--ink-2:#a3b0af;--muted:#74838b;--accent:#58b79f;--accent-ink:#0c1316;--accent-soft:#58b79f1f;--brass:#c9a227;--brass-soft:#c9a2271f;--gain:#58b79f;--loss:#d9736a;--locked:#9a8763;--todo:#d9a03c;--todo-abil:#8aa9c9;--cls-s:52%;--cls-l:60%;--prc-s:34%;--prc-l:70%;--save:#8c9be8;--shadow:0 1px 2px #0006, 0 10px 30px -14px #000000b3}[data-prc="1"]{--cls-s:var(--prc-s);--cls-l:var(--prc-l)}*{box-sizing:border-box}body{background:var(--ground);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;margin:0;font-size:14px;line-height:1.45}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.eyebrow{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:600}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{flex-direction:column;min-height:100vh;display:flex}.notice{background:var(--brass);color:var(--ground);letter-spacing:.02em;text-align:center;margin:0;padding:5px 20px;font-size:11.5px;font-weight:600}.notice a{color:inherit}.top{background:var(--panel);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:18px;padding:12px 20px;display:flex}.brand{flex-direction:column;gap:1px;display:flex}.brand a{color:inherit;text-decoration:none}.brand a:hover{color:var(--accent)}.brand b{font-family:var(--font-display);letter-spacing:.01em;font-size:17px;font-weight:600;line-height:1.1}.split{flex-wrap:wrap;flex:1;align-items:center;gap:6px;min-width:180px;display:flex}.split-chip{border:1px solid var(--line);border-left:3px solid hsl(var(--h) var(--cls-s) var(--cls-l));border-radius:var(--r);background:var(--panel-2);align-items:baseline;gap:5px;padding:3px 8px 3px 6px;font-size:12.5px;display:inline-flex}.split-chip .n{font-family:var(--font-num);color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:12px;font-weight:600}.split-who{color:var(--muted);padding-right:4px;font-size:12.5px}.top-right{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px 8px;min-width:0;margin-left:auto;display:flex}.lvcount{color:var(--muted);font-size:12px}.lvcount b{font-family:var(--font-num);color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.btn{border:1px solid var(--line);border-radius:var(--r);background:var(--panel-2);padding:6px 13px;font-size:12.5px;font-weight:600;transition:border-color .12s,background .12s}.btn:hover{border-color:var(--accent);background:var(--accent-soft)}.btn-primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.btn-primary:hover{filter:brightness(1.08)}.cols{grid-template-columns:var(--spine-w) minmax(0, 1fr) 292px;flex:1;align-items:start;display:grid;position:relative}.spine-resize{top:0;bottom:0;left:calc(var(--spine-w) - 3px);z-index:15;cursor:col-resize;width:7px;position:absolute}.spine-resize:after{content:"";background:0 0;transition:background .12s;position:absolute;inset:0 3px}.spine-resize:hover:after,.spine-resize[data-drag="1"]:after{background:var(--accent)}.spine-resize:before{content:"";background:repeating-linear-gradient(var(--muted) 0 2px, transparent 2px 5px);opacity:.45;border-radius:2px;width:3px;height:26px;transition:opacity .12s;position:absolute;top:50%;left:2px;transform:translateY(-50%)}.spine-resize:hover:before,.spine-resize[data-drag="1"]:before{opacity:0}.spine{border-right:1px solid var(--line);background:var(--panel);max-height:100vh;padding-bottom:40px;position:sticky;top:0;overflow-y:auto}.spine-head{background:var(--panel);border-bottom:1px solid var(--line-soft);z-index:2;justify-content:space-between;align-items:baseline;gap:8px;padding:11px 14px 8px;display:flex;position:sticky;top:0}.spine-todo{color:var(--todo);font-size:10.5px;font-weight:600}.spine-todo[data-clear="1"]{color:var(--muted);font-weight:400}.lv0{text-align:left;border-bottom:1px solid var(--line);flex-direction:column;gap:6px;width:100%;padding:10px 14px 11px 15px;display:flex;position:relative}.lv0:hover{background:var(--accent-soft)}.lv0-title{font-size:13px;font-weight:700}.lv0[aria-current=true] .lv0-title{color:var(--accent)}.lv0-sub{grid-template-columns:repeat(3,1fr);gap:3px 12px;display:grid}.lv0-ab{font-family:var(--font-num);font-variant-numeric:tabular-nums;justify-content:space-between;gap:6px;font-size:11px;display:flex}.lv0-ab i{color:var(--muted);letter-spacing:.04em;font-style:normal}.lv0-ab b{color:var(--ink-2);font-weight:600}.lv0[aria-current=true]{background:var(--accent-soft)}.lv0[aria-current=true]:after,.lv[aria-current=true]:after{content:"";background:var(--accent);width:2px;position:absolute;top:0;bottom:0;right:0}.lv{text-align:left;width:100%;padding:5px 12px 7px 15px;display:block;position:relative}.lv:hover,.lv[aria-current=true]{background:var(--accent-soft)}.lv[data-run=start]:before{content:"";background:var(--line);height:1px;position:absolute;top:0;left:12px;right:0}.lv-band{background:hsl(var(--h) var(--cls-s) var(--cls-l));width:4px;position:absolute;top:0;bottom:0;left:0}.lv[data-empty="1"] .lv-band{background:repeating-linear-gradient(135deg, var(--line) 0 2px, transparent 2px 5px)}.lv-main{align-items:baseline;gap:9px;display:flex}.lv-num{font-family:var(--font-num);color:var(--muted);font-variant-numeric:tabular-nums;min-width:17px;font-size:11px}.lv-cls{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:13px;font-weight:700;overflow:hidden}.lv-cls[data-none="1"]{color:var(--muted);font-style:italic;font-weight:400}.lv[aria-current=true] .lv-num{color:var(--accent);font-weight:700}.lv[aria-current=true] .lv-cls{color:var(--accent)}.lv-feats,.lv-skills{flex-direction:column;gap:2px;margin:4px 0 0 26px;display:flex}.lv-skills{margin-top:2px}.lv-feat{color:var(--ink-2);align-items:baseline;gap:7px;font-size:11.5px;line-height:1.3;display:flex}.lv-feat i{color:var(--brass);text-align:center;flex:none;width:9px;font-size:9.5px;font-style:normal}.lv-feat[data-abil="1"]{color:hsl(var(--h) var(--cls-s) var(--cls-l));font-family:var(--font-num);font-size:11px;font-weight:600}.lv-feat[data-abil="1"] i{color:hsl(var(--h) var(--cls-s) var(--cls-l))}.lv-feat[data-todo]{font-family:inherit;font-style:italic;font-weight:400}.lv-feat[data-todo=feat],.lv-feat[data-todo=feat] i,.lv-feat[data-todo=spell],.lv-feat[data-todo=spell] i{color:var(--todo)}.lv-feat[data-todo=abil],.lv-feat[data-todo=abil] i{color:var(--todo-abil)}.lv-feat[data-bonus="1"] i{color:hsl(var(--h) var(--cls-s) var(--cls-l));font-size:12px;line-height:1}.lv-feat[data-bonus="1"] .lv-feat-wasted{color:var(--brass);font-size:9.5px}.lv-feat-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lv-feat:not([data-todo]):not([data-abil])>.lv-feat-name{font-weight:500}.lv-spells{flex-wrap:wrap;gap:2px 12px;margin:3px 0 0 26px;display:flex}.lv-feats+.lv-spells{margin-top:7px}.lv-spell{color:var(--ink-2);align-items:baseline;gap:0 7px;min-width:0;font-size:11.5px;line-height:1.3;display:inline-flex}.lv-spell i{color:var(--accent);font-size:9px;font-style:normal;font-weight:700;font-family:var(--font-num);text-align:center;background:var(--accent);flex:none;width:9px}@supports (color:color-mix(in lab, red, red)){.lv-spell i{background:color-mix(in srgb, var(--accent) 18%, transparent)}}.lv-spell i{border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.lv-spell i{border:1px solid color-mix(in srgb, var(--accent) 40%, transparent)}}.lv-spell i{border-radius:2px;padding-block:1px}.lv-sp-list{min-width:0}.lv-sp-name:has(+.lv-sp-name):after{content:", ";color:var(--muted)}.lv-sp-name+.lv-sp-todo:before{content:" · ";color:var(--muted)}.lv-sp-todo{white-space:nowrap}.lv-spell[data-todo],.lv-sp-todo[data-todo]{font-family:inherit;font-style:italic;font-weight:400}.lv-spell[data-todo=spell],.lv-spell[data-todo=spell] i,.lv-sp-todo[data-todo=spell]{color:var(--todo)}.lv-feat[data-skill="1"]{color:var(--ink-2);font-size:11px}.lv-feat[data-skill="1"] i{color:var(--muted);font-size:8px}.lv-sk-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.lv-sk-n{font-family:var(--font-num);color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;margin-left:auto;font-size:10px}.lv-feat[data-skill="1"][data-cross="1"],.lv-feat[data-skill="1"][data-cross="1"] .lv-sk-n{color:var(--muted)}.lv-sk-x2{font-family:var(--font-num);color:var(--locked);letter-spacing:.04em;flex:none;font-size:9px;font-weight:700}.spine-list{container-type:inline-size}@container (min-width:430px){.lv{grid-template-columns:118px minmax(0,1fr);align-items:start;column-gap:14px;display:grid}.lv-feats,.lv-spells,.lv-skills{margin:0}.lv-main{grid-column:1}.lv-feats,.lv-spells{grid-column:2}.lv-skills{grid-column:2;grid-template-columns:1fr 1fr;gap:2px 14px;display:grid}.lv-feats+:is(.lv-spells,.lv-skills),.lv-spells+.lv-skills{margin-top:3px}.lv-feats+.lv-spells{margin-top:7px}}@container (min-width:600px){.lv{grid-template-columns:118px 156px minmax(0,1fr)}.lv-skills{grid-area:1/3/span 2}:is(.lv-feats,.lv-spells)+.lv-skills{margin-top:0}}.epic-rule{color:var(--brass);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:8px;padding:10px 12px 5px;font-size:9.5px;font-weight:700;display:flex}.epic-rule:after{content:"";opacity:.35;background:currentColor;flex:1;height:1px}.stage{min-width:0;padding:20px 26px 60px;container-type:inline-size}.stage-head{flex-wrap:wrap;align-items:baseline;gap:12px;display:flex}.stage-head h1{font-family:var(--font-display);margin:0;font-size:25px;font-weight:600}.stage-sub{color:var(--muted);margin:3px 0 18px;font-size:12.5px}.stage-hold{color:var(--todo);border-left:2px solid;margin:-12px 0 18px;padding-left:9px;font-size:12.5px;line-height:1.45}.stage-hold-lead{font-weight:600}.stage-hold-dead{color:var(--locked)}.stage-hold[data-dead="1"]{border-left-color:var(--locked)}.sect{margin-top:20px}.sect:first-of-type{margin-top:0}.sect-head{flex-wrap:wrap;align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.sect-toggle{text-align:left;border-bottom:1px solid var(--line-soft);flex-wrap:wrap;align-items:baseline;gap:10px;width:100%;padding:7px 0 8px;display:flex}.sect-toggle:hover .eyebrow{color:var(--accent)}.sect-chev{color:var(--muted);font-size:9px;transition:transform .15s}.sect-toggle[data-open="1"] .sect-chev{transform:rotate(90deg)}.sect-summary{color:var(--ink-2);font-size:12.5px;font-weight:600}.sect-body{padding-top:12px}.sect-head .hint,.sect-toggle .hint{color:var(--muted);font-size:11.5px}.sect-head .warn,.sect-toggle .warn{color:var(--todo);font-size:11.5px;font-weight:600}.sect-note{color:var(--muted);max-width:620px;margin:-4px 0 10px;font-size:11.5px;line-height:1.45}.cards{grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:8px;display:grid}.cards-divider{border-bottom:1px solid var(--line);grid-column:1/-1;align-items:baseline;gap:9px;margin:8px 0 1px;padding-bottom:5px;display:flex}.cards-divider .hint{color:var(--muted);font-size:11.5px}.card{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);border-top:2px solid hsl(var(--h,0) var(--cls-s) var(--cls-l));flex-direction:column;gap:7px;padding:10px 11px 9px;transition:border-color .12s,transform .12s,box-shadow .12s;display:flex;position:relative}.card.plain{border-top:1px solid var(--line)}.card:hover:not([disabled]){box-shadow:var(--shadow);border-color:var(--ink-2);transform:translateY(-1px)}.card[disabled]{cursor:not-allowed;opacity:.55;border-top-color:var(--line)}.card[data-chosen="1"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.card-top{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.card-name{font-size:13.5px;font-weight:600;line-height:1.2}.card-lv{font-family:var(--font-num);color:var(--muted);font-size:11px}.tag-prc{letter-spacing:.1em;text-transform:uppercase;color:var(--brass);font-size:8.5px;font-weight:700}.deltas{flex-direction:column;gap:3px;display:flex}.d-row{flex-wrap:wrap;gap:3px 5px;display:flex}.d{background:var(--panel-2);min-width:0;min-height:18px;color:var(--ink-2);border:1px solid var(--line-soft);border-radius:2px;align-items:center;gap:5px;padding:2px 6px;font-size:10.5px;font-weight:600;line-height:1;display:inline-flex}.d i{font-style:normal;font-family:var(--font-ui);letter-spacing:.02em;opacity:.8;white-space:nowrap;font-size:9.5px;font-weight:600}.d b{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-weight:700}.d.up{color:var(--gain);border-color:var(--gain)}@supports (color:color-mix(in lab, red, red)){.d.up{border-color:color-mix(in srgb, var(--gain) 35%, transparent)}}.d.up{background:var(--accent-soft)}.d.down{color:var(--loss);border-color:var(--loss)}@supports (color:color-mix(in lab, red, red)){.d.down{border-color:color-mix(in srgb, var(--loss) 35%, transparent)}}.d.feat{color:var(--brass);border-color:var(--brass)}@supports (color:color-mix(in lab, red, red)){.d.feat{border-color:color-mix(in srgb, var(--brass) 35%, transparent)}}.d.feat{background:var(--brass-soft)}.d[data-row=save].up{color:var(--save);border-color:var(--save)}@supports (color:color-mix(in lab, red, red)){.d[data-row=save].up{border-color:color-mix(in srgb, var(--save) 35%, transparent)}}.d[data-row=save].up{background:var(--save)}@supports (color:color-mix(in lab, red, red)){.d[data-row=save].up{background:color-mix(in srgb, var(--save) 9%, transparent)}}.d[data-row=skill].up{color:var(--ink-2);border-color:var(--line);background:var(--panel-2)}.card-lock{color:var(--locked);font-size:10.5px;line-height:1.3}.card-lock span{display:block}.card-note{color:var(--muted);font-size:10.5px;line-height:1.3}.card-en{font-family:var(--font-num);color:var(--muted);letter-spacing:.02em;margin-top:-4px;font-size:10.5px}.aligns{grid-template-columns:repeat(3,minmax(0,150px));gap:6px;display:grid}.align{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);text-align:left;padding:8px 10px;font-size:12.5px;transition:border-color .12s,background .12s}.align:hover{border-color:var(--accent);background:var(--accent-soft)}.align[data-chosen="1"]{border-color:var(--accent);background:var(--accent-soft);font-weight:600}.pb{flex-direction:column;gap:4px;max-width:400px;display:flex}.pb-row{border:1px solid var(--line-soft);border-radius:var(--r);background:var(--panel);grid-template-columns:40px 96px 54px 1fr;align-items:center;gap:10px;padding:6px 10px;display:grid}.pb-ab{font-family:var(--font-num);letter-spacing:.06em;color:var(--ink-2);font-size:12px;font-weight:700}.pb-step{align-items:center;gap:2px;display:flex}.pb-step button{border:1px solid var(--line);background:var(--panel-2);width:24px;height:24px;color:var(--ink-2);border-radius:2px;font-size:14px;line-height:1}.pb-step button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.pb-step button:disabled{opacity:.3;cursor:not-allowed}.pb-step .val{font-family:var(--font-num);text-align:center;font-variant-numeric:tabular-nums;min-width:30px;font-size:15px;font-weight:600}.pb-race{font-family:var(--font-num);text-align:center;font-size:11.5px;font-weight:600}.pb-race.plus{color:var(--gain)}.pb-race.minus{color:var(--loss)}.pb-race.zero{color:var(--muted)}.pb-tot{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:13px}.pb-tot b{font-size:15px;font-weight:600}.pb-tot .mod{color:var(--accent);font-weight:600}.pb-budget{font-family:var(--font-num);align-items:baseline;gap:8px;margin-bottom:10px;font-size:12.5px;display:flex}.pb-budget b{font-size:18px;font-weight:600}.pb-budget[data-over="1"] b{color:var(--loss)}.pb-legend{color:var(--muted);max-width:560px;margin-top:8px;font-size:11px}.slot-chips{flex-wrap:wrap;gap:7px;margin-bottom:10px;display:flex}.slot-chip{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);border-left:3px dashed var(--line);align-items:stretch;display:inline-flex;overflow:hidden}.slot-chip[data-filled="1"]{border-left-style:solid;border-left-color:var(--brass)}.slot-chip[data-kind=class_bonus]{border-left-color:hsl(var(--h) var(--cls-s) var(--cls-l))}.slot-chip[data-focused="1"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.slot-pick{text-align:left;align-items:center;gap:8px;padding:6px 10px;display:flex}.slot-pick:hover{background:var(--accent-soft)}.slot-glyph{color:var(--brass);font-size:13px}.slot-chip[data-kind=class_bonus] .slot-glyph{color:hsl(var(--h) var(--cls-s) var(--cls-l))}.slot-text{flex-direction:column;line-height:1.25;display:flex}.slot-label{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);font-size:9.5px;font-weight:700}.slot-val{font-size:12.5px;font-weight:600}.slot-chip:not([data-filled="1"]) .slot-val{color:var(--todo);font-style:italic;font-weight:400}.slot-clear{color:var(--muted);border-left:1px solid var(--line-soft);padding:0 9px;font-size:11px}.slot-clear:hover{background:var(--loss);color:var(--panel)}.slot-hint{color:var(--accent);margin:-4px 0 10px;font-size:11.5px}.choice-step{border-radius:var(--r);background:var(--panel-2);border:1px solid var(--accent);max-width:760px;margin:0 0 12px;padding:11px 13px 13px}.choice-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.choice-cancel{color:var(--muted);font-size:11.5px}.choice-cancel:hover{color:var(--loss)}.choice-hint{color:var(--ink-2);max-width:640px;margin:4px 0 10px;font-size:11.5px}.choice-values{flex-wrap:wrap;gap:7px;display:flex}.choice-value{text-align:left;border:1px solid var(--line);border-radius:var(--r);background:var(--panel);flex-direction:column;gap:1px;padding:6px 11px;font-size:12.5px;font-weight:600;display:inline-flex}button.choice-value:hover{border-color:var(--accent);background:var(--accent-soft)}.choice-blocked{flex-wrap:wrap;align-items:flex-start;gap:7px;margin-top:12px;display:flex}.choice-blocked .eyebrow{flex-basis:100%}.choice-value[data-blocked="1"]{opacity:.72;border-style:dashed;font-weight:400}.choice-val-name{color:var(--locked)}.choice-why{color:var(--locked);font-size:10.5px;font-family:var(--font-num)}.circle-badge{font-family:var(--font-num);background:var(--accent);border-radius:2px;justify-content:center;align-items:center;min-width:15px;height:15px;padding:0 3px;font-size:9.5px;font-weight:700;display:inline-flex}@supports (color:color-mix(in lab, red, red)){.circle-badge{background:color-mix(in srgb, var(--accent) 16%, transparent)}}.circle-badge{color:var(--accent);border:1px solid var(--accent)}@supports (color:color-mix(in lab, red, red)){.circle-badge{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent)}}.circle-badge{flex:none}.slot-chip[data-kind=spell]{border-left-color:var(--accent)}.slot-chip[data-kind=spell] .slot-pick{cursor:default}.slot-chip[data-kind=spell] .slot-pick:hover{background:0 0}.feat-bonus-tag.school{color:var(--muted);border-color:var(--line);text-transform:none;letter-spacing:0;font-weight:400}.spell-list{margin-top:10px}.sgroup-title{padding:12px 16px 0;display:block}.sgroup-cls{color:var(--ink-2);margin:4px 0 0;padding:0 16px;font-size:11.5px}.slots-row{flex-wrap:wrap;gap:3px;padding:4px 16px 0;display:flex}.slot-cell{border:1px solid var(--line-soft);background:var(--panel-2);border-radius:2px;flex-direction:column;align-items:center;gap:0;min-width:26px;padding:3px 4px 4px;display:flex}.slot-cell i{font-style:normal;font-family:var(--font-num);color:var(--muted);font-size:8.5px;font-weight:700}.slot-cell b{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.granted{color:var(--ink-2);border-radius:var(--r);background:var(--panel-2);border:1px solid var(--line-soft);max-width:640px;margin:0 0 12px;padding:7px 11px;font-size:12px}.granted-lbl{color:var(--muted);margin-right:6px;font-weight:600}.granted-note{color:var(--muted);font-style:italic}.feat-bar{z-index:6;background:var(--ground);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:10px;max-width:760px;padding:10px 0;display:flex;position:sticky;top:0}.feat-lists{overscroll-behavior:contain;max-width:760px;height:clamp(300px,58vh,640px);margin-top:4px;padding-right:6px;overflow-y:auto}.feat-search{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);min-width:200px;max-width:640px;color:var(--ink);font:inherit;flex:1;padding:7px 11px;font-size:13px}.feat-search:focus{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent);outline:none}.feat-search::placeholder{color:var(--muted)}.filter-chips{gap:4px;display:flex}.filter-chip{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);color:var(--ink-2);padding:6px 11px;font-size:12px;font-weight:600}.filter-chip:hover{border-color:var(--accent)}.filter-chip[data-on="1"]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}.feat-group{z-index:2;background:var(--ground);border-bottom:1px solid var(--line);align-items:baseline;gap:9px;margin:14px 0 7px;padding:4px 0 5px;display:flex;position:sticky;top:0}.feat-group:first-child{margin-top:0}.feat-group-note{color:var(--muted);font-size:11px;font-style:italic}.empty-row{color:var(--muted);margin:0 0 4px;font-size:12px}.feats{flex-direction:column;gap:4px;max-width:760px;display:flex}.feat{text-align:left;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);break-inside:avoid;-webkit-column-break-inside:avoid;grid-template-columns:1fr auto;align-items:center;gap:14px;width:100%;padding:7px 11px;transition:border-color .12s,background .12s;display:grid}.feat:hover:not([disabled]){border-color:var(--accent);background:var(--accent-soft)}.feat[disabled]{cursor:default;background:var(--panel-2);border-color:var(--line-soft)}.feat[data-chosen="1"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.feat-left{min-width:0}.feat-line{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.feat-glyph{color:var(--brass);font-size:10px}.feat[data-type=epic] .feat-glyph{color:var(--brass);font-size:11px}.feat-name{font-size:13px;font-weight:600}.feat-desc{color:var(--muted);margin-top:1px;font-size:11.5px}.feat-bonus-tag{letter-spacing:.05em;text-transform:uppercase;color:hsl(var(--h) var(--cls-s) var(--cls-l));border:1px solid hsl(var(--h) var(--cls-s) var(--cls-l));border-radius:2px;padding:1px 5px;font-size:9px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.feat-bonus-tag{border:1px solid color-mix(in srgb, hsl(var(--h) var(--cls-s) var(--cls-l)) 40%, transparent)}}.feat-epic-tag{letter-spacing:.08em;text-transform:uppercase;color:var(--brass);background:var(--brass-soft);border-radius:2px;padding:1px 5px;font-size:9px;font-weight:700}.feat-unlocks{font-family:var(--font-num);color:var(--accent);background:var(--accent-soft);border:1px solid var(--accent);font-size:10px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.feat-unlocks{border:1px solid color-mix(in srgb, var(--accent) 30%, transparent)}}.feat-unlocks{cursor:help;border-radius:2px;padding:0 4px}.feat-prereq,.feat-free{color:var(--todo);margin-top:2px;font-size:11px;font-style:italic}.feat-free[data-taken="1"]{color:var(--muted)}.hl{background:var(--accent-soft);color:var(--accent);border-radius:1px;padding:0 1px;font-weight:700}.feat-alias{color:var(--muted);opacity:.85;margin-top:2px;font-size:10.5px;font-style:italic}.feat-right{text-align:right;flex-direction:column;align-items:flex-end;gap:1px;display:flex}.feat-ok{color:var(--gain);white-space:nowrap;font-size:11.5px;font-weight:600}.feat-slot-note{color:var(--muted);white-space:nowrap;font-size:10px}.feat-why{color:var(--locked);font-size:11px;font-family:var(--font-num);white-space:nowrap;display:block}.feat-gap{color:var(--todo)}.sk-budget{align-items:baseline;gap:8px;margin-bottom:12px;font-size:12.5px;display:flex}.sk-budget b{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:19px;font-weight:600}.sk-budget[data-over="1"] b{color:var(--loss)}.sk-budget-note{color:var(--muted);font-family:var(--font-num);font-size:11.5px}.skills{flex-direction:column;gap:4px;max-width:660px;display:flex}.sk-row{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);break-inside:avoid;-webkit-column-break-inside:avoid;grid-template-columns:1fr auto auto auto;align-items:center;gap:14px;width:100%;padding:7px 11px;display:grid}.sk-nameline{flex-wrap:wrap;align-items:baseline;gap:7px;min-width:0;display:flex}.sk-name{font-size:13px;font-weight:600}.sk-ab{font-family:var(--font-num);letter-spacing:.06em;color:var(--muted);font-size:9.5px}.sk-kind{letter-spacing:.05em;text-transform:uppercase;color:var(--accent);border:1px solid var(--accent);border-radius:2px;padding:1px 5px;font-size:9px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.sk-kind{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent)}}.sk-kind[data-cross="1"]{color:var(--locked);border-color:var(--locked)}@supports (color:color-mix(in lab, red, red)){.sk-kind[data-cross="1"]{border-color:color-mix(in srgb, var(--locked) 35%, transparent)}}.sk-rank{font-family:var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.sk-rank b{font-size:15px;font-weight:600}.sk-rank[data-capped="1"] b{color:var(--brass)}.sk-cap{color:var(--muted);font-size:11.5px}.sk-step{align-items:center;gap:2px;display:flex}.sk-step button{border:1px solid var(--line);background:var(--panel-2);width:24px;height:24px;color:var(--ink-2);border-radius:2px;font-size:14px;line-height:1}.sk-step button:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sk-step button:disabled{opacity:.3;cursor:not-allowed}.sk-val{font-family:var(--font-num);text-align:center;font-variant-numeric:tabular-nums;min-width:26px;font-size:13px;font-weight:600}.sk-max{color:var(--ink-2);border:1px solid var(--line);border-radius:2px;padding:4px 9px;font-size:11px;font-weight:600}.sk-max:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.sk-max:disabled{opacity:.3;cursor:not-allowed}.sk-add-wrap{margin-top:12px}.sk-search{max-width:320px;margin-top:12px}.sk-chips{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.sk-chip{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);align-items:baseline;gap:7px;padding:5px 9px;font-size:12px;display:inline-flex}.sk-chip:hover{border-color:var(--accent);background:var(--accent-soft)}.sk-chip-cost{font-family:var(--font-num);color:var(--locked);font-size:10px;font-weight:700}.sk-chip[data-cls="1"] .sk-chip-cost{color:var(--accent)}@container (min-width:1040px){.skills{column-count:2;column-gap:20px;max-width:1340px;display:block}.skills>.sk-row{max-width:660px;margin-bottom:4px}.pb{grid-template-rows:repeat(3,auto);grid-template-columns:repeat(2,minmax(0,340px));grid-auto-flow:column;gap:4px 28px;max-width:708px;display:grid}}@container (min-width:1200px){.feats{column-count:2;column-gap:24px;max-width:1544px;display:block}.feats>.feat{max-width:760px;margin-bottom:4px}.feat-bar,.feat-lists,.choice-step{max-width:1544px}}@container (min-width:1900px){.feats{column-count:3;max-width:2328px}.skills{column-count:3;max-width:2020px}.feat-bar,.feat-lists,.choice-step{max-width:2328px}}.stats{border-left:1px solid var(--line);background:var(--panel);max-height:100vh;padding-bottom:30px;position:sticky;top:0;overflow-y:auto}.stats-head{border-bottom:1px solid var(--line-soft);justify-content:space-between;align-items:baseline;padding:11px 16px 8px;display:flex}.sgroup+.sgroup{border-top:1px solid var(--line-soft)}.sgroup-h{padding:6px 16px 0;line-height:1.1;display:block}.sgroup[data-group=save] .sgroup-h{color:var(--save);opacity:.85}.sgroup-note{color:var(--muted);margin:1px 0 0;padding:0 16px 3px;font-size:10.5px;line-height:1.35}.sgroup[data-group=save] .sgroup-note{color:var(--save)}.abs{grid-template-columns:repeat(2,1fr);gap:5px;padding:8px 16px 3px;display:grid}.ab{border:1px solid var(--line-soft);border-left:3px solid hsl(var(--h) var(--cls-s) var(--cls-l));border-radius:var(--r);background:var(--panel-2);min-width:0;padding:5px 7px}.ab-k{font-family:var(--font-num);letter-spacing:.06em;color:var(--muted);justify-content:space-between;align-items:baseline;gap:4px;font-size:10px;font-weight:700;display:flex}.ab-v{font-family:var(--font-num);font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;margin-top:1px;display:flex}.ab-v b{color:var(--ink);font-size:16px;font-weight:600}.ab-m{color:var(--accent);font-size:11px;font-weight:600}.ab-from{color:var(--muted);margin-top:2px;font-size:9.5px;line-height:1.3;display:block}.srow{grid-template-columns:1fr auto 38px;align-items:baseline;gap:8px;padding:2px 16px;font-size:12.5px;line-height:1.2;display:grid}.srow .k{color:var(--ink-2)}.srow .v{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.srow .v[data-unknown="1"]{color:var(--todo)}.srow .ghost{font-family:var(--font-num);color:var(--gain);text-align:right;opacity:0;font-variant-numeric:tabular-nums;font-size:12px;font-weight:600;transition:opacity .12s}.srow[data-changed="1"] .ghost{opacity:1}.srow[data-changed="1"]{background:var(--accent-soft)}.srow[data-down="1"] .ghost{color:var(--loss)}.srow .capped,.ab-k .capped{font-family:var(--font-num);letter-spacing:.04em;white-space:nowrap;color:var(--brass);background:var(--brass-soft);border:1px solid var(--brass);font-size:8.5px;font-weight:700}@supports (color:color-mix(in lab, red, red)){.srow .capped,.ab-k .capped{border:1px solid color-mix(in srgb, var(--brass) 35%, transparent)}}.srow .capped,.ab-k .capped{border-radius:2px;margin-left:5px;padding:0 4px}.srow[data-capped="1"] .v{color:var(--brass)}.srow-pair .pair-vals{align-items:baseline;gap:4px;display:flex}.srow-pair .pair-hint{letter-spacing:.04em;color:var(--muted);font-size:9.5px;font-style:normal}.srow-pair .pair-sep{color:var(--muted);font-size:12px}.srow[data-attention=todo] .v{color:var(--todo)}.srow[data-attention=over] .v{color:var(--loss)}.srow[data-attention] .k:after{content:"•";color:var(--todo);vertical-align:middle;margin-left:5px;font-size:13px;line-height:0}.srow[data-attention=over] .k:after{color:var(--loss)}.delta-box{border:1px dashed var(--line);border-radius:var(--r);background:var(--panel-2);margin:12px 12px 0;padding:10px 12px}.delta-box[data-live="1"]{border-style:solid;border-color:var(--accent);background:var(--accent-soft)}.delta-box .eyebrow{margin-bottom:7px;display:block}.delta-empty{color:var(--muted);font-size:11.5px}.naked-note{color:var(--muted);padding:6px 16px 0;font-size:10.5px;font-style:italic}.gear{margin-top:8px}.gear-head{text-align:left;border-top:1px solid var(--line);align-items:baseline;gap:8px;width:100%;padding:10px 16px 9px;display:flex}.gear-head:hover .eyebrow{color:var(--accent)}.gear-head[data-open="1"] .sect-chev{transform:rotate(90deg)}.gear-sum{font-family:var(--font-num);color:var(--ink-2);text-align:right;font-variant-numeric:tabular-nums;margin-left:auto;font-size:10.5px}.gear-body{padding:0 16px 4px}.gear-lbl{letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin:10px 0 5px;font-size:10px;font-weight:700}.gear-grid{grid-template-columns:repeat(auto-fit,minmax(78px,1fr));gap:4px;display:grid}.gear-grid.long{grid-template-columns:repeat(auto-fit,minmax(116px,1fr))}.gear-cell{border:1px solid var(--line-soft);background:var(--panel-2);border-radius:2px;justify-content:space-between;align-items:center;gap:5px;min-width:0;padding:3px 4px 3px 7px;display:flex}.gear-cell.wide{grid-column:1/-1}.gear-cell[data-capped="1"]{border-color:var(--brass)}@supports (color:color-mix(in lab, red, red)){.gear-cell[data-capped="1"]{border-color:color-mix(in srgb, var(--brass) 50%, transparent)}}.gear-cell[data-capped="1"] .gear-num{color:var(--brass)}.gear-k{font-family:var(--font-num);letter-spacing:.04em;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:9.5px;font-weight:700;overflow:hidden}.gear-num{text-align:right;width:40px;font-family:var(--font-num);font-variant-numeric:tabular-nums;border:1px solid var(--line);background:var(--panel);color:var(--ink);appearance:textfield;border-radius:2px;flex:none;padding:2px 4px;font-size:12.5px;font-weight:600}.gear-num:focus{border-color:var(--accent);outline:none}.gear-num::-webkit-outer-spin-button{appearance:none;margin:0}.gear-num::-webkit-inner-spin-button{appearance:none;margin:0}.gear-capped{color:var(--brass);margin:5px 0 0;font-size:10.5px;line-height:1.35}.gear-total{font-family:var(--font-num);color:var(--ink-2);font-variant-numeric:tabular-nums;margin:6px 0 0;font-size:11px}.gear-total b{color:var(--ink);font-weight:600}.gear-note{color:var(--muted);margin:10px 0 0;font-size:10.5px;line-height:1.4}.gear-clear{margin-top:10px}.gear-cascade{border:1px solid var(--accent);margin-top:12px;padding:9px 11px}@supports (color:color-mix(in lab, red, red)){.gear-cascade{border:1px solid color-mix(in srgb, var(--accent) 35%, transparent)}}.gear-cascade{border-radius:var(--r);background:var(--accent-soft)}.gear-cascade .eyebrow{margin-bottom:6px;display:block}.gear-casc-row{font-family:var(--font-num);font-variant-numeric:tabular-nums;grid-template-columns:1fr auto auto auto auto;align-items:baseline;gap:7px;padding:2px 0;font-size:11.5px;display:grid}.gear-casc-row .k{font-family:var(--font-ui);color:var(--ink-2)}.gear-casc-row .was{color:var(--muted)}.gear-casc-row .arr{color:var(--muted);font-size:9px}.gear-casc-row .now{font-weight:600}.gear-casc-row .d{color:var(--gain);text-align:right;min-width:30px;font-weight:700}.gaps{margin:12px 12px 0}.gaps-toggle{text-align:left;border:1px solid var(--line);border-radius:var(--r);background:var(--panel-2);width:100%;color:var(--ink-2);align-items:center;gap:8px;padding:8px 10px;font-size:11.5px;display:flex}.gaps-toggle:hover{border-color:var(--brass)}.gaps-toggle b{font-family:var(--font-num);color:var(--todo);font-variant-numeric:tabular-nums;font-size:13px;font-weight:700}.gaps-toggle[data-clean="1"] b{color:var(--muted)}.gaps-toggle .chev{color:var(--muted);margin-left:auto;font-size:9px}.gaps-body{border:1px solid var(--line-soft);border-radius:var(--r);background:var(--panel);margin-top:6px;padding:8px 10px}.gaps-group{margin-bottom:10px}.gaps-group:last-child{margin-bottom:0}.gaps-group h4{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin:0 0 4px;font-size:10px;font-weight:700}.gaps-list{margin:0;padding-left:14px}.gaps-list li{color:var(--ink-2);font-size:11px;line-height:1.4}.gaps-more{color:var(--muted);margin:4px 0 0;font-size:11px;font-style:italic}.sheet-toggle,.spine-expand{display:none}@media (max-width:940px){.cols{grid-template-columns:1fr;align-content:start}.spine-resize{display:none}.feat-lists{height:clamp(240px,46vh,420px)}.spine{border-right:none;border-bottom:1px solid var(--line);max-height:none;padding-bottom:0;position:static;overflow:visible}.spine-head{position:static}.spine-expand{text-align:left;width:100%;color:var(--accent);border-top:1px solid var(--line-soft);padding:8px 14px;font-size:12px;font-weight:600;display:block}.spine:not([data-expanded="1"]) .spine-list{padding:0 8px 8px;display:flex;overflow-x:auto}.spine:not([data-expanded="1"]) .epic-rule{display:none}.spine:not([data-expanded="1"]) .lv{text-align:center;width:44px;min-width:44px;padding:5px 0 6px;display:block}.spine:not([data-expanded="1"]) .lv-band{width:100%;height:3px;bottom:auto}.spine:not([data-expanded="1"]) .lv-main{flex-direction:column;align-items:center;gap:2px}.spine:not([data-expanded="1"]) .lv-num{min-width:0;font-size:12px}.spine:not([data-expanded="1"]) .lv-cls{display:none}.spine:not([data-expanded="1"]) .lv-feats,.spine:not([data-expanded="1"]) .lv-spells,.spine:not([data-expanded="1"]) .lv-skills{flex-direction:row;justify-content:center;gap:3px;margin:3px 0 0;display:flex}.spine:not([data-expanded="1"]) .lv-feat,.spine:not([data-expanded="1"]) .lv-spell{gap:0;font-size:0}.spine:not([data-expanded="1"]) .lv-feat i,.spine:not([data-expanded="1"]) .lv-spell i{width:auto;font-size:7px}.spine:not([data-expanded="1"]) .lv-feat[data-skill="1"]{display:none}.spine:not([data-expanded="1"]) .lv[aria-current=true]:after{width:auto;height:2px;inset:auto 0 0}.spine:not([data-expanded="1"]) .lv0{min-width:108px;padding:8px 10px 9px}.spine:not([data-expanded="1"]) .lv0-sub{display:none}.spine:not([data-expanded="1"]) .lv0-title{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.stage{padding:16px 16px 96px}.aligns{grid-template-columns:repeat(3,minmax(0,1fr))}.pb-row{grid-template-columns:34px 88px 40px 1fr}.sk-row{grid-template-columns:1fr auto;row-gap:8px}.sk-nameline{grid-column:1/-1}.feat{grid-template-columns:minmax(0,1fr) minmax(0,auto);gap:10px}.feat-why,.feat-ok,.feat-slot-note{white-space:normal}.stats{z-index:20;border-left:none;border-top:1px solid var(--line);max-height:64vh;padding-bottom:12px;transition:transform .22s;position:fixed;inset:auto 0 0;transform:translateY(calc(100% - 54px));box-shadow:0 -8px 30px -14px #00000080}.stats[data-open="1"]{transform:translateY(0)}.sheet-toggle{border-bottom:1px solid var(--line-soft);grid-template-columns:repeat(4,minmax(0,1fr)) 28px;align-items:center;gap:6px;width:100%;height:54px;padding:0 14px;display:grid}.sheet-toggle .m{flex-direction:column;align-items:flex-start;min-width:0;display:flex}.sheet-toggle .m span,.sheet-toggle .m b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.sheet-toggle .m[data-cell=saves] b{font-size:12.5px}.sheet-toggle .m span{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:700}.sheet-toggle .m b{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:15px;font-weight:600}.sheet-toggle .m b[data-attention=todo]{color:var(--todo)}.sheet-toggle .m b[data-attention=over]{color:var(--loss)}.sheet-toggle .chev{color:var(--muted);justify-self:end;transition:transform .22s}.stats[data-open="1"] .chev{transform:rotate(180deg)}.stats-head{display:none}.top{gap:12px;padding:10px 14px}.brand b{font-size:15px}}.seg{border:1px solid var(--line);border-radius:var(--r);display:inline-flex;overflow:hidden}.seg-b{color:var(--ink-2);background:var(--panel-2);padding:5px 11px;font-size:12px;font-weight:600;text-decoration:none}.seg-b:hover{color:var(--accent)}.seg-b[data-on="1"]{background:var(--accent);color:var(--accent-ink)}.view{width:100%;max-width:1080px;margin:0 auto;padding:24px 26px 80px}.v-sect{margin-top:30px}.v-sect>.eyebrow{border-bottom:1px solid var(--line);margin-bottom:12px;padding-bottom:6px;display:block}.v-title{font-family:var(--font-display);margin:0 0 6px;font-size:30px;font-weight:600}.v-sub{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;display:flex}.v-actions{flex-wrap:wrap;gap:8px;display:flex}.v-gaps{border-radius:var(--r);border:1px solid var(--todo);margin-top:16px;padding:10px 13px}@supports (color:color-mix(in lab, red, red)){.v-gaps{border:1px solid color-mix(in srgb, var(--todo) 40%, transparent)}}.v-gaps{background:var(--todo)}@supports (color:color-mix(in lab, red, red)){.v-gaps{background:color-mix(in srgb, var(--todo) 8%, transparent)}}.v-gaps{color:var(--ink-2);max-width:720px;font-size:12px}.v-gaps b{color:var(--todo)}.v-gaps ul{margin:7px 0 0;padding-left:16px}.v-gaps li{line-height:1.45}.v-gaps .more{color:var(--muted);font-style:italic}.v-stats{background:var(--line);border:1px solid var(--line);border-radius:var(--r);grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:1px;display:grid;overflow:hidden}.v-stat{background:var(--panel);flex-direction:column;gap:2px;padding:11px 13px 12px;display:flex}.v-stat .k{letter-spacing:.11em;text-transform:uppercase;color:var(--muted);font-size:10px;font-weight:700}.v-stat .v{font-family:var(--font-num);font-variant-numeric:tabular-nums;font-size:25px;font-weight:600;line-height:1.05}.v-stat .from{color:var(--muted);font-size:10.5px;font-family:var(--font-num);line-height:1.3}.v-stat[data-hero="1"] .v{color:var(--accent)}.v-stat[data-unknown="1"] .v{color:var(--todo)}.v-abils{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:6px;display:grid}.v-ab{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);padding:8px 11px}.v-ab .k{font-family:var(--font-num);letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:700}.v-ab .row{font-family:var(--font-num);font-variant-numeric:tabular-nums;align-items:baseline;gap:6px;display:flex}.v-ab .start{color:var(--muted);font-size:12.5px}.v-ab .arr{color:var(--muted);font-size:10px}.v-ab .fin{font-size:18px;font-weight:600}.v-ab .m{color:var(--accent);font-size:12px;font-weight:600}.v-two{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px;display:grid}.v-list{flex-direction:column;gap:3px;display:flex}.v-li{border-bottom:1px solid var(--line-soft);align-items:baseline;gap:8px;padding:3px 0;font-size:12.5px;display:flex}.v-li i{color:var(--brass);text-align:center;flex:none;width:10px;font-size:9px;font-style:normal}.v-li .n{font-family:var(--font-num);color:var(--ink-2);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11.5px}.v-li[data-cross="1"],.v-li[data-cross="1"] i,.v-li[data-granted="1"]{color:var(--muted)}.v-li .lv{font-family:var(--font-num);color:var(--muted);font-size:10px}.v-li[data-wasted="1"]{flex-wrap:wrap}.v-li-note{color:var(--muted);flex-basis:100%;font-size:10.5px;font-style:italic;line-height:1.3}.v-sk{flex-wrap:wrap}.v-sk .from{font-family:var(--font-num);color:var(--muted);flex-basis:100%;font-size:10.5px;line-height:1.3}.v-sk[data-unknown="1"] .n{color:var(--todo)}.v-guide{grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:0 30px;display:grid}.v-g{border-top:1px solid var(--line-soft);grid-template-columns:20px 74px 1fr;align-items:baseline;gap:8px;padding:4px 0 5px;display:grid}.v-g[data-run="1"]{border-top:1px solid var(--line)}.v-g .lv{font-family:var(--font-num);color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.v-g .cls{font-size:12.5px;font-weight:700}.v-g .picks{color:var(--ink-2);flex-direction:column;gap:2px;font-size:11.5px;display:flex}.v-g .pick{align-items:baseline;gap:6px;display:flex}.v-g .pick i{text-align:center;width:9px;color:var(--brass);flex:none;font-size:9px;font-style:normal}.v-g .pick[data-skill="1"]{color:var(--muted)}.v-g .pick[data-skill="1"] i{color:var(--muted);font-size:8px}.v-g .pick[data-granted="1"]{color:var(--muted)}.v-legend{color:var(--muted);flex-wrap:wrap;gap:3px 12px;margin:5px 0 10px;font-size:10.5px;display:flex}.v-sect>.eyebrow+.v-legend{margin-top:-4px}.v-legend span{align-items:baseline;gap:5px;display:inline-flex}.v-legend i{color:var(--brass);font-size:9px;font-style:normal}.v-legend span[data-skill="1"] i{color:var(--muted);font-size:8px}.v-legend span[data-abil="1"] i{color:var(--todo-abil)}.v-g .pick .n{font-family:var(--font-num);font-variant-numeric:tabular-nums;margin-left:auto;font-size:10px}.v-g .pick[data-abil="1"]{color:hsl(var(--h) var(--cls-s) var(--cls-l));font-family:var(--font-num);font-size:11px;font-weight:600}.v-g .pick[data-abil="1"] i{color:hsl(var(--h) var(--cls-s) var(--cls-l))}.v-g .pick[data-spell="1"] .circle-badge{align-self:center}@media (max-width:940px){.view{padding:16px 14px 60px}.v-title{font-size:23px}}.scrim{z-index:50;background:#060a0c8c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.scrim[hidden]{display:none}.modal{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);width:100%;max-width:640px;max-height:82vh;box-shadow:var(--shadow);flex-direction:column;display:flex}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:13px 16px;display:flex}.modal-head h2{font-family:var(--font-display);margin:0;font-size:17px;font-weight:600}.modal pre{font-family:var(--font-num);background:var(--panel-2);color:var(--ink-2);white-space:pre-wrap;flex:1;margin:0;padding:16px;font-size:11.5px;line-height:1.55;overflow:auto}.modal-foot{border-top:1px solid var(--line);color:var(--muted);margin:0;padding:11px 16px;font-size:11.5px}.modal-wide{max-width:760px}.modal-body{flex-direction:column;flex:1;gap:14px;padding:14px 16px;display:flex;overflow:auto}.modal-body label{display:block}.modal-body label .eyebrow{margin-bottom:4px;display:block}.import-paste{resize:vertical;width:100%;min-width:0;min-height:120px;font-family:var(--font-num);font-size:11.5px;line-height:1.5}.import-foot{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.import-report{flex-direction:column;gap:12px;display:flex}.import-sum{flex-wrap:wrap;gap:2px 18px;display:flex}.import-sum-i{flex-direction:column;gap:1px;display:flex}.import-sum-i b{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--ink);font-size:13px}.import-cmp{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.import-cmp-h,.import-cmp-r{grid-template-columns:1fr 110px 110px;align-items:baseline;gap:10px;padding:5px 10px;display:grid}.import-cmp-h{background:var(--panel-2)}.import-cmp-r{border-top:1px solid var(--line);font-size:12px}.import-cmp-r b{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--ink-2);font-weight:600}.import-issues{flex-direction:column;gap:10px;display:flex}.import-group{flex-direction:column;gap:3px;display:flex}.modal-body .feat-why{white-space:normal;margin:0}@media (max-width:560px){.import-cmp-h,.import-cmp-r{grid-template-columns:1fr 74px 74px;gap:6px}}.flash{z-index:60;border-radius:var(--r);border:1px solid var(--line);background:var(--panel);max-width:360px;box-shadow:var(--shadow);cursor:pointer;align-items:flex-start;gap:8px;padding:10px 13px;font-size:12.5px;display:flex;position:fixed;top:14px;right:14px}.flash[data-kind=error]{border-color:var(--loss);color:var(--loss)}.flash[data-kind=info]{border-color:var(--accent)}.flash p{margin:0}.flash-title{font-weight:700}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.nav{flex-wrap:wrap;align-items:center;gap:2px;display:flex}.nav a{color:var(--ink-2);border-radius:var(--r);padding:5px 9px;font-size:12.5px;font-weight:600;text-decoration:none}.nav a:hover,.nav a[data-on="1"]{color:var(--accent);background:var(--accent-soft)}.who{align-items:center;gap:8px;font-size:12px;display:flex}.who a{color:var(--ink-2);text-decoration:none}.who a:hover{color:var(--accent)}.who b{font-weight:600}.page{width:100%;max-width:1080px;margin:0 auto;padding:22px 22px 80px}.page-narrow{max-width:620px}.page-title{font-family:var(--font-display);margin:0 0 6px;font-size:26px;font-weight:600}.page-h2{font-family:var(--font-display);border-bottom:1px solid var(--line);margin:28px 0 8px;padding-bottom:6px;font-size:17px;font-weight:600}.page-sub{color:var(--muted);margin:0 0 16px;font-size:12.5px}.page-sub a{color:var(--accent)}.form{max-width:520px}.form label,.filters label{margin-bottom:12px;display:block}.form label .eyebrow,.filters label .eyebrow{margin-bottom:4px;display:block}.form .feat-search,.filters .feat-search{width:100%;min-width:0}.form textarea.feat-search{resize:vertical;min-height:72px}.form-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.form-or{color:var(--muted);margin:18px 0 12px;font-size:12px}.form-sep{border:none;border-top:1px solid var(--line);margin:26px 0}.notice-soft{border:1px solid var(--line);border-radius:var(--r);background:var(--panel-2);color:var(--ink-2);margin:0 0 16px;padding:9px 12px;font-size:12px}.notice-soft a{color:var(--accent)}.filters{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:0 10px;max-width:none;margin-bottom:8px;padding:12px 13px;display:grid}.filters .btn{margin-bottom:12px}.filters-hint{color:var(--muted);margin:0 0 16px;font-size:11.5px}.filters-hint a{color:var(--accent)}#library-sections{flex-wrap:wrap;margin-bottom:14px}.bcards{background:var(--line);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:1px;display:flex;overflow:hidden}.bcards:empty{display:none}.bcard{background:var(--panel);justify-content:space-between;align-items:flex-start;gap:14px;padding:11px 13px;display:flex}.bcard-main{flex-direction:column;gap:5px;min-width:0;display:flex}.bcard-name{font-family:var(--font-display);color:var(--ink);font-size:16px;font-weight:600;text-decoration:none}.bcard-name:hover{color:var(--accent)}.bcard-meta{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:6px;font-size:12px;display:flex}.bcard-meta b{font-family:var(--font-num);font-variant-numeric:tabular-nums;color:var(--ink-2);font-weight:600}.bcard-author{color:var(--muted);border-bottom:1px dotted var(--line);text-decoration:none}.bcard-author:hover{color:var(--accent)}.bcard-dot{color:var(--line)}.bcard-classes{flex-wrap:wrap;gap:5px;display:flex}.bcard-empty{color:var(--muted);font-size:12px;font-style:italic}.bcard-desc{color:var(--ink-2);max-width:62ch;margin:2px 0 0;font-size:12.5px}.bcard-side{flex-direction:column;flex:none;align-items:flex-end;gap:4px;display:flex}.bcard-vis{letter-spacing:.08em;text-transform:uppercase;border-radius:var(--r);border:1px solid var(--line);color:var(--muted);padding:2px 6px;font-size:10px;font-weight:700}.bcard-vis[data-vis=public]{color:var(--accent);border-color:var(--accent)}@supports (color:color-mix(in lab, red, red)){.bcard-vis[data-vis=public]{border-color:color-mix(in srgb, var(--accent) 45%, transparent)}}.bcard-vis[data-vis=group]{color:var(--brass);border-color:var(--brass)}@supports (color:color-mix(in lab, red, red)){.bcard-vis[data-vis=group]{border-color:color-mix(in srgb, var(--brass) 45%, transparent)}}.bcard-when{font-family:var(--font-num);color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px}.pager{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.v-desc{color:var(--ink-2);max-width:68ch;margin:0 0 14px;font-size:13px}.bform-preview{border:1px solid var(--line);border-radius:var(--r);background:var(--panel);margin-bottom:20px;padding:11px 13px}.bform-preview .page-sub{margin:8px 0 0}.glist{background:var(--line);border:1px solid var(--line);border-radius:var(--r);flex-direction:column;gap:1px;margin-bottom:6px;display:flex;overflow:hidden}.grow-row{background:var(--panel);color:var(--ink);align-items:center;gap:10px;padding:9px 12px;text-decoration:none;display:flex}a.grow-row:hover{background:var(--accent-soft)}.grow-name{font-size:13px;font-weight:600}.grow-role{color:var(--muted);margin-left:auto;font-size:11px}.grow-row .btn{margin-left:0}.invite-code{font-family:var(--font-num);letter-spacing:.04em;border:1px solid var(--line);border-radius:var(--r);background:var(--panel-2);-webkit-user-select:all;user-select:all;padding:6px 10px;font-size:13px}.check{align-items:center;gap:8px;display:flex}@media (max-width:720px){.page{padding:16px 14px 60px}.page-title{font-size:21px}.bcard{flex-direction:column;gap:8px}.bcard-side{flex-direction:row;align-self:flex-start;align-items:center;gap:8px}.filters{grid-template-columns:1fr 1fr}.pager{justify-content:stretch}.pager .btn{text-align:center;flex:1}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}