@charset "UTF-8";.devtool{position:fixed;background:#000000e6;color:#fff;padding:15px;border-radius:8px;font-family:Courier New,monospace;font-size:12px;min-width:250px;max-width:350px;max-height:80vh;overflow-y:auto;z-index:9999;border:1px solid #444}.devtool--disabled .devtool-body{opacity:.4;pointer-events:none;-webkit-user-select:none;user-select:none}.devtool-header{touch-action:none}.devtool-placeholder{margin:6px 0 10px;padding:6px 8px;background:#ffff001a;border:1px dashed #888;border-radius:4px;color:#ccc;font-style:italic;text-align:center}.devtool h3{margin:0 0 10px;font-size:14px;color:#0f0}.devtool h4{margin:15px 0 8px;font-size:12px;color:#ff0;border-bottom:1px solid #333;padding-bottom:3px}.devtool-section{margin-bottom:15px}.devtool label{display:block;margin:5px 0;cursor:pointer;-webkit-user-select:none;user-select:none}.devtool input[type=checkbox]{margin-right:8px}.entities-list{max-height:200px;overflow-y:auto}.entity-item{background:#ffffff1a;margin:5px 0;padding:8px;border-radius:4px;border-left:3px solid #00ff00}.entity-item-simple{background:#ffffff1a;margin:3px 0;padding:6px 8px;border-radius:4px;border-left:3px solid #444;cursor:pointer;transition:all .2s ease}.entity-item-simple:hover{background:#fff3;border-left-color:#0f0}.entity-item-simple.selected{background:#0f03;border-left-color:#0f0}.entity-details-panel{margin-top:10px;padding:10px;background:#00ff001a;border-radius:4px;border:1px solid #00ff00}.entity-details-panel h5{margin:0 0 8px;color:#0f0;font-size:12px}.entity-details-panel h6{margin:10px 0 5px;color:#ff0;font-size:10px}.entity-info{font-size:10px;line-height:1.4;color:#ccc}.entity-info>div{margin:2px 0}.entity-controls{margin-top:10px}.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2px;margin:5px 0}.direction-grid button{background:#ff03;border:1px solid #ffff00;color:#ff0;padding:4px;border-radius:2px;cursor:pointer;font-size:12px;min-height:24px}.direction-grid button:hover{background:#ff06}.direction-grid button:active{background:#ff09}.teleport-controls{display:flex;gap:4px;align-items:center}.teleport-controls input{width:40px;background:#000c;border:1px solid #666;color:#fff;padding:2px 4px;border-radius:2px;font-size:10px}.teleport-controls button{background:#0ff3;border:1px solid #00ffff;color:#0ff;padding:2px 8px;border-radius:2px;cursor:pointer;font-size:10px}.teleport-controls button:hover{background:#0ff6}.entity-item strong{color:#0ff}.entity-details{font-size:10px;margin-top:5px;color:#ccc;line-height:1.4}.devtool-info{position:fixed;right:10px;bottom:10px;display:flex;flex-direction:column;background:#000000e6;padding:15px;border-radius:8px}.icon{position:relative;flex-shrink:0;border-radius:4px;background-repeat:no-repeat}.icon__overlay{position:absolute;right:0;bottom:0;width:40%;height:40%}.icon--placeholder{display:flex;align-items:center;justify-content:center;color:#0000008c;font-weight:700;background:radial-gradient(circle at 35% 30%,#fff,#cfcfcf,#6e6e6e);border:1px solid rgba(0,0,0,.25)}.key-display{display:inline-flex;align-items:center;gap:4px;-webkit-user-select:none;user-select:none;pointer-events:none;line-height:1;vertical-align:middle}.key-display-sprite-group{display:inline-flex;align-items:center;gap:0;flex-shrink:0}.key-display-sprite{image-rendering:pixelated;display:inline-block;flex-shrink:0}.key-display-plus{color:#fff9;font-weight:700;line-height:1}.key-display-text{display:inline-flex;align-items:center;justify-content:center;min-width:18px;padding:2px 6px;border-radius:4px;background:#0f1218eb;color:#fff;border:1px solid rgba(255,255,255,.35);box-shadow:0 1px 2px #00000080;font-weight:700;letter-spacing:.5px;white-space:nowrap}.key-display--sm{gap:3px}.key-display--sm .key-display-text{font-size:11px;min-width:14px;padding:1px 4px}.key-display--sm .key-display-plus{font-size:11px}.key-display--md{gap:4px}.key-display--md .key-display-text,.key-display--md .key-display-plus{font-size:14px}.desc-lines{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.desc-line{display:flex;justify-content:space-between;gap:12px;font-size:var(--font-regular)}.desc-line .desc-label{opacity:.9}.desc-line .desc-delta{font-weight:700;white-space:nowrap}.desc-line--gain .desc-delta,.desc-line--gain{color:#8fd98f}.desc-line--loss .desc-delta,.desc-line--loss{color:#e8908f}.desc-line--neutral{color:#f5e6d3}.item-card{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:180px;max-width:280px;padding:12px 16px;text-align:center;color:#f4f0e6;background:#14120eeb;border:1px solid rgba(255,220,160,.35)}.item-card--floating{transform:translate(-50%);z-index:3000;pointer-events:none}.item-card-name{font-size:var(--font-h3)}.item-card-subtitle{font-size:var(--font-regular);opacity:.75}.item-card-stats{display:flex;flex-direction:column;gap:2px;margin:6px 0}.item-card .desc-lines{align-self:stretch;text-align:left}.item-card-stat{display:flex;justify-content:space-between;gap:12px;font-size:var(--font-regular)}.item-card-stat-label{color:#ffffff8c}.item-card-stat-value{color:#fff;font-weight:500;text-align:right}.card-detail-related{position:fixed;z-index:3000;display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 24px);overflow-y:auto;pointer-events:none}.card-detail-related-card{opacity:.92}.item-list{position:relative;width:100%}.item-list-body{display:flex;align-items:flex-start;justify-content:center;gap:18px}.item-list-gold{flex:0 0 auto;align-self:flex-start;margin-left:-14px}.item-list-viewport{overflow:hidden}.item-list-grid{display:grid;gap:6px;justify-content:center}.item-list-cell{aspect-ratio:1;box-sizing:border-box;position:relative;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;transition:background .12s,border-color .12s}.item-list-cell--filled{background:#ffffff12;border-color:#ffffff2e}.item-list-cell.nav-focused{background:#ffc8321f;border-color:#ffc832;box-shadow:0 0 10px #ffc83226}.item-list-icon{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;user-select:none}.item-list-qty{position:absolute;bottom:2px;right:4px;color:#ffffffd9;font-size:11px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8);-webkit-user-select:none;user-select:none}.item-list-cost{position:absolute;bottom:2px;left:4px;color:#ffd56b;font-size:15px;font-weight:700;text-shadow:0 1px 3px rgba(0,0,0,.8);-webkit-user-select:none;user-select:none}.item-list-cost:before{content:"◆";margin-right:2px;color:#ffe9a8}.item-list-cell--dimmed{opacity:.4}.nine-slice-frame{position:relative;isolation:isolate}.nine-slice-frame.is-ready:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;box-sizing:border-box;pointer-events:none;border:var(--ns-border) solid transparent;border-image-source:var(--ns-src);border-image-slice:var(--ns-slice) fill;border-image-repeat:stretch;image-rendering:pixelated}.confirm-popup-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6500;display:flex;align-items:center;justify-content:center;background:#0009;color:#fff;font-family:inherit;font-size:var(--font-regular)}.confirm-popup{width:min(480px,100vw - 64px);box-sizing:border-box;display:flex;flex-direction:column;gap:16px;text-align:center}.confirm-popup-title{margin:0;font-size:var(--font-h3)}.confirm-popup-message{margin:0;line-height:1.4}.confirm-popup-actions{display:flex;justify-content:center;gap:16px}.confirm-popup-button{font:inherit;color:#fff;background:#ffffff14;border:2px solid transparent;border-radius:6px;padding:8px 20px;cursor:pointer}.confirm-popup-button.confirm-popup-focused{border-color:#fff;background:#fff3}.confirm-popup-hint{display:flex;justify-content:center;gap:8px}.inventory-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;background:#000c}.inventory-panel{background:#0c0c16f7;border:2px solid rgba(255,255,255,.12);border-radius:12px;display:flex;flex-direction:column;width:min(600px,95vw);max-height:90vh;box-shadow:0 12px 48px #000000b3;overflow:hidden}.inventory-header{position:relative;display:flex;align-items:center;justify-content:center;padding:20px 28px;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.inventory-title{color:#fff;font-size:20px;font-weight:700;letter-spacing:2px;text-transform:uppercase;margin:0}.inventory-gold{position:absolute;right:28px;display:flex;align-items:center;gap:6px}.inventory-gold-amount{color:#ffd86b;font-size:16px;font-weight:700}.inventory-grid-wrapper{overflow-y:auto;padding:20px;flex:1;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.inventory-hint{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:12px 20px;border-top:1px solid rgba(255,255,255,.1);color:#fff9;font-size:12px;flex-shrink:0}.item-action-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2600;display:flex;align-items:center;justify-content:center;background:#00000080}.item-action-popup{background:#0c0c16fa;border:2px solid rgba(255,255,255,.15);border-radius:10px;padding:20px 28px;min-width:200px;box-shadow:0 8px 32px #0009}.item-action-title{color:#fff;font-size:16px;font-weight:700;margin-bottom:4px;text-align:center}.item-action-desc{color:#64c8ffcc;font-size:12px;text-align:center;margin-bottom:16px}.item-action-buttons{display:flex;flex-direction:column;gap:6px}.item-action-btn{padding:10px 16px;border-radius:6px;border:1px solid rgba(255,255,255,.1);background:#ffffff0d;color:#fff;font-size:14px;text-align:center;cursor:pointer;transition:background .12s,border-color .12s}.item-action-btn.nav-focused{background:#ffc8321f;border-color:#ffc832;box-shadow:0 0 8px #ffc83226}.item-action-btn--danger{color:#ff6b6b;border-color:#ff6b6b33}.item-action-btn--danger.nav-focused{background:#ff6b6b26;border-color:#ff6b6b;box-shadow:0 0 8px #ff6b6b26}.options-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;background:#0009}.options-panel{display:flex;flex-direction:column;gap:0;box-sizing:border-box;padding:30px;width:min(900px,95vw);min-height:70vh;max-height:70vh;overflow:hidden}.options-header{display:flex;align-items:center;justify-content:space-between;padding:6px 28px 16px;border-bottom:1px solid rgba(255,255,255,.1);flex-shrink:0}.options-title{color:#fff;font-size:var(--font-h1);letter-spacing:4px;text-transform:uppercase;margin:0}.options-close-btn{background:none;border:none;color:#ffffff80;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:color .15s}.options-tabs{display:flex;align-items:center;gap:0;padding:0 20px;flex-shrink:0}.options-tabs-key{display:inline-flex;align-items:center;width:fit-content;margin:0;color:#ffffff8c}.options-tab{background:none;border:none;border-bottom:2px solid transparent;color:#ffffff73;font-size:var(--font-h3);letter-spacing:2px;text-transform:uppercase;padding:12px 20px;cursor:pointer;transition:color .15s,border-color .15s}.options-tab.active{color:#fff;border-bottom-color:#fff}.options-checkbox{display:flex;align-items:center;gap:14px;color:#ffffffd9;font-size:var(--font-regular);cursor:pointer;padding:8px 0}.options-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#ffc832;cursor:pointer}.options-hotkey-row{display:flex;align-items:center;gap:16px;color:#ffffffb3;font-size:var(--font-regular);padding:4px 0}.options-hotkey-keys{flex:0 0 110px;color:#ffc832;font-weight:700}.options-hotkey-label{flex:1}.options-content{overflow-y:auto;padding:0 20px;margin-top:10px;display:flex;flex-direction:column;gap:32px;flex:1;scrollbar-width:none;-ms-overflow-style:none}.options-content::-webkit-scrollbar{display:none}.options-section-title{color:#ffffffd9;font-size:var(--font-h3);letter-spacing:3px;text-transform:uppercase;margin:0 0 12px}.options-table{width:100%;border-collapse:collapse;color:#fff;font-size:var(--font-regular)}.options-table th{text-align:left;color:#ffffff8c;font-size:var(--font-regular);letter-spacing:1px;text-transform:uppercase;padding:14px 10px;position:sticky;top:0;background:#0c0c16;z-index:2}.options-table td{padding:10px;vertical-align:middle}.options-table tr:last-child td{border-bottom:none}.col-name{white-space:nowrap;width:20%}.col-desc{width:50%;color:#fff9;font-size:var(--font-regular)}.col-binding{width:12%;white-space:nowrap}.options-table th:nth-child(4),.options-table td:nth-child(4){width:16%}.options-table-section td{padding:18px 10px 8px!important;color:#ffffffd9;font-size:var(--font-h3);letter-spacing:3px;text-transform:uppercase;border-bottom:none!important;background:transparent!important}.col-reset{width:40px;text-align:center}.binding-capture{display:inline-block;color:#fff;font-size:var(--font-h3);animation:pulse 1s ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.7}to{opacity:1}}.reset-action-btn{background:none;border:none;color:#ffffff4d;font-size:16px;cursor:pointer;padding:2px 6px;border-radius:4px;transition:color .12s}.options-footer{display:flex;align-items:center;justify-content:space-between;padding:20px 28px 0;border-top:1px solid rgba(255,255,255,.1);flex-shrink:0}.reset-all-btn{color:#f77;font-size:var(--font-h3);letter-spacing:2px;text-transform:uppercase;-webkit-user-select:none;user-select:none;pointer-events:none}.close-btn{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:var(--font-h3);letter-spacing:2px;text-transform:uppercase;-webkit-user-select:none;user-select:none;pointer-events:none}.checkbox-indicator{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-radius:3px;flex-shrink:0;position:relative;transition:background .12s,border-color .12s}.checkbox-indicator.checked{background:#ffc832;border-color:#ffc832}.checkbox-indicator.checked:after{content:"";position:absolute;left:3px;top:0;width:5px;height:9px;border:solid #0c0c16;border-width:0 2px 2px 0;transform:rotate(45deg)}.options-presets-section{display:flex;flex-direction:column;gap:12px}.options-presets-row{display:flex;gap:12px}.options-preset-btn{flex:1;display:flex;flex-direction:column;gap:4px;padding:12px 16px 12px 24px;border:2px solid transparent;border-radius:4px;background:#ffffff0d}.options-preset-btn.nav-focused{border-color:#fff;background:#ffffff1f}.options-preset-btn-label{font-size:var(--font-h3);color:#fff}.options-preset-btn-desc{font-size:var(--font-regular);color:#ffffff8c}.options-presets-mouse{margin:0;font-size:var(--font-regular);color:#ffffff8c}.options-presets-mouse-state{color:#fff}.options-hint{color:#ffffff8c;font-size:12px;margin:0 0 12px}.options-slider{display:flex;align-items:center;padding:10px 0}.options-slider-label{color:#ffffffd9;font-size:var(--font-regular)}.options-slider-right{margin-left:auto;display:flex;align-items:center;gap:18px;width:50%}.options-slider-right .trackbar{flex:1;min-width:0}.options-slider-value{width:90px;text-align:right;color:#ffffffd9;font-size:var(--font-regular);font-variant-numeric:tabular-nums;flex-shrink:0}.reset-confirm-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3500;display:flex;align-items:center;justify-content:center;background:#0009}.reset-confirm-dialog{padding:12px 28px;display:flex;flex-direction:column;align-items:center;gap:24px;min-width:420px}.reset-confirm-text{color:#fff;font-size:var(--font-h3);margin:0;text-align:center}.reset-confirm-actions{display:flex;gap:32px}.reset-confirm-btn{display:inline-flex;align-items:center;gap:10px;color:#fff;font-size:var(--font-h3);-webkit-user-select:none;user-select:none;pointer-events:none}.escape-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;background:#000000b3;color:#f5e6d3;font-family:inherit;font-size:var(--font-regular)}.escape-root{width:min(440px,100vw - 40px)}.escape-frame{padding:0}.escape-menu{display:flex;flex-direction:column;align-items:stretch;gap:24px;padding:48px 56px}.escape-title{margin:0;text-align:center;font-size:var(--font-h1);letter-spacing:6px;text-transform:uppercase;color:#ffe9a8;text-shadow:0 2px 0 rgba(0,0,0,.6)}.escape-buttons{display:flex;flex-direction:column;gap:10px}.escape-btn{box-sizing:border-box;padding:14px 24px;border:3px solid #6b4a2b;background:#3c281c8c;color:#f5e6d3;font-size:var(--font-h3);text-align:center;letter-spacing:1px;transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease}.escape-btn--danger{color:#ff8a8a;border-color:#6b2b2b;background:#501c1c8c}.escape-btn.nav-focused{background:#ffc8322e;border-color:#ffc832;color:#fff5d6;transform:translate(4px)}.escape-btn.nav-focused.escape-btn--danger{background:#dc3c3c47;border-color:#ff6b6b;color:#ffd5d5}.escape-hint{text-align:center;font-size:var(--font-regular);opacity:.7;margin-top:8px}.map-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;background:#140c04f5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:32px;color:#e8d5a8;font-family:Cinzel,Georgia,serif}.map-screen canvas{image-rendering:pixelated;border:4px solid #8a5a2b;outline:2px solid #5a3a1a;background:#241c10;box-shadow:0 0 0 1px #3a2010,0 10px 32px #000000bf}.map-screen-header{display:flex;align-items:center;gap:16px}.map-screen-title{font-size:22px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:#e8d5a8;text-shadow:0 1px 4px rgba(0,0,0,.6)}.map-screen-legend{display:flex;flex-wrap:wrap;gap:14px 20px;font-family:system-ui,sans-serif;font-size:12px;color:#c8b888}.map-screen-legend>span{display:flex;align-items:center;gap:5px}.map-screen-dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex-shrink:0}.map-screen-dot--player{background:#2fb24f;box-shadow:0 0 4px #2fb24f88}.map-screen-dot--monster{background:#b83020}.map-screen-mk{display:inline-block;width:12px;height:12px;flex-shrink:0}.map-screen-mk--elite{background:transparent;border:3px solid var(--mk);border-radius:50%}.map-screen-mk--miniboss{background:var(--mk);transform:rotate(45deg)}.map-screen-mk--boss{background:var(--mk);clip-path:polygon(50% 0%,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}.map-screen-glyph{font-family:Georgia,serif;font-weight:700;font-size:13px;line-height:1;flex-shrink:0}.map-screen-debug{max-width:90vw;max-height:22vh;overflow:auto;margin:0;padding:8px 12px;background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:4px;font-family:Consolas,Menlo,monospace;font-size:11px;line-height:1.35;white-space:pre;text-align:left;color:#cfe6ff;position:absolute;right:0;top:0;pointer-events:all}.map-screen-hint{font-family:system-ui,sans-serif;font-size:11px;opacity:.55;letter-spacing:.08em;text-transform:uppercase;color:#c8b888}.chest-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;color:#fff;font-family:inherit;font-size:var(--font-regular)}.chest-screen{display:flex;flex-direction:column;gap:16px;width:min(1400px,100vw - 40px);max-height:calc(100vh - 40px);box-sizing:border-box;position:relative}.chest-screen-header{text-align:center}.chest-screen-header h1{margin:0;font-size:var(--font-h1)}.chest-screen-grids{display:grid;grid-template-columns:1fr 1fr;gap:24px}.chest-screen-side{display:flex;flex-direction:column;gap:12px;filter:brightness(.45);transition:filter .15s ease}.chest-screen-side.is-active{filter:none}.chest-screen-side-title{margin:0;font-size:var(--font-h3);text-align:center}.chest-grid-frame{padding:32px 28px}.chest-screen-hint{text-align:center;font-size:var(--font-regular);padding-top:8px}.chest-screen-hint-tabs{display:inline-flex;align-items:center;gap:0}.loadout-board{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px}.loadout-board-section{display:flex;justify-content:center;gap:10px}.loadout-board-trinkets{gap:14px}.loadout-board-trinket-col{display:flex;flex-direction:column;align-items:center;gap:8px}.loadout-board-cell{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;transition:background .12s,border-color .12s}.loadout-board-cell.nav-focused{background:#ffc83224;border-color:#ffc832;box-shadow:0 0 10px #ffc8322e}.loadout-board-icon{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;-webkit-user-select:none;user-select:none}.loadout-board-sockets{display:flex;gap:4px;min-height:12px}.loadout-board-pip{width:12px;height:12px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:#0000004d}.loadout-board-pip--filled{background:#ffd24a;border-color:#ffd24a}.loadout-board-pip.nav-focused{border-color:#ffc832;box-shadow:0 0 8px #ffc83280}.loadout-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200;color:#fff;font-family:inherit;font-size:var(--font-regular)}.loadout-frame{display:flex;flex-direction:row;align-items:stretch;gap:24px;max-width:95vw;max-height:90vh}.loadout-board-frame,.loadout-picker-frame{display:flex;width:420px;min-height:540px}.loadout-board-frame{padding:28px 24px}.loadout-picker-frame{padding:32px 28px}.loadout-page-content{position:relative;flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow-y:auto}.loadout-socket-hint{position:absolute;top:16px;left:0;right:0;text-align:center;font-size:var(--font-regular);color:#ffd47a;letter-spacing:1px;pointer-events:none}.loadout-hint{position:absolute;bottom:16px;right:24px;font-size:var(--font-regular);opacity:.7}.equipment-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;background:#000c}.equipment-frame{width:min(1040px,96vw);max-height:90vh}.equipment-screen{display:flex;flex-direction:column;gap:18px;padding:24px 28px;color:#fff}.equipment-title{margin:0;text-align:center;font-size:var(--font-h1)}.equipment-body{display:flex;gap:28px;align-items:flex-start;justify-content:center}.equipment-board-wrap{flex:0 0 auto}.equipment-boosts{flex:1;max-width:320px;display:flex;flex-direction:column;gap:10px}.equipment-boosts-title{margin:0;font-size:var(--font-h3);text-align:center}.equipment-stats{flex:0 0 auto;width:300px;display:flex;flex-direction:column;gap:10px;min-height:0}.equipment-stats-title{margin:0;font-size:var(--font-h3);text-align:center}.equipment-stats-list{list-style:none;margin:0;padding:0 6px 0 0;display:flex;flex-direction:column;gap:8px;max-height:62vh;overflow-y:auto}.equipment-stat-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:var(--font-regular)}.equipment-stat-value{font-variant-numeric:tabular-nums}.equipment-stat-desc{font-size:13px;font-style:italic;color:#ffffff8c}.equipment-hint{text-align:center;font-size:var(--font-regular)}.talent-tree-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000c7;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;z-index:200;color:#f5e6d3;font-family:inherit;font-size:var(--font-regular)}.talent-tree-header{text-align:center}.talent-tree-header .talent-tree-title{margin:0 0 4px;font-size:var(--font-h1);letter-spacing:3px;color:#ffe9a8;text-shadow:0 2px 0 rgba(0,0,0,.6)}.talent-tree-header .talent-tree-stats{font-size:var(--font-regular);opacity:.8;display:flex;justify-content:center;gap:8px}.talent-tree-header .talent-tree-stats .stats-sep{opacity:.5}.talent-panel{width:min(1500px,96vw);height:74vh;display:flex;gap:14px;padding:14px;box-sizing:border-box;border:3px solid #6b4a2b;border-radius:6px;background:linear-gradient(#140f0ab8,#140f0ab8);background-size:cover;background-position:center}.talent-col{flex:1;min-width:0;position:relative}.talent-col+.talent-col{border-left:2px solid rgba(255,255,255,.06)}.talent-col-title{position:absolute;top:0;left:0;right:0;text-align:center;font-size:var(--font-h3);letter-spacing:2px;text-transform:uppercase;z-index:4}.talent-col-title--offensive{color:#ff9f8f}.talent-col-title--defensive{color:#9fb8ff}.talent-col-title--utility{color:#ecd877}.talent-col-area{position:absolute;top:2.6em;left:0;right:0;bottom:0}.talent-col-area .talent-node{position:absolute}.talent-edges{position:absolute;top:0;left:0;pointer-events:none;overflow:visible}.talent-edge{stroke:#ffffff1f;stroke-width:1.5;vector-effect:non-scaling-stroke}.talent-rope{--rope-thickness: 11px;--rope-tile: 110px;position:absolute;height:var(--rope-thickness);margin-top:calc(var(--rope-thickness) / -2);transform-origin:0 50%;background-image:url(/sprites/ui/talent-tree/rope.png);background-repeat:repeat-x;background-position:center;background-size:var(--rope-tile) auto;pointer-events:none}.talent-node{--node-w: 26px;--node-h: 30px;position:absolute;width:var(--node-w);height:var(--node-h);transform:translate(-50%,-50%);z-index:1;transition:transform .1s ease,filter .1s ease}.talent-node .talent-node-pin{width:100%;height:100%;background-size:contain;background-repeat:no-repeat;background-position:center}.talent-node--offensive .talent-node-pin{filter:none}.talent-node--defensive .talent-node-pin{filter:hue-rotate(205deg) saturate(1.1)}.talent-node--utility .talent-node-pin{filter:hue-rotate(95deg) saturate(.9) brightness(1.1)}.talent-node--notable{--node-w: 38px;--node-h: 44px;z-index:2}.talent-node--locked{opacity:.5}.talent-node--locked .talent-node-pin{filter:grayscale(.75) brightness(.85)}.talent-node--available{filter:drop-shadow(0 0 5px rgba(120,230,140,.95));animation:talent-node-pulse 1.4s ease-in-out infinite}.talent-node--spent{filter:drop-shadow(0 0 5px rgba(255,205,90,.9))}.talent-node.nav-focused{transform:translate(-50%,-50%) scale(1.35);z-index:3;filter:drop-shadow(0 0 6px #fff)}.talent-node.nav-focused:before{display:none}@keyframes talent-node-pulse{0%,to{transform:translate(-50%,-50%) scale(1)}50%{transform:translate(-50%,-50%) scale(1.12)}}.talent-tree-footer{width:min(1500px,96vw);display:flex;justify-content:space-between;align-items:center;gap:16px}.talent-tree-focus{display:flex;flex-direction:column;min-height:2.4em}.talent-tree-focus .focus-name{font-size:var(--font-h3);color:#ffe9a8}.talent-tree-focus .focus-desc{font-size:var(--font-regular);opacity:.8}.talent-tree-focus .focus-empty{opacity:.5;font-style:italic}.talent-tree-hint{display:flex;align-items:center;gap:6px;font-size:var(--font-regular);opacity:.7}.talent-confirm{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:210}.confirm-box{min-width:320px;max-width:440px;padding:24px 28px;display:flex;flex-direction:column;gap:16px;border:3px solid #ffc832;background:#1e1610f7}.commode-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;z-index:200;color:#f5e6d3;font-family:inherit;font-size:var(--font-regular)}.commode-frame{width:min(1100px,94vw);max-height:86vh}.commode-content{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.commode-detail-frame{position:relative;padding:24px 26px}.commode-grid-frame{padding:32px 28px}.commode-detail{display:flex;flex-direction:column;overflow-y:auto;max-height:70vh;padding-right:8px}.commode-detail .detail-name{font-size:var(--font-h3);color:#ffe9a8}.commode-detail .detail-meta{font-size:var(--font-regular);opacity:.7;margin-bottom:16px}.commode-detail .detail-section-label{font-size:var(--font-regular);letter-spacing:1px;text-transform:uppercase;color:#ffd56b;margin:22px 0 10px;border-bottom:2px solid rgba(255,255,255,.08);padding-bottom:6px}.commode-detail .item-card-stats{margin:4px 0 8px;gap:5px}.commode-detail .desc-lines{gap:6px}.commode-detail .detail-cap{font-size:var(--font-regular);opacity:.75;font-style:italic;margin:8px 0;color:#a8d895}.commode-detail .detail-empty{opacity:.5;font-style:italic;margin:auto;text-align:center}.commode-related{position:absolute;top:0;right:calc(100% + 12px);display:flex;flex-direction:column;gap:8px;max-height:70vh;overflow-y:auto}.detail-upgrade-hint{margin-top:14px;display:flex;align-items:center;gap:8px;font-size:var(--font-regular);color:#d4f0c8}.detail-upgrade-hint.disabled{opacity:.5;color:#c98}.commode-right{display:flex;flex-direction:column;gap:16px;min-height:0}.commode-tabs{display:flex;align-items:center;justify-content:center;gap:8px}.commode-tabs-key{display:flex;align-items:center;opacity:.85}.commode-tab{padding:4px 14px;border:2px solid #6b4a2b;background:#3c281c59;color:#d8c4ab;letter-spacing:1px;text-transform:uppercase;font-size:var(--font-regular)}.commode-tab.active{border-color:#ffc832;background:#ffc83226;color:#ffe9a8}.commode-grid-empty{opacity:.5;font-style:italic;padding:24px 12px;text-align:center}.cost-list{display:flex;flex-direction:column;gap:4px;margin-top:8px;padding:8px 12px;border:3px solid #6b4a2b;background:#140e0a80}.cost-item{display:flex;justify-content:space-between;font-size:var(--font-regular)}.cost-item .cost-name{color:#f5e6d3;opacity:.85}.cost-item .cost-qty{color:#ffd56b;font-weight:700}.cost-empty{font-size:var(--font-regular);opacity:.5;font-style:italic;text-align:center}.commode-hint{display:flex;align-items:center;gap:6px;font-size:var(--font-regular);opacity:.7}.commode-confirm{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:210}.confirm-box{min-width:320px;max-width:440px;padding:24px 28px;display:flex;flex-direction:column;gap:14px;border:3px solid #ffc832;background:#1e1610f7}.confirm-box .confirm-msg{font-size:var(--font-h3);text-align:center}.confirm-box .confirm-msg strong{color:#ffe9a8}.confirm-box .confirm-actions{display:flex;justify-content:center;gap:28px;font-size:var(--font-regular)}.confirm-box .confirm-actions>span{display:flex;align-items:center;gap:6px}.bestiary-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#0009}.bestiary-screen{padding:22px 26px;display:flex;flex-direction:column;gap:16px;align-items:center}.bestiary-header{display:flex;justify-content:space-between;align-items:baseline;width:100%;gap:16px}.bestiary-title{margin:0;font-size:var(--font-h1);color:#fff}.bestiary-count{font-size:var(--font-regular);color:#ffffff8c}.bestiary-empty{font-size:var(--font-regular);color:#ffffff8c;font-style:italic;padding:48px 24px}.bestiary-binder{display:flex;align-items:center;gap:0}.bestiary-page{display:grid;grid-template-columns:repeat(2,auto);grid-template-rows:repeat(2,auto);gap:12px;padding:16px}.bestiary-spine{width:2px;align-self:stretch;background:#ffffff1f}.bestiary-card--back{background:#ffffff0a;border:2px dashed rgba(255,255,255,.1)}.bestiary-footer{display:flex;gap:24px;align-items:center}.bestiary-hint{display:flex;align-items:center;gap:6px;font-size:var(--font-regular);color:#fff6}.bestiary-card{width:160px;height:240px;background:#f4f1e8;border:2px solid #2a2a33;border-radius:8px;padding:8px;display:flex;flex-direction:column;gap:6px;color:#2a2a33}.bestiary-card.nav-focused{outline:3px solid #ffc832;outline-offset:2px}.bestiary-card.nav-focused:before{content:none}.bestiary-card--large{width:300px;height:420px;padding:18px;gap:12px}.bestiary-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:4px}.bestiary-card-name{font-size:var(--font-regular);font-weight:700;line-height:1.1}.bestiary-card--large .bestiary-card-name{font-size:var(--font-h3)}.bestiary-card-emotions{display:flex;flex-direction:column;gap:2px;align-items:flex-end}.bestiary-emotion-chip{font-size:10px;font-weight:700;color:#1a1a1f;padding:1px 5px;border-radius:4px;white-space:nowrap}.bestiary-card--large .bestiary-emotion-chip{font-size:var(--font-regular)}.bestiary-card-portrait{height:80px;background:#e3ddcc;border-radius:4px;display:flex;align-items:center;justify-content:center;min-height:0;padding:6px}.bestiary-card-portrait-frame{height:100%;aspect-ratio:1;max-width:100%}.bestiary-card-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto;gap:6px}.bestiary-card-number{font-size:var(--font-regular);font-weight:700;opacity:.7}.bestiary-card-loot{display:flex;flex-wrap:wrap;gap:3px}.bestiary-loot-item{position:relative;line-height:0}.bestiary-loot-item.nav-focused{outline:2px solid #424242;outline-offset:1px;border-radius:2px}.bestiary-loot-item.nav-focused:before{content:none}.bestiary-loot-item--elite:after{content:"★";position:absolute;top:0;right:0;font-size:12px;color:#ffc832;text-shadow:0 0 2px #000}.bestiary-lightbox-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#0009}.bestiary-lightbox-hint{display:flex;align-items:center;gap:6px;font-size:var(--font-regular);color:#ffffff8c}.shop-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#000000b3;color:#fff;font-family:inherit;font-size:var(--font-regular)}.shop-screen{display:flex;flex-direction:column;gap:16px;width:min(1400px,100vw - 40px);max-height:calc(100vh - 40px);box-sizing:border-box;position:relative}.shop-header{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}.shop-header h1{margin:0;font-size:var(--font-h1)}.shop-gold{color:#ffd56b;font-size:var(--font-h3);letter-spacing:1px}.shop-gold:before{content:"◆ ";color:#ffe9a8}.shop-columns{display:grid;grid-template-columns:1fr 1fr;gap:24px}.shop-side{display:flex;flex-direction:column;gap:12px;filter:brightness(.45);transition:filter .15s ease}.shop-side.is-active{filter:none}.shop-side-title{margin:0;font-size:var(--font-h3);text-align:center}.shop-grid-frame{padding:32px 28px}.shop-hint{text-align:center;font-size:var(--font-regular);padding-top:8px;opacity:.85}.shop-hint-tabs{display:inline-flex;align-items:center;gap:0}.spell-equip-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;background:#000c;color:#fff;font-family:inherit;font-size:var(--font-regular)}.spell-equip-screen{display:flex;flex-direction:column;align-items:center;gap:16px;padding:8px 16px}.spell-equip-title{margin:0;font-size:var(--font-h1)}.spell-equip-spell{display:flex;align-items:center;gap:10px}.spell-equip-spell-name{font-size:var(--font-h3)}.spell-equip-hint{display:flex;align-items:center;flex-wrap:wrap;justify-content:center;gap:4px;color:#fff9;font-size:12px}.dev-items-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;background:#0009}.dev-items-panel{display:flex;flex-direction:column;box-sizing:border-box;padding:30px;width:min(700px,95vw);min-height:70vh;max-height:70vh;overflow:hidden}.dev-items-header{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.dev-items-title{color:#fff;font-size:var(--font-h1);margin-top:0}.dev-items-count{color:#ffffff8c;font-size:var(--font-regular)}.dev-items-list{flex:1;overflow-y:auto;padding:0 20px;scrollbar-width:none;-ms-overflow-style:none}.dev-items-list::-webkit-scrollbar{display:none}.dev-items-row{display:flex;align-items:center;gap:14px;padding:6px 8px;color:#ffffffd9;font-size:var(--font-regular)}.dev-items-icon{flex:0 0 32px;width:32px;height:32px}.dev-items-name{flex:1}.dev-items-id{flex:0 0 auto;color:#ffc832;font-family:monospace;font-size:calc(var(--font-regular) * .85)}.dev-items-footer{display:flex;gap:24px;margin-top:12px;color:#ffffffd9}.dev-items-action{display:flex;align-items:center;gap:8px}.devtool-console{position:fixed;background:#000000eb;color:#ddd;border:1px solid #444;border-radius:8px;font-family:Courier New,monospace;font-size:12px;z-index:9999;display:flex;flex-direction:column;overflow:hidden;resize:both;min-width:320px;min-height:160px;max-width:100vw;max-height:100vh}.devtool-console-header{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:#1a1a1a;border-bottom:1px solid #333;cursor:move;-webkit-user-select:none;user-select:none;touch-action:none}.devtool-console-header span{color:#0f0;font-weight:700}.devtool-console-filters{display:flex;gap:8px;align-items:center;font-size:11px;cursor:auto}.devtool-console-filter{display:flex;align-items:center;gap:3px;cursor:pointer;-webkit-user-select:none;user-select:none;color:#888}.devtool-console-filter input{margin:0;cursor:pointer}.devtool-console-filter--log,.devtool-console-filter--info{color:#ddd}.devtool-console-filter--warn{color:#ffa726}.devtool-console-filter--error{color:#ef5350}.devtool-console-clear{background:#ffffff0d;border:1px solid #444;color:#ccc;padding:2px 8px;border-radius:3px;cursor:pointer;font-family:inherit;font-size:11px}.devtool-console-clear:hover{background:#ffffff26}.devtool-console-body{flex:1;overflow-y:auto;padding:6px 10px;line-height:1.4}.devtool-console-line{white-space:pre-wrap;word-break:break-word}.devtool-console-line--log,.devtool-console-line--info{color:#ddd}.devtool-console-line--warn{color:#ffa726}.devtool-console-line--error{color:#ef5350}.devtool-console-input-row{display:flex;align-items:center;border-top:1px solid #333;padding:4px 10px;background:#0a0a0a}.devtool-console-prompt{color:#0f0;margin-right:6px}.devtool-console-input{flex:1;background:transparent;border:none;outline:none;color:#fff;font-family:inherit;font-size:12px}.MainMenu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:48px;padding-left:clamp(48px,8vw,120px);background:#000;overflow:hidden}.main-menu-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat;pointer-events:none;image-rendering:pixelated;will-change:transform}.main-menu-bg--1{background-image:url(/sprites/backgrounds/main-menu/1.png);z-index:1}.main-menu-bg--2{background-image:url(/sprites/backgrounds/main-menu/2.png);z-index:2}.main-menu-bg--3{background-image:url(/sprites/backgrounds/main-menu/3.png);z-index:3}.main-menu-bg--4{background-image:url(/sprites/backgrounds/main-menu/4.png);z-index:4}.main-menu-bg--floating-b{animation-delay:-2s}@keyframes main-menu-float-a{0%,to{transform:translateZ(0)}50%{transform:translate3d(0,-10px,0)}}@keyframes main-menu-float-b{0%,to{transform:translate3d(0,5px,0)}50%{transform:translateZ(0)}}.menu-title,.menu-version,.menu-buttons{position:relative;z-index:10}.menu-title{color:#fff;font-size:clamp(96px,14vw,200px);line-height:1;letter-spacing:6px;text-transform:uppercase}.menu-df-balance{display:flex;align-items:center;gap:6px;background:#6450c81f;border:1px solid rgba(100,80,200,.3);border-radius:20px;padding:6px 16px;color:#a080ffe6;font-size:14px}.menu-df-balance .df-icon{font-size:14px}.menu-version{position:absolute;bottom:12px;left:14px;color:#ffffff59;font-size:12px;letter-spacing:1px}.menu-buttons{display:flex;flex-direction:column;gap:12px;align-items:flex-start}.hub-npc-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%;margin-top:6px}.hub-npc-card{border:1px solid rgba(180,140,255,.22);border-radius:10px;padding:14px 12px;background:#ffffff08;color:#fff;font-size:13px;cursor:pointer;text-align:center;display:flex;flex-direction:column;gap:6px;min-height:80px;justify-content:center;transition:background .12s,border-color .12s}.hub-npc-card.nav-focused{background:#b48cff29;border-color:#b48cffa6;box-shadow:0 0 12px #b48cff2e}.hub-npc-card.locked{opacity:.45;cursor:not-allowed}.hub-npc-label{font-weight:700;letter-spacing:1px;color:#d4b4ff}.hub-npc-locked{font-size:11px;color:#ffc8c899;font-style:italic}.menu-btn{color:#fff;font-size:clamp(40px,5vw,64px);line-height:1.1;letter-spacing:4px;text-transform:uppercase}.menu-btn--primary{color:#ffc832}.location-prompt{position:fixed;z-index:900;display:flex;flex-direction:column;align-items:stretch;gap:4px;padding:4px 8px;border-radius:6px;background:#000000a6;color:#fff;font-size:12px;font-weight:700;letter-spacing:.3px;pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.7);box-shadow:0 2px 6px #00000080}.location-prompt-row{display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.location-prompt-label{line-height:1;font-size:16px}.location-prompt-preview{margin:4px 0 0;padding:4px 0 0;list-style:none;border-top:1px solid rgba(255,255,255,.18);font-size:11px;font-weight:500;letter-spacing:.2px;min-width:160px}.location-prompt-preview-entry{display:flex;justify-content:space-between;gap:12px;padding:1px 0;white-space:nowrap}.location-prompt-preview-item{color:#ddd}.location-prompt-preview-chance{color:#ffd47a;font-variant-numeric:tabular-nums}.dungeon-book-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:#000}.dungeon-book-stage{position:relative;transform-origin:center;background-image:url(/sprites/ui/dungeons.png);background-size:100% 100%;background-repeat:no-repeat;image-rendering:pixelated}.dungeon-book-list{position:absolute;display:flex;flex-direction:row;gap:22px;align-items:flex-start;padding-left:25px}.dungeon-book-column{flex:1;display:flex;flex-direction:column;gap:6px;min-width:0}.dungeon-book-entry{padding:3px 4px}.dungeon-book-entry .dungeon-book-entry-name{color:#5a3a1e;font-size:18px;font-weight:700;letter-spacing:.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dungeon-book-entry .dungeon-book-entry-stars{color:#5a3a1e;font-size:15px;letter-spacing:2px;opacity:.85}.dungeon-book-entry.nav-focused:before{background-image:url(/sprites/ui/selection-triangle-brown.svg)}.dungeon-book-arrow{position:absolute;width:64px;height:64px;transform:translateY(-100%);pointer-events:none}.dungeon-book-arrow img{display:block;width:100%;height:100%;animation:dungeon-book-arrow-bob .9s ease-in-out infinite}@keyframes dungeon-book-arrow-bob{0%,to{transform:translate(0)}50%{transform:translate(4px,-4px)}}.dungeon-book-warning{position:absolute;bottom:5%;text-align:center;color:#8a3520;font-size:13px;font-style:italic}.dungeon-book-hint{position:absolute;bottom:-28px;left:0;right:0;text-align:center;align-items:center;gap:6px;font-size:var(--font-regular);color:#fff6}.buff-list{width:var(--hud-width);display:flex;flex-wrap:wrap-reverse;justify-content:flex-end;gap:var(--buff-gap)}.buff-list .buff-list-item{position:relative;box-sizing:border-box;width:calc((var(--hud-width) - (var(--buff-per-row) - 1) * var(--buff-gap)) / var(--buff-per-row));aspect-ratio:1/1;padding:3px;border-radius:7px;box-shadow:0 2px 6px #0006}.buff-list .buff-list-item--timed{background:conic-gradient(#ffffffe6 calc(var(--remaining) * 360deg),#ffffff26 calc(var(--remaining) * 360deg))}.buff-list .buff-list-item--static{background:#ffffff4d}.buff-list .buff-list-icon{width:100%;height:100%;border-radius:4px;overflow:hidden;background:#0009}.buff-list .buff-list-stacks{position:absolute;right:-3px;bottom:-3px;min-width:16px;height:16px;padding:0 3px;border-radius:8px;background:#000000d9;border:1px solid rgba(255,255,255,.4);color:#fff;font-size:11px;font-weight:700;line-height:16px;text-align:center}.player-vitals{width:100%;display:flex;flex-direction:column;gap:8px}.player-vitals .player-vitals-track{position:relative;height:22px;background:#00000080;border:1px solid rgba(255,255,255,.2);border-radius:4px;overflow:hidden}.player-vitals .player-vitals-fill{height:100%;transition:width .2s ease,background-color .2s ease;box-shadow:inset 0 1px 2px #fff3}.player-vitals .player-vitals-fill--shield{background-color:#5ab3ff}.player-vitals .player-vitals-fill--xp{background-color:#c8a2ff}.player-vitals .player-vitals-value{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:700;letter-spacing:.5px;text-shadow:0 1px 2px rgba(0,0,0,.9)}.icon-with-key{position:relative;padding:2px;border-radius:6px;border:2px solid rgba(255,255,255,.25);background:#0000008c;box-shadow:0 4px 12px #0006;display:flex;align-items:center;justify-content:center;overflow:hidden;pointer-events:none}.icon-with-key--basic{border-color:#ffc8328c;box-shadow:0 0 8px #ffc8322e,0 4px 12px #0006}.icon-with-key--empty{opacity:.35;border-color:#ffffff1f;background:#0000004d;box-shadow:none}.icon-with-key-cooldown{position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:4px;pointer-events:none;background:conic-gradient(rgba(0,0,0,.65) 0%,rgba(0,0,0,.65) var(--cd-pct, 0%),transparent var(--cd-pct, 0%),transparent 100%)}.icon-with-key-bump{display:flex;align-items:center;justify-content:center;transform-origin:center center}.icon-with-key-bump[data-bumped="1"]{animation:icon-with-key-bump-anim .2s ease-out}@keyframes icon-with-key-bump-anim{0%{transform:scale(1)}35%{transform:scale(1.22)}to{transform:scale(1)}}.icon-with-key-key{position:absolute;right:-2px;bottom:-2px;z-index:2}.spell-bar{width:100%;display:flex;justify-content:flex-end;gap:6px;pointer-events:none}.spell-bar-divider{align-self:stretch;width:2px;margin:4px;border-radius:1px;background:linear-gradient(to bottom,transparent,rgba(255,255,255,.35),transparent)}.player-cluster{--hud-pad: 14px;--hud-width: 370px;--buff-per-row: 7;--buff-gap: 8px;position:fixed;right:20px;bottom:20px;z-index:1000;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}.player-cluster .player-panel{box-sizing:border-box;width:var(--hud-width);padding:var(--hud-pad);background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:8px;box-shadow:0 4px 12px #0006;display:flex;flex-direction:column;gap:12px}.minimap{border:3px solid #8a5a2b;outline:1px solid #5a3a1a;border-radius:4px;background:#241c10;overflow:hidden;pointer-events:none}.minimap canvas{display:block}.floor-indicator{padding:4px 10px;border:2px solid rgba(255,255,255,.3);border-radius:4px;background:#000000a6;color:#fff;font-size:13px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;text-shadow:0 1px 2px rgba(0,0,0,.9);pointer-events:none}.interface-shortcuts{display:flex;flex-direction:row;justify-content:flex-end;gap:10px;pointer-events:none}.top-right-hud{position:fixed;top:10px;right:10px;z-index:100;display:flex;flex-direction:column;align-items:flex-end;gap:10px;pointer-events:none}.floor-transition{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#06080c;display:flex;align-items:center;justify-content:center;pointer-events:auto;-webkit-user-select:none;user-select:none;overflow:hidden;animation:floor-transition-fade 2.8s ease-in-out forwards}.floor-transition.is-enter{animation-name:floor-transition-fade-enter}@keyframes floor-transition-fade{0%{opacity:0}14.3%{opacity:1}85.7%{opacity:1}to{opacity:0}}@keyframes floor-transition-fade-enter{0%{opacity:1}85.7%{opacity:1}to{opacity:0}}.floor-transition-bg{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat}.floor-transition-content{position:relative;text-align:center;color:#fff;letter-spacing:.08em;animation:floor-transition-text 2s ease-in-out forwards;-webkit-text-stroke:1px #000;paint-order:stroke fill}@keyframes floor-transition-text{0%{opacity:0;transform:translateY(8px)}17%{opacity:1;transform:translateY(0)}83%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-8px)}}.floor-transition-floor{font-size:14px;text-transform:uppercase;opacity:.6;margin-bottom:12px;letter-spacing:.4em}.floor-transition-dungeon{font-size:38px;font-weight:700;-webkit-text-stroke:2px #000;paint-order:stroke fill;text-shadow:0 0 12px rgba(255,255,255,.18),0 2px 6px rgba(0,0,0,.6)}.level-up-feed{position:fixed;left:20px;bottom:20px;z-index:1000;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none}.level-up-toast{min-width:150px;padding:8px 12px;background:#0009;border:1px solid rgba(255,255,255,.2);border-left:3px solid #4caf50;border-radius:8px;box-shadow:0 4px 12px #0006;color:#fff;font-size:var(--font-regular);animation:level-up-toast-in .25s ease-out}.level-up-toast--exiting{animation:level-up-toast-out .25s ease-in forwards}.level-up-toast-title{font-weight:700;margin-bottom:4px}.level-up-toast-stats{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.level-up-toast-delta{color:#4caf50;font-weight:700}@keyframes level-up-toast-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes level-up-toast-out{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-12px)}}.gallery-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4500;background:#06080cf7;display:flex;flex-direction:column;color:#fff;font-family:system-ui,sans-serif}.gallery-toolbar{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#00000080;border-bottom:1px solid rgba(255,255,255,.15);flex-wrap:wrap}.gallery-spacer{flex:1}.gallery-meta{font-size:12px;opacity:.75;margin-left:8px}.gallery-btn{background:#1d2330;color:#cfe6ff;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:5px 10px;font-size:12px;cursor:pointer}.gallery-btn:hover{background:#28303f}.gallery-btn--active{background:#3a6a8a;color:#fff}.gallery-btn--close{background:#5a2330}.gallery-select{background:#1d2330;color:#cfe6ff;border:1px solid rgba(255,255,255,.2);border-radius:4px;padding:5px 8px;font-size:12px}.gallery-grid{display:grid;gap:14px;padding:16px;overflow:auto;justify-content:center;align-content:start}.gallery-cell{display:flex;flex-direction:column;align-items:center;gap:4px}.gallery-thumb-canvas{image-rendering:pixelated;border:1px solid rgba(255,255,255,.2);background:#000}.gallery-caption{font-family:Consolas,Menlo,monospace;font-size:10px;opacity:.8;text-align:center;max-width:260px}.unknown-iface-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2500;display:flex;align-items:center;justify-content:center;background:#000000d9}.unknown-iface-panel{background:#140c0cfa;border:2px solid rgba(255,100,100,.4);border-radius:10px;padding:22px 26px;width:min(420px,95vw);display:flex;flex-direction:column;gap:12px;text-align:center}.unknown-iface-title{margin:0;color:#f88;font-size:18px;font-weight:700;letter-spacing:1px;text-transform:uppercase}.unknown-iface-message{margin:0;color:#ffffffbf;font-size:13px}.unknown-iface-id{display:inline-block;padding:4px 10px;background:#00000080;border:1px solid rgba(255,100,100,.3);border-radius:4px;color:#ffb0b0;font-family:monospace;font-size:13px}.unknown-iface-btn{margin-top:8px;padding:10px 24px;border-radius:6px;border:1px solid rgba(255,255,255,.2);background:#ffffff0f;color:#fff;font-size:13px;cursor:pointer;align-self:center}.unknown-iface-btn.nav-focused{background:#ff64641f;border-color:#ff646480}.fade-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100000;background:#000;opacity:0;pointer-events:none;transition:opacity .4s ease-in-out}.fade-overlay.active{opacity:1}.dialogue-overlay{position:fixed;left:0;right:0;bottom:24px;display:flex;justify-content:center;pointer-events:none;z-index:5000}.dialogue-frame{width:min(720px,92vw);pointer-events:auto}.dialogue-body{position:relative;display:flex;align-items:center;gap:12px;padding:14px 16px 26px;min-height:84px}.dialogue-name{position:absolute;top:-4px;left:46px;font-size:var(--font-h3);color:var(--color-accent, #ffd98a);background:var(--color-panel, #1a1530);padding:0 10px;border-radius:4px;border:1px solid white}.dialogue-portrait{flex:0 0 auto;margin-top:15px;aspect-ratio:1/1;margin-left:10px}.dialogue-text{flex:1;font-size:var(--font-regular);line-height:1.5;color:#fff;min-width:90%;max-width:90%;margin:14px auto 0;height:48px}.dialogue-text.nav-focused:before{content:none}.dialogue-hint{position:absolute;right:24px;bottom:18px;font-size:var(--font-regular);color:#fff;opacity:.7;display:flex;align-items:center;gap:4px}.showcase-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#05040799;-webkit-backdrop-filter:brightness(.15);backdrop-filter:brightness(.15);display:flex;align-items:center;justify-content:center;z-index:100100}.showcase-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:18px}.showcase-content.nav-focused:before{content:none}.showcase-glow{position:absolute;top:40%;left:50%;width:240px;height:240px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(111,95,176,.3333333333) 0%,transparent 65%)}.showcase-item{z-index:1;animation:showcase-pop .6s cubic-bezier(.2,1.2,.3,1) both}@keyframes showcase-pop{0%{transform:scale(.2) rotate(-25deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.showcase-name{z-index:1;font-size:var(--font-h1);color:#fff;text-shadow:0 0 12px rgba(111,95,176,.6666666667)}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#0c0c16;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px}.loading-text{font-size:var(--font-h3);letter-spacing:1px;color:#ffffffbf}.loading-prompt{font-size:var(--font-h3);letter-spacing:2px;color:#ffffffd9;animation:loading-pulse 1.3s ease-in-out infinite}.loading-spinner{width:44px;height:44px;border:4px solid rgba(255,255,255,.15);border-top-color:#fffc;border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-pulse{0%,to{opacity:.45}50%{opacity:1}}.input-preset-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:6000;display:flex;align-items:center;justify-content:center;background:#000000bf;color:#fff;font-family:inherit;font-size:var(--font-regular)}.input-preset-frame{display:flex;flex-direction:column;align-items:center;gap:24px;padding:40px 48px;min-width:420px}.input-preset-title{margin:0;font-size:var(--font-h1);letter-spacing:4px;text-transform:uppercase;text-align:center}.input-preset-list{display:flex;flex-direction:column;gap:12px;width:100%}.input-preset-card{display:flex;flex-direction:column;gap:4px;padding:14px 20px 14px 28px;border:2px solid transparent;border-radius:4px;background:#ffffff0d}.input-preset-card.nav-focused{border-color:#fff;background:#ffffff1f}.input-preset-card-label{font-size:var(--font-h3);color:#fff}.input-preset-card-desc{font-size:var(--font-regular);color:#ffffff8c}.input-preset-hint{display:flex;align-items:center;gap:8px;color:#ffffff8c;font-size:var(--font-regular)}.App,#root{width:100%;height:100%}body{margin:0;width:100vw;height:100vh;overflow:hidden}.DOMContainer{color:#fff;width:100%;height:100%;background-color:transparent;position:fixed;left:0;top:0}.DOMContainer .MainMenu{width:100%;height:100%;z-index:10}:root{--font-h1: 48px;--font-h3: 24px;--font-regular: 16px}[data-nav-id]{text-align:left;position:relative}.nav-focused:before{content:"";position:absolute;right:100%;top:50%;transform:translateY(-50%);width:.7em;height:.7em;background-image:url(/sprites/ui/selection-triangle.svg);background-size:contain;background-repeat:no-repeat;background-position:center;image-rendering:pixelated;pointer-events:none}
