.preview-canvas{display:block;margin:0 auto}.starter{pointer-events:none}.starter button{pointer-events:auto}.field-label.selected-target{color:#e7f6a6;font-size:13px;background:#142c339c;padding:5px 9px;border:1px solid #d8ed9570;border-radius:4px;box-shadow:0 0 18px #142c3344}
:root{color-scheme:dark;--ink:#eaf3eb;--muted:#aec4bd;--lime:#d8ed95;--cyan:#77d9d6;--panel:#152e34;--line:#c0dcc424;--glass:#153237d9;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none;font-weight:450;color:var(--ink);background:#112b31}
*{box-sizing:border-box}body{margin:0;overflow:hidden}button,input,select{font:inherit}button{color:inherit;cursor:pointer;border:1px solid var(--line);background:#c5e7d00a;transition:background .18s,transform .18s,border-color .18s}button:hover{background:#d6eea52b;border-color:#deecaaa8;transform:translateY(-2px)}button:active{transform:scale(.97)}button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--lime);outline-offset:4px}button:disabled{opacity:.4;cursor:default;transform:none}button,select{touch-action:manipulation}button.primary{display:flex;justify-content:space-between;align-items:center;gap:44px;min-height:62px;padding:18px 25px;border:0;background:var(--lime);color:#263c2e;border-radius:5px;font-weight:700;font-size:16px;box-shadow:0 8px 30px #112a3020}button.primary:hover{background:#e6fab1;box-shadow:0 10px 40px #d8ed9530}.primary span{font-size:25px}.text-button{border:0;background:none;padding:10px;color:#d5e3d9;font-size:14px}.hidden{display:none!important}.full-screen{position:absolute;inset:0}#world{position:absolute;width:100%;height:100%;touch-action:none}#vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 55% 38%,transparent 35%,#07293148 100%)}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;color:var(--lime)}.loading{background:#122c33;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;text-align:center}.loading h1{font-family:Georgia,serif;font-size:40px;font-weight:400;margin:10px}.loading p,.loading small{color:var(--muted)}.load-mark{font-size:80px;font-weight:800;letter-spacing:-8px}.load-mark span{color:var(--lime);margin-left:12px}.progress-track{width:300px;height:3px;background:#aec4bd30}.progress-track i{display:block;height:100%;width:4%;background:var(--lime);transition:width .3s}.title{padding:36px 5%;background:linear-gradient(90deg,#102e35ed 0%,#173f456a 40%,transparent 66%)}.title-top,.title-bottom{display:flex;justify-content:space-between;align-items:center}.wordmark{font-size:23px;font-weight:800;letter-spacing:4px}.wordmark b{font-weight:400;color:var(--lime);letter-spacing:1px;border-left:1px solid #cce0c858;padding-left:14px;margin-left:8px}.edition{font-size:12px;letter-spacing:2px}.title-content{position:absolute;top:24%;left:7%;max-width:620px}.title-content h1{font-size:clamp(42px,4.9vw,80px);line-height:1.1;letter-spacing:-3px;font-weight:450;margin:24px 0}.title-content h1 em{font-family:Georgia,serif;font-weight:400;color:var(--lime)}.title-content p{font-size:17px;line-height:1.8;color:#c5d7cd;margin-bottom:28px}.title-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.title-dex{display:flex;gap:17px;margin-top:35px;align-items:center}.title-dex b{font-size:28px;letter-spacing:2px;font-weight:500}.title-dex i,.expedition-status i{font-style:normal;color:#abc2bca0;font-size:.65em}.title-dex small{display:block;color:var(--muted);font-size:10px;letter-spacing:2px;margin-top:6px}.dex-emblem{font-size:38px;color:var(--lime)}.title-bottom{position:absolute;bottom:25px;left:5%;right:5%;font-size:11px;letter-spacing:2px}.location-caption{position:absolute;right:6%;bottom:17%;font-size:12px;letter-spacing:2px;line-height:2.1;text-shadow:0 2px 5px #000}.location-caption span{color:#c6d8d0;letter-spacing:1px}.live-dot{display:inline-block;background:var(--lime);width:6px;height:6px;border-radius:50%;margin-right:8px;box-shadow:0 0 12px #d8ed95}.starter{background:linear-gradient(180deg,#123239cd,transparent 40%,#092931f0)}.starter-head{text-align:center;margin-top:5vh}.starter-head h1{font-size:40px;font-family:Georgia,serif;font-weight:400;margin:14px}.starter-head p{color:var(--muted);font-size:15px}#starter-cards{position:absolute;bottom:16vh;left:10%;right:10%;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.starter-card{padding:22px;border-radius:8px;background:#132f36d9;backdrop-filter:blur(10px);text-align:left;border-top:2px solid var(--type)}.starter-card.selected{background:#d8ed95;color:#1d3930;box-shadow:0 0 0 2px #e7f5b5;transform:translateY(-7px)}.starter-card small{font-size:11px;letter-spacing:1px}.starter-card b{display:block;margin:10px 0;font-size:22px}.starter-card p{font-size:13px;margin:6px 0;line-height:1.6}.starter-footer{position:absolute;left:10%;right:10%;bottom:5vh;display:flex;align-items:center;justify-content:space-between}.starter-footer>span{font-size:13px;color:var(--muted)}#hud{position:absolute;inset:0;pointer-events:none}#hud button{pointer-events:auto}.hud-top{position:absolute;top:28px;left:32px;right:32px;display:flex;justify-content:space-between}.region-card h2{font-family:Georgia,serif;font-size:29px;font-weight:400;margin:6px 0}.region-card{filter:drop-shadow(0 2px 9px #092226);min-width:250px}.region-card>span:last-child{font-size:12px;color:#d8e7df}.expedition-status{display:flex;align-items:flex-start;gap:10px}.expedition-status>button{border:1px solid #adc9b947;border-radius:6px;padding:12px 18px;min-height:54px;font-size:22px;backdrop-filter:blur(12px);background:var(--glass)}#journal-button{display:flex;align-items:center;gap:24px;font-size:22px}#journal-button>span{font-size:10px;letter-spacing:2px}.objective{position:absolute;top:139px;left:32px;background:linear-gradient(90deg,#173337ce,#17333700);padding:16px 26px 16px 16px;border-left:2px solid var(--lime);max-width:300px}.objective .eyebrow{font-size:10px;letter-spacing:1.5px}.objective b{display:block;font-size:16px;margin:9px 0}.objective p{font-size:13px;line-height:1.6;color:#cfddd5;margin:0}.hud-bottom{position:absolute;bottom:66px;left:32px;right:32px;display:flex;align-items:flex-end;gap:22px}.partner-card{display:flex;align-items:center;gap:15px;width:280px;padding:17px;border-radius:8px;background:var(--glass);backdrop-filter:blur(12px);border:1px solid var(--line);box-shadow:0 5px 25px #10272722}.partner-badge{font-size:36px;color:var(--lime)}.partner-info{flex:1;min-width:0}.partner-info>div:first-child{display:flex;justify-content:space-between;align-items:center;gap:6px}.partner-info b{font-size:15px}.partner-info span{font-size:11px;color:var(--lime)}.partner-info small{font-size:10px;display:block;margin-top:5px;text-align:right;color:var(--muted)}.partner-card>button{padding:7px;border:0}.hp-track{height:5px;margin-top:10px;border-radius:6px;background:#b5d5c62a;overflow:hidden}.hp-track i{display:block;width:100%;height:100%;background:#b3e79c;transition:width .18s}.exp-track{height:2px;background:#b5d5c62a;margin-top:8px}.exp-track i{display:block;width:0;height:100%;background:#8fd8e4}.move-bar{display:flex;gap:8px;margin-left:auto}.move{height:86px;width:100px;position:relative;border-radius:8px;overflow:hidden;background:var(--glass);backdrop-filter:blur(12px);padding:12px 9px;text-align:left;box-shadow:0 5px 25px #10272722}.move kbd{color:#fff9}.move strong{display:block;font-size:12px;position:relative;margin-top:12px;line-height:1.2}.move em{position:absolute;right:9px;top:10px;font-size:13px;font-style:normal;color:var(--type)}.move::after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--type)}.move .cooldown{position:absolute;left:0;right:0;bottom:0;height:0;background:#d6e6df25;pointer-events:none;transition:height .1s linear}kbd{font:10px "Segoe UI",sans-serif;border:1px solid #b1d1bf55;border-radius:3px;padding:3px 5px;margin-right:4px}.ball-button{height:96px;width:82px;border-radius:8px;background:var(--glass);backdrop-filter:blur(12px)}.ball-icon{font-size:32px;color:#f4876f}.ball-button b{font-size:15px;margin-left:5px}.ball-button small{display:block;font-size:9px;letter-spacing:.5px;margin-top:7px}.quick-nav{position:absolute;bottom:18px;left:32px;right:32px;display:flex;align-items:center;gap:13px}.quick-nav button{border:0;padding:4px;background:none;font-size:11px;color:#d3e3d8}.quick-nav>span{margin-left:auto;font-size:10px;color:#d3e3d8;text-shadow:0 1px 4px #000}.target-hud{position:absolute;top:30%;right:32px;width:220px;padding:16px;border-radius:7px;border:1px solid #c8e1cb55;background:var(--glass)}.target-hud>span{font-size:9px;color:var(--lime);letter-spacing:1.5px}.target-hud>b{display:block;font-size:19px;margin:9px 0}.target-hud b small{font-size:12px;float:right;color:var(--muted)}.target-hud>small{display:block;margin-top:10px;color:var(--muted);font-size:11px}.context{position:absolute;bottom:200px;left:50%;transform:translateX(-50%);padding:13px 20px;border:1px solid #cceacb55;border-radius:6px;background:#122d31eb;font-size:14px}.context kbd{padding:5px 9px;color:var(--lime);font-size:13px}.boss-hud{position:absolute;top:25px;left:50%;transform:translateX(-50%);width:38%;text-align:center}.boss-hud>span{font-size:10px;letter-spacing:2px;color:#f6c9a4}.boss-hud h2{font-family:Georgia,serif;margin:4px 0;font-weight:400}.boss-hud .hp-track{height:7px;background:#411f32bd}.boss-hud .hp-track i{background:#f49886}#reticle{position:absolute;left:50%;top:50%;font-size:25px;color:#f5f9da77;transform:translate(-50%,-50%);text-shadow:0 1px 5px #17343b}#labels{position:absolute;inset:0;pointer-events:none;overflow:hidden}.field-label{position:absolute;transform:translate(-50%,-100%);font-size:11px;white-space:nowrap;color:#eef5e5;text-shadow:0 1px 4px #000,0 0 10px #000;font-weight:600}.field-label small{color:#e0eaa7;margin-left:7px;font-weight:400}.field-label.shiny{color:#ffe780}.field-label .tiny-hp{width:50px;height:3px;background:#213c34aa;margin:4px auto;border-radius:4px}.field-label .tiny-hp i{display:block;height:100%;background:#d1e9a2}#toast-stack{position:absolute;right:30px;top:128px;display:flex;flex-direction:column;align-items:flex-end;gap:10px;z-index:50;pointer-events:none}.toast{padding:15px 20px;background:#133439f2;backdrop-filter:blur(16px);border:1px solid #c0dfbe48;border-left:3px solid var(--lime);border-radius:5px;max-width:350px;animation:toast-in .25s ease;font-size:14px;box-shadow:0 12px 25px #0003}.toast small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.toast.warn{border-left-color:#ffad7d}#save-note{position:absolute;bottom:145px;left:36px;font-size:11px;color:var(--lime);pointer-events:none}#cinematic{position:absolute;inset:0;pointer-events:none;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(#071b23b8,transparent 35%,transparent 65%,#071b23c9);text-shadow:0 3px 20px #0009;z-index:40;text-align:center}#cinematic span{font-size:13px;letter-spacing:4px;color:var(--lime)}#cinematic h1{font-family:Georgia,serif;font-size:64px;font-weight:400;margin:18px}#cinematic p{font-size:17px;color:#e1ecde;max-width:650px}#modal-backdrop{position:absolute;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;background:#071c27b8;backdrop-filter:blur(14px);padding:25px}#panel{width:min(1100px,95vw);max-height:90vh;background:#152e34f5;border:1px solid #bed8c739;border-radius:13px;box-shadow:0 40px 110px #0005;display:flex;flex-direction:column;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:24px 30px;border-bottom:1px solid var(--line)}.panel-header h1{font-family:Georgia,serif;font-weight:400;font-size:32px;margin:6px 0 0}.panel-header .eyebrow{font-size:10px;letter-spacing:2px}.panel-header>button{font-size:30px;border-radius:50%;width:40px;height:40px;line-height:30px}#panel-body{padding:25px 30px;overflow:auto;scrollbar-color:#55756d #152e34;font-size:15px;line-height:1.7}.panel-toolbar{display:flex;gap:12px;align-items:center;margin-bottom:20px}.panel-toolbar input,.panel-toolbar select{border:1px solid var(--line);background:#0c242ac2;padding:11px 14px;color:var(--ink);border-radius:5px}.panel-toolbar input{flex:1}.panel-toolbar>span{color:var(--lime);font-size:13px}.dex-layout{display:grid;grid-template-columns:1fr 330px;gap:25px}.dex-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;align-content:start;max-height:53vh;overflow:auto;padding:3px}.dex-card{min-height:85px;padding:11px;text-align:left;border-radius:5px;position:relative}.dex-card small{font-size:10px;color:var(--muted)}.dex-card strong{font-size:13px;display:block;margin-top:8px}.dex-card .dot{width:6px;height:6px;border-radius:100%;background:#526860;float:right}.dex-card.caught .dot{background:var(--lime)}.dex-card.seen .dot{background:var(--cyan)}.dex-card.selected{background:#cceba52a;border-color:#d8ed95}.dex-card.unknown strong{color:#809d98}.preview-canvas{width:100%;height:220px;background:radial-gradient(#45625770,transparent 70%);border-bottom:1px solid var(--line);touch-action:none}.dex-detail h2{font-size:26px;margin:14px 0 4px}.tag{display:inline-block;padding:3px 8px;border:1px solid color-mix(in srgb,var(--type),transparent 70%);color:var(--type);background:color-mix(in srgb,var(--type),transparent 93%);font-size:10px;line-height:1.5;text-transform:uppercase;letter-spacing:1px;border-radius:4px;margin-right:5px}.dex-detail p{font-size:13px;line-height:1.7;color:var(--muted)}.dex-detail h3{font-size:11px;letter-spacing:1.4px;color:var(--lime);text-transform:uppercase;margin:20px 0 8px}.dex-detail small{color:var(--muted)}.stat-row{display:grid;grid-template-columns:65px 1fr 30px;align-items:center;gap:7px;font-size:11px;margin:6px 0}.stat-row i{height:3px;background:#b9d894}.party-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.party-tile{padding:18px;border:1px solid var(--line);border-radius:7px;background:#e2f8cb04}.party-tile.active{border-color:var(--lime);background:#d8ed950a}.party-tile h2{font-size:20px;margin:0 0 10px}.party-tile small{color:var(--muted);font-size:11px}.party-tile button{padding:7px 10px;border-radius:4px;font-size:12px;margin:8px 5px 0 0}.party-tile .hp-track{margin-bottom:8px}.section-caption{display:flex;justify-content:space-between;color:var(--muted);font-size:13px;margin-bottom:15px}.storage-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.storage-list button{padding:10px;font-size:12px}.bag-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.item-card{border:1px solid var(--line);padding:16px;border-radius:6px}.item-card b{display:block;font-size:15px}.item-card small{color:var(--muted);font-size:12px}.item-card button{display:block;padding:8px 12px;border-radius:4px;font-size:12px;margin-top:12px}.item-card .quantity{float:right;color:var(--lime)}.map-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:25px}.map-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;position:relative}.map-node{min-height:95px;padding:15px;text-align:left;border-radius:6px;background:linear-gradient(135deg,var(--biome),#193138);border:1px solid #a2c2ab44}.map-node strong{display:block;font-size:13px}.map-node small{font-size:10px;color:#d7e2cf}.map-node.current{outline:2px solid var(--lime)}.map-node.locked{filter:saturate(.2);opacity:.65}.map-guide{padding:0 10px}.map-guide h2{font-family:Georgia,serif;font-weight:400;font-size:28px}.map-guide p{color:var(--muted);font-size:13px;line-height:1.8}.map-guide ul{padding-left:18px;color:#d6e5d6;font-size:13px}.settings-row{padding:16px 0;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.settings-row span{font-size:14px}.settings-row input[type=range]{width:180px;accent-color:var(--lime)}.settings-row select{padding:9px;background:#23434a;color:var(--ink);border:1px solid var(--line)}.controls-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0;font-size:13px;color:var(--muted)}.pause-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;max-width:650px;margin:20px auto}.pause-actions button{padding:18px;border-radius:6px}.notice{padding:16px 20px;border-left:2px solid var(--lime);background:#ccecb10a;color:var(--muted);font-size:13px;margin:15px 0}.quest-list{display:grid;gap:10px}.quest-row{padding:16px;border:1px solid var(--line);border-radius:6px}.quest-row h3{font-size:17px;margin:0 0 5px}.quest-row p{font-size:13px;color:var(--muted);margin:5px 0}.quest-row button{padding:9px 15px;margin-top:10px;border-radius:4px}.asset-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}.asset-row .preview-canvas{height:310px}.asset-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;font-size:12px;overflow-wrap:anywhere}.asset-facts b{display:block;color:var(--lime);font-size:11px}.asset-nav{display:flex;gap:10px;align-items:center;margin-bottom:20px}.asset-nav button,.asset-nav select{padding:10px 16px;background:#234249;color:var(--ink);border:1px solid var(--line);border-radius:4px}.credits a{color:var(--lime)}.credits h2{font-size:19px;margin-top:24px}.credits p{font-size:14px;color:var(--muted);line-height:1.9}.capture-card{text-align:center;padding:15px}.capture-card .preview-canvas{height:260px;max-width:450px}.capture-card h2{font-family:Georgia,serif;font-size:40px;font-weight:400;margin:10px}.capture-card p{color:var(--muted)}.capture-card .primary{margin:25px auto 0}.damage-number{position:absolute;font-size:22px;color:#fff6cf;font-weight:800;text-shadow:0 2px 2px #352c19;animation:damage-rise .8s ease-out forwards;pointer-events:none}.damage-number.critical{color:#ffa687;font-size:27px}@keyframes damage-rise{to{transform:translateY(-55px);opacity:0}}@keyframes toast-in{from{opacity:0;transform:translateX(25px)}to{opacity:1;transform:translateX(0)}}#touch-controls{display:none} @media(max-width:1000px){.title-content h1{font-size:54px}.location-caption{display:none}.hud-bottom{left:20px;right:20px;gap:10px}.move{width:76px}.partner-card{width:235px;padding:13px;gap:8px}.quick-nav>span{display:none}.dex-grid{grid-template-columns:repeat(3,1fr)}.starter-card{padding:15px}.starter-card b{font-size:18px}.objective{max-width:250px}.boss-hud{top:112px}.bag-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.title{padding:25px}.title-content{left:25px;top:22%;right:25px}.title-content h1{font-size:45px;letter-spacing:-2px}.title-content p{font-size:15px}.title-bottom>span{display:none}.edition{font-size:9px}.title-actions{gap:8px}.title-dex{margin-top:20px}.title-bottom{left:20px;bottom:14px}.starter-head{margin-top:25px}.starter-head h1{font-size:27px}.starter-head p{font-size:12px;padding:0 20px}#starter-cards{left:5%;right:5%;bottom:18%;gap:8px;grid-template-columns:repeat(2,1fr)}.starter-card{padding:10px}.starter-card b{font-size:16px;margin:3px 0}.starter-card p{display:none}.starter-footer{left:5%;right:5%;bottom:4%;justify-content:center}.starter-footer>span{display:none}.hud-top{top:18px;left:18px;right:18px}.region-card{min-width:0}.region-card h2{font-size:21px}.region-card .eyebrow{font-size:9px}.expedition-status{gap:5px}.expedition-status>button{padding:8px;min-height:40px}#journal-button{gap:7px;font-size:17px}#journal-button>span{display:none}.objective{top:110px;left:18px;padding:10px;max-width:185px}.objective b{font-size:13px}.objective p{font-size:11px}.hud-bottom{bottom:56px;left:12px;right:12px;flex-wrap:wrap;gap:8px}.partner-card{width:190px;padding:10px;height:76px}.partner-badge{font-size:25px}.partner-info b{font-size:12px}.partner-info small{font-size:9px}.partner-card button{display:none}.move-bar{position:absolute;bottom:87px;right:0;gap:5px}.move{width:59px;height:65px;padding:7px}.move strong{font-size:9px;margin-top:10px}.move em{top:7px;right:7px;font-size:10px}.ball-button{margin-left:auto;width:68px;height:76px}.quick-nav{bottom:13px;left:15px;right:15px;justify-content:space-between;gap:5px}.quick-nav button{font-size:10px}.target-hud{right:15px;top:190px;width:150px;padding:10px}.target-hud>b{font-size:15px}.target-hud>small{font-size:10px}.context{bottom:260px;font-size:12px;white-space:nowrap;padding:10px}.boss-hud{top:104px;width:55%;left:auto;right:15px;transform:none}.boss-hud>span{font-size:8px}.boss-hud h2{font-size:20px}#toast-stack{top:110px;right:15px}.toast{font-size:12px;max-width:270px}#modal-backdrop{padding:10px}#panel{max-height:95vh;width:100%}.panel-header{padding:17px}.panel-header h1{font-size:27px}#panel-body{padding:16px}.dex-layout{grid-template-columns:1fr;gap:15px}.dex-grid{max-height:25vh;grid-template-columns:repeat(4,1fr)}.dex-card{padding:8px;min-height:64px}.dex-card strong{font-size:10px}.dex-detail .preview-canvas{height:170px}.panel-toolbar{gap:5px;flex-wrap:wrap}.panel-toolbar input{width:120px}.panel-toolbar select{max-width:130px}.party-grid{grid-template-columns:repeat(2,1fr);gap:8px}.party-tile{padding:12px}.party-tile h2{font-size:16px}.bag-grid{gap:8px}.item-card{padding:12px}.item-card b{font-size:13px}.map-layout{grid-template-columns:1fr}.map-node{padding:10px;min-height:80px}.map-node strong{font-size:12px}.map-guide{padding:0}.controls-grid{grid-template-columns:1fr}.settings-row input[type=range]{width:120px}.asset-row{gap:8px}.asset-row .preview-canvas{height:200px}.asset-nav{flex-wrap:wrap}.asset-nav select{max-width:160px}.asset-facts{font-size:10px}#cinematic h1{font-size:44px}#cinematic p{padding:0 20px;font-size:14px}.pause-actions{grid-template-columns:1fr}#save-note{bottom:228px;left:16px}#touch-controls{display:flex;position:absolute;bottom:210px;left:18px;gap:6px;align-items:flex-end;pointer-events:auto}.touch-pad{display:grid;grid-template-columns:repeat(3,36px);gap:4px}.touch-pad button{height:36px;border-radius:5px;background:#153237a0}.touch-pad button:first-child{grid-column:2}.touch-pad button:nth-child(2){grid-column:1}.touch-pad button:nth-child(3){grid-column:2}#touch-interact,#touch-dodge{font-size:10px;padding:9px 7px;background:#153237a0;border-radius:5px}.location-caption{display:none}}
@media(prefers-reduced-motion:reduce){button,.toast,.damage-number{animation:none;transition:none}}

.evolution-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px;text-align:center;background:radial-gradient(ellipse at 72% 55%,#c3ecb522,transparent 65%);border-radius:12px}.evolution-pair .preview-canvas{height:280px;max-width:100%}.evolution-pair h2{font:28px Georgia,serif;font-weight:400;margin:12px}.evolution-before{animation:evolution-memory 3.4s ease both}.evolution-after{animation:evolution-reveal 3.4s ease both}@keyframes evolution-memory{0%,30%{filter:brightness(1);opacity:1}45%{filter:brightness(5);opacity:1}100%{filter:brightness(1);opacity:.55}}@keyframes evolution-reveal{0%,35%{opacity:0;transform:scale(.8);filter:brightness(4)}70%{opacity:1;filter:brightness(2)}100%{opacity:1;transform:scale(1);filter:brightness(1)}}@media(max-width:700px){.evolution-pair{gap:8px}.evolution-pair .preview-canvas{height:185px}.evolution-pair h2{font-size:20px}}@media(prefers-reduced-motion:reduce){.evolution-before,.evolution-after{animation:none}}
/* Polish pass 02: Korean typography, navigation and combat rhythm. */
html,body,button,input,select{font-family:"Malgun Gothic","Apple SD Gothic Neo","Noto Sans KR","Segoe UI",sans-serif}h1,h2,h3,.title h1{font-family:inherit;word-break:keep-all;overflow-wrap:anywhere}button,p,small{word-break:keep-all;overflow-wrap:anywhere}button{touch-action:manipulation}.objective{width:290px;max-width:35vw}.objective p{font-size:11px;line-height:1.65}.objective small{display:block;margin-top:8px;font-size:10px;color:#d3deb7}.minimap-wrap{position:absolute;right:30px;top:125px;width:170px;border:1px solid #93b7a94a;border-radius:15px;background:#173339dd;overflow:hidden;box-shadow:0 10px 35px #10262944;pointer-events:auto}#minimap{display:block;width:170px;height:170px}#minimap-open{display:block;border:0;border-radius:0;width:100%;font-size:10px;padding:8px;background:#183c42}.compass{position:absolute;top:98px;left:50%;transform:translateX(-50%);max-width:40%;padding:8px 16px;background:#173339d9;border:1px solid #bac6a32b;border-radius:30px;font-size:11px;color:#f2e6b9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compass span{font-size:18px;margin-right:7px}.tutorial-hint{position:absolute;left:50%;bottom:185px;transform:translateX(-50%);width:min(580px,75vw);padding:12px 18px;text-align:center;border:1px solid #d7dda65c;background:#17353eed;box-shadow:0 8px 25px #0b242850;border-radius:12px;font-size:12px;line-height:1.6;color:#f3edc6;pointer-events:none}.atlas-top{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(220px,.8fr);gap:25px;margin-bottom:25px}.atlas-local canvas{width:100%;height:auto;display:block;border-radius:12px;border:1px solid #738d8444}.atlas-local small{display:block;font-size:10px;line-height:1.8;margin-top:8px;color:#afc1b8}.atlas-objective h2{font-size:24px;line-height:1.4}.atlas-objective p{font-size:12px;line-height:1.7;color:#b9c9c3}.landmark-list{display:grid;gap:6px}.landmark-list button{text-align:left;padding:10px;font-size:11px}.capability-list{display:flex;flex-wrap:wrap;gap:5px}.capability-list span{font-size:10px;border:1px solid #71858044;border-radius:30px;padding:5px 8px;opacity:.45}.capability-list .learned{opacity:1;color:#cae5a7;background:#6e8f4330}.atlas-regions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.atlas-region{display:flex;flex-direction:column;min-width:0;padding:18px;border:1px solid #73948840;border-radius:12px;background:#213e432f}.atlas-region h3{font-size:16px;margin:10px 0}.atlas-region p{font-size:11px;line-height:1.8;color:#adc3ba;flex:1}.atlas-region small{font-size:10px;color:#a4bba8}.atlas-region button{font-size:11px;margin-top:13px;line-height:1.6}.atlas-region.current{border-color:#b9d7a1;background:#657b3625}.atlas-region.locked{border-style:dashed}.atlas-region.habitat{box-shadow:inset 0 0 0 2px #e3c477}.damage-number{font-family:inherit;font-size:21px;white-space:nowrap;text-shadow:0 3px 0 #183037,0 0 9px #162826;animation:impact-number 1.15s ease-out forwards}.damage-number.heavy,.damage-number.signature{font-size:28px;font-weight:900}.damage-number.critical{color:#ffdb87;font-size:30px}.damage-number.effective{color:#e3eda6}.move-ready{animation:ready-pulse .45s ease-out}.route-unlocked{animation:ready-pulse .55s ease-out 3}#vignette.impact-emphasis{box-shadow:inset 0 0 95px var(--impact-color);opacity:.34;transition:none}.move strong{font-size:12px;line-height:1.4}.settings-row label{font-size:13px}.field-label{font-family:inherit}.preview-canvas{max-width:100%}.notice{line-height:1.8}@keyframes ready-pulse{0%{box-shadow:inset 0 0 20px #dfeab999,0 0 15px #dfeab955}100%{box-shadow:none}}@keyframes impact-number{0%{opacity:0;transform:translate(-50%,5px) scale(.65)}12%{opacity:1;transform:translate(-50%,-8px) scale(1.2)}30%{transform:translate(-50%,-15px) scale(1)}80%{opacity:1}100%{opacity:0;transform:translate(-50%,-55px) scale(.9)}}
@media(max-width:760px){.atlas-top{grid-template-columns:1fr}.atlas-regions{grid-template-columns:repeat(2,minmax(0,1fr))}.minimap-wrap{top:116px;right:14px;width:112px}#minimap{width:112px;height:112px}#minimap-open{font-size:9px;padding:6px}.compass{top:83px;max-width:80%;font-size:10px}.objective{top:124px;left:14px;max-width:calc(100vw - 154px);width:250px;padding:12px}.objective p{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:10px}.objective b{font-size:14px}.objective .eyebrow{font-size:9px}.objective small{font-size:9px;margin-top:5px}.tutorial-hint{bottom:205px;font-size:11px;width:85vw;padding:10px}.move strong{font-size:10px}.move{min-width:0}.hud-bottom{gap:6px}.target-hud{top:41%}.region-card h2{font-size:20px}.atlas-region{padding:12px}.atlas-region h3{font-size:14px}.settings-row{gap:10px}#touch-controls{bottom:140px}#panel{width:calc(100vw - 20px)}.panel-header h1{font-size:25px}}
@media(prefers-reduced-motion:reduce){.impact-emphasis{box-shadow:none!important}.damage-number,.move-ready,.route-unlocked{animation-duration:.01ms!important}.compass span{transition:none}}
.target-hud{top:330px;right:30px}.boss-hud{top:140px}@media(max-width:760px){.target-hud{top:266px;right:14px;width:205px}.boss-hud{top:250px;max-width:65vw}}
#walk-goal{margin-top:10px;padding:7px 10px;font-size:10px;pointer-events:auto;border-color:#afbd8844;background:#adc77320}.objective{pointer-events:auto}
@media(max-width:700px){
 .objective{width:calc(100vw - 154px);max-width:calc(100vw - 154px);padding:10px}
 .objective p,.objective small:last-of-type{display:none}
 .objective b{font-size:13px;margin:7px 0;line-height:1.5}
 .move-bar{left:0;right:0;bottom:87px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
 .move{width:100%;height:76px;padding:8px;min-width:0}
 .move strong{font-size:10px;line-height:1.4;overflow-wrap:anywhere;margin-top:12px}
 #touch-controls{bottom:230px;left:18px}
 .tutorial-hint{bottom:330px;font-size:10px;padding:8px;max-width:340px}
 .target-hud{top:270px;width:185px}
 .context{bottom:320px;max-width:90vw;white-space:normal;text-align:center}
 .boss-hud{top:270px;width:68%;max-width:68vw}
 .atlas-regions{grid-template-columns:1fr}
}
/* Keep field prompts beside target details and reserve one unbroken ball count. */
@media(max-width:700px){
 .context{top:270px;bottom:auto;left:14px;transform:none;width:calc(100vw - 225px);max-width:150px;padding:8px;font-size:10px}
 .context kbd{display:inline-block;padding:2px 4px;font-size:11px}
 .ball-button{display:grid;place-content:center;justify-items:center;gap:2px;padding:4px}
 .ball-button b{margin:0;white-space:nowrap;line-height:18px}
 .ball-button small{margin:0;white-space:nowrap;line-height:12px}
 .ball-button .ball-icon{font-size:27px;line-height:28px}
 .boss-hud{left:auto;right:14px;transform:none;width:185px;max-width:calc(100vw - 175px)}
 .boss-hud:not(.hidden)~.target-hud{display:none}
}

/* Survival status stays clear of the map and route guidance. */
.survival-status{position:absolute;top:100px;left:32px;width:235px;padding:10px 12px;border:1px solid #a2c6a067;border-radius:10px;background:#16363cde;box-shadow:0 7px 22px #10262855;backdrop-filter:blur(10px)}
.survival-row{display:grid;grid-template-columns:39px 1fr 29px;align-items:center;gap:8px;font-size:11px;line-height:19px;color:#e6f1e8}.survival-row b{text-align:right;font-size:10px;font-variant-numeric:tabular-nums}.survival-track{height:6px;border-radius:8px;overflow:hidden;background:#d3e6d13b}.survival-track i{display:block;width:100%;height:100%;background:#e8cb86;transition:width .2s,background .2s}#thirst-fill{background:#80d0e7}.survival-status.critical{border-color:#e99878;box-shadow:0 0 20px #b753423e}.objective{top:189px}
@media(max-width:760px){.survival-status{top:84px;left:14px;width:158px;padding:7px 9px}.survival-row{grid-template-columns:27px 1fr 21px;gap:5px;font-size:9px;line-height:16px}.survival-row b{font-size:9px}.objective{top:158px}}

/* On touch screens, keep direction guidance between needs and the objective. */
@media(max-width:760px){.compass{top:135px;left:14px;transform:none;width:calc(100vw - 154px);max-width:calc(100vw - 154px);padding:4px 8px;font-size:9px}.compass span{font-size:13px;margin-right:4px}.objective{top:167px}}

/* Player-selected move slots and learning decisions. */
.move-slot-grid,.move-library{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0 24px}
.move-slot,.move-option,.new-move{display:flex;flex-direction:column;align-items:flex-start;gap:8px;min-width:0;padding:18px;border:1px solid #587264;border-radius:12px;background:#203b32;color:#eff5e6;text-align:left}
.move-option{width:100%;cursor:pointer;white-space:normal}
.move-option:hover:not(:disabled),.move-option:focus-visible{border-color:#d9ed9c;background:#2a493c;outline:2px solid #d9ed9c;outline-offset:2px}
.move-option:disabled{opacity:.55;cursor:default}
.move-option strong,.move-slot strong,.new-move strong{font-size:19px;line-height:1.35;overflow-wrap:anywhere}
.move-option small,.move-slot small,.new-move small{font-size:13px;line-height:1.65;color:#d0dfce;overflow-wrap:anywhere}
.move-option b{margin-top:auto;padding-top:8px;color:#e0efac;font-size:14px}
.move-stats{font-size:12px;line-height:1.5;color:#c1d7c8}
.new-move{border:2px solid #d4e99c;background:#294c3a}
.move-choice-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
.move-choice-actions button{min-height:44px}
@media(max-width:540px){.move-slot-grid,.move-library{grid-template-columns:1fr}.move-slot,.move-option,.new-move{padding:14px}.move-choice-actions button{flex:1}}

/* Compact learning choices stay separate from the full move manager. */
#panel.move-choice-panel{width:min(600px,calc(100vw - 20px));max-height:calc(100dvh - 32px)}
.move-choice-panel .panel-header{padding:14px 20px;gap:12px}
.move-choice-panel .panel-header h1{font-family:inherit;font-size:22px;font-weight:700;line-height:1.3;margin:4px 0 0}
.move-choice-panel .panel-header .eyebrow{font-size:9px;letter-spacing:1px}
.move-choice-panel .panel-header>button{flex-shrink:0}
#panel.move-choice-panel #panel-body{padding:16px 20px;font-size:13px;line-height:1.5}
.move-choice-panel .new-move,.move-choice-panel .move-option{gap:5px;padding:12px;border-radius:8px}
.move-choice-panel .move-choice-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-width:0}
.move-choice-panel .move-choice-meta .eyebrow,.move-choice-panel .move-option>.eyebrow{font-size:9px;letter-spacing:.5px;line-height:1.4}
.move-choice-panel .tag{font-size:10px;line-height:1.3;padding:2px 6px;margin:0;letter-spacing:0;white-space:nowrap}
.move-choice-panel .new-move strong{font-size:20px}
.move-choice-panel .move-option strong{font-size:16px;line-height:1.25}
.move-choice-panel .move-stats{font-size:12px;line-height:1.4;color:#d9e8dd}
.move-choice-panel .move-choice-description{width:100%;font-size:12px;color:#d9e8dd}
.move-choice-panel .move-choice-description summary{width:fit-content;cursor:pointer;padding:2px 0;color:#e0efac}
.move-choice-panel .move-choice-description summary:focus-visible{outline:2px solid #d9ed9c;outline-offset:3px;border-radius:2px}
.move-choice-panel .move-choice-description p{margin:5px 0 0;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.move-choice-panel .notice{margin:10px 0;padding:0;border:0;background:none;font-size:12px;line-height:1.5;color:#c7dbd0}
.move-choice-panel .move-slot-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0 12px}
.move-choice-panel .move-option b{padding-top:3px;font-size:12px;line-height:1.4}
.move-choice-panel .move-choice-actions{gap:8px;margin:0;flex-wrap:nowrap}
.move-choice-panel .move-choice-actions button{flex:1;min-width:0;min-height:42px;padding:8px 12px;border:1px solid #638576;border-radius:7px;background:#1c3933;font-size:13px;line-height:1.3;white-space:normal}
.move-choice-panel .move-choice-actions button:hover,.move-choice-panel .move-choice-actions button:focus-visible{background:#315449;border-color:#c9e5ab}
.move-choice-panel .section-caption{display:block;margin:8px 0 0;font-size:11px;line-height:1.5}
@media(max-width:540px){
 #panel.move-choice-panel{max-height:calc(100dvh - 20px)}
 .move-choice-panel .panel-header{padding:10px 12px}
 .move-choice-panel .panel-header h1{font-size:19px}
 #panel.move-choice-panel #panel-body{padding:12px}
 .move-choice-panel .new-move,.move-choice-panel .move-option{padding:10px;gap:4px}
 .move-choice-panel .new-move strong{font-size:18px}
 .move-choice-panel .move-option strong{font-size:15px}
 .move-choice-panel .move-stats{font-size:11px}
 .move-choice-panel .move-choice-meta{gap:4px}
 .move-choice-panel .move-choice-actions button{padding:8px;font-size:12px}
}

/* A readable, north-up map with consistent pixel-sized symbols. */
.minimap-wrap{width:222px;border:1px solid #9ac7bd;border-radius:12px;background:#102a31f5;box-shadow:0 5px 24px #061d29a8}
.minimap-heading{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:5px 8px;border-bottom:1px solid #7ca99d55;background:#16353c}
.minimap-heading strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#f2f6de}
.minimap-controls{display:flex;gap:4px}
.minimap-controls button{width:32px;height:32px;padding:0;border:1px solid #83b3a6;border-radius:5px;background:#234a4f;color:#fff;font-size:20px;line-height:1}
#minimap{width:220px;height:220px;image-rendering:auto}
.minimap-legend{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;padding:7px 10px;border-top:1px solid #7ca99d44;font-size:11px;line-height:1.2;color:#edf5df}
.minimap-legend span{display:flex;align-items:center;gap:6px;min-width:0}
.minimap-legend b{font-weight:500;white-space:nowrap}
.minimap-legend i{display:inline-block;flex:0 0 9px;width:9px;height:9px;font-style:normal}
.mini-you{border:2px solid #6fefff;border-radius:50%;background:#fff}
.mini-goal{background:#ffe17c;transform:rotate(45deg);border:1px solid #fff1bb}
.minimap-legend .mini-heal{color:#9cf2ae;font-size:17px;font-weight:800;line-height:8px;text-align:center}
.mini-water{background:#78dfff;border-radius:0 70% 70% 70%;transform:rotate(45deg)}
#minimap-open{font-size:12px;min-height:32px;padding:7px;background:#20434a;color:#f2f5db;border-top:1px solid #7ca99d44}
@media(max-width:760px){
 .minimap-wrap{width:150px;right:12px;top:116px}
 #minimap{width:148px;height:148px}
 .minimap-heading{padding:4px 6px;gap:3px}
 .minimap-heading strong{font-size:10px}
 .minimap-controls button{width:28px;height:30px;font-size:18px}
 .minimap-legend{padding:6px 7px;gap:5px;font-size:10px}
 #minimap-open{font-size:11px;min-height:32px;padding:6px}
 .objective{max-width:calc(100vw - 186px)}
 .compass{width:calc(100vw - 186px);max-width:calc(100vw - 186px)}
}

/* Keep combat information beside the expanded map. On narrow screens it
   temporarily occupies the objective card's space while a target is selected. */
.target-hud,.boss-hud{top:145px;right:268px;left:auto;transform:none;width:220px;max-width:none}
.boss-hud{padding:12px;border:1px solid #e6b5a66b;border-radius:8px;background:#243439f2}
@media(max-width:760px){
 .target-hud,.boss-hud{top:167px;left:14px;right:auto;width:calc(100vw - 186px);max-width:none;padding:8px}
 .target-hud>span{display:block;font-size:9px;line-height:12px;letter-spacing:0}
 .target-hud>b{font-size:13px;line-height:18px;margin:4px 0}
 .target-hud b small{font-size:10px}
 .target-hud .hp-track{margin-top:5px}
 .target-hud>small{font-size:9px;line-height:13px;margin-top:5px}
 .boss-hud>span{font-size:9px;line-height:12px;letter-spacing:0}
 .boss-hud h2{font-size:17px;line-height:22px;margin:4px 0}
 #hud:has(#target-hud:not(.hidden)) .objective,#hud:has(#boss-hud:not(.hidden)) .objective{visibility:hidden;pointer-events:none}
}

@media(min-width:761px) and (max-width:1000px){
 .target-hud,.boss-hud{top:189px;left:32px;right:auto;width:235px}
 #hud:has(#target-hud:not(.hidden)) .objective,#hud:has(#boss-hud:not(.hidden)) .objective{visibility:hidden;pointer-events:none}
}

/* Field hints yield to nearby interactions and stay out of the map column. */
.tutorial-hint{max-width:calc(100vw - 580px)}
#hud:has(#context:not(.hidden)) .tutorial-hint{display:none}
@media(max-width:760px){
 .tutorial-hint{top:270px;bottom:auto;left:14px;transform:none;width:calc(100vw - 186px);max-width:none;max-height:54px;padding:6px;font-size:9px;line-height:1.4;overflow:auto;pointer-events:auto}
}

/* The current region is a compact caption in the existing map footer. */
.region-card{display:flex;flex-direction:column;gap:6px}
.minimap-footer{display:flex;align-items:center;gap:6px;height:32px;padding:0 8px;border-top:1px solid #7ca99d44;background:#20434a}
.minimap-footer #region-name{flex:1;min-width:0;margin:0;font-size:11px;font-weight:500;line-height:16px;color:#d9e9df;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.minimap-footer #minimap-open{flex:0 0 32px;width:32px;min-height:30px;padding:0;border:0;background:transparent;font-size:11px;color:#f2f5db}
@media(max-width:760px){.minimap-footer{padding:0 7px;gap:4px}.minimap-footer #region-name{font-size:10px}}

/* Compact menus keep the field visible and scroll their contents below the header. */
#panel:not(.move-choice-panel){width:min(var(--panel-width,720px),calc(100vw - 40px));max-height:min(660px,84dvh);border-radius:11px}
#panel[data-panel="pause"]{--panel-width:460px}
#panel[data-panel="settings"],#panel[data-panel="new-game"],#panel[data-panel="complete"],#panel[data-panel="capture-result"]{--panel-width:520px}
#panel[data-panel="evolution-result"]{--panel-width:580px}
#panel:not(.move-choice-panel) .panel-header{flex-shrink:0;padding:13px 18px;gap:12px}
#panel:not(.move-choice-panel) .panel-header h1{font-family:inherit;font-size:22px;font-weight:650;line-height:1.3;margin:4px 0 0}
#panel:not(.move-choice-panel) .panel-header .eyebrow{font-size:9px;letter-spacing:1px}
#panel:not(.move-choice-panel) .panel-header>button{flex-shrink:0;width:38px;height:38px;font-size:26px}
#panel:not(.move-choice-panel) #panel-body{min-height:0;padding:15px 18px;font-size:13px;line-height:1.6;overscroll-behavior:contain}
#panel:not(.move-choice-panel) .panel-toolbar{gap:8px;flex-wrap:wrap;margin-bottom:12px}
#panel:not(.move-choice-panel) .panel-toolbar input,#panel:not(.move-choice-panel) .panel-toolbar select{min-height:34px;padding:7px 9px;font-size:12px;min-width:0}
#panel:not(.move-choice-panel) .panel-toolbar input{width:140px}
#panel:not(.move-choice-panel) .panel-toolbar>span{font-size:11px}
#panel:not(.move-choice-panel) .dex-layout{grid-template-columns:minmax(0,1fr) 230px;gap:16px}
#panel:not(.move-choice-panel) .dex-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;max-height:min(340px,45dvh)}
#panel:not(.move-choice-panel) .dex-card{min-height:66px;padding:8px}
#panel:not(.move-choice-panel) .dex-card strong{font-size:11px;margin-top:5px}
#panel:not(.move-choice-panel) .preview-canvas{height:160px}
#panel:not(.move-choice-panel) .dex-detail h2{font-size:20px;margin:9px 0 4px}
#panel:not(.move-choice-panel) .dex-detail h3{margin:13px 0 5px;letter-spacing:.5px}
#panel:not(.move-choice-panel) .dex-detail p{font-size:12px;line-height:1.6}
#panel:not(.move-choice-panel) .party-grid,#panel:not(.move-choice-panel) .bag-grid{gap:9px}
#panel:not(.move-choice-panel) .party-tile,#panel:not(.move-choice-panel) .item-card{padding:12px}
#panel:not(.move-choice-panel) .party-tile h2{font-size:16px;margin:0 0 7px}
#panel:not(.move-choice-panel) .item-card b{font-size:13px}
#panel:not(.move-choice-panel) .party-tile button,#panel:not(.move-choice-panel) .item-card button{min-height:34px;padding:6px 8px;font-size:11px;margin-top:7px}
#panel:not(.move-choice-panel) .atlas-top{grid-template-columns:minmax(0,1.35fr) minmax(200px,1fr);gap:16px;margin-bottom:16px}
#panel:not(.move-choice-panel) .atlas-objective h2{font-size:20px}
#panel:not(.move-choice-panel) .atlas-regions{gap:9px}
#panel:not(.move-choice-panel) .atlas-region{padding:12px}
#panel:not(.move-choice-panel) .settings-row{padding:10px 0;gap:10px}
#panel:not(.move-choice-panel) .settings-row span,#panel:not(.move-choice-panel) .settings-row label{font-size:12px}
#panel:not(.move-choice-panel) .settings-row input[type=range]{width:140px}
#panel:not(.move-choice-panel) .settings-row select{padding:6px;font-size:12px}
#panel:not(.move-choice-panel) .controls-grid{gap:8px;margin:14px 0;font-size:12px}
#panel:not(.move-choice-panel) .pause-actions{gap:8px;margin:12px auto}
#panel:not(.move-choice-panel) .pause-actions button{min-height:38px;padding:10px;font-size:12px}
#panel:not(.move-choice-panel) .capture-card{padding:8px}
#panel:not(.move-choice-panel) .capture-card h2{font-family:inherit;font-size:28px;margin:6px}
#panel:not(.move-choice-panel) .capture-card .primary{min-height:42px;padding:10px 16px;margin:14px auto 0;font-size:13px;gap:20px}
#panel:not(.move-choice-panel) .evolution-pair{gap:12px}
#panel:not(.move-choice-panel) .evolution-pair h2{font-size:20px;margin:8px}
#panel:not(.move-choice-panel) .move-slot-grid,#panel:not(.move-choice-panel) .move-library{gap:8px;margin:10px 0 16px}
#panel:not(.move-choice-panel) .move-slot,#panel:not(.move-choice-panel) .move-option{padding:12px;gap:5px}
#panel:not(.move-choice-panel) .move-slot strong,#panel:not(.move-choice-panel) .move-option strong{font-size:16px}
#panel:not(.move-choice-panel) .move-slot small,#panel:not(.move-choice-panel) .move-option small{font-size:12px;line-height:1.5}
@media(max-width:760px){
 #panel:not(.move-choice-panel){width:min(var(--panel-width,720px),calc(100vw - 28px));max-height:86dvh}
 #panel:not(.move-choice-panel) .panel-header{padding:11px 13px}
 #panel:not(.move-choice-panel) .panel-header h1{font-size:20px}
 #panel:not(.move-choice-panel) #panel-body{padding:12px}
 #panel:not(.move-choice-panel) .dex-layout,#panel:not(.move-choice-panel) .atlas-top{grid-template-columns:1fr;gap:12px}
 #panel:not(.move-choice-panel) .panel-toolbar>span{flex-basis:100%;font-size:10px}
 #panel:not(.move-choice-panel) .dex-grid{max-height:min(176px,25dvh)}
 #panel:not(.move-choice-panel) .dex-card{min-height:60px;padding:6px}
 #panel:not(.move-choice-panel) .dex-card strong{font-size:10px}
 #panel:not(.move-choice-panel) .preview-canvas{height:130px}
 #panel:not(.move-choice-panel) .evolution-pair .preview-canvas{height:135px}
 #panel:not(.move-choice-panel) .settings-row input[type=range]{width:110px}
 #panel:not(.move-choice-panel) .party-tile,#panel:not(.move-choice-panel) .item-card{padding:10px}
}

/* Explicit checkpoint: separate from resume autosave. */
.minimap-save-key{font-size:10px;color:#ffe3a1;padding:2px 8px}.checkpoint-summary{color:#ffe3a1!important}

/* Small interaction card and UID camp comparison. */
.context{max-width:min(390px,calc(100vw - 28px));padding:9px 12px;gap:10px;pointer-events:none;display:flex;align-items:center;height:auto}.context div{min-width:0}.context b,.context small{display:block}.context b{font-size:13px;color:#ffe3a1}.context small{font-size:10px;line-height:1.5;overflow-wrap:anywhere}.context.unavailable{border-color:#ca9a79}.camp-slots,.camp-friends{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.camp-slots button,.camp-friends button{padding:9px;text-align:left;min-width:0}.camp-slots span,.camp-slots b,.camp-slots small,.camp-friends b,.camp-friends small,.camp-comparison b,.camp-comparison small{display:block}.camp-slots span,.camp-slots small,.camp-friends small,.camp-comparison small{font-size:10px;line-height:1.5}.camp-slots b,.camp-friends b,.camp-comparison b{font-size:12px}.camp-slots .selected,.camp-friends .selected{border-color:#e7db97;background:#365448}.camp-filter{display:flex;gap:7px;margin:10px 0}.camp-filter input{width:60%;min-width:0}.camp-filter select{min-width:0;width:40%}.camp-friends{max-height:190px;overflow:auto;padding:2px}.camp-comparison{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:12px;margin-top:12px;border:1px solid #d1c686;border-radius:10px}#camp-manager{border-top:1px solid #678173;margin-top:18px;padding-top:4px}
@media(max-width:600px){.camp-slots,.camp-friends{grid-template-columns:repeat(2,minmax(0,1fr))}.context{top:auto!important;bottom:315px!important;width:calc(100vw - 190px);max-width:200px;display:block;text-align:left}.context b{font-size:11px}.context small{font-size:9px}body:has(#context:not(.hidden)) #objective{visibility:hidden}#touch-interact{max-width:118px;font-size:11px;white-space:normal}.camp-comparison{padding:8px;gap:6px}}

@media(max-width:600px) and (max-height:700px){.minimap-wrap #minimap{height:116px!important}.minimap-wrap .minimap-legend{grid-template-columns:1fr 1fr;font-size:9px;gap:3px;padding:5px 7px}.minimap-wrap .minimap-footer{min-height:26px;padding-top:3px;padding-bottom:3px}}

/* Portable provisions use the existing compact needs area and bag. */
#portable-supplies{display:block;margin-top:5px;padding:3px 0;width:100%;min-height:22px;background:transparent;border:0;border-top:1px solid #c4e5dc35;border-radius:0;color:#e0edc5;font-size:11px;line-height:1.3;text-align:left}
.supply-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:18px 0}.supply-water p{line-height:1.6}.supply-map-list{font-size:12px}.supply-map-list small{display:block;opacity:.8;margin-top:4px}
#panel[data-panel="water"]{max-width:480px}#water-state{padding:12px;background:#77c4de18;border-radius:8px;font-size:16px;color:#b4eff9}
@media(max-width:600px){#portable-supplies{font-size:10px;margin-top:3px}#compass{top:190px}.supply-actions{gap:8px}.supply-actions button{font-size:12px}}

/* Touch layout also applies to landscape phones and tablets, with safe-area space. */
@media(pointer:coarse){
 html,body{width:100%;height:100%;overflow:hidden;overscroll-behavior:none}
 body{position:fixed;inset:0;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
 input,textarea{user-select:text;-webkit-user-select:text}
 #hud{--edge-left:max(12px,env(safe-area-inset-left));--edge-right:max(12px,env(safe-area-inset-right));--edge-bottom:max(8px,env(safe-area-inset-bottom))}
 button:hover{transform:none}#touch-controls button{touch-action:none;min-height:44px;min-width:44px;font-size:12px;border-radius:8px;background:#153237eb}
 #touch-controls{display:block;position:absolute;left:var(--edge-left);right:var(--edge-right);bottom:calc(var(--edge-bottom) + 196px);height:92px;pointer-events:none}
 #touch-controls button{pointer-events:auto}.touch-pad{position:absolute;left:0;bottom:0;display:grid;grid-template-columns:repeat(3,44px);gap:4px}.touch-pad button{height:44px}
 .touch-actions{position:absolute;right:0;bottom:0;display:grid;grid-template-columns:repeat(2,64px);gap:4px}.touch-actions button{padding:5px}
 #touch-interact{position:absolute;left:0;bottom:104px;width:174px;max-width:174px;min-height:44px;padding:6px 8px;font-size:12px}
 .hud-top{top:max(10px,env(safe-area-inset-top));left:var(--edge-left);right:var(--edge-right);height:52px;gap:8px}
 .region-card{min-width:0;flex:1;gap:4px}.region-card>.eyebrow{font-size:9px;letter-spacing:1px}.region-card>span:last-child{font-size:10px}
 .expedition-status{gap:5px}.expedition-status>button{height:44px;min-width:44px;padding:5px}.expedition-status>button:first-child{min-width:106px}.expedition-status button span{font-size:9px}.expedition-status b{font-size:18px}
 #survival-status{top:72px;left:var(--edge-left);width:158px;padding:7px 9px}.survival-row{grid-template-columns:27px 1fr 21px;gap:5px;font-size:10px;line-height:16px}.survival-row b{font-size:10px}
 #portable-supplies{min-height:28px;font-size:11px;padding:4px 0;margin-top:3px}
 #compass{top:166px;left:var(--edge-left);transform:none;width:calc(100% - 180px);max-width:260px;padding:4px 8px;font-size:10px;height:28px}
 #objective{top:204px;left:var(--edge-left);width:calc(100% - 180px);max-width:260px;padding:8px;max-height:128px;overflow:auto}
 #objective .eyebrow{font-size:9px}#objective b{font-size:12px}#objective p,#objective small:last-of-type{display:none}#walk-goal{min-height:36px;padding:5px;margin-top:5px}
 .minimap-wrap{top:72px;right:var(--edge-right);width:142px;max-height:none;border-radius:10px}.minimap-wrap #minimap{width:140px!important;height:112px!important}.minimap-wrap .minimap-header{height:44px;padding:0 4px}.minimap-header>span{font-size:9px}.minimap-header button{width:36px;min-width:36px;min-height:40px}.minimap-wrap .minimap-legend{display:none}.minimap-save-key{display:none}.minimap-footer{height:32px}.minimap-footer #region-name{font-size:10px}
 .hud-bottom{position:absolute;left:var(--edge-left);right:var(--edge-right);bottom:calc(var(--edge-bottom) + 52px);height:60px;display:flex;gap:8px}
 .partner-card{width:190px;height:60px;padding:8px;gap:7px;min-width:0}.partner-card .partner-badge{font-size:26px}.partner-card .partner-info{min-width:0}.partner-card .partner-info b{font-size:12px}.partner-card button{min-width:36px;min-height:44px}
 #moves{position:absolute;left:0;right:0;bottom:72px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin:0}.move{width:100%;min-width:0;height:60px;padding:6px}.move strong{font-size:10px;margin-top:6px}.move small{font-size:9px}.move .move-key{display:none}
 #throw-button{margin-left:auto;width:64px;height:60px;min-width:64px;padding:3px;display:grid;place-content:center;justify-items:center;gap:0}.ball-button .ball-icon{font-size:24px;line-height:25px}.ball-button b{font-size:12px;line-height:15px}.ball-button small{font-size:9px;line-height:12px}
 .quick-nav{left:var(--edge-left);right:var(--edge-right);bottom:var(--edge-bottom);height:44px;display:flex;justify-content:space-between;gap:4px}.quick-nav button{min-height:44px;min-width:52px;font-size:11px}.quick-nav>span,.quick-nav kbd{display:none}
 #context{left:var(--edge-left);top:auto!important;bottom:calc(var(--edge-bottom) + 352px)!important;transform:none;width:174px;max-width:calc(100vw - 180px);max-height:84px;padding:8px;display:block;overflow:hidden;text-align:left}#context kbd{display:none}#context b{font-size:12px}#context small{font-size:10px;line-height:1.4}
 #hud:has(#context:not(.hidden)) #objective{visibility:hidden}.tutorial-hint{display:none}
 #target-hud,#boss-hud{top:204px;left:var(--edge-left);right:auto;transform:none;width:174px;max-width:calc(100vw - 180px);padding:8px;max-height:128px}.target-hud>b{font-size:13px;margin:3px 0}.target-hud>small{font-size:10px;margin-top:4px}.boss-hud h2{font-size:16px}
 #hud:not(.in-combat):has(#context:not(.hidden)) #target-hud{visibility:hidden}
 #modal-backdrop{padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
 #panel:not(.move-choice-panel),#panel.move-choice-panel{max-height:calc(100dvh - max(16px,env(safe-area-inset-top)) - env(safe-area-inset-bottom));width:min(var(--panel-width,720px),calc(100vw - 24px))}
 #panel .panel-header>button{min-width:44px;min-height:44px}#panel button{min-height:44px}#panel input,#panel select{font-size:16px!important;min-height:44px}#panel-body{touch-action:pan-y}
 #save-note{left:var(--edge-left);bottom:calc(var(--edge-bottom) + 320px);max-width:170px;font-size:10px}
 #toast-stack{right:var(--edge-right);top:72px;max-width:220px}.toast{max-width:220px;padding:9px;font-size:12px}.toast small{font-size:10px}
}
@media(pointer:coarse) and (orientation:landscape) and (max-height:600px){
 .hud-top{height:44px;top:max(8px,env(safe-area-inset-top))}.region-card{flex:0 1 150px}.expedition-status{margin-left:auto}.expedition-status>button:first-child{min-width:98px}
 #survival-status{top:64px;width:150px}#compass{top:158px;width:150px;max-width:150px;font-size:9px;padding:4px}
 .minimap-wrap{top:62px;width:142px}.minimap-wrap #minimap{height:96px!important}.minimap-footer{height:28px}.minimap-header>span{display:none}
 #objective{top:62px;left:180px;width:calc(100% - 350px);max-width:400px;max-height:90px}#objective .eyebrow{display:none}#objective b{margin:2px 0}#walk-goal{min-height:32px;float:right;margin:0}
 #touch-controls{bottom:var(--edge-bottom)}#touch-interact{left:168px;bottom:76px;width:200px;max-width:calc(100vw - 350px)}
 .hud-bottom{left:calc(var(--edge-left) + 164px);right:calc(var(--edge-right) + 148px);bottom:var(--edge-bottom);height:64px}
 #moves{position:static;flex:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));min-width:0}.move{height:64px}#throw-button{height:64px;min-width:52px;width:52px}
 .partner-card{position:fixed;left:var(--edge-left);top:194px;width:150px;height:64px}.partner-badge{display:none}.partner-card .partner-info{flex:1}
 .quick-nav{top:max(8px,env(safe-area-inset-top));bottom:auto;left:180px;right:250px;justify-content:flex-start;gap:4px}.quick-nav button{min-width:44px;padding:4px}
 #context{left:180px;top:166px!important;bottom:auto!important;width:calc(100vw - 350px);max-width:400px;max-height:66px}
 #target-hud,#boss-hud{top:62px;left:180px;max-width:calc(100vw - 350px);width:300px;max-height:90px}
 #toast-stack{top:62px;right:174px}#save-note{left:180px;bottom:132px}
 #panel .preview-canvas{height:110px!important}#panel .panel-header{padding:7px 12px!important}#panel .panel-header .eyebrow{display:none}#panel:not(.move-choice-panel) .panel-header h1{font-size:18px}#panel #panel-body{padding:10px 12px}
 .title{padding:12px 5%;overflow:auto}.title-content{position:relative;top:auto;left:auto;max-width:620px;margin:12px auto}.title-content h1{font-size:32px;margin:8px 0;letter-spacing:-1px}.title-content p{font-size:12px;line-height:1.5;margin:8px 0}.title-dex{display:none}.title-bottom{position:relative;left:auto;right:auto;bottom:auto;margin-top:8px}.title-actions button.primary{min-height:44px;padding:10px 16px}.title-top .edition{font-size:9px}
 .starter-head{margin-top:8px}.starter-head h1{font-size:23px;margin:5px}.starter-head p{display:none}#starter-cards{bottom:80px}.starter-card{padding:8px}.starter-card b{font-size:16px}.starter-card p{display:none}.starter-footer{bottom:12px}.starter-footer button.primary{min-height:44px;padding:10px 18px}
}

.touch-help{display:none}@media(pointer:coarse){.touch-help{display:block}#panel .controls-grid{display:none}}

@media(pointer:coarse){.expedition-status{width:204px;flex:0 0 204px;align-items:center}.expedition-status>button{flex:0 0 44px;width:44px;min-width:44px}.expedition-status>button:first-child{width:106px;min-width:106px;flex:0 0 106px;display:flex;flex-direction:column;justify-content:center;gap:0}.expedition-status b{margin:0}.expedition-status button span{letter-spacing:0}}

@media(pointer:coarse){.touch-pad button:first-child{grid-column:2}.touch-pad button:nth-child(2){grid-column:1}.touch-pad button:nth-child(3){grid-column:2}.touch-pad button:nth-child(4){grid-column:3}#journal-button b{font-size:18px;line-height:20px}#journal-button span{font-size:9px;line-height:12px;margin:0}}

/* Readable atlas: map owns the full panel width, names live in touchable rows. */
#panel .atlas-readable{display:grid;gap:16px;font-size:14px;line-height:1.6}
#panel .atlas-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
#panel .atlas-toolbar>b{font-size:16px;color:#f1f8ef}
#panel .atlas-toolbar>div{display:flex;gap:5px;flex-shrink:0}
#panel .atlas-toolbar button{min-width:44px;min-height:44px;padding:8px;font-size:15px}
#panel #atlas-canvas{width:100%;height:clamp(240px,44vh,340px);background:#10272e;touch-action:manipulation}
#panel .atlas-help{margin:9px 0 14px;font-size:12px;color:#d4e5df;line-height:1.6}
#panel .atlas-selection-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:8px 0;color:#e5f0e8}
#panel .atlas-selection-heading button{min-height:40px;font-size:13px}
#panel .atlas-point-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
#panel .atlas-point-list button{display:flex;align-items:center;gap:9px;min-height:46px;text-align:left;padding:9px 10px;font-size:13px;background:#25454b;border:1px solid #54756f;color:#f1f7ef;line-height:1.5}
#panel .atlas-point-list button>span{font-size:18px;min-width:22px;text-align:center;color:#ffe6a0}
#panel .atlas-point-list button[aria-pressed=true]{background:#395d52;border-color:#e3eab0;box-shadow:inset 3px 0 #e3eab0}
#panel .atlas-place-detail{margin-top:10px;padding:13px;border:1px solid #bdd497;background:#203e3d;border-radius:9px}
#panel .atlas-place-detail p{font-size:13px;margin:8px 0;color:#e0ece2}
#panel .atlas-place-detail small{font-size:12px;color:#c4d6cc}
#panel .atlas-place-detail button{min-height:44px;font-size:14px}
#panel .atlas-goal-summary{padding:14px;background:#263f42;border:1px solid #526a63;border-radius:10px}
#panel .atlas-goal-summary h2{font-size:18px;margin:7px 0}
#panel .atlas-goal-summary p{font-size:13px;color:#e0e9de;line-height:1.65}
#panel .atlas-guide{border:1px solid #536e67;border-radius:10px;padding:0 12px;background:#1c373c}
#panel .atlas-guide summary{cursor:pointer;font-size:14px;color:#eff4df;min-height:48px;display:list-item;align-content:center;padding:12px 0}
#panel .field-guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-bottom:12px}
#panel .field-guide{padding:12px;border:1px solid #678375;border-radius:8px;background:#27454a}
#panel .field-guide h3{font-size:15px;line-height:1.6;margin:0;color:#eef4e4}
#panel .field-guide h3 small{font-size:12px;color:#e5c692}
#panel .field-guide p,#panel .field-guide>small{display:block;font-size:13px;line-height:1.7;margin:8px 0;color:#dce8de}
#panel .field-guide.learned h3 small{color:#bfeaaf}
#panel .atlas-readable .atlas-regions{padding-bottom:12px}
@media(max-width:600px){#panel .atlas-point-list,#panel .field-guide-grid{grid-template-columns:1fr}#panel .atlas-toolbar>b{font-size:14px}#panel #atlas-canvas{height:280px}}
@media(max-height:480px){#panel #atlas-canvas{height:230px;min-height:230px}}

@media(pointer:coarse) and (min-height:481px){#context.field-capability{max-height:166px}#context.field-capability small{font-size:11px;line-height:1.45}}
@media(pointer:coarse) and (max-height:480px){#context.field-capability{max-height:98px}}

/* Single-partner camera preview and swipe controls. */
#starter .starter-head{margin:22px 16px 0;pointer-events:none}#starter .starter-head h1{font-size:28px;margin:10px 0}#starter .starter-head p{font-size:13px;margin:8px 0}
#starter-preview{pointer-events:auto;position:absolute;top:145px;bottom:238px;left:6%;right:6%;touch-action:none;user-select:none}
#starter-preview>button{position:absolute;top:calc(50% - 26px);width:52px;height:52px;border-radius:50%;background:#15343be8;border:1px solid #c6dec4;font-size:34px;z-index:2}#starter-prev{left:0}#starter-next{right:0}
#starter-swipe-hint{position:absolute;bottom:0;left:0;right:0;text-align:center;font-size:12px;color:#f3f5d7;text-shadow:0 2px 4px #10282d;pointer-events:none}
#starter #starter-cards{left:50%;right:auto;bottom:100px;width:min(620px,calc(100vw - 36px));transform:translateX(-50%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
#starter .starter-card{min-height:78px;padding:10px;text-align:center;transform:none}#starter .starter-card b{font-size:17px;margin:8px 0 0}#starter .starter-card small{font-size:11px}#starter .starter-card p{display:none}
#starter .starter-footer{left:6%;right:6%;bottom:25px;justify-content:center;gap:20px}#starter .starter-footer>span{display:block;font-size:13px;color:#ebf1d6}#starter .starter-footer .primary{min-height:48px;padding:12px 25px}
#touch-stick{position:fixed;width:100px;height:100px;transform:translate(-50%,-50%);border:2px solid #d9eed280;border-radius:50%;background:#14343855;pointer-events:none;z-index:12}#touch-stick i{position:absolute;left:50%;top:50%;width:38px;height:38px;transform:translate(-50%,-50%);border-radius:50%;background:#e2efc7c9;box-shadow:0 2px 8px #112f3960}
#swipe-move-hint{display:none;pointer-events:none}
@media(pointer:coarse){#touch-controls .touch-pad{display:none}#swipe-move-hint{display:block;position:absolute;left:var(--edge-left);bottom:calc(var(--edge-bottom) + 212px);width:174px;font-size:12px;line-height:1.6;color:#eaf3dc;text-shadow:0 2px 4px #10272e}#swipe-move-hint small{font-size:10px;color:#d7e8de}}
@media(max-width:600px){#starter .starter-head{margin-top:24px}#starter .starter-head h1{font-size:24px}#starter .starter-head p{display:block;font-size:12px}#starter-preview{top:155px;bottom:210px;left:5%;right:5%}#starter #starter-cards{bottom:105px;gap:6px}#starter .starter-card{padding:9px 3px;min-height:70px}#starter .starter-card b{font-size:14px}#starter .starter-footer{bottom:32px}#starter-preview>button{width:44px;height:44px;font-size:28px}}
@media(max-height:480px){#starter .starter-head{margin:8px 10px}#starter .starter-head h1{font-size:20px;margin:4px}#starter .starter-head .eyebrow,#starter .starter-head p{display:none}#starter-preview{top:48px;bottom:138px;left:15%;right:15%}#starter #starter-cards{bottom:65px;width:min(530px,calc(100vw - 36px))}#starter .starter-card{padding:5px;min-height:48px}#starter .starter-card b{font-size:14px;margin:2px}#starter .starter-card small{display:none}#starter .starter-footer{bottom:9px}#starter .starter-footer .primary{min-height:44px;padding:8px 18px}#starter-preview>button{top:calc(50% - 22px);width:44px;height:44px}#starter-swipe-hint{font-size:10px;bottom:-3px}}
@media(pointer:coarse) and (max-height:480px){#swipe-move-hint{bottom:calc(var(--edge-bottom) + 25px);left:var(--edge-left);width:158px}}

@media(pointer:coarse) and (min-height:481px){#touch-interact{left:auto;right:0;width:132px;max-width:132px}}

/* The field stays visible: details are opt-in; urgent state and real actions remain. */
#hud.hud-compact .hud-top{top:12px;left:12px;right:12px}
#hud.hud-compact .expedition-status{margin-left:auto;width:auto;flex:0 0 auto;align-items:flex-start;gap:6px;padding:0}
#hud.hud-compact #hud-details{width:auto;min-width:64px;flex:none}
#hud.hud-compact .expedition-status>button{min-height:40px;height:40px;padding:7px 12px;font-size:14px}
#hud.hud-compact:not(.hud-details-open) .region-card,#hud.hud-compact:not(.hud-details-open) #objective,#hud.hud-compact:not(.hud-details-open) #tutorial-hint,#hud.hud-compact:not(.hud-details-open) #swipe-move-hint,#hud.hud-compact:not(.hud-details-open) #journal-button,#hud.hud-compact:not(.hud-details-open) .expedition-status>[data-panel="map"]{display:none}
#hud.hud-compact .quick-nav>span{display:none}
#hud.hud-compact .survival-status{top:12px;left:12px;width:146px;padding:7px 9px}
#hud.hud-compact #portable-supplies{min-height:30px;margin-top:3px;font-size:11px}
#hud.hud-compact #compass{position:absolute;left:12px;top:102px;bottom:auto;transform:none;max-width:220px;min-height:34px;padding:7px 10px;text-align:left;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;pointer-events:auto;background:#123237dd}
#hud.hud-compact.in-combat #compass,#hud.hud-compact.in-combat #objective{display:none}
/* Navigation sets an inline tutorial display; urgent cards take precedence. */
#hud.hud-compact.in-combat #tutorial-hint,#hud.hud-compact:has(#touch-interact:not(.hidden)) #tutorial-hint,body:has(#toast-stack:not(:empty)) #hud.hud-compact #tutorial-hint{display:none!important}
#hud.hud-compact .minimap-wrap{top:62px;right:12px;width:150px}
#hud.hud-compact #minimap{width:148px;height:140px}
#minimap-toggle{min-height:36px;display:flex;align-items:center;justify-content:space-between;flex:1;min-width:0;padding:0 3px;border:0;background:transparent;color:#eaf3db}
#minimap-toggle span{font-size:18px}
#hud.hud-compact .minimap-heading{padding:3px 6px}
#hud.hud-compact .minimap-legend,#hud.hud-compact .minimap-save-key{display:none}
#hud.hud-compact .minimap-wrap.is-collapsed{width:122px}
#hud.hud-compact .is-collapsed #minimap,#hud.hud-compact .is-collapsed .minimap-controls,#hud.hud-compact .is-collapsed #minimap-open{display:none}
#hud.hud-compact .minimap-footer{min-height:22px;padding:2px 6px}
#hud.hud-compact .minimap-footer #region-name{font-size:10px;margin:0}
/* Compact HUD keeps whole names, levels and counts inside their cards. */
#hud.hud-compact .partner-card{width:190px;height:auto;min-height:60px;padding:7px;gap:4px;flex-shrink:0}
#hud.hud-compact .partner-badge{flex:0 0 20px;font-size:20px;line-height:20px;text-align:center}
#hud.hud-compact .partner-card>button{flex:0 0 20px;width:20px;min-width:20px;height:36px;padding:0}
#hud.hud-compact .partner-info>div:first-child{gap:4px;align-items:baseline}
#hud.hud-compact .partner-info b{font-size:13px;line-height:18px;white-space:nowrap}
#hud.hud-compact .partner-info span{font-size:10px;line-height:16px;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}
#hud.hud-compact .partner-info .hp-track{margin-top:6px}
#hud.hud-compact .partner-info small{font-size:10px;line-height:13px;margin-top:3px;white-space:nowrap}
#hud.hud-compact .partner-info .exp-track{margin-top:4px}
#hud.hud-compact .move{width:72px;height:60px;padding:7px}
#hud.hud-compact .move strong{font-size:11px;margin-top:9px}
#hud.hud-compact #throw-button{width:60px;height:60px;display:grid;grid-template-columns:20px minmax(0,1fr);grid-template-rows:20px 16px;align-content:center;align-items:center;justify-items:center;column-gap:2px;row-gap:2px;padding:4px}
#hud.hud-compact #throw-button .ball-icon{font-size:20px;line-height:20px}
#hud.hud-compact #ball-count{font-size:12px;line-height:16px;margin:0;white-space:nowrap;font-variant-numeric:tabular-nums}
#hud.hud-compact #throw-button small{grid-column:1 / -1;font-size:9px;line-height:14px;letter-spacing:0;margin:0;white-space:nowrap}
#hud.hud-compact #throw-button kbd{font-size:9px;padding:1px 3px;margin-right:2px}
#hud.hud-compact #objective{top:190px;left:12px;max-width:235px;max-height:min(320px,calc(100dvh - 340px));overflow:auto;scrollbar-width:thin;font-size:12px;background:#143239f2;border-radius:6px}
#hud.hud-compact #objective p,#hud.hud-compact #objective small{font-size:11px}
#hud.hud-details-open .region-card{position:absolute;left:165px;top:0;min-width:0}
#hud.hud-compact #context{bottom:148px;padding:7px 10px;font-size:12px;max-width:320px}
#hud.hud-compact:not(.hud-details-open) #context div>small:last-child:not(:first-of-type){display:none}
#hud.hud-compact .target-hud{top:145px;left:12px;right:auto;width:175px;padding:9px;background:#143239f2}
#hud.hud-compact .boss-hud{top:145px;left:12px;right:auto;transform:none;width:235px;background:#243439f2}
#hud.hud-compact .target-hud>b{font-size:15px;margin:5px 0}
#toast-stack{top:80px;right:auto;left:50%;transform:translateX(-50%);gap:5px;max-width:280px}
.toast{padding:9px 12px;font-size:12px;max-width:280px}
.toast small{font-size:11px;line-height:1.45}
.toast:not(.warn) small{display:none}
body:has(#hud.hud-details-open) .toast:not(.warn) small{display:block}
#cinematic{inset:auto;top:145px;left:50%;transform:translateX(-50%);width:min(360px,calc(100vw - 28px));padding:12px 16px;border:1px solid #bcd7b950;border-radius:10px;background:#122e35e8}
#cinematic span{font-size:10px;letter-spacing:1px}#cinematic h1{font-family:inherit;font-size:24px;margin:5px 0}#cinematic p{font-size:12px;line-height:1.5;margin:4px 0}
@media(pointer:coarse){
 #hud.hud-compact .region-card{display:none}
 #hud.hud-compact .expedition-status>button{min-width:44px;min-height:44px;height:44px;padding:7px 9px}
 #hud.hud-compact .expedition-status>#journal-button,#hud.hud-compact .expedition-status>[data-panel="map"]{display:none}
 #hud.hud-compact #compass{max-width:calc(100vw - 152px);top:99px;min-height:36px;font-size:11px}
 #hud.hud-compact .quick-nav{top:auto;bottom:var(--edge-bottom);left:var(--edge-left);right:var(--edge-right);gap:4px;justify-content:flex-start;background:none;border:0;min-height:44px;padding:0}
 #hud.hud-compact .quick-nav button{min-height:44px;min-width:48px;padding:8px;font-size:11px}
 #hud.hud-compact .hud-bottom{position:static}
 #hud.hud-compact .partner-card{position:absolute;top:auto;left:var(--edge-left);bottom:calc(var(--edge-bottom) + 49px);width:160px;min-height:46px;padding:7px 9px;gap:5px}
 #hud.hud-compact .partner-badge{display:none}#hud.hud-compact .partner-info b{font-size:12px}#hud.hud-compact .partner-info .hp-track{margin-top:5px}#hud.hud-compact .partner-info small{font-size:9px;margin-top:2px}#hud.hud-compact .partner-card>button{display:none}
 #hud.hud-compact #throw-button{position:absolute;top:auto;min-width:54px;right:var(--edge-right);bottom:calc(var(--edge-bottom) + 49px);width:54px;height:48px;min-height:48px;padding:4px}
 #hud.hud-compact #throw-button{grid-template-columns:18px minmax(0,1fr)}#hud.hud-compact #throw-button .ball-icon{font-size:18px}#hud.hud-compact #ball-count{font-size:11px}#hud.hud-compact #throw-button small{margin:0}
 #hud.hud-compact .move-bar{display:none;position:absolute;left:var(--edge-left);right:var(--edge-right);bottom:calc(var(--edge-bottom) + 174px);margin:0;gap:5px;justify-content:flex-end}
 #hud.hud-compact.skills-open .move-bar{display:flex}
 #hud.hud-compact .move{width:62px;height:48px;min-height:48px;padding:5px 7px}
 #hud.hud-compact .move strong{font-size:11px;margin-top:14px}#hud.hud-compact .move em{top:4px;right:6px;font-size:11px}
 #hud.hud-compact #touch-controls{left:var(--edge-left);right:var(--edge-right);bottom:calc(var(--edge-bottom) + 118px);height:44px}
 #hud.hud-compact .touch-actions{position:absolute;right:0;bottom:0;display:flex;gap:5px;grid-template-columns:none;max-width:none;width:auto}
 #hud.hud-compact .touch-actions button{min-width:44px;min-height:44px;width:auto;height:44px;padding:6px;font-size:11px}
 #hud.hud-compact #touch-sprint{display:none}
 #hud.hud-compact #touch-interact{left:0;right:0;bottom:52px;width:100%;max-width:none;min-height:44px;padding:7px 10px;text-align:left;font-size:12px;background:#143239e8}
 #hud.hud-compact.skills-open #touch-interact{bottom:108px}
 #hud.hud-compact #touch-interact:disabled{opacity:1;color:#e8d7b3;border-color:#c5a87b}
 #hud.hud-compact #touch-interact b{font-size:12px;font-weight:600}#hud.hud-compact #touch-interact small{display:block;font-size:11px;line-height:1.4;margin-top:2px}
 #hud.hud-compact:not(.hud-details-open) #touch-interact .interaction-detail{display:none}
 #hud.hud-compact #context{display:none}
 #hud.hud-compact #tutorial-hint{bottom:calc(var(--edge-bottom) + 220px);font-size:11px;width:calc(100vw - 28px);max-width:360px}
 #hud.hud-compact #swipe-move-hint{display:none}
 #hud.hud-compact #objective{display:none}
 #hud.hud-compact .target-hud{left:12px;right:auto;top:142px;width:165px;padding:8px}
 #hud.hud-compact .boss-hud{top:140px;width:calc(100vw - 28px);max-width:330px}
 #toast-stack{top:260px;right:auto;max-width:240px}.toast{max-width:240px}
 #cinematic{top:145px;max-width:320px}#cinematic h1{font-size:21px}
}
@media(pointer:coarse) and (max-height:480px){
 #hud.hud-compact .minimap-wrap{top:62px;right:12px}#hud.hud-compact .minimap-wrap:not(.is-collapsed){width:132px}#hud.hud-compact #minimap{width:130px;height:116px}
 #hud.hud-compact #compass{top:100px;max-width:210px}
 #hud.hud-compact .quick-nav{left:182px;right:auto;bottom:var(--edge-bottom)}
 #hud.hud-compact .partner-card{bottom:calc(var(--edge-bottom) + 4px)}
 #hud.hud-compact #throw-button{bottom:calc(var(--edge-bottom) + 4px)}
 #hud.hud-compact #touch-controls{bottom:calc(var(--edge-bottom) + 60px)}
 #hud.hud-compact .move-bar{left:auto;bottom:calc(var(--edge-bottom) + 110px)}
 #hud.hud-compact #touch-interact{left:180px;right:226px;bottom:0;width:auto;min-width:170px}
 #hud.hud-compact.skills-open #touch-interact{bottom:0}
 #hud.hud-compact .target-hud{top:12px;left:175px;width:190px}
 #hud.hud-compact .boss-hud{top:12px;left:175px;max-width:280px}
 #hud.hud-compact #tutorial-hint{bottom:118px;max-width:300px}
 #cinematic{top:108px;max-width:280px}#toast-stack{top:108px;right:auto}
}

/* Compact current task; other choices stay inside the map/journal. */
#hud.hud-compact #compass{height:auto;min-height:44px;max-height:80px;line-height:1.35}
#hud.hud-compact #compass::after{content:attr(data-progress);display:block;font-size:10px;line-height:1.4;margin-top:2px;color:#daeab8;white-space:normal}
.journey-card{padding:10px 12px;border:1px solid #88a7a94a;border-radius:8px;margin:8px 0;background:#1b383e}
.journey-card b,.journey-card small{display:block}.journey-card small{font-size:11px;color:#c7dfb5}.journey-card p,.journey-journal>p{font-size:12px;margin:6px 0}
.journey-card button,.journey-journal button{min-height:44px;padding:7px 10px;margin-top:6px;font-size:12px}
.journey-alternatives{font-size:12px;margin:8px 0}.journey-alternatives summary{cursor:pointer;min-height:44px;padding:9px 0}
.journey-alternatives button{display:block;width:100%;text-align:left;padding:9px 11px;margin:6px 0;border-radius:6px;min-height:44px}
.journey-alternatives b,.journey-alternatives small{display:block}.journey-alternatives small{font-size:11px;color:#b9d1c6}
.atlas-local>.atlas-goal-summary{padding:10px 0;margin:0;border-top:1px solid #7c999945}.atlas-local>.atlas-goal-summary h2{font-size:16px;margin:4px 0}.atlas-local>.atlas-goal-summary p{font-size:12px;margin:4px 0;line-height:1.5}
#hud.hud-compact #touch-interact.journey-interact .interaction-detail{display:block!important;font-size:10px;line-height:1.4}
#hud.hud-compact #tutorial-hint.first-swipe-hint{max-width:330px;font-size:11px}


/* Short touch screens reserve a scrollable notice lane above field actions. */
@media(pointer:coarse) and (min-height:481px) and (max-height:700px){
 #toast-stack{width:240px;max-height:80px;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;scrollbar-width:thin}
 #toast-stack .toast{flex-shrink:0}
 #toast-stack .toast:last-child{order:-1}
}

/* Actual species portraits replace font glyphs without enlarging the HUD card. */
#hud.hud-compact .partner-card{gap:6px;background:linear-gradient(135deg,#1e4148f5,#123137f5)}
#hud.hud-compact .partner-card>.partner-portrait{position:relative;display:block;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;overflow:hidden;border:1px solid #9cc4bb70;border-radius:10px;background:radial-gradient(circle at 35% 30%,#42676b,#203d46);box-shadow:inset 0 1px 5px #0b242655}
.partner-portrait img{display:block;width:100%;height:100%;object-fit:contain;pointer-events:none}
.partner-portrait img[hidden],#partner-status[hidden]{display:none}
.partner-portrait .portrait-placeholder{position:absolute;inset:0;display:grid;place-items:center;font-size:18px;color:#cbdbd0}
.partner-portrait[data-state="ready"] .portrait-placeholder{display:none}
#hud.hud-compact .partner-portrait.shiny{border-color:#ebd68a;box-shadow:0 0 0 1px #ebd68a36,inset 0 1px 5px #0b242655}
.partner-portrait.shiny::after{content:'✦';position:absolute;top:-1px;right:1px;font-size:11px;color:#fff0a6;text-shadow:0 1px 3px #142932}
#partner-status{position:absolute;bottom:0;left:0;right:0;font-size:9px;line-height:13px;background:#26303aeb;color:#ffce98;text-align:center}
#hud.hud-compact .partner-vitals{display:flex;justify-content:space-between;gap:3px;align-items:baseline;margin-top:3px}
#hud.hud-compact .partner-vitals small{margin:0;font-variant-numeric:tabular-nums}
#hud.hud-compact .partner-info .hp-track{height:5px;margin-top:5px}
#hud.hud-compact .partner-info .exp-track{margin-top:3px}
#hud.hud-compact #throw-button{width:66px;min-width:66px;grid-template-columns:26px minmax(0,1fr);grid-template-rows:26px 16px;row-gap:3px;background:linear-gradient(145deg,#214149f5,#132e35f5)}
#hud.hud-compact #throw-button .ball-icon{display:block;width:26px;height:26px;line-height:0;filter:drop-shadow(0 2px 2px #061c2780)}
.ball-icon svg{display:block;width:100%;height:100%}
@media(pointer:coarse){
 #hud.hud-compact .partner-card{gap:5px;padding:7px 8px}
 #hud.hud-compact .partner-card>.partner-portrait{display:block;flex-basis:44px;width:44px;min-width:44px;height:44px;min-height:44px}
 #hud.hud-compact .partner-vitals span{font-size:9px}
 #hud.hud-compact #throw-button{width:62px;min-width:62px;grid-template-columns:24px minmax(0,1fr);grid-template-rows:24px 14px;row-gap:2px}
 #hud.hud-compact #throw-button .ball-icon{width:24px;height:24px}
}

/* The bag and shop use the same canonical ball artwork as the throw control. */
.item-card b:has(.bag-ball-icon){display:flex;align-items:center;gap:8px}
.bag-ball-icon{display:inline-block;flex:0 0 30px;width:30px;height:30px;line-height:0}
.bag-ball-icon svg{display:block;width:100%;height:100%}

/* The bag has its own paper-and-pocket layout; other dialogs keep their styles. */
#panel[data-panel="bag"]{--panel-width:650px;height:min(560px,84dvh);max-height:min(560px,84dvh);background:#f0ecd9;color:#293f43;border:2px solid #ded8bf;border-radius:15px}
#panel[data-panel="bag"] .panel-header{background:#c8554e;border:0;padding:13px 18px;color:#fff7e6}
#panel[data-panel="bag"] .panel-header .eyebrow{color:#ffe1ce;letter-spacing:.5px}
#panel[data-panel="bag"] .panel-header h1{font-size:22px;font-weight:800;letter-spacing:.5px}
#panel[data-panel="bag"] .panel-header>button{background:#a74440;border:1px solid #f4c8b5;color:#fff7e6}
#panel[data-panel="bag"] #panel-body{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden;padding:0!important;line-height:1.5}
#panel[data-panel="bag"] button:hover{transform:none}
#panel[data-panel="bag"] button:focus-visible{outline:3px solid #247a92;outline-offset:-3px}
.expedition-bag{display:flex;flex-direction:column;flex:1;min-height:0}
.bag-topline{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 15px 6px;font-size:12px;flex-shrink:0}
.bag-pocket-title{font-size:14px;font-weight:800}.bag-pocket-title small{margin-left:5px;font-size:11px;font-weight:500;color:#677d76}
.bag-funds{padding:3px 9px;border-radius:14px;background:#e5dcc0;color:#61522f;font-weight:700;font-size:11px;white-space:nowrap;font-variant-numeric:tabular-nums}
.bag-pockets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;padding:4px 12px 9px;flex-shrink:0;touch-action:pan-y}
.bag-pockets button{display:flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:53px;padding:5px;border:1px solid #ccc8af;border-radius:9px;background:#faf7e9;color:#415754;font-size:12px;font-weight:700}
.bag-pockets button:hover{background:#e5edde;border-color:#7d9e86}.bag-pockets button[aria-selected="true"]{background:#dce9d4;border-color:#5a8975;box-shadow:inset 0 -3px #5a8975;color:#234c44}
.bag-pocket-icon{display:block;width:28px;height:28px;flex-shrink:0}.bag-pocket-icon svg{display:block;width:100%;height:100%}
.bag-main{display:grid;grid-template-columns:172px minmax(0,1fr);flex:1;min-height:110px;max-height:268px;border-top:1px solid #d0cab0;border-bottom:1px solid #d0cab0;background:#faf8ec}
.bag-stage{padding:10px 16px;background-color:#e5ecd7;background-image:radial-gradient(#bfcdad 1px,transparent 1px);background-size:10px 10px;border-right:1px solid #ccd2bc;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;overflow:hidden}
.bag-illustration{width:122px;height:140px;flex-shrink:1;min-height:55px}.bag-illustration svg{display:block;width:100%;height:100%}.bag-stage-label{font-size:11px;font-weight:750;color:#4d6956;margin:0 0 9px;white-space:nowrap}
.bag-needs{width:100%;background:#f9f8e9;border:1px solid #ced6be;border-radius:8px;padding:8px;font-size:10px;color:#3c5c4f;flex-shrink:0}
.bag-needs>div{display:grid;grid-template-columns:1fr auto;gap:3px}.bag-needs>div+div{margin-top:7px}.bag-needs b{font-size:10px;font-variant-numeric:tabular-nums}.bag-needs i{grid-column:1/-1;height:4px;background:#d8dfc7;border-radius:8px;overflow:hidden}.bag-needs em{display:block;height:100%;background:#a4b867}.bag-needs .bag-thirst em{background:#77aec5}
.bag-items{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-color:#91a88e #eff0df;padding:7px 8px;touch-action:pan-y}
#panel .bag-item{position:relative;display:grid;grid-template-columns:7px 30px minmax(0,1fr) auto;gap:7px;width:100%;min-height:47px;padding:7px 8px;border:1px solid transparent;border-radius:7px;background:transparent;color:#304842;text-align:left;line-height:1.25}
#panel .bag-item+.bag-item{margin-top:3px}.bag-item:hover{background:#e7eddb!important}.bag-item.selected{border-color:#c7ad72!important;background:#f1e4b7!important;box-shadow:inset 0 0 0 1px #fff5d2}
.bag-cursor{align-self:center;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:7px solid transparent}.bag-item.selected .bag-cursor{border-left-color:#ad5b3e}
.bag-row-art{display:block;width:30px;height:30px;align-self:center}.bag-row-art svg{display:block;width:100%;height:100%}
.bag-row-name{align-self:center;font-size:14px;font-weight:700;word-break:keep-all;overflow-wrap:anywhere;min-width:0}.bag-row-name small{display:inline-block;vertical-align:middle;font-size:9px;padding:2px 4px;margin-left:5px;border:1px solid #97ae82;border-radius:4px;background:#e6edd7;color:#4b6743;white-space:nowrap;font-weight:500}
.bag-quantity{align-self:center;font-size:12px;font-variant-numeric:tabular-nums;color:#57684b;white-space:nowrap}
.bag-empty{padding:20px 12px;text-align:center;color:#6c7d6a}.bag-empty svg{width:50px;height:50px;opacity:.6}.bag-empty b{display:block;font-size:13px;margin:8px 0}.bag-empty p{font-size:12px;margin:5px 0}
.bag-detail{display:grid;grid-template-columns:62px minmax(0,1fr) 112px;align-items:center;gap:12px;background:#fffdf1;padding:13px 15px;flex-shrink:0;border-bottom:1px solid #d0cab0;min-height:113px}
.bag-detail-art{width:62px;height:62px;background:#edf0d9;border:1px solid #d4ddbc;border-radius:12px;padding:7px}.bag-detail-art svg{display:block;width:100%;height:100%}
#panel .bag-description h2{font-size:17px;line-height:1.4;margin:0 0 5px;font-weight:800;color:#314941;word-break:keep-all;overflow-wrap:anywhere}.bag-description h2 small{font-size:11px;margin-left:4px;color:#738266;white-space:nowrap;font-weight:500}
.bag-description p{font-size:12px;line-height:1.6;margin:0;color:#566659;word-break:keep-all;overflow-wrap:anywhere;max-height:77px;overflow-y:auto}
.bag-target{display:block;font-size:10px;line-height:1.5;color:#637d68;margin-top:5px}.bag-reason{display:block;font-size:11px;line-height:1.5;color:#996344;margin-top:4px}.bag-reason:empty{display:none}
#panel .bag-use{min-height:44px;width:100%;padding:8px;border:1px solid #476f62;border-radius:8px;background:#507d6b;color:#fff8e6;font-size:12px;line-height:1.5;font-weight:750;white-space:normal;word-break:keep-all}
#panel .bag-use:hover{background:#3b6959}.bag-use:disabled{background:#dddcca!important;border-color:#ceccb6!important;color:#858673!important;opacity:1;cursor:default}
.bag-footer{display:flex;align-items:center;justify-content:space-between;position:relative;gap:8px;padding:7px 13px;font-size:10px;color:#70806b;flex-shrink:0}.bag-touch-help{display:none}.bag-help{color:#476759;margin-left:auto}.bag-help summary{cursor:pointer;white-space:nowrap;font-weight:700;padding:3px 0;min-height:22px}
.bag-help[open]>div{position:absolute;right:9px;left:9px;bottom:35px;z-index:3;background:#304e48;border:1px solid #709983;border-radius:10px;padding:12px 15px;color:#f3f2df;max-height:min(230px,50dvh);overflow:auto;box-shadow:0 8px 25px #142f3b40}.bag-help p{font-size:12px;line-height:1.7;margin:0 0 8px}.bag-help p:last-child{margin-bottom:0}
@media(pointer:coarse){.bag-key-help{display:none}.bag-touch-help{display:inline}.bag-help summary{min-height:32px;align-content:center}.bag-pockets button{min-height:56px}}
@media(max-width:560px){
 #panel[data-panel="bag"]{height:min(590px,86dvh);max-height:min(590px,86dvh)}
 .bag-topline{padding:8px 10px 5px}.bag-pocket-title{font-size:13px}.bag-funds{font-size:10px;padding:3px 6px}.bag-pockets{gap:4px;padding:4px 8px 8px}.bag-pockets button{flex-direction:column;gap:1px;padding:4px 2px;font-size:11px}.bag-pocket-icon{width:25px;height:25px}
 .bag-main{grid-template-columns:94px minmax(0,1fr);max-height:248px;min-height:98px}.bag-stage{padding:6px}.bag-illustration{width:83px;height:110px;min-height:42px}.bag-stage-label{font-size:9px;margin-bottom:7px}.bag-needs{padding:6px;font-size:9px}.bag-needs b{font-size:9px}
 .bag-items{padding:5px}.bag-row-art{width:26px;height:26px}#panel .bag-item{grid-template-columns:5px 26px minmax(0,1fr) auto;gap:5px;padding:6px;min-height:48px}.bag-cursor{border-left-width:5px;border-top-width:4px;border-bottom-width:4px}.bag-row-name{font-size:12px}.bag-row-name small{display:block;width:max-content;margin:3px 0 0;font-size:8px}.bag-quantity{font-size:11px}
 .bag-detail{grid-template-columns:46px minmax(0,1fr);gap:8px;padding:10px;min-height:0}.bag-detail-art{width:46px;height:46px;padding:5px;align-self:start}.bag-detail .bag-use{grid-column:1/-1}#panel .bag-description h2{font-size:16px}.bag-description p{font-size:11px;line-height:1.55;max-height:69px}.bag-reason{font-size:10px}.bag-target{font-size:9px}.bag-footer{padding:4px 9px;font-size:9px}
}
@media(max-height:480px){
 #panel[data-panel="bag"]{height:calc(100dvh - 28px);max-height:calc(100dvh - 28px)}
 #panel[data-panel="bag"] .panel-header{padding:7px 13px}#panel[data-panel="bag"] .panel-header h1{font-size:19px}
 .bag-topline{padding:5px 11px}.bag-pockets{padding:2px 8px 6px}.bag-pockets button{min-height:43px;flex-direction:row;font-size:11px}.bag-pocket-icon{width:25px;height:25px}.bag-main{grid-template-columns:1fr;min-height:58px;max-height:none}.bag-stage{display:none}
 .bag-items{padding:4px 8px}#panel .bag-item{min-height:44px;padding:5px 7px}.bag-detail{grid-template-columns:45px minmax(0,1fr) 118px;padding:8px 11px;gap:9px;min-height:93px}.bag-detail-art{width:45px;height:45px}.bag-detail .bag-use{grid-column:auto}#panel .bag-description h2{font-size:16px}.bag-description p{max-height:55px;font-size:11px}.bag-footer{padding:3px 10px}.bag-key-help{font-size:9px}
}

.bag-detail>p{grid-column:1/-1;margin:5px 0;font-size:12px;color:#697c68}

@media(max-width:560px) and (max-height:620px){.bag-main{min-height:66px;grid-template-columns:1fr}.bag-stage{display:none}}

/* Static full-body portraits keep all151 entries recognisable without loading
   live models in the grid. Registration alone controls the colour state. */
#panel[data-panel="dex"] .dex-legend{display:flex;justify-content:space-between;align-items:center;gap:6px 12px;flex-wrap:wrap;margin:-4px 0 12px;font-size:11px;line-height:1.5;color:#d3e2dc}
#panel[data-panel="dex"] .dex-legend b{font-size:11px;font-weight:600;color:#d9ecb0}
#panel[data-panel="dex"] .dex-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;max-height:min(410px,49dvh);padding:4px;scrollbar-gutter:stable}
#panel[data-panel="dex"] .dex-card{min-width:0;min-height:138px;padding:8px 5px 9px;display:flex;flex-direction:column;align-items:center;text-align:center;border-radius:10px;background:#253b40;border:1px solid #607175;position:relative;line-height:1.35;color:#d2d9d9;isolation:isolate}
#panel[data-panel="dex"] .dex-card.caught{background:#243f3b;border-color:#7d9e73;color:#f0f5e6}
#panel[data-panel="dex"] .dex-card.selected{outline:2px solid #9edbe3;outline-offset:-2px;box-shadow:0 0 0 1px #0e242a}
#panel[data-panel="dex"] .dex-number{align-self:flex-start;padding-left:2px;font-size:10px;line-height:13px;color:#c4d2d2;font-variant-numeric:tabular-nums}
#panel[data-panel="dex"] .dex-art{display:flex;justify-content:center;align-items:center;width:100%;height:76px;flex-shrink:0;margin:2px 0 3px;background:radial-gradient(ellipse at center,#b5c9cc12,transparent 68%)}
#panel[data-panel="dex"] .dex-art img{width:76px;max-width:100%;height:76px;object-fit:contain;filter:grayscale(1);opacity:.65;pointer-events:none}
#panel[data-panel="dex"] .dex-card.caught .dex-art img{opacity:1;filter:drop-shadow(0 3px 2px #091d2855)}
#panel[data-panel="dex"] .dex-card strong{display:block;margin:0;font-size:12px;line-height:16px;min-height:16px;max-width:100%;overflow-wrap:anywhere;word-break:keep-all;color:inherit}
#panel[data-panel="dex"] .dex-status{font-size:10px;line-height:14px;margin-top:4px;padding:1px 6px;border-radius:6px;color:#c9d3d3;background:#1a2d3380;max-width:100%}
#panel[data-panel="dex"] .dex-card.caught .dex-status{background:#abc87824;color:#e2f1b9}
#panel[data-panel="dex"] .dex-shiny{position:absolute;right:7px;top:6px;color:#ffe17d;font-size:14px;line-height:16px}
@media(max-width:760px){
 #panel[data-panel="dex"] .dex-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-height:min(286px,38dvh);gap:7px}
 #panel[data-panel="dex"] .dex-card{min-height:128px;padding:6px 4px 7px}
 #panel[data-panel="dex"] .dex-art,#panel[data-panel="dex"] .dex-art img{height:66px}
 #panel[data-panel="dex"] .dex-art img{width:66px}
 #panel[data-panel="dex"] .dex-card strong{font-size:11px;line-height:15px}
 #panel[data-panel="dex"] .dex-legend{margin:0 0 8px;font-size:10px}
}
@media(max-height:480px) and (min-width:561px){
 #panel[data-panel="dex"] .dex-layout{grid-template-columns:minmax(0,1fr) 200px}
 #panel[data-panel="dex"] .dex-grid{grid-template-columns:repeat(4,minmax(0,1fr));max-height:calc(76dvh - 94px)}
}

#panel[data-panel="dex"] .dex-static-preview{object-fit:contain;background:radial-gradient(ellipse at center,#b5c9cc15,transparent 70%)}
#panel[data-panel="dex"] .dex-detail.unregistered #dex-preview{filter:grayscale(1);opacity:.65}

/* Pokédex finish: complete card rows, a framed scroll edge and a compact profile. */
#panel[data-panel="dex"] .dex-list{min-width:0;align-self:start;overflow:hidden;border:1px solid #6d92914d;border-radius:11px;background:#102c3270}
#panel[data-panel="dex"] .dex-grid{--dex-card-height:122px;--dex-row-cap:3;grid-auto-rows:var(--dex-card-height);max-height:none;padding:6px;gap:8px;scroll-snap-type:y mandatory;scroll-padding-block:6px;overscroll-behavior:contain;touch-action:pan-y}
#panel[data-panel="dex"] .dex-card{height:var(--dex-card-height);min-height:0;padding:6px 5px;scroll-snap-align:start;scroll-margin:0;flex-shrink:0}
#panel[data-panel="dex"] .dex-card:hover,#panel[data-panel="dex"] .dex-card:active{transform:none}
#panel[data-panel="dex"] .dex-card:focus-visible{outline-offset:-3px}
#panel[data-panel="dex"] .dex-art{height:58px;margin:2px 0}
#panel[data-panel="dex"] .dex-art img{width:58px;height:58px}
#panel[data-panel="dex"] .dex-status{margin-top:2px}
#panel[data-panel="dex"] .dex-list-footer{padding:5px 8px;border-top:1px solid #71919038;font-size:10px;line-height:14px;color:#b7cbc6;text-align:center;background:#1b363c}
#panel[data-panel="dex"] .dex-list-footer[hidden]{display:none}
#panel[data-panel="dex"] .dex-grid>.notice{grid-column:1/-1;align-self:center;margin:8px;text-align:center;font-size:12px}
#panel[data-panel="dex"] .dex-detail{min-width:0;padding:10px;border:1px solid #6d92913d;border-radius:11px;background:#17323966}
#panel[data-panel="dex"] #dex-preview{width:100%;max-width:176px;height:120px!important;margin:0 auto 6px;border:0;border-radius:8px}
#panel[data-panel="dex"] .dex-identity>small{font-size:10px;line-height:1.4}
#panel[data-panel="dex"] .dex-identity h2{margin:5px 0;font-size:19px;line-height:1.4}
#panel[data-panel="dex"] .dex-identity p{margin:6px 0 0;font-size:11px;line-height:1.5}
@media(max-height:600px){#panel[data-panel="dex"] .dex-grid{--dex-row-cap:2}}
@media(max-height:480px){#panel[data-panel="dex"] .dex-grid{--dex-row-cap:1}}
@media(max-width:760px){
 #panel[data-panel="dex"] .dex-grid{--dex-card-height:112px;--dex-row-cap:2;gap:7px}
 #panel[data-panel="dex"] .dex-card{padding:6px 4px}
 #panel[data-panel="dex"] .dex-art{height:50px;margin:2px 0}
 #panel[data-panel="dex"] .dex-art img{width:50px;height:50px}
 #panel[data-panel="dex"] .dex-profile{display:grid;grid-template-columns:88px minmax(0,1fr);gap:10px;align-items:center}
 #panel[data-panel="dex"] #dex-preview{width:88px;max-width:88px;height:88px!important;margin:0}
 #panel[data-panel="dex"] .dex-identity h2{font-size:18px;margin:4px 0}
 #panel[data-panel="dex"] .dex-identity p{font-size:10px}
 #panel[data-panel="dex"] .dex-detail{padding:9px}
}
@media(max-width:760px) and (min-height:800px){#panel[data-panel="dex"] .dex-grid{--dex-row-cap:3}}
@media(max-width:760px) and (max-height:480px){#panel[data-panel="dex"] .dex-grid{--dex-row-cap:1}}

@media(min-width:761px), (min-width:561px) and (max-height:480px){
 #panel[data-panel="dex"] .dex-layout{align-items:start}
 #panel[data-panel="dex"] .dex-detail{max-height:var(--dex-list-height);overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;scroll-padding-block:9px;touch-action:pan-y}
}
@media(min-width:761px) and (max-height:480px){
 #panel[data-panel="dex"] .dex-profile{display:grid;grid-template-columns:76px minmax(0,1fr);gap:8px;align-items:center}
 #panel[data-panel="dex"] #dex-preview{width:76px;max-width:76px;height:76px!important;margin:0}
 #panel[data-panel="dex"] .dex-identity h2{font-size:17px}
 #panel[data-panel="dex"] .dex-identity p{font-size:10px}
}

/* Fractional desktop viewport heights must not create a one-pixel outer scrollbar. */
@media(min-width:761px) and (min-height:481px){#panel[data-panel="dex"] #panel-body{padding-bottom:14px}}

/* A geometric close icon stays centered independently of font baselines. */
#panel #close-panel{display:grid;place-items:center;padding:0;line-height:1}
#panel #close-panel svg{display:block;width:20px;height:20px;pointer-events:none}
#panel #close-panel:hover,#panel #close-panel:active{transform:none}

/* Shared action contents fit independently of the HUD compact/touch variants. */
#hud.hud-compact .move{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:18px minmax(0,1fr);height:64px;min-height:64px;padding:5px 6px;align-items:center;gap:2px;box-sizing:border-box}
#hud.hud-compact .move kbd{grid-column:1;grid-row:1;justify-self:start;margin:0;line-height:16px;padding:1px 3px}
#hud.hud-compact .move em{position:static;grid-column:2;grid-row:1;justify-self:end;font-size:12px;line-height:18px}
#hud.hud-compact .move strong{grid-column:1/-1;grid-row:2;margin:0;font-size:11px;line-height:13px;min-width:0;overflow-wrap:anywhere;align-self:center}
#hud.hud-compact:not(.in-combat) #tutorial-hint.first-swipe-hint:not(.hidden){display:block!important;top:158px;bottom:auto;left:12px;transform:none;width:min(220px,calc(100vw - 24px));max-width:none;padding:8px 10px;text-align:left;max-height:none;overflow:visible;pointer-events:none}
#hud.hud-compact #tutorial-hint.first-swipe-hint.hidden,#hud.hud-compact.in-combat #tutorial-hint.first-swipe-hint{display:none!important}
@media(pointer:coarse) and (max-height:480px){#hud.hud-compact:not(.in-combat) #tutorial-hint.first-swipe-hint:not(.hidden){top:152px;width:170px;font-size:10px}}

/* One compact friend list; only the selected friend exposes management actions. */
.party-tabs{display:flex;gap:6px;position:sticky;top:-1px;background:#173138;z-index:2;padding:0 0 8px}.party-tabs button{flex:1;min-height:44px;font-size:12px}.party-tabs [aria-selected=true]{border-color:#cfe4a1;background:#294d47}
.party-list{display:grid;gap:7px}.party-entry{border:1px solid #78939465;border-radius:8px;overflow:hidden}.party-entry.active{border-color:#bfd891}.party-entry>summary{display:flex;gap:9px;align-items:center;min-height:64px;padding:8px;cursor:pointer;list-style:none}.party-entry>summary::-webkit-details-marker{display:none}.party-entry>summary img,.camp-friend-card img{object-fit:contain;flex:none;width:44px;height:44px}.party-summary-name{flex:1;min-width:0}.party-summary-name b{display:block;font-size:14px;line-height:20px;overflow-wrap:anywhere}.party-summary-name small{display:block;font-size:11px;line-height:16px}.party-summary-health{width:80px;flex:none;text-align:right;font-size:11px}.party-summary-health .hp-track{display:block;margin-top:5px;height:5px}.party-entry-detail{padding:0 10px 10px}.party-entry-detail p{font-size:12px;margin:5px 0}.party-entry-actions{display:flex;flex-wrap:wrap;gap:5px;margin:8px 0}.party-entry-actions button{min-height:44px;margin:0;padding:6px 10px;font-size:12px}.party-entry-detail>small{font-size:11px}
#panel [hidden]{display:none!important}.camp-slot-picker>summary{min-height:44px;padding:10px 0;cursor:pointer;font-size:12px}.camp-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.camp-slots>button{padding:7px;min-height:88px;text-align:left}.camp-slots>button>small{display:block;font-size:10px;margin-bottom:3px}.camp-friend-card{display:flex;align-items:center;gap:7px;min-width:0}.camp-friend-card>span{min-width:0}.camp-friend-card b{font-size:12px;line-height:17px;display:block;overflow-wrap:anywhere}.camp-friend-card small{display:block;font-size:10px;line-height:15px}.camp-friends{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));max-height:228px;overflow:auto;gap:6px;padding:2px;scrollbar-width:thin}.camp-friends>button{min-height:70px;padding:6px;text-align:left}.camp-filter{display:flex;gap:6px}.camp-filter input{min-width:0;flex:1}.camp-filter select{max-width:122px}.camp-comparison{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin:8px 0}.camp-comparison article{padding:8px;min-width:0}.camp-comparison article>small{font-size:10px}.camp-confirm{position:sticky;bottom:-1px;background:#173138;padding:8px 0;margin:4px 0 0;z-index:2}.camp-confirm button{min-height:44px;font-size:12px}
@media(max-width:600px){.camp-friends{grid-template-columns:1fr;max-height:220px}.camp-comparison{grid-template-columns:1fr}.camp-friend-card img{width:40px;height:40px}.party-summary-health{width:72px}.party-summary-name b{font-size:13px}.party-entry>summary{gap:7px;padding:6px}}

/* A held mobile action never covers skill labels; first movement guidance survives camp context. */
body:has(#toast-stack) #hud.hud-compact:not(.in-combat) #tutorial-hint.first-swipe-hint:not(.hidden){display:block!important;top:184px}
@media(pointer:coarse) and (min-height:481px){#hud.hud-compact.skills-open #touch-interact{bottom:124px}}
@media(pointer:coarse) and (max-height:480px){body:has(#toast-stack) #hud.hud-compact:not(.in-combat) #tutorial-hint.first-swipe-hint:not(.hidden){top:152px}}
#panel:not(.move-choice-panel) .camp-confirm button{min-height:44px}
.camp-friend-picker>summary{padding:10px 0;min-height:44px;font-size:12px;cursor:pointer}
#camp-manager h3{font-size:14px;margin:10px 0 6px}.camp-confirm{position:static;margin-top:8px}.camp-slot-picker,.camp-friend-picker{margin:4px 0}

#panel:not(.move-choice-panel) .camp-confirm{display:grid;grid-template-columns:1fr 1fr;gap:6px}

/* Global notice siblings share the HUD safe-area values on touch devices. */
@media(pointer:coarse){
 :root{--edge-left:max(12px,env(safe-area-inset-left));--edge-right:max(12px,env(safe-area-inset-right));--edge-bottom:max(8px,env(safe-area-inset-bottom))}
 #toast-stack{max-height:96px;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;scrollbar-width:thin}#toast-stack .toast{flex-shrink:0}#toast-stack .toast:last-child{order:-1}
 #save-note{top:auto;left:calc(var(--edge-left) + 224px);right:var(--edge-right);bottom:var(--edge-bottom);max-width:none;font-size:9px;line-height:1.35;text-align:right;overflow-wrap:normal;word-break:keep-all}
}
@media(pointer:coarse) and (min-height:481px){
 #toast-stack{top:148px;right:var(--edge-right);left:auto;transform:none;width:min(200px,calc(100vw - 203px));max-width:none;max-height:96px;overflow-y:auto;overscroll-behavior:contain;pointer-events:auto;scrollbar-width:thin}
 #toast-stack .toast{width:100%;max-width:100%;flex-shrink:0;padding:7px 8px;font-size:11px;line-height:1.4;overflow-wrap:normal;word-break:keep-all}
 #toast-stack .toast small{font-size:10px;line-height:1.4}
 #toast-stack .toast:last-child{order:-1}
 body:has(#tutorial-hint.first-swipe-hint:not(.hidden)) #toast-stack .toast:not(.warn){display:none}
 body:has(#toast-stack .toast.warn) #hud.hud-compact #tutorial-hint.first-swipe-hint:not(.hidden){display:none!important}
}
@media(pointer:coarse) and (max-height:480px){#save-note{left:auto;right:80px;bottom:var(--edge-bottom);width:160px}}

/* Approved Pokédex device startup. Every rule is scoped away from the field HUD. */
@font-face{font-family:"Kanto Startup";src:url("./assets/fonts/PretendardVariable.woff2") format("woff2");font-weight:45 920;font-style:normal;font-display:swap}
.startup,.startup :is(h1,h2,p,button,span,strong,small,b){font-family:"Kanto Startup","Malgun Gothic","Apple SD Gothic Neo",sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;text-shadow:none}
#title.startup,#starter.startup,#loading.startup{background:#e7e7df;color:#20302b;display:flex;align-items:safe center;justify-content:center;padding:max(16px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(16px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));pointer-events:auto;overflow-y:auto;overscroll-behavior:contain;text-align:left;gap:0;isolation:isolate;letter-spacing:-.012em}
#title.startup{z-index:10}#starter.startup{z-index:11}#loading.startup{z-index:100}
.startup .start-device{width:min(640px,100%);background:#c43e36;border:2px solid #872c26;border-radius:23px 23px 38px 23px;padding:18px 22px 20px;box-shadow:inset 0 -5px 0 #0002,0 14px 22px #0002;flex:none}
.startup .start-device-top{display:flex;align-items:center;gap:11px;margin-bottom:17px;color:#fff1de}
.startup .start-lens{display:block;width:37px;height:37px;flex:none;border-radius:50%;background:#68b6d3;border:4px solid #e9e5d8;box-shadow:inset 0 -5px 0 #398bb1}
.startup .start-device-top strong{font-size:19px;font-weight:700;line-height:1.25;letter-spacing:-.025em}.startup .start-device-top small{margin-left:auto;font-size:12px;font-weight:500;line-height:1.4;letter-spacing:0;color:#fff1de}
.startup .start-display{background:#eceddc;color:#20302b;border:8px solid #d7d6c4;border-radius:8px;min-height:326px;padding:12px 20px 16px;position:relative;overflow:hidden;color-scheme:light}
.startup .start-display-top{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #c8cfbf;padding-bottom:6px;margin-bottom:10px;font-size:13px;font-weight:500;line-height:1.4;letter-spacing:-.008em;min-height:50px}
.startup .start-display-top h1{font-size:14px;font-weight:600;line-height:1.4;margin:0;text-align:center;letter-spacing:-.01em}
.startup button{font-size:15px;font-weight:650;line-height:1.2;letter-spacing:-.01em;min-height:44px;border:0;border-radius:5px;padding:11px 18px;transition:background .15s;touch-action:manipulation;text-align:center;transform:none;color:#fff7e5;background:#332d28;box-shadow:none}
.startup button:hover{transform:none;background:#4a4037}.startup button:active{background:#514b40;transform:none}.startup button:disabled{opacity:.55}.startup button:focus-visible{outline:3px solid #f7d784;outline-offset:3px}
.startup .start-icon{display:grid;place-items:center;width:44px;height:44px;padding:0;background:transparent;color:#20302b;flex:none}.startup .start-icon:hover{background:#cdd3c0}.startup .start-icon:focus-visible{outline-color:#356b86;outline-offset:0}
.startup svg{display:block;width:20px;height:20px;pointer-events:none}
.startup .start-home{padding:12px 0 16px;text-align:center}.startup .start-home h1{font-size:24px;font-weight:700;line-height:1.35;letter-spacing:-.035em;word-break:keep-all;margin:8px 0}.startup .start-home p{font-size:14px;line-height:1.55;font-weight:400;color:#51615b;margin:14px 0 0;word-break:keep-all}
.startup .start-lineup{display:flex;justify-content:center;gap:3px;margin:14px 0 16px}.startup .start-lineup img{object-fit:contain;width:85px;height:85px;max-width:24%;pointer-events:none}
.startup .start-save{display:flex;flex-direction:column;align-items:center;gap:8px;margin:18px 0 0}.startup .start-save strong{font-size:14px;font-weight:600}.startup .start-save>b{font-size:34px;line-height:1.3;font-weight:700;font-variant-numeric:tabular-nums}.startup .start-save>b small{font-size:18px;font-weight:500;color:#51615b}.startup .start-save>span{font-size:12px;color:#51615b}
.startup .start-device-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-top:19px}.startup .start-title-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.startup .start-title-actions>button{box-sizing:border-box;width:100%;min-width:0;min-height:46px}.startup .start-primary{background:#efdb8a;color:#25372c;box-shadow:0 3px 0 #927435;min-width:190px}.startup .start-primary:hover{background:#f7e4a1}.startup .start-primary:active{background:#e5ca75}.startup .start-secondary{background:transparent;color:#fff1de;border:1px solid #efc7b4;order:-1}
.startup .start-credits{display:block;min-height:44px;margin:10px auto -6px;padding:10px 8px;background:transparent;color:#fff1de;font-size:12px;font-weight:500}.startup .start-credits:hover{background:#ae332c}
.startup .start-selection{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:20px}
#starter.startup #starter-preview{position:relative;inset:auto;transform:none;width:100%;height:219px;min-height:0;display:block;touch-action:pan-y;user-select:none;-webkit-user-select:none;cursor:grab;overflow:hidden}
#starter.startup #starter-preview:active{cursor:grabbing}
#starter.startup #starter-preview canvas,#starter.startup #starter-preview img{position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:contain;pointer-events:none;margin:0;max-width:none}
#starter.startup #starter-preview img{padding:20px;filter:drop-shadow(0 7px 3px #3a543529)}
#starter.startup #starter-preview canvas{opacity:0}#starter.startup #starter-preview.model-ready canvas{opacity:1}#starter.startup #starter-preview.model-ready img{visibility:hidden}
.startup .start-copy{min-width:0}.startup .start-copy h2{font-size:30px;font-weight:750;line-height:1.25;letter-spacing:-.035em;margin:8px 0 14px;word-break:keep-all}.startup .start-number{font-size:12px;font-weight:600;line-height:1.5;letter-spacing:.08em;font-variant-numeric:tabular-nums}
.startup .start-types{display:flex;flex-wrap:wrap;gap:6px}.startup .start-types>span{font-size:13px;font-weight:600;line-height:1.45;padding:2px 7px;border-radius:4px;border:1px solid #a8b6a0;background:#dce4cc;color:#27372d;box-shadow:inset 3px 0 var(--type)}
.startup .start-copy p{font-size:13px;font-weight:400;line-height:1.5;letter-spacing:-.008em;color:#51615b;margin:10px 0;word-break:keep-all}.startup #starter-category{font-weight:500}
#starter.startup #starter-swipe-hint{text-shadow:none;position:static;transform:none;width:auto;margin:8px 0 0;text-align:center;font-size:13px;font-weight:400;line-height:1.5;color:#51615b;background:none;border:0;padding:0;letter-spacing:-.008em}
.startup .start-page-controls{display:flex;align-items:center;gap:8px;color:#fff1de}.startup .start-arrow{width:44px;min-width:44px;height:44px;display:grid;place-items:center;padding:0;background:#332d28;box-shadow:0 3px 0 #211d1a}
#starter.startup #starter-prev,#starter.startup #starter-next{position:static;transform:none;inset:auto;border-radius:5px;width:44px;height:44px;padding:0;background:#332d28;border:0;color:#fff1de;font-size:15px;display:grid}
.startup #starter-count{min-width:38px;font-size:13px;font-weight:600;line-height:1.2;letter-spacing:.025em;text-align:center;font-variant-numeric:tabular-nums;color:#fff1de}
.startup .start-loading{display:flex;min-height:260px;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:12px}.startup .start-loading>.start-number{font-size:40px;font-weight:750;letter-spacing:-.03em;color:#356349}.startup .start-loading h1{font-size:21px;font-weight:700;line-height:1.4;margin:0;color:#20302b}.startup .start-loading p{font-size:13px;color:#51615b;line-height:1.5;margin:0}.startup .progress-track{width:min(260px,100%);height:5px;background:#bcc7af;border-radius:4px;overflow:hidden}.startup #load-progress{background:#487256}
@media(max-width:600px){
 #title.startup,#starter.startup,#loading.startup{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}
 .startup .start-device{padding:15px 12px 17px;border-radius:19px 19px 30px 19px}.startup .start-device-top{gap:9px;margin-bottom:12px}.startup .start-device-top strong{font-size:17px}.startup .start-lens{width:33px;height:33px}.startup .start-display{padding:9px 12px 14px;border-width:6px;min-height:320px}.startup .start-display-top{padding-bottom:4px;margin-bottom:8px}.startup .start-home{padding:18px 0}.startup .start-home h1{font-size:21px}.startup .start-home p{font-size:13px;line-height:1.5}.startup .start-lineup img{width:65px;height:65px}.startup .start-selection{grid-template-columns:1fr;gap:5px;text-align:center}#starter.startup #starter-preview{height:180px}.startup .start-copy h2{font-size:27px;line-height:1.25;margin:5px 0 8px}.startup .start-types{justify-content:center}.startup .start-copy p{margin:7px 0}.startup .start-device-controls{gap:9px;padding-top:16px;flex-wrap:wrap}.startup .start-page-controls{justify-content:center;width:100%}.startup .start-primary{width:100%;min-width:0;min-height:46px}.startup .start-title-actions{grid-template-columns:1fr}.startup .start-secondary{order:1;width:100%}.startup .start-credits{margin-top:8px}.startup .start-display-top h1{font-size:13px}
}
@media(max-height:680px) and (max-width:600px){
 .startup .start-device{padding-top:10px;padding-bottom:12px}.startup .start-device-top{margin-bottom:7px}.startup .start-display{padding-top:4px;padding-bottom:9px;min-height:0}.startup .start-display-top{min-height:46px;margin-bottom:3px}#starter.startup #starter-preview{height:120px}.startup .start-copy h2{font-size:25px;margin:4px 0 7px}.startup .start-copy p{margin:5px 0}.startup .start-device-controls{padding-top:10px;gap:8px}.startup .start-home{padding:12px 0}.startup .start-home h1{font-size:20px}.startup .start-lineup{margin:12px 0}.startup .start-credits{margin-top:4px}
}
@media(max-height:480px) and (min-width:601px){
 #title.startup,#starter.startup,#loading.startup{padding:max(8px,env(safe-area-inset-top)) max(14px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left))}
 .startup .start-device{width:min(720px,100%);padding:10px 16px 12px;border-radius:18px 18px 27px 18px}.startup .start-device-top{margin-bottom:7px}.startup .start-lens{width:29px;height:29px}.startup .start-device-top strong{font-size:17px}.startup .start-display{min-height:0;padding:3px 14px 8px;border-width:6px}.startup .start-display-top{min-height:44px;margin-bottom:2px;padding-bottom:1px}.startup .start-home{padding:6px 0}.startup .start-home h1{font-size:21px;margin:3px 0}.startup .start-lineup{margin:6px 0}.startup .start-lineup img{width:54px;height:54px}.startup .start-home p{font-size:13px;margin:4px 0}.startup .start-device-controls{padding-top:10px;gap:12px}.startup .start-credits{margin:3px auto -6px}.startup .start-selection{gap:16px;grid-template-columns:1fr 1.2fr}#starter.startup #starter-preview{height:150px}.startup .start-copy h2{font-size:26px;margin:3px 0 8px}.startup .start-copy p{margin:5px 0}#starter.startup #starter-swipe-hint{margin-top:2px;font-size:12px}.startup .start-save{flex-direction:row;justify-content:center;margin:8px 0;gap:12px}.startup .start-save>b{font-size:26px}.startup .start-save>span{max-width:100px}.startup .start-primary{min-width:200px}
}
/* Field notices never sit over the startup device; modal error notices remain available. */
body:has(#title.startup:not(.hidden),#starter.startup:not(.hidden)):has(#modal-backdrop.hidden) :is(#toast-stack,#save-note,#cinematic){visibility:hidden;pointer-events:none}

/* Balanced move names and readable field labels. */
#hud.hud-compact .move strong{overflow-wrap:normal;word-break:normal;line-height:13px;font-weight:600;white-space:normal}
#hud.hud-compact .move strong span{display:block;white-space:nowrap}
.save-error{border-color:#ed9e7a;color:#ffe1c4}

.damage-number{font-size:18px;line-height:1.12;text-align:center}.damage-number b{display:block}.damage-number small{display:block;font-size:10px;font-weight:600}.damage-number.heavy,.damage-number.signature,.damage-number.critical{font-size:23px}
@media(max-width:900px){.damage-number{font-size:16px}.damage-number.heavy,.damage-number.signature,.damage-number.critical{font-size:20px}}

/* One pushback control serves keyboard and touch without moving the skill/ball row. */
#hud #escape-button{display:grid;grid-template-rows:14px 16px 13px;align-content:center;justify-items:center;gap:2px;flex:0 0 68px;width:68px;min-width:68px;height:64px;min-height:64px;padding:4px;border-radius:8px;background:var(--glass);border-color:#b8d9c066;backdrop-filter:blur(12px)}
#escape-button kbd{margin:0;font-size:9px;line-height:11px;padding:1px 4px}
#escape-button strong{font-size:11px;line-height:16px;white-space:nowrap}
#escape-button small{font-size:10px;line-height:13px;white-space:nowrap;font-variant-numeric:tabular-nums}
#escape-button:disabled{opacity:.65}
#partner-status{font-size:8px;line-height:11px;padding:1px 0}
#partner-status>span,#partner-status>small{display:block;white-space:nowrap}
#partner-status>small{font-size:8px;line-height:10px}
#partner-status.status-guard{background:#173e3deb;color:#bdebc9}
@media(pointer:coarse){
 #hud #escape-button{position:absolute;right:calc(var(--edge-right) + 180px);bottom:calc(var(--edge-bottom) + 118px);width:64px;min-width:64px;height:44px;min-height:44px;grid-template-rows:16px 13px;gap:1px;padding:4px}
 #escape-button kbd{display:none}
 #escape-button strong{font-size:10px}
 #escape-button:hover,#escape-button:active{transform:none}
}
@media(pointer:coarse) and (max-height:480px){
 #hud #escape-button{bottom:calc(var(--edge-bottom) + 60px)}
 #hud.hud-compact #touch-interact{right:296px}
}

/* Keep the existing Hub return link with the new title device. */
.startup .start-footer{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:0 14px}
.startup .start-footer .start-credits{margin:3px 0 -6px;text-decoration:none}
/* Camera tools supplement touch looking without changing a chosen view. */
#field-camera-controls{position:absolute;right:12px;top:150px;display:flex;align-items:center;gap:4px;pointer-events:auto}
#field-camera-controls button{min-width:44px;min-height:44px;padding:7px 10px;border-radius:7px;background:#143239eb;color:#eaf2df;font-size:13px;line-height:1.3}
#field-camera-controls #camp-overview{min-width:112px;font-size:12px}
#field-camera-controls #camp-overview[aria-pressed=true]{background:#d5e89e;color:#193628;border-color:#d5e89e}
@media(pointer:coarse){body:has(#toast-stack .toast.warn) #hud.hud-compact #tutorial-hint.first-swipe-hint:not(.hidden){display:none!important}}
#hud.in-combat #target-hud:not(.hidden),#hud.in-combat #boss-hud:not(.hidden){visibility:visible}
#hud.hud-compact #touch-interact .interaction-place{display:block!important;color:#e6edcf}
#hud.hud-compact #touch-interact .interaction-reason{display:block!important;color:#f1cb9d;font-size:10px;line-height:1.35}
#ball-stock-help{position:absolute;right:12px;bottom:158px;min-height:44px;padding:8px 12px;background:#173a42ee;border:1px solid #e8ce8a;border-radius:7px;font-size:12px;pointer-events:auto}
@media(pointer:coarse) and (min-height:481px){
 #field-camera-controls{top:auto;bottom:calc(var(--edge-bottom) + 250px);right:var(--edge-right)}
 #hud.hud-compact.skills-open #field-camera-controls{bottom:calc(var(--edge-bottom) + 306px)}
 #ball-stock-help{right:var(--edge-right);bottom:calc(var(--edge-bottom) + 132px);max-width:170px}
 #hud.hud-compact.skills-open #ball-stock-help{bottom:calc(var(--edge-bottom) + 200px)}
}
@media(pointer:coarse) and (max-height:480px){
 #field-camera-controls{top:146px;bottom:auto;right:var(--edge-right)}
 #ball-stock-help{right:var(--edge-right);bottom:calc(var(--edge-bottom) + 112px);max-width:170px}
}

/* A flowing dock keeps map scale and camera distance in separate, named groups. */
#hud{--navigation-width:192px}
#hud.hud-compact .expedition-status{align-items:center;gap:6px}
#hud.hud-compact .expedition-status>button{height:44px;min-height:44px;border-radius:10px;background:#123139ed;border-color:#a2c8bc55}
#hud.hud-compact #hud-details{min-width:78px;font-size:13px;white-space:nowrap}
#hud.hud-compact #journal-button{gap:14px;padding:7px 12px}
#hud.hud-compact #journal-button>span{letter-spacing:.06em;font-size:10px}
#hud.hud-compact #dex-count{font-size:16px;font-variant-numeric:tabular-nums}
#hud.hud-compact #dex-count i{font-size:11px;color:#bed1ca}
#hud.hud-compact .hud-map-button,#hud.hud-compact [data-panel="pause"]{display:flex;align-items:center;justify-content:center;min-width:44px;padding:0}
#hud .navigation-dock{position:absolute;top:66px;right:12px;width:var(--navigation-width);display:flex;flex-direction:column;align-items:stretch;gap:8px;pointer-events:none}
#hud.hud-compact .navigation-dock .minimap-wrap{position:static;top:auto;right:auto;width:100%;max-height:none;overflow:hidden;border:1px solid #88b8ac88;border-radius:14px;background:#123139f5;box-shadow:0 8px 24px #071d2955;pointer-events:auto}
#hud.hud-compact .navigation-dock .minimap-heading{padding:0 10px;border:0;background:transparent}
#hud .navigation-dock #minimap-toggle{width:100%;min-height:40px;gap:8px;padding:0;text-align:left}
#hud .navigation-dock #minimap-title{font-size:12px;line-height:18px;overflow:visible;text-overflow:clip}
#hud .navigation-dock .minimap-chevron{font-size:20px;line-height:20px;color:#a9d1c2;transition:transform .15s}
#hud .navigation-dock #minimap-toggle[aria-expanded="true"] .minimap-chevron{transform:rotate(180deg)}
#hud.hud-compact .navigation-dock #region-name{margin:0;padding:0 10px 9px;font-size:11px;line-height:16px;font-weight:500;color:#bad0c8;white-space:normal;overflow-wrap:anywhere}
#hud.hud-compact .navigation-dock #minimap{display:block;width:100%!important;height:auto!important;aspect-ratio:1;border-top:1px solid #91b7aa33;border-bottom:1px solid #91b7aa33}
#hud .navigation-dock .minimap-controls{display:flex;align-items:center;gap:2px;min-height:42px;padding:2px 6px;background:#102b32}
#hud .navigation-dock .minimap-scale-label{flex:1;min-width:0;font-size:10px;color:#b9d1c6;line-height:14px}
#hud .navigation-dock .minimap-controls button{flex:0 0 32px;width:32px;height:36px;min-height:36px;background:#24474c;border:1px solid #88b8ac66;border-radius:7px;font-size:20px}
#hud .navigation-dock #minimap-scale{min-width:35px;text-align:center;font-size:10px;color:#e4efdb;font-variant-numeric:tabular-nums}
#hud.hud-compact .navigation-dock .minimap-footer{height:auto;min-height:0;padding:0;border-top:1px solid #91b7aa33;background:#20434a}
#hud.hud-compact .navigation-dock #minimap-open{display:flex;align-items:center;gap:7px;flex:1;width:100%;min-height:40px;padding:0 10px;border:0;font-size:11px;background:transparent;color:#f0f5e4;text-align:left}
#hud .navigation-dock #minimap-open>span:first-child{flex:1}
#hud .navigation-dock #minimap-open kbd{padding:1px 4px;border:1px solid #91b7aa66;border-radius:4px;color:#c6d9cf;font-size:10px;background:transparent}
#hud.hud-compact .navigation-dock .is-collapsed #minimap,#hud.hud-compact .navigation-dock .is-collapsed .minimap-controls,#hud.hud-compact .navigation-dock .is-collapsed .minimap-footer{display:none}
#hud.hud-compact .navigation-dock #field-camera-controls{position:static;top:auto;right:auto;bottom:auto;display:grid;grid-template-columns:minmax(0,1fr) 40px 40px;align-items:center;gap:4px;padding:5px 6px;border:1px solid #88b8ac55;border-radius:11px;background:#123139ed;pointer-events:auto}
#hud .navigation-dock .field-camera-label{font-size:11px;line-height:16px;padding-left:3px;color:#c5d9cf}
#hud .navigation-dock #field-camera-controls button{min-width:40px;min-height:40px;height:40px;padding:0;border-radius:7px;font-size:18px;background:#24474c}
#hud .navigation-dock #field-camera-controls #camp-overview{grid-column:1/-1;grid-row:2;min-width:0;width:100%;font-size:11px}
#hud .navigation-dock button:disabled{opacity:.38;cursor:default}
#hud .navigation-dock button:focus-visible,#hud .expedition-status>button:focus-visible{outline:2px solid #def4ac;outline-offset:-3px}
@media(hover:hover){#hud .navigation-dock button:not(:disabled):hover,#hud.hud-compact .expedition-status>button:hover{background:#31575b;border-color:#a4d6c1}}
@media(max-width:600px){
 #hud{--navigation-width:168px}
 #hud .navigation-dock{top:104px}
 #hud.hud-compact .expedition-status>#journal-button,#hud.hud-compact .expedition-status>.hud-map-button{display:none}
 #hud.hud-compact .region-card,#hud.hud-compact #context,#hud.hud-compact #objective{display:none}
 #hud.hud-compact #compass,#hud.hud-compact #objective{max-width:calc(100vw - var(--navigation-width) - 36px)}
}
@media(pointer:coarse){
 #hud .navigation-dock .minimap-controls button{width:40px;flex-basis:40px;min-height:40px;height:40px}
 #hud .navigation-dock .minimap-scale-label{font-size:9px}
 #hud .navigation-dock #minimap-scale{display:none}
 #hud .navigation-dock #minimap-open{min-height:44px}
 #hud .navigation-dock #minimap-open kbd{display:none}
}
@media(max-height:700px) and (max-width:600px){
 #hud .navigation-dock{top:96px}
 #hud.hud-compact .navigation-dock #minimap{width:132px!important;height:132px!important;margin:0 auto;border:1px solid #91b7aa33}
 #hud.hud-compact .navigation-dock #field-camera-controls{position:fixed;left:12px;right:auto;top:180px;bottom:auto;width:min(146px,calc(100vw - var(--navigation-width) - 36px));grid-template-columns:1fr 1fr}
 #hud .navigation-dock .field-camera-label{grid-column:1/-1;grid-row:1;padding:2px 0 3px;text-align:center}
 #hud .navigation-dock #field-camera-controls #camp-overview{grid-row:3}
 #hud .navigation-dock #field-zoom-out{grid-column:1;grid-row:2}
 #hud .navigation-dock #field-zoom-in{grid-column:2;grid-row:2}
}
@media(max-height:480px) and (min-width:601px){
 #hud{--navigation-width:160px}
 #hud .navigation-dock{top:64px;gap:5px}
 #hud.hud-compact .navigation-dock #minimap{width:96px!important;height:96px!important;margin:0 auto;border:1px solid #91b7aa33}
 #hud.hud-compact .navigation-dock #region-name{padding-bottom:5px}
 #hud .navigation-dock #minimap-toggle{min-height:36px}
 #hud .navigation-dock .minimap-controls{display:none}
 #hud.hud-compact .navigation-dock #minimap-open{min-height:36px}
 #hud.hud-compact .navigation-dock #field-camera-controls{position:fixed;left:50%;right:auto;top:66px;bottom:auto;transform:translateX(-50%);width:min(320px,calc(100vw - 360px));grid-template-columns:minmax(0,1fr) 112px 40px 40px}
 #hud .navigation-dock #field-camera-controls #camp-overview{grid-column:2;grid-row:1}
}
@media(prefers-reduced-motion:reduce){#hud .navigation-dock .minimap-chevron{transition:none}}

/* Mobile navigation uses the bundled Korean font and leaves camera distance out. */
@media(max-width:700px),(pointer:coarse),(max-width:1000px) and (max-height:500px) and (orientation:landscape){
 #hud,#hud :is(button,input,select,kbd,output,h1,h2,h3){font-family:"Kanto Startup","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;font-synthesis:none;-webkit-font-smoothing:antialiased}
 #hud{font-weight:500;letter-spacing:0;line-height:1.5}
 #hud.hud-compact .navigation-dock #field-camera-controls{display:none}
 #hud.hud-compact #hud-details{font-size:14px;font-weight:600;letter-spacing:0}
 #hud.hud-compact #journal-button>span{font-size:11px;font-weight:600;letter-spacing:0}
 #hud.hud-compact #dex-count{font-weight:650;letter-spacing:0}
 #hud .navigation-dock #minimap-title{font-size:13px;font-weight:650;line-height:20px;letter-spacing:0}
 #hud.hud-compact .navigation-dock #region-name{font-size:12px;font-weight:500;line-height:18px;letter-spacing:0;color:#d2e2d8}
 #hud .navigation-dock .minimap-scale-label{font-size:11px;font-weight:500;line-height:16px;letter-spacing:0;color:#c5dbd0;word-break:keep-all}
 #hud .navigation-dock #minimap-scale{font-size:11px;font-weight:600;letter-spacing:0}
 #hud.hud-compact .navigation-dock #minimap-open{font-size:12px;font-weight:600;line-height:18px;letter-spacing:0}
 #hud.hud-compact .partner-info b{font-weight:650;letter-spacing:0}
 #hud .eyebrow{letter-spacing:.04em}
}

/* Keep the mobile playfield clear; open secondary information deliberately. */
@media(max-width:700px),(pointer:coarse),(max-width:1000px) and (max-height:500px) and (orientation:landscape){
 #hud{--navigation-width:128px;--edge-left:max(8px,env(safe-area-inset-left));--edge-right:max(8px,env(safe-area-inset-right));--edge-bottom:max(8px,env(safe-area-inset-bottom))}
 #hud.hud-compact .hud-top{top:max(8px,env(safe-area-inset-top));left:var(--edge-left);right:var(--edge-right);height:44px}
 #hud.hud-compact .expedition-status{gap:4px}
 #hud.hud-compact .expedition-status>button{height:44px;min-height:44px;padding:6px 8px;border-radius:9px}
 #hud.hud-compact #hud-details{width:64px;min-width:64px;flex:0 0 64px;font-size:12px}
 #hud.hud-compact .region-card,#hud.hud-compact .expedition-status>#journal-button,#hud.hud-compact .expedition-status>.hud-map-button{display:none}
 #hud.hud-compact .survival-status{top:max(8px,env(safe-area-inset-top));left:var(--edge-left);width:128px;min-height:40px;padding:5px 7px;border-radius:9px}
 #hud .survival-row{display:grid;grid-template-columns:24px minmax(0,1fr) 20px;align-items:center;gap:4px;height:13px;font-size:10px;line-height:13px}
 #hud .survival-row b{font-size:10px;text-align:right}
 #hud .survival-track{height:4px}
 #hud.hud-compact #portable-supplies{display:none}
 #hud.hud-compact.hud-details-open #portable-supplies{display:block;position:absolute;top:42px;left:0;width:128px;min-height:32px;margin:0;padding:5px 7px;font-size:11px;background:#143239f2;border:1px solid #88b8ac55;border-radius:7px}
 #hud .navigation-dock{top:60px;right:var(--edge-right);width:128px;gap:0}
 #hud.hud-compact .navigation-dock .minimap-wrap{width:128px;border-radius:10px;align-self:flex-end}
 #hud.hud-compact .navigation-dock .minimap-wrap.is-collapsed{width:88px}
 #hud.hud-compact .navigation-dock .minimap-heading{padding:0 8px}
 #hud .navigation-dock #minimap-toggle{min-height:40px;gap:4px}
 #hud .navigation-dock #minimap-title{font-size:12px;line-height:18px}
 #hud .navigation-dock .minimap-chevron{font-size:16px}
 #hud.hud-compact .navigation-dock #region-name{padding:0 8px 5px;font-size:11px;line-height:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 #hud.hud-compact .navigation-dock .is-collapsed #region-name{display:none}
 #hud.hud-compact .navigation-dock #minimap{width:112px!important;height:112px!important;margin:0 auto;border:1px solid #91b7aa33}
 #hud .navigation-dock .minimap-controls{display:none}
 #hud.hud-compact .navigation-dock #minimap-open{min-height:40px;padding:0 8px;font-size:11px}
 #hud .navigation-dock #minimap-open kbd{display:none}
 #hud.hud-compact #compass{top:60px;left:var(--edge-left);width:auto;max-width:calc(100vw - 160px);min-height:32px;height:32px;max-height:32px;padding:5px 8px;border-radius:9px;font-size:11px;line-height:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transform:none}
 #hud.hud-compact #compass::after{display:none}
 #hud.hud-compact.hud-details-open #compass{top:96px}
 #hud.hud-compact #objective,#hud.hud-compact #context,#hud.hud-compact #swipe-move-hint{display:none}
 #hud.hud-compact #tutorial-hint:not(.first-swipe-hint){display:none!important}
 #hud.hud-compact #tutorial-hint.first-swipe-hint{bottom:224px;max-height:36px;max-width:280px;padding:4px 8px;font-size:11px;line-height:16px;overflow:hidden}
 #hud.hud-compact .hud-bottom{position:static}
 #hud.hud-compact .partner-card{position:absolute;top:auto;bottom:calc(var(--edge-bottom) + 44px);left:var(--edge-left);width:144px;min-height:48px;max-height:58px;height:auto;padding:5px 6px;gap:5px}
 #hud.hud-compact .partner-card>.partner-portrait{display:block;flex:0 0 26px;width:26px;min-width:26px;height:32px;padding:0}
 #hud.hud-compact .partner-info b{font-size:12px;line-height:16px}
 #hud.hud-compact .partner-info .hp-track{margin-top:3px}
 #hud.hud-compact .partner-info .exp-track{margin-top:2px}
 #hud.hud-compact .partner-info small,#hud.hud-compact .partner-info span{font-size:9px;line-height:12px;margin:0}
 #hud.hud-compact #throw-button{position:absolute;top:auto;left:auto;right:var(--edge-right);bottom:calc(var(--edge-bottom) + 44px);width:52px;min-width:52px;height:48px;min-height:48px;padding:4px}
 #hud.hud-compact #throw-button kbd{display:none}
 #hud.hud-compact .quick-nav{top:auto;bottom:var(--edge-bottom);left:var(--edge-left);right:var(--edge-right);display:flex;justify-content:flex-start;gap:4px;min-height:36px;padding:0;background:none;border:0}
 #hud.hud-compact .quick-nav button{min-width:44px;min-height:36px;padding:5px 8px;font-size:11px}
 #hud.hud-compact .quick-nav kbd{display:none}
 #hud.hud-compact #touch-controls{position:absolute;top:auto;bottom:calc(var(--edge-bottom) + 100px);left:var(--edge-left);right:var(--edge-right);display:block;height:44px;pointer-events:none}
 #hud.hud-compact .touch-pad,#hud.hud-compact #touch-sprint{display:none}
 #hud.hud-compact .touch-actions{position:absolute;right:0;bottom:0;display:flex;gap:4px;width:auto;max-width:none;pointer-events:auto}
 #hud.hud-compact .touch-actions button{width:44px;min-width:44px;height:44px;min-height:44px;padding:4px;font-size:11px}
 #hud.hud-compact #touch-interact{position:absolute;left:auto;right:0;bottom:52px;width:164px;min-width:0;max-width:164px;min-height:44px;max-height:50px;padding:5px 8px;text-align:left;pointer-events:auto;overflow:hidden;white-space:nowrap}
 #hud.hud-compact #touch-interact:disabled{display:none}
 #hud.hud-compact #touch-interact b{display:block;font-size:12px;line-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #hud.hud-compact #touch-interact .interaction-place{font-size:10px;line-height:14px;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 #hud.hud-compact #touch-interact .interaction-reason,#hud.hud-compact #touch-interact .interaction-detail{display:none!important}
 #hud.hud-compact.skills-open #touch-interact{bottom:108px}
 #hud.hud-compact .move-bar{display:none;position:absolute;left:auto;right:var(--edge-right);bottom:calc(var(--edge-bottom) + 156px);max-width:calc(100vw - 16px);gap:4px;margin:0}
 #hud.hud-compact.skills-open .move-bar{display:flex}
 #hud.hud-compact .move{width:52px;min-width:0;height:52px;min-height:52px;padding:5px}
 #hud.hud-compact .move strong{font-size:10px;line-height:12px;margin-top:0}
 #hud.hud-compact #escape-button{display:none;position:absolute;top:auto;right:calc(var(--edge-right) + 60px);bottom:calc(var(--edge-bottom) + 44px);width:58px;min-width:58px;height:48px;min-height:48px;padding:4px}
 #hud.hud-compact.in-combat #escape-button{display:grid}
 #hud.hud-compact #escape-button kbd{display:none}
 #hud.hud-compact #escape-button strong{font-size:10px}
 #hud.hud-compact .target-hud{top:104px;left:var(--edge-left);width:144px;padding:6px}
}
@media(max-width:1000px) and (max-height:500px) and (orientation:landscape){
 #hud.hud-compact .navigation-dock #minimap{width:80px!important;height:80px!important}
 #hud.hud-compact .navigation-dock #region-name{display:none}
}
