.factory-metrics-tab{flex-direction:column;gap:clamp(.8rem,.6rem + .35vw,1.2rem);display:flex}.factory-metrics-banner{color:#e2e8f0;background:#1e293bbf;border:1px solid #47556973;border-radius:clamp(.4rem,.35rem + .18vw,.55rem);flex-direction:column;gap:clamp(.35rem,.28rem + .15vw,.5rem);padding:clamp(.6rem,.5rem + .25vw,.9rem);font-size:clamp(.72rem,.68rem + .16vw,.88rem);line-height:1.5;display:flex}.factory-metrics-banner strong{color:#f8fafc}.factory-metrics-banner__note{color:#94a3b8e6;margin:0;font-size:clamp(.68rem,.64rem + .15vw,.82rem)}.factory-metrics-message{color:#e2e8f0e6;background:#1e293bbf;border:1px solid #47556973;border-radius:clamp(.4rem,.35rem + .18vw,.55rem);flex-direction:column;gap:clamp(.45rem,.35rem + .2vw,.6rem);margin:0;padding:clamp(.6rem,.5rem + .25vw,.9rem);font-size:clamp(.72rem,.68rem + .16vw,.88rem);line-height:1.55;display:flex}.factory-metrics-message>p{margin:0}.factory-metrics-message__action{color:#e2e8f0;cursor:pointer;background:#3b82f62e;border:1px solid #3b82f666;border-radius:clamp(.35rem,.3rem + .12vw,.48rem);align-self:flex-start;padding:clamp(.28rem,.24rem + .12vw,.4rem) clamp(.6rem,.5rem + .2vw,.8rem);font-size:clamp(.68rem,.64rem + .14vw,.8rem);transition:background .18s,border-color .18s}.factory-metrics-message__action:hover,.factory-metrics-message__action:focus-visible{background:#3b82f647;border-color:#60a5faa6;outline:none}.factory-metrics-banner__actions{gap:clamp(.35rem,.3rem + .15vw,.5rem);margin-top:clamp(.05rem,.04rem + .05vw,.1rem);display:flex}.factory-metrics-banner__actions button{color:#e2e8f0;cursor:pointer;background:#1e293b99;border:1px solid #3b82f666;border-radius:clamp(.35rem,.3rem + .12vw,.48rem);padding:clamp(.25rem,.2rem + .12vw,.38rem) clamp(.55rem,.5rem + .18vw,.75rem);font-size:clamp(.66rem,.62rem + .12vw,.78rem);transition:background .18s,border-color .18s}.factory-metrics-banner__actions button:hover,.factory-metrics-banner__actions button:focus-visible{background:#3b82f638;border-color:#60a5faa6;outline:none}.factory-metrics-grid{grid-gap:clamp(.75rem,.6rem + .3vw,1.1rem);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:clamp(.75rem,.6rem + .3vw,1.1rem);display:grid}.factory-metrics-card{background:#0f172ad9;border:1px solid #3b82f633;border-radius:clamp(.4rem,.35rem + .18vw,.55rem);flex-direction:column;gap:clamp(.45rem,.35rem + .2vw,.6rem);padding:clamp(.6rem,.5rem + .25vw,.9rem);display:flex}.factory-metrics-card__header{justify-content:space-between;align-items:flex-start;gap:clamp(.4rem,.3rem + .2vw,.6rem);display:flex}.factory-metrics-card__label{color:#f8fafc;margin:0;font-size:clamp(.78rem,.72rem + .16vw,.92rem);font-weight:600}.factory-metrics-card__description{color:#94a3b8e6;margin:clamp(.15rem,.1rem + .12vw,.28rem) 0 0;font-size:clamp(.66rem,.6rem + .14vw,.8rem)}.factory-metrics-card__value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#f1f5f9;text-align:right;margin:0;font-size:clamp(.92rem,.86rem + .22vw,1.1rem)}.factory-metrics-card__unit{color:#94a3b8e6;margin-top:clamp(.08rem,.06rem + .05vw,.12rem);font-size:clamp(.62rem,.58rem + .12vw,.72rem);display:block}.factory-metrics-card__sparkline{width:100%;height:clamp(3.1rem,2.8rem + .45vw,3.6rem)}.factory-metrics-card__empty{text-align:center;color:#94a3b8e6;background:#1e293ba6;border:1px dashed #94a3b866;border-radius:clamp(.35rem,.3rem + .14vw,.48rem);margin:0;padding:clamp(.4rem,.3rem + .2vw,.6rem);font-size:clamp(.66rem,.6rem + .14vw,.8rem)}.factory-metrics-card__stats{grid-gap:clamp(.35rem,.3rem + .15vw,.5rem);color:#94a3b8eb;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.35rem,.3rem + .15vw,.5rem);margin:0;font-size:clamp(.64rem,.6rem + .12vw,.76rem);display:grid}.factory-metrics-card__stats div{flex-direction:column;gap:clamp(.08rem,.06rem + .05vw,.12rem);display:flex}.factory-metrics-card__stats dt{color:#e2e8f0e6;margin:0;font-weight:600}.factory-metrics-card__stats dd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#94a3b8f2;margin:0}.factory-metrics-inline{background:#1e293b99;border:1px solid #3b82f640;border-radius:999px;align-items:center;gap:clamp(.35rem,.3rem + .15vw,.5rem);padding:clamp(.18rem,.14rem + .12vw,.3rem) clamp(.32rem,.28rem + .15vw,.45rem);display:inline-flex}.factory-metrics-inline__sparkline{width:clamp(4.5rem,3.8rem + .8vw,5.5rem);height:clamp(1.6rem,1.4rem + .25vw,1.95rem)}.factory-metrics-inline__value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#f8fafc;font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.factory-metrics-inline__unit{color:#94a3b8cc;margin-left:.15rem;font-size:.85em}.factory-panel{padding:var(--panel-padding-y)var(--panel-padding-x);border-radius:var(--card-radius);background:#0f172ab8;border:1px solid #94a3b82e}.factory-panel h3{font-size:var(--panel-heading-size);margin-top:0;margin-bottom:.5rem}.factory-panel p{color:#cbd5f5;margin:.25rem 0;font-size:clamp(.78rem,.72rem + .18vw,.9rem)}.factory-actions{justify-content:flex-end;gap:clamp(.4rem,.3rem + .2vw,.6rem);margin-bottom:clamp(.45rem,.35rem + .2vw,.6rem);display:flex}.factory-actions button{color:#bfdbfe;cursor:pointer;background:#2563eb2e;border:1px solid #3b82f666;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);padding:clamp(.3rem,.25rem + .15vw,.45rem) clamp(.5rem,.45rem + .25vw,.7rem);font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.factory-actions button:disabled{color:#94a3b8;cursor:not-allowed;border-color:#94a3b866}.factory-buy{background:#1e293b99;border:1px solid #94a3b840;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);margin:clamp(.6rem,.45rem + .25vw,.85rem) 0;padding:clamp(.4rem,.3rem + .2vw,.6rem)}.factory-buy .cost{color:#cbd5f5;margin-bottom:.5rem;font-size:clamp(.74rem,.68rem + .16vw,.86rem)}.warehouse-summary{background:#0f172aa6;border:1px solid #94a3b82e;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);margin:clamp(.45rem,.35rem + .2vw,.65rem) 0;padding:clamp(.35rem,.28rem + .15vw,.5rem)}.warehouse-summary h4{margin:0 0 clamp(.3rem,.25rem + .15vw,.45rem);font-size:clamp(.76rem,.7rem + .18vw,.9rem)}.warehouse-list{grid-gap:clamp(.18rem,.15rem + .1vw,.25rem);grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.18rem,.15rem + .1vw,.25rem);margin:0;padding:0;list-style:none;display:grid}.warehouse-row{color:#e2e8f0;justify-content:space-between;gap:.35rem;font-size:clamp(.68rem,.64rem + .14vw,.8rem);display:flex}.warehouse-row .warehouse-name{color:#cbd5f5}.warehouse-row .warehouse-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.warehouse-row.muted,.warehouse-row.muted .warehouse-name{color:#94a3b8}.buy-factory-btn{color:#fff;cursor:pointer;background:#4a90e2;border:none;border-radius:clamp(.35rem,.3rem + .1vw,.45rem);width:100%;padding:clamp(.45rem,.35rem + .2vw,.65rem);font-size:clamp(.78rem,.72rem + .18vw,.92rem);font-weight:700}.buy-factory-btn:hover:not(:disabled){background:#357abd}.buy-factory-btn:disabled{cursor:not-allowed;background:#ccc}.factory-card{background:#0f172ae6;border:1px solid #94a3b833;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);margin-bottom:clamp(.6rem,.45rem + .25vw,.85rem);padding:clamp(.45rem,.35rem + .2vw,.65rem);font-size:clamp(.74rem,.68rem + .18vw,.88rem)}.factory-card.selected{margin-top:1rem}.factory-card-header{justify-content:space-between;align-items:center;margin-bottom:clamp(.4rem,.3rem + .2vw,.6rem);display:flex}.factory-card-meta{align-items:center;gap:clamp(.35rem,.3rem + .15vw,.55rem);display:flex}.factory-card-actions{align-items:center;gap:clamp(.35rem,.3rem + .18vw,.6rem);display:flex}.factory-card-title{font-size:clamp(.85rem,.8rem + .18vw,.98rem);font-weight:600}.factory-card-index{color:#94a3b8;font-size:clamp(.66rem,.6rem + .14vw,.78rem)}.pin-button{cursor:pointer;background:0 0;border:none;padding:clamp(.08rem,.06rem + .05vw,.12rem) clamp(.16rem,.14rem + .05vw,.22rem);font-size:clamp(.82rem,.78rem + .12vw,.95rem);line-height:1}.pin-button:focus{outline-offset:2px;outline:2px solid #4a90e2}.factory-grid{grid-gap:clamp(.6rem,.5rem + .2vw,.85rem);color:#e2e8f0;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:clamp(.6rem,.5rem + .2vw,.85rem);margin-bottom:clamp(.55rem,.45rem + .2vw,.8rem);display:grid}.factory-card-tabs{gap:clamp(.25rem,.2rem + .15vw,.4rem);margin-bottom:clamp(.45rem,.35rem + .2vw,.6rem);display:inline-flex}.factory-card-tab{color:#cbd5f5;cursor:pointer;background:#1e293b99;border:1px solid #94a3b859;border-radius:clamp(.35rem,.3rem + .12vw,.5rem);padding:clamp(.25rem,.2rem + .12vw,.4rem) clamp(.6rem,.5rem + .2vw,.8rem);font-size:clamp(.68rem,.64rem + .14vw,.8rem);transition:background .18s,border-color .18s,color .18s}.factory-card-tab--active{color:#e2e8f0;background:#3b82f638;border-color:#60a5faa6}.factory-grid h4{margin:0 0 .25rem;font-size:clamp(.76rem,.7rem + .18vw,.9rem)}.factory-grid p{margin:.15rem 0}.hauler-upgrades__header{justify-content:space-between;align-items:center;gap:clamp(.35rem,.3rem + .12vw,.5rem);display:flex}.hauler-upgrades__info-button{color:#818cf8d9;cursor:help;background:0 0;border:none;border-radius:999px;padding:.1rem .25rem;font-size:clamp(.78rem,.72rem + .16vw,.9rem);line-height:1}.hauler-upgrades__info-button:focus-visible{outline-offset:2px;outline:2px solid #818cf8a6}.hauler-upgrades__helper{color:#c7d2fed9;margin:.25rem 0 clamp(.35rem,.28rem + .15vw,.5rem);font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.factory-bar{background:#1e293bcc;border-radius:999px;width:100%;height:.5rem;overflow:hidden}.factory-bar-fill{background:linear-gradient(90deg,#34d399,#10b981);height:100%;transition:width .2s}.factory-queue{flex-wrap:wrap;gap:clamp(.25rem,.2rem + .15vw,.4rem);margin:0;padding:0;list-style:none;display:flex}.factory-queue-item{background:#3b82f61f;border-radius:.2rem;padding:clamp(.18rem,.15rem + .05vw,.28rem) clamp(.32rem,.28rem + .1vw,.45rem)}.factory-queue-item.waiting{color:#94a3b8;background:#94a3b826}.factory-queue-item.empty{color:#cbd5f5;background:#94a3b81f;font-style:italic}.factory-pagination{justify-content:center;align-items:center;gap:.35rem;margin-top:clamp(.3rem,.25rem + .15vw,.45rem);display:flex}.factory-pagination.roster{margin-top:clamp(.4rem,.3rem + .2vw,.55rem)}.factory-page-btn{color:#e2e8f0;cursor:pointer;background:#1e293ba6;border:1px solid #94a3b859;border-radius:999px;justify-content:center;align-items:center;width:clamp(1.5rem,1.3rem + .3vw,1.8rem);height:clamp(1.5rem,1.3rem + .3vw,1.8rem);font-size:.75rem;transition:background .18s,border-color .18s;display:inline-flex}.factory-page-btn:hover:not(:disabled){background:#3b82f640;border-color:#3b82f68c}.factory-page-btn:disabled{opacity:.45;cursor:not-allowed}.factory-page-indicator{color:#cbd5f5;font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.factory-upgrades{border-top:1px solid #94a3b82e;margin-top:clamp(.6rem,.45rem + .25vw,.85rem);padding-top:clamp(.35rem,.25rem + .2vw,.6rem)}.factory-upgrade-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:clamp(.4rem,.3rem + .2vw,.65rem);margin-bottom:clamp(.35rem,.25rem + .2vw,.55rem);display:flex}.factory-upgrade-content{flex:16rem;min-width:0}.factory-upgrade-row .desc{color:#94a3b8;font-size:clamp(.66rem,.6rem + .14vw,.78rem)}.factory-upgrade-row .upgrade-variant{flex-direction:column;gap:clamp(.2rem,.18rem + .12vw,.3rem);margin-top:clamp(.25rem,.2rem + .15vw,.4rem);display:flex}.factory-upgrade-row .upgrade-variant select{color:#e2e8f0;background:#1e293bd9;border:1px solid #3b82f659;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);width:100%;max-width:100%;padding:clamp(.3rem,.25rem + .15vw,.45rem) clamp(.4rem,.35rem + .2vw,.6rem);font-size:clamp(.66rem,.62rem + .14vw,.78rem);line-height:1.35;transition:border-color .18s,box-shadow .18s,background .18s}.factory-upgrade-row .upgrade-variant select:focus{background:#0f172af2;border-color:#7dd3fccc;outline:none;box-shadow:0 0 0 2px #38bdf859}.factory-upgrade-row .upgrade-variant select option{white-space:normal}.factory-upgrade-actions{flex-direction:column;flex:none;width:clamp(7.5rem,6.2rem + 3vw,9.5rem);display:flex}.factory-upgrade-actions .upgrade-button{white-space:normal;text-align:center;width:100%;line-height:1.35}@media (width<=520px){.factory-upgrade-actions{width:100%}}.upgrade-button{color:#bae6fd;cursor:pointer;background:#0ea5e92e;border:1px solid #38bdf880;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);padding:clamp(.3rem,.25rem + .15vw,.45rem) clamp(.5rem,.45rem + .25vw,.7rem);font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.upgrade-button:disabled{color:#94a3b8;cursor:not-allowed;background:#1e293b99;border-color:#94a3b84d}.factory-roster{margin-top:clamp(.6rem,.45rem + .25vw,.85rem)}.factory-roster-list{grid-gap:clamp(.25rem,.2rem + .15vw,.4rem);grid-template-columns:repeat(auto-fill,minmax(6rem,1fr));gap:clamp(.25rem,.2rem + .15vw,.4rem);margin:0;padding:0;list-style:none;display:grid}.factory-roster-list li{text-align:center;background:#2563eb24;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);padding:clamp(.25rem,.2rem + .1vw,.35rem);font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.factory-storage-list{grid-gap:clamp(.18rem,.15rem + .1vw,.28rem);gap:clamp(.18rem,.15rem + .1vw,.28rem);margin:clamp(.25rem,.2rem + .15vw,.4rem) 0 0;padding:0;list-style:none;display:grid}.storage-row{color:#e2e8f0;justify-content:space-between;gap:.45rem;font-size:clamp(.68rem,.64rem + .14vw,.8rem);display:flex}.storage-row .storage-name{color:#cbd5f5}.storage-row .storage-value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.storage-row.muted,.storage-row.muted .storage-name{color:#94a3b8}.factory-refines{margin-top:clamp(.6rem,.45rem + .25vw,.85rem)}.factory-refines ul{margin:0;padding:0;list-style:none}.factory-refines li{color:#cbd5f5;padding:clamp(.18rem,.15rem + .08vw,.28rem) 0;font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.factory-empty{color:#94a3b8;margin-top:clamp(.85rem,.7rem + .3vw,1.1rem);font-size:clamp(.76rem,.7rem + .18vw,.92rem)}.factory-haulers{border-top:1px solid #94a3b82e;margin-top:clamp(.6rem,.45rem + .25vw,.85rem);padding-top:clamp(.35rem,.25rem + .2vw,.6rem)}.factory-haulers h4{margin:0 0 .4rem;font-size:clamp(.76rem,.7rem + .18vw,.9rem)}.hauler-controls{justify-content:space-between;align-items:center;gap:clamp(.4rem,.3rem + .2vw,.65rem);margin-bottom:.4rem;display:flex}.hauler-count{align-items:center;gap:.35rem;font-size:clamp(.74rem,.68rem + .16vw,.86rem);display:flex}.hauler-count .label{color:#cbd5f5}.hauler-count .count{color:#fbbf24;font-size:clamp(.82rem,.76rem + .16vw,.95rem);font-weight:600}.hauler-buttons{gap:clamp(.2rem,.15rem + .1vw,.35rem);display:flex}.hauler-btn{color:#bae6fd;cursor:pointer;background:#0ea5e92e;border:1px solid #38bdf880;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);padding:clamp(.3rem,.25rem + .15vw,.45rem) clamp(.45rem,.4rem + .2vw,.6rem);font-size:clamp(.74rem,.68rem + .16vw,.86rem);font-weight:600}.hauler-btn:hover:not(:disabled){background:#0ea5e947;border-color:#38bdf8b3}.hauler-btn:disabled{color:#94a3b8;cursor:not-allowed;background:#1e293b99;border-color:#94a3b84d}.hauler-info{background:#22c55e14;border-left:2px solid #22c55e66;border-radius:clamp(.25rem,.2rem + .08vw,.4rem);margin-top:.35rem;padding:clamp(.25rem,.2rem + .1vw,.35rem) clamp(.32rem,.28rem + .1vw,.45rem)}.hauler-info .desc{color:#86efac;margin:0;font-size:clamp(.68rem,.64rem + .14vw,.8rem)}.hauler-config-summary{color:#94a3b8e6;margin-top:clamp(.4rem,.32rem + .14vw,.55rem);font-size:clamp(.7rem,.64rem + .12vw,.82rem)}.hauler-config-summary strong{color:#f8fafc}.hauler-upgrades{border-top:1px solid #94a3b82e;margin-top:clamp(.5rem,.4rem + .2vw,.75rem);padding-top:clamp(.35rem,.3rem + .12vw,.5rem)}.hauler-upgrades h5{text-transform:uppercase;letter-spacing:.12em;color:#94a3b8e6;margin:0 0 clamp(.3rem,.25rem + .12vw,.45rem);font-size:clamp(.7rem,.64rem + .12vw,.82rem)}.hauler-upgrades ul{flex-direction:column;gap:clamp(.4rem,.32rem + .14vw,.55rem);margin:0;padding:0;list-style:none;display:flex}.hauler-upgrade-row{justify-content:space-between;align-items:flex-start;gap:clamp(.45rem,.35rem + .18vw,.7rem);display:flex}.hauler-upgrade-name{text-transform:capitalize;font-size:clamp(.72rem,.66rem + .14vw,.84rem);font-weight:600}.hauler-upgrade-level{color:#94a3b8d9;margin-left:clamp(.35rem,.28rem + .12vw,.5rem);font-size:clamp(.66rem,.62rem + .12vw,.78rem)}.hauler-upgrade-desc{color:#94a3b8b3;margin:clamp(.12rem,.1rem + .05vw,.2rem) 0 0;font-size:clamp(.64rem,.6rem + .12vw,.76rem)}.hauler-upgrade-actions{align-items:center;display:flex}.hauler-upgrade-buy{color:#e0f2fe;cursor:pointer;background:#0ea5e92e;border:1px solid #38bdf880;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);padding:clamp(.3rem,.25rem + .12vw,.45rem) clamp(.5rem,.4rem + .2vw,.7rem);font-size:clamp(.66rem,.6rem + .12vw,.78rem)}.hauler-upgrade-buy:disabled{color:#94a3b8b3;cursor:not-allowed;background:#1e293b99;border-color:#94a3b84d}.hauler-upgrade-max{color:#94a3b8b3;text-transform:uppercase;letter-spacing:.1em;font-size:clamp(.64rem,.6rem + .12vw,.76rem)}.logistics-panel{padding:var(--panel-padding-y)var(--panel-padding-x);border-radius:var(--card-radius);background:#0f172ab8;border:1px solid #94a3b82e;margin-bottom:clamp(.6rem,.45rem + .25vw,.85rem)}.logistics-panel h4{color:#e2e8f0;margin:0 0 .6rem;font-size:clamp(.82rem,.75rem + .2vw,.95rem)}.logistics-panel h5{color:#cbd5f5;margin:.4rem 0 .3rem;font-size:clamp(.74rem,.68rem + .18vw,.88rem)}.logistics-summary{grid-gap:clamp(.45rem,.35rem + .2vw,.65rem);background:#1e293b80;border:1px solid #94a3b826;border-radius:clamp(.3rem,.25rem + .1vw,.45rem);grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:clamp(.45rem,.35rem + .2vw,.65rem);margin-bottom:clamp(.55rem,.45rem + .2vw,.8rem);padding:clamp(.35rem,.25rem + .2vw,.6rem);display:grid}.summary-item{justify-content:space-between;align-items:center;font-size:clamp(.72rem,.66rem + .16vw,.84rem);display:flex}.summary-item .label{color:#cbd5f5}.summary-item .value{color:#fbbf24;font-size:clamp(.78rem,.72rem + .18vw,.92rem);font-weight:600}.transfers-list{min-height:14rem;margin-top:.4rem}.transfers-header{justify-content:space-between;align-items:center;margin-bottom:.3rem;display:flex}.transfers-pagination{align-items:center;gap:.4rem;display:flex}.transfers-pagination button{color:#93c5fd;cursor:pointer;background:#3b82f61f;border:1px solid #3b82f64d;border-radius:.2rem;padding:.12rem .35rem;font-size:clamp(.68rem,.62rem + .16vw,.8rem);transition:all .15s}.transfers-pagination button:hover:not(:disabled){background:#3b82f633;border-color:#3b82f680}.transfers-pagination button:disabled{opacity:.4;cursor:not-allowed}.transfers-pagination .page-indicator{color:#cbd5f5;text-align:center;min-width:3rem;font-size:clamp(.68rem,.62rem + .16vw,.8rem)}.transfer-item{background:#2563eb14;border-left:2px solid #3b82f666;border-radius:clamp(.25rem,.2rem + .08vw,.4rem);justify-content:space-between;align-items:center;gap:clamp(.35rem,.3rem + .15vw,.55rem);margin-bottom:clamp(.25rem,.2rem + .1vw,.35rem);padding:clamp(.28rem,.22rem + .12vw,.4rem) clamp(.32rem,.28rem + .1vw,.45rem);display:flex}.transfer-route{color:#cbd5f5;align-items:center;gap:.3rem;font-size:clamp(.68rem,.62rem + .16vw,.8rem);font-weight:500;display:flex}.factory-short{background:#3b82f61f;border-radius:.2rem;padding:.12rem .24rem;font-family:monospace}.arrow{color:#94a3b8}.transfer-details{flex-direction:column;align-items:flex-end;gap:.08rem;font-size:clamp(.68rem,.62rem + .16vw,.8rem);display:flex}.transfer-details .resource{color:#86efac;font-weight:600}.transfer-details .eta{color:#94a3b8;font-size:clamp(.64rem,.58rem + .14vw,.76rem)}.logistics-hint{background:#94a3b814;border-left:2px solid #94a3b84d;border-radius:clamp(.25rem,.2rem + .08vw,.4rem);margin-top:.4rem;padding:clamp(.28rem,.22rem + .12vw,.4rem) clamp(.32rem,.28rem + .1vw,.45rem)}.logistics-hint p{color:#94a3b8;margin:0;font-size:clamp(.68rem,.62rem + .16vw,.8rem)}.muted{color:#94a3b8;font-size:clamp(.68rem,.62rem + .16vw,.8rem)}.muted.small{font-size:clamp(.64rem,.58rem + .14vw,.76rem)}:root{color-scheme:dark;--app-gutter:clamp(.75rem,1vw + .25rem,1.6rem);--hud-width:clamp(14rem,18vw,19rem);--sidebar-width:clamp(17.5rem,22vw,24rem);--sidebar-collapsed:clamp(3.5rem,4vw,4.5rem);--left-sidebar-width:var(--sidebar-width);--right-sidebar-width:var(--sidebar-width);--inspector-width:clamp(16rem,22vw,22rem);--hud-font-size:clamp(.78rem,.72rem + .18vw,.95rem);--panel-font-size:clamp(.76rem,.7rem + .22vw,.92rem);--panel-heading-size:clamp(.98rem,.88rem + .28vw,1.15rem);--panel-gap:clamp(.6rem,.5rem + .2vw,.9rem);--panel-padding-y:clamp(.85rem,.75rem + .2vw,1.1rem);--panel-padding-x:clamp(1rem,.9rem + .4vw,1.5rem);--card-radius:14px;--card-background:#0f172ad1;--card-border:#94a3b82e;--shell-surface:#0f172a8c;--shell-border:#94a3b840;--shell-text-muted:#e2e8f0a6;--shell-highlight:#38bdf826;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*,:before,:after{box-sizing:border-box}body{color:#e2e8f0;background:radial-gradient(circle at top,#1e293b80,#0000 45%),#020617;margin:0}.app-shell{grid-template-columns:var(--left-sidebar-width)minmax(0,1fr)var(--right-sidebar-width);grid-gap:var(--app-gutter);gap:var(--app-gutter);width:100vw;height:100dvh;padding:var(--app-gutter);display:grid;position:relative;overflow:hidden}.app-shell--left-collapsed{--left-sidebar-width:var(--sidebar-collapsed)}.app-shell--right-collapsed{--right-sidebar-width:var(--sidebar-collapsed)}canvas{touch-action:none;outline:none}.sidebar{background:var(--shell-surface);border:1px solid var(--shell-border);backdrop-filter:blur(18px);border-radius:clamp(1rem,1vw,1.4rem);flex-direction:column;gap:clamp(.75rem,.8vw,1.2rem);height:100%;min-height:0;padding:clamp(.75rem,.8vw,1.2rem);display:flex;position:relative;overflow:hidden;box-shadow:0 18px 40px #02061773}.sidebar--collapsed{width:var(--sidebar-collapsed);padding:clamp(.6rem,.7vw,.9rem)}.sidebar-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.sidebar-title{align-items:center;gap:.75rem;display:flex}.sidebar-title__icon{background:#0f766e2e;border:1px solid #5eead433;border-radius:.85rem;justify-content:center;align-items:center;width:2.4rem;height:2.4rem;font-size:1.2rem;display:inline-flex}.sidebar-title__text{flex-direction:column;font-weight:600;display:flex}.sidebar-title__text small{color:var(--shell-text-muted);font-size:.75rem;font-weight:500}.sidebar-toggle{color:#e0f2fe;cursor:pointer;background:#0ea5e926;border:1px solid #38bdf84d;border-radius:.75rem;padding:.3rem .6rem;font-weight:600}.sidebar-content{scrollbar-gutter:stable;flex-direction:column;gap:clamp(.8rem,.9vw,1.2rem);padding-right:clamp(.1rem,.2vw,.35rem);display:flex;overflow-y:auto}.sidebar-content::-webkit-scrollbar{width:.45rem}.sidebar-content::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.sidebar-content{scrollbar-width:thin}.sidebar--collapsed .sidebar-title__text,.sidebar--collapsed .sidebar-content{display:none}.sidebar--collapsed .sidebar-toggle{width:100%}.sidebar--collapsed .sidebar-header{justify-content:center}.sidebar-resizer{cursor:col-resize;opacity:.6;background:#94a3b833;border-radius:999px;width:.35rem;transition:opacity .2s,background .2s;position:absolute;top:.8rem;bottom:.8rem}.sidebar-resizer:hover{opacity:1;background:#38bdf873}.sidebar-resizer--left{right:.2rem}.sidebar-resizer--right{left:.2rem}body.is-resizing{cursor:col-resize;user-select:none}.sidebar-group{background:#02061759;border:1px solid #94a3b833;border-radius:1rem;flex-direction:column;max-height:clamp(18rem,60vh,40rem);display:flex;overflow:hidden}.sidebar-group__summary{cursor:pointer;color:#f1f5f9;justify-content:space-between;align-items:center;gap:.5rem;padding:.7rem 1rem;font-weight:600;list-style:none;display:flex}.sidebar-group__summary::-webkit-details-marker{display:none}.sidebar-group__summary:after{content:"▾";color:var(--shell-text-muted);transition:transform .2s}.sidebar-group[open] .sidebar-group__summary:after{transform:rotate(180deg)}.sidebar-group__content{flex-direction:column;gap:.9rem;padding:0 1rem 1rem;display:flex;overflow-y:auto}.sidebar-section{background:#0f172aa6;border:1px solid #94a3b829;border-radius:.85rem;overflow:hidden}.sidebar-section__summary{cursor:pointer;background:#1e293b8c;justify-content:space-between;align-items:center;gap:.5rem;padding:.75rem .95rem;list-style:none;display:flex}.sidebar-section__summary::-webkit-details-marker{display:none}.sidebar-section__title{flex-direction:column;gap:.15rem;font-weight:600;display:flex}.sidebar-section__description{color:var(--shell-text-muted);font-size:.75rem;font-weight:500}.sidebar-section__chevron{color:var(--shell-text-muted);transition:transform .2s}.sidebar-section[open] .sidebar-section__chevron{transform:rotate(180deg)}.sidebar-section__content{flex-direction:column;gap:.8rem;max-height:clamp(16rem,45vh,32rem);padding:.75rem;display:flex;overflow-y:auto}.scene-shell{flex-direction:column;gap:clamp(.75rem,.9vw,1.2rem);min-height:0;display:flex;position:relative}.scene-header{backdrop-filter:blur(14px);background:#0206178c;border:1px solid #94a3b833;border-radius:1rem;justify-content:space-between;align-items:flex-end;gap:1.5rem;padding:clamp(.75rem,1vw,1.2rem) clamp(1rem,1.2vw,1.4rem);display:flex}.scene-header__eyebrow{text-transform:uppercase;letter-spacing:.2em;color:var(--shell-text-muted);margin:0 0 .2rem;font-size:.7rem}.scene-header__title{margin:0;font-size:clamp(1.3rem,1.2rem + .6vw,1.9rem)}.scene-header__status{grid-gap:.9rem;text-align:right;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.9rem;display:grid}.scene-header__label{color:var(--shell-text-muted);text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;display:block}.scene-header__value{font-weight:600;display:block}.scene-canvas{background:#0206178c;border:1px solid #94a3b833;border-radius:1.2rem;flex:1;min-height:0;position:relative;overflow:hidden;box-shadow:0 20px 45px #02061799}.scene-canvas canvas{width:100%;height:100%;display:block}.panel{gap:var(--panel-gap);width:100%;padding:var(--panel-padding-y)var(--panel-padding-x);border-radius:var(--card-radius);background:var(--card-background);border:1px solid var(--card-border);backdrop-filter:blur(14px);font-size:var(--panel-font-size);flex-direction:column;line-height:1.45;display:flex;box-shadow:0 12px 32px #0206178c}.panel h3{font-size:var(--panel-heading-size);letter-spacing:.01em;margin:0}.row{border-bottom:1px solid #94a3b82e;justify-content:space-between;align-items:center;gap:clamp(.6rem,.5rem + .2vw,.9rem);padding:clamp(.35rem,.25rem + .25vw,.6rem) 0;display:flex}.row:last-of-type{border-bottom:none}.left{flex-direction:column;gap:clamp(.15rem,.1rem + .1vw,.3rem);display:flex}.muted{opacity:.7;font-size:clamp(.72rem,.68rem + .15vw,.85rem)}.desc{color:#e2e8f0cc;font-size:clamp(.7rem,.64rem + .15vw,.82rem)}button{color:#a5f3fc;cursor:pointer;background:#0f766e33;border:1px solid #94a3b866;border-radius:clamp(.5rem,.4rem + .2vw,.75rem);padding:clamp(.4rem,.3rem + .2vw,.6rem) clamp(.75rem,.6rem + .35vw,1.1rem);font-size:clamp(.75rem,.7rem + .15vw,.92rem);font-weight:600;transition:transform .2s,background .2s}button:hover:not(:disabled){background:#0ea5e940;transform:translateY(-1px)}button:disabled{cursor:not-allowed;opacity:.5}.inspector-panel{left:var(--app-gutter);bottom:var(--app-gutter);width:min(var(--inspector-width),calc(100vw - (var(--app-gutter)*2)));gap:var(--panel-gap);padding:var(--panel-padding-y)var(--panel-padding-x);border-radius:var(--card-radius);background:var(--card-background);backdrop-filter:blur(14px);font-size:var(--panel-font-size);flex-direction:column;line-height:1.45;display:flex;position:absolute;box-shadow:0 10px 28px #0206178c}.inspector-header{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.inspector-subtitle{color:#94a3b8c7;margin:.2rem 0 0;font-size:clamp(.7rem,.66rem + .12vw,.82rem)}.inspector-controls{align-items:center;gap:clamp(.4rem,.3rem + .2vw,.65rem);display:flex}.inspector-index{color:#e2e8f0b3;font-size:clamp(.68rem,.64rem + .12vw,.8rem)}.inspector-section{flex-direction:column;gap:clamp(.3rem,.2rem + .2vw,.5rem);display:flex}.inspector-section-title{text-transform:uppercase;letter-spacing:.08em;color:#94a3b8e6;font-size:clamp(.66rem,.6rem + .14vw,.78rem)}.inspector-row{border-bottom:1px solid #94a3b81f;justify-content:space-between;align-items:center;gap:clamp(.55rem,.45rem + .2vw,.8rem);padding:clamp(.25rem,.2rem + .15vw,.45rem) 0;display:flex}.inspector-row:last-of-type{border-bottom:none}.inspector-label{color:#e2e8f0c7;font-size:clamp(.72rem,.66rem + .18vw,.88rem)}.inspector-value{font-weight:600}.inspector-swatch{border:1px solid #94a3b866;border-radius:6px;width:1.1rem;height:1.1rem}.inspector-resources{flex-direction:column;gap:.3rem;margin:0;padding:0;list-style:none;display:flex}.inspector-resources li{color:#e2e8f0d9;justify-content:space-between;font-size:.85rem;display:flex}.inspector-empty{color:#94a3b8bf;margin:0;font-size:.8rem}.inspector-regions{flex-direction:column;gap:.45rem;margin:0;padding:0;list-style:none;display:flex}.inspector-region{background:#1e293b8c;border:1px solid #94a3b82e;border-radius:10px;padding:.4rem .5rem}.inspector-region-header{justify-content:space-between;align-items:center;font-size:.82rem;display:flex}.inspector-region-title{align-items:center;gap:.4rem;display:flex}.inspector-region-color{border:1px solid #94a3b84d;border-radius:50%;width:.9rem;height:.9rem}.inspector-region-meta{color:#e2e8f0bf;justify-content:space-between;align-items:center;gap:.5rem;margin-top:.35rem;font-size:.75rem;display:flex}.inspector-badge{text-transform:uppercase;letter-spacing:.08em;border-radius:999px;padding:.2rem .5rem;font-size:.7rem}.severity-none{color:#bbf7d0;background:#22c55e33;border:1px solid #4ade8059}.severity-low{color:#bfdbfe;background:#3b82f62e;border:1px solid #60a5fa4d}.severity-medium{color:#fcd34d;background:#fbbf2438;border:1px solid #fbbf2459}.severity-high{color:#fecaca;background:#f8717133;border:1px solid #f8717159}.settings-backdrop{backdrop-filter:blur(6px);z-index:50;background:#02061759;justify-content:flex-end;display:flex;position:fixed;inset:0}.settings-panel{color:#e2e8f0;scrollbar-gutter:stable both-edges;background:#0f172aeb;border-radius:18px;flex-direction:column;gap:clamp(1rem,.9rem + .3vw,1.6rem);width:min(960px,100vw - 3rem);max-height:min(94dvh,100dvh - clamp(2.5rem,8vh,5rem));margin:clamp(2.5rem,6vh,5rem) clamp(1.25rem,3vw,3rem) clamp(1.25rem,5vh,2.75rem);padding:clamp(1.25rem,1rem + .6vw,1.9rem);display:flex;overflow-y:auto;box-shadow:0 24px 48px #02061799}.settings-content{grid-gap:clamp(1rem,.8rem + .4vw,1.6rem);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-auto-flow:row;align-content:start;gap:clamp(1rem,.8rem + .4vw,1.6rem);display:grid}.settings-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.settings-header h2{margin:0;font-size:1.3rem}.settings-subtitle{color:#94a3b8d9;margin:.35rem 0 0;font-size:.85rem}.settings-section{flex-direction:column;gap:.9rem;min-width:0;display:flex}.settings-section--wide{grid-column:1/-1}.settings-section h3{text-transform:uppercase;letter-spacing:.08em;color:#5eead4d9;margin:0;font-size:1rem}.settings-note{color:#cbd5e1e0;margin:0;font-size:.85rem;line-height:1.45}.settings-note-list{color:#cbd5e1e0;flex-direction:column;gap:.4rem;margin:0;padding-left:1.1rem;font-size:.85rem;display:flex}.settings-note-list li{list-style:outside}.settings-row{grid-gap:.75rem;grid-template-columns:1fr auto;align-items:center;gap:.75rem;display:grid}.settings-row span{flex-direction:column;gap:.25rem;font-size:.9rem;display:flex}.settings-row small{color:#94a3b8bf;font-size:.75rem}.settings-row input[type=number],.settings-row select{color:inherit;background:#0f172acc;border:1px solid #94a3b859;border-radius:8px;padding:.35rem .5rem;font-size:.9rem}.settings-file-input{display:none}.settings-row input[type=range]{width:160px}.settings-actions{flex-wrap:wrap;gap:.75rem;display:flex}.settings-meta{color:#94a3b8cc;margin:0;font-size:.82rem}.settings-error{color:#fca5a5;margin:0;font-size:.8rem}.settings-value{color:#94a3b8d9;font-size:.8rem}.settings-confirm-backdrop{backdrop-filter:blur(4px);z-index:60;background:#0206178c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.settings-confirm{color:#e2e8f0;background:#0f172af5;border-radius:16px;flex-direction:column;gap:.9rem;width:min(360px,90vw);padding:1.5rem;display:flex;box-shadow:0 24px 48px #020617a6}.settings-confirm h4{margin:0;font-size:1.1rem}.settings-confirm p{color:#94a3b8e6;margin:.25rem 0 0;font-size:.92rem;line-height:1.5}.settings-confirm-actions{justify-content:flex-end;gap:.75rem;margin-top:1.1rem;display:flex}.settings-danger{color:#fecaca;background:#ef444440;border:1px solid #f87171a6}.settings-danger:hover:not(:disabled){background:#ef444461;border-color:#f87171cc}.toast-container{z-index:1000;pointer-events:none;flex-direction:column;gap:.6rem;display:flex;position:fixed;bottom:1rem;right:1rem}.toast{pointer-events:auto;color:#e6eef7;background:#060814e6;border-radius:10px;justify-content:space-between;align-items:center;gap:.5rem;min-width:260px;max-width:420px;padding:.75rem 1rem;display:flex;box-shadow:0 8px 28px #02061799}.toast-message{flex:auto;font-size:.9rem}.toast-actions{align-items:center;gap:.5rem;display:flex}.toast-action{color:#9be5ff;background:#0ea5e91f;border:1px solid #0ea5e92e;border-radius:8px;padding:.35rem .6rem}.toast-dismiss{color:#e2e8f0d9;cursor:pointer;background:0 0;border:none;font-size:1.1rem}.toast--success{border-left:4px solid #22c55ee6}.toast--error{border-left:4px solid #ef4444e6}.toast--info{border-left:4px solid #3b82f6e6}@media (width<=1024px){.settings-panel{margin:clamp(2rem,5vh,3rem) clamp(1rem,2.5vw,2rem) clamp(1rem,4vh,2rem);padding:clamp(1rem,.85rem + .4vw,1.4rem)}.settings-content{grid-template-columns:1fr}}@media (width<=768px){.settings-backdrop{justify-content:center;align-items:flex-end}.settings-panel{width:calc(100vw - 2rem);max-height:calc(100dvh - 1.5rem);margin:0 1rem 1rem;padding:clamp(.9rem,.8rem + 1vw,1.25rem)}}hr{border:none;border-bottom:1px solid #94a3b82e;margin:.25rem 0}.prestige-info{color:#94a3b8e6;font-size:.85rem}@media (width<=768px){.app-shell{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:1fr}.sidebar,.sidebar--collapsed{width:100%}.scene-header{flex-direction:column;align-items:flex-start}.scene-header__status{text-align:left;width:100%}}.inspector-collapsed-bar{backdrop-filter:blur(14px);z-index:10;background:#0f172ad9;border-radius:50px;align-items:center;gap:.75rem;height:3rem;padding:.5rem 1rem;animation:.3s ease-out slideUp;display:flex;position:absolute;bottom:1rem;left:1rem;box-shadow:0 10px 28px #0206178c}@keyframes slideUp{0%{opacity:0;transform:translateY(2rem)}to{opacity:1;transform:translateY(0)}}.inspector-collapse-toggle{color:#9be5ff;cursor:pointer;white-space:nowrap;background:#0ea5e926;border:1px solid #0ea5e940;border-radius:8px;flex-shrink:0;padding:.35rem .75rem;font-size:.85rem;font-weight:600;transition:background .2s,border-color .2s}.inspector-collapse-toggle:hover{background:#0ea5e940;border-color:#0ea5e966}.inspector-mini-info{color:#94a3b8d9;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap;font-size:.8rem}.inspector-panel{animation:.3s ease-out slideInLeft}@keyframes slideInLeft{0%{opacity:0;transform:translate(-1rem)}to{opacity:1;transform:translate(0)}}.inspector-collapse-button{font-size:.8rem;color:#94a3b8d9!important;background:#94a3b81a!important;border:1px solid #94a3b826!important;padding:.35rem .5rem!important}@media (width<=1280px){:root{--sidebar-width:clamp(16rem,27vw,21rem);--inspector-width:clamp(15rem,26vw,20rem)}}@media (height<=900px){:root{--app-gutter:clamp(.5rem,.35rem + .35vh,1.1rem)}.sidebar{max-height:calc(100dvh - (var(--app-gutter)*2));padding-right:clamp(.1rem,.08rem + .2vw,.35rem)}}.resource-modifiers{flex-direction:column;gap:clamp(.4rem,.3rem + .25vw,.65rem);display:flex}.resource-modifiers__title{text-transform:uppercase;letter-spacing:.14em;color:#a5f3fcf2;margin:0;font-size:clamp(.8rem,.72rem + .18vw,.96rem)}.resource-modifiers__list{flex-direction:column;gap:clamp(.35rem,.28rem + .2vw,.55rem);margin:0;padding:0;list-style:none;display:flex}.resource-modifiers__item{justify-content:space-between;align-items:center;gap:clamp(.6rem,.45rem + .25vw,.9rem);font-size:clamp(.74rem,.68rem + .18vw,.92rem);display:flex}.resource-modifiers__item:hover{color:#f0fdf4}.resource-modifiers__label{color:#94a3b8e6;letter-spacing:.04em}.resource-modifiers__value{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#2dd4bff2;font-weight:600}.warehouse-panel{font-size:var(--panel-font-size);gap:clamp(.8rem,.6rem + .25vw,1.1rem);padding:clamp(1rem,.85rem + .35vw,1.4rem) clamp(1.2rem,1rem + .45vw,1.6rem);line-height:1.5}.warehouse-panel__header{justify-content:space-between;align-items:center;gap:clamp(.5rem,.4rem + .2vw,.75rem);display:flex}.warehouse-panel__title-group{flex-direction:column;gap:clamp(.15rem,.1rem + .1vw,.3rem);display:flex}.warehouse-panel__title{letter-spacing:.02em;margin:0;font-size:clamp(1.05rem,.95rem + .28vw,1.3rem)}.warehouse-panel__subtitle{color:#94a3b8cc;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:clamp(.72rem,.66rem + .12vw,.82rem)}.warehouse-panel__section{flex-direction:column;gap:clamp(.5rem,.4rem + .2vw,.75rem);display:flex}.warehouse-panel__section-title{text-transform:uppercase;letter-spacing:.16em;color:#a5f3fce6;margin:0;font-size:clamp(.85rem,.78rem + .2vw,1rem)}.warehouse-panel__resources{border-radius:var(--card-radius);border:1px solid var(--card-border);grid-gap:clamp(.5rem,.35rem + .25vw,.8rem);background:#0f172abf;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(.5rem,.35rem + .25vw,.8rem);margin:0;padding:clamp(.75rem,.6rem + .3vw,1rem);display:grid}.warehouse-panel__resource-row{flex-direction:column;gap:clamp(.15rem,.1rem + .1vw,.3rem);display:flex}.warehouse-panel__resource-row dt{color:#94a3b8e6;text-transform:uppercase;letter-spacing:.12em;margin:0;font-size:clamp(.72rem,.66rem + .15vw,.86rem)}.warehouse-panel__resource-row dd{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:#e0f2fe;margin:0;font-size:clamp(.92rem,.82rem + .25vw,1.1rem);font-weight:600}.warehouse-panel__bonuses{border-radius:var(--card-radius);background:#0f766e24;border:1px solid #2dd4bf47;padding:clamp(.65rem,.5rem + .3vw,.9rem) clamp(.8rem,.6rem + .4vw,1.1rem)}.warehouse-panel__techs,.warehouse-panel__investments{gap:clamp(.6rem,.45rem + .25vw,.9rem)}.warehouse-panel__tech-list,.warehouse-panel__investment-list{flex-direction:column;gap:clamp(.6rem,.45rem + .25vw,.9rem);margin:0;padding:0;list-style:none;display:flex}.warehouse-panel__tech-item,.warehouse-panel__investment-item{border-radius:var(--card-radius);background:#0f172a99;border:1px solid #38bdf833;flex-direction:column;gap:clamp(.45rem,.35rem + .2vw,.7rem);padding:clamp(.75rem,.6rem + .3vw,1rem);display:flex}.warehouse-panel__tech-header,.warehouse-panel__investment-header{justify-content:space-between;align-items:baseline;gap:clamp(.4rem,.3rem + .2vw,.6rem);display:flex}.warehouse-panel__tech-title,.warehouse-panel__investment-title{flex-direction:column;gap:clamp(.15rem,.1rem + .1vw,.25rem);display:flex}.warehouse-panel__tech-name,.warehouse-panel__investment-name{font-size:clamp(.85rem,.78rem + .18vw,1rem);font-weight:600}.warehouse-panel__tech-level,.warehouse-panel__investment-level,.warehouse-panel__tech-bonus,.warehouse-panel__investment-bonus{color:#94a3b8e6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:clamp(.7rem,.64rem + .14vw,.84rem)}.warehouse-panel__tech-bonus,.warehouse-panel__investment-bonus{color:#a5f3fcf2}.warehouse-panel__tech-description,.warehouse-panel__investment-description,.warehouse-panel__tech-progress,.warehouse-panel__investments-summary{color:#bfdbfed9;margin:0;font-size:clamp(.7rem,.64rem + .14vw,.84rem)}.warehouse-panel__tech-actions,.warehouse-panel__investment-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:clamp(.4rem,.3rem + .2vw,.6rem);display:flex}.warehouse-panel__tech-button,.warehouse-panel__investment-button{color:#e0f2fe;cursor:pointer;background:#0e74e92e;border:1px solid #38bdf866;border-radius:clamp(.35rem,.3rem + .12vw,.5rem);padding:clamp(.35rem,.3rem + .12vw,.5rem) clamp(.6rem,.5rem + .2vw,.8rem);font-size:clamp(.7rem,.64rem + .12vw,.82rem)}.warehouse-panel__tech-button:disabled,.warehouse-panel__investment-button:disabled{color:#94a3b8b3;cursor:not-allowed;background:#1e293b99;border-color:#94a3b84d}.warehouse-panel__tech-effect,.warehouse-panel__investment-effect{color:#a5f3fce6;font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.hauler-modules{border-radius:var(--card-radius);background:#082f4973;border:1px solid #0ea5e940;flex-direction:column;gap:clamp(.45rem,.35rem + .18vw,.7rem);padding:clamp(.75rem,.6rem + .3vw,1rem);display:flex}.hauler-modules__header{justify-content:space-between;align-items:center;gap:clamp(.35rem,.28rem + .12vw,.5rem);display:flex}.hauler-modules__info-button{color:#7dd3fcd9;cursor:help;background:0 0;border:none;border-radius:999px;padding:.1rem .25rem;font-size:clamp(.82rem,.76rem + .14vw,.94rem);line-height:1}.hauler-modules__info-button:focus-visible{outline-offset:2px;outline:2px solid #7dd3fcb3}.hauler-modules__helper{color:#bfdbfecc;margin:0;font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.hauler-modules__summary{color:#bfdbfee6;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;margin:0;font-size:clamp(.72rem,.66rem + .14vw,.84rem)}.hauler-modules__list{flex-direction:column;gap:clamp(.5rem,.4rem + .2vw,.75rem);margin:0;padding:0;list-style:none;display:flex}.hauler-modules__item{justify-content:space-between;align-items:flex-start;gap:clamp(.6rem,.45rem + .2vw,.9rem);display:flex}.hauler-modules__label{align-items:baseline;gap:clamp(.35rem,.28rem + .1vw,.45rem);display:flex}.hauler-modules__name{font-size:clamp(.82rem,.76rem + .16vw,.96rem);font-weight:600}.hauler-modules__level{color:#94a3b8e6;font-size:clamp(.7rem,.64rem + .12vw,.82rem)}.hauler-modules__description{color:#94a3b8e6;margin:0;font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.hauler-modules__effect{color:#bae6fd;margin:0;font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.hauler-modules__actions{align-items:center;display:flex}.hauler-modules__buy{color:#e0f2fe;cursor:pointer;background:#0ea5e92e;border:1px solid #38bdf880;border-radius:clamp(.35rem,.3rem + .12vw,.5rem);padding:clamp(.35rem,.3rem + .12vw,.5rem) clamp(.6rem,.5rem + .2vw,.8rem);font-size:clamp(.7rem,.64rem + .12vw,.82rem)}.hauler-modules__buy:disabled{color:#94a3b8b3;cursor:not-allowed;background:#1e293b99;border-color:#94a3b84d}.warehouse-panel__max{color:#94a3b8cc;text-transform:uppercase;letter-spacing:.1em;font-size:clamp(.68rem,.62rem + .14vw,.8rem)}.warehouse-panel__header-button{color:#a5f3fccc;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem;font-size:clamp(1rem,.9rem + .25vw,1.3rem);line-height:1;transition:all .2s}.warehouse-panel__header-button:hover{color:#a5f3fc;background:#a5f3fc1a}.warehouse-panel__header-button:focus-visible{outline-offset:2px;outline:2px solid #a5f3fc99}.warehouse-panel__actions{justify-content:flex-start;margin-top:auto;display:flex}@media (width<=960px){.warehouse-panel__resources{grid-template-columns:1fr}}.debug-panel{left:var(--debug-panel-left,16px);top:var(--debug-panel-top,64px);color:#e6eef6;z-index:120;background:#060814f5;border-radius:10px;width:420px;max-width:calc(100vw - 32px);font-size:.9rem;position:absolute;overflow:hidden;box-shadow:0 10px 30px #0009}.debug-panel-header{cursor:grab;user-select:none;background:linear-gradient(#ffffff05,#0000);border-bottom:1px solid #ffffff08;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.debug-panel-title{font-weight:700}.debug-panel-tabs .tab{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 8px}.debug-panel-tabs .tab--active{background:#3b82f61f;border:1px solid #3b82f638}.debug-panel-body{max-height:60vh;padding:8px;overflow:auto}.debug-panel-list-header{grid-gap:8px;opacity:.9;grid-template-columns:1fr 1fr 1fr 1fr 80px;gap:8px;padding:6px 8px;font-size:.85rem;display:grid}.debug-panel-list{margin:0;padding:0;list-style:none}.debug-panel-list-item{grid-gap:8px;border-bottom:1px solid #ffffff05;grid-template-columns:1fr 1fr 1fr 1fr 80px;align-items:center;gap:8px;padding:6px 8px;display:grid}.debug-panel-list-item .actions button{cursor:pointer;color:inherit;background:#0ea5e91f;border:none;border-radius:6px;padding:6px 8px}.debug-panel-pagination{justify-content:center;gap:12px;padding:8px;display:flex}.debug-panel-section{border-top:1px solid #ffffff0f;margin-top:12px;padding:8px}.debug-panel-section strong{opacity:.8;margin-bottom:6px;font-size:.85rem;display:block}.debug-panel-toggle{cursor:pointer;align-items:center;gap:8px;display:flex}.debug-panel-toggle input[type=checkbox]{width:16px;height:16px}@supports (accent-color:#000){.debug-panel-toggle input[type=checkbox]{accent-color:#3b82f6}}.debug-panel-status{opacity:.7;margin-top:6px;font-size:.8rem;display:block}
