/* Ember Oath — landscape game shell. System fonts keep startup independent of font CDNs. */
:root{color-scheme:dark;--bg:#080c11;--panel:#111922;--line:#35404b;--muted:#8e9ba7;--text:#e4e5df;--accent:#d9b474;--gold:#d9b474;--ember:#d17b54;--serif:ui-serif,'Songti SC','STSong',Georgia,serif;--safe-left:max(16px,env(safe-area-inset-left));--safe-right:max(16px,env(safe-area-inset-right));--safe-top:max(12px,env(safe-area-inset-top));--safe-bottom:max(16px,env(safe-area-inset-bottom))}
*{box-sizing:border-box}html,body{margin:0;width:100%;height:100%;overflow:hidden;overscroll-behavior:none}body{background:var(--bg);color:var(--text);font:13px/1.55 ui-sans-serif,system-ui,-apple-system,'PingFang SC','Microsoft YaHei',sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0;border:0;background:none;color:inherit;cursor:pointer;touch-action:manipulation}button:disabled{opacity:.4;cursor:not-allowed}button:hover:not(:disabled),summary:hover{filter:brightness(1.15)}button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid #e3c796;outline-offset:3px}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:500}svg.lucide{width:17px;height:17px;stroke-width:1.6;flex-shrink:0}.eyebrow{font:9px/1.5 ui-sans-serif,system-ui,sans-serif;letter-spacing:2px;color:#b2b7ae}.app,.battlefield-main{width:100%;height:100%}.battle-panel{position:fixed;inset:0;height:100dvh;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 50% 40%,#303c43,#080c11 75%)}#scene{position:absolute;inset:0}#scene canvas{width:100%;height:100%;display:block}#sceneFallback{position:absolute;left:25%;right:25%;top:44%;padding:22px;border:1px solid #63717c55;background:#121a22df;text-align:center;color:#c3d0d6;border-radius:8px;line-height:1.9}.scene-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,#080c11c9 0%,#080c1100 23%,#080c1100 67%,#080c11b8 100%);box-shadow:inset 0 0 110px #05080b66}
/* Minimal shell chrome and two-row quick menu leave the center of the arena clear. */
.topbar{position:fixed;z-index:10;left:var(--safe-left);right:var(--safe-right);top:var(--safe-top);height:32px;display:flex;align-items:center;justify-content:space-between;pointer-events:none}.topbar>*{pointer-events:auto}.wordmark{display:flex;align-items:baseline;gap:10px;text-shadow:0 2px 10px #000}.wordmark-cn{font:500 23px/1 var(--serif);letter-spacing:4px;color:#eee4ce}.wordmark-en{font:9px Georgia,serif;letter-spacing:2px;color:#b7b9b0}.wordmark>b{font:8px ui-sans-serif,system-ui;letter-spacing:1px;color:#c6ac7d;padding-left:9px;border-left:1px solid #8c7c5b77}.top-actions{display:flex;align-items:center;gap:7px}.wallet-btn,.fullscreen-button{min-height:32px;border:1px solid #7f7c6559;border-radius:4px;background:#0c141ccf;padding:6px 10px;font-size:10px;color:#d0d4cd}.wallet-btn .lucide:last-child{width:11px}.fullscreen-button{color:#d8c394}.fullscreen-button .lucide{width:15px}.rail{position:fixed;z-index:10;right:var(--safe-right);top:calc(var(--safe-top) + 46px);display:grid;grid-template-columns:repeat(4,44px);gap:2px;padding:5px;border:1px solid #78817f42;border-radius:7px;background:linear-gradient(135deg,#192129e0,#0d141be8);box-shadow:0 5px 20px #0004}.rail .brand{display:none}.rail nav,.rail-bottom{display:contents}.nav-item{position:relative;width:44px;min-height:42px;display:flex;flex-direction:column;gap:3px;padding:4px 2px;border:1px solid transparent;border-radius:4px;color:#a6b2ba;font-size:8px;line-height:1.2}.nav-item>.lucide{width:18px;height:18px}.nav-item.active{color:#f0d295;background:linear-gradient(135deg,#b1905133,#54452322);border-color:#a88c5655}.nav-item b{position:absolute;right:2px;top:0;min-width:13px;line-height:13px;padding:0 3px;border-radius:50%;background:#c39b5c;color:#15191c;font-size:8px;font-weight:800}
/* Player, location and enemy HUDs. */
.player-strip{position:absolute;z-index:2;top:calc(var(--safe-top) + 46px);left:var(--safe-left);width:220px;min-height:80px;display:grid;grid-template-columns:34px 1fr;grid-template-rows:16px 24px 12px 2px;gap:2px 8px;padding:10px;background:linear-gradient(90deg,#0d151de6,#0d151d9c);border:1px solid #6e7b7f47;border-radius:6px;box-shadow:0 4px 15px #0003}.avatar{position:relative;grid-column:1;grid-row:1/4;align-self:start;display:grid;place-items:center;width:34px;height:42px;color:#cbb284;background:linear-gradient(150deg,#465057,#171f27);border:1px solid #928567;border-radius:5px}.avatar>.lucide{width:24px;height:24px}.avatar>span{position:absolute;right:-5px;bottom:-6px;width:18px;line-height:17px;border-radius:50%;border:1px solid #eed395;background:#c4a05f;color:#10171c;font-size:9px;font-weight:800;text-align:center}.player-title{display:contents}.player-title>strong{grid-column:2;grid-row:1;font-size:11px;font-weight:500;color:#e0e0d6}.player-title>strong>span{font-size:8px;color:#9ba79f;margin-left:7px}.xp-line{grid-column:2;grid-row:3;display:flex;justify-content:space-between;font-size:7px;letter-spacing:.1px;color:#c0bb95;white-space:nowrap}.xp-line>span:last-child{display:none}.xp-track{grid-column:2;grid-row:4;height:2px;background:#58604555}.xp-track>div{height:100%;background:#d4c18b;transition:width .2s}.hp-stat{grid-column:2;grid-row:2;min-width:0}.hp-stat>span{font-size:7px;color:#aab3b7}.hp-stat .lucide{width:9px;height:9px;color:#d18778;vertical-align:middle;margin-right:3px}.hp-stat>strong{float:right;font-size:9px;font-weight:500;color:#ecdbd2;line-height:13px}.hp-track{height:4px;margin-top:3px;border:1px solid #a05f5366;background:#382020}.hp-track>div{height:100%;background:linear-gradient(90deg,#874337,#d28b77);transition:width .15s}.player-strip>.text-button{position:absolute;inset:0;font-size:0;color:transparent;border-radius:6px}.player-strip>.text-button .lucide{display:none}.scene-heading{position:absolute;z-index:2;left:var(--safe-left);top:calc(var(--safe-top) + 143px);display:flex;gap:12px;align-items:center;max-width:260px;pointer-events:none;text-shadow:0 2px 10px #000}.scene-heading .eyebrow{font-size:7px;letter-spacing:1.5px;color:#bcb79e}.scene-heading h1{font-size:24px;line-height:1.35;letter-spacing:2px;color:#eee5d0;margin:2px 0 4px}.zone-meta{display:flex;flex-direction:column;gap:1px;font-size:8px;color:#b4c0c4}.glass-btn{pointer-events:auto;min-width:36px;min-height:36px;align-self:flex-start;margin-top:16px;border:1px solid #a5a38d66;border-radius:5px;background:#152028c9;color:#d4d6c5;font-size:9px;padding:5px}.glass-btn>span{display:none}.glass-btn .lucide{width:16px}.enemy-hud{position:absolute;top:calc(var(--safe-top) + 48px);left:50%;transform:translateX(-50%);width:220px;text-align:center;pointer-events:none;color:#e4d0be;text-shadow:0 2px 8px #000;font-size:11px}.enemy-hud>span:nth-child(2){margin-left:7px;font-size:8px;color:#bcb4aa}.enemy-hp{height:5px;margin-top:6px;border:1px solid #a183656b;background:#291d1a;transform:skewX(-14deg);box-shadow:0 2px 7px #0007}.enemy-hp>div{height:100%;background:linear-gradient(90deg,#70443e,#ba7464);transition:width .2s}.enemy-hud small{font-size:8px;letter-spacing:.6px;color:#bfb6a6}.resource-hud{position:absolute;left:calc(var(--safe-left) + 52px);top:calc(var(--safe-top) + 131px);width:156px;pointer-events:none}.resource-label{display:flex;justify-content:space-between;color:#d9c08c;font-size:7px;line-height:10px;white-space:nowrap}.resource-label>span:nth-child(2){color:#add4d5}.rage-track{height:2px;margin-top:3px;background:#6d56364d}.rage-track>div{height:100%;background:#c6a569;transition:width .15s}.scene-status{position:absolute;top:calc(var(--safe-top) + 91px);left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:1px;color:#bccdbd;padding:3px 8px;border:1px solid #6d847244;border-radius:3px;background:#101c1bb3;pointer-events:none}.live-dot{display:inline-block;width:4px;height:4px;margin-right:5px;border-radius:50%;background:#b8cda1;box-shadow:0 0 7px #a4c48d44}.scene-note{position:absolute;bottom:calc(var(--safe-bottom) + 78px);left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:6px;font-size:8px;letter-spacing:.2px;color:#c1c8c8;white-space:nowrap;pointer-events:none;text-shadow:0 2px 5px #000}.scene-note .lucide{width:11px;height:11px}.scene-sound{position:absolute;right:calc(var(--safe-right) + 7px);top:calc(var(--safe-top) + 151px);min-height:27px;padding:4px 7px;border:1px solid #6d797a59;border-radius:3px;background:#101a23b3;color:#b3bdbb;font-size:8px}.loot-currencies{position:absolute;left:50%;bottom:calc(var(--safe-bottom) + 102px);transform:translateX(-50%);pointer-events:none}.currencies{display:flex;align-items:center;gap:15px;font-size:8px;color:#bfc6c7}.currencies>div{display:flex;gap:5px;align-items:center}.currencies>div>strong{font-size:10px;font-weight:500;color:#e1cfaa;font-variant-numeric:tabular-nums}.gold-mark{color:#e5be6c}.shard-mark{color:#9fbec3}
/* Controls are separate left / center / right touch zones. */
.movement-controls,.battle-controls{display:contents}#autoMoveButton{position:absolute;left:var(--safe-left);bottom:calc(var(--safe-bottom) + 107px);width:122px;min-height:29px;font-size:8px;color:#d7ddcb;border:1px solid #a5ab8e66;background:#17252bce;border-radius:4px;letter-spacing:.3px}#evadeButton{position:absolute;right:calc(var(--safe-right) + 6px);bottom:calc(var(--safe-bottom) + 55px);width:83px;height:83px;border-radius:50%;border:1px solid #cbb679a3;background:radial-gradient(circle at 35% 25%,#605637d9,#202e32e6 65%);box-shadow:inset 0 0 0 5px #101d25bb,inset 0 0 0 6px #a5986a4d,0 5px 20px #0006;font:13px var(--serif);letter-spacing:1px;color:#ead9b1}#evadeButton:active{transform:scale(.96);border-color:#ffe1a0}#evadeButton:disabled{opacity:.55}.start-btn{position:absolute;right:var(--safe-right);bottom:calc(var(--safe-bottom) + 153px);min-width:111px;min-height:35px;padding:8px 10px;border:1px solid #c4a15e99;border-radius:5px;background:linear-gradient(135deg,#b89a5ee6,#715e3ff0);box-shadow:0 4px 15px #0004;color:#111b21;font-weight:700;font-size:10px;letter-spacing:1px}.start-btn>.lucide{width:13px;height:13px;fill:currentColor}.camp-btn,.speed-btn{position:absolute;bottom:var(--safe-bottom);width:35px;height:35px;border:1px solid #87938e69;border-radius:50%;background:#15242bd9;color:#cbd0c5}.camp-btn{right:calc(var(--safe-right) + 62px)}.speed-btn{right:calc(var(--safe-right) + 16px)}.camp-btn>span,.speed-btn>span{display:none}.camp-btn .lucide,.speed-btn .lucide{width:15px;height:15px}.battle-hotbar{position:absolute;left:50%;bottom:calc(var(--safe-bottom) + 3px);transform:translateX(-50%);display:flex;gap:6px;align-items:center;justify-content:center;max-width:calc(100% - 300px)}.battle-hotbar button{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;width:52px;height:58px;padding:7px 3px;border:1px solid #b2a57d9c;background:linear-gradient(150deg,#48525bd4,#111f2be8);border-radius:6px;box-shadow:inset 0 0 0 3px #101b25b3,0 4px 10px #0006;color:#ece5ce}.battle-hotbar button:before{content:'';position:absolute;inset:3px;border:1px solid #b9bdad22;border-radius:3px;pointer-events:none}.battle-hotbar button>.lucide{width:23px;height:23px;filter:drop-shadow(0 0 5px #ecd4a330)}.battle-hotbar button>small{position:absolute;top:2px;left:5px;font-size:8px;color:#c6caba}.battle-hotbar button>span{font-size:7px;line-height:1;white-space:nowrap;letter-spacing:.2px}.battle-hotbar button:disabled{opacity:.58;filter:saturate(.65)}.battle-hotbar button:active{background:#8d7956d6}.model-status{position:absolute;z-index:3;top:calc(var(--safe-top) + 116px);left:50%;transform:translateX(-50%);max-width:240px;padding:4px 9px;border:1px solid #a8a17b66;border-radius:4px;background:#12212bd9;color:#e3cc96;font-size:9px;line-height:1.5;text-align:center;pointer-events:none}.model-status.error{border-color:#b98b6b88;color:#efc6a7;background:#3a2b25d9}.render-diagnostics{position:absolute;bottom:2px;left:50%;transform:translateX(-50%);font:8px/1.3 ui-monospace,monospace;color:#b7c7c4;pointer-events:none;white-space:nowrap;text-shadow:0 1px 3px #000}
/* Native field journal: optional information rather than a permanently rendered dashboard. */
.field-records{position:absolute;z-index:12;top:var(--safe-top);left:50%;transform:translateX(-50%)}.field-records>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:7px;min-height:31px;padding:5px 10px;border:1px solid #a9a58b55;border-radius:4px;background:#101a22d6;color:#d4d7ca;font-size:9px;cursor:pointer;user-select:none}.field-records>summary::-webkit-details-marker{display:none}.field-records>summary>.lucide{width:13px;height:13px}.drawer-chevron{color:#aab1a5;font-size:13px;line-height:1}.field-records[open]>summary{border-color:#c9ae7299;color:#ebd7a9}.field-records[open] .drawer-chevron{transform:rotate(180deg)}.records-content{position:fixed;top:44px;left:50%;transform:translateX(-50%);width:min(950px,calc(100vw - var(--safe-left) - var(--safe-right)));max-height:calc(100dvh - 70px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#7c8174 #101920;padding:20px;border:1px solid #818b8377;border-radius:8px;background:linear-gradient(145deg,#17212afc,#0e1720fc);box-shadow:0 20px 90px #000b;contain:layout paint}.records-title{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:16px;margin-bottom:16px;border-bottom:1px solid #64706b66}.records-title h2{font-size:22px;color:#e3d7bc;margin-top:4px}.records-title #sessionLabel{font-size:9px;color:#9dacaa}.records-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:14px}.records-overview,.loadout-grid{display:flex;flex-direction:column;gap:14px}.card{border:1px solid #5d6d704d;border-radius:5px;background:#111b24bf;overflow:hidden}.card-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 14px 12px}.card-heading h3{display:flex;align-items:center;gap:7px;font:500 12px ui-sans-serif,system-ui}.card-heading .lucide{width:15px;height:15px;color:#bdc3b1}.text-button{display:inline-flex;align-items:center;gap:4px;min-height:24px;color:#d1bb8c;font-size:10px;white-space:nowrap}.text-button>.lucide{width:12px;height:12px}.equipment-row{display:flex;align-items:center;gap:10px;padding:0 14px;margin-bottom:12px;cursor:pointer}.item-copy{flex:1;min-width:0}.item-copy strong{display:block;font-size:11px;font-weight:500;color:#deded2;line-height:1.65;overflow-wrap:anywhere}.item-copy small{font-size:9px;color:#94a7af}.item-slot{font-size:8px;color:#8da2a8}.item-icon{display:grid;place-items:center;flex:0 0 36px;width:36px;height:38px;border:1px solid #a8aaa06b;border-radius:4px;color:#c2c9bc;background:linear-gradient(135deg,#3b4546,#17252d)}.item-icon>.lucide{width:21px;height:21px}.item-icon.magic{border-color:#6692b8;color:#a1c8ea;background:linear-gradient(135deg,#29415b,#162632)}.item-icon.rare{border-color:#c0ad65;color:#e0ce8b;background:linear-gradient(135deg,#50462a,#232b27)}.item-icon.legendary{border-color:#c58a56;color:#edb080;background:linear-gradient(135deg,#63452f,#2c2623)}.item-icon.relic{border-color:#ae8ecc;color:#d4b2f1;background:linear-gradient(135deg,#514066,#252235);box-shadow:0 0 10px #b58cd41f}.primal-name{color:#f18c7c!important;text-shadow:0 0 10px #c85a4533}.primal-label{display:block;color:#f19a8c;font-size:9px;letter-spacing:1px;line-height:1.7}.primal-icon{border-color:#df7a68!important;box-shadow:0 0 11px #c858402b}.dawn-note,.binding-note{display:block;font-size:9px;line-height:1.7}.dawn-note{color:#d8bd83}.binding-note{color:#9badb0}.forge-link{display:flex;justify-content:flex-start;gap:7px;width:calc(100% - 28px);margin:0 14px 14px;border-top:1px solid #73807844;padding-top:10px;color:#d2bc8e;font-size:10px}.forge-link>.lucide{width:14px}.forge-link>span{margin-left:auto;font-size:8px;color:#91a19d}.skill-slots{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:0 15px 14px}.skill-slot{display:flex;flex-direction:column;gap:6px;font-size:9px;color:#c2cfcc}.skill-icon{position:relative;display:grid;place-items:center;width:48px;height:48px;flex-shrink:0;background:radial-gradient(circle at 30% 20%,#5c665f,#17252e);border:1px solid #b8ac8388;border-radius:5px;box-shadow:inset 0 0 0 3px #14212ac7;color:#e5d0a1}.skill-icon>.lucide{width:24px;height:24px}.cooldown{position:absolute;bottom:2px;left:0;right:0;font-size:7px;color:#dbdccf;text-align:center;background:#0a151ac4;line-height:13px}.synergy{display:flex;gap:9px;align-items:center;border-block:1px solid #65727344;margin:0 14px;padding:11px 0;color:#a6bab9}.synergy .lucide{width:20px;height:20px;flex-shrink:0}.synergy strong,.synergy span{display:block}.synergy strong{font-size:10px;font-weight:500}.synergy span{font-size:8px;color:#8c9ea0}.talent-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;font-size:10px;color:#aebcb4}.talent-footer>span{display:flex;align-items:center;gap:5px}.talent-footer .lucide{width:12px;height:12px}.talent-footer b{color:#e2c899;margin-left:3px}.power-label{padding:0 15px;font-size:10px;color:#b3c2c5}.power-label>span{float:right;font-size:8px;color:#879da2}.power{font:40px/1.4 var(--serif);color:#e1c48e;padding:0 15px 11px}.power>span{font:8px ui-sans-serif,system-ui;margin-left:8px;color:#9eadad}.stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px;margin:0 15px 15px}.stat-grid>div{display:flex;align-items:center;justify-content:space-between;font-size:10px}.stat-grid span{display:flex;align-items:center;gap:5px;color:#9cafb5}.stat-grid .lucide{width:11px;height:11px}.stat-grid strong{font-size:11px;font-weight:500;color:#dce0d4}.run-totals{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:13px 15px;border-top:1px solid #5f6e7044}.run-totals span,.run-totals strong{display:block}.run-totals span{color:#8ea3a9;font-size:8px}.run-totals strong{font:11px/1.8 ui-sans-serif,system-ui;color:#d2d6ca}.tag{padding:2px 5px;border:1px solid #7c927e44;border-radius:3px;font-size:8px;color:#b6c6b2}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:32px;min-height:32px;border:1px solid #78848255;border-radius:4px;background:#15212bc9;color:#c5d0ce}.journal-card #journal{max-height:220px;overflow:auto;padding:0 14px;scrollbar-width:thin}.journal-row{display:flex;align-items:center;gap:9px;border-top:1px solid #5a6c7044;padding:10px 0;cursor:pointer}.journal-row>.item-copy strong{font-size:10px}.journal-row>.item-copy small{font-size:8px}.journal-row>time{font-size:8px;color:#82979c}.journal-row .item-icon{width:29px;height:31px;flex-basis:29px}.journal-empty{padding:20px 10px 25px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center;color:#95a9a6}.journal-empty>.lucide{width:28px;height:28px;color:#c5b47e}.journal-empty strong{font-size:11px;font-weight:500;color:#cbd2c5}.journal-empty p{font-size:9px}.journal-bottom{display:flex;width:100%;padding:13px 14px;gap:8px;justify-content:space-between;border-top:1px solid #6d7a7444;font-size:10px;color:#c3cdbb}.journal-bottom>.lucide{width:12px}.journal-bottom>span{margin-left:auto;font-size:8px;color:#8ea19d}.pass-card{position:relative;border:1px solid #98815a66;border-radius:5px;padding:18px;margin-top:15px;background:radial-gradient(ellipse at right,#a78f4d1c,transparent 70%)}.pass-symbol{position:absolute;right:20px;top:18px;font-size:36px;color:#c1aa7266}.pass-card h3{font-size:24px;color:#e0cda7;margin:7px 0}.pass-card p{font-size:10px;color:#a7b6ae;line-height:1.9}.pass-card>button{min-height:32px;font-size:10px;color:#e2c78f;margin-top:8px}.pass-card>button .lucide{width:13px}.pass-card>span{display:block;font-size:8px;color:#8ea09a;margin-top:8px}.bottom-note{display:flex;align-items:center;gap:12px;flex-wrap:wrap;font-size:8px;color:#9caeac;margin-top:17px}.bottom-note>span{display:flex;align-items:center;gap:5px}.bottom-note .lucide{width:11px;height:11px}.bottom-note button{font-size:9px;color:#d2bb86}.bottom-note #marketOpen{margin-left:auto}
/* Equipment and build overlays. The 3D figure stays between its slots in landscape. */
dialog{width:min(750px,calc(100vw - 32px));max-width:1100px;max-height:calc(100dvh - 30px);margin:auto;padding:0;border:1px solid #a5a38988;border-radius:8px;background:linear-gradient(140deg,#19242dfc,#0d1822fc);color:var(--text);box-shadow:0 25px 100px #000b;overflow:hidden}dialog::backdrop{background:#050a10ab}.wide-modal{width:min(1100px,calc(100vw - 32px))}.modal-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 23px;border-bottom:1px solid #7c878055;background:linear-gradient(90deg,#273139aa,#14212a22)}.modal-header .eyebrow{font-size:8px;color:#a9b9b8;letter-spacing:2px}.modal-header h2{font-size:27px;color:#e8ddc2;letter-spacing:1px;margin-top:3px}.modal-header>.icon-button{width:34px;height:34px;color:#cfccbb}.menu-paused{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 23px;border-bottom:1px solid #7a8c7955;background:#1f352f88;color:#b6d1b3;font-size:10px}.menu-paused .secondary{padding:5px 9px;font-size:9px}#modalContent{padding:20px 23px 24px;max-height:calc(100dvh - 164px);overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#8f977f #15212a;font-size:12px;color:#b4c2c4;contain:layout paint}.modal-intro{font-size:11px;color:#aebdbc;line-height:1.9;margin-bottom:18px}.modal-intro b{color:#ead1a0}.primary,.secondary,.danger,.bag-tabs button,.build-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:35px;padding:9px 14px;border:1px solid #8f98806b;border-radius:4px;background:#263638a6;color:#d4ddcd;font-size:11px;line-height:1.4}.primary{border-color:#c9ac6c;background:linear-gradient(135deg,#d9bc7b,#927648);color:#142029;font-weight:600}.danger{border-color:#b8806599;background:#694236ad;color:#f2d2bb}.danger:disabled,.primary:disabled,.secondary:disabled{opacity:.4}.modal-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:20px}.bag-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:0 0 16px}.bag-tabs button{padding:7px 12px;min-height:32px;font-size:10px;border-color:#6e85837d;background:#1a2b34}.bag-tabs button.active{border-color:#c9ad70;color:#f0d79e;background:#6a593c75}.item-power{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:0 0 46px;color:#c4c9c2;font:750 30px/1.1 ui-sans-serif,system-ui;letter-spacing:-1px;font-variant-numeric:tabular-nums}.item-power>small{font-size:8px;line-height:1.5;color:#a8b6b6;letter-spacing:1px;margin-top:3px}.item-power.magic{color:#9ac7eb}.item-power.rare{color:#e3cf84}.item-power.legendary{color:#edb07f}.item-power.relic{color:#cfb0ef}.item-power.primal{color:#f39280}.equipment-row .item-power{font-size:25px;flex-basis:35px}.equipment-toolbar,.bulk-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:16px}.equipment-toolbar>span{font-size:10px;color:#d3c293}.bag-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.bag-filters label,.reroll-choice{display:flex;flex-direction:column;gap:6px;font-size:10px;color:#b3c1bd}select{max-width:100%;min-height:35px;padding:8px;background:#182a34;border:1px solid #7c90878c;border-radius:4px;color:#d5ddd0;font-size:11px}.bag-filters select,.reroll-choice select{width:100%}.bulk-toolbar{justify-content:flex-start;padding:11px;border:1px solid #6c7f7444;background:#233a3a66;border-radius:5px}.filter-count{font-size:10px;color:#9bb1ad;margin:13px 0}.inventory-list{display:grid;gap:8px}.inventory-item{display:flex;align-items:center;gap:12px;border:1px solid #71847a66;border-left:2px solid #8d9f8b;border-radius:5px;padding:13px;background:linear-gradient(100deg,#23343e9c,#17273199)}.inventory-item.worn{border-left-color:#d3b576;background:linear-gradient(100deg,#514a3266,#1d2c3499)}.item-checkbox{width:19px;height:19px;flex:0 0 19px;accent-color:#d3b77e}.inventory-item .item-copy{min-width:90px}.affix-summary{display:flex;gap:4px 13px;flex-wrap:wrap;margin-top:7px;color:#b6c9c2;font-size:10px}.item-actions{display:flex;align-items:flex-end;justify-content:flex-end;flex-wrap:wrap;gap:6px;flex:0 0 172px}.item-actions>button,.skill-choice>button{min-height:29px;padding:5px 8px;border:1px solid #7c8f8288;border-radius:3px;background:#293b3d88;color:#cbd7c3;font-size:10px}.worn-tag{display:inline-flex;align-items:center;min-height:28px;font-size:10px;color:#d8bd82;padding:4px}.salvage-confirm{display:flex;align-items:center;gap:11px;flex-wrap:wrap;padding:16px;border:1px solid #be9b6599;border-radius:5px;background:#5a4b3288;color:#f1d7ac;font-size:11px;margin-bottom:13px}.empty-state{text-align:center;color:#a5b9b4;padding:35px}.character-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:14px}.character-top h3{font-size:25px;color:#e4d6b9;margin-top:5px}.character-top .eyebrow{color:#abbdbb}.character-level{display:inline-block;vertical-align:middle;margin-left:7px;padding:3px 6px;border:1px solid #ad996166;border-radius:3px;color:#d4bb86;font:9px ui-sans-serif,system-ui;letter-spacing:1px}.average-power{text-align:right;flex-shrink:0}.average-power small{display:block;color:#b8c4be;font-size:10px}.average-power b{display:block;color:#e6cb8d;font:700 48px/1.1 ui-sans-serif,system-ui;letter-spacing:-2px}.paper-doll{display:grid;grid-template-columns:minmax(190px,1fr) minmax(190px,1.2fr) minmax(190px,1fr);gap:14px;min-height:365px;border-block:1px solid #7a8a7d77;padding:16px 0;background:radial-gradient(ellipse at 50% 55%,#70828133,transparent 62%)}.paper-side{display:flex;flex-direction:column;justify-content:space-around;gap:12px;z-index:1}.paper-slot{display:flex;align-items:center;gap:9px;min-height:95px;padding:10px;text-align:left;border:1px solid #71867d80;border-left:2px solid #b9ab80;border-radius:5px;background:linear-gradient(120deg,#263941d4,#162630f0);color:#d7dfd3}.paper-slot>span:not(.item-power){flex:1;min-width:0}.paper-slot strong{display:block;font-size:11px;line-height:1.7;overflow-wrap:anywhere}.paper-slot small{color:#acbcb6;font-size:9px}.paper-slot .dawn-note,.paper-slot .binding-note{font-size:8px;line-height:1.5}.paper-slot .item-icon{width:31px;height:35px;flex-basis:31px}.paper-slot .item-power{font-size:30px;flex-basis:39px}.paper-slot.magic{border-left-color:#8ebde3}.paper-slot.rare{border-left-color:#dbc278}.paper-slot.legendary{border-left-color:#e1a36b}.paper-slot.relic{border-left-color:#bc99db}.character-model{position:relative;min-width:0;min-height:330px;touch-action:none;cursor:grab;outline-offset:3px;background:radial-gradient(ellipse at 50% 87%,#7e969233,transparent 36%)}.character-model:active{cursor:grabbing}.character-model canvas{position:absolute;inset:0;width:100%;height:100%}.model-fallback{height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#9fae9e}.model-fallback svg{color:#859b98}.model-fallback p{font-family:var(--serif);font-size:19px;color:#d2d6c5;letter-spacing:2px;margin:9px 0}.model-fallback small{font-size:9px}.has-model .model-fallback{display:none}.rotate-hint{position:absolute;bottom:4px;left:0;right:0;text-align:center;color:#b0c0bd;font-size:9px;pointer-events:none}.character-actions{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.stat-detail{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-detail>div{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 10px;border:1px solid #71827a55;border-radius:4px;background:#1c30375c;font-size:10px}.stat-detail span{color:#a4bdb8}.stat-detail strong{font-size:12px;font-weight:500;color:#e2d6b6}.reroll-hero{display:flex;align-items:center;gap:20px;margin:0 0 22px}.reroll-hero h3{font-size:25px;color:#e1d5b7}.reroll-hero p{font-size:10px;color:#9fb7b3;margin-top:8px}.reroll-hero .item-power{font-size:48px}.reroll-range{display:flex;align-items:center;justify-content:space-between;padding:18px;margin:18px 0;border:1px solid #7d8e7266;border-radius:5px;background:#31433a77;font-size:11px}.reroll-range strong{font-size:27px;color:#e6c992;font-weight:500}.reroll-cost{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0}.reroll-cost>div{display:flex;align-items:center;flex-direction:column;gap:9px;padding:20px 10px;border:1px solid #8591766b;border-radius:5px;background:#24363880;color:#bbc9ba;font-size:11px}.reroll-cost b{font-size:28px;font-weight:600;color:#dfc28b}.reroll-cost small{font-size:10px;color:#a7bcad}.build-tabs{display:flex;gap:8px;border-bottom:1px solid #7b8c7c77;margin-bottom:17px;padding-bottom:12px}.build-tabs button{min-height:36px;background:#20333dc2;border-color:#7b8c7c77;color:#c8d6c6}.build-tabs button.active{border-color:#cbb077;color:#edcf91;background:#6c5c3c75}.strategy-label{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px;font-size:11px;color:#b1c5b8}.strategy-label select{font-size:10px}.selected-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:20px}.selected-slots>button{display:flex;flex-direction:column;gap:5px;min-height:64px;padding:10px 5px;border:1px solid #71867788;border-radius:5px;background:#20353cb8;color:#c2d5c3;font-size:10px}.selected-slots>button>small{font-size:8px;color:#9db4ac}.selected-slots>button.active{border-color:#e2bd77;background:#6154388c;color:#f0d8a4}.skill-tree{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.skill-tree-card{padding:15px;margin-bottom:10px;border:1px solid #7b8f7a7d;border-radius:5px;background:linear-gradient(135deg,#22394288,#142631aa)}.skill-tree-card.equipped-skill{border-color:#baa06d9c}.skill-choice,.talent-row,.forge-row,.zone-choice{display:flex;align-items:center;gap:13px;border:1px solid #6b807366;border-radius:4px;padding:15px;margin-bottom:10px}.skill-tree-card .skill-choice{border:0;padding:0;min-height:84px}.desc{flex:1;min-width:0}.desc strong{display:block;font:500 12px ui-sans-serif,system-ui;color:#dddcc5}.desc p{font-size:10px;color:#a4bcb6;line-height:1.8;margin-top:5px}.skill-choice .desc>small{display:block;color:#bcb58a;font-size:8px;letter-spacing:1px;margin-bottom:5px}.rune-branches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:13px 0}.rune-branches>button:first-child{grid-column:1/-1;width:65%;margin:0 auto}.rune-branches>button:not(:first-child){margin-left:0}.rune-branches>button:not(:first-child):before{content:'↓';left:calc(50% - 4px);top:-13px;font-size:10px;color:#c2b47b}.rune-branches>button:first-child:before{display:none}.rune-branches>button{display:block;position:relative;margin-left:14px;padding:12px;text-align:left;border:1px solid #738c7a88;border-radius:4px;background:#253b3ca6;color:#c9d8c4;font-size:10px;min-height:35px}.rune-branches>button:before{content:'↳';position:absolute;left:-15px;top:8px;color:#8fa798}.rune-branches>button.active{border-color:#cfb477;background:#5c503690;color:#ead4a1}.rune-branches strong{display:block;font-size:11px;margin-bottom:5px}.rune-branches small{font-size:10px;line-height:1.65}.skill-effective{padding-top:10px;border-top:1px solid #74816b66;font-size:10px;color:#c5c494}.talent-row{position:relative;border-left:2px solid #809c7a;padding:19px 15px 13px 19px;margin-left:12px;background:#243c3b66}.talent-row:before{content:attr(data-tier);position:absolute;top:3px;left:19px;font-size:8px;letter-spacing:1px;color:#afbb91}.talent-row>.lucide{flex-shrink:0;color:#c6c893}.talent-row .desc{padding-top:4px}.talent-row b{color:#cfcdaf;font-size:11px;white-space:nowrap}.talent-row>button{width:30px;height:30px;border:1px solid #9daa8299;border-radius:4px;background:#48503c99;color:#e1deb8;font-size:18px}.talent-row.talent-locked{opacity:.6}.talent-row.capstone{border-color:#c9a567a6;background:linear-gradient(90deg,#69593a80,#3a402f55)}.forge-block{border:1px solid #72867477;border-radius:5px;margin-bottom:12px;background:#20353a77}.forge-block .forge-row{border:0;margin:0;padding:13px}.forge-row .item-copy{flex:1;min-width:0}.forge-row .secondary{white-space:nowrap;font-size:10px}.infusion-row{display:flex;gap:8px;padding:0 13px 13px}.infusion-row select{min-width:0;flex:1;font-size:10px}.infusion-row button{font-size:10px;white-space:nowrap}.zone-choice{width:100%;text-align:left;justify-content:flex-start;background:linear-gradient(100deg,#2e43465c,#172b345c)}.zone-choice>.lucide{width:28px;height:28px;color:#c8bb8b}.zone-choice>div{flex:1}.zone-choice strong,.zone-choice small{display:block}.zone-choice strong{font-size:15px;color:#ded8b9;font-family:var(--serif)}.zone-choice small{font-size:9px;color:#96b1ad;margin-top:4px}.info-block{padding:18px;border:1px solid #71846d66;border-radius:5px;background:#233a3a75;margin-bottom:12px}.info-block h3{font-size:18px;color:#e0d2ae;margin-bottom:8px}.info-block p{font-size:11px;color:#a8bfba;line-height:1.9}.notice{font-size:11px!important;line-height:1.9!important;color:#d7bb85!important;border-left:2px solid #b59b62;padding-left:12px;margin:14px 0}.toggle-row{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:12px;margin-bottom:18px}.toggle-row input{accent-color:#d4b97f}.challenge-controls{display:flex;align-items:flex-end;gap:12px;margin:14px 0}.challenge-controls label{display:flex;flex:1;flex-direction:column;gap:6px}.challenge-controls select{width:100%;min-width:0}.challenge-controls .secondary{white-space:nowrap}.season-hero{padding:23px;border:1px solid #bca06488;border-radius:5px;margin-bottom:20px;background:radial-gradient(ellipse at top right,#d6ad5429,transparent 70%),#223432}.season-hero h3{font-size:27px;color:#ead6a8;margin:8px 0}.season-hero p{font-size:11px;color:#a6bfb3}.dawn-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin:19px 0}.dawn-grid>div{border:1px solid #988e655c;border-radius:4px;padding:14px;background:#4a483355}.dawn-grid strong{font-size:12px;color:#d7be88;font-weight:500}.dawn-grid p{font-size:10px;line-height:1.8;color:#a7b7a2;margin-top:5px}
/* Optional portrait guide and a functional portrait fallback. Never rotate the document. */
.rotation-prompt{position:fixed;z-index:40;inset:0;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at 50% 40%,#203342ee,#08101af5);color:#e2e3d6}.rotation-card{width:min(380px,100%);padding:30px 23px;border:1px solid #a59b6f77;border-radius:12px;background:linear-gradient(140deg,#2a3c46ee,#0f202cee);box-shadow:0 20px 70px #0008;text-align:center}.rotate-device{margin:0 auto 17px;width:100px;color:#d6bc83}.rotate-device svg{width:100%;height:70px;fill:none;stroke:currentColor;stroke-width:2}.rotation-card h2{font-size:27px;color:#e8d8b3;margin:8px 0 15px}.rotation-card>p:not(.eyebrow){font-size:12px;color:#afc0c2;line-height:2}.rotation-actions{display:flex;gap:9px;justify-content:center;margin:24px 0 16px}.rotation-actions>button{min-height:40px;flex:1}.rotation-card>small{font-size:9px;color:#8fa4aa;line-height:1.7}.damage-number{position:absolute;left:50%;top:45%;color:#f3e7c6;font-weight:700;font-size:22px;pointer-events:none;text-shadow:0 2px 4px #000;animation:damageRise 1.2s ease-out forwards}.damage-number.critical{color:#f4d684;font-size:30px}.damage-number.fire{color:#f1ad78}#damageNumbers{position:absolute;inset:0;pointer-events:none;overflow:hidden}#toasts{position:fixed;z-index:60;left:50%;bottom:calc(var(--safe-bottom) + 130px);transform:translateX(-50%);display:flex;flex-direction:column;gap:8px;pointer-events:none;max-width:min(520px,calc(100vw - 40px))}.toast{border:1px solid #9bb18388;border-radius:5px;padding:11px 17px;background:#243d3cf2;color:#d9e4c5;box-shadow:0 5px 25px #0008;font-size:11px;text-align:center;animation:toastIn .2s ease-out}.toast.error{border-color:#bb8e6b;background:#583e32f5;color:#f1d4b6}@keyframes toastIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}@keyframes damageRise{from{opacity:1;transform:translate(-50%,0) scale(.95)}to{opacity:0;transform:translate(-50%,-65px) scale(1.05)}}
@media(orientation:landscape) and (max-height:500px){:root{--safe-top:max(8px,env(safe-area-inset-top));--safe-bottom:max(12px,env(safe-area-inset-bottom))}.topbar{height:28px}.wordmark-cn{font-size:20px}.wordmark-en{font-size:8px}.wordmark>b{font-size:7px}.top-actions>button{min-height:28px;font-size:9px;padding:5px 8px}.rail{top:calc(var(--safe-top) + 38px);grid-template-columns:repeat(4,40px);padding:4px;gap:1px}.nav-item{width:40px;min-height:38px;font-size:7px;gap:3px}.nav-item>.lucide{width:16px;height:16px}.player-strip{top:calc(var(--safe-top) + 38px);width:198px;padding:8px;grid-template-columns:31px 1fr;grid-template-rows:14px 22px 10px 2px;min-height:72px;gap:1px 7px}.avatar{width:31px;height:37px}.player-title>strong{font-size:10px}.player-title>strong>span{font-size:7px}.xp-line{font-size:6px}.hp-stat>strong{font-size:8px}.hp-stat>span{font-size:6px}.hp-track{height:4px;margin-top:2px}.enemy-hud{top:calc(var(--safe-top) + 40px);width:190px;font-size:10px}.enemy-hud small{font-size:7px}.enemy-hp{height:4px;margin-top:4px}.resource-hud{top:calc(var(--safe-top) + 115px);left:calc(var(--safe-left) + 46px);width:143px}.resource-label{font-size:6px}.scene-status{top:calc(var(--safe-top) + 79px);font-size:7px}.scene-heading{top:calc(var(--safe-top) + 132px);max-width:235px;gap:10px}.scene-heading h1{font-size:20px;margin:2px 0}.scene-heading .eyebrow{font-size:6px}.zone-meta{font-size:7px}.glass-btn{min-width:30px;min-height:30px;margin-top:10px}.glass-btn .lucide{width:14px}.scene-sound{top:calc(var(--safe-top) + 128px);font-size:7px;min-height:24px}#autoMoveButton{bottom:calc(var(--safe-bottom) + 92px);width:106px;min-height:25px;font-size:7px}#evadeButton{width:71px;height:71px;font-size:11px;bottom:calc(var(--safe-bottom) + 46px);right:calc(var(--safe-right) + 10px)}.start-btn{bottom:calc(var(--safe-bottom) + 130px);min-width:103px;min-height:31px;font-size:9px;padding:7px}.camp-btn,.speed-btn{width:30px;height:30px}.camp-btn{right:calc(var(--safe-right) + 58px)}.speed-btn{right:calc(var(--safe-right) + 18px)}.battle-hotbar{max-width:calc(100% - 285px);gap:5px}.battle-hotbar button{width:46px;height:50px;gap:4px;padding:7px 2px}.battle-hotbar button>.lucide{width:20px;height:20px}.battle-hotbar button>span{font-size:6px}.battle-hotbar button>small{font-size:7px}.scene-note{bottom:calc(var(--safe-bottom) + 64px);font-size:7px}.scene-note .lucide{width:9px;height:9px}.loot-currencies{bottom:calc(var(--safe-bottom) + 84px)}.currencies{gap:11px;font-size:7px}.currencies>div>strong{font-size:9px}.field-records>summary{min-height:28px;font-size:8px;padding:4px 8px;gap:5px}.field-records>summary>.lucide{width:12px;height:12px}.records-content{top:36px;max-height:calc(100dvh - 52px);padding:16px}.records-title{padding-bottom:12px;margin-bottom:12px}.records-title h2{font-size:20px}dialog,.wide-modal{width:calc(100vw - var(--safe-left) - var(--safe-right));max-height:calc(100dvh - 14px)}.modal-header{padding:10px 17px}.modal-header h2{font-size:22px;margin-top:1px}.modal-header .eyebrow{font-size:7px}.modal-header>.icon-button{width:30px;height:30px;min-height:30px}.menu-paused{padding:6px 17px;font-size:9px}#modalContent{padding:14px 17px 18px;max-height:calc(100dvh - 110px)}dialog:has(#characterModel) .modal-header .eyebrow{display:none}dialog:has(#characterModel) #modalContent{max-height:calc(100dvh - 92px);padding:10px 17px 14px}.character-top{margin-bottom:7px}.character-top h3{font-size:20px}.character-top .eyebrow{font-size:8px}.average-power b{font-size:35px}.average-power small{font-size:8px}.paper-doll{grid-template-columns:minmax(165px,1fr) minmax(150px,1.05fr) minmax(165px,1fr);gap:10px;min-height:216px;padding:8px 0}.character-model{min-height:200px}.paper-side{gap:6px}.paper-slot{min-height:61px;padding:7px;gap:6px}.paper-slot .item-icon{width:26px;height:30px;flex-basis:26px}.paper-slot strong{font-size:10px}.paper-slot small{font-size:8px}.paper-slot .item-power{font-size:26px;flex-basis:33px}.paper-slot .binding-note{display:none}.paper-slot .dawn-note{font-size:7px}.rotate-hint{font-size:8px}.character-actions{margin:12px 0;gap:6px}.character-actions .secondary{font-size:9px;padding:7px 10px;min-height:31px}.stat-detail>div{padding:9px;font-size:9px}.stat-detail strong{font-size:11px}.skill-tree{gap:10px}.skill-tree-card{padding:12px}.skill-tree-card .skill-choice{gap:9px;min-height:77px}.selected-slots{gap:6px;margin-bottom:14px}.selected-slots>button{min-height:53px;font-size:9px}.skill-icon{width:39px;height:39px}.skill-icon>.lucide{width:20px;height:20px}.desc strong{font-size:11px}.desc p{font-size:9px}.rune-branches>button{font-size:9px;padding:9px}.rune-branches strong{font-size:10px}.rune-branches small{font-size:9px}.modal-intro{font-size:10px;margin-bottom:13px}.build-tabs{margin-bottom:12px;padding-bottom:9px}.build-tabs button{font-size:10px;min-height:32px;padding:7px 11px}.bag-tabs{margin-bottom:12px;gap:6px}.bag-tabs button{font-size:9px;min-height:29px}.bag-filters{gap:8px;margin:11px 0}.bag-filters label{font-size:9px}.bag-filters select{font-size:10px;min-height:31px}.bulk-toolbar{padding:8px;margin-bottom:11px}.bulk-toolbar .secondary{font-size:9px;min-height:30px;padding:7px 10px}.inventory-item{gap:9px;padding:10px}.inventory-item .item-copy strong{font-size:10px}.item-actions{flex-basis:145px;gap:5px}.item-actions>button{font-size:9px;min-height:26px;padding:4px 7px}.item-power{font-size:27px;flex-basis:39px}.affix-summary{font-size:9px}.dawn-note,.binding-note{font-size:8px}.reroll-hero{margin-bottom:15px}.reroll-hero h3{font-size:22px}.reroll-hero .item-power{font-size:39px}.reroll-range{padding:13px;margin:13px 0}.reroll-range strong{font-size:23px}.reroll-cost{margin:15px 0}.reroll-cost>div{padding:14px 8px;gap:6px}.reroll-cost b{font-size:23px}}
@media(orientation:landscape) and (max-width:740px){.wordmark-en{display:none}.wordmark>b{border:0;padding:0}.field-records>summary>span:not(.drawer-chevron){display:none}.field-records>summary{width:31px;padding:4px}.scene-note>span{font-size:6px}.battle-hotbar{gap:4px;max-width:calc(100% - 250px)}.battle-hotbar button{width:42px;height:48px}.rail{grid-template-columns:repeat(4,36px)}.nav-item{width:36px;min-height:36px;font-size:7px}.enemy-hud{width:174px}.scene-heading{max-width:205px}.scene-heading h1{font-size:19px}.paper-doll{grid-template-columns:minmax(145px,1fr) minmax(125px,1fr) minmax(145px,1fr);gap:7px}.paper-slot{padding:6px;gap:5px}.paper-slot .item-icon{display:none}.paper-slot strong{font-size:9px}.paper-slot .item-power{font-size:25px;flex-basis:32px}.character-top h3{font-size:18px}.stat-detail{grid-template-columns:repeat(4,minmax(0,1fr))}.stat-detail>div{padding:8px 6px;gap:4px;font-size:8px}.skill-tree{grid-template-columns:1fr}.inventory-item .item-copy{min-width:90px}.records-grid{grid-template-columns:1fr 1fr}}
@media(orientation:portrait){.wordmark-en{display:none}.wordmark-cn{font-size:21px}.wordmark>b{font-size:7px;border:0;padding:0}.fullscreen-button>span{display:none}.wallet-btn{font-size:9px;padding:5px 7px}.wallet-btn>.lucide:last-child{display:none}.rail{grid-template-columns:repeat(4,38px);top:calc(var(--safe-top) + 45px);padding:4px;gap:1px}.nav-item{width:38px;min-height:39px;font-size:7px}.nav-item>.lucide{width:16px;height:16px}.player-strip{width:175px;grid-template-columns:27px 1fr;padding:8px;gap:2px 6px}.avatar{width:27px;height:37px}.avatar>.lucide{width:20px}.player-title>strong{font-size:9px}.player-title>strong>span{display:none}.xp-line{font-size:6px}.hp-stat>span{font-size:6px}.hp-stat>strong{font-size:8px}.resource-hud{left:calc(var(--safe-left) + 41px);width:123px;top:calc(var(--safe-top) + 130px)}.resource-label{font-size:6px}.scene-heading{top:calc(var(--safe-top) + 153px);max-width:210px}.scene-heading h1{font-size:22px}.scene-heading .eyebrow{font-size:6px}.zone-meta{font-size:7px}.enemy-hud{top:calc(var(--safe-top) + 232px);width:180px;font-size:10px}.enemy-hud small{font-size:7px}.scene-status{top:calc(var(--safe-top) + 277px);font-size:7px}.scene-sound{top:calc(var(--safe-top) + 151px);font-size:7px;right:var(--safe-right)}.field-records{top:calc(var(--safe-top) + 202px);right:var(--safe-right);left:auto;transform:none}.field-records>summary{width:30px;height:30px;padding:4px;min-height:30px}.field-records>summary>span{display:none}.records-content{position:fixed;top:40px;left:auto;right:0;transform:none;width:calc(100vw - var(--safe-left) - var(--safe-right));max-height:calc(100dvh - 274px);padding:15px}.records-title{display:block}.records-title #sessionLabel{display:block;margin-top:7px;font-size:8px}.records-title h2{font-size:21px}.records-grid{grid-template-columns:1fr}.loot-currencies{bottom:calc(var(--safe-bottom) + 260px)}.scene-note{bottom:calc(var(--safe-bottom) + 239px);font-size:6px}.battle-hotbar{left:var(--safe-left);right:var(--safe-right);bottom:calc(var(--safe-bottom) + 178px);max-width:none;transform:none;gap:5px}.battle-hotbar button{width:46px;height:52px}.battle-hotbar button>span{font-size:6px}#autoMoveButton{width:111px;font-size:7px;bottom:calc(var(--safe-bottom) + 104px)}#evadeButton{width:77px;height:77px;font-size:12px;bottom:calc(var(--safe-bottom) + 48px)}.start-btn{bottom:calc(var(--safe-bottom) + 136px);min-height:32px;font-size:9px;min-width:104px}.camp-btn,.speed-btn{width:31px;height:31px}.camp-btn{right:calc(var(--safe-right) + 59px)}.speed-btn{right:calc(var(--safe-right) + 16px)}.render-diagnostics{font-size:7px}.records-overview,.loadout-grid{gap:12px}.pass-card h3{font-size:22px}dialog,.wide-modal{width:calc(100vw - 22px);max-height:calc(100dvh - 28px)}.modal-header{padding:16px}.modal-header h2{font-size:23px}.menu-paused{padding:8px 16px;font-size:9px}#modalContent{padding:17px 15px 20px;max-height:calc(100dvh - 153px)}.character-top h3{font-size:19px}.character-top .eyebrow{font-size:8px}.average-power b{font-size:36px}.average-power small{font-size:8px}.paper-doll{grid-template-columns:1fr 1fr;gap:9px;padding:12px 0;min-height:0}.character-model{grid-column:1/-1;grid-row:1;min-height:290px;height:290px}.paper-side{grid-row:2;gap:8px}.paper-slot{padding:8px;min-height:95px;gap:6px;flex-wrap:wrap}.paper-slot .item-icon{width:27px;height:30px;flex-basis:27px}.paper-slot>span:not(.item-power){flex-basis:calc(100% - 39px)}.paper-slot .item-power{font-size:27px;flex-basis:35px;margin-left:auto}.paper-slot strong{font-size:10px}.paper-slot .binding-note{display:none}.paper-slot .dawn-note{font-size:8px}.character-actions{gap:7px}.character-actions .secondary{font-size:10px;padding:8px 10px}.stat-detail{grid-template-columns:1fr 1fr;gap:7px}.stat-detail>div{font-size:10px;padding:11px 9px}.bag-filters{grid-template-columns:1fr 1fr;gap:9px}.bag-filters select{font-size:10px}.bulk-toolbar{gap:6px;padding:9px}.bulk-toolbar .secondary{font-size:9px;padding:8px;min-height:32px}.inventory-item{gap:8px;flex-wrap:wrap;padding:11px}.item-checkbox{width:18px;height:18px;flex-basis:18px}.inventory-item .item-icon{width:30px;height:33px;flex-basis:30px}.inventory-item>.item-power{font-size:28px;flex-basis:37px}.inventory-item>.item-copy{flex-basis:calc(100% - 116px)}.item-actions{flex:1 0 100%;justify-content:flex-end;gap:7px}.item-actions>button{font-size:10px;min-height:32px}.affix-summary{font-size:9px}.dawn-note,.binding-note{font-size:9px}.selected-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.selected-slots>button{min-height:59px;font-size:10px}.build-tabs{gap:5px}.build-tabs button{font-size:10px;min-height:34px;padding:8px 9px}.skill-tree{grid-template-columns:1fr;gap:10px}.skill-tree-card{padding:12px}.skill-choice{gap:9px}.skill-choice .desc strong{font-size:11px}.skill-choice .desc p{font-size:9px}.skill-choice>button{font-size:9px;min-height:32px;padding:6px}.skill-icon{width:40px;height:40px}.skill-icon .lucide{width:20px;height:20px}.rune-branches>button{padding:11px}.talent-row{padding:19px 10px 12px 13px;margin-left:7px;gap:9px}.talent-row:before{left:13px}.talent-row .desc strong{font-size:11px}.talent-row .desc p{font-size:9px}.talent-row b{font-size:9px}.talent-row>button{width:28px;height:30px}.forge-row .item-icon{display:none}.forge-row .item-copy strong{font-size:10px}.forge-row .secondary{font-size:9px;padding:8px}.infusion-row{gap:7px}.infusion-row button{font-size:9px}.reroll-hero{gap:14px}.reroll-hero h3{font-size:22px}.reroll-hero .item-power{font-size:39px}.reroll-range strong{font-size:24px}.reroll-cost{gap:8px}.reroll-cost>div{padding:15px 7px;font-size:10px}.reroll-cost b{font-size:23px}.reroll-cost small{font-size:9px}.dawn-grid{gap:8px}.dawn-grid>div{padding:11px}.dawn-grid strong{font-size:11px}.dawn-grid p{font-size:9px}.challenge-controls{gap:8px}.challenge-controls .secondary{font-size:9px;padding:8px}.bottom-note{gap:10px}.bottom-note #marketOpen{margin-left:0}.zone-choice{gap:11px;padding:15px}.zone-choice strong{font-size:14px}.zone-choice small{font-size:8px}.zone-choice .tag{font-size:7px}.info-block{padding:15px}.info-block h3{font-size:17px}.info-block p{font-size:10px}.notice{font-size:10px!important}.modal-intro{font-size:10px}.strategy-label{font-size:10px}.strategy-label select{max-width:67%;font-size:9px}}
@media(orientation:portrait) and (max-width:360px){.rail{grid-template-columns:repeat(4,34px)}.nav-item{width:34px}.player-strip{width:160px}.resource-hud{width:108px}.wordmark>b{display:none}.battle-hotbar{gap:4px}.battle-hotbar button{width:41px}.scene-note{font-size:5px}.paper-slot .item-icon{display:none}.paper-slot>span:not(.item-power){flex-basis:100%}.paper-slot .item-power{font-size:28px}.modal-header h2{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.damage-number{display:none}}
[hidden]{display:none!important}
.character-load-state{position:absolute;top:8px;left:8px;right:8px;z-index:2;padding:7px 9px;text-align:center;font-size:10px;line-height:1.5;color:#e6d5ab;background:#15201de0;border:1px solid #5f6548;border-radius:4px;pointer-events:none}.character-load-state.error{color:#f0c0a0;border-color:#a16b45}.character-retry{position:absolute;bottom:33px;left:50%;transform:translateX(-50%);z-index:3;white-space:nowrap;padding:9px 13px;border:1px solid #bd9a64;border-radius:4px;color:#efdab4;background:#293228;font-size:11px;cursor:pointer}

/* First Light v08: the arena has a quiet frame; the build sheets carry detail. */
:root{--ivory:#eee9dc;--gold:#dfbc7a;--gold-dim:#967d52;--steel:#a9bac3;--slate:#17232d;--surface:#111b24;--surface-raised:#1b2932;--line:#3e4b51;--text:#e8e8db;--muted:#9eaeb4;--accent:#dfbc7a}
.game-art{display:inline-block;flex:0 0 auto;width:100%;height:100%;background-image:url('./assets/art-v11/first-light-atlas20-29395819df3d9e2bfb9099a6ce44f79ed41546d736c62f271b586d3e5a470b18.png');background-size:510% 637.2727272727273%;background-repeat:no-repeat;background-position:var(--art-x,0%) var(--art-y,0%);pointer-events:none;filter:drop-shadow(0 2px 2px #0008)}
.item-icon>.game-art,.skill-icon>.game-art{width:100%;height:100%;display:block}.battle-hotbar>button>.game-art{width:42px;height:42px}.selected-slots .game-art{width:35px;height:35px}.talent-node-emblem .game-art{width:34px;height:34px}
.topbar{height:32px}.wordmark-cn{color:#f0e7d2;letter-spacing:5px;text-shadow:0 2px 12px #000}.wordmark-en{color:#acb8b8;letter-spacing:2.5px}.wordmark>b{color:#d5b978}.wallet-btn,.fullscreen-button{background:#13212ade;border:1px solid #64716f77;box-shadow:inset 0 1px #d7c79f0c,0 3px 10px #0003}.wallet-btn{color:#c3cfd0}.rail{grid-template-columns:repeat(3,43px);padding:5px;background:#14232be8;border-color:#75807866;border-radius:3px;box-shadow:0 6px 18px #0003,inset 0 1px #d8ca9c12}.rail .nav-item[data-nav="explore"],.rail .nav-item[data-nav="skills"]{display:none}.nav-item{border-radius:2px;color:#b1c0c3;min-height:41px;width:43px;font-size:8px}.nav-item.active{background:#574a2f88;border-color:#b29b69;color:#ffdfa2}.nav-item:hover{color:#f3e7c5;background:#30404b99}.nav-item:focus-visible{outline:2px solid #f5d18d;outline-offset:2px}.nav-item b{background:#e3bd73;box-shadow:0 0 0 2px #14232b}
.player-strip{background:linear-gradient(110deg,#111d26e8,#1a2b31b8);border-color:#7c8b8170;box-shadow:0 3px 16px #0004,inset 2px 0 #d3b67570;border-radius:3px}.player-title>strong{color:#f2e8d1;letter-spacing:1px}.hp-track{height:6px;border:1px solid #71908b66;background:#0a151d}.hp-track>div{background:linear-gradient(90deg,#3b766d,#8bb4a1)}.xp-track{background:#192c34;border-color:#495a58}.xp-track>div{background:linear-gradient(90deg,#a88648,#e0bc75)}.avatar{border-color:#b7a172;background:linear-gradient(145deg,#42504e,#17252d)}.avatar>span{background:#d8b578;color:#18242b}.resource-hud{color:#d6bf86}.rage-track{background:#231c17;border:1px solid #816a4355;height:5px}.rage-track>div{background:linear-gradient(90deg,#af7139,#e4bc68)}
.scene-heading h1{font-weight:500;letter-spacing:3px;color:#f0e8d8;text-shadow:0 3px 16px #000b}.scene-heading .eyebrow{color:#c7bc9e;letter-spacing:2px}.zone-meta{color:#bcc5be}.scene-status{border-color:#65736766;background:#13232cdd;color:#d7dcc7;border-radius:2px}.enemy-hud{color:#e4d3bf}.enemy-hp{height:6px;background:#201a1b;border:1px solid #8c646055;border-radius:1px}.enemy-hp>div{background:linear-gradient(90deg,#854c44,#b98167)}.battle-hotbar{gap:7px}.battle-hotbar>button{width:58px;height:65px;padding:5px 4px 6px;background:linear-gradient(155deg,#273c46ed,#13242eed);border:1px solid #b6a071a3;border-radius:4px;box-shadow:0 4px 12px #0005,inset 0 0 0 3px #111e2688;color:#eee1b7}.battle-hotbar>button:after{content:'';position:absolute;inset:4px;border:1px solid #d3c1931c;pointer-events:none}.battle-hotbar>button small{font:8px ui-monospace,monospace;color:#d2bf93;left:5px;top:4px}.battle-hotbar>button>span:not(.game-art){font-size:8px;line-height:1.2;max-width:100%;text-overflow:ellipsis;overflow:hidden}.battle-hotbar>button:disabled{opacity:.64;filter:saturate(.55)}.battle-hotbar>button:active{transform:translateY(2px);border-color:#f6d28b}.battle-hotbar>button:focus-visible{outline:2px solid #f6d28b;outline-offset:3px}.start-btn{background:linear-gradient(140deg,#d3b26c,#b68e4e);border-color:#f4d99a;color:#17242a;text-shadow:none;box-shadow:0 3px 12px #0005,inset 0 1px #fff1bc77;letter-spacing:1px}.start-btn:hover{background:#dfc184}#evadeButton{background:radial-gradient(ellipse at 35% 25%,#405653,#172d36 70%);border:1px solid #b4ac83;box-shadow:0 3px 12px #0005,inset 0 0 0 4px #152731,inset 0 0 0 5px #a99b6655;color:#eee3bf}.camp-btn,.speed-btn{border-color:#79867a77;background:#14262ee8;color:#d1d7c7}.scene-note{color:#acb6ad}.loot-currencies{background:#13232cd9;border:1px solid #62766a55;border-radius:3px;padding:5px 10px}.field-records>summary{background:#16262fe8;border-color:#6b7f7470;border-radius:3px;color:#d2d6c6}.records-content{background:linear-gradient(135deg,#172630fa,#0d1821fa);border-color:#8c8d6e80;box-shadow:0 10px 40px #0009}.render-diagnostics{background:#11232aee;border:1px solid #78917d66;color:#d4dfbf}
/* A framed build sheet uses depth and typography instead of blurred panels. */
dialog{background:linear-gradient(125deg,#1c2b35,#101b25 70%);border:1px solid #9b967680;border-radius:4px;box-shadow:0 22px 90px #000b,inset 0 0 0 5px #09141b50;color:var(--ivory)}dialog::backdrop{background:#020a10b8}.wide-modal{width:min(1120px,calc(100vw - 28px));max-width:1120px}.modal-header{background:linear-gradient(100deg,#28384199,#18283311);border-bottom:1px solid #7c80625c;padding:20px 26px}.modal-header h2{font-weight:500;letter-spacing:2px;font-size:29px;margin-top:5px}.modal-header .eyebrow{color:#c0b08b;font-size:8px;letter-spacing:2px}.modal-header:before{content:'';position:absolute;left:0;top:20px;bottom:20px;width:3px;background:#cdb47c}.menu-paused{background:#1f342c55;border-color:#66836b4d;color:#afc8b1;font-size:10px;padding:8px 26px}.menu-paused:before{content:'✦';color:#cdb67b;margin-right:9px}#modalContent{padding:24px 26px 28px;color:#b4c2c4;scrollbar-color:#7c8060 #13212a}.secondary,.primary{border-radius:3px}.secondary{background:#253842b3;border-color:#7c89766b;color:#d4d9c5}.secondary:hover{background:#364a4e;border-color:#c0ad75;color:#f3e6bc}.primary{background:linear-gradient(140deg,#cfaf71,#a88951);border-color:#ead09a;color:#14232a;box-shadow:inset 0 1px #fff0b840}.danger{background:#694b3b;border-color:#a57c56;color:#f5dfc0}.build-tabs{gap:0;padding-bottom:0;border-bottom:1px solid #67726870;margin-bottom:22px}.build-tabs button{border:0;border-bottom:2px solid transparent;background:none;color:#95a9ad;border-radius:0;font-size:12px;min-height:43px;padding:10px 22px}.build-tabs button.active{background:linear-gradient(0deg,#b39b5426,transparent);border-bottom-color:#ddbf7c;color:#f2dfaa}.build-tabs button:hover{color:#eee4c7}.build-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:22px;margin:0 0 18px}.build-heading h3{font:500 25px/1.4 var(--serif);color:#eae5d5;letter-spacing:1px;margin:6px 0 0}.build-heading .eyebrow{color:#b7a47b;font-size:8px;letter-spacing:2px}.build-heading .strategy-label{max-width:310px;gap:10px;margin:0;font-size:10px;color:#99afb2}.strategy-label select{background:#132730;border-color:#637b7380;color:#d5dccd}.bag-tabs{gap:7px}.bag-tabs button{background:#20333d88;border-color:#58716d66;color:#a9bec0;border-radius:3px;font-size:11px;padding:8px 14px}.bag-tabs button.active{background:#6b62463b;border-color:#b4a26b;color:#f1dba6}.bag-tabs button:focus-visible{outline:2px solid #dfbc7a;outline-offset:2px}
/* Equipment is viewed first; binding is a separate explicit action. */
.equipment-toolbar{align-items:center;margin-bottom:21px;gap:14px}.equipment-toolbar>div{flex:1}.equipment-toolbar .eyebrow{font-size:8px;color:#bda97b;letter-spacing:2px}.equipment-toolbar p{margin:6px 0 0;color:#d2dbd6;font-size:14px}.inventory-capacity{color:#dfbd7e!important;font-size:21px;white-space:nowrap}.inventory-capacity small{font-size:10px;color:#95aaac}.bag-filters{padding:13px 14px;background:#0c1b2499;border:1px solid #455e5d66;border-radius:3px;margin:15px 0}.bag-filters label{font-size:9px;letter-spacing:.3px;color:#9cb3b5}.bag-filters select{background:#1b303a;border-color:#61776c88;font-size:11px;color:#d7dfd1}.bulk-toolbar{border:0;border-bottom:1px solid #415b5777;background:none;padding:0 0 14px;margin:0;gap:8px}.bulk-toolbar .secondary{font-size:10px;min-height:32px;padding:7px 11px}.bulk-toolbar #bulkSalvage{margin-left:auto}.inventory-workspace{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(275px,1fr);align-items:start;gap:20px}.inventory-results{min-width:0}.filter-count{margin:15px 0 11px;font-size:10px;color:#9db1b2}.inventory-list{display:flex;flex-direction:column;gap:7px}.inventory-item{position:relative;display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;padding:9px 10px 9px 11px;border:1px solid #4f666066;border-left:3px solid #7c8a80;border-radius:3px;background:linear-gradient(105deg,#1f333ed9,#172a33b8);transition:border-color .14s,background .14s}.inventory-item.magic{border-left-color:#7ea4ce}.inventory-item.rare{border-left-color:#d3bd77}.inventory-item.legendary{border-left-color:#c98e57}.inventory-item.relic{border-left-color:#b197d2}.inventory-item.is-inspected{border-color:#bdad79;background:linear-gradient(100deg,#3d4c41a8,#1e343dd9);box-shadow:inset 0 0 0 1px #d7c88b1a}.inventory-item.worn{background:linear-gradient(105deg,#24403acc,#172d34bd)}.inventory-item .item-checkbox{grid-row:1;align-self:center;margin:0;accent-color:#d6b579;width:17px;height:17px}.inspect-item{display:flex;min-width:0;align-items:center;gap:10px;padding:0;border:0;border-radius:0;background:transparent;text-align:left;color:inherit;cursor:pointer}.inspect-item:focus-visible{outline:2px solid #d8bc7b;outline-offset:5px}.inspect-item .item-icon{width:48px;height:51px;flex-basis:48px;border-radius:3px;background:#0b1e2788;box-shadow:inset 0 1px #d9c9a11c}.inspect-item .item-power{font-size:31px;flex-basis:45px}.item-kind{display:block;font-size:9px;color:#92abad;margin-bottom:4px;letter-spacing:.5px}.inspect-item .item-copy{min-width:0;flex:1}.inventory-item .item-copy strong{font-size:12px;color:#e4e4d3;line-height:1.5}.inventory-item .item-copy strong.primal-name{color:#f1786f}.inventory-item .item-copy>small{font-size:9px;line-height:1.5;margin:3px 0}.inventory-item .binding-note{font-size:8px;line-height:1.5;color:#98b0ae}.inventory-item .dawn-note{font-size:9px;color:#e2cb8e;line-height:1.5}.inspect-chevron{flex:0 0 13px;font:26px Georgia,serif;color:#9fae91;align-self:center}.item-actions{grid-column:2;display:flex;gap:5px;justify-content:flex-start;flex-basis:auto;max-width:none;padding-top:6px;border-top:1px solid #6380772b}.item-actions>button{font-size:9px;min-height:27px;padding:4px 9px;background:#182e37;border:1px solid #657e6b70;border-radius:2px;color:#c1d0c6}.item-actions>button:hover{background:#3b4b42;border-color:#c8b77c;color:#f4dfae}.item-actions .worn-tag{font-size:9px;color:#acd0b2;padding:5px 0}.item-power{font-size:30px;letter-spacing:-1px;font-weight:750;color:#c1c7bc}.item-power small{font-size:7px;letter-spacing:1.5px;color:#9bac9f;margin-top:4px}.item-power.magic{color:#94bbdf}.item-power.rare{color:#e8d08a}.item-power.legendary{color:#e3a46a}.item-power.relic{color:#c9b1e8}.item-power.primal{color:#f58478}.inventory-rule-note{color:#93aaab;font-size:10px;line-height:1.7;margin:17px 0 0;border-top:1px solid #48635c55;padding-top:13px}
.item-inspector{position:sticky;top:0;margin-top:15px;padding:19px;background:radial-gradient(ellipse at 50% 8%,#48615a70,transparent 56%),linear-gradient(160deg,#20353e,#10232d);border:1px solid #81917a88;border-top:3px solid #ad9f76;border-radius:4px;box-shadow:0 10px 25px #0003;color:#d1d9cc;min-width:0}.item-inspector.magic{border-top-color:#8aaed4}.item-inspector.rare{border-top-color:#d1bc7c}.item-inspector.legendary{border-top-color:#d99a61}.item-inspector.relic{border-top-color:#b69cdb}.item-inspector.primal-inspector{border-top-color:#e77d70}.inspector-kicker{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#a9bcb7;font-size:8px;letter-spacing:1px}.inspector-identity{display:flex;align-items:center;justify-content:center;gap:15px;padding:19px 0 7px;position:relative}.inspector-identity:before{content:'';position:absolute;inset:8px 20% -7px;background:radial-gradient(ellipse,#d2bc6924,transparent 70%);pointer-events:none}.inspector-identity .item-icon{width:82px;height:86px;flex-basis:82px;border:0;background:transparent;box-shadow:none;position:relative}.inspector-identity .item-power{font-size:53px;flex-basis:67px;position:relative}.inspector-identity .item-power small{font-size:8px;letter-spacing:2px}#inspectedItemName{font:500 21px/1.4 var(--serif);color:#eee3c7;text-align:center;letter-spacing:1px;margin:13px 0 8px;overflow-wrap:anywhere}#inspectedItemName.primal-name{color:#f58478}.inspector-rank{display:block;text-align:center;font-size:9px;color:#b5bea2}.inspector-notes{text-align:center;min-height:21px}.inspector-notes .dawn-note,.inspector-notes .binding-note{display:block;font-size:10px;line-height:1.7}.inspector-notes .primal-label{font-size:9px;margin-bottom:4px}.inspector-filter-note{font-size:9px;line-height:1.6;color:#dec795;border:1px solid #98845c66;background:#5d4f282b;padding:8px;text-align:center}.item-comparison{margin:19px 0 0;padding-top:14px;border-top:1px solid #a3915d66}.compare-heading strong{display:block;font-size:11px;color:#dfdfc7;letter-spacing:.5px}.compare-heading small{display:block;margin-top:4px;font-size:9px;color:#8fa9a9;overflow-wrap:anywhere}.compare-columns,.compare-row{display:grid;grid-template-columns:minmax(64px,1.1fr) repeat(3,minmax(38px,.8fr));gap:5px;align-items:center}.compare-columns{font-size:8px;color:#8eabaa;padding:13px 0 7px}.compare-columns>span:not(:first-child),.compare-row>span:not(:first-child),.compare-row>strong,.compare-row>b{text-align:right}.compare-row{padding:9px 0;border-top:1px solid #48615e4d;font-size:10px;font-variant-numeric:tabular-nums}.compare-row>span:first-child{color:#b4c7c4}.compare-row>span:nth-child(2){color:#819f9f}.compare-row>strong{font-weight:600;color:#e2e5d1}.compare-row>b{font-size:10px;font-weight:650}.compare-row.gain>b{color:#9fd0a2}.compare-row.loss>b{color:#e5a294}.compare-row.equal>b{color:#7c9697}.comparison-footnote{font-size:9px;color:#8da7a7;line-height:1.6;margin:10px 0}.inspector-provenance{display:flex;justify-content:space-between;gap:9px;border-top:1px solid #47615d77;padding-top:12px;margin-top:14px;font-size:9px;color:#a6b8ad}.inspector-relic-note{font-size:9px;color:#c9b4e1;line-height:1.6}.inspector-actions{display:flex;flex-direction:column;gap:8px;margin-top:17px}.inspector-actions button{width:100%;font-size:11px;min-height:37px;justify-content:center}.inspector-actions .worn-tag{padding:10px;text-align:center;background:#294a3e66;border:1px solid #69867270;font-size:10px;color:#bad3b6;border-radius:3px}.inspector-empty{min-height:310px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#91a8a8}.inspector-sigil{font:70px Georgia,serif;color:#bca971;opacity:.55}.inspector-empty h3{font:500 19px var(--serif);color:#cecbb2}.inspector-empty p{font-size:11px;line-height:1.8;max-width:180px}
/* A character sheet is a stage, not a row of dashboard statistics. */
.character-top{margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid #60746966}.character-heading .eyebrow{font-size:8px;letter-spacing:2.5px;color:#b6a47c}.character-heading h3{font:500 30px/1.3 var(--serif);letter-spacing:2px;margin:8px 0 5px;color:#eee5cf}.character-heading p{font-size:11px;color:#96adaf;margin:0}.character-level{font:10px ui-sans-serif,system-ui;letter-spacing:1px;padding:5px 8px;border:1px solid #7a876b70;color:#b8c6b4;vertical-align:middle;margin-left:5px}.average-power{padding:0 2px 0 20px;border-left:1px solid #67786170;text-align:right}.average-power b{font-size:50px;color:#e7c786;line-height:1.12;font-weight:700;letter-spacing:-2px}.average-power>small{font-size:9px;letter-spacing:2px;color:#c1cbb9}.average-power>span{display:block;color:#829e9c;font-size:8px;letter-spacing:1px;margin-top:4px}.paper-doll{position:relative;display:grid;grid-template-columns:minmax(190px,.9fr) minmax(240px,1.1fr) minmax(190px,.9fr);gap:15px;min-height:350px;padding:14px 0 15px;border:0;border-bottom:1px solid #61715c77;background:radial-gradient(ellipse at 50% 70%,#4b625354,transparent 55%)}.paper-side{position:relative;display:flex;flex-direction:column;justify-content:center;gap:14px;z-index:2}.paper-slot{position:relative;min-height:82px;display:flex;align-items:center;gap:10px;padding:10px;background:linear-gradient(110deg,#29404cc9,#1a3039a3);border:1px solid #6c827279;border-left:3px solid #9aa68c;border-radius:3px;box-shadow:inset 0 1px #cfce9d13;text-align:left;color:#d9dfcf}.paper-slot:after{content:'';position:absolute;top:50%;width:15px;height:1px;background:#77856877;pointer-events:none}.paper-side[data-side="left"] .paper-slot:after{right:-16px}.paper-side[data-side="right"] .paper-slot:after{left:-16px}.paper-slot.magic{border-left-color:#83abd3}.paper-slot.rare{border-left-color:#d3bd79}.paper-slot.legendary{border-left-color:#d79b65}.paper-slot.relic{border-left-color:#bba3dc}.paper-slot.primal-slot{border-left-color:#eb8074}.paper-slot:hover,.paper-slot:focus-visible{background:#3b514dd4;border-color:#d4bd7c;outline:none}.slot-image{display:flex;align-items:center;flex:0 0 42px}.paper-slot .item-icon{width:42px;height:45px;flex-basis:42px;background:#122630a8;border:1px solid #67806f55;box-shadow:none}.slot-copy{flex:1;min-width:0}.slot-copy>small{font-size:8px;color:#94b0b0;letter-spacing:1px;display:block;margin-bottom:4px}.paper-slot strong{font-size:11px;line-height:1.5;font-weight:500;color:#d7e0cf;overflow-wrap:anywhere}.paper-slot strong.primal-name{color:#f58478}.paper-slot .item-power{font-size:29px;flex-basis:39px}.paper-slot .item-power small{font-size:6px;margin-top:4px}.paper-slot .binding-note{font-size:7px;color:#8eaaa6;line-height:1.5;margin-top:4px}.paper-slot .dawn-note{font-size:8px;line-height:1.5;color:#d6c28b}.character-stage{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;height:350px;isolation:isolate}.stage-halo{position:absolute;pointer-events:none;z-index:-1;inset:28px -15px 30px;background:url('./assets/art-v08/dawn-sigil.svg') center/contain no-repeat;opacity:.16;filter:drop-shadow(0 0 18px #e1bf6c22)}.character-stage .character-model{position:relative;grid-column:auto;grid-row:auto;min-height:0;height:100%;width:100%;background:radial-gradient(ellipse at 50% 85%,#d2b16b20,transparent 60%);touch-action:none}.character-stage .character-model:focus-visible{outline:2px solid #d8bd7d;outline-offset:-3px}.stage-caption{text-align:center;position:relative;padding:8px 3px 0;pointer-events:none}.stage-caption>span{display:block;font:500 14px var(--serif);color:#cecbaf;letter-spacing:4px}.stage-caption>small{display:block;font-size:8px;color:#7e9d9e;letter-spacing:.4px;margin-top:6px}.character-actions{gap:8px;margin:19px 0}.character-actions button{font-size:10px;min-height:33px;padding:8px 13px}.character-stat-heading{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid #536c6070;padding-bottom:8px;margin-bottom:10px}.character-stat-heading>span{font-size:11px;color:#d2d9c1;letter-spacing:1px}.character-stat-heading>small{font-size:9px;color:#8fa7a6}.stat-detail{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.stat-detail>div{background:#1227307d;border:1px solid #49645c66;padding:12px 10px;gap:10px;color:#91adad;font-size:10px;border-radius:3px}.stat-detail strong{color:#e0dfc5;font-size:14px;font-weight:500;font-variant-numeric:tabular-nums}
/* Actual skill forks and prerequisite tiers establish a readable build language. */
.selected-slots{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-bottom:12px}.selected-slots>button{min-height:96px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:9px 5px;background:linear-gradient(150deg,#283e49,#152b35);border:1px solid #647e6e80;border-radius:3px;color:#adbfbc}.selected-slots>button>small{color:#8fa8a5;font-size:8px;margin:0;letter-spacing:.6px}.selected-slots>button>strong{font-size:10px;font-weight:500;white-space:normal;line-height:1.4}.selected-slots>button.active{border-color:#d1b576;background:linear-gradient(150deg,#5a5940,#273a3b);color:#f3e1ac;box-shadow:inset 0 0 0 2px #cdb2781c}.selected-slots>button.active>small{color:#dfc88f}.selected-slots>button:disabled{opacity:.35;background:#152832}.empty-skill-mark{font-size:27px;line-height:35px;color:#688b87;font-weight:200}.skill-path-summary{display:flex;justify-content:space-between;gap:16px;color:#91adad;font-size:10px;padding:8px 0 15px;margin-bottom:4px;border-bottom:1px solid #45625777}.skill-category-tabs{margin-top:17px}.skill-category-tabs button{display:flex;align-items:center;gap:12px}.skill-category-tabs small{font-size:9px;opacity:.65}.skill-tree{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.skill-tree-card{background:linear-gradient(135deg,#213943b8,#142b35b8);border:1px solid #5b776b75;border-top:2px solid #7b8970;border-radius:4px;padding:16px;margin:0;min-width:0;box-shadow:inset 0 1px #c4c6960e}.skill-tree-card.equipped-skill{border-top-color:#c5ab6c;background:linear-gradient(135deg,#2c4246,#182e37)}.skill-choice{display:flex;align-items:center;gap:12px;min-height:83px;padding:0;border:0}.skill-choice .skill-icon{width:55px;height:58px;flex:0 0 55px;display:grid;place-items:center;border:1px solid #72826a7a;background:#112730a1;border-radius:3px}.skill-choice .desc{flex:1;min-width:0}.skill-choice .desc>small{display:block;font-size:8px;letter-spacing:.8px;color:#9cb5aa;margin-bottom:5px}.skill-choice .desc>strong{font:500 16px/1.4 var(--serif);color:#e4dfc7;letter-spacing:1px}.skill-choice .desc>p{font-size:10px;line-height:1.7;color:#9fb8b6;margin:5px 0}.skill-choice>button{font-size:10px;line-height:1.5;min-height:34px;border:1px solid #a69464aa;background:#60593c99;color:#e4d4a5;border-radius:3px;padding:7px 10px;flex:0 0 auto}.skill-choice>button:disabled{background:#213b3d;color:#799b95;border-color:#58726777}.rune-branches{display:block;margin:16px 0 0;padding-top:15px;border-top:1px solid #5a756566}.rune-branches>button,.rune-options>button{position:relative;display:block;padding:11px 12px;margin:0;border:1px solid #5f7a6a80;border-radius:3px;background:#19313a;color:#b8cbc1;text-align:left}.rune-branches>button:before,.rune-options>button:before{display:none}.rune-branches .base-rune{width:100%;display:flex;align-items:center;gap:10px;justify-content:space-between}.base-rune>small{font-size:8px;color:#8facac;letter-spacing:.5px}.base-rune>strong{font-size:11px;font-weight:500;margin:0}.base-rune>span{font-size:8px;color:#8ea8a5}.rune-fork{display:flex;align-items:center;justify-content:center;gap:10px;height:36px;position:relative}.rune-fork>span{display:block;height:1px;flex:1;background:#7794785e}.rune-fork:after{content:'';position:absolute;left:50%;top:0;width:1px;height:9px;background:#77947866}.rune-fork>b{font-size:8px;font-weight:400;letter-spacing:2px;color:#86a6a2}.rune-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.rune-options>button{width:100%;min-height:113px}.rune-options>button>small{display:block;font-size:8px;color:#86a9a7;line-height:1.5;margin-bottom:5px}.rune-options>button>strong{display:block;font-size:12px;font-weight:500;color:#d9dcc4;line-height:1.4;margin-bottom:6px}.rune-options>button>span{display:block;font-size:9px;line-height:1.7;color:#9cb9b4}.rune-options>button.active,.rune-branches>button.active{background:linear-gradient(145deg,#5c5a3b,#354842);border-color:#cbb375;box-shadow:inset 0 0 0 2px #d1bd7b18}.rune-options>button.active>small,.rune-options>button.active>strong,.rune-branches>button.active>strong{color:#f3dda6}.rune-options>button.active>span{color:#d2d8b7}.rune-options>button:disabled{opacity:.42;filter:saturate(.45)}.skill-effective{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #5a756066;padding-top:12px;margin-top:15px;font-size:9px}.skill-effective>span{color:#88a8a4;font-size:8px}.skill-effective>strong{font-weight:500;color:#dfcf9e;font-size:11px}.skill-effective>small{font-size:9px;color:#a1b9ae}.loadout-options{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:18px}.loadout-options .skill-tree-card{padding:13px}.loadout-options .skill-choice{min-height:84px}
.talent-heading{align-items:center}.talent-budget{text-align:right;min-width:142px;padding-left:19px;border-left:1px solid #66826a66}.talent-budget>small{display:block;font-size:9px;color:#b7c3ad;letter-spacing:1px}.talent-budget>b{font-size:44px;font-weight:600;color:#e1c27c;line-height:1.2;letter-spacing:-1px}.talent-budget>span{display:block;font-size:9px;color:#89aaa3;margin-top:2px}.talent-branch-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:18px 0 22px}.talent-branch-tabs>button{display:flex;align-items:center;justify-content:center;gap:11px;min-height:61px;padding:8px 12px;background:#1c343f}.talent-branch-tabs .game-art{width:36px;height:36px}.talent-branch-tabs strong{font:500 16px var(--serif);letter-spacing:2px}.talent-branch-tabs small{font-size:9px;letter-spacing:.5px;opacity:.7}.talent-branch-tabs>button.active{background:linear-gradient(120deg,#5b583c99,#2c444299)}.talent-constellation{position:relative;display:flex;flex-direction:column;gap:21px;padding-left:26px}.talent-constellation:before{content:'';position:absolute;left:10px;top:17px;bottom:35px;width:1px;background:linear-gradient(#b5a56b99,#71958188,#b6a66b99)}.talent-tier{position:relative}.talent-tier>header{position:relative;display:flex;align-items:center;gap:10px;padding:0 0 11px;border-bottom:1px solid #56746666;margin-bottom:12px}.talent-tier>header:before{content:'';position:absolute;width:7px;height:7px;left:-19px;top:6px;transform:rotate(45deg);background:#c1b276;border:1px solid #e0cc94;box-shadow:0 0 0 4px #213c39}.talent-tier>header>small{font:9px ui-monospace,monospace;color:#aab98f;letter-spacing:1px}.talent-tier>header>h4{margin:0;font:500 15px var(--serif);color:#d9d9ba;letter-spacing:1px}.talent-tier>header>span{margin-left:auto;font-size:9px;color:#85a6a1}.talent-tier-nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.talent-tier[data-tier="0"] .talent-tier-nodes,.talent-tier[data-tier="3"] .talent-tier-nodes{grid-template-columns:1fr}.talent-node{position:relative;display:flex;flex-direction:column;padding:13px;background:linear-gradient(140deg,#233c43,#172f39);border:1px solid #577a6c80;border-radius:3px;min-width:0}.talent-node.learned{border-color:#9aa776;background:linear-gradient(140deg,#3c5145,#223e3e)}.talent-node.talent-locked{opacity:.62}.talent-node.capstone{border-color:#baa46c;background:linear-gradient(120deg,#55543a70,#1b333c)}.talent-node-line{position:absolute;width:1px;height:12px;left:50%;top:-13px;background:#75927b88;pointer-events:none}.talent-tier[data-tier="0"] .talent-node-line{display:none}.talent-node-head{display:flex;align-items:center;gap:9px}.talent-node-emblem{display:flex;align-items:center;justify-content:center;width:37px;height:38px;flex:0 0 37px;background:#112d34;border:1px solid #78926e66;border-radius:3px}.talent-node-head>div{flex:1;min-width:0}.talent-node-head>div>small{font-size:7px;color:#86aaa4;letter-spacing:.8px}.talent-node h4{margin:4px 0 0;font:500 13px var(--serif);color:#dce0c6;letter-spacing:.6px}.talent-node-head>b{font-size:17px;color:#d5c084;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.talent-node-head>b>small{font-size:9px;color:#7b9d95;font-weight:400}.talent-node>p{font-size:10px;line-height:1.7;color:#9cbbb3;margin:12px 0;flex:1}.talent-node-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:9px;border-top:1px solid #59786466}.talent-node-foot>span{font-size:8px;line-height:1.6;color:#93b4a6}.talent-node-foot>button{width:29px;height:29px;display:grid;place-items:center;flex:0 0 29px;border:1px solid #b8aa72;background:#6b6340;color:#fae3a7;font-size:19px;border-radius:3px}.talent-node-foot>button:disabled{border-color:#547166;background:#233e3c;color:#608477}.talent-bottom-note{display:flex;align-items:center;justify-content:space-between;gap:17px;border-top:1px solid #597b6877;padding-top:16px;margin-top:22px}.talent-bottom-note>p{font-size:10px;line-height:1.7;color:#8eaaa5;margin:0}.talent-bottom-note>button{min-height:34px;white-space:nowrap;font-size:10px}.salvage-confirm{background:#5e4b2c66;border-color:#ba9c65;color:#ead6aa}.reroll-range{border:1px solid #7e8c6c77;background:#243d3c}.reroll-range strong{color:#e2c586}.reroll-cost>div{background:#17313a;border-color:#647e687a}.reroll-cost b{color:#e0c17e}.info-block{background:#172d369c;border-color:#58706370}.info-block h3{color:#e6ddbd}.notice{background:#3c493748;border-color:#86976c7a;color:#c1d0af}.rotation-card{border-color:#ac9b6f;background:linear-gradient(140deg,#233c43,#112832);box-shadow:0 18px 80px #0008}.rotation-card h2{color:#eadbb6;font-weight:500}
@media(orientation:landscape) and (max-height:500px){.topbar{height:27px}.rail{top:calc(var(--safe-top) + 39px);grid-template-columns:repeat(3,38px);gap:0;padding:3px}.nav-item{width:38px;min-height:33px;font-size:7px;gap:2px}.nav-item>.lucide{width:16px;height:16px}.battle-hotbar>button{width:49px;height:55px;padding:4px 3px}.battle-hotbar>button>.game-art{width:33px;height:33px}.battle-hotbar>button>span:not(.game-art){font-size:7px}.battle-hotbar{gap:5px}.wide-modal{width:calc(100vw - 22px)}.modal-header{padding:13px 19px}.modal-header h2{font-size:23px}.modal-header:before{top:13px;bottom:13px}.menu-paused{padding:6px 19px;font-size:8px}#modalContent{padding:17px 19px 20px}.build-tabs{margin-bottom:16px}.build-tabs button{min-height:34px;padding:8px 16px;font-size:11px}.build-heading{gap:13px;margin-bottom:13px}.build-heading h3{font-size:20px}.build-heading .eyebrow{font-size:7px}.build-heading .strategy-label{font-size:9px}.selected-slots{gap:6px}.selected-slots>button{min-height:76px;padding:7px 4px;gap:3px}.selected-slots .game-art{width:28px;height:28px}.selected-slots>button>strong{font-size:9px}.selected-slots>button>small{font-size:7px}.skill-path-summary{font-size:8px;padding:6px 0 11px}.skill-tree-card{padding:12px}.skill-choice{gap:9px;min-height:69px}.skill-choice .skill-icon{width:45px;height:47px;flex-basis:45px}.skill-choice .desc>strong{font-size:14px}.skill-choice .desc>p{font-size:9px;line-height:1.6}.skill-choice>button{font-size:9px;min-height:31px;padding:6px 8px}.rune-branches{padding-top:11px;margin-top:11px}.rune-options>button{padding:9px;min-height:97px}.rune-options>button>strong{font-size:11px}.rune-options>button>span{font-size:8px}.rune-options>button>small{font-size:7px}.rune-fork{height:28px}.skill-effective{margin-top:11px;padding-top:9px;gap:6px}.skill-effective>strong{font-size:10px}.skill-effective>small{font-size:8px}.equipment-toolbar{margin-bottom:14px}.equipment-toolbar p{font-size:12px}.inventory-capacity{font-size:18px}.bag-filters{padding:10px;margin:11px 0}.bag-filters select{min-height:31px;font-size:10px}.bulk-toolbar{padding-bottom:10px}.bulk-toolbar .secondary{min-height:29px;font-size:9px;padding:5px 9px}.inventory-workspace{grid-template-columns:minmax(0,1.2fr) minmax(245px,1fr);gap:13px}.filter-count{font-size:9px;margin:11px 0 9px}.inventory-item{padding:8px;gap:7px}.inspect-item{gap:7px}.inspect-item .item-icon{width:38px;height:41px;flex-basis:38px}.inspect-item .item-power{font-size:26px;flex-basis:34px}.inventory-item .item-copy strong{font-size:10px}.item-kind{font-size:7px;margin-bottom:3px}.inventory-item .item-copy>small,.inventory-item .dawn-note{font-size:8px}.inventory-item .binding-note{font-size:7px}.item-actions{gap:4px;padding-top:5px}.item-actions>button{font-size:8px;min-height:25px;padding:3px 7px}.item-inspector{padding:13px;margin-top:11px}.inspector-kicker{font-size:7px}.inspector-identity{padding:10px 0 2px}.inspector-identity .item-icon{width:61px;height:65px;flex-basis:61px}.inspector-identity .item-power{font-size:40px;flex-basis:54px}#inspectedItemName{font-size:18px;margin:10px 0 6px}.inspector-notes .dawn-note,.inspector-notes .binding-note{font-size:9px}.item-comparison{margin-top:13px;padding-top:10px}.compare-heading strong{font-size:10px}.compare-heading small{font-size:8px}.compare-columns{font-size:7px;padding:10px 0 5px}.compare-row{font-size:9px;padding:7px 0}.compare-row>b{font-size:9px}.comparison-footnote{font-size:8px}.inspector-provenance{font-size:8px;padding-top:9px;margin-top:10px}.inspector-actions{gap:6px;margin-top:12px}.inspector-actions button{min-height:32px;font-size:10px}.character-top{margin-bottom:13px;padding-bottom:10px}.character-heading h3{font-size:23px;letter-spacing:1px}.character-heading p{font-size:9px}.average-power b{font-size:38px}.paper-doll{grid-template-columns:minmax(156px,.95fr) minmax(160px,1fr) minmax(156px,.95fr);gap:10px;min-height:235px;padding:10px 0 12px}.character-stage{height:235px}.paper-side{gap:9px}.paper-slot{min-height:61px;padding:7px;gap:7px}.paper-slot .item-icon{width:32px;height:35px;flex-basis:32px}.slot-image{flex-basis:32px}.paper-slot strong{font-size:9px}.slot-copy>small{font-size:7px;margin-bottom:3px}.paper-slot .item-power{font-size:25px;flex-basis:33px}.paper-slot .binding-note{display:none}.paper-slot .dawn-note{font-size:7px}.paper-slot:after{width:10px}.paper-side[data-side="left"] .paper-slot:after{right:-11px}.paper-side[data-side="right"] .paper-slot:after{left:-11px}.stage-caption>span{font-size:12px;letter-spacing:3px}.stage-caption>small{font-size:7px;margin-top:4px}.character-actions{margin:13px 0;gap:6px}.character-actions button{font-size:9px;min-height:29px;padding:6px 10px}.character-stat-heading{margin-bottom:8px}.character-stat-heading>span{font-size:10px}.character-stat-heading>small{font-size:8px}.stat-detail>div{padding:9px 8px;font-size:9px}.stat-detail strong{font-size:12px}.talent-budget>b{font-size:35px}.talent-branch-tabs{margin:14px 0 17px;gap:8px}.talent-branch-tabs>button{min-height:48px;padding:6px 9px;gap:8px}.talent-branch-tabs .game-art{width:29px;height:29px}.talent-branch-tabs strong{font-size:14px}.talent-branch-tabs small{font-size:8px}.talent-constellation{gap:17px;padding-left:23px}.talent-tier>header{gap:8px;margin-bottom:10px;padding-bottom:9px}.talent-tier>header>h4{font-size:13px}.talent-tier>header>span{font-size:8px}.talent-node{padding:10px}.talent-tier-nodes{gap:8px}.talent-node-head{gap:6px}.talent-node-emblem{width:30px;height:32px;flex-basis:30px}.talent-node-emblem .game-art{width:28px;height:28px}.talent-node h4{font-size:11px}.talent-node-head>div>small{font-size:6px}.talent-node-head>b{font-size:15px}.talent-node>p{font-size:9px;line-height:1.6;margin:9px 0}.talent-node-foot>span{font-size:7px}.talent-node-foot>button{width:27px;height:27px;flex-basis:27px}.talent-bottom-note{margin-top:17px;padding-top:12px}.talent-bottom-note>p{font-size:9px}}
@media(orientation:landscape) and (max-width:740px){.wordmark-cn{font-size:19px;letter-spacing:3px}.wordmark>b{font-size:7px}.player-strip{max-width:190px}.rail{grid-template-columns:repeat(3,35px)}.nav-item{width:35px;min-height:32px}.enemy-hud{width:168px}.scene-heading{max-width:198px}.scene-heading h1{font-size:19px}.battle-hotbar{max-width:calc(100% - 250px);gap:4px}.battle-hotbar>button{width:43px;height:51px}.battle-hotbar>button>.game-art{width:31px;height:31px}.battle-hotbar>button>span:not(.game-art){font-size:6px}.inventory-workspace{grid-template-columns:minmax(0,1fr) minmax(228px,.9fr);gap:10px}.inspect-item .item-icon{width:32px;height:36px;flex-basis:32px}.inspect-item .item-power{font-size:24px;flex-basis:31px}.inventory-item .item-copy strong{font-size:10px}.inventory-item .item-copy>small{display:none}.inventory-item .binding-note{display:none}.item-actions{flex-wrap:wrap}.item-actions>button{font-size:8px;padding:3px 6px}.inspector-identity .item-power{font-size:37px}.inspector-identity .item-icon{width:58px;height:62px;flex-basis:58px}.compare-columns,.compare-row{grid-template-columns:minmax(57px,1fr) repeat(3,minmax(33px,.7fr));gap:4px}.inspector-actions button{font-size:9px}.skill-tree,.loadout-options{grid-template-columns:1fr}.skill-choice .desc>p{font-size:9px}.skill-choice .desc>strong{font-size:15px}.rune-options>button{min-height:88px}.rune-options>button>span{font-size:9px}.paper-doll{grid-template-columns:minmax(139px,.95fr) minmax(140px,1fr) minmax(139px,.95fr);gap:8px}.paper-slot .item-icon{display:block;width:28px;height:30px;flex-basis:28px}.slot-image{flex-basis:28px}.paper-slot{gap:5px;padding:6px}.paper-slot .item-power{font-size:23px;flex-basis:30px}.paper-slot strong{font-size:8px}.paper-slot .dawn-note{font-size:6px}.character-stage{height:223px}.paper-side{gap:8px}.talent-tier-nodes{grid-template-columns:repeat(2,minmax(0,1fr))}.talent-node h4{font-size:12px}.talent-node>p{font-size:9px}.talent-node-foot>span{font-size:8px}.build-heading h3{font-size:19px}}
@media(orientation:portrait){.rail{grid-template-columns:repeat(3,36px)}.nav-item{width:36px;min-height:35px;font-size:7px}.battle-hotbar>button{width:46px;height:57px}.battle-hotbar>button>.game-art{width:35px;height:35px}.battle-hotbar>button>span:not(.game-art){font-size:6px}.wide-modal{width:calc(100vw - 20px)}.modal-header{padding:15px}.modal-header h2{font-size:23px}.menu-paused{padding:7px 15px;font-size:8px}#modalContent{padding:18px 15px 20px}.equipment-toolbar{gap:9px;flex-wrap:wrap}.equipment-toolbar>div{flex-basis:100%}.equipment-toolbar p{font-size:13px}.inventory-capacity{font-size:19px;margin-left:auto}.bag-tabs{gap:5px}.bag-tabs button{font-size:10px;padding:7px 10px;min-height:32px}.bag-filters{grid-template-columns:1fr 1fr;padding:10px;gap:9px}.bulk-toolbar{gap:6px}.bulk-toolbar .secondary{font-size:8px;padding:7px 8px;min-height:30px}.bulk-toolbar #bulkSalvage{margin-left:0}.inventory-workspace{display:flex;flex-direction:column;gap:3px}.inventory-results{width:100%}.inventory-list{gap:7px}.inventory-item{padding:8px;gap:7px;grid-template-columns:17px minmax(0,1fr)}.inspect-item{gap:8px}.inspect-item .item-icon{width:38px;height:41px;flex-basis:38px}.inspect-item .item-power{font-size:27px;flex-basis:34px}.inventory-item>.item-copy{flex-basis:auto}.inventory-item .item-copy strong{font-size:11px}.item-kind{font-size:8px}.inventory-item .item-copy>small{font-size:8px}.inventory-item .binding-note{font-size:7px}.item-actions{flex-basis:auto;grid-column:2;max-width:none;justify-content:flex-start}.item-actions>button{font-size:9px;min-height:28px;padding:4px 8px}.item-inspector{position:static;width:100%;margin-top:16px;padding:17px}.inspector-identity .item-icon{width:75px;height:79px;flex-basis:75px}.inspector-identity .item-power{font-size:49px}.compare-row{font-size:11px}.compare-row>b{font-size:10px}.compare-columns{font-size:9px}.comparison-footnote{font-size:9px}.inspector-actions button{font-size:11px}.inspector-kicker{font-size:9px}.character-top{gap:12px;align-items:center}.character-heading h3{font-size:23px;letter-spacing:1px}.character-heading p{font-size:9px;max-width:185px;line-height:1.6}.character-heading .eyebrow{font-size:7px;letter-spacing:1.5px}.character-level{font-size:8px;padding:3px 5px;margin-left:3px}.average-power{padding-left:12px;min-width:78px}.average-power b{font-size:36px}.average-power>small{font-size:8px;letter-spacing:1px}.average-power>span{font-size:7px}.paper-doll{grid-template-columns:1fr 1fr;gap:9px;padding:0 0 14px}.character-stage{height:315px;grid-column:1/-1;grid-row:1}.character-stage .character-model{grid-column:auto;grid-row:auto;height:100%;min-height:0}.paper-side{grid-row:2;gap:9px}.paper-slot{min-height:93px;flex-wrap:wrap;padding:9px;gap:6px}.paper-slot:after{display:none}.slot-image{flex:0 0 30px}.paper-slot .item-icon{width:30px;height:33px;flex-basis:30px}.slot-copy{flex:1;min-width:60px}.paper-slot>span:not(.item-power){flex-basis:auto}.paper-slot .item-power{font-size:26px;flex-basis:34px;margin-left:auto}.paper-slot strong{font-size:9px}.slot-copy>small{font-size:7px}.paper-slot .binding-note{display:none}.paper-slot .dawn-note{font-size:7px}.character-stat-heading>small{font-size:8px;max-width:160px;text-align:right}.stat-detail{grid-template-columns:repeat(2,minmax(0,1fr))}.character-actions{gap:6px}.character-actions button{font-size:9px;padding:7px 10px;min-height:31px}.build-heading{align-items:flex-start;flex-direction:column;gap:13px;margin-bottom:16px}.build-heading h3{font-size:22px}.build-heading .strategy-label{max-width:100%;width:100%;font-size:10px;justify-content:space-between}.build-heading .strategy-label select{max-width:70%;font-size:10px;min-height:34px}.build-tabs{margin-bottom:18px}.build-tabs button{font-size:11px;padding:9px 15px;min-height:37px}.selected-slots{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.selected-slots>button{min-height:91px;padding:8px 5px}.selected-slots .game-art{width:34px;height:34px}.selected-slots>button>strong{font-size:10px}.selected-slots>button>small{font-size:7px}.skill-path-summary{font-size:9px;flex-direction:column;gap:5px;line-height:1.6;padding-bottom:13px}.skill-tree,.loadout-options{grid-template-columns:1fr;gap:12px}.skill-tree-card{padding:13px}.skill-choice{gap:9px}.skill-choice .skill-icon{width:46px;height:49px;flex-basis:46px}.skill-choice .desc>strong{font-size:14px}.skill-choice .desc>p{font-size:9px}.skill-choice>button{font-size:9px;min-height:31px;padding:6px 8px}.rune-options{gap:8px}.rune-options>button{min-height:116px;padding:10px}.rune-options>button>strong{font-size:11px}.rune-options>button>span{font-size:9px}.rune-options>button>small{font-size:8px}.base-rune>strong{font-size:11px}.base-rune>span{font-size:8px}.skill-effective{gap:8px}.skill-effective>small{font-size:8px}.talent-heading{flex-direction:row;align-items:center}.talent-heading h3{font-size:20px}.talent-budget{min-width:89px;padding-left:11px}.talent-budget>b{font-size:35px}.talent-budget>small{font-size:8px}.talent-budget>span{font-size:7px;line-height:1.6}.talent-branch-tabs{gap:6px;margin:17px 0}.talent-branch-tabs>button{min-height:67px;padding:6px;gap:3px;flex-wrap:wrap}.talent-branch-tabs .game-art{width:28px;height:28px}.talent-branch-tabs strong{font-size:13px;letter-spacing:1px}.talent-branch-tabs small{font-size:8px;flex-basis:100%;text-align:center}.talent-constellation{padding-left:21px;gap:18px}.talent-constellation:before{left:7px}.talent-tier>header{gap:6px;flex-wrap:wrap;padding-bottom:9px}.talent-tier>header:before{left:-17px}.talent-tier>header>h4{font-size:14px}.talent-tier>header>span{font-size:8px;flex-basis:100%;margin-left:24px}.talent-tier-nodes{grid-template-columns:1fr;gap:10px}.talent-node{padding:12px}.talent-node-head>div>small{font-size:7px}.talent-node h4{font-size:13px}.talent-node-head>b{font-size:18px}.talent-node>p{font-size:10px}.talent-node-foot>span{font-size:9px}.talent-node-foot>button{width:32px;height:32px;flex-basis:32px}.talent-bottom-note{align-items:flex-start;flex-direction:column;gap:12px}.talent-bottom-note>p{font-size:9px}.talent-bottom-note>button{width:100%;justify-content:center}.inspector-empty{min-height:230px}.inventory-rule-note{font-size:9px}}
@media(prefers-reduced-motion:reduce){.inventory-item{transition:none}.battle-hotbar>button:active{transform:none}}
.character-preview-controls{position:absolute;z-index:4;left:50%;bottom:7px;transform:translateX(-50%);display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #6d80697a;border-radius:4px;background:#142b34ed;box-shadow:0 3px 12px #0003;white-space:nowrap;touch-action:manipulation}.character-preview-controls>button{min-height:27px;min-width:39px;padding:5px 7px;font-size:9px;line-height:1.2;background:transparent;border:1px solid transparent;border-radius:2px;color:#91b0ac;cursor:pointer}.character-preview-controls>button[aria-pressed="true"]{color:#f0d99b;border-color:#b7a37399;background:#635b354d}.character-preview-controls>button:hover{color:#f0ddaf;background:#3b514a}.character-preview-controls>button:focus-visible{outline:2px solid #dfbf7d;outline-offset:1px}.character-preview-controls>[data-avatar-zoom]{border-left-color:#6d80697a;margin-left:2px;padding-left:9px}.character-stage .character-retry{bottom:43px;font-size:10px;min-height:31px;padding:7px 11px}.character-stage .character-load-state{top:4px;left:3px;right:3px;font-size:9px;padding:6px 7px;pointer-events:none}.selection-warning{font-size:10px;line-height:1.7;color:#e0c599;background:#69532733;border:1px solid #aa8c5f66;padding:10px 12px;margin:12px 0}.inventory-item.rare .item-copy>strong,.item-inspector.rare #inspectedItemName,.paper-slot.rare strong{color:#e0ce94}.inventory-item.legendary .item-copy>strong,.item-inspector.legendary #inspectedItemName,.paper-slot.legendary strong{color:#e2aa75}.inventory-item.relic .item-copy>strong,.item-inspector.relic #inspectedItemName,.paper-slot.relic strong{color:#c9b3e4}.inventory-item .item-copy>strong.primal-name,.item-inspector.primal-inspector #inspectedItemName,.paper-slot strong.primal-name{color:#f58478}.wordmark:before{content:'';display:block;width:23px;height:25px;flex:0 0 23px;background:url('./assets/art-v08/dawn-sigil.svg') center/contain no-repeat;opacity:.8;margin-right:1px}.game-running .scene-note{opacity:.32}.game-running .loot-currencies{opacity:.58;background:transparent;border-color:transparent}.game-running .scene-status{border-color:transparent;background:transparent;color:#94b2a6}.game-running .scene-heading .eyebrow,.game-running .zone-meta{display:none}.game-running .scene-heading h1{font-size:19px;letter-spacing:2px;color:#bac7bb}.game-running .xp-line{opacity:.55}
@media(orientation:landscape){.scene-heading{top:auto;bottom:calc(var(--safe-bottom) + 148px);max-width:235px}.scene-heading .eyebrow{font-size:7px}.scene-heading h1{font-size:24px;margin:5px 0}.zone-meta{font-size:8px}.game-running .scene-heading{bottom:calc(var(--safe-bottom) + 139px)}.game-running .scene-heading h1{font-size:18px}}
@media(orientation:landscape) and (max-height:500px){.character-preview-controls{bottom:3px;gap:1px;padding:2px}.character-preview-controls>button{min-height:24px;min-width:31px;font-size:8px;padding:4px 5px}.character-preview-controls>[data-avatar-zoom]{padding-left:6px}.character-stage .character-retry{bottom:34px;font-size:9px;padding:6px 9px}.character-stage .character-load-state{font-size:8px;padding:5px}.scene-heading{bottom:calc(var(--safe-bottom) + 124px);max-width:205px}.scene-heading h1{font-size:20px}.scene-heading .eyebrow{font-size:6px}.zone-meta{font-size:7px}.game-running .scene-heading{bottom:calc(var(--safe-bottom) + 123px)}.game-running .scene-heading h1{font-size:17px}.wordmark:before{width:19px;height:22px;flex-basis:19px}.selection-warning{font-size:9px;padding:8px 10px}}
@media(orientation:portrait){.character-preview-controls{bottom:7px}.character-preview-controls>button{min-height:29px;min-width:40px;font-size:9px}.character-stage .character-retry{bottom:46px}.wordmark:before{width:19px;height:23px;flex-basis:19px}.game-running .scene-heading h1{font-size:20px}}

/* v08 usability audit: reserve touch area for actions, typography for equipment meaning. */
#modal[open]{display:flex;flex-direction:column;max-height:calc(100dvh - 20px)}#modal .modal-header,#modal .menu-paused{flex:0 0 auto}#modalContent{flex:1 1 auto;min-height:0;max-height:none;overflow:auto}.modal-header #closeModal{width:44px;height:44px;min-width:44px;min-height:44px;flex:0 0 44px;border:1px solid #72806b66;background:#1a2e36;border-radius:3px}.modal-header #closeModal>.lucide{width:19px;height:19px}
.inventory-item{grid-template-columns:44px minmax(0,1fr);column-gap:8px;padding-left:6px}.item-selection-hitarea{display:grid;place-items:center;align-self:center;width:44px;min-width:44px;min-height:44px;border-radius:3px;cursor:pointer}.item-selection-hitarea:has(input:checked){background:#b99b5430;outline:1px solid #c3ad7266}.inventory-item .item-checkbox{width:18px;height:18px;grid-row:auto;margin:0;pointer-events:auto}.item-selection-hitarea:has(input:disabled){cursor:default;opacity:.55}.inspect-item{min-height:44px}.inventory-item .item-copy strong,.paper-slot strong,#inspectedItemName,.reroll-hero h3{overflow-wrap:anywhere;word-break:normal;white-space:normal;max-width:100%;text-overflow:clip}.item-actions{flex-wrap:wrap}.item-actions>button{min-width:48px;min-height:40px;font-size:10px;padding:6px 10px}.bag-tabs button,.build-tabs button,.bulk-toolbar button,.character-actions button,.skill-choice>button,.base-rune{min-height:40px}.bag-filters select,.reroll-choice select,.strategy-label select{min-height:40px}.inspector-actions button,#confirmSalvage,#confirmReroll,.modal-actions>.primary,.modal-actions>.danger{min-height:44px;padding:9px 12px;font-size:11px}.salvage-confirm button{min-height:40px;min-width:68px;padding:8px 12px}.talent-node-foot>button{min-width:44px;width:44px;min-height:44px;height:44px;flex-basis:44px;font-size:23px}.talent-node-foot{gap:8px}.talent-node-foot>span{font-size:9px;line-height:1.6}.character-preview-controls>button{min-height:32px;min-width:38px}.primal-label{font-size:10px;line-height:1.7;letter-spacing:1px}.inspector-notes .primal-label{display:block;font-size:11px;color:#f69b8c;margin:4px 0 5px}.item-kind{line-height:1.6}.inventory-item .item-copy strong{line-height:1.6}.paper-slot .primal-label{font-size:9px;letter-spacing:.5px}
.item-affix-panel{margin-top:16px;padding-top:13px;border-top:1px solid #78876b66}.item-affix-panel>header{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.item-affix-panel>header>strong{font-size:12px;color:#e3e1c9;font-weight:500}.item-affix-panel>header>small{font-size:9px;color:#9ab2b0}.item-affix-panel ul{list-style:none;margin:0;padding:0;display:grid;gap:0}.item-affix-panel li{display:grid;grid-template-columns:minmax(68px,1fr) auto;align-items:start;column-gap:8px;row-gap:2px;padding:8px 0;border-bottom:1px solid #8b9d801f;font-size:11px;color:#c7d3c7}.item-affix-panel li>strong{font-size:13px;font-weight:600;color:#ece5ca;font-variant-numeric:tabular-nums}.item-affix-panel li>small{grid-column:1/-1;color:#96adab;font-size:9px;line-height:1.6}.rerolled-affix{display:block;color:#d7ba80;font-size:9px;margin-top:3px}.dawn-affix-panel{margin-top:15px;padding:12px;border:1px solid #b29a646e;border-left:2px solid #d2b26f;border-radius:2px;background:linear-gradient(115deg,#80683226,#273c344d)}.dawn-affix-head{display:flex;align-items:center;gap:7px;color:#e2c27e}.dawn-affix-head>span{font-size:20px;line-height:1}.dawn-affix-head>strong{font-size:12px;font-weight:500;flex:1}.dawn-affix-head>b{font-size:10px;font-weight:500;white-space:nowrap;border:1px solid #b29a645c;padding:3px 5px}.dawn-affix-effect{color:#f1dfad;font-size:12px;line-height:1.75;margin:9px 0 5px;overflow-wrap:anywhere}.dawn-affix-panel>small{font-size:9px;color:#bba880}.dawn-strength-key{margin-top:9px;border-top:1px solid #a28a5055}.dawn-strength-key>summary{display:flex;align-items:center;min-height:40px;cursor:pointer;font-size:10px;color:#c7ba92;list-style:none;gap:7px}.dawn-strength-key>summary:before{content:'+';font-size:16px;color:#dec080}.dawn-strength-key[open]>summary:before{content:'−'}.dawn-strength-key>div{display:grid;gap:6px}.dawn-strength-key>div>span{display:flex;justify-content:space-between;gap:7px;font-size:10px;color:#bac6af}.dawn-strength-key>div b{font-size:11px;color:#e6cf98;font-weight:500}.dawn-strength-key>p{font-size:9px;color:#aeb79b;line-height:1.7;margin-top:9px}
@media(orientation:landscape) and (max-height:500px){#modal .modal-header{padding:7px 14px;min-height:60px;gap:12px}#modal .modal-header h2{font-size:22px;letter-spacing:1px;margin-top:0}#modal .modal-header .eyebrow{display:none}#modal .menu-paused{font-size:9px;line-height:1.5;padding:7px 14px}#modalContent{padding:14px 16px 18px}.item-inspector{position:static;margin-top:10px;padding:12px}.inspector-identity{padding-top:7px;gap:9px}.inspector-identity .item-icon{width:52px;height:56px;flex-basis:52px}.inspector-identity .item-power{font-size:37px;flex-basis:48px}#inspectedItemName{font-size:19px;line-height:1.45;margin:9px 0}.inspector-notes .binding-note{font-size:9px;line-height:1.6}.inventory-item .item-copy strong{font-size:11px}.inventory-item .dawn-note{font-size:9px}.item-kind{font-size:9px}.item-actions>button{min-height:40px;font-size:10px}.bag-tabs button{padding:6px 10px;font-size:10px}.bulk-toolbar .secondary{min-height:40px;font-size:10px;padding:6px 9px}.bag-filters select{min-height:40px;font-size:11px}.bag-filters label{font-size:9px}.bag-filters{gap:8px;padding:9px;margin:10px 0}.build-tabs button{min-height:40px;font-size:11px;padding:7px 16px}.skill-choice>button{min-height:40px;font-size:10px}.selected-slots>button>strong{font-size:10px;line-height:1.5}.paper-slot{min-height:74px;padding:7px;flex-wrap:wrap;column-gap:6px;row-gap:3px}.paper-slot strong{font-size:10px;line-height:1.5}.paper-slot .slot-copy>small{font-size:9px}.paper-slot .dawn-note{font-size:9px;line-height:1.5}.paper-slot .primal-label{font-size:9px}.slot-copy{min-width:66px}.paper-slot .item-power{font-size:25px;flex-basis:34px;margin-left:auto}.paper-slot .item-power small{font-size:7px}.paper-slot .slot-image{display:none}.character-preview-controls>button{min-height:32px;min-width:34px;font-size:9px;padding:5px 6px}.character-stage .character-retry{bottom:41px;min-height:36px}.talent-node h4{font-size:13px}.talent-node>p{font-size:11px;line-height:1.65}.talent-node-foot>span{font-size:9px}.talent-node-head>div>small{font-size:8px}.talent-tier>header>span{font-size:9px}.talent-node-foot>button{width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px}.item-affix-panel{margin-top:12px;padding-top:10px}.dawn-affix-panel{padding:10px}.compare-row{font-size:10px;padding:8px 0}.compare-row>b{font-size:10px}.compare-columns{font-size:8px;line-height:1.5}.comparison-footnote{font-size:9px;line-height:1.6}.inspector-actions button{font-size:11px;min-height:44px}.inspector-provenance{font-size:9px}.inspector-relic-note{font-size:9px}.filter-count{font-size:10px}.inventory-rule-note{font-size:10px}}
@media(orientation:landscape) and (max-width:740px){.inventory-workspace{grid-template-columns:minmax(0,1fr) minmax(228px,.9fr);gap:12px}.inventory-item{padding:7px 7px 7px 3px;gap:6px;grid-template-columns:44px minmax(0,1fr)}.inspect-item{gap:6px;flex-wrap:wrap}.inspect-item .item-icon{width:30px;height:33px;flex-basis:30px}.inspect-item .item-power{font-size:26px;flex-basis:34px}.inspect-item .item-copy{flex-basis:100%}.inspect-chevron{display:none}.item-actions{grid-column:1/-1;padding-top:5px;justify-content:flex-end;gap:6px}.item-actions .worn-tag{margin-right:auto;font-size:9px}.item-actions>button{min-width:56px;min-height:40px;font-size:10px}.paper-slot .dawn-note{font-size:9px}.paper-slot strong{font-size:10px}.paper-slot .item-power{font-size:25px;flex-basis:34px}.dawn-affix-head{flex-wrap:wrap;gap:5px}.dawn-affix-head>b{margin-left:auto;font-size:10px}.dawn-affix-head>strong{font-size:11px}.dawn-affix-effect{font-size:11px}.item-affix-panel li{font-size:11px}}
@media(orientation:portrait){.inventory-item{grid-template-columns:44px minmax(0,1fr)}.item-actions>button{min-height:40px}.paper-slot strong{font-size:10px}.paper-slot .dawn-note{font-size:9px}.bulk-toolbar .secondary{min-height:40px;font-size:10px}.bag-tabs button{min-height:40px}.bag-filters select{min-height:40px}.talent-node-foot>button{width:44px;height:44px;min-width:44px;min-height:44px;flex-basis:44px}}
/* View controls keep a full touch target even when the portrait is compact. */
.character-preview-controls{width:max-content;max-width:100%;flex-wrap:wrap;justify-content:center;gap:3px}.character-preview-controls>button{min-width:44px;width:44px;min-height:44px;font-size:10px;padding:6px 3px}.character-preview-controls>[data-avatar-zoom]{margin-left:0;padding-left:3px}.character-stage .character-retry{bottom:59px;min-height:40px}
#enemyGroupSummary{display:inline-block;margin-left:10px;color:#b7b8a8;font-size:8px;letter-spacing:.04em}

/* M2 combat hierarchy: readable values and distinct 44px action targets. */
#hpText,#rageText,#enemyName,#enemyLevel,#enemyHpText,#enemyGroupSummary{font-size:12px;line-height:18px;font-variant-numeric:tabular-nums}
#enemyName{font-size:13px;font-weight:600;display:inline-block;max-width:calc(100% - 60px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom}
#enemyGroupSummary{margin-left:10px;letter-spacing:0}
#battleHotbar .hotbar-label,#battleHotbar .hotbar-status{font-size:11px;line-height:14px;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.battle-hotbar .hotbar-status{color:#bdc8c3;font-weight:400}.battle-hotbar button:disabled{opacity:.68}.battle-hotbar button:disabled .hotbar-status{color:#d3b995}#evadeButton,#autoMoveButton,#play,#camp,#viewToggle,#zoneButton,#wallet,#fullscreenButton,.rail .nav-item{min-width:44px;min-height:44px}
.rail{grid-template-columns:repeat(4,44px);gap:4px;padding:6px}.rail .nav-item{width:44px;min-height:44px;font-size:10px;padding:4px 1px;gap:3px}
#zoneButton{pointer-events:auto}#wallet{font-size:11px}#fullscreenButton{font-size:11px}
.battle-hotbar button{width:52px;min-width:52px;height:70px;min-height:70px;gap:2px;padding:4px 3px}.battle-hotbar .ui-art{width:26px;height:26px}.battle-hotbar button>small{font-size:8px}
.model-status{max-width:270px;font-size:12px;line-height:1.6;pointer-events:auto;padding:10px 12px;border-color:#a8a17b99;background:#12212bf2}
#modelStatusText{display:block}#retryModels{min-width:112px;min-height:44px;padding:8px 14px;margin-top:8px;border:1px solid #c6b58a;border-radius:4px;background:#263c43;color:#f1e4c3;font-size:12px}#retryModels:disabled{opacity:.6}
#damageNumbers .damage-number{display:block;font-size:14px;line-height:20px;font-weight:700;color:#f3ead7;white-space:nowrap;margin:0;text-shadow:0 1px 3px #071015,0 0 6px #071015;animation:combatFloatM2 var(--combat-life,450ms) ease-out forwards;transform:translate(-50%,-100%)}
#damageNumbers .damage-number.fire{color:#ebc38b}#damageNumbers .damage-number.critical{font-size:19px;line-height:26px;font-weight:800;color:#ffe0a0}#damageNumbers .damage-number.hurt{color:#edab9f}#damageNumbers .damage-number.block{color:#b5dfd8;font-size:12px;line-height:18px}#damageNumbers .damage-number.warning{color:#f3ba93;font-size:12px;line-height:18px}
#damageNumbers[data-combat-mode="fallback"]{display:flex;flex-direction:column;justify-content:flex-start;align-items:center;padding-top:145px;gap:3px}#damageNumbers .damage-number.fallback{position:static;max-width:220px;overflow:hidden;text-overflow:ellipsis;font-size:12px;line-height:18px;padding:2px 7px;background:#101d26d9;border-radius:3px;transform:none;animation:combatFadeM2 var(--combat-life,450ms) linear forwards}
@keyframes combatFloatM2{0%{opacity:1;transform:translate(-50%,-100%)}70%{opacity:1}100%{opacity:0;transform:translate(-50%,calc(-100% - var(--combat-rise,18px)))}}
@keyframes combatFadeM2{0%,65%{opacity:1}100%{opacity:0}}
@media (orientation:landscape){
 .topbar{height:44px}.top-actions{gap:8px}.fullscreen-button{height:44px}.wallet-btn{height:44px;padding:7px 9px}
 .player-strip{top:calc(var(--safe-top) + 54px);width:196px;min-height:82px;padding:8px;grid-template-columns:34px 1fr;grid-template-rows:16px 22px 12px 2px;gap:2px 8px}.xp-line{font-size:9px;line-height:12px}.player-title>strong{font-size:11px}
 .resource-hud{left:var(--safe-left);top:calc(var(--safe-top) + 140px);width:196px}.resource-label{font-size:12px;line-height:18px}.resource-label>#shieldText{font-size:10px}
 .enemy-hud{top:calc(var(--safe-top) + 54px);width:200px}.scene-status{top:calc(var(--safe-top) + 112px);font-size:10px;line-height:14px;padding:3px 6px}
 .rail{top:calc(var(--safe-top) + 54px);grid-template-columns:repeat(4,44px)}
 .scene-heading{top:calc(var(--safe-top) + 166px);bottom:auto;max-width:196px}.scene-heading h1{font-size:18px}.scene-note{display:none}
 #autoMoveButton{bottom:calc(var(--safe-bottom) + 97px);width:140px;height:44px;font-size:11px}
 .battle-hotbar{left:50%;right:auto;bottom:var(--safe-bottom);transform:translateX(-50%);max-width:calc(100% - 328px);gap:4px}
 #play{right:var(--safe-right);bottom:calc(var(--safe-bottom) + 128px);width:118px;height:44px;padding:7px;font-size:11px}
 #evadeButton{right:var(--safe-right);bottom:calc(var(--safe-bottom) + 50px);width:72px;height:72px;font-size:12px}
 #camp{right:calc(var(--safe-right) + 54px);bottom:var(--safe-bottom);width:44px;height:44px}#viewToggle{right:var(--safe-right);bottom:var(--safe-bottom);width:44px;height:44px}
 .scene-sound{top:auto;right:calc(var(--safe-right) + 102px);bottom:var(--safe-bottom);width:44px;min-height:44px;padding:3px;font-size:10px}
 .model-status{top:calc(var(--safe-top) + 150px)}.field-records{top:var(--safe-top);left:50%;right:auto;transform:translateX(-50%)}.field-records>summary{min-height:44px;font-size:11px}
}
@media (orientation:landscape) and (max-height:500px){.rail [data-nav="skills"],.rail [data-nav="guide"]{display:none}.scene-heading{display:none}}
@media (orientation:landscape) and (max-width:720px){#fullscreenButton>span{display:none}#fullscreenButton{width:44px;padding:8px}}
@media (prefers-reduced-motion:reduce){#damageNumbers .damage-number{display:none;animation:none}}

/* Offline status is a small paused-state notice, never a simulated progress bar. */
#offlineStatus{position:absolute;z-index:8;left:50%;top:calc(var(--safe-top) + 50px);transform:translateX(-50%);width:min(420px,calc(100% - 32px));max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 128px);overflow:auto;display:grid;gap:8px;padding:10px 12px;border:1px solid #9caa8a99;border-radius:4px;background:#152730f5;box-shadow:0 4px 18px #06101899;color:#e8e4ce;pointer-events:auto;text-align:center}
#offlineStatus[hidden],#offlineStatus [hidden]{display:none!important}
#offlineStatusText{margin:0;font-size:14px;line-height:1.45;font-weight:500;overflow-wrap:anywhere}
#offlineStatus [data-offline-actions]{display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
#offlineStatus button{min-width:88px;min-height:44px;padding:8px 12px;border:1px solid #a5ad8b99;border-radius:3px;background:#253e45;color:#f1e5bf;font-size:13px;line-height:1.2;cursor:pointer;touch-action:manipulation}
#offlineStatus button:hover{background:#344d50;border-color:#e0c38c}
#offlineStatus button:focus-visible{outline:2px solid #f0cf8c;outline-offset:2px}
#offlineStatus button:disabled{cursor:default;opacity:.6}
#offlineStatus[data-phase="readonly"]{border-color:#b8a77a99}
#offlineStatus[data-phase="error"]{border-color:#c48e7a99}
@media(orientation:landscape) and (max-height:440px){#offlineStatus{top:calc(var(--safe-top) + 46px);padding:8px 10px}}

/* Optional fixed thumbstick: input radius48{position:absolute;z-index:4;left:var(--safe-left);bottom:var(--safe-bottom);width:140px;height:140px;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;cursor:grab;isolation:isolate;--stick-x:0px;--stick-y:0px}
@media(orientation:landscape){}

/* Point input owns game gestures; native editing and explicit copy stay available. */
.game-shell{user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.game-shell img{-webkit-user-drag:none}
.game-shell :is(input,textarea,select,[contenteditable]:not([contenteditable="false"]),[data-copyable],[data-allow-native]),.game-shell [data-copyable] *,.game-shell [data-allow-native] *{user-select:text;-webkit-user-select:text;-webkit-touch-callout:default}
.game-shell button,.game-shell a{touch-action:manipulation}
@media(orientation:landscape){#autoMoveButton{bottom:calc(var(--safe-bottom) + 4px);width:122px;min-height:44px}}
