*{box-sizing:border-box} :root{font-family:system-ui,-apple-system,Segoe UI,sans-serif;color:#eeeede;background:#141b17;color-scheme:dark}body{margin:0}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;border:1px solid #445247;color:#e7eadd;background:#26332b;border-radius:7px;cursor:pointer;padding:9px 13px;font-size:13px}button:hover{background:#354a39}button:disabled{opacity:.45;cursor:wait}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid #d9bc76;outline-offset:4px}header{max-width:1510px;margin:auto;padding:25px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #344035}.brand{color:#eeeede;text-decoration:none;font-weight:850;font-size:29px;letter-spacing:5px}.brand span{display:block;letter-spacing:.2px;font-size:11px;font-weight:400;color:#9da99d;margin-top:4px}.edition{font-size:10px;letter-spacing:2px;color:#9da99d}.edition b{color:#d9bc76;margin-left:9px}main{max-width:1510px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:27px;padding:22px 32px}.toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:42px;margin-bottom:12px}.toolbar>div:first-child{display:flex;align-items:center;gap:13px}#objective{font-size:13px;color:#bcc5b9}.tag{font-size:10px;letter-spacing:1.7px;color:#dcc68c;background:#34392a;border:1px solid #646044;padding:6px 9px;border-radius:4px;white-space:nowrap}.tag.success{color:#b6dba1;border-color:#68865d}.actions{display:flex;gap:6px}kbd{font:11px system-ui;color:#c8d0c2;border:1px solid #51604f;border-radius:4px;padding:2px 5px;white-space:nowrap}.actions kbd{margin-left:7px;font-size:10px}#play-area{position:relative;width:100%;aspect-ratio:5/4;max-height:calc(100dvh - 200px);background:#132017;border:1px solid #47583c;border-radius:10px;overflow:hidden;box-shadow:0 16px 45px #0004}#game{position:absolute;inset:0}canvas{display:block;outline:none;image-rendering:pixelated}.overlay{position:absolute;inset:0;background:#112017b8;backdrop-filter:blur(3px);display:grid;place-items:center;padding:24px}.dialog{text-align:center;max-width:420px}.eyebrow{color:#a6b69c;letter-spacing:2px;font-size:10px;font-weight:650}h1{font-size:clamp(28px,3vw,42px);letter-spacing:-1.5px;line-height:1.1;margin:17px 0;color:#f5efd9}.dialog p{font-size:14px;line-height:1.8;color:#c5cebc;margin-bottom:25px}.primary{display:block;background:#d9bf7f;color:#19231c;border:0;font-weight:750;font-size:15px;min-width:230px;margin:auto;padding:15px 23px}.primary:hover{background:#f0d594}.primary span{margin-left:30px}.dialog small{display:block;font-size:11px;color:#c3cdb9;margin-top:17px}#cleared-banner{position:absolute;bottom:20px;left:20px;right:20px;background:#1b3027ee;border:1px solid #88a46c;border-radius:8px;padding:17px;display:flex;justify-content:space-between;align-items:center;gap:10px}#cleared-banner b{display:block;color:#e3e8bf}#cleared-banner span{font-size:12px;color:#b6c5a9}.status{display:flex;justify-content:space-between;color:#8b9c8c;font-size:10px;margin-top:12px;letter-spacing:.4px}.status i{display:inline-block;width:6px;height:6px;border-radius:50%;background:#9fb778;margin-right:7px}aside{padding-top:1px}.panel{border-bottom:1px solid #344035;padding:20px 0}h2{font-size:23px;letter-spacing:-.6px;font-weight:600;margin:9px 0 24px}.meter-label{display:flex;justify-content:space-between;font-size:11px;color:#aebbab;margin:14px 0 7px}.meter-label b{color:#e4e9d8}progress{appearance:none;border:0;display:block;width:100%;height:7px;border-radius:4px;overflow:hidden;background:#354238}progress::-webkit-progress-bar{background:#354238}progress::-webkit-progress-value{background:#b9cb8e;border-radius:4px}progress::-moz-progress-bar{background:#b9cb8e}#stamina::-webkit-progress-value{background:#c9ab73}#stamina::-moz-progress-bar{background:#c9ab73}.hint{font-size:12px;color:#9cae9a;line-height:1.7;margin:20px 0 0}.foe-row{display:flex;align-items:center;justify-content:space-between;margin-top:13px}.foe-row h3{font-size:14px;font-weight:600;margin:0 0 4px}.foe-row span{font-size:11px;color:#91a18f}.foe-row>b{font-size:12px;color:#d7ad98}dl{margin:16px 0 0}dl>div{display:flex;justify-content:space-between;gap:8px;align-items:center;margin:12px 0;font-size:12px}dt{color:#a4b49e}dd{margin:0;font-size:11px;color:#d7dfcc}.audio .meter-label{font-size:10px;margin-top:0}.audio input{width:100%;accent-color:#d9bf7f;margin:10px 0 15px}.audio button{width:100%;color:#c1ceb7}.version{color:#82917f;font-size:9px;line-height:1.8;letter-spacing:1px;margin-top:20px}[hidden]{display:none!important}#play-area:fullscreen{max-height:none;width:100vw;height:100vh;border:0;border-radius:0}@media(min-width:1250px){main{grid-template-columns:minmax(0,1fr) 290px}#play-area{min-height:520px}}@media(max-width:950px){main{padding:18px;grid-template-columns:minmax(0,1fr) 235px;gap:18px}header{padding:20px}.panel{padding:15px 0}.actions kbd{display:none}#objective{display:none}#play-area{max-height:none}.brand{font-size:24px}.version{font-size:8px}}@media(max-width:700px){main{display:block}aside{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.panel:first-child{grid-column:1/-1}.version{grid-column:1/-1}header{padding:18px}.edition{font-size:8px}.brand span{font-size:9px}.dialog p{font-size:12px}.dialog small{font-size:9px}.dialog .eyebrow{font-size:8px}.primary{min-width:190px;padding:12px}#cleared-banner{left:10px;right:10px;bottom:10px;padding:10px}.controls{grid-row:2/4;grid-column:2}}

.map-panel{padding-top:12px}.map-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.map-heading #room-progress{font-size:10px;color:#aab6a6}#minimap{max-width:210px;margin:10px auto 7px}#minimap svg{display:block;width:100%;background:#19231c;border-radius:8px}.map-legend{display:flex;justify-content:center;gap:15px;font-size:10px;color:#b2bdb0}.map-legend i{display:inline-block;width:9px;height:9px;margin-right:5px;border-radius:2px}.map-legend .visited{background:#c7cbc8}.map-legend .known{background:#505650}.map-legend .current{border:2px solid #e4c57d}.panel h2{margin-bottom:15px}aside .panel{padding-top:16px;padding-bottom:16px}@media(max-width:700px){.map-panel{grid-column:1/-1}aside .panel:first-child{grid-column:1/-1}aside .controls{grid-row:auto;grid-column:auto}}

.inventory-overlay{background:#0d1711ed;backdrop-filter:none;padding:14px}.inventory-window{width:100%;height:100%;max-height:650px;background:#1c291f;border:1px solid #657155;border-radius:10px;padding:18px;overflow:hidden;box-shadow:0 12px 35px #0005}.inventory-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:10px}.inventory-heading h2{margin:3px 0 0;font-size:25px}.inventory-columns{display:grid;grid-template-columns:minmax(125px,.95fr) minmax(155px,1.1fr) minmax(155px,1fr);gap:16px;height:calc(100% - 72px)}.inventory-columns>section{overflow-y:auto;scrollbar-width:thin;padding-right:3px}.inventory-columns h3{font-size:13px;margin:0 0 12px;color:#dce1cc}.inventory-columns h3>span{float:right;font-size:11px;color:#a5b49c}#equipment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}#backpack-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px}.item-card{border:1px solid #52644d;background:#26372a;border-radius:5px;padding:4px;min-width:0;aspect-ratio:1;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:3px;cursor:pointer}.item-card img{width:100%;height:38px;object-fit:contain;image-rendering:pixelated;pointer-events:none}.item-card span{display:none}.equipment-slot{aspect-ratio:auto;min-height:66px}.equipment-slot span{display:block;font-size:9px;line-height:1.1;text-align:center}.item-card:disabled{opacity:.55;cursor:default}.item-card.empty{opacity:.35;cursor:default}.item-card[data-rarity='Ungewöhnlich']{border-color:#83ad72}.item-card[data-rarity='Selten']{border-color:#74a4cc}.item-card[data-rarity='Episch']{border-color:#be90d2}.item-card:hover:not(:disabled){background:#3b5036;border-color:#e3cc8b}.item-card:focus-visible{outline-offset:0}.item-details{font-size:12px;line-height:1.6;border-left:1px solid #4b5944;padding-left:14px}.item-details .eyebrow{font-size:9px;letter-spacing:.5px}.item-details #item-name{font-size:16px;margin:8px 0 13px}.item-details h4{font-size:11px;font-weight:500;color:#acbba3;margin:14px 0 4px}.better{color:#b2d896}.worse{color:#edaa9a}.muted{color:#9fae96;font-size:11px;line-height:1.6}#item-values{color:#ece4be}#item-actions{display:grid;gap:8px;margin-top:18px}#item-actions button{font-size:11px;padding:9px;background:#3a4c32}#item-actions label{font-size:11px;color:#bac6ac}#item-actions select{width:100%;margin-top:5px;padding:6px;background:#283a2b;color:#e2e8d4;border:1px solid #637459;border-radius:4px}#equipment-summary{font-size:10px;line-height:1.8;color:#bcc7ad}#loot-section{margin-top:18px;padding-top:13px;border-top:1px solid #526147}#loot-grid .item-card{width:60px;height:60px}#loot-grid .item-card img{height:50px}.toolbar .actions{flex-shrink:0}@media(max-width:1150px){#objective{display:none}.actions kbd{display:none}}@media(max-width:700px){.inventory-overlay{padding:7px}.inventory-window{padding:10px}.inventory-heading{margin-bottom:8px}.inventory-heading h2{font-size:18px}.inventory-heading .eyebrow{display:none}.inventory-heading button{font-size:10px;padding:6px}.inventory-columns{gap:9px;grid-template-columns:1fr 1fr;height:calc(100% - 45px);overflow-y:auto}.inventory-columns>section{overflow:visible}.inventory-columns .item-details{grid-column:1/-1;border-left:0;border-top:1px solid #526147;padding:12px 0}.equipment-slot{min-height:53px}.item-card img{height:28px}#backpack-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

#item-actions .delete-item{background:#462e29;border-color:#96675a;color:#f0c6b8}#item-actions .delete-item:hover{background:#653d32}.map-legend b{font-weight:600;color:#d7dfcd}

#xp::-webkit-progress-value{background:#8faecb}#xp::-moz-progress-bar{background:#8faecb}.difficulty small{color:#a5b39b;font-size:10px;line-height:1.7;display:block}.difficulty p{margin:8px 0}#enemy-summary{line-height:1.8}.foe-row h3{margin:0}

.account-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}.account-controls>div{display:flex;flex-direction:column;gap:4px;text-align:right;font-size:13px}.account-controls #save-status{font-size:10px;color:#a9b99f;max-width:290px;line-height:1.5}#save-status[data-state='conflict'],#save-status[data-state='error']{color:#edb19b}.google-button{background:#edf0e8;color:#243026;border-color:#edf0e8;font-weight:650;padding:11px 16px}.google-button:hover{background:#fff}.welcome-login{margin-top:12px;width:100%;max-width:300px;font-size:12px}.demo-info{max-width:1446px;margin:0 auto;padding:13px 32px 0;color:#aebca5;font-size:12px;line-height:1.7}.account-overlay{z-index:20;background:#112017f5;backdrop-filter:none;overflow-y:auto}.account-overlay .dialog{max-width:440px}.account-overlay h1{font-size:30px}.account-overlay form{text-align:left}.account-overlay label{display:block;font-size:13px;margin-bottom:8px}.account-overlay input{display:block;width:100%;border:1px solid #82916b;border-radius:6px;background:#26352a;color:#f0eddb;padding:12px;font:inherit}.account-overlay form small{font-size:10px;line-height:1.6;color:#acbaa0}.account-overlay #ign-error{font-size:12px;color:#f1b5a2;margin:12px 0}.account-overlay form .primary{font-size:13px;min-width:0;width:100%}.text-button{display:block;margin:16px auto 0;background:transparent;border:0;color:#b4c1a8;font-size:12px}@media(max-width:950px){header{gap:15px;align-items:flex-start}.account-controls{max-width:60%;gap:8px}.account-controls>div{width:100%}.account-controls button{font-size:11px}.demo-info{padding:12px 18px 0}}@media(max-width:700px){header{flex-wrap:wrap}.account-controls{max-width:none;width:100%;justify-content:flex-start}.account-controls>div{text-align:left;width:auto;margin-right:auto}.account-controls #save-status{max-width:190px}.account-overlay{padding:18px}.account-overlay h1{font-size:24px}.account-overlay p{margin-bottom:12px}.account-overlay .eyebrow{font-size:8px}.account-overlay .dialog{max-width:100%}}
#game-hud{position:absolute;inset:0;pointer-events:none;color:#f0eedc;font-size:12px;z-index:2;text-shadow:0 1px 2px #000}#hud-vitals,#hud-xp,#hud-map{background:#13241bef;border:1px solid #74816a88;border-radius:7px;box-shadow:0 3px 15px #0004}#hud-vitals{position:absolute;top:12px;left:12px;width:clamp(125px,24%,220px);padding:8px 11px}#hud-vitals .meter-label{margin:2px 0 5px;font-size:11px;color:#e1e7d4}#hud-vitals progress{height:9px;margin-bottom:7px}#health::-webkit-progress-value{background:#de806b}#health::-moz-progress-bar{background:#de806b}#hud-pressure{display:block;font-size:10px;color:#d5c18c}#hud-map{position:absolute;right:12px;top:12px;width:clamp(115px,21%,175px);padding:6px}#hud-map .panel{padding:0;border:0}#hud-map #minimap{margin:3px auto;max-width:125px}#hud-map .map-legend{gap:6px;flex-wrap:wrap;font-size:8px}#hud-map .map-legend i{width:7px;height:7px;margin-right:3px}#hud-map .eyebrow{font-size:9px}#hud-xp{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);width:clamp(200px,42%,390px);padding:8px 12px}#hud-xp>b{font-size:13px}#hud-xp>span{float:right;font-size:10px}#hud-xp progress{height:8px;margin:6px 0}#hud-xp>small{display:block;font-size:9px;color:#c6d8b5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#hud-actions{position:absolute;left:12px;bottom:12px;display:grid;grid-template-columns:1fr 1fr;gap:4px;pointer-events:auto}#hud-actions button{padding:6px;font-size:10px;background:#14291ced}#cleared-banner{bottom:95px;z-index:3}.overlay{z-index:5}.journal-overlay{background:#0d1711f5;backdrop-filter:none;padding:14px}.journal-window{width:100%;height:100%;padding:18px;background:#1b291f;border:1px solid #788569;border-radius:9px;overflow-y:auto}.journal-window h2{margin:3px 0;font-size:24px}.journal-window>.muted{margin-top:0}.journal-window .inventory-heading{position:sticky;top:-18px;background:#1b291ff7;padding:8px 0;z-index:1}#journal-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:16px 0}#journal-stats>div{background:#26392a;border:1px solid #485b42;padding:10px;border-radius:6px}#journal-stats strong,#journal-stats span{display:block}#journal-stats strong{font-size:18px;color:#e5cb8d}#journal-stats span{font-size:10px;color:#b6c7ac;margin-top:4px}#journal-enemies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.codex-card{background:#223327;border:1px solid #4f6448;border-radius:7px;padding:14px;font-size:12px;line-height:1.65}.codex-card img{float:right;width:60px;height:70px;object-fit:contain;image-rendering:pixelated}.codex-card h3{margin:3px 0;font-size:16px;color:#edddb2}.codex-card small{color:#e6c882}.codex-card .codex-tip{color:#b8d5a7}.codex-card.unknown{background:#17251c;border-style:dashed;color:#8e9b87}.codex-card.unknown img{filter:brightness(0);opacity:.6}.codex-card.unknown h3{color:#9aa990}@media(max-width:800px){#hud-vitals{top:7px;left:7px;padding:6px}#hud-vitals .meter-label{font-size:9px}#hud-map{top:7px;right:7px;width:105px}#hud-map #minimap{max-width:85px}#hud-actions{left:7px;bottom:7px}#hud-actions button{font-size:8px;padding:4px}#hud-xp{bottom:7px;left:auto;right:7px;transform:none;width:48%}#journal-stats{grid-template-columns:repeat(2,1fr)}.journal-window{padding:10px}.journal-window h2{font-size:18px}.journal-window .inventory-heading{top:-10px}#journal-enemies{grid-template-columns:1fr}}@media(max-width:480px){#hud-map{width:90px}#hud-map #minimap{max-width:65px}#hud-vitals{width:115px}#hud-xp>small{font-size:8px}#hud-xp>b{font-size:11px}.journal-overlay{padding:5px}}

#hud-completion{display:block;font-size:8px;text-align:center;color:#d7c48c;margin-top:5px}#hud-enemies{display:block;font-size:10px;color:#d4ddc8;margin-top:4px}#hud-xp #hud-hint{color:#e9d08c;font-size:10px;margin-top:4px}#cleared-banner{bottom:110px}

/* Version 0.7: one playing field, quiet HUD, controls in Help. */
header{max-width:1600px;padding:13px 24px}.brand{font-size:23px}.brand span{font-size:10px}.demo-info{padding:8px 24px 0;font-size:11px;max-width:1600px}.app-main{display:block;width:min(calc(100% - 32px),calc((100dvh - 180px)*1.25));max-width:1600px;padding:12px 0;margin:0 auto}.app-main #play-area{min-height:0;max-height:none;width:100%;aspect-ratio:5/4;border-radius:8px}.app-main #play-area:fullscreen{width:100vw;height:100vh}.site-footer{max-width:1600px;padding:10px 24px 16px;margin:auto;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:11px;color:#92a48e}.legal-links{display:flex;gap:18px;flex-wrap:wrap}.legal-links a{color:#bac8ae;text-underline-offset:3px}.legal-links a:hover{color:#eddbac}#hud-map{width:165px}#hud-map .map-heading{display:block}#hud-map #map-number{display:block}#hud-threat{display:block;font-size:9px;color:#cdbb88;margin-top:3px}#hud-vitals{width:190px}#hud-vitals #hud-enemies{font-size:10px;color:#b1bea7}#hud-xp #hud-hint:empty{display:none}#hud-actions{grid-template-columns:repeat(3,auto)}.help-overlay{background:#112017f5;backdrop-filter:none;padding:16px}.help-window{width:min(100%,700px);max-height:100%;overflow-y:auto;border:1px solid #68795b;background:#1b2b20;border-radius:10px;padding:22px;text-align:left;font-size:13px;line-height:1.7}.help-window h2{font-size:23px;margin:0}.help-window h3{font-size:15px;color:#e9d59c;margin-top:12px}.help-columns{display:grid;grid-template-columns:1fr 1fr;gap:28px}.help-columns input[type=range]{width:100%;accent-color:#d7be80;margin:12px 0}.help-window .legal-links{border-top:1px solid #4b5d43;padding-top:16px;margin-top:16px;font-size:11px}.profile-trigger{width:45px;height:45px;border-radius:50%;padding:0;overflow:hidden;border:2px solid #aa9868;background:#354733;font-weight:750;font-size:20px}.profile-trigger img{width:100%;height:100%;object-fit:cover}.profile-window{width:min(100%,470px);max-height:100%;overflow-y:auto;padding:23px;background:#1b2b20;border:1px solid #71845e;border-radius:10px;font-size:13px;line-height:1.7}.profile-window h2{font-size:24px;margin:0}.profile-window input{font-size:13px;margin:8px 0 12px}.profile-window hr{border:0;border-top:1px solid #536147;margin:22px 0}.profile-window summary{color:#e1a493;cursor:pointer}.profile-window details p{font-size:12px;color:#c2cbb9}.danger-button{background:#6a302a;border-color:#a96758;color:#ffe0d2;margin-top:6px;width:100%}.danger-button:disabled{cursor:not-allowed}#profile-message{font-size:12px;color:#dec584;min-height:1.6em}#overflow-section{margin-top:16px;border-top:1px solid #65765b;padding-top:12px}#overflow-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px}.account-controls>div{max-width:280px}@media(max-width:800px){.app-main{width:calc(100% - 20px)}#hud-map{width:110px}#hud-vitals{width:140px}.help-columns{grid-template-columns:1fr;gap:10px}.help-window{padding:14px}.help-window .inventory-heading h2{font-size:19px}#hud-actions{grid-template-columns:repeat(2,auto)}.site-footer{padding:10px 14px}.help-window dl{margin:10px 0}.help-window dl>div{margin:7px 0}}@media(max-width:480px){#hud-map{width:95px}#hud-vitals{width:120px}.profile-window{padding:15px}.account-controls #save-status{max-width:170px}.account-controls{max-width:100%}}

.account-controls{flex-wrap:nowrap;max-width:none;justify-content:flex-end}.account-controls>div{width:auto;flex-shrink:1}.profile-trigger{flex-shrink:0}#profile-dialog{z-index:40}

.profile-window>.inventory-heading{position:sticky;top:-23px;background:#1b2b20;z-index:1;padding:10px 0}.help-window>.inventory-heading{position:sticky;top:-22px;background:#1b2b20;z-index:1;padding:8px 0}@media(max-width:800px){.help-window>.inventory-heading{top:-14px}}@media(max-width:480px){.profile-window>.inventory-heading{top:-15px}}

#boss-hud{position:absolute;top:12px;left:50%;transform:translateX(-50%);width:36%;max-width:330px;padding:9px 12px;border:1px solid #b19662;background:#231f16ed;border-radius:7px}#boss-hud>div{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;margin-bottom:7px}#boss-name{color:#f0d393}#boss-life{font-size:9px;white-space:nowrap}#boss-health::-webkit-progress-value{background:#d49a62}#boss-health::-moz-progress-bar{background:#d49a62}@media(max-width:700px){#boss-hud{top:7px;width:32%;padding:6px}#boss-name{font-size:10px}#boss-life{display:none}}

.codex-card.boss-entry{border-color:#b49253;background:#322d20}.boss-entry h3{color:#f2cf86}
/* 0.10: reserve actual space for HUD; no panel intersects the canvas. */
#play-area{--hud-top:76px;--hud-bottom:70px}
.app-main{width:min(calc(100% - 24px),calc((100dvh - 326px)*1.25));min-width:320px}
.app-main #play-area{height:0;aspect-ratio:auto;padding-top:calc(80% + var(--hud-top) + var(--hud-bottom));min-height:0}
#game{inset:var(--hud-top) 0 var(--hud-bottom)}
#game-hud::before,#game-hud::after{content:'';position:absolute;left:0;right:0;background:#14241b;border-color:#4b5f41;border-style:solid;border-width:0;z-index:0}
#game-hud::before{top:0;height:var(--hud-top);border-bottom-width:1px}#game-hud::after{bottom:0;height:var(--hud-bottom);border-top-width:1px}
#hud-vitals,#hud-map,#hud-xp,#hud-actions,#boss-hud{z-index:1;box-shadow:none}
#hud-vitals{top:3px;left:10px;width:180px;padding:4px 5px;border:0;background:none;height:70px}
#hud-vitals .meter-label{margin:1px 0 3px;font-size:10px}#hud-vitals progress{height:7px;margin-bottom:4px}#hud-vitals #hud-enemies{font-size:9px;margin-top:0}
#hud-map{right:7px;top:3px;width:218px;height:70px;padding:0;border:0;background:none}
#hud-map .map-panel{display:grid;grid-template-columns:66px 1fr;grid-template-rows:24px 25px 17px;gap:0 8px;padding:0}
#hud-map-open{grid-column:1;grid-row:1/4;padding:0;border:0;background:none;border-radius:3px;pointer-events:auto;font-size:8px;line-height:1}
#hud-map #minimap{width:56px;max-width:56px;margin:0 auto}#hud-map-open>span{display:block;margin-top:2px;color:#d5c18b}
#hud-map .map-heading{grid-column:2;grid-row:1;display:flex;gap:8px;align-items:center}#hud-map #hud-threat{font-size:8px;margin:0;letter-spacing:0}
#hud-map .map-legend{grid-column:2;grid-row:2;justify-content:flex-start;align-content:center;gap:3px 7px;font-size:8px;line-height:1.3}#hud-map .map-legend>span:last-child{display:none}#hud-map #hud-completion{grid-column:2;grid-row:3;text-align:left;margin:0}
#hud-xp{bottom:4px;left:50%;right:auto;transform:translateX(-50%);width:calc(100% - 410px);max-width:400px;min-width:200px;height:61px;padding:5px 7px;border:0;background:none}
#hud-xp>b{font-size:12px}#hud-xp>span{font-size:9px}#hud-xp progress{height:7px;margin:6px 0}#hud-xp #hunt-goal{display:none}#hud-xp #hud-hint{font-size:9px;line-height:1.4;white-space:normal;margin:0}
#hud-actions{bottom:9px;left:8px;width:188px;grid-template-columns:repeat(3,1fr);gap:4px}#hud-actions button{font-size:9px;padding:5px 3px;white-space:nowrap;background:#263b29}#hud-journey{border-color:#b69a62;color:#f3d58b}
#boss-hud{top:12px;width:calc(100% - 450px);max-width:330px;padding:5px 7px;min-height:42px}#boss-hud>div{font-size:10px;margin-bottom:5px}#boss-health{height:6px}
#cleared-banner{display:none!important}
.app-main #play-area:fullscreen{width:100vw;height:100dvh;max-height:none;min-height:0;padding-top:0;aspect-ratio:auto}
.journey-overlay,.map-overlay{background:#0e1b14f5;backdrop-filter:none;padding:12px;z-index:6}
.journey-window,.map-window{width:100%;height:100%;overflow-y:auto;background:#1a2b20;border:1px solid #71815c;border-radius:9px;padding:18px;font-size:12px;line-height:1.55}
.journey-window>.inventory-heading,.map-window>.inventory-heading{position:sticky;top:-18px;background:#1a2b20fa;padding:9px 0;z-index:2}.journey-window h2,.map-window h2{margin:0;font-size:23px}.journey-window h3{font-size:15px;color:#e4d3a3;margin:18px 0 8px}.journey-window p{margin:6px 0 10px}.journey-window .eyebrow{font-size:8px;letter-spacing:1px}
.journey-balance{display:flex;gap:20px;background:#263c2a;border:1px solid #60754b;border-radius:7px;padding:14px;margin-top:8px}.journey-balance>div{min-width:90px;text-align:center}.journey-balance strong{display:block;font-size:30px;color:#f0d294;line-height:1.2}.journey-balance span{font-size:10px;color:#b8c8a9}.journey-balance p{font-size:11px;color:#bfceb4;margin:0}
.goal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.daily-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.goal-card{padding:11px;background:#23372a;border:1px solid #4c6243;border-radius:6px}.goal-card h3{margin:5px 0;font-size:13px}.goal-card p{font-size:11px;color:#bdcbb2}.goal-card small{font-size:8px;color:#e8c57c;letter-spacing:.3px}.goal-card>span{font-size:10px;color:#c8d5ba}.goal-card progress{margin:8px 0 5px;height:6px}.goal-card.complete{border-color:#8ca764;background:#2a402c}.goal-card.complete small{color:#c5e0a8}
.stamp-card,.forge-card,.discovery-card{padding:13px;border:1px solid #66794e;border-radius:7px;margin:15px 0;background:#243728}.stamp-card h3,.forge-card h3,.discovery-card h3{margin-top:0}.stamp-card small{font-size:10px;color:#b6c8aa}#stamp-track{display:flex;gap:6px;margin:12px 0}#stamp-track span{display:grid;place-items:center;width:32px;height:32px;border:1px solid #64764e;border-radius:50%;color:#a7ba99}#stamp-track .stamped{background:#d7be7c;color:#20341e;border-color:#eedb9b;font-weight:700}.forge-options{display:grid;grid-template-columns:1fr 1fr;gap:14px}.forge-options label{font-size:11px;color:#c8d5bb}.forge-options select{display:block;width:100%;margin-top:5px;background:#17291e;color:#e9e5cf;border:1px solid #708159;border-radius:5px;padding:8px;font:inherit}#forge-preview{color:#efd59b;font-size:11px;margin:14px 0}#forge-create{border-color:#b7a16c;background:#3c4d30}#journey-message{color:#d1e8b3;font-weight:600;min-height:1.5em}.discovery-shadow{float:right;width:64px;height:64px;object-fit:contain;image-rendering:pixelated;filter:brightness(0);opacity:.7}.discovery-card{min-height:95px}#expedition-report{border:1px solid #ccae68;background:#35452b;border-radius:7px;padding:16px;margin-bottom:14px;text-align:center}#expedition-report h2{font-size:24px;margin:8px 0}#expedition-report p{color:#e0d8b5}#expedition-continue{font-size:12px;padding:10px 20px;min-width:0;margin-top:12px}
.map-window{width:min(100%,540px);height:auto;max-height:100%;text-align:center}.map-window .inventory-heading{gap:10px}#large-map{width:min(100%,360px);margin:10px auto}#large-map svg{display:block;width:100%;background:#142118;border-radius:8px}#large-map-summary{color:#e7cf91}
@media(max-width:680px){#play-area{--hud-top:112px;--hud-bottom:102px}.app-main{width:calc(100% - 16px);min-width:0}#hud-vitals{left:6px;top:5px;width:43%}#hud-map{right:5px;top:4px;width:50%}#hud-map .map-panel{grid-template-columns:56px 1fr;gap:0 4px}#hud-map #minimap{width:50px;max-width:50px}#boss-hud{top:78px;width:calc(100% - 24px);max-width:none;min-height:0;padding:3px 7px}#boss-hud>div{margin-bottom:3px;font-size:9px}#boss-health{height:4px}#hud-actions{width:178px;grid-template-columns:repeat(2,1fr);left:6px;bottom:11px}#hud-actions button{font-size:9px;padding:5px 3px}#hud-xp{left:auto;right:6px;transform:none;bottom:12px;width:calc(100% - 202px);min-width:110px;max-width:none;height:72px;padding:2px}#hud-xp>span{float:none;display:block;margin-top:3px;font-size:8px}#hud-xp>b{font-size:11px}#hud-map .map-legend{font-size:7px}.daily-grid{grid-template-columns:1fr}.journey-window{padding:10px}.journey-window>.inventory-heading{top:-10px}.journey-window h2{font-size:18px}.journey-balance{padding:10px;gap:10px}.journey-balance p{font-size:10px}.journey-window .inventory-heading button{font-size:10px;padding:7px}.goal-grid{gap:6px}.goal-card{padding:8px}.goal-card h3{font-size:12px}.journey-overlay,.map-overlay{padding:6px}.forge-options{gap:8px}#stamp-track{gap:4px}#stamp-track span{width:28px;height:28px}}
#reward-flash{position:absolute;z-index:1;bottom:12px;right:8px;width:184px;height:45px;display:grid;place-items:center;text-align:center;color:#edd397;font-size:11px;line-height:1.4;opacity:0;transition:opacity .2s}#reward-flash.visible{opacity:1}@media(max-width:680px){#reward-flash{bottom:84px;height:15px;width:calc(100% - 16px);font-size:9px}}
/* Use vertical browser space for the adventure once a run starts. */
.app-main{container-type:inline-size}
body.game-session header{padding:6px 16px;min-height:48px}body.game-session .brand{font-size:18px;letter-spacing:3px}body.game-session .brand span{font-size:9px;margin-top:2px}body.game-session #demo-info{display:none}body.game-session .site-footer{padding:4px 16px;font-size:10px}body.game-session .app-main{padding:4px 0;width:min(calc(100% - 24px),calc((100dvh - 244px)*1.25))}
@container(max-width:560px){#hud-xp{left:auto;right:6px;transform:none;width:calc(100% - 212px);min-width:0;max-width:none}#reward-flash{display:none}#play-area.has-boss{--hud-top:112px}#boss-hud{top:78px;width:calc(100% - 24px);max-width:none;min-height:0;padding:3px 7px}#boss-hud>div{font-size:9px;margin-bottom:3px}#boss-health{height:4px}}
@media(max-width:680px){body.game-session .app-main{width:min(calc(100% - 16px),calc((100dvh - 350px)*1.25))}}
.forge-result{display:flex;align-items:center;gap:14px;border:1px solid #779dc0;background:#1d3025;border-radius:7px;padding:10px;margin:13px 0}.forge-result[data-tier='3']{border-color:#b18ac8;background:#30263a}.forge-result img{width:56px;height:56px;object-fit:contain;image-rendering:pixelated}.forge-result #forge-preview{margin:0}#forge-comparison{color:#c0d3b1;line-height:1.6}

/* Room guidance pauses play and never hides an active encounter. */
.room-overlay{z-index:60}.room-window{width:min(920px,95%);max-height:92%;overflow:auto;background:#1c2920;border:1px solid #879574;border-radius:12px;padding:24px;color:#f3eedc;box-shadow:0 18px 80px #000b}.treasure-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.treasure-options img{width:64px;height:64px;object-fit:contain;image-rendering:pixelated}.treasure-options p{font-size:13px;line-height:1.5}.room-controls{display:flex;gap:12px;flex-wrap:wrap}@media(max-width:650px){.treasure-options{grid-template-columns:1fr}.room-window{padding:16px}}

.trade-controls{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.trade-controls label{display:flex;flex-direction:column;gap:8px;min-width:0}.trade-controls select{width:100%;min-width:0}.trade-preview img{width:64px;height:64px;object-fit:contain;image-rendering:pixelated}.trade-preview .goal-card{margin:12px 0}.room-window>button{margin-top:14px}@media(max-width:650px){.trade-controls{grid-template-columns:1fr}}

.service-room>p{font-size:14px;line-height:1.5;margin:12px 0}.trade-controls label{font-size:13px}.trade-controls select{min-height:42px;padding:8px;background:#24382b;color:#f3eedc;border:1px solid #718664;border-radius:5px;font:inherit}.trade-preview>p{font-size:13px;line-height:1.45}.trade-preview>h3{font-size:15px}.trade-preview .goal-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:6px 12px;align-items:center;padding:12px}.trade-preview .goal-card img{grid-column:1;grid-row:1/5}.trade-preview .goal-card h3,.trade-preview .goal-card p,.trade-preview .goal-card small{grid-column:2;margin:0;line-height:1.4}.trade-preview .goal-card h3{font-size:15px}.trade-preview .goal-card p{font-size:13px}
/* Side panels stay inside the fullscreen stage. */
#reward-flash{display:none}
#info-notices{position:absolute;left:10px;right:10px;bottom:78px;display:grid;gap:6px;z-index:2}
.info-notice{padding:9px 11px;border:1px solid #71815c;border-left:3px solid var(--notice-color);border-radius:6px;background:#1b2c21;color:#eee9d5;font-size:12px;line-height:1.5;overflow-wrap:anywhere;text-shadow:none}
@media(min-width:1000px){
 .app-main,body.game-session .app-main{width:min(calc(100% - 24px),calc((100dvh - 110px)*1.25 + 440px));max-width:1800px;padding:4px 0}
 .app-main #play-area{--hud-top:0px;--hud-bottom:0px;padding-top:calc(80% - 352px)}
 #game{inset:0 220px}
 #game-hud::before,#game-hud::after{top:0;bottom:0;height:auto;width:220px;border-width:0}
 #game-hud::before{left:0;right:auto;border-right-width:1px}#game-hud::after{left:auto;right:0;border-left-width:1px}
 #hud-vitals{left:14px;top:20px;width:192px;height:auto;padding:0}
 #hud-vitals .meter-label{font-size:12px;margin:0 0 7px}#hud-vitals progress{height:10px;margin-bottom:16px}#hud-vitals #hud-enemies{font-size:12px;line-height:1.5}
 #hud-xp{left:14px;right:auto;top:190px;bottom:auto;transform:none;width:192px;min-width:0;max-width:none;height:auto;padding:0}
 #hud-xp>b{font-size:19px}#hud-xp>span{float:none;display:block;font-size:11px;margin-top:6px}#hud-xp progress{height:9px;margin:10px 0}
 #hud-xp #hunt-goal{display:block;font-size:11px;white-space:normal;line-height:1.5;margin:16px 0;color:#b5c5a8}#hud-xp #hud-hint{font-size:12px;line-height:1.6;margin-top:16px;white-space:normal}
 #hud-actions{left:14px;bottom:18px;width:192px;grid-template-columns:1fr 1fr;gap:7px}#hud-actions button{font-size:11px;padding:9px 4px}
 #hud-map{top:20px;right:14px;width:192px;height:auto}
 #hud-map .map-panel{display:flex;flex-direction:column;gap:10px}#hud-map .map-heading{justify-content:space-between;order:0}#hud-map-open{order:1}#hud-map #minimap{width:180px;max-width:180px}#hud-map-open>span{font-size:10px;margin-top:6px}
 #hud-map .map-legend{order:2;font-size:10px;gap:7px;justify-content:center}#hud-map #hud-completion{order:3;text-align:center;font-size:11px}#hud-map #hud-threat{font-size:10px}
 #boss-hud{top:320px;left:auto;right:14px;transform:none;width:192px;max-width:none;padding:10px}#boss-hud>div{display:block}#boss-name{font-size:13px}#boss-life{display:block;margin:5px 0}
 #info-notices{left:auto;right:14px;top:320px;bottom:auto;width:192px}#play-area.has-boss #info-notices{top:415px}
 .info-notice{font-size:12px;padding:10px}
}
@media(max-width:999px){
 #play-area{--hud-bottom:200px}
 .app-main,body.game-session .app-main{width:min(calc(100% - 16px),calc((100dvh - 390px)*1.25))}
 #info-notices{bottom:78px;max-height:116px;overflow:auto;pointer-events:auto}
 .info-notice{font-size:11px;padding:6px 9px}
}
@media(max-width:680px){#play-area{--hud-bottom:230px}#info-notices{bottom:108px}}
#info-notices{align-content:start;overflow-y:auto;pointer-events:auto}
@media(min-width:1000px){#info-notices{bottom:14px}}
@media(min-width:1000px) and (max-width:1199px){
 #hud-xp{top:160px}#hud-xp #hunt-goal{display:none}
 #hud-map #minimap{width:140px;max-width:140px}
 #info-notices{top:280px}#boss-hud{top:280px}#play-area.has-boss #info-notices{top:375px}
}
@media(min-width:1000px) and (max-width:1199px){
 #play-area.has-boss #hud-map #minimap{width:100px;max-width:100px}
 #play-area.has-boss #boss-hud{top:216px}#play-area.has-boss #info-notices{top:306px}
}
.music-label{display:block;margin-top:18px;color:#dcc995}
#large-map{max-width:280px}.map-window{max-width:580px}#map-icon-legend{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px 12px;margin:16px 0;text-align:left}#map-icon-legend>span{display:flex;align-items:center;gap:7px;font-size:10px;color:#d5ddca}#map-icon-legend svg{width:22px;height:22px;flex-shrink:0;color:#e4cb8e}#large-map-summary{font-size:11px}@media(max-width:480px){#map-icon-legend{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Larger room icons in the right rail, with room kept clear of HUD panels. */
@media(min-width:1200px){
 .app-main,body.game-session .app-main{width:min(calc(100% - 24px),calc((100dvh - 110px)*1.25 + 480px))}
 .app-main #play-area{padding-top:calc(80% - 384px)}
 .app-main #play-area:fullscreen{padding-top:0}
 #game{inset:0 260px 0 220px}
 #game-hud::after{width:260px}
 #hud-map,#boss-hud,#info-notices{width:232px}
 #hud-map #minimap{width:232px;max-width:232px}
 #boss-hud,#info-notices{top:370px}
 #play-area.has-boss #info-notices{top:465px}
}
@media(min-width:1000px) and (max-width:1199px){
 #hud-map #minimap{width:160px;max-width:160px}
 #boss-hud,#info-notices{top:300px}
 #play-area.has-boss #hud-map #minimap{width:120px;max-width:120px}
 #play-area.has-boss #boss-hud{top:236px}
 #play-area.has-boss #info-notices{top:326px}
}
.room-seal-balance{display:inline-block;padding:8px 12px;background:#293c2a;border:1px solid #60704f;border-radius:6px;color:#e8d39b;font-weight:650}
.treasure-options>.goal-card{display:flex;flex-direction:column;gap:8px;align-items:stretch}
.treasure-options>.goal-card>img{flex-shrink:0;align-self:center}
.treasure-options>.goal-card>button{margin-top:auto;width:100%;min-height:40px}

.ending-overlay{z-index:12;background:#101b16ed;overflow-y:auto;padding:18px}.ending-card{margin:auto;width:min(100%,680px);text-align:center;background:linear-gradient(145deg,#24382b,#14221a);border:1px solid #b9a668;border-radius:14px;padding:clamp(16px,2vw,24px);box-shadow:0 20px 70px #0008}.ending-card h1{font-size:clamp(22px,2.5vw,32px);line-height:1.15;margin:10px 0 14px;color:#fff0c3}.ending-card p{font-size:14px;line-height:1.6;margin:12px 0}.ending-card h1:focus{outline:none}.ending-star{font-size:32px;color:#e4c779;line-height:1.2;margin-top:6px}.ending-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin:16px 0}.ending-stats>div{display:block;background:#0f1c1477;border:1px solid #53664a;border-radius:7px;padding:12px}.ending-stats dt{font-size:12px;color:#b8c5ad}.ending-stats dd{font-size:20px;font-weight:bold;color:#ecd59d;margin:6px 0 0}.ending-home{display:inline-block;text-decoration:none;padding:12px 22px;margin-top:10px;border-radius:7px;color:#152016}
.help-columns>details{grid-column:1/-1;border:1px solid #52634a;border-radius:6px;padding:10px 12px;background:#192a20}.help-columns>details summary{cursor:pointer;font-size:14px;color:#ecd59d}.help-columns>details p{font-size:12px;line-height:1.65;margin:10px 0}#item-values p{font-size:12px;line-height:1.6}
