/* Responsive media uses original pixels; only the matching backdrop is enlarged. */
body #app .hero-media-stage .hero-film-layer{object-fit:cover!important;object-position:center 45%!important;max-width:var(--media-native-width,1920px)!important;max-height:var(--media-native-height,1080px)!important;top:50%!important;left:50%!important;transform:translate(-50%,-50%)!important;}
body #app .hero-media-stage:before{content:"";position:absolute;inset:0;background-image:var(--hero-photo);background-position:center;background-size:cover;filter:blur(40px);opacity:.45;transform:scale(1.15);}
body #app .rotating-hero.hero{height:clamp(360px,42vw,820px)!important;min-height:0!important;max-height:none!important;}
body #app .rotating-hero.archive-cover{height:clamp(340px,35vw,680px)!important;min-height:0!important;max-height:none!important;}
body #app .rotating-hero.dossier-cover{height:clamp(320px,31vw,620px)!important;min-height:0!important;max-height:none!important;}
.fitting-insights{padding:14px 0;border-bottom:1px solid var(--line);font-size:14px;line-height:1.6;}
.insights-heading,.insight-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:space-between}.insights-heading h3{margin:0}.insight-verdict{font-weight:700;color:#ace2c2}.insight-verdict[data-status="需降级"]{color:#f3d18b}.insight-verdict[data-status="不可行"]{color:#ffb5a8}
.insight-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.insight-metric{padding:10px;background:#ffffff07;border:1px solid var(--line);border-radius:6px;min-width:0}.insight-metric small,.insight-metric span{display:block;font-size:13px}.insight-metric strong{display:block;font-size:19px;line-height:1.5;overflow-wrap:anywhere}
.insight-thermal,.insight-constraints{margin:10px 0;font-size:14px!important}.insight-controls{justify-content:flex-start;margin:12px 0}.insight-controls button,.insight-controls select{min-height:38px;font-size:13px}.insight-controls label{display:flex;gap:6px;align-items:center;font-size:13px}
.insight-table-wrap{overflow-x:auto}.insight-ab table{width:100%;border-collapse:collapse;font-size:14px}.insight-ab th,.insight-ab td{padding:9px 7px;border-bottom:1px solid var(--line);text-align:left;white-space:normal}.insight-changed{background:#95c9e815}.insight-changed th{border-left:3px solid #92badc}.insight-history article{padding:12px 0;border-top:1px solid var(--line)}.insight-history h4{margin:0}.insight-history h4 span{float:right}.insight-history p,.insight-history li{font-size:13px!important;margin:6px 0}
.fitting-insights details{margin-top:12px}.fitting-insights summary,.fusion-rated-metrics summary{cursor:pointer;font-size:14px;font-weight:650;padding:9px 0}.fusion-rated-metrics{margin:10px 0}.fusion-details .fusion-metrics{margin-top:8px}
body #app .material-slot-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr))!important;gap:10px!important;align-items:start!important}body #app .material-slot{padding:12px!important;min-height:0!important}body #app .slot-heading{margin-bottom:8px!important}body #app .slot-heading h3{font-size:15px!important}body #app .slot-resource{padding:8px!important;min-height:0!important;gap:8px}body #app .slot-resource a,body #app .slot-resource b{font-size:15px!important}body #app .slot-resource small{font-size:12px!important}body #app .slot-quality{margin-top:9px!important}body #app .slot-quality input{font-size:15px!important;width:72px!important}body #app .slot-scale{font-size:12px!important}body #app .slot-effects{margin:8px 0 0!important}body #app .slot-effect{padding:5px 0!important;display:flex;justify-content:space-between;gap:8px}body #app .slot-effect dt,body #app .slot-effect dd{font-size:13px!important;margin:0}.craft-quality-overview{padding:10px 12px;margin:8px 0 12px;background:#9fcbe810;border:1px solid var(--line);font-size:14px;font-weight:600;line-height:1.6}
html[data-theme=light] #app .insight-metric,html[data-theme=light] #app .craft-quality-overview{background:#e8f0f7!important;color:#203c55!important}html[data-theme=light] #app .insight-verdict[data-status="可行"]{color:#216441!important}html[data-theme=light] #app .insight-verdict[data-status="需降级"]{color:#765110!important}html[data-theme=light] #app .insight-verdict[data-status="不可行"]{color:#a03122!important}
body #app .fitting-insights :is(button,select,input,a):focus-visible{outline:3px solid #83bde8;outline-offset:3px}
@media(max-width:900px){body #app .rotating-hero:is(.hero,.archive-cover,.dossier-cover){height:clamp(300px,62vw,460px)!important}body #app .hero-media-stage .hero-film-layer{object-position:center 38%!important}.insight-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){body #app .rotating-hero .poster-credit,body #app .rotating-hero .poster-progress{display:none!important}body #app .rotating-hero .poster-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.insight-cards{grid-template-columns:1fr}.insight-ab th,.insight-ab td{padding:8px 4px;font-size:13px}.insight-controls{align-items:stretch;flex-direction:column}.insight-controls label{min-height:36px}body #app .material-slot-grid{grid-template-columns:1fr!important}}
/* Full-width continuous media, with softened edges over a matching blurred frame. */
body #app .rotating-hero .hero-media-stage{inset:0;width:100%;height:100%;max-width:none;opacity:1;mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 90%,transparent 100%)!important;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 3%,#000 90%,transparent 100%)!important}
body #app .rotating-hero .hero-media-stage:before{opacity:.72;background-repeat:no-repeat;background-size:cover;}
body #app .rotating-hero .hero-media-stage .hero-film-layer{mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 92%,transparent);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent,#000 7%,#000 93%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 92%,transparent);-webkit-mask-composite:source-in;animation:none!important;}
body #app .rotating-hero .hero-media-stage .hero-film-layer{inset:auto!important;top:50%!important;left:50%!important;right:auto!important;bottom:auto!important;margin:0!important;object-position:center center!important;transform:translate(-50%,-50%)!important;}
body #app .rotating-hero .hero-media-stage:before{background-position:center center!important;}
html[data-theme=light] #app .rotating-hero .atlas-cover-copy:before{content:"";position:absolute;inset:-55px -12%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at center,#eff5fbf2 0%,#eff5fbd9 24%,#eff5fb70 48%,transparent 72%);}
/* Still photographs fill the frame vertically; only the sides blend into the backdrop. */
body #app .rotating-hero .hero-media-stage img.hero-film-layer{height:100%!important;width:auto!important;max-height:none!important;max-width:none!important;object-fit:contain!important;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)!important;-webkit-mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)!important;}
body[data-view=library] #app .page-heading{background-image:linear-gradient(100deg,#102233e8,#11273aa6 62%,#11233855),var(--scene-image,url('/photography/photo-356.webp'))!important;background-position:center 45%!important;background-size:cover!important;}
html[data-theme=light] body[data-view=library] #app .page-heading{background-image:linear-gradient(100deg,#edf3f9f2,#edf3f9cf 55%,#edf3f958),var(--scene-image,url('/photography/photo-356.webp'))!important;}
body #app .signature-board{padding:8px 10px;margin:8px 0;min-height:0;}
body #app .signature-heading{gap:8px;}body #app .signature-heading label{display:flex;align-items:center;gap:6px;margin:0;}
body #app .signature-grid{gap:6px;margin-top:6px;}body #app .signature-grid>div{padding:7px 9px;gap:2px;min-height:0;}
body #app .signature-grid strong{font-size:17px;line-height:1.35;}body #app .signature-grid span{line-height:1.4;}
body #app .signature-board details{margin-top:5px;}body #app .signature-board summary{padding:3px 0;}
body #app .insight-cards{margin-top:7px;gap:6px;}body #app .insight-metric{padding:7px 9px;}body #app .fitting-insights{padding:8px 0;}
@media(max-width:600px){body #app .signature-grid{grid-template-columns:1fr;}}
body #app .fusion-workspace{align-items:start!important;gap:12px!important;}
body #app .fusion-details,body #app .fusion-equipment-column{padding:12px!important;min-height:0!important;}
body #app .fusion-craft-center>.fusion-purchase-details{margin:10px 0 0!important;padding:10px!important;}
body #app .fusion-craft-center .material-slot-grid{padding-block:5px;gap:7px!important;}
body #app .fusion-craft-center .material-slot{padding:7px!important;}
body #app .fusion-craft-center .slot-heading{margin:0 0 4px!important;}
body #app .fusion-craft-center .slot-heading h3{font-size:14px!important;}
body #app .fusion-craft-center .slot-heading>span{font-size:10px;line-height:1.3;}
body #app .fusion-craft-center .slot-resource{
 flex-direction:row;align-items:flex-start;gap:5px;
 margin:0;padding:4px 5px!important;line-height:1.35;
}
body #app .fusion-craft-center .slot-resource>div{min-width:0;overflow-wrap:anywhere;}
body #app .fusion-craft-center .slot-resource :is(a,b){font-size:13px!important;line-height:1.35;}
body #app .fusion-craft-center .slot-resource small{font-size:11px!important;line-height:1.3;}
body #app .fusion-craft-center .slot-quantity{white-space:nowrap;line-height:1.35;}
body #app .fusion-craft-center .slot-quality{margin:5px 0 2px!important;gap:4px;flex-wrap:wrap;font-size:11px;}
body #app .fusion-craft-center .slot-quality input{width:55px!important;font-size:14px!important;}
body #app .fusion-craft-center .material-slot input[type=range]{display:block;width:100%;margin:0;height:16px;}
body #app .fusion-craft-center .slot-scale{font-size:10px!important;line-height:1.2;}
body #app .fusion-craft-center .slot-effects{margin:4px 0 0!important;padding:3px;gap:3px;line-height:1.35;}
body #app .fusion-craft-center .slot-effect{padding:3px 4px;min-width:0;gap:4px;}
body #app .fusion-craft-center .slot-effect dt{line-height:1.3;white-space:normal;overflow-wrap:anywhere;}
body #app .fusion-craft-center .slot-effect dd{margin:0;white-space:nowrap;}
@media (max-width:600px),(pointer:coarse){
 body #app .fusion-craft-center .slot-quality :is(button,input){min-height:40px;box-sizing:border-box;}
 body #app .fusion-craft-center .slot-quality button{min-width:40px;}
 body #app .fusion-craft-center .material-slot input[type=range]{height:24px;min-height:24px;}
}
body #app .blueprint-acquisition{margin-top:10px!important;padding:10px!important;}
body #app .blueprint-acquisition h3{margin:0 0 6px!important;}
body #app .acquisition-task-list{max-height:260px!important;overflow-y:auto;}
body #app .acquisition-task-list>div{padding:7px!important;margin:0 0 5px!important;}
body #app .acquisition-task-list a{padding:8px 10px!important;min-height:0!important;}
body #app .blueprint-acquisition-compact{margin:6px 0 0!important;padding:0!important;}
.blueprint-acquisition-compact>summary{min-height:42px;gap:8px;font-size:14px;}
.blueprint-acquisition-compact .blueprint-acquisition-title{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;}
.blueprint-acquisition-compact .blueprint-acquisition-title small,
.blueprint-acquisition-compact .blueprint-acquisition-toggle{font-size:12px;color:var(--muted);}
body #app .blueprint-acquisition-compact .acquisition-task-list{gap:0;}
body #app .blueprint-acquisition-compact .acquisition-task-list>div{padding:5px 0!important;margin:0!important;gap:2px 8px;}
body #app .blueprint-acquisition-compact .task-source-link{
 display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1px 8px;
 padding:2px 0!important;border:0;background:transparent;
}
.blueprint-acquisition-compact .task-name-zh{grid-column:1;font-size:14px!important;line-height:1.45;overflow-wrap:anywhere;}
.blueprint-acquisition-compact .task-name-en{grid-column:1;margin:0;font-size:11px!important;line-height:1.4;}
.blueprint-acquisition-compact .task-link-action{grid-area:1 / 2 / 3 / 3;margin:0;white-space:nowrap;}
.blueprint-acquisition-compact .acquisition-task-list>div>:is(small,span){font-size:11px;line-height:1.4;overflow-wrap:anywhere;}
.blueprint-acquisition-compact[open]>.blueprint-acquisition-source{display:block;margin:5px 0;color:var(--muted);}
.blueprint-acquisition-compact>p{margin:0 0 6px;}
body #app .fusion-details details{margin-top:6px!important;margin-bottom:6px!important;}
body #app .fusion-details details>summary{padding:5px 0!important;}
body #app .fusion-quality-table :is(th,td){padding:6px 8px!important;}
body #app .fusion-purchase-details .buy-summary{padding:9px!important;margin:8px 0!important;}
/* Search candidates are transient and restricted to the ship workspace. */
body #app .fusion-ship-selector-bar[hidden],body #app #fusion-ship-list[hidden],body #app #fusion-ship-summary[hidden]{display:none!important;}
/* Purchase filters share a horizontal, wrapping row in either workshop column. */
body #app .fusion-page .buy-filters{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:flex-end!important;gap:8px 10px!important;margin:10px 0!important;}
body #app .fusion-page .buy-filters>label{display:flex!important;flex-direction:column!important;flex:1 1 130px!important;width:auto!important;min-width:0!important;gap:4px!important;margin:0!important;font-size:12px!important;}
body #app .fusion-page .buy-filters>.buy-search{flex:1.4 1 170px!important;}
body #app .fusion-page .buy-filters :is(input,select){width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box;min-height:36px;padding:7px 9px!important;}
body #app .fusion-page .buy-filters>button{flex:0 0 auto;width:auto!important;min-height:36px;margin:0!important;padding:7px 12px!important;}

/* 2026-11-02: top edge flush; fade only bottom and sides. */
body #app .rotating-hero .hero-media-stage{mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%)!important;-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,transparent 100%)!important;}
body #app .rotating-hero .hero-media-stage .hero-film-layer{top:0!important;transform:translateX(-50%)!important;height:100%!important;width:auto!important;min-width:0!important;max-height:none!important;max-width:none!important;object-fit:contain!important;mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)!important;-webkit-mask-image:linear-gradient(to right,transparent,#000 8%,#000 92%,transparent)!important;}
html[data-theme=light] body #app :is(.equipment-slot,.equipment-candidate,.slot-current,.inline-candidate){background:#edf4fb!important;border-color:#bdcfe1!important;color:#234564!important;}
html[data-theme=light] body #app .equipment-slot summary{background:#e4eef8!important;color:#234564!important;}
html[data-theme=light] body #app .equipment-slot :is(small,p,strong){color:#365676!important;}
.sandbox-cargo-frame{width:100%;height:max(720px,calc(100vh - 150px));border:0;display:block;background:#13212c;}
.sandbox-workspace-tabs{display:flex;gap:10px;padding:12px 24px;flex-wrap:wrap}.sandbox-workspace-tabs .active{border-color:var(--accent);background:#80a8c32b;}

body[data-language=en] header{height:auto!important;min-height:76px;display:flex!important;flex-wrap:wrap!important;gap:12px!important;align-items:center!important;padding-top:10px!important;padding-bottom:8px!important;}
body[data-language=en] header .brand{width:auto!important;min-width:0!important;flex:1 1 220px!important;position:static!important;}
body[data-language=en] header .brand>span{max-width:none!important;white-space:normal;}
body[data-language=en] header nav{position:static!important;transform:none!important;order:5;flex:1 0 100%!important;width:100%!important;display:flex!important;justify-content:center;flex-wrap:wrap!important;gap:4px 16px!important;}
body[data-language=en] header nav a{flex:0 0 auto!important;white-space:nowrap;padding:8px 4px!important;}
body[data-language=en] header :is(#language-switch,#theme-switch,.appearance-controls){position:static!important;flex:0 0 auto!important;transform:none!important;margin:0!important;}
.reward-grid{align-items:start!important}.reward-grid>article{align-self:start;height:auto!important;}
.reward-grid img{object-fit:contain!important;max-height:150px;width:100%;}

/* Home carousel: a shallower, wider frame matching the requested reference. */
body #app .rotating-hero.hero{height:clamp(340px,34vw,560px)!important}
@media(max-width:720px){body #app .rotating-hero.hero{height:clamp(280px,65vw,400px)!important}}

/* Fill the shallow home banner horizontally without distorting the asset. */
body #app .rotating-hero.hero .hero-media-stage .hero-film-layer{width:100%!important;height:100%!important;min-width:100%!important;max-width:none!important;left:0!important;top:0!important;transform:none!important;object-fit:cover!important;object-position:center 45%!important;mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)!important;-webkit-mask-image:linear-gradient(to right,transparent,#000 3%,#000 97%,transparent)!important}

/* Touch navigation keeps readable labels instead of shrinking them. */
@media(max-width:900px){body header{padding-top:8px!important;gap:6px!important;overflow:visible!important}body header>.brand,body[data-language=en] header>.brand{min-width:0!important;flex:1 1 auto!important;max-width:calc(100% - 150px)!important}body header .brand-emblem{width:65px!important;height:34px!important}body header .brand-title{font-size:12px!important;letter-spacing:0!important}body header>.header-utilities{flex:0 0 auto!important;margin-left:auto!important}body header nav,body[data-language=en] header nav{order:5!important;flex:0 0 100%!important;width:100%!important;max-width:100%!important;min-width:0!important;display:flex!important;justify-content:flex-start!important;flex-wrap:nowrap!important;gap:4px!important;overflow-x:auto!important;overflow-y:hidden!important;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;scrollbar-width:thin;scroll-padding:12px;padding:2px 0 5px!important;height:auto!important;position:static!important;transform:none!important}body header nav a,body[data-language=en] header nav a{flex:0 0 auto!important;min-width:76px!important;min-height:44px!important;height:auto!important;box-sizing:border-box!important;justify-content:center!important;padding:11px 12px!important;font-size:14px!important;line-height:20px!important;white-space:nowrap!important;margin:0!important}body header nav .nav-dsa-isolated{margin-left:8px!important}}@media(max-width:420px){body header>.brand>span{padding-left:7px!important}body header .brand-emblem{width:52px!important}body header>.header-utilities{gap:3px!important}.header-utilities #language-switch,.header-utilities #appearance-switch{min-width:54px!important;padding:7px!important}body header .brand small{font-size:6px!important}}
