*{margin:0;padding:0;box-sizing:border-box}html,body{overflow:hidden;background:#000;font-family:Rajdhani,sans-serif}#hud{position:fixed;inset:0;pointer-events:none;display:grid;grid-template-rows:auto 1fr auto;padding:16px;color:#e8e4d9;z-index:5}#topRow{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}.panel{background:linear-gradient(135deg,#140f19d9,#0a080fe6);border:1px solid rgba(180,160,120,.3);border-radius:4px;padding:10px 14px;box-shadow:0 4px 20px #00000080,inset 0 1px #ffffff0d;position:relative;overflow:hidden}.panel:before{content:"";position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,215,100,.3),transparent)}.stat-label{font-size:11px;text-transform:uppercase;letter-spacing:2px;color:#b4a078cc;font-weight:600}.bar-outer{width:100%;height:14px;border-radius:2px;border:1px solid rgba(180,160,120,.4);background:#00000080;overflow:hidden;margin-top:4px;position:relative}#healthBarInner{width:100%;height:100%;background:linear-gradient(180deg,#f55,#a22);transform-origin:left center;transition:transform .15s ease-out;box-shadow:0 0 10px #ff646466}#healthBarInner.low{background:linear-gradient(180deg,#f33,#800);box-shadow:0 0 15px #ff323299;animation:pulse-health .5s ease-in-out infinite}@keyframes pulse-health{0%,to{opacity:1}50%{opacity:.7}}#itemTip{--tier: #9E9E9E;position:fixed;z-index:6;display:none;transform:translate(-50%,-100%);min-width:170px;max-width:300px;padding:9px 13px 10px;pointer-events:none;color:#e8e4d9;background:linear-gradient(135deg,#140f19eb,#0a080ff0);border:1px solid rgba(180,160,120,.3);border-top:2px solid var(--tier);border-radius:4px;box-shadow:0 4px 20px #0009,0 0 18px color-mix(in srgb,var(--tier) 28%,transparent)}#itemTip:after{content:"";position:absolute;left:50%;bottom:-6px;width:10px;height:10px;transform:translate(-50%) rotate(45deg);background:#0a080ff0;border-right:1px solid rgba(180,160,120,.3);border-bottom:1px solid rgba(180,160,120,.3)}#itemTipHead{display:flex;align-items:baseline;gap:10px;justify-content:space-between}#itemTipName{font-family:Cinzel,serif;font-size:15px;font-weight:700;letter-spacing:.5px;color:var(--tier);text-shadow:0 0 10px color-mix(in srgb,var(--tier) 45%,transparent)}#itemTipTier{font-size:10px;font-weight:700;letter-spacing:1.5px;padding:1px 6px;border-radius:2px;color:#0d0a12;background:var(--tier);white-space:nowrap}#itemTipLines{margin-top:5px}.tip-line{font-size:13px;line-height:1.45;font-weight:600}.tip-line.good{color:#6ee79a}.tip-line.bad{color:#ff6b6b}.tip-line.warn{color:#ffb84d}.tip-line.neutral{color:#e1dccdb8;font-weight:400}#itemTip.damned{border:1px dashed var(--tier);border-top:2px solid var(--tier);animation:damnedPulse 2.4s ease-in-out infinite}@keyframes damnedPulse{0%,to{box-shadow:0 4px 20px #0009,0 0 14px color-mix(in srgb,var(--tier) 25%,transparent)}50%{box-shadow:0 4px 20px #0009,0 0 26px color-mix(in srgb,var(--tier) 55%,transparent)}}.relic-mark{font-weight:700;letter-spacing:.3px;text-shadow:0 0 8px currentColor;cursor:help}#manaPanel{min-width:180px}#manaPanel.no-mana{border-color:#ff4040;animation:manaDenied .45s ease-out}@keyframes manaDenied{0%,to{box-shadow:0 4px 20px #00000080;transform:translate(0)}20%{box-shadow:0 0 22px #ff4040cc;transform:translate(-3px)}45%{transform:translate(3px)}70%{transform:translate(-2px)}}#manaBarInner{width:100%;height:100%;background:linear-gradient(180deg,#7f9fef,#3a4a8f);transform-origin:left center;transition:transform .15s ease-out;box-shadow:0 0 10px #6496ff66}#marksPanel.gain #marksCount{animation:marksPop .5s ease-out}@keyframes marksPop{0%{transform:scale(1.35);color:#f4d98c}to{transform:scale(1)}}.stat-value{font-size:22px;font-weight:700;font-family:Cinzel,serif;color:#f0e8d0;text-shadow:0 0 10px rgba(255,200,100,.3)}#spellBar{display:flex;gap:8px;margin-top:8px}.spell-slot{width:48px;height:48px;background:#0009;border:2px solid rgba(180,160,120,.3);border-radius:4px;display:flex;align-items:center;justify-content:center;position:relative;transition:all .15s}.spell-slot.active{border-color:gold;box-shadow:0 0 15px #ffd70080,inset 0 0 10px #ffd70033}.spell-slot .key{position:absolute;bottom:2px;right:4px;font-size:10px;color:#ffffff80}.spell-icon{font-size:24px}#bottomRow{display:flex;justify-content:space-between;align-items:flex-end;gap:16px}#msgPanel{max-width:600px}#msgLine{font-size:14px;color:#fffc}#minimap{width:150px;height:150px;background:#000000b3;border:1px solid rgba(180,160,120,.4);border-radius:4px;position:relative;overflow:hidden}#minimapCanvas{width:100%;height:100%}#crosshair{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);z-index:6;pointer-events:none}.crosshair-dot{width:4px;height:4px;background:#ffffffe6;border-radius:50%;box-shadow:0 0 6px #ffffff80}.crosshair-line{position:absolute;background:#fff9}.crosshair-line.top{width:2px;height:8px;left:1px;top:-12px}.crosshair-line.bottom{width:2px;height:8px;left:1px;bottom:-12px}.crosshair-line.left{width:8px;height:2px;top:1px;left:-12px}.crosshair-line.right{width:8px;height:2px;top:1px;right:-12px}#kneesOverlay{position:fixed;inset:0;z-index:9;pointer-events:none;display:none;backdrop-filter:grayscale(1) brightness(.72) contrast(1.1);-webkit-backdrop-filter:grayscale(1) brightness(.72) contrast(1.1);box-shadow:inset 0 0 160px 40px #000000bf;text-align:center}#kneesOverlay.on{display:block}.kn-title{margin-top:26vh;font-family:Cinzel,serif;font-weight:700;font-size:34px;letter-spacing:8px;color:#d8d8d8;text-shadow:2px 2px 0 #000}.kn-sub{margin-top:6px;font-size:13px;letter-spacing:4px;text-transform:uppercase;color:#bdbdbd;text-shadow:2px 2px 0 #000}.kn-bar{width:260px;height:6px;margin:14px auto 0;background:#0009;border:1px solid #888}.kn-bar i{display:block;height:100%;background:#e8e8e8;transform-origin:left}#damageOverlay{position:fixed;inset:0;pointer-events:none;z-index:4;opacity:0;background:radial-gradient(ellipse at center,transparent 40%,rgba(180,0,0,.6) 100%);transition:opacity .1s}#damageOverlay.flash{opacity:1}#fallenOverlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;pointer-events:none;z-index:40;background:radial-gradient(circle at center,#2800008c,#000000eb);animation:fadeIn .8s ease-out}#fallenCard{text-align:center;color:#fff}#fallenCard h1{font-family:Cinzel,serif;font-size:56px;color:#aa2020;text-shadow:0 0 50px rgba(180,0,0,.8),0 4px 8px rgba(0,0,0,.5);letter-spacing:6px;margin-bottom:14px}#fallenCard p{font-family:Cinzel,serif;font-size:18px;color:#ffdcc8b3;letter-spacing:2px}#gameOverOverlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:50;background:radial-gradient(circle at center,#3c0000e6,#000000fa);animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}#gameOverCard{text-align:center;color:#fff;padding:60px}#gameOverCard h1{font-family:Cinzel,serif;font-size:72px;color:#aa2020;text-shadow:0 0 60px rgba(180,0,0,.8),0 4px 8px rgba(0,0,0,.5);margin-bottom:10px;letter-spacing:8px;animation:deathPulse 2s ease-in-out infinite}@keyframes deathPulse{0%,to{text-shadow:0 0 60px rgba(180,0,0,.8),0 4px 8px rgba(0,0,0,.5)}50%{text-shadow:0 0 80px rgba(200,0,0,1),0 4px 8px rgba(0,0,0,.5)}}.go-subtitle{font-family:Cinzel,serif;font-size:18px;color:#ffc8c899;margin-bottom:40px;letter-spacing:2px}.go-stats{display:flex;justify-content:center;gap:60px;margin-bottom:40px}.go-stat{display:flex;flex-direction:column;align-items:center}.go-label{font-size:12px;text-transform:uppercase;letter-spacing:3px;color:#fff6;margin-bottom:8px}.go-value{font-family:Cinzel,serif;font-size:42px;color:#d4c4a8;text-shadow:0 0 20px rgba(200,180,140,.5)}.go-restart{font-size:14px;color:#ffffff80}kbd{background:#ffffff1a;border:1px solid rgba(255,255,255,.3);padding:4px 10px;border-radius:4px;font-family:Rajdhani,sans-serif}.damage-number{position:fixed;font-family:Cinzel,serif;font-weight:700;font-size:24px;color:#f44;text-shadow:0 0 10px rgba(255,0,0,.8),2px 2px 0 #000;pointer-events:none;z-index:10;animation:floatUp 1s ease-out forwards}.damage-number.heal{color:#4f4;text-shadow:0 0 10px rgba(0,255,0,.8),2px 2px 0 #000}.damage-number.magic{color:#4af;text-shadow:0 0 10px rgba(50,150,255,.8),2px 2px 0 #000}@keyframes floatUp{0%{transform:translateY(0) scale(1);opacity:1}to{transform:translateY(-60px) scale(.8);opacity:0}}#comboDisplay{position:fixed;right:20px;top:50%;transform:translateY(-50%);text-align:right;z-index:6;pointer-events:none;opacity:0;transition:opacity .2s}#comboDisplay.active{opacity:1}#comboCount{font-family:Cinzel,serif;font-size:48px;color:gold;text-shadow:0 0 20px rgba(255,215,0,.8),3px 3px 0 #000}#comboLabel{font-size:14px;text-transform:uppercase;letter-spacing:4px;color:#ffd700b3}#loadingScreen{position:fixed;inset:0;background:linear-gradient(135deg,#0a0a12,#15101f);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;transition:opacity .5s}#loadingScreen.hidden{opacity:0;pointer-events:none}#loadingTitle{font-family:Cinzel,serif;font-size:52px;color:#c9b896;text-shadow:0 0 30px rgba(200,180,140,.5),0 4px 8px rgba(0,0,0,.8);margin-bottom:10px;text-align:center;letter-spacing:3px}#loadingSubtitle{font-family:Cinzel,serif;font-size:18px;color:#c8b48c99;letter-spacing:6px;text-transform:uppercase;margin-bottom:40px}#loadingBar{width:300px;height:4px;background:#ffffff1a;border-radius:2px;overflow:hidden}#loadingProgress{height:100%;background:linear-gradient(90deg,#8b7355,#c9b896);width:0%;transition:width .3s}#loadingText{margin-top:16px;color:#ffffff80;font-size:14px}#titleScreen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;z-index:99;padding:5vh 24px 3.5vh;transition:opacity .8s}#titleScreen.plain{background:radial-gradient(ellipse at center bottom,#1a1028,#0a0a10,#050508)}#titleScreen.hidden{opacity:0;pointer-events:none}#titleShade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(to bottom,#04050ad1,#04050a66 22%,#04050a00 40%),linear-gradient(to top,#04050ad9,#04050a66 16%,#04050a00 34%),radial-gradient(ellipse at center,#0000 58%,#00000080)}#titleScreen.plain #titleShade{display:none}#titleScreen:not(.hidden)~#hud,#titleScreen:not(.hidden)~#crosshair,#titleScreen:not(.hidden)~#itemTip,#titleScreen:not(.hidden)~#comboDisplay,#titleScreen:not(.hidden)~#damageOverlay,#titleScreen:not(.hidden)~#guardOverlay,#titleScreen:not(.hidden)~#mapStage{visibility:hidden}#titleHeader{position:relative;text-align:center}#titleMain{font-family:Cinzel,serif;font-size:clamp(26px,min(4.9vw,9.5vh),64px);color:#d4c4a8;text-shadow:0 0 40px rgba(255,200,100,.4),0 0 80px rgba(255,150,50,.2),0 4px 8px rgba(0,0,0,.9);text-align:center;letter-spacing:4px;margin-bottom:10px;animation:titleGlow 3s ease-in-out infinite}@keyframes titleGlow{0%,to{text-shadow:0 0 40px rgba(255,200,100,.4),0 0 80px rgba(255,150,50,.2),0 4px 8px rgba(0,0,0,.9)}50%{text-shadow:0 0 60px rgba(255,200,100,.6),0 0 100px rgba(255,150,50,.3),0 4px 8px rgba(0,0,0,.9)}}#titleSub{font-family:Cinzel,serif;font-size:clamp(12px,1.5vw,20px);color:#d6c49eb3;letter-spacing:8px;text-transform:uppercase;text-shadow:0 2px 6px rgba(0,0,0,.9)}#moonPanel .stat-value{font-size:15px}#titleMenu{position:relative;margin-top:auto;display:flex;flex-direction:column;gap:12px;width:clamp(260px,38vw,440px)}.title-button{font-family:Rajdhani,sans-serif;color:#fffc;text-transform:uppercase;cursor:pointer;padding:14px 28px;border:1px solid rgba(200,180,140,.38);background:#0c0a1294;backdrop-filter:blur(3px);box-shadow:0 6px 24px #0000008c,inset 0 1px #ffffff0d;display:flex;flex-direction:column;align-items:center;gap:4px;transition:all .25s}.title-button.hidden{display:none}.title-button-main{font-size:19px;font-weight:600;letter-spacing:5px}.title-button-info{font-size:13px;letter-spacing:2px;line-height:1.5;white-space:pre-line;text-align:center;color:#d6c49ebf}.title-button:hover,.title-button:focus-visible{background:#3c301e9e;border-color:#e6cd96cc;color:#fff;box-shadow:0 6px 30px #ffbe6438,inset 0 1px #ffffff14;outline:none}.title-button.only{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.7}50%{opacity:1}}#titleLoading{position:relative;margin-top:1.6vh;font:600 13px/1.4 Rajdhani,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#ffbe6ed9;text-align:center;text-shadow:0 1px 4px rgba(0,0,0,.9)}#titleLoading.hidden{display:none}#titleControls{position:relative;margin-top:3vh;font-size:13px;color:#ffffff80;text-align:center;line-height:1.9;text-shadow:0 1px 4px rgba(0,0,0,.9)}#titleControls span{color:#d6c49ed9}#codexOverlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:41;background:#000000ad}.cx-panel{display:flex;flex-direction:column;width:min(880px,94vw);height:min(560px,88vh);padding:18px 22px 14px;color:#e8e4d9;background:linear-gradient(135deg,#18121cf7,#0a080ffa);border:1px solid rgba(180,160,120,.32);border-top:2px solid #b89a5a;border-radius:4px;box-shadow:0 10px 50px #000000bf}.cx-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.cx-title{font-family:Cinzel,serif;font-size:30px;letter-spacing:8px;color:#d4c4a8;text-shadow:0 0 24px rgba(255,200,100,.35)}.cx-count{font-size:18px;letter-spacing:2px;color:#d6c49ed9}.cx-tabs{display:flex;gap:6px;flex-wrap:wrap;border-bottom:1px solid rgba(180,160,120,.22);padding-bottom:8px}.cx-tab,.cx-row,.cx-close{font:inherit;color:inherit;cursor:pointer;background:transparent;border:1px solid transparent;border-radius:3px}.cx-tab{padding:5px 12px;display:flex;gap:8px;align-items:baseline;color:#e1dccd99}.cx-tab .cx-tab-name{font-size:15px;letter-spacing:1.5px;text-transform:uppercase}.cx-tab .cx-tab-count{font-size:12px;opacity:.7}.cx-tab:hover{color:#e8e4d9;border-color:#b4a0784d}.cx-tab.on{color:#ffe9a8;border-color:#b89a5ab3;background:#b89a5a1f}.cx-body{display:flex;gap:20px;flex:1;min-height:0;margin-top:12px}.cx-list{width:38%;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding-right:6px}.cx-row{text-align:left;padding:4px 10px;font-size:15px;letter-spacing:.4px}.cx-row:hover{background:#ffffff0d}.cx-row.on{border-color:#b89a5a99;background:#b89a5a1f}.cx-row.locked{color:#e1dccd59}.cx-card{flex:1;overflow-y:auto;padding:4px 6px 0 14px;border-left:1px solid rgba(180,160,120,.2)}.cx-name{font-family:Cinzel,serif;font-size:22px;font-weight:700;letter-spacing:.6px;color:#ece4d0}.cx-tier{display:inline-block;margin-top:4px;font-size:10px;font-weight:700;letter-spacing:1.5px;padding:1px 6px;border-radius:2px;color:#0d0a12;background:#d6c49ed9}.cx-text{margin:10px 0 8px;font-size:16px;line-height:1.5;color:#e8e4d9e0;white-space:pre-line}.cx-line{font-size:14px;line-height:1.55;font-weight:600}.cx-line.good{color:#6ee79a}.cx-line.bad{color:#ff6b6b}.cx-line.warn{color:#ffb84d}.cx-line.neutral{color:#e1dccdb3;font-weight:400}.cx-foot{display:flex;align-items:center;justify-content:space-between;margin-top:10px;padding-top:8px;border-top:1px solid rgba(180,160,120,.22)}.cx-keys{font-size:12px;letter-spacing:1.5px;text-transform:uppercase;color:#ffffff73;white-space:pre}.cx-close{padding:4px 16px;font-size:13px;letter-spacing:2px;text-transform:uppercase;border-color:#b4a07859}.cx-close:hover{background:#ffffff12}#codexToast{position:fixed;left:50%;top:104px;transform:translate(-50%,-6px);z-index:7;padding:5px 16px;font-size:15px;letter-spacing:1.5px;font-weight:600;color:#ffe9a8;background:#0e0a12c7;border:1px solid rgba(184,154,90,.5);border-radius:3px;text-shadow:0 1px 4px rgba(0,0,0,.9);opacity:0;pointer-events:none;transition:opacity .35s,transform .35s}#codexToast.on{opacity:1;transform:translate(-50%)}#titleScreen:not(.hidden)~#codexToast{display:none}#mutatorBanner{position:fixed;left:50%;top:24vh;transform:translate(-50%,-6px);z-index:7;width:min(640px,80vw);text-align:center;padding:10px 18px;background:linear-gradient(180deg,#0e0a1200,#0e0a12b8 30% 70%,#0e0a1200);opacity:0;pointer-events:none;transition:opacity .5s,transform .5s}#mutatorBanner.on{opacity:1;transform:translate(-50%)}#mutatorTitle{font-family:Cinzel,serif;font-size:26px;letter-spacing:5px;text-transform:uppercase;color:#ffd9a0;text-shadow:0 0 22px rgba(255,150,60,.55),2px 2px 0 #000}#mutatorLine{margin-top:4px;font-size:17px;letter-spacing:1.5px;color:#ebe1cdeb;text-shadow:0 1px 4px rgba(0,0,0,.9)}#mutatorTag{position:fixed;left:50%;top:124px;transform:translate(-50%);z-index:6;padding:1px 12px;font-size:12px;letter-spacing:2.5px;text-transform:uppercase;font-weight:600;color:#ffd9a0;background:#0e0a12b3;border:1px solid rgba(255,170,90,.45);border-radius:3px;opacity:0;pointer-events:none;transition:opacity .4s}#mutatorTag.on{opacity:1}#titleScreen:not(.hidden)~#mutatorBanner,#titleScreen:not(.hidden)~#mutatorTag{display:none}#pauseOverlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:40;background:#0000008c}#pauseCard{text-align:center;color:#fff}#pauseCard h1{font-family:Cinzel,serif;font-size:56px;letter-spacing:10px;color:#d4c4a8;text-shadow:0 0 40px rgba(255,200,100,.4),0 4px 8px rgba(0,0,0,.9);margin-bottom:14px}#pauseCard p{font-size:14px;letter-spacing:3px;text-transform:uppercase;color:#fff9}#gearPanel{min-width:190px;font-size:13px;line-height:1.7}.gear-row{display:flex;align-items:center;gap:8px;white-space:nowrap}.gear-icon{width:20px;text-align:center;font-size:14px}.gear-value{color:#e8e4d9;font-weight:600;letter-spacing:.5px}.gear-value.empty{color:#ffffff59;font-weight:400}.gear-key{margin-left:auto;font-size:10px;color:#ffffff73;border:1px solid rgba(255,255,255,.2);border-radius:3px;padding:0 5px;line-height:14px}.gear-row.artifacts{font-size:12px;color:#ffd700d9;margin-top:2px}#gearActiveRow{position:relative}#gearActiveRow .gear-key{margin-left:0}#gearActiveTime{margin-left:auto;font-size:11px;color:#ffffff8c;min-width:2.2em;text-align:right}#gearActiveFill{position:absolute;left:0;right:0;bottom:0;height:2px;background:currentColor;transform-origin:left center;transform:scaleX(0);opacity:.85;pointer-events:none}#gearActiveRow.cooling .gear-value{opacity:.6}#gearActiveRow.ready #gearActiveFill{transform:scaleX(1);opacity:.35}#gearActiveRow.ready .gear-key{color:#e8e4d9;border-color:currentColor}#gearActiveRow.flash{animation:activeReady .7s ease-out}#gearActiveRow.denied{animation:activeDenied .35s ease-out}@keyframes activeReady{0%{filter:brightness(2.2)}to{filter:none}}@keyframes activeDenied{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}#bossBar{position:fixed;top:92px;left:50%;transform:translate(-50%);width:min(520px,60vw);text-align:center;z-index:6;pointer-events:none;opacity:0;transition:opacity .4s}#bossBar.active{opacity:1}#bossName{font-family:Cinzel,serif;font-size:20px;letter-spacing:4px;color:#e8d8c0;text-shadow:0 0 20px rgba(255,120,60,.6),2px 2px 0 #000;margin-bottom:4px}#bossBar .bar-outer{height:12px;border-color:#dcb47899;background:#000000a6}#bossBarInner{width:100%;height:100%;background:linear-gradient(180deg,#ffb060,#c04010);transform-origin:left center;transition:transform .15s ease-out,background .3s;box-shadow:0 0 12px #ff782880}#bossBar.stunned #bossBarInner{background:linear-gradient(180deg,#fff,#c9b896);box-shadow:0 0 18px #ffffffb3}#bossBar.frozen #bossBarInner{background:linear-gradient(180deg,#d8f6ff,#4aa8d8);box-shadow:0 0 18px #96e6ffcc}#bossPhase{margin-top:4px;font-size:11px;letter-spacing:3px;text-transform:uppercase;color:#ffdcb4bf}#bossBar.stunned #bossPhase{color:#fff;animation:pulse .6s ease-in-out infinite}#nemesisBar{position:fixed;top:150px;left:50%;transform:translate(-50%);width:min(380px,50vw);text-align:center;z-index:6;pointer-events:none;opacity:0;transition:opacity .4s}#nemesisBar.active{opacity:1}#nemesisName{font-family:Cinzel,serif;font-size:15px;letter-spacing:3px;color:#e6d2ff;text-shadow:0 0 16px rgba(176,76,255,.7),2px 2px 0 #000;margin-bottom:3px}#ritualBar{position:fixed;top:205px;left:50%;transform:translate(-50%);width:min(380px,50vw);text-align:center;z-index:6;pointer-events:none;opacity:0;transition:opacity .4s}#ritualBar.active{opacity:1}#ritualName{font-family:Cinzel,serif;font-size:15px;letter-spacing:3px;color:#e9dcff;text-shadow:0 0 16px rgba(181,140,255,.7),2px 2px 0 #000;margin-bottom:3px}#ritualBar .bar-outer{height:8px;border-color:#b58cffa6;background:#000000a6}#ritualBarInner{width:100%;height:100%;background:linear-gradient(180deg,#d9c2ff,#7a4ad8);transform-origin:left center;transition:transform .15s ease-out;box-shadow:0 0 10px #b58cff8c}#ritualBar.out #ritualBarInner{background:linear-gradient(180deg,#ffb3b3,#c0303a);box-shadow:0 0 10px #dc505a99}#ritualNote{font-size:11px;letter-spacing:2px;text-transform:uppercase;color:#e9dcffcc;margin-top:3px}#nemesisBar .bar-outer{height:8px;border-color:#b04cffa6;background:#000000a6}#nemesisBarInner{width:100%;height:100%;background:linear-gradient(180deg,#c78bff,#6a2aa8);transform-origin:left center;transition:transform .15s ease-out;box-shadow:0 0 10px #b04cff80}#nemesisKills{margin-top:3px;font-size:10px;letter-spacing:3px;text-transform:uppercase;color:#dcbeffbf}#nemesisKills:empty{display:none}#comboDisplay.empowered #comboCount{color:#9fd7ff;text-shadow:0 0 24px rgba(159,215,255,.9),3px 3px 0 #000}#comboDisplay.empowered #comboLabel{color:#9fd7ffcc}#vitalsPanel{display:flex;align-items:center;gap:14px;padding:10px 16px 10px 10px}#vitalBars{display:flex;flex-direction:column;gap:7px}.vital{transition:opacity .5s}.vital .stat-label{display:flex;justify-content:space-between;gap:12px}.stat-num{color:#f0e8d0;font-weight:700;letter-spacing:1px;font-size:11px;opacity:.9;font-variant-numeric:tabular-nums}#healthOuter,#staminaOuter{width:220px;margin-top:3px;transition:width .8s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}#healthBarInner,#staminaBarInner,.bar-ghost{position:absolute;inset:0;transform-origin:left center}.bar-ghost{transition:transform .5s ease-out .25s}#healthGhost{background:#ffc8be8c}#staminaGhost{background:#f0e8a080}#staminaBarInner{background:linear-gradient(180deg,#dcea8c,#6f9a2c);transition:transform .09s linear,background .25s;box-shadow:0 0 10px #bedc5a59}.vital.rested{opacity:.5}#staminaPanel.low #staminaBarInner{background:linear-gradient(180deg,#ffd070,#c4661c);box-shadow:0 0 12px #ffa03c8c;animation:pulse-health .45s ease-in-out infinite}#staminaPanel.exhausted #staminaBarInner{background:linear-gradient(180deg,#858a94,#3d4149);box-shadow:none;animation:none}#staminaPanel.exhausted #staminaOuter{border-color:#e05a4a}#staminaPanel.exhausted .stat-label span:first-child:after{content:"  WINDED";color:#ff7a5a;letter-spacing:2px;font-size:10px}#staminaPanel.flash #staminaOuter{animation:windedFlash .6s ease-out}@keyframes windedFlash{0%{box-shadow:0 0 #ff503c00;transform:translate(0)}15%{box-shadow:0 0 20px #ff503cf2;transform:translate(-4px)}35%{transform:translate(4px)}55%{transform:translate(-2px)}to{box-shadow:0 0 #ff503c00;transform:translate(0)}}#staminaResume{position:absolute;top:-1px;bottom:-1px;width:2px;background:#ffffffbf;display:none}#staminaPanel.exhausted #staminaResume{display:block}#staminaDash{position:absolute;top:-2px;bottom:-2px;width:2px;margin-left:-1px;background:#96cdff59;display:none;pointer-events:none}#staminaPanel.dashable #staminaDash{display:block}#staminaPanel.dashready #staminaDash{background:#aae1fff2;box-shadow:0 0 6px #78beffcc}#guardOuter{width:220px;margin-top:3px;transition:width .8s cubic-bezier(.2,.8,.2,1),border-color .3s,box-shadow .3s}#guardBarInner,#guardGhost{position:absolute;inset:0;transform-origin:left center}#guardGhost{background:#bee1ff80}#guardBarInner{background:linear-gradient(180deg,#a6dcf2,#3f7fa8);transition:transform .09s linear,background .25s;box-shadow:0 0 10px #6ebeeb66}#guardOuter:after{content:"";position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(90deg,transparent 0,transparent calc(10% - 1px),rgba(8,10,16,.85) calc(10% - 1px),rgba(8,10,16,.85) 10%)}#guardPanel.low #guardBarInner{background:linear-gradient(180deg,#ffd070,#d4701e);box-shadow:0 0 12px #ff963c99;animation:pulse-health .45s ease-in-out infinite}#guardPanel.broken #guardBarInner{background:linear-gradient(180deg,#ff6a5a,#8e1a1a);box-shadow:0 0 12px #ff3c32a6;animation:none}#guardPanel.broken #guardOuter{border-color:#e05a4a;animation:guardShake .5s ease-out 2}#guardPanel.broken .stat-label span:first-child:after{content:"  GUARD BROKEN";color:#ff7a5a;letter-spacing:2px;font-size:10px}#guardResume{position:absolute;top:-1px;bottom:-1px;width:2px;background:#ffffffbf;display:none;z-index:1}#guardPanel.broken #guardResume{display:block}@keyframes guardShake{0%{box-shadow:0 0 #ff503c00;transform:translate(0)}15%{box-shadow:0 0 22px #ff503cf2;transform:translate(-5px)}35%{transform:translate(5px)}55%{transform:translate(-3px)}75%{transform:translate(2px)}to{box-shadow:0 0 #ff503c00;transform:translate(0)}}#guardOverlay{position:fixed;inset:0;z-index:9;pointer-events:none;opacity:0;text-align:center;transition:opacity .12s;background:radial-gradient(ellipse at center,transparent 32%,rgba(190,20,20,.6) 100%)}#guardOverlay.on{opacity:1}#guardOverlay .gb-title{margin-top:30vh;font-family:Cinzel,serif;font-weight:700;font-size:30px;letter-spacing:8px;text-transform:uppercase;color:#ff8a6a;text-shadow:2px 2px 0 #000,0 0 18px rgba(255,60,40,.7);opacity:0}#guardOverlay.on .gb-title{animation:guardTitle 1.2s ease-out forwards}@keyframes guardTitle{0%{opacity:0;transform:scale(1.35)}12%{opacity:1;transform:scale(1)}70%{opacity:1}to{opacity:0}}#mapStage{--map-radar: 180px;--map-full: min(85vw, 85vh);--map-seconds: .2s;--map-ease: cubic-bezier(.2, .8, .2, 1);position:fixed;z-index:5;right:16px;bottom:16px;width:var(--map-radar);height:var(--map-radar);border:1px solid rgba(180,160,120,.4);border-radius:4px;overflow:hidden;pointer-events:none;box-shadow:0 4px 20px #00000080;transition:right var(--map-seconds) var(--map-ease),bottom var(--map-seconds) var(--map-ease),width var(--map-seconds) var(--map-ease),height var(--map-seconds) var(--map-ease),border-color var(--map-seconds) var(--map-ease),box-shadow var(--map-seconds) var(--map-ease),border-radius var(--map-seconds) var(--map-ease)}#mapStage.full{right:calc(50vw - var(--map-full) / 2);bottom:calc(50vh - var(--map-full) / 2);width:var(--map-full);height:var(--map-full);border-color:#c4aa768c;border-radius:10px;box-shadow:0 0 0 1px #000000a6,0 14px 70px #0000008c,inset 0 0 0 3px #c4aa761f,inset 0 0 90px #00000073}#minimapCanvas{display:block;width:100%;height:100%}#mapSlot{flex:none;width:180px;height:180px;visibility:hidden}#titleTag{margin-top:14px;font-family:Cinzel,serif;font-style:italic;font-size:clamp(11px,1.25vw,17px);letter-spacing:2px;color:#e2cea0c7;text-shadow:0 2px 6px rgba(0,0,0,.95)}#titleTale{align-self:center;background:none;border:none;cursor:pointer;padding:6px 14px;font-family:Cinzel,serif;font-size:12px;letter-spacing:5px;text-transform:uppercase;color:#d6c49e9e;text-shadow:0 2px 6px rgba(0,0,0,.95);transition:color .2s}#titleTale:hover,#titleTale:focus-visible{color:#ffd98a;outline:none}#titleTale.hidden{display:none}#introScreen{position:fixed;inset:0;z-index:120;font-family:Cinzel,serif;color:#f1c75b;user-select:none;transition:opacity .7s}#introScreen.hidden{opacity:0;pointer-events:none}#introScreen.plain{background:radial-gradient(ellipse at 50% 60%,#14101a,#07050a 60%,#030204)}#introScreen:not(.hidden)~#hud,#introScreen:not(.hidden)~#crosshair,#introScreen:not(.hidden)~#itemTip,#introScreen:not(.hidden)~#comboDisplay,#introScreen:not(.hidden)~#damageOverlay,#introScreen:not(.hidden)~#guardOverlay,#introScreen:not(.hidden)~#mapStage{visibility:hidden}#introVeil{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 50% 58%,#000000a8,#0006 40%,#0000 76%),linear-gradient(to bottom,#0009,#0000 30%),linear-gradient(to top,#0000009e,#0000 26%)}#introOpening{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%);width:min(80vw,900px);text-align:center;opacity:0;font-size:clamp(17px,2.5vw,32px);letter-spacing:.14em;line-height:1.5;color:#9fbcff;text-shadow:0 2px 14px #000,0 0 34px rgba(110,150,255,.5)}#introLogo{position:absolute;left:50%;top:46%;transform:translate(-50%,-50%) scale(1.35);opacity:0;text-align:center;white-space:nowrap;pointer-events:none}#introLogoTitle{font-size:clamp(44px,11vw,160px);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#ffd25f;text-shadow:0 0 46px rgba(255,150,40,.6),0 5px 12px #000}#introLogoSub{margin-top:.5em;font-size:clamp(11px,2.1vw,28px);letter-spacing:.5em;text-transform:uppercase;color:#e9c47c;text-shadow:0 2px 8px #000}#introStage{position:absolute;inset:0;overflow:hidden;pointer-events:none;perspective:var(--ic-perspective, 460px);perspective-origin:50% 90%;-webkit-mask-image:linear-gradient(to top,#000 0%,#000 var(--ic-fade, 62%),transparent 100%);mask-image:linear-gradient(to top,#000 0%,#000 var(--ic-fade, 62%),transparent 100%)}#introPlane{position:absolute;inset:0;transform-origin:50% 100%;transform:rotateX(var(--ic-tilt, 26deg))}#introCrawl{position:absolute;left:50%;top:100%;visibility:hidden;width:min(var(--ic-width, 60vw),var(--ic-max-width, 780px));transform:translate(-50%);text-align:justify;hyphens:auto;font-size:clamp(19px,2.8vw,37px);font-weight:700;line-height:1.5;letter-spacing:.04em;color:#f1c75b;text-shadow:0 0 16px rgba(255,160,40,.38),0 2px 5px rgba(0,0,0,.95)}.ic-episode{margin:0 0 1.5em;text-align:center;font-size:1.2em;font-weight:700;letter-spacing:.34em;text-transform:uppercase}.ic-para{margin:0 0 1.3em;text-indent:1.4em}.ic-closing{margin:2em 0 0;text-align:center;font-style:italic;letter-spacing:.08em;color:#ffdc8c}#introEnd{position:absolute;left:0;right:0;bottom:15vh;opacity:0;pointer-events:none;text-align:center;font-size:clamp(15px,2vw,26px);letter-spacing:.3em;text-transform:uppercase;color:#ffd98a;text-shadow:0 2px 10px #000,0 0 26px rgba(255,160,40,.5)}#introEnd.ready{animation:introPulse 2.4s ease-in-out infinite}@keyframes introPulse{0%,to{opacity:1}50%{opacity:.55}}#introButtons{position:absolute;right:22px;bottom:20px;display:flex;align-items:flex-end;gap:10px;pointer-events:none}#introSkip,#introFast{display:flex;flex-direction:column;align-items:flex-end;gap:3px;padding:8px 18px;cursor:pointer;pointer-events:auto;font-family:Rajdhani,sans-serif;text-transform:uppercase;color:#ffffffd1;border:1px solid rgba(200,180,140,.38);background:#0c0a1294;box-shadow:0 6px 24px #0000008c;opacity:.82;transition:opacity .2s,border-color .2s,background .2s}#introScreen.ending #introSkip,#introScreen.ending #introFast{opacity:0;pointer-events:none}#introSkip:hover,#introSkip:focus-visible,#introFast:hover,#introFast:focus-visible{opacity:1;border-color:#ffd98acc;outline:none}#introSkipLabel,#introFastLabel{font-size:15px;font-weight:700;letter-spacing:3px}#introSkipLabel:after{content:"  ▸"}#introFastLabel:after{content:"  ▸▸"}#introSkipHint,#introFastHint{font-size:10px;letter-spacing:2px;color:#d6c49e9e;white-space:pre}#introFast[aria-pressed=true]{opacity:1;border-color:#ffd98acc;background:#46300c9e;color:#ffd98a}#introScreen.reduced #introFast{display:none}#introScreen.reduced #introStage{perspective:none;-webkit-mask-image:none;mask-image:none;overflow-y:auto;pointer-events:auto;scrollbar-width:thin;scrollbar-color:#8b7355 transparent}#introScreen.reduced #introPlane{position:static;transform:none;padding:calc(7vh + 150px) 0 30vh}#introScreen.reduced #introCrawl{position:static;visibility:visible!important;transform:none!important;margin:0 auto}#introScreen.reduced #introOpening{display:none}#introScreen.reduced #introLogo{left:0;right:0;top:0;z-index:2;transform:none!important;opacity:1!important;padding:4vh 0 3vh;background:linear-gradient(to bottom,#000000eb 72%,#0000)}#introScreen.reduced #introLogoTitle{font-size:clamp(28px,5vw,64px)}#introScreen.reduced #introLogoSub{font-size:clamp(10px,1.4vw,18px);letter-spacing:.4em}#introScreen.reduced #introEnd{z-index:2;bottom:0;padding:28px 0 24px;background:linear-gradient(to top,#000000eb 60%,#0000)}.bar-outer.grow{border-color:#e8b64c;box-shadow:0 0 14px #e8b64cbf}.bar-outer.grow:after{content:"";position:absolute;top:0;bottom:0;left:0;width:38%;background:linear-gradient(90deg,transparent,rgba(255,236,170,.85),transparent);animation:capSweep 1.1s ease-out}@keyframes capSweep{0%{transform:translate(-100%)}to{transform:translate(300%)}}#levelNext{margin-top:1px;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#b4a078c7;white-space:nowrap}#levelNext b{color:#f4d98c;font-weight:700}#levelNext.max{color:#f4d98c}#blessing{display:none;position:relative;font-size:10px;letter-spacing:2px;text-transform:uppercase;color:#bfe3ff;padding-bottom:4px}#blessing.on{display:flex;justify-content:space-between;gap:10px}#blessing i{position:absolute;left:0;bottom:0;height:2px;width:100%;transform-origin:left center;background:linear-gradient(90deg,#6fb8ff,#bfe3ff);box-shadow:0 0 8px #78beffb3}#levelCrest{position:relative;width:68px;height:68px;flex:none;filter:drop-shadow(0 2px 6px rgba(0,0,0,.75))}#levelCrest svg{width:100%;height:100%;overflow:visible}#levelCrest .ring-track{fill:none;stroke:#b4a07838;stroke-width:3.5}#levelCrest .ring-fill{fill:none;stroke:#e8b64c;stroke-width:3.5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset .9s cubic-bezier(.2,.8,.2,1);filter:drop-shadow(0 0 3px rgba(232,182,76,.8))}#levelCrest .gem-outer{fill:url(#gemRim);stroke:#3a2a10;stroke-width:1}#levelCrest .gem-inner{fill:url(#gemFace);stroke:#0009;stroke-width:1}#levelCrest .gem-facet{fill:none;stroke:#f4d98c29;stroke-width:1}#levelCrest .crest-fire path{fill:var(--fire, #ffb347);stroke:#0009;stroke-width:.6;opacity:0;transition:opacity .6s;filter:drop-shadow(0 0 2px var(--fire, #ffb347));transform-box:fill-box;transform-origin:50% 100%}#levelCrest .crest-fire.lit path{opacity:1}#levelCrest .crest-fire.new path{animation:crestFireFlare 1.5s ease-out}@keyframes crestFireFlare{0%{transform:scale(2.8);opacity:.3}35%{transform:scale(1.6);opacity:1}to{transform:scale(1);opacity:1}}#levelCrest.burning .crest-fire path{opacity:0}#levelCrest.burning .ring-track{stroke:var(--f1, #ffb347);stroke-opacity:.95;stroke-width:4.5;filter:drop-shadow(0 0 4px var(--f1, #ffb347));animation:crestBurn 7s linear infinite}@keyframes crestBurn{0%{stroke:var(--f1)}20%{stroke:var(--f2)}40%{stroke:var(--f3)}60%{stroke:var(--f4)}80%{stroke:var(--f5)}to{stroke:var(--f1)}}#levelPrestige{display:none;position:absolute;left:50%;bottom:-7px;transform:translate(-50%);padding:0 6px;border-radius:7px;background:#0c0a12d9;border:1px solid rgba(244,217,140,.55);font:700 10px/14px Cinzel,serif;letter-spacing:.1em;color:#f4d98c;text-shadow:0 0 6px rgba(255,200,90,.6)}#levelCrest.burning #levelPrestige{display:block}@media(prefers-reduced-motion:reduce){#levelCrest .crest-fire.new path,#levelCrest.burning .ring-track{animation:none}}html.reduce-motion #levelCrest .crest-fire.new path,html.reduce-motion #levelCrest.burning .ring-track{animation:none}#levelNumber{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-family:Cinzel,serif;font-weight:700;font-size:25px;color:#f4d98c;text-shadow:0 0 10px rgba(255,200,90,.65),1px 1px 0 #000}#levelCrest.pop{animation:crestPop 1.3s cubic-bezier(.2,1.4,.3,1)}#levelCrest.pop:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(255,220,130,.9);animation:crestRing 1.1s ease-out forwards}@keyframes crestPop{0%{transform:scale(1)}22%{transform:scale(1.38)}to{transform:scale(1)}}@keyframes crestRing{0%{transform:scale(.8);opacity:1}to{transform:scale(2.1);opacity:0}}#levelFlash{position:fixed;inset:0;z-index:9;pointer-events:none;opacity:0;background:radial-gradient(ellipse at 50% 38%,rgba(255,226,140,.5),rgba(255,200,90,.14) 45%,transparent 72%)}#levelFlash.on{animation:levelFlash 1.3s ease-out}@keyframes levelFlash{0%{opacity:0}12%{opacity:1}to{opacity:0}}#levelBanner{position:fixed;left:50%;top:19%;z-index:10;pointer-events:none;opacity:0;text-align:center;transform:translate(-50%)}#levelBanner.on{animation:levelBanner 4.6s cubic-bezier(.2,.8,.2,1) forwards}@keyframes levelBanner{0%{opacity:0;transform:translate(-50%,14px) scale(.86)}8%{opacity:1;transform:translate(-50%) scale(1.05)}14%{transform:translate(-50%) scale(1)}80%{opacity:1;transform:translate(-50%) scale(1)}to{opacity:0;transform:translate(-50%,-16px) scale(1)}}.lb-title{font-family:Cinzel,serif;font-weight:700;font-size:46px;letter-spacing:14px;padding-left:14px;color:#f4d98c;text-shadow:0 0 28px rgba(255,200,90,.85),3px 3px 0 #000}.lb-sub{font-size:15px;letter-spacing:6px;text-transform:uppercase;color:#e8d8b8;text-shadow:2px 2px 0 #000}.lb-rule{height:1px;width:340px;margin:11px auto;background:linear-gradient(90deg,transparent,#c9a45c,transparent)}.lb-stats{display:flex;gap:26px;justify-content:center;font-size:17px;font-weight:600;color:#e8e4d9;text-shadow:2px 2px 0 #000}.lb-stats b{color:#f4d98c}.lb-perk{margin-top:9px;font-size:14px;letter-spacing:1px;color:#bfe3ff;text-shadow:2px 2px 0 #000}.lb-perk:empty{display:none}#perkChoice{position:fixed;left:50%;top:44%;z-index:11;transform:translate(-50%);display:none;text-align:center;pointer-events:none}#perkChoice.lay{top:19%}#perkChoice.on{display:block;animation:pcIn .45s cubic-bezier(.2,.8,.2,1) both}#perkChoice.done{animation:pcOut .5s ease-in .55s forwards}@keyframes pcIn{0%{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%)}}@keyframes pcOut{to{opacity:0;transform:translate(-50%,-12px)}}.pc-title{font-family:Cinzel,serif;font-weight:700;font-size:26px;letter-spacing:8px;padding-left:8px;color:#f4d98c;text-shadow:0 0 20px rgba(255,200,90,.7),2px 2px 0 #000}.pc-sub{margin:4px 0 14px;font-size:12px;letter-spacing:4px;text-transform:uppercase;color:#cdbf9f;text-shadow:2px 2px 0 #000}.pc-cards{display:flex;gap:16px;justify-content:center}.pc-card{width:210px;padding:14px 14px 16px;border:1px solid rgba(201,164,92,.65);border-top:2px solid #e8b64c;border-radius:6px;background:linear-gradient(180deg,#221c14eb,#100d0af0);box-shadow:0 6px 22px #0009,inset 0 0 24px #e8b64c14;text-align:left;transition:opacity .25s,transform .25s,border-color .25s}.pc-branch{display:block;margin-top:8px;font-size:10px;letter-spacing:2px;text-transform:uppercase;text-shadow:1px 1px 0 #000}.pc-cards.wait .pc-card{opacity:.55}.pc-cards.lay{display:grid;grid-template-columns:repeat(3,210px);gap:10px}.pc-cards.lay .pc-card{padding:8px 12px 10px}.pc-cards.lay .pc-key{margin-bottom:4px}.pc-key{display:inline-grid;place-items:center;width:26px;height:26px;margin-bottom:8px;border:1px solid #e8b64c;border-radius:5px;font:700 14px Cinzel,serif;color:#f4d98c;background:#e8b64c1f}.pc-name{display:block;font-size:16px;font-weight:700;color:#f0e6cc;text-shadow:2px 2px 0 #000}.pc-text{display:block;margin-top:6px;font-size:13px;line-height:1.4;color:#c9bfa6}.pc-card.chosen{border-color:#f4d98c;transform:translateY(-6px) scale(1.04);box-shadow:0 0 30px #ffc85a8c,inset 0 0 24px #e8b64c33}.pc-cards.picked .pc-card:not(.chosen){opacity:.2}@media(max-width:760px){.pc-cards{flex-direction:column}.pc-card{width:260px}#perkChoice{top:30%}.pc-cards.lay{grid-template-columns:260px}}@media(prefers-reduced-motion:reduce){#perkChoice.on,#perkChoice.done{animation:none}#levelBanner.on{animation-duration:3.2s}#levelCrest.pop,#levelCrest.pop:after,.bar-outer.grow:after,#staminaPanel.flash #staminaOuter,#guardPanel.broken #guardOuter,#guardPanel.low #guardBarInner{animation:none}#mapStage{transition:none}}html.reduce-motion #perkChoice.on,html.reduce-motion #perkChoice.done{animation:none}html.reduce-motion #levelBanner.on{animation-duration:3.2s}html.reduce-motion #levelCrest.pop,html.reduce-motion #levelCrest.pop:after,html.reduce-motion .bar-outer.grow:after,html.reduce-motion #staminaPanel.flash #staminaOuter,html.reduce-motion #guardPanel.broken #guardOuter,html.reduce-motion #guardPanel.low #guardBarInner{animation:none}html.reduce-motion #mapStage{transition:none}html.reduce-motion .title-button.only{animation:none}#settingsOverlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;z-index:110;background:#0009;font-family:Rajdhani,sans-serif}.st-panel{display:flex;flex-direction:column;width:min(900px,94vw);height:min(620px,90vh);padding:18px 22px 14px;color:#e8e4d9;background:linear-gradient(135deg,#18121cf7,#0a080ffa);border:1px solid rgba(180,160,120,.32);border-top:2px solid #b89a5a;border-radius:4px;box-shadow:0 10px 50px #000000bf}.st-head{display:flex;align-items:baseline;justify-content:space-between;border-bottom:1px solid rgba(180,160,120,.22);padding-bottom:8px}.st-title{font-family:Cinzel,serif;font-size:22px;letter-spacing:6px;color:#ffe9a8}.st-from{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:#ffffff73}.st-body{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:0 28px;padding:10px 4px 0 0}.st-section-title{font-size:12px;letter-spacing:3px;text-transform:uppercase;color:#b4a078e6;margin:8px 0 6px}.st-row{display:flex;flex-direction:column;gap:4px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.05)}.st-label{display:flex;flex-direction:column}.st-name{font-size:16px;font-weight:600;letter-spacing:.5px}.st-help{font-size:12px;color:#e8e4d98c;line-height:1.35}.st-control{display:flex;align-items:center;gap:12px}.st-slider{flex:1;accent-color:#d8b56a;min-width:0}.st-value{min-width:64px;text-align:right;font-size:14px;font-variant-numeric:tabular-nums;color:#e8e4d9cc}.st-value.changed,.st-key.changed{color:#ffe9a8}.st-choices{flex-wrap:wrap;gap:6px}.st-choice,.st-key,.st-button{font-family:Rajdhani,sans-serif;font-weight:600;color:#e1dccdbf;background:#ffffff08;border:1px solid rgba(180,160,120,.22);border-radius:3px;padding:4px 12px;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.st-choice:hover,.st-key:hover,.st-button:hover{color:#e8e4d9;border-color:#b4a07873;background:#ffffff12}.st-choice.on{color:#ffe9a8;border-color:#b89a5ab3;background:#b89a5a1f}.st-keys-help{font-size:12px;color:#e8e4d98c;margin-bottom:6px}.st-keys{display:flex;flex-direction:column;gap:2px}.st-key-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 0}.st-key-row.fixed{color:#e1dccd80}.st-key-label{font-size:14px}.st-key{min-width:72px;text-align:center;font-size:13px;letter-spacing:1px}.st-key.fixed{border-color:transparent;background:none;cursor:default;color:#e1dccd80;font-weight:400;letter-spacing:.5px}.st-key-row.capturing .st-key{color:#0d0a12;background:#d8b56a;border-color:#d8b56a;animation:pulse 1s ease-in-out infinite}.st-note{min-height:18px;font-size:13px;color:#ffb84d;margin-top:6px;opacity:0;transition:opacity .2s}.st-note.on{opacity:1}.st-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:10px;padding-top:8px;border-top:1px solid rgba(180,160,120,.22)}.st-foot-left{display:flex;gap:8px;flex-wrap:wrap}.st-close{letter-spacing:2px;text-transform:uppercase}#pauseBegin[hidden]{display:none}#pauseBegin{margin-left:10px}#pauseSettings,#pauseCodex{margin-top:18px;font-size:14px;letter-spacing:2px;text-transform:uppercase}#pauseCodex{margin-left:10px}.pause-touch{display:none}.title-minor{font-family:Rajdhani,sans-serif;font-size:14px;letter-spacing:3px;text-transform:uppercase;color:#ffffff8c;background:none;border:1px solid rgba(200,180,140,.2);border-radius:3px;padding:6px 18px;cursor:pointer;align-self:center;transition:color .2s,border-color .2s}.title-minor:hover,.title-minor:focus-visible{color:#ffe9a8;border-color:#c8b48c80}#titleControls span.what{color:inherit;font-weight:inherit}@media(max-width:760px){.st-body{grid-template-columns:1fr}.st-panel{height:92vh;padding:12px 14px 10px}}#endingScreen{position:fixed;inset:0;z-index:110;pointer-events:none;font-family:Cinzel,serif;color:#f1c75b;user-select:none}#endingScreen.hidden{display:none}body.ending #hud,body.ending #crosshair,body.ending #itemTip,body.ending #comboDisplay,body.ending #mapStage{opacity:var(--hud-fade, 1)!important}body.ending #damageOverlay,body.ending #guardOverlay,body.ending #codexToast,body.ending #levelFlash,body.ending #levelBanner,body.ending #mutatorBanner,body.ending #mutatorTag{visibility:hidden}#endingBlack{position:absolute;inset:0;background:#000;opacity:0}#endingLine{position:absolute;left:50%;bottom:7vh;transform:translate(-50%);width:min(86vw,980px);text-align:center;opacity:0;transition:opacity .9s;--es-color: #f1c75b}#endingLine.on{opacity:1}#endingLineTitle{font-size:clamp(13px,1.8vw,24px);font-weight:700;letter-spacing:.4em;text-transform:uppercase;color:var(--es-color);filter:brightness(1.35);text-shadow:0 0 14px #000,0 2px 6px #000,0 0 22px var(--es-color)}#endingLineText{margin-top:.45em;font-size:clamp(18px,2.8vw,38px);line-height:1.35;letter-spacing:.04em;font-style:italic;color:#fff4dc;text-shadow:0 0 22px var(--es-color),0 2px 8px #000}#endingPrompt{position:absolute;left:50%;bottom:26vh;transform:translate(-50%);opacity:0;transition:opacity .6s;padding:.5em 1.1em;border:1px solid rgba(241,199,91,.55);border-radius:4px;background:#08060c9e;font-size:clamp(13px,1.7vw,22px);letter-spacing:.12em;color:#ffd98a;text-shadow:0 2px 8px #000}#endingPrompt.on{opacity:1}#endingSkip{position:absolute;right:26px;bottom:22px;display:grid;grid-template-columns:38px auto;grid-template-rows:auto auto;column-gap:10px;align-items:center;opacity:.42;transition:opacity .3s;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#e9c47c;text-shadow:0 1px 6px #000}#endingSkip.held{opacity:1}#endingScreen.carded #endingSkip,#endingScreen.rolling #endingSkip{display:none}#endingSkip svg{grid-row:1 / span 2;width:38px;height:38px;transform:rotate(-90deg)}#endingSkip .es-track{fill:none;stroke:#f1c75b47;stroke-width:3}#endingSkip .es-fill{fill:none;stroke:#ffd25f;stroke-width:3;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100}#endingSkipHint{font-size:11px;opacity:.7;letter-spacing:.1em}#endingCard{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:3vh 6vw;overflow-y:auto;background:#000000c7;opacity:0;visibility:hidden;transition:opacity 1.6s,visibility 0s 1.6s}#endingCard.up{opacity:1;visibility:visible;transition:opacity 1.6s}#endingCardTitle{margin:0;font-size:clamp(30px,min(5.4vw,9vh),72px);font-weight:700;letter-spacing:.08em;color:#ffd25f;text-shadow:0 0 46px rgba(255,170,60,.55),0 4px 10px #000}#endingCardLine{margin:.5em 0 0;font-size:clamp(13px,min(1.9vw,3.2vh),24px);letter-spacing:.12em;font-style:italic;color:#f4e2b0;text-shadow:0 2px 8px #000}#endingCardLaid{margin:.9em 0 0;font-size:clamp(12px,1.5vw,18px);letter-spacing:.1em;color:#ff9d60;opacity:0}#endingCardLaid.on{opacity:.9}#endingStats{display:grid;grid-template-columns:auto auto;column-gap:2.2em;row-gap:.25em;margin:1.5em 0 0;font-size:clamp(13px,min(1.6vw,2.8vh),20px);letter-spacing:.1em}#endingStats dt{text-align:right;color:#e9c47c;text-transform:uppercase;letter-spacing:.2em;font-size:.8em;align-self:center}#endingStats dd{margin:0;text-align:left;color:#fff4dc}#endingChoices{display:flex;gap:1.4em;margin-top:1.8em;flex-wrap:wrap;justify-content:center}#endingChoices button{pointer-events:auto;cursor:pointer;padding:.6em 1.5em;font:inherit;font-family:Cinzel,serif;font-size:clamp(13px,min(1.6vw,2.8vh),19px);letter-spacing:.16em;text-transform:uppercase;color:#ffd98a;background:#140e08d1;border:1px solid rgba(241,199,91,.6);border-radius:3px;transition:background .2s,color .2s}#endingChoices button:hover,#endingChoices button:focus-visible,#endingChoices button.armed{background:#f1c75b;color:#120c06;outline:none}#endingChoices button[hidden]{display:none}#endingBeginLine{margin:1.1em 0 0;max-width:38em;font-size:clamp(11px,min(1.3vw,2.3vh),16px);letter-spacing:.08em;line-height:1.5;color:#b79a62}#endingBeginLine:empty{display:none}@media(prefers-reduced-motion:reduce){#endingLine,#endingPrompt,#endingCard,#endingSkip{transition:none}}#creditsRoll{position:fixed;inset:0;z-index:150;display:none;overflow:hidden;font-family:Cinzel,serif;color:#e6d8b4;text-align:center;user-select:none}#creditsRoll.on{display:block}#creditsRoll.solid{background:#07050a}#creditsTrack{position:absolute;left:0;right:0;top:0;padding:0 6vw;will-change:transform}.cr-section{max-width:720px;margin:0 auto;padding:0 0 clamp(60px,14vh,150px)}.cr-heading{margin:0 0 .9em;font-size:clamp(11px,min(1.5vw,2.6vh),17px);font-weight:700;letter-spacing:.5em;text-transform:uppercase;color:#c9a45a}.cr-line{margin:.25em 0;font-size:clamp(15px,min(2.2vw,3.8vh),28px);letter-spacing:.08em;line-height:1.35;color:#f4e8c8;text-shadow:0 2px 8px #000;text-decoration:none}.cr-line.big{font-size:clamp(26px,min(5.4vw,9vh),70px);font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#ffd25f;text-shadow:0 0 40px rgba(255,170,60,.5),0 4px 10px #000}.cr-line.quiet{font-size:clamp(12px,min(1.6vw,2.8vh),19px);letter-spacing:.2em;color:#b79a62}a.cr-line{display:inline-block;pointer-events:auto;border-bottom:1px solid rgba(183,154,98,.45)}.cr-note{margin:0 0 .9em;font-size:clamp(11px,min(1.4vw,2.4vh),16px);font-style:italic;letter-spacing:.06em;color:#a99872}.cr-title{padding-top:6vh}.cr-tagline{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding-bottom:0}.cr-tagline .cr-line{font-size:clamp(18px,min(3.2vw,5.6vh),40px);font-weight:400;font-style:italic;text-transform:none;letter-spacing:.06em;line-height:1.5;color:#ffe9b0;text-shadow:0 0 30px rgba(255,200,100,.35),0 2px 8px #000}#creditsSkip{position:absolute;right:22px;bottom:18px;pointer-events:auto;cursor:pointer;padding:.5em 1.2em;font:inherit;font-size:13px;letter-spacing:.2em;text-transform:uppercase;color:#e9c47c;background:#0c080499;border:1px solid rgba(241,199,91,.45);border-radius:3px;opacity:.7}#creditsSkip:hover,#creditsSkip:focus-visible{opacity:1;background:#f1c75b;color:#120c06;outline:none}#creditsHint{position:absolute;left:22px;bottom:22px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#e9c47c8c}#fullscreenButton{position:fixed;top:14px;right:14px;z-index:130;display:grid;place-items:center;width:40px;height:40px;padding:0;cursor:pointer;color:#ffffffd1;background:#0c0a1294;border:1px solid rgba(200,180,140,.38);border-radius:4px;box-shadow:0 6px 24px #0000008c;opacity:.72;transition:opacity .2s,border-color .2s,color .2s}#fullscreenButton:hover,#fullscreenButton:focus-visible{opacity:1;color:#ffd98a;border-color:#ffd98acc;outline:none}#fullscreenButton svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}#fullscreenButton .fs-leave,#fullscreenButton[aria-pressed=true] .fs-enter{display:none}#fullscreenButton[aria-pressed=true] .fs-leave{display:inline}#fullscreenButton.away,#fullscreenButton.unsupported,body.ending #fullscreenButton{opacity:0;visibility:hidden;pointer-events:none}#titleFoot{position:fixed;left:16px;bottom:12px;z-index:100;max-width:calc(100vw - 32px);font-family:Rajdhani,sans-serif;font-size:13px;letter-spacing:2px;text-transform:uppercase;color:#d6c49e9e;text-shadow:0 1px 4px rgba(0,0,0,.9);opacity:0;pointer-events:none;transition:opacity .4s}#titleScreen:not(.hidden)~#titleFoot{opacity:1;pointer-events:auto}#titleFootLine{display:flex;flex-wrap:wrap;gap:6px 18px;align-items:baseline}#titleCaution{color:#ffd98a}#titleShowcase,#titleHome,#titleSwitch,#titlePages a{color:#ffd98ad9;text-decoration:none;border-bottom:1px solid rgba(255,217,138,.4)}#titleShowcase:hover,#titleShowcase:focus-visible,#titleHome:hover,#titleHome:focus-visible,#titleSwitch:hover,#titleSwitch:focus-visible,#titlePages a:hover,#titlePages a:focus-visible{color:#ffd98a;border-bottom-color:#ffd98a;outline:none}#titleShowcase[hidden],#titleHome[hidden],#titleSwitch[hidden],#titlePages[hidden]{display:none}#titlePages{display:flex;flex-wrap:wrap;gap:6px 18px}#deviceNote{display:none;margin-bottom:6px;color:#ffd98a;letter-spacing:1px;text-transform:none;font-size:14px}@media(pointer:coarse)and (hover:none){#deviceNote{display:block}}#loadingNoScript{margin-top:14px;color:#ffd98a;font-size:14px}.tag-break{display:none}@media(max-width:640px){.tag-break{display:inline}}.touch-ui{position:fixed;inset:0;z-index:8;display:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.touch-ui.on{display:block}.touch-surface{position:absolute;inset:0;touch-action:none}.touch-stick{position:absolute;left:0;top:0;width:128px;height:128px;margin:-64px 0 0 -64px;border-radius:50%;border:2px solid rgba(255,217,138,.4);background:#0c0a1247;opacity:0;pointer-events:none;transition:opacity .12s}.touch-stick.on{opacity:1}.touch-knob{position:absolute;left:50%;top:50%;width:56px;height:56px;border-radius:50%;background:#ffd98a66;border:2px solid rgba(255,217,138,.85);transform:translate(-50%,-50%)}.touch-btn{position:absolute;display:grid;place-items:center;box-sizing:border-box;padding:0;margin:0;border-radius:50%;pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;cursor:pointer;border:2px solid rgba(255,217,138,.55);background:#0c0a1280;color:#ffe9b0;box-shadow:0 4px 14px #00000080;opacity:var(--touch-opacity, 1);transition:opacity .4s}.touch-btn svg{width:54%;height:54%;pointer-events:none}.touch-btn.big svg{width:50%;height:50%}.touch-btn.big{border-color:#ffc86ee6;background:#46240c8c}.touch-btn.tiny{border-radius:9px}.touch-btn.tiny svg{width:50%;height:50%}.touch-btn.down{background:#ffaa3c99;transform:scale(.94)}.touch-ui.idle .touch-btn{opacity:calc(var(--touch-opacity, 1) * var(--touch-idle-opacity, .35))}.touch-context{display:none}html[data-device=mobile][data-touch-use="1"] .touch-use,html[data-device=mobile][data-touch-swap="1"] .touch-swap,html[data-device=mobile][data-touch-item="1"] .touch-item,html[data-device=mobile][data-touch-bomb="1"] .touch-bomb{display:grid}.touch-ui.idle .touch-use,.touch-ui.idle .touch-swap{opacity:var(--touch-opacity, 1)}html[data-device=mobile][data-touch-use="1"] .touch-use,html[data-device=mobile][data-touch-swap="1"] .touch-swap{animation:touchAsk 1.4s ease-in-out infinite}@keyframes touchAsk{0%,to{box-shadow:0 4px 14px #00000080}50%{box-shadow:0 0 0 5px #ffd98a59,0 4px 14px #00000080}}html[data-device=mobile].reduce-motion .touch-use,html[data-device=mobile].reduce-motion .touch-swap{animation:none}.touch-bomb:after{content:var(--touch-bombs, "");position:absolute;right:-4px;top:-6px;min-width:18px;height:18px;padding:0 4px;box-sizing:border-box;border-radius:9px;background:#ffd98a;color:#1a1008;font:700 12px/18px Rajdhani,sans-serif;text-align:center}.touch-item:after{content:var(--touch-item-icon, "");position:absolute;right:-6px;top:-8px;font-size:16px;line-height:1;text-shadow:0 1px 3px #000}.touch-tips{position:fixed;inset:0;z-index:12;display:grid;place-items:center;background:#050408bd;-webkit-user-select:none;user-select:none;touch-action:none}.touch-tips-card{box-sizing:border-box;display:grid;grid-template-columns:1fr 1fr;column-gap:22px;row-gap:1px;align-content:start;max-width:min(760px,calc(100vw - 32px));max-height:calc(100vh - 16px);max-height:calc(100dvh - 16px);overflow:hidden;padding:10px 18px 8px;border:1px solid rgba(255,217,138,.5);border-radius:10px;background:#0c0a12eb;color:#f3e6c8;font:600 13px/1.25 Rajdhani,sans-serif;letter-spacing:.03em}.touch-tips-title{grid-column:1 / -1;margin:0 0 4px;font:700 15px/1 Cinzel,serif;letter-spacing:.2em;text-transform:uppercase;color:#ffd98a;text-align:center}.touch-tips-row{display:flex;align-items:center;gap:10px;padding:3px 0}.touch-tips-icon{flex:none;width:24px;height:24px;color:#ffd98a}.touch-tips-icon svg{width:100%;height:100%}.touch-tips-dismiss{grid-column:1 / -1;margin:6px 0 0;text-align:center;color:#ffd98a;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.touch-tips-ring{position:fixed;box-sizing:border-box;border:2px solid #ffd98a;border-radius:50%;pointer-events:none;animation:touchRing 1.2s ease-in-out infinite}@keyframes touchRing{0%,to{opacity:.35}50%{opacity:1}}html[data-device=mobile].reduce-motion .touch-tips-ring{animation:none;opacity:.8}.touch-rotate{position:fixed;inset:0;z-index:300;display:none;place-items:center;padding:24px;text-align:center;background:#07050a;color:#ffd98a;font:700 20px/1.4 Rajdhani,sans-serif;letter-spacing:.14em;text-transform:uppercase}.touch-rotate.on{display:grid}html[data-device=mobile],html[data-device=mobile] body{overscroll-behavior:none;touch-action:manipulation;-webkit-text-size-adjust:100%}html[data-device=mobile] #titleControls{display:none}.touch-btn.touch-untaught{visibility:hidden;pointer-events:none}html[data-device=mobile] #hud,html[data-device=mobile] #bossBar,html[data-device=mobile] #nemesisBar,html[data-device=mobile] #ritualBar,html[data-device=mobile] #levelBanner,html[data-device=mobile] #codexToast,html[data-device=mobile] #mutatorBanner,html[data-device=mobile] #mutatorTag,html[data-device=mobile] #itemTip,html[data-device=mobile] #comboDisplay{zoom:.66}html[data-device=mobile] #perkChoice{zoom:.8}html[data-device=mobile] #hud{padding:8px 10px}html[data-device=mobile] .gear-key{display:none}html[data-device=mobile] #mapStage{inset:104px auto auto 8px;pointer-events:auto}html[data-device=mobile] #mapStage.full{right:auto;left:calc(50vw - var(--map-full) / 2);top:calc(50vh - var(--map-full) / 2);top:calc(50dvh - var(--map-full) / 2)}html[data-device=mobile] .spell-slot,html[data-device=mobile] #pcCards>*{pointer-events:auto}html[data-device=mobile] #perkChoice{pointer-events:auto}html[data-device=mobile] #titleFoot{font-size:11px;letter-spacing:1px}html[data-device=mobile] #titleFootLine{gap:0 14px}html[data-device=mobile] #titleFootLine a{display:inline-flex;align-items:center;min-height:44px;border-bottom:0;text-decoration:underline;text-decoration-color:#ffd98a66;text-underline-offset:4px}html[data-device=mobile] #titlePages{display:flex;flex:0 0 100%;gap:0 18px}html[data-device=mobile] #titlePages[hidden],html[data-device=mobile] #deviceNote{display:none}@media(orientation:landscape)and (max-height:520px){html[data-device=mobile] #titleTouch{display:none}}html[data-device=mobile] #bottomRow{justify-content:flex-start}html[data-device=mobile] #mapSlot{display:none}html[data-device=mobile] #msgPanel{max-width:315px}html[data-device=mobile] .pause-desktop{display:none}html[data-device=mobile] .pause-touch{display:inline}#homeNote{display:none;position:fixed;z-index:120;left:50%;top:calc(8px + env(safe-area-inset-top,0px));transform:translate(-50%);max-width:calc(100vw - 96px);align-items:center;gap:10px;padding:6px 8px 6px 14px;border:1px solid rgba(255,217,138,.5);border-radius:18px;background:#0c0a12d1;color:#ffe9b0;font:600 12px/1.3 Rajdhani,sans-serif;letter-spacing:.06em;pointer-events:auto}#homeNote.on{display:flex}#homeNoteClose{flex:none;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:#ffd98a2e;color:#ffe9b0;font:700 18px/1 Rajdhani,sans-serif;cursor:pointer}html[data-device=mobile] #titleInstall[hidden],.touch-only{display:none}html[data-device=mobile] .touch-only{display:block}#titleTouch{margin-top:2vh;max-width:min(92vw,640px);text-align:center;font-size:12px;line-height:1.5;color:#ffffff8c;text-shadow:0 1px 4px rgba(0,0,0,.9)}#titleTouch p{margin:2px 0}#titleTouch b{color:#d6c49ee6;font-weight:600}#gameOverRise{margin:14px auto 0;padding:12px 34px;cursor:pointer;font:700 16px/1 Rajdhani,sans-serif;letter-spacing:.28em;text-transform:uppercase;color:#1a1008;background:linear-gradient(180deg,#ffd882,#f0a83c);border:1px solid #ffd882;border-radius:3px}html[data-device=mobile] .go-restart,html[data-device=mobile] body.ending .touch-ui,html[data-device=mobile] body.ending .touch-tips{display:none}
