:root{color-scheme:dark;font-family:'VT323','Courier New',monospace;color:#f8f3e8;--gold:#f6cb65;--muted:#a4a99c;--line:#ffffff20;--panel:#12100fef;--display:'Press Start 2P','VT323',monospace;--red:#ff5a4d}
/* Arcade retro: pixel display font on the short badges only (Press Start 2P is
   very wide, so long strings stay on the narrow VT323 base to avoid overflow). */
.chapter,#result-badge,#choice-badge{font-family:var(--display);font-size:18px;letter-spacing:1px;line-height:1.6}
h1,.dialog h2,#result-title{letter-spacing:1px}
body{font-size:21px}
*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#192529}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}button:disabled{cursor:wait;opacity:.6}[hidden]{display:none!important}#world{position:fixed;inset:0;width:100%;height:100%;display:block;touch-action:none}#vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 55% 38%,transparent 25%,#09101565 100%)}#damage-flash{position:fixed;inset:0;pointer-events:none;box-shadow:inset 0 0 100px #e94432;opacity:0;transition:opacity .15s}.topbar{position:fixed;z-index:5;top:26px;left:34px;right:34px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{color:#fff;text-decoration:none;font-size:29px;font-weight:950;display:flex;align-items:center;gap:4px}.brand>span{color:var(--gold);font-size:21px}.brand small{font-size:18px;letter-spacing:3px;margin-left:10px}.top-actions{display:flex;gap:10px}.icon-btn{background:#142024aa;border:1px solid var(--line);border-radius:7px;padding:10px 14px;font-weight:700;font-size:18px;min-height:40px}.icon-btn:hover{background:#34433a}.xp-panel{width:min(470px,42vw);display:none}.xp-label{display:flex;justify-content:space-between;gap:16px;font-size:18px;letter-spacing:1px;margin-bottom:8px}.xp-label span{color:#becac7}.track{height:7px;background:#101919b8;border-radius:4px;overflow:hidden}.track i{display:block;height:100%;width:0;background:#76e6cf;transition:width .12s}.run-info{position:fixed;right:35px;top:99px;text-align:right}.eyebrow{font-size:18px;font-weight:700;letter-spacing:2px;color:#a9b8b4}#timer{font-weight:800;font-size:41px;font-variant-numeric:tabular-nums;margin:5px 0 12px}#timer small{font-size:18px;color:#c0c6b2}.kill-pill{font-size:18px;letter-spacing:1px;background:#162124bc;border:1px solid var(--line);padding:9px 12px;border-radius:4px}.kill-pill b{color:var(--gold);font-size:18px;margin-right:7px}.health-panel{position:fixed;bottom:62px;left:34px;display:flex;gap:13px;align-items:center;width:265px}.avatar{background:#e7b750;color:#252b27;border:3px solid #f9d787;width:55px;height:60px;display:grid;place-items:center;font-size:34px;font-weight:950;clip-path:polygon(12% 0,88% 0,100% 15%,100% 85%,88% 100%,12% 100%,0 85%,0 15%)}.health-content{flex:1}.health{height:10px}.health i{background:#ec8567}#build-text{display:block;color:#c9cfc4;font-size:18px;letter-spacing:1px;margin-top:8px}.ability-bar{position:fixed;bottom:51px;left:50%;transform:translateX(-50%);display:flex;gap:9px}.ability{border:1px solid var(--line);background:#152226db;width:88px;min-height:87px;border-radius:9px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.ability.active{border-color:#f6cb6580}.ability>span{font-size:31px;color:var(--gold);line-height:1}.ability b{font-size:18px;letter-spacing:1px}.ability small{font-size:18px;color:#b1bcb6}.map-panel{position:fixed;right:34px;bottom:42px;background:#182426bd;border:1px solid var(--line);border-radius:9px;padding:12px}.map-panel canvas{display:block;width:130px;height:130px}.keyboard-help{position:fixed;bottom:10px;left:34px;font-size:18px;color:#b9c7bd}.keyboard-help span{margin:0 20px}#boss-bar{position:fixed;top:95px;left:50%;transform:translateX(-50%);width:min(400px,42vw);text-align:center}#boss-bar b{font-size:18px;letter-spacing:2px;display:block;margin-bottom:9px}#boss-fill{background:#eb775a}#toast{position:fixed;top:23%;left:50%;transform:translateX(-50%);padding:12px 24px;border:1px solid #f6cb6560;background:#1b2624ed;color:var(--gold);border-radius:6px;font-size:18px;letter-spacing:1px;pointer-events:none;opacity:0;transition:opacity .25s;z-index:20;max-width:90%;text-align:center}.overlay{position:fixed;inset:0;z-index:4}.intro{background:linear-gradient(90deg,#101e25f5 0%,#132128dc 30%,#13212865 54%,transparent 76%)}.intro-copy{position:absolute;top:17%;left:7%;width:510px;max-width:44vw}.chapter{font-size:18px;letter-spacing:1px;font-weight:800;color:var(--gold);display:block;text-align:center;line-height:1.55;overflow-wrap:break-word}.chapter i{display:inline-block;vertical-align:middle;margin-right:9px;width:6px;height:6px;background:var(--gold);border-radius:50%}h1{font-size:clamp(36px,4.6vw,74px);font-weight:950;letter-spacing:-2.5px;line-height:1.03;margin:26px 0 20px}h1 em{font-style:normal;color:var(--gold)}.lead{font-size:18px;line-height:1.7;color:#c2ccc5;margin:0 0 28px}.hero-card{border:1px solid #ffffff21;background:#25333599;border-radius:8px;padding:15px;display:flex;gap:15px;align-items:center;max-width:380px}.hero-emblem{width:46px;height:48px;display:grid;place-items:center;background:#e6b85e;color:#343324;font-size:31px;font-weight:950;border-radius:5px;transform:rotate(-5deg)}.hero-card h2{font-size:22px;margin:3px 0}.hero-card p{margin:0;color:#bac4bc;font-size:18px}.selected{margin-left:auto;color:var(--gold)}.primary{border:0;border-bottom:4px solid #b98734;border-radius:6px;background:var(--gold);color:#1e292a;font-weight:900;font-size:18px;letter-spacing:1.4px;padding:19px 25px;display:block;width:100%;margin-top:20px;max-width:380px;transition:background .15s,transform .15s}.primary:hover{background:#ffdd89;transform:translateY(-2px)}.intro-meta{display:flex;gap:18px;font-size:18px;color:#c6d0c5;letter-spacing:.8px;margin-top:16px}#record{font-size:18px;color:#8eaba1;margin-top:23px}.scene-caption{position:absolute;right:7%;bottom:17%;max-width:260px;text-shadow:0 2px 15px #000}.scene-caption>span{font-size:18px;letter-spacing:3px;color:#f4d790}.scene-caption b{display:block;font-size:29px;line-height:1.2;margin-top:15px}.scene-caption p{font-size:18px;line-height:1.7;color:#dddcc6}.menu-footer{position:absolute;left:34px;right:34px;bottom:25px;border-top:1px solid var(--line);padding-top:18px;display:flex;justify-content:space-between;color:#9eb1a8;font-size:18px;letter-spacing:1px}.menu-footer b{font-weight:400;margin-left:15px;color:#637e75}.centered{z-index:10;background:#09161dc9;backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px;overflow-y:auto}.dialog{width:min(560px,100%);text-align:center;background:#182629;border:1px solid #ffffff25;border-radius:14px;padding:38px;box-shadow:0 30px 100px #0005}.dialog>.chapter{justify-content:center}.dialog h2{font-size:clamp(27px,4vw,43px);letter-spacing:-1.5px;line-height:1.1;margin:20px 0 15px}.dialog-sub{color:#b2c4ba;font-size:18px;line-height:1.8;margin-bottom:24px}.dialog .primary{margin:22px auto 0}.secondary{background:none;border:0;color:#b9c7bd;font-size:18px;padding:16px;margin-top:6px}.secondary:hover{color:var(--gold)}.upgrade-dialog{width:min(900px,100%)}.upgrade-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:30px 0}.upgrade-card{position:relative;text-align:left;background:#0e0f13;border:2px solid #f6cb6540;border-radius:4px;padding:24px 20px;transition:.12s;min-height:210px}.upgrade-card:hover{border-color:var(--gold);transform:translateY(-4px);background:#17181f;box-shadow:0 0 0 1px var(--gold),0 0 22px #f6cb6540}.upgrade-card .upgrade-icon{display:grid;place-items:center;color:var(--gold);background:#f6cb650d;border:2px solid #f6cb6540;border-radius:4px;font-size:35px;width:55px;height:55px;margin-bottom:23px}.upgrade-card h3{font-size:20px;margin:0 0 10px}.upgrade-card p{font-size:18px;line-height:1.6;color:#bbc8be;margin:0}.upgrade-card .key{position:absolute;right:14px;top:14px;border:1px solid #ffffff22;padding:4px 7px;border-radius:4px;font-size:18px;color:#bdc9bc}.upgrade-card .rank{display:block;color:var(--gold);font-size:18px;letter-spacing:1px;margin-top:17px}.muted{font-size:18px;color:#96afa3}.result-stats{display:flex;justify-content:center;gap:30px;margin:25px 0}.result-stats strong{display:block;font-size:32px;color:var(--gold)}.result-stats small{font-size:18px;letter-spacing:1px;color:#b7cbbd}#stick{display:none}
@media(min-width:1500px){.intro-copy{top:21%}}
@media(max-height:730px) and (min-width:761px){.intro-copy{top:15%}h1{font-size:52px;margin:19px 0 14px}.lead{margin-bottom:16px;font-size:18px}.hero-card{padding:10px}.primary{padding:15px;margin-top:14px}#record{margin-top:13px}.scene-caption{bottom:16%}}
@media(max-width:900px){.brand small{display:none}.health-panel{width:210px}.ability{width:70px}.map-panel{right:16px}.topbar{left:20px;right:20px}.health-panel{left:20px}.intro-copy{left:6%;max-width:52vw}.scene-caption{right:5%;max-width:200px}.scene-caption b{font-size:28px}.intro-meta{gap:8px;font-size:18px}.menu-footer span:last-child{max-width:42%;text-align:right}.keyboard-help{font-size:18px;left:20px}.keyboard-help span{margin:0 8px}}
@media(max-width:600px){.intro{background:linear-gradient(0deg,#101e25fb 0%,#132128d9 55%,#13212844 100%)}.intro-copy{left:7%;top:auto;bottom:9%;max-width:86vw;width:86vw}h1{font-size:46px;letter-spacing:-1.8px;margin:17px 0 13px}.lead{font-size:18px;margin-bottom:19px}.hero-card{max-width:none;padding:11px}.primary{max-width:none}.scene-caption{display:none}.menu-footer{left:20px;right:20px;bottom:14px;font-size:18px}.menu-footer span:last-child{display:none}.intro-meta{font-size:18px;justify-content:space-between}#record{margin-top:15px}.topbar{top:16px;gap:10px}.xp-panel{width:48vw}.xp-label{font-size:18px;gap:5px}.icon-btn{padding:8px;min-height:34px}.top-actions{gap:5px}.run-info{right:18px;top:82px}#timer{font-size:28px}.run-info .eyebrow{font-size:18px}.kill-pill{font-size:18px;padding:6px}.health-panel{bottom:24px;width:175px;left:18px}.avatar{width:38px;height:43px;font-size:28px}.health-panel small{font-size:18px}.ability-bar{left:auto;right:18px;bottom:95px;transform:none;gap:8px}.ability{width:62px;min-height:70px}.ability.active{display:none}.map-panel{bottom:18px;right:18px;padding:7px}.map-panel canvas{width:80px;height:80px}.map-panel .xp-label{display:none}.keyboard-help{display:none}.dialog{padding:26px 18px}.upgrade-cards{grid-template-columns:1fr;margin:20px 0;gap:9px}.upgrade-card{padding:15px 15px 15px 72px;min-height:100px}.upgrade-card .upgrade-icon{position:absolute;left:12px;top:17px;width:44px;height:44px;font-size:28px;margin:0}.upgrade-card h3{font-size:18px;margin:0 0 5px}.upgrade-card p{font-size:18px;padding-right:10px}.upgrade-card .rank{margin-top:7px}.upgrade-card .key{font-size:18px;right:7px;top:7px}.dialog h2{font-size:34px}.result-stats{gap:20px}#boss-bar{top:70px;left:18px;transform:none;width:47vw}#boss-bar b{font-size:18px}#toast{top:29%;font-size:18px;width:max-content}#stick{position:fixed;bottom:100px;left:25px;width:104px;height:104px;border:1px solid #e3eed644;border-radius:50%;background:#152c3155;touch-action:none;display:block}#stick i{position:absolute;left:32px;top:32px;width:40px;height:40px;border-radius:50%;background:#e5e5c580;pointer-events:none}}
@media(pointer:coarse) and (min-width:601px){#stick{position:fixed;left:35px;bottom:150px;width:104px;height:104px;border:1px solid #e3eed644;border-radius:50%;background:#152c3155;touch-action:none;display:block}#stick i{position:absolute;left:32px;top:32px;width:40px;height:40px;border-radius:50%;background:#e5e5c580;pointer-events:none}.keyboard-help{display:none}}

/* Keep small HUD text readable over the bright arena. */
.xp-panel{background:#152226b8;padding:9px 12px;border:1px solid #ffffff12;border-radius:7px}.health-panel,.run-info,.keyboard-help{text-shadow:0 1px 5px #142024,0 1px 2px #142024}.run-info .eyebrow{color:#dde4d9}.health-content .xp-label{color:#fff}.health-content .xp-label span{color:#edf2e8}
@media(max-width:600px){.ability-bar{bottom:130px}.xp-panel{padding:7px 8px}.topbar{gap:7px}.top-actions{gap:4px}.icon-btn{padding:8px 6px}.run-info{top:90px}}
@media(max-height:520px){.intro{overflow-y:auto}.intro-copy{position:relative;top:auto;bottom:auto;padding-top:85px;padding-bottom:65px}.intro-copy h1{font-size:37px}.intro-copy .lead{font-size:18px;margin-bottom:13px}.hero-card{padding:9px}.menu-footer{position:fixed;background:#142024;bottom:0;padding:12px 0}.scene-caption{display:none}.dialog{padding:22px}.upgrade-card{min-height:170px;padding:17px}.upgrade-card .upgrade-icon{margin-bottom:10px}.upgrade-cards{margin:15px 0}.dialog h2{font-size:32px;margin:10px 0}.dialog-sub{margin-bottom:12px}.keyboard-help{display:none}}

/* Expedition selection remains scrollable on short screens. */
.intro{overflow-y:auto}.intro-copy{position:relative;top:auto!important;bottom:auto;left:7%;padding:105px 0 90px;width:510px;max-width:46vw}.intro-copy h1{font-size:clamp(32px,3.6vw,54px);margin:14px 0}.intro-copy .lead{margin-bottom:14px}.expedition-select{max-width:380px;padding:16px;background:#192b30ed;border:1px solid #ffffff25;border-radius:10px}.expedition-select label{display:block;font-size:18px;letter-spacing:2px;color:var(--gold);margin-bottom:7px}.expedition-select select{width:100%;font:inherit;font-size:18px;font-weight:700;padding:9px;background:#2b4041;color:#fff;border:1px solid #748c7a;border-radius:5px}.expedition-select p{font-size:18px;color:#c1d2cb;line-height:1.5;margin:7px 0 13px}.expedition-select small{font-size:18px;color:var(--gold)}.menu-footer{position:fixed;background:#142024ef;bottom:0;padding:14px;z-index:2}#inventory{display:grid;grid-template-columns:1fr 1fr;gap:6px;text-align:left;max-height:220px;overflow:auto}#inventory p{margin:0;background:#ffffff08;padding:9px;font-size:18px;border-radius:4px}#build-text{line-height:1.6;max-height:46px;overflow:hidden}.health-panel{width:300px}
@media(max-width:600px){.intro-copy{left:7%;max-width:86vw;width:86vw;padding-top:86px}.intro-copy h1{font-size:37px}.intro-copy .lead{font-size:18px}.expedition-select{max-width:none;padding:12px}.health-panel{width:190px}#inventory-button{font-size:18px}.menu-footer{left:0;right:0}.topbar{left:12px;right:12px}.brand{font-size:24px}#inventory{grid-template-columns:1fr}}

@media(min-width:601px){.health-panel{width:clamp(180px,22vw,265px)}}

/* Run HUD: identity above two independent equipment columns. */
.playing .brand{visibility:hidden;pointer-events:none}.playing .topbar{left:24px;right:24px;top:24px;pointer-events:none}.playing .top-actions{pointer-events:auto;margin-left:auto}.playing .xp-panel{position:fixed;left:24px;top:96px;width:232px;padding:8px 10px}.playing .health-panel{left:24px;top:23px;bottom:auto;width:252px;height:61px;background:#15252be8;border:1px solid #ffffff25;border-radius:9px;padding:9px;gap:9px;text-shadow:none}.playing .avatar{width:36px;height:42px;font-size:28px;flex-shrink:0}.playing .health-content{min-width:0}.playing .health-content .xp-label{display:block;letter-spacing:.5px}.playing #hero-name{display:block;font-size:18px;line-height:1.3}.playing #hp-text{display:block;font-size:18px;line-height:1.3;margin-top:2px}.playing .health{height:7px}.loadout-panel{position:fixed;left:24px;top:151px;width:208px;z-index:3;background:#11212be8;border:1px solid #d8e2dc25;border-radius:10px;padding:9px}.loadout-head{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}.loadout-head h3{margin:0;display:flex;justify-content:space-between;align-items:center;font-size:18px;letter-spacing:.7px;color:#eccb7e}.loadout-head h3:last-child{color:#a3d6e5}.loadout-head b{font-size:18px;letter-spacing:0;color:#d3ddd9}.loadout-scroll{display:grid;grid-template-columns:1fr 1fr;gap:8px;max-height:calc(100dvh - 219px);overflow:auto;scrollbar-width:thin;scrollbar-color:#567477 transparent}.equipment-column{display:grid;gap:4px;grid-auto-rows:clamp(43px,calc((100dvh - 272px)/10),60px);min-width:0}.equipment-slot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;min-width:0;overflow:hidden;border-radius:5px;background:#2b3e4399;border:1px solid #e7c57845;padding:2px 3px}.equipment-column:last-child .equipment-slot{border-color:#93c9dc45;background:#253d4c99}.equipment-slot svg{width:23px;height:23px;flex-shrink:0}.equipment-name{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;font-size:18px;color:#f1eee0;line-height:11px}.equipment-level{font-size:18px;line-height:12px;color:#f5d285;font-variant-numeric:tabular-nums}.equipment-column:last-child .equipment-level{color:#b0e4f2}.equipment-slot.empty{border:1px dashed #ffffff14;background:#ffffff03}.empty-number{font-size:18px;color:#69818b;line-height:16px}.empty .equipment-name{color:#68808a;font-size:18px;letter-spacing:1px}.choice-capacity{font-size:18px;color:#d3e0d9;margin:0}.upgrade-icon svg{width:40px;height:40px}.ability.active{display:none}.ability-bar{bottom:30px}.keyboard-help{left:260px;font-size:18px}.run-info{top:100px}.intro-copy{z-index:1}.scene-caption{pointer-events:none}.playing #boss-bar{top:28px;max-width:30vw}.playing .map-panel{bottom:27px}
@media(min-width:601px) and (max-height:700px){.loadout-panel{top:145px}.equipment-column{grid-auto-rows:43px}.loadout-scroll{max-height:calc(100dvh - 210px)}}
@media(max-width:600px){.playing .topbar{top:12px;left:12px;right:12px}.playing .health-panel{top:12px;left:12px;width:168px;height:55px;padding:6px;gap:6px}.playing .avatar{width:28px;height:34px;font-size:22px}.playing #hero-name{font-size:18px}.playing #hp-text{font-size:18px}.playing .xp-panel{left:12px;top:75px;width:168px;padding:6px 8px}.playing .top-actions{gap:4px}.playing #inventory-button{font-size:0;padding:7px}.playing #inventory-button::after{content:'▤';font-size:20px}.loadout-panel{left:12px;top:125px;width:125px;padding:6px;border-radius:7px}.loadout-head{gap:5px;margin-bottom:6px}.loadout-head h3{font-size:18px;letter-spacing:0;display:block;text-align:center}.loadout-head b{display:block;font-size:18px;margin-top:2px}.loadout-scroll{gap:5px;max-height:calc(100dvh - 335px)}.equipment-column{gap:4px;grid-auto-rows:51px}.equipment-slot{padding:2px}.equipment-slot svg{width:23px;height:23px}.equipment-name{font-size:18px}.equipment-level{font-size:18px}.run-info{top:77px;right:12px}.run-info .eyebrow{display:none}.kill-pill{font-size:18px;padding:5px}#timer{font-size:28px;margin:0 0 8px}#timer small{font-size:18px}.playing #boss-bar{top:auto;bottom:16px;left:12px;width:47vw;max-width:none}.playing .ability-bar{right:12px;bottom:126px}.playing .map-panel{right:12px;bottom:12px}.playing .map-panel .xp-label{display:block;font-size:18px;max-width:83px;letter-spacing:0}.playing #chest-count{display:none}#stick{left:18px;bottom:55px;width:92px;height:92px}#stick i{left:26px;top:26px}#toast{top:23%;left:61%;max-width:68%;padding:9px 12px;font-size:18px}.playing .keyboard-help{display:none}.choice-capacity{font-size:18px}.upgrade-icon svg{width:30px;height:30px}}

@media(min-width:601px) and (max-height:800px){.equipment-slot{gap:0;padding:1px 3px}.equipment-slot svg{width:16px;height:16px}.equipment-name{font-size:18px;line-height:10px}.equipment-level{font-size:18px;line-height:11px}}
@media(max-width:600px){.equipment-slot{gap:0}.equipment-slot svg{width:20px;height:20px}.equipment-name{line-height:10px}.equipment-level{line-height:11px}}

.equipment-slot.evolved{border-color:#dcaff4;background:#473653b8;box-shadow:inset 0 0 12px #d4a6ed14}.equipment-slot.evolved .equipment-level{color:#f0c9ff}.evolution-hint{display:block;margin-top:12px;color:#d9bce8;font-size:18px;line-height:1.5}#evolutions{z-index:15;place-items:start center}.evolution-dialog{width:min(940px,100%);margin:24px 0}.evolution-dialog .dialog-sub{margin-bottom:4px}#close-evolutions{position:sticky;top:0;background:#27333b;border:1px solid #c7b2da55;border-radius:6px;z-index:1}#evolution-recipes{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.evolution-recipe{display:flex;gap:14px;text-align:left;padding:18px;border:1px solid #b894d039;border-radius:9px;background:#26333d}.recipe-icon{flex:0 0 42px}.recipe-icon svg{width:42px;height:42px}.evolution-recipe h3{font-size:20px;margin:5px 0 9px;color:#efd4ff}.evolution-recipe p{font-size:18px;line-height:1.6;color:#ced7d8;margin:0 0 12px}.evolution-recipe small{font-size:18px;color:#ebd493;line-height:1.7}.recipe-status{font-size:18px;letter-spacing:1px;color:#a9bdc8}.evolution-recipe.unlocked{border-color:#d0a1ed}.unlocked .recipe-status{color:#eac4ff}#menu-evolutions{padding:8px 0;margin-top:8px;font-size:18px;color:#e4c6f4}
@media(max-width:600px){#evolution-recipes{grid-template-columns:1fr}.evolution-recipe{padding:13px;gap:10px}.evolution-dialog{margin:0}.evolution-dialog h2{font-size:30px}.evolution-hint{font-size:18px;margin-top:6px}}

/* Compact equipment: transparent columns, icons and overlaid level only. */
.loadout-panel{left:24px;top:153px;width:84px;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}.loadout-head{display:none}.loadout-scroll{grid-template-columns:38px 38px;gap:8px;max-height:calc(100dvh - 200px);overflow-y:auto;overflow-x:hidden;scrollbar-width:none}.equipment-column{grid-auto-rows:38px;gap:4px;align-content:start}.equipment-slot,.equipment-column:last-child .equipment-slot,.equipment-slot.evolved{position:relative;width:38px;height:38px;display:block;padding:2px;overflow:visible;background:transparent;border:0;border-radius:0;box-shadow:none}.equipment-slot.empty{display:none}.equipment-slot svg{display:block;width:32px;height:32px;filter:drop-shadow(0 1px 2px #0009)}.equipment-slot.evolved svg{filter:drop-shadow(0 0 3px #d6a1ef99)}.equipment-slot .equipment-level,.equipment-column:last-child .equipment-level{position:absolute;right:0;bottom:0;z-index:1;font-size:18px;line-height:14px;font-weight:900;color:#fff2a2;letter-spacing:-.3px;font-variant-numeric:tabular-nums;text-shadow:-1px -1px #172125,1px -1px #172125,-1px 1px #172125,1px 1px #172125,0 1px 3px #000}.equipment-slot.evolved .equipment-level{color:#f2cfff}.equipment-name,.empty-number{display:none}
@media(max-width:600px){.loadout-panel{left:12px;top:126px;width:76px}.loadout-scroll{grid-template-columns:34px 34px;gap:8px;max-height:calc(100dvh - 305px)}.equipment-column{grid-auto-rows:34px;gap:3px}.equipment-slot,.equipment-column:last-child .equipment-slot{width:34px;height:34px;padding:1px}.equipment-slot svg{width:29px;height:29px}.equipment-slot .equipment-level{font-size:18px;line-height:13px}}

.equipment-column .equipment-slot.empty{display:none}
.lab-dialog{width:min(860px,94vw);max-width:860px;max-height:88dvh;overflow:auto;text-align:left}.lab-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.lab-toolbar>b{color:#f4d27b;font-size:24px}.lab-toolbar .secondary{width:auto;margin:0}.lab-tabs{display:flex;gap:8px;margin:18px 0;flex-wrap:wrap}.lab-tabs button{padding:10px 16px;border:1px solid #596c70;border-radius:7px;background:#263d44;color:#e7eeee;cursor:pointer}.lab-tabs button[aria-pressed=true]{background:#e8c778;color:#243b41}.lab-card{display:flex;align-items:center;gap:16px;padding:15px 0;border-bottom:1px solid #ffffff20}.lab-card>div{flex:1}.lab-card h3{margin:0 0 6px;font-size:20px}.lab-card p,#lab-explanation{font-size:18px;line-height:1.6;color:#b7c6c8;margin:0}.lab-card .secondary{width:180px;flex-shrink:0;margin:0;font-size:18px}.lab-card button:disabled{opacity:.45;cursor:default}.lab-icon{width:40px;flex-shrink:0}.lab-icon svg{width:40px;height:40px}#lab-message{color:#f4d27b;font-size:18px}.summary-equipment{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:left;margin-bottom:22px}.summary-equipment h3{color:#ecd08a;font-size:18px}.summary-equipment p{font-size:18px;margin:7px 0;color:#cfdddd}.summary-icons{display:flex;flex-wrap:wrap;gap:7px}.summary-icon{position:relative;display:grid;place-items:center;width:34px;height:34px}.summary-icon svg{width:30px;height:30px;filter:drop-shadow(0 1px 2px #0009)}.summary-icon b{position:absolute;right:0;bottom:0;color:#fff2a2;font-size:18px;line-height:12px;text-shadow:-1px -1px #172125,1px -1px #172125,-1px 1px #172125,1px 1px #172125}.summary-icon.evolved svg{filter:drop-shadow(0 0 3px #d6a1ef99)}#result>.dialog{max-height:90dvh;overflow:auto;max-width:700px}#result-stats{display:grid;grid-template-columns:1fr;gap:0;margin:22px auto;max-width:430px}#result-stats>div{display:flex;align-items:center;justify-content:space-between;min-width:0;border-bottom:1px solid #ffffff14;padding:10px 4px;text-align:left}#result-stats strong{font-size:31px}#result-stats small{font-size:18px}#portal-hint{position:absolute;left:50%;bottom:105px;transform:translateX(-50%);padding:10px 18px;border:1px solid #7efce1;border-radius:20px;background:#173c3ded;color:#bcfff0;font-size:18px;text-align:center;max-width:65vw;pointer-events:none}#laboratory-button{color:#f5d68a}#laboratory{z-index:30}
@media(max-width:600px){.lab-card{flex-wrap:wrap;gap:10px}.lab-card .secondary{width:100%}.lab-dialog{padding:22px 18px}.lab-dialog h2{font-size:34px}.lab-tabs{gap:4px}.lab-tabs button{padding:9px 11px}.lab-toolbar>b{font-size:20px}.summary-equipment{gap:12px}#result .dialog-sub:empty{display:none}#result-stats{display:grid;grid-template-columns:1fr;gap:10px;margin:18px 0}#result-stats>div{display:flex;align-items:center;justify-content:space-between;min-width:0;border-bottom:1px solid #ffffff14;padding:7px 0;text-align:left}#result-stats strong{font-size:28px}#result-stats small{font-size:18px}#result-equipment{grid-template-columns:1fr 1fr;margin-top:2px}.summary-icons{gap:6px}.summary-icon{width:28px;height:28px}.summary-icon svg{width:25px;height:25px}.summary-icon b{font-size:18px;line-height:10px}#portal-hint{bottom:100px;max-width:75vw;font-size:18px}}
.coin-display{background:#152226b8;border:1px solid #ffffff20;border-radius:7px;padding:9px 13px;color:var(--gold);font-weight:800;font-size:18px;letter-spacing:.5px;white-space:nowrap;text-shadow:0 1px 4px #142024}
.menu-btn{display:block;width:100%;max-width:380px;margin:10px auto 0;background:#142024aa;border:1px solid var(--line);border-radius:6px;color:#e8efe4;font-weight:800;font-size:18px;letter-spacing:.8px;padding:14px 16px;cursor:pointer;transition:background .15s,transform .15s}
.menu-btn:hover{background:#34433a;transform:translateY(-1px)}
.menu-actions{display:grid;grid-template-columns:1fr;gap:10px;max-width:380px;margin:10px auto 0}
.menu-actions .menu-btn{margin:0;max-width:none;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.upgrade-card .gain{display:block;margin-top:10px;padding:6px 8px;background:#f6cb650f;border:1px solid #f6cb6533;border-radius:6px;color:#f3dd9a;font-size:18px;line-height:1.5}
.upgrade-card .gain b{color:#fff}
@media(max-width:600px){.upgrade-card .gain{font-size:18px;margin-top:6px;padding:5px 6px}}
.playing .coin-display{position:fixed;left:50%;top:26px;transform:translateX(-50%);margin:0;z-index:6}
.playing #boss-bar{top:64px}
@media(max-width:600px){.coin-display{padding:7px 9px;font-size:18px}.menu-actions .menu-btn{max-width:380px}}

/* Upgrade choices stay in a single row, including narrow screens. */
#choice{padding:12px}
#choice .upgrade-dialog{width:min(680px,100%);padding:24px 16px}
#choice .upgrade-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0 16px}
#choice .upgrade-card{min-width:0;min-height:140px;padding:16px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}
#choice .upgrade-card:disabled{cursor:default;opacity:.5;transform:none;border-color:#f6cb6522;box-shadow:none}
#choice .upgrade-card:disabled:hover{background:#0e0f13;border-color:#f6cb6522;transform:none;box-shadow:none}
#choice .upgrade-icon{position:static;flex-shrink:0;margin:0;width:48px;height:48px}
#choice .upgrade-copy{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0}
#choice .upgrade-name{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#eef6ee;font-size:18px;line-height:1.2}
#choice .gain{display:block;margin:0;padding:0;background:none;border:0;font-size:21px;line-height:1.4;letter-spacing:0;overflow-wrap:anywhere;color:var(--gold);font-weight:800}
@media(max-width:600px){#choice .upgrade-dialog{padding:20px 10px}#choice .upgrade-cards{gap:6px}#choice .upgrade-card{min-height:118px;padding:12px 4px;gap:10px}#choice .upgrade-icon{width:38px;height:38px}#choice .upgrade-name{font-size:18px}#choice .gain{font-size:18px}}

/* The minimap opens with the comma key on desktop and stays hidden on phones. */
.playing .map-panel{display:none}
.playing.minimap-open .map-panel{display:block}
@media(max-width:600px),(pointer:coarse){.playing.minimap-open .map-panel,.playing .map-panel{display:none!important}}
