.landing{min-height:100%;display:grid;place-items:center;padding:var(--sp-6)}.landing-card{position:relative;width:480px;max-width:100%;padding:var(--sp-6) var(--sp-6) var(--sp-5);background:var(--char);border:1px solid var(--rule-hi);box-shadow:6px 6px 0 0 var(--acid);display:flex;flex-direction:column;gap:var(--sp-3);animation:landingCardArrive var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1))}@keyframes landingCardArrive{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.view-swap-leaving .landing-card{animation:landingCardRecede var(--mo-base, .24s) var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards}@keyframes landingCardRecede{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-8px) scale(.96)}}body.is-reduce-motion .landing-card,body.is-reduce-motion .view-swap-leaving .landing-card{animation-duration:.01ms!important}.landing-corner{position:absolute;width:12px;height:12px;border-color:var(--bone-2);border-style:solid;border-width:0}.landing-corner-tl{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}.landing-corner-tr{top:-1px;right:-1px;border-top-width:2px;border-right-width:2px}.landing-corner-bl{bottom:-1px;left:-1px;border-bottom-width:2px;border-left-width:2px}.landing-corner-br{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}.landing-eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.landing-title{font-family:var(--display);font-weight:700;font-size:56px;line-height:.9;letter-spacing:-.02em;margin:0;color:var(--acid)}.landing-tagline{font-size:13px;color:var(--bone-2);margin:0;max-width:36ch;line-height:1.5}.landing-field{display:flex;flex-direction:column;gap:6px;margin-top:var(--sp-3)}.landing-field-label{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.landing-input{font-family:var(--mono);font-size:18px;padding:var(--sp-3) var(--sp-3);border:1px solid var(--rule-hi);background:var(--ink);color:var(--bone);letter-spacing:.02em;transition:border-color .1s}.landing-input:focus{border-color:var(--acid)}.landing-input:disabled{opacity:.5}.landing-error{font-family:var(--mono);font-size:11px;color:var(--blood);letter-spacing:.02em;margin-top:-4px}.landing-submit{margin-top:var(--sp-2);padding:12px 16px;font-size:14px;justify-content:center}.landing-foot{margin-top:var(--sp-3);padding-top:var(--sp-3);border-top:1px dashed var(--rule);font-family:var(--display);font-weight:600;font-size:9px;letter-spacing:.12em;color:var(--bone-4);text-align:center}.landing-tabs{display:flex;gap:var(--sp-3);margin-bottom:var(--sp-4)}.landing-tab{flex:1;padding:10px 14px;background:transparent;border:1px solid var(--rule);color:var(--bone-3);font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;cursor:pointer;transition:color .1s,border-color .1s,background .1s}.landing-tab:hover:not(:disabled){color:var(--bone);border-color:var(--bone-3)}.landing-tab.is-active{color:var(--ink);background:var(--acid);border-color:var(--acid)}.landing-tab:disabled{cursor:default;opacity:.5}.view-swap{position:relative;display:grid;grid-template-columns:1fr;grid-template-rows:1fr;min-height:0;min-width:0;overflow:hidden}.view-swap-layer{grid-row:1;grid-column:1;min-height:0;min-width:0;display:flex;flex-direction:column}.view-swap-entering{animation:viewSwapIn .26s cubic-bezier(.18,.85,.3,1) backwards}@keyframes viewSwapIn{0%{transform:translateY(18px);opacity:0}to{transform:translateY(0);opacity:1}}.view-swap-leaving{animation:viewSwapOut .24s cubic-bezier(.4,0,.7,1) forwards;pointer-events:none;z-index:1}@keyframes viewSwapOut{0%{transform:translateY(0);opacity:1}to{transform:translateY(-12px);opacity:0}}[data-swap-direction=forward]>.view-swap-entering{animation:viewSwapInForward var(--mo-base, .26s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) backwards}[data-swap-direction=forward]>.view-swap-leaving{animation:viewSwapOutForward var(--mo-base, .24s) var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards}@keyframes viewSwapInForward{0%{transform:translate(28px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes viewSwapOutForward{0%{transform:translate(0);opacity:1}to{transform:translate(-20px);opacity:0}}[data-swap-direction=back]>.view-swap-entering{animation:viewSwapInBack var(--mo-base, .26s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) backwards}[data-swap-direction=back]>.view-swap-leaving{animation:viewSwapOutBack var(--mo-base, .24s) var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards}@keyframes viewSwapInBack{0%{transform:translate(-28px);opacity:0}to{transform:translate(0);opacity:1}}@keyframes viewSwapOutBack{0%{transform:translate(0);opacity:1}to{transform:translate(20px);opacity:0}}[data-swap-direction=punch]>.view-swap-entering{animation:viewSwapInPunch var(--mo-emphatic, .36s) var(--ease-punch, cubic-bezier(.34, 1.56, .64, 1)) backwards}[data-swap-direction=punch]>.view-swap-leaving{animation:viewSwapOutPunch var(--mo-base, .24s) var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards}@keyframes viewSwapInPunch{0%{transform:translateY(28px) scale(.985);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}@keyframes viewSwapOutPunch{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-12px) scale(.99);opacity:0}}body.is-reduce-motion .view-swap-entering,body.is-reduce-motion .view-swap-leaving{animation-duration:.01ms!important}.path-wrap{display:flex;flex-direction:column;gap:var(--sp-3)}.path-head{display:flex;align-items:baseline;gap:var(--sp-3)}.path-eyebrow{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.16em;color:var(--bone-3)}.path-name{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.04em;color:var(--bone)}.path-progress{margin-left:auto;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--acid)}.path-mods{display:inline-flex;align-items:center;gap:6px}.path-mod{display:inline-block;padding:2px 6px;border:1px solid var(--acid);color:var(--acid);font-size:10px;letter-spacing:.14em;font-weight:700}.path-strip{display:flex;align-items:stretch;gap:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--rule-hi) transparent;padding-bottom:4px}.path-strip::-webkit-scrollbar{height:6px}.path-strip::-webkit-scrollbar-track{background:transparent}.path-strip::-webkit-scrollbar-thumb{background:var(--rule-hi);border-radius:3px}.path-node{flex:0 0 auto;min-width:132px;background:var(--char);border:1px solid var(--rule);padding:var(--sp-3);display:flex;flex-direction:column;gap:4px;transition:border-color .1s,opacity .1s}.path-node.is-current{border-color:var(--acid);background:linear-gradient(180deg,var(--acid-soft),transparent 60%);animation:pathNodePulse .54s cubic-bezier(.2,.7,.3,1)}@keyframes pathNodePulse{0%{transform:scale(1);box-shadow:0 0 #d6ff3a00}35%{transform:scale(1.06);box-shadow:0 0 0 4px #d6ff3a59,0 0 18px #d6ff3a66}to{transform:scale(1);box-shadow:0 0 #d6ff3a00}}.path-node.is-done{opacity:.5;border-color:var(--rule)}.path-node.is-boss{border-color:var(--blood)}.path-node.is-boss.is-current{background:linear-gradient(180deg,rgba(255,56,56,.12),transparent 60%)}.path-node.is-inn{border-color:var(--cobalt);border-style:dashed}.path-node.is-inn .path-node-num,.path-node.is-inn .path-node-name{color:var(--cobalt)}.path-node.is-inn.is-current{background:linear-gradient(180deg,rgba(111,155,255,.12),transparent 60%)}.path-node-num{font-size:9px;color:var(--bone-3);letter-spacing:.12em}.path-node.is-boss .path-node-num{color:var(--blood);font-weight:700}.path-node-name{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.path-node.is-current .path-node-name{color:var(--acid)}.path-node.is-boss .path-node-name{color:var(--blood)}.path-node.is-done .path-node-name{color:var(--bone-3)}.path-node-kind{margin-top:auto;font-family:var(--mono);font-size:10px;color:var(--bone-3)}.path-edge{width:var(--sp-3);align-self:center;height:1px;background:var(--rule-hi);flex-shrink:0}.path-wrap.is-compact .path-node{padding:var(--sp-2) var(--sp-3);min-width:104px}.path-wrap.is-compact .path-node-name{font-size:11px}.tt-trigger{display:inline-flex;align-items:center}.tt-trigger.tt-trigger-contents{display:contents}.tt-tip{position:fixed;z-index:1000;pointer-events:none;max-width:260px;padding:8px 10px;background:var(--ink);border:1px solid var(--rule-hi);box-shadow:4px 4px #00000073;color:var(--bone);font-family:var(--display);font-weight:500;font-size:11px;letter-spacing:.02em;line-height:1.4;animation:ttFadeIn .16s cubic-bezier(.18,.85,.3,1);transform:translate(-50%,-100%)}.tt-tip-rich{max-width:360px;padding:0;background:transparent;border:none;box-shadow:none}.tt-tip-below{transform:translate(-50%)}@keyframes ttFadeIn{0%{opacity:0;transform:translate(-50%,-100%) translateY(4px)}to{opacity:1;transform:translate(-50%,-100%)}}.tt-tip-below{animation-name:ttFadeInBelow}@keyframes ttFadeInBelow{0%{opacity:0;transform:translate(-50%,-4px)}to{opacity:1;transform:translate(-50%)}}body.is-reduce-motion .tt-tip{animation:none!important}.card-face{font-family:inherit;text-align:left;cursor:pointer}.card-face:disabled{cursor:default}div.card-face{cursor:default}.hand-card-buffer{font-size:10px;color:#ff5be8;padding:1px 4px;margin:2px 4px 0;background:#ff5be814;border:1px solid rgba(255,91,232,.25);border-radius:3px;letter-spacing:.4px;text-align:center}.hand-card-buffer-bits{letter-spacing:1px}.hand-card-note{font-size:10px;color:var(--cobalt, #5cc8ff);padding:1px 4px;margin:2px 4px 0;background:color-mix(in srgb,var(--cobalt, #5cc8ff) 10%,transparent);border:1px solid color-mix(in srgb,var(--cobalt, #5cc8ff) 35%,transparent);border-radius:3px;letter-spacing:.4px;text-align:center}.hand-card{position:relative;flex:0 0 auto;width:var(--card-w);height:var(--card-h);max-width:100%;min-width:0;padding:var(--sp-3);background:var(--char);border:1px solid var(--rule-hi);color:var(--bone);display:flex;flex-direction:column;text-align:left;cursor:pointer;transition:transform .1s,border-color .1s,box-shadow .1s}.hand-card:not(.is-disabled):hover{transform:translateY(-6px);border-color:var(--acid);box-shadow:4px 4px 0 0 var(--acid)}.hand-card.is-disabled{opacity:.5;cursor:not-allowed}.hand-card.is-locked{opacity:.55;cursor:default;border-style:dashed;background:var(--ink)}.hand-card.is-locked .hand-card-name,.card-locked-body{color:var(--bone-3)}.hand-card-attack{border-top:3px solid var(--blood)}.hand-card-defend{border-top:3px solid var(--cobalt)}.hand-card-utility{border-top:3px solid var(--coin)}.hand-card-corner-tl,.hand-card-corner-br{position:absolute;width:10px;height:10px;border-color:var(--hand-card-rarity, var(--bone-2));border-style:solid;border-width:0}.hand-card.is-rarity-starter{--hand-card-rarity: var(--bone-3)}.hand-card.is-rarity-common{--hand-card-rarity: var(--bone-2)}.hand-card.is-rarity-rare{--hand-card-rarity: var(--cobalt)}.hand-card.is-rarity-epic{--hand-card-rarity: var(--jester)}.hand-card.is-rarity-legendary{--hand-card-rarity: var(--coin)}.hand-card.is-rarity-mythic{--hand-card-rarity: var(--blood)}.hand-card-corner-tl{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}.hand-card-corner-br{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}.hand-card-head{display:flex;justify-content:space-between;align-items:flex-start}.hand-card-name{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.04em}.hand-card-cost{display:grid;place-items:center;width:26px;height:26px;background:var(--coin);color:var(--ink);font-family:var(--mono);font-weight:700;font-size:14px}.hand-card-cost.is-modified.is-up{background:var(--cobalt);box-shadow:0 0 6px var(--cobalt)}.hand-card-cost.is-modified.is-down{background:var(--acid);color:var(--ink);box-shadow:0 0 6px var(--acid)}.hand-card-cost.is-durability{background:linear-gradient(160deg,#d8d8de,#9aa0a8);color:var(--ink);box-shadow:inset 0 0 0 1px #ffffff59,inset 0 -1px #00000059}.hand-card-text{margin-top:var(--sp-3);font-family:var(--mono);font-size:12px;line-height:1.5;color:var(--bone-2);flex:1 1 0;min-height:0;overflow:hidden}.hand-card-kind{margin-top:auto;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;color:var(--bone-3)}.hand-card.is-locked{border-style:dashed;opacity:.78}.hand-card-lock{position:absolute;bottom:6px;left:6px;right:6px;padding:3px 6px;background:#14110ed9;border:1px solid var(--coin, #d4b35a);color:var(--coin, #d4b35a);font-size:9px;letter-spacing:.1em;text-align:center;display:flex;align-items:center;justify-content:center;gap:4px}.hand-card-lock-icon{font-size:11px;line-height:1}.hand-card-tagrow{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.hand-card-tag{font-size:8px;letter-spacing:.1em;padding:1px 4px;border:1px solid currentColor;border-radius:2px}.hand-card-tag-artifact{color:var(--coin, #d4b35a)}.hand-card-tag-discovery{color:var(--lapis, #6ec4ff)}.hand-card-tag-summoned{color:var(--violet, #b48cff)}.hand-card-tag-bullet{color:var(--ember, #ff7038)}.hand-card-tag-loading{color:var(--coin, #d4b35a)}.hand-card-tag-cheat{color:var(--blood, #ff3838)}.hand-card-tag-legal{color:var(--acid, #d6ff3a)}.hand-card-tag-exhaust{color:var(--bone-3, #a89e8e)}.hand-card-tag-owned{color:var(--bone-2, #d6cdbe)}.hand-card-text-amount{font-weight:700;font-variant-numeric:tabular-nums}.card-text-keyword{font-weight:700;text-decoration:underline dotted;text-underline-offset:2px;cursor:help}.card-shorthand{display:block}.card-text-glyph{font-weight:700;margin-right:1px}.card-text-glyph.is-damage{color:var(--blood, #e2553d)}.card-text-glyph.is-block{color:var(--steel, #79b6d6)}.card-text-glyph.is-heal{color:var(--acid, #8fd66a)}.card-text-glyph.is-energy{color:var(--coin, #d4b35a)}.card-text-scope{font-size:.82em;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--bone-3, #a89e8e)}.card-text-rider{font-size:.85em;font-weight:600;letter-spacing:.02em;color:var(--bone-3, #a89e8e);margin-left:.35em}.hand-card-text-amount.is-altered{position:relative;padding:0 3px;border-radius:2px;background:#14110ea6;box-shadow:inset 0 0 0 1px currentColor}.hand-card-text-amount.is-altered.is-up{color:var(--acid, #d6ff3a)}.hand-card-text-amount.is-altered.is-down{color:var(--bone-3, #a89e8e)}.hand-card-text-amount.is-altered:after{content:"";position:absolute;top:-1px;right:-3px;width:4px;height:4px;border-radius:50%;background:currentColor;box-shadow:0 0 4px currentColor}.hand-card.is-artifact{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--coin, #d4b35a) 35%,transparent)}.hand-card-tag-class{color:var(--class-accent, currentColor);border-color:var(--class-accent, currentColor)}.hand-card-tag-class.is-off{background:var(--class-accent, currentColor);color:var(--ink, #0f0d0b)}.hand-card.is-off-class{box-shadow:inset 0 0 0 1px #ffffff0a}.hand-card.is-primed{box-shadow:inset 0 0 0 1px var(--acid, #d6ff3a),0 0 8px color-mix(in srgb,var(--acid, #d6ff3a) 35%,transparent);animation:handCardPrimedPulse 1.8s ease-in-out infinite}.hand-card.is-primed:after{content:"";position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;background:var(--acid, #d6ff3a);box-shadow:0 0 6px var(--acid, #d6ff3a);pointer-events:none}@keyframes handCardPrimedPulse{0%,to{box-shadow:inset 0 0 0 1px var(--acid, #d6ff3a),0 0 6px color-mix(in srgb,var(--acid, #d6ff3a) 28%,transparent)}50%{box-shadow:inset 0 0 0 1px var(--acid, #d6ff3a),0 0 12px color-mix(in srgb,var(--acid, #d6ff3a) 55%,transparent)}}.hand-card-tag-restriction{color:var(--blood, #c25151);border-color:var(--blood, #c25151)!important;background:#c2515114}.hand-card-tag-selfdmg{color:var(--ember, #ff7038);border-color:var(--ember, #ff7038)!important;background:#ff70381a}.hand-card-tag-condition{border-style:solid}.hand-card-tag-condition.is-met{color:var(--acid, #d6ff3a);border-color:var(--acid, #d6ff3a)!important;background:#d6ff3a1a}.hand-card-tag-condition.is-unmet{color:var(--bone-3, #6a6862);border-color:var(--bone-4, #44423d)!important;background:transparent;opacity:.6}.card-preview{width:220px;padding:8px 10px;background:var(--ink);border:1px solid var(--rule-hi);box-shadow:4px 4px #00000073;font-family:var(--display);color:var(--bone);text-align:left}.card-preview+.card-preview{margin-top:6px}.card-preview-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:4px}.card-preview-name{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.card-preview-cost{font-family:var(--mono, ui-monospace, monospace);font-size:13px;font-weight:700;color:var(--energy, #f3d56a);border:1px solid currentColor;border-radius:2px;padding:0 5px;line-height:1.3}.card-preview-text{font-size:11px;line-height:1.4;margin-bottom:6px;color:var(--bone-2, #d6cdbe)}.card-preview-tagrow{display:flex;gap:4px;flex-wrap:wrap}.card-preview-tag{font-size:8px;letter-spacing:.1em;padding:1px 4px;border:1px solid currentColor;border-radius:2px}.card-preview-tag-artifact{color:var(--coin, #d4b35a)}.card-preview-tag-discovery{color:var(--lapis, #6ec4ff)}.card-preview-tag-summoned{color:var(--violet, #b48cff)}.card-preview-tag-bullet{color:var(--ember, #ff7038)}.card-preview-tag-loading{color:var(--coin, #d4b35a)}.card-preview-tag-cheat{color:var(--blood, #ff3838)}.card-preview-tag-exhaust{color:var(--bone-3, #a89e8e)}.card-preview-stack-label{font-size:9px;letter-spacing:.18em;color:var(--bone-3, #a89e8e);margin-bottom:4px;text-align:center;text-transform:uppercase}.ctxmenu{position:fixed;z-index:200;min-width:168px;background:var(--obs-1, #14141a);border:1px solid var(--bone-3, #3a3a45);border-radius:4px;box-shadow:0 8px 24px #00000080;padding:4px;-webkit-user-select:none;user-select:none;animation:ctxmenuIn 90ms ease-out}@keyframes ctxmenuIn{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}.ctxmenu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}.ctxmenu-item-wrap{display:block}.ctxmenu-item{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3, 8px);width:100%;background:transparent;border:0;padding:6px 10px;border-radius:3px;font-family:var(--display, system-ui);font-size:12px;letter-spacing:.06em;color:var(--bone-1, #d8d8de);text-align:left;cursor:pointer;transition:background 80ms}.ctxmenu-item:not(.is-disabled):hover,.ctxmenu-item:not(.is-disabled):focus-visible{background:#ffffff0f;outline:none}.ctxmenu-item.is-disabled{color:var(--bone-3, #6a6a78);cursor:default}.ctxmenu-item.is-destructive:not(.is-disabled){color:var(--danger, #d65555)}.ctxmenu-item.is-destructive:not(.is-disabled):hover{background:#d655551f}.ctxmenu-item-hint{font-size:10px;letter-spacing:.1em;color:var(--bone-4, #4a4a55);text-transform:uppercase}.stk-overlay{pointer-events:none}.stk-host{position:absolute;pointer-events:none;transform:translate(-50%,-100%);will-change:transform;z-index:200}@keyframes stk-float{0%{opacity:0;transform:translateY(8px) scale(.55) rotate(-8deg)}10%{opacity:1;transform:translateY(-2px) scale(1.12) rotate(3deg)}22%{transform:translateY(-10px) scale(1) rotate(-2deg)}55%{opacity:1;transform:translateY(-46px) scale(1) rotate(2deg)}to{opacity:0;transform:translateY(-78px) scale(.94) rotate(0)}}.stk-anim{animation:stk-float 1.6s cubic-bezier(.2,.8,.3,1) forwards}body.is-reduce-motion .stk-anim{animation:stk-fade 1.6s ease-out forwards}@keyframes stk-fade{0%{opacity:0}8%{opacity:1}85%{opacity:1}to{opacity:0}}.stk{position:relative;display:inline-flex;align-items:stretch;filter:drop-shadow(0 4px 0 rgba(0,0,0,.95)) drop-shadow(0 0 14px rgba(0,0,0,.6))}.stk-body{position:relative;display:flex;align-items:center;gap:9px;padding:7px 11px 7px 9px;background:var(--char-2);border:2px solid var(--bone);font-family:var(--display);min-height:38px}.stk-body:before{content:"";position:absolute;left:-2px;top:-2px;bottom:-2px;width:6px;background:var(--bone)}.stk-glyph{position:relative;flex-shrink:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:var(--bone)}.stk-text{display:flex;flex-direction:column;line-height:1;align-items:flex-start;gap:2px}.stk-title{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.08em;color:var(--bone);white-space:nowrap}.stk-sub{font-family:var(--mono);font-weight:700;font-size:8.5px;letter-spacing:.22em;color:var(--bone-3);white-space:nowrap}.stk-tip{position:absolute;left:50%;bottom:-7px;width:10px;height:10px;background:var(--char-2);border-right:2px solid var(--bone);border-bottom:2px solid var(--bone);transform:translate(-50%) rotate(45deg)}.stk[data-accent=ember] .stk-body,.stk[data-accent=ember] .stk-tip{background:#231510;border-color:var(--ember)}.stk[data-accent=ember] .stk-body:before{background:var(--ember)}.stk[data-accent=ember] .stk-title,.stk[data-accent=ember] .stk-glyph{color:var(--ember)}.stk[data-accent=blood] .stk-body,.stk[data-accent=blood] .stk-tip{background:#1f0d0d;border-color:var(--blood)}.stk[data-accent=blood] .stk-body:before{background:var(--blood)}.stk[data-accent=blood] .stk-title,.stk[data-accent=blood] .stk-glyph{color:var(--blood)}.stk[data-accent=acid] .stk-body,.stk[data-accent=acid] .stk-tip{background:#161c0a;border-color:var(--acid)}.stk[data-accent=acid] .stk-body:before{background:var(--acid)}.stk[data-accent=acid] .stk-title,.stk[data-accent=acid] .stk-glyph{color:var(--acid)}.stk[data-accent=cobalt] .stk-body,.stk[data-accent=cobalt] .stk-tip{background:#0d1428;border-color:var(--cobalt)}.stk[data-accent=cobalt] .stk-body:before{background:var(--cobalt)}.stk[data-accent=cobalt] .stk-title,.stk[data-accent=cobalt] .stk-glyph{color:var(--cobalt)}.stk[data-accent=coin] .stk-body,.stk[data-accent=coin] .stk-tip{background:#221c08;border-color:var(--coin)}.stk[data-accent=coin] .stk-body:before{background:var(--coin)}.stk[data-accent=coin] .stk-title,.stk[data-accent=coin] .stk-glyph{color:var(--coin)}.stk[data-accent=jester] .stk-body,.stk[data-accent=jester] .stk-tip{background:#1c0a22;border-color:var(--jester)}.stk[data-accent=jester] .stk-body:before{background:var(--jester)}.stk[data-accent=jester] .stk-title,.stk[data-accent=jester] .stk-glyph{color:var(--jester)}.stk[data-size=hero] .stk-body{padding:10px 16px 10px 14px;gap:12px;min-height:56px}.stk[data-size=hero] .stk-glyph{width:36px;height:36px}.stk[data-size=hero] .stk-title{font-size:22px;letter-spacing:.1em}.stk[data-size=hero] .stk-body:before{width:8px}.stk[data-size=hero] .stk-body:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-bone);opacity:.45;pointer-events:none}.stk[data-accent=blood][data-size=hero] .stk-body:after{background:repeating-linear-gradient(-45deg,rgba(255,56,56,.35) 0 1px,transparent 1px 4px)}.stk[data-accent=acid][data-size=hero] .stk-body:after{background:var(--hatch-acid);opacity:.55}.g{width:100%;height:100%;position:relative;color:inherit}.g-reticle:before,.g-reticle:after,.g-reticle>i:nth-child(1),.g-reticle>i:nth-child(2){content:"";position:absolute;width:7px;height:7px;border:0 solid currentColor}.g-reticle:before{top:0;left:0;border-top-width:2px;border-left-width:2px}.g-reticle:after{top:0;right:0;border-top-width:2px;border-right-width:2px}.g-reticle>i:nth-child(1){bottom:0;left:0;border-bottom-width:2px;border-left-width:2px}.g-reticle>i:nth-child(2){bottom:0;right:0;border-bottom-width:2px;border-right-width:2px}.g-reticle>i.dot{position:absolute;top:50%;left:50%;width:4px;height:4px;background:currentColor;border:0;transform:translate(-50%,-50%)}.g-no{width:22px;height:22px;border:2.5px solid currentColor;border-radius:50%;position:relative;margin:auto}.g-no:after{content:"";position:absolute;top:50%;left:-4px;right:-4px;height:2.5px;background:currentColor;transform:translateY(-50%) rotate(-45deg)}.g-check{width:100%;height:100%;position:relative}.g-check:before,.g-check:after{content:"";position:absolute;background:currentColor}.g-check:before{width:3px;height:11px;bottom:4px;left:8px;transform:rotate(-45deg)}.g-check:after{width:3px;height:18px;bottom:4px;left:14px;transform:rotate(40deg)}.stk[data-size=hero] .g-check:before{width:4px;height:14px;bottom:6px;left:11px}.stk[data-size=hero] .g-check:after{width:4px;height:24px;bottom:6px;left:20px}.g-chev{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;height:100%}.g-chev i{display:block;width:14px;height:5px;background:currentColor;clip-path:polygon(0 100%,50% 0,100% 100%,75% 100%,50% 35%,25% 100%)}.g-chev i:nth-child(1){opacity:1}.g-chev i:nth-child(2){opacity:.55}.g-chev i:nth-child(3){opacity:.25}.g-wait{display:flex;gap:4px;align-items:center;justify-content:center;height:100%}.g-wait i{display:block;width:5px;height:18px;background:currentColor}.g-burst{width:100%;height:100%;position:relative}.g-burst>i{position:absolute;top:50%;left:50%;width:100%;height:3px;background:currentColor;transform-origin:center}.g-burst>i:nth-child(1){transform:translate(-50%,-50%) rotate(0)}.g-burst>i:nth-child(2){transform:translate(-50%,-50%) rotate(45deg)}.g-burst>i:nth-child(3){transform:translate(-50%,-50%) rotate(90deg)}.g-burst>i:nth-child(4){transform:translate(-50%,-50%) rotate(135deg)}.stk[data-size=hero] .g-burst>i{height:4px}.chibi{position:relative;width:28px;height:28px;flex-shrink:0;color:var(--bone)}.chibi-hero{width:36px;height:36px}.chibi .head{position:absolute;left:4px;top:2px;width:20px;height:18px;background:#f0d8b8;border:1.5px solid var(--ink);border-radius:9px 9px 8px 8px}.chibi-hero .head{left:5px;top:3px;width:26px;height:23px;border-radius:12px 12px 10px 10px}.chibi .hair{position:absolute;left:2px;top:0;width:24px;height:10px;background:currentColor;border:1.5px solid var(--ink);border-radius:12px 12px 4px 4px}.chibi-hero .hair{left:3px;top:0;width:30px;height:13px}.chibi .bang{position:absolute;left:7px;top:5px;width:14px;height:4px;background:currentColor;border-radius:7px 7px 4px 4px}.chibi-hero .bang{left:9px;top:7px;width:18px;height:5px}.chibi .eye{position:absolute;top:11px;width:3px;height:4px;background:var(--ink);border-radius:1px}.chibi .eye.l{left:9px}.chibi .eye.r{left:16px}.chibi .mouth{position:absolute;left:12px;top:16px;width:4px;height:1.5px;background:var(--ink)}.chibi .body{position:absolute;left:8px;bottom:0;width:12px;height:6px;background:currentColor;border:1.5px solid var(--ink);border-bottom:0;border-radius:4px 4px 0 0}.chibi-hero .body{left:10px;width:16px;height:8px}.chibi .blush{position:absolute;top:14px;width:3px;height:2px;background:#ff50508c;border-radius:2px}.chibi .blush.l{left:6px}.chibi .blush.r{left:19px}.chibi[data-mood=angry] .eye{width:4px;height:3px;background:var(--ink);transform:rotate(20deg)}.chibi[data-mood=angry] .eye.l{transform:rotate(-20deg)}.chibi[data-mood=angry] .mouth{width:6px;height:1.5px;left:11px;top:17px;background:var(--ink)}.chibi-hero[data-mood=angry] .eye.l{left:11px;top:14px;width:5px;height:4px}.chibi-hero[data-mood=angry] .eye.r{left:20px;top:14px;width:5px;height:4px}.chibi-hero[data-mood=angry] .mouth{left:14px;top:22px;width:8px;height:2px}.chibi[data-mood=angry] .anger-mark{position:absolute;top:-2px;right:-3px;width:9px;height:9px;color:var(--blood)}.chibi[data-mood=angry] .anger-mark:before,.chibi[data-mood=angry] .anger-mark:after{content:"";position:absolute;background:currentColor}.chibi[data-mood=angry] .anger-mark:before{top:4px;left:0;right:0;height:1.5px}.chibi[data-mood=angry] .anger-mark:after{top:0;bottom:0;left:4px;width:1.5px}.chibi[data-mood=worried] .eye{height:5px;border-radius:2px}.chibi[data-mood=worried] .mouth{width:5px;height:2px;left:11px;top:17px;background:transparent;border-bottom:1.5px solid var(--ink);border-radius:0 0 4px 4px}.chibi[data-mood=worried] .sweat{position:absolute;top:7px;right:0;width:4px;height:7px;background:var(--cobalt);border:1px solid var(--ink);border-radius:2px 2px 3px 3px}.chibi[data-mood=happy] .eye{width:4px;height:2px;background:transparent;border-top:1.5px solid var(--ink);border-radius:0;top:12px}.chibi[data-mood=happy] .mouth{width:6px;height:2px;background:transparent;border-bottom:1.5px solid var(--ink);border-radius:0 0 4px 4px;left:11px;top:16px}.chibi[data-mood=scream] .eye{width:5px;height:5px;border-radius:0;background:transparent;border:1.5px solid var(--ink)}.chibi[data-mood=scream] .eye.l{left:8px;top:10px}.chibi[data-mood=scream] .eye.r{left:16px;top:10px}.chibi[data-mood=scream] .mouth{width:6px;height:7px;left:11px;top:16px;background:var(--ink);border-radius:3px}.stk-wheel{position:fixed;z-index:220;transform:translate(-50%,-50%);pointer-events:none;-webkit-user-select:none;user-select:none;filter:drop-shadow(0 4px 12px rgba(0,0,0,.6));animation:stkWheelIn .12s ease-out}@keyframes stkWheelIn{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.stk-wheel-svg{display:block;overflow:visible}.stk-wheel-wedge{fill:var(--char-2, #14110e);stroke:var(--rule-hi, #3a3a45);stroke-width:1.5;transition:fill 80ms}.stk-wheel-wedge[data-accent=ember].is-active{fill:#ff703859;stroke:var(--ember)}.stk-wheel-wedge[data-accent=blood].is-active{fill:#ff383852;stroke:var(--blood)}.stk-wheel-wedge[data-accent=acid].is-active{fill:#d6ff3a47;stroke:var(--acid)}.stk-wheel-wedge[data-accent=cobalt].is-active{fill:#6f9bff52;stroke:var(--cobalt)}.stk-wheel-wedge[data-accent=coin].is-active{fill:#f5b4004d;stroke:var(--coin)}.stk-wheel-wedge[data-accent=jester].is-active{fill:#d040ff4d;stroke:var(--jester)}.stk-wheel-center{fill:var(--char-3, #1c1916);stroke:var(--rule-hi);stroke-width:1.5;transition:fill 80ms,stroke 80ms}.stk-wheel-center[data-accent=jester].is-active{fill:#d040ff59;stroke:var(--jester)}.stk-wheel-label{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:1px;pointer-events:none;color:var(--bone-2);white-space:nowrap}.stk-wheel-label-title{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.14em;text-shadow:1px 1px 0 var(--ink)}.stk-wheel-label-key{font-family:var(--mono);font-size:8px;letter-spacing:.18em;color:var(--bone-3)}.stk-wheel-center-label{left:50%;top:50%}.resource-prompt{position:fixed;top:0;right:0;bottom:0;left:0;z-index:35;display:flex;align-items:center;justify-content:center;padding:var(--sp-5, 16px)}.resource-prompt-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0000008c;animation:rpBackdropIn .2s ease-out}.resource-prompt-panel{position:relative;background:var(--char, #1c1814);border:1px solid var(--rp-accent, var(--coin, #d4b35a));box-shadow:6px 6px #0006,0 0 32px color-mix(in srgb,var(--rp-accent, var(--coin, #d4b35a)) 22%,transparent);padding:var(--sp-5, 16px);max-width:460px;width:min(460px,92vw);display:flex;flex-direction:column;gap:var(--sp-4, 12px);animation:rpPanelIn .26s cubic-bezier(.18,.85,.3,1)}.resource-prompt-head{display:flex;flex-direction:column;gap:4px}.resource-prompt-kicker{font-size:10px;letter-spacing:.18em;color:var(--rp-accent, var(--coin, #d4b35a))}.resource-prompt-title{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.06em;margin:0;color:var(--bone, #f0e7d8)}.resource-prompt-sub{font-size:12px;color:var(--bone-2, #d6cdbe);margin:0;line-height:1.4}.resource-prompt-actions{display:grid;gap:var(--sp-3, 8px)}.resource-prompt-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--sp-4, 12px);background:var(--ink, #0f0d0b);border:1px solid var(--rp-accent, var(--coin, #d4b35a));color:var(--rp-accent, var(--coin, #d4b35a));font:inherit;cursor:pointer;transition:transform .1s,background .1s,box-shadow .1s}.resource-prompt-btn:hover{transform:translate(-1px,-1px);background:color-mix(in srgb,var(--rp-accent, var(--coin, #d4b35a)) 6%,transparent);box-shadow:3px 3px color-mix(in srgb,var(--rp-accent, var(--coin, #d4b35a)) 35%,transparent)}.resource-prompt-btn-icon{font-size:26px;line-height:1}.resource-prompt-btn-label{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.14em}.resource-prompt-btn-sub{font-size:9px;letter-spacing:.14em;color:var(--bone-3, #a89e8e)}.resource-prompt-cancel{align-self:flex-end}@keyframes rpBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes rpPanelIn{0%{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.training-overlay{position:fixed;top:64px;right:12px;bottom:12px;width:360px;max-width:92vw;z-index:30;display:flex;flex-direction:column;background:#080a0ef0;border:1px solid #ff7a1a;border-radius:6px;box-shadow:0 14px 28px #0000008c;color:#f0e8da;font-size:12px;overflow:hidden}.training-overlay.is-collapsed{width:120px;bottom:auto}.training-overlay-head{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;background:linear-gradient(90deg,#ff7a1a,#b3450a);color:#1c0e02;font-weight:700;flex-shrink:0}.training-overlay-title{display:flex;flex-direction:column;gap:2px;min-width:0}.training-overlay-badge{font-size:14px;letter-spacing:.12em}.training-overlay-sub{font-size:10px;opacity:.7}.training-overlay-body{padding:10px;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:14px}.training-section-head,.training-section-head-row .training-section-head{margin:0 0 6px;font-size:11px;letter-spacing:.16em;color:#ff7a1a}.training-section-head-row{display:flex;align-items:center;justify-content:space-between}.training-row{border:1px solid #2a2a2a;border-radius:4px;padding:8px;margin-bottom:8px;background:#14141899;display:flex;flex-direction:column;gap:6px}.training-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.training-row-name{font-weight:700;font-size:13px}.training-row-sub{font-size:10px;opacity:.65}.training-row-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(72px,1fr));gap:4px}.training-num{display:flex;flex-direction:column;gap:2px}.training-num.is-dirty .training-num-label{color:#ff7a1a}.training-num-label{font-size:9px;opacity:.7;letter-spacing:.1em;transition:color 80ms linear}.training-num-row{display:flex;align-items:stretch;gap:2px}.training-num-input{width:100%;min-width:0;padding:3px 4px;background:#0d0d10;border:1px solid #333;border-radius:3px;color:#fff;font-size:12px}.training-num.is-dirty .training-num-input{border-color:#ff7a1a;background:#1a0e02}.training-num-input:focus{outline:1px solid #ff7a1a}.training-num-set{flex-shrink:0;padding:0 6px;font-size:9px;letter-spacing:.08em;font-family:inherit;background:#ff7a1a;color:#1c0e02;border:0;border-radius:3px;cursor:pointer;font-weight:700}.training-num-set:hover{background:#ffa05a}.training-status-line{display:flex;flex-direction:column;gap:4px}.training-status-chips{display:flex;flex-wrap:wrap;gap:4px}.training-status-chip{display:inline-flex;align-items:center;gap:4px;background:#2a1a05;border:1px solid #ff7a1a;border-radius:3px;padding:2px 6px;font-size:10px;color:#ffc890;cursor:pointer}.training-status-chip:hover{background:#3c2208}.training-status-chip-x{opacity:.7}.training-status-form{display:flex;gap:4px;align-items:center}.training-status-form select{background:#0d0d10;border:1px solid #333;color:#fff;padding:3px;font-size:11px;flex:1}.training-status-form .training-num-input{width:50px;flex:0 0 50px}.training-row-pile-actions{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.training-intent-current{font-size:10px;opacity:.7;margin-left:4px}.training-intent-picker{display:flex;flex-wrap:wrap;gap:4px;padding-top:4px;border-top:1px dashed #333}.training-piles{display:flex;flex-direction:column;gap:3px}.training-pile{border:1px solid #1f1f1f;border-radius:3px}.training-pile-summary{cursor:pointer;padding:3px 6px;font-size:10px;background:#131316;list-style:none}.training-pile-summary::-webkit-details-marker{display:none}.training-pile-summary b{color:#ffc890;font-weight:700;margin-left:4px}.training-pile-cards{display:flex;flex-wrap:wrap;gap:3px;padding:4px}.training-pile-card{display:inline-flex;align-items:center;gap:3px;background:#1a1a1f;border:1px solid #2a2a32;border-radius:2px;padding:2px 5px;font-size:10px;color:#ccc;cursor:pointer}.training-pile-card:hover{background:#2a1a05;border-color:#ff7a1a;color:#ffc890}.training-pile-card-x{opacity:.6}.training-empty{padding:12px;text-align:center;opacity:.5;font-size:11px}.training-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;z-index:40;display:flex;align-items:center;justify-content:center}.training-modal{width:min(640px,90vw);max-height:80vh;background:#0e0e12;border:1px solid #ff7a1a;border-radius:6px;display:flex;flex-direction:column;overflow:hidden}.training-modal-head{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:linear-gradient(90deg,#ff7a1a,#b3450a);color:#1c0e02}.training-modal-title{margin:0;font-size:13px;letter-spacing:.14em}.training-modal-close{background:transparent;border:0;font-size:18px;color:#1c0e02;cursor:pointer;line-height:1}.training-modal-content{padding:12px;overflow-y:auto;flex:1}.training-modal-toolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px}.training-search{flex:1;padding:4px 6px;background:#0d0d10;border:1px solid #333;border-radius:3px;color:#fff;font-size:12px}.training-search:focus{outline:1px solid #ff7a1a}.training-toggle{display:inline-flex;align-items:center;gap:4px;font-size:10px;cursor:pointer}.training-modal-count{opacity:.6;font-size:10px}.training-modal-list{display:flex;flex-direction:column;gap:4px}.training-modal-item{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:baseline;gap:2px 8px;padding:6px 8px;background:#161618;border:1px solid #25252a;border-radius:3px;text-align:left;cursor:pointer;color:#eee}.training-modal-item:hover{background:#2a1a05;border-color:#ff7a1a}.training-modal-item-name{font-size:12px;font-weight:700;grid-column:1}.training-modal-item-meta{font-size:10px;opacity:.65;grid-column:2;grid-row:1}.training-modal-item-text{font-size:10px;opacity:.8;grid-column:1 / span 2;grid-row:2}.training-modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.training-class-form{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.training-programmer-note{grid-column:1 / -1;opacity:.7;font-size:10px;padding-top:6px;border-top:1px dashed #333}.training-panel{margin:12px 0;padding:12px;border:1px solid #ff7a1a;border-radius:4px;background:#ff7a1a0f}.training-panel-blurb{margin:6px 0 10px;font-size:10px;opacity:.75}.training-ally-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.training-ally-slot{display:flex;flex-direction:column;gap:4px}.training-ally-slot-label{font-size:10px;opacity:.65}.training-ally-select{width:100%;padding:4px 6px;background:#0d0d10;border:1px solid #333;color:#fff;font-size:12px}.training-panel-actions{display:flex;justify-content:flex-end;gap:8px}.silhouette-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;--sil-opacity: .68;--sil-list: 0deg;--sil-sag-y: 0px;--sil-eye-glow: .55;--sil-eye-color: var(--ember);--tx0: 14%;--tx1: 38%;--tx2: 62%;--tx3: 86%}.silhouette-figure{position:absolute;left:50%;bottom:-120px;width:clamp(320px,44%,480px);aspect-ratio:4 / 5;transform:translate(-50%) translateY(var(--sil-sag-y)) rotate(var(--sil-list));transition:transform .6s cubic-bezier(.4,0,.2,1),opacity .48s ease-out;opacity:var(--sil-opacity);animation:silhouetteBreathe 5.2s ease-in-out infinite;transform-origin:50% 0%;image-rendering:pixelated}.silhouette-figure svg{display:block;width:100%;height:100%;shape-rendering:crispEdges}@keyframes silhouetteBreathe{0%,to{translate:0 0}50%{translate:0 4px}}.silhouette-tethers{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.tether{position:absolute;top:0;width:6px;height:60%;transform:translate(-50%);background:repeating-linear-gradient(180deg,#a8a59af2 0,#a8a59af2 5px,#14141af2 5px,#14141af2 8px);border-left:1px solid rgba(10,10,12,.8);border-right:1px solid rgba(10,10,12,.8);filter:drop-shadow(0 0 1px rgba(0,0,0,.8));opacity:.8;transition:opacity .2s;animation:tetherTaut 2.4s ease-in-out infinite}.tether.t0{left:var(--tx0);animation-delay:-.2s}.tether.t1{left:var(--tx1);animation-delay:-.8s;height:55%}.tether.t2{left:var(--tx2);animation-delay:-1.4s;height:55%}.tether.t3{left:var(--tx3);animation-delay:-2s}@keyframes tetherTaut{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-2px)}}.tether-anchor{position:absolute;top:0;width:18px;height:10px;transform:translate(-50%);background:var(--bone-4);border-bottom:2px solid var(--ink);background-image:repeating-linear-gradient(-45deg,rgba(10,10,12,.4) 0 1px,transparent 1px 3px)}.tether-anchor.t0{left:var(--tx0)}.tether-anchor.t1{left:var(--tx1)}.tether-anchor.t2{left:var(--tx2)}.tether-anchor.t3{left:var(--tx3)}.tether.is-broken{animation:tetherSnap .72s cubic-bezier(.4,0,.7,1) forwards}@keyframes tetherSnap{0%{transform:translate(-50%) translateY(0) rotate(0);transform-origin:top center;opacity:.8}12%{transform:translate(-50%) translateY(-3px) rotate(0)}to{transform:translate(-50%) translateY(28px) rotate(8deg);opacity:0}}.tether-stub{position:absolute;top:0;width:6px;height:26px;transform:translate(-50%) rotate(var(--stub-rot, -6deg));transform-origin:top center;background:repeating-linear-gradient(180deg,#a8a59a8c 0,#a8a59a8c 5px,#14141af2 5px,#14141af2 8px);opacity:0;animation:tetherStubAppear .28s ease-out .6s forwards;pointer-events:none}.tether-stub.t0{left:var(--tx0);--stub-rot: -10deg}.tether-stub.t1{left:var(--tx1);--stub-rot: -4deg}.tether-stub.t2{left:var(--tx2);--stub-rot: 4deg}.tether-stub.t3{left:var(--tx3);--stub-rot: 10deg}@keyframes tetherStubAppear{to{opacity:.55}}.tether-burst{position:absolute;top:12px;width:36px;height:36px;transform:translate(-50%,-50%);pointer-events:none;background:radial-gradient(circle,#14141ad9,#14141a00 70%)}.tether-burst:before,.tether-burst:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--bone-4);clip-path:polygon(50% 50%,60% 0,70% 0,55% 50%)}.tether-burst:after{transform:scaleX(-1);clip-path:polygon(50% 50%,40% 0,30% 0,45% 50%)}.tether-burst.is-firing{animation:tetherBurst .54s ease-out forwards}.tether-burst.t0{left:var(--tx0)}.tether-burst.t1{left:var(--tx1)}.tether-burst.t2{left:var(--tx2)}.tether-burst.t3{left:var(--tx3)}@keyframes tetherBurst{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}25%{transform:translate(-50%,-50%) scale(1.3);opacity:1}to{transform:translate(-50%,-10%) scale(1.6);opacity:0}}.silhouette-backdrop.is-menace .silhouette-figure{animation:silhouetteBreathe 5.2s ease-in-out infinite,silhouetteShudder .22s steps(4,end)}@keyframes silhouetteShudder{0%{translate:0 0}20%{translate:-3px 1px}45%{translate:4px -1px}70%{translate:-2px 2px}to{translate:0 0}}.silhouette-backdrop.is-menace .sil-eye{animation:silhouetteEyeFlare .32s ease-out}@keyframes silhouetteEyeFlare{0%{fill:var(--ember);filter:drop-shadow(0 0 1px var(--ember))}30%{fill:#ffd6a8;filter:drop-shadow(0 0 6px var(--ember)) drop-shadow(0 0 12px var(--blood))}to{fill:var(--ember);filter:drop-shadow(0 0 1px var(--ember))}}.silhouette-backdrop[data-broken="1"]{--sil-sag-y: 14px;--sil-list: -3deg;--sil-eye-glow: .7}.silhouette-backdrop[data-broken="2"]{--sil-sag-y: 28px;--sil-list: 4deg;--sil-eye-glow: .85}.silhouette-backdrop[data-broken="3"]{--sil-sag-y: 46px;--sil-list: -7deg;--sil-eye-glow: 1}.silhouette-backdrop[data-broken="3"] .silhouette-figure{animation:silhouetteBreathe 1.8s ease-in-out infinite,silhouetteStrain 2.4s ease-in-out infinite}@keyframes silhouetteStrain{0%,to{filter:brightness(1)}50%{filter:brightness(1.6) drop-shadow(0 0 8px var(--blood))}}.silhouette-backdrop[data-broken="3"] .tether:not(.is-broken){animation:tetherStrain .8s ease-in-out infinite;filter:drop-shadow(0 0 4px var(--ember))}@keyframes tetherStrain{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-1px) scaleY(1.01)}}.silhouette-backdrop.is-breaking-free .silhouette-figure{animation:silhouetteBreakFree 2.5s cubic-bezier(.5,0,.3,1) forwards}.silhouette-backdrop.is-breaking-free .tether{display:none}.silhouette-backdrop.is-breaking-free .sil-eye{fill:var(--blood);filter:drop-shadow(0 0 8px var(--blood)) drop-shadow(0 0 18px var(--ember))}@keyframes silhouetteBreakFree{0%{transform:translate(-50%) translateY(46px) rotate(-7deg);opacity:.9;filter:brightness(1)}25%{transform:translate(-50%) translateY(-30px) rotate(6deg) scale(1.05);filter:brightness(1.4) drop-shadow(0 0 16px var(--blood));opacity:1}55%{transform:translate(-50%) translateY(-60px) rotate(-2deg) scale(1.45);filter:brightness(2) drop-shadow(0 0 30px var(--blood));opacity:1}to{transform:translate(-50%) translateY(-140px) rotate(0) scale(2.4);filter:brightness(3) drop-shadow(0 0 60px var(--blood));opacity:0}}.silhouette-backdrop.is-breaking-free:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 80%,rgba(255,56,56,.5),transparent 60%);animation:breakFlash 2.5s ease-out forwards;pointer-events:none}@keyframes breakFlash{0%{opacity:0}30%{opacity:.4}55%{opacity:1}to{opacity:0}}.silhouette-backdrop.is-gone .silhouette-figure,.silhouette-backdrop.is-gone .tether{display:none}.silhouette-backdrop.is-gone .tether-stub{opacity:.6;animation:stubSway 4.2s ease-in-out infinite}.silhouette-backdrop.is-gone .tether-stub.t0{animation-delay:-1s}.silhouette-backdrop.is-gone .tether-stub.t1{animation-delay:-2.2s}.silhouette-backdrop.is-gone .tether-stub.t2{animation-delay:-3.4s}.silhouette-backdrop.is-gone .tether-stub.t3{animation-delay:-.8s}@keyframes stubSway{0%,to{transform:translate(-50%) rotate(var(--stub-rot, -6deg))}50%{transform:translate(-50%) rotate(calc(var(--stub-rot, -6deg) + 2deg))}}.silhouette-backdrop.is-gone:after{content:"";position:absolute;left:50%;bottom:-120px;width:clamp(320px,44%,480px);aspect-ratio:4 / 5;transform:translate(-50%);background:radial-gradient(ellipse at 50% 35%,rgba(255,112,56,.04),transparent 55%);pointer-events:none}body.is-reduce-motion .silhouette-figure,body.is-reduce-motion .tether,body.is-reduce-motion .tether-stub{animation:none!important}.silhouette-gauge{position:absolute;top:10px;left:12px;z-index:3;display:inline-flex;align-items:baseline;gap:4px;padding:4px 8px;background:#0a0a0cc7;border:1px solid var(--rule-hi);font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--bone-3);pointer-events:none}.silhouette-gauge-label{color:var(--blood);font-weight:800}.silhouette-gauge-value{font-family:var(--display);font-weight:800;font-size:14px;letter-spacing:0;color:var(--bone);font-variant-numeric:tabular-nums}.silhouette-gauge-sep{color:var(--bone-4)}.silhouette-gauge-next{font-variant-numeric:tabular-nums;color:var(--bone-2)}.silhouette-gauge-tethers{margin-left:6px;padding-left:6px;border-left:1px solid var(--rule);color:var(--ember);font-variant-numeric:tabular-nums}.silhouette-debug-btn{position:absolute;top:36px;left:12px;z-index:3;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;pointer-events:auto;font-family:var(--mono);font-weight:800;font-size:9px;letter-spacing:.18em;padding:4px 8px;background:#0a0a0cd9;border:1px dashed var(--acid);color:var(--acid);transition:background .1s ease,color .1s ease}.silhouette-debug-btn:hover:not(:disabled){background:var(--acid);color:var(--ink)}.silhouette-debug-btn:disabled{opacity:.45;cursor:not-allowed}.fp.is-chase-mob{--cm-scale: 1.75;--cm-accent: var(--blood);position:relative;padding:14px;background:linear-gradient(180deg,#ff383814,#ff383805),var(--char-2);border:2px solid var(--cm-accent);box-shadow:3px 3px #ff383859,0 0 28px #ff383838,inset 0 0 0 1px #0006;--fp-pad: 14px;--fp-gap: 8px;--fp-name-size: calc(13px * var(--cm-scale) / 1.4);--fp-hp-size: calc(26px * var(--cm-scale) / 1.4);min-height:calc(var(--card-h, 220px) * 1.15);display:flex;flex-direction:column;gap:8px;font-family:var(--mono)}.fp.is-chase-mob .head{display:flex;align-items:center;gap:8px}.fp.is-chase-mob .id{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.fp.is-chase-mob .name{font-family:var(--display);font-size:calc(13px * var(--cm-scale) / 1.4);font-weight:800;letter-spacing:.1em;color:var(--blood);text-shadow:0 0 12px rgba(255,56,56,.4)}.fp.is-chase-mob .sub{font-size:9px;letter-spacing:.2em;color:var(--ember);font-family:var(--mono);font-weight:700}.fp.is-chase-mob .glyph{width:56px;height:56px;background:var(--blood);clip-path:polygon(25% 0,75% 0,75% 12%,87% 12%,87% 50%,75% 50%,75% 62%,62% 62%,62% 75%,37% 75%,37% 62%,25% 62%,25% 50%,12% 50%,12% 12%,25% 12%);position:relative;animation:chaseMobBreath 2.4s ease-in-out infinite;filter:drop-shadow(0 0 6px rgba(255,56,56,.55))}.fp.is-chase-mob .glyph:after{content:"";position:absolute;top:38%;left:24%;right:24%;height:12%;background:linear-gradient(to right,var(--ember) 0 30%,transparent 30% 70%,var(--ember) 70% 100%);filter:drop-shadow(0 0 4px var(--ember))}@keyframes chaseMobBreath{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.fp.is-chase-mob .hp{display:flex;align-items:baseline;gap:8px;position:relative}.fp.is-chase-mob .hp-num{font-family:var(--display);font-weight:800;font-size:calc(26px * var(--cm-scale) / 1.4);line-height:1;color:var(--bone);font-variant-numeric:tabular-nums}.fp.is-chase-mob .hp-max{font-size:12px;color:var(--bone-3);font-family:var(--mono)}.fp.is-chase-mob .hp-bar{height:8px;flex:1;background:var(--ink);border:1px solid var(--bone-4);position:relative}.fp.is-chase-mob .hp-bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--blood-2),var(--blood));box-shadow:inset 0 0 0 1px #00000073;transition:width .36s cubic-bezier(.4,0,.2,1)}.fp.is-chase-mob .intent{margin-top:auto;display:flex;align-items:baseline;gap:6px;font-family:var(--mono);font-weight:800;color:var(--coin)}.fp.is-chase-mob .intent .v{font-size:calc(22px * var(--cm-scale) / 1.4);line-height:1}.fp.is-chase-mob .intent .x{font-size:14px}.fp.is-chase-mob .chips{display:flex;gap:4px;flex-wrap:wrap}.fp.is-chase-mob .chip{display:inline-flex;align-items:center;font-family:var(--mono);font-weight:700;font-size:10px;letter-spacing:.1em;padding:2px 6px;border:1px solid var(--ember);color:var(--ember)}.cm-corner{position:absolute;width:14px;height:22px;pointer-events:none;background:repeating-linear-gradient(180deg,#a8a59acc 0,#a8a59acc 4px,#14141ae6 4px,#14141ae6 7px);opacity:.7}.cm-corner.tl{top:-18px;left:10px;transform:rotate(-12deg)}.cm-corner.tr{top:-18px;right:10px;transform:rotate(12deg)}.cm-corner.bl{bottom:-18px;left:10px;transform:rotate(190deg);height:16px}.cm-corner.br{bottom:-18px;right:10px;transform:rotate(170deg);height:16px}.cm-persistent{position:absolute;top:-10px;right:-1px;z-index:3;font-family:var(--mono);font-weight:800;font-size:9px;letter-spacing:.2em;padding:2px 6px;color:var(--ink);background:var(--blood);border:1px solid var(--blood)}.fp.is-chase-mob.is-entering{animation:chaseMobLand .72s cubic-bezier(.34,0,.2,1) backwards}@keyframes chaseMobLand{0%{transform:translateY(-160px) scale(1.4);opacity:0;filter:brightness(2.4) saturate(1.4)}45%{transform:translateY(20px) scale(.94);opacity:1;filter:brightness(1.4)}65%{transform:translateY(-6px) scale(1.02);filter:brightness(1.1)}to{transform:translateY(0) scale(1);opacity:1;filter:brightness(1)}}.enemy-arena.is-shaking,.stage.is-shaking{animation:stageShake .38s steps(6,end)}@keyframes stageShake{0%{translate:0 0}15%{translate:-4px 1px}30%{translate:5px -2px}45%{translate:-3px 3px}60%{translate:2px -1px}80%{translate:-1px 1px}to{translate:0 0}}.fp.is-chase-mob.is-stunned{filter:grayscale(.35) brightness(.7);--cm-accent: var(--bone-4);box-shadow:3px 3px #00000080,inset 0 0 0 1px #0006}.fp.is-chase-mob.is-stunned .glyph{animation:chaseMobSlump 2.6s ease-in-out infinite}@keyframes chaseMobSlump{0%,to{transform:translateY(2px) rotate(-2deg)}50%{transform:translateY(4px) rotate(2deg)}}.cm-binding{position:absolute;left:-6px;right:-6px;top:50%;transform:translateY(-50%);height:12px;background:repeating-linear-gradient(90deg,#a8a59ae6 0,#a8a59ae6 5px,#14141af2 5px,#14141af2 8px);border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);box-shadow:0 0 6px #0009;opacity:0;pointer-events:none;z-index:2}.fp.is-chase-mob.is-stunned .cm-binding{opacity:1;animation:cmBindingTighten .36s cubic-bezier(.4,0,.2,1)}@keyframes cmBindingTighten{0%{transform:translateY(-50%) scaleX(.2);opacity:0}80%{transform:translateY(-50%) scaleX(1.04);opacity:1}to{transform:translateY(-50%) scaleX(1);opacity:1}}.cm-stun-chip{position:absolute;top:-10px;left:12px;font-family:var(--mono);font-weight:800;font-size:11px;letter-spacing:.16em;padding:3px 8px;background:var(--ink);color:var(--coin);border:1px solid var(--coin);box-shadow:0 0 10px #f5b40059;display:flex;align-items:baseline;gap:6px;z-index:4}.cm-stun-chip .lbl{font-size:9px;letter-spacing:.18em;color:var(--bone-3)}.cm-stun-chip .v{font-family:var(--display);font-weight:800;font-size:16px;line-height:1;color:var(--coin)}.fp.is-chase-mob.is-stun-ticking .cm-stun-chip{animation:cmStunTick .54s ease-out}@keyframes cmStunTick{0%{transform:scale(1)}30%{transform:scale(1.18);filter:brightness(1.5)}to{transform:scale(1);filter:brightness(1)}}.fp.is-chase-mob.is-reviving{animation:chaseMobRevive 1s cubic-bezier(.34,0,.2,1)}.fp.is-chase-mob.is-reviving .hp-bar>i{animation:hpRefill .8s cubic-bezier(.2,0,.2,1) forwards}.fp.is-chase-mob.is-reviving .cm-binding{animation:cmBindingSnap .42s cubic-bezier(.4,0,.7,1) forwards}.fp.is-chase-mob.is-reviving .glyph:after{animation:chaseMobEyeFlare 1s ease-out}@keyframes chaseMobRevive{0%{filter:grayscale(.35) brightness(.7);transform:scale(1)}20%{filter:grayscale(0) brightness(2);transform:scale(1.1)}to{filter:grayscale(0) brightness(1);transform:scale(1)}}@keyframes hpRefill{0%{width:var(--hp-from, 0%);background:linear-gradient(90deg,var(--bone-2),var(--bone))}60%{background:linear-gradient(90deg,var(--ember),var(--blood))}to{width:100%;background:linear-gradient(90deg,var(--blood-2),var(--blood))}}@keyframes cmBindingSnap{0%{transform:translateY(-50%) scaleX(1);opacity:1}30%{transform:translateY(-50%) scaleX(1.04) translate(-4px);opacity:.9}to{transform:translateY(-50%) scaleX(1) translate(28px);opacity:0}}@keyframes chaseMobEyeFlare{0%{filter:drop-shadow(0 0 4px var(--ember))}25%{filter:drop-shadow(0 0 14px var(--blood)) drop-shadow(0 0 28px var(--blood));transform:scale(1.6)}to{filter:drop-shadow(0 0 4px var(--ember));transform:scale(1)}}.fp.is-chase-mob.is-immune{--cm-accent: var(--acid);background:linear-gradient(180deg,#ff383814,#ff383805),repeating-linear-gradient(-45deg,rgba(214,255,58,.12) 0 6px,transparent 6px 12px),var(--char-2);border-color:var(--acid);box-shadow:3px 3px #d6ff3a4d,0 0 24px #d6ff3a2e,inset 0 0 0 1px #0006}.fp.is-chase-mob.is-immune .cm-persistent{background:var(--acid);border-color:var(--acid);color:var(--ink)}.fp.is-chase-mob.is-immune .name{color:var(--acid);text-shadow:0 0 12px rgba(214,255,58,.4)}.cm-immune-chip{position:absolute;top:-10px;left:12px;font-family:var(--mono);font-weight:800;font-size:10px;letter-spacing:.18em;padding:3px 8px;background:var(--ink);color:var(--acid);border:1px solid var(--acid);animation:cmImmuneHum 1.8s ease-in-out infinite;z-index:4}@keyframes cmImmuneHum{0%,to{box-shadow:0 0 4px #d6ff3a66}50%{box-shadow:0 0 14px #d6ff3acc}}.fp.is-chase-mob.is-catching-up{animation:chaseMobCatchUp .48s cubic-bezier(.34,0,.2,1) both}@keyframes chaseMobCatchUp{0%{transform:translate(-120%) scale(1.04);opacity:0;filter:brightness(1.6)}70%{transform:translate(6%) scale(.98);opacity:1;filter:brightness(1.2)}to{transform:translate(0) scale(1);opacity:1;filter:brightness(1)}}.fp.is-chase-mob.is-hit{animation:chaseMobHit .22s ease-out}@keyframes chaseMobHit{0%{filter:brightness(1) drop-shadow(0 0 0 transparent)}30%{filter:brightness(1.8) drop-shadow(0 0 12px var(--blood));transform:translate(-2px)}to{filter:brightness(1);transform:translate(0)}}body.is-reduce-motion .fp.is-chase-mob,body.is-reduce-motion .fp.is-chase-mob *{animation:none!important}.combat{position:relative;display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;background:var(--ink)}.combat>.enemy-arena{animation:combatRowFromTop var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) 0ms backwards}.combat>.combat-intent-band{animation:combatRowFade var(--mo-base, .24s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .12s backwards}.combat>.combat-mid-stack{animation:combatRowFade var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .16s backwards}.combat>.combat-hand{animation:combatRowFromBottom var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .2s backwards}@keyframes combatRowFromTop{0%{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:translateY(0)}}@keyframes combatRowFromBottom{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes combatRowFade{0%{opacity:0}to{opacity:1}}body.is-reduce-motion .combat>.enemy-arena,body.is-reduce-motion .combat>.combat-intent-band,body.is-reduce-motion .combat>.combat-mid-stack,body.is-reduce-motion .combat>.combat-hand{animation-duration:.01ms!important}.fp{container-type:inline-size;container-name:plaque;position:relative;display:flex;flex-direction:column;gap:var(--fp-gap);padding:var(--fp-pad);background:var(--fp-bg, var(--char-2, #1a1a20));border:1px solid var(--fp-border, var(--rule, #3a3a44));border-left:var(--fp-border-left, 1px solid var(--fp-border, var(--rule)));flex-shrink:1;min-width:0;--fp-pad: 10px;--fp-gap: 6px;--fp-name-size: 13px;--fp-name-letter: .08em;--fp-hp-size: 26px;--fp-hp-max-show: inline;--fp-stat-size: 13px;--fp-stat-key-show: inline;--fp-stat-glyph-show: none;--fp-stat-max-show: inline;--fp-class-show: inline;--fp-sub-show: inline;--fp-prio-3: inline-flex;--fp-prio-4: inline-flex;--fp-prio-5: inline-flex;--fp-chip-size: md}@container plaque (max-width: 199.9px){.fp{--fp-name-size: 12px;--fp-hp-size: 22px;--fp-stat-key-show: none;--fp-stat-glyph-show: inline;--fp-prio-5: none;--fp-chip-size: sm}}@container plaque (max-width: 139.9px){.fp{--fp-pad: 8px;--fp-gap: 4px;--fp-hp-size: 18px;--fp-hp-max-show: none;--fp-stat-size: 12px;--fp-stat-max-show: none;--fp-prio-4: none;--fp-class-show: none}}@container plaque (max-width: 99.9px){.fp{--fp-pad: 6px;--fp-name-size: 10px;--fp-name-letter: .04em;--fp-hp-size: 14px;--fp-stat-size: 10px;--fp-prio-3: none;--fp-sub-show: none}}.fp-head{display:flex;align-items:center;gap:7px;min-width:0}.fp-head-id{display:flex;flex-direction:column;min-width:0;flex:1}.fp-name{font-family:var(--mono);font-weight:700;font-size:var(--fp-name-size);letter-spacing:var(--fp-name-letter);color:var(--bone, #ebe8de);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fp-sub{display:var(--fp-sub-show);font-family:var(--mono);font-size:9px;letter-spacing:.16em}.fp-badge{font-size:9px;font-weight:700;letter-spacing:.2em;padding:2px 4px;color:var(--ink, #0a0a0c);background:var(--acid, #d6ff3a)}.fp-hp{display:flex;align-items:baseline;gap:6px;position:relative}.fp-dots{position:absolute;right:0;top:-2px;display:flex;gap:4px;align-items:center;pointer-events:none;z-index:2}.fp-dot{pointer-events:auto;display:inline-flex;align-items:center;gap:4px;padding:2px 5px 1px;border:1px solid currentColor;background:var(--ink, #0f0d0b);font-weight:700;letter-spacing:.06em;line-height:1;font-size:11px;box-shadow:0 0 0 1px #0006;animation:fpDotIn .2s ease-out}@keyframes fpDotIn{0%{opacity:0;transform:translateY(-3px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.fp-dot-k{font-size:9px;letter-spacing:.12em;opacity:.85}.fp-dot-v{font-size:13px;font-weight:800;font-variant-numeric:tabular-nums;min-width:10px;text-align:right}.fp-dot-burn{color:#ff7038;box-shadow:0 0 6px #ff703866}.fp-dot-bleed{color:#d24a4a;box-shadow:0 0 6px #d24a4a66}.fp-dot-poison{color:#7fb56e;box-shadow:0 0 6px #7fb56e66}.fp-hp-num{font-family:var(--display);font-weight:800;font-size:var(--fp-hp-size);line-height:1;font-variant-numeric:tabular-nums}.fp-hp-max{display:var(--fp-hp-max-show);font-family:var(--mono);font-size:10px;color:var(--bone-3, #6a6862)}.fp-hp-bar{flex:1;min-width:20px}.fp-hp-inc{font-family:var(--mono);font-size:11px;font-weight:800;color:var(--blood, #ff3838)}.fp-row{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;font-family:var(--mono)}.fp-row.is-tight{gap:6px}.fp-row.prio-3{display:var(--fp-prio-3)}.fp-row.prio-4{display:var(--fp-prio-4)}.fp-row.prio-5{display:var(--fp-prio-5)}.fp-stat{display:inline-flex;align-items:baseline;gap:3px}.fp-stat.prio-3{display:var(--fp-prio-3)}.fp-stat.prio-4{display:var(--fp-prio-4)}.fp-stat.prio-5{display:var(--fp-prio-5)}.fp-stat-k{display:var(--fp-stat-key-show);font-size:9px;color:var(--bone-3, #6a6862);letter-spacing:.14em}.fp-stat-glyph{display:var(--fp-stat-glyph-show);font-size:11px;opacity:.85;line-height:1}.fp-stat-v{font-size:var(--fp-stat-size);font-weight:700}.fp-stat-max{display:var(--fp-stat-max-show);font-size:9px;color:var(--bone-3, #6a6862)}.fp-chips{display:flex;gap:4px;flex-wrap:wrap}.fp-chips.prio-3{display:var(--fp-prio-3) flex;flex-wrap:wrap}.fp-intent{display:flex;align-items:baseline;gap:6px;font-family:var(--mono);font-weight:800}.fp-intent-amt{font-size:calc(var(--fp-hp-size) - 4px);line-height:1}.fp-intent-target{display:var(--fp-prio-3);font-size:9px;color:var(--bone-3, #6a6862);letter-spacing:.1em;margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-strip.is-ff-pressing{position:relative}.player-strip.is-ff-pressing:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;border:2px solid transparent;border-radius:inherit;background:linear-gradient(90deg,#b0484852,#b0484852) border-box;-webkit-mask:linear-gradient(#fff 0 0) padding-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:ff-press-fill var(--ff-press-ms, .45s) linear forwards}@keyframes ff-press-fill{0%{opacity:0}to{opacity:1}}.player-strip.is-ff-armed{box-shadow:0 0 0 2px var(--blood-2, #b04848),0 0 12px #b0484899;transition:box-shadow .2s ease-out}.player-strip.is-ff-armed:before{content:"TARGETED";position:absolute;top:-8px;right:8px;padding:1px 5px;font-size:8px;font-weight:700;font-family:var(--mono);letter-spacing:.1em;color:var(--bone-1, #f4ebd9);background:var(--blood-2, #b04848);border-radius:2px;pointer-events:none}.enemy-variant-badge{display:inline-flex;align-items:center;padding:1px 5px;margin-left:6px;font-size:9px;font-weight:700;letter-spacing:.1em;color:var(--blood-2, #b04848);background:#b048481a;border:1px solid rgba(176,72,72,.32);border-radius:3px;white-space:nowrap;vertical-align:middle}.enemy-stagger-meter{display:flex;flex-direction:row;gap:3px;margin-bottom:4px;justify-content:flex-end}.enemy-stagger-pip{width:8px;height:4px;background:#78502847;border:1px solid rgba(120,80,40,.45);border-radius:1px;transition:background .14s ease-out,border-color .14s ease-out}.enemy-stagger-pip.is-filled{background:var(--blood-2, #b04848);border-color:var(--blood-2, #b04848);box-shadow:0 0 4px #b048488c}.enemy-intent-reason{display:inline-flex;align-items:center;justify-content:center;margin-left:4px;width:14px;height:14px;font-size:10px;line-height:1;color:var(--blood-2, #b04848);background:#b048481f;border:1px solid rgba(176,72,72,.32);border-radius:50%;flex-shrink:0}.fw{container-type:inline-size;container-name:widget;position:relative;display:flex;align-items:center;flex-wrap:nowrap;gap:8px;padding:7px 9px;background:var(--char, #131318);border:1px solid var(--fw-accent, var(--rule-hi, #44423d));min-height:38px;min-width:0;--fw-k-show: inline;--fw-glyph-show: none;--fw-v-size: 16px;--fw-prio-3: inline-flex;--fw-badge-show: inline-flex;--fw-gap: 8px}.fw.is-me{border-width:2px}.fw.is-empty{background:transparent;border-style:dashed;border-color:var(--rule, #26262e);justify-content:center}@container widget (max-width: 199.9px){.fw{--fw-k-show: none;--fw-glyph-show: inline;--fw-v-size: 14px;--fw-gap: 6px;padding:6px 7px}}@container widget (max-width: 139.9px){.fw{--fw-prio-3: none;--fw-badge-show: none;--fw-v-size: 12px;--fw-gap: 4px}}@container widget (max-width: 99.9px){.fw{padding:4px 5px;--fw-v-size: 11px}}.fw-cell{display:inline-flex;align-items:baseline;gap:3px;flex-shrink:0}.fw-cell.prio-3{display:var(--fw-prio-3)}.fw-k{display:var(--fw-k-show);font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;color:var(--fw-k-color, var(--bone-3, #6a6862))}.fw-glyph{display:var(--fw-glyph-show);font-size:12px;opacity:.9}.fw-v{font-family:var(--mono);font-size:var(--fw-v-size);font-weight:800;line-height:1;color:var(--fw-v-color, var(--bone, #ebe8de))}.fw-divider{width:1px;height:16px;background:var(--rule, #26262e);flex-shrink:0}.fw-badges{display:var(--fw-badge-show);gap:3px;margin-left:auto}.fw-badge{font-family:var(--display);font-weight:800;font-size:9px;letter-spacing:.18em;padding:1px 4px;line-height:1.2}.fw-badge-nat{background:var(--acid, #d6ff3a);color:var(--ink, #0a0a0c)}.fw-badge-bust{background:var(--blood, #ff3838);color:var(--bone, #ebe8de)}.fw-badge-ins{background:var(--coin, #f5b400);color:var(--ink, #0a0a0c)}.fw-pip{display:inline-flex;align-items:center;gap:3px;font-family:var(--mono);font-size:9px;font-weight:800;letter-spacing:.1em;padding:2px 5px;border:1px solid var(--bone-4, #44423d);color:var(--bone-3, #6a6862);background:transparent;transition:color .12s,border-color .12s,background .12s;flex-shrink:0}.fw-pip.is-on{color:var(--blood, #ff3838);border-color:var(--blood, #ff3838);background:#ff383814}.fw-pip.is-on .fw-pip-v{color:var(--blood, #ff3838)}.fw-pip.is-reactive{color:var(--ink, #0a0a0c);background:var(--blood, #ff3838);border-color:var(--blood, #ff3838);animation:faiReactivePulse 1.4s ease-out infinite}.fw-pip.is-reactive .fw-pip-v{color:var(--ink, #0a0a0c)}.fw-pip-k{display:var(--fw-k-show)}.fw-pip-glyph{display:var(--fw-glyph-show);font-size:11px}.fw-pip-v{opacity:.85;font-size:9px}.cfx-strike-chip{position:fixed;top:0;left:0;width:16px;height:16px;border-radius:50%;background:currentColor;box-shadow:0 0 12px currentColor,0 0 4px #0009,inset 0 0 0 1px #ffffff8c;transform:translate(-50%,-50%);pointer-events:none;will-change:transform,opacity}body.is-reduce-motion .cfx-strike-chip{animation-duration:.01ms!important}.fw-faithful{flex-wrap:wrap;row-gap:3px}.fw-faithful .fw-pip{min-width:0;max-width:100%}.fw-faithful .fw-pip-k{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.fw-bandito{gap:4px;justify-content:flex-start}.bandito-cylinder-row{display:inline-flex;gap:2px;font-family:var(--mono);font-size:13px;line-height:1;color:var(--bone-3, #6a6862);letter-spacing:0;flex-shrink:0}.bandito-cylinder-pip{width:11px;text-align:center;opacity:.55}.bandito-cylinder-pip.is-filled{color:#e6a96a;opacity:1;text-shadow:0 0 4px rgba(230,169,106,.4)}.bandito-cocked-chip{display:inline-flex;align-items:baseline;gap:2px;font-family:var(--mono);font-size:12px;font-weight:700;color:#e6a96a;min-width:0;flex-shrink:0;margin-left:auto}.bandito-cocked-v{font-variant-numeric:tabular-nums}@container widget (max-width: 199.9px){.bandito-cylinder-row{font-size:11px;gap:1px}.bandito-cylinder-pip{width:9px}.bandito-cocked-chip{font-size:11px}}@container widget (max-width: 139.9px){.bandito-cylinder-row{font-size:10px}.bandito-cylinder-pip{width:8px}.bandito-cocked-chip{font-size:10px}}.fw-pip.is-flip-ready{color:var(--jester, #d040ff);border-color:var(--jester, #d040ff);background:#d040ff14}.fp-deck-enemies{display:grid;gap:8px;align-items:flex-end;justify-content:center}.fp-deck-players{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,200px));gap:10px;justify-content:center}.combat-mid-stack{display:grid;grid-template-columns:repeat(var(--party-cols, 4),var(--card-w));gap:0;padding:0 var(--sp-5);border-bottom:1px solid var(--rule);background:var(--char);justify-content:center}.combat-mid-widgets,.combat-mid-plaques{grid-column:1 / -1;display:grid;grid-template-columns:subgrid;gap:10px}.combat-mid-widgets{padding:12px 0;min-height:0}.combat-mid-plaques{padding:8px 0 14px;border-top:1px dashed var(--rule)}.combat-mid-plaques .fp{min-height:var(--card-h)}.fp-stat.is-gained .fp-stat-v{animation:blockGainPulse .44s ease-out}.fp-bar.fp-hp-bar.is-healing>i{background:linear-gradient(90deg,var(--acid),#6bd28a)!important;box-shadow:0 0 8px #6bd28a99;animation:hpHealPulse .52s ease-out}@keyframes hpHealPulse{0%{box-shadow:0 0 #6bd28a00;filter:brightness(1)}35%{box-shadow:0 0 14px #6bd28af2;filter:brightness(1.55)}to{box-shadow:0 0 8px #6bd28a99;filter:brightness(1)}}body.is-reduce-motion .fp-bar.fp-hp-bar.is-healing>i{animation:none}.is-pulsed{animation:pulseChange .38s cubic-bezier(.18,.85,.3,1)}@keyframes pulseChange{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(1.18);filter:brightness(1.55)}to{transform:scale(1);filter:brightness(1)}}body.is-reduce-motion .is-pulsed{animation:none}.fp-intent .enemy-intent-damage,.fp-intent .enemy-intent-line{display:inline-flex;align-items:baseline;gap:4px}.fp-intent .enemy-intent-line.is-idle{color:var(--bone-4)}.fp-intent .enemy-intent-attack-ally{min-width:0;max-width:100%}.fp-intent .enemy-intent-ally-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.combat-map-toggle{position:absolute;top:8px;right:var(--sp-5);z-index:6;display:inline-flex;align-items:center;gap:6px;padding:4px 10px;font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.12em;color:var(--bone-2);background:var(--char);border:1px solid var(--rule-hi);cursor:pointer;transition:border-color .1s,color .1s,background .1s}.combat-map-toggle:hover,.combat-map-toggle.is-open{border-color:var(--acid);color:var(--acid)}.combat-map-toggle-floor{font-size:10px;color:var(--bone-3);letter-spacing:.04em}.combat-map-toggle.is-open .combat-map-toggle-floor{color:var(--acid)}.combat-map-toggle-caret{font-size:9px}.combat-path-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0c80;z-index:8;animation:fadeIn .12s ease-out}.combat-path-panel{position:absolute;top:8px;right:var(--sp-5);width:min(720px,calc(100% - 2 * var(--sp-5)));background:var(--char);border:1px solid var(--bone-2);box-shadow:6px 6px 0 0 var(--acid);z-index:9;padding:var(--sp-3) var(--sp-4) var(--sp-4);animation:pathPopIn .14s cubic-bezier(.18,.85,.3,1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pathPopIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.combat-path-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--sp-3)}.combat-path-panel-title{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.14em;color:var(--bone-2)}.combat-path-panel-close{width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;color:var(--bone-3);border:1px solid transparent;cursor:pointer;font-size:12px;transition:color .1s,border-color .1s}.combat-path-panel-close:hover{color:var(--bone);border-color:var(--rule-hi)}.enemy-arena{padding:150px var(--sp-5) var(--sp-4);border-bottom:1px solid var(--rule);background:linear-gradient(180deg,rgba(255,56,56,.04),transparent 70%);overflow:hidden;max-height:800px;transform:translateY(0);opacity:1;transition:max-height .38s cubic-bezier(.4,0,.7,1),padding-top .38s cubic-bezier(.4,0,.7,1),padding-bottom .38s cubic-bezier(.4,0,.7,1),border-bottom-width .24s ease-out,transform .36s cubic-bezier(.4,0,.7,1),opacity .28s ease-out}.combat[data-phase=inn]>.enemy-arena{max-height:0;padding-top:0;padding-bottom:0;border-bottom-width:0;transform:translateY(-100%);opacity:0;pointer-events:none}body.is-reduce-motion .enemy-arena{transition-duration:.01ms!important}.enemy-grid{padding-bottom:14px}.enemy-grid{display:grid;gap:var(--sp-3);align-items:flex-end;justify-content:center;min-height:var(--card-h);transition:min-height .52s cubic-bezier(.4,0,.2,1)}.enemy-card{text-align:left;transition:border-color .12s,transform .12s,box-shadow .12s;font:inherit;color:inherit;animation-delay:calc(var(--enemy-arrive-stagger, 0) * 70ms)}.enemy-card.is-arriving{animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards}@keyframes enemyArrive{0%{transform:translateY(-90px) scale(.7);opacity:0;filter:brightness(1.6)}55%{transform:translateY(14px) scale(1.05);opacity:1;filter:brightness(1.2)}75%{transform:translateY(-4px) scale(.99);filter:brightness(1)}to{transform:translateY(0) scale(1);opacity:1;filter:brightness(1)}}.enemy-card.is-shuffling{animation:enemyShuffleHop .44s cubic-bezier(.34,1.56,.64,1)}@keyframes enemyShuffleHop{0%{translate:0 0}35%{translate:0 -12px}62%{translate:0 4px}to{translate:0 0}}body.is-reduce-motion .enemy-card.is-shuffling{animation:none!important}.enemy-card-elite{border-width:1px;box-shadow:2px 2px #00000059}.enemy-card-elite .enemy-card-name{font-size:16px}.enemy-card-boss{border-width:2px;border-color:var(--blood);box-shadow:3px 3px #ff383840,0 0 28px #ff38382e;animation:enemyBossLoom 3.6s ease-in-out .48s infinite}.enemy-card-boss.is-arriving:not(.is-boss-arrival){animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards,enemyBossLoom 3.6s ease-in-out .48s infinite}.enemy-card-boss .enemy-card-name{font-size:20px;letter-spacing:.06em}.enemy-card-boss .enemy-card-intent{font-size:12px}.enemy-card-boss .enemy-card-hp .hp-text{font-size:13px}@keyframes enemyBossLoom{0%,to{box-shadow:3px 3px #ff383840,0 0 28px #ff38382e}50%{box-shadow:3px 3px #ff383859,0 0 40px #ff383852}}body.is-reduce-motion .enemy-card-boss{animation:none!important}body.is-reduce-motion .enemy-card.is-winding-up{animation:none!important;box-shadow:0 0 0 2px #ff38388c inset}.enemy-card.is-clickable{cursor:pointer}.enemy-card.is-clickable:hover{border-color:var(--blood);transform:translate(-1px,-1px);box-shadow:3px 3px #ff383840}.enemy-card.is-my-target{border-color:var(--acid);box-shadow:0 0 0 1px var(--acid) inset,3px 3px #d6ff3a40}.enemy-card.is-my-target.is-clickable:hover{border-color:var(--acid);box-shadow:0 0 0 1px var(--acid) inset,4px 4px #d6ff3a59}.enemy-card.is-sworn{border-color:var(--coin);box-shadow:0 0 0 2px var(--coin) inset,3px 3px #f5b40059}.enemy-card.is-sworn.is-clickable:hover{border-color:var(--coin);box-shadow:0 0 0 2px var(--coin) inset,4px 4px #f5b40073}.hacker-buffer-bits{font-family:var(--mono, monospace);font-size:12px;letter-spacing:1px;color:#ff5be8}.hacker-buffer-carry{font-family:var(--mono, monospace);font-size:12px;letter-spacing:1px;color:#ff5be840;margin-right:4px;padding-right:4px;border-right:1px dashed rgba(255,91,232,.3);transition:color .12s ease,text-shadow .12s ease}.hacker-buffer-carry.is-flashing{color:#ff2a2a;text-shadow:0 0 6px rgba(255,42,42,.9),0 0 12px rgba(255,91,232,.6);animation:hacker-overflow-flash .6s ease-out}.hacker-ability .clown-ability-stat-k{color:#ff5be8}.hacker-ability.is-overflow-flash{animation:hacker-overflow-pulse .6s ease-out}@keyframes hacker-overflow-flash{0%{transform:scale(1.4);opacity:1}to{transform:scale(1);opacity:1}}@keyframes hacker-overflow-pulse{0%{box-shadow:0 0 0 2px #ff2a2ae6,0 0 24px #ff5be8b3}to{box-shadow:none}}body.is-reduce-motion .hacker-buffer-carry.is-flashing,body.is-reduce-motion .hacker-ability.is-overflow-flash{animation:none}.programmer-ability{display:flex;flex-direction:column;gap:4px;padding:6px 8px;background:#08180eb3;border:1px solid color-mix(in srgb,var(--terminal) 35%,transparent);border-radius:4px;min-width:180px;max-width:220px;color:var(--bone)}.programmer-ability-header{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px dashed color-mix(in srgb,var(--terminal) 30%,transparent);padding-bottom:2px}.programmer-ability-title{color:var(--terminal);font-size:12px;letter-spacing:1px}.programmer-ability-count{color:color-mix(in srgb,var(--terminal) 80%,var(--bone) 20%);font-size:11px}.programmer-ability-empty{font-size:10px;color:var(--bone-3);padding:4px 2px;font-style:italic}.programmer-ability-listing{list-style:none;padding:0;margin:0;max-height:140px;overflow-y:auto;font-size:11px;line-height:1.3}.programmer-line{display:flex;gap:6px;padding:1px 4px;border-left:2px solid transparent}.programmer-line-idx{color:var(--bone-3);min-width:18px}.programmer-line-op{color:var(--terminal)}.programmer-line.is-just-compiled{background:color-mix(in srgb,var(--terminal) 18%,transparent);border-left-color:var(--terminal);animation:programmer-compile-flash .5s ease-out}.programmer-line.is-crash .programmer-line-op{color:var(--blood);text-shadow:0 0 4px color-mix(in srgb,var(--blood) 40%,transparent);font-weight:700}@keyframes programmer-compile-flash{0%{background:color-mix(in srgb,var(--terminal) 50%,transparent)}to{background:color-mix(in srgb,var(--terminal) 18%,transparent)}}.programmer-ability-warning{font-size:10px;color:var(--blood);text-align:center;padding:2px 4px;background:color-mix(in srgb,var(--blood) 14%,transparent);border:1px solid color-mix(in srgb,var(--blood) 35%,transparent);border-radius:2px;letter-spacing:1px}.programmer-ability-run{-webkit-appearance:none;-moz-appearance:none;appearance:none;font-family:var(--mono, monospace);font-size:13px;letter-spacing:2px;padding:6px 12px;background:var(--terminal);color:var(--ink);border:1px solid var(--terminal);border-radius:3px;cursor:pointer;text-align:center;transition:filter .12s ease,transform 80ms ease}.programmer-ability-run.is-disabled,.programmer-ability-run:disabled{background:#4afa8a26;color:var(--bone-3);border-color:#4afa8a40;cursor:not-allowed}.programmer-ability-run.is-enabled:hover{filter:brightness(1.1)}.programmer-ability-run.is-enabled:active{transform:translateY(1px)}.programmer-ability-run.is-syntax-error{background:var(--blood);border-color:var(--blood);color:var(--bone);animation:programmer-crash-pulse .7s ease-in-out infinite alternate}@keyframes programmer-crash-pulse{0%{box-shadow:0 0 4px var(--blood)}to{box-shadow:0 0 14px var(--blood)}}.programmer-ability-last{font-size:11px;padding:3px 4px;border-top:1px dashed color-mix(in srgb,var(--terminal) 25%,transparent);display:flex;justify-content:space-between;gap:6px;cursor:help}.programmer-ability-last-k{color:var(--bone-3)}.programmer-ability-last-v{color:var(--terminal)}.programmer-ability-last.is-halt .programmer-ability-last-v{color:var(--ember)}.programmer-ability-last.is-syntax-error{border-top-color:color-mix(in srgb,var(--blood) 45%,transparent)}.programmer-ability-last.is-syntax-error .programmer-ability-last-v{color:var(--blood);font-weight:700;text-shadow:0 0 6px color-mix(in srgb,var(--blood) 60%,transparent)}.programmer-ability-last.is-flashing{animation:programmer-run-flash .6s ease-out}@keyframes programmer-run-flash{0%{background:color-mix(in srgb,var(--terminal) 30%,transparent)}to{background:transparent}}body.is-reduce-motion .programmer-ability-line.is-just-compiled,body.is-reduce-motion .programmer-ability-last.is-flashing,body.is-reduce-motion .programmer-ability-run.is-syntax-error{animation:none}.programmer-slots-container{display:flex;flex-direction:column;gap:6px}.programmer-slot{display:flex;flex-direction:column;gap:2px;padding:4px 6px;background:#08180e66;border:1px solid color-mix(in srgb,var(--terminal) 20%,transparent);border-radius:3px;transition:all .2s ease}.programmer-slot.is-active{background:#08180ee6;border-color:color-mix(in srgb,var(--terminal) 60%,transparent);box-shadow:inset 0 0 8px color-mix(in srgb,var(--terminal) 15%,transparent)}.programmer-slot-header{display:flex;justify-content:space-between;align-items:baseline;gap:4px}.programmer-slot-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:none;color:var(--terminal);font-family:var(--mono, monospace);font-size:11px;letter-spacing:1px;cursor:pointer;padding:0;transition:opacity .12s ease}.programmer-slot.is-inactive .programmer-slot-button{opacity:.6}.programmer-slot-button:hover{opacity:1;text-decoration:underline}.programmer-slot-count{color:color-mix(in srgb,var(--terminal) 70%,var(--bone) 30%);font-size:10px}.programmer-slot-empty{font-size:10px;color:var(--bone-3);padding:2px 4px;font-style:italic}.programmer-slot-listing{list-style:none;padding:0;margin:0;max-height:100px;overflow-y:auto;font-size:10px;line-height:1.3}.programmer-slot-warning{font-size:9px;color:var(--blood);text-align:center;padding:1px 3px;background:color-mix(in srgb,var(--blood) 10%,transparent);border:1px solid color-mix(in srgb,var(--blood) 25%,transparent);border-radius:2px;letter-spacing:.5px}.hack-menu{display:flex;flex-direction:column;gap:2px;padding:4px 6px;background:#14081899;border:1px solid rgba(255,91,232,.25);border-radius:4px;min-width:160px}.hack-menu-title{font-size:11px;letter-spacing:1px;color:#ff5be8;padding-bottom:2px;border-bottom:1px dashed rgba(255,91,232,.25);margin-bottom:2px}.hack-row{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:3px 6px;background:transparent;border:1px solid transparent;border-radius:3px;font-size:12px;letter-spacing:.5px;color:var(--bone, #ebe8de);cursor:pointer;transition:background 80ms ease,border-color 80ms ease}.hack-row.is-enabled:hover{background:#ff5be81f;border-color:#ff5be880}.hack-row.is-disabled{opacity:.35;cursor:not-allowed}.hack-row-name{color:var(--bone, #ebe8de)}.hack-row-cost{font-family:var(--mono, monospace);color:#ff5be8;font-weight:700;background:#ff5be81f;padding:1px 6px;border-radius:8px}.bard-fretboard{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#0f141e66;border:1px solid color-mix(in srgb,var(--cobalt, #5cc8ff) 30%,transparent);border-radius:6px}.bard-fretboard.is-strummed{border-color:color-mix(in srgb,var(--cobalt, #5cc8ff) 65%,transparent);box-shadow:0 0 8px color-mix(in srgb,var(--cobalt, #5cc8ff) 25%,transparent)}.bard-fretboard.is-chord-firing{border-color:var(--cobalt, #5cc8ff);box-shadow:0 0 18px color-mix(in srgb,var(--cobalt, #5cc8ff) 60%,transparent);animation:bard-chord-pulse 1.2s ease-out}@keyframes bard-chord-pulse{0%{transform:scale(1)}20%{transform:scale(1.06)}60%{transform:scale(1.02)}to{transform:scale(1)}}.bard-fretboard-banner{position:absolute;top:-22px;left:50%;transform:translate(-50%);padding:3px 10px;border-radius:4px;background:var(--cobalt, #5cc8ff);color:#0c0f17;font-size:11px;font-weight:700;letter-spacing:.8px;white-space:nowrap;pointer-events:none;animation:bard-chord-banner 1.2s ease-out}@keyframes bard-chord-banner{0%{transform:translate(-50%,6px);opacity:0}25%{transform:translate(-50%);opacity:1}80%{transform:translate(-50%,-2px);opacity:1}to{transform:translate(-50%,-10px);opacity:0}}.bard-fretboard{position:relative}.bard-fretboard-frets{display:flex;flex-direction:column;gap:1px}.bard-fretboard-string{display:flex;align-items:center;gap:4px}.bard-fretboard-string-label{width:14px;text-align:right;font-size:10px;color:color-mix(in srgb,var(--bone, #ebe8de) 60%,transparent)}.bard-fretboard-string-line{display:flex;gap:2px;align-items:center}.bard-fretboard-fret{width:14px;height:14px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;color:var(--cobalt, #5cc8ff);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:50%}.bard-fretboard-fret.is-lit{background:color-mix(in srgb,var(--cobalt, #5cc8ff) 70%,transparent);border-color:var(--cobalt, #5cc8ff);color:#0c0f17;box-shadow:0 0 6px var(--cobalt, #5cc8ff)}.bard-fretboard-fret.is-occupied{opacity:.18}.bard-fretboard-rest{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:56px;padding:4px 8px;background:color-mix(in srgb,var(--cobalt, #5cc8ff) 18%,transparent);border:1px solid color-mix(in srgb,var(--cobalt, #5cc8ff) 50%,transparent);border-radius:4px;color:var(--bone, #ebe8de);font-family:inherit;cursor:pointer;transition:background .12s ease,border-color .12s ease}.bard-fretboard-rest:hover:not(:disabled){background:color-mix(in srgb,var(--cobalt, #5cc8ff) 35%,transparent)}.bard-fretboard-rest:disabled{opacity:.45;cursor:not-allowed}.bard-fretboard-rest-label{font-size:11px;letter-spacing:.6px;font-weight:600}.bard-fretboard-rest-state{font-size:9px;color:color-mix(in srgb,var(--bone, #ebe8de) 70%,transparent)}.bard-chord-helper{display:flex;flex-direction:column;gap:6px;min-width:220px;max-width:320px;padding:8px 10px;background:var(--ink, #0a0a0c);border:1px solid color-mix(in srgb,var(--cobalt, #5cc8ff) 45%,transparent);border-radius:4px;box-shadow:4px 4px #00000073;color:var(--bone, #ebe8de)}.bard-chord-helper-head{font-size:10px;letter-spacing:1.4px;color:var(--cobalt, #5cc8ff);border-bottom:1px solid color-mix(in srgb,var(--cobalt, #5cc8ff) 30%,transparent);padding-bottom:4px}.bard-chord-helper-buffer{font-size:11px;color:color-mix(in srgb,var(--bone, #ebe8de) 75%,transparent)}.bard-chord-helper-immediate{display:flex;flex-direction:column;padding:6px 8px;border-radius:4px;background:color-mix(in srgb,var(--cobalt, #5cc8ff) 18%,transparent);border:1px solid var(--cobalt, #5cc8ff);gap:2px}.bard-chord-helper-bang{font-size:13px;color:var(--cobalt, #5cc8ff)}.bard-chord-helper-empty{font-size:11px;color:color-mix(in srgb,var(--bone, #ebe8de) 55%,transparent);font-style:italic}.bard-chord-helper-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.bard-chord-helper-entry{display:flex;flex-direction:column;gap:2px;padding:4px 6px;border-radius:3px;background:#ffffff08;border-left:2px solid transparent}.bard-chord-helper-entry.is-ready{border-left-color:var(--cobalt, #5cc8ff);background:color-mix(in srgb,var(--cobalt, #5cc8ff) 8%,transparent)}.bard-chord-helper-entry.is-missing{opacity:.55}.bard-chord-helper-recipe{font-size:12px;font-weight:700;letter-spacing:.6px;color:var(--bone, #ebe8de)}.bard-chord-helper-needs{font-size:10px;color:color-mix(in srgb,var(--bone, #ebe8de) 70%,transparent)}.bard-chord-helper-hand{margin-left:6px;color:var(--cobalt, #5cc8ff)}.bard-chord-helper-hand.is-missing{color:color-mix(in srgb,var(--bone, #ebe8de) 45%,transparent)}.bard-chord-helper-effect{font-size:10px;color:color-mix(in srgb,var(--bone, #ebe8de) 65%,transparent);font-style:italic}.enemy-card.is-down{opacity:.4;filter:grayscale(.7);animation:none;box-shadow:none}.enemy-arena.is-needs-aim .enemy-card:not(.is-down){position:relative}.enemy-arena.is-needs-aim .enemy-card:not(.is-down):after{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;pointer-events:none;border:1px solid transparent;animation:needsAimPulse 1.6s ease-in-out infinite}@keyframes needsAimPulse{0%,to{border-color:transparent;box-shadow:0 0 #f5b40000}50%{border-color:var(--coin);box-shadow:0 0 0 2px #f5b40040,0 0 12px #f5b40040}}body.is-reduce-motion .enemy-arena.is-needs-aim .enemy-card:not(.is-down):after{animation:none;border-color:var(--coin)}.enemy-card.is-down.is-clickable{cursor:not-allowed}.enemy-card.is-dying{animation:enemyDeath .39s cubic-bezier(.4,0,.6,1) forwards;animation-delay:0ms;pointer-events:none}@keyframes enemyDeath{0%{transform:scale(1) rotate(0);opacity:1;filter:brightness(1.4) saturate(1.2)}18%{transform:scale(1.08) rotate(-4deg);opacity:1;filter:brightness(1.8) saturate(0)}to{transform:scale(.78) rotate(-14deg) translateY(8px);opacity:.4;filter:brightness(.7) grayscale(.7)}}.enemy-card.is-hit{animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards,enemyHit .28s cubic-bezier(.18,.9,.3,1);animation-delay:calc(var(--enemy-arrive-stagger, 0) * 70ms),0ms}.enemy-card-boss.is-hit{animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards,enemyBossLoom 3.6s ease-in-out .48s infinite,enemyHit .28s cubic-bezier(.18,.9,.3,1);animation-delay:calc(var(--enemy-arrive-stagger, 0) * 70ms),0ms,0ms}.enemy-card.is-winding-up{animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards,enemyWindUp .6s ease-in-out infinite alternate;animation-delay:calc(var(--enemy-arrive-stagger, 0) * 70ms),0ms}.enemy-card-boss.is-winding-up{animation:enemyArrive .42s cubic-bezier(.18,.85,.3,1) backwards,enemyBossLoom 3.6s ease-in-out .48s infinite,enemyWindUp .6s ease-in-out infinite alternate;animation-delay:calc(var(--enemy-arrive-stagger, 0) * 70ms),0ms,0ms}.enemy-card.is-winding-up .fp-intent{color:var(--blood);font-weight:700}@keyframes enemyWindUp{0%{box-shadow:0 0 #ff383800,inset 0 0 #ff383800;transform:translateY(0)}to{box-shadow:0 0 24px #ff383873,inset 0 0 0 2px #ff38388c;transform:translateY(-2px)}}.enemy-card.is-hit .fp-name{animation:enemyHitText .28s cubic-bezier(.18,.9,.3,1)}@keyframes enemyHit{0%{transform:translate(0);box-shadow:inset 0 0 0 2px var(--blood),0 0 18px #ff383859}20%{transform:translate(-3px)}45%{transform:translate(4px)}70%{transform:translate(-2px)}to{transform:translate(0);box-shadow:inset 0 0 0 0 transparent,0 0 0 0 transparent}}@keyframes enemyHitText{0%{color:#ffd0d0;text-shadow:0 0 12px var(--blood)}to{color:var(--blood);text-shadow:none}}.enemy-card .fp-name{color:var(--blood)}.enemy-card-marker{font-family:var(--display);font-weight:700;font-size:8px;letter-spacing:.14em;color:var(--ink);background:var(--acid);padding:1px 4px;white-space:nowrap}.enemy-card-marker-sworn{background:var(--coin);color:var(--ink)}.enemy-card-marker-sworn-by{font-weight:600;opacity:.75;letter-spacing:0}.paladin-swear-prompt{background:var(--coin);color:var(--ink);animation:paladin-swear-pulse 1.2s ease-in-out infinite}.paladin-swear-prompt .clown-ability-stat-k,.paladin-swear-prompt .clown-ability-stat-v{color:var(--ink)}@keyframes paladin-swear-pulse{0%,to{box-shadow:0 0 #f5b40099}50%{box-shadow:0 0 0 4px #f5b40000}}.enemy-card-repel{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.12em;color:var(--ember);padding:2px 6px;border:1px solid var(--ember);background:#ff703814;align-self:flex-start}.enemy-card-targeters{position:absolute;left:0;right:0;top:100%;margin-top:2px;font-size:9px;color:var(--bone-3);letter-spacing:.04em;padding:2px 6px 0;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:none}.enemy-targeter{color:var(--bone-2)}.reward-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;pointer-events:none;display:flex;justify-content:flex-end;align-items:center}.reward-overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0a0a0c8c;pointer-events:auto;animation:rewardBackdropIn .28s ease-out}.reward-overlay.is-leaving .reward-overlay-backdrop{animation:rewardBackdropOut .28s ease-in forwards}@keyframes rewardBackdropIn{0%{opacity:0}to{opacity:1}}@keyframes rewardBackdropOut{0%{opacity:1}to{opacity:0}}.reward-panel{position:relative;margin:0 var(--sp-5);pointer-events:auto;padding:var(--sp-5);background:var(--char);border:1px solid var(--bone-2);box-shadow:6px 6px 0 0 var(--acid),-12px 0 32px #00000080;display:flex;flex-direction:column;gap:var(--sp-3);max-width:min(780px,calc(100vw - 2 * var(--sp-5)));animation:rewardPanelIn .38s cubic-bezier(.18,.85,.3,1);will-change:transform,opacity}.reward-panel.is-leaving{animation:rewardPanelOut .28s cubic-bezier(.4,0,.6,1) forwards;pointer-events:none}@keyframes rewardPanelIn{0%{transform:translate(calc(100% + var(--sp-5) + 32px));opacity:0}to{transform:translate(0);opacity:1}}@keyframes rewardPanelOut{0%{transform:translate(0);opacity:1}to{transform:translate(calc(100% + var(--sp-5) + 32px));opacity:0}}.reward-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.reward-panel-head-text{display:flex;flex-direction:column;gap:2px;min-width:0}.reward-panel-minimize{flex-shrink:0;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--rule-hi);color:var(--bone-2);font-family:var(--display);font-weight:700;font-size:16px;line-height:1;cursor:pointer;transition:color .1s,border-color .1s,background .1s}.reward-panel-minimize:hover{color:var(--acid);border-color:var(--acid);background:#d6ff3a14}.reward-overlay.is-minimized{pointer-events:none}.reward-panel.is-hidden{display:none}.reward-minimized-chip{position:fixed;top:var(--sp-4, 12px);left:50%;transform:translate(-50%);z-index:1;display:inline-flex;align-items:center;gap:8px;padding:6px 12px 6px 14px;background:var(--char);border:1px solid var(--acid);box-shadow:3px 3px 0 0 var(--ink),0 0 18px #d6ff3a40;color:var(--acid);font-family:var(--display);font-weight:700;letter-spacing:.16em;cursor:pointer;pointer-events:auto;animation:rewardChipIn .2s cubic-bezier(.2,.8,.3,1)}.reward-minimized-chip:hover{background:#d6ff3a1a}.reward-minimized-chip-kicker{font-size:11px}.reward-minimized-chip-arrow{font-size:12px;line-height:1;color:var(--bone-2)}@keyframes rewardChipIn{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.reward-panel-kicker{font-size:10px;letter-spacing:.16em;color:var(--bone-3);font-weight:700}.reward-panel-title{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.04em;margin:0;color:var(--acid)}.reward-card-grid{display:flex;flex-wrap:nowrap;gap:var(--sp-3);align-items:stretch}.reward-card{flex:0 0 var(--card-w);cursor:pointer;transition:transform .1s,border-color .1s,box-shadow .1s}.reward-card:hover:not(.is-picked):not(:disabled){transform:translateY(-6px);border-color:var(--acid);box-shadow:4px 4px 0 0 var(--acid)}.reward-card.is-picked{visibility:hidden}.reward-card:disabled{cursor:default}.reward-panel-skip{align-self:flex-start}.reward-panel-wait{padding:var(--sp-4);background:var(--char);border:1px dashed var(--rule-hi);display:flex;align-items:center;justify-content:center;min-height:180px}.reward-panel-wait-text{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.12em;color:var(--bone-3)}.reward-body{transition:opacity .2s cubic-bezier(.4,0,.2,1),transform .22s cubic-bezier(.4,0,.2,1)}.reward-body.is-body-idle{opacity:1;transform:translate(0)}.reward-body.is-body-out{opacity:0;transform:translate(-32px);pointer-events:none}.reward-body.is-body-in{animation:rewardBodyIn .22s cubic-bezier(.4,0,.2,1)}@keyframes rewardBodyIn{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}body.is-reduce-motion .reward-body{animation:none!important;transition:none!important}.reward-menu{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) 0 var(--sp-2);min-width:320px}.reward-vestige{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-4) 0 var(--sp-2);min-width:340px;max-width:520px}.reward-vestige-hint{color:var(--bone-3, #a89e8e);font-size:12px;margin:0}.reward-vestige-offer{display:flex;flex-direction:column;gap:var(--sp-3)}.reward-vestige-incoming{--rv-accent: var(--bone-2);display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--sp-3);background:var(--char);border:1px solid var(--rule);border-left:3px solid var(--rv-accent);text-align:left;color:inherit;font:inherit}.reward-vestige-choice{cursor:pointer;transition:background .1s,border-color .1s,transform .1s}.reward-vestige-choice:hover{background:var(--char-hi, #1c1c20);border-color:var(--rv-accent);transform:translateY(-1px)}.reward-vestige-incoming.is-common{--rv-accent: var(--bone-2)}.reward-vestige-incoming.is-rare{--rv-accent: var(--cobalt)}.reward-vestige-incoming.is-epic{--rv-accent: var(--jester)}.reward-vestige-incoming.is-legendary{--rv-accent: var(--coin)}.reward-vestige-incoming.is-mythic{--rv-accent: var(--blood)}.reward-vestige-incoming-label{font-size:10px;letter-spacing:.08em;color:var(--rv-accent)}.reward-vestige-name{font-family:var(--display);font-weight:700;letter-spacing:.03em;color:var(--bone)}.reward-vestige-text{font-size:12px;color:var(--bone-2)}.reward-vestige-socket-action{margin-top:2px;font-size:11px;color:var(--rv-accent)}.reward-vestige-sockets{display:flex;flex-direction:column;gap:var(--sp-2)}.reward-vestige-socket{--rv-accent: var(--bone-2);display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--char);border:1px solid var(--rule);border-left:3px solid var(--rv-accent);cursor:pointer;color:inherit;font:inherit}.reward-vestige-socket:hover{border-color:var(--rv-accent)}.reward-vestige-socket.is-rare{--rv-accent: var(--cobalt)}.reward-vestige-socket.is-epic{--rv-accent: var(--jester)}.reward-vestige-socket.is-legendary{--rv-accent: var(--coin)}.reward-vestige-socket.is-mythic{--rv-accent: var(--blood)}.reward-vestige-socket-name{font-weight:600;color:var(--bone)}.reward-vestige-socket-charge{font-size:11px;color:var(--bone-3, #a89e8e)}.reward-vestige-socket-action{margin-left:auto}.reward-vestige-decline{align-self:flex-start;background:transparent;border:1px solid var(--rule);color:var(--bone-2);padding:6px 14px;cursor:pointer;font-size:12px;letter-spacing:.06em}.reward-vestige-decline:hover{color:var(--bone);border-color:var(--bone-2)}.reward-menu-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.reward-menu-row{margin:0;padding:0}.reward-menu-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 18px;background:var(--char-2);border:1px solid var(--rule-hi);color:var(--bone);font-family:var(--mono);font-weight:800;font-size:13px;letter-spacing:.18em;text-align:left;transition:border-color .12s ease,color .12s ease,background .12s ease}.reward-menu-btn:hover:not(:disabled){border-color:var(--acid);color:var(--acid)}.reward-menu-btn:disabled,.reward-menu-btn.is-claimed{cursor:not-allowed;opacity:.45;background:var(--char);color:var(--bone-3);border-color:var(--rule)}.reward-menu-btn-card-pick{border-left:3px solid var(--cobalt)}.reward-menu-btn-card-pick:hover:not(:disabled){border-left-color:var(--acid)}.reward-menu-btn-heal{border-left:3px solid #6ed968}.reward-menu-btn-heal:hover:not(:disabled){border-left-color:var(--acid)}.reward-menu-btn-label{flex:1}.reward-menu-btn-chip{font-size:9px;letter-spacing:.22em;color:var(--bone-3)}.reward-menu-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:var(--sp-2);border-top:1px solid var(--rule)}.reward-menu-status{font-size:10px;letter-spacing:.2em;color:var(--bone-3)}.reward-menu-skip{font-family:var(--mono);font-weight:800;font-size:11px;letter-spacing:.18em;padding:8px 14px;background:var(--char-2);border:1px solid var(--bone-4);color:var(--bone-2);cursor:pointer;transition:border-color .12s ease,color .12s ease}.reward-menu-skip:hover{border-color:var(--coin);color:var(--coin)}.reward-menu-others{display:flex;gap:6px;flex-wrap:wrap;padding-top:var(--sp-2);border-top:1px solid var(--rule)}.reward-menu-other{display:inline-flex;align-items:baseline;gap:6px;padding:3px 8px;border:1px solid var(--rule);font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.reward-menu-other.is-ready{color:var(--acid);border-color:var(--acid)}.reward-menu-other-name{font-weight:700}.reward-menu-other-state{font-weight:800}.reward-remove{display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3) 0 var(--sp-2);max-width:920px}.reward-remove-hint{font-size:11px;letter-spacing:.12em;color:var(--bone-3);margin:0 0 var(--sp-2)}.reward-remove-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;max-height:56vh;overflow-y:auto;padding:4px;border:1px solid var(--rule);background:var(--char)}.reward-remove-card{cursor:pointer;transition:transform .1s ease,filter .1s ease,box-shadow .1s ease}.reward-remove-card:hover{transform:translateY(-2px);filter:brightness(1.1);box-shadow:0 0 0 1px var(--blood)}.reward-remove-empty{padding:var(--sp-4);text-align:center;font-size:12px;letter-spacing:.18em;color:var(--bone-3);border:1px dashed var(--rule);background:var(--char)}.reward-remove-foot{display:flex;justify-content:flex-end;padding-top:var(--sp-2);border-top:1px solid var(--rule)}.reward-remove-skip{font-family:var(--mono);font-weight:800;font-size:11px;letter-spacing:.18em;padding:8px 14px;background:var(--char-2);border:1px solid var(--bone-4);color:var(--bone-2);cursor:pointer}.reward-remove-skip:hover{border-color:var(--coin);color:var(--coin)}.hand-card-tag-discard{border-color:var(--bone-3);color:var(--bone-2)}.reward-panel-grid{position:relative;margin:0 var(--sp-5);pointer-events:auto;padding:var(--sp-5);background:var(--char);border:1px solid var(--bone-2);box-shadow:6px 6px 0 0 var(--acid),-12px 0 32px #00000080;display:flex;flex-direction:column;gap:var(--sp-4);max-width:min(calc(100vw - 2 * var(--sp-5)),1600px);animation:rewardPanelIn .38s cubic-bezier(.18,.85,.3,1);will-change:transform,opacity}.reward-panel-grid.is-leaving{animation:rewardPanelOut .28s cubic-bezier(.4,0,.6,1) forwards;pointer-events:none}.reward-panel-grid.is-hidden{display:none}.reward-panel-grid-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3)}.reward-panel-grid-head-text{display:flex;flex-direction:column;gap:2px;min-width:0}.reward-panel-row{display:flex;flex-wrap:wrap;gap:var(--sp-4);align-items:stretch}.reward-panel{flex:0 1 auto;display:flex;flex-direction:column;gap:var(--sp-3);padding:var(--sp-3);background:var(--char-2);border:1px solid var(--rule);min-width:0}.reward-panel.is-mine{border-color:var(--acid);background:var(--char-3)}.reward-panel.is-other{opacity:.78;filter:grayscale(.15)}.reward-panel.is-picked{background:var(--char);opacity:.55}.reward-panel .reward-panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-2)}.reward-panel-owner{font-size:12px;letter-spacing:.12em;color:var(--bone-2);font-weight:700}.reward-panel.is-mine .reward-panel-owner{color:var(--acid)}.reward-panel[data-seat="1"]{border-left:3px solid var(--seat-1)}.reward-panel[data-seat="2"]{border-left:3px solid var(--seat-2)}.reward-panel[data-seat="3"]{border-left:3px solid var(--seat-3)}.reward-panel[data-seat="4"]{border-left:3px solid var(--seat-4)}.reward-panel-picked-chip{font-size:10px;letter-spacing:.14em;color:var(--bone-3);padding:2px 6px;border:1px solid var(--rule-hi);background:var(--char)}.reward-panel-picked-body{padding:var(--sp-4) var(--sp-3);text-align:center;color:var(--bone-3);font-family:var(--display);font-size:11px;letter-spacing:.12em}.reward-card{position:relative}.reward-card.is-spectated{cursor:default}.reward-card-hover-stack{position:absolute;left:6px;right:6px;bottom:6px;display:flex;flex-direction:column;gap:2px;pointer-events:none;z-index:4}.reward-card-hover-band{display:block;height:4px;border-radius:2px;background:var(--bone-3);box-shadow:0 0 8px #ffffff59;animation:rewardHoverPulse 1.4s ease-in-out infinite}.reward-card-hover-band[data-seat="1"]{background:var(--seat-1);box-shadow:0 0 10px color-mix(in srgb,var(--seat-1) 65%,transparent)}.reward-card-hover-band[data-seat="2"]{background:var(--seat-2);box-shadow:0 0 10px color-mix(in srgb,var(--seat-2) 65%,transparent)}.reward-card-hover-band[data-seat="3"]{background:var(--seat-3);box-shadow:0 0 10px color-mix(in srgb,var(--seat-3) 65%,transparent)}.reward-card-hover-band[data-seat="4"]{background:var(--seat-4);box-shadow:0 0 10px color-mix(in srgb,var(--seat-4) 65%,transparent)}@keyframes rewardHoverPulse{0%,to{opacity:.65;transform:scaleX(.96)}50%{opacity:1;transform:scaleX(1)}}.inn-panel{position:relative;padding:var(--sp-6) var(--sp-6) var(--sp-5);border-bottom:1px solid var(--rule);background:linear-gradient(180deg,rgba(111,155,255,.08),transparent 70%);overflow:hidden;animation:innPanelArrive .36s cubic-bezier(.18,.85,.3,1)}@keyframes innPanelArrive{0%{transform:translateY(36px);opacity:0}to{transform:translateY(0);opacity:1}}.inn-panel-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(135deg,rgba(111,155,255,.04) 0 2px,transparent 2px 8px);opacity:.6}.inn-panel-body{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:var(--sp-3);max-width:520px;animation:innPanelBody .46s cubic-bezier(.2,.8,.3,1) 80ms backwards}@keyframes innPanelBody{0%{transform:translateY(14px);opacity:0}to{transform:translateY(0);opacity:1}}.inn-panel-kicker{font-size:10px;letter-spacing:.16em;color:var(--bone-3)}.inn-panel-title{font-family:var(--display);font-weight:700;font-size:36px;letter-spacing:.04em;margin:0;color:var(--cobalt)}.inn-panel-sub{font-size:13px;color:var(--bone-2);letter-spacing:.02em;margin:0;line-height:1.5}.inn-panel-cta{margin-top:var(--sp-3)}.floor-advance{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;align-items:center;justify-content:center;padding:var(--sp-6);pointer-events:none;overflow:hidden;background:linear-gradient(180deg,rgba(214,255,58,.05),transparent 70%);animation:floorAdvancePane .32s cubic-bezier(.18,.85,.3,1)}.floor-advance.is-inn{background:linear-gradient(180deg,rgba(111,155,255,.08),transparent 70%)}.floor-advance.is-boss{background:linear-gradient(180deg,rgba(255,56,56,.1),transparent 70%)}.floor-advance.is-leaving{animation:floorAdvanceLeave var(--mo-base, .26s) var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards}@keyframes floorAdvancePane{0%{opacity:0}to{opacity:1}}@keyframes floorAdvanceLeave{0%{opacity:1;transform:scale(1);filter:brightness(1)}to{opacity:0;transform:scale(1.02);filter:brightness(1.1)}}body.is-reduce-motion .floor-advance,body.is-reduce-motion .floor-advance.is-leaving{animation-duration:.01ms!important}.floor-advance-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(135deg,rgba(214,255,58,.04) 0 2px,transparent 2px 10px)}.floor-advance.is-inn .floor-advance-bg{background:repeating-linear-gradient(135deg,rgba(111,155,255,.05) 0 2px,transparent 2px 10px)}.floor-advance.is-boss .floor-advance-bg{background:repeating-linear-gradient(135deg,rgba(255,56,56,.06) 0 2px,transparent 2px 10px)}.floor-advance-body{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--sp-3);text-align:center;animation:floorAdvanceBody .54s cubic-bezier(.18,.85,.3,1) .1s backwards}@keyframes floorAdvanceBody{0%{opacity:0;transform:translateY(20px) scale(.92);filter:brightness(1.6)}60%{opacity:1;transform:translateY(-4px) scale(1.04);filter:brightness(1.2)}to{opacity:1;transform:translateY(0) scale(1);filter:brightness(1)}}.floor-advance-kicker{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.18em;color:var(--bone-3)}.floor-advance-title{font-family:var(--display);font-weight:700;font-size:42px;letter-spacing:.06em;margin:0;color:var(--acid);text-shadow:0 0 24px rgba(214,255,58,.4)}.floor-advance.is-inn .floor-advance-title{color:var(--cobalt);text-shadow:0 0 24px rgba(111,155,255,.4)}.floor-advance.is-boss .floor-advance-title{color:var(--blood);text-shadow:0 0 28px rgba(255,56,56,.5);animation:floorAdvanceBossPulse 1.1s ease-in-out}@keyframes floorAdvanceBossPulse{0%,to{text-shadow:0 0 28px rgba(255,56,56,.5)}50%{text-shadow:0 0 44px rgba(255,56,56,.8),0 0 16px rgba(255,56,56,.9)}}.floor-advance-sub{font-size:12px;letter-spacing:.14em;color:var(--bone-3)}.hp-bar{flex:1;height:10px;background:var(--char-3);border:1px solid var(--rule-hi);position:relative;overflow:hidden}.hp-bar.small{height:6px}.hp-bar-fill{height:100%;background:var(--acid);transition:width .52s cubic-bezier(.2,.8,.2,1),background .2s;will-change:width}.hp-bar-fill.is-enemy{background:var(--blood)}.hp-bar.is-healing .hp-bar-fill{background:linear-gradient(90deg,var(--acid),#6bd28a);box-shadow:0 0 8px #6bd28a99}.hp-text{font-weight:700;font-size:14px;color:var(--bone);letter-spacing:.04em}.hp-text-max{color:var(--bone-3);font-weight:400}@keyframes faiReactivePulse{0%{box-shadow:0 0 #c251518c}70%{box-shadow:0 0 0 5px #c2515100}to{box-shadow:0 0 #c2515100}}.player-strip{transition:border-color .1s}.player-strip.is-acting{border-color:var(--acid)}.player-strip.is-ended{border-color:var(--cobalt)}.player-strip.is-down{opacity:.45}.player-strip.is-me{background:var(--char-3)}.player-strip.is-clickable{cursor:pointer}.player-strip.is-clickable:hover{background:var(--char-2);box-shadow:inset 0 0 0 1px var(--rule-hi)}.player-strip.is-clickable.is-me:hover{background:var(--char-3);box-shadow:none}.player-strip{position:relative;transition:transform .12s ease-out}.player-strip.is-floor-exiting{animation:playerFloorExit var(--transition-duration, .32s) cubic-bezier(.5,0,.75,0) var(--transition-delay, 0ms) forwards;pointer-events:none}.player-strip.is-floor-hidden{transform:translate3d(400%,0,0);opacity:0;pointer-events:none}.player-strip.is-floor-entering{animation:playerFloorEntry var(--transition-duration, .38s) cubic-bezier(.18,.85,.3,1) var(--transition-delay, 0ms) backwards;pointer-events:none}@keyframes playerFloorExit{0%{transform:translateZ(0);opacity:1}35%{transform:translate3d(100%,-12px,0);opacity:1}to{transform:translate3d(400%,0,0);opacity:0}}@keyframes playerFloorEntry{0%{transform:translate3d(-400%,0,0);opacity:0}60%{transform:translate3d(8%,0,0);opacity:1}to{transform:translateZ(0);opacity:1}}.player-strip.is-floor-exit-bounce{animation:playerFloorExitBounce var(--transition-duration, .46s) cubic-bezier(.34,1.3,.64,1) var(--transition-delay, 0ms) forwards;pointer-events:none}@keyframes playerFloorExitBounce{0%{transform:translateZ(0) scaleY(1);opacity:1}18%{transform:translate3d(20%,-22px,0) scaleY(1.05);opacity:1}32%{transform:translate3d(70%,0,0) scaleY(.92);opacity:1}52%{transform:translate3d(150%,-18px,0) scaleY(1.04);opacity:1}68%{transform:translate3d(230%,0,0) scaleY(.96);opacity:1}to{transform:translate3d(400%,0,0) scaleY(1);opacity:0}}.player-strip.is-floor-exit-strut{animation:playerFloorExitStrut var(--transition-duration, .52s) cubic-bezier(.5,0,.75,0) var(--transition-delay, 0ms) forwards;pointer-events:none}@keyframes playerFloorExitStrut{0%{transform:translateZ(0) rotate(0);opacity:1}18%{transform:translate3d(-18%,-4px,0) rotate(-3deg);opacity:1}32%{transform:translate3d(-8%,4px,0) rotate(-1deg);opacity:1}58%{transform:translate3d(105%,-16px,0) rotate(6deg);opacity:1}80%{transform:translate3d(245%,4px,0) rotate(10deg);opacity:1}to{transform:translate3d(400%,0,0) rotate(14deg);opacity:0}}.player-strip.is-floor-exit-flicker{animation:playerFloorExitFlickerStrobe var(--transition-duration, .48s) steps(1,end) var(--transition-delay, 0ms) forwards,playerFloorExitFlickerSlide var(--transition-duration, .48s) cubic-bezier(.7,0,.84,0) var(--transition-delay, 0ms) forwards;pointer-events:none}@keyframes playerFloorExitFlickerStrobe{0%,8%,22%{opacity:1;filter:none}4%,14%{opacity:0}18%{opacity:1;filter:brightness(1.8) contrast(1.2)}28%{opacity:1;filter:brightness(.7)}35%,to{opacity:1;filter:none}}@keyframes playerFloorExitFlickerSlide{0%,35%{transform:translateZ(0)}60%{transform:translate3d(55%,0,0)}to{transform:translate3d(400%,0,0);opacity:0}}.player-strip.is-floor-entry-skid{animation:playerFloorEntrySkid var(--transition-duration, .46s) cubic-bezier(.18,.85,.3,1) var(--transition-delay, 0ms) backwards;pointer-events:none}@keyframes playerFloorEntrySkid{0%{transform:translate3d(-400%,0,0) skew(-8deg);opacity:0;filter:brightness(1.3)}55%{transform:translate3d(20%,0,0) skew(-3deg);opacity:1;filter:brightness(1.1)}78%{transform:translate3d(-8%,0,0) skew(1deg);opacity:1;filter:none}to{transform:translateZ(0) skew(0);opacity:1;filter:none}}.player-strip.is-floor-entry-stomp{animation:playerFloorEntryStomp var(--transition-duration, .54s) cubic-bezier(.22,1,.32,1) var(--transition-delay, 0ms) backwards;pointer-events:none}@keyframes playerFloorEntryStomp{0%{transform:translate3d(-350%,-70%,0) scale(1.05);opacity:0;filter:brightness(1.4)}50%{transform:translate3d(-30%,-25%,0) scale(1.02);opacity:1;filter:brightness(1.15)}72%{transform:translateZ(0) scaleY(.88);opacity:1}86%{transform:translate3d(0,-2%,0) scale(.98,1.04);opacity:1}to{transform:translateZ(0) scale(1);opacity:1}}.player-strip.is-floor-entry-vault{animation:playerFloorEntryVault var(--transition-duration, .4s) cubic-bezier(.16,.84,.28,1) var(--transition-delay, 0ms) backwards;pointer-events:none}@keyframes playerFloorEntryVault{0%{transform:translate3d(-350%,80%,0) rotate(-8deg);opacity:0}50%{transform:translate3d(-70%,-40%,0) rotate(-3deg);opacity:1}85%{transform:translate3d(8%,8%,0) rotate(1deg);opacity:1}to{transform:translateZ(0) rotate(0);opacity:1}}.enemy-card.is-ambush-converge{animation:enemyAmbushConverge var(--enemy-arrive-duration-ms, .48s) cubic-bezier(.18,.85,.3,1) backwards;animation-delay:var(--enemy-arrive-delay-ms, calc(var(--enemy-arrive-stagger, 0) * 55ms))}@keyframes enemyAmbushConverge{0%{transform:translate3d(calc(var(--ambush-dir, 0) * 325%),calc((1 - abs(var(--ambush-dir, 0)))*-275% + abs(var(--ambush-dir, 0))*-25%),0) scale(.65) rotate(calc(var(--ambush-dir, 0) * 8deg));opacity:0;filter:brightness(1.7) saturate(.6)}55%{transform:translate3d(calc(var(--ambush-dir, 0) * 15%),20%,0) scale(1.08) rotate(0);opacity:1;filter:brightness(1.25)}78%{transform:translate3d(0,-7%,0) scale(.98);filter:brightness(1.05)}to{transform:translateZ(0) scale(1);opacity:1;filter:none}}.enemy-card-elite.is-elite-crash{animation:enemyEliteCrash var(--enemy-arrive-duration-ms, .58s) cubic-bezier(.22,1,.32,1.05) backwards;animation-delay:var(--enemy-arrive-delay-ms, calc(var(--enemy-arrive-stagger, 0) * 90ms + .14s))}@keyframes enemyEliteCrash{0%{transform:translate3d(0,-450%,0) scale(1.18);opacity:0;filter:brightness(1.9) contrast(1.1)}60%{transform:translate3d(0,22px,0) scaleY(.8);opacity:1;filter:brightness(1.35)}72%{transform:translate3d(0,-10px,0) scale(.96,1.08);filter:brightness(1.15)}86%{transform:translate3d(0,3px,0) scaleY(.98);filter:brightness(1.05)}to{transform:translateZ(0) scale(1);opacity:1;filter:none}}.enemy-card-boss.is-boss-arrival{animation:enemyBossArrival var(--enemy-arrive-duration-ms, .88s) cubic-bezier(.16,.84,.22,1) backwards,enemyBossLoom 3.6s ease-in-out 1s infinite;animation-delay:var(--enemy-arrive-delay-ms, .28s),0ms}@keyframes enemyBossArrival{0%{transform:translate3d(0,-400%,0) scale(1.45);opacity:0;filter:brightness(.4) saturate(.4) blur(2px)}18%{transform:translate3d(0,-135%,0) scale(1.32);opacity:1;filter:brightness(.95) saturate(.85) blur(1px)}56%{transform:translate3d(0,20px,0) scale(1.06,.92);filter:brightness(1.55) saturate(1.1) blur(0);box-shadow:0 0 0 2px #ff38388c,0 0 48px #ff383873}72%{transform:translate3d(0,-6px,0) scale(.98,1.04);filter:brightness(1.2)}to{transform:translateZ(0) scale(1);opacity:1;filter:none}}body.is-reduce-motion .enemy-card-boss.is-boss-arrival{animation:none!important}.player-strip.is-hit{animation:playerHit .34s cubic-bezier(.18,.9,.3,1)}.player-strip.is-healed{animation:playerHealed .52s ease-out}@keyframes playerHit{0%{transform:translate(0);box-shadow:inset 0 0 0 2px var(--blood),0 0 18px #ff383873}25%{transform:translate(-3px)}55%{transform:translate(3px)}80%{transform:translate(-1px)}to{transform:translate(0);box-shadow:inset 0 0 0 0 transparent,0 0 0 0 transparent}}@keyframes playerHealed{0%{box-shadow:inset 0 0 0 2px #6bd28a,0 0 22px #6bd28a8c}to{box-shadow:inset 0 0 0 0 transparent,0 0 0 0 transparent}}.badge-acting{color:var(--ink);background:var(--acid)}.badge-ended{color:var(--bone);background:var(--cobalt)}.badge-down{color:var(--bone-3);background:var(--char-2);border:1px solid var(--rule-hi)}.player-strip-target{font-family:var(--mono);font-size:10px;color:var(--acid);letter-spacing:.04em;margin-top:auto;padding-top:4px;border-top:1px dashed var(--rule);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.combat-hand{display:flex;flex-direction:column;min-height:300px;padding:var(--sp-3) var(--sp-5);gap:var(--sp-2);overflow:hidden}.combat-hand-piles{display:flex;align-items:center;gap:var(--sp-3);min-height:0;flex:1}.combat-hand-piles .combat-hand-cards{flex:1;min-width:0}.combat-hand-resting{display:flex;align-items:center;justify-content:center;height:100%;min-height:var(--card-h);border:1px dashed var(--rule);background:var(--char)}.card-pile{position:relative;width:72px;height:100px;flex-shrink:0}.card-pile-stack{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--char-2);border:1px solid var(--rule-hi)}.card-pile-stack:nth-child(1){transform:translate(4px,4px);background:var(--char);opacity:.7}.card-pile-stack:nth-child(2){transform:translate(2px,2px);opacity:.85}.card-pile-stack:nth-child(3){background:var(--char-3)}.card-pile-deck .card-pile-stack:nth-child(3){border-top:3px solid var(--acid)}.card-pile-discard .card-pile-stack:nth-child(3){border-top:3px solid var(--bone-3)}.card-pile-exhaust .card-pile-stack:nth-child(3){border-top:3px solid var(--ember, #ff7038)}.card-pile-exhaust .card-pile-label{color:var(--ember, #ff7038)}.card-pile-label{position:absolute;top:8px;left:0;right:0;text-align:center;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.14em;color:var(--bone-2);pointer-events:none}.card-pile-count{position:absolute;bottom:6px;left:0;right:0;text-align:center;font-size:14px;font-weight:700;color:var(--bone);pointer-events:none}.card-pile-deck .card-pile-count{color:var(--acid)}.hand-slot-empty{flex:0 1 var(--card-w);min-width:0;width:auto;max-width:var(--card-w);height:var(--card-h);border:1px dashed var(--rule-hi);background:transparent}.flying-card-layer{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:30;overflow:visible}.flying-card{position:fixed;top:0;left:0;margin-left:-84px;margin-top:-110px;pointer-events:none;transition:none;opacity:0;z-index:30;animation-duration:.6s;animation-timing-function:cubic-bezier(.22,.7,.3,1);animation-delay:var(--fly-delay, 0ms);animation-fill-mode:forwards;box-shadow:none}.flying-card-draw{animation-name:flyDraw;animation-duration:.38s;animation-timing-function:cubic-bezier(.25,.7,.25,1)}.flying-card-discard{animation-name:flyDiscard}@keyframes flyDraw{0%{transform:translate(var(--fly-from-x),var(--fly-from-y)) scale(.5) rotate(var(--fly-start-rot, 0deg));opacity:0}18%{opacity:1}55%{transform:translate(calc((var(--fly-from-x) + var(--fly-to-x)) / 2),calc((var(--fly-from-y) + var(--fly-to-y)) / 2 - 90px)) scale(.88) rotate(calc(var(--fly-start-rot, 0deg) * .35))}to{transform:translate(var(--fly-to-x),var(--fly-to-y)) scale(1) rotate(0);opacity:1}}@keyframes flyDiscard{0%{transform:translate(var(--fly-from-x),var(--fly-from-y)) scale(1) rotate(0);opacity:1}60%{transform:translate(calc((var(--fly-from-x) + var(--fly-to-x)) / 2),calc((var(--fly-from-y) + var(--fly-to-y)) / 2 - 24px)) scale(.78) rotate(8deg);opacity:.95}to{transform:translate(var(--fly-to-x),var(--fly-to-y)) scale(.35) rotate(20deg);opacity:0}}.flying-card-reshuffle{background:var(--char-2);border:1px solid var(--rule-hi);border-top:3px solid var(--acid);animation-name:flyReshuffle;animation-duration:.5s;animation-timing-function:cubic-bezier(.22,.85,.3,1);box-shadow:2px 2px #0006}@keyframes flyReshuffle{0%{transform:translate(var(--fly-from-x),var(--fly-from-y)) scale(.6) rotate(var(--fly-start-rot, 0deg));opacity:0}15%{opacity:1}50%{transform:translate(calc((var(--fly-from-x) + var(--fly-to-x)) / 2),calc((var(--fly-from-y) + var(--fly-to-y)) / 2 - 60px)) scale(.7) rotate(calc(var(--fly-start-rot, 0deg) * .5));opacity:1}to{transform:translate(var(--fly-to-x),var(--fly-to-y)) scale(.55) rotate(0);opacity:0}}.combat-hand-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-4)}.combat-hand-label{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.12em;color:var(--bone-2)}.combat-hand-turn{text-align:center}.combat-hand-turn-stack{display:flex;flex-direction:column;align-items:stretch;gap:var(--sp-2);min-width:132px}.combat-hand-end-turn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.14em;text-transform:uppercase;white-space:nowrap}.combat-hand-end-turn-label{display:inline-block}.combat-hand-end-turn .btn-arrow{font-size:15px;line-height:1}.combat-turn-now{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.16em;color:var(--ink);background:var(--acid);padding:4px 10px}.combat-turn-other{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.12em;color:var(--bone-3)}.combat-hand-actions{display:flex;gap:var(--sp-2)}.combat-hand-cards{display:flex;gap:var(--sp-3);overflow-x:auto;align-items:stretch;padding-bottom:var(--sp-2);transition:opacity .1s}.combat-hand-cards .hand-card{flex:0 1 var(--card-w);width:auto;max-width:var(--card-w);height:var(--card-h)}.combat-hand-cards.is-locked{opacity:.6}.combat-hand-empty{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.12em;color:var(--bone-3);padding:var(--sp-5);margin:auto}.flip-chip{position:absolute;top:0;left:50%;display:inline-flex;align-items:center;gap:8px;padding:6px 12px;background:var(--char);border:1px solid var(--bone-2);font-family:var(--display);font-weight:700;white-space:nowrap;pointer-events:none;z-index:10;transform-origin:50% 0}.flip-chip.is-success{border-color:var(--acid);animation:flipChipHeads 1.5s cubic-bezier(.16,.9,.3,1)}.flip-chip.is-failure{border-color:var(--blood);animation:flipChipTails 1.5s cubic-bezier(.36,0,.66,1)}.flip-chip-glyph{font-size:16px;line-height:1}.flip-chip.is-success .flip-chip-glyph{color:var(--acid);text-shadow:0 0 12px var(--acid)}.flip-chip.is-failure .flip-chip-glyph{color:var(--blood)}.flip-chip-result{font-size:13px;letter-spacing:.14em;padding:2px 6px}.flip-chip.is-success .flip-chip-result{color:var(--ink);background:var(--acid)}.flip-chip.is-failure .flip-chip-result{color:var(--bone);background:var(--blood)}.flip-chip-payout{font-size:11px;letter-spacing:.08em;color:var(--acid)}.flip-chip-kicker{font-size:10px;letter-spacing:.18em;padding:2px 5px;border:1px solid var(--jester);color:var(--jester);text-shadow:0 0 6px rgba(208,64,255,.6)}.flip-chip.is-forced{box-shadow:0 0 0 1px var(--jester),0 0 16px #d040ff59}@keyframes flipChipHeads{0%{opacity:0;transform:translate(-50%,8px) scale(.7) rotateY(0);box-shadow:0 0 0 0 transparent;filter:brightness(1)}14%{opacity:1;transform:translate(-50%,-48px) scale(1.3) rotateY(540deg);box-shadow:0 0 32px var(--acid),0 0 72px #d6ff3a80;filter:brightness(1.6)}26%{transform:translate(-50%,-52px) scale(1.2) rotateY(720deg);filter:brightness(1)}60%{opacity:1;transform:translate(-50%,-56px) scale(1.05) rotateY(720deg);box-shadow:0 0 18px var(--acid)}to{opacity:0;transform:translate(-50%,-80px) scale(.95) rotateY(720deg);box-shadow:0 0 0 0 transparent}}@keyframes flipChipTails{0%{opacity:0;transform:translate(-50%,8px) scale(.7) rotateY(0)}18%{opacity:1;transform:translate(-50%,-16px) scale(1.04) rotateY(360deg)}35%{transform:translate(-50%,-10px) scale(1) rotateY(540deg)}72%{opacity:.7;transform:translate(-50%) scale(.96) rotateY(540deg)}to{opacity:0;transform:translate(-50%,12px) scale(.92) rotateY(540deg)}}.bj-result-chip{position:absolute;top:0;left:50%;display:inline-flex;align-items:center;gap:10px;padding:8px 12px;background:var(--char);border:1px solid var(--bone-2);font-family:var(--display);font-weight:700;white-space:nowrap;pointer-events:none;z-index:11;animation:bjResultChip 3.5s cubic-bezier(.18,.9,.3,1)}.bj-result-chip.is-win{border-top:3px solid var(--acid);box-shadow:0 0 22px #d6ff3a66}.bj-result-chip.is-loss{border-top:3px solid var(--blood);box-shadow:0 0 22px #ff383866}.bj-result-chip.is-push{border-top:3px solid var(--bone-3)}.bj-result-verdict{font-size:12px;letter-spacing:.18em;padding:2px 6px}.bj-result-chip.is-win .bj-result-verdict{color:var(--ink);background:var(--acid)}.bj-result-chip.is-loss .bj-result-verdict{color:var(--bone);background:var(--blood)}.bj-result-chip.is-push .bj-result-verdict{color:var(--bone);background:var(--rule)}.bj-result-totals{font-size:12px;letter-spacing:.04em;color:var(--bone);display:inline-flex;align-items:center;gap:6px}.bj-result-vs{font-size:9px;letter-spacing:.14em;color:var(--bone-3)}.bj-result-payout{font-size:11px;letter-spacing:.08em;color:var(--bone-2)}.bj-result-chip.is-win .bj-result-payout{color:var(--acid)}.bj-result-chip.is-loss .bj-result-payout{color:var(--blood)}@keyframes bjResultChip{0%{opacity:0;transform:translate(-50%,16px) scale(.7)}6%{opacity:1;transform:translate(-50%,-8px) scale(1.06)}12%{transform:translate(-50%,-12px) scale(1)}85%{opacity:1;transform:translate(-50%,-18px) scale(1)}to{opacity:0;transform:translate(-50%,-36px) scale(.96)}}.combat-spectator{display:flex;align-items:center;justify-content:center;gap:var(--sp-3);padding:var(--sp-6)}.combat-spectator-kicker{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--bone-3)}.combat-discard-column{display:flex;flex-direction:column;gap:var(--sp-2);flex-shrink:0;align-items:stretch}.spear-ability,.clown-ability{display:flex;flex-direction:column;align-items:stretch;gap:4px;min-width:92px;padding:8px 10px;border:1px solid var(--bone-3, #4a4036);border-radius:8px;background:#14110e99}.spear-ability.is-ready{border-color:var(--ember, #c2702e);box-shadow:0 0 0 1px #c2702e66 inset}.spear-ability.is-spent,.spear-ability.is-broken{opacity:.55}.spear-ability.is-pristine{border-color:#d8d8de;box-shadow:0 0 0 1px #d8d8de80 inset,0 0 6px #d8d8de59}.clown-ability.is-ready{border-color:var(--jester, #b96fc9);box-shadow:0 0 0 1px #b96fc966 inset}.clown-ability.is-spent{opacity:.55}.clown-ability.is-loaded{border-color:var(--coin, #d4b35a)}.spear-ability-button,.clown-ability-button{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;background:none;border:none;color:inherit;cursor:pointer;font:inherit}.spear-ability-button:disabled,.clown-ability-button:disabled{cursor:default}.spear-ability-icon,.clown-ability-icon{font-size:18px;line-height:1}.spear-ability-label,.clown-ability-label{font-size:11px;letter-spacing:.12em;font-weight:700}.spear-ability-state,.clown-ability-state{font-size:9px;letter-spacing:.1em;color:var(--bone-2, #d6cdbe)}.spear-ability-stats,.clown-ability-loaded{display:flex;justify-content:space-around;font-size:9px;letter-spacing:.08em;color:var(--bone-2, #d6cdbe);border-top:1px dashed var(--bone-4, #3a3128);padding-top:4px}.spear-ability-stat{display:flex;gap:4px}.spear-ability-stat-k,.clown-ability-stat-k{opacity:.7}.spear-ability-stat-v,.clown-ability-stat-v{font-weight:700;color:var(--bone-1, #f0e7d8)}.inn-panel-head{display:flex;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:4px}.inn-panel-status{font-size:11px;letter-spacing:.12em;color:var(--bone-2, #d6cdbe)}.inn-option-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0}.inn-option{display:flex;flex-direction:column;gap:6px;padding:12px;text-align:left;background:#14110e80;border:1px solid var(--bone-3, #4a4036);border-radius:8px;color:inherit;cursor:pointer;font:inherit;transition:border-color .15s,transform .15s}.inn-option:hover:not(:disabled){border-color:var(--ember, #c2702e);transform:translateY(-1px)}.inn-option:disabled{cursor:default}.inn-option.is-picked{border-color:var(--ember, #c2702e);background:#c2702e26}.inn-option.is-locked{opacity:.5}.inn-option.is-placeholder .inn-option-name{color:var(--bone-2, #d6cdbe)}.inn-option-head{display:flex;align-items:center;gap:8px}.inn-option-name{font-size:14px;font-weight:700;letter-spacing:.08em}.inn-option-tag,.inn-option-marker{font-size:10px;letter-spacing:.1em;padding:2px 6px;border:1px solid var(--bone-3, #4a4036);border-radius:4px}.inn-option-marker{background:var(--ember, #c2702e);color:#14110e;border-color:var(--ember, #c2702e)}.inn-option-blurb{font-size:12px;color:var(--bone-2, #d6cdbe)}.inn-foot{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:6px}.inn-skip{display:inline-flex;align-items:center;gap:6px}.inn-party-status{list-style:none;margin:14px 0 0;padding:8px 0 0;border-top:1px dashed var(--bone-4, #3a3128);display:flex;flex-direction:column;gap:3px}.inn-party-row{display:flex;justify-content:space-between;font-size:11px}.inn-party-choice{color:var(--bone-2, #d6cdbe)}.inn-party-choice.is-locked{color:var(--ember, #c2702e);font-weight:700}.inn-remove-picker{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center}.inn-remove-picker-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#080706a6}.inn-remove-picker-panel{position:relative;max-width:720px;width:min(720px,90vw);max-height:80vh;overflow:auto;background:var(--bone-9, #1c1814);border:1px solid var(--bone-3, #4a4036);border-radius:10px;padding:14px}.inn-remove-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.inn-remove-picker-title{font-size:14px;font-weight:700;letter-spacing:.12em}.inn-remove-picker-subtitle{margin:0 0 var(--sp-2) 0;padding:0 var(--sp-3);font-size:11px;letter-spacing:.08em;color:var(--bone-3)}.inn-remove-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:8px}.inn-remove-card{cursor:pointer;transition:transform .1s ease,filter .1s ease,box-shadow .1s ease}.inn-remove-card:hover{filter:drop-shadow(0 4px 0 rgba(255,56,56,.35))}.enemy-trait-row{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0}.enemy-trait-chip{display:inline-block;padding:2px 6px;font-family:var(--mono, monospace);font-size:9px;font-weight:700;letter-spacing:.12em;border-radius:3px;border:1px solid currentColor;background:#00000059}.enemy-trait-swarm{color:#e4a14a}.enemy-trait-taunt{color:#c25151}.enemy-trait-thorns{color:#7fb56e}.enemy-trait-enrage{color:#d4694d}.enemy-trait-inflictor{color:var(--jester, #d040ff)}.enemy-trait-overheat{color:var(--ember, #ff7038)}.enemy-trait-stoke{color:var(--acid, #d6ff3a)}.enemy-trait-regen{color:#6fc89c}.enemy-trait-hush{color:#8aa6d6}.energy-orb{display:flex;align-items:baseline;gap:4px;padding:6px 14px;background:var(--ink);border:2px solid var(--acid);box-shadow:3px 3px #d6ff3a40;font-family:var(--display);font-weight:700;color:var(--acid);letter-spacing:.04em;transition:opacity .12s,filter .12s}.energy-orb-bolt{font-size:22px;line-height:1}.energy-orb-value{font-size:28px;line-height:1;min-width:22px;text-align:right}.energy-orb-max{font-size:13px;color:var(--bone-3);letter-spacing:.08em}.energy-pip-row{display:inline-flex;align-items:center;gap:5px;padding:2px 0}.energy-pip{width:16px;height:16px;border-radius:50%;border:2px solid var(--acid);background:transparent;transition:background .12s,transform .12s,box-shadow .12s}.energy-pip.is-filled{background:var(--acid);box-shadow:0 0 6px #d6ff3a8c}.energy-orb.is-empty{border-color:var(--rule-hi);color:var(--bone-3);box-shadow:none}.energy-orb.is-empty .energy-pip{border-color:var(--rule-hi)}.energy-orb.is-empty .energy-orb-bolt{color:var(--bone-4)}.combat-hand-head:has(.combat-turn-other) .energy-orb{opacity:.55;filter:saturate(.4)}.combat-hand-head:has(.combat-turn-other) .energy-pip{filter:saturate(.4)}.energy-orb.is-active{animation:energyOrbPulse 1.4s ease-in-out infinite}@keyframes energyOrbPulse{0%,to{box-shadow:3px 3px #d6ff3a40,0 0 #d6ff3a00}50%{box-shadow:3px 3px #d6ff3a59,0 0 22px #d6ff3a73}}body.is-reduce-motion .energy-orb.is-active{animation:none!important}.artifact-counter{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:var(--ink, #0f0d0b);border:1px solid var(--coin, #d4b35a);color:var(--coin, #d4b35a);font-family:var(--display, sans-serif);font-weight:700;font-size:11px;letter-spacing:.12em;border-radius:2px}.artifact-counter-icon{font-size:16px;line-height:1}.artifact-counter-label{color:var(--bone-3, #a89e8e)}.artifact-counter-value{font-size:16px;color:var(--coin, #d4b35a);min-width:14px;text-align:right}.reward-card.is-non-operational{filter:grayscale(.85) brightness(.6);opacity:.78}.reward-card.is-non-operational:hover:not(:disabled){filter:grayscale(.65) brightness(.75);opacity:.92}.reward-card-nonop-banner{position:absolute;top:50%;left:-10%;right:-10%;transform:translateY(-50%) rotate(-12deg);z-index:5;padding:6px 0;text-align:center;font-family:var(--font-mono, ui-monospace, monospace);font-size:14px;font-weight:800;letter-spacing:.18em;color:#fff;background:#be1e1eeb;border-top:2px solid #ff5a5a;border-bottom:2px solid #ff5a5a;box-shadow:0 4px 14px #0000008c;text-shadow:0 1px 2px rgba(0,0,0,.65);pointer-events:none}.card-pile-clickable{cursor:pointer;background:none;font:inherit;color:inherit;padding:0;margin:0;border:0;transition:transform .12s,filter .12s}.card-pile-clickable:not(:disabled):hover{transform:translateY(-2px);filter:brightness(1.15)}.card-pile-clickable:disabled{cursor:default;opacity:.55}.pile-inspect{position:fixed;top:0;right:0;bottom:0;left:0;z-index:38;display:flex;align-items:center;justify-content:center;padding:var(--sp-5, 16px)}.pile-inspect-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;animation:rpBackdropIn .2s ease-out}.pile-inspect-panel{position:relative;background:var(--char, #1c1814);border:1px solid var(--bone-3, #4a4036);box-shadow:6px 6px #0006;padding:var(--sp-5, 16px);width:min(780px,92vw);max-height:80vh;display:flex;flex-direction:column;gap:var(--sp-4, 12px);animation:rpPanelIn .26s cubic-bezier(.18,.85,.3,1)}.pile-inspect-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3, 8px)}.pile-inspect-title{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:.08em;margin:0;color:var(--bone, #f0e7d8)}.pile-inspect-sub{font-size:11px;color:var(--bone-3, #a89e8e);margin:4px 0 0}.pile-inspect-count{font-size:22px;font-weight:700;color:var(--acid, #d6ff3a);letter-spacing:.04em;min-width:36px;text-align:right}.pile-inspect-close{align-self:flex-start}.pile-inspect-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;gap:8px;overflow-y:auto;padding-right:4px}.pile-inspect-empty{font-size:12px;letter-spacing:.12em;color:var(--bone-3, #a89e8e);text-align:center;padding:24px 0}.bj-ability{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:8px 10px;background:var(--char, #131318);border:1px solid var(--coin, #d4b35a);min-width:180px;position:relative}.bj-ability.is-locked{border-color:var(--bone-3, #a89e8e)}.bj-ability.is-busted{border-color:var(--blood, #c25151)}.bj-ability.is-natural{border-color:var(--acid, #d6ff3a);box-shadow:0 0 10px #d6ff3a2e}.bj-ability-slot-label{font-size:9px;letter-spacing:.14em;color:var(--bone-3, #a89e8e)}.bj-ability-house,.bj-ability-hand{display:flex;flex-direction:column;gap:4px}.bj-card-row{display:flex;flex-wrap:wrap;gap:4px}.bj-card{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;width:28px;height:38px;padding:2px;border:1px solid var(--bone-2, #d6cdbe);background:var(--ink, #0f0d0b);font-family:var(--mono, monospace);font-weight:700;line-height:1}.bj-card.is-face-down{border-style:dashed;color:var(--bone-3, #a89e8e)}.bj-card.is-empty{border-style:dashed;color:var(--bone-4, #3a3128)}.bj-card-back{font-size:14px}.bj-card-rank{font-size:13px;color:var(--bone, #f0e7d8)}.bj-card-suit{font-size:12px;color:var(--bone-2, #d6cdbe)}.bj-card-suit.is-red{color:var(--blood, #c25151)}.bj-hand-total{color:var(--coin, #f0c34a);font-weight:700}.bj-hand-total.is-busted{color:var(--blood, #c25151)}.bj-hand-bonus{color:var(--bone-3, #a89e8e)}.bj-ability-money{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6px;padding:4px 6px;background:var(--ink, #0f0d0b);border:1px solid var(--bone-4, #3a3128)}.bj-money-bank,.bj-money-bet{display:flex;flex-direction:column;align-items:center;gap:2px}.bj-money-k{font-size:9px;letter-spacing:.14em;color:var(--bone-3, #a89e8e)}.bj-money-v{font-size:16px;font-weight:700;color:var(--coin, #f0c34a)}.bj-bet-steppers{display:inline-flex;align-items:center;gap:4px}.bj-bet-step{width:20px;height:20px;display:grid;place-items:center;background:transparent;border:1px solid var(--bone-3, #a89e8e);color:var(--bone, #f0e7d8);font-family:var(--mono, monospace);font-weight:700;cursor:pointer}.bj-bet-step:hover:not(:disabled){border-color:var(--coin, #f0c34a);color:var(--coin, #f0c34a)}.bj-bet-step:disabled{opacity:.3;cursor:default}.bj-bet-value{font-size:14px;font-weight:700;color:var(--coin, #f0c34a);min-width:26px;text-align:center}.bj-apply-natural{font-family:var(--mono);font-size:11px;letter-spacing:.1em;padding:4px 10px;background:transparent;border:1px solid var(--acid, #8ad07b);color:var(--acid, #8ad07b);cursor:pointer;text-transform:uppercase;white-space:nowrap}.bj-apply-natural:hover:not(:disabled){background:var(--acid, #8ad07b);color:#000}.bj-apply-natural:disabled{opacity:.4;cursor:default}.bj-apply-natural:not(:disabled){animation:bj-apply-natural-pulse 2s ease-in-out infinite}@keyframes bj-apply-natural-pulse{0%,to{box-shadow:0 0 0 1px var(--acid, #8ad07b)}50%{box-shadow:0 0 0 1px var(--acid, #8ad07b),0 0 8px 2px #8ad07b80}}body.is-reduce-motion .bj-apply-natural:not(:disabled){animation:none}.bj-ability-buy{display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:2px 4px}.bj-ability-buy>.bj-money-k{text-align:center}.bj-buy-btn{display:inline-flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 8px;background:transparent;border:1px solid var(--bone-3, #a89e8e);color:var(--bone, #f0e7d8);font-family:var(--display, sans-serif);font-weight:700;cursor:pointer}.bj-buy-btn:hover:not(:disabled){border-color:var(--coin, #f0c34a);color:var(--coin, #f0c34a)}.bj-buy-btn:disabled{opacity:.35;cursor:default}.bj-buy-k{font-size:10px;letter-spacing:.14em}.bj-buy-v{font-size:11px;color:var(--coin, #f0c34a)}.bj-ability-badge{position:absolute;top:-10px;right:-6px;padding:2px 6px;font-size:9px;letter-spacing:.16em;font-weight:700;background:var(--acid, #d6ff3a);color:var(--ink, #0f0d0b)}.status-chip-row{display:flex;flex-wrap:nowrap;gap:4px;margin:4px 0;min-height:22px;overflow:hidden;max-width:100%}.status-chip-row>.tt-trigger{flex-shrink:0;align-self:center}.status-chip{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;font-family:var(--mono, monospace);font-size:11px;font-weight:800;letter-spacing:.04em;border:1px solid currentColor;background:var(--chip-bg, rgba(0, 0, 0, .4));flex-shrink:0;line-height:1;white-space:nowrap}.status-chip-k{color:inherit}.status-chip-v{color:var(--bone, #ebe8de);font-size:12px}.status-chip-poison{color:#7fb56e;--chip-bg: rgba(127, 181, 110, .18)}.status-chip-strength{color:#c25151;--chip-bg: rgba(194, 81, 81, .18)}.status-chip-barrier{color:#d4b35a;--chip-bg: rgba(212, 179, 90, .18)}.status-chip-confusion{color:#b96fc9;--chip-bg: rgba(185, 111, 201, .18)}.status-chip-reinforce{color:#6fa8c9;--chip-bg: rgba(111, 168, 201, .22)}.status-chip-burn{color:#ff7038;--chip-bg: rgba(255, 112, 56, .18)}.status-chip-undead{color:#d6ff3a;--chip-bg: rgba(214, 255, 58, .16)}.status-chip-bleed{color:#d24a4a;--chip-bg: rgba(210, 74, 74, .18)}.status-chip-protection{color:#8fd6c8;--chip-bg: rgba(143, 214, 200, .18)}.status-chip-fatigue{color:#9a7bb5;--chip-bg: rgba(154, 123, 181, .18)}.status-chip-more{color:var(--bone-3, #a89e8e);--chip-bg: var(--ink, #0a0a0c)}.vestige-tray{display:flex;flex-wrap:wrap;align-items:center;gap:5px;margin-top:6px;padding:0 2px}.vestige-sq{position:relative;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex-shrink:0;padding:0;border:1px solid var(--vestige-rarity, var(--bone-2, #c9c1ad));color:var(--vestige-rarity, var(--bone-2, #c9c1ad));background:color-mix(in srgb,var(--vestige-rarity) 16%,rgba(0,0,0,.5));border-radius:3px;line-height:1}.vestige-sq.is-common{--vestige-rarity: var(--bone-2)}.vestige-sq.is-rare{--vestige-rarity: var(--cobalt)}.vestige-sq.is-epic{--vestige-rarity: var(--jester)}.vestige-sq.is-legendary{--vestige-rarity: var(--coin)}.vestige-sq.is-mythic{--vestige-rarity: var(--blood)}.vestige-sq.is-entity{--vestige-rarity: var(--jester);border-style:dashed}.vestige-sq-glyph{font-size:13px;font-weight:800}.vestige-sq-charge{position:absolute;bottom:-5px;right:-5px;min-width:12px;height:12px;padding:0 2px;display:inline-flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;line-height:1;color:var(--ink, #0a0a0c);background:var(--vestige-rarity, var(--bone-2, #c9c1ad));border-radius:6px}.vestige-sq.is-active{cursor:pointer}.vestige-sq.is-active:hover{background:color-mix(in srgb,var(--vestige-rarity) 32%,rgba(0,0,0,.5))}.vestige-sq.is-active:disabled{cursor:default;opacity:.45}.vestige-sq-use{position:absolute;top:-3px;left:-3px;width:6px;height:6px;border-radius:50%;background:var(--vestige-rarity, var(--bone-2, #c9c1ad))}.vestige-sq.is-entity:disabled{cursor:default}.vestige-sq.is-entity.is-threat{border-style:solid;--vestige-rarity: var(--blood, #c25151);animation:vestige-entity-pulse 1.1s ease-in-out infinite}.vestige-sq.is-entity.is-targeted{outline:1px solid var(--bone, #ebe8de);outline-offset:1px}@keyframes vestige-entity-pulse{0%,to{opacity:1}50%{opacity:.5}}.vestige-tip{display:flex;flex-direction:column;gap:4px;max-width:220px;text-align:left}.vestige-tip-name{font-weight:800;letter-spacing:.04em;color:var(--vestige-tip-color, var(--bone, #ebe8de));display:flex;align-items:baseline;gap:6px}.vestige-tip-name.is-common{--vestige-tip-color: var(--bone-2)}.vestige-tip-name.is-rare{--vestige-tip-color: var(--cobalt)}.vestige-tip-name.is-epic{--vestige-tip-color: var(--jester)}.vestige-tip-name.is-legendary{--vestige-tip-color: var(--coin)}.vestige-tip-name.is-mythic{--vestige-tip-color: var(--blood)}.vestige-tip-name.is-entity{--vestige-tip-color: var(--jester)}.vestige-tip-rarity{font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.7}.vestige-tip-text{font-size:11px;line-height:1.35;color:var(--bone-2, #c9c1ad)}.vestige-tip-charge,.vestige-tip-hint{font-size:10px;letter-spacing:.06em;color:var(--bone-3, #a89e8e)}.vestige-tip-hint{color:var(--acid, #9fe04a)}.status-chip.has-temp{border-style:dashed}.status-chip-temp{font-size:10px;line-height:1;opacity:.85;animation:status-chip-temp-breath 1.4s ease-in-out infinite}@keyframes status-chip-temp-breath{0%,to{opacity:.55}50%{opacity:1}}.cleanse-chip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:6;font-family:var(--mono, monospace);font-weight:900;font-size:14px;letter-spacing:.06em;color:var(--coin, #d4b35a);text-shadow:0 0 6px rgba(0,0,0,.65);animation:cleanse-chip-pop .9s ease-out forwards}.cleanse-chip-inner{padding:4px 10px;border:1px solid currentColor;background:#0a0a0cb3;text-decoration:line-through;text-decoration-thickness:2px;text-decoration-color:currentColor}@keyframes cleanse-chip-pop{0%{transform:scale(.6) translateY(8px);opacity:0}18%{transform:scale(1.08) translateY(-2px);opacity:1}60%{transform:scale(1) translateY(-6px);opacity:1}to{transform:scale(.96) translateY(-14px);opacity:0}}.buff-fades-chip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:6;font-family:var(--mono, monospace);font-weight:800;font-size:12px;letter-spacing:.05em;color:var(--bone-3, #a89e8e);text-shadow:0 0 4px rgba(0,0,0,.5);animation:buff-fades-fade .7s ease-out forwards}.buff-fades-chip-inner{padding:3px 8px;border:1px dashed currentColor;background:#0a0a0c99}@keyframes buff-fades-fade{0%{opacity:0;transform:translateY(0)}20%{opacity:.95}to{opacity:0;transform:translateY(-12px)}}.enemy-card,.player-strip{--plaque-caption: 11px;--plaque-secondary: 14px;--plaque-stat: 20px;--plaque-headline: 24px}.enemy-intent-damage{display:inline-flex;align-items:center;gap:4px;font-family:var(--display, sans-serif);font-weight:800;font-size:var(--plaque-headline);line-height:1;letter-spacing:.02em}.enemy-intent-damage.severity-low{color:var(--coin, #d4b35a)}.enemy-intent-damage.severity-mid{color:var(--ember, #e08b3e)}.enemy-intent-damage.severity-high{color:var(--blood, #e84545);text-shadow:0 0 8px rgba(232,69,69,.4);animation:enemyIntentPulse 1.1s ease-in-out infinite}@keyframes enemyIntentPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.25)}}body.is-reduce-motion .enemy-intent-damage.severity-high{animation:none!important}.enemy-intent-glyph{font-size:var(--plaque-stat);line-height:1}.enemy-intent-amount{font-variant-numeric:tabular-nums;min-width:18px;text-align:right}.enemy-intent-line{font-size:var(--plaque-secondary);letter-spacing:.1em;color:var(--bone-2, #d6cdbe);display:inline-flex;align-items:center;gap:6px}.enemy-intent-line.is-idle{color:var(--bone-4, #3a3128)}@keyframes blockGainPulse{0%{transform:scale(1);filter:brightness(1)}40%{transform:scale(1.18);filter:brightness(1.6)}to{transform:scale(1);filter:brightness(1)}}.player-strip[data-seat]{padding-left:8px}.player-strip[data-seat="1"]{border-left:3px solid var(--seat-1);background:color-mix(in srgb,var(--seat-1) 12%,var(--char-2))}.player-strip[data-seat="2"]{border-left:3px solid var(--seat-2);background:color-mix(in srgb,var(--seat-2) 12%,var(--char-2))}.player-strip[data-seat="3"]{border-left:3px solid var(--seat-3);background:color-mix(in srgb,var(--seat-3) 12%,var(--char-2))}.player-strip[data-seat="4"]{border-left:3px solid var(--seat-4);background:color-mix(in srgb,var(--seat-4) 12%,var(--char-2))}.player-strip[data-seat="1"].is-me{background:color-mix(in srgb,var(--seat-1) 18%,var(--char-3))}.player-strip[data-seat="2"].is-me{background:color-mix(in srgb,var(--seat-2) 18%,var(--char-3))}.player-strip[data-seat="3"].is-me{background:color-mix(in srgb,var(--seat-3) 18%,var(--char-3))}.player-strip[data-seat="4"].is-me{background:color-mix(in srgb,var(--seat-4) 18%,var(--char-3))}.player-strip.is-targeted{border-top:4px solid var(--blood, #e84545);padding-top:7px}.combat-intent-band{display:grid;grid-template-columns:repeat(var(--party-cols, 4),var(--card-w));gap:10px;justify-content:center;padding:var(--sp-2) var(--sp-5);min-height:38px;background:linear-gradient(180deg,#14110e00,#14110e8c)}.intent-band-cell{display:flex;align-items:center;justify-content:center;min-width:0}.intent-band-stack{display:flex;flex-wrap:wrap;gap:4px;align-items:center;justify-content:center;max-width:100%}.intent-band-chip{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;font-family:var(--display, sans-serif);font-weight:800;line-height:1;background:var(--ink, #0f0d0b);border:1px solid currentColor;letter-spacing:.04em;animation:intentBandIn .22s ease-out}@keyframes intentBandIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.intent-band-arrow{font-size:14px;line-height:1}.intent-band-from{font-size:9px;letter-spacing:.12em;color:var(--bone-3, #a89e8e);text-transform:uppercase}.intent-band-glyph{font-size:9px;letter-spacing:.14em;text-transform:uppercase;padding:1px 3px;background:#00000059}.intent-band-sigma{font-size:14px;font-weight:900}.intent-band-value{font-size:18px;font-variant-numeric:tabular-nums;min-width:14px;text-align:right}.intent-band-zero{font-size:11px;letter-spacing:.14em}.intent-band-chip.is-attack.severity-low{color:var(--coin, #d4b35a)}.intent-band-chip.is-attack.severity-mid{color:var(--ember, #e08b3e)}.intent-band-chip.is-attack.severity-high{color:var(--blood, #e84545);text-shadow:0 0 8px rgba(232,69,69,.4);animation:intentBandIn .22s ease-out,intentBandPulse 1.1s ease-in-out infinite}.intent-band-chip.is-dot.is-poison{color:#7fb56e;border-color:#7fb56e;background:#7fb56e1f}.intent-band-chip.is-dot.is-bleed{color:#d24a4a;border-color:#d24a4a;background:#d24a4a24}.intent-band-chip.is-dot.is-burn{color:#ff7038;border-color:#ff7038;background:#ff703824}.intent-band-chip.is-total{border-style:dashed;background:#14110ebf}.intent-band-chip.is-total.severity-low{color:var(--bone-3, #a89e8e)}.intent-band-chip.is-total.severity-mid{color:var(--ember, #e08b3e)}.intent-band-chip.is-total.severity-high{color:var(--blood, #e84545);text-shadow:0 0 6px rgba(232,69,69,.35)}@keyframes intentBandPulse{0%,to{filter:brightness(1)}50%{filter:brightness(1.25)}}body.is-reduce-motion .intent-band-chip.severity-high{animation:intentBandIn .22s ease-out!important}.intent-band-chip.is-soaked{color:var(--bone-3, #a89e8e);background:#14110e80}.incoming-tip{min-width:240px;max-width:340px;background:var(--ink);border:1px solid var(--rule-hi);box-shadow:4px 4px #00000080;color:var(--bone);font-family:var(--display);font-size:11px;letter-spacing:.02em;line-height:1.4;padding:8px 10px 6px;display:flex;flex-direction:column;gap:6px;pointer-events:none}.incoming-tip-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-bottom:1px dashed var(--rule);padding-bottom:4px}.incoming-tip-title{font-weight:700;letter-spacing:.12em;color:var(--blood, #e84545)}.incoming-tip-sub{font-size:10px;color:var(--bone-2, #c7bba8);text-transform:lowercase;letter-spacing:.06em}.incoming-tip-section-label{font-size:9px;letter-spacing:.18em;color:var(--bone-3, #8b8170);margin-top:2px}.incoming-tip-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.incoming-tip-row{display:grid;grid-template-columns:minmax(60px,1fr) auto auto;align-items:baseline;gap:6px;white-space:nowrap}.incoming-tip-row-name{overflow:hidden;text-overflow:ellipsis;color:var(--bone-1, #d8d8de)}.incoming-tip-stacks{color:var(--bone-2, #c7bba8);margin-left:2px}.incoming-tip-row-math{font-size:10px;color:var(--bone-2, #c7bba8);font-variant-numeric:tabular-nums}.incoming-tip-tag{font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--bone-3, #8b8170);padding:0 3px}.incoming-tip-row-landed{font-family:var(--mono);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--blood, #e84545);text-align:right}.incoming-tip-row-landed.is-zero{color:var(--cobalt, #6f9bff);font-size:9px;letter-spacing:.12em;font-weight:500}.incoming-tip-timings{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;font-size:9px;letter-spacing:.06em;color:var(--bone-3, #8b8170)}.incoming-tip-timing{display:flex;gap:6px}.incoming-tip-timing-kind{min-width:48px;text-transform:uppercase}.incoming-tip-foot{display:flex;align-items:baseline;justify-content:space-between;gap:8px;border-top:1px dashed var(--rule);padding-top:4px;font-size:10px;letter-spacing:.1em;color:var(--bone-2, #c7bba8)}.incoming-tip-foot-value{font-size:14px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--blood, #e84545)}.incoming-tip-foot-value.is-zero{color:var(--cobalt, #6f9bff)}.alch-ability{display:flex;flex-direction:column;align-items:stretch;gap:6px;padding:8px;background:var(--char, #131318);border:1px solid var(--acid, #8ad07b);min-width:168px;max-width:200px;flex:0 0 auto;font-family:var(--mono);color:var(--ink, #e8e6dc)}.alch-ability-toggle{display:grid;grid-template-columns:auto auto 1fr;align-items:center;gap:6px;background:transparent;border:0;padding:4px 6px;color:var(--ink, #e8e6dc);cursor:pointer;font-family:var(--mono);border:1px dashed var(--rule-hi, #44423d)}.alch-ability-toggle:hover:not(:disabled){border-color:var(--acid, #8ad07b)}.alch-ability.is-targeting .alch-ability-toggle{border-style:solid;border-color:var(--acid, #8ad07b);background:#8ad07b14}.alch-ability-toggle:disabled{cursor:default;opacity:.6}.alch-ability-k{font-size:9px;letter-spacing:.12em;opacity:.7}.alch-ability-glyph{font-size:16px;color:var(--acid, #8ad07b)}.alch-ability-v{font-size:18px;font-weight:700;color:var(--acid, #8ad07b);text-align:right}.alch-ability-hint{grid-column:1 / -1;font-size:8px;letter-spacing:.16em;opacity:.55;text-align:center;margin-top:2px}.alch-ability.is-targeting .alch-ability-hint{color:var(--acid, #8ad07b);opacity:1}.alch-ability-preview-frame{display:flex;align-items:center;justify-content:center;min-height:168px;padding:4px;border:1px dashed var(--rule, #26262e);background:#00000040}.alch-ability-preview-card{transform:scale(.78);transform-origin:center;pointer-events:none}.alch-ability-preview-card.is-failed{filter:grayscale(.4);opacity:.9}.alch-ability-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;opacity:.55;padding:12px}.alch-ability-preview-empty-k{font-size:11px;letter-spacing:.18em;color:var(--acid, #8ad07b)}.alch-ability-preview-empty-sub{font-size:9px;letter-spacing:.1em;text-transform:uppercase}.alch-ability-actions{display:flex;gap:6px}.alch-ability-btn{flex:1;font-family:var(--mono);font-size:10px;letter-spacing:.08em;padding:5px 4px;background:transparent;border:1px solid var(--rule-hi, #44423d);color:var(--ink, #e8e6dc);cursor:pointer;text-transform:uppercase}.alch-ability-btn:hover:not(:disabled){background:var(--rule-hi, #44423d)}.alch-ability-btn:disabled{opacity:.4;cursor:default}.alch-ability-btn.is-mix{border-color:var(--acid, #8ad07b);color:var(--acid, #8ad07b)}.alch-ability-btn.is-mix:hover:not(:disabled){background:var(--acid, #8ad07b);color:#000}.alch-ability.is-targeting{animation:alch-ability-pulse 1.4s ease-in-out infinite}@keyframes alch-ability-pulse{0%,to{box-shadow:0 0 0 1px var(--acid, #8ad07b),0 0 6px 1px #8ad07b66}50%{box-shadow:0 0 0 1px var(--acid, #8ad07b),0 0 14px 3px #8ad07bbf}}body.is-reduce-motion .alch-ability.is-targeting{animation:none;box-shadow:0 0 0 2px var(--acid, #8ad07b)}.objective-strip{display:flex;flex-wrap:wrap;gap:12px;padding:8px 12px;margin:0 auto 8px;max-width:1200px;justify-content:center}.objective-widget{background:var(--bg-2, #1a1817);border:1px solid var(--rule, #3a3835);color:var(--fg, #e8e3d8);padding:8px 12px;min-width:200px;max-width:320px;flex:1 1 240px;display:flex;flex-direction:column;gap:6px;cursor:pointer;font-family:inherit;text-align:left;transition:transform 80ms ease,border-color 80ms ease}.objective-widget:hover:not(:disabled){border-color:var(--rule-hi, #6a6862);transform:translateY(-1px)}.objective-widget.is-focused{border-color:var(--accent, #d4a64a);box-shadow:0 0 0 1px var(--accent, #d4a64a),0 0 12px 2px #d4a64a59}.objective-widget.is-complete{opacity:.45;cursor:default;border-color:var(--rule, #3a3835)}.objective-widget.is-optional .objective-widget-name:after{content:" · OPT";color:var(--muted, #8a8580);font-size:.8em}.objective-widget:disabled{cursor:not-allowed}.objective-widget-name{font-weight:600;font-size:.95em;letter-spacing:.02em}.objective-widget-bar{position:relative;height:14px;background:var(--bg-3, #0e0d0c);border:1px solid var(--rule, #3a3835);overflow:hidden}.objective-widget-fill{position:absolute;inset:0 auto 0 0;background:linear-gradient(90deg,#d4a64a,#b8852a);transition:width .28s ease-out}.objective-widget.is-complete .objective-widget-fill{background:linear-gradient(90deg,#8ad07b,#5fa54f)}.objective-widget-counts{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.78em;color:var(--fg, #e8e3d8);text-shadow:0 0 4px #000,0 0 4px #000;pointer-events:none}.objective-widget-feedback{font-size:.82em;color:var(--muted, #8a8580);min-height:1.2em;font-style:italic}.objective-widget-feedback.tier-1{color:var(--fg, #e8e3d8);font-style:normal}.objective-widget-feedback.tier-2{color:#f0c878;font-weight:600;font-style:normal}.objective-widget-feedback.tier-3{color:#ff9947;font-weight:700;font-style:normal;text-shadow:0 0 6px rgba(255,153,71,.5)}.player-strip-objective{font-size:.78em;color:var(--accent, #d4a64a);text-shadow:0 0 4px rgba(212,166,74,.4);margin-top:2px;letter-spacing:.02em}.reinforcement-banner{margin:0 auto 6px;max-width:1200px;padding:6px 14px;text-align:center;font-size:.85em;letter-spacing:.1em;font-weight:600;color:var(--accent, #d4a64a);border:1px solid var(--rule, #3a3835);background:var(--bg-2, #1a1817)}.reinforcement-banner.is-urgent{color:#ff5947;border-color:#ff5947;text-shadow:0 0 8px rgba(255,89,71,.6);animation:reinforce-pulse 1.2s ease-in-out infinite}@keyframes reinforce-pulse{0%,to{background:var(--bg-2, #1a1817)}50%{background:#ff594726}}body.is-reduce-motion .reinforcement-banner.is-urgent{animation:none}.reinforcement-banner-icon{margin-right:4px}.reinforcement-banner-wave{color:var(--fg, #e8e3d8);letter-spacing:.04em}.reinforcement-banner.is-urgent .reinforcement-banner-wave{color:#ffb09a}.reinforcement-banner-halt{color:var(--muted, #8a8580);font-weight:500;letter-spacing:.04em;text-transform:none;font-style:italic}.objective-widget-header{display:flex;justify-content:space-between;align-items:center;gap:8px}.objective-widget-check{color:var(--acid, #8ad07b);font-weight:700}.objective-widget-affinity{display:flex;gap:4px;align-items:center}.objective-affinity-chip{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;font-size:12px;line-height:1;border:1px solid var(--rule, #3a3835);background:var(--bg-3, #0e0d0c);color:var(--fg, #e8e3d8);-webkit-user-select:none;user-select:none}.objective-affinity-chip[data-tier="4"]{width:22px;height:22px;font-size:14px;border-color:var(--accent, #d4a64a);color:var(--accent, #d4a64a);text-shadow:0 0 4px rgba(212,166,74,.5)}.objective-affinity-chip[data-tier="2"]{color:#c8b88a}.objective-affinity-chip[data-tier="1"]{opacity:.45;font-size:10px}.objective-affinity-chip[data-kind=damage][data-tier="4"]{color:#ff8a6a;border-color:#ff8a6a}.objective-affinity-chip[data-kind=block][data-tier="4"]{color:#6aa8ff;border-color:#6aa8ff}.objective-affinity-chip[data-kind=heal][data-tier="4"]{color:#8ad07b;border-color:#8ad07b}.objective-affinity-chip[data-kind=buff][data-tier="4"]{color:#d4a64a;border-color:#d4a64a}.objective-affinity-chip[data-kind=debuff][data-tier="4"]{color:#c878d0;border-color:#c878d0}.objective-widget-contributors{display:flex;gap:4px;flex-wrap:wrap;margin-top:2px}.objective-contributor-dot{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:.72em;font-weight:700;border:1px solid var(--accent, #d4a64a);background:#d4a64a2e;color:var(--accent, #d4a64a);letter-spacing:.04em}.objective-contributor-dot[data-seat="1"]{color:#ff8a6a;border-color:#ff8a6a;background:#ff8a6a2e}.objective-contributor-dot[data-seat="2"]{color:#6aa8ff;border-color:#6aa8ff;background:#6aa8ff2e}.objective-contributor-dot[data-seat="3"]{color:#8ad07b;border-color:#8ad07b;background:#8ad07b2e}.objective-contributor-dot[data-seat="4"]{color:#c878d0;border-color:#c878d0;background:#c878d02e}.objective-contributor-dot.is-pulsing-0,.objective-contributor-dot.is-pulsing-1{animation:objective-dot-pulse .65s ease-out}@keyframes objective-dot-pulse{0%{transform:scale(1);box-shadow:0 0 0 0 currentColor}20%{transform:scale(1.35);box-shadow:0 0 6px 2px currentColor}to{transform:scale(1);box-shadow:0 0 0 0 currentColor}}body.is-reduce-motion .objective-contributor-dot.is-pulsing-0,body.is-reduce-motion .objective-contributor-dot.is-pulsing-1{animation:none}.objective-completion-chip{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:5;animation:objective-completion-pop 1.5s ease-out forwards}.objective-widget{position:relative}.objective-completion-chip-inner{background:var(--acid, #8ad07b);color:#0e0d0c;font-weight:800;letter-spacing:.08em;padding:6px 14px;font-size:.9em;border:2px solid #0e0d0c;box-shadow:0 0 14px 4px #8ad07b8c;text-shadow:none}@keyframes objective-completion-pop{0%{transform:scale(.5);opacity:0}18%{transform:scale(1.15);opacity:1}30%{transform:scale(1);opacity:1}80%{transform:scale(1);opacity:1}to{transform:scale(1.05);opacity:0}}body.is-reduce-motion .objective-completion-chip{animation:none;opacity:1}.objective-feedback-from{font-weight:600;color:var(--muted, #8a8580);margin-right:2px}.objective-feedback-arrow{color:var(--muted, #8a8580)}.objective-widget[class*=tier3-flash-]{animation:tier3-pulse .7s ease-out}@keyframes tier3-pulse{0%{box-shadow:0 0 #ff994700;border-color:var(--rule, #3a3835)}20%{box-shadow:0 0 24px 8px #ff9947a6,0 0 0 2px #ff9947f2;border-color:#ff9947}to{box-shadow:0 0 #ff994700;border-color:var(--rule, #3a3835)}}body.is-reduce-motion .objective-widget[class*=tier3-flash-]{animation:none}.bandito-ability{display:flex;flex-direction:column;align-items:stretch;gap:6px;width:156px;padding:8px 10px 10px;border:1px solid var(--bone-3, #4a4036);border-radius:8px;background:#14110e99}.bandito-header{display:flex;gap:6px;font-size:11px;letter-spacing:.06em;color:#c8b298}.bandito-header-chip{display:inline-flex;align-items:baseline;justify-content:space-between;gap:4px;padding:2px 6px;flex:1 1 0;min-width:0;border:1px solid #3a3530;border-radius:4px;background:#0000004d}.bandito-header-chip b{color:#e6a96a;font-weight:600;font-variant-numeric:tabular-nums}.bandito-readied{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:4px 6px;border:1px solid #3a3530;border-radius:4px;background:#00000059;font-size:11px;letter-spacing:.04em;color:#d6c1a4;min-height:18px;line-height:1.4}.bandito-readied-empty{color:#6b6258;font-style:italic}.bandito-readied.is-picking{border-color:#d4b35a;background:#d4b35a14}.bandito-readied-pick{color:#ffd28a;letter-spacing:.08em;text-transform:uppercase;font-size:10px}.bandito-readied-name{color:#e6a96a;letter-spacing:.06em}.bandito-readied-sep{color:#5a544c;margin:0 4px}.bandito-readied-stats{color:#a89f93}.bandito-frame{display:flex;justify-content:center;padding:4px 0}.bandito-svg{width:96px;height:96px;display:block}.bandito-barrel{fill:#2a2520;stroke:#c87b3a;stroke-width:1}.bandito-cylinder-ring{fill:none;stroke:#3a3530;stroke-width:1}.bandito-cylinder-body{fill:#1a1612;stroke:#c87b3a;stroke-width:1.2}.bandito-pin{fill:#c87b3a;stroke:none}.bandito-chamber-well{fill:#0d0a08;stroke:#5a4a3a;stroke-width:.6}.bandito-chamber.is-filled .bandito-chamber-well{stroke:#c87b3a}.bandito-chamber-bullet{fill:#e6a96a;stroke:#5a3a18;stroke-width:.5}.bandito-chamber.is-top.is-filled .bandito-chamber-bullet{fill:#ffd28a;filter:drop-shadow(0 0 2px rgba(255,210,138,.65))}.bandito-chamber.is-pickable{cursor:pointer}.bandito-chamber.is-pickable .bandito-chamber-well{stroke:#d4b35a;stroke-width:1}.bandito-chamber.is-pickable:hover .bandito-chamber-well{fill:#2a2014;stroke:#ffd28a;stroke-width:1.5}.bandito-chamber.is-pickable:hover .bandito-chamber-bullet{fill:#ffd28a;filter:drop-shadow(0 0 3px rgba(255,210,138,.8))}@keyframes bandito-spin-load{0%{transform:rotate(60deg)}to{transform:rotate(0)}}@keyframes bandito-spin-fire{0%{transform:rotate(-60deg)}to{transform:rotate(0)}}@keyframes bandito-spin-rotate{0%{transform:rotate(-60deg)}to{transform:rotate(0)}}.bandito-cylinder.is-loading{animation:bandito-spin-load .3s cubic-bezier(.2,.7,.3,1)}.bandito-cylinder.is-firing{animation:bandito-spin-fire .3s cubic-bezier(.2,.7,.3,1)}.bandito-cylinder.is-rotating{animation:bandito-spin-rotate .3s cubic-bezier(.2,.7,.3,1)}body.is-reduce-motion .bandito-cylinder.is-loading,body.is-reduce-motion .bandito-cylinder.is-firing,body.is-reduce-motion .bandito-cylinder.is-rotating{animation:none}.bandito-fire{display:block;width:100%;padding:6px 8px;border:1px solid #c87b3a;border-radius:4px;background:linear-gradient(180deg,#2a1a10,#1a0f08);color:#e6a96a;font:inherit;font-weight:600;letter-spacing:.18em;cursor:pointer}.bandito-fire:hover:not(:disabled){background:linear-gradient(180deg,#3a2515,#2a1a10);color:#ffd28a}.bandito-fire:active:not(:disabled){background:#1a0f08;transform:translateY(1px)}.bandito-fire:disabled{opacity:.45;cursor:not-allowed}.bandito-fire.is-empty{border-color:#5a4a3a;color:#8c7d6a}.bandito-popout{display:flex;flex-direction:column;gap:6px;min-width:220px;max-width:280px;padding:8px 10px;font-size:12px;color:#d6c1a4;background:var(--ink, #0a0a0c);border:1px solid #3a2a1c;box-shadow:4px 4px #0000008c}.bandito-popout-head{font-size:11px;letter-spacing:.12em;color:#c87b3a;text-transform:uppercase}.bandito-popout-empty{font-style:italic;color:#6b6258}.bandito-popout-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.bandito-popout-row{display:grid;grid-template-columns:24px 1fr auto;gap:6px;align-items:baseline;padding:3px 4px;border-radius:3px;background:#00000040}.bandito-popout-row.is-top{background:#e89c501f;border:1px solid rgba(232,156,80,.35)}.bandito-popout-slot{color:#8c7d6a;font-size:10px}.bandito-popout-name{color:#e6a96a;letter-spacing:.04em}.bandito-popout-summary{color:#a89f93;font-size:11px;text-align:right}.bandito-popout-pick{color:#ffd28a}.bandito-popout-dry{color:#8c7d6a}.bandito-popout-foot{font-size:10px;letter-spacing:.08em;color:#8c7d6a;border-top:1px solid #2a2520;padding-top:4px}.class-fx-layer,.class-fx-screen{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:9000;overflow:visible}.class-fx-screen{z-index:9100;overflow:hidden}@keyframes cfx-shake{0%,to{transform:translate(0)}18%{transform:translate(-4px,2px)}36%{transform:translate(5px,-2px)}54%{transform:translate(-3px,1px)}72%{transform:translate(3px,-1px)}90%{transform:translate(-1px)}}.cfx-hit-shake{animation:cfx-shake .32s cubic-bezier(.4,.1,.3,1)}@keyframes cfx-fade{0%{opacity:1}to{opacity:0}}.cfx-hit-flash{pointer-events:none;background:#ff38388c;mix-blend-mode:screen;animation:cfx-fade .28s ease-out forwards}.cfx-self-flash{pointer-events:none;background:#ff383873;mix-blend-mode:screen;animation:cfx-fade .36s ease-out forwards}.cfx-self-flash-green{background:#4afa8a59}.cfx-number{position:fixed;transform:translate(-50%,-50%);font-family:var(--display);font-weight:800;font-size:32px;letter-spacing:-.01em;line-height:1;text-shadow:0 2px 0 rgba(0,0,0,.85),0 0 12px currentColor;animation:cfx-numfloat .9s cubic-bezier(.2,.7,.3,1) forwards;font-variant-numeric:tabular-nums;pointer-events:none}.cfx-number-damage{color:var(--blood)}.cfx-number-gain{color:var(--acid)}@keyframes cfx-numfloat{0%{opacity:0;transform:translate(-50%,-50%) scale(.6)}18%{opacity:1;transform:translate(-50%,-65%) scale(1.15)}45%{opacity:1;transform:translate(-50%,-90%) scale(1)}to{opacity:0;transform:translate(-50%,-140%) scale(.95)}}@keyframes cfx-recoil{0%{transform:translate(0)}40%{transform:translateY(4px)}to{transform:translate(0)}}.cfx-recoil{animation:cfx-recoil .24s ease-out}.cfx-banner{position:fixed;transform:translate(-50%,-50%);padding:4px 10px;background:#08180ed9;border:1px solid currentColor;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.18em;text-shadow:0 0 4px currentColor;pointer-events:none;animation:cfx-banner 1.1s cubic-bezier(.2,.7,.3,1) forwards}.cfx-banner-terminal{color:var(--terminal);border-color:var(--terminal)}.cfx-banner-coin{color:var(--coin);border-color:var(--coin);text-shadow:0 0 4px rgba(245,180,0,.6)}@keyframes cfx-banner{0%{opacity:0;transform:translate(-50%,-40%) scale(.85)}18%{opacity:1;transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-60%) scale(.95)}}.cfx-spear{position:fixed;top:0;left:0;transform-origin:0 50%;pointer-events:none;will-change:transform,opacity}.cfx-spear-shaft{position:absolute;top:-3px;left:0;width:0;height:6px;background:linear-gradient(90deg,#6a3415,#8b5a2a 35%,#b58249 80%,#d9b078);box-shadow:0 0 0 1px #0009,0 1px #0006}.cfx-spear-tip{position:absolute;top:-7px;left:0;width:22px;height:14px;background:linear-gradient(180deg,#ffe5a8 0%,var(--ember) 60%,#8b3a14 100%);clip-path:polygon(0% 0%,70% 0%,100% 50%,70% 100%,0% 100%,18% 50%);box-shadow:0 0 12px #ff70388c}.cfx-spear.is-pristine .cfx-spear-shaft{background:linear-gradient(90deg,#d9b078,#fff7d6,#d9b078);box-shadow:0 0 0 1px #00000080,0 0 14px #ffefb4cc}.cfx-spear.is-pristine .cfx-spear-tip{background:linear-gradient(180deg,#ffffff 0%,#fff2c0 50%,var(--coin) 100%);box-shadow:0 0 18px #ffefb4e6;filter:brightness(1.15) drop-shadow(0 0 10px rgba(255,240,180,.6))}.cfx-spear-gleam{position:absolute;top:-3px;left:0;width:26px;height:6px;background:linear-gradient(90deg,transparent 0%,#fff 50%,transparent 100%);mix-blend-mode:screen;opacity:0}.cfx-spear.is-pristine .cfx-spear-gleam{animation:cfx-spear-gleam .58s ease-out 60ms}@keyframes cfx-spear-gleam{0%{transform:translate(-40px);opacity:0}30%{opacity:1}to{transform:translate(var(--gleam-dist, 200px));opacity:0}}@keyframes cfx-spear-shaft-grow{0%{width:0}30%{width:var(--len, 200px)}55%{width:var(--len, 200px)}72%{width:calc(var(--len, 200px) + 24px)}to{width:0}}@keyframes cfx-spear-whole{0%{opacity:0;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) scaleX(.5)}18%{opacity:1;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) scaleX(1)}55%{transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) translate(0)}72%{transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) translate(18px)}88%{transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) translate(-6px)}to{opacity:0;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) translate(-40px) scaleX(.6)}}.cfx-spear{animation:cfx-spear-whole .92s cubic-bezier(.4,.05,.3,1) forwards}.cfx-spear .cfx-spear-shaft{animation:cfx-spear-shaft-grow .92s cubic-bezier(.4,.05,.3,1) forwards}.cfx-spear-shard{position:fixed;top:0;left:0;width:16px;height:5px;background:linear-gradient(90deg,#6a3415,#b58249 80%,#d9b078);transform-origin:50% 50%;animation:cfx-spear-shard-fly .76s cubic-bezier(.2,.7,.3,1) forwards;pointer-events:none}.cfx-spear-shard.is-tip{width:12px;height:8px;background:linear-gradient(180deg,var(--ember),#8b3a14);clip-path:polygon(0% 0%,70% 0%,100% 50%,70% 100%,0% 100%)}@keyframes cfx-spear-shard-fly{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(calc(var(--dx) * 1px),calc((var(--dy) + 90) * 1px)) rotate(calc(var(--rot, 360) * 1deg));opacity:0}}.cfx-spear.is-acid-afterglow .cfx-spear-gleam{animation:cfx-spear-gleam-acid 1.28s ease-out 60ms;background:linear-gradient(90deg,transparent 0%,var(--cfx-spear-secondary, #d6ff3a) 50%,transparent 100%);filter:drop-shadow(0 0 8px var(--cfx-spear-primary, #d6ff3a))}@keyframes cfx-spear-gleam-acid{0%{transform:translate(-40px);opacity:0}25%{opacity:1}55%{transform:translate(var(--gleam-dist, 200px));opacity:.85}to{transform:translate(var(--gleam-dist, 200px));opacity:0}}.cfx-spear-shard.is-blood{background:linear-gradient(90deg,var(--cfx-spear-secondary, #7a0c0c) 0%,var(--cfx-spear-primary, #ff5252) 80%,#d9b078 100%);box-shadow:0 0 4px var(--cfx-spear-primary, rgba(255,82,82,.7))}.cfx-spear-void-ring{position:fixed;top:0;left:0;width:8px;height:8px;transform:translate(-50%,-50%);border:2px solid var(--cfx-spear-primary, #d040ff);border-radius:50%;mix-blend-mode:difference;pointer-events:none;animation:cfx-spear-void-ring .36s ease-out forwards}@keyframes cfx-spear-void-ring{0%{opacity:0;width:8px;height:8px}35%{opacity:1}to{opacity:0;width:60px;height:60px}}.fp.is-cfx-flipping{transform-style:preserve-3d;transform-origin:center center;animation:cfx-plaque-flip .92s cubic-bezier(.4,.05,.3,1)}@keyframes cfx-plaque-flip{0%{transform:rotateY(0)}50%{transform:rotateY(180deg)}to{transform:rotateY(360deg)}}.cfx-plaque-back{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--jester);background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.18) 0 2px,transparent 2px 6px);border:1.5px solid var(--jester);box-sizing:border-box;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:28px;letter-spacing:.2em;color:var(--ink);backface-visibility:hidden;transform:rotateY(180deg);pointer-events:none;z-index:10}.cfx-dirt{position:fixed;top:0;left:0;width:7px;height:7px;border-radius:60% 40% 50% 50%/50% 50% 40% 60%;background:var(--clump, #8b5a2a);transform-origin:50% 50%;animation:cfx-dirt-fly .7s cubic-bezier(.18,.85,.3,1) forwards;box-shadow:0 0 0 1px #0006;pointer-events:none}.cfx-dirt.is-pebble{background:#c9b87a;width:5px;height:5px}.cfx-dirt.is-dust{background:#d9b078;width:4px;height:4px;opacity:.7}@keyframes cfx-dirt-fly{0%{transform:translate(0) rotate(0);opacity:1}30%{transform:translate(calc(var(--dx)*.6px),calc(var(--dy)*.6px - 30px)) rotate(120deg);opacity:1}70%{transform:translate(calc(var(--dx)*1px),calc(var(--dy)*1px)) rotate(240deg);opacity:.85}to{transform:translate(calc(var(--dx)*1.1px),calc(var(--dy)*1.1px + 40px)) rotate(320deg);opacity:0}}.cfx-card-jackie{position:fixed;top:0;left:0;width:56px;height:78px;transform:translate(-50%,-50%);transform-style:preserve-3d;will-change:transform,opacity;pointer-events:none}.cfx-card-jackie-face{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#fff,#f5efe3);border:1.5px solid #2a1a3a;box-shadow:4px 4px #d040ff73,inset 0 0 0 2px #fff;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:800;font-size:36px;line-height:1;color:var(--jester);backface-visibility:hidden}.cfx-card-jackie-face:before,.cfx-card-jackie-face:after{content:var(--suit, "♠");position:absolute;font-family:var(--mono);font-size:11px;font-weight:700;color:var(--jester)}.cfx-card-jackie-face:before{left:4px;top:3px}.cfx-card-jackie-face:after{right:4px;bottom:3px;transform:rotate(180deg)}.cfx-card-jackie-back{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--jester);background-image:repeating-linear-gradient(45deg,rgba(0,0,0,.18) 0 2px,transparent 2px 6px);border:1.5px solid #2a1a3a;backface-visibility:hidden;transform:rotateY(180deg)}.cfx-card-jackie-gleam{position:fixed;width:60px;height:82px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent 0%,#fff 50%,transparent 100%);mix-blend-mode:screen;opacity:0;pointer-events:none}.cfx-jackie-ring{position:fixed;width:30px;height:30px;transform:translate(-50%,-50%);border:2px solid var(--jester);border-radius:50%;box-shadow:0 0 14px #d040ff99;pointer-events:none}.cfx-soul{position:fixed;top:0;left:0;width:14px;height:16px;transform:translate(-50%,-50%);pointer-events:none}.cfx-soul:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 50% 35%,#d6f4ff 0%,var(--cobalt) 45%,rgba(111,155,255,0) 75%);filter:drop-shadow(0 0 8px var(--cobalt))}.cfx-soul:after{content:"";position:absolute;left:50%;top:100%;width:6px;height:16px;background:radial-gradient(ellipse at 50% 0%,var(--cobalt) 0%,transparent 70%);transform:translate(-50%);opacity:.6}.cfx-soul.is-ambient{animation:cfx-soul-drift 1.1s ease-out forwards}@keyframes cfx-soul-drift{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}20%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--sway,0px)),calc(-50% - 90px)) scale(.9)}}.fp.is-cfx-souling:after{content:"";position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;pointer-events:none;border:1px solid var(--cobalt);box-shadow:0 0 20px #6f9bff99,inset 0 0 30px #6f9bff40;animation:cfx-souling-pulse 1.1s ease-out forwards;z-index:5}@keyframes cfx-souling-pulse{0%{opacity:0}25%{opacity:1}85%{opacity:1}to{opacity:0}}.cfx-muzzle{position:fixed;top:0;left:0;width:70px;height:70px;transform:translate(-50%,-50%) rotate(var(--angle, 0deg));pointer-events:none;animation:cfx-muzzle-flare .22s ease-out forwards}.cfx-muzzle:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 35% 8% at 50% 50%,#fff 0%,var(--coin) 30%,transparent 80%),radial-gradient(ellipse 8% 35% at 50% 50%,#fff 0%,var(--coin) 30%,transparent 80%),radial-gradient(circle at 50% 50%,#ffe5a8 0%,var(--ember) 35%,transparent 65%);mix-blend-mode:screen}.cfx-muzzle:after{content:"";position:absolute;top:20%;right:20%;bottom:20%;left:20%;background:radial-gradient(circle,rgba(180,170,160,.6) 0%,transparent 70%);filter:blur(2px)}@keyframes cfx-muzzle-flare{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle, 0deg)) scale(.4)}25%{opacity:1;transform:translate(-50%,-50%) rotate(var(--angle, 0deg)) scale(1.2)}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--angle, 0deg)) scale(.95)}}.cfx-tracer{position:fixed;top:0;left:0;height:2px;transform-origin:0 50%;background:linear-gradient(90deg,var(--coin) 0%,#fff 50%,transparent 100%);box-shadow:0 0 8px var(--coin);animation:cfx-tracer-sweep .22s cubic-bezier(.3,.2,.2,1) forwards;pointer-events:none}@keyframes cfx-tracer-sweep{0%{opacity:0;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) scaleX(0)}18%{opacity:1;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) scaleX(1)}to{opacity:0;transform:translate(var(--sx),var(--sy)) rotate(var(--angle)) scaleX(1)}}.cfx-blood-stain{position:fixed;top:0;left:0;width:9px;height:9px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,var(--cfx-bleed-primary, var(--blood)) 0%,#6a0000 55%,transparent 80%);box-shadow:0 0 6px var(--cfx-bleed-primary, rgba(255,56,56,.5));pointer-events:none;opacity:0}.cfx-blood-drop{position:fixed;top:0;left:0;width:7px;height:9px;transform:translate(-50%,-50%);background:radial-gradient(ellipse at 50% 30%,var(--cfx-bleed-secondary, #ff7070) 0%,var(--cfx-bleed-primary, var(--blood)) 60%,#8a0000 100%);border-radius:50%/70% 70% 30% 30%;box-shadow:0 0 4px var(--cfx-bleed-primary, rgba(255,56,56,.6));pointer-events:none;animation:cfx-blood-drip .7s cubic-bezier(.4,.05,.3,1) forwards}@keyframes cfx-blood-drip{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}14%{opacity:1;transform:translate(-50%,-50%) scale(1)}55%{opacity:1;transform:translate(-50%,calc(-50% + var(--fall,28px) * .55)) scale(1) scaleY(1.15)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--fall,28px))) scale(.95) scaleY(1.25)}}.cfx-brush{position:fixed;pointer-events:none;overflow:visible}.cfx-brush path{stroke:#d9c89c;fill:none;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 5px rgba(217,200,156,.55))}.cfx-brush path.is-shadow{stroke:#46341c80;filter:none}.cfx-brush-blot{position:fixed;top:0;left:0;width:10px;height:10px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#e8d9b0 0%,transparent 70%);filter:blur(1px);pointer-events:none;opacity:0}.cfx-glitch-aberration{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;mix-blend-mode:screen;animation:cfx-glitch-aberrate .46s steps(8) forwards;background:radial-gradient(ellipse at 50% 50%,var(--cfx-glitch-primary, rgba(255,0,80,.06)),transparent 65%),radial-gradient(ellipse at 50% 50%,var(--cfx-glitch-secondary, rgba(80,200,255,.05)),transparent 65%)}.cfx-glitch-aberration:before,.cfx-glitch-aberration:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:inherit;mix-blend-mode:screen}.cfx-glitch-aberration:before{transform:translate(-4px);filter:hue-rotate(-30deg) brightness(1.1) saturate(2);opacity:.6}.cfx-glitch-aberration:after{transform:translate(4px);filter:hue-rotate(180deg) brightness(1.1) saturate(2);opacity:.6}@keyframes cfx-glitch-aberrate{0%{opacity:0}10%{opacity:1}90%{opacity:1}to{opacity:0}}.cfx-scanline{position:fixed;left:0;right:0;height:22px;pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--cfx-glitch-primary, rgba(255,0,80,.18)) 30%,var(--cfx-glitch-secondary, rgba(80,200,255,.18)) 70%,transparent 100%);border-top:1px solid var(--cfx-glitch-primary, rgba(255,0,80,.6));border-bottom:1px solid var(--cfx-glitch-secondary, rgba(80,200,255,.6));mix-blend-mode:screen;animation:cfx-scanline-sweep .54s cubic-bezier(.3,.2,.3,1) forwards}@keyframes cfx-scanline-sweep{0%{top:-30px;opacity:0}10%{opacity:1}90%{opacity:1}to{top:100%;opacity:0}}body.is-cfx-glitching{animation:cfx-scene-glitch .46s steps(6)}@keyframes cfx-scene-glitch{0%,to{filter:none}30%{filter:contrast(1.15) saturate(1.4) hue-rotate(-6deg)}60%{filter:contrast(.95) saturate(.7) hue-rotate(6deg)}}.fp.is-cfx-brewing{animation:cfx-alchemist-wobble 1.2s ease-in-out;transform-origin:50% 100%}@keyframes cfx-alchemist-wobble{0%,to{transform:rotate(0)}12%{transform:rotate(-2.5deg) translate(-1px)}28%{transform:rotate(2.5deg) translate(1px)}45%{transform:rotate(-1.8deg) translate(-1px)}62%{transform:rotate(1.8deg) translate(1px)}80%{transform:rotate(-.8deg)}}.cfx-bubble{position:fixed;top:0;left:0;width:10px;height:10px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ecffd6 0%,var(--acid) 60%,transparent 100%);border:1px solid rgba(214,255,58,.5);box-shadow:0 0 6px #d6ff3a99;mix-blend-mode:screen;pointer-events:none;animation:cfx-bubble-rise 1.1s cubic-bezier(.2,.5,.3,1) forwards}.cfx-bubble.is-big{width:14px;height:14px}.cfx-bubble.is-small{width:7px;height:7px}@keyframes cfx-bubble-rise{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}20%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--sway,0px)),calc(-50% - 80px)) scale(1.2)}}.cfx-matrix-col{position:fixed;display:flex;flex-direction:column;align-items:center;font-family:var(--mono);font-weight:600;font-size:15px;line-height:1.08;color:var(--cfx-matrix-primary, var(--terminal));text-shadow:0 0 6px var(--cfx-matrix-primary, rgba(74,250,138,.55));pointer-events:none;mix-blend-mode:screen;will-change:transform;animation:cfx-matrix-fall linear forwards;letter-spacing:.04em}.cfx-matrix-col span{display:block;line-height:1.08}.cfx-matrix-col span.is-head{color:var(--cfx-matrix-secondary, #f6fff0);text-shadow:0 0 8px var(--cfx-matrix-secondary, rgba(255,255,255,.95)),0 0 14px var(--cfx-matrix-primary, var(--terminal))}.cfx-matrix-col span.is-near{color:var(--cfx-matrix-primary, #b8ffcc);opacity:.95}.cfx-matrix-col span.is-mid{opacity:.75}.cfx-matrix-col span.is-far{opacity:.45}.cfx-matrix-col span.is-tail{opacity:.18}@keyframes cfx-matrix-fall{0%{transform:translateY(var(--start, -300px))}to{transform:translateY(var(--end, 900px))}}.cfx-note{position:fixed;top:0;left:0;transform:translate(-50%,-50%);font-family:var(--display);font-weight:700;font-size:22px;line-height:1;color:var(--coin);text-shadow:0 0 8px rgba(245,180,0,.7);pointer-events:none;animation:cfx-note-float 1.1s cubic-bezier(.2,.7,.3,1) forwards}.cfx-note.is-cobalt{color:var(--cobalt);text-shadow:0 0 8px rgba(111,155,255,.7)}.cfx-note.is-jester{color:var(--jester);text-shadow:0 0 8px rgba(208,64,255,.7)}@keyframes cfx-note-float{0%{opacity:0;transform:translate(-50%,-50%) scale(.6) rotate(0)}18%{opacity:1;transform:translate(-50%,-65%) scale(1.1) rotate(calc(var(--spin,0deg)))}to{opacity:0;transform:translate(calc(-50% + var(--sway,0px)),calc(-50% - 90px)) scale(1) rotate(calc(var(--spin,0deg) * 2))}}.cfx-intro-ring{position:fixed;top:0;left:0;width:8px;height:8px;transform:translate(-50%,-50%);border:2px solid currentColor;border-radius:50%;box-shadow:0 0 14px currentColor;pointer-events:none;opacity:0;animation:cfx-intro-ring .52s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-intro-ring{0%{opacity:0;width:8px;height:8px}18%{opacity:1}to{opacity:0;width:140px;height:140px}}.fp.is-cfx-introing{animation:cfx-intro-pulse .42s ease-out;transform-origin:50% 100%}@keyframes cfx-intro-pulse{0%{transform:scale(1)}35%{transform:scale(1.04)}to{transform:scale(1)}}.cfx-ring{position:fixed;width:8px;height:8px;border:2px solid currentColor;border-radius:50%;transform:translate(-50%,-50%);pointer-events:none;animation:cfx-ring-expand .54s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-ring-expand{0%{opacity:1;transform:translate(-50%,-50%) scale(.4)}80%{opacity:.7}to{opacity:0;transform:translate(-50%,-50%) scale(8)}}.cfx-vial{position:fixed;width:18px;height:26px;transform:translate(-50%,-50%);pointer-events:none;will-change:transform;filter:drop-shadow(0 0 6px rgba(208,64,255,.45))}.cfx-vial-body{position:absolute;left:50%;top:6px;width:14px;height:18px;transform:translate(-50%);background:linear-gradient(180deg,#d040ff00,#d040ffd9 30%,#d040ff 70%,#6a1a8a);border:1px solid var(--bone);box-shadow:inset 0 -3px #00000059,inset 0 1px #ffffff40}.cfx-vial-cork{position:absolute;left:50%;top:0;width:8px;height:6px;transform:translate(-50%);background:#6a4a2a;border:1px solid var(--ink)}.cfx-vial-cork:after{content:"";position:absolute;left:50%;top:-3px;width:12px;height:3px;transform:translate(-50%);background:var(--bone-3);border:1px solid var(--ink)}.cfx-glass-shard{position:fixed;width:6px;height:8px;transform:translate(-50%,-50%);background:linear-gradient(135deg,#ffffffe6,#d040ff66);border:1px solid rgba(255,255,255,.7);pointer-events:none;animation:cfx-glass-shard-fly .64s cubic-bezier(.18,.85,.3,1) forwards;clip-path:polygon(20% 0%,100% 30%,75% 100%,0% 70%)}@keyframes cfx-glass-shard-fly{0%{opacity:1;transform:translate(-50%,-50%) rotate(0)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,0px))) rotate(calc(var(--rot,360deg)))}}.cfx-poison-droplet{position:fixed;width:8px;height:10px;transform:translate(-50%,-50%);background:radial-gradient(ellipse at 50% 35%,var(--cfx-poison-secondary, #f0a5ff) 0%,var(--cfx-poison-primary, var(--jester)) 50%,#6a1a8a 100%);border-radius:50%/70% 70% 30% 30%;box-shadow:0 0 6px var(--cfx-poison-primary, rgba(208,64,255,.7));pointer-events:none;animation:cfx-poison-drop-fly .76s cubic-bezier(.3,.4,.3,1) forwards}@keyframes cfx-poison-drop-fly{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}15%{opacity:1;transform:translate(-50%,-50%) scale(1)}55%{opacity:1;transform:translate(calc(-50% + var(--dx,0px) * .7),calc(-50% + var(--dy,0px) * .7 - 6px)) scale(1) scaleY(1.15)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,0px) + 38px)) scale(.95) scaleY(1.25)}}.cfx-poison-puddle{position:fixed;height:18px;transform:translate(-50%,-50%);background:radial-gradient(ellipse at 50% 60%,var(--cfx-poison-secondary, rgba(240,165,255,.5)) 0%,var(--cfx-poison-primary, rgba(208,64,255,.85)) 35%,rgba(106,26,138,.9) 75%,transparent 100%);filter:drop-shadow(0 0 8px var(--cfx-poison-primary, rgba(208,64,255,.6)));mix-blend-mode:screen;pointer-events:none;animation:cfx-poison-puddle-life 1.3s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-poison-puddle-life{0%{opacity:0;transform:translate(-50%,-50%) scaleX(.1) scaleY(.6)}18%{opacity:1;transform:translate(-50%,-50%) scaleX(1.1) scaleY(1.05)}70%{opacity:.9;transform:translate(-50%,-50%) scaleX(1) scaleY(1)}to{opacity:0;transform:translate(-50%,-50%) scaleX(.95) scaleY(.9)}}.cfx-poison-bubble{position:fixed;width:5px;height:5px;transform:translate(-50%,-50%);border:1px solid var(--cfx-poison-secondary, #f0a5ff);border-radius:50%;pointer-events:none;animation:cfx-poison-bubble-pop .52s ease-out forwards;mix-blend-mode:screen}@keyframes cfx-poison-bubble-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}50%{opacity:1;transform:translate(-50%,-50%) scale(1.4)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}.cfx-poison-vapor{position:fixed;width:14px;height:18px;transform:translate(-50%,-50%);background:radial-gradient(ellipse at 50% 50%,var(--cfx-poison-primary, rgba(208,64,255,.55)) 0%,transparent 75%);filter:blur(1px);pointer-events:none;mix-blend-mode:screen;animation:cfx-poison-vapor-rise 1.4s ease-out forwards}@keyframes cfx-poison-vapor-rise{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}25%{opacity:1;transform:translate(-50%,-65%) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--sway,0px)),-150%) scale(1.4)}}.cfx-ember-dart{position:fixed;width:30px;height:6px;transform:translate(-50%,-50%);background:linear-gradient(90deg,transparent 0%,var(--cfx-burn-secondary, #ffe5a8) 25%,var(--cfx-burn-primary, var(--ember)) 70%,#8b3a14 100%);filter:drop-shadow(0 0 8px var(--cfx-burn-primary, var(--ember)));pointer-events:none;will-change:transform}.cfx-ember-dart:after{content:"";position:absolute;right:-3px;top:50%;width:10px;height:10px;transform:translateY(-50%);background:radial-gradient(circle,#fff 0%,var(--cfx-burn-secondary, #ffe5a8) 40%,transparent 80%);filter:drop-shadow(0 0 6px var(--cfx-burn-secondary, #ffe5a8))}.cfx-spark{position:fixed;width:4px;height:4px;transform:translate(-50%,-50%);background:var(--cfx-burn-secondary, var(--coin));box-shadow:0 0 6px var(--cfx-burn-primary, var(--ember));pointer-events:none;animation:cfx-spark-fly .46s ease-out forwards}@keyframes cfx-spark-fly{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,0px) + 20px)) scale(.4)}}.cfx-flame{position:fixed;width:60px;height:60px;transform:translate(-50%,-50%);pointer-events:none;animation:cfx-flame-burst .52s cubic-bezier(.2,.7,.3,1) forwards}.cfx-flame:before,.cfx-flame:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;clip-path:polygon(50% 0%,65% 18%,85% 14%,78% 38%,100% 50%,78% 62%,85% 86%,65% 82%,50% 100%,35% 82%,15% 86%,22% 62%,0% 50%,22% 38%,15% 14%,35% 18%)}.cfx-flame:before{background:radial-gradient(circle at 50% 50%,#fff 0%,var(--cfx-burn-secondary, var(--coin)) 25%,var(--cfx-burn-primary, var(--ember)) 60%,#8b3a14 100%);filter:drop-shadow(0 0 12px var(--cfx-burn-primary, var(--ember)))}.cfx-flame:after{transform:scale(.6);background:radial-gradient(circle at 50% 50%,#fff 0%,var(--cfx-burn-secondary, #ffe5a8) 50%,var(--cfx-burn-primary, var(--coin)) 100%);mix-blend-mode:screen}@keyframes cfx-flame-burst{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(0)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.4) rotate(-12deg)}70%{opacity:.9;transform:translate(-50%,-50%) scale(1.1) rotate(8deg)}to{opacity:0;transform:translate(-50%,-50%) scale(1.4) rotate(0)}}.cfx-burn-edge{position:fixed;pointer-events:none;mix-blend-mode:screen;animation:cfx-burn-edge-life 1.5s ease-out forwards}.cfx-burn-edge.is-h{background:linear-gradient(90deg,transparent 0%,var(--cfx-burn-secondary, var(--coin)) 20%,var(--cfx-burn-primary, var(--ember)) 50%,var(--cfx-burn-secondary, var(--coin)) 80%,transparent 100%);filter:drop-shadow(0 0 8px var(--cfx-burn-primary, var(--ember)))}.cfx-burn-edge.is-v{background:linear-gradient(180deg,transparent 0%,var(--cfx-burn-secondary, var(--coin)) 20%,var(--cfx-burn-primary, var(--ember)) 50%,var(--cfx-burn-secondary, var(--coin)) 80%,transparent 100%);filter:drop-shadow(0 0 8px var(--cfx-burn-primary, var(--ember)))}@keyframes cfx-burn-edge-life{0%{opacity:0}20%{opacity:1}80%{opacity:.9}to{opacity:0}}.cfx-ember-pip{position:fixed;width:4px;height:4px;transform:translate(-50%,-50%);background:var(--cfx-burn-secondary, var(--coin));box-shadow:0 0 6px var(--cfx-burn-primary, var(--ember));pointer-events:none;animation:cfx-ember-pip-rise 1.1s ease-out forwards;mix-blend-mode:screen}@keyframes cfx-ember-pip-rise{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}to{opacity:0;transform:translate(calc(-50% + var(--sway,0px)),calc(-50% - 50px)) scale(.6)}}.cfx-heat{position:fixed;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,224,140,.06) 0 2px,transparent 2px 4px);mix-blend-mode:screen;animation:cfx-heat-shimmer 1.3s ease-out forwards}@keyframes cfx-heat-shimmer{0%{opacity:0;transform:translateY(6px)}25%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-18px)}}.cfx-slash{position:fixed;pointer-events:none;overflow:visible}.cfx-slash path{stroke:var(--cfx-bleed-primary, var(--blood));fill:none;stroke-width:4;stroke-linecap:round;filter:drop-shadow(0 0 8px var(--cfx-bleed-primary, rgba(255,56,56,.9)))}.cfx-slash path.is-hot{stroke:#fff;stroke-width:2;filter:drop-shadow(0 0 12px #fff)}.cfx-str-sigil{position:fixed;width:80px;height:80px;transform:translate(-50%,-50%) rotate(0);pointer-events:none;animation:cfx-str-sigil-rise .76s cubic-bezier(.2,.7,.3,1) forwards}.cfx-str-sigil:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:conic-gradient(from 0deg,var(--cfx-strength-primary, var(--blood)) 0deg 8deg,transparent 8deg 37deg,var(--cfx-strength-primary, var(--blood)) 37deg 45deg,transparent 45deg 82deg,var(--cfx-strength-primary, var(--blood)) 82deg 90deg,transparent 90deg 127deg,var(--cfx-strength-primary, var(--blood)) 127deg 135deg,transparent 135deg 172deg,var(--cfx-strength-primary, var(--blood)) 172deg 180deg,transparent 180deg 217deg,var(--cfx-strength-primary, var(--blood)) 217deg 225deg,transparent 225deg 262deg,var(--cfx-strength-primary, var(--blood)) 262deg 270deg,transparent 270deg 307deg,var(--cfx-strength-primary, var(--blood)) 307deg 315deg,transparent 315deg 352deg,var(--cfx-strength-primary, var(--blood)) 352deg 360deg);mask:radial-gradient(circle,transparent 18%,#000 22%,#000 48%,transparent 52%);-webkit-mask:radial-gradient(circle,transparent 18%,#000 22%,#000 48%,transparent 52%);filter:drop-shadow(0 0 10px var(--cfx-strength-primary, var(--blood)))}.cfx-str-sigil:after{content:"";position:absolute;top:22%;right:22%;bottom:22%;left:22%;border:2px solid var(--cfx-strength-primary, var(--blood));border-radius:50%;box-shadow:0 0 12px var(--cfx-strength-primary, var(--blood)),inset 0 0 8px var(--cfx-strength-primary, rgba(255,56,56,.6))}.cfx-str-sigil.is-bone-mark:before{background:none;border:none;filter:none;mask:none;-webkit-mask:none;clip-path:polygon(44% 12%,56% 12%,56% 28%,72% 28%,72% 38%,56% 38%,56% 88%,44% 88%,44% 38%,28% 38%,28% 28%,44% 28%);background-color:var(--cfx-strength-primary, #ebe8de)}.cfx-str-sigil.is-bone-mark:after{box-shadow:none;border-color:var(--cfx-strength-primary, #ebe8de)}@keyframes cfx-str-sigil-rise{0%{opacity:0;transform:translate(-50%) scale(.4) rotate(0)}28%{opacity:1;transform:translate(-50%,-50%) scale(1.1) rotate(60deg)}70%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(120deg)}to{opacity:0;transform:translate(-50%,-100%) scale(1.2) rotate(180deg)}}.cfx-str-arrow{position:fixed;width:8px;height:28px;transform:translate(-50%,-50%);pointer-events:none;background:linear-gradient(180deg,transparent 0%,var(--cfx-strength-primary, var(--blood)) 50%,var(--cfx-strength-secondary, #fff) 100%);clip-path:polygon(50% 0%,100% 35%,70% 35%,70% 100%,30% 100%,30% 35%,0% 35%);filter:drop-shadow(0 0 8px var(--cfx-strength-primary, var(--blood)));animation:cfx-str-arrow-flare .62s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-str-arrow-flare{0%{opacity:0;transform:translate(-50%,calc(-50% + 30px)) scale(.6)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.15)}to{opacity:0;transform:translate(-50%,calc(-50% - 40px)) scale(.9)}}.fp.is-cfx-strengthening{animation:cfx-str-plaque-pulse .7s cubic-bezier(.2,.7,.3,1)}@keyframes cfx-str-plaque-pulse{0%{box-shadow:none}30%{box-shadow:0 0 0 1px var(--blood),0 0 24px #ff383899}70%{box-shadow:0 0 0 1px var(--blood),0 0 18px #ff383873}to{box-shadow:none}}.cfx-barrier-plate{position:fixed;background:repeating-linear-gradient(-45deg,var(--cfx-barrier-primary, rgba(245,180,0,.85)) 0 2px,var(--cfx-barrier-secondary, rgba(245,180,0,.2)) 2px 6px);border:1.5px solid var(--cfx-barrier-primary, var(--coin));box-shadow:0 0 12px var(--cfx-barrier-primary, rgba(245,180,0,.55));pointer-events:none;will-change:transform,opacity;animation:cfx-barrier-plate-fly .62s cubic-bezier(.2,.7,.3,1) forwards}.cfx-barrier-plate.is-crystal{clip-path:polygon(25% 6%,75% 6%,100% 50%,75% 94%,25% 94%,0% 50%);background:radial-gradient(circle at 50% 30%,var(--cfx-barrier-secondary, rgba(157,220,255,.8)) 0%,var(--cfx-barrier-primary, rgba(214,255,58,.6)) 60%,rgba(0,0,0,0) 100%)}@keyframes cfx-barrier-plate-fly{0%{opacity:0;transform:var(--from) scale(.6)}30%{opacity:1;transform:var(--from) scale(1)}70%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(0) scale(1.05)}}.cfx-barrier-sweep{position:fixed;background:linear-gradient(110deg,transparent 0%,transparent 40%,rgba(255,255,255,.85) 50%,rgba(255,255,255,.85) 52%,transparent 60%,transparent 100%);mix-blend-mode:screen;filter:blur(.5px);pointer-events:none;animation:cfx-barrier-sweep .52s ease-out forwards}@keyframes cfx-barrier-sweep{0%{opacity:0;transform:translate(-60%)}30%{opacity:1}to{opacity:0;transform:translate(60%)}}.cfx-barrier-bubble{position:fixed;pointer-events:none;animation:cfx-barrier-bubble-birth .48s cubic-bezier(.25,.85,.35,1) forwards;--bubble-radius: 10px}.cfx-barrier-bubble:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:1px solid var(--coin);background:radial-gradient(ellipse at 35% 25%,rgba(255,224,140,.22) 0%,rgba(245,180,0,.12) 45%,rgba(245,180,0,.04) 75%,transparent 100%);box-shadow:0 0 14px #f5b40059,inset 0 0 18px #ffe08c29,inset 0 0 0 1px #ffe08c4d;border-radius:var(--bubble-radius)}.cfx-barrier-bubble:after{content:"";position:absolute;top:3px;right:3px;bottom:3px;left:3px;border-radius:calc(var(--bubble-radius) - 2px);background:repeating-linear-gradient(-45deg,rgba(245,180,0,.14) 0 1px,transparent 1px 9px),repeating-linear-gradient(45deg,rgba(245,180,0,.14) 0 1px,transparent 1px 9px);mix-blend-mode:screen;animation:cfx-barrier-lattice 6s linear infinite}@keyframes cfx-barrier-bubble-birth{0%{opacity:0;transform:scale(.92)}60%{opacity:1;transform:scale(1.012)}to{opacity:1;transform:scale(1)}}@keyframes cfx-barrier-bubble-death{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.06)}}@keyframes cfx-barrier-lattice{0%{background-position:0 0,0 0}to{background-position:32px 0,-32px 0}}.cfx-barrier-spec{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:var(--bubble-radius);overflow:hidden;pointer-events:none}.cfx-barrier-spec:before{content:"";position:absolute;left:-40%;top:-40%;width:60%;height:30%;background:radial-gradient(ellipse at 50% 50%,rgba(255,255,255,.45) 0%,rgba(255,255,255,.15) 50%,transparent 100%);filter:blur(2px);transform:rotate(20deg);animation:cfx-barrier-spec 6s ease-in-out infinite;mix-blend-mode:screen}@keyframes cfx-barrier-spec{0%,to{left:-40%;top:-40%;opacity:0}20%{opacity:.7}55%{left:60%;top:50%;opacity:.3}80%{opacity:0}}.cfx-barrier-bubble.is-dying{animation:cfx-barrier-bubble-death .28s ease-out forwards}.cfx-rein-bracket{position:fixed;width:26px;height:26px;pointer-events:none;will-change:transform,opacity}.cfx-rein-bracket.tl{border-top:3px solid var(--cfx-reinforce-primary, #6fa8c9);border-left:3px solid var(--cfx-reinforce-primary, #6fa8c9)}.cfx-rein-bracket.tr{border-top:3px solid var(--cfx-reinforce-primary, #6fa8c9);border-right:3px solid var(--cfx-reinforce-primary, #6fa8c9)}.cfx-rein-bracket.bl{border-bottom:3px solid var(--cfx-reinforce-primary, #6fa8c9);border-left:3px solid var(--cfx-reinforce-primary, #6fa8c9)}.cfx-rein-bracket.br{border-bottom:3px solid var(--cfx-reinforce-primary, #6fa8c9);border-right:3px solid var(--cfx-reinforce-primary, #6fa8c9)}.cfx-rein-bracket:before{content:"";position:absolute;width:16px;height:16px;background:repeating-linear-gradient(-45deg,rgba(111,168,201,.45) 0 1px,transparent 1px 4px)}.cfx-rein-bracket.tl:before{top:2px;left:2px}.cfx-rein-bracket.tr:before{top:2px;right:2px}.cfx-rein-bracket.bl:before{bottom:2px;left:2px}.cfx-rein-bracket.br:before{bottom:2px;right:2px}.cfx-rein-bracket.is-flying{animation:cfx-rein-bracket-fly .54s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-rein-bracket-fly{0%{opacity:0;transform:translate(var(--fx,0px),var(--fy,0px)) scale(.6);filter:blur(3px)}40%{opacity:1;transform:translate(calc(var(--fx,0px) * .3),calc(var(--fy,0px) * .3)) scale(1);filter:blur(0)}80%{opacity:1;transform:translate(0) scale(1.08);filter:drop-shadow(0 0 8px #6fa8c9)}to{opacity:1;transform:translate(0) scale(1);filter:drop-shadow(0 0 6px #6fa8c9)}}.cfx-rein-pulse{position:fixed;border:1.5px solid var(--cfx-reinforce-primary, #6fa8c9);box-shadow:0 0 18px var(--cfx-reinforce-primary, rgba(111,168,201,.7)),inset 0 0 12px var(--cfx-reinforce-primary, rgba(111,168,201,.35));pointer-events:none;animation:cfx-rein-pulse .72s cubic-bezier(.2,.7,.3,1) forwards}@keyframes cfx-rein-pulse{0%{opacity:0;transform:scale(.85)}35%{opacity:1;transform:scale(1.06)}to{opacity:0;transform:scale(1.1)}}body.is-reduce-motion .cfx-spear,body.is-reduce-motion .cfx-spear .cfx-spear-shaft,body.is-reduce-motion .cfx-spear-shard,body.is-reduce-motion .cfx-dirt,body.is-reduce-motion .cfx-soul,body.is-reduce-motion .cfx-bubble,body.is-reduce-motion .cfx-matrix-col,body.is-reduce-motion .cfx-note,body.is-reduce-motion .cfx-blood-drop,body.is-reduce-motion .cfx-muzzle,body.is-reduce-motion .cfx-tracer,body.is-reduce-motion .cfx-banner,body.is-reduce-motion .cfx-glitch-aberration,body.is-reduce-motion .cfx-scanline,body.is-reduce-motion .cfx-hit-shake,body.is-reduce-motion .cfx-recoil,body.is-reduce-motion .cfx-number,body.is-reduce-motion .cfx-ring,body.is-reduce-motion .cfx-vial,body.is-reduce-motion .cfx-glass-shard,body.is-reduce-motion .cfx-poison-droplet,body.is-reduce-motion .cfx-poison-puddle,body.is-reduce-motion .cfx-poison-bubble,body.is-reduce-motion .cfx-poison-vapor,body.is-reduce-motion .cfx-ember-dart,body.is-reduce-motion .cfx-spark,body.is-reduce-motion .cfx-flame,body.is-reduce-motion .cfx-burn-edge,body.is-reduce-motion .cfx-ember-pip,body.is-reduce-motion .cfx-heat,body.is-reduce-motion .cfx-str-sigil,body.is-reduce-motion .cfx-str-arrow,body.is-reduce-motion .cfx-barrier-plate,body.is-reduce-motion .cfx-barrier-sweep,body.is-reduce-motion .cfx-barrier-bubble,body.is-reduce-motion .cfx-barrier-bubble:after,body.is-reduce-motion .cfx-barrier-spec:before,body.is-reduce-motion .cfx-rein-bracket,body.is-reduce-motion .cfx-rein-pulse,body.is-reduce-motion .fp.is-cfx-flipping,body.is-reduce-motion .fp.is-cfx-brewing,body.is-reduce-motion .fp.is-cfx-souling:after,body.is-reduce-motion .fp.is-cfx-strengthening,body.is-reduce-motion.is-cfx-glitching{animation-duration:.01ms!important}.inn-upgrade-panel{width:min(840px,94vw)}.inn-upgrade-grid{grid-template-columns:repeat(3,1fr)}.inn-upgrade-candidate{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 10px;border:1px solid var(--bone-3, #4a4036);border-radius:10px;background:#ffffff05;cursor:pointer;transition:border-color .12s ease,transform .12s ease,box-shadow .12s ease}.inn-upgrade-candidate:hover{transform:translateY(-2px);border-color:var(--acid);box-shadow:0 8px 24px #0006}.inn-upgrade-candidate.is-bittersweet{border-color:var(--blood)}.inn-upgrade-candidate.is-bittersweet:hover{border-color:var(--ember, #d9883b)}.inn-upgrade-candidate-head{display:flex;align-items:center;gap:8px;width:100%;font-size:11px;letter-spacing:.08em}.inn-upgrade-tier{font-weight:700;color:var(--acid)}.inn-upgrade-warn{margin-left:auto;font-weight:700;color:var(--blood)}.inn-upgrade-label{font-size:11px;line-height:1.35;text-align:center;color:var(--bone-2, #c8bca8);min-height:2.6em}@media(max-width:720px){.inn-upgrade-grid{grid-template-columns:1fr}}.inn-upgrade-candidate.is-committing{border-color:var(--acid);animation:inn-temper .5s ease-out forwards;cursor:default}.inn-upgrade-candidate.is-dimmed{opacity:.35;cursor:default}@keyframes inn-temper{0%{box-shadow:0 0 #d6ff4000;transform:translateY(0)}40%{box-shadow:0 0 28px 4px #d6ff408c;transform:translateY(-3px) scale(1.02)}to{box-shadow:0 0 12px 1px #d6ff4040;transform:translateY(-2px) scale(1)}}.mfx{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;--e1-x: 22%;--e1-y: 28%;--e2-x: 50%;--e2-y: 28%;--e3-x: 78%;--e3-y: 28%;--me-x: 50%;--me-y: 70%;animation:mfx-vanish .22s ease-out forwards;animation-delay:var(--total, 1.2s)}@keyframes mfx-vanish{to{opacity:0}}body.is-mfx-shaking .combat{animation:mfx-stage-shake .36s cubic-bezier(.36,.07,.19,.97) both}@keyframes mfx-stage-shake{10%,90%{transform:translate3d(-1px,0,0)}20%,80%{transform:translate3d(2px,-1px,0)}30%,50%,70%{transform:translate3d(-4px,1px,0)}40%,60%{transform:translate3d(4px,-1px,0)}}.mfx-tint{position:absolute;top:0;right:0;bottom:0;left:0;mix-blend-mode:screen;opacity:0}.mfx-flash{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--mfx-secondary, #fff);mix-blend-mode:screen;opacity:0}.mfx-label{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);font-family:var(--display);font-size:36px;letter-spacing:.16em;color:var(--mfx-primary, var(--bone));text-shadow:0 0 18px currentColor;opacity:0;white-space:nowrap;text-align:center}.mfx-label.is-sub{font-family:var(--mono);font-size:11px;letter-spacing:.32em;top:52%;color:var(--mfx-secondary, var(--bone-3))}.mfx-mag-time-stop .mfx-tint{background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--cobalt) 35%,transparent) 0%,transparent 70%);animation:ts-tint 1.2s ease-out forwards}@keyframes ts-tint{0%{opacity:0}18%{opacity:.85}60%{opacity:1}to{opacity:0}}.mfx-mag-time-stop .ts-clock{position:absolute;left:50%;top:50%;width:280px;height:280px;transform:translate(-50%,-50%) scale(0);opacity:0;animation:ts-clock 1.2s cubic-bezier(.3,.8,.3,1) forwards}@keyframes ts-clock{0%{transform:translate(-50%,-50%) scale(0);opacity:0}18%{transform:translate(-50%,-50%) scale(1);opacity:1}72%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1.1);opacity:0}}.mfx-mag-time-stop .ts-face{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;border:2.5px solid var(--cobalt);box-shadow:0 0 40px var(--cobalt),inset 0 0 40px color-mix(in srgb,var(--cobalt) 40%,transparent)}.mfx-mag-time-stop .ts-face:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:50%;background:conic-gradient(from 0deg,var(--cobalt) 0deg 2.5deg,transparent 2.5deg 30deg,var(--cobalt) 30deg 32.5deg,transparent 32.5deg 60deg,var(--cobalt) 60deg 62.5deg,transparent 62.5deg 90deg,var(--cobalt) 90deg 92.5deg,transparent 92.5deg 120deg,var(--cobalt) 120deg 122.5deg,transparent 122.5deg 150deg,var(--cobalt) 150deg 152.5deg,transparent 152.5deg 180deg,var(--cobalt) 180deg 182.5deg,transparent 182.5deg 210deg,var(--cobalt) 210deg 212.5deg,transparent 212.5deg 240deg,var(--cobalt) 240deg 242.5deg,transparent 242.5deg 270deg,var(--cobalt) 270deg 272.5deg,transparent 272.5deg 300deg,var(--cobalt) 300deg 302.5deg,transparent 302.5deg 330deg,var(--cobalt) 330deg 332.5deg,transparent 332.5deg 360deg);mask:radial-gradient(circle,transparent 80%,#000 84%,#000 100%);-webkit-mask:radial-gradient(circle,transparent 80%,#000 84%,#000 100%)}.mfx-mag-time-stop .ts-hand{position:absolute;left:50%;top:50%;width:3px;height:50%;background:var(--cobalt);transform-origin:50% 100%;transform:translate(-50%,-100%) rotate(0);box-shadow:0 0 12px var(--cobalt);animation:ts-hand 1.2s cubic-bezier(.4,0,.3,1) forwards}.mfx-mag-time-stop .ts-hand.m{height:44%;animation-name:ts-hand-min}.mfx-mag-time-stop .ts-hand.h{height:28%;opacity:.85;width:4px}@keyframes ts-hand{0%{transform:translate(-50%,-100%) rotate(0)}38%{transform:translate(-50%,-100%) rotate(720deg)}46%{transform:translate(-50%,-100%) rotate(800deg)}48%{transform:translate(-50%,-100%) rotate(810deg)}to{transform:translate(-50%,-100%) rotate(810deg)}}@keyframes ts-hand-min{0%{transform:translate(-50%,-100%) rotate(0)}38%{transform:translate(-50%,-100%) rotate(1440deg)}46%{transform:translate(-50%,-100%) rotate(1620deg)}to{transform:translate(-50%,-100%) rotate(1620deg)}}.mfx-mag-time-stop .ts-hub{position:absolute;left:50%;top:50%;width:16px;height:16px;background:var(--cobalt);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 16px var(--cobalt)}.mfx-mag-time-stop .mfx-flash{background:color-mix(in srgb,var(--cobalt) 60%,#fff);animation:ts-flash 1.2s ease-out forwards}@keyframes ts-flash{0%,44%{opacity:0}48%{opacity:1}60%{opacity:0}}.mfx-mag-time-stop .ts-shards{position:absolute;left:50%;top:50%;width:1px;height:1px}.mfx-mag-time-stop .ts-shards i{position:absolute;left:0;top:0;width:2px;height:0;background:linear-gradient(180deg,transparent,var(--cobalt) 50%,#fff);filter:drop-shadow(0 0 8px var(--cobalt));transform-origin:50% 0;animation:ts-shard 1.2s cubic-bezier(.2,.8,.2,1) forwards}.mfx-mag-time-stop .ts-shards i:nth-child(1){transform:rotate(0)}.mfx-mag-time-stop .ts-shards i:nth-child(2){transform:rotate(30deg)}.mfx-mag-time-stop .ts-shards i:nth-child(3){transform:rotate(60deg)}.mfx-mag-time-stop .ts-shards i:nth-child(4){transform:rotate(90deg)}.mfx-mag-time-stop .ts-shards i:nth-child(5){transform:rotate(120deg)}.mfx-mag-time-stop .ts-shards i:nth-child(6){transform:rotate(150deg)}.mfx-mag-time-stop .ts-shards i:nth-child(7){transform:rotate(180deg)}.mfx-mag-time-stop .ts-shards i:nth-child(8){transform:rotate(210deg)}.mfx-mag-time-stop .ts-shards i:nth-child(9){transform:rotate(240deg)}.mfx-mag-time-stop .ts-shards i:nth-child(10){transform:rotate(270deg)}.mfx-mag-time-stop .ts-shards i:nth-child(11){transform:rotate(300deg)}.mfx-mag-time-stop .ts-shards i:nth-child(12){transform:rotate(330deg)}@keyframes ts-shard{0%,38%{height:0;opacity:0}46%{height:60vh;opacity:1}88%{height:60vh;opacity:.7}to{height:60vh;opacity:0}}.mfx-mag-time-stop .mfx-label{color:var(--cobalt);animation:ts-label 1.2s ease-out forwards}.mfx-mag-time-stop .mfx-label.is-sub{color:color-mix(in srgb,var(--cobalt) 60%,var(--bone-2))}@keyframes ts-label{0%,38%{opacity:0;transform:translate(-50%,-40%) scale(.85)}52%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}68%{opacity:1;transform:translate(-50%,-50%) scale(1)}88%{opacity:1}to{opacity:0;transform:translate(-50%,-60%) scale(1)}}.mfx-gen-world-walker .ww-horizon{position:absolute;left:50%;top:50%;width:0;height:1px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--bone) 70%,transparent) 50%,transparent 100%);transform:translate(-50%,-50%);box-shadow:0 0 8px color-mix(in srgb,var(--bone) 50%,transparent),0 -1px 24px color-mix(in srgb,var(--blood) 20%,transparent);animation:ww-horizon 1.4s cubic-bezier(.4,0,.2,1) forwards}@keyframes ww-horizon{0%{width:0;opacity:0}20%{width:86%;opacity:1}72%{width:86%;opacity:1}to{width:86%;opacity:0}}.mfx-gen-world-walker .ww-sun{position:absolute;left:8%;top:50%;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--bone) 60%,transparent) 0%,color-mix(in srgb,var(--blood) 25%,transparent) 50%,transparent 75%);filter:blur(.5px);transform:translate(-50%,-50%);animation:ww-sun 1.4s cubic-bezier(.4,0,.6,1) forwards}@keyframes ww-sun{0%{transform:translate(-50%,50%);opacity:0}20%{opacity:1}50%{transform:translate(620%,-160%);opacity:1}80%{transform:translate(1240%,60%);opacity:.4}to{transform:translate(1240%,60%);opacity:0}}.mfx-gen-world-walker .ww-walker{position:absolute;left:0;top:50%;width:14px;height:38px;transform:translate(8vw,-50%);animation:ww-walk 1.4s linear forwards}.mfx-gen-world-walker .ww-walker svg{width:100%;height:100%;overflow:visible}.mfx-gen-world-walker .ww-walker svg path,.mfx-gen-world-walker .ww-walker svg rect,.mfx-gen-world-walker .ww-walker svg circle{fill:var(--bone);filter:drop-shadow(0 0 6px var(--bone))}@keyframes ww-walk{0%{transform:translate(8vw,-50%) scaleY(1);opacity:0}10%{opacity:1}25%{transform:translate(28vw,-50%) scaleY(.92)}50%{transform:translate(50vw,-50%) scaleY(1)}75%{transform:translate(72vw,-50%) scaleY(.92)}90%{transform:translate(86vw,-50%) scaleY(1);opacity:1}to{transform:translate(92vw,-50%) scaleY(1);opacity:0}}.mfx-gen-world-walker .ww-pickups{position:absolute;left:var(--me-x);top:var(--me-y);width:1px;height:1px}.mfx-gen-world-walker .ww-pickup{position:absolute;left:0;top:0;font-family:var(--display);font-size:20px;letter-spacing:.04em;white-space:nowrap;text-shadow:0 0 12px currentColor,0 2px 0 var(--ink);opacity:0}.mfx-gen-world-walker .ww-pickup.p-heal{color:var(--acid);--tx: -150px;animation:ww-pickup 1.4s cubic-bezier(.2,.8,.3,1) .54s forwards}.mfx-gen-world-walker .ww-pickup.p-blk{color:var(--coin);--tx: 0px;animation:ww-pickup 1.4s cubic-bezier(.2,.8,.3,1) .64s forwards}.mfx-gen-world-walker .ww-pickup.p-str{color:var(--blood);--tx: 150px;animation:ww-pickup 1.4s cubic-bezier(.2,.8,.3,1) .74s forwards}@keyframes ww-pickup{0%{opacity:0;transform:translate(var(--tx, 0),40px) scale(.6)}20%{opacity:1;transform:translate(var(--tx, 0),-10px) scale(1.15)}40%{opacity:1;transform:translate(var(--tx, 0),-32px) scale(1)}to{opacity:0;transform:translate(var(--tx, 0),-80px) scale(.9)}}.mfx-gen-world-walker .mfx-label{color:var(--bone);top:25%;animation:ww-label 1.4s ease-out .2s forwards}.mfx-gen-world-walker .mfx-label.is-sub{color:var(--blood)}@keyframes ww-label{0%{opacity:0;transform:translate(-50%,-40%);letter-spacing:.4em}30%{opacity:1;transform:translate(-50%,-50%);letter-spacing:.16em}70%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)}}.mfx-ban-true-aim .ta-reticle{position:absolute;width:90px;height:90px;transform:translate(-50%,-50%) scale(0);opacity:0;animation:ta-reticle 1s cubic-bezier(.2,.8,.3,1) forwards}.mfx-ban-true-aim .ta-reticle.r1{left:var(--e1-x);top:var(--e1-y);animation-delay:0ms}.mfx-ban-true-aim .ta-reticle.r2{left:var(--e2-x);top:var(--e2-y);animation-delay:60ms}.mfx-ban-true-aim .ta-reticle.r3{left:var(--e3-x);top:var(--e3-y);animation-delay:.12s}.mfx-ban-true-aim .ta-reticle:before,.mfx-ban-true-aim .ta-reticle:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid var(--ember);border-radius:50%;box-shadow:0 0 16px var(--ember)}.mfx-ban-true-aim .ta-reticle:after{top:28%;right:28%;bottom:28%;left:28%;border-width:1.5px}.mfx-ban-true-aim .ta-reticle i{position:absolute;background:var(--ember);box-shadow:0 0 6px var(--ember)}.mfx-ban-true-aim .ta-reticle .h{left:-20%;right:-20%;top:50%;height:2px;transform:translateY(-50%)}.mfx-ban-true-aim .ta-reticle .v{top:-20%;bottom:-20%;left:50%;width:2px;transform:translate(-50%)}@keyframes ta-reticle{0%{transform:translate(-50%,-50%) scale(2.4);opacity:0}18%{transform:translate(-50%,-50%) scale(1);opacity:1}56%{transform:translate(-50%,-50%) scale(1);opacity:1}60%{transform:translate(-50%,-50%) scale(1.3);opacity:1}68%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.mfx-ban-true-aim .ta-muzzle{position:absolute;left:var(--me-x);top:var(--me-y);width:80px;height:80px;transform:translate(-50%,-50%) scale(0);background:radial-gradient(circle,#fff 0%,var(--coin) 25%,var(--ember) 55%,transparent 80%);border-radius:50%;mix-blend-mode:screen;filter:blur(1px);animation:ta-muzzle .28s cubic-bezier(.2,.8,.3,1) .38s forwards}@keyframes ta-muzzle{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.3)}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}.mfx-ban-true-aim .ta-tracer{position:absolute;left:var(--me-x);top:var(--me-y);height:2px;background:linear-gradient(90deg,transparent 0%,var(--coin) 20%,#fff 50%,var(--ember) 80%,transparent 100%);transform-origin:0 50%;filter:drop-shadow(0 0 6px var(--ember));opacity:0;animation:ta-tracer .32s cubic-bezier(.2,.9,.3,1) .46s forwards}.mfx-ban-true-aim .ta-tracer.t1{width:0;transform:rotate(var(--t1-angle, -130deg));--target-w: var(--t1-len, 540px)}.mfx-ban-true-aim .ta-tracer.t2{width:0;transform:rotate(var(--t2-angle, -90deg));--target-w: var(--t2-len, 420px)}.mfx-ban-true-aim .ta-tracer.t3{width:0;transform:rotate(var(--t3-angle, -50deg));--target-w: var(--t3-len, 540px)}@keyframes ta-tracer{0%{opacity:0;width:0}20%{opacity:1}60%{opacity:1;width:var(--target-w)}to{opacity:0;width:var(--target-w)}}.mfx-ban-true-aim .ta-hit{position:absolute;width:70px;height:70px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--ember) 80%,#fff) 0%,transparent 70%);transform:translate(-50%,-50%) scale(0);mix-blend-mode:screen;filter:blur(2px);opacity:0;animation:ta-hit .4s ease-out forwards}.mfx-ban-true-aim .ta-hit.h1{left:var(--e1-x);top:var(--e1-y);animation-delay:.58s}.mfx-ban-true-aim .ta-hit.h2{left:var(--e2-x);top:var(--e2-y);animation-delay:.58s}.mfx-ban-true-aim .ta-hit.h3{left:var(--e3-x);top:var(--e3-y);animation-delay:.58s}@keyframes ta-hit{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}to{opacity:0;transform:translate(-50%,-50%) scale(1.6)}}.mfx-ban-true-aim .mfx-label{color:var(--ember);animation:ta-label 1s ease-out .6s forwards}.mfx-ban-true-aim .mfx-label.is-sub{color:color-mix(in srgb,var(--ember) 80%,var(--bone-2))}@keyframes ta-label{0%{opacity:0;transform:translate(-50%,-40%) scale(.85)}30%{opacity:1;transform:translate(-50%,-50%) scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-55%) scale(1)}}.mfx-brew-firebomb-plus .fb-bottle{position:absolute;left:0;top:0;width:38px;height:56px;background:linear-gradient(180deg,var(--acid) 0%,var(--acid) 35%,var(--ember) 35%,var(--ember) 100%);clip-path:polygon(36% 0%,64% 0%,64% 28%,100% 60%,100% 100%,0% 100%,0% 60%,36% 28%);filter:drop-shadow(0 0 8px var(--acid));transform:translate(80vw,8vh) rotate(-20deg);animation:fb-bottle 1.3s cubic-bezier(.4,0,.9,.6) forwards}@keyframes fb-bottle{0%{transform:translate(80vw,8vh) rotate(-20deg);opacity:0}6%{opacity:1}22%{transform:translate(60vw,-2vh) rotate(80deg);opacity:1}23%{transform:translate(50vw,38vh) rotate(160deg);opacity:1}25%{opacity:0}to{opacity:0}}.mfx-brew-firebomb-plus .mfx-flash{background:#fff;animation:fb-flash 1.3s ease-out forwards}@keyframes fb-flash{0%,22%{opacity:0}24%{opacity:1}34%{opacity:.4}60%{opacity:0}}.mfx-brew-firebomb-plus .fb-core{position:absolute;left:50%;top:50%;width:80px;height:80px;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--acid) 20%,var(--ember) 50%,transparent 80%);transform:translate(-50%,-50%) scale(0);mix-blend-mode:screen;filter:blur(1px);animation:fb-core 1.1s cubic-bezier(.2,.7,.3,1) .28s forwards}@keyframes fb-core{0%{transform:translate(-50%,-50%) scale(0);opacity:0}12%{transform:translate(-50%,-50%) scale(2.2);opacity:1}40%{transform:translate(-50%,-50%) scale(4);opacity:.7}to{transform:translate(-50%,-50%) scale(6);opacity:0}}.mfx-brew-firebomb-plus .fb-ring{position:absolute;left:50%;top:50%;width:80px;height:80px;border:3px solid var(--ember);border-radius:50%;transform:translate(-50%,-50%) scale(0);filter:drop-shadow(0 0 12px var(--ember));opacity:0;animation:fb-ring 1.1s cubic-bezier(.2,.7,.3,1) .28s forwards}.mfx-brew-firebomb-plus .fb-ring.r2{border-color:var(--acid);filter:drop-shadow(0 0 12px var(--acid));animation-delay:.38s}.mfx-brew-firebomb-plus .fb-ring.r3{border-color:var(--coin);filter:drop-shadow(0 0 8px var(--coin));animation-delay:.48s}@keyframes fb-ring{0%{opacity:0;transform:translate(-50%,-50%) scale(0);border-width:4px}10%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(14);border-width:.5px}}.mfx-brew-firebomb-plus .fb-sparks{position:absolute;left:50%;top:50%;width:1px;height:1px}.mfx-brew-firebomb-plus .fb-sparks i{position:absolute;left:0;top:0;width:3px;height:3px;background:var(--acid);border-radius:50%;box-shadow:0 0 8px var(--ember);transform-origin:0 0;opacity:0;animation:fb-spark 1s cubic-bezier(.2,.7,.3,1) .32s forwards}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(1){transform:rotate(0)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(2){transform:rotate(30deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(3){transform:rotate(60deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(4){transform:rotate(90deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(5){transform:rotate(120deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(6){transform:rotate(150deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(7){transform:rotate(180deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(8){transform:rotate(210deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(9){transform:rotate(240deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(10){transform:rotate(270deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(11){transform:rotate(300deg)}.mfx-brew-firebomb-plus .fb-sparks i:nth-child(12){transform:rotate(330deg)}@keyframes fb-spark{0%{opacity:0;translate:0 0}10%{opacity:1}to{opacity:0;translate:60vh 0}}.mfx-brew-firebomb-plus .mfx-tint{background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--ember) 22%,transparent) 0%,transparent 70%);animation:fb-tint 1.3s ease-out forwards}@keyframes fb-tint{0%,22%{opacity:0}30%{opacity:1}80%{opacity:1}to{opacity:0}}.mfx-brew-philosophers-stone .ps-stone{position:absolute;left:50%;top:45%;width:140px;height:140px;transform:translate(-50%,200%) rotate(0);animation:ps-stone-rise 1.4s cubic-bezier(.2,.7,.3,1) forwards}@keyframes ps-stone-rise{0%{transform:translate(-50%,200%) rotate(0);opacity:0}20%{transform:translate(-50%,-50%) rotate(120deg);opacity:1}64%{transform:translate(-50%,-50%) rotate(280deg);opacity:1}to{transform:translate(-50%,-50%) rotate(360deg);opacity:0}}.mfx-brew-philosophers-stone .ps-stone-face{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,color-mix(in srgb,var(--acid) 80%,var(--ink)),color-mix(in srgb,var(--coin) 70%,var(--ink)));clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);filter:drop-shadow(0 0 24px var(--acid))}.mfx-brew-philosophers-stone .ps-stone-face:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,transparent 30%,rgba(255,255,255,.6) 50%,transparent 70%);clip-path:inherit;animation:ps-glint 1.4s ease-in-out .2s forwards}@keyframes ps-glint{0%,to{opacity:0}40%,60%{opacity:1}}.mfx-brew-philosophers-stone .ps-rays{position:absolute;left:50%;top:45%;width:400px;height:400px;transform:translate(-50%,-50%);background:conic-gradient(from 0deg,transparent 0deg 8deg,color-mix(in srgb,var(--coin) 50%,transparent) 8deg 12deg,transparent 12deg 38deg,color-mix(in srgb,var(--coin) 50%,transparent) 38deg 42deg,transparent 42deg 68deg,color-mix(in srgb,var(--coin) 50%,transparent) 68deg 72deg,transparent 72deg 98deg,color-mix(in srgb,var(--coin) 50%,transparent) 98deg 102deg,transparent 102deg 128deg,color-mix(in srgb,var(--coin) 50%,transparent) 128deg 132deg,transparent 132deg 158deg,color-mix(in srgb,var(--coin) 50%,transparent) 158deg 162deg,transparent 162deg 188deg,color-mix(in srgb,var(--coin) 50%,transparent) 188deg 192deg,transparent 192deg 218deg,color-mix(in srgb,var(--coin) 50%,transparent) 218deg 222deg,transparent 222deg 248deg,color-mix(in srgb,var(--coin) 50%,transparent) 248deg 252deg,transparent 252deg 278deg,color-mix(in srgb,var(--coin) 50%,transparent) 278deg 282deg,transparent 282deg 308deg,color-mix(in srgb,var(--coin) 50%,transparent) 308deg 312deg,transparent 312deg 338deg,color-mix(in srgb,var(--coin) 50%,transparent) 338deg 342deg,transparent 342deg 360deg);mask:radial-gradient(circle,transparent 18%,#000 22%,#000 80%,transparent 100%);-webkit-mask:radial-gradient(circle,transparent 18%,#000 22%,#000 80%,transparent 100%);filter:drop-shadow(0 0 8px var(--coin));opacity:0;animation:ps-rays 1.4s ease-in-out .2s forwards}@keyframes ps-rays{0%{opacity:0;transform:translate(-50%,-50%) rotate(0) scale(.6)}30%{opacity:.9;transform:translate(-50%,-50%) rotate(60deg) scale(1)}70%{opacity:.9;transform:translate(-50%,-50%) rotate(140deg) scale(1.05)}to{opacity:0;transform:translate(-50%,-50%) rotate(200deg) scale(1.1)}}.mfx-brew-philosophers-stone .ps-beam{position:absolute;left:50%;top:45%;width:4px;height:25%;background:linear-gradient(180deg,transparent 0%,var(--coin) 40%,color-mix(in srgb,var(--coin) 70%,#fff) 100%);transform-origin:50% 0;transform:translate(-50%) scaleY(0);filter:drop-shadow(0 0 8px var(--coin));animation:ps-beam .7s ease-out .5s forwards}@keyframes ps-beam{0%{opacity:0;transform:translate(-50%) scaleY(0)}30%{opacity:1;transform:translate(-50%) scaleY(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%) scaleY(1)}}.mfx-brew-philosophers-stone .ps-flecks{position:absolute;left:var(--me-x);top:var(--me-y);width:1px;height:1px}.mfx-brew-philosophers-stone .ps-flecks i{position:absolute;width:3px;height:3px;background:var(--coin);box-shadow:0 0 6px var(--coin);border-radius:50%;opacity:0;animation:ps-fleck .7s cubic-bezier(.2,.7,.3,1) forwards}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(1){left:-50px;animation-delay:.8s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(2){left:-30px;animation-delay:.85s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(3){left:-10px;animation-delay:.88s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(4){left:10px;animation-delay:.92s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(5){left:30px;animation-delay:.96s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(6){left:50px;animation-delay:.98s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(7){left:-40px;animation-delay:1.02s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(8){left:0;animation-delay:1.05s}.mfx-brew-philosophers-stone .ps-flecks i:nth-child(9){left:40px;animation-delay:1.08s}@keyframes ps-fleck{0%{opacity:0;transform:translateY(-80px)}30%{opacity:1}to{opacity:0;transform:translateY(20px)}}.mfx-brew-philosophers-stone .mfx-label{color:var(--coin);top:30%;animation:ps-label 1.4s ease-out .4s forwards}.mfx-brew-philosophers-stone .mfx-label.is-sub{color:var(--acid)}@keyframes ps-label{0%{opacity:0;transform:translate(-50%,-30%)}30%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-60%)}}.mfx-pro-infinite-loop .il-crt{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(74,250,138,.06) 0px 1px,transparent 1px 3px),radial-gradient(ellipse 80% 65% at 50% 50%,transparent 30%,rgba(10,10,12,.6) 100%);mix-blend-mode:screen;opacity:0;animation:il-crt 1.4s ease-out forwards}@keyframes il-crt{0%{opacity:0}10%{opacity:1}78%{opacity:1}to{opacity:0}}.mfx-pro-infinite-loop .il-column{position:absolute;top:0;width:80px;height:100%;font-family:var(--mono);font-size:12px;line-height:1.45;color:var(--terminal);text-shadow:0 0 6px var(--terminal);overflow:hidden;opacity:0;animation:il-col 1.4s linear forwards}.mfx-pro-infinite-loop .il-column.c1{left:8%;animation-delay:80ms}.mfx-pro-infinite-loop .il-column.c2{left:32%;animation-delay:.14s}.mfx-pro-infinite-loop .il-column.c3{left:64%;animation-delay:.2s}.mfx-pro-infinite-loop .il-column.c4{left:84%;animation-delay:.26s}.mfx-pro-infinite-loop .il-column pre{margin:0;font:inherit;color:inherit;white-space:pre;animation:il-fall 2s linear infinite}@keyframes il-col{0%{opacity:0}20%{opacity:1}80%{opacity:1}to{opacity:0}}@keyframes il-fall{0%{transform:translateY(-50%)}to{transform:translateY(0)}}.mfx-pro-infinite-loop .il-loop{position:absolute;left:50%;top:50%;width:540px;height:180px;transform:translate(-50%,-50%) scale(.4);opacity:0;animation:il-loop 1.4s cubic-bezier(.2,.8,.3,1) .28s forwards}@keyframes il-loop{0%{opacity:0;transform:translate(-50%,-50%) scale(.4)}18%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}28%{transform:translate(-50%,-50%) scale(1)}72%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.05)}}.mfx-pro-infinite-loop .il-loop-text{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-family:var(--display);font-size:38px;letter-spacing:.08em;color:var(--terminal);text-shadow:0 0 24px var(--terminal);white-space:nowrap}.mfx-pro-infinite-loop .il-recurse{position:absolute;top:20%;right:20%;bottom:20%;left:20%;border:1.5px solid color-mix(in srgb,var(--terminal) 60%,transparent);display:grid;place-items:center;font-family:var(--display);font-size:22px;color:color-mix(in srgb,var(--terminal) 70%,var(--ink));letter-spacing:.06em;white-space:nowrap}.mfx-pro-infinite-loop .il-recurse .il-recurse{font-size:14px;top:18%;right:18%;bottom:18%;left:18%;color:color-mix(in srgb,var(--terminal) 45%,var(--ink))}.mfx-pro-infinite-loop .il-recurse .il-recurse .il-recurse{font-size:9px;color:color-mix(in srgb,var(--terminal) 30%,var(--ink))}.mfx-pro-infinite-loop .il-arrow{position:absolute;left:50%;top:50%;width:380px;height:380px;transform:translate(-50%,-50%);border:2.5px solid var(--terminal);border-right-color:transparent;border-radius:50%;box-shadow:0 0 18px var(--terminal),inset 0 0 12px color-mix(in srgb,var(--terminal) 60%,transparent);opacity:0;animation:il-arrow 1.1s linear .28s forwards}.mfx-pro-infinite-loop .il-arrow:after{content:"";position:absolute;right:-5px;top:50%;width:14px;height:14px;border-top:3px solid var(--terminal);border-right:3px solid var(--terminal);transform:translateY(-50%) rotate(45deg);filter:drop-shadow(0 0 6px var(--terminal))}@keyframes il-arrow{0%{opacity:0;transform:translate(-50%,-50%) rotate(-60deg) scale(.8)}20%{opacity:1;transform:translate(-50%,-50%) rotate(0) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) rotate(540deg) scale(1)}to{opacity:0;transform:translate(-50%,-50%) rotate(720deg) scale(1.05)}}.mfx-pri-ascension .as-column{position:absolute;left:var(--me-x);bottom:30%;width:80px;height:0;transform:translate(-50%);background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--bone) 70%,transparent) 70%,var(--bone) 100%);filter:blur(2px);animation:as-column 1.4s cubic-bezier(.2,.7,.3,1) forwards}.mfx-pri-ascension .as-column.wide{width:200px;filter:blur(8px);opacity:.55}.mfx-pri-ascension .as-column.narrow{width:30px;filter:blur(.4px);background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--coin) 70%,transparent) 70%,#fff 100%)}@keyframes as-column{0%{height:0;opacity:0}20%{height:60vh;opacity:1}70%{opacity:1}to{height:60vh;opacity:0}}.mfx-pri-ascension .as-halo{position:absolute;left:50%;top:40%;width:380px;height:90px;border:3px solid var(--bone);border-radius:50%;transform:translate(-50%,-50%) scale(0);box-shadow:0 0 32px color-mix(in srgb,var(--bone) 80%,transparent),inset 0 0 24px color-mix(in srgb,var(--coin) 50%,transparent);opacity:0;animation:as-halo 1.4s cubic-bezier(.2,.7,.3,1) .2s forwards}@keyframes as-halo{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}40%{transform:translate(-50%,-50%) scale(1)}75%{opacity:1;transform:translate(-50%,-50%) scale(1.04)}to{opacity:0;transform:translate(-50%,-50%) scale(1.12)}}.mfx-pri-ascension .mfx-flash{background:color-mix(in srgb,var(--bone) 80%,#fff);animation:as-flash 1.4s ease-out forwards}@keyframes as-flash{0%,25%{opacity:0}32%{opacity:.85}50%{opacity:0}}.mfx-pri-ascension .as-motes{position:absolute;left:var(--me-x);bottom:30%;width:100px;height:60vh;transform:translate(-50%)}.mfx-pri-ascension .as-motes i{position:absolute;bottom:0;width:4px;height:4px;border-radius:50%;background:var(--bone);box-shadow:0 0 8px var(--bone);opacity:0;animation:as-mote 1.2s linear forwards}.mfx-pri-ascension .as-motes i:nth-child(1){left:10%;animation-delay:.48s}.mfx-pri-ascension .as-motes i:nth-child(2){left:26%;animation-delay:.54s}.mfx-pri-ascension .as-motes i:nth-child(3){left:42%;animation-delay:.6s}.mfx-pri-ascension .as-motes i:nth-child(4){left:58%;animation-delay:.66s}.mfx-pri-ascension .as-motes i:nth-child(5){left:74%;animation-delay:.72s}.mfx-pri-ascension .as-motes i:nth-child(6){left:90%;animation-delay:.78s}.mfx-pri-ascension .as-motes i:nth-child(7){left:18%;animation-delay:.6s}.mfx-pri-ascension .as-motes i:nth-child(8){left:50%;animation-delay:.72s}.mfx-pri-ascension .as-motes i:nth-child(9){left:80%;animation-delay:.84s}@keyframes as-mote{0%{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(-50vh);opacity:0}}.mfx-pri-ascension .mfx-label{color:var(--bone);top:22%;font-size:30px;animation:as-label 1.4s ease-out .5s forwards}.mfx-pri-ascension .mfx-label.is-sub{color:var(--coin)}@keyframes as-label{0%{opacity:0;transform:translate(-50%,-30%)}30%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-65%)}}.mfx-nec-apocalypse .ap-haze{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 90% 70% at 50% 50%,color-mix(in srgb,var(--jester) 35%,transparent) 0%,transparent 80%),radial-gradient(ellipse 60% 40% at 20% 80%,color-mix(in srgb,var(--jester) 25%,transparent) 0%,transparent 70%);mix-blend-mode:screen;opacity:0;animation:ap-haze 1.6s ease-out forwards}@keyframes ap-haze{0%{opacity:0}16%{opacity:1}80%{opacity:1}to{opacity:0}}.mfx-nec-apocalypse .ap-eclipse{position:absolute;left:50%;top:18%;width:160px;height:160px;border-radius:50%;background:var(--ink);transform:translate(-50%,-50%) scale(0);box-shadow:0 0 0 2px color-mix(in srgb,var(--jester) 80%,transparent),0 0 32px color-mix(in srgb,var(--jester) 80%,transparent),0 0 80px color-mix(in srgb,var(--jester) 50%,transparent);opacity:0;animation:ap-eclipse 1.6s cubic-bezier(.2,.7,.3,1) .1s forwards}.mfx-nec-apocalypse .ap-eclipse:after{content:"";position:absolute;top:-16px;right:-16px;bottom:-16px;left:-16px;border-radius:50%;background:conic-gradient(from 0deg,color-mix(in srgb,var(--jester) 80%,transparent) 0deg 4deg,transparent 4deg 22deg,color-mix(in srgb,var(--jester) 80%,transparent) 22deg 26deg,transparent 26deg 44deg,color-mix(in srgb,var(--jester) 80%,transparent) 44deg 48deg,transparent 48deg 66deg,color-mix(in srgb,var(--jester) 80%,transparent) 66deg 70deg,transparent 70deg 88deg,color-mix(in srgb,var(--jester) 80%,transparent) 88deg 92deg,transparent 92deg 110deg,color-mix(in srgb,var(--jester) 80%,transparent) 110deg 114deg,transparent 114deg 132deg,color-mix(in srgb,var(--jester) 80%,transparent) 132deg 136deg,transparent 136deg 154deg,color-mix(in srgb,var(--jester) 80%,transparent) 154deg 158deg,transparent 158deg 176deg,color-mix(in srgb,var(--jester) 80%,transparent) 176deg 180deg,transparent 180deg 198deg,color-mix(in srgb,var(--jester) 80%,transparent) 198deg 202deg,transparent 202deg 220deg,color-mix(in srgb,var(--jester) 80%,transparent) 220deg 224deg,transparent 224deg 242deg,color-mix(in srgb,var(--jester) 80%,transparent) 242deg 246deg,transparent 246deg 264deg,color-mix(in srgb,var(--jester) 80%,transparent) 264deg 268deg,transparent 268deg 286deg,color-mix(in srgb,var(--jester) 80%,transparent) 286deg 290deg,transparent 290deg 308deg,color-mix(in srgb,var(--jester) 80%,transparent) 308deg 312deg,transparent 312deg 330deg,color-mix(in srgb,var(--jester) 80%,transparent) 330deg 334deg,transparent 334deg 352deg,color-mix(in srgb,var(--jester) 80%,transparent) 352deg 356deg,transparent 356deg 360deg);mask:radial-gradient(circle,transparent 48%,#000 52%,#000 80%,transparent 100%);-webkit-mask:radial-gradient(circle,transparent 48%,#000 52%,#000 80%,transparent 100%);animation:ap-corona-spin 4s linear infinite}@keyframes ap-corona-spin{to{transform:rotate(360deg)}}@keyframes ap-eclipse{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}16%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}20%{transform:translate(-50%,-50%) scale(1)}88%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.05)}}.mfx-nec-apocalypse .ap-meteor{position:absolute;width:4px;height:110px;background:linear-gradient(180deg,transparent 0%,color-mix(in srgb,var(--jester) 30%,transparent) 30%,var(--jester) 75%,#fff 100%);filter:drop-shadow(0 0 6px var(--jester)) drop-shadow(0 0 14px color-mix(in srgb,var(--jester) 70%,transparent));transform-origin:50% 100%;opacity:0;border-radius:50%/4px}.mfx-nec-apocalypse .ap-meteor.m1{left:var(--e1-x);top:var(--e1-y);animation:ap-streak .46s cubic-bezier(.5,0,.85,.55) .26s forwards}.mfx-nec-apocalypse .ap-meteor.m2{left:var(--e2-x);top:var(--e2-y);animation:ap-streak .46s cubic-bezier(.5,0,.85,.55) .46s forwards}.mfx-nec-apocalypse .ap-meteor.m3{left:var(--e3-x);top:var(--e3-y);animation:ap-streak .46s cubic-bezier(.5,0,.85,.55) .66s forwards}.mfx-nec-apocalypse .ap-meteor.m4{left:calc((var(--e1-x) + var(--e2-x)) / 2);top:calc(var(--e1-y) + 10px);width:6px;height:150px;animation:ap-streak-big .52s cubic-bezier(.5,0,.85,.55) .88s forwards}@keyframes ap-streak{0%{opacity:0;transform:translate(-50%,-100%) rotate(-32deg) translateY(-420px)}18%{opacity:1}82%{opacity:1;transform:translate(-50%,-100%) rotate(-32deg) translateY(0)}to{opacity:0;transform:translate(-50%,-100%) rotate(-32deg) translateY(0)}}@keyframes ap-streak-big{0%{opacity:0;transform:translate(-50%,-100%) rotate(-32deg) translateY(-540px)}18%{opacity:1}82%{opacity:1;transform:translate(-50%,-100%) rotate(-32deg) translateY(0)}to{opacity:0;transform:translate(-50%,-100%) rotate(-32deg) translateY(0)}}.mfx-nec-apocalypse .ap-impact{position:absolute;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--jester) 30%,transparent 70%);transform:translate(-50%,-50%) scale(0);mix-blend-mode:screen;opacity:0}.mfx-nec-apocalypse .ap-impact.i1{left:var(--e1-x);top:var(--e1-y);animation:ap-impact .5s ease-out .68s forwards}.mfx-nec-apocalypse .ap-impact.i2{left:var(--e2-x);top:var(--e2-y);animation:ap-impact .5s ease-out .88s forwards}.mfx-nec-apocalypse .ap-impact.i3{left:var(--e3-x);top:var(--e3-y);animation:ap-impact .5s ease-out 1.08s forwards}@keyframes ap-impact{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.6)}to{opacity:0;transform:translate(-50%,-50%) scale(2.4)}}.mfx-nec-apocalypse .ap-status{position:absolute;font-family:var(--mono);font-size:11px;letter-spacing:.12em;padding:2px 6px;border:1px solid currentColor;text-shadow:0 0 6px currentColor;opacity:0}.mfx-nec-apocalypse .ap-status[data-e="1"]{left:var(--e1-x);top:var(--e1-y)}.mfx-nec-apocalypse .ap-status[data-e="2"]{left:var(--e2-x);top:var(--e2-y)}.mfx-nec-apocalypse .ap-status[data-e="3"]{left:var(--e3-x);top:var(--e3-y)}.mfx-nec-apocalypse .ap-status.s-burn{color:var(--ember);animation:ap-status .7s ease-out .7s forwards;transform:translate(calc(-50% - 60px),-20px)}.mfx-nec-apocalypse .ap-status.s-poison{color:var(--jester);animation:ap-status .7s ease-out .8s forwards;transform:translate(-50%,-20px)}.mfx-nec-apocalypse .ap-status.s-stun{color:var(--bone);border-style:dashed;animation:ap-status .7s ease-out .9s forwards;transform:translate(calc(-50% + 60px),-20px)}@keyframes ap-status{0%{opacity:0}30%{opacity:1}70%{opacity:1}to{opacity:0}}.mfx-pal-transcendence .tr-rays{position:absolute;left:var(--me-x);top:var(--me-y);width:800px;height:800px;transform:translate(-50%,-50%) scale(0);background:conic-gradient(from 0deg,transparent 0deg 4deg,color-mix(in srgb,var(--coin) 50%,transparent) 4deg 8deg,transparent 8deg 22deg,color-mix(in srgb,var(--coin) 50%,transparent) 22deg 26deg,transparent 26deg 40deg,color-mix(in srgb,var(--coin) 50%,transparent) 40deg 44deg,transparent 44deg 58deg,color-mix(in srgb,var(--coin) 50%,transparent) 58deg 62deg,transparent 62deg 76deg,color-mix(in srgb,var(--coin) 50%,transparent) 76deg 80deg,transparent 80deg 94deg,color-mix(in srgb,var(--coin) 50%,transparent) 94deg 98deg,transparent 98deg 112deg,color-mix(in srgb,var(--coin) 50%,transparent) 112deg 116deg,transparent 116deg 130deg,color-mix(in srgb,var(--coin) 50%,transparent) 130deg 134deg,transparent 134deg 148deg,color-mix(in srgb,var(--coin) 50%,transparent) 148deg 152deg,transparent 152deg 166deg,color-mix(in srgb,var(--coin) 50%,transparent) 166deg 170deg,transparent 170deg 184deg,color-mix(in srgb,var(--coin) 50%,transparent) 184deg 188deg,transparent 188deg 202deg,color-mix(in srgb,var(--coin) 50%,transparent) 202deg 206deg,transparent 206deg 220deg,color-mix(in srgb,var(--coin) 50%,transparent) 220deg 224deg,transparent 224deg 238deg,color-mix(in srgb,var(--coin) 50%,transparent) 238deg 242deg,transparent 242deg 256deg,color-mix(in srgb,var(--coin) 50%,transparent) 256deg 260deg,transparent 260deg 274deg,color-mix(in srgb,var(--coin) 50%,transparent) 274deg 278deg,transparent 278deg 292deg,color-mix(in srgb,var(--coin) 50%,transparent) 292deg 296deg,transparent 296deg 310deg,color-mix(in srgb,var(--coin) 50%,transparent) 310deg 314deg,transparent 314deg 328deg,color-mix(in srgb,var(--coin) 50%,transparent) 328deg 332deg,transparent 332deg 346deg,color-mix(in srgb,var(--coin) 50%,transparent) 346deg 350deg,transparent 350deg 360deg);mask:radial-gradient(circle,transparent 8%,#000 12%,#000 60%,transparent 100%);-webkit-mask:radial-gradient(circle,transparent 8%,#000 12%,#000 60%,transparent 100%);filter:drop-shadow(0 0 12px var(--coin));opacity:0;animation:tr-rays 1.4s ease-out forwards}@keyframes tr-rays{0%{opacity:0;transform:translate(-50%,-50%) scale(0)}20%{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.3) rotate(120deg)}}.mfx-pal-transcendence .tr-halo{position:absolute;left:var(--me-x);top:calc(var(--me-y) - 80px);width:220px;height:50px;transform:translate(-50%,-50%) scale(0);border:3px solid var(--coin);border-radius:50%;box-shadow:0 0 24px var(--coin),inset 0 0 16px var(--coin);opacity:0;animation:tr-halo-1 1.4s cubic-bezier(.2,.7,.3,1) .18s forwards}.mfx-pal-transcendence .tr-halo.h2{width:280px;height:70px;top:calc(var(--me-y) - 76px);border-width:2px;border-color:color-mix(in srgb,var(--coin) 70%,var(--bone));animation-name:tr-halo-2;animation-delay:.28s}@keyframes tr-halo-1{0%{opacity:0;transform:translate(-50%,-50%) scale(0) rotate(0)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.05) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.2) rotate(180deg)}}@keyframes tr-halo-2{0%{opacity:0;transform:translate(-50%,-50%) scale(0) rotate(0)}20%{opacity:1;transform:translate(-50%,-50%) scale(1.05) rotate(0)}to{opacity:0;transform:translate(-50%,-50%) scale(1.2) rotate(-180deg)}}.mfx-pal-transcendence .tr-orb{position:absolute;left:var(--me-x);top:calc(var(--me-y) - 60px);width:56px;height:56px;border-radius:50%;background:radial-gradient(circle,#fff 0%,var(--coin) 50%,transparent 80%);transform:translate(-50%,-50%) scale(0);mix-blend-mode:screen;filter:blur(1px);opacity:0;animation:tr-orb .6s cubic-bezier(.2,.7,.3,1) .6s forwards}@keyframes tr-orb{0%{opacity:0;transform:translate(-50%,-50%) scale(.3)}30%{opacity:1;transform:translate(-50%,-50%) scale(1.6)}to{opacity:0;transform:translate(-50%,-50%) scale(2)}}.mfx-pal-transcendence .tr-banner{position:absolute;top:var(--me-y);width:160px;height:28px;background:var(--ink);border:1.5px solid var(--coin);display:grid;place-items:center;font-family:var(--display);font-size:11px;letter-spacing:.16em;color:var(--coin);text-shadow:0 0 6px var(--coin);box-shadow:0 0 14px color-mix(in srgb,var(--coin) 60%,transparent);opacity:0;transform:translateY(-50%) scaleX(0)}.mfx-pal-transcendence .tr-banner.b1{left:calc(var(--me-x) - 230px);transform-origin:100% 50%;animation:tr-banner-left .8s cubic-bezier(.2,.7,.3,1) .36s forwards}.mfx-pal-transcendence .tr-banner.b2{left:calc(var(--me-x) + 70px);transform-origin:0% 50%;animation:tr-banner-right .8s cubic-bezier(.2,.7,.3,1) .36s forwards}@keyframes tr-banner-left{0%{opacity:0;transform:translateY(-50%) scaleX(0)}25%{opacity:1;transform:translateY(-50%) scaleX(1)}80%{opacity:1}to{opacity:0;transform:translateY(-50%) scaleX(1)}}@keyframes tr-banner-right{0%{opacity:0;transform:translateY(-50%) scaleX(0)}25%{opacity:1;transform:translateY(-50%) scaleX(1)}80%{opacity:1}to{opacity:0;transform:translateY(-50%) scaleX(1)}}.mfx-pal-transcendence .mfx-label{color:var(--coin);top:28%;animation:tr-label 1.4s ease-out .7s forwards}.mfx-pal-transcendence .mfx-label.is-sub{color:color-mix(in srgb,var(--coin) 60%,var(--bone))}@keyframes tr-label{0%{opacity:0;transform:translate(-50%,-30%)}25%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-65%)}}.mfx-hac-broadcast .bc-tower{position:absolute;left:var(--me-x);top:calc(var(--me-y) - 60px);width:14px;height:0;background:linear-gradient(180deg,var(--terminal),transparent);transform:translate(-50%);clip-path:polygon(50% 0%,100% 100%,0% 100%);filter:drop-shadow(0 0 12px var(--terminal));animation:bc-tower 1.2s cubic-bezier(.2,.7,.3,1) forwards}@keyframes bc-tower{0%{opacity:0;height:0}16%{opacity:1;height:60px}76%{opacity:1;height:60px}to{opacity:0;height:60px}}.mfx-hac-broadcast .bc-tower:after{content:"";position:absolute;left:50%;top:-8px;width:4px;height:14px;background:var(--terminal);transform:translate(-50%);box-shadow:0 0 12px var(--terminal)}.mfx-hac-broadcast .bc-arc{position:absolute;left:var(--me-x);top:calc(var(--me-y) - 70px);width:100px;height:100px;border:2.5px solid var(--terminal);border-radius:50%;clip-path:polygon(50% 50%,0% 0%,100% 0%);transform:translate(-50%,-50%) scale(0);filter:drop-shadow(0 0 8px var(--terminal));opacity:0;animation:bc-arc .9s cubic-bezier(.2,.7,.3,1) forwards}.mfx-hac-broadcast .bc-arc.a1{animation-delay:.12s}.mfx-hac-broadcast .bc-arc.a2{animation-delay:.28s}.mfx-hac-broadcast .bc-arc.a3{animation-delay:.44s}@keyframes bc-arc{0%{opacity:0;transform:translate(-50%,-50%) scale(.2);border-width:3px}20%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(14);border-width:.3px}}.mfx-hac-broadcast .bc-binary{position:absolute;font-family:var(--mono);font-size:14px;letter-spacing:.06em;line-height:1.4;color:var(--terminal);text-shadow:0 0 6px var(--terminal);opacity:0;white-space:pre}.mfx-hac-broadcast .bc-binary[data-e="1"]{left:var(--e1-x);top:var(--e1-y);transform:translate(-50%,-50%);animation:bc-binary .9s linear .32s forwards}.mfx-hac-broadcast .bc-binary[data-e="2"]{left:var(--e2-x);top:var(--e2-y);transform:translate(-50%,-50%);animation:bc-binary .9s linear .38s forwards}.mfx-hac-broadcast .bc-binary[data-e="3"]{left:var(--e3-x);top:var(--e3-y);transform:translate(-50%,-50%);animation:bc-binary .9s linear .44s forwards}@keyframes bc-binary{0%{opacity:0}30%{opacity:1}70%{opacity:1}to{opacity:0}}.mfx-hac-broadcast .bc-label{position:absolute;left:50%;top:38%;transform:translate(-50%,-50%);font-family:var(--display);font-size:92px;letter-spacing:.08em;color:var(--terminal);text-shadow:0 0 24px var(--terminal),0 0 60px var(--terminal);opacity:0;animation:bc-label 1.2s ease-out .38s forwards}@keyframes bc-label{0%{opacity:0;transform:translate(-50%,-40%) scale(.6)}15%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}25%{transform:translate(-50%,-50%) scale(1)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-55%) scale(1.05)}}.mfx-hac-broadcast .bc-sub{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);font-family:var(--mono);font-size:11px;letter-spacing:.36em;color:var(--terminal);text-shadow:0 0 6px var(--terminal);opacity:0;white-space:nowrap;animation:bc-label 1.2s ease-out .46s forwards}.mfx-bar-eternal-song .es-staff{position:absolute;left:6%;right:6%;top:38%;height:24%}.mfx-bar-eternal-song .es-staff i{position:absolute;left:0;width:0;height:1.5px;background:linear-gradient(90deg,transparent 0%,color-mix(in srgb,var(--coin) 70%,transparent) 50%,transparent 100%);box-shadow:0 0 6px color-mix(in srgb,var(--coin) 50%,transparent);animation:es-staff-draw 1.3s cubic-bezier(.2,.7,.3,1) forwards}.mfx-bar-eternal-song .es-staff i:nth-child(1){top:0%;animation-delay:0ms}.mfx-bar-eternal-song .es-staff i:nth-child(2){top:22%;animation-delay:50ms}.mfx-bar-eternal-song .es-staff i:nth-child(3){top:44%;animation-delay:.1s}.mfx-bar-eternal-song .es-staff i:nth-child(4){top:66%;animation-delay:.15s}.mfx-bar-eternal-song .es-staff i:nth-child(5){top:88%;animation-delay:.2s}@keyframes es-staff-draw{0%{width:0;opacity:0}20%{width:100%;opacity:1}76%{opacity:1}to{width:100%;opacity:0}}.mfx-bar-eternal-song .es-wave{position:absolute;left:6%;right:6%;top:38%;height:24%;pointer-events:none}.mfx-bar-eternal-song .es-wave svg{width:100%;height:100%;overflow:visible}.mfx-bar-eternal-song .es-wave path{fill:none;stroke:var(--coin);stroke-width:2.5;filter:drop-shadow(0 0 10px var(--coin));stroke-dasharray:600;stroke-dashoffset:600;animation:es-wave-draw 1.3s cubic-bezier(.2,.7,.3,1) .24s forwards}@keyframes es-wave-draw{0%{stroke-dashoffset:600;opacity:0}20%{stroke-dashoffset:600;opacity:1}80%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:0}}.mfx-bar-eternal-song .es-notes{position:absolute;left:var(--me-x);top:var(--me-y);width:1px;height:1px}.mfx-bar-eternal-song .es-notes i{position:absolute;width:14px;height:14px;border-radius:50%;background:var(--coin);box-shadow:3px -20px 0 -3px var(--coin),0 0 12px var(--coin);opacity:0}.mfx-bar-eternal-song .es-notes i:nth-child(1){left:-110px;animation:es-note .8s cubic-bezier(.2,.7,.3,1) .48s forwards}.mfx-bar-eternal-song .es-notes i:nth-child(2){left:0;animation:es-note .8s cubic-bezier(.2,.7,.3,1) .56s forwards}.mfx-bar-eternal-song .es-notes i:nth-child(3){left:110px;animation:es-note .8s cubic-bezier(.2,.7,.3,1) .64s forwards}@keyframes es-note{0%{opacity:0;transform:translateY(20px) scale(.5)}25%{opacity:1;transform:translateY(-12px) scale(1.15)}60%{opacity:1;transform:translateY(-60px) scale(1)}to{opacity:0;transform:translateY(-120px) scale(.9)}}.mfx-bar-eternal-song .es-sheen{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(110deg,transparent 30%,color-mix(in srgb,var(--coin) 30%,transparent) 50%,transparent 70%);mix-blend-mode:screen;transform:translate(-100%);animation:es-sheen 1.3s ease-out .2s forwards}@keyframes es-sheen{0%{transform:translate(-100%)}to{transform:translate(100%)}}.mfx-bar-eternal-song .mfx-label{color:var(--coin);top:22%;animation:es-label 1.3s ease-out .5s forwards}.mfx-bar-eternal-song .mfx-label.is-sub{color:color-mix(in srgb,var(--coin) 70%,var(--bone))}@keyframes es-label{0%{opacity:0;transform:translate(-50%,-30%)}25%{opacity:1;transform:translate(-50%,-50%)}70%{opacity:1}to{opacity:0;transform:translate(-50%,-65%)}}body.is-reduce-motion .mfx,body.is-reduce-motion .mfx *,body.is-reduce-motion .mfx *:before,body.is-reduce-motion .mfx *:after,body.is-reduce-motion.is-mfx-shaking .combat{animation-duration:.01ms!important}.run-summary{display:flex;flex-direction:column;height:100%;width:100%;min-height:0;padding:var(--sp-4, 16px) var(--sp-5, 20px);box-sizing:border-box;gap:var(--sp-3, 12px);overflow:hidden}.run-summary-head{display:flex;flex-direction:column;gap:var(--sp-2, 8px);padding-bottom:var(--sp-3, 12px);border-bottom:1px solid var(--rule-hi)}.run-summary-head-line{display:flex;align-items:baseline;gap:var(--sp-3, 12px);flex-wrap:wrap}.run-summary-kicker{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.18em;color:var(--bone-3)}.run-summary-headline{font-family:var(--display);font-weight:700;font-size:44px;letter-spacing:-.02em;line-height:1;margin:0}.run-summary-victory .run-summary-headline{color:var(--acid)}.run-summary-defeat .run-summary-headline{color:var(--blood)}.run-summary-conceded .run-summary-headline{color:var(--coin)}.run-summary-sub{font-family:var(--mono);font-size:13px;color:var(--bone-2);margin:0;letter-spacing:.04em}.run-summary-party{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.run-summary-party-pill{display:inline-flex;align-items:center;gap:8px;padding:4px 10px;font-size:11px;letter-spacing:.08em;border-left:3px solid var(--row-accent, var(--bone-4, #3a3128));background:#14110e73}.run-summary-party-pill[data-seat="1"]{--row-accent: var(--seat-1)}.run-summary-party-pill[data-seat="2"]{--row-accent: var(--seat-2)}.run-summary-party-pill[data-seat="3"]{--row-accent: var(--seat-3)}.run-summary-party-pill[data-seat="4"]{--row-accent: var(--seat-4)}.run-summary-party-name{color:var(--row-accent, var(--bone));font-weight:600}.run-summary-party-class{color:var(--bone-3);font-size:10px}.run-summary-toolbar{display:flex;justify-content:space-between;align-items:center;gap:var(--sp-3, 12px);padding:var(--sp-2, 8px) 0;flex-wrap:wrap}.run-summary-view-toggle{display:inline-flex;gap:4px}.rs-view-btn{font-family:var(--mono);font-size:11px;letter-spacing:.12em;padding:6px 12px;border:1px solid var(--bone-4, #3a3128);background:#14110e66;color:var(--bone-3);cursor:pointer}.rs-view-btn.is-on{border-color:var(--bone-2);color:var(--bone);background:#28231cb3}.rs-view-btn:disabled{opacity:.4;cursor:not-allowed}.run-summary-actions{display:inline-flex;gap:var(--sp-2, 8px);align-items:center}.run-summary-cta{padding:10px 16px;font-size:12px}.run-summary-leave{padding:10px 14px;font-size:11px;color:var(--blood);border-color:var(--blood);background:transparent}.run-summary-leave:hover{background:#e8454514}.run-summary-body{flex:1 1 auto;min-height:0;overflow-y:auto;border:1px solid var(--rule-hi);background:#0f0d0a8c;padding:var(--sp-3, 12px)}.run-summary-log,.run-summary-stats{display:flex;flex-direction:column;gap:4px}.coach-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;pointer-events:none}.coach-overlay-dim{background:#08080c9e}.coach-spotlight{position:fixed;border:2px solid var(--acid, #c6f24e);border-radius:4px;box-shadow:0 0 0 9999px #08080c9e;pointer-events:none;transition:left .12s ease,top .12s ease,width .12s ease,height .12s ease}.coach-bubble{position:fixed;pointer-events:auto;width:min(340px,calc(100vw - 32px));background:var(--char, #1a1a20);border:1px solid var(--rule-hi, #3a3a44);box-shadow:4px 4px #00000080;padding:16px 18px;color:var(--bone, #e8e8ee);font-family:var(--display, system-ui)}.coach-step{font-size:10px;letter-spacing:.18em;color:var(--acid, #c6f24e);margin-bottom:6px}.coach-title{font-weight:800;font-size:15px;letter-spacing:.02em;margin-bottom:6px}.coach-text{font-size:13px;line-height:1.5;color:var(--bone-2, #c4c4cc)}.coach-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px}.coach-skip{background:none;border:0;color:var(--bone-3, #8a8a92);font-family:var(--mono, ui-monospace);font-size:11px;letter-spacing:.08em;cursor:pointer;padding:4px 2px}.coach-skip:hover{color:var(--bone, #e8e8ee)}.coach-next{background:var(--acid, #c6f24e);color:var(--ink, #0c0c10);border:0;font-family:var(--display, system-ui);font-weight:800;font-size:12px;letter-spacing:.08em;padding:8px 14px;cursor:pointer}.coach-next:hover{filter:brightness(1.08)}.talents-panel{--mage: #9d7bff;--mage-2: #b59cff;--mage-soft: rgba(157, 123, 255, .18);--mage-bg: rgba(157, 123, 255, .08);--hatch-mage: repeating-linear-gradient( -45deg, rgba(157, 123, 255, .32) 0 1px, transparent 1px 4px );position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;background:var(--ink);color:var(--bone);font-family:var(--display);overflow:auto;display:grid;grid-template-rows:auto 1fr auto;align-content:start}.talents-head{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:18px 24px 14px;border-bottom:1px solid var(--rule);background:linear-gradient(to bottom,var(--char) 0%,var(--ink) 100%)}.talents-head-l{display:flex;align-items:baseline;gap:14px}.talents-back{background:transparent;border:1px solid var(--rule-hi);color:var(--bone-2);padding:8px 12px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;cursor:pointer;margin-right:6px}.talents-back:hover{border-color:var(--mage);color:var(--mage)}.talents-crumb{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--bone-3)}.talents-crumb b{color:var(--mage);font-weight:700}.talents-title{font-family:var(--display);font-size:32px;font-weight:700;letter-spacing:.04em;margin:0;line-height:1}.talents-title-sep{display:inline-block;width:1px;height:22px;background:var(--rule-hi);margin:0 6px -2px}.talents-title-class{color:var(--mage)}.talents-head-r{display:flex;align-items:center;gap:18px}.points-block{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--char-2);border:1px solid var(--rule-hi);box-shadow:3px 3px 0 0 var(--ink)}.points-block .k{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.18em;color:var(--bone-3)}.points-block .v{font-family:var(--mono);font-weight:700;font-size:18px;letter-spacing:.04em;color:var(--bone)}.points-block .v b{color:var(--mage);font-weight:700}.points-bar{width:160px;height:8px;background:var(--char-3);border:1px solid var(--rule);position:relative}.points-bar-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--mage);background-image:var(--hatch-mage)}.mastery-block{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.mastery-rank{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.14em;color:var(--bone-2)}.mastery-pip-row{display:flex;gap:3px}.mastery-pip{width:10px;height:4px;background:var(--char-3);border:1px solid var(--rule)}.mastery-pip.is-on{background:var(--mage);border-color:var(--mage)}.talents-body{display:grid;grid-template-columns:320px 1fr 380px;gap:0;align-items:stretch;min-height:0}.identity{border-right:1px solid var(--rule);padding:20px;display:flex;flex-direction:column;gap:18px}.identity-sigil-wrap{position:relative;width:100%;aspect-ratio:1;background:var(--char-2);border:1px solid var(--rule-hi);display:flex;align-items:center;justify-content:center;overflow:hidden}.identity-sigil-wrap:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-mage);opacity:.4}.identity-sigil{position:relative;width:64%;height:64%;background:var(--ink);border:2px solid var(--mage);display:flex;align-items:center;justify-content:center}.identity-sigil-glyph{width:50%;height:50%;border:2px solid var(--mage);transform:rotate(45deg);position:relative}.identity-sigil-glyph:after{content:"";position:absolute;top:18%;right:18%;bottom:18%;left:18%;background:var(--mage)}.identity-sigil-mono{position:absolute;bottom:8px;left:8px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--bone-3)}.identity-sigil-rank{position:absolute;top:8px;right:8px;font-family:var(--mono);font-size:9px;letter-spacing:.16em;color:var(--mage)}.identity-name{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:.06em;color:var(--bone);margin:0}.identity-tagline{font-size:13px;line-height:1.45;color:var(--bone-2);margin:0;text-wrap:pretty}.identity-block{border-top:1px solid var(--rule);padding-top:14px;display:flex;flex-direction:column;gap:10px}.identity-block-head{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.22em;color:var(--bone-3)}.identity-stats{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px}.identity-stat{display:flex;justify-content:space-between;align-items:baseline;gap:6px;padding:4px 0;border-bottom:1px dotted var(--rule)}.identity-stat-k{font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.identity-stat-v{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--bone)}.identity-stat-v .delta{color:var(--mage);font-weight:700;margin-left:4px;font-size:11px}.identity-resource{font-family:var(--mono);font-size:11px;color:var(--bone-2);letter-spacing:.06em;line-height:1.6}.identity-resource b{color:var(--mage);font-weight:700}.identity-cta{margin-top:auto;display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:transparent;border:1px solid var(--rule-hi);color:var(--bone);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;cursor:pointer}.identity-cta:hover{background:var(--char-2);border-color:var(--mage);color:var(--mage)}.tree-wrap{position:relative;padding:20px 16px;min-height:0;display:flex;flex-direction:column;gap:14px;overflow:hidden}.tree-toolbar{display:flex;align-items:center;gap:8px;padding:0 4px}.tree-toolbar .left{display:flex;align-items:center;gap:8px}.tree-toolbar .right{margin-left:auto;display:flex;align-items:center;gap:6px}.tree-tag{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--bone-3);padding:4px 8px;border:1px solid var(--rule)}.tree-tag.is-on{color:var(--mage);border-color:var(--mage);background:var(--mage-bg)}.tree-canvas{position:relative;flex:1;min-height:1000px;height:1000px;background:linear-gradient(to bottom,rgba(157,123,255,.04),transparent 35%),var(--char);border:1px solid var(--rule);box-shadow:inset 0 0 0 1px var(--ink);overflow:hidden}.tree-canvas:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:40px 40px;pointer-events:none}.tier-label{position:absolute;left:14px;font-family:var(--mono);font-size:9px;letter-spacing:.22em;color:var(--bone-4);writing-mode:vertical-rl;transform:rotate(180deg);text-transform:uppercase}.tier-divider{position:absolute;left:0;right:0;border-top:1px dashed var(--rule);pointer-events:none}.tier-divider-label{position:absolute;right:14px;top:-8px;font-family:var(--mono);font-size:9px;letter-spacing:.22em;color:var(--bone-4);background:var(--char);padding:0 6px}.line{position:absolute;transform-origin:0 50%;height:2px;background:var(--bone-4);z-index:0;pointer-events:none}.line-v{transform:none;transform-origin:50% 0;width:2px;height:auto}.line.is-owned{background:var(--mage);box-shadow:0 0 6px #9d7bff73}.line.is-locked{background:transparent;border-top:1px dashed var(--bone-4);height:0;opacity:.6}.line-v.is-locked{background:transparent;border-left:1px dashed var(--bone-4);border-top:0;width:0;opacity:.6}.node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--char-2);border:1.5px solid var(--rule-hi);cursor:pointer;transition:transform .1s;z-index:1;text-align:center;font-family:var(--display)}.node:hover{transform:translate(-50%,-50%) scale(1.02)}.node-type{font-family:var(--mono);font-size:8px;letter-spacing:.2em;color:var(--bone-4);margin-bottom:4px}.node-glyph{width:22px;height:22px;position:relative;margin-bottom:5px}.node-name{font-family:var(--mono);font-weight:700;font-size:9px;letter-spacing:.1em;color:var(--bone-2);line-height:1.1;max-width:90%;text-wrap:balance}.node-pips{display:flex;gap:2px;margin-top:5px}.node-pip{width:8px;height:5px;background:var(--char-3);border:1px solid var(--rule)}.node-pip.is-on{background:var(--mage);border-color:var(--mage)}.node-cost{font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--bone-3);margin-top:4px}.node.is-root{width:60px;height:60px;border-radius:50%}.node.is-core{width:96px;height:96px}.node.is-keystone{width:110px;height:110px}.node.is-talent{width:130px;height:134px;padding:10px 6px 8px}.node.is-talent.is-named{width:150px;height:144px}.node.is-hero-gate{width:220px;height:70px;flex-direction:row;gap:10px;padding:0 14px}.node.is-hero-gate .node-glyph{margin:0;width:18px;height:18px}.node.is-hero-gate .node-name{font-size:11px;letter-spacing:.14em}.node.is-hero-unlock{width:168px;height:88px;padding:8px 10px}.node.is-locked{opacity:.42;border-style:dashed;border-color:var(--bone-4)}.node.is-locked .node-name{color:var(--bone-4)}.node.is-locked .node-glyph{opacity:.6}.node.is-available{background:var(--char-2);border-color:var(--bone-2)}.node.is-available .node-name{color:var(--bone)}.node.is-available:before,.node.is-available:after{content:"";position:absolute;width:6px;height:6px;border:1.5px solid var(--bone-2);border-width:0}.node.is-available:before{top:-1px;left:-1px;border-top-width:1.5px;border-left-width:1.5px}.node.is-available:after{bottom:-1px;right:-1px;border-bottom-width:1.5px;border-right-width:1.5px}.node.is-owned{background:var(--char-2);border-color:var(--mage)}.node.is-owned .node-name{color:var(--bone)}.node.is-owned .node-glyph{color:var(--mage)}.node.is-maxed{background:var(--mage-soft);border-color:var(--mage);box-shadow:0 0 0 1px var(--mage),0 0 16px #9d7bff40}.node.is-maxed .node-name{color:var(--bone)}.node.is-maxed .node-type{color:var(--mage)}.node.is-maxed:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-mage);opacity:.4;pointer-events:none}.node.is-selected{box-shadow:0 0 0 2px var(--ink),0 0 0 4px var(--acid),0 0 28px #d6ff3a59;z-index:4}.node.is-selected .node-name{color:var(--bone)}.node-bracket{position:absolute;width:14px;height:14px;border:2px solid var(--acid);border-width:0;pointer-events:none;filter:drop-shadow(0 0 4px rgba(214,255,58,.6))}.node-bracket-tl{top:-8px;left:-8px;border-top-width:2px;border-left-width:2px}.node-bracket-tr{top:-8px;right:-8px;border-top-width:2px;border-right-width:2px}.node-bracket-bl{bottom:-8px;left:-8px;border-bottom-width:2px;border-left-width:2px}.node-bracket-br{bottom:-8px;right:-8px;border-bottom-width:2px;border-right-width:2px}.node-lock{position:absolute;top:-8px;right:-8px;width:18px;height:18px;background:var(--ink);border:1px solid var(--bone-4);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:9px;color:var(--bone-3);letter-spacing:0}.node-check{position:absolute;top:-8px;right:-8px;width:18px;height:18px;background:var(--mage);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:0}.node.is-hero-gate{background:var(--char);border:1.5px dashed var(--bone-4);opacity:.55}.node.is-hero-gate .node-type{color:var(--bone-4);margin:0}.node.is-hero-unlock{background:var(--char-2);border:1.5px solid var(--rule-hi);opacity:.55;border-style:dashed}.node.is-hero-unlock .node-name{font-size:12px;letter-spacing:.14em}.g-square{width:100%;height:100%;background:currentColor}.g-ring{width:100%;height:100%;border:2.5px solid currentColor;border-radius:50%}.g-diamond{width:100%;height:100%;background:currentColor;transform:rotate(45deg)}.g-bar{width:100%;height:4px;background:currentColor;margin-top:9px}.g-bar-2{width:60%;height:4px;background:currentColor;margin:4px auto 0}.g-dotgrid{display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:2px;width:100%;height:100%}.g-dotgrid span{background:currentColor}.g-dotgrid span.off{background:transparent}.g-triangle{width:0;height:0;border-left:11px solid transparent;border-right:11px solid transparent;border-bottom:18px solid currentColor;margin:2px auto 0}.g-cross{position:relative;width:100%;height:100%}.g-cross:before,.g-cross:after{content:"";position:absolute;background:currentColor}.g-cross:before{left:50%;top:0;bottom:0;width:4px;transform:translate(-50%)}.g-cross:after{top:50%;left:0;right:0;height:4px;transform:translateY(-50%)}.g-named-diamond{width:16px;height:16px;border:2px solid currentColor;transform:rotate(45deg);margin:3px auto 0}.g-circle-dot{width:18px;height:18px;border:2px solid currentColor;border-radius:50%;position:relative}.g-circle-dot:after{content:"";position:absolute;top:25%;right:25%;bottom:25%;left:25%;background:currentColor;border-radius:50%}.g-kingfisher{width:18px;height:14px;border:2px solid currentColor;position:relative;margin:4px auto 0}.g-kingfisher:before,.g-kingfisher:after{content:"";position:absolute;top:50%;width:8px;height:2px;background:currentColor;transform:translateY(-50%)}.g-kingfisher:before{left:-5px}.g-kingfisher:after{right:-5px}.g-stormseer{width:18px;height:18px;background:currentColor;clip-path:polygon(50% 0,100% 100%,0 100%)}.g-nullwright{width:18px;height:18px;border:2px solid currentColor}.node-glyph{color:var(--bone-3)}.node.is-available .node-glyph{color:var(--bone)}.node.is-owned .node-glyph,.node.is-maxed .node-glyph{color:var(--mage)}.node.is-locked .node-glyph{color:var(--bone-4)}.hero-gate-stack{display:flex;flex-direction:column;align-items:center;gap:3px}.hero-gate-req{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--bone-3)}.hero-gate-req-k{font-family:var(--mono);font-size:9px;letter-spacing:.14em}.hero-gate-req-v{font-family:var(--mono);font-size:10px;font-weight:700;color:var(--bone-2)}.tree-rib{position:absolute;left:0;top:0;bottom:0;width:24px;background:var(--hatch-bone);opacity:.4;pointer-events:none;border-right:1px solid var(--rule)}.inspector{border-left:1px solid var(--rule);padding:20px;display:flex;flex-direction:column;gap:16px;min-width:0}.inspector-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.inspector-eyebrow{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:var(--bone-3)}.inspector-eyebrow b{color:var(--acid);font-weight:700}.inspect-card{position:relative;background:var(--char-2);border:1px solid var(--rule-hi);box-shadow:4px 4px 0 0 var(--ink);padding:16px 16px 14px;display:flex;flex-direction:column;gap:12px}.inspect-card-state{position:absolute;top:-10px;left:12px;padding:3px 8px;background:var(--blood);color:var(--bone);font-family:var(--mono);font-weight:700;font-size:9px;letter-spacing:.2em;box-shadow:2px 2px 0 0 var(--ink)}.inspect-card-state.is-available{background:var(--bone);color:var(--ink)}.inspect-card-state.is-owned,.inspect-card-state.is-maxed{background:var(--mage);color:var(--ink)}.inspect-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.inspect-type{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--mage)}.inspect-cost{font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--bone-3)}.inspect-cost b{font-family:var(--display);font-size:16px;letter-spacing:.02em;color:var(--acid);font-weight:700;margin-right:2px}.inspect-name{font-family:var(--display);font-weight:700;font-size:26px;letter-spacing:.04em;margin:0;line-height:1.05;color:var(--bone)}.inspect-desc{font-size:13px;line-height:1.5;color:var(--bone-2);margin:0;text-wrap:pretty}.inspect-desc em{font-style:normal;color:var(--mage);font-weight:600}.inspect-rank-row{display:flex;align-items:center;justify-content:space-between;padding-top:8px;border-top:1px solid var(--rule)}.inspect-rank-row .k{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--bone-3)}.inspect-pips{display:flex;gap:4px}.inspect-pip{width:16px;height:8px;background:var(--char-3);border:1px solid var(--rule)}.inspect-pip.is-on{background:var(--mage);border-color:var(--mage)}.prereq-list{display:flex;flex-direction:column;gap:6px}.prereq-row{display:grid;grid-template-columns:18px 1fr auto;gap:8px;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.04em;padding:6px 8px;background:var(--char);border:1px solid var(--rule)}.prereq-mark{width:14px;height:14px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:10px}.prereq-row.is-met .prereq-mark{background:var(--mage);color:var(--ink)}.prereq-row.is-met .prereq-name{color:var(--bone)}.prereq-row.is-unmet .prereq-mark{background:var(--blood-2);color:var(--bone)}.prereq-row.is-unmet .prereq-name,.prereq-name{color:var(--bone-2)}.prereq-progress{color:var(--bone-3);font-family:var(--mono);font-size:10px}.prereq-row.is-met .prereq-progress{color:var(--mage)}.card-preview{position:relative;padding:10px;background:var(--char);border:1px solid var(--rule);display:flex;gap:10px;align-items:stretch}.card-preview-kicker{position:absolute;top:-8px;left:10px;padding:2px 6px;background:var(--char-2);border:1px solid var(--rule-hi);font-family:var(--mono);font-size:8px;letter-spacing:.2em;color:var(--bone-3)}.card-mini{width:78px;flex-shrink:0;aspect-ratio:2 / 3;background:var(--char-2);border:1px solid var(--rule-hi);box-shadow:2px 2px 0 0 var(--ink);display:flex;flex-direction:column;padding:6px 5px;position:relative;overflow:hidden}.card-mini-cost{position:absolute;top:3px;left:3px;width:16px;height:16px;background:var(--mage);color:var(--ink);font-family:var(--mono);font-weight:700;font-size:10px;display:flex;align-items:center;justify-content:center}.card-mini-art{flex:1;margin:14px 0 4px;background:repeating-linear-gradient(-45deg,rgba(157,123,255,.18) 0 2px,transparent 2px 6px),var(--char-3);border:1px solid var(--rule);position:relative}.card-mini-art:after{content:"";position:absolute;top:30%;right:30%;bottom:30%;left:30%;border:1.5px solid var(--mage);transform:rotate(45deg)}.card-mini-name{font-family:var(--mono);font-weight:700;font-size:7.5px;letter-spacing:.06em;color:var(--bone);text-align:center;line-height:1.1}.card-info{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.card-info-name{font-family:var(--display);font-weight:700;font-size:14px;letter-spacing:.04em;color:var(--bone)}.card-info-line{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--bone-2);line-height:1.4}.card-info-line b{color:var(--bone)}.card-info-tags{display:flex;gap:4px;flex-wrap:wrap;margin-top:auto}.card-info-tag{font-family:var(--mono);font-size:8px;letter-spacing:.18em;padding:2px 5px;border:1px solid var(--rule-hi);color:var(--bone-3)}.card-info-tag.is-mage{color:var(--mage);border-color:var(--mage)}.inspect-actions{display:grid;grid-template-columns:1fr auto;gap:8px}.invest-btn{padding:12px 14px;background:var(--char-3);border:1px solid var(--rule-hi);color:var(--bone-3);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.18em;cursor:not-allowed;box-shadow:3px 3px 0 0 var(--ink);display:flex;align-items:center;justify-content:space-between;gap:8px}.invest-btn.is-ready{background:var(--mage);color:var(--ink);border-color:var(--mage);cursor:pointer}.invest-btn.is-ready:hover{background:var(--mage-2);border-color:var(--mage-2)}.invest-btn .reason{font-family:var(--mono);font-weight:400;font-size:9px;letter-spacing:.16em;color:var(--blood);text-transform:uppercase}.refund-btn{padding:12px 14px;background:transparent;border:1px solid var(--rule);color:var(--bone-3);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.18em;cursor:pointer}.refund-btn:hover{border-color:var(--blood);color:var(--blood)}.legend{padding:14px;background:var(--char);border:1px solid var(--rule)}.legend-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.legend-head-mark{width:10px;height:10px;background:var(--hatch-mage);border:1px solid var(--mage)}.legend-head-label{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.22em;color:var(--bone-3)}.legend-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px 8px}.legend-cell{display:flex;flex-direction:column;align-items:center;gap:6px}.legend-swatch{position:relative;width:56px;height:56px;background:var(--char-2);border:1.5px solid var(--rule-hi);display:flex;align-items:center;justify-content:center}.legend-swatch.is-locked{opacity:.42;border-style:dashed;border-color:var(--bone-4)}.legend-swatch.is-available{border-color:var(--bone-2)}.legend-swatch.is-owned{border-color:var(--mage)}.legend-swatch.is-maxed{background:var(--mage-soft);border-color:var(--mage);box-shadow:0 0 0 1px var(--mage)}.legend-swatch.is-selected{box-shadow:0 0 0 2px var(--ink),0 0 0 3px var(--acid)}.legend-swatch.is-keystone{transform:rotate(45deg);border-color:var(--mage);background:var(--mage-soft)}.legend-swatch.is-keystone:after{content:"";width:30%;height:30%;background:var(--mage);transform:rotate(-45deg)}.legend-swatch-owned-tile{width:22px;height:22px;background:var(--mage)}.legend-swatch-owned-pips{position:absolute;bottom:4px;display:flex;gap:2px}.legend-swatch-owned-pips span{width:8px;height:4px}.legend-swatch-owned-pips span.is-on{background:var(--mage)}.legend-swatch-owned-pips span.is-off{border:1px solid var(--mage)}.legend-label{font-family:var(--mono);font-weight:700;font-size:9px;letter-spacing:.14em;color:var(--bone-2);text-align:center}.legend-cell.is-selected .legend-label{color:var(--acid)}.legend-cell.is-locked .legend-label{color:var(--bone-3)}.talents-spec{padding:12px 14px;background:var(--char);border:1px solid var(--rule);border-left:3px solid var(--mage);font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--bone-2);line-height:1.55}.talents-spec b{color:var(--bone);font-weight:700}.talents-spec-head{font-family:var(--display);font-size:10px;font-weight:700;letter-spacing:.22em;color:var(--bone-3);margin-bottom:6px}.talents-spec ul{margin:4px 0 0 14px;padding:0}.talents-spec li{list-style:square;margin:2px 0;color:var(--bone-2)}.talents-spec li b{color:var(--bone)}.talents-spec code{font-family:var(--mono);color:var(--mage);background:#9d7bff14;padding:0 4px}.talents-footer{display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;padding:14px 24px;border-top:1px solid var(--rule);background:var(--char);position:sticky;bottom:0;z-index:5;box-shadow:0 -8px 24px #0a0a0c99}.talents-summary-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.talents-summary-block{display:flex;flex-direction:column;gap:4px}.talents-summary-k{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.22em;color:var(--bone-3)}.talents-summary-v{font-family:var(--mono);font-weight:500;font-size:12px;letter-spacing:.04em;color:var(--bone)}.talents-summary-v b{color:var(--mage);font-weight:700}.talents-summary-chips{display:flex;gap:4px;flex-wrap:wrap}.talents-summary-chip{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--bone-2);padding:3px 6px;border:1px solid var(--rule-hi);background:var(--char-2)}.talents-summary-chip b{color:var(--mage);font-weight:700;margin-right:4px;font-family:var(--display)}.talents-summary-chip.is-mage{border-color:var(--mage);color:var(--mage)}.talents-summary-chip.is-mage b{color:var(--mage)}.talents-footer-actions{display:flex;align-items:center;gap:10px}.talents-footer-meta{font-family:var(--mono);font-size:10px;letter-spacing:.16em;color:var(--bone-3);display:flex;align-items:center;gap:6px}.talents-footer-meta .dot{width:6px;height:6px;background:var(--acid);border-radius:50%;box-shadow:0 0 6px var(--acid)}.class-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 6px;background:var(--mage-bg);border:1px solid var(--mage);color:var(--mage);font-family:var(--mono);font-weight:700;font-size:9px;letter-spacing:.18em}.talents-entry{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--char-2);border:1px solid var(--rule-hi);color:var(--bone);font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;cursor:pointer;--mage: #9d7bff}.talents-entry .glyph{width:12px;height:12px;border:1.5px solid var(--mage);transform:rotate(45deg);display:inline-block}.talents-entry:hover{border-color:var(--mage);color:var(--mage)}.prestige-pip-row{display:flex;gap:3px;margin-top:2px}.prestige-pip{width:10px;height:4px;background:var(--char-3);border:1px solid var(--rule)}.prestige-pip.is-on{background:gold;border-color:gold}.prestige-master-label{color:gold;letter-spacing:.18em}.prestige-btn:not(:disabled){border-color:gold;color:gold}.prestige-btn:disabled{opacity:.35;cursor:not-allowed}.prestige-slot{position:absolute;transform:translate(-50%,-50%);width:130px;height:86px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;padding:6px 8px;background:var(--char-2);border:2px dashed gold;cursor:pointer;font-family:var(--mono);color:var(--bone);z-index:3}.prestige-slot:hover{background:var(--char-3)}.prestige-slot.is-filled{border-style:solid}.prestige-slot-label{font-size:9px;letter-spacing:.18em;color:gold;font-weight:700}.prestige-slot-plus{font-family:var(--display);font-size:26px;color:gold;line-height:1}.prestige-slot-hint{font-size:9px;letter-spacing:.14em;color:var(--bone-3)}.prestige-slot-card{font-size:12px;font-weight:700;letter-spacing:.06em;text-align:center;line-height:1.1}.prestige-slot-cap{font-size:11px;color:gold;font-weight:700}.prestige-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b8;display:flex;align-items:center;justify-content:center;z-index:100}.prestige-modal{background:var(--char-2);border:2px solid gold;box-shadow:6px 6px 0 0 var(--ink);padding:24px 28px;max-width:460px;font-family:var(--display);color:var(--bone)}.prestige-modal-title{margin:0 0 12px;font-size:18px;letter-spacing:.14em;color:gold}.prestige-modal-body{font-family:var(--display);font-size:14px;line-height:1.5;margin:0 0 16px;color:var(--bone-2)}.prestige-modal-meta{font-size:12px;letter-spacing:.14em;color:var(--bone-3);margin:0 0 18px}.prestige-modal-actions{display:flex;gap:10px;justify-content:flex-end}.prestige-btn-confirm{border-color:gold;color:gold}.prestige-picker{width:min(960px,90vw);max-width:min(960px,90vw);max-height:86vh;display:flex;flex-direction:column;padding:18px 22px}.prestige-picker-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.prestige-picker-clear{align-self:flex-start;margin-bottom:12px;border-color:var(--bone-3);color:var(--bone-2)}.prestige-picker-body{flex:1;overflow-y:auto;padding-right:4px;display:flex;flex-direction:column;gap:18px}.prestige-picker-group-head{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;margin-bottom:8px;border-bottom:1px solid var(--rule);padding-bottom:4px}.prestige-picker-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;gap:10px}.prestige-picker-card{position:relative;width:var(--card-w);background:transparent;border:2px solid transparent;padding:4px;cursor:pointer}.prestige-picker-card:hover{border-color:gold}.prestige-picker-card.is-current{border-color:gold;background:#ffd70014}.prestige-picker-card.is-non-operational>*{filter:grayscale(.85) brightness(.6);opacity:.78}.prestige-picker-card.is-non-operational:hover>*{filter:grayscale(.65) brightness(.75);opacity:.92}.prestige-picker-nonop-banner{position:absolute;top:50%;left:50%;width:calc(var(--card-w) * 1.1);transform:translate(-50%,-50%) rotate(-12deg);z-index:5;padding:6px 0;text-align:center;font-family:var(--mono, ui-monospace, monospace);font-size:13px;font-weight:800;letter-spacing:.18em;color:#fff;background:#be1e1eeb;border-top:2px solid #ff5a5a;border-bottom:2px solid #ff5a5a;box-shadow:0 4px 14px #0000008c;text-shadow:0 1px 2px rgba(0,0,0,.65);pointer-events:none}.prestige-picker-empty{font-family:var(--mono);font-size:11px;color:var(--bone-3);letter-spacing:.1em}.prestige-picker-class-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.prestige-picker-class-card{display:flex;flex-direction:column;align-items:flex-start;gap:6px;padding:14px 16px;background:var(--char-2);border:2px solid var(--rule-hi);border-left-width:6px;border-left-color:var(--cls-accent, var(--bone-3));cursor:pointer;text-align:left;font-family:var(--display);color:var(--bone)}.prestige-picker-class-card:hover{border-color:gold;border-left-color:var(--cls-accent, gold)}.prestige-picker-class-name{font-size:16px;font-weight:700;letter-spacing:.12em;color:var(--cls-accent, var(--bone))}.prestige-picker-class-tag{font-size:11px;color:var(--bone-3);line-height:1.3}.prestige-picker-class-meta{font-size:10px;letter-spacing:.14em;color:var(--bone-3);margin-top:auto}.prestige-picker-filters{display:flex;gap:8px;margin-bottom:10px}.prestige-picker-filter-chip{font-family:var(--mono);font-weight:700;font-size:11px;letter-spacing:.16em;padding:6px 14px;background:var(--char-2);border:1px solid var(--rule-hi);color:var(--bone-3);cursor:pointer}.prestige-picker-filter-chip.is-on{background:gold;color:var(--ink);border-color:gold}.prestige-picker-card-meta{display:flex;align-items:center;justify-content:space-between;gap:6px;margin-top:4px;font-size:11px;font-weight:700;color:gold;letter-spacing:.1em}.prestige-picker-card-tag{background:gold;color:var(--ink);padding:1px 6px;font-size:9px;letter-spacing:.16em}.mastery-panel.talents-panel{position:relative;inset:auto;width:100%;flex:1;min-height:0;display:flex;flex-direction:column;gap:18px;padding:18px 22px 28px;overflow-y:auto}.mastery-panel .prestige-slot{position:static;transform:none;width:var(--card-w);height:auto;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;z-index:auto}.mastery-panel .prestige-slot-card{cursor:pointer}.mastery-slot-row{display:flex;flex-wrap:wrap;gap:16px}.mastery-level{display:flex;flex-direction:column;gap:6px;max-width:420px}.mastery-level-num{font-size:13px;letter-spacing:.18em;color:var(--bone)}.mastery-xp-bar{height:8px;background:var(--ink);box-shadow:inset 0 0 0 1px var(--char);overflow:hidden}.mastery-xp-bar>i{display:block;height:100%;background:var(--coin);transition:width .24s ease-out}.mastery-xp-text{font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.mastery-section{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--char);padding-top:16px}.mastery-section-head{font-size:11px;letter-spacing:.22em;color:var(--bone-2)}.mastery-section-hint{font-size:11px;color:var(--bone-3);max-width:480px}.mastery-signature-row{display:flex;flex-wrap:wrap;gap:16px}.mastery-signature-card{display:flex;flex-direction:column;align-items:center;gap:6px}.mastery-copies{font-size:11px;letter-spacing:.1em;color:var(--bone-2)}.mastery-copies.is-maxed{color:var(--coin)}.mastery-picker-actions{display:flex;gap:8px;align-items:center}.stage-loadout .stage-pane{overflow-y:auto}.loadout-exp-detail{font-size:11px;color:var(--bone-3, #a89e8e);font-weight:400;letter-spacing:.02em}.loadout-class-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--sp-3);padding:0 var(--sp-6) var(--sp-4)}.loadout-class-chip{--cls-accent: var(--bone-2);display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--sp-3);background:var(--char);border:1px solid var(--rule);border-left:3px solid var(--cls-accent);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:background .1s,border-color .1s,transform .1s}.loadout-class-chip:hover{background:var(--char-2);border-color:var(--rule-hi);transform:translate(-1px,-1px)}.loadout-class-chip.is-selected{background:var(--char-2);border-color:var(--cls-accent);box-shadow:0 0 0 1px var(--cls-accent) inset,2px 2px #d6ff3a26}.loadout-class-chip-name{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.06em;color:var(--cls-accent)}.loadout-class-chip-tag{font-size:11px;line-height:1.4;color:var(--bone-3);letter-spacing:.02em;min-height:calc(1.4em * 3)}.loadout-class-chip-stats{font-size:10px;color:var(--bone-3);letter-spacing:.08em}.loadout-guide{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:var(--sp-4);margin:var(--sp-2) var(--sp-6) var(--sp-4);padding:var(--sp-4);border:1px solid var(--rule);border-left:3px solid var(--class-accent, var(--rule-hi));background:var(--char)}@media(max-width:980px){.loadout-guide{grid-template-columns:1fr}}.loadout-guide-class-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--sp-3);margin-bottom:var(--sp-2)}.loadout-guide-class-name{font-size:16px;font-weight:700;letter-spacing:.18em;color:var(--class-accent, var(--bone))}.loadout-guide-class-tagline{font-family:var(--mono, monospace);font-size:10px;letter-spacing:.16em;color:var(--bone-3);text-transform:uppercase}.loadout-guide-class-desc{margin:0 0 var(--sp-2);font-size:13px;line-height:1.5;color:var(--bone)}.loadout-guide-class-mech{margin:0;font-size:12px;line-height:1.5;color:var(--bone-2)}.loadout-guide-class-mech-label{display:inline-block;margin-right:4px;padding:1px 5px;font-size:9px;letter-spacing:.18em;color:var(--ink, #0a0a0a);background:var(--class-accent, var(--rule-hi));border-radius:2px;vertical-align:1px}.loadout-guide-deck{padding-left:var(--sp-4);border-left:1px solid var(--rule)}@media(max-width:980px){.loadout-guide-deck{padding-left:0;border-left:0;border-top:1px solid var(--rule);padding-top:var(--sp-3)}}.loadout-guide-deck-head{font-size:10px;letter-spacing:.18em;color:var(--bone-3);margin-bottom:var(--sp-2)}.loadout-guide-deck-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--sp-2)}.loadout-guide-deck-item{font-size:11px;line-height:1.55;color:var(--bone-2);padding-left:12px;position:relative}.loadout-guide-deck-item:before{content:"›";position:absolute;left:0;top:0;color:var(--class-accent, var(--rule-hi));font-weight:700}.loadout-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--sp-4);padding:0 var(--sp-6) var(--sp-6)}@media(max-width:980px){.loadout-grid{grid-template-columns:1fr}}.loadout-section-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);padding:0 0 var(--sp-3);border-bottom:1px solid var(--rule);margin-bottom:var(--sp-3)}.loadout-section-title{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;color:var(--bone)}.loadout-section-sub{font-family:var(--mono);font-size:10px;letter-spacing:.08em;color:var(--bone-3)}.loadout-deck-empty-btn{font-family:var(--mono);font-size:10px;letter-spacing:.1em;padding:2px 8px;background:transparent;color:var(--bone-3);border:1px solid var(--rule-hi);cursor:pointer;transition:color .1s,border-color .1s,background .1s}.loadout-deck-empty-btn:not(:disabled):hover{color:var(--blood, #ff3838);border-color:var(--blood, #ff3838);background:#0003}.loadout-deck-empty-btn:disabled{opacity:.35;cursor:not-allowed}.loadout-pool-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;gap:var(--sp-3)}.loadout-pool-slot{position:relative;display:flex;width:var(--card-w);height:var(--card-h)}.loadout-pool-slot-count{position:absolute;right:4px;bottom:4px;padding:2px 6px;font-size:10px;letter-spacing:.08em;color:var(--bone-2);background:var(--ink);border:1px solid var(--rule-hi);pointer-events:none}.loadout-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:var(--sp-3);min-height:170px;background:var(--char);border:1px solid var(--rule-hi);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform .1s,border-color .1s,box-shadow .1s}.loadout-card:hover{border-color:var(--bone-2);transform:translate(-1px,-1px);box-shadow:3px 3px #0006}.loadout-card.is-disabled{opacity:.45;cursor:not-allowed}.loadout-card.is-disabled:hover{transform:none;border-color:var(--rule-hi);box-shadow:none}.loadout-card-attack{border-left:3px solid var(--blood)}.loadout-card-defend{border-left:3px solid var(--cobalt)}.loadout-card-utility{border-left:3px solid var(--acid)}.loadout-card-corner-tl,.loadout-card-corner-br{position:absolute;width:8px;height:8px;border:1px solid var(--bone-3)}.loadout-card-corner-tl{top:4px;left:4px;border-right:0;border-bottom:0}.loadout-card-corner-br{bottom:4px;right:4px;border-left:0;border-top:0}.loadout-card-head{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.loadout-card-name{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.04em;color:var(--bone)}.loadout-card-cost{font-family:var(--mono);font-weight:700;font-size:13px;color:var(--acid);padding:2px 6px;border:1px solid var(--rule-hi)}.loadout-card-text{flex:1;font-size:11px;line-height:1.4;color:var(--bone-2)}.loadout-card-foot{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);border-top:1px solid var(--rule);padding-top:6px}.loadout-card-kind{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.12em;color:var(--bone-3)}.loadout-card-owned{font-size:11px;letter-spacing:.08em;color:var(--bone-2)}.loadout-deck-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;gap:var(--sp-3)}.loadout-deck-slot{position:relative;display:flex;width:var(--card-w);height:var(--card-h)}.loadout-deck-slot-count{position:absolute;top:-6px;right:-6px;padding:2px 6px;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--bone);background:var(--ink);border:1px solid var(--bone-2);pointer-events:none;z-index:1}.loadout-deck-empty{padding:var(--sp-4);border:1px dashed var(--rule);color:var(--bone-3);font-size:12px;letter-spacing:.02em}.loadout-deck-row{display:grid;grid-template-columns:36px auto 1fr 24px 28px;align-items:center;gap:var(--sp-2);padding:6px var(--sp-3);background:var(--char);border:1px solid var(--rule);border-left-width:3px}.loadout-deck-row-attack{border-left-color:var(--blood)}.loadout-deck-row-defend{border-left-color:var(--cobalt)}.loadout-deck-row-utility{border-left-color:var(--acid)}.loadout-deck-row-count{font-weight:700;letter-spacing:.04em;color:var(--bone)}.loadout-deck-row-name{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.04em;color:var(--bone)}.loadout-deck-row-text{font-size:11px;color:var(--bone-3);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.loadout-deck-row-cost{text-align:right;color:var(--acid);font-weight:700}.loadout-deck-row-remove{width:24px;height:24px;border:1px solid var(--rule-hi);background:transparent;color:var(--bone-2);font:inherit;font-weight:700;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.loadout-deck-row-remove:hover{background:var(--blood);border-color:var(--blood);color:var(--ink)}.loadout-slots{margin-top:var(--sp-4)}.loadout-slots-head{margin-bottom:var(--sp-3)}.loadout-slots-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--sp-2)}.loadout-slot{display:flex;flex-direction:column;gap:6px;padding:var(--sp-3);background:var(--char);border:1px dashed var(--rule-hi);min-height:92px}.loadout-slot.is-filled{border-style:solid;border-color:var(--rule-hi)}.loadout-slot-head{display:flex;justify-content:space-between;align-items:center}.loadout-slot-num{font-size:9px;letter-spacing:.14em;color:var(--bone-3)}.loadout-slot-clear{width:18px;height:18px;border:1px solid var(--rule-hi);background:transparent;color:var(--bone-3);font:inherit;font-size:10px;cursor:pointer}.loadout-slot-clear:hover{background:var(--blood);border-color:var(--blood);color:var(--ink)}.loadout-slot-body{flex:1;font-size:11px;letter-spacing:.02em;color:var(--bone-2);min-height:28px}.loadout-slot.is-empty .loadout-slot-body{color:var(--bone-4);font-style:italic}.loadout-slot-actions{display:flex;gap:6px}.loadout-slot-actions .btn-small{flex:1;padding:4px 8px;font-size:9px}.btn.is-debug-fired{animation:btn-debug-flash .54s ease-out}@keyframes btn-debug-flash{0%{box-shadow:0 0 0 0 var(--coin);background:var(--coin);color:var(--ink)}60%{box-shadow:0 0 0 6px transparent}to{box-shadow:0 0 0 0 transparent}}.kv-v.is-warn{color:var(--ember, var(--blood))}.codex-reveal-all{font-family:var(--mono);font-size:10px;letter-spacing:.1em;padding:4px 10px;background:transparent;color:var(--bone-3);border:1px solid var(--rule-hi);cursor:pointer;transition:color .1s,border-color .1s,background .1s;align-self:center}.codex-reveal-all:hover{color:var(--blood, #ff3838);border-color:var(--blood, #ff3838);background:#0003}.codex-tabs{display:flex;gap:0;padding:0 var(--sp-6);border-bottom:1px solid var(--rule)}.codex-tab{padding:8px 16px;background:transparent;border:1px solid var(--rule);border-bottom:0;color:var(--bone-3);font:inherit;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.12em;cursor:pointer;transition:background .1s,color .1s;margin-right:-1px}.codex-tab:hover{background:var(--char);color:var(--bone-2)}.codex-tab.is-active{background:var(--char-2);color:var(--acid);border-color:var(--acid);border-bottom-color:var(--char-2)}.codex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--sp-3);padding:var(--sp-4) var(--sp-6) var(--sp-6);flex:1;min-height:0;overflow-y:auto}.codex-grid-wrap{position:relative;flex:1;min-height:0;display:flex;flex-direction:column}.codex-card-grid{display:grid;grid-template-columns:repeat(auto-fill,var(--card-w));justify-content:start;align-content:start;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6) var(--sp-6);flex:1;min-height:0;overflow-y:auto}.codex-entry{position:relative;display:flex;flex-direction:column;gap:6px;padding:var(--sp-3);background:var(--char);border:1px solid var(--rule-hi);min-height:110px}.codex-vestige{--cv-accent: var(--bone-2);border-left:3px solid var(--cv-accent)}.codex-vestige.is-common{--cv-accent: var(--bone-2)}.codex-vestige.is-rare{--cv-accent: var(--cobalt)}.codex-vestige.is-epic{--cv-accent: var(--jester)}.codex-vestige.is-legendary{--cv-accent: var(--coin)}.codex-vestige.is-mythic{--cv-accent: var(--blood)}.codex-vestige .codex-entry-name,.codex-vestige .codex-entry-cost{color:var(--cv-accent)}.codex-entry.is-locked{background:transparent;border-style:dashed;color:var(--bone-4)}.codex-entry.is-locked .codex-entry-name,.codex-entry.is-locked .codex-entry-body{color:var(--bone-4)}.codex-entry-head{display:flex;justify-content:space-between;align-items:baseline;gap:6px}.codex-entry-name{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.04em;color:var(--bone)}.codex-entry-cost{font-size:11px;letter-spacing:.04em;color:var(--acid);border:1px solid var(--rule-hi);padding:1px 6px}.codex-entry.is-locked .codex-entry-cost{color:var(--bone-4)}.codex-entry-body{flex:1;font-size:11px;line-height:1.4;color:var(--bone-2)}.codex-entry-foot{font-size:9px;letter-spacing:.16em;color:var(--bone-4);padding-top:6px;border-top:1px solid var(--rule)}.codex-controls{display:flex;flex-direction:column;gap:var(--sp-2);padding:0 var(--sp-5) var(--sp-3);border-bottom:1px solid var(--rule);margin-bottom:var(--sp-3)}.codex-search{width:100%;padding:8px 10px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone);font-family:var(--mono);font-size:12px;letter-spacing:.04em}.codex-search::placeholder{color:var(--bone-4)}.codex-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--sp-2)}.codex-filter-label{font-size:9px;font-weight:800;letter-spacing:.16em;color:var(--bone-3)}.codex-chips{display:flex;flex-wrap:wrap;gap:4px}.codex-chip{--chip-accent: var(--bone-2);font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.12em;padding:3px 8px;background:transparent;color:var(--bone-3);border:1px solid var(--rule);cursor:pointer;transition:color 80ms,border-color 80ms,background 80ms}.codex-chip:hover{color:var(--bone);border-color:var(--rule-hi)}.codex-chip.is-on{color:var(--ink);background:var(--chip-accent);border-color:var(--chip-accent)}.codex-select{font-family:var(--mono);font-size:11px;padding:4px 6px;background:var(--char);color:var(--bone);border:1px solid var(--rule-hi)}.codex-clear{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.12em;padding:3px 8px;background:var(--char-2);color:var(--bone-3);border:1px solid var(--rule);cursor:pointer}.codex-clear:hover:not(:disabled){color:var(--bone);border-color:var(--rule-hi)}.codex-clear:disabled{opacity:.4;cursor:default}.codex-result-count{margin-left:auto;font-size:10px;color:var(--bone-3);letter-spacing:.08em}.codex-toggle{display:inline-flex;align-items:center;gap:6px;font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--bone-3);cursor:pointer;-webkit-user-select:none;user-select:none}.codex-toggle:hover{color:var(--bone)}.codex-toggle input{cursor:pointer}.codex-enemy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));align-items:stretch;gap:var(--sp-3);padding:var(--sp-4) var(--sp-6) var(--sp-6);flex:1;min-height:0;overflow-y:auto}.codex-enemy-grid .enemy-card{width:100%;min-height:140px}.codex-enemy-locked{min-height:140px}.enemy-detail{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--sp-5)}.enemy-detail-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.enemy-detail-panel{position:relative;background:var(--char-2, #1a1a20);border:1px solid var(--rule-hi);box-shadow:0 24px 64px #0009;max-width:720px;width:100%;max-height:86vh;display:flex;flex-direction:column}.enemy-detail-head{position:relative;display:flex;flex-direction:column;padding:var(--sp-4) var(--sp-5) var(--sp-3);border-bottom:1px solid var(--rule)}.enemy-detail-eyebrow{font-size:10px;letter-spacing:.18em;color:var(--bone-4)}.enemy-detail-title{font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:.06em;color:var(--bone);margin:2px 0 0}.enemy-detail-close{position:absolute;top:var(--sp-3);right:var(--sp-3);width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--rule-hi);color:var(--bone-3);font-size:14px;cursor:pointer;transition:color 80ms,border-color 80ms,background 80ms}.enemy-detail-close:hover{color:var(--blood);border-color:var(--blood);background:#ff383814}.enemy-detail-body{display:grid;grid-template-columns:220px 1fr;gap:var(--sp-4);padding:var(--sp-4) var(--sp-5);overflow-y:auto}.enemy-detail-preview{align-self:start;position:sticky;top:0}.enemy-detail-preview .enemy-card{width:220px}.enemy-detail-sections{display:flex;flex-direction:column;gap:var(--sp-4);min-width:0}@media(max-width:640px){.enemy-detail-body{grid-template-columns:1fr}.enemy-detail-preview{justify-self:center;position:static}}.enemy-detail-section{display:flex;flex-direction:column;gap:6px}.enemy-detail-section-title{font-size:10px;font-weight:800;letter-spacing:.18em;color:var(--acid);border-bottom:1px solid var(--rule);padding-bottom:4px}.enemy-detail-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:6px;list-style:none;padding:0;margin:0}.enemy-detail-stat{display:flex;flex-direction:column;padding:6px 8px;background:var(--char);border:1px solid var(--rule)}.enemy-detail-stat-k{font-size:9px;letter-spacing:.14em;color:var(--bone-4)}.enemy-detail-stat-v{font-size:16px;font-weight:700;color:var(--bone)}.enemy-detail-rows{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:4px}.enemy-detail-row{display:grid;grid-template-columns:minmax(110px,auto) auto 1fr;gap:8px;align-items:baseline;padding:4px 6px;background:var(--char);border-left:2px solid var(--rule-hi)}.enemy-detail-row-label{font-size:11px;font-weight:700;letter-spacing:.06em;color:var(--bone)}.enemy-detail-row-pct{font-size:11px;color:var(--acid);font-weight:700}.enemy-detail-row-target{font-size:11px;color:var(--bone-2);letter-spacing:.04em}.enemy-detail-row-sub{font-size:11px;line-height:1.4;color:var(--bone-3);grid-column:1 / -1}.enemy-detail-row-src{font-size:9px;color:var(--bone-4);letter-spacing:.1em}.enemy-detail-line{font-size:11px;line-height:1.4;color:var(--bone-2);margin:0}.enemy-detail-empty{padding:var(--sp-5);text-align:center;color:var(--bone-3)}.codex-entry-achievement.is-locked .codex-entry-name{color:var(--bone-3, #a89e8e)}.codex-entry-achievement.is-locked .codex-entry-cost{color:var(--bone-4, #5a544a)}.codex-entry-achievement.is-unlocked{border-left:3px solid var(--acid, #d6ff3a);background:var(--char-2, #1f1c18)}.codex-entry-achievement.is-unlocked .codex-entry-name{color:var(--acid, #d6ff3a)}.codex-entry-achievement.is-unlocked .codex-entry-cost{color:var(--ink, #0a0a0c);background:var(--acid, #d6ff3a);padding:1px 5px}.dungeon-reward-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9000;display:flex;align-items:center;justify-content:center}.dungeon-reward-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#08080ab8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:dungeonRewardFade .22s ease-out}.dungeon-reward-panel{position:relative;display:flex;flex-direction:column;align-items:center;gap:var(--sp-3, 12px);max-width:min(92vw,920px);padding:var(--sp-5, 28px) var(--sp-5, 28px) var(--sp-4, 20px);background:var(--ink-1, #14141a);border:1px solid color-mix(in srgb,var(--acid, #d6ff3a) 28%,transparent);border-radius:10px;box-shadow:0 0 0 1px #00000080,0 24px 80px #0009,0 0 48px color-mix(in srgb,var(--acid, #d6ff3a) 12%,transparent);animation:dungeonRewardRise .26s cubic-bezier(.2,.9,.3,1);text-align:center}.dungeon-reward-kicker{font-size:10px;letter-spacing:.18em;color:var(--bone-3, #9aa0a6);font-weight:700}.dungeon-reward-title{font-family:var(--display, inherit);font-weight:700;font-size:24px;letter-spacing:.04em;margin:0;color:var(--acid, #d6ff3a)}.dungeon-reward-desc{max-width:52ch;margin:0 0 var(--sp-2, 8px);font-size:13px;line-height:1.5;color:var(--bone-2, #c7ccd1)}.dungeon-reward-grid{display:flex;flex-wrap:wrap;gap:var(--sp-3, 12px);align-items:stretch;justify-content:center}.dungeon-reward-card{flex:0 0 var(--card-w, 168px)}.dungeon-reward-claim{margin-top:var(--sp-3, 12px);padding:10px 28px;font-family:var(--display, inherit);font-weight:700;font-size:14px;letter-spacing:.08em;color:#0c0c0e;background:var(--acid, #d6ff3a);border:none;border-radius:6px;cursor:pointer;transition:filter .12s ease}.dungeon-reward-claim:hover{filter:brightness(1.1)}@keyframes dungeonRewardFade{0%{opacity:0}to{opacity:1}}@keyframes dungeonRewardRise{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.codex-craft-trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;margin:0;padding:0;background:none;cursor:pointer;display:block;width:100%;text-align:inherit}.codex-craft-trigger:focus-visible{outline:2px solid var(--acid);outline-offset:3px;border-radius:8px}.craft-sim{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center}.craft-sim-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.craft-sim-panel{position:relative;width:min(960px,94vw);max-height:92vh;overflow:auto;background:var(--char);border:1px solid var(--rule-hi);border-radius:12px;padding:18px 20px 22px;box-shadow:0 24px 60px #00000080}.craft-sim-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.craft-sim-title{font-family:var(--display);color:var(--acid);margin:0}.craft-sim-sub{color:var(--bone);opacity:.7;margin:2px 0 0;font-size:12px}.craft-sim-current{display:grid;place-items:center;margin:14px 0}.craft-sim-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:16px}.craft-sim-tiers{display:flex;flex-wrap:wrap;gap:4px}.craft-sim-tier{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--rule);background:transparent;color:var(--bone);padding:4px 8px;border-radius:6px;font-size:11px;cursor:pointer}.craft-sim-tier.is-active{border-color:var(--acid);color:var(--acid)}.craft-sim-actions{display:flex;gap:8px}.craft-sim-candidates{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.craft-sim-candidate{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px;border:1px solid var(--rule);border-radius:10px;background:#ffffff05}.craft-sim-candidate.is-bittersweet{border-color:var(--blood)}.craft-sim-candidate-head{display:flex;align-items:center;gap:8px;font-size:11px;width:100%}.craft-sim-tier-tag{color:var(--acid);font-weight:700}.craft-sim-wild{color:var(--bone);opacity:.6}.craft-sim-warn{margin-left:auto;color:var(--blood);font-weight:700}.craft-sim-label{font-size:12px;color:var(--bone);text-align:center;min-height:2.4em}@media(max-width:720px){.craft-sim-candidates{grid-template-columns:1fr}}.shop-hint{display:inline-flex;align-items:center;gap:var(--sp-2);padding:6px var(--sp-3);background:var(--char);border:1px solid var(--rule-hi);font-size:11px;letter-spacing:.02em;color:var(--bone-2);cursor:help;outline:none;max-width:360px}.shop-hint:hover,.shop-hint:focus{border-color:var(--acid);color:var(--bone)}.shop-hint-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--acid);color:var(--acid);font-family:var(--display);font-weight:700;font-size:9px;flex-shrink:0}.shop-hint-text{font-family:var(--mono);font-size:10px;letter-spacing:.04em}.shop-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--sp-3);padding:var(--sp-4) var(--sp-6)}.shop-class-card{--cls-accent: var(--bone-2);display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--char);border:1px solid var(--rule);border-left:3px solid var(--cls-accent);min-height:150px}.shop-class-head{display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2)}.shop-class-name{font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.06em;color:var(--cls-accent)}.shop-class-tag{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.14em;color:var(--bone-3);padding:1px 6px;border:1px solid var(--rule-hi)}.shop-class-tagline{flex:1;margin:0;font-size:12px;line-height:1.4;color:var(--bone-2);letter-spacing:.02em}.shop-class-actions{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-top:var(--sp-2)}.shop-buy{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;background:transparent;border:1px solid var(--rule-hi);color:var(--bone);font:inherit;cursor:pointer;transition:background .1s,border-color .1s,transform .1s,color .1s}.shop-buy:hover{transform:translate(-1px,-1px);box-shadow:2px 2px #0006}.shop-buy-kicker{font-family:var(--display);font-weight:700;font-size:8px;letter-spacing:.16em;color:var(--bone-3)}.shop-buy-price{font-size:13px;font-weight:700;letter-spacing:.04em}.shop-buy-gold{border-color:var(--coin);color:var(--coin)}.shop-buy-gold:hover{background:#f1c40f14;border-color:var(--coin)}.shop-buy-gold .shop-buy-kicker{color:var(--coin)}.shop-buy-cash{background:var(--acid);border-color:var(--acid);color:var(--ink)}.shop-buy-cash:hover{background:var(--acid-2);border-color:var(--acid-2)}.shop-buy-cash .shop-buy-kicker{color:var(--ink)}.shop-class-card.is-owned{background:color-mix(in srgb,var(--char) 80%,transparent);opacity:.92}.shop-class-card.is-owned .shop-class-tag{color:var(--acid);border-color:var(--acid)}.shop-owned-chip{grid-column:1 / -1;display:flex;align-items:center;justify-content:center;padding:6px 8px;background:#d6ff3a14;border:1px solid var(--acid);color:var(--acid);font-size:11px;font-weight:700;letter-spacing:.16em;cursor:default;-webkit-user-select:none;user-select:none}.shop-foot{padding:0 var(--sp-6) var(--sp-6)}.shop-foot-line{font-size:10px;letter-spacing:.14em;color:var(--bone-4)}.stage-vfx{display:flex}.vfx-subnav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--bone-4, #3a3a44)}.vfx-subnav-left{display:flex;align-items:center;gap:24px}.vfx-subnav-right{display:flex;align-items:center;gap:18px}.vfx-crumb{font-family:var(--display, system-ui);letter-spacing:.18em;color:var(--bone-3, #a8a59a);font-weight:700;font-size:13px}.vfx-crumb-sep{color:var(--bone-4, #3a3a44);padding:0 6px}.vfx-crumb-cur{color:var(--bone, #ebe8de)}.vfx-tabs{display:flex;gap:4px}.vfx-tab{background:transparent;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);padding:8px 16px;font-family:var(--display, system-ui);font-weight:700;letter-spacing:.18em;font-size:12px;cursor:pointer}.vfx-tab:hover{color:var(--bone, #ebe8de)}.vfx-tab.is-active{background:var(--bone, #ebe8de);color:var(--char, #0a0a0c);border-color:var(--bone, #ebe8de)}.vfx-hint{display:flex;align-items:center;gap:6px;color:var(--bone-3, #a8a59a);font-size:11px;letter-spacing:.05em}.vfx-hint-icon{display:inline-flex;width:14px;height:14px;border-radius:50%;border:1px solid var(--bone-3, #a8a59a);align-items:center;justify-content:center;font-size:10px;font-weight:700}.vfx-stat{display:flex;flex-direction:column;align-items:flex-end}.vfx-stat-k{font-size:9px;letter-spacing:.16em;color:var(--bone-3, #a8a59a);text-transform:uppercase}.vfx-stat-v{font-size:14px;color:var(--bone, #ebe8de);font-weight:700}.vfx-stat-v.is-acid{color:var(--acid, #d6ff3a)}.vfx-cust{display:grid;grid-template-columns:260px 360px 1fr;gap:12px;margin-top:16px;min-height:0;flex:1}.vfx-cust-col{display:flex;flex-direction:column;background:var(--char, #0a0a0c);border:1px solid var(--bone-4, #3a3a44);min-height:0}.vfx-cust-col.is-preview{background:transparent;border:none}.vfx-cust-col-head{display:flex;justify-content:space-between;align-items:baseline;padding:10px 12px;border-bottom:1px solid var(--bone-4, #3a3a44)}.vfx-cust-col-title{font-size:11px;letter-spacing:.18em;color:var(--bone, #ebe8de);font-weight:700}.vfx-cust-col-meta{font-size:10px;letter-spacing:.14em;color:var(--bone-3, #a8a59a)}.vfx-cust-col-body{flex:1;overflow-y:auto;padding:8px;display:flex;flex-direction:column;gap:4px}.vfx-cust-group-label{font-size:9px;letter-spacing:.16em;color:var(--bone-4, #3a3a44);padding:10px 4px 4px;border-bottom:1px solid var(--bone-4, #3a3a44);margin-bottom:4px}.vfx-cust-group-label:first-child{padding-top:4px}.vfx-cat-row{display:grid;grid-template-columns:36px 1fr auto;gap:8px;align-items:center;background:transparent;border:1px solid transparent;border-left:3px solid var(--bone-4, #3a3a44);padding:8px 8px 8px 10px;color:var(--bone, #ebe8de);cursor:pointer;text-align:left}.vfx-cat-row:hover{border-color:var(--bone-3, #a8a59a)}.vfx-cat-row.is-selected{background:#d6ff3a0f;border-color:var(--acid, #d6ff3a);border-left-color:var(--acid, #d6ff3a)}.vfx-cat-row-icon{display:inline-flex;width:32px;height:32px;background:var(--char-2, #14141a);align-items:center;justify-content:center;font-size:11px;color:var(--bone-3, #a8a59a);letter-spacing:.1em}.vfx-cat-row-mid{display:flex;flex-direction:column;gap:2px;min-width:0}.vfx-cat-row-name{font-size:12px;font-weight:700;letter-spacing:.08em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vfx-cat-row-sub{font-size:9px;color:var(--bone-3, #a8a59a);letter-spacing:.14em}.vfx-cat-row-count{font-size:11px;color:var(--bone-3, #a8a59a)}.vfx-slot-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;background:transparent;border:1px solid var(--bone-4, #3a3a44);border-left:3px solid var(--bone-4, #3a3a44);color:var(--bone, #ebe8de);cursor:pointer;text-align:left;margin-bottom:6px}.vfx-slot-row:hover{border-color:var(--bone-3, #a8a59a)}.vfx-slot-row.is-selected{background:#d6ff3a0f;border-color:var(--acid, #d6ff3a);border-left-color:var(--acid, #d6ff3a)}.vfx-slot-row-head{display:flex;justify-content:space-between;align-items:baseline}.vfx-slot-row-name{font-size:12px;font-weight:700;letter-spacing:.06em}.vfx-slot-row-kind{font-size:9px;letter-spacing:.14em;color:var(--bone-3, #a8a59a);border:1px solid var(--bone-4, #3a3a44);padding:2px 6px}.vfx-slot-row-desc{font-size:11px;color:var(--bone-3, #a8a59a);margin-top:4px}.vfx-slot-row-right{grid-column:1 / -1;display:flex;justify-content:flex-end;margin-top:6px}.vfx-variant-chip{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--char-2, #14141a);border:1px solid var(--bone-4, #3a3a44);border-left:3px solid var(--swatch, var(--bone-4, #3a3a44));font-size:11px;letter-spacing:.06em}.vfx-variant-chip-dot{display:inline-block;width:6px;height:6px;background:var(--swatch, var(--bone-3, #a8a59a))}.vfx-variant-chip-name{color:var(--bone, #ebe8de);font-weight:700}.vfx-variant-chip-tier{font-size:9px;color:var(--tier-color, var(--bone-3, #a8a59a));letter-spacing:.16em}.vfx-preview-wrap{border:1px solid var(--bone-4, #3a3a44);background:var(--char, #0a0a0c);position:relative;overflow:hidden}.vfx-variants{margin-top:12px;border:1px solid var(--bone-4, #3a3a44);background:var(--char, #0a0a0c);padding:12px;display:flex;flex-direction:column;gap:12px;flex:1;min-height:0}.vfx-variants-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.vfx-variants-title{font-size:12px;font-weight:700;letter-spacing:.18em;color:var(--bone, #ebe8de)}.vfx-variants-meta{font-size:10px;color:var(--bone-3, #a8a59a);letter-spacing:.14em}.vfx-filter-row{display:inline-flex;gap:4px;margin-left:auto}.vfx-filter{background:transparent;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);padding:4px 10px;font-family:var(--display, system-ui);font-weight:700;letter-spacing:.18em;font-size:10px;cursor:pointer}.vfx-filter.is-on{background:var(--bone, #ebe8de);color:var(--char, #0a0a0c)}.vfx-variants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;overflow-y:auto;padding-right:4px;min-height:0}.vfx-variant-card{text-align:left;background:var(--char-2, #14141a);border:1px solid var(--bone-4, #3a3a44);border-left:3px solid var(--swatch, var(--bone-4, #3a3a44));padding:10px;color:var(--bone, #ebe8de);cursor:pointer;display:flex;flex-direction:column;gap:6px;min-height:110px}.vfx-variant-card:hover{border-color:var(--bone-3, #a8a59a)}.vfx-variant-card.is-active{border-color:var(--acid, #d6ff3a)}.vfx-variant-card.is-equipped{outline:1px solid var(--acid, #d6ff3a);outline-offset:-1px}.vfx-variant-card.is-locked{opacity:.65}.vfx-variant-card-head{display:flex;justify-content:space-between;align-items:baseline}.vfx-variant-card-name{font-size:12px;font-weight:700;letter-spacing:.06em}.vfx-variant-card-tier{font-size:9px;letter-spacing:.18em}.vfx-variant-card-desc{font-size:11px;color:var(--bone-3, #a8a59a);margin:0;line-height:1.4}.vfx-variant-card-swatchrow{display:flex;gap:4px}.vfx-variant-card-swatch{width:12px;height:12px}.vfx-variant-card-foot{display:flex;justify-content:space-between;align-items:center;font-size:9px;letter-spacing:.16em;margin-top:auto}.vfx-variant-card-pack{color:var(--bone-4, #3a3a44)}.vfx-variant-card-state.is-owned{color:var(--acid, #d6ff3a)}.vfx-variant-card-state.is-locked{color:var(--bone-3, #a8a59a)}.vfx-variants-equip{display:flex;align-items:center;gap:8px;border-top:1px solid var(--bone-4, #3a3a44);padding-top:12px}.vfx-variants-equip-info{flex:1;display:flex;flex-direction:column;gap:2px;font-size:11px;color:var(--bone, #ebe8de)}.vfx-variants-equip-desc{color:var(--bone-3, #a8a59a);font-size:11px}.vfx-btn-ghost{background:transparent;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);padding:8px 14px;font-family:var(--display, system-ui);letter-spacing:.18em;font-weight:700;font-size:11px;cursor:pointer}.vfx-btn-ghost:disabled{opacity:.4;cursor:default}.vfx-btn-acid{background:var(--acid, #d6ff3a);border:1px solid var(--acid, #d6ff3a);color:var(--char, #0a0a0c);padding:8px 16px;font-family:var(--display, system-ui);letter-spacing:.18em;font-weight:700;font-size:11px;cursor:pointer}.vfx-btn-acid:disabled{opacity:.45;cursor:default;background:var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);border-color:var(--bone-4, #3a3a44)}.vfx-empty-state{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--bone-4, #3a3a44);padding:40px 20px}.vfx-empty-state-glyph{font-size:28px}.vfx-store{margin-top:16px;display:flex;flex-direction:column;gap:18px}.vfx-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:18px;position:relative;border:1px solid var(--accent, var(--bone-4, #3a3a44));border-left-width:4px;background:var(--char, #0a0a0c);padding:18px}.vfx-feature-tag{position:absolute;top:-10px;left:18px;background:var(--accent, var(--bone, #ebe8de));color:var(--char, #0a0a0c);padding:3px 10px;font-size:10px;letter-spacing:.22em;font-weight:700}.vfx-feature-preview{border:1px solid var(--bone-4, #3a3a44);background:var(--char-2, #14141a);overflow:hidden}.vfx-feature-body{display:flex;flex-direction:column;gap:10px}.vfx-feature-kicker{font-size:10px;color:var(--bone-3, #a8a59a);letter-spacing:.18em}.vfx-feature-name{font-size:24px;margin:0;letter-spacing:.06em;font-weight:700}.vfx-feature-tagline{font-size:13px;color:var(--bone-3, #a8a59a);margin:0;line-height:1.5}.vfx-feature-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.vfx-feature-actions{display:flex;gap:10px;margin-top:auto}.vfx-buy-block{background:var(--char-2, #14141a);border:1px solid var(--bone-4, #3a3a44);color:var(--bone, #ebe8de);display:flex;flex-direction:column;gap:2px;padding:12px 18px;cursor:pointer;text-align:left}.vfx-buy-block.is-gold{border-color:var(--coin, #f5b400);border-left:3px solid var(--coin, #f5b400)}.vfx-buy-block.is-cash{border-color:var(--acid, #d6ff3a);border-left:3px solid var(--acid, #d6ff3a)}.vfx-buy-block.is-owned{border-color:var(--acid, #d6ff3a);cursor:default}.vfx-buy-k{font-size:10px;letter-spacing:.18em;color:var(--bone-3, #a8a59a)}.vfx-buy-v{font-size:16px;font-weight:700;letter-spacing:.04em}.vfx-store-gridhead{display:flex;align-items:baseline;gap:16px;border-bottom:1px solid var(--bone-4, #3a3a44);padding-bottom:6px}.vfx-store-gridhead-title{font-size:13px;font-weight:700;letter-spacing:.18em;color:var(--bone, #ebe8de)}.vfx-store-gridhead-meta{font-size:10px;color:var(--bone-3, #a8a59a);letter-spacing:.14em}.vfx-store-gridhead .vfx-filter-row{margin-left:auto}.vfx-store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.vfx-pack{background:var(--char, #0a0a0c);border:1px solid var(--accent, var(--bone-4, #3a3a44));border-left-width:4px;display:flex;flex-direction:column;position:relative}.vfx-pack.is-owned{opacity:.85}.vfx-pack-preview{border-bottom:1px solid var(--bone-4, #3a3a44);overflow:hidden}.vfx-pack-body{padding:12px;display:flex;flex-direction:column;gap:8px}.vfx-pack-name{font-size:16px;font-weight:700;letter-spacing:.04em}.vfx-pack-tag{font-size:11px;color:var(--bone-3, #a8a59a);margin:0;line-height:1.4}.vfx-pack-contents{display:flex;flex-wrap:wrap;gap:4px}.vfx-pack-chip{font-size:10px;letter-spacing:.12em;border:1px solid var(--bone-4, #3a3a44);padding:2px 6px;color:var(--bone-3, #a8a59a)}.vfx-pack-foot{display:flex;gap:6px;justify-content:flex-start;margin-top:4px}.vfx-pack-price{background:var(--char-2, #14141a);border:1px solid var(--bone-4, #3a3a44);color:var(--bone, #ebe8de);padding:8px 12px;cursor:pointer;display:flex;flex-direction:column;gap:2px;text-align:left}.vfx-pack-price.is-gold{border-left:3px solid var(--coin, #f5b400)}.vfx-pack-price.is-cash{border-left:3px solid var(--acid, #d6ff3a)}.vfx-pack-price-k{font-size:9px;color:var(--bone-3, #a8a59a);letter-spacing:.18em}.vfx-pack-price-v{font-size:14px;font-weight:700}.vfx-pack-owned{font-size:11px;color:var(--acid, #d6ff3a);letter-spacing:.18em}.vfx-pack-tier-strip{position:absolute;top:0;right:0;width:4px;height:100%}.vfx-store-foot{display:flex;gap:32px;flex-wrap:wrap;border-top:1px solid var(--bone-4, #3a3a44);padding-top:12px;font-size:10px;letter-spacing:.12em;color:var(--bone-3, #a8a59a)}.vfx-thumb{position:relative;width:100%;background:linear-gradient(180deg,var(--char, #0a0a0c) 0%,var(--char-2, #14141a) 100%);overflow:hidden}.vfx-thumb-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.vfx-thumb-label{position:absolute;left:8px;bottom:8px;font-size:10px;letter-spacing:.16em;color:var(--bone-3, #a8a59a);background:#0a0a0ccc;padding:2px 8px;z-index:1}.vfx-spear{position:absolute;transform-origin:left center;height:4px;background:linear-gradient(90deg,transparent 0%,var(--c1, var(--bone)) 12%,var(--c1, var(--bone)) 90%,var(--c2, var(--bone-2)) 100%);box-shadow:0 0 8px var(--c2, var(--bone-2));animation:vfxSpear .7s cubic-bezier(.2,.7,.2,1) forwards}.vfx-spear:after{content:"";position:absolute;right:-10px;top:-5px;width:14px;height:14px;background:var(--c1, var(--bone));clip-path:polygon(0 50%,100% 0,80% 50%,100% 100%);box-shadow:0 0 8px var(--c1, var(--bone))}@keyframes vfxSpear{0%{transform:scaleX(0);opacity:0}18%{transform:scaleX(.3);opacity:1}72%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}.vfx-spear.is-acid{animation:vfxSpearAcid 1.2s cubic-bezier(.2,.7,.2,1) forwards;filter:drop-shadow(0 0 8px var(--c1, var(--acid)))}@keyframes vfxSpearAcid{0%{transform:scaleX(0);opacity:0}18%{transform:scaleX(.3);opacity:1}55%{transform:scaleX(1);opacity:1}88%{transform:scaleX(1);opacity:.85}to{transform:scaleX(1);opacity:0}}.vfx-spear.is-chrome{animation:vfxSpearChrome .82s cubic-bezier(.2,.7,.2,1) forwards}@keyframes vfxSpearChrome{0%{transform:scaleX(0);opacity:0;filter:brightness(1)}18%{transform:scaleX(.3);opacity:1}72%{transform:scaleX(1);opacity:1;filter:brightness(1.6) saturate(1.4)}85%{filter:brightness(1.1)}to{transform:scaleX(1);opacity:0}}.vfx-spear-void-ring{position:absolute;width:6px;height:6px;transform:translate(-50%,-50%);border:2px solid var(--c1, var(--jester));border-radius:50%;mix-blend-mode:difference;opacity:0;animation:vfxSpearVoidRing .38s ease-out forwards}@keyframes vfxSpearVoidRing{0%{opacity:0;width:6px;height:6px}35%{opacity:1}to{opacity:0;width:36px;height:36px}}.vfx-spear-ember{position:absolute;width:4px;height:4px;transform:translate(-50%,-50%);background:var(--c2, var(--coin));border-radius:50%;box-shadow:0 0 6px var(--c1, var(--ember));mix-blend-mode:screen;opacity:0;animation:vfxSpearEmber .54s ease-out forwards}@keyframes vfxSpearEmber{0%{opacity:0;transform:translate(-50%,-50%)}20%{opacity:1}to{opacity:0;transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% - 22px)) scale(.6)}}.vfx-spear-splinter{position:absolute;width:8px;height:3px;transform-origin:50% 50%;background:linear-gradient(90deg,var(--c2, #7a0c0c) 0%,var(--c1, #ff5252) 70%,#d9b078 100%);box-shadow:0 0 3px var(--c1, rgba(255,82,82,.7));animation:vfxSpearSplinter .6s cubic-bezier(.2,.7,.3,1) forwards}@keyframes vfxSpearSplinter{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--dx, 20px),calc(var(--dy, 0px) + 22px)) rotate(var(--rot, 180deg));opacity:0}}.vfx-tracer{position:absolute;transform-origin:left center;height:2px;background:linear-gradient(90deg,transparent,var(--c1, var(--ember)) 20%,var(--c1, var(--ember)) 80%,transparent);box-shadow:0 0 10px var(--c1, var(--ember));animation:vfxTracer .26s ease-out forwards}@keyframes vfxTracer{0%{transform:scaleX(0);opacity:0}20%{transform:scaleX(1);opacity:1}to{transform:scaleX(1);opacity:0}}.vfx-muzzle{position:absolute;width:22px;height:22px;background:var(--c1, var(--ember));clip-path:polygon(50% 0,60% 35%,100% 50%,60% 65%,50% 100%,40% 65%,0 50%,40% 35%);box-shadow:0 0 18px var(--c1, var(--ember));animation:vfxMuzzle .24s ease-out forwards}@keyframes vfxMuzzle{0%{transform:translate(-50%,-50%) scale(.2);opacity:0}30%{transform:translate(-50%,-50%) scale(1.4);opacity:1}to{transform:translate(-50%,-50%) scale(.8);opacity:0}}.vfx-particle{position:absolute;width:8px;height:8px;background:var(--c1, var(--cobalt));border-radius:50%;box-shadow:0 0 8px var(--c1, var(--cobalt));animation:vfxParticle .9s cubic-bezier(.2,.5,.3,1) forwards}@keyframes vfxParticle{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}20%{transform:translate(-50%,-50%) scale(1);opacity:1}60%{transform:translate(calc(-50% + var(--dx, 0px)*.6),calc(-50% + var(--dy, 0px)*.6)) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--dx, 0px)),calc(-50% + var(--dy, 0px))) scale(.4);opacity:0}}.vfx-ring{position:absolute;border:2px solid var(--c1, var(--jester));box-shadow:0 0 12px var(--c1, var(--jester));animation:vfxRing .52s ease-out forwards}@keyframes vfxRing{0%{width:12px;height:12px;opacity:1;transform:translate(-50%,-50%)}to{width:110px;height:110px;opacity:0;transform:translate(-50%,-50%)}}.vfx-slash{position:absolute;width:120px;height:32px;background:linear-gradient(105deg,transparent 30%,var(--c2, #ff8888) 45%,white 50%,var(--c1, var(--blood)) 55%,transparent 70%);clip-path:polygon(0 60%,100% 0,100% 40%,0 100%);mix-blend-mode:screen;animation:vfxSlash .48s cubic-bezier(.2,.7,.3,1) forwards}@keyframes vfxSlash{0%{transform:translate(-60%,-50%) scaleX(0) rotate(-8deg);opacity:0}20%{transform:translate(-50%,-50%) scaleX(1) rotate(-8deg);opacity:1}to{transform:translate(-30%,-50%) scaleX(1) rotate(-8deg);opacity:0}}.vfx-flame{position:absolute;width:56px;height:64px;background:radial-gradient(circle at 50% 75%,var(--c1, var(--ember)) 0 30%,transparent 60%),radial-gradient(circle at 50% 55%,var(--c2, #ffd58a) 0 18%,transparent 50%);filter:blur(.4px);animation:vfxFlame .54s ease-out forwards}@keyframes vfxFlame{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}25%{transform:translate(-50%,-65%) scale(1);opacity:1}to{transform:translate(-50%,-95%) scale(1.2);opacity:0}}.vfx-sigil{position:absolute;width:44px;height:44px;border:2px solid var(--c1, var(--coin));background:linear-gradient(45deg,transparent 47%,var(--c1, var(--coin)) 47% 53%,transparent 53%),linear-gradient(-45deg,transparent 47%,var(--c1, var(--coin)) 47% 53%,transparent 53%);box-shadow:0 0 18px var(--c1, var(--coin));animation:vfxSigil .72s cubic-bezier(.2,.6,.3,1) forwards}@keyframes vfxSigil{0%{transform:translate(-50%,30%) rotate(0) scale(.6);opacity:0}30%{transform:translate(-50%,-50%) rotate(180deg) scale(1.05);opacity:1}to{transform:translate(-50%,-140%) rotate(360deg) scale(.95);opacity:0}}.vfx-barrier{position:absolute;width:140px;height:96px;background:linear-gradient(180deg,transparent,transparent),linear-gradient(110deg,transparent 0 35%,var(--c1, var(--cobalt)) 35% 36%,transparent 36% 65%,var(--c1, var(--cobalt)) 65% 66%,transparent 66%);border:2px solid var(--c1, var(--cobalt));box-shadow:0 0 18px var(--c1, var(--cobalt)),inset 0 0 8px #6f9bff66;animation:vfxBarrier .72s cubic-bezier(.2,.7,.3,1) forwards}@keyframes vfxBarrier{0%{transform:translate(-50%,-50%) scale(.4);opacity:0}25%{transform:translate(-50%,-50%) scale(1.05);opacity:1}80%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1);opacity:0}}.vfx-glitch{position:absolute;top:0;right:0;bottom:0;left:0;background:inherit;mix-blend-mode:screen;animation:vfxGlitch .46s steps(6) forwards}@keyframes vfxGlitch{0%,to{opacity:0;transform:translate(0)}20%{opacity:1;transform:translate(-6px)}40%{opacity:1;transform:translate(8px)}60%{opacity:1;transform:translate(-3px)}80%{opacity:.7;transform:translate(2px)}}.vfx-mythic{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 50% 60%,var(--c1, var(--coin)) 0 8%,transparent 35%),radial-gradient(circle at 50% 60%,transparent 30%,rgba(245,180,0,.18) 40%,transparent 70%);mix-blend-mode:screen;animation:vfxMythic 1.2s cubic-bezier(.2,.5,.3,1) forwards}@keyframes vfxMythic{0%{opacity:0;transform:scale(.6)}20%{opacity:1;transform:scale(1.1)}80%{opacity:1;transform:scale(1.05)}to{opacity:0;transform:scale(1.2)}}.vfx-mythic-bar{position:absolute;left:0;right:0;height:18px;background:var(--c1, var(--coin));color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.32em}.vfx-mythic-bar.top{top:0;animation:vfxMythicBarTop 1.2s ease-out forwards}.vfx-mythic-bar.bot{bottom:0;animation:vfxMythicBarBot 1.2s ease-out forwards}@keyframes vfxMythicBarTop{0%{transform:translateY(-100%)}18%{transform:translateY(0)}82%{transform:translateY(0)}to{transform:translateY(-100%)}}@keyframes vfxMythicBarBot{0%{transform:translateY(100%)}18%{transform:translateY(0)}82%{transform:translateY(0)}to{transform:translateY(100%)}}.vfx-note{position:absolute;font-family:var(--display);font-size:22px;font-weight:700;color:var(--c1, var(--terminal));text-shadow:0 0 10px var(--c1, var(--terminal));animation:vfxNote 1.1s ease-out forwards}@keyframes vfxNote{0%{transform:translate(-50%) rotate(0);opacity:0}20%{transform:translate(-50%,-20px) rotate(var(--rot, -8deg));opacity:1}to{transform:translate(calc(-50% + var(--sway, 0px)),-110px) rotate(var(--rot, -8deg));opacity:0}}.vfx-card{position:absolute;width:36px;height:50px;background:var(--c1, var(--coin));border:1px solid var(--ink);box-shadow:0 0 12px var(--c1, var(--coin));display:grid;place-items:center;font-family:var(--display);font-weight:700;font-size:16px;color:var(--ink)}.vfx-soul{position:absolute;width:14px;height:16px;background:radial-gradient(ellipse at 50% 40%,var(--c1, var(--cobalt)) 0 40%,transparent 70%);filter:blur(.5px)}.vfx-matrix{position:absolute;top:-100%;width:14px;font-family:var(--mono);font-size:11px;color:var(--c1, var(--terminal));text-shadow:0 0 6px var(--c1, var(--terminal));line-height:1.05;animation:vfxMatrix 1.4s linear forwards;writing-mode:vertical-rl;letter-spacing:-2px}@keyframes vfxMatrix{0%{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(220px);opacity:0}}.vfx-bubble{position:absolute;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle at 30% 30%,white 0 20%,var(--c1, var(--jester)) 30%,transparent 60%);border:1px solid var(--c1, var(--jester));animation:vfxBubble var(--d, 1s) ease-in forwards}@keyframes vfxBubble{0%{transform:translate(-50%) scale(.4);opacity:0}20%{transform:translate(-50%,-10px) scale(1);opacity:1}to{transform:translate(calc(-50% + var(--sway, 0px)),-80px) scale(.7);opacity:0}}.vfx-toast-stack{position:fixed;bottom:36px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;gap:8px;z-index:200;pointer-events:none}.vfx-toast{background:var(--char, #0a0a0c);border:1px solid var(--acid, #d6ff3a);border-left:4px solid var(--acid, #d6ff3a);color:var(--bone, #ebe8de);padding:10px 18px;font-family:var(--display, system-ui);font-weight:700;font-size:12px;letter-spacing:.18em;box-shadow:4px 4px #00000080;animation:vfx-toast-in .2s ease-out;display:flex;gap:10px;align-items:center}.vfx-toast.is-buy{border-color:var(--coin, #f5b400);border-left-color:var(--coin, #f5b400)}.vfx-toast.is-err{border-color:var(--blood, #ff3838);border-left-color:var(--blood, #ff3838)}.vfx-toast-mark{color:inherit}.vfx-toast.is-equip .vfx-toast-mark{color:var(--acid, #d6ff3a)}.vfx-toast.is-buy .vfx-toast-mark{color:var(--coin, #f5b400)}.vfx-toast.is-err .vfx-toast-mark{color:var(--blood, #ff3838)}@keyframes vfx-toast-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.vfx-admin-gold{background:var(--coin, #f5b400);color:var(--char, #0a0a0c);border:1px solid var(--coin, #f5b400);padding:6px 14px;font-family:var(--display, system-ui);font-weight:700;letter-spacing:.18em;font-size:11px;cursor:pointer}.vfx-admin-gold:hover{filter:brightness(1.08)}.vfx-classpicker{margin-top:16px;display:flex;flex-direction:column;gap:24px}.vfx-classpicker-head{display:flex;flex-direction:column;gap:4px;border-left:4px solid var(--acid, #d6ff3a);padding-left:14px}.vfx-classpicker-eyebrow{font-size:10px;letter-spacing:.24em;color:var(--bone-3, #a8a59a)}.vfx-classpicker-title{font-size:26px;font-weight:700;letter-spacing:.04em;color:var(--bone, #ebe8de);margin:0}.vfx-classpicker-sub{font-size:12px;color:var(--bone-3, #a8a59a);margin:4px 0 0;max-width:560px;line-height:1.5}.vfx-classpicker-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}.vfx-classcard{position:relative;display:flex;flex-direction:column;gap:8px;background:var(--char, #0a0a0c);border:1px solid var(--bone-4, #3a3a44);border-left:4px solid var(--cls-accent, var(--bone-4, #3a3a44));padding:14px 16px 12px;color:var(--bone, #ebe8de);cursor:pointer;text-align:left;transition:transform 90ms ease-out,border-color .12s ease}.vfx-classcard:hover{border-color:var(--cls-accent, var(--bone-3, #a8a59a));transform:translateY(-1px)}.vfx-classcard.is-empty{opacity:.78}.vfx-classcard-head{display:flex;align-items:center;justify-content:space-between}.vfx-classcard-name{font-family:var(--display, system-ui);font-weight:700;letter-spacing:.08em;font-size:14px}.vfx-classcard-pip{width:10px;height:10px;background:var(--cls-accent, var(--bone-3, #a8a59a))}.vfx-classcard-tagline{font-size:11px;color:var(--bone-3, #a8a59a);margin:0;line-height:1.4}.vfx-classcard-stats{display:flex;gap:16px;margin-top:auto;padding-top:6px}.vfx-classcard-stat{display:flex;flex-direction:column;gap:2px}.vfx-classcard-stat-k{font-size:9px;letter-spacing:.18em;color:var(--bone-4, #3a3a44)}.vfx-classcard-stat-v{font-size:13px;font-weight:700;color:var(--bone, #ebe8de)}.vfx-classcust{margin-top:16px;display:flex;flex-direction:column;gap:16px;flex:1;min-height:0}.vfx-classcust-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;padding:12px 14px;border:1px solid var(--bone-4, #3a3a44);border-left:4px solid var(--cls-accent, var(--bone-4, #3a3a44));background:var(--char, #0a0a0c)}.vfx-back-btn{background:transparent;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);padding:6px 12px;font-family:var(--display, system-ui);font-weight:700;letter-spacing:.18em;font-size:11px;cursor:pointer}.vfx-back-btn:hover{color:var(--bone, #ebe8de);border-color:var(--bone-3, #a8a59a)}.vfx-classcust-headtext{display:flex;flex-direction:column;gap:2px}.vfx-classcust-eyebrow{font-size:10px;letter-spacing:.22em;color:var(--bone-3, #a8a59a)}.vfx-classcust-title{font-size:20px;font-weight:700;letter-spacing:.06em;color:var(--bone, #ebe8de);margin:0}.vfx-classcust-tagline{font-size:11px;color:var(--bone-3, #a8a59a)}.vfx-classcust-accent-bar{width:80px;height:28px;background:var(--cls-accent, var(--bone-4, #3a3a44))}.vfx-classcust-body{display:grid;grid-template-columns:380px 1fr;gap:14px;flex:1;min-height:0}.vfx-classcust-slots{display:flex;flex-direction:column;gap:6px;background:var(--char, #0a0a0c);border:1px solid var(--bone-4, #3a3a44);padding:10px 10px 12px;overflow-y:auto}.vfx-classcust-slotlist{display:flex;flex-direction:column;gap:6px}.vfx-classcust-slotlist.is-muted .vfx-slot-row{opacity:.85}.vfx-empty-slots{padding:18px 12px;border:1px dashed var(--bone-4, #3a3a44);font-size:11px;letter-spacing:.14em;color:var(--bone-3, #a8a59a);text-align:center;line-height:1.6}.vfx-classcust-preview{display:flex;flex-direction:column;gap:12px;min-height:0}.vfx-variant-card{text-align:left}.vfx-variant-card-body{background:transparent;border:none;color:inherit;font:inherit;text-align:left;cursor:pointer;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;flex:1}.vfx-variant-card-buy{flex:1;background:var(--char, #0a0a0c);color:var(--bone, #ebe8de);border:1px solid var(--bone-4, #3a3a44);padding:5px 8px;cursor:pointer;display:flex;flex-direction:column;gap:1px;align-items:flex-start;font:inherit}.vfx-variant-card-buy.is-gold{border-left:3px solid var(--coin, #f5b400)}.vfx-variant-card-buy.is-cash{border-left:3px solid var(--acid, #d6ff3a)}.vfx-variant-card-buy:hover{background:#f5b40014}.vfx-variant-card-buy.is-cash:hover{background:#d6ff3a14}.vfx-variant-card-foot{display:flex;gap:4px;align-items:stretch;margin-top:auto}.vfx-cat-section-head{display:flex;align-items:baseline;gap:12px;padding:4px 4px 6px;border-bottom:1px solid var(--bone-4, #3a3a44);margin-bottom:12px}.vfx-cat-section-title{font-size:11px;letter-spacing:.22em;color:var(--bone, #ebe8de);font-weight:700}.vfx-cat-section-meta{font-size:10px;letter-spacing:.16em;color:var(--bone-3, #a8a59a)}.vfx-cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.vfx-cat-tile{position:relative;display:flex;flex-direction:column;gap:6px;background:var(--char, #0a0a0c);border:1px solid var(--bone-4, #3a3a44);border-left:4px solid var(--bone-4, #3a3a44);padding:12px 14px;color:var(--bone, #ebe8de);cursor:pointer;text-align:left;font:inherit;transition:transform 90ms ease-out,border-color .12s ease}.vfx-cat-tile:hover{border-color:var(--bone-3, #a8a59a);transform:translateY(-1px)}.vfx-cat-tile.is-wired{border-left-color:var(--acid, #d6ff3a)}.vfx-cat-tile.is-preview{border-left-color:var(--bone-4, #3a3a44)}.vfx-cat-tile.is-open{border-color:var(--acid, #d6ff3a);background:#d6ff3a0a}.vfx-cat-tile-head{display:flex;align-items:flex-start;justify-content:space-between;gap:6px}.vfx-cat-tile-name{font-family:var(--display, system-ui);font-weight:700;letter-spacing:.06em;font-size:13px;line-height:1.2}.vfx-cat-tile-badge{font-size:8px;letter-spacing:.2em;padding:2px 5px;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);white-space:nowrap}.vfx-cat-tile-badge.is-applied{color:var(--acid, #d6ff3a);border-color:var(--acid, #d6ff3a)}.vfx-cat-tile-kind{font-size:9px;letter-spacing:.16em;color:var(--bone-4, #3a3a44);text-transform:uppercase}.vfx-cat-tile-variant{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:var(--char-2, #14141a);border:1px solid var(--bone-4, #3a3a44);border-left:3px solid var(--swatch, var(--bone-4, #3a3a44));font-size:10px;letter-spacing:.06em;margin-top:auto}.vfx-cat-tile-swatch{display:inline-block;width:6px;height:6px;background:var(--swatch, var(--bone-3, #a8a59a))}.vfx-cat-tile-variant-name{color:var(--bone, #ebe8de);font-weight:700}.vfx-cat-drawer{grid-column:1 / -1;background:var(--char-2, #14141a);border:1px solid var(--acid, #d6ff3a);border-left-width:4px;padding:14px 16px 16px;display:flex;flex-direction:column;gap:12px;animation:vfx-cat-drawer-in .16s ease-out}@keyframes vfx-cat-drawer-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.vfx-cat-drawer-head{display:flex;align-items:flex-start;gap:16px}.vfx-cat-drawer-titlewrap{display:flex;flex-direction:column;gap:2px;flex:1}.vfx-cat-drawer-eyebrow{font-size:9px;letter-spacing:.22em;color:var(--bone-3, #a8a59a)}.vfx-cat-drawer-title{font-size:16px;font-weight:700;letter-spacing:.06em;margin:0;color:var(--bone, #ebe8de)}.vfx-cat-drawer-desc{font-size:11px;color:var(--bone-3, #a8a59a);line-height:1.4}.vfx-cat-drawer-preview-note{font-size:9px;letter-spacing:.18em;color:var(--coin, #f5b400);border:1px solid var(--coin, #f5b400);padding:4px 8px;align-self:center;white-space:nowrap;cursor:help}.vfx-cat-drawer-close{background:transparent;border:1px solid var(--bone-4, #3a3a44);color:var(--bone-3, #a8a59a);width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;padding:0}.vfx-cat-drawer-close:hover{color:var(--bone, #ebe8de);border-color:var(--bone-3, #a8a59a)}.vfx-cat-drawer-body{display:grid;grid-template-columns:280px 1fr;gap:14px}@media(max-width:900px){.vfx-cat-drawer-body{grid-template-columns:1fr}}.run-history{padding:var(--sp-5, 20px);max-width:760px;margin:0 auto;width:100%}.run-history-head{margin-bottom:16px}.run-history-title{font-family:var(--display, sans-serif);font-weight:700;font-size:28px;letter-spacing:.08em;margin:0;color:var(--bone, #f0e7d8)}.run-history-sub{font-size:12px;letter-spacing:.08em;color:var(--bone-3, #a89e8e);margin:4px 0 0}.run-history-empty{display:flex;flex-direction:column;align-items:center;gap:6px;padding:32px 0;border:1px dashed var(--bone-4, #3a3128);text-align:center}.run-history-empty-line{letter-spacing:.18em;color:var(--bone-3, #a89e8e);font-size:12px}.run-history-empty-sub{font-size:11px;color:var(--bone-4, #3a3128)}.run-history-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.run-history-row{display:grid;grid-template-columns:96px 1fr auto;gap:14px;align-items:center;padding:10px 14px;background:#14110e8c;border:1px solid var(--bone-4, #3a3128);border-left-width:4px}.run-history-row.outcome-victory{border-left-color:var(--acid, #d6ff3a)}.run-history-row.outcome-defeat{border-left-color:var(--blood, #c25151)}.run-history-row.outcome-conceded{border-left-color:var(--bone-3, #a89e8e)}.run-history-outcome{font-size:11px;font-weight:700;letter-spacing:.14em}.run-history-row.outcome-victory .run-history-outcome{color:var(--acid, #d6ff3a)}.run-history-row.outcome-defeat .run-history-outcome{color:var(--blood, #c25151)}.run-history-row.outcome-conceded .run-history-outcome{color:var(--bone-3, #a89e8e)}.run-history-body{display:flex;flex-direction:column;gap:4px;min-width:0}.run-history-line-main{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.run-history-destination{font-family:var(--display, sans-serif);font-weight:700;font-size:15px;letter-spacing:.04em;color:var(--bone, #f0e7d8)}.run-history-floor{font-size:10px;letter-spacing:.12em;color:var(--bone-3, #a89e8e)}.run-history-line-meta{font-size:11px;display:flex;gap:8px;align-items:baseline;color:var(--bone-2, #d6cdbe)}.run-history-class{font-weight:700;letter-spacing:.06em}.run-history-party{color:var(--bone-3, #a89e8e)}.run-history-ally{color:var(--bone-2, #d6cdbe)}.run-history-when{font-size:10px;letter-spacing:.08em;color:var(--bone-3, #a89e8e);white-space:nowrap}.run-history-row.is-expanded{align-items:start}.run-history-toggle{display:inline-flex;align-items:center;gap:4px;margin-top:2px;padding:2px 6px;background:transparent;border:1px solid var(--bone-4, #3a3128);color:var(--bone-3, #a89e8e);font-family:var(--mono, monospace);font-size:10px;letter-spacing:.1em;cursor:pointer}.run-history-toggle:hover{color:var(--bone, #f0e7d8);border-color:var(--bone-3, #a89e8e)}.run-history-toggle:disabled{opacity:.4;cursor:default}.run-history-toggle-caret{font-size:8px;line-height:1}.run-history-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.run-history-log{grid-column:1 / -1;margin-top:8px;padding:10px 12px;border-top:1px dashed var(--bone-4, #3a3128);max-height:280px;overflow-y:auto;font-family:var(--mono, monospace);font-size:11px;line-height:1.55;color:var(--bone-2, #d6cdbe)}.run-history-log-empty{color:var(--bone-3, #a89e8e);font-style:italic}.run-history-log-entry{display:flex;gap:8px}.run-history-log-entry+.run-history-log-entry{margin-top:2px}.run-history-log-num{color:var(--bone-4, #3a3128);min-width:28px;text-align:right;flex-shrink:0}.run-history-log-text{color:var(--bone-2, #d6cdbe)}.run-history-detail{grid-column:1 / -1;display:flex;flex-direction:column;gap:8px;margin-top:8px}.run-history-tabs{display:flex;gap:6px;border-bottom:1px dashed var(--rule);padding-bottom:6px}.rh-tab{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;padding:3px 8px;background:var(--char-2);color:var(--bone-3);border:1px solid var(--rule);cursor:pointer}.rh-tab:hover:not(:disabled){color:var(--bone-2);border-color:var(--rule-hi)}.rh-tab.is-on{color:var(--ink);background:var(--acid);border-color:var(--acid)}.rh-tab:disabled{opacity:.4;cursor:default}.run-history-stats{padding:4px 0}.toast-arrive-slide.is-arriving{animation:toastSlideIn var(--mo-base, .22s) var(--ease-arrive, ease-out) backwards}@keyframes toastSlideIn{0%{transform:translate(16px);opacity:0}to{transform:translate(0);opacity:1}}.toast-arrive-drop.is-arriving{animation:toastDropIn var(--mo-emphatic, .36s) var(--ease-punch, cubic-bezier(.34, 1.56, .64, 1)) backwards}@keyframes toastDropIn{0%{opacity:0;transform:translateY(-16px) scale(.96)}60%{opacity:1;transform:translateY(2px) scale(1.02)}to{opacity:1;transform:translateY(0) scale(1)}}.toast-arrive-slide.is-leaving,.toast-arrive-drop.is-leaving{animation:toastLeave var(--mo-quick, .2s) var(--ease-leave, ease-in) forwards;pointer-events:none}@keyframes toastLeave{0%{transform:translate(0) skew(0);opacity:1}to{transform:translate(28px) skew(-2deg);opacity:0}}body.is-reduce-motion .toast-arrive-slide.is-arriving,body.is-reduce-motion .toast-arrive-drop.is-arriving,body.is-reduce-motion .toast-arrive-slide.is-leaving,body.is-reduce-motion .toast-arrive-drop.is-leaving{animation-duration:.01ms!important}.settings-wrap{position:relative;margin-top:auto;border-top:1px solid var(--rule);background:var(--ink)}.settings-trigger{display:flex;align-items:center;gap:var(--sp-2);width:100%;padding:var(--sp-3) var(--sp-4);background:transparent;border:0;color:var(--bone-2);font:inherit;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.14em;text-align:left;cursor:pointer;transition:background .1s,color .1s}.settings-trigger:hover{background:var(--char);color:var(--bone)}.settings-trigger.is-open{background:var(--char);color:var(--acid)}.settings-trigger-icon{font-size:14px;line-height:1}.settings-trigger-label{flex:1}.settings-trigger-caret{font-size:10px;color:var(--bone-3)}.settings-panel{position:absolute;left:var(--sp-3);right:var(--sp-3);bottom:calc(100% + 6px);background:var(--char);border:1px solid var(--rule-hi);box-shadow:4px 4px #00000073;z-index:20;display:flex;flex-direction:column}.settings-panel-head{padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule)}.settings-panel-title{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.16em;color:var(--bone-3)}.settings-list{list-style:none;margin:0;padding:var(--sp-3) 0;display:flex;flex-direction:column;gap:2px}.settings-row{padding:var(--sp-2) var(--sp-4)}.settings-row-label{display:flex;align-items:flex-start;gap:var(--sp-3);cursor:pointer}.settings-checkbox{margin-top:3px;accent-color:var(--acid);flex-shrink:0}.settings-row-text{display:flex;flex-direction:column;gap:3px;min-width:0}.settings-row-name{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.04em;color:var(--bone)}.settings-row-help{font-size:11px;line-height:1.4;color:var(--bone-3)}.settings-audio{display:flex;align-items:center;gap:var(--sp-3)}.settings-audio-mute{background:none;border:0;color:var(--bone);cursor:pointer;font-size:16px;line-height:1;padding:0;flex-shrink:0}.settings-audio-mute:hover{color:var(--acid)}.settings-audio-slider{flex:1;accent-color:var(--acid);cursor:pointer}.settings-replay-tutorial{background:transparent;border:1px solid var(--rule);color:var(--bone-2);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.1em;padding:6px 10px;cursor:pointer;transition:color .1s,border-color .1s,background .1s}.settings-replay-tutorial:hover{color:var(--acid);border-color:var(--rule-hi);background:var(--char-3)}body.is-reduce-motion *,body.is-reduce-motion *:before,body.is-reduce-motion *:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}body.is-reduce-motion .flying-card,body.is-reduce-motion .flying-card-draw,body.is-reduce-motion .flying-card-discard,body.is-reduce-motion .flying-card-reshuffle{animation-duration:revert!important}.tower-tab-body{display:flex;flex-direction:column;gap:var(--sp-3);max-height:56vh;overflow-y:auto;padding-top:var(--sp-2)}.tower-frontier{margin-top:var(--sp-3);padding:6px 10px;background:var(--char-2);border-left:3px solid var(--acid);color:var(--acid);font-size:13px;letter-spacing:.1em}.tower-sub{color:var(--bone-3);font-size:12px;line-height:1.5;margin:var(--sp-3) 0}.tower-slots{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.tower-slot-row{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-3);background:var(--char-2);border:1px solid var(--rule)}.tower-slot-info{display:flex;align-items:baseline;gap:var(--sp-3);min-width:0}.tower-slot-idx{font-size:11px;color:var(--bone-3);letter-spacing:.12em}.tower-slot-class{font-family:var(--display);font-weight:700;color:var(--bone);text-transform:capitalize}.tower-slot-floor{font-size:12px;color:var(--bone-2)}.tower-slot-empty{color:var(--bone-4);font-style:italic}.tower-slot-row.is-locked{opacity:.5}.tower-slot-locked{font-size:11px;letter-spacing:.12em;color:var(--bone-4)}.tower-slot-actions{display:flex;gap:var(--sp-2);flex-shrink:0}.btn-danger{border-color:var(--blood)!important;color:var(--blood)}.btn-danger:hover{background:var(--blood);color:var(--ink)}.tower-published{color:var(--bone-3)}.tower-expansion{margin-top:var(--sp-2);padding:4px 10px;background:var(--char-2);border-left:3px solid var(--bone-3);color:var(--bone-2);font-size:12px;letter-spacing:.08em}.tower-tabs{display:flex;gap:var(--sp-2);margin-top:var(--sp-3)}.tower-tab{flex:1;background:var(--char-2);border:1px solid var(--rule);color:var(--bone-3);padding:6px 10px;font-size:12px;letter-spacing:.1em;cursor:pointer}.tower-tab.is-active{color:var(--acid);border-color:var(--acid)}.tower-tab:hover{color:var(--bone)}.tower-section-label{font-size:11px;color:var(--bone-3);letter-spacing:.12em;margin:var(--sp-3) 0 var(--sp-2)}.tower-convene-floor{margin-top:var(--sp-3);padding:6px 10px;background:var(--char-2);border-left:3px solid var(--bone);color:var(--bone);font-size:13px;letter-spacing:.1em}.tower-pick-slots{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--sp-2)}.tower-pick-slot{display:flex;flex-direction:column;gap:2px;align-items:flex-start;padding:var(--sp-2) var(--sp-3);background:var(--char-2);border:1px solid var(--rule);color:var(--bone-2);cursor:pointer;min-width:110px}.tower-pick-slot.is-picked{border-color:var(--acid);color:var(--bone)}.tower-pick-slot:hover{border-color:var(--bone-3)}.tower-party-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--sp-2)}.tower-party-member{display:flex;align-items:center;justify-content:space-between;gap:var(--sp-3);padding:var(--sp-2) var(--sp-3);background:var(--char-2);border:1px solid var(--rule)}.tower-party-name{font-family:var(--display);font-weight:700;color:var(--bone)}.tower-party-slot{font-size:12px;color:var(--bone-2)}.tower-party-waiting{font-size:12px;color:var(--bone-4);font-style:italic}.tower-party-ready{font-size:11px;letter-spacing:.1em;color:var(--bone-4)}.tower-party-ready.is-ready{color:var(--acid)}.tower-convene-actions{display:flex;gap:var(--sp-2);justify-content:flex-end;margin-top:var(--sp-4)}.tower-leaderboards{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-2)}.tower-board-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.tower-board-row{display:flex;align-items:baseline;gap:var(--sp-3);padding:4px var(--sp-3);background:var(--char-2);border:1px solid var(--rule)}.tower-board-row.is-me{border-color:var(--acid)}.tower-board-rank{font-size:12px;color:var(--bone-4);width:22px;flex-shrink:0}.tower-board-name{font-family:var(--display);font-weight:700;color:var(--bone);flex:1;min-width:0}.tower-board-class{font-size:12px;color:var(--bone-3);text-transform:capitalize}.tower-board-floor{font-size:12px;color:var(--bone-2)}.tower-board-empty{color:var(--bone-4);font-style:italic;font-size:12px;margin:var(--sp-2) 0}.app{display:flex;flex-direction:column;height:100%;min-width:960px;--presence-w: 280px;--chat-w: 400px;animation:appArrive .32s cubic-bezier(.18,.85,.3,1)}@media(max-width:1600px){.app{--presence-w: 240px;--chat-w: 360px}}@media(max-width:1400px){.app{--presence-w: 220px;--chat-w: 320px}}@media(max-width:1200px){.app{--presence-w: 200px;--chat-w: 280px}}@media(max-width:1080px){.app{--presence-w: 180px;--chat-w: 240px}}@keyframes appArrive{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.app .topbar{animation:appTopbarSlide .38s cubic-bezier(.2,.8,.3,1) 60ms backwards}.app .appbody{animation:appBodyFade .32s cubic-bezier(.2,.8,.3,1) .14s backwards}@keyframes appTopbarSlide{0%{transform:translateY(-100%)}to{transform:translateY(0)}}@keyframes appBodyFade{0%{opacity:0}to{opacity:1}}.app .social-ribbon{animation:chromeRibbonDrop var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .2s backwards}.app .rail-presence{animation:chromeRailLeftIn var(--mo-emphatic, .38s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .26s backwards}.app .rail-chat{animation:chromeRailRightIn var(--mo-emphatic, .38s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .32s backwards}.app .invite-banner-stack{animation:chromeInviteDrop var(--mo-base, .28s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) .38s backwards}@keyframes chromeRibbonDrop{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes chromeRailLeftIn{0%{opacity:0;transform:translate(-32px)}to{opacity:1;transform:translate(0)}}@keyframes chromeRailRightIn{0%{opacity:0;transform:translate(32px)}to{opacity:1;transform:translate(0)}}@keyframes chromeInviteDrop{0%{opacity:0;transform:translateY(-14px)}to{opacity:1;transform:translateY(0)}}body.is-reduce-motion .app .topbar,body.is-reduce-motion .app .appbody,body.is-reduce-motion .app .social-ribbon,body.is-reduce-motion .app .rail-presence,body.is-reduce-motion .app .rail-chat,body.is-reduce-motion .app .invite-banner-stack{animation-duration:.01ms!important}.appbody{display:grid;--left-col: var(--presence-w, 280px);--right-col: var(--chat-w, 400px);grid-template-columns:var(--left-col) minmax(0,1fr) var(--right-col);position:relative;flex:1;min-height:0;transition:grid-template-columns .16s cubic-bezier(.2,.8,.3,1)}.appbody[data-left=hidden]{--left-col: 0px}.appbody[data-left=wide]{--left-col: calc(var(--presence-w, 280px) * 1.6)}.appbody[data-right=hidden]{--right-col: 0px}.appbody[data-right=wide]{--right-col: calc(var(--chat-w, 400px) * 1.6)}body.is-reduce-motion .appbody{transition:none}.rail{overflow:hidden;min-width:0}.rail-restore-handle{position:absolute;top:50%;transform:translateY(-50%);width:18px;height:64px;display:inline-flex;align-items:center;justify-content:center;background:var(--char-2);border:1px solid var(--rule);color:var(--bone-3);font-family:var(--mono);font-size:14px;line-height:1;cursor:pointer;z-index:32;transition:color .1s,background .1s,border-color .1s}.rail-restore-handle:hover{color:var(--acid);background:var(--char-3);border-color:var(--rule-hi)}.rail-restore-left{left:0;border-left:0}.rail-restore-right{right:0;border-right:0}.rail-controls{display:inline-flex;gap:4px;align-items:center}.rail-ctl-btn{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--rule);color:var(--bone-3);font-family:var(--mono);font-size:13px;line-height:1;cursor:pointer;transition:color .1s,background .1s,border-color .1s}.rail-ctl-btn:hover{color:var(--acid);background:var(--char-3);border-color:var(--rule-hi)}.rail-ctl-btn.is-active{color:var(--acid);border-color:var(--rule-hi)}.rail-ctlbar{display:flex;align-items:center;padding:4px 6px;background:var(--char);border-bottom:1px solid var(--rule);flex:0 0 auto}.rail-ctlbar-left{justify-content:flex-end}.rail-ctlbar-right{justify-content:flex-start}.topbar{height:64px;display:grid;grid-template-columns:minmax(0,auto) minmax(0,auto) minmax(0,1fr) minmax(0,auto);align-items:stretch;border-bottom:2px solid var(--rule);background:var(--ink);position:relative}@media(max-width:1180px){.topbar .topbar-status{display:none}}@media(max-width:1080px){.topbar-me .btn-ghost.btn-small:not(.topbar-bell-trigger){display:none}}.topbar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-bone);opacity:.04;pointer-events:none}.topbar-brand{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-5);border-right:2px solid var(--rule);position:relative;z-index:1}.brand-mark-stack{display:flex;flex-direction:column;align-items:stretch;gap:4px}.brand-mark{color:var(--acid);letter-spacing:-1px;font-weight:700;font-size:18px;line-height:1}.brand-mark-line{height:2px;background:var(--acid);box-shadow:0 0 0 0 var(--acid),2px 0 0 0 var(--acid-2)}.brand-text{display:flex;flex-direction:column;gap:2px}.brand-name{font-family:var(--display);font-weight:700;letter-spacing:.12em;font-size:20px;line-height:1;text-shadow:2px 2px 0 rgba(214,255,58,.08)}.brand-build{font-size:10px;color:var(--bone-3);letter-spacing:.06em}.topbar-tabs{display:flex;align-items:stretch;gap:0;padding:0 var(--sp-3);border-right:2px solid var(--rule);position:relative;z-index:1}.topbar-tab{display:flex;align-items:center;gap:8px;padding:0 var(--sp-4);background:transparent;border:0;border-bottom:3px solid transparent;color:var(--bone-3);font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.16em;cursor:pointer;position:relative;transition:background .1s,color .1s,border-color .1s}.topbar-tab-key{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;background:var(--char-2);border:1px solid var(--rule-hi);font-size:9px;font-weight:700;letter-spacing:0;color:var(--bone-3)}.topbar-tab:hover{color:var(--bone);background:var(--char)}.topbar-tab:hover .topbar-tab-key{color:var(--bone);border-color:var(--bone-3)}.topbar-tab.is-active{color:var(--ink);background:var(--acid);border-bottom-color:var(--acid-2)}.topbar-tab.is-active .topbar-tab-key{background:var(--ink);color:var(--acid);border-color:var(--ink)}.topbar-status{display:flex;align-items:center;gap:8px;padding:0 var(--sp-5);font-size:10px;letter-spacing:.16em;color:var(--bone-3);position:relative;z-index:1;min-width:0;overflow:hidden}.topbar-status-val{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.topbar-status-pulse{width:8px;height:8px;background:var(--acid);box-shadow:0 0 0 0 var(--acid);animation:pulseGreen 1.8s ease-out infinite}@keyframes pulseGreen{0%{box-shadow:0 0 #d6ff3a8c}70%{box-shadow:0 0 0 8px #d6ff3a00}to{box-shadow:0 0 #d6ff3a00}}.topbar-status-sep{color:var(--bone-4)}.topbar-status-val{color:var(--bone-2)}.topbar-me{display:flex;align-items:center;gap:var(--sp-3);padding:0 var(--sp-5);border-left:2px solid var(--rule);position:relative;z-index:1}.topbar-admin-drift{display:inline-flex;align-items:center;gap:6px;padding:4px 8px;background:transparent;border:1px solid var(--coin, #f5b400);color:var(--coin, #f5b400);font-family:var(--display, sans-serif);font-weight:700;font-size:10px;letter-spacing:.14em;cursor:pointer;transition:background .1s,color .1s}.topbar-admin-drift:hover{background:var(--coin, #f5b400);color:var(--ink, #0a0a0c)}.topbar-admin-drift-dot{width:6px;height:6px;background:var(--coin, #f5b400);box-shadow:0 0 0 0 var(--coin, #f5b400);animation:adminDriftPulse 1.6s ease-out infinite}@keyframes adminDriftPulse{0%{box-shadow:0 0 #f5b4008c}70%{box-shadow:0 0 0 6px #f5b40000}to{box-shadow:0 0 #f5b40000}}.topbar-admin-drift:hover .topbar-admin-drift-dot{background:var(--ink, #0a0a0c)}.topbar-user{display:flex;align-items:center;gap:var(--sp-3)}.topbar-user-text{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.topbar-user-handle{font-weight:700;letter-spacing:.04em;font-size:13px}.topbar-user-sub{display:inline-flex;align-items:center;gap:4px;font-family:var(--mono);font-size:10px;color:var(--acid);letter-spacing:.12em}.topbar-user-dot{width:6px;height:6px;background:var(--acid)}.btn{display:inline-flex;align-items:center;gap:6px;justify-content:center;font-family:var(--display);font-weight:700;letter-spacing:.12em;font-size:11px;padding:9px 14px;cursor:pointer;border:1px solid var(--rule-hi);color:var(--bone);background:var(--char);transition:all .1s;position:relative}.btn:hover{border-color:var(--bone-2);background:var(--char-2)}.btn-ghost{background:transparent;color:var(--bone-2)}.btn-ghost:hover{color:var(--bone);border-color:var(--bone-2)}.btn-small{padding:6px 10px;font-size:10px}.btn-jumbo{padding:16px 26px;font-size:14px;letter-spacing:.18em;border-width:2px}.btn-primary{background:var(--acid);color:var(--ink);border-color:var(--acid);box-shadow:4px 4px 0 0 var(--ink)}.btn-primary:hover{background:var(--acid-2);border-color:var(--acid-2);transform:translate(-1px,-1px);box-shadow:5px 5px 0 0 var(--ink)}.btn-primary:disabled,.btn-primary.is-disabled{background:var(--char-2);color:var(--bone-3);border-color:var(--rule);box-shadow:4px 4px 0 0 var(--ink);cursor:not-allowed;transform:none}.btn-arrow{font-size:14px;margin-left:4px;transition:transform .12s cubic-bezier(.2,.7,.3,1)}.btn-primary:disabled .btn-arrow{color:var(--bone-3)}.btn:hover .btn-arrow{transform:translate(3px)}.btn-suffix{font-size:14px;margin-left:4px;display:inline-block;transition:transform .12s cubic-bezier(.2,.7,.3,1)}.btn:hover .btn-suffix{transform:rotate(90deg)}.btn-danger{color:var(--blood)}.btn-danger:hover{border-color:var(--blood);color:var(--blood)}.btn-toggle{background:var(--char-2);color:var(--bone);border-color:var(--rule-hi)}.btn-toggle.is-on{background:var(--ink);color:var(--acid);border-color:var(--acid);box-shadow:inset 0 0 0 1px var(--acid)}.btn-toggle.is-on:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-acid);opacity:.5;pointer-events:none}.btn-cta{animation:btnCtaArrive .44s cubic-bezier(.18,.85,.3,1) backwards;animation-delay:calc(var(--btn-stagger, 0) * 90ms);transform-origin:50% 0}@keyframes btnCtaArrive{0%{transform:translateY(-22px) scale(.85);opacity:0}55%{transform:translateY(4px) scale(1.05);opacity:1}75%{transform:translateY(-2px) scale(.99)}to{transform:translateY(0) scale(1);opacity:1}}.btn-cta.is-engaging{animation:btnCtaPress .24s cubic-bezier(.2,.7,.3,1) forwards;animation-delay:0ms;pointer-events:none}@keyframes btnCtaPress{0%{transform:scale(1);filter:brightness(1);box-shadow:4px 4px 0 0 var(--ink)}30%{transform:scale(.93) translate(2px,2px);filter:brightness(1.4);box-shadow:0 0 18px #d6ff3a99}65%{transform:scale(1.04);filter:brightness(1.15);box-shadow:5px 5px 0 0 var(--ink),0 0 24px #d6ff3a73}to{transform:scale(1);filter:brightness(1.1);box-shadow:4px 4px 0 0 var(--ink)}}.avatar{position:relative;background:var(--ink);border:1px solid var(--rule-hi);flex-shrink:0}.status-dot{display:inline-block}.rail{display:flex;flex-direction:column;min-height:0;background:var(--char)}.rail-section{padding:var(--sp-3) 0;display:flex;flex-direction:column;min-height:0}.rail-section-head{display:flex;align-items:center;justify-content:space-between;padding:0 var(--sp-4) var(--sp-2)}.rail-section-title{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--bone-2)}.rail-section-count{font-family:var(--mono);font-size:10px;color:var(--bone-3)}.rail-presence{border-right:2px solid var(--rule)}.rail-section-presence{flex:1;overflow-y:auto}.rail-concede{display:flex;align-items:center;justify-content:center;width:100%;padding:var(--sp-3) var(--sp-4);background:transparent;border:0;border-top:1px solid var(--rule);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--blood, #e84545);cursor:pointer;transition:background .1s,color .1s}.rail-concede:hover{background:#e8454514}.rail-concede.is-voted{background:#e845452e;color:var(--bone-1)}.rail-concede.is-voted:hover{background:#e845454d}.rail-concede-label{font-variant-numeric:tabular-nums}.rail-spectate-exit{display:flex;align-items:center;justify-content:center;width:100%;padding:var(--sp-3) var(--sp-4);background:transparent;border:0;border-top:1px solid var(--rule);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--bone-2, #b8b0a0);cursor:pointer;transition:background .1s,color .1s}.rail-spectate-exit:hover{background:#ffffff0f;color:var(--bone-1)}.rail-spectate-exit-label{font-variant-numeric:tabular-nums}.self-card{display:grid;grid-template-columns:auto 1fr;gap:var(--sp-3);align-items:center;padding:var(--sp-4) var(--sp-4) var(--sp-4);border-bottom:2px solid var(--rule);background:var(--ink);position:relative}.self-card:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--hatch-acid);opacity:.6}.self-card-body{display:flex;flex-direction:column;gap:2px;min-width:0}.self-card-handle{font-weight:700;font-size:14px;letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.self-card-sub{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10px;letter-spacing:.1em}.self-card-pulse{width:6px;height:6px;background:var(--acid);animation:pulseGreen 1.8s ease-out infinite}.self-card-status{color:var(--acid)}.self-card-sep{color:var(--bone-4)}.self-card-rank{color:var(--bone-3)}.fgroup{margin-top:4px;border-top:1px solid var(--rule)}.fgroup:first-of-type{border-top:0}.fgroup-head{width:100%;display:grid;grid-template-columns:8px 1fr auto auto;align-items:center;gap:8px;padding:8px var(--sp-4);background:transparent;border:0;cursor:pointer;color:var(--bone-2);font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.16em;text-align:left;transition:background 80ms,color 80ms}.fgroup-head:hover:not(:disabled){background:var(--char-2);color:var(--bone)}.fgroup-head:disabled{cursor:default;opacity:.55}.fgroup-dot{width:8px;height:8px}.fgroup-dot.is-online{background:var(--acid)}.fgroup-dot.is-in-run{background:var(--cobalt)}.fgroup-dot.is-in-lobby{background:var(--coin)}.fgroup-dot.is-idle{background:var(--bone-3)}.fgroup-dot.is-offline{background:transparent;outline:1px solid var(--bone-4);outline-offset:-1px}.fgroup-label{color:inherit}.fgroup-count{font-size:11px;color:var(--bone-3);letter-spacing:.04em;font-weight:500}.fgroup.is-empty .fgroup-count{color:var(--bone-4)}.fgroup-caret{font-family:var(--mono);font-size:13px;color:var(--bone-3);width:12px;text-align:center}.fgroup-list{display:flex;flex-direction:column;padding-bottom:6px}.presence-row{display:grid;grid-template-columns:8px 26px 1fr auto;align-items:center;gap:var(--sp-2);padding:5px var(--sp-4) 5px calc(var(--sp-4) + 8px);margin:3px 0;border:1px solid var(--rule);border-left:2px solid transparent;transition:background 80ms}.presence-row.presence-row-arriving{animation:presenceRowArrive var(--mo-base, .24s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) backwards}.presence-row.presence-row-leaving{animation:presenceRowLeave var(--mo-quick, .2s) var(--ease-leave, ease-in) forwards;pointer-events:none}@keyframes presenceRowArrive{0%{opacity:0;transform:translate(-18px);border-left-color:var(--acid)}60%{opacity:1;transform:translate(0)}to{opacity:1;transform:translate(0);border-left-color:transparent}}@keyframes presenceRowLeave{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-12px)}}body.is-reduce-motion .presence-row.presence-row-arriving,body.is-reduce-motion .presence-row.presence-row-leaving{animation-duration:.01ms!important}.presence-row-text{display:flex;flex-direction:column;gap:2px;min-width:0}.presence-row-meta{display:flex;align-items:center;gap:4px;flex-wrap:wrap}.presence-rank{font-size:9px;font-weight:700;letter-spacing:.12em;color:var(--ink);background:gold;border:1px solid gold;padding:1px 5px;text-align:center;white-space:nowrap}.presence-state-dot{width:8px;height:8px;border-radius:50%;background:var(--bone-3);box-shadow:0 0 0 1px var(--ink);flex-shrink:0}.presence-state-dot.is-in-run{background:var(--acid, #d6ff3a);box-shadow:0 0 0 1px var(--ink),0 0 6px #d6ff3a8c}.presence-state-dot.is-spectating{background:var(--cobalt, #6f9bff);box-shadow:0 0 0 1px var(--ink),0 0 6px #6f9bff66}.presence-state-dot.is-in-party{background:var(--coin, #f5b400);box-shadow:0 0 0 1px var(--ink)}.presence-state-dot.is-in-lobby{background:var(--bone-3)}.presence-level{font-size:10px;font-weight:700;letter-spacing:.04em;color:var(--bone-3);background:var(--char-2);border:1px solid var(--rule);padding:1px 5px;min-width:22px;text-align:center}.presence-row.is-clickable:hover .presence-level{color:var(--bone);border-color:var(--rule-hi)}.presence-row:hover{background:var(--char-2)}.presence-row.is-clickable{cursor:pointer}.presence-row.is-clickable:hover{border-left-color:var(--cobalt)}.presence-dm{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--bone-3);opacity:0;transition:opacity .1s,color .1s}.presence-row.is-clickable:hover .presence-dm{opacity:1;color:var(--cobalt)}.presence-name{font-size:12px;color:var(--bone);letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.presence-name-you{opacity:.55;font-size:10px;letter-spacing:.04em}.slabline{display:flex;align-items:center;gap:var(--sp-3);padding:6px 0}.slabline-hatch{flex:1;height:8px;background:var(--hatch-bone);opacity:.55}.slabline-label{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.2em;color:var(--bone-2);white-space:nowrap}.slabline-right{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.12em;color:var(--bone-3);padding:2px 6px;border:1px solid var(--rule-hi);min-width:0;max-width:min(60vw,540px);overflow:hidden}.adventure-summary{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}.adventure-summary-name{color:var(--bone-2)}.adventure-summary-sep{color:var(--bone-4)}.adventure-summary-effects{color:var(--acid)}.adv-summary-tt{display:flex;flex-direction:column;gap:var(--sp-2);min-width:240px;max-width:360px;padding:var(--sp-3) var(--sp-3);background:var(--ink);border:1px solid var(--rule-hi);box-shadow:4px 4px #0000008c}.adv-summary-tt-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-2);padding-bottom:4px;border-bottom:1px solid var(--rule)}.adv-summary-tt-name{font-family:var(--display);font-weight:700;font-size:13px;letter-spacing:.08em;color:var(--bone)}.adv-summary-tt-tier{font-size:10px;letter-spacing:.12em;color:var(--acid)}.adv-summary-tt-empty{font-size:12px;color:var(--bone-3);line-height:1.4}.adv-summary-tt-list{display:flex;flex-direction:column;gap:var(--sp-2);margin:0;padding:0;list-style:none}.adv-summary-tt-row{display:flex;flex-direction:column;gap:2px}.adv-summary-tt-row-name{font-size:11px;letter-spacing:.1em;color:var(--acid)}.adv-summary-tt-row-blurb{font-size:12px;line-height:1.4;color:var(--bone-2);white-space:normal}.slabline-acid .slabline-label{color:var(--acid)}.slabline-acid .slabline-hatch{background:var(--hatch-acid);opacity:.7}.slabline-blood .slabline-label{color:var(--blood)}.slabline-muted .slabline-label{color:var(--bone-3)}.ready-pip{display:inline-block;background:var(--char-3);border:1px solid var(--rule-hi);flex-shrink:0}.ready-pip.is-empty{background:transparent}.ready-pip.is-filled{background:var(--bone-3);border-color:var(--bone-3)}.ready-pip.is-ready{background:var(--acid);border-color:var(--acid);box-shadow:0 0 0 1px var(--ink),0 0 8px #d6ff3a66}.ready-pip.is-run{background:var(--cobalt);border-color:var(--cobalt)}.rail-chat{background:var(--ink);min-width:0;border-left:2px solid var(--rule);position:relative;width:100%}.chat-head{border-bottom:2px solid var(--rule);background:var(--char);flex-shrink:0;position:relative}.chat-head:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--hatch-acid);opacity:.35}.chat-parents{display:flex;align-items:center;gap:0;padding:0 var(--sp-3);border-bottom:1px solid var(--rule);background:var(--char-2)}.chat-parents-spacer{flex:1}.chat-parent-search{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;border:1px solid transparent;color:var(--bone-3);font-family:var(--mono);font-size:14px;cursor:pointer;margin-right:var(--sp-1);transition:color .1s,border-color .1s,background .1s}.chat-parent-search:hover{color:var(--acid);border-color:var(--rule-hi);background:var(--char-3)}.chat-parent{display:inline-flex;align-items:center;gap:6px;padding:var(--sp-2) var(--sp-3);background:transparent;border:0;border-bottom:2px solid transparent;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.1em;color:var(--bone-3);cursor:pointer;transition:color .1s,border-color .1s,background .1s}.chat-parent:hover:not(:disabled){color:var(--bone);background:var(--char-3)}.chat-parent.is-active{color:var(--bone);border-bottom-color:var(--acid)}.chat-parent.is-system.is-active{border-bottom-color:var(--blood)}.chat-parent.is-disabled,.chat-parent:disabled{opacity:.4;cursor:not-allowed}.chat-parent-glyph{color:var(--bone-4);font-weight:700}.chat-parent.is-active .chat-parent-glyph{color:var(--acid)}.chat-parent.is-system.is-active .chat-parent-glyph{color:var(--blood)}.chat-parent-label{letter-spacing:.08em}@media(max-width:1080px){.chat-parent-label{display:none}.chat-parent{padding:var(--sp-2) var(--sp-2)}}.chat-children{display:flex;flex-wrap:wrap;gap:0;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--rule)}.chat-child{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;background:transparent;border:1px solid transparent;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.06em;color:var(--bone-3);cursor:pointer;transition:color .1s,background .1s,border-color .1s}.chat-child:hover{color:var(--bone);background:var(--char-2)}.chat-child.is-active{color:var(--ink);background:var(--acid);border-color:var(--acid)}.chat-child.is-dm.is-active{background:var(--cobalt);border-color:var(--cobalt);color:var(--ink)}.chat-child-hash{color:var(--bone-4);font-weight:700}.chat-child:hover .chat-child-hash{color:var(--bone-3)}.chat-child.is-active .chat-child-hash{color:var(--ink)}.chat-unread-dot{display:inline-flex;align-items:center;justify-content:center;min-width:16px;height:14px;margin-left:4px;padding:0 5px;border-radius:7px;background:var(--bone-4);color:var(--ink);font-family:var(--mono);font-size:9px;font-weight:600;letter-spacing:0}.chat-unread-dot.is-mentioned{background:var(--blood);color:var(--bone);box-shadow:0 0 6px #ff383880}.chat-parent .chat-unread-dot{background:var(--acid);color:var(--ink)}.chat-parent .chat-unread-dot.is-mentioned{background:var(--blood);color:var(--bone)}.chat-child.is-active .chat-unread-dot{background:var(--ink);color:var(--bone)}.chat-child.is-active .chat-unread-dot.is-mentioned{background:var(--blood);color:var(--bone)}.chat-msg-react-trigger{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin-left:6px;background:transparent;border:1px solid transparent;color:var(--bone-4);font-family:var(--mono);font-size:14px;line-height:1;opacity:0;cursor:pointer;transition:opacity .1s,color .1s,border-color .1s}.chat-msg:hover .chat-msg-react-trigger{opacity:1}.chat-msg-react-trigger:hover{color:var(--acid);border-color:var(--rule-hi)}.chat-msg-reactions{display:flex;flex-wrap:wrap;gap:4px;margin:4px 0 0;padding-left:var(--sp-1)}.chat-react-bubble{display:inline-flex;align-items:center;gap:4px;padding:1px 6px;background:var(--char-2);border:1px solid var(--rule);color:var(--bone-2);font-size:11px;line-height:1.4;cursor:pointer;transition:background .1s,border-color .1s,color .1s}.chat-react-bubble:hover{background:var(--char-3);color:var(--bone)}.chat-react-bubble.is-mine{background:var(--acid-soft);border-color:var(--acid);color:var(--bone)}.chat-react-emoji{font-size:12px;line-height:1}.chat-react-count{font-size:10px;color:var(--bone-3)}.chat-react-bubble.is-mine .chat-react-count{color:var(--acid)}.chat-react-picker{display:inline-flex;gap:2px;padding:2px 4px;background:var(--char);border:1px solid var(--rule-hi)}.chat-react-picker-item{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:transparent;border:0;color:var(--bone-2);font-size:14px;cursor:pointer}.chat-react-picker-item:hover{color:var(--acid);background:var(--char-2)}.chat-topics{display:flex;flex-wrap:wrap;gap:0;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--rule)}.chat-topic{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;background:transparent;border:1px solid transparent;font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.06em;color:var(--bone-3);cursor:pointer;transition:color .1s,background .1s,border-color .1s}.chat-topic:hover{color:var(--bone);background:var(--char-2)}.chat-topic.is-active{color:var(--ink);background:var(--acid);border-color:var(--acid)}.chat-topic-hash{color:var(--bone-4);font-weight:700}.chat-topic:hover .chat-topic-hash{color:var(--bone-3)}.chat-topic.is-active .chat-topic-hash{color:var(--ink)}.chat-tabs{display:flex;gap:0;padding:0 var(--sp-3);border-bottom:1px solid var(--rule)}.chat-tab{display:inline-flex;align-items:center;gap:6px;padding:var(--sp-3) var(--sp-3);font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.08em;color:var(--bone-3);border-bottom:2px solid transparent;background:transparent;border-left:0;border-right:0;border-top:0;transition:color .1s,border-color .1s,background .1s}.chat-tab:hover{color:var(--bone-2)}.chat-tab.is-active{color:var(--bone);border-bottom-color:var(--acid)}.chat-tab.is-dm.is-active{border-bottom-color:var(--cobalt)}.chat-tab.is-system.is-active{border-bottom-color:var(--blood)}.chat-tab-hash{color:var(--bone-4)}.chat-tab.is-active .chat-tab-hash{color:var(--acid)}.chat-tab.is-dm .chat-tab-hash{color:var(--cobalt)}.chat-tab.is-system .chat-tab-hash{color:var(--blood)}.chat-tab-close{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;margin-left:4px;font-size:10px;color:var(--bone-4);border:1px solid transparent;transition:color .1s,border-color .1s,background .1s}.chat-tab-close:hover{color:var(--bone);border-color:var(--rule-hi);background:var(--char-2)}.chat-context{display:flex;align-items:center;gap:var(--sp-2);padding:6px var(--sp-4) 8px;font-size:11px;color:var(--bone-3);letter-spacing:.02em;border-top:1px solid transparent}.chat-context-topic{flex:1;min-width:0;display:inline-block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.chat-context-toggle{flex:0 0 auto;display:inline-flex;gap:4px}.chat-stream{flex:1;overflow-y:auto;padding:var(--sp-3) var(--sp-4);display:flex;flex-direction:column;gap:2px}.chat-empty{margin:auto;padding:var(--sp-5);display:flex;flex-direction:column;align-items:center;gap:8px}.chat-empty-text{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.2em;color:var(--bone-4)}.chat-empty-hint{font-size:10px;letter-spacing:.1em;color:var(--bone-3)}.chat-msg{padding:4px 0}.chat-msg.is-cont{padding:1px 0}.chat-msg.is-fresh,.chat-event.is-fresh{animation:chatRowArrive var(--mo-quick, .18s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) backwards}.chat-msg.is-fresh:before{content:"";position:absolute;left:-8px;top:4px;bottom:4px;width:2px;background:var(--acid);opacity:0;animation:chatRowAccent var(--mo-emphatic, .36s) var(--ease-leave, ease-out) backwards;pointer-events:none}.chat-msg.is-fresh{position:relative}@keyframes chatRowArrive{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes chatRowAccent{0%{opacity:.8;transform:scaleY(.4)}60%{opacity:.5}to{opacity:0;transform:scaleY(1)}}body.is-reduce-motion .chat-msg.is-fresh,body.is-reduce-motion .chat-event.is-fresh,body.is-reduce-motion .chat-msg.is-fresh:before{animation-duration:.01ms!important}.chat-msg-head{display:flex;align-items:baseline;gap:var(--sp-2);margin-bottom:2px}.chat-msg-handle{font-weight:700;letter-spacing:.04em;font-size:15px;color:var(--bone)}.chat-msg-time{font-size:12px;color:var(--bone-3)}.chat-msg-body{position:relative;font-size:15px;line-height:1.5;color:var(--bone);word-break:break-word}.chat-msg-rail-time{position:absolute;top:0;right:0;font-size:9px;color:var(--bone-4);background:linear-gradient(to right,transparent 0%,var(--ink, #14110e) 30%);padding:0 0 0 12px;opacity:0;pointer-events:none;transition:opacity 80ms}.chat-msg.is-cont:hover .chat-msg-rail-time{opacity:1}.chat-msg.is-me .chat-msg-handle{color:var(--acid)}.chat-event{display:flex;align-items:center;gap:var(--sp-2);padding:3px 0;font-family:var(--mono);font-size:11px;color:var(--bone-3);letter-spacing:.02em}.chat-event-dot{width:4px;height:4px;background:var(--bone-4)}.chat-event-joined .chat-event-dot{background:var(--acid)}.chat-event-left .chat-event-dot{background:var(--bone-3)}.chat-event-system .chat-event-dot{background:var(--bone-4)}.chat-event-system.is-latest .chat-event-dot{background:var(--acid)}.chat-event-system.is-latest .chat-event-text{color:var(--bone)}.chat-event-text{flex:1}.chat-event-time{color:var(--bone-4);font-size:10px}.bvt-btn{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;padding:3px 8px;background:var(--char-2);color:var(--bone-3);border:1px solid var(--rule);cursor:pointer;transition:color 80ms,border-color 80ms,background 80ms}.bvt-btn:hover{color:var(--bone-2);border-color:var(--rule-hi)}.bvt-btn.is-on{color:var(--ink);background:var(--acid);border-color:var(--acid)}.battle-log-floors{position:sticky;top:0;z-index:1;display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 6px;background:var(--char-1, #14110e);border-bottom:1px dashed var(--rule)}.bl-floor-pill{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;padding:3px 7px;background:var(--char-2);color:var(--bone-3);border:1px solid var(--rule);cursor:pointer;transition:color 80ms,border-color 80ms,background 80ms}.bl-floor-pill:hover{color:var(--bone-2);border-color:var(--rule-hi)}.bl-floor-pill.is-active{color:var(--ink);background:var(--acid);border-color:var(--acid)}.round-stats-floors{position:sticky;top:0;z-index:1;display:flex;flex-wrap:wrap;gap:4px;padding:4px 0 6px;background:var(--char-1, #14110e);border-bottom:1px dashed var(--rule);margin-bottom:4px}.rs-floor-pill{font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.14em;padding:3px 7px;background:var(--char-2);color:var(--bone-3);border:1px solid var(--rule);cursor:pointer;transition:color 80ms,border-color 80ms,background 80ms}.rs-floor-pill:hover{color:var(--bone-2);border-color:var(--rule-hi)}.rs-floor-pill.is-active{color:var(--ink);background:var(--acid);border-color:var(--acid)}.round-stats{display:flex;flex-direction:column;gap:var(--sp-3);padding-bottom:8px}.round-stats-block{border:1px solid var(--rule);background:#14110e80}.round-stats-head{font-size:10px;font-weight:800;letter-spacing:.18em;color:var(--acid);padding:4px 8px;background:var(--char-2);border-bottom:1px solid var(--rule)}.round-stats-table{width:100%;border-collapse:collapse;font-family:var(--mono);font-size:10px}.round-stats-table th{font-weight:800;letter-spacing:.12em;color:var(--bone-3);padding:4px 5px;text-align:right;background:#14110ea6;cursor:help}.round-stats-table th.rs-name{text-align:left}.round-stats-table td{padding:4px 5px;border-top:1px dashed var(--rule);text-align:right;font-variant-numeric:tabular-nums;color:var(--bone-2)}.round-stats-table td.rs-name{text-align:left;color:var(--bone);font-weight:700;letter-spacing:.04em}.round-stats-table td.rs-bad{color:var(--blood)}.round-stats-table tr[data-class=archeologist] .rs-name{color:#d6a23a}.round-stats-table tr[data-class=spearman] .rs-name,.round-stats-table tr[data-class=spear] .rs-name{color:#4ec2c2}.round-stats-table tr[data-class=necromancer] .rs-name{color:#7ab84a}.round-stats-table tr[data-class=bandito] .rs-name{color:#c87b3a}.round-stats-table tr[data-class=clown] .rs-name,.round-stats-table tr[data-class=black-jackie] .rs-name{color:var(--jester, #d040ff)}.round-stats-table tr[data-class=paladin] .rs-name{color:var(--coin, #f5b400)}.round-stats-table tr[data-class=faithful] .rs-name{color:var(--blood, #ff3838)}.round-stats-summary-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--sp-3);font-size:10px;letter-spacing:.18em;color:var(--bone-3);padding:4px 8px;background:var(--char-2);border:1px solid var(--rule);border-bottom:0}.round-stats-summary-scope{color:var(--acid);font-weight:800}.round-stats-summary-rounds{text-transform:lowercase;letter-spacing:.08em;color:var(--bone-3)}.round-stats-player{border:1px solid var(--rule);background:#14110e80}.round-stats-player+.round-stats-player{border-top:0}.round-stats-player-head{display:flex;align-items:baseline;gap:var(--sp-3);padding:5px 8px 4px;background:#14110ea6;border-bottom:1px dashed var(--rule)}.round-stats-player-name{font-size:12px;font-weight:800;letter-spacing:.06em;color:var(--bone)}.round-stats-player-class{font-size:9px;letter-spacing:.18em;color:var(--bone-3);text-transform:uppercase}.round-stats-player[data-class=archeologist] .round-stats-player-name{color:#d6a23a}.round-stats-player[data-class=spearman] .round-stats-player-name,.round-stats-player[data-class=spear] .round-stats-player-name{color:#4ec2c2}.round-stats-player[data-class=necromancer] .round-stats-player-name{color:#7ab84a}.round-stats-player[data-class=bandito] .round-stats-player-name{color:#c87b3a}.round-stats-player[data-class=clown] .round-stats-player-name,.round-stats-player[data-class=black-jackie] .round-stats-player-name{color:var(--jester, #d040ff)}.round-stats-player[data-class=paladin] .round-stats-player-name{color:var(--coin, #f5b400)}.round-stats-player[data-class=faithful] .round-stats-player-name{color:var(--blood, #ff3838)}.round-stats-player-line{list-style:none;margin:0;padding:6px 8px 8px;display:flex;flex-wrap:wrap;gap:4px 12px;font-size:11px;color:var(--bone-2)}.round-stats-player-line li{white-space:nowrap}.round-stats-player-line b{color:var(--bone);font-variant-numeric:tabular-nums;font-weight:700}.round-stats-player-line .rs-bad{color:var(--blood, #ff3838)}.battle-log-block{margin:var(--sp-2) 0;border:1px solid var(--rule);border-left-width:2px;background:#14110e66;padding:var(--sp-1) var(--sp-2) var(--sp-2)}.battle-log-block.is-latest{background:#14110eb3}.battle-log-block-tag{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;padding:1px 6px;margin:0 0 var(--sp-1) -2px;background:var(--char, #1a1714);color:var(--bone-2);border-left:2px solid var(--rule)}.battle-log-block-body{display:flex;flex-direction:column;gap:2px}.battle-log-block-line{display:flex;align-items:center;gap:var(--sp-2);font-family:var(--mono);font-size:11px;color:var(--bone-3);letter-spacing:.02em}.battle-log-block.is-latest .battle-log-block-line{color:var(--bone)}.battle-log-block-dot{width:4px;height:4px;background:var(--bone-4);flex-shrink:0}.battle-log-block.is-latest .battle-log-block-dot{background:var(--acid)}.battle-log-block-text{flex:1}.battle-log-program-run{flex-direction:column;align-items:stretch;gap:2px}.battle-log-program-toggle{display:flex;align-items:center;gap:var(--sp-2);background:none;border:none;padding:0;margin:0;text-align:left;cursor:pointer;color:inherit;font:inherit;letter-spacing:inherit}.battle-log-program-toggle:hover .battle-log-block-text{color:var(--bone)}.battle-log-program-caret{width:10px;flex-shrink:0;color:var(--bone-4);font-size:10px;line-height:1;text-align:center}.battle-log-program-run.is-open .battle-log-program-caret{color:var(--acid)}.battle-log-program-more{flex-shrink:0;padding:0 4px;border:1px solid var(--rule);color:var(--bone-4);font-size:10px;line-height:1.4;letter-spacing:.04em}.battle-log-program-toggle:hover .battle-log-program-more{color:var(--bone-2);border-color:var(--bone-4)}.battle-log-program-steps{display:flex;flex-direction:column;gap:2px;padding-left:12px;border-left:1px dashed var(--rule);margin-left:4px}.battle-log-block-line.is-program-step{font-size:10.5px;color:var(--bone-4)}.battle-log-block.is-latest .battle-log-block-line.is-program-step{color:var(--bone-3)}.battle-log-block[data-class=archeologist]{border-color:var(--archeologist, #d6a23a)}.battle-log-block[data-class=archeologist] .battle-log-block-tag{border-left-color:var(--archeologist, #d6a23a);color:var(--archeologist, #d6a23a)}.battle-log-block[data-class=spearman]{border-color:var(--spearman, #4ec2c2)}.battle-log-block[data-class=spearman] .battle-log-block-tag{border-left-color:var(--spearman, #4ec2c2);color:var(--spearman, #4ec2c2)}.battle-log-block[data-class=necromancer]{border-color:var(--necromancer, #7ab84a)}.battle-log-block[data-class=necromancer] .battle-log-block-tag{border-left-color:var(--necromancer, #7ab84a);color:var(--necromancer, #7ab84a)}.battle-log-block[data-class=bandito]{border-color:var(--bandito, #c87b3a)}.battle-log-block[data-class=bandito] .battle-log-block-tag{border-left-color:var(--bandito, #c87b3a);color:var(--bandito, #c87b3a)}.battle-log-block[data-class=clown]{border-color:var(--jester, #d040ff)}.battle-log-block[data-class=clown] .battle-log-block-tag{border-left-color:var(--jester, #d040ff);color:var(--jester, #d040ff)}.battle-log-block[data-class=black-jackie]{border-color:var(--jester, #d040ff)}.battle-log-block[data-class=black-jackie] .battle-log-block-tag{border-left-color:var(--jester, #d040ff);color:var(--jester, #d040ff)}.battle-log-block[data-seat="1"]{border-color:var(--seat-1)}.battle-log-block[data-seat="1"] .battle-log-block-tag{border-left-color:var(--seat-1);color:var(--seat-1)}.battle-log-block[data-seat="2"]{border-color:var(--seat-2)}.battle-log-block[data-seat="2"] .battle-log-block-tag{border-left-color:var(--seat-2);color:var(--seat-2)}.battle-log-block[data-seat="3"]{border-color:var(--seat-3)}.battle-log-block[data-seat="3"] .battle-log-block-tag{border-left-color:var(--seat-3);color:var(--seat-3)}.battle-log-block[data-seat="4"]{border-color:var(--seat-4)}.battle-log-block[data-seat="4"] .battle-log-block-tag{border-left-color:var(--seat-4);color:var(--seat-4)}.chat-msg[data-seat="1"] .chat-msg-handle{color:var(--seat-1)}.chat-msg[data-seat="2"] .chat-msg-handle{color:var(--seat-2)}.chat-msg[data-seat="3"] .chat-msg-handle{color:var(--seat-3)}.chat-msg[data-seat="4"] .chat-msg-handle{color:var(--seat-4)}.chat-compose{border-top:1px solid var(--rule);padding:var(--sp-3) var(--sp-4);display:flex;align-items:center;gap:var(--sp-2);background:var(--char);flex-shrink:0}.chat-compose-prompt{color:var(--acid);font-weight:700;font-family:var(--mono)}.chat-compose-topic{font-size:10px;font-weight:700;color:var(--acid);padding:2px 4px;background:var(--char-2);border:1px solid var(--rule-hi)}.chat-compose-input{flex:1;min-width:0;font-size:13px;color:var(--bone)}@media(max-width:1200px){.chat-compose-count{display:none}}.chat-compose-input::placeholder{color:var(--bone-3);font-family:var(--display);font-weight:600;letter-spacing:.1em;font-size:11px}.chat-compose-count{font-size:10px;color:var(--bone-4)}.chat-compose-send{font-family:var(--display);font-weight:700;letter-spacing:.12em;font-size:10px;padding:7px 10px;background:var(--char-2);color:var(--bone-2);border:1px solid var(--rule-hi);cursor:pointer;transition:all .1s}.chat-compose-send:not(:disabled):hover{background:var(--acid);color:var(--ink);border-color:var(--acid)}.chat-compose-send:disabled{opacity:.5;cursor:default}.chat-compose-input:disabled{opacity:.5;cursor:not-allowed}.chat-compose-input:disabled::placeholder{color:var(--blood);letter-spacing:.12em}.stage{background:var(--ink);display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden;position:relative}.stage-pane{display:flex;flex-direction:column;min-height:0;flex:1}.stage-header{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--sp-4);padding:var(--sp-5) var(--sp-6) var(--sp-4);border-bottom:2px solid var(--rule);flex-shrink:0;position:relative}.stage-header:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--hatch-acid);opacity:.35}.stage-header-text{min-width:0}.stage-header-hero{padding:var(--sp-6) var(--sp-6) var(--sp-5);background:radial-gradient(ellipse at 10% 0%,rgba(214,255,58,.08),transparent 55%),var(--ink)}.stage-header-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-bone);opacity:.04;pointer-events:none}.stage-eyebrow{display:inline-flex;align-items:center;gap:6px;font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;color:var(--bone-3);margin-bottom:8px}.stage-eyebrow-loud{font-size:11px;color:var(--acid);letter-spacing:.24em}.stage-eyebrow-glyph{color:var(--acid);font-size:9px}.stage-eyebrow-mark{padding:2px 6px;background:var(--char-2);border:1px solid var(--rule-hi);color:var(--bone-2)}.stage-eyebrow-sep{color:var(--bone-4)}.stage-eyebrow-code{color:var(--acid);letter-spacing:.12em}.stage-title{font-family:var(--display);font-weight:700;letter-spacing:-.02em;font-size:42px;line-height:1;margin:0;word-break:break-word;text-shadow:3px 3px 0 rgba(214,255,58,.06)}.stage-title-mega{font-size:76px;letter-spacing:-.04em;line-height:.95;text-shadow:4px 4px 0 rgba(214,255,58,.1),8px 8px 0 rgba(0,0,0,.6)}.stage-sub{display:flex;gap:var(--sp-5);margin-top:var(--sp-3);align-items:center}.stage-sub-loud{margin-top:var(--sp-4)}.stage-sub-item{display:flex;align-items:baseline;gap:6px}.stage-sub-divider{width:1px;height:14px;background:var(--rule-hi)}.kv-k{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;color:var(--bone-3)}.kv-v{font-family:var(--display);font-weight:700;font-size:13px;color:var(--bone);letter-spacing:.04em}.kv-v.mono{font-family:var(--mono)}.stage-header-right{display:flex;gap:var(--sp-3);align-items:stretch}.stage-sub-class{background:transparent;border:0;font:inherit;font-weight:700;font-size:13px;letter-spacing:.04em;cursor:pointer;padding:0}.stage-sub-class:hover{text-decoration:underline}.room-list{flex:1;overflow-y:auto;padding:var(--sp-4) var(--sp-6) var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-3)}.room-row{display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-4);background:var(--char);border:1px solid var(--rule);position:relative;transition:border-color .1s,background .1s,transform .1s}.room-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--bone-4);transition:background .1s}.room-row:hover{border-color:var(--bone-2);background:var(--char-2);transform:translate(-1px,-1px)}.room-row:hover:before{background:var(--acid)}.room-row-num{font-size:11px;color:var(--bone-3);letter-spacing:.12em;padding-left:8px}.room-row-main{min-width:0}.room-row-name{font-family:var(--display);font-weight:700;font-size:16px;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-row-meta{font-size:11px;color:var(--bone-3);letter-spacing:.06em;margin-top:3px}.room-row-slots{display:flex;gap:3px}.room-row-slot{width:10px;height:10px;border:1px solid var(--rule-hi);background:transparent}.room-row-slot.is-filled{background:var(--acid);border-color:var(--acid)}.room-empty{margin:auto;padding:var(--sp-6);text-align:center;border:1px dashed var(--rule-hi)}.room-empty-kicker{font-family:var(--display);font-weight:700;font-size:12px;letter-spacing:.2em;color:var(--bone-4)}.room-empty-line{font-size:12px;color:var(--bone-3);margin-top:var(--sp-3);letter-spacing:.06em}.room-empty-line strong{color:var(--acid);letter-spacing:.1em}.dungeon-select{padding:0 var(--sp-6) var(--sp-5)}.dungeon-tabs{display:flex;gap:var(--sp-2);margin:var(--sp-3) 0}.dungeon-tab{flex:0 0 auto;padding:8px 18px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone-2);font:inherit;font-size:11px;letter-spacing:.18em;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.dungeon-tab:hover{border-color:var(--acid);color:var(--bone)}.dungeon-tab.is-active{border-color:var(--acid);color:var(--acid);background:linear-gradient(180deg,rgba(214,255,58,.06),transparent 70%),var(--char);box-shadow:inset 0 0 0 1px var(--acid)}.dungeon-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3)}.training-launcher{display:flex;flex-direction:column;gap:var(--sp-3);margin-top:var(--sp-3)}.training-launch{width:100%}.training-launch.is-on{border-color:var(--acid)}.dungeon-card{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px 16px;min-height:148px;background:var(--char);border:1px solid var(--rule-hi);color:inherit;font:inherit;text-align:left;cursor:default;transition:border-color .12s,transform .12s,background .12s}.dungeon-card.is-selectable{cursor:pointer}.dungeon-card.is-selectable:hover{border-color:var(--acid);transform:translateY(-1px);background:var(--char-2)}.dungeon-card.is-selectable:focus-visible{outline:1px solid var(--acid);outline-offset:2px}.dungeon-card.is-locked{opacity:.55}.dungeon-card.is-selected{border-color:var(--acid);background:linear-gradient(180deg,rgba(214,255,58,.06),transparent 70%),var(--char);box-shadow:inset 0 0 0 1px var(--acid)}.dungeon-card-head{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.16em}.dungeon-card-tier{color:var(--bone-3)}.dungeon-card-marker{margin-left:auto;padding:2px 6px;border:1px solid var(--acid);color:var(--ink);background:var(--acid);font-weight:700}.dungeon-card-marker.is-locked{border-color:var(--bone-3);color:var(--bone-2);background:transparent}.dungeon-card-name{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.06em;margin:6px 0 0;color:var(--bone)}.dungeon-card.is-locked .dungeon-card-name{color:var(--bone-3)}.dungeon-card-blurb{font-size:11px;line-height:1.5;color:var(--bone-2);margin:0}.dungeon-card-effects{margin:4px 0 0;font-size:11px;letter-spacing:.08em;color:var(--acid);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dungeon-card-effects .adventure-summary{display:block;max-width:100%}.dungeon-card-foot{margin-top:auto;font-size:10px;letter-spacing:.14em;color:var(--bone-3)}.dungeon-card-foot-mute{color:var(--bone-4)}.dungeon-card-difficulty{display:flex;flex-direction:column;gap:8px;padding:8px 0 4px;border-top:1px dashed var(--rule-hi);margin-top:6px}.dungeon-card-tier-strip{display:flex;flex-wrap:wrap;gap:4px}.dungeon-card-tier-chip{flex:0 0 auto;padding:4px 10px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone-2);font:inherit;font-size:10px;letter-spacing:.14em;font-weight:700;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.dungeon-card-tier-chip:hover:not(:disabled){border-color:var(--acid);color:var(--bone)}.dungeon-card-tier-chip.is-active{border-color:var(--acid);color:var(--ink);background:var(--acid);cursor:default}.dungeon-card-mod-row{display:flex;flex-wrap:wrap;gap:4px}.dungeon-card-mod-chip{flex:0 0 auto;padding:3px 8px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone-3);font:inherit;font-size:10px;letter-spacing:.12em;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.dungeon-card-mod-chip:hover:not(:disabled){border-color:var(--acid);color:var(--bone)}.dungeon-card-mod-chip.is-on{border-color:var(--acid);color:var(--acid);background:linear-gradient(180deg,rgba(214,255,58,.08),transparent 70%),var(--char)}.dungeon-card-mod-chip.is-forced{cursor:default;opacity:.85}.dungeon-card-tier-chip.is-locked{cursor:not-allowed;opacity:.45;color:var(--bone-3)}.dungeon-card-tier-chip.is-locked:hover{border-color:var(--rule-hi);color:var(--bone-3)}.dungeon-card-tier-lock{margin-right:4px;font-size:9px}.destination-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#080a0cc7;padding:var(--sp-5);animation:destinationModalFadeIn .16s ease-out}@keyframes destinationModalFadeIn{0%{opacity:0}to{opacity:1}}.destination-modal{position:relative;width:min(720px,100%);max-height:90vh;overflow-y:auto;background:var(--char);border:1px solid var(--acid);box-shadow:6px 6px 0 0 var(--ink),inset 0 0 0 1px var(--acid);padding:var(--sp-4) var(--sp-5) var(--sp-5)}.destination-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--sp-3);margin-bottom:var(--sp-3)}.destination-modal-kicker{font-size:10px;letter-spacing:.18em;color:var(--bone-3)}.destination-modal-title{font-family:var(--display);font-weight:700;font-size:22px;letter-spacing:.06em;margin:4px 0 0;color:var(--bone)}.destination-modal-close{background:transparent;border:1px solid var(--rule-hi);color:var(--bone-2);font:inherit;font-size:14px;width:28px;height:28px;cursor:pointer;transition:border-color .12s,color .12s}.destination-modal-close:hover{border-color:var(--acid);color:var(--bone)}.destination-modal .dungeon-select{padding:0}.difficulty-panel{padding:0 var(--sp-6) var(--sp-5)}.difficulty-tiers{display:flex;gap:var(--sp-2);margin:var(--sp-3) 0}.difficulty-tier{flex:0 0 auto;display:flex;flex-direction:column;gap:2px;padding:8px 18px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone-2);font:inherit;font-size:11px;letter-spacing:.18em;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.difficulty-tier:hover:not(:disabled){border-color:var(--acid);color:var(--bone)}.difficulty-tier.is-active{border-color:var(--acid);color:var(--acid);background:linear-gradient(180deg,rgba(214,255,58,.06),transparent 70%),var(--char);box-shadow:inset 0 0 0 1px var(--acid)}.difficulty-tier:disabled{cursor:default}.difficulty-tier-name{font-weight:700}.difficulty-tier-blurb{font-size:10px;letter-spacing:.08em;text-transform:none;color:var(--bone-3)}.difficulty-mods{display:flex;flex-direction:column;gap:var(--sp-2);margin-top:var(--sp-3)}.difficulty-mod{display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:10px;padding:10px 14px;background:var(--char);border:1px solid var(--rule-hi);color:var(--bone-2);font:inherit;text-align:left;cursor:pointer;transition:border-color .12s,color .12s,background .12s}.difficulty-mod:hover:not(:disabled){border-color:var(--acid);color:var(--bone)}.difficulty-mod.is-on{border-color:var(--acid);color:var(--bone);background:linear-gradient(180deg,rgba(214,255,58,.06),transparent 70%),var(--char);box-shadow:inset 0 0 0 1px var(--acid)}.difficulty-mod:disabled{cursor:default}.difficulty-mod.is-forced{opacity:.85}.difficulty-mod-tick{font-size:14px;color:var(--acid)}.difficulty-mod:not(.is-on) .difficulty-mod-tick{color:var(--bone-3)}.difficulty-mod-name{font-size:11px;letter-spacing:.18em;font-weight:700}.difficulty-mod-blurb{font-size:11px;line-height:1.4;color:var(--bone-3)}.difficulty-mod.is-on .difficulty-mod-blurb{color:var(--bone-2)}.difficulty-mod-lock{font-size:9px;letter-spacing:.14em;padding:2px 6px;border:1px solid var(--bone-3);color:var(--bone-3)}.member-grid{flex:1;overflow-y:auto;padding:var(--sp-5) var(--sp-6);display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--sp-3);align-content:start;position:relative}.member-card{--cls-accent: var(--bone-2);position:relative;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--char);border:1px solid var(--rule);animation:memberCardSlap .36s cubic-bezier(.18,.85,.3,1);transform-origin:50% 0}.member-card-bar{position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--cls-accent)}@keyframes memberCardSlap{0%{transform:translateY(-46px) scale(.85);opacity:0}55%{transform:translateY(6px) scale(1.04);opacity:1}72%{transform:translateY(-3px) scale(.98)}to{transform:translateY(0) scale(1);opacity:1}}.member-card.is-owner{border-color:var(--acid)}.member-card.is-owner .member-card-bar{background:var(--acid)}.member-card[data-seat="1"] .member-card-bar{background:var(--seat-1)}.member-card[data-seat="2"] .member-card-bar{background:var(--seat-2)}.member-card[data-seat="3"] .member-card-bar{background:var(--seat-3)}.member-card[data-seat="4"] .member-card-bar{background:var(--seat-4)}.member-card{text-align:left;font:inherit;color:var(--bone);cursor:pointer}.member-card:disabled{cursor:default}.member-card.is-swappable:hover{background:var(--char-2);border-color:var(--rule-hi)}.member-card.is-swappable:active{transform:translateY(1px)}.member-card.is-arriving{animation:memberCardArrive var(--mo-emphatic, .36s) var(--ease-arrive, cubic-bezier(.18, .85, .3, 1)) backwards}.member-card.is-claiming{animation:memberCardClaim var(--mo-emphatic, .36s) var(--ease-punch, cubic-bezier(.34, 1.56, .64, 1)) backwards}@keyframes memberCardArrive{0%{opacity:0;transform:translate(-24px);outline:2px solid var(--acid);outline-offset:2px}60%{opacity:1;transform:translate(0);outline-color:var(--acid)}to{opacity:1;transform:translate(0);outline-color:transparent;outline-offset:0}}@keyframes memberCardClaim{0%{transform:scale(1.08);box-shadow:0 0 0 4px var(--ember)}50%{transform:scale(.98);box-shadow:0 0 0 6px transparent}to{transform:scale(1);box-shadow:0 0 0 0 transparent}}body.is-reduce-motion .member-card.is-arriving,body.is-reduce-motion .member-card.is-claiming{animation-duration:.01ms!important}body.is-lobby-departing .member-card{animation:lobbyPlaqueDepart .56s var(--ease-leave, cubic-bezier(.4, 0, .7, 1)) forwards;pointer-events:none}body.is-lobby-departing .member-card[data-seat="1"]{animation-delay:0ms}body.is-lobby-departing .member-card[data-seat="2"]{animation-delay:80ms}body.is-lobby-departing .member-card[data-seat="3"]{animation-delay:.16s}body.is-lobby-departing .member-card[data-seat="4"]{animation-delay:.24s}@keyframes lobbyPlaqueDepart{0%{transform:translateY(0) scale(1);opacity:1}40%{transform:translateY(-6px) scale(1.02);opacity:1}to{transform:translate(-120px) translateY(40px) scale(.92);opacity:0}}body.is-lobby-departing .rail-presence{animation:lobbyChromeReedeLeft var(--mo-marquee, .72s) var(--ease-recede, cubic-bezier(.55, 0, 1, .45)) 80ms forwards}body.is-lobby-departing .rail-chat{animation:lobbyChromeReedeRight var(--mo-marquee, .72s) var(--ease-recede, cubic-bezier(.55, 0, 1, .45)) 80ms forwards}body.is-lobby-departing .social-ribbon,body.is-lobby-departing .invite-banner-stack{animation:lobbyChromeReedeTop var(--mo-marquee, .72s) var(--ease-recede, cubic-bezier(.55, 0, 1, .45)) 0ms forwards}body.is-lobby-departing .topbar{animation:lobbyChromeReedeTop var(--mo-marquee, .72s) var(--ease-recede, cubic-bezier(.55, 0, 1, .45)) 40ms forwards}@keyframes lobbyChromeReedeLeft{0%{transform:translate(0);opacity:1}to{transform:translate(-32px);opacity:0}}@keyframes lobbyChromeReedeRight{0%{transform:translate(0);opacity:1}to{transform:translate(32px);opacity:0}}@keyframes lobbyChromeReedeTop{0%{transform:translateY(0);opacity:1}to{transform:translateY(-12px);opacity:0}}body.is-departing-solo .rail-presence,body.is-departing-solo .rail-chat,body.is-departing-solo .social-ribbon,body.is-departing-solo .invite-banner-stack,body.is-departing-solo .topbar{animation-duration:.54s}body.is-reduce-motion.is-lobby-departing .member-card,body.is-reduce-motion.is-lobby-departing .rail-presence,body.is-reduce-motion.is-lobby-departing .rail-chat,body.is-reduce-motion.is-lobby-departing .social-ribbon,body.is-reduce-motion.is-lobby-departing .invite-banner-stack,body.is-reduce-motion.is-lobby-departing .topbar{animation-duration:.01ms!important}.member-slot-open[data-seat="1"]{--seat-color: var(--seat-1)}.member-slot-open[data-seat="2"]{--seat-color: var(--seat-2)}.member-slot-open[data-seat="3"]{--seat-color: var(--seat-3)}.member-slot-open[data-seat="4"]{--seat-color: var(--seat-4)}.member-slot-open[data-seat]{border-left-width:3px;border-left-style:solid;border-left-color:var(--seat-color, var(--bone-4))}.member-slot-open[data-seat]:hover:not(:disabled){border-left-color:var(--seat-color)}.member-slot-seat-num{font-size:10px;letter-spacing:.18em;color:var(--seat-color, var(--bone-3));font-weight:700}.member-card.is-me{background:var(--char-2)}.member-card.is-ready{border-color:var(--acid);box-shadow:inset 0 0 0 1px var(--acid)}.member-card-body{display:flex;flex-direction:column;gap:3px;min-width:0}.member-card-name{font-weight:700;font-size:14px;letter-spacing:.04em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.member-card-class{font-size:10px;letter-spacing:.16em;font-weight:700;color:var(--cls-accent)}.member-card-tag{display:inline-block;font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;color:var(--bone-3);padding:2px 6px;border:1px solid var(--rule-hi);margin-top:2px}.member-card-tag.is-host{color:var(--ink);background:var(--acid);border-color:var(--acid)}.member-card-tag.is-me{color:var(--bone);border-color:var(--bone-2)}.member-card-ready{display:flex;flex-direction:column;align-items:center;gap:4px}.member-card-ready-label{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;color:var(--bone-3)}.member-card.is-ready .member-card-ready-label{color:var(--acid)}.member-slot-open{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:var(--sp-3) var(--sp-4);background:transparent;border:1px dashed var(--rule-hi);color:var(--bone-3);cursor:pointer;transition:border-color .1s,color .1s,background .1s;min-height:64px}.member-slot-open:hover:not(:disabled){border-color:var(--acid);color:var(--acid);background:var(--acid-soft)}.member-slot-open:disabled{opacity:.5;cursor:not-allowed}.member-slot-plus{font-family:var(--mono);font-size:22px;line-height:1}.member-slot-label{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.16em}.slot-corner{position:absolute;width:10px;height:10px;border-color:var(--rule-hi);border-style:solid;border-width:0}.slot-corner-tl{top:-1px;left:-1px;border-top-width:2px;border-left-width:2px}.slot-corner-tr{top:-1px;right:-1px;border-top-width:2px;border-right-width:2px}.slot-corner-bl{bottom:-1px;left:-1px;border-bottom-width:2px;border-left-width:2px}.slot-corner-br{bottom:-1px;right:-1px;border-bottom-width:2px;border-right-width:2px}.member-slot-open:hover:not(:disabled) .slot-corner{border-color:var(--acid)}.dungeon-card:hover:not(:disabled) .slot-corner,.dungeon-card.is-selected .slot-corner{border-color:var(--acid)}.adventure-panel{padding:var(--sp-4) var(--sp-6) var(--sp-5);border-top:2px solid var(--rule);background:var(--ink);flex-shrink:0;position:relative}.adventure-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-bone);opacity:.03;pointer-events:none}.readybar{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-4) var(--sp-6);background:var(--char);border-top:2px solid var(--rule);position:relative;flex-shrink:0}.readybar:before{content:"";position:absolute;left:0;right:0;top:-2px;height:2px;background:var(--hatch-acid);opacity:.4}.readybar-left{display:flex;gap:var(--sp-6);align-items:center}.readybar-block{display:flex;flex-direction:column;gap:4px}.rb-k{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.18em;color:var(--bone-3)}.rb-v{display:flex;align-items:center;gap:6px;min-height:22px}.rb-text{font-size:11px;color:var(--bone-2);margin-left:4px;letter-spacing:.04em}.rb-text-big{font-weight:700;font-size:16px;color:var(--bone);letter-spacing:.06em}.rb-text-faded{color:var(--bone-3);font-weight:500;margin-left:1px}.readybar-right{display:flex;gap:var(--sp-3);align-items:center}.invite-picker{position:absolute;bottom:var(--sp-4);right:var(--sp-4);width:300px;max-height:360px;background:var(--char-2);border:1px solid var(--rule-hi);box-shadow:5px 5px 0 0 var(--acid);display:flex;flex-direction:column;z-index:5;animation:popIn .12s ease-out}@keyframes popIn{0%{transform:translateY(6px);opacity:0}to{transform:translateY(0);opacity:1}}.invite-picker-head{display:flex;justify-content:space-between;align-items:center;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule)}.invite-picker-title{font-family:var(--display);font-weight:700;font-size:11px;letter-spacing:.16em;color:var(--bone-2)}.iconbtn-small{width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;color:var(--bone-3);background:transparent;border:1px solid transparent;cursor:pointer;transition:all .1s}.iconbtn-small:hover{color:var(--bone);border-color:var(--rule-hi)}.invite-picker-list{overflow-y:auto;flex:1}.invite-picker-row{display:grid;grid-template-columns:20px 1fr auto;align-items:center;gap:var(--sp-2);padding:6px var(--sp-4);cursor:pointer;border-left:2px solid transparent;transition:background 80ms,border-color 80ms}.invite-picker-row:hover{background:var(--char);border-left-color:var(--acid)}.invite-picker-name{font-size:12px;color:var(--bone);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.invite-picker-cta{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.16em;color:var(--acid);opacity:0;transition:opacity .1s}.invite-picker-row:hover .invite-picker-cta{opacity:1}.invite-picker-empty{padding:var(--sp-4);text-align:center;font-family:var(--mono);font-size:11px;color:var(--bone-3);letter-spacing:.04em}.invite-banner-stack{display:flex;flex-direction:column;gap:0;border-bottom:2px solid var(--rule)}.invite-banner{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:var(--sp-4);padding:var(--sp-3) var(--sp-5);background:linear-gradient(90deg,rgba(245,180,0,.12),transparent 60%);border-left:4px solid var(--coin);font-size:13px;position:relative}.invite-banner:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--hatch-bone);opacity:.04;pointer-events:none}.invite-banner-kicker{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.2em;color:var(--coin);padding:3px 6px;border:1px solid var(--coin)}.invite-banner-body{display:inline-flex;align-items:baseline;gap:6px;color:var(--bone)}.invite-banner-from{font-weight:700}.invite-banner-sep{color:var(--bone-3)}.invite-banner-room{font-family:var(--display);font-weight:700;letter-spacing:.04em}.invite-banner-actions{display:flex;gap:var(--sp-2)}.invite-banner-arriving{animation:inviteBannerArrive var(--mo-emphatic, .36s) var(--ease-punch, cubic-bezier(.34, 1.56, .64, 1)) backwards}.invite-banner-leaving{animation:inviteBannerLeave var(--mo-base, .22s) var(--ease-leave, ease-in) forwards;pointer-events:none}@keyframes inviteBannerArrive{0%{opacity:0;transform:translateY(-18px)}55%{opacity:1;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@keyframes inviteBannerLeave{0%{opacity:1;transform:translateY(0);max-height:80px}to{opacity:0;transform:translateY(-12px);max-height:0}}body.is-reduce-motion .invite-banner-arriving,body.is-reduce-motion .invite-banner-leaving{animation-duration:.01ms!important}.loadout-callout{--cls-accent: var(--bone-2);position:relative;display:grid;grid-template-columns:auto auto 1fr auto;align-items:center;gap:var(--sp-4);margin:0 var(--sp-6) var(--sp-4);padding:var(--sp-3) var(--sp-4) var(--sp-3) var(--sp-5);background:var(--char);border:1px solid var(--rule);font:inherit;color:inherit;text-align:left;cursor:pointer;transition:background .1s,border-color .1s,transform .1s}.loadout-callout-bar{position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--cls-accent)}.loadout-callout:hover{background:var(--char-2);border-color:var(--rule-hi);transform:translate(-1px,-1px)}.loadout-callout-kicker{font-family:var(--display);font-weight:700;font-size:9px;letter-spacing:.2em;color:var(--bone-3)}.loadout-callout-class{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:.08em;color:var(--cls-accent)}.loadout-callout-tagline{font-size:12px;letter-spacing:.04em;color:var(--bone-2)}.loadout-callout-cta{font-family:var(--display);font-weight:700;font-size:10px;letter-spacing:.18em;color:var(--acid)}.error-toast{position:fixed;top:70px;left:50%;transform:translate(-50%);z-index:60;padding:10px 16px;background:var(--blood);color:var(--bone);border:1px solid var(--bone);font-size:12px;letter-spacing:.12em;cursor:pointer;box-shadow:5px 5px 0 0 var(--ink)}.error-toast.is-arriving{animation:errorToastIn var(--mo-base, .22s) var(--ease-arrive, ease-out) backwards}.error-toast.is-leaving{animation:errorToastOut var(--mo-quick, .2s) var(--ease-leave, ease-in) forwards;pointer-events:none}@keyframes errorToastIn{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}@keyframes errorToastOut{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-8px)}}body.is-reduce-motion .error-toast.is-arriving,body.is-reduce-motion .error-toast.is-leaving{animation-duration:.01ms!important}.topbar-bell{position:relative;display:inline-flex;align-items:center;margin-left:var(--sp-3)}.topbar-bell-trigger{position:relative;padding-inline:var(--sp-2);display:inline-flex;gap:var(--sp-1);align-items:center}.topbar-bell-icon{font-family:var(--mono);font-size:18px;line-height:1;color:var(--bone-2)}.topbar-bell.is-open .topbar-bell-icon,.topbar-bell-trigger:hover .topbar-bell-icon{color:var(--acid)}.topbar-bell-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:var(--blood);color:var(--bone);font-size:10px;letter-spacing:.02em;font-weight:600}.topbar-bell-pop{position:absolute;top:calc(100% + var(--sp-1));right:0;width:320px;max-height:60vh;overflow-y:auto;background:var(--char);border:1px solid var(--rule-hi);box-shadow:0 8px 24px #00000080;z-index:40;display:flex;flex-direction:column}.topbar-bell-pop-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--rule);font-size:11px;letter-spacing:.1em;color:var(--bone-2);background:var(--char-2)}.btn-tiny{font-size:10px;padding:2px 8px}.btn-acid{background:var(--acid);color:var(--ink);border-color:var(--acid)}.btn-acid:hover:not(:disabled){background:var(--acid-2);border-color:var(--acid-2)}.btn-acid:disabled{opacity:.4;cursor:not-allowed}.topbar-bell-empty{padding:var(--sp-4) var(--sp-3);text-align:center;color:var(--bone-3);font-size:11px;letter-spacing:.1em}.topbar-bell-list{list-style:none;margin:0;padding:0}.topbar-bell-list li{border-bottom:1px solid var(--rule)}.topbar-bell-list li:last-child{border-bottom:none}.topbar-bell-item{width:100%;display:flex;align-items:flex-start;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:transparent;border:0;text-align:left;cursor:pointer;color:var(--bone-2)}.topbar-bell-item:hover{background:var(--char-3);color:var(--bone)}.topbar-bell-item.is-unread{background:var(--acid-soft);color:var(--bone)}.topbar-bell-item.is-unread:hover{background:#d6ff3a26}.topbar-bell-item-glyph{font-size:14px;width:18px;text-align:center;color:var(--acid);flex-shrink:0}.topbar-bell-item-body{flex:1;display:flex;flex-direction:column;gap:2px;min-width:0}.topbar-bell-item-text{font-size:12px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-bell-item-time{font-size:10px;color:var(--bone-3);letter-spacing:.05em}.topbar-bell-item-actionable{cursor:default}.topbar-bell-item-actionable:hover{background:var(--char-3)}.topbar-bell-item-actions{display:inline-flex;align-items:center;gap:4px;flex-shrink:0}.topbar-bell-item-actions .btn-tiny{min-width:24px;padding:2px 6px;font-weight:700}.social-ribbon{background:var(--char-2);border-bottom:1px solid var(--rule);padding:0 var(--sp-4);font-size:11px;letter-spacing:.12em}.social-ribbon-row{display:flex;align-items:center;gap:var(--sp-2);height:26px}.social-ribbon-link{display:inline-flex;align-items:center;gap:var(--sp-1);background:transparent;border:0;color:var(--bone-2);padding:4px var(--sp-2);font-family:var(--mono);font-size:11px;letter-spacing:.12em;cursor:pointer}.social-ribbon-link:hover{color:var(--acid)}.social-ribbon-sep{color:var(--bone-4)}.social-ribbon-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--acid);box-shadow:0 0 6px var(--acid-soft)}.social-ribbon-spacer{flex:1}.social-ribbon-online{display:inline-flex;align-items:center;gap:var(--sp-1);color:var(--bone-3);font-size:10px;letter-spacing:.1em}.social-ribbon-online-pulse{width:6px;height:6px;border-radius:50%;background:var(--seat-3);animation:ribbon-pulse 2s ease-in-out infinite}@keyframes ribbon-pulse{0%,to{opacity:.4}50%{opacity:1}}.notification-toast-stack{position:fixed;top:48px;right:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-2);z-index:9500;pointer-events:none;width:320px}.notification-toast{pointer-events:auto;display:grid;grid-template-columns:64px 1fr;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);background:var(--char);border:1px solid var(--rule-hi);border-left:3px solid var(--acid);color:var(--bone);font-family:var(--body);font-size:12px;text-align:left;cursor:pointer}.notification-toast-actionable{grid-template-columns:64px 1fr auto;cursor:default}.notification-toast-actions{display:inline-flex;align-items:center;gap:4px}.notification-toast-actions .btn-tiny{padding:3px 8px;font-weight:700;font-size:10px;letter-spacing:.08em}.notification-toast:hover{background:var(--char-2)}.notification-toast-mention{border-left-color:var(--coin)}.notification-toast-dm{border-left-color:var(--seat-1)}.notification-toast-friend-request,.notification-toast-friend-accept{border-left-color:var(--seat-3)}.notification-toast-invite{border-left-color:var(--acid)}.notification-toast-lfg-match{border-left-color:var(--seat-4)}.notification-toast-reaction{border-left-color:var(--ember)}.notification-toast-mod-warning{border-left-color:var(--blood)}.notification-toast-kind{font-size:9px;letter-spacing:.12em;color:var(--bone-3)}.notification-toast-body{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.friends-modal-scrim,.profile-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0cc7;display:flex;align-items:center;justify-content:center;z-index:60;animation:scrim-in .12s ease-out}@keyframes scrim-in{0%{opacity:0}to{opacity:1}}.friends-modal,.profile-modal{width:min(540px,92vw);max-height:80vh;display:flex;flex-direction:column;background:var(--char);border:1px solid var(--acid);box-shadow:0 12px 40px #0009;font-family:var(--body);color:var(--bone);animation:modal-in .14s ease-out}@keyframes modal-in{0%{transform:translateY(8px);opacity:0}to{transform:translateY(0);opacity:1}}.friends-modal-head,.profile-modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule);background:var(--char-2)}.friends-modal-title,.profile-modal-title{margin:0;font-size:13px;letter-spacing:.16em;color:var(--acid)}.friends-modal-close,.profile-modal-close{background:transparent;border:1px solid transparent;color:var(--bone-3);font-size:14px;width:24px;height:24px;cursor:pointer}.friends-modal-close:hover,.profile-modal-close:hover{color:var(--bone);border-color:var(--rule-hi)}.friends-modal-add{display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule)}.friends-modal-add-input{flex:1;padding:6px 10px;background:var(--char-2);border:1px solid var(--rule);color:var(--bone);font-family:var(--mono);font-size:12px;letter-spacing:.05em}.friends-modal-add-input:focus{outline:none;border-color:var(--acid)}.friends-modal-error{padding:0 var(--sp-4) var(--sp-2);color:var(--blood);font-size:11px;letter-spacing:.05em}.friends-modal-section{border-bottom:1px solid var(--rule)}.friends-modal-section:last-child{border-bottom:none}.friends-modal-section-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);font-size:10px;letter-spacing:.18em;color:var(--bone-3);background:var(--char-2)}.friends-modal-section-count{color:var(--bone-4)}.friends-modal-empty{padding:var(--sp-2) var(--sp-4) var(--sp-3);color:var(--bone-4);font-size:11px}.friends-modal-list{list-style:none;margin:0;padding:0;overflow-y:auto}.friends-modal-row{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);gap:var(--sp-3)}.friends-modal-row:hover{background:var(--char-2)}.friends-modal-row-info{display:flex;flex-direction:column;gap:2px;min-width:0}.friends-modal-row-name{font-size:13px;color:var(--bone)}.friends-modal-row-sub{font-size:11px;color:var(--bone-3)}.friends-modal-row-actions{display:flex;gap:var(--sp-1);flex-shrink:0}.btn-tiny.is-destructive{color:var(--blood);border-color:var(--rule)}.btn-tiny.is-destructive:hover{border-color:var(--blood);background:#ff383814}.profile-modal-body{padding:var(--sp-3) var(--sp-4);overflow-y:auto}.profile-modal-section{margin-bottom:var(--sp-3)}.profile-modal-section-label{font-size:10px;letter-spacing:.18em;color:var(--bone-3);margin-bottom:var(--sp-1)}.profile-modal-bio{font-size:13px;line-height:1.4;color:var(--bone);white-space:pre-wrap;word-break:break-word}.profile-modal-bio-empty{font-size:12px;color:var(--bone-4)}.profile-modal-bio-edit{width:100%;min-height:64px;padding:6px 10px;background:var(--char-2);border:1px solid var(--rule);color:var(--bone);font-family:var(--body);font-size:13px;resize:vertical}.profile-modal-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-2)}.profile-modal-stat{display:flex;flex-direction:column;align-items:flex-start;padding:var(--sp-2);background:var(--char-2);border:1px solid var(--rule)}.profile-modal-stat-label{font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.profile-modal-stat-value{font-family:var(--mono);font-size:16px;color:var(--acid)}.profile-modal-actions{display:flex;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);border-top:1px solid var(--rule);background:var(--char-2)}.search-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0cc7;display:flex;align-items:flex-start;justify-content:center;padding-top:12vh;z-index:60;animation:scrim-in .12s ease-out}.search-modal{width:min(560px,92vw);max-height:70vh;display:flex;flex-direction:column;background:var(--char);border:1px solid var(--acid);box-shadow:0 12px 40px #0009;font-family:var(--body);color:var(--bone);animation:modal-in .14s ease-out}.search-modal-head{display:flex;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--rule);background:var(--char-2)}.search-modal-glyph{color:var(--acid);font-size:16px;width:18px;text-align:center}.search-modal-input{flex:1;background:transparent;border:0;color:var(--bone);font-family:var(--mono);font-size:13px;letter-spacing:.04em;outline:none;padding:4px 0}.search-modal-input::placeholder{color:var(--bone-4)}.search-modal-close{background:transparent;border:1px solid transparent;color:var(--bone-3);font-size:14px;width:24px;height:24px;cursor:pointer}.search-modal-close:hover{color:var(--bone);border-color:var(--rule-hi)}.search-modal-body{flex:1;overflow-y:auto;padding:var(--sp-2) 0;min-height:80px}.search-modal-empty{padding:var(--sp-3) var(--sp-4);color:var(--bone-4);font-size:11px;letter-spacing:.12em;text-align:center}.search-modal-list{list-style:none;margin:0;padding:0}.search-modal-result{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:var(--sp-2) var(--sp-4);background:transparent;border:0;border-left:2px solid transparent;color:var(--bone);text-align:left;cursor:pointer}.search-modal-result:hover{background:var(--char-2);border-left-color:var(--acid)}.search-modal-result-head{display:flex;gap:var(--sp-2);font-size:10px;letter-spacing:.06em;color:var(--bone-3)}.search-modal-result-from{color:var(--acid)}.search-modal-result-text{font-size:13px;line-height:1.35}.search-modal-foot{display:flex;justify-content:space-between;padding:var(--sp-2) var(--sp-3);border-top:1px solid var(--rule);background:var(--char-2);font-size:10px;letter-spacing:.1em;color:var(--bone-3)}.chat-embed{display:inline-flex;align-items:center;vertical-align:middle;margin:2px 4px 2px 0;font-family:var(--mono);font-size:11px;letter-spacing:.04em}.chat-embed-missing{color:var(--bone-4);padding:1px 6px;border:1px dashed var(--rule-hi)}.chat-embed-card{flex-direction:column;align-items:flex-start}.chat-embed-card-chip{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:var(--char-2);border:1px solid var(--rule);color:var(--bone);cursor:pointer;transition:border-color .1s,background .1s}.chat-embed-card-chip:hover{border-color:var(--acid);background:var(--char-3)}.chat-embed-card-cost{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:var(--ink);border:1px solid var(--bone-4);color:var(--acid);font-size:11px;font-weight:700}.chat-embed-card-name{color:var(--bone);font-family:var(--display);font-weight:600}.chat-embed-card-class{font-size:9px;letter-spacing:.12em;color:var(--bone-3);text-transform:uppercase}.chat-embed-card-full{display:block;margin:var(--sp-1) 0 0}.chat-embed-run{flex-direction:column;align-items:flex-start}.chat-embed-run-chip{display:inline-flex;align-items:center;gap:8px;padding:3px 8px;background:var(--char-2);border:1px solid var(--rule);border-left:3px solid var(--bone-4);color:var(--bone);cursor:pointer;transition:border-color .1s,background .1s}.chat-embed-run[data-outcome=victory] .chat-embed-run-chip{border-left-color:var(--acid)}.chat-embed-run[data-outcome=defeat] .chat-embed-run-chip,.chat-embed-run[data-outcome=conceded] .chat-embed-run-chip{border-left-color:var(--blood)}.chat-embed-run-chip:hover{background:var(--char-3)}.chat-embed-run-outcome{font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.chat-embed-run[data-outcome=victory] .chat-embed-run-outcome{color:var(--acid)}.chat-embed-run[data-outcome=defeat] .chat-embed-run-outcome,.chat-embed-run[data-outcome=conceded] .chat-embed-run-outcome{color:var(--blood)}.chat-embed-run-dest{font-family:var(--display);font-weight:600}.chat-embed-run-floors{color:var(--bone-3)}.chat-embed-run-detail{display:flex;flex-wrap:wrap;gap:var(--sp-2);margin-top:var(--sp-1);font-size:11px;color:var(--bone-2)}.chat-embed-run-member{padding:2px 6px;background:var(--char-2);border:1px solid var(--rule)}.chat-embed-lfg{flex-direction:column;align-items:stretch;gap:4px;padding:6px 10px;background:var(--char-2);border:1px solid var(--rule);border-left:3px solid var(--acid);min-width:240px;max-width:100%}.chat-embed-lfg[data-expired=true]{opacity:.6;border-left-color:var(--bone-4)}.chat-embed-lfg-head{display:flex;align-items:center;gap:var(--sp-1);font-size:10px;letter-spacing:.1em}.chat-embed-lfg-tag{background:var(--acid);color:var(--ink);padding:1px 6px;font-weight:700}.chat-embed-lfg-class{color:var(--bone);font-weight:700}.chat-embed-lfg-size{color:var(--bone-3)}.chat-embed-lfg-adv{margin-left:auto;color:var(--bone-3)}.chat-embed-lfg-note{font-family:var(--body);font-size:12px;color:var(--bone-2);line-height:1.35}.chat-embed-lfg-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--sp-2)}.chat-embed-lfg-status{font-size:10px;letter-spacing:.12em;color:var(--bone-4)}.chat-embed-lfg-err{font-size:10px;color:var(--blood)}.lfg-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0cc7;display:flex;align-items:center;justify-content:center;z-index:60;animation:scrim-in .12s ease-out}.lfg-modal{width:min(620px,92vw);max-height:80vh;display:flex;flex-direction:column;background:var(--char);border:1px solid var(--acid);box-shadow:0 12px 40px #0009;font-family:var(--body);color:var(--bone);animation:modal-in .14s ease-out;overflow:hidden}.lfg-modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule);background:var(--char-2)}.lfg-modal-title{margin:0;font-size:13px;letter-spacing:.16em;color:var(--acid)}.lfg-modal-close{background:transparent;border:1px solid transparent;color:var(--bone-3);font-size:14px;width:24px;height:24px;cursor:pointer}.lfg-modal-close:hover{color:var(--bone);border-color:var(--rule-hi)}.lfg-modal-section-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-2) var(--sp-4);font-size:10px;letter-spacing:.18em;color:var(--bone-3);background:var(--char-2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}.lfg-modal-section-count{color:var(--bone-4)}.lfg-modal-empty{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);color:var(--bone-3);font-size:12px;gap:var(--sp-2)}.lfg-modal-compose{display:flex;flex-direction:column;gap:var(--sp-2);padding:var(--sp-3) var(--sp-4)}.lfg-modal-compose-row{display:grid;grid-template-columns:1fr 2fr 1fr;gap:var(--sp-2)}.lfg-modal-field{display:flex;flex-direction:column;gap:4px}.lfg-modal-field-label{font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.lfg-modal-select,.lfg-modal-note{padding:6px 10px;background:var(--char-2);border:1px solid var(--rule);color:var(--bone);font-family:var(--mono);font-size:12px;letter-spacing:.04em}.lfg-modal-select:focus,.lfg-modal-note:focus{outline:none;border-color:var(--acid)}.lfg-modal-compose-actions{display:flex;gap:var(--sp-2);justify-content:flex-end}.lfg-modal-other{flex:1;overflow-y:auto;min-height:100px}.lfg-modal-list{list-style:none;margin:0;padding:0}.lfg-modal-mypost{flex-shrink:0}.lfg-modal-mypost .lfg-modal-list{padding:0}.lfg-modal-card{padding:var(--sp-2) var(--sp-4);border-bottom:1px solid var(--rule);display:flex;flex-direction:column;gap:4px}.lfg-modal-card.is-mine{background:var(--acid-soft);border-left:3px solid var(--acid)}.lfg-modal-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--sp-2);font-size:11px;letter-spacing:.06em}.lfg-modal-card-user{color:var(--bone);font-weight:700}.lfg-modal-card-class{color:var(--acid)}.lfg-modal-card-size,.lfg-modal-card-adv{color:var(--bone-3)}.lfg-modal-card-time{margin-left:auto;color:var(--bone-4)}.lfg-modal-card-note{font-size:13px;color:var(--bone-2);line-height:1.35}.lfg-modal-card-actions{display:flex;justify-content:flex-end;gap:var(--sp-2)}.lfg-modal-err{padding:0 var(--sp-4) var(--sp-2);color:var(--blood);font-size:11px}.watch-modal-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#0a0a0cc7;display:flex;align-items:center;justify-content:center;z-index:60;animation:scrim-in .12s ease-out}.watch-modal{width:min(620px,92vw);max-height:80vh;display:flex;flex-direction:column;background:var(--char);border:1px solid var(--acid);box-shadow:0 12px 40px #0009;font-family:var(--body);color:var(--bone);animation:modal-in .14s ease-out}.watch-modal-head{display:flex;align-items:center;justify-content:space-between;padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule);background:var(--char-2)}.watch-modal-title{margin:0;font-size:13px;letter-spacing:.16em;color:var(--acid)}.watch-modal-close{background:transparent;border:1px solid transparent;color:var(--bone-3);font-size:14px;width:24px;height:24px;cursor:pointer}.watch-modal-close:hover{color:var(--bone);border-color:var(--rule-hi)}.watch-modal-body{flex:1;overflow-y:auto;min-height:120px}.watch-modal-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--sp-2);padding:var(--sp-5) var(--sp-4);color:var(--bone-3);font-size:11px;letter-spacing:.12em}.watch-modal-empty-hint{color:var(--bone-4);letter-spacing:.04em;font-size:11px}.watch-modal-list{list-style:none;margin:0;padding:0}.watch-modal-card{display:flex;flex-direction:column;gap:var(--sp-1);padding:var(--sp-3) var(--sp-4);border-bottom:1px solid var(--rule)}.watch-modal-card:hover{background:var(--char-2)}.watch-modal-card-head{display:flex;align-items:center;gap:var(--sp-2);font-size:11px;letter-spacing:.08em}.watch-modal-card-room{color:var(--bone);font-weight:700}.watch-modal-card-floor{color:var(--acid)}.watch-modal-card-spectators{margin-left:auto;color:var(--bone-3)}.watch-modal-card-adv{font-size:10px;letter-spacing:.12em;color:var(--bone-3)}.watch-modal-card-party{display:flex;flex-wrap:wrap;gap:var(--sp-1)}.watch-modal-card-member{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;background:var(--char-2);border:1px solid var(--rule);border-left:3px solid var(--bone-4);font-size:11px}.watch-modal-card-member[data-seat="1"]{border-left-color:var(--seat-1)}.watch-modal-card-member[data-seat="2"]{border-left-color:var(--seat-2)}.watch-modal-card-member[data-seat="3"]{border-left-color:var(--seat-3)}.watch-modal-card-member[data-seat="4"]{border-left-color:var(--seat-4)}.watch-modal-card-member-seat{color:var(--bone-3);font-size:10px}.watch-modal-card-member-name{color:var(--bone)}.watch-modal-card-member-class{color:var(--bone-3);font-size:10px}.watch-modal-card-actions{display:flex;justify-content:flex-end}.admin-panel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0b0d10;color:#d8dde2;display:flex;flex-direction:column;font-family:monospace}.admin-header{display:flex;justify-content:space-between;align-items:center;padding:.6rem 1rem;background:#16191d;border-bottom:1px solid #2a2f36}.admin-title{letter-spacing:.1em;color:#ffb86b}.admin-close{background:transparent;color:#b8bcc2;border:1px solid #2a2f36;padding:.25rem .75rem;cursor:pointer}.admin-header-actions{display:flex;align-items:center;gap:.5rem}.admin-header-btn{background:transparent;color:#b8bcc2;border:1px solid #2a2f36;padding:.25rem .6rem;font:inherit;letter-spacing:.06em;cursor:pointer}.admin-header-btn:hover{color:#ffb86b;border-color:#ffb86b}.admin-header-btn:disabled{opacity:.4;cursor:default}.admin-header-status{color:#b8bcc2;font-size:11px;letter-spacing:.04em;padding-right:.5rem}.admin-body{flex:1;display:grid;grid-template-columns:280px 1fr;overflow:hidden}.admin-list{border-right:1px solid #2a2f36;padding:.6rem;overflow-y:auto;display:flex;flex-direction:column;gap:.4rem}.admin-filter,.admin-new{background:#16191d;color:#d8dde2;border:1px solid #2a2f36;padding:.35rem .5rem}.admin-new{cursor:pointer;color:#ffb86b}.admin-list ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.15rem}.admin-row{display:flex;justify-content:space-between;align-items:center;gap:.4rem;padding:.3rem .5rem;border:1px solid transparent;cursor:pointer;font-size:.85rem}.admin-row-name{flex:1;min-width:0}.admin-row-copy{flex-shrink:0;padding:1px 6px;font:inherit;font-size:.7rem;font-weight:700;letter-spacing:.08em;background:#1d2126;color:#7a7f87;border:1px solid #2c3036;cursor:pointer;opacity:0;transition:opacity 80ms,color 80ms,border-color 80ms}.admin-row:hover .admin-row-copy,.admin-row.is-active .admin-row-copy{opacity:1}.admin-row-copy:hover{color:#ffb86b;border-color:#ffb86b}.admin-row:hover{background:#16191d}.admin-row.is-active{border-color:#ffb86b;background:#1d2126}.admin-row-name{color:#d8dde2}.admin-row-meta{color:#7a7f87;font-size:.75rem}.admin-form{padding:1rem;overflow-y:auto;display:flex;flex-direction:column;gap:.75rem}.admin-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}.admin-grid label{display:flex;flex-direction:column;font-size:.75rem;color:#9aa0a6;gap:.25rem}.admin-wide{grid-column:span 4}.admin-grid input,.admin-grid select{background:#16191d;color:#d8dde2;border:1px solid #2a2f36;padding:.4rem .5rem;font-family:inherit;font-size:.85rem}.admin-checkbox{flex-direction:row!important;align-items:center;gap:.4rem!important}.admin-effects{display:flex;flex-direction:column;font-size:.75rem;color:#9aa0a6;gap:.25rem}.admin-effects textarea{background:#0e1115;color:#d8dde2;border:1px solid #2a2f36;padding:.5rem;font-family:monospace;font-size:.8rem;min-height:200px;resize:vertical}.admin-warn{color:#ffd56b;font-size:.85rem}.admin-error{color:#ff7676;font-size:.85rem}.admin-actions{display:flex;gap:.6rem;margin-top:.4rem}.admin-save,.admin-delete{padding:.5rem 1rem;border:1px solid #2a2f36;cursor:pointer;font-family:inherit}.admin-save{background:#2b3a23;color:#cdebab}.admin-save:disabled{opacity:.5;cursor:not-allowed}.admin-delete{background:#3a2323;color:#ebabab}.admin-pools{margin-top:16px;padding-top:12px;border-top:1px dashed rgba(255,255,255,.15)}.admin-pools-title{font-size:12px;letter-spacing:.18em;margin:0 0 4px;color:var(--bone-2, #d6cdbe)}.admin-pools-sub{font-size:11px;color:var(--bone-3, #a89e8e);margin:0 0 10px;line-height:1.4}.admin-pools-table{width:100%;border-collapse:collapse;font-size:12px}.admin-pools-table th{text-align:left;font-weight:600;font-size:10px;letter-spacing:.12em;color:var(--bone-3, #a89e8e);padding:4px 6px;border-bottom:1px solid rgba(255,255,255,.1)}.admin-pools-table td{padding:4px 6px;border-bottom:1px dashed rgba(255,255,255,.06)}.admin-pools-class{font-family:var(--mono, monospace);letter-spacing:.08em}.admin-pools-starter{display:flex;align-items:center;gap:6px}.admin-pools-starter button{width:22px;height:22px;border:1px solid rgba(255,255,255,.2);background:#ffffff0a;color:inherit;cursor:pointer;font-size:14px;line-height:1}.admin-pools-starter button:disabled{opacity:.4;cursor:default}.admin-pools-count{min-width:28px;text-align:center}.admin-pools-generic td{border-top:1px solid rgba(255,255,255,.15)}.admin-tags{margin-top:14px;padding-top:12px;border-top:1px dashed rgba(255,255,255,.15)}.admin-tags-title{font-size:12px;letter-spacing:.18em;margin:0 0 4px;color:var(--bone-2, #d6cdbe)}.admin-tags-sub{font-size:11px;color:var(--bone-3, #a89e8e);margin:0 0 10px;line-height:1.4}.admin-tag-group{display:grid;grid-template-columns:200px 1fr;gap:12px;align-items:center;margin-bottom:6px}.admin-tag-group-label{font-size:10px;letter-spacing:.12em;color:var(--bone-3, #a89e8e)}.admin-tag-options{display:flex;flex-wrap:wrap;gap:6px 10px}.admin-tag-chip{display:inline-flex;align-items:center;gap:4px;font-size:11px;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none}.admin-tag-chip input[type=checkbox]{margin:0}.admin-cosmetics{margin-top:24px;padding-top:16px;border-top:1px solid var(--bone-4, #3a3a44)}.admin-cosmetic-h{margin:16px 0 6px;font-size:11px;letter-spacing:.22em;font-weight:700;color:var(--bone-2, #d6d2c4)}.admin-cosmetic-table{width:100%;border-collapse:collapse;font-size:11px}.admin-cosmetic-table th{text-align:left;padding:4px 6px;font-size:9px;letter-spacing:.16em;color:var(--bone-3, #a89e8e);border-bottom:1px solid var(--bone-4, #3a3a44)}.admin-cosmetic-table td{padding:3px 6px;border-bottom:1px solid rgba(58,58,68,.4);vertical-align:middle}.admin-cosmetic-table tr:last-child td{border-bottom:none;background:#d6ff3a0a}.admin-cosmetic-table input[type=text],.admin-cosmetic-table input[type=number],.admin-cosmetic-table input:not([type]),.admin-cosmetic-table select{width:100%;background:var(--char, #0a0a0c);color:var(--bone, #ebe8de);border:1px solid var(--bone-4, #3a3a44);padding:3px 6px;font-size:11px;font-family:inherit}.admin-gold-panel{background:linear-gradient(180deg,rgba(245,180,0,.08) 0%,transparent 100%);border:1px solid var(--coin, #f5b400);border-left-width:4px;padding:12px 16px;margin:12px 0 18px}.admin-gold-panel-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.admin-gold-panel-row label{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;color:var(--bone-3, #a89e8e);text-transform:uppercase}.admin-gold-panel-row label input{background:var(--char, #0a0a0c);color:var(--bone, #ebe8de);border:1px solid var(--bone-4, #3a3a44);padding:6px 10px;font-family:inherit;font-size:13px;width:110px}.admin-gold-give{background:var(--coin, #f5b400);color:var(--char, #0a0a0c);border:1px solid var(--coin, #f5b400);padding:8px 18px;font-family:var(--display, system-ui);font-weight:700;letter-spacing:.18em;font-size:13px;cursor:pointer}.admin-gold-give:hover{filter:brightness(1.08)}.admin-gold-give:disabled{opacity:.5;cursor:default}.admin-gold-status{font-family:var(--display, system-ui);letter-spacing:.14em;font-size:11px;color:var(--coin, #f5b400)}.admin-parts{margin-top:12px}.admin-parts-grid{display:grid;grid-template-columns:1fr 1fr auto auto;gap:2px 10px;font-size:11px;margin-top:6px}.admin-part{display:contents}.admin-part>span{padding:2px 0}.admin-part-key{color:var(--acid, #d6ff40)}.admin-part-kind{opacity:.8}.admin-part-gate{text-transform:uppercase;opacity:.7}.admin-part-wild .admin-part-gate{color:var(--blood, #e0533b)}.admin-part-good{opacity:.6;text-align:right}.admin-enemy-layout{display:grid;grid-template-columns:220px 1fr;gap:var(--sp-3);margin-top:var(--sp-2);align-items:start}.admin-enemy-list{list-style:none;margin:0;padding:0;max-height:360px;overflow-y:auto;border:1px solid var(--rule)}.admin-enemy-row{width:100%;display:flex;justify-content:space-between;align-items:baseline;gap:var(--sp-2);padding:4px 8px;background:transparent;border:none;border-bottom:1px solid var(--rule);color:var(--bone-2);cursor:pointer;text-align:left}.admin-enemy-row:hover{background:var(--char-2);color:var(--bone)}.admin-enemy-row.is-active{background:var(--char-3);color:var(--acid)}.admin-enemy-id{font-weight:700}.admin-enemy-meta{font-size:11px;color:var(--bone-3)}.admin-enemy-edit{display:flex;flex-direction:column;gap:var(--sp-2);min-width:0}.admin-enemy-actions{display:flex;gap:var(--sp-2);flex-wrap:wrap}.admin-enemy-json{width:100%;min-height:320px;resize:vertical;background:var(--ink);color:var(--bone);border:1px solid var(--rule-hi);padding:var(--sp-2);font-size:12px;line-height:1.5}.achievement-toast{position:fixed;top:72px;right:24px;z-index:50;display:grid;grid-template-columns:48px 1fr;gap:12px;align-items:center;min-width:280px;max-width:420px;padding:14px 18px;background:var(--char, #1a1714);border:2px solid var(--acid, #d6ff3a);border-left-width:4px;box-shadow:6px 6px 0 0 var(--ink, #0a0a0c);color:inherit;font:inherit;cursor:pointer;text-align:left}.achievement-toast-marker{display:flex;align-items:center;justify-content:center;width:48px;height:48px;font-size:28px;color:var(--ink, #0a0a0c);background:var(--acid, #d6ff3a);font-weight:700;line-height:1}.achievement-toast-body{display:flex;flex-direction:column;gap:2px;min-width:0}.achievement-toast-kicker{font-size:9px;letter-spacing:.18em;font-weight:700;color:var(--acid, #d6ff3a)}.achievement-toast-name{font-family:var(--display, sans-serif);font-weight:800;font-size:16px;letter-spacing:.06em;color:var(--bone, #ebe8de)}.achievement-toast-blurb{font-size:11px;color:var(--bone-3, #a89e8e);line-height:1.35}.achievement-toast:hover{background:var(--char-2, #1f1c18)}:root{--ink: #0a0a0c;--char: #131318;--char-2: #1a1a20;--char-3: #202028;--rule: #26262e;--rule-hi: #3a3a44;--bone: #ebe8de;--bone-2: #a8a59a;--bone-3: #6a6862;--bone-4: #44423d;--acid: #d6ff3a;--acid-2: #b8de1f;--acid-soft: #d6ff3a22;--blood: #ff3838;--blood-2: #c91f1f;--coin: #f5b400;--cobalt: #6f9bff;--ember: #ff7038;--jester: #d040ff;--terminal: #4afa8a;--seat-1: #4ea8ff;--seat-2: #ff8a3a;--seat-3: #6ed968;--seat-4: #ff5db5;--hatch-bone: repeating-linear-gradient( -45deg, rgba(235, 232, 222, .18) 0 1px, transparent 1px 4px );--hatch-acid: repeating-linear-gradient( -45deg, rgba(214, 255, 58, .35) 0 1px, transparent 1px 4px );--hatch-ink: repeating-linear-gradient( -45deg, rgba(10, 10, 12, .18) 0 1px, transparent 1px 4px );--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-5: 24px;--sp-6: 32px;--card-w: 168px;--card-h: 220px;--display: "Space Grotesk", system-ui, sans-serif;--body: "Space Grotesk", system-ui, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%;background:var(--ink);color:var(--bone);font-family:var(--body);font-size:14px;line-height:1.4;-webkit-font-smoothing:antialiased}body{overflow:hidden}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}input{font:inherit;color:inherit;background:none;border:0;outline:none}ul{list-style:none;padding:0;margin:0}a{color:inherit;text-decoration:none;cursor:pointer}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px),radial-gradient(circle at 30% 20%,rgba(214,255,58,.045),transparent 50%),radial-gradient(circle at 80% 90%,rgba(111,155,255,.035),transparent 55%);pointer-events:none;z-index:1000;mix-blend-mode:screen}#root{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--ink)}.app-root{width:2560px;height:var(--canvas-h, 1440px);position:absolute;top:0;left:0;transform:scale(var(--app-scale, 1));transform-origin:0 0;display:flex;flex-direction:column}.app-root>.view-swap{flex:1;min-height:0}*::-webkit-scrollbar{width:8px;height:8px}*::-webkit-scrollbar-track{background:transparent}*::-webkit-scrollbar-thumb{background:var(--rule)}*::-webkit-scrollbar-thumb:hover{background:var(--rule-hi)}::selection{background:var(--acid);color:var(--ink)}.oath-overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:60;padding:var(--sp-4)}.oath-overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#08080cb8;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.oath-panel{position:relative;z-index:1;background:var(--char);border:1px solid var(--rule-hi);padding:var(--sp-6);display:flex;flex-direction:column;gap:var(--sp-5);max-width:1080px;width:100%;box-shadow:6px 6px #00000080}.oath-panel-head{display:flex;flex-direction:column;gap:2px;border-bottom:1px solid var(--rule);padding-bottom:var(--sp-3)}.oath-panel-kicker{font-size:10px;letter-spacing:.16em;color:var(--bone-3);font-weight:700}.oath-panel-title{font-family:var(--display);font-weight:700;font-size:24px;letter-spacing:.04em;margin:0;color:var(--coin)}.oath-panel-sub{margin:4px 0 0;font-size:12px;color:var(--bone-2)}.oath-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--sp-4)}@media(max-width:760px){.oath-grid{grid-template-columns:1fr}}.oath-card{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--char-2);border:1px solid var(--rule-hi);padding:var(--sp-4);display:flex;flex-direction:column;gap:var(--sp-3);cursor:pointer;text-align:left;color:var(--bone);font:inherit;transition:transform .1s,border-color .1s,box-shadow .1s}.oath-card:hover:not(.is-picked):not(:disabled){transform:translateY(-4px);border-color:var(--coin);box-shadow:4px 4px 0 0 var(--coin)}.oath-card:focus-visible{outline:2px solid var(--coin);outline-offset:2px}.oath-card.is-picked{opacity:.45;cursor:default}.oath-card:disabled{cursor:default}.oath-card-static{cursor:default}.oath-card-static:hover{transform:none;border-color:var(--rule-hi);box-shadow:none}.oath-card-name{font-family:var(--display);font-size:20px;font-weight:700;letter-spacing:.06em;color:var(--coin);padding-bottom:var(--sp-2);border-bottom:1px solid var(--rule)}.oath-section{display:flex;flex-direction:column;gap:4px;padding:var(--sp-2) var(--sp-3);border-left:3px solid transparent;background:#ffffff05}.oath-section-boon{border-left-color:var(--coin)}.oath-section-tenet{border-left-color:var(--bone-2)}.oath-section-break{border-left-color:var(--blood)}.oath-section-label{font-size:10px;letter-spacing:.16em;font-weight:700}.oath-section-boon .oath-section-label{color:var(--coin)}.oath-section-tenet .oath-section-label{color:var(--bone-2)}.oath-section-break .oath-section-label{color:var(--blood)}.oath-section-text{margin:0;font-size:13px;line-height:1.45;color:var(--bone)}.loadout-oath-catalog{display:flex;flex-direction:column;gap:var(--sp-3);padding:0 var(--sp-6) var(--sp-4)}.loadout-oath-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.loadout-oath-catalog .oath-card{padding:var(--sp-3);gap:var(--sp-2)}.loadout-oath-catalog .oath-card-name{font-size:14px;padding-bottom:4px}.loadout-oath-catalog .oath-section-text{font-size:12px;line-height:1.4}:root{--mo-instant: .12s;--mo-quick: .18s;--mo-base: .24s;--mo-emphatic: .36s;--mo-marquee: .72s;--ease-arrive: cubic-bezier(.18, .85, .3, 1);--ease-leave: cubic-bezier(.4, 0, .7, 1);--ease-punch: cubic-bezier(.34, 1.56, .64, 1);--ease-recede: cubic-bezier(.55, 0, 1, .45);--stagger-list: 60ms;--stagger-seat: 80ms}
