.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-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-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 (max-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{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--app-gutter:clamp(.75rem,1vw + .25rem,1.6rem);--hud-width:clamp(14rem,18vw,19rem);--sidebar-width:clamp(18rem,23vw,24rem);--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;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}*,:before,:after{box-sizing:border-box}body{color:#e2e8f0;background:#020617;margin:0}.app{width:100vw;height:100dvh;position:relative;overflow:hidden}canvas{touch-action:none;outline:none}.left-rail{top:var(--app-gutter);left:var(--app-gutter);width:min(var(--hud-width),calc(100vw - (var(--app-gutter)*2)));max-height:calc(100dvh - (var(--app-gutter)*2));scrollbar-gutter:stable;flex-direction:column;gap:clamp(.75rem,.6rem + .25vw,1.1rem);padding-right:clamp(.15rem,.1rem + .25vw,.5rem);display:flex;position:absolute;overflow-y:auto}.left-rail::-webkit-scrollbar{width:.45rem}.left-rail::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.left-rail{scrollbar-width:thin}.sidebar{top:var(--app-gutter);right:var(--app-gutter);width:min(var(--sidebar-width),calc(100vw - (var(--app-gutter)*2)));max-height:calc(100dvh - (var(--app-gutter)*2));scrollbar-gutter:stable;flex-direction:column;gap:clamp(.75rem,.6rem + .25vw,1.1rem);padding-right:clamp(.15rem,.1rem + .25vw,.5rem);display:flex;position:absolute;overflow-y:auto}.sidebar::-webkit-scrollbar{width:.45rem}.sidebar::-webkit-scrollbar-thumb{background:#94a3b859;border-radius:999px}.sidebar{scrollbar-width:thin}.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);-webkit-backdrop-filter:blur(14px);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);-webkit-backdrop-filter:blur(14px);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{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;background:#02061759;justify-content:flex-end;display:flex;position:fixed;top:0;bottom:0;left:0;right: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-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{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:60;background:#0206178c;justify-content:center;align-items:center;display:flex;position:fixed;top:0;bottom:0;left:0;right: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 (max-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 (max-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 (max-width:768px){.panel{width:calc(100vw - 2rem);left:50%;right:auto;transform:translate(-50%)}}.inspector-collapsed-bar{-webkit-backdrop-filter:blur(14px);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 (max-width:1280px){:root{--sidebar-width:clamp(16rem,27vw,21rem);--inspector-width:clamp(15rem,26vw,20rem)}}@media (max-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 (max-width:960px){.warehouse-panel__resources{grid-template-columns:1fr}}
