:root{--fatigue-color:#e58a2b;color:#eee;font-synthesis:none;background:#17181b;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}html,body,#app,main{width:100%;height:100%;margin:0;overflow:hidden}canvas{display:block}#crosshair{z-index:9;pointer-events:none;background:#ffffffeb;border-radius:50%;width:5px;height:5px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #000000b8,0 0 4px #0000008c}#pickupPrompt{z-index:11;color:#fff;text-shadow:0 1px 2px #000;pointer-events:none;background:#08090bad;border-radius:4px;padding:4px 8px;font-size:12px;line-height:1.2;display:none;position:fixed;top:calc(50% + 24px);left:50%;transform:translate(-50%)}#playerVitals{z-index:10;color:#fff;text-align:center;pointer-events:none;width:min(320px,100vw - 40px);position:fixed;bottom:104px;left:50%;transform:translate(-50%)}#inventoryHotbar{z-index:10;pointer-events:auto;gap:7px;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}#inventoryPanel{z-index:30;pointer-events:auto;background:#0405078f;place-items:center;display:grid;position:fixed;inset:0}#inventoryPanel.inventory-panel-hidden{display:none}.inventoryWindow{box-sizing:border-box;color:#e9edf2;background:#121418f7;border:1px solid #ffffff30;border-radius:10px;width:min(590px,100vw - 24px);max-height:calc(100dvh - 24px);padding:14px;overflow-y:auto;box-shadow:0 18px 60px #000000a6}.inventoryWindow header{justify-content:space-between;align-items:baseline;display:flex}.inventoryWindow h2,.inventoryWindow h3{margin:0}.inventoryWindow h2{font-size:20px}.inventoryWindow h3{color:#ffffffa6;text-transform:uppercase;letter-spacing:.1em;margin-bottom:9px;font-size:11px}.inventoryWindow header span{color:#ffffff73;font-size:10px}.inventoryLayout{grid-template-columns:minmax(150px,1fr) minmax(170px,1fr);gap:16px;margin-top:12px;display:grid}.equipmentSection{background:#251f167a;border:1px solid #d6b3673d;border-radius:8px;padding:9px}.equipmentGrid{grid-template-columns:64px;justify-content:center;gap:5px;display:grid}.equipmentPaneSlot:first-child{order:2}.equipmentPaneSlot:nth-child(2){order:3}.equipmentPaneSlot:nth-child(3){order:1}.equipmentPaneSlot:nth-child(4){order:4}.equipmentPaneSlot:nth-child(5){order:5}.storageSection{margin-top:12px}.storageHeader{justify-content:space-between;align-items:baseline;display:flex}.storageHeader h3{margin-bottom:9px}#equipmentLoad{color:#fff;text-align:right;text-shadow:0 1px 2px #000;margin-bottom:9px;font-size:10px;font-weight:700;transition:color .12s}#equipmentLoad.load-warning{color:#efc84b}#equipmentLoad.load-overweight{color:#ed5656}.storageGrid{grid-template-columns:repeat(6,minmax(0,72px));justify-content:center;gap:6px;display:grid}.paneSlot{aspect-ratio:1;color:#ffffffd1;min-width:0;height:auto;font:inherit;cursor:pointer;background:#07090cd6;border:1px solid #ffffff38;border-radius:6px;padding:17px 5px 5px;position:relative;overflow:hidden}.paneSlot:hover,.paneSlot:focus-visible{border-color:#ffffff94;outline:none}.paneSlot.invalid-target{background:#4b1414b3;border-color:#c84d4d}.paneSlot.equipped-right{box-shadow:inset 0 0 0 2px #e8d45e}.paneSlot.equipped-left{box-shadow:inset 0 0 0 2px #61b9ed}.equipmentPaneSlot{background:linear-gradient(145deg,#2b261df2,#111215f2);border:2px solid #d5b56f57}.equipmentPaneSlot:hover,.equipmentPaneSlot:focus-visible{border-color:#eece85bf}.equipmentPaneSlot .paneSlotLabel{color:#d7b972;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.equipmentPaneSlot .paneSlotItem{color:#fff4d8}.storagePaneSlot{background:#07090cd6;border-style:inset}.paneSlotLabel{color:#ffffff61;font-size:9px;position:absolute;top:4px;left:6px}.paneSlotItem{display:none}.itemIcon{object-fit:contain;object-position:center;pointer-events:none;width:calc(100% - 8px);height:calc(100% - 8px);display:none;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.itemIcon.has-icon{display:block}.paneSlot .itemIcon{width:calc(100% - 10px);height:calc(100% - 20px)}.characterStat{width:100%;color:inherit;font:inherit;background:#06080a94;border:1px solid #ffffff1f;border-radius:5px;justify-content:space-between;margin-bottom:7px;padding:9px 10px;font-size:11px;display:flex}.characterStat:hover,.characterStat:focus{border-color:#ffffff61;outline:none}#inventoryCursor{z-index:42;color:#fff;pointer-events:none;background:#191b1ff0;border:1px solid #e8d45e;border-radius:4px;max-width:120px;padding:5px 7px;font-size:10px;display:none;position:fixed;transform:translate(12px,12px)}#inventoryTooltip{z-index:41;box-sizing:border-box;color:#e9edf2;pointer-events:none;background:#080a0df7;border:1px solid #ffffff3b;border-radius:6px;width:min(430px,100vw - 16px);padding:10px 11px;font-size:10px;line-height:1.45;display:none;position:fixed;box-shadow:0 8px 24px #0000008c}#inventoryTooltip strong{color:#fff;margin-bottom:3px;font-size:12px;display:block}#inventoryTooltip .tooltipHeader{align-items:center;gap:9px;display:flex}#inventoryTooltip .tooltipIcon{object-fit:contain;width:58px;height:58px}#inventoryTooltip .tooltipType{color:#e8d45e;text-transform:uppercase;letter-spacing:.07em}#inventoryTooltip .tooltipDescription{color:#ffffffab;margin:6px 0}#inventoryTooltip .tooltipStats{color:#b9c7d8;white-space:pre-line}#inventoryTooltip .tooltipColumns{grid-template-columns:minmax(0,1fr) max-content;gap:14px;margin-top:5px;display:grid}#inventoryTooltip .tooltipPrimary{min-width:0}#inventoryTooltip .tooltipAttenuation{color:#b9c7d8;align-self:start}#inventoryTooltip .tooltipSectionTitle{color:#ffffffb8;text-transform:uppercase;letter-spacing:.05em;margin:6px 0 4px;font-size:9px;display:block}#inventoryTooltip .damageAttenuationRow{grid-template-columns:14px max-content 4ch;align-items:center;column-gap:4px;min-height:18px;display:grid}#inventoryTooltip .damageTypeIcon,#inventoryTooltip .damageTypeIcon svg{width:14px;height:14px;display:block}#inventoryTooltip .damageTypeLabel{color:#d1d9e3}#inventoryTooltip .damageValue{color:#fff;text-align:right;font-variant-numeric:tabular-nums}#inventoryTooltip .damage-fire .damageTypeIcon{color:#ff6846}#inventoryTooltip .damage-frost .damageTypeIcon{color:#8edcff}#inventoryTooltip .damage-shock .damageTypeIcon{color:#ffd83d}#inventoryTooltip .damage-light .damageTypeIcon{color:#fff7d6}#inventoryTooltip .damage-esoteric .damageTypeIcon{color:#b52a8f}#inventoryTooltip .damage-fatigue .damageTypeIcon{color:var(--fatigue-color)}@media (width<=410px){#inventoryTooltip .tooltipColumns{grid-template-columns:1fr}}#combatLabPanel{z-index:13;color:#e9edf2;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#0d0f12f0;border:1px solid #ffffff29;border-radius:8px;width:220px;position:fixed;top:48px;right:10px;box-shadow:0 8px 26px #0000007a}#combatLabPanel.collapsed{background:#0d0f12bf;width:auto}.labCollapse{color:#fff;text-align:left;cursor:pointer;background:0 0;border:0;width:100%;padding:8px 10px;font-family:inherit;font-size:11px;font-weight:700;line-height:1.2}.labBody{max-height:calc(100dvh - 68px);padding:0 10px 10px;overflow-y:auto}.labBody>button{width:100%;margin-top:6px}.labBody section{border-top:1px solid #ffffff1f;margin-top:10px;padding-top:9px}.labBody h3{color:#ffffffb8;text-transform:uppercase;letter-spacing:.08em;margin:0 0 7px;font-size:10px}.labBody button,.labBody select{box-sizing:border-box;color:#e9edf2;cursor:pointer;background:#262a30e6;border:1px solid #ffffff2b;border-radius:4px;padding:6px 7px;font-family:inherit;font-size:10px;line-height:1.2}.labBody button:hover,.labBody select:hover{background:#333840f2;border-color:#ffffff6b}.labBody .labDanger{color:#ffb7b7;border-color:#d8505061}.labSpawnButtons{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.labBody label{color:#ffffff85;margin-top:7px;font-size:9px;display:block}.labBody .labEnvironment{margin-top:0}.labBody .labRangeLabel{justify-content:space-between;align-items:baseline;display:flex}.labRangeLabel output{color:#e9edf2;font-variant-numeric:tabular-nums}.labBody input[type=range]{accent-color:#d8b66a;cursor:pointer;width:100%;margin:7px 0 2px}.labBody select{width:100%;margin-top:4px;display:block}.labEquipmentGrid{grid-template-columns:1fr 1fr;gap:0 7px;display:grid}.labEquipmentGrid label.labDisabled{opacity:.38}.labEquipmentGrid select:disabled{cursor:not-allowed}.labBody .labSubtle{color:#ffffffad;background:#191c21e0;width:100%;margin-top:5px}.inventorySlot{box-sizing:border-box;color:#ffffffc7;background:#0d0f12d1;border:2px solid #ffffff3d;border-radius:7px;place-items:center;width:62px;height:62px;display:grid;position:relative;overflow:hidden;box-shadow:0 3px 10px #0000006b}.inventorySlot.equipped-right{border:4px solid #e8d45e}.inventorySlot.equipped-left{box-shadow:inset 0 0 0 3px #61b9ed,0 3px 10px #0000006b}.inventorySlot.disabled-left{color:#ffffff4d;filter:grayscale();background:#121316f0}.slotKey{opacity:.62;font-size:10px;position:absolute;top:3px;left:5px}.slotName{display:none}#healthBar{background:#0f1013d1;border:1px solid #ffffff47;border-radius:3px;height:12px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000073}#healthFill{z-index:2;transform-origin:0;background:#bd3434;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(1)}#healthText{text-shadow:0 1px 3px #000;margin-top:4px;font-size:12px;line-height:1;display:block}#fatigueBar{background:#0f1013d1;border:1px solid #ffffff47;border-radius:3px;height:9px;margin-top:5px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000073}#fatigueFill{z-index:2;background:var(--fatigue-color);transform-origin:0;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(1)}.vitalPhantom{z-index:1;transform-origin:0;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(1)}#healthPhantom{background:#722929}#fatiguePhantom{background:#8c571f}#fatigueText{color:#ffc078;text-shadow:0 1px 3px #000;margin-top:3px;font-size:11px;line-height:1;display:block}#manaBar{background:#0f1013d1;border:1px solid #ffffff47;border-radius:3px;height:9px;margin-top:5px;position:relative;overflow:hidden;box-shadow:0 2px 8px #00000073}#manaFill{z-index:2;transform-origin:0;background:#477bd6;width:100%;height:100%;position:absolute;inset:0;transform:scaleX(1)}#manaPhantom{background:#2b477e}#manaText{color:#8fb7ff;text-shadow:0 1px 3px #000;margin-top:3px;font-size:11px;line-height:1;display:block}#topReadout{z-index:10;color:#dce0e6ad;text-align:center;text-overflow:ellipsis;text-shadow:0 1px 2px #000000e0;white-space:nowrap;pointer-events:none;width:calc(100vw - 96px);font-size:11px;line-height:1.25;position:fixed;top:3px;left:50%;overflow:hidden;transform:translate(-50%)}#topReadout span{display:inline}#status:after{content:"  |  "}#helpButton{z-index:12;color:#ffffffd1;cursor:pointer;background:#0e0f129e;border:1px solid #ffffff38;border-radius:50%;width:28px;height:28px;padding:0;font:600 15px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:fixed;top:8px;left:10px}#helpButton:hover,#helpClose:hover{background:#ffffff24}#helpPanel{z-index:14;box-sizing:border-box;color:#e8e8e8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0e0f12f0;border:1px solid #ffffff29;border-radius:9px;width:min(390px,100vw - 40px);padding:16px 18px 17px;position:fixed;top:46px;left:10px;box-shadow:0 8px 28px #00000073}#helpPanel h2{margin:0 0 12px;font-size:16px}#helpPanel dl{grid-template-columns:max-content 1fr;gap:7px 16px;margin:0;font-size:12px;line-height:1.35;display:grid}#helpPanel dt{color:#fff;font-weight:700}#helpPanel dd{color:#ffffffb8;margin:0}#helpClose{color:#ffffffc7;cursor:pointer;background:0 0;border:0;border-radius:5px;width:27px;height:27px;padding:0;font:20px/1 sans-serif;position:absolute;top:7px;right:8px}#error{z-index:20;color:#ffd4d4;white-space:pre-wrap;background:#351919;border:1px solid #8d3c3c;padding:16px;font-size:13px;line-height:1.5;display:none;position:fixed;inset:16px;overflow:auto}#demoVersion{z-index:10;color:#ffffff85;letter-spacing:.02em;text-shadow:0 1px 3px #000000e6;pointer-events:none;-webkit-user-select:none;user-select:none;font:10px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:fixed;bottom:8px;left:10px}@media (width<=720px){#topReadout{width:calc(100vw - 80px);font-size:9px}.inventoryLayout{grid-template-columns:1fr;gap:14px}.equipmentGrid{grid-template-columns:repeat(5,minmax(48px,64px))}.storageGrid{grid-template-columns:repeat(3,minmax(48px,72px))}}
