@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(./inter-latin-400-normal-C38fXH4l.woff2)format("woff2"),url(./inter-latin-400-normal-CyCys3Eg.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(./inter-latin-500-normal-Cerq10X2.woff2)format("woff2"),url(./inter-latin-500-normal-BL9OpVg8.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(./inter-latin-600-normal-LgqL8muc.woff2)format("woff2"),url(./inter-latin-600-normal-CiBQ2DWP.woff)format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(./inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2"),url(./inter-latin-700-normal-BLAVimhd.woff)format("woff")}:root{--ink:#1b1b1b;--ink-2:#8e8e8e;--ink-3:#c7c7c7;--surface:#fff;--surface-2:#f6f6f6;--surface-3:#e3e3e3;--line:#e6e6e6;--line-strong:#bdbdbd;--scrim:#414141;--on-dark:#fff;--on-dark-2:#ffffffb8;--hoshido:#d4432c;--nohr:#6a4bc4;--valla:#178f86;--accent:var(--valla);--rel-s:#c57373;--rel-a:#6183d0;--rel-pair:#5eb761;--good:#5eb761;--good-soft:#9ed2a0;--good-tint:color-mix(in oklab, var(--good-soft) 35%, #fff);--bad:#be5555;--bad-soft:#f5adad;--bad-tint:color-mix(in oklab, var(--bad-soft) 70%, #fff);--bad-ink:color-mix(in oklab, var(--bad) 72%, #1b1b1b);--warn:#b39d2d;--warn-soft:#efe39b;--warn-tint:color-mix(in oklab, var(--warn-soft) 70%, #fff);--warn-ink:color-mix(in oklab, var(--warn) 72%, #1b1b1b);--info:#5b7fd0;--info-soft:#baccf0;--info-tint:color-mix(in oklab, var(--info-soft) 70%, #fff);--info-ink:color-mix(in oklab, var(--info) 72%, #1b1b1b);--stat-low:#842334;--stat-mid:#8a6a00;--stat-high:#12803f;--f-ui:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--t-title:700 38px/1.1 var(--f-ui);--t-section:700 21px/1.2 var(--f-ui);--t-name:400 21px/1.2 var(--f-ui);--t-sub:600 14px/1.25 var(--f-ui);--t-body:500 14px/1.3 var(--f-ui);--t-cell:600 12px/1.25 var(--f-ui);--t-note:400 13px/1.4 var(--f-ui);--r-xs:4px;--r-sm:5px;--r-md:8px;--r-lg:10px;--r-sheet:30px;--r-pill:999px;--s1:2px;--s2:6px;--s3:10px;--s4:12px;--s5:20px;--s6:30px;--tap:44px;--nav-h:72px;--rail-w:88px;--shadow-float:0 6px 16px #0000001f;--shadow-sheet:0 -8px 30px #0000002e;--ease:cubic-bezier(.2, .8, .2, 1)}:root,[data-route]{--accent-strong:color-mix(in oklab, var(--accent) 55%, #1b1b1b);--accent-soft:color-mix(in oklab, var(--accent) 12%, #fff)}[data-route=birthright]{--accent:var(--hoshido)}[data-route=conquest]{--accent:var(--nohr)}[data-route=revelation]{--accent:var(--valla)}*,:before,:after{box-sizing:border-box}html,body{touch-action:manipulation;background:var(--surface);color:var(--ink);font:var(--t-body);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}button:disabled{cursor:default}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}img{display:block}h1,h2,h3,p{margin:0}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.app{min-height:100dvh;padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));overflow-x:clip}.screen{min-width:0}.screen-title{font:var(--t-title);color:var(--ink);padding:18px var(--s3) 0}.screen-head{justify-content:space-between;align-items:center;gap:var(--s3);padding-right:var(--s3);display:flex}.section-title{font:var(--t-section)}.sub-title{font:var(--t-sub)}.muted{color:var(--ink-2)}.nav{z-index:20;padding:var(--s3) 40px calc(var(--s3) + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);justify-content:space-between;display:flex;position:fixed;inset:auto 0 0}.nav-item{min-width:56px;font:var(--t-cell);color:var(--ink);flex-direction:column;align-items:center;gap:4px;text-decoration:none;display:flex}.nav-item[aria-current=page]{color:var(--accent)}@media (width>=1024px){.app{grid-template-columns:var(--rail-w) minmax(0, 1fr);padding-bottom:0;display:grid}.nav{top:0;justify-content:flex-start;gap:var(--s5);height:100dvh;padding:var(--s5) 0;border-top:0;border-right:1px solid var(--line);flex-direction:column;position:sticky;inset:auto}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.icon-btn{min-width:var(--tap);min-height:var(--tap);color:var(--ink);border-radius:var(--r-pill);place-items:center;display:inline-grid}.text-btn{min-height:36px;padding:0 var(--s3);font:var(--t-sub);color:var(--accent-strong);border-radius:var(--r-md);align-items:center;gap:6px;display:inline-flex}.text-btn.danger{color:var(--bad)}.btn{min-height:var(--tap);font:var(--t-sub);border-radius:var(--r-pill);justify-content:center;align-items:center;gap:8px;padding:0 18px;display:inline-flex}.btn.primary{background:var(--accent-strong);color:var(--on-dark)}.btn.outline{border:1px solid var(--line-strong);color:var(--ink)}.badge{font:var(--t-cell);border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-strong);align-items:center;padding:1px 6px;font-size:11px;display:inline-flex}.badge.muted{background:var(--surface-3);color:var(--ink-2)}.badge.warn{white-space:nowrap;background:var(--warn-tint);max-width:100%;color:var(--warn-ink);padding:1px 4px;font-size:9px}.chip{min-height:36px;font:var(--t-cell);border:1px solid var(--line-strong);border-radius:var(--r-pill);color:var(--ink-2);padding:0 14px}.chip[aria-pressed=true]{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-dark)}.chip:disabled{opacity:.4}.accent{color:var(--accent)}.block{display:block}.empty-note{padding:var(--s4) 0;color:var(--ink-2)}.loading{padding:40vh var(--s3) 0;text-align:center;color:var(--ink-2)}.field{gap:6px;display:grid}.field input,.field select{min-height:var(--tap);padding:0 var(--s4);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);font-size:16px}.search{padding:0 var(--s4);min-height:var(--tap);border-radius:var(--r-pill);background:var(--surface-2);color:var(--ink-2);margin-bottom:var(--s4);align-items:center;gap:8px;display:flex}.search input{color:var(--ink);background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:16px}.star{width:28px;height:28px;color:var(--accent);place-items:center;margin:-6px;display:inline-grid}.star.light,.star.light[aria-pressed=false]{color:var(--on-dark)}.star.light[aria-pressed=false] svg{opacity:.8}.edit-btn{border-radius:var(--r-pill);background:var(--scrim);color:var(--on-dark);flex:none;place-items:center;display:inline-grid;position:relative}.edit-btn:after{content:"";position:absolute;inset:-8px}.stat-table{gap:var(--s1);border-radius:var(--r-sm);width:100%;display:grid;overflow:hidden}.stat-row{gap:var(--s1);grid-template-columns:repeat(9,minmax(0,1fr));display:grid}.stat-head,.stat-val{text-align:center;font:var(--t-cell);white-space:nowrap;font-variant-numeric:tabular-nums;padding:2px 0;display:block}.stat-head{background:var(--surface-3)}.stat-val{background:var(--surface-2)}.stat-val[data-tone=up]{color:color-mix(in oklab, var(--good) 70%, var(--ink))}.stat-val[data-tone=down]{color:var(--bad)}.stat-val.colorized{font-weight:700}.stat-val.empty,.stat-table.inverse .stat-val.empty{color:var(--ink-2)}.stat-table.inverse .stat-head{color:var(--ink);background:#ffffffe6}.stat-table.inverse .stat-val{color:var(--ink);background:#fffffff5}@media (width>=1024px){.stat-table{max-width:520px}}.rail{scrollbar-width:none;scroll-snap-type:x proximity;display:flex;overflow-x:auto}.rail::-webkit-scrollbar{display:none}.rail-item{scroll-snap-align:center;white-space:nowrap;transition:color .2s var(--ease), background-color .2s var(--ease), border-color .2s var(--ease);flex:none}.rail-tabs{padding:10px var(--s3) 0;gap:4px;position:relative}.rail-tabs .rail-item{font:var(--t-body);color:var(--ink-2);border-bottom:2px solid #0000;margin-right:18px;padding:4px 2px 6px}.rail-tabs .rail-item[aria-selected=true]{color:var(--ink)}.rail-indicator{background:var(--accent);transform-origin:0 0;pointer-events:none;width:1px;height:2px;position:absolute;bottom:0;left:0}.rail-indicator[data-ready]{transition:transform .28s var(--ease)}@media (prefers-reduced-motion:reduce){.rail-item,.rail-indicator[data-ready],.char-tabs button{transition:none}}.rail-pills{margin:0 calc(-1 * var(--s4));padding:2px var(--s4);gap:8px}.rail-pills .rail-item{min-height:32px;font:var(--t-body);color:var(--ink-2);border:1px solid var(--line-strong);border-radius:var(--r-pill);padding:0 14px}.rail-pills .rail-item[aria-selected=true]{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-dark)}.class-lens-rail{top:var(--char-head-h,0px);z-index:5;padding-block:var(--s2);border-bottom:1px solid var(--line);background:var(--surface);position:sticky}.segmented{background:var(--surface-3);border-radius:var(--r-pill);padding:2px;display:inline-flex}.segmented button{min-height:26px;font:var(--t-cell);color:var(--on-dark);border-radius:var(--r-pill);padding:0 14px;font-size:13px}.segmented button[aria-checked=true]{background:var(--surface);color:var(--ink);box-shadow:0 1px 2px #0000001f}.segmented button[aria-checked=false]{color:var(--ink-2)}.portrait{background-color:var(--surface-3);border-radius:var(--r-xs);aspect-ratio:1;background-repeat:no-repeat;place-items:center;display:inline-grid;position:relative;overflow:hidden}.portrait-hair{background-repeat:no-repeat;position:absolute;inset:0}.portrait img{object-fit:cover;width:100%;height:100%}.portrait.mono{font:var(--t-cell);color:var(--ink-2)}.chip-32{flex:none;width:32px;height:32px}.sprite{image-rendering:pixelated;flex:none;place-items:center;display:inline-grid;position:relative}.sprite-stage{display:block;position:relative}.sprite img,.sprite-cell{image-rendering:pixelated;background-repeat:no-repeat}.sprite-single{object-fit:contain;width:100%;height:100%}.sprite-mono{font:var(--t-cell);color:var(--ink-2);font-size:10px}.skill-icon{border-radius:var(--r-pill);background:var(--surface-3);font:var(--t-cell);color:var(--ink-2);flex:none;place-items:center;font-size:10px;display:inline-grid;overflow:hidden}.skill-icon img{width:100%;height:100%;image-rendering:pixelated}.rel-slot,.rel-card{--hue:var(--rel-s)}[data-kind=a]{--hue:var(--rel-a)}[data-kind=pair]{--hue:var(--rel-pair)}[data-kind=parent]{--hue:var(--ink-2)}.rel-slot{border:1px dashed color-mix(in oklab, var(--hue) 70%, white);border-radius:var(--r-sm);width:28px;height:28px;color:color-mix(in oklab, var(--hue) 60%, white);flex:none;place-items:center;padding:2px;display:grid;position:relative}.rel-slot:after{content:"";position:absolute;inset:-8px -3px}.rel-slot[data-filled]{border-style:solid;border-color:var(--hue);padding:0;overflow:hidden}.rel-slot[data-filled] .portrait{border-radius:3px;width:100%;height:100%}.slot-glyph{font:700 11px/1 var(--f-ui)}.rel-more{background:var(--hue);color:var(--on-dark);font:700 9px/1 var(--f-ui);border-radius:3px 0 0;padding:1px 2px;position:absolute;bottom:0;right:0}.rel-card{aspect-ratio:1;border:1px solid var(--hue);background:var(--surface-2);border-radius:7px;width:100%;display:grid;position:relative;overflow:hidden}.rel-card-art{border-radius:0;width:100%;height:100%}.rel-card[data-filled]:after{content:"";background:linear-gradient(#0000,#0000008c);position:absolute;inset:45% 0 0}.rel-card-name{z-index:1;font:700 14px/1.1 var(--f-ui);color:var(--on-dark);text-align:center;text-shadow:0 1px 3px #00000080;text-overflow:ellipsis;white-space:nowrap;position:absolute;inset:auto 4px 6px;overflow:hidden}.rel-card-empty{color:color-mix(in oklab, var(--hue) 70%, white);place-items:center;display:grid}.rel-card-empty .slot-glyph{font-size:22px}.rel-card-empty svg{width:28px;height:28px}.main{min-width:0}.two-pane{grid-template-columns:440px minmax(0,1fr);align-items:start;display:grid}.two-pane>.roster{border-right:1px solid var(--line);height:100dvh;position:sticky;top:0;overflow-y:auto}.two-pane>.character{max-width:760px}.pane-empty{min-height:100dvh;padding:var(--s6);text-align:center;place-items:center;display:grid}.roster-list,.chart-list,.run-list,.level-list{margin:0;padding:0;list-style:none}.sticky-sentinel{height:0;display:block}.roster-sticky-head,.chart-sticky-head{z-index:12;background:var(--surface);position:sticky;top:0}.roster-sticky-head:after,.chart-sticky-head:after{content:"";background:var(--line);height:1px;position:absolute;inset:auto 0 0}.chart-sticky-head:after{opacity:0;transition:opacity .15s var(--ease)}.chart-sticky-head[data-scrolled=true]:after{opacity:1}@media (prefers-reduced-motion:reduce){.chart-sticky-head:after{transition:none}}.roster-row{padding:var(--s4) var(--s3);border-bottom:1px solid var(--line);gap:8px;display:grid}.roster-swap,.chart-swap{height:0;position:relative}.roster-row[data-muted] :is(.roster-id,.roster-actions>:not(.edit-btn),.stat-table){opacity:.4}.roster-row[aria-current=true]{background:var(--accent-soft)}.roster-row-top,.chart-row-top{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.roster-id{align-items:center;gap:var(--s2);min-width:0;display:flex}.roster-id .sprite-btn,.chart-row .sprite{background:0 0}.unit-name{font:var(--t-name);text-overflow:ellipsis;white-space:nowrap;min-width:0;padding-right:.08em;overflow:hidden}.roster-actions{align-items:center;gap:var(--s2);flex:none;height:32px;display:flex}.sprite-btn{border-radius:var(--r-sm);display:grid;position:relative}.sprite-btn:after{content:"";position:absolute;inset:-6px -3px}.sort-btn{margin-top:16px}.roster-head-actions,.chart-head-actions{align-items:center;gap:var(--s2);display:flex}.roster-head-actions .icon-btn[data-active]{color:var(--accent-strong)}.unit-note{box-sizing:border-box;resize:none;width:100%;min-height:30px;padding:4px var(--s2);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:400 12px/20px var(--f-ui);display:block;overflow:hidden}.unit-note:focus{outline:2px solid var(--accent);outline-offset:1px}.unit-note::placeholder{color:var(--ink-2)}.unit-note:read-only{background:var(--surface-2)}.profile-note{padding:var(--s4) var(--s3) 0}.chart-display-group{gap:var(--s2);display:grid}.chart-display-group+.chart-display-group{margin-top:var(--s5)}.chart-display-group>.sub-title{margin:0}.chart-empty{padding:var(--s4)}.sheet-scrim{z-index:50;animation:fade .16s var(--ease);background:#0000005c;align-items:end;display:grid;position:fixed;inset:0}.sheet-scrim[data-closing]{animation:.18s ease-in forwards fade-out}.sheet{background:var(--surface);border-radius:var(--r-sheet) var(--r-sheet) 0 0;max-height:88dvh;box-shadow:var(--shadow-sheet);animation:rise .22s var(--ease);outline:none;flex-direction:column;display:flex}.sheet.closing{animation:.18s ease-in forwards sink}.sheet-head{padding:var(--s4) var(--s3) 4px var(--s5);align-items:center;gap:4px;display:flex}.sheet-title{font:var(--t-section);flex:1}.sheet-body{padding:var(--s3) var(--s5) calc(var(--s5) + env(safe-area-inset-bottom));overflow-y:auto}@media (width>=1024px){.sheet-scrim{place-items:center}.sheet{border-radius:var(--r-lg);width:min(480px,92vw);max-height:80dvh}.sheet.wide{width:min(760px,92vw)}}@keyframes rise{0%{opacity:0;transform:translateY(24px)}}@keyframes fade{0%{opacity:0}}@keyframes fade-out{to{opacity:0}}@keyframes sink{to{opacity:0;transform:translateY(20px)}}.pick-grid{gap:var(--s3) 8px;grid-template-columns:repeat(4,minmax(0,1fr));display:grid}@media (width>=1024px){.pick-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.pick-card{border-radius:var(--r-md);text-align:center;align-content:start;justify-items:center;gap:3px;width:100%;min-width:0;padding:4px;display:grid}.pick-card[aria-pressed=true]{background:var(--accent-soft);box-shadow:inset 0 0 0 2px var(--accent)}.pick-card[data-muted] .pick-art,.pick-card[data-muted] .pick-name,.pick-card[data-muted] .pick-gains{opacity:.55}.pick-art{border-radius:var(--r-md);width:100%}.pick-name{font:var(--t-sub);font-size:13px}.pick-gains{font:italic 400 11px/1.2 var(--f-ui);color:var(--ink-2)}.pick-badges{flex-wrap:wrap;justify-content:center;align-items:flex-start;gap:3px;display:flex}.pick-group{margin-bottom:var(--s4);gap:4px;display:grid}.pick-list{gap:8px;display:grid}.skill-pick-group{gap:var(--s2);margin-bottom:var(--s5);display:grid}.pick-heading{font:700 17px/1.25 var(--f-ui)}.skill-toc{z-index:2;margin:0 calc(-1 * var(--s5)) var(--s3);padding:var(--s2) 0;border-bottom:1px solid var(--line);background:var(--surface);position:sticky;top:0}.skill-toc .rail-pills{padding:0 var(--s5);margin:0}.skill-pick-group>.pick-heading{padding-top:var(--s2)}.sheet-toolbar{border-bottom:1px solid var(--line);flex:none}.sheet-toolbar .rail-tabs{padding-inline:var(--s5)}.sheet:has(.skill-pick-body){height:88dvh}.sheet-body:has(>.skill-pick-body){flex:1;min-height:0;padding:0;display:grid;overflow:hidden}.skill-pick-body{min-width:0;min-height:0;display:grid}.skill-pick-page{overscroll-behavior:contain;touch-action:pan-y;padding:var(--s3) var(--s5) calc(var(--s5) + env(safe-area-inset-bottom));overflow:hidden auto}.skill-pick-page.grouped{padding-top:0}.skill-pick-body>.skill-pick-page{min-height:0}.filter-menu .switch-row{padding:var(--s2) 0;border:0}.filter-menu-wrap{position:relative}.filter-menu-wrap>.icon-btn[data-active]{color:var(--accent-strong)}.filter-menu{top:calc(100% + var(--s1));z-index:5;gap:var(--s2);min-width:230px;padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-float);display:grid;position:absolute;right:0}.skill-pick-class{gap:var(--s2);display:grid}.skill-class-head{align-items:center;gap:var(--s2);text-align:left;min-height:40px;display:flex}.skill-class-name{font:var(--t-sub);flex:1}.skill-class-sprites{flex:none;display:flex}.skill-class-book{justify-content:center;width:32px}.skill-notice-book{align-items:center;gap:6px;display:flex}.skill-class-sprites .sprite+.sprite{margin-left:-12px}.skill-class-head[data-faded] .skill-class-sprites{opacity:.5}.skill-class-head[data-faded] .skill-class-name{color:var(--ink-2)}.skill-class-chevron{color:var(--ink-2);transition:transform .2s var(--ease)}.skill-class-head[aria-expanded=false] .skill-class-chevron{transform:rotate(-90deg)}.skill-class-body{opacity:0;transition:grid-template-rows .26s var(--ease), opacity .2s var(--ease);grid-template-rows:0fr;display:grid}.skill-class-body[data-open]{opacity:1;grid-template-rows:1fr}.skill-class-body>.pick-list{min-height:0;overflow:hidden}.skill-pick-class{gap:0}.skill-class-body[data-open]>.pick-list{padding-bottom:var(--s2)}@media (prefers-reduced-motion:reduce){.skill-class-body,.skill-class-chevron{transition:none}}.class-row,.sort-row{align-items:center;gap:var(--s4);border-radius:var(--r-md);text-align:left;min-height:48px;font:var(--t-body);padding:4px 8px;display:flex}.class-row[aria-pressed=true],.sort-row[aria-pressed=true]{background:var(--accent-soft)}.rank-badge{color:var(--accent-strong);background:var(--accent-soft);border:1px solid color-mix(in oklab, var(--accent) 28%, transparent)}.sort-row:disabled{opacity:.38}.sort-row svg{color:var(--ink-2);flex:none}.sort-row[aria-pressed=true] svg{color:var(--accent-strong)}.sort-direction,.sort-toggles{gap:var(--s2);margin-top:var(--s4);display:grid}.sort-direction .segmented{justify-self:start}.sort-done{width:100%;margin-top:var(--s4)}.class-row-name{font:var(--t-sub);flex:1}.class-row-tier{font:var(--t-cell)}.sort-stat-title{margin:var(--s5) 0 8px}.sort-stats{flex-wrap:wrap;gap:8px;display:flex}.toast{left:50%;bottom:calc(var(--nav-h) + 24px + env(safe-area-inset-bottom));z-index:60;border-radius:var(--r-md);background:var(--scrim);max-width:min(92vw,420px);color:var(--on-dark);font:var(--t-body);box-shadow:var(--shadow-float);opacity:0;pointer-events:none;transition:opacity .18s var(--ease), transform .18s var(--ease);padding:10px 16px;position:fixed;transform:translate(-50%,16px)}.toast[data-open]{opacity:1;transform:translate(-50%)}@media (width>=1024px){.toast{bottom:24px}}.screen.character{--hero-h:233px;--page-margin:var(--s4);--hero-pad:var(--page-margin);--hero-tabs-h:32px;--hero-foot-gap:10px;--back-size:40px;--hero-radius:calc(min(var(--hero-tabs-h), var(--back-size)) / 2 + var(--hero-pad))}.char-hero{height:var(--hero-h);margin:0 var(--page-margin) 0;border-radius:var(--hero-radius);background:var(--scrim);color:var(--on-dark);position:relative;overflow:clip}.char-art{top:0;left:calc(-1 * var(--page-margin));right:calc(-1 * var(--page-margin));height:316px;position:absolute}.splash{position:absolute;inset:0}.splash img{object-fit:cover;width:100%;height:100%}.hero-portrait{width:var(--art-w);height:var(--art-h);left:calc(66% - var(--face-x));position:absolute;top:0}.hero-portrait img{width:100%;height:100%;position:absolute;inset:0}.splash:after{content:"";background:linear-gradient(#0000 42%,#0009 80%);position:absolute;inset:0}.splash[data-fading]{animation:.6s both splash-fade}@keyframes splash-fade{0%{opacity:0}}.splash.fallback,.splash.portrait-hero{background:linear-gradient(to right, var(--accent-strong), color-mix(in oklab, var(--accent) 55%, white))}.back-rail{z-index:2;height:calc(var(--hero-h) - var(--hero-pad) - var(--hero-tabs-h) - var(--hero-foot-gap) - var(--hero-foot-gap) - var(--hero-name-h,42px));pointer-events:none;position:absolute;inset:0 0 auto}.back-btn{top:calc(var(--hero-pad) + env(safe-area-inset-top));margin:var(--hero-pad) 0 0 var(--hero-pad);pointer-events:auto;width:var(--back-size);height:var(--back-size);border-radius:var(--r-pill);background:var(--surface);color:var(--ink);box-shadow:var(--shadow-float);place-items:center;display:grid;position:sticky}.char-hero-foot{z-index:1;gap:var(--hero-foot-gap);padding:0 var(--hero-pad) var(--hero-pad);display:grid;position:absolute;inset:auto 0 0}.char-name-row{align-items:center;gap:12px;display:flex}.char-name{font:var(--t-title);text-shadow:0 2px 8px #00000059}.char-tabs{scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.char-tabs button{min-height:var(--hero-tabs-h,32px);font:var(--t-sub);color:var(--on-dark);border-radius:var(--r-pill);transition:color .2s var(--ease), background-color .2s var(--ease);background:#00000073;flex:none;padding:0 12px}.char-tabs button[aria-selected=true]{background:var(--surface);color:var(--ink)}.char-panel{padding-bottom:var(--s6)}.char-panel>.pager>.pager-track{--pager-gap:var(--s2);gap:var(--pager-gap)}.char-sticky{z-index:10;height:0;position:sticky;top:0}.char-sticky-head{padding:calc(var(--s3) + env(safe-area-inset-top)) var(--s4) var(--s3);background:var(--surface);border-bottom:1px solid var(--line);visibility:hidden;gap:10px;transition:transform .24s cubic-bezier(.4,0,1,1),visibility 0s .24s;display:grid;transform:translateY(-100%)}.char-sticky-head[data-shown=true]{visibility:visible;transition:transform .34s cubic-bezier(.2,.8,.2,1);transform:none}.char-sticky-top{align-items:center;gap:var(--s2);min-width:0;display:flex}.char-sticky-back{margin-left:-10px}.char-sticky-name{font:var(--t-section);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.char-sticky-head .char-tabs button{background:var(--surface-2);color:var(--ink)}.char-sticky-head .char-tabs button[aria-selected=true]{background:var(--accent-strong);color:var(--on-dark)}.two-pane>.character{animation:character-enter .26s var(--ease) both}@keyframes character-enter{0%{opacity:0;transform:translate(32px)}}@media (prefers-reduced-motion:reduce){.character{animation:none}.char-sticky-head,.char-sticky-head[data-shown=true]{transition:none}}.panel-section{gap:var(--s4);padding:var(--s6) var(--s4) 14px;border-bottom:1px solid var(--line);display:grid}.panel-section>*{min-width:0}.panel-section.tight{padding:var(--s4) var(--s4) 4px;border-bottom:0;gap:8px}.panel-section.tight:first-child{padding-top:var(--s6)}.panel-section:last-child{border-bottom:0}.section-head{justify-content:space-between;align-items:center;gap:var(--s3);display:flex}.stat-block{gap:6px;display:grid}@media (width>=1024px){.screen.character{--hero-h:300px}.char-art{height:max(316px, var(--hero-h))}}.rel-grid{grid-template-columns:repeat(var(--cols,3), minmax(0, 1fr));gap:var(--s4);display:grid}.rel-grid[data-count="4"]{--cols:4;gap:8px}@media (width>=1024px){.rel-grid,.rel-grid[data-count="4"]{grid-template-columns:repeat(var(--cols,3), minmax(0, 150px))}}.rel-col{align-content:start;justify-items:center;gap:4px;min-width:0;display:grid}.rel-under{place-items:center;min-height:24px;display:grid}.rel-under .segmented button{min-height:22px;padding:0 10px;font-size:11px}.rel-card[data-stale]{border-color:var(--line-strong);filter:grayscale();opacity:.5}.rel-caption.rel-stale{color:var(--bad-ink);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-style:normal;overflow:hidden}.rel-caption{font:italic 400 13px/1.3 var(--f-ui);color:var(--ink-2);text-align:center}.rel-grid[data-count="4"] .rel-caption{font-size:11px}.class-cards{gap:var(--s3);display:grid}@media (width>=1024px){.class-cards{grid-template-columns:repeat(auto-fill,minmax(320px,1fr))}}.class-card{padding:10px var(--s3) var(--s3);text-align:left;border:1px solid var(--line);border-radius:var(--r-md);transition:background .16s var(--ease);gap:8px;display:grid}.class-card[aria-pressed=true]{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-dark)}.class-card-head{align-items:center;gap:8px;display:flex}.class-card-name{font:700 14px/1.2 var(--f-ui);flex:1}.class-card-wrap{display:grid;position:relative}.class-card-star{top:12px;right:var(--s3);position:absolute}.class-card-wrap:has(.class-card-star) .class-card-head{padding-right:28px}.rail-item .rail-star{vertical-align:-2px;margin:0 4px 0 -4px}.rail-item:not([aria-selected=true]) .rail-star{color:var(--accent)}.class-card-tag{font:700 11px/1 var(--f-ui);letter-spacing:.02em;text-transform:uppercase}.skill-list{gap:var(--s3);display:grid}.skill-card{text-align:left;border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px;width:100%;min-height:72px;padding:10px 12px 10px 6px;display:grid;position:relative}.skill-card.locked{background:var(--surface-3);border-color:var(--surface-3)}.skill-card.selected{box-shadow:inset 0 0 0 2px var(--accent)}.skill-card:disabled{opacity:.45}.skill-card.empty{border-style:dashed;border-color:var(--line-strong)}.skill-card-id{text-align:center;justify-items:center;gap:4px;display:grid}.skill-card-name{font:700 12px/1.2 var(--f-ui);display:block}.skill-card-first{white-space:nowrap}.skill-card.has-aside{grid-template-columns:minmax(0,1fr) auto}.skill-card-main{text-align:left;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:8px;display:grid}.skill-card-main:after{content:"";border-radius:inherit;position:absolute;inset:0}.skill-card-aside{z-index:1;place-items:center;width:28px;display:grid;position:relative}.skill-card-label{font:700 11px/1.2 var(--f-ui);color:var(--accent-strong)}.skill-card-caution{color:var(--ink-2);font-size:11px}.skill-card.faded{background:var(--surface-2);border-color:var(--surface-2)}.skill-card.highlight{background:var(--good-tint);border-color:color-mix(in oklab, var(--good-soft) 60%, #fff)}.skill-card.faded .skill-icon{opacity:.3}.skill-card.faded :is(.skill-card-name,.skill-card-tag,.skill-card-label),.skill-card.empty .skill-card-name{color:var(--ink-2)}.skill-card-desc{overflow-wrap:anywhere;font:400 12px/1.35 var(--f-ui);color:var(--ink-2);gap:4px;display:grid}.skill-card-tag{font:var(--t-cell);color:var(--accent-strong);font-size:11px}.skill-card-from{color:var(--ink-2)}.skill-card-parent{color:var(--accent-strong);font-weight:600}.skill-card.muted>:not(.skill-notice,.skill-card-aside){opacity:.45}.skill-notice{padding:var(--s3);border-radius:var(--r-sm);background:var(--surface-2);color:var(--ink-2);font:400 12px/1.35 var(--f-ui);grid-column:1/-1;gap:6px;margin-left:6px;display:grid}.skill-notice[data-tone=info]{background:var(--info-tint);color:var(--info-ink)}.skill-notice[data-tone=warn]{background:var(--warn-tint);color:var(--warn-ink)}.skill-notice[data-tone=bad]{background:var(--bad-tint);color:var(--bad-ink)}.skill-notice-lead{align-items:center;gap:6px;display:flex}.skill-notice-icon{flex:none}.skill-notice[data-tone=info] .skill-notice-icon{color:var(--info)}.skill-notice[data-tone=warn] .skill-notice-icon{color:var(--warn)}.skill-notice[data-tone=bad] .skill-notice-icon{color:var(--bad)}.skill-notice strong{font-weight:700}.skill-notice-ways{gap:var(--s2) var(--s5);flex-wrap:wrap;display:flex}.skill-notice-way{gap:4px;display:grid}.skill-notice-way em{opacity:.8;font-style:italic}.skill-notice-faces{flex-wrap:wrap;gap:4px;display:flex}.pick-list>.skill-notice{margin-left:0}.notice-face{border-radius:var(--r-xs);background:var(--surface);flex:none;width:28px;height:28px}.skill-card-lock{vertical-align:-1px;color:var(--ink-2);margin-right:3px}.gender-grid{gap:var(--s3);grid-template-columns:1fr 1fr;display:grid}@media (width>=1024px){.gender-grid{grid-template-columns:repeat(2,minmax(0,220px))}}.gender-card{aspect-ratio:1;border:1px solid var(--line);border-radius:var(--r-md);opacity:.56;transition:opacity .16s var(--ease);display:grid;position:relative;overflow:hidden}.gender-card[aria-checked=true]{opacity:1;border:4px solid var(--accent-strong);background:var(--scrim)}.gender-art{object-fit:cover;border-radius:0;width:100%;height:100%;position:absolute;inset:0}.gender-card:after{content:"";background:linear-gradient(#0000 47%,#fffffff0 95%);position:absolute;inset:0}.gender-card[aria-checked=true]:after{background:linear-gradient(#0000 50%,#000000f0)}.gender-label{z-index:1;font:var(--t-sub);text-align:center;align-self:end;padding-bottom:8px;position:relative}.gender-card[aria-checked=true] .gender-label{color:var(--on-dark)}.hair-row{align-items:center;gap:var(--s3);min-height:var(--tap);padding:0 var(--s4) 0 var(--s3);border:1px solid var(--line-strong);border-radius:var(--r-md);text-align:left;display:flex}.hair-row-label{font:var(--t-body);flex:1}.hair-row-chevron{color:var(--ink-2)}.hair-swatch{border-radius:var(--r-sm);width:28px;height:28px;display:block;box-shadow:inset 0 0 0 1px #0000001f}.hair-preview{margin-bottom:var(--s4);place-items:center;display:grid}.hair-grid{gap:var(--s2);margin-bottom:var(--s4);grid-template-columns:repeat(10,minmax(0,1fr));display:grid}.hair-option{aspect-ratio:1;border-radius:var(--r-sm);box-shadow:inset 0 0 0 1px #0000001f}.hair-option[aria-checked=true]{outline:2px solid var(--accent);outline-offset:2px}.stat-choice{--tone:var(--good);--tone-soft:var(--good-soft);gap:var(--s2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat-choice[data-tone=bad]{--tone:var(--bad);--tone-soft:var(--bad-soft)}@media (width>=1024px){.stat-choice{grid-template-columns:repeat(8,minmax(0,1fr));max-width:760px}}.stat-choice button{font:var(--t-cell);color:var(--ink-2);border:1px solid var(--tone-soft);border-radius:var(--r-xs);padding:6px 2px;display:grid}.stat-choice button[aria-checked=true]{background:var(--tone);border-color:var(--tone);color:var(--on-dark)}.stat-choice button:disabled:not([aria-checked=true]),.stat-choice button[data-blocked]{opacity:.35}.talent-rail{gap:var(--s2);margin:0 calc(-1 * var(--s4));padding:0 var(--s4) var(--s4);scrollbar-width:none;display:flex;overflow-x:auto}.talent-card{border:1px solid var(--line);border-radius:var(--r-md);width:102px;height:102px;color:var(--ink-2);flex:none;align-content:center;justify-items:center;gap:6px;display:grid}.talent-card[aria-checked=true]{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-dark)}.talent-sprites{display:flex}.talent-sprites .sprite+.sprite{margin-left:-12px}.talent-name{font:var(--t-sub)}.progression{gap:0;padding-left:0;padding-right:0}.progression .section-title{padding:0 var(--s4) 8px}.level-row{min-height:30px;padding:0 var(--s4);grid-template-columns:26px auto minmax(12px,1fr) 30px 118px;align-items:center;gap:6px;display:grid}.level-num{font:700 14px/1 var(--f-ui)}.level-learned{font:400 12px/1.3 var(--f-ui);flex-wrap:wrap;align-items:center;gap:2px 6px;display:flex}.learned-skill{color:var(--ink);align-items:center;gap:4px;display:inline-flex}.level-leader{background:var(--line-strong);opacity:.6;height:1px}.info-btn{width:30px;height:30px;color:var(--ink);place-items:center;display:grid}.info-btn[aria-expanded=true]{color:var(--accent)}.reclass{border-radius:var(--r-xs);background:var(--surface-3);height:22px;font:500 12px/1 var(--f-ui);align-items:center;display:flex;position:relative}.reclass select{appearance:none;width:100%;height:100%;font:italic 400 12px/1 var(--f-ui);color:var(--ink-2);cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;padding:0 22px 0 8px}.reclass[data-set]{background:var(--accent-soft)}.reclass[data-set] select{color:var(--ink);font-style:normal;font-weight:500}.reclass svg{pointer-events:none;color:var(--ink);position:absolute;right:4px}.reclass.locked{color:var(--ink);padding:0 8px}.level-info{gap:var(--s4);padding:var(--s4) var(--s4) var(--s5);background:var(--scrim);color:var(--on-dark);margin:6px 0;display:grid;position:relative}.level-info:before{content:"";top:-6px;right:calc(var(--s4) + 118px + 6px + 9px);border:6px solid #0000;border-top:0;border-bottom-color:var(--scrim);position:absolute}.join-chapter{justify-items:end;gap:4px;display:grid}.join-chapter-select{width:auto;min-width:128px}.join-chapter-label{font:var(--t-cell);color:var(--ink-2)}.join-chapter-note{font:var(--t-cell);color:var(--ink-2);text-align:right}.progression-head{padding:0 var(--s4) 8px 0}.progression-head .section-title{padding-bottom:0}.auto-btn{min-height:32px;padding:0 var(--s4);font-size:13px}.eternal-offer{margin:0 0 var(--s4);font:var(--t-body)}.eternal-offer-actions,.sheet-actions{gap:var(--s2);margin-top:var(--s4);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;display:grid}.sheet-heading{font:var(--t-sub);color:var(--ink)}.sheet-note{margin:0 0 var(--s3);font:var(--t-note);color:var(--ink-2)}.route-options{gap:var(--s2);display:grid}.route-option{padding:var(--s3) var(--s4);border:1px solid var(--line);border-radius:var(--r-md);text-align:left;gap:4px;display:grid}.route-option:hover{border-color:var(--accent)}.route-option-label{align-items:center;gap:var(--s2);font:var(--t-sub);flex-wrap:wrap;display:flex}.route-option-tag{font:var(--t-cell);color:var(--accent-strong)}.route-option-cost{font:var(--t-note);color:var(--ink-2)}.progression-foot{gap:var(--s3);border-top:1px solid var(--line);padding:calc(20px + var(--s2) * 2) var(--s4) var(--s4);display:grid;position:relative}.progression-foot .seal-pill{--seal-tail-x:8px;width:max-content;max-width:100%;padding:var(--s2) 0 var(--s2) var(--s2);box-shadow:0 0 0 var(--s2) var(--surface);border:0;margin:0 auto;position:absolute;top:0;left:0;right:0;transform:translateY(-50%)}.panel-section:has(+.progression-foot){padding-bottom:calc(20px + var(--s2) * 2);border-bottom:0}.progression-foot .eternal-row{grid-template-columns:repeat(2,minmax(0,1fr));justify-self:stretch;padding:0;display:grid}.progression-foot .eternal-row .btn{padding:0 var(--s3);font-size:13px}.progression-foot .eternal-row .btn:disabled{opacity:.45}.skill-notice.skill-notice-book{align-items:center;display:flex}.seal-pill{--seal-tooltip-bg:color-mix(in srgb, var(--scrim) 92%, transparent);--seal-tail-x:20px;align-items:center;gap:var(--s2);min-height:32px;padding:var(--s2) var(--s4) var(--s2) calc(var(--s4) + var(--s2));background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r-pill);display:inline-flex;position:relative}.seal-tally{gap:var(--s2) var(--s3);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.seal-tally-item{font:var(--t-cell);align-items:center;gap:3px;display:inline-flex}.seal-tally-item[data-over]{color:var(--bad)}.seal-tooltip-limit{color:var(--on-dark-2)}.seal-tally-name{color:var(--ink-2)}.seal-pill-info{border-radius:var(--r-pill);width:28px;height:28px;color:var(--ink-2);flex:none;place-items:center;display:inline-grid}.seal-pill-info[aria-expanded=true]{color:var(--accent-strong)}.seal-tooltip{bottom:calc(100% + var(--s2));z-index:6;width:max-content;max-width:calc(100vw - var(--s5));padding:var(--s4) 16px;border-radius:var(--r-md);background:var(--seal-tooltip-bg);color:var(--on-dark);font:var(--t-sub);box-shadow:var(--shadow-float);transform-origin:calc(100% - var(--seal-tail-x) - 6px) calc(100% + var(--s2));animation:seal-pop .3s var(--ease);gap:4px;display:grid;position:absolute;right:0}.seal-tooltip:after{content:"";top:100%;right:var(--seal-tail-x);width:12px;height:var(--s2);background:var(--seal-tooltip-bg);clip-path:polygon(0 0,100% 0,50% 100%);pointer-events:none;position:absolute}.seal-tooltip-item{align-items:center;gap:var(--s2);display:flex}@keyframes seal-pop{0%{opacity:0;transform:scale(0)}}@media (prefers-reduced-motion:reduce){.seal-tooltip{animation:none}}.chart-seal-float{--seal-fade:64px;right:calc(var(--s3) / 2);bottom:calc(var(--nav-h) + var(--s3) + env(safe-area-inset-bottom));z-index:10;position:fixed}.chart-seal-float .seal-pill{width:240px;box-shadow:var(--shadow-float)}.chart-seal-float .seal-tally{border-radius:var(--r-pill);min-width:0;margin-left:calc(-1 * (var(--s4) + var(--s2)));margin-right:calc(-1 * (var(--s4) + 28px + var(--s2)));padding-left:calc(var(--s4) + var(--s2));padding-right:var(--seal-fade);overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;flex:auto;align-self:stretch;align-items:center;overflow-x:auto}.chart-seal-float .seal-tally::-webkit-scrollbar{display:none}.chart-seal-float .seal-tally-item{white-space:nowrap;flex:none}.chart-seal-float .seal-pill:after{content:"";z-index:1;width:var(--seal-fade);border-radius:0 var(--r-pill) var(--r-pill) 0;background:linear-gradient(90deg, transparent, var(--surface) 37%);pointer-events:none;position:absolute;top:0;bottom:0;right:0}.chart-seal-float .seal-pill-info{z-index:2;position:relative}@media (width>=1024px){.chart-seal-float{display:none}}.book-choices{gap:var(--s3);margin-bottom:var(--s4);display:grid}.book-choice{align-items:center;gap:var(--s2);display:flex}.book-choice-name{font:var(--t-sub);flex:1}.item-icon{font:var(--t-cell);color:var(--ink-2);flex:none;place-items:center;font-size:10px;display:inline-grid}.item-icon img{width:100%;height:100%;image-rendering:pixelated}.eternal-row{padding:var(--s4);flex-wrap:wrap;gap:8px;display:flex}.chart-list{gap:var(--s5);padding:var(--s3);display:grid}@media (width>=1024px){.chart-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;max-width:1100px}}.chart-card{border:1px solid var(--line);border-radius:var(--r-lg);position:relative}.chart-row{gap:var(--s2);padding:var(--s4) var(--s3);display:grid}.chart-route{align-items:center;gap:2px var(--s2);padding:var(--s2) var(--s3);border-radius:var(--r-md);background:var(--surface-2);font:500 12px/1.4 var(--f-ui);flex-wrap:wrap;margin:0;display:flex}.chart-route-arrow{color:var(--ink-2)}.chart-pairup,.chart-stat{gap:4px;display:grid}.chart-card.pair .chart-row:first-child{border-bottom:1px solid var(--line)}.chart-skills{flex:none;align-items:center;gap:1px;display:flex}.chart-skills .edit-btn{margin-left:var(--s2)}.swap-btn{z-index:1;background:var(--surface);width:32px;height:22px;color:var(--ink-2);place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.swap-btn:not(:disabled):hover{color:var(--accent)}.run-list{gap:var(--s3);padding:var(--s4) var(--s3);display:grid}.runs,.new-run{max-width:760px}.run-card{border:1px solid var(--line);border-color:var(--accent);border-radius:var(--r-md);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.mod-checklist{gap:var(--s3);min-width:0;padding:var(--s3) 0 0;border:0;margin:0;display:grid}.mod-checklist legend{padding:0}.mod-note{font:var(--t-cell);margin:0}.mod-group{gap:var(--s2);display:grid}.mod-group-title{margin:var(--s2) 0 0;font:var(--t-sub)}.mod-option{align-items:center;gap:var(--s2);padding:var(--s2);border:1px solid var(--line);border-radius:var(--r-md);grid-template-columns:minmax(0,1fr) auto;display:grid}.mod-option input{accent-color:var(--accent);margin:3px 0 0}.mod-option-copy{gap:3px;display:grid}.mod-option-name{font:var(--t-sub)}.mod-option-effect{font:var(--t-cell)}.run-main{padding:var(--s4) var(--s3);text-align:left;justify-items:start;gap:2px;display:grid}.run-name{font:var(--t-name)}.run-meta{font:var(--t-cell);font-weight:500}.run-tag{font:700 11px/1.4 var(--f-ui);text-transform:uppercase;border-radius:var(--r-pill);background:var(--accent-strong);color:var(--on-dark);margin-top:4px;padding:2px 8px}.run-toggle svg{transition:transform .2s var(--ease)}.run-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.run-menu-wrap{transition:grid-template-rows .2s var(--ease);grid-column:1/-1;grid-template-rows:0fr;display:grid}.run-menu-wrap[data-open]{grid-template-rows:1fr}.run-menu-inner{min-height:0;overflow:hidden}.run-menu{gap:var(--s4);padding:var(--s4) var(--s3) var(--s4);border-top:1px solid var(--line);display:grid}@media (prefers-reduced-motion:reduce){.run-toggle svg,.run-menu-wrap{transition:none}}.run-menu-actions{margin-left:calc(-1 * var(--s3));flex-wrap:wrap;gap:4px;display:flex}.runs-actions{padding:0 var(--s3) var(--s5);flex-wrap:wrap;gap:8px;display:flex}.steps{padding:var(--s4) var(--s3) 0;gap:6px;margin:0;list-style:none;display:flex}.steps li{font:var(--t-cell);color:var(--ink-2);border-top:3px solid var(--surface-3);flex:1;padding-top:8px}.steps li[aria-current=step],.steps li[data-done]{color:var(--ink);border-top-color:var(--accent)}.new-run-body{gap:var(--s5);padding:var(--s5) var(--s3);display:grid}.new-run-body .panel-section{padding-left:0;padding-right:0}.new-run-body .talent-rail,.new-run-body .rail-pills{margin:0 calc(-1 * var(--s3));padding-left:var(--s3)}.route-cards{gap:var(--s3);display:grid}@media (width>=720px){.route-cards{grid-template-columns:repeat(3,1fr)}}.route-card{padding:var(--s5) var(--s4);border:1px solid var(--line);border-color:var(--accent);border-radius:var(--r-md);text-align:left;justify-items:start;gap:4px;display:grid}.route-card[aria-checked=true]{background:var(--accent-strong);border-color:var(--accent-strong);color:var(--on-dark)}.parent-cards{border:1px solid var(--line);border-radius:var(--r-md);display:grid;overflow:hidden}.parent-card{padding:var(--s3);border-top:1px solid var(--line);background:var(--surface);gap:8px;display:grid;position:relative}.parent-card:first-child{border-top:0}.parent-card[data-active]{background:var(--accent-strong);color:var(--on-dark)}.parent-card-select{z-index:0;position:absolute;inset:0}.parent-card-head{align-items:center;gap:var(--s2);min-width:0;display:flex}.parent-card-head .star{z-index:1;position:relative}.parent-name{font:var(--t-name);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.parent-class-tree{gap:2px;margin-left:auto;display:flex}.parent-availability{font:400 12px/1.3 var(--f-ui);margin:0}.parent-availability.muted{color:var(--ink-2);font-style:italic}.parent-card[data-active] .parent-availability.muted{color:#ffffffb3}.parent-stat-block{gap:5px;display:grid}.parent-inheritance-label{font:var(--t-sub);color:var(--ink-2);margin:0}.parent-card[data-active] .parent-inheritance-label{color:#ffffffbf}.route-name{font:var(--t-section)}.route-blurb{font:var(--t-cell);opacity:.75}.switch-row{justify-content:space-between;align-items:center;gap:var(--s4);padding:var(--s4);border:1px solid var(--line);border-radius:var(--r-md);display:flex}.switch{border-radius:var(--r-pill);background:var(--ink-3);width:56px;height:30px;transition:background .2s var(--ease);flex:none;position:relative}.switch[aria-checked=true]{background:var(--accent)}.switch:disabled{opacity:.55}.switch-knob{border-radius:var(--r-pill);background:var(--surface);width:24px;height:24px;transition:transform .2s var(--ease);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.switch[aria-checked=true] .switch-knob{transform:translate(26px)}.switch-text{font:700 10px/1 var(--f-ui);letter-spacing:.04em;color:var(--on-dark);transition:opacity .16s var(--ease);position:absolute;top:50%;transform:translateY(-50%)}.switch-on{opacity:0;left:8px}.switch-off{right:7px}.switch[aria-checked=true] .switch-on{opacity:1}.switch[aria-checked=true] .switch-off{opacity:0}@media (prefers-reduced-motion:reduce){.switch,.switch-knob,.switch-text{transition:none}}.new-run-foot{justify-content:space-between;gap:var(--s3);padding:var(--s4) var(--s3) calc(var(--s4) + env(safe-area-inset-bottom));background:var(--surface);border-top:1px solid var(--line);display:flex;position:sticky;bottom:0}.app:not(:has(.nav)){padding-bottom:0;display:block}.join-line{justify-content:space-between;align-items:center;gap:var(--s3);font:var(--t-sub);display:flex}.join-level{align-items:center;gap:6px;display:inline-flex}.join-level input{width:64px;min-height:36px;padding:0 var(--s2);border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);font:600 16px/1 var(--f-ui);text-align:center}.join-level input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.join-level-fixed{color:var(--ink-2)}.join-info{gap:4px;min-width:0;display:grid}.join-skills{font:400 12px/1.3 var(--f-ui);flex-wrap:wrap;align-items:center;gap:4px 10px;display:flex}.inherit-cards{gap:var(--s2);display:grid}@media (width>=720px){.inherit-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}[data-swipe]{touch-action:pan-y}.screen.roster,.screen.chart{overflow-x:clip}.stat-strip-track{--strip-gap:var(--s6);gap:var(--strip-gap);translate:calc(-1 * (100% + var(--strip-gap)));display:flex}.stat-strip-track[data-dragging]{will-change:transform}.stat-strip-page{flex:0 0 100%;min-width:0}.pager{overflow:clip}.pager-track{align-items:flex-start;transition:translate .48s cubic-bezier(.33,1,.68,1);display:flex}.pager-track[data-dragging]{will-change:transform}.pager-page{flex:0 0 100%;min-width:0}.pager.fill{min-width:0;height:100%;min-height:0}.pager.fill>.pager-track{align-items:stretch;height:100%}@media (prefers-reduced-motion:reduce){.pager-track{transition:none}.splash[data-fading]{animation-duration:1ms}}.character-layer{z-index:15;overscroll-behavior:contain;background:var(--surface);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom));animation:.46s cubic-bezier(.25,.8,.25,1) both character-slide-in;position:fixed;inset:0;overflow-y:auto}@keyframes character-slide-in{0%{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.character-layer{animation:none}}.rel-card-wrap{justify-self:stretch;position:relative}.rel-open{z-index:2;border-radius:var(--r-sm);background:var(--surface);width:28px;height:28px;color:var(--ink);place-items:center;display:grid;position:absolute;top:6px;right:6px;box-shadow:0 1px 3px #0000002e}.rel-open:after{content:"";position:absolute;inset:-8px}.rel-card[data-grid]:after{display:none}.rel-card-grid{background:var(--hue);gap:2px;width:100%;height:100%;display:grid}.rel-card-cell{aspect-ratio:1;border-radius:0;width:100%;min-height:0}.rel-card-cell.spare{background:0 0}.family-links{gap:var(--s2);margin-top:var(--s2);display:grid}.unit-link{align-items:center;gap:var(--s3);width:100%;padding:var(--s3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);text-align:left;display:flex}.unit-link-name{min-width:0;font:var(--t-name);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.unit-link-go{width:28px;height:28px}.sort-group{margin:var(--s4) 0 var(--s1)}
