@import"https://fonts.googleapis.com/css2?family=Sora:wght@300;400;500;700&family=JetBrains+Mono:wght@400;500;600&family=Cinzel:wght@400;600;700;900&display=swap";.auth{height:100dvh;overflow-y:auto;padding:40px 16px;display:flex;justify-content:center;align-items:flex-start;background:radial-gradient(ellipse 70% 55% at 50% 35%,#0000001a,#000000b8),linear-gradient(#080a0d73,#080a0dd1),url(/images/splash.png) center / cover no-repeat fixed,#0d1014}.auth__column{width:min(440px,100%);margin:auto 0;display:flex;flex-direction:column;gap:18px}.auth__column--wide{width:min(880px,100%)}.auth__brand{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.auth__mark{font-family:var(--font-display);font-weight:900;font-size:clamp(2.4rem,6vw,3.4rem);letter-spacing:.18em;text-transform:uppercase;color:#00bcd4;text-shadow:0 0 24px rgba(0,188,212,.6),0 0 48px rgba(0,188,212,.3),0 2px 12px rgba(0,0,0,.8)}.auth__tagline{font-family:var(--font-display);font-size:.72rem;letter-spacing:.3em;text-transform:uppercase;color:#ffffffb8;text-shadow:0 1px 8px rgba(0,0,0,.9)}.auth-card{display:flex;flex-direction:column;gap:16px;padding:22px 24px 24px;border:1px solid var(--rule-strong);border-top:2px solid color-mix(in srgb,var(--amber) 60%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--night) 90%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--elev-modal)}.auth-card__head h1{margin:0;font-family:var(--font-display);font-size:1.45rem;font-weight:700;letter-spacing:.03em;color:var(--text)}.auth-card__head p{margin:4px 0 0;font-size:.84rem;color:var(--text-2)}.auth-card__head--row{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-card__tools{display:flex;gap:8px}.auth-icon,.auth-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:4px;background:transparent;color:var(--text-2);font-size:.8rem;cursor:pointer}.auth-icon{width:34px;padding:0}.auth-icon:hover,.auth-ghost:hover{color:var(--text);border-color:color-mix(in srgb,var(--text) 35%,transparent)}.auth-google{display:flex;justify-content:center;line-height:0;border-radius:20px;transition:opacity var(--duration-fast) var(--ease)}.auth-google:hover{opacity:.88}.auth-google:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.auth-google img{display:block;height:40px;width:auto}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--text-3);font-size:.74rem;text-transform:uppercase;letter-spacing:.16em}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--rule-strong)}.auth-form{display:flex;flex-direction:column;gap:14px}.auth-form label,.auth-form__field{display:flex;flex-direction:column;gap:6px}.auth-form label>span,.auth-form__field>span,.choice-group legend{font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}.auth-form input,.auth-form__field input{height:40px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--night-2);color:var(--text);font-size:.92rem}.auth-form input:focus,.auth-form__field input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--cyan) 25%,transparent)}.auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;border:none;border-radius:4px;background:var(--amber);color:#1a1206;font-weight:700;font-size:.92rem;cursor:pointer;transition:filter var(--duration-fast) var(--ease)}.auth-submit:hover:not(:disabled){filter:brightness(1.08)}.auth-submit:disabled{opacity:.45;cursor:not-allowed}.auth-error{margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--crimson) 50%,transparent);border-radius:4px;background:color-mix(in srgb,var(--crimson) 10%,transparent);color:var(--crimson);font-size:.84rem}.auth-note{margin:0;font-size:.86rem;color:var(--text-2)}.auth-link{align-self:center;font-size:.82rem;color:var(--cyan)}.hero-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.hero-card{display:flex;flex-direction:column;align-items:center;gap:4px;padding:16px 12px 14px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text);text-align:center;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.hero-card:hover{border-color:color-mix(in srgb,var(--amber) 70%,transparent);transform:translateY(-2px)}.hero-card img{width:84px;height:84px;margin-bottom:6px;border-radius:50%;object-fit:cover;border:2px solid color-mix(in srgb,var(--amber) 55%,transparent)}.hero-card__name{max-width:100%;font-family:var(--font-display);font-weight:700;font-size:1.1rem;line-height:1.2;overflow-wrap:anywhere}.hero-card--new{justify-content:center;border-style:dashed;color:var(--text-2)}.hero-card--new:hover{color:var(--text)}.hero-card__plus{display:grid;place-items:center;width:84px;height:84px;margin-bottom:6px;border-radius:50%;border:2px dashed color-mix(in srgb,var(--amber) 55%,transparent);color:var(--amber)}.hero-card__meta{font-size:.76rem;color:var(--text-2)}.hero-card__where{font-size:.72rem;color:var(--text-3)}.hero-card__play{margin-top:8px;padding:4px 16px;border:1px solid color-mix(in srgb,var(--cyan) 55%,transparent);border-radius:4px;color:var(--cyan);font-size:.76rem;font-weight:600}.choice-group{margin:0;padding:0;border:none;display:flex;flex-direction:column;gap:8px}.choice-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.choice{display:flex;align-items:flex-start;gap:12px;padding:12px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.choice:hover{border-color:color-mix(in srgb,var(--text) 30%,transparent)}.choice.is-on{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 9%,var(--night-2));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--cyan) 40%,transparent)}.choice img{width:54px;height:54px;flex:0 0 54px;border-radius:6px;object-fit:cover}.choice__text{display:flex;flex-direction:column;gap:4px;min-width:0}.choice__text b{font-family:var(--font-display);font-size:1rem}.choice__text small{font-size:.78rem;line-height:1.45;color:var(--text-2)}.choice__bonuses{display:flex;flex-wrap:wrap;gap:4px}.choice__bonuses em{font-style:normal;padding:1px 7px;border-radius:3px;background:color-mix(in srgb,var(--emerald) 14%,transparent);color:var(--emerald);font-size:.7rem}.auth-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--rule);border-radius:6px;background:var(--night)}.auth-tabs button{flex:1;min-height:32px;border:none;border-radius:4px;background:transparent;color:var(--text-2);font-family:var(--font-display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;cursor:pointer}.auth-tabs button.is-on{background:color-mix(in srgb,var(--cyan) 14%,transparent);color:var(--cyan)}.auth-switch{margin:0;text-align:center;font-size:.84rem;color:var(--text-2)}.auth-switch a{color:var(--cyan);font-weight:600}.auth-note--icon{display:flex;gap:10px;align-items:flex-start;line-height:1.55}.auth-note--icon svg{flex:0 0 auto;margin-top:2px;color:var(--cyan)}a.auth-submit{text-decoration:none}@media(max-height:820px){.auth{padding:20px 16px}.auth__column{gap:12px}.auth__mark{font-size:2.2rem}.auth-card{padding:16px 18px 18px;gap:12px}.hero-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr))}.hero-card{padding:12px 10px 10px}.hero-card img,.hero-card__plus{width:64px;height:64px}}@media(max-width:600px){.auth{padding:24px 12px}.auth-card__head--row{flex-direction:column;align-items:flex-start}}.language-select{display:inline-flex;align-items:center;gap:8px;font-size:.85rem}.language-select select{font:inherit;color:inherit;background:transparent;border:1px solid currentColor;border-radius:6px;padding:4px 8px}.language-select select option{color:initial}.auth__language{display:flex;justify-content:center;margin-top:12px}.combat-skills__row{display:flex;flex-wrap:wrap;gap:8px}.combat-skills__row>.combat-skill{flex:1 1 0;min-width:76px}.combat-skills__row>.combat-skill--edit{flex:0 0 56px;min-width:56px}.combat-skills__empty{margin:0;font-size:.84rem;color:var(--text-2)}.combat-skills__link{padding:0;border:0;background:none;color:var(--cyan);font:inherit;text-decoration:underline;cursor:pointer}.combat-skill{position:relative;overflow:hidden;min-height:88px;display:grid;justify-items:center;align-content:center;gap:4px;padding:8px 6px 6px;border:1px solid color-mix(in srgb,var(--track, var(--rule-strong)) 55%,var(--rule));border-radius:var(--r-2);background:linear-gradient(180deg,color-mix(in srgb,var(--track, var(--cyan)) 14%,transparent),transparent 70%),var(--night-2);color:var(--text);font:inherit;cursor:pointer;transition:transform var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.combat-skill:hover:not(:disabled){border-color:var(--track, var(--cyan));transform:translateY(-1px)}.combat-skill:active:not(:disabled){transform:translateY(1px)}.combat-skill:disabled{cursor:not-allowed}.combat-skill--cooling:after{content:"";position:absolute;inset:auto 0 0 0;height:calc(var(--cd, 0) * 100%);background:color-mix(in srgb,var(--void) 62%,transparent);pointer-events:none;transition:height .2s linear}.combat-skill--poor{filter:grayscale(.85);opacity:.55}.combat-skill--pending{border-color:var(--amber)}.combat-skill__key{position:absolute;top:4px;left:6px;font-family:var(--font-mono);font-size:.66rem;color:var(--text-3)}.combat-skill__name{max-width:100%;font-size:.74rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combat-skill__cost{font-size:.64rem;font-weight:700;letter-spacing:.04em}.combat-skill__cost--rage,.combat-skill__cost--health{color:var(--crimson)}.combat-skill__cost--mana{color:var(--cyan)}.combat-skill__cost--gain{color:var(--emerald)}.combat-skill__cd{position:absolute;z-index:1;top:30%;left:50%;transform:translate(-50%,-50%);font-family:var(--font-mono);font-size:1.15rem;font-weight:700;color:var(--text);text-shadow:0 1px 3px var(--damage-float-shadow)}.combat-skill__why{font-size:.62rem;color:var(--crimson)}.combat-skill--edit{border-style:dashed;color:var(--text-2);background:transparent}.combat-skill--full{border-color:var(--track, var(--amber));animation:combat-skill-full 1.1s var(--ease) infinite alternate}@keyframes combat-skill-full{0%{box-shadow:inset 0 0 0 1px var(--track, var(--amber))}to{box-shadow:inset 0 0 0 2px var(--track, var(--amber)),0 0 10px color-mix(in srgb,var(--track, var(--amber)) 45%,transparent)}}@media(prefers-reduced-motion:reduce){.combat-skill--full{animation:none;box-shadow:inset 0 0 0 2px var(--track, var(--amber))}}.combat-skill__preview{position:absolute;z-index:1;top:3px;right:5px;font-family:var(--font-mono);font-size:.7rem;font-weight:700;color:var(--amber)}.combat-skill__preview--dim{color:var(--text-3);font-weight:500}.combat-skill__segments{display:flex;gap:3px;width:100%;max-width:64px}.combat-skill__segments i{flex:1 1 0;height:4px;border-radius:2px;background:var(--rule-strong)}.combat-skill__segments i.is-lit{background:var(--track, var(--amber))}.combat-skill__meter{width:100%;max-width:64px;height:4px;border-radius:2px;background:linear-gradient(90deg,var(--track, var(--amber)) calc(var(--fill, 0) * 100%),transparent 0),var(--rule-strong)}.combat-skill__badges{display:flex;flex-wrap:wrap;justify-content:center;gap:2px;max-width:100%;min-width:0}.combat-skill__badge{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 4px;border-radius:3px;font-size:.6rem;font-weight:700;line-height:1.5}.combat-skill__badge--reacts{color:var(--magenta);background:color-mix(in srgb,var(--magenta) 14%,transparent)}.combat-skill__badge--answer{color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,transparent)}.explore{flex:1;min-height:0;display:flex;flex-direction:column;position:relative}.explore-scene{position:relative;flex:0 0 clamp(190px,34vh,360px);overflow:hidden;background:var(--void);border-bottom:1px solid color-mix(in srgb,var(--amber) 22%,transparent)}.explore-scene--plain{background:radial-gradient(ellipse 70% 60% at 50% 30%,color-mix(in srgb,var(--cyan) 9%,transparent),transparent 65%),linear-gradient(180deg,var(--night-3),var(--void))}.explore-scene__art{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center 40%;transform:scale(1.02);animation:explore-scene-in .42s var(--ease) both}@keyframes explore-scene-in{0%{opacity:0;transform:scale(1.06)}to{opacity:1;transform:scale(1.02)}}.explore-scene__scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0000 35%,#000000c7)}.explore-scene__caption{position:absolute;left:20px;right:20px;bottom:16px;display:flex;flex-direction:column;gap:4px}.explore-scene__area{font-family:var(--font-display);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:#ffffffb8}.explore-scene__title{margin:0;font-family:var(--font-display);font-weight:700;font-size:clamp(1.3rem,2.4vw,2rem);line-height:1.1;color:#ffc46b;text-shadow:0 2px 14px rgba(0,0,0,.85)}.explore-scene__env{position:absolute;top:12px;right:14px;padding:3px 9px;border-radius:999px;background:#00000080;color:#ffffffc7;font-size:.6rem;letter-spacing:.16em;text-transform:uppercase;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.explore-body{flex:1;min-height:0;overflow-y:auto;padding:16px 20px 20px;display:flex;flex-direction:column;gap:18px;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.explore-desc{margin:0;max-width:78ch;font-size:.92rem;line-height:1.6;font-style:italic;color:var(--text)}.explore-section-title{margin:0 0 8px;font-family:var(--font-display);font-size:.66rem;font-weight:600;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.explore-empty{margin:0;font-size:.82rem;color:var(--text-3);font-style:italic}.explore-quests{display:flex;flex-wrap:wrap;gap:8px}.explore-quest-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--amber);font-size:.78rem;cursor:pointer}.explore-quest-chip span{font-weight:900}.explore-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px}.explore-card{display:flex;gap:12px;padding:10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);min-width:0;transition:border-color var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.explore-card:hover{border-color:color-mix(in srgb,var(--cyan) 45%,var(--rule-strong))}.explore-card--hostile{border-left:3px solid color-mix(in srgb,var(--crimson) 70%,transparent)}.explore-card--npc{border-left:3px solid color-mix(in srgb,var(--amber) 70%,transparent)}.explore-card--rank-elite{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rank-elite) 45%,transparent)}.explore-card--rank-boss{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--rank-boss) 60%,transparent),0 0 18px -6px var(--rank-boss)}.explore-card--station,.explore-card--portal,.explore-card--well{border-left:3px solid color-mix(in srgb,var(--cyan) 70%,transparent)}.explore-card__portrait{width:64px;height:64px;flex:0 0 64px;border-radius:6px;object-fit:cover;background:var(--night-3);border:1px solid var(--rule)}.explore-card--object .explore-card__portrait{object-fit:contain;padding:4px}.explore-card__portrait--empty{display:grid;place-items:center;color:var(--text-3);font-family:var(--font-display);font-size:1.2rem}.explore-card__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.explore-card__head{display:flex;align-items:center;gap:6px;min-width:0}.explore-card__name{font-weight:600;font-size:.9rem;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.explore-card--hostile .explore-card__name{color:var(--amber)}.explore-card__quest{flex:0 0 auto;display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--amber);color:#1a1206;font-size:.72rem;font-weight:900}.explore-card__meta{display:flex;flex-wrap:wrap;gap:4px 10px;font-size:.7rem;color:var(--text-3);text-transform:capitalize}.explore-card__rank{color:var(--rank-elite);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.explore-card--rank-boss .explore-card__rank{color:var(--rank-boss)}.explore-card__hp{height:4px;border-radius:2px;background:var(--night-3);overflow:hidden}.explore-card__hp>div{height:100%;background:var(--crimson);transform-origin:left center;transition:transform var(--duration-base) var(--ease)}.explore-card__actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:4px}.explore-btn{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:4px 12px;border-radius:4px;border:1px solid var(--rule-strong);background:transparent;color:var(--text-2);font-family:var(--font-ui);font-size:.74rem;font-weight:500;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.explore-btn:hover:not(:disabled){color:var(--text);border-color:color-mix(in srgb,var(--text) 35%,transparent)}.explore-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.explore-btn:disabled{opacity:.4;cursor:not-allowed}.explore-btn--primary{border-color:color-mix(in srgb,var(--cyan) 60%,transparent);background:color-mix(in srgb,var(--cyan) 12%,transparent);color:var(--cyan)}.explore-btn--primary:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 22%,transparent);color:var(--cyan)}.explore-btn--danger{border-color:color-mix(in srgb,var(--crimson) 60%,transparent);background:color-mix(in srgb,var(--crimson) 12%,transparent);color:var(--crimson)}.explore-btn--danger:hover:not(:disabled){background:color-mix(in srgb,var(--crimson) 22%,transparent);color:var(--crimson)}.explore-players{display:flex;flex-direction:column;gap:6px}.explore-player{display:flex;align-items:center;gap:10px;padding:6px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.explore-player .explore-card__portrait{width:36px;height:36px;flex-basis:36px;border-radius:50%}.explore-player__text{flex:1;min-width:0;display:flex;flex-direction:column}.explore-log{display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--rule);padding-top:12px}.explore-log__scroll{max-height:180px;overflow-y:auto;scrollbar-width:thin}.explore-log__line{margin:0;padding:3px 0;font-size:.82rem;line-height:1.45;color:var(--text-2)}.explore-log__line--success{color:var(--emerald)}.explore-log__line--warning{color:var(--amber)}.explore-log__line--error{color:var(--crimson)}.move{padding:10px 12px 12px;border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:10px;flex-shrink:0}.move-pad{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.move-tile{height:40px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:1px solid var(--rule);border-radius:5px;background:var(--night);color:var(--text-3);font-family:var(--font-display);font-size:.62rem;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.move-tile:disabled{opacity:.35;cursor:default}.move-tile--open{border-color:color-mix(in srgb,var(--cyan) 55%,transparent);background:color-mix(in srgb,var(--cyan) 11%,var(--night));color:var(--cyan)}.move-tile--open:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 22%,var(--night))}.move-tile--hidden{border-color:color-mix(in srgb,var(--text) 20%,transparent);color:color-mix(in srgb,var(--text) 40%,transparent)}.move-tile--hidden:hover:not(:disabled){border-color:var(--rule-strong);color:var(--text-2)}.move-tile--closed{border-color:color-mix(in srgb,var(--amber) 60%,transparent);background:color-mix(in srgb,var(--amber) 10%,var(--night));color:var(--amber)}.move-tile--locked{border-color:color-mix(in srgb,var(--crimson) 60%,transparent);background:color-mix(in srgb,var(--crimson) 10%,var(--night));color:var(--crimson)}.move-tile--gap{border-style:dashed}.move-tile--util{color:var(--text-2);font-family:var(--font-ui);font-weight:500;letter-spacing:0}.move-tile--util:hover:not(:disabled){color:var(--text);border-color:var(--rule-strong)}.move-tile--armed{border-color:var(--amber);color:var(--amber)}.move-tile:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.game-shell{--lcol: 268px}.character-panel{overflow:hidden}.char-nav{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;border-bottom:1px solid var(--rule)}.char-lists{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin}.char-nav .mini-map{flex:0 0 auto;width:100%;min-height:0;border:none;border-radius:0;background:transparent;padding:10px 12px 4px;display:flex;flex-direction:column;align-items:center}.char-nav .mini-map-header{align-self:stretch;margin-bottom:4px;font-size:.8rem}.char-nav .mini-map-canvas{width:220px;height:220px;flex:0 0 220px}.char-nav .move{border-bottom:none;padding:6px 0 14px;align-items:center}.char-nav .move-pad{width:204px;grid-template-columns:repeat(3,64px);gap:6px}.move-tile--track{border-color:color-mix(in srgb,var(--amber) 60%,transparent);background:color-mix(in srgb,var(--amber) 12%,var(--night));color:var(--amber)}.move-tile--track:hover{background:color-mix(in srgb,var(--amber) 22%,var(--night))}.move-needle{display:grid;place-items:center;transition:transform var(--duration-base) var(--ease)}.move-needle__dot{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.6}.nav-btn{position:relative}.nav-btn:disabled{opacity:.32;cursor:not-allowed}.nav-btn:disabled:hover{background:transparent;color:var(--text-3)}.nav-btn--fight{color:var(--crimson)}.nav-badge{position:absolute;top:3px;right:3px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:var(--amber);color:#1a1206;font-family:var(--font-ui);font-size:.56rem;font-weight:700;line-height:16px;letter-spacing:0}.nav-divider{width:32px;height:1px;margin:4px 0;background:var(--rule-strong)}.breadcrumb-sep{opacity:.5;margin:0 4px}.topbar-hero{display:flex;align-items:center;gap:8px;padding:3px 10px 3px 3px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--text-2);cursor:pointer}.topbar-hero:hover{border-color:var(--rule-strong);color:var(--text)}.topbar-hero__name{font-family:var(--font-display);font-size:.78rem;font-weight:600}@media(max-width:860px){.explore-grid{grid-template-columns:1fr}}.top-status .brand-mark{text-transform:uppercase;letter-spacing:.2em;text-shadow:0 0 14px rgba(0,188,212,.55),0 0 30px rgba(0,188,212,.25)}.left-nav{overflow-y:auto;scrollbar-width:none}@media(max-height:820px){.left-nav .nav-btn{height:42px;gap:2px}.left-nav .nav-divider{margin:2px 0}.char-nav .mini-map-canvas{width:180px;height:180px;flex-basis:180px}.char-nav .move-tile{height:36px}}.guild-sheet{position:relative;display:flex;flex-direction:column;gap:12px;height:min(68dvh,720px);min-height:0;width:100%;max-width:880px;margin:0 auto}.guild-sheet__toolbar,.guild-sheet__head{display:flex;align-items:center;gap:12px}.guild-sheet__toolbar-spacer{flex:1}.guild-sheet__identity{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.guild-sheet__identity strong{font-family:var(--font-display);font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-sheet__identity span{color:var(--text-3);font-family:var(--font-mono);font-size:.78rem}.guild-crest{flex:none;display:block}.guild-tabs{display:flex;gap:4px;border-bottom:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}.guild-tab{flex:1 0 auto;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;border:0;border-bottom:2px solid transparent;background:none;color:var(--text-2);font:inherit;font-size:.85rem;cursor:pointer;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.guild-tab:hover{color:var(--text)}.guild-tab:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.guild-tab--active{color:var(--amber);border-bottom-color:var(--amber)}.guild-tabpanel{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:12px}.guild-card{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2)}.guild-card h4,.guild-section-title{margin:0;color:var(--text-3);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.guild-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.guild-stat{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.guild-stat b{font-family:var(--font-mono);font-size:1.05rem;font-variant-numeric:tabular-nums}.guild-stat span{color:var(--text-3);font-size:.75rem}.guild-bar{height:6px;border-radius:3px;background:var(--rule-strong);overflow:hidden}.guild-bar>span{display:block;width:100%;height:100%;background:var(--amber);transform-origin:left;transition:transform var(--duration-base) var(--ease)}.guild-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.guild-row{min-height:52px;display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.guild-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.guild-row__main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-row__main small{color:var(--text-3)}.guild-actions{display:flex;flex-wrap:wrap;gap:8px}.guild-empty{margin:0;padding:24px 8px;color:var(--text-3);text-align:center}.guild-pill{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border:1px solid var(--rule-strong);border-radius:999px;color:var(--text-2);font-size:.72rem;white-space:nowrap}.guild-button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 14px;border:1px solid color-mix(in srgb,var(--amber) 70%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--amber) 18%,transparent);color:var(--amber);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.guild-button:hover:not(:disabled){background:color-mix(in srgb,var(--amber) 28%,transparent)}.guild-button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.guild-button:disabled{opacity:.45;cursor:not-allowed}.guild-button--danger{border-color:color-mix(in srgb,var(--crimson) 70%,transparent);background:color-mix(in srgb,var(--crimson) 16%,transparent);color:var(--crimson)}.guild-button--danger:hover:not(:disabled){background:color-mix(in srgb,var(--crimson) 26%,transparent)}.guild-field{display:flex;flex-direction:column;gap:4px;font-size:.8rem;color:var(--text-2)}.guild-field input,.guild-field textarea,.guild-field select{width:100%;min-height:38px;padding:8px 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night);color:var(--text);font:inherit;font-size:.9rem}.guild-field textarea{min-height:80px;resize:vertical}.guild-field input:focus-visible,.guild-field textarea:focus-visible,.guild-field select:focus-visible{outline:2px solid var(--cyan);outline-offset:0}.guild-field small{color:var(--text-3)}.guild-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:16px;background:#0000008c}.guild-dialog{width:min(440px,100%);max-height:min(84dvh,760px);display:flex;flex-direction:column;gap:12px;padding:18px 20px;border:1px solid var(--rule-strong);border-top:2px solid color-mix(in srgb,var(--amber) 55%,transparent);border-radius:var(--r-2);background:var(--night);box-shadow:var(--elev-modal);overflow:hidden}.guild-dialog--wide{width:min(640px,100%)}.guild-dialog:focus-visible{outline:none}.guild-dialog__title{margin:0;font-family:var(--font-display);font-size:1.05rem}.guild-dialog__body{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:10px;color:var(--text-2);font-size:.9rem}.guild-dialog__body p{margin:0}.guild-dialog__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.guild-help{display:flex;flex-direction:column;gap:14px}.guild-help__section h4{display:flex;align-items:center;gap:8px;margin:0 0 6px;color:var(--cyan);font-size:.9rem}.guild-help__section p,.guild-help__section ul{margin:0 0 6px;line-height:1.5}.guild-help__section ul{padding-left:20px}.guild-chat{display:flex;flex-direction:column;gap:8px;min-height:0}.guild-chat__messages{height:min(52dvh,520px);overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:6px;padding:8px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.guild-chat__input{display:flex;gap:8px}.guild-chat__input .social-input-field{flex:1;min-width:0}@media(max-width:560px){.guild-tab span{display:none}.guild-tab{padding:0 10px}}@media(prefers-reduced-motion:reduce){.guild-tab,.guild-bar>span,.guild-button{transition:none}}.companion-sheet{display:flex;flex-direction:column;height:min(68dvh,720px);min-height:0;width:100%;max-width:760px;margin:0 auto;min-width:0}.companion-screen{flex:1;min-height:0;display:flex;flex-direction:column;gap:10px}.companion-screen__bar{display:flex;align-items:center}.companion-tabpanel{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;display:flex;flex-direction:column;gap:14px}.companion-tab-body{display:flex;flex-direction:column;gap:14px;padding:4px 0 8px}.companion-tabs{flex:none}.companion-header-scroll{flex:none;max-height:42%;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:8px}.companion-eyebrow{margin:0;color:var(--text-3);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.companion-caption{margin:0;color:var(--text-2);font-size:.78rem;line-height:1.4}.companion-mono{font-family:var(--font-mono);font-size:.75rem;color:var(--text-2)}.companion-empty{margin:0;color:var(--text-2);font-size:.88rem}.companion-danger{color:var(--crimson)}.companion-amber{color:var(--amber)}.companion-emerald{color:var(--emerald)}.companion-magenta{color:var(--magenta)}.companion-cyan{color:var(--cyan)}.companion-muted{color:var(--text-2)}.companion-tone--crimson{--companion-tone: var(--crimson);color:var(--crimson)}.companion-tone--emerald{--companion-tone: var(--emerald);color:var(--emerald)}.companion-tone--amber{--companion-tone: var(--amber);color:var(--amber)}.companion-tone--magenta{--companion-tone: var(--magenta);color:var(--magenta)}.companion-section{display:flex;flex-direction:column;gap:6px;min-width:0}.companion-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px}.companion-toolbar--wrap{flex-wrap:wrap;justify-content:flex-start}.companion-toolbar__spacer{flex:1}.companion-small-button{min-height:34px;padding:0 10px;font-size:.8rem;white-space:nowrap}.companion-small-button--danger{color:var(--crimson)}.companion-small-button--heal{color:var(--emerald);border-color:var(--rule-strong)}.companion-rail{height:6px}.companion-portrait{position:relative;flex:none;display:inline-block;width:var(--companion-size, 48px);height:var(--companion-size, 48px);overflow:hidden;border:1.5px solid var(--companion-frame, var(--rule-strong));border-radius:var(--r-2);background:var(--night-2)}.companion-portrait img{width:100%;height:100%;object-fit:cover;display:block}.companion-portrait__fallback,.companion-portrait__downed{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center}.companion-portrait__fallback{background:var(--night-3);color:var(--text-2)}.companion-portrait__downed{background:#0000008c;color:var(--crimson)}.companion-hp-rail{display:flex;flex-direction:column;gap:2px;min-width:0}.companion-hp-rail__text{font-family:var(--font-mono);font-size:.7rem;color:var(--text-2);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.companion-hp-rail__text--downed{color:var(--crimson)}.companion-overview-list,.companion-stable-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.companion-overview-row{display:flex;flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;padding:8px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);min-width:0}.companion-overview-row--downed .companion-overview-row__open{opacity:.7}.companion-overview-row__open{flex:1 1 240px;min-width:0;display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.companion-overview-row__open:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:var(--r-2)}.companion-overview-row__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.companion-overview-row__body strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companion-overview-row__manage{flex:none;display:inline-flex;align-items:center;gap:2px;color:var(--cyan);font-size:.8rem}.companion-stable-capacity{font-family:var(--font-mono);font-size:.75rem;color:var(--text-2)}.companion-stable-capacity--full{color:var(--crimson)}.companion-stable-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.companion-stable-row__text{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;gap:2px}.companion-stable-row__text strong,.companion-stable-row__text span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companion-stable-row__text span{color:var(--text-2);font-size:.75rem}.companion-stable-row__actions{display:flex;gap:6px;margin-left:auto}.companion-pick-list{display:flex;flex-direction:column;gap:6px}.companion-pick-row{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit;text-align:left;cursor:pointer}.companion-pick-row:hover{border-color:var(--cyan)}.companion-pick-row:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.companion-pick-row__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.companion-pick-row__text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companion-header{display:flex;flex-direction:column;gap:8px}.companion-header__top{display:flex;align-items:flex-start;gap:12px;min-width:0}.companion-header__identity{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.companion-header__name{margin:0;font-size:1.1rem;font-weight:600;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.companion-tags{display:flex;flex-wrap:wrap;gap:5px}.companion-tag{padding:1px 6px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--night-2);color:var(--text-2);font-family:var(--font-mono);font-size:.68rem;font-weight:600;white-space:nowrap}.companion-traits{display:flex;flex-direction:column;gap:2px}.companion-trait{display:flex;align-items:baseline;gap:8px;min-width:0;font-size:.78rem}.companion-trait__key{flex:none;min-width:52px;color:var(--text-2)}.companion-trait__value{min-width:0;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companion-potion{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.companion-stance{display:flex;flex-direction:column;gap:4px}.companion-stance__chips{display:flex;flex-wrap:wrap;gap:6px}.companion-stance__chip{min-height:32px;padding:3px 12px;font-size:.8rem}.companion-loading{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 0;color:var(--text-2)}.companion-kv{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 12px;margin:0}.companion-kv dt{color:var(--text-2);font-size:.8rem}.companion-kv dd{margin:0;font-family:var(--font-mono);font-size:.82rem;text-align:right}.companion-alloc{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid var(--amber);border-radius:var(--r-2);background:var(--night-2);box-shadow:0 0 12px color-mix(in srgb,var(--amber) 22%,transparent)}.companion-alloc__title{display:inline-flex;align-items:center;gap:4px;color:var(--amber);font-size:.8rem}.companion-alloc__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.companion-alloc__chip{min-height:36px;padding:4px 2px;border:1px solid color-mix(in srgb,var(--companion-tone) 50%,transparent);border-radius:4px;background:color-mix(in srgb,var(--companion-tone) 12%,transparent);font:inherit;font-size:.72rem;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer}.companion-alloc__skills{display:flex;flex-wrap:wrap;gap:6px}.companion-alloc__skill{min-height:32px;padding:4px 10px;border:1px solid color-mix(in srgb,var(--cyan) 60%,transparent);border-radius:4px;background:color-mix(in srgb,var(--cyan) 8%,transparent);color:var(--cyan);font:inherit;font-size:.75rem;cursor:pointer}.companion-alloc__chip:focus-visible,.companion-alloc__skill:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.companion-stat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.companion-stat{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.companion-stat__value{font-family:var(--font-mono);font-size:.95rem;font-weight:600;overflow-wrap:anywhere}.companion-stat__sub{font-family:var(--font-mono);font-size:.65rem;color:var(--text-3)}.companion-skill{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid color-mix(in srgb,var(--magenta) 40%,transparent);border-radius:var(--r-2);background:var(--night-2)}.companion-skill--locked{opacity:.5;border-color:var(--rule)}.companion-skill__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.companion-skill__text strong{color:var(--magenta);font-size:.88rem}.companion-skill--locked .companion-skill__text strong{color:var(--text-2)}.companion-skill__pips{flex:none;display:inline-flex;gap:3px}.companion-pip{width:8px;height:8px;border:1px solid color-mix(in srgb,var(--magenta) 40%,transparent);border-radius:50%}.companion-pip--on{border-color:var(--magenta);background:var(--magenta)}.companion-coverage{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border:1px solid color-mix(in srgb,var(--amber) 40%,transparent);border-radius:4px;background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.7rem;font-weight:600;white-space:nowrap}.companion-coverage--full{border-color:color-mix(in srgb,var(--emerald) 40%,transparent);background:color-mix(in srgb,var(--emerald) 10%,transparent);color:var(--emerald)}.companion-slot{display:flex;flex-direction:column;gap:4px;padding:8px 6px 8px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.companion-slot--empty{flex-direction:row;align-items:center;gap:10px;padding:10px 12px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.companion-slot--empty:hover{border-color:var(--rule-strong)}.companion-slot--empty:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.companion-slot__main{display:flex;align-items:center;gap:8px;min-width:0}.companion-slot__icon{flex:none;color:var(--text-3)}.companion-slot__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.companion-slot__text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.companion-slot__text em{color:var(--text-3);font-size:.82rem}.companion-slot__label{color:var(--text-3);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em;text-transform:uppercase}.companion-slot__equip{flex:none;padding:3px 8px;border:1px solid color-mix(in srgb,var(--emerald) 40%,transparent);border-radius:4px;background:color-mix(in srgb,var(--emerald) 8%,transparent);color:var(--emerald);font-size:.75rem;white-space:nowrap}.companion-slot__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:6px}.companion-slot__upgrade{color:var(--amber)}.companion-unequip{flex:none;width:34px;min-height:34px;color:var(--crimson)}.companion-compare{display:flex;align-items:center;gap:8px}.companion-compare__arrow{flex:none;color:var(--text-3)}.companion-compare__card{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);text-align:center}.companion-compare__card strong{font-size:.8rem;overflow-wrap:anywhere}.companion-compare__card--new{border-color:var(--emerald)}.companion-compare__card--new .companion-compare__label,.companion-compare__card--new .companion-mono{color:var(--emerald)}.companion-compare__label{color:var(--text-2);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.08em}.companion-impact{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;border-radius:4px;background:var(--night-2)}.companion-equip-confirm{min-width:0;max-width:100%}.companion-ellipsis{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-height:820px){.companion-sheet{height:calc(100dvh - 140px)}}@media(min-width:720px){.companion-header-scroll{max-height:54%}}@media(max-width:560px){.companion-header .companion-portrait{width:72px;height:72px}.companion-tabs .guild-tab span{display:inline}}@media(prefers-reduced-motion:reduce){.companion-rail .bar-fill{transition:none}}.crafting-sheet{position:relative;min-height:0;display:flex;flex-direction:column;gap:10px}.crafting-sheet>*{flex:none}.crafting-sheet>.crafting-body{flex:1 1 auto}.crafting-hint{margin:0;padding:8px 12px;border:1px dashed var(--rule-strong);border-radius:var(--r-2);color:var(--text-2);font-size:.88rem}.crafting-sheet--empty{display:block;color:var(--text-2)}.crafting-topbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.crafting-stations{display:flex;gap:6px;flex-wrap:wrap;flex:1 1 auto}.crafting-station{--station-accent: var(--amber);min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid color-mix(in srgb,var(--station-accent) 55%,transparent);border-radius:var(--r-2);background:transparent;color:var(--station-accent);font-family:var(--font-display);font-weight:600;letter-spacing:.02em;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.crafting-station img{border-radius:4px}.crafting-station:hover{background:color-mix(in srgb,var(--station-accent) 10%,transparent)}.crafting-station.is-active{background:color-mix(in srgb,var(--station-accent) 20%,transparent);border-color:var(--station-accent);color:var(--text);cursor:default}.crafting-station:focus-visible,.crafting-rail button:focus-visible,.recipe-row:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.crafting-station--enchanting{--station-accent: var(--magenta)}.crafting-station--outfitting{--station-accent: var(--emerald)}.crafting-station--woodworking{--station-accent: var(--damage-neutral)}.crafting-station--jewelcrafting{--station-accent: var(--cyan)}.crafting-tier{display:inline-flex;align-items:baseline;gap:6px;padding:4px 10px;border:1px solid var(--rule-strong);border-radius:999px;background:var(--night-2);color:var(--text-2);font-size:.82rem}.crafting-tier b{color:var(--amber);font-family:var(--font-mono)}.crafting-tier__xp{font-family:var(--font-mono);color:var(--text-3);font-size:.74rem}.crafting-tip{display:flex;gap:10px;align-items:flex-start;justify-content:space-between;padding:10px 12px;border:1px solid color-mix(in srgb,var(--cyan) 40%,transparent);border-left:3px solid var(--cyan);border-radius:var(--r-2);background:color-mix(in srgb,var(--cyan) 7%,var(--night-2))}.crafting-tip p{margin:2px 0 0;color:var(--text-2);font-size:.86rem}.crafting-filters{display:flex;gap:8px;flex-wrap:wrap}.crafting-search{flex:1 1 220px;width:auto;min-width:0;display:flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text-3)}.crafting-search input{flex:1;width:auto;min-width:0;min-height:0;padding:0;border:0;background:transparent;color:var(--text);font:inherit;outline:none}.crafting-search:focus-within{border-color:var(--cyan)}.crafting-tier-filter{flex:0 0 auto;width:auto;min-height:36px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit}.crafting-body{min-height:0;display:grid;grid-template-columns:190px minmax(0,1fr) minmax(300px,420px);gap:12px}.crafting-rail{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:4px;padding-right:4px}.crafting-rail button{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:1px solid transparent;border-radius:var(--r-2);background:transparent;color:var(--text-2);font:inherit;text-align:left;cursor:pointer}.crafting-rail button span{color:var(--text-3);font-family:var(--font-mono);font-size:.76rem}.crafting-rail button:hover{background:var(--night-2)}.crafting-rail button.is-active{border-color:var(--rule-strong);background:var(--night-2);color:var(--text);box-shadow:inset 3px 0 0 var(--amber)}.crafting-list{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding-right:4px}.crafting-list__empty{color:var(--text-2);padding:12px}.recipe-row{--rarity-accent: var(--rule);display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:6px 8px;border:1px solid var(--rule-strong);border-left:3px solid var(--rarity-accent);border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.recipe-row:hover{background:var(--night-3)}.recipe-row.is-selected{background:color-mix(in srgb,var(--rarity-accent) 12%,var(--night-2));border-color:var(--rarity-accent);box-shadow:0 0 10px -3px color-mix(in srgb,var(--rarity-accent) 70%,transparent)}.recipe-row--locked .recipe-row__name{color:var(--text-2)}.recipe-row__text{min-width:0;display:flex;flex-direction:column;gap:2px}.recipe-row__name{font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-row__output,.recipe-row__gate{color:var(--text-2);font-size:.8rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-row__gate{color:var(--amber)}.recipe-row__side{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.recipe-tier{color:var(--text-3);font-family:var(--font-mono);font-size:.74rem;font-weight:500}.recipe-art{--rarity-accent: var(--rule);flex:none;display:grid;place-items:center;overflow:hidden;border:1px solid color-mix(in srgb,var(--rarity-accent) 60%,transparent);border-radius:6px;background:var(--night-3);color:var(--text-3)}.recipe-art img{width:100%;height:100%;object-fit:contain}.recipe-art--locked{background:color-mix(in srgb,var(--text) 16%,var(--night-3))}.recipe-rarity{--rarity-accent: var(--text-2);padding:1px 8px;border:1px solid var(--rarity-accent);border-radius:999px;background:color-mix(in srgb,var(--rarity-accent) 12%,transparent);color:var(--rarity-accent);font-size:.72rem;text-transform:capitalize}.recipe-state{display:inline-flex;align-items:center;gap:4px;font-size:.74rem;font-weight:700;color:var(--text-2)}.recipe-state--ready{color:var(--emerald)}.recipe-state--missing{color:var(--text-2)}.recipe-state--gated,.recipe-state--locked{color:var(--crimson)}.recipe-elements{display:flex;flex-wrap:wrap;gap:4px;margin-top:2px}.recipe-element{display:inline-flex;align-items:center;gap:4px;max-width:160px;padding:1px 6px;border:1px solid var(--rule);border-radius:4px;background:var(--night-2);color:var(--text-3);font-size:.72rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recipe-element--revealed{border-color:var(--rule-strong);background:var(--night-3);color:var(--text)}.recipe-element__kind{font-family:var(--font-mono);font-size:.64rem;color:var(--text-3)}.recipe-preview{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.recipe-preview--empty{color:var(--text-2)}.recipe-preview__head{--rarity-accent: var(--rule);display:flex;gap:12px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--rule)}.recipe-preview__title{min-width:0}.recipe-preview__title h3{margin:0 0 4px;font-family:var(--font-display);font-size:1.1rem;color:var(--rarity-accent)}.recipe-preview__meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.recipe-preview__output{margin:4px 0 0;color:var(--text-2);font-size:.84rem}.recipe-preview__section h4{margin:0 0 6px;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.recipe-preview__gate{margin:0;padding:8px 10px;border-left:3px solid var(--amber);border-radius:4px;background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--text);font-size:.86rem}.recipe-preview__hint{margin:0 0 8px;color:var(--text);font-style:italic}.recipe-preview__note{margin:4px 0 0;display:flex;align-items:center;gap:4px;color:var(--text-3);font-size:.8rem}.recipe-progress{margin-top:8px;height:6px;border-radius:3px;background:var(--night-3);overflow:hidden}.recipe-progress__bar{display:block;height:100%;background:var(--cyan)}.recipe-ingredients{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.recipe-ingredient{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;padding:3px 6px;border-radius:6px;background:var(--night-3)}.recipe-ingredient__icon{width:28px;height:28px;display:grid;place-items:center;border-radius:4px;background:var(--night);color:var(--text-3);font-size:.8rem;overflow:hidden}.recipe-ingredient__icon img{width:100%;height:100%;object-fit:contain}.recipe-ingredient__name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem}.recipe-ingredient__count{font-family:var(--font-mono);font-size:.82rem;color:var(--emerald)}.recipe-ingredient__count--short{color:var(--crimson)}.recipe-new{margin-left:6px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 18%,transparent);color:var(--cyan);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em}.recipe-stats{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 12px}.recipe-stats div{display:flex;justify-content:space-between;gap:8px;font-size:.84rem}.recipe-stats dt{color:var(--text-2)}.recipe-stats dd{margin:0;font-family:var(--font-mono);color:var(--text)}.recipe-preview__actions{display:flex;flex-direction:column;gap:8px;margin-top:auto}.recipe-craft{min-height:44px}.recipe-preview__refusal{margin:0;padding:8px 10px;border:1px solid color-mix(in srgb,var(--crimson) 45%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--crimson) 10%,transparent);color:var(--crimson);font-size:.86rem}.recipe-last{--rarity-accent: var(--rule-strong);padding:8px 10px;border:1px solid var(--rule);border-top:2px solid var(--rarity-accent);border-radius:var(--r-2);background:var(--night-3)}.recipe-last__eyebrow{margin:0;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.recipe-last__name{margin:2px 0 0;font-weight:600;color:var(--rarity-accent)}.recipe-last__mw{color:var(--amber)}.crafting-toasts{position:absolute;top:8px;left:50%;z-index:2;display:flex;flex-direction:column;gap:6px;width:min(380px,calc(100% - 16px));transform:translate(-50%);pointer-events:none}.crafting-toast{--toast-accent: var(--cyan);pointer-events:auto;display:flex;gap:8px;justify-content:space-between;align-items:flex-start;padding:8px 10px;border:1px solid color-mix(in srgb,var(--toast-accent) 50%,transparent);border-left:3px solid var(--toast-accent);border-radius:var(--r-2);background:var(--night-2);box-shadow:var(--elev-modal);animation:crafting-toast-in var(--duration-base) var(--ease)}.crafting-toast p{margin:2px 0 0;color:var(--text-2);font-size:.82rem}.crafting-toast--tier{--toast-accent: var(--amber)}.crafting-toast--resonance{--toast-accent: var(--magenta)}.crafting-toast--recipe{--toast-accent: var(--emerald)}.crafting-toast .icon-button,.crafting-tip .icon-button{width:28px;min-height:28px;flex:none}@keyframes crafting-toast-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.crafting-toast{animation:none}}@media(max-width:1100px){.crafting-body{grid-template-columns:minmax(0,1fr) minmax(280px,360px);grid-template-rows:auto minmax(0,1fr)}.crafting-rail{grid-column:1 / -1;flex-direction:row;overflow-x:auto;overflow-y:hidden;padding:0 0 4px}.crafting-rail button{flex:none}}@media(max-width:720px){.crafting-sheet{overflow-y:auto}.crafting-sheet>.crafting-body{flex:none}.crafting-body{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto}.crafting-list,.recipe-preview{overflow:visible}}.crafting-view-toggle{min-height:36px;color:var(--text-2)}.crafting-view-toggle.is-active{border-color:var(--cyan);color:var(--cyan)}.workbench{flex:1 1 auto;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,380px);gap:12px}.workbench--empty{display:block;color:var(--text-2)}.workbench__picks,.workbench__side{min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.workbench__side{padding:12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.workbench h4{margin:6px 0 0;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.workbench__intro{margin:0;padding:8px 10px;border-left:3px solid var(--cyan);border-radius:4px;background:color-mix(in srgb,var(--cyan) 8%,transparent);color:var(--text)}.workbench__note{margin:0;color:var(--text-3);font-size:.8rem}.workbench__chips{display:flex;flex-wrap:wrap;gap:6px}.workbench-chip{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:999px;background:var(--night-2);color:var(--text);font:inherit;font-size:.86rem;cursor:pointer}.workbench-chip:hover:not(:disabled){background:var(--night-3)}.workbench-chip.is-active{border-color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,var(--night-2))}.workbench-chip.is-locked{color:var(--text-3)}.workbench-chip:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.workbench-chip__count{font-family:var(--font-mono);font-size:.74rem;color:var(--text-3)}.workbench__summary p{margin:0 0 6px;color:var(--text-2);font-size:.86rem}.workbench__summary b{display:inline-block;min-width:80px;color:var(--text-3);font-weight:600}.workbench-picked{display:inline-flex;align-items:center;gap:2px;margin:0 4px 4px 0;padding:1px 4px 1px 8px;border:1px solid var(--rule-strong);border-radius:999px;color:var(--text)}.workbench-picked button{display:inline-grid;place-items:center;width:18px;height:18px;padding:0;border:0;background:transparent;color:var(--text-3);cursor:pointer}.workbench-result{--result-accent: var(--text-3);padding:8px 10px;border:1px solid var(--rule);border-left:3px solid var(--result-accent);border-radius:var(--r-2);background:var(--night-3)}.workbench-result p{margin:0 0 4px;font-size:.86rem;color:var(--text-2)}.workbench-result__head{font-family:var(--font-display);font-weight:700;color:var(--result-accent)!important}.workbench-result__recipe{color:var(--text)!important;font-weight:600}.workbench-result--eureka{--result-accent: var(--emerald)}.workbench-result--glimpsed{--result-accent: var(--cyan)}.workbench-result--miss{--result-accent: var(--amber)}@media(max-width:720px){.workbench{grid-template-columns:minmax(0,1fr)}}.guild-arena{display:flex;flex-direction:column;gap:10px;min-width:0}.guild-arena__attempts{margin:0;color:var(--text-2);font-family:var(--font-mono);font-size:.78rem}.guild-arena__attempts--out{color:var(--crimson)}.guild-arena__pending{display:flex;flex-direction:column;gap:6px;color:var(--amber);font-size:.82rem}.guild-arena__progress{position:relative;display:block;height:3px;border-radius:2px;background:var(--night-3);overflow:hidden}.guild-arena__progress>span{position:absolute;inset:0 auto 0 0;width:35%;background:var(--amber);animation:guild-arena-progress 1.4s var(--ease) infinite}@keyframes guild-arena-progress{0%{transform:translate(-100%)}to{transform:translate(300%)}}.guild-arena__error{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:1px solid color-mix(in srgb,var(--crimson) 45%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--crimson) 12%,transparent);color:var(--crimson);font-size:.85rem}.guild-arena__error>span{flex:1;min-width:0;overflow-wrap:anywhere}.guild-arena__error .icon-button{flex:none;width:32px;min-height:32px;border-color:transparent;background:transparent;color:inherit}.guild-arena__views{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--rule-strong);border-radius:var(--r-2);overflow:hidden}.guild-arena__view{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:0;background:transparent;color:var(--text-2);font:inherit;font-size:.85rem;cursor:pointer;transition:color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.guild-arena__view+.guild-arena__view{border-left:1px solid var(--rule-strong)}.guild-arena__view:hover{color:var(--text)}.guild-arena__view:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}.guild-arena__view--on{background:color-mix(in srgb,var(--cyan) 14%,transparent);color:var(--cyan)}.guild-arena__register{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.guild-arena__register small{flex:1 1 160px;color:var(--text-3);font-size:.75rem}.guild-arena__list{gap:6px}.guild-arena-row{align-items:center}.guild-arena-row--own{border-color:color-mix(in srgb,var(--cyan) 55%,transparent);box-shadow:0 0 18px -10px color-mix(in srgb,var(--cyan) 60%,transparent)}.guild-arena-row--podium{border-color:color-mix(in srgb,var(--arena-medal, var(--amber)) 40%,transparent)}.guild-arena-row--rank1{--arena-medal: var(--amber)}.guild-arena-row--rank2{--arena-medal: var(--text-2)}.guild-arena-row--rank3{--arena-medal: color-mix(in srgb, var(--amber) 60%, var(--crimson))}.guild-arena-row__name{display:flex;align-items:center;gap:8px;min-width:0}.guild-arena-row__name strong{min-width:0}.guild-arena-row .guild-row__main small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-arena-row__side{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:6px;max-width:45%}.guild-arena-you{flex:none;padding:1px 5px;border-radius:4px;background:color-mix(in srgb,var(--cyan) 18%,transparent);color:var(--cyan);font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em}.guild-arena-avatar{flex:none;width:40px;height:40px;display:grid;place-items:center;border:1.5px solid var(--rule-strong);border-radius:10px;background:var(--night-3);box-shadow:inset 0 0 0 2px var(--night-2);color:var(--text-2);font-family:var(--font-display);font-size:1.05rem;font-weight:600}.guild-arena-avatar--winner{border-color:var(--amber);color:var(--amber)}.guild-arena-record{display:flex;flex-wrap:wrap;gap:2px 10px;color:var(--text-2);font-family:var(--font-mono);font-size:.72rem;font-variant-numeric:tabular-nums}.guild-arena-record__wins{color:var(--emerald)}.guild-arena-record__losses{color:var(--crimson)}.guild-arena-power{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);border-radius:999px;background:color-mix(in srgb,var(--amber) 12%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.75rem;font-variant-numeric:tabular-nums;white-space:nowrap}.guild-arena-status{color:var(--text-2);font-family:var(--font-mono);font-size:.68rem;text-align:right}.guild-arena-status--warn{color:var(--amber)}.guild-arena-challenge{min-height:32px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 12px;border:1px solid color-mix(in srgb,var(--amber) 50%,transparent);border-radius:4px;background:color-mix(in srgb,var(--amber) 10%,transparent);color:var(--amber);font:inherit;font-size:.8rem;font-weight:600;text-align:center;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.guild-arena-challenge:hover:not(:disabled){background:color-mix(in srgb,var(--amber) 20%,transparent)}.guild-arena-challenge:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.guild-arena-challenge:disabled{border-color:var(--rule);background:var(--night-3);color:var(--text-3);font-weight:400;opacity:1}.guild-arena-medal{flex:none;width:30px;height:30px;display:grid;place-items:center;color:var(--text-2);font-family:var(--font-mono);font-size:.75rem}.guild-arena-row--podium .guild-arena-medal{border:1px solid color-mix(in srgb,var(--arena-medal) 60%,transparent);border-radius:50%;background:linear-gradient(to bottom,color-mix(in srgb,var(--arena-medal) 28%,transparent),color-mix(in srgb,var(--arena-medal) 6%,transparent));color:var(--arena-medal)}.guild-arena-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:32px 16px;color:var(--text-2);text-align:center}.guild-arena-empty strong{color:var(--text);font-size:.95rem}.guild-arena-empty p{margin:0;max-width:36ch;font-size:.85rem}.guild-arena-result__headline{display:inline-flex;align-items:center;gap:8px;color:var(--amber)}.guild-arena-result{display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.guild-arena-result__sides{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:8px}.guild-arena-result__vs{align-self:center;color:var(--text-3);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.guild-arena-side{min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px}.guild-arena-side>small{color:var(--text-3);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.guild-arena-side strong{max-width:100%;display:inline-flex;align-items:center;gap:4px;overflow:hidden;color:var(--text-2);font-weight:500;text-overflow:ellipsis;white-space:nowrap}.guild-arena-side--won strong{color:var(--text);font-weight:700}.guild-arena-side--won strong svg{flex:none;color:var(--amber)}.guild-arena-side .guild-bar{width:100%}.guild-arena-side:not(.guild-arena-side--won) .guild-bar>span{background:var(--text-3)}.guild-arena-side__hp{color:var(--text-2);font-family:var(--font-mono);font-size:.72rem;font-variant-numeric:tabular-nums}.guild-arena-result__summary{color:var(--text-2);line-height:1.5}.guild-arena-result__length{color:var(--text-3);font-family:var(--font-mono);font-size:.75rem}.guild-arena__confirm{display:flex;flex-wrap:wrap;align-items:center;gap:10px}@media(max-width:400px){.guild-arena-avatar{width:34px;height:34px;font-size:.95rem}.guild-arena-row{gap:8px;padding:8px 10px}}@media(prefers-reduced-motion:reduce){.guild-arena__view,.guild-arena-challenge{transition:none}.guild-arena__progress>span{animation:none;width:100%;opacity:.6}}.guild-hall{display:flex;flex-direction:column;gap:12px}.guild-hall__eyebrow{color:var(--text-3);font-family:var(--font-mono);font-size:.68rem;letter-spacing:.14em;text-transform:uppercase}.guild-hall .guild-hall__title{margin:0;color:var(--text);font-size:.95rem;font-weight:600;letter-spacing:normal;text-transform:none}.guild-hall__meta{margin:0;color:var(--text-2);font-size:.8rem}.guild-hall__meta--quiet{margin-top:3px;color:var(--text-3)}.guild-hall__body{margin:0;color:var(--text-2);font-size:.88rem}.guild-hall__warn{margin:0;color:var(--crimson);font-size:.8rem}.guild-hall__split{display:flex;align-items:center;justify-content:space-between;gap:8px}.guild-hall__split .guild-hall__title{min-width:0}.guild-hall__wide{width:100%;min-height:42px}.guild-hall-head{flex-direction:row;align-items:flex-start;gap:16px}.guild-hall-head__icon{flex:none;color:var(--cyan)}.guild-hall-head__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}.guild-hall-head__level{margin:0;color:var(--cyan);font-family:var(--font-display);font-size:1.5rem;line-height:1.15}.guild-hall-head__bar{background:var(--night)}.guild-hall-head__bar>span{background:var(--cyan)}.guild-hall-reactor__strip{min-height:40px;display:flex;align-items:center;gap:6px;padding:0 12px;border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);border-radius:4px;background:linear-gradient(90deg,color-mix(in srgb,var(--amber) 28%,transparent),color-mix(in srgb,var(--amber) 5%,transparent));box-shadow:0 0 14px color-mix(in srgb,var(--amber) 22%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.guild-hall__tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guild-hall-tile{background:var(--night)}.guild-hall-tile span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-hall-tile__icon,.guild-hall-tile__gold{color:var(--amber)}.guild-hall__cost{flex:none;border-color:color-mix(in srgb,var(--amber) 55%,transparent);background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber);font-family:var(--font-mono);font-variant-numeric:tabular-nums}.guild-hall-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.guild-hall-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border:1px solid var(--rule);border-radius:999px;background:var(--night);color:var(--text);font-family:var(--font-mono);font-size:.75rem}.guild-hall__dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--dot, var(--text-2))}.guild-hall-item__icon{flex:none;color:var(--text-2)}.guild-hall-item__withdraw{flex:none}.guild-hall__actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.guild-hall__actions .guild-button{min-height:42px}.guild-hall__btn--cyan{border-color:color-mix(in srgb,var(--cyan) 70%,transparent);background:color-mix(in srgb,var(--cyan) 16%,transparent);color:var(--cyan)}.guild-hall__btn--cyan:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 26%,transparent)}.guild-hall-dialog__title{display:inline-flex;align-items:center;gap:8px}.guild-hall-dialog__title--deposit svg{color:var(--cyan)}.guild-hall-dialog__title--withdraw svg{color:var(--crimson)}.guild-hall-dialog__flow{color:var(--text-3);font-size:.8rem}.guild-hall-pick{list-style:none;margin:0;padding:0;max-height:34dvh;overflow-y:auto;display:flex;flex-direction:column;gap:8px}.guild-hall-pick__row{width:100%;min-height:46px;display:flex;align-items:center;gap:12px;padding:8px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.guild-hall-pick__row:hover{border-color:var(--rule-strong)}.guild-hall-pick__row:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.guild-hall-pick__row--on{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 7%,var(--night-2))}.guild-hall-pick__row .guild-hall__dot{width:11px;height:11px}.guild-hall-pick__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.guild-hall-pick__name--item{color:var(--rarity-accent, var(--text))}.guild-hall-pick__name small{color:var(--text-3);font-weight:400}.guild-hall-pick__qty{flex:none;color:var(--text-3);font-family:var(--font-mono);font-size:.75rem}.guild-hall-pick__row--on .guild-hall-pick__qty,.guild-hall-pick__check{color:var(--cyan)}.guild-hall-pick__check{flex:none}.guild-hall-qty{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.guild-hall-qty__label{color:var(--text-3);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase}.guild-hall-qty__controls{display:inline-flex;align-items:center;gap:6px}.guild-hall-qty__step{width:38px;height:38px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--night-2)}.guild-hall-qty__step:disabled{opacity:.4;cursor:not-allowed}.guild-hall-qty__input{width:64px;min-height:38px;padding:0 6px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--night);color:var(--text);font-family:var(--font-mono);font-size:1rem;text-align:center;-webkit-appearance:textfield;appearance:textfield;-moz-appearance:textfield}.guild-hall-qty__input::-webkit-outer-spin-button,.guild-hall-qty__input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.guild-hall-qty__input:focus-visible{outline:2px solid var(--cyan);outline-offset:0}.guild-hall-qty__max{min-height:38px;font-family:var(--font-mono);font-size:.72rem}.guild-hall-qty__max--deposit{border-color:color-mix(in srgb,var(--cyan) 40%,transparent);background:color-mix(in srgb,var(--cyan) 8%,transparent);color:var(--cyan)}.guild-hall-qty__max--withdraw{border-color:color-mix(in srgb,var(--crimson) 40%,transparent);background:color-mix(in srgb,var(--crimson) 8%,transparent);color:var(--crimson)}@media(max-width:400px){.guild-hall-head{gap:12px}.guild-hall-head__icon{width:32px;height:32px}}@media(prefers-reduced-motion:reduce){.guild-hall-pick__row{transition:none}}.gm{display:flex;flex-direction:column;gap:8px;min-width:0}.gm-head{display:flex;align-items:center;gap:8px;min-width:0;margin-bottom:8px}.gm-head__icon{flex:none;color:var(--cyan)}.gm-head__title{margin:0;flex:none;color:var(--cyan);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.gm-head__counts{flex:1;min-width:0;overflow:hidden;color:var(--text-3);font-size:.78rem;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.gm-head__online{color:var(--emerald)}.gm-invite-button{flex:none;min-height:36px;display:inline-flex;align-items:center;gap:6px;padding:0 12px;border:1px solid var(--cyan);border-radius:var(--r-2);background:var(--cyan);color:var(--night);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:filter var(--duration-fast) var(--ease)}.gm-invite-button:hover{filter:brightness(1.1)}.gm-online{color:var(--emerald)}.gm-offline{color:var(--text-3)}.gm-dot{flex:none;width:8px;height:8px;border-radius:50%;background:var(--text-3)}.gm-dot--online{background:var(--emerald);box-shadow:0 0 6px var(--emerald)}.gm-power{flex:none;display:inline-flex;align-items:center;gap:2px;color:var(--cyan);font-family:var(--font-mono);font-size:.75rem;font-weight:700;font-variant-numeric:tabular-nums}.gm-avatar-button{flex:none;display:inline-flex;padding:0;border:0;border-radius:10px;background:none;cursor:pointer}.gm-avatar-button:focus-visible,.gm-leader__main:focus-visible,.gm-row__main:focus-visible,.gm-rank__head:focus-visible,.gm-action:focus-visible,.gm-invite-button:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.gm-avatar{position:relative;flex:none;display:inline-grid;place-items:center;box-sizing:content-box;padding:2px;border:1px solid var(--rule);border-radius:24%}.gm-avatar img,.gm-avatar__initial{width:100%;height:100%;border-radius:20%;background:var(--night-3)}.gm-avatar img{display:block;object-fit:cover}.gm-avatar__initial{display:grid;place-items:center;color:var(--cyan);font-weight:600;line-height:1}.gm-avatar--leader .gm-avatar__initial{color:var(--amber)}.gm-avatar--online{border:2px solid var(--emerald);box-shadow:0 0 12px -3px color-mix(in srgb,var(--emerald) 40%,transparent);padding:1px}.gm-avatar__dot{position:absolute;right:-3px;bottom:-3px;width:28%;height:28%;min-width:8px;min-height:8px;border:2px solid var(--night);border-radius:50%;background:var(--text-3)}.gm-avatar--online .gm-avatar__dot{background:var(--emerald);box-shadow:0 0 6px var(--emerald)}.gm-leader{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--amber) 30%,transparent);border-radius:12px;background:color-mix(in srgb,var(--amber) 6%,transparent)}.gm-leader__crest{position:absolute;top:-12px;right:-10px;opacity:.12;pointer-events:none}.gm-leader__eyebrow{position:relative;margin:0;display:flex;align-items:center;gap:8px;color:var(--amber);font-family:var(--font-mono);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.gm-leader__body{position:relative;display:flex;align-items:center;gap:12px;min-width:0}.gm-leader__main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:2px 4px;border:0;border-radius:var(--r-2);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.gm-leader__line{display:flex;align-items:center;gap:8px;min-width:0}.gm-leader__name{flex:1;min-width:0;overflow:hidden;color:var(--text);font-family:var(--font-display);font-size:1.15rem;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.gm-leader__line .gm-power{font-size:.82rem}.gm-leader__stats{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px;font-family:var(--font-mono);font-size:.75rem}.gm-renown{display:inline-flex;align-items:center;gap:5px;color:var(--amber)}.gm-leader__presence{display:inline-flex;align-items:center;gap:4px}.gm-rank{--gm-accent: var(--text-2);display:flex;flex-direction:column;gap:6px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--gm-accent) 20%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--gm-accent) 5%,transparent)}.gm-rank__head{min-height:32px;display:flex;align-items:center;gap:8px;padding:2px;border:0;border-radius:4px;background:none;color:var(--text-2);font:inherit;cursor:pointer}.gm-rank__badge{flex:none;width:24px;height:24px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--gm-accent) 50%,transparent);border-radius:4px;background:linear-gradient(to bottom,color-mix(in srgb,var(--gm-accent) 18%,transparent),color-mix(in srgb,var(--gm-accent) 5%,transparent))}.gm-rank__title{flex:none;color:var(--gm-accent);font-size:.9rem;font-weight:600;letter-spacing:.03em}.gm-rank__rule{flex:1;min-width:12px;height:1px;background:linear-gradient(to right,var(--rule-strong),transparent)}.gm-rank__count{flex:none;font-family:var(--font-mono);font-size:.75rem;font-variant-numeric:tabular-nums}.gm-rank__chevron{flex:none;transition:transform var(--duration-fast) var(--ease)}.gm-rank__head[aria-expanded=true] .gm-rank__chevron{transform:rotate(90deg)}.gm-rows{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.gm-row{position:relative;min-height:52px;display:flex;align-items:center;gap:12px;padding-left:15px;overflow:hidden;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.gm-row__strip{position:absolute;top:0;bottom:0;left:0;width:3px;background:color-mix(in srgb,var(--gm-accent) 50%,transparent)}.gm-row__main{flex:1;min-width:0;align-self:stretch;display:flex;align-items:center;gap:8px;padding:6px 8px 6px 0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.gm-row__main:hover{background:color-mix(in srgb,var(--night-3) 60%,transparent)}.gm-row__text{flex:1;min-width:0;display:flex;flex-direction:column}.gm-row__text strong{overflow:hidden;color:var(--text);font-size:.9rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.gm-row__meta{display:flex;align-items:center;gap:8px;min-width:0;font-size:.75rem}.gm-row__contrib{min-width:0;display:inline-flex;align-items:center;gap:2px;overflow:hidden;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap}.gm-row__contrib svg{flex:none;color:color-mix(in srgb,var(--amber) 80%,transparent)}.gm-row__caret{flex:none;color:var(--text-3)}.gm-apps{display:flex;flex-direction:column;gap:8px;margin-bottom:8px;padding:12px;border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--amber) 6%,transparent)}.gm-apps__title{margin:0;display:flex;align-items:center;gap:8px;color:var(--amber);font-size:.85rem;font-weight:600}.gm-apps__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.gm-apps__row{display:flex;align-items:center;gap:4px}.gm-apps__text{flex:1;min-width:0;display:flex;flex-direction:column}.gm-apps__text strong{font-weight:500;overflow-wrap:anywhere}.gm-apps__text small{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;color:var(--text-3)}.gm-apps .icon-button{flex:none;border-color:transparent;background:transparent}.gm-apps__accept{color:var(--emerald)}.gm-apps__reject{color:var(--crimson)}.gm-actions__head{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid var(--rule)}.gm-actions__rank{display:inline-flex;align-items:center;gap:4px;color:var(--text-3);font-size:.78rem}.gm-actions__none{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0;color:var(--text-3);text-align:center}.gm-actions__list{display:flex;flex-direction:column;gap:2px}.gm-action{min-height:48px;display:flex;align-items:center;gap:14px;padding:8px 10px;border:0;border-radius:var(--r-2);background:none;font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.gm-action:hover{background:var(--night-2)}.gm-action--emerald{color:var(--emerald)}.gm-action--amber{color:var(--amber)}.gm-action--crimson{color:var(--crimson)}.gm-action--cyan{color:var(--cyan)}.gm-action__icon{flex:none;display:inline-flex}.gm-action__text{min-width:0;display:flex;flex-direction:column}.gm-action__label{font-size:.92rem}.gm-action__text small{color:var(--text-3);font-size:.75rem}.gm-search{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 10px;border:1px solid var(--rule);border-radius:4px;background:var(--night-2);color:var(--text-2)}.gm-search:focus-within{border-color:var(--cyan)}.gm-search input{flex:1;min-width:0;min-height:38px;padding:0;border:0;background:none;color:var(--text);font:inherit;font-size:.9rem;outline:none}.gm-candidates{list-style:none;margin:0;padding:0;max-height:min(48dvh,420px);overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column}.gm-candidate{display:flex;align-items:center;gap:12px;min-height:52px;padding:4px 0;border-bottom:1px solid var(--rule)}.gm-candidate__initial{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:var(--night-3);color:var(--text);font-size:.8rem}.gm-candidate__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.gm-candidate__line{display:flex;align-items:baseline;gap:8px;min-width:0}.gm-candidate__line strong{min-width:0;overflow:hidden;color:var(--text);font-size:.92rem;text-overflow:ellipsis;white-space:nowrap}.gm-candidate__line small{flex:none;color:var(--text-3);font-size:.75rem}.gm-candidate__meta{display:flex;align-items:center;gap:4px;min-width:0;font-size:.75rem}.gm-candidate__guild{margin-left:8px;overflow:hidden;color:var(--text-2);text-overflow:ellipsis;white-space:nowrap}.gm-candidate__invite{flex:none;border-color:transparent;background:transparent;color:var(--cyan)}.gm-invited{flex:none;display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border:1px solid color-mix(in srgb,var(--emerald) 40%,transparent);border-radius:999px;background:color-mix(in srgb,var(--emerald) 8%,transparent);color:var(--emerald);font-family:var(--font-mono);font-size:.65rem;letter-spacing:.05em}.gm-candidates__more{display:flex;justify-content:center;padding:10px 0}.gm-spin{animation:gm-spin .9s linear infinite;color:var(--cyan)}@keyframes gm-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.gm-rank__chevron,.gm-action,.gm-invite-button{transition:none}.gm-spin{animation:none}}.guild-ov{flex:1 1 auto;min-height:0;overflow-y:auto;scrollbar-width:thin;display:flex;flex-direction:column;gap:12px;padding-bottom:4px}.guild-ov-relic{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid transparent;border-radius:calc(var(--r-2) + 2px);background:linear-gradient(var(--night-2),var(--night-2)) padding-box,linear-gradient(135deg,color-mix(in srgb,var(--cyan) 32%,transparent),var(--rule-strong),color-mix(in srgb,var(--magenta) 24%,transparent)) border-box}.guild-ov-banner__head{display:flex;align-items:center;gap:12px;min-width:0}.guild-ov-banner__crest{position:relative;flex:none;width:58px;height:62px}.guild-ov-banner__level{position:absolute;right:-4px;bottom:-2px;min-width:22px;height:22px;display:grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--amber);box-shadow:0 0 8px -2px color-mix(in srgb,var(--amber) 60%,transparent);color:var(--void);font-family:var(--font-mono);font-size:.7rem;font-weight:700}.guild-ov-banner__identity{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.guild-ov-banner__identity h3{margin:0;color:var(--text);font-family:var(--font-display);font-size:1.25rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-ov-banner__identity span{color:var(--text-3);font-size:.8rem;white-space:pre-wrap}.guild-ov-bar{display:flex;flex-direction:column;gap:5px}.guild-ov-bar__labels{display:flex;justify-content:space-between;gap:8px;color:var(--text-3);font-family:var(--font-mono);font-size:.66rem;font-variant-numeric:tabular-nums}.guild-ov-bar__labels span:first-child{letter-spacing:.08em;text-transform:uppercase}.guild-ov-bar__track{border-radius:999px;background:var(--night-3)}.guild-ov-bar__track--emerald>span{background:var(--emerald)}.guild-ov-power{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--cyan) 35%,transparent);border-radius:12px;background:linear-gradient(90deg,color-mix(in srgb,var(--cyan) 12%,var(--night-2)),var(--night-2));color:var(--cyan)}.guild-ov-power>svg{flex:none}.guild-ov-power__body{min-width:0;display:flex;flex-direction:column;gap:2px}.guild-ov-power__eyebrow{color:var(--cyan-deep);font-family:var(--font-mono);font-size:.66rem;letter-spacing:.14em;text-transform:uppercase}.guild-ov-power__total{font-family:var(--font-mono);font-size:clamp(1.4rem,7vw,1.9rem);font-weight:700;font-variant-numeric:tabular-nums;line-height:1;overflow-wrap:anywhere}.guild-ov__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guild-ov-stat{min-width:0;display:flex;flex-direction:column;gap:4px;padding:12px;border:1px solid var(--rule);border-radius:var(--r-2);background:linear-gradient(180deg,var(--night-2),var(--night))}.guild-ov-stat__icon{display:inline-flex;margin-bottom:4px}.guild-ov-stat__icon--amber{color:var(--amber)}.guild-ov-stat__icon--cyan{color:var(--cyan)}.guild-ov-stat b{color:var(--text);font-family:var(--font-display);font-size:1.35rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.guild-ov-stat__label{color:var(--text-3);font-family:var(--font-mono);font-size:.62rem;letter-spacing:.04em;text-transform:uppercase}.guild-ov-proclamation{gap:16px}.guild-ov-proclamation p{margin:0;overflow-wrap:anywhere;white-space:pre-line}.guild-ov-proclamation__announcement{display:flex;flex-direction:column;gap:8px;padding-left:12px;border-left:2px solid var(--amber)}.guild-ov-proclamation__announcement h4{display:flex;align-items:center;gap:6px;margin:0;color:var(--amber);font-family:var(--font-mono);font-size:.66rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.guild-ov-proclamation__announcement p{color:var(--text)}.guild-ov-proclamation__motto{color:var(--text-2);font-family:var(--font-display);font-size:1rem;font-style:italic;text-align:center}.guild-ov-proclamation__description{color:var(--text-2);font-size:.88rem;line-height:1.55}.guild-ov-actions{display:flex;flex-wrap:wrap;gap:8px;padding-top:4px}.guild-ov-action{--tone: var(--amber);min-height:42px;display:inline-flex;align-items:center;gap:8px;padding:0 16px;border:1px solid color-mix(in srgb,var(--tone) 40%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--tone) 6%,transparent);color:var(--tone);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;transition:background var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.guild-ov-action:hover{background:color-mix(in srgb,var(--tone) 14%,transparent)}.guild-ov-action:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.guild-ov-action--crimson{--tone: var(--crimson)}.guild-ov-action--filled{--tone: var(--cyan);border-color:var(--cyan);background:var(--cyan);box-shadow:0 0 16px -5px color-mix(in srgb,var(--cyan) 60%,transparent);color:var(--void)}.guild-ov-action--filled:hover{background:color-mix(in srgb,var(--cyan) 85%,var(--text))}.guild-ov-action--filled:focus-visible{outline-color:var(--amber)}.guild-set{gap:16px}.guild-set__head{display:flex;align-items:center;gap:10px}.guild-set__head h3{margin:0;font-family:var(--font-display);font-size:1.05rem}.guild-set-hero{--crest-accent: var(--amber);display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}.guild-set-hero__crest{filter:drop-shadow(0 0 14px color-mix(in srgb,var(--crest-accent) 45%,transparent))}.guild-set-hero__name{margin:4px 0 0;max-width:100%;color:var(--text);font-family:var(--font-display);font-size:1.4rem;letter-spacing:.02em;overflow-wrap:anywhere}.guild-set-hero__meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px;color:var(--text-3);font-size:.8rem}.guild-set-hero__tag{padding:2px 8px;border:1px solid color-mix(in srgb,var(--cyan) 40%,transparent);border-radius:4px;background:color-mix(in srgb,var(--cyan) 10%,transparent);color:var(--cyan);font-family:var(--font-mono);font-size:.7rem}.guild-set-hero__xp{width:min(240px,100%);display:flex;flex-direction:column;gap:5px;margin-top:4px}.guild-set-card{gap:12px;padding:12px 12px 16px}.guild-set-card__head{display:flex;align-items:center;gap:8px;min-width:0}.guild-set-card__rune{flex:none;width:22px;height:22px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--cyan) 40%,transparent);border-radius:4px;color:var(--cyan)}.guild-set-card__head h4{flex:1;min-width:0;margin:0;color:var(--cyan);font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.guild-set-card__lock{flex:none;padding:3px 8px;border:1px solid color-mix(in srgb,var(--amber) 30%,transparent);border-radius:999px;background:color-mix(in srgb,var(--amber) 8%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase}.guild-set-field{display:flex;flex-direction:column;gap:8px}.guild-set-field__label{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--text-2);font-size:.85rem}.guild-set-field__edited{display:inline-flex;align-items:center;gap:5px;color:var(--cyan);font-family:var(--font-mono);font-size:.66rem}.guild-set-field__edited:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--cyan)}.guild-set-field__input{width:100%;min-height:40px;padding:10px 12px;border:1px solid var(--rule);border-radius:4px;background:var(--night-3);color:var(--text);font:inherit;font-size:.92rem;line-height:1.4}textarea.guild-set-field__input{resize:vertical}.guild-set-field__input:focus-visible{outline:none;border-color:var(--cyan);box-shadow:0 0 0 1px var(--cyan)}.guild-set-field__input--edited{border-color:var(--cyan)}.guild-set-field__input:read-only{color:var(--text-3);cursor:default}.guild-set-field__hint{display:flex;align-items:flex-start;gap:6px;margin:0;color:var(--text-3);font-size:.75rem;line-height:1.4}.guild-set-field__hint svg{flex:none;margin-top:2px}.guild-set__readonly{padding:10px 12px;border:1px solid var(--rule);border-radius:4px;background:var(--night-3);color:var(--text-3)}.guild-set__blurb{margin:0;color:var(--text-3);font-size:.85rem}.guild-set-modes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.guild-set-mode{min-width:0;min-height:64px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px 4px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-3);color:var(--text-2);font:inherit;font-size:.75rem;font-weight:600;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.guild-set-mode span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-set-mode:hover{border-color:var(--rule-strong)}.guild-set-mode--on{border-color:color-mix(in srgb,var(--cyan) 70%,transparent);background:color-mix(in srgb,var(--cyan) 12%,transparent);box-shadow:0 0 18px -6px color-mix(in srgb,var(--cyan) 50%,transparent);color:var(--cyan)}.guild-set-mode:focus-visible,.guild-set-crest:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.guild-set-crests{display:flex;flex-direction:column;align-items:center;gap:10px}.guild-set-crests__grid{width:100%;max-width:340px;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.guild-set-crest{--crest-accent: var(--cyan);aspect-ratio:1;min-width:0;display:grid;place-items:center;padding:4px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-3);cursor:pointer;opacity:.6;transition:opacity var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.guild-set-crest .guild-crest{width:100%;max-width:40px;height:auto}.guild-set-crest:hover{opacity:.9}.guild-set-crest--on{opacity:1;border-color:var(--crest-accent);box-shadow:0 0 14px -4px var(--crest-accent)}.guild-set-crests__name{margin:0;font-family:var(--font-mono);font-size:.78rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.guild-set__savebar{position:sticky;bottom:0;z-index:1;display:flex;flex-direction:column;gap:8px;margin-top:auto;padding:12px 0 4px;border-top:1px solid var(--rule);background:var(--night)}.guild-set__savebar-status{min-height:32px;display:flex;align-items:center;gap:8px;min-width:0}.guild-set__unsaved{flex:none;padding:2px 8px;border:1px solid color-mix(in srgb,var(--amber) 40%,transparent);border-radius:999px;background:color-mix(in srgb,var(--amber) 12%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.66rem}.guild-set__changed-labels{flex:1;min-width:0;color:var(--text-3);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.guild-set__discard{flex:none;min-height:32px;color:var(--text-3);font-size:.78rem}.guild-set__save{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:var(--r-2);background:var(--cyan);color:var(--void);font:inherit;font-weight:700;letter-spacing:.02em;cursor:pointer}.guild-set__save:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 85%,var(--text))}.guild-set__save:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.guild-set__save:disabled{opacity:1;background:var(--night-3);color:var(--text-3)}.guild-set__change-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px}.guild-set__change--rename{color:var(--amber)}@media(prefers-reduced-motion:reduce){.guild-ov-action,.guild-set-mode,.guild-set-crest{transition:none}}.gf-directory,.gf-public,.gf-public__body{display:flex;flex-direction:column;gap:14px;min-width:0}.gf-relic{border:1px solid transparent;border-radius:calc(var(--r-2) + 2px);background:linear-gradient(var(--night),var(--night)) padding-box,linear-gradient(135deg,color-mix(in srgb,var(--cyan) 35%,transparent),var(--rule-strong),color-mix(in srgb,var(--magenta) 26%,transparent)) border-box}.gf-relic--subtle{background:linear-gradient(var(--night),var(--night)) padding-box,linear-gradient(135deg,color-mix(in srgb,var(--cyan) 22%,transparent),var(--rule-strong),color-mix(in srgb,var(--magenta) 16%,transparent)) border-box}.gf-eyebrow{display:flex;align-items:center;gap:8px;margin:0;color:var(--cyan);font-family:var(--font-mono);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase}.gf-invites{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-radius:var(--r-2);background:var(--night)}.gf-invites h4{display:flex;align-items:center;gap:8px;margin:0;color:var(--amber);font-size:.95rem;font-weight:600}.gf-invites__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.gf-invite{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.gf-invite__main{flex:1 1 140px;min-width:0;display:flex;flex-direction:column;gap:2px}.gf-invite__main strong{font-size:.9rem;overflow-wrap:anywhere}.gf-invite__main small{color:var(--text-3);font-size:.78rem}.gf-invite__actions{display:flex;gap:8px;margin-left:auto}.gf-decline{min-height:34px;color:var(--text-2);font-size:.85rem}.gf-cooldown{display:flex;align-items:center;gap:8px;margin:0;padding:10px 12px;border:1px solid color-mix(in srgb,var(--amber) 40%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--amber) 12%,transparent);color:var(--amber);font-size:.85rem;line-height:1.4}.gf-cooldown svg{flex:none}.gf-forge{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px 16px 16px;text-align:center}.gf-forge h3{margin:4px 0 0;color:var(--text);font-family:var(--font-display);font-size:1.2rem;font-weight:600}.gf-forge p{margin:0 0 8px;max-width:42ch;color:var(--text-3);font-size:.88rem;line-height:1.5}.gf-glow{width:56px;height:56px;flex:none;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--cyan) 45%,transparent);border-radius:50%;background:color-mix(in srgb,var(--cyan) 8%,transparent);box-shadow:0 0 22px -4px color-mix(in srgb,var(--cyan) 45%,transparent);color:var(--cyan)}.gf-glow--small{width:50px;height:50px;align-self:center}.gf-cta{width:100%;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border:1px solid color-mix(in srgb,var(--cyan) 70%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--cyan) 18%,transparent);color:var(--cyan);font:inherit;font-size:.92rem;font-weight:700;cursor:pointer;transition:background var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}.gf-cta:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 28%,transparent);box-shadow:0 0 18px -6px color-mix(in srgb,var(--cyan) 60%,transparent)}.gf-cta--inline{width:auto;min-height:40px}.gf-cta:focus-visible,.gf-action:focus-visible,.gf-row__identity--link:focus-visible,.gf-leader:focus-visible,.gf-member:focus-visible,.gf-rank__head:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.gf-browse{display:flex;flex-direction:column;gap:10px;min-width:0}.gf-search{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:var(--text-3)}.gf-search:focus-within{border-color:var(--cyan)}.gf-search input{flex:1;min-width:0;min-height:38px;border:0;background:none;color:var(--text);font:inherit;font-size:.9rem;outline:none}.gf-search input::placeholder{color:var(--text-3)}.gf-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.gf-row{display:flex;align-items:center;gap:8px;padding:10px 12px;min-width:0}.gf-row__identity{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left}.gf-row__identity--link{margin:-4px;padding:4px;border-radius:var(--r-2);cursor:pointer;transition:background var(--duration-fast) var(--ease)}.gf-row__identity--link:hover{background:var(--night-2)}.gf-row__identity--link:hover .gf-row__name strong{color:var(--cyan)}.gf-row__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.gf-row__name{display:flex;align-items:baseline;gap:8px;min-width:0}.gf-row__name strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.92rem;transition:color var(--duration-fast) var(--ease)}.gf-tag{flex:none;color:var(--cyan);font-family:var(--font-mono);font-size:.78rem}.gf-row__main small{color:var(--text-3);font-size:.76rem}.gf-row__motto{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-3);font-size:.8rem}.gf-crest-medal{position:relative;flex:none;display:block;padding:0 4px 4px 0}.gf-medal{position:absolute;right:0;bottom:0;min-width:20px;height:20px;display:grid;place-items:center;padding:0 4px;border:1px solid var(--amber);border-radius:999px;background:color-mix(in srgb,var(--amber) 22%,var(--night));box-shadow:0 0 8px -2px color-mix(in srgb,var(--amber) 50%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.66rem;font-weight:700;font-variant-numeric:tabular-nums}.gf-crest-medal--large .gf-medal{min-width:22px;height:22px;font-size:.72rem}.gf-action{flex:none;min-height:34px;max-width:40%;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;border:1px solid var(--rule-strong);border-radius:calc(var(--r-2) / 2);background:var(--night-2);color:var(--text-3);font:inherit;font-size:.8rem;font-weight:600;line-height:1.15;text-align:center;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.gf-action:disabled{opacity:1;color:var(--text-3)}.gf-action--cyan{border-color:color-mix(in srgb,var(--cyan) 70%,transparent);background:color-mix(in srgb,var(--cyan) 18%,transparent);color:var(--cyan)}.gf-action--cyan:hover{background:color-mix(in srgb,var(--cyan) 28%,transparent)}.gf-action--amber{border-color:color-mix(in srgb,var(--amber) 70%,transparent);background:color-mix(in srgb,var(--amber) 18%,transparent);color:var(--amber)}.gf-action--amber:hover{background:color-mix(in srgb,var(--amber) 28%,transparent)}.gf-none{display:flex;flex-direction:column;align-items:center;gap:10px;padding:24px 8px 8px;color:var(--text-3);text-align:center}.gf-none p{margin:0;font-size:.88rem;white-space:pre-line}.gf-create{display:flex;flex-direction:column;gap:12px}.gf-create__blurb{text-align:center;color:var(--text-3)}.gf-create__actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:4px}.gf-toolbar{display:flex;align-items:center;gap:8px;min-height:40px}.gf-toolbar h3{flex:1;min-width:0;margin:0;font-family:var(--font-display);font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gf-public__state{display:flex;flex-direction:column;align-items:center;gap:12px;padding:40px 16px;color:var(--text-2);text-align:center}.gf-public__state p{margin:0}.gf-spinner{width:28px;height:28px;border:3px solid var(--rule-strong);border-top-color:var(--cyan);border-radius:50%;animation:gf-spin .9s linear infinite}@keyframes gf-spin{to{transform:rotate(360deg)}}.gf-world-note{display:flex;align-items:center;gap:6px;margin:0;color:var(--amber);font-size:.78rem}.gf-world-note svg{flex:none}.gf-banner{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--rule);border-radius:calc(var(--r-2) + 4px);background:linear-gradient(180deg,var(--night),var(--void))}.gf-banner__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.gf-banner__text h4{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-family:var(--font-display);font-size:1.2rem;font-weight:600}.gf-banner__text span{color:var(--text-3);font-size:.78rem;white-space:pre-wrap}.gf-power{display:flex;align-items:center;gap:12px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--cyan) 35%,transparent);border-radius:calc(var(--r-2) + 4px);background:linear-gradient(90deg,color-mix(in srgb,var(--cyan) 9%,var(--night)),var(--night));color:var(--cyan)}.gf-power svg{flex:none}.gf-power__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:color-mix(in srgb,var(--cyan) 70%,var(--text-3));font-family:var(--font-mono);font-size:.7rem;letter-spacing:.14em;text-transform:uppercase}.gf-power b{font-family:var(--font-mono);font-size:1.35rem;font-variant-numeric:tabular-nums}.gf-about{display:flex;flex-direction:column;gap:12px;padding:16px;border:1px solid var(--rule);border-radius:calc(var(--r-2) + 4px);background:var(--night)}.gf-about p{margin:0;overflow-wrap:anywhere}.gf-about__motto{color:var(--text-2);font-family:var(--font-display);font-size:1rem;font-style:italic;text-align:center}.gf-about__description{color:var(--text-2);font-size:.88rem;line-height:1.55;white-space:pre-line}.gf-roster-head{flex-wrap:wrap;margin-top:4px}.gf-roster-head small{color:var(--text-3);font-family:inherit;letter-spacing:0;text-transform:none}.gf-roster-head em{color:var(--emerald);font-style:normal}.gf-roster{display:flex;flex-direction:column;gap:8px}.gf-leader{position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px;width:100%;padding:10px 12px;border:1px solid color-mix(in srgb,var(--amber) 30%,transparent);border-radius:calc(var(--r-2) + 4px);background:color-mix(in srgb,var(--amber) 6%,var(--night));color:inherit;font:inherit;text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease)}.gf-leader:hover{border-color:color-mix(in srgb,var(--amber) 55%,transparent)}.gf-leader__watermark{position:absolute;top:-12px;right:-10px;opacity:.12;pointer-events:none}.gf-leader__eyebrow{color:var(--amber)}.gf-leader__body{display:flex;align-items:center;gap:12px;min-width:0}.gf-leader__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.gf-leader__name{display:flex;align-items:center;gap:8px;min-width:0}.gf-leader__name strong{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-family:var(--font-display);font-size:1.15rem;font-weight:600}.gf-leader__stats{display:flex;flex-wrap:wrap;align-items:center;gap:4px 16px}.gf-renown{display:inline-flex;align-items:center;gap:5px;color:var(--amber);font-family:var(--font-mono);font-size:.76rem}.gf-renown--small{gap:2px;color:var(--text-3);font-size:.72rem}.gf-renown--small svg{color:color-mix(in srgb,var(--amber) 80%,transparent)}.gf-presence{display:inline-flex;align-items:center;gap:5px;color:var(--text-3);font-family:var(--font-mono);font-size:.72rem}.gf-presence i{width:8px;height:8px;border-radius:50%;background:var(--text-3)}.gf-presence--online{color:var(--emerald)}.gf-presence--online i{background:var(--emerald);box-shadow:0 0 6px var(--emerald)}.gf-power-stat{flex:none;display:inline-flex;align-items:center;gap:2px;color:var(--cyan);font-family:var(--font-mono);font-size:.76rem;font-weight:700;font-variant-numeric:tabular-nums}.gf-rank{padding:6px 8px;border:1px solid color-mix(in srgb,var(--rank) 20%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--rank) 5%,transparent)}.gf-rank__head{width:100%;min-height:32px;display:flex;align-items:center;gap:8px;padding:2px;border:0;border-radius:calc(var(--r-2) / 2);background:none;color:inherit;font:inherit;cursor:pointer}.gf-rank__badge{width:24px;height:24px;flex:none;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--rank) 50%,transparent);border-radius:calc(var(--r-2) / 2);background:linear-gradient(180deg,color-mix(in srgb,var(--rank) 18%,transparent),color-mix(in srgb,var(--rank) 5%,transparent))}.gf-rank__title{color:var(--rank);font-size:.9rem;font-weight:600;letter-spacing:.02em}.gf-rank__rule{flex:1;height:1px;background:linear-gradient(90deg,var(--rule-strong),transparent)}.gf-rank__count{color:var(--text-2);font-family:var(--font-mono);font-size:.76rem}.gf-rank__chevron{flex:none;color:var(--text-2);transition:transform var(--duration-fast) var(--ease)}.gf-rank__head[aria-expanded=true] .gf-rank__chevron{transform:rotate(90deg)}.gf-rank__list{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:4px}.gf-member{position:relative;width:100%;min-height:52px;display:flex;align-items:center;gap:12px;padding:6px 8px 6px 15px;overflow:hidden;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background var(--duration-fast) var(--ease)}.gf-member:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:color-mix(in srgb,var(--rank) 50%,transparent)}.gf-member:hover{background:var(--night-3)}.gf-member__main{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.gf-member__main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text);font-size:.9rem}.gf-member__meta{display:flex;align-items:center;gap:8px;min-width:0}.gf-member__caret{flex:none;color:var(--text-3)}.gf-avatar{position:relative;flex:none;display:grid;place-items:center;border:1px solid var(--rule);border-radius:24%;background:var(--night-3);color:var(--cyan);font-weight:700;font-size:.85rem}.gf-avatar img{width:100%;height:100%;object-fit:cover;border-radius:inherit}.gf-avatar--online{border:2px solid var(--emerald);box-shadow:0 0 12px -3px color-mix(in srgb,var(--emerald) 40%,transparent)}.gf-avatar__dot{position:absolute;right:-3px;bottom:-3px;width:28%;height:28%;min-width:8px;min-height:8px;border:2px solid var(--night);border-radius:50%;background:var(--text-3)}.gf-avatar--online .gf-avatar__dot{background:var(--emerald)}@media(max-width:400px){.gf-row{padding:10px}.gf-row__identity{gap:10px}}@media(prefers-reduced-motion:reduce){.gf-cta,.gf-action,.gf-row__identity--link,.gf-row__name strong,.gf-leader,.gf-member,.gf-rank__chevron{transition:none}.gf-spinner{animation-duration:2.4s}}.mail-sheet{display:flex;flex-direction:column;gap:12px;min-height:0;max-width:720px;width:100%;margin:0 auto}.mail-toolbar{display:flex;align-items:center;gap:8px;min-height:40px}.mail-toolbar h3{margin:0;flex:1;min-width:0;font-family:var(--font-display);font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-toolbar__actions{display:flex;gap:8px}.mail-readall{color:var(--cyan)}.mail-readall:disabled{color:var(--text-3)}.mail-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:60dvh;overflow-y:auto;scrollbar-width:thin}.mail-row{--accent: var(--cyan);width:100%;min-height:52px;display:flex;align-items:center;gap:12px;padding:6px 12px 6px 0;border:1px solid var(--rule);border-left:3px solid var(--accent);border-radius:var(--r-2);background:var(--night-2);color:var(--text);text-align:left;cursor:pointer}.mail-row--amber{--accent: var(--amber)}.mail-row:hover,.mail-row:focus-visible{background:var(--night-3)}.mail-row.is-read{border-left-color:color-mix(in srgb,var(--accent) 35%,transparent)}.mail-row__icon{flex:none;width:32px;height:32px;margin-left:12px;display:grid;place-items:center;border-radius:4px;color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,transparent)}.mail-row__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.mail-row__title,.mail-row__subtitle>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mail-row__title{line-height:1.25}.mail-row.is-unread .mail-row__title{font-weight:600}.mail-row.is-read .mail-row__title{color:var(--text-2)}.mail-row__subtitle{display:flex;align-items:center;gap:6px;min-width:0;color:var(--text-2);font-size:.82rem}.mail-row__tag{flex:none;padding:0 4px;border:1px solid color-mix(in srgb,var(--amber) 60%,transparent);border-radius:4px;background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber);font-family:var(--font-mono);font-size:.6rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.mail-row__end{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:4px;color:var(--text-3);font-family:var(--font-mono);font-size:.72rem}.mail-row__count{padding:0 7px;border:1px solid color-mix(in srgb,var(--accent) 60%,transparent);border-radius:999px;background:color-mix(in srgb,var(--accent) 18%,transparent);color:var(--accent);font-size:.7rem}.mail-row__dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}.mail-meta{color:var(--text-3);font-family:var(--font-mono);font-size:.75rem}.mail-eyebrow{margin:0 0 8px;color:var(--text-2);font-family:var(--font-mono);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.mail-detail__body{display:flex;flex-direction:column;gap:14px;max-height:64dvh;overflow-y:auto}.mail-detail__text{margin:0;white-space:pre-wrap;line-height:1.55}.mail-reward{display:flex;align-items:center;gap:10px;margin-bottom:8px;padding:8px 12px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2)}.mail-reward>span{flex:1;min-width:0}.mail-reward>small{font-family:var(--font-mono)}.mail-reward--gift{border-color:var(--amber);color:var(--amber)}.mail-reward--gift>span{color:var(--text)}.mail-item-icon{width:24px;height:24px;object-fit:contain}.mail-claim{min-height:48px;width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid color-mix(in srgb,var(--emerald) 50%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--emerald) 16%,transparent);color:var(--emerald);font-weight:700;cursor:pointer}.mail-claim--done{border-color:var(--rule);background:var(--night-2);color:var(--text-2)}.mail-battle{display:flex;flex-direction:column;gap:8px}.mail-battle p{margin:0}.mail-battle__banner{font-family:var(--font-display);font-size:1.2rem;color:var(--amber)}.mail-battle__banner--won{color:var(--emerald)}.mail-battle__banner--lost{color:var(--crimson)}.mail-battle__sides{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:8px}.mail-battle__sides>div{display:flex;flex-direction:column;min-width:0}.mail-battle__sides>div:last-child{align-items:flex-end;text-align:right}.mail-battle__sides b{font-family:var(--font-mono)}.mail-battle__sides small{color:var(--text-3);padding-top:2px}.mail-event{display:flex;gap:12px;padding:12px;border:1px solid color-mix(in srgb,var(--amber) 45%,transparent);border-radius:var(--r-2);background:var(--night-2);color:var(--amber)}.mail-event>div{display:flex;flex-direction:column;gap:2px;min-width:0;color:var(--text)}.mail-event span,.mail-event small{color:var(--text-2);font-size:.82rem}.mail-event b{color:var(--amber);font-family:var(--font-mono)}.mail-thread__messages{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px;max-height:52dvh;overflow-y:auto}.mail-thread__messages p{margin:2px 0 0;white-space:pre-wrap}.mail-thread__from{color:var(--text-3);font-family:var(--font-mono);font-size:.75rem}.mail-compose{display:flex;gap:8px}.mail-compose input{flex:1;min-width:0;height:40px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text)}.mail-compose input:focus{outline:none;border-color:var(--cyan)}.mail-info__ok{align-self:flex-end;width:auto}.mail-gifts{display:flex;flex-direction:column;gap:12px;text-align:center}.mail-gifts__emblem{width:64px;height:64px;margin:0 auto;display:grid;place-items:center;border-radius:50%;border:1px solid color-mix(in srgb,var(--amber) 60%,transparent);background:color-mix(in srgb,var(--amber) 14%,var(--night));color:var(--amber);box-shadow:0 0 24px color-mix(in srgb,var(--amber) 35%,transparent);animation:mail-gift-pop .6s cubic-bezier(.34,1.56,.64,1)}.mail-gifts__emblem--failed{border-color:color-mix(in srgb,var(--crimson) 60%,transparent);background:color-mix(in srgb,var(--crimson) 14%,var(--night));color:var(--crimson);box-shadow:0 0 24px color-mix(in srgb,var(--crimson) 35%,transparent)}.mail-gifts__subject{margin:0;color:var(--text-2)}.mail-gifts__rows{display:flex;flex-direction:column;text-align:left}.mail-gifts__rows .mail-reward--gift{color:var(--amber)}.mail-gifts__rows .mail-reward--crowns{border-color:var(--magenta);color:var(--magenta)}.mail-gifts__rows .mail-reward--level{border-color:var(--emerald);color:var(--emerald)}.mail-gifts__rows .mail-reward>span{color:var(--text)}.mail-gifts__failed{display:flex;gap:8px;padding:12px;border:1px solid color-mix(in srgb,var(--crimson) 40%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--crimson) 8%,transparent);color:var(--crimson);text-align:left}.mail-gifts__failed>div{display:flex;flex-direction:column;gap:4px;color:var(--text)}.mail-gifts__failed small,.mail-gifts__missing{color:var(--text-2);font-size:.82rem}@keyframes mail-gift-pop{0%{transform:scale(.6)}to{transform:scale(1)}}@media(prefers-reduced-motion:reduce){.mail-gifts__emblem{animation:none}}.shop{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;min-height:0}.shop-col{display:flex;flex-direction:column;gap:10px;min-height:0}.shop-col__head{display:flex;align-items:center;justify-content:space-between;gap:12px}.shop-col__head h3{margin:0;font-family:var(--font-display);font-size:.95rem}.shop-gold{display:inline-flex;align-items:center;gap:6px;color:var(--amber);font-family:var(--font-mono);font-size:.85rem}.shop-search{height:32px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:4px;background:var(--night-2);color:var(--text)}.shop-search:focus{outline:none;border-color:var(--cyan)}.shop-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px;max-height:56dvh;overflow-y:auto;scrollbar-width:thin}.shop-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--rule);border-radius:6px;background:var(--night-2)}.shop-row__icon{width:30px;height:30px;flex:0 0 30px;border-radius:4px;object-fit:contain;background:var(--night-3)}.shop-row__text{flex:1;min-width:0;display:flex;flex-direction:column}.shop-row__name{font-weight:600;font-size:.86rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-row__meta{font-size:.7rem;color:var(--text-3)}.shop-row__look,.shop-row__buy{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:3px 10px;border-radius:4px;border:1px solid var(--rule-strong);background:transparent;color:var(--text-2);font-size:.74rem;cursor:pointer}.shop-row__buy{border-color:color-mix(in srgb,var(--amber) 60%,transparent);color:var(--amber);font-family:var(--font-mono)}.shop-row__buy:disabled{opacity:.4;cursor:not-allowed}.shop-empty{margin:0;color:var(--text-3);font-size:.82rem}@media(max-width:860px){.shop{grid-template-columns:1fr}}.quests{min-height:0;height:100%;display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);gap:16px}.quests-list,.quests-detail{min-height:0;display:flex;flex-direction:column;gap:10px}.quests-list ul{list-style:none;margin:0;padding:0 4px 0 0;display:flex;flex-direction:column;gap:6px;overflow-y:auto;scrollbar-width:thin}.quests-tabs{display:flex;gap:4px;padding:3px;border:1px solid var(--rule);border-radius:6px;background:var(--night)}.quests-tabs button{flex:1;min-height:32px;border:none;border-radius:4px;background:transparent;color:var(--text-2);font-family:var(--font-display);font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.quests-tabs button span{margin-left:4px;color:var(--text-3);font-family:var(--font-mono)}.quests-tabs button.is-on{background:color-mix(in srgb,var(--cyan) 14%,transparent);color:var(--cyan)}.quests-row{width:100%;display:flex;flex-direction:column;gap:5px;padding:10px 12px;border:1px solid var(--rule);border-left:3px solid color-mix(in srgb,var(--amber) 55%,transparent);border-radius:6px;background:var(--night-2);color:var(--text);text-align:left;cursor:pointer;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.quests-row:hover{border-color:var(--rule-strong)}.quests-row.is-selected{border-color:color-mix(in srgb,var(--cyan) 60%,transparent);border-left-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 7%,var(--night-2))}.quests-row__head{display:flex;align-items:center;gap:6px}.quests-row__name{flex:1;min-width:0;font-family:var(--font-display);font-weight:700;font-size:.86rem;color:var(--amber)}.quests-row__tracked{color:var(--cyan);flex:0 0 auto}.quests-row__meta{font-size:.74rem;color:var(--text-2)}.quests-progress{display:block;height:4px;border-radius:2px;background:var(--night-3);overflow:hidden}.quests-progress>span{display:block;height:100%;background:var(--amber);transform-origin:left center;transition:transform var(--duration-base) var(--ease)}.quests-progress--wide{flex:1;height:6px;border-radius:3px}.quests-detail{padding:18px 22px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);overflow-y:auto;scrollbar-width:thin}.quests-article{display:flex;flex-direction:column;gap:16px;min-height:100%}.quests-article header h3{margin:0 0 8px;font-family:var(--font-display);font-size:1.35rem;color:var(--amber)}.quests-tags{display:flex;flex-wrap:wrap;gap:6px}.quests-tags span{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border:1px solid var(--rule-strong);border-radius:999px;font-size:.7rem;color:var(--text-2)}.quests-tags .is-active{border-color:color-mix(in srgb,var(--cyan) 55%,transparent);color:var(--cyan)}.quests-tags .is-done{border-color:color-mix(in srgb,var(--emerald) 55%,transparent);color:var(--emerald)}.quests-description{margin:0;max-width:72ch;font-size:.9rem;line-height:1.65;color:var(--text)}.quests-block{display:flex;flex-direction:column;gap:6px;padding-top:12px;border-top:1px solid var(--rule)}.quests-block h4{margin:0;font-family:var(--font-display);font-size:.66rem;letter-spacing:.22em;text-transform:uppercase;color:var(--text-3)}.quests-block p{margin:0;font-size:.88rem;color:var(--text)}.quests-objective{display:flex;align-items:center;gap:10px}.quests-objective__count{font-family:var(--font-mono);font-size:.8rem;color:var(--text-2)}.quests-hint{display:flex;align-items:center;gap:6px;color:var(--cyan)!important;font-size:.8rem!important}.quests-hint--warn{margin:0;color:var(--amber)!important}.quests-rewards{display:flex;flex-wrap:wrap;gap:8px}.quests-rewards span{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:4px;background:var(--night-3);color:var(--text);font-size:.8rem}.quests-choice{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.quests-choice__label{font-size:.72rem;color:var(--text-3)}.quests-items{display:flex;flex-wrap:wrap;gap:6px}.reward-item{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;max-width:100%;min-width:0;padding:4px 9px;border-left:2px solid var(--rarity-accent, var(--rule-strong));border-radius:4px;background:var(--night-3)}.reward-item .reward-item__name,.reward-item .reward-item__meta,.reward-item .reward-item__stats{display:block;padding:0;background:none;overflow-wrap:anywhere}.reward-item .reward-item__name{color:var(--rarity-accent, var(--text));font-weight:600;font-size:.8rem}.reward-item .reward-item__meta,.reward-item .reward-item__stats{color:var(--text-3);font-size:.72rem}.quests-actions{margin-top:auto;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding-top:12px;border-top:1px solid var(--rule)}.quests-actions button{width:auto;min-width:120px;justify-content:center;display:inline-flex;align-items:center;gap:6px}.quests-danger{border-color:var(--crimson)!important;color:var(--crimson)!important}.quests-empty{margin:0;color:var(--text-3);font-size:.84rem}@media(max-width:760px){.quests{grid-template-columns:1fr}}.sk{min-height:0;height:100%;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:10px}.sk-muted{margin:0;color:var(--text-3);font-size:.82rem}.sk-eyebrow{margin:0;font-size:.7rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.sk-explainer{margin:0;max-width:80ch;color:var(--text-2);font-size:.86rem;line-height:1.5}.sk-btn{min-height:34px;padding:0 12px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);color:var(--text);display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:.82rem;cursor:pointer;transition:background var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.sk-btn:hover:not(:disabled){border-color:var(--cyan)}.sk-btn:disabled{opacity:.45;cursor:not-allowed}.sk-btn--primary{background:var(--amber);border-color:transparent;color:#1c1508;font-weight:700}.sk-btn--primary:hover:not(:disabled){border-color:transparent;background:color-mix(in srgb,var(--amber) 85%,white)}.sk-btn--sm{min-height:28px;padding:0 10px;font-size:.76rem}.sk-icon-btn{width:24px;height:24px;padding:0;border:1px solid var(--rule);border-radius:6px;background:var(--night-2);color:var(--text-2);display:inline-grid;place-items:center;cursor:pointer}.sk-icon-btn:hover:not(:disabled){color:var(--text);border-color:var(--rule-strong)}.sk-icon-btn:disabled{opacity:.35;cursor:default}.sk-icon{flex:none;display:inline-grid;place-items:center;border-radius:10px;border:1px solid color-mix(in srgb,var(--track, var(--rule-strong)) 55%,transparent);background:color-mix(in srgb,var(--track, var(--cyan)) 12%,var(--night-3));overflow:hidden;line-height:1}.sk-icon img{width:100%;height:100%;object-fit:cover;display:block}.sk-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 14px;border:1px solid var(--rule);border-radius:var(--r-2);background:radial-gradient(120% 220% at 0% 0%,color-mix(in srgb,var(--amber) 10%,transparent),transparent 55%),var(--night-2)}.sk-points{display:flex;align-items:baseline;gap:8px}.sk-points strong{font-family:var(--font-display);font-size:1.9rem;line-height:1;color:var(--text-2)}.sk-points--has strong{color:var(--amber)}.sk-points span{color:var(--text-2);font-size:.9rem}.sk-head__sub{margin:0;color:var(--text-3);font-size:.8rem}.sk-head__actions{margin-left:auto;display:flex;gap:8px}.sk-confirm{display:grid;gap:8px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--amber) 45%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--amber) 8%,var(--night-2));font-size:.84rem;color:var(--text-2)}.sk-confirm p{margin:0;line-height:1.45}.sk-confirm__title{color:var(--text);font-weight:700}.sk-confirm__actions{display:flex;justify-content:flex-end;gap:8px}.sk-confirm--respec{flex-basis:100%}.sk-tabs{display:flex;gap:4px;overflow-x:auto;border-bottom:1px solid var(--rule);scrollbar-width:thin}.sk-tab{flex:none;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text-2);font:inherit;font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.sk-tab:hover{color:var(--text)}.sk-tab--on{color:var(--text);border-bottom-color:var(--track, var(--cyan))}.sk-tab__dot{width:9px;height:9px;border-radius:50%;background:var(--track, var(--cyan))}.sk-tab small{font-family:var(--font-mono);font-size:.7rem;letter-spacing:0;color:var(--text-3)}.sk-tab:not(.sk-tab--aux)+.sk-tab--aux{margin-left:auto}.sk-cols{min-height:0;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);gap:16px}.sk-track,.sk-detail{min-height:0;overflow-y:auto;scrollbar-width:thin}.sk-track{display:grid;align-content:start;gap:12px;padding-right:4px}.sk-detail{padding:14px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.sk-progress{display:grid;gap:8px;padding:12px 14px;border:1px solid color-mix(in srgb,var(--track) 30%,var(--rule));border-radius:var(--r-2);background:linear-gradient(90deg,color-mix(in srgb,var(--track) 12%,transparent),transparent 70%),var(--night-2)}.sk-progress__top{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px}.sk-progress__track{font-family:var(--font-display);font-size:1.15rem;color:var(--text)}.sk-progress__loop{color:var(--track);font-size:.82rem;font-weight:700;letter-spacing:.04em}.sk-progress__bar{position:relative;height:8px;border-radius:999px;background:var(--night-3);border:1px solid var(--rule)}.sk-progress__fill{position:absolute;inset:0 auto 0 0;border-radius:inherit;background:var(--track);transition:width var(--duration-base) var(--ease)}.sk-progress__mark{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;transform:translate(-50%,-50%);background:var(--night-2);border:2px solid var(--rule-strong)}.sk-progress__mark--on{background:var(--track);border-color:var(--track)}.sk-progress__note{margin:0;font-size:.8rem;color:var(--text-2)}.sk-progress__note span{color:var(--text-3)}.sk-passives{display:grid;gap:8px}.sk-passives__toggle{justify-self:start;display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--text-3);font:inherit;font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.sk-passives__toggle svg{transform:rotate(-90deg);transition:transform var(--duration-fast) var(--ease)}.sk-passives__toggle svg.sk-rot{transform:none}.sk-passives__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:8px}.sk-passive{display:flex;gap:10px;padding:10px;border:1px dashed var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);opacity:.75}.sk-passive--on{opacity:1;border-style:solid;border-color:color-mix(in srgb,var(--track) 55%,transparent)}.sk-passive h5{margin:2px 0;font-size:.9rem;color:var(--text)}.sk-passive__pt{margin:0;font-family:var(--font-mono);font-size:.68rem;color:var(--track)}.sk-passive__desc{margin:0;font-size:.78rem;line-height:1.4;color:var(--text-2)}.sk-tier{display:grid;gap:8px}.sk-tier__head{margin:6px 0 0;display:flex;align-items:center;gap:6px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}.sk-tier__head--locked{color:var(--text-3)}.sk-tier__gate{margin-left:6px;font-weight:400;letter-spacing:0;text-transform:none}.sk-tier__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:8px}.sk-card{display:grid;gap:8px;padding:10px;border:1px solid var(--rule);border-left:3px solid color-mix(in srgb,var(--track) 70%,transparent);border-radius:var(--r-2);background:var(--night-2);transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease)}.sk-card:hover{border-color:var(--rule-strong);border-left-color:var(--track)}.sk-card--selected{border-color:color-mix(in srgb,var(--track) 60%,transparent);border-left-color:var(--track);background:color-mix(in srgb,var(--track) 7%,var(--night-2))}.sk-card--locked .sk-card__select{opacity:.6}.sk-card__select{display:flex;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.sk-card__text{min-width:0;display:grid;gap:4px;flex:1}.sk-card__title{display:flex;align-items:center;justify-content:space-between;gap:8px}.sk-card__title strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text)}.sk-card__summary{font-size:.8rem;line-height:1.35;color:var(--text-2)}.sk-card__chips{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.sk-card__foot{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding-left:54px}.sk-chip{display:inline-flex;align-items:center;padding:1px 8px;border-radius:999px;border:1px solid color-mix(in srgb,var(--chip, var(--text-3)) 55%,transparent);background:color-mix(in srgb,var(--chip, var(--text-3)) 14%,transparent);color:var(--chip, var(--text-2));font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:default}.sk-chip--verb{--chip: var(--track)}.sk-chip--plain{--chip: var(--text-2)}.sk-chip--primed{--chip: var(--amber);text-transform:none;letter-spacing:0}.sk-value{display:inline-flex;align-items:baseline;gap:5px;font-family:var(--font-mono);font-size:.74rem;color:var(--text-2)}.sk-value__label{font-family:var(--font-ui);color:var(--text-3)}.sk-value__arrow{color:var(--text-3)}.sk-value__next{color:var(--emerald);font-weight:700}.sk-badge{flex:none;display:inline-flex;align-items:center;gap:3px;padding:1px 7px;border-radius:999px;background:color-mix(in srgb,var(--cyan) 16%,transparent);color:var(--cyan);font-size:.66rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sk-badge--max{background:color-mix(in srgb,var(--amber) 18%,transparent);color:var(--amber)}.sk-badge--lock{background:var(--night-3);color:var(--text-3)}.sk-pips{flex:none;display:inline-flex;gap:3px}.sk-pip{width:8px;height:8px;border-radius:2px;background:var(--night-3);border:1px solid var(--rule-strong)}.sk-pip--on{background:var(--track, var(--cyan));border-color:var(--track, var(--cyan))}.sk-reason{font-size:.76rem;color:var(--text-3);display:inline-flex;align-items:center;gap:4px}p.sk-reason{margin:0}.sk-reason--max{color:var(--amber)}.sk-sockets{display:flex;flex-wrap:wrap;gap:5px;margin-left:auto}.sk-socket{display:inline-flex;align-items:center;gap:4px;min-height:24px;padding:0 9px;border-radius:999px;border:1px solid var(--rule-strong);background:transparent;color:var(--text-2);font:inherit;font-size:.72rem;cursor:pointer}.sk-socket small{font-family:var(--font-mono);color:var(--text-3)}.sk-socket--filled{border-color:color-mix(in srgb,var(--magenta) 55%,transparent);background:color-mix(in srgb,var(--magenta) 12%,transparent);color:var(--text)}.sk-socket--open{border-style:dashed;color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 55%,transparent)}.sk-socket--open:hover{background:color-mix(in srgb,var(--cyan) 10%,transparent)}.sk-socket--locked{border-style:dashed;color:var(--text-3);cursor:default;opacity:.7}.sk-socket--wide{justify-self:start;min-height:30px}.sk-dt{display:grid;align-content:start;gap:14px}.sk-dt__head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:12px}.sk-dt__head h3{margin:2px 0 6px;font-family:var(--font-display);font-size:1.35rem;color:var(--text)}.sk-dt__chips{display:flex;flex-wrap:wrap;gap:6px}.sk-dt__summary{margin:0;font-size:.95rem;line-height:1.45;color:var(--text)}.sk-dt__desc{margin:0;font-size:.85rem;line-height:1.5;color:var(--text-2)}.sk-numbers{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:8px}.sk-numbers div{padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-3)}.sk-numbers dt{font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.sk-numbers dd{margin:3px 0 0;font-family:var(--font-mono);font-size:.9rem;color:var(--text)}.sk-numbers dd small{color:var(--text-3)}.sk-costs{display:flex;flex-wrap:wrap;gap:4px}.sk-cost{font-size:.74rem;font-weight:700}.sk-cost--rage,.sk-cost--health{color:var(--crimson)}.sk-cost--mana{color:var(--cyan)}.sk-cost--gain{color:var(--emerald)}.sk-dt__spend{display:grid}.sk-dt__spend>.sk-btn{justify-self:start;min-height:38px;padding:0 18px}.sk-dt__section{display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--rule)}.sk-dt__section--focus{border-top-color:var(--cyan)}.sk-dt__section h4{margin:0;display:flex;align-items:center;gap:8px;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}.sk-dt__section h4 small{font-family:var(--font-mono);letter-spacing:0;color:var(--text-3)}.sk-dt__section h4 .sk-icon-btn{margin-left:auto}.sk-enh{display:grid;gap:6px;padding:10px;border:1px solid color-mix(in srgb,var(--magenta) 35%,var(--rule));border-radius:var(--r-2);background:color-mix(in srgb,var(--magenta) 6%,var(--night-2));font-size:.82rem}.sk-enh--banked{border-color:var(--rule);background:var(--night-2)}.sk-enh header{display:flex;align-items:baseline;justify-content:space-between;gap:8px;color:var(--text)}.sk-enh p{margin:0;line-height:1.4;color:var(--text-2)}.sk-enh__rank{font-family:var(--font-mono);font-size:.76rem;color:var(--magenta)}.sk-enh__next{color:var(--emerald)!important}.sk-enh__where{font-size:.72rem;letter-spacing:.04em;color:var(--text-3)!important}.sk-enh__actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;justify-content:space-between}.sk-search{display:flex;align-items:center;gap:6px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-3);color:var(--text-3)}.sk-search input{flex:1;min-height:32px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.84rem;outline:none}.sk-picker{display:grid;gap:6px}.sk-pick{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);font-size:.8rem}.sk-pick--owned{border-color:color-mix(in srgb,var(--magenta) 40%,var(--rule))}.sk-pick strong{color:var(--text)}.sk-pick__status{display:block;font-size:.7rem;color:var(--text-3)}.sk-pick--owned .sk-pick__status{color:var(--magenta)}.sk-pick p{margin:4px 0 0;line-height:1.4;color:var(--text-2)}.sk-terms{margin:0;display:grid;gap:6px}.sk-terms dt{font-weight:700;font-size:.8rem;color:var(--text)}.sk-terms dd{margin:1px 0 0;font-size:.8rem;line-height:1.4;color:var(--text-2)}.sk-bank,.sk-bar{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:12px}.sk-bank__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.sk-bar__slots{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:8px}.sk-slot{display:grid;gap:4px}.sk-slot__body{width:100%;min-height:112px;display:grid;justify-items:center;align-content:center;gap:6px;padding:10px 6px;border:1px solid color-mix(in srgb,var(--track, var(--rule-strong)) 50%,var(--rule));border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit;cursor:pointer;position:relative}.sk-slot--empty .sk-slot__body{border-style:dashed;color:var(--text-3)}.sk-slot--active .sk-slot__body{border-color:var(--amber);box-shadow:0 0 0 2px color-mix(in srgb,var(--amber) 35%,transparent)}.sk-slot__num{position:absolute;top:5px;left:7px;font-family:var(--font-mono);font-size:.68rem;color:var(--text-3)}.sk-slot__plus{font-size:1.5rem;line-height:40px}.sk-slot__name{max-width:100%;font-size:.74rem;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sk-slot__tools{display:flex;justify-content:center;gap:4px}.sk-slot__tools--idle{visibility:hidden}.sk-bar__actions{display:flex;gap:8px}.sk-bar__pool-head{margin:4px 0 0;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}.sk-bar__pool-head small{letter-spacing:0;text-transform:none;color:var(--amber)}.sk-bar__pool{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.sk-pool{display:flex;align-items:center;gap:10px;padding:8px;border:1px solid var(--rule);border-left:3px solid var(--track);border-radius:var(--r-2);background:var(--night-2);color:var(--text);font:inherit;text-align:left;cursor:grab}.sk-pool:hover{border-color:var(--rule-strong);border-left-color:var(--track)}.sk-pool span{display:grid;min-width:0}.sk-pool strong{font-size:.86rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sk-pool small{font-size:.7rem;color:var(--text-3)}.sk-pool--slotted{opacity:.6}@media(max-width:980px){.sk-cols{grid-template-columns:minmax(0,1fr);overflow-y:auto}.sk-track,.sk-detail{overflow:visible}.sk-bar__slots{grid-template-columns:repeat(4,minmax(0,1fr))}.sk-card__foot{padding-left:0}}.sheet-backdrop:not(.sheet-backdrop--full){place-items:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.sheet-panel:not(.sheet-panel--full){width:min(1120px,100%);min-height:min(56dvh,520px);max-height:min(86dvh,880px);padding:18px 22px 22px;border:1px solid var(--rule-strong);border-top:2px solid color-mix(in srgb,var(--amber) 55%,transparent);background:var(--night);animation:sheet-in var(--duration-base) var(--ease) both}@keyframes sheet-in{0%{opacity:0;transform:translateY(8px) scale(.99)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.sheet-panel:not(.sheet-panel--full){animation:none}}.sheet-panel:not(.sheet-panel--full) .sheet-header{padding-bottom:12px;margin-bottom:16px;border-bottom:1px solid var(--rule)}.sheet-panel:not(.sheet-panel--full) .sheet-header h2{margin:0;font-family:var(--font-display);font-size:1.25rem;letter-spacing:.04em;color:var(--text)}.sheet-panel .sheet-grid h3,.log-sheet h3,.party-sheet h3{margin:0;font-family:var(--font-display);font-size:.72rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}.sheet-panel .quests{height:min(70dvh,700px)}.log-sheet{min-height:0;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr);gap:16px}.log-sheet section{min-height:0;display:flex;flex-direction:column;gap:8px}.log-sheet ol{list-style:none;margin:0;padding:8px 10px;max-height:min(66dvh,660px);overflow-y:auto;scrollbar-width:thin;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);display:flex;flex-direction:column;gap:2px}.log-sheet li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;padding:3px 0;font-size:.82rem;line-height:1.45;color:var(--text-2)}.log-sheet time{font-family:var(--font-mono);font-size:.7rem;color:var(--text-3);padding-top:2px}.log-sheet li.is-success{color:var(--emerald)}.log-sheet li.is-warning{color:var(--amber)}.log-sheet li.is-error{color:var(--crimson)}.log-sheet li b{color:var(--cyan);font-weight:600;margin-right:6px}.log-sheet .log-empty{color:var(--text-3);font-style:italic}.party-sheet{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:18px}.party-sheet section{display:flex;flex-direction:column;gap:10px}.party-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.party-stat{padding:12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);display:flex;flex-direction:column;gap:2px}.party-stat b{font-family:var(--font-mono);font-size:1.4rem;color:var(--cyan)}.party-stat span{font-size:.72rem;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.party-members{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.party-members li{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.party-members img,.party-members .party-members__initial{width:36px;height:36px;border-radius:50%;object-fit:cover;flex:0 0 36px;display:grid;place-items:center;background:var(--night-3);font-family:var(--font-display);color:var(--text-3)}.party-members__text{flex:1;min-width:0;display:flex;flex-direction:column}.party-members__text strong{font-size:.88rem}.party-members__text span{font-size:.72rem;color:var(--text-3)}.party-note{margin:0;font-size:.82rem;line-height:1.5;color:var(--text-3)}@media(max-width:860px){.log-sheet,.party-sheet{grid-template-columns:1fr}}.sheet-grid section>button{align-self:start}@media(max-height:820px){.sheet-backdrop:not(.sheet-backdrop--full){padding:12px}.sheet-panel:not(.sheet-panel--full){max-height:calc(100dvh - 24px);padding:14px 18px 16px}.sheet-panel .quests{height:calc(100dvh - 110px)}}.assayer-sheet{display:grid;gap:8px}.assayer-sheet h3{margin:4px 0 0}.assayer-sheet__balance{display:flex;justify-content:flex-end}.assayer-sheet__message{margin:0;color:var(--text-2, inherit)}.assayer-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}.assayer-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px}.assayer-row__text{display:grid;gap:2px;min-width:0}.assayer-row__text small{overflow-wrap:anywhere}.assayer-drust{display:inline-flex;align-items:center;gap:4px;color:var(--magenta, #d81b60);font-weight:700;white-space:nowrap}.refine-sheet{display:grid;gap:10px}.refine-sheet__notice,.refine-sheet__warning{color:var(--amber, #ffa726)}.refine-card{display:grid;gap:4px;padding:8px 10px;border-left:3px solid var(--rarity-accent, currentColor)}.refine-card__head{display:flex;justify-content:space-between;gap:8px}.refine-card__rarity{color:var(--rarity-accent, inherit)}.refine-card__mods{margin:0;padding-left:18px}.refine-list{display:grid;gap:6px}.refine-row{display:grid;gap:2px;text-align:left}.refine-row--selected{outline:2px solid var(--cyan, #00bcd4)}.refine-row:disabled{opacity:.55}.refine-stepper{display:flex;align-items:center;gap:8px}.refine-stepper input{width:4.5em}.refine-compare{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin:12px 0;text-align:left}.drust-section,.drust-sealed{color:var(--drust-color, #e8743b)}.drust-section{display:grid;gap:4px;padding:8px 10px;border-left:3px solid var(--drust-color, #e8743b)}.drust-section h4,.drust-section ul{margin:0}.drust-section ul{padding-left:18px}.drust-echo__replaced{display:block;opacity:.8}.drust-sealed{display:inline-block;padding:0 6px;border:1px solid currentColor;border-radius:4px;font-size:.75em;text-transform:uppercase}.drust-odds ul{margin:4px 0 0;padding:0;list-style:none}.drust-odds li{display:flex;justify-content:space-between;gap:8px}.drust-danger{padding:6px 8px;border:1px solid var(--crimson, #c62828);color:var(--crimson, #c62828)}.drust-danger-button{background:var(--crimson, #c62828)}.drust-consumed{text-decoration:line-through;opacity:.7}.drust-ash{color:var(--drust-color, #e8743b)}.drust-anchor{display:inline-flex;margin-left:4px;vertical-align:middle;opacity:.8}.detail-modal__hero{display:flex;gap:16px;align-items:flex-start}.detail-modal__portrait{width:132px;height:132px;flex:0 0 132px;border-radius:var(--r-2);object-fit:cover;border:1px solid var(--rule-strong);background:var(--night-3)}.detail-modal__facts{flex:1;min-width:0;display:flex;flex-direction:column;gap:8px}.detail-modal__facts p{margin:0}.detail-modal__tags{font-family:var(--font-display);font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-2)}.detail-modal__warn{color:var(--crimson);font-size:.8rem}.detail-modal__note{color:var(--text-3);font-size:.78rem}.loot-list{display:flex;flex-direction:column;gap:4px}.loot-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--rule);border-radius:6px;background:var(--night-2)}.loot-row__icon{width:32px;height:32px;flex:0 0 32px;object-fit:contain;border-radius:4px;background:var(--night-3)}.loot-row__name{flex:1;min-width:0;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:600px){.detail-modal__hero{flex-direction:column}}.reading-block .loot-list{max-height:min(60dvh,520px);overflow-y:auto;scrollbar-width:thin}.modal-backdrop{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal-backdrop .modal-panel{border:1px solid var(--rule-strong);border-top:2px solid color-mix(in srgb,var(--amber) 55%,transparent);background:var(--night);padding:18px 22px 22px;overflow-y:auto}.modal-panel .sheet-header{padding-bottom:12px;margin-bottom:14px;border-bottom:1px solid var(--rule)}.modal-panel .sheet-header h2{margin:0;font-family:var(--font-display);font-size:1.2rem;letter-spacing:.04em}.modal-panel>.reading-block{border:none;background:transparent;padding:0;display:flex;flex-direction:column;gap:12px;line-height:1.55}.modal-panel>.reading-block>p{margin:0}.modal-panel .toolbar-row{display:flex;flex-wrap:wrap;gap:8px}.modal-panel .toolbar-row button{width:auto;min-width:110px}.npc-talk__speech{display:flex;gap:14px;align-items:flex-start}.npc-talk__portrait{width:76px;height:76px;flex:0 0 76px;border-radius:var(--r-2);object-fit:cover;border:1px solid color-mix(in srgb,var(--amber) 40%,transparent)}.npc-talk__speech blockquote{margin:0;padding:2px 0 2px 14px;border-left:2px solid color-mix(in srgb,var(--amber) 55%,transparent);font-size:.95rem;font-style:italic;line-height:1.6;color:var(--text)}.npc-talk__topics{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.npc-talk__topics>span{margin-right:4px;font-family:var(--font-display);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}.npc-talk__topics button{width:auto;min-height:28px;padding:3px 12px;border:1px solid color-mix(in srgb,var(--cyan) 45%,transparent);border-radius:999px;background:color-mix(in srgb,var(--cyan) 8%,transparent);color:var(--cyan);font-size:.78rem;cursor:pointer}.npc-talk__topics button:hover{background:color-mix(in srgb,var(--cyan) 18%,transparent)}.npc-quest{display:flex;flex-direction:column;gap:10px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--amber) 35%,var(--rule));border-left:3px solid var(--amber);border-radius:var(--r-2);background:linear-gradient(135deg,color-mix(in srgb,var(--amber) 7%,var(--night-2)),var(--night-2) 60%)}.npc-quest--turnin{border-color:color-mix(in srgb,var(--emerald) 40%,var(--rule));border-left-color:var(--emerald);background:linear-gradient(135deg,color-mix(in srgb,var(--emerald) 8%,var(--night-2)),var(--night-2) 60%)}.npc-quest__eyebrow{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}.npc-quest--turnin .npc-quest__eyebrow{color:var(--emerald)}.npc-quest h3{margin:0;font-family:var(--font-display);font-size:1.15rem;color:var(--text)}.npc-quest__text{margin:0;font-size:.86rem;line-height:1.6;color:var(--text-2)}.npc-quest__facts{margin:0;display:flex;flex-direction:column;gap:8px;padding-top:10px;border-top:1px solid var(--rule)}.npc-quest__facts>div{display:grid;grid-template-columns:90px minmax(0,1fr);gap:10px;align-items:baseline}.npc-quest__facts dt{font-family:var(--font-display);font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3)}.npc-quest__facts dd{margin:0;font-size:.86rem;color:var(--text)}.npc-quest__rewards{display:flex;flex-wrap:wrap;gap:6px}.npc-quest__rewards span{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:4px;background:var(--night-3);font-size:.78rem}.npc-quest__rewards .npc-quest__choice{flex-wrap:wrap;color:var(--amber)}.npc-quest__rewards .npc-quest__item{padding:0 0 0 6px}.npc-quest__blocked{margin:0;font-size:.8rem;color:var(--amber)}.npc-quest__actions{display:flex;flex-wrap:wrap;gap:8px}.npc-quest__actions button{width:auto;min-width:120px}.modal-backdrop .modal-panel.modal-panel--wide{width:min(880px,100%)}.learn__head{display:flex;align-items:center;gap:12px;padding-bottom:12px;border-bottom:1px solid var(--rule)}.learn__portrait{width:52px;height:52px;border-radius:50%;object-fit:cover;border:1px solid color-mix(in srgb,var(--amber) 45%,transparent)}.learn__intro{flex:1;min-width:0;display:flex;flex-direction:column}.learn__intro strong{font-family:var(--font-display);font-size:1rem}.learn__intro span{font-size:.78rem;color:var(--text-3)}.learn__gold{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border:1px solid color-mix(in srgb,var(--amber) 45%,transparent);border-radius:999px;color:var(--amber);font-family:var(--font-mono);font-size:.85rem}.learn__section{display:flex;flex-direction:column;gap:10px}.learn__section h3{margin:0;display:flex;align-items:baseline;justify-content:space-between;font-family:var(--font-display);font-size:.7rem;font-weight:600;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3)}.learn__section h3 span{font-family:var(--font-ui);letter-spacing:0;text-transform:none;font-size:.74rem}.learn__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:min(56dvh,560px);overflow-y:auto;padding-right:4px;scrollbar-width:thin}.learn-card{display:flex;flex-direction:column;gap:6px;padding:12px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2)}.learn-card--known{opacity:.62}.learn-card__head{display:flex;align-items:center;gap:8px}.learn-card__glyph{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border-radius:6px;background:color-mix(in srgb,var(--amber) 14%,transparent);color:var(--amber)}.learn-card__name{font-family:var(--font-display);font-weight:700;font-size:.92rem;color:var(--text)}.learn-card__text{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-2)}.learn-card__ranks{display:flex;gap:3px}.learn-card__ranks span{width:14px;height:4px;border-radius:2px;background:var(--night-3)}.learn-card__ranks span.is-on{background:var(--cyan)}.learn-card__foot{margin-top:auto;padding-top:6px;display:flex;align-items:center;justify-content:space-between;gap:8px}.learn-card__cost{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:.8rem;color:var(--amber)}.learn-card__cost small{font-family:var(--font-ui);font-size:.7rem;color:var(--crimson)}.learn-card__cost.is-short{color:var(--crimson)}.learn-card__learn{width:auto;min-height:30px;padding:4px 16px;border:1px solid color-mix(in srgb,var(--cyan) 60%,transparent);border-radius:4px;background:color-mix(in srgb,var(--cyan) 14%,transparent);color:var(--cyan);font-weight:600;font-size:.78rem;cursor:pointer}.learn-card__learn:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 24%,transparent)}.learn-card__learn:disabled{opacity:.35;cursor:not-allowed}.learn-card__known{display:inline-flex;align-items:center;gap:5px;font-size:.78rem;color:var(--emerald)}@media(max-width:700px){.learn__grid{grid-template-columns:1fr}}@media(max-height:820px){.modal-backdrop{padding:12px}.modal-backdrop .modal-panel{max-height:calc(100dvh - 24px);padding:14px 18px 16px}.modal-panel .sheet-header{padding-bottom:8px;margin-bottom:10px}.npc-talk__portrait{width:56px;height:56px;flex-basis:56px}.npc-quest{padding:12px 14px;gap:8px}.learn__grid{max-height:calc(100dvh - 230px)}}.modal-backdrop .loot-row button{width:auto;min-height:28px;padding:3px 12px;border:1px solid var(--rule-strong);border-radius:4px;background:transparent;color:var(--text-2);font-size:.76rem;cursor:pointer}.modal-backdrop .loot-row button:last-child:not(.ghost-button){border-color:color-mix(in srgb,var(--cyan) 60%,transparent);background:color-mix(in srgb,var(--cyan) 12%,transparent);color:var(--cyan);font-weight:600}.modal-backdrop .loot-row button:hover{color:var(--text)}.shell-toasts{position:fixed;top:12px;left:50%;z-index:70;display:flex;flex-direction:column;gap:6px;width:min(420px,calc(100% - 32px));transform:translate(-50%);pointer-events:none}.shell-toast{--toast-accent: var(--cyan, #00bcd4);display:flex;gap:8px;justify-content:space-between;align-items:flex-start;padding:8px 10px;border:1px solid color-mix(in srgb,var(--toast-accent) 50%,transparent);border-left:3px solid var(--toast-accent);border-radius:var(--r-2, 6px);background:var(--night-2, #1b1d22);box-shadow:var(--elev-modal, none);pointer-events:auto}.shell-toast p{margin:0}.shell-toast--success{--toast-accent: var(--emerald, #43a047)}.shell-toast--error{--toast-accent: var(--crimson, #f44336)}.shell-toast .icon-button{width:28px;min-height:28px;flex:none}.shell-toast__text{min-width:0}.shell-toast__title{display:block;margin-bottom:2px;font-family:var(--font-display);letter-spacing:.04em}.reward-choice{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:grid;place-items:center;padding:16px;background:#000000b3}[data-theme=light] .reward-choice{background:#14182173}.reward-choice__panel{display:flex;flex-direction:column;gap:12px;width:min(520px,100%);max-height:min(90dvh,860px);overflow-y:auto;padding:16px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-2);box-shadow:var(--elev-modal)}.reward-choice__head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.reward-choice__head h2{margin:0;color:var(--cyan);font-family:var(--font-display);font-size:1.1rem}.reward-choice__step{color:var(--text-3);font-size:.75rem}.reward-choice__options{display:flex;flex-direction:column;gap:8px}.reward-choice__option{padding:10px 12px;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night);cursor:pointer;transition:border-color var(--duration-fast) var(--ease)}.reward-choice__option:hover{border-color:var(--text-3)}.reward-choice__option:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.reward-choice__option.is-selected{border:2px solid var(--amber);padding:9px 11px}.reward-choice__confirm{position:sticky;bottom:0;width:100%}.intro{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:end center;padding:0 16px 8vh;background:var(--void)}.intro__art{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;opacity:.55;animation:intro-fade .6s var(--ease) both}@keyframes intro-fade{0%{opacity:0}to{opacity:.55}}.intro__panel{position:relative;width:min(720px,100%);padding:24px 28px;border:1px solid color-mix(in srgb,var(--amber) 35%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--night) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:var(--elev-modal)}.intro__eyebrow{font-family:var(--font-display);font-size:.66rem;letter-spacing:.24em;text-transform:uppercase;color:var(--amber)}.intro__text{margin:10px 0 20px;font-size:1.02rem;line-height:1.65;color:var(--text)}.intro__actions{display:flex;justify-content:flex-end;gap:10px}.intro__skip,.intro__next{min-height:36px;padding:6px 18px;border-radius:4px;border:1px solid var(--rule-strong);background:transparent;color:var(--text-2);cursor:pointer}.intro__next{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 16%,transparent);color:var(--cyan);font-weight:600}.coach{--coach-scrim: rgba(0, 0, 0, .55);position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;pointer-events:none}[data-theme=light] .coach{--coach-scrim: rgba(10, 12, 16, .38)}.coach-scrim{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.coach-scrim__fill{fill:var(--coach-scrim)}.coach-ring{position:absolute;border:2px solid var(--amber);border-radius:10px;box-shadow:0 0 0 4px color-mix(in srgb,var(--amber) 22%,transparent),0 0 26px color-mix(in srgb,var(--amber) 40%,transparent);transition:top var(--duration-fast) var(--ease),left var(--duration-fast) var(--ease),width var(--duration-fast) var(--ease),height var(--duration-fast) var(--ease);animation:coach-pulse 1.8s var(--ease) infinite}.coach-card{position:absolute;width:min(360px,calc(100vw - 32px));padding:12px 14px;border:1px solid var(--rule-strong);border-left:3px solid var(--amber);border-radius:var(--r-2);background:var(--night-2);color:var(--text);box-shadow:var(--elev-modal);pointer-events:auto;transition:top var(--duration-fast) var(--ease),left var(--duration-fast) var(--ease);animation:coach-in var(--duration-base) var(--ease)}.coach-card__progress{margin:0 0 4px;color:var(--text-3);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase}.coach-card__title{margin:0 0 4px;font-family:var(--font-display);font-size:1rem;color:var(--amber)}.coach-card__body{margin:0 0 10px;color:var(--text-2);line-height:1.45}.coach-card__actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}@keyframes coach-pulse{0%,to{opacity:1}50%{opacity:.55}}@keyframes coach-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.coach-ring,.coach-card{animation:none;transition:none}}[data-theme=dark]{color-scheme:dark;--void: #0A0A0A;--night: #121212;--night-2: #1E1E1E;--night-3: #252525;--rule: rgba(255, 255, 255, .06);--rule-strong: rgba(255, 255, 255, .14);--text: #FFFFFF;--text-2: rgba(255, 255, 255, .7);--text-3: rgba(255, 255, 255, .45);--cyan: #00BCD4;--cyan-deep: #00ACC1;--amber: #FFA726;--crimson: #F44336;--emerald: #4CAF50;--magenta: #CE93D8;--bg: var(--night);--fg: var(--text);--r-2: 8px;--elev-modal: 0 18px 70px rgba(0, 0, 0, .6);--font-ui: "Sora", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--font-display: "Cinzel", serif;--duration-fast: .18s;--duration-base: .3s;--ease: cubic-bezier(.4, 0, .2, 1);--vitals-trail: rgba(244, 67, 54, .55);--vitals-barrier: rgba(0, 188, 212, .75);--status-ignite: rgba(255, 112, 67, .55);--status-chill: rgba(79, 195, 247, .55);--status-shock: rgba(255, 213, 79, .55);--status-wound: rgba(229, 57, 53, .55);--status-guard: rgba(0, 188, 212, .55);--status-reaction: rgba(206, 147, 216, .75);--damage-neutral: #FFE082;--damage-fire: #FF7043;--damage-ice: #4FC3F7;--damage-lightning: #FFD54F;--damage-poison: #9CCC65;--rank-normal: rgba(255, 255, 255, .16);--rank-elite: #FFA726;--rank-boss: #EF5350;--combatant-selected-glow: rgba(255, 167, 38, .32);--poi-boss: #C41E3A;--poi-portal: #7B2FBE;--poi-healing-well: #2E7D32;--poi-quest-npc: #F9A825;--poi-shopkeeper: #00897B;--poi-teacher: #1565C0;--poi-badge-text: #FFFFFF;--damage-float-shadow: rgba(0, 0, 0, .75)}[data-theme=light]{color-scheme:light;--void: #E7E9ED;--night: #F2F3F5;--night-2: #FFFFFF;--night-3: #F7F8FA;--rule: rgba(20, 24, 33, .12);--rule-strong: rgba(20, 24, 33, .22);--text: #16181D;--text-2: rgba(22, 24, 29, .66);--text-3: rgba(22, 24, 29, .42);--cyan: #0097A7;--cyan-deep: #00838F;--amber: #C77800;--crimson: #D32F2F;--emerald: #2E7D32;--magenta: #8E24AA;--bg: var(--night);--fg: var(--text);--r-2: 8px;--elev-modal: 0 10px 40px rgba(20, 24, 33, .16);--font-ui: "Sora", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--font-display: "Cinzel", serif;--duration-fast: .18s;--duration-base: .3s;--ease: cubic-bezier(.4, 0, .2, 1);--vitals-trail: rgba(211, 47, 47, .45);--vitals-barrier: rgba(0, 151, 167, .75);--status-ignite: rgba(216, 67, 21, .65);--status-chill: rgba(2, 119, 189, .65);--status-shock: rgba(178, 135, 4, .65);--status-wound: rgba(198, 40, 40, .65);--status-guard: rgba(0, 131, 143, .65);--status-reaction: rgba(142, 36, 170, .65);--damage-neutral: #8D6E00;--damage-fire: #D84315;--damage-ice: #0277BD;--damage-lightning: #B28704;--damage-poison: #558B2F;--rank-normal: rgba(20, 24, 33, .18);--rank-elite: #C77800;--rank-boss: #C62828;--combatant-selected-glow: rgba(199, 120, 0, .28);--poi-boss: #A3172E;--poi-portal: #64249B;--poi-healing-well: #266B2A;--poi-quest-npc: #B87D06;--poi-shopkeeper: #00695C;--poi-teacher: #0D47A1;--poi-badge-text: #FFFFFF;--damage-float-shadow: rgba(255, 255, 255, .85)}@media(prefers-color-scheme:dark){:root:not([data-theme]){color-scheme:dark;--void: #0A0A0A;--night: #121212;--night-2: #1E1E1E;--night-3: #252525;--rule: rgba(255,255,255,.06);--rule-strong: rgba(255,255,255,.14);--text: #FFFFFF;--text-2: rgba(255,255,255,.7);--text-3: rgba(255,255,255,.45);--cyan: #00BCD4;--cyan-deep: #00ACC1;--amber: #FFA726;--crimson: #F44336;--emerald: #4CAF50;--magenta: #CE93D8;--bg: var(--night);--fg: var(--text);--r-2: 8px;--elev-modal: 0 18px 70px rgba(0,0,0,.6);--font-ui: "Sora", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--font-display: "Cinzel", serif;--duration-fast: .18s;--duration-base: .3s;--ease: cubic-bezier(.4, 0, .2, 1)}}@media(prefers-color-scheme:light){:root:not([data-theme]){color-scheme:light;--void: #E7E9ED;--night: #F2F3F5;--night-2: #FFFFFF;--night-3: #F7F8FA;--rule: rgba(20,24,33,.12);--rule-strong: rgba(20,24,33,.22);--text: #16181D;--text-2: rgba(22,24,29,.66);--text-3: rgba(22,24,29,.42);--cyan: #0097A7;--cyan-deep: #00838F;--amber: #C77800;--crimson: #D32F2F;--emerald: #2E7D32;--magenta: #8E24AA;--bg: var(--night);--fg: var(--text);--r-2: 8px;--elev-modal: 0 10px 40px rgba(20,24,33,.16);--font-ui: "Sora", system-ui, sans-serif;--font-mono: "JetBrains Mono", monospace;--font-display: "Cinzel", serif;--duration-fast: .18s;--duration-base: .3s;--ease: cubic-bezier(.4, 0, .2, 1)}}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100dvh;overflow:hidden;background:var(--bg);color:var(--fg);font-family:var(--font-ui);-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit}input,select{width:100%;min-height:42px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:var(--text);padding:0 12px}label{display:grid;gap:7px;color:var(--text-2);font-size:.9rem}h1,h2,h3,p{margin:0}.auth-screen,.select-screen{min-height:100dvh;display:grid;place-items:center;padding:24px;background:linear-gradient(#080a0d94,#080a0dd6),url(/images/splash.png) center / cover no-repeat,#0d1014}.auth-panel,.create-panel,.select-header{width:min(440px,100%);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);box-shadow:var(--elev-modal);padding:20px}.select-screen{place-items:stretch;align-content:start;overflow:auto}.select-header{width:min(1180px,100%);margin:0 auto 16px;display:flex;justify-content:space-between;gap:16px;align-items:center}.brand-lockup,.section-title,.toolbar-row,.tool-strip,.location-block{display:flex;align-items:center;gap:12px}.brand-lockup{margin-bottom:22px}.brand-lockup h1,.select-header h1{font-size:clamp(1.8rem,4vw,2.8rem)}.stack{display:grid;gap:16px}.form-error{color:var(--crimson);border:1px solid rgba(244,67,54,.45);background:#f443361f;border-radius:var(--r-2);padding:10px 12px}.primary-action,.ghost-button,.icon-button,.entity-chip button,.quick-actions button,.skill-tray button,.inline-actions button{min-height:40px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 13px;cursor:pointer}.primary-action{width:100%;background:var(--amber);color:#1c1508;border-color:transparent;font-weight:800}.ghost-button{background:transparent}.icon-button{width:40px;padding:0}button:disabled{opacity:.42;cursor:not-allowed}.character-grid{width:min(1180px,100%);margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.character-card{min-height:210px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);display:grid;gap:6px;justify-items:start;padding:14px;text-align:left;cursor:pointer}.character-card img{width:76px;height:76px;object-fit:cover;border-radius:50%;border:1px solid var(--rule)}.character-card span{font-weight:800;font-size:1.15rem}.character-card small,.eyebrow{color:var(--text-2)}.create-panel{width:min(1180px,100%);margin:16px auto 0;display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:12px;align-items:end}.create-panel .section-title{align-self:center}.game-shell{width:100vw;height:100dvh;display:flex;flex-direction:column;background:var(--bg);overflow:hidden;--rail: 66px;--lcol: 236px;--social: 312px}.game-body{flex:1;min-height:0;display:grid;grid-template-columns:var(--rail) var(--lcol) minmax(0,1fr) var(--social)}.top-status{height:54px;flex:0 0 54px;z-index:20;border-bottom:1px solid rgba(0,188,212,.18);background:var(--void);display:flex;align-items:center;gap:18px;padding:0 18px}.location-block h1{font-size:1.05rem;line-height:1.1}.location-block p:last-child{color:var(--text-2);font-size:.78rem}.status-dot{width:11px;height:11px;border-radius:50%;background:var(--text-2)}.status-dot.connected{background:var(--emerald)}.status-dot.reconnecting,.status-dot.connecting{background:var(--amber)}.status-dot.error,.status-dot.closed{background:var(--crimson)}.game-stage{position:relative;min-width:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.pixi-host,.pixi-canvas,.room-backdrop{position:absolute;top:0;right:0;bottom:0;left:0}.pixi-host{pointer-events:none;z-index:5}.pixi-canvas{width:100%;height:100%}.room-backdrop{background:linear-gradient(#0a0a0a5c,#0a0a0ad6),url(/images/the_library.png) center / cover no-repeat;filter:saturate(.9)}.cockpit{position:relative;z-index:2;height:100%;display:grid;grid-template-rows:minmax(0,1fr) auto}.cockpit-main{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px;padding:14px}.upper-band{display:grid;grid-template-columns:220px minmax(0,1fr);gap:12px}.room-summary,.mini-map,.entity-lane,.party-card,.sheet-panel,.modal-panel,.side-rails section{border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.room-summary{padding:14px}.room-summary h2{font-size:clamp(1.5rem,3vw,2.4rem);margin:4px 0 8px}.room-summary p:last-child{color:var(--text-2);line-height:1.45;max-width:74ch}.mini-map{min-height:150px;padding:12px;text-align:left;cursor:pointer}.mini-map-header{display:flex;justify-content:space-between;color:var(--text-2);margin-bottom:9px}.character-panel .mini-map{flex:1;min-height:0}.interaction-zone{min-height:0;display:grid;align-content:end;gap:10px}.entity-lane{padding:10px}.entity-lane h3{color:var(--text-2);font-size:.82rem;margin-bottom:8px}.entity-scroll{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px}.entity-chip{flex:0 0 260px;min-height:72px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:9px;align-items:center;padding:8px}.entity-icon{width:34px;height:34px;display:grid;place-items:center;border-radius:var(--r-2);background:#ffffff1a;font-weight:800}.entity-chip strong,.entity-chip small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entity-chip small{color:var(--text-2)}.chip-actions,.inline-actions{display:flex;gap:6px}.chip-actions button{min-width:34px;min-height:34px;padding:0}.bottom-command-zone{padding:0 14px 14px;display:grid;gap:8px}.party-strip{display:flex;gap:8px;overflow-x:auto}.party-card{flex:1 0 150px;padding:9px;min-width:0}.party-card span{display:block;color:var(--text-2);font-size:.76rem}.party-card strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.meter{overflow:hidden;border-radius:4px;background:#ffffff24;height:5px;margin-top:8px}.meter span{display:block;height:100%;background:var(--emerald)}.command-dock{display:grid;grid-template-columns:260px minmax(0,1fr);gap:10px;align-items:stretch}.compass-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.direction-button{min-height:48px;border:1px solid var(--rule);border-radius:var(--r-2);background:#ffffff12;font-weight:900}.direction-button.available{background:#00bcd429;border-color:#00bcd46b}.direction-button.hidden-exit{opacity:.62;border-style:dashed}.quick-actions,.skill-tray{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.quick-actions button,.skill-tray button{min-height:48px}.side-rails{min-height:0;border-left:1px solid var(--rule);background:var(--night);display:flex;flex-direction:column;overflow:hidden}.side-rails section{min-height:0;padding:10px;display:grid;grid-template-rows:auto minmax(0,1fr);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.side-rails h2{font-size:.88rem;color:var(--text-2);margin-bottom:8px}.rail-list,.log-list,.dense-list{overflow:auto;display:grid;align-content:start;gap:8px}.rail-list p,.log-list p,.dense-list>div,.reading-block{border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);padding:9px;color:var(--text)}.combat-cockpit{background:radial-gradient(circle at 50% 35%,rgba(244,67,54,.18),transparent 40%),linear-gradient(#0a0c1080,#0a0c10e0)}.sheet-backdrop,.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#00000094;display:grid;place-items:end center;padding:18px}.modal-backdrop{place-items:center}.sheet-panel,.modal-panel{width:min(1120px,100%);max-height:min(82dvh,860px);overflow:hidden;padding:14px;box-shadow:var(--elev-modal);display:grid;grid-template-rows:auto minmax(0,1fr)}.modal-panel{width:min(620px,100%)}.modal-panel--compact{width:min(420px,100%)}.companion-levelup{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:start}.companion-levelup__mark{width:48px;height:48px;display:grid;place-items:center;border-radius:var(--r-2);color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,transparent);border:1px solid color-mix(in srgb,var(--amber) 38%,transparent)}.companion-levelup__copy{min-width:0;display:grid;gap:4px}.companion-levelup__copy strong{font-family:var(--font-display);font-size:1.08rem;line-height:1.2}.companion-levelup__copy span,.companion-levelup small{color:var(--text-2)}.companion-levelup__chips{grid-column:1 / -1;display:flex;flex-wrap:wrap;gap:8px}.companion-levelup__chips span{border:1px solid var(--rule-strong);border-radius:var(--r-2);padding:6px 9px;color:var(--cyan);background:color-mix(in srgb,var(--cyan) 12%,transparent);font-size:.86rem;font-weight:700}.companion-levelup small,.companion-levelup .primary-action{grid-column:1 / -1}.companion-levelup .primary-action{justify-self:end}.sheet-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.sheet-grid{min-height:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.sheet-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-grid section{min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:8px}.dense-list strong,.dense-list span{display:block}.dense-list span{color:var(--text-2);font-size:.86rem}.toggle-row{min-height:42px;grid-template-columns:auto 1fr;align-items:center}.toggle-row input{width:18px;min-height:18px;padding:0}.audio-slider{min-height:58px}.audio-slider span{display:flex;justify-content:space-between;gap:12px}.audio-slider input[type=range]{min-height:28px;padding:0;accent-color:var(--cyan)}.json-block{overflow:auto;min-height:0;max-height:56dvh;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);padding:12px;color:var(--text)}.empty-state{border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);padding:18px;color:var(--text-2)}.downed{opacity:.48}@media(max-width:1100px){body{overflow:auto}.game-shell{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.top-status{align-items:stretch}.tool-strip{overflow-x:auto;justify-content:flex-start;min-width:0}.tool-strip .icon-button{flex:0 0 auto}.side-rails{display:none}}@media(max-width:760px){.top-status{min-height:60px;padding:7px}.location-block h1{font-size:.95rem}.upper-band,.command-dock,.sheet-grid,.sheet-grid.two,.create-panel{grid-template-columns:1fr}.cockpit-main{padding:10px}.mini-map{min-height:120px}.entity-chip{flex-basis:230px}.bottom-command-zone{padding:0 10px 10px}.quick-actions,.skill-tray{grid-template-columns:repeat(2,minmax(0,1fr))}.sheet-backdrop{padding:0}.sheet-panel{border-radius:8px 8px 0 0;max-height:88dvh}}[data-theme=light] .top-status{-webkit-backdrop-filter:none;backdrop-filter:none}[data-theme=light] .sheet-backdrop,[data-theme=light] .modal-backdrop{background:#14182173}[data-theme=light] .room-backdrop{filter:saturate(.7) brightness(1.1)}[data-theme=light] .direction-button.available{background:#0097a71a;border-color:#0097a761}[data-theme=light] .combat-cockpit{background:radial-gradient(circle at 50% 35%,rgba(211,47,47,.1),transparent 40%),linear-gradient(#f7f8fa80,#e7e9ede0)}[data-theme=light] .entity-icon,[data-theme=light] .meter,[data-theme=light] .direction-button{background:var(--night-3)}.brand-mark{font-family:var(--font-display);font-weight:900;font-size:1.15rem;letter-spacing:.12em;color:var(--cyan);text-shadow:0 0 18px rgba(0,188,212,.45);flex-shrink:0}.brand-mark span{color:var(--amber)}.breadcrumb-trail{font-family:var(--font-display);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.breadcrumb-trail b{color:var(--amber);font-weight:600}.topbar-spacer{flex:1}.topbar-stat{display:flex;align-items:center;gap:6px;font-family:var(--font-display);font-size:.65rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);white-space:nowrap}.topbar-stat b{font-family:var(--font-mono);letter-spacing:0;color:var(--text);font-weight:500;font-size:.78rem}.topbar-dot{width:7px;height:7px;border-radius:50%;background:var(--text-3);flex-shrink:0}.topbar-dot.connected{background:var(--emerald);box-shadow:0 0 8px #4caf5099}.topbar-dot.reconnecting,.topbar-dot.connecting{background:var(--amber)}.topbar-dot.error,.topbar-dot.closed{background:var(--crimson)}.topbar-divider{width:1px;height:20px;background:var(--rule-strong)}.topbar-avatar{width:34px;height:34px;border-radius:50%;object-fit:cover;border:2px solid var(--rule-strong)}.topbar-avatar-placeholder{width:34px;height:34px;border-radius:50%;background:var(--night-2);border:2px solid var(--rule-strong);display:grid;place-items:center;font-family:var(--font-display);font-size:.78rem;color:var(--text-3)}.left-nav{background:var(--void);border-right:1px solid var(--rule);display:flex;flex-direction:column;align-items:center;padding:6px 0;gap:2px}.nav-btn{width:52px;height:50px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:none;border-radius:var(--r-2);background:transparent;color:var(--text-3);cursor:pointer;padding:0;font-size:.5rem;letter-spacing:.08em;text-transform:uppercase;transition:color .12s,background .12s}.nav-btn:hover{color:var(--text-2);background:#ffffff0d}.nav-btn.nav-active{color:var(--cyan);background:#00bcd41a;box-shadow:0 0 16px #00bcd44d,inset 0 0 0 1px #00bcd459;border-radius:var(--r-2)}.nav-spacer{flex:1}.character-panel{background:var(--night-2);border-right:1px solid var(--rule);display:flex;flex-direction:column;overflow:hidden;min-height:0}.char-card{padding:10px 12px 12px;border-bottom:1px solid var(--rule);flex-shrink:0}.char-portrait-row{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}.char-portrait{width:48px;height:48px;border-radius:50%;object-fit:cover;border:2px solid var(--rule-strong);flex-shrink:0}.char-portrait-placeholder{width:48px;height:48px;border-radius:50%;border:2px solid var(--rule-strong);background:var(--night-2);display:grid;place-items:center;flex-shrink:0;font-family:var(--font-display);font-size:1rem;color:var(--text-3)}.char-identity{min-width:0}.char-identity h2{font-family:var(--font-display);font-size:1.02rem;font-weight:700;color:var(--text);line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.char-identity small{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);display:block;margin-top:2px}.stat-bars{display:grid;gap:4px}.stat-row{display:grid;grid-template-columns:26px minmax(0,1fr) 52px;align-items:center;gap:6px}.stat-label{font-family:var(--font-mono);font-size:.62rem;color:var(--text-3);letter-spacing:.05em}.stat-value{font-family:var(--font-mono);font-size:.6rem;color:var(--text-2);text-align:right}.bar-track{height:5px;border-radius:3px;background:#ffffff1a;overflow:hidden}.bar-fill{width:100%;height:100%;border-radius:3px;transform-origin:left;transition:transform .4s ease}.bar-hp{background:linear-gradient(90deg,#B71C1C,var(--crimson));box-shadow:0 0 8px #f4433673}.bar-mp{background:linear-gradient(90deg,var(--cyan-deep),var(--cyan));box-shadow:0 0 8px #00bcd473}.bar-xp{background:linear-gradient(90deg,var(--amber),#FFD180);box-shadow:0 0 8px #ffa72666}[data-theme=light] .bar-track{background:var(--night-3)}.panel-section{padding:7px 12px 8px;border-bottom:1px solid var(--rule);flex-shrink:0}.panel-section-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.panel-section-hdr h3{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.panel-section-hdr span{font-size:.6rem;color:var(--cyan);font-family:var(--font-mono);cursor:pointer}.party-member-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:center;margin-bottom:5px}.party-avatar-circle{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1px solid var(--rule);background:var(--night-2);display:grid;place-items:center;font-size:.65rem;color:var(--text-3);font-family:var(--font-display);flex-shrink:0;overflow:hidden}.party-member-name{font-size:.75rem;font-weight:600;color:var(--text);display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.2}.party-member-sub{font-size:.58rem;color:var(--text-3);letter-spacing:.06em;text-transform:uppercase}.party-member-bars{display:grid;gap:2px;margin-top:3px}.party-list{max-height:30%;overflow-y:auto;scrollbar-width:thin}.party-member-btn{width:100%;padding:3px 4px;margin:0 -4px 2px;box-sizing:content-box;border:0;border-radius:var(--r-2);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.party-member-btn:hover{background:color-mix(in srgb,var(--text) 6%,transparent)}.party-member-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:0}.party-member-text{min-width:0;display:block}.party-member-text .bar-track,.party-member-text .bar-fill{display:block}.party-avatar-circle img{width:100%;height:100%;object-fit:cover}.party-member-btn.is-downed{opacity:.55}.party-member-btn.is-downed .party-member-name{text-decoration:line-through}.quest-item{margin-bottom:5px;padding:6px 8px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);cursor:pointer}.quest-item:hover{border-color:#ffa72659}.quest-name{font-size:.72rem;font-weight:600;color:var(--amber);font-family:var(--font-display);display:block;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;letter-spacing:.03em}.quest-prog-track{height:3px;border-radius:2px;background:#ffffff1a;overflow:hidden;margin-top:4px}.quest-prog-fill{height:100%;background:var(--amber);border-radius:2px}.quest-prog-label{font-size:.58rem;color:var(--text-3);font-family:var(--font-mono)}[data-theme=light] .quest-prog-track{background:var(--night-3)}[data-theme=dark] .character-panel{background:var(--night-2)}[data-theme=dark] .left-nav{background:var(--void)}[data-theme=dark] .social-panel{background:var(--night-2)}[data-theme=dark] .room-header{background:var(--void)}[data-theme=dark] .explore-action-bar{background:var(--night-2)}.explore-center{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden;position:relative}.room-header{padding:8px 14px 7px;background:var(--void);border-bottom:1px solid rgba(255,167,38,.16);display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-shrink:0}.room-header-left{min-width:0}.room-zone-label{font-size:.58rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-3);font-family:var(--font-display)}.room-title-display{font-family:var(--font-display);font-size:clamp(1.1rem,2.2vw,1.7rem);font-weight:700;color:var(--amber);line-height:1.1;margin:0}.exit-pills{display:flex;gap:5px;flex-shrink:0;flex-wrap:wrap;justify-content:flex-end;max-width:240px}.exit-pill{padding:3px 9px;border:1px solid rgba(255,167,38,.4);border-radius:2px;background:#ffa72612;color:var(--amber);font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;font-family:var(--font-display);cursor:pointer;white-space:nowrap;transition:background .12s;border-width:1px}.exit-pill:hover:not(:disabled){background:#ffa72629}.exit-pill:disabled{opacity:.38;cursor:not-allowed}.room-image-wrap{position:relative;flex:0 0 210px;overflow:hidden;background:var(--void)}.room-image-wrap.no-image{background:radial-gradient(ellipse 80% 60% at 50% 40%,rgba(0,188,212,.04) 0%,transparent 70%),linear-gradient(180deg,var(--night-3) 0%,var(--night) 40%,var(--void) 100%)}[data-theme=dark] .room-image-wrap.no-image{background:radial-gradient(ellipse 70% 50% at 50% 30%,rgba(0,188,212,.07) 0%,transparent 60%),radial-gradient(ellipse 50% 40% at 50% 80%,rgba(255,167,38,.04) 0%,transparent 55%),linear-gradient(180deg,#1d1d1d,#121212 60%,#0a0a0a)}[data-theme=dark] .narrative-area{background:linear-gradient(180deg,#12121200,#0a0a0a66)}.room-image-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:saturate(.85)}.room-image-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(#07080d38,#07080dd1)}.room-image-ambient{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.room-compass{position:absolute;right:10px;bottom:10px;display:grid;grid-template-columns:repeat(3,32px);grid-template-rows:repeat(3,32px);gap:4px}.compass-btn{display:grid;place-items:center;border:1px solid rgba(0,188,212,.32);border-radius:3px;background:#07080db8;color:var(--cyan);font-family:var(--font-display);font-size:.68rem;font-weight:700;letter-spacing:.06em;cursor:pointer;transition:background .12s,border-color .12s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.compass-btn.available{border-color:#00bcd499;background:#00bcd424}.compass-btn.available:hover{background:#00bcd43d}.compass-btn:disabled{opacity:.2;cursor:not-allowed}.compass-btn.hidden-exit{border-style:dashed;opacity:.5}.narrative-area{flex:1;min-height:0;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:0;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.narrative-inner{display:flex;flex-direction:column;gap:8px}.narr-desc{font-style:italic;color:var(--text);line-height:1.55;font-size:.88rem}.narr-exits{font-size:.8rem;color:var(--text-3);line-height:1.5}.narr-exit-link{color:var(--cyan);cursor:pointer;font-weight:500}.narr-exit-link:hover{text-decoration:underline}.narr-entity{font-size:.86rem;color:var(--text-2);line-height:1.45}.narr-npc-name{color:var(--amber);font-weight:600}.narr-speech{color:var(--cyan)}.narr-msg{font-size:.84rem;color:var(--text-2);line-height:1.45;padding:4px 0;border-top:1px solid var(--rule)}.narr-msg.success{color:var(--emerald)}.narr-msg.warning{color:var(--amber)}.narr-msg.error{color:var(--crimson)}.narr-ambient{font-style:italic;font-size:.8rem;color:var(--text-3);line-height:1.4}.explore-action-bar{flex-shrink:0;padding:7px 12px;border-top:1px solid var(--rule);background:var(--night-2);display:flex;gap:7px;overflow-x:auto;align-items:center;scrollbar-width:thin;scrollbar-color:var(--rule) transparent}.action-btn{display:flex;align-items:center;gap:6px;padding:6px 14px;border:1px solid var(--rule-strong);border-radius:3px;background:var(--night-2);color:var(--text-2);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;font-family:var(--font-display);cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,color .12s;flex-shrink:0;min-height:36px}.action-btn:hover:not(:disabled){background:#ffffff17;border-color:#ffffff52;color:var(--text)}.action-btn:disabled{opacity:.35;cursor:not-allowed}.action-btn.npc-action{border-color:#ffa72661;color:var(--amber)}.action-btn.npc-action:hover:not(:disabled){background:#ffa7261a;border-color:#ffa726a6}.action-btn.item-action{border-color:#00bcd447;color:var(--cyan)}.action-btn.item-action:hover:not(:disabled){background:#00bcd414;border-color:#00bcd48c}.cmd-hint-bar{height:30px;flex:0 0 30px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:var(--void);border-top:1px solid var(--rule);font-size:.66rem;color:var(--text-3);font-family:var(--font-mono);flex-shrink:0}.cmd-hint-bar kbd{display:inline-flex;align-items:center;padding:1px 5px;border:1px solid var(--rule-strong);border-radius:3px;font-family:var(--font-mono);font-size:.62rem;color:var(--text-2);margin-right:4px;background:var(--night-2)}.social-panel{background:var(--night-2);border-left:1px solid var(--rule);display:flex;flex-direction:column;min-height:0;overflow:hidden}.social-hdr{padding:9px 12px 0;flex-shrink:0}.social-hdr-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.social-hdr-title{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.social-online{font-size:.65rem;color:var(--emerald);font-family:var(--font-mono);display:flex;align-items:center;gap:4px}.social-online:before{content:"";display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--emerald)}.social-channels{display:flex;overflow-x:auto;border-bottom:1px solid var(--rule);scrollbar-width:none}.social-channels::-webkit-scrollbar{display:none}.channel-tab{padding:5px 9px;font-size:.65rem;color:var(--text-2);cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap;display:flex;align-items:center;gap:3px;transition:color .12s;flex-shrink:0;background:none;border-top:none;border-left:none;border-right:none}.channel-tab:hover{color:var(--text)}.channel-tab.ch-active{color:var(--cyan);border-bottom-color:var(--cyan)}.channel-badge{background:var(--crimson);color:#fff;border-radius:8px;padding:1px 4px;font-size:.54rem;font-weight:700}.social-messages{flex:1;min-height:0;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:7px;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.social-msg-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:7px;align-items:start}.social-avatar-circle{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1px solid var(--rule);background:var(--night-2);display:grid;place-items:center;font-size:.65rem;color:var(--text-3);font-family:var(--font-display);overflow:hidden;flex-shrink:0}.social-msg-content{min-width:0}.social-msg-hdr{display:flex;align-items:baseline;gap:5px;margin-bottom:2px;flex-wrap:wrap}.social-msg-name{font-family:var(--font-display);font-size:.72rem;font-weight:700;color:var(--text);letter-spacing:.04em}.social-msg-name.is-you{color:var(--amber)}.social-msg-time{font-size:.58rem;color:var(--text-3);font-family:var(--font-mono)}.social-msg-text{font-size:.78rem;color:var(--text-2);line-height:1.4;word-break:break-word}.social-online-list{flex-shrink:0;max-height:46%;display:flex;flex-direction:column;border-bottom:1px solid var(--rule)}.social-online-list__hdr{display:flex;align-items:center;gap:4px;padding:4px 8px 4px 12px}.social-online-list__toggle{flex:1;min-width:0;min-height:28px;display:flex;align-items:center;gap:6px;padding:0;border:0;background:none;color:var(--text-3);font:inherit;cursor:pointer}.social-online-list__toggle:hover{color:var(--text-2)}.social-online-list__toggle:focus-visible,.social-icon-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.social-online-list__dot{width:6px;height:6px;border-radius:50%;background:var(--emerald);flex-shrink:0}.social-online-list__title{font-size:.6rem;letter-spacing:.12em;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-online-list__count{font-family:var(--font-mono);font-size:.65rem;color:var(--emerald)}.social-online-list__empty{margin:0;padding:2px 12px 9px;font-size:.72rem;color:var(--text-3)}.social-online-list__rows{list-style:none;margin:0;padding:0 4px 6px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.social-online-list__more{padding:4px 8px 0;font-size:.66rem;color:var(--text-3)}.social-online-row{display:flex;align-items:center;gap:7px;min-height:34px;padding:2px 4px 2px 8px;border-radius:var(--r-2)}.social-online-row:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.social-online-row__avatar{width:24px;height:24px;border-radius:6px;border:1px solid var(--rule);background:var(--night);display:grid;place-items:center;flex-shrink:0;overflow:hidden;font-family:var(--font-display);font-size:.62rem;color:var(--text-3)}.social-online-row__avatar img{width:100%;height:100%;object-fit:cover}.social-online-row__text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.2}.social-online-row__name,.social-online-row__detail{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.social-online-row__name{font-size:.74rem;font-weight:600;color:var(--text)}.social-online-row__you{margin-left:6px;padding:0 5px;border:1px solid color-mix(in srgb,var(--amber) 55%,transparent);border-radius:999px;color:var(--amber);font-size:.56rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;vertical-align:1px}.social-online-row__detail{font-size:.62rem;color:var(--text-3)}.social-online-row__detail.scope-area{color:var(--emerald)}.social-online-row__detail.scope-zone{color:var(--cyan)}.social-icon-btn{width:28px;height:28px;display:grid;place-items:center;flex-shrink:0;padding:0;border:0;border-radius:var(--r-2);background:none;color:var(--text-3);cursor:pointer}.social-icon-btn:hover:not(:disabled){color:var(--cyan);background:color-mix(in srgb,var(--cyan) 10%,transparent)}.social-icon-btn:disabled{opacity:.4;cursor:default}.social-input-wrap{padding:7px 8px 8px;border-top:1px solid var(--rule);display:flex;gap:6px;flex-shrink:0}.social-input-field{flex:1;min-height:34px;padding:0 10px;font-size:.78rem;background:var(--night-2);border:1px solid var(--rule);border-radius:var(--r-2);color:var(--text);outline:none}.social-input-field:focus{border-color:#00bcd466}.social-send-btn{min-width:52px;min-height:34px;padding:0 10px;background:var(--cyan-deep);border:none;border-radius:var(--r-2);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.06em;cursor:pointer;flex-shrink:0;font-family:var(--font-display);transition:background .12s}.social-send-btn:hover{background:var(--cyan);color:var(--void)}@media(max-width:1100px){.game-shell{--social: 0px}.game-body{grid-template-columns:var(--rail) var(--lcol) minmax(0,1fr)}.social-panel{display:none}}@media(max-width:820px){.game-shell{--lcol: 0px;--rail: 0px}.game-body{grid-template-columns:minmax(0,1fr)}.left-nav,.character-panel{display:none}}[data-theme=light] .room-image-overlay{background:linear-gradient(#f7f8fa26,#e7e9edbf)}[data-theme=light] .compass-btn{background:#f7f8fae0;color:var(--cyan);border-color:#0097a759}[data-theme=light] .compass-btn.available{border-color:#0097a7b3;background:#0097a71f;color:var(--cyan)}[data-theme=light] .exit-pill{border-color:#c7780066;background:#c7780012;color:var(--amber)}[data-theme=light] .social-send-btn{background:var(--cyan-deep);color:#fff}.combat-stage{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative}.exit-pill.flee{border-color:#f4433666;background:#f4433614;color:#ff8a80}.exit-pill.flee:hover:not(:disabled){background:#f443362e}.battle{flex:1;display:grid;grid-template-columns:158px minmax(0,1fr) 218px;gap:12px;padding:14px;min-height:0;position:relative;overflow:hidden}.battle-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;filter:brightness(.2) saturate(.7);z-index:0}[data-theme=light] .battle-bg{filter:brightness(.95) saturate(.5);opacity:.22}.battle>.allies,.battle>.foes,.battle>.blog{position:relative;z-index:1}.battle>.tgt-line{z-index:2}.col-lbl{font-family:var(--font-display);font-size:.6rem;letter-spacing:.2em;text-transform:uppercase;margin-bottom:9px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.col-lbl.foe{color:#ef9a9a}.col-lbl.ally{color:var(--cyan)}.col-lbl .count{font-family:var(--font-mono);letter-spacing:0;color:var(--text-3);font-size:.64rem}.foes,.allies{display:flex;flex-direction:column;min-height:0}.foes-list,.allies-list{display:flex;flex-direction:column;gap:9px;overflow-y:auto;min-height:0;padding-right:2px;scrollbar-width:thin;scrollbar-color:var(--rule-strong) transparent}.enemy{display:flex;gap:10px;padding:9px;border:1px solid rgba(244,67,54,.25);border-radius:9px;background:#140c0c99;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;text-align:left;width:100%;transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease)}[data-theme=light] .enemy{background:#d32f2f0f}.enemy:hover:not(:disabled){border-color:var(--crimson)}.enemy.tgt{border-color:var(--crimson);background:#f4433624;box-shadow:0 0 20px #f4433680}.enemy:disabled,.enemy.downed{opacity:.4;cursor:default}.ethumb{width:46px;height:46px;border-radius:8px;overflow:hidden;flex:0 0 auto;border:1px solid rgba(244,67,54,.3);background:var(--night-3);display:grid;place-items:center;color:#ef9a9a;font-family:var(--font-display);font-weight:700;font-size:1rem}.ethumb img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.9)}.einfo{flex:1;min-width:0}.ehead{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.ename{font-family:var(--font-display);font-size:.78rem;font-weight:600;color:#ffcdd2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}[data-theme=light] .ename{color:#b71c1c}.elvl{font-family:var(--font-mono);font-size:.62rem;color:var(--text-3);flex:0 0 auto}.ebar{height:6px;background:var(--void);border-radius:99px;overflow:hidden;margin-top:5px;border:1px solid rgba(0,0,0,.4)}.ebar i{display:block;height:100%;background:linear-gradient(90deg,#B71C1C,var(--crimson));box-shadow:0 0 6px #f4433680}.ehp{font-family:var(--font-mono);font-size:.58rem;color:var(--text-3);margin-top:3px;text-align:right}.epips{display:flex;gap:4px;margin-top:6px;flex-wrap:wrap}.pip{padding:1px 7px;border-radius:99px;font-family:var(--font-display);font-size:.54rem;letter-spacing:.06em;text-transform:uppercase;font-weight:600}.pip.burn{background:#ff57222e;color:#ffab91;border:1px solid rgba(255,87,34,.35)}.pip.frost{background:#00bcd426;color:#80deea;border:1px solid rgba(0,188,212,.35)}.pip.bleed{background:#f443362e;color:#ef9a9a;border:1px solid rgba(244,67,54,.35)}.pip.poison{background:#4caf5029;color:#a5d6a7;border:1px solid rgba(76,175,80,.35)}.pip.buff{background:#ffa72624;color:var(--amber);border:1px solid rgba(255,167,38,.3)}.blog{display:flex;flex-direction:column;justify-content:flex-end;border:1px solid var(--rule);border-radius:9px;background:#0a0a0a9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:13px;overflow:hidden;font-family:var(--font-mono);font-size:.8rem;line-height:1.55;position:relative;min-height:0}[data-theme=light] .blog{background:#ffffffd1}.blog-scroll{display:flex;flex-direction:column;overflow:hidden;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 24px);mask-image:linear-gradient(180deg,transparent 0,#000 24px)}.blog p{margin-bottom:8px;color:var(--text-2)}.blog .di{color:#ff8a65}.blog .di b{color:#e53935;font-weight:700}.blog .do{color:var(--amber)}.blog .do b{color:var(--amber);font-weight:700}.blog .crit{color:#ffd54f;text-shadow:0 0 6px rgba(255,213,79,.5);font-weight:600}.blog .heal{color:#81c784}.blog .sys{color:var(--text-3);font-size:.72rem}.tgt-line{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.pcard{padding:9px;border:1px solid rgba(0,188,212,.3);border-radius:9px;background:#08141899;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);flex-shrink:0}[data-theme=light] .pcard{background:#0097a712}.pcard.downed{opacity:.45}.pcard .pt{width:100%;height:62px;border-radius:6px;overflow:hidden;background:var(--night-3);border:1px solid rgba(0,188,212,.2);display:grid;place-items:center;color:var(--cyan);font-family:var(--font-display);font-weight:700;font-size:1.1rem}.pcard .pt img{width:100%;height:100%;object-fit:cover;object-position:center top}.pcard .pn{font-family:var(--font-display);font-size:.76rem;color:var(--text);margin:7px 0 5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pcard .pbars{display:flex;flex-direction:column;gap:4px}.pcard .mini{height:5px;background:var(--void);border-radius:99px;overflow:hidden}.pcard .mini i{display:block;height:100%}.pcard .mini i.hp{background:linear-gradient(90deg,#B71C1C,var(--crimson))}.pcard .mini i.mp{background:linear-gradient(90deg,var(--cyan-deep),var(--cyan))}.pcard .drag{font-family:var(--font-display);font-size:.52rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3);text-align:center;margin-top:6px}.spellbar{flex:0 0 auto;border-top:1px solid rgba(0,188,212,.15);background:var(--void);padding:11px 14px;display:flex;flex-direction:column;gap:10px}.schools{display:flex;gap:4px;border-bottom:1px solid var(--rule)}.school{padding:6px 13px;font-family:var(--font-display);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);border:none;border-bottom:2px solid transparent;margin-bottom:-1px;background:none;cursor:pointer}.school:hover{color:var(--text-2)}.school.on{color:var(--cyan);border-bottom-color:var(--cyan)}.school.on[data-school=fire]{color:#ff7043;border-bottom-color:#ff7043}.school.on[data-school=arcane]{color:#ce93d8;border-bottom-color:#ce93d8}.school.on[data-school=physical]{color:var(--amber);border-bottom-color:var(--amber)}.spells{display:flex;gap:8px;align-items:center}.spell{width:52px;height:52px;border-radius:9px;background:var(--night-2);border:1px solid rgba(255,167,38,.25);display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;overflow:hidden;padding:7px;cursor:pointer;color:var(--text-2);transition:border-color var(--duration-fast) var(--ease),box-shadow var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.spell img{width:100%;height:100%;object-fit:contain}.spell svg{width:26px;height:26px}.spell .glyph{font-size:1.4rem;line-height:1}.spell:hover:not(:disabled){border-color:var(--amber);box-shadow:0 0 16px #ffa72659;transform:translateY(-2px)}.spell.on{border-color:var(--cyan);box-shadow:0 0 16px #00bcd44d;color:var(--cyan)}.spell .key{position:absolute;bottom:2px;right:4px;font-family:var(--font-mono);font-size:.56rem;color:var(--text-3);background:var(--void);padding:0 3px;border-radius:2px}.spell:disabled{opacity:.4;cursor:not-allowed}.spell .cd{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a8;color:var(--text);display:flex;align-items:center;justify-content:center;font-family:var(--font-mono);font-weight:700}.spellbar .sp{flex:1}.cbtn{padding:0 15px;height:40px;border-radius:8px;font-family:var(--font-display);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;display:flex;align-items:center;gap:6px;cursor:pointer;white-space:nowrap;background:none}.cbtn.tgt{border:1px solid rgba(0,188,212,.3);color:var(--cyan);background:#00bcd40f}.cbtn.flee{border:1px solid rgba(244,67,54,.4);color:#ff8a80;background:#f4433614}.cbtn:hover:not(:disabled){filter:brightness(1.2)}.cbtn:disabled{opacity:.4;cursor:not-allowed}@media(max-width:1100px){.battle{grid-template-columns:132px minmax(0,1fr) 188px;gap:9px}}@media(max-width:760px){.battle{grid-template-columns:minmax(0,1fr);grid-auto-rows:min-content;overflow-y:auto}.spells{flex-wrap:wrap}}.social-whisper-target{max-width:110px;flex:0 0 auto}.social-send-error{margin:0;padding:4px 10px 8px;color:var(--crimson);font-size:.72rem}.conn-banner{padding:6px 14px;font-size:.78rem;font-family:var(--font-ui);text-align:center;border-bottom:1px solid var(--rule-strong);animation:conn-banner-in var(--duration-fast) var(--ease)}.conn-banner--warn{background:var(--night-3);color:var(--amber)}.conn-banner--error{background:var(--night-3);color:var(--crimson)}@keyframes conn-banner-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}.overlay-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;background:#00000094;z-index:60;animation:overlay-fade var(--duration-fast) var(--ease)}.overlay-panel{background:var(--night-2);border:1px solid var(--rule-strong);border-radius:var(--r-2);box-shadow:var(--elev-modal);padding:28px 32px;min-width:320px;max-width:min(520px,92vw);text-align:center}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}.levelup-eyebrow{margin:0;font-family:var(--font-ui);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--amber)}.levelup-title{margin:4px 0 20px;font-family:var(--font-display);font-size:1.9rem;color:var(--text)}.levelup-gains{display:flex;justify-content:center;gap:18px;flex-wrap:wrap;margin-bottom:16px}.levelup-gain{display:flex;flex-direction:column;gap:2px;min-width:72px}.levelup-gain-label{font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-3)}.levelup-gain-value{font-family:var(--font-mono);font-size:1.1rem;color:var(--emerald)}.levelup-points{margin:0 0 20px;font-size:.82rem;color:var(--cyan)}@media(max-width:900px){.overlay-panel{min-width:0;width:92vw;padding:22px 18px}}.levelup-alloc{border-top:1px solid var(--rule);margin:4px 0 18px;padding-top:14px;text-align:left}.levelup-alloc-hdr{margin:0 0 10px;font-size:.76rem;color:var(--text-2);text-align:center}.levelup-alloc-row{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:8px;padding:3px 0}.levelup-alloc-name{font-size:.8rem;color:var(--text-2);text-transform:capitalize}.levelup-alloc-value{font-family:var(--font-mono);font-size:.85rem;color:var(--text);min-width:28px;text-align:right}.levelup-alloc-row .icon-button:disabled{opacity:.35;cursor:not-allowed}.chat-attachment{--chip-accent: var(--text-3);display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;margin-top:6px;padding:6px 8px;border:1px solid color-mix(in srgb,var(--chip-accent) 34%,var(--rule-strong));border-radius:var(--r-2);background:color-mix(in srgb,var(--chip-accent) 8%,var(--night-3))}.chat-attachment--item{--chip-accent: var(--amber)}.chat-attachment--monster{--chip-accent: var(--crimson)}.chat-attachment--quest{--chip-accent: var(--cyan)}.chat-attachment-kind{font-size:.62rem;text-transform:uppercase;letter-spacing:.1em;color:var(--chip-accent)}.chat-attachment-name{font-size:.8rem;color:var(--text)}.chat-attachment-meta{font-family:var(--font-mono);font-size:.7rem;color:var(--text-2)}.craft-result-eyebrow{margin:0;font-family:var(--font-ui);font-size:.7rem;letter-spacing:.18em;text-transform:uppercase;color:var(--emerald)}.craft-result--failure .craft-result-eyebrow{color:var(--crimson)}.craft-result-title{margin:4px 0 12px;font-family:var(--font-display);font-size:1.6rem;color:var(--text)}.craft-result-qty{font-family:var(--font-mono);font-size:1.1rem;color:var(--text-2)}.craft-result-sub{margin:0 0 14px;font-size:.85rem;color:var(--cyan)}.craft-result-sub--failure{color:var(--crimson)}.craft-result-rows{display:flex;flex-direction:column;gap:4px;margin:0 0 16px;text-align:left}.craft-result-row{display:flex;justify-content:space-between;gap:16px;font-size:.82rem;color:var(--text-2)}.craft-result-row strong{font-family:var(--font-mono);color:var(--emerald)}.companion-list{display:flex;flex-direction:column;gap:12px}.companion-card{padding:12px 14px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-3)}.companion-card--downed{opacity:.55}.companion-card-hdr{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px}.companion-name{display:block;font-size:.95rem;color:var(--text)}.companion-meta{font-size:.72rem;color:var(--text-3);text-transform:capitalize}.companion-hp{font-family:var(--font-mono);font-size:.78rem;color:var(--text-2)}.companion-stances{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0}.chip-btn{padding:3px 10px;border:1px solid var(--rule-strong);border-radius:999px;background:transparent;color:var(--text-2);font-size:.72rem;text-transform:capitalize;cursor:pointer;transition:color var(--duration-fast) var(--ease),border-color var(--duration-fast) var(--ease)}.chip-btn:hover{color:var(--text)}.chip-btn--on{border-color:var(--cyan);color:var(--cyan)}.vitals-bar{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;width:100%}.vitals-bar-track{position:relative;overflow:hidden;height:8px;border-radius:4px;background:var(--rule-strong)}.vitals-bar--sm .vitals-bar-track{height:5px}.vitals-bar-fill,.vitals-bar-trail,.vitals-bar-barrier{position:absolute;inset-block:0;left:0;display:block;border-radius:4px}.vitals-bar-fill{background:var(--vitals-fill)}.vitals-bar-trail{background:var(--vitals-trail);transform-origin:left;transition:transform .4s var(--ease)}.vitals-bar-barrier{background-image:repeating-linear-gradient(135deg,var(--vitals-barrier) 0 4px,transparent 4px 8px);opacity:.9}.vitals-bar-values{font-family:var(--font-mono);font-size:.72rem;color:var(--text-2);white-space:nowrap}.vitals-bar--health{--vitals-fill: var(--emerald)}.vitals-bar--mana{--vitals-fill: var(--cyan)}.vitals-bar--rage{--vitals-fill: var(--crimson)}.vitals-bar--charge{--vitals-fill: var(--amber)}.vitals-bar--fury{--vitals-fill: var(--magenta)}.vitals-bar--meter{--vitals-fill: var(--text-3)}@media(prefers-reduced-motion:reduce){.vitals-bar-trail{transition:none}}.resource-meters{display:grid;gap:4px;margin-top:6px}.status-chips{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px}.status-chip{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:999px;border:1px solid var(--rule-strong);background:var(--night-3);font-size:.7rem;line-height:1.6;color:var(--text-2)}.status-chip b{font-family:var(--font-mono);color:var(--text)}.status-chip--ignite{border-color:var(--status-ignite)}.status-chip--chill{border-color:var(--status-chill)}.status-chip--shock{border-color:var(--status-shock)}.status-chip--wound{border-color:var(--status-wound)}.status-chip--guard{border-color:var(--status-guard)}.status-chip--reaction{max-width:100%;min-width:0;border-color:var(--status-reaction);background:color-mix(in srgb,var(--magenta) 12%,var(--night-3));color:var(--text)}.status-chip__label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-meters__mana--pulse{border-radius:3px;animation:mana-pulse .6s var(--ease)}@keyframes mana-pulse{0%{box-shadow:0 0 0 0 transparent;filter:brightness(1)}35%{box-shadow:0 0 10px 2px color-mix(in srgb,var(--cyan) 70%,transparent);filter:brightness(1.45)}to{box-shadow:0 0 0 0 transparent;filter:brightness(1)}}@media(prefers-reduced-motion:reduce){.resource-meters__mana--pulse{animation:none;box-shadow:0 0 0 1px var(--cyan)}}.telegraph-line{display:grid;gap:4px;margin-bottom:6px}.telegraph-line__row{--tg: var(--amber);position:relative;display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;padding:4px 8px 7px;border:1px solid color-mix(in srgb,var(--tg) 55%,var(--rule));border-radius:var(--r-2);background:color-mix(in srgb,var(--tg) 10%,var(--night-2));font-size:.8rem;overflow:hidden}.telegraph-line__row--smash{--tg: var(--crimson)}.telegraph-line__row--chant{--tg: var(--emerald)}.telegraph-line__text{flex:1 1 auto;min-width:0;color:var(--text-2)}.telegraph-line__who{color:var(--text);font-weight:600}.telegraph-line__move{color:var(--tg)}.telegraph-line__answers{display:flex;flex-wrap:wrap;gap:3px}.telegraph-line__answer{padding:0 5px;border-radius:3px;font-size:.66rem;font-weight:700;line-height:1.6;color:var(--amber);background:color-mix(in srgb,var(--amber) 16%,transparent)}.telegraph-line__bar{position:absolute;left:0;bottom:0;height:3px;width:calc(var(--left, 0) * 100%);background:var(--tg)}.damage-float{position:absolute;left:50%;bottom:100%;pointer-events:none;font-family:var(--font-mono);font-weight:700;font-size:1.05rem;color:var(--damage-neutral);text-shadow:0 1px 3px var(--damage-float-shadow);animation:damage-rise 1.2s var(--ease) forwards;white-space:nowrap;z-index:3}.damage-float--crit{font-size:1.6rem}.damage-float--kill{font-size:1.75rem;letter-spacing:.04em}.damage-float--fire{color:var(--damage-fire)}.damage-float--ice{color:var(--damage-ice)}.damage-float--lightning{color:var(--damage-lightning)}.damage-float--poison{color:var(--damage-poison)}.damage-float--arcane{color:var(--magenta)}.damage-float--physical{color:var(--damage-neutral)}.damage-float--heal{color:var(--emerald)}.damage-float__tag{display:block;font-family:var(--font-ui);font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-align:center}.damage-float--tagged{bottom:calc(100% - 1.6em)}.damage-float__tag--reaction{color:var(--magenta)}.damage-float__tag--reflex{color:var(--cyan)}.damage-float--nil{font-size:.9rem;font-weight:500;color:var(--text-3);text-transform:uppercase}@keyframes damage-rise{0%{opacity:0;transform:translate(var(--float-x),var(--float-y)) scale(var(--float-scale, 1))}12%{opacity:1}to{opacity:0;transform:translate(var(--float-x),calc(var(--float-y) - 46px)) scale(var(--float-scale, 1))}}.is-hit{animation:hit-flash .26s var(--ease)}.is-hit--crit{animation:hit-flash .26s var(--ease),hit-shake .26s var(--ease)}@keyframes hit-flash{0%{box-shadow:inset 0 0 0 2px currentColor}to{box-shadow:inset 0 0 0 0 transparent}}@keyframes hit-shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}.is-hit--fire{color:var(--damage-fire)}.is-hit--ice{color:var(--damage-ice)}.is-hit--lightning{color:var(--damage-lightning)}.is-hit--poison{color:var(--damage-poison)}.is-hit--heal{color:var(--emerald)}.is-hit--arcane{color:var(--magenta)}.is-hit--physical,.is-hit--neutral{color:var(--damage-neutral)}@media(prefers-reduced-motion:reduce){.damage-float,.is-hit,.is-hit--crit{animation-duration:1ms;animation-iteration-count:1}}.is-hit--tier-light,.is-hit--tier-solid,.is-hit--tier-heavy,.is-hit--tier-massive{animation:hit-flash .26s var(--ease),hit-recoil .26s var(--ease)}.is-hit--tier-heavy,.is-hit--tier-massive{animation:hit-flash .26s var(--ease),hit-recoil .26s var(--ease),hit-shake-scaled .26s var(--ease)}.is-hit--crit.is-hit--tier-light,.is-hit--crit.is-hit--tier-solid{animation:hit-flash .26s var(--ease),hit-recoil .26s var(--ease)}@keyframes hit-recoil{0%{translate:0 0}30%{translate:0 var(--fx-recoil, -4px)}to{translate:0 0}}@keyframes hit-shake-scaled{0%,to{transform:translate(0)}25%{transform:translate(calc(var(--fx-intensity, .5) * -4px))}75%{transform:translate(calc(var(--fx-intensity, .5) * 4px))}}.combatant-aura{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-1;pointer-events:none;border-radius:inherit}@media(prefers-reduced-motion:reduce){.is-hit--tier-light,.is-hit--tier-solid,.is-hit--tier-heavy,.is-hit--tier-massive{animation:none}}.combat-cockpit{position:relative}.combat-fx-canvas{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;pointer-events:none}.combatant-card{position:relative;isolation:isolate;display:block;width:100%;min-width:0;text-align:left;padding:10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:var(--text)}.combatant-card.is-selected{border-color:var(--amber);box-shadow:0 0 0 1px var(--amber),0 0 22px var(--combatant-selected-glow)}.combatant-card.is-downed{opacity:.45;filter:grayscale(.7)}.combatant-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:center;margin-bottom:8px}.combatant-portrait{position:relative;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;overflow:hidden;background:var(--night-3);border:2px solid var(--rank-normal)}.combatant-card--companion .combatant-portrait{width:34px;height:34px}.combatant-portrait--elite{border-color:var(--rank-elite)}.combatant-portrait--boss{border-color:var(--rank-boss)}.combatant-portrait img{width:100%;height:100%;object-fit:cover}.combatant-portrait-fallback{font-family:var(--font-display);font-size:1.1rem;color:var(--text-3)}.combatant-identity{min-width:0;display:grid;gap:2px}.combatant-name{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combatant-meta{display:flex;gap:6px;align-items:center;font-size:.72rem;color:var(--text-2)}.rank-chip{font-style:normal;text-transform:uppercase;letter-spacing:.06em;padding:0 5px;border-radius:3px;border:1px solid currentColor}.rank-chip--elite{color:var(--rank-elite)}.rank-chip--boss{color:var(--rank-boss)}.combatant-level{font-family:var(--font-mono)}.combatant-floats{position:absolute;left:0;right:0;top:6px;height:0;pointer-events:none}.combat-cockpit{display:grid;grid-template-rows:minmax(0,1fr) auto auto;gap:12px;padding:14px;min-height:0}.combat-side{min-height:0}.combat-side--enemies{overflow-y:auto}.combatant-grid{display:grid;gap:10px;margin-top:6px}.combatant-grid--enemies{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.combatant-grid--allies{grid-template-columns:1.4fr repeat(3,minmax(0,1fr));align-items:start}.combat-target-line{margin-top:8px;font-size:.8rem;color:var(--text-2)}.combat-target-line strong{color:var(--amber)}@media(max-width:900px){.combatant-grid--enemies,.combatant-grid--allies{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.combatant-grid--enemies{grid-auto-flow:column;grid-auto-columns:minmax(168px,1fr);grid-template-columns:none;overflow-x:auto}}.area-map{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;min-height:0;height:100%}.area-map-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.area-map-title{font-family:var(--font-display);font-size:1.05rem}.area-map-floors{display:flex;gap:4px;margin-left:auto}.area-map-floor{padding:2px 9px;border-radius:999px;border:1px solid var(--rule-strong);background:var(--night-2);color:var(--text-2);font-size:.74rem}.area-map-floor.is-active{border-color:var(--cyan);color:var(--text)}.area-map-recenter{display:grid;place-items:center;width:30px;height:30px;border-radius:var(--r-2);border:1px solid var(--rule-strong);background:var(--night-2);color:var(--text-2)}.area-map-canvas{width:100%;height:100%;min-height:0;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night);touch-action:none;cursor:grab}.area-map-canvas:active{cursor:grabbing}.area-map-empty{display:grid;place-items:center;color:var(--text-3)}.area-map-edge{stroke:var(--rule-strong);stroke-width:3;stroke-linecap:round}.area-map-room-rect{fill:var(--night-3);stroke:var(--rule-strong);stroke-width:1.5;cursor:pointer}.area-map-room.is-current .area-map-room-rect{fill:var(--amber);stroke:var(--amber)}.area-map-room.is-selected .area-map-room-rect{stroke:var(--cyan);stroke-width:2.5}.area-map-chevron{fill:var(--text-3);font-size:11px}.area-map-poi circle{stroke:var(--night);stroke-width:1.5}.area-map-poi text{fill:var(--poi-badge-text);font-family:var(--font-ui);font-size:10px;font-weight:700}.area-map-poi--boss circle{fill:var(--poi-boss)}.area-map-poi--portal circle{fill:var(--poi-portal)}.area-map-poi--healing_well circle{fill:var(--poi-healing-well)}.area-map-poi--quest_npc circle{fill:var(--poi-quest-npc)}.area-map-poi--shopkeeper circle{fill:var(--poi-shopkeeper)}.area-map-poi--teacher circle{fill:var(--poi-teacher)}.area-map-callout-bg{fill:var(--night-2);stroke:var(--rule-strong);stroke-width:1}.area-map-callout-text{fill:var(--text);font-family:var(--font-ui);font-size:10px;font-weight:600}.map-legend{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0;font-size:.74rem;color:var(--text-2)}.map-legend-item{display:inline-flex;align-items:center;gap:5px}.map-legend-swatch{display:grid;place-items:center;width:16px;height:16px;border-radius:50%;color:var(--poi-badge-text);font-size:.62rem;font-weight:700}.map-legend-swatch--current{background:transparent;box-shadow:inset 0 0 0 2px var(--amber)}.map-legend-swatch--boss{background:var(--poi-boss)}.map-legend-swatch--portal{background:var(--poi-portal)}.map-legend-swatch--healing_well{background:var(--poi-healing-well)}.map-legend-swatch--quest_npc{background:var(--poi-quest-npc)}.map-legend-swatch--shopkeeper{background:var(--poi-shopkeeper)}.map-legend-swatch--teacher{background:var(--poi-teacher)}.mini-map-canvas{width:100%;height:calc(100% - 28px);min-height:108px}.mini-map-edge{stroke:var(--rule-strong);stroke-width:2.5;stroke-linecap:round}.mini-map-room-rect{fill:var(--night-3);stroke:var(--rule-strong);stroke-width:1.2}.mini-map-room.is-current .mini-map-room-rect{fill:var(--amber);stroke:var(--amber)}.mini-map-room.is-cross-area .mini-map-room-rect{fill:none;stroke:var(--cyan);stroke-dasharray:3 2}.mini-map-chevron{fill:var(--text-3);font-size:8px}.mini-map-poi-dot{stroke:var(--night);stroke-width:1}.mini-map-poi-dot--boss{fill:var(--poi-boss)}.mini-map-poi-dot--portal{fill:var(--poi-portal)}.mini-map-poi-dot--healing_well{fill:var(--poi-healing-well)}.mini-map-poi-dot--quest_npc{fill:var(--poi-quest-npc)}.mini-map-poi-dot--shopkeeper{fill:var(--poi-shopkeeper)}.mini-map-poi-dot--teacher{fill:var(--poi-teacher)}.sheet-backdrop--full{padding:0}.sheet-panel--full{width:100%;max-width:none;height:100dvh;max-height:none;border-radius:0;border-left:0;border-right:0;padding:12px max(16px,calc((100% - 1500px)/2))}.sheet-panel--full .sheet-header{margin-bottom:8px}.sheet-panel--full .sheet-header h2{font-size:1.1rem}.sheet-panel--full .icon-button{width:34px;min-height:34px}.score-sheet{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.score-banner{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(220px,1.4fr) auto;align-items:center;gap:18px;padding:12px 16px;border:1px solid var(--rule);border-radius:var(--r-2);background:radial-gradient(120% 180% at 0% 0%,color-mix(in srgb,var(--cyan) 10%,transparent),transparent 62%),linear-gradient(180deg,var(--night-3),var(--night-2));overflow:hidden}.score-banner:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,var(--cyan),var(--amber) 70%,transparent);opacity:.85}.score-banner__portrait{width:68px;height:68px;object-fit:cover;border-radius:var(--r-2);border:1px solid var(--rule-strong);background:var(--night);box-shadow:0 0 0 3px color-mix(in srgb,var(--cyan) 12%,transparent)}.score-banner__portrait--empty{display:grid;place-items:center;font-family:var(--font-display);font-size:2rem;color:var(--text-3)}.score-banner__identity{min-width:0}.score-banner__name{margin:0;font-family:var(--font-display);font-size:1.5rem;line-height:1.15;letter-spacing:.01em}.score-banner__meta{margin:4px 0 0;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.score-banner__vitals{display:grid;gap:8px;min-width:0}.score-vital{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:10px}.score-vital .bar-track{height:8px;border-radius:4px}.score-vital__label{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;color:var(--text-3)}.score-vital__value{display:grid;justify-items:end;font-family:var(--font-mono);font-size:.78rem;color:var(--text-2);white-space:nowrap}.score-vital__value small{font-size:.64rem;color:var(--text-3)}.score-banner__tally{display:grid;gap:6px;justify-items:end}.score-tally{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:var(--r-2);border:1px solid var(--rule-strong);font-family:var(--font-mono);font-weight:700;font-size:.86rem;white-space:nowrap}.score-tally small{font-family:var(--font-ui);font-weight:500;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.score-tally--gold{color:var(--amber);border-color:color-mix(in srgb,var(--amber) 34%,transparent);background:color-mix(in srgb,var(--amber) 10%,transparent)}.score-tally--points{color:var(--cyan);border-color:color-mix(in srgb,var(--cyan) 42%,transparent);background:color-mix(in srgb,var(--cyan) 12%,transparent);animation:score-points-pulse 2.4s var(--ease) infinite}@keyframes score-points-pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--cyan) 30%,transparent)}50%{box-shadow:0 0 0 4px color-mix(in srgb,var(--cyan) 0%,transparent)}}.score-banner__refresh{margin-top:8px;min-height:28px;padding:0 10px;font-size:.74rem;color:var(--text-3)}.score-banner__refresh:hover{color:var(--text)}.score-grid{min-height:0;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;align-content:start;gap:12px;padding-right:2px}.score-card{display:grid;align-content:start;gap:8px;padding:12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.score-card__title{margin:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding-bottom:8px;border-bottom:1px solid var(--rule);font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}.score-card__badge{padding:2px 8px;border-radius:999px;letter-spacing:.04em;text-transform:none;font-size:.68rem;color:var(--cyan);background:color-mix(in srgb,var(--cyan) 14%,transparent);border:1px solid color-mix(in srgb,var(--cyan) 38%,transparent)}.score-subhead{margin:2px 0 0;font-size:.66rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3)}.score-stats{margin:0;display:grid;gap:2px}.score-stat{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:3px 0;border-bottom:1px solid color-mix(in srgb,var(--rule) 55%,transparent)}.score-stat__label--explained{text-decoration:underline dotted var(--text-3);text-underline-offset:3px;cursor:help}.score-stat:last-child{border-bottom:0}.score-stat dt{min-width:0;font-size:.82rem;color:var(--text-2);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-stat__value{margin:0;display:flex;align-items:baseline;gap:6px;font-family:var(--font-mono);font-weight:600;font-size:.88rem;color:var(--text);white-space:nowrap}.score-stat__value small{font-size:.66rem;color:var(--text-3)}.score-stat__value--down{color:var(--crimson)}.score-stat--zero dt,.score-stat--zero .score-stat__value{color:var(--text-3)}.score-stat__meter{grid-column:1 / -1;grid-row:2;display:block;height:4px;border-radius:2px;background:var(--night);overflow:hidden}.score-stat__meter>span{display:block;width:100%;height:100%;border-radius:2px;background:linear-gradient(90deg,var(--cyan-deep),var(--cyan));transform-origin:left;transition:transform var(--duration-base) var(--ease)}.score-stat__meter--barrier>span{background:linear-gradient(90deg,var(--cyan-deep),var(--vitals-barrier))}@media(min-width:861px){.score-card--attributes{grid-row:span 2}}.score-attr{grid-template-columns:minmax(0,1fr) auto auto}.score-attr__pending{font-style:normal;font-size:.78rem;color:var(--cyan)}.score-attr__controls{display:flex;gap:4px}.score-step{width:30px;min-height:30px;padding:0;display:grid;place-items:center;border:1px solid var(--rule-strong);border-radius:var(--r-2);background:var(--night-3);color:var(--text-2);cursor:pointer;transition:background var(--duration-fast) var(--ease),color var(--duration-fast) var(--ease)}.score-step:hover:not(:disabled){background:color-mix(in srgb,var(--cyan) 18%,var(--night-3));color:var(--cyan)}.score-attr__footer{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.score-attr__footer .primary-action{width:auto}.score-chips{display:flex;flex-wrap:wrap;gap:6px}.score-chip{--chip-accent: var(--cyan);display:inline-flex;align-items:baseline;gap:5px;padding:4px 8px;border-radius:var(--r-2);border:1px solid color-mix(in srgb,var(--chip-accent) 40%,transparent);background:color-mix(in srgb,var(--chip-accent) 12%,transparent);font-size:.78rem}.score-chip strong{color:var(--chip-accent);font-weight:700}.score-chip i{font-style:normal}.score-chip em{font-style:normal;font-family:var(--font-mono);font-size:.72rem;color:var(--text-2)}.score-chip small{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3)}@media(prefers-reduced-motion:reduce){.score-tally--points{animation:none}.score-stat__meter>span{transition:none}}@media(max-width:860px){.score-banner{grid-template-columns:auto minmax(0,1fr);gap:12px;padding:14px}.score-banner__vitals,.score-banner__tally{grid-column:1 / -1}.score-banner__tally{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:8px}.score-banner__name{font-size:1.24rem}.score-banner__portrait{width:58px;height:58px}.score-grid{grid-template-columns:minmax(0,1fr)}}[data-theme=light] .score-stat__meter,[data-theme=light] .score-step{background:var(--night)}[data-theme=light] .score-chip strong{color:color-mix(in srgb,var(--chip-accent) 62%,var(--text))}[data-theme=light] .score-banner{background:radial-gradient(120% 180% at 0% 0%,color-mix(in srgb,var(--cyan) 16%,transparent),transparent 58%),linear-gradient(180deg,var(--night-2),var(--night-3));border-color:var(--rule-strong)}.skills-sheet{min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:10px}.skills-sheet__body{min-height:0}.skills-points-bar{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.skills-passives{display:flex;flex-wrap:wrap;gap:6px;margin-right:auto}.skills-points-bar__refresh{min-height:32px;padding:0 10px;font-size:.78rem}.skills-track-filter{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:2px}.skills-list{overflow:auto;display:grid;align-content:start;gap:6px}.skill-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 10px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);color:var(--text);text-align:left;cursor:pointer}.skill-row:hover{border-color:var(--rule-strong)}.skill-row--selected{border-color:var(--cyan);background:color-mix(in srgb,var(--cyan) 10%,var(--night-2))}.skill-row--locked{opacity:.55}.skill-row__tier{font-family:var(--font-mono);font-size:.7rem;color:var(--text-3)}.skill-row__name{min-width:0;display:grid;gap:2px}.skill-row__name strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.skill-row__meta{font-size:.72rem;color:var(--text-3)}.skill-row__level{font-family:var(--font-mono);font-size:.78rem;color:var(--text-2);white-space:nowrap}.skill-detail{grid-row:2 / -1;min-height:0;overflow:auto;display:grid;align-content:start;gap:10px}.skill-detail__header{display:flex;align-items:center;justify-content:space-between;gap:10px}.skill-detail__header h4{margin:0;font-family:var(--font-display)}.skill-detail__meta{margin:0;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-3)}.equip-slot{--rarity-accent: var(--rule);position:relative;display:grid;place-items:center;padding:6px 4px;border:1px solid var(--rarity-accent);border-radius:var(--r-2);background:color-mix(in srgb,var(--night-2) 78%,transparent);color:var(--text-2);cursor:pointer;text-align:center;transition:border-color var(--duration-fast) var(--ease),background var(--duration-fast) var(--ease),transform var(--duration-fast) var(--ease)}.equip-slot:hover{background:var(--night-3);transform:translateY(-1px)}.equip-slot:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.equip-slot--empty{border-color:color-mix(in srgb,var(--rule-strong) 90%,transparent);background:color-mix(in srgb,var(--night-2) 45%,transparent)}.equip-slot__glyph{color:var(--rarity-accent)}.equip-slot__sprite{width:100%;height:100%;max-width:88%;max-height:88%;object-fit:contain;border-radius:4px}.equip-slot__badge{position:absolute;top:3px;right:3px;padding:1px 4px;border-radius:4px;background:var(--night-3);font-family:var(--font-mono);font-size:.55rem;font-weight:700;letter-spacing:.04em;color:var(--text-2)}.equip-slot--glowing{box-shadow:0 0 12px -2px color-mix(in srgb,var(--rarity-accent) 55%,transparent)}.equip-slot--selected{background:var(--night-3);outline:2px solid var(--cyan);outline-offset:-1px}.equip-slot--standard{width:var(--slot-size);height:var(--slot-size)}.equip-slot--weapon{width:calc(var(--slot-size) * 1.6);height:calc(var(--slot-size) * 1.6)}.equip-slot--twohanded{opacity:.62}[data-theme=light] .equip-slot{border-color:var(--rule-strong);background:color-mix(in srgb,var(--night-2) 55%,transparent)}[data-theme=light] .equip-slot--empty{border-color:color-mix(in srgb,var(--rule-strong) 60%,transparent);background:color-mix(in srgb,var(--night-2) 30%,transparent)}.equip-doll{--slot-size: clamp(40px, calc(100cqw / 6.5), 108px);position:relative;display:grid;grid-template-columns:calc(var(--slot-size) * 1.6) 1fr calc(var(--slot-size) * 1.6);grid-template-rows:auto 1fr 1fr 1fr auto auto auto;grid-template-areas:".        head  .        " "neck     .     shoulders" "chest    .     back     " "arms     .     waist    " "hands    .     legs     " "mainhand feet  offhand  " "jewels   jewels jewels  ";gap:8px;width:100%;height:100%;padding:clamp(12px,calc(var(--slot-size) * .22),28px);border:1px solid var(--rule);border-radius:var(--r-2);overflow:hidden;background-image:linear-gradient(to bottom,transparent 0%,color-mix(in srgb,var(--night-2) 55%,transparent) 100%),url(/images/equipment-backdrop.webp);background-size:cover;background-position:center;background-repeat:no-repeat}.equip-doll>.equip-slot,.equip-doll__jewels{position:relative;z-index:1}[data-theme=light] .equip-doll{background-image:linear-gradient(to bottom,color-mix(in srgb,var(--night-2) 10%,transparent),color-mix(in srgb,var(--night-2) 32%,transparent)),url(/images/equipment-backdrop.webp)}.equip-doll .equip-slot{min-width:0;justify-self:center;align-self:center}.equip-doll__jewels{grid-area:jewels;display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.equip-doll__jewels .equip-slot{grid-area:auto!important}.equip-carried{display:grid;grid-template-rows:auto 1fr;min-height:0;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2);overflow:hidden}.equip-carried__header{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--rule)}.equip-carried__header h3{margin:0;flex:1;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}.equip-carried__count{font-family:var(--font-mono);font-size:.72rem;color:var(--text-3)}.equip-carried__list{min-height:0;overflow-y:auto;display:grid;align-content:start;gap:4px;padding:8px}.equip-row{--rarity-accent: var(--text-2);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;padding:6px 10px 6px 7px;border:1px solid var(--rule);border-left:3px solid var(--rarity-accent);border-radius:var(--r-2);background:transparent;cursor:pointer;text-align:left;transition:background var(--duration-fast) var(--ease)}.equip-row__text{display:grid;gap:1px;min-width:0}.equip-row__upgrade{font-size:.72rem;color:var(--emerald)}.equip-row__level--high{color:var(--crimson)}.equip-row:hover{background:var(--night-3)}.equip-row:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.equip-row--selected{background:var(--night-3);border-color:var(--cyan)}.equip-row__name{font-size:.82rem;font-weight:600;color:var(--rarity-accent)}.equip-row__stack{font-family:var(--font-mono);font-weight:500;color:var(--text-2)}.equip-row__meta{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.equip-detail{--rarity-accent: var(--rule);display:grid;align-content:start;gap:12px;padding:14px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.equip-detail__actions{display:flex;flex-wrap:wrap;gap:6px;padding-top:2px}.equip-detail__actions .primary-action{width:auto;flex:1 1 120px}.equip-detail__actions .ghost-button{flex:0 0 auto}.ghost-button--danger{color:var(--crimson)}.danger-action{min-height:40px;flex:1 1 120px;padding:0 13px;border:1px solid transparent;border-radius:var(--r-2);background:var(--crimson);color:#fff;font-weight:800;cursor:pointer}.equip-detail__confirm{display:grid;gap:8px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--crimson) 45%,transparent);border-radius:var(--r-2);background:color-mix(in srgb,var(--crimson) 8%,transparent)}.equip-detail__confirm p{margin:0;font-size:.8rem;color:var(--text)}.equip-empty{margin:0;padding:12px 4px;font-size:.8rem;color:var(--text-3)}.equip-detail--empty{place-items:center;text-align:center;min-height:120px}.item-thumb{--rarity-accent: var(--rule-strong);display:inline-grid;place-items:center;flex:none;border:1px solid var(--rarity-accent);border-radius:var(--r-2);background:var(--night-3);color:var(--text-3);overflow:hidden}.item-thumb img{width:100%;height:100%;object-fit:contain}.item-thumb--sm{width:30px;height:30px;padding:2px;border-radius:6px}.item-thumb--md{width:60px;height:60px;padding:5px}.item-body{--rarity-accent: var(--text-2);display:grid;gap:10px;min-width:0}.item-body__head{display:flex;gap:12px;align-items:flex-start}.item-body__title{display:grid;gap:4px;min-width:0}.item-body__name{margin:0;font-size:1rem;font-weight:700;line-height:1.25;color:var(--rarity-accent);overflow-wrap:anywhere}.item-body__subtitle{margin:0;font-size:.74rem;color:var(--text-3)}.item-body__chips{display:flex;flex-wrap:wrap;gap:4px}.item-chip{display:inline-flex;align-items:center;min-height:20px;padding:0 7px;border:1px solid var(--rule-strong);border-radius:999px;font-size:.66rem;font-weight:600;letter-spacing:.04em;color:var(--text-2);white-space:nowrap}.item-chip--rarity{border-color:color-mix(in srgb,var(--rarity-accent) 55%,transparent);color:var(--rarity-accent);text-transform:capitalize}.item-chip--warn{border-color:color-mix(in srgb,var(--amber) 55%,transparent);color:var(--amber)}.item-body__headline{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));border:1px solid var(--rule);border-radius:var(--r-2);overflow:hidden}.item-body__headline div{display:grid;gap:2px;padding:7px 9px;box-shadow:1px 1px 0 var(--rule)}.item-body__headline dt{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.item-body__headline dd{margin:0;font-family:var(--font-mono);font-size:.86rem;font-weight:600;color:var(--text);overflow-wrap:anywhere}.item-body__headline .item-body__wide{grid-column:1 / -1}.item-body__headline .item-body__warn dd{color:var(--crimson)}.item-body__description{margin:0;font-size:.8rem;line-height:1.5;color:var(--text-2)}.item-body__note{margin:0;font-size:.76rem;color:var(--text-3)}.item-body__note--unidentified{color:var(--amber)}.item-body__note--warn{color:var(--crimson)}.item-body__section{display:grid;gap:6px;padding-top:10px;border-top:1px solid var(--rule)}.item-body__section h4{margin:0;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.item-body__stats{margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:4px 18px}.item-body__stats div{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:2px 0}.item-body__stats dt{display:inline-flex;align-items:center;gap:4px;font-size:.8rem;color:var(--text-2)}.item-body__stats dd{margin:0;font-family:var(--font-mono);font-size:.8rem;font-weight:700;color:var(--emerald);white-space:nowrap}.item-body__stats dd.item-body__negative{color:var(--crimson)}.item-body__list{margin:0;padding:0;list-style:none;display:grid;gap:4px;font-size:.8rem;color:var(--text)}.item-body__gem{font-weight:600;color:var(--cyan)}.item-body__muted{color:var(--text-3)}.item-body__empty-socket{font-style:italic;color:var(--text-3)}.equip-compare{--rarity-accent: var(--rule);display:grid;gap:10px;padding:14px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.equip-compare__title{margin:0;font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--text-3)}.equip-compare__note{margin:0;font-size:.78rem;color:var(--text-2)}.equip-compare__targets{display:flex;flex-wrap:wrap;gap:6px}.equip-compare__target{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 10px;border:1px solid var(--rule-strong);border-radius:999px;background:transparent;color:var(--text-2);font-size:.74rem;cursor:pointer}.equip-compare__target:hover{background:var(--night-3)}.equip-compare__target:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.equip-compare__target--selected{border-color:var(--cyan);color:var(--text);background:color-mix(in srgb,var(--cyan) 12%,transparent)}.equip-compare__tag{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-3)}.equip-compare__verdict{justify-self:start;margin:0;padding:3px 9px;border-radius:999px;font-family:var(--font-mono);font-size:.74rem;font-weight:700}.equip-compare__verdict--up{color:var(--emerald);background:color-mix(in srgb,var(--emerald) 14%,transparent)}.equip-compare__verdict--down{color:var(--crimson);background:color-mix(in srgb,var(--crimson) 14%,transparent)}.equip-compare__table{width:100%;border-collapse:collapse;font-size:.8rem}.equip-compare__table thead th{padding:0 0 6px 10px;font-family:var(--font-mono);font-size:.6rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;text-align:right;color:var(--text-3)}.equip-compare__table tbody th{padding:4px 8px 4px 0;font-weight:500;text-align:left;color:var(--text-2)}.equip-compare__table td{padding:4px 0 4px 10px;font-family:var(--font-mono);text-align:right;white-space:nowrap;color:var(--text)}.equip-compare__table tbody tr+tr>*{border-top:1px solid var(--rule)}.equip-compare__section th{padding-top:12px;font-size:.64rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--text-3)}.equip-compare__table .equip-compare__change{font-weight:700;color:var(--text-3)}.equip-compare__table .equip-compare__change--up{color:var(--emerald)}.equip-compare__table .equip-compare__change--down{color:var(--crimson)}.equip-compare__table td.equip-compare__unknown{padding:4px 0;font-family:var(--font-ui);font-style:italic;text-align:left;white-space:normal;color:var(--text-3)}.equip-compare__empty{margin:0;font-size:.8rem;color:var(--text-3)}.equip-swap{display:grid;gap:6px;padding:14px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.equip-swap__row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:6px 8px;border:1px solid var(--rule);border-radius:var(--r-2);background:transparent;color:var(--text);text-align:left;cursor:pointer}.equip-swap__row:hover{background:var(--night-3)}.equip-swap__row:focus-visible{outline:2px solid var(--cyan);outline-offset:1px}.equip-swap__name{color:var(--rarity-accent, var(--text));font-size:.82rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equip-swap__meta{font-family:var(--font-mono);font-size:.68rem;color:var(--text-3);white-space:nowrap}.equip-sheet{min-height:0;display:grid;grid-template-columns:auto minmax(240px,320px) minmax(320px,1fr);gap:12px}.equip-sheet__doll{min-height:0;display:grid;aspect-ratio:854 / 1842;container-type:size}.equip-sheet__carried,.equip-sheet__details{min-height:0;display:grid}.equip-sheet__details{align-content:start;gap:12px;overflow-y:auto}@media(max-width:1100px){.equip-sheet{grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;overflow-y:auto}.equip-sheet__doll{height:min(52dvh,640px);width:auto;justify-self:center}.equip-sheet__carried,.equip-sheet__details{min-height:auto}.equip-sheet__details{overflow-y:visible}.equip-carried{min-height:180px}.equip-carried__list{max-height:40dvh}}.materials-sheet{display:grid;align-content:start;gap:10px;min-height:0}.materials-sheet__header{display:flex;align-items:center;gap:8px}.materials-sheet__header h3{margin:0;flex:1;font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--text-2)}.materials-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;min-height:0;overflow-y:auto}.material-card{display:flex;align-items:baseline;justify-content:space-between;gap:8px;padding:10px 12px;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--night-2)}.material-card__name{font-size:.82rem;color:var(--text)}.material-card__qty{font-family:var(--font-mono);font-size:.9rem;font-weight:600;color:var(--amber)}.fx-lab{min-height:100vh;padding:12px;background:var(--void, #07080d);color:var(--text);display:grid;gap:12px;max-width:900px;margin:0 auto}.fx-lab-bar,.fx-lab-group{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.fx-lab-skills{display:grid;gap:10px}.fx-lab-group .eyebrow{width:100%;margin:0}.fx-lab button{padding:6px 10px;border:1px solid var(--rule);border-radius:var(--r-1, 4px);background:var(--night-2);color:var(--text);font:inherit;font-size:.85rem;cursor:pointer}.fx-lab button.is-on{border-color:var(--cyan, #5ee3ff);color:var(--cyan, #5ee3ff)}
