.game-hud{position:fixed;inset:0;pointer-events:none;z-index:2500;font-family:"Cinzel",var(--font-primary, "Segoe UI", system-ui, sans-serif)}.hud-health-bar{position:absolute;top:64px;left:16px;display:flex;align-items:center;gap:8px}.hud-health-bg{width:200px;height:20px;background:#0a0f1ecc;border:1px solid rgba(0,119,182,.4);border-radius:4px;overflow:hidden}.hud-health-fill{height:100%;width:100%;background:#22c55e;transition:width .3s ease,background-color .3s ease}.hud-health-text{color:#e2e8f0;font-size:12px;font-weight:600;text-shadow:1px 1px 2px rgba(0,0,0,.8);white-space:nowrap}.hud-gold-display{position:absolute;top:90px;left:16px;display:flex;align-items:center;gap:5px;pointer-events:none}.hud-gold-icon{width:18px;height:18px;image-rendering:pixelated}.hud-gold-text{color:gold;font-size:13px;font-weight:700;text-shadow:1px 1px 2px rgba(0,0,0,.8)}.hud-quickbar{position:absolute;bottom:12px;left:50%;transform:translate(-50%);display:flex;gap:3px;opacity:.55;transition:opacity .2s ease}.hud-quickbar:hover{opacity:.9}.hud-quickbar-slot{width:34px;height:34px;background:#0a0f1e80;border:1px solid rgba(0,119,182,.2);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:700;cursor:pointer;pointer-events:auto;position:relative;overflow:hidden;transition:border-color .15s ease,opacity .15s ease}.hud-quickbar-slot:hover{border-color:#0077b680}.hud-quickbar-slot .slot-icon{width:24px;height:24px;image-rendering:pixelated;pointer-events:none}.hud-quickbar-slot .slot-count{position:absolute;bottom:1px;right:2px;font-size:9px;color:gold;text-shadow:1px 1px 1px #000}.hud-quickbar-slot.equipped{border-color:#ffd70080;box-shadow:0 0 3px #ffd70033}.fireball-blast{border-radius:50%;background:radial-gradient(circle,#fff 0%,#ffff00 25%,#ff6600 55%,transparent 90%);box-shadow:0 0 48px 24px #ff8c00bf;animation:fireball-blast .26s ease-out forwards;pointer-events:none}@keyframes fireball-blast{0%{transform:translate(-50%,-50%) scale(.15);opacity:1}40%{transform:translate(-50%,-50%) scale(1.1);opacity:.9}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}.hud-damage-number{position:absolute;bottom:100%;left:50%;pointer-events:none;font-size:18px;font-weight:700;color:#f44;text-shadow:1px 1px 2px #000,-1px -1px 2px #000;white-space:nowrap;z-index:1}.hud-damage-number.heal{color:#22c55e}.hud-level-complete{pointer-events:none;z-index:9999}.hud-dungeon-info{position:absolute;top:112px;left:16px;font-family:Cinzel,serif;font-size:11px;font-weight:600;color:#64748b;letter-spacing:.08em;text-shadow:1px 1px 2px rgba(0,0,0,.8)}@media(pointer:coarse){.hud-health-bg{width:140px}.hud-quickbar{bottom:20px;gap:2px;opacity:.4;max-width:calc(100vw - 300px);overflow:hidden}.hud-quickbar:active{opacity:.85}.hud-quickbar-slot{width:28px;height:28px;flex-shrink:0;background:#0a0f1e66;border-color:#0077b626;border-radius:3px}.hud-quickbar-slot .slot-icon{width:20px;height:20px}.hud-quickbar-slot .slot-count{font-size:8px;bottom:0;right:1px}}@media(pointer:coarse)and (max-width:640px){.hud-quickbar{flex-direction:column-reverse;flex-wrap:wrap;bottom:20px;max-width:none;max-height:58px;overflow:hidden}}@media(pointer:coarse)and (max-width:540px){.hud-quickbar{max-height:118px}}@media(pointer:coarse)and (max-width:420px){.hud-quickbar{flex-wrap:nowrap;max-height:118px}}.npc-nameplate{position:absolute;top:-24px;left:50%;transform:translate(-50%);white-space:nowrap;font-family:Cinzel,sans-serif;font-size:10px;color:#fff;text-shadow:0 0 3px #000,0 0 3px #000;pointer-events:none;z-index:10;display:flex;flex-direction:column;align-items:center;gap:1px}.npc-nameplate .npc-level{color:gold;font-weight:700}.npc-hp-bar{width:40px;height:4px;background:#0009;border-radius:2px;overflow:hidden}.npc-hp-fill{width:100%;height:100%;background:#ef4444;transition:width .2s ease}.player-hp-bar,.player-sp-bar,.player-mp-bar{position:absolute;left:50%;transform:translate(-50%);width:40px;height:3px;background:#0009;border-radius:2px;overflow:hidden;pointer-events:none;z-index:10;display:none}.player-hp-bar{top:-10px;height:4px}.player-sp-bar{top:-6px}.player-mp-bar{top:-2px}.player-hp-fill,.player-sp-fill,.player-mp-fill{width:100%;height:100%;transition:width .2s ease}.player-hp-fill{background:#22c55e}.player-sp-fill{background:#facc15}.player-mp-fill{background:#60a5fa}:root{--bg-primary: #1a1a2e;--bg-secondary: #16213e;--bg-surface: #0f3460;--accent-primary: #0077b6;--accent-selection: #ff3232;--accent-hover: #ff5050;--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--text-muted: #666;--border-color: #334155;--shadow: 0 4px 6px -1px rgba(0, 0, 0, .3);--radius: 8px;--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace}*{margin:0;padding:0;box-sizing:border-box;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg-primary);font-family:var(--font-primary);touch-action:none;-ms-touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;overscroll-behavior:none;-webkit-overflow-scrolling:touch;-webkit-tap-highlight-color:transparent}input[type=range]{touch-action:manipulation}#container{position:fixed;inset:0;overflow:hidden;background:linear-gradient(135deg,var(--bg-primary) 0%,#0f0f1a 100%);touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}#camera{position:absolute;transform-origin:0 0;overflow:visible}#world{position:absolute;transform-origin:center center;overflow:visible}#world.vegetation-hidden .vegetation-impostor{display:none!important}.world-item-qty{position:absolute;bottom:0;right:0;min-width:14px;height:14px;line-height:14px;padding:0 3px;background:#000000bf;border:1px solid rgba(255,255,255,.4);border-radius:3px;color:#fff;font-family:var(--font-primary, monospace);font-size:10px;font-weight:700;text-align:center;pointer-events:none;-webkit-user-select:none;user-select:none}.cube{position:absolute;transform-origin:0 0}.face{position:absolute;display:flex;justify-content:center;align-items:center;font-size:12px;font-weight:400;color:#fff;transform-origin:center center;opacity:.7;overflow:hidden;font-family:var(--font-primary);cursor:pointer;transition:outline .15s ease,box-shadow .15s ease;contain:layout;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.face.face-hovered{outline:2px solid rgba(255,50,50,.8);outline-offset:-2px;box-shadow:inset 0 0 20px #ff32324d}.face.face-long-press{outline:2px solid rgba(50,200,255,.9);outline-offset:-2px;box-shadow:inset 0 0 30px #32c8ff66;animation:long-press-pulse .4s ease-in-out}@keyframes long-press-pulse{0%{box-shadow:inset 0 0 10px #32c8ff33}to{box-shadow:inset 0 0 30px #32c8ff66}}.info-panel{position:fixed;left:20px;color:var(--text-primary);font-size:11px;font-family:var(--font-mono);z-index:100;background:var(--bg-secondary);border-radius:var(--radius);border:1px solid var(--border-color);box-shadow:var(--shadow);min-width:200px;overflow:hidden}#worldControls{top:auto;bottom:50px}.info-panel-header{display:flex;align-items:center;justify-content:space-between;padding:10px 14px;background:var(--bg-primary);cursor:pointer;-webkit-user-select:none;user-select:none;border-bottom:1px solid var(--border-color);transition:background .15s ease}.info-panel-header:hover{background:#ffffff08}.info-panel-title{font-size:11px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.info-panel-toggle{font-size:14px;color:var(--text-secondary);width:18px;text-align:center;transition:transform .2s ease}.info-panel-content{padding:12px 14px;max-height:500px;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1),padding .3s cubic-bezier(.4,0,.2,1),opacity .2s ease}.info-panel.collapsed .info-panel-content{max-height:0;padding-top:0;padding-bottom:0;opacity:0}.info-panel.collapsed .info-panel-header{border-bottom:none}.info-panel-btn{flex:1;padding:6px 10px;border:none;border-radius:4px;cursor:pointer;font-size:11px;font-weight:500;font-family:var(--font-primary);transition:all .15s ease}.info-panel-btn-primary{background:#2563eb;color:#fff}.info-panel-btn-primary:hover{background:#3b82f6}.info-panel-btn-success{background:#059669;color:#fff}.info-panel-btn-success:hover{background:#10b981}.info-panel-btn-purple{background:#7c3aed;color:#fff}.info-panel-btn-purple:hover{background:#8b5cf6}.fps-display{position:fixed;top:10px;left:10px;color:var(--text-primary);font-family:var(--font-mono);font-size:10px;z-index:500;background:#16213e99;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:6px 10px;border-radius:4px;border:1px solid rgba(51,65,85,.5)}input[type=number]{background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;padding:4px 6px;font-family:var(--font-mono);font-size:11px}input[type=number]:focus{outline:none;border-color:var(--accent-primary);box-shadow:0 0 0 2px #0077b633}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-primary);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.face.primary-selected{outline:2px solid rgba(255,50,50,.9)!important;outline-offset:-2px!important}.face.multi-selected{outline:2px solid rgba(255,50,50,.7)!important;outline-offset:-2px!important}.face.group-highlighted{outline:2px solid rgba(50,150,255,.7)!important;outline-offset:-2px!important}.group-hint{font-size:10px;color:var(--text-secondary);margin-top:5px;font-style:italic}.stripe-container,.metallic-container,.holographic-container{display:none}.face.primary-selected:after,.face.multi-selected:after,.face.group-highlighted:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:10}.face.primary-selected:after{box-shadow:inset 0 0 100px 20px #ff323273}.face.multi-selected:after{box-shadow:inset 0 0 50px 10px #ff323240}.face.group-highlighted:after{box-shadow:inset 0 0 30px 5px #3296ff33}.voxel-editor-panel .voxel-tools{display:flex;flex-direction:column;gap:8px;padding:8px 0}.voxel-tool-btn{width:100%;height:auto;padding:12px 16px;display:flex;align-items:center;gap:12px;font-size:13px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:6px;color:var(--text-primary);cursor:pointer;transition:all .15s ease}.voxel-tool-btn:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.voxel-tool-btn.active{background:var(--accent-selection);border-color:var(--accent-selection);color:#fff;box-shadow:0 0 12px #ff32324d}.voxel-tool-btn .tool-icon{font-size:20px;width:24px;text-align:center}.voxel-tool-btn .tool-label{font-weight:500}.voxel-help{padding:8px 0}.voxel-help .help-item{padding:6px 0;font-size:11px;color:var(--text-secondary);display:flex;align-items:center;gap:8px}.voxel-help .help-item kbd{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:3px;padding:2px 6px;font-family:var(--font-mono);font-size:10px;min-width:24px;text-align:center}.voxel-help .help-item strong{color:var(--text-primary)}.voxel-help .help-divider{height:1px;background:var(--border-color);margin:8px 0}.ghost-preview{pointer-events:none!important;z-index:10000!important}.ghost-preview .face{pointer-events:none!important;opacity:.7!important;animation:ghost-pulse .8s ease-in-out infinite alternate}@keyframes ghost-pulse{0%{opacity:.5}to{opacity:.8}}button,a,div,span,input,select,textarea{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;outline:none}img,.face,.cube{-webkit-user-drag:none;user-drag:none}.character-sprite{position:absolute;image-rendering:pixelated;image-rendering:crisp-edges;-ms-interpolation-mode:nearest-neighbor;background-size:contain;background-repeat:no-repeat;background-position:center bottom;pointer-events:none;transform-origin:center bottom;will-change:transform,background-image;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none}.character-shadow-overlay{position:absolute;inset:0;pointer-events:none;mix-blend-mode:multiply;z-index:999}.shading-overlay{position:absolute;inset:0;pointer-events:none;z-index:998}.joystick-zone{position:fixed;left:0;bottom:0;width:200px;height:300px;z-index:9998;touch-action:none;pointer-events:none}.joystick-container{position:fixed;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:9999;opacity:0;transition:opacity .15s ease}.joystick-container.active{opacity:1}.joystick-container.fixed{opacity:.7}.joystick-container.fixed.active{opacity:1}.joystick-base{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffff26,#6464644d,#32323266);border:2px solid rgba(255,255,255,.3);box-shadow:inset 0 0 20px #0000004d,0 4px 15px #0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.joystick-thumb{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffffe6,#c8c8c8cc 40%,#969696b3);border:2px solid rgba(255,255,255,.6);box-shadow:0 2px 8px #0006,inset 0 1px #fff6;pointer-events:auto}@media(hover:hover)and (pointer:fine){.joystick-zone,.joystick-container{display:none!important}}.action-buttons-container{position:fixed;right:20px;bottom:20px;pointer-events:none;z-index:9997}.action-button{position:absolute;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ffffff26,#6464644d,#32323266);border:2px solid rgba(255,255,255,.3);box-shadow:inset 0 0 20px #0000004d,0 4px 15px #0006;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;pointer-events:auto;touch-action:none;transition:transform .1s ease,box-shadow .1s ease;-webkit-tap-highlight-color:transparent}.action-button-label{color:#fffc;font-size:16px;font-weight:600;font-family:var(--font-primary);text-shadow:0 1px 3px rgba(0,0,0,.5);pointer-events:none;-webkit-user-select:none;user-select:none}.action-button.active{transform:scale(.9);background:radial-gradient(circle at 30% 30%,#ffffff4d,#96969680,#64646499);box-shadow:inset 0 0 30px #fff3,0 2px 8px #0000004d}.action-btn-jump{background:radial-gradient(circle at 30% 30%,#32c8644d,#1e964666,#14643280);border-color:#32c86480}.action-btn-jump.active{background:radial-gradient(circle at 30% 30%,#50ff8280,#32c86499,#1e9646b3)}.action-btn-attack{background:radial-gradient(circle at 30% 30%,#c832324d,#961e1e66,#64141480);border-color:#c8323280}.action-btn-attack.active{background:radial-gradient(circle at 30% 30%,#ff505080,#c8323299,#961e1eb3)}.action-btn-action1{background:radial-gradient(circle at 30% 30%,#3264c84d,#1e469666,#14326480);border-color:#3264c880}.action-btn-action1.active{background:radial-gradient(circle at 30% 30%,#5082ff80,#3264c899,#1e4696b3)}.action-btn-action2{background:radial-gradient(circle at 30% 30%,#c8b4324d,#96821e66,#645a1480);border-color:#c8b43280}.action-btn-action2.active{background:radial-gradient(circle at 30% 30%,#ffe65080,#c8b43299,#96821eb3)}@media(hover:hover)and (pointer:fine){.action-buttons-container{display:none!important}}.ground-effect{position:absolute;pointer-events:none;transform-origin:center center}.ground-effect-ring,.ground-effect-center{transform-origin:center center}@keyframes ground-effect-ring-contract{0%{transform:scale(1.05);opacity:0;border-width:5px}15%{transform:scale(1);opacity:.8;border-width:6px}50%{opacity:1;border-width:10px}85%{opacity:.85;border-width:14px}to{transform:scale(.18);opacity:0;border-width:16px}}@keyframes ground-effect-dot-pulse{0%{transform:scale(1.15);opacity:1;filter:brightness(1.3)}40%{transform:scale(.85);opacity:.9;filter:brightness(1.1)}to{transform:scale(1);opacity:.7;filter:brightness(1)}}@keyframes ground-effect-pulse{0%{opacity:.7;filter:brightness(.9)}to{opacity:1;filter:brightness(1.2)}}.destination-marker{position:absolute;width:48px;height:48px;border-radius:50%;background:radial-gradient(ellipse at center,rgba(50,200,100,.8) 0%,rgba(50,200,100,.3) 70%,transparent 100%);border:3px solid rgba(50,200,100,.9);box-shadow:0 0 16px #32c86499,inset 0 0 12px #ffffff4d;pointer-events:none;z-index:9000;animation:destination-pulse .8s ease-in-out infinite alternate}@keyframes destination-pulse{0%{opacity:.7;box-shadow:0 0 16px #32c86499,inset 0 0 12px #ffffff4d}to{opacity:1;box-shadow:0 0 28px #32c864e6,inset 0 0 16px #ffffff80}}.face{position:absolute;display:flex;justify-content:center;align-items:center;border:none;transform-origin:center center;overflow:hidden}.face-text{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;justify-content:center;align-items:center;text-align:center;pointer-events:none}.face video{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;pointer-events:none}.face video::-webkit-media-controls{display:none!important}.face video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none}.face video::-webkit-media-controls-panel{display:none!important}.face video::-webkit-media-controls-play-button{display:none!important}.face video::-webkit-media-controls-enclosure{display:none!important}.face.glass{backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.face.metallic{background-blend-mode:overlay}.face.holographic{background-blend-mode:screen}.face.neon{box-shadow:0 0 10px currentColor,0 0 20px currentColor,0 0 30px currentColor}.webpage-container{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.webpage-container iframe{width:100%;height:100%;border:none}.audio-control-panel{padding:16px;color:var(--text-primary)}.audio-control-panel h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.audio-control-panel h4{margin:12px 0 8px;font-size:13px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.audio-section{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border-color)}.audio-section:last-child{border-bottom:none}.slider-control{display:flex;align-items:center;margin-bottom:12px;gap:8px}.slider-control label{flex:0 0 140px;font-size:11px;color:var(--text-secondary)}.slider-control input[type=range]{flex:1;height:4px;background:var(--bg-surface);border-radius:2px;outline:none;-webkit-appearance:none}.slider-control input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;background:var(--accent-primary);border-radius:50%;cursor:pointer}.slider-control input[type=range]::-moz-range-thumb{width:12px;height:12px;background:var(--accent-primary);border-radius:50%;cursor:pointer;border:none}.slider-control span{flex:0 0 45px;text-align:right;font-size:11px;color:var(--text-primary);font-weight:500}.slider-control input[type=number]{flex:1;padding:4px 8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:11px}.audio-section button{padding:6px 12px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:11px;cursor:pointer;transition:background .2s}.audio-section button:hover{background:var(--bg-secondary)}.audio-section button:active{background:var(--accent-primary)}.button-group{display:flex;gap:8px;margin-top:8px}.button-group button{flex:1}.sound-test,.custom-sound-test{margin-bottom:12px}.sound-test label,.custom-sound-test label{display:block;margin-bottom:4px;font-size:11px;color:var(--text-secondary)}.sound-test select,.custom-sound-test input[type=text]{width:100%;padding:6px 8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;color:var(--text-primary);font-size:11px;margin-bottom:8px}.sound-test button,.custom-sound-test button{width:100%}.gui-panel{position:fixed;top:0;right:0;width:320px;height:100vh;background:var(--bg-secondary);border-left:1px solid var(--border-color);box-shadow:-4px 0 24px #0000004d;font-family:var(--font-primary);font-size:12px;color:var(--text-primary);z-index:1000;display:flex;flex-direction:column;transform:translate(100%);transition:transform .3s cubic-bezier(.4,0,.2,1)}.gui-panel.open{transform:translate(0)}.gui-toggle{position:fixed;top:20px;right:20px;padding:10px 16px;background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);border-radius:var(--radius);font-family:var(--font-primary);font-size:11px;font-weight:500;cursor:pointer;z-index:999;box-shadow:var(--shadow);transition:all .2s ease;letter-spacing:.02em;text-transform:uppercase}.gui-toggle:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff;transform:translateY(-1px);box-shadow:0 6px 12px #0006}.gui-toggle:active{transform:translateY(0)}.gui-toggle.active{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.gui-toggle.hidden{opacity:0;pointer-events:none}.gui-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);flex-shrink:0}.gui-title{font-size:13px;font-weight:600;letter-spacing:-.01em;color:var(--text-primary);margin:0}.gui-close{width:28px;height:28px;background:transparent;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;line-height:1}.gui-close:hover{background:#ffffff1a;color:var(--text-primary)}.gui-content{flex:1;overflow-y:auto;overflow-x:hidden}.gui-section{border-bottom:1px solid rgba(51,65,85,.4)}.gui-section:last-child{border-bottom:none}.gui-section-header{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:#ffffff05;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.gui-section-header:hover{background:#ffffff0d}.gui-section-title{font-size:12px;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--text-primary);margin:0}.gui-section-chevron{width:16px;height:16px;color:var(--text-secondary);transition:transform .2s ease}.gui-section.collapsed .gui-section-chevron{transform:rotate(-90deg)}.gui-section-body{padding:12px 20px 16px;background:transparent;max-height:9999px;overflow:hidden;transition:max-height .3s cubic-bezier(.4,0,.2,1),opacity .2s ease,padding .3s cubic-bezier(.4,0,.2,1)}.gui-section.collapsed .gui-section-body{max-height:0;padding-top:0;padding-bottom:0;opacity:0}.gui-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.gui-row:last-child{margin-bottom:0}.gui-row-stacked{flex-direction:column;align-items:stretch;gap:6px}.gui-label{font-size:11px;color:var(--text-secondary);font-weight:500;letter-spacing:.01em;flex-shrink:0;min-width:80px}.gui-label-stacked{display:block;margin-bottom:6px;min-width:0}.gui-info{font-size:10px;color:var(--text-muted);font-style:italic;margin-top:4px;line-height:1.4}.gui-input,.gui-select{flex:1;min-width:0;padding:8px 10px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;font-family:var(--font-primary);font-size:11px;outline:none;transition:all .15s ease}.gui-input:hover,.gui-select:hover{border-color:#0077b666}.gui-input:focus,.gui-select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #0077b626}.gui-input[type=number]{text-align:right;font-family:var(--font-mono)}.gui-input-full{width:100%}.gui-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a0a0a0' d='M6 9L2 5h8z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 8px center;padding-right:28px}.gui-select option{background:#0a0f1e;color:var(--text-primary);padding:6px 8px}.gui-select option:checked{background:#0077b666;color:#fff}.gui-slider-row{display:flex;align-items:center;gap:8px;flex:1}.gui-slider{flex:1;height:4px;background:var(--bg-primary);border-radius:2px;outline:none;-webkit-appearance:none;appearance:none;touch-action:manipulation}.gui-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:14px;height:14px;background:var(--accent-primary);border-radius:50%;cursor:pointer;border:2px solid var(--bg-secondary);box-shadow:0 2px 4px #0000004d;transition:all .15s ease}.gui-slider::-webkit-slider-thumb:hover{background:var(--accent-hover);transform:scale(1.1)}.gui-slider::-moz-range-thumb{width:14px;height:14px;background:var(--accent-primary);border-radius:50%;cursor:pointer;border:2px solid var(--bg-secondary);box-shadow:0 2px 4px #0000004d;transition:all .15s ease}.gui-slider::-moz-range-thumb:hover{background:var(--accent-hover);transform:scale(1.1)}.gui-slider-value{width:55px;padding:6px 8px;font-family:var(--font-mono);text-align:right;color:var(--text-primary)}.preset-btn-animated{position:relative;overflow:hidden}.gui-slider-label{color:var(--text-primary)}.gui-button{padding:9px 14px;background:var(--bg-surface);color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;font-family:var(--font-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease;white-space:nowrap;outline:none;letter-spacing:.01em}.gui-button:hover{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.gui-button:active{transform:translateY(1px)}.gui-button-full{width:100%}.gui-button-primary{background:var(--accent-primary);border-color:var(--accent-primary);color:#fff}.gui-button-primary:hover{background:#00b4d8;border-color:#00b4d8}.gui-button-success{background:#1e4a3d;border-color:#2d6a4f;color:var(--text-primary)}.gui-button-success:hover{background:#2d6a4f;border-color:#40916c}.gui-button-danger{background:#dc354533;border-color:#dc354566;color:var(--text-primary)}.gui-button-danger:hover{background:#dc354566;border-color:#dc354599}.gui-button-group{display:flex;gap:6px}.gui-button-group .gui-button{flex:1}.gui-color{width:100%;height:32px;padding:2px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:4px;cursor:pointer;outline:none;transition:all .15s ease}.gui-color:hover{border-color:var(--accent-primary)}.gui-color::-webkit-color-swatch-wrapper{padding:0}.gui-color::-webkit-color-swatch{border:none;border-radius:2px}.gui-color::-moz-color-swatch{border:none;border-radius:2px}.gui-checkbox-container{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.gui-checkbox{width:16px;height:16px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:3px;cursor:pointer;appearance:none;outline:none;transition:all .15s ease;position:relative}.gui-checkbox:hover{border-color:var(--accent-primary)}.gui-checkbox:checked{background:var(--accent-primary);border-color:var(--accent-primary)}.gui-checkbox:checked:after{content:"";position:absolute;left:4px;top:1px;width:4px;height:8px;border:solid white;border-width:0 2px 2px 0;transform:rotate(45deg)}.gui-checkbox-label{font-size:11px;color:var(--text-secondary);cursor:pointer}.gui-divider{height:1px;background:var(--border-color);margin:16px 0;border:none}.gui-badge{display:inline-block;padding:2px 8px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:10px;font-size:10px;font-weight:500;color:var(--text-secondary);letter-spacing:.02em}.gui-badge-primary{background:#0077b633;border-color:#0077b666;color:#00b4d8}.gui-badge-success{background:#2d6a4f33;border-color:#2d6a4f66;color:#52b788}.gui-xyz-control{display:flex;flex-direction:column;gap:8px}.gui-xyz-header{display:flex;justify-content:space-between;align-items:center}.gui-xyz-axis{display:flex;align-items:center;gap:8px}.gui-xyz-label{width:12px;font-size:10px;font-weight:600;color:var(--text-secondary);text-align:center}.gui-link-button{padding:4px 10px;font-size:10px;font-weight:600;letter-spacing:.03em}.gui-subsection{margin-top:16px;padding-top:16px;border-top:1px solid rgba(255,255,255,.05)}.gui-subsection:first-child{margin-top:0;padding-top:0;border-top:none}.gui-subsection-title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:10px}.gui-hidden{display:none!important}@keyframes gui-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes gui-fade-in{0%{opacity:0}to{opacity:1}}@media(max-width:768px){.gui-panel{width:100%;max-width:100%;height:100dvh;max-height:100dvh}.gui-toggle{right:10px;top:10px}}@media(max-width:768px){.material-apply-btn{padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))!important}}.gui-content::-webkit-scrollbar{width:6px}.gui-content::-webkit-scrollbar-track{background:transparent}.gui-content::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:3px}.gui-content::-webkit-scrollbar-thumb:hover{background:#fff3}.gui-panel.minimized{height:48px!important;overflow:hidden;transition:height .3s cubic-bezier(.4,0,.2,1)}.gui-panel.minimized .gui-content{opacity:0;max-height:0;pointer-events:none;transition:opacity .2s ease,max-height .3s cubic-bezier(.4,0,.2,1)}.gui-panel.minimized .gui-header{opacity:1}.gui-minimize{width:28px;height:28px;background:transparent;border:none;color:var(--text-secondary);font-size:20px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;line-height:1;margin-right:4px;flex-shrink:0}.gui-minimize:hover{background:#ffffff1a;color:var(--text-primary)}.gui-section-themed[data-theme=primary] .gui-section-header{border-left:3px solid var(--accent-primary);padding-left:17px}.gui-section-themed[data-theme=success] .gui-section-header{border-left:3px solid #52b788;padding-left:17px}.gui-section-themed[data-theme=warning] .gui-section-header{border-left:3px solid #f4a261;padding-left:17px}.gui-section-themed[data-theme=danger] .gui-section-header{border-left:3px solid #e63946;padding-left:17px}.gui-section-themed[data-theme=info] .gui-section-header{border-left:3px solid #00b4d8;padding-left:17px}.gui-section-themed[data-theme=primary] .gui-section-title{color:var(--accent-primary)}.gui-section-themed[data-theme=success] .gui-section-title{color:#52b788}.gui-section-themed[data-theme=warning] .gui-section-title{color:#f4a261}.gui-section-themed[data-theme=danger] .gui-section-title{color:#e63946}.gui-section-themed[data-theme=info] .gui-section-title{color:#00b4d8}.gui-subsection-animated{margin-left:0;border-left:2px solid transparent;transition:border-left-color .25s cubic-bezier(.4,0,.2,1)}.gui-indent-1{padding-left:12px}.gui-indent-2{padding-left:24px}.gui-indent-3{padding-left:36px}.gui-subsection-animated:not(.collapsed){border-left-color:#0077b64d}.gui-subsection-header{display:flex;align-items:center;gap:8px;padding:10px 0;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.gui-subsection-header:hover{background:#ffffff05}.gui-subsection-title{font-size:11px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;margin:0}.gui-subsection-chevron{font-size:10px;color:var(--text-secondary);transition:transform .25s cubic-bezier(.4,0,.2,1);flex-shrink:0}.gui-subsection-animated:not(.collapsed) .gui-subsection-chevron{transform:rotate(90deg)}.gui-subsection-body{max-height:9999px;opacity:1;overflow:hidden;transition:max-height .35s cubic-bezier(.4,0,.2,1),opacity .25s ease,padding .35s cubic-bezier(.4,0,.2,1);padding-top:8px;padding-bottom:12px}.gui-subsection-animated.collapsed .gui-subsection-body{max-height:0;opacity:0;padding-top:0;padding-bottom:0}.gui-slider-group{display:flex;flex-direction:column;gap:10px}.gui-slider-group-horizontal{flex-direction:row}.gui-preset-selector{margin:12px 0}.gui-preset-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(70px,1fr));gap:8px}.gui-preset-item{aspect-ratio:1;border:2px solid var(--border-color);border-radius:6px;overflow:hidden;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-surface);padding:4px}.gui-preset-item:hover{border-color:var(--accent-primary);transform:translateY(-2px);box-shadow:0 4px 8px #0000004d}.gui-preset-item.active{border-color:var(--accent-primary);background:#0077b626}.gui-preset-item img{width:100%;height:70%;object-fit:cover;border-radius:4px;margin-bottom:4px}.gui-preset-item span{font-size:9px;color:var(--text-secondary);text-align:center;font-weight:500;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;width:100%}@keyframes gui-section-expand{0%{max-height:0;opacity:0}to{max-height:9999px;opacity:1}}@keyframes gui-section-collapse{0%{max-height:9999px;opacity:1}to{max-height:0;opacity:0}}.gui-section:not(.collapsed) .gui-section-body{animation:gui-section-expand .35s cubic-bezier(.4,0,.2,1)}.gui-section.collapsed .gui-section-body{animation:gui-section-collapse .35s cubic-bezier(.4,0,.2,1)}.gui-panel,.gui-toggle,.gui-button,.gui-section-header,.gui-subsection-header,.top-toolbar,.top-sheet,.settings-panel,.info-panel,.info-panel-header,.info-panel-btn,.voxel-tool-btn,.gui-preset-item{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.gui-panel button,.top-toolbar button,.top-sheet button,.settings-panel button,.info-panel button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}.preset-group{margin-bottom:12px}.preset-group:last-of-type{margin-bottom:16px}.preset-group-label{font-size:10px;font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.preset-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.preset-btn{width:100%;aspect-ratio:1;border:1px solid var(--border-color);border-radius:4px;cursor:pointer;transition:all .15s ease;padding:0;background-color:var(--bg-surface)}.preset-btn:hover{border-color:var(--accent-primary);transform:translateY(-1px);box-shadow:0 2px 6px #0000004d}.preset-btn.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px #0077b666,0 2px 6px #0000004d}.preset-clear-btn{width:100%;padding:8px 12px;background:var(--bg-surface);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:4px;font-family:var(--font-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.preset-clear-btn:hover{background:#ffffff1a;color:var(--text-primary)}.preset-option{margin:12px 0;padding-top:8px;border-top:1px solid rgba(255,255,255,.05)}.texture-picker{display:flex;flex-direction:column;gap:4px}.texture-picker-grid-container{max-height:200px;overflow-y:auto;overflow-x:hidden;padding:4px 0}.texture-picker-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.texture-picker-item{aspect-ratio:1;border:1px solid var(--border-color);border-radius:3px;cursor:pointer;overflow:hidden;transition:all .15s ease;background:var(--bg-surface);display:flex;flex-direction:column;align-items:center}.texture-picker-item:hover{border-color:var(--accent-primary)}.texture-picker-item.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px #0077b666}.texture-picker-item img{width:100%;height:100%;object-fit:cover;pointer-events:none}.texture-picker-label{font-size:8px;text-align:center;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:2px;width:100%;background:#00000080;position:absolute;bottom:0}body.material-editor-mode .webpage-container,body.material-editor-mode .webpage-container iframe{pointer-events:none!important}.material-editor{position:fixed!important;top:0!important;right:0!important;width:320px!important;height:100vh!important;background:var(--bg-secondary)!important;border-left:1px solid var(--border-color)!important;border-radius:0!important;box-shadow:-4px 0 24px #0000004d!important;font-family:var(--font-primary)!important;font-size:12px!important;color:var(--text-primary)!important;z-index:1000!important;padding:0!important;transform:translate(100%)!important;transition:transform .3s cubic-bezier(.4,0,.2,1)!important;overflow-x:hidden!important;overflow-y:auto!important;max-height:100vh!important}.material-editor[style*="display: block"],.material-editor[style*="display:block"]{display:block!important;transform:translate(0)!important}.material-editor[style*="display: none"],.material-editor[style*="display:none"]{transform:translate(100%)!important;pointer-events:none!important}.material-editor>div:first-child{position:sticky!important;top:0!important;background:var(--bg-primary)!important;border-bottom:1px solid var(--border-color)!important;padding:16px 20px!important;margin-bottom:0!important;display:flex!important;z-index:10!important}.material-editor>div:first-child h2{font-size:13px!important;font-weight:600!important;letter-spacing:-.01em!important;color:var(--text-primary)!important;margin:0!important;flex:1!important}.material-editor>div:first-child button{width:28px!important;height:28px!important;background:transparent!important;border:none!important;color:var(--text-secondary)!important;font-size:20px!important;cursor:pointer!important;border-radius:4px!important;padding:0!important;transition:all .15s ease!important;flex-shrink:0!important}.material-editor>div:first-child button:hover{background:#ffffff1a!important;color:var(--text-primary)!important}.material-editor>div:not(:first-child){padding-left:20px!important;padding-right:20px!important;margin-bottom:16px!important}.material-editor>button:last-child,.material-apply-btn{position:sticky!important;bottom:0!important;margin:0!important;padding:14px 20px!important;padding-bottom:calc(14px + env(safe-area-inset-bottom,0px))!important;background:var(--accent-primary)!important;color:#fff!important;border:none!important;border-radius:0!important;border-top:1px solid var(--border-color)!important;font-family:var(--font-primary)!important;font-size:13px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;z-index:10!important;box-shadow:0 -4px 12px #0003!important;width:100%!important;text-align:center!important;flex-shrink:0!important}.material-editor>button:last-child:hover,.material-apply-btn:hover{background:#00b4d8!important}.material-editor>button:last-child:active,.material-apply-btn:active{transform:translateY(1px)!important}.material-editor+button{position:fixed!important;top:20px!important;right:20px!important;padding:10px 16px!important;background:var(--bg-secondary)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;border-radius:var(--radius)!important;font-family:var(--font-primary)!important;font-size:11px!important;font-weight:500!important;cursor:pointer!important;z-index:999!important;box-shadow:var(--shadow)!important;transition:all .2s ease!important;letter-spacing:.02em!important;text-transform:uppercase!important;width:auto!important;height:auto!important}.material-editor+button:hover{background:var(--accent-primary)!important;border-color:var(--accent-primary)!important;color:#fff!important;transform:translateY(-1px)!important;box-shadow:0 6px 12px #0006!important}.material-editor+button:active{transform:translateY(0)!important}.material-editor[style*="display: block"]+button,.material-editor[style*="display:block"]+button{opacity:0!important;pointer-events:none!important;transform:translate(100px)!important}.material-editor select,.material-editor input[type=text],.material-editor input[type=number]{width:100%!important;padding:8px 10px!important;background:var(--bg-surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;border-radius:4px!important;font-family:var(--font-primary)!important;font-size:11px!important;outline:none!important;transition:all .15s ease!important;box-sizing:border-box!important}.material-editor select{cursor:pointer!important;appearance:none!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23a0a0a0' d='M6 9L2 5h8z'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 8px center!important;background-color:var(--bg-surface)!important;padding-right:28px!important}.material-editor select:hover,.material-editor input[type=text]:hover,.material-editor input[type=number]:hover{border-color:#0077b666!important}.material-editor select:focus,.material-editor input[type=text]:focus,.material-editor input[type=number]:focus{border-color:var(--accent-primary)!important;box-shadow:0 0 0 3px #0077b626!important}.material-editor input[type=number]{text-align:right!important;font-family:var(--font-mono)!important}.material-editor label{font-size:11px!important;color:var(--text-secondary)!important;font-weight:500!important;letter-spacing:.01em!important;margin-bottom:6px!important;display:block!important}.material-editor input[type=color]{width:100%!important;height:32px!important;padding:2px!important;background:var(--bg-surface)!important;border:1px solid var(--border-color)!important;border-radius:4px!important;cursor:pointer!important;outline:none!important;transition:all .15s ease!important;box-sizing:border-box!important}.material-editor input[type=color]:hover{border-color:var(--accent-primary)!important}.material-editor input[type=range]{width:100%!important;height:4px!important;background:var(--bg-primary)!important;border-radius:2px!important;outline:none!important;-webkit-appearance:none!important;appearance:none!important;margin:10px 0!important;touch-action:manipulation!important}.material-editor input[type=range]::-webkit-slider-thumb{-webkit-appearance:none!important;appearance:none!important;width:14px!important;height:14px!important;background:var(--accent-primary)!important;border-radius:50%!important;cursor:pointer!important;border:2px solid var(--bg-secondary)!important;box-shadow:0 2px 4px #0000004d!important;transition:all .15s ease!important}.material-editor input[type=range]::-webkit-slider-thumb:hover{background:var(--accent-hover)!important;transform:scale(1.1)!important}.material-editor input[type=range]::-moz-range-thumb{width:14px!important;height:14px!important;background:var(--accent-primary)!important;border-radius:50%!important;cursor:pointer!important;border:2px solid var(--bg-secondary)!important;box-shadow:0 2px 4px #0000004d!important;transition:all .15s ease!important}.material-editor input[type=range]::-moz-range-thumb:hover{background:var(--accent-hover)!important;transform:scale(1.1)!important}.material-editor button:not(:last-child):not(.material-editor>div:first-child button){padding:9px 14px!important;background:var(--bg-surface)!important;color:var(--text-primary)!important;border:1px solid var(--border-color)!important;border-radius:4px!important;font-family:var(--font-primary)!important;font-size:11px!important;font-weight:500!important;cursor:pointer!important;transition:all .15s ease!important;white-space:nowrap!important;outline:none!important;letter-spacing:.01em!important;width:100%!important;box-sizing:border-box!important;margin-bottom:8px!important}.material-editor button:not(:last-child):not(.material-editor>div:first-child button):hover{background:var(--accent-primary)!important;border-color:var(--accent-primary)!important;color:#fff!important}.material-editor button:not(:last-child):not(.material-editor>div:first-child button):active{transform:translateY(1px)!important}.group-management{border-top:1px solid rgba(255,255,255,.05)!important;padding-top:16px!important;margin-top:16px!important}.group-management label{font-size:11px!important;font-weight:600!important;color:var(--text-secondary)!important;text-transform:uppercase!important;letter-spacing:.05em!important}.material-properties{padding-top:12px!important}.material-editor>div[style*=borderTop],.material-editor>div[style*=border-top]{border-top-color:#ffffff0d!important;margin-top:16px!important;padding-top:16px!important}.material-editor::-webkit-scrollbar{width:6px!important}.material-editor::-webkit-scrollbar-track{background:transparent!important}.material-editor::-webkit-scrollbar-thumb{background:#ffffff1a!important;border-radius:3px!important}.material-editor::-webkit-scrollbar-thumb:hover{background:#fff3!important}.material-editor .gui-info,.material-editor .group-hint{font-size:10px!important;color:var(--text-muted)!important;font-style:italic!important;margin-top:4px!important;line-height:1.4!important}.material-editor>div>div{margin-bottom:12px!important}.material-editor>div:nth-child(2){padding-top:20px!important}.material-editor>div:last-of-type{padding-bottom:20px!important}.dialog-overlay{position:fixed;inset:0;z-index:10003;display:none;align-items:flex-end;justify-content:center;pointer-events:auto;background:#00000026}.dialog-box{width:90%;max-width:700px;margin-bottom:32px;padding:20px 24px 16px;background:#0a0f1eeb;border:2px solid rgba(0,119,182,.6);border-radius:8px;box-shadow:0 -4px 24px #00000080,inset 0 1px #ffffff0d;font-family:var(--font-primary);color:var(--text-primary);pointer-events:auto;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;min-height:100px}.dialog-speaker{font-size:13px;font-weight:600;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.dialog-text{font-size:15px;line-height:1.6;color:var(--text-primary);min-height:48px;white-space:pre-wrap}.dialog-choices{margin-top:12px;display:none;flex-direction:column;gap:4px}.dialog-choice{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:4px;cursor:pointer;font-size:14px;color:var(--text-secondary);transition:background .1s ease,color .1s ease}.dialog-choice:hover{background:#0077b626;color:var(--text-primary)}.dialog-choice.selected{background:#0077b633;color:#fff}.dialog-choice-arrow{font-size:10px;color:var(--accent-primary);opacity:0;transition:opacity .15s ease}.dialog-choice.selected .dialog-choice-arrow{opacity:1}.dialog-continue{text-align:right;font-size:12px;color:var(--accent-primary);margin-top:8px;animation:dialog-blink .8s infinite}@keyframes dialog-blink{0%,to{opacity:1}50%{opacity:.2}}.dialog-box--chat{display:flex;flex-direction:column;max-height:60vh;padding:0;min-height:200px}.dialog-chat-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,119,182,.3);flex-shrink:0}.dialog-chat-header .dialog-speaker{margin-bottom:0}.dialog-chat-back{background:none;border:none;color:var(--text-primary);cursor:pointer;padding:4px;border-radius:4px;line-height:0;flex-shrink:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px}.dialog-chat-back:hover{background:#0077b626}.dialog-interact-prompt{position:absolute;bottom:100%;left:50%;transform:translate(-50%);padding:3px 8px;background:#0a0f1ed9;border:1px solid rgba(0,119,182,.6);border-radius:4px;color:var(--accent-primary);font-family:var(--font-primary);font-size:11px;font-weight:600;letter-spacing:.05em;pointer-events:none;-webkit-user-select:none;user-select:none;white-space:nowrap;animation:dialog-prompt-bob 1.5s ease-in-out infinite}@keyframes dialog-prompt-bob{0%,to{transform:translate(-50%)}50%{transform:translate(-50%) translateY(-4px)}}@media(max-width:768px){.dialog-box{width:95%;margin-bottom:16px;padding:16px 18px 12px}.dialog-text{font-size:14px}.dialog-choice{padding:10px 12px;font-size:14px}.dialog-box--chat{max-height:50vh;padding:0}}.shop-overlay{z-index:10004}.shop-container{display:flex;flex-direction:column;max-height:65vh;padding:0;min-height:200px}.shop-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,119,182,.3);flex-shrink:0}.shop-title{font-size:15px;font-weight:600;color:var(--text-primary);letter-spacing:.02em}.shop-gold{display:flex;align-items:center;gap:6px;font-size:14px;color:gold;font-weight:600}.shop-gold-icon{width:18px;height:18px;image-rendering:pixelated}.shop-tabs{display:flex;gap:0;border-bottom:1px solid rgba(0,119,182,.2);flex-shrink:0}.shop-tab{flex:1;padding:8px 16px;background:none;border:none;color:var(--text-secondary);font-size:13px;font-weight:600;cursor:pointer;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;font-family:var(--font-primary)}.shop-tab:hover{color:var(--text-primary)}.shop-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.shop-item-list{flex:1;overflow-y:auto;padding:4px 0;min-height:80px}.shop-item-row{display:flex;align-items:center;gap:10px;padding:8px 16px;transition:background .1s}.shop-item-row:hover{background:#0077b614}.shop-item-icon{width:32px;height:32px;image-rendering:pixelated;flex-shrink:0}.shop-item-info{flex:1;min-width:0}.shop-item-name{font-size:13px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.shop-item-desc{font-size:11px;color:var(--text-secondary);margin-top:1px}.shop-item-price{font-size:13px;font-weight:600;color:gold;flex-shrink:0;min-width:40px;text-align:right}.shop-item-price.sell{color:#22c55e}.shop-action-btn{padding:4px 12px;background:#0077b633;border:1px solid rgba(0,119,182,.4);border-radius:4px;color:var(--text-primary);font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;transition:background .15s,border-color .15s;font-family:var(--font-primary)}.shop-action-btn:hover{background:#0077b659;border-color:#0077b699}.shop-action-btn.sell{background:#22c55e26;border-color:#22c55e66}.shop-action-btn.sell:hover{background:#22c55e4d;border-color:#22c55e99}.shop-action-btn.disabled{opacity:.35;cursor:not-allowed}.shop-empty{padding:24px 16px;text-align:center;color:var(--text-secondary);font-size:13px;font-style:italic}.shop-feedback{padding:0 16px;font-size:12px;min-height:24px;line-height:24px;flex-shrink:0}.shop-feedback.success{color:#22c55e}.shop-feedback.error{color:#ef4444}.shop-footer{padding:8px 16px 12px;border-top:1px solid rgba(0,119,182,.2);text-align:right;flex-shrink:0}.shop-back-btn{padding:6px 16px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);border-radius:4px;color:var(--text-secondary);font-size:12px;cursor:pointer;transition:background .15s,color .15s;font-family:var(--font-primary)}.shop-back-btn:hover{background:#ffffff1f;color:var(--text-primary)}@media(max-width:768px){.shop-container{max-height:55vh}.shop-item-row{padding:10px 12px}.shop-action-btn{padding:6px 14px;font-size:13px}}.chat-messages{flex:1;overflow-y:auto;padding:12px 16px;display:flex;flex-direction:column;gap:8px;min-height:120px;scrollbar-width:thin;scrollbar-color:rgba(0,119,182,.4) transparent}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-track{background:transparent}.chat-messages::-webkit-scrollbar-thumb{background:#0077b666;border-radius:3px}.chat-message{max-width:80%;padding:8px 12px;font-size:14px;line-height:1.5;word-wrap:break-word;white-space:pre-wrap;position:relative}.chat-message--npc{align-self:flex-start;background:#0077b626;border:1px solid rgba(0,119,182,.3);border-radius:4px 12px 12px 4px;color:var(--text-primary);margin-left:8px}.chat-message--npc:before{content:"";position:absolute;left:-8px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:8px solid rgba(0,119,182,.3)}.chat-message--npc:after{content:"";position:absolute;left:-6px;top:11px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-right:6px solid rgba(8,20,40,.95)}.chat-message--user{align-self:flex-end;background:#28b48240;border:1px solid rgba(40,180,130,.5);border-radius:12px 4px 4px 12px;color:#d0f0e0;margin-right:8px}.chat-message--user:before{content:"";position:absolute;right:-8px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid rgba(40,180,130,.5)}.chat-message--user:after{content:"";position:absolute;right:-6px;top:11px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid rgba(18,50,42,.92)}.chat-message--error{align-self:center;max-width:90%;background:#dc323226;border:1px solid rgba(220,50,50,.3);border-radius:8px;color:#f88;font-size:12px;font-style:italic}.chat-loading{align-self:flex-start;display:none;gap:4px;padding:8px 12px}.chat-loading.visible{display:flex}.chat-loading-dot{width:6px;height:6px;border-radius:50%;background:var(--accent-primary);animation:chat-dot-bounce 1.2s infinite ease-in-out}.chat-loading-dot:nth-child(2){animation-delay:.2s}.chat-loading-dot:nth-child(3){animation-delay:.4s}@keyframes chat-dot-bounce{0%,80%,to{opacity:.3;transform:scale(.8)}40%{opacity:1;transform:scale(1.2)}}.chat-input-row{display:flex;gap:8px;padding:12px 16px;border-top:1px solid rgba(0,119,182,.3);flex-shrink:0}.chat-input{flex:1;padding:10px 12px;background:#ffffff0d;border:1px solid rgba(0,119,182,.4);border-radius:6px;color:var(--text-primary);font-family:var(--font-primary);font-size:14px;outline:none;min-height:44px;box-sizing:border-box}.chat-input:focus{border-color:var(--accent-primary);background:#ffffff14}.chat-input::placeholder{color:var(--text-secondary);opacity:.6}.chat-send-btn{padding:10px 16px;background:var(--accent-primary);border:none;border-radius:6px;color:#fff;font-family:var(--font-primary);font-size:14px;font-weight:600;cursor:pointer;min-width:44px;min-height:44px;transition:opacity .15s ease}.chat-send-btn:hover{opacity:.9}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-apikey-overlay{position:fixed;inset:0;z-index:10004;display:flex;align-items:center;justify-content:center;background:#0009}.chat-apikey-modal{width:90%;max-width:400px;padding:24px;background:#0a0f1ef2;border:2px solid rgba(0,119,182,.6);border-radius:8px;box-shadow:0 8px 32px #00000080;font-family:var(--font-primary);color:var(--text-primary)}.chat-apikey-title{font-size:16px;font-weight:600;color:var(--accent-primary);margin-bottom:12px}.chat-apikey-desc{font-size:13px;line-height:1.5;color:var(--text-secondary);margin-bottom:16px}.chat-apikey-desc a{color:var(--accent-primary);text-decoration:underline}.chat-apikey-input{width:100%;padding:10px 12px;background:#ffffff0d;border:1px solid rgba(0,119,182,.4);border-radius:6px;color:var(--text-primary);font-family:var(--font-primary);font-size:13px;margin-bottom:16px;outline:none;box-sizing:border-box}.chat-apikey-input:focus{border-color:var(--accent-primary)}.chat-apikey-actions{display:flex;gap:8px;justify-content:flex-end}.chat-apikey-cancel,.chat-apikey-save{padding:8px 16px;border-radius:6px;font-family:var(--font-primary);font-size:13px;cursor:pointer;border:none}.chat-apikey-cancel{background:#ffffff1a;color:var(--text-secondary)}.chat-apikey-cancel:hover{background:#ffffff26}.chat-apikey-save{background:var(--accent-primary);color:#fff;font-weight:600}.chat-apikey-save:hover{opacity:.9}@media(max-width:768px){.chat-message{font-size:13px}.chat-input{font-size:16px}.chat-input-row{padding:8px 12px}}.glass-panel{background:#0a0f1eeb;border:2px solid rgba(0,119,182,.6);border-radius:8px;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);font-family:var(--font-primary);color:var(--text-primary)}.top-toolbar{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:10100;background:#0a0f1eeb;border:2px solid rgba(0,119,182,.6);border-radius:12px;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;padding:4px 6px;gap:2px;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;margin-top:env(safe-area-inset-top,0px);transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s ease}body.dialog-active .top-toolbar{transform:translate(-50%) translateY(calc(-100% - 24px));pointer-events:none;opacity:0}.toolbar-btn{width:44px;height:44px;border-radius:8px;border:1px solid transparent;background:transparent;color:var(--text-secondary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;font-size:18px;padding:0;flex-shrink:0}.toolbar-btn:hover{background:#0077b626;color:var(--text-primary)}.toolbar-btn:active{transform:scale(.92)}.toolbar-btn:disabled{pointer-events:none;opacity:.3}.toolbar-undo-stack{display:flex;flex-direction:column;gap:1px;flex-shrink:0}.toolbar-btn.toolbar-undo-btn{width:32px;height:20px;border-radius:4px}.toolbar-btn.toolbar-undo-btn svg{width:14px;height:14px}.toolbar-btn.active{background:#0077b640;border-color:#0077b680;color:#fff}.toolbar-btn.toolbar-back{color:var(--text-secondary);font-size:20px}.toolbar-btn.toolbar-back:hover{color:var(--text-primary)}.toolbar-btn.toolbar-mode-play{color:#2ecc71}.toolbar-btn.toolbar-mode-play:hover{background:#2ecc7126}.toolbar-btn.toolbar-mode-play.active{background:#2ecc7140;border-color:#2ecc7180}.toolbar-btn.toolbar-mode-edit{color:var(--accent-primary)}.toolbar-btn.toolbar-mode-edit:hover{background:#0077b626}.toolbar-btn.toolbar-mode-edit.active{background:#0077b640;border-color:#0077b680}.toolbar-btn.toolbar-settings{color:var(--text-secondary)}.toolbar-separator{width:1px;height:28px;background:#0077b64d;margin:0 2px;flex-shrink:0}.toolbar-swatch-preview{width:22px;height:22px;border-radius:4px;border:1px solid rgba(255,255,255,.2)}.toolbar-content{display:flex;align-items:center;gap:2px}.toolbar-btn svg{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.toolbar-select{height:32px;padding:0 24px 0 8px;border:1px solid rgba(0,119,182,.4);border-radius:6px;background:#0077b61a;color:var(--text-primary);font-family:var(--font-primary);font-size:12px;cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2399b8d0' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center;flex-shrink:0;max-width:90px;text-overflow:ellipsis;overflow:hidden}.toolbar-select:focus{outline:none;border-color:#0077b6b3}.toolbar-select option{background:#0a0f1e;color:var(--text-primary);padding:6px 8px}.toolbar-select option:checked{background:#0077b666;color:#fff}.toolbar-toggle-group{display:flex;border:1px solid rgba(0,119,182,.4);border-radius:6px;overflow:hidden;flex-shrink:0}.toolbar-toggle-btn{padding:4px 10px;border:none;background:transparent;color:var(--text-secondary);font-family:var(--font-primary);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.toolbar-toggle-btn+.toolbar-toggle-btn{border-left:1px solid rgba(0,119,182,.3)}.toolbar-toggle-btn.active{background:#0077b640;color:#fff}.toolbar-toggle-btn:hover:not(.active){background:#0077b61a}.toolbar-aggro-toggle{display:flex;align-items:center;justify-content:center;padding:4px 8px;border:1px solid rgba(255,80,80,.3);border-radius:6px;background:transparent;color:var(--text-secondary);cursor:pointer;transition:all .15s ease;flex-shrink:0}.toolbar-aggro-toggle svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.toolbar-aggro-toggle:hover{background:#ff3c3c26;color:#ff6060}.toolbar-aggro-toggle.active{background:#ff323259;border-color:#ff3232b3;color:#ff4040;box-shadow:0 0 8px #ff32324d}.top-sheet-backdrop{position:fixed;inset:0;z-index:10200;background:#00000026;opacity:0;transition:opacity .3s ease}.top-sheet-backdrop.open{opacity:1}.top-sheet{position:fixed;top:68px;left:50%;transform:translate(-50%) translateY(-20px);z-index:10300;width:90%;max-width:500px;background:#0a0f1eeb;border:2px solid rgba(0,119,182,.6);border-radius:8px;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:transform .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);user-select:none;-webkit-user-select:none;margin-top:env(safe-area-inset-top,0px)}.top-sheet.open{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto}.top-sheet.resizing{transition:none}.top-sheet-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;flex-shrink:0}.top-sheet-title{font-size:13px;font-weight:600;color:var(--accent-primary);text-transform:uppercase;letter-spacing:.05em}.top-sheet-close{width:28px;height:28px;border:none;background:transparent;color:var(--text-secondary);font-size:18px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.top-sheet-close:hover{background:#0077b626;color:var(--text-primary)}.top-sheet-content{overflow-y:auto;overflow-x:hidden;padding:0 16px;max-height:220px;scrollbar-width:thin;scrollbar-color:rgba(0,119,182,.3) transparent}.top-sheet-content::-webkit-scrollbar{width:4px}.top-sheet-content::-webkit-scrollbar-track{background:transparent}.top-sheet-content::-webkit-scrollbar-thumb{background:#0077b64d;border-radius:2px}.top-sheet-handle{display:flex;align-items:center;justify-content:center;padding:8px;cursor:ns-resize;touch-action:none;flex-shrink:0}.top-sheet-handle-bar{width:40px;height:4px;background:#0077b666;border-radius:2px;transition:background .15s ease}.top-sheet-handle:hover .top-sheet-handle-bar{background:#0077b6b3}.settings-backdrop{position:fixed;inset:0;z-index:10400;background:#0000004d;opacity:0;transition:opacity .25s ease}.settings-backdrop.open{opacity:1}.settings-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%) scale(.95);z-index:10500;width:90%;max-width:500px;max-height:80vh;background:#0a0f1ef2;border:2px solid rgba(0,119,182,.6);border-radius:8px;box-shadow:0 4px 24px #00000080,inset 0 1px #ffffff0d;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:transform .25s cubic-bezier(.4,0,.2,1),opacity .2s ease;font-family:var(--font-primary);color:var(--text-primary)}.settings-panel.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.settings-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;flex-shrink:0}.settings-title{font-size:15px;font-weight:600;color:var(--text-primary)}.settings-close{width:32px;height:32px;border:none;background:transparent;color:var(--text-secondary);font-size:20px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:background .15s ease,color .15s ease}.settings-close:hover{background:#0077b626;color:var(--text-primary)}.settings-tab-bar{display:flex;gap:0;padding:0 20px;border-bottom:1px solid rgba(0,119,182,.2);flex-shrink:0}.settings-tab{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary);font-family:var(--font-primary);font-size:13px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s ease,border-color .15s ease}.settings-tab:hover{color:var(--text-primary)}.settings-tab.active{color:var(--accent-primary);border-bottom-color:var(--accent-primary)}.settings-content{overflow-y:auto;overflow-x:hidden;padding:16px 20px;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(0,119,182,.3) transparent}.settings-content::-webkit-scrollbar{width:4px}.settings-content::-webkit-scrollbar-track{background:transparent}.settings-content::-webkit-scrollbar-thumb{background:#0077b64d;border-radius:2px}.settings-tab-content{display:none}.settings-tab-content.active{display:block}@media(max-width:768px){.top-toolbar{top:8px;padding:3px 4px;gap:1px;border-radius:10px}.toolbar-btn{width:40px;height:40px;font-size:16px}.toolbar-btn svg{width:18px;height:18px}.toolbar-separator{height:24px;margin:0 1px}.toolbar-btn.toolbar-undo-btn{width:28px;height:18px}.toolbar-btn.toolbar-undo-btn svg{width:12px;height:12px}.top-sheet{top:56px;width:95%;max-width:none}.top-sheet-content{max-height:50vh}.settings-panel{width:95%;max-height:85vh}}@media(max-width:400px){.toolbar-btn{width:36px;height:36px;font-size:15px}.toolbar-btn svg{width:16px;height:16px}.top-toolbar{padding:2px 3px;border-radius:8px}}.join-overlay{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;background:#0a0f1ed9;animation:gui-fade-in .2s ease;pointer-events:auto}.join-overlay.fade-out{animation:join-overlay-fade-out .3s ease forwards}@keyframes join-overlay-fade-out{to{opacity:0}}.join-overlay-content{text-align:center;color:var(--text-primary, #e0e0e0);font-family:var(--font-primary, "Inter", sans-serif)}.join-overlay-spinner{display:flex;gap:8px;justify-content:center;margin-bottom:20px}.join-overlay-dot{width:10px;height:10px;border-radius:50%;background:var(--accent-primary, #0077b6);animation:chat-dot-bounce 1.2s infinite ease-in-out}.join-overlay-dot:nth-child(2){animation-delay:.2s}.join-overlay-dot:nth-child(3){animation-delay:.4s}.join-overlay-status{font-size:15px;color:var(--text-secondary, #aaa);margin-bottom:24px;min-height:22px}.join-overlay-error{color:#ff6b6b;font-size:14px;margin-bottom:16px}.join-overlay-log{font-family:var(--font-mono, monospace);font-size:11px;color:#b4c8dcb3;text-align:left;white-space:pre;max-height:180px;overflow-y:auto;margin:0 auto 16px;max-width:320px;padding:8px;background:#0000004d;border-radius:4px;line-height:1.5}.dungeon-invite{position:fixed;top:72px;left:50%;transform:translate(-50%) translateY(-120%);z-index:10001;background:#1e1e2ef5;border:1px solid #45475a;border-radius:12px;box-shadow:0 8px 32px #0009,0 0 20px #cba6f71a;font-family:sans-serif;min-width:300px;max-width:420px;overflow:hidden;transition:transform .35s cubic-bezier(.34,1.56,.64,1);pointer-events:auto}.dungeon-invite-visible{transform:translate(-50%) translateY(0)}.dungeon-invite-hiding{transform:translate(-50%) translateY(-120%);transition:transform .25s ease-in}.dungeon-invite-header{display:flex;align-items:center;gap:8px;padding:12px 16px 0}.dungeon-invite-icon{font-size:18px}.dungeon-invite-title{font-size:15px;font-weight:600;color:#cba6f7}.dungeon-invite-body{padding:8px 16px 12px}.dungeon-invite-info{font-size:13px;color:#a6adc8;line-height:1.5}.dungeon-invite-host{color:#89b4fa;font-weight:600}.dungeon-invite-theme{color:#f9e2af;font-weight:600}.dungeon-invite-levels{color:#6c7086}.dungeon-invite-actions{display:flex;gap:8px;margin-top:10px}.dungeon-invite-join{flex:1;padding:8px 16px;background:#89b4fa;color:#1e1e2e;border:none;border-radius:6px;cursor:pointer;font-weight:600;font-size:13px;transition:background .15s}.dungeon-invite-join:hover{background:#b4d0fb}.dungeon-invite-join:disabled{background:#45475a;color:#a6adc8;cursor:default}.dungeon-invite-dismiss{padding:8px 16px;background:transparent;color:#6c7086;border:1px solid #45475a;border-radius:6px;cursor:pointer;font-size:13px;transition:color .15s,border-color .15s}.dungeon-invite-dismiss:hover{color:#a6adc8;border-color:#585b70}.dungeon-invite-timer-track{height:3px;background:#313244}.dungeon-invite-timer-bar{height:100%;width:100%;background:linear-gradient(90deg,#cba6f7,#89b4fa);transition:width .05s linear;border-radius:0 0 12px}.player-chat-toggle{position:fixed;bottom:16px;left:16px;width:36px;height:36px;border-radius:6px;background:#0a0f1ed9;border:1px solid rgba(0,119,182,.4);color:#a0a0a0;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10001;pointer-events:auto;transition:border-color .15s ease,color .15s ease;-webkit-tap-highlight-color:transparent;font-size:18px;line-height:1;padding:0}.player-chat-toggle:hover{border-color:#0077b6cc;color:#e0e0e0}.player-chat-badge{position:absolute;top:-5px;right:-5px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#0077b6;color:#fff;font-size:10px;font-weight:600;display:none;align-items:center;justify-content:center;line-height:1;font-family:var(--font-primary, system-ui, sans-serif)}.player-chat-badge.visible{display:flex}.player-chat-content{display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden;font-family:var(--font-primary, system-ui, sans-serif)}.player-chat-messages{flex:1;overflow-y:auto;padding:8px 12px;display:flex;flex-direction:column;gap:6px;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(0,119,182,.3) transparent}.player-chat-messages::-webkit-scrollbar{width:6px}.player-chat-messages::-webkit-scrollbar-track{background:transparent}.player-chat-messages::-webkit-scrollbar-thumb{background:#0077b64d;border-radius:3px}.player-chat-msg{font-size:13px;line-height:1.4;color:#e0e0e0;word-wrap:break-word;overflow-wrap:break-word;white-space:pre-wrap;padding:1px 0}.player-chat-msg-name{font-weight:600;margin-right:5px}.player-chat-msg--local{align-self:flex-end;background:#28b48240;border:1px solid rgba(40,180,130,.5);border-radius:12px 4px 4px 12px;padding:5px 10px;margin-left:40px;max-width:85%;position:relative;margin-right:8px;color:#d0f0e0}.player-chat-msg--local:before{content:"";position:absolute;right:-8px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:8px solid rgba(40,180,130,.5)}.player-chat-msg--local:after{content:"";position:absolute;right:-6px;top:11px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:6px solid rgba(18,50,42,.92)}.player-chat-msg--remote{align-self:flex-start;background:var(--peer-bg, rgba(255, 255, 255, .08));border:1px solid var(--peer-border, rgba(255, 255, 255, .2));border-radius:4px 12px 12px 4px;padding:5px 10px;margin-right:40px;max-width:85%;position:relative;margin-left:8px}.player-chat-msg--remote:before{content:"";position:absolute;left:-8px;top:10px;width:0;height:0;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:8px solid var(--peer-border, rgba(255, 255, 255, .2))}.player-chat-msg--remote:after{content:"";position:absolute;left:-6px;top:11px;width:0;height:0;border-top:4px solid transparent;border-bottom:4px solid transparent;border-right:6px solid var(--peer-fill, rgba(10, 15, 30, .88))}.player-chat-msg--system{font-size:11px;font-style:italic;color:#a0a0a0;text-align:center;padding:3px 0}.player-chat-scroll-btn{position:absolute;bottom:52px;right:16px;width:28px;height:28px;border-radius:50%;background:#0077b6cc;border:none;color:#fff;cursor:pointer;display:none;align-items:center;justify-content:center;font-size:14px;z-index:2;box-shadow:0 2px 8px #0000004d;transition:opacity .15s ease;pointer-events:auto;padding:0;line-height:1}.player-chat-scroll-btn.visible{display:flex}.player-chat-scroll-btn:hover{background:#0077b6}.player-chat-scroll-badge{position:absolute;top:-4px;right:-4px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;background:#e06060;color:#fff;font-size:9px;font-weight:600;display:none;align-items:center;justify-content:center;line-height:1}.player-chat-scroll-badge.visible{display:flex}.player-chat-input-row{display:flex;gap:6px;padding:8px 12px;border-top:1px solid rgba(0,119,182,.2);flex-shrink:0;box-sizing:border-box;overflow:hidden}.player-chat-input{flex:1;min-width:0;padding:7px 10px;background:#ffffff0d;border:1px solid rgba(0,119,182,.3);border-radius:6px;color:#e0e0e0;font-family:var(--font-primary, system-ui, sans-serif);font-size:13px;outline:none;min-height:34px;box-sizing:border-box}.player-chat-input:focus{border-color:var(--accent-primary, #0077b6);background:#ffffff14}.player-chat-input::placeholder{color:#a0a0a0;opacity:.5}.player-chat-send{padding:7px 12px;background:var(--accent-primary, #0077b6);border:none;border-radius:6px;color:#fff;font-family:var(--font-primary, system-ui, sans-serif);font-size:13px;font-weight:600;cursor:pointer;min-width:36px;min-height:34px;transition:opacity .15s ease}.player-chat-send:hover{opacity:.9}.player-chat-send:disabled{opacity:.4;cursor:not-allowed}@media(max-width:768px){.player-chat-input{font-size:16px}.player-chat-msg{font-size:12px}}.player-nametag{position:absolute;bottom:100%;left:50%;transform:translate(-50%);pointer-events:none;font-family:var(--font-primary, system-ui, sans-serif);font-size:11px;font-weight:600;color:#fff;text-shadow:0 1px 3px rgba(0,0,0,.8),0 0 6px rgba(0,0,0,.5);white-space:nowrap;letter-spacing:.02em}.player-chat-bubble{position:absolute;bottom:calc(100% + 14px);left:50%;transform:translate(-50%);max-width:120px;padding:3px 8px;border-radius:6px;border:1px solid;background:#0a0f1ed9;font-family:var(--font-primary, system-ui, sans-serif);font-size:10px;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.6);pointer-events:none;white-space:normal;word-wrap:break-word;text-align:center;transition:opacity .5s ease-out}.player-chat-bubble:before{content:"";position:absolute;bottom:-7px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:7px solid;border-top-color:inherit}.player-chat-bubble:after{content:"";position:absolute;bottom:-5px;left:50%;transform:translate(-50%);width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:6px solid rgba(10,15,30,.85)}@media(pointer:coarse){.player-chat-toggle{bottom:170px}}.gw-container{--gw-bg: rgba(10, 15, 30, .65);--gw-border-color: rgba(0, 119, 182, .4);--gw-border-color-focus: rgba(0, 119, 182, .7);--gw-border-width: 2px;--gw-shadow: 0 8px 32px rgba(0, 0, 0, .5);--gw-shadow-focus: 0 12px 48px rgba(0, 0, 0, .6), 0 0 20px rgba(0, 119, 182, .15);--gw-header-bg: rgba(12, 20, 40, .7);--gw-header-bg-solid: rgba(12, 20, 40, .6);--gw-header-border-color: rgba(0, 119, 182, .3);--gw-header-padding: 8px 12px;--gw-title-color: #e0e0e0;--gw-title-font: system-ui, -apple-system, sans-serif;--gw-title-size: 14px;--gw-title-weight: 600;--gw-content-bg: transparent;--gw-content-color: #e0e0e0;--gw-content-padding: 12px;--gw-btn-size: 24px;--gw-btn-bg: rgba(255, 255, 255, .05);--gw-btn-bg-hover: rgba(255, 255, 255, .15);--gw-btn-color: #a0a0a0;--gw-btn-color-hover: #fff;--gw-btn-border-color: rgba(0, 119, 182, .3);--gw-btn-border-radius: 4px;--gw-resize-size: 4px;--gw-resize-size-top: 4px;--gw-resize-corner-size: 8px;--gw-resize-indicator: rgba(0, 119, 182, .5);--gw-resize-indicator-size: 2px;--gw-scrollbar-width: 8px;--gw-scrollbar-track: rgba(0, 0, 0, .2);--gw-scrollbar-thumb: rgba(150, 150, 150, .4);--gw-scrollbar-thumb-hover: rgba(150, 150, 150, .6);--gw-radius: 8px;--gw-header-radius: calc(var(--gw-radius) - 2px) calc(var(--gw-radius) - 2px) 0 0;--gw-animation-duration: .15s;--gw-animation-easing: ease-out}.gw-window{position:absolute;box-sizing:border-box;background:var(--gw-bg);border:var(--gw-border-width) solid var(--gw-border-color);border-radius:var(--gw-radius);box-shadow:var(--gw-shadow);display:none;flex-direction:column;z-index:3000;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);overflow:hidden}.gw-window.gw-active{display:flex}.gw-window.gw-focused{border-color:var(--gw-border-color-focus);box-shadow:var(--gw-shadow-focus)}.gw-window.gw-dragging{cursor:move;-webkit-user-select:none;user-select:none}.gw-window.gw-resizing{-webkit-user-select:none;user-select:none}.gw-header{padding:var(--gw-header-padding);background:var(--gw-header-bg);border-bottom:1px solid var(--gw-header-border-color);border-radius:var(--gw-header-radius);cursor:move;display:flex;align-items:center;-webkit-user-select:none;user-select:none;touch-action:none;flex-shrink:0;position:relative;z-index:11}.gw-title-container{display:flex;align-items:center;gap:8px;min-width:0;flex:1;overflow:visible;position:relative;z-index:0}.gw-icon{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center;color:var(--gw-title-color)}.gw-icon img,.gw-icon svg{width:100%;height:100%;object-fit:contain}.gw-title{font-family:var(--gw-title-font);font-size:var(--gw-title-size);font-weight:var(--gw-title-weight);color:var(--gw-title-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;flex:1}.gw-controls{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;gap:4px;padding-left:16px;padding-right:8px;background:linear-gradient(90deg,transparent,var(--gw-header-bg-solid) 12px);z-index:2}.gw-close-btn{width:var(--gw-btn-size, 24px);height:var(--gw-btn-size, 24px);background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:var(--gw-btn-border-radius, 4px);color:#ef9696e6;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0}.gw-close-btn:hover{background:#ef444459;color:#fff;border-color:#ef444499}.gw-close-btn:focus{outline:none;box-shadow:0 0 0 2px var(--gw-border-color-focus)}.gw-close-btn svg{display:block;flex-shrink:0}.gw-content{flex:1;padding:var(--gw-content-padding);overflow:auto;color:var(--gw-content-color);background:var(--gw-content-bg);touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}.gw-content::-webkit-scrollbar{width:var(--gw-scrollbar-width);height:var(--gw-scrollbar-width)}.gw-content::-webkit-scrollbar-track{background:var(--gw-scrollbar-track)}.gw-content::-webkit-scrollbar-thumb{background:var(--gw-scrollbar-thumb);border-radius:calc(var(--gw-scrollbar-width) / 2)}.gw-content::-webkit-scrollbar-thumb:hover{background:var(--gw-scrollbar-thumb-hover)}.gw-content{scrollbar-width:thin;scrollbar-color:var(--gw-scrollbar-thumb) var(--gw-scrollbar-track)}.gw-resize{position:absolute;z-index:10;touch-action:none}.gw-resize-n{top:0;left:var(--gw-resize-corner-size);right:var(--gw-resize-corner-size);height:var(--gw-resize-size-top);cursor:ns-resize;z-index:12}.gw-resize-s{bottom:0;left:var(--gw-resize-corner-size);right:var(--gw-resize-corner-size);height:var(--gw-resize-size);cursor:ns-resize}.gw-resize-e{right:0;top:var(--gw-resize-corner-size);bottom:var(--gw-resize-corner-size);width:var(--gw-resize-size);cursor:ew-resize}.gw-resize-w{left:0;top:var(--gw-resize-corner-size);bottom:var(--gw-resize-corner-size);width:var(--gw-resize-size);cursor:ew-resize}.gw-resize-ne{top:0;right:0;width:var(--gw-resize-corner-size);height:var(--gw-resize-corner-size);cursor:nesw-resize;z-index:12}.gw-resize-nw{top:0;left:0;width:var(--gw-resize-corner-size);height:var(--gw-resize-corner-size);cursor:nwse-resize;z-index:12}.gw-resize-se{bottom:0;right:0;width:var(--gw-resize-corner-size);height:var(--gw-resize-corner-size);cursor:nwse-resize}.gw-resize-sw{bottom:0;left:0;width:var(--gw-resize-corner-size);height:var(--gw-resize-corner-size);cursor:nesw-resize}.gw-resize:after{content:"";position:absolute;background:transparent;transition:background .15s ease;pointer-events:none}.gw-resize-n:after{top:0;left:calc(-1 * var(--gw-resize-corner-size));right:calc(-1 * var(--gw-resize-corner-size));height:var(--gw-resize-indicator-size)}.gw-resize-s:after{bottom:0;left:calc(-1 * var(--gw-resize-corner-size));right:calc(-1 * var(--gw-resize-corner-size));height:var(--gw-resize-indicator-size)}.gw-resize-e:after{right:0;top:calc(-1 * var(--gw-resize-corner-size));bottom:calc(-1 * var(--gw-resize-corner-size));width:var(--gw-resize-indicator-size)}.gw-resize-w:after{left:0;top:calc(-1 * var(--gw-resize-corner-size));bottom:calc(-1 * var(--gw-resize-corner-size));width:var(--gw-resize-indicator-size)}.gw-resize-n:hover:after,.gw-resize-n.gw-resizing:after,.gw-resize-s:hover:after,.gw-resize-s.gw-resizing:after,.gw-resize-e:hover:after,.gw-resize-e.gw-resizing:after,.gw-resize-w:hover:after,.gw-resize-w.gw-resizing:after{background:var(--gw-resize-indicator)}.gw-resize-ne:before,.gw-resize-nw:before,.gw-resize-se:before,.gw-resize-sw:before{content:"";position:absolute;left:0;right:0;height:var(--gw-resize-indicator-size);background:transparent;transition:background .15s ease;pointer-events:none}.gw-resize-ne:after,.gw-resize-nw:after,.gw-resize-se:after,.gw-resize-sw:after{width:var(--gw-resize-indicator-size);top:0;bottom:0}.gw-resize-ne:before,.gw-resize-nw:before{top:0}.gw-resize-se:before,.gw-resize-sw:before{bottom:0}.gw-resize-ne:after,.gw-resize-se:after{right:0}.gw-resize-nw:after,.gw-resize-sw:after{left:0}:is(.gw-resize-ne,.gw-resize-nw,.gw-resize-se,.gw-resize-sw):hover:before,:is(.gw-resize-ne,.gw-resize-nw,.gw-resize-se,.gw-resize-sw):hover:after,:is(.gw-resize-ne,.gw-resize-nw,.gw-resize-se,.gw-resize-sw).gw-resizing:before,:is(.gw-resize-ne,.gw-resize-nw,.gw-resize-se,.gw-resize-sw).gw-resizing:after{background:var(--gw-resize-indicator)}@keyframes gw-window-show{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes gw-window-hide{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media(prefers-reduced-motion:no-preference){.gw-window{transition:box-shadow .15s ease,border-color .15s ease}.gw-window.gw-active{animation:gw-window-show var(--gw-animation-duration) var(--gw-animation-easing) forwards}.gw-window.gw-hiding{display:flex;animation:gw-window-hide var(--gw-animation-duration) var(--gw-animation-easing) forwards}}.gw-window.gw-hiding{display:flex}@media(max-width:768px){.gw-container{--gw-resize-size: 10px;--gw-resize-size-top: 6px;--gw-resize-corner-size: 16px}}@media(pointer:coarse){.gw-container{--gw-resize-size: 10px;--gw-resize-size-top: 6px;--gw-resize-corner-size: 16px}}.gw-sidebar{position:fixed;top:0;bottom:0;box-sizing:border-box;background:var(--gw-bg, rgba(10, 15, 30, .65));border-left:2px solid rgba(0,119,182,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;flex-direction:column;overflow:hidden;z-index:3500;transform:translate(100%);transition:transform .25s ease}.gw-sidebar-right{right:0;left:auto}.gw-sidebar.gw-sidebar-open{transform:translate(0)}.gw-sidebar.gw-sidebar-resizing{transition:none}.gw-sidebar-header{display:flex;align-items:center;padding:10px 12px;background:#0c1428f2;border-bottom:1px solid rgba(0,119,182,.3);flex-shrink:0;position:relative}.gw-sidebar-title-container{display:flex;align-items:center;gap:8px;min-width:0;flex:1}.gw-sidebar-title{font-family:system-ui,-apple-system,sans-serif;font-size:16px;font-weight:600;color:#e0e0e0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gw-sidebar-controls{display:flex;align-items:center;gap:4px;flex-shrink:0}.gw-sidebar-tab-bar{display:flex;background:#080c18cc;border-bottom:1px solid rgba(0,119,182,.2);flex-shrink:0}.gw-sidebar-tab{flex:1;padding:8px 4px;background:transparent;border:none;border-bottom:2px solid transparent;color:#a0a0a0;font-family:system-ui,-apple-system,sans-serif;font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease;text-align:center}.gw-sidebar-tab:hover{color:#e0e0e0;background:#0077b614}.gw-sidebar-tab.active{color:#e0e0e0;border-bottom-color:#0077b6;background:#0077b61f}.gw-sidebar-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(150,150,150,.4) rgba(0,0,0,.2)}.gw-sidebar-body::-webkit-scrollbar{width:8px}.gw-sidebar-body::-webkit-scrollbar-track{background:#0003}.gw-sidebar-body::-webkit-scrollbar-thumb{background:#96969666;border-radius:4px}.gw-sidebar-body::-webkit-scrollbar-thumb:hover{background:#96969699}.gw-sidebar-tab-content{display:none;padding:12px}.gw-sidebar-tab-content.active{display:block}.gw-sidebar-resize-handle{position:absolute;top:0;bottom:0;left:0;width:6px;cursor:ew-resize;touch-action:none;z-index:2}.gw-sidebar-resize-handle:after{content:"";position:absolute;top:0;bottom:0;left:0;width:2px;background:transparent;transition:background .15s ease;pointer-events:none}.gw-sidebar-resize-handle:hover:after,.gw-sidebar-resize-handle.gw-resizing:after{background:#0077b680}@media(max-width:768px){.gw-sidebar{width:100%!important}.gw-sidebar-resize-handle{display:none}}@media(pointer:coarse){.gw-sidebar-resize-handle{width:12px}}.inv-container{display:flex;flex-direction:column;height:100%;position:relative;overflow:hidden}.inv-tab-bar{display:flex;gap:2px;padding:0 0 6px;border-bottom:1px solid rgba(0,119,182,.15);margin-bottom:6px;flex-shrink:0}.inv-tab{display:flex;align-items:center;justify-content:center;width:32px;height:26px;background:#0077b60f;border:1px solid rgba(0,119,182,.2);border-radius:4px;color:#fff6;cursor:pointer;transition:all .15s ease;padding:0}.inv-tab:hover{background:#0077b626;color:#ffffffb3}.inv-tab.active{background:#0077b633;border-color:#0077b680;color:#e0e0e0}.inv-tab svg{pointer-events:none}.inv-grid-scroll{flex:1;min-height:100px;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(150,150,150,.4) rgba(0,0,0,.2)}.inv-grid-scroll::-webkit-scrollbar{width:6px}.inv-grid-scroll::-webkit-scrollbar-track{background:#0003}.inv-grid-scroll::-webkit-scrollbar-thumb{background:#96969666;border-radius:3px}.gw-inventory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:4px}.gw-inventory-slot{aspect-ratio:1;background:#0077b614;border:1px solid rgba(0,119,182,.2);border-radius:4px;display:flex;align-items:center;justify-content:center;color:#ffffff26;font-size:11px;font-family:system-ui,sans-serif;transition:border-color .15s ease,opacity .15s ease;cursor:pointer;touch-action:none}.gw-inventory-slot:hover{border-color:#0077b680;background:#0077b626}.inv-footer{display:flex;align-items:center;gap:6px;padding:6px 4px;margin-top:6px;border-top:1px solid rgba(0,119,182,.15);font-family:system-ui,sans-serif;font-size:12px;flex-shrink:0}.inv-footer .inv-gold-label,.inv-footer .inv-weight-label{color:#a0a0a0}.inv-footer .inv-gold-value{color:gold;font-weight:600}.inv-footer .inv-weight-label{margin-left:auto}.inv-footer .inv-weight-value{color:#a0a0a0;font-weight:600}.inv-detail-panel{background:#0a0f1eeb;max-height:0;overflow:hidden;flex-shrink:1;transition:max-height .25s ease,padding .25s ease,border-top-width .25s ease;padding:0 12px;border-top:0px solid rgba(0,119,182,.3)}.inv-detail-panel.active{max-height:200px;padding:10px 12px;overflow-y:auto;border-top-width:1px}.inv-stat.weight{color:#a0a0a0}.gw-paperdoll{display:flex;justify-content:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid rgba(0,119,182,.15)}.gw-paperdoll-inner{position:relative;width:100%;max-width:280px;height:310px;overflow:hidden}.gw-paperdoll-sprite{position:absolute;top:47%;left:50%;transform:translate(-50%,-50%) scale(3.6);pointer-events:none;z-index:0;opacity:.55;filter:drop-shadow(0 0 8px rgba(0,119,182,.3))}.gw-equip-slot{position:absolute;width:40px;height:40px;background:#060c1c59;border:1px dashed rgba(0,119,182,.35);border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#ffffff4d;font-size:9px;font-family:system-ui,sans-serif;text-transform:uppercase;letter-spacing:.5px;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;touch-action:none;z-index:1}.gw-equip-slot:hover{border-color:#0077b680;background:#0077b61f}.gw-slot-mainhand,.gw-slot-offhand,.gw-slot-body{width:46px;height:46px}.gw-slot-neck,.gw-slot-ring1,.gw-slot-ring2{width:34px;height:34px}.gw-slot-head{top:0;left:50%;transform:translate(-50%)}.gw-slot-shoulders{top:50px;left:4px}.gw-slot-neck{top:8px;right:4px;left:auto}.gw-slot-back{top:50px;right:4px;left:auto}.gw-slot-mainhand{top:100px;left:4px}.gw-slot-body{top:100px;left:50%;transform:translate(-50%)}.gw-slot-offhand{top:100px;right:4px;left:auto}.gw-slot-hands{top:160px;left:4px}.gw-slot-belt{top:158px;left:50%;transform:translate(-50%)}.gw-slot-ring1{top:154px;right:4px;left:auto}.gw-slot-ring2{top:192px;right:4px;left:auto}.gw-slot-legs{top:212px;left:50%;transform:translate(-50%)}.gw-slot-feet{top:260px;left:50%;transform:translate(-50%)}.gw-equip-slot-label{font-size:8px;font-weight:600;color:#ffffff80;text-shadow:0 1px 3px rgba(0,0,0,.9),0 0 6px rgba(0,0,0,.7);text-transform:uppercase;letter-spacing:.3px;pointer-events:none;text-align:center;line-height:1.1}.gw-slot-neck .gw-equip-slot-label,.gw-slot-ring1 .gw-equip-slot-label,.gw-slot-ring2 .gw-equip-slot-label{font-size:7px}.gw-equip-slot.drag-over,.gw-inventory-slot.drag-over{border-color:#4caf50b3!important;border-style:solid!important;background:#4caf501f!important;box-shadow:0 0 8px #4caf504d}.gw-equip-slot.rarity-uncommon{border-color:#1eff0059;border-style:solid}.gw-equip-slot.rarity-rare{border-color:#0070ff66;border-style:solid}.gw-equip-slot.rarity-epic{border-color:#a335ee73;border-style:solid}.gw-equip-slot.rarity-legendary{border-color:#ff800080;border-style:solid;box-shadow:0 0 6px #ff800026}.inv-drag-ghost{position:fixed;width:40px;height:40px;background:#0a0f1ed9;border:2px solid rgba(0,119,182,.6);border-radius:6px;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:20000;box-shadow:0 4px 12px #00000080}.inv-drag-ghost img{width:32px;height:32px;image-rendering:pixelated}.gw-equip-slot svg{opacity:.3}.gw-inventory-slot .slot-item-icon,.gw-equip-slot .slot-item-icon{width:28px;height:28px;image-rendering:pixelated;pointer-events:none}.gw-slot-mainhand .slot-item-icon,.gw-slot-offhand .slot-item-icon,.gw-slot-body .slot-item-icon{width:34px;height:34px}.gw-slot-neck .slot-item-icon,.gw-slot-ring1 .slot-item-icon,.gw-slot-ring2 .slot-item-icon{width:24px;height:24px}.gw-inventory-slot.selected,.gw-equip-slot.selected{border-color:#ffd700b3!important;border-style:solid!important;box-shadow:0 0 8px #ffd70040;background:#ffd70014!important}.gw-inventory-slot.rarity-uncommon{border-color:#1eff0059}.gw-inventory-slot.rarity-rare{border-color:#0070ff66}.gw-inventory-slot.rarity-epic{border-color:#a335ee73}.gw-inventory-slot.rarity-legendary{border-color:#ff800080;box-shadow:0 0 6px #ff800026}.slot-stack-count{position:absolute;bottom:1px;right:3px;font-size:10px;font-weight:700;color:gold;text-shadow:0 0 2px rgba(0,0,0,.8);pointer-events:none}.inv-detail-placeholder{text-align:center;color:#ffffff2e;font-size:11px;padding:20px 0;font-style:italic;font-family:system-ui,sans-serif}.inv-detail-header{display:flex;gap:10px;align-items:flex-start;margin-bottom:4px}.inv-detail-icon{width:48px;height:48px;flex-shrink:0;background:#0077b614;border:1px solid rgba(0,119,182,.2);border-radius:4px;display:flex;align-items:center;justify-content:center}.inv-detail-icon img{width:36px;height:36px;image-rendering:pixelated}.inv-detail-name{font-family:Cinzel,serif;font-size:13px;font-weight:600;line-height:1.2}.inv-detail-type{font-size:10px;color:#a0a0a0;text-transform:uppercase;letter-spacing:.5px;font-family:system-ui,sans-serif}.inv-detail-rarity{font-size:10px;font-weight:600;font-family:system-ui,sans-serif}.inv-detail-stats{display:flex;gap:10px;margin:4px 0}.inv-stat{font-size:12px;color:#4ade80;font-weight:600;font-family:system-ui,sans-serif}.inv-stat.def{color:#60a5fa}.inv-stat.heal{color:#f87171}.inv-detail-desc{font-size:11px;color:#a0a0a0;line-height:1.3;margin-bottom:8px;font-style:italic;font-family:system-ui,sans-serif}.inv-detail-sell{font-size:10px;color:gold;margin-bottom:6px;font-family:system-ui,sans-serif}.inv-detail-actions{display:flex;gap:6px}.inv-action-btn{flex:1;padding:6px 10px;font-family:Cinzel,serif;font-size:11px;font-weight:600;border:1px solid rgba(0,119,182,.3);border-radius:4px;background:#0077b61a;color:#e0e0e0;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.5px}.inv-action-btn:hover{background:#0077b640;border-color:#0077b699}.inv-action-btn:active{transform:scale(.97)}.inv-action-drop{border-color:#ef44444d;background:#ef444414}.inv-action-drop:hover{background:#ef444433;border-color:#ef444480}@media(pointer:coarse){.inv-action-btn{padding:10px 12px;font-size:12px}.inv-detail-icon{width:56px;height:56px}}.gw-char-header{text-align:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid rgba(0,119,182,.15)}.gw-char-name{font-size:16px;font-weight:600;color:#e0e0e0;margin-bottom:2px}.gw-char-level{font-size:11px;color:#a0a0a0}.gw-char-bars{display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.gw-char-bar{position:relative;height:18px;background:#0000004d;border-radius:3px;overflow:hidden}.gw-char-bar-fill{height:100%;border-radius:3px;transition:width .3s ease}.gw-char-bar-fill.health{background:linear-gradient(90deg,#22c55e,#4ade80);width:75%}.gw-char-bar-fill.mana{background:linear-gradient(90deg,#3b82f6,#60a5fa);width:60%}.gw-char-bar-label{position:absolute;top:0;left:8px;right:8px;height:100%;display:flex;align-items:center;justify-content:space-between;font-size:10px;font-weight:500;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.5);pointer-events:none}.gw-char-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:4px;margin-top:8px}.gw-stat-item{display:flex;justify-content:space-between;padding:4px 8px;background:#0077b60f;border-radius:3px;border-left:2px solid rgba(0,119,182,.3)}.gw-stat-label{font-size:11px;font-weight:600;color:#a0a0a0;text-transform:uppercase;letter-spacing:.5px}.gw-stat-value{font-size:13px;font-weight:600;color:#e0e0e0}#gw-map .gw-content{padding:0;overflow:hidden}.gw-map-container{width:100%;height:100%;display:flex;align-items:center;justify-content:center;position:relative}.gw-map-canvas{width:100%;height:100%;background:#0000004d;border-radius:4px}.gw-map-placeholder{position:absolute;color:#fff3;font-size:13px;font-family:system-ui,sans-serif;text-align:center;pointer-events:none}.cc-container{display:flex;flex-direction:column;min-height:100%;gap:10px;font-family:system-ui,-apple-system,sans-serif}.cc-preview-section{display:flex;flex-direction:row;align-items:center;gap:10px;padding-bottom:8px;border-bottom:1px solid rgba(0,119,182,.15);flex-shrink:0}.cc-preview-canvas{width:128px;height:128px;image-rendering:pixelated;background:#0003;border:1px solid rgba(0,119,182,.2);border-radius:6px;cursor:grab}.cc-preview-canvas:active{cursor:grabbing}.cc-preview-label{font-size:10px;color:#a0a0a0;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.cc-options-scroll{flex:1 0 200px}.cc-section{margin-bottom:10px}.cc-section-title{font-size:11px;font-weight:600;color:#a0a0a0;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;padding-left:2px}.cc-option-row{display:flex;flex-wrap:wrap;gap:4px}.cc-option-btn{padding:5px 10px;font-family:system-ui,sans-serif;font-size:11px;font-weight:500;border:1px solid rgba(0,119,182,.2);border-radius:4px;background:#0077b60f;color:silver;cursor:pointer;transition:all .15s ease}.cc-option-btn:hover{background:#0077b626;border-color:#0077b666;color:#e0e0e0}.cc-option-btn.cc-selected{background:#0077b633;border-color:#0077b699;color:#fff;box-shadow:0 0 6px #0077b633}.cc-swatch{width:28px;height:28px;border:2px solid rgba(255,255,255,.1);border-radius:4px;cursor:pointer;transition:all .15s ease;padding:0}.cc-swatch:hover{border-color:#fff6;transform:scale(1.1)}.cc-swatch.cc-selected{border-color:#0077b6cc;box-shadow:0 0 8px #0077b666;transform:scale(1.1)}.cc-thumb-grid{display:grid;grid-template-columns:repeat(auto-fill,56px);gap:4px}.cc-thumb-grid .cc-group-label{grid-column:1 / -1}.cc-thumb-btn{display:flex;flex-direction:column;align-items:center;gap:2px;padding:3px;border:2px solid rgba(0,119,182,.15);border-radius:4px;background:#00000026;cursor:pointer;transition:all .15s ease;width:56px}.cc-thumb-btn:hover{border-color:#0077b666;background:#0077b61a}.cc-thumb-btn.cc-selected{border-color:#0077b6b3;background:#0077b626;box-shadow:0 0 8px #0077b64d}.cc-thumb-canvas{width:48px;height:48px;image-rendering:pixelated;border-radius:2px}.cc-thumb-label{font-size:8px;color:#a0a0a0;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:52px;line-height:1.1}.cc-actions{display:flex;flex-direction:column;gap:6px;flex:1}.cc-btn{flex:1;padding:8px 14px;font-family:Cinzel,serif;font-size:12px;font-weight:600;border:1px solid rgba(0,119,182,.3);border-radius:4px;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.5px}.cc-btn-confirm{background:#22c55e26;border-color:#22c55e66;color:#4ade80}.cc-btn-confirm:hover{background:#22c55e40;border-color:#22c55e99}.cc-btn-cancel{background:#ef444414;border-color:#ef44444d;color:#f87171}.cc-btn-cancel:hover{background:#ef444433;border-color:#ef444480}.cc-btn:active{transform:scale(.97)}.cc-gear-toggle{display:flex;align-items:center;gap:5px;font-size:10px;color:#a0a0a0;cursor:pointer;-webkit-user-select:none;user-select:none}.cc-gear-checkbox{accent-color:rgba(0,119,182,.8);margin:0;cursor:pointer}.cc-anim-toggle{display:flex;gap:3px}.cc-anim-btn{flex:1;padding:3px 0;font-family:system-ui,sans-serif;font-size:9px;font-weight:500;border:1px solid rgba(0,119,182,.2);border-radius:3px;background:#0077b60f;color:gray;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:.3px}.cc-anim-btn:hover{background:#0077b626;color:#b0b0b0}.cc-anim-btn.cc-anim-active{background:#0077b633;border-color:#0077b680;color:#e0e0e0}.cc-tabs{display:flex;gap:2px;flex-shrink:0;border-bottom:1px solid rgba(0,119,182,.15);padding-bottom:0}.cc-tab-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px 5px;font-family:system-ui,sans-serif;font-size:9px;font-weight:500;border:none;border-bottom:2px solid transparent;background:transparent;color:gray;cursor:pointer;transition:all .15s ease}.cc-tab-btn:hover{color:#b0b0b0;background:#0077b60d}.cc-tab-btn.cc-tab-active{color:#e0e0e0;border-bottom-color:#0077b699}.cc-tab-icon{font-size:14px;line-height:1}.cc-tab-label{text-transform:uppercase;letter-spacing:.3px}.cc-group-label{width:100%;font-size:9px;font-weight:600;color:#707070;text-transform:uppercase;letter-spacing:.5px;margin-top:6px;margin-bottom:2px;padding-left:2px}.cc-group-label:first-child{margin-top:0}.cc-variant-section{margin-top:8px;padding-top:6px;border-top:1px solid rgba(255,255,255,.05)}.cc-credits{flex-shrink:0;padding-top:6px;border-top:1px solid rgba(255,255,255,.06);font-size:9px;line-height:1.35;color:#666}.cc-credits-authors{margin-bottom:4px;word-break:break-word}.cc-credit-line{margin-bottom:1px}.cc-credit-label{color:#888}.cc-credits-lpc{padding-top:2px}.cc-credits-lpc a{color:#5a8ab5;text-decoration:none;font-size:9px}.cc-credits-lpc a:hover{color:#7ab5e0;text-decoration:underline}@media(pointer:coarse){.cc-option-btn{padding:8px 14px;font-size:12px}.cc-swatch{width:34px;height:34px}.cc-btn{padding:12px 16px;font-size:13px}.cc-tab-btn{padding:8px 4px 6px;font-size:10px}.cc-tab-icon{font-size:16px}.cc-thumb-grid{grid-template-columns:repeat(auto-fill,64px);gap:6px}.cc-thumb-btn{width:64px;padding:4px}.cc-thumb-canvas{width:56px;height:56px}.cc-thumb-label{font-size:9px;max-width:60px}}.credits-container{display:flex;flex-direction:column;height:100%;font-family:system-ui,-apple-system,sans-serif}.credits-header{text-align:center;padding-bottom:10px;border-bottom:1px solid rgba(0,119,182,.15);flex-shrink:0}.credits-title{font-size:15px;font-weight:600;color:#e0e0e0;margin-bottom:2px}.credits-subtitle{font-size:11px;color:#a0a0a0}.credits-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px 0;scrollbar-width:thin;scrollbar-color:rgba(150,150,150,.4) rgba(0,0,0,.2)}.credits-body::-webkit-scrollbar{width:6px}.credits-body::-webkit-scrollbar-track{background:#0003}.credits-body::-webkit-scrollbar-thumb{background:#96969666;border-radius:3px}.credits-summary{text-align:center;font-size:11px;color:#a0a0a0;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(0,119,182,.1)}.credits-license-group{margin-bottom:12px}.credits-license-header{display:flex;align-items:baseline;gap:8px;margin-bottom:4px}.credits-license-name{font-size:12px;font-weight:600;color:#60a5fa}.credits-license-desc{font-size:10px;color:#707070}.credits-author-list{display:flex;flex-wrap:wrap;gap:4px}.credits-author{font-size:11px;color:silver;background:#0077b60f;border:1px solid rgba(0,119,182,.12);border-radius:3px;padding:2px 6px}.credits-footer{font-size:9px;color:#ffffff40;text-align:center;padding-top:6px;border-top:1px solid rgba(0,119,182,.1);flex-shrink:0}.credits-loading,.credits-error{text-align:center;color:#a0a0a0;font-size:12px;padding:20px 0}
