:root{color-scheme:dark;--ink:#eee4c9;--muted:#b5bba8;--gold:#d4b779;--gold-dark:#806b45;--forest:#172c26;--panel:#17241f;--burgundy:#65373b;--line:#776445;--shadow:0 8px 30px #080e0bd9;--body:Georgia,'Times New Roman',serif}
*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{background:#101a17;color:var(--ink);font:15px/1.45 var(--body)}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.46}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #f4d685;outline-offset:3px}[hidden]{display:none!important}#game{position:relative;width:100%;height:100%;height:100dvh;overflow:hidden;background:#152820}#world{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;touch-action:none}.loading-veil{position:absolute;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:10px;background:radial-gradient(circle,#28473b,#101c17 70%);letter-spacing:.18em;color:#d8bd84}.loading-veil strong{font-size:clamp(22px,5vw,38px);font-weight:normal}.loading-veil span{font-size:12px;letter-spacing:.05em;color:var(--muted)}.loading-mark{font-size:34px;border:1px solid #a9905c;width:72px;height:72px;display:grid;place-items:center;transform:rotate(45deg);margin-bottom:15px}.hud-top{position:absolute;z-index:3;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:max(12px,env(safe-area-inset-right));display:flex;align-items:flex-start;gap:8px;pointer-events:none}.identity,.lead-status,.hud-currency,.quest-tracker,.party-strip,.hearth{background:linear-gradient(145deg,#263a30ed,#121e1bef);border:1px solid #91774d;border-radius:5px;box-shadow:0 2px 10px #0008}.identity{display:flex;align-items:center;gap:9px;min-width:170px;padding:7px 10px}.identity-crest{display:grid;place-items:center;width:34px;height:34px;border:1px solid #ad915f;border-radius:50%;color:#ecd59e;font-size:20px;background:#42372b}.identity strong,.identity span:not(.identity-crest){display:block}.identity strong{font-size:15px}.identity div span{font-size:11px;color:#c6cbb8}.lead-status{width:220px;padding:6px 10px}.lead-title,.xp-line{display:flex;align-items:center;justify-content:space-between;gap:8px}.lead-title{font-size:12px}.lead-title span,.xp-line span{font-size:10px;color:#d1d5bd;white-space:nowrap}.hud-currency{margin-left:auto;display:flex;gap:13px;padding:10px;color:#dbc28b;font-size:12px}.hud-currency b{color:#f2e7cd}.quest-tracker{position:absolute;z-index:3;top:77px;left:max(12px,env(safe-area-inset-left));display:flex;align-items:center;gap:8px;text-align:left;max-width:280px;padding:8px 11px}.quest-tracker:hover,.hearth:hover{border-color:#e1c78c;background:#304239}.tracker-mark{font-size:21px;color:var(--gold)}.quest-tracker strong,.quest-tracker small{display:block}.quest-tracker strong{font-size:12px}.quest-tracker small{font-size:11px;color:#c1c8b4}.party-strip{position:absolute;top:77px;right:max(12px,env(safe-area-inset-right));padding:4px;display:flex;gap:4px}.party-strip:empty{display:none}.party-strip button{min-width:36px;min-height:36px}.hud-nav{position:absolute;z-index:4;bottom:max(14px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;gap:2px;padding:4px;background:#15231ff2;border:1px solid #9c8051;border-radius:6px;box-shadow:var(--shadow)}.hud-nav button{min-width:68px;padding:4px 7px;background:transparent;border:0;border-radius:3px;font-size:11px;color:#e4dac0;white-space:nowrap}.hud-nav button span{display:block;color:#d6b979;font-size:19px;line-height:1.1}.hud-nav button:hover,.hud-nav button[aria-pressed=true],.hud-nav button.active{background:#526046;color:#fff4d7}.hearth{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:max(16px,env(safe-area-inset-bottom));z-index:4;padding:9px 12px;color:#ead5a4;font-size:12px}.touch-controls{display:none;position:absolute;z-index:4;inset:0;pointer-events:none}.interact{pointer-events:auto;touch-action:none;user-select:none;-webkit-user-select:none;background:#1c302bdc;border:1px solid #b19a6c;color:#f2dfae;box-shadow:0 2px 7px #0008}.interact:active{background:#776744}.interact{position:absolute;right:max(14px,env(safe-area-inset-right));bottom:82px;min-width:84px;min-height:54px;border-radius:30px;font-weight:bold}.zone-loading,.toast{position:absolute;z-index:45;left:50%;transform:translateX(-50%);padding:8px 15px;background:#172720f2;border:1px solid #a68a58;border-radius:4px;box-shadow:var(--shadow);text-align:center}.zone-loading{top:45%}.toast{top:max(75px,env(safe-area-inset-top));pointer-events:none;max-width:min(90%,450px)}.toast:empty{display:none}
meter{display:block;width:100%;height:9px;appearance:none;border:0;background:none}meter::-webkit-meter-bar{height:8px;border:1px solid #0d1612;border-radius:8px;background:#0a1410}meter::-webkit-meter-optimum-value{border-radius:8px;background:linear-gradient(#98be76,#4f874c)}meter::-moz-meter-bar{border-radius:8px;background:#70a65d}#lead-xp{height:5px}#lead-xp::-webkit-meter-bar{height:4px}#lead-xp::-webkit-meter-optimum-value{background:#8aaad2}#lead-xp::-moz-meter-bar{background:#8aaad2}
dialog{position:fixed;z-index:30;width:min(880px,calc(100vw - 28px));max-width:none;max-height:min(790px,calc(100dvh - 28px));padding:0;color:var(--ink);background:linear-gradient(150deg,#263b30,#17241f 68%);border:1px solid #ba9a63;border-radius:7px;box-shadow:0 0 0 3px #29372c,var(--shadow);overflow:hidden}dialog::backdrop{background:#09110dc7;backdrop-filter:blur(2px)}dialog>header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 20px;background:linear-gradient(90deg,#49312e,#302927 75%,#26342b);border-bottom:1px solid #98784d}#panel-kicker,.eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#d2b57b;font-size:10px;font-weight:bold}#panel-title{margin:1px 0 0;font-size:25px;font-weight:normal;line-height:1.1}#panel-close{display:grid;place-items:center;flex:none;width:36px;height:36px;border:1px solid #927650;border-radius:4px;background:#211f1c;font-size:24px;line-height:1}#panel-close:hover{background:#6a3d3d}#panel-body{max-height:calc(min(790px,100dvh - 28px) - 76px);overflow:auto;overscroll-behavior:contain;padding:20px;scrollbar-color:#967c50 #17241f}h1,h2,h3,h4,p{margin-top:0}h3{font-size:19px;font-weight:normal;color:#f1ddad}h4{color:#e8d5a8}.intro-copy,.narrative{font-size:15px;line-height:1.65;color:#e0d6bb}.muted,.small{color:var(--muted)}.small{font-size:12px}.actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.primary,.secondary,.danger,.tabs button,.battle-move,.battle-switch,.actions button,.list-row button,.card button,.shop-row button,.zone-card button,.banner button{min-height:38px;padding:8px 14px;border:1px solid #96794f;border-radius:4px;background:linear-gradient(#455743,#2a3d31);color:#f4e7c5}.primary{background:linear-gradient(#8b6e45,#635031);border-color:#d0ac6c;font-weight:bold}.secondary{background:#263a30}.danger{background:#60383a;border-color:#aa7270}.primary:hover,.secondary:hover,.danger:hover,.tabs button:hover,.actions button:hover,.card button:hover,.battle-move:hover,.battle-switch:hover{filter:brightness(1.2)}.grid,.cards,.move-grid,.starter-grid,.save-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:10px}.card,.company-card,.dex-card,.zone-card,.move-card,.starter-card,.lobby-save,.shop-row,.quest-row,.reward,.banner,.featured,.battle-result{border:1px solid #665d45;border-radius:5px;background:#101e1ac9;padding:13px;box-shadow:inset 0 1px #ffffff0c}.card h3,.company-card h3,.zone-card h3,.move-card h3,.starter-card h3{margin:0 0 5px}.portrait{display:block;image-rendering:pixelated;object-fit:contain;max-width:100%;background:radial-gradient(ellipse at center,#455a46aa,transparent 72%)}.star{color:#eacb79}.type-chip{display:inline-block;font:700 10px/1.3 system-ui,sans-serif;letter-spacing:.04em;padding:3px 7px;border:1px solid #a99d75;border-radius:12px;background:#435949;color:#fff4dd}.type-chip[data-type=Fire]{background:#813e33}.type-chip[data-type=Water]{background:#345f81}.type-chip[data-type=Earth]{background:#6b5d37}.type-chip[data-type=Air],.type-chip[data-type=Wind]{background:#54796b}.type-chip[data-type=Light]{background:#8c7950;color:#fffce8}.type-chip[data-type=Dark]{background:#51445e}.type-chip[data-type=Ice]{background:#4f8087}.type-chip[data-type=Nature]{background:#466c42}.type-chip[data-type=Lightning]{background:#7b703a}.stats-grid,.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:7px}.stats-grid dl,.facts dl{margin:0;padding:8px;background:#0c1915;border:1px solid #485447;border-radius:3px}.stats-grid dt,.facts dt{color:#b9c0ad;font-size:11px}.stats-grid dd,.facts dd{margin:2px 0 0;color:#f0dbad;font-weight:bold}.tabs{display:flex;gap:5px;overflow:auto;margin-bottom:14px}.tabs button{white-space:nowrap}.tabs button.active,.tabs button[aria-selected=true]{background:#735b37;border-color:#e1c180;color:white}.list{display:grid;gap:6px}.list-row,.quest-row,.shop-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border-bottom:1px solid #505b48}.empty{padding:25px;text-align:center;color:var(--muted);border:1px dashed #66745d;border-radius:4px}.map-grid,.dex-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.zone-card,.dex-card,.starter-card{min-width:0}.zone-card:hover,.dex-card:hover,.starter-card:hover,.company-card:hover{border-color:#bca06c}.zone-card.active,.dex-card.active,.starter-card.active,.company-card.active,.selected{border-color:#e0bf79;box-shadow:inset 0 0 0 1px #e0bf79}.badge-row{display:flex;gap:5px;flex-wrap:wrap}.move-name{font-weight:bold;color:#f0d9a5}.move-meta{font-size:11px;color:#bdc5b3}.progress-bar{height:8px;background:#0b1712;border:1px solid #51624d;border-radius:8px;overflow:hidden}.progress-bar>span,.progress-bar>i{display:block;height:100%;background:#82a76b}.detail-layout{display:grid;grid-template-columns:minmax(120px,220px) minmax(0,1fr);gap:18px}.narrative{padding:15px 18px;border-left:2px solid #b09158;background:#d4b2710b}.reward{border-color:#a18a59;background:#3a3926}.quest-row.completed{opacity:.68}.banner{background:linear-gradient(110deg,#4e3531,#20352c);border-color:#ab8a55}.featured{border-color:#b99a62}.kbd{display:inline-block;padding:1px 5px;border:1px solid #998763;border-radius:3px;background:#1a231d;font:11px system-ui,sans-serif}
#battle{position:absolute;z-index:20;inset:0;display:flex;flex-direction:column;background:#111d18;color:#f1e5c9}.battle-top{position:relative;z-index:2;display:flex;justify-content:space-between;align-items:center;gap:10px;padding:10px max(18px,env(safe-area-inset-left));background:#1a2820;border-bottom:1px solid #9e8352}.battle-top strong{display:block;font-size:18px;font-weight:normal}.battle-top #battle-turn{color:#e1c88f;font-size:12px}.battle-stage{position:relative;flex:1;min-height:170px;overflow:hidden;background:radial-gradient(ellipse at 50% 72%,#77906555,transparent 48%),linear-gradient(#182e27 0%,#314633 60%,#1c3023 60%,#14241a 100%)}.battle-stage:before,.battle-stage:after{content:"";position:absolute;bottom:14%;width:35%;height:12%;border-radius:50%;background:#9da88116;box-shadow:0 0 0 2px #a4ad7d14}.battle-stage:before{left:9%}.battle-stage:after{right:9%}.battle-stage canvas{position:absolute;z-index:1;bottom:14%;width:min(28vw,220px);height:auto;image-rendering:pixelated;filter:drop-shadow(0 8px 5px #0009)}#battle-player-sprite{left:16%}#battle-enemy-sprite{right:16%}.combatant{position:absolute;z-index:2;top:13%;width:min(250px,38%);padding:10px 12px;border:1px solid #a58b59;border-radius:5px;background:#17261feF;box-shadow:0 4px 14px #0007}.combatant.ally{left:5%}.combatant.enemy{right:5%}.combatant>div:first-child{display:flex;justify-content:space-between;gap:6px}.combatant strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.combatant span{font-size:11px;color:#c5c9b5}.combatant meter{margin-top:6px}.combatant>span:last-child{display:block;text-align:right}.combat-types{display:flex;flex-wrap:wrap;gap:4px;min-height:6px}.battle-bottom{z-index:2;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(300px,1.5fr);gap:10px;padding:12px max(16px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left));background:#1b2a22;border-top:1px solid #a58a59}.battle-bottom #battle-log{max-height:142px;min-height:84px;overflow:auto;overscroll-behavior:contain;padding:10px 12px;border:1px solid #675b43;border-radius:4px;background:#0f1a16;color:#ddd4bb;font-size:13px}.battle-command{min-width:0}#battle-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}#battle-tools{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.battle-move,.battle-switch,#battle-controls button,#battle-tools button{min-width:0;min-height:42px;padding:7px 10px;text-align:left;border:1px solid #8f7850;border-radius:4px;background:#344b39;color:#f4e8ca}.battle-move:disabled,.battle-switch:disabled{opacity:.45}.battle-result{max-width:600px;margin:auto}.battle-result h2{color:#efdbad}
@media (pointer:coarse){.touch-controls{display:block}.hud-nav{bottom:max(8px,env(safe-area-inset-bottom))}.hearth{bottom:155px}.quest-tracker{max-width:230px}}
@media (max-width:700px){body{font-size:14px}.hud-top{top:max(7px,env(safe-area-inset-top));left:max(7px,env(safe-area-inset-left));right:max(7px,env(safe-area-inset-right));gap:4px}.identity{min-width:0;padding:5px 7px}.identity-crest{width:28px;height:28px;font-size:16px}.identity strong{font-size:12px}.identity div span{font-size:10px}.lead-status{width:min(155px,36vw);padding:5px 7px}.lead-title{font-size:11px}.hud-currency{gap:6px;padding:7px;font-size:10px}.quest-tracker{top:59px;left:max(7px,env(safe-area-inset-left));max-width:190px;padding:5px 8px}.quest-tracker strong,.quest-tracker small{font-size:10px}.party-strip{top:59px;right:7px}.hud-nav{width:calc(100% - 14px);justify-content:space-around;gap:0;padding:3px}.hud-nav button{min-width:0;flex:1 1 auto;padding:4px 2px;font-size:9px;letter-spacing:-.02em}.hud-nav button span{font-size:16px}.hearth{font-size:11px;padding:7px 9px}dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px)}dialog>header{padding:11px 14px}#panel-title{font-size:21px}#panel-body{padding:14px;max-height:calc(100dvh - 84px)}.detail-layout{grid-template-columns:1fr}.detail-layout>.portrait{max-height:160px;margin:auto}.battle-top{padding:7px 12px}.battle-top strong{font-size:15px}.battle-stage canvas{width:min(34vw,180px);bottom:12%}#battle-player-sprite{left:9%}#battle-enemy-sprite{right:9%}.combatant{top:7%;padding:7px 8px;font-size:12px}.battle-bottom{grid-template-columns:1fr;padding:7px 8px max(8px,env(safe-area-inset-bottom));gap:6px}.battle-bottom #battle-log{min-height:42px;max-height:62px;padding:5px 8px;font-size:12px}#battle-controls{gap:4px}#battle-controls button,#battle-tools button{min-height:38px;padding:5px 8px}.toast{top:70px}}
@media (max-height:480px) and (orientation:landscape){.hud-nav{bottom:5px}.interact{bottom:55px}.hearth{right:8px;bottom:116px}.battle-bottom{grid-template-columns:minmax(120px,.7fr) 2fr;padding:5px 10px}.battle-bottom #battle-log{min-height:40px;max-height:85px}.battle-stage canvas{width:min(22vw,150px)}.combatant{top:4%}}
input,select,textarea{max-width:100%;padding:8px 10px;border:1px solid #8b7851;border-radius:4px;background:#101d18;color:#f3e8cd}input[type=radio]{accent-color:#c8aa6f}.starter-card:has(input:checked){border-color:#e1c17e;box-shadow:inset 0 0 0 1px #e1c17e}.toast.error{border-color:#cf8981;color:#ffe3da}summary{cursor:pointer;color:#e9d4a4;padding:8px 0}summary:focus-visible{outline:3px solid #f4d685;outline-offset:2px}
@media (max-width:700px){.combatant>div:first-child{display:block}.combatant>div:first-child strong,.combatant>div:first-child span{display:block;white-space:normal;overflow:visible}}
.battle-move strong,.battle-move .move-meta{display:block}
.affinity-table{overflow:auto;max-width:100%;border:1px solid #665d45;border-radius:4px}.affinity-table table{border-collapse:collapse;min-width:580px;width:100%;font-size:12px}.affinity-table th,.affinity-table td{padding:9px 7px;border-bottom:1px solid #485447;text-align:center}.affinity-table th:first-child{position:sticky;left:0;background:#17261f;min-width:84px}.affinity-table .effective{color:#e9c969;font-weight:bold;background:#705d262f}.affinity-table .resisted{color:#9eb8cb;background:#34566c33}.battle-party-count{align-self:center;color:#c8c5ad;font-size:11px}.type-chip[data-type=Metal]{background:#535e65}.type-chip[data-type=Nature]{background:#466c42}
.shiny-label{color:#e7cc7a;letter-spacing:.05em}.party-strip canvas{background:transparent;image-rendering:pixelated}.party-strip button{display:flex;align-items:center;gap:2px;min-width:42px}.party-strip small{color:#e8d9b7}
/* An illustrated field atlas: the scroll region keeps its labels readable on phones. */
.atlas-key{display:flex;flex-wrap:wrap;gap:5px 16px;margin:10px 0;color:#d7c397;font-size:11px}.atlas-map-scroll{max-width:100%;overflow:auto;overscroll-behavior:contain;border:2px solid #927546;border-radius:4px;background:#819588;box-shadow:inset 0 0 0 2px #ead4a0}.atlas-map{position:relative;width:max(100%,740px);aspect-ratio:1000/620;color:#352c20}.atlas-map svg{display:block;width:100%;height:100%}.map-road{fill:none;stroke:#7d6b4d;stroke-width:4;stroke-dasharray:7 10;stroke-linecap:round;opacity:.62}.map-road.is-traveled{stroke:#a37020;stroke-width:5;stroke-dasharray:none;opacity:.9}.map-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:0;min-width:68px;max-width:100px;padding:3px 6px;border:1px solid #806238;border-radius:4px;background:#efe0bfe8;box-shadow:0 2px 3px #47382055;color:#382d21;text-align:center;line-height:1.1;font-size:11px}.map-node strong{font-size:13px}.map-node small{font-size:10px;color:#66573c}.map-node .map-pin{font-size:14px;color:#775e38;line-height:1}.map-node.is-visited{border-color:#9a6c20;background:#f5df9d}.map-node.is-current{border:2px solid #335a41;background:#f8eabf;box-shadow:0 0 0 3px #3d6e5080}.map-node.is-objective{outline:2px solid #a76821;outline-offset:2px}.map-node.is-objective .map-pin{color:#a86212}.map-node:disabled{opacity:1;cursor:default}.map-node:disabled:not(.is-current){filter:grayscale(.75);background:#d0c6a8;color:#685f4d}.map-node:not(:disabled):hover{background:#fff1c5;box-shadow:0 2px 8px #33251799}.map-node:focus-visible{outline:3px solid #402a19;outline-offset:3px;z-index:2}.atlas-pan-hint{margin:7px 0 15px}.atlas-map-scroll:focus-visible{outline:3px solid #f4d685;outline-offset:3px}
.atlas-route{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-left:2px solid #c4a56b;background:#d4b2710b}.atlas-route strong{color:#e8d6ad}.atlas-route button{flex:none}.map-node,.map-node.is-visited,.map-node.is-current,.map-node:disabled:not(.is-current){border:0;background:transparent;box-shadow:none;filter:none;color:#382d21;text-shadow:0 1px 1px #f7eac8}.map-node .map-pin{display:grid;place-items:center;width:23px;height:23px;border:1px solid #846c45;border-radius:50%;background:#f4e3bc;color:#745b36;font-size:13px;box-shadow:0 1px 4px #3c2d1555}.map-node.is-visited .map-pin{background:#e8c977;border-color:#a26e20;color:#91631d}.map-node.is-current .map-pin{background:#e9efc9;border:2px solid #416a4a;box-shadow:0 0 0 3px #3d6e5080}.map-node.is-objective{outline:0}.map-node.is-objective .map-pin{outline:2px solid #b66a1c;outline-offset:3px}.map-node:disabled:not(.is-current){color:#514937}.map-node:disabled:not(.is-current) .map-pin{background:#d6ccb3;border-color:#9a9078;color:#817966}.map-node:not(:disabled):hover{background:#fbebc7a8;box-shadow:none}.map-node:focus-visible{outline:3px solid #402a19;outline-offset:1px}.map-node small{color:inherit}.atlas-route .actions{margin:0}@media(max-width:500px){.atlas-route{align-items:flex-start;flex-direction:column}.atlas-route button{min-height:34px;padding:5px 10px}}
/* The book's panels use compact wood, parchment and brass, while the world stays unobstructed. */
body[data-ui-panel="lobby"] #game::before,body[data-ui-panel="create"] #game::before{content:"";position:absolute;z-index:2;inset:0;pointer-events:none;background-image:linear-gradient(#101b13a8,#10170fbf),var(--lobby-art,none);background-size:cover;background-position:center}
.battle-stage{background-image:linear-gradient(0deg,#101d18a8,#182b2533 55%,#13241c80),var(--battle-art,linear-gradient(#182e27 0%,#314633 60%,#1c3023 60%,#14241a 100%));background-size:cover;background-position:center}
.panel-header-actions{display:flex;gap:7px;align-items:center}.panel-header-actions #panel-back{min-height:36px;padding:5px 10px;border:1px solid #927650;border-radius:4px;background:#211f1c;color:#ead8ad;font-size:12px}.panel-header-actions #panel-back:hover{background:#4b4030}#panel-body{font-size:14px;line-height:1.42}#panel-body h3{margin:16px 0 8px}#panel-body h4{margin:0;color:#ead7ac}#panel-body p{margin-bottom:9px}.panel-summary{display:flex;align-items:center;flex-wrap:wrap;gap:5px 14px;margin-bottom:12px;padding:8px 10px;border:1px solid #766441;border-radius:4px;background:#403a2899;color:#e6d4ac}.panel-summary span{color:#c4c9b4;font-size:12px}.dex-filters{display:grid;grid-template-columns:minmax(140px,1.5fr) repeat(4,minmax(85px,1fr));gap:7px}.dex-filters label{display:grid;gap:3px;color:#cfc6a9;font-size:11px}.dex-filters input,.dex-filters select{width:100%;min-width:0;padding:7px;font-size:12px}.company-card{display:grid;grid-template-columns:82px minmax(0,1fr);gap:4px 10px;align-content:start}.company-card>.portrait{grid-row:1/4;grid-column:1;width:78px;height:80px}.company-card h3,.company-card>p,.company-card>div:not(.actions){grid-column:2;margin:0!important}.company-card>.actions{grid-column:1/-1}.company-card.empty{display:block}.dex-card .portrait{width:80px;height:80px;margin:auto}.dex-card{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}.dex-card .actions{margin-top:auto}.profile-portrait{text-align:center;background:linear-gradient(180deg,#42554188,#18251b55);border:1px solid #796a4b;border-radius:5px;padding:12px}.profile-portrait .portrait{width:100%;max-height:175px;margin:auto}.profile-flavour{font-style:italic;color:#d7ceb1}.equipment-slot{margin:12px 0;padding:10px 12px;background:#293729;border:1px solid #8b7650;border-radius:4px}.equipment-slot>div:first-child strong,.equipment-slot>div:first-child .eyebrow{display:block}.equipment-slot p{margin:3px 0}.gear-choice,.supply-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 10px;border:1px solid #596350;background:#101e19a8;border-radius:4px}.gear-choice+.gear-choice,.supply-row+.supply-row{margin-top:5px}.gear-choice p{margin:2px 0}.item-count{color:#d8bb80;font-size:12px}.supply-row>div{width:100%}.supply-row details .actions{margin-top:5px}.quest-list{display:grid;gap:9px}.quest-entry{padding:11px 13px;border:1px solid #69634b;border-left:3px solid #aa8b56;border-radius:4px;background:#101e19b8}.quest-entry.completed{opacity:.76;border-left-color:#65815f}.quest-heading{display:flex;justify-content:space-between;gap:10px}.quest-heading h4{font-size:15px}.quest-objectives{list-style:none;margin:7px 0;padding:0}.quest-objectives li{padding:2px 0;color:#e3d9c1}.quest-objectives span{display:inline-block;color:#cfb778;width:16px}.quest-reward{color:#dfc998;font-size:12px}.quest-reward strong{margin-right:5px}.npc-conversation{display:grid;grid-template-columns:minmax(110px,180px) minmax(0,1fr);gap:14px;align-items:start}.npc-portrait{width:100%;max-height:240px;object-fit:cover;border:1px solid #a58a59;border-radius:5px;background:#24372a}.npc-fallback{width:100%;height:145px}.battle-result{background:linear-gradient(135deg,#55462c,#1d3025);border:1px solid #c0a26b;box-shadow:0 8px 24px #0009;padding:18px}.battle-result h2,.battle-result h3{color:#f4e2b5}.battle-result .reward{background:#18271e;border-color:#a68d5e}.battle-move{line-height:1.25}.battle-move .move-meta{margin-top:3px}.battle-bottom #battle-log p{margin:0 0 5px}.battle-bottom #battle-log p:last-child{margin-bottom:0}
@media(max-width:700px){.dex-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.dex-filters label:first-child{grid-column:1/-1}.company-card{grid-template-columns:76px minmax(0,1fr)}.profile-portrait{display:grid;grid-template-columns:100px 1fr;align-items:center;gap:4px 10px;text-align:left}.profile-portrait .portrait{grid-row:1/5;width:100px;height:110px}.profile-portrait p{margin:2px 0!important}.npc-conversation{grid-template-columns:96px minmax(0,1fr);gap:9px}.npc-portrait{max-height:150px}.npc-fallback{height:105px}.actions button,.primary,.secondary,.danger{min-height:40px}}
@media(max-width:360px){.npc-conversation{grid-template-columns:1fr}.npc-portrait,.npc-fallback{width:96px;max-height:110px;margin:auto}}
@media(max-width:360px){#panel-kicker{font-size:9px;letter-spacing:.08em;white-space:nowrap}.panel-header-actions #panel-back{white-space:nowrap}}
#battle-controls>.battle-result{grid-column:1/-1;max-width:none;max-height:min(38dvh,280px);overflow:auto;overscroll-behavior:contain;padding:10px 12px}#battle-controls>.battle-result h3{margin:0 0 3px;font-size:18px}#battle-controls>.battle-result p{margin:0 0 5px}#battle-controls>.battle-result .reward{padding:7px 10px}#battle-controls>.battle-result .reward ul,#battle-controls>.battle-result details ul{margin:3px 0;padding-left:18px}#battle-controls>.battle-result .actions{margin-top:6px}
.battle-result-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.battle-result-head button{flex:none;min-height:38px}
body[data-ui-panel="lobby"] #game::before,body[data-ui-panel="create"] #game::before{background-image:linear-gradient(#101b134d,#10170f8a),var(--lobby-art,none)}
body[data-ui-panel="lobby"] dialog::backdrop,body[data-ui-panel="create"] dialog::backdrop{background:#09110d55;backdrop-filter:blur(1px)}
/* Each companion's three paths remain readable without sideways scrolling. */
.talent-intro{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px;padding:11px 13px;border:1px solid #87734f;border-radius:5px;background:linear-gradient(105deg,#443829,#20362b)}.talent-intro p{margin:4px 0 0!important;color:#e2d7ba;font-size:12px;line-height:1.45}.talent-points{flex:none;min-width:105px;padding:7px 10px;text-align:center;border-left:1px solid #a98d5b;color:#d7c393}.talent-points strong,.talent-points span,.talent-points small{display:block}.talent-points strong{font-size:24px;line-height:1;color:#f7dfa0}.talent-points span{font-size:11px;text-transform:uppercase;letter-spacing:.08em}.talent-points small{margin-top:4px;font-size:10px}.talent-tree{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.talent-branch{min-width:0;padding:9px;border:1px solid #796749;border-radius:5px;background:#101c17aa}.talent-branch h3{margin:0 0 9px!important;font-size:16px;color:#efdbad}.talent-branch-nodes{display:grid;gap:7px}.talent-node{min-width:0;padding:9px;border:1px solid #56604e;border-radius:4px;background:#1c2d22}.talent-node.is-available{border-color:#b99a60;background:#31402c}.talent-node.is-learned{border-color:#8eaa78;background:#304635}.talent-node.is-locked{background:#1a2720}.talent-node-heading{display:flex;align-items:center;gap:7px}.talent-node-heading strong,.talent-node-heading .small{display:block}.talent-node-heading strong{font-size:13px;color:#f1e1bd}.talent-node-heading .small{font-size:10px}.talent-tier{display:grid;place-items:center;flex:none;width:27px;height:27px;border:1px solid #99855d;border-radius:50%;color:#e4c98f;font-size:12px;font-weight:bold}.talent-node.is-learned .talent-tier{background:#71845a;color:#fff4d7}.talent-node p{margin:7px 0!important;color:#d6d3bc;font-size:12px;line-height:1.35}.talent-node-footer{display:flex;align-items:center;justify-content:space-between;gap:6px}.talent-state{color:#d4c39a;font-size:10px;line-height:1.25}.talent-node-footer button{flex:none;min-height:34px;padding:5px 8px;border:1px solid #a68c5d;border-radius:4px;background:#46583c;color:#f3e7c8;font-size:12px}.talent-node-footer button:not(:disabled):hover{background:#6a744d}.talent-node-footer button:disabled{opacity:.65;background:#263127;color:#c5c5ad}.talent-reset{margin-top:12px;padding:4px 10px 10px;border:1px solid #6f6048;border-radius:4px;background:#1b2820}.move-description{margin:5px 0 0!important;line-height:1.35}
@media(max-width:700px){.talent-intro{align-items:flex-start;gap:7px}.talent-points{min-width:82px;padding:5px}.talent-tree{grid-template-columns:1fr}.talent-branch{padding:9px}.talent-node-footer button{min-height:40px;min-width:62px}}
@media(max-width:500px){.talent-intro{display:block}.talent-points{display:flex;align-items:baseline;justify-content:flex-start;gap:6px;min-width:0;margin-top:8px;padding:7px 0 0;border-left:0;border-top:1px solid #a98d5b;text-align:left}.talent-points strong,.talent-points span,.talent-points small{display:inline}.talent-points strong{font-size:19px}.talent-points small{margin:0 0 0 auto}}
.dex-pagination{display:flex;align-items:center;justify-content:center;gap:10px;margin:9px 0;color:#d9c9a7;font-size:12px}.dex-pagination button{min-width:82px;min-height:38px;padding:6px 10px;border:1px solid #96794f;border-radius:4px;background:#263a30;color:#f4e7c5}.dex-pagination button:hover:not(:disabled){background:#455743}.dex-pagination [data-dex-page-label]{min-width:85px;text-align:center}.dex-pagination button:disabled{opacity:.45}
@media(max-width:500px){.dex-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dex-card strong,.dex-card .small{overflow-wrap:anywhere}}
.dex-tabs button[aria-pressed="true"]{background:#735b37;border-color:#e1c180;color:#fff}.silhouette-frame{display:grid;place-items:center;width:100%;min-height:80px;border-radius:4px;background:radial-gradient(ellipse,#a599713d,transparent 70%)}.shrouded-card .silhouette{background:transparent;filter:brightness(0);opacity:.82}.shrouded-card p{margin:0!important}.shrouded-card strong{color:#e3d6b8}
.atlas-regions{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:7px}.atlas-region{display:grid;gap:5px;align-content:start;padding:10px;border:1px solid #746346;border-radius:4px;background:#172920}.atlas-region button{justify-self:start;min-height:36px;padding:6px 10px;border:1px solid #96794f;border-radius:4px;background:#263a30;color:#f4e7c5}
/* Keep Hearthstone clear of the bottom navigation and touch interaction button. */
@media (max-width:700px) and (orientation:portrait){.hearth{bottom:148px}}
.atlas-tabs{margin:10px 0}.atlas-tabs button[aria-pressed="true"]{background:#806740;color:#fff3d2;border-color:#d9bd81}
.atlas-tabs{position:sticky;top:-1px;z-index:3;padding:5px;background:#182a21}
.party-strip button{border:1px solid #736444;border-radius:4px;background:#14251d;padding:3px 5px;color:#ecd6a8;min-height:42px}.party-strip button:hover{background:#3a4c35}.party-strip canvas{width:24px;height:34px}.party-strip small{font-size:11px}@media(max-width:700px){.party-strip{display:none}}
.menu-identity{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.menu-identity span{font-size:12px;color:var(--muted)}.menu-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.menu-main button,.menu-options button,.help-grid button{min-height:42px;padding:8px 12px;border:1px solid #8e7751;border-radius:4px;background:#263a30;color:#f1e1bf}.menu-main button.primary{background:linear-gradient(#8b6e45,#635031);border-color:#d0ac6c}.menu-options{margin-top:20px}.menu-options>div{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid #6d6a4d55}.menu-options>div>span{font-size:13px;color:#d3cfb5}.zoom-control{display:flex;align-items:center;gap:8px}.zoom-control button{min-width:40px}.zoom-control output{min-width:45px;text-align:center;font-size:13px}.help-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.help-grid section{padding:12px;border:1px solid #74664c;border-radius:4px;background:#14251f}.help-grid section h3{margin:0 0 8px!important;font-size:17px}.help-grid p{font-size:13px;line-height:1.5;margin:0!important}.help-grid button{margin-top:10px}@media(max-width:500px){.help-grid{grid-template-columns:1fr}.menu-identity{align-items:flex-start;flex-direction:column}.menu-main button{font-size:13px}}
@media(max-width:360px){.hud-nav button[data-panel=dex]{font-size:10px}}
.atlas-destination,.company-summary{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:12px 0}.atlas-destination strong,.atlas-destination .eyebrow{display:block}.atlas-destination button{flex:none;min-height:40px;padding:7px 12px;border:1px solid #96794f;border-radius:4px;background:#263a30;color:#f4e7c5}.vault-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin-bottom:12px}.vault-toolbar label{display:grid;gap:4px;flex:1;min-width:120px;font-size:12px;color:var(--muted)}.vault-toolbar input,.vault-toolbar select{width:100%;min-height:40px}.vault-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:9px}.vault-card{display:flex;flex-direction:column;align-items:center;gap:4px;min-width:0;padding:10px;border:1px solid #736045;border-radius:5px;background:#14261e}.vault-card .portrait{height:92px;width:110px}.vault-card>strong{max-width:100%;overflow-wrap:anywhere}.vault-card .actions{margin-top:6px;justify-content:center}.vault-card .actions button{padding:6px 9px;min-height:38px;font-size:12px}.vault-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:14px}.vault-pagination button{min-height:40px;border:1px solid #96794f;background:#263a30;border-radius:4px;padding:6px 12px}.vault-pagination span{font-size:12px;color:var(--muted)}.cheat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.cheat-grid section{min-width:0;padding:12px;border:1px solid #746448;border-radius:5px;background:#15271f}.cheat-grid form{display:grid;gap:10px;margin:12px 0}.cheat-grid label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.cheat-grid input:not([type=checkbox]),.cheat-grid select{width:100%;min-width:0;min-height:40px}.cheat-grid .cheat-check{display:flex;align-items:center}.cheat-grid button{min-height:40px;padding:7px 12px;border:1px solid #96794f;border-radius:4px;background:#263a30}.hud-nav button{min-height:48px}.hud-nav [data-action=hearth],.hud-nav [data-panel=localmap]{color:#f1dba8}.hud-nav [data-action=hearth] span{color:#edca7d}
@media(max-width:700px) and (orientation:portrait){.hud-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;width:calc(100% - 14px)}.hud-nav button{min-height:44px;font-size:11px;padding:4px 3px;letter-spacing:0}.hud-nav button span{font-size:17px}.touch-controls .interact{bottom:calc(118px + env(safe-area-inset-bottom))}.vault-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vault-card .portrait{height:80px}.company-summary{align-items:flex-start}.cheat-grid{grid-template-columns:1fr}.atlas-destination{gap:8px}.atlas-destination strong{font-size:13px}}
@media(max-height:480px) and (orientation:landscape){.hud-nav{width:auto;max-width:calc(100% - 10px);gap:0}.hud-nav button{min-width:0;min-height:40px;padding:3px 5px;font-size:10px}.hud-nav button span{font-size:15px}}
.local-filter{display:flex;align-items:center;gap:10px;margin:8px 0 12px}.local-map-scroll{height:min(48vh,400px);overflow:auto;overscroll-behavior:contain;border:1px solid #967d52;border-radius:4px;background:#1b2d25}.local-map-scroll:focus-visible{outline:3px solid #f4d685;outline-offset:3px}.local-map-stage{position:relative;width:1000px;height:700px}.local-map-stage canvas{display:block;width:100%;height:100%;image-rendering:pixelated}.local-marker,.local-player{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center;border:1px solid #f0d69a;border-radius:50%;width:28px;height:28px;padding:0;background:#30493a;color:#ffedbc;box-shadow:0 2px 6px #000b;font-size:16px;font-weight:bold}.local-marker:hover,.local-marker:focus-visible{z-index:2;background:#85683b}.local-quest{background:#865727}.local-passage{background:#38546a}.local-legend{background:#773d43}.local-player{width:22px;height:22px;background:#d5b462;color:#263a2d;pointer-events:none}.local-map-key{display:flex;flex-wrap:wrap;gap:4px 12px}.local-places{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:6px}.local-places button{width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2px;padding:8px 10px;border:1px solid #6f664a;border-radius:4px;background:#1b3026;color:#f0dfb9}.local-places button span{font-size:11px;color:#c9c5a5}.local-places button:hover{background:#384b36}@media(max-width:500px){.local-map-scroll{height:38vh}.local-places{grid-template-columns:1fr}.local-places button{min-height:44px}}
.atlas-map{aspect-ratio:480/348}.atlas-map>img{display:block;width:100%;height:100%;image-rendering:auto}.atlas-map .map-node{min-width:54px;max-width:80px;padding:0 2px;text-shadow:0 1px 2px #f7eac8,0 0 3px #f7eac8}.atlas-map .map-node strong{font-size:11px}.atlas-map .map-node small{font-size:9px}
body[data-ui-panel="create"] #panel{max-width:460px}body[data-ui-panel="opening"] #panel{max-width:850px}body[data-ui-panel="opening"] dialog::backdrop{background:#09110d55;backdrop-filter:none}.opening-scene{display:flex;align-items:center;gap:18px}.opening-scene>.portrait{flex:none;width:120px;height:125px}.opening-choices .starter-card{display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:14px}.opening-choices .starter-card h3{margin:0!important}.opening-choices .starter-card .small{flex:1;margin:3px 0 8px}.starter-affinity{color:var(--gold);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.opening-choices .starter-card>.primary{width:100%;min-height:42px}.opening-lesson{padding:12px;border:1px solid var(--gold-dark);background:#25392c}.opening-lesson p{margin:5px 0!important}.capture-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;list-style:none;counter-reset:lesson;padding:0;margin:16px 0}.capture-steps li{counter-increment:lesson;padding:12px;border:1px solid #796749;border-radius:4px;background:#15271f}.capture-steps strong{display:block;color:#efd69c}.capture-steps strong::before{content:counter(lesson) '. ';color:#bda06b}.capture-steps span{display:block;margin-top:7px;font-size:12px;color:#d8d4be}.battle-guide{margin:0 0 7px;padding:8px 10px;border-left:3px solid #d4b779;background:#304331;color:#eadcbd;font-size:12px;line-height:1.4}.battle-guide strong{color:#f4dfa8}@media(max-width:600px){.opening-scene{gap:10px}.opening-scene>.portrait{width:80px;height:100px}.capture-steps{grid-template-columns:1fr;gap:6px}.capture-steps li{padding:9px}.capture-steps span{margin-top:3px}.opening-choices .starter-card{padding:10px}.opening-choices .portrait{height:88px}.battle-guide{font-size:11px;padding:6px 8px}}
.localmap-toggle{position:absolute;right:max(12px,env(safe-area-inset-right));bottom:60px;z-index:4;padding:7px 10px;border:1px solid #91774d;border-radius:5px;background:#1b3029ef;color:#ead5a4;font-size:12px;box-shadow:0 2px 10px #0008}.localmap-toggle:hover{background:#304239}@media(max-width:700px) and (orientation:portrait){.localmap-toggle{bottom:190px;font-size:11px}}@media(max-height:480px) and (orientation:landscape){.localmap-toggle{bottom:158px;right:8px}}
.local-map-stage{width:2000px;height:1400px}.local-tools{display:flex;align-items:center;justify-content:space-between;gap:6px;flex-wrap:wrap;margin-bottom:8px}.local-filter{margin:0}.local-zoom{display:flex;gap:4px}.local-zoom button{min-width:38px;min-height:36px;padding:4px 8px;border:1px solid #806f50;border-radius:4px;background:#253a2d;color:#f4e7c5}.atlas-route{display:block;padding:5px 9px;margin:5px 0}.atlas-route summary{cursor:pointer;font-size:12px;color:#e8d6ad}.atlas-route p{margin:6px 0}.atlas-route button{min-height:34px;padding:5px 9px}
.opening-choices .small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:4;overflow:hidden}.opening-choices .starter-card h3{overflow-wrap:anywhere}@media(max-width:600px){.opening-choices{grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}.opening-choices .starter-card{padding:8px 5px}.opening-choices .starter-card h3{font-size:14px}.opening-choices .portrait{height:85px;width:100%}.opening-choices .small{-webkit-line-clamp:3;font-size:11px}.opening-choices .type-chip{font-size:9px;padding:2px 4px}.opening-choices .starter-card>.primary{font-size:12px;padding:6px 3px;overflow-wrap:anywhere;min-height:52px}.opening-choices .starter-affinity{font-size:11px}}@media(max-height:480px) and (orientation:landscape){.opening-choices .portrait{height:58px}.opening-choices .small{display:none}.opening-choices .starter-card{gap:2px;padding:6px}.opening-choices .starter-card h3{font-size:13px}.opening-choices .starter-card>.primary{min-height:36px}.opening-choices .starter-affinity{font-size:10px}body[data-ui-panel="opening"] .narrative{padding:7px;margin:4px 0 8px}}

/* Encounter presentation uses the native map at the place the fight began. */
.battle-stage{background-image:linear-gradient(#101b1880,#101b1830 55%,#101b1880),var(--battle-art);background-position:center;background-size:cover}
.battle-stage:before,.battle-stage:after{background:#0b140f55;box-shadow:0 0 24px #0b140f88}
.battle-top{padding-block:clamp(9px,1vh,16px)}
.battle-top strong{font-size:clamp(18px,1.3vw,26px)}
.battle-top #battle-turn{font-size:clamp(13px,.85vw,17px)}
.battle-stage canvas:not(#battle-effects){width:min(28vw,42vh,360px);bottom:10%}
#battle-player-sprite{left:14%}#battle-enemy-sprite{right:14%}
.combatant{top:clamp(12px,3vh,34px);width:min(38%,400px);padding:clamp(9px,1vw,16px);background:#111e18ed;border-color:#b59a67}
.combatant strong{font-size:clamp(15px,1.1vw,21px)}
.combatant span{font-size:clamp(12px,.8vw,16px)}
.combatant meter{height:clamp(12px,1.1vw,18px)}
.battle-bottom{grid-template-columns:minmax(220px,.75fr) minmax(400px,1.5fr);padding-block:clamp(10px,1.2vh,18px)}
.battle-bottom #battle-log{font-size:clamp(13px,.9vw,17px);max-height:clamp(120px,18vh,220px)}
#battle-controls button,#battle-tools button{font-size:clamp(13px,.85vw,17px)}
.battle-number{position:absolute;z-index:5;transform:translate(-50%,-50%);font:bold clamp(22px,2vw,36px) var(--body);text-shadow:0 2px 4px #000,0 0 5px #000;pointer-events:none;animation:battle-number .8s ease-out forwards}
.battle-number.damage{color:#ffe2b1}.battle-number.healing{color:#b4ffb0}
@keyframes battle-number{from{opacity:1;transform:translate(-50%,-20%)}to{opacity:0;transform:translate(-50%,-110%)}}
@media(max-width:700px){
 .battle-stage canvas:not(#battle-effects){width:min(34vw,30vh,180px);bottom:9%}
 #battle-player-sprite{left:8%}#battle-enemy-sprite{right:8%}
 .combatant{top:8px;width:43%;padding:7px}.combatant strong{font-size:13px}.combatant span{font-size:11px}.combatant meter{height:12px}
 .battle-bottom{grid-template-columns:1fr;padding:7px 8px max(8px,env(safe-area-inset-bottom));gap:6px}.battle-bottom #battle-log{font-size:12px;max-height:62px}
 #battle-controls button,#battle-tools button{font-size:12px}
}
@media(max-height:480px) and (orientation:landscape){
 .battle-bottom{grid-template-columns:minmax(120px,.7fr) 2fr;padding:5px 10px}.battle-stage canvas:not(#battle-effects){width:min(22vw,34vh,150px)}
 .combatant{top:4px}.battle-bottom #battle-log{max-height:85px}
}
@media(prefers-reduced-motion:reduce){.battle-number{animation-duration:.01ms}}
.capture-seal{position:absolute;z-index:6;width:clamp(82px,11vw,150px);aspect-ratio:1;transform:translate(-50%,-50%);display:grid;place-items:center;pointer-events:none}
.capture-aura{position:absolute;inset:-45%;border-radius:50%;background:radial-gradient(circle,#fff8bbcc 0,#f4a83c77 25%,#df704633 45%,transparent 70%);filter:blur(5px);animation:capture-glow 1s ease-in-out infinite alternate}
.capture-ring{position:absolute;inset:12%;display:grid;place-items:center;border:3px solid #ffdfa0;border-radius:50%;background:radial-gradient(circle,#fff5c5,#e9a343 30%,#7e462d 62%,#2b2822 65%);box-shadow:0 0 0 4px #946435,0 0 22px #ffe197,0 0 45px #f2a44a;outline:1px solid #fff3c1;outline-offset:7px}
.capture-glyph{font:normal clamp(34px,5vw,64px) Georgia,serif;color:#fff9d8;text-shadow:0 0 8px #ffdb88,0 0 20px #fff}
.capture-sparks{position:absolute;inset:-25%;border-radius:50%;background:radial-gradient(circle at 12% 22%,#fff3bb 0 2px,transparent 3px),radial-gradient(circle at 82% 13%,#ffd37b 0 2px,transparent 3px),radial-gradient(circle at 93% 67%,#ffebba 0 2px,transparent 3px),radial-gradient(circle at 23% 87%,#ffbe64 0 2px,transparent 3px);animation:capture-sparks 1.6s linear infinite}
.capture-seal[data-phase=break] .capture-ring{background:radial-gradient(circle,#fff,#f5b076 35%,#853f2e 70%);box-shadow:0 0 35px #fff3ca,0 0 70px #ef8e50}
.capture-seal[data-phase=lock] .capture-ring{background:radial-gradient(circle,#fff,#fff2aa 35%,#d6953f 70%);box-shadow:0 0 40px #fff3bd,0 0 75px #ffc45c}
@keyframes capture-glow{from{opacity:.45;transform:scale(.85)}to{opacity:1;transform:scale(1.2)}}
@keyframes capture-sparks{to{transform:rotate(180deg)}}
@media(prefers-reduced-motion:reduce){.capture-aura,.capture-sparks{animation:none}.capture-sparks{display:none}}

/* Companion, satchel, journal, and conversation panels. */
.profile-sheet,.satchel-panel,.journal-panel{display:grid;gap:12px}.profile-intro{display:grid;grid-template-columns:140px minmax(0,1fr);align-items:center;gap:16px;padding:12px;background:#101e19a8;border:1px solid #776849;border-radius:5px}.profile-art{text-align:center}.profile-art .portrait{width:120px;height:110px;margin:auto}.profile-art .type-chip{margin:2px}.profile-flavour{font-size:15px;line-height:1.55}.profile-vitals{display:flex;flex-wrap:wrap;gap:5px 14px;color:#e5d6b4;margin-bottom:7px}.profile-section-head,.satchel-heading,.journal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px}.profile-section-head h3,.satchel-heading h3,.journal-toolbar h3,.profile-sheet section>h3{margin:0!important}.profile-section-head .actions{margin:0}.profile-moves{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin-top:8px}.profile-move{padding:9px 10px;border:1px solid #596350;border-radius:4px;background:#101e19a8;display:grid;grid-template-columns:1fr auto;gap:4px}.profile-move strong,.profile-move span{display:block}.profile-move span,.profile-move small{font-size:11px;color:var(--muted)}.profile-move details{grid-column:1/-1;color:var(--muted);font-size:12px}.profile-move details p{margin:5px 0 0!important}.profile-stats{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;margin-top:8px}.profile-stats>div{display:grid;gap:2px;padding:7px;background:#0c1915;border:1px solid #485447;border-radius:3px}.profile-stats span,.profile-stats small{font-size:10px;color:var(--muted)}.profile-stats strong{color:#f0dbad}.profile-held,.profile-extra,.satchel-held{padding:10px 12px;border:1px solid #665d45;border-radius:4px;background:#101e19a8}.profile-held>div:first-child{display:flex;flex-wrap:wrap;align-items:baseline;gap:3px 10px}.profile-held .eyebrow{width:100%}.profile-held details{margin-top:7px}.profile-extra summary,.profile-held summary,.satchel-held>summary{cursor:pointer;color:#e9d3a1;font-weight:bold}.profile-extra ul{padding-left:20px;max-height:220px;overflow:auto}.satchel-heading{padding:0 2px}.satchel-tip{margin:0!important}.satchel-list{display:grid;gap:4px}.satchel-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #596350;border-radius:4px;background:#101e19a8}.satchel-icon{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #806e4b;border-radius:4px;background:#3d3d2b;color:#e3c382;font-size:17px}.satchel-name{flex:1;min-width:0}.satchel-name strong{margin-right:8px}.satchel-name>span,.satchel-held summary>span:last-child,.satchel-gear summary>span:last-child{font-size:12px;color:#d8bb80}.satchel-name details{font-size:12px;color:var(--muted)}.satchel-name details p,.satchel-gear p{margin:5px 0 0!important}.satchel-name summary{cursor:pointer}.satchel-use{position:relative}.satchel-use>summary{cursor:pointer;list-style:none;min-width:64px;text-align:center;padding:8px 12px;border:1px solid #96794f;border-radius:4px;background:#455743;color:#f4e7c5}.satchel-use>summary::-webkit-details-marker{display:none}.satchel-targets{display:flex;flex-wrap:wrap;gap:5px;padding-top:7px;max-width:300px}.satchel-targets button{min-height:34px}.satchel-held>summary{display:flex;justify-content:space-between}.satchel-gear{margin-top:6px;padding:7px;border:1px solid #596350;border-radius:4px}.satchel-gear summary{display:flex;align-items:center;gap:10px;cursor:pointer}.satchel-gear summary strong{flex:1}.journal-toolbar label{display:flex;align-items:center;gap:6px;color:var(--muted);font-size:12px}.journal-toolbar select{max-width:150px;padding:6px;background:#182a21;color:var(--ink);border:1px solid #81734f;border-radius:4px}.journal-current{padding:10px;border:1px solid #a78b58;border-radius:5px;background:#403a2888}.journal-current>.eyebrow{display:block;margin-bottom:5px}.journal-list{display:grid;gap:5px}.journal-quest{padding:9px 11px;border:1px solid #596350;border-radius:4px;background:#101e19a8}.journal-quest.completed{opacity:.8}.journal-quest summary{cursor:pointer}.journal-quest summary span{display:inline-grid;gap:2px;vertical-align:top}.journal-quest summary strong{color:#ead7ac}.journal-quest summary small{color:var(--muted)}.journal-quest p{margin-top:8px}.journal-actions{display:flex;flex-wrap:wrap;gap:6px}.journal-actions:not(:empty){margin-top:8px}.journal-actions button{min-height:34px;padding:5px 10px}.npc-panel{display:grid;grid-template-columns:minmax(100px,160px) minmax(0,1fr);gap:16px;align-items:start}.npc-content{min-width:0}.npc-lines{line-height:1.6;color:#e0d6bb}.npc-quest{padding:7px 10px;border-left:2px solid #b09158;background:#d4b2710b;color:#e6d4ac;font-size:12px}.npc-content .actions{margin-top:14px}
@media(max-width:700px){.profile-intro{grid-template-columns:96px minmax(0,1fr);gap:10px}.profile-art .portrait{width:90px;height:90px}.profile-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.npc-panel{grid-template-columns:90px minmax(0,1fr);gap:10px}.satchel-use>summary{min-height:40px}.satchel-row{flex-wrap:wrap}.satchel-use[open]{width:100%}.satchel-use[open]>summary{width:64px}.satchel-targets{max-width:none}}
@media(max-width:360px){.profile-moves{grid-template-columns:1fr}.profile-intro{grid-template-columns:75px minmax(0,1fr)}.profile-art .portrait{width:72px;height:80px}.npc-panel{grid-template-columns:1fr}.npc-panel .npc-portrait,.npc-panel .npc-fallback{width:85px;height:95px}}
/* Keep closed quest rows compact while leaving the full objective on demand. */
.journal-quest summary{display:flex;align-items:center;gap:8px;min-height:30px;list-style:none}.journal-quest summary::-webkit-details-marker{display:none}.journal-quest summary::before{content:'▸';color:#d0b477;flex:none}.journal-quest details[open]>summary::before{content:'▾'}.journal-quest summary span{display:flex;flex:1;align-items:baseline;justify-content:space-between;gap:5px 12px;flex-wrap:wrap;min-width:0}.journal-quest summary small{white-space:nowrap}

/* Illustrated legendary companions retain their native game portrait below. */
.legend-art-hero,.legend-art-reward{display:flex;align-items:center;gap:16px;min-width:0;padding:9px;border:1px solid #a98a55;border-radius:5px;background:linear-gradient(110deg,#44392a,#192a20 75%);box-shadow:inset 0 1px #f4d89820}.legend-art-hero img,.legend-art-reward img{display:block;flex:none;object-fit:cover;aspect-ratio:3/4;border:1px solid #b79b67;border-radius:3px}.legend-art-hero img{width:120px}.legend-art-reward img{width:70px}.legend-art-hero>div,.legend-art-reward>div{display:grid;gap:4px;min-width:0}.legend-art-hero strong{font-size:22px;color:#f1dfb1}.legend-art-reward strong{font-size:17px;color:#f1dfb1}.legend-art-reward{margin:6px 0;gap:10px;padding:6px}.profile-habitat{margin-top:6px!important}
@media(max-width:360px){.legend-art-hero{gap:10px}.legend-art-hero img{width:94px}.legend-art-hero strong{font-size:19px}.legend-art-reward img{width:58px}}
.battle-trainer{display:flex;align-items:center;gap:8px;margin-left:auto;color:#d7c493;font-size:11px;line-height:1.2}
.battle-trainer canvas{width:56px;height:56px;image-rendering:pixelated;filter:drop-shadow(0 2px 3px #0009)}
.battle-trainer strong{font-size:14px;color:#f0e3c3}
@media(max-width:700px){.battle-trainer{gap:3px;font-size:9px}.battle-trainer canvas{width:42px;height:42px}.battle-trainer strong{font-size:11px}}
.quest-tracker-copy{min-width:0}.quest-bearing{display:flex;align-items:center;gap:5px;margin-top:3px;color:#e7ca85;font-size:11px;line-height:1.25}.quest-bearing-arrow{display:inline-block;flex:none;width:14px;text-align:center;font-size:16px;font-weight:bold;color:#f0d58b}.quest-bearing-label{overflow:hidden;text-overflow:ellipsis}.quest-tracker small{overflow-wrap:anywhere}@media(max-width:700px){.quest-bearing{font-size:10px}.quest-bearing-arrow{font-size:14px}}

.atlas-hunting{display:flex;align-items:end;gap:8px;margin:0 0 12px}.atlas-hunting label{display:flex;flex:1;min-width:0;flex-direction:column;gap:4px;font-size:12px}.atlas-hunting select{width:100%;min-width:0}.atlas-hunting button{min-height:42px}

.movement-choice{display:flex;gap:6px}.movement-choice [aria-pressed=true]{background:#75613a;border-color:#d2b571}
.battle-roster{display:flex;gap:4px;margin-top:6px;align-items:center}.battle-roster-slot,.battle-roster-empty{display:grid;place-items:center;width:26px;height:26px;flex:0 0 26px;border:1px solid #71684d;border-radius:50%;background:#293c30;color:#e7dfc8;font:600 12px var(--body);padding:0}.battle-roster button:not(:disabled){border-color:#c5a667;background:#435a3d;color:#fff2ca}.battle-roster .is-active{border:2px solid #efd592;background:#75613b;color:#fff4d5;opacity:1}.battle-roster .is-fainted{filter:grayscale(1);opacity:.45}.battle-roster-empty{border-style:dashed;background:transparent;opacity:.35}.battle-roster button:focus-visible{outline-offset:1px}@media(max-width:700px){.battle-roster{gap:3px;margin-top:4px}.battle-roster-slot,.battle-roster-empty{width:17px;height:17px;flex-basis:17px;font-size:9px}}

.bank-panel{max-width:620px}.bank-party{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;list-style:none;margin:10px 0;padding:0}.bank-party li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:7px 9px;border:1px solid #596350;border-radius:4px;background:#101e19a8}.bank-party li span:first-child{overflow-wrap:anywhere}.bank-party li span:nth-child(2){color:#d9d0b3;font-size:12px}.bank-party .progress-bar{grid-column:1/-1}@media(max-width:400px){.bank-party{grid-template-columns:1fr}}
.takeover-button{min-height:44px;padding:10px 22px;font-size:15px}.loading-veil.has-error .loading-mark{animation:none}.loading-veil.has-error #loading-text{max-width:360px;line-height:1.5;padding:0 16px}

/* DA Overlord game presentation. The world art remains unobscured. */
:root{--ink:#e2e8ef;--muted:#a2adbd;--gold:#a4c3dd;--gold-dark:#526a80;--forest:#171e26;--panel:#171e26;--burgundy:#713f48;--line:#2b3542;--shadow:0 8px 30px #0009;--body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
body,#game{background:#10151b;color:var(--ink)}
button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible,.local-map-scroll:focus-visible{outline:2px solid #a4c3dd;outline-offset:2px}
.loading-veil{background:#10151b;color:#e2e8ef;letter-spacing:.08em}.loading-mark{border-color:#526a80;color:#a4c3dd}.loading-veil span{color:#a2adbd}
.identity,.lead-status,.hud-currency,.quest-tracker,.party-strip,.hearth,.localmap-toggle{background:#171e26ed;border-color:#455568;border-radius:7px;color:#e2e8ef}.identity-crest{background:#202a35;border-color:#526a80;color:#a4c3dd}.identity div span,.lead-title span,.xp-line span,.quest-tracker small{color:#c1cbd7}.hud-currency,.tracker-mark,.quest-bearing,.quest-bearing-arrow{color:#a4c3dd}.hud-currency b{color:#e2e8ef}.quest-tracker:hover,.hearth:hover,.localmap-toggle:hover{background:#283747;border-color:#a4c3dd}
.hud-nav{background:#171e26f2;border-color:#455568;border-radius:7px}.hud-nav button{color:#e2e8ef;border-radius:6px}.hud-nav button span{color:#a4c3dd}.hud-nav button:hover,.hud-nav button[aria-pressed=true],.hud-nav button.active{background:#344657;color:#fff}.interact{background:#202a35ed;border-color:#738ba2;color:#e2e8ef;border-radius:8px}.interact:active{background:#344657}.zone-loading,.toast{background:#171e26f5;border-color:#526a80;border-radius:7px}
dialog{background:#171e26;border-color:#52606f;border-radius:8px;box-shadow:var(--shadow)}dialog::backdrop{background:#080d12c7}dialog>header{background:#202a35;border-color:#354454;padding:12px 16px}#panel-kicker,.eyebrow{color:#a4c3dd;letter-spacing:.08em}#panel-title{font-size:21px;font-weight:650}#panel-close{background:#202a35;border-color:#52606f;border-radius:6px}#panel-close:hover{background:#344657}#panel-body{padding:16px;scrollbar-color:#526a80 #171e26}h3,h4{color:#e2e8ef;font-weight:650}h3{font-size:17px}.intro-copy,.narrative,.npc-lines{color:#d4dce5}.narrative{background:#202a35;border-color:#6b8ba8;border-radius:0 6px 6px 0;padding:12px 14px}.muted,.small{color:#a2adbd}
.primary,.secondary,.danger,.tabs button,.battle-move,.battle-switch,.actions button,.list-row button,.card button,.shop-row button,.zone-card button,.banner button,.local-zoom button,.satchel-use>summary{background:#202a35;border-color:#52606f;color:#e2e8ef;border-radius:6px}.primary,.actions .primary{background:#496b89;border-color:#7398b7;color:#fff}.danger,.actions .danger{background:#57343b;border-color:#98616a;color:#fff}.secondary{background:#202a35}.tabs button.active,.tabs button[aria-selected=true],.movement-choice [aria-pressed=true]{background:#405d76;border-color:#a4c3dd;color:#fff}
.card,.company-card,.dex-card,.zone-card,.move-card,.starter-card,.lobby-save,.shop-row,.quest-row,.reward,.banner,.featured,.battle-result,.profile-intro,.profile-move,.profile-held,.profile-extra,.satchel-held,.satchel-row,.satchel-gear,.journal-quest,.bank-party li,.opening-lesson,.capture-steps li{background:#202a35;border-color:#354454;border-radius:7px;box-shadow:none}.zone-card:hover,.dex-card:hover,.starter-card:hover,.company-card:hover{border-color:#7398b7}.zone-card.active,.dex-card.active,.starter-card.active,.company-card.active,.selected{border-color:#a4c3dd;box-shadow:inset 0 0 0 1px #a4c3dd}.portrait{background:radial-gradient(ellipse at center,#526a8055,transparent 72%)}.star,.starter-affinity,.move-name,.stats-grid dd,.facts dd,.profile-stats strong,.journal-quest summary strong{color:#c5d9ea}.stats-grid dl,.facts dl,.profile-stats>div{background:#171e26;border-color:#354454;border-radius:6px}.stats-grid dt,.facts dt,.profile-vitals,.move-meta{color:#a2adbd}.list-row,.shop-row{border-color:#354454}.empty{border-color:#52606f;border-radius:7px}.progress-bar{background:#10151b;border-color:#354454}.progress-bar>span,.progress-bar>i{background:#7eaa91}.reward,.journal-current{background:#253647;border-color:#526a80}.kbd{background:#10151b;border-color:#52606f;border-radius:6px}.npc-quest{background:#202a35;border-color:#7398b7;color:#d4dce5}
.local-map-scroll{background:#10151b;border-color:#52606f;border-radius:7px}.local-marker{background:#344b60;border-color:#a4c3dd;color:#fff}.local-places button,.journal-toolbar select{background:#202a35;border-color:#52606f;color:#e2e8ef;border-radius:6px}.local-places button span{color:#a2adbd}.local-places button:hover{background:#344657}.satchel-icon{background:#344657;border-color:#526a80;color:#c5d9ea;border-radius:6px}.satchel-name>span,.satchel-held summary>span:last-child,.satchel-gear summary>span:last-child,.profile-extra summary,.profile-held summary,.satchel-held>summary{color:#a4c3dd}.journal-quest summary::before{color:#a4c3dd}
.legend-art-hero,.legend-art-reward{background:#202a35;border-color:#526a80;border-radius:7px}.legend-art-hero img,.legend-art-reward img{border-color:#526a80;border-radius:6px}.legend-art-hero strong,.legend-art-reward strong{color:#e2e8ef}.opening-art{display:block;width:100%;max-height:190px;object-fit:cover;object-position:center;border-radius:7px;margin:0 0 14px}.game-help{margin-top:10px;color:#c4cfdb}.game-help summary{cursor:pointer;color:#a4c3dd;font-weight:600}.game-help p{margin:8px 0 0}.capture-steps strong,.capture-steps span{color:#d4dce5}.capture-steps strong::before{color:#a4c3dd}
#battle{background:#10151b;color:#e2e8ef}.battle-top,.battle-bottom{background:#171e26;border-color:#354454}.battle-top #battle-turn,.battle-trainer,.battle-trainer strong{color:#c5d9ea}.combatant{background:#171e26ef;border-color:#526a80;border-radius:7px}.combatant span{color:#c1cbd7}.battle-bottom #battle-log{background:#10151b;border-color:#354454;color:#d4dce5;border-radius:7px}.battle-move,.battle-switch,#battle-controls button,#battle-tools button{background:#202a35;border-color:#52606f;color:#e2e8ef;border-radius:6px}.battle-guide{background:#253647;border-color:#7398b7;color:#d4dce5}.battle-guide strong,.battle-result h2{color:#e2e8ef}.battle-roster-slot,.battle-roster-empty{background:#202a35;border-color:#52606f;color:#e2e8ef}.battle-roster button:not(:disabled){background:#344657;border-color:#7398b7;color:#fff}.battle-roster .is-active{background:#496b89;border-color:#a4c3dd;color:#fff}
@media(max-width:600px){.opening-art{max-height:105px;margin-bottom:9px}#panel-body{padding:12px}dialog>header{padding:10px 12px}.opening-scene p{margin-bottom:8px}}

/* Named controls and secondary panels share the same surface hierarchy. */
/* Keep transient messages clear of both companies' health during an encounter. */
#game:has(#battle:not([hidden])) .toast{top:44%;max-width:min(70%,360px)}
@media(max-width:700px) and (orientation:portrait){#battle-controls button,#battle-tools button{min-height:44px}}
input,select,textarea{background:#10151b;color:#e2e8ef;border-color:#52606f;border-radius:6px}input[type=radio],input[type=checkbox]{accent-color:#7398b7}summary{color:#a4c3dd}.panel-header-actions #panel-back,.menu-main button,.menu-options button,.help-grid button,.atlas-destination button,.vault-pagination button,.cheat-grid button,.talent-node-footer button{background:#202a35;border-color:#52606f;color:#e2e8ef;border-radius:6px}.panel-header-actions #panel-back:hover,.talent-node-footer button:not(:disabled):hover{background:#344657}.menu-main button.primary{background:#496b89;border-color:#7398b7;color:#fff}.menu-options button[aria-pressed=true]{background:#405d76;border-color:#a4c3dd}.menu-options>div{border-color:#354454}.menu-options>div>span,.dex-filters label{color:#a2adbd}.help-grid section,.vault-card,.cheat-grid section,.talent-intro,.talent-branch,.talent-node,.talent-node.is-locked,.talent-reset,.profile-portrait,.equipment-slot,.gear-choice,.supply-row,.quest-entry{background:#202a35;border-color:#354454;border-radius:7px}.talent-node.is-available{background:#283c4f;border-color:#7398b7}.talent-node.is-learned{background:#30465a;border-color:#a4c3dd}.talent-intro p,.talent-node p,.talent-node-heading strong,.talent-branch h3,.profile-flavour,.quest-objectives li,#panel-body h4{color:#d4dce5}.talent-points,.talent-points strong,.talent-tier,.talent-state,.item-count,.quest-reward,.quest-objectives span{color:#a4c3dd;border-color:#526a80}.talent-node.is-learned .talent-tier{background:#496b89;color:#fff}.talent-node-footer button:disabled{background:#171e26;color:#a2adbd}.affinity-table{border-color:#354454;border-radius:7px}.affinity-table th,.affinity-table td{border-color:#354454}.affinity-table th:first-child{background:#171e26}.affinity-table .effective{color:#c5d9ea;background:#496b8944}.panel-summary{background:#253647;border-color:#526a80;color:#e2e8ef}.panel-summary span{color:#a2adbd}.npc-portrait{background:#202a35;border-color:#526a80;border-radius:7px}.battle-result{background:#202a35;border-color:#526a80}.battle-result h2,.battle-result h3{color:#e2e8ef}.battle-result .reward{background:#253647;border-color:#526a80}.hud-nav [data-action=hearth],.hud-nav [data-panel=localmap],.hud-nav [data-action=hearth] span{color:#a4c3dd}
/* Keep discovery controls and results together on narrow screens. */
.dex-toolbar{display:flex;align-items:end;gap:8px}.dex-toolbar>label{display:grid;gap:3px;flex:1;min-width:0;color:var(--muted);font-size:12px}.dex-toolbar input{width:100%;min-height:44px}.dex-filter-details{position:relative;flex:none}.dex-filter-details>summary{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #52606f;border-radius:6px;background:#202a35;cursor:pointer;list-style:none}.dex-filter-details>summary::-webkit-details-marker{display:none}.dex-filter-details[open] .dex-filters{position:absolute;right:0;z-index:6;width:min(520px,calc(100vw - 48px));padding:10px;border:1px solid #52606f;border-radius:6px;background:#171e26;box-shadow:0 10px 24px #000b;grid-template-columns:repeat(2,minmax(0,1fr))}.dex-filter-details select{min-height:44px}.dex-pagination[hidden]{display:none}.dex-grid{grid-template-columns:repeat(auto-fill,minmax(145px,1fr))}.dex-card{min-width:0}.lobby-save .actions{align-items:center}.lobby-save .save-more{margin:0}.lobby-save [data-save-controls]{align-self:center}
@media(max-width:600px){body[data-ui-panel=lobby] .opening-art{height:70px}.dex-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.dex-card{padding:8px}.dex-card .portrait{width:64px;height:64px}.dex-card .actions{width:100%}.dex-card .actions button{width:100%}.dex-pagination{margin:5px 0}.panel-summary{padding:6px 8px;margin-bottom:7px}.dex-tabs{margin-bottom:7px}}
.dex-shrouded-details>summary{display:flex;align-items:center;min-height:44px;padding:8px 12px;border:1px solid #52606f;border-radius:6px;background:#202a35;cursor:pointer}.dex-shrouded-details .dex-filters{padding:8px 0;grid-template-columns:repeat(2,minmax(0,1fr))}.dex-shrouded-details select{min-height:44px}
@media(max-width:600px){.dex-grid{grid-template-columns:minmax(0,1fr)}.dex-card{display:grid;grid-template-columns:64px minmax(0,1fr);gap:3px 9px;align-items:center;text-align:left}.dex-card .portrait,.dex-card .silhouette-frame{grid-column:1;grid-row:1 / span 5;align-self:start}.dex-card>strong,.dex-card>div,.dex-card>p,.dex-card>.type-chip{grid-column:2}.dex-card .actions{margin:3px 0 0;justify-content:flex-start}.dex-card .actions button{width:auto;min-width:100px}.silhouette-frame{min-height:64px}.dex-card>.type-chip{justify-self:start}}
