/* MOBILE-BASELINE-BEGIN */
@media(max-width:900px){
/* Screen layouts: use native content and selected-state logic. */
.c-screen{--c-gap:24px;display:block;width:100%;min-width:0}
.c-screen .c-surface{background-color:#141517;background-image:none;border:1px solid #2c2d31;border-radius:18px;box-shadow:0 8px 28px #0002;overflow:hidden}
.c-screen .panel-h{padding:18px 22px;background:none}
.c-screen .panel-h h3{font-size:16px}
.c-screen .panel-b{padding:20px 22px}
.c-screen .c-list{background:#101113;border:1px solid #2c2d31;border-radius:16px;padding:14px;min-width:0}
.c-screen .c-detail{background:#17181a;border:1px solid #3c3930;border-radius:18px;padding:24px;min-width:0}
.c-screen .c-tabs{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:4px 0 18px;margin-bottom:8px}
.c-screen .c-tabs button{flex:none;white-space:nowrap;min-height:40px;font-size:13px}
.c-screen .ui-toolbar{display:flex;gap:8px;margin-bottom:14px;align-items:center}
.c-screen .ui-toolbar input{min-width:0;flex:1;min-height:40px}
.c-screen .ui-master-detail{grid-template-columns:minmax(250px,.85fr) minmax(0,1.7fr);gap:var(--c-gap);align-items:start}
.c-screen .ui-master-detail:has(>.ui-compare){grid-template-columns:minmax(230px,.8fr) minmax(0,1.4fr) minmax(230px,.75fr)}
.c-screen .ui-list-card{margin:0 0 10px;padding:16px;background:#1a1b1e;border:1px solid #303135;border-radius:12px;color:#e8e8e3;min-height:68px;box-shadow:none}
.c-screen .ui-list-card.on,.c-screen .ui-list-card.selected,.c-screen .ui-list-card.open{background:#27251b;border-color:#a18c3a}
.c-screen .ui-list-card b{font-size:14px;line-height:1.4}
.c-screen .ui-hero-head{padding:18px;background:#202124;border:1px solid #353639;border-radius:14px;margin-bottom:18px}
.c-screen .ui-costs{gap:10px;margin:16px 0}
.c-screen .ui-costs>div,.c-screen .ui-stats>div{padding:12px;border-radius:10px;background:#202124;border:1px solid #303135}
.c-screen .ui-compare h3{font-size:15px;margin-bottom:12px}
.c-screen table{width:100%}.c-screen .tablewrap{border:1px solid #303135;border-radius:12px;overflow:auto}
.c-screen .empty{min-height:0;padding:28px;border:1px dashed #44433a;background:#151618;text-align:left}
.c-screen .empty h3{font-size:18px;margin-bottom:12px}
.c-screen .empty .btn{margin-top:16px;width:auto}
.c-screen details{background:#111214;border:1px solid #303135;border-radius:10px;margin:10px 0}
.c-screen details>summary{font-size:13px;padding:13px 16px}
.c-screen details[open]{border-color:#756628}
.c-screen details[open]>summary{border-bottom:1px solid #303135;color:#d4bd60}
/* HQ: hero and actions first; operational overview underneath. */
.c-home .ui-home-dashboard{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px}
.c-home .c-home-hero{grid-column:1;grid-row:1;min-height:340px;border-radius:20px;overflow:hidden}
.c-home .c-home-actions{grid-column:1;grid-row:2}
.c-home .c-home-operator{grid-column:2;grid-row:1}
.c-home .ui-home-status{grid-column:1;grid-row:3}
.c-home .ui-home-recommend{grid-column:2;grid-row:2/4}
.c-home .ui-home-news{grid-column:1/-1;grid-row:4;max-height:260px}
.c-home .ui-home-six{grid-template-columns:repeat(3,minmax(0,1fr));padding:20px;gap:14px}
.c-home .ui-home-stat{min-height:110px;padding:18px;background:#202124}
.c-home .ui-home-stat img{width:34px;height:34px}
.c-home .hqgo{display:flex;gap:12px;padding:16px}
.c-home .hqgo .btn{flex:1;min-height:60px;font-size:15px}
/* Contract / raid / squad / bounty operations. */
.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,1.65fr);gap:24px;align-items:start}
.c-contracts .contract,.c-raid .contract,.c-squad .contract,.c-bounty .bcard{background:#1b1c1f;border:1px solid #353639;border-radius:14px;box-shadow:none}
.c-contracts .contract.open,.c-raid .contract.open{border-color:#a18c3a;background:#24231b}
.c-contracts .ui-npc-header,.c-raid .ui-npc-header{border-radius:18px;overflow:hidden;margin-bottom:20px}
.c-raid .raid-objectives,.c-raid .raid-phases{gap:12px}
.c-squad .exact-lobby-detail .empty,.c-bounty .exact-bounty-detail .empty{min-height:200px}
.c-daily .ui-daily-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:24px}
.c-story .ui-story-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px}
.c-story .stchs{display:flex;flex-direction:column;gap:8px}
.c-story .stchs button{padding:14px;text-align:left;min-height:54px;border-radius:10px}
/* Relationship: character stage retained, reading/actions in a separate surface. */
.c-bond .exact-bond-grid,.c-bond .bstage-separated{gap:24px}
.c-bond .blist{gap:10px;padding:14px;background:#101113;border-radius:16px}
.c-bond .blist button{border-radius:10px;padding:10px;min-height:64px}
.c-bond .bvisual{border-radius:20px;overflow:hidden;border:1px solid #3c3930}
.c-bond .bside,.c-bond .exact-bond-detail{background:#141517;border:1px solid #303135;border-radius:18px;padding:22px}
.c-bond .bacts{gap:10px}.c-bond .bacts .btn{min-height:44px}
.c-bond .beps>*{border-radius:10px;margin-bottom:8px}
/* Equipment, procurement and exchange. */
.c-gear .gear-columns{grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px;align-items:start}
.c-gear .gear-main,.c-gear .gear-operator{padding:22px;background:#141517;border:1px solid #303135;border-radius:18px}
.c-gear .gear-loadout-card{background:#202124;border-radius:12px}
.c-gear .gear-operator .ui-stats{gap:8px}
.c-shop .shop-preview-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,1.65fr);gap:24px}
.c-shop .shop-preview-left{background:#111214;border:1px solid #303135;border-radius:16px;padding:18px}
.c-shop .shop-preview-right{padding:24px;border-radius:18px}
.c-market .ui-master-detail{grid-template-columns:minmax(290px,1fr) minmax(0,1.6fr)}
.c-hire .ui-master-detail{grid-template-columns:minmax(230px,.8fr) minmax(0,1.4fr) minmax(230px,.8fr)}
.c-talent .ui-talent-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px}
.c-talent .ui-talent-weapons{padding:18px;background:#111214;border:1px solid #303135;border-radius:16px}
.c-perk .ui-perk-nodes{gap:12px}.c-perk .ui-perk-node{border-radius:12px;min-height:76px}
/* Base and strategic planning. */
.c-hideout .ui-hideout-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}
.c-hideout .ui-hideout-queues{display:flex;flex-direction:column;gap:18px}
.c-hideout .ui-master-detail{grid-template-columns:minmax(200px,.8fr) minmax(0,1.4fr)}
.c-res .resgrid,.c-inf .infkinds,.c-inf .infregions{gap:16px}
.c-inf .ui-inf-recruit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(240px,.8fr);gap:20px}
.c-front .exact-front-grid{gap:24px;grid-template-columns:minmax(230px,.8fr) minmax(0,1.8fr) minmax(240px,.85fr)}
.c-front .exact-front-map{border-radius:20px;overflow:hidden;border:1px solid #3c3930}
/* Progress, records and reference screens. */
.c-quest .ui-master-detail{grid-template-columns:minmax(260px,1fr) minmax(0,1.6fr)}
.c-goals .ui-goals-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px}
.c-goals .achievement,.c-goals .goal,.c-goals .passstep{border-radius:12px;background:#1b1c1f;border-color:#303135}
.c-career .review-career-grid,.c-company .review-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px}
.c-ledger .ui-ledger-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}
.c-pvp .ui-master-detail{grid-template-columns:minmax(280px,1fr) minmax(0,1.6fr)}
.c-league .panel,.c-company .panel{margin-bottom:18px}
.c-codex .codexgrid,.c-codex .colgrid{gap:14px}
.c-manual .manual-layout,.c-manual .manualgrid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px}
.c-manual .manual-nav{padding:18px;border:1px solid #303135;border-radius:16px;background:#111214}
.c-manual .manual-body{padding:26px;border:1px solid #303135;border-radius:18px;background:#17181a;line-height:1.8}
.c-admin .panel{border-radius:14px;background:#141517}
.c-contracts .exact-contract-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.4fr);gap:24px;align-items:start}
.c-contracts .exact-contract-toolbar{background:#141517;border:1px solid #303135;border-radius:14px;padding:14px;gap:12px;margin-bottom:22px}
.c-contracts .exact-contract-row{background:#1b1c1f;border:1px solid #343538;border-radius:12px;margin-bottom:10px;padding:14px;min-height:94px}
.c-contracts .exact-contract-row.on{background:#28251b;border-color:#b7a044}
.c-contracts .exact-contract-detail{background:#17181a;border:1px solid #3c3930;border-radius:18px;padding:20px}
.c-contracts .exact-condition,.c-contracts .exact-rewards,.c-contracts .exact-departure{background:#202124;border:1px solid #343538;border-radius:12px;padding:14px}
.c-contracts .exact-contract-title{background:none;padding:0 0 16px}
.c-contracts .exact-contract-scene{border-radius:12px;margin-bottom:16px}
.c-bond .exact-bond-bio,.c-bond .exact-bond-dialogue{background:#17181a;border-color:#343538;border-radius:14px}
.c-bond .exact-bond-list-filter{display:flex;gap:8px;margin-bottom:12px}
.c-bond .bcard{background:#1b1c1f;border-color:#343538;border-radius:10px}
.c-bond .bcard.on{border-color:#b7a044;background:#28251b}
.c-bond .exact-episode{background:#1b1c1f;border-color:#343538;border-radius:12px}
.c-bond .pc-section-tabs .btn{background:#202124;border-color:#343538}
.c-bond .pc-section-tabs .btn.primary{background:#b7a044;color:#11120f}
/* Live combat, intermission and result panels share the same visual language. */
.combat.v2{gap:22px;grid-template-columns:minmax(240px,.8fr) minmax(0,1.9fr) minmax(280px,1fr)}
.combat.v2 .panel{background:#141517;border:1px solid #303135;border-radius:16px;overflow:hidden}
.combat.v2 .panel-h{background:none;padding:16px 20px}
.combat.v2 .panel-b{padding:18px}
.combat.v2 .turnbar,.combat.v2 .telebar,.combat.v2 .tstrip{background:#202124;border-color:#414033;border-radius:12px}
.combat.v2 .enemy,.combat.v2 .ecard,.combat.v2 .member{background:#1b1c1f;border-color:#343538;border-radius:12px}
.combat.v2 .combat-range-notice{background:#202124;border-color:#756628;border-radius:12px;padding:14px}
.combat.v2 .btn{min-height:42px;border-radius:10px}
.combat.v2 .btn.primary{background:#b7a044;color:#11120f}
.combat.v2 .log{background:#101113;border-radius:12px;padding:12px}
.combat.v2.over .main>.panel{border-color:#756628}
.cw-panel{background:#17181a;border:1px solid #756628;border-radius:20px;box-shadow:0 28px 90px #0008;color:#efefeb}
.cw-panel header{background:none;border-color:#303135;padding:18px 22px}
.cw-panel .cw-layout{gap:24px;padding:22px}
.cw-panel .cw-art{background:#111214;border-radius:14px}
.cw-panel .cw-ring{border-color:#b7a044}
.cw-panel .cw-status{color:#c5b05e}
.cw-panel .cw-option,.cw-panel .cw-row{background:#202124;border-color:#343538;border-radius:9px}
.cw-panel .btn.primary{background:#b7a044;color:#11120f}
.stable-dialog .modal{background:#17181a;border-radius:20px;border-color:#756628}
.stable-dialog .dialog-closebar{background:none;border-bottom:1px solid #303135}
.stable-dialog .modal .panel{background:#202124;border:1px solid #343538;border-radius:12px}
@media(min-width:901px) and (max-width:1399px){
 .c-screen .ui-master-detail:has(>.ui-compare),.c-hire .ui-master-detail,.c-front .exact-front-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr)}
 .c-screen .ui-compare,.c-front .exact-front-grid>*:last-child{grid-column:1/-1}
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr)}
 .c-hideout .ui-hideout-workspace{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:900px){
 .c-screen{--c-gap:14px}
 .c-screen .panel-h{padding:15px}.c-screen .panel-b{padding:15px}
 .c-screen .c-detail,.c-screen .c-list{padding:15px}
 .c-screen .c-tabs{position:relative;margin:0 0 10px;padding-bottom:10px}
 .c-screen .c-tabs button{min-height:42px}
 .c-screen .ui-master-detail,.c-screen .ui-master-detail:has(>.ui-compare),.c-home .ui-home-dashboard,.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns,.c-daily .ui-daily-layout,.c-story .ui-story-layout,.c-gear .gear-columns,.c-shop .shop-preview-grid,.c-market .ui-master-detail,.c-hire .ui-master-detail,.c-talent .ui-talent-layout,.c-hideout .ui-hideout-workspace,.c-hideout .ui-master-detail,.c-inf .ui-inf-recruit,.c-front .exact-front-grid,.c-quest .ui-master-detail,.c-goals .ui-goals-layout,.c-career .review-career-grid,.c-company .review-company-grid,.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout,.c-ledger .ui-ledger-layout,.c-pvp .ui-master-detail,.c-manual .manual-layout,.c-manual .manualgrid{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-home .ui-home-dashboard>*{grid-column:auto;grid-row:auto}
 .c-home .c-home-hero{min-height:260px;order:0}.c-home .c-home-actions{order:1}.c-home .ui-home-recommend{order:2}.c-home .ui-home-status{order:3}.c-home .c-home-operator{order:4}.c-home .ui-home-news{order:5}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}
 .c-home .ui-home-stat{min-height:92px;padding:12px;gap:8px}
 .c-home .hqgo{flex-direction:column;padding:12px}.c-home .hqgo .btn{min-height:46px}
 .c-screen .empty{padding:22px;min-height:0}
 .c-story .stchs{flex-direction:row;overflow:auto}.c-story .stchs button{flex:none;min-width:180px}
 .c-gear .gear-main,.c-gear .gear-operator,.c-shop .shop-preview-left,.c-shop .shop-preview-right{padding:14px}
 .c-bond .bside{padding:15px}.c-screen .ui-compare{grid-column:auto}
 .c-manual .manual-body{padding:18px}
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-contracts .exact-contract-detail{padding:15px}
 .c-bond .blist{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:stretch}
 .c-bond .exact-bond-list-filter{flex-direction:column;flex:none;width:90px;margin:0}
 .c-bond .blist .bcard{flex:none;width:155px;min-height:84px;padding:10px}
 .combat.v2{grid-template-columns:minmax(0,1fr);gap:14px}
 .combat.v2 .col{min-width:0}.combat.v2 .main{order:0}.combat.v2 .side{order:1}.combat.v2 .ops{order:2}
 .combat.v2 .panel-b{padding:14px}
 .cw-panel{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border-radius:16px}
 .cw-panel .cw-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
}

/* Background art: keep the complete frame at every viewport. */
.c-hideout .ui-detail .himg{height:auto!important;aspect-ratio:8/3;max-height:230px!important;margin:0 0 14px}
.c-hideout .ui-detail .himg img{width:100%;height:100%;object-fit:contain}

}
/* MOBILE-BASELINE-END */
/* DESKTOP-ONLY-BEGIN */
@media(min-width:901px){
/* Screen layouts: use native content and selected-state logic. */
.c-screen{--c-gap:24px;display:block;width:100%;min-width:0}
.c-screen .c-surface{background-color:#141517;background-image:none;border:1px solid #2c2d31;border-radius:18px;box-shadow:0 8px 28px #0002;overflow:hidden}
.c-screen .panel-h{padding:18px 22px;background:none}
.c-screen .panel-h h3{font-size:16px}
.c-screen .panel-b{padding:20px 22px}
.c-screen .c-list{background:#101113;border:1px solid #2c2d31;border-radius:16px;padding:14px;min-width:0}
.c-screen .c-detail{background:#17181a;border:1px solid #3c3930;border-radius:18px;padding:24px;min-width:0}
.c-screen .c-tabs{display:flex;gap:8px;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:4px 0 18px;margin-bottom:8px}
.c-screen .c-tabs button{flex:none;white-space:nowrap;min-height:40px;font-size:13px}
.c-screen .ui-toolbar{display:flex;gap:8px;margin-bottom:14px;align-items:center}
.c-screen .ui-toolbar input{min-width:0;flex:1;min-height:40px}
.c-screen .ui-master-detail{grid-template-columns:minmax(250px,.85fr) minmax(0,1.7fr);gap:var(--c-gap);align-items:start}
.c-screen .ui-master-detail:has(>.ui-compare){grid-template-columns:minmax(230px,.8fr) minmax(0,1.4fr) minmax(230px,.75fr)}
.c-screen .ui-list-card{margin:0 0 10px;padding:16px;background:#1a1b1e;border:1px solid #303135;border-radius:12px;color:#e8e8e3;min-height:68px;box-shadow:none}
.c-screen .ui-list-card.on,.c-screen .ui-list-card.selected,.c-screen .ui-list-card.open{background:#27251b;border-color:#a18c3a}
.c-screen .ui-list-card b{font-size:14px;line-height:1.4}
.c-screen .ui-hero-head{padding:18px;background:#202124;border:1px solid #353639;border-radius:14px;margin-bottom:18px}
.c-screen .ui-costs{gap:10px;margin:16px 0}
.c-screen .ui-costs>div,.c-screen .ui-stats>div{padding:12px;border-radius:10px;background:#202124;border:1px solid #303135}
.c-screen .ui-compare h3{font-size:15px;margin-bottom:12px}
.c-screen table{width:100%}.c-screen .tablewrap{border:1px solid #303135;border-radius:12px;overflow:auto}
.c-screen .empty{min-height:0;padding:28px;border:1px dashed #44433a;background:#151618;text-align:left}
.c-screen .empty h3{font-size:18px;margin-bottom:12px}
.c-screen .empty .btn{margin-top:16px;width:auto}
.c-screen details{background:#111214;border:1px solid #303135;border-radius:10px;margin:10px 0}
.c-screen details>summary{font-size:13px;padding:13px 16px}
.c-screen details[open]{border-color:#756628}
.c-screen details[open]>summary{border-bottom:1px solid #303135;color:#d4bd60}
/* HQ: hero and actions first; operational overview underneath. */
.c-home .ui-home-dashboard{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px}
.c-home .c-home-hero{grid-column:1;grid-row:1;min-height:340px;border-radius:20px;overflow:hidden}
.c-home .c-home-actions{grid-column:1;grid-row:2}
.c-home .c-home-operator{grid-column:2;grid-row:1}
.c-home .ui-home-status{grid-column:1;grid-row:3}
.c-home .ui-home-recommend{grid-column:2;grid-row:2/4}
.c-home .ui-home-news{grid-column:1/-1;grid-row:4;max-height:260px}
.c-home .ui-home-six{grid-template-columns:repeat(3,minmax(0,1fr));padding:20px;gap:14px}
.c-home .ui-home-stat{min-height:110px;padding:18px;background:#202124}
.c-home .ui-home-stat img{width:34px;height:34px}
.c-home .hqgo{display:flex;gap:12px;padding:16px}
.c-home .hqgo .btn{flex:1;min-height:60px;font-size:15px}
/* Contract / raid / squad / bounty operations. */
.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns{display:grid;grid-template-columns:minmax(280px,1fr) minmax(0,1.65fr);gap:24px;align-items:start}
.c-contracts .contract,.c-raid .contract,.c-squad .contract,.c-bounty .bcard{background:#1b1c1f;border:1px solid #353639;border-radius:14px;box-shadow:none}
.c-contracts .contract.open,.c-raid .contract.open{border-color:#a18c3a;background:#24231b}
.c-contracts .ui-npc-header,.c-raid .ui-npc-header{border-radius:18px;overflow:hidden;margin-bottom:20px}
.c-raid .raid-objectives,.c-raid .raid-phases{gap:12px}
.c-squad .exact-lobby-detail .empty,.c-bounty .exact-bounty-detail .empty{min-height:200px}
.c-daily .ui-daily-layout{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);gap:24px}
.c-story .ui-story-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px}
.c-story .stchs{display:flex;flex-direction:column;gap:8px}
.c-story .stchs button{padding:14px;text-align:left;min-height:54px;border-radius:10px}
/* Relationship: character stage retained, reading/actions in a separate surface. */
.c-bond .exact-bond-grid,.c-bond .bstage-separated{gap:24px}
.c-bond .blist{gap:10px;padding:14px;background:#101113;border-radius:16px}
.c-bond .blist button{border-radius:10px;padding:10px;min-height:64px}
.c-bond .bvisual{border-radius:20px;overflow:hidden;border:1px solid #3c3930}
.c-bond .bside,.c-bond .exact-bond-detail{background:#141517;border:1px solid #303135;border-radius:18px;padding:22px}
.c-bond .bacts{gap:10px}.c-bond .bacts .btn{min-height:44px}
.c-bond .beps>*{border-radius:10px;margin-bottom:8px}
/* Equipment, procurement and exchange. */
.c-gear .gear-columns{grid-template-columns:minmax(0,1.8fr) minmax(300px,1fr);gap:24px;align-items:start}
.c-gear .gear-main,.c-gear .gear-operator{padding:22px;background:#141517;border:1px solid #303135;border-radius:18px}
.c-gear .gear-loadout-card{background:#202124;border-radius:12px}
.c-gear .gear-operator .ui-stats{gap:8px}
.c-shop .shop-preview-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,1.65fr);gap:24px}
.c-shop .shop-preview-left{background:#111214;border:1px solid #303135;border-radius:16px;padding:18px}
.c-shop .shop-preview-right{padding:24px;border-radius:18px}
.c-market .ui-master-detail{grid-template-columns:minmax(290px,1fr) minmax(0,1.6fr)}
.c-hire .ui-master-detail{grid-template-columns:minmax(230px,.8fr) minmax(0,1.4fr) minmax(230px,.8fr)}
.c-talent .ui-talent-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px}
.c-talent .ui-talent-weapons{padding:18px;background:#111214;border:1px solid #303135;border-radius:16px}
.c-perk .ui-perk-nodes{gap:12px}.c-perk .ui-perk-node{border-radius:12px;min-height:76px}
/* Base and strategic planning. */
.c-hideout .ui-hideout-workspace{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}
.c-hideout .ui-hideout-queues{display:flex;flex-direction:column;gap:18px}
.c-hideout .ui-master-detail{grid-template-columns:minmax(200px,.8fr) minmax(0,1.4fr)}
.c-res .resgrid,.c-inf .infkinds,.c-inf .infregions{gap:16px}
.c-inf .ui-inf-recruit{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(240px,.8fr);gap:20px}
.c-front .exact-front-grid{gap:24px;grid-template-columns:minmax(230px,.8fr) minmax(0,1.8fr) minmax(240px,.85fr)}
.c-front .exact-front-map{border-radius:20px;overflow:hidden;border:1px solid #3c3930}
/* Progress, records and reference screens. */
.c-quest .ui-master-detail{grid-template-columns:minmax(260px,1fr) minmax(0,1.6fr)}
.c-goals .ui-goals-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr);gap:24px}
.c-goals .achievement,.c-goals .goal,.c-goals .passstep{border-radius:12px;background:#1b1c1f;border-color:#303135}
.c-career .review-career-grid,.c-company .review-company-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px}
.c-ledger .ui-ledger-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr);gap:24px}
.c-pvp .ui-master-detail{grid-template-columns:minmax(280px,1fr) minmax(0,1.6fr)}
.c-league .panel,.c-company .panel{margin-bottom:18px}
.c-codex .codexgrid,.c-codex .colgrid{gap:14px}
.c-manual .manual-layout,.c-manual .manualgrid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px}
.c-manual .manual-nav{padding:18px;border:1px solid #303135;border-radius:16px;background:#111214}
.c-manual .manual-body{padding:26px;border:1px solid #303135;border-radius:18px;background:#17181a;line-height:1.8}
.c-admin .panel{border-radius:14px;background:#141517}
/* Patch 5 · Frontline, raids, base and story operations. */
@media(min-width:901px){
 .c-front .exact-front-grid{grid-template-columns:minmax(220px,.8fr) minmax(360px,1.5fr) minmax(230px,.85fr);gap:16px;align-items:start}
 .c-front .exact-front-regions,.c-front .exact-world-map,.c-front .exact-front-detail{min-width:0;padding:14px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-front .exact-front-regions{max-height:calc(100dvh - 220px);overflow:auto}
 .c-front .exact-erosion-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;width:100%;margin:6px 0;padding:10px;text-align:left;background:#1a1b1e;border:1px solid #303135;border-radius:10px;color:#ecebe5}
 .c-front .exact-erosion-row .bar{grid-column:1/-1;height:6px}
 .c-front .exact-world-map-art{position:relative;min-height:440px;overflow:hidden;border:1px solid #303135;border-radius:12px;background:#101214}
 .c-front .exact-world-map-art>img{display:block;width:100%;height:100%;min-height:440px;object-fit:cover}
 .c-front .exact-map-pin{position:absolute;z-index:1;transform:translate(-50%,-50%);min-width:26px;min-height:26px;padding:3px;border:1px solid #e1c56a;border-radius:20px;background:#171812e8;color:#f5e9b6}
 .c-front .exact-map-pin span{position:absolute;left:50%;top:calc(100% + 3px);transform:translateX(-50%);max-width:150px;padding:3px 6px;border-radius:4px;background:#0d0e10e8;font-size:10px;white-space:nowrap;pointer-events:none}
 .c-front .exact-map-pin.fallen{border-color:#d87664;background:#381b18e8}
 .c-front .exact-front-detail>.fcard{margin:0}
 .c-front .exact-faction-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}
 .c-front .exact-front-extra{margin-top:12px}
 .c-raid .pc-section-tabs,.c-front .pc-section-tabs,.c-hideout .pc-section-tabs{position:sticky;top:0;z-index:3;padding:8px;background:#111214;border:1px solid #303135;border-radius:12px}
 .c-raid .ui-master-detail{grid-template-columns:minmax(260px,.8fr) minmax(0,1.4fr);gap:18px}
 .c-raid .ui-master-list,.c-raid .ui-detail{max-height:calc(100dvh - 230px);overflow:auto}
 .c-raid .exact-raid-scene{height:220px;object-fit:cover;border-radius:12px}
 .c-hideout .ui-hideout-workspace{grid-template-columns:minmax(0,1.6fr) minmax(280px,.8fr);gap:18px}
 .c-hideout .ui-master-detail{grid-template-columns:minmax(210px,.75fr) minmax(0,1.35fr);gap:16px}
 .c-hideout .ui-master-list,.c-hideout .ui-detail{max-height:calc(100dvh - 240px);overflow:auto}
 .c-hideout.pc-page[data-pc-page=hideout] .hidepano{margin-bottom:14px}
 .c-hideout .ui-hideout-queues>.panel{background:#141517;border:1px solid #303135;border-radius:14px}
 .c-story .ui-story-layout{grid-template-columns:minmax(260px,.72fr) minmax(0,1.5fr);gap:18px;align-items:stretch}
 .c-story .stchs{max-height:calc(100dvh - 220px);overflow:auto;padding:12px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-story .stchs button{min-height:68px;background:#1a1b1e;border:1px solid #303135;border-radius:10px}
 .c-story .stchs button.on,.c-story .stchs button.active{border-color:#d4b25a;background:#28251b}
 .c-story .storyp{min-height:calc(100dvh - 230px);padding:20px;background:#141517;border:1px solid #303135;border-radius:14px}
}
/* Patch 6 · Hiring, squads, talents, companies and duels. */
@media(min-width:901px){
 .c-hire .ui-three{grid-template-columns:minmax(250px,.9fr) minmax(350px,1.25fr) minmax(260px,.9fr);gap:16px;align-items:start}
 .c-hire .ui-candidate-list,.c-hire .ui-selected,.c-hire .ui-compare{max-height:calc(100dvh - 230px);overflow:auto;padding:14px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-hire .ui-candidate{min-height:112px;margin-bottom:8px;background:#1b1c1f;border:1px solid #303135;border-radius:12px}
 .c-hire .ui-candidate.on{border-color:#d4b25a;background:#28251b}
 .c-hire .ui-compare{position:sticky;top:12px}
 .c-squad .exact-lobby-columns{grid-template-columns:minmax(300px,1fr) minmax(360px,1fr);gap:18px}
 .c-squad .exact-lobby-list,.c-squad .exact-lobby-detail{max-height:calc(100dvh - 220px);overflow:auto;padding:14px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-squad .exact-squad .pc-section-tabs{position:sticky;top:0;z-index:3;padding:8px;background:#111214;border:1px solid #303135;border-radius:12px}
 .c-squad .exact-lobby-list .ui-list-item{min-height:72px}
 .c-perk .ui-master-detail{grid-template-columns:minmax(240px,.8fr) minmax(0,1.5fr);gap:18px}
 .c-perk .ui-perk-flow{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:18px;align-items:start}
 .c-perk .ui-perk-nodes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .c-perk .ui-perk-node{min-height:98px;padding:14px;background:#191a1d;border:1px solid #303135;border-radius:12px;text-align:left}
 .c-perk .ui-perk-node.on{border-color:#d4b25a;background:#28251b}
 .c-perk .ui-perk-detail{padding:18px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-company .pc-workspace>.pc-section-tabs{position:sticky;top:0;z-index:3;padding:8px;background:#111214;border:1px solid #303135;border-radius:12px}
 .c-company .pc-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-content:start}
 .c-company .pc-section>[hidden]{display:none}
 .c-company .pc-section>.panel,.c-company .pc-section>.tablewrap{min-width:0;margin:0;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-company .pc-section>.warbox{grid-column:1/-1}
 .c-pvp .ui-master-detail{grid-template-columns:minmax(300px,.9fr) minmax(0,1.5fr);gap:18px}
 .c-pvp .ui-master-list,.c-pvp .ui-detail{max-height:calc(100dvh - 230px);overflow:auto;padding:14px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-pvp .exact-opponent{margin-bottom:8px;padding:12px;background:#1b1c1f;border:1px solid #303135;border-radius:12px}
 .c-pvp .exact-opponent:hover,.c-pvp .exact-opponent.selected{border-color:#d4b25a;background:#28251b}
}
/* Patch 4 · Equipment, procurement and exchange. Keep existing delegated actions and page state. */
@media(min-width:901px){
 .c-gear .gear-dashboard{min-width:0}
 .c-gear .gear-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 14px;border-bottom:1px solid #303135}
 .c-gear .gear-columns{grid-template-columns:minmax(0,1.75fr) minmax(300px,.9fr);gap:18px;align-items:start}
 .c-gear .gear-warehouse,.c-gear .gear-current{min-width:0;background:#141517;border:1px solid #303135;border-radius:16px;padding:16px}
 .c-gear .gear-tabs{position:sticky;top:0;z-index:3;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin;padding:8px 0 12px;background:#141517}
 .c-gear .gear-tabs .btn{flex:0 0 auto;min-height:42px;white-space:nowrap}
 .c-gear .gear-section{min-width:0}
 .c-gear .gear-section .tablewrap{max-height:calc(100dvh - 310px);overflow:auto;border:1px solid #303135;border-radius:12px}
 .c-gear .gear-section .tablewrap thead{position:sticky;top:0;z-index:1;background:#1b1c1f}
 .c-gear .gear-current{position:sticky;top:12px;max-height:calc(100dvh - 104px);overflow:auto}
 .c-gear .gear-current .gear-effect-summary{margin-top:14px}
 .c-shop .shop-preview-grid{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:18px}
 .c-shop .shop-preview-products{max-height:calc(100dvh - 430px);overflow:auto;overscroll-behavior:contain;padding-right:4px}
 .c-shop .shop-preview-product{border:1px solid #303135;border-radius:12px;background:#191a1d}
 .c-shop .shop-preview-product.selected{border-color:#d4b25a;background:#242219}
 .c-shop .shop-preview-right{position:sticky;top:12px;max-height:calc(100dvh - 104px);overflow:auto}
 .c-market .mkhead{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px;padding:10px 12px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-market .mktabs{display:flex;gap:6px;flex-wrap:nowrap;overflow:auto;scrollbar-width:thin}
 .c-market .mktab{min-height:42px;white-space:nowrap;border-radius:9px}
 .c-market .mktab.on{border-color:#d4b25a;background:#28251b;color:#f0d982}
 .c-market .mktick{flex:1;min-width:240px}
 .c-market .mkbody{grid-template-columns:minmax(0,1.55fr) minmax(320px,.9fr);gap:18px;min-height:0;background:transparent;border:0;align-items:start}
 .c-market .review-market-list,.c-market .mkbody>.mklist,.c-market .mkdet,.c-market .mkpad{background:#141517;border:1px solid #303135;border-radius:14px;padding:14px;min-width:0}
 .c-market .mkdet{position:sticky;top:12px;max-height:calc(100dvh - 110px);overflow:auto}
 .c-market .mkrow{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;margin-bottom:8px;background:#191a1d;border:1px solid #303135;border-radius:10px}
 .c-market .mkrow>img{width:56px;height:56px;object-fit:contain}
}
.c-contracts .exact-contract-layout{display:grid;grid-template-columns:minmax(300px,.9fr) minmax(0,1.4fr);gap:24px;align-items:start}
.c-contracts .exact-contract-toolbar{background:#141517;border:1px solid #303135;border-radius:14px;padding:14px;gap:12px;margin-bottom:22px}
.c-contracts .exact-contract-row{background:#1b1c1f;border:1px solid #343538;border-radius:12px;margin-bottom:10px;padding:14px;min-height:94px}
.c-contracts .exact-contract-row.on{background:#28251b;border-color:#b7a044}
.c-contracts .exact-contract-detail{background:#17181a;border:1px solid #3c3930;border-radius:18px;padding:20px}
.c-contracts .exact-condition,.c-contracts .exact-rewards,.c-contracts .exact-departure{background:#202124;border:1px solid #343538;border-radius:12px;padding:14px}
.c-contracts .exact-contract-title{background:none;padding:0 0 16px}
.c-contracts .exact-contract-scene{border-radius:12px;margin-bottom:16px}
.c-bond .exact-bond-bio,.c-bond .exact-bond-dialogue{background:#17181a;border-color:#343538;border-radius:14px}
.c-bond .exact-bond-list-filter{display:flex;gap:8px;margin-bottom:12px}
.c-bond .bcard{background:#1b1c1f;border-color:#343538;border-radius:10px}
.c-bond .bcard.on{border-color:#b7a044;background:#28251b}
.c-bond .exact-episode{background:#1b1c1f;border-color:#343538;border-radius:12px}
@media(min-width:901px){.c-bond .bspecial{display:flex;align-items:center;min-height:54px;padding:10px 12px;margin:0 0 8px;border:1px solid #6a5721;border-radius:10px;background:#292315;color:#e8dbad;cursor:pointer}.c-bond .bspecial .binfo{display:flex;flex-direction:column;gap:4px}.c-bond .bspecial .dim{font-size:11px}}
@media(min-width:901px){
 .c-bond .exact-bond-look-options,.c-bond .exact-bond-main-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
 .c-bond .exact-bond-main-options{grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;padding-top:12px;border-top:1px solid #303135}
 .c-bond .exact-bond-main-options>.dim{font-size:13px}
 .c-bond .exact-bond-look-options .btn,.c-bond .exact-bond-main-options .btn{min-height:44px;white-space:normal}
 .c-bond .exact-bond-appearance .panel-b>p{line-height:1.6;margin:0}
 .c-bond .bgift{margin:0 0 12px;padding:0 12px 12px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-bond .bgift .bginv{grid-template-columns:repeat(3,minmax(0,1fr));max-height:260px}
 .c-bond .bgift .panel-h{padding:10px 0}
 .c-bond .bond-gift-group-title{margin:10px 0 6px;color:#d4bd60;font-size:13px}
 .c-bond .bond-gift-consumables{margin-top:10px}
 .c-bond .bond-gift-consumables>.bginv{padding-top:10px}
}
.c-bond .pc-section-tabs .btn{background:#202124;border-color:#343538}
.c-bond .pc-section-tabs .btn.primary{background:#b7a044;color:#11120f}
/* Live combat, intermission and result panels share the same visual language. */
.combat.v2{gap:22px;grid-template-columns:minmax(240px,.8fr) minmax(0,1.9fr) minmax(280px,1fr)}
.combat.v2 .panel{background:#141517;border:1px solid #303135;border-radius:16px;overflow:hidden}
.combat.v2 .panel-h{background:none;padding:16px 20px}
.combat.v2 .panel-b{padding:18px}
.combat.v2 .turnbar,.combat.v2 .telebar,.combat.v2 .tstrip{background:#202124;border-color:#414033;border-radius:12px}
.combat.v2 .enemy,.combat.v2 .ecard,.combat.v2 .member{background:#1b1c1f;border-color:#343538;border-radius:12px}
.combat.v2 .combat-range-notice{background:#202124;border-color:#756628;border-radius:12px;padding:14px}
.combat.v2 .btn{min-height:42px;border-radius:10px}
.combat.v2 .btn.primary{background:#b7a044;color:#11120f}
.combat.v2 .log{background:#101113;border-radius:12px;padding:12px}
.combat.v2.over .main>.panel{border-color:#756628}
.cw-panel{background:#17181a;border:1px solid #756628;border-radius:20px;box-shadow:0 28px 90px #0008;color:#efefeb}
.cw-panel header{background:none;border-color:#303135;padding:18px 22px}
.cw-panel .cw-layout{gap:24px;padding:22px}
.cw-panel .cw-art{background:#111214;border-radius:14px}
.cw-panel .cw-ring{border-color:#b7a044}
.cw-panel .cw-status{color:#c5b05e}
.cw-panel .cw-option,.cw-panel .cw-row{background:#202124;border-color:#343538;border-radius:9px}
.cw-panel .btn.primary{background:#b7a044;color:#11120f}
.stable-dialog .modal{background:#17181a;border-radius:20px;border-color:#756628}
.stable-dialog .dialog-closebar{background:none;border-bottom:1px solid #303135}
.stable-dialog .modal .panel{background:#202124;border:1px solid #343538;border-radius:12px}
@media(min-width:901px) and (max-width:1399px){
 .c-screen .ui-master-detail:has(>.ui-compare),.c-hire .ui-master-detail,.c-front .exact-front-grid{grid-template-columns:minmax(220px,.8fr) minmax(0,1.5fr)}
 .c-screen .ui-compare,.c-front .exact-front-grid>*:last-child{grid-column:1/-1}
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.5fr) minmax(240px,1fr)}
 .c-hideout .ui-hideout-workspace{grid-template-columns:minmax(0,1fr)}
}

/* Patch 2 · operation result / failure report (s06) desktop frame. */
@media(min-width:901px){
 .desktop-combat-result{display:grid!important;grid-template-columns:minmax(0,2.05fr) minmax(320px,.82fr)!important;gap:18px;align-items:start}
 .desktop-combat-result>.main,.desktop-combat-result>.ops{min-width:0;max-height:calc(100vh - 140px);overflow:auto;scrollbar-gutter:stable}
 .desktop-combat-result>.main{grid-column:1}
 .desktop-combat-result>.ops{grid-column:2;display:flex;flex-direction:column;gap:12px}
 .desktop-combat-result>.main>.panel{border:1px solid #2c3139;border-radius:14px;background:#15171b;overflow:hidden}
 .desktop-combat-result>.main>.panel>.panel-h{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #2c3139}
 .desktop-combat-result>.main>.panel>.panel-b{padding:18px 20px 24px}
 .desktop-combat-result .dban{min-height:180px;margin:0 0 14px;padding:22px;border-radius:12px;background-size:cover;background-position:center}
 .desktop-combat-result .dban .dt{font-size:27px;font-weight:900}
 .desktop-combat-result .dkpi{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}
 .desktop-combat-result .lootgrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:9px}
 .desktop-combat-result .lootgrid .lt{min-width:0}
 .desktop-combat-result .desktop-result-channel{padding:14px;border:1px solid #33484b;border-left:3px solid #6fc6a1;border-radius:12px;background:#141819}
 .desktop-combat-result .desktop-result-channel>h3{margin:0 0 10px;color:#6fc6a1;font-size:14px}
 .desktop-combat-result .desktop-result-channel .cries{max-height:42vh;overflow:auto}
 .desktop-combat-result .desktop-result-channel .cry{margin:8px 0;padding:9px;border-radius:9px;background:#1b2021}
 .desktop-combat-result .againrow{position:sticky;bottom:0;display:flex;gap:8px;margin-top:16px;padding:10px 0 0;background:linear-gradient(transparent,#15171b 30%)}
 .desktop-combat-result .againrow>.btn,.desktop-combat-result>.main [data-a="exitCombat"]{min-height:48px}
}
@media(min-width:901px) and (max-width:1399px){
 .desktop-combat-result{grid-template-columns:minmax(0,1.8fr) minmax(290px,.9fr)!important;gap:12px}
 .desktop-combat-result .lootgrid{grid-template-columns:repeat(4,minmax(0,1fr))}
 .desktop-combat-result .dban{min-height:150px}
}

/* Patch 2 · sortie preflight (s05), entered before the existing takeContract API action. */
@media(min-width:901px){
 .c-contracts .exact-sortie-prep{padding-bottom:96px}
 .c-contracts .exact-prep-head{display:flex;align-items:center;gap:18px;margin-bottom:18px;padding:6px 2px}
 .c-contracts .exact-prep-head h2{margin:5px 0;font-size:24px}
 .c-contracts .exact-prep-head p{margin:0;color:#a3a8b0}
 .c-contracts .exact-prep-layout{display:grid;grid-template-columns:minmax(260px,.92fr) minmax(0,1.48fr) minmax(300px,.9fr);gap:16px;align-items:stretch}
 .c-contracts .exact-prep-layout>.pn{min-width:0;padding:18px;background:#15171b;border:1px solid #2c3139;border-radius:14px}
 .c-contracts .exact-prep-layout h3{margin:0 0 13px;font-size:15px}
 .c-contracts .exact-prep-scene{display:block;width:100%;height:148px;margin-bottom:14px;object-fit:cover;border-radius:9px}
 .c-contracts .exact-prep-mission>.kv{display:grid;grid-template-columns:80px minmax(0,1fr);gap:8px;border-top:1px solid #30343a;padding-top:10px}
 .c-contracts .exact-prep-mission>.kv dt{color:#858b95}.c-contracts .exact-prep-mission>.kv dd{margin:0;text-align:right}
 .c-contracts .exact-prep-equipment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
 .c-contracts .exact-prep-equipment{display:grid;grid-template-rows:auto minmax(64px,1fr) auto auto;justify-items:center;gap:5px;min-width:0;min-height:142px;padding:11px;background:#1b1e23;border:1px solid #30343a;border-radius:10px;text-align:center}
 .c-contracts .exact-prep-equipment>small:first-child{justify-self:start;color:#858b95}
 .c-contracts .exact-prep-equipment img{width:100%;height:70px;object-fit:contain}
 .c-contracts .exact-prep-equipment>b{font-size:12px;overflow-wrap:anywhere}
 .c-contracts .exact-prep-items{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-bottom:12px}
 .c-contracts .exact-prep-item{display:grid;justify-items:center;gap:4px;min-width:0;padding:8px 4px;text-align:center;font-size:10px}
 .c-contracts .exact-prep-item .ico{width:34px;height:34px;object-fit:contain}
 .c-contracts .exact-prep-item>b{max-width:100%;overflow-wrap:anywhere}
 .c-contracts .exact-prep-item>span{color:#d4b25a}
 .c-contracts .exact-prep-summary{align-self:start}
 .c-contracts .exact-prep-readiness{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px dashed #343840}
 .c-contracts .exact-prep-readiness>span{color:#a3a8b0}
 .c-contracts .exact-prep-chance{display:grid;grid-template-columns:1fr auto;gap:6px;margin:14px 0;padding:12px;border:1px solid #353943;border-radius:9px;background:#1b1e23}
 .c-contracts .exact-prep-chance>b{color:#d4b25a;font-size:20px}
 .c-contracts .exact-prep-chance>small{grid-column:1/-1;color:#858b95;line-height:1.45}
 .c-contracts .exact-prep-summary>.cact{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}
 .c-contracts .exact-prep-partner{margin-top:12px}
 .c-contracts .exact-prep-partner .hsay.partner{display:flex;align-items:center;gap:8px;padding:9px;border:1px solid #33484b;border-left:3px solid #6fc6a1;border-radius:10px;background:#121718}
 .c-contracts .exact-prep-partner .hsay.partner>img{width:62px;height:76px;object-fit:contain}
 .c-contracts .exact-prep-partner .hs-b{min-width:0}
 .c-contracts .exact-prep-partner .bacts{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px}
 .c-contracts .exact-prep-footer{position:fixed;z-index:55;right:22px;bottom:18px;display:flex;justify-content:flex-end;gap:8px;width:min(420px,calc(100vw - 110px));padding:10px;border:1px solid #8e7837;border-radius:12px;background:#17181ae8;box-shadow:0 8px 28px #0009;backdrop-filter:blur(8px)}
 .c-contracts .exact-prep-footer>[data-a="takeContract"]{flex:1;min-height:58px;background:linear-gradient(120deg,#e5c76b,#b4933d);color:#17130a;font-size:16px;font-weight:900}
}
@media(min-width:901px) and (max-width:1399px){
 .c-contracts .exact-prep-layout{grid-template-columns:minmax(225px,.9fr) minmax(0,1.35fr) minmax(250px,.92fr);gap:10px}
 .c-contracts .exact-prep-layout>.pn{padding:12px}
 .c-contracts .exact-prep-equipment{min-height:124px;padding:8px}
 .c-contracts .exact-prep-scene{height:120px}
 .c-contracts .exact-prep-footer{right:14px;bottom:12px;width:min(350px,calc(100vw - 100px))}
}

/* Patch 2 · contract board and selected contract rail (s04). */
@media(min-width:901px){
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,2fr) minmax(340px,.92fr);gap:16px;align-items:start}
 .c-contracts .exact-contract-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;align-content:start;max-height:calc(100vh - 236px);overflow:auto;scrollbar-gutter:stable}
 .c-contracts .exact-contract-list>header,.c-contracts .exact-contract-list>.pc-pager,.c-contracts .exact-contract-list>.empty{grid-column:1/-1}
 .c-contracts .exact-contract-list>header{display:grid;grid-template-columns:1fr auto;border:0;margin:0;padding:0 3px 4px}
 .c-contracts .exact-contract-list>header>span{display:none}
 .c-contracts .exact-contract-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:86px auto auto;gap:6px 8px;min-width:0;min-height:185px;margin:0;padding:8px;align-content:start;overflow:hidden}
 .c-contracts .exact-contract-row>img{grid-column:1/-1;grid-row:1;width:calc(100% + 16px);height:86px;margin:-8px -8px 0;object-fit:cover;border-radius:0;mask-image:linear-gradient(#000 55%,transparent)}
 .c-contracts .exact-contract-row>.exact-tier{position:absolute;top:9px;left:9px;width:34px;height:38px;font-size:19px;background:#101113e8}
 .c-contracts .exact-contract-description{grid-column:1/-1;grid-row:2;gap:4px;min-width:0}
 .c-contracts .exact-contract-description>b{font-size:14px;line-height:1.35}
 .c-contracts .exact-contract-description>small{font-size:10px;line-height:1.4}
 .c-contracts .exact-row-reward{grid-column:1;grid-row:3;flex-direction:row;gap:6px;align-items:baseline;min-width:0;flex-wrap:wrap}
 .c-contracts .exact-row-reward>b{font-size:11px}
 .c-contracts .exact-row-deadline{grid-column:2;grid-row:3;align-self:center;font-size:10px;white-space:nowrap}
 .c-contracts .exact-contract-detail{grid-column:2;grid-row:1;padding:16px;padding-bottom:104px;max-height:calc(100vh - 236px);overflow:auto}
 .c-contracts .exact-contract-partner{grid-column:2;grid-row:2;min-width:0}
 .c-contracts .exact-contract-partner .hsay.partner{display:flex;align-items:center;gap:12px;margin:0;padding:12px;border:1px solid #33484b;border-left:3px solid #6fc6a1;border-radius:12px;background:#151a1b}
 .c-contracts .exact-contract-partner .hsay.partner>img{flex:0 0 72px;width:72px;height:84px;object-fit:contain}
 .c-contracts .exact-contract-partner .hs-b{min-width:0}
 .c-contracts .exact-contract-partner .hs-n{color:#6fc6a1;font-weight:800}
 .c-contracts .exact-contract-partner .bacts{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}
 .c-contracts .exact-contract-partner .bacts .btn{min-height:34px;padding:5px 9px}
 .c-contracts .exact-take{position:fixed;z-index:55;right:22px;bottom:18px;width:min(380px,calc(100vw - 110px));padding:12px;border:1px solid #8e7837;border-radius:12px;background:#17181a;box-shadow:0 8px 28px #0009}
 .c-contracts .exact-take>.btn{width:100%;min-height:58px;background:linear-gradient(120deg,#e5c76b,#b4933d);color:#17130a;font-size:16px;font-weight:900}
 .c-contracts .exact-take>span{display:block;margin-top:5px;text-align:center;color:#a3a8b0;font-size:11px}
}
@media(min-width:1500px){
 .c-contracts .exact-contract-list{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(min-width:901px) and (max-width:1399px){
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1.7fr) minmax(300px,.9fr)}
 .c-contracts .exact-contract-list{max-height:calc(100vh - 220px)}
 .c-contracts .exact-contract-detail{max-height:calc(100vh - 220px);padding:12px;padding-bottom:95px}
 .c-contracts .exact-contract-row{min-height:175px;grid-template-rows:74px auto auto}
 .c-contracts .exact-contract-row>img{height:74px}
 .c-contracts .exact-take{right:15px;bottom:12px;width:min(320px,calc(100vw - 105px))}
}
@media(max-width:900px){
 .c-screen{--c-gap:14px}
 .c-screen .panel-h{padding:15px}.c-screen .panel-b{padding:15px}
 .c-screen .c-detail,.c-screen .c-list{padding:15px}
 .c-screen .c-tabs{position:relative;margin:0 0 10px;padding-bottom:10px}
 .c-screen .c-tabs button{min-height:42px}
 .c-screen .ui-master-detail,.c-screen .ui-master-detail:has(>.ui-compare),.c-home .ui-home-dashboard,.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns,.c-daily .ui-daily-layout,.c-story .ui-story-layout,.c-gear .gear-columns,.c-shop .shop-preview-grid,.c-market .ui-master-detail,.c-hire .ui-master-detail,.c-talent .ui-talent-layout,.c-hideout .ui-hideout-workspace,.c-hideout .ui-master-detail,.c-inf .ui-inf-recruit,.c-front .exact-front-grid,.c-quest .ui-master-detail,.c-goals .ui-goals-layout,.c-career .review-career-grid,.c-company .review-company-grid,.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout,.c-ledger .ui-ledger-layout,.c-pvp .ui-master-detail,.c-manual .manual-layout,.c-manual .manualgrid{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-home .ui-home-dashboard>*{grid-column:auto;grid-row:auto}
 .c-home .c-home-hero{min-height:260px;order:0}.c-home .c-home-actions{order:1}.c-home .ui-home-recommend{order:2}.c-home .ui-home-status{order:3}.c-home .c-home-operator{order:4}.c-home .ui-home-news{order:5}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}
 .c-home .ui-home-stat{min-height:92px;padding:12px;gap:8px}
 .c-home .hqgo{flex-direction:column;padding:12px}.c-home .hqgo .btn{min-height:46px}
 .c-screen .empty{padding:22px;min-height:0}
 .c-story .stchs{flex-direction:row;overflow:auto}.c-story .stchs button{flex:none;min-width:180px}
 .c-gear .gear-main,.c-gear .gear-operator,.c-shop .shop-preview-left,.c-shop .shop-preview-right{padding:14px}
 .c-bond .bside{padding:15px}.c-screen .ui-compare{grid-column:auto}
 .c-manual .manual-body{padding:18px}
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-contracts .exact-contract-detail{padding:15px}
 .c-bond .blist{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:stretch}
 .c-bond .exact-bond-list-filter{flex-direction:column;flex:none;width:90px;margin:0}
 .c-bond .blist .bcard{flex:none;width:155px;min-height:84px;padding:10px}
 .combat.v2{grid-template-columns:minmax(0,1fr);gap:14px}
 .combat.v2 .col{min-width:0}.combat.v2 .main{order:0}.combat.v2 .side{order:1}.combat.v2 .ops{order:2}
 .combat.v2 .panel-b{padding:14px}
 .cw-panel{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border-radius:16px}
 .cw-panel .cw-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
}

/* Background art: keep the complete frame at every viewport. */
.c-hideout .ui-detail .himg{height:auto!important;aspect-ratio:8/3;max-height:230px!important;margin:0 0 14px}
.c-hideout .ui-detail .himg img{width:100%;height:100%;object-fit:contain}

/* Patch 2 · Desktop HQ (s01). The mobile uiHome() branch remains unchanged. */
@media(min-width:901px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.85fr) minmax(330px,.82fr);grid-template-rows:minmax(235px,auto) minmax(250px,1fr);gap:16px;align-items:stretch}
 .c-home .ui-home-urgent-banner{grid-column:1;grid-row:1;height:auto;min-height:235px;margin:0;padding:20px 24px;align-items:flex-end}
 .c-home .ui-home-contract{display:flex;flex:1;min-width:0;max-width:calc(100% - 245px);height:100%;flex-direction:column;justify-content:center;align-items:flex-start;gap:9px;color:#e9e6df}
 .c-home .ui-home-contract-tag{display:inline-flex;padding:4px 9px;border-radius:6px;background:#d4b25a24;color:#d4b25a;font-size:12px;font-weight:800}
 .c-home .ui-home-contract h2{margin:0;font-size:25px;line-height:1.35}
 .c-home .ui-home-contract p,.c-home .ui-home-contract small{margin:0;color:#c0c3c7;line-height:1.55}
 .c-home .ui-home-sortie-actions{flex:none;min-width:220px;max-width:245px}
 .c-home .ui-home-lower{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1fr);gap:12px;min-width:0;align-items:stretch}
 .c-home .ui-home-lower>.panel,.c-home .ui-home-lower>.ui-home-news{min-width:0;margin:0;height:100%;overflow:hidden}
 .c-home .ui-home-partner{grid-column:2;grid-row:1/3;display:flex;min-width:0;min-height:500px;flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid #2c3139;border-radius:16px;background:linear-gradient(180deg,#15171b,#101113);box-shadow:0 8px 28px #0002}
 .c-home .ui-home-partner>img{display:block;flex:1 1 auto;width:100%;min-height:0;max-height:calc(100% - 150px);object-fit:contain;object-position:center bottom}
 .c-home .ui-home-partner>.hs-b{position:relative;margin:0 14px 14px;padding:12px 14px;border:1px solid #2c3139;border-radius:12px;background:#0d0e10e8;backdrop-filter:blur(8px)}
 .c-home .ui-home-partner .hs-n{color:#d4b25a;font-weight:800}
 .c-home .ui-home-partner .bacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
 .c-home .ui-home-operator{display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:0}
 .c-home .ui-home-operator>.panel-h{grid-column:1/-1;grid-row:1}
 .c-home .ui-home-operator>.hqfig{grid-column:1;grid-row:2;align-self:start;height:128px;background:none}
 .c-home .ui-home-operator .hqskin{width:100%;height:128px!important;object-fit:contain}
 .c-home .ui-home-operator>.panel-b{grid-column:2;grid-row:2;min-width:0;padding:10px!important}
 .c-home .ui-home-operator .kv{display:none}
 .c-home .ui-home-operator .hqcs{font-size:16px}
 .c-home .ui-home-operator .sub,.c-home .ui-home-operator .hqhp{font-size:10px}
 .c-home .ui-home-operator .ui-home-status-fold{margin-top:8px}
 .c-home .ui-home-status-fold>summary{padding:7px 9px;color:#d4b25a;cursor:pointer}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px}
 .c-home .ui-home-stat{min-height:56px;padding:6px;gap:5px}
 .c-home .ui-home-stat>img{width:24px;height:25px}
 .c-home .ui-home-stat strong{font-size:13px}
 .c-home .ui-home-stat small{display:none}
 .c-home .ui-home-recommend-list{padding:8px;gap:6px}
 .c-home .ui-home-recommend .htile{min-height:58px;padding:7px;grid-template-columns:27px minmax(0,1fr);gap:1px 6px}
 .c-home .ui-home-recommend .htile .ti{width:25px;height:25px}
 .c-home .ui-home-recommend .htile .tt{font-size:11px}
 .c-home .ui-home-recommend .htile .tv{font-size:13px}
 .c-home .ui-home-recommend .htile .ts{font-size:10px}
 .c-home .ui-home-news .log{max-height:calc(100% - 50px)!important}
}
@media(min-width:901px) and (max-width:1399px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.55fr) minmax(285px,.9fr);grid-template-rows:minmax(220px,auto) minmax(240px,1fr);gap:12px}
 .c-home .ui-home-lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .c-home .ui-home-urgent-banner{min-height:220px;padding:16px}
 .c-home .ui-home-contract{max-width:calc(100% - 190px)}
 .c-home .ui-home-sortie-actions{min-width:180px;max-width:190px}
 .c-home .ui-home-contract h2{font-size:20px}
 .c-home .ui-home-partner{min-height:472px}
 .c-home .ui-home-operator{grid-template-columns:68px minmax(0,1fr)}
 .c-home .ui-home-operator>.hqfig,.c-home .ui-home-operator .hqskin{height:102px!important}
 .c-home .ui-home-operator>.panel-b{padding:8px!important}
 .c-home .ui-home-operator .hqco,.c-home .ui-home-operator .hqhp .btn{display:none}
}

/* Patch 4 · equipment loadout composition from s09. Desktop only; mobile markup flow is preserved. */
@media(min-width:901px){
 .c-gear .gear-equipped-workspace{display:grid;grid-template-columns:minmax(270px,.92fr) minmax(310px,1.08fr);gap:12px;align-items:start}
 .c-gear .gear-equipped-workspace>.gear-equipped{min-width:0;padding:12px;background:#191a1d;border:1px solid #303135;border-radius:12px}
 .c-gear .gear-equipped-workspace .gdoll{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto auto;gap:8px;padding:0;border:0;background:none}
 .c-gear .gear-equipped-workspace .gart{position:static;grid-column:1;grid-row:1;width:100%;height:110px;margin:0;object-fit:contain;transform:none}
 .c-gear .gear-equipped-workspace .skinbtns{position:static;grid-column:2;grid-row:1;display:flex;align-content:start;justify-content:flex-end;flex-wrap:wrap;gap:5px;transform:none}
 .c-gear .gear-equipped-workspace .gl-l,.c-gear .gear-equipped-workspace .gl-r{position:static;display:flex;grid-row:2;grid-column:auto;width:auto;flex-direction:column;gap:8px}
 .c-gear .gear-equipped-workspace .gslot{min-width:0;padding:8px;background:#202124;border:1px solid #343538;border-radius:9px}
 .c-gear .gear-equipped-workspace .gslot .gi{height:52px;margin:3px 0;padding:0}
 .c-gear .gear-equipped-workspace .gslot .gi .ico{width:72px;height:48px;object-fit:contain}
 .c-gear .gear-equipped-workspace .gslot b,.c-gear .gear-equipped-workspace .gslot .gs{font-size:11px;overflow-wrap:anywhere}
 .c-gear .gear-equipped-workspace .gear-operator-details{grid-column:1/-1}
 .c-gear .gear-equipped-inventory{min-width:0;padding:10px;background:#191a1d;border:1px solid #303135;border-radius:12px}
 .c-gear .gear-inventory-head{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:8px}
 .c-gear .gear-inventory-head>div{display:flex;justify-content:space-between;gap:8px}
 .c-gear .gear-inventory-head input,.c-gear .gear-inventory-head select{width:100%;min-width:0;min-height:36px;background:#111214;border:1px solid #343538;border-radius:7px;color:#e9e6df;padding:6px 8px}
 .c-gear .gear-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:calc(100dvh - 360px);min-height:180px;overflow:auto;overscroll-behavior:contain;padding-right:3px}
 .c-gear .gear-preview-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);align-items:center;gap:7px;min-width:0;min-height:76px;padding:7px;text-align:left;background:#202124;border:1px solid #343538;border-radius:9px;color:#e9e6df;cursor:pointer}
 .c-gear .gear-preview-card.on{border-color:#d4b25a;background:#28251b}
 .c-gear .gear-preview-card.locked{opacity:.78}
 .c-gear .gear-preview-art{display:grid;place-items:center;min-width:0;height:54px}
 .c-gear .gear-preview-art .ico{width:68px;height:48px;object-fit:contain}
 .c-gear .gear-preview-info{display:grid;gap:3px;min-width:0;font-size:10px;overflow-wrap:anywhere}
 .c-gear .gear-preview-info>b{font-size:11px;color:#f1eee7}
 .c-gear .gear-preview-info small{color:#d4b25a}
 .c-gear .gear-lock-state{position:absolute;top:3px;right:5px;color:#e6a49c;font-size:9px;font-style:normal}
 .c-gear .gear-selected-weapon,.c-gear .gear-loadouts,.c-gear .gear-effect-summary{margin:0 0 12px;padding:12px;background:#191a1d;border:1px solid #303135;border-radius:12px}
 .c-gear .gear-selected-hero{display:flex;align-items:center;gap:10px;min-width:0}
 .c-gear .gear-selected-hero>.ico{width:72px;height:56px;object-fit:contain}
 .c-gear .gear-selected-hero>div{display:grid;gap:4px;min-width:0}
 .c-gear .gear-selected-weapon .kv{display:grid;grid-template-columns:1fr auto;gap:5px 12px;margin:12px 0;border-top:1px solid #303135;padding-top:9px}
 .c-gear .gear-selected-weapon .kv dt{color:#9b9da2}.c-gear .gear-selected-weapon .kv dd{margin:0;text-align:right}
 .c-gear .gear-selected-actions{display:flex;flex-wrap:wrap;gap:6px}
 .c-gear .gear-selected-actions .btn{min-height:38px}
 .c-gear .gear-effect-summary h3,.c-gear .gear-loadouts h3{margin:0 0 8px;font-size:14px}
 .c-gear .gear-effect-summary .gear-effect-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
 .c-gear .gear-effect-summary .gear-effect-stats>div{display:flex;justify-content:space-between;gap:5px;padding:6px;background:#202124;border-radius:6px;font-size:10px}
}
@media(min-width:901px) and (max-width:1399px){
 .c-gear .gear-equipped-workspace{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:8px}
 .c-gear .gear-equipped-workspace>.gear-equipped,.c-gear .gear-equipped-inventory{padding:8px}
 .c-gear .gear-preview-grid{grid-template-columns:minmax(0,1fr);max-height:calc(100dvh - 320px)}
 .c-gear .gear-preview-card{grid-template-columns:58px minmax(0,1fr);min-height:64px}
 .c-gear .gear-preview-art,.c-gear .gear-preview-art .ico{width:54px;height:42px}
}
@media(max-width:900px){
 .c-screen{--c-gap:14px}
 .c-screen .panel-h{padding:15px}.c-screen .panel-b{padding:15px}
 .c-screen .c-detail,.c-screen .c-list{padding:15px}
 .c-screen .c-tabs{position:relative;margin:0 0 10px;padding-bottom:10px}
 .c-screen .c-tabs button{min-height:42px}
 .c-screen .ui-master-detail,.c-screen .ui-master-detail:has(>.ui-compare),.c-home .ui-home-dashboard,.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns,.c-daily .ui-daily-layout,.c-story .ui-story-layout,.c-gear .gear-columns,.c-shop .shop-preview-grid,.c-market .ui-master-detail,.c-hire .ui-master-detail,.c-talent .ui-talent-layout,.c-hideout .ui-hideout-workspace,.c-hideout .ui-master-detail,.c-inf .ui-inf-recruit,.c-front .exact-front-grid,.c-quest .ui-master-detail,.c-goals .ui-goals-layout,.c-career .review-career-grid,.c-company .review-company-grid,.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout,.c-ledger .ui-ledger-layout,.c-pvp .ui-master-detail,.c-manual .manual-layout,.c-manual .manualgrid{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-home .ui-home-dashboard>*{grid-column:auto;grid-row:auto}
 .c-home .c-home-hero{min-height:260px;order:0}.c-home .c-home-actions{order:1}.c-home .ui-home-recommend{order:2}.c-home .ui-home-status{order:3}.c-home .c-home-operator{order:4}.c-home .ui-home-news{order:5}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}
 .c-home .ui-home-stat{min-height:92px;padding:12px;gap:8px}
 .c-home .hqgo{flex-direction:column;padding:12px}.c-home .hqgo .btn{min-height:46px}
 .c-screen .empty{padding:22px;min-height:0}
 .c-story .stchs{flex-direction:row;overflow:auto}.c-story .stchs button{flex:none;min-width:180px}
 .c-gear .gear-main,.c-gear .gear-operator,.c-shop .shop-preview-left,.c-shop .shop-preview-right{padding:14px}
 .c-bond .bside{padding:15px}.c-screen .ui-compare{grid-column:auto}
 .c-manual .manual-body{padding:18px}
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-contracts .exact-contract-detail{padding:15px}
 .c-bond .blist{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:stretch}
 .c-bond .exact-bond-list-filter{flex-direction:column;flex:none;width:90px;margin:0}
 .c-bond .blist .bcard{flex:none;width:155px;min-height:84px;padding:10px}
 .combat.v2{grid-template-columns:minmax(0,1fr);gap:14px}
 .combat.v2 .col{min-width:0}.combat.v2 .main{order:0}.combat.v2 .side{order:1}.combat.v2 .ops{order:2}
 .combat.v2 .panel-b{padding:14px}
 .cw-panel{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border-radius:16px}
 .cw-panel .cw-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
}

/* Background art: keep the complete frame at every viewport. */
.c-hideout .ui-detail .himg{height:auto!important;aspect-ratio:8/3;max-height:230px!important;margin:0 0 14px}
.c-hideout .ui-detail .himg img{width:100%;height:100%;object-fit:contain}

/* Patch 2 · Desktop HQ (s01). The mobile uiHome() branch remains unchanged. */
@media(min-width:901px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.85fr) minmax(330px,.82fr);grid-template-rows:minmax(235px,auto) minmax(250px,1fr);gap:16px;align-items:stretch}
 .c-home .ui-home-urgent-banner{grid-column:1;grid-row:1;height:auto;min-height:235px;margin:0;padding:20px 24px;align-items:flex-end}
 .c-home .ui-home-contract{display:flex;flex:1;min-width:0;max-width:calc(100% - 245px);height:100%;flex-direction:column;justify-content:center;align-items:flex-start;gap:9px;color:#e9e6df}
 .c-home .ui-home-contract-tag{display:inline-flex;padding:4px 9px;border-radius:6px;background:#d4b25a24;color:#d4b25a;font-size:12px;font-weight:800}
 .c-home .ui-home-contract h2{margin:0;font-size:25px;line-height:1.35}
 .c-home .ui-home-contract p,.c-home .ui-home-contract small{margin:0;color:#c0c3c7;line-height:1.55}
 .c-home .ui-home-sortie-actions{flex:none;min-width:220px;max-width:245px}
 .c-home .ui-home-lower{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1fr);gap:12px;min-width:0;align-items:stretch}
 .c-home .ui-home-lower>.panel,.c-home .ui-home-lower>.ui-home-news{min-width:0;margin:0;height:100%;overflow:hidden}
 .c-home .ui-home-partner{grid-column:2;grid-row:1/3;display:flex;min-width:0;min-height:500px;flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid #2c3139;border-radius:16px;background:linear-gradient(180deg,#15171b,#101113);box-shadow:0 8px 28px #0002}
 .c-home .ui-home-partner>img{display:block;flex:1 1 auto;width:100%;min-height:0;max-height:calc(100% - 150px);object-fit:contain;object-position:center bottom}
 .c-home .ui-home-partner>.hs-b{position:relative;margin:0 14px 14px;padding:12px 14px;border:1px solid #2c3139;border-radius:12px;background:#0d0e10e8;backdrop-filter:blur(8px)}
 .c-home .ui-home-partner .hs-n{color:#d4b25a;font-weight:800}
 .c-home .ui-home-partner .bacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
 .c-home .ui-home-operator{display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:0}
 .c-home .ui-home-operator>.panel-h{grid-column:1/-1;grid-row:1}
 .c-home .ui-home-operator>.hqfig{grid-column:1;grid-row:2;align-self:start;height:128px;background:none}
 .c-home .ui-home-operator .hqskin{width:100%;height:128px!important;object-fit:contain}
 .c-home .ui-home-operator>.panel-b{grid-column:2;grid-row:2;min-width:0;padding:10px!important}
 .c-home .ui-home-operator .kv{display:none}
 .c-home .ui-home-operator .hqcs{font-size:16px}
 .c-home .ui-home-operator .sub,.c-home .ui-home-operator .hqhp{font-size:10px}
 .c-home .ui-home-operator .ui-home-status-fold{margin-top:8px}
 .c-home .ui-home-status-fold>summary{padding:7px 9px;color:#d4b25a;cursor:pointer}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px}
 .c-home .ui-home-stat{min-height:56px;padding:6px;gap:5px}
 .c-home .ui-home-stat>img{width:24px;height:25px}
 .c-home .ui-home-stat strong{font-size:13px}
 .c-home .ui-home-stat small{display:none}
 .c-home .ui-home-recommend-list{padding:8px;gap:6px}
 .c-home .ui-home-recommend .htile{min-height:58px;padding:7px;grid-template-columns:27px minmax(0,1fr);gap:1px 6px}
 .c-home .ui-home-recommend .htile .ti{width:25px;height:25px}
 .c-home .ui-home-recommend .htile .tt{font-size:11px}
 .c-home .ui-home-recommend .htile .tv{font-size:13px}
 .c-home .ui-home-recommend .htile .ts{font-size:10px}
 .c-home .ui-home-news .log{max-height:calc(100% - 50px)!important}
}
@media(min-width:901px) and (max-width:1399px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.55fr) minmax(285px,.9fr);grid-template-rows:minmax(220px,auto) minmax(240px,1fr);gap:12px}
 .c-home .ui-home-lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .c-home .ui-home-urgent-banner{min-height:220px;padding:16px}
 .c-home .ui-home-contract{max-width:calc(100% - 190px)}
 .c-home .ui-home-sortie-actions{min-width:180px;max-width:190px}
 .c-home .ui-home-contract h2{font-size:20px}
 .c-home .ui-home-partner{min-height:472px}
 .c-home .ui-home-operator{grid-template-columns:68px minmax(0,1fr)}
 .c-home .ui-home-operator>.hqfig,.c-home .ui-home-operator .hqskin{height:102px!important}
 .c-home .ui-home-operator>.panel-b{padding:8px!important}
 .c-home .ui-home-operator .hqco,.c-home .ui-home-operator .hqhp .btn{display:none}
}


/* Patch 5 · show world erosion stages consistently on the map and region list. */
@media(min-width:901px){
 .c-front .exact-map-legend{display:flex;flex-wrap:wrap;gap:8px 14px;margin:10px 2px 0;color:#adb1b5;font-size:11px}
 .c-front .exact-map-legend .risk-low{color:#6fc6a1}.c-front .exact-map-legend .risk-mid{color:#d4b25a}
 .c-front .exact-map-legend .risk-high{color:#e99c45}.c-front .exact-map-legend .risk-critical,.c-front .exact-map-legend .risk-fallen{color:#e36d63}
 .c-front .exact-map-pin{min-width:16px;min-height:16px;padding:0;border-width:2px;box-shadow:0 0 0 3px #101214a8}
 .c-front .exact-map-pin>i{display:block;width:8px;height:8px;margin:2px auto;border-radius:50%;background:currentColor}
 .c-front .exact-map-pin.risk-low{border-color:#6fc6a1;background:#163b32e8;color:#6fc6a1}
 .c-front .exact-map-pin.risk-mid{border-color:#d4b25a;background:#403718e8;color:#f1d370}
 .c-front .exact-map-pin.risk-high{border-color:#e99c45;background:#452d17e8;color:#ffc16c}
 .c-front .exact-map-pin.risk-critical,.c-front .exact-map-pin.risk-fallen{border-color:#e36d63;background:#451b1be8;color:#ff9085}
 .c-front .exact-map-pin.risk-unknown{border-color:#8b9299;background:#25282be8;color:#c5c9cd}
 .c-front .exact-map-pin.on{z-index:3;min-width:21px;min-height:21px;box-shadow:0 0 0 4px #f2d26666,0 0 18px currentColor}
 .c-front .exact-map-pin span{border:1px solid currentColor;color:#f2f0e8}
 .c-front .exact-erosion-row{position:relative}
 .c-front .exact-erosion-row.risk-critical,.c-front .exact-erosion-row.risk-fallen{border-color:#a84a45}
 .c-front .exact-erosion-row.risk-high{border-color:#9e622a}
 .c-front .exact-erosion-row.risk-low .bar i{background:#6fc6a1}
 .c-front .exact-erosion-row.risk-mid .bar i{background:#d4b25a}
 .c-front .exact-erosion-row.risk-high .bar i{background:#e99c45}
 .c-front .exact-erosion-row.risk-critical .bar i,.c-front .exact-erosion-row.risk-fallen .bar i{background:#e36d63}
}
@media(max-width:900px){
 .c-screen{--c-gap:14px}
 .c-screen .panel-h{padding:15px}.c-screen .panel-b{padding:15px}
 .c-screen .c-detail,.c-screen .c-list{padding:15px}
 .c-screen .c-tabs{position:relative;margin:0 0 10px;padding-bottom:10px}
 .c-screen .c-tabs button{min-height:42px}
 .c-screen .ui-master-detail,.c-screen .ui-master-detail:has(>.ui-compare),.c-home .ui-home-dashboard,.c-contracts .exact-contract-columns,.c-contracts .contract-columns,.c-raid .ui-raid-layout,.c-squad .exact-lobby-columns,.c-bounty .exact-bounty-columns,.c-daily .ui-daily-layout,.c-story .ui-story-layout,.c-gear .gear-columns,.c-shop .shop-preview-grid,.c-market .ui-master-detail,.c-hire .ui-master-detail,.c-talent .ui-talent-layout,.c-hideout .ui-hideout-workspace,.c-hideout .ui-master-detail,.c-inf .ui-inf-recruit,.c-front .exact-front-grid,.c-quest .ui-master-detail,.c-goals .ui-goals-layout,.c-career .review-career-grid,.c-company .review-company-grid,.c-intel .ui-summary-layout,.c-ranking .ui-summary-layout,.c-ledger .ui-ledger-layout,.c-pvp .ui-master-detail,.c-manual .manual-layout,.c-manual .manualgrid{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-home .ui-home-dashboard>*{grid-column:auto;grid-row:auto}
 .c-home .c-home-hero{min-height:260px;order:0}.c-home .c-home-actions{order:1}.c-home .ui-home-recommend{order:2}.c-home .ui-home-status{order:3}.c-home .c-home-operator{order:4}.c-home .ui-home-news{order:5}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:10px}
 .c-home .ui-home-stat{min-height:92px;padding:12px;gap:8px}
 .c-home .hqgo{flex-direction:column;padding:12px}.c-home .hqgo .btn{min-height:46px}
 .c-screen .empty{padding:22px;min-height:0}
 .c-story .stchs{flex-direction:row;overflow:auto}.c-story .stchs button{flex:none;min-width:180px}
 .c-gear .gear-main,.c-gear .gear-operator,.c-shop .shop-preview-left,.c-shop .shop-preview-right{padding:14px}
 .c-bond .bside{padding:15px}.c-screen .ui-compare{grid-column:auto}
 .c-manual .manual-body{padding:18px}
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1fr);gap:14px}
 .c-contracts .exact-contract-detail{padding:15px}
 .c-bond .blist{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;align-items:stretch}
 .c-bond .exact-bond-list-filter{flex-direction:column;flex:none;width:90px;margin:0}
 .c-bond .blist .bcard{flex:none;width:155px;min-height:84px;padding:10px}
 .combat.v2{grid-template-columns:minmax(0,1fr);gap:14px}
 .combat.v2 .col{min-width:0}.combat.v2 .main{order:0}.combat.v2 .side{order:1}.combat.v2 .ops{order:2}
 .combat.v2 .panel-b{padding:14px}
 .cw-panel{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:auto;border-radius:16px}
 .cw-panel .cw-layout{grid-template-columns:minmax(0,1fr);gap:16px;padding:16px}
}

/* Background art: keep the complete frame at every viewport. */
.c-hideout .ui-detail .himg{height:auto!important;aspect-ratio:8/3;max-height:230px!important;margin:0 0 14px}
.c-hideout .ui-detail .himg img{width:100%;height:100%;object-fit:contain}

/* Patch 2 · Desktop HQ (s01). The mobile uiHome() branch remains unchanged. */
@media(min-width:901px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.85fr) minmax(330px,.82fr);grid-template-rows:minmax(235px,auto) minmax(250px,1fr);gap:16px;align-items:stretch}
 .c-home .ui-home-urgent-banner{grid-column:1;grid-row:1;height:auto;min-height:235px;margin:0;padding:20px 24px;align-items:flex-end}
 .c-home .ui-home-contract{display:flex;flex:1;min-width:0;max-width:calc(100% - 245px);height:100%;flex-direction:column;justify-content:center;align-items:flex-start;gap:9px;color:#e9e6df}
 .c-home .ui-home-contract-tag{display:inline-flex;padding:4px 9px;border-radius:6px;background:#d4b25a24;color:#d4b25a;font-size:12px;font-weight:800}
 .c-home .ui-home-contract h2{margin:0;font-size:25px;line-height:1.35}
 .c-home .ui-home-contract p,.c-home .ui-home-contract small{margin:0;color:#c0c3c7;line-height:1.55}
 .c-home .ui-home-sortie-actions{flex:none;min-width:220px;max-width:245px}
 .c-home .ui-home-lower{grid-column:1;grid-row:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr) minmax(0,1fr);gap:12px;min-width:0;align-items:stretch}
 .c-home .ui-home-lower>.panel,.c-home .ui-home-lower>.ui-home-news{min-width:0;margin:0;height:100%;overflow:hidden}
 .c-home .ui-home-partner{grid-column:2;grid-row:1/3;display:flex;min-width:0;min-height:500px;flex-direction:column;justify-content:flex-end;overflow:hidden;border:1px solid #2c3139;border-radius:16px;background:linear-gradient(180deg,#15171b,#101113);box-shadow:0 8px 28px #0002}
 .c-home .ui-home-partner>img{display:block;flex:1 1 auto;width:100%;min-height:0;max-height:calc(100% - 150px);object-fit:contain;object-position:center bottom}
 .c-home .ui-home-partner>.hs-b{position:relative;margin:0 14px 14px;padding:12px 14px;border:1px solid #2c3139;border-radius:12px;background:#0d0e10e8;backdrop-filter:blur(8px)}
 .c-home .ui-home-partner .hs-n{color:#d4b25a;font-weight:800}
 .c-home .ui-home-partner .bacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
 .c-home .ui-home-operator{display:grid;grid-template-columns:88px minmax(0,1fr);grid-template-rows:auto 1fr;min-height:0}
 .c-home .ui-home-operator>.panel-h{grid-column:1/-1;grid-row:1}
 .c-home .ui-home-operator>.hqfig{grid-column:1;grid-row:2;align-self:start;height:128px;background:none}
 .c-home .ui-home-operator .hqskin{width:100%;height:128px!important;object-fit:contain}
 .c-home .ui-home-operator>.panel-b{grid-column:2;grid-row:2;min-width:0;padding:10px!important}
 .c-home .ui-home-operator .kv{display:none}
 .c-home .ui-home-operator .hqcs{font-size:16px}
 .c-home .ui-home-operator .sub,.c-home .ui-home-operator .hqhp{font-size:10px}
 .c-home .ui-home-operator .ui-home-status-fold{margin-top:8px}
 .c-home .ui-home-status-fold>summary{padding:7px 9px;color:#d4b25a;cursor:pointer}
 .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:7px}
 .c-home .ui-home-stat{min-height:56px;padding:6px;gap:5px}
 .c-home .ui-home-stat>img{width:24px;height:25px}
 .c-home .ui-home-stat strong{font-size:13px}
 .c-home .ui-home-stat small{display:none}
 .c-home .ui-home-recommend-list{padding:8px;gap:6px}
 .c-home .ui-home-recommend .htile{min-height:58px;padding:7px;grid-template-columns:27px minmax(0,1fr);gap:1px 6px}
 .c-home .ui-home-recommend .htile .ti{width:25px;height:25px}
 .c-home .ui-home-recommend .htile .tt{font-size:11px}
 .c-home .ui-home-recommend .htile .tv{font-size:13px}
 .c-home .ui-home-recommend .htile .ts{font-size:10px}
 .c-home .ui-home-news .log{max-height:calc(100% - 50px)!important}
}
@media(min-width:901px) and (max-width:1399px){
 .c-home .ui-home-dashboard{grid-template-columns:minmax(0,1.55fr) minmax(285px,.9fr);grid-template-rows:minmax(220px,auto) minmax(240px,1fr);gap:12px}
 .c-home .ui-home-lower{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .c-home .ui-home-urgent-banner{min-height:220px;padding:16px}
 .c-home .ui-home-contract{max-width:calc(100% - 190px)}
 .c-home .ui-home-sortie-actions{min-width:180px;max-width:190px}
 .c-home .ui-home-contract h2{font-size:20px}
 .c-home .ui-home-partner{min-height:472px}
 .c-home .ui-home-operator{grid-template-columns:68px minmax(0,1fr)}
 .c-home .ui-home-operator>.hqfig,.c-home .ui-home-operator .hqskin{height:102px!important}
 .c-home .ui-home-operator>.panel-b{padding:8px!important}
 .c-home .ui-home-operator .hqco,.c-home .ui-home-operator .hqhp .btn{display:none}
}
/* Patch 6 · hidden segment panels must remain hidden despite desktop grid display. */
@media(min-width:901px){.c-company .pc-section[hidden]{display:none!important}}/* Patch 7 · Requests, records, reference screens and admin-safe styling. */
@media(min-width:901px){
 .c-quest .ui-master-detail,.c-bounty .exact-bounty-columns{grid-template-columns:minmax(280px,.9fr) minmax(0,1.5fr);gap:18px;align-items:start}
 .c-quest .ui-master-list,.c-quest .ui-detail,.c-bounty .exact-bounty-detail,.c-bounty .ui-master-list{max-height:calc(100dvh - 225px);overflow:auto;padding:14px;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-quest .ui-list-item,.c-bounty .bcard{min-height:76px;margin-bottom:8px;background:#1b1c1f;border:1px solid #303135;border-radius:10px}
 .c-daily .ui-daily-layout{grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:18px;align-items:start}
 .c-daily .dailycard,.c-daily .review-daily-result{min-width:0;background:#141517;border:1px solid #303135;border-radius:14px;overflow:hidden}
 .c-daily .review-daily-art{display:block;width:100%;height:190px;object-fit:cover}
 .c-goals .ui-goals-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.8fr);gap:18px}
 .c-codex .ui-master-detail{grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);gap:18px}
 .c-codex .ui-gallery-list{grid-template-columns:repeat(4,minmax(0,1fr));max-height:calc(100dvh - 250px);overflow:auto}
 .c-codex .ui-gallery-list .ui-list-item{display:flex;flex-direction:column;align-items:stretch;min-width:0;min-height:120px;padding:8px;background:#191a1d;border:1px solid #303135;border-radius:10px}
 .c-codex .ui-gallery-list .ui-list-item img{width:100%;height:78px;object-fit:contain}
 .c-codex .ui-gallery-list .ui-list-item.missing img{filter:grayscale(1) brightness(.35)}
 .c-ranking .review-record-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
 .c-ranking .review-record-grid>.panel,.c-ranking .review-record-grid>.tile{min-width:0;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-manual .manual-layout,.c-manual .manualgrid{grid-template-columns:minmax(250px,.65fr) minmax(0,1.6fr);gap:18px}
 .c-manual .manual-nav{position:sticky;top:12px;max-height:calc(100dvh - 120px);overflow:auto;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-manual .manual-body{max-height:calc(100dvh - 120px);overflow:auto;background:#141517;border:1px solid #303135;border-radius:14px}
 .c-admin .panel{background:#141517;border:1px solid #303135;border-radius:14px}
 .c-admin .tablewrap{max-height:calc(100dvh - 230px);overflow:auto}
 .stable-dialog .modal{max-width:min(920px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:auto;background:#17181a;border:1px solid #756628;border-radius:18px}
 .stable-dialog .modal>.modal-header{position:sticky;top:0;z-index:2;background:#17181a}
 .stable-dialog .modal .panel{background:#202124;border:1px solid #343538;border-radius:12px}
}
/* HQ: remove inherited grid coordinates and mobile banner pseudo artwork. */
@media(min-width:901px){
 .c-home .ui-home-dashboard{grid-template-rows:235px minmax(250px,auto);align-items:start}
 .c-home .ui-home-urgent-banner{display:flex;height:235px!important;min-height:0!important;max-height:235px;padding:18px;flex-wrap:nowrap;background-size:cover!important;background-position:center;position:relative}
 .c-home .ui-home-urgent-banner::before{display:none!important}
 .c-home .ui-home-contract{max-width:none;position:relative;background:#0d0e10c9;padding:12px;border-radius:10px}
 .c-home .ui-home-sortie-actions{position:relative;padding:0;margin:0}
 .c-home .ui-home-lower>*{grid-column:auto!important;grid-row:auto!important;max-height:520px;overflow:auto!important}
 .c-home .ui-home-lower>.ui-home-operator{display:block!important;min-height:0}
 .c-home .ui-home-operator .panel-b{display:block;padding:12px}
 .c-home .ui-home-operator .hplayer{display:flex;flex-wrap:wrap;gap:12px}
}
/* Desktop panels own their scrolling; retain all list rows and action nodes. */
@media(min-width:901px){
 .c-contracts .exact-contract-list,.c-contracts .exact-contract-detail{max-height:calc(100dvh - 430px);min-height:0;overflow:auto;box-sizing:border-box}
 .c-contracts .exact-contract-detail{padding-bottom:110px}
 .c-bond .blist{max-height:calc(100dvh - 345px);min-height:0;overflow:auto;box-sizing:border-box}
 .c-bond .bstage-separated{height:calc(100dvh - 345px);min-height:0;align-items:stretch}
 .c-bond .exact-bond-portrait-column{height:100%;min-height:0;display:flex;flex-direction:column}
 .c-bond .exact-bond-visual{height:auto!important;min-height:0!important;flex:1;overflow:hidden;box-sizing:border-box}
 .c-bond .exact-bond-bio{flex:none;max-height:90px;overflow:auto;margin-top:8px;padding:10px}
 .c-bond .bside{height:100%;max-height:100%;min-height:0;overflow:auto;box-sizing:border-box}
 .c-bond .bvisual .stable-portrait{max-height:100%;height:100%;min-height:0}
 .c-bond .vow-collection{margin-top:10px}
}
@media(min-width:901px){
 .c-bond .bstage-separated{height:calc(100dvh - 379px)}
 .c-bond .blist{max-height:calc(100dvh - 379px)}
}

.desktop-combat-result{padding:12px 18px!important;align-items:stretch!important}.desktop-combat-result>.main,.desktop-combat-result>.ops{padding:0!important;max-height:calc(100dvh - 88px)!important}.desktop-combat-result>.ops{min-height:0}.desktop-result-actions{margin-top:auto;padding-top:12px;position:sticky;bottom:0;background:var(--bg)}.desktop-result-actions .btn{min-height:48px}.desktop-result-channel.missing{flex:1;min-height:240px}.desktop-result-chat{border:1px solid var(--line);border-radius:8px;padding:8px}.desktop-result-chat summary{cursor:pointer}

.exact-bond-story .exact-episode-grid{display:flex;flex-direction:column;gap:8px}.exact-bond-story .exact-episode{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:60px;padding:8px;text-align:left;height:auto}.exact-bond-story .exact-episode img{width:40px;height:40px;object-fit:cover}.exact-bond-story .exact-episode span{display:flex;flex-direction:column;gap:3px;min-width:0}.exact-bond-story .exact-episode small{font-size:11px;color:var(--ink2);white-space:normal}.exact-bond-story .exact-episode strong{font-size:11px}.exact-bond-story .exact-episode.vow{border-color:var(--gd);color:var(--gd)}

.vn.desktop-story{inset:64px 0 0 76px;display:grid;grid-template-columns:minmax(0,2.3fr) minmax(300px,.85fr);gap:16px;padding:16px;background:var(--bg)}.desktop-story-stage{position:relative;min-width:0;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:10px}.desktop-story-stage .vnbg{position:absolute;inset:0}.desktop-story-stage .vnsp{position:absolute;left:50%;bottom:0;transform:translateX(-50%);max-width:90%;height:88%}.desktop-story-stage .vntop{position:absolute;top:16px;left:16px;right:16px}.desktop-story-stage .vnbox{position:absolute;left:18px;right:18px;bottom:18px;width:auto;max-width:none;max-height:44%;overflow:auto;margin:0;padding:18px;background:#0d0e10ed}.desktop-story-record{display:flex;flex-direction:column;min-height:0;padding:0;background:var(--p1)}.desktop-story-history{min-height:0;overflow:auto;padding:14px;flex:1}.desktop-story-line{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.desktop-story-line b{font-size:12px;color:var(--gd)}.desktop-story-line p{font-size:13px;line-height:1.7;margin-top:6px}.desktop-story-stage .vnch{gap:8px}.desktop-story-stage .vnch .btn{min-height:44px}@media(min-width:901px) and (max-width:1399px){.vn.desktop-story{grid-template-columns:minmax(0,2fr) 300px;gap:12px;padding:12px}}

/* Bond mockup proportions: list / portrait / actions. */
@media(min-width:901px){
 .c-bond.exact-bond .bond{grid-template-columns:clamp(230px,18vw,300px) minmax(0,1fr);gap:18px}
 .c-bond.exact-bond .exact-bond-stage{grid-template-columns:minmax(0,1.6fr) minmax(340px,1fr);gap:18px}
 .c-bond.exact-bond .exact-bond-portrait-column>.exact-bond-visual{width:100%!important;max-width:100%!important;aspect-ratio:auto!important;align-self:stretch;margin-inline:0!important}
 .c-bond .exact-bond-list-filter .btn{min-height:36px;padding:7px 4px}
}
@media(min-width:901px) and (max-width:1399px){
 .c-bond.exact-bond .bond{grid-template-columns:230px minmax(0,1fr);gap:12px}
 .c-bond.exact-bond .exact-bond-stage{grid-template-columns:minmax(0,1.2fr) minmax(300px,1fr);gap:12px}
}
@media(min-width:901px){.gear-warehouse-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.gear-warehouse-tile{padding:12px;min-width:0;cursor:pointer}.gear-tile-name{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.gear-tile-name>.ico{width:100%;height:85px}.gear-tile-name>.ico img{width:100%;height:100%;object-fit:contain}.gear-tile-name>.sub,.gear-tile-name>details{width:100%}.gear-tile-stats{font-size:11px;color:var(--ink2);margin:8px 0}.gear-warehouse-tile details .btn{margin:5px 4px 0 0}@media(max-width:1399px){.gear-warehouse-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}}}
@media(min-width:901px){
 .c-shop .shop-preview-grid{grid-template-columns:clamp(180px,14vw,240px) minmax(0,1fr) minmax(330px,.48fr);align-items:stretch;gap:18px}
 .shop-preview-merchants{display:flex;flex-direction:column;min-height:0;padding:14px;gap:14px}
 .shop-preview-merchants .cattabs{display:flex;flex-direction:column;gap:8px}
 .shop-preview-merchants .cattabs .btn{width:100%;min-height:52px;text-align:left}
 .shop-preview-merchants .ui-npc-header{margin-top:auto;display:flex;flex-direction:column;padding:10px;gap:8px}
 .c-shop .shop-preview-products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
 .c-shop .shop-preview-product{display:flex;flex-direction:column;min-width:0;padding:10px;gap:8px}
 .c-shop .shop-preview-pick{display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:8px;width:100%}
 .c-shop .shop-preview-icon{width:100%;height:85px}.c-shop .shop-preview-icon img{width:100%;height:100%;object-fit:contain}
 .c-shop .shop-preview-rowstats{display:flex;flex-wrap:wrap;gap:8px;font-size:11px}
 .c-shop .shop-preview-right{display:flex;flex-direction:column;min-height:0}
 .c-shop .shop-preview-purchase{margin-top:auto;padding:16px;border:1px solid var(--line);border-radius:10px;background:var(--p1)}
 .c-shop .shop-preview-buy .btn{min-height:44px}
 .c-shop .shop-preview-hero{display:flex;flex-direction:column;align-items:stretch}
 .c-shop .shop-preview-bigart{height:130px;width:100%}.c-shop .shop-preview-bigart img{height:100%;width:100%;object-fit:contain}
 @media(max-width:1399px){.c-shop .shop-preview-grid{grid-template-columns:170px minmax(0,1fr) 320px;gap:12px}.c-shop .shop-preview-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
}
@media(min-width:901px){.c-market .mkbody{align-items:stretch}.c-market .mkdet{display:flex;flex-direction:column;position:static;min-height:0}.c-market .mkdet>.mkbuy{margin-top:auto}.c-market .mkdet>.mkbuy>.btn{position:sticky;bottom:0;z-index:2;min-height:46px}.c-market .review-market-list{min-height:0;overflow:auto}.c-market .mk-list-view .mkcard{min-height:64px}.c-market .mk-list-view .mkic{width:64px;height:44px}}
@media(min-width:901px){.c-market .mk-list-view .mkcard{display:flex;flex-direction:row;align-items:center;gap:10px;padding:8px;min-height:64px}.c-market .mk-list-view .mk-card-head{order:2;flex:0 0 70px;gap:5px;display:flex;align-items:center}.c-market .mk-list-view .mk-card-select{display:flex;flex-direction:row;align-items:center;flex:1;min-width:0;gap:12px}.c-market .mk-list-view .mktop{flex:1;min-width:0}.c-market .mk-list-view .mkft{border:0;padding:0;min-width:110px;margin:0}.c-market .mk-list-view .mkp{font-size:14px}.c-market .mk-list-view .mk-grade{font-size:10px}.c-market .mk-list-view .mk-star{font-size:20px}}
@media(min-width:901px){
 .c-home .ui-home-dashboard{height:calc(100dvh - 120px);min-height:0;grid-template-rows:235px minmax(0,1fr);align-items:stretch}
 .c-home .ui-home-lower{min-height:0;height:100%}.c-home .ui-home-lower>*{max-height:none;min-height:0;overflow:auto!important}
 .c-home .ui-home-partner{height:100%;min-height:0;box-sizing:border-box}.c-home .ui-home-partner-empty{justify-content:center}.c-home .ui-home-news{border:1px solid var(--line);border-radius:14px;background:var(--p1)}
 .c-home .ui-home-urgent-banner{flex-direction:column;align-items:flex-start;justify-content:space-between}
 .c-home .ui-home-sortie-actions{display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;min-width:0;max-width:none;width:auto}
 .c-home .ui-home-sortie-actions .btn{min-width:120px;min-height:44px}
 .c-home .ui-home-operator .opimg{max-height:80px;object-fit:contain}
}
@media(min-width:901px){
 .c-hideout.pc-page[data-pc-page=hideout] .hidepano{width:100%!important;max-width:none!important;height:190px;margin:0 0 12px!important;display:block!important;padding:0!important}
 .c-hideout.pc-page[data-pc-page=hideout] .hidepano>img{height:190px!important;max-height:190px!important;object-fit:cover!important;width:100%!important}
 .c-hideout.pc-page[data-pc-page=hideout] .hidepano>.hroom{display:none!important}
 .c-hideout .ui-facility-tiles{display:block;min-width:0}
 .c-hideout .ui-facility-tiles>.ui-master-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:10px}
 .c-hideout .ui-facility-tiles .ui-toolbar,.c-hideout .ui-facility-tiles .pc-pager{grid-column:1/-1}
 .c-hideout .ui-facility-tiles .ui-list-item{display:flex;flex-direction:column;align-items:stretch;padding:8px;margin:0;min-height:140px}
 .c-hideout .ui-facility-tiles .ui-list-item img{width:100%;height:90px;object-fit:cover}
 .c-hideout .ui-facility-detail .himg{max-height:130px}.c-hideout .ui-facility-detail .himg img{width:100%;height:130px;object-fit:cover}
 .c-hideout .ui-facility-detail .hidecard{border:0;padding:10px}
 @media(max-width:1399px){.c-hideout .ui-facility-tiles>.ui-master-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
}
@media(min-width:901px){
 .c-perk.pc-page[data-pc-page=perk] .ui-detail>.feature-art{display:none}
 .c-perk.pc-page[data-pc-page=perk] .ui-master-detail{grid-template-columns:230px minmax(0,1fr);gap:18px}
 .c-perk.pc-page[data-pc-page=perk] .ui-detail>.perkline.ui-perk-flow:not([hidden]){display:grid!important;grid-template-columns:minmax(180px,1fr) minmax(300px,1fr);gap:18px;align-items:start;background:none;padding:0}
 .c-perk.pc-page[data-pc-page=perk] .perkline>.plh{grid-column:1;grid-row:1;min-height:0;background:var(--p1);padding:14px;border-color:var(--line)}
 .c-perk.pc-page[data-pc-page=perk] .ui-perk-nodes{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-items:center;gap:22px;padding:18px;background:var(--p1);border-color:var(--line)}
 .c-perk.pc-page[data-pc-page=perk] .ui-perk-node{width:84px;height:84px;min-height:84px;border-radius:50%;padding:6px;font-size:11px;gap:3px;text-align:center}
 .c-perk.pc-page[data-pc-page=perk] .ui-perk-node b{font-size:11px}.c-perk.pc-page[data-pc-page=perk] .ui-perk-node small{font-size:10px}
 .c-perk.pc-page[data-pc-page=perk] .ui-perk-detail{grid-column:2;grid-row:1/3;min-height:0;padding:16px;background:var(--p1);border-color:var(--line)}
 .c-perk.pc-page[data-pc-page=perk] .ui-perk-detail .pd{min-height:0;padding:14px;background:var(--p2);border-color:var(--line)}
}

/* s14: compact recruitment list and full-height preparation panel. */
.c-squad .exact-lobby-columns{grid-template-columns:clamp(280px,23vw,360px) minmax(0,1fr);align-items:stretch;height:calc(100dvh - 282px)}
.c-squad .exact-lobby-list,.c-squad .exact-lobby-detail{height:100%;max-height:none;display:flex;flex-direction:column;min-height:0;background:var(--p1,#141517)}
.c-squad .exact-lobby-list>.panelbody,.c-squad .exact-lobby-detail>.panelbody{display:flex;flex-direction:column;flex:1;min-height:0}
.c-squad .exact-lobby-detail> :last-child{display:flex;flex-direction:column;flex:1;min-height:0}
.c-squad .exact-lobby-detail> :last-child>.btn:last-child{margin-top:auto;min-height:44px}
.c-squad .exact-lobby-list .empty{padding:22px 12px;min-height:180px}
.c-squad .exact-lobby-list .empty img{width:56px;height:56px;object-fit:contain}
.c-squad .exact-lobby-ready{display:grid;grid-template-columns:120px minmax(0,1fr);gap:12px;align-items:center;padding:18px 4px}
.c-squad .exact-lobby-ready .exact-lobby-operator{grid-row:1/4;width:120px;height:160px;object-fit:contain}
.c-squad .exact-lobby-ready p{margin:0}
.c-squad .pc-section-tabs .btn{min-height:36px;padding:7px 13px;font-size:13px}

/* s14/s14b: list rail and native member cards. */
.c-squad .desktop-squad-workspace{display:grid;grid-template-columns:clamp(280px,23vw,360px) minmax(0,1fr);gap:18px;height:calc(100dvh - 216px)}
.c-squad .desktop-squad-rail{display:flex;flex-direction:column;min-height:0;padding:14px}
.c-squad .desktop-squad-rail>.pc-section-tabs{display:flex;gap:4px;padding:0;border:0;position:static}
.c-squad .desktop-squad-rail>.pc-section-tabs>.btn{flex:1;min-width:0;padding:7px 5px}
.c-squad .desktop-squad-rail>.exact-lobby-list{height:auto;flex:1;padding:0;border:0;overflow:auto;margin-top:12px}
.c-squad .desktop-squad-create{margin-top:auto;min-height:44px}
.c-squad .desktop-squad-main,.c-squad .desktop-squad-main>.pc-section{height:100%;min-height:0}
.c-squad .desktop-squad-main .exact-lobby-columns{display:block;height:100%}
.c-squad .desktop-squad-main .exact-lobby-detail{height:100%;max-height:100%;overflow:auto}
.c-squad .desktop-squad-main .contract>.body{display:flex;flex-direction:column;min-height:0}
.c-squad .desktop-squad-main .contract>.body>.pay{margin-top:auto;justify-content:flex-end;flex-wrap:wrap}
.c-squad .desktop-squad-members{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}
.c-squad .desktop-squad-member{padding:12px;min-width:0;text-align:center}
.c-squad .desktop-squad-member>img{width:100%;height:160px;object-fit:contain}
.c-squad .desktop-squad-member-name .sub{display:block}
.c-squad .desktop-squad-member .kv{text-align:left;font-size:12px;overflow-wrap:anywhere}
.c-squad .desktop-squad-main>.pc-section[data-pc-section="mine"]>.contract{height:100%;overflow:auto}
.c-squad .desktop-squad-main>.pc-section[data-pc-section="mine"]>.contract>.body{height:100%;box-sizing:border-box}
@media(min-width:901px) and (max-width:1400px){.c-squad .desktop-squad-members{grid-template-columns:repeat(2,minmax(0,1fr))}.c-squad .desktop-squad-member>img{height:110px}}

.c-squad .desktop-squad-rail .ui-master-detail{display:block}
.c-squad .desktop-squad-rail .ui-master-list{border:0;padding:0;background:transparent}
.c-squad .desktop-squad-member dl.kv{display:grid!important;grid-template-columns:minmax(45px,auto) minmax(0,1fr)!important;gap:5px 10px;margin:10px 0 0}
.c-squad .desktop-squad-member dl.kv>dt,.c-squad .desktop-squad-member dl.kv>dd{display:block;float:none;width:auto;margin:0;white-space:normal;word-break:keep-all}
.c-squad .desktop-squad-member dl.kv>dd{text-align:right}
.c-squad .desktop-squad-main .exact-lobby-detail .ui-detail{padding:0;border:0;background:transparent;margin-top:12px}

/* s08: boss list, operation illustration, native conditions and actions. */
.c-raid .desktop-raid-scene{width:100%;height:340px;object-fit:cover;display:block;margin-bottom:14px}
.c-raid .desktop-raid-workspace{display:grid;grid-template-columns:clamp(240px,20vw,320px) minmax(0,1fr) clamp(260px,22vw,350px);gap:16px;align-items:stretch}
.c-raid .desktop-raid-workspace>.ui-master-list,.c-raid .desktop-raid-workspace>.ui-detail,.c-raid .desktop-raid-actions{min-width:0;min-height:0}
.c-raid .desktop-raid-workspace>.ui-detail{padding:0;background:var(--p1,#141517)}
.c-raid .desktop-raid-workspace>.ui-detail .crow{margin:0;border:0;background:transparent}
.c-raid .desktop-raid-workspace>.ui-detail .crow.hasrg::before{height:340px;max-height:none;background-size:cover;background-position:center}
.c-raid .desktop-raid-actions>.panel-b{display:flex;flex-direction:column;min-height:0;flex:1;gap:14px}
.c-raid .desktop-raid-actions{display:flex;flex-direction:column}
.c-raid .desktop-raid-actions .kv{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:10px}
.c-raid .desktop-raid-actions .kv>dt,.c-raid .desktop-raid-actions .kv>dd{margin:0;min-width:0;white-space:normal}
.c-raid .desktop-raid-actions .kv>dd{text-align:right}
.c-raid .desktop-raid-actions .cact{display:flex;flex-wrap:wrap;gap:8px}
.c-raid .desktop-raid-actions .cpay{margin-top:auto;width:100%;text-align:left}
.c-raid .desktop-raid-actions .cpay>.btn{min-height:44px;margin-top:14px}
@media(min-width:901px) and (max-width:1400px){.c-raid .desktop-raid-workspace{grid-template-columns:240px minmax(0,1fr) 260px;gap:12px}.c-raid .desktop-raid-workspace>.ui-detail .crow.hasrg::before{height:240px}}

/* s07/s07b/s07c: large shared map and one right detail column. */
.c-front.desktop-front-page{position:relative}
.c-front.desktop-front-page>.pc-section-tabs{position:absolute;top:18px;left:18px;z-index:5;padding:5px;background:#16191de8;border:1px solid #303135;border-radius:10px;width:auto;max-width:calc(100% - 410px)}
.c-front.desktop-front-page>.pc-section-tabs>.btn{font-size:12px;min-height:36px;padding:6px 10px}
.c-front .desktop-front-view{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,26vw,400px);gap:18px;height:calc(100dvh - 220px)}
.c-front .desktop-front-view>.desktop-front-map{height:100%;padding:0;position:relative;overflow:hidden;max-height:none!important}
.c-front .desktop-front-map>h3{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.c-front .desktop-front-map>.exact-world-map-art{height:100%;min-height:0;border:0;border-radius:12px}
.c-front .desktop-front-map .exact-world-map-art>img{width:100%;height:100%;min-height:0;object-fit:fill}
.c-front .desktop-front-map>.exact-map-legend{position:absolute;bottom:14px;left:14px;background:#0d0e10e8;padding:8px 12px;border:1px solid #303135;border-radius:9px;font-size:12px}
.c-front .desktop-front-side{height:100%;overflow:auto;min-height:0;padding:16px;box-sizing:border-box}
.c-front .desktop-front-side>.fcard{margin:14px 0}
.c-front .desktop-front-region-art{width:100%;height:150px;object-fit:cover;border-radius:10px;display:block}
.c-front .desktop-front-side .eropanel{border:0;padding:0;background:transparent}
.c-front .desktop-front-side .erow{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:10px 0}
.c-front .desktop-front-side .erow>.rn,.c-front .desktop-front-side .erow>.ebar,.c-front .desktop-front-side .erow>.esub{grid-column:1/-1}
.c-front .desktop-front-side .cachelist>.nrow{display:flex;flex-wrap:wrap;gap:8px;padding:12px 0}
.c-front .desktop-front-side .cachelist .sub{flex-basis:100%}
.c-front.desktop-front-page .exact-map-pin[hidden]{display:none!important}

/* s13: candidate tiles and one selected-hire column. */
.c-hire .desktop-hire-workspace{grid-template-columns:minmax(0,1fr) clamp(340px,29vw,460px)!important;height:calc(100dvh - 130px);gap:18px;align-items:stretch!important}
.c-hire .desktop-hire-candidates{height:100%;box-sizing:border-box;padding:16px;display:flex;flex-direction:column;min-height:0;gap:12px}
.c-hire .desktop-hire-candidates>.ui-candidate-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;align-content:start;padding:0;border:0;background:transparent;overflow:auto}
.c-hire .desktop-hire-candidates .ui-candidate{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;padding:12px;gap:8px}
.c-hire .desktop-hire-candidates .ui-candidate>img{width:100%;height:130px;max-width:none;object-fit:contain;background:transparent}
.c-hire .desktop-hire-candidates .ui-candidate>div{min-width:0;overflow-wrap:anywhere}
.c-hire .desktop-hire-workspace>.ui-selected{display:flex;flex-direction:column;height:100%;box-sizing:border-box}
.c-hire .desktop-hire-workspace .review-hire-booking{order:2;margin-top:auto}
.c-hire .desktop-hire-compare{margin:14px 0}
.c-hire .desktop-hire-compare>.ui-compare{margin-top:12px;border:0;padding:0}
@media(min-width:901px) and (max-width:1500px){.c-hire .desktop-hire-candidates>.ui-candidate-list{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:901px) and (max-width:1300px){.c-hire .desktop-hire-candidates>.ui-candidate-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* s19: native practice-duel data in a VS stage. */
.c-pvp .desktop-duel-workspace{grid-template-columns:clamp(280px,23vw,360px) minmax(0,1fr);gap:18px;height:calc(100dvh - 222px)}
.c-pvp .desktop-duel-workspace>.ui-detail>.feature-art{display:none}
.c-pvp .desktop-duel-workspace>.ui-detail{height:100%;box-sizing:border-box}
.c-pvp .desktop-duel-workspace .ui-opponent{display:flex;flex-direction:column;min-height:calc(100% - 85px);box-sizing:border-box;background:radial-gradient(ellipse at center,#29241b 0,transparent 75%)}
.c-pvp .desktop-duel-vs{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:16px;align-items:center;flex:1;text-align:center}
.c-pvp .desktop-duel-vs img{width:100%;height:280px;object-fit:contain}
.c-pvp .desktop-duel-target img{max-width:150px;opacity:.7}
.c-pvp .desktop-duel-separator{font-size:40px;color:var(--gd,#d4b25a)}
.c-pvp .desktop-duel-vs h3{border:0;margin:8px 0;padding:0}
.c-pvp .desktop-duel-actions{display:flex;gap:10px;margin-top:auto;padding-top:20px}
.c-pvp .desktop-duel-actions>.btn{flex:1;min-height:44px}

/* s18b/c/d: native member table, facility tiles, and funding form. */
.c-company .desktop-company-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) clamp(260px,22vw,350px);gap:18px;min-height:calc(100dvh - 230px)}
.c-company .desktop-company-overview>.pn{padding:16px;min-width:0;overflow:auto}
.c-company .desktop-company-overview .panel{margin:12px 0}
.c-company .desktop-company-summary>.kv{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:14px;margin:12px 0 25px}
.c-company .desktop-company-summary>.kv>dd{margin:0;text-align:right}
.c-company .desktop-company-summary>.btn{margin-top:12px;min-height:44px}
.c-company .desktop-company-person{display:flex;justify-content:space-between;gap:10px;padding:12px 0;border-bottom:1px solid #303135}
.c-company .desktop-company-members-layout,.c-company .desktop-company-funds-layout{display:grid;grid-template-columns:minmax(0,1fr) clamp(300px,26vw,400px);gap:18px;min-height:calc(100dvh - 230px)}
.c-company .desktop-company-members-table{padding:16px}
.c-company .desktop-company-member-detail .kv{display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:12px}
.c-company .desktop-company-member-detail .kv>dd{margin:0;text-align:right}
.c-company .desktop-company-member-pick{padding:0;background:transparent;border:0;text-align:left;font-weight:700;width:100%;min-height:44px}
.c-company .desktop-company-members-table tr.on{background:#d4b25a12}
.c-company .desktop-company-facility-layout .ui-master-detail{grid-template-columns:minmax(0,1fr) clamp(300px,26vw,400px)!important;gap:18px}
.c-company .desktop-company-facility-layout .ui-master-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start}
.c-company .desktop-company-facility-layout .ui-toolbar,.c-company .desktop-company-facility-layout .pc-pager{grid-column:1/-1}
.c-company .desktop-company-facility-layout .ui-list-item{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;gap:8px}
.c-company .desktop-company-facility-layout .ui-list-item>img{width:100%;height:120px;object-fit:contain}
.c-company .desktop-company-facility-layout .ui-detail .desktop-company-facility>img{width:100%;height:180px;object-fit:contain}
.c-company .desktop-company-facility-layout .ui-detail .desktop-company-facility{display:flex;flex-direction:column;min-height:100%}
.c-company .desktop-company-facility-layout .ui-detail .desktop-company-facility>.btn{margin-top:auto;min-height:44px}
.c-company .desktop-company-fund-balance{display:block;color:var(--gd,#d4b25a);font-size:28px;margin:12px 0 24px}
.c-company .desktop-company-funds-actions #depForm{display:flex;flex-direction:column;align-items:stretch;gap:12px}
.c-company .desktop-company-funds-actions #depForm>.btn{min-height:44px}
@media(min-width:901px) and (max-width:1400px){.c-company .desktop-company-facility-layout .ui-master-list{grid-template-columns:repeat(2,minmax(0,1fr))}}

.c-company .pc-section>.desktop-company-overview,.c-company .pc-section>.desktop-company-members-layout,.c-company .pc-section>.desktop-company-facility-layout,.c-company .pc-section>.desktop-company-funds-layout{grid-column:1/-1;width:100%;min-width:0}
}
/* DESKTOP-ONLY-END */



/* Desktop review fixes: preserve mobile baseline. */
@media(min-width:901px){
 .layout.t-bond .col.main{padding:12px!important}
 .c-bond.exact-bond .bond{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;gap:12px!important;min-width:0}
 .c-bond.exact-bond .bmain{min-width:0!important;padding:0!important}
 .c-bond.exact-bond .exact-bond-stage{display:grid!important;grid-template-columns:minmax(360px,1fr) 440px!important;gap:12px!important;height:calc(100dvh - 188px)!important;align-items:stretch}
 .c-bond.exact-bond .blist{width:300px!important;max-height:calc(100dvh - 188px)!important;min-height:0}
 .c-bond .exact-bond-portrait-column,.c-bond .exact-bond-visual{min-width:360px!important}
 .c-bond.exact-bond .exact-bond-visual{position:relative!important;width:100%!important;max-width:none!important;height:100%!important}
 .c-bond .exact-bond-bio{position:static!important;width:auto!important;max-width:100%;box-sizing:border-box}
 .c-bond .exact-bond-dialogue{left:12px!important;right:12px!important;width:auto!important;max-width:calc(100% - 24px);box-sizing:border-box}
 .c-contracts .exact-contract-toolbar{display:flex!important;flex-wrap:nowrap!important;align-items:center;gap:8px;padding:10px;margin-bottom:12px}
 .c-contracts .exact-filter-group{display:flex!important;align-items:center;gap:6px;min-width:0;flex:0 1 auto}
 .c-contracts .exact-filter-group b{white-space:nowrap;font-size:12px}
 .c-contracts .exact-filter-group select{width:110px;min-width:0}
 .c-contracts .exact-contract-sort{display:flex!important;align-items:center;gap:6px;min-width:0;margin-left:auto}
 .c-contracts .exact-contract-sort input{width:150px;min-width:60px}
 .c-contracts .exact-contract-layout{grid-template-columns:minmax(0,1fr) 400px!important;gap:16px;align-items:stretch;height:calc(100dvh - 225px)}
 .c-contracts .exact-contract-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-content:start;max-height:100%!important;overflow:auto}
 .c-contracts .exact-contract-list>header,.c-contracts .exact-contract-list>.pc-pager{grid-column:1/-1}
 .c-contracts .exact-contract-list>header{display:block}.c-contracts .exact-contract-list>header>span{display:none}
 .c-contracts .exact-contract-row{display:flex!important;flex-wrap:wrap;gap:8px;padding:0 12px 12px;margin:0!important;align-content:start;overflow:hidden;text-align:left;min-width:0}
 .c-contracts .exact-contract-row>img{width:calc(100% + 24px)!important;max-width:none!important;height:95px!important;object-fit:cover;margin:0 -12px 4px;border-radius:0}
 .c-contracts .exact-contract-description{width:100%;min-width:0}.c-contracts .exact-contract-description b{white-space:normal}
 .c-contracts .exact-row-reward{flex:1}.c-contracts .exact-row-deadline{font-size:11px}
 .c-contracts .exact-contract-detail{max-height:100%!important;height:100%;padding:14px!important;overflow:auto;position:relative;display:flex;flex-direction:column;gap:10px}
 .c-contracts .exact-contract-title{display:flex;flex-wrap:wrap;padding:0}.c-contracts .exact-contract-title h2{font-size:19px}
 .c-contracts .exact-contract-scene{height:110px;flex-shrink:0;object-fit:cover}
 .c-contracts .exact-condition-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .c-contracts .exact-departure{position:sticky!important;bottom:-14px!important;left:auto!important;right:auto!important;transform:none!important;margin-top:auto;display:flex!important;flex-direction:column;background:var(--p1,#17181a);padding:12px 0;z-index:2;flex-shrink:0;order:20;width:auto!important}
 .c-contracts .exact-take{align-self:stretch;text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:4px}
 .c-contracts .exact-contract-partner-inline .hsay{margin:0;min-width:0}.c-contracts .exact-contract-partner-inline .hsay img{max-width:65px;height:85px;object-fit:contain}
 .c-front .exact-world-map>h3{position:relative!important;z-index:2;line-height:1.5!important;min-height:30px!important;flex-shrink:0;padding:8px 12px!important;margin:0!important;white-space:normal!important;overflow:visible!important}
 .c-front .desktop-front-map{display:flex;flex-direction:column}.c-front .desktop-front-map>.exact-world-map-art{flex:1;height:auto!important;min-height:0}
}
@media(min-width:901px) and (max-width:1399px){.c-contracts .exact-contract-list{grid-template-columns:repeat(2,minmax(0,1fr))}.c-contracts .exact-contract-sort>b{display:none}.c-contracts .exact-filter-group select{width:95px}}
@media(min-width:901px){.c-contracts .exact-take{position:static!important;width:100%!important;box-sizing:border-box;right:auto!important;bottom:auto!important;box-shadow:none}.c-front .desktop-front-map>h3{clip-path:none!important;width:auto!important;height:auto!important}.c-bond.exact-bond .bside{width:440px!important;min-width:0!important;max-width:440px!important;padding:14px!important}.c-bond.exact-bond .exact-bond-stage{padding:0!important}.c-bond .exact-bond-portrait-column{height:100%!important}.c-bond.exact-bond .exact-bond-portrait-column>.bvisual{flex:1 1 0!important;height:auto!important;min-height:0!important}.c-contracts .exact-filter-group{border:0!important}.c-contracts .exact-contract-row{position:relative}.c-contracts .exact-contract-row>.exact-tier{position:absolute;top:8px;left:8px}.c-contracts .exact-contract-row>img{flex:0 0 calc(100% + 24px);object-position:center}.c-contracts .exact-contract-row>.exact-contract-description{flex-basis:100%}}
@media(min-width:901px){.c-front.desktop-front-page>.pc-section-tabs{top:54px!important}.c-bond.exact-bond .exact-bond-bio{max-height:none!important;overflow:visible!important;flex:0 0 auto}.c-bond.exact-bond .exact-bond-bio .bsub{white-space:normal!important;overflow-wrap:anywhere;line-height:1.6}.c-bond.exact-bond .bspecial{height:auto!important;min-height:58px!important;display:flex!important;align-items:center;padding:10px!important;box-sizing:border-box}.c-bond.exact-bond .bspecial .binfo{display:flex!important;flex-direction:column;gap:4px}.c-contracts .exact-contract-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:start}.c-contracts .exact-contract-row>img{grid-column:1/-1;width:calc(100% + 24px)!important;min-width:calc(100% + 24px)!important}.c-contracts .exact-contract-description{grid-column:1/-1}.c-contracts .exact-row-reward{grid-column:1}.c-contracts .exact-row-deadline{grid-column:2}}
/* 본부 빈 공간 · 아이콘 크기 정리 (2026-10-07 Claude) */
@media (min-width:901px){
 .c-home .ui-home-lower>.ui-home-news{max-height:none!important;display:flex;flex-direction:column}
 .c-home .ui-home-news>.panel{flex:1 1 auto;display:flex;flex-direction:column;height:100%;min-height:0}
 .c-home .ui-home-news>.panel>.panel-b{flex:1 1 auto;display:flex;flex-direction:column;min-height:0}
 .c-home .ui-home-news .log{flex:1 1 auto;max-height:none!important;min-height:0;overflow:auto}
 .c-home .ui-home-operator .ui-home-six{display:grid;grid-template-columns:1fr 1fr;gap:6px}
 .desktop-rail .railb img.uiico,.desktop-rail img.uiico{width:30px!important;height:30px!important}
 .dockmore .dmtabs{display:grid!important;grid-template-columns:repeat(4,1fr);gap:8px}
 .dockmore .dmtabs .railb{width:100%!important;height:auto!important;min-height:84px;padding:10px 4px;gap:6px;font-size:13px;border-radius:12px;background:#1b1e23;border:1px solid #2c3139}
 .dockmore .dmtabs .railb:hover{border-color:#a8893c}
 .dockmore .dmtabs .railb img.uiico{width:42px!important;height:42px!important}
}
/* 전투 화면 데스크톱 틀 (2026-10-07 Claude) */
@media (min-width:901px){
 body:has(.combat-desk) .rail.dock.desktop-rail{display:flex!important}
 body:has(.combat-desk) .desktop-rail .dk:not(.go),body:has(.combat-desk) .desktop-rail .dockmore,body:has(.combat-desk) .desktop-rail .dk-more{opacity:.38;pointer-events:none}
 body:has(.combat-desk) .desktop-rail .dk.go{pointer-events:none;background:linear-gradient(155deg,#d9605a,#8f3f3b)!important;color:#fff!important}
 body:has(.combat-desk) .desktop-rail .dk.go .rl{font-size:0!important}
 body:has(.combat-desk) .desktop-rail .dk.go .rl::after{content:'작전 중';font-size:10px}
 .combat-desk{position:fixed;left:76px;right:0;top:64px;bottom:0;overflow:auto;padding:12px 18px 16px;display:flex;flex-direction:column;gap:10px;scrollbar-gutter:stable}
 .combat-desk>.chead{margin:0;padding:8px 14px 10px;flex:none;background-size:cover}
 .combat-desk .chead .dist-track{height:42px;margin:2px 8px 2px}
 .combat-desk .chead .combat-range-notice{padding:6px 12px;margin:0}
 .combat-desk .chead .turnbar{margin-top:6px;padding:6px 12px}
 .combat-desk .chead .combat-effect-equipped{padding:6px 10px;margin:0}
 .combat-desk>.layout.combat.v2{flex:1 1 auto;min-height:0;margin:0;grid-template-columns:260px minmax(0,1fr) 340px}
 .combat-desk>.layout.combat.v2>.col{min-height:0;overflow:auto}
 .combat-desk .layout.combat.live .col.main{height:auto;overflow:auto}
}
@media (min-width:901px) and (max-width:1440px){
 .combat-desk>.layout.combat.v2{grid-template-columns:220px minmax(0,1fr) 280px;gap:10px}
 .combat-desk .hostiles{grid-template-columns:1fr!important}
 .combat-desk .col.ops .logpanel{min-height:220px}
}
@media (min-width:901px){.combat-desk>.layout.combat.v2>.col.ops{display:flex;flex-direction:column;gap:10px}.combat-desk .col.ops>.logpanel{flex:1 1 55%;min-height:240px;display:flex;flex-direction:column}.combat-desk .col.ops>.logpanel .log{flex:1 1 auto;min-height:0;overflow:auto}.combat-desk .col.ops>*:not(.logpanel){flex:1 1 45%;min-height:200px}}

/* 전투 왼쪽 열 겹침 수정 (2026-10-07 Claude) — 패널이 줄어들며 서로 덮던 문제: 안 줄이고 열 자체를 스크롤 */
@media (min-width:901px){
 .combat-desk>.layout.combat.v2>.col.side{display:flex;flex-direction:column;gap:10px;overflow-y:auto;overflow-x:hidden}
 .combat-desk>.layout.combat.v2>.col.side>*{flex:none;min-height:0}
 .combat-desk .col.side .wpanel .wbox .wimg{height:52px}
}

/* 출격 준비: 고정 출격바가 요약 아래를 덮던 문제 — 아래 여백을 줘서 끝까지 스크롤 (2026-10-07 Claude) */
@media (min-width:901px){
 .c-contracts .exact-sortie-prep{padding-bottom:110px!important}
 .c-contracts .exact-prep-summary{margin-bottom:8px}
}

/* 전투 가운데 열: 행동 패널이 줄어들며 아래(이동 줄)가 잘리던 문제 — 줄이지 않고 열을 스크롤 (2026-10-07 Claude) */
@media (min-width:901px){
 .combat-desk>.layout.combat.v2>.col.main{display:flex;flex-direction:column;gap:10px;overflow-y:auto;overflow-x:hidden}
 .combat-desk>.layout.combat.v2>.col.main>*{flex:none;min-height:auto}
 .combat-desk .actpanel.v3{overflow:visible;height:auto;max-height:none}
}

/* 본부 전역 상황판: 칸만 커지고 목록은 140px로 눌려 있던 문제 — 목록이 칸을 끝까지 채우게 (2026-10-07 Claude) */
@media (min-width:901px){
 body .pc-page[data-pc-page=home] .ui-home-news{display:flex;flex-direction:column;max-height:none!important;min-height:0;overflow:hidden}
 body .pc-page[data-pc-page=home] .ui-home-news>.panel{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;height:auto;max-height:none}
 body .pc-page[data-pc-page=home] .ui-home-news>.panel>.panel-b{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;overflow:hidden}
 body .pc-page[data-pc-page=home] .ui-home-news .log{flex:1 1 auto;min-height:0;max-height:none!important;overflow-y:auto;height:auto}
}

/* 본부: 파트너 카드가 너무 크던 것 + 보유 현황 타일 글자 잘림 (2026-10-07 Claude) */
@media (min-width:901px){
 body .c-home .ui-home-six{grid-template-columns:minmax(0,1fr)!important;gap:8px}
 body .c-home .ui-home-stat{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:8px!important;align-items:center;min-height:0!important;padding:10px!important;text-align:left}
 body .c-home .ui-home-stat>img{width:40px!important;height:40px!important;max-width:none;object-fit:contain}
 body .c-home .ui-home-stat>span{min-width:0;display:flex;flex-direction:column;gap:2px}
 body .c-home .ui-home-stat b,body .c-home .ui-home-stat small{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
 body .c-home .ui-home-stat strong{font-size:17px!important;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
}
@media (min-width:1700px){ body .c-home .ui-home-six{grid-template-columns:repeat(2,minmax(0,1fr))!important} }

/* 본부 B안: 파트너를 상단 배너 안으로 — 오른쪽 상반신 + 말풍선 (2026-10-07 Claude) */
@media (min-width:901px){
 body .c-home .ui-home-dashboard.partner-in-hero{grid-template-columns:minmax(0,1fr)!important}
 body .c-home .ui-home-dashboard.partner-in-hero>.ui-home-lower{grid-column:1!important}
 body .c-home .ui-home-dashboard.partner-in-hero>:first-child{position:relative;overflow:hidden;padding-right:520px!important;min-height:280px}
 body .c-home .ui-home-contract{max-width:none!important}
 body .c-home .ui-home-partner.in-hero{position:absolute!important;right:0;top:0;bottom:0;width:500px;min-height:0!important;height:auto!important;max-height:none!important;display:block!important;border:0!important;background:none!important;box-shadow:none!important;overflow:visible!important;pointer-events:none;align-self:auto}
 body .c-home .ui-home-partner.in-hero>img{position:absolute;right:18px;bottom:0;width:auto!important;height:108%!important;max-height:none!important;max-width:none;margin:0;object-fit:contain;flex:none!important}
 body .c-home .ui-home-partner.in-hero>.hs-b{position:absolute;right:215px;top:22px;bottom:auto;width:270px;margin:0!important;pointer-events:auto;border-left:3px solid #d4b25a}
 body .c-home .ui-home-partner.in-hero .bacts{margin-top:8px}
 body .c-home .ui-home-partner-empty.in-hero{display:flex!important;flex-direction:column;align-items:center;justify-content:center;gap:8px;text-align:center;right:18px;left:auto;top:50%;bottom:auto;width:250px;transform:translateY(-50%);height:auto!important;padding:16px;background:#0d0e10cc!important;border:1px solid #2c3139!important;border-radius:14px;pointer-events:auto}
 body .c-home .ui-home-partner-empty.in-hero>img{position:static;height:60px!important;width:auto!important;opacity:.7}
}
