/* Landscape presentation. Canvas dimensions/art bindings live in design_tokens.json.
   All viewports use the same layout; pc-ui.js scales the entire stage, dialogs included. */
body.pc-mode{overflow:hidden;background:#080d0e}
#networkStatus{position:absolute;left:8px;bottom:2px;z-index:10001;font:11px/14px sans-serif;color:#dfc885;background:#122322e8;padding:0 6px;border:1px solid #6b603d;border-radius:4px;pointer-events:none;max-width:calc(100% - 16px)}
#networkStatus:empty{display:none}
.phone-portrait #networkStatus{bottom:66px}
.pc-mode #pcViewport{position:fixed;overflow:hidden;left:50%;top:50%;transform:translate(-50%,-50%)}
.pc-mode #pcStage{position:relative;width:var(--pc-width);height:var(--pc-height);transform-origin:0 0;overflow:hidden;background:#141c1b;isolation:isolate}
.pc-mode .page-atmosphere,.pc-mode .left-rail{display:none}
.pc-mode .layout{width:100%;height:100%;max-width:none;padding:0;margin:0;display:grid;grid-template-columns:minmax(0,1fr);gap:0;align-items:stretch}
.pc-mode.dev-rail-visible .layout{grid-template-columns:minmax(0,1fr) 184px}
.pc-mode .game-frame{height:100%;min-height:0;width:100%;border:0;border-radius:0;box-shadow:none;overflow:hidden;padding:0;display:grid;grid-template-rows:74px minmax(0,1fr) 56px 20px;position:relative;background:#141d1d}
.pc-mode .topbar{height:74px;padding:12px 24px;border-bottom:1px solid #aa905666;background:linear-gradient(110deg,#1b292c,#121b1c);gap:10px}
.pc-mode .wordmark{font-size:max(var(--ui-min-font),calc(22px * var(--ui-text-scale)));letter-spacing:3px;min-width:250px}.pc-mode .wordmark small{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));letter-spacing:3px}
.pc-mode .head-actions{margin-left:auto;gap:8px}
.pc-mode .dev-rail-toggle{display:none;align-items:center;justify-content:center;width:40px;min-width:40px;height:40px;padding:0 2px;border:1px solid #a9905c;border-radius:3px;background:linear-gradient(#304044,#1c2b2e);color:#ead4a1;font-size:11px;font-weight:700;white-space:nowrap}
.pc-mode.dev-local .dev-rail-toggle{display:inline-flex}
.pc-mode.dev-rail-visible .dev-rail-toggle{background:linear-gradient(#5b4930,#30271d);border-color:#e3c47d}
.pc-mode .dev-rail-close{display:none;position:sticky;top:0;float:right;z-index:2;width:28px;height:28px;margin:-5px -3px 0 0;border:1px solid #aa925e;border-radius:50%;background:#243337;color:#e5cc93;font-size:22px;line-height:1}
.pc-mode.dev-rail-visible .dev-rail-close{display:block}
.pc-mode .icon-btn{border:1px solid #b3995a;border-radius:50%;width:36px;height:36px;background:#202c2d}
.pc-mode .resources{position:absolute;top:20px;left:320px;right:180px;height:36px;padding:0;border:0;justify-content:flex-end;gap:20px}
.pc-mode.dev-local .resources{right:235px}
.pc-mode .resource{display:grid;grid-template-columns:32px minmax(0,1fr);grid-template-rows:20px 14px;column-gap:5px;row-gap:0;font-size:max(var(--ui-min-font),calc(14px * var(--ui-text-scale)))}.pc-mode .resource small{grid-column:2;grid-row:2;font-size:11px;line-height:14px}.pc-mode .resource b{grid-column:2;grid-row:1;white-space:nowrap;line-height:20px}.pc-mode .currency-icon{grid-column:1;grid-row:1/3;width:32px;height:32px;object-fit:contain;align-self:center;filter:drop-shadow(0 2px 2px #0009)}
.pc-mode #main{height:100%;min-height:0;overflow:auto;padding:20px 24px;overscroll-behavior:contain;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:#8b794a #172122}
.pc-mode #main,.pc-mode .pc-atlas{overflow-anchor:none}
.pc-mode #main[data-screen=home]{padding:0;overflow:hidden;scrollbar-gutter:auto}
.pc-mode .bottom-nav{position:static;transform:none;max-width:none;width:100%;height:56px;display:flex;justify-content:center;gap:7px;padding:4px 18px;border-top:1px solid #ab925d66;background:#182323;box-shadow:none}
.pc-mode .nav-btn{display:grid;flex:1 1 0;max-width:150px;grid-template-columns:46px max-content;align-items:center;justify-content:center;column-gap:9px;padding:2px 10px;min-width:0;border:1px solid transparent;border-radius:3px;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode .nav-btn.active{border-color:#a99158;background:linear-gradient(#315559,#1a3439);color:#f0d99f}
.game-rpg-icon{display:inline-block;vertical-align:middle;flex-shrink:0;overflow:hidden;pointer-events:none}
.pc-mode .nav-btn .nav-icon-frame{width:46px;height:46px;display:grid;place-items:center}
.pc-mode .nav-btn .game-rpg-icon{width:40px;height:40px;transform:translateY(-3px)}
.pc-mode .nav-btn[data-value="shop"] .game-rpg-icon{transform:translateY(-1px)}
.pc-mode .nav-btn .nav-label{display:block;line-height:20px;white-space:nowrap}
.pc-mode .pc-medallion .game-rpg-icon{width:44px;height:44px}
.pc-mode .pc-explore .game-rpg-icon{width:38px;height:38px}
.pc-mode .head-actions .game-rpg-icon{width:28px;height:28px}
.pc-mode .head-actions .icon-btn{width:40px;height:40px}
.pc-mode .version-line{position:static;height:20px;padding:2px 12px;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));letter-spacing:1px;background:#101819;text-align:center}
.pc-mode .right-rail{display:none;position:static;top:auto;padding:18px 12px;height:100%;overflow:auto;scrollbar-width:thin;border-left:1px solid #ad955e66;background:linear-gradient(#1c292a,#121d1d)}
.pc-mode.dev-rail-visible .right-rail{display:block}
.pc-mode .rail-label{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));letter-spacing:1px;padding-bottom:12px}.pc-mode .rail-label span{display:none}
.pc-mode .dev-account-shortcut{clear:both;display:grid;gap:7px;margin:15px 0;padding:10px;border:1px solid #ad955e99;background:#233331}.pc-mode .dev-account-shortcut strong{font-size:12px;color:#edd295}.pc-mode .dev-account-shortcut button{min-height:36px;font-size:11px}.pc-mode .dev-account-shortcut small{font-size:11px;color:#a9b5a6;line-height:1.35}
.pc-mode #journal h2{font-size:max(var(--ui-min-font),calc(14px * var(--ui-text-scale)));margin:14px 0 8px}.pc-mode #journal .journal-text{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));line-height:1.7;margin:0 0 9px}.pc-mode #journal .note{display:none}
.pc-mode .journal-meta{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));padding:7px 0}.pc-mode .rail-note{display:none}.pc-mode .lab-entry{margin:12px 0;padding:10px 7px;gap:6px}.pc-mode .lab-entry strong{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .lab-entry small{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}
.pc-mode .town-tools{padding:0;border:0;margin:15px 0}.pc-mode .town-tools h3{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)));margin:0 0 8px}.pc-mode .town-tools .settings-grid{gap:5px;margin:8px 0}.pc-mode .town-tools button{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));padding:8px 3px;margin:0;min-height:38px}.pc-mode .town-tools details{border-top:1px solid #9c87563d;padding-top:8px;margin-top:14px}.pc-mode .town-tools details button{margin:4px 0;min-height:30px}.pc-mode .town-tools summary{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .town-tools .note{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));margin:5px 0}
.pc-mode .mobile-town{display:none}
.pc-mode .save-notice:not([hidden]){position:absolute;z-index:10;left:0;right:0;top:74px;padding:8px 18px;background:#583a20;color:#fff}
.pc-mode .primary{border:1px solid #e6ca80;border-radius:3px;background:linear-gradient(#d7bd7e,#ab8b4f);color:#1b201c;min-height:42px;font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)))}
.pc-mode .secondary{border-radius:3px;border-color:#96825788;background:#213031;min-height:38px;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .tiny-btn{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));min-height:30px}
.pc-mode .full{width:100%}
.pc-mode .panel,.pc-mode .content-detail,.pc-mode .mode-card{border-color:#a68d554f;background:#1c292b;border-radius:3px}
.pc-mode .pc-glass{background:linear-gradient(135deg,#172224ed,#202b29df);border:1px solid #ac935c9c;padding:16px;min-width:0}
.pc-mode .eyebrow{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));letter-spacing:2px;color:#c0ae79}.pc-mode .note{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .section-title{font-size:max(var(--ui-min-font),calc(23px * var(--ui-text-scale)))}.pc-mode .topline{margin-bottom:12px}
.pc-mode .pc-home{height:100%;display:grid;grid-template-columns:178px minmax(0,1fr) 190px;grid-template-rows:minmax(0,1fr) 66px;gap:20px 14px;padding:25px 22px 0;background:linear-gradient(90deg,#121c20b8,#16202035 45%,#101a1bb0),var(--home-art) center/cover}
.pc-mode .pc-home-left{display:flex;flex-direction:column;gap:16px;padding-top:10px}.pc-mode .pc-home-left h3{font-size:max(var(--ui-min-font),calc(17px * var(--ui-text-scale)));margin:8px 0}.pc-mode .pc-home-left p{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));color:#c2ccb5;margin:7px 0}.pc-mode .pc-home-left .secondary{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));margin-top:9px}
.pc-mode .pc-text-button{display:flex;align-items:center;gap:8px;background:transparent;padding:0;color:#e2c77e;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));margin-top:12px}.pc-mode .pc-text-button .pc-medallion{width:34px;height:34px;border-width:1px}.pc-mode .pc-text-button svg{width:19px;height:19px}
.pc-mode .pc-home-center{min-width:0;display:flex;flex-direction:column;justify-content:center;padding-bottom:4px}.pc-mode .pc-home-heading{text-align:center;margin-bottom:24px}.pc-mode .pc-home-heading h1{font:max(var(--ui-min-font),calc(28px * var(--ui-text-scale))) Georgia,'Batang',serif;letter-spacing:6px;color:#fff0bf;margin-top:5px;text-shadow:0 2px 8px #000}
.pc-mode .pc-party{display:flex;align-items:center;gap:16px;justify-content:center}.pc-mode .pc-party-card{background:transparent;display:flex;flex-direction:column;align-items:stretch;text-align:center;padding:0;width:142px;min-width:0}.pc-mode .pc-party-card:first-child{width:158px}.pc-mode .pc-party-card strong{margin:10px 0 2px;color:#fff1c9;font-size:max(var(--ui-min-font),calc(14px * var(--ui-text-scale)))}.pc-mode .pc-party-card small{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));color:#d1dfc9}.pc-mode .pc-unit-label{align-self:center;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));letter-spacing:2px;background:#151d15b3;color:#f8d990;padding:3px 9px;margin-bottom:10px}
.pc-mode .pc-home-portrait{border:4px ridge #c8a963;box-shadow:0 7px 16px #0008;aspect-ratio:.9;overflow:hidden}.pc-mode .pc-home-portrait img{width:100%;height:100%;object-fit:cover}.pc-mode .pc-party-card .hp-track{margin-top:10px;height:6px}.pc-mode .pc-party-card .mp-track{margin:3px 0 4px}
.pc-mode .hp-fill{background:linear-gradient(#d98a67,#a84434)}.pc-mode .mp-track>span{background:#7fb4bf}
.pc-mode .pc-party-power{text-align:center;color:#ece1b9;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));margin-top:22px;text-shadow:0 2px 4px #000}.pc-mode .pc-party-power b{font:max(var(--ui-min-font),calc(23px * var(--ui-text-scale))) Georgia;color:#f7d57e;margin:0 10px}.pc-mode .pc-party-power span{white-space:nowrap}
.pc-mode .pc-home-right{display:flex;flex-direction:column;justify-content:center;gap:21px}.pc-mode .pc-menu{display:flex;align-items:center;text-align:left;gap:12px;padding:0;background:none}.pc-mode .pc-menu b{font:max(var(--ui-min-font),calc(18px * var(--ui-text-scale))) Georgia,'Batang',serif;letter-spacing:1px;color:#f4e7be}.pc-mode .pc-menu small{display:block;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));margin-top:4px;color:#d4cfac}.pc-mode .pc-medallion{width:56px;height:56px;border:3px double #d5b767;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 45% 35%,#847450,#273838 75%);box-shadow:0 3px 9px #0009,inset 0 0 0 3px #152022;color:#ffe3a1;flex-shrink:0}
.pc-mode .pc-home-footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #c4a35980;margin:0 -22px;padding:8px 24px;background:#152123d9}.pc-mode .pc-home-footer>span{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));color:#d8caa3;letter-spacing:1px}.pc-mode .pc-explore{display:flex;align-items:center;justify-content:center;gap:20px;min-width:245px;height:47px}
.pc-mode .xp-row{margin-bottom:12px;max-width:420px}.pc-mode .xp-row img{width:34px;height:40px}.pc-mode .subtabs{margin:10px 0 16px}.pc-mode .subtabs button{min-width:105px;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode .content-nav{margin:0 0 12px;gap:6px}.pc-mode .content-nav button{padding:7px 13px;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));border-radius:3px}
.pc-mode .pc-atlas{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.pc-mode .pc-atlas .atlas-list{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:360px;margin:0;overflow:auto}.pc-mode .atlas-card{padding:11px 9px;border-radius:3px;background:#213132}.pc-mode .atlas-card strong{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .atlas-card small{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}.pc-mode .atlas-card.active{background:#315559;border-color:#c7a96a}.pc-mode .pc-atlas .content-detail{margin:0;padding:16px 20px}.pc-mode .content-detail h2{font-size:max(var(--ui-min-font),calc(22px * var(--ui-text-scale)))}.pc-mode .content-zones{gap:8px;margin:15px 0}.pc-mode .content-zone{height:48px;aspect-ratio:auto;border-radius:3px;font-size:max(var(--ui-min-font),calc(15px * var(--ui-text-scale)))}.pc-mode .tower-zones .content-zone{height:40px;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .content-facts{margin:12px 0;padding-top:10px;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
.pc-mode #main[data-screen=atlas]>.topline{position:absolute;top:95px;right:216px}.pc-mode #main[data-screen=atlas]>.topline .eyebrow{display:none}.pc-mode .pc-provenance{margin:0 0 14px}.pc-mode .pc-atlas .content-disclosure{margin:10px 0}.pc-mode .pc-atlas .content-source{margin-top:8px;font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}
.pc-mode .mode-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pc-mode .mode-card{margin:0}.pc-mode .mode-card p{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .mode-card h3{font-size:max(var(--ui-min-font),calc(15px * var(--ui-text-scale)))}
.pc-mode .pc-equipment{display:grid;grid-template-columns:325px minmax(0,1fr) 230px;gap:18px;height:100%;min-height:480px}.pc-mode .pc-loadout{text-align:center;overflow:hidden;padding:9px 10px}.pc-mode .pc-loadout h2{font-size:max(var(--ui-min-font),calc(17px * var(--ui-text-scale)));margin:0 0 7px}.pc-mode .pc-equip-stage{height:232px;position:relative;display:grid;place-items:center}.pc-mode .pc-equip-portrait{width:142px;height:174px;border:4px ridge #c9aa68;box-shadow:0 8px 22px #0008}
.pc-mode .pc-equip-stage .gear-slots{display:grid;grid-template-columns:66px 66px;grid-template-rows:90px 90px;position:absolute;inset:14px 0;justify-content:space-between;align-content:space-between;gap:0;margin:0;pointer-events:none}.pc-mode .pc-equip-stage .slot-box{pointer-events:auto;width:66px;height:90px;padding:8px 4px;aspect-ratio:auto;border-radius:2px}.pc-mode .slot-box img{width:42px;height:50px;object-fit:contain}.pc-mode .slot-box small{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}
.pc-mode .pc-loadout .button-row{display:grid;grid-template-columns:1fr;margin:4px 0;gap:4px}.pc-mode .pc-loadout .button-row button{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));min-height:30px;padding:5px}.pc-mode .pc-loadout>.secondary.full{min-height:31px;margin-top:3px;padding:5px;font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}
.pc-mode .pc-section-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.pc-mode .pc-section-heading h2{font-size:max(var(--ui-min-font),calc(19px * var(--ui-text-scale)));color:#e9d6a4}.pc-mode .pc-section-heading span{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));color:#cbb979}.pc-mode .pc-inventory{min-width:0;overflow:auto;scrollbar-width:thin;padding-right:5px}.pc-mode .inventory-tools{margin:12px 0}.pc-mode .inventory-tools select{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));padding:6px}.pc-mode .bag-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pc-mode .item-card{padding:9px 7px;border-radius:3px;min-height:144px}.pc-mode .item-card img{height:62px;width:62px;object-fit:contain;margin:7px auto}.pc-mode .item-card b{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));white-space:normal}.pc-mode .item-card small{font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}.pc-mode .pc-equipment-detail{overflow:hidden;padding:12px}.pc-mode .pc-equipment-detail h2{font-size:max(var(--ui-min-font),calc(16px * var(--ui-text-scale)));line-height:1.35;margin:7px 0 10px}.pc-mode .pc-equipment-detail .item-stat-row{padding:6px 0}.pc-mode .pc-equipment-detail .primary{margin:12px 0 8px;min-height:38px;padding:7px;font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}.pc-mode .pc-equipment-detail .note{font-size:max(var(--ui-min-font),calc(8px * var(--ui-text-scale)));line-height:1.45}.pc-mode .pc-inspect-art{height:90px;display:grid;place-items:center;margin-bottom:8px;background:radial-gradient(#6b5c4733,transparent)}.pc-mode .pc-inspect-art img{width:78px;height:78px;object-fit:contain}
.pc-mode .pc-inventory .appraisal-callout{display:grid;grid-template-columns:54px minmax(0,1fr) auto;align-items:center;gap:12px;min-width:0;margin:0 0 12px;padding:10px 12px;border:1px solid #9a805565;background:linear-gradient(110deg,#273334,#182425);color:#e8dbb5}
.pc-mode .pc-inventory .appraisal-callout img{display:block;width:54px;height:54px;max-width:54px;max-height:54px;object-fit:contain;margin:0}
.pc-mode .pc-inventory .appraisal-callout strong{display:block;font-size:14px;line-height:1.3}
.pc-mode .pc-inventory .appraisal-callout p{margin:3px 0 0;font-size:11px;line-height:1.45;color:#a9b6a7}
.pc-mode .pc-inventory .appraisal-callout button{min-height:36px;padding:6px 12px;white-space:nowrap;font-size:11px}
.pc-mode .pc-inventory .item-card.appraisal-jump-highlight{outline:2px solid #e4bf78;outline-offset:2px;box-shadow:0 0 18px #d6a95280}
.pc-mode .pc-growth{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px}.pc-mode .hero-summary{display:flex;flex-direction:column;text-align:center;padding:18px;margin-bottom:15px}.pc-mode .hero-summary img{width:145px;height:170px;margin:0 0 12px}.pc-mode .stats-grid{grid-template-columns:repeat(3,1fr)}.pc-mode .pc-growth .note{margin:10px 0}.pc-mode .train-row{min-height:50px}.pc-mode .roster-card{display:inline-flex;width:calc(50% - 8px);margin:7px 8px 7px 0;vertical-align:top}.pc-mode .mini-party{max-width:680px}.pc-mode .mini-unit{padding:10px;gap:8px}.pc-mode .mini-unit img{width:38px;height:46px}.pc-mode .mini-unit b{max-width:none;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode #main[data-screen=battle]{padding:14px 24px;overflow:auto}.pc-mode .battle-top{margin:0 0 6px}.pc-mode .battle-top h2{font-size:max(var(--ui-min-font),calc(21px * var(--ui-text-scale)))}.pc-mode .battle-top .eyebrow{font-size:max(var(--ui-min-font),calc(8px * var(--ui-text-scale)))}.pc-mode .battle-top small{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}.pc-mode .wave-markers{margin:5px 0 10px}
.pc-mode .battle-field{height:355px;min-height:355px;display:grid;grid-template-columns:1fr 130px 1fr;align-items:center;gap:16px;padding:14px 36px;border:1px solid #9e8a555e;background-position:center;background-size:cover;overflow:hidden}
.pc-mode .battle-field>.unit-row{display:flex;flex-direction:column;gap:10px;align-items:center;grid-row:1}.pc-mode .battle-field>.unit-row:first-child{grid-column:3}.pc-mode .battle-field>.unit-row:last-child{grid-column:1}.pc-mode .battle-divider{grid-row:1;grid-column:2;height:auto;min-width:0;text-align:center;margin:0}.pc-mode .battle-divider .sigil{font-size:max(var(--ui-min-font),calc(34px * var(--ui-text-scale)))}.pc-mode .action-label{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)));min-height:42px;line-height:1.5}.pc-mode .action-sub{font-size:max(var(--ui-min-font),calc(8px * var(--ui-text-scale)));line-height:1.6}
.pc-mode .combat-unit{display:grid;position:relative;grid-template-columns:86px 135px;grid-template-rows:33px 10px 8px 24px;column-gap:12px;align-items:center;width:233px;min-height:97px;padding:0;text-align:left;flex:none}.pc-mode .combat-unit .portrait{grid-column:1;grid-row:1/5;width:81px;max-width:81px;height:90px;aspect-ratio:.9;margin:0;border:3px ridge #ba9e61;border-radius:0}.pc-mode .combat-unit .portrait img{width:100%;height:100%}.pc-mode .combat-unit .unit-name{grid-column:2;grid-row:1;min-height:0;margin:0;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)));line-height:1.3;overflow-wrap:anywhere}.pc-mode .combat-unit .hp-track{grid-column:2;grid-row:2;width:100%;height:6px;margin:0}.pc-mode .combat-unit .mp-track{grid-column:2;grid-row:3;width:100%;height:3px;margin:0}.pc-mode .combat-unit .hp-value{grid-column:2;grid-row:4;font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));margin:0}.pc-mode .combat-unit .unit-role{font-size:max(var(--ui-min-font),calc(8px * var(--ui-text-scale)));padding:1px 3px}.pc-mode .combat-unit .float-number{left:40px;top:5px;font-size:max(var(--ui-min-font),calc(30px * var(--ui-text-scale)));z-index:8}.pc-mode .combat-unit.enemy .float-number{color:#ffe1a0}
.pc-mode .battle-controls{display:flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:7px 12px;background:#172426;border:1px solid #9d8a4d44;margin-top:8px}.pc-mode .battle-controls label{display:flex;align-items:center;gap:7px;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .battle-controls input{display:inline-block;width:17px;height:17px;margin:0}.pc-mode .battle-controls .note{max-width:none}.pc-mode .log-header{margin:7px 0 4px}.pc-mode .battle-log{height:55px;font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));padding:5px 10px}.pc-mode #main[data-screen=battle]>.note{display:none}
.pc-mode #main[data-screen=result]{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:10px 24px}.pc-mode #main[data-screen=result]>section.content-detail{grid-column:1;grid-row:1/4;margin:0}.pc-mode #main[data-screen=result]>.result-loot{grid-column:2;grid-row:1/4;margin:0;align-items:center}.pc-mode #main[data-screen=result]>.result-loot .item-card{width:140px;min-height:185px}.pc-mode #main[data-screen=result]>.result-loot img{width:80px;height:80px}.pc-mode #main[data-screen=result]>.button-row,.pc-mode #main[data-screen=result]>.battle-report,.pc-mode #main[data-screen=result]>.auto-next-control,.pc-mode #main[data-screen=result]>.auto-next-gauge{grid-column:1/-1;margin:0}.pc-mode #main[data-screen=result]>.recovery-guide{grid-column:1/-1}.pc-mode .result-stats{padding:18px 4px}.pc-mode .battle-report{padding:12px}.pc-mode .battle-report table{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));margin:7px 0}.pc-mode .battle-report th{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)))}
.pc-mode .resource-result-actions button{min-height:66px;margin:0;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode #main[data-screen=market]>.bag-grid{grid-template-columns:repeat(6,1fr)}.pc-mode .shop-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.pc-mode .shop-offer{margin:0}.pc-mode .reward-offer{display:inline-block;width:calc(33.33% - 12px);vertical-align:top;margin-right:12px}.pc-mode .settings-grid{gap:10px}.pc-mode .settings-grid button{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode #modalRoot{position:absolute;inset:0;pointer-events:none;z-index:50}.pc-mode .modal-backdrop{position:absolute;inset:0;padding:20px;pointer-events:auto;backdrop-filter:none;background:var(--modal-backdrop-color)}
.pc-mode .modal{max-width:660px;max-height:674px;padding:24px 28px;background:linear-gradient(140deg,#233132,#172323);border:2px solid #baa365;border-radius:4px;scrollbar-width:thin;overscroll-behavior:contain;font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)))}.pc-mode .modal.wide{max-width:940px}.pc-mode .modal-top{margin-bottom:18px}.pc-mode .modal-top h2{font-size:max(var(--ui-min-font),calc(24px * var(--ui-text-scale)))}.pc-mode .modal h3{font-size:max(var(--ui-min-font),calc(15px * var(--ui-text-scale)))}.pc-mode .modal p{line-height:1.75}.pc-mode .modal .small-detail{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .modal input,.pc-mode .modal select{font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)))}.pc-mode .modal label{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .modal .onboard-art{height:90px}.pc-mode .class-picker{gap:12px;max-width:480px;margin:12px auto}.pc-mode .class-choice img{height:85px;width:100%;object-fit:cover}.pc-mode .class-choice b{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .class-preview{min-height:0;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)));padding:8px 12px}.pc-mode .town-scroll{max-height:370px}.pc-mode .history-row{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .history-row span:last-child{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
.pc-mode .modal-backdrop[data-kind=item]{justify-content:flex-end;padding:16px 120px 16px 16px;background:var(--modal-backdrop-color)}.pc-mode .modal-backdrop[data-kind=item] .modal{width:760px;max-width:760px;max-height:688px;overflow:hidden;padding:14px 18px;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .item-stat-row{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .modal .item-head h3{font-size:max(var(--ui-min-font),calc(17px * var(--ui-text-scale)));line-height:1.25;margin:4px 0}
.pc-mode #toast{position:absolute;bottom:80px;max-width:650px;min-width:230px;font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)));z-index:90}.pc-mode .recovery-guide{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .guide-ring{z-index:15}
/* Keep claimed quest rewards prominent above the dialog, within the scaled stage. */
.pc-mode #toast[data-scope="quest-reward"]{top:50%;bottom:auto;transform:translate(-50%,calc(-50% + 10px));min-width:320px;max-width:calc(100% - 48px);padding:18px 28px;font-weight:650;font-size:max(var(--ui-min-font),calc(16px * var(--ui-text-scale)));border-color:var(--gold-bright);background:#29362afc;box-shadow:0 8px 36px #000c,0 0 20px #d8bb6426}
.pc-mode #toast[data-scope="quest-reward"].visible{transform:translate(-50%,-50%)}
.pc-mode #main[data-screen=home]>.recovery-guide{position:absolute;top:90px;left:25px;right:210px;z-index:20;box-shadow:0 10px 30px #000c}
.pc-mode .battle-field{height:340px;min-height:340px;padding-top:10px;padding-bottom:10px}
.pc-mode .battle-controls{margin-bottom:6px}
.pc-mode .battle-log{height:26px;min-height:26px;overflow:hidden}
.pc-mode .battle-log>div:not(:last-child){display:none}
/* Enlarged field; the middle portrait advances while names and gauges stay aligned. */
.pc-mode #main[data-screen=battle]{padding:8px 14px;overflow:auto}
.pc-mode .battle-top{position:absolute;left:288px;top:19px;max-width:252px;z-index:2;margin:0;pointer-events:none}
.pc-mode .battle-top h2{font-size:max(var(--ui-min-font),calc(20px * var(--ui-text-scale)));white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0}
.pc-mode .battle-top .eyebrow,.pc-mode .battle-top small,.pc-mode .battle-top .badge,.pc-mode #main[data-screen=battle]>.wave-markers{display:none}
.pc-mode .game-frame:has(#main[data-screen=battle]) .resources{left:320px;gap:12px}
.pc-mode .game-frame:has(#main[data-screen=battle]) .resource{font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.pc-mode .battle-field{height:var(--pc-combat-fieldHeight);min-height:var(--pc-combat-fieldHeight);grid-template-columns:1fr 110px 1fr;gap:18px;padding:12px 22px}
.pc-mode .battle-field>.unit-row{gap:16px}
.pc-mode .combat-unit{width:294px;min-height:120px;grid-template-columns:170px 108px;grid-template-rows:46px 12px 9px 40px;column-gap:16px;--formation-offset:0px;--combat-number-x:240px;--attack-direction:1}
.pc-mode .combat-unit .portrait{grid-column:2;width:var(--pc-combat-portraitWidth);max-width:var(--pc-combat-portraitWidth);height:var(--pc-combat-portraitHeight);translate:var(--formation-offset) 0}
.pc-mode .combat-unit .unit-name,.pc-mode .combat-unit .hp-track,.pc-mode .combat-unit .mp-track,.pc-mode .combat-unit .hp-value{grid-column:1}
.pc-mode .combat-unit.enemy{grid-template-columns:108px 170px;--combat-number-x:54px;--attack-direction:-1}
.pc-mode .combat-unit.enemy .portrait{grid-column:1}
.pc-mode .combat-unit.enemy .unit-name,.pc-mode .combat-unit.enemy .hp-track,.pc-mode .combat-unit.enemy .mp-track,.pc-mode .combat-unit.enemy .hp-value{grid-column:2}
.pc-mode .unit-row>.combat-unit:nth-child(2){--formation-offset:var(--pc-combat-middleOffset)}
.pc-mode .unit-row>.combat-unit.enemy:nth-child(2){--formation-offset:calc(-1 * var(--pc-combat-middleOffset))}
.pc-mode .combat-unit .float-number{left:calc(var(--combat-number-x) + var(--formation-offset));top:-5px;font-size:max(var(--ui-min-font),calc(32px * var(--ui-text-scale)))}
.pc-mode .combat-unit.attack .portrait{animation:none}
.pc-mode .combat-unit .portrait.lunge{animation:pcAttackLunge var(--pc-combat-attackDurationMs) ease-in-out}
@keyframes pcAttackLunge{0%,100%{transform:translateX(0)}40%{transform:translateX(calc(var(--attack-direction) * var(--pc-combat-attackDistance)))}}
@media(prefers-reduced-motion:reduce){.pc-mode .combat-unit .portrait.lunge{animation:none}}
/* Approved result reward card enlargement; zoom participates in layout. */
.pc-mode #main[data-screen=result]>.result-loot{min-width:0;flex-wrap:wrap;align-content:center}
.pc-mode #main[data-screen=result]>.result-loot .item-card{zoom:var(--result-loot-card-scale);flex-shrink:0}
/* Keep skill names and action counters in separate layout rows. */
.pc-mode .battle-divider{display:flex;flex-direction:column;justify-content:center;gap:12px;align-self:stretch}
.pc-mode .battle-divider:before{display:none}
.pc-mode .battle-divider .action-label{position:static;inset:auto;transform:none;width:160px;max-width:160px;min-height:62px;padding:6px;display:grid;place-items:center;overflow-wrap:anywhere;line-height:1.45;flex:none}
.pc-mode .battle-divider .action-sub{position:static;inset:auto;width:130px;min-height:44px;line-height:1.7;flex:none}
.pc-mode .region-boss-battle>.unit-row:has(.enemy.boss){align-self:stretch;justify-content:center}
.pc-mode .region-boss-battle .combat-unit.enemy.boss{grid-template-columns:calc(var(--pc-combat-portraitWidth) * var(--pc-boss-portrait-scale)) 154px;width:332px;min-height:190px;align-content:center;--combat-number-x:81px}
.pc-mode .region-boss-battle .combat-unit.enemy.boss .portrait{width:calc(var(--pc-combat-portraitWidth) * var(--pc-boss-portrait-scale));max-width:none;height:calc(var(--pc-combat-portraitHeight) * var(--pc-boss-portrait-scale))}
.pc-mode .modal-backdrop[data-kind=item] .modal-top{margin-bottom:10px}
.pc-mode .pc-next-action{border-color:#d0ad63;background:linear-gradient(135deg,#263a38,#172725)}.pc-mode .pc-next-action h3{line-height:1.25;margin:7px 0}.pc-mode .pc-next-action .primary{font-size:max(var(--ui-min-font),calc(10px * var(--ui-text-scale)));min-height:38px;padding:6px;margin-top:10px}.pc-mode .pc-home-secondary{padding:8px 11px}.pc-mode .pc-home-secondary summary{cursor:pointer;color:#d6c394}.pc-mode .pc-home-secondary>div{padding-top:7px}.pc-mode .pc-home-left{gap:9px}
.pc-mode .pc-home-left{min-height:0;overflow:visible}
.pc-mode .pc-next-action h3{margin:7px 0 10px}
.pc-mode .pc-next-action .primary{margin-top:0}
.pc-mode .pc-home-buff-action{display:block;flex:0 0 auto;width:100%;min-height:38px;padding:7px 5px;font-size:12px;font-weight:700}
.pc-mode .pc-home-secondary[open]{position:relative;z-index:5}
.pc-mode .pc-home-secondary[open]>div{position:absolute;left:calc(100% + 8px);top:-8px;width:246px;max-height:360px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c7a970 #263531;z-index:6;padding:12px;border:1px solid #b39a62;background:linear-gradient(#233333,#172525);box-shadow:0 15px 28px #000b}
.pc-mode .pc-home-left>.pc-glass:last-child{flex:0 0 auto}
.pc-mode .modal-backdrop[data-kind=item] .modal{overflow:auto;scrollbar-width:thin}.pc-mode .modal-backdrop[data-kind=item] .item-growth-breakdown{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.pc-mode .item-growth-breakdown span{background:#192526;border:1px solid #82724766;border-radius:4px;padding:5px;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));color:var(--muted)}.pc-mode .item-growth-breakdown b{display:block;color:#e8d7a9;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}.pc-mode .item-detail-rules{color:var(--muted);font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}
.nav-alert-dot{position:absolute;right:5px;top:4px;width:8px;height:8px;border-radius:50%;background:#efbe55;box-shadow:0 0 8px #efbe55}.nav-battle-status{position:absolute;right:3px;bottom:2px;font-size:11px;color:#f5d586;white-space:nowrap}.pc-mode .nav-btn{position:relative}
.shop-price{display:flex;align-items:center;gap:4px;margin:12px 0;padding:8px;border:1px solid #82724766;border-radius:5px;background:#192526}.full-combat-log{font-size:calc(11px * var(--ui-text-scale));max-height:60vh;overflow:auto;white-space:normal}
.pc-mode .modal-backdrop[data-kind=item] .item-dialog-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:12px}.pc-mode .modal-backdrop[data-kind=item] .item-dialog-left,.pc-mode .modal-backdrop[data-kind=item] .item-dialog-right{min-width:0}.pc-mode .modal-backdrop[data-kind=item] .item-dialog-actions{border-top:1px solid #53613b4a;margin-top:6px;padding-top:4px}.pc-mode .modal-backdrop[data-kind=item] .item-dialog-actions>.note{text-align:center}.pc-mode .modal-backdrop[data-kind=item] .item-skill-note{margin:6px 0}
.pc-mode .modal-backdrop[data-kind=item] .item-head{margin-bottom:10px}
.pc-mode .modal-backdrop[data-kind=item] .item-head .item-image{width:82px;height:82px}.pc-mode .modal-backdrop[data-kind=item] .item-head .item-image img{width:70px;height:70px}
.pc-mode .modal-backdrop[data-kind=item] .enhance-box{margin:6px 0 8px;padding:8px 10px}
.pc-mode .modal-backdrop[data-kind=item] .enhance-box h3{margin:0 0 8px}
.pc-mode .modal-backdrop[data-kind=item] .enhance-box p{margin:3px 0;line-height:1.25;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}
.pc-mode .modal-backdrop[data-kind=item] .enhance-box .button-row{margin:5px 0}.pc-mode .modal-backdrop[data-kind=item] .enhance-box button{min-height:34px;padding:6px 10px}
.pc-mode .modal-backdrop[data-kind=item] .item-stat-row{padding:5px 0}.pc-mode .modal-backdrop[data-kind=item] .proc-box{margin:6px 0;padding:8px}.pc-mode .modal-backdrop[data-kind=item] .proc-box p{margin-top:3px;line-height:1.35}
.pc-mode .modal-backdrop[data-kind=item] .rune-socket-summary{margin:6px 0;padding:8px;gap:4px 10px}.pc-mode .modal-backdrop[data-kind=item] .rune-socket-summary h3{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}.pc-mode .modal-backdrop[data-kind=item] .rune-socket-summary p,.pc-mode .modal-backdrop[data-kind=item] .rune-socket-summary small{line-height:1.3;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)))}.pc-mode .modal-backdrop[data-kind=item] .rune-socket-summary button{min-height:32px;padding:5px 9px}.pc-mode .modal-backdrop[data-kind=item] .button-row{margin:5px 0;gap:6px}.pc-mode .modal-backdrop[data-kind=item]>.modal>.note{font-size:max(var(--ui-min-font),calc(8px * var(--ui-text-scale)));line-height:1.35}
.defeat-message{text-align:center;padding:24px 0;font-size:20px;color:#f2ddba}
.pc-mode .battle-divider .action-sub{display:flex;flex-direction:column;align-items:center;gap:3px;width:160px}
.pc-mode .battle-divider .action-sub span{white-space:nowrap}
.pc-mode .battle-field{isolation:isolate;background-image:none}
.pc-mode .battle-field:before{content:"";position:absolute;inset:-5px;z-index:-1;pointer-events:none;background:linear-gradient(180deg,#0b140b73,#13210d40 36%,#0b140bc2 65%,#111c11eb),var(--battle-art) center/cover;filter:blur(var(--pc-combat-backgroundBlur))}

/* Auto stays on while the repeat checkbox selects same-zone farming. */
.auto-next-control{gap:24px;flex-wrap:wrap}
.auto-explore-row{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(240px,.8fr);gap:8px;margin:8px 0}
.auto-explore-row>.auto-next-control{display:flex;align-items:center;justify-content:center;gap:15px;min-width:0;margin:0;padding:8px;border:1px solid #57664e;background:#1b2b26}
.auto-explore-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0;padding:10px 14px;border:1px solid #947b4b;background:#29392d;color:#d4dfcd}
.auto-explore-status:before{content:"";flex:none;width:10px;height:10px;border-radius:50%;background:#8dc77d;box-shadow:0 0 9px #8dc77d}
.auto-explore-status.paused:before{background:#e3b866;box-shadow:0 0 9px #e3b866}
.auto-explore-status.stopped:before{background:#df8f7d;box-shadow:0 0 9px #df8f7d}
.auto-explore-status.off:before{background:#899c8e;box-shadow:none}
.auto-explore-status-copy{flex:1;min-width:0}
.auto-explore-status strong{display:block;color:#f3dca4;font-size:max(var(--ui-min-font),calc(15px * var(--ui-text-scale)))}
.auto-explore-status p{margin:3px 0;color:#ced9ca}
.auto-explore-party{display:flex;flex-wrap:wrap;gap:5px;margin:7px 0}
.auto-explore-party span{padding:3px 6px;border:1px solid #56715c;background:#21362b;color:#d3e4cf;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
.auto-explore-party span.dead{border-color:#b87869;background:#422b29;color:#f2b4a7}
.auto-explore-status small{color:#a9bfa9}
.auto-explore-status>button{flex:none;min-height:36px}
@media(max-width:760px){.auto-explore-row{grid-template-columns:1fr}.auto-explore-status{flex-wrap:wrap;padding:9px 10px;gap:8px}.auto-explore-status>button{width:100%}}
.pc-mode #main:has(>.equipment-tabs){display:flex;flex-direction:column;overflow:hidden}
.pc-mode #main>.equipment-tabs{flex-shrink:0;margin:0 0 12px;display:flex;gap:8px;align-items:center}
.pc-mode .equipment-tabs>button{flex:1;min-width:0;padding:8px}
.pc-mode #main>.equipment-tabs+.pc-equipment{flex:1;min-height:0;height:auto}

/* Taskbar-style expedition view. It stays inside the H5 viewport; a native
   Steam wrapper can later dock this same surface above the Windows taskbar. */
.pc-mode .compact-mode-control{white-space:nowrap}
.pc-mode.compact-explore-mode #pcStage{background:radial-gradient(circle at 58% 25%,#263a39 0,#132221 35%,#080f0f 100%)}
.pc-mode.compact-explore-mode #pcStage:before{content:"";position:absolute;inset:0;background:linear-gradient(#07100fbd,#07100feb),var(--page-art) center/cover;filter:blur(6px);transform:scale(1.03);opacity:.42}
.pc-mode.compact-explore-mode .layout{position:absolute;inset:0;display:block;background:transparent}
.pc-mode.compact-explore-mode .right-rail,.pc-mode.compact-explore-mode .topbar,.pc-mode.compact-explore-mode .resources,.pc-mode.compact-explore-mode .save-notice,.pc-mode.compact-explore-mode .bottom-nav,.pc-mode.compact-explore-mode .version-line,.pc-mode.compact-explore-mode .mobile-town{display:none!important}
.pc-mode.compact-explore-mode .game-frame{position:absolute;inset:0;display:block;height:100%;background:transparent;overflow:visible}
.pc-mode.compact-explore-mode #main[data-screen=compact-explore]{position:absolute;inset:0;height:100%;padding:0;overflow:hidden;scrollbar-gutter:auto}
.compact-explore-stage{position:absolute;inset:0;pointer-events:none}
.compact-explore-bar{pointer-events:auto;position:absolute;z-index:5;left:14px;right:14px;bottom:14px;height:118px;display:grid;grid-template-columns:180px 132px minmax(390px,1.2fr) minmax(245px,.8fr) 264px;background:linear-gradient(180deg,#1d2b2af7,#0d1615fc);border:2px solid #bea55f;box-shadow:0 -12px 42px #000d,0 0 24px #d1ae4c24;overflow:hidden}
.compact-explore-bar:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#101817 0,#101817ed 27%,#1018174d 53%,#101817e9 78%,#101817 100%),var(--page-art) center/cover;opacity:.72}
.compact-explore-bar>div{min-width:0;border-right:1px solid #a98f4d42}
.compact-brand{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:12px 16px}.compact-brand img{width:148px;height:46px;object-fit:contain;object-position:left center}.compact-brand small{margin-left:3px;color:#8fa18f;font-size:11px;letter-spacing:2.4px}
.compact-stage-copy{display:flex;flex-direction:column;justify-content:center;padding:9px 12px}.compact-stage-copy small{color:#aeb998;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-stage-copy strong{font:20px var(--font-title);color:#ffe4a0;margin:3px 0}.compact-stage-copy span{color:#8fa092;font-size:11px;white-space:nowrap}.compact-stage-copy .compact-active-toggle{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:6px;color:#c8c19d;font-size:11px}.compact-stage-copy .compact-active-toggle input{flex-basis:32px!important;width:32px!important;height:18px!important}.compact-stage-copy .compact-active-toggle input:after{width:12px;height:12px}.compact-stage-copy .compact-active-toggle input:checked:after{transform:translateX(14px)}
.compact-party{display:flex;align-items:center;justify-content:center;gap:10px;padding:9px}.compact-unit{position:relative;display:grid;grid-template-columns:50px minmax(64px,1fr);gap:7px;align-items:center;min-width:0;max-width:142px}.compact-unit .portrait{position:relative;width:50px;height:68px;border:2px solid #c5a45d;overflow:hidden;background:#141b18}.compact-unit .portrait img{width:100%;height:100%;object-fit:cover;object-position:center top}.compact-unit-copy{min-width:0}.compact-unit-copy b{display:block;color:#f3e6c3;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-unit .hp-track{height:5px;margin:6px 0 0}.compact-unit .mp-track{height:2px;margin:3px 0}.compact-unit .hp-value{font-size:11px;white-space:nowrap}.compact-unit.dead{filter:grayscale(1);opacity:.42}
.compact-encounter{display:flex;align-items:center;justify-content:center;gap:11px;padding:10px}.compact-encounter .compact-unit{grid-template-columns:56px;max-width:56px}.compact-encounter .compact-unit-copy{display:none}.compact-encounter .compact-unit .portrait{width:56px;height:76px;border-color:#98614e}.compact-action{min-width:120px}.compact-action b{display:block;color:#f2e5bd;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compact-action #actionSub{display:flex;gap:8px;color:#9cac99;font-size:11px;margin-top:7px;white-space:nowrap}
.compact-controls{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:12px}.compact-controls .tiny-btn{min-height:34px;padding:5px;font-size:11px}.compact-controls label{display:flex;align-items:center;justify-content:center;gap:5px;min-width:0;margin:0;border:1px solid #6c6347;background:#17211e;color:#c8c19d;font-size:11px}.compact-controls label input{flex-basis:32px!important;width:32px!important;height:18px!important}.compact-controls label input:after{width:12px;height:12px}.compact-controls label input:checked:after{transform:translateX(14px)}
.compact-result-alert{pointer-events:auto;position:absolute;z-index:8;right:20px;bottom:146px;width:326px;min-height:78px;display:grid;grid-template-columns:48px 1fr 24px;gap:11px;align-items:center;padding:11px 13px;text-align:left;color:#e9dfbf;background:linear-gradient(135deg,#202e2af8,#101917fc);border:2px solid #bda25b;box-shadow:0 13px 38px #000c,0 0 18px #d7b44f30;animation:compactAlertIn .22s ease-out}.compact-result-alert.defeat{border-color:#a65c4c;background:linear-gradient(135deg,#30221ff8,#151817fc);box-shadow:0 13px 38px #000c,0 0 18px #a7463330}.compact-result-alert .compact-result-seal{width:44px;height:44px;display:grid;place-items:center;border:1px solid currentColor;border-radius:50%;font:23px var(--font-title);color:#ead082}.compact-result-alert.defeat .compact-result-seal{color:#e7a38d}.compact-result-alert b{display:block;font:16px var(--font-title);color:#fff0c1}.compact-result-alert.defeat b{color:#f2c4b3}.compact-result-alert small{display:block;margin-top:3px;color:#a8b49f;font-size:11px}.compact-result-alert i{font-style:normal;color:#95a390;font-size:15px}
@keyframes compactAlertIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(max-width:760px){.compact-mode-control{display:none!important}}
.pc-mode #main>.equipment-tabs+.rune-menu{flex:1;min-height:0;margin:0;overflow:auto}
.pc-mode #main>.equipment-tabs+.rune-menu:has(.rune-forge-workspace){overflow:hidden}

/* Equipment acquisition shares the landscape menu and uses independent rewards. */
/* Keep the equipment context visible behind the third recovery tutorial. */
.character-choice-heading{margin:14px 0 8px;color:var(--gold,#d5b977);font-size:14px}
.character-picker{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}
.character-choice{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px;min-width:0;background:#142022;border:1px solid #59605a;border-radius:4px;color:#cdd5c2}
.character-choice img{width:66px;height:78px;object-fit:cover}
.character-choice.selected{border-color:#f1ce7d;background:#3a3e2b;box-shadow:inset 0 0 0 1px #f1ce7d}
.character-choice span,.class-choice b{max-width:100%;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.regional-mercs{margin:20px 0}.regional-merc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.regional-merc-grid .roster-card,.pc-mode .regional-merc-grid .roster-card{display:flex;width:100%;margin:0;min-width:0;align-items:flex-start}
.regional-merc-grid .roster-body{min-width:0}.regional-merc-grid .roster-actions button{white-space:normal}
.regional-merc-grid .merc-locked{opacity:.65}
@media(max-width:1080px){.regional-merc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.regional-merc-grid{grid-template-columns:minmax(0,1fr)}}
.pc-mode.advanced-recovery-modal .layout.guide-dimmed{opacity:1;filter:none}
.equipment-summon-art{height:200px;display:grid;place-items:center;margin:16px;background:radial-gradient(ellipse,#c49a4433,transparent 70%)}
.equipment-summon-art img{width:150px;height:180px;object-fit:contain;filter:drop-shadow(0 0 18px #e7c16b66)}
.pc-mode #main[data-screen=dungeon]>.dungeon-tabs{margin:0 0 8px}
.pc-mode .explore-dungeon-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:0 0 10px}
.pc-mode .explore-dungeon-tabs button{min-width:0;min-height:60px;border:6px solid transparent;border-image:var(--ornate-box-frame) 30 fill / 6px / 0 stretch;border-radius:0;background-color:#111615;white-space:nowrap}
.pc-mode .explore-dungeon-tabs button.active{color:#f2d996;box-shadow:inset 0 0 14px #d8bc783d}
.pc-mode #main[data-screen=dungeon]>.equipment-acquisition{padding:16px 20px}
.equipment-dungeon-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:8px}
.equipment-dungeon-head .rune-wallet{margin:0}
.equipment-acquisition .rune-dungeon-view{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding-top:0}
.equipment-acquisition .rune-dungeon-view>div>p{margin:8px 0}
.equipment-acquisition .rune-dungeon-card{padding:14px 18px;border:1px solid #ac935c9c;background:#172424;border-radius:5px}
.equipment-acquisition .rune-dungeon-card p{margin:8px 0}
.equipment-acquisition .rune-dungeon-card button{margin:6px 0}
[data-kind="equipment-summon-result"] .modal{display:flex;flex-direction:column;overflow:hidden}
.equipment-summon-results{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;overflow-y:auto;min-height:0;max-height:380px;margin:12px 0}
.equipment-summon-results .item-card{width:100%}
[data-kind="equipment-summon-result"] .rune-draw-options{flex-shrink:0;margin-bottom:12px}

/* Mercenary ranking art (not generated). */

.merc-power-rank{display:inline-block;margin-left:.35em;color:#ff7777;font-weight:800;font-family:var(--font-body, sans-serif);white-space:nowrap;text-shadow:0 0 10px #e53e3e30;vertical-align:baseline}

.merc-power-rank .merc-champion-crown{display:inline-block;width:34px;height:22px;object-fit:contain;vertical-align:middle;margin:0 5px 2px 0;filter:drop-shadow(0 0 3px #d9a53666)}

.merc-champion-crown[data-rank="2"]{filter:drop-shadow(0 0 3px #c5d4e366)}
.merc-champion-crown[data-rank="3"]{filter:drop-shadow(0 0 3px #b66a4166)}
/* Storefront remains empty until the product catalog is supplied. */
.pc-mode .shop-page{min-height:100%;display:flex;flex-direction:column;padding:6px}
.pc-mode .shop-page .pc-section-heading{padding-bottom:16px;border-bottom:1px solid #8e794649}
.pc-mode .shop-empty{flex:1;min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;padding:36px 20px;text-align:center;border:1px solid #806e454d;background:radial-gradient(ellipse at 50% 40%,#35423860,#182626 65%);border-radius:5px}
.pc-mode .shop-emblem{width:100px;height:100px;display:grid;place-items:center;border:1px solid #a78b4b;border-radius:50%;color:#dec386;background:#243333;box-shadow:0 0 30px #d3b2630b}
.pc-mode .shop-empty h3{margin:5px 0 0;font-size:26px;color:#e3c98e}
.pc-mode .shop-empty p{margin:0;color:#a4afa0;font-size:15px;line-height:1.6}
/* Face crops do not alter the stored, tall original artwork. */
img.hero-portrait{object-fit:cover;object-position:50% 0%;object-view-box:var(--portrait-crop,inset(0%));cursor:zoom-in}
.pc-mode #main :is(.pc-home-portrait,.mini-unit,.roster-card,.hero-summary,.combat-unit .portrait) img.hero-portrait{object-view-box:inset(0%)}
.pc-mode #main :is(.pc-home-portrait,.mini-unit,.roster-card,.hero-summary,.combat-unit .portrait) img.hero-portrait:is([data-portrait="knight_male01"],[data-portrait-art="knight_male01"]){object-view-box:inset(0% 11% 23% 11%)}
.pc-mode #main :is(.pc-home-portrait,.mini-unit,.roster-card,.hero-summary,.combat-unit .portrait) img.hero-portrait:is([data-portrait="knight_female03"],[data-portrait-art="knight_female03"]){object-view-box:inset(0% 9% 18% 9%)}
img.hero-portrait:focus-visible{outline:2px solid #f4d488;outline-offset:3px}
img.hero-portrait.portrait-selection-only{cursor:pointer}
.portrait-viewer{padding:12px;margin:auto;border:2px solid #c5a561;border-radius:8px;background:#132021;color:#eee0b8;max-width:94vw;max-height:94dvh;overflow:hidden;box-shadow:0 18px 80px #000a}
.portrait-viewer::backdrop{background:var(--modal-backdrop-color)}
.portrait-viewer header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:8px}
.portrait-viewer h2{font-size:20px;margin:0;font-family:'CV Forged Blade',serif;font-weight:500}
.portrait-viewer header button{display:grid;place-items:center;width:38px;height:38px;border:1px solid #c5a561;border-radius:50%;background:#20302f;font:28px/1 sans-serif;color:#eee0b8}
.portrait-viewer .portrait-full-art{display:block;width:auto;height:auto;max-width:calc(94vw - 28px);max-height:calc(94dvh - 80px);object-fit:contain;object-view-box:none;margin:auto}
.portrait-viewer.mercenary-viewer{width:min(980px,94vw);overflow:auto}
.mercenary-viewer .portrait-viewer-content{display:flex;align-items:stretch;gap:16px;min-width:0}
.mercenary-viewer .portrait-art-frame{flex:1;min-width:0;display:grid;place-items:center}
.mercenary-viewer .portrait-full-art{max-width:100%;max-height:calc(94dvh - 100px)}
.portrait-merc-details{flex:0 0 min(320px,34vw);min-width:0;padding:15px;border:1px solid #887047;background:#1a2826;color:#e9ddb9;overflow:auto}
.portrait-merc-details[hidden]{display:none}
.portrait-merc-details h3{margin:0;color:#f3d491;font-size:20px}
.portrait-merc-status{margin:5px 0 13px;color:#a9bba7;font-size:13px}
.portrait-merc-stat-grid{margin:0 0 15px;display:grid;gap:2px}
.portrait-merc-stat-grid>div{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #84734d55;font-size:13px}
.portrait-merc-stat-grid dt{color:#adbaa8}.portrait-merc-stat-grid dd{margin:0;color:#f2d69a;font-weight:700;text-align:right}
.portrait-merc-note{margin:8px 0;font-size:12px;line-height:1.5;color:#c8d3be}
.portrait-merc-note strong{color:#e8ca8d}
@media(max-width:700px){.mercenary-viewer .portrait-viewer-content{flex-direction:column}.mercenary-viewer .portrait-full-art{max-height:36dvh}.portrait-merc-details{flex:auto;width:100%;overflow:visible}}

/* User title branding; full-size key art uses its original composition. */
.game-logo{width:240px;height:60px;object-fit:fill;display:block}.rail-brand .game-logo{width:178px;height:52px;object-fit:contain}.wordmark small{margin-top:-7px}.pc-mode .wordmark{min-width:240px}.pc-mode .modal .onboard-art.title-key-art,.onboard-art.title-key-art{height:auto;aspect-ratio:1.6;object-fit:contain;border:1px solid #b8803f66;background:#150b0a}.pc-mode .modal-backdrop[data-kind=welcome] .modal{width:650px;max-width:calc(100% - 40px)}

#gameTitleSplash{position:fixed;inset:0;z-index:10000;background:#090606;overflow:hidden}

.enhance-box,[data-kind="enhance-result"] .modal{position:relative}

/* Approved proposal 2: Knights Order pictograms. */
.game-pictogram{color:#d9be7a}
.active>.game-pictogram,[aria-current="page"]>.game-pictogram{color:var(--gold-bright)}
.pc-mode .resource .game-pictogram{color:#d9be7a;filter:none}
.primary .game-pictogram{color:inherit}
.mini-unit:has([data-portrait]),.roster-card:has([data-portrait]),.hero-summary:has([data-portrait]),.pc-party-card:has([data-portrait]),.combat-unit:has([data-portrait]){cursor:zoom-in}.roster-actions, .roster-card details{cursor:auto}
.portrait-art-frame{position:relative;width:fit-content;margin:auto}.portrait-apply{position:absolute;top:10px;right:10px;min-width:76px;min-height:38px;padding:7px 18px;border:2px solid #e6cb8a;border-radius:4px;background:linear-gradient(#d4ba79,#a98a4a);color:#171d18;font-weight:700;box-shadow:0 3px 12px #0009}.portrait-apply[hidden]{display:none}


/* Default transient feedback is centered; enhancement feedback is anchored above its costs below. */
#toast,#healingToast,#enhancementToast,#dialogToast{position:fixed;left:50%;top:50%;bottom:auto;display:block;width:max-content;min-width:190px;max-width:calc(100% - 48px);box-sizing:border-box;margin:0;padding:12px 18px;border:2px solid #8e9157;border-radius:5px;background:#303a24fa;box-shadow:0 4px 30px #0009;color:#e3dec3;text-align:center;overflow-wrap:anywhere;font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)));z-index:90;pointer-events:none;opacity:0;transform:translate(-50%,-50%);transition:opacity .15s}
.pc-mode #toast,.pc-mode #healingToast,.pc-mode #enhancementToast,.pc-mode #dialogToast{position:absolute;top:50%;bottom:auto;max-width:min(650px,calc(100% - 48px))}
#toast.visible,#healingToast.visible,#enhancementToast.visible,#dialogToast.visible{opacity:1;transform:translate(-50%,-50%)}
.enhance-cost{position:relative}
.enhance-cost #enhancementToast,.enhance-cost #enhancementToast.visible{position:absolute;left:50%;top:auto;bottom:calc(100% + 8px);min-width:min(190px,100%);max-width:100%;transform:translateX(-50%)}
.enhancement-toast-title,.enhancement-toast-shortage{display:block;font-size:inherit;line-height:1.45}
.enhancement-toast-shortage{margin-top:6px;color:#dfb399}

/* Town chat: a single-line entry opens a wide lower-screen conversation. */
.pc-mode .pc-home-footer{gap:22px}
.pc-mode .pc-home-footer>span,.pc-mode .pc-home-footer>.pc-explore{flex-shrink:0}
.pc-mode .pc-chat-preview{display:flex;align-items:center;gap:10px;flex:1;min-width:0;max-width:420px;height:40px;padding:8px 12px;border:1px solid #aa905680;background:#101d20;color:#e4d3a4;text-align:left}
.pc-chat-preview svg{flex-shrink:0}.pc-chat-latest{display:block;flex:1;min-width:0;overflow:hidden;white-space:nowrap;font-size:13px;line-height:22px}
.pc-mode .chat-backdrop{display:block;padding:0;background:var(--modal-backdrop-color);backdrop-filter:none}
.pc-mode .chat-backdrop .modal{position:absolute;left:8px;right:36px;top:46px;bottom:42px;width:auto;max-width:none;height:auto;max-height:none;padding:18px 24px;display:flex;flex-direction:column;overflow:hidden;border:2px solid var(--gold);background:#18282bf5;box-shadow:0 10px 40px #000b}
.chat-backdrop .modal-top{margin-bottom:10px;flex-shrink:0}.pc-mode .chat-backdrop .modal-top h2{font-size:24px}.chat-backdrop .modal-top small{display:none}
.chat-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:10px}.chat-toolbar label{display:flex;align-items:center;gap:12px}.chat-toolbar select{width:120px;padding:6px 10px}.chat-toolbar .note{margin:0}
.chat-backdrop .article-chat{flex:1;min-height:0;max-height:none;overflow:auto;padding:12px 16px;border:1px solid #aa905660;background:#0c181ccc;scrollbar-color:#ad945d #152326;overscroll-behavior:contain}
.chat-message{margin:0 0 12px}.chat-message:last-child{margin-bottom:0}.chat-message-meta{display:flex;align-items:center;gap:12px;color:#d8bc78;font-size:13px}.chat-message-meta time{font:11px sans-serif;color:#8e9f98}.chat-message p{margin:3px 0 0;color:#e3e4d2;font-size:14px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.chat-message.mine b{color:#90bfc4}.chat-empty{color:#9baa9b;text-align:center;padding:24px 0}
.chat-compose{display:flex;gap:12px;padding-top:12px;flex-shrink:0}.chat-compose input{flex:1;min-width:0;height:42px;margin:0}.chat-compose button{width:100px;min-height:42px}

.pc-mode #bottomNav .guide-explore .guide-ring{width:152px;height:152px;left:50%;top:50%}

/* Approved seven-slot character loadout. */
.pc-mode .pc-equip-stage{height:300px}
.pc-mode .pc-equip-portrait{width:132px;height:194px;margin-top:32px}
.pc-mode .pc-equip-stage .gear-slots{display:block;inset:0;margin:0}
.pc-mode .pc-equip-stage .slot-box{position:absolute;width:58px;height:72px;padding:5px 3px}
.pc-mode .pc-equip-stage .slot-box img{width:42px;height:44px}
.pc-mode .pc-equip-stage .slot-box[data-slot="helmet"]{left:50%;top:0;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .slot-box[data-slot="weapon"]{left:0;top:52px}
.pc-mode .pc-equip-stage .slot-box[data-slot="armor"]{right:0;top:52px}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"]{left:0;top:138px}
.pc-mode .pc-equip-stage .slot-box[data-slot="charm"]{right:0;top:138px}
.pc-mode .pc-equip-stage .slot-box[data-slot="gloves"]{left:62px;bottom:0}
.pc-mode .pc-equip-stage .slot-box[data-slot="boots"]{right:62px;bottom:0}
.pc-mode .atlas-card{grid-template-columns:38px minmax(0,1fr);min-height:58px;padding:6px 8px 6px 5px}
.pc-mode .atlas-medallion{width:38px;height:38px}

/* Approved loadout revision: no character portrait, ornate boxes and weighted slot sizes. */
.pc-mode .pc-equip-stage{height:280px;margin:0 2px 5px;border:1px solid #78603a;background:linear-gradient(145deg,#101817,#192322 55%,#0d1312);box-shadow:inset 0 0 0 3px #080d0c,inset 0 0 0 4px #4d3d27,0 8px 20px #0007;overflow:hidden}
/* Decorative paperdoll stays behind the interactive equipment slots. */
.pc-mode .pc-equip-stage:before{content:'';position:absolute;inset:4px 0;z-index:0;background:url('../assets/Art/UI/Icons/equipment-human-shadow-v1.png') center/76% 100% no-repeat;pointer-events:none}
.pc-mode .pc-equip-portrait{display:none}
.pc-mode .pc-equip-stage .slot-box{z-index:2;border:2px ridge #b59455;border-radius:1px;background:linear-gradient(145deg,#292721,#0c1211 60%,#24231d);box-shadow:inset 0 0 0 2px #090d0c,inset 0 0 0 3px #6a522e,0 5px 12px #0009}
.pc-mode .pc-equip-stage .slot-box:before,.pc-mode .pc-equip-stage .slot-box:after{content:'';position:absolute;width:7px;height:7px;border-color:#d0af6d;pointer-events:none}
.pc-mode .pc-equip-stage .slot-box:before{left:3px;top:3px;border-left:1px solid;border-top:1px solid}
.pc-mode .pc-equip-stage .slot-box:after{right:3px;bottom:3px;border-right:1px solid;border-bottom:1px solid}
.pc-mode .pc-equip-stage .slot-box[data-slot="helmet"],.pc-mode .pc-equip-stage .slot-box[data-slot="weapon"],.pc-mode .pc-equip-stage .slot-box[data-slot="armor"]{width:72px;height:84px}
.pc-mode .pc-equip-stage .slot-box[data-slot="helmet"]{left:50%;top:16px;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .slot-box[data-slot="weapon"]{left:10px;top:60px}
.pc-mode .pc-equip-stage .slot-box[data-slot="armor"]{left:50%;right:auto;top:108px;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .slot-box[data-slot="gloves"]{right:10px;left:auto;top:60px;bottom:auto;width:60px;height:72px}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"],.pc-mode .pc-equip-stage .slot-box[data-slot="charm"]{width:50px;height:58px;top:157px}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"]{left:16px}
.pc-mode .pc-equip-stage .slot-box[data-slot="charm"]{right:16px}
.pc-mode .pc-equip-stage .slot-box[data-slot="boots"]{left:50%;right:auto;bottom:8px;transform:translateX(-50%);width:60px;height:72px}
.pc-mode .pc-equip-stage .slot-box[data-slot="helmet"] img,.pc-mode .pc-equip-stage .slot-box[data-slot="weapon"] img,.pc-mode .pc-equip-stage .slot-box[data-slot="armor"] img{width:48px;height:50px}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"] img,.pc-mode .pc-equip-stage .slot-box[data-slot="charm"] img{width:28px;height:29px}
.pc-mode .pc-equip-stage .slot-placeholder{opacity:.48;filter:grayscale(.35) sepia(.2);object-fit:contain}
.pc-mode .pc-equip-stage .slot-rune-mark{position:absolute;left:6px;right:auto;top:5px;z-index:6;display:grid;place-items:center;width:17px;height:17px;color:var(--slot-rune-color);font:900 18px/1 Georgia,'Times New Roman',serif;text-shadow:0 0 3px #050807,0 0 7px var(--slot-rune-color);filter:drop-shadow(0 1px 1px #000);pointer-events:none}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"] .slot-rune-mark,.pc-mode .pc-equip-stage .slot-box[data-slot="charm"] .slot-rune-mark{display:none}

/* Approved ornate box artwork from the equipment layout proposal. */
.pc-mode{--ornate-box-frame:url('../assets/Art/UI/Frames/ornate-box-frame-v1.webp')}
.pc-mode .item-card,
.pc-mode .mini-unit,
.pc-mode .roster-card{
 border-style:solid;
 border-color:transparent;
 border-image-source:var(--ornate-box-frame);
 border-image-slice:30 fill;
 border-image-repeat:stretch;
 border-radius:0;
 background-color:#111615;
 box-shadow:0 7px 16px #0008;
}
.pc-mode .pc-equipment>.pc-inventory{padding:10px 12px;overflow:auto}
.pc-mode .item-card,
.pc-mode .mini-unit,
.pc-mode .roster-card{border-width:7px;border-image-width:7px}
.pc-mode #main[data-screen="bag"]>.subtabs button,
.pc-mode #main[data-screen="dungeon"]>.subtabs button,
.pc-mode #main[data-screen="hero"]>.subtabs button,
.pc-mode #main[data-screen="market"]>.subtabs button,
.pc-mode #main[data-screen="shop"] .shop-page>.subtabs button{
 border:6px solid transparent;
 border-image:var(--ornate-box-frame) 30 fill / 6px / 0 stretch;
 border-radius:0;
 background-color:#111615;
}
.pc-mode #main[data-screen="bag"]>.subtabs button.active,
.pc-mode #main[data-screen="dungeon"]>.subtabs button.active,
.pc-mode #main[data-screen="hero"]>.subtabs button.active,
.pc-mode #main[data-screen="market"]>.subtabs button.active,
.pc-mode #main[data-screen="shop"] .shop-page>.subtabs button.active{
 color:#f2d996;
 box-shadow:inset 0 0 14px #d8bc783d;
}
.pc-mode .pc-equip-stage .slot-box{
 border:6px solid transparent;
 border-image:var(--ornate-box-frame) 30 fill / 6px / 0 stretch;
 border-radius:0;
 padding:2px;
 background-color:#111615;
 box-shadow:0 5px 12px #0009;
}
.pc-mode .pc-equip-stage .slot-box:before,
.pc-mode .pc-equip-stage .slot-box:after{content:none}
.pc-mode .pc-equip-stage .slot-box[data-slot="helmet"] img,
.pc-mode .pc-equip-stage .slot-box[data-slot="weapon"] img,
.pc-mode .pc-equip-stage .slot-box[data-slot="armor"] img{width:48px;height:50px}
.pc-mode .pc-equip-stage .slot-box[data-slot="ring"] img,
.pc-mode .pc-equip-stage .slot-box[data-slot="charm"] img{width:28px;height:29px}
.pc-mode .item-card[class*=rarity-],
.pc-mode .slot-box[class*=rarity-]{
 box-shadow:inset 0 0 12px color-mix(in srgb,var(--rarity) 20%,transparent),0 5px 12px #0009;
}
.pc-mode .roster-card.active{box-shadow:inset 0 0 14px #d8bc7845,0 0 14px #d8bc7838,0 7px 16px #0008}

/* Local commerce additions preserve the existing game chrome. */
.commerce-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.commerce-product{display:flex;flex-direction:column;gap:12px;min-width:0}.commerce-product button{margin-top:auto}.vip-product{max-width:600px}.ore-icon{color:#ce9cfa;text-shadow:0 0 8px #7546a9;font-size:32px;line-height:1}.equipment-tabs{overflow-x:auto;flex-shrink:0}.equipment-tabs button{white-space:nowrap}.resources .resource{min-width:0}.shop-page .subtabs{margin-bottom:20px}@media(max-width:760px){.commerce-products{grid-template-columns:repeat(2,minmax(0,1fr))}.resources{flex-wrap:wrap}.ore-icon{font-size:25px}}

/* Sil chatbot entry and offline conversation preview. */
.pc-mode .pc-home-right{gap:16px}
.pc-mode .sil-face{overflow:hidden;position:relative;background:#352c47}
.sil-face img{position:absolute;width:180%;max-width:none;height:auto;left:-40%;top:-12%;pointer-events:none}
.sil-backdrop.modal-backdrop{padding:0;background:var(--modal-backdrop-color);backdrop-filter:none}
.sil-backdrop .modal.sil-dialog{position:relative;width:100%!important;max-width:none!important;height:100%;max-height:none!important;padding:0!important;border:0!important;border-radius:0;overflow:hidden;background:#08150f;isolation:isolate}
.sil-dialog>.modal-top{display:none!important}.sil-scene{position:absolute;inset:0;overflow:hidden}
.sil-scene-bg{position:absolute;inset:-5px;background-size:cover;background-position:center;filter:blur(2px) brightness(.7)}
.sil-character{position:absolute;left:9%;top:2%;height:100%;width:auto;max-width:48%;object-fit:contain;object-position:top;pointer-events:none}
.sil-level{position:absolute;right:5%;bottom:37%;width:145px;color:#d5bb77;font-size:16px;z-index:2}.sil-gauge{height:8px;border:1px solid #a88d4e;background:#101d18;margin-top:6px;border-radius:2px}
.sil-panel{position:absolute;left:5%;right:5%;bottom:3%;height:32%;min-height:185px;z-index:3;display:flex;flex-direction:column;padding:14px 20px;box-sizing:border-box;background:rgba(20,39,37,.97);border:1px solid #c3a45e;border-radius:3px;color:#eee9d5;transition:height .2s}
.sil-panel.expanded{height:92%}.sil-panel header{display:flex;align-items:center;gap:10px;border-bottom:1px solid #83734c;padding-bottom:8px}.sil-panel h2{font-size:22px;margin:0;margin-right:auto;color:#e5d4a7}.sil-panel .sil-control{width:32px;height:32px;min-height:0;padding:0;border:1px solid #b39756;border-radius:50%;background:transparent;color:#ddc17c;cursor:pointer;font-size:20px}
.sil-messages{flex:1;overflow-y:auto;padding:10px 0;min-height:0}.sil-messages p{margin:4px 0;font-size:15px}.sil-messages strong{color:#e1d1a3}.sil-affection{font-size:12px;color:#929e72}.sil-compose{display:flex;gap:10px}.sil-compose input{flex:1;min-width:0;padding:10px;border:1px solid #9d8b56;background:#101f1d;color:#eee}.sil-compose button{width:95px;padding:8px;background:#bba168;color:#17231e;border:1px solid #d3b97b}.sil-compose button:disabled{opacity:.55}.sil-offline{font-size:11px;color:#a4ad91;margin:5px 0 0}
@media(max-width:600px){.sil-character{left:0;max-width:78%;height:95%}.sil-panel{left:3%;right:3%;padding:10px 12px;height:35%}.sil-level{right:4%;bottom:40%;width:100px}.sil-panel h2{font-size:18px}.sil-messages p{font-size:13px}}

/* Connected Sil dialogue controls. */
.sil-memory-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:5px;font-size:11px;color:#abb694}.sil-memory-tools label{display:flex;align-items:center;gap:4px}.sil-memory-tools button{padding:2px 6px;font-size:11px;background:transparent;border:1px solid #6c6947;color:#c0bd9a}.sil-memory-note{width:100%;margin:0;white-space:pre-wrap}.sil-message{margin-bottom:10px}.sil-message.user{opacity:.8}.sil-messages p{white-space:pre-wrap;overflow-wrap:anywhere}.sil-panel{min-height:230px}

/* Keep chat readable inside the scaled game stage; memory controls open on demand. */
.sil-memory-tools[hidden]{display:none}.sil-memory-tools{position:absolute;right:0;bottom:calc(100% + 8px);padding:10px;background:#142725;border:1px solid #9d8b56;max-width:90%;box-shadow:0 3px 15px #0008}.sil-memory-toggle{font-size:12px;padding:4px 8px;background:transparent;color:#cfbc89;border:1px solid #82734d}.sil-panel{height:34%;min-height:250px}.sil-panel header,.sil-compose,.sil-offline{flex-shrink:0}.sil-messages{min-height:65px}.sil-character{height:92%}.sil-panel.expanded .sil-memory-tools{bottom:auto;top:55px;z-index:5}

.sil-level{bottom:calc(3% + max(34%,250px) + 12px)}

.sil-reveal-skip{margin:4px 0 4px 10px;padding:2px 7px;font-size:11px;border:1px solid #7b7953;background:transparent;color:#c7b783}.sil-typing p{cursor:pointer}.sil-typing p:after{content:"▌";color:#d1bd87}

/* Approved equipment rune badges: reserve the upper-left corner for the rune. */
.pc-mode .pc-equip-stage .slot-rune-mark{position:absolute;right:auto;z-index:6;display:grid;place-items:center;pointer-events:none;left:3px;top:3px;width:12px;height:12px;text-shadow:none;filter:none}
.pc-mode .pc-equip-stage .slot-rune-mark img{width:12px!important;height:12px!important;max-width:none;object-fit:contain;margin:0;border:0}
.pc-mode .pc-equip-stage .slot-rune-mark[data-rune-grade="0"] img{filter:grayscale(1) brightness(1.15)}
.pc-mode .pc-equip-stage .slot-rune-mark[data-rune-grade="1"] img{filter:hue-rotate(-150deg)}
.pc-mode .pc-equip-stage .slot-rune-mark[data-rune-grade="2"] img{filter:hue-rotate(-55deg)}
.pc-mode .pc-equip-stage .slot-rune-mark[data-rune-grade="4"] img{filter:hue-rotate(140deg)}
.pc-mode .pc-equip-stage .slot-rune-mark[data-rune-grade="5"] img{filter:hue-rotate(70deg)}
.pc-mode .pc-equip-stage .slot-box:is([data-slot="weapon"],[data-slot="helmet"],[data-slot="armor"],[data-slot="gloves"],[data-slot="boots"])>img{position:absolute;left:50%;top:17px;transform:translateX(-50%);width:40px;height:40px;object-fit:contain;margin:0}
.pc-mode .pc-equip-stage .slot-box:is([data-slot="gloves"],[data-slot="boots"])>img{width:32px;height:28px}
.pc-mode .pc-equip-stage .slot-box:is([data-slot="weapon"],[data-slot="helmet"],[data-slot="armor"],[data-slot="gloves"],[data-slot="boots"])>small{position:absolute;left:0;right:0;bottom:1px;margin:0;font-size:12px;line-height:14px}
/* End approved equipment rune badges. */

/* Show the actual equipment grade roll beside the dungeon reward card. */
.result-loot:has(.equipment-drop-rates){flex-wrap:wrap;align-items:center}
.equipment-drop-rates{flex:0 0 170px;max-width:100%;padding:13px 14px;background:#1c292b;border:1px solid #9b875777;border-radius:4px;color:#d8d2b9;font-variant-numeric:tabular-nums}
.equipment-drop-rates>strong{display:block;color:#e6d2a0;font-size:13px;line-height:1.3}
.equipment-drop-rates>small{display:block;color:#9fac9b;font-size:11px;line-height:1.45;margin:4px 0 8px}
.equipment-drop-rates>em{display:block;margin-top:7px;color:#9fac9b;font-size:11px;font-style:normal;line-height:1.35}
.equipment-drop-rates>.temporary-gift-note{color:#f0cc72}
.equipment-drop-rate{display:flex;justify-content:space-between;gap:12px;padding:2px 0;font-size:12px;line-height:1.35}
.equipment-drop-rate b{color:#e8ddbd;font-weight:650}
.equipment-drop-rate.rarity-4 span,.equipment-drop-rate.rarity-4 b{color:#f0cc72}
.equipment-drop-rate.rarity-5 span,.equipment-drop-rate.rarity-5 b{color:#ebaa74}
.pc-mode #main[data-screen=result]>.result-loot:has(.equipment-drop-rates){gap:20px;justify-content:center}

/* Approved header branding: 20% taller English logo without the subtitle. */
.topbar .game-logo{transform:scaleY(1.2);transform-origin:center center}

/* Q2-02-11: locked controls remain clickable so their requirements can be explained. */
button[data-lock-reason]{opacity:.56;cursor:not-allowed}
button[data-lock-reason]:hover{filter:none!important}
button[data-lock-reason]:focus-visible{opacity:.85}

/* Q2-02-12: the first boss quest guide can be dismissed or played from. */
.boss-quest-guide>p:first-child{color:#cbd8c8;line-height:1.7;margin:5px 0 14px}
.boss-quest-guide-rule{border:1px solid #977f4d;background:#29392c;padding:12px 14px}
.boss-quest-guide-rule strong{display:block;color:#f2d79d}
.boss-quest-guide-rule small{display:block;color:#b9cbb5;margin-top:3px}
.boss-quest-guide-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:17px 0 7px}
.boss-quest-guide-actions button{min-height:49px}
.boss-quest-auto-note{display:flex;flex-direction:column;gap:4px;padding:10px 13px;margin-bottom:12px;border:1px solid #9b814c;background:#25352c;color:#c7d5c3}
.boss-quest-auto-note strong{color:#f0d397}
@media(max-width:760px){.boss-quest-guide-actions{grid-template-columns:1fr}.boss-quest-guide-actions button{min-height:42px}}

/* Q2-02-10: keep result, rewards, loot and next action together. */
.pc-mode #main[data-screen=result]:has(>.result-priority){display:flex;flex-direction:column;gap:8px}
.pc-mode #main[data-screen=result]:has(>.result-priority)>.result-priority,
.pc-mode #main[data-screen=result]:has(>.result-priority)>.result-priority-actions,
.pc-mode #main[data-screen=result]:has(>.result-priority)>.result-priority-disclosures{width:100%}
.result-priority{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(260px,.85fr);gap:12px;margin-top:12px}
.result-priority>.content-detail{margin:0;min-width:0;padding:16px;background:#192725;border-color:#87724a;border-radius:3px}
.result-priority-summary h2{margin:3px 0;font-size:max(var(--ui-min-font),calc(28px * var(--ui-text-scale)))}
.result-priority-summary>p{margin:0 0 12px}
.pc-mode .result-priority-summary .result-stats{margin:0;padding:6px 0}
.result-priority-summary .result-reward{background:#142321;border:1px solid #485949;padding:9px 2px}
.result-priority-summary .result-reward>.result-reward-icon,.result-priority-summary .result-reward>svg{height:37px;width:42px;margin-bottom:4px}
.result-priority-summary .result-stats b{font-size:max(var(--ui-min-font),calc(22px * var(--ui-text-scale)))}
.result-scroll-next{display:none}
.result-scroll-details{display:block;width:100%;padding:2px 8px;border:0;background:none;color:#d2b777;text-align:center;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));cursor:pointer}
.result-priority-loot h3{margin:0;color:#ead49c}
.result-priority-loot .result-loot{justify-content:flex-start;align-items:center;flex-wrap:wrap;margin:9px 0;gap:8px}
.result-priority-loot .result-loot .item-card{width:128px;zoom:1.118}
.result-priority-loot .result-loot-hint{flex:1 1 135px;align-self:center;min-width:135px;margin:0;font-size:max(var(--ui-min-font),calc(12px * var(--ui-text-scale)))}
.result-priority-loot>button{min-height:34px}
.result-priority-actions{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr) minmax(0,.9fr);gap:8px;margin:10px 0}
.result-priority-actions>button,.result-priority-actions>.healing-auto-action{min-width:0;margin:0}
.result-priority-actions>button{min-height:46px}
.result-priority-disclosures{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:10px 0}
.result-disclosure{min-width:0;max-width:none;flex:none;padding:0;background:#1b2a27;border:1px solid #8c754c;border-radius:3px}
.result-disclosure>summary{list-style:none;cursor:pointer;padding:9px 13px;color:#ead29c;font-weight:650}
.result-disclosure>summary::-webkit-details-marker{display:none}
.result-disclosure>summary:after{content:'▷';float:right;color:#cdb16f}
.result-disclosure[open]>summary:after{content:'▽'}
.result-disclosure-body{padding:10px 13px 13px;border-top:1px solid #58664e}
.result-disclosure-body>small,.result-disclosure-body>em{display:block;color:#adbaa9;font-size:11px;font-style:normal;margin:4px 0}
.result-disclosure .equipment-drop-rate-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px 9px;margin-top:8px}
.result-disclosure .equipment-drop-rate{border:1px solid #45574c;padding:5px 7px}
.result-disclosure .battle-report{margin:0 0 9px}
.result-disclosure .battle-report table{margin:7px 0}
.result-priority-footnote{margin-top:9px}
@media(max-width:760px){
  .result-priority{grid-template-columns:1fr;gap:7px;margin-top:8px}
  .result-priority>.content-detail{padding:10px}
  .result-priority-summary h2{font-size:max(var(--ui-min-font),calc(23px * var(--ui-text-scale)))}
  .result-priority-summary>p{margin-bottom:7px}
  .result-priority-summary .result-reward{padding:5px 1px}
  .result-priority-summary .result-reward>.result-reward-icon,.result-priority-summary .result-reward>svg{height:28px;width:30px}
  .result-priority-summary .result-stats b{font-size:max(var(--ui-min-font),calc(17px * var(--ui-text-scale)))}
  .result-scroll-next{display:block;width:100%;padding:5px 2px 0;margin-top:5px;border:0;background:none;color:#d5bc7b;text-align:center;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
  .result-priority-loot .result-loot .item-card{width:102px}
  .result-priority-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px}
  .result-priority-actions>button.primary{grid-column:1/-1;grid-row:1}
  .result-priority-actions>button{min-height:39px}
  .result-priority-disclosures{gap:5px}
  .result-disclosure>summary{padding:8px 6px;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
  .result-disclosure .equipment-drop-rate-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Both name entry points open the same rename dialog. */
.pc-mode .xp-name-actions{display:flex;align-items:center;gap:7px;min-width:0}
.pc-mode .xp-name-actions>b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-mode .xp-rename-button{flex:none;min-height:0;padding:3px 8px;border:1px solid #a68b56;border-radius:2px;background:#202b2b;color:#ebd19a;font-size:max(var(--ui-min-font),calc(9px * var(--ui-text-scale)));line-height:1.2;white-space:nowrap;cursor:pointer}
.pc-mode .xp-rename-button:hover{background:#33403d;border-color:#dec588}
.pc-mode .pc-party-portrait-action,.pc-mode .pc-hero-name-action{display:block;width:100%;padding:0;border:0;background:transparent;color:inherit;cursor:pointer}
.pc-mode .pc-hero-name-action{display:flex;flex-direction:column;align-items:center}
.pc-mode .pc-hero-name-action:hover strong{text-decoration:underline;text-decoration-color:#c5aa70;text-underline-offset:3px}
.pc-mode .pc-party-portrait-action:focus-visible,.pc-mode .pc-hero-name-action:focus-visible{outline:2px solid #e3c782;outline-offset:3px}

/* Q2-01-13: show the NPC sale quote before any inventory is sold. */
.npc-sell-hint{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.npc-sell-hint>span{flex:0 1 auto}
.npc-sell-mode-button{flex:none;min-height:35px;padding:7px 15px;border:1px solid #b99a61;background:#263738;color:#ebd29b;font-size:12px;font-weight:700;white-space:nowrap}
.npc-sell-mode-button[aria-pressed="true"]{background:#403621;border-color:#d2b873;color:#f4dfab}
.npc-bulk-sell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:11px 16px;margin:12px 0 14px;padding:14px 17px;border:1px solid #a98a50;background:#1d2c2b;color:#e2d7b8}
.npc-bulk-heading{display:flex;flex-direction:column;gap:3px}
.npc-bulk-heading strong{font-size:16px;color:#f2d18a}
.npc-bulk-heading small{font-size:12px;color:#aeb6a4}
.npc-bulk-tools{display:flex;gap:8px;align-items:center}
.npc-sell-score-label{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-size:12px;color:#e9d7af}
.npc-sell-score-label input{width:76px;min-height:34px;padding:5px 7px;border:1px solid #ad9562;background:#101d1c;color:#f4deae;text-align:right;font-variant-numeric:tabular-nums}
.npc-bulk-tools button{white-space:nowrap;padding:7px 12px;font-size:12px}
.npc-bulk-summary{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:10px 24px;padding-top:10px;border-top:1px solid #53605a;font-size:12px}
.npc-bulk-summary b{color:#eee2c2;font-size:14px;font-variant-numeric:tabular-nums}
.npc-bulk-summary>strong{color:#f6d68d;font-size:16px;font-variant-numeric:tabular-nums}
.npc-bulk-summary>button{margin-left:auto;min-height:38px;white-space:nowrap}
.npc-sell-choice{position:relative;min-width:0}
.npc-sell-choice>.item-card{width:100%;height:100%;padding-bottom:34px}
.npc-sell-choice.selected>.item-card{box-shadow:inset 0 0 0 2px #e1bf6f,0 5px 12px #0009}
.npc-sell-check{position:absolute;right:8px;bottom:7px;z-index:1;display:grid;place-items:center;width:26px;height:26px;min-height:0;padding:0;border:2px solid #ad9a70;background:#152021;color:#122323;font-size:15px;font-weight:700;cursor:pointer}
.npc-sell-check.chosen{background:#e0c47f;border-color:#f4d58c}
@media(max-width:760px){.npc-sell-hint>span{flex:1 1 100%}.npc-bulk-sell{grid-template-columns:1fr}.npc-bulk-tools{flex-wrap:wrap}.npc-bulk-summary{gap:8px 14px}.npc-bulk-summary>button{width:100%;margin-left:0}}

/* Exploration profile: increase its text by 2px; emphasize the level. */
.pc-mode .xp-info .row{font-size:calc(max(var(--ui-min-font),calc(11px * var(--ui-text-scale))) + 2px)}
.pc-mode .xp-info .row small{font-size:calc(max(var(--ui-min-font),calc(10px * var(--ui-text-scale))) + 2px);font-weight:700}
.pc-mode .xp-info .below{font-size:calc(max(var(--ui-min-font),calc(9px * var(--ui-text-scale))) + 2px)}
.pc-mode .xp-rename-button{font-size:calc(max(var(--ui-min-font),calc(9px * var(--ui-text-scale))) + 2px)}

/* Shared framed dialog: approved gold double line and corner marks. */
.pc-mode .modal-backdrop.common-modal-backdrop{background:var(--modal-backdrop-color);backdrop-filter:none}
.pc-mode .guide-ring.guide-ring-speed{animation:guide-speed-pulse var(--guide-ring-duration) ease-in-out 2 forwards}
@keyframes guide-speed-pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(var(--guide-ring-min-scale))}25%,60%{opacity:1}100%{opacity:0;transform:translate(-50%,-50%) scale(var(--guide-ring-max-scale))}}
.pc-mode .modal.common-modal-frame:not(.sil-dialog){position:relative;border:1px solid #d3b371;border-radius:2px;box-shadow:inset 0 0 0 4px #0d1718,inset 0 0 0 5px #735a34,0 24px 70px #000b,0 0 24px #cbaa6130}
.pc-mode .modal.common-modal-frame:not(.sil-dialog)::before,.pc-mode .modal.common-modal-frame:not(.sil-dialog)::after{content:"";position:absolute;width:24px;height:24px;z-index:2;pointer-events:none}
.pc-mode .modal.common-modal-frame:not(.sil-dialog)::before{left:8px;top:8px;border-top:2px solid #e6cc88;border-left:2px solid #e6cc88}
.pc-mode .modal.common-modal-frame:not(.sil-dialog)::after{right:8px;bottom:8px;border-right:2px solid #e6cc88;border-bottom:2px solid #e6cc88}

/* The sale confirmation uses the shared frame with a reusable quote body. */
.pc-mode .modal-backdrop:is([data-kind="npc-sell"],[data-kind="npc-bulk-sell"]) .modal{width:730px;max-width:calc(100% - 32px);max-height:calc(100% - 36px);padding:0;overflow:auto;background:linear-gradient(150deg,#223334,#142224 72%)}
.pc-mode .modal-top.common-confirm-top{display:flex;align-items:center;gap:15px;margin:0;padding:25px 32px 21px;border-bottom:1px solid #927e5159}
.pc-mode .common-confirm-top>div{flex:1;min-width:0}
.pc-mode .common-confirm-top small{display:block;margin:0 0 3px;color:#a6b69f;font:12px Arial,sans-serif;letter-spacing:2px}
.pc-mode .common-confirm-top h2{margin:0;color:#f1dcaa;font-size:29px;line-height:1.2}
.pc-mode .common-confirm-crest{flex:none;display:grid;place-items:center;width:50px;height:50px;border:1px solid #d8bd79;transform:rotate(45deg);background:#192b2b;box-shadow:inset 0 0 0 4px #102022,0 0 10px #d0a55844;color:#f3d894;font:30px Georgia,serif}
.pc-mode .common-confirm-crest i{font-style:normal;transform:rotate(-45deg)}
.pc-mode .common-confirm-top .icon-btn{display:grid;place-items:center;flex:none;width:40px;height:40px;padding:0;border:1px solid #ae915a;border-radius:50%;background:#152224;color:#e7c87e}
.pc-mode .npc-sale-content{padding:23px 32px 27px}
.pc-mode .npc-sale-item{display:flex;align-items:center;gap:20px;padding:14px 17px;border:1px solid #6c765e8c;background:linear-gradient(95deg,#172729,#21302d)}
.pc-mode .npc-sale-item-art{position:relative;display:grid;place-items:center;flex:none;width:88px;height:88px;border:1px solid #b8985c;background:radial-gradient(circle,#74654747,#0c1719 70%)}
.pc-mode .npc-sale-item-art img{width:76px;height:76px;object-fit:contain}
.pc-mode .npc-sale-item-art b{position:absolute;right:3px;bottom:3px;padding:0 5px;background:#d8bd79;color:#152224;font-size:12px}
.pc-mode .npc-sale-item small{display:block;color:#88b5d5;font-size:12px}
.pc-mode .npc-sale-item h3{margin:5px 0;color:#f4e6c3;font-size:21px}
.pc-mode .npc-sale-item p{margin:0;color:#a9b8a7;font-size:12px;line-height:1.35}
.pc-mode .npc-sale-quote{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:16px}
.pc-mode .npc-sale-quote>div{padding:12px 14px;background:#101d20;border:1px solid #506256}
.pc-mode .npc-sale-quote span{display:block;color:#a7b6a7;font-size:12px}
.pc-mode .npc-sale-quote strong{display:block;margin-top:2px;color:#e5ddc2;font-size:22px;font-variant-numeric:tabular-nums}
.pc-mode .npc-sale-quote .npc-sale-net{border-color:#c1a260;background:#322f20}
.pc-mode .npc-sale-quote .npc-sale-net span,.pc-mode .npc-sale-quote .npc-sale-net strong{color:#f6d98e}
.pc-mode .npc-sale-warning{margin:13px 0 0;color:#b9bdab;font-size:12px;line-height:1.35}
.pc-mode .npc-sale-actions{display:flex;gap:10px;margin-top:26px}
.pc-mode .npc-sale-actions button{min-height:48px;font-size:15px;font-weight:700}
.pc-mode .npc-sale-actions .secondary{width:36%;border:1px solid #8d805d;background:#263536;color:#d5d7c0}
.pc-mode .npc-sale-actions .primary{flex:1;border:1px solid #f1d68f}
@media(max-width:690px){.pc-mode .modal-top.common-confirm-top{padding:20px}.pc-mode .common-confirm-top h2{font-size:23px}.pc-mode .npc-sale-content{padding:18px 20px 23px}.pc-mode .npc-sale-item-art{width:68px;height:68px}.pc-mode .npc-sale-item-art img{width:58px;height:58px}.pc-mode .npc-sale-quote strong{font-size:16px}}

/* Q2-01-14: equipment and rune auction summaries with expandable actual stats. */
.auction-listings{display:grid;gap:10px;margin-top:15px}
.pc-mode .auction-listing-card{display:grid;grid-template-columns:82px minmax(0,1fr) minmax(165px,180px);align-items:center;gap:17px;min-height:144px;margin:0;padding:15px;border:1px solid #807052;background:linear-gradient(110deg,#1e2e2f,#152122);box-shadow:inset 0 0 0 3px #101819,0 5px 12px #0008}
.pc-mode .auction-listing-art{display:grid;place-items:center;align-self:start;width:82px;height:86px;border:1px solid #ac8751;background:radial-gradient(#655b493b,#0c1516 65%)}
.pc-mode .auction-listing-art img{width:69px;height:69px;object-fit:contain}
.pc-mode .auction-listing-content{min-width:0}
.pc-mode .auction-listing-meta{display:block;margin-bottom:6px;color:#d8bc78;font-size:12px}
.pc-mode .auction-listing-card.rarity-3 .auction-listing-meta{color:#d89bed}
.pc-mode .auction-listing-card.rarity-4 .auction-listing-meta{color:#f0cd70}
.pc-mode .auction-listing-card.rarity-5 .auction-listing-meta{color:#efa1a6}
.pc-mode .auction-listing-content h3{margin:0 0 10px;color:#f4e2b5;font-size:19px}
.pc-mode .auction-listing-chips{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.pc-mode .auction-listing-chips>span{padding:5px 8px;border:1px solid #556154;background:#122022;color:#d1d5bd;font-size:12px}
.pc-mode .auction-stats-toggle{flex:none;display:grid;place-items:center;width:30px;height:30px;min-height:30px;padding:0;border:1px solid #bfa16b;background:#1c2d2d;color:#f2d18b;font-size:20px;line-height:1;cursor:pointer}
.pc-mode .auction-stats-toggle:hover,.pc-mode .auction-stats-toggle:focus-visible{background:#304646}
.pc-mode .auction-stats-toggle[aria-expanded="true"]{transform:rotate(90deg)}
.pc-mode .auction-stats-panel{margin:12px 0 4px;padding:12px 14px;border:1px solid #8d7751;background:#101c1d}
.pc-mode .auction-stats-panel[hidden]{display:none}
.pc-mode .auction-stats-panel>strong{display:block;margin-bottom:8px;color:#efdaa9;font-size:13px}
.pc-mode .auction-stats-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
.pc-mode .auction-stats-grid span{min-width:0;padding:6px;border:1px solid #526056;background:#192729;color:#aebbae;font-size:11px}
.pc-mode .auction-stats-grid b{display:block;margin-top:2px;color:#f0dfb7;font-size:14px;font-variant-numeric:tabular-nums}
.pc-mode .auction-stats-panel p{margin:8px 0 0;color:#c0d2c3;font-size:12px;line-height:1.5}
.pc-mode .auction-listing-note{margin:8px 0 0;color:#b7d9c2;font-size:12px}
.pc-mode .auction-listing-owner{margin:8px 0 0;color:#9dad9e;font-size:11px}
.pc-mode .auction-listing-price{min-width:0;padding-left:18px;border-left:1px solid #626c5a;text-align:right}
.pc-mode .auction-listing-price>small{display:block;color:#a7b39f;font-size:11px}
.pc-mode .auction-listing-price>strong{display:block;margin:4px 0 13px;color:#f2d58e;font-size:23px;font-variant-numeric:tabular-nums}
.pc-mode .auction-bid-label{display:block;margin:0 0 6px;color:#a7b39f;font-size:11px;text-align:left}
.pc-mode .auction-bid-label input{display:block;width:100%;min-width:0;margin-top:3px}
.pc-mode .auction-listing-price button{width:100%;min-height:35px;padding:6px;font-size:12px}
@media(max-width:760px){.pc-mode .auction-listing-card{grid-template-columns:68px minmax(0,1fr);gap:10px}.pc-mode .auction-listing-art{width:68px;height:76px}.pc-mode .auction-listing-art img{width:56px;height:56px}.pc-mode .auction-listing-content h3{font-size:16px}.pc-mode .auction-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-mode .auction-listing-price{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:7px 10px;padding:9px 0 0;border-left:0;border-top:1px solid #626c5a;text-align:left}.pc-mode .auction-listing-price>strong{margin:0 auto 0 0;font-size:18px}.pc-mode .auction-bid-label{flex:1 1 100%;margin:0}.pc-mode .auction-listing-price button{width:auto;min-width:110px}}

/* Q2-01-15: distinguish player name from registered or current character. */
.pc-mode .auction-merc-card{margin:10px 0;padding:15px;border:1px solid #807052;background:linear-gradient(110deg,#1e2e2f,#152122)}
.pc-mode .auction-merc-identity{display:flex;align-items:center;gap:15px;min-width:0}
.pc-mode .auction-merc-avatar{flex:none;width:76px;height:91px;border:1px solid #ae905e;background:#101c1e}
.pc-mode .auction-merc-avatar img{width:100%;height:100%;object-fit:cover;object-position:top}
.pc-mode .auction-merc-copy{min-width:0}
.pc-mode .auction-merc-copy h3{display:flex;align-items:center;flex-wrap:wrap;gap:5px;margin:0 0 5px;color:#f2dfb4;font-size:18px}
.pc-mode .auction-merc-copy p{margin:2px 0;color:#bfceb9;font-size:12px}
.pc-mode .auction-merc-copy p b{color:#f0d28d}
.pc-mode .auction-identity-badge,.pc-mode .honor-identity-copy i{display:inline-block;margin-top:6px;padding:3px 7px;border:1px solid #8c7850;color:#eacf98;font-size:11px;font-style:normal;line-height:1.3}
.pc-mode .auction-merc-card>p{margin:7px 0 0;color:#acbba9;font-size:12px}
.pc-mode .auction-merc-card>input{display:block;margin-top:9px}
.pc-mode .auction-merc-card>button{margin-top:7px}
.pc-mode .auction-bid-receipt{margin:10px 0;padding:10px 12px;border:1px solid #8e9a68;background:linear-gradient(90deg,#2a3a2b,#1c302c);line-height:1.4}
.pc-mode .auction-bid-receipt strong{display:block;color:#f2dc9d;font-size:13px}
.pc-mode .auction-bid-receipt small{display:block;margin-top:3px;color:#d0dcc4;font-size:11px}
.pc-mode .auction-bid-receipt.outbid{border-color:#ad8068;background:linear-gradient(90deg,#3a2c28,#242c29)}
.pc-mode .auction-bid-receipt.outbid strong{color:#f0c1aa}

/* Q2-01-22: show recovery in the order players must perform it. */
.pc-mode .recovery-flow{display:grid;gap:10px}
.pc-mode .recovery-summary{margin:0;padding:10px 12px;border-left:3px solid #d99b79;background:#352926;color:#f1c6ae;font-weight:700;line-height:1.45}
.pc-mode .recovery-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.pc-mode .recovery-step{min-width:0;padding:10px 12px;border:1px solid #5b6c5e;background:#192a2b}
.pc-mode .recovery-step.current{border-color:#d5b46b;background:#333122}
.pc-mode .recovery-step.done{border-color:#709b7f;background:#20362d}
.pc-mode .recovery-step strong{display:block;color:#e9d8ad;font-size:max(var(--ui-min-font),calc(13px * var(--ui-text-scale)))}
.pc-mode .recovery-step.current strong{color:#ffdc93}
.pc-mode .recovery-step.done strong{color:#b8dfbd}
.pc-mode .recovery-step small{display:block;margin-top:3px;color:#b4c2af;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
.pc-mode .recovery-roster{border:1px solid #58695c}
.pc-mode .recovery-unit{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:7px 11px;border-bottom:1px solid #485b50}
.pc-mode .recovery-unit:last-child{border-bottom:0}
.pc-mode .recovery-unit strong{display:block;color:#efdeb8}
.pc-mode .recovery-unit small{display:block;color:#b3c1af}
.pc-mode .recovery-unit span{flex:none;color:#d5dec2;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)));text-align:right}
.pc-mode .recovery-unit.dead span{color:#f0aa9b;font-weight:700}
.pc-mode .recovery-flow>button.primary{min-height:47px;font-size:max(var(--ui-min-font),calc(15px * var(--ui-text-scale)))}
.pc-mode .recovery-hint{margin:0;color:#bfd0b7;font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
.pc-mode .recovery-other{padding-top:9px;border-top:1px solid #5b6c5e}
.pc-mode .recovery-other h3{margin:0 0 8px;color:#eed59e}
.pc-mode .recovery-other .settings-grid{margin:0}
.pc-mode .recovery-other .recovery-hint{margin-top:6px}
.pc-mode .recovery-extras{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;align-items:stretch}
.pc-mode .recovery-extras .auto-recovery-panel{margin:0;padding:8px 10px}
.pc-mode .recovery-extras .auto-recovery-panel small{font-size:max(var(--ui-min-font),calc(11px * var(--ui-text-scale)))}
@media(max-width:650px){.pc-mode .recovery-steps,.pc-mode .recovery-extras{grid-template-columns:1fr}.pc-mode .recovery-unit{align-items:flex-start;flex-direction:column;gap:2px}.pc-mode .recovery-unit span{text-align:left}}
.pc-mode .honor-rank-row{gap:10px;min-height:78px}
.pc-mode .honor-identity-avatar{flex:none;width:48px;height:58px;border:1px solid #ae905e;object-fit:cover;object-position:top}
.pc-mode .honor-rank-row .honor-identity-copy{flex:1;min-width:0;margin-left:0;color:#d7d9c4}
.pc-mode .honor-identity-copy strong{display:block;color:#f1deb2;font-size:13px;line-height:1.35}

/* Q2-01-17: actionable quest and auction states. */
.flow-status{display:inline-flex;align-items:center;gap:6px;flex:none;padding:4px 8px;border:1px solid #68766d;background:#1c2b2a;color:#c0cbbb;font-size:12px;font-weight:700;line-height:1.35;white-space:nowrap}
.flow-status:before{content:"";width:7px;height:7px;flex:none;border-radius:50%;background:#91ad99}
.flow-status-active{border-color:#729ba4;background:#193238;color:#bfe2e6}
.flow-status-active:before{background:#68bdcc}
.flow-status-ready{border-color:#d5aa59;background:#3b2e18;color:#ffdda0}
.flow-status-ready:before{background:#ffc34e;box-shadow:0 0 7px #ffd16b}
.flow-status-done{color:#aab9aa}
.quest-card>.row{align-items:center;gap:10px}
.quest-card>.row strong{min-width:0}
.quest-progress-bar{height:7px;margin:11px 0 4px;border:1px solid #536253;background:#101a19}
.quest-progress-bar>span{display:block;height:100%;background:linear-gradient(90deg,#7da1a5,#dfc074)}
.quest-card .quest-progress-detail{display:flex;justify-content:space-between;gap:10px;color:#becbb7;font-size:12px}
.quest-index-card>.row{align-items:center;gap:10px;margin-bottom:9px}
.pc-mode .auction-listing-head,.pc-mode .auction-merc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.pc-mode .auction-listing-head{margin-bottom:6px}
.pc-mode .auction-listing-head .auction-listing-meta{margin:0}
.pc-mode .auction-merc-top .auction-merc-identity{flex:1}
@media(max-width:680px){.pc-mode .auction-merc-top{flex-wrap:wrap}.pc-mode .auction-merc-top>.flow-status{margin-left:auto}.quest-card .quest-progress-detail{flex-wrap:wrap}}
.pc-mode .honor-identity-copy small{display:block;color:#bdcbb7;font-size:11px;line-height:1.35}
.pc-mode .honor-identity-copy small b{color:#f0d28d}
.pc-mode .honor-identity-copy i{margin-top:3px;padding:1px 5px}
.pc-mode .honor-rank-row>button{flex:none}
@media(max-width:560px){.pc-mode .auction-merc-identity{gap:10px}.pc-mode .auction-merc-avatar{width:64px;height:80px}.pc-mode .auction-merc-copy h3{font-size:15px}.pc-mode .honor-rank-row{gap:7px}.pc-mode .honor-rank-number{width:20px}.pc-mode .honor-identity-avatar{width:39px;height:51px}.pc-mode .honor-rank-row>button{padding:5px 7px}}

/* Q2-01-18: group long rule sentences into compact labelled facts. */
.pc-mode .rule-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:12px 0 14px}
.pc-mode .rule-facts>div{min-width:0;padding:7px 10px;border:1px solid #566459;background:#152426}
.pc-mode .rule-facts .rule-facts-wide{grid-column:1/-1}
.pc-mode .rule-facts small{display:block;color:#a9b9aa;font-size:11px;line-height:1.3}
.pc-mode .rule-facts strong{display:block;margin-top:3px;color:#f0d390;font-size:13px;line-height:1.4}
@media(max-width:580px){.pc-mode .rule-facts{grid-template-columns:1fr}.pc-mode .rule-facts .rule-facts-wide{grid-column:auto}}
@media(max-width:650px){.pc-mode .rune-dungeon-view[data-ore-day]{grid-template-columns:1fr}}

/* Show a small alert on the bottom tab while keeping the count inside the talent screen. */
.pc-mode .talent-point-badge{display:inline-grid;place-items:center;min-width:21px;height:21px;padding:0 4px;border:1px solid #ef9991;border-radius:12px;background:#9e3431;color:#fff0d5;font-size:11px;font-weight:700;line-height:1;box-shadow:0 0 9px #dc5a4f80}
.talent-nav-dot{position:absolute;top:5px;right:5px;width:10px;height:10px;border-radius:50%;background:#d64a46;box-shadow:0 0 0 1px #ef9e8d,0 0 7px #d64a46a6}
.pc-mode #main[data-screen="hero"]>.subtabs button .talent-point-badge{margin-left:8px;vertical-align:middle}
.pc-mode .talent-points-callout{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:12px 0;padding:12px 15px;border:1px solid #d5a75f;background:linear-gradient(95deg,#302b1b,#1d302d)}
.pc-mode .talent-points-callout strong{display:block;color:#ffdb93;font-size:16px}
.pc-mode .talent-points-callout small{display:block;margin-top:3px;color:#c0ccb9;font-size:11px}
.pc-mode .talent-points-callout button{flex:none;min-height:38px;padding:7px 14px}
@media(max-width:580px){.pc-mode .talent-points-callout{align-items:stretch;flex-direction:column}.pc-mode .talent-points-callout button{width:100%}}

/* Q2-01-20: compare both honor battle parties on the result screen. */
.pc-mode .honor-result{border:1px solid #987d4e;background:linear-gradient(120deg,#1d2c2d,#101c1d);padding:18px 22px}
.pc-mode .honor-result-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;border-bottom:1px solid #687160;padding-bottom:10px}
.pc-mode .honor-result-heading h2{margin:3px 0 0;color:#f0d59e;font-size:29px}
.pc-mode .honor-result-reward{flex:none;padding:5px 10px;border:1px solid #bd7c6e;background:#3a2524;color:#f1bbb2;font-size:13px}
.pc-mode .honor-result-current{margin:7px 0 0;color:#aebfae;font-size:12px}
.pc-mode .honor-result-reason{margin:13px 0;padding:11px 14px;border-left:4px solid #d39379;background:#2d2422;line-height:1.5}
.pc-mode .honor-result-reason strong{display:block;color:#f3c4ad;font-size:15px}
.pc-mode .honor-result-reason small{display:block;margin-top:3px;color:#c0cec0;font-size:11px}
.pc-mode .honor-result h3{margin:16px 0 8px;color:#eed092;font-size:17px}
.pc-mode .honor-result-compare{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.pc-mode .honor-result-compare th,.pc-mode .honor-result-compare td{padding:8px 10px;border:1px solid #556657;text-align:center}
.pc-mode .honor-result-compare thead th{background:#263437;color:#f0d7a4;font-size:12px}
.pc-mode .honor-result-compare tbody tr:nth-child(odd){background:#172728}
.pc-mode .honor-result-compare tbody tr:nth-child(even){background:#1b2b2c}
.pc-mode .honor-result-compare td:first-child{width:27%;text-align:left;color:#bac9ba;font-size:12px}
.pc-mode .honor-result-compare td:nth-child(2){color:#f2dbab;font-weight:700}
.pc-mode .honor-result-compare td:nth-child(3){color:#e7c4b4;font-weight:700}
.pc-mode .honor-result-teams{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.pc-mode .honor-result-team{min-width:0;border:1px solid #64715b;background:#152425}
.pc-mode .honor-result-team:last-child{border-color:#856d5f}
.pc-mode .honor-result-team h4{margin:0;padding:9px 11px;border-bottom:1px solid #61705e;color:#eed59d;font-size:14px}
.pc-mode .honor-result-team:last-child h4{color:#e7b7aa}
.pc-mode .honor-result-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;padding:8px 10px;border-bottom:1px solid #3e5048}
.pc-mode .honor-result-unit:last-child{border-bottom:0}
.pc-mode .honor-result-unit strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#e9ddba;font-size:12px}
.pc-mode .honor-result-unit span{font-size:11px}
.pc-mode .honor-result-unit .alive{color:#add5b4}
.pc-mode .honor-result-unit .dead{color:#e4a79b}
.pc-mode .honor-result-unit small{grid-column:1/-1;color:#b7c7b6;font-size:11px}
.pc-mode .honor-result>.button-row{margin-top:15px}
.pc-mode .honor-result>.secondary:last-child{margin-top:8px}
@media(max-width:700px){.pc-mode .honor-result{padding:13px}.pc-mode .honor-result-heading h2{font-size:23px}.pc-mode .honor-result-teams{grid-template-columns:1fr}.pc-mode .honor-result-compare th,.pc-mode .honor-result-compare td{padding:7px 5px}}

/* Keep the campaign stage controls visible within the desktop exploration page. */
.pc-mode #main.pc-atlas-compact{padding-top:10px;padding-bottom:8px}
.pc-mode #main.pc-atlas-compact>.xp-row{margin-top:0;margin-bottom:5px}
.pc-mode #main.pc-atlas-compact>.explore-dungeon-tabs{margin-top:4px;margin-bottom:8px}
.pc-mode #main.pc-atlas-compact .content-detail{padding:13px 18px}
.pc-mode #main.pc-atlas-compact .content-detail>.eyebrow,.pc-mode #main.pc-atlas-compact .content-detail>.note{display:none}
.pc-mode #main.pc-atlas-compact .content-detail h2{margin:4px 0 5px;font-size:27px}
.pc-mode #main.pc-atlas-compact .content-zones{margin:7px 0;gap:5px}
.pc-mode #main.pc-atlas-compact .content-zone{min-height:38px;height:38px;padding:5px}
.pc-mode #main.pc-atlas-compact .content-detail-actions{margin:5px 0}
.pc-mode #main.pc-atlas-compact .content-detail-actions button{min-height:34px;padding:4px 7px}
.pc-mode #main.pc-atlas-compact .atlas-extra-details{margin:7px 0 0;border-top:1px solid #716143;padding-top:6px;color:#b8bd9d;font-size:12px}
.pc-mode #main.pc-atlas-compact .atlas-extra-details>summary{cursor:pointer}

/* Match the inventory equipment card's stone fill and central lighting. */
.pc-mode .pc-equip-stage .slot-box{isolation:isolate}
.pc-mode .pc-equip-stage .slot-box::after{content:"";position:absolute;inset:7px;width:auto;height:auto;border:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 73% 54% at 50% 43%,rgba(205,178,132,.38) 0%,rgba(147,121,88,.25) 40%,rgba(97,82,65,.08) 63%,transparent 80%)}

.battle-field img.hero-portrait{cursor:default}

/* Shield loadout: eight independent positions inside the existing panel. */
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box{width:62px;height:72px;transform:none;bottom:auto;right:auto;left:auto;top:auto}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="helmet"]{left:50%;top:10px;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="weapon"]{left:10px;top:50px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="armor"]{left:50%;top:99px;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="shield"]{right:10px;top:50px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="gloves"]{right:10px;top:132px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="ring"]{left:10px;top:132px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="boots"]{left:50%;top:188px;transform:translateX(-50%)}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="charm"]{right:10px;top:214px;height:54px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box>img{position:absolute;left:50%;top:16px;transform:translateX(-50%);width:36px;height:36px;object-fit:contain;margin:0}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box[data-slot="charm"]>img{top:7px;width:27px;height:27px}
.pc-mode .pc-equip-stage .gear-slots.has-shield .slot-box>small{position:absolute;left:0;right:0;bottom:1px;margin:0;font-size:12px;line-height:14px}

/* Approved one-screen UX 01-03: campaign atlas, growth and mercenary roster. */
.pc-mode #main.onepage-atlas,.pc-mode #main.onepage-growth,.pc-mode #main.onepage-mercs{padding:9px 24px 7px}
.pc-mode #main.onepage-atlas>.xp-row,.pc-mode #main.onepage-growth>.xp-row,.pc-mode #main.onepage-mercs>.xp-row{height:42px;max-width:420px;margin:0}
.pc-mode #main.onepage-growth>.topline,.pc-mode #main.onepage-mercs>.topline{height:48px;margin:0}
.pc-mode #main.onepage-growth>.topline .eyebrow,.pc-mode #main.onepage-mercs>.topline .eyebrow{display:none}
.pc-mode #main.onepage-growth>.subtabs,.pc-mode #main.onepage-mercs>.subtabs{margin:3px 0 7px;padding:3px}
.pc-mode #main.onepage-growth>.subtabs button,.pc-mode #main.onepage-mercs>.subtabs button{min-height:42px;padding:5px}
.pc-mode #main.onepage-atlas .pc-provenance{margin:0 0 7px}
.pc-mode #main.onepage-atlas .pc-atlas{grid-template-columns:300px minmax(0,1fr);gap:14px}
.pc-mode #main.onepage-atlas .atlas-list{height:auto;max-height:none;overflow:visible;align-content:start;margin:0}
.pc-mode #main.onepage-atlas .atlas-card{min-height:57px;padding:5px}
.pc-mode #main.onepage-atlas .atlas-pager{display:flex;align-items:center;justify-content:space-between;gap:5px;margin-top:7px;border:1px solid #806c48;background:#1c2b2b;padding:5px;color:#e3ca91;font-size:12px}
.pc-mode #main.onepage-atlas .atlas-pager-button{padding:3px 9px;min-height:27px;border:1px solid #8a774e;background:#263534;color:#e8cf96}
.pc-mode #main.onepage-atlas .content-detail{padding:13px 18px}
.pc-mode #main.onepage-atlas .content-detail h2{margin:0 0 7px}
.pc-mode #main.onepage-atlas .content-zones{margin:8px 0;gap:5px}
.pc-mode #main.onepage-atlas .content-zone{height:37px;min-height:37px;padding:4px}
.pc-mode #main.onepage-atlas .content-detail-actions{margin:5px 0}
.pc-mode #main.onepage-atlas .content-detail-actions button{min-height:35px}
.pc-mode #main.onepage-growth .onepage-party{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center;border:1px solid #a48c58;background:#192b2a;padding:6px;margin-bottom:7px}
.pc-mode #main.onepage-growth .q2-party-members{gap:6px}
.pc-mode #main.onepage-growth .q2-party-member{min-height:65px;padding:4px;gap:6px}
.pc-mode #main.onepage-growth .q2-party-member>img{width:46px;height:56px}
.pc-mode #main.onepage-growth .q2-party-member small{font-size:11px;line-height:1.2}
.pc-mode #main.onepage-growth .q2-party-member strong{font-size:13px;line-height:1.25}
.pc-mode #main.onepage-growth .q2-party-member span{font-size:11px;line-height:1.25}
.pc-mode #main.onepage-growth .onepage-more-button{min-height:36px;border:1px solid #a68a52;background:#2c3833;color:#f4d799;padding:5px 9px;font-size:11px}
.pc-mode #main.onepage-growth .onepage-growth-columns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.pc-mode #main.onepage-growth .onepage-growth-box{min-width:0;border:1px solid #8a764b;background:#182829;padding:10px 11px}
.pc-mode #main.onepage-growth .onepage-growth-box h2{margin:0 0 7px;color:#f2d79d;font:21px Georgia,'Batang',serif}
.pc-mode #main.onepage-growth .onepage-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
.pc-mode #main.onepage-growth .onepage-stats-grid .stat-block{min-height:55px;margin:0;padding:5px 8px}
.pc-mode #main.onepage-growth .onepage-stats-grid .stat-block span{font-size:12px}
.pc-mode #main.onepage-growth .onepage-stats-grid .stat-block b{font-size:18px}
.pc-mode #main.onepage-growth .onepage-train-grid{display:grid;grid-template-columns:1fr 1fr;gap:5px}
.pc-mode #main.onepage-growth .onepage-train-grid .train-row{display:grid;grid-template-columns:28px minmax(0,1fr) 22px 62px 32px;gap:3px;min-height:58px;margin:0;padding:4px;border:1px solid #53624d}
.pc-mode #main.onepage-growth .onepage-train-grid .train-info b{font-size:12px}
.pc-mode #main.onepage-growth .onepage-train-grid .train-info small{display:none}
.pc-mode #main.onepage-growth .onepage-train-grid .cost{font-size:11px}
.pc-mode #main.onepage-growth .onepage-train-grid .square-btn{width:31px;min-width:31px;height:31px;min-height:31px;padding:0}
.pc-mode #main.onepage-growth .onepage-train-actions{display:flex;justify-content:flex-end;gap:6px;margin-top:6px}
.pc-mode #main.onepage-growth .onepage-train-actions button{min-height:30px;padding:4px 9px;font-size:11px}
.pc-mode #main.onepage-growth .onepage-growth-strip{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:7px;padding:6px 9px;border:1px solid #756a4a;background:#23302b;color:#cbd7c5;font-size:11px}
.pc-mode #main.onepage-growth .onepage-growth-strip strong{color:#f1d599;font-size:12px}
.pc-mode #main.onepage-growth .onepage-growth-details{margin:6px 0 0;padding:5px 9px;font-size:11px}
.pc-mode #main.onepage-growth .onepage-growth-details>summary{cursor:pointer;color:#d9c58e}
.pc-mode #main.onepage-mercs .mini-party{max-width:none;min-height:0;height:57px;margin:0 0 8px;gap:7px}
.pc-mode #main.onepage-mercs .mini-unit{height:56px;min-height:0;padding:3px 7px}
.pc-mode #main.onepage-mercs .mini-unit img{width:32px;height:43px}
.pc-mode #main.onepage-mercs .regional-mercs{margin:0}
.pc-mode #main.onepage-mercs .regional-mercs h3{margin:0 0 3px;font-size:19px}
.pc-mode #main.onepage-mercs .regional-merc-grid{gap:7px}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-card{height:121px;min-height:121px;padding:7px;gap:7px}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-card img{width:53px;height:68px}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-body strong{font-size:12px;line-height:1.25}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-body p{font-size:11px;line-height:1.15;margin:3px 0}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-actions{margin-top:4px;gap:5px}
.pc-mode #main.onepage-mercs .regional-merc-grid .roster-actions button{min-height:28px;padding:3px 5px;font-size:11px}
.pc-mode #main.onepage-mercs .onepage-merc-details{margin-top:4px;padding:7px 12px;font-size:11px}
@media(max-width:900px){.pc-mode #main.onepage-atlas .pc-atlas{grid-template-columns:1fr}.pc-mode #main.onepage-atlas .atlas-list{grid-template-columns:repeat(4,minmax(0,1fr))}.pc-mode #main.onepage-growth .onepage-growth-columns{grid-template-columns:1fr}.pc-mode #main.onepage-growth .onepage-party{grid-template-columns:1fr}.pc-mode #main.onepage-mercs .regional-merc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.pc-mode #main.onepage-atlas .atlas-list{grid-template-columns:repeat(2,minmax(0,1fr))}.pc-mode #main.onepage-mercs .regional-merc-grid{grid-template-columns:1fr}.pc-mode #main.onepage-growth .onepage-train-grid{grid-template-columns:1fr}.pc-mode #main.onepage-growth .onepage-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Approved one-screen UX 04: talent choices. */
.pc-mode #main.onepage-talents{padding:9px 24px 7px}
.pc-mode #main.onepage-talents>.topline{height:48px;margin:0}
.pc-mode #main.onepage-talents>.topline .eyebrow{display:none}
.pc-mode #main.onepage-talents>.xp-row{height:42px;margin:0}
.pc-mode #main.onepage-talents>.subtabs{margin:3px 0 7px;padding:3px}
.pc-mode #main.onepage-talents>.subtabs button{min-height:42px;padding:5px}
.pc-mode #main.onepage-talents>.panel{min-height:53px;height:53px;margin:0 0 7px;padding:6px 14px}
.pc-mode #main.onepage-talents .onepage-talent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.pc-mode #main.onepage-talents .talent-row{height:110px;min-height:110px;margin:0;padding:10px;display:flex;flex-wrap:wrap;align-content:space-between}
.pc-mode #main.onepage-talents .talent-row>div:first-child{flex:1 1 100%}
.pc-mode #main.onepage-talents .talent-row button{margin-left:auto}
.pc-mode #main.onepage-talents .onepage-talent-more{margin-top:7px;padding:7px 10px;border:1px solid #88764d;background:#1d2e2a;font-size:11px;color:#c8d3c3}
.pc-mode #main.onepage-talents .onepage-talent-more>summary{cursor:pointer;color:#e7cd92}
@media(max-width:900px){.pc-mode #main.onepage-talents .onepage-talent-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.pc-mode #main.onepage-talents .onepage-talent-grid{grid-template-columns:1fr}.pc-mode #main.onepage-talents .talent-row{height:auto;min-height:110px}}

/* Approved one-screen UX 06: twenty rune types per page with direct detail access. */
.pc-mode #main.onepage-runes{padding:9px 24px 7px}
.pc-mode #main.onepage-runes>.equipment-tabs{margin-bottom:7px}
.pc-mode #main.onepage-runes>.rune-menu{flex:1;min-height:0;overflow:hidden;padding:9px 14px}
.pc-mode #main.onepage-runes .rune-menu h2{font-size:22px;margin:0 0 2px;line-height:1.2}
.pc-mode #main.onepage-runes .rune-menu>p{margin:3px 0;font-size:11px}
.pc-mode #main.onepage-runes .rune-collection{grid-template-columns:repeat(10,minmax(0,1fr));gap:5px;margin-top:8px}
.pc-mode #main.onepage-runes .rune-collection-cell{position:relative;min-width:0}
.pc-mode #main.onepage-runes .rune-collection-cell>small,.pc-mode #main.onepage-runes .rune-collection-cell>.tiny-btn{display:none}
.pc-mode #main.onepage-runes .rune-collection-cell .rune-card{height:136px;min-height:136px;aspect-ratio:auto;padding:4px 2px;gap:2px}
.pc-mode #main.onepage-runes .rune-collection-cell .rune-grade-label{font-size:11px!important}
.pc-mode #main.onepage-runes .rune-collection-cell .rune-art{width:68px;height:68px;max-height:68px;flex:none}
.pc-mode #main.onepage-runes .rune-collection-cell .rune-card b{font-size:11px;line-height:1.1;text-align:center}
.pc-mode #main.onepage-runes .rune-collection-cell .rune-count,.pc-mode #main.onepage-runes .rune-collection-cell .rune-count span{font-size:11px;line-height:1.1}
.pc-mode #main.onepage-runes .rune-collection-open{position:absolute;inset:0;width:100%;height:136px;min-height:0;margin:0;padding:0;opacity:0;z-index:2;cursor:pointer}
.pc-mode #main.onepage-runes .rune-collection-open:focus-visible{opacity:1;background:#253b38e8;color:#ffe0a2;font-size:11px}
.pc-mode #main.onepage-runes .rune-collection-pager{display:flex;align-items:center;justify-content:space-between;margin-top:7px;padding:5px 8px;border:1px solid #8a774e;background:#20302d;color:#e9d39b;font-size:11px}
.pc-mode #main.onepage-runes .rune-collection-pager button{border:1px solid #947d51;background:#263736;padding:4px 10px;min-height:27px;color:#efdbad;font-size:11px}
.pc-mode #main.onepage-runes .rune-collection-rules{margin-top:5px;color:#c9d6c6;font-size:11px}
.pc-mode #main.onepage-runes .rune-collection-rules>summary{cursor:pointer;color:#dfc891}
@media(max-width:900px){.pc-mode #main.onepage-runes>.rune-menu{overflow:auto}.pc-mode #main.onepage-runes .rune-collection{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:650px){.pc-mode #main.onepage-runes .rune-collection{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Approved one-screen UX 07: keep the summon artwork and controls in view. */
.pc-mode #main.onepage-rune-summon,.pc-mode #main.onepage-rune-forge{padding:9px 24px 7px}
.pc-mode #main.onepage-rune-summon>.equipment-tabs,.pc-mode #main.onepage-rune-forge>.equipment-tabs{margin-bottom:7px}
.pc-mode #main.onepage-rune-summon>.rune-menu{padding:10px 18px;overflow:hidden}
.pc-mode #main.onepage-rune-summon>.rune-menu>h2{margin:0 0 2px;font-size:23px}
.pc-mode #main.onepage-rune-summon .rune-summon-layout{margin-top:4px}
.pc-mode #main.onepage-rune-summon .rune-summon-guide{margin-top:4px}

/* Approved one-screen UX 08: forge controls above ten paged rune types. */
.pc-mode #main.onepage-rune-forge>.rune-menu:has(.rune-forge-workspace){display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:32px 40px 176px 142px 24px 18px;gap:4px 10px;height:calc(100% - 70px);overflow:hidden!important;padding:7px 12px!important}
.pc-mode #main.onepage-rune-forge .rune-menu>h2{grid-column:1;grid-row:1;font-size:23px;margin:0}
.pc-mode #main.onepage-rune-forge .rune-menu>h2:after{display:none}
.pc-mode #main.onepage-rune-forge .rune-menu>.rune-wallet{grid-column:2;grid-row:1;position:static!important;justify-self:end;margin:0}
.pc-mode #main.onepage-rune-forge .rune-grade-tabs{grid-column:1/-1;grid-row:2;margin:0;min-height:0}
.pc-mode #main.onepage-rune-forge .rune-grade-tabs button{min-height:34px;height:34px;padding:4px}
.pc-mode #main.onepage-rune-forge .rune-forge-workspace{grid-column:1/-1;grid-row:3;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);min-height:0;overflow:hidden;gap:8px}
.pc-mode #main.onepage-rune-forge .rune-material-stage{padding:4px;min-height:0}
.pc-mode #main.onepage-rune-forge .rune-material-heading .eyebrow{display:none}
.pc-mode #main.onepage-rune-forge .rune-material-heading h3{margin:0;font-size:15px}
.pc-mode #main.onepage-rune-forge .rune-materials{max-width:480px;margin:3px auto 0;gap:5px}
.pc-mode #main.onepage-rune-forge .rune-materials .rune-card,.pc-mode #main.onepage-rune-forge .rune-empty-slot{height:133px;min-height:133px;padding:2px}
.pc-mode #main.onepage-rune-forge .rune-empty-slot img{width:100%;height:100%;object-fit:contain}
.pc-mode #main.onepage-rune-forge .rune-material-stage>p{display:none}
.pc-mode #main.onepage-rune-forge .rune-forge-controls{position:static;padding:6px;overflow:hidden}
.pc-mode #main.onepage-rune-forge .rune-forge-controls h3{margin:0 0 2px;font-size:15px}
.pc-mode #main.onepage-rune-forge .rune-forge-controls p{margin:0 0 2px;font-size:11px}
.pc-mode #main.onepage-rune-forge .rune-forge-controls>.rune-forge-buttons{margin:4px 0}
.pc-mode #main.onepage-rune-forge .rune-forge-controls button{min-height:31px;padding:3px}
.pc-mode #main.onepage-rune-forge .rune-forge-controls>small{display:none}
.pc-mode #main.onepage-rune-forge .rune-forge-roster{grid-column:1/-1;grid-row:4;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;margin:0;padding:0;max-height:none;overflow:hidden}
.pc-mode #main.onepage-rune-forge .rune-forge-roster:before{display:none}
.pc-mode #main.onepage-rune-forge .rune-forge-stack .rune-card{height:130px;min-height:130px;padding:3px;gap:2px}
.pc-mode #main.onepage-rune-forge .rune-forge-stack .rune-art{width:64px;height:67px}
.pc-mode #main.onepage-rune-forge .rune-forge-stack .rune-card b,.pc-mode #main.onepage-rune-forge .rune-forge-stack .rune-count,.pc-mode #main.onepage-rune-forge .rune-forge-stack .rune-count span{font-size:11px;line-height:1.1}
.pc-mode #main.onepage-rune-forge .rune-forge-stack>small{display:none}
.pc-mode #main.onepage-rune-forge .rune-forge-pager{grid-column:1/-1;grid-row:5;display:flex;align-items:center;justify-content:space-between;border:1px solid #8a774e;background:#20302d;color:#e9d39b;padding:2px 5px;font-size:11px}
.pc-mode #main.onepage-rune-forge .rune-forge-pager button{min-height:20px;padding:1px 8px;border:1px solid #947d51;background:#263736;color:#efdbad;font-size:11px}
.pc-mode #main.onepage-rune-forge .rune-protection{grid-column:1/-1;grid-row:6;display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:0!important;font-size:11px!important}
@media(max-width:900px){.pc-mode #main.onepage-rune-forge>.rune-menu:has(.rune-forge-workspace){display:block!important;height:auto;overflow:auto!important}.pc-mode #main.onepage-rune-forge .rune-forge-workspace{display:block}.pc-mode #main.onepage-rune-forge .rune-forge-roster{grid-template-columns:repeat(5,minmax(0,1fr))}.pc-mode #main.onepage-rune-summon>.rune-menu{overflow:auto}}

/* Approved one-screen UX 10-12: resource dungeons share one information layout. */
.resource-dungeon-compact{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.03fr);grid-template-rows:auto 1fr;gap:12px 16px;min-height:0;padding:16px 20px 18px;background:linear-gradient(150deg,#1d2b2b,#111e1d);border:1px solid #a88c56}
.resource-dungeon-compact .ux-dungeon-head{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #816b44;padding-bottom:8px}
.resource-dungeon-compact .ux-dungeon-head h2{margin:0;font-size:27px}
.resource-dungeon-compact .ux-wallet{display:flex;align-items:center;gap:4px;font-size:15px;color:#e3c681}
.resource-dungeon-compact .ux-dungeon-overview,.resource-dungeon-compact .ux-dungeon-challenge{min-width:0;padding:14px 16px;border:1px solid #826c46;background:#142221}
.resource-dungeon-compact h3{margin:0 0 9px;font-size:19px;color:#f3d79a}
.resource-dungeon-compact .ux-entry-main{display:flex;align-items:baseline;gap:12px;margin-bottom:12px}
.resource-dungeon-compact .ux-entry-main strong{font-size:32px;color:#f4d48c;line-height:1}
.resource-dungeon-compact .ux-entry-main span{color:#aabb9e;font-size:13px}
.resource-dungeon-compact .ux-facts{display:grid;grid-template-columns:1fr 1fr;gap:5px;margin:0 0 8px}
.resource-dungeon-compact .ux-facts div{padding:4px 9px;background:#21322d;border:1px solid #4b5d4d;min-height:36px}
.resource-dungeon-compact .ux-facts small{display:block;color:#a6b698;font-size:11px}
.resource-dungeon-compact .ux-facts b{font-size:13px;color:#e9d5a2}
.resource-dungeon-compact .ux-dungeon-overview details{border-top:1px solid #5c684f;padding-top:8px;color:#a6b698;font-size:12px}
.resource-dungeon-compact .ux-dungeon-overview summary{cursor:pointer;color:#d8c491;font-size:12px}
.resource-dungeon-compact .ux-dungeon-overview details p{margin:7px 0 0}
.resource-dungeon-compact .ux-progress{color:#b6c8a4;margin:0 0 13px;font-size:13px}
.resource-dungeon-compact .ux-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0 0 14px}
.resource-dungeon-compact .ux-stats div{padding:8px 10px;border:1px solid #46574e;background:#1b2c29}
.resource-dungeon-compact .ux-stats small{display:block;font-size:11px;color:#9eaf96}
.resource-dungeon-compact .ux-stats b{font-size:18px;color:#f1d391}
.resource-dungeon-compact .ux-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.resource-dungeon-compact .ux-actions button{min-height:48px;width:100%;font-size:14px}
@media(max-width:900px){.resource-dungeon-compact{grid-template-columns:1fr;grid-template-rows:auto auto auto}.resource-dungeon-compact .ux-dungeon-head{grid-column:1}}
@media(max-width:650px){.resource-dungeon-compact{padding:12px;gap:10px}.resource-dungeon-compact .ux-facts{grid-template-columns:1fr 1fr}.resource-dungeon-compact .ux-actions{grid-template-columns:1fr}.resource-dungeon-compact .ux-dungeon-head h2{font-size:23px}}

/* Approved one-screen UX 13: clear stage and wave status above the existing battle art. */
.pc-mode #main[data-screen=battle] .ux-battle-status{display:flex;align-items:center;justify-content:space-between;gap:12px;height:35px;margin:0 0 5px;padding:5px 14px;background:#22352d;border:1px solid #b6995f;font-size:14px;color:#e8d7ac}
.pc-mode #main[data-screen=battle] .ux-battle-status strong{font-size:18px;color:#f8d995;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-mode #main[data-screen=battle] .ux-battle-progress{display:flex;align-items:center;gap:8px;flex:none}
.pc-mode #main[data-screen=battle] .ux-battle-progress i{display:block;width:36px;height:6px;border-radius:6px;background:#bb9552;box-shadow:0 0 8px #f2ce70}
.pc-mode #main[data-screen=battle] .ux-battle-progress i.inactive{background:#4b5548;box-shadow:none}
.pc-mode #main[data-screen=battle] .battle-controls{border-color:#9a824d;background:#21342e}
.pc-mode #main[data-screen=battle] .battle-controls button{min-height:38px}

/* Approved one-screen UX 14: rewards, next action, and acquired gear together. */
.pc-mode #main[data-screen=result]:has(>.ux-result-layout){display:block;padding:15px 24px 10px;overflow:auto}
.ux-result-layout{display:grid;grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);gap:14px;min-height:474px}
.pc-mode .ux-result-layout{height:474px}
.ux-result-left,.ux-result-right{min-width:0;padding:15px;border:1px solid #a88b53;background:linear-gradient(150deg,#1e2c2b,#132020);overflow:auto}
.ux-result-left{display:flex;flex-direction:column;justify-content:space-between}
.ux-result-head{border-bottom:1px solid #806e48;padding-bottom:9px}
.ux-result-head small{font-size:11px;color:#b8a373;letter-spacing:1px}
.ux-result-head h2{font-size:29px;color:#f1dbad;margin:2px 0}
.ux-result-head p{font-size:15px;color:#dfd5b8}
.ux-result-rewards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.ux-result-rewards>div{border:1px solid #506653;background:#1e342e;text-align:center;padding:12px 3px}
.ux-result-rewards b{display:block;font-size:24px;color:#efca7e}
.ux-result-rewards small{font-size:11px;color:#aac0a3}
.ux-result-actions{display:grid;grid-template-columns:1fr 1.75fr .85fr;gap:7px}
.ux-result-actions button{min-width:0;min-height:45px;font-size:13px}
.ux-result-actions .healing-auto-action{min-width:0;margin:0}
.ux-result-actions .healing-auto-action button{width:auto;flex:1;white-space:nowrap}
.ux-result-actions .auto-recovery-control{min-width:125px;padding:0 6px;font-size:11px}
.ux-result-left details{font-size:12px;color:#aabda7;border-top:1px solid #667457;padding-top:8px}
.ux-result-left details summary{color:#dac691;cursor:pointer}
.ux-result-left details .battle-report{margin:8px 0}
.ux-result-right{display:flex;flex-direction:column}
.ux-result-right h3{font-size:20px;color:#efd69e;margin:0 0 4px}
.ux-result-right>p{font-size:12px;color:#a9b99e;margin:0 0 12px}
.ux-result-right .ux-loot-grid{display:flex;align-items:center;justify-content:center;gap:12px;flex:1;min-height:0;overflow:auto;flex-wrap:wrap}
.ux-result-right .item-card{width:165px;min-width:0;max-height:300px;zoom:1;flex:none}
.ux-result-right .item-card img{max-height:115px;object-fit:contain}
.ux-result-right>button{min-height:36px}
@media(max-width:900px){.pc-mode .ux-result-layout{height:auto}.ux-result-layout{grid-template-columns:1fr}.ux-result-left{min-height:420px}.ux-result-right .ux-loot-grid{min-height:260px}}
@media(max-width:650px){.ux-result-actions{grid-template-columns:1fr 1fr}.ux-result-actions>.primary{grid-column:1/-1}.ux-result-left{min-height:400px}.ux-result-right .item-card{width:120px}}

/* Approved one-screen UX 15: mercenary auction registration and listings. */
.pc-mode #main.onepage-merc-auction{padding:12px 24px 10px;overflow:auto}
.pc-mode #main.onepage-merc-auction>.topline{height:47px;margin:0}
.pc-mode #main.onepage-merc-auction .topline .eyebrow{display:none}
.pc-mode #main.onepage-merc-auction .section-title{font-size:25px}
.pc-mode #main.onepage-merc-auction>.subtabs{margin:5px 0 10px;min-height:58px}
.onepage-merc-auction-body{height:419px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto minmax(0,1fr);gap:9px}
.onepage-merc-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #806c45;padding-bottom:4px}
.onepage-merc-heading h2{font-size:23px;color:#f1d69f}
.onepage-merc-heading b{color:#eacb85}
.onepage-merc-register,.onepage-merc-list{border:1px solid #9e824f;background:#172522;padding:12px 14px;min-width:0;overflow:auto}
.onepage-merc-register h3,.onepage-merc-list h3{font-size:17px;color:#edd39a;margin:0 0 8px}
.onepage-merc-register>p{font-size:12px;color:#aebfa8;margin:0 0 8px}
.onepage-merc-fields{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.onepage-merc-fields label{font-size:11px}
.onepage-merc-fields input,.onepage-merc-fields select{height:34px;margin-top:3px;padding:4px 7px;font-size:11px}
.onepage-merc-register>.primary{width:100%;margin:9px 0 5px;min-height:42px}
.onepage-merc-register>.button-row{margin:0}
.onepage-merc-register>.button-row button{min-height:31px;padding:4px;font-size:11px}
.onepage-merc-list{display:flex;flex-direction:column}
.onepage-merc-list>.empty-state{flex:1;display:grid;place-items:center;margin:0;padding:8px}
.onepage-merc-list>.auction-merc-card{flex:1;overflow:auto;margin:0 0 6px;padding:10px}
.onepage-merc-list>.auction-merc-card[hidden]{display:none}
.onepage-merc-contracts{font-size:12px;color:#a8b99f;border-top:1px solid #5a6d56;padding-top:7px;margin-top:auto}
.onepage-merc-list>.note{font-size:11px;margin:4px 0}
.onepage-merc-list>.panel:not(.auction-merc-card){margin:3px 0;padding:6px}
.onepage-merc-pager{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:5px;font-size:11px;color:#e3cb94}
.onepage-merc-pager[hidden]{display:none}
.onepage-merc-pager button{min-height:26px;padding:3px 10px;border:1px solid #826d49;background:#22342f;color:#e3cb94;font-size:11px}
.onepage-merc-rules{font-size:12px;color:#bac5ad;margin-top:7px}
.onepage-merc-rules summary{color:#e3cb94;cursor:pointer}
.onepage-merc-rules .rule-facts{margin:8px 0}
@media(max-width:900px){.onepage-merc-auction-body{height:auto;grid-template-columns:1fr}.onepage-merc-heading{grid-column:1}.onepage-merc-register,.onepage-merc-list{overflow:visible}.onepage-merc-list>.auction-merc-card{overflow:visible}}

/* Approved one-screen UX 16, 20, 22, 26. */
.pc-mode #main.ux-gear-auction{padding:12px 24px 10px;overflow:auto}
.pc-mode #main.ux-gear-auction>.topline{height:47px;margin:0}
.pc-mode #main.ux-gear-auction .topline .eyebrow{display:none}
.pc-mode #main.ux-gear-auction>.subtabs{margin:5px 0 10px;min-height:58px}
.ux-gear-body{height:419px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:9px}
.ux-gear-heading{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #806c45;padding-bottom:4px}
.ux-gear-heading h2{font-size:23px;color:#f1d69f}.ux-gear-heading b{color:#eacb85}
.ux-gear-register,.ux-gear-list{min-height:0;border:1px solid #9e824f;background:#172522;padding:10px 13px;overflow:auto}
.ux-gear-register h3,.ux-gear-list h3{font-size:17px;color:#edd39a;margin:0 0 6px}
.ux-gear-register>.hint-box{margin:0 0 5px;padding:6px 8px;min-height:0;font-size:11px}.ux-gear-register>.hint-box p{margin:1px 0;font-size:11px}.ux-gear-register>.hint-box button{min-height:30px;padding:4px 10px;margin-top:2px;font-size:11px}
.ux-gear-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:7px}.ux-gear-fields label{font-size:11px}.ux-gear-fields select,.ux-gear-fields input{height:32px;margin-top:2px;padding:3px 6px;font-size:11px}
.ux-gear-register>.primary{margin:7px 0 4px;min-height:39px}.ux-gear-register>.button-row{margin:0}.ux-gear-register>.button-row button{min-height:29px;padding:3px;font-size:11px}
.ux-gear-rules{font-size:11px;color:#d9c58e;margin-top:5px}.ux-gear-rules summary{cursor:pointer}
.ux-gear-list{display:flex;flex-direction:column}.ux-gear-list>.empty-state{flex:1;display:grid;place-items:center;margin:0}
.ux-gear-list .auction-listings{flex:1;min-height:0;overflow:auto;margin:0}.ux-gear-list .auction-listings>[hidden]{display:none!important}
.ux-gear-pager{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:5px;color:#e3cb94;font-size:11px}.ux-gear-pager[hidden]{display:none}.ux-gear-pager button{min-height:26px;padding:3px 10px;border:1px solid #826d49;background:#22342f;color:#e3cb94;font-size:11px}
.pc-mode #main.ux-vip-page,.pc-mode #main.ux-gems-page{padding-top:8px;padding-bottom:8px}
.pc-mode #main.ux-vip-page .shop-page,.pc-mode #main.ux-gems-page .shop-page{height:528px;overflow:auto}
.pc-mode #main.ux-vip-page .shop-page>.note,.pc-mode #main.ux-gems-page .shop-page>.note{margin:5px 0}
.pc-mode .ux-vip-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px;max-width:none;border:1px solid #b59455;background:linear-gradient(130deg,#1c2c2a,#13201d);padding:18px 22px;margin-top:8px;min-height:315px}
.ux-vip-intro{display:flex;flex-direction:column;justify-content:space-between}.ux-vip-intro .eyebrow{color:#d1b16b}.ux-vip-intro h2{font-size:32px;color:#f2d9a0;margin:8px 0}.ux-vip-intro .ux-vip-price{font-size:25px;color:#ebc47b}.ux-vip-intro button{width:100%}
.ux-vip-benefits{border-left:1px solid #736d50;padding-left:18px}.ux-vip-benefits h3{color:#e8d29b;font-size:19px;margin:0 0 12px}.ux-vip-benefits>p{padding:8px 0;border-bottom:1px solid #4c624e;color:#c5d3bb;font-size:14px}.ux-vip-benefits details{font-size:11px;color:#c5d3bb}.ux-vip-benefits summary{cursor:pointer}
.pc-mode #main.ux-gems-page .commerce-products{gap:10px;margin-top:9px}.pc-mode #main.ux-gems-page .commerce-product{min-height:0;padding:10px 14px}.pc-mode #main.ux-gems-page .commerce-product h3{margin:0 0 4px}.pc-mode #main.ux-gems-page .commerce-product p{margin:0 0 7px}.pc-mode #main.ux-gems-page .commerce-product button{min-height:40px}
.pc-mode .modal:has(.recovery-flow){padding:12px 20px;max-height:calc(100% - 34px)}
.pc-mode .modal:has(.recovery-flow) .modal-top{margin-bottom:9px;min-height:43px}
.pc-mode .modal:has(.recovery-flow) .recovery-flow{gap:5px}
.pc-mode .modal:has(.recovery-flow) .recovery-summary{padding:5px 9px;font-size:13px}
.pc-mode .modal:has(.recovery-flow) .recovery-step{padding:5px 9px}
.pc-mode .modal:has(.recovery-flow) .recovery-step small{margin-top:1px}
.pc-mode .modal:has(.recovery-flow) .recovery-unit{padding:3px 9px}
.pc-mode .modal:has(.recovery-flow) .recovery-job{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 8px;margin:0;padding:8px 10px}
.pc-mode .modal:has(.recovery-flow) .recovery-job h3,.pc-mode .modal:has(.recovery-flow) .recovery-job p{grid-column:1/-1;margin:0;line-height:1.3}
.pc-mode .modal:has(.recovery-flow) .recovery-job button{min-height:36px;padding:5px}
.pc-mode .modal:has(.recovery-flow) .recovery-flow>button.primary{min-height:38px;padding:6px}
.pc-mode .modal:has(.recovery-flow) .recovery-hint{line-height:1.2}
.pc-mode .modal:has(.recovery-flow) .recovery-other{padding-top:5px}
.pc-mode .modal:has(.recovery-flow) .recovery-other h3{margin:0 0 3px}
.pc-mode .modal:has(.recovery-flow) .recovery-other .settings-grid button{min-height:32px;padding:5px}
.pc-mode .modal:has(.recovery-flow) .recovery-extras .auto-recovery-panel{padding:4px 8px}
.pc-mode .modal:has(.recovery-flow) .recovery-extras .auto-recovery-panel small{font-size:11px}
.pc-mode .modal:has(.recovery-flow) .recovery-flow>.note{margin:0;font-size:11px;line-height:1.2}
@media(max-width:900px){.ux-gear-body{height:auto;grid-template-columns:1fr}.ux-gear-heading{grid-column:1}.ux-gear-register,.ux-gear-list{overflow:visible}.pc-mode .ux-vip-layout{grid-template-columns:1fr}}

/* Keep the whole Bram card legible during his slot-2 tutorial step. */
.pc-mode #main .bram-tutorial-focus{opacity:1!important;filter:none!important;border-color:#e6c57e!important;background:linear-gradient(135deg,#273a35,#172a28)!important;box-shadow:inset 0 0 0 1px #f2d38f99,0 0 22px #e8c57455!important}
.pc-mode #main .bram-tutorial-focus .guide-dimmed,.pc-mode #main .bram-tutorial-focus .guide-dimmed *{opacity:1!important;filter:none!important}
.pc-mode #main .bram-tutorial-focus strong,.pc-mode #main .bram-tutorial-focus b{color:#ffe5a9!important}
.pc-mode #main .bram-tutorial-focus small,.pc-mode #main .bram-tutorial-focus p{color:#d5dfc4!important}
.pc-mode #main .bram-tutorial-focus [data-action="party"][data-slot="1"]{opacity:1!important;filter:none!important;background:linear-gradient(#e1c582,#b99a5c)!important;border-color:#ffe0a0!important;color:#17221d!important;font-weight:700!important;box-shadow:0 0 12px #f6cf7a99!important}

/* Give the inventory the space formerly used by the equipment detail panel. */
.pc-mode .pc-equipment{grid-template-columns:325px minmax(0,1fr)}
.pc-mode .pc-equipment .bag-grid{grid-template-columns:repeat(5,minmax(0,1fr))}

/* Equipment and rune auction: choose a complete asset card and show full listing details. */
.pc-mode .ux-gear-body{height:515px;grid-template-columns:minmax(0,1.17fr) minmax(0,1fr);gap:12px}
.pc-mode .ux-gear-register,.pc-mode .ux-gear-list{padding:13px 15px}
.pc-mode .ux-gear-register .ux-gear-target-field{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.pc-mode .ux-gear-register .ux-gear-fields{display:block}
.pc-mode .ux-gear-register .ux-gear-fields label:not(.ux-gear-target-field){display:block}
.pc-mode .ux-gear-register .ux-gear-fields input{width:100%;height:36px;font-size:14px}
.pc-mode .auction-asset-picker{min-width:0;margin:9px 0 5px}
.pc-mode .auction-picker-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:5px;font-size:12px;color:#b8c2ae}
.pc-mode .auction-picker-heading strong{font-size:14px;color:#f0d59e}
.pc-mode .auction-picker-frame{display:grid;grid-template-columns:27px minmax(0,1fr) 27px;align-items:center;gap:5px;min-width:0;padding:7px 5px;border:1px solid #816943;background:#101b1a}
.pc-mode .auction-picker-arrow{width:27px;height:49px;padding:0;border:1px solid #ae915d;background:#263632;color:#f2d48b;font-size:24px}
.pc-mode .auction-asset-track{display:flex;gap:7px;min-width:0;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#ae915e #192420;scroll-snap-type:x proximity}
.pc-mode .auction-asset-card{position:relative;display:flex;flex:0 0 145px;height:204px;flex-direction:column;align-items:center;gap:3px;min-width:0;padding:8px 6px 6px;border:6px solid #8e6e48;border-image:var(--ornate-box-frame) 30 fill / 6px / 0 stretch;background:radial-gradient(ellipse at 50% 46%,#51483b 0,#25221d 45%,#0d1212 82%);color:#eddcb4;text-align:center;scroll-snap-align:start}
.pc-mode .auction-asset-card.selected{outline:2px solid #efcf7d;outline-offset:-2px;box-shadow:0 0 15px #e8be6a88}
.pc-mode .auction-asset-meta{display:flex;align-self:stretch;justify-content:space-between;gap:3px;font-size:10px;white-space:nowrap}
.pc-mode .auction-asset-card.rarity-3 .auction-asset-meta,.pc-mode .auction-asset-card.rarity-3>strong{color:#d99aea}
.pc-mode .auction-asset-card.rarity-4 .auction-asset-meta,.pc-mode .auction-asset-card.rarity-4>strong{color:#f0cc71}
.pc-mode .auction-asset-card.rarity-5 .auction-asset-meta,.pc-mode .auction-asset-card.rarity-5>strong{color:#f0a5ac}
.pc-mode .auction-asset-art{display:grid;place-items:center;width:78px;height:78px;flex:none}
.pc-mode .auction-asset-art img{width:100%;height:100%;object-fit:contain}
.pc-mode .auction-asset-card>strong{display:grid;place-items:center;min-height:32px;font-size:12px;line-height:1.2;overflow-wrap:anywhere}
.pc-mode .auction-asset-scores{display:flex;gap:3px;width:100%;margin-top:auto}
.pc-mode .auction-asset-scores span{flex:1;min-width:0;padding:2px 0;border:1px solid #826a48;background:#222b28;color:#c8cbb8;font-size:9px;line-height:1.1}
.pc-mode .auction-asset-scores span:first-child{background:#453820;border-color:#d0ad67;color:#f3da9d}
.pc-mode .auction-asset-scores b{display:block;font-size:13px;color:#f5dfaf}
.pc-mode .auction-asset-effect{margin-top:auto;color:#c9c6ae;font-size:10px;line-height:1.2}
.pc-mode .auction-asset-selection{min-height:17px;margin:5px 0 0;color:#f2d592;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pc-mode .ux-gear-list .auction-listings{margin:0}
.pc-mode .ux-gear-list .auction-listing-card{display:grid;grid-template-columns:112px minmax(0,1fr);align-items:start;gap:10px;min-height:400px;padding:12px}
.pc-mode .ux-gear-list .auction-listing-art{grid-column:1;grid-row:1;width:112px;height:130px}
.pc-mode .ux-gear-list .auction-listing-art img{width:98px;height:115px}
.pc-mode .ux-gear-list .auction-listing-content{grid-column:2;grid-row:1;min-width:0}
.pc-mode .ux-gear-list .auction-listing-content h3{margin:5px 0 7px;font-size:19px}
.pc-mode .ux-gear-list .auction-listing-chips{gap:4px}
.pc-mode .ux-gear-list .auction-listing-chips>span{padding:3px 5px;font-size:11px}
.pc-mode .ux-gear-list .auction-stats-panel{margin:7px 0 0;padding:7px}
.pc-mode .ux-gear-list .auction-stats-panel>strong{font-size:11px;margin-bottom:4px}
.pc-mode .ux-gear-list .auction-stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
.pc-mode .ux-gear-list .auction-stats-grid span{padding:3px;font-size:10px}
.pc-mode .ux-gear-list .auction-stats-grid b{font-size:12px}
.pc-mode .ux-gear-list .auction-stats-panel p{font-size:10px;line-height:1.3;margin-top:5px}
.pc-mode .ux-gear-list .auction-listing-note,.pc-mode .ux-gear-list .auction-listing-owner{margin-top:5px;font-size:10px}
.pc-mode .ux-gear-list .auction-listing-price{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:7px 12px;padding:8px 0 0;border-left:0;border-top:1px solid #626c5a;text-align:left}
.pc-mode .ux-gear-list .auction-listing-price>strong{margin:0 auto 0 0;font-size:20px}
.pc-mode .ux-gear-list .auction-listing-price button{width:auto;min-width:108px}
.pc-mode .ux-gear-list .auction-bid-label{min-width:110px;margin:0}
@media(max-width:900px){.pc-mode .ux-gear-body{height:auto;grid-template-columns:1fr}.pc-mode .ux-gear-register,.pc-mode .ux-gear-list{overflow:visible}.pc-mode .ux-gear-list .auction-listings{overflow:visible}.pc-mode .ux-gear-list .auction-listing-card{min-height:0}}
@media(max-width:600px){.pc-mode .ux-gear-list .auction-listing-card{grid-template-columns:80px minmax(0,1fr)}.pc-mode .ux-gear-list .auction-listing-art{width:80px;height:95px}.pc-mode .ux-gear-list .auction-listing-art img{width:70px;height:85px}.pc-mode .ux-gear-list .auction-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
