@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;500;600;700&family=Manrope:wght@400;500;600;700&display=swap');
:root{color-scheme:dark;--cyan:#8cecef;--gold:#e6c896}*{box-sizing:border-box}body{margin:0;background:#071522;color:#ecf7f6;font-family:Manrope,Arial,sans-serif;overflow:hidden}#world{position:fixed;inset:0;width:100%;height:100%;touch-action:none}#vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse,transparent 40%,#02111b90);box-shadow:inset 0 0 110px #020d1733}button{font:inherit;cursor:pointer;color:inherit;border:1px solid #cee8e53b;background:#0b263a99;transition:.2s}button:hover{border-color:var(--cyan);background:#24536b}button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}header{position:absolute;top:27px;left:35px;right:35px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.brand{font:600 22px Cinzel,Georgia,serif;letter-spacing:4px}.brand span{color:var(--gold)}.brand small{display:block;font:9px Manrope,Arial;letter-spacing:3.2px;margin-top:5px;color:#acbfcc}.topright{display:flex;gap:12px;align-items:center;font-size:11px;letter-spacing:2px}.topright button{pointer-events:auto;padding:10px;letter-spacing:0}#hud{display:none}.playercard{position:absolute;top:117px;left:36px;display:flex;gap:18px;align-items:center}.diamond{width:54px;height:54px;transform:rotate(45deg);border:1px solid #a4d6df77;display:grid;place-items:center;color:var(--cyan);font-size:30px;background:#132f4388}.stats{width:226px;font-size:13px}.stats>div:first-child{display:flex;justify-content:space-between;margin-bottom:9px}.stats small{display:block;font-size:10px;color:#b9d0db;text-align:right;margin:3px 0}.bar{height:6px;background:#08131bb0;overflow:hidden;border:1px solid #ffffff12}.bar i{display:block;width:100%;height:100%;background:#9ce5c9;transition:width .16s}.mana{height:4px}.mana i{background:#7fc4eb}.stamina{height:3px;margin-top:4px}.stamina i{background:#e7ce93}.quest{position:absolute;left:37px;top:238px;width:255px;border-left:2px solid #dfc091;padding-left:17px;text-shadow:0 2px 10px #001}.quest small{font-size:10px;letter-spacing:3px;color:var(--gold)}.quest h3{font-weight:500;font-size:16px;margin:9px 0}.quest p{font-size:12px;line-height:1.8;color:#c0d5db;margin:0 0 11px}.quest b{font-size:12px;font-weight:500;color:var(--gold)}.compass{position:absolute;right:37px;top:110px;display:flex;flex-direction:column;align-items:center;font-size:10px;color:var(--gold);gap:7px}.compass canvas{border:1px solid #c5d6d541;border-radius:50%;background:#0b263ba8}.compass small{letter-spacing:2px;font-size:9px}footer{position:absolute;bottom:25px;left:35px;right:35px;display:flex;align-items:end;justify-content:space-between;gap:20px}.help{font-size:9px;line-height:2.2;color:#e2dfcd;min-width:180px}.help span{color:#9cb1bc}.skills{display:flex;gap:9px}.skills button{position:relative;width:67px;height:80px;background:linear-gradient(#203c508a,#0d202ad9);border-bottom:2px solid #8cecef9a}.skills strong{display:block;font:30px Georgia;color:#b0f5f6;margin-bottom:6px}.skills span{display:block;font-size:9px;white-space:nowrap}.skills kbd{position:absolute;left:4px;top:-10px;font:10px Manrope;background:#112533;padding:2px 5px;border:1px solid #8ca4ae66}.skills em{position:absolute;inset:0;display:none;align-items:center;justify-content:center;font:22px Manrope;background:#071424bd}.skills .ultimate{border-color:var(--gold);width:85px}.ultimate strong{color:var(--gold)}.essence{text-align:right;min-width:165px}.essence b{display:block;font:30px Cinzel;color:var(--gold)}.essence span{display:block;font-size:9px;letter-spacing:2px}.essence small{display:block;font-size:9px;color:#9db7c2;margin-top:7px}#toast{position:absolute;bottom:139px;left:50%;transform:translateX(-50%);text-align:center;width:430px;max-width:80vw;transition:opacity .5s;text-shadow:0 2px 6px #001}#toast span{font-size:10px;letter-spacing:3px;color:var(--cyan)}#toast p{font-size:13px;margin:8px}#announcement{position:absolute;top:30%;width:100%;text-align:center;font:28px Cinzel,Georgia;color:var(--gold);letter-spacing:7px;text-shadow:0 0 30px #000;pointer-events:none}#bossbar{position:absolute;top:100px;left:50%;transform:translateX(-50%);width:38%;text-align:center}#bossbar small{font-size:8px;letter-spacing:4px;color:var(--gold)}#bossbar h2{font:17px Cinzel;letter-spacing:4px;margin:8px}#bossbar h2 span{font-size:9px;letter-spacing:2px}#bossbar .bar i{background:linear-gradient(90deg,#ad7189,#dfb1ba)}#bossbar .break{height:3px;margin-top:4px}#bossbar .break i{background:var(--gold)}#phase{font-size:10px;letter-spacing:4px}#overlay{position:absolute;inset:0;background:linear-gradient(90deg,#031322eb,#06192773 46%,transparent 75%);display:flex;align-items:center;padding:9vw}.intro{margin-top:35px}.eyebrow{letter-spacing:4px;color:var(--gold);font-size:10px}.intro h1{font:500 clamp(42px,6vw,86px)/1.04 Cinzel,Georgia;letter-spacing:8px;margin:25px 0}.intro h1 span{color:var(--gold);letter-spacing:12px}.rule{width:64px;height:1px;background:var(--gold);margin:28px 0}.intro p{font-size:15px;line-height:1.9;color:#bbd0d9}.primary{display:block;padding:17px 24px;min-width:270px;background:#dcd3b5;color:#152737;border:0;font-weight:700;font-size:11px;letter-spacing:2px;margin-top:27px}.primary span{margin-left:22px}.primary:hover{background:#f5e9c9}.secondary{padding:12px 20px;background:transparent;display:block;margin-top:12px;width:100%;font-size:12px}.intro>small{font-size:10px;line-height:1.9;color:#839faa;display:block;margin-top:22px}.chapter{position:absolute;bottom:70px;right:6vw;text-align:right}.chapter small{font-size:9px;letter-spacing:3px;color:var(--gold)}.chapter h2{font:24px/1.6 Cinzel,Georgia}.chapter p{font-size:11px;color:#a2bbc7}dialog{width:520px;max-width:92vw;background:#0d2434f5;color:#eaf8f7;border:1px solid #c3d3d34d;padding:35px;box-shadow:0 20px 120px #0009}dialog::backdrop{background:#02111cb3;backdrop-filter:blur(7px)}dialog>small{letter-spacing:3px;color:var(--gold);font-size:10px}dialog h2{font:26px Cinzel}dialog p{font-size:13px;line-height:1.8;color:#bdd3df}dialog .primary{width:100%}#upgrades button{width:100%;text-align:left;padding:13px;margin:5px 0;font-size:12px}#upgrades button:disabled{opacity:.5;cursor:default}#damage{position:absolute;inset:0;pointer-events:none}.dmg{position:absolute;color:#fff4d5;font:bold 23px Georgia;text-shadow:0 2px 3px #152737;animation:float 800ms forwards}@keyframes float{to{transform:translateY(-60px);opacity:0}}#mobile{display:none}body.playing #overlay{display:none}body.playing #hud{display:block}@media(max-width:1000px){.help{display:none}footer{justify-content:center}.essence{position:absolute;right:0;bottom:110px}.chapter{display:none}}@media(max-width:650px){header{top:18px;left:18px;right:18px}.brand{font-size:15px}.brand small{font-size:7px}.topright>span{display:none}.playercard{top:89px;left:23px;gap:13px}.diamond{width:32px;height:32px;font-size:20px}.stats{width:150px}.quest{left:18px;top:179px;width:180px}.quest p{font-size:10px}.compass{right:16px;top:90px}.compass canvas{width:85px;height:85px}.skills{gap:5px}.skills button{width:45px;height:63px}.skills span{font-size:7px}.skills strong{font-size:24px}.skills .ultimate{width:61px}footer{bottom:20px;left:12px;right:12px}#toast{bottom:105px}#bossbar{top:270px;width:75%}#mobile{position:absolute;bottom:140px;left:20px;right:20px;justify-content:space-between;pointer-events:none}body.playing #mobile{display:flex}#mobile button{pointer-events:auto;touch-action:none;padding:12px}.dpad{display:grid;grid-template-columns:repeat(3,40px);gap:3px}.dpad button:first-child{grid-column:2}.dpad button:nth-child(2){grid-column:1}.intro h1{letter-spacing:4px}.intro h1 span{letter-spacing:6px}.essence{display:none}#announcement{font-size:19px;letter-spacing:3px}}
[hidden]{display:none!important}
/* Icikiwir update: responsive touch controls, quest journal and readable HUD. */
body{touch-action:none;overscroll-behavior:none}button{-webkit-tap-highlight-color:transparent;user-select:none;touch-action:none;min-height:40px}#skillflash{position:fixed;inset:0;pointer-events:none;opacity:0;z-index:2}.brand{letter-spacing:2px}.intro h1{font-size:clamp(40px,5.6vw,78px);letter-spacing:4px}.intro h1 span{letter-spacing:9px}.topright{gap:8px}.topright button{font-size:10px}#sidequest{font-size:11px;line-height:1.65;color:#b5d6ff;margin-top:17px;border-top:1px solid #b5d6ff30;padding-top:12px}.journalheading{font:17px Cinzel;color:var(--gold);margin-top:26px}.questrow{border:1px solid #8dafbf38;padding:14px;margin:10px 0;background:#17334455}.questrow b{font-size:13px}.questrow p{font-size:12px;margin:6px 0}.questrow small{color:var(--gold);font-size:11px}dialog{max-height:85dvh;overflow-y:auto;overscroll-behavior:contain;touch-action:pan-y}#upgrades button{min-height:44px;touch-action:manipulation}#joystick{position:relative;width:126px;height:126px;border-radius:50%;border:1px solid #d3f7f54f;background:radial-gradient(circle,#36566b44,#0d253888);pointer-events:auto;touch-action:none;box-shadow:inset 0 0 20px #12263766}#joystick small{position:absolute;bottom:10px;width:100%;text-align:center;font-size:8px;letter-spacing:2px;color:#c2d4da;pointer-events:none}#stick{position:absolute;left:50%;top:50%;width:49px;height:49px;border-radius:50%;transform:translate(-50%,-50%);background:#a5d2d65c;border:1px solid #ccfcf799;box-shadow:0 3px 14px #0017;pointer-events:none}#mobilejump{align-self:end;border-radius:50%;width:52px;height:52px;font-size:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:0!important}#mobilejump span{font-size:8px}.skills button:active{background:#4c899e;transform:scale(.94)}
@media(pointer:coarse),(max-width:760px){body.playing #mobile{display:flex;position:absolute;left:max(20px,env(safe-area-inset-left));bottom:max(27px,env(safe-area-inset-bottom));right:auto;align-items:end;gap:13px;pointer-events:none}#mobilejump{pointer-events:auto}header{top:max(12px,env(safe-area-inset-top));left:max(16px,env(safe-area-inset-left));right:max(14px,env(safe-area-inset-right))}.brand{font-size:16px;letter-spacing:1px}.brand small{font-size:7px;letter-spacing:1.7px}.topright{gap:5px}.topright>span{display:none}.topright button{padding:8px;font-size:9px;min-height:36px}.playercard{top:82px;left:21px;gap:12px}.diamond{width:32px;height:32px;font-size:20px}.stats{width:155px}.quest{top:168px;left:17px;width:190px}.quest small{font-size:8px}.quest h3{font-size:13px;margin:5px 0}.quest p{font-size:10px;line-height:1.6}.quest b{font-size:10px}#sidequest{font-size:10px;margin-top:8px;padding-top:8px}.compass{top:79px;right:15px}.compass canvas{width:82px;height:82px}.compass small{font-size:8px}.compass>span{font-size:8px}footer{left:auto;right:max(18px,env(safe-area-inset-right));bottom:max(24px,env(safe-area-inset-bottom));display:block;width:auto}.help,.essence{display:none}.skills{display:grid;grid-template-columns:repeat(3,57px);gap:13px 8px}.skills button,.skills .ultimate{width:57px;height:61px;border-radius:13px;background:#0b253cc4}.skills button[data-action=attack]{border:2px solid #b2edf0;background:#2d617eb5}.skills strong{font-size:25px;margin-bottom:4px}.skills span{font-size:8px}.skills kbd{font-size:8px;top:-8px;left:5px}.skills button em{border-radius:12px}#toast{bottom:188px;width:330px;font-size:11px}#toast p{font-size:11px}#bossbar{top:163px;width:52%;left:auto;right:15px;transform:none}#bossbar h2{font-size:13px;letter-spacing:2px}#bossbar h2 span{display:block;margin-top:4px;font-size:8px}#bossbar small{font-size:7px}#announcement{top:42%;font-size:19px;letter-spacing:2px}.intro{margin-top:50px}.primary{min-width:230px}.intro>small{font-size:10px;max-width:240px}.chapter{display:none}dialog{padding:24px;max-height:86dvh}}
@media(max-width:450px){.brand small{display:none}.brand{font-size:13px;max-width:104px;line-height:1.5}.topright button{font-size:8px;padding:6px}#fullscreen{display:none}.quest{width:170px}.quest p{display:none}.skills{grid-template-columns:repeat(3,49px);gap:12px 6px}.skills button,.skills .ultimate{width:49px;height:57px}.skills span{font-size:7px}#joystick{width:103px;height:103px}body.playing #mobile{left:13px;gap:7px}#mobilejump{width:39px;height:39px}footer{right:12px}#toast{bottom:180px}.intro h1{font-size:42px;letter-spacing:1px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){.playercard{top:65px}.quest{top:136px;width:185px}.quest p{display:none}.compass{top:65px}.compass canvas{width:62px;height:62px}.compass small{display:none}#bossbar{top:63px;right:30%;width:34%}#toast{bottom:32px;max-width:32vw}#toast p{font-size:10px}#announcement{font-size:17px}.intro{margin-top:20px}.intro h1{font-size:39px;margin:15px 0}.intro .rule{margin:14px 0}.intro p{font-size:12px;line-height:1.5}.intro>small{margin-top:12px}.intro .primary{margin-top:15px;padding:13px 20px}.eyebrow{font-size:8px}.compass>span{display:none}#sidequest{margin-top:5px;padding-top:5px}.skills button,.skills .ultimate{height:54px}#joystick{width:108px;height:108px}}
#closemenu{position:sticky;float:right;top:0;z-index:4;margin:-12px -10px 0 0;width:38px;height:38px;min-height:38px;font-size:23px;background:#102b3f;border:1px solid #a3c1ce55;border-radius:8px}body.playing .topright{pointer-events:auto}

.touchutility{display:flex;flex-direction:column;gap:8px;align-self:end}#mobilelock{pointer-events:auto;display:flex;align-items:center;justify-content:center;flex-direction:column;border-radius:50%;width:52px;height:52px;font-size:21px;padding:0!important}#mobilelock span{font-size:8px}@media(max-width:450px){#mobilelock{width:39px;height:39px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){.quest>small{display:none}.quest h3{font-size:12px;line-height:1.3}.quest #sidequest{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:9px;line-height:16px;max-width:176px}}
#royaltools{position:absolute;right:35px;bottom:132px;display:flex;gap:7px}#royaltools button{min-height:40px;padding:9px 12px;font-size:11px;background:#0d293edb;border-color:#c5cbad66}#royaltools #royalcast{color:#ffdfa3;min-width:138px}#interact{position:absolute;bottom:228px;left:50%;transform:translateX(-50%);min-height:44px;padding:11px 20px;border-color:#dfc895;background:#102d41ed;color:#f7dfae;font-size:13px;z-index:4}.dialogclose{position:sticky;float:right;top:0;z-index:4;margin:-12px -10px 0 0;width:40px;height:40px;font-size:23px;background:#102b3f;border:1px solid #a3c1ce55;border-radius:8px}.realmchoice{display:block;width:100%;text-align:left;padding:14px 16px;margin:10px 0;font-size:15px;line-height:1.4;border:1px solid #9ab6bd55;background:#173448}.realmchoice small{display:block;color:#bdced6;font-size:12px;line-height:1.65;margin-top:6px}.realmchoice:disabled{opacity:.55;cursor:default}#realmMenu p{font-size:14px;line-height:1.7}.stats>div:first-child b{font-size:12px}#realmMenu{width:580px}#royaltools button:active{background:#356077}
@media(pointer:coarse),(max-width:760px){#royaltools{right:14px;left:14px;bottom:181px;justify-content:center;gap:5px}#royaltools button{min-height:44px;padding:6px 8px;font-size:10px}#royaltools #royalcast{min-width:110px}#interact{bottom:239px;font-size:12px;padding:10px 13px;max-width:88vw;white-space:nowrap}#toast{bottom:295px;max-width:85vw}#realmMenu{max-width:94vw;padding:23px}.realmchoice{font-size:14px;min-height:48px}.realmchoice small{font-size:12px}#realmMenu p{font-size:14px}.topright button{min-height:40px}#announcement{top:40%;font-size:17px}}
@media(max-width:390px){#royaltools{left:8px;right:8px;gap:4px}#royaltools button{font-size:9px;padding:5px 7px}#royaltools #royalcast{min-width:101px}}
@media(orientation:landscape) and (max-height:600px) and (max-width:1100px){#royaltools{bottom:158px;left:auto;right:15px;gap:5px}#royaltools button{font-size:9px;padding:6px 8px;min-height:38px}#royaltools #royalcast{min-width:108px}#interact{bottom:103px;max-width:34vw;font-size:11px;padding:8px 10px;min-height:40px}#toast{bottom:30px;max-width:30vw}#announcement{top:33%;font-size:15px}#realmMenu{max-height:92dvh}.quest{max-width:165px}.quest #sidequest{max-width:156px}.topright button{min-height:36px}.realmchoice{margin:7px 0}#realmContent p{margin:10px 0}}
@media(prefers-reduced-motion:reduce){button,.bar i,#toast{transition:none}.dmg{animation:none}#skillflash{display:none}}
