:root{--parchment: oklch(94% .028 85);--parchment-shade: oklch(88% .045 82);--parchment-deep: oklch(80% .055 80);--ink: oklch(35% .045 70);--ink-soft: oklch(48% .055 65);--ink-mute: oklch(62% .055 75);--wood-light: oklch(68% .095 65);--wood-mid: oklch(52% .095 60);--wood-dark: oklch(35% .07 55);--wood-edge: oklch(22% .045 50);--gold: oklch(80% .135 85);--gold-deep: oklch(62% .12 75);--accent: oklch(62% .16 25);--accent-ok: oklch(58% .12 150);--cream: oklch(98% .02 90);--ink-shadow: oklch(20% .04 50);--overlay: oklch(18% .045 50 / .62);--ease-out: cubic-bezier(.22, 1, .36, 1);--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 64px;--race-0: oklch(72% .14 75);--race-1: oklch(62% .14 140);--race-2: oklch(52% .14 265);--race-3: oklch(52% .14 340);--pane-0_0: oklch(78% .14 85);--pane-1_0: oklch(68% .155 55);--pane-2_0: oklch(84% .12 90);--pane-3_0: oklch(60% .15 45);--pane-0_1: oklch(65% .145 140);--pane-1_1: oklch(58% .13 135);--pane-2_1: oklch(52% .12 145);--pane-3_1: oklch(70% .14 130);--pane-0_2: oklch(52% .145 265);--pane-1_2: oklch(48% .13 270);--pane-2_2: oklch(58% .15 260);--pane-3_2: oklch(42% .12 275);--pane-0_3: oklch(48% .13 340);--pane-1_3: oklch(55% .14 345);--pane-2_3: oklch(42% .11 335);--pane-3_3: oklch(60% .145 350);--font-display: "Cormorant Garamond", Georgia, "Times New Roman", serif;--font-body: "Alegreya Sans", "Segoe UI", system-ui, sans-serif;--font-label: var(--font-body);--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.5625rem;--text-xl: 1.953125rem;--lh-tight: 1.1;--lh-snug: 1.3;--lh-body: 1.55;--lh-airy: 1.65;--tracking-display: -.01em;--tracking-label: .14em;--tracking-label-wide: .2em;--frame-pad: 22px;--leading-width: 8px;--stud-img: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 18 18'><defs><radialGradient id='g' cx='0.3' cy='0.3' r='1'><stop offset='0' stop-color='%23ffdca8'/><stop offset='0.5' stop-color='%23d69a2a'/><stop offset='1' stop-color='%237a4d10'/></radialGradient></defs><circle cx='9' cy='9' r='9' fill='url(%23g)'/></svg>")}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{overflow-x:hidden;max-width:100%}body{font-family:var(--font-body);font-size:var(--text-base);line-height:var(--lh-body);color:var(--ink);min-height:100vh;background-color:#2e4a38;font-kerning:normal;font-variant-ligatures:common-ligatures;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:linear-gradient(180deg,transparent 0%,transparent 55%,oklch(30% .04 145 / .25) 100%),url(/assets/bg-main-ByNh-d2J.webp) center 20% / cover no-repeat,#2e4a38}body:after{content:"";position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 60% 50% at 70% 55%,oklch(15% .03 50 / .22),transparent 70%),radial-gradient(ellipse 80% 60% at 50% 0%,oklch(92% .06 90 / .16),transparent 60%)}.app{position:relative;z-index:1;max-width:1100px;margin:0 auto;padding:var(--space-2xl) 44px 80px;animation:app-enter .4s var(--ease-out) both}@keyframes app-enter{0%{opacity:0}to{opacity:1}}header{text-align:center;margin-bottom:var(--space-xl);color:var(--cream)}header h1{font-family:var(--font-display);font-style:italic;font-weight:700;font-size:clamp(2.5rem,5vw + 1rem,3.75rem);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);color:var(--cream);text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 70%,transparent);text-wrap:balance}.subtitle{margin-top:14px;font-family:var(--font-label);font-size:var(--text-sm);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--parchment-shade);text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 55%,transparent);line-height:var(--lh-snug)}.subtitle-error{color:color-mix(in oklab,var(--accent) 45%,var(--parchment))}.subtitle-meta{font-weight:400;font-style:italic;letter-spacing:.04em;text-transform:none;color:var(--parchment-deep)}.retry-button{background:none;border:none;padding:0;margin:0;font:inherit;color:var(--gold);cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;text-decoration-thickness:1px;border-radius:2px}.retry-button:hover{color:var(--cream);text-decoration-thickness:2px}.retry-button:focus-visible{color:var(--cream);outline:2px solid var(--gold);outline-offset:3px;text-decoration-thickness:2px}.intro{margin:22px auto 0;max-width:65ch;font-family:var(--font-body);font-size:var(--text-base);font-weight:400;line-height:var(--lh-airy);color:var(--parchment);text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 50%,transparent);text-wrap:pretty}.grid-frame{display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto 1fr;column-gap:.875rem;row-gap:.625rem}.axis-headers{display:grid;gap:var(--leading-width)}.axis-headers>span{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;color:var(--parchment-shade);text-transform:uppercase;letter-spacing:var(--tracking-label-wide);display:flex;align-items:center;line-height:1;text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 55%,transparent)}.axis-headers-top{grid-column:2;grid-row:1;grid-template-columns:repeat(4,1fr);padding:0 calc(var(--frame-pad) + var(--space-md))}.axis-headers-top>span{justify-content:center}.axis-headers-left{grid-column:1;grid-row:2;grid-template-rows:repeat(4,1fr);padding:calc(var(--frame-pad) + var(--space-md)) 0}.axis-headers-left>span{justify-content:flex-end}.grid-wrapper{grid-column:2;grid-row:2;position:relative;padding:var(--frame-pad);border-radius:18px;background:repeating-linear-gradient(92deg,color-mix(in oklab,var(--ink-shadow) 8%,transparent) 0 2px,transparent 2px 14px),linear-gradient(165deg,var(--wood-light) 0%,var(--wood-mid) 50%,var(--wood-dark) 100%);box-shadow:inset 0 0 0 2px var(--wood-edge),inset 0 2px color-mix(in oklab,var(--cream) 35%,transparent),inset 0 -4px color-mix(in oklab,var(--ink-shadow) 45%,transparent),0 22px 48px -18px color-mix(in oklab,var(--ink-shadow) 55%,transparent),0 8px 20px color-mix(in oklab,var(--ink-shadow) 28%,transparent)}.grid-wrapper:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:18px;pointer-events:none;background-image:var(--stud-img),var(--stud-img),var(--stud-img),var(--stud-img);background-position:top 10px left 10px,top 10px right 10px,bottom 10px left 10px,bottom 10px right 10px;background-repeat:no-repeat;background-size:18px 18px;filter:drop-shadow(0 1px 2px color-mix(in oklab,var(--ink-shadow) 55%,transparent))}.grid-inner{position:relative;padding:var(--space-md);border-radius:10px;background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--cream) 55%,transparent),transparent 50%),radial-gradient(ellipse at 100% 100%,color-mix(in oklab,var(--gold-deep) 18%,transparent),transparent 50%),linear-gradient(180deg,var(--parchment) 0%,var(--parchment-shade) 100%);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 18%,transparent),inset 0 0 40px color-mix(in oklab,var(--gold-deep) 14%,transparent),0 1px color-mix(in oklab,var(--cream) 60%,transparent)}.grid-inner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;pointer-events:none;background-image:radial-gradient(color-mix(in oklab,var(--wood-dark) 18%,transparent) 1px,transparent 1.6px),radial-gradient(color-mix(in oklab,var(--wood-dark) 12%,transparent) 1px,transparent 1.6px);background-size:22px 22px,9px 9px;background-position:0 0,5px 7px;opacity:.6;mix-blend-mode:multiply}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;position:relative;z-index:1}.card-path{display:none}.combo-tile{--tile-min-h: 320px;position:relative;display:flex;flex-direction:column;border-radius:6px;cursor:pointer;perspective:1200px;-webkit-tap-highlight-color:transparent}.combo-tile:focus-visible{outline:none}.combo-tile:focus-visible .combo-tile-inner{box-shadow:0 0 0 2px color-mix(in oklab,var(--pane-color) 70%,var(--cream));border-radius:6px}.combo-tile-inner{flex:1 1 auto;display:grid;width:100%;min-height:var(--tile-min-h);transform-style:preserve-3d;transition:transform .6s var(--ease-out)}.combo-tile.is-flipped .combo-tile-inner{transform:rotateY(180deg)}.combo-tile-inner .combo-face{grid-area:1 / 1;min-height:var(--tile-min-h);backface-visibility:hidden;-webkit-backface-visibility:hidden}.combo-tile-inner .combo-face-front{transform:rotateY(0)}.combo-tile-inner .combo-face-back{transform:rotateY(180deg)}.flip-hint{position:absolute;top:9px;right:10px;z-index:3;font-family:var(--font-body);font-size:var(--text-sm);line-height:1;color:var(--ink-mute);opacity:.45;pointer-events:none;transition:opacity .18s ease,color .18s ease}.combo-tile:hover .flip-hint{opacity:.9;color:var(--gold-deep)}.expand-btn{position:absolute;top:0;right:0;z-index:4;display:grid;place-items:center;width:44px;height:44px;padding:0;border:none;border-radius:6px;background:none;color:var(--ink-mute);opacity:.55;cursor:pointer;transition:opacity .18s var(--ease-out),color .18s var(--ease-out),background .18s var(--ease-out)}.combo-tile:hover .expand-btn,.combo-tile:focus-within .expand-btn{opacity:.9}.expand-btn:hover{opacity:1;color:var(--gold-deep);background:color-mix(in oklab,var(--wood-dark) 10%,transparent)}.expand-btn:focus-visible{opacity:1;outline:2px solid var(--gold-deep);outline-offset:-2px}.combo-card{position:relative;padding:18px var(--space-md) 14px;min-height:200px;display:flex;flex-direction:column;gap:6px;border-radius:6px;background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--cream) 45%,transparent),transparent 55%),linear-gradient(180deg,var(--parchment) 0%,var(--parchment-shade) 100%);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 18%,transparent),inset 0 0 24px color-mix(in oklab,var(--gold-deep) 14%,transparent),0 1px color-mix(in oklab,var(--cream) 60%,transparent),0 2px 6px color-mix(in oklab,var(--ink-shadow) 18%,transparent);overflow:hidden;transition:transform .18s var(--ease-out),box-shadow .18s var(--ease-out),filter .2s var(--ease-out)}.combo-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:var(--pane-color);box-shadow:inset 0 -1px color-mix(in oklab,var(--ink) 35%,transparent)}.combo-card.locked{background:repeating-linear-gradient(135deg,color-mix(in oklab,var(--pane-color) 8%,transparent) 0 6px,transparent 6px 12px),linear-gradient(180deg,color-mix(in oklab,var(--pane-color) 4%,var(--parchment-shade)) 0%,var(--parchment-deep) 100%);align-items:center;justify-content:center}.combo-card.locked:before{opacity:.45}.combo-card.unlocked{background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--pane-color) 12%,oklch(98% .01 90)) 0%,transparent 55%),linear-gradient(180deg,color-mix(in oklab,var(--pane-color) 14%,var(--parchment)),color-mix(in oklab,var(--pane-color) 22%,var(--parchment-shade)))}.combo-tile:not(.is-flipped):hover .combo-card.unlocked{filter:brightness(1.04);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 22%,transparent),inset 0 0 24px color-mix(in oklab,var(--gold-deep) 16%,transparent),0 6px 18px color-mix(in oklab,var(--ink-shadow) 28%,transparent),0 0 0 2px color-mix(in oklab,var(--pane-color) 55%,transparent)}.combo-tile:not(.is-flipped):hover .combo-card.locked{filter:brightness(1.05);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 20%,transparent),0 4px 14px color-mix(in oklab,var(--ink-shadow) 22%,transparent),0 0 0 2px color-mix(in oklab,var(--pane-color) 40%,transparent)}.combo-card.is-illuminating{animation:pane-illuminate 2.4s var(--ease-out) both}.combo-card.is-illuminating .card-discoverer-label,.combo-card.is-illuminating .card-discoverer-name,.combo-card.is-illuminating .card-name,.combo-card.is-illuminating .card-lore,.combo-card.is-illuminating .card-date{animation:ink-dries .9s var(--ease-out) 1.5s both}@keyframes pane-illuminate{0%{filter:brightness(1.25) saturate(.7);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 22%,transparent),inset 0 0 24px color-mix(in oklab,var(--cream) 40%,transparent),0 0 28px var(--pane-color),0 0 0 5px color-mix(in oklab,var(--pane-color) 60%,transparent)}60%{filter:brightness(1.08) saturate(.95)}to{filter:brightness(1) saturate(1);box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 18%,transparent),inset 0 0 24px color-mix(in oklab,var(--gold-deep) 14%,transparent),0 1px color-mix(in oklab,var(--cream) 60%,transparent),0 2px 6px color-mix(in oklab,var(--ink-shadow) 18%,transparent)}}@keyframes ink-dries{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.app,.combo-card.is-illuminating,.combo-card.is-illuminating .card-discoverer-label,.combo-card.is-illuminating .card-discoverer-name,.combo-card.is-illuminating .card-name,.combo-card.is-illuminating .card-lore,.combo-card.is-illuminating .card-date{animation:none}.combo-card,.combo-tile-inner{transition:none}}.card-glyph{width:2.4rem;height:2.4rem;object-fit:contain;opacity:.55;filter:drop-shadow(0 1px 0 color-mix(in oklab,var(--parchment) 80%,transparent))}.card-discoverer-label{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;color:color-mix(in oklab,var(--pane-color) 35%,var(--ink-mute));text-transform:uppercase;letter-spacing:var(--tracking-label);line-height:1;margin-bottom:4px}.card-discoverer-name{font-family:var(--font-display);font-style:italic;font-weight:700;font-size:var(--text-lg);color:color-mix(in oklab,var(--pane-color) 22%,var(--ink));line-height:var(--lh-tight);letter-spacing:var(--tracking-display);overflow-wrap:anywhere}.card-name{font-family:var(--font-label);font-size:var(--text-sm);font-weight:600;color:color-mix(in oklab,var(--pane-color) 55%,var(--gold-deep));text-transform:uppercase;letter-spacing:var(--tracking-label);line-height:var(--lh-snug);margin-top:4px}.card-path{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;color:var(--ink-soft);text-transform:uppercase;letter-spacing:.12em;line-height:var(--lh-snug)}.locked-path{margin-top:8px;color:var(--ink-mute)}.card-lore{font-family:var(--font-body);font-size:var(--text-sm);font-weight:400;color:var(--ink-soft);line-height:var(--lh-body);flex:1;margin-top:6px;text-wrap:pretty}.card-date{font-family:var(--font-display);font-style:italic;font-size:var(--text-xs);color:var(--ink-mute);margin-top:auto;align-self:flex-end;opacity:.85;font-variant-numeric:tabular-nums}.combo-face-back{padding:14px 14px 12px;background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--pane-color) 10%,oklch(98% .01 90)) 0%,transparent 55%),linear-gradient(180deg,color-mix(in oklab,var(--pane-color) 14%,var(--parchment)),color-mix(in oklab,var(--pane-color) 22%,var(--parchment-shade)))}.combo-back-body{display:flex;flex-direction:column;height:100%;gap:7px}.back-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);padding-right:40px;flex:none}.back-path{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--ink-soft);line-height:1.2}.gender-toggle{display:inline-flex;flex:none;border:1px solid color-mix(in oklab,var(--wood-dark) 28%,transparent);border-radius:999px;overflow:hidden;background:color-mix(in oklab,var(--cream) 45%,transparent)}.gender-toggle button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;cursor:pointer;font-family:var(--font-body);font-size:var(--text-sm);line-height:1;min-width:40px;min-height:36px;padding:var(--space-2xs) 11px;color:var(--ink-mute);transition:background .15s var(--ease-out),color .15s var(--ease-out)}.gender-toggle button+button{border-left:1px solid color-mix(in oklab,var(--wood-dark) 22%,transparent)}.gender-toggle button.is-active{background:color-mix(in oklab,var(--pane-color) 32%,var(--parchment));color:var(--ink)}.gender-toggle button:focus-visible{outline:2px solid var(--gold-deep);outline-offset:-2px}.stat-radar{width:100%;height:auto;max-height:130px;display:block;flex:none}.radar-ring{fill:none;stroke:color-mix(in oklab,var(--ink) 18%,transparent);stroke-width:1}.radar-ring-baseline{stroke:color-mix(in oklab,var(--ink) 42%,transparent);stroke-dasharray:3 3}.radar-axis{stroke:color-mix(in oklab,var(--ink) 16%,transparent);stroke-width:1}.radar-shape{fill:color-mix(in oklab,var(--pane-color) 38%,transparent);stroke:var(--pane-color);stroke-width:2;stroke-linejoin:round}.radar-dot{fill:var(--pane-color);stroke:var(--parchment);stroke-width:1}.radar-label-name{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;fill:var(--ink-soft)}.radar-label-val{font-family:var(--font-body);font-size:.6875rem;font-weight:700;fill:var(--ink-mute);font-variant-numeric:tabular-nums}.radar-label-val-up{fill:color-mix(in oklab,var(--pane-color) 40%,var(--gold-deep))}.back-meters{display:flex;flex-direction:column;gap:3px;flex:none}.star-meter{display:flex;align-items:center;gap:6px}.star-meter-label{font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;color:var(--ink-soft);flex:1;white-space:nowrap}.star-bar{position:relative;display:inline-block;font-size:var(--text-sm);line-height:1;letter-spacing:.08em;flex:none;font-variant-numeric:tabular-nums}.star-track{color:color-mix(in oklab,var(--ink) 22%,transparent)}.star-fill{position:absolute;top:0;left:0;overflow:hidden;white-space:nowrap;color:color-mix(in oklab,var(--pane-color) 35%,var(--gold));-webkit-text-stroke:.4px color-mix(in oklab,var(--pane-color) 25%,var(--gold-deep))}.back-resists{display:flex;flex-direction:column;gap:3px;flex:1;min-height:0}.back-resists-title{font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--ink-mute);flex:none}.resist-list{list-style:none;margin:0;padding:0 2px 0 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1px 8px;align-content:start;overflow-y:auto;min-height:0;scrollbar-width:thin;scrollbar-color:var(--ink-mute) transparent}.resist-item{display:flex;align-items:baseline;justify-content:space-between;gap:5px;font-size:var(--text-xs);line-height:1.5}.resist-name{flex:1 1 auto;min-width:0;color:var(--ink-soft);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.resist-val{flex:0 0 auto;font-family:var(--font-label);font-weight:600;font-variant-numeric:tabular-nums;color:var(--accent-ok)}.resist-val-neg{color:var(--accent)}.resist-empty{font-size:var(--text-xs);color:var(--ink-mute);font-style:italic}@media (max-width: 599px){.app{padding:1.75rem .875rem 2.5rem}header{margin-bottom:1.5rem}header h1{font-size:clamp(2rem,8vw,2.75rem)}.subtitle{font-size:var(--text-xs);letter-spacing:.12em}.intro{margin-top:1.125rem;font-size:var(--text-sm);line-height:var(--lh-airy)}.grid-frame{grid-template-columns:1fr;grid-template-rows:1fr}.axis-headers{display:none}.grid-wrapper{grid-column:1;grid-row:1;padding:14px;border-radius:14px}.grid-wrapper:after{border-radius:14px;background-position:top 8px left 8px,top 8px right 8px,bottom 8px left 8px,bottom 8px right 8px;background-size:14px 14px}.grid-inner{padding:10px;border-radius:8px}.grid{grid-template-columns:repeat(2,1fr);gap:8px}.combo-tile{--tile-min-h: 306px}.combo-face-front .card-path{display:block}.combo-card{min-height:190px;padding:16px 14px 12px}.card-glyph{width:2rem;height:2rem}.card-discoverer-name{font-size:var(--text-md)}.resist-list{grid-template-columns:minmax(0,1fr)}}.combo-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:20px;background:var(--overlay);animation:modal-fade .2s var(--ease-out) both}.combo-modal-card{position:relative;width:min(92vw,440px);max-height:90vh;overflow-y:auto;padding:var(--space-lg) 22px 20px;border-radius:12px;background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--pane-color) 12%,var(--cream)) 0%,transparent 55%),linear-gradient(180deg,color-mix(in oklab,var(--pane-color) 14%,var(--parchment)),color-mix(in oklab,var(--pane-color) 22%,var(--parchment-shade)));box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--wood-dark) 22%,transparent),0 30px 80px -20px color-mix(in oklab,var(--ink-shadow) 70%,transparent);animation:modal-in .24s var(--ease-out) both}.combo-modal-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;border-radius:12px 12px 0 0;background:var(--pane-color)}.modal-close{position:absolute;top:var(--space-2xs);right:var(--space-2xs);z-index:2;width:44px;height:44px;display:grid;place-items:center;padding:0;border:none;border-radius:50%;background:none;color:var(--ink-mute);font-family:var(--font-body);font-size:var(--text-xl);line-height:1;cursor:pointer;transition:color .15s var(--ease-out),background .15s var(--ease-out)}.modal-close:hover{color:var(--ink);background:color-mix(in oklab,var(--wood-dark) 10%,transparent)}.modal-close:focus-visible{outline:2px solid var(--gold-deep);outline-offset:2px}.modal-title{font-family:var(--font-display);font-style:italic;font-weight:700;font-size:var(--text-xl);line-height:var(--lh-tight);letter-spacing:var(--tracking-display);color:color-mix(in oklab,var(--pane-color) 28%,var(--ink));margin:0 40px 8px 0;text-wrap:balance}.combo-modal-card .combo-back-body{height:auto;gap:12px}.combo-modal-card .back-header{padding-right:0}.combo-modal-card .back-path{font-size:var(--text-sm)}.combo-modal-card .stat-radar{max-height:232px;margin:2px auto 0}.combo-modal-card .back-meters{gap:6px}.combo-modal-card .star-meter-label{font-size:var(--text-sm)}.combo-modal-card .star-bar{font-size:var(--text-md);letter-spacing:.1em}.combo-modal-card .back-resists-title{font-size:var(--text-xs)}.combo-modal-card .resist-list{overflow:visible;gap:3px 18px}.combo-modal-card .resist-item{font-size:var(--text-sm);line-height:1.6}.combo-modal-card .gender-toggle button{font-size:var(--text-base);min-height:40px;padding:6px 14px}@keyframes modal-fade{0%{opacity:0}to{opacity:1}}@keyframes modal-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}.mode-toggle{display:inline-flex;gap:3px;margin:20px 0 2px;padding:var(--space-2xs);border-radius:999px;background:color-mix(in oklab,var(--ink-shadow) 72%,transparent);border:1px solid color-mix(in oklab,var(--gold) 28%,transparent);box-shadow:inset 0 1px color-mix(in oklab,var(--parchment) 18%,transparent),0 3px 10px color-mix(in oklab,var(--ink-shadow) 45%,transparent)}.mode-toggle button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;cursor:pointer;font-family:var(--font-label);font-size:var(--text-sm);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--parchment-deep);min-height:44px;padding:0 18px;border-radius:999px;transition:background .18s var(--ease-out),color .18s var(--ease-out),box-shadow .18s var(--ease-out)}.mode-toggle button:hover{color:var(--gold)}.mode-toggle button.is-active{color:var(--wood-dark);background:linear-gradient(180deg,var(--parchment) 0%,var(--parchment-shade) 100%);box-shadow:0 1px 3px color-mix(in oklab,var(--ink-shadow) 40%,transparent),inset 0 1px color-mix(in oklab,var(--cream) 70%,transparent),inset 0 -2px color-mix(in oklab,var(--gold) 55%,transparent)}.mode-toggle button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.builder{display:flex;flex-direction:column;align-items:center;gap:28px}.builder-controls{display:flex;align-items:flex-start;justify-content:center;gap:14px;flex-wrap:wrap}.stage{display:flex;flex-direction:column;gap:6px;width:220px;text-align:left}.stage-step{display:block;line-height:1;font-family:var(--font-label);font-size:var(--text-xs);font-weight:600;letter-spacing:var(--tracking-label);text-transform:uppercase;color:color-mix(in oklab,var(--stage-color, var(--gold)) 22%,var(--parchment-shade));text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 55%,transparent)}.stage-hint{font-family:var(--font-display);font-style:italic;font-size:var(--text-sm);color:var(--parchment-deep);line-height:1}.stage-field{position:relative;display:flex;align-items:center;min-height:48px;border-radius:10px;overflow:hidden;background:radial-gradient(ellipse at 20% 0%,color-mix(in oklab,var(--stage-color, var(--gold)) 14%,var(--cream)) 0%,transparent 55%),linear-gradient(180deg,color-mix(in oklab,var(--stage-color, var(--gold)) 12%,var(--parchment)),color-mix(in oklab,var(--stage-color, var(--gold)) 20%,var(--parchment-shade)));box-shadow:0 2px 6px color-mix(in oklab,var(--ink-shadow) 28%,transparent);transition:box-shadow .18s var(--ease-out),background .18s var(--ease-out)}.stage-field:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;pointer-events:none;box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--stage-color, var(--wood-dark)) 28%,transparent),inset 0 3px color-mix(in oklab,var(--stage-color, var(--gold)) 55%,transparent);transition:box-shadow .18s var(--ease-out)}.stage-field:hover{box-shadow:0 4px 10px color-mix(in oklab,var(--ink-shadow) 34%,transparent)}.stage-field:hover:after{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--stage-color, var(--wood-dark)) 34%,transparent),inset 0 3px color-mix(in oklab,var(--stage-color, var(--gold)) 63%,transparent)}.stage-field:focus-within{box-shadow:0 2px 6px color-mix(in oklab,var(--ink-shadow) 28%,transparent),0 0 0 2px color-mix(in oklab,var(--stage-color, var(--gold-deep)) 55%,transparent)}.stage-field:focus-within:after{box-shadow:inset 0 0 0 1px color-mix(in oklab,var(--stage-color, var(--wood-dark)) 35%,transparent),inset 0 3px color-mix(in oklab,var(--stage-color, var(--gold)) 70%,transparent)}.stage-field:hover .stage-select,.stage-field:focus-within .stage-select{text-shadow:0 0 9px color-mix(in oklab,var(--stage-color, var(--gold)) 60%,transparent)}.stage-field:hover .stage-glyph,.stage-field:focus-within .stage-glyph{filter:drop-shadow(0 0 5px color-mix(in oklab,var(--stage-color, var(--gold)) 55%,transparent))}.stage-race{position:relative;flex:1 1 auto;display:flex;align-items:center;min-width:0}.stage-glyph{width:22px;height:22px;object-fit:contain;margin-left:10px;pointer-events:none;transition:filter .18s var(--ease-out)}.stage-select{-moz-appearance:none;appearance:none;-webkit-appearance:none;flex:1;min-width:0;border:none;background:none;font-family:var(--font-display);font-weight:700;font-size:var(--text-md);letter-spacing:var(--tracking-display);color:var(--ink);padding:10px 22px 10px 8px;cursor:pointer;transition:text-shadow .18s var(--ease-out);color-scheme:light}.stage-select option{background-color:var(--parchment);color:var(--ink)}.stage-select:focus{outline:none}.stage-caret{position:absolute;right:8px;color:var(--ink-soft);font-size:var(--text-xs);pointer-events:none}.stage-field .gender-toggle{align-self:stretch;flex:none;background:none;border:none;border-left:1px solid color-mix(in oklab,var(--stage-color, var(--wood-dark)) 26%,transparent);border-radius:0}.stage-field .gender-toggle button{display:flex;align-items:center;justify-content:center;min-width:34px;min-height:0;padding:0 10px;color:var(--ink-mute)}.stage-field .gender-toggle button+button{border-left:1px solid color-mix(in oklab,var(--stage-color, var(--wood-dark)) 20%,transparent)}.stage-field .gender-toggle button.is-active{background:color-mix(in oklab,var(--stage-color, var(--gold)) 42%,var(--parchment));color:var(--ink)}.stage-field .gender-toggle button:not(.is-active):hover{background:color-mix(in oklab,var(--stage-color, var(--gold)) 20%,var(--parchment));color:var(--ink)}.builder-arrow{font-family:var(--font-display);font-size:var(--text-xl);line-height:1;color:var(--gold);align-self:flex-start;margin-top:calc(var(--text-xs) + var(--text-sm) + 36px - var(--text-xl) / 2);text-shadow:0 1px 2px color-mix(in oklab,var(--ink-shadow) 50%,transparent)}.builder-result{display:flex;justify-content:center;width:100%}.builder-card{margin:0;width:min(94vw,460px);max-height:none;overflow:hidden}.builder-card-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);margin:0 0 var(--space-xs)}.builder-card-title{font-family:var(--font-display);font-style:italic;font-weight:700;font-size:var(--text-md);line-height:var(--lh-snug);letter-spacing:var(--tracking-display);color:color-mix(in oklab,var(--pane-color) 28%,var(--ink));margin:0;flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.builder-card-header .gender-toggle{flex:none}@media (max-width: 599px){.mode-toggle button{font-size:var(--text-xs);padding:0 14px}.builder-controls{flex-direction:column;align-items:stretch;gap:10px;width:100%;max-width:320px}.stage{width:100%}.builder-arrow{transform:rotate(90deg);align-self:center;margin-top:0;padding:0;font-size:var(--text-md)}}@media (prefers-reduced-motion: reduce){.app,.combo-card.is-illuminating,.combo-card.is-illuminating .card-discoverer-label,.combo-card.is-illuminating .card-discoverer-name,.combo-card.is-illuminating .card-name,.combo-card.is-illuminating .card-lore,.combo-card.is-illuminating .card-date,.combo-modal,.combo-modal-card{animation:none}.combo-card,.mode-toggle button,.flip-hint,.expand-btn,.gender-toggle button,.stage-field,.stage-field:after,.stage-select,.stage-glyph,.modal-close{transition:none}}
