@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@400;500;600&family=IBM+Plex+Mono:wght@400;450;500;600&display=swap');

:root{color-scheme:dark;--bg:#030505;--ink:#d7dcd0;--muted:#929b88;--faint:#55604f;--accent:#c9d6b4;--bronze:#bd9d69;--line:rgba(190,209,164,.17);--mono:'IBM Plex Mono',monospace;--serif:'Cormorant Garamond',Georgia,serif}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--mono);overflow:hidden;font-size:11px}button,a,input,select{-webkit-tap-highlight-color:transparent}button{border:0;background:none;font-family:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible{outline:1px solid var(--accent);outline-offset:4px}button:hover{color:#f4f6ed}button:disabled{opacity:.35;cursor:not-allowed}[hidden]{display:none!important}svg{fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}kbd{display:inline-block;padding:3px 5px;border:1px solid #a8ba8b35;border-radius:2px;color:#b5c3a4;font:9px/1.1 var(--mono)}
#app{position:relative;isolation:isolate;width:100%;height:100svh;min-height:480px;overflow:hidden;background:#030505}#world{position:absolute;inset:0;width:100%;height:100%;z-index:-3;touch-action:none;transition:opacity .8s}.vignette{position:absolute;inset:0;z-index:-2;pointer-events:none;background:linear-gradient(180deg,#030606b0,transparent 18%,transparent 71%,#030605a8 88%,#030505 100%);box-shadow:inset 0 0 95px #03050560}.grain{position:absolute;inset:0;pointer-events:none;opacity:.018;z-index:7;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.82' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.7' d='M0 0h180v180H0z'/%3E%3C/svg%3E")}

/* The world occupies the screen; all chrome stays along its edges. */
.topbar{position:absolute;top:0;left:32px;right:32px;height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);z-index:3}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);font:500 26px/1 var(--serif);letter-spacing:5px}.brand-mark{font:39px/1 Georgia,serif;transform:scaleX(.7);color:#c7d3b7}.brand small{display:block;font:8px var(--mono);letter-spacing:1.4px;margin-top:7px;color:#94a183}.chapter{display:flex;align-items:center;gap:13px;color:#8d9980;font-size:9px;letter-spacing:1.3px}.tiny-star{font-size:13px;color:#c7b287}.chapter-rule{width:22px;height:1px;background:var(--faint)}.utilities{display:flex;align-items:center;gap:10px}.icon-button{width:32px;height:36px;padding:6px;color:#9ba68f;display:grid;place-items:center;transition:color .2s,background .2s}.icon-button:hover{background:#a6bb8710}.icon-button svg{width:18px;height:18px}.sound-waves{display:none}.sound-on .sound-waves{display:block}.sound-on .sound-off{display:none}.nav-divider{width:1px;height:18px;background:var(--line);margin:0 5px}
.location-info{position:absolute;left:34px;top:100px;width:270px;z-index:2;pointer-events:none;text-shadow:0 2px 8px #000,0 0 24px #000}.eyebrow{display:flex;align-items:center;gap:8px;color:#a0ac91;font-size:9px;letter-spacing:1.4px}.location-dot{display:inline-block;flex-shrink:0;width:4px;height:4px;background:#bed09f;box-shadow:0 0 9px #b7c79e66}.location-info h1{font:500 31px/1.1 var(--serif);letter-spacing:.1px;margin:10px 0 9px;color:#e0e4d9}.location-info h1 br{display:none}.location-info h1 br:after{content:' '}.location-info h1 span{color:#a8b68c}.location-info p{display:none}.location-coords{display:flex;align-items:center;gap:9px;color:#7c8b70;font-size:8px;letter-spacing:.35px}.coordinate-line{height:1px;width:15px;background:#47523c}.camera-badge{color:#a0ab91}.quest-card{display:flex;gap:10px;align-items:flex-start;margin-top:20px;padding:12px 16px 12px 0;border-top:1px solid #b5c39725;text-align:left;pointer-events:auto;transition:color .2s;max-width:270px;background:linear-gradient(90deg,#05090755,transparent)}.quest-icon{color:#c7ad79;font-size:24px;line-height:1}.quest-card small{display:block;font-size:8px;letter-spacing:1.5px;color:#a68f67;margin:1px 0 7px}.quest-card strong{display:block;color:#cdd7bc;font-size:10px;line-height:1.5;font-weight:400}.quest-distance{display:block;margin-top:6px;color:#93a083;font-size:9px;line-height:1.6}.quest-distance span{margin-left:5px}

.minimap-panel{position:absolute;right:32px;top:101px;width:202px;padding:10px 10px 0;background:linear-gradient(135deg,#09100bd9,#050906b0);border:1px solid #9daf802d;z-index:3}.minimap-heading{display:flex;align-items:center;gap:7px;white-space:nowrap;padding:1px 0 9px;color:#bac6a8}.minimap-heading strong{font-size:8px;font-weight:400;letter-spacing:.55px}.map-north{margin-left:auto;color:#78866b;font-size:8px}.minimap-panel canvas{display:block;width:180px;height:128px;max-width:100%;background:#02050360;image-rendering:pixelated}.map-legend{display:flex;justify-content:space-between;gap:7px;padding:8px 0;color:#95a185;font-size:7px;letter-spacing:.3px}.map-legend>span{display:flex;align-items:center;gap:5px}.map-legend i{display:inline-block;width:4px;height:4px;transform:rotate(45deg)}.map-player{background:#d7e8b9}.map-shrine{background:#d5b77f}.map-enemy{background:#a87869}.map-water{background:#79aab6}.zoom-controls{display:flex;align-items:center;gap:1px;border-top:1px solid var(--line);min-height:34px;color:#7c8b6d}.zoom-controls>span{font-size:8px;letter-spacing:1px;margin-right:auto}.zoom-controls button{width:29px;height:32px;font-size:18px;color:#b9c6a7}.zoom-controls button:hover{background:#a6bb8712}.zoom-controls output{width:42px;text-align:center;font-size:9px;color:#a3b28f}.world-select{position:absolute;right:34px;top:360px;display:flex;align-items:center;gap:11px;flex-direction:column;z-index:3}.vertical-label{font-size:8px;writing-mode:vertical-rl;letter-spacing:2px;color:#78886a;margin-bottom:5px}.world-button{position:relative;font-size:10px;color:#78886a;width:30px;height:30px;transition:color .2s}.world-button:before{content:'';width:3px;height:3px;background:#697a58;position:absolute;top:14px;left:-6px;transition:transform .3s}.world-button.active{color:#d5e1c1}.world-button.active:before{background:#d1dcb9;transform:rotate(45deg) scale(1.5);box-shadow:0 0 10px #b3c98966}.world-button span{position:absolute;right:42px;top:9px;white-space:nowrap;font-size:8px;letter-spacing:.7px;opacity:0;transform:translateX(4px);transition:.2s;pointer-events:none;text-shadow:0 1px 8px #000}.world-button:hover span{opacity:1;transform:translateX(0)}.world-line{height:26px;width:1px;background:linear-gradient(var(--line),transparent);margin-top:3px}.world-caption{position:absolute;left:50%;top:94px;transform:translateX(-50%);display:flex;align-items:center;gap:12px;color:#b9c5aa88;font:italic 15px var(--serif);pointer-events:none}.world-caption>span:first-child,.world-caption>span:last-child{font:10px var(--mono);color:#9aac834f}

.bottom-hud{position:absolute;left:34px;right:34px;bottom:70px;display:grid;grid-template-columns:1fr auto 1fr;align-items:end;gap:24px;z-index:3;pointer-events:none}.bottom-hud>*{pointer-events:auto}.player-status{width:244px;max-width:100%;text-shadow:0 1px 10px #000}.player-heading{display:flex;align-items:center;gap:10px;margin-bottom:12px}.player-sigil{font:34px/1 var(--serif);color:#becaa9}.player-heading strong{display:block;font:500 23px var(--serif);letter-spacing:.4px}.player-heading small{display:block;margin-top:3px;font-size:8px;letter-spacing:.35px;color:#849475}.level{margin-left:auto;color:#889d70;font-size:8px;white-space:nowrap}.level b{font-size:12px;color:#c6d2b4;font-weight:400;margin-left:3px}.meter-row{display:flex;gap:8px;align-items:center;margin-top:8px}.meter-label{width:35px;font-size:8px;letter-spacing:.4px;color:#93a281}.meter{height:4px;flex:1;background:#71826328;position:relative;overflow:hidden}.meter>span{position:absolute;inset:0 auto 0 0;width:100%;background:linear-gradient(90deg,#7a8d69,#c2d2a9);transition:width .15s}.meter.stamina{height:3px}.meter.stamina>span{background:linear-gradient(90deg,#57674b,#9eb385)}.meter-value{font-size:8px;color:#9faf8e;min-width:59px;text-align:right}.souls{display:flex;align-items:center;gap:9px;margin-top:10px}.souls>span:first-child{font-size:19px;color:#cbb582}.souls strong{font-size:11px;font-weight:400;color:#d1dcc0}.souls>span:last-child{font-size:8px;letter-spacing:1px;color:#829271}
.action-dock{width:366px;justify-self:center}.dock-heading{display:flex;align-items:center;justify-content:center;gap:12px;color:#9caa88;letter-spacing:1.5px;font-size:8px;margin-bottom:12px}.dock-heading>span{height:1px;width:27px;background:#7e91614d}.action-items{display:flex;gap:6px;justify-content:center}.action-slot{width:68px;height:78px;position:relative;border:1px solid #96aa753b;background:linear-gradient(150deg,#1b2417dc,#080d09eb);transition:background .2s,border-color .2s,transform .2s;padding:0}.action-slot:hover{transform:translateY(-3px);border-color:#bbcba270;background:#37452af2}.action-slot.selected{border-color:#c3aa7570;background:linear-gradient(150deg,#393221b8,#0e110bdf)}.action-slot.selected:before,.action-slot.selected:after{position:absolute;content:'';width:6px;height:6px;border-color:#c6b183;border-style:solid}.action-slot.selected:before{left:-1px;top:-1px;border-width:1px 0 0 1px}.action-slot.selected:after{right:-1px;bottom:-1px;border-width:0 1px 1px 0}.action-slot svg{width:31px;height:31px;margin-top:10px;color:#b0bf9c}.action-slot.selected svg{color:#dfc995}.action-slot small{display:block;font-size:7px;letter-spacing:.35px;color:#a3b290;margin-top:5px;white-space:nowrap}.action-slot kbd{position:absolute;top:6px;left:6px;font-size:8px;padding:0;border:0;color:#829570}.item-count{font-size:9px;position:absolute;right:7px;top:6px;color:#c3d0b0}.action-slot.fired{background:#66764fe6;border-color:#e2e7bd;transform:translateY(-3px)}.world-status{text-align:right;justify-self:end;width:220px;text-shadow:0 2px 8px #000}.wind-symbol{font:29px/.6 var(--serif);color:#a2b18e;margin-bottom:12px}.world-status strong{font:500 23px var(--serif);display:block;color:#c4cfb4;letter-spacing:.2px}.world-status>span{display:block;font-size:8px;letter-spacing:.8px;color:#8d9d7d;margin-top:6px}.world-time{display:flex;justify-content:flex-end;align-items:center;gap:7px;color:#8b9b79;font-size:8px;letter-spacing:.5px;margin-top:17px}.live-dot{width:3px;height:3px;background:#b4c99a;box-shadow:0 0 7px #adc68a55}.world-time>span:last-child{border-left:1px solid #5d6d4355;margin-left:4px;padding-left:9px;color:#738767}
.footer{position:absolute;bottom:0;left:32px;right:32px;height:45px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px;color:#829274;font-size:8px;z-index:3}.controls-legend{display:flex;align-items:center;gap:10px;font-size:8px}.controls-legend>span{display:flex;align-items:center;gap:5px;white-space:nowrap}.controls-legend kbd{font-size:8px;padding:3px 4px}.controls-legend i{width:1px;height:10px;background:#73825c44;margin:0 1px}#focus-btn{font-size:8px;letter-spacing:1.2px;display:flex;align-items:center;gap:8px;color:#b5c49f;padding:9px;white-space:nowrap}.focus-dot{width:5px;height:5px;border:1px solid #acbd95;transform:rotate(45deg)}#focus-btn kbd{font-size:8px;color:#94a97d;margin-left:1px}.render-info{font-size:8px;letter-spacing:.5px;color:#819372;white-space:nowrap}.render-info>span:nth-child(2){margin:0 6px}

.topbar,.location-info,.minimap-panel,.world-select,.bottom-hud,.footer,.world-caption,.touch-controls{transition:opacity .5s}.focus-mode .topbar,.focus-mode .location-info,.focus-mode .minimap-panel,.focus-mode .world-select,.focus-mode .bottom-hud,.focus-mode .footer,.focus-mode .world-caption,.focus-mode .touch-controls{opacity:0;pointer-events:none}.focus-mode .bottom-hud>*{pointer-events:none}.focus-mode .vignette{opacity:.35}#unfocus-btn{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);padding:12px 20px;background:#080d09c7;color:#bdcdaa;font-size:10px;border:1px solid #afc19533;opacity:.55;z-index:5;white-space:nowrap}#unfocus-btn:hover{opacity:1}.toast{position:absolute;left:50%;bottom:223px;transform:translate(-50%,10px);font-size:11px;color:#d7e0c9;background:#080c08eb;border:1px solid #b9cda33b;padding:12px 20px;max-width:90%;text-align:center;line-height:1.7;pointer-events:none;opacity:0;transition:opacity .3s,transform .3s;z-index:9}.toast.visible{opacity:1;transform:translate(-50%,0)}.interaction-hint{position:absolute;left:50%;top:59%;transform:translateX(-50%);font-size:10px;color:#d4dfc1;white-space:nowrap;background:#050905d9;padding:8px 12px;border:1px solid #c4b27a44;z-index:2}.interaction-hint kbd{margin-right:7px}.pause-overlay{position:absolute;inset:76px 0 45px;background:#040706b0;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;flex-direction:column;z-index:4}.pause-overlay h2,.panel h2{font:500 46px var(--serif);margin:14px 0 32px;letter-spacing:-.5px}.primary-button{font-size:11px;letter-spacing:1px;color:#c6d6b3;padding:15px 22px;border:1px solid #aabe8755;background:#84966417}.primary-button span{margin-left:30px}.modal-backdrop{position:absolute;inset:0;background:#010503c2;backdrop-filter:blur(7px);display:flex;align-items:center;justify-content:center;z-index:10;padding:24px}.panel{position:relative;width:470px;max-width:100%;max-height:90svh;overflow:auto;background:linear-gradient(130deg,#11170f,#070b08);border:1px solid #a0b87e40;padding:40px}.close-panel{position:absolute;right:14px;top:10px;width:40px;height:40px;font-size:27px;font-weight:300;color:#b0c096}.panel h2{font-size:40px;margin-bottom:28px}.setting-row{display:flex;justify-content:space-between;align-items:center;gap:22px;margin:26px 0;font-size:11px;color:#c8d4b9}.setting-row small{display:block;font-size:9px;color:#8b9d78;margin-top:7px}.setting-row select{background:#111a0d;border:1px solid #a6bb8444;color:#cadbb5;font:10px var(--mono);padding:10px}.setting-row input[type=range]{width:110px;accent-color:#b9ca9a}.setting-row input[type=checkbox]{accent-color:#b9ca9a;width:18px;height:18px}.text-button{display:flex;width:100%;justify-content:space-between;border-top:1px solid var(--line);padding:22px 0 0;margin-top:28px;color:#b6cda0;font-size:10px}.panel-note{font-size:9px;line-height:1.8;color:#8a9b78;margin-top:24px}.journal-intro{font:italic 21px/1.5 var(--serif);color:#b3c1a3;margin:0 0 25px}.journal-objective{display:flex;gap:17px;padding:18px 0;border-top:1px solid var(--line)}.journal-objective>span{font-size:11px;color:#a89a70;line-height:1.7}.journal-objective strong{font-size:11px;font-weight:400;color:#d2dfbe}.journal-objective p{font-size:10px;line-height:1.9;color:#a0b18d;margin:8px 0 0}.journal-objective small{display:block;font-size:9px;letter-spacing:.7px;color:#bbce9e;margin-top:11px}.touch-controls{display:none}.scene-changing #world{opacity:.15;transition:opacity .35s}.hit-flash:after{content:'';position:absolute;inset:0;box-shadow:inset 0 0 130px #bd805c42;pointer-events:none;animation:hit .5s forwards}@keyframes hit{to{opacity:0}}

@media(min-width:1600px){.topbar,.footer{left:46px;right:46px}.location-info,.bottom-hud{left:48px}.minimap-panel{right:46px}.bottom-hud{right:48px;bottom:76px}.action-dock{width:390px}.action-slot{width:72px;height:84px}.action-slot svg{width:34px;height:34px}.action-slot small{font-size:8px}.world-select{right:48px}}
@media(max-width:1100px){.topbar,.footer{left:24px;right:24px}.chapter{font-size:8px;letter-spacing:.6px;gap:8px}.location-info{left:26px;width:250px}.minimap-panel{right:24px}.bottom-hud{left:26px;right:26px;gap:16px}.player-status{width:218px}.player-heading small{font-size:7px}.world-status{width:170px}.world-status>span{font-size:7px}.action-dock{width:338px}.action-slot{width:62px}.action-slot small{font-size:6.5px}.render-info{display:none}.controls-legend{gap:7px}.world-caption{display:none}.world-select{right:26px}}
@media(max-width:800px){.topbar{height:70px;left:20px;right:20px}.chapter{display:none}.brand{font-size:25px}.utilities{gap:7px}.location-info{left:22px;top:92px;width:240px}.location-info h1{font-size:28px}.eyebrow{font-size:8px;letter-spacing:.7px}.minimap-panel{top:93px;right:20px;width:174px;padding:9px 9px 0}.minimap-panel canvas{width:154px;height:110px}.minimap-heading strong{font-size:7px}.map-legend{font-size:6px}.bottom-hud{left:22px;right:22px;bottom:67px;grid-template-columns:1fr auto;gap:12px}.world-status{display:none}.player-status{width:210px}.action-dock{width:324px}.action-slot{width:59px;height:76px}.action-slot small{font-size:6px}.dock-heading{font-size:7px;letter-spacing:1px}.footer{left:20px;right:20px}.controls-legend{font-size:7px;gap:7px}.controls-legend kbd{font-size:7px}.controls-legend>span:nth-last-child(2){display:none}#focus-btn{font-size:7px;letter-spacing:.7px}.world-select{right:23px;top:329px;gap:8px}.world-button span{display:none}.pause-overlay{inset:70px 0 45px}}
@media(max-width:580px){
  #app{min-height:560px}.topbar{height:66px;left:16px;right:16px;gap:6px}.brand{font-size:23px;letter-spacing:4px;gap:5px}.brand-mark{font-size:33px}.brand small{font-size:6px;letter-spacing:.8px;margin-top:6px}.utilities{gap:0}.icon-button{width:36px;height:42px}.icon-button svg{width:16px;height:16px}.nav-divider{display:none}
  .location-info{left:18px;top:85px;width:200px}.eyebrow{font-size:6px;letter-spacing:.4px;gap:6px}.location-info h1{font-size:25px;margin:9px 0 7px}.location-coords{font-size:6px;gap:6px;letter-spacing:0}.coordinate-line{width:8px}.quest-card{max-width:195px;margin-top:14px;padding-top:10px;gap:7px}.quest-icon{font-size:21px}.quest-card small{font-size:7px;margin-bottom:5px;letter-spacing:1px}.quest-card strong{font-size:8px;max-width:167px}.quest-distance{font-size:7px;margin-top:4px}
  .minimap-panel{top:85px;right:16px;width:134px;padding:7px 7px 0}.minimap-heading{gap:5px;padding-bottom:6px}.minimap-heading strong{font-size:6px;letter-spacing:0}.minimap-heading .location-dot{display:none}.map-north{font-size:6px}.minimap-panel canvas{width:118px;height:84px}.map-legend{font-size:5px;padding:6px 0;gap:4px}.map-legend>span{gap:3px}.map-legend i{width:3px;height:3px}.zoom-controls{min-height:36px;gap:0}.zoom-controls>span{font-size:6px;letter-spacing:.3px}.zoom-controls button{width:31px;height:36px;font-size:19px}.zoom-controls output{width:31px;font-size:7px}
  .world-select{right:17px;top:274px;gap:6px}.vertical-label,.world-line{display:none}.world-button{width:34px;height:34px;font-size:9px;background:#03080555}.world-button:before{left:-5px;top:16px}.world-caption{display:none}
  .bottom-hud{left:18px;right:18px;bottom:63px;display:block}.player-status{position:absolute;bottom:101px;left:0;width:188px}.player-heading{margin-bottom:6px;gap:7px}.player-sigil{display:none}.player-heading strong{font-size:19px}.player-heading small{display:none}.level{font-size:7px}.level b{font-size:10px}.meter-row{gap:6px;margin-top:6px}.meter-label{font-size:7px;width:30px}.meter-value{font-size:7px;min-width:50px}.meter{height:3px}.meter.stamina{height:2px}.souls{position:absolute;left:205px;bottom:0;margin:0;gap:7px;width:120px;flex-wrap:wrap}.souls>span:first-child{font-size:17px}.souls strong{font-size:10px}.souls>span:last-child{font-size:6px;letter-spacing:.8px}
  .action-dock{width:100%}.dock-heading{font-size:6px;letter-spacing:1.2px;margin-bottom:9px;gap:11px}.action-items{gap:6px}.action-slot{flex:1;max-width:70px;min-width:0;width:auto;height:73px}.action-slot svg{width:29px;height:29px;margin-top:10px}.action-slot small{font-size:6px;letter-spacing:0;margin-top:5px}.action-slot kbd{font-size:7px;top:5px;left:5px}.item-count{font-size:8px;top:5px;right:6px}
  .footer{left:16px;right:16px;height:44px;justify-content:center}.controls-legend{display:none}#focus-btn{min-height:44px;font-size:8px;gap:9px}.touch-controls{position:absolute;bottom:225px;left:18px;right:18px;display:flex;align-items:flex-end;gap:12px;z-index:4;pointer-events:none}.touch-controls button{pointer-events:auto;touch-action:none;-webkit-user-select:none;user-select:none}.touch-move{display:grid;grid-template-columns:40px 40px 40px;gap:3px;margin-right:auto}.touch-move button{height:40px;border:1px solid #a5bd7b40;background:#081106bc;font-size:16px;color:#bdcdaa}.touch-move button:first-child{grid-column:2}.touch-move button:nth-child(2){grid-column:1}.touch-controls>button{width:44px;height:44px;margin-bottom:1px;border:1px solid #c2b17855;border-radius:50%;background:#0c140ae6;color:#d2d8b0;font-size:16px}.touch-controls>button:last-child{width:58px;height:58px;font-size:25px}.touch-controls button:active{background:#5b6e3e66;border-color:#c5d4a5}
  .interaction-hint{top:56%;font-size:8px;padding:7px 10px}.interaction-hint kbd{font-size:8px}.toast{bottom:325px;width:85%;font-size:9px;padding:10px 14px}.pause-overlay{inset:66px 0 44px}.pause-overlay h2{font-size:38px}.modal-backdrop{padding:16px}.panel{padding:32px 25px;max-height:92svh}.panel .eyebrow{font-size:8px}.panel h2{font-size:35px;margin-bottom:23px}.setting-row{font-size:10px;gap:12px}.setting-row small{font-size:8px}.setting-row input[type=range]{width:94px}.journal-intro{font-size:20px}.journal-objective p{font-size:9px}.journal-objective strong{font-size:10px}.journal-objective small{font-size:8px}
}
@media(max-width:370px){.topbar{left:12px;right:12px}.icon-button{width:32px}.brand{font-size:21px}.brand small{font-size:5px}.location-info{left:14px;width:181px}.location-info h1{font-size:23px}.quest-card{max-width:177px}.quest-card strong{font-size:7px}.quest-distance{font-size:6px}.minimap-panel{right:12px;width:122px}.minimap-panel canvas{width:106px;height:76px}.zoom-controls>span{display:none}.zoom-controls{justify-content:center}.map-legend{font-size:4.5px}.bottom-hud{left:14px;right:14px}.action-items{gap:5px}.action-slot small{font-size:5px}.touch-controls{left:14px;right:14px;gap:9px}.touch-move{grid-template-columns:37px 37px 37px}.touch-move button{height:37px}.souls{left:195px;width:102px}}
@media(max-height:700px) and (min-width:581px){.topbar{height:66px}.location-info{top:87px}.minimap-panel{top:87px}.world-select{top:340px}.vertical-label{display:none}.bottom-hud{bottom:59px}.player-heading{margin-bottom:8px}.souls{margin-top:6px}.action-slot{height:70px}.dock-heading{margin-bottom:8px}.world-status .wind-symbol{display:none}.world-time{margin-top:10px}.footer{height:40px}.pause-overlay{inset:66px 0 40px}}
@media(max-height:700px) and (max-width:580px){.touch-controls{bottom:204px}.touch-move{grid-template-columns:35px 35px 35px}.touch-move button{height:35px}.touch-controls>button:last-child{height:50px;width:50px}.bottom-hud{bottom:55px}.player-status{bottom:91px}.action-slot{height:65px}.action-slot svg{width:26px;height:26px}.dock-heading{margin-bottom:7px}.world-select{top:260px}.toast{bottom:295px}.location-info h1{font-size:23px}.quest-card{margin-top:10px}.footer{height:38px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}

/* A quiet tactical layer: the world stays visible between the edge panels. */
.dock-heading b{font:inherit}.mission-objectives{display:flex;gap:18px;margin:0 0 0 34px;color:#7f8f79;font-size:8px;letter-spacing:.6px}.mission-objectives>span{display:flex;gap:8px;align-items:center}.mission-objectives b{color:#d6c89e;font-size:10px;font-weight:400}.mission-objectives .done,.mission-objectives .done b{color:#c2d5aa}
.stealth-panel{position:absolute;top:320px;left:34px;width:245px;z-index:3;padding:13px 14px;background:linear-gradient(110deg,#07100ee8,#07100bb3);border:1px solid #7fa08b38;transition:opacity .5s,border-color .2s;--stealth-color:#9cac93}.stealth-heading{display:flex;align-items:center;gap:7px}.stealth-eye{color:var(--stealth-color);font-size:17px;line-height:1}.stealth-heading strong{font-size:9px;color:var(--stealth-color);letter-spacing:.7px;font-weight:500;white-space:nowrap}.stealth-heading>span:last-child{font-size:7px;line-height:1.5;color:#95a590;margin-left:auto;text-align:right;max-width:92px}.exposure-heading{display:flex;justify-content:space-between;font-size:6px;letter-spacing:.8px;color:#82927d;margin-top:13px}.exposure-heading output{font-size:7px;color:var(--stealth-color);letter-spacing:0}.exposure-meter{height:3px;background:#9eb39622;margin-top:6px;overflow:hidden}.exposure-meter>span{display:block;background:var(--stealth-color);width:0;height:100%;transition:width .12s}.stealth-tip{display:flex;justify-content:space-between;gap:4px;margin-top:11px;color:#96a48d;font-size:7px}.stealth-tip>span{white-space:nowrap}.stealth-tip kbd{padding:2px 3px;font-size:7px;margin-right:2px}.stealth-panel[data-state="hidden"]{--stealth-color:#c2d7bd;border-color:#97bb9350}.stealth-panel[data-state="suspicious"]{--stealth-color:#d5b778;border-color:#c6a26855}.stealth-panel[data-state="combat"]{--stealth-color:#da9b81;border-color:#cb806655}.focus-mode .stealth-panel{opacity:0;pointer-events:none}.focus-mode .interaction-hint{display:none}
.stealth-scene .action-dock{width:420px}.stealth-scene .action-slot{width:64px}.action-slot[aria-pressed="true"]{border-color:#9fb58980;background:linear-gradient(150deg,#253322dc,#080d09eb)}.action-slot[aria-pressed="false"][data-action="lantern"] svg{color:#64725c}.action-slot.ready{border-color:#d3c894;background:linear-gradient(150deg,#51503ad4,#161b10df);box-shadow:0 0 18px #c7cc8940}.action-slot.ready svg,.action-slot.ready small{color:#f0e9c7}.stealth-scene .interaction-hint{border-color:#d3c89466;color:#e8e7d0;top:57%}.interaction-hint>span{color:#99aa8e;font-size:8px}
.mission-result{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);z-index:8;width:340px;max-width:calc(100% - 36px);padding:25px 28px;background:linear-gradient(130deg,#10190ff5,#080c09f5);border:1px solid #b2c29260;box-shadow:0 14px 75px #000a;text-align:center}.mission-result .eyebrow{justify-content:center;font-size:8px}.mission-result h2{font:500 38px/1.1 var(--serif);margin:13px 0;color:#dce5ce}.mission-result p{font-size:10px;line-height:1.9;color:#a7b89a;margin:0 0 21px}.mission-result .primary-button{width:100%;font-size:10px}.mission-result.failed{border-color:#bc987060}.mission-result.failed .eyebrow{color:#c5a583}.stealth-scene .world-caption{color:#aab7a078}.stealth-scene .quest-card{margin-top:17px}.stealth-scene .quest-distance{font-size:8px}.stealth-scene .world-select{gap:8px}
@media(min-width:1600px){.stealth-panel{left:48px}.stealth-scene .action-dock{width:448px}.stealth-scene .action-slot{width:69px}}
@media(max-width:1100px){.stealth-panel{left:26px}.stealth-scene .action-dock{width:376px}.stealth-scene .action-slot{width:57px}.stealth-scene .controls-legend{gap:6px}.stealth-scene .controls-legend>span:nth-child(2),.stealth-scene .controls-legend i{display:none}}
@media(max-width:800px){.stealth-panel{left:22px;top:310px;width:225px}.stealth-scene .action-dock{width:350px}.stealth-scene .action-slot{width:53px}.stealth-scene .player-status{width:180px}.stealth-scene .controls-legend>span:nth-child(-n+4){display:none}}
@media(max-width:580px){.stealth-panel{left:18px;top:255px;width:193px;padding:11px 12px}.stealth-heading{gap:5px}.stealth-heading strong{font-size:8px;letter-spacing:.3px}.stealth-heading>span:last-child{font-size:6px;max-width:72px}.stealth-eye{font-size:14px}.exposure-heading{font-size:5.5px;margin-top:10px;letter-spacing:.5px}.stealth-tip{font-size:6px;margin-top:10px;gap:3px}.stealth-tip kbd{font-size:6px;padding:2px}.mission-objectives{gap:13px;font-size:6px;margin-left:28px;letter-spacing:.3px}.mission-objectives>span{gap:5px}.mission-objectives b{font-size:8px}.stealth-scene .quest-card{margin-top:13px;padding-bottom:8px}.stealth-scene .quest-distance{font-size:6.5px}.stealth-scene .action-dock{width:100%}.stealth-scene .action-slot{width:auto;min-width:0;max-width:70px;height:73px}.stealth-scene .action-items{gap:4px}.stealth-scene .action-slot small{font-size:5.5px}.stealth-scene .action-slot svg{width:26px;height:26px}.stealth-scene .player-status{width:188px}.stealth-scene .world-select{gap:3px}.stealth-scene .interaction-hint{top:52%;font-size:8px}.interaction-hint>span{font-size:7px}.mission-result{top:45%;padding:22px}.mission-result h2{font-size:34px}.mission-result p{font-size:9px}.stealth-scene .location-info h1{font-size:24px;white-space:nowrap}}
@media(max-width:370px){.stealth-panel{left:14px;width:180px}.stealth-scene .location-info h1{font-size:21px}.stealth-heading strong{font-size:7px}.stealth-tip{font-size:5.5px}}
@media(max-height:700px) and (max-width:580px){.stealth-panel{top:236px;padding-top:8px;padding-bottom:8px}.stealth-tip{margin-top:7px}.exposure-heading{margin-top:7px}.stealth-scene .action-slot{height:65px}.stealth-scene .action-slot svg{width:24px;height:24px}.stealth-scene .location-info h1{font-size:22px}.stealth-scene .quest-card{margin-top:9px}.stealth-scene .interaction-hint{top:51%}}
@media(min-width:581px) and (max-width:1000px){.stealth-scene .bottom-hud{grid-template-columns:1fr auto}.stealth-scene .world-status{display:none}}
@media(min-width:581px) and (max-width:650px){.stealth-scene .player-status{width:160px}.stealth-scene .action-dock{width:340px}}

.stealth-scene .controls-legend>[data-stealth-only]{display:flex}
@media(max-width:600px){.stealth-panel{top:255px;padding:8px 11px;height:55px;max-height:60px}.stealth-panel .stealth-heading{height:14px}.stealth-panel .stealth-heading>span:last-child{max-width:none;white-space:nowrap;font-size:6px}.stealth-panel .stealth-heading strong{font-size:8px;letter-spacing:.25px}.stealth-panel .stealth-eye{font-size:14px}.stealth-panel .exposure-heading{margin-top:7px;font-size:5.5px;line-height:7px}.stealth-panel .exposure-meter{margin-top:5px;height:3px}.stealth-panel .stealth-tip{display:none}}

.action-slot:disabled{opacity:.42;cursor:default}.action-slot:disabled:hover{background:transparent;border-color:var(--line)}

/* The crowded city uses the same edge HUD, with one warm clue in the briefing. */
.population-pill{display:inline-flex;align-items:center;gap:8px;color:#a7b69b;letter-spacing:.6px;white-space:nowrap}.population-pill i{display:inline-block;width:3px;height:3px;border-radius:50%;background:#bda473}.population-pill b{font-weight:500;color:#d5bd86}.population-pill.identified b{color:#bfd0a8}.market-scene .location-info h1{color:#e0d9c3}.market-scene .quest-card strong{color:#d8cda9}.market-scene .quest-icon{color:#c8ad77}.market-scene .mission-objectives b{color:#c4ceab}.market-scene .minimap-panel{border-color:#b5a37733;background:linear-gradient(135deg,#12170fdf,#0b100ad4)}.market-scene .minimap-heading{color:#ccbd97}.market-scene .stealth-panel{border-color:#a6ac773b;background:linear-gradient(110deg,#0e170fef,#0b120cbb)}.market-scene .stealth-heading>span:last-child{overflow:hidden;text-overflow:ellipsis;min-width:0}.market-scene .action-slot.selected{border-color:#9eaa7840;background:linear-gradient(150deg,#1c2519dc,#080d09eb)}.market-scene .action-slot[data-action="assassinate"]{border-color:#c3aa7570}.market-scene .world-caption{color:#bbad8d88}.market-scene .world-button.active{color:#e0cf9d}.market-scene .quest-card small{min-height:10px}.market-scene .world-status strong{color:#d0c39e}
@media(max-width:600px){.population-pill{gap:6px;font-size:6px;letter-spacing:.4px}.market-scene .quest-card small{min-height:8px}.market-scene .quest-card strong{font-size:8px;max-width:167px}.market-scene .quest-distance{font-size:6.5px;line-height:1.5}.market-scene .stealth-heading>span:last-child{flex:1}.market-scene .world-select{gap:1px}.market-scene .world-button{height:31px}.market-scene .location-info h1{font-size:25px}.market-scene .dock-heading{letter-spacing:.7px}.market-scene .mission-objectives{gap:16px}}
@media(max-height:700px) and (max-width:580px){.market-scene .world-button{height:28px}.market-scene .world-select{top:263px}.market-scene .location-info h1{font-size:23px}}
@media(max-height:700px) and (max-width:580px){.world-select,.market-scene .world-select{display:grid;grid-template-columns:repeat(2,28px);gap:3px;top:263px}.world-select .world-button,.market-scene .world-select .world-button{width:28px;height:28px}}

/* Social stealth shares the action dock: sheathe, blend, then return to the world. */
.social-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:6px;margin-bottom:6px}.social-control{position:relative;display:flex;align-items:center;justify-content:flex-start;gap:9px;min-height:37px;padding:8px 10px;border:1px solid #a2ae794b;background:linear-gradient(120deg,#172014e8,#0a100aee);font-size:8px;text-align:left;color:#bbc9a9;overflow:hidden}.social-control kbd{flex:none;font-size:9px;padding:3px 5px;color:#c6d3b4}.social-control>span:not(.social-progress){font-size:7px;letter-spacing:.4px}.social-control b{font-weight:500;color:#d3dcca;margin-left:3px}.social-control svg{margin-left:auto;width:19px;height:19px;color:#96a881}.social-control:hover{border-color:#c6d49a99;background:#253322ef}.social-control[aria-pressed="true"]{border-color:#bfc99199;background:linear-gradient(120deg,#34402ae8,#132012ee)}.weapon-control[aria-pressed="true"]{border-color:#d0a57780}.weapon-control[aria-pressed="true"] b{color:#e0bd8a}.social-control strong{font-size:8px;font-weight:500;letter-spacing:.8px;white-space:nowrap}.blend-control>span#blend-control-value{margin-left:auto;font-size:7px;letter-spacing:0;color:#d0d9bd;white-space:nowrap}.social-progress{position:absolute;bottom:0;left:0;right:0;height:2px;background:#b8c78e17}.social-progress>span{display:block;width:0;height:100%;background:#bdd99e;transition:width .12s}.social-control.ready{border-color:#a3c38d88;box-shadow:inset 0 0 16px #a4c3800d}.social-guidance{margin:0 0 9px;min-height:12px;font-size:7px;line-height:1.6;text-align:center;color:#b4be9f;letter-spacing:.05px}.social-control:disabled{opacity:.4;cursor:default}.market-scene .dock-heading{margin-bottom:8px}.market-scene .controls-legend>[data-market-only]{display:flex}.market-scene .controls-legend>span:nth-child(1),.market-scene .controls-legend>span:nth-child(2),.market-scene .controls-legend>span:nth-child(6){display:none}
@media(min-width:1600px){.social-control{min-height:39px;font-size:9px}.social-control>span:not(.social-progress){font-size:8px}.social-guidance{font-size:8px}}
@media(max-width:800px){.social-control{gap:6px;padding:7px 8px}.social-control strong{font-size:7px;letter-spacing:.35px}.social-control>span:not(.social-progress){font-size:6px}.social-control b{margin-left:2px}.social-control svg{width:16px;height:16px}.social-guidance{font-size:6.5px}.market-scene .controls-legend>span:nth-child(5){display:none}}
@media(max-width:580px){.market-scene .social-actions{gap:4px;margin-bottom:5px}.social-control{min-height:36px;padding:7px 8px;gap:7px}.social-control kbd{font-size:8px;padding:3px 4px}.social-control>span:not(.social-progress){font-size:6px}.social-control strong{font-size:7px}.social-control svg{width:17px;height:17px}.blend-control>span#blend-control-value{font-size:6px}.social-guidance{font-size:6.5px;margin-bottom:8px;min-height:12px;line-height:1.5;letter-spacing:0}.market-scene .player-status{bottom:160px}.market-scene .touch-controls{bottom:284px}.market-scene .toast{bottom:379px}.market-scene .dock-heading{margin-bottom:7px}.market-scene .interaction-hint{max-width:90%;white-space:normal;text-align:center;line-height:1.7}}
@media(max-width:370px){.social-control{gap:4px;padding:7px 6px}.social-control>span:not(.social-progress){font-size:5.5px}.social-control strong{font-size:6px}.social-control svg{display:none}.social-guidance{font-size:6px}}
@media(max-height:700px) and (max-width:580px){.market-scene .player-status{bottom:145px}.market-scene .touch-controls{bottom:258px}.market-scene .toast{bottom:355px}.social-control{min-height:34px}.social-guidance{font-size:6px;min-height:10px;line-height:1.4;margin-bottom:6px}.market-scene .world-select{top:263px}}

/* A slim equipment belt keeps new tools one touch away. */
.equipment-bar{display:grid;grid-template-columns:1.25fr 1.1fr 1fr .85fr;gap:5px;margin-top:7px}.equipment-action{height:35px;min-width:0;display:flex;align-items:center;gap:6px;padding:0 7px;border:1px solid #9cab7538;background:#0a110ce8;color:#acba99;font-size:7px;letter-spacing:.2px;text-align:left;transition:background .2s,border-color .2s}.equipment-action kbd{flex:none;font-size:8px;padding:2px 3px;color:#c2d0ad}.equipment-action>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.equipment-action b{margin-left:auto;flex:none;font-size:9px;font-weight:500;color:#d6c18f}.equipment-action:hover,.equipment-action.fired{background:#283321ed;border-color:#b3c18c88}.equipment-action.empty b{color:#9c7967}.equipment-action:disabled{opacity:.4;cursor:default}.equipment-action.ready{border-color:#cebc7d99;background:#2f3219e8;color:#e0d4a9}.inventory-action{border-color:#b4a17655;color:#ccbf98}.inventory-action span{font-size:6.5px;letter-spacing:.5px}.equipment-action:focus-visible,.inventory-panel button:focus-visible{outline:2px solid #e3d6a7;outline-offset:3px}
/* Inventory: the same quiet palette, with tactile glyph drawings and clear slots. */
.inventory-panel{width:860px;padding:28px 30px 20px;background:radial-gradient(ellipse at 10% 0,#202c1b66,transparent 56%),linear-gradient(125deg,#11170ffb,#080d0afc);border-color:#b4bc8e55;box-shadow:0 25px 100px #000b}.inventory-header{display:flex;justify-content:space-between;align-items:center;padding-right:32px;gap:15px}.inventory-panel .eyebrow{font-size:8px;letter-spacing:1.5px}.inventory-panel h2{font-size:43px;margin:7px 0 0;color:#e3ddc5}.inventory-gold{display:grid;grid-template-columns:auto auto;gap:0 8px;align-items:center;color:#d9ba78}.inventory-gold>span{grid-row:span 2;font:32px var(--serif)}.inventory-gold strong{font-size:20px;font-weight:400;line-height:1.3}.inventory-gold small{font-size:6px;letter-spacing:1px;color:#a99a76}.inventory-intro{font-size:9px;line-height:1.8;color:#a2ad94;margin:10px 0 19px}.equipped-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:21px}.equipped-slots button{min-width:0;text-align:left;padding:10px 13px;border:1px solid #9eae7448;background:#17201499}.equipped-slots button:hover{border-color:#c6c68b88;background:#26311d99}.equipped-slots small{font-size:6px;letter-spacing:1px;color:#869575}.equipped-slots button>span{display:flex;align-items:center;gap:11px;margin-top:6px}.equipped-slots i{font:normal 22px/1 var(--mono);color:#c7d2ad;width:28px;text-align:center;overflow:hidden}.equipped-slots strong{font-size:9px;font-weight:400;color:#d1d9c1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inventory-layout{display:grid;grid-template-columns:minmax(0,1fr) 253px;gap:22px}.inventory-collection{min-width:0}.inventory-filters{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:12px}.inventory-filters button{font-size:7px;letter-spacing:.5px;padding:8px 10px;border-bottom:1px solid transparent;color:#8f9c82}.inventory-filters button[aria-pressed="true"]{color:#d9d3b6;border-color:#bfb981;background:#a9b46f0d}.inventory-filters button:hover{color:#e1e0c9}.inventory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;align-content:start;min-height:208px}.inventory-item{position:relative;min-width:0;min-height:99px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:16px 6px 9px;border:1px solid #9ba87e2a;background:linear-gradient(135deg,#1b24186b,#0c120b99);text-align:center;color:#a7b795;transition:background .18s,border-color .18s}.inventory-item:hover{background:#2a3621a3;border-color:#bbc58c77}.inventory-item[aria-pressed="true"]{background:linear-gradient(135deg,#3d482966,#1c2617a8);border-color:#d0c48b99;box-shadow:inset 0 0 19px #bdd28b0b}.inventory-item[data-rarity="rare"]{border-color:#a9a46a66}.inventory-item-icon{font:27px/1.25 var(--mono);color:#c5cdae;min-height:37px;max-width:100%;overflow:hidden;white-space:pre}.inventory-item-name{font-size:7px;line-height:1.5;color:#c3cbb6;max-width:100%;overflow-wrap:anywhere}.inventory-item-count{position:absolute;top:6px;right:7px;font-size:8px;color:#cab988}.inventory-item-equipped{position:absolute;top:7px;left:7px;font-size:7px;color:#bfcd94}.inventory-empty{grid-column:1/-1;padding:36px 14px;margin:0;border:1px dashed #87936b33;color:#8f9b81;text-align:center;font-size:9px;line-height:1.8}.inventory-collection-note{font-size:7px;line-height:1.8;color:#87967c;margin:11px 0 0}.inventory-collection-note>span{color:#bcab77;padding-right:5px}.inventory-collection-note kbd{font-size:7px;padding:1px 3px}.item-detail{min-width:0;border-left:1px solid #a5b1792b;padding-left:21px}.item-detail-top{display:flex;justify-content:space-between;gap:8px;font-size:6px;letter-spacing:.8px;color:#95a382}.item-detail-top>span:last-child{color:#b8a778}.item-detail pre{display:flex;align-items:center;justify-content:center;min-height:94px;margin:12px 0;color:#c3ccaa;font:11px/1.2 var(--mono);white-space:pre;text-shadow:0 0 16px #c2d09622;overflow:hidden}.item-detail h3{font:500 28px/1.1 var(--serif);color:#e0d9bd;margin:0 0 8px}.item-detail>p:not(.inventory-feedback){font-size:8px;line-height:1.85;color:#a8b198;margin:0 0 14px;min-height:44px}.item-detail-stats{display:grid;grid-template-columns:1fr auto;gap:7px;font-size:7px;margin:0 0 17px;padding-top:12px;border-top:1px solid #b0bb8822}.item-detail-stats dt{color:#91a080}.item-detail-stats dd{margin:0;color:#d2d6ba;text-align:right}.item-detail .primary-button{width:100%;font-size:8px;min-height:38px;padding:10px 12px}.item-detail .primary-button:disabled{background:#56634218;color:#849077;border-color:#82916538;cursor:default}.inventory-feedback{font-size:7px;line-height:1.6;min-height:12px;margin:8px 0 0;color:#bdc99f}.inventory-footer{display:flex;justify-content:space-between;gap:10px;border-top:1px solid #a5b1792b;margin-top:21px;padding-top:14px;font-size:7px;color:#a6b092}.inventory-footer span{white-space:nowrap}.inventory-footer kbd{font-size:7px;padding:2px 4px}.inventory-aim-note{font-size:7px;line-height:1.6;color:#849379;text-align:center;margin:11px 0 0}
@media(max-width:800px){.equipment-action{padding:0 6px;gap:4px;font-size:6px}.equipment-action kbd{font-size:7px}.inventory-panel{width:710px;padding:26px}.inventory-layout{grid-template-columns:minmax(0,1fr) 220px;gap:17px}.item-detail{padding-left:17px}.inventory-item{min-height:94px}.inventory-item-name{font-size:6px}.inventory-filters button{padding:8px;font-size:6px}}
@media(max-width:580px){.equipment-bar{gap:4px;margin-top:5px;grid-template-columns:1.25fr 1.1fr 1fr .8fr}.equipment-action{height:34px;font-size:6px;padding:0 6px;gap:5px}.equipment-action b{font-size:8px}.inventory-action span{font-size:6px;letter-spacing:0}.action-slot,.stealth-scene .action-slot{height:64px}.action-slot svg{height:25px;width:25px}.action-slot small{margin-top:3px}.player-status{bottom:131px}.market-scene .player-status{bottom:190px}.touch-controls{bottom:255px}.market-scene .touch-controls{bottom:314px}.toast{bottom:355px}.market-scene .toast{bottom:409px}.topbar .brand{letter-spacing:3px}.topbar .icon-button{width:31px}.topbar .brand-mark{font-size:28px}.topbar .brand small{font-size:5px}.modal-backdrop{padding:12px}.inventory-panel{max-height:94svh;padding:24px 17px 17px}.inventory-panel .eyebrow{font-size:6px;letter-spacing:.8px}.inventory-panel h2{font-size:34px;margin:5px 0 0}.inventory-header{padding-right:23px;gap:9px}.inventory-gold{gap:0 5px}.inventory-gold strong{font-size:17px}.inventory-gold small{font-size:5px}.inventory-gold>span{font-size:26px}.inventory-intro{font-size:7px;margin:9px 0 14px}.equipped-slots{gap:5px;margin-bottom:13px}.equipped-slots button{padding:9px 7px}.equipped-slots small{font-size:5px;letter-spacing:.4px}.equipped-slots button>span{gap:4px;margin-top:7px}.equipped-slots i{font-size:17px;width:20px}.equipped-slots strong{font-size:6px}.inventory-layout{grid-template-columns:1fr;gap:17px}.inventory-filters{gap:5px;margin-bottom:10px}.inventory-filters button{font-size:6px;flex:1;padding:8px 5px}.inventory-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;min-height:0}.inventory-item{min-height:79px;padding:13px 5px 7px}.inventory-item-icon{font-size:22px;min-height:29px}.inventory-item-name{font-size:6px}.inventory-item-count{font-size:7px;right:5px;top:5px}.inventory-item-equipped{font-size:6px;left:5px;top:6px}.inventory-collection-note{font-size:6px;margin-top:8px}.item-detail{position:relative;padding:13px 0 0;border-left:0;border-top:1px solid #a5b1792b;display:grid;grid-template-columns:minmax(0,1fr) 105px;column-gap:14px}.item-detail-top{grid-column:1/-1;margin-bottom:8px;font-size:5.5px}.item-detail pre{grid-column:2;grid-row:2/4;margin:0;min-height:60px;font-size:8px;align-self:start}.item-detail h3{font-size:27px;grid-column:1;margin-bottom:5px}.item-detail>p:not(.inventory-feedback){grid-column:1;font-size:7px;min-height:0;margin-bottom:11px;line-height:1.6}.item-detail-stats{grid-column:1/-1;grid-template-columns:auto 1fr auto 1fr;gap:7px 10px;margin-bottom:12px;padding-top:10px;font-size:6px}.item-detail-stats dd{text-align:left}.item-detail .primary-button{grid-column:1/-1;min-height:36px;font-size:8px}.inventory-feedback{grid-column:1/-1;font-size:6px;margin:6px 0 0;min-height:10px}.inventory-footer{font-size:5.5px;gap:5px;margin-top:12px;padding-top:11px}.inventory-footer kbd{font-size:6px;padding:2px 3px}.inventory-aim-note{font-size:6px;margin-top:9px;line-height:1.7}}
@media(max-width:370px){.topbar .icon-button{width:28px}.topbar .brand{font-size:20px;letter-spacing:2px}.topbar .brand-mark{font-size:25px}.topbar .brand small{letter-spacing:.3px}.equipment-action{padding:0 4px;gap:3px;font-size:5.5px}.inventory-action span{font-size:5px}.inventory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.inventory-footer>span{font-size:5px}.inventory-panel{padding:24px 14px 15px}.inventory-gold small{font-size:4.5px}}
@media(max-height:700px) and (max-width:580px){.action-slot,.stealth-scene .action-slot{height:58px}.action-slot svg,.stealth-scene .action-slot svg{width:22px;height:22px}.equipment-action{height:31px}.player-status{bottom:120px}.market-scene .player-status{bottom:173px}.touch-controls{bottom:233px}.market-scene .touch-controls{bottom:286px}.toast{bottom:325px}.market-scene .toast{bottom:385px}.inventory-panel{max-height:95svh}.inventory-intro{margin-bottom:11px}.equipped-slots{margin-bottom:9px}}
@media(max-width:580px){.inventory-header{padding-right:48px}.inventory-gold{flex:none}.inventory-header>div:first-child{min-width:0}}


/* ShadowMaster's longer wordmark keeps the full utility row within reach. */
.topbar .brand{font-size:29px;letter-spacing:1px;white-space:nowrap;flex-shrink:0}.topbar .brand>span:last-child{min-width:0}.topbar .utilities{flex-shrink:0}
@media(max-width:1000px){.topbar .chapter{display:none}}
@media(max-width:580px){.topbar .brand{font-size:24px;letter-spacing:.1px;gap:6px}.topbar .brand-mark{font-size:27px}.topbar .brand small{font-size:5px;letter-spacing:.7px}}
@media(max-width:370px){.topbar .brand{font-size:20px;letter-spacing:0;gap:4px}.topbar .brand-mark{font-size:23px}.topbar .brand small{font-size:4.5px;letter-spacing:.45px}}

/* Six small chapters: progress lives in the existing journal and screen edges. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.chapter-tasks{list-style:none;padding:0;margin:0 0 0 34px;display:grid;gap:6px;max-width:236px;font-size:8px;color:#a2ae92;line-height:1.5}.chapter-tasks li{display:flex;align-items:flex-start;gap:8px;min-width:0}.chapter-tasks li>span:first-child{font-size:10px;color:#b9aa7c;line-height:1.2;flex:none}.chapter-tasks li>span:nth-child(2){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chapter-tasks li.done{color:#78896e}.chapter-tasks li.done>span:first-child{color:#acbf92}.quest-card.exit-ready .quest-icon{color:#dce3b8;text-shadow:0 0 18px #c0d99855}.quest-card.exit-ready strong{color:#e0dfbb}.quest-card.exit-ready .quest-distance{color:#bacb9d}.world-button.locked{color:#5d6957}.world-button.locked:before{width:5px;height:5px;background:none;border:1px solid #6a755955;transform:none;left:-7px;top:13px;box-shadow:none}.world-button.locked:hover{color:#a1aa92}.world-button.completed:not(.active){color:#a9bc91}.world-button.completed:not(.active):before{content:'✓';width:auto;height:auto;background:none;left:-10px;top:10px;font-size:8px;color:#adbc89}.world-button.active:before{content:''}.journey-record{margin:0 0 23px}.journey-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:7px;letter-spacing:.8px;color:#8c9e78;margin-bottom:12px}.journey-heading strong{font-size:7px;font-weight:400;color:#c5c6a1;white-space:nowrap;letter-spacing:.5px}.journey-list,.journal-chapter-tasks{margin:0;padding:0;list-style:none}.journey-list{display:grid;grid-template-columns:1fr 1fr;gap:6px}.journey-list li{display:grid;grid-template-columns:17px 1fr;gap:4px 7px;padding:9px;border:1px solid #99aa7129;background:#17221033;font-size:8px;line-height:1.5;color:#98aa85}.journey-list b{grid-row:span 2;font-size:8px;font-weight:400;color:#9daa7f}.journey-list small{grid-column:2;font-size:5px;letter-spacing:.8px;color:#788967}.journey-list li.current{background:#34432544;border-color:#b9ca8777;color:#d5ddbd}.journey-list li.current b,.journey-list li.current small{color:#c0cda3}.journey-list li.done{color:#adbd95;border-color:#a6b88055}.journey-list li.done small{color:#b7c98e}.journey-list li.locked{opacity:.48}.chapter-briefing{border-top:1px solid var(--line);padding-top:18px;margin-bottom:22px}.journal-chapter-tasks{display:grid;gap:9px;color:#b4c2a4;font-size:9px;line-height:1.7}.journal-chapter-tasks li{display:flex;align-items:flex-start;gap:10px}.journal-chapter-tasks li>span:first-child{color:#c2b07e}.journal-chapter-tasks li.done{color:#879b73}.journal-chapter-tasks li.done>span:first-child{color:#aabc90}.chapter-briefing>p{font-size:9px;line-height:1.9;color:#9aad86;padding:11px 0 0;margin:12px 0 0;border-top:1px solid #a5b17920}.location-info .quest-card{margin-bottom:0}
@media(max-width:800px){.chapter-tasks{font-size:7px;gap:5px}}
@media(max-width:580px){.chapter-tasks{margin-left:28px;max-width:167px;font-size:6.5px;line-height:1.5;gap:4px}.chapter-tasks li{gap:6px}.chapter-tasks li>span:first-child{font-size:8px}.location-info .quest-card{padding-bottom:8px}.quest-card.exit-ready .quest-distance{font-size:7px}.journey-record{margin-bottom:18px}.journey-heading{font-size:6px;margin-bottom:10px}.journey-heading strong{font-size:6px}.journey-list{gap:5px}.journey-list li{padding:8px 7px;font-size:7px;grid-template-columns:14px 1fr;gap:3px 5px}.journey-list b{font-size:7px}.journey-list small{font-size:4.5px;letter-spacing:.5px}.chapter-briefing{padding-top:15px;margin-bottom:18px}.journal-chapter-tasks{font-size:8px;gap:7px}.chapter-briefing>p{font-size:8px;line-height:1.8}.world-button.locked:before{top:14px}.world-button.completed:not(.active):before{top:11px}}
@media(max-width:370px){.chapter-tasks{font-size:6px;max-width:150px}.quest-card.exit-ready .quest-distance{font-size:6px}}

.location-info .quest-card strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;max-height:3em}
