:root{color-scheme:dark;--gold:#d5bb7e;--ink:#101b16;--text:#f0ede2;--muted:#b1b9ab;--border:#d9c69238;font-family:Georgia,'Times New Roman',serif;background:var(--ink);color:var(--text)}*{box-sizing:border-box}html,body,main{width:100%;height:100%;margin:0;overflow:hidden}body{position:fixed;inset:0}button{font:inherit;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,canvas:focus-visible{outline:2px solid var(--gold);outline-offset:4px}#game{position:relative;isolation:isolate;height:100dvh}#world{display:block;width:100%;height:100%;touch-action:none;outline:none;background:#132119;cursor:crosshair}.vignette{position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 0 130px 20px #0007;background:linear-gradient(#030b0b80,transparent 26%,transparent 75%,#020605a3)}.topbar{position:absolute;top:max(28px,env(safe-area-inset-top));left:max(34px,env(safe-area-inset-left));right:max(34px,env(safe-area-inset-right));display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.wordmark{text-shadow:0 2px 18px #000}.eyebrow{font:12px/1.5 system-ui,sans-serif;letter-spacing:.25em;font-weight:500;color:var(--gold)}h1{font-size:28px;font-weight:400;letter-spacing:.02em;margin:5px 0 7px}.build-label{font:12px/1.5 system-ui,sans-serif;letter-spacing:.11em;color:#d0d5c7b8}nav{display:flex;gap:8px;pointer-events:auto}.icon-button{width:44px;height:44px;border:1px solid var(--border);background:#0c1715c7;backdrop-filter:blur(10px);font-size:23px;display:grid;place-items:center;border-radius:3px;transition:background .2s,border-color .2s}.icon-button:hover{background:#21372de8;border-color:var(--gold)}.icon-button svg{width:22px;height:22px}.map-frame{position:absolute;right:max(34px,env(safe-area-inset-right));top:max(96px,calc(env(safe-area-inset-top) + 68px));width:172px;padding:7px;border:1px solid var(--border);background:#0a1516af;box-shadow:0 8px 22px #0003;pointer-events:none}.map-heading{display:flex;justify-content:space-between;gap:8px;font:12px/1.5 system-ui,sans-serif;color:#cfcdba;margin:2px 0 6px}.map-heading span:first-child{font-size:12px}#minimap{display:block;width:100%;height:auto;opacity:.9}.welcome{position:absolute;top:29%;left:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:22px;pointer-events:none;white-space:nowrap;text-align:center;text-shadow:0 3px 20px #000;transition:opacity 1.8s;opacity:0}.welcome.show{opacity:1}.welcome p{margin:5px 0;font-size:32px;font-weight:400;letter-spacing:.04em}.fine-line{width:75px;height:1px;background:linear-gradient(90deg,transparent,#d7c19190)}.fine-line:last-child{transform:rotate(180deg)}.bottom-hint{position:absolute;bottom:max(29px,calc(env(safe-area-inset-bottom) + 18px));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:12px;color:#e1e1d4;font:14px/1.5 system-ui,sans-serif;text-shadow:0 2px 7px #000;white-space:nowrap;pointer-events:none;background:#09131090;border:1px solid #b2b79026;border-radius:3px;padding:12px 17px;backdrop-filter:blur(6px)}.pointer-symbol{color:var(--gold);font-size:23px}.status{position:absolute;bottom:100px;left:50%;transform:translateX(-50%);font:14px system-ui,sans-serif;color:#f0d7a4;background:#102016dc;padding:9px 14px;border-radius:3px;pointer-events:none;opacity:0;transition:opacity .25s;text-align:center;max-width:90%}.status.show{opacity:1}.loading{position:absolute;inset:0;background:#101b16;display:flex;justify-content:center;align-items:center;flex-direction:column;z-index:10;transition:opacity .65s}.loading.done{opacity:0;pointer-events:none}.loading-mark{font-size:53px;color:var(--gold);animation:breathe 1.4s infinite alternate}.loading p{font-size:23px;margin:20px 0 11px}.loading #load-detail{font:14px system-ui,sans-serif;color:var(--muted)}#retry{margin-top:22px;padding:11px 20px;background:#3d4936;border:1px solid var(--gold)}dialog{padding:0;max-width:min(450px,calc(100% - 36px));border:1px solid #bba76e66;color:var(--text);background:#12211cf5;border-radius:4px;box-shadow:0 24px 90px #0009}dialog::backdrop{background:#020806a1;backdrop-filter:blur(6px)}.dialog-inner{padding:32px}h2{font-weight:400;font-size:31px;margin:10px 0 22px}.dialog-inner p{font:16px/1.6 system-ui,sans-serif;color:#d3d7cd}.dialog-inner .note{color:#a8b4a7;font-size:14px;border-top:1px solid var(--border);padding-top:17px}.primary-button{padding:15px 23px;background:#bdac7b;color:#172119;border:1px solid #e4d6a6;font:600 16px system-ui,sans-serif;width:100%;border-radius:2px}.primary-button:hover{background:#d6c38c}.pause-overlay{position:absolute;inset:0;background:#06130fa6;backdrop-filter:blur(5px);display:grid;place-items:center;text-align:center;z-index:5}.pause-overlay[hidden]{display:none}.pause-overlay>div{padding:30px}button[hidden]{display:none}@keyframes breathe{to{opacity:.45;transform:scale(.93)}}@media(max-width:600px){.topbar{top:max(20px,env(safe-area-inset-top));left:18px;right:18px}h1{font-size:23px}.build-label{font-size:12px;letter-spacing:0;display:block;max-width:180px}.eyebrow{font-size:12px}nav{gap:4px}.map-frame{width:130px;right:18px;top:max(89px,calc(env(safe-area-inset-top) + 62px));padding:5px}.map-heading span:first-child{display:none}.map-heading{justify-content:flex-end;margin:0 0 3px}.welcome{top:33%;gap:14px}.welcome p{font-size:27px}.fine-line{width:30px}.bottom-hint{font-size:14px;gap:7px;padding:9px 12px;white-space:normal;width:max-content;max-width:calc(100% - 30px)}.vignette{box-shadow:inset 0 0 75px 10px #0006}}@media(max-width:370px){h1{font-size:20px}.icon-button{width:40px;height:44px}.topbar{left:12px;right:12px}.map-frame{right:12px}.build-label{max-width:150px}.bottom-hint{font-size:13px}}@media(max-height:500px){.topbar{top:max(14px,env(safe-area-inset-top));left:max(22px,env(safe-area-inset-left));right:max(22px,env(safe-area-inset-right))}h1{font-size:22px;margin:2px 0}.build-label{display:none}.map-frame{width:110px;top:69px;right:max(22px,env(safe-area-inset-right))}.map-heading span:first-child{display:none}.map-heading{justify-content:flex-end}.welcome{top:26%}.welcome p{font-size:25px}.bottom-hint{bottom:17px;padding:7px 12px}.dialog-inner{padding:20px}h2{margin:6px 0 10px;font-size:25px}}@media(prefers-reduced-motion:reduce){.loading-mark{animation:none}.welcome{transition:none}}

.hero-health{position:absolute;top:max(132px,calc(env(safe-area-inset-top) + 113px));left:max(34px,env(safe-area-inset-left));width:188px;padding:10px 12px;background:#0b1714c9;border:1px solid var(--border);pointer-events:none}.hero-health>div{display:flex;justify-content:space-between;font:12px/1.5 system-ui,sans-serif;letter-spacing:.05em;color:#e4d7b6}.hero-health progress{appearance:none;display:block;width:100%;height:7px;margin-top:7px;border:0;border-radius:2px;background:#281c1b;overflow:hidden}.hero-health progress::-webkit-progress-bar{background:#281c1b}.hero-health progress::-webkit-progress-value{background:linear-gradient(90deg,#793931,#cc6650)}.hero-health progress::-moz-progress-bar{background:#ad5343}.bottom-hint{white-space:normal;text-align:center;font-size:14px;line-height:1.5}.bottom-hint strong{font-weight:500;color:#f0dfb6}.dice-roll{position:absolute;bottom:max(112px,calc(env(safe-area-inset-bottom) + 104px));left:50%;transform:translateX(-50%);display:flex;gap:10px;align-items:center;padding:8px 13px;border:1px solid #ceb77755;background:#10201aec;font:13px/1.6 system-ui,sans-serif;color:#f1e4c6;pointer-events:none;white-space:nowrap}.dice-roll[hidden]{display:none}.dice-label{font:600 12px system-ui,sans-serif;color:var(--gold);border:1px solid #c9ac6370;padding:4px}.status{bottom:160px}.secondary-button{width:100%;margin-top:12px;padding:12px;border:1px solid var(--border);background:transparent;font:15px system-ui,sans-serif;color:var(--text)}.secondary-button[hidden]{display:none}#battle-result h2{color:var(--gold)}@media(max-width:600px){.hero-health{top:max(116px,calc(env(safe-area-inset-top) + 96px));left:18px;width:158px;padding:8px 10px}.bottom-hint{width:max-content;max-width:calc(100% - 28px);padding:8px 12px;font-size:13px}.dice-roll{font-size:12px;gap:7px;padding:7px 10px}.welcome{top:34%}}@media(max-height:500px){.hero-health{top:94px;left:max(22px,env(safe-area-inset-left));width:160px}.bottom-hint{bottom:12px}.dice-roll{bottom:90px}.status{bottom:140px}}

.battle-subtitle{position:absolute;left:50%;top:50%;bottom:auto;transform:translateX(-50%);width:260px;max-width:calc(100% - 24px);margin:0;padding:0;border:0;background:none;color:#fff4db;text-align:center;font:600 19px/1.3 Georgia,serif;letter-spacing:.01em;text-shadow:0 2px 3px #000,0 0 7px #000,1px 0 2px #000,-1px 0 2px #000;pointer-events:none;z-index:3}.battle-subtitle[hidden]{display:none}.speaking .bottom-hint,.speaking .dice-roll,.speaking .status,.speaking .welcome{visibility:hidden}.voice-retry{position:absolute;bottom:max(35px,calc(env(safe-area-inset-bottom) + 20px));left:50%;transform:translateX(-50%);color:#f3d9a4;background:transparent;border:0;text-shadow:0 2px 5px #000;font:14px system-ui,sans-serif;padding:10px;z-index:3}.voice-retry[hidden]{display:none}@media(max-width:600px){.battle-subtitle{font-size:18px}}@media(max-height:500px){.battle-subtitle{font-size:18px}.voice-retry{bottom:10px}}

.audio-control{position:absolute;left:max(34px,env(safe-area-inset-left));top:max(204px,calc(env(safe-area-inset-top) + 185px));display:flex;align-items:center;gap:7px;min-height:44px;padding:9px 12px;border:1px solid var(--border);border-radius:3px;background:#0c1715d9;color:#e6d5af;font:12px system-ui,sans-serif;z-index:4}.audio-control svg{width:18px;height:18px}.audio-control.sound-on{color:#b8c9aa}.audio-control:hover{border-color:var(--gold)}@media(max-width:600px){.audio-control{left:18px;top:max(180px,calc(env(safe-area-inset-top) + 160px))}}@media(max-height:500px){.audio-control{left:max(22px,env(safe-area-inset-left));top:164px}}

.enemy-label{position:absolute;transform:translate(-50%,-100%);pointer-events:none;text-align:center;z-index:2;font:12px/1.5 system-ui,sans-serif;color:#efddc7;text-shadow:0 2px 5px #000;width:185px}.enemy-label[hidden]{display:none}.enemy-label progress{display:block;appearance:none;width:98px;height:5px;border:1px solid #bd986766;margin:5px auto 0;background:#201916}.enemy-label progress::-webkit-progress-bar{background:#241d18}.enemy-label progress::-webkit-progress-value{background:#b86949}.enemy-label progress::-moz-progress-bar{background:#b86949}.combat-number{position:absolute;transform:translate(-50%,-100%);font:bold 17px system-ui,sans-serif;text-shadow:0 2px 4px #000;pointer-events:none;white-space:nowrap;z-index:3}.light-version{color:var(--gold);font:14px system-ui,sans-serif;margin-top:22px}.light-version[hidden]{display:none}

.zombie-label{width:110px;font-size:11px;color:#d6dfbd}.zombie-label progress{width:64px;height:4px}.zombie-label.selected{color:#f6d99b}.zombie-label.selected progress{border-color:#efd28c}.cinematic .bottom-hint,.cinematic .dice-roll,.cinematic .welcome{visibility:hidden}

.cinematic .map-frame,.cinematic .hero-health{opacity:0;transition:opacity .25s}.cinematic .vignette{box-shadow:inset 0 0 60px 8px #0004;background:linear-gradient(#030b0b55,transparent 22%,transparent 80%,#02060566)}

.chest-label{position:absolute;transform:translate(-50%,-100%);padding:8px 12px;min-height:44px;background:#142017d9;border:1px solid #d2ad6480;border-radius:3px;color:#ffe0a0;text-shadow:0 1px 3px #000;font:600 13px system-ui,sans-serif;z-index:3;white-space:nowrap}.chest-label:hover{border-color:#ffe0a0;background:#243224}.chest-label[hidden]{display:none}.hero-health .equipment-summary{font:12px/1.5 system-ui,sans-serif;letter-spacing:0;color:#efcd83;padding-top:6px;display:block}.hero-health .equipment-summary[hidden]{display:none}.has-reinforced-trousers .audio-control{transform:translateY(24px)}.loot-dialog{text-align:center;max-height:calc(100dvh - 28px);overflow-y:auto}.loot-dialog .dialog-inner{padding:24px}.loot-dialog canvas{display:block;width:140px;height:140px;margin:14px auto 0}.loot-dialog h2{margin:12px 0;color:#f3d394}.loot-dialog .loot-bonus{color:#ebc87f;font-weight:600;letter-spacing:.1em;margin:0}.loot-dialog #loot-defense{font-size:14px;margin:12px 0 22px}@media(max-height:500px){.loot-dialog canvas{width:76px;height:76px;margin-top:8px}.loot-dialog h2{font-size:24px;margin:8px 0}.loot-dialog .dialog-inner{padding:16px}.loot-dialog #loot-defense{margin:8px 0 12px}}

.journey-panel{position:absolute;bottom:max(20px,calc(env(safe-area-inset-bottom) + 12px));left:50%;transform:translateX(-50%);display:grid;grid-template-columns:1.3fr 1.3fr .9fr;gap:8px;width:min(520px,calc(100% - 28px));z-index:4}.journey-panel[hidden],.journey-tile[hidden]{display:none}.journey-tile{display:flex;align-items:center;justify-content:center;gap:9px;min-height:72px;border:1px solid #c5ac6c80;border-radius:5px;background:linear-gradient(150deg,#233e35f5,#0d1d1af5);box-shadow:0 4px 18px #0007;padding:10px 12px;text-align:left;font:16px/1.25 system-ui,sans-serif}.journey-tile:hover{border-color:#f0d48c;background:#29463e}.journey-tile strong,.journey-tile small{display:block}.journey-tile strong{font-size:16px;font-weight:600}.journey-tile small{font-size:14px;color:#d4c292;margin-top:4px}.tile-icon{font-size:26px;color:#dfbd72}.attack-tile{flex-direction:column;gap:2px;background:linear-gradient(#654735,#392c24)}.journey-panel:has(.attack-tile[hidden]){grid-template-columns:1fr 1fr}.has-journey-panel .bottom-hint{display:none}.has-journey-panel .dice-roll{bottom:max(168px,calc(env(safe-area-inset-bottom) + 160px))}.has-journey-panel .status{bottom:max(222px,calc(env(safe-area-inset-bottom) + 212px))}.mentoring .map-frame,.mentoring .hero-health{opacity:0}.mentor-subtitle{font-size:18px;width:310px;z-index:3}.journey-dialog{width:min(640px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);overflow-y:auto}.journey-dialog .dialog-inner{padding:24px}.journey-dialog h2{margin:8px 0 16px}.guide-caption:empty{display:none}.journey-dialog .guide-caption{color:#ffe4b4;border-left:2px solid #c5a76b;padding-left:12px;font-size:15px;margin:10px 0 18px}.defense-summary{color:#e6ca89!important;margin:0 0 16px}.inventory-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 22px}.item-card{display:flex;flex-direction:column;align-items:stretch;padding:14px;border:1px solid #b5aa7b40;background:#0b1814;border-radius:5px;text-align:center}.item-card.equipped{border-color:#d7bd76;background:#23342a}.item-card h3{font-size:19px;font-weight:400;margin:8px 0}.item-card p{font-size:14px;line-height:1.45;margin:6px 0}.item-card .item-bonus{font-weight:600;color:#e9cf91}.trouser-art{width:130px;max-width:100%;aspect-ratio:1;background-image:url('./assets/textures/inventory-trousers.webp');background-size:200% 100%;background-repeat:no-repeat;background-position:0 0;align-self:center}.trouser-art.reinforced{background-position:100% 0}.equip-button{min-height:46px;margin-top:auto;padding:10px;border:1px solid #ceb36a;background:#bda76d;color:#14201b;border-radius:3px;font:600 15px system-ui,sans-serif}.equip-button:disabled{color:#d9c28e;background:transparent;border-color:#b8a46b60;cursor:default}.attack-options{margin:0;padding:0;border:0;display:grid;gap:10px}.attack-options legend{font:14px system-ui,sans-serif;color:#b7c5b6;margin-bottom:12px}.mode-option{display:flex;gap:13px;align-items:center;min-height:80px;padding:15px;border:1px solid #ad9b6944;border-radius:5px;background:#0a1915;cursor:pointer}.mode-option:has(input:checked){background:#273c2e;border-color:#d7bd76}.mode-option input{accent-color:#d7bd76;width:20px;height:20px;flex-shrink:0}.mode-option strong,.mode-option small{display:block;font:600 17px/1.35 system-ui,sans-serif}.mode-option small{font-size:15px;font-weight:400;color:#c8d0c1;margin-top:5px}.mode-option:focus-within{outline:2px solid #e5d091;outline-offset:3px}@media(max-width:400px){.journey-panel{gap:5px}.journey-tile{padding:8px;gap:5px}.journey-tile strong{font-size:14px}.journey-tile small{font-size:14px}.journey-tile .tile-icon{font-size:22px}.journey-dialog .dialog-inner{padding:17px}.inventory-grid{gap:8px}.item-card{padding:10px}.item-card h3{font-size:18px}.trouser-art{width:110px}}@media(max-height:500px){.journey-tile{min-height:54px;padding:7px 12px}.journey-panel{bottom:max(10px,env(safe-area-inset-bottom))}.trouser-art{width:78px}.journey-dialog .dialog-inner{padding:18px}.journey-dialog h2{font-size:26px}}

.journey-panel{padding:12px;border:1px solid #d6bb78;border-radius:8px;background:linear-gradient(145deg,#23372ef7,#091815f7);box-shadow:0 5px 28px #0009;animation:options-arrive .55s ease-out}.journey-panel-heading{grid-column:1/-1;padding:0 2px 3px;font:14px/1.3 system-ui,sans-serif}.journey-panel-heading strong{display:block;color:#f0dba4;font-size:16px}.journey-panel-heading small{display:block;margin-top:3px;color:#c7cebf;font-size:12px}.journey-tile{min-width:0}.journey-tile strong{overflow-wrap:normal}@keyframes options-arrive{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}@media(prefers-reduced-motion:reduce){.journey-panel{animation:none}}@media(max-width:400px){.journey-panel{padding:9px}.journey-tile{flex-direction:column;text-align:center;gap:3px}.journey-tile small{font-size:12px}}

/* The world map remains available before and after the mentor. */
.map-frame{pointer-events:auto}.open-world-map{display:block;width:100%;border:0;background:none;padding:0;text-align:left}.open-world-map strong{display:block;font:600 14px/1.4 system-ui,sans-serif;color:#e5d097;margin-top:7px}.open-world-map small{display:block;font:12px/1.35 system-ui,sans-serif;color:#c0ccba;margin-top:3px}.world-map-dialog{width:min(920px,calc(100% - 24px));max-width:none;max-height:calc(100dvh - 24px);overflow:auto;padding:24px;border:1px solid #a99561;background:#11221e}.world-map-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.world-map-header h2{font-size:30px;margin:6px 0}.world-map-header p{font:14px system-ui,sans-serif;margin:8px 0;color:#ced6c5}.map-instruction{font:15px/1.5 system-ui,sans-serif;color:#e4d7b4}.world-map-body{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(215px,1fr);gap:18px;align-items:start}#world-map-canvas{display:block;width:100%;aspect-ratio:1;border:1px solid #a28b5355;border-radius:5px;cursor:crosshair;touch-action:manipulation}.region-destinations{display:grid;gap:10px}.region-destination{min-height:69px;padding:13px 15px;border:1px solid #b2a37755;border-left:4px solid var(--region-color);border-radius:4px;background:#1c332b;text-align:left;font:15px/1.4 system-ui,sans-serif}.region-destination:hover{background:#304b3b;border-color:#dcc991}.region-destination strong,.region-destination span{display:block}.region-destination strong{font-size:14px;color:#f0dfb9}.region-destination span{margin-top:5px;color:#cdd7c6}@media(max-width:600px){.world-map-dialog{padding:16px}.world-map-body{grid-template-columns:1fr}.region-destinations{grid-template-columns:1fr 1fr;gap:8px}.region-destination{min-height:75px;padding:10px}.region-destination:last-child{grid-column:1/-1}.world-map-header h2{font-size:27px}.wordmark h1{font-size:23px;max-width:190px}.map-frame{width:138px}}@media(max-height:500px){.world-map-dialog{padding:14px}.world-map-body{grid-template-columns:minmax(0,1fr) minmax(210px,1fr)}#world-map-canvas{max-height:280px;width:auto;max-width:100%}.world-map-header h2{font-size:24px}}

@media(max-width:360px){.map-frame{width:118px}.wordmark h1{max-width:155px;font-size:21px}}

.citadel-quest-panel{position:absolute;left:22px;top:260px;width:215px;padding:13px;background:#101d2aed;border:1px solid #8a9caf66;border-left:3px solid #8bdcd7;border-radius:5px;font:14px/1.4 system-ui,sans-serif;box-shadow:0 6px 24px #0005}.citadel-quest-panel[hidden]{display:none}.citadel-quest-panel strong{display:block;color:#f1dfac;font:19px/1.3 Georgia,serif;margin:4px 0}.citadel-quest-panel p{margin:8px 0 10px}.citadel-quest-panel button{min-height:44px;width:100%;border:1px solid #a7bcb85c;background:#263c46;border-radius:3px;font:600 14px system-ui,sans-serif}.citadel-quest-panel .eyebrow{font-size:12px}.citadel-quest-panel progress{width:100%;height:7px;accent-color:#e18c70;display:block;margin-top:5px}#citadel-alert-wrap{margin-top:10px;font-size:12px;color:#b7ddd9}#citadel-alert-wrap[hidden]{display:none}.toggle-cloak{position:absolute;right:22px;bottom:250px;min-height:48px;padding:12px 17px;border:1px solid #97dde1;border-radius:5px;background:#17313eea;color:#d6ffff;font:600 14px system-ui,sans-serif;box-shadow:0 0 18px #79c8e133}.toggle-cloak[aria-pressed=true]{background:#31496ce8;color:#fff;box-shadow:0 0 24px #8bbeef66}.toggle-cloak[hidden]{display:none}.citadel-npc-name{position:absolute;transform:translate(-50%,-100%);padding:5px 9px;background:#121c28bf;border:1px solid #a6b3b64d;border-radius:3px;white-space:nowrap;font:13px system-ui,sans-serif;pointer-events:none;color:#e8e1cc}.citadel-dialogue{width:285px;max-width:calc(100% - 24px);font-size:16px;z-index:4}.citadel-object{z-index:3}.skip-cloak-guidance{position:absolute;bottom:80px;left:50%;transform:translateX(-50%);border:1px solid #dec896;background:#1a302ae8;padding:13px 20px;min-height:46px;border-radius:4px;font:15px system-ui,sans-serif;z-index:4}.in-citadel .bottom-hint{display:none}.in-citadel .journey-panel-heading{display:none}.in-citadel .journey-panel{padding:8px}.quest-item-art{font:54px/1.7 Georgia,serif;color:#a8e7eb}.quest-item-art.ring{color:#e5bf6b}.wordmark h1{max-width:290px}.quest-guidance .citadel-quest-panel,.quest-guidance .journey-panel{display:none}
@media(max-width:600px){.citadel-quest-panel{left:14px;top:253px;width:178px;padding:10px}.citadel-quest-panel strong{font-size:17px}.toggle-cloak{right:14px;bottom:215px;max-width:190px}.wordmark h1{max-width:190px;font-size:21px}.citadel-quest-panel p{font-size:14px}.citadel-quest-panel .eyebrow{letter-spacing:.12em}.has-journey-panel .toggle-cloak{bottom:222px}}
@media(max-height:550px){.citadel-quest-panel{left:18px;top:auto;bottom:16px;width:205px}.toggle-cloak,.has-journey-panel .toggle-cloak{right:18px;bottom:112px}.in-citadel .journey-panel{left:auto;right:18px;transform:none;width:340px}.citadel-quest-panel strong{font-size:16px}.citadel-quest-panel p{margin:4px 0}.skip-cloak-guidance{bottom:16px}}

#load-progress{width:min(260px,75vw);height:8px;margin-top:20px;accent-color:#cfbd83}#loading #load-detail{text-align:center;max-width:85%;line-height:1.5}.loading.done{transition:opacity .2s}

.checkpoint-label{color:#bcffe6;border-color:#8cddc28f;background:#102b25e8}.checkpoint-label:disabled{cursor:wait;opacity:.8}

.game-menu{position:fixed;inset:0;margin:0;width:100%;max-width:none;height:100dvh;max-height:none;padding:max(28px,env(safe-area-inset-top)) max(20px,env(safe-area-inset-right)) max(28px,env(safe-area-inset-bottom)) max(20px,env(safe-area-inset-left));box-sizing:border-box;border:0;color:#f2ecdd;background:radial-gradient(ellipse at 50% 32%,#1b393bdd,#091418f5 72%),linear-gradient(#0c171be8,#070e12f5);overflow-y:auto;overscroll-behavior:contain;text-align:center;z-index:30;backdrop-filter:blur(4px)}
.game-menu[open]{display:flex;align-items:safe center;justify-content:center}.game-menu::backdrop{background:#02080999}.menu-panel{width:min(100%,440px);margin:auto;padding:24px 0}.menu-kicker{font:500 14px/1.5 system-ui,sans-serif;letter-spacing:.38em;color:#d7bd7e;margin:0 0 18px}.game-menu h2{font:400 clamp(36px,8.8vw,54px)/1.12 Georgia,serif;margin:0;color:#f2ead7;text-shadow:0 4px 24px #0008;text-wrap:balance}.menu-rule{height:1px;background:linear-gradient(90deg,transparent,#d5ba7a,transparent);margin:30px auto;width:70%}.menu-actions{display:flex;flex-direction:column;gap:14px}.menu-actions[hidden]{display:none}.menu-button{min-height:60px;width:100%;padding:18px 22px;border:1px solid #a9976975;border-radius:3px;background:#0d1c25dd;color:#ede7d9;font:500 18px/1.4 system-ui,sans-serif;box-shadow:0 5px 22px #0002;transition:background .15s,border-color .15s}.menu-button:hover:not(:disabled){background:#1d3441;border-color:#e6cf92}.menu-primary{background:linear-gradient(120deg,#beab79,#dfc894);border-color:#e9d8ab;color:#102027}.menu-primary:hover:not(:disabled){background:#e6d4a4}.menu-button:disabled{opacity:.48;cursor:default}.menu-chapter{text-align:left}.menu-chapter strong{display:block;font-size:18px;font-weight:600}.menu-chapter small{display:block;font-size:14px;line-height:1.5;margin-top:7px;font-weight:400}.menu-chapter-label{display:block;font-size:12px;letter-spacing:.12em;margin-bottom:9px}.menu-note{font:400 14px/1.55 system-ui,sans-serif;color:#becbc9;margin:14px 0 0}.menu-text-button{background:none;border:0;color:#e4cf9d;font:500 16px/1.4 system-ui,sans-serif;padding:12px;min-height:48px}.menu-text-button:hover{text-decoration:underline}.game-menu button:focus-visible{outline:3px solid #f5dd97;outline-offset:4px}.game-menu [hidden]{display:none!important}@media(max-height:560px){.menu-panel{padding:4px 0}.menu-kicker{margin-bottom:8px}.game-menu h2{font-size:34px}.menu-rule{margin:18px auto}.menu-actions{gap:10px}.menu-button{min-height:52px;padding:13px 20px}}@media(prefers-reduced-motion:reduce){.menu-button{transition:none}}

.move-joystick{position:absolute;z-index:22;left:22px;bottom:max(100px,env(safe-area-inset-bottom));width:116px;height:116px;border-radius:50%;border:1px solid #dbc79a88;background:#10261c99;touch-action:none;user-select:none;display:grid;place-items:center}.move-joystick[hidden]{display:none}.move-joystick span{display:block;width:46px;height:46px;border-radius:50%;background:#d5c297aa;border:1px solid #fff8;pointer-events:none}.move-joystick small{position:absolute;bottom:-22px;font:10px sans-serif;letter-spacing:2px;color:#eadfc8;pointer-events:none}.mission-button{position:absolute;z-index:23;top:160px;left:22px;border:1px solid #baa67a88;border-radius:8px;padding:9px 12px;background:#14281ee8;color:#f1e5cb;font:13px sans-serif}.cinematic .move-joystick{visibility:hidden}@media(max-width:600px){.move-joystick{left:14px;bottom:190px;width:104px;height:104px}.mission-button{left:14px;top:154px}.bottom-hint{pointer-events:none}}

#game{touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}#game canvas{touch-action:none}#game input,#game textarea{user-select:text;-webkit-user-select:text}

.mission-button{top:auto;left:auto;right:22px;bottom:150px;min-height:44px}@media(max-width:600px){.mission-button{top:auto;left:auto;right:14px;bottom:190px}}

/* The display toggle stays available while informational overlays are hidden. */
.notifications-button{position:absolute;z-index:23;right:22px;bottom:204px;min-height:44px;max-width:190px;padding:9px 12px;border:1px solid #baa67a88;border-radius:8px;background:#14281ee8;color:#f1e5cb;font:14px/1.3 system-ui,sans-serif}
.notifications-button[aria-pressed="false"]{border-color:#dcc58d;background:#233b2deb}
#game.notifications-off .wordmark,
#game.notifications-off .hero-health,
#game.notifications-off .welcome,
#game.notifications-off .bottom-hint,
#game.notifications-off .status,
#game.notifications-off .battle-subtitle,
#game.notifications-off .enemy-label,
#game.notifications-off .citadel-npc-name,
#game.notifications-off #remote-names,
#game.notifications-off #combat-floaters,
#game.notifications-off #dice-roll,
#game.notifications-off .journey-panel-heading,
#game.notifications-off .journey-tile small,
#game.notifications-off .map-heading,
#game.notifications-off #minimap,
#game.notifications-off #map-destination,
#game.notifications-off .map-visits,
#game.notifications-off #online-count,
#game.notifications-off #online-state,
#game.notifications-off #citadel-quest-chapter,
#game.notifications-off #citadel-quest-title,
#game.notifications-off #citadel-objective,
#game.notifications-off #citadel-alert-wrap{display:none!important}
#game.notifications-off .topbar{justify-content:flex-end}
#game.notifications-off .journey-panel{padding:6px;background:transparent;border:0;box-shadow:none;animation:none}
#game.notifications-off .map-frame{padding:0;border:0;background:transparent;box-shadow:none}
#game.notifications-off .open-world-map{min-height:44px;padding:8px;border:1px solid #baa67a88;border-radius:8px;background:#14281ee8}
#game.notifications-off .citadel-quest-panel{padding:0;border:0;background:transparent;box-shadow:none}
#game.notifications-off .online-panel{padding:6px;background:transparent;border:0;box-shadow:none}
@media(max-width:600px){.notifications-button{right:14px;bottom:244px;max-width:170px}}
@media(max-height:500px) and (min-width:601px){.notifications-button{right:22px;bottom:150px}.mission-button{bottom:96px}}
