:root{--font-body:"Noto Sans Thai", "Leelawadee UI", Tahoma, system-ui, sans-serif;--font-display:"Mali", "Noto Sans Thai", "Leelawadee UI", Tahoma, system-ui, sans-serif;--ease:cubic-bezier(.2, 0, 0, 1);--z-modal:50;--z-system:40;font-family:var(--font-body);color:#3b2b1f;--ui-ink:#201915;--ui-ink-soft:#493b30;--ui-parchment:#c7b794;--ui-parchment-light:#e2d4b5;--ui-parchment-dark:#907a5b;--ui-stone:#4b4b45;--ui-stone-dark:#2c2a27;--ui-red:#b62824;--ui-red-bright:#ef3a2f;--ui-red-dark:#631816;--ui-gold:#d39a2e;--ui-gold-light:#ffd36e;--ui-teal:#43d8bd;--ui-blue:#238bd6;--ui-panel-shadow:#120c089e;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#15130f}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;margin:0}body{overflow:hidden}button,input{font:inherit}button{-webkit-tap-highlight-color:transparent}.page-shell{background:radial-gradient(circle at 18% 22%,#cf332238,#0000 32%),radial-gradient(circle at 82% 74%,#43d8bd38,#0000 32%),linear-gradient(135deg,#181511,#242019 48%,#111a1c);width:100vw;height:100dvh;display:block;overflow:hidden}.game-frame{width:100vw;height:100dvh;box-shadow:inset 0 0 0 3px var(--ui-ink), inset 0 0 0 6px #5c4431;background-image:url(/assets/backgrounds/elemental-arena-comic.webp);background-position:50%;background-size:cover;position:relative;overflow:hidden}.game-frame:before{content:"";pointer-events:auto;background:linear-gradient(#0e11100f,#16120d1f 48%,#100d0bbd),radial-gradient(circle at 50% 18%,#ffda701f,#0000 42%);position:absolute;inset:0}.scene-vignette{pointer-events:none;position:absolute;inset:0;box-shadow:inset 0 0 92px #090807ad}.brand-lockup{text-align:center;text-shadow:0 4px 18px #000000b8;position:absolute;top:7.5%;left:7%;right:7%}.brand-kicker{color:var(--ui-gold-light);letter-spacing:0;text-transform:uppercase;margin:0 0 8px;font-family:Georgia,Times New Roman,serif;font-size:clamp(.76rem,1.6vh,.94rem)}h1,h2,p{margin:0}h1{color:#fff0a9;letter-spacing:0;text-shadow:0 3px 0 #5c2118, 2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 0 8px 18px #00000094;gap:2px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.25rem,5.25vh,3.25rem);font-weight:700;line-height:.9;display:grid}.auth-dock{z-index:1;position:absolute;bottom:5.5%;left:6%;right:6%}*{scrollbar-width:none;-ms-overflow-style:none}::-webkit-scrollbar{width:0;height:0}.content-dock{z-index:1;scrollbar-width:none;max-height:73%;position:absolute;bottom:4%;left:5%;right:5%;overflow-y:auto}.game-frame.app-mode .content-dock{max-height:none;inset:0;overflow:hidden}.game-frame.app-mode .content-dock>.auth-panel{width:100%;min-height:100%;max-height:100%;padding:max(16px, calc(env(safe-area-inset-top) + 16px)) max(16px, calc(env(safe-area-inset-right) + 16px)) max(16px, calc(env(safe-area-inset-bottom) + 16px)) max(16px, calc(env(safe-area-inset-left) + 16px));box-shadow:inset 0 0 0 3px var(--ui-ink), inset 0 0 0 5px #6e5137, inset 0 0 0 7px #ffecb757, inset 0 -12px 22px #5a382224;border:0;border-radius:0;align-content:start;overflow:auto}.game-frame.app-mode .game-dock{max-height:none}.auth-panel{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), linear-gradient(90deg, #5038261a, transparent 16%, transparent 84%, #5038261f), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);box-shadow:0 0 0 2px #6e5137, 0 16px 30px var(--ui-panel-shadow), inset 0 0 0 2px #ffecb773, inset 0 -12px 22px #5a382224;border-radius:6px;gap:14px;padding:22px;display:grid;position:relative}.auth-panel:before{content:"";pointer-events:none;border:1px solid #47312047;border-radius:3px;position:absolute;inset:7px}.character-panel{gap:12px}.auth-panel.compact{place-items:center;min-height:96px}.panel-note{color:#3a2418;font-size:clamp(.78rem,1.55vh,.92rem);font-weight:700;line-height:1.45}h2{color:#5a271e;font-family:var(--font-display);letter-spacing:0;text-shadow:0 2px #ffe6a873;font-size:clamp(1.55rem,3.2vh,2.1rem);line-height:1.1}.field{color:#563824;gap:7px;font-size:clamp(.84rem,1.6vh,.98rem);font-weight:700;display:grid}.field input{color:#2b2118;border:3px solid var(--ui-ink);background:linear-gradient(#fff6dbb8,#c4b292db),#c7b794;border-radius:4px;outline:none;width:100%;height:48px;padding:0 14px;box-shadow:inset 0 2px #fff6db80,inset 0 -3px #63493038}.field input:focus{border-color:#2b2017;box-shadow:0 0 0 3px #ffd36e85,inset 0 2px #fff6db80}.field-hint{color:#3a2c1a;font-size:clamp(.72rem,1.35vh,.84rem);line-height:1.35}.form-message{color:#8a1c18;min-height:20px;font-size:clamp(.82rem,1.55vh,.94rem);font-weight:700;line-height:1.45}.primary-action,.text-action{border:3px solid var(--ui-ink);cursor:pointer;text-shadow:0 2px #00000059;border-radius:4px;min-height:48px;box-shadow:0 3px #17110d,0 6px 12px #1a100a52,inset 0 2px #ffefb15c,inset 0 -4px #27170f4d}.primary-action{color:#fff4cf;background:linear-gradient(180deg, var(--ui-red-bright), var(--ui-red) 52%, var(--ui-red-dark));font-weight:700}.primary-action:hover:not(:disabled){filter:brightness(1.06)}.primary-action:focus-visible,.text-action:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}.primary-action:disabled,.text-action:disabled{cursor:default;opacity:.68}.text-action{color:#f2ead7;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark))}.text-action.is-reroll:not(:disabled){color:#fff1d6;background:linear-gradient(#b58146,#8a5a2e 55%,#5f3c1d)}.session-copy{color:#2e2017;font-size:clamp(.9rem,1.7vh,1rem);line-height:1.55}.panel-topline{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.game-panel .panel-topline{display:none}.character-profile-button{color:#fff1cf;text-align:left;border:3px solid var(--ui-ink);cursor:pointer;background:linear-gradient(#fff1c71f,#0000 40%),linear-gradient(#706050,#3a302a 58%,#201915);border-radius:5px;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:8px;min-width:0;max-width:min(70%,230px);min-height:46px;padding:5px 11px 5px 6px;display:grid;box-shadow:0 3px #17110d,inset 0 2px #ffecb73d}.profile-avatar{width:36px;height:36px;display:block;position:relative}.character-profile-button img{object-fit:cover;border:2px solid var(--ui-ink);border-radius:4px;width:36px;height:36px;display:block}.profile-status{border:2px solid var(--ui-ink);border-radius:50%;width:11px;height:11px;position:absolute;bottom:-3px;right:-3px;box-shadow:0 0 4px #00000080}.profile-status-online{background:#56d364;box-shadow:0 0 6px #56d364d9}.profile-status-connecting{background:var(--ui-gold-light)}.profile-status-offline{background:#c2403a}.character-profile-button strong{color:#fff8db;min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.84rem,1.55vh,1rem);line-height:1.1;display:block;overflow:hidden}.character-profile-button:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}.character-profile-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.mini-action{color:#fff1cf;border:3px solid var(--ui-ink);cursor:pointer;background:linear-gradient(#8d6f51,#684b34 58%,#3f2b22);border-radius:4px;flex:none;min-width:54px;min-height:44px;padding:0 12px;font-weight:700;box-shadow:0 3px #17110d,inset 0 2px #ffecb747}.mini-action:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}.mini-action.danger,.text-action.danger{background:linear-gradient(#8d3f38,#6d211e 58%,#321615)}.create-character-form{align-content:start;gap:12px;display:grid}.element-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.element-card{color:#3b2b1f;text-align:left;border:3px solid var(--ui-ink);cursor:pointer;background:linear-gradient(#d7c8aa,#a99169);border-radius:4px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:9px;min-height:74px;padding:8px;display:grid;position:relative;box-shadow:inset 0 2px #fff6db6b,inset 0 -4px #442f1d2e}.element-card.selected{border-color:var(--ui-ink);box-shadow:0 0 0 3px var(--ui-gold-light), 0 0 0 5px var(--ui-ink), inset 0 2px 0 #fff6db6b;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.element-card img,.character-row img,.selected-character img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:4px;width:100%;display:block}.element-card span,.character-row span{min-width:0}.element-card strong,.character-row strong{color:#33231a;font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.92rem,1.7vh,1.02rem);line-height:1.15;display:block}.element-card small,.character-row small{color:#2e2017;overflow-wrap:anywhere;margin-top:3px;font-size:clamp(.72rem,1.28vh,.82rem);line-height:1.25;display:block}.character-list{gap:9px;display:grid}.character-row{color:#3b2b1f;text-align:left;border:3px solid var(--ui-ink);cursor:pointer;min-height:84px;transition:filter .12s var(--ease), transform .12s var(--ease), box-shadow .12s var(--ease);background:linear-gradient(#d7c8aa,#a99169);border-radius:4px;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px;display:grid;box-shadow:0 3px #17110d,inset 0 2px #fff6db6b,inset 0 -4px #442f1d2e}button.character-row:hover:not(:disabled),.element-card:hover{filter:brightness(1.05)}button.character-row:active:not(:disabled){transform:translateY(2px);box-shadow:0 1px #17110d,inset 0 2px #fff6db6b,inset 0 -4px #442f1d2e}button.character-row:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}button.character-row:disabled,.character-row.is-manage{cursor:default}.character-row.is-pending-delete{cursor:default;filter:saturate(.55)brightness(.95)}.character-row.is-pending-delete .row-info small{color:#9a3a1e;font-weight:800}.selected-character{grid-template-columns:92px minmax(0,1fr);align-items:center;gap:14px;display:grid}.game-dock{max-height:86%}.game-panel{gap:10px;position:relative}.battle-stage{isolation:isolate;background:radial-gradient(ellipse at 50% 72%, #ffd36e57, transparent 48%), linear-gradient(180deg, #fff8ddb3, #d4be9494 48%, #a98b5a7a), repeating-linear-gradient(0deg, #4e39270d 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 62%, #b79a69);border:3px solid var(--ui-ink);border-radius:5px;grid-template-columns:minmax(0,1fr) 36px minmax(0,1fr);align-items:center;padding:13px 10px 10px;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff6db85,inset 0 -8px #61432624}@media (height>=881px){.battle-stage{min-height:184px}}.battle-stage:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(#6f481f47 0%,#ce9f523d 42%,#0000 70%);border-radius:50%;height:54px;position:absolute;bottom:16px;left:7%;right:7%;box-shadow:inset 0 2px #fff1b76b,0 -1px #452f1f47}.battle-stage:after{content:"";z-index:0;pointer-events:none;border:1px solid #4e392738;border-radius:3px;position:absolute;inset:7px}.fighter{z-index:2;align-content:center;justify-items:center;gap:5px;min-width:0;display:grid;position:relative}.hero-fighter{grid-column:1;justify-self:center}.enemy-fighter{grid-column:3;justify-self:center}.fighter img,.hero-sprite,.monster-sprite{aspect-ratio:1;object-fit:cover;width:122px;max-width:100%;box-shadow:0 0 0 3px var(--ui-ink), 0 0 0 5px #ffe89d57, 0 12px 18px #4a2d164d;border-radius:4px;display:block}.fighter>span:not(.enemy-boss-tag){color:#fff4cf;text-align:center;text-overflow:ellipsis;white-space:nowrap;border:2px solid var(--ui-ink);max-width:100%;min-height:22px;text-shadow:1px 0 0 var(--ui-ink), -1px 0 0 var(--ui-ink), 0 1px 0 var(--ui-ink);background:linear-gradient(#8a6a40,#4b3321);border-radius:4px;padding:2px 7px;font-size:clamp(.7rem,1.28vh,.82rem);font-weight:900;line-height:1.1;overflow:hidden;box-shadow:inset 0 1px #ffefb147,0 2px #36231557}.fighter-hp{border:2px solid var(--ui-ink);background:#3a2b20;border-radius:2px;width:min(100%,118px);height:10px;overflow:hidden;box-shadow:inset 0 1px #fff4c638,0 1px #ffecb738}.fighter-hp i{transform-origin:0;background:linear-gradient(#ffb37b,#c91e1e 58%,#831515);width:100%;height:100%;transition:transform .24s cubic-bezier(.2,0,0,1);display:block;box-shadow:inset 0 1px #fff1b76b}.fighter-static{will-change:transform, filter, translate;animation:2.8s ease-in-out infinite fighter-idle-bob}.enemy-static{animation-delay:-1.4s;transform:scaleX(-1)}.hero-static.pose-attack{animation:.46s cubic-bezier(.2,0,0,1) hero-attack}.enemy-static.pose-attack{animation:.46s cubic-bezier(.2,0,0,1) enemy-attack}.hero-static.pose-hit{animation:.38s cubic-bezier(.2,0,0,1) hero-hit}.enemy-static.pose-hit{animation:.38s cubic-bezier(.2,0,0,1) enemy-hit}.fighter-static.pose-defeat{animation:.72s cubic-bezier(.2,0,0,1) forwards fighter-defeat}@keyframes hero-attack{0%{transform:translate(0)scale(1)}28%{transform:translate(14px)scale(1.05)}to{transform:translate(0)scale(1)}}@keyframes enemy-attack{0%{transform:scaleX(-1)translate(0)scale(1)}28%{transform:scaleX(-1)translate(14px)scale(1.05)}to{transform:scaleX(-1)translate(0)scale(1)}}@keyframes hero-hit{0%{filter:brightness();transform:translate(0)}22%{filter:brightness(1.9)saturate(.55);transform:translate(-6px)}to{filter:brightness();transform:translate(0)}}@keyframes enemy-hit{0%{filter:brightness();transform:scaleX(-1)translate(0)}22%{filter:brightness(1.9)saturate(.55);transform:scaleX(-1)translate(-6px)}to{filter:brightness();transform:scaleX(-1)translate(0)}}@keyframes fighter-defeat{0%{filter:brightness()grayscale(0);opacity:1;translate:0}45%{filter:brightness(1.12)saturate(.78);opacity:.82;translate:0 -2px}to{filter:brightness(.72)grayscale(.82)sepia(.18);opacity:.38;translate:0 -8px}}@keyframes fighter-flash{0%{filter:brightness()}30%{filter:brightness(1.5)}to{filter:brightness()}}@keyframes fighter-idle-bob{0%,to{translate:0}50%{translate:0 -3px}}.battle-stage.shake-light{animation:.32s ease-in-out battle-shake-light}.battle-stage.shake-strong{animation:.44s ease-in-out battle-shake-strong}@keyframes battle-shake-light{0%,to{transform:translate(0)scale(1)}20%{transform:translate(-3px,2px)scale(1.025)}45%{transform:translate(3px,-2px)scale(1.025)}70%{transform:translate(-2px,1px)scale(1.012)}}@keyframes battle-shake-strong{0%,to{transform:translate(0)scale(1)}12%{transform:translate(-7px,5px)scale(1.05)rotate(-.5deg)}28%{transform:translate(7px,-4px)scale(1.05)rotate(.5deg)}45%{transform:translate(-6px,4px)scale(1.04)}62%{transform:translate(5px,-3px)scale(1.03)}80%{transform:translate(-3px,2px)scale(1.02)}}.combat-damage-flash{z-index:5;pointer-events:none;background:radial-gradient(#0000 38%,#c41c1680 100%);animation:.38s ease-out forwards combat-damage-flash;position:absolute;inset:0}@keyframes combat-damage-flash{0%{opacity:0}16%{opacity:1}to{opacity:0}}.combat-hit-spark{z-index:5;pointer-events:none;background:radial-gradient(circle,#fff7bef2 0%,#ffc4549e 42%,#0000 72%);border-radius:50%;width:56px;height:56px;animation:.3s ease-out forwards combat-hit-spark;position:absolute;top:32%;right:16%}@keyframes combat-hit-spark{0%{opacity:0;transform:scale(.4)}35%{opacity:1}to{opacity:0;transform:scale(1.5)}}.skill-effect,.defeat-effect{z-index:5;pointer-events:none;position:absolute;inset:0}.skill-effect.element-earth{--fx:#d39a2e;--fx2:#7c5a2a;--fxb:#ffd96e}.skill-effect.element-water{--fx:#36a3e6;--fx2:#1a6bb0;--fxb:#9fe6ff}.skill-effect.element-wind{--fx:#4fcd9f;--fx2:#2f9b78;--fxb:#c2f7e2}.skill-effect.element-fire{--fx:#ff7a2f;--fx2:#c9322b;--fxb:#ffd24f}.skill-effect.element-neutral{--fx:#d8c39a;--fx2:#8a6a40;--fxb:#fff0c0}.skill-fx-burst,.skill-fx-ring,.skill-fx-rays{position:absolute;top:36%;right:21%}.skill-fx-burst{background:radial-gradient(circle, var(--fxb) 0%, var(--fx) 44%, transparent 72%);filter:blur(1px);border-radius:50%;width:128px;height:128px;animation:.68s cubic-bezier(.2,0,0,1) forwards skill-fx-burst}@keyframes skill-fx-burst{0%{opacity:0;transform:translate(50%,-50%)scale(.2)}26%{opacity:1}to{opacity:0;transform:translate(50%,-50%)scale(1.9)}}.skill-fx-ring{border:4px solid var(--fxb);width:64px;height:64px;box-shadow:0 0 12px var(--fx);border-radius:50%;animation:.64s cubic-bezier(.2,0,0,1) forwards skill-fx-ring}.skill-fx-ring-2{border-color:var(--fx);animation-delay:.13s}@keyframes skill-fx-ring{0%{opacity:.95;transform:translate(50%,-50%)scale(.2)}to{opacity:0;transform:translate(50%,-50%)scale(2.6)}}.skill-fx-rays{background:repeating-conic-gradient(from 0deg, var(--fxb) 0deg 2.5deg, transparent 2.5deg 30deg);width:152px;height:152px;animation:.56s cubic-bezier(.2,0,0,1) forwards skill-fx-rays;-webkit-mask:radial-gradient(circle,#0000 16%,#000 24% 46%,#0000 60%);mask:radial-gradient(circle,#0000 16%,#000 24% 46%,#0000 60%)}@keyframes skill-fx-rays{0%{opacity:0;transform:translate(50%,-50%)scale(.3)rotate(-22deg)}30%{opacity:.9}to{opacity:0;transform:translate(50%,-50%)scale(1.55)rotate(18deg)}}.skill-fx-rays{width:196px;height:196px}.skill-fx-flash{background:radial-gradient(ellipse at 70% 42%, var(--fx) 0%, transparent 68%);animation:.54s ease-out forwards skill-fx-flash;position:absolute;inset:0}@keyframes skill-fx-flash{0%{opacity:0}18%{opacity:.78}to{opacity:0}}.defeat-fx-veil,.defeat-fx-orb,.defeat-fx-mote,.defeat-fx-dust{position:absolute;top:36%;right:21%}.defeat-fx-veil{filter:blur(3px);background:radial-gradient(at 50% 36%,#fff0c057,#0000 58%),linear-gradient(#8bd2c433,#d39a2e24 55%,#0000);border-radius:48% 48% 52% 52%;width:104px;height:126px;animation:.82s cubic-bezier(.2,0,0,1) forwards defeat-fx-veil}@keyframes defeat-fx-veil{0%{opacity:0;transform:translate(50%,-50%)scale(.82)}24%{opacity:.75}to{opacity:0;transform:translate(50%,-78%)scale(1.02)}}.defeat-fx-orb{background:radial-gradient(circle,#fff8dceb 0%,#85d9c76b 50%,#0000 74%);border-radius:50%;width:38px;height:38px;animation:.76s cubic-bezier(.2,0,0,1) forwards defeat-fx-orb;box-shadow:0 0 14px #85d9c76b}@keyframes defeat-fx-orb{0%{opacity:0;transform:translate(50%,-42%)scale(.58)}22%{opacity:.9}to{opacity:0;transform:translate(50%,-104%)scale(.82)}}.defeat-fx-mote{background:#f8e7a7;border-radius:50%;width:9px;height:9px;animation:.76s cubic-bezier(.2,0,0,1) forwards defeat-fx-mote;box-shadow:0 0 8px #ffe6a094}.defeat-fx-mote-1{--dx:-28px;--dy:-54px;animation-delay:20ms}.defeat-fx-mote-2{--dx:22px;--dy:-62px;width:7px;height:7px;animation-delay:90ms}.defeat-fx-mote-3{--dx:-12px;--dy:-78px;background:#a7ead9;width:6px;height:6px;animation-delay:.15s}.defeat-fx-mote-4{--dx:34px;--dy:-42px;background:#ffd37a;width:6px;height:6px;animation-delay:.21s}@keyframes defeat-fx-mote{0%{opacity:0;transform:translate(50%,-50%)scale(.4)}20%{opacity:.95}to{opacity:0;transform:translate(calc(50% + var(--dx)), calc(-50% + var(--dy))) scale(.92)}}.defeat-fx-dust{filter:blur(4px);background:radial-gradient(#ffde9633,#0000 70%);border-radius:50%;width:96px;height:42px;animation:.68s ease-out forwards defeat-fx-dust}@keyframes defeat-fx-dust{0%{opacity:0;transform:translate(50%)scale(.74)}28%{opacity:.5}to{opacity:0;transform:translate(50%,12px)scale(1.18)}}.skill-sprite-layer{z-index:5;pointer-events:none;position:absolute;inset:0}.skill-sprite-fx{object-fit:contain;filter:drop-shadow(0 0 8px #ffffff52);width:156px;height:156px;position:absolute;top:36%}.skill-sprite-fx.fx-el-fire{filter:drop-shadow(0 0 9px #ff8a268c)}.skill-sprite-fx.fx-el-water{filter:drop-shadow(0 0 9px #3ca2e68c)}.skill-sprite-fx.fx-el-wind{filter:drop-shadow(0 0 9px #56cda280)}.skill-sprite-fx.fx-el-earth{filter:drop-shadow(0 0 9px #d39a2e80)}.skill-sprite-fx.on-enemy{right:21%;transform:translate(50%,-50%)}.skill-sprite-fx.on-hero{left:21%;transform:translate(-50%,-50%)}@media (prefers-reduced-motion:reduce){.fighter-static,.battle-stage.shake-light,.battle-stage.shake-strong{animation:none}.hero-static.pose-attack,.enemy-static.pose-attack,.hero-static.pose-hit,.enemy-static.pose-hit{animation:.32s ease-out fighter-flash}}.monster-sprite{will-change:contents;background:0 0;place-items:center;display:grid;position:relative;overflow:hidden;transform:scaleX(-1)}.hero-sprite{will-change:contents;background:0 0;place-items:center;display:grid;position:relative;overflow:hidden}.hero-sprite .hero-frame,.monster-sprite .monster-frame{object-fit:contain;width:100%;max-width:none;height:100%;box-shadow:none;-webkit-user-select:none;user-select:none;pointer-events:none;border-radius:0;display:block;transform:none}.battle-core{z-index:4;color:#5a271e;text-align:center;border:2px solid var(--ui-ink);background:linear-gradient(#fff8ddeb,#d2b16fe6);border-radius:999px;place-items:center;min-width:74px;max-width:42%;padding:4px 8px;display:grid;position:absolute;top:8px;left:50%;transform:translate(-50%);box-shadow:0 0 0 2px #ffe48c57,0 3px #49301a47,inset 0 1px #fffce2b8}.battle-core strong,.battle-core small{display:block}.battle-core strong{color:#5a271e;text-overflow:ellipsis;white-space:nowrap;text-shadow:0 1px #fff6dbad;max-width:100%;font-size:clamp(.76rem,1.42vh,.9rem);line-height:1.15;overflow:hidden}.battle-core small{color:#8a1c18;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin-top:1px;font-size:clamp(.58rem,1.08vh,.68rem);font-weight:900;line-height:1.05;overflow:hidden}.battle-stage.is-boss{background:radial-gradient(ellipse at 50% 72%, #ff7b4c38, transparent 48%), linear-gradient(180deg, #fff8ddb3, #d4be948f 48%, #ad6f5257), repeating-linear-gradient(0deg, #4e39270d 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 62%, #b79a69);border-color:#7b241e;box-shadow:0 0 18px #cd2a1e47,0 0 0 2px #7b241e,inset 0 2px #fff6db80,inset 0 -8px #61432624}.battle-stage.is-boss .battle-core strong{color:#7b241e}.combat-float-layer{z-index:6;pointer-events:none;position:absolute;inset:0}.combat-float{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg));transform-origin:50%;--cf-drift:0px;--cf-tilt:0deg;white-space:nowrap;color:#fff7d8;max-width:42%;font-family:var(--font-display);text-align:center;-webkit-text-stroke:3px var(--ui-ink);paint-order:stroke fill;text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c;will-change:translate, opacity;margin:0;font-size:clamp(.92rem,1.9vh,1.18rem);font-weight:900;line-height:1;animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise;position:absolute}.combat-float.lane-center{white-space:normal;overflow-wrap:anywhere;letter-spacing:.01em;text-wrap:balance;max-width:86%;font-size:clamp(.86rem,1.7vh,1.06rem);transform:translate(-50%,-50%)}.combat-float.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.26s cubic-bezier(.18,.9,.32,1.4) both combat-float-pop}.combat-float.tone-damage,.combat-float.tone-skill{color:#ffe97f}.combat-float.tone-taken{color:#ff9f8c}.combat-float.tone-heal{color:#b6f290}.combat-float.tone-miss{color:#e7e2d8;font-style:italic}.combat-float.tone-boss{color:#ffd36b;-webkit-text-stroke-width:3.5px;letter-spacing:.02em;font-size:clamp(1rem,2.1vh,1.3rem)}@keyframes combat-float-rise{0%{opacity:0;translate:0 8px}14%{opacity:1;translate:calc(var(--cf-drift) * .2) 0}64%{opacity:1;translate:calc(var(--cf-drift) * .7) -26px}to{opacity:0;translate:var(--cf-drift) -46px}}@keyframes combat-float-pop{0%{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(.66)}60%{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(1.16)}to{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(1)}}@keyframes combat-float-pop-center{0%{transform:translate(-50%,-50%)scale(.66)}60%{transform:translate(-50%,-50%)scale(1.16)}to{transform:translate(-50%,-50%)scale(1)}}.combat-float.tier-small{opacity:.97;font-size:clamp(.82rem,1.6vh,1.02rem)}.combat-float.tier-big{-webkit-text-stroke-width:3.5px;font-size:clamp(1rem,1.9vh,1.2rem)}.combat-float.tier-huge{-webkit-text-stroke-width:4px;letter-spacing:.01em;font-size:clamp(1.12rem,2.2vh,1.4rem)}.combat-float.tier-big,.combat-float.tier-huge{text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c, 0 9px 7px #08050352, 0 15px 11px #08050329}.combat-float.tier-big.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.3s cubic-bezier(.16,.9,.3,1.35) both combat-float-slam}.combat-float.tier-huge.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.38s cubic-bezier(.12,.85,.28,1.45) both combat-float-slam-huge}.combat-float.lane-center.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.26s cubic-bezier(.18,.9,.32,1.4) both combat-float-pop-center}@keyframes combat-float-slam{0%{transform:translate(-50%, calc(-50% - 9px)) rotate(var(--cf-tilt,0deg)) scale(.7)}55%{transform:translate(-50%, calc(-50% + 2px)) rotate(var(--cf-tilt,0deg)) scale(1.2)}78%{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(.96)}to{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(1)}}@keyframes combat-float-slam-huge{0%{transform:translate(-50%, calc(-50% - 13px)) rotate(var(--cf-tilt,0deg)) scale(.62)}50%{transform:translate(-50%, calc(-50% + 3px)) rotate(var(--cf-tilt,0deg)) scale(1.28)}72%{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(.93)}to{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(1)}}.combat-float.is-spotlight{color:#ffe07a}.combat-float.is-spotlight.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.62s ease-out both combat-float-spotlight}.combat-float.tier-big.is-fresh.is-spotlight{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.3s cubic-bezier(.16,.9,.3,1.35) both combat-float-slam,.62s ease-out both combat-float-spotlight}.combat-float.tier-huge.is-fresh.is-spotlight{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.38s cubic-bezier(.12,.85,.28,1.45) both combat-float-slam-huge,.62s ease-out both combat-float-spotlight}.combat-float.lane-center.is-fresh.is-spotlight{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.26s cubic-bezier(.18,.9,.32,1.4) both combat-float-pop-center,.62s ease-out both combat-float-spotlight}@keyframes combat-float-spotlight{0%{text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c, 0 0 0 #ffd36b00}35%{text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c, 0 0 12px #ffda78f2, 0 0 22px #ffc4548c}to{text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c, 0 0 6px #ffd36b4d}}.combat-float.tone-taken.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.24s steps(5,end) both combat-float-jolt}.combat-float.tone-taken.tier-big.is-fresh,.combat-float.tone-taken.tier-huge.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.3s cubic-bezier(.16,.9,.3,1.35) both combat-float-slam,.24s steps(5,end) both combat-float-jolt}@keyframes combat-float-jolt{0%{transform:translate(calc(-50% - 3px), -50%) rotate(var(--cf-tilt,0deg))}25%{transform:translate(calc(-50% + 3px), -50%) rotate(var(--cf-tilt,0deg))}50%{transform:translate(calc(-50% - 2px), -50%) rotate(var(--cf-tilt,0deg))}75%{transform:translate(calc(-50% + 1px), -50%) rotate(var(--cf-tilt,0deg))}to{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg))}}.combat-float.tone-heal.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.34s cubic-bezier(.25,.8,.3,1) both combat-float-bloom}@keyframes combat-float-bloom{0%{transform:translate(-50%, calc(-50% + 4px)) rotate(var(--cf-tilt,0deg)) scale(.8);opacity:.85}to{transform:translate(-50%, -50%) rotate(var(--cf-tilt,0deg)) scale(1)}}.combat-float.tone-miss.is-fresh{opacity:.92;animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise}.combat-float.tone-boss.is-fresh{animation:1.4s cubic-bezier(.2,0,0,1) forwards combat-float-rise,.26s cubic-bezier(.18,.9,.32,1.4) both combat-float-pop-center,.7s ease-out both combat-float-spotlight}.combat-float.is-fresh{will-change:translate, transform, opacity}@media (prefers-reduced-motion:reduce){.combat-float,.combat-float.is-fresh,.combat-float.lane-center,.combat-float.lane-center.is-fresh,.combat-float.lane-center.is-fresh.is-spotlight,.combat-float.tier-big.is-fresh,.combat-float.tier-huge.is-fresh,.combat-float.tier-big.is-fresh.is-spotlight,.combat-float.tier-huge.is-fresh.is-spotlight,.combat-float.is-spotlight.is-fresh,.combat-float.tone-taken.is-fresh,.combat-float.tone-taken.tier-big.is-fresh,.combat-float.tone-taken.tier-huge.is-fresh,.combat-float.tone-heal.is-fresh,.combat-float.tone-miss.is-fresh,.combat-float.tone-boss.is-fresh{animation:1.4s forwards combat-float-fade}.combat-float.is-spotlight{text-shadow:2px 0 0 var(--ui-ink), -2px 0 0 var(--ui-ink), 0 2px 0 var(--ui-ink), 0 -2px 0 var(--ui-ink), 2px 2px 0 var(--ui-ink), -2px 2px 0 var(--ui-ink), 2px -2px 0 var(--ui-ink), -2px -2px 0 var(--ui-ink), 0 3px 4px #0805038c, 0 0 7px #ffd36b66}@keyframes combat-float-fade{0%{opacity:0}12%{opacity:1}78%{opacity:1}to{opacity:0}}}.reward-toast-layer{z-index:24;pointer-events:none;justify-items:center;gap:7px;display:grid;position:absolute;top:clamp(184px,31vh,226px);left:12px;right:12px}.reward-toast{color:#fff5cf;border:3px solid var(--ui-ink);max-width:min(100%,360px);animation:reward-toast-float 2.6s var(--ease) forwards;background:linear-gradient(#fff5c924,#0000 38%),linear-gradient(#59483a,#2a221d 64%,#18120f);border-radius:5px;flex-wrap:wrap;justify-content:center;gap:8px;padding:7px 9px;display:flex;box-shadow:0 4px #17110d,0 12px 22px #170e0857,inset 0 2px #ffefb138}.reward-toast span{background:#ffedb11a;border:2px solid #201915d1;border-radius:4px;grid-template-columns:36px minmax(0,auto) auto;align-items:center;gap:5px;min-width:0;padding:3px 7px 3px 3px;display:grid}.reward-toast img{aspect-ratio:1;object-fit:contain;border:2px solid var(--ui-ink);background:radial-gradient(circle,#ffea9438,#140e0a38);border-radius:4px;width:36px;display:block}.reward-toast strong,.reward-toast b{white-space:nowrap;text-shadow:0 2px #17110d;min-width:0;line-height:1}.reward-toast strong{color:#fff7d8;text-overflow:ellipsis;font-size:clamp(.74rem,1.35vh,.86rem);overflow:hidden}.reward-toast b{color:#ffe173;font-size:clamp(.82rem,1.5vh,.96rem)}@media (prefers-reduced-motion:reduce){.reward-toast{animation-name:reward-toast-fade}}@keyframes reward-toast-float{0%{opacity:0;transform:translateY(12px)scale(.94)}12%,68%{opacity:1}72%{transform:translateY(-8px)scale(1)}to{opacity:0;transform:translateY(-28px)scale(.96)}}@keyframes reward-toast-fade{0%{opacity:0}12%,72%{opacity:1}to{opacity:0}}.offline-reward-overlay{z-index:var(--z-modal);background:#0c0a0894;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.offline-reward-card{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);border-radius:6px;gap:12px;width:min(100%,392px);padding:18px;display:grid;box-shadow:0 0 0 2px #6e5137,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb773}.offline-reward-card h2{color:#6d2a1d;text-shadow:0 2px #fff4cba6;margin:0;font-size:clamp(1.35rem,3vh,1.75rem);line-height:1.05}.offline-reward-duration{color:#4e3322;margin:0;font-size:clamp(.82rem,1.45vh,.94rem);font-weight:800;line-height:1.35}.offline-reward-summary{grid-template-columns:1fr 1fr;gap:7px;display:grid}.offline-reward-summary span{color:#fff7d8;border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;gap:3px;min-width:0;padding:8px;display:grid;box-shadow:inset 0 2px #ffe9b233}.offline-reward-summary b,.offline-reward-summary small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.1;overflow:hidden}.offline-reward-summary b{color:#fff7d8;font-size:clamp(.88rem,1.58vh,1rem)}.offline-reward-summary small{color:#ffe0a0;font-size:clamp(.64rem,1.1vh,.74rem);font-weight:900}.offline-reward-list{gap:8px;display:grid}.offline-reward-list span{background:#fff7d940;border:2px solid #20191580;border-radius:4px;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:6px 9px 6px 6px;display:grid}.offline-reward-list img{aspect-ratio:1;object-fit:contain;border:2px solid var(--ui-ink);background:radial-gradient(circle,#ffea944d,#140e0a47),linear-gradient(#5c4632,#2b211b);border-radius:4px;width:44px;display:block}.offline-reward-list strong,.offline-reward-list b{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.1;overflow:hidden}.offline-reward-list strong{color:#3f2d20;font-size:clamp(.82rem,1.45vh,.94rem)}.offline-reward-list b{color:#8a1c18;font-size:clamp(.9rem,1.6vh,1.02rem);font-weight:1000}.boss-result-card.is-win{box-shadow:0 0 0 2px #6e5137,0 0 24px #ffd36e4d,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb780}.boss-result-card.is-lose h2{color:#8f2a20}.game-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.game-stat-grid div{border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;min-height:54px;padding:9px;box-shadow:inset 0 2px #ffe9b233}.game-stat-grid span,.game-stat-grid strong{display:block}.game-stat-grid span{color:#ffe0a0;font-size:clamp(.68rem,1.25vh,.8rem)}.game-stat-grid strong{color:#fff7d8;overflow-wrap:anywhere;margin-top:4px;font-size:clamp(.98rem,1.9vh,1.24rem);line-height:1}.meter-stack{gap:7px;display:grid}.meter{gap:5px;display:grid}.meter div{color:#4f3726;justify-content:space-between;gap:8px;font-size:clamp(.72rem,1.35vh,.84rem);line-height:1.2;display:flex}.meter strong{color:#3c2b1f;font-weight:700}.meter i{border:2px solid var(--ui-ink);background:#2a2724;border-radius:3px;width:100%;height:8px;display:block;overflow:hidden;box-shadow:inset 0 2px #00000059}.meter b{transform-origin:0;border-radius:1px;width:100%;height:100%;transition:transform .3s cubic-bezier(.2,0,0,1);display:block;box-shadow:inset 0 2px #fff6db47}.meter-hp b{background:linear-gradient(#ff8a72,#d83b32)}.meter-mp b{background:linear-gradient(#6fc8f3,#2f86cf)}.meter-exp b{background:linear-gradient(#b6e371,#6aa72c)}.home-active-skills{gap:5px;display:grid}.home-active-skills-head{justify-content:space-between;align-items:center;gap:8px;padding:0 2px;display:flex}.home-active-skills-head span{color:#5a3a1e;font-family:var(--font-display);font-size:clamp(.86rem,1.55vh,1rem);font-weight:800;line-height:1.1}.home-active-skills-head button{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:2px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-height:24px;padding:2px 10px;font-size:clamp(.64rem,1.12vh,.72rem);font-weight:900;box-shadow:inset 0 2px #ffefb138,inset 0 -2px #17110d47}.home-active-skill-list{flex-wrap:wrap;gap:6px;display:flex}.home-skill-slot{cursor:pointer;min-width:0;transition:filter .14s var(--ease), transform .14s var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid;position:relative}.home-skill-slot:hover{filter:brightness(1.07)}.home-skill-slot:active{transform:translateY(1px)}.home-skill-slot.ready{color:#f7ffd8;box-shadow:0 0 10px #7ee65d6b,inset 0 2px #ffefb140,inset 0 -3px #17110d52}.home-skill-slot.empty{filter:grayscale(.25)brightness(.82)}.home-skill-slot.locked{cursor:default;filter:grayscale(.55)brightness(.66);box-shadow:inset 0 2px #ffefb11a,inset 0 -3px #17110d57}.home-skill-slot.locked:hover{filter:grayscale(.55)brightness(.66)}.home-skill-slot.locked:active{transform:none}.home-skill-slot.locked strong{color:#ddd0ae}.home-skill-slot.locked small{color:#c4b086}.home-skill-slot.locked .home-skill-icon{background:#241d17}.home-skill-slot.locked .home-skill-icon i{aspect-ratio:auto;background:#cab68b;border:2px solid #15100b;border-radius:2px;width:15px;height:12px;margin-top:5px;position:relative}.home-skill-slot.locked .home-skill-icon i:before{content:"";border:2px solid #15100b;border-bottom:none;border-radius:5px 5px 0 0;width:9px;height:9px;position:absolute;top:-8px;left:50%;transform:translate(-50%)}.home-skill-icon{aspect-ratio:1;border:2px solid var(--ui-ink);background:#2e2620;border-radius:4px;place-items:center;width:46px;display:grid;position:relative;overflow:hidden;box-shadow:0 0 0 1px #6e5137,inset 0 0 0 2px #ffecb72e}.home-skill-icon img{object-fit:cover;width:100%;height:100%;display:block}.home-skill-icon i{aspect-ratio:1;background:#100c096b;border:2px solid #ffecb742;border-radius:3px;width:46%;display:block}.home-skill-slot strong,.home-skill-slot small{text-align:center;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;line-height:1.1;overflow:hidden}.home-skill-slot strong{color:#fff7d8;font-size:clamp(.58rem,1.04vh,.68rem);font-weight:900}.home-skill-slot small{color:#ffe0a0;font-size:clamp(.56rem,.98vh,.64rem);font-weight:900}.home-skill-slot.ready small{color:#bfff8e}.home-skill-slot small.home-skill-meta{color:#d8c39a;font-size:clamp(.5rem,.92vh,.58rem);font-weight:800}.home-skill-slot.just-used{animation:.62s cubic-bezier(.2,0,0,1) home-skill-cast-pulse}@keyframes home-skill-cast-pulse{0%{filter:brightness();transform:scale(1)}36%{filter:brightness(1.35)saturate(1.25);transform:scale(1.04)}to{filter:brightness();transform:scale(1)}}.home-skill-slot.mp-starved{color:#d4ecff;box-shadow:0 0 9px #55bdf266,inset 0 2px #ffefb133,inset 0 -3px #17110d52}.home-skill-slot.mp-starved small{color:#82d1ff}.home-skill-slot.mp-starved .home-skill-icon{filter:grayscale(.3)brightness(.84)}.home-skill-slot.mp-starved .home-skill-cooldown i{background:linear-gradient(#6fc8f3,#2f86cf)}.home-skill-cooldown{border:1.5px solid var(--ui-ink);background:#211b17;border-radius:2px;width:100%;height:5px;display:block;overflow:hidden;box-shadow:inset 0 1px #00000061}.home-skill-cooldown i{transform-origin:0;background:linear-gradient(#79e76d,#3f9a36);width:100%;height:100%;display:block;transform:scaleX(1);box-shadow:inset 0 1px #fff6db52}@keyframes skill-cooldown-fill{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.game-actions{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.game-actions>button{grid-column:span 2}.game-actions .farming-toggle,.game-actions .auto-boss-toggle{grid-column:span 3}.game-actions .primary-action,.game-actions .text-action{white-space:nowrap;min-width:0;padding:0 5px;font-size:clamp(.68rem,1.2vh,.8rem)}.boss-preview-card{color:#efe3c6;border:3px solid var(--ui-ink);background:linear-gradient(#fff0c61f,#0000 34%),linear-gradient(#5a5045,#302922 62%,#201914);border-radius:5px;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;min-height:72px;padding:8px;display:grid;box-shadow:inset 0 2px #ffefb12e,inset 0 -3px #17110d47}.boss-preview-card img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);border-radius:4px;width:58px;display:block;box-shadow:0 6px 12px #08060452}.boss-preview-card div{gap:2px;min-width:0;display:grid}.boss-preview-card span,.boss-preview-card small{color:#ffe19a;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:900;line-height:1.15}.boss-preview-card strong{color:#fff0cf;min-width:0;font-family:var(--font-display);overflow-wrap:anywhere;text-shadow:1px 0 0 var(--ui-ink), -1px 0 0 var(--ui-ink), 0 1px 0 var(--ui-ink);font-size:clamp(.82rem,1.5vh,.96rem);line-height:1.15}.boss-preview-card small{color:#cdbf9e}.boss-preview-card.is-ready{border-color:#6d431d;box-shadow:0 0 14px #ffd36e42,inset 0 2px #ffefb138,inset 0 -3px #17110d47}.boss-preview-card.is-ready span{color:#f8d76e}.state-toggle{transition:filter .16s var(--ease), transform .16s var(--ease);position:relative;overflow:hidden}.state-toggle.is-inactive{color:#fff3d8;background:linear-gradient(#f04b3f,#bb2925 54%,#651817)}.state-toggle.is-active{color:#f6ffe5;background:linear-gradient(#8fdf58,#3d9b34 55%,#1f5d24);box-shadow:0 3px #17110d,0 0 14px #77e6576b,0 6px 12px #1a100a52,inset 0 2px #f2ffc38a,inset 0 -4px #123f165c}.state-toggle:hover:not(:disabled){filter:brightness(1.07)}.state-toggle:active:not(:disabled){transform:translateY(2px)}.state-toggle.is-active:after{content:"";pointer-events:none;background:linear-gradient(100deg,#0000,#ffffda8c,#0000);width:34%;position:absolute;inset:3px auto 3px -38%;transform:skew(-18deg)}@media (prefers-reduced-motion:no-preference){.state-toggle.is-active{animation:1.9s ease-in-out infinite state-toggle-glow}.state-toggle.is-active:after{animation:2.3s ease-in-out infinite state-toggle-sweep}}@keyframes state-toggle-glow{0%,to{filter:brightness()}50%{filter:brightness(1.12)}}@keyframes state-toggle-sweep{0%{left:-38%}52%,to{left:112%}}.filter-action{position:relative}.filter-on-dot{border:1.5px solid var(--ui-ink);background:#8fdf58;border-radius:50%;width:8px;height:8px;position:absolute;top:5px;right:6px;box-shadow:0 0 5px #77e657d9}.bottom-nav{z-index:12;padding:5px 6px calc(5px + env(safe-area-inset-bottom)) 6px;border-top:3px solid var(--ui-ink);background:linear-gradient(#fff0c60f,#0000 38%),linear-gradient(#423b32,#221d18);grid-template-columns:repeat(5,1fr);gap:3px;display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -2px #6e5137,0 -9px 20px #08060475}.menu-subdrawer{left:8px;right:8px;bottom:calc(86px + env(safe-area-inset-bottom));z-index:13;border:3px solid var(--ui-ink);background:linear-gradient(#fff0c61a,#0000 38%),linear-gradient(#5d5144,#2c251d);border-radius:6px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:7px;display:grid;position:absolute;box-shadow:0 0 0 2px #6e5137,0 -8px 22px #0806046b,inset 0 2px #ffefb12e}.menu-subitem{color:#f3ead2;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;min-width:0;min-height:46px;font-family:var(--font-display);text-align:center;border-radius:4px;place-items:center;padding:4px 6px;font-size:.9rem;font-weight:900;line-height:1.08;display:grid;position:relative;box-shadow:inset 0 2px #ffefb140,inset 0 -3px #17110d4d}.menu-subitem.selected,.bottom-nav-item.selected{color:#fff4cf;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.menu-subitem:disabled{cursor:not-allowed;filter:grayscale(.4)brightness(.78)}.menu-subitem span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.menu-subitem b{color:#fff4cf;background:linear-gradient(180deg, #ff5745, var(--ui-red) 60%, #781b17);border:2px solid var(--ui-ink);border-radius:999px;place-items:center;min-width:21px;height:21px;font-size:.58rem;line-height:1;display:grid;position:absolute;top:-7px;right:-5px;box-shadow:0 0 8px #ef3a2f8c}.bottom-nav-item{color:#efe3c6;text-align:center;cursor:pointer;min-width:0;height:68px;min-height:68px;box-shadow:none;transition:transform .12s var(--ease), filter .12s var(--ease);background:0 0;border:0;border-radius:4px;place-items:center;gap:0;padding:0;display:grid;position:relative}.bottom-nav-item.selected{color:#fff4cf;box-shadow:none;background:0 0}.bottom-nav-item:after{content:"";z-index:1;background:linear-gradient(#5a3114db,#241209f0);border:1px solid #ffd67785;border-radius:3px;width:min(64px,100% - 8px);height:16px;position:absolute;bottom:7px;left:50%;transform:translate(-50%);box-shadow:inset 0 1px #ffedad38,0 1px 2px #08050394}.bottom-nav-item:hover:not(:disabled){filter:brightness(1.08)}.bottom-nav-item:active:not(:disabled){transform:translateY(1px)}.bottom-nav-item:disabled{cursor:not-allowed;filter:grayscale(.4)brightness(.78)}.bottom-nav-label{z-index:2;width:min(68px,100%);font-family:var(--font-display);letter-spacing:0;color:#fff1cf;text-align:center;text-overflow:ellipsis;white-space:nowrap;text-shadow:-1px 0 #2b170d,1px 0 #2b170d,0 -1px #2b170d,0 1px #2b170d,0 2px 2px #080503bf;font-size:.78rem;font-weight:900;line-height:1.05;position:absolute;bottom:9px;left:50%;overflow:hidden;transform:translate(-50%)}.bottom-nav-icon{aspect-ratio:1;object-fit:contain;-webkit-user-select:none;user-select:none;pointer-events:none;filter:drop-shadow(0 1px #18120ec7)drop-shadow(0 2px 3px #0805036b);border-radius:4px;width:min(64px,100% - 2px);height:auto;display:block}.bottom-nav-item.selected .bottom-nav-icon{filter:drop-shadow(0 0 5px #ffe187c7)drop-shadow(0 2px 3px #0805036b);transform:translateY(-2px)scale(1.04)}.bottom-nav-notif{z-index:3;background:var(--ui-red-bright);border:1.5px solid var(--ui-ink);width:9px;height:9px;position:absolute;top:5px;right:max(4px,50% - 34px);transform:rotate(45deg);box-shadow:0 0 6px #ef3a2fb3}.game-frame.app-mode .content-dock>.game-panel{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.system-screen{z-index:var(--z-system);background:linear-gradient(180deg, #fff6d92e, transparent 16%), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 60%, #ab9470);box-shadow:inset 0 0 0 3px var(--ui-ink), inset 0 0 0 5px #6e5137, inset 0 0 0 7px #ffecb757;animation:system-screen-in .22s var(--ease);flex-direction:column;display:flex;position:absolute;inset:0}@keyframes system-screen-in{0%{opacity:0;transform:translate(7%)}to{opacity:1;transform:translate(0)}}.system-screen-bar{padding:max(12px, calc(env(safe-area-inset-top) + 12px)) max(14px, calc(env(safe-area-inset-right) + 14px)) 12px max(14px, calc(env(safe-area-inset-left) + 14px));color:#f6edd4;background:linear-gradient(180deg, #57544d, var(--ui-stone-dark));border-bottom:3px solid var(--ui-ink);flex-shrink:0;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.system-screen-bar h2{color:#f8efd6;font-family:var(--font-display);letter-spacing:-.01em;text-align:center;text-shadow:0 2px #0d0a0873;margin:0;font-size:clamp(1.1rem,2.6vh,1.4rem);font-weight:800}.system-back{color:#f6edd4;background:linear-gradient(180deg, #8a8780, var(--ui-stone) 54%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;min-height:44px;transition:transform .12s var(--ease), filter .12s var(--ease);border-radius:4px;justify-self:start;align-items:center;gap:4px;padding:6px 16px 6px 12px;font-size:.84rem;font-weight:900;display:inline-flex;box-shadow:inset 0 2px #ffefb13d,inset 0 -3px #17110d4d}.system-back:hover{filter:brightness(1.07)}.system-back:active{transform:translateY(1px)}.system-back-icon{font-size:1.2rem;line-height:.7}.system-screen-meta{color:#ffecb7d1;white-space:nowrap;justify-self:end;font-size:.78rem;font-weight:800}.system-screen-body{scrollbar-width:none;min-height:0;padding:14px max(13px, calc(env(safe-area-inset-right) + 13px)) max(30px, calc(env(safe-area-inset-bottom) + 30px)) max(14px, calc(env(safe-area-inset-left) + 14px));flex:1;overflow-y:auto}@media (prefers-reduced-motion:reduce){.system-screen{animation:none}}.home-equipped{gap:6px;display:grid}.home-equipped-head{justify-content:space-between;align-items:baseline;gap:8px;padding:0 2px;display:flex}.home-equipped-head span{font-family:var(--font-display);color:#5a3a1e;font-size:1rem;font-weight:800}.home-equipped-head small{color:#3f2f21b8;font-size:.7rem;font-weight:700}.inventory-panel-equipped,.inventory-panel-bag{gap:7px}.inventory-panel-bag{padding:2px 0 0}.build-panel{gap:8px;min-height:0;display:grid}.build-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.build-summary div{color:#fff7d8;border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;min-width:0;padding:8px;box-shadow:inset 0 2px #ffe9b233}.build-summary span,.build-summary strong{overflow-wrap:anywhere;min-width:0;line-height:1.15;display:block}.build-summary span{color:#ffe0a0;font-size:clamp(.66rem,1.2vh,.76rem);font-weight:900}.build-summary strong{margin-top:4px;font-size:clamp(.82rem,1.45vh,.98rem)}.status-list,.skill-section{gap:6px;display:grid}.status-row{background:repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px),linear-gradient(#d7c8aa,#a99169);border:2px solid #2019159e;border-radius:4px;grid-template-columns:minmax(0,1fr) auto 112px;align-items:center;gap:8px;min-width:0;padding:7px;display:grid}.status-row strong,.status-row small,.status-row b{min-width:0;line-height:1.15;display:block}.status-row strong{color:#5a271e;font-size:clamp(.78rem,1.4vh,.9rem)}.status-row small{color:#4b382a;margin-top:2px;font-size:clamp(.64rem,1.1vh,.72rem)}.status-row b{color:#8a1c18;text-align:right;font-size:clamp(.9rem,1.55vh,1rem)}.status-preview-card{color:#3b2b1f;background:linear-gradient(#fff7d957,#82603d29),#5b432d1f;border:2px solid #20191585;border-radius:4px;gap:8px;padding:9px;display:grid}.status-preview-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.status-preview-head span{color:#5a271e;font-size:clamp(.78rem,1.4vh,.9rem);font-weight:900}.status-preview-head strong{color:#1f7b35;white-space:nowrap;font-size:clamp(.8rem,1.45vh,.94rem)}.status-preview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.status-preview-grid span{background:#fff7d938;border:2px solid #20191557;border-radius:3px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0;padding:5px 7px;display:grid}.status-preview-grid b,.status-preview-grid strong,.status-preview-grid small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.12;overflow:hidden}.status-preview-grid b{color:#4e3322;font-size:clamp(.68rem,1.18vh,.78rem)}.status-preview-grid strong{color:#3b2b1f;font-size:clamp(.7rem,1.2vh,.8rem)}.status-preview-grid small{color:#1f7b35;grid-column:1/-1;font-size:clamp(.64rem,1.08vh,.72rem);font-weight:900}.stepper{grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:4px;display:grid}.stepper button{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:2px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-width:0;height:30px;font-weight:900}.stepper button:last-child{background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.stepper button:disabled{cursor:not-allowed;opacity:.52}.stepper span{color:#3b2b1f;text-align:center;min-width:0;font-size:clamp(.72rem,1.25vh,.82rem);font-weight:900}.build-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.2fr);align-items:center;gap:7px;display:grid}.build-actions .primary-action,.build-actions .text-action{min-width:0;min-height:38px;padding:0 8px;font-size:clamp(.74rem,1.35vh,.88rem)}.text-action.danger{color:#fff4cf;background:linear-gradient(#9b4139,#6e221d 58%,#331612)}.active-skill-slots{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.active-skill-slot{color:#fff7d8;border:3px solid var(--ui-ink);background:linear-gradient(#6c5c4a,#342b25 58%,#201915);border-radius:4px;justify-items:center;gap:3px;min-width:0;min-height:78px;padding:6px;display:grid;box-shadow:inset 0 2px #ffefb12e}.active-skill-slot>img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);background:#2e2620;border-radius:4px;width:32px;display:block;box-shadow:inset 0 0 0 1px #ffecb72e}.active-skill-slot.locked{filter:grayscale(.35)brightness(.78)}.active-skill-slot span,.active-skill-slot strong,.active-skill-slot small{text-align:center;text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;line-height:1.12;overflow:hidden}.active-skill-slot span{color:#ffe0a0;font-size:clamp(.62rem,1.1vh,.72rem);font-weight:900}.active-skill-slot strong{font-size:clamp(.68rem,1.2vh,.78rem)}.active-skill-slot small{color:#cdbf9e;font-size:clamp(.56rem,.98vh,.64rem);font-weight:800}.active-skill-slot button{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:2px solid var(--ui-ink);cursor:pointer;border-radius:3px;min-height:22px;font-size:.62rem;font-weight:900}.skill-section{gap:9px}.skill-section h3{color:#fff4cf;font-family:var(--font-display);border:3px solid var(--ui-ink);text-shadow:0 1px #140e098c;background:linear-gradient(#8a6a40,#5d4330 58%,#3f2d1f);border-radius:5px;justify-self:start;margin:4px 0 1px;padding:4px 15px;font-size:clamp(1rem,1.8vh,1.16rem);line-height:1.12;box-shadow:0 0 0 2px #6e5137,0 2px #281c1238,inset 0 2px #ffecb747}.skill-card{border:3px solid var(--ui-ink);background:linear-gradient(#fff6d92e,#0000 24%),repeating-linear-gradient(0deg,#4e39270d 0 1px,#0000 1px 9px),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;grid-template-columns:54px minmax(0,1fr) 72px;align-items:center;gap:9px;min-width:0;padding:8px;display:grid;box-shadow:0 0 0 2px #6e5137,0 4px #281c1229,inset 0 2px #fff5d680,inset 0 -7px 13px #78563029}.skill-card.locked{filter:grayscale(.3)brightness(.84)}.skill-card>img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:54px;display:block;box-shadow:0 0 0 2px #6e5137,inset 0 0 0 2px #ffecb738}.skill-card-main{gap:3px;min-width:0;display:grid}.skill-card-title{justify-content:space-between;align-items:center;gap:6px;min-width:0;display:flex}.skill-card-title strong{color:#5a271e;min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.82rem,1.45vh,.96rem);line-height:1.1;overflow:hidden}.skill-card-title span{color:#fff1cf;border:2px solid var(--ui-ink);letter-spacing:.03em;background:linear-gradient(#8a6a40,#5d4330);border-radius:999px;flex:none;padding:2px 8px;font-size:.56rem;font-weight:900;box-shadow:inset 0 1px #ffecb74d}.skill-card p,.skill-card small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.2;overflow:hidden}.skill-card p{color:#3b2b1f;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:900}.skill-card small{color:#6b3425;font-size:clamp(.64rem,1.12vh,.74rem);font-weight:800}.skill-auto-line{color:#315f7d!important}.skill-cast-lines{gap:2px;min-width:0;display:grid}.skill-card .skill-cast-line{color:#5c2f22;text-overflow:clip;white-space:normal;line-height:1.24;display:block;overflow:visible}.skill-card.active-card{align-items:start}.skill-next-line{color:#1f7b35!important;white-space:normal!important}.mission-list{gap:9px;display:grid}.mission-card{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d92e,#0000 24%),repeating-linear-gradient(0deg,#4e39270d 0 1px,#0000 1px 9px),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;gap:8px;min-width:0;padding:10px;display:grid;box-shadow:0 0 0 2px #6e5137,0 4px #281c1224,inset 0 2px #fff5d680}.mission-card.is-ready{box-shadow:0 0 0 2px #d89b22,0 0 14px #ffd36e61,inset 0 2px #fff5d694}.mission-card.is-claimed{filter:grayscale(.15)brightness(.9)}.mission-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;display:grid}.mission-card-head strong,.mission-card-head small{text-overflow:ellipsis;min-width:0;line-height:1.16;display:block;overflow:hidden}.mission-card-head strong{color:#5a271e;font-family:var(--font-display);font-size:clamp(.92rem,1.65vh,1.08rem)}.mission-card-head small{color:#4b382a;margin-top:2px;font-size:clamp(.7rem,1.24vh,.8rem)}.mission-card-head>span{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:2px solid var(--ui-ink);white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:.62rem;font-weight:900}.mission-card.is-ready .mission-card-head>span{color:#2d2014;background:linear-gradient(180deg, #fff0a3, var(--ui-gold) 62%, #9b641e)}.mission-progress{gap:5px;display:grid}.mission-progress div{color:#4e3322;justify-content:space-between;gap:8px;font-size:clamp(.7rem,1.22vh,.82rem);font-weight:900;display:flex}.mission-progress i{border:2px solid var(--ui-ink);background:#2a2724;border-radius:3px;height:8px;display:block;overflow:hidden}.mission-progress i b{transform-origin:0;width:100%;height:100%;transition:transform .26s var(--ease);background:linear-gradient(#f1cd67,#b66f20);display:block}.mission-rewards{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.mission-rewards span{color:#3b2b1f;text-overflow:ellipsis;white-space:nowrap;background:#fff7d942;border:2px solid #2019155c;border-radius:4px;grid-template-columns:26px minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:4px 6px;font-size:clamp(.68rem,1.18vh,.78rem);font-weight:900;line-height:1.1;display:grid;overflow:hidden}.mission-rewards img{aspect-ratio:1;object-fit:contain;border:2px solid var(--ui-ink);background:#2e26202e;border-radius:3px;width:26px;display:block}.skill-card-actions{gap:5px;min-width:0;display:grid}.skill-card-actions .text-action{min-width:0;min-height:28px;padding:0 4px;font-size:.66rem;font-weight:900}.skill-card-actions .text-action:nth-child(3):not(:disabled){color:#3a2410;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.skill-book-chip{color:#5a271e;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:6px;min-width:0;font-size:clamp(.68rem,1.18vh,.76rem);font-weight:900;line-height:1.15;display:grid}.skill-book-chip img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);border-radius:4px;width:28px;display:block}.skill-panel{gap:10px}.skill-panel .build-summary{gap:7px}.skill-panel .build-summary div{color:#3b2b1f;background:linear-gradient(#fff8de6b,#845e3624),linear-gradient(#d9c69b,#aa8958);border-radius:5px;min-height:58px;padding:8px 9px;box-shadow:0 0 0 1px #6e5137,inset 0 1px #fff6db7a,inset 0 -5px 10px #583a212e}.skill-panel .build-summary span{color:#5a271e;font-size:clamp(.68rem,1.18vh,.8rem)}.skill-panel .build-summary strong{color:#fff5cf;text-shadow:0 1px #140e098c;background:linear-gradient(#6e5032,#3f2a1b);border:2px solid #201915b8;border-radius:4px;padding:3px 6px;font-size:clamp(.82rem,1.45vh,.98rem)}.skill-panel .active-skill-slots{border:3px solid var(--ui-ink);background:linear-gradient(#fff8de61,#593a1f1f),linear-gradient(#d3bd8f,#aa8958);border-radius:6px;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:8px;box-shadow:0 0 0 2px #6e5137,inset 0 1px #fff6db6b}.skill-panel .active-skill-slot{color:#3b2b1f;background:linear-gradient(#fff8de7a,#7f552b1a),linear-gradient(#e0cda1,#b49362);border-radius:5px;grid-template-rows:auto auto auto;grid-template-columns:50px minmax(0,1fr);place-items:center stretch;gap:2px 7px;min-height:76px;padding:6px;box-shadow:inset 0 1px #fff6db80,0 1px #37241433}.skill-panel .active-skill-slot.locked{filter:grayscale(.18)brightness(.94)}.active-skill-slot-icon{aspect-ratio:1;border:3px solid var(--ui-ink);background:radial-gradient(circle at 50% 32%,#ffeca047,#0000 48%),#2e2620;border-radius:5px;grid-row:1/span 3;place-items:center;width:50px;display:grid;box-shadow:0 0 0 1px #6e5137,inset 0 1px #ffecb733}.active-skill-slot-icon img{object-fit:cover;width:100%;height:100%;box-shadow:none;border:0;border-radius:2px;display:block}.active-skill-slot-icon i{border:3px solid #ffecb79e;border-radius:50%;width:18px;height:18px;display:block;box-shadow:inset 0 0 0 5px #ffecb729}.skill-panel .active-skill-slot>span:not(.active-skill-slot-icon),.skill-panel .active-skill-slot strong,.skill-panel .active-skill-slot small{text-align:left}.skill-panel .active-skill-slot>span:not(.active-skill-slot-icon){color:#7b5128;font-size:clamp(.64rem,1.1vh,.74rem)}.skill-panel .active-skill-slot strong{color:#4d2b1e;font-family:var(--font-display);font-size:clamp(.78rem,1.35vh,.9rem)}.skill-panel .active-skill-slot small{color:#315f7d;white-space:normal;font-size:clamp(.6rem,1.02vh,.68rem);line-height:1.18}.skill-panel .active-skill-slot button{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));justify-self:start;min-height:24px;padding:0 9px;box-shadow:0 1px #37241459}.skill-panel .skill-section{border:3px solid var(--ui-ink);background:linear-gradient(#fff8de52,#5d40251a),linear-gradient(#d5bf90,#b19363);border-radius:6px;gap:8px;padding:8px;box-shadow:0 0 0 2px #6e5137,inset 0 1px #fff6db61}.skill-panel .skill-section h3{color:#fff4cf;border-radius:5px;justify-self:stretch;margin:0 0 1px;padding:5px 11px;font-size:clamp(1.04rem,1.85vh,1.22rem)}.skill-panel .skill-card{border-width:2px;border-radius:5px;grid-template-columns:68px minmax(0,1fr);align-items:start;gap:8px;padding:8px;box-shadow:0 0 0 1px #6e5137,0 2px #281c1224,inset 0 1px #fff5d680,inset 0 -6px 12px #78563024}.skill-card-icon{aspect-ratio:1;border:3px solid var(--ui-ink);background:radial-gradient(circle at 50% 30%,#ffeca03d,#0000 54%),#2e2620;border-radius:6px;width:68px;padding:3px;display:block;box-shadow:0 0 0 2px #6e5137,inset 0 1px #ffecb733}.skill-card-icon img{object-fit:cover;border-radius:3px;width:100%;height:100%;display:block}.skill-panel .skill-card-title{align-items:start}.skill-panel .skill-card-title strong{color:#5a271e;white-space:normal;font-size:clamp(.98rem,1.72vh,1.14rem)}.skill-panel .skill-card-title span{margin-top:1px}.skill-panel .skill-card p,.skill-panel .skill-card small{text-overflow:clip;white-space:normal;line-height:1.23;overflow:visible}.skill-panel .skill-card p{font-size:clamp(.72rem,1.24vh,.82rem)}.skill-panel .skill-card small{font-size:clamp(.68rem,1.15vh,.78rem)}.skill-panel .skill-cast-lines{gap:4px}.skill-panel .skill-card .skill-cast-line,.skill-panel .skill-auto-line,.skill-panel .skill-next-line{background:#fff8de57;border:1px solid #432d1b47;border-radius:3px;padding:3px 6px;display:block}.skill-panel .skill-card-actions{border-top:2px solid #432d1b47;grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(86px,1fr));gap:6px;padding-top:6px}.skill-panel .skill-card-actions .text-action{min-height:36px;padding:0 7px;font-size:clamp(.76rem,1.28vh,.86rem)}.skill-panel .build-actions{border:3px solid var(--ui-ink);background:linear-gradient(#fff8de5c,#593a1f1f),linear-gradient(#d5bf90,#b19363);border-radius:6px;grid-template-columns:minmax(0,1fr) auto;padding:8px;box-shadow:0 0 0 2px #6e5137,inset 0 1px #fff6db61}.skill-panel .skill-book-chip{color:#5a271e}.skill-panel .build-actions .text-action{min-width:104px}.inventory-panel{gap:8px;min-height:0;display:grid}.inventory-tabs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.inventory-tabs button,.replace-choice button{color:#f3ead2;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-height:36px;font-weight:700;box-shadow:inset 0 2px #ffefb140,inset 0 -3px #17110d4d}.inventory-tabs button.selected,.replace-choice button.selected{color:#fff4cf;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.equipment-grid{background:linear-gradient(180deg, #fff7d957, #5b432d1a), repeating-linear-gradient(0deg, #4e39270a 0 1px, transparent 1px 8px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment));border:2px solid #2019158f;border-radius:6px;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:7px;display:grid;box-shadow:inset 0 2px #fff6db61,0 2px #49341f4d}.equipment-slot{aspect-ratio:1;min-width:0;display:block;position:relative}.compare-label{color:#5a271e;font-size:clamp(.68rem,1.25vh,.78rem);font-weight:800}.equipment-item-button,.bag-item-button{color:#5b4a38;border:3px solid var(--ui-ink);background:repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px),linear-gradient(#d7c8aa,#a99169);border-radius:4px;place-items:center;width:100%;min-width:0;height:100%;display:grid;box-shadow:inset 0 2px #fff6db4d}.empty-compare{color:#5b4a38;border:3px solid var(--ui-ink);background:repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px),linear-gradient(#d7c8aa,#a99169);border-radius:4px;place-items:center;min-height:66px;display:grid;box-shadow:inset 0 2px #fff6db4d}.equipment-item-button,.bag-item-button{cursor:pointer;padding:4px;position:relative}.equipment-item-button.empty{cursor:default}.equipment-item-button img,.bag-item-button img{aspect-ratio:1;object-fit:cover;opacity:1;border:2px solid var(--ui-ink);border-radius:3px;width:100%;display:block}.equipment-item-button.empty img{opacity:.42;width:64%}.equipment-slot-label{z-index:3;color:#fff4cf;text-overflow:ellipsis;white-space:nowrap;border:2px solid var(--ui-ink);background:linear-gradient(#8a6a40,#4b3321);border-radius:3px;max-width:calc(100% - 29px);padding:1px 4px;font-size:.55rem;font-weight:900;line-height:1.08;position:absolute;bottom:2px;left:2px;overflow:hidden;box-shadow:0 1px 2px #08050359}.equipment-item-button.empty .equipment-slot-label{color:#4b3321;background:linear-gradient(#fff4cbb8,#bc9e69b8);max-width:calc(100% - 4px)}.equipment-socket-pips{z-index:3;border:1.5px solid var(--ui-ink);background:#fff4cbc7;border-radius:999px;gap:1px;max-width:calc(100% - 6px);padding:2px;display:flex;position:absolute;top:2px;right:2px;box-shadow:0 1px 2px #08050347}.equipment-socket-pips i{background:#6e5a3e;border:1px solid #2b1f17;border-radius:999px;width:5px;height:5px}.equipment-socket-pips i.filled{background:#65c879;box-shadow:0 0 4px #5dda6fcc}.equipment-upgrade{z-index:4;color:#fff4cf;text-align:center;border:2px solid var(--ui-ink);background:linear-gradient(#ca3c2e,#6d1814);border-radius:3px;min-width:22px;padding:1px 4px;font-size:.64rem;font-weight:900;line-height:1.15;position:absolute;bottom:2px;right:2px}.item-state-mark{z-index:2;color:#fff4cf;text-overflow:ellipsis;white-space:nowrap;border:2px solid var(--ui-ink);background:linear-gradient(#5f6870,#2f3438);border-radius:3px;max-width:calc(100% - 4px);padding:1px 4px;font-size:.56rem;font-weight:900;line-height:1.12;position:absolute;top:2px;left:2px;overflow:hidden;box-shadow:0 1px 3px #08060459}.item-state-mark.market{background:linear-gradient(#d9a33d,#7b4d1d)}.item-state-tags{flex-wrap:wrap;gap:6px;display:flex}.item-state-tags span{color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#6f6558,#3c332b);border-radius:999px;padding:4px 9px;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:900}.bag-bulk-toolbar{background:linear-gradient(#fff7d961,#8a653d26),repeating-linear-gradient(0deg,#4e392709 0 1px,#0000 1px 8px);border:2px solid #2b1f1785;border-radius:5px;grid-template-columns:minmax(0,1fr);align-items:center;gap:6px;padding:6px;display:grid;box-shadow:inset 0 1px #fff8de80,0 1px #54391f3d}.bag-bulk-toolbar.is-selecting{grid-template-columns:minmax(0,1fr) .8fr 1fr}.bag-bulk-toolbar span{color:#5a271e;overflow-wrap:anywhere;min-width:0;font-size:clamp(.74rem,1.35vh,.86rem);font-weight:900}.bag-bulk-toolbar .primary-action,.bag-bulk-toolbar .text-action{min-width:0;min-height:36px;padding:0 8px;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:900}.bag-bulk-toolbar>.text-action{color:#4b301b;text-shadow:0 1px #fff6db8c;background:linear-gradient(#efd182,#d39a2e 62%,#9a611f)}.bag-bulk-toolbar .primary-action.danger{color:#fff7d8;background:linear-gradient(180deg, #ff5745, var(--ui-red) 60%, #781b17)}.inventory-blocker-note,.pending-drop-manage-bar{color:#fff4cf;border:3px solid var(--ui-ink);background:linear-gradient(#ffd36e33,#4c35221a),linear-gradient(#775437,#4a3326);border-radius:4px;box-shadow:inset 0 2px #ffefb138,inset 0 -3px #17110d47}.inventory-blocker-note{padding:8px 10px;font-size:clamp(.74rem,1.35vh,.86rem);font-weight:800;line-height:1.35}.inventory-expand-panel{color:#3b2b1f;border:3px solid var(--ui-ink);background:radial-gradient(circle at 100% 0,#ffd36e47,#0000 38%),linear-gradient(#fff7d985,#82603d2e),repeating-linear-gradient(0deg,#4e39270a 0 1px,#0000 1px 8px),linear-gradient(#e0cfaa,#bea476);border-radius:5px;grid-template-columns:minmax(0,1fr) minmax(126px,auto);align-items:center;gap:8px;min-width:0;padding:8px 9px;display:grid;box-shadow:0 0 0 1px #ffecb76b,inset 0 2px #fff6db80,inset 0 -4px #5f402429}.inventory-expand-panel strong,.inventory-expand-panel small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.2;display:block;overflow:hidden}.inventory-expand-panel strong{font-size:clamp(.8rem,1.42vh,.94rem)}.inventory-expand-panel small{color:#5d412b;margin-top:2px;font-size:clamp(.68rem,1.18vh,.78rem);font-weight:800}.inventory-expand-panel .primary-action{min-height:40px;padding:0 10px;font-size:clamp(.68rem,1.18vh,.8rem);font-weight:900}.pending-drop-manage-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.pending-drop-manage-bar span{min-width:0;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:900;line-height:1.25}.pending-drop-manage-bar .text-action{min-height:34px;padding:0 10px;font-size:clamp(.72rem,1.3vh,.84rem)}.bag-item-button.selected-dismantle{box-shadow:0 0 0 3px #ffe170,0 0 12px #ffd36e8c,inset 0 2px #fff6db4d}.bag-item-button.bulk-disabled{cursor:not-allowed;filter:grayscale(.3)brightness(.82)}.bulk-selected-mark{z-index:1;color:#2d2014;text-overflow:ellipsis;white-space:nowrap;border:2px solid var(--ui-ink);background:linear-gradient(#fff3a9,#d89b22);border-radius:3px;max-width:calc(100% - 4px);padding:1px 4px;font-size:.58rem;font-weight:900;line-height:1.15;position:absolute;top:2px;left:2px;overflow:hidden}.item-quantity{color:#fff4cf;text-align:right;text-overflow:ellipsis;white-space:nowrap;border:2px solid var(--ui-ink);background:linear-gradient(#9b6d35,#5a3821);border-radius:3px;min-width:26px;max-width:calc(100% - 4px);padding:1px 4px;font-size:.62rem;font-weight:900;line-height:1.15;position:absolute;bottom:2px;right:2px;overflow:hidden}.rarity-common{--rarity-color:#5a4634;--rarity-bright:#f0dcc0;--rarity-shadow:#30241938}.rarity-uncommon{--rarity-color:#287b35;--rarity-bright:#8ee66d;--rarity-shadow:#41ae4a4d}.rarity-rare{--rarity-color:#236fc1;--rarity-bright:#75d8ff;--rarity-shadow:#2f88d957}.rarity-epic{--rarity-color:#813bc7;--rarity-bright:#df8cff;--rarity-shadow:#8f4bd95c}.rarity-legendary{--rarity-color:#b45f11;--rarity-bright:#ffd75f;--rarity-shadow:#ffb5306b}.rarity-mythic{--rarity-color:#b72b24;--rarity-bright:#ff7560;--rarity-shadow:#d62d2766}.rarity-celestial{--rarity-color:#1688b8;--rarity-bright:#70f2ff;--rarity-shadow:#46d8f075}.rarity-eternal{--rarity-color:#9a6a00;--rarity-bright:#fff0a3;--rarity-shadow:#ffe47785}.item-card{color:#33231a;border:3px solid var(--ui-ink);background:linear-gradient(#d7c8aa,#a99169);border-radius:4px;grid-template-columns:54px minmax(0,1fr);align-items:start;gap:8px;min-width:0;padding:7px;display:grid;box-shadow:inset 0 2px #fff6db6b,inset 0 -4px #442f1d2e}.item-card.compact{grid-template-columns:42px minmax(0,1fr);min-height:58px}.item-card img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);background:#2e2620;border-radius:3px;width:100%;display:block}.item-card strong,.item-card small{overflow-wrap:anywhere;min-width:0;display:block}.item-card strong{font-family:var(--font-display);color:var(--rarity-color,#5a271e);text-shadow:0 1px #fff4cb94;font-size:clamp(.78rem,1.4vh,.92rem);line-height:1.15}.item-card small{color:#3f2d20;margin-top:2px;font-size:clamp(.66rem,1.15vh,.76rem);line-height:1.25}.item-card ul{gap:2px;margin:6px 0 0;padding:0;list-style:none;display:grid}.item-card li{color:#3b2b1f;justify-content:space-between;gap:6px;font-size:clamp(.66rem,1.1vh,.74rem);line-height:1.2;display:flex}.item-card li b{color:#8a1c18}.rarity-uncommon{box-shadow:0 0 0 2px #4cae57,inset 0 2px #fff6db6b}.rarity-rare{box-shadow:0 0 0 2px #2f88d9,inset 0 2px #fff6db6b}.rarity-epic{box-shadow:0 0 0 2px #8f4bd9,inset 0 2px #fff6db6b}.rarity-legendary,.rarity-mythic,.rarity-celestial,.rarity-eternal{box-shadow:0 0 0 2px var(--rarity-bright), 0 0 14px var(--rarity-shadow), inset 0 2px 0 #fff6db6b}.item-detail-overlay{z-index:var(--z-modal);background:#0c0a088f;place-items:center;padding:10px;display:grid;position:absolute;inset:0}.item-detail-card{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);border-radius:6px;gap:8px;width:min(100%,390px);max-height:96%;padding:14px;display:grid;overflow:auto;box-shadow:0 0 0 2px #6e5137,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb773}.item-detail-head{grid-template-columns:76px minmax(0,1fr);align-items:center;gap:12px;display:grid;position:relative}.item-detail-head-meta{min-width:0;padding-right:44px}.item-lock-toggle{color:#e9dcc0;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;border-radius:9px;place-items:center;width:38px;height:38px;display:grid;position:absolute;top:0;right:0;box-shadow:0 3px #17110d,inset 0 2px #ffefb14d}.item-lock-toggle.is-locked{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.item-lock-toggle:disabled{cursor:default}.item-lock-toggle svg{display:block}.item-detail-head img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:4px;width:76px}.item-detail-head h2{color:var(--rarity-color,#5a271e);overflow-wrap:anywhere;text-shadow:0 1px 0 #fff4cbad, 0 0 12px var(--rarity-shadow,transparent);margin:2px 0 0;font-size:clamp(1.1rem,2.3vh,1.35rem);line-height:1.15}.item-detail-head strong{color:#8a1c18;margin-top:4px;font-size:clamp(.88rem,1.6vh,1rem);display:block}.item-build-tags{flex-wrap:wrap;gap:5px;display:flex}.item-build-tags span{color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#8a6a40,#5d4330);border-radius:999px;padding:3px 9px;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:900;box-shadow:inset 0 1px #ffecb73d}.item-manage-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.item-manage-strip button{color:#3b2b1f;text-align:center;cursor:pointer;background:linear-gradient(#fff8dd80,#7e5b3429),linear-gradient(#d8c196,#b39463);border:2px solid #2b1f179e;border-radius:4px;gap:2px;min-width:0;min-height:48px;padding:6px 5px;display:grid;box-shadow:inset 0 1px #fff8de7a,0 1px #37241433}.item-manage-strip button:disabled{cursor:default;opacity:.5}.item-manage-strip strong,.item-manage-strip small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.1;overflow:hidden}.item-manage-strip strong{color:#5a271e;font-size:clamp(.74rem,1.25vh,.84rem);font-weight:900}.item-manage-strip small{color:#6b4b30;font-size:clamp(.62rem,1.05vh,.72rem);font-weight:800}.equipment-detail-card>.item-gem-panel,.equipment-detail-card>.item-upgrade-panel,.equipment-detail-card>.is-reroll{display:none}.item-compare-panel{background:linear-gradient(#fff7d947,#5b432d24);border:2px solid #2019157a;border-radius:4px;gap:7px;padding:9px;display:grid}.item-compare-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.item-compare-head span{color:#5a271e;font-size:clamp(.72rem,1.28vh,.84rem);font-weight:900}.item-compare-head strong{white-space:nowrap;font-size:clamp(.78rem,1.4vh,.9rem)}.item-compare-head .positive,.item-compare-stats .positive b{color:#1f7b35}.item-compare-head .negative,.item-compare-stats .negative b{color:#9a2019}.item-compare-current{grid-template-columns:38px minmax(0,1fr);align-items:center;gap:7px;min-width:0;display:grid}.item-compare-current img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);background:#2e2620;border-radius:4px;width:38px;display:block}.item-compare-current strong,.item-compare-current small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.12;display:block;overflow:hidden}.item-compare-current strong{color:#4e3322;font-size:clamp(.74rem,1.3vh,.86rem)}.item-compare-current small{color:#6b4b30;margin-top:2px;font-size:clamp(.64rem,1.08vh,.72rem);font-weight:800}.item-compare-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0;padding:0;list-style:none;display:grid}.item-compare-stats li{color:#3b2b1f;background:#fff7d933;border:2px solid #20191557;border-radius:3px;justify-content:space-between;gap:6px;min-width:0;padding:5px 7px;font-size:clamp(.68rem,1.18vh,.78rem);font-weight:900;display:flex}.item-compare-stats span,.item-compare-stats b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.item-gem-panel{background:radial-gradient(circle at 10% 0,#45ca9a2e,#0000 36%),linear-gradient(#fff2bd38,#5b432d24);border:2px solid #20191594;border-radius:4px;gap:7px;padding:9px;display:grid;box-shadow:inset 0 2px #fff6db3d}.item-gem-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.item-gem-head span{color:#4c2f1a;font-family:var(--font-display);font-size:.92rem;font-weight:900}.item-gem-head strong{color:#7b4d1d;white-space:nowrap;font-size:.78rem}.item-gem-grid{gap:6px;display:grid}.item-gem-socket{text-align:left;border:2px solid #2019158f;border-radius:4px;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;min-height:46px;padding:6px;display:grid}.item-gem-socket.empty{color:#4a3624;background:repeating-linear-gradient(135deg,#3a26150e 0 4px,#0000 4px 8px),#5b432d1a;grid-template-columns:36px minmax(0,1fr)}.item-gem-socket.filled{color:#fff1cf;border-color:var(--rarity-color,var(--ui-ink));cursor:pointer;box-shadow:0 0 10px var(--rarity-shadow,#0806042e);background:linear-gradient(#ffefb11a,#0000 42%),linear-gradient(#5b442d,#211711)}.item-gem-socket.filled:disabled{cursor:not-allowed;filter:grayscale(.25)brightness(.86)}.item-gem-socket i{background:radial-gradient(circle,#ffe79e42,#4a34208c);border:2px dashed #20191594;border-radius:999px;place-items:center;width:32px;height:32px;display:grid}.item-gem-socket i:after{content:"";background:#46301b75;border-radius:999px;width:8px;height:8px}.item-gem-socket img{object-fit:contain;border:2px solid var(--ui-ink);width:34px;height:34px;filter:drop-shadow(0 0 6px var(--rarity-shadow,#ffffff29));background:#261b13;border-radius:4px}.item-gem-socket span{gap:1px;min-width:0;display:grid}.item-gem-socket strong,.item-gem-socket small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.12;overflow:hidden}.item-gem-socket strong{color:inherit;font-size:.78rem;font-weight:900}.item-gem-socket small{color:#d9be86;font-size:.68rem;font-weight:800}.item-gem-socket.empty small{color:#6f5437}.item-gem-socket b{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 70%, #9b621f);border:2px solid var(--ui-ink);border-radius:4px;padding:3px 7px;font-size:.66rem;font-weight:900}.item-detail-stats{gap:5px;margin:0;padding:0;list-style:none;display:grid}.item-detail-stats li{color:#3b2b1f;background:#5b432d1f;border:2px solid #2019156b;border-radius:3px;justify-content:space-between;gap:12px;padding:7px 9px;font-size:clamp(.78rem,1.4vh,.9rem);display:flex}.item-detail-stats b{color:#8a1c18}.item-detail-copy{color:#3b2b1f;margin:0;font-size:clamp(.82rem,1.45vh,.94rem);line-height:1.45}.item-upgrade-panel{background:linear-gradient(#fff2bd38,#5b432d1f);border:2px solid #2019158f;border-radius:4px;gap:8px;padding:10px;display:grid;box-shadow:inset 0 2px #fff6db47}.inline-upgrade-result{color:#fff5cf;border:2px solid var(--ui-ink);background:linear-gradient(#59483a,#2a221d 64%,#18120f);border-radius:4px;justify-content:space-between;align-items:center;gap:8px;min-width:0;padding:7px 9px;display:flex;box-shadow:0 2px #17110d,inset 0 2px #ffefb12e}.inline-upgrade-result.is-success{box-shadow:0 2px #17110d,0 0 12px #7eea5857,inset 0 2px #f2ffc33d}.inline-upgrade-result.is-failed{box-shadow:0 2px #17110d,0 0 12px #ef3a2f4d,inset 0 2px #ffc4aa33}.inline-upgrade-result.is-empty{color:#d8ccb6;opacity:.86;background:linear-gradient(#51483d,#302820 64%,#1d1713)}.inline-upgrade-result strong,.inline-upgrade-result span{text-overflow:ellipsis;white-space:nowrap;text-shadow:0 2px #17110d;min-width:0;font-size:clamp(.78rem,1.4vh,.9rem);line-height:1.15;overflow:hidden}.inline-upgrade-result.is-success strong{color:#dfffaa}.inline-upgrade-result.is-failed strong{color:#ffb5a8}.inline-upgrade-result.is-empty strong{color:#d8ccb6}.inline-upgrade-result span{color:#ffe19a;flex:none;font-weight:900}.item-upgrade-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.item-upgrade-head span,.item-upgrade-head strong{min-width:0;font-size:clamp(.8rem,1.45vh,.92rem);line-height:1.25}.item-upgrade-head span{color:#4e3322;font-weight:900}.item-upgrade-head strong{color:#8a1c18;text-align:right}.upgrade-cost-list{grid-template-columns:1fr 1fr;gap:6px;display:grid}.upgrade-cost-list span{color:#3b2b1f;background:#fff7d938;border:2px solid #20191561;border-radius:4px;grid-template-columns:28px minmax(0,1fr);align-items:center;gap:5px;min-width:0;padding:4px 6px 4px 4px;font-size:clamp(.72rem,1.28vh,.84rem);font-weight:800;line-height:1.15;display:grid}.upgrade-cost-list span.missing{color:#8a1c18;background:#c62d221f}.upgrade-cost-list img{aspect-ratio:1;object-fit:contain;border:2px solid var(--ui-ink);background:#2e26202e;border-radius:3px;width:28px;display:block}.upgrade-protection{gap:6px;display:grid}.upgrade-protection>p{color:#4e3322;margin:0;font-size:clamp(.72rem,1.28vh,.84rem);font-weight:900;line-height:1.2}.upgrade-protection-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}.protection-option{color:#3b2b1f;cursor:pointer;background:linear-gradient(#fff7d957,#96744e3d),#c7b794;border:2px solid #20191594;border-radius:4px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:5px;min-width:0;min-height:48px;padding:4px;display:grid;box-shadow:inset 0 2px #fff6db52}.protection-option.no-protection{text-align:center;grid-template-columns:1fr;justify-items:center}.protection-option img{aspect-ratio:1;object-fit:contain;border:2px solid var(--ui-ink);background:#2e26202e;border-radius:3px;width:30px;display:block}.protection-option span{min-width:0;display:grid}.protection-option strong,.protection-option small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.05;overflow:hidden}.protection-option strong{color:#3b2b1f;font-size:clamp(.68rem,1.18vh,.78rem);font-weight:900}.protection-option small{color:#65462c;margin-top:3px;font-size:clamp(.64rem,1.08vh,.72rem);font-weight:800}.protection-option.selected{border-color:var(--ui-ink);box-shadow:0 0 0 2px var(--ui-gold-light), 0 0 0 4px var(--ui-ink), inset 0 2px 0 #fff6db6b}.protection-option.missing,.protection-option:disabled{cursor:default;opacity:.54;filter:grayscale(.35)}.upgrade-note{color:#5b3d2a;margin:0;font-size:clamp(.7rem,1.24vh,.8rem);line-height:1.35}.upgrade-action{min-height:40px;font-size:clamp(.8rem,1.45vh,.92rem)}.item-detail-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.equipment-detail-card{scrollbar-width:none;color:#f1dfb8;background:radial-gradient(circle at 18% 0%, var(--rarity-shadow,#ffd26429), transparent 34%), linear-gradient(180deg, #fff0b917, transparent 16%), repeating-linear-gradient(0deg, #ffebaf09 0 1px, transparent 1px 8px), linear-gradient(180deg, #493621, #211812 48%, #130f0c);border-color:#1b120c;border-radius:8px;gap:7px;width:min(100%,405px);max-height:calc(100% - 14px);padding:10px;position:relative;overflow:auto;box-shadow:0 0 0 2px #7d5a2f,0 20px 42px #0805039e,inset 0 0 0 2px #ffe18f33,inset 0 2px #ffefb124}.equipment-detail-card .item-detail-head{background:radial-gradient(circle at 18% 40%, var(--rarity-shadow,#ffe0962e), transparent 36%), linear-gradient(135deg, #684925, #2b1d13 60%, #17100b);border:2px solid #120b07;border-radius:7px;grid-template-columns:96px minmax(0,1fr);align-items:center;gap:10px;min-height:108px;padding:8px 48px 8px 8px;overflow:hidden;box-shadow:inset 0 1px #ffefb12e,0 4px 10px #08050347}.equipment-detail-card .item-detail-icon-frame{width:92px;height:92px;box-shadow:0 0 15px var(--rarity-shadow,#ffdc782e), inset 0 2px 0 #ffefb147;background:radial-gradient(circle,#ffffff29,#0000 48%),linear-gradient(#d0a96a,#5e3b1e 58%,#150d08);border:3px solid #160e09;border-radius:7px;place-items:center;display:grid;position:relative}.equipment-detail-card .item-detail-icon-frame>img{object-fit:cover;background:#2e2620;border:2px solid #17100b;border-radius:5px;width:82px;height:82px}.equipment-detail-card .item-detail-upgrade-badge{color:#fff6d2;text-align:center;background:linear-gradient(#ef5540,#821f17 68%,#4b100d);border:2px solid #160e09;border-radius:5px;min-width:38px;padding:3px 7px;font-size:.82rem;font-weight:900;line-height:1;position:absolute;bottom:-6px;right:-6px;box-shadow:0 2px 4px #08050394}.equipment-detail-card .item-detail-head-meta{gap:3px;min-width:0;padding-right:0;display:grid}.equipment-detail-card .panel-note{color:#d7b873;text-shadow:0 1px #150c07;margin:0;font-size:.74rem;font-weight:900;line-height:1.15}.equipment-detail-card .item-detail-head h2{color:var(--rarity-bright,#fff0c5);font-family:var(--font-display);overflow-wrap:anywhere;-webkit-line-clamp:2;text-shadow:0 2px 0 #150c07, 0 0 12px var(--rarity-shadow,transparent);-webkit-box-orient:vertical;margin:0;font-size:1.17rem;line-height:1.1;display:-webkit-box;overflow:hidden}.item-detail-power-row{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.equipment-detail-card .item-detail-power-row strong,.equipment-detail-card .item-detail-power-row span{white-space:nowrap;border:2px solid #160e09;border-radius:4px;align-items:center;min-height:24px;margin:0;padding:3px 8px;font-size:.78rem;font-weight:900;line-height:1;display:inline-flex}.equipment-detail-card .item-lock-toggle{border-radius:8px;width:38px;height:38px;top:8px;right:8px}.item-detail-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px;display:grid}.item-detail-summary-strip span{color:#f2dfb7;background:linear-gradient(#ffefb11f,#0000 44%),linear-gradient(#5c432b,#231913);border:2px solid #160e09;border-radius:5px;place-items:center;min-width:0;min-height:44px;padding:4px;display:grid;box-shadow:inset 0 1px #ffefb129}.item-detail-summary-strip small,.item-detail-summary-strip b{text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.05;overflow:hidden}.item-detail-summary-strip small{color:#d1b170;font-size:.62rem;font-weight:900}.item-detail-summary-strip b{color:#fff4cf;text-shadow:0 1px #150c07;font-size:.95rem;font-weight:900}.equipment-detail-card .item-build-tags{gap:4px}.equipment-detail-card .item-build-tags span,.equipment-detail-card .item-state-tags span{color:#fff1cc;background:linear-gradient(#8b6538,#3f2918);border-radius:5px}.equipment-detail-card .item-build-fit{color:#ead5a8;background:linear-gradient(#ffefb117,#0805032e);border:2px solid #ffdb8933;border-radius:5px;margin:0;padding:6px 8px;font-size:.74rem;font-weight:900}.equipment-detail-card .item-compare-panel,.equipment-detail-card .item-gem-panel,.equipment-detail-card .item-upgrade-panel{border:2px solid #170f09;border-radius:6px;box-shadow:inset 0 1px #ffefb124,0 3px 9px #08050338}.equipment-detail-card .item-compare-panel{background:linear-gradient(#ffefb11a,#0000 44%),linear-gradient(#5b432c,#241913)}.equipment-detail-card .item-compare-head span,.equipment-detail-card .item-compare-current strong{color:#fff1cc}.equipment-detail-card .item-compare-current small,.equipment-detail-card .item-compare-head strong{color:#d6bb84}.equipment-detail-card .item-compare-summary span,.equipment-detail-card .item-compare-stats li{color:#f0ddb4;background:#100a0757;border-color:#ffdb8929}.equipment-detail-card .item-gem-panel{background:radial-gradient(circle at 8% 0,#5af5b72b,#0000 38%),linear-gradient(#51402b,#201711)}.equipment-detail-card .item-gem-head span{color:#f5e3b7}.equipment-detail-card .item-gem-socket.empty{color:#d5bf8b;background:repeating-linear-gradient(135deg,#ffefb112 0 4px,#0000 4px 8px),#0e090657;border-color:#ffdb8938}.equipment-detail-card .item-gem-socket.empty small{color:#bfa56f}.equipment-detail-card .item-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.equipment-detail-card .item-detail-stats:before{content:"ค่าสเตตัส";color:#f5e3b7;font-family:var(--font-display);text-shadow:0 1px #150c07;grid-column:1/-1;font-size:.92rem;font-weight:900;line-height:1}.equipment-detail-card .item-detail-stats li{color:#f1dfb8;background:linear-gradient(#ffefb114,#0000 44%),linear-gradient(#4b3826,#201711);border:2px solid #170f09;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;gap:6px;min-height:40px;padding:6px 8px;display:grid}.equipment-detail-card .item-detail-stats span,.equipment-detail-card .item-detail-stats b{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.08;overflow:hidden}.equipment-detail-card .item-detail-stats span{color:#d8bd7e;font-size:.74rem;font-weight:900}.equipment-detail-card .item-detail-stats b{color:#ffb5a8;font-size:.82rem}.equipment-detail-card .item-upgrade-panel{background:radial-gradient(circle at 88% 0,#ef3a2f2e,#0000 34%),linear-gradient(#57402b,#211711);padding:8px}.equipment-detail-card .item-upgrade-panel:before{content:"แท่นอัปเกรด";color:#f5e3b7;font-family:var(--font-display);text-shadow:0 1px #150c07;font-size:.92rem;font-weight:900;line-height:1}.equipment-detail-card .item-upgrade-head span{color:#f3dfb2}.equipment-detail-card .item-upgrade-head strong{color:#ffb15c}.equipment-detail-card .upgrade-cost-list span,.equipment-detail-card .protection-option,.equipment-detail-card .upgrade-protection>p{color:#f1dfb8}.equipment-detail-card .upgrade-cost-list span,.equipment-detail-card .protection-option{background:#110b0761;border-color:#ffdb8933}.equipment-detail-card .upgrade-note{color:#c8ae78}.equipment-detail-card .upgrade-action{border-radius:5px;min-height:42px}.equipment-detail-card .item-detail-actions{grid-template-columns:1.2fr .8fr}.equipment-detail-card>.text-action.is-reroll{color:#fff1cc;background:linear-gradient(#a66b35,#5a3219);border-radius:5px;min-height:42px}.equipment-detail-card>.text-action:last-child{color:#f3e7cf;background:linear-gradient(#5f5a50,#28221b);border-radius:5px;min-height:40px}.equipment-detail-card{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border-color:var(--ui-ink);box-shadow:0 0 0 2px #6e5137,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb773}.equipment-detail-card .item-detail-head{background:linear-gradient(180deg, #fff6d938, transparent 28%), repeating-linear-gradient(0deg, #4e39270b 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 64%, #b69d72);border-color:#20191594;box-shadow:inset 0 2px #fff6db57}.equipment-detail-card .item-detail-icon-frame{border-color:var(--ui-ink);box-shadow:0 0 12px var(--rarity-shadow,#ffdc782e), inset 0 2px 0 #fff6db57;background:radial-gradient(circle,#ffffff2e,#0000 50%),linear-gradient(#e0c78f,#8d6941)}.equipment-detail-card .item-detail-icon-frame>img{border-color:var(--ui-ink)}.equipment-detail-card .panel-note{color:#6b4b30;text-shadow:none}.equipment-detail-card .item-detail-head h2{color:var(--rarity-color,#5a271e);text-shadow:0 1px 0 #fff4cbad, 0 0 12px var(--rarity-shadow,transparent)}.equipment-detail-card .item-detail-power-row strong,.equipment-detail-card .item-detail-power-row span{border-color:#20191580}.equipment-detail-card .item-detail-power-row strong{color:#8a1c18;background:#fff7d947}.equipment-detail-card .item-detail-power-row span{color:#1f7b35;background:#7eb8682e}.item-detail-summary-strip span{color:#3b2b1f;background:linear-gradient(180deg, #fff7d95c, #5b432d21), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment));border-color:#20191580;box-shadow:inset 0 1px #fff6db4d}.item-detail-summary-strip small{color:#6b4b30}.item-detail-summary-strip b{color:#5a271e;text-shadow:0 1px #fff4cbad}.equipment-detail-card .item-build-fit,.equipment-detail-card .item-compare-panel,.equipment-detail-card .item-gem-panel,.equipment-detail-card .item-upgrade-panel{color:#3b2b1f;background:linear-gradient(#fff7d947,#5b432d1f);border-color:#2019158f;box-shadow:inset 0 2px #fff6db3d}.equipment-detail-card .item-build-fit,.equipment-detail-card .item-compare-head span,.equipment-detail-card .item-compare-current strong,.equipment-detail-card .item-gem-head span,.equipment-detail-card .item-upgrade-panel:before,.equipment-detail-card .item-detail-stats:before,.equipment-detail-card .item-upgrade-head span,.equipment-detail-card .upgrade-protection>p{color:#4e3322;text-shadow:none}.equipment-detail-card .item-compare-current small,.equipment-detail-card .item-gem-socket.empty small,.equipment-detail-card .upgrade-note{color:#6b4b30}.equipment-detail-card .item-compare-head strong,.equipment-detail-card .item-upgrade-head strong{color:#8a1c18}.equipment-detail-card .item-gem-head strong{color:#1f7b35}.equipment-detail-card .item-compare-summary span,.equipment-detail-card .item-compare-stats li,.equipment-detail-card .item-gem-socket.empty,.equipment-detail-card .upgrade-cost-list span,.equipment-detail-card .protection-option{color:#3b2b1f;background:#fff7d938;border-color:#20191561}.equipment-detail-card .item-gem-socket.filled{color:#fff1cf;background:linear-gradient(#ffefb11f,#0000 42%),linear-gradient(#5b442d,#211711)}.equipment-detail-card .item-detail-stats li{color:#3b2b1f;background:#5b432d1f;border-color:#2019156b}.equipment-detail-card .item-detail-stats span{color:#3b2b1f}.equipment-detail-card .item-detail-stats b{color:#8a1c18}.equipment-detail-card .upgrade-cost-list span.missing{color:#8a1c18;background:#c62d221f}.equipment-detail-card>.text-action.is-reroll{color:#fff4cf;background:linear-gradient(#8a6a40,#5d4330)}.equipment-detail-card>.text-action:last-child{color:#f6edd4;background:linear-gradient(180deg, #8a8780, var(--ui-stone) 54%, var(--ui-stone-dark))}.character-profile-overlay{z-index:var(--z-modal);background:#0c0a088f;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.shop-panel{gap:10px;display:grid}.shop-currency{justify-content:flex-end;gap:8px;display:flex}.shop-currency span{color:#fff7d8;border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;align-items:center;gap:5px;padding:5px 11px;font-size:clamp(.78rem,1.4vh,.9rem);font-weight:900;display:inline-flex;box-shadow:inset 0 2px #ffe9b233}.shop-currency img{width:20px;height:20px}.shop-list{gap:9px;display:grid}.shop-item{border:3px solid var(--ui-ink);background:linear-gradient(#fff6d929,#0000 22%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d680,inset 0 -6px 12px #78563029}.shop-item-icon{object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:54px;height:54px;box-shadow:0 0 0 2px #6e5137}.shop-item-main{gap:3px;min-width:0;display:grid}.shop-item-main strong{box-shadow:none;color:var(--rarity-color,#3b2b1f);font-family:var(--font-display);font-size:clamp(.86rem,1.5vh,1rem);line-height:1.1}.shop-item-main small{color:#5a3a1e;font-size:clamp(.66rem,1.15vh,.74rem);font-weight:700;line-height:1.2}.shop-item-cost{gap:10px;margin-top:2px;display:inline-flex}.shop-item-cost b{color:#3b2b1f;align-items:center;gap:4px;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:900;display:inline-flex}.shop-item-cost b img{width:18px;height:18px}.shop-item-cost b.is-short{color:#b0241f}.shop-buy{justify-self:end;min-width:64px;min-height:44px;padding:0 14px;font-weight:900}.shop-buy:disabled{cursor:not-allowed;filter:grayscale(.4)brightness(.82)}.shop-note{color:#5a3a1e;text-align:center;margin:2px 0 0;font-size:clamp(.66rem,1.15vh,.74rem);font-weight:700}.companion-panel{gap:10px;display:grid}.companion-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.companion-summary span{color:#3b2b1f;text-align:center;background:#fff4d26b;border:2px solid #2019156b;border-radius:5px;gap:2px;min-width:0;padding:7px;display:grid}.companion-summary b{color:#5a271e;font-family:var(--font-display);font-size:clamp(.86rem,1.5vh,1rem)}.companion-summary small{color:#6b4b30;font-size:clamp(.58rem,1vh,.66rem);font-weight:900}.companion-list{gap:10px;display:grid}.companion-card{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d92e,#0000 22%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;gap:8px;min-width:0;padding:9px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d680,inset 0 -6px 12px #78563029}.companion-card.active{box-shadow:0 0 0 2px #6e5137,0 0 0 4px #d6a83b,inset 0 2px #fff5d68c}.companion-head{grid-template-columns:62px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;display:grid}.companion-head img{aspect-ratio:1;object-fit:contain;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:62px;box-shadow:0 0 0 2px #6e5137}.companion-head>div{gap:2px;min-width:0;display:grid}.companion-head span,.companion-active-expedition span,.companion-expedition-row span{color:#7a4b26;font-size:clamp(.6rem,1.06vh,.7rem);font-weight:900}.companion-head strong,.companion-active-expedition strong,.companion-expedition-row strong{color:#5a271e;min-width:0;font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.86rem,1.5vh,1rem);line-height:1.08}.companion-head small,.companion-active-expedition small,.companion-expedition-row small{color:#5a3a1e;font-size:clamp(.62rem,1.08vh,.72rem);font-weight:800;line-height:1.18}.companion-select{min-width:64px;padding:0 10px}.companion-passive{background:#5b432d24;border:2px solid #20191557;border-radius:5px;justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;display:flex}.companion-passive b{color:#7a2d23;font-family:var(--font-display);font-size:clamp(.68rem,1.2vh,.78rem)}.companion-passive span{color:#4e3322;text-align:right;font-size:clamp(.62rem,1.08vh,.72rem);font-weight:850}.companion-exp{gap:4px;display:grid}.companion-exp span{color:#4e3322;font-size:clamp(.62rem,1.08vh,.72rem);font-weight:900}.companion-exp i,.companion-active-expedition>i{border:2px solid var(--ui-ink);background:#2a2724;border-radius:3px;width:100%;height:8px;display:block;overflow:hidden}.companion-exp i b,.companion-active-expedition>i b{transform-origin:0;width:100%;height:100%;transition:transform .26s var(--ease);background:linear-gradient(#91e7bb,#3f9c62);display:block}.companion-active-expedition{border-top:2px solid #20191547;grid-template-columns:minmax(0,1fr) 96px;align-items:center;gap:7px;padding-top:8px;display:grid}.companion-active-expedition>div{gap:2px;min-width:0;display:grid}.companion-active-expedition>i{grid-column:1/-1}.companion-active-expedition.completed>i b{background:linear-gradient(#ffd86a,#bc741e)}.companion-active-expedition .primary-action{grid-area:1/2;min-width:90px;min-height:38px;padding:0 10px}.companion-expedition-list{border-top:2px solid #20191547;gap:6px;padding-top:8px;display:grid}.companion-expedition-row{background:#fff7d938;border-left:5px solid #8aa960;border-radius:4px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px;display:grid}.companion-expedition-row.tone-gold{border-left-color:#c49131}.companion-expedition-row.tone-relic{border-left-color:#7b70bc}.companion-expedition-row>div{gap:2px;min-width:0;display:grid}.companion-expedition-row .text-action{min-width:54px;min-height:34px;padding:0 10px}.preset-list,.market-section,.leaderboard-list{gap:9px;display:grid}.section-title-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.codex-card,.preset-card,.market-card,.leaderboard-row,.audio-control-card,.filter-settings-section{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d92e,#0000 22%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;min-width:0;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d680,inset 0 -6px 12px #78563029}.codex-card{gap:8px;padding:10px;display:grid}.codex-card.is-ready{box-shadow:0 0 0 2px #d89b22,0 0 14px #ffd36e61,inset 0 2px #fff5d694}.codex-card.is-claimed{filter:grayscale(.15)brightness(.9)}.codex-card.locked{filter:grayscale(.55)brightness(.75)}.codex-card-head{grid-template-columns:52px minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.codex-card-head img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:52px;height:52px}.codex-card-meta{gap:2px;min-width:0;display:grid}.codex-card-head .codex-status{color:#fff4cf;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:2px solid var(--ui-ink);white-space:nowrap;border-radius:999px;align-self:center;padding:3px 9px;font-size:.6rem;font-weight:900}.codex-card.is-ready .codex-status{color:#2d2014;background:linear-gradient(180deg, #fff0a3, var(--ui-gold) 62%, #9b641e)}.codex-card .codex-locked-hint{color:#6b4b30;white-space:normal;font-size:clamp(.66rem,1.12vh,.76rem);font-weight:800}.market-card>img,.leaderboard-row img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:100%}.codex-card-meta strong,.codex-card-meta span,.preset-head strong,.preset-head span,.preset-head small,.market-card strong,.market-card small,.leaderboard-row strong,.leaderboard-row small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.12;display:block;overflow:hidden}.codex-card-meta strong,.preset-head strong,.market-card strong,.leaderboard-row strong{color:#5a271e;font-family:var(--font-display);font-size:clamp(.88rem,1.55vh,1.02rem);font-weight:900}.codex-card-meta span,.preset-head span,.market-card small,.leaderboard-row small{color:#5b3d2a;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:800}.preset-head small{color:#6b4b30;margin-top:3px;font-size:clamp(.64rem,1.08vh,.72rem);font-weight:800}.preset-card{gap:9px;padding:10px;display:grid}.preset-head{grid-template-columns:minmax(0,1fr) minmax(96px,auto);align-items:center;gap:9px;display:grid}.preset-icons{grid-template-columns:repeat(3,30px);justify-content:end;gap:4px;display:grid}.preset-icons span{aspect-ratio:1;background:#5b432d29;border:2px solid #2019158f;border-radius:4px;width:30px}.preset-icons img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.preset-actions{grid-template-columns:1fr 1fr;gap:7px;display:grid}.market-section h3{color:#5a271e;font-family:var(--font-display);margin:4px 0 0;font-size:clamp(.92rem,1.7vh,1.08rem);line-height:1.1}.market-card{grid-template-columns:54px minmax(0,1fr) minmax(82px,auto);align-items:center;gap:9px;padding:9px;display:grid}.market-card>img{width:54px}.market-card span{color:#3b2b1f;align-items:center;gap:4px;margin-top:4px;font-size:clamp(.7rem,1.22vh,.8rem);font-weight:900;display:inline-flex}.market-card span img{width:18px;height:18px}.market-card input{color:#2d2119;border:3px solid var(--ui-ink);background:linear-gradient(#efe0bc,#d0bd95);border-radius:4px;width:100%;height:34px;margin-top:5px;padding:0 8px;font-weight:900}.market-card .primary-action,.market-card .text-action{min-width:0;min-height:40px;padding:0 10px;font-size:clamp(.72rem,1.26vh,.82rem)}.market-tabs button{min-height:44px;font-size:clamp(.78rem,1.4vh,.9rem);font-weight:900}.form-message-dismissable{cursor:pointer}.market-sell-cta{width:100%;min-height:46px;font-size:clamp(.86rem,1.6vh,.98rem)}.market-sell-card{width:min(440px,100%)}.market-sell-field{gap:6px;display:grid}.market-sell-label{color:#5a271e;font-family:var(--font-display);font-size:clamp(.84rem,1.55vh,.96rem);font-weight:900}.market-pick-grid{background:#5b432d29;border:2px solid #2019156b;border-radius:5px;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:7px;max-height:208px;padding:5px;display:grid;overflow-y:auto}.market-pick-cell{aspect-ratio:1;border:3px solid var(--rarity-color,var(--ui-ink));cursor:pointer;transition:transform .12s var(--ease), box-shadow .12s var(--ease);background:linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:5px;padding:3px;position:relative}.market-pick-cell img{aspect-ratio:1;object-fit:cover;border-radius:3px;width:100%;display:block}.market-pick-cell:hover{transform:translateY(-1px)}.market-pick-cell.selected{border-color:var(--ui-ink);box-shadow:0 0 0 3px var(--ui-gold-light), 0 0 0 5px var(--ui-ink)}.market-sell-selected{color:#3b2b1f;border:3px solid var(--rarity-color,var(--ui-ink));background:linear-gradient(#fff6d947,#5b432d24);border-radius:6px;grid-template-columns:54px minmax(0,1fr);align-items:center;gap:10px;padding:9px;display:grid}.market-sell-selected img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:5px;width:54px}.market-sell-selected strong{color:var(--rarity-color,#5a271e);font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.9rem,1.6vh,1.04rem);font-weight:900;display:block}.market-sell-selected small{color:#5b3d2a;margin-top:3px;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:800;display:block}.market-sell-card input[type=number]{color:#2d2119;border:3px solid var(--ui-ink);background:linear-gradient(#efe0bc,#d0bd95);border-radius:5px;width:100%;height:42px;padding:0 10px;font-size:clamp(.9rem,1.6vh,1rem);font-weight:900}.market-sell-hint{color:#6b4b30;font-size:clamp(.66rem,1.15vh,.74rem);font-weight:800}.stage-preview-card{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d933,#0000 24%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;gap:8px;padding:9px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d673,inset 0 -6px 12px #78563029}.stage-preview-card.is-ready{box-shadow:0 0 0 2px #6e5137, 0 0 0 4px var(--ui-gold), inset 0 2px 0 #fff5d673}.stage-preview-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.stage-preview-head>div:first-child{min-width:0}.stage-preview-head>div:first-child>span{color:#6b4b30;letter-spacing:.02em;text-transform:uppercase;font-size:clamp(.64rem,1.1vh,.72rem);font-weight:800;display:block}.stage-preview-head>div:first-child>strong{color:#5a271e;font-family:var(--font-display);font-size:clamp(1rem,1.9vh,1.18rem);line-height:1.1;display:block}.stage-preview-head>div:first-child>small{color:#5b3d2a;font-size:clamp(.62rem,1.05vh,.7rem);font-weight:800;display:block}.stage-preview-progress{justify-items:end;gap:4px;min-width:96px;display:grid}.stage-preview-progress span{color:#4e3322;font-size:clamp(.7rem,1.22vh,.82rem);font-weight:900}.stage-preview-progress i{border:2px solid var(--ui-ink);background:#2a2724;border-radius:3px;width:100%;height:8px;display:block;overflow:hidden}.stage-preview-progress i b,.build-score-list i b{transform-origin:0;width:100%;height:100%;transition:transform .26s var(--ease);background:linear-gradient(#f1cd67,#b66f20);display:block}.stage-preview-fighters{grid-template-columns:1fr 1fr;gap:8px;display:grid}.stage-preview-fighters>div{background:#fff7d938;border:2px solid #20191566;border-radius:5px;grid-template-columns:40px minmax(0,1fr);align-items:center;column-gap:8px;padding:6px 8px;display:grid}.stage-preview-fighters img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);background:#2e2620;border-radius:4px;grid-row:span 2;width:40px}.stage-preview-fighters span{color:#6b4b30;font-size:clamp(.6rem,1.02vh,.68rem);font-weight:800}.stage-preview-fighters strong{color:#5a271e;min-width:0;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:clamp(.76rem,1.4vh,.9rem);line-height:1.1;overflow:hidden}.stage-loot-table{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;display:grid}.stage-loot-table span{text-align:center;background:#5b432d24;border:2px solid #2019155c;border-radius:5px;gap:2px;padding:6px;display:grid}.stage-loot-table b{color:#5a271e;font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.72rem,1.3vh,.84rem);line-height:1.14}.stage-loot-table small{color:#6b4b30;font-size:clamp(.58rem,1vh,.66rem);font-weight:800}.stage-boss-info{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:7px;display:grid}.stage-boss-info>div{background:#5b432d24;border:2px solid #2019155c;border-radius:5px;gap:2px;padding:7px 8px;display:grid}.stage-boss-info span{color:#6b4b30;font-size:clamp(.58rem,1vh,.66rem);font-weight:800}.stage-boss-info strong{color:#5a271e;font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.74rem,1.34vh,.88rem);line-height:1.16}.stage-boss-power small{font-size:clamp(.58rem,1vh,.66rem);font-weight:800}.stage-boss-power.ok small{color:#287b35}.stage-boss-power.warn small{color:#b62824}.stage-next-boss-traits{justify-content:center;min-width:0;display:flex}.stage-boss-info>.boss-trait-list{grid-column:1/-1}.boss-trait-list{background:var(--ui-parchment-light);border:3px solid var(--ui-ink);border-radius:7px;gap:6px;min-width:0;padding:8px 9px;display:grid}.boss-trait-title{color:var(--ui-ink-soft);font-family:var(--font-display);font-size:clamp(.72rem,1.3vh,.82rem);font-weight:900;line-height:1.2}.boss-trait-chips{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.boss-trait-chip{min-width:0;color:var(--ui-ink);border:3px solid var(--ui-ink);box-shadow:inset 0 0 0 2px var(--tone,var(--ui-parchment-dark)),  inset 0 1px 0 #fff8da8c;background:linear-gradient(#f4ecd6,#e0d2b0);border-radius:7px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:3px 7px;padding:6px 8px;display:grid}.boss-trait-badge{color:#fff8dc;background:var(--tone-badge,var(--ui-ink));border:2px solid var(--ui-ink);min-width:30px;height:19px;font-family:var(--font-display);-webkit-text-stroke:2px var(--ui-ink);paint-order:stroke fill;text-shadow:1px 0 0 var(--ui-ink), -1px 0 0 var(--ui-ink), 0 1px 0 var(--ui-ink), 0 -1px 0 var(--ui-ink);border-radius:4px;place-items:center;padding:0 5px;font-size:clamp(.62rem,1.08vh,.72rem);font-weight:900;line-height:1;display:inline-grid}.boss-trait-name{min-width:0;color:var(--ui-ink);font-family:var(--font-display);overflow-wrap:anywhere;font-size:clamp(.78rem,1.35vh,.9rem);font-weight:900;line-height:1.18}.boss-trait-effect{color:var(--ui-ink-soft);overflow-wrap:anywhere;grid-column:1/-1;font-size:clamp(.72rem,1.28vh,.82rem);font-weight:800;line-height:1.22}.boss-trait-chip.tone-armor{--tone:#c79845;--tone-badge:#6b4a16}.boss-trait-chip.tone-evasion{--tone:#6fb3a4;--tone-badge:#205c51}.boss-trait-chip.tone-power{--tone:#d06a52;--tone-badge:#8f2f22}.boss-trait-chip.tone-ward{--tone:#9d95c9;--tone-badge:#463a86}.boss-trait-chip.tone-drain{--tone:#99b86c;--tone-badge:#3f5a1f}.boss-trait-list.compact{justify-self:center;gap:5px;max-width:168px;padding:6px 7px}.boss-trait-list.compact .boss-trait-chips{justify-content:center;gap:5px}.boss-trait-list.compact .boss-trait-chip{max-width:158px;box-shadow:inset 0 0 0 2px var(--tone,var(--ui-parchment-dark)), inset 0 1px 0 #fff8da80, 0 2px 6px #08060452;grid-template-columns:auto minmax(0,1fr);padding:5px 7px}.boss-trait-list.compact .boss-trait-name{white-space:normal;font-size:clamp(.78rem,1.35vh,.88rem)}.boss-trait-list.compact .boss-trait-badge{min-width:28px;height:18px;padding:0 4px;font-size:clamp(.6rem,1.04vh,.68rem)}.fighter .boss-trait-chip{color:var(--ui-ink);text-align:left}.fighter .boss-trait-name{color:var(--ui-ink)}.fighter .boss-trait-effect{color:var(--ui-ink-soft)}.item-build-fit{color:#5b3d2a;margin:0;font-size:clamp(.72rem,1.3vh,.82rem);font-weight:800}.stage-info-modal{gap:10px;width:min(420px,100%);max-height:92%;display:grid;overflow:auto}.enemy-boss-tag{z-index:2;color:#fff4cf;font-family:var(--font-display);border:2px solid var(--ui-ink);pointer-events:none;border-radius:999px;padding:2px 8px;font-size:clamp(.6rem,1.12vh,.72rem);font-weight:900;position:absolute;top:4px;right:calc(50% - 58px);box-shadow:0 1px #ffecb74d,0 2px 6px #08060480}.enemy-boss-tag.fighting{background:linear-gradient(180deg, var(--ui-red-bright), var(--ui-red) 60%, var(--ui-red-dark))}.home-skill-cd-overlay{z-index:2;pointer-events:none;place-items:center;display:grid;position:absolute;inset:0}.home-skill-cd-overlay i{aspect-ratio:auto;background:#0806049e;border:0;border-radius:0;width:auto;position:absolute;inset:0}.home-skill-cd-overlay b{z-index:1;color:#fff4cf;font-family:var(--font-display);text-shadow:0 1px 2px #000000d9,0 0 6px #0009;font-size:clamp(.9rem,1.7vh,1.06rem);font-weight:900;line-height:1;position:relative}@keyframes skill-cd-drain{0%{opacity:1}to{opacity:0}}.home-skill-slot.locked .home-skill-icon i{display:none}.home-skill-locklabel{color:#cdb98c;font-family:var(--font-display);place-items:center;font-size:clamp(.62rem,1.15vh,.72rem);font-weight:900;line-height:1;display:grid;position:absolute;inset:0}.build-score-panel{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d933,#0000 24%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;gap:9px;padding:10px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d673,inset 0 -6px 12px #78563029}.build-score-panel.compact{gap:7px;padding:9px}.build-score-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.build-score-head span{color:#6b4b30;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:800}.build-score-head strong{color:#5a271e;font-family:var(--font-display);font-size:clamp(.98rem,1.85vh,1.16rem)}.build-score-list{gap:6px;display:grid}.build-score-list>div{grid-template-columns:minmax(66px,auto) minmax(0,1fr) 32px;align-items:center;gap:8px;display:grid}.build-score-list span{color:#4e3322;white-space:nowrap;font-size:clamp(.7rem,1.22vh,.8rem);font-weight:900}.build-score-list i{border:2px solid var(--ui-ink);background:#2a2724;border-radius:3px;height:9px;display:block;overflow:hidden}.build-score-list i b{background:linear-gradient(#c9a878,#8a6a40)}.build-score-list strong{color:#5a271e;font-family:var(--font-display);justify-self:end;font-size:clamp(.78rem,1.4vh,.9rem)}.build-score-list .dominant span,.build-score-list .dominant strong{color:#8a1c18}.build-score-list .dominant i b{background:linear-gradient(#f1cd67,#b66f20)}.build-score-panel>p{color:#5b3d2a;margin:0;font-size:clamp(.72rem,1.3vh,.82rem);font-weight:700;line-height:1.45}.settings-stack{gap:10px;display:grid}.ui-settings-hint{color:#6b4b30;margin-top:-2px;font-size:clamp(.62rem,1.08vh,.72rem);font-weight:700;line-height:1.35}.guide-panel{gap:10px;display:grid}.guide-intro{color:#4e3322;background:#fff7d94d;border:2px solid #2019155c;border-radius:5px;margin:0;padding:9px 11px;font-size:clamp(.74rem,1.34vh,.86rem);font-weight:700;line-height:1.5}.guide-section{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d933,#0000 24%),linear-gradient(#e2d4b6,#c4ad86 58%,#a78d65);border-radius:6px;gap:7px;padding:10px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d673}.guide-section h3{color:#5a271e;font-family:var(--font-display);align-items:center;gap:8px;margin:0;font-size:clamp(.92rem,1.7vh,1.06rem);line-height:1.1;display:flex}.guide-section h3 b{color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#8a6a40,#5d4330);border-radius:999px;flex:none;place-items:center;width:24px;height:24px;font-size:.82rem;display:grid}.guide-section ul{gap:5px;margin:0;padding-left:18px;display:grid}.guide-section li{color:#4e3322;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:600;line-height:1.5}@media (prefers-reduced-motion:reduce){.market-pick-cell{transition:none}.market-pick-cell:hover{transform:none}}.mailbox-card.claimed{filter:grayscale(.35)brightness(.88)}.notice-card{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d933,#0000 26%),linear-gradient(#dfcfad,#c1aa82 58%,#a68b64);border-radius:6px;grid-template-columns:minmax(0,1fr) minmax(72px,auto);align-items:center;gap:9px;min-width:0;padding:9px;display:grid;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff5d680}.notice-card.read{filter:grayscale(.3)brightness(.9)}.notice-card strong,.notice-card span,.notice-card small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.notice-card strong{color:#5a271e;font-family:var(--font-display);font-weight:900}.notice-card span,.notice-card small{color:#5b3d2a;font-size:clamp(.66rem,1.15vh,.76rem);font-weight:800}.notice-card b{color:#7c211c;font-size:clamp(.72rem,1.22vh,.84rem)}.notice-warning,.notice-critical{box-shadow:0 0 0 2px #7d3129,inset 0 2px #fff5d680}.admin-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.leaderboard-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;display:grid}.leaderboard-tabs button,.segmented-actions button,.rarity-choice-grid button,.stat-choice-grid button{color:#f3ead2;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-width:0;min-height:38px;padding:0 8px;font-size:clamp(.7rem,1.24vh,.82rem);font-weight:900;line-height:1.08;box-shadow:inset 0 2px #ffefb140,inset 0 -3px #17110d4d}.leaderboard-tabs button.selected,.segmented-actions button.selected,.rarity-choice-grid button.selected,.stat-choice-grid button.selected{color:#fff4cf;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.leaderboard-row{grid-template-columns:36px 48px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;display:grid}.leaderboard-rank{aspect-ratio:1;color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#705944,#36291f);border-radius:999px;place-items:center;width:32px;font-weight:900;display:grid}.leaderboard-row img{width:48px}.leaderboard-row b{color:#8a1c18;white-space:nowrap;justify-self:end;font-size:clamp(.76rem,1.35vh,.88rem)}.filter-settings-section,.audio-control-card{gap:8px;padding:10px;display:grid}.filter-settings-section>span,.filter-settings-section>h3,.audio-control-card>span,.audio-slider span{color:#5a271e;font-size:clamp(.78rem,1.4vh,.9rem);font-weight:900}.filter-settings-section>h3{margin:0}.segmented-actions,.rarity-choice-grid,.stat-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.rarity-choice-grid button{color:var(--rarity-color,#f3ead2);text-shadow:0 1px #0c08058c}.audio-slider{background:#5b432d24;border:2px solid #2019156b;border-radius:5px;gap:7px;padding:10px;display:grid}.audio-slider input{width:100%;accent-color:var(--ui-gold)}.system-screen-body.is-chat{padding:0;display:flex;overflow:hidden}.chat-panel{flex-direction:column;flex:1;min-height:0;display:flex}.chat-list{scrollbar-width:none;flex-direction:column;flex:1;gap:5px;min-height:0;padding:12px 12px 8px;display:flex;overflow-y:auto}.chat-empty{margin:auto}.chat-line{overflow-wrap:anywhere;background:linear-gradient(#e2d4b6,#c9b388);border:2px solid #2019158c;border-radius:4px;align-self:flex-start;max-width:92%;padding:6px 9px;font-size:clamp(.74rem,1.3vh,.86rem);line-height:1.3}.chat-line.is-self{border-color:var(--ui-gold);background:linear-gradient(#f5e2b4,#e4c684);align-self:flex-end}.chat-name{font:inherit;cursor:pointer;background:0 0;border:0;margin-right:6px;padding:0;font-weight:900}.chat-name:hover{text-decoration:underline}.chat-name:focus-visible{outline-offset:1px;border-radius:2px;outline:2px solid #ffd36ebf}.chat-menu-overlay{z-index:var(--z-modal);background:#0c0a0880;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.chat-menu-card{width:min(100%,280px);padding:12px 12px calc(96px + env(safe-area-inset-bottom));text-align:center;background:linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 60%, #ab9470);border:3px solid var(--ui-ink);border-radius:6px;gap:10px;display:grid;box-shadow:0 0 0 2px #6e5137,0 16px 30px #08060480}.chat-menu-name{font-family:var(--font-display);color:#5a271e;overflow-wrap:anywhere;font-size:1.1rem}.chat-menu-card .primary-action,.chat-menu-card .text-action{min-height:44px}.chat-element-fire{color:#be3f1d}.chat-element-water{color:#2470b8}.chat-element-wind{color:#2c8a52}.chat-element-earth{color:#8a5a18}.chat-body{color:#2f2418}.chat-input-row{padding:8px max(10px, calc(env(safe-area-inset-right) + 10px)) max(10px, calc(env(safe-area-inset-bottom) + 10px)) max(10px, calc(env(safe-area-inset-left) + 10px));background:linear-gradient(180deg, #57544d, var(--ui-stone-dark));border-top:3px solid var(--ui-ink);flex-shrink:0;grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.chat-input{color:#2f2418;border:3px solid var(--ui-ink);background:linear-gradient(#f3ead2,#d9c8a4);border-radius:4px;min-width:0;min-height:44px;padding:0 12px;font-size:clamp(.8rem,1.4vh,.92rem);font-weight:700}.chat-input:focus-visible{outline-offset:1px;outline:3px solid #ffd36eb3}.chat-send{min-width:56px;min-height:44px;padding:0 14px;font-weight:900}.chat-send:disabled{cursor:not-allowed;filter:grayscale(.4)brightness(.82)}.character-info-panel{gap:12px;display:grid}.change-character-action{min-height:44px;font-weight:900}.character-profile-card{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);border-radius:6px;gap:12px;width:min(100%,400px);max-height:92%;padding:18px;display:grid;overflow:auto;box-shadow:0 0 0 2px #6e5137,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb773}.character-profile-head{grid-template-columns:86px minmax(0,1fr);align-items:center;gap:12px;display:grid}.character-profile-head img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);border-radius:4px;width:86px;box-shadow:0 8px 16px #27180f47}.character-profile-head h2{color:#5a271e;overflow-wrap:anywhere;margin:2px 0 0;font-size:clamp(1.18rem,2.4vh,1.5rem);line-height:1.12}.character-profile-head strong{color:#8a1c18;margin-top:4px;font-size:clamp(.9rem,1.7vh,1.05rem);display:block}.character-profile-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.character-profile-stats div{border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;min-height:56px;padding:8px;box-shadow:inset 0 2px #ffe9b233}.character-profile-stats span,.character-profile-stats strong{display:block}.character-profile-stats span{color:#ffe0a0;font-size:clamp(.68rem,1.2vh,.78rem)}.character-profile-stats strong{color:#fff7d8;overflow-wrap:anywhere;margin-top:4px;font-size:clamp(.92rem,1.7vh,1.12rem);line-height:1}.character-profile-stat-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.character-profile-stat-list div{color:#3b2b1f;background:#5b432d1f;border:2px solid #2019156b;border-radius:3px;justify-content:space-between;align-items:center;gap:8px;min-height:34px;padding:6px 8px;display:flex}.character-profile-stat-list span,.character-profile-stat-list strong{min-width:0;font-size:clamp(.72rem,1.25vh,.84rem);line-height:1.15}.character-profile-stat-list span{color:#4c3323;text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.character-profile-stat-list strong{color:#8a1c18;flex:none;font-weight:900}.auto-equip-overlay{z-index:var(--z-modal);background:#0c0a088f;place-items:center;padding:18px;display:grid;position:absolute;inset:0}.auto-equip-card{color:#3b2b1f;background:linear-gradient(180deg, #fff6d92e, transparent 18%), repeating-linear-gradient(0deg, #4e39270e 0 1px, transparent 1px 9px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);border-radius:6px;gap:12px;width:min(100%,430px);max-height:92%;padding:18px;display:grid;overflow:auto;box-shadow:0 0 0 2px #6e5137,0 18px 38px #0806048c,inset 0 0 0 2px #ffecb773}.auto-equip-head{gap:3px;display:grid}.auto-equip-toggle{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.auto-equip-toggle button,.auto-equip-stat-grid button{color:#f3ead2;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark));border:3px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-width:0;min-height:38px;padding:0 8px;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:900;line-height:1.1;box-shadow:inset 0 2px #ffefb140,inset 0 -3px #17110d4d}.auto-equip-toggle button.selected,.auto-equip-stat-grid button.selected{color:#fff4cf;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d)}.compact-field input{height:42px}.auto-equip-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.auto-equip-note{color:#5b3d2a;margin:0;font-size:clamp(.72rem,1.3vh,.84rem);font-weight:800;line-height:1.35}.auto-equip-actions{grid-template-columns:.8fr .8fr 1fr;gap:8px;display:grid}.auto-equip-actions .primary-action,.auto-equip-actions .text-action{min-width:0;min-height:42px;padding:0 8px;font-size:clamp(.74rem,1.35vh,.88rem)}.bag-list{border:3px solid var(--ui-ink);scrollbar-width:none;background:linear-gradient(#fff7dc3d,#674c301a),repeating-linear-gradient(0deg,#4e392707 0 1px,#0000 1px 9px),linear-gradient(#d5c095,#aa8c5c);border-radius:5px;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:4px;max-height:min(56vh,520px);padding:6px;display:flex;position:relative;overflow:auto;box-shadow:0 0 0 2px #6e5137,inset 0 2px #fff6db6b,inset 0 -5px 10px #48301c1f,0 2px #49341f4d}.bag-list:before{display:none}.bag-list>*{z-index:1;flex:0 0 calc(20% - 3.2px);width:calc(20% - 3.2px);min-width:0}.bag-list .bag-item-button{aspect-ratio:1;height:auto;box-shadow:0 0 0 2px var(--rarity-color,#46321f73), 0 1px 0 #3522134d, inset 0 1px 0 #fff6db52, inset 0 -3px 0 #180e0833;background:linear-gradient(#fff0b866,#4f341d1f),linear-gradient(#b99057,#745032);border-width:2px;align-self:start;padding:2px;overflow:hidden}.bag-list .bag-item-button:before,.bag-slot-empty:before{content:"";z-index:3;pointer-events:none;border:1px solid #ffefb733;border-radius:2px;position:absolute;inset:3px}.bag-list .bag-item-button:after{display:none}.bag-list .bag-item-button img{z-index:2;border-width:1px;height:100%;position:relative;box-shadow:0 1px #fff6db38,0 2px 4px #190e084d}.bag-list .equipment-upgrade,.bag-list .item-quantity,.bag-list .item-state-mark,.bag-list .bulk-selected-mark{z-index:5}.bag-slot-empty{aspect-ratio:1;background:linear-gradient(#fff5cf42,#4a321e14),linear-gradient(#c8b283,#a48858);border:2px solid #3d2b1b94;border-radius:3px;align-self:start;width:100%;position:relative;overflow:hidden;box-shadow:inset 0 2px 3px #31201238,inset 0 -1px #fff6db33}.bag-slot-empty:after{display:none}.bag-empty-note{text-align:center;flex-basis:100%;margin:10px 0}.panel-filter-row,.market-filter-row,.inventory-filter-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0;display:grid}.inventory-filter-row input[type=search]{grid-column:1/-1}.inventory-panel-bag .inventory-filter-row{background:linear-gradient(#fff7d961,#8a653d1f),repeating-linear-gradient(0deg,#4e392709 0 1px,#0000 1px 8px);border:2px solid #2b1f1785;border-radius:5px;padding:6px;box-shadow:inset 0 1px #fff8de7a}.codex-panel .panel-filter-row{grid-template-columns:repeat(3,minmax(0,1fr))}.panel-filter-row button,.market-filter-row input,.market-filter-row select,.inventory-filter-row input,.inventory-filter-row select{color:#3f2117;min-height:38px;font:inherit;background:linear-gradient(#fff8de6b,#0000 42%),linear-gradient(#eadbb6,#cbb487);border:3px solid #2b2118;border-radius:3px;padding:6px 8px;font-size:clamp(.78rem,1.35vh,.9rem);font-weight:900;box-shadow:inset 0 1px #ffffff6b,0 1px #4a311c2e}.panel-filter-row button.selected{color:#fff8d5;text-shadow:0 2px #4d2518;background:linear-gradient(#f0c456,#bd8321)}.item-compare-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px;display:grid}.item-compare-summary span{text-align:center;background:#fff4d273;border:2px solid #2b211873;padding:6px 8px;font-weight:900}.preset-build-meta{color:#7a2d23;font-weight:900}.preset-build-preview,.boss-analysis-list,.mailbox-summary-lines{color:#4c2d1d;background:#fff4d285;border:2px solid #2b21186b;border-radius:4px;gap:5px;padding:7px;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:850;line-height:1.25;display:grid}.preset-build-preview span,.boss-analysis-list span,.mailbox-summary-lines span{overflow-wrap:anywhere}.boss-analysis-list{text-align:left;margin-bottom:8px}.boss-analysis-list strong{color:#7a2d23;font-family:var(--font-display);font-size:clamp(.78rem,1.35vh,.9rem)}.mission-reset-timer{color:#4c2d1d;text-align:center;background:#ffecb07a;border:2px solid #2b21186b;border-radius:4px;margin:0 0 8px;padding:7px 9px;font-weight:900}.mission-reset-timer strong{color:#8a2d22}.admin-search-row{grid-template-columns:minmax(0,1fr) 92px;gap:6px;margin-bottom:8px;display:grid}.admin-search-row input{color:#3f2117;min-width:0;min-height:36px;font:inherit;background:linear-gradient(#eadbb6,#cbb487);border:3px solid #2b2118;padding:6px 8px;font-weight:800}.admin-tools-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.admin-tools-columns>div{gap:6px;display:grid}.admin-moderation-actions{grid-template-columns:1fr;gap:5px;min-width:86px;display:grid}.admin-moderation-actions .mini-action{width:100%;min-height:30px;padding:0 6px;font-size:clamp(.58rem,1.02vh,.68rem)}.chat-report-note{text-align:center;margin:2px 0 0}.mailbox-actions-row{margin-bottom:8px}.boss-attempt-card.victory{border-color:#2e7b35}.boss-attempt-card.defeat{border-color:#913129}button[hidden]{display:none!important}@media (width<=460px){.market-filter-row,.admin-tools-columns,.admin-search-row{grid-template-columns:1fr}}.drop-overlay{z-index:var(--z-modal);padding:12px 12px calc(96px + env(safe-area-inset-bottom));background:#0c0a0885;place-items:center;display:grid;position:absolute;inset:0}.drop-card{width:min(100%,420px);max-height:min(94%, calc(100dvh - 128px - env(safe-area-inset-bottom)));color:#3b2b1f;background:linear-gradient(180deg, #fff8dd80, transparent 18%), repeating-linear-gradient(0deg, #4e39270d 0 1px, transparent 1px 8px), linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 68%, #b79f78);border:3px solid var(--ui-ink);border-radius:6px;gap:8px;padding:12px 12px 0;display:grid;position:relative;overflow:auto;box-shadow:0 0 0 2px #6e5137,0 18px 38px #08060480,inset 0 0 0 2px #ffecb785,inset 0 -16px 26px #67462829}.drop-head{border-bottom:2px solid #452f1f47;gap:4px;padding:2px 3px 7px;display:grid}.drop-head .panel-note{color:#725036;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:900;line-height:1.1}.drop-head h2{color:#6d3022;margin:0;font-size:clamp(1.28rem,2.8vh,1.72rem);line-height:1.05}.drop-head-meta{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.drop-head-meta span,.drop-head-meta b{color:#4e3523;background:#fff4cc75;border:2px solid #402b1d6b;border-radius:999px;min-height:22px;padding:2px 7px;font-size:clamp(.68rem,1.25vh,.78rem);font-weight:900;line-height:1.15;box-shadow:inset 0 1px #fffae09e}.drop-head-meta b{color:#8a1c18;background:#f1cd675c}.drop-compare{grid-template-columns:1fr;gap:7px;display:grid}.drop-item-panel{color:#352416;border:3px solid var(--ui-ink);min-width:0;box-shadow:0 0 0 2px var(--rarity-color,#6f4e2da6), inset 0 2px 0 #fff6db80, inset 0 -4px 0 #50341f29;background:linear-gradient(#fff8dc85,#bc9e6933),repeating-linear-gradient(0deg,#4e39270a 0 1px,#0000 1px 8px),linear-gradient(#dbcaa6,#b99c6c);border-radius:5px;gap:6px;padding:6px;display:grid}.drop-item-panel-current{background:linear-gradient(#fff8dc6b,#bc9e693d),repeating-linear-gradient(0deg,#4e39270d 0 1px,#0000 1px 8px),linear-gradient(#d3c19c,#ad8f61)}.drop-item-panel.empty{box-shadow:0 0 0 2px #5a422a59,inset 0 2px #fff6db73}.drop-item-ribbon{justify-content:space-between;align-items:center;gap:8px;display:flex}.drop-item-ribbon span{color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#9b6d35,#5a3821);border-radius:3px;padding:2px 8px;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:900;line-height:1.15;box-shadow:inset 0 1px #fff0b452,0 1px #2b1c1152}.drop-item-ribbon b{color:#5f3b20;font-size:clamp(.68rem,1.2vh,.78rem);font-weight:900}.drop-item-body{grid-template-columns:64px minmax(0,1fr);align-items:start;gap:8px;display:grid}.drop-item-portrait{aspect-ratio:1;border:3px solid var(--ui-ink);background:radial-gradient(circle at 50% 38%,#ffeda685,#0000 52%),linear-gradient(#8b6335,#3e2a1b);border-radius:4px;place-items:center;padding:3px;display:grid;position:relative;box-shadow:inset 0 2px #ffeead47,0 2px #48301c59}.drop-item-portrait img{object-fit:cover;border:2px solid #1c150feb;border-radius:3px;width:100%;height:100%;display:block}.drop-item-upgrade{color:#fff4cf;text-align:center;border:2px solid var(--ui-ink);background:linear-gradient(#e45a4a,#9f251f);border-radius:4px;min-width:25px;padding:2px 5px;font-size:.72rem;font-weight:900;line-height:1;position:absolute;bottom:-5px;right:-5px;box-shadow:0 2px #1f110b66}.drop-item-main{min-width:0}.drop-item-main strong{overflow-wrap:anywhere;min-width:0;color:var(--rarity-color,#5a271e);font-family:var(--font-display);text-shadow:0 1px #fff4cb9e;font-size:clamp(.92rem,1.75vh,1.08rem);line-height:1.05;display:block}.drop-item-meta{flex-wrap:wrap;gap:3px;margin-top:4px;display:flex}.drop-item-meta span,.drop-item-sockets{color:#4f3826;background:#fff6d780;border:1px solid #452f1f57;border-radius:3px;min-height:20px;padding:2px 5px;font-size:clamp(.63rem,1.1vh,.72rem);font-weight:900;line-height:1.12}.drop-item-sockets{color:#287641;background:#ddf6cd7a;margin-top:4px;display:inline-block}.drop-item-stats{gap:2px;margin:5px 0 0;padding:0;list-style:none;display:grid}.drop-item-stats li{color:#3b2b1f;justify-content:space-between;gap:7px;min-height:18px;font-size:clamp(.66rem,1.14vh,.76rem);line-height:1.15;display:flex}.drop-item-stats li b{color:#9b241d;white-space:nowrap;font-weight:900}.drop-item-more,.drop-item-no-stats{color:#6d5136;font-size:clamp(.64rem,1.08vh,.72rem);font-weight:800}.drop-item-no-stats{margin:5px 0 0}.drop-empty-content{color:#5b4a38;text-align:center;background:repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px),linear-gradient(#fff6db80,#a991696b);border:2px dashed #2b1f1794;border-radius:4px;place-items:center;min-height:66px;padding:8px;font-size:clamp(.74rem,1.3vh,.84rem);font-weight:800;display:grid}.power-delta{color:#4a301e;border:3px solid var(--ui-ink);background:linear-gradient(#fff6d670,#9267391f),linear-gradient(#e2c891,#ba8d52);border-radius:4px;justify-content:space-between;align-items:center;gap:10px;min-height:40px;padding:6px 10px;display:flex;box-shadow:inset 0 2px #fff4c77a,0 2px #40291857}.power-delta span{font-size:clamp(.76rem,1.32vh,.86rem);font-weight:900}.power-delta strong{font-family:var(--font-display);font-size:clamp(1.08rem,2.1vh,1.32rem);font-weight:900;line-height:1}.power-delta.positive{color:#23451e}.power-delta.positive strong{color:#19733c}.power-delta.negative{color:#5a271e}.power-delta.negative strong{color:#a32921}.drop-options{background:linear-gradient(#fff6d675,#976f442e);border:2px solid #2b1f178a;border-radius:5px;gap:7px;padding:7px;display:grid;box-shadow:inset 0 1px #fff8de80}.drop-transfer-option{background:#fff4cc6b;border:2px solid #442e1e7a;border-radius:4px;align-items:flex-start;gap:8px;min-height:0;padding:6px 7px}.drop-transfer-option.disabled{opacity:.62}.drop-transfer-option span{gap:1px;display:grid}.drop-transfer-option strong{color:#5a271e;font-size:clamp(.78rem,1.42vh,.9rem);line-height:1.15}.drop-transfer-option small{color:#604128;font-size:clamp(.66rem,1.18vh,.74rem);font-weight:800;line-height:1.2}.drop-transfer-option input{margin-top:1px}.replace-choice{grid-template-columns:1fr 1fr;gap:7px;display:grid}.replace-choice button{min-height:40px;font-size:clamp(.76rem,1.34vh,.88rem)}.drop-actions{z-index:4;background:linear-gradient(#fff8ddd6,#c7b794f5),repeating-linear-gradient(0deg,#4e39270d 0 1px,#0000 1px 8px);border-top:2px solid #452f1f57;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:2px -4px 0;padding:8px 4px;display:grid;position:sticky;bottom:0;box-shadow:0 -6px 12px #64462629}.drop-actions .primary-action,.drop-actions .text-action{min-height:42px;font-size:clamp(.82rem,1.5vh,.96rem);font-weight:900}.drop-actions .primary-action{grid-column:1/-1;min-height:48px;font-size:clamp(.98rem,1.9vh,1.15rem)}@media (height<=680px) and (width<=460px){.drop-overlay{padding:8px 8px calc(86px + env(safe-area-inset-bottom))}.drop-card{max-height:calc(100dvh - 104px - env(safe-area-inset-bottom));gap:5px;padding:8px 8px 0}.drop-head{gap:2px;padding:0 2px 4px}.drop-head h2{font-size:clamp(1.08rem,2.5vh,1.34rem)}.drop-head-meta span,.drop-head-meta b{min-height:19px;padding:1px 6px;font-size:.66rem}.drop-compare{gap:5px}.drop-item-panel{border-width:2px;gap:4px;padding:5px}.drop-item-ribbon span{padding:1px 7px;font-size:.66rem}.drop-item-body{grid-template-columns:54px minmax(0,1fr);gap:6px}.drop-item-portrait{border-width:2px;padding:2px}.drop-item-main strong{font-size:.84rem}.drop-item-meta{gap:2px;margin-top:3px}.drop-item-meta span,.drop-item-sockets{min-height:17px;padding:1px 4px;font-size:.6rem}.drop-item-stats{gap:1px;margin-top:3px}.drop-item-stats li{min-height:15px;font-size:.62rem;line-height:1.08}.drop-item-stats li:nth-child(n+3){display:none}.power-delta{border-width:2px;min-height:34px;padding:4px 8px}.drop-options{gap:5px;padding:5px}.drop-transfer-option{padding:4px 6px}.replace-choice button{min-height:34px;font-size:.76rem}.drop-actions{gap:6px;padding:7px 4px}.drop-actions .primary-action,.drop-actions .text-action{min-height:38px}.drop-actions .primary-action{min-height:42px}}.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.stat-grid div{border:3px solid var(--ui-ink);background:linear-gradient(#8b714f,#5d4330);border-radius:4px;min-height:62px;padding:10px;box-shadow:inset 0 2px #ffe9b233}.stat-grid span,.stat-grid strong{display:block}.stat-grid span{color:#ffe0a0;font-size:clamp(.72rem,1.3vh,.82rem)}.stat-grid strong{color:#fff7d8;margin-top:5px;font-size:clamp(1.1rem,2.2vh,1.4rem);line-height:1}@media (width>=480px) and (orientation:portrait){.page-shell{place-items:center;display:grid}.game-frame{width:min(100vw,460px);height:100dvh;box-shadow:0 0 0 3px var(--ui-ink), 0 0 0 6px #5c4431, 0 32px 90px #0808079e, inset 0 0 0 3px var(--ui-ink), inset 0 0 0 6px #5c4431}}@media (width>=900px) and (orientation:landscape){.page-shell{place-items:center;display:grid}.game-frame{width:min(100vw,56.25dvh);height:100dvh;box-shadow:0 0 0 3px var(--ui-ink), 0 0 0 6px #5c4431, 0 32px 90px #0808079e, inset 0 0 0 3px var(--ui-ink), inset 0 0 0 6px #5c4431}}@media (height<=680px){.brand-lockup{top:5%}.auth-dock{bottom:4%}.auth-panel{gap:10px;padding:16px}.field input,.primary-action,.text-action{height:44px;min-height:44px}.content-dock{max-height:76%}.element-card{grid-template-columns:44px minmax(0,1fr);gap:8px;min-height:62px}.selected-character{grid-template-columns:74px minmax(0,1fr)}.battle-stage{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);height:160px;padding:8px 7px 7px}.fighter{gap:4px}.fighter img,.hero-sprite,.monster-sprite{width:92px;max-width:100%}.fighter>span:not(.enemy-boss-tag){min-height:20px;padding:1px 6px;font-size:.72rem}.battle-core{min-width:66px;padding:3px 7px;top:6px}.boss-trait-strip{top:35px}.fighter-hp{height:9px}.game-panel{gap:7px}.game-stat-grid div{min-height:44px;padding:7px}.meter-stack{gap:5px}.home-active-skills{gap:2px;margin-block:-4px}.home-active-skill-list{gap:5px}.home-skill-slot{padding:2px}.home-skill-icon{width:32px}.inventory-panel{gap:6px}.inventory-expand-panel{padding:6px 7px}.inventory-expand-panel .primary-action{min-height:36px;padding:0 8px}.bag-bulk-toolbar,.inventory-panel-bag .inventory-filter-row{padding:5px}.bag-list{gap:4px;max-height:min(48vh,360px);padding:5px}.character-row{min-height:72px}.character-list.solo .character-row{min-height:104px}.create-note{padding:8px 10px}.confirm-card{padding:16px}}@media (height>=681px) and (height<=880px){.game-panel{gap:8px}.battle-stage{min-height:148px;padding:10px 8px 8px}.fighter img,.hero-sprite,.monster-sprite{width:112px;max-width:100%}.battle-core{top:7px}.boss-trait-strip{top:37px}.game-stat-grid div{min-height:46px;padding:8px}.meter-stack{gap:6px}.home-active-skills{gap:3px;margin-block:-3px}.home-skill-slot{padding:2px}.home-skill-icon{width:34px}.inventory-panel{gap:6px}.bag-list{max-height:min(50vh,430px)}}@media (width<=360px){.pending-drop-manage-bar,.auto-equip-actions,.build-actions{grid-template-columns:1fr}.active-skill-slots{grid-template-columns:repeat(2,minmax(0,1fr))}.skill-card{grid-template-columns:44px minmax(0,1fr)}.skill-card-actions{grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr))}}.hub-view{animation:hub-view-in .18s var(--ease) both;align-content:start;gap:12px;display:grid}@keyframes hub-view-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.create-topline{align-items:center}.topline-left{align-items:center;gap:10px;min-width:0;display:flex}.back-action{flex:none}.roster-meta{justify-content:space-between;align-items:center;gap:10px;display:flex}.slot-counter{color:#ffe4ad;background:linear-gradient(180deg, var(--ui-stone), var(--ui-stone-dark));border:3px solid var(--ui-ink);border-radius:4px;align-items:center;min-height:30px;padding:0 12px;font-size:clamp(.76rem,1.45vh,.88rem);font-weight:700;display:inline-flex;box-shadow:inset 0 2px #ffecb71f}.row-info{min-width:0}.character-list.solo .character-row{grid-template-columns:96px minmax(0,1fr) auto;min-height:124px}.character-list.solo .character-row strong{font-size:clamp(1.05rem,2vh,1.2rem)}.character-list.is-busy .character-row:not(.is-inflight){opacity:.5}.row-play{justify-items:center;gap:3px;padding-right:2px;display:grid}.row-play .chev{background:var(--ui-parchment-light);border:3px solid var(--ui-ink);width:30px;height:30px;box-shadow:inset 0 0 0 2px var(--ui-gold);border-radius:4px;place-items:center;display:grid}.row-play .chev:before{content:"";border:solid var(--ui-ink);border-width:3px 3px 0 0;width:7px;height:7px;transform:rotate(45deg)translate(-1px)}.row-play b{color:#2e2017;font-size:.72rem;font-weight:700}button.character-row:hover:not(:disabled) .row-play .chev{background:var(--ui-gold-light)}.row-status{color:#fff4cf;white-space:nowrap;background:linear-gradient(180deg, var(--ui-red-bright), var(--ui-red) 60%, var(--ui-red-dark));border:3px solid var(--ui-ink);text-shadow:0 1px #00000059;border-radius:4px;justify-self:end;padding:6px 12px;font-size:clamp(.74rem,1.4vh,.86rem);font-weight:700;animation:1.2s ease-in-out infinite row-status-pulse}@keyframes row-status-pulse{0%,to{opacity:1}50%{opacity:.62}}.row-delete{color:#fff4cf;background:linear-gradient(180deg, var(--ui-red-bright), var(--ui-red) 55%, var(--ui-red-dark));border:3px solid var(--ui-ink);cursor:pointer;text-shadow:0 1px #00000059;border-radius:4px;justify-self:end;min-height:48px;padding:0 16px;font-weight:700;box-shadow:0 3px #17110d,inset 0 2px #ffefb14d}.row-delete:hover{filter:brightness(1.06)}.row-delete:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}.row-restore{color:#2f2412;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 58%, #8f581d);border:3px solid var(--ui-ink);cursor:pointer;text-shadow:0 1px #fff6db66;border-radius:4px;justify-self:end;min-height:48px;padding:0 16px;font-weight:800;box-shadow:0 3px #17110d,inset 0 2px #fff6db66}.row-restore:hover:not(:disabled){filter:brightness(1.06)}.row-restore:disabled{cursor:not-allowed;filter:grayscale(.4)brightness(.82)}.row-restore:focus-visible{outline-offset:3px;outline:3px solid #ffd36ec7}.roster-create{gap:6px;margin-top:2px;display:grid}.roster-create-btn{width:100%}.create-subline{text-align:center;font-size:clamp(.74rem,1.35vh,.84rem)}.create-note{color:#ffe4ad;background:linear-gradient(180deg, var(--ui-stone), var(--ui-stone-dark));border:3px solid var(--ui-ink);border-radius:4px;padding:10px 12px;font-size:clamp(.8rem,1.5vh,.92rem);font-weight:700;line-height:1.5;box-shadow:inset 0 2px #ffecb71f}.select-tag{color:#201915;background:var(--ui-gold-light);border:2px solid var(--ui-ink);border-radius:3px;align-items:center;gap:5px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex;position:absolute;top:6px;right:6px}.select-tag i{border:2px solid #201915;border-width:0 2px 2px 0;width:5px;height:9px;margin-bottom:2px;transform:rotate(45deg)}.element-card{transition:filter .12s var(--ease), background .15s var(--ease), box-shadow .15s var(--ease)}.confirm-overlay{z-index:var(--z-modal);animation:confirm-overlay-in .15s var(--ease) both;background:#120c08b8;place-items:center;padding:24px;display:grid;position:absolute;inset:0}@keyframes confirm-overlay-in{0%{opacity:0}to{opacity:1}}.confirm-card{color:#3b2b1f;background:linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment) 58%, #ab9470);border:3px solid var(--ui-ink);width:min(420px,100%);max-height:calc(100% - 32px);animation:confirm-card-in .2s var(--ease) both;border-radius:6px;gap:14px;padding:20px;display:grid;position:relative;overflow-y:auto;box-shadow:0 0 0 2px #6e5137,0 24px 48px #0806049e,inset 0 0 0 2px #ffecb773}@keyframes confirm-card-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.confirm-title{font-size:clamp(1.2rem,2.6vh,1.5rem)}.confirm-body{gap:12px;display:grid}.confirm-line{color:#3a2418;font-size:clamp(.86rem,1.6vh,.98rem);line-height:1.55}.confirm-line strong{color:#5a271e;font-family:var(--font-display);overflow-wrap:anywhere}.confirm-check{color:#2e2017;cursor:pointer;align-items:center;gap:9px;min-height:44px;font-size:clamp(.82rem,1.5vh,.94rem);font-weight:700;display:flex}.confirm-check input{width:22px;height:22px;accent-color:var(--ui-red);cursor:pointer;flex:none}.confirm-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.confirm-actions .primary-action,.confirm-actions .text-action{min-width:0}@media (prefers-reduced-motion:reduce){.hub-view,.confirm-overlay,.confirm-card,.row-status{animation:none}.character-row,.element-card{transition:none}}.stat-pill{border:2px solid var(--ui-ink);background:var(--ui-parchment-light);color:var(--ui-ink);border-radius:8px;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.gem-panel,.cosmetic-panel,.daily-panel{flex-direction:column;gap:12px;display:flex}.system-screen-gems{background:radial-gradient(circle at 50% 0,#45ca9a29,#0000 32%),linear-gradient(#2f2a22 0%,#7d6b4d 42%,#b9a77f 100%)}.system-screen-gems .system-screen-body{padding:10px max(10px, calc(env(safe-area-inset-right) + 10px)) max(28px, calc(env(safe-area-inset-bottom) + 28px)) max(10px, calc(env(safe-area-inset-left) + 10px))}.gem-panel{gap:10px}.gem-muted{color:#5b4932;margin:0;font-size:.84rem;line-height:1.42}.gem-hero,.gem-section,.gem-socket-card{border:3px solid var(--ui-ink);border-radius:7px;box-shadow:0 0 0 2px #6e5137,inset 0 2px #ffefb138,0 8px 18px #08060447}.gem-hero{color:#f8ecd1;background:radial-gradient(circle at 18% 34%,#59f4ae47,#0000 28%),linear-gradient(135deg,#4e3a26,#231b15 64%,#15110d);grid-template-columns:78px minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid;position:relative;overflow:hidden}.gem-hero:after{content:"";pointer-events:none;border:1px solid #ffe08f3d;border-radius:4px;position:absolute;inset:5px}.gem-hero-crystal{z-index:1;border:3px solid var(--ui-ink);background:radial-gradient(circle,#7affb542,#0000 58%),linear-gradient(#846438,#241911);border-radius:7px;place-items:center;width:76px;height:76px;display:grid;position:relative;box-shadow:inset 0 2px #ffefb133,0 0 16px #5beeb53d}.gem-hero-crystal img{object-fit:contain;filter:drop-shadow(0 0 9px #5affb86b);width:68px;height:68px}.gem-hero-copy{z-index:1;min-width:0;position:relative}.gem-hero-copy span{color:#d7bf83;font-size:.72rem;font-weight:900;display:block}.gem-hero-copy strong{color:#fff5cf;font-family:var(--font-display);text-shadow:0 2px #08050385;margin-top:1px;font-size:1.42rem;line-height:1.05;display:block}.gem-hero-copy p{color:#ead9af;margin:4px 0 0;font-size:.78rem;line-height:1.35}.gem-hero-stats{z-index:1;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid;position:relative}.gem-hero-stats span{color:#f4e2b5;background:linear-gradient(#664e2de0,#231911e0);border:2px solid #ffda8261;border-radius:5px;justify-content:center;align-items:baseline;gap:5px;min-height:30px;font-size:.78rem;font-weight:900;display:flex}.gem-hero-stats b{color:#8df0a6;font-size:1.04rem}.gem-section{color:#2c2017;background:linear-gradient(#fff5d37a,#a4845233),repeating-linear-gradient(0deg,#4e39270c 0 1px,#0000 1px 9px),linear-gradient(#d8c79c,#aa9166);gap:8px;padding:9px;display:grid}.gem-section-title{justify-content:space-between;align-items:baseline;gap:8px;min-width:0;display:flex}.gem-section h3,.gem-section-title h3{color:#2b1d14;font-family:var(--font-display);text-shadow:0 1px #fff5d2a6;flex:none;margin:0;font-size:1.05rem;line-height:1.05}.gem-section-title span{color:#6f4d22;text-align:right;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:900;overflow:hidden}.gem-vault-grid{scrollbar-width:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;max-height:min(44vh,360px);padding:1px 2px 2px;display:grid;overflow:auto}.gem-vault-card{color:#f7e7bf;text-align:left;border:2px solid var(--rarity-color,var(--ui-ink));cursor:pointer;min-width:0;min-height:82px;box-shadow:inset 0 1px 0 #ffefb138, 0 0 11px var(--rarity-shadow,#0806043d);background:linear-gradient(#ffefb11f,#0000 40%),linear-gradient(#55402b,#201711 66%,#130f0c);border-radius:6px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:8px;padding:7px;display:grid;position:relative}.gem-vault-card:hover{filter:brightness(1.08)}.gem-vault-card:active{transform:translateY(1px)}.gem-vault-frame{border:3px solid var(--ui-ink);background:radial-gradient(circle at 50% 45%,#ffffff21,#0000 45%),linear-gradient(#c2a36a,#44301f 58%,#15100c);border-radius:5px;place-items:center;width:64px;height:64px;display:grid;position:relative;box-shadow:inset 0 2px #ffeeb140}.gem-vault-frame img{object-fit:contain;width:56px;height:56px;filter:drop-shadow(0 0 7px var(--rarity-shadow,#ffffff2e))}.gem-vault-info{gap:3px;min-width:0;display:grid}.gem-vault-info strong{color:#fff2cf;overflow-wrap:anywhere;-webkit-line-clamp:2;text-shadow:0 1px #1a1009;-webkit-box-orient:vertical;min-width:0;font-size:.86rem;font-weight:900;line-height:1.12;display:-webkit-box;overflow:hidden}.gem-vault-info small{color:var(--rarity-bright,#e3cfaa);font-size:.72rem;font-weight:900;line-height:1.15}.gem-tier-mark{z-index:2;color:#fff4cf;text-align:center;border:2px solid var(--ui-ink);background:linear-gradient(#3a352c,#1c1813);border-radius:3px;min-width:22px;padding:2px 5px;font-size:.64rem;font-weight:900;line-height:1.05;position:absolute;top:-4px;left:-4px}.gem-vault-frame .item-quantity{text-align:center;background:linear-gradient(#deaa35,#7b4218);min-width:29px;font-size:.64rem;bottom:-5px;right:-5px}.gem-loadout-grid{gap:7px;display:grid}.gem-loadout-card{color:#f6e7bf;border:2px solid var(--rarity-color,var(--ui-ink));background:linear-gradient(#ffefb11a,#0000 42%),linear-gradient(#51402d,#231914);border-radius:6px;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:8px;padding:7px;display:grid;box-shadow:inset 0 1px #ffefb129}.gem-loadout-icon,.gem-item-icon-frame{place-items:center;display:grid;position:relative}.gem-loadout-icon img,.gem-item-icon{object-fit:cover;border:2px solid var(--ui-ink);background:#241a14;border-radius:5px;width:62px;height:62px}.gem-upgrade-badge{color:#fff4cf;border:2px solid var(--ui-ink);text-align:center;background:linear-gradient(#e05542,#7b1c16);border-radius:4px;min-width:30px;padding:2px 5px;font-size:.72rem;font-weight:900;line-height:1.05;position:absolute;bottom:-4px;right:-4px;box-shadow:0 1px 3px #0805038c}.gem-loadout-main{gap:5px;min-width:0;display:grid}.gem-equipment-head{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:6px;min-width:0;display:grid}.gem-equipment-head>span{color:#2d1d10;white-space:nowrap;background:linear-gradient(#f2d181,#b3762d);border:2px solid #1b120c;border-radius:4px;padding:2px 6px;font-size:.64rem;font-weight:900;line-height:1}.gem-equipment-head strong{color:#fff1ce;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.82rem;line-height:1.15;display:block;overflow:hidden}.gem-equipment-meta{flex-wrap:wrap;gap:4px;display:flex}.gem-equipment-meta span{color:#e5cfa1;background:#18110c94;border:1px solid #ffde8b47;border-radius:4px;padding:2px 6px;font-size:.66rem;font-weight:800;line-height:1.05}.gem-mini-sockets{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.gem-mini-sockets span{background:radial-gradient(circle,#ffe79e42,#17100be0);border:2px solid #1f150e;border-radius:4px;place-items:center;min-width:0;min-height:24px;padding:2px 4px;display:inline-grid}.gem-mini-sockets span.empty:after{content:none}.gem-mini-sockets b{color:#cbb586;font-size:.58rem;font-weight:900;line-height:1}.gem-mini-sockets img{object-fit:contain;width:18px;height:18px}.gem-set-row{color:#f2e1b9;background:linear-gradient(#ffefb11f,#0000 45%),linear-gradient(#5a452f,#2b2017);border:2px solid #20160f;border-radius:6px;gap:6px;padding:8px;display:grid}.gem-set-head{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.gem-set-head strong{color:#fff2cf}.gem-set-head span{color:#d3b77c;font-size:.74rem;font-weight:800}.gem-bonus-row{flex-wrap:wrap;gap:6px;display:flex}.gem-bonus-row .stat-pill{background:linear-gradient(#f6df9e,#ba8440);border-radius:5px}.gem-empty{color:#2c2017;text-align:center;background:radial-gradient(circle at 50% 10%,#fff4c36b,#0000 45%),linear-gradient(#f7e1a9e6,#b3935be6);border:2px solid #20191594;border-radius:6px;place-items:center;gap:6px;padding:18px 14px;display:grid;box-shadow:inset 0 1px #fff6db80}.gem-empty strong{font-family:var(--font-display);color:#2d1f14;font-size:1rem}.gem-empty p{color:#5a422a;max-width:34ch;margin:0;font-size:.82rem;line-height:1.45}.gem-locked{color:#d2bc84;font-size:.76rem;font-weight:800}.gem-fuse{font-size:.72rem}.gem-socket-overlay{background:radial-gradient(circle at 50% 18%,#58d19d21,#0000 36%),#0c0907ad;place-items:center;padding:12px}.gem-socket-card{color:#ead7ad;background:radial-gradient(circle at 20% 0,#5af5b726,#0000 35%),linear-gradient(#56402b,#211711 62%,#120e0b);gap:10px;width:min(100%,430px);max-height:94%;padding:12px;display:grid;overflow:auto}.gem-modal-head{background:linear-gradient(#ffefb121,#0000 44%),linear-gradient(#6c5132,#2d2117);border:2px solid #1b120c;border-radius:6px;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:11px;padding:8px;display:grid}.gem-modal-crystal{border:3px solid var(--ui-ink);background:radial-gradient(circle,#ffffff26,#0000 52%),linear-gradient(#d4af65,#3b2a1a 62%,#160f0a);border-radius:6px;place-items:center;width:82px;height:82px;display:grid;position:relative}.gem-modal-crystal img{object-fit:contain;width:74px;height:74px;filter:drop-shadow(0 0 9px var(--rarity-shadow,#fff3))}.gem-modal-crystal span{color:#fff4cf;border:2px solid var(--ui-ink);background:linear-gradient(#3a352c,#1c1813);border-radius:3px;padding:2px 6px;font-size:.72rem;font-weight:900;position:absolute;top:-5px;left:-5px}.gem-modal-copy{min-width:0}.gem-modal-copy p{color:#d8bd7e;margin:0;font-size:.78rem;font-weight:900}.gem-modal-copy h2{color:var(--rarity-bright,#fff2cf);font-family:var(--font-display);overflow-wrap:anywhere;text-shadow:0 2px 0 #160d08, 0 0 12px var(--rarity-shadow,transparent);margin:2px 0 3px;font-size:1.26rem;line-height:1.08}.gem-modal-copy strong{color:#8ef0a8;font-size:.96rem;font-weight:900}.gem-fuse-action,.gem-close-action{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d);border:3px solid var(--ui-ink);cursor:pointer;border-radius:5px;min-height:42px;font-weight:900;box-shadow:inset 0 2px #fff6d161,0 3px #130c07d1}.gem-close-action{color:#f4ead2;background:linear-gradient(180deg, #77776f, var(--ui-stone) 52%, var(--ui-stone-dark))}.gem-modal-help{color:#e3cea0;margin:0;font-size:.8rem;line-height:1.35}.gem-target-list{scrollbar-width:none;gap:8px;max-height:45vh;padding:1px 2px 2px 1px;display:grid;overflow:auto}.gem-item-row{color:#f4e3bb;border:2px solid var(--rarity-color,#1d140e);background:linear-gradient(#ffefb11a,#0000 42%),linear-gradient(#58432d,#241a13);border-radius:6px;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:9px;padding:8px;display:grid;box-shadow:inset 0 1px #ffefb129}.gem-item-main{gap:7px;min-width:0;display:grid}.gem-socket-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.gem-socket{border:2px solid var(--ui-ink);text-overflow:ellipsis;white-space:nowrap;cursor:pointer;border-radius:5px;justify-content:center;align-items:center;gap:4px;min-width:0;min-height:34px;padding:4px 6px;font-size:.72rem;font-weight:900;line-height:1.05;display:inline-flex;overflow:hidden}.gem-socket-icon{object-fit:contain;flex:none;width:22px;height:22px}.gem-socket.empty{color:#d8c49b;background:repeating-linear-gradient(135deg,#ffefb114 0 4px,#0000 4px 8px),linear-gradient(#4b3b2a,#201711);border-style:dashed}.gem-socket.empty.ready{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 70%, #9b621f);border-style:solid}.gem-socket.empty:disabled{opacity:.6;cursor:default}.gem-socket.filled{color:#fff8dc;background:linear-gradient(#2f82c3,#155185 62%,#10253e)}.gem-vault-card:focus-visible,.gem-fuse-action:focus-visible,.gem-close-action:focus-visible,.gem-socket:focus-visible{outline-offset:2px;outline:2px solid #fff0a3}.cosmetic-list{flex-direction:column;gap:8px;display:flex}.cosmetic-item{border:3px solid var(--ui-ink);background:var(--ui-parchment);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px;display:flex}.cosmetic-item-main{flex-direction:column;gap:2px;display:flex}.cosmetic-item-main strong{color:var(--ui-ink);font-size:.9rem}.cosmetic-item-main small{color:var(--ui-ink-soft);font-size:.76rem}.cosmetic-buy{align-items:center;gap:6px;display:inline-flex}.cosmetic-buy img{width:16px;height:16px}.daily-head{flex-direction:column;gap:4px;display:flex}.daily-head strong{color:var(--ui-ink);font-size:1rem}.daily-head small{color:var(--ui-ink-soft);font-size:.78rem}.daily-grid{grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;display:grid}.daily-cell{border:2px solid var(--ui-ink);background:var(--ui-parchment-light);color:var(--ui-ink);border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:8px;display:flex}.daily-cell.is-today{outline:3px solid var(--ui-gold-light);box-shadow:0 0 14px #d39a2e80}.daily-cell.is-claimed{filter:grayscale(.4)brightness(.9)}.daily-day{font-size:.76rem;font-weight:700}.daily-reward{align-items:center;gap:4px;font-size:.82rem;font-weight:700;display:inline-flex}.daily-reward img{width:16px;height:16px}.daily-claim{width:100%}.ascension-head{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.ascension-stat{border:3px solid var(--ui-ink);background:var(--ui-stone-dark);color:var(--ui-gold-light);border-radius:12px;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;display:flex}.ascension-stat b{font-size:1.05rem}.ascension-stat small{color:var(--ui-parchment-light);font-size:.7rem}.ascension-hint{text-align:center;color:var(--ui-parchment-light);background:var(--ui-stone-dark);border:3px solid var(--ui-ink);border-radius:12px;margin:0;padding:9px 12px;font-size:.8rem;line-height:1.45}.ascension-hint.is-ready{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d);font-weight:700}.ascension-ascend{background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 60%, #8f581d);color:#3a2708;width:100%}.ascension-panel{gap:10px;padding-bottom:4px}.ascension-panel .ascension-summary{gap:7px}.ascension-panel .ascension-summary-cell{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fffae094,#a779411f),linear-gradient(#e1cfa5,#b9935e);border-radius:6px;min-height:58px;padding:8px 9px;position:relative;box-shadow:0 0 0 1px #7b5a37,inset 0 1px #fff8deb8,inset 0 -6px 12px #69462329}.ascension-panel .ascension-summary-cell:after{content:"";pointer-events:none;border:1px solid #fff8de61;border-radius:3px;position:absolute;inset:5px}.ascension-panel .ascension-summary-cell span{color:#694122;text-shadow:0 1px #fff2c86b;font-size:clamp(.7rem,1.18vh,.82rem)}.ascension-panel .ascension-summary-cell strong{color:#4d2b1e;font-family:var(--font-display);text-shadow:0 1px #fff2c88a;margin-top:5px;font-size:clamp(1.02rem,1.8vh,1.22rem)}.ascension-panel .ascension-summary-cell.is-points strong{color:#1f7b35}.ascension-panel .ascension-ascend{color:#3a2708;min-height:50px;font-family:var(--font-display);letter-spacing:0;text-shadow:0 1px #ffeeabbd;background:linear-gradient(#fff7d361,#0000 38%),linear-gradient(#f4cf66,#d49a2e 58%,#98601e);font-size:clamp(1rem,1.8vh,1.18rem);box-shadow:0 3px #4f3218,0 6px 12px #452b1740,inset 0 2px #fff7d2a3,inset 0 -5px #5b371433}.ascension-panel .ascension-hint{color:#4a3422;background:linear-gradient(#fff8de8f,#9d70381f),linear-gradient(#e3d2aa,#b99764);border-radius:10px;padding:8px 10px;font-size:clamp(.78rem,1.28vh,.9rem);font-weight:800;line-height:1.35;box-shadow:0 0 0 1px #7b5a37,inset 0 1px #fff8de99}.ascension-panel .ascension-hint.is-ready{color:#4a2e0e;background:linear-gradient(#fff8de70,#8f581d14),linear-gradient(#f1cf6a,#d7a13c 62%,#b87422)}.ascension-panel .ascension-list{border:3px solid var(--ui-ink);background:linear-gradient(#fff8de5c,#734e2a1f),linear-gradient(#d6bf90,#b18f5f);border-radius:8px;gap:7px;padding:8px;box-shadow:0 0 0 2px #745235,inset 0 1px #fff8de8a,inset 0 -8px 16px #5c3b1f24}.ascension-panel .ascension-row{background:repeating-linear-gradient(0deg,#6043240b 0 1px,#0000 1px 9px),linear-gradient(#fffae08a,#9367341a),linear-gradient(#e4d2a8,#ba9866);border:2px solid #372719db;border-radius:6px;grid-template-columns:minmax(0,1fr) 108px;grid-template-areas:"main stepper""bonus stepper";gap:3px 9px;min-height:64px;padding:8px 9px;box-shadow:0 1px #3724143d,inset 0 1px #fff8de9e}.ascension-panel .ascension-row.is-staged{border-color:#9d661e;box-shadow:0 0 0 2px #d39a2e57,inset 0 1px #fff8deb3}.ascension-panel .ascension-row.is-maxed{border-color:#386834}.ascension-row-main{grid-area:main;min-width:0}.ascension-panel .ascension-row-main strong{color:#5a271e;font-family:var(--font-display);text-shadow:0 1px #fff2c875;font-size:clamp(.95rem,1.55vh,1.08rem)}.ascension-panel .ascension-row-main small{color:#5e4731;font-size:clamp(.68rem,1.08vh,.78rem);font-weight:800}.ascension-row-track{background:#5a412638;border:1px solid #3727197a;border-radius:999px;height:7px;margin-top:5px;display:block;overflow:hidden;box-shadow:inset 0 1px 1px #37271938}.ascension-row-track i{transform-origin:0;border-radius:inherit;background:linear-gradient(90deg,#3e9b47,#e0b449);width:100%;height:100%;display:block}.ascension-panel .ascension-row-bonus{color:#8a1c18;text-align:left;background:#fff8de61;border:1px solid #5b3b1f61;border-radius:999px;grid-area:bonus;place-self:end start;padding:2px 8px;font-size:clamp(.78rem,1.28vh,.92rem)}.ascension-panel .ascension-stepper{grid-area:stepper;grid-template-columns:32px minmax(0,1fr) 32px;align-self:center;gap:4px}.ascension-panel .ascension-stepper button{color:#3a2708;text-shadow:0 1px #ffeeabb8;background:linear-gradient(#fff7d34d,#0000 40%),linear-gradient(#d8c296,#a88351);height:34px;box-shadow:0 2px #5f4124,inset 0 1px #fff8de8f}.ascension-panel .ascension-stepper button:last-child{background:linear-gradient(#fff7d35c,#0000 40%),linear-gradient(#f2cf67,#d39a2e 60%,#9b641f)}.ascension-panel .ascension-stepper span{color:#4d2b1e;background:#fff8de75;border:1px solid #5b3b1f6b;border-radius:5px;place-items:center;min-height:30px;font-size:clamp(.76rem,1.18vh,.88rem);display:grid}.ascension-panel .ascension-preview{border:3px solid var(--ui-ink);background:linear-gradient(#fffae085,#865b2d1f),linear-gradient(#e1cfa5,#b99460);border-radius:8px;padding:9px;box-shadow:0 0 0 1px #745235,inset 0 1px #fff8de94}.ascension-panel .ascension-actions{border:3px solid var(--ui-ink);background:linear-gradient(#fff8de66,#6e49261f),linear-gradient(#d7c195,#b29261);border-radius:8px;grid-template-columns:minmax(0,.85fr) minmax(0,1fr) minmax(0,1.35fr);gap:7px;padding:8px;box-shadow:0 0 0 2px #745235,inset 0 1px #fff8de85}.ascension-panel .ascension-actions .text-action{color:#3f2a1b;text-shadow:0 1px #ffeeabb3;background:linear-gradient(#fff7d352,#0000 40%),linear-gradient(#d8c296,#a88351)}.ascension-panel .ascension-actions .text-action.danger{color:#fff4cf;text-shadow:0 1px #4318108c;background:linear-gradient(#c36a56,#9d3f31 62%,#69301f)}.ascension-panel .ascension-actions .primary-action{color:#fff4cf;background:linear-gradient(180deg, #fff7d338, transparent 38%), linear-gradient(180deg, var(--ui-red-bright), var(--ui-red) 54%, var(--ui-red-dark))}@media (height<=700px){.ascension-panel{gap:7px}.ascension-panel .ascension-summary-cell{min-height:52px;padding:7px 8px}.ascension-panel .ascension-list{gap:5px;padding:6px}.ascension-panel .ascension-row{min-height:58px;padding:6px 7px}.ascension-panel .ascension-ascend{min-height:46px}}@media (width<=360px){.ascension-panel .ascension-row{grid-template-columns:minmax(0,1fr) 96px}.ascension-panel .ascension-stepper{grid-template-columns:28px minmax(0,1fr) 28px}.ascension-panel .ascension-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.ascension-panel .ascension-actions .primary-action{grid-column:1/-1}}.enemy-fighter>.fighter-name{white-space:nowrap;text-overflow:ellipsis;max-width:100%;overflow:hidden}.boss-trait-strip{z-index:3;border:2px solid var(--ui-ink);cursor:pointer;background:linear-gradient(#fff6dbe6,#b48b4cd6);border-radius:999px;gap:4px;padding:3px 6px;display:flex;position:absolute;top:39px;left:50%;transform:translate(-50%);box-shadow:0 2px #432b1847,inset 0 1px #fff8de94}.boss-trait-pip{color:#fff8dc;border:2px solid var(--ui-ink);background:var(--tone-badge,var(--ui-stone));border-radius:6px;place-items:center;min-width:26px;height:18px;padding:0 5px;font-size:.62rem;font-weight:900;display:grid}.boss-trait-pip.tone-armor{--tone-badge:#6b4a16}.boss-trait-pip.tone-evasion{--tone-badge:#205c51}.boss-trait-pip.tone-power{--tone-badge:#8f2f22}.boss-trait-pip.tone-ward{--tone-badge:#463a86}.boss-trait-pip.tone-drain{--tone-badge:#3f5a1f}.boss-trait-popup-list{flex-direction:column;gap:8px;display:flex}.boss-trait-row{border:3px solid var(--ui-ink);background:var(--ui-parchment-light);box-shadow:inset 0 0 0 2px var(--tone,var(--ui-parchment-dark));border-radius:10px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:8px;display:grid}.boss-trait-row.tone-armor{--tone:#c79845;--tone-badge:#6b4a16}.boss-trait-row.tone-evasion{--tone:#6fb3a4;--tone-badge:#205c51}.boss-trait-row.tone-power{--tone:#d06a52;--tone-badge:#8f2f22}.boss-trait-row.tone-ward{--tone:#9d95c9;--tone-badge:#463a86}.boss-trait-row.tone-drain{--tone:#99b86c;--tone-badge:#3f5a1f}.boss-trait-row .boss-trait-badge{color:#fff8dc;border:2px solid var(--ui-ink);background:var(--tone-badge,var(--ui-stone));border-radius:7px;place-items:center;min-width:34px;height:24px;padding:0 6px;font-size:.72rem;font-weight:900;display:grid}.boss-trait-row-text{flex-direction:column;gap:2px;min-width:0;display:flex}.boss-trait-row-text strong{color:var(--ui-ink);font-size:.9rem}.boss-trait-row-text small{color:var(--ui-ink-soft);font-size:.78rem}.boss-trait-row-text .boss-trait-counter{color:var(--ui-red-dark);font-weight:700}.boss-trait-popup-head{flex-direction:column;gap:2px;margin-bottom:8px;display:flex}.boss-trait-popup-head strong{font-family:var(--font-display);color:var(--ui-ink);font-size:1.2rem;line-height:1.2}.boss-trait-popup-head span{color:var(--ui-ink-soft);font-size:.8rem}.forge-panel{flex-direction:column;gap:12px;display:flex}.forge-grid{grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:8px;display:grid}.forge-chip{border:2px solid var(--ui-ink);background:var(--ui-parchment-light);color:var(--ui-ink);cursor:pointer;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 6px;font-size:.78rem;font-weight:700;display:flex}.forge-chip img{object-fit:contain;width:28px;height:28px}.forge-chip:disabled{opacity:.5;cursor:default}.forge-chip-slot{min-height:44px}.forge-workbench-panel{gap:8px}.forge-tabs{background:linear-gradient(#fff7d95c,#7e5b3424),repeating-linear-gradient(0deg,#4e392709 0 1px,#0000 1px 8px);border:2px solid #2b1f178a;border-radius:5px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:5px;display:grid}.forge-tabs button{color:#f4ead2;background:linear-gradient(180deg, #77756b, var(--ui-stone) 56%, var(--ui-stone-dark));border:2px solid var(--ui-ink);cursor:pointer;border-radius:4px;min-height:38px;font-size:clamp(.78rem,1.35vh,.92rem);font-weight:900;box-shadow:inset 0 1px #fff6db42}.forge-tabs button.selected{color:#2d2014;background:linear-gradient(180deg, #ffef9b, var(--ui-gold) 58%, #9b641f)}.forge-workbench{gap:8px;display:grid}.forge-item-rail{border:3px solid var(--ui-ink);scrollbar-width:none;background:linear-gradient(#fff8de52,#5b432d1f),linear-gradient(#d4bf94,#ad9061);border-radius:5px;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:146px;padding:6px;display:grid;overflow:auto;box-shadow:0 0 0 2px #6e5137,inset 0 1px #fff6db70}.forge-item-chip{color:#3b2b1f;text-align:left;border:2px solid var(--rarity-color,#2b1f17b8);cursor:pointer;background:linear-gradient(#fff8de57,#593a1f29),linear-gradient(#c9ae7c,#8d6b42);border-radius:4px;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:5px;min-width:0;min-height:48px;padding:4px;display:grid;box-shadow:inset 0 1px #fff6db52,0 1px #37241438}.forge-item-chip.selected{box-shadow:0 0 0 2px #ffe170, 0 0 10px var(--rarity-shadow,#ffd26447), inset 0 1px 0 #fff6db61}.forge-item-chip img{aspect-ratio:1;object-fit:cover;border:2px solid var(--ui-ink);border-radius:3px;width:34px}.forge-item-chip span,.forge-item-chip strong,.forge-item-chip small{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.08;overflow:hidden}.forge-item-chip strong{color:#3a271b;font-size:clamp(.66rem,1.08vh,.76rem);font-weight:900;display:block}.forge-item-chip small{color:#65462c;margin-top:2px;font-size:clamp(.58rem,.95vh,.66rem);font-weight:800;display:block}.forge-focus-card{color:#3b2b1f;border:3px solid var(--rarity-color,var(--ui-ink));box-shadow:0 0 0 2px #6e5137, 0 0 12px var(--rarity-shadow,#37241433), inset 0 1px 0 #fff6db7a;background:linear-gradient(#fff8de7a,#74522f1f),repeating-linear-gradient(0deg,#4e392709 0 1px,#0000 1px 8px),linear-gradient(#e2cea2,#b99c6c);border-radius:6px;gap:8px;padding:9px;display:grid}.forge-focus-head{grid-template-columns:58px minmax(0,1fr);align-items:center;gap:8px;display:grid}.forge-focus-head img{aspect-ratio:1;object-fit:cover;border:3px solid var(--ui-ink);background:#2e2620;border-radius:4px;width:58px}.forge-focus-head h3,.forge-focus-head p,.forge-focus-head small{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;overflow:hidden}.forge-focus-head h3{color:var(--rarity-color,#5a271e);font-size:clamp(.98rem,1.75vh,1.18rem);font-weight:900}.forge-focus-head p,.forge-focus-head small{color:#5f4129;font-size:clamp(.68rem,1.12vh,.78rem);font-weight:850}.forge-stat-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:0;padding:0;list-style:none;display:grid}.forge-stat-list li{background:#fff7d940;border:2px solid #2b1f1759;border-radius:3px;justify-content:space-between;gap:6px;min-width:0;padding:5px 7px;font-size:clamp(.68rem,1.15vh,.78rem);font-weight:900;display:flex}.forge-stat-list span,.forge-stat-list b{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.forge-stat-list b{color:#9a2019}.forge-action-panel{background:linear-gradient(#fff7d957,#583a221f),linear-gradient(#cfbb91,#a88a5b);border:2px solid #2b1f1780;border-radius:5px;gap:7px;padding:8px;display:grid;box-shadow:inset 0 1px #fff6db5c}.forge-reroll-cost{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.forge-reroll-cost span{color:#3b2b1f;background:#fff7d952;border:2px solid #2b1f175c;border-radius:4px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:5px;font-size:clamp(.7rem,1.18vh,.8rem);font-weight:900;display:flex}.forge-reroll-cost img{object-fit:contain;width:22px;height:22px}.forge-reroll-cost .missing{color:#9a2019}.forge-scene{z-index:calc(var(--z-modal) + 20);padding:max(16px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(16px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));pointer-events:auto;background:radial-gradient(circle at 50% 42%,#ffce5b47,#0000 28%),linear-gradient(#1c120b57,#0d0907b8);place-items:center;display:grid;position:fixed;inset:0}.forge-scene-card{border:3px solid var(--ui-ink);width:min(92vw,362px);animation:forge-card-in .18s var(--ease) both;background:linear-gradient(#fff8dee0,#ceae6eeb),repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px);border-radius:8px;padding:7px;display:grid;position:relative;box-shadow:0 0 0 2px #6e5137,0 18px 34px #08050385,inset 0 1px #fffae0b8,inset 0 -14px 24px #6b492529}.forge-scene-card:before{content:"";pointer-events:none;border:1px solid #fff4c66b;border-radius:5px;position:absolute;inset:8px}.forge-scene-stage{aspect-ratio:1.5;border:2px solid var(--ui-ink);background:radial-gradient(circle at 50% 58%,#ffe47c2e,#0000 30%),linear-gradient(#fff5c71a,#2f1b1014),url(/assets/ui/forge/forge-stage.webp) 50%/cover no-repeat;border-radius:6px 6px 3px 3px;width:100%;height:auto;position:relative;overflow:hidden;box-shadow:inset 0 1px #fff7da85,inset 0 -18px 30px #26150d73}.forge-scene-stage:before{content:"";border:2px solid #432d1b52;border-radius:999px;display:none;position:absolute;inset:12px;transform:scaleX(1.22)}.forge-scene-heat{filter:blur(2px);width:170px;height:112px;animation:forge-heat-pulse .78s var(--ease) infinite;background:radial-gradient(circle,#ffef7ab8,#ff7b2157 44%,#0000 72%);border-radius:999px;position:absolute;bottom:32px;left:50%;transform:translate(-50%)}.forge-scene-ring{border:4px solid #ffe4729e;border-top-color:#ffffe1eb;border-radius:50%;width:116px;height:116px;animation:1.3s linear infinite forge-ring-spin;position:absolute;top:43px;left:50%;transform:translate(-50%);box-shadow:0 0 18px #ffd1476b,inset 0 0 18px #ff7a2347}.forge-scene-item{z-index:2;object-fit:cover;border:3px solid var(--rarity-color,var(--ui-gold));width:92px;height:92px;box-shadow:0 0 0 2px var(--ui-ink), 0 0 18px var(--rarity-shadow,#ffd66075), inset 0 1px 0 #fff6db38;animation:forge-item-strike .78s var(--ease) infinite;background:#2c2119;border-radius:7px;position:absolute;top:94px;left:50%;transform:translate(-50%)rotate(-2deg)}.forge-scene-hammer{z-index:4;object-fit:contain;filter:drop-shadow(0 5px #1c110a75)drop-shadow(0 0 10px #ffbe4647);transform-origin:58% 38%;width:146px;height:auto;animation:.78s cubic-bezier(.42,0,.2,1) infinite forge-hammer-swing;position:absolute;top:18px;left:50%}.forge-scene-impact{z-index:3;opacity:0;width:36px;height:36px;animation:forge-impact-ring .78s var(--ease) infinite;border:4px solid #fff4a6e0;border-radius:999px;position:absolute;top:138px;left:50%;transform:translate(-50%,-50%)scale(.2);box-shadow:0 0 16px #ffcd4bbf,inset 0 0 12px #ff682275}.forge-scene-sparks{z-index:5;width:10px;height:10px;position:absolute;top:140px;left:50%;transform:translate(-50%)}.forge-scene-sparks i{opacity:0;width:7px;height:7px;animation:forge-spark .78s var(--ease) infinite;background:#ffe983;border:1px solid #3a1f0cbf;border-radius:999px;position:absolute;top:0;left:0;transform:translate(0)scale(.2);box-shadow:0 0 10px #ffbe3ae6}.forge-scene-sparks i:first-child{--spark-x:-70px;--spark-y:-42px}.forge-scene-sparks i:nth-child(2){--spark-x:62px;--spark-y:-48px;animation-delay:45ms}.forge-scene-sparks i:nth-child(3){--spark-x:-36px;--spark-y:-72px;animation-delay:90ms}.forge-scene-sparks i:nth-child(4){--spark-x:74px;--spark-y:-18px;animation-delay:.13s}.forge-scene-sparks i:nth-child(5){--spark-x:10px;--spark-y:-82px;animation-delay:.17s}.forge-scene-sparks i:nth-child(6){--spark-x:-64px;--spark-y:10px;animation-delay:.21s}.forge-scene-sparks i:nth-child(7){--spark-x:44px;--spark-y:16px;animation-delay:.25s}.forge-scene-copy{color:#3b2b1f;border:3px solid var(--ui-ink);background:linear-gradient(#fff8def0,#dbbf81f5),repeating-linear-gradient(0deg,#4e39270b 0 1px,#0000 1px 8px);border-top-width:0;border-radius:0 0 6px 6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 8px;min-height:72px;margin-top:-1px;padding:8px 12px 9px;display:grid;position:relative;box-shadow:inset 0 1px #fffae09e,inset 0 -10px 18px #7a54291f}.forge-scene-copy small,.forge-scene-copy strong,.forge-scene-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.forge-scene-copy small{color:#6b4b2f;grid-column:1/-1;font-size:clamp(.72rem,1.2vh,.82rem);font-weight:900}.forge-scene-copy strong{color:#7b2a17;font-family:var(--font-display);-webkit-text-stroke:1px #20191533;paint-order:stroke fill;font-size:clamp(1.34rem,2.55vh,1.72rem);font-weight:900;line-height:1.05}.forge-scene-copy span{color:#fff4cf;text-align:center;border:2px solid var(--ui-ink);background:linear-gradient(#6e5032,#3f2a1b);border-radius:999px;justify-self:end;min-width:80px;padding:4px 10px;font-size:clamp(.9rem,1.7vh,1.04rem);font-weight:950;box-shadow:inset 0 1px #ffecb73d}.forge-scene-success .forge-scene-stage{animation:forge-success-flash .76s var(--ease) both}.forge-scene-success .forge-scene-item{animation:forge-item-success .76s var(--ease) both}.forge-scene-success .forge-scene-impact{animation:forge-result-burst .82s var(--ease) both}.forge-scene-success .forge-scene-hammer{animation:none;transform:translate(-70px,92px)rotate(-8deg)scale(.96)}.forge-scene-success .forge-scene-copy strong{color:#2f8c3a}.forge-scene-failed .forge-scene-stage{animation:forge-failed-shake .52s var(--ease) both}.forge-scene-failed .forge-scene-item{filter:grayscale(.65)brightness(.78);animation:forge-item-failed .62s var(--ease) both}.forge-scene-failed .forge-scene-ring{opacity:.18;animation:none}.forge-scene-failed .forge-scene-hammer{animation:none;transform:translate(-66px,96px)rotate(4deg)scale(.94)}.forge-scene-failed .forge-scene-sparks i{animation:none}.forge-scene-failed .forge-scene-copy strong{color:#a92822}@keyframes forge-card-in{0%{opacity:0;transform:translateY(10px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes forge-hammer-swing{0%,to{transform:translate(42px,-18px)rotate(-38deg)scale(.92)}42%{transform:translate(-70px,92px)rotate(-8deg)scale(.96)}54%{transform:translate(-70px,92px)rotate(-8deg)scale(.96)}78%{transform:translate(12px,20px)rotate(-24deg)scale(.92)}}@keyframes forge-item-strike{0%,38%,to{transform:translate(-50%)rotate(-2deg)scale(1)}46%{transform:translate(-50%)rotate(2deg)scale(1.08,.94)}}@keyframes forge-heat-pulse{0%,to{opacity:.62;transform:translate(-50%)scale(.94)}46%{opacity:1;transform:translate(-50%)scale(1.12)}}@keyframes forge-ring-spin{to{transform:translate(-50%)rotate(360deg)}}@keyframes forge-impact-ring{0%,40%{opacity:0;transform:translate(-50%,-50%)scale(.2)}48%{opacity:1;transform:translate(-50%,-50%)scale(.9)}to{opacity:0;transform:translate(-50%,-50%)scale(2.5)}}@keyframes forge-spark{0%,38%{opacity:0;transform:translate(0)scale(.2)}46%{opacity:1;transform:translate(0)scale(1)}to{opacity:0;transform:translate(var(--spark-x), var(--spark-y)) scale(.5)}}@keyframes forge-success-flash{0%{filter:brightness()}38%{filter:brightness(1.5)saturate(1.2)}to{filter:brightness(1.08)}}@keyframes forge-item-success{0%{transform:translate(-50%)scale(1)}44%{box-shadow:0 0 0 2px var(--ui-ink), 0 0 28px #ffe568f2, 0 0 46px var(--rarity-shadow,#ffd66085);transform:translate(-50%)scale(1.22)rotate(4deg)}to{transform:translate(-50%)scale(1.08)rotate(0)}}@keyframes forge-item-failed{0%,to{transform:translate(-50%)rotate(-2deg)}20%{transform:translate(calc(-50% - 8px))rotate(-7deg)}40%{transform:translate(calc(7px - 50%))rotate(6deg)}60%{transform:translate(calc(-50% - 4px))rotate(-4deg)}}@keyframes forge-result-burst{0%{opacity:0;transform:translate(-50%,-50%)scale(.2)}35%{opacity:1;transform:translate(-50%,-50%)scale(2.8)}to{opacity:0;transform:translate(-50%,-50%)scale(4.2)}}@keyframes forge-failed-shake{0%,to{transform:translate(0)}18%{transform:translate(-7px)}36%{transform:translate(6px)}54%{transform:translate(-4px)}72%{transform:translate(3px)}}@media (height<=700px){.forge-scene-card{width:min(86vw,304px);padding:6px}.forge-scene-stage{height:auto}.forge-scene-item{width:74px;height:74px;top:78px}.forge-scene-ring{width:96px;height:96px;top:70px}.forge-scene-hammer{width:124px}.forge-scene-impact,.forge-scene-sparks{top:113px}.forge-scene-copy{min-height:64px;padding:7px 10px}}@media (prefers-reduced-motion:reduce){.forge-scene-card,.forge-scene-stage,.forge-scene-heat,.forge-scene-ring,.forge-scene-item,.forge-scene-hammer,.forge-scene-impact,.forge-scene-sparks i{animation:none}}.tower-panel{flex-direction:column;gap:12px;display:flex}.tower-challenge{width:100%}.tower-ready{color:#8fdf58}.tower-short{color:var(--ui-red-bright)}.cosmetic-locked{color:var(--ui-ink-soft);text-align:right;max-width:120px;font-size:.74rem;font-weight:700}.tower-boss-preview{border:3px solid var(--ui-ink);background:var(--ui-stone-dark);border-radius:12px;align-items:center;gap:12px;padding:8px;display:flex}.tower-boss-preview img{object-fit:cover;border:2px solid var(--ui-ink);border-radius:8px;width:72px;height:72px}.tower-boss-preview small{color:var(--ui-parchment-light);font-size:.74rem}.tower-boss-preview-main{flex:1;min-width:0}.tower-boss-preview strong{color:#fff0cf;font-family:var(--font-display);text-overflow:ellipsis;white-space:nowrap;font-size:1.05rem;display:block;overflow:hidden}.tower-boss-traits{border:3px solid var(--ui-ink);background:var(--ui-stone-dark);cursor:pointer;text-align:left;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px 10px;width:100%;padding:8px 12px;transition:filter .14s ease-out;display:flex}.tower-boss-traits:hover{filter:brightness(1.08)}.tower-boss-traits:active{filter:brightness(.94)}.tower-boss-traits-label{font-family:var(--font-display);color:#fff0cf;font-size:.9rem}.tower-boss-traits-pips{flex-wrap:wrap;gap:4px;display:flex}.tower-boss-traits-hint{color:var(--ui-parchment-light);margin-left:auto;font-size:.72rem}@media (prefers-reduced-motion:reduce){.tower-boss-traits{transition:none}}.tower-fight-overlay{z-index:var(--z-modal);padding:max(14px, env(safe-area-inset-left));background:#0c0a089e;place-items:center;display:grid;position:absolute;inset:0}.tower-fight-card{border:3px solid var(--ui-ink);background:linear-gradient(180deg, var(--ui-parchment-light), var(--ui-parchment));width:min(100%,380px);box-shadow:0 10px 28px var(--ui-panel-shadow);border-radius:14px;flex-direction:column;align-items:center;gap:10px;padding:14px;display:flex}.tower-fight-stage{place-items:center;width:100%;display:grid;position:relative}.tower-fight-boss{object-fit:contain;filter:drop-shadow(0 6px 10px #08060480);width:168px;height:168px;transition:filter .32s cubic-bezier(.2,0,0,1),opacity .32s cubic-bezier(.2,0,0,1)}.tower-fight-stage.is-defeated .tower-fight-boss{filter:grayscale(.85)brightness(.7);opacity:.55}.tower-fight-floats{pointer-events:none;position:absolute;inset:0}.tower-fight-dmg{color:#ffe97f;font-family:var(--font-display);-webkit-text-stroke:3px var(--ui-ink);paint-order:stroke fill;text-shadow:0 2px 0 var(--ui-ink);font-size:1.4rem;font-weight:900;animation:.9s cubic-bezier(.2,0,0,1) forwards tower-dmg-rise;position:absolute;top:28%;left:50%}.tower-fight-dmg.is-miss{color:#dbe7ef;text-shadow:0 2px 0 var(--ui-ink), 0 0 12px #88c4dc59}@keyframes tower-dmg-rise{0%{opacity:0;transform:translate(-50%)scale(.7)}18%{opacity:1;transform:translate(-50%,-10px)scale(1.05)}to{opacity:0;transform:translate(-50%,-46px)scale(.96)}}.tower-fight-name{font-family:var(--font-display);color:var(--ui-ink);font-size:1.05rem}.tower-fight-hp{border:3px solid var(--ui-ink);background:#3a241f;border-radius:999px;width:100%;height:20px;position:relative;overflow:hidden}.tower-fight-hp i{transform-origin:0;background:linear-gradient(#ef5a4a,#b62824 70%,#631816);transition:transform .22s cubic-bezier(.2,0,0,1);position:absolute;inset:0}.tower-fight-hp span{color:#fff4cf;text-shadow:0 1px 0 var(--ui-ink);place-items:center;font-size:.72rem;font-weight:800;display:grid;position:absolute;inset:0}.tower-fight-hp.is-player i{background:linear-gradient(#5fd36a,#2f9e3e 70%,#1f6b2c)}.tower-fight-hp.is-player.is-low i{background:linear-gradient(#ef5a4a,#b62824 70%,#631816)}.tower-fight-hp.is-player.is-low{animation:.7s ease-in-out infinite tower-hp-low-pulse}@keyframes tower-hp-low-pulse{0%,to{box-shadow:0 0 #ef5a4a00}50%{box-shadow:0 0 10px 1px #ef5a4aa6}}.tower-fight-result{text-align:center;flex-direction:column;align-items:center;gap:2px;min-height:40px;display:flex}.tower-fight-result strong{font-family:var(--font-display);font-size:1.1rem}.tower-fight-result.is-win strong{color:#1f7b35}.tower-fight-result.is-lose strong{color:#8f2a20}.tower-fight-result span{color:var(--ui-ink-soft);font-size:.82rem}.tower-fight-actions{gap:8px;width:100%;display:flex}.tower-fight-actions button{flex:1}.tower-fight-skill{pointer-events:none;z-index:2;place-items:center;display:grid;position:absolute;inset:0}.tower-fight-skill img.skill-sprite-fx{width:150px;height:150px;position:static;inset:auto;transform:none}.tower-fight-skill.skill-effect{inset:0}.tower-fight-skillname{color:#ffe97f;font-family:var(--font-display);white-space:nowrap;-webkit-text-stroke:2px var(--ui-ink);paint-order:stroke fill;text-shadow:0 2px 0 var(--ui-ink);font-size:.95rem;font-weight:800;animation:.9s cubic-bezier(.2,0,0,1) forwards tower-dmg-rise;position:absolute;top:4%;left:50%;transform:translate(-50%)}.tower-fight-skillname.element-fire{color:#ffb27a}.tower-fight-skillname.element-water{color:#8fd0ff}.tower-fight-skillname.element-wind{color:#9ff0c8}.tower-fight-skillname.element-earth{color:#ffd98a}@media (prefers-reduced-motion:reduce){.tower-fight-dmg,.tower-fight-skillname{opacity:1;animation:none}.tower-fight-hp.is-player.is-low{animation:none}.tower-fight-hp i,.tower-fight-boss{transition:none}}.guild-panel{gap:8px;min-height:0;display:grid}.guild-tabs{grid-template-columns:repeat(4,minmax(0,1fr))}.guild-create{background:var(--ui-stone-dark);border:3px solid var(--ui-ink);color:var(--ui-parchment-light);border-radius:12px;gap:4px;padding:10px;display:grid}.guild-create strong{font-family:var(--font-display);color:#fff0cf}.guild-create-row{align-items:center;gap:6px;display:flex}.guild-create-row input{min-width:0;min-height:38px;color:var(--ui-ink);background:var(--ui-parchment-light);border:3px solid var(--ui-ink);border-radius:8px;flex:1;padding:0 10px;font-family:inherit}.guild-section-title{font-family:var(--font-display);color:var(--ui-ink);margin-top:2px;font-size:.92rem}.guild-empty{text-align:center;color:var(--ui-ink-soft);margin:0;padding:10px;font-size:.82rem}.guild-emblem{background:var(--ui-stone-dark);border:3px solid var(--ui-ink);border-radius:8px;place-items:center;width:46px;height:46px;font-size:1.4rem;display:grid}.guild-boss{gap:8px;display:grid}.guild-boss-hp{border:3px solid var(--ui-ink);background:#2a0f0f;border-radius:999px;height:26px;position:relative;overflow:hidden}.guild-boss-hp i{transform-origin:0;background:linear-gradient(#ff6f6f,#c62828 70%,#7d1414);transition:transform .24s cubic-bezier(.2,0,0,1);position:absolute;inset:0}.guild-boss-hp span{color:#fff4cf;text-shadow:0 1px 0 var(--ui-ink);place-items:center;font-size:.74rem;font-weight:900;display:grid;position:absolute;inset:0}.guild-hint{text-align:center;color:var(--ui-ink-soft);margin:0;font-size:.76rem}.guild-rank-list{gap:4px;display:grid}.guild-rank-row{background:linear-gradient(#d7c8aa,#a99169);border:2px solid #20191599;border-radius:4px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:8px;padding:6px 9px;display:grid}.guild-rank-row b{color:#8a1c18;font-family:var(--font-display)}.guild-rank-row span{text-overflow:ellipsis;white-space:nowrap;color:#3b2b1f;min-width:0;overflow:hidden}.guild-rank-row strong{color:#5a271e;font-variant-numeric:tabular-nums}.guild-role-row{justify-content:flex-end;margin-top:4px;display:flex}.guild-manage{gap:8px;display:grid}.guild-announce{color:#3a2708;background:linear-gradient(180deg, #f1cd67, var(--ui-gold) 62%, #8f581d);border:3px solid var(--ui-ink);border-radius:12px;margin:0;padding:9px 12px;font-size:.82rem}.guild-fight-countdown b{color:var(--ui-gold-light);font-variant-numeric:tabular-nums;margin-left:4px}.guild-fight-countdown.is-low b{color:#ff9b9b}
