:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:radial-gradient(circle at top,#ffffffe6,#d6f8ffb3 40%,#97e0ffd9),linear-gradient(180deg,#efffff,#c6f5ff);color:#0f4f67;--aero-turquoise: #46c1dd;--aero-turquoise-deep: #1f8ca8;--aero-lime: #bff26a;--aero-sky: #d6f8ff;--aero-text: #0f4f67;--aero-text-soft: rgba(15, 79, 103, .78);--aero-warning: #be6d00;--aero-panel-bg: linear-gradient(180deg, rgba(255, 255, 255, .93), rgba(225, 249, 255, .76));--aero-button-bg: linear-gradient(180deg, rgba(255, 255, 255, .98), rgba(203, 245, 255, .78));--aero-button-bg-active: linear-gradient(180deg, rgba(248, 255, 255, 1), rgba(176, 238, 255, .92));--aero-border: rgba(70, 193, 221, .75);--aero-border-soft: rgba(65, 188, 220, .5);--aero-border-strong: rgba(38, 178, 224, .95);--aero-shadow-soft: 0 12px 40px rgba(43, 173, 201, .2);--aero-shadow-hover: 0 10px 24px rgba(56, 182, 211, .16);--aero-radius-sm: 14px;--aero-radius-md: 18px;--aero-radius-lg: 22px;--aero-blur: blur(16px)}.aero-panel,.aero-card{border:1px solid var(--aero-border);border-radius:var(--aero-radius-lg);background:var(--aero-panel-bg);box-shadow:var(--aero-shadow-soft),inset 0 1px #fffffff2;backdrop-filter:var(--aero-blur);color:var(--aero-text)}.aero-card{border-radius:var(--aero-radius-md);padding:.75rem .9rem}.aero-button{border:1px solid var(--aero-border-soft);border-radius:var(--aero-radius-sm);background:var(--aero-button-bg);color:var(--aero-text);font:inherit;padding:.55rem .95rem;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.aero-button:hover{transform:translateY(-1px);box-shadow:var(--aero-shadow-hover);border-color:var(--aero-border)}.aero-button:active{transform:translateY(0);background:var(--aero-button-bg-active)}.aero-button:disabled{cursor:default;opacity:.45;transform:none;box-shadow:none}.aero-button--primary{border-color:var(--aero-border-strong);background:linear-gradient(180deg,#e1ffff,#7ddff4);font-weight:600}.aero-button--accent{border-color:#7dd250bf;background:linear-gradient(180deg,#f1ffda,var(--aero-lime));color:#2e4a10;font-weight:600}.aero-button--danger{border-color:#d9741ebf;background:linear-gradient(180deg,#fff8ed,#ffbd79);color:#673607;font-weight:700}@media(prefers-reduced-motion:reduce){.aero-button,.building-ui__tab,.building-ui__part-item,.building-ui__button,.building-ui__template-item{transition:none}.aero-button:hover{transform:none}}.aero-tooltip{position:fixed;pointer-events:none;z-index:60;padding:.45rem .65rem;max-width:16rem;font-size:.82rem;line-height:1.35;color:var(--aero-text);border:1px solid var(--aero-border);border-radius:12px;background:linear-gradient(180deg,#fffffff2,#e1f9ffd9);box-shadow:var(--aero-shadow-soft);backdrop-filter:var(--aero-blur)}.help-overlay,.pause-menu{position:fixed;inset:0;display:flex;justify-content:center;align-items:center;background:#0f4f6747;z-index:50}.help-overlay__panel{min-width:22rem;max-width:30rem;padding:1.25rem 1.5rem}.help-overlay__title,.pause-menu__title{margin:0 0 .8rem;font-size:1.2rem}.help-overlay__list{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0;font-size:.92rem}.help-overlay__list dt{font-weight:600;color:var(--aero-turquoise-deep)}.help-overlay__list dd{margin:0}.help-overlay__hint{margin:.9rem 0 0;font-size:.8rem;color:var(--aero-text-soft);text-align:right}.pause-menu__panel{min-width:18rem;max-width:26rem;padding:1.25rem 1.5rem;text-align:center}.pause-menu__body{margin:0 0 1rem;color:var(--aero-text-soft);font-size:.92rem;line-height:1.45}.pause-menu__actions{display:flex;flex-direction:column;gap:.55rem}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;overflow:hidden}body{position:relative}canvas{display:block}.hidden{display:none!important}.objective-arrow{position:fixed;top:.85rem;left:50%;z-index:18;display:grid;gap:.12rem;justify-items:center;transform:translate(-50%);pointer-events:none;color:#0c6f84;text-shadow:0 1px 0 rgba(255,255,255,.9),0 4px 14px rgba(0,130,170,.28)}.objective-arrow__glyph{display:grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid rgba(96,226,236,.75);border-radius:999px;background:radial-gradient(circle at 50% 38%,#fffffffa,#bdf7ffb8 58%,#5bd7e561);box-shadow:0 12px 30px #31b2ce3d,inset 0 1px #fffffff5;transform-origin:center;transition:transform .12s ease}.objective-arrow__glyph:before{content:"";width:0;height:0;border-left:.42rem solid transparent;border-right:.42rem solid transparent;border-bottom:1.18rem solid #08728b;filter:drop-shadow(0 2px 0 rgba(255,255,255,.8));transform:translateY(-.08rem)}.objective-arrow__label{padding:.16rem .5rem;border:1px solid rgba(70,193,221,.5);border-radius:999px;background:#effeffb8;backdrop-filter:blur(12px);font-size:.74rem;font-weight:700}.objective-arrow--disabled{opacity:0}.perf-hud{position:fixed;top:.6rem;left:.6rem;max-width:11rem;padding:.35rem .55rem;font:10px/1.3 ui-monospace,SFMono-Regular,Cascadia Code,Menlo,monospace;color:#062c39;background:#ffffffc7;border:1px solid rgba(70,193,221,.55);border-radius:8px;box-shadow:0 4px 14px #2badc92e;white-space:pre-line;pointer-events:auto;z-index:30}.controls-hint{position:fixed;bottom:.8rem;right:.8rem;display:flex;flex-direction:column;gap:.15rem;padding:.55rem .8rem;font:12px/1.45 ui-monospace,SFMono-Regular,Cascadia Code,Menlo,monospace;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.65),0 0 4px rgba(0,0,0,.45);background:#0014202e;border-radius:10px;pointer-events:auto;z-index:19;opacity:1;transition:opacity .22s ease}.controls-hint__context{display:flex;flex-direction:column;gap:.22rem;margin-bottom:.4rem}.controls-hint__status{max-width:22rem;padding:.15rem .45rem;border-radius:999px;background:#18485d57;color:#f0fcff}.controls-hint__toast{max-width:22rem;margin-bottom:.42rem;padding:.18rem .5rem;border-radius:999px;background:#5cac6e47;color:#f5fff7}.controls-hint__bindings{display:flex;flex-direction:column;gap:.15rem;transition:opacity .22s ease}.controls-hint--dim .controls-hint__bindings{opacity:.5}.controls-hint__line{display:flex;gap:.55rem;align-items:baseline}.controls-hint__key{min-width:3.6rem;font-weight:700;color:#d6f8ff}.controls-hint__action{color:#fff}@media(prefers-reduced-motion:reduce){.controls-hint,.controls-hint__bindings{transition:none}}.panel-drag-handle{position:absolute;top:0;left:0;right:0;height:1.05rem;cursor:grab;border-top-left-radius:inherit;border-top-right-radius:inherit;background:linear-gradient(180deg,#46c1dd73,#46c1dd00);pointer-events:auto}.panel-drag-handle:active{cursor:grabbing}.hud{position:fixed;top:1rem;left:1rem;min-width:18rem;padding:.9rem 1rem;border:1px solid rgba(70,193,221,.75);border-radius:18px;background:linear-gradient(180deg,#ffffffe6,#e6fcffb3);box-shadow:0 12px 40px #2badc933,inset 0 1px #fffffff2;backdrop-filter:blur(16px);white-space:pre-line;line-height:1.45;pointer-events:none}.mobile-notice{display:none;position:fixed;inset:0;z-index:1000;background:#0f4f6773;backdrop-filter:blur(12px);justify-content:center;align-items:center;padding:1.5rem;text-align:center}@media(max-width:1024px)and (pointer:coarse){.mobile-notice{display:flex}}.mobile-notice__content{max-width:26rem;padding:2rem;display:flex;flex-direction:column;gap:1.2rem}.mobile-notice__content p{margin:0;line-height:1.5;font-size:.95rem}.mobile-notice__actions{margin-top:.5rem}.minimap{position:fixed;top:1rem;right:1rem;width:224px;padding:.75rem;border:1px solid rgba(70,193,221,.75);border-radius:20px;background:linear-gradient(180deg,#ffffffeb,#e5fdffbf);box-shadow:0 12px 40px #2badc933,inset 0 1px #fffffff2;backdrop-filter:blur(16px);pointer-events:none}.minimap__canvas{width:200px;height:200px;display:block;border-radius:16px;border:1px solid rgba(41,179,211,.55)}.minimap__label{margin-top:.6rem;font-size:.82rem;line-height:1.35;color:#0f4f67}.building-ui{position:fixed;inset:0;display:contents;pointer-events:none;z-index:20}.building-ui__panel{position:fixed;border:1px solid rgba(70,193,221,.75);border-radius:22px;background:linear-gradient(180deg,#ffffffed,#e1f9ffc2);box-shadow:0 14px 42px #2badc933,inset 0 1px #fffffff2;backdrop-filter:blur(16px);pointer-events:auto;z-index:21}.building-ui__panel--left{left:1rem;top:50%;transform:translateY(-50%);width:18rem;max-height:80vh;overflow:auto;padding:1.5rem 1rem 1rem}.building-ui__panel--right{right:1rem;top:50%;transform:translateY(-50%);width:21rem;max-height:80vh;overflow:auto;padding:1.5rem 1rem 1rem}.building-ui__panel--bottom{left:50%;top:1rem;transform:translate(-50%);display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.4rem 1rem .85rem;max-width:min(46rem,calc(100vw - 22rem));flex-wrap:wrap}.building-ui__tabs{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.9rem}.building-ui__tab,.building-ui__part-item,.building-ui__button,.building-ui__template-item{border:1px solid rgba(65,188,220,.5);border-radius:14px;background:linear-gradient(180deg,#fffffffa,#cbf5ffc7);color:#0f4f67;font:inherit;cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,border-color .12s ease}.building-ui__tab:hover,.building-ui__part-item:hover,.building-ui__button:hover,.building-ui__template-item:hover{transform:translateY(-1px);box-shadow:0 10px 24px #38b6d329;border-color:#2badc9cc}.building-ui__tab.is-active,.building-ui__part-item.is-active,.building-ui__button.is-active{border-color:#26b2e0f2;background:linear-gradient(180deg,#f8ffff,#b0eeffeb)}.building-ui__part-item.is-locked{cursor:not-allowed;opacity:.58;border-color:#7096a061;background:linear-gradient(180deg,#eef7fad1,#c7dee285)}.building-ui__part-item.is-locked:hover{transform:none;box-shadow:none}.building-ui__tab{padding:.45rem .8rem;text-transform:capitalize}.building-ui__part-list,.building-ui__templates{display:grid;gap:.55rem}.building-ui__part-list{max-height:18rem;overflow:auto;padding-right:.2rem}.building-ui__palette-bar{display:flex;align-items:center;gap:.45rem;margin:0 0 .8rem;font-size:.82rem;color:#0f4f67d1}.building-ui__palette{width:2.1rem;height:1.3rem;border:1px solid rgba(65,188,220,.5);border-radius:999px;cursor:pointer;background:linear-gradient(90deg,var(--palette-primary),var(--palette-secondary) 55%,var(--palette-accent))}.building-ui__palette.is-active{border-color:#26b2e0f2;box-shadow:0 0 0 2px #ffffffe6,0 0 0 4px #46c1dd73}.building-ui__palette.is-locked{cursor:not-allowed;filter:grayscale(.72);opacity:.42}.building-ui__part-item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:.7rem .8rem;text-align:left}.building-ui__part-name{font-weight:600}.building-ui__part-meta,.building-ui__template-empty{font-size:.82rem;color:#0f4f67cc}.building-ui__preview{display:flex;justify-content:center;padding:.4rem;margin-bottom:.8rem;border-radius:18px;background:radial-gradient(circle at top,#fffffffa,#ccf4ffa8)}.building-ui__preview canvas{border-radius:16px}.building-ui__title{margin:0 0 .55rem;font-size:1.05rem}.building-ui__details{font-size:.9rem;line-height:1.45}.building-ui__details p{margin:0 0 .45rem}.building-ui__templates{margin-top:.9rem}.building-ui__templates h4{margin:0 0 .35rem;font-size:.92rem}.building-ui__blueprint-filters{display:flex;flex-wrap:wrap;gap:.35rem;margin-bottom:.55rem}.building-ui__blueprint-filters .building-ui__button{padding:.35rem .55rem;font-size:.78rem;text-transform:capitalize}.building-ui__template-row{display:flex;gap:.45rem}.building-ui__blueprint-card{align-items:stretch;margin-bottom:.45rem}.building-ui__template-item{flex:1;padding:.55rem .7rem;text-align:left}.building-ui__blueprint-title,.building-ui__blueprint-meta,.building-ui__blueprint-abilities{display:block}.building-ui__blueprint-title{font-weight:800}.building-ui__blueprint-meta{margin-top:.15rem;color:#0f4f67c7;font-size:.78rem}.building-ui__blueprint-abilities{margin-top:.35rem}.building-ui__blueprint-abilities em{display:inline-block;margin:0 .22rem .22rem 0;padding:.12rem .36rem;color:#0f6175;font-size:.7rem;font-style:normal;border:1px solid rgba(65,188,220,.42);border-radius:999px;background:#dffcffb8}.building-ui__template-delete{flex:0 0 auto;padding-inline:.75rem}.building-ui__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.45rem 1rem;flex:1;font-size:.88rem}.building-ui__warning{color:#be6d00;font-weight:700}.building-ui__guidance{grid-column:1 / -1}.building-ui__flight-balance{grid-column:1 / -1;display:grid;gap:.42rem;padding:.55rem .7rem;border:1px solid rgba(65,188,220,.42);border-radius:16px;background:linear-gradient(180deg,#eefeffcc,#c1effc6b)}.building-ui__balance-row{display:grid;grid-template-columns:minmax(7rem,9rem) 1fr max-content;gap:.55rem;align-items:center}.building-ui__balance-label{display:flex;flex-direction:column;gap:.04rem}.building-ui__balance-label span,.building-ui__balance-values{color:#0f4f67bd;font-size:.78rem}.building-ui__balance-track{display:flex;height:.7rem;overflow:hidden;border:1px solid rgba(65,188,220,.45);border-radius:999px;background:#ffffffb8}.building-ui__balance-fill--left{background:linear-gradient(90deg,#7adede,#bff26a)}.building-ui__balance-fill--right{background:linear-gradient(90deg,#8ee7ff,#46c1dd)}.building-ui__guidance ul{margin:.25rem 0 0;padding-left:1.1rem}.building-ui__guidance li{margin:.12rem 0}.building-ui__buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.55rem}.building-ui__button{padding:.6rem .9rem}.building-ui__camera-hint{position:fixed;bottom:1rem;left:50%;transform:translate(-50%);padding:.45rem .9rem;font-size:.85rem;color:var(--aero-text);background:var(--aero-panel-bg);border:1px solid var(--aero-border);border-radius:14px;backdrop-filter:var(--aero-blur);box-shadow:var(--aero-shadow-soft);z-index:21;pointer-events:none}.building-ui__button:disabled{cursor:default;opacity:.45;transform:none;box-shadow:none}
