html{background:#fbfbfa}body{-webkit-font-smoothing:antialiased;min-width:320px;margin:0;font-family:Noto Sans SC,Segoe UI,Microsoft YaHei UI,sans-serif}button,input{font-family:inherit}:root{--ink:#202125;--ink-soft:#44454a;--muted:#77787d;--faint:#a1a2a4;--line:#e5e5e2;--line-strong:#ccccca;--paper:#f7f7f5;--white:#fff;--soft:#ededeb;--accent:#e23e43;--accent-soft:#fff0f0;--warm:#f5ece5;--good:#6e9a7c;--danger:#bd665a;--sans:"Noto Sans SC", "Segoe UI", "Microsoft YaHei UI", sans-serif;--display:"Noto Sans SC", "Segoe UI", "Microsoft YaHei UI", sans-serif;--mono:"JetBrains Mono", "Cascadia Code", Consolas, monospace}*{box-sizing:border-box}html,body{background:var(--paper);min-width:320px;margin:0}body{color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility}button,input{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}h1,h2,p{margin:0}h1{color:var(--ink);font-family:var(--display);letter-spacing:0;font-size:48px;font-weight:520;line-height:1.06}h2{color:var(--ink);letter-spacing:0;font-size:15px;font-weight:650}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.app-shell{background:var(--paper);flex-direction:column;min-height:100vh;display:flex}.saved-shell{height:100vh;overflow:hidden}.topbar{z-index:5;background:var(--paper);justify-content:center;padding:24px 24px 10px;display:flex;position:relative}.saved-shell .topbar{background:#15181c;border-bottom:1px solid #353a40;flex:none;align-items:center;min-height:72px;padding:0 32px}.saved-shell .topbar-pill{background:0 0;border:0;border-radius:0;width:100%;max-width:none;min-height:72px;padding:0}.template-shell .topbar{padding-top:16px}.template-shell .topbar-pill{grid-template-columns:minmax(170px,1fr) auto}.topbar-pill{width:min(100%,1180px);min-height:60px;color:var(--white);background:#242529;border:1px solid #35363b;border-radius:999px;grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr);align-items:center;gap:24px;padding:10px 13px 10px 17px;display:grid}.topbar-pill.is-landing{grid-template-columns:1fr auto;width:min(100%,630px)}.brand-lockup,.topbar-actions,.file-chip,.button,.head-meta,.toolbar-group,.map-readout,.map-legend span,.view-intro,.panel-title,.group-bar,.dupe-row,.component-heading,.component-name,.raw-notice{align-items:center;display:flex}.brand-lockup{gap:10px;min-width:0}.brand-home{color:inherit;text-align:left;background:0 0;border:0;padding:0}.brand-home:not(.is-clickable){cursor:default}.brand-home.is-clickable:hover .brand-mark{background:#f2f2f2}.brand-mark{width:30px;height:30px;color:var(--ink);background:var(--white);border-radius:9px;flex:0 0 30px;place-items:center;display:grid}.brand-name{color:var(--white);font-size:13px;font-weight:750;line-height:1}.brand-caption{color:#aeb0b2;font:8px var(--mono);letter-spacing:.08em;margin-top:4px}.topnav{justify-content:center;align-items:center;gap:2px;padding:3px;display:flex}.topnav button{color:#b8b9bb;background:0 0;border:0;border-radius:999px;min-height:34px;padding:0 13px;font-size:12px;font-weight:600;transition:color .15s,background .15s}.topnav button:hover,.topnav button.active{color:var(--ink);background:var(--white)}.topbar-actions{justify-content:flex-end;gap:7px;min-width:0}.file-chip{color:#d0d1d2;min-width:0;max-width:190px;font:10px var(--mono);gap:7px}.file-chip>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.status-dot{background:var(--good);border-radius:50%;flex:0 0 7px;width:7px;height:7px}.dirty-dot{background:var(--accent);border-radius:50%;flex:0 0 6px;width:6px;height:6px}.button{min-height:36px;color:var(--ink-soft);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;gap:7px;padding:0 15px;font-size:12px;font-weight:650;transition:color .15s,background .15s,border-color .15s,transform .15s}.button:hover{color:var(--ink);background:var(--white);border-color:var(--line-strong)}.button:active{transform:translateY(1px)}.button-primary{color:var(--white);background:var(--accent);border-color:var(--accent)}.button-primary:hover{color:var(--white);background:#bd3037;border-color:#bd3037}.button-replace{color:var(--accent);background:var(--accent-soft);border-color:#0000}.button-replace:hover{color:var(--accent);background:#ffe2e3;border-color:#f0a5a8}.topbar-pill .button-quiet{color:#d0d1d2}.topbar-pill .button-quiet:hover{color:var(--ink)}.topbar-pill .button-replace{color:#ffb4b6;background:0 0}.topbar-pill .button-replace:hover{color:var(--accent);background:var(--accent-soft)}.button-large{min-height:48px;padding:0 22px;font-size:13px}.icon-button{color:inherit;background:0 0;border:0;place-items:center;padding:5px;display:grid}.error-banner{width:min(100% - 64px,1180px);min-height:42px;color:var(--danger);background:#fff4f1;border:1px solid #efd4cf;border-radius:12px;align-items:center;gap:9px;margin:4px auto 0;padding:0 13px;font-size:12px;display:flex}.error-banner span{flex:1}.workspace{flex:1;width:100%;min-height:0}.saved-shell .workspace{scrollbar-gutter:stable;overflow:hidden auto}.main-content{width:min(100%,1400px);min-width:0;margin:0 auto;padding:66px 48px 96px}.view-map{height:100vh;overflow:hidden}.view-map .workspace{scrollbar-gutter:auto;overflow:hidden}.main-content-map{flex-direction:column;width:100%;max-width:none;height:100%;padding:0;display:flex}.main-content-template{width:min(100%,1600px);padding-top:48px}.yaml-workspace{min-width:0}.yaml-preview-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 350px;min-width:0;min-height:min(720px,100vh - 245px);display:grid}.yaml-preview-main{flex-direction:column;gap:12px;min-width:0;min-height:0;padding:18px 28px 18px 0;display:flex}.yaml-preview-main .template-canvas{flex:1;min-height:560px}.yaml-preview-main .map-legend{padding:0}.yaml-preview-info{border-left:1px solid var(--line);min-height:0;padding:30px 0 30px 28px}.yaml-source-picker{min-width:260px;color:var(--faint);font:9px var(--mono);gap:6px;display:grid}.yaml-source-picker select{min-width:300px;height:34px;color:var(--ink-soft);border:1px solid var(--line);background:var(--soft);font:10px var(--mono);border-radius:7px;outline:0;padding:0 9px}.yaml-source-picker select:focus{border-color:var(--accent);background:var(--white)}.content-head{justify-content:space-between;align-items:flex-end;gap:32px;margin-bottom:50px;display:flex}.content-head h1{margin-top:9px}.eyebrow,.side-label{color:var(--faint);font:700 9px var(--mono);letter-spacing:.16em}.head-meta{min-width:0;max-width:420px;color:var(--muted);font:10px var(--mono);white-space:nowrap;text-overflow:ellipsis;gap:8px;overflow:hidden}.head-meta svg{color:var(--faint);flex:none}.head-meta>:last-child{text-overflow:ellipsis;overflow:hidden}.view-stack{gap:40px;display:grid}.surface{border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0}.metric-grid{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;display:grid}.metric{border:0;border-right:1px solid var(--line);align-items:flex-start;gap:14px;min-height:142px;padding:28px 24px 24px 0;display:flex}.metric+.metric{padding-left:24px}.metric:last-child{border-right:0}.metric-icon{width:32px;height:32px;color:var(--accent);background:var(--accent-soft);border-radius:10px;flex:0 0 32px;place-items:center;display:grid}.metric>div:last-child{gap:6px;min-width:0;display:grid}.metric span{color:var(--muted);font-size:11px}.metric strong{color:var(--ink);font:600 25px var(--mono);white-space:nowrap}.metric small{color:var(--faint);font:9px var(--mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.accent-blue .metric-icon{color:#686b70;background:#ededeb}.accent-amber .metric-icon{color:#ba713e;background:#fbefe7}.accent-red .metric-icon{color:#bd7168;background:#faece9}.split-grid{border-bottom:1px solid var(--line);grid-template-columns:1.15fr .85fr;gap:0;display:grid}.quick-surface,.file-surface,.groups-surface{border:0;padding:29px 0 31px}.file-surface{border-left:1px solid var(--line);padding-left:42px}.section-heading{justify-content:space-between;align-items:center;gap:14px;margin-bottom:21px;display:flex}.section-heading>div{align-items:center;gap:10px;display:flex}.section-icon{width:25px;height:25px;color:var(--accent);background:var(--accent-soft);border-radius:8px;place-items:center;display:grid}.section-action{color:var(--faint);font:9px var(--mono)}.settings-list,.info-table,.group-bars{display:grid}.inline-member{border-bottom:1px solid var(--line);grid-template-columns:1fr 170px;align-items:center;min-height:48px;display:grid}.inline-member>span,.info-row span{color:var(--muted);font-size:12px}.surface-foot{color:var(--faint);margin-top:18px;font-size:10px}.info-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;min-height:43px;display:flex}.info-row:last-child{border-bottom:0}.info-row strong{color:var(--ink-soft);font:10px var(--mono);text-align:right}.groups-surface{border-top:1px solid var(--line)}.group-bar{width:100%;color:var(--muted);border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;gap:14px;padding:14px 0}.group-bar:last-child{border-bottom:0}.group-bar:hover{color:var(--ink)}.group-index{width:22px;color:var(--faint);font:10px var(--mono)}.group-name{width:175px;color:inherit;font:10px var(--mono)}.bar-track{background:var(--soft);border-radius:99px;flex:1;height:4px;overflow:hidden}.bar-track span{background:var(--accent);border-radius:inherit;height:100%;display:block}.group-bar strong{width:65px;color:var(--ink-soft);font:10px var(--mono);text-align:right}.group-bar svg{color:var(--faint)}.map-workbench{--map-panel:#f9f9f7f5;--map-panel-border:#ffffffb8;--map-panel-radius:12px;background:#090d16;border:0;flex:1;width:100%;height:auto;min-height:0;position:relative;overflow:hidden}.map-tool-rail{z-index:20;width:64px;min-width:0;min-height:0;color:var(--ink-soft);border:1px solid var(--map-panel-border);border-radius:var(--map-panel-radius);background:var(--map-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:10px;padding:13px 5px 11px;display:flex;position:absolute;top:12px;bottom:12px;left:12px;overflow:hidden;box-shadow:0 12px 32px #0000003d}.tool-rail-title{color:var(--faint);font:700 9px var(--mono);letter-spacing:.16em;text-align:center}.tool-rail-buttons{grid-template-columns:minmax(0,1fr);gap:6px;display:grid}.tool-rail-buttons button{min-height:44px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:8px;place-items:center;gap:3px;font-size:9px;transition:color .15s,background .15s,border-color .15s,transform .15s;display:grid}.tool-rail-buttons button:hover{color:var(--ink);background:var(--soft)}.tool-rail-buttons button.selected{color:var(--accent);background:var(--accent-soft);box-shadow:inset 3px 0 var(--accent);border-color:#f2c8ca}.tool-rail-buttons button:active{transform:translateY(1px)}.tool-rail-buttons button:disabled{color:var(--faint)}.tool-rail-buttons span{font-size:9px}.tool-rail-divider{background:var(--line);height:1px}.rail-control{color:var(--muted);font:9px var(--mono);gap:8px;display:grid}.rail-control select{width:100%;min-width:0;height:32px;color:var(--ink-soft);border:1px solid var(--line);background:var(--soft);border-radius:6px;outline:0;padding:0 5px;font-size:9px}.rail-control select:focus{border-color:var(--accent);background:var(--white)}.rail-brush-control input{width:100%;accent-color:var(--accent)}.rail-brush-control output{color:var(--accent);font:10px var(--mono);text-align:center}.tool-rail-bottom{color:var(--muted);font:9px var(--mono);grid-template-columns:8px 1fr;align-items:center;gap:6px;margin-top:auto;display:grid}.tool-rail-bottom small{color:var(--faint);font:8px var(--mono);grid-column:2}.map-center-panel{z-index:1;background:0 0;border:0;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;position:absolute;inset:0;overflow:hidden}.map-center-toolbar{z-index:12;min-width:0;min-height:46px;color:var(--ink-soft);border:1px solid var(--map-panel-border);border-radius:var(--map-panel-radius);background:var(--map-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);align-items:center;gap:18px;padding:6px 8px 6px 12px;display:flex;position:relative;box-shadow:0 8px 22px #0000002e}.map-workbench>.map-center-panel>.map-center-toolbar{display:none}.map-center-toolbar .toolbar-label,.map-center-toolbar .map-readout .muted{color:var(--faint)}.map-center-toolbar .map-readout{color:var(--ink-soft)}.map-center-toolbar .map-overlay-control select{color:var(--ink-soft);border-color:var(--line);background:var(--soft)}.map-layer-control{flex:1;min-width:0}.map-layer-control .segmented-control{border-radius:10px;flex-wrap:wrap}.map-layer-control .segmented-control button{padding-inline:9px}.map-overlay-control select{min-width:116px;height:32px;color:var(--ink-soft);border:1px solid var(--line);background:var(--soft);font:9px var(--mono);border-radius:6px;outline:0;padding:0 8px}.map-overlay-control select:focus{border-color:var(--accent);background:var(--white)}.map-canvas-panel{background:#090d16;border-radius:0;flex-direction:column;gap:0;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.map-canvas-panel .canvas-frame{flex:1;height:auto;min-height:0}.map-parameter-rail{z-index:20;border:1px solid var(--map-panel-border);border-radius:var(--map-panel-radius);background:var(--map-panel);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent;width:auto;min-width:0;min-height:0;padding:20px 18px;position:relative;overflow:auto;box-shadow:0 12px 32px #0000003d}.map-workbench>.map-parameter-rail{display:none}.map-tool-settings{border-bottom:1px solid var(--line);padding-bottom:24px}.map-tool-settings .section-heading{margin-bottom:18px}.map-tool-settings .rail-control+.rail-control{margin-top:18px}.map-tool-settings .rail-control select{height:36px;font-size:10px}.tool-history{border-top:1px solid var(--line);border-left:0;justify-content:flex-start;margin-top:18px;padding:10px 0 0}.map-section-divider{height:24px}.toolbar{align-items:center;gap:22px;min-height:68px;padding:10px 0;display:flex}.toolbar-group{gap:10px}.toolbar-label,.field-label{color:var(--faint);font:9px var(--mono);letter-spacing:.06em}.segmented-control,.tool-buttons{background:var(--soft);border:1px solid var(--line);border-radius:999px;gap:2px;padding:3px;display:flex}.segmented-control button,.tool-buttons button{min-height:29px;color:var(--muted);font:9px var(--mono);background:0 0;border:0;border-radius:999px;padding:0 11px}.segmented-control button:hover,.tool-buttons button:hover,.segmented-control button.selected,.tool-buttons button.selected{color:var(--ink);background:var(--white);box-shadow:0 1px 4px #16161614}.tool-buttons button{font-family:var(--sans);align-items:center;gap:5px;font-weight:650;display:flex}.toolbar-divider{background:var(--line);width:1px;height:25px}.toolbar-spacer{flex:1}.map-readout{color:var(--ink-soft);font:10px var(--mono);gap:8px}.map-readout .muted{color:var(--faint)}.element-picker{align-items:center;gap:9px;display:flex}.element-picker select,.sim-field select,.sim-field input{min-width:0;height:32px;color:var(--ink-soft);border:1px solid var(--line);background:var(--soft);border-radius:8px;outline:0;font-size:10px}.element-picker select{max-width:190px;padding:0 8px}.element-picker select:focus,.sim-field select:focus,.sim-field input:focus{background:var(--white);border-color:#f0a5a8}.brush-size{color:var(--muted);align-items:center;gap:8px;display:flex}.brush-size input{width:86px;accent-color:var(--accent);cursor:pointer}.brush-size input:disabled{cursor:not-allowed}.brush-size output{min-width:42px;color:var(--ink-soft);font:9px var(--mono);text-align:right}.history-buttons{border-left:1px solid var(--line);gap:2px;padding-left:3px;display:flex}.history-buttons button{width:29px;height:29px;color:var(--muted);background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.history-buttons button:hover:not(:disabled){color:var(--ink);background:var(--soft)}.history-buttons button:disabled{opacity:.35}.map-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 276px;gap:0;min-width:0;display:grid}.map-surface{border:0;min-width:0;padding:23px 28px 25px 0}.canvas-frame{contain:layout paint;isolation:isolate;background-color:#090d16;background-image:linear-gradient(#080d1724, #080d1724), var(--map-space-background);background-position:50%,50%;background-repeat:no-repeat;background-size:cover,cover;border:1px solid #293537;border-radius:0;place-items:center;width:100%;height:min(72vh,760px);min-height:560px;display:grid;position:relative;overflow:hidden}.map-canvas-panel .canvas-frame{border:0}.map-canvas-panel .canvas-controls{top:12px;right:12px}.canvas-frame:before{content:"";z-index:0;pointer-events:none;background-image:var(--map-starfield-background);opacity:.2;mix-blend-mode:screen;background-position:50%;background-repeat:repeat;background-size:1024px 512px;position:absolute;inset:0}.canvas-layer{z-index:1;pointer-events:none;position:absolute;inset:0}.canvas-frame canvas{width:100%;height:100%;image-rendering:pixelated;cursor:crosshair;touch-action:none;transform-origin:50%;margin:0;display:block;position:absolute;inset:0}.canvas-frame canvas.canvas-background{z-index:0;pointer-events:none}.canvas-frame canvas.canvas-entities-back{z-index:1;pointer-events:none}.canvas-frame canvas.canvas-fluid-base,.canvas-frame canvas.canvas-fluid{z-index:2;pointer-events:none}.canvas-frame canvas.canvas-terrain{z-index:3;pointer-events:none}.canvas-frame canvas.canvas-entities-front{z-index:4;pointer-events:none}.canvas-frame canvas.canvas-particles{z-index:5;pointer-events:none}.canvas-frame canvas.canvas-light{z-index:6;pointer-events:none}.canvas-frame canvas.canvas-grid{z-index:8;pointer-events:none}.canvas-frame canvas.canvas-overlay{z-index:9;pointer-events:none}.pixi-map-viewport{touch-action:none;cursor:crosshair;position:absolute;inset:0;overflow:hidden}.pixi-map-viewport:has(canvas:active){cursor:grabbing}.canvas-frame canvas.pixi-map-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.template-canvas{cursor:grab}.template-canvas.is-panning{cursor:grabbing}.template-canvas-layer{z-index:1;pointer-events:none}.template-details-empty{min-height:240px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:10px;display:grid}.template-details-empty strong{color:var(--ink-soft);font-size:13px}.template-details-empty span{max-width:250px;color:var(--faint);font:10px/1.6 var(--mono)}.template-details-empty svg{color:var(--accent)}.template-details{padding-bottom:4px}.template-name{color:var(--ink-soft);margin:22px 0 7px;font-size:18px;line-height:1.2}.template-path{overflow-wrap:anywhere;color:var(--faint);font:10px/1.5 var(--mono)}.template-stat-grid{border:1px solid var(--line);background:var(--line);grid-template-columns:1fr 1fr;gap:1px;margin-top:22px;display:grid}.template-stat-grid div{background:var(--soft);gap:5px;min-width:0;padding:11px 10px;display:grid}.template-stat-grid span{color:var(--faint);font:9px var(--mono)}.template-stat-grid strong{color:var(--ink-soft);font:600 11px var(--mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.template-count-list{border-top:1px solid var(--line);gap:0;display:grid}.template-count-list div{border-bottom:1px solid var(--line);min-height:39px;color:var(--muted);align-items:center;gap:8px;font-size:11px;display:flex}.template-count-list strong{color:var(--ink-soft);font:600 11px var(--mono);margin-left:auto}.template-count-dot{border-radius:50%;flex:none;width:7px;height:7px}.template-count-dot.solid{background:#bb9670}.template-count-dot.fluid{background:#6bc7d0}.template-count-dot.empty{background:#46525a}.template-count-dot.unknown{background:#cb7f87}.template-dot{background:#6bc7d0}.template-legend .legend-visible{background:#bb9670}.template-legend .legend-entity{background:#6bc7d0}.map-selection-overlay{z-index:7;box-sizing:border-box;pointer-events:none;background:#f0d08d2e;border:2px solid #f0d08dfa;position:absolute}.map-selection-overlay.is-draft{background:#f0d08d3d}.map-selection-label{color:#fff4d6;text-align:center;background:#15191fd1;border:1px solid #f0d08d85;min-width:52px;padding:4px 8px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.map-selection-label strong{font:600 12px/1.2 var(--mono)}.map-selection-label small{color:#fff4d6b8;font:10px/1.2 var(--mono);margin-top:2px}.canvas-viewport{cursor:grab;overscroll-behavior:contain}.canvas-viewport.is-selecting:before{animation-play-state:paused}.canvas-viewport.is-select-mode,.canvas-viewport.is-select-mode canvas,.canvas-viewport.is-brush-mode,.canvas-viewport.is-brush-mode canvas{cursor:crosshair}.canvas-viewport.is-space-pan,.canvas-viewport.is-space-pan canvas{cursor:grab}.canvas-viewport.is-panning,.canvas-viewport.is-panning canvas{cursor:grabbing}.canvas-controls{z-index:2;color:#d7d8d2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121719db;border:1px solid #ffffff1f;border-radius:9px;align-items:center;gap:3px;padding:4px;display:flex;position:absolute;top:14px;right:14px;box-shadow:0 8px 22px #00000029}.canvas-controls button{color:#d7d8d2;background:0 0;border:0;border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.canvas-controls button:hover{color:var(--white);background:#ffffff1f}.canvas-controls input[type=range]{accent-color:#d8b177;cursor:pointer;width:86px}.canvas-controls output{color:#adb3b0;min-width:26px;font:9px var(--mono);text-align:center}.canvas-controls .canvas-reset{color:#d8b177;width:31px;font:9px var(--mono)}.map-legend{color:var(--muted);flex-wrap:wrap;gap:15px;margin-top:14px;font-size:10px;display:flex}.map-canvas-panel>.map-legend{z-index:12;color:#c4cac7;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121719c2;border:1px solid #ffffff1a;border-radius:9px;margin:0;padding:8px 12px;position:absolute;bottom:12px;left:12px;right:12px}.map-workbench .map-canvas-panel>.map-legend{display:none}.map-canvas-panel>.map-legend .legend-help{color:#8f9895}.map-legend span{gap:6px}.map-legend i{border-radius:50%;width:7px;height:7px;display:inline-block}.legend-visible{background:#7fa9d4}.legend-entity{background:#d7ad70}.legend-damage{background:#c67b71}.legend-help{color:var(--faint);margin-left:auto}.map-info{border:0;border-left:1px solid var(--line);align-self:stretch;padding:27px 0 27px 28px}.map-parameter-rail.map-info{border:1px solid var(--map-panel-border);align-self:stretch;padding:20px 18px}.map-layer-settings{border-bottom:1px solid var(--line);padding-bottom:14px}.map-layer-toggle{width:100%;min-height:42px;color:var(--ink-soft);border:1px solid var(--line);background:var(--soft);text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:5px 8px 5px 5px;transition:color .15s,background .15s,border-color .15s;display:flex}.map-layer-toggle:hover{color:var(--ink);border-color:var(--line-strong);background:#e6e6e3}.map-layer-toggle-main,.map-layer-toggle-meta{align-items:center;display:flex}.map-layer-toggle-expanded{opacity:1;flex:1;justify-content:space-between;align-items:center;gap:12px;min-width:0;transition:opacity .12s 60ms,transform .24s cubic-bezier(.22,1,.36,1);display:flex;transform:translate(0)}.map-layer-settings.is-collapsed .map-layer-toggle-expanded{opacity:0;pointer-events:none;transition-delay:0s;transform:translate(-8px)}.map-layer-toggle-main{gap:8px;min-width:0}.map-layer-toggle-main strong{font-size:11px;font-weight:700}.map-layer-toggle-chevron{color:var(--muted);flex:none;transition:transform .18s}.map-layer-settings.is-expanded .map-layer-toggle-chevron{transform:rotate(90deg)}.map-layer-toggle .section-icon{border-radius:6px;flex:0 0 27px;width:27px;height:27px}.map-layer-toggle-meta{color:var(--faint);font:9px var(--mono);gap:7px}.map-layer-stack{opacity:1;transform-origin:100% 0;max-height:560px;transition:max-height .24s cubic-bezier(.22,1,.36,1),opacity .16s;display:block;overflow:hidden}.map-layer-stack-inner{border-left:1px solid var(--line-strong);min-height:0;padding:7px 0 0 14px;overflow:hidden}.map-layer-settings.is-collapsed .map-layer-stack-inner{padding-top:0}.map-layer-settings.is-collapsed .map-layer-stack{opacity:0;max-height:0}.map-layer-floating{z-index:14;border:0;width:278px;padding:0;position:absolute;top:12px;right:192px}.map-layer-floating.is-collapsed{pointer-events:none}.map-layer-floating.is-collapsed .map-layer-toggle{clip-path:inset(0 0 0 calc(100% - 38px) round 9px);pointer-events:auto;justify-content:flex-start;width:100%;height:38px;min-height:38px;padding:0}.map-layer-collapsed-eye{color:#d7d8d2;opacity:0;transition:opacity .12s;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.map-layer-floating.is-collapsed .map-layer-collapsed-eye{opacity:1}.map-layer-floating .map-layer-toggle{color:#d7d8d2;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);clip-path:inset(0 round 9px 9px 0 0);background:#121719db;border-color:#ffffff1f;border-radius:9px;width:100%;min-height:42px;transition:clip-path .24s cubic-bezier(.22,1,.36,1),color .15s,background .15s,border-color .15s;position:relative;overflow:hidden;box-shadow:0 8px 22px #00000029}.map-layer-floating .map-layer-toggle:hover{color:var(--white);background:#181e20f0;border-color:#fff3}.map-layer-floating.is-expanded .map-layer-toggle{border-radius:9px 9px 0 0}.map-layer-floating .map-layer-toggle-chevron{color:#adb3b0}.map-layer-floating .map-layer-toggle .section-icon{color:#ffb4b6;background:#e23e432e}.map-layer-floating .map-layer-toggle-meta{color:#adb3b0}.map-layer-floating .map-layer-stack-inner{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#121719f0;border:1px solid #ffffff1f;border-top:0;border-radius:0 0 9px 9px;padding:6px;box-shadow:0 10px 22px #0000002e}.map-layer-floating .map-layer-row{color:#adb3b0;border-bottom-color:#ffffff1a}.map-layer-floating .map-layer-row:hover{color:#f4f4ef;background:#ffffff17}.map-layer-floating .map-layer-row.visible{color:#d7d8d2}.map-layer-floating .map-layer-row.hidden,.map-layer-floating .map-layer-row small{color:#747b78}.map-layer-floating .map-layer-row{min-height:35px}.map-layer-row{width:100%;min-height:38px;color:var(--muted);border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:17px 6px minmax(58px,.85fr) minmax(0,1.35fr);align-items:center;gap:8px;padding:0 8px;transition:color .12s,background .12s;display:grid}.map-layer-row:last-child{border-bottom:0}.map-layer-row:hover{color:var(--ink-soft);background:var(--soft)}.map-layer-row.visible{color:var(--ink-soft)}.map-layer-row.hidden{color:var(--faint)}.map-layer-row svg{color:inherit}.map-layer-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:10px;overflow:hidden}.map-layer-row small{min-width:0;color:var(--faint);font:8px var(--mono);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layer-swatch{background:var(--faint);border-radius:1px;width:6px;height:21px;display:block}.layer-swatch-grid{background:#95856b}.layer-swatch-minions{background:#d7ad70}.layer-swatch-buildings{background:#c98a78}.layer-swatch-geysers{background:#78b8c5}.layer-swatch-power{background:#d8b177}.layer-swatch-plumbing{background:#5f9db2}.layer-swatch-ventilation{background:#8fb5c3}.layer-swatch-automation{background:#c398d1}.layer-swatch-shipment{background:#c98f70}.layer-swatch-gas{background:#8fb5c3}.layer-swatch-liquid{background:#5f9db2}.layer-swatch-ground{background:#8e7661}.layer-swatch-backwall{background:#7d7569}.layer-swatch-biome{background:linear-gradient(#d6a35e,#8f6eb4 48%,#72a36f)}.map-info-copy{color:var(--muted);padding-bottom:19px;font-size:11px;line-height:1.6}.coordinate-box{background:var(--accent-soft);border-radius:12px;gap:6px;margin-bottom:19px;padding:16px;display:grid}.coordinate-box span,.coordinate-box small{color:var(--muted);font-size:10px}.coordinate-box strong{color:var(--accent);font:20px var(--mono)}.sim-field{border-bottom:1px solid var(--line);grid-template-columns:74px minmax(0,1fr);align-items:center;gap:8px;min-height:43px;display:grid}.sim-field>span{color:var(--muted);font-size:10px}.sim-field select{width:100%;padding:0 7px}.sim-field input{width:100%;font:10px var(--mono);text-align:right;padding:0 7px}.map-stat{border-top:1px solid var(--line);justify-content:space-between;align-items:center;min-height:43px;font-size:11px;display:flex}.map-stat span{color:var(--muted)}.map-stat strong{color:var(--ink-soft);font:10px var(--mono)}.map-empty{border-bottom:1px solid var(--line);min-height:150px}.view-intro{color:var(--muted);justify-content:space-between;gap:15px;font-size:11px}.view-intro strong{color:var(--ink);font:18px var(--mono);margin-top:5px;display:block}.dupes-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(320px,1fr) minmax(300px,.9fr);min-height:520px;display:grid;overflow:hidden}.dupe-list{border-right:1px solid var(--line);padding:24px 28px 24px 0}.list-head{color:var(--faint);font:9px var(--mono);grid-template-columns:1fr 110px;padding:0 11px 11px;display:grid}.dupe-row{width:100%;color:var(--muted);text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;gap:10px;padding:10px}.dupe-row:hover{background:var(--soft)}.dupe-row.selected{color:var(--ink);background:var(--accent-soft)}.dupe-avatar{width:48px;height:48px;color:var(--accent);background:#dedaff;border-radius:10px;flex:0 0 48px;place-items:center;font-weight:800;display:grid;overflow:hidden}.dupe-avatar canvas{pointer-events:none;width:64px;max-width:none;height:64px}.dupe-name{flex:1;gap:3px;min-width:0;display:grid}.dupe-name strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dupe-name small,.dupe-pos{color:var(--faint);font:10px var(--mono)}.dupe-pos{white-space:nowrap;margin-left:auto}.dupe-row>svg{color:var(--faint)}.dupe-inspector{padding:28px 0 28px 32px}.inspector-grid{gap:13px;display:grid}.dupe-facts{border-top:1px solid var(--line);margin-top:20px;padding-top:5px}.objects-layout{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(210px,.72fr) minmax(280px,1fr) minmax(350px,1.25fr);gap:0;min-height:650px;display:grid}.object-groups,.object-records,.object-inspector{border:0;min-width:0;padding:26px 22px}.object-groups{border-right:1px solid var(--line);padding-left:0}.object-records{border-right:1px solid var(--line);flex-direction:column;min-height:0;display:flex}.object-inspector{padding-right:0}.panel-title{justify-content:space-between;gap:12px;margin-bottom:18px}.panel-title h2{margin-top:7px}.panel-count{color:var(--accent);font:10px var(--mono)}.title-icon{color:var(--faint)}.search-box{height:36px;color:var(--faint);border:1px solid var(--line);background:var(--soft);border-radius:10px;align-items:center;gap:8px;margin-bottom:13px;padding:0 10px;display:flex}.search-box:focus-within{border-color:var(--accent);background:var(--white)}.search-box input{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:11px}.search-box input::placeholder{color:var(--faint)}.object-group-list{max-height:585px;display:grid;overflow:auto}.object-group-row{min-height:36px;color:var(--muted);text-align:left;font:10px var(--mono);background:0 0;border:0;border-radius:7px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:7px;padding:0 7px;display:grid}.object-group-row:hover{color:var(--ink);background:var(--soft)}.object-group-row.selected{color:var(--ink);background:var(--accent-soft)}.group-symbol{color:var(--faint);place-items:center;display:grid}.object-group-row strong{color:var(--faint);font:10px var(--mono)}.records-table{overscroll-behavior:contain;scrollbar-gutter:stable;max-height:585px;display:grid;overflow:auto}.records-head,.record-row{grid-template-columns:minmax(0,1fr) 93px 42px;align-items:center;gap:8px;display:grid}.records-head{z-index:1;color:var(--faint);background:var(--white);font:9px var(--mono);padding:2px 8px 8px;position:sticky;top:0}.record-row{width:100%;min-height:43px;color:var(--muted);text-align:left;font:10px var(--mono);background:0 0;border:1px solid #0000;border-radius:7px;padding:5px 8px}.record-row:hover{color:var(--ink);background:var(--soft)}.record-row.selected{color:var(--ink);background:var(--accent-soft)}.record-row span:first-child{gap:2px;min-width:0;display:grid}.record-row strong{text-overflow:ellipsis;white-space:nowrap;font:11px var(--sans);overflow:hidden}.record-row small,.table-note{color:var(--faint);font:9px var(--mono)}.table-note{padding:14px 8px}.transform-fields{margin:10px 0 20px}.field-label{justify-content:space-between;margin-bottom:8px;display:flex}.field-label span{color:var(--faint);font-size:9px}.transform-grid{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.transform-grid label{border:1px solid var(--line);background:var(--soft);border-radius:8px;grid-template-columns:14px 1fr;align-items:center;height:34px;padding:0 7px;display:grid}.transform-grid label span{color:var(--faint);font:10px var(--mono);text-transform:uppercase}input{min-width:0}.transform-grid input,.editable-field input{width:100%;color:var(--ink);font:11px var(--mono);background:0 0;border:0;outline:0}.component-heading{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;padding:14px 0 9px;font-size:11px}.component-heading span:last-child{color:var(--faint);font:10px var(--mono)}.component-tabs{flex-wrap:wrap;gap:5px;max-height:160px;padding-bottom:11px;display:flex;overflow:auto}.component-tabs button{color:var(--muted);border:1px solid var(--line);background:var(--soft);text-align:left;font:9px var(--mono);border-radius:8px;gap:2px;padding:7px 8px;display:grid}.component-tabs button:hover,.component-tabs button.selected{color:var(--ink);background:var(--accent-soft);border-color:#f0a5a8}.component-tabs span{color:var(--faint);font-size:8px}.component-editor{border-top:1px solid var(--line);padding-top:12px}.component-name{color:var(--accent);font:10px var(--mono);justify-content:space-between;margin-bottom:10px}.component-name small{color:var(--faint);font-size:9px}.field-list{gap:2px;display:grid}.editable-field,.toggle-field{min-height:35px;color:var(--muted);border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(80px,1.15fr);align-items:center;gap:8px;font-size:10px;display:grid}.editable-field span,.toggle-field span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editable-field input{text-align:right;border:1px solid #0000;border-radius:7px;height:28px;padding:0 7px}.editable-field input:focus{background:var(--accent-soft);border-color:#f0a5a8}.editable-field.compact,.toggle-field.compact{grid-template-columns:1fr;min-height:28px}.editable-field.compact input{height:28px;color:var(--accent);text-align:right}.toggle-field{grid-template-columns:1fr auto}.toggle-field input{opacity:0;pointer-events:none;position:absolute}.toggle-field i{background:#d2d2ce;border-radius:10px;width:29px;height:17px;position:relative}.toggle-field i:after{content:"";background:var(--white);border-radius:50%;width:13px;height:13px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle-field input:checked+i{background:var(--accent)}.toggle-field input:checked+i:after{transform:translate(12px)}.field-value,.muted{color:var(--faint);font:10px var(--mono)}.raw-notice{color:#a56a45;background:var(--warm);border:1px solid #ecd8c8;border-radius:9px;gap:8px;padding:11px;font-size:10px;line-height:1.4}.inspector-empty{min-height:300px;color:var(--faint);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:11px;display:flex}.landing-shell{background:#181a1e}.landing-shell .topbar{display:none}.landing-shell .topbar-pill{color:var(--ink);background:#f1f1ef;border-color:#f7f7f5}.landing-shell .brand-name{color:var(--ink)}.landing-shell .brand-caption{color:var(--muted)}.landing-shell .brand-mark{color:var(--white);background:var(--ink)}.empty-state{isolation:isolate;background:#181a1e;flex:1;place-items:center;min-height:100vh;display:grid;position:relative;overflow:hidden}.empty-state:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 50% 47%,#23262c1f 0 18%,#0d0e11b8 78%),linear-gradient(90deg,#e23e4309,#0000 22% 78%,#e23e4309);position:absolute;inset:0}.empty-state:after{content:"";z-index:3;pointer-events:none;opacity:.2;mix-blend-mode:screen;background:repeating-linear-gradient(0deg,#0000 0 3px,#ffffff06 4px);position:absolute;inset:0}.hero-art{z-index:-1;opacity:.3;pointer-events:none;filter:blur(1px);transition:opacity .35s,filter .35s,transform .6s cubic-bezier(.22,1,.36,1);position:absolute;inset:0;transform:scale(1.012)}.hero-art canvas{object-fit:cover;width:100%;height:100%;display:block}.hero-glow{z-index:0;pointer-events:none;opacity:.16;filter:blur(80px);background:var(--accent);border-radius:50%;width:360px;height:360px;animation:9s ease-in-out infinite alternate glow-drift;position:absolute}.hero-glow-left{top:8%;left:-180px}.hero-glow-right{animation-delay:-4s;bottom:4%;right:-210px}.hero-content{z-index:2;width:min(1500px,100% - 128px);color:var(--white);grid-template-columns:minmax(560px,1fr) 510px;align-items:center;gap:clamp(90px,9vw,180px);display:grid;position:relative}.hero-copy{text-align:left;min-width:0;padding-left:clamp(0px,2vw,34px)}.hero-kicker{color:#9b9ea4;font:700 10px var(--mono);letter-spacing:.18em;align-items:center;gap:9px;margin-bottom:32px;animation:.6s both content-arrive;display:flex}.hero-live-dot{background:#75ba8b;border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite live-pulse;box-shadow:0 0 0 4px #75ba8b1a,0 0 15px #75ba8bbf}.hero-wordmark{color:#f8f8f5;text-shadow:3px 3px #111216;gap:3px;font-family:Bahnschrift,Arial Narrow,Arial,sans-serif;font-weight:900;line-height:.82;animation:.9s cubic-bezier(.22,1,.36,1) both wordmark-arrive;display:inline-grid}.hero-wordmark span{letter-spacing:.025em;font-size:clamp(46px,3.7vw,68px)}.hero-wordmark strong{color:var(--accent);letter-spacing:.055em;font-size:clamp(28px,2.25vw,41px)}.hero-rule{background:var(--accent);transform-origin:0;border-radius:4px;width:60px;height:4px;margin:32px 0 27px;animation:.7s cubic-bezier(.22,1,.36,1) .26s both rule-arrive;box-shadow:0 0 22px #e23e4380}.hero-content h1{color:#f5f5f2;font-family:var(--display);letter-spacing:-.055em;text-shadow:2px 2px #111216;margin:0 0 25px;font-size:clamp(72px,5.8vw,104px);font-weight:620;line-height:.95;animation:.8s cubic-bezier(.22,1,.36,1) .34s both title-arrive}.hero-content h1 span{color:var(--accent)}.hero-subtitle{color:#b0b2b7;max-width:590px;margin-bottom:30px;font-size:15px;line-height:1.8;animation:.65s cubic-bezier(.22,1,.36,1) .46s both content-arrive}.hero-capabilities{flex-wrap:wrap;gap:8px;animation:.65s cubic-bezier(.22,1,.36,1) .56s both content-arrive;display:flex}.hero-capabilities span{color:#b7b9be;font:700 10px var(--mono);letter-spacing:.06em;background:#0a0b0e5c;border:1px solid #ffffff1c;border-radius:999px;padding:8px 13px}.hero-file-zone{justify-self:center;place-items:center;width:500px;height:500px;animation:.8s cubic-bezier(.22,1,.36,1) .28s both content-arrive;display:grid;position:relative}.hero-file-zone:before,.hero-file-zone:after{content:"";pointer-events:none;border-radius:50%;position:absolute}.hero-file-zone:before{border:1px solid #ffffff1c;inset:20px;box-shadow:inset 0 0 80px #e23e430a}.hero-file-zone:after{border:1px dashed #e23e4345;animation:34s linear infinite reverse orbit-spin;inset:57px}.hero-orbit{border:1px solid #ffffff14;border-radius:50%;animation:22s linear infinite orbit-spin;position:absolute;inset:0}.hero-orbit-inner{animation-duration:16s;animation-direction:reverse;inset:42px}.hero-orbit i{border:2px solid var(--accent);background:#181a1e;border-radius:50%;width:8px;height:8px;position:absolute;box-shadow:0 0 15px #e23e43cc}.hero-orbit-outer i:first-child{top:46px;left:69px}.hero-orbit-outer i:nth-child(2){top:198px;right:-4px}.hero-orbit-outer i:nth-child(3){bottom:26px;left:97px}.hero-orbit-inner i:first-child{top:-4px;left:50%}.hero-orbit-inner i:nth-child(2){bottom:63px;right:18px}.hero-file-core{z-index:2;background:radial-gradient(circle at 48% 36%,#2f3238f5,#121418f5 72%);border:1px solid #ffffff1f;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:292px;height:292px;padding:30px;transition:transform .35s cubic-bezier(.22,1,.36,1),border-color .25s,box-shadow .25s;display:flex;position:relative;box-shadow:0 28px 70px #00000075,inset 0 1px #ffffff0f,0 0 0 12px #ffffff05}.hero-file-core:hover{border-color:#e23e4373;transform:scale(1.035);box-shadow:0 32px 80px #00000080,0 0 50px #e23e4314}.hero-drop-icon{color:#ffb3b5;background:#e23e431a;border:1px solid #e23e4352;border-radius:50%;place-items:center;width:48px;height:48px;margin-bottom:16px;display:grid}.hero-file-core>strong{color:#f4f4f1;font-size:20px;font-weight:650}.hero-file-core>span{color:#85888e;margin-top:7px;font-size:10px}.hero-file-core .button-large{min-width:128px;margin-top:20px;box-shadow:0 9px 25px #e23e433d}.hero-file-core small{color:#686b70;margin-top:12px;font-size:9px}.hero-corner-label{z-index:2;color:#676a70;font:700 8px var(--mono);letter-spacing:.14em;gap:5px;display:grid;position:absolute;bottom:26px}.hero-corner-label span{color:#96999e}.hero-corner-left{left:30px}.hero-corner-right{text-align:right;right:30px}.is-dragging .hero-art{opacity:.8;filter:blur();transform:scale(1.025)}.is-dragging .hero-file-core{border-color:#e23e43d9;transform:scale(1.08);box-shadow:0 34px 90px #00000080,0 0 0 16px #e23e4314,0 0 80px #e23e432e}.is-dragging .hero-orbit{border-color:#e23e436b;animation-duration:7s}.landing-frame{z-index:2;color:#f6f6f3;grid-template-rows:88px minmax(0,1fr) 58px;width:100%;min-height:100vh;display:grid;position:relative}.landing-header{border-bottom:1px solid #ffffff17;justify-content:space-between;align-items:center;padding:0 clamp(36px,6vw,112px);display:flex}.landing-brand{align-items:center;gap:13px;display:flex}.landing-brand-icon{color:#fff;background:var(--accent);border-radius:13px;place-items:center;width:42px;height:42px;display:grid;box-shadow:0 10px 30px #e23e4347}.landing-brand>span:last-child{gap:5px;display:grid}.landing-brand strong{font-size:14px;font-weight:700}.landing-brand small{color:#777b83;font:700 8px var(--mono);letter-spacing:.14em}.landing-local{color:#858991;font:700 9px var(--mono);letter-spacing:.13em;align-items:center;gap:9px;display:flex}.landing-local .status-dot{box-shadow:0 0 15px #6e9a7cb3}.landing-header-actions{align-items:center;gap:18px;display:flex}.landing-language{color:#aeb1b7;min-width:62px;height:40px;font:700 9px var(--mono);letter-spacing:.08em;background:#ffffff0e;border:0;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 11px;transition:color .2s,background .2s,transform .2s;display:flex}.landing-language svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.landing-language:hover{color:#fff;background:#ffffff1c;transform:translateY(-2px)}.landing-github{color:#aeb1b7;background:#ffffff0e;border:0;border-radius:12px;place-items:center;width:40px;height:40px;transition:color .2s,background .2s,transform .2s;display:grid}.landing-github svg{width:20px;height:20px}.landing-github:hover{color:#fff;background:#ffffff1c;transform:translateY(-2px)}.landing-main{grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);align-items:center;gap:clamp(72px,8vw,150px);min-height:0;padding:clamp(48px,6vh,76px) clamp(52px,10vw,190px);display:grid}.landing-copy{min-width:0}.landing-eyebrow{color:#8e9299;font:700 10px var(--mono);letter-spacing:.18em;margin-bottom:27px}.landing-eyebrow:before{content:"";background:var(--accent);width:34px;height:2px;margin:0 12px 3px 0;display:inline-block;box-shadow:0 0 14px #e23e4399}.landing-copy h1{color:#f3f3ef;letter-spacing:-.065em;max-width:760px;font-size:clamp(66px,6.3vw,106px);font-weight:610;line-height:.98}.landing-copy h1 span{color:var(--accent)}.landing-copy>p{color:#a6a9af;max-width:610px;margin-top:27px;font-size:15px;line-height:1.85}.landing-features{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:760px;margin-top:42px;display:grid}.landing-features article{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1f2126a8;border:0;border-radius:15px;align-items:center;gap:13px;min-width:0;padding:15px;transition:transform .2s,background .2s,box-shadow .2s;display:flex;box-shadow:0 12px 26px #0000001a}.landing-features article:hover{background:#282a30db;transform:translateY(-3px);box-shadow:0 16px 32px #00000029}.landing-features article>span{color:#f06a6e;flex:0 0 25px;place-items:center;width:25px;height:38px;display:grid}.landing-features article>span svg{stroke-width:1.8px;width:22px;height:22px}.landing-features article>div{gap:5px;min-width:0;display:grid}.landing-features strong{color:#e8e8e5;font-size:12px;font-weight:650}.landing-features small{color:#71747b;white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.landing-upload{isolation:isolate;text-align:center;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:linear-gradient(145deg,#272a30f5,#14161afa);border:0;border-radius:32px;flex-direction:column;justify-content:center;align-items:center;min-height:560px;padding:48px;transition:transform .3s cubic-bezier(.22,1,.36,1),background .25s,box-shadow .25s;display:flex;position:relative;overflow:hidden;box-shadow:0 42px 100px #00000061}.upload-decoration{z-index:-1;border:1px solid #e23e4329;border-radius:50%;width:330px;height:330px;animation:30s linear infinite orbit-spin;position:absolute;top:-155px;right:-130px}.upload-decoration:before,.upload-decoration:after{content:"";border:1px solid #ffffff0f;border-radius:50%;position:absolute}.upload-decoration:before{inset:31px}.upload-decoration:after{border-style:dashed;inset:64px}.upload-decoration span{border:2px solid var(--accent);background:#202329;border-radius:50%;width:8px;height:8px;position:absolute;box-shadow:0 0 13px #e23e43a6}.upload-decoration span:first-child{bottom:45px;left:43px}.upload-decoration span:nth-child(2){top:42%;right:-4px}.upload-decoration span:nth-child(3){bottom:-4px;left:48%}.upload-icon{color:#f06a6e;place-items:center;width:auto;height:auto;margin-bottom:24px;display:grid}.upload-icon svg{stroke-width:1.55px;filter:drop-shadow(0 8px 18px #e23e432e);width:38px;height:38px}.upload-kicker{color:#7e8289;font:700 9px var(--mono);letter-spacing:.17em;margin-bottom:12px}.landing-upload h2{color:#f5f5f2;font-size:30px;font-weight:620}.landing-upload>p{color:#92959c;max-width:330px;margin-top:13px;font-size:12px;line-height:1.7}.landing-upload .button-large{min-width:150px;min-height:48px;margin-top:28px;box-shadow:0 12px 32px #e23e433d}.upload-formats{gap:7px;margin-top:18px;display:flex}.upload-formats span{color:#93969d;font:700 8px var(--mono);letter-spacing:.07em;background:#ffffff0e;border:0;border-radius:7px;padding:5px 8px}.upload-privacy{color:#64686f;justify-content:center;align-items:center;gap:7px;font-size:9px;display:flex;position:absolute;bottom:25px;left:28px;right:28px}.upload-privacy svg{color:#777b83}.landing-footer{color:#555961;font:700 8px var(--mono);letter-spacing:.14em;border-top:1px solid #ffffff12;justify-content:space-between;align-items:center;padding:0 clamp(36px,6vw,112px);display:flex}.is-dragging .landing-upload{background:linear-gradient(145deg,#30282dfa,#18161bfa);transform:translateY(-6px)scale(1.015);box-shadow:0 44px 110px #00000075,0 0 70px #e23e4324}.is-dragging .upload-icon{color:#ff8589;animation:1s ease-in-out infinite live-pulse}.spinner{border:2px solid #ffffff59;border-top-color:var(--white);border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes orbit-spin{to{transform:rotate(360deg)}}@keyframes live-pulse{50%{opacity:.55;box-shadow:0 0 0 7px #75ba8b00,0 0 8px #75ba8b59}}@keyframes glow-drift{to{opacity:.24;transform:translate(55px,34px)scale(1.18)}}@keyframes content-arrive{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes wordmark-arrive{0%{opacity:0;transform:translateY(-18px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes rule-arrive{0%{opacity:0;transform:scaleX(0)}to{opacity:1;transform:scaleX(1)}}@keyframes title-arrive{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=1180px){.map-tool-rail{width:60px;top:10px;bottom:10px;left:10px}.map-parameter-rail,.map-parameter-rail.map-info{padding:18px 15px}.map-center-toolbar{gap:10px}.map-layer-floating{width:252px;right:174px}.topbar-pill.is-loaded{grid-template-columns:auto 1fr auto}.topnav button{padding:0 9px}.main-content{padding-left:32px;padding-right:32px}.objects-layout{grid-template-columns:190px minmax(230px,1fr)}.object-inspector{border-top:1px solid var(--line);border-left:0;grid-column:1/-1}.object-groups{border-right:1px solid var(--line)}.component-tabs{max-height:none}.hero-content{grid-template-columns:minmax(0,1fr) 350px;gap:42px;width:min(940px,100% - 64px)}.hero-file-zone{width:340px;height:340px}.hero-file-core{width:230px;height:230px}.hero-content h1{font-size:clamp(62px,7vw,82px)}.landing-main{grid-template-columns:minmax(0,1fr) 390px;gap:50px;padding-left:48px;padding-right:48px}.landing-copy h1{font-size:clamp(58px,7vw,78px)}.landing-features{grid-template-columns:1fr;gap:8px;max-width:330px;margin-top:30px}.landing-features article{padding:10px 12px}.landing-upload{min-height:510px}}@media (width<=860px){.view-map{height:auto;min-height:100vh;overflow:auto}.view-map .workspace{overflow:visible}.main-content-map{min-height:calc(100vh - 72px)}.map-workbench{min-height:760px;overflow:hidden}.map-tool-rail{width:58px}.map-parameter-rail{grid-area:2/1/auto/-1;max-height:none}.map-layer-floating{right:12px}.topbar-pill.is-loaded{grid-template-columns:1fr auto}.topnav{order:3;grid-area:2/1/auto/-1;justify-content:flex-start;overflow:auto}.topbar-pill.is-loaded{border-radius:25px}.content-head{flex-direction:column;align-items:flex-start;margin-bottom:34px}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric:nth-child(2){border-right:0}.metric:nth-child(n+3){border-top:1px solid var(--line)}.split-grid,.map-layout,.dupes-layout{grid-template-columns:1fr}.file-surface,.map-info,.dupe-inspector{border-left:0;border-top:1px solid var(--line);padding-left:0}.map-surface{padding-right:0}.dupe-list{border-right:0;padding-right:0}.empty-state{padding:52px 0;overflow:auto}.hero-content{text-align:center;grid-template-columns:minmax(0,1fr);gap:34px;width:min(560px,100% - 36px)}.hero-copy{text-align:center}.hero-kicker{justify-content:center;margin-bottom:22px}.hero-wordmark{display:grid}.hero-wordmark span{font-size:46px}.hero-wordmark strong{font-size:28px}.hero-rule{transform-origin:50%;margin:24px auto 20px}.hero-content h1{font-size:54px}.hero-subtitle{margin-left:auto;margin-right:auto}.hero-capabilities{justify-content:center}.hero-file-zone{width:330px;height:330px}.hero-file-core{width:224px;height:224px}.hero-drop-icon{width:42px;height:42px;margin-bottom:11px}.hero-file-core .button-large{margin-top:14px}.hero-corner-label{display:none}.empty-state{padding:0;display:block}.landing-frame{grid-template-rows:68px auto 44px;width:100%;min-height:100vh;margin:0}.landing-header,.landing-footer{padding-left:18px;padding-right:18px}.landing-main{grid-template-columns:minmax(0,1fr);gap:38px;padding:48px 0}.landing-copy{text-align:center}.landing-eyebrow{margin-bottom:22px;font-size:8px}.landing-copy h1{margin:0 auto;font-size:clamp(50px,15vw,68px)}.landing-copy>p{margin-left:auto;margin-right:auto;font-size:13px}.landing-features{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}.landing-features article{justify-content:center;padding:12px 8px}.landing-features article>span{flex-basis:28px;width:28px;height:36px}.landing-features article>div{display:none}.landing-upload{border-radius:26px;justify-self:center;width:min(100%,500px);min-height:500px;padding:38px 24px}.landing-local{font-size:7px}.landing-footer span:last-child{display:none}}@media (width<=520px){.landing-brand strong{font-size:12px}.landing-local{display:none}.landing-header-actions{gap:8px}.landing-main{padding-top:36px}.landing-copy h1{font-size:49px}.landing-copy>p{font-size:12px}.landing-upload{min-height:460px}}@media (height<=760px) and (width>=861px){.hero-content{transform:scale(.86)}}
