:root{color-scheme:dark;--bg:#111716;--panel:#19201e;--line:#333b35;--text:#e3e2d7;--muted:#8e9991;--gold:#c5a877;--mint:#8ab5a0;--red:#d58177;font-family:'Yu Gothic UI','Meiryo',sans-serif;font-size:14px}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 5%,#29332d44,transparent 65%),var(--bg);color:var(--text)}button,input,select{font:inherit}button,a,select,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer;color:inherit;border:1px solid var(--line);background:transparent;border-radius:3px;transition:background .15s,border-color .15s}button:hover:not(:disabled){background:#c5a87712;border-color:#8d805f}button:focus-visible,select:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button:disabled{opacity:.4;cursor:not-allowed}button:active:not(:disabled){transform:translateY(1px)}button[hidden],[hidden]{display:none!important}.app-shell{max-width:1352px;margin:auto;padding:0 40px}.masthead{height:85px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{color:#e0e0d6;text-decoration:none;letter-spacing:.09em;font-size:17px;font-weight:800}.brand>span{font-weight:400;margin-left:5px;color:#a6ada5}.brand i{display:block;font-style:normal;font-size:8px;letter-spacing:.22em;margin-top:7px;color:#78877d}.edition{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:9px;letter-spacing:.15em}.edition b{color:var(--gold);font-size:11px;margin-right:10px}.signal{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--mint);box-shadow:0 0 8px #8ab5a040}.icon-button{width:32px;height:32px;font-size:17px;display:grid;place-items:center}.title-row{display:flex;justify-content:space-between;align-items:center;padding:30px 0 25px}.eyebrow,.tiny-label{font-size:9px;letter-spacing:.19em;color:var(--gold);font-weight:600}.title-row h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:35px;letter-spacing:.1em;font-weight:500;margin:9px 0 0}.title-row h1>span{font-family:'Yu Gothic UI',sans-serif;display:inline-block;font-size:11px;color:var(--muted);letter-spacing:.06em;margin-left:24px;vertical-align:middle}.player-badge{display:flex;gap:12px;align-items:center}.avatar{border:1px solid #68664e;width:42px;height:42px;display:grid;place-items:center;background:#293129;font-size:25px;color:var(--gold)}.player-badge button{border:0;padding:0;font-size:12px}.player-badge small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.community-stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:16px 0;margin-bottom:26px}.community-stats>div{display:flex;align-items:center;gap:9px;padding:0 22px;border-right:1px solid var(--line)}.community-stats>div:first-child{padding-left:0}.community-stats>div:last-child{border-right:0}.stat-symbol{font-size:19px;color:var(--gold);margin-right:4px}.community-stats small{font-size:10px;color:var(--muted)}.community-stats b{font-size:23px;font-weight:400;margin-left:auto;font-variant-numeric:tabular-nums}.community-stats>div>span:last-child{font-size:9px;color:var(--muted)}.game-frame{background:var(--panel);border:1px solid #3c453b;box-shadow:0 10px 50px #0002;border-radius:5px;overflow:hidden}.tabs{height:51px;display:flex;align-items:stretch;border-bottom:1px solid var(--line);background:#171e1b;padding:0 12px;gap:8px}.tabs>button{border:0;border-radius:0;padding:0 14px;font-size:12px;color:var(--muted);display:flex;align-items:center;gap:7px}.tabs>button.active{color:var(--gold);border-bottom:2px solid var(--gold)}.tabs b{font-size:9px;min-width:17px;background:#303c30;padding:2px 4px;border-radius:2px;color:#b5c4b0}.save-state{font-size:9px;margin-left:auto;align-self:center;color:var(--muted)}.save-state:before{content:'●';color:var(--mint);font-size:6px;margin-right:6px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 318px}.expedition-view{min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--line)}.map-head{display:flex;align-items:center;justify-content:space-between;padding:19px 22px 13px}.tiny-label{color:var(--muted);font-size:8px}.map-head h2{font-weight:500;font-size:16px;margin:5px 0 0}.map-head h2 small{font-size:10px;color:var(--muted);margin-left:6px}.status-tag{border:1px solid #536253;color:var(--mint);padding:5px 9px;font-size:10px;border-radius:2px}.map-container{height:260px;position:relative;background:#101613;overflow:hidden;margin:0 16px 13px;border:1px solid #2c3830;background-image:linear-gradient(#42513b12 1px,transparent 1px),linear-gradient(90deg,#42513b12 1px,transparent 1px);background-size:22px 22px}canvas{display:block;width:100%;height:100%}.map-empty{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;background:radial-gradient(ellipse,#15201988,#101613cc)}.map-empty>span{font-size:37px;color:var(--gold);font-weight:200;margin-bottom:10px}.map-empty b{font-family:'Yu Mincho',serif;font-size:19px;letter-spacing:.12em;font-weight:400}.map-empty p{font-size:10px;color:var(--muted);text-align:center;line-height:1.9}.map-legend{position:absolute;bottom:0;left:0;right:0;padding:8px 12px;display:flex;gap:14px;font-size:8px;color:var(--muted);background:#101613dd}.map-legend>span{display:flex;gap:5px;align-items:center}.map-legend>span:last-child{margin-left:auto}.map-legend i{height:5px;width:5px;display:inline-block}.legend-player{background:var(--gold);border-radius:50%}.legend-route{background:#4b6854}.legend-chest{border:1px solid var(--gold)}.floor-switch{position:absolute;top:8px;right:8px;display:flex;gap:8px;align-items:center;background:#111b15;padding:3px;font-size:10px}.floor-switch button{width:24px;height:24px;font-size:16px}.scene-container{height:216px;position:relative;background:#101815;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.scene-label{position:absolute;top:13px;left:20px;display:flex;align-items:center;gap:7px;color:#abbcaf;font-size:9px;letter-spacing:.05em}.scene-label b{font-weight:400}.hp-hud{position:absolute;left:20px;bottom:13px;width:150px}.hp-hud>div:first-child,.enemy-hud>div:first-child{display:flex;justify-content:space-between;font-size:9px;color:#bdc9bd;margin-bottom:5px}.hp-hud b{font-weight:400}.bar{height:4px;background:#050c08;border-radius:2px;overflow:hidden}.bar i{display:block;width:100%;height:100%;background:#89a982;transition:width .25s}.enemy-hud{position:absolute;right:20px;top:46px;width:170px}.enemy-bar i{background:#bd7065}.enemy-hud b{font-weight:400}.scene-toast{position:absolute;inset:42% 15% auto;text-align:center;color:var(--gold);text-shadow:0 2px 6px #000;font-size:13px;pointer-events:none;transition:opacity .5s}.expedition-controls{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;border-bottom:1px solid var(--line);background:#1c241f}.expedition-controls .tiny-label{display:block;margin-bottom:5px;font-size:7px}.loot-indicator{border:0;padding:0;color:var(--gold);font-size:10px}.loot-indicator b{font-size:18px;color:var(--text);font-weight:400;margin:0 6px}.loot-indicator>span{color:#859487;font-size:9px;border:1px solid #3a463b;padding:2px 5px;margin-left:8px}.play-controls{display:flex;gap:6px}.play-controls button{min-height:34px;min-width:35px;font-size:11px;background:#152019}.play-controls .retreat{padding:0 10px;color:#c7b89b}.journey-log{padding:13px 20px;font-size:10px;display:flex;gap:9px;align-items:center;color:#a9b6a9;min-height:46px;line-height:1.5;flex:1}.log-mark{color:var(--gold)}.preparation{padding:19px 18px 14px;background:#1c231f}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:13px}.section-heading h2{font-size:12px;font-weight:500;margin:0}.section-heading>span{font-size:8px;color:#849385;letter-spacing:.1em}.dungeon-list{display:flex;flex-direction:column;gap:7px}.dungeon-card{display:flex;align-items:center;width:100%;text-align:left;padding:10px;gap:11px;border-color:#394238;background:#1a211c;position:relative}.dungeon-card.selected{border-color:#9f8d65;background:linear-gradient(100deg,#bba47316,#1b241d)}.dungeon-icon{width:35px;height:34px;border-right:1px solid #3d483b;display:grid;place-items:center;color:var(--gold);font-size:25px}.dungeon-card:nth-child(2) .dungeon-icon{color:#a295b6}.dungeon-card:nth-child(3) .dungeon-icon{color:#b6a78b}.dungeon-card b{font-weight:500;font-size:11px;display:block}.dungeon-card small{display:block;color:var(--muted);font-size:8px;margin-top:5px}.dungeon-card .radio-dot{width:10px;height:10px;border:1px solid #5a6557;border-radius:50%;margin-left:auto}.dungeon-card.selected .radio-dot{border-color:var(--gold);background:var(--gold);box-shadow:inset 0 0 0 2px #253024}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.field-grid label{font-size:9px;color:var(--muted)}select,input{color:var(--text);background:#131c16;border:1px solid #3d483b;border-radius:2px;min-height:33px;width:100%;padding:5px 8px;margin-top:6px;font-size:11px}select:disabled{opacity:.6}.risk-line{display:flex;align-items:center;justify-content:space-between;font-size:8px;color:#a1ac9c;margin-top:7px}.risk-line button{border:0;font-size:12px;padding:0 2px}.stance-info{font-size:8px;color:#828e81;margin-top:3px}.launch-button{width:100%;padding:12px 15px;border:1px solid #b49c6c;background:var(--gold);color:#1c251d;font-weight:700;font-size:12px;margin-top:13px;display:flex;align-items:center;justify-content:space-between;letter-spacing:.04em}.launch-button:hover:not(:disabled){background:#d4ba8c;color:#172017}.launch-button span{font-size:16px}.launch-note{color:#9ba58f;text-align:center;font-size:8px;margin:8px 0 0}.character-section{margin-top:19px;border-top:1px solid var(--line);padding-top:15px}.character-section .section-heading{margin-bottom:10px}.xp-track{height:12px;position:relative;background:#101a13;overflow:hidden;border:1px solid #354131}.xp-track i{height:100%;display:block;background:#4c6545}.xp-track span{position:absolute;inset:0;text-align:center;font-size:7px;line-height:10px;color:#bfceb6}.combat-stats{display:flex;gap:8px;margin-top:12px}.combat-stats>div{flex:1;font-size:9px;color:#a0ac9b;display:flex;align-items:center;justify-content:space-between}.combat-stats b{font-size:13px;color:var(--text);font-weight:400}.attributes{display:flex;margin:10px 0 12px;border-top:1px solid #354030;border-bottom:1px solid #354030}.attributes>span{flex:1;font-size:9px;padding:7px 4px;color:var(--muted);text-align:center}.attributes b{color:var(--gold);margin-left:7px;font-size:12px;font-weight:400}.ability-button{display:flex;gap:9px;align-items:center;border:0;padding:0 0 9px;width:100%;text-align:left}.ability-button>span:first-child{color:var(--gold);font-size:23px}.ability-button div{flex:1}.ability-button small{display:block;color:var(--muted);font-size:8px}.ability-button b{display:block;font-size:10px;font-weight:400;margin-top:3px}.ability-button>span:last-child{color:var(--muted)}.gear-list{display:flex;flex-direction:column;gap:4px}.gear-row{display:flex;align-items:center;width:100%;padding:6px 7px;text-align:left;gap:8px;background:#162018;border-color:#303d2f}.gear-row .gear-symbol{width:19px;text-align:center;color:var(--gold);font-size:17px}.gear-row small{font-size:8px;color:#8d9b85;width:27px}.gear-row b{font-size:9px;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gear-row>span:last-child{margin-left:auto;color:#73836b}.wallet{display:flex;justify-content:space-between;margin-top:11px;font-size:9px;color:#aaa88b}.wallet b{font-weight:500;color:#dbc693;margin-left:4px}.chronicle-section{margin-top:29px}.chronicle-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:15px}.chronicle-title h2{font-family:'Yu Mincho',serif;font-size:20px;letter-spacing:.05em;font-weight:400;margin:7px 0 0}.chronicle-meta{font-size:9px;color:var(--muted)}.chronicle-feed{border-top:1px solid var(--line)}.feed-row{display:flex;align-items:center;gap:13px;min-height:47px;border-bottom:1px solid #303a30;font-size:10px}.feed-icon{color:var(--mint);font-size:17px;width:27px;text-align:center}.feed-icon.death{color:var(--red)}.feed-icon.find{color:var(--gold)}.feed-row .feed-text{flex:1;line-height:1.8}.feed-row b{font-weight:500;color:#d4dacc}.feed-row small{font-size:9px;color:var(--muted)}.feed-row time{color:#81917f;font-size:9px;white-space:nowrap}.feed-empty{padding:25px;color:var(--muted);text-align:center;font-size:11px}footer{display:flex;align-items:center;gap:20px;padding:26px 0;font-size:8px;color:#748371;letter-spacing:.05em}footer>span:nth-child(2){margin-left:auto}footer i{font-style:normal;padding:0 7px}footer button{border:0;font-size:8px;color:#a2ad98;padding:4px}dialog{width:min(920px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:0;border:1px solid #65705a;color:var(--text);background:#1b241d;border-radius:5px;box-shadow:0 20px 100px #0008}dialog::backdrop{background:#060d09bb;backdrop-filter:blur(5px)}.modal-header{position:sticky;top:0;z-index:2;background:#1b241df5;padding:23px 26px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.modal-header h2{font-family:'Yu Mincho',serif;font-weight:400;font-size:24px;margin:8px 0 0}.modal-header button{font-size:24px}#modal-content{padding:22px 26px}.modal-info{font-size:12px;color:#a9b7a2;line-height:1.9;margin:0 0 18px}.modal-note{font-size:10px;color:#93a18c;line-height:1.8}.inventory-toolbar{display:flex;gap:7px;align-items:center;margin-bottom:15px;flex-wrap:wrap}.inventory-toolbar button{font-size:10px;padding:7px 10px}.inventory-toolbar button.selected{border-color:var(--gold);color:var(--gold)}.inventory-toolbar select{width:130px;margin:0 0 0 auto}.inventory-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.item-card{padding:12px;background:#151e17;border:1px solid #34432f;border-top:2px solid var(--q);min-width:0;border-radius:2px}.item-topline{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px;font-size:9px;color:var(--q)}.item-topline small{font-size:8px;color:#9aa592}.item-card h3{font-weight:500;font-size:12px;line-height:1.6;margin:6px 0;color:var(--q);overflow-wrap:anywhere}.item-req{font-size:9px;color:#899781;margin-bottom:9px}.item-req.unmet{color:var(--red)}.item-values{font-size:10px;color:#b3bea9;line-height:1.8;margin:7px 0}.item-mods{font-size:9px;color:#a4b99e;min-height:16px;line-height:1.7}.item-actions{display:flex;gap:5px;margin-top:12px}.item-actions button{padding:7px 5px;font-size:9px;flex:1}.item-actions button:first-child{color:var(--gold)}.cost{font-size:8px;color:#88927f;margin-top:8px}.empty-box{text-align:center;padding:35px;color:#99a58f;font-size:12px;line-height:2}.skill-board{position:relative;height:440px;overflow:auto;border:1px solid #3b4935;background:radial-gradient(ellipse,#2d3f2a55,#101a13);background-image:radial-gradient(#71826430 .7px,transparent .7px);background-size:14px 14px}.skill-board svg{width:100%;height:100%;min-width:570px}.skill-board line{stroke:#485542;stroke-width:2}.skill-board line.lit{stroke:#b29d67}.skill-node{cursor:pointer}.skill-node circle{fill:#19291a;stroke:#58664c;stroke-width:1.5}.skill-node.available circle{stroke:#b8a16d;stroke-dasharray:3 2}.skill-node.owned circle{fill:#6d6641;stroke:#dbc38a}.skill-node text{fill:#cdd6c0;text-anchor:middle;font-size:10px;pointer-events:none}.skill-node .node-icon{font-size:15px;fill:#c6ac76}.skill-node:focus-visible{outline:0}.skill-node:focus-visible circle{stroke:white;stroke-width:3}.skill-description{min-height:63px;background:#152017;padding:12px;margin-top:10px;display:flex;align-items:center;gap:15px}.skill-description div{flex:1}.skill-description b{font-size:12px;font-weight:500;color:var(--gold)}.skill-description p{font-size:10px;color:#a2b197;margin:5px 0 0}.skill-description button{padding:9px 13px;font-size:10px}.ability-options{display:grid;gap:10px}.ability-option{display:flex;gap:15px;align-items:center;padding:15px;background:#142017}.ability-option div{flex:1}.ability-option h3{font-size:13px;margin:0 0 8px;color:var(--gold)}.ability-option p{font-size:11px;color:var(--muted);margin:0}.ability-option button{padding:9px 14px}.result-banner{text-align:center;padding:12px}.result-banner .result-symbol{font-size:45px;color:var(--gold)}.result-banner h3{font-family:'Yu Mincho',serif;font-size:27px;font-weight:400;margin:10px 0}.result-banner p{font-size:12px;color:#a2b195;line-height:1.8}.result-numbers{display:flex;justify-content:center;gap:40px;margin:20px 0}.result-numbers b{font-size:25px;color:var(--gold);display:block;font-weight:400}.result-numbers span{font-size:10px;color:var(--muted)}.primary{background:var(--gold);color:#142016;padding:11px 20px;font-weight:600}.primary:hover:not(:disabled){color:var(--text)}.result-items{max-height:230px;overflow:auto;margin:14px 0}.result-item{font-size:11px;padding:8px;border-bottom:1px solid var(--line)}.help-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.help-grid h3{font-size:13px;color:var(--gold);font-weight:500}.help-grid p,.prose p{font-size:12px;line-height:2;color:#adbaa2}.help-grid .num{font-size:10px;color:#849575;margin-right:8px}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:16px 0;font-size:12px}.settings-row input[type=range]{width:200px}.settings-row input[type=checkbox]{width:20px;height:20px}.name-form{display:flex;gap:12px}.name-form input{margin:0;flex:1}.name-form button{padding:8px 20px}.history-list{display:grid;gap:10px}.history-row{padding:15px;background:#142017;border:1px solid var(--line);display:flex;gap:18px;align-items:center;font-size:11px}.history-row .history-result{color:var(--mint);font-size:15px}.history-row .history-result.death{color:var(--red)}.history-row div{flex:1}.history-row b{font-weight:500}.history-row p{font-size:10px;color:var(--muted);margin:5px 0 0}.history-row time{color:#9ba88f;font-size:10px}#toast{position:fixed;bottom:26px;left:50%;transform:translate(-50%,15px);opacity:0;pointer-events:none;z-index:99;background:#25362b;border:1px solid #708565;padding:12px 20px;font-size:12px;transition:opacity .2s,transform .2s;max-width:90vw;box-shadow:0 6px 20px #0006}#toast.show{opacity:1;transform:translate(-50%,0)}.loading{position:fixed;inset:0;background:#111a15f7;z-index:50;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:15px}.loading-mark{font-size:40px;color:var(--gold);animation:breathe 1.5s infinite}.loading b{font-weight:400;font-family:'Yu Mincho',serif;font-size:18px}.loading p{color:var(--muted);font-size:11px}.retry-button{padding:10px 25px;color:var(--gold)}@keyframes breathe{50%{opacity:.3}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(min-width:1400px){.map-container{height:280px}.scene-container{height:240px}}@media(max-width:1100px){.app-shell{padding:0 24px}.title-row h1>span{display:block;margin:10px 0 0}.game-layout{grid-template-columns:minmax(0,1fr) 290px}.community-stats>div{padding:0 13px;gap:5px}.community-stats small{font-size:9px}.community-stats .stat-symbol{font-size:17px;margin-right:3px}.tabs{gap:0}.tabs>button{padding:0 10px}.inventory-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app-shell{padding:0 14px}.masthead{height:64px}.brand{font-size:14px}.brand i{font-size:6px}.edition{font-size:7px;gap:5px}.edition b{margin-right:0}.edition .icon-button{width:30px;height:30px}.title-row{padding:24px 0 20px;gap:10px}.title-row h1{font-size:28px}.title-row .eyebrow{font-size:7px}.title-row h1>span{font-size:9px;margin-top:8px}.player-badge{gap:6px}.avatar{width:31px;height:33px;font-size:20px}.player-badge button{font-size:9px;max-width:94px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.player-badge small{font-size:8px}.community-stats{grid-template-columns:repeat(2,1fr);padding:0;margin-bottom:18px}.community-stats>div{padding:11px 12px!important;border-bottom:1px solid var(--line)}.community-stats>div:nth-child(2){border-right:0}.community-stats>div:nth-child(n+3){border-bottom:0}.community-stats b{font-size:20px}.community-stats small{font-size:9px}.game-layout{display:flex;flex-direction:column}.expedition-view{border-right:0}.tabs{height:49px;padding:0 5px}.tabs>button{font-size:12px;padding:0 9px;gap:4px}.tabs>button span{font-size:10px}.tabs b{font-size:8px;min-width:14px;padding:1px 3px}.save-state{font-size:0}.save-state:before{margin-right:3px}.map-head{padding:16px 15px 11px}.map-head h2{font-size:14px}.map-head .tiny-label{font-size:7px}.map-container{height:220px;margin:0 10px 10px}.scene-container{height:205px}.scene-label{left:14px;font-size:8px}.hp-hud{left:14px;width:120px}.enemy-hud{right:14px;width:145px}.expedition-controls{padding:11px 14px}.journey-log{font-size:10px;padding:11px 14px;min-height:45px}.preparation{border-top:1px solid var(--line);padding:17px 15px}.dungeon-list{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.dungeon-card{padding:9px 5px;display:flex;flex-direction:column;text-align:center;gap:5px;min-height:109px}.dungeon-icon{border-right:0;height:27px}.dungeon-card b{font-size:10px;line-height:1.6}.dungeon-card small{font-size:8px;line-height:1.5}.dungeon-card .radio-dot{display:none}.field-grid{margin-top:12px}.field-grid select{font-size:12px;min-height:39px}.risk-line,.stance-info{font-size:9px}.launch-button{font-size:13px;padding:13px}.launch-note{font-size:9px}.character-section{margin-top:15px;padding-top:13px}.combat-stats>div{justify-content:center;gap:12px}.combat-stats{margin-top:13px}.attributes>span{font-size:10px}.gear-list{display:grid;grid-template-columns:1fr 1fr;gap:7px}.gear-row{min-height:38px}.gear-row b{font-size:10px}.gear-row small{font-size:8px}.wallet{font-size:10px}.ability-button{padding:0 0 12px}.ability-button small{font-size:9px}.ability-button b{font-size:11px}.chronicle-section{margin-top:23px}.chronicle-title{align-items:center;gap:10px}.chronicle-title .eyebrow{font-size:7px}.chronicle-title h2{font-size:19px}.chronicle-meta{font-size:8px;text-align:right;max-width:120px;line-height:1.8}.feed-row{gap:5px;font-size:10px;padding:7px 0}.feed-row small{font-size:8px}.feed-row time{font-size:8px}.feed-icon{width:22px}footer{flex-wrap:wrap;gap:8px;font-size:7px;padding:22px 0}footer>span:nth-child(2){margin-left:0}footer button{margin-left:auto}dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.modal-header{padding:18px}.modal-header h2{font-size:22px}#modal-content{padding:17px}.inventory-grid{grid-template-columns:1fr 1fr;gap:7px}.item-card{padding:10px 8px}.item-card h3{font-size:11px}.item-values{font-size:9px}.item-actions{flex-wrap:wrap}.item-actions button{min-height:34px;font-size:10px}.item-actions button:first-child{flex-basis:100%}.inventory-toolbar{gap:5px}.inventory-toolbar button{padding:8px;font-size:10px}.inventory-toolbar select{font-size:10px;width:110px}.help-grid{grid-template-columns:1fr;gap:7px}.skill-board{height:370px}.skill-description{gap:7px;padding:10px}.skill-description b{font-size:11px}.skill-description button{padding:10px;white-space:nowrap}.result-numbers{gap:26px}.result-banner h3{font-size:24px}.settings-row input[type=range]{width:130px}.history-row{gap:10px;padding:11px}.history-row time{font-size:8px}}

.item-comparison{font-size:9px;line-height:1.8;color:#899780;border-top:1px solid #34412f;border-bottom:1px solid #34412f;padding:6px 0;margin:8px 0}.item-comparison span{white-space:nowrap}

.mp-hud{position:absolute;left:16px;top:86px;width:180px;color:#a8c7e4;font-size:12px}.mp-hud>div:first-child{display:flex;justify-content:space-between}.mp-hud .bar i{background:#729dc4}.flask-controls{display:flex;gap:12px;flex-wrap:wrap;padding:6px 12px;background:#15231b;color:#c6cfbb;font-size:12px}.flask-controls button,.flask-controls select{font-size:12px;padding:5px}.flask-controls label{white-space:nowrap}

/* Keep stats and flask settings readable at desktop and phone widths. */
.combat-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px 10px}
.combat-stats>div{min-width:0;white-space:nowrap;justify-content:space-between}
.flask-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.flask-controls>div{min-width:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:5px}
.flask-controls .flask-count{min-width:0;overflow-wrap:anywhere}
.flask-controls label{grid-column:1/-1;display:flex;align-items:center;gap:5px;min-width:0}
.flask-controls select{width:0;min-width:0;flex:1;margin:0}
.gear-row small{width:58px;flex:0 0 58px;white-space:nowrap}
.gear-row b{min-width:0;flex:1}

.resource-panel{position:absolute;left:14px;bottom:9px;width:min(240px,60%);display:grid;gap:6px;pointer-events:none}
.resource-row{display:flex;align-items:center;gap:8px;min-width:0}.resource-meter{flex:1;min-width:0}.resource-meter>div:first-child{display:flex;justify-content:space-between;font-size:9px;color:#d0dbce;margin-bottom:4px}.resource-meter b{font-weight:400}.mp-resource .bar i{background:#729dc4}
.flask-vessel{position:relative;width:26px;height:32px;flex:none;border:1px solid #d6c8aa;border-radius:5px 5px 8px 8px;background:#0c1716c9;overflow:hidden}.flask-vessel:before{content:'';position:absolute;top:0;left:7px;right:7px;height:3px;background:#c5b99a}.flask-vessel>i{position:absolute;bottom:2px;left:2px;right:2px;height:var(--fill,100%);max-height:calc(100% - 5px);background:#bf7161;transition:height .25s}.mp-vessel>i{background:#70a1cd}.flask-vessel>span{position:absolute;inset:4px 2px 2px;display:flex;flex-direction:column;justify-content:space-evenly}.flask-vessel>span>i{display:block;border-top:1px solid #fff8;width:100%}.flask-vessel>b{position:absolute;inset:0;display:grid;place-items:center;font-size:10px;color:#f5eee1;text-shadow:0 1px 2px #000}.flask-vessel.flash{box-shadow:0 0 12px #e4c18b}
@media(prefers-reduced-motion:reduce){.flask-vessel>i{transition:none}}

/* Crowd combat HUD stays inside the game panel. */
.swarm-summary{position:absolute;left:12px;bottom:12px;padding:7px 10px;background:#091611de;color:#dfd9b9;font-size:11px;pointer-events:none;max-width:calc(100% - 24px);border:1px solid #65765b;border-radius:5px}.combat-slot{position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);padding:9px 16px;background:#18271cf0;color:#f2d79c;border:1px solid #bc9e5d;border-radius:5px;text-align:center;pointer-events:none;max-width:85%;font-size:12px}.legend-wall{background:#111923!important;border:1px solid #657389}.legend-route{background:#8aa392!important}.skill-board svg{min-height:570px}#combat-diagnostics{font-size:12px;color:var(--mint)}
@media(max-width:650px){.swarm-summary{font-size:10px;bottom:7px;left:7px;max-width:calc(100% - 14px)}.map-legend{gap:8px;font-size:9px}.resource-panel{transform:scale(.85);transform-origin:top right}.scene-label{font-size:9px;max-width:48%}}

.scene-container:has(.swarm-summary:not([hidden])){height:360px}.scene-container:has(.swarm-summary:not([hidden])) .resource-panel{top:10px;right:12px;left:auto;bottom:auto;width:175px;padding:7px 9px;background:#0d1919de;border-radius:5px}.scene-container:has(.swarm-summary:not([hidden])) .scene-label{max-width:50%}.swarm-summary{right:12px;max-width:none;background:#091611ed}.combat-slot{top:44%}@media(max-width:650px){.scene-container:has(.swarm-summary:not([hidden])){height:360px}.scene-container:has(.swarm-summary:not([hidden])) .resource-panel{width:148px;right:5px;top:6px}.swarm-summary{right:7px;line-height:1.6;white-space:normal}.scene-label{max-width:45%!important}}
.visual-pilot-note{position:absolute;left:10px;top:38px;max-width:calc(100% - 205px);padding:4px 6px;background:#091611e8;color:#f0dfb5;border:1px solid #6d7058;font-size:10px;line-height:1.5;pointer-events:none}
@media(max-width:650px){.visual-pilot-note{left:5px;top:38px;max-width:calc(100% - 165px)}}
.static-preview-note{position:static;margin:0;padding:4px 10px;background:#10151ee8;color:#f0e9d9;border:1px solid #78818b;font-size:10px;line-height:1.45;pointer-events:none}
.static-icon{display:inline-grid;place-items:center;vertical-align:middle}.static-icon img{width:100%;height:100%;object-fit:contain;image-rendering:pixelated}.gear-symbol.static-icon{width:24px;height:24px;flex:none}.item-static-icon{float:left;width:32px;height:32px;margin:6px 8px 6px 0}
.static-ui-preview{--bg:#15191f;--panel:#20262d;--line:#505b65;--text:#f0ede4;--muted:#adb6bd;--gold:#d0b384;--mint:#97beb4}
.static-ui-preview button,.static-ui-preview select,.static-ui-preview input,.static-ui-preview dialog{border-radius:0}.static-ui-preview dialog{background:#20262d;border:1px solid #88939e;box-shadow:0 0 0 3px #10151b,0 0 0 4px #505b65}.static-ui-preview button:focus-visible{outline:2px solid #efd39a;outline-offset:3px}.static-ui-preview .item-card{border-radius:0}.static-ui-preview .flask-vessel{border-radius:1px;box-shadow:1px 1px 0 #080d13}.static-ui-preview .bar{border-radius:0;box-shadow:0 0 0 1px #080d13}

#static-preview-note:not([hidden]){display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}#static-gallery-button{min-height:36px;padding:7px 12px;flex-shrink:0;border:1px solid var(--gold);color:var(--gold);background:#18241e}.static-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.static-gallery figure{margin:0;border:1px solid var(--line);padding:12px;background:#101b18}.static-gallery-image{min-height:144px;display:flex;align-items:center;justify-content:center;background:#26332d}.static-gallery img{max-width:100%;width:auto;height:auto;max-height:192px;image-rendering:pixelated}.static-gallery figcaption{padding-top:10px;font-size:13px;color:var(--cream)}.static-gallery small{display:block;margin-top:5px;font-size:11px;color:var(--muted)}.asset-error{color:var(--red);font-size:13px}@media(max-width:650px){.static-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.static-gallery figure{padding:8px}.static-gallery-image{min-height:112px}#static-preview-note{font-size:11px}}
#static-gallery-button{pointer-events:auto}

/* Pixel edition: dark lacquer, warm cloth and small red fastening details. */
.preparation-toggle{display:none}
.ui-static-icon{display:inline-grid;place-items:center;width:22px;height:22px;flex:none;vertical-align:middle;line-height:1}
.static-icon img{display:block;image-rendering:pixelated}
.death-record{margin-top:10px;line-height:1.8;overflow-wrap:anywhere}.death-record .death-cause{color:var(--red);margin:0;font-size:12px}.death-record .death-message{color:var(--muted);margin:4px 0 0;font-size:12px}.result-banner .death-record{margin:16px 0}.history-row>div{min-width:0}
.pixel-ui{--bg:#0a1320;--panel:#112031;--line:#425467;--text:#eee4d2;--muted:#acb9c4;--gold:#d3b17e;--mint:#78bec4;--red:#d87760}
.pixel-ui body{background:#0a1320}
.pixel-ui .masthead{height:72px;border-bottom:2px solid #40566b;box-shadow:0 2px #050c15}
.pixel-ui .brand{color:#f2e7d5}.pixel-ui .brand i{color:#a4b4c3}.pixel-ui .brand>span{color:#c0cbd1}
.pixel-ui .title-row{padding:23px 0 21px}.pixel-ui .title-row h1{font-family:'Yu Gothic UI','Meiryo',sans-serif;font-weight:700;letter-spacing:.08em;font-size:31px}
.pixel-ui .title-row h1>span{color:#acb9c4}.pixel-ui .eyebrow,.pixel-ui .tiny-label{letter-spacing:.15em}
.pixel-ui button,.pixel-ui select,.pixel-ui input,.pixel-ui dialog{border-radius:0;transition:none}
.pixel-ui button{border-color:#485b6f;background:#15283a;box-shadow:inset 1px 1px #657486,inset -1px -1px #060e1a;min-height:36px}
.pixel-ui button:hover:not(:disabled){background:#253e53;border-color:#b5a58c}.pixel-ui button:active:not(:disabled){box-shadow:inset 1px 1px #060e1a,inset -1px -1px #657486}
.pixel-ui button:focus-visible,.pixel-ui select:focus-visible,.pixel-ui input:focus-visible{outline:2px solid #f0d195;outline-offset:3px}
.pixel-ui .game-frame{border:2px solid #526477;border-radius:0;box-shadow:inset 0 0 0 2px #07111d,0 0 0 2px #07111d,0 0 0 3px #24374a}
.pixel-ui .tabs{background:#0c1928;border-bottom:2px solid #4c6074}.pixel-ui .tabs>button{box-shadow:none;background:transparent;border:0;border-bottom:3px solid transparent;min-height:44px}
.pixel-ui .tabs>button.active{border-bottom-color:#d5b17b;background:#1d3346;color:#f2dfbc}
.pixel-ui .tabs b{border-radius:0;background:#324456;color:#f2e5d0}
.pixel-ui .signal{border-radius:0;box-shadow:none}.pixel-ui .save-state:before{content:'▪';color:#83c5c6}
.pixel-ui .avatar{border:2px solid #51677a;background:#152839;box-shadow:inset 2px 2px #07101b}.pixel-ui .avatar .ui-static-icon{width:32px;height:32px}
.pixel-ui .player-badge button{background:transparent;box-shadow:none}.pixel-ui .community-stats{border-color:#354a60}
.pixel-ui .stat-symbol{display:inline-grid;place-items:center;width:24px;height:24px;flex:none}
.pixel-ui .map-head{padding-top:16px;padding-bottom:12px}.pixel-ui .map-head h2{font-weight:700}.pixel-ui .status-tag{border-radius:0;border-color:#5e7988;background:#17343e;color:#c5e1de}
.pixel-ui .map-container{background:#0a1422;border-top:1px solid #30465a;border-bottom:2px solid #42596e}.pixel-ui .map-empty{background:#0d1a2ae8}.pixel-ui .map-empty>span>.ui-static-icon{width:40px;height:40px}
.pixel-ui canvas{image-rendering:pixelated}.pixel-ui .map-legend{background:#09131fea;color:#c8d1d7}.pixel-ui .map-legend i{border-radius:0;box-shadow:none}
.pixel-ui .legend-player{background:#f3d396!important}.pixel-ui .legend-route{background:#8ba8b9!important}.pixel-ui .legend-wall{background:#142337!important;border-color:#5b738a}
.pixel-ui .scene-container{background:#101e2d;border-bottom:2px solid #42596e}.pixel-ui .scene-label{color:#e1d8c7}.pixel-ui .scene-label .signal{background:#87bdb8}
.pixel-ui .resource-panel{background:#0a1420ec!important;border:1px solid #4b6279;border-radius:0!important;box-shadow:1px 1px #050b13}
.pixel-ui .bar{height:8px;border-radius:0;background:#07121f;box-shadow:0 0 0 1px #647d91,inset 1px 1px #03080e}
.pixel-ui .bar i{background:#d4785b;box-shadow:inset 0 2px #efa086;transition:none}.pixel-ui .mp-resource .bar i{background:#61aeba;box-shadow:inset 0 2px #91d2d6}
.pixel-ui .flask-vessel{border-radius:0;border-color:#c3c9bb;background:#0b1725;box-shadow:1px 1px #02070e,inset 1px 1px #526d7e}.pixel-ui .flask-vessel:before{background:#d1b385}.pixel-ui .flask-vessel>i{background:#c76f55;transition:none}.pixel-ui .mp-vessel>i{background:#63aebc}.pixel-ui .flask-vessel>b{text-shadow:1px 1px #0a1420}
.pixel-ui .flask-controls{background:#0e1e2f;border-bottom:1px solid #384e65;color:#c5cfda}.pixel-ui .flask-controls button{min-height:32px}
.pixel-ui .expedition-controls{background:#112336}.pixel-ui .play-controls button{min-width:42px;min-height:40px}.pixel-ui .play-controls .retreat{color:#ffe0c7;background:#713f35;border-color:#b3745c;box-shadow:inset 1px 1px #cc9778,inset -1px -1px #3d2525}
.pixel-ui .journey-log{background:#0c1928;color:#bac8d0;border-top:1px solid #3b5066}.pixel-ui .log-mark{color:#d7b782}
.pixel-ui .preparation{background:#101f30}.pixel-ui .section-heading{border-color:#42586d}.pixel-ui .section-heading h2{color:#f0e1c9;letter-spacing:.08em}
.pixel-ui .dungeon-card{min-height:62px;background:#14283a;border:1px solid #415a70;padding:10px;gap:10px}.pixel-ui .dungeon-card.selected{background:#263b4b;border-color:#d3af78;box-shadow:inset 2px 0 #d3af78}
.pixel-ui .dungeon-icon{width:36px;height:36px;flex:none;border:1px solid #526479;background:#0a1623}.pixel-ui .dungeon-card small{color:#aebdca}.pixel-ui .radio-dot{border-radius:0}.pixel-ui .dungeon-card.selected .radio-dot:after{border-radius:0}
.pixel-ui select{background-color:#0d1b2a;border-color:#51677b;color:#e8deca;padding:8px}.pixel-ui .field-grid label{color:#bcc8d1}.pixel-ui .risk-line,.pixel-ui .stance-info{color:#b8c7d1}
.pixel-ui .launch-button{min-height:46px;background:#b59a70;color:#102033;border:2px solid #d8bd91;box-shadow:inset 1px 1px #f1ddba,inset -1px -1px #68533c;font-weight:700}.pixel-ui .launch-button:hover:not(:disabled){background:#d0b489}.pixel-ui .launch-note{color:#b8c4cc}
.pixel-ui .xp-track{border-radius:0;background:#07131f;box-shadow:0 0 0 1px #435b6f}.pixel-ui .xp-track i{background:#5e9c9f}.pixel-ui .xp-track span{text-shadow:1px 1px #07131f}
.pixel-ui .combat-stats,.pixel-ui .attributes{border-color:#42576b}.pixel-ui .gear-row{min-height:38px;border-color:#3c5266;background:#112235;box-shadow:none}.pixel-ui .gear-row:hover:not(:disabled){background:#21394d}.pixel-ui .gear-row small{color:#abbcca}.pixel-ui .gear-lock{color:#cdb17f}
.pixel-ui .gear-symbol.static-icon{width:28px;height:28px}.pixel-ui .gear-symbol{border:1px solid #3e5368;background:#0a1725}.pixel-ui .wallet{color:#ddc69d}.pixel-ui .wallet>span{display:inline-flex;align-items:center;gap:4px}
.pixel-ui .ability-button{min-height:44px;background:#14283c;border-color:#485d74}.pixel-ui .ability-button small{color:#a9b9c7}
.pixel-ui .swarm-summary,.pixel-ui .combat-slot,.pixel-ui .scene-toast{border-radius:0;background:#0b1727ed;border-color:#6c8090;color:#eee0c5;box-shadow:1px 1px #030a12}
.pixel-ui dialog{background:#112133;border:2px solid #607589;box-shadow:0 0 0 2px #050c15,0 0 0 3px #43596d}.pixel-ui dialog::backdrop{background:#020813ba;backdrop-filter:none}
.pixel-ui .modal-header{background:#0d1c2b;border-bottom:2px solid #4c6278}.pixel-ui .modal-header h2{font-family:'Yu Gothic UI','Meiryo',sans-serif;font-weight:700;letter-spacing:.08em}.pixel-ui .modal-header .icon-button{width:38px;height:38px}
.pixel-ui .modal-info,.pixel-ui .modal-note{color:#c1cdd4}.pixel-ui .item-card{border-radius:0;background:#12283a;border:1px solid var(--q);box-shadow:inset 1px 1px #426078,inset -1px -1px #07111e}.pixel-ui .item-static-icon{width:40px;height:40px;background:#0b1927;border:1px solid #3a5369;padding:3px}
.pixel-ui .item-values{color:#d2d9d5}.pixel-ui .item-mods{color:#c3cbc9}.pixel-ui .item-comparison{color:#b0c8c4;border-color:#3b5565}.pixel-ui .cost{color:#c1b89f}.pixel-ui .item-actions button{min-height:36px}
.pixel-ui .inventory-toolbar button.selected{background:#28475a;border-color:#d2b27d;color:#f1e2c5}.pixel-ui .settings-row{border-color:#3c536a}.pixel-ui .settings-row input[type=checkbox]{accent-color:#80bbc1}.pixel-ui .settings-row input[type=range]{accent-color:#d1b07c}
.pixel-ui .skill-board{background:#0b1828}.pixel-ui .skill-board line{stroke:#384e66;stroke-width:3;shape-rendering:crispEdges}.pixel-ui .skill-board line.lit{stroke:#c9ac76}
.pixel-ui .skill-node rect{fill:#162b3e;stroke:#526b81;stroke-width:2;shape-rendering:crispEdges}.pixel-ui .skill-node.owned rect{fill:#695a3d;stroke:#e0c48d}.pixel-ui .skill-node.available rect{fill:#214054;stroke:#94b8bf}.pixel-ui .skill-node:focus-visible{outline:none}.pixel-ui .skill-node:focus-visible rect{stroke:#fff0c9;stroke-width:4}
.pixel-ui .pixel-node-image{image-rendering:pixelated}.pixel-ui .skill-node text{fill:#d1d9da}.pixel-ui .skill-description{background:#142b3c;border-color:#526b7d}
.pixel-ui .history-row,.pixel-ui .feed-row{border-color:#374d63}.pixel-ui .history-result,.pixel-ui .feed-icon{border-radius:0;background:#173344}.pixel-ui .history-result.death,.pixel-ui .feed-icon.death{background:#583735}
.pixel-ui .static-gallery figure{background:#0e2031;border-color:#4b657b}.pixel-ui .static-gallery-image{background:#21364b}.pixel-ui .static-gallery figcaption{color:#eee2c8}.pixel-ui #pixel-gallery{padding:9px 14px}
.pixel-ui footer,.pixel-ui .chronicle-meta{color:#aebbc6}.pixel-ui .chronicle-title h2{color:#e7dac3}.pixel-ui .community-stats small{color:#aebcca}.pixel-ui .loading{background:#0a1421}.pixel-ui #toast{border-radius:0;background:#1b3348;border:1px solid #9b947e;box-shadow:2px 2px #030912}
@media(max-width:650px){.pixel-ui .masthead{height:55px}.pixel-ui .title-row{padding:20px 0 16px}.pixel-ui .title-row h1{font-size:24px}.pixel-ui .tabs{height:48px;padding:0 4px;gap:0}.pixel-ui .tabs>button{padding:0 8px;gap:4px}.pixel-ui .tabs .ui-static-icon{width:18px;height:18px}.pixel-ui .title-row h1>span{font-size:10px}.pixel-ui .dungeon-card{min-height:62px}.pixel-ui .play-controls button{min-height:42px}.pixel-ui .resource-panel{padding:6px 8px!important}.pixel-ui .item-actions button{min-height:38px}.pixel-ui .inventory-toolbar button{min-height:36px}.pixel-ui .static-gallery-image{min-height:112px}.pixel-ui .community-stats>div{gap:5px}.pixel-ui .stat-symbol{width:20px;height:20px}.pixel-ui .ui-static-icon{width:20px;height:20px}}
@media(max-width:650px){.pixel-ui .item-static-icon{width:32px;height:32px;margin-right:6px}.pixel-ui .item-card h3{font-size:12px;line-height:1.6}.pixel-ui .item-values,.pixel-ui .item-req,.pixel-ui .item-mods{font-size:11px;line-height:1.7}.pixel-ui .item-comparison,.pixel-ui .cost{font-size:10px;line-height:1.7}.pixel-ui .inventory-toolbar .ui-static-icon{width:16px;height:16px;margin-right:3px}.pixel-ui .map-legend{font-size:10px}}
@media(max-width:900px){.pixel-ui .game-frame{overflow:clip}.pixel-ui .game-layout{grid-template-columns:minmax(0,1fr)}.pixel-ui .expedition-view{border-right:0}.pixel-ui .preparation{border-top:2px solid #445e74;padding:12px}.pixel-ui .preparation-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:44px;padding:10px 14px;font-size:13px;font-weight:700}.pixel-ui .preparation-toggle[aria-expanded=false]+.preparation-content{display:none}.pixel-ui .preparation-content{padding-top:15px}.pixel-ui .expedition-controls{position:sticky;bottom:0;z-index:5;border-top:2px solid #536b80;box-shadow:0 -2px #07121f}.pixel-ui .scene-container:has(.swarm-summary:not([hidden])){height:320px}.pixel-ui .map-container{height:190px}}
@media(max-height:480px) and (max-width:900px){.pixel-ui .title-row{padding:12px 0}.pixel-ui .community-stats{padding:10px 0;margin-bottom:14px}.pixel-ui .map-container{height:135px}.pixel-ui .scene-container:has(.swarm-summary:not([hidden])){height:280px}.pixel-ui .map-head{padding:10px 14px}.pixel-ui .masthead{height:52px}}

/* Give item decisions a full reading column on narrow phones, in stash and loot. */
@media(max-width:480px){
 .pixel-ui .dungeon-list{grid-template-columns:minmax(0,1fr);gap:8px}
 .pixel-ui .dungeon-card{display:grid;grid-template-columns:40px minmax(0,1fr) 16px;align-items:center;min-height:76px;padding:12px;gap:12px;text-align:left}
 .pixel-ui .dungeon-icon{width:40px;height:40px}
 .pixel-ui .dungeon-card b{font-size:14px;line-height:1.55}
 .pixel-ui .dungeon-card small{display:block;margin-top:3px;font-size:12px;line-height:1.6}
 .pixel-ui .dungeon-card .radio-dot{display:block}
 .pixel-ui .inventory-grid{grid-template-columns:minmax(0,1fr);gap:12px}
 .pixel-ui #modal-content:has(.inventory-grid){padding:14px}
 .pixel-ui #modal-content:has(.inventory-grid)>.modal-info{font-size:13px;line-height:1.8;margin-bottom:16px;overflow-wrap:anywhere}
 .pixel-ui #modal-content:has(.inventory-grid) .modal-note{font-size:12px;line-height:1.75}
 .pixel-ui #modal-content:has(.inventory-grid) .wallet{font-size:13px;line-height:1.75;flex-wrap:wrap;gap:8px 14px}
 .pixel-ui .item-card{padding:14px;min-width:0}
 .pixel-ui .item-topline{font-size:12px;line-height:1.6;gap:6px 12px;flex-wrap:wrap;align-items:baseline;margin-bottom:12px}
 .pixel-ui .item-topline small{font-size:12px;line-height:1.6;color:#bdcbd4;overflow-wrap:anywhere}
 .pixel-ui .item-static-icon{float:left;width:48px;height:48px;margin:0 12px 8px 0;padding:4px}
 .pixel-ui .item-card h3{font-size:16px;font-weight:700;line-height:1.5;margin:0 0 6px;overflow-wrap:anywhere}
 .pixel-ui .item-req{font-size:13px;line-height:1.7;color:#c4d0d7;margin:0 0 10px;overflow-wrap:anywhere}
 .pixel-ui .item-req.unmet{color:#f0a68d}
 .pixel-ui .item-values{clear:both;font-size:13px;line-height:1.8;margin:10px 0;overflow-wrap:anywhere}
 .pixel-ui .item-mods{font-size:13px;line-height:1.8;overflow-wrap:anywhere}
 .pixel-ui .item-mods small{font-size:12px;line-height:1.75}
 .pixel-ui .item-comparison{font-size:13px;line-height:1.8;margin:12px 0;padding:8px 0;overflow-wrap:anywhere}
 .pixel-ui .item-comparison span{white-space:normal}
 .pixel-ui .cost{font-size:12px;line-height:1.75;margin-top:10px;overflow-wrap:anywhere}
 .pixel-ui .item-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
 .pixel-ui .item-actions button{min-width:0;min-height:44px;padding:10px 8px;font-size:14px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
 .pixel-ui .item-actions button:first-child{grid-column:1/-1}
 .pixel-ui .item-actions button:disabled{opacity:.65}
 .pixel-ui .inventory-toolbar{display:flex;flex-wrap:wrap;align-items:stretch;gap:8px;margin-bottom:16px;min-width:0}
 .pixel-ui .inventory-toolbar button{flex:1 1 calc((100% - 8px)/2);min-width:0;max-width:100%;min-height:44px;padding:10px;font-size:13px;line-height:1.5;white-space:normal;overflow-wrap:anywhere}
 .pixel-ui .inventory-toolbar .ui-static-icon{width:20px;height:20px;margin-right:5px}
 .pixel-ui .inventory-toolbar select{flex:1 1 100%;width:100%;min-width:0;max-width:100%;min-height:44px;margin:0;padding:10px;font-size:13px;line-height:1.5}
}
.attribute-panel{border:1px solid var(--line);padding:14px;margin-bottom:14px;background:#14212b}.attribute-panel p{margin:0 0 12px}.attribute-row{display:flex;gap:9px;align-items:center;flex-wrap:wrap;padding:9px 0;border-top:1px solid var(--line)}.attribute-row strong{min-width:74px}.attribute-row small{color:var(--muted);flex:1;min-width:170px}.attribute-row button{padding:8px 12px}.skill-branches{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0}.skill-branches button{padding:9px 14px}.skill-branches .selected{border-color:var(--gold);color:var(--gold)}.skill-board{max-height:520px;overflow:auto;touch-action:pan-x pan-y}.skill-board svg{display:block;min-width:600px;width:100%;height:auto;max-width:none}.weapon-meta{color:var(--mint);font-size:12px;margin:8px 0;line-height:1.6}
.skill-map-tools{display:flex;align-items:end;justify-content:space-between;gap:12px;flex-wrap:wrap}.skill-map-tools label{display:grid;gap:5px;flex:1;min-width:180px}.skill-map-tools input{padding:10px;background:#111e2a;color:var(--text);border:1px solid #69808c}.skill-map-tools button{min-width:36px;padding:9px}.skill-map-tools output{display:inline-block;min-width:52px;text-align:center}.skill-map-hint{font-size:11px;color:var(--muted);margin:9px 0}.skill-map-viewport{height:min(58vh,600px);min-height:280px;position:relative;overflow:hidden;background:#0d1925;border:1px solid #607482;touch-action:none;user-select:none;cursor:grab}.skill-map-viewport:active{cursor:grabbing}.skill-map-viewport>svg{width:100%;height:100%;display:block}.skill-map-viewport line{stroke:#445566;stroke-width:3}.skill-map-viewport line.lit{stroke:#d5bd7b}.skill-map-viewport .skill-node circle{fill:#1c2d3b;stroke:#788d99;stroke-width:2}.skill-map-viewport .skill-node.available circle{stroke:#d2bd84;fill:#34434a}.skill-map-viewport .skill-node.owned circle{stroke:#e4cf91;fill:#786844}.skill-map-viewport .skill-node.selected circle{stroke:#fff3be;stroke-width:4}.skill-map-viewport .attribute-node circle{fill:#182e40}.skill-map-viewport .skill-node text{fill:#eee4c8;text-anchor:middle;font-size:11px;paint-order:stroke;stroke:#0a1420;stroke-width:3px;pointer-events:none}.skill-map-viewport .skill-node .node-icon{font-size:13px;stroke-width:1px}.skill-map-viewport .skill-node{cursor:pointer;outline:none}.skill-map-viewport .skill-node:focus circle{stroke:#fff;stroke-width:4}#skill-mini{position:absolute;right:8px;bottom:8px;width:144px;height:99px;border:1px solid #697c87;cursor:crosshair;opacity:.92}.skill-node-panel{position:sticky;bottom:0;background:#132536;z-index:2;border:1px solid #607482;margin-top:10px;gap:12px;align-items:center}.node-choice{display:flex;gap:14px;flex-wrap:wrap;border:0;padding:0;margin:8px 0}.node-choice legend{font-size:11px;color:var(--muted);margin-bottom:6px}.node-choice label{display:flex;align-items:center;gap:5px;font-size:12px}.skill-search-results{display:flex;gap:5px;flex-wrap:wrap;margin-top:7px}.skill-search-results button{padding:6px 9px;font-size:11px}.skill-search-results small{display:block;color:var(--muted)}.pixel-ui .result-actions button,.pixel-ui #result-stash{color:#fff2c8!important;text-shadow:0 1px 1px #000}
.debug-section{border:1px solid var(--line);padding:16px;margin-bottom:16px;background:#15222d}.debug-section h3{margin:0 0 14px;color:var(--gold);font-size:16px}.debug-section form{display:grid;gap:12px}.debug-section label{display:grid;gap:7px;font-size:12px}.debug-section input,.debug-section select{min-height:40px;width:100%;background:#0c1824;border:1px solid #7a8a90;color:#f0e7d0;padding:9px}.debug-section button{padding:11px 16px;color:#f5e7bd;border:1px solid #b7a36e}.debug-section .debug-checkbox{display:flex;align-items:center;gap:9px}.debug-checkbox input{width:18px;min-height:18px}.debug-item-form{grid-template-columns:repeat(2,minmax(0,1fr))}.debug-item-form>p,.debug-item-form>button{grid-column:1/-1}.debug-reset-actions{display:flex;gap:10px;flex-wrap:wrap}#debug-reset-player{border-color:#b47763;color:#ffd7c3}@media(max-width:480px){.debug-section{padding:12px}.skill-map-tools{gap:8px}.skill-map-tools button{padding:8px;font-size:12px}.node-choice{gap:10px}.skill-node-panel{align-items:stretch;flex-direction:column}.skill-node-panel button{padding:11px}.skill-map-viewport{height:44vh;min-height:240px}#skill-mini{width:100px;height:69px}.debug-item-form{grid-template-columns:1fr}}
/* Keep the atlas and selection controls in one view as the graph grows. */
#modal[data-view=skills][open]{display:flex;flex-direction:column;width:min(1400px,calc(100vw - 28px));height:calc(100dvh - 32px);max-height:none;overflow:hidden}
#modal[data-view=skills] .modal-header{flex-shrink:0;padding:20px 26px}
#modal[data-view=skills] #modal-content{display:flex;flex-direction:column;min-height:0;flex:1;overflow:hidden;padding:14px 24px}
#modal[data-view=skills] #modal-content>*{flex-shrink:0}
#modal[data-view=skills] .attribute-panel{padding:9px 12px;margin-bottom:8px;max-height:230px;overflow:auto}
.attribute-panel summary{cursor:pointer;font-size:12px;line-height:1.7}.attribute-panel summary span{color:var(--gold);margin-left:14px}
#modal[data-view=skills] .modal-info{margin:0 0 8px;line-height:1.65}
#modal[data-view=skills] .skill-map-viewport{flex:1;min-height:160px;height:auto}
#modal[data-view=skills] .skill-node-panel{position:static;margin-top:8px;min-height:78px;max-height:174px;overflow:auto;padding:10px 14px}
#modal[data-view=skills] .skill-node-panel p{margin:6px 0;font-size:11px}
#modal[data-view=skills] .node-choice{margin:7px 0 0}.node-choice input{width:18px;min-height:18px;margin:0}.node-choice label{min-height:30px}
@media(max-width:600px){#modal[data-view=skills][open]{width:calc(100vw - 12px);height:calc(100dvh - 12px)}#modal[data-view=skills] .modal-header{padding:12px 15px}#modal[data-view=skills] #modal-content{padding:9px 12px}#modal[data-view=skills] .modal-header h2{font-size:22px}#modal[data-view=skills] .skill-node-panel{gap:4px;max-height:185px;padding:8px}#modal[data-view=skills] .skill-node-panel button{padding:8px}#skill-mini{width:108px;height:74px}.attribute-panel summary span{display:none}.skill-map-tools label{min-width:150px}.skill-map-tools button{padding:7px}.skill-map-hint{font-size:10px}}
@media(max-height:600px){#modal[data-view=skills] #modal-content{display:block;overflow:auto}#modal[data-view=skills] .skill-map-viewport{height:70dvh;min-height:220px}#modal[data-view=skills] .skill-node-panel{max-height:none}}
#modal[data-view=skills] #modal-content{overflow:auto}
.skill-search-results{max-height:108px;overflow:auto;align-content:start}
.experience-info{font-size:10px;color:var(--gold);line-height:1.7;margin:9px 0;padding:7px 8px;background:#0d1b28;border:1px solid #4c6472}
#modal[data-view=cards]{width:min(1120px,calc(100vw - 24px))}
.deck-slots{display:grid;grid-template-columns:repeat(var(--slots),minmax(0,1fr));gap:10px;padding:12px 0}
.card-slot{border:1px solid #526877;padding:6px;background:#101f2d}.card-slot.selected{border:2px solid #e1c37b;padding:5px}.card-slot-select{display:flex;align-items:center;gap:8px;width:100%;min-height:78px;text-align:left;padding:6px;border:0}.card-slot-select img{width:36px;height:54px;object-fit:cover;image-rendering:pixelated}.card-slot-select>span{font-size:30px;color:var(--gold)}.card-slot-select b{font-size:12px;min-width:0}.card-slot-select small{display:block;font-size:10px;color:#a9bec8;margin-top:5px}.card-remove{width:100%;padding:5px;font-size:10px}.deck-note{color:var(--gold);font-size:12px}
.card-toolbar{display:flex;gap:8px;align-items:end;flex-wrap:wrap;margin:15px 0}.card-toolbar>button{padding:9px 14px}.card-toolbar>button[aria-pressed=true]{border-color:#d8bb7f;color:#eed79f}.card-toolbar label{margin-left:auto;min-width:190px;font-size:11px}.card-toolbar input{margin-top:3px}
.skill-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.skill-card{min-width:0;border:1px solid #53636d;background:#0b1724;box-shadow:0 5px 15px #0005}.skill-card.slotted{border-color:#b9d4b6;box-shadow:0 0 0 1px #b9d4b644}.skill-card-face{position:relative}.skill-card-face>img{width:100%;height:auto;display:block;image-rendering:pixelated}.skill-card-info{padding:9px 10px 12px}.skill-card-info>p{font-size:11px;line-height:1.6;min-height:3.2em;margin:0 0 9px;color:#c7d6d7}.card-condition{display:block;font-size:10px;color:#e2b394;margin-bottom:8px}.card-equipped{display:block;font-size:10px;color:#b9d4b6;margin-bottom:8px}.card-actions{display:flex;gap:5px}.card-actions button{padding:8px 4px;font-size:10px;flex:1;min-height:35px}.skill-card.unowned .skill-card-face{opacity:.72}
.node-card-preview{width:48px;height:72px;object-fit:contain;image-rendering:pixelated;flex-shrink:0}.node-action-buttons{display:grid;gap:5px}.skill-node-panel>div:not(.node-action-buttons){flex:1;min-width:0}
.card-hud{border-top:1px solid #526273;background:#0c1b29;padding:6px 10px}.card-hud>button{width:100%;display:flex;gap:8px;flex-wrap:wrap;border:0;text-align:left;padding:2px;font-size:10px;min-height:36px}.card-hud-chip{display:flex;align-items:center;gap:7px;min-width:116px;flex:1}.card-hud-chip img{width:24px;height:36px;object-fit:cover;image-rendering:pixelated}.card-hud-chip>span{line-height:1.6}.card-hud-chip small{display:block;color:#a6bfca;font-size:9px}.card-hud-chip b{font-weight:400;color:#e2c78f}
@media(max-width:850px){.skill-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.tabs{overflow-x:auto;gap:4px}.tabs>button{white-space:nowrap;flex-shrink:0}}
@media(max-width:600px){.skill-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.deck-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.card-slot-select{flex-direction:column;gap:4px;padding:3px;min-height:98px}.card-slot-select b{font-size:10px}.card-slot-select img{width:28px;height:42px}.card-slot-select small{font-size:9px}.card-slot-select>span{height:42px}.skill-card-info{padding:8px}.skill-card-info>p{font-size:10px;min-height:4.8em}.card-actions{flex-direction:column}.card-toolbar{gap:5px}.card-toolbar>button{padding:8px}.card-toolbar label{width:100%;margin-left:0}.card-hud-chip{min-width:90px;font-size:9px}.card-hud-chip img{width:20px;height:30px}.tabs .save-state{display:none}.tabs>button{padding:0 7px;font-size:10px}#modal[data-view=skills] .skill-node-panel{flex-direction:row;flex-wrap:wrap}#modal[data-view=skills] .node-action-buttons{display:flex;flex-basis:100%}#modal[data-view=skills] .node-action-buttons button{flex:1}.node-card-preview{width:40px;height:60px}}

/* Compact navigation keeps the exploration scene as the main view. */
.expedition-view .map-head{padding:12px 16px;min-height:62px;gap:12px}
.expedition-view .map-head h2{font-size:14px;margin:4px 0 0}
.map-head h2 strong{font-weight:600;color:var(--gold);margin-left:6px;white-space:nowrap}
#exploration-scene{height:500px;min-height:420px;flex:none}
#exploration-scene .scene-label{top:12px;left:12px;max-width:calc(100% - 190px)!important;line-height:1.6;padding:5px 8px;background:#09131ddd;pointer-events:none}
#exploration-scene .resource-panel{top:auto;right:auto;left:12px;bottom:64px;width:190px;transform:none;padding:7px 9px;background:#0a1420e8}
#exploration-scene .enemy-hud{top:64px;left:12px;right:auto;width:180px}
.expedition-view .minimap{position:absolute;z-index:2;top:12px;right:12px;width:160px;height:174px;min-height:0;margin:0;background:#09121de8;background-image:none;border:1px solid #66808d;box-shadow:0 2px 10px #0005;overflow:hidden}
.minimap-label{position:absolute;top:10px;left:10px;font-size:9px;color:#b8c4c5;letter-spacing:.12em;pointer-events:none}
.expedition-view .minimap .floor-switch{top:3px;right:3px;gap:3px;padding:0;background:transparent;font-size:10px}
.minimap .floor-switch button{width:26px;height:26px;min-width:26px;min-height:26px;font-size:18px}
.expedition-view .minimap .map-legend{bottom:0;left:0;right:0;justify-content:center;padding:5px;font-size:9px;background:#09121de8}
.minimap .map-legend>span:not(:last-child){display:none}
.minimap .map-legend>span:last-child{margin:0}
.scene-container .map-empty{z-index:1;pointer-events:none;background:radial-gradient(ellipse,#0c18244d,#08121f99)}
.floor-entry{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px;pointer-events:none;opacity:0;text-align:center;text-shadow:0 2px 6px #000,0 0 20px #000;background:radial-gradient(ellipse at center,#07101a99,transparent 65%);padding:0 18px}
.floor-entry>span{font-size:11px;letter-spacing:.24em;color:#d2c19a}
.floor-entry>strong{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:500;font-size:clamp(25px,3.6vw,42px);letter-spacing:.12em;color:#f5e7c8;border-top:1px solid #bbaa7c88;border-bottom:1px solid #bbaa7c88;padding:15px 12px;max-width:100%}
@media(max-width:900px){#exploration-scene{height:480px;min-height:420px}}
@media(max-width:650px){.expedition-view .map-head{padding:10px 12px;min-height:58px}.expedition-view .map-head h2{font-size:13px}.map-head h2 small{font-size:9px;margin-left:2px}#exploration-scene{height:460px;min-height:400px}.expedition-view .minimap{width:132px;height:148px;top:8px;right:8px}#exploration-scene .scene-label{left:8px;top:8px;max-width:calc(100% - 156px)!important;padding:4px 6px;font-size:9px}#exploration-scene .resource-panel{left:8px;bottom:80px;width:166px}#exploration-scene .enemy-hud{left:8px;top:62px;width:150px}.floor-entry>strong{font-size:27px;letter-spacing:.06em;padding:13px 8px}.floor-entry>span{font-size:10px}}
@media(max-height:480px) and (min-width:651px){#exploration-scene{height:380px;min-height:380px}#exploration-scene .resource-panel{top:48px;bottom:auto}}

#debug-button.debug-entry{width:auto;min-width:60px;padding:0 8px;font-size:11px;white-space:nowrap}@media(max-width:760px){#debug-button.debug-entry{min-width:52px;padding:0 6px;font-size:10px}}
.alpha-release-note{margin:0 0 16px;padding:8px 12px;border-left:2px solid var(--gold);font-size:12px;line-height:1.65}
.alpha-release-note strong{margin-right:.6em;color:var(--gold)}

/* The caption follows the card's current data; artwork and frame remain reusable. */
.skill-card-face{container-type:inline-size;aspect-ratio:2/3;overflow:hidden}.skill-card-face>img{width:100%;height:100%;object-fit:contain}.card-face-caption{position:absolute;left:8%;right:8%;top:72.5%;bottom:4.5%;display:flex;flex-direction:column;justify-content:center;gap:3px;text-align:center;overflow:hidden;line-height:1.2;color:#e7edf1}.card-face-caption .card-face-name{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;font-size:clamp(10px,7.4cqw,18px);font-weight:700;line-height:1.2;color:#eeddb2}.card-face-caption .card-face-summary{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;overflow-wrap:anywhere;white-space:normal;font-size:clamp(9px,5.5cqw,13px);line-height:1.25;color:#c5d1dc}.skill-card-info>.card-face-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;min-height:0;color:#b3cbd6;font-size:10px}.card-face-meta b{color:#d4b771;white-space:nowrap}.bag-skill-card-face{width:128px;max-width:100%;margin:0 auto}.skill-card.unowned .card-face-meta b{color:#9ba7b2}@container(max-width:150px){.card-face-caption{gap:2px}.card-face-caption .card-face-summary{-webkit-line-clamp:1}}
.skill-card-info>p{overflow-wrap:anywhere}
