:root{--hud-touch-slot-size:2.875rem;--z-game-window:650;--surface-base:#0a0e15;--surface-panel:#10131b;--surface-panel-alt:#181c23;--surface-elevated:#202737;--surface-highlight:#353941;--border-subtle:#1f2533;--border-chrome:#2d3446;--border-bevel-light:#ffffff14;--border-bevel-dark:#000000e6;--accent-primary:#d4a246;--accent-gold-hover:#e8b75c;--energy-cyan:#22d3ee;--vital-ruby:#f43f5e;--vital-emerald:#34d179;--aether-violet:#9c62ea;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-muted:#64748b;--text-gold:#fbbf24;--text-cyan:#38bdf8;--font-display:"Space Grotesk", system-ui, sans-serif;--font-mono:"Share Tech Mono", "JetBrains Mono", ui-monospace, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--elevation-slot-bg:radial-gradient(circle, #0f1218 0%, #080a0e 100%);--elevation-slot-shadow:inset 1px 1px 3px #000000e6;--elevation-slot-border:1px solid #1f2533;--elevation-panel-bg:linear-gradient(180deg, #181c26 0%, #10131b 100%);--elevation-panel-shadow:0 8px 24px #000c, inset 1px 1px 0 #ffffff14;--elevation-panel-border:1px solid #2d3446;--elevation-active-border:#d4a246;--elevation-active-shadow:0 0 10px #d4a24666, inset 0 0 4px #d4a24633;--cta-bg:linear-gradient(180deg, #e69c24 0%, #c97f10 100%);--cta-border:1px solid #f59e0b;--cta-shadow:0 0 14px #d4a24680;--cta-text:#0a0e15;--rf-panel-bg:#212629;--rf-panel-edge:#212829;--rf-panel-bevel:#797f81;--rf-inset-bg:#101313;--rf-inset-edge-dark:#000408;--rf-inset-edge-light:#4a494a;--rf-field-bg:#000;--rf-field-divider:#080808;--rf-field-highlight:#525552;--rf-bar-metal:linear-gradient(180deg, #353b3e 0%, #2a2f32 14%, #212629 50%, #1a1e20 82%, #141719 100%);--rf-bar-edge-light:#5f6669;--rf-bar-edge-dark:#000;--rf-bar-seam:#0b0d0e;--rf-bar-well-bg:#080808;--rf-bar-well-top:#3a3f42;--rf-bar-well-bottom:#4a494a;--rf-bar-slot-rim:#6a7073;--rf-bar-slot-inner:#101313;--rf-bar-slot-bg:radial-gradient(ellipse at 50% 58%, #2c3133 0%, #24282a 40%, #181b1c 72%, #0c0e0e 100%);--rf-bar-exp-plate:#101313;--rf-bar-exp-label:#c9c6bd;--rf-bar-track:linear-gradient(180deg, #050606 0%, #050606 38%, #161818 38%, #121414 100%);font-family:var(--font-display);letter-spacing:.01em;--app-viewport-left:0px;--app-viewport-top:0px;--app-viewport-width:100vw;--app-viewport-height:100dvh;--lightningcss-light: ;--lightningcss-dark:initial;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;color:var(--text-secondary);background:var(--surface-base);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.45}*,:before,:after{box-sizing:border-box}body{width:100%;height:var(--app-viewport-height);background:var(--surface-base);margin:0;padding:0;overflow:hidden}#root{width:100%;height:var(--app-viewport-height);text-align:left;box-sizing:border-box;background:var(--surface-base);flex-direction:column;max-width:100%;margin:0;display:flex}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);color:var(--text-primary);margin:0;font-weight:700}h1{letter-spacing:.04em;text-transform:uppercase;font-size:28px}h2{letter-spacing:.06em;text-transform:uppercase;font-size:14px;font-weight:700}code,.mono,.data-value,.counter,.badge{font-family:var(--font-mono);letter-spacing:0;font-size:13px;font-weight:700}.micro-label{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--surface-base)}::-webkit-scrollbar-thumb{background:var(--border-chrome);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--surface-highlight)}::selection{color:var(--text-primary);background:#d4a2464d}.btn{justify-content:center;align-items:center;gap:var(--space-2);font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap;border-radius:2px;font-weight:700;line-height:1;transition:filter .2s,transform .1s,background .2s,border-color .2s,box-shadow .2s;display:inline-flex;position:relative}.btn:active{transform:scale(.98)}.btn:disabled{cursor:default;opacity:.5;transform:none;filter:none!important}.btn-sm{padding:var(--space-1) var(--space-3);height:28px;font-size:11px}.btn-md{padding:var(--space-2) var(--space-4);height:36px;font-size:13px}.btn-lg{padding:var(--space-3) var(--space-6);height:44px;font-size:14px}.btn-primary{color:#0a0e15;background:linear-gradient(#e69c24 0%,#c97f10 100%);border:1px solid #f59e0b;box-shadow:0 0 14px #d4a24680}.btn-primary:hover:not(:disabled){filter:brightness(1.15)}.btn-primary:active:not(:disabled){box-shadow:0 0 8px #d4a2464d}.btn-secondary{background:var(--surface-panel);border:1px solid var(--border-chrome);color:var(--text-secondary);box-shadow:inset 1px 1px 0 var(--border-bevel-light)}.btn-secondary:hover:not(:disabled){background:var(--surface-elevated);color:var(--text-primary);border-color:var(--surface-highlight)}.btn-ghost{color:var(--text-secondary);background:0 0;border:1px solid #0000}.btn-ghost:hover:not(:disabled){color:var(--text-primary);background:#ffffff0a}.btn-danger{border:1px solid var(--vital-ruby);color:var(--vital-ruby);background:#f43f5e1f}.btn-danger:hover:not(:disabled){background:var(--vital-ruby);color:#fff}.btn-icon{align-items:center;font-size:1.15em;line-height:0;display:inline-flex}.btn-icon>svg{width:1em;height:1em}.btn-spinner{border:2px solid;border-top-color:#0000;border-radius:50%;width:1em;height:1em;animation:.6s linear infinite btn-spin;display:inline-block}@keyframes btn-spin{to{transform:rotate(360deg)}}.btn-loading .btn-label{opacity:.7}.card{border-radius:2px;flex-direction:column;display:flex;overflow:hidden}.card-draggable{z-index:var(--z-game-window,650);cursor:default;min-width:200px;position:fixed}.card-draggable .card-header{cursor:grab}.card-draggable .card-header:active{cursor:grabbing}.card-panel{background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border)}.card-elevated{background:var(--elevation-panel-bg);border:1px solid var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.card-recessed{background:var(--elevation-slot-bg);box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border)}.card-header{height:32px;padding:0 var(--space-3);background:#1b212d;border-bottom:1px solid #2a3244;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.card-header-left{align-items:center;gap:var(--space-2);min-width:0;display:flex}.card-header-right{align-items:center;gap:var(--space-1);flex-shrink:0;display:flex}.card-led{background:var(--energy-cyan);border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 8px #22d3eecc}.card-title{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:700;overflow:hidden}.card-close{width:20px;height:20px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;padding:0;font-size:12px;line-height:1;transition:color .15s,background .15s;display:flex}.card-close:hover{color:var(--text-primary);background:#ffffff14}.card-header-rf{--rf-header-scale:1;--rf-header-height:calc(22px * var(--rf-header-scale));--rf-header-cap:calc(72px * var(--rf-header-scale));height:var(--rf-header-height);padding:0 var(--rf-header-cap);background:url(/game-gui/card/cardheader_left.png) left top / var(--rf-header-cap) 100% no-repeat, url(/game-gui/card/cardheader_right.png) right top / var(--rf-header-cap) 100% no-repeat, url(/game-gui/card/cardheader_mid.png) left top / calc(164px * var(--rf-header-scale)) 100% repeat-x;image-rendering:auto;border-bottom:none;justify-content:center;position:relative}@media (pointer:coarse){.card-header-rf{--rf-header-scale:1}}@media (width<=420px){.card-header-rf{--rf-header-scale:1}}.card-title-rf{min-width:0;font-size:calc(11px * var(--rf-header-scale));letter-spacing:.04em;color:#e8dcc0;text-shadow:0 1px 1px #000}.card-header-rf-actions{top:0;bottom:0;right:var(--rf-header-cap);align-items:center;gap:var(--space-1);display:flex;position:absolute}.card-close-rf{top:calc(4px * var(--rf-header-scale));right:calc(4px * var(--rf-header-scale));width:calc(24px * var(--rf-header-scale));height:calc(16px * var(--rf-header-scale));cursor:pointer;background:0 0;border:none;border-radius:40%;padding:0;position:absolute}@media (width<=720px),(pointer:coarse){.card-close-rf{width:40px;height:32px;top:50%;right:0;transform:translateY(-50%)}}.card-close-rf:hover{background:#8cbeff2e}.card-close-rf:active{background:#00000040}.card-close-rf:focus-visible{outline:1px solid var(--energy-cyan)}.card-frame-rf{--surface-panel:var(--rf-inset-bg);--surface-panel-alt:var(--rf-inset-bg);--surface-elevated:var(--rf-field-bg);--surface-highlight:#2e3437;--border-subtle:var(--rf-inset-edge-dark);--border-chrome:var(--rf-inset-edge-light);--elevation-slot-bg:var(--rf-field-bg);--elevation-slot-border:1px solid var(--rf-inset-edge-dark);--elevation-slot-shadow:inset 0 0 0 1px var(--rf-field-divider);--text-primary:#e3e1da;--text-secondary:#a7abac;--text-muted:#707678;background:var(--rf-panel-bg);box-shadow:inset 0 0 0 1px var(--rf-inset-edge-dark), inset 0 0 0 3px var(--rf-panel-edge), inset 0 0 0 4px var(--rf-panel-bevel), 0 8px 24px #000c;border:none;border-radius:0}.card-frame-rf>.card-header-rf{margin:6px 6px 0}.card-frame-rf>.card-body{padding:var(--space-3) calc(var(--space-2) + 4px) calc(var(--space-2) + 4px)}.card-body{padding:var(--space-4);flex:auto;min-height:0}.card-footer{padding:var(--space-2) var(--space-3);border-top:1px solid var(--border-subtle);flex-shrink:0;justify-content:flex-end;align-items:center;display:flex}.dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);padding:var(--space-6);background:#0a0e15bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{background:var(--elevation-panel-bg);width:100%;max-width:480px;max-height:min(80vh,600px);box-shadow:0 12px 40px #000000e6, inset 1px 1px 0 var(--border-bevel-light);border:1px solid var(--border-chrome);border-radius:2px;outline:none;flex-direction:column;animation:.2s ease-out dialog-enter;display:flex}@keyframes dialog-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.dialog-header{height:36px;padding:0 var(--space-3);background:#1b212d;border-bottom:1px solid #2a3244;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.dialog-header-left{align-items:center;gap:var(--space-2);min-width:0;display:flex}.dialog-led{background:var(--energy-cyan);border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 8px #22d3eecc}.dialog-title{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;overflow:hidden}.dialog-close{width:24px;height:24px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:2px;justify-content:center;align-items:center;padding:0;font-size:13px;line-height:1;transition:color .15s,background .15s;display:flex}.dialog-close:hover{color:var(--text-primary);background:#ffffff14}.dialog-body{padding:var(--space-4);color:var(--text-secondary);font-family:var(--font-display);flex:auto;font-size:13px;line-height:1.5;overflow-y:auto}.dialog-footer{justify-content:flex-end;align-items:center;gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--border-subtle);flex-shrink:0;display:flex}.loading-screen{left:var(--app-viewport-left,0);top:var(--app-viewport-top,0);width:var(--app-viewport-width,100vw);height:var(--app-viewport-height,100dvh);z-index:1000;background-color:var(--surface-base);justify-content:center;align-items:flex-end;display:flex;position:fixed;overflow:hidden}.loading-screen-art{background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.loading-screen-scrim{background:linear-gradient(180deg, #0a0e1500 0%, #0a0e1500 60%, #0a0e15bf 88%, var(--surface-base) 100%);position:absolute;inset:0}.loading-screen-content{width:min(32rem, calc(100vw - 2 * var(--space-6)));margin-bottom:max(var(--space-6), env(safe-area-inset-bottom));gap:var(--space-2);flex-direction:column;display:flex;position:relative}.loading-screen-bar-track{background:var(--elevation-slot-bg);height:14px;box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border);border-radius:2px;position:relative;overflow:hidden}.loading-screen-bar-fill{background:var(--cta-bg);height:100%;box-shadow:var(--cta-shadow);position:relative}.loading-screen-bar-fill:after{content:"";background:linear-gradient(90deg,#0000 0%,#ffffff59 50%,#0000 100%) 0 0/200% 100%;animation:1.6s ease-in-out infinite loading-screen-shimmer;position:absolute;inset:0}@keyframes loading-screen-shimmer{0%{background-position:150% 0}to{background-position:-50% 0}}.loading-screen-footer{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.06em;justify-content:space-between;align-items:baseline;display:flex}.loading-screen-label{color:var(--text-secondary);font-size:12px}.loading-screen-percent{font-family:var(--font-mono);color:var(--text-gold);letter-spacing:0;font-size:13px;font-weight:700}@media (width<=480px){.loading-screen-content{width:calc(100vw - 2 * var(--space-4));margin-bottom:max(var(--space-4), env(safe-area-inset-bottom))}}.quantity-pad-backdrop{box-sizing:border-box;z-index:900;padding:max(var(--space-2), env(safe-area-inset-top)) max(var(--space-2), env(safe-area-inset-right)) max(var(--space-2), env(safe-area-inset-bottom)) max(var(--space-2), env(safe-area-inset-left));pointer-events:auto;background:#00000073;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.quantity-pad{box-sizing:border-box;gap:var(--space-2);width:min(17rem,100%);max-height:100%;padding:var(--space-3);border:1px solid var(--rf-panel-edge);border-top-color:var(--rf-bar-edge-light);background:var(--rf-bar-metal);flex-direction:column;display:flex;overflow-y:auto;box-shadow:0 12px 32px #000000b3}.quantity-pad-item{align-items:center;gap:var(--space-2);display:flex}.quantity-pad-icon{border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);flex:none;width:40px;height:40px}.quantity-pad-icon img{width:100%;height:100%;display:block}.quantity-pad-name{overflow-wrap:anywhere;min-width:0;color:var(--text-primary);font-size:.85rem;font-weight:600}.quantity-pad-display{min-width:0;padding:var(--space-1) var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);flex-direction:column;align-items:flex-end;display:flex}.quantity-pad-value{color:var(--text-primary);font:700 1.6rem var(--font-mono);line-height:1.1}.quantity-pad-hint{overflow-wrap:anywhere;text-align:right;max-width:100%;color:var(--text-secondary);font:.7rem var(--font-mono)}.quantity-pad-display-invalid .quantity-pad-value{color:var(--vital-ruby)}.quantity-pad-keys{gap:var(--space-1);grid-template-columns:repeat(3,1fr);display:grid}.quantity-pad-key,.quantity-pad-max{border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);min-height:2.4rem;color:var(--text-primary);font:600 1rem var(--font-mono);cursor:pointer;background:linear-gradient(#2b3136 0%,#1c2024 100%)}.quantity-pad-key:hover,.quantity-pad-max:hover:not(:disabled){border-color:var(--elevation-active-border)}.quantity-pad-key:active{background:var(--surface-elevated)}.quantity-pad-max{color:var(--text-gold);font-size:.85rem}.quantity-pad-max:disabled{opacity:.4;cursor:default}.quantity-pad-actions{justify-content:flex-end;gap:var(--space-2);display:flex}@media (width<=720px),(pointer:coarse){.quantity-pad-key,.quantity-pad-max{min-height:3rem}.quantity-pad-actions .btn{min-height:2.5rem}}@media (height<=520px) and (orientation:landscape){.quantity-pad{align-items:center;gap:var(--space-1) var(--space-2);width:min(28rem,100%);padding:var(--space-2);grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);grid-template-areas:"item keys""display keys""max keys""actions keys";display:grid}.quantity-pad-item{grid-area:item}.quantity-pad-display{grid-area:display}.quantity-pad-keys{grid-area:keys}.quantity-pad-max{grid-area:max}.quantity-pad-actions{grid-area:actions}.quantity-pad-key,.quantity-pad-max{min-height:2.5rem}.quantity-pad-actions{justify-content:space-between}.quantity-pad-actions .btn{min-width:0;min-height:2.5rem;padding-inline:var(--space-1);flex:1}}.popup-backdrop{z-index:900;padding:var(--space-3);pointer-events:auto;background:#0a0e1573;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.popup.card{width:min(20rem,100%);max-height:calc(100dvh - 2 * var(--space-3));position:relative}.popup>.card-body{min-height:0;overflow-y:auto}.popup-content{gap:var(--space-3);padding:var(--space-3);color:var(--text-primary);font-size:.85rem;display:grid}.popup-message{white-space:pre-line;text-align:center;margin:0;line-height:1.45}.popup-actions{justify-content:center;gap:var(--space-2);display:flex}.popup-actions>*{min-width:5.5rem;min-height:2.75rem}.character-create-screen{pointer-events:none;position:fixed;inset:0}.character-create-back{pointer-events:auto;top:var(--space-4);left:var(--space-4);position:absolute}.character-create-title{top:var(--space-4);color:var(--text-primary);font:700 14px var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 6px #000c;padding:var(--space-2) var(--space-4);border:1px solid var(--border-chrome);pointer-events:none;background:#10131ba6;border-radius:2px;position:absolute;left:50%;transform:translate(-50%)}.character-create-sidebar{pointer-events:auto;top:calc(var(--space-4) + 44px);left:var(--space-4);bottom:var(--space-4);width:18rem;position:absolute;overflow-y:auto}.character-create-name-label{gap:var(--space-1);font:600 11px var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);margin-bottom:var(--space-4);flex-direction:column;display:flex}.character-create-name-label input{padding:var(--space-2) var(--space-3);border:1px solid var(--border-chrome);background:var(--surface-panel-alt);color:var(--text-primary);font:500 .9rem var(--font-display);text-transform:none;letter-spacing:normal;border-radius:2px}.character-create-section-label{color:var(--text-secondary);font:600 11px var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1)}.character-create-categories{gap:var(--space-3);flex-direction:column;display:flex}.character-create-variant-row{gap:var(--space-2);display:flex}.character-create-variant-row .btn{flex:1;padding-left:0;padding-right:0}.character-create-overlay{pointer-events:none;color:var(--text-primary);font:500 .95rem var(--font-display);background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);padding:var(--space-3) var(--space-4);border-radius:4px;position:absolute;top:50%;left:calc(50% + 9rem);transform:translate(-50%,-50%)}.character-create-overlay-error{color:var(--vital-ruby)}.character-create-footer{pointer-events:auto;right:var(--space-4);bottom:var(--space-4);align-items:flex-end;gap:var(--space-2);flex-direction:column;display:flex;position:absolute}.character-create-error{color:var(--vital-ruby);font:500 .8rem var(--font-display);text-align:right;max-width:20rem}.character-create-race-screen{pointer-events:none;position:fixed;inset:0}.character-create-race-back{pointer-events:auto;top:var(--space-4);left:var(--space-4);position:absolute}.character-create-race-title{top:var(--space-4);color:var(--text-primary);font:700 14px var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 6px #000c;padding:var(--space-2) var(--space-4);border:1px solid var(--border-chrome);pointer-events:none;background:#10131ba6;border-radius:2px;position:absolute;left:50%;transform:translate(-50%)}.character-create-race-hint{top:calc(var(--space-4) + 44px);color:var(--text-secondary);font:500 .8rem var(--font-display);padding:var(--space-1) var(--space-3);pointer-events:none;background:#10131b8c;border-radius:999px;position:absolute;left:50%;transform:translate(-50%)}.character-create-race-panel{pointer-events:auto;left:50%;bottom:var(--space-6);align-items:center;gap:var(--space-4);background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);padding:var(--space-3) var(--space-4);border-radius:4px;display:flex;position:absolute;transform:translate(-50%)}.character-create-race-name{min-width:10rem;color:var(--text-primary);font:700 1rem var(--font-display);text-align:center}.buff-dock{top:50%;right:max(var(--space-4), env(safe-area-inset-right));z-index:520;align-items:flex-end;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:absolute;transform:translateY(-50%)}.buff-dock-columns{align-items:flex-start;gap:var(--space-2);display:flex}.buff-bar{flex-flow:column wrap-reverse;gap:4px;max-height:40vh;display:flex}.potion-buff-bar{flex-flow:row;max-height:none}.buff-bar-item{border:1px solid var(--elevation-active-border);background:var(--elevation-slot-bg);width:2rem;height:2rem;box-shadow:var(--elevation-active-shadow);pointer-events:auto;border-radius:2px;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.potion-buff-bar-item{border-color:#67c6b3}.debuff-bar .buff-bar-item{border-color:var(--vital-ruby);box-shadow:0 0 8px #f43f5e66}.buff-bar-icon{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.buff-bar-icon-fallback{background:radial-gradient(circle at 50% 38%,#ffffff0f,#0000 46%)}.buff-bar-timer{z-index:2;color:var(--text-primary);font:800 .6rem var(--font-mono);text-shadow:0 1px 2px #000;line-height:1;position:absolute;bottom:1px;right:1px}@media (width<=720px),(pointer:coarse){.buff-dock{right:max(var(--space-3), env(safe-area-inset-right))}.buff-bar-item{width:1.8rem;height:1.8rem}}.attack-target-panel{pointer-events:auto;top:max(var(--space-4), env(safe-area-inset-top));align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);background:var(--elevation-panel-bg);border:var(--elevation-panel-border);box-shadow:var(--elevation-panel-shadow);border-radius:2px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.attack-target-info{flex-direction:column;gap:4px;min-width:9rem;display:flex}.attack-target-name{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;color:var(--text-primary);font-size:12px;font-weight:700}.attack-target-hp-track{background:var(--elevation-slot-bg);height:8px;box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border);border-radius:2px;overflow:hidden}.attack-target-hp-fill{background:linear-gradient(180deg, var(--vital-ruby) 0%, #b91c3c 100%);height:100%;transition:width .2s ease-out}@media (width<=480px){.attack-target-info{min-width:6.5rem}}.attack-target-debuffs{flex-flow:wrap;max-width:12rem;max-height:none}.attack-target-debuffs .buff-bar-item{width:22px;height:22px}.map-move-window{pointer-events:auto;width:min(16rem, calc(100vw - 2 * var(--space-4)));max-height:60vh;z-index:var(--z-game-window,650);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-move-list{padding:var(--space-2);gap:var(--space-1);flex-direction:column;margin:0;list-style:none;display:flex;overflow-y:auto}.map-move-choice{text-align:left;justify-content:flex-start;width:100%}.chat-channel-trigger{border:0;border-right:1px solid var(--rf-bar-well-top);width:32px;font:600 11px var(--font-display);cursor:pointer;touch-action:manipulation;background:0 0;border-radius:0;flex:0 0 32px;justify-content:center;align-items:center;gap:3px;padding:0;display:inline-flex}.chat-channel-trigger .chat-channel-caret{font-size:7px}.chat-channel-menu{z-index:1200;box-sizing:border-box;overscroll-behavior:contain;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-panel-bg);box-shadow:0 4px 16px var(--rf-bar-edge-dark);pointer-events:auto;touch-action:pan-y;border-radius:4px;flex-direction:column;padding:4px;display:flex;position:fixed;overflow-y:auto}.chat-channel-menu button{min-height:36px;font:600 11px var(--font-display);text-align:left;cursor:pointer;touch-action:manipulation;background:0 0;border:1px solid #0000;border-radius:2px;flex:none;justify-content:space-between;align-items:center;gap:12px;padding:6px 8px;display:flex}.chat-channel-menu small{color:var(--text-secondary);font-size:9px}.chat-channel-menu button[aria-checked=true],.chat-channel-menu button:hover{background:var(--rf-bar-well-bg);border-color:var(--rf-bar-slot-rim)}.chat-channel-menu button:focus-visible,.chat-channel-trigger:focus-visible{outline:1px solid var(--energy-cyan);outline-offset:-1px}@media (pointer:coarse){.chat-channel-trigger,.chat-channel-menu button{min-height:44px}}.chat-box{top:min(12.5rem,32vh);bottom:min(9rem,20vh);left:max(var(--space-4), env(safe-area-inset-left));pointer-events:auto;background:#0a0e152e;border:1px solid #94a3b826;border-radius:2px;flex-direction:column;width:13rem;max-width:min(13rem,62vw);display:flex;position:absolute;overflow:hidden}@media (width<=720px),(pointer:coarse){.chat-box{top:min(9.75rem,32vh);bottom:max(10.75rem, calc(env(safe-area-inset-bottom) + 10.75rem));left:max(var(--space-3), env(safe-area-inset-left));width:min(16rem, calc(100vw - 2 * var(--space-3)));max-width:calc(100vw - 2 * var(--space-3))}}.chat-box-log{min-height:0;padding:var(--space-2);flex-direction:column;flex:auto;gap:2px;display:flex;overflow-y:auto}.chat-box-collapse{top:var(--space-1);right:var(--space-1);z-index:1;border:1px solid var(--border-chrome);width:1.45rem;height:1.45rem;color:var(--text-secondary);pointer-events:auto;background:#10131bcc;border-radius:2px;position:absolute}.chat-box-empty{color:var(--text-muted);font:500 .65rem var(--font-display);text-shadow:0 1px 2px var(--border-bevel-dark);font-style:italic}.chat-box-entry{font:500 .65rem var(--font-display);overflow-wrap:break-word;text-shadow:0 1px 2px var(--border-bevel-dark), 0 0 6px #000000b3;line-height:1.35}.chat-box-sender{font-weight:700}.chat-box-form{border:1px solid var(--rf-bar-slot-rim);background:#10131b73;border-radius:2px;flex:none;gap:0;min-height:32px;margin:4px;padding:0;display:flex}.chat-box-input{min-width:0;padding:.3rem var(--space-1);color:var(--text-primary);font:500 .65rem var(--font-display);background:0 0;border:0;border-radius:2px;flex:1}.chat-box-input::placeholder{color:var(--text-muted)}.chat-box-input:focus{border-color:var(--energy-cyan);outline:none}.chat-box-form:focus-within{border-color:var(--energy-cyan)}@media (pointer:coarse){.chat-box-form{min-height:44px}}.chat-box-send{width:1.8rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;border-radius:2px;flex:none;justify-content:center;align-items:center;transition:color .15s,border-color .15s;display:flex}.chat-box-send:hover:not(:disabled){color:var(--energy-cyan);border-color:var(--energy-cyan)}.chat-box-send:disabled{opacity:.4;cursor:default}.chat-peek{left:max(var(--space-3), env(safe-area-inset-left));bottom:max(10.25rem, calc(env(safe-area-inset-bottom) + 10.25rem));width:min(15rem,62vw);min-height:3.4rem;padding:var(--space-1) var(--space-2);color:var(--text-secondary);pointer-events:auto;text-align:left;background:#0a0e1538;border:0;border-radius:2px;align-items:center;display:flex;position:absolute}.chat-peek-lines{flex-direction:column;gap:4px;width:100%;min-width:0;display:flex}.chat-peek-line,.chat-peek-empty{font:600 .875rem/1.35 var(--font-display);text-shadow:0 1px 2px #000,0 0 3px #000;overflow:hidden}.chat-peek-line{-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box}.chat-peek-empty{color:var(--text-muted);font-style:italic}.chat-box-mobile-expanded .chat-box-entry,.chat-box-mobile-expanded .chat-box-empty{text-shadow:0 1px 2px #000,0 0 3px #000;font-size:.875rem;font-weight:600;line-height:1.4}.chat-box-mobile-expanded .chat-box-log{gap:4px}.chat-box-mobile-expanded .chat-box-input{font-size:16px}.chat-box-mobile-expanded .chat-channel-trigger{font-size:13px}.fps-counter{white-space:nowrap}.fps-counter-good{color:var(--vital-emerald)}.fps-counter-warn{color:var(--accent-primary)}.fps-counter-bad{color:var(--vital-ruby)}.fps-counter-unknown{color:var(--text-muted)}.hud-icon-row{--hud-minimap-top:max(var(--space-4), env(safe-area-inset-top));--hud-minimap-right:max(var(--space-4), env(safe-area-inset-right));--hud-minimap-width:clamp(6.8rem, 15vw, 9rem);--hud-icon-size:2.2rem;top:var(--hud-minimap-top);right:calc(var(--hud-minimap-right) + var(--hud-minimap-width) + var(--space-2));grid-template-columns:repeat(4, var(--hud-icon-size));grid-template-rows:repeat(3, var(--hud-icon-size));gap:var(--space-2);pointer-events:none;display:grid;position:absolute}.hud-icon-btn{pointer-events:auto;width:var(--hud-icon-size);height:var(--hud-icon-size);border:1px solid var(--border-chrome);color:var(--text-secondary);cursor:pointer;background:#10131bb3;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s,border-color .2s;display:flex;position:relative}.hud-icon-btn:hover{background:var(--surface-elevated);color:var(--text-primary);border-color:var(--energy-cyan)}.hud-icon-btn-shortcut{border:1px solid var(--border-chrome);background:var(--surface-elevated);min-width:1rem;color:var(--text-gold);font:700 .6rem var(--font-mono);text-align:center;border-radius:2px;padding:0 .2rem;line-height:1rem;position:absolute;bottom:-.3rem;right:-.3rem}@media (width<=720px),(pointer:coarse){.hud-icon-row{--hud-minimap-top:max(var(--space-3), env(safe-area-inset-top));--hud-minimap-right:max(var(--space-3), env(safe-area-inset-right));--hud-minimap-width:clamp(5.25rem, 20vw, 6.5rem);--hud-icon-size:1.9rem;top:calc(var(--hud-minimap-top) + var(--hud-minimap-width) * 163 / 146 + var(--space-2));right:var(--hud-minimap-right);gap:var(--space-1)}}@media (width<=420px){.hud-icon-row{--hud-minimap-width:clamp(4.75rem, 18vw, 5.5rem)}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.hud-icon-row{top:var(--hud-minimap-top);right:calc(var(--hud-minimap-right) + var(--hud-minimap-width) + var(--space-2))}}.radial-sweep{pointer-events:none;position:absolute;inset:0;overflow:hidden}.radial-sweep-half{width:50%;position:absolute;top:0;bottom:0;overflow:hidden}.radial-sweep-half-left{left:0}.radial-sweep-half-right{right:0}.radial-sweep-panel{transform-origin:0;background:var(--sweep-color,#050608b8);width:150%;height:150%;animation:var(--sweep-ms) linear forwards;position:absolute;top:-25%}.radial-sweep-half-left .radial-sweep-panel{animation-name:radial-sweep-left;left:100%}.radial-sweep-half-right .radial-sweep-panel{animation-name:radial-sweep-right;left:0}@keyframes radial-sweep-left{0%{transform:rotate(180deg)}50%,to{transform:rotate(0)}}@keyframes radial-sweep-right{0%,50%{transform:rotate(360deg)}to{transform:rotate(180deg)}}.shortcut-slot-cooldown{z-index:2;color:var(--text-primary);font:800 clamp(.6rem, 2vw, .78rem) var(--font-mono);text-shadow:0 1px 2px #000;pointer-events:none;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.shortcut-slot-cooldown-text{position:relative}.item-tooltip{box-sizing:border-box;z-index:700;pointer-events:none;gap:var(--space-2);max-height:calc(100dvh - 16px);padding:var(--space-3);background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);border-radius:3px;flex-direction:column;display:flex;position:fixed;overflow-y:auto}.item-tooltip-close{color:var(--text-primary);cursor:pointer;background:0 0;border:none;min-width:32px;min-height:32px;margin-left:auto}.item-tooltip-interactive{pointer-events:auto}.item-tooltip-header{align-items:center;gap:var(--space-2);display:flex}.item-tooltip-icon{object-fit:contain;width:2.25rem;height:2.25rem;image-rendering:pixelated;background:var(--elevation-slot-bg);border:var(--elevation-slot-border);border-radius:2px;flex-shrink:0}.item-tooltip-title{flex-direction:column;gap:2px;min-width:0;display:flex}.item-tooltip-name{color:var(--text-primary);font:700 .8rem var(--font-display);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.item-tooltip-grade{color:var(--energy-cyan);font:600 .6rem var(--font-display);text-transform:uppercase;letter-spacing:.04em}.item-tooltip-rows{gap:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);flex-direction:column;display:flex}.item-tooltip-section{flex-direction:column;gap:3px;display:flex}.item-tooltip-section-title{color:var(--text-muted);font:700 .58rem var(--font-display);text-transform:uppercase;letter-spacing:.06em;opacity:.7}.item-tooltip-description{padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.item-tooltip-description h3{margin:0}.item-tooltip-description p{color:var(--text-secondary);font:500 .68rem var(--font-display);white-space:pre-line;overflow-wrap:anywhere;margin:0;line-height:1.5}.item-tooltip-row{justify-content:space-between;align-items:baseline;gap:var(--space-2);font:500 .68rem var(--font-display);display:flex}.item-tooltip-row-label{color:var(--text-muted)}.item-tooltip-row-value{color:var(--text-secondary);text-align:right}.item-tooltip-bar{padding-top:var(--space-2);border-top:1px solid var(--border-subtle);font:500 .68rem var(--font-display);flex-direction:column;gap:3px;display:flex}.item-tooltip-bar-head{justify-content:space-between;gap:var(--space-2);display:flex}.item-tooltip-bar-value{color:var(--text-secondary);font-family:var(--font-mono)}.item-tooltip-bar-track{background:var(--rf-bar-well-bg);border:1px solid var(--border-subtle);border-radius:2px;height:6px;overflow:hidden}.item-tooltip-bar-fill{height:100%}.item-tooltip-bar-hp{background:var(--vital-ruby)}.item-tooltip-bar-exp{background:var(--energy-cyan)}.item-tooltip-upgrade{padding-top:var(--space-2);border-top:1px solid var(--border-subtle);flex-direction:column;gap:2px;display:flex}.item-tooltip-upgrade-row{align-items:center;gap:var(--space-2);display:flex}.item-tooltip-upgrade-label{color:var(--text-secondary);font:600 .68rem var(--font-display)}.item-tooltip-talics{gap:1px;display:flex}.item-tooltip-talic{justify-content:center;align-items:center;width:14px;height:20px;display:inline-flex}.item-tooltip-talic-filled{background-image:url(/game-gui/icons/item/talic_sheet.png);background-repeat:no-repeat;background-size:280px 20px;background-position:calc(var(--talic-index,0) * -20px - 3px) 0}.item-tooltip-talic-empty{width:10px;height:20px}.item-tooltip-talic-effect{justify-content:space-between;gap:var(--space-2);font:600 .66rem var(--font-display);display:flex}.item-tooltip-talic-effect-name{color:var(--text-secondary)}.item-tooltip-talic-effect-value{color:var(--vital-emerald);font-family:var(--font-mono)}.item-tooltip-talic-effect-inactive .item-tooltip-talic-effect-value{color:var(--text-muted)}.item-tooltip-code{color:var(--text-muted);font:500 .6rem var(--font-mono)}.item-tooltip-action{border:1px solid var(--border-chrome);background:var(--surface-panel-alt);width:100%;color:var(--text-primary);font:700 .68rem var(--font-display);padding:.32rem var(--space-2);cursor:pointer;border-radius:2px}.item-tooltip-action:hover{border-color:var(--energy-cyan);color:var(--energy-cyan)}@media (width<=520px){.item-tooltip{padding:var(--space-2);width:min(13.5rem,100vw - 1rem)!important}}.inventory-window{z-index:var(--z-game-window,650);justify-content:center;align-items:flex-start;gap:var(--space-3);pointer-events:auto;opacity:.9;flex-flow:wrap;max-width:96vw;max-height:92vh;display:flex;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.inventory-window .card-header{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.inventory-window .card-frame-rf{--elevation-slot-bg:var(--rf-bar-slot-bg);--elevation-slot-border:1px solid var(--rf-bar-edge-dark);--elevation-slot-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);--surface-panel-alt:var(--rf-bar-well-bg);--surface-elevated:var(--rf-bar-metal)}.inventory-window-dragging .card-header{cursor:grabbing}.inventory-equip-card{flex-shrink:0;width:15.5rem}.inventory-bag-card{flex-shrink:0;width:17rem}.inventory-equip-toggle{border:1px solid var(--border-subtle);background:var(--surface-panel-alt);width:1.6rem;height:1.6rem;color:var(--text-secondary);cursor:pointer;border-radius:2px;justify-content:center;align-items:center;padding:0;transition:color .15s,border-color .15s,box-shadow .15s;display:flex}.inventory-equip-toggle:hover,.inventory-equip-toggle:focus-visible{color:var(--text-primary);border-color:var(--border-chrome);outline:0}.inventory-equip-toggle-active{border-color:var(--energy-cyan);color:var(--energy-cyan);box-shadow:0 0 8px #22d3ee4d}.equip-grid{--equip-slot-inset:.14rem;aspect-ratio:3/4;grid-template-rows:repeat(4,1fr);grid-template-columns:repeat(3,1fr);grid-template-areas:"ammo head amulet""weapon upper shield""gauntlet lower cloak""ring_l shoes ring_r";width:min(100%,14.75rem);margin-inline:auto;display:grid}.equip-slot{min-width:0;min-height:0;margin:var(--equip-slot-inset);background:var(--elevation-slot-bg);box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border);color:#475569;border-radius:2px;justify-content:center;align-items:center;display:flex;position:relative}.head{grid-area:head}.ammo{grid-area:ammo;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);grid-template-areas:".ammospecial""ammo1 ammo2";display:grid}.ammo1{grid-area:ammo1}.ammo2{grid-area:ammo2}.ammospecial{grid-area:ammospecial}.amulet{grid-area:amulet;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);grid-template-areas:". .""amulet1 amulet2";display:grid}.amulet1{grid-area:amulet1}.amulet2{grid-area:amulet2}.upper{grid-area:upper}.lower{grid-area:lower}.shoes{grid-area:shoes}.weapon{grid-area:weapon}.shield{grid-area:shield}.gauntlet{grid-area:gauntlet}.cloak{grid-area:cloak}.ring_l{grid-area:ring_l;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);grid-template-areas:".ring01"". .";display:grid}.ring01{grid-area:ring01}.ring_r{grid-area:ring_r;grid-template-rows:repeat(2,1fr);grid-template-columns:repeat(2,1fr);grid-template-areas:"ring02."". .";display:grid}.ring02{grid-area:ring02}.equip-slot-round{border-radius:50%}.equip-slot-icon{object-fit:contain;opacity:.8;pointer-events:none;-webkit-user-select:none;user-select:none;width:88%;height:88%}.equip-slot-filled{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow);color:var(--text-primary)}.equip-slot-filled .equip-slot-icon{opacity:1}.equip-slot-icon-img{object-fit:contain;width:92%;height:92%;image-rendering:pixelated}.ammo .equip-slot-icon,.amulet .equip-slot-icon,.ring_l .equip-slot-icon,.ring_r .equip-slot-icon{width:80%;height:80%}.inventory-currency-cp{color:var(--text-cyan)}.inventory-currency-gold{color:var(--text-gold)}.inventory-currency-label{color:var(--text-secondary);font:600 .6rem var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-left:.25rem}.inventory-bag-tabs{gap:var(--space-1);margin-bottom:var(--space-2);display:flex}.inventory-bag-tab{border:1px solid var(--border-subtle);background:var(--surface-panel-alt);height:1.9rem;color:var(--text-muted);cursor:pointer;border-top-width:2px;border-radius:2px;flex:1;justify-content:center;align-items:center;transition:background .15s,border-color .15s,color .15s;display:flex}.inventory-bag-tab:hover{color:var(--text-secondary)}.inventory-bag-tab-active{background:var(--surface-elevated);border-color:var(--energy-cyan);color:var(--text-primary)}.bag-grid{gap:var(--space-1);grid-template-columns:repeat(5,1fr);display:grid}.bag-slot{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;aspect-ratio:1;background:var(--elevation-slot-bg);box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border);cursor:default;touch-action:manipulation;border-radius:2px;padding:2px;position:relative;overflow:hidden}.bag-slot-occupied{cursor:pointer}.bag-slot-occupied:hover{border-color:var(--border-chrome)}.bag-slot-in-use{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.bag-slot-selected{border-color:var(--energy-cyan);box-shadow:0 0 0 1px var(--energy-cyan) inset}.bag-slot-carry-source{opacity:.45;filter:saturate(.75)}.bag-slot-reserved-count{z-index:2;color:var(--text-gold);font:700 .65rem var(--font-mono);text-shadow:0 0 2px #000;position:absolute;top:1px;left:2px}.bag-slot-carry-source:before{content:"";z-index:1;pointer-events:none;border:1px dashed #f5d65bc7;position:absolute;inset:2px}.bag-slot-pending:after{content:"";z-index:1;border:1px dashed var(--accent-primary);pointer-events:none;position:absolute;inset:2px}.bag-slot-ghost{opacity:.45;filter:saturate(.6)}.bag-slot-pending-add{z-index:2;color:var(--text-gold);font:700 .6rem var(--font-mono);text-shadow:0 0 2px #0a0e15e6;position:absolute;top:1px;left:2px}.inventory-bag-tab-pending{position:relative}.inventory-bag-tab-pending:after{content:"";background:var(--text-gold);border-radius:50%;width:5px;height:5px;position:absolute;top:3px;right:3px}.bag-slot-name{width:100%;color:var(--text-secondary);font:600 .5rem var(--font-display);text-overflow:ellipsis;white-space:nowrap;line-height:1.1;display:block;overflow:hidden}.bag-slot-icon{object-fit:contain;width:calc(100% - 4px);height:calc(100% - 4px);image-rendering:pixelated;position:absolute;inset:2px}.bag-slot-qty{color:var(--text-primary);font:700 .6rem var(--font-mono);position:absolute;bottom:1px;left:2px}.inventory-lock-icon{color:var(--text-muted);position:absolute;bottom:1px;right:2px}.inventory-selected{justify-content:space-between;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);display:flex}.inventory-selected-info{align-items:center;gap:var(--space-2);min-width:0;color:var(--text-primary);font:600 .7rem var(--font-display);display:flex}.inventory-selected-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inventory-selected-qty{color:var(--text-secondary);font:600 .65rem var(--font-mono);flex-shrink:0}.inventory-selected-locked{color:var(--text-muted);font:600 .6rem var(--font-display);text-transform:uppercase;flex-shrink:0;align-items:center;gap:3px;display:flex}.inventory-selected-in-use{color:var(--accent-primary);font:600 .6rem var(--font-display);text-transform:uppercase;flex-shrink:0}.inventory-selected-actions{gap:var(--space-1);flex-shrink:0;display:flex}.inventory-selected-actions button{border:1px solid var(--border-chrome);background:var(--surface-panel-alt);color:var(--text-primary);font:600 .65rem var(--font-display);padding:3px var(--space-2);cursor:pointer;border-radius:2px}.inventory-selected-actions button:hover:not(:disabled){border-color:var(--energy-cyan);color:var(--energy-cyan)}.inventory-selected-actions button:disabled{opacity:.4;cursor:not-allowed}.inventory-bag-footer{align-items:baseline;gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);font:700 .75rem var(--font-mono);display:flex}.inventory-bag-capacity{margin-left:auto}.inventory-mono{color:var(--text-primary);font:700 .75rem var(--font-mono)}@media (width<=520px){.inventory-window{gap:var(--space-2);max-height:88vh;top:48%}.inventory-equip-card,.inventory-bag-card{width:min(15rem,100vw - 1rem)}.inventory-window .card-body{padding:var(--space-3)}.equip-grid{width:min(100%,12rem)}.bag-grid{gap:3px}.inventory-selected{flex-direction:column;align-items:stretch}.inventory-selected-actions{grid-template-columns:repeat(3,1fr);display:grid}.inventory-selected-actions button{padding-inline:var(--space-1)}}@media (width<=360px){.inventory-equip-card,.inventory-bag-card{width:calc(100vw - .5rem)}.inventory-window .card-body{padding:var(--space-2)}.equip-grid{width:min(100%,10.75rem)}}@media (height<=520px){.inventory-window{--bag-slot:min(2.6rem, calc((100dvh - 6.5rem) / 4.4));gap:var(--space-2);max-height:calc(100dvh - .75rem);top:50%}.inventory-window .card-body{padding:var(--space-2)}.inventory-bag-card{width:auto}.inventory-bag-body{gap:var(--space-1);display:flex}.inventory-bag-tabs{flex-direction:column;margin-bottom:0}.inventory-bag-tab{width:calc(var(--bag-slot) * .75);height:calc((var(--bag-slot) * 4 + 3 * 3px - 4 * var(--space-1)) / 5);flex:none;min-height:1.4rem}.bag-grid{grid-template-columns:repeat(5, var(--bag-slot));gap:3px}.inventory-equip-card{width:auto}.equip-grid{width:calc((var(--bag-slot) * 4 + 9px + 1.9rem) * 3 / 4)}.inventory-bag-footer{margin-top:var(--space-1);padding-top:var(--space-1);font-size:.68rem}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.inventory-window{--bag-slot:min(2.15rem, calc((100dvh - 6.5rem) / 4.4))}}@media (pointer:coarse) and (prefers-reduced-motion:no-preference){.inventory-window{animation:.2s cubic-bezier(.2,.8,.2,1) backwards inventory-window-in}.inventory-equip-card{animation:.22s cubic-bezier(.2,.8,.2,1) backwards inventory-equip-in}.inventory-equip-card-closing{pointer-events:none;animation:.18s ease-in forwards inventory-equip-out}}@keyframes inventory-window-in{0%{opacity:0;transform:translate(-50%,-46%)scale(.96)}to{opacity:.9;transform:translate(-50%,-50%)}}@keyframes inventory-equip-in{0%{opacity:0;transform:translate(-1.25rem)}to{opacity:1;transform:none}}@keyframes inventory-equip-out{0%{opacity:1;transform:none}to{opacity:0;transform:translate(-1.25rem)}}.minimap{top:max(var(--space-4), env(safe-area-inset-top));right:max(var(--space-4), env(safe-area-inset-right));width:clamp(6.8rem,15vw,9rem);max-width:calc(100vw - 2 * var(--space-4));aspect-ratio:146/163;pointer-events:none;filter:drop-shadow(0 5px 10px #000000d9);position:absolute}.minimap-face{z-index:1;aspect-ratio:1;background:#000;border-radius:50%;width:68.4932%;position:absolute;top:20%;left:19%;overflow:hidden}.minimap-frame{z-index:0;image-rendering:crisp-edges;image-rendering:pixelated;background:url(/game-gui/hud/radar/radarframe.png) 0 0/100% 100% no-repeat;position:absolute;inset:0}.minimap-inside{image-rendering:crisp-edges;image-rendering:pixelated;background:url(/game-gui/hud/radar/radar-inside.png) 50%/100% 100% no-repeat;position:absolute;inset:0}.minimap-spinner{z-index:1;aspect-ratio:51/43;width:54.8387%;image-rendering:crisp-edges;image-rendering:pixelated;transform-origin:50% 100%;background:url(/game-gui/hud/radar/radar-spinning.png) 50%/100% 100% no-repeat;animation:3.5s linear infinite minimap-spinner-spin;position:absolute;top:50%;left:50%}@keyframes minimap-spinner-spin{0%{transform:translate(-50%,-100%)rotate(0)}to{transform:translate(-50%,-100%)rotate(360deg)}}.minimap-blip{z-index:3;aspect-ratio:1;background:#54fff3;border-radius:50%;width:5.5%;margin-top:-2.75%;margin-left:-2.75%;position:absolute;top:50%;left:50%;box-shadow:0 0 4px #54fff3f2}.minimap-player{z-index:4;background:var(--accent-primary);clip-path:polygon(50% 0,0 100%,100% 100%);filter:drop-shadow(0 0 4px #d4a246e6);width:10%;height:12%;margin-top:-6%;margin-left:-5%;position:absolute;top:50%;left:50%}@media (width<=720px),(pointer:coarse){.minimap{top:max(var(--space-3), env(safe-area-inset-top));right:max(var(--space-3), env(safe-area-inset-right));width:clamp(5.25rem,20vw,6.5rem);max-width:calc(100vw - 2 * var(--space-3))}}@media (width<=420px){.minimap{width:clamp(4.75rem,18vw,5.5rem)}}.online-screen{--mobile-joystick-size:9rem;--mobile-joystick-left:max(var(--space-4), calc(env(safe-area-inset-left) + var(--space-4)));--mobile-joystick-bottom:max(var(--space-4), calc(env(safe-area-inset-bottom) + var(--space-4)))}.mobile-controls{pointer-events:none;position:absolute;inset:0}.mobile-controls-joystick-base{left:var(--mobile-joystick-left,max(var(--space-6), calc(env(safe-area-inset-left) + var(--space-4))));bottom:var(--mobile-joystick-bottom,max(var(--space-6), calc(env(safe-area-inset-bottom) + var(--space-4))));width:var(--mobile-joystick-size,9rem);height:var(--mobile-joystick-size,9rem);pointer-events:auto;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;border-radius:50%;position:absolute}.mobile-controls-joystick-base:before{content:"";background:var(--rf-bar-slot-bg);border:1px solid var(--rf-bar-edge-dark);box-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);pointer-events:none;border-radius:50%;position:absolute;inset:1.25rem}.mobile-controls-joystick-stick{background:var(--rf-bar-metal);border:2px solid var(--rf-bar-slot-rim);width:2.75rem;height:2.75rem;box-shadow:inset 0 0 0 2px var(--rf-bar-edge-light), 0 0 0 1px var(--rf-bar-edge-dark);pointer-events:none;border-radius:50%;margin-top:-1.375rem;margin-left:-1.375rem;position:absolute;top:50%;left:50%}.mobile-controls-actions{right:max(var(--space-6), calc(env(safe-area-inset-right) + var(--space-4)));bottom:max(var(--space-6), calc(env(safe-area-inset-bottom) + var(--space-4)));gap:var(--space-3);pointer-events:auto;flex-direction:column;display:flex;position:absolute}@media (width<=720px),(pointer:coarse){.mobile-controls-joystick-base{left:var(--mobile-joystick-left,max(var(--space-4), calc(env(safe-area-inset-left) + var(--space-4))));bottom:var(--mobile-joystick-bottom,max(var(--space-4), calc(env(safe-area-inset-bottom) + var(--space-4))))}.mobile-controls-actions{right:max(var(--space-4), calc(env(safe-area-inset-right) + var(--space-4)));bottom:max(var(--space-4), calc(env(safe-area-inset-bottom) + var(--space-4)))}}.mobile-controls-btn{border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-slot-bg);width:4rem;height:4rem;box-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);color:var(--rf-bar-exp-label);font:600 .7rem var(--font-display);cursor:pointer;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;border-radius:50%;transition:background .15s}.mobile-controls-btn:active{filter:brightness(1.3);border-color:var(--energy-cyan)}.mobile-controls-btn-attack{align-self:flex-end}.mobile-controls-action-row{align-items:flex-end;gap:var(--space-3);display:flex}.mobile-controls-btn-pickup{width:3.25rem;height:3.25rem;font-size:.6rem}.mobile-movement-mode{left:calc(var(--mobile-joystick-left) + var(--mobile-joystick-size) + 24px);bottom:calc(var(--mobile-joystick-bottom) + 8px);box-sizing:border-box;z-index:525;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);width:48px;height:48px;box-shadow:inset 0 0 0 1px var(--rf-bar-edge-dark);color:var(--rf-bar-exp-label);cursor:pointer;pointer-events:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;border-radius:50%;place-items:center;padding:0;display:grid;position:absolute;overflow:hidden}.mobile-movement-mode img{object-fit:cover;pointer-events:none;border-radius:50%;width:32px;height:32px}.mobile-movement-mode:active{filter:brightness(1.3)}.mobile-movement-mode:focus-visible{outline:2px solid var(--energy-cyan);outline-offset:3px}@media (width<=360px){.mobile-movement-mode{left:calc(var(--mobile-joystick-left) + var(--mobile-joystick-size) / 2 - 24px);bottom:calc(var(--mobile-joystick-bottom) + var(--mobile-joystick-size) + 24px)}}.ping-indicator{white-space:nowrap}.ping-indicator-good{color:var(--vital-emerald)}.ping-indicator-warn{color:var(--accent-primary)}.ping-indicator-bad{color:var(--vital-ruby)}.ping-indicator-unknown{color:var(--text-muted)}.hud-sidebar{--sidebar-top-clearance:132px;--sidebar-bottom-clearance:170px;--sidebar-available-height:max(0px, calc(100dvh - var(--sidebar-top-clearance) - var(--sidebar-bottom-clearance) - env(safe-area-inset-top) - env(safe-area-inset-bottom)));left:max(8px, env(safe-area-inset-left));bottom:max(var(--sidebar-bottom-clearance), calc(env(safe-area-inset-bottom) + var(--sidebar-bottom-clearance)));height:min(240px, var(--sidebar-available-height));max-height:var(--sidebar-available-height);z-index:510;pointer-events:none;grid-template-rows:minmax(0,1fr);grid-template-columns:44px minmax(0,1fr);align-items:stretch;gap:6px;width:min(280px,40vw);display:grid;position:fixed}.hud-sidebar-tabs{overscroll-behavior:contain;pointer-events:auto;flex-direction:column;gap:4px;min-height:0;max-height:100%;display:flex;overflow-y:auto}.hud-sidebar-tab{box-sizing:border-box;color:#dce5e9;cursor:pointer;touch-action:manipulation;background:#101820;border:1px solid #54616a;border-radius:3px;flex:0 0 44px;place-items:center;width:44px;height:44px;padding:0;display:grid;position:relative;overflow:hidden}.hud-sidebar-tab img,.hud-sidebar-tab svg{object-fit:contain;pointer-events:none;display:block}.hud-sidebar-tab img{width:40px;max-width:100%;height:auto;max-height:40px}.hud-sidebar-tab svg{width:24px;height:24px}.hud-sidebar-tab-active,.hud-sidebar-tab:hover{background:#293943}.hud-sidebar-tab-active{border-color:#d3dedf;box-shadow:inset 0 0 0 1px #718a99}.hud-sidebar-tab:focus-visible{outline:1px solid var(--energy-cyan);outline-offset:-2px}.hud-sidebar-panels{min-width:0;height:100%;min-height:0;overflow:hidden}.hud-sidebar-panel{box-sizing:border-box;overscroll-behavior:contain;pointer-events:auto;min-width:0;height:100%;overflow-y:auto}.hud-sidebar-panel[hidden]{display:none}.hud-sidebar-empty{color:var(--text-secondary);font:500 .65rem/1.35 var(--font-display);text-shadow:0 1px 2px #000;margin:0;padding:5px 2px}.hud-sidebar .quest-tracker{text-align:left;width:100%;max-width:none;max-height:none;position:static;inset:auto;overflow:visible}.hud-sidebar .chat-peek,.hud-sidebar .chat-box{box-sizing:border-box;width:100%;max-width:100%;min-height:0;position:relative;inset:auto}.hud-sidebar .chat-peek{background:0 0;align-items:flex-start;width:fit-content;height:auto;min-height:0;padding:5px 2px}.hud-sidebar-panel-chat:has(>.chat-peek){pointer-events:none}.hud-sidebar-panel-quests{pointer-events:none}.hud-sidebar-panel-chat>.chat-peek{pointer-events:auto}.hud-sidebar .chat-box{height:100%}.hud-sidebar .animus-panel{box-sizing:border-box;width:100%;max-width:100%;position:relative;inset:auto}@media (pointer:coarse),(width<=720px){.hud-sidebar{--sidebar-top-clearance:108px;width:min(280px,75vw)}}@media (pointer:coarse) and (orientation:portrait){.hud-sidebar{--sidebar-bottom-clearance:284px}}@media (orientation:landscape) and (height<=520px){.hud-sidebar{--sidebar-top-clearance:80px;--sidebar-bottom-clearance:160px;grid-template-columns:28px minmax(0,1fr)}.hud-sidebar-tabs{gap:2px}.hud-sidebar-tab{flex-basis:28px;width:28px;height:28px}.hud-sidebar-tab img{width:24px;height:auto;max-height:24px}.hud-sidebar-tab svg{width:16px;height:16px}}.hud-sidebar[data-active-group=quests]{width:min(210px,52vw)}.battle-panel{color:var(--text-primary);font:600 11px/1.3 var(--font-display);text-shadow:0 1px 2px #000,0 0 3px #000;flex-direction:column;gap:2px;margin:0;padding:5px 2px;display:flex}.battle-panel-row{align-items:center;gap:var(--space-1);display:flex}.battle-panel-row dt{align-items:center;gap:var(--space-1);margin:0;display:flex}.battle-panel-row dt:after{content:":"}.battle-panel-row dd{font-family:var(--font-mono);margin:0}.battle-panel-row svg{filter:drop-shadow(0 1px 1px #000);flex:none;width:12px;height:12px}.battle-panel-row-kill dt{color:var(--vital-ruby)}.battle-panel-row-death dt{color:var(--text-secondary)}.battle-panel-row-temp svg,.battle-panel-row-pvp svg{color:var(--vital-ruby)}.battle-panel-row-gold svg{color:var(--text-gold)}.battle-panel-row-kill dt,.battle-panel-row-death dt{font-weight:700}.shortcut-bar{--shortcut-slot-size:clamp(1.95rem, 5.8vw, 2.85rem);--shortcut-slot-gap:clamp(2px, .5vw, 5px);--shortcut-row-number-size:clamp(1rem, 3.4vw, 1.3rem);--shortcut-settings-size:clamp(1.45rem, 4vw, 1.75rem);left:50%;bottom:calc(env(safe-area-inset-bottom) + var(--hud-exp-bar-height,0px));z-index:520;border:1px solid var(--rf-bar-edge-dark);max-width:calc(100vw - .75rem);box-shadow:inset 0 1px 0 var(--rf-bar-edge-light), inset 1px 0 0 #5f666999, inset -1px 0 0 var(--rf-bar-seam), 0 -2px 10px #00000073;pointer-events:auto;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border-bottom:none;border-radius:6px 6px 0 0;align-items:center;gap:clamp(3px,.7vw,6px);padding:4px clamp(4px,.8vw,8px) 3px;display:flex;position:fixed;transform:translate(-50%)}.shortcut-bar:before{content:"";z-index:-1;border-radius:inherit;background:var(--rf-bar-metal);opacity:.5;pointer-events:none;position:absolute;inset:0}@media (pointer:coarse),(width<=720px){.shortcut-bar{box-shadow:none;border-color:#0000}.shortcut-bar:before{opacity:.3;display:block}}.shortcut-settings{flex-shrink:0;position:relative}.shortcut-settings-trigger{width:var(--shortcut-settings-size);height:var(--shortcut-settings-size);border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-well-bg);color:var(--rf-bar-well-top);cursor:pointer;box-shadow:inset 0 1px 0 var(--rf-bar-well-top), 0 1px 0 var(--rf-bar-well-bottom);border-radius:2px;justify-content:center;align-items:center;padding:0;display:flex}.shortcut-settings-trigger:hover,.shortcut-settings-trigger:focus-visible{border-color:var(--border-chrome);color:var(--text-primary);outline:0}.shortcut-settings-trigger-active{border-color:var(--energy-cyan);color:var(--energy-cyan);box-shadow:0 0 10px #22d3ee59}.shortcut-settings-menu{z-index:2;background:#10131beb;border:1px solid #2d3446e6;border-radius:3px;min-width:7.5rem;padding:3px;display:grid;position:absolute;bottom:calc(100% + .25rem);left:0;box-shadow:0 .55rem 1.2rem #0000007a}.shortcut-settings-heading{color:var(--text-muted);font:700 .6rem var(--font-mono);letter-spacing:.04em;text-transform:uppercase;padding:.3rem .45rem .2rem}.shortcut-settings-item{color:var(--text-secondary);font:700 .66rem var(--font-display);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:2px;grid-template-columns:.75rem 1fr;align-items:center;gap:.35rem;padding:.35rem .45rem;display:grid}.shortcut-settings-item:hover,.shortcut-settings-item:focus-visible{color:var(--text-primary);background:#22d3ee1f;outline:0}.shortcut-settings-check{background:#050608cc;border:1px solid #2d3446e6;border-radius:2px;width:.58rem;height:.58rem}.shortcut-settings-item-active .shortcut-settings-check{border-color:var(--energy-cyan);background:var(--energy-cyan);box-shadow:0 0 8px #22d3ee4d}.shortcut-settings-hint{color:var(--text-muted);font:600 .58rem var(--font-display);border-top:1px solid #2d3446e6;padding:.3rem .45rem;line-height:1.3}.shortcut-bar-editing .shortcut-row-stack{outline-offset:2px;outline:1px solid #22d3eeb3}.shortcut-row-stack{flex-direction:column-reverse;gap:3px;display:flex}.shortcut-row{grid-template-columns:var(--shortcut-row-number-size) repeat(10, var(--shortcut-slot-size));gap:var(--shortcut-slot-gap);width:max-content;display:grid}.shortcut-row-number{width:var(--shortcut-row-number-size);height:var(--shortcut-slot-size);border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-well-bg);color:var(--rf-bar-exp-label);font:800 clamp(.58rem, 1.9vw, .72rem) var(--font-mono);box-shadow:inset 0 1px 0 var(--rf-bar-well-top), 0 1px 0 var(--rf-bar-well-bottom);border-radius:2px;justify-content:center;align-items:center;line-height:1;display:flex}.shortcut-slot{width:var(--shortcut-slot-size);height:var(--shortcut-slot-size);border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-slot-bg);min-width:0;min-height:0;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);cursor:default;touch-action:manipulation;border-radius:3px;justify-content:center;align-items:center;padding:3px;display:flex;position:relative;overflow:hidden}.shortcut-slot:after{content:"";pointer-events:none;border:1px solid #0000;position:absolute;inset:3px}.shortcut-slot:hover{box-shadow:inset 0 0 0 1px #9aa1a4, inset 0 0 0 2px var(--rf-bar-slot-inner), 0 0 6px #9aa1a459}.shortcut-slot:focus-visible{outline:2px solid var(--energy-cyan);outline-offset:2px}.shortcut-slot-filled{cursor:pointer;color:var(--text-primary)}.shortcut-slot-drop-ready{cursor:copy}.shortcut-slot-carry-source{opacity:.45;filter:saturate(.75)}.shortcut-slot-carry-source:before{content:"";z-index:1;pointer-events:none;border:1px dashed #22d3eec7;position:absolute;inset:2px}.shortcut-slot-equipped{box-shadow:inset 0 0 0 1px var(--energy-cyan), inset 0 0 0 2px #22d3ee73, 0 0 9px #22d3ee6b}.shortcut-slot-unaffordable{opacity:.55;filter:saturate(.55)}.shortcut-slot-unaffordable:after{border-color:#f43f5e59}.shortcut-slot-icon{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.shortcut-slot-label{max-width:100%;color:var(--text-secondary);font:800 clamp(.55rem, 2.2vw, .76rem) var(--font-display);text-overflow:ellipsis;white-space:nowrap;line-height:1;overflow:hidden}.shortcut-slot-qty{color:var(--text-primary);font:800 clamp(.52rem, 1.7vw, .66rem) var(--font-mono);text-shadow:0 1px 2px #000;line-height:1;position:absolute;bottom:1px;right:2px}.shortcut-slot-hotkey{color:var(--text-gold);font:700 clamp(.46rem, 1.5vw, .56rem) var(--font-mono);text-shadow:0 1px 2px #000;pointer-events:none;line-height:1;position:absolute;top:1px;left:2px}.shortcut-slot-clear{z-index:1;color:#f0d6b6;width:clamp(.72rem,2vw,.9rem);height:clamp(.72rem,2vw,.9rem);font:800 clamp(.48rem, 1.5vw, .58rem) var(--font-display);cursor:pointer;background:#16181ed1;border:1px solid #00000080;border-radius:2px;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .12s,border-color .12s;display:flex;position:absolute;top:1px;right:1px}.shortcut-slot-clear:hover{color:#ffb0a3;border-color:#ff8080b8}.shortcut-slot-swap{z-index:1;width:clamp(.72rem,2vw,.9rem);height:clamp(.72rem,2vw,.9rem);color:var(--energy-cyan);font:800 clamp(.5rem, 1.5vw, .62rem) var(--font-display);cursor:pointer;background:#16181ed1;border:1px solid #00000080;border-radius:2px;justify-content:center;align-items:center;padding:0;line-height:1;transition:color .12s,border-color .12s;display:flex;position:absolute;top:1px;left:1px}.shortcut-slot-swap:hover{border-color:var(--energy-cyan);color:var(--text-primary)}.shortcut-slot-drop-target{border-color:#22d3eeb3}.shortcut-slot-drop-target:before{content:"";pointer-events:none;border:1px dashed #22d3eed9;border-radius:1px;animation:1.1s ease-in-out infinite shortcut-drop-target-pulse;position:absolute;inset:2px}.shortcut-slot-drop-target:hover{background:#22d3ee24}@keyframes shortcut-drop-target-pulse{0%,to{opacity:.45;box-shadow:0 0 #22d3ee00}50%{opacity:1;box-shadow:0 0 8px #22d3ee73}}@media (prefers-reduced-motion:reduce){.shortcut-slot-drop-target:before{opacity:.85;animation:none}}.shortcut-carry-preview{z-index:900;width:var(--shortcut-slot-size);height:var(--shortcut-slot-size);border:1px solid var(--energy-cyan);pointer-events:none;background:radial-gradient(circle at 50% 38%,#ffffff14,#0000 46%),#10131be6;border-radius:2px;justify-content:center;align-items:center;padding:2px;display:flex;position:fixed;transform:translate(8px,8px);box-shadow:inset 0 0 0 1px #22d3ee8c,0 0 12px #22d3ee47}@media (width<=720px),(pointer:coarse){.shortcut-bar{--shortcut-slot-size:min(2.3rem, calc((100vw - 6rem) / 10));--shortcut-slot-gap:2px;--shortcut-row-number-size:.9rem;--shortcut-settings-size:1.4rem;bottom:max(5.75rem, calc(env(safe-area-inset-bottom) + 5.75rem));gap:3px}.shortcut-row-stack{gap:2px}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.shortcut-bar{--shortcut-slot-size:min(2.1rem, calc((100vw - 2 * (env(safe-area-inset-left) + 11rem) - 2rem) / 10));bottom:calc(env(safe-area-inset-bottom) + var(--hud-exp-bar-height,0px))}}.shortcut-bar.shortcut-bar-paged{--shortcut-slot-size:var(--hud-touch-slot-size);--shortcut-slot-gap:6px;--shortcut-row-number-size:1rem;align-items:center;gap:6px}.shortcut-bar-paged .shortcut-row{grid-template-columns:var(--shortcut-row-number-size) repeat(5, var(--shortcut-slot-size))}.shortcut-bar-paged .shortcut-row-stack{touch-action:none;gap:6px;padding:4px}.shortcut-bar-paged .shortcut-row-number{flex-direction:column;gap:3px}.shortcut-row-pages{gap:2px;display:flex}.shortcut-row-page-dot{background:#94a3b859;border-radius:50%;width:4px;height:4px;transition:background .2s ease-out,box-shadow .2s ease-out}.shortcut-row-page-dot-active{background:var(--energy-cyan);box-shadow:0 0 4px #22d3eeb3}.shortcut-row-slide-from-right .shortcut-slot{animation:.22s cubic-bezier(.2,.8,.2,1) both shortcut-slot-in-right}.shortcut-row-slide-from-left .shortcut-slot{animation:.22s cubic-bezier(.2,.8,.2,1) both shortcut-slot-in-left}.shortcut-row-slide-from-right .shortcut-slot:nth-child(2),.shortcut-row-slide-from-left .shortcut-slot:nth-child(6){animation-delay:0s}.shortcut-row-slide-from-right .shortcut-slot:nth-child(3),.shortcut-row-slide-from-left .shortcut-slot:nth-child(5){animation-delay:20ms}.shortcut-row-slide-from-right .shortcut-slot:nth-child(4),.shortcut-row-slide-from-left .shortcut-slot:nth-child(4){animation-delay:40ms}.shortcut-row-slide-from-right .shortcut-slot:nth-child(5),.shortcut-row-slide-from-left .shortcut-slot:nth-child(3){animation-delay:60ms}.shortcut-row-slide-from-right .shortcut-slot:nth-child(6),.shortcut-row-slide-from-left .shortcut-slot:nth-child(2){animation-delay:80ms}@keyframes shortcut-slot-in-right{0%{opacity:0;transform:translate(60%)scale(.85)}to{opacity:1;transform:none}}@keyframes shortcut-slot-in-left{0%{opacity:0;transform:translate(-60%)scale(.85)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.shortcut-row-slide-from-right .shortcut-slot,.shortcut-row-slide-from-left .shortcut-slot{animation:none}.shortcut-row-page-dot{transition:none}}.shortcut-edit-backdrop{z-index:515;pointer-events:none;background:#05070b8c;position:fixed;inset:0}.hud-bottom-dock .shortcut-bar{max-width:none;position:relative;bottom:auto;left:auto;transform:none}.shortcut-settings-external{width:0;height:0;position:absolute;bottom:100%;right:0}.shortcut-settings-external .shortcut-settings-menu{left:auto;right:0}.online-screen{--mobile-combat-size:clamp(208px, min(22vw, 48dvh), 224px)}.mobile-combat-cluster{--attack-wheel-size:var(--mobile-combat-size,224px);--attack-skill-size:clamp(40px, calc(var(--attack-wheel-size) * .2), 44px);--combat-utility-size:40px;right:calc(env(safe-area-inset-right) + 12px);bottom:max(12px, calc(env(safe-area-inset-bottom) + 12px));width:var(--attack-wheel-size);height:calc(var(--attack-wheel-size) * 216 / 208);z-index:525;pointer-events:none;position:absolute}.mobile-combat-cluster-ready{z-index:640}.attack-wheel{pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;position:absolute;inset:0}.attack-wheel-controls{position:absolute;inset:0}.attack-wheel-orbit{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.attack-wheel-orbit path{fill:none;stroke:var(--rf-bar-edge-light);stroke-width:1px;opacity:.6}.attack-wheel-orbit .attack-wheel-orbit-accent{stroke:var(--rf-bar-slot-rim);stroke-width:2px;opacity:1}.attack-wheel button{pointer-events:auto;cursor:pointer;touch-action:none;color:var(--rf-bar-exp-label);-webkit-tap-highlight-color:transparent}.attack-wheel button:focus-visible{outline:2px solid var(--energy-cyan);outline-offset:2px}.attack-wheel:focus-visible{outline:2px solid var(--energy-cyan);outline-offset:2px;border-radius:12px}.attack-wheel-attack{width:clamp(64px, calc(var(--attack-wheel-size) * .3077), 68px);aspect-ratio:1;box-sizing:border-box;border:2px solid var(--rf-bar-slot-rim);background:var(--rf-bar-metal);box-shadow:inset 0 0 0 2px var(--rf-bar-edge-light), 0 0 0 2px var(--rf-bar-edge-dark);border-radius:50%;padding:0;position:absolute;top:64.815%;left:56.73%;transform:translate(-50%,-50%)}.attack-wheel-attack svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:68%;height:68%}.attack-wheel-attack:active{filter:brightness(1.3)}.attack-wheel-skill-ring{transform-origin:56.73% 64.815%;pointer-events:none;position:absolute;inset:0}.attack-wheel-ring-in{animation:.3s ease-out both attack-wheel-clockwise-in}.attack-wheel-ring-out{animation:.3s ease-in both attack-wheel-clockwise-out}.attack-wheel-counterclockwise .attack-wheel-ring-in{animation-name:attack-wheel-counterclockwise-in}.attack-wheel-counterclockwise .attack-wheel-ring-out{animation-name:attack-wheel-counterclockwise-out}.attack-wheel-ring-out *{pointer-events:none!important}.attack-wheel-cell{width:max(44px, var(--attack-skill-size));height:max(44px, var(--attack-skill-size));position:absolute;transform:translate(-50%,-50%)}.attack-wheel-cell-0{top:68.52%;left:25.96%}.attack-wheel-cell-1{top:45.83%;left:33.17%}.attack-wheel-cell-2{top:35.185%;left:56.73%}.attack-wheel-cell-3{top:45.83%;left:80.29%}.attack-wheel-cell-4{top:68.52%;left:87.5%}.attack-wheel-slot{background:0 0;border:0;border-radius:50%;width:100%;height:100%;padding:0;position:relative}.attack-wheel-slot-face{box-sizing:border-box;width:var(--attack-skill-size);height:var(--attack-skill-size);border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-slot-bg);box-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);pointer-events:none;border-radius:50%;justify-content:center;align-items:center;padding:3px;transition:box-shadow .15s;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%)}.attack-wheel-slot img{object-fit:cover;pointer-events:none;border-radius:50%;width:100%;height:100%;display:block}.attack-wheel-slot-number{font:700 9px var(--font-display);text-shadow:0 1px 2px var(--rf-bar-edge-dark);position:absolute;bottom:2px;right:5px}.attack-wheel-fallback{font:600 13px var(--font-display);opacity:.65}.attack-wheel-slot-unaffordable img,.attack-wheel-slot-unaffordable .attack-wheel-fallback{opacity:.35;filter:grayscale(.8)}.attack-wheel-ready .attack-wheel-slot-face{border-color:var(--energy-cyan);box-shadow:inset 0 0 0 1px var(--energy-cyan), 0 0 8px var(--energy-cyan)}.attack-wheel-ready{z-index:640}.attack-wheel-ready .attack-wheel-orbit path{stroke:var(--energy-cyan)}.attack-wheel-slot:active{filter:brightness(1.3)}.attack-wheel-page-status{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.attack-wheel-hint{background:var(--rf-bar-well-bg);width:100%;color:var(--energy-cyan);text-align:center;font:10px var(--font-display);pointer-events:none;border-radius:3px;padding:5px;position:absolute;bottom:100%;right:0}.attack-wheel-clear{z-index:1;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-well-bg);width:36px;height:36px;font:20px var(--font-display);border-radius:50%;position:absolute;top:-12px;right:-12px}@keyframes attack-wheel-clockwise-in{0%{opacity:0;transform:rotate(-90deg)}to{opacity:1;transform:rotate(0)}}@keyframes attack-wheel-clockwise-out{0%{opacity:1;transform:rotate(0)}to{opacity:0;transform:rotate(90deg)}}@keyframes attack-wheel-counterclockwise-in{0%{opacity:0;transform:rotate(90deg)}to{opacity:1;transform:rotate(0)}}@keyframes attack-wheel-counterclockwise-out{0%{opacity:1;transform:rotate(0)}to{opacity:0;transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.attack-wheel-ring-in{animation:none}.attack-wheel-ring-out{display:none}}@media (pointer:coarse) and (orientation:portrait){.online-screen .hud-bottom-dock{bottom:calc(env(safe-area-inset-bottom) + var(--mobile-combat-size) * 216 / 208 + 20px)}}@media (width<=400px){.online-screen{--mobile-joystick-left:max(4px, env(safe-area-inset-left));--mobile-joystick-size:104px}}.combat-utilities{pointer-events:none;position:absolute;inset:0}.combat-utility{pointer-events:auto;width:44px;height:44px;color:var(--rf-bar-exp-label);font:calc(var(--combat-utility-size) * .55) var(--font-display);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0;border-radius:50%;padding:0;position:absolute}.combat-utility:before{content:"";inset:calc((44px - var(--combat-utility-size)) / 2);border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-slot-bg);box-shadow:inset 0 0 0 1px var(--rf-bar-slot-rim), inset 0 0 0 2px var(--rf-bar-slot-inner);z-index:-1;border-radius:50%;position:absolute}.combat-utility-auto{top:calc(var(--attack-wheel-size) * 28 / 208);flex-direction:column;justify-content:center;align-items:center;gap:0;line-height:.9;display:flex;right:0}.combat-utility-pickup{left:calc(var(--attack-wheel-size) * 70 / 208 - 22px);bottom:0}.combat-utility-auto small{font:700 8px var(--font-display)}.combat-utility-auto[aria-pressed=true]{color:var(--energy-cyan)}.combat-utility-auto[aria-pressed=true]:before{border-color:var(--energy-cyan)}.combat-utility:focus-visible{outline:2px solid var(--energy-cyan);outline-offset:2px}.character-window-card.card-draggable{z-index:var(--z-game-window,650)}.character-window-card{opacity:.92;pointer-events:auto;flex-direction:column;width:18rem;max-width:94vw;max-height:88vh;display:flex}.character-window-card .card-body{flex-direction:column;gap:3px;min-height:0;display:flex;overflow-y:auto}.character-window-empty{padding:var(--space-4) var(--space-2);color:var(--text-muted);font:600 .72rem var(--font-display);text-align:center}.character-window-error{color:var(--vital-ruby)}.character-section{border:1px solid var(--border-subtle);background:var(--surface-panel-alt);border-radius:2px}.character-section-header{width:100%;padding:5px var(--space-2);background:var(--surface-elevated);color:var(--text-secondary);font:700 .68rem var(--font-display);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;border:0;border-radius:2px;justify-content:space-between;align-items:center;transition:color .15s,background .15s;display:flex}.character-section-header:hover,.character-section-header:focus-visible{color:var(--text-primary);background:var(--surface-highlight);outline:0}.character-section-open .character-section-header{color:var(--text-gold)}.character-section-chevron{border-inline:.26rem solid #0000;border-top:.32rem solid;width:0;height:0;transition:transform .15s}.character-section-open .character-section-chevron{transform:rotate(180deg)}.character-section-body{gap:var(--space-1);padding:var(--space-2);flex-direction:column;display:flex}.character-subheading{margin-top:var(--space-1);padding-top:var(--space-1);border-top:1px solid var(--border-subtle);color:var(--text-muted);font:700 .6rem var(--font-display);letter-spacing:.04em;text-align:center;text-transform:uppercase}.character-window-note{color:var(--text-muted);font:500 .6rem var(--font-display);margin:0}.character-info-list{gap:3px;margin:0;display:grid}.character-info-row{gap:var(--space-2);grid-template-columns:6.6rem 1fr;align-items:baseline;display:grid}.character-info-row dt{color:var(--text-muted);font:600 .66rem var(--font-display);text-align:right}.character-info-row dd{color:var(--text-primary);font:600 .7rem var(--font-mono);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.character-mastery-list,.character-resist-list{gap:4px;display:grid}.character-mastery-row,.character-resist-row{gap:var(--space-2);grid-template-columns:4.6rem 1fr 2.8rem;align-items:center;display:grid}.character-mastery-label,.character-resist-label{color:var(--text-secondary);font:600 .66rem var(--font-display)}.character-mastery-bar,.character-resist-bar{border:1px solid var(--border-chrome);background:var(--elevation-slot-bg);border-radius:1px;height:.62rem;position:relative;overflow:hidden}.character-mastery-fill{background:linear-gradient(180deg, var(--accent-gold-hover), var(--accent-primary));position:absolute;inset:0 auto 0 0}.character-mastery-value,.character-resist-value{color:var(--text-gold);font:700 .64rem var(--font-mono);text-align:right}.character-resist-bar:before{content:"";background:var(--border-chrome);width:1px;position:absolute;top:0;bottom:0;left:50%}.character-resist-fill{width:var(--resist-value);background:var(--resist-color);position:absolute;top:0;bottom:0;left:50%}.character-resist-bar-negative .character-resist-fill{opacity:.6;left:auto;right:50%}.character-resist-fire{--resist-color:var(--vital-ruby)}.character-resist-water{--resist-color:var(--text-cyan)}.character-resist-soil{--resist-color:var(--accent-primary)}.character-resist-wind{--resist-color:var(--vital-emerald)}.skill-tooltip-name{white-space:normal}.skill-tooltip-rows{margin:0}.skill-tooltip-rows dt{flex-shrink:0}.skill-tooltip-rows dd{overflow-wrap:anywhere;margin:0}.skill-window-card.card-draggable{z-index:var(--z-game-window,650)}.skill-window-card{opacity:.9;pointer-events:auto;flex-direction:column;width:19rem;max-width:94vw;max-height:88vh;display:flex}.skill-window-card .card-body{gap:var(--space-2);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.skill-gesture-hint{border-top:1px solid var(--border-subtle);color:var(--text-secondary);font:500 .65rem var(--font-display);flex-shrink:0;gap:3px;padding-top:6px;line-height:1.35;display:grid}.skill-gesture-hint strong{color:var(--text-gold);font-weight:600}.skill-top-rail{gap:var(--space-1);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-subtle);display:flex}.skill-top-tab{border:1px solid var(--border-subtle);background:var(--surface-panel-alt);color:var(--text-muted);font:700 .66rem var(--font-display);text-transform:uppercase;letter-spacing:.03em;padding:4px var(--space-2);cursor:pointer;border-top-width:2px;border-radius:2px;flex:1;transition:background .15s,border-color .15s,color .15s}.skill-top-tab:hover{color:var(--text-secondary)}.skill-top-tab-active{background:var(--surface-elevated);border-color:var(--energy-cyan);color:var(--text-primary)}.skill-tier-section+.skill-tier-section{margin-top:var(--space-2)}.skill-tier-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);color:var(--text-cyan);font:700 .62rem var(--font-display);text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;display:flex}.skill-tier-points{color:var(--text-gold);font:700 .62rem var(--font-mono);letter-spacing:0;text-transform:none}.skill-list{flex-direction:column;gap:2px;max-height:40vh;display:flex;overflow-y:auto}.skill-list-empty{padding:var(--space-3);color:var(--text-muted);font:500 .7rem var(--font-display);text-align:center}.skill-tier-list{flex-direction:column;gap:2px;display:flex}.skill-row{align-items:center;gap:var(--space-2);padding:3px var(--space-2);color:var(--text-secondary);cursor:pointer;text-align:left;touch-action:manipulation;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background:0 0;border:1px solid #0000;border-radius:2px;display:flex}.skill-row:hover{background:var(--surface-panel-alt)}.skill-row-selected{border-color:var(--energy-cyan);background:var(--surface-elevated);color:var(--text-primary)}.skill-row-icon{background:var(--elevation-slot-bg);width:1.5rem;height:1.5rem;box-shadow:var(--elevation-slot-shadow);border:var(--elevation-slot-border);object-fit:contain;image-rendering:pixelated;border-radius:2px;flex-shrink:0}.skill-row-icon-fallback{opacity:.4}.skill-row-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font:600 .72rem var(--font-display);flex:auto;overflow:hidden}.skill-row-level{color:var(--text-gold);font:700 .68rem var(--font-mono)}.skill-window-card .skill-list{padding:2px}.skill-window-card .skill-row{box-sizing:border-box;border-bottom-color:var(--border-subtle);flex-shrink:0;gap:6px;width:100%;min-width:0;min-height:44px;padding:4px 6px}.skill-window-card .skill-row-selected{border-color:var(--energy-cyan)}.skill-window-card .skill-row:focus-visible{outline:1px solid var(--energy-cyan);outline-offset:-2px}.skill-window-card .skill-row-icon{box-sizing:border-box;width:32px;height:32px}.skill-row-body.force-row-body{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 4px;display:grid}.force-row-body .skill-row-level,.force-row-body .skill-row-percent{text-align:right;white-space:nowrap}.force-row-exp{grid-template-columns:repeat(10,minmax(0,1fr));gap:2px;min-width:0;height:8px;display:grid}.force-row-exp-segment{box-sizing:border-box;background:#080c10;border:1px solid #30383e}.force-row-exp-segment-filled{background:#1267df;border-color:#478fe4}.skill-row-body{flex-direction:column;flex:auto;gap:3px;min-width:0;display:flex}.skill-row-pips{gap:3px;display:flex}.skill-row-pip{background:var(--surface-highlight);border-radius:50%;width:4px;height:4px}.skill-row-pip-on{background:var(--energy-cyan);box-shadow:0 0 3px var(--energy-cyan)}.skill-row-progress{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:1px;display:flex}.skill-row-class{color:var(--aether-violet);font:700 .6rem var(--font-display);text-transform:uppercase;letter-spacing:.05em}.skill-row-percent{color:var(--text-secondary);font:600 .6rem var(--font-mono)}.skill-exp-bar{background:var(--elevation-slot-bg);border:var(--elevation-slot-border);height:4px;box-shadow:var(--elevation-slot-shadow);border-radius:1px;display:block;position:relative;overflow:hidden}.skill-exp-bar-fill{transform-origin:0;transform:scaleX(var(--skill-exp-fraction,0));background:linear-gradient(90deg, var(--energy-cyan), var(--text-cyan));transition:transform .2s ease-out;position:absolute;inset:0}.skill-detail-rows>.skill-exp-bar{margin-top:2px}.skill-detail{margin-top:var(--space-1);padding-top:var(--space-2);border-top:1px solid var(--border-subtle)}.skill-detail-header{justify-content:space-between;align-items:baseline;gap:var(--space-2);margin-bottom:var(--space-2);display:flex}.skill-detail-name{color:var(--text-primary);font:700 .82rem var(--font-display)}.skill-detail-mastery{color:var(--text-secondary);font:600 .6rem var(--font-display);text-transform:uppercase;letter-spacing:.03em;flex-shrink:0}.skill-detail-rows{flex-direction:column;gap:2px;display:flex}.skill-detail-row{justify-content:space-between;align-items:baseline;gap:var(--space-2);font:600 .68rem var(--font-display);display:flex}.skill-detail-row-label{color:var(--text-secondary)}.skill-detail-row-value{color:var(--text-primary);font-family:var(--font-mono)}.skill-detail-hint{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border-subtle);color:var(--text-muted);font:500 .6rem var(--font-display);text-align:center}@media (width<=520px){.skill-window-card{width:min(17rem,100vw - 1rem);max-height:84vh}.skill-window-card .card-body{padding:var(--space-3)}.skill-list{max-height:32vh}}@media (width<=360px){.skill-window-card{width:calc(100vw - .5rem)}.skill-window-card .card-body{padding:var(--space-2)}}.gm-item-window.card-draggable{z-index:var(--z-game-window,650)}.gm-item-window{pointer-events:auto;flex-direction:column;width:24rem;max-width:94vw;max-height:88vh;display:flex}.gm-item-window .card-body{gap:var(--space-2);flex-direction:column;min-height:0;display:flex;overflow-y:auto}.gm-item-filters{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.gm-item-search{grid-column:1/-1}.gm-item-field{font:600 .65rem var(--font-display);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;flex-direction:column;gap:2px;display:flex}.gm-item-field select,.gm-item-field input{min-width:0;padding:var(--space-1) var(--space-2);border:var(--elevation-slot-border);background:var(--surface-base);box-shadow:var(--elevation-slot-shadow);color:var(--text-primary);font:.8rem var(--font-display);text-transform:none;letter-spacing:normal;border-radius:2px}.gm-item-field select:focus,.gm-item-field input:focus{border-color:var(--elevation-active-border);outline:none}.gm-item-results{border:var(--elevation-slot-border);background:var(--elevation-slot-bg);flex-direction:column;gap:2px;min-height:8rem;max-height:16rem;padding:2px;display:flex;overflow-y:auto}.gm-item-empty{padding:var(--space-3);color:var(--text-muted);font:.75rem var(--font-display);text-align:center}.gm-item-row{align-items:center;gap:var(--space-2);padding:2px var(--space-2);color:var(--text-primary);font:.78rem var(--font-display);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:2px;grid-template-columns:24px 1fr auto auto;display:grid}.gm-item-row:hover{background:var(--surface-elevated)}.gm-item-row-selected{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.gm-item-icon{background:var(--surface-base);width:24px;height:24px}.gm-item-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.gm-item-code{color:var(--text-muted);font:.7rem var(--font-mono)}.gm-item-sockets{background:var(--surface-highlight);min-width:1.2rem;color:var(--text-gold);font:.65rem var(--font-mono);text-align:center;border-radius:2px;padding:0 4px}.gm-item-options{gap:var(--space-2);grid-template-columns:1fr 1fr;display:grid}.gm-item-selected,.gm-item-upgrade{color:var(--text-gold);font:600 .8rem var(--font-display);grid-column:1/-1}.gm-item-upgrade{color:var(--text-secondary);font-weight:400}.summoner-window{pointer-events:auto;box-sizing:border-box;width:min(18rem, calc(var(--app-viewport-width,100dvw) - 24px));max-height:calc(var(--app-viewport-height,100dvh) - 24px);z-index:var(--z-game-window,650);position:absolute}.summoner-window>.card-body{min-height:0;display:flex;overflow:hidden}.summoner-list{gap:var(--space-1);flex-direction:column;flex:1;min-width:0;min-height:0;margin:0;padding:2px;list-style:none;display:flex;overflow-y:auto}.summoner-row{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);min-height:68px;color:var(--text-primary);flex-shrink:0;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:6px;padding:4px;display:grid;position:relative}.summoner-row:not(.summoner-row-locked):hover{border-color:var(--rf-panel-bevel)}.summoner-row-summoned{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.summoner-row-locked{opacity:.55;filter:grayscale()}.summoner-row-locked .summoner-info{grid-column:2/-1}.summoner-row-sealed{border-left:3px solid var(--rf-panel-bevel)}.summoner-portrait{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);flex:none;width:44px;height:44px;padding:5px}button.summoner-portrait{cursor:grab}button.summoner-portrait:hover{border-color:var(--elevation-active-border)}.summoner-portrait img{object-fit:contain;width:100%;height:100%;display:block}.summoner-info{min-width:0;color:inherit;font:inherit;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;gap:2px;padding:0;display:flex}button.summoner-info{cursor:pointer}.summoner-heading{justify-content:space-between;align-items:baseline;gap:4px;display:flex}.summoner-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.72rem;font-weight:700;overflow:hidden}.summoner-level{color:var(--text-gold);flex-shrink:0;font-size:.68rem}.summoner-locked-hint{color:var(--text-secondary);font-size:.65rem;line-height:1.3}.summoner-gauge{align-items:center;gap:3px;font-size:.6rem;line-height:1;display:flex}.summoner-gauge-label{width:1.35rem;color:var(--text-secondary);flex-shrink:0}.summoner-gauge-track{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);flex:1;min-width:0;height:12px;position:relative;overflow:hidden}.summoner-gauge-fill{position:absolute;inset:0 auto 0 0}.summoner-gauge-hp .summoner-gauge-fill{background:linear-gradient(180deg, #ff6b81 0%, var(--vital-ruby) 55%, #9f1239 100%)}.summoner-gauge-fp .summoner-gauge-fill{background:linear-gradient(#7dd3fc 0%,#2563eb 55%,#1e3a8a 100%)}.summoner-gauge-exp .summoner-gauge-fill{background:linear-gradient(#fde68a 0%,#d4a246 60%,#92400e 100%)}.summoner-gauge-text{text-align:center;font-family:var(--font-mono);white-space:nowrap;color:var(--text-primary);text-shadow:0 0 2px #000,0 0 2px #000;font-size:.55rem;line-height:10px;display:block;position:relative}.summoner-unregister{box-sizing:border-box;width:44px;height:44px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:0;font-size:.9rem;line-height:1}.summoner-row button:focus-visible{outline:1px solid var(--energy-cyan);outline-offset:-2px}.summoner-unregister:hover{color:var(--vital-ruby)}.animus-panel{--animus-panel-vitals-width:clamp(12rem, 24vw, 14rem);--animus-panel-edge:var(--space-4);top:calc(max(var(--animus-panel-edge), env(safe-area-inset-top)) + var(--animus-panel-vitals-width) * 69 / 223 + var(--space-2));left:max(var(--animus-panel-edge), env(safe-area-inset-left));width:var(--animus-panel-vitals-width);max-width:calc(100vw - 2 * var(--animus-panel-edge));gap:var(--space-1);padding:var(--space-1);border:1px solid var(--rf-panel-edge);border-top-color:var(--rf-bar-edge-light);background:var(--rf-bar-metal);pointer-events:auto;display:flex;position:absolute;box-shadow:0 4px 8px #000c}.animus-panel-gauges{flex-direction:column;flex:1;justify-content:center;gap:2px;min-width:0;display:flex}.animus-panel-gauge{align-items:center;gap:var(--space-1);font-size:.6rem;line-height:1;display:flex}.animus-panel-gauge-label{width:1.3rem;color:var(--text-secondary);font-family:var(--font-mono)}.animus-panel-gauge-exp .animus-panel-gauge-label{color:var(--text-gold)}.animus-panel-gauge-track{border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);flex:1;height:.7rem;position:relative;overflow:hidden}.animus-panel-gauge-fill{transition:width .2s ease-out;position:absolute;inset:0 auto 0 0}.animus-panel-gauge-hp .animus-panel-gauge-fill{background:linear-gradient(180deg, #ff6b81 0%, var(--vital-ruby) 55%, #9f1239 100%)}.animus-panel-gauge-fp .animus-panel-gauge-fill{background:linear-gradient(#7dd3fc 0%,#2563eb 55%,#1e3a8a 100%)}.animus-panel-gauge-exp .animus-panel-gauge-fill{background:linear-gradient(#fde68a 0%,#d4a246 60%,#92400e 100%)}.animus-panel-gauge-text{text-align:center;font-family:var(--font-mono);color:var(--text-primary);white-space:nowrap;text-shadow:0 0 2px #000,0 0 2px #000;display:block;position:relative}.animus-panel-side{flex-direction:column;flex:none;align-items:center;gap:2px;display:flex}.animus-panel-buttons{gap:2px;display:flex}.animus-panel-btn{border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);width:1.9rem;height:1.9rem;color:var(--text-secondary);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.animus-panel-btn:hover{color:var(--text-primary)}.animus-panel-btn-active{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow);color:var(--text-gold)}.animus-panel-key{color:var(--text-muted);font:700 .6rem var(--font-mono);line-height:1;position:absolute;bottom:-3px;right:-1px}.animus-panel-name{max-width:4.2rem;color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}@media (width<=720px),(pointer:coarse){.animus-panel{--animus-panel-vitals-width:clamp(9.5rem, 46vw, 11rem);--animus-panel-edge:var(--space-3)}}@media (width<=420px){.animus-panel{--animus-panel-vitals-width:clamp(8.75rem, 43vw, 9.75rem)}}.macro-window{pointer-events:auto;box-sizing:border-box;width:min(18rem, calc(var(--app-viewport-width,100dvw) - 24px));max-height:calc(var(--app-viewport-height,100dvh) - 24px);z-index:var(--z-game-window,650);position:absolute}.macro-window>.card-body{flex-direction:column;gap:8px;min-height:0;display:flex;overflow-y:auto}.macro-tabs{gap:var(--space-1);padding:var(--space-1) var(--space-1) 0;display:flex}.macro-tab{padding:2px var(--space-2);border:1px solid var(--rf-inset-edge-dark);color:var(--text-secondary);border-bottom:none;font-size:.75rem}.macro-tab-active{border-color:var(--elevation-active-border);color:var(--text-gold)}.macro-potion-list{gap:var(--space-1);flex-direction:column;margin:0;padding:2px;list-style:none;display:flex}.macro-potion-row{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);flex-shrink:0;align-items:center;gap:6px;min-height:62px;padding:4px;display:flex}.macro-potion-label{width:18px;color:var(--text-primary);font:700 .7rem var(--font-mono);flex:none}.macro-potion-slot{box-sizing:border-box;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);cursor:pointer;flex:none;width:44px;height:44px;padding:5px;position:relative}.macro-potion-slot img{object-fit:contain;width:100%;height:100%;display:block}.macro-potion-slot-drop{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.macro-potion-count{color:var(--text-primary);font:700 .6rem var(--font-mono);text-shadow:0 0 2px #000,0 0 2px #000;position:absolute;bottom:1px;left:2px}.macro-potion-count-out{color:var(--vital-ruby)}.macro-potion-setting{flex:1;grid-template-columns:minmax(0,1fr) 32px;align-items:center;gap:2px 6px;min-width:0;display:grid}.macro-potion-slider{--macro-gauge-color:var(--vital-ruby);--macro-track:linear-gradient(90deg, var(--macro-gauge-color) 0 var(--macro-gauge-fill), var(--rf-field-bg) var(--macro-gauge-fill) 100%);appearance:none;box-sizing:border-box;cursor:ew-resize;touch-action:pan-y;background:0 0;border:0;width:100%;min-width:0;height:36px;margin:0;padding:0}.macro-potion-slider::-webkit-slider-runnable-track{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);background:var(--macro-track);height:12px}.macro-potion-slider::-moz-range-track{box-sizing:border-box;border:1px solid var(--rf-inset-edge-dark);background:var(--macro-track);height:12px}.macro-potion-slider::-webkit-slider-thumb{appearance:none;box-sizing:border-box;background:var(--text-gold);border:1px solid #74602e;border-radius:2px;width:10px;height:22px;margin-top:-6px}.macro-potion-slider::-moz-range-thumb{box-sizing:border-box;background:var(--text-gold);border:1px solid #74602e;border-radius:2px;width:10px;height:22px}.macro-potion-row-fp .macro-potion-slider{--macro-gauge-color:#2563eb}.macro-potion-row-sp .macro-potion-slider{--macro-gauge-color:#65a30d}.macro-potion-clear{box-sizing:border-box;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-inset-bg);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;grid-area:1/2/3;padding:0;font-size:.6rem;line-height:1}.macro-potion-clear{margin-left:auto;font-size:.85rem}.macro-potion-clear:hover{color:var(--vital-ruby)}.macro-potion-threshold{min-width:0;color:var(--text-primary);font:.6rem var(--font-mono);white-space:nowrap;text-align:center;grid-column:1}.macro-potion-row-off .macro-potion-slider{filter:grayscale();opacity:.45}.macro-potion-error{color:var(--vital-ruby);grid-column:1/-1;font-size:.65rem}.macro-hint{padding:0 var(--space-2) var(--space-2);color:var(--text-secondary);margin:0;font-size:.65rem;line-height:1.35}.macro-potion-row button:focus-visible,.macro-potion-slider:focus-visible{outline:1px solid var(--energy-cyan);outline-offset:-2px}.options-window{pointer-events:auto;width:min(18rem, calc(var(--app-viewport-width,100dvw) - 24px));min-width:0;max-height:min(44rem, calc(var(--app-viewport-height,100dvh) - 24px));z-index:var(--z-game-window,650);position:absolute}.options-window>.card-body{display:flex;overflow:hidden}.options-scroll{overscroll-behavior:contain;touch-action:pan-y;min-height:0;padding:var(--space-1);gap:var(--space-2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.options-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;display:flex}.options-section{border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);flex-shrink:0;min-width:0}.options-section-title{padding:2px var(--space-2);background:linear-gradient(90deg, var(--rf-panel-bevel) 0%, transparent 85%);color:var(--text-primary);letter-spacing:.02em;margin:0;font-size:.8rem;font-weight:700}.options-section-body{gap:var(--space-2);padding:var(--space-2);flex-direction:column;display:flex}.options-row{align-items:center;gap:var(--space-2);color:var(--text-primary);grid-template-columns:minmax(0,1fr) auto;font-size:.8rem;display:grid}.options-row-disabled{opacity:.5}.options-label{flex-direction:column;grid-column:1/-1;gap:1px;display:flex}.options-hint{color:var(--text-muted);font-size:.65rem}.options-range{width:100%;min-width:0;accent-color:var(--text-gold)}.options-value{min-width:2rem;color:var(--text-secondary);font:.75rem var(--font-mono);text-align:right}.options-choice{border:1px solid var(--rf-inset-edge-dark);grid-column:1/-1;display:flex}.options-choice-btn{min-width:0;min-height:1.9rem;padding:0 var(--space-1);border:none;border-right:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);color:var(--text-secondary);font:.75rem var(--font-mono);cursor:pointer;flex:1}.options-choice-btn:last-child{border-right:none}.options-choice-btn:hover:not(:disabled){color:var(--text-primary)}.options-choice-btn-active{background:var(--surface-elevated);color:var(--text-gold);box-shadow:inset 0 0 0 1px var(--elevation-active-border)}.options-choice-btn:disabled{cursor:default}.options-check{column-gap:var(--space-2);color:var(--text-primary);cursor:pointer;grid-template-columns:auto 1fr;align-items:center;font-size:.8rem;display:grid}.options-check input{width:1rem;height:1rem;accent-color:var(--text-gold)}.options-check .options-hint{grid-column:2}@media (width<=720px),(pointer:coarse){.options-window{top:12px!important;left:12px!important}.options-row{row-gap:var(--space-1);grid-template-columns:1fr auto}.options-label{align-items:baseline;gap:var(--space-2);flex-direction:row;grid-column:1/3}.options-range{grid-column:1}.options-choice{grid-column:1/3}.options-choice-btn{min-height:44px;font-size:.7rem}.options-check input{width:1.3rem;height:1.3rem}}.npc-dialog{z-index:800;pointer-events:auto;background:radial-gradient(70% 62% at 50% 34%,#0000 38%,#0000008c 78%,#000000d9 100%),linear-gradient(#00000059 0%,#0000 18%);animation:.35s ease-out npc-dialog-in;position:fixed;inset:0}@keyframes npc-dialog-in{0%{opacity:0}}.npc-dialog-panel{box-sizing:border-box;align-items:center;gap:var(--space-2);min-height:30vh;max-height:100dvh;padding:var(--space-3) var(--space-4) max(var(--space-6), env(safe-area-inset-bottom));border-top:1px solid var(--rf-panel-bevel);background:linear-gradient(#0e1114e0 0%,#080a0cf5 40%,#040506fa 100%);flex-direction:column;display:flex;position:absolute;inset:auto 0 0;overflow-y:auto;box-shadow:0 -8px 24px #0009}.npc-dialog-header{flex-direction:column;align-items:center;gap:2px;display:flex}.npc-dialog-title{color:var(--text-secondary);letter-spacing:.04em;font-size:.72rem}.npc-dialog-name{color:var(--text-primary);font:600 1.15rem var(--font-display);letter-spacing:.02em}.npc-dialog-nav{gap:var(--space-2);margin-top:var(--space-1);display:flex}.npc-dialog-nav-btn{min-width:7.5rem;min-height:1.7rem;padding:0 var(--space-3);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-bar-metal);color:var(--text-primary);cursor:pointer;font-size:.72rem}.npc-dialog-nav-btn:hover:not(:disabled){border-color:var(--rf-panel-bevel)}.npc-dialog-nav-btn:disabled{opacity:.4;cursor:default}.npc-dialog-divider{background:linear-gradient(90deg, transparent, var(--rf-panel-bevel) 20%, var(--rf-panel-bevel) 80%, transparent);opacity:.6;width:min(70rem,100%);height:1px}.npc-dialog-text{max-width:46rem;margin:var(--space-2) 0 0;color:var(--text-primary);text-align:center;text-shadow:0 1px 2px #000;font-size:1rem;line-height:1.55}.npc-dialog-actions{width:100%;margin-top:var(--space-2);justify-content:center;display:flex}.npc-dialog-next{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);width:min(22rem,100%);min-height:2rem;color:var(--text-primary);cursor:pointer;background:linear-gradient(#2b3136 0%,#1c2024 100%);font-size:.8rem;display:inline-flex}.npc-dialog-next:hover{border-color:var(--elevation-active-border)}.npc-dialog-key{padding:0 var(--space-1);border:1px solid var(--rf-panel-bevel);color:var(--text-secondary);font:.65rem var(--font-mono)}.npc-dialog-menu{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));width:min(42rem,100%);display:grid}.npc-dialog-menu-btn{min-width:0;min-height:2rem;padding:var(--space-1) var(--space-2);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);color:var(--text-gold);overflow-wrap:anywhere;cursor:pointer;background:linear-gradient(#2b3136 0%,#1c2024 100%);font-size:.8rem;line-height:1.15}.npc-dialog-menu-btn:hover{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}@media (width<=720px),(pointer:coarse){.npc-dialog-panel{min-height:38vh;padding-left:max(var(--space-3), env(safe-area-inset-left));padding-right:max(var(--space-3), env(safe-area-inset-right))}.npc-dialog-nav-btn{flex:1;min-width:0;min-height:2.4rem}.npc-dialog-nav{width:100%}.npc-dialog-text{font-size:.92rem}.npc-dialog-next,.npc-dialog-menu-btn{min-height:2.75rem}.npc-dialog-menu{gap:var(--space-1);width:100%}.npc-dialog-menu-btn{padding-inline:var(--space-1);font-size:clamp(.62rem,2.4vw,.8rem)}.npc-dialog-key{display:none}}.combine-window{pointer-events:auto;z-index:var(--z-game-window,650);color:#d5d4c8;background:linear-gradient(100deg,#1c2424e8,#292b27d9,#121a1ce8);border:2px ridge #69736c;width:256px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);font:12px Arial,sans-serif;overflow-y:auto}.combine-window>.card-header{touch-action:none;flex-shrink:0}.combine-mechanism{aspect-ratio:300/310;background:repeating-linear-gradient(90deg,#0000 0 26px,#afbca207 27px 29px);width:100%;position:relative}.combine-window>.card-body{min-height:0;padding:0}.combine-mechanism svg{fill:none;width:100%;height:100%;position:absolute;inset:0}.combine-outer{stroke:#0c1111;stroke-width:7px}.combine-ring{stroke:#8b9280;stroke-width:5px;opacity:.4}.combine-ring.ring-0{stroke:#5d6c64;stroke-width:2px}.combine-ring.ring-1{stroke-dasharray:175 30 70 30}.combine-ring.ring-2{stroke:#c1c7ad;stroke-width:6px}.combine-ring.ring-3{stroke-width:3px}.combine-link{stroke:#62598c;stroke-width:2px;opacity:.45}.combine-link.is-filled{stroke:#aaa0f7;opacity:1}.combine-engraving{stroke:#7f8575;opacity:.25;stroke-width:3px}.combine-socket{background:linear-gradient(135deg,#060707eb,#1e2020db);border:1px solid #646b5c;width:38px;height:38px;padding:2px;position:absolute;transform:translate(-50%,-50%);box-shadow:inset 0 0 3px #000,0 0 0 1px #131a17}.combine-socket img,.combine-picker img{object-fit:contain;width:100%;height:100%}.combine-socket small,.combine-picker small{color:#fff;text-shadow:1px 1px #000;position:absolute;bottom:0;right:1px}.combine-trigger{color:#aaa0e0;background:radial-gradient(circle,#242946 20%,#141824 48%,#52616b 53%,#18242d 63%,#080e12 68%);border:3px ridge #8c9eab;border-radius:50%;width:76px;height:76px;position:absolute;top:51.61%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #132119,0 0 0 9px #7265b1,0 0 12px #7368db}.combine-trigger span{text-shadow:0 0 5px #9e83ff;font-size:38px}.combine-trigger:disabled{cursor:default}.combine-content{gap:8px;padding:4px 9px 10px;display:grid}.combine-content p{margin:0;line-height:1.4}.combine-hint{color:#aaa99c;font-size:11px}.combine-feedback:not(:empty){background:#101b23;border:1px solid #718496;padding:8px;line-height:1.4}.combine-feedback[role=alert]{color:#ffd2a4;border-color:#ac7854}.combine-content button{color:#e4e6de;cursor:pointer;background:linear-gradient(#35576b,#111e28 55%,#284c61);border:1px ridge #889ea2;min-height:32px}.combine-content button:disabled{opacity:.5;cursor:default}.combine-content button:focus-visible,.combine-socket:focus-visible,.combine-trigger:focus-visible{outline-offset:2px;outline:2px solid #c1b6ff}.combine-picker{gap:5px;max-height:210px;display:grid;overflow:auto}.combine-picker label{align-items:center;gap:6px;display:flex}.combine-picker label>span{overflow-wrap:anywhere;flex:1}.combine-picker button{background:#121918;flex-shrink:0;width:44px;height:44px;padding:2px;position:relative}.combine-picker input{color:#fff;background:#131c20;border:1px solid #697780;width:48px;min-height:36px}.combine-content button[aria-pressed=true]{border:2px solid #a89cff;box-shadow:0 0 5px #7867cd}.combine-confirm-backdrop{z-index:910;pointer-events:auto;background:#0005;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.combine-confirm{color:#e4e6de;box-sizing:border-box;background:linear-gradient(#303632f2,#111c20f5);border:1px solid #9ca7a0;gap:8px;width:min(440px,100vw - 24px);padding:18px;font:12px Arial,sans-serif;display:grid;box-shadow:0 0 0 3px #121b1d,0 12px 32px #0009}.combine-confirm p{margin:0;line-height:1.4}.combine-confirm>div{justify-content:flex-end;gap:8px;display:flex}.combine-confirm button{color:#e4e6de;cursor:pointer;background:linear-gradient(#35576b,#111e28 55%,#284c61);border:1px ridge #889ea2;min-width:66px;min-height:44px}.is-combining .combine-link.is-filled{stroke-dasharray:9 13;animation:.55s linear infinite combine-energy}.is-combining .combine-trigger span{animation:.8s ease-in-out infinite alternate combine-pulse;display:block}@keyframes combine-energy{to{stroke-dashoffset:-44px}}@keyframes combine-pulse{to{opacity:.45;transform:scale(.85)}}@media (width<=600px){.combine-window{width:280px}.combine-socket{width:44px;height:44px}.combine-content button{min-height:44px}}@media (prefers-reduced-motion:reduce){.is-combining .combine-link.is-filled,.is-combining .combine-trigger span{animation:none}}.reward-window{pointer-events:auto;z-index:680;color:#e4e6de;background:#172024f5;width:360px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px)}.reward-window>.card-header{touch-action:none;flex-shrink:0}.reward-window>.card-body{min-height:0;padding:12px;overflow:auto}.reward-window-content{gap:12px;font:12px Arial,sans-serif;display:grid}.reward-window-content p,.reward-window-content h2,.reward-window-content h3{margin:0;line-height:1.4}.reward-window-content h2{color:#e2cf95;font-size:15px}.reward-items{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;display:grid}.reward-item{min-width:0;min-height:52px;color:inherit;text-align:left;overflow-wrap:anywhere;background:#0d151bbd;border:1px solid #5e7179;align-items:center;gap:8px;padding:5px;display:flex}.reward-item-icon{background:#0b1114;flex-shrink:0;width:44px;height:44px;display:block;position:relative}.reward-item-icon img{object-fit:contain;width:100%;height:100%}.reward-item-icon strong{color:#fff;text-shadow:1px 1px #000;position:absolute;bottom:0;right:1px}.reward-item small{color:#dfc58d;display:block}button.reward-item{cursor:pointer}.reward-item[aria-pressed=true]{border-color:#b8a2ff;box-shadow:inset 0 0 0 1px #b8a2ff,0 0 5px #7867cd}.reward-window button:focus-visible{outline-offset:2px;outline:2px solid #c1b6ff}.reward-window-confirm,.reward-window-content>button{cursor:pointer;min-height:44px;color:inherit;background:linear-gradient(#35576b,#111e28 55%,#284c61);border:1px ridge #889ea2}.reward-window button:disabled{opacity:.55;cursor:default}.reward-window-error,.reward-window-destroy h2{color:#ffb39c}.reward-window-destroy .reward-item{border-color:#86564c}.combine-result-resume{pointer-events:auto;z-index:670;min-height:44px;position:fixed;top:150px;right:16px}.store-window{--store-slot:min(2.75rem, calc((100vw - 6rem) / 5));pointer-events:auto;width:fit-content;max-width:calc(100vw - 2 * var(--space-3));max-height:calc(100dvh - 2 * var(--space-3));z-index:var(--z-game-window,650);position:absolute}.store-window>.card-body{overflow-y:auto}.store-tabs{padding:var(--space-2) var(--space-2) 0;gap:2px;display:flex}.store-tab{border:1px solid var(--rf-inset-edge-dark);background:var(--rf-inset-bg);min-height:1.9rem;color:var(--text-secondary);cursor:pointer;border-bottom:none;flex:1;font-size:.85rem}.store-tab-active{background:var(--rf-bar-metal);color:var(--text-primary);border-top-color:var(--elevation-active-border)}.store-grid{grid-template-columns:repeat(5, var(--store-slot));justify-content:center;gap:var(--space-1);margin:0 var(--space-2);padding:var(--space-2);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);display:grid}.store-cell{aspect-ratio:1;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);cursor:pointer;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;padding:0;position:relative}.store-cell img{width:100%;height:100%;display:block}.store-cell:hover{border-color:var(--text-secondary)}.store-cell-empty{cursor:default;opacity:.7}.store-cell-chosen{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.store-cell-count{color:var(--text-primary);font:700 .65rem var(--font-mono);text-shadow:0 0 2px #000,0 0 2px #000;position:absolute;bottom:1px;right:2px}.store-pager{align-items:center;gap:var(--space-2);margin:var(--space-2) var(--space-2) 0;grid-template-columns:1fr auto 1fr;display:grid}.store-pager-btn{min-height:1.7rem;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.8rem}.store-pager-btn:last-child{text-align:right}.store-pager-btn:hover:not(:disabled){color:var(--text-primary)}.store-pager-btn:disabled{opacity:.35;cursor:default}.store-pager-page{min-width:5rem;padding:2px var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);color:var(--text-primary);font:.8rem var(--font-mono);text-align:center}.store-hint,.store-notice{margin:var(--space-1) var(--space-2) 0;text-align:center;font-size:.7rem}.store-hint{color:var(--text-secondary)}.store-notice{color:var(--vital-ruby)}.store-total{margin:var(--space-2);padding:var(--space-2);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);gap:var(--space-1);flex-direction:column;display:flex}.store-total-title{margin:0 0 var(--space-1);color:var(--text-primary);text-align:center;font-size:.8rem;font-weight:600}.store-total-row{gap:var(--space-1);grid-template-columns:1fr 6rem;display:grid}.store-total-value{padding:2px var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);color:var(--text-primary);font:.85rem var(--font-mono);text-align:right}.store-total-label{padding:2px var(--space-1);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-bar-metal);color:var(--text-primary);text-align:center;font-size:.8rem}.store-actions{justify-content:center;gap:var(--space-2);padding:0 var(--space-2) var(--space-3);display:flex}.store-ok{border:1px solid var(--rf-panel-bevel);min-width:7rem;min-height:2rem;color:var(--text-primary);cursor:pointer;background:linear-gradient(#2b3136 0%,#1c2024 100%);font-weight:600}.store-ok:hover:not(:disabled){border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.store-ok:disabled{opacity:.4;cursor:default}@media (width<=720px),(pointer:coarse){.store-tab,.store-ok{min-height:2.6rem}.store-pager-btn{min-height:2.4rem}}@media (height<=520px) and (orientation:landscape){.store-window{--store-slot:clamp(1.75rem, calc((100dvh - 12rem) / 4), 2.15rem)}.store-window .card-header-rf{--rf-header-scale:1}.store-window .card-close-rf{width:40px;height:32px;top:50%;right:0;transform:translateY(-50%)}.store-window>.card-body{padding:var(--space-1)}.store-checkout{margin-top:var(--space-1)}.store-tabs{padding:0 0 var(--space-1)}.store-tab{min-height:2rem}.store-grid{padding:var(--space-1);gap:3px;margin:0}.store-pager{margin:var(--space-1) 0 0;gap:2px}.store-pager-btn{min-height:2rem;padding:0}.store-pager-page{min-width:0;padding-inline:var(--space-1)}.store-total{padding:var(--space-1);gap:2px;margin:0}.store-total-title{font-size:.7rem}.store-total-row{grid-template-columns:minmax(0,1fr) 6rem;gap:2px}.store-total-value,.store-total-label{min-width:0;font-size:.7rem}.store-actions{padding:var(--space-1) 0 0}.store-ok{min-width:7rem;min-height:2rem}}.unit-tuning{--unit-slot:min(2.75rem, calc((100vw - 7rem) / 6));pointer-events:auto;width:min(19rem, calc(100vw - 2 * var(--space-3)));max-height:calc(100dvh - 2 * var(--space-3));z-index:var(--z-game-window,650);position:absolute}.unit-tuning>.card-body{padding-bottom:var(--space-2);overflow-y:auto}.unit-tuning-empty{margin:var(--space-3);color:var(--text-secondary);text-align:center;font-size:.8rem}.unit-tuning-units{margin:var(--space-2) var(--space-2) 0;gap:2px;display:flex}.unit-tuning-unit,.unit-tuning-tab{border:1px solid var(--rf-inset-edge-dark);background:var(--rf-inset-bg);min-height:1.7rem;color:var(--text-secondary);cursor:pointer;flex:1;font-size:.75rem}.unit-tuning-unit-active,.unit-tuning-tab-active{background:var(--rf-bar-metal);color:var(--text-primary);border-top-color:var(--elevation-active-border)}.unit-tuning-tab:disabled{opacity:.45;cursor:default}.unit-tuning-stats{gap:2px var(--space-2);margin:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);grid-template-columns:1fr 1fr;font-size:.75rem;display:grid}.unit-tuning-stats div{gap:var(--space-1);display:flex}.unit-tuning-stats dt{color:var(--text-secondary)}.unit-tuning-stats dt:after{content:":"}.unit-tuning-stats dd{color:var(--text-primary);margin:0}.unit-tuning-top{gap:var(--space-2);margin:0 var(--space-2);grid-template-columns:auto 1fr;display:grid}.unit-tuning-key{align-items:center;gap:var(--space-1);flex-direction:column;display:flex}.unit-tuning-key-icon{width:calc(var(--unit-slot) * 1.4);cursor:default}.unit-tuning-arms{gap:var(--space-1);flex-direction:column;display:flex}.unit-tuning-arm{border:1px solid var(--rf-inset-edge-dark);background:var(--rf-inset-bg);font-size:.7rem}.unit-tuning-arm h3{padding:1px var(--space-1);background:var(--rf-bar-metal);color:var(--text-primary);text-align:center;margin:0;font-size:.72rem;font-weight:600}.unit-tuning-arm p{padding:0 var(--space-1);color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.unit-tuning-tabs{margin:var(--space-2) var(--space-2) 0;gap:2px;display:flex}.unit-tuning-slots,.unit-tuning-strip{justify-content:center;align-items:center;gap:var(--space-1);margin:0 var(--space-2);padding:var(--space-1);border:1px solid var(--rf-inset-edge-dark);border-top-color:var(--rf-inset-edge-light);background:var(--rf-inset-bg);display:flex}.unit-tuning-strip{border-top:none}.unit-tuning-slot{width:var(--unit-slot);aspect-ratio:1;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);cursor:pointer;padding:0;position:relative}.unit-tuning-slot img,.unit-tuning-doll-cell img{width:100%;height:100%;display:block}.unit-tuning-slot:hover:not(:disabled){border-color:var(--text-secondary)}.unit-tuning-slot-label{color:var(--text-secondary);font-size:.55rem}.unit-tuning-slot-active{border-color:var(--elevation-active-border);box-shadow:var(--elevation-active-shadow)}.unit-tuning-slot-chosen,.unit-tuning-slot-pending{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary) inset}.unit-tuning-slot-blocked{opacity:.4;cursor:not-allowed}.unit-tuning-slot-empty{opacity:.5;cursor:default}.unit-tuning-arrow{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.8rem}.unit-tuning-arrow:disabled{opacity:.3;cursor:default}.unit-tuning-doll{grid-template-columns:repeat(3, calc(var(--unit-slot) * 1.5));justify-content:center;gap:var(--space-1);margin:var(--space-2) var(--space-2) 0;padding:var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg);grid-template-areas:"shoulder head back""arms upper."".lower.";display:grid}.unit-tuning-doll-cell{aspect-ratio:1;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);cursor:pointer;padding:0}.unit-tuning-doll-cell-active{border-color:var(--elevation-active-border)}.unit-tuning-doll-cell-pending{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary) inset}.unit-tuning-info{min-height:2.2em;margin:var(--space-1) var(--space-2) 0;color:var(--text-secondary);font-size:.68rem;line-height:1.1rem}.unit-tuning-info strong{color:var(--text-primary)}.unit-tuning-info-hint{text-align:center}.unit-tuning-cost{margin:var(--space-1) var(--space-2) 0;color:var(--text-secondary);text-align:center;font-size:.78rem}.unit-tuning-cost strong{color:var(--text-gold);font-family:var(--font-mono)}.unit-tuning-notice{margin:2px var(--space-2) 0;color:var(--vital-ruby);text-align:center;font-size:.7rem}.unit-tuning-warn{color:var(--vital-ruby)}.unit-tuning-actions{justify-content:center;gap:var(--space-2);margin:var(--space-2) var(--space-2) 0;display:flex}.unit-tuning-footer{z-index:1;padding-bottom:var(--space-2);background:var(--rf-panel-bg);position:sticky;bottom:0;box-shadow:0 -6px 8px -6px #0009}.unit-tuning-btn{border:1px solid var(--rf-panel-bevel);background:var(--rf-bar-metal);min-width:5.5rem;min-height:1.8rem;color:var(--text-primary);cursor:pointer;font-size:.78rem}.unit-tuning-btn:hover:not(:disabled){border-color:var(--accent-primary)}.unit-tuning-btn:disabled{opacity:.4;cursor:default}.unit-tuning-approve:not(:disabled){border-color:var(--accent-primary);color:var(--text-gold)}.unit-tuning-strip-ammo{border-top:1px solid var(--rf-inset-edge-light)}.unit-tuning-ammo{margin:var(--space-2) var(--space-2) 0;padding:var(--space-2);border:1px solid var(--rf-inset-edge-dark);background:var(--rf-field-bg)}.unit-tuning-ammo-weapons{justify-content:center;gap:var(--space-4,1.5rem);display:flex}.unit-tuning-ammo-cell{flex-direction:column;align-items:center;gap:2px;display:flex}.unit-tuning-ammo-cell-big .unit-tuning-slot{width:calc(var(--unit-slot) * 1.6)}.unit-tuning-ammo-label{color:var(--text-secondary);font-size:.68rem}.unit-tuning-ammo-rounds{color:var(--text-primary);font-family:var(--font-mono);text-shadow:0 1px 1px #000,0 0 2px #000;pointer-events:none;font-size:.5rem;position:absolute;bottom:0;right:1px}.unit-tuning-ammo-title{margin:var(--space-2) 0 var(--space-1);padding:1px var(--space-1);background:var(--rf-bar-metal);color:var(--text-primary);font-size:.72rem;font-weight:600}.unit-tuning-ammo-packs{justify-content:center;gap:var(--space-1);flex-wrap:wrap;display:flex}.unit-tuning-slot:disabled{opacity:.4;cursor:not-allowed}@media (width<=720px),(pointer:coarse){.unit-tuning{--unit-slot:clamp(2.2rem, calc((100vw - 8rem) / 6), 2.75rem)}.unit-tuning-unit,.unit-tuning-tab{min-height:2.4rem}.unit-tuning-arrow{min-width:2rem;min-height:var(--unit-slot);font-size:1rem}.unit-tuning-btn{min-height:2.6rem}.unit-tuning-actions .unit-tuning-btn{flex:1}.unit-tuning-info{min-height:3.3em}}@media (width<=360px){.unit-tuning-doll{grid-template-columns:repeat(3, calc(var(--unit-slot) * 1.25))}.unit-tuning-stats{grid-template-columns:1fr}}@media (height<=520px) and (orientation:landscape){.unit-tuning{--unit-slot:clamp(1.7rem, calc((100dvh - 14rem) / 4), 2.1rem);width:min(38rem, calc(100vw - 2 * var(--space-3)));max-height:calc(100dvh - 70px - var(--space-2))}.unit-tuning .card-header-rf{--rf-header-scale:1}.unit-tuning>.card-body{padding-bottom:0;overflow:hidden}.unit-tuning-layout{max-height:calc(100dvh - 70px - var(--space-2) - 2.4rem);grid-template-columns:minmax(0,14rem) minmax(0,1fr);display:grid}.unit-tuning-overview,.unit-tuning-workbench{min-height:0;overflow-y:auto}.unit-tuning-overview{padding-bottom:var(--space-2);border-right:1px solid var(--rf-inset-edge-dark)}.unit-tuning-stats{margin:var(--space-1);padding:2px var(--space-1)}.unit-tuning-doll{grid-template-columns:repeat(3, calc(var(--unit-slot) * 1.2));margin-top:var(--space-1);padding:var(--space-1)}.unit-tuning-info{min-height:2.2em}.unit-tuning-btn{min-height:2.2rem}.unit-tuning-footer .unit-tuning-actions{margin-top:var(--space-1)}}.class-window{pointer-events:auto;width:min(19rem, calc(100vw - 2 * var(--space-3)));max-height:calc(100dvh - 2 * var(--space-3));z-index:var(--z-game-window,650);position:absolute}.class-window>.card-body{min-height:0;overflow-y:auto}.class-window-content{gap:var(--space-2);padding:var(--space-2) var(--space-3) var(--space-3);color:var(--text-primary);font-size:.8rem;display:grid}.class-window-classes{gap:var(--space-2);flex-wrap:wrap;display:flex}.class-window-class{box-sizing:content-box;cursor:pointer;background-color:var(--rf-bar-slot-bg);border:1px solid var(--rf-bar-slot-rim);background-repeat:no-repeat;width:44px;height:44px;padding:0}.class-window-class[aria-checked=true]{border-color:var(--text-gold);box-shadow:0 0 0 1px var(--text-gold), 0 0 6px var(--accent-gold-hover)}.class-window-class:disabled{cursor:default}.class-window-class:focus-visible{outline:2px solid var(--text-cyan);outline-offset:2px}.class-window-name{color:var(--text-gold);margin:0;font-size:.95rem}.class-window-text{white-space:pre-line;color:var(--text-secondary);margin:0;line-height:1.45}.class-window-description{max-height:7.5rem;padding:var(--space-2);background:var(--rf-inset-bg);border:1px solid var(--rf-inset-edge-dark);overflow-y:auto}.class-window-heading{margin:0 0 var(--space-1);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.7rem;font-weight:600}.class-window-skills{gap:var(--space-1);flex-wrap:wrap;display:flex}.class-window-skill{cursor:pointer;background:var(--rf-bar-slot-bg);border:1px solid var(--rf-bar-slot-rim);width:2.75rem;height:2.75rem;padding:0}.class-window-skill:disabled{cursor:default}.class-window-skill:focus-visible{outline:2px solid var(--text-cyan);outline-offset:2px}.class-window-skill img{width:100%;height:100%;display:block}.class-window-note,.class-window-current,.class-window-fee{margin:0;line-height:1.4}.class-window-note{margin-bottom:var(--space-1);color:var(--text-secondary)}.class-window-current strong,.class-window-fee{color:var(--text-gold)}.class-window-fee-short{color:var(--vital-ruby)}.class-window-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.class-window-actions>*{min-width:5rem;min-height:2.75rem}.unit-menu{pointer-events:auto;z-index:var(--z-game-window,650);gap:var(--space-2);width:11rem;padding:var(--space-3) var(--space-3) var(--space-3);border:1px solid var(--rf-panel-bevel);background:var(--rf-panel-bg);flex-direction:column;display:flex;position:absolute;top:30%;left:50%;transform:translate(-50%);box-shadow:0 4px 16px #0009}.unit-menu-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.9rem;position:absolute;top:0;right:2px}.unit-menu-btn{color:#f4f6f8;cursor:pointer;text-shadow:0 1px 1px #000000b3;border:1px solid #0b0d0e;border-radius:.95rem;min-height:1.9rem;font-size:.85rem}.unit-menu-board{background:linear-gradient(#6f8fe6 0%,#3a5bc0 55%,#2c469b 100%)}.unit-menu-takeout{background:linear-gradient(#b0504d 0%,#7d2826 55%,#5f1c1b 100%)}.unit-menu-keep{background:linear-gradient(#3f4a63 0%,#283146 55%,#1c2333 100%)}.unit-menu-btn:hover:not(:disabled){filter:brightness(1.15)}.unit-menu-btn:disabled{opacity:.55;cursor:not-allowed}.riding-panel{--riding-slot:clamp(2.4rem, 5vw, 2.9rem);pointer-events:auto;border:1px solid var(--rf-panel-bevel);background:var(--rf-panel-bg);gap:3px;padding:3px;display:flex;position:relative;box-shadow:0 4px 12px #00000080}.riding-panel-btn{width:var(--riding-slot);aspect-ratio:1;border:1px solid var(--rf-bar-slot-rim);background:var(--rf-bar-slot-bg);color:var(--text-secondary);cursor:pointer;justify-content:center;align-items:center;padding:0;display:flex}.riding-panel-btn img{width:100%;height:100%;display:block}.riding-panel-btn:hover:not(:disabled){border-color:var(--text-secondary);color:var(--text-primary)}.riding-panel-btn:disabled{opacity:.4;cursor:default}.riding-panel-btn-active{border-color:var(--accent-primary);box-shadow:0 0 0 1px var(--accent-primary) inset, 0 0 6px var(--accent-primary)}.riding-panel-btn-label{font-size:.6rem}.riding-panel-leave{color:var(--text-gold)}.cockpit-window{border:1px solid var(--rf-panel-bevel);pointer-events:none;flex-direction:column;width:clamp(9rem,19vw,12rem);display:flex;position:relative;box-shadow:0 4px 12px #0009}.cockpit-window-title{justify-content:space-between;align-items:center;gap:var(--space-1);padding:1px var(--space-1) 1px var(--space-2);background:var(--rf-bar-metal);color:var(--text-primary);pointer-events:auto;font-size:.68rem;font-weight:600;display:flex}.cockpit-window-title span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.cockpit-window-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;font-size:.9rem;line-height:1}.cockpit-window-close:hover{color:var(--text-primary)}.cockpit-window-view{aspect-ratio:1;box-shadow:inset 0 0 0 1px var(--rf-inset-edge-dark), inset 0 0 12px #0009}@media (width<=720px),(pointer:coarse){.cockpit-window{width:clamp(7rem,28vw,9rem)}.cockpit-window-close{min-width:1.8rem;min-height:1.6rem}}@media (height<=520px) and (orientation:landscape){.cockpit-window{width:clamp(6rem,14vw,8rem)}}.vitals-bar{top:max(var(--space-4), env(safe-area-inset-top));left:max(var(--space-4), env(safe-area-inset-left));width:clamp(12rem,24vw,14rem);max-width:calc(100vw - 2 * var(--space-4));aspect-ratio:223/69;pointer-events:none;filter:drop-shadow(0 4px 8px #000c);position:absolute}.vitals-frame{width:100%;height:100%;image-rendering:crisp-edges;image-rendering:pixelated;background:url(/game-gui/hud/vitals/healthgui-frame.png) 0 0/100% 100% no-repeat;position:relative}.vitals-level{color:#f6fbff;width:14.3498%;height:44.9275%;font:700 clamp(.9rem, 1.7vw, 1.18rem) var(--font-mono);text-align:center;text-shadow:0 1px #04152c,0 0 4px #6ed2fff2,0 0 8px #061b42f2;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;top:23.1884%;left:14.3498%}.vitals-row{--vital-percent:100%;width:55.6054%;height:15.942%;position:absolute;left:39.4619%}.vitals-gauge{clip-path:inset(0 calc(100% - var(--vital-percent)) 0 0);background-repeat:no-repeat;background-size:100% 100%;transition:clip-path .2s ease-out;position:absolute;inset:0}.vitals-value{color:#fff8d6;font:700 clamp(.42rem, .8vw, .55rem) var(--font-mono);text-align:center;white-space:nowrap;text-shadow:0 1px #000,1px 0 #000,0 -1px #000,-1px 0 #000;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}.vitals-row-hp{top:24.6377%}.vitals-row-fp{top:43.4783%}.vitals-row-sp{top:65.2174%}.vitals-gauge-hp{background-image:url(/game-gui/hud/vitals/healthbar-fill.png)}.vitals-row-unit .vitals-gauge-hp{filter:hue-rotate(200deg)saturate(.7)brightness(1.1)}.vitals-row-unit .vitals-gauge-sp{filter:hue-rotate(80deg)saturate(1.2)brightness(1.15)}.vitals-gauge-fp{background-image:url(/game-gui/hud/vitals/fpbar-fill.png)}.vitals-gauge-sp{background-image:url(/game-gui/hud/vitals/spbar-fill.png)}.vitals-def{--def-percent:100%;background:#030c1ad1;border:1px solid #0a182af2;width:55.6054%;height:13%;position:absolute;top:88%;left:39.4619%;overflow:hidden}.vitals-def-fill{width:var(--def-percent);background:linear-gradient(90deg,#aeb8c4,#eef7ff 55%,#6d7886);transition:width .2s ease-out;position:absolute;inset:0}.vitals-def-value{color:#fff8d6;font:700 clamp(.38rem, .72vw, .5rem) var(--font-mono);text-align:center;white-space:nowrap;text-shadow:0 1px #000,1px 0 #000,0 -1px #000,-1px 0 #000;justify-content:center;align-items:center;line-height:1;display:flex;position:absolute;inset:0}@media (width<=720px),(pointer:coarse){.vitals-bar{top:max(var(--space-3), env(safe-area-inset-top));left:max(var(--space-3), env(safe-area-inset-left));width:clamp(9.5rem,46vw,11rem);max-width:calc(100vw - 2 * var(--space-3))}}@media (width<=420px){.vitals-bar{width:clamp(8.75rem,43vw,9.75rem)}}:root{--hud-exp-bar-height:8px;--hud-exp-plate-height:30px;--hud-exp-readout-width:9.25rem}.exp-bar{z-index:510;pointer-events:none;position:fixed;bottom:0;left:0;right:0}.exp-bar:before{content:"";left:0;right:0;bottom:var(--hud-exp-bar-height);height:var(--hud-exp-plate-height);border-top:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-metal);box-shadow:inset 0 1px 0 var(--rf-bar-edge-light), 0 -2px 10px #00000073;position:absolute}.exp-bar-track{height:var(--hud-exp-bar-height);box-sizing:border-box;border-top:1px solid var(--rf-bar-seam);background:var(--rf-bar-edge-light);gap:2px;padding:1px 0;display:flex;position:relative}.exp-bar-segment{background:var(--rf-bar-track);flex:1 1 0;position:relative;overflow:hidden}.exp-bar-fill{transform-origin:0;transform:scaleX(var(--exp-fill,0));background:linear-gradient(180deg, #ffe7a3 0%, var(--text-gold) 45%, #b8741a 100%);transition:transform .25s ease-out;position:absolute;inset:0;box-shadow:0 0 6px #fbbf248c}.exp-bar-readout{left:max(.75rem, env(safe-area-inset-left));bottom:calc(var(--hud-exp-bar-height) + (var(--hud-exp-plate-height) - 18px) / 2);width:var(--hud-exp-readout-width);box-sizing:border-box;border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-exp-plate);height:18px;box-shadow:inset 0 1px 0 #0009, 0 1px 0 var(--rf-bar-edge-light);border-radius:2px;justify-content:space-between;align-items:center;gap:.6rem;padding:0 .6rem;display:flex;position:absolute}.exp-bar-readout-label{color:var(--rf-bar-exp-label);letter-spacing:.04em;font:700 .66rem Georgia,Times New Roman,serif}.exp-bar-readout-value{color:var(--text-gold);font:600 .68rem var(--font-mono)}@media (prefers-reduced-motion:reduce){.exp-bar-fill{transition:none}}@media (width<=720px),(pointer:coarse){:root{--hud-exp-bar-height:6px}.exp-bar-track{gap:1px}.exp-bar:before{display:none}.exp-bar-readout{left:max(.5rem, env(safe-area-inset-left));right:auto;bottom:calc(var(--hud-exp-bar-height) + 2px);width:auto;height:16px;padding:0 .45rem}.exp-bar-readout-label{font-size:.55rem}.exp-bar-readout-value{font-size:.6rem}}.hud-button-box{--hud-box-btn-size:30px;border:1px solid var(--rf-bar-edge-dark);background:var(--rf-bar-well-bg);box-shadow:inset 0 1px 0 var(--rf-bar-well-top), 0 1px 0 var(--rf-bar-well-bottom);pointer-events:auto;-webkit-user-select:none;user-select:none;flex-shrink:0;gap:1px;padding:1px;display:flex}.hud-box-btn{width:var(--hud-box-btn-size);height:var(--hud-box-btn-size);cursor:pointer;touch-action:manipulation;background:0 0;border:none;padding:0;position:relative}.hud-box-btn img{pointer-events:none;width:100%;height:100%;display:block}.hud-box-btn:hover:not(:disabled){filter:brightness(1.25)}.hud-box-btn:focus-visible{outline:1px solid var(--energy-cyan)}.hud-box-btn:disabled{cursor:default;filter:grayscale(.6)brightness(.7)}.hud-box-btn-active{box-shadow:inset 0 0 0 1px var(--elevation-active-border), 0 0 6px #d4a24680}.hud-box-btn-hotkey{color:var(--text-gold);font:700 .5rem var(--font-mono);pointer-events:none;background:#000000bf;padding:0 2px;line-height:.7rem;position:absolute;bottom:0;right:0}@media (width<=720px),(pointer:coarse){.hud-button-box{--hud-box-btn-size:1.9rem}}.sight-overlay{z-index:40;pointer-events:none;transition:background .4s ease-out;position:fixed;inset:0}.sight-overlay-dim{background:radial-gradient(circle at 50% 55%,#0000 28%,#0000008c 55%,#000000e6 85%)}.sight-overlay-blind{background:radial-gradient(circle at 50% 55%,#0000 8%,#000000eb 22%,#000 40%)}@media (prefers-reduced-motion:reduce){.sight-overlay{transition:none}}.quest-book{background:color-mix(in srgb, var(--rf-panel-bg) 90%, transparent);pointer-events:auto;z-index:650;width:min(390px, calc(100vw - var(--space-6) * 2));max-height:calc(100dvh - var(--space-6) * 2);color:var(--text-primary);font-family:var(--font-display);position:fixed;overflow:auto}.quest-book-summary,.quest-book-empty,.quest-book-error{padding:var(--space-3) var(--space-4)}.quest-book-summary,.quest-book-code,.quest-book-entry small{color:var(--text-secondary);font-family:var(--font-mono)}.quest-book-layout{gap:var(--space-4);padding:0 var(--space-4) var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.quest-book-list{gap:var(--space-2);flex-direction:column;max-height:55dvh;display:flex;overflow:auto}.quest-book-entry{text-align:left;width:100%}.quest-book-entry .btn-label{white-space:normal}.quest-book-entry small{margin-top:var(--space-1);display:block}.quest-book-detail{min-width:0;max-height:55dvh;overflow:auto}.quest-book-detail h2,.quest-book-detail h3{margin:0 0 var(--space-3)}.quest-book-description{white-space:pre-line;line-height:1.5}.quest-description-preview{margin:8px 0}.quest-description-preview .quest-book-description{margin:4px 8px}.quest-description-clipped{-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.quest-description-toggle{color:var(--text-secondary);font:inherit;cursor:pointer;touch-action:manipulation;background:0 0;border:0;min-height:32px;padding:4px 8px;text-decoration:underline}.quest-description-toggle:focus-visible{outline:1px solid var(--energy-cyan)}.quest-book-tasks{padding:0;list-style:none}.quest-book-tasks li{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--border-subtle);display:flex}.quest-book-tasks strong{white-space:nowrap;font-family:var(--font-mono)}.quest-book-finished,.quest-book-task-done{color:var(--vital-emerald)}.quest-book-error{color:var(--vital-ruby)}.quest-reward-report{margin:0 var(--space-4) var(--space-4);padding:var(--space-4);background:var(--surface-panel-alt);border:1px solid var(--vital-emerald)}.quest-reward-report h2{color:var(--vital-emerald);margin:0 0 var(--space-3)}.quest-reward-report ul,.quest-book-rewards{padding-left:var(--space-4)}.quest-reward-report li,.quest-book-rewards li{margin-bottom:var(--space-2)}.quest-link-choice{margin:var(--space-2) 0;display:block}.quest-book-detail fieldset{border:1px solid var(--border-chrome);margin:var(--space-3) 0}.quest-book{font-size:12px}.quest-book-layout{min-height:320px;padding:6px 12px 12px}.quest-book-summary{text-align:right;padding:3px 12px;font-size:10px}.quest-journal-hint{width:100%;color:var(--text-secondary);font-size:12px}.quest-journal-row{border:1px solid var(--border-chrome);background:linear-gradient(#41464573,#0a0d0dbf);align-items:center;gap:5px;display:flex}.quest-journal-row input{accent-color:#ddd9ac;margin-left:5px}.quest-journal-row .btn{flex:1;justify-content:flex-start;min-width:0;padding:4px;font-size:12px}.quest-star{color:#e7dfc0}.quest-selected h2{color:#ddc981;margin:3px 0;font-size:12px;font-weight:400}.quest-book-description{color:#c2ad7f;margin:10px 8px 20px}.quest-book-detail h3{margin:12px 0 4px;font-size:12px;font-weight:400}.quest-book-tasks{margin:4px 0 16px 42px}.quest-book-tasks li{border:0;padding:1px 0}.quest-book-tasks strong{font-weight:400}.quest-aim{margin-left:42px}.quest-book-rewards{margin-top:4px;padding-left:10px;list-style:none}.quest-book-rewards li{margin-bottom:2px}.quest-item-rewards{flex-wrap:wrap;gap:3px;margin:5px 4px 12px;display:flex}.quest-item{border:1px solid var(--border-chrome);width:64px;height:64px;color:var(--text-primary);background:#323f4180;place-items:center;padding:0;display:grid;position:relative;overflow:hidden}.quest-item img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated}.quest-item>span{overflow-wrap:anywhere;padding:3px;font-size:9px}.quest-item strong{color:#fff;text-shadow:1px 1px 2px #000,-1px -1px 2px #000;font-weight:400;position:absolute;bottom:2px;right:3px}button.quest-item{cursor:pointer}.quest-item[aria-pressed=true]{border:2px solid #ddc981}.quest-conversation{pointer-events:auto;z-index:45;width:min(560px,100vw - 24px);max-height:calc(100dvh - 40px);color:var(--text-secondary);font:12px var(--font-display);background:#0a1111f0;position:fixed;overflow:auto}.quest-conversation-copy{white-space:pre-line;padding:10px 16px;line-height:1.45}.quest-conversation-copy p{margin:4px 0}.quest-conversation-actions{justify-content:flex-end;padding:0 12px 8px;display:flex}.quest-reward-report{background:0 0;border:0;margin:0;padding:12px}.quest-reward-report h2{font-size:13px}.quest-npc-offers{border-bottom:1px solid var(--border-chrome);padding:8px 12px}.quest-currencies{margin:4px 10px}.quest-currencies div{gap:12px;display:flex}.quest-currencies dt{min-width:50px}.quest-currencies dd{margin:0}.quest-book-npc{z-index:810}.quest-conversation{z-index:820}.quest-book,.quest-conversation{box-sizing:border-box;min-width:0;overflow:hidden}.quest-book>.card-body,.quest-conversation>.card-body{overscroll-behavior:contain;touch-action:pan-y;min-width:0;overflow:auto}.quest-book .btn-label,.quest-conversation .btn-label{white-space:normal;overflow-wrap:anywhere;min-width:0}.quest-journal-row>h2,.quest-journal-row>.btn,.quest-book-tasks li>span{overflow-wrap:anywhere;min-width:0}.quest-journal-row input,.quest-book-tasks strong{flex-shrink:0}.quest-book-description,.quest-aim,.quest-reward-report,.quest-link-choice{overflow-wrap:anywhere}.quest-book-detail fieldset{min-inline-size:0}.quest-currencies div{flex-wrap:wrap;column-gap:12px}.quest-currencies dd{overflow-wrap:anywhere;min-width:0}.quest-item{box-sizing:border-box;flex:0 0 64px}.quest-track-toggle{cursor:pointer;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}@media (width<=720px),(pointer:coarse),(height<=500px){.quest-book,.quest-conversation{--quest-left:max(8px, env(safe-area-inset-left,0px));--quest-right:max(8px, env(safe-area-inset-right,0px));--quest-top:max(8px, env(safe-area-inset-top,0px));--quest-bottom:max(8px, env(safe-area-inset-bottom,0px));width:min(390px, calc(100vw - var(--quest-left) - var(--quest-right)));max-height:calc(100dvh - var(--quest-top) - var(--quest-bottom));font-size:13px}.quest-conversation{width:min(560px, calc(100vw - var(--quest-left) - var(--quest-right)))}.quest-book>.card-body,.quest-conversation>.card-body{padding:8px 10px 12px}.quest-book-layout{gap:8px;min-height:0;padding:4px 0}.quest-book-list,.quest-book-detail{max-height:none;overflow:visible}.quest-book-description{margin:8px 4px 16px}.quest-book-tasks,.quest-aim{margin-left:12px}.quest-book-tasks li{gap:8px;padding:4px 0}.quest-book-tasks strong{align-self:flex-start}.quest-npc-offers{padding:4px 0 12px}.quest-selected h2,.quest-book-detail h3{font-size:13px}.quest-item-rewards{gap:8px;margin-left:0;margin-right:0}.quest-conversation-copy{padding:4px}.quest-conversation-actions{padding:8px 0 0}.quest-reward-report{padding:4px}}.quest-book>.card-header,.quest-conversation>.card-header{touch-action:none;-webkit-user-select:none;user-select:none}.quest-book-layout{min-height:0}.quest-book-list,.quest-book-detail{max-height:none;overflow:visible}.quest-book .quest-book-entry .btn-label,.quest-selected h2,.quest-npc-offers>div>.btn .btn-label{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;min-width:0;display:block;overflow:hidden}.quest-book .quest-book-entry .btn-label{text-align:left;flex:1}.quest-selected h2{flex:1}.quest-npc-offers>div>.btn{max-width:100%}@media (width<=720px),(pointer:coarse){.quest-book .btn,.quest-conversation .btn{touch-action:manipulation;height:auto;min-height:44px;padding-top:10px;padding-bottom:10px}.quest-journal-row{gap:4px;min-height:44px}.quest-track-toggle{touch-action:manipulation;width:44px;min-height:44px}.quest-journal-row input{appearance:auto;cursor:pointer;width:24px;height:24px;margin:0}.quest-link-choice{align-items:center;gap:10px;min-height:44px;margin:0;display:flex}.quest-link-choice input{flex-shrink:0;width:24px;height:24px;margin:10px 0}.quest-book-detail>.btn,.quest-conversation-actions>.btn,.quest-reward-report>.btn{width:100%}.quest-book{--quest-copy-size:clamp(12px, calc(11px + .35vw), 14px);--quest-copy-gutter:clamp(14px, 3vw, 20px);font-size:var(--quest-copy-size);line-height:1.4}.quest-book>.card-body{padding:10px var(--quest-copy-gutter) 16px}.quest-book-detail,.quest-npc-offers{font-size:inherit;line-height:inherit}.quest-selected h2,.quest-book-detail h3,.quest-journal-row .btn,.quest-journal-hint{font-size:var(--quest-copy-size)}.quest-book-detail h3{margin:12px 0 5px;line-height:1.3}.quest-description-preview .quest-book-description{margin:6px 0;line-height:1.45}.quest-description-toggle{padding-inline:0}.quest-book-tasks{margin:4px 0 12px}.quest-book-tasks li{gap:12px;padding:3px 0}.quest-aim{margin-inline:0}.quest-currencies{margin:4px 0}.quest-item-rewards{gap:6px;margin:6px 0 12px}.quest-item{width:var(--hud-touch-slot-size);height:var(--hud-touch-slot-size);flex-basis:var(--hud-touch-slot-size)}.quest-item strong{font-size:10px}}.quest-tracker .quest-tracker-group{margin:0;padding:4px 2px}.quest-tracker .quest-tracker-group+.quest-tracker-group{border-top:1px solid #ffffff38;margin-top:4px;padding-top:6px}.quest-tracker .quest-tracker-line{margin:0;padding:0;font-size:11px;line-height:1.25;display:block}.quest-tracker-tasks{flex-direction:column;gap:2px;display:flex}.quest-tracker .quest-tracker-journal{min-width:44px;min-height:24px;color:var(--text-secondary);touch-action:manipulation;padding:2px 0;font-size:10px}.quest-tracker button:focus-visible{outline:1px solid var(--energy-cyan)}.quest-tracker{width:100%;color:var(--text-primary);font:11px var(--font-display);text-align:left;text-shadow:0 1px 2px #000,0 0 3px #000}.quest-tracker-line>span{overflow-wrap:anywhere;min-width:0}.quest-tracker button{pointer-events:auto;cursor:pointer;font:inherit;text-shadow:inherit;background:0 0;border:0}.online-screen{pointer-events:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.online-screen input,.online-screen textarea,.online-screen select,.online-screen [contenteditable=true]{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.online-screen-overlay{text-align:center;padding:var(--space-6);color:var(--text-secondary);font:500 1rem var(--font-display);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.online-screen-overlay-error{color:var(--vital-ruby)}.online-screen-queue{gap:var(--space-4);background:var(--bg-primary,#111);pointer-events:auto;z-index:100;flex-direction:column}.online-screen-net-stats{top:max(5.8rem, calc(env(safe-area-inset-top) + 5.8rem));left:max(var(--space-4), env(safe-area-inset-left));font:700 .7rem var(--font-mono);text-shadow:0 1px 2px #000000f2,0 0 4px #000c;pointer-events:none;align-items:baseline;gap:.35rem;line-height:1;display:flex;position:absolute}.online-screen-net-stats>*+:before{content:"·";color:var(--text-muted);margin-right:.35rem}@media (width<=720px),(pointer:coarse){.online-screen-net-stats{top:max(4.9rem, calc(env(safe-area-inset-top) + 4.9rem));left:max(var(--space-3), env(safe-area-inset-left));font-size:.6rem}}.hud-bottom-dock{left:0;right:0;bottom:calc(env(safe-area-inset-bottom) + var(--hud-exp-bar-height,0px));z-index:520;pointer-events:none;align-items:flex-end;gap:4px;width:fit-content;margin-inline:auto;display:flex;position:fixed}.hud-dock-riding{pointer-events:none;flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.hud-bottom-dock>.hud-button-box{z-index:520;margin-bottom:calc((var(--hud-exp-plate-height,30px) - var(--hud-box-btn-size) - 4px) / 2);position:relative}@media (width<=720px),(pointer:coarse){.hud-bottom-dock{bottom:max(5.75rem, calc(env(safe-area-inset-bottom) + 5.75rem));grid-template-areas:"left right""bar bar";gap:4px;display:grid}.hud-bottom-dock>.hud-button-box{margin-bottom:0}.hud-bottom-dock>.mode-buttons{grid-area:left;justify-self:start}.hud-bottom-dock>.menu-buttons{grid-area:right;justify-self:end}.hud-bottom-dock>.shortcut-bar{grid-area:bar}}@media (pointer:coarse) and (orientation:landscape) and (height<=520px){.hud-bottom-dock{bottom:calc(env(safe-area-inset-bottom) + var(--hud-exp-bar-height,0px))}}.auth-screen{pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.auth-screen-panel{pointer-events:auto;gap:var(--space-3);width:20rem;padding:var(--space-4) var(--space-6);background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);color:var(--text-primary);font:500 .9rem var(--font-display);border-radius:4px;flex-direction:column;display:flex}.auth-screen-panel h1{margin:0 0 var(--space-2);letter-spacing:.06em;text-transform:uppercase;text-align:center;color:var(--text-primary);font-size:14px}.auth-screen-panel label{gap:var(--space-1);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);flex-direction:column;font-size:10px;font-weight:600;display:flex}.auth-screen-panel input{padding:var(--space-2) var(--space-3);border:1px solid var(--border-subtle);background:var(--surface-base);color:var(--text-primary);font:500 .85rem var(--font-display);border-radius:2px;outline:none;transition:border-color .2s}.auth-screen-panel input:focus{border-color:var(--accent-primary);box-shadow:0 0 6px #d4a24633}.auth-screen-panel button[type=submit]{margin-top:var(--space-2);padding:var(--space-2) var(--space-4);border:var(--cta-border);background:var(--cta-bg);box-shadow:var(--cta-shadow);color:var(--cta-text);font:700 .85rem var(--font-display);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border-radius:2px;transition:filter .2s,transform .1s}.auth-screen-panel button[type=submit]:hover{filter:brightness(1.15)}.auth-screen-panel button[type=submit]:active{transform:scale(.98)}.auth-screen-panel button[type=submit]:disabled{background:var(--surface-panel-alt);border-color:var(--border-subtle);box-shadow:none;color:var(--text-muted);cursor:default;filter:none}.auth-screen-switch{margin-top:var(--space-1);color:var(--energy-cyan);font:500 .8rem var(--font-display);text-align:center;cursor:pointer;background:0 0;border:none;padding:0}.auth-screen-switch:hover{color:var(--text-cyan);text-decoration:underline}.auth-screen-error{text-align:center;color:var(--vital-ruby);margin:0;font-size:.8rem}.auth-screen-hint{text-align:center;color:var(--text-muted);margin:0;font-size:.7rem}.debug-panel{pointer-events:none;position:fixed;inset:0}.debug-panel-hint{top:var(--space-4);color:var(--text-secondary);font:500 .85rem var(--font-display);padding:var(--space-1) var(--space-3);border:1px solid var(--border-subtle);pointer-events:none;background:#10131bb3;border-radius:2px;position:absolute;left:50%;transform:translate(-50%)}.debug-panel-controls{left:var(--space-4);bottom:var(--space-4);gap:var(--space-2);pointer-events:auto;display:flex;position:absolute}.debug-panel-controls button{padding:var(--space-2) var(--space-3);border:1px solid var(--border-chrome);background:var(--surface-panel);color:var(--text-secondary);font:500 .85rem var(--font-display);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;border-radius:2px;transition:background .2s,color .2s,border-color .2s}.debug-panel-controls button:hover{background:var(--surface-elevated);color:var(--text-primary)}.debug-panel-controls button.active{border-color:var(--energy-cyan);color:var(--text-cyan);background:#22d3ee1a}.debug-panel-controls button:disabled{opacity:.4;cursor:default}.debug-panel-controls-debug{bottom:4rem}.debug-panel-cam-select,.debug-panel-cloak-ani-select,.debug-panel-race-select select{padding:var(--space-2) var(--space-3);border:1px solid var(--border-chrome);background:var(--surface-panel);color:var(--text-secondary);font:500 .85rem var(--font-display);cursor:pointer;border-radius:2px;transition:background .2s,color .2s}.debug-panel-cam-select:hover,.debug-panel-cloak-ani-select:hover,.debug-panel-race-select select:hover{background:var(--surface-elevated);color:var(--text-primary)}.debug-panel-race-select select:disabled{opacity:.4;cursor:default}.debug-panel-race-select{top:var(--space-4);left:var(--space-4);pointer-events:auto;position:absolute}.debug-panel-frame-label{padding:0 var(--space-1);color:var(--text-muted);font:500 .8rem var(--font-mono);align-items:center;display:flex}.debug-panel-stats{top:var(--space-4);right:var(--space-4);max-width:min(26rem,100vw - 2rem);color:var(--text-muted);font:500 .8rem var(--font-mono);border:1px solid var(--border-subtle);padding:var(--space-1) var(--space-2);pointer-events:none;background:#10131bb3;border-radius:2px;flex-direction:column;gap:.15rem;display:flex;position:absolute}.debug-panel-stats>div{overflow-wrap:break-word}.debug-panel-stats-copy{color:#eee;cursor:pointer;pointer-events:auto;background:#22252b;border:1px solid #444;border-radius:4px;align-self:flex-start;margin-top:.15rem;padding:.2rem .5rem;font:500 .7rem system-ui,sans-serif}.debug-panel-stats-copy:hover{background:#2c3038}.debug-panel-equip-panel{top:3.2rem;right:var(--space-4);gap:var(--space-1);border:1px solid var(--border-chrome);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute}.debug-panel-base-part-panel{top:3.2rem;left:var(--space-4);gap:var(--space-1);border:1px solid var(--border-chrome);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute}.debug-panel-monster-panel{gap:var(--space-1);border:1px solid var(--border-chrome);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.debug-panel-panel-header-draggable{cursor:move;touch-action:none}.debug-panel-monster-mode-select{background:var(--surface-base);color:var(--text-primary);border:1px solid var(--border-subtle);padding:var(--space-1) var(--space-2);font:500 .8rem var(--font-display);border-radius:2px;width:6rem}.debug-panel-base-part-select{background:var(--surface-base);color:var(--text-primary);border:1px solid var(--border-subtle);padding:var(--space-1) var(--space-2);font:500 .8rem var(--font-display);border-radius:2px;width:11rem}.debug-panel-monster-count-input{background:var(--surface-base);color:var(--text-primary);border:1px solid var(--border-subtle);padding:var(--space-1) var(--space-2);font:500 .8rem var(--font-display);border-radius:2px;width:4rem}.debug-panel-panel-header{justify-content:space-between;align-items:center;gap:var(--space-4);color:var(--text-primary);font:600 .8rem var(--font-display);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-1);display:flex}.debug-panel-panel-close{border:1px solid var(--border-subtle);background:var(--surface-panel);width:1.4rem;height:1.4rem;color:var(--text-secondary);font:600 .9rem var(--font-display);cursor:pointer;border-radius:2px;padding:0;line-height:1;transition:background .2s}.debug-panel-panel-close:hover{background:var(--surface-elevated);color:var(--text-primary)}.debug-panel-equip-row{justify-content:space-between;align-items:center;gap:var(--space-2);color:var(--text-secondary);font:500 .8rem var(--font-display);display:flex}.debug-panel-equip-row>span{min-width:4.6rem}.debug-panel-equip-controls{align-items:center;gap:.35rem;display:flex}.debug-panel-equip-controls-upload-only{justify-content:flex-end;width:13.7rem}.debug-panel-glb-upload{color:#eee;cursor:pointer;box-sizing:border-box;background:#22252b;border:1px solid #444;border-radius:4px;justify-content:center;align-items:center;width:2.35rem;height:1.65rem;font:700 .7rem system-ui,sans-serif;display:inline-flex}.debug-panel-glb-upload:hover{background:#2c3038}.debug-panel-glb-upload input{display:none}.debug-panel-weapon-edit{left:var(--space-4);gap:var(--space-2);border:1px solid var(--border-chrome);width:20rem;max-width:calc(100vw - 2rem);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute;top:5rem}.debug-panel-weapon-edit-empty{color:#9aa4b2;font:500 .8rem system-ui,sans-serif}.debug-panel-weapon-edit-label{color:#ccc;word-break:break-word;font:500 .8rem system-ui,sans-serif}.debug-panel-weapon-edit-upgrade{color:#9aa4b2;justify-content:space-between;align-items:center;gap:.5rem;font:500 .75rem system-ui,sans-serif;display:flex}.debug-panel-weapon-edit-upgrade select{color:#eee;background:#22252b;border:1px solid #444;border-radius:4px;padding:.25rem .4rem;font:500 .75rem ui-monospace,monospace}.debug-panel-weapon-edit-grade{background:#00000040;border-radius:4px;flex-direction:column;gap:.4rem;padding:.5rem .6rem;display:flex}.debug-panel-weapon-edit-grade-row{flex-wrap:wrap;gap:.5rem;display:flex}.debug-panel-weapon-edit-grade-field{color:#9aa4b2;flex-direction:column;gap:.15rem;font:500 .68rem system-ui,sans-serif;display:flex}.debug-panel-weapon-edit-grade-field input{color:#eee;background:#22252b;border:1px solid #444;border-radius:4px;width:4.2rem;padding:.25rem .35rem;font:500 .75rem ui-monospace,monospace}.debug-panel-weapon-edit-grade-readonly{color:#666;word-break:break-word;font:500 .68rem ui-monospace,monospace}.debug-panel-weapon-edit-mode{position:static;bottom:auto;left:auto}.debug-panel-weapon-edit-readout{color:#9aa4b2;white-space:pre-wrap;word-break:break-word;background:#00000059;border-radius:4px;margin:0;padding:.5rem .6rem;font:500 .72rem ui-monospace,monospace}.debug-panel-weapon-edit-copy{color:#eee;cursor:pointer;background:#22252b;border:1px solid #444;border-radius:6px;align-self:flex-start;padding:.4rem .8rem;font:500 .8rem system-ui,sans-serif}.debug-panel-weapon-edit-copy:hover{background:#2c3038}.debug-panel-effect-edit{right:var(--space-4);gap:var(--space-2);border:1px solid var(--border-chrome);width:22rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 8rem);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute;top:5rem;overflow-y:auto}.debug-panel-effect-edit-eff{color:#ccc;word-break:break-word;font:500 .72rem ui-monospace,monospace}.debug-panel-effect-edit-empty{color:#9aa4b2;font:500 .75rem system-ui,sans-serif}.debug-panel-effect-edit-section{color:#9aa4b2;word-break:break-word;background:#00000040;border-radius:4px;padding:.4rem .5rem;font:500 .68rem ui-monospace,monospace}.debug-panel-effect-edit-particle{background:#00000040;border-radius:4px;flex-direction:column;gap:.4rem;padding:.5rem .6rem;display:flex}.debug-panel-effect-edit-label{color:#ccc;word-break:break-word;font:600 .72rem ui-monospace,monospace}.debug-panel-effect-edit-entity{color:#9aa4b2;word-break:break-word;font:500 .68rem ui-monospace,monospace}.debug-panel-effect-edit-entity-warn{color:var(--accent-primary)}.debug-panel-effect-edit-row{flex-wrap:wrap;gap:.5rem;display:flex}.debug-panel-effect-edit-field{color:#9aa4b2;flex-direction:column;gap:.15rem;font:500 .68rem system-ui,sans-serif;display:flex}.debug-panel-effect-edit-field input{color:#eee;background:#22252b;border:1px solid #444;border-radius:4px;width:4.4rem;padding:.25rem .35rem;font:500 .75rem ui-monospace,monospace}.debug-panel-effect-edit-copy{color:#eee;cursor:pointer;background:#22252b;border:1px solid #444;border-radius:6px;align-self:flex-start;padding:.4rem .8rem;font:500 .8rem system-ui,sans-serif}.debug-panel-effect-edit-copy:hover{background:#2c3038}.debug-panel-particle-inspector{left:var(--space-4);gap:var(--space-2);border:1px solid var(--border-chrome);width:22rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 9rem);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute;top:8rem;overflow-y:auto}.debug-panel-particle-inspector-keepalive{color:#ccc;cursor:pointer;align-items:center;gap:.4rem;font:500 .75rem system-ui,sans-serif;display:flex}.debug-panel-particle-inspector-level{color:#ccc;align-items:center;gap:.4rem;font:500 .75rem system-ui,sans-serif;display:flex}.debug-panel-particle-inspector-level select{color:#eee;background:#22252b;border:1px solid #444;border-radius:4px;padding:.25rem .35rem;font:500 .75rem ui-monospace,monospace}.debug-panel-particle-spawner{right:var(--space-4);gap:var(--space-2);border:1px solid var(--border-chrome);width:22rem;max-width:calc(100vw - 2rem);max-height:calc(100vh - 9rem);padding:var(--space-2) var(--space-3);pointer-events:auto;background:#10131bd9;border-radius:2px;flex-direction:column;display:flex;position:absolute;top:8rem;overflow-y:auto}.debug-panel-particle-spawner .debug-panel-searchable-select{width:100%}.debug-panel-searchable-select{width:11rem;position:relative}.debug-panel-searchable-select input{color:#eee;box-sizing:border-box;background:#22252b;border:1px solid #444;border-radius:4px;width:100%;padding:.25rem .4rem;font:500 .8rem system-ui,sans-serif}.debug-panel-searchable-select input::placeholder{color:#666}.debug-panel-searchable-select input:disabled{opacity:.5}.debug-panel-searchable-select-list{z-index:10;background:#1a1c20;border:1px solid #444;border-radius:6px;width:max(100%,14rem);max-height:16rem;margin:0;padding:.25rem;list-style:none;position:absolute;top:calc(100% + .2rem);left:0;overflow-y:auto;box-shadow:0 4px 16px #00000080}.debug-panel-searchable-select-list li{color:#ccc;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border-radius:4px;padding:.3rem .5rem;font:500 .8rem system-ui,sans-serif;overflow:hidden}.debug-panel-searchable-select-list li.highlighted{background:#2c3038}.debug-panel-searchable-select-list li.active{color:#4a7dff;font-weight:600}.debug-panel-searchable-select-more{color:#666;cursor:default;font-style:italic}.debug-panel-command-bar{pointer-events:auto;align-items:center;gap:.6rem;display:flex;position:absolute;bottom:1rem;right:1rem}.debug-panel-command-input{color:#eee;background:#22252b;border:1px solid #444;border-radius:6px;width:16rem;padding:.5rem .7rem;font:500 .8rem ui-monospace,monospace}.debug-panel-command-input::placeholder{color:#666}.debug-panel-command-feedback{color:#9aa4b2;white-space:pre-wrap;background:#14161a99;border-radius:6px;max-width:20rem;padding:.4rem .6rem;font:500 .75rem ui-monospace,monospace}.rf-viewer{pointer-events:none;position:fixed;inset:0}.rf-viewer-overlay{text-align:center;padding:var(--space-6);color:var(--text-secondary);font:500 1rem var(--font-display);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.rf-viewer-overlay-error{color:var(--vital-ruby)}.rf-viewer-toggle-bar{bottom:var(--space-4);gap:var(--space-2);pointer-events:auto;display:flex;position:absolute;left:50%;transform:translate(-50%)}.rf-viewer-debug-toggle{padding:var(--space-1) var(--space-3);border:1px solid var(--border-chrome);color:var(--text-secondary);font:500 .75rem var(--font-display);text-transform:uppercase;letter-spacing:.04em;cursor:pointer;pointer-events:auto;background:#10131bb3;border-radius:2px;transition:background .2s,color .2s,border-color .2s}.rf-viewer-debug-toggle:hover{background:var(--surface-elevated);color:var(--text-primary)}.rf-viewer-debug-toggle.active{border-color:var(--energy-cyan);color:var(--text-cyan)}.uitest{background:var(--surface-base);padding:var(--space-6);gap:var(--space-6);z-index:10;flex-direction:column;display:flex;position:fixed;inset:0;overflow-y:auto}.uitest-header{padding-bottom:var(--space-4);border-bottom:1px solid var(--border-chrome);justify-content:space-between;align-items:center;display:flex}.uitest-header h1{font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;color:var(--text-primary);margin:0;font-size:22px;font-weight:700}.uitest-badge{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--energy-cyan);padding:var(--space-1) var(--space-2);border:1px solid var(--energy-cyan);border-radius:2px;font-size:10px;font-weight:600}.uitest-section{margin:0}.uitest-block{margin-bottom:var(--space-4)}.uitest-block:last-child{margin-bottom:0}.uitest-block-title{font-family:var(--font-display);color:var(--text-secondary);margin:0 0 var(--space-3);text-transform:none;letter-spacing:0;font-size:12px;font-weight:600}.uitest-table{border-collapse:collapse;width:100%}.uitest-table th,.uitest-table td{padding:var(--space-2) var(--space-3);text-align:center;border-bottom:1px solid var(--border-subtle)}.uitest-table th{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);font-size:10px;font-weight:600}.uitest-label{font-family:var(--font-display);color:var(--text-secondary);text-transform:capitalize;font-size:12px;font-weight:600;text-align:left!important}.uitest-row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.uitest-card-row{gap:var(--space-4);flex-wrap:wrap;display:flex}.uitest-demo-card{width:200px}.uitest-demo-card p{margin:0 0 var(--space-1);color:var(--text-secondary);font-size:12px;line-height:1.5}.uitest-demo-card p:last-child{margin-bottom:0}.uitest-demo-card-wide{width:100%;max-width:420px}.uitest-demo-card-wide p{margin:0 0 var(--space-1);color:var(--text-secondary);font-size:12px;line-height:1.5}.uitest-mono{font-family:var(--font-mono);color:var(--text-primary);font-size:13px;font-weight:700}.uitest-muted{color:var(--text-muted);font-size:11px}.uitest-divider{border:none;border-top:1px solid var(--border-subtle);margin:var(--space-3) 0}.character-select-screen{pointer-events:none;position:fixed;inset:0}.character-select-overlay{pointer-events:auto;align-items:center;gap:var(--space-3);color:var(--text-primary);font:500 .95rem var(--font-display);background:var(--elevation-panel-bg);box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);padding:var(--space-4) var(--space-6);text-align:center;border-radius:4px;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.character-select-overlay-error{color:var(--vital-ruby)}.character-select-title{top:var(--space-4);color:var(--text-primary);font:700 14px var(--font-display);letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 6px #000c;padding:var(--space-2) var(--space-4);border:1px solid var(--border-chrome);pointer-events:none;background:#10131ba6;border-radius:2px;position:absolute;left:50%;transform:translate(-50%)}.character-select-row{pointer-events:none;gap:var(--space-4);display:flex;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.character-select-card{pointer-events:auto;align-items:center;gap:var(--space-1);background:var(--elevation-panel-bg);width:11rem;box-shadow:var(--elevation-panel-shadow);border:var(--elevation-panel-border);padding:var(--space-3) var(--space-3) var(--space-4);cursor:pointer;border-radius:4px;flex-direction:column;transition:border-color .2s,box-shadow .2s;display:flex;position:relative}.character-select-card:hover{border-color:var(--surface-highlight)}.character-select-card-active{border-color:var(--accent-primary);box-shadow:var(--elevation-active-shadow)}.character-select-card-portrait{width:100%;height:3.2rem}.character-select-card-name{color:var(--text-primary);font:700 .95rem var(--font-display)}.character-select-card-meta{color:var(--text-secondary);font:500 .75rem var(--font-mono)}.character-select-card-select{width:100%;margin-top:var(--space-1)}.character-select-card-links{gap:var(--space-3);display:flex}.character-select-card-empty{border-style:dashed;justify-content:center;align-items:stretch;min-height:8.4rem}.character-select-info-list{gap:var(--space-1) var(--space-4);grid-template-columns:auto 1fr;margin:0;display:grid}.character-select-info-list dt{color:var(--text-secondary);font:600 11px var(--font-display);text-transform:uppercase;letter-spacing:.04em}.character-select-info-list dd{text-align:right;color:var(--text-primary);font:700 13px var(--font-mono);margin:0}.scene-app{left:var(--app-viewport-left,0);top:var(--app-viewport-top,0);width:var(--app-viewport-width,100vw);height:var(--app-viewport-height,100dvh);background:var(--surface-base);position:fixed;overflow:hidden}.scene-app-canvas{width:var(--canvas-viewport-width,100%);height:var(--canvas-viewport-height,100%);position:absolute;inset:0 auto auto 0}.scene-app>:is(.online-screen,.rf-viewer,.auth-screen,.character-select-screen,.character-create-screen,.character-create-race-screen,.scene-app-overlay){left:var(--app-viewport-left,0);top:var(--app-viewport-top,0);width:var(--app-viewport-width,100vw);height:var(--app-viewport-height,100dvh);bottom:auto;right:auto}.scene-app-canvas canvas{touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;display:block}.scene-app-overlay{text-align:center;padding:var(--space-6);color:var(--text-secondary);font:500 1rem var(--font-display);pointer-events:none;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.scene-app-overlay-error{color:var(--vital-ruby)}
