@font-face{font-family:"InterVF";font-style:normal;font-weight:100 900;font-display:swap;src:url(./fonts/inter-var.woff2) format("woff2")}@font-face{font-family:"JBMonoVF";font-style:normal;font-weight:100 800;font-display:swap;src:url(./fonts/jetbrainsmono-var.woff2) format("woff2")}body.editor-screen{--ed-font: "InterVF", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--ed-mono: "JBMonoVF", ui-monospace, "SFMono-Regular", Menlo, monospace;--ed-bg: #0B0E14;--ed-surface: #121722;--ed-raised: #1A2130;--ed-sunken: #0E1320;--ed-border: rgba(162, 178, 210, 0.14);--ed-border-2: rgba(162, 178, 210, 0.26);--ed-text: #EDF1F7;--ed-muted: #9AA7BD;--ed-faint: #8B98AF;--ed-accent: #E8B23A;--ed-accent-2: #F4C766;--ed-accent-weak: rgba(232, 178, 58, 0.12);--ed-on-accent: #0B0E14;--ed-danger: #E5604D;--ed-success: #6FAE5A;--ed-info: #6FA8DC;--ed-blue: #4C8DF6;--ed-red: #E5604D;--ed-1: 4px;--ed-2: 8px;--ed-3: 12px;--ed-4: 16px;--ed-5: 24px;--ed-6: 32px;--ed-r-pill: 999px;--ed-r-lg: 14px;--ed-r-md: 10px;--ed-r-sm: 8px;--ed-sh-1: 0 1px 0 rgba(255,255,255,.045) inset, 0 2px 6px rgba(0,0,0,.35);--ed-sh-2: 0 1px 0 rgba(255,255,255,.05) inset, 0 24px 64px -18px rgba(0,0,0,.62);--ed-ring: 0 0 0 2px color-mix(in srgb, var(--ed-accent) 55%, transparent);--ed-t: 170ms cubic-bezier(0.2, 0, 0, 1);--ed-rail-w: min(452px, 96vw);--ed-sheet-h: 0px;font-family:var(--ed-font);letter-spacing:-0.011em}body.editor-screen [hidden]{display:none!important}.bb-sprite{position:absolute;width:0;height:0;overflow:hidden}body.editor-screen .ic{width:1.15em;height:1.15em;flex:0 0 auto;color:currentColor;vertical-align:-0.18em}body.editor-screen .dock{width:var(--ed-rail-w)}body.editor-screen .dock-body{background:linear-gradient(180deg,var(--ed-surface),var(--ed-bg) 62%);border-left:1px solid var(--ed-border-2);box-shadow:-26px 0 68px -22px rgba(0,0,0,0.72);padding:0 var(--ed-4) var(--ed-5);scrollbar-width:thin;scrollbar-color:var(--ed-border-2) transparent}body.editor-screen .dock-body::-webkit-scrollbar{width:10px}body.editor-screen .dock-body::-webkit-scrollbar-thumb{background:var(--ed-border-2);border-radius:var(--ed-r-pill);border:3px solid transparent;background-clip:content-box}body.editor-screen .editor-hud{container-type:inline-size;container-name:editor;color:var(--ed-text)}body.editor-screen .editor-head{position:sticky;top:0;z-index:3;display:flex;flex-direction:column;flex-wrap:nowrap;align-items:stretch;justify-content:flex-start;gap:var(--ed-2);margin-inline:calc(-1 * var(--ed-4));margin-bottom:var(--ed-3);padding:var(--ed-4) var(--ed-4) var(--ed-3);background:linear-gradient(180deg,var(--ed-surface) 72%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--ed-border)}body.editor-screen .editor-head-row{display:flex;align-items:center;gap:var(--ed-3)}body.editor-screen .editor-head-main{flex:1 1 auto;min-width:0}body.editor-screen .editor-head .radio-title{color:var(--ed-faint);font:700 9px/1 var(--ed-mono);letter-spacing:0.16em;text-transform:uppercase}body.editor-screen .editor-field-name{font:650 17px/1.2 var(--ed-font);letter-spacing:-0.02em;color:var(--ed-text)}body.editor-screen .editor-count{color:var(--ed-faint);font:500 11px/1.2 var(--ed-mono);letter-spacing:0}body.editor-screen .editor-head-actions{display:flex;align-items:center;gap:var(--ed-2);flex:0 0 auto}body.editor-screen .editor-head-status{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:var(--ed-2)}body.editor-screen .editor-head-status .editor-screen-sim{min-height:0;height:auto;padding:6px 12px;border:1px solid var(--ed-border-2);border-radius:var(--ed-r-pill);background:var(--ed-raised);color:var(--ed-text);font:600 11px/1 var(--ed-mono);letter-spacing:0.06em}body.editor-screen .editor-head-status .editor-screen-sim .ic{width:14px;height:14px}body.editor-screen .editor-head-status .editor-screen-sim:hover{border-color:var(--ed-accent)}body.editor-screen .editor-head-status .editor-screen-play{border-color:var(--ed-accent);color:var(--ed-accent)}body.editor-screen .editor-head-status .editor-screen-play[hidden]{display:none!important}body.editor-screen .editor-head-status .editor-screen-sim:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-save-state{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--ed-r-pill);border:1px solid var(--ed-border);background:var(--ed-sunken);color:var(--ed-muted);font:600 10px/1 var(--ed-mono);letter-spacing:0.04em;text-transform:uppercase;white-space:nowrap;transition:color var(--ed-t),border-color var(--ed-t)}body.editor-screen .editor-save-state::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:0 0 auto}body.editor-screen .editor-save-state[data-tone=dirty]{color:var(--ed-accent);border-color:color-mix(in srgb,var(--ed-accent) 45%,transparent)}body.editor-screen .editor-save-state[data-tone=busy]{color:var(--ed-info);border-color:color-mix(in srgb,var(--ed-info) 45%,transparent)}body.editor-screen .editor-save-state[data-tone=ok]{color:var(--ed-success);border-color:color-mix(in srgb,var(--ed-success) 40%,transparent)}body.editor-screen .editor-save-state[data-tone=error]{color:var(--ed-danger);border-color:color-mix(in srgb,var(--ed-danger) 55%,transparent)}body.editor-screen .editor-save-state[data-tone=busy]::before{animation:ed-pulse 1s ease-in-out infinite}@keyframes ed-pulse{50%{opacity:0.25}}body.editor-screen .editor-ready{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--ed-r-pill);border:1px solid color-mix(in srgb,var(--ed-danger) 45%,transparent);background:color-mix(in srgb,var(--ed-danger) 10%,var(--ed-sunken));color:var(--ed-danger);font:700 10px/1 var(--ed-mono);letter-spacing:0.06em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:color var(--ed-t),border-color var(--ed-t),background var(--ed-t)}body.editor-screen .editor-ready::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor}body.editor-screen .editor-ready[data-ready="1"]{color:var(--ed-success);border-color:color-mix(in srgb,var(--ed-success) 50%,transparent);background:color-mix(in srgb,var(--ed-success) 12%,var(--ed-sunken))}body.editor-screen .editor-ready:focus-visible{outline:none;box-shadow:var(--ed-ring)}.ready-menu .ready-list{display:grid;gap:8px;margin:10px 0 0;padding:0;list-style:none}.ready-menu .ready-item{display:flex;align-items:start;gap:10px;padding:10px 12px;border:1px solid rgba(162,178,210,0.16);border-radius:10px;background:rgba(14,19,32,0.8);color:#EDF1F7;font:400 12px/1.4 "InterVF",system-ui,sans-serif}.ready-menu .ready-item strong{display:block;font-weight:620}.ready-menu .ready-item small{display:block;margin-top:3px;color:#8B98AF;font-size:11px}.ready-menu .ready-mark{display:grid;place-items:center;width:18px;height:18px;flex:0 0 auto;border-radius:50%;background:rgba(229,96,77,0.18);color:#E5604D;font:700 11px/1 "JBMonoVF",monospace}.ready-menu .ready-item.ok .ready-mark{background:rgba(111,174,90,0.18);color:#6FAE5A}.ready-menu .ready-item.ok strong{color:#9AA7BD;font-weight:500}body.editor-screen .mission-set-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--ed-2);align-items:center;margin-top:var(--ed-2)}body.editor-screen .mission-set-row .action-button{min-width:84px}body.editor-screen .mission-set-row--tools{grid-template-columns:minmax(0,1fr) auto auto}body.editor-screen .mission-item{align-items:stretch}body.editor-screen .mission-eye{display:grid;place-items:center;width:42px;flex:0 0 auto;border:0;border-right:1px solid var(--ed-border);background:transparent;color:var(--ed-faint);cursor:pointer;transition:color var(--ed-t),background var(--ed-t)}body.editor-screen .mission-eye[aria-pressed=true]{color:var(--ed-accent);background:color-mix(in srgb,var(--ed-accent) 10%,transparent)}body.editor-screen .mission-eye:hover{color:var(--ed-text)}body.editor-screen .mission-eye:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .mission-eye .ic{width:17px;height:17px}body.editor-screen .mission-edit:hover{color:var(--ed-accent);background:color-mix(in srgb,var(--ed-accent) 12%,transparent)}body.editor-screen .mission-add{min-height:32px;padding:0 var(--ed-3);font-size:10px}body.editor-screen .mission-place{width:100%;margin-top:var(--ed-3)}body.editor-screen .mission-place[aria-pressed=true]{background:color-mix(in srgb,var(--ed-danger) 14%,var(--ed-raised));border-color:var(--ed-danger);color:var(--ed-danger)}body.editor-screen #missionEditor .editor-list-head{margin-top:var(--ed-4)}body.editor-screen.placing-mission .maplibregl-canvas,body.editor-screen.placing-mission #map{cursor:crosshair}.set-picker-list{display:grid;gap:8px;margin:0 0 16px;padding:0;list-style:none}.set-picker-list .action-button{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%;min-height:52px;padding:10px 14px;border:1px solid rgba(162,178,210,0.26);border-radius:10px;background:#1A2130;color:#EDF1F7;cursor:pointer;font:650 12px/1.2 "InterVF",system-ui,sans-serif;text-transform:none;letter-spacing:0}.set-picker-list .action-button:hover{border-color:#E8B23A}.set-picker-list .set-pick-meta{color:#8B98AF;font:500 10.5px/1 "JBMonoVF",monospace}body.editor-screen .feature-list .phase-head{margin:var(--ed-3) 0 2px;color:var(--ed-faint);font:700 9px/1 var(--ed-mono);letter-spacing:0.16em;text-transform:uppercase}body.editor-screen .feature-list .phase-head:first-child{margin-top:0}body.editor-screen .action-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:40px;padding:0 var(--ed-3);border:1px solid var(--ed-border-2);border-radius:var(--ed-r-md);background:var(--ed-raised);color:var(--ed-text);font:620 11px/1 var(--ed-font);letter-spacing:0.04em;text-transform:uppercase;cursor:pointer;transition:background var(--ed-t),border-color var(--ed-t),transform var(--ed-t),box-shadow var(--ed-t)}body.editor-screen .action-button:hover{background:color-mix(in srgb,var(--ed-raised) 80%,var(--ed-accent) 12%);border-color:color-mix(in srgb,var(--ed-accent) 40%,var(--ed-border-2))}body.editor-screen .action-button:active{transform:translateY(1px)}body.editor-screen .action-button:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .action-button:disabled,body.editor-screen .action-button[aria-busy=true]{opacity:0.55;cursor:progress}body.editor-screen .action-button:disabled{cursor:not-allowed}body.editor-screen .action-button.primary{background:linear-gradient(135deg,var(--ed-accent),var(--ed-accent-2));border-color:color-mix(in srgb,var(--ed-accent) 70%,#000);color:var(--ed-on-accent);font-weight:750;box-shadow:var(--ed-sh-1)}body.editor-screen .action-button.primary:hover{background:linear-gradient(135deg,var(--ed-accent-2),var(--ed-accent));border-color:var(--ed-accent-2)}body.editor-screen .action-button.danger{color:var(--ed-danger);border-color:color-mix(in srgb,var(--ed-danger) 42%,transparent);background:color-mix(in srgb,var(--ed-danger) 8%,var(--ed-raised))}body.editor-screen .action-button.danger:hover{background:color-mix(in srgb,var(--ed-danger) 18%,var(--ed-raised));border-color:var(--ed-danger)}body.editor-screen .editor-screen-save{min-width:0}body.editor-screen .ghost-danger{border:1px solid transparent;border-radius:var(--ed-r-sm);background:transparent;color:var(--ed-faint);font:650 10px/1 var(--ed-mono);letter-spacing:0.1em;text-transform:uppercase;padding:6px 9px;cursor:pointer;transition:color var(--ed-t),background var(--ed-t)}body.editor-screen .ghost-danger:hover{color:var(--ed-danger);background:color-mix(in srgb,var(--ed-danger) 12%,transparent)}body.editor-screen .ghost-danger:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-view-nav{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:3px;padding:3px;margin:0 0 var(--ed-4);border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-sunken)}body.editor-screen .editor-view-tab{height:36px;padding:0 6px;border:0;border-radius:var(--ed-r-sm);background:transparent;color:var(--ed-muted);font:620 10.5px/1 var(--ed-font);letter-spacing:0.03em;text-transform:uppercase;cursor:pointer;transition:background var(--ed-t),color var(--ed-t)}body.editor-screen .editor-view-tab:hover{color:var(--ed-text);background:color-mix(in srgb,var(--ed-raised) 70%,transparent)}body.editor-screen .editor-view-tab:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-view-tab.active{background:var(--ed-raised);color:var(--ed-accent);box-shadow:var(--ed-sh-1)}body.editor-screen .editor-hud[data-view=terreno] .editor-view[data-view-panel=terreno],body.editor-screen .editor-hud[data-view=elementos] .editor-view[data-view-panel=elementos],body.editor-screen .editor-hud[data-view=misiones] .editor-view[data-view-panel=misiones],body.editor-screen .editor-hud[data-view=buildings] .editor-view[data-view-panel=buildings]{display:grid;gap:var(--ed-3);animation:ed-fade var(--ed-t) both}@keyframes ed-fade{from{opacity:0;transform:translateY(4px)}}body.editor-screen .editor-step{margin:0;padding:var(--ed-4);border:1px solid var(--ed-border);border-radius:var(--ed-r-lg);background:var(--ed-surface);box-shadow:var(--ed-sh-1)}body.editor-screen .editor-step>legend{padding:0 var(--ed-2);margin-left:-4px;color:var(--ed-text);font:650 11px/1 var(--ed-font);letter-spacing:0.06em;text-transform:uppercase}body.editor-screen .editor-list-step{padding:var(--ed-3) var(--ed-4) var(--ed-4)}body.editor-screen .panel-hint,body.editor-screen .editor-tip{color:var(--ed-faint);font:400 12px/1.5 var(--ed-font);letter-spacing:0;text-transform:none;margin:var(--ed-2) 0 var(--ed-3)}body.editor-screen .editor-tip b{color:var(--ed-muted);font-weight:620}body.editor-screen .field-label{display:block;margin:var(--ed-3) 0 var(--ed-2);color:var(--ed-faint);font:650 9.5px/1 var(--ed-mono);letter-spacing:0.14em;text-transform:uppercase}body.editor-screen .radio-title{color:var(--ed-muted);font:700 10px/1 var(--ed-mono);letter-spacing:0.14em;text-transform:uppercase}body.editor-screen .editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--ed-2);margin-top:var(--ed-3)}body.editor-screen .editor-actions .action-button{min-height:40px;font-size:10px;padding:0 var(--ed-2)}body.editor-screen .kind-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--ed-2)}body.editor-screen .kind-grid[data-cols="2"]{grid-template-columns:repeat(2,1fr)}body.editor-screen .kind-family:first-child{margin-top:0}body.editor-screen .kind-chip{display:flex;flex-direction:column;align-items:center;gap:5px;min-height:84px;padding:var(--ed-3) 6px;border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-raised);color:var(--ed-muted);cursor:pointer;text-align:center;transition:border-color var(--ed-t),background var(--ed-t),color var(--ed-t),transform var(--ed-t)}body.editor-screen .kind-chip:hover{color:var(--ed-text);border-color:var(--ed-border-2);background:color-mix(in srgb,var(--ed-raised) 78%,var(--ed-accent) 8%)}body.editor-screen .kind-chip:active{transform:translateY(1px)}body.editor-screen .kind-chip:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .kind-chip .kind-ic{width:24px;height:24px;color:var(--ed-faint);transition:color var(--ed-t)}body.editor-screen .kind-chip .kind-name{font:620 11px/1.2 var(--ed-font);letter-spacing:-0.01em;color:inherit;text-transform:none}body.editor-screen .kind-chip .kind-meta{font:500 9px/1 var(--ed-mono);letter-spacing:0.04em;color:var(--ed-faint);text-transform:uppercase}body.editor-screen .kind-chip.active{color:var(--ed-text);border-color:var(--ed-accent);background:color-mix(in srgb,var(--ed-accent) 14%,var(--ed-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ed-accent) 35%,transparent)}body.editor-screen .kind-chip.active .kind-ic{color:var(--ed-accent)}body.editor-screen .kind-chip-blue.active{border-color:var(--ed-blue);background:color-mix(in srgb,var(--ed-blue) 16%,var(--ed-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ed-blue) 40%,transparent)}body.editor-screen .kind-chip-blue.active .kind-ic{color:var(--ed-blue)}body.editor-screen .kind-chip-red.active{border-color:var(--ed-red);background:color-mix(in srgb,var(--ed-red) 16%,var(--ed-raised));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--ed-red) 40%,transparent)}body.editor-screen .kind-chip-red.active .kind-ic{color:var(--ed-red)}body.editor-screen input[type=text],body.editor-screen input[type=number],body.editor-screen input[type=search],body.editor-screen select,body.editor-screen textarea{width:100%;min-height:40px;padding:9px 11px;border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-sunken);color:var(--ed-text);font:500 13px/1.35 var(--ed-font);transition:border-color var(--ed-t),box-shadow var(--ed-t)}body.editor-screen input[type=number]{font-family:var(--ed-mono)}body.editor-screen textarea{min-height:72px;resize:vertical}body.editor-screen input::placeholder,body.editor-screen textarea::placeholder{color:color-mix(in srgb,var(--ed-faint) 78%,transparent)}body.editor-screen input:focus-visible,body.editor-screen select:focus-visible,body.editor-screen textarea:focus-visible{outline:none;border-color:var(--ed-accent);box-shadow:var(--ed-ring)}body.editor-screen input:disabled,body.editor-screen select:disabled,body.editor-screen textarea:disabled{opacity:0.45;cursor:not-allowed}body.editor-screen .editor-meta{display:grid;grid-template-columns:1fr 1fr;gap:var(--ed-2);margin-top:var(--ed-3)}body.editor-screen .editor-meta label{display:grid;gap:6px;color:var(--ed-faint);font:650 9.5px/1 var(--ed-mono);letter-spacing:0.12em;text-transform:uppercase}body.editor-screen input[type=range]{accent-color:var(--ed-accent)}body.editor-screen input[type=file]{padding:var(--ed-2);font:500 11px/1.3 var(--ed-mono);color:var(--ed-muted);background:var(--ed-sunken);border:1px dashed var(--ed-border-2);border-radius:var(--ed-r-md)}body.editor-screen .feature-list{display:grid;gap:6px;margin:var(--ed-2) 0 0;padding:0;list-style:none}body.editor-screen .feature-item{display:flex;align-items:stretch;gap:0;border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-raised);overflow:hidden;transition:border-color var(--ed-t),background var(--ed-t)}body.editor-screen .feature-item:hover{border-color:var(--ed-border-2)}body.editor-screen .feature-item.selected{border-color:var(--ed-accent);background:color-mix(in srgb,var(--ed-accent) 10%,var(--ed-raised))}body.editor-screen .feature-pick{display:flex;align-items:center;gap:var(--ed-3);flex:1 1 auto;min-width:0;padding:10px var(--ed-3);border:0;background:transparent;color:var(--ed-text);text-align:left;cursor:pointer}body.editor-screen .feature-pick:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .feature-tag{display:grid;place-items:center;width:30px;height:30px;flex:0 0 auto;border-radius:var(--ed-r-sm);background:var(--ed-sunken);color:var(--ed-accent);font:700 10px/1 var(--ed-mono)}body.editor-screen .feature-body{display:grid;gap:2px;min-width:0}body.editor-screen .feature-name{font:600 12.5px/1.2 var(--ed-font);color:var(--ed-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.editor-screen .feature-meta{font:500 10px/1.2 var(--ed-mono);color:var(--ed-faint);letter-spacing:0.02em}body.editor-screen .feature-item.team-blue .feature-tag{color:var(--ed-blue)}body.editor-screen .feature-item.team-red .feature-tag{color:var(--ed-red)}body.editor-screen .feature-remove{display:grid;place-items:center;width:42px;flex:0 0 auto;border:0;border-left:1px solid var(--ed-border);background:transparent;color:var(--ed-faint);cursor:pointer;transition:color var(--ed-t),background var(--ed-t)}body.editor-screen .feature-remove:hover{color:var(--ed-danger);background:color-mix(in srgb,var(--ed-danger) 14%,transparent)}body.editor-screen .feature-remove:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-empty{margin:var(--ed-3) 0 0;padding:var(--ed-4);border:1px dashed var(--ed-border-2);border-radius:var(--ed-r-md);color:var(--ed-faint);font:400 12px/1.5 var(--ed-font);text-align:center}body.editor-screen .editor-list-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ed-2)}body.editor-screen .selected-editor{padding:var(--ed-4);border:1px solid var(--ed-accent);border-radius:var(--ed-r-lg);background:color-mix(in srgb,var(--ed-accent) 6%,var(--ed-surface));box-shadow:var(--ed-sh-1)}body.editor-screen .selected-feature{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:var(--ed-2)}body.editor-screen #selectedFeatureText,body.editor-screen #buildingEditTitle,body.editor-screen #markEditTitle{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font:600 11px/1.35 var(--ed-mono);color:var(--ed-muted)}body.editor-screen #buildingEditTitle,body.editor-screen #markEditTitle{font-family:var(--ed-font);font-size:12.5px;color:var(--ed-text)}body.editor-screen .selected-feature .action-button.danger{width:auto;min-width:92px;min-height:34px;padding:0 var(--ed-3)}body.editor-screen .intel-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--ed-2)}body.editor-screen .intel-grid span{padding:10px var(--ed-3);border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-sunken);color:var(--ed-faint);font:500 10px/1 var(--ed-mono);letter-spacing:0.06em;text-transform:uppercase}body.editor-screen .intel-grid b{color:var(--ed-text);font:700 14px/1 var(--ed-mono);margin-right:5px}body.editor-screen .bbox-readout dt{color:var(--ed-faint);font:650 9px/1 var(--ed-mono);letter-spacing:0.14em;text-transform:uppercase}body.editor-screen .bbox-readout dd{margin:6px 0 0;padding:10px var(--ed-3);border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-sunken);color:var(--ed-text);font:500 11px/1.4 var(--ed-mono);word-break:break-all}body.editor-screen .data-source-list{display:grid;gap:6px;margin:0;padding:0;list-style:none}body.editor-screen .data-source-list li{display:flex;align-items:center;justify-content:space-between;gap:var(--ed-2);padding:9px var(--ed-3);border:1px solid var(--ed-border);border-radius:var(--ed-r-md);background:var(--ed-sunken);color:var(--ed-muted);font:400 10.5px/1.4 var(--ed-font)}body.editor-screen .data-source-list b{color:var(--ed-text);font-weight:620}body.editor-screen .data-source-list small{color:var(--ed-faint);font:600 8.5px/1 var(--ed-mono);letter-spacing:0.1em}body.editor-screen .action-link{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:0 var(--ed-3);border:1px solid var(--ed-border-2);border-radius:var(--ed-r-md);background:var(--ed-raised);color:var(--ed-muted);font:620 10px/1 var(--ed-font);letter-spacing:0.04em;text-transform:uppercase;text-decoration:none;transition:color var(--ed-t),border-color var(--ed-t)}body.editor-screen .action-link:hover{color:var(--ed-accent);border-color:color-mix(in srgb,var(--ed-accent) 45%,transparent)}body.editor-screen .action-link:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-3d-tools{display:flex;gap:var(--ed-2);align-items:end}body.editor-screen .editor-3d-tools .mark-building-btn{flex:1 1 auto}body.editor-screen .editor-3d-team{display:grid;gap:6px;flex:0 0 118px;color:var(--ed-faint);font:650 9.5px/1 var(--ed-mono);letter-spacing:0.1em;text-transform:uppercase}body.editor-screen .editor-3d-status{display:block;margin-top:var(--ed-3);color:var(--ed-faint);font:500 11px/1.4 var(--ed-mono);text-transform:none}body.editor-screen .mark-building-btn[aria-pressed=true],body.editor-screen #drawBuildingStart[aria-pressed=true]{background:linear-gradient(135deg,var(--ed-accent),var(--ed-accent-2));color:var(--ed-on-accent);border-color:var(--ed-accent-2)}body.editor-screen.drawing-building .maplibregl-canvas,body.editor-screen.drawing-building #map{cursor:crosshair}body.editor-screen #buildingEditor .selected-editor,body.editor-screen #buildingEditor .selected-feature{margin-bottom:var(--ed-2)}body.editor-screen #buildingEditBox+#markEditBox:not([hidden]){margin-top:var(--ed-3)}body.editor-screen .buildings-preview-bar{position:sticky;top:0;z-index:3;display:grid;gap:var(--ed-2);margin:0 0 var(--ed-3);padding:var(--ed-3);border:1px solid color-mix(in srgb,var(--ed-accent) 55%,transparent);border-radius:var(--ed-r-md);background:color-mix(in srgb,var(--ed-accent) 10%,var(--ed-raised));box-shadow:0 6px 18px -8px rgba(0,0,0,0.55)}body.editor-screen .buildings-preview-bar .editor-3d-status{margin-top:0;color:var(--ed-text);font-weight:650}body.editor-screen .buildings-preview-bar .editor-actions{margin-top:0}body.editor-screen .building-split-row{margin-top:var(--ed-3)}body.editor-screen .building-split-row .action-button{flex:1 1 auto}body.editor-screen #buildings3dZone[aria-pressed=true]{background:linear-gradient(135deg,var(--ed-accent),var(--ed-accent-2));color:var(--ed-on-accent);border-color:var(--ed-accent-2)}body.editor-screen #buildings3dZone{width:100%;margin-top:var(--ed-2)}body.editor-screen .editor-3d-advanced{margin-top:var(--ed-3)}body.editor-screen .editor-3d-advanced>.editor-tip{margin-top:var(--ed-2)}body.editor-screen .editor-3d-foot{display:flex;align-items:center;justify-content:space-between;gap:var(--ed-2);margin-top:var(--ed-3);padding-top:var(--ed-3);border-top:1px solid var(--ed-border)}body.editor-screen .editor-3d-foot .editor-3d-status{margin-top:0;flex:1 1 auto;min-width:0}body.editor-screen .editor-3d-foot .action-button.danger{width:auto;flex:0 0 auto;min-height:34px;padding:0 var(--ed-3);font-size:10px}body.editor-screen #buildings3dCombined{width:100%}@media (max-width: 720px) and (orientation: portrait),(orientation: landscape) and (max-height: 480px){body.editor-screen .editor-3d-foot .action-button.danger{min-height:44px}}body.editor-screen .editor-3d-tools-gap{margin-top:var(--ed-4)}.preview-menu{position:fixed;inset:auto;top:calc(var(--ed-head-h, 126px) + 34px);right:24px;width:min(320px,90vw);max-height:calc(100dvh - var(--ed-head-h, 126px) - 52px);overflow-y:auto;margin:0;padding:var(--ed-4, 16px);border:1px solid rgba(162,178,210,0.26);border-radius:14px;background:rgba(18,23,34,0.97);backdrop-filter:blur(10px);color:#EDF1F7;box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 24px 64px -18px rgba(0,0,0,.62);transition:opacity 170ms ease,transform 170ms ease,overlay 170ms allow-discrete,display 170ms allow-discrete;opacity:1;transform:translateY(0)}.preview-menu:not(:popover-open){display:none}@starting-style{.preview-menu:popover-open{opacity:0;transform:translateY(-6px)}}.preview-menu::backdrop{background:rgba(6,8,13,0.35)}@media (max-width: 720px) and (orientation: portrait){.preview-menu{top:auto;bottom:calc(var(--ed-sheet-h) + 12px);right:12px;left:auto;max-height:calc(100dvh - var(--ed-sheet-h) - 24px)}}.editor-dialog{width:min(420px,92vw);padding:0;border:0;border-radius:16px;background:transparent;color:#EDF1F7}.editor-dialog::backdrop{background:rgba(6,8,13,0.62);backdrop-filter:blur(3px)}.editor-dialog-form{padding:24px;border:1px solid rgba(162,178,210,0.26);border-radius:16px;background:linear-gradient(180deg,#121722,#0B0E14);box-shadow:0 1px 0 rgba(255,255,255,.05) inset,0 24px 64px -18px rgba(0,0,0,.62)}.editor-dialog-title{margin:0 0 8px;font:650 18px/1.2 "InterVF",system-ui,sans-serif;letter-spacing:-0.02em}.editor-dialog-body{margin:0 0 20px;color:#9AA7BD;font:400 13px/1.55 "InterVF",system-ui,sans-serif}.editor-dialog-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.editor-dialog-actions .action-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 12px;border:1px solid rgba(162,178,210,0.26);border-radius:10px;background:#1A2130;color:#EDF1F7;font:650 11px/1 "InterVF",system-ui,sans-serif;letter-spacing:0.04em;text-transform:uppercase;cursor:pointer}.editor-dialog-actions .action-button:focus-visible{outline:none;box-shadow:0 0 0 2px rgba(232,178,58,.55)}.editor-dialog-actions .action-button.danger{background:#E5604D;border-color:#E5604D;color:#0B0E14}.editor-dialog-actions .action-button.danger:hover{background:#ef7362}.editor-dialog{transition:opacity 170ms ease,transform 170ms ease,overlay 170ms allow-discrete,display 170ms allow-discrete;opacity:1;transform:scale(1)}.editor-dialog:not([open]){opacity:0;transform:scale(0.97)}@starting-style{.editor-dialog[open]{opacity:0;transform:scale(0.97)}}.editor-toasts{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:60;display:grid;gap:8px;width:max-content;max-width:min(520px,92vw);pointer-events:none}.editor-toast{display:flex;align-items:center;gap:10px;padding:11px 16px;border:1px solid rgba(162,178,210,0.26);border-radius:999px;background:rgba(18,23,34,0.96);backdrop-filter:blur(10px);color:#EDF1F7;font:500 12.5px/1.2 "InterVF",system-ui,sans-serif;box-shadow:0 18px 44px -14px rgba(0,0,0,.7);animation:ed-toast-in 200ms cubic-bezier(0.2,0,0,1) both}.editor-toast[data-leaving]{animation:ed-toast-out 200ms ease both}@keyframes ed-toast-in{from{opacity:0;transform:translateY(10px)}}@keyframes ed-toast-out{to{opacity:0;transform:translateY(6px)}}.editor-toast .toast-dot{width:8px;height:8px;border-radius:50%;background:#9AA7BD;flex:0 0 auto}.editor-toast[data-tone=busy] .toast-dot{background:#6FA8DC;animation:ed-pulse 1s ease-in-out infinite}.editor-toast[data-tone=ok] .toast-dot{background:#6FAE5A}.editor-toast[data-tone=error] .toast-dot{background:#E5604D}.editor-toast[data-tone=info] .toast-dot{background:#E8B23A}body.editor-screen .ic-flip{transform:scaleX(-1)}body.editor-screen .snap-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;padding:0 var(--ed-3);border:1px solid var(--ed-border-2);border-radius:var(--ed-r-md);background:var(--ed-raised);color:var(--ed-muted);font:620 10px/1 var(--ed-font);letter-spacing:0.04em;text-transform:uppercase;cursor:pointer;user-select:none}body.editor-screen .snap-toggle:has(input:checked){color:var(--ed-accent);border-color:color-mix(in srgb,var(--ed-accent) 50%,transparent);background:color-mix(in srgb,var(--ed-accent) 12%,var(--ed-raised))}body.editor-screen .snap-toggle:has(input:focus-visible){box-shadow:var(--ed-ring)}body.editor-screen .snap-toggle input{width:15px;height:15px;min-height:0;accent-color:var(--ed-accent);margin:0;padding:0}body.editor-screen .editor-hotkeys{margin-top:var(--ed-3);font-size:11px}body.editor-screen .editor-hotkeys b{display:inline-block;padding:1px 5px;margin:0 1px;border:1px solid var(--ed-border-2);border-radius:5px;background:var(--ed-sunken);color:var(--ed-muted);font:600 10px/1.4 var(--ed-mono)}body.editor-screen .draw-bar-measure{display:inline-flex;align-items:center;padding:0 12px;color:var(--ed-accent);font:600 12px/1 var(--ed-mono);letter-spacing:0.02em;white-space:nowrap}body.editor-screen #editorDrawBar{display:flex;gap:8px;padding:8px;border:1px solid var(--ed-border-2);border-radius:var(--ed-r-pill);background:rgba(18,23,34,0.96);backdrop-filter:blur(10px);box-shadow:var(--ed-sh-2)}body.editor-screen .draw-bar-btn{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 14px;border:1px solid transparent;border-radius:var(--ed-r-pill);background:var(--ed-raised);color:var(--ed-text);font:620 10.5px/1 var(--ed-font);letter-spacing:0.05em;text-transform:uppercase;cursor:pointer;transition:background var(--ed-t),color var(--ed-t)}body.editor-screen .draw-bar-btn:hover{background:color-mix(in srgb,var(--ed-raised) 75%,var(--ed-accent) 14%)}body.editor-screen .draw-bar-btn:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .draw-bar-btn.primary{background:linear-gradient(135deg,var(--ed-accent),var(--ed-accent-2));color:var(--ed-on-accent)}body.editor-screen .draw-bar-btn.danger{color:var(--ed-danger)}body.editor-screen .draw-bar-btn.danger:hover{background:color-mix(in srgb,var(--ed-danger) 18%,var(--ed-raised))}body.editor-screen.editing .maplibregl-canvas{cursor:crosshair}body.editor-screen.marking-building .maplibregl-canvas,body.editor-screen.marking-building #map{cursor:cell}body.editor-screen .editor-vertex{cursor:grab}body.editor-screen .editor-vertex:active{cursor:grabbing}@container editor (max-width: 400px){body.editor-screen .kind-grid,body.editor-screen .kind-grid[data-cols="2"]{grid-template-columns:repeat(2,1fr)}body.editor-screen .editor-view-tab{font-size:9.5px;letter-spacing:0}body.editor-screen .editor-3d-tools{flex-direction:column;align-items:stretch}body.editor-screen .editor-3d-team{flex:1 1 auto}body.editor-screen .editor-screen-exit span{display:none}body.editor-screen .editor-screen-exit{min-width:44px}}@container editor (max-width: 300px){body.editor-screen .editor-screen-save span{display:none}body.editor-screen .editor-screen-save{min-width:44px}}@container editor (max-width: 330px){body.editor-screen .editor-actions,body.editor-screen .editor-meta,body.editor-screen .intel-grid{grid-template-columns:1fr}body.editor-screen .editor-view-tab{font-size:8.5px}body.editor-screen .editor-save-state{white-space:normal;line-height:1.25;text-align:center}}body.editor-screen .dock{top:0;right:0;bottom:0;left:auto;max-height:none}body.editor-screen #editorDrawBar{left:calc((100vw - var(--ed-rail-w)) / 2);right:auto;bottom:calc(var(--ed-sheet-h) + 84px);transform:translateX(-50%)}body.editor-screen .maplibregl-ctrl-bottom-right{right:calc(var(--ed-rail-w) + 8px);bottom:calc(var(--ed-sheet-h) + 4px)}body.editor-screen .editor-sheet-fold{display:none}body.editor-screen .dock{transition:transform var(--ed-t)}body.editor-screen.editor-rail-folded{--ed-rail-w: 0px}body.editor-screen.editor-rail-folded .dock{transform:translateX(100%);pointer-events:none}body.editor-screen .editor-rail-fold{position:fixed;z-index:58;top:50%;right:var(--ed-rail-w);transform:translateY(-50%);width:26px;height:64px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--ed-border-2);border-right:0;border-radius:10px 0 0 10px;background:var(--ed-surface);color:var(--ed-muted);box-shadow:-8px 0 24px -12px rgba(0,0,0,0.6);cursor:pointer;transition:right var(--ed-t),color var(--ed-t)}body.editor-screen .editor-rail-fold .ic{width:16px;height:16px;transform:rotate(-90deg);transition:transform var(--ed-t)}body.editor-screen.editor-rail-folded .editor-rail-fold .ic{transform:rotate(90deg)}body.editor-screen .editor-rail-fold:hover{color:var(--ed-accent-2)}body.editor-screen .editor-rail-fold:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-rail-fold[hidden]{display:none!important}@media (prefers-reduced-motion: reduce){body.editor-screen .dock,body.editor-screen .editor-rail-fold,body.editor-screen .editor-rail-fold .ic{transition:none}}@media (min-width: 721px) and (max-width: 1023px) and (min-height: 481px){body.editor-screen{--ed-rail-w: min(452px, 55vw)}}@media (max-width: 720px) and (orientation: portrait){body.editor-screen{--ed-rail-w: 0px;--ed-sheet-h: min(52vh, 480px)}body.editor-screen .dock{top:auto;right:0;bottom:0;left:0;width:100%;height:var(--ed-sheet-h);transition:height var(--ed-t)}body.editor-screen .dock-body{border-left:0;border-top:2px solid color-mix(in srgb,var(--ed-accent) 55%,var(--ed-border-2));box-shadow:0 -22px 50px -18px rgba(0,0,0,0.62);padding-bottom:calc(12px + env(safe-area-inset-bottom,0px))}body.editor-screen .dock::before{display:none}body.editor-screen .editor-rail-fold{display:none!important}body.editor-screen.editor-rail-folded .dock{transform:none;pointer-events:auto}body.editor-screen #editorDrawBar{bottom:calc(var(--ed-sheet-h) + 12px)}body.editor-screen .draw-bar-measure{display:none}body.editor-screen .draw-bar-btn{padding:0 11px;gap:6px}body.editor-screen .editor-sheet-fold{display:inline-flex;align-items:flex-start;justify-content:center;position:absolute;z-index:57;right:12px;bottom:100%;width:56px;height:44px;padding:5px 0 0;border:1px solid var(--ed-border-2);border-bottom:0;border-radius:12px 12px 0 0;background:var(--ed-surface);color:var(--ed-muted);cursor:pointer;transition:color var(--ed-t)}body.editor-screen .editor-sheet-fold:hover{color:var(--ed-text)}body.editor-screen .editor-sheet-fold:focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .editor-sheet-fold .ic{width:18px;height:18px;transition:transform var(--ed-t)}body.editor-screen.editor-sheet-folded{--ed-sheet-h: var(--ed-sheet-fold-h, 92px)}body.editor-screen.editor-sheet-folded .dock-body{overflow:hidden}body.editor-screen.editor-sheet-folded .editor-sheet-fold .ic{transform:rotate(180deg)}}@media (orientation: landscape) and (max-height: 480px){body.editor-screen{--ed-rail-w: min(380px, 48vw);--ed-sheet-h: 0px}}body.editor-screen .editor-view-nav{position:sticky;top:var(--ed-head-h, 96px);z-index:2;background:var(--ed-sunken)}@media (max-width: 720px) and (orientation: portrait),(orientation: landscape) and (max-height: 480px){body.editor-screen .action-button,body.editor-screen .editor-actions .action-button,body.editor-screen .editor-dialog-actions .action-button,body.editor-screen .action-link,body.editor-screen .snap-toggle,body.editor-screen .mission-add,body.editor-screen .draw-bar-btn,body.editor-screen .selected-feature .action-button.danger,body.editor-screen input[type=text],body.editor-screen input[type=number],body.editor-screen input[type=search],body.editor-screen input[type=file],body.editor-screen input[type=range],body.editor-screen select{min-height:44px}body.editor-screen .editor-view-tab{height:44px}body.editor-screen .editor-ready{min-height:44px}body.editor-screen .editor-head-status .editor-screen-sim{min-height:44px}body.editor-screen .ghost-danger{min-height:44px;display:inline-flex;align-items:center}body.editor-screen .editor-screen-save,body.editor-screen .editor-screen-exit{min-height:44px;min-width:44px}body.editor-screen .mission-eye,body.editor-screen .mission-edit,body.editor-screen .feature-remove{width:44px}body.editor-screen .feature-item,body.editor-screen .mission-item,body.editor-screen .feature-pick{min-height:44px}}@media (max-width: 720px) and (orientation: portrait){body.editor-screen .action-button{flex:initial;white-space:normal;overflow:visible;text-overflow:clip;line-height:1.2}}@media (prefers-reduced-motion: reduce){body.editor-screen *,.editor-toast,.editor-dialog,.preview-menu{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}body.editor-screen .area-status{display:flex;flex-direction:column;gap:3px;padding:10px 12px;border-radius:var(--ed-r-md);border:1px solid var(--ed-border-2);background:var(--ed-sunken)}body.editor-screen .area-status b{font:620 13px/1.3 var(--ed-font);color:var(--ed-text)}body.editor-screen .area-status small{font:500 11px/1.4 var(--ed-mono);color:var(--ed-muted)}body.editor-screen .area-status[data-state=none]{border-style:dashed}body.editor-screen .area-status[data-state=none] b{color:var(--ed-muted)}body.editor-screen .area-status[data-state=ok]{border-color:color-mix(in srgb,var(--ed-success) 55%,transparent);background:color-mix(in srgb,var(--ed-success) 8%,var(--ed-sunken))}body.editor-screen .area-status[data-state=drawing]{border-color:var(--ed-accent);background:var(--ed-accent-weak)}body.editor-screen .area-status[data-state=drawing] b{color:var(--ed-accent-2)}body.editor-screen .editor-advanced>summary{cursor:pointer;list-style:none;font:600 11px/1.3 var(--ed-font);letter-spacing:0.08em;text-transform:uppercase;color:var(--ed-muted)}body.editor-screen .editor-advanced>summary::-webkit-details-marker{display:none}body.editor-screen .editor-advanced>summary::before{content:"▸ ";color:var(--ed-faint)}body.editor-screen .editor-advanced[open]>summary::before{content:"▾ "}body.editor-screen .editor-advanced>summary:hover{color:var(--ed-text)}body.editor-screen .editor-advanced .editor-scan{margin-top:var(--ed-3)}body.editor-screen .mission-add-row .mission-place{margin-top:0;width:auto}body.editor-screen .house-chain{margin-top:var(--ed-3);padding:10px 12px;border-radius:var(--ed-r-md);border:1px solid var(--ed-accent);background:var(--ed-accent-weak);display:flex;flex-direction:column;gap:var(--ed-2)}body.editor-screen .house-chain .editor-actions{margin-top:0}body.editor-screen .house-chain-count{font:620 12px/1.3 var(--ed-mono);color:var(--ed-accent-2)}body.editor-screen .mission-obj-editor{margin-top:var(--ed-3);padding:var(--ed-3);border:1px solid var(--ed-border-2);border-radius:var(--ed-r-md);background:var(--ed-sunken)}body.editor-screen .house-list{list-style:none;margin:var(--ed-2) 0 0;padding:0;display:flex;flex-direction:column;gap:4px}body.editor-screen .house-row{display:grid;grid-template-columns:26px minmax(0,1fr) auto;align-items:center;gap:6px;border:1px solid var(--ed-border);border-radius:var(--ed-r-sm);background:var(--ed-surface);min-height:40px;overflow:hidden}body.editor-screen .house-num{display:grid;place-items:center;height:100%;font:700 12px/1 var(--ed-mono);color:var(--ed-on-accent);background:var(--ed-accent)}body.editor-screen .house-name{border:0;background:transparent;text-align:left;padding:6px 4px;cursor:pointer;font:500 12px/1.3 var(--ed-font);color:var(--ed-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.editor-screen .house-name:hover{color:var(--ed-accent-2)}body.editor-screen .house-actions{display:flex;height:100%}body.editor-screen .house-actions .feature-remove{width:34px;font-size:11px}body.editor-screen .house-actions .feature-remove[disabled]{opacity:0.3;cursor:default}body.editor-screen{--ed-rail-w: min(380px, 96vw)}@media (min-width: 721px) and (max-width: 1023px){body.editor-screen{--ed-rail-w: min(360px, 48vw)}}body:not(.editor-screen) #editorPalette,body:not(.editor-screen) #editorHint{display:none!important}body.editor-screen .editor-palette{--pal-cell: 44px;--pal-gap: 4px;position:fixed;z-index:57;left:16px;top:16px;pointer-events:auto;display:flex;flex-direction:column;align-items:center;gap:var(--pal-gap);padding:6px;width:auto;background:color-mix(in srgb,var(--ed-surface) 96%,transparent);border:1px solid var(--ed-border-2);border-radius:14px;box-shadow:0 16px 40px -18px rgba(0,0,0,.75),inset 0 1px 0 rgba(255,255,255,.03)}body.editor-screen #editorKindPicker.pal-tools{display:flex;flex-direction:column;align-items:center;gap:var(--pal-gap);margin:0;padding:0;border:0}body.editor-screen .pal-sep{display:block;flex:none;align-self:stretch;height:1px;margin:2px 6px;background:var(--ed-border)}body.editor-screen .editor-palette .pal-tool,body.editor-screen #editorKindPicker .pal-tool{position:relative;flex:none;box-sizing:border-box;width:var(--pal-cell);height:var(--pal-cell);min-width:0;min-height:0;margin:0;padding:0;gap:0;display:grid;place-items:center;border:0;border-radius:10px;background:transparent;color:var(--ed-muted);cursor:pointer;transform:none;box-shadow:none;font:inherit;transition:background var(--ed-t),color var(--ed-t),box-shadow var(--ed-t)}body.editor-screen .editor-palette .pal-tool .ic{width:20px;height:20px}body.editor-screen .editor-palette .pal-tool:hover,body.editor-screen #editorKindPicker .pal-tool:hover{background:var(--ed-raised);color:var(--ed-text)}body.editor-screen .editor-palette .pal-tool:active{transform:scale(.96)}body.editor-screen .editor-palette .pal-tool.active,body.editor-screen #editorKindPicker .pal-tool.active,body.editor-screen #editorKindPicker .pal-tool[aria-checked=true],body.editor-screen .editor-palette .pal-snap:has(input:checked){background:color-mix(in srgb,var(--ed-accent) 16%,transparent);color:var(--ed-accent);box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--ed-accent) 60%,transparent)}body.editor-screen .editor-palette .pal-tool:focus-visible,body.editor-screen .editor-palette .pal-snap:has(input:focus-visible){outline:2px solid var(--ed-accent);outline-offset:2px}body.editor-screen .pal-tip{position:absolute;left:calc(100% + 14px);top:50%;transform:translate(-4px,-50%);display:inline-flex;align-items:center;gap:10px;white-space:nowrap;pointer-events:none;padding:7px 8px 7px 11px;border-radius:8px;z-index:2;background:var(--ed-surface);border:1px solid var(--ed-border-2);color:var(--ed-text);font:600 12.5px/1 var(--ed-font);box-shadow:0 10px 24px -12px rgba(0,0,0,.7);opacity:0;transition:opacity .12s,transform .12s}body.editor-screen .pal-tip kbd{min-width:18px;padding:3px 5px;border-radius:5px;text-align:center;font:700 10.5px/1 var(--ed-mono);color:var(--ed-muted);background:var(--ed-raised);border:1px solid var(--ed-border-2);box-shadow:inset 0 -1px 0 var(--ed-border-2)}body.editor-screen .pal-tool:hover .pal-tip{opacity:1;transform:translate(0,-50%)}@media (hover: none) and (pointer: coarse){body.editor-screen .pal-tip{display:none}}body.editor-screen .pal-tool:focus-visible .pal-tip,body.editor-screen .pal-snap:has(input:focus-visible) .pal-tip{opacity:1;transform:translate(0,-50%)}body.editor-screen .pal-team{display:contents}body.editor-screen .pal-team .ed-select-btn .ed-select-val,body.editor-screen .pal-team .ed-select-btn .ed-select-chev{display:none}body.editor-screen .pal-team .ed-select-btn .ed-dot{width:18px;height:18px;box-shadow:0 0 0 2px var(--ed-surface),0 0 0 3.5px var(--ed-border-2)}body.editor-screen .pal-team .ed-select-btn[aria-expanded=true]{background:var(--ed-raised)}body.editor-screen .pal-team .ed-select-btn::after{content:"";position:absolute;right:6px;bottom:6px;width:0;height:0;border-left:4px solid transparent;border-top:4px solid var(--ed-faint);transform:rotate(-45deg)}body.editor-screen .pal-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0;opacity:0}body.editor-screen .editor-hint-float{position:fixed;z-index:57;margin:0;pointer-events:none;top:16px;left:calc((100vw - var(--ed-rail-w)) / 2);transform:translateX(-50%);max-width:min(560px,calc(100vw - var(--ed-rail-w) - 120px));padding:10px 14px;border-radius:10px;background:var(--ed-surface);border:1px solid color-mix(in srgb,var(--ed-accent) 45%,var(--ed-border-2));color:var(--ed-text);font:500 13px/1.4 var(--ed-font);box-shadow:0 12px 30px -14px rgba(0,0,0,.75)}body.editor-screen .editor-hint-float[hidden]{display:none}body.editor-screen #editorDrawBar [data-draw=release]{display:none}body.editor-screen #editorDrawBar.tool-only [data-draw=finish],body.editor-screen #editorDrawBar.tool-only [data-draw=undo],body.editor-screen #editorDrawBar.tool-only [data-draw=cancel]{display:none}body.editor-screen #editorDrawBar.tool-only [data-draw=release]{display:inline-flex}body.editor-screen #editorDrawBar{max-width:calc(100vw - var(--ed-rail-w) - 24px)}body.editor-screen #editorDrawBar .draw-bar-measure{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.editor-screen .editor-view[data-view-panel=elementos] fieldset.editor-step{display:none}body.editor-screen .editor-hud[data-view=elementos] .editor-view[data-view-panel=elementos]{display:flex;flex-direction:column}body.editor-screen .editor-view[data-view-panel=elementos] #selectedEditor{order:-1}body.editor-screen #catastroLink,body.editor-screen #lidarLink{display:none!important}body.editor-screen #baseMenu .vm-sec[data-sec=gente],body.editor-screen #baseMenu #baseMenuSearch{display:none}body.editor-screen #baseMenu{z-index:66}body.editor-screen .bottom-actions{right:calc(var(--ed-rail-w) + 16px)}@media (max-width: 1023px){body.editor-screen .editor-screen-save span{display:none}body.editor-screen .editor-screen-save{min-width:44px}}@media (max-width: 720px) and (orientation: portrait){body.editor-screen .editor-palette{--pal-gap: 0px;left:50%;right:auto;top:calc(var(--sa-top, 0px) + 10px);bottom:auto;transform:translateX(-50%);flex-direction:row;max-width:calc(100vw - 16px);padding:3px;overflow-x:auto;scrollbar-width:none}body.editor-screen .editor-palette::-webkit-scrollbar{display:none}body.editor-screen #editorKindPicker.pal-tools{flex-direction:row}body.editor-screen .pal-sep{align-self:auto;width:1px;height:26px;margin:0 1px}body.editor-screen .pal-tip{display:none}body.editor-screen .editor-palette .pal-snap{display:none}body.editor-screen .editor-hint-float{top:calc(var(--sa-top, 0px) + 68px);left:50%;max-width:calc(100vw - 24px)}body.editor-screen #editorDrawBar{left:50%;max-width:calc(100vw - 16px);bottom:calc(var(--ed-sheet-h) + 64px)}body.editor-screen .bottom-actions{left:8px;right:80px;bottom:calc(var(--ed-sheet-h) + 10px);justify-content:flex-start}body.editor-screen.dock-open .bottom-actions>#centerMap,body.editor-screen.dock-open .bottom-actions>#cycleBase,body.editor-screen.dock-open .bottom-actions>#togglePerspective{display:inline-flex!important}}@media (orientation: landscape) and (max-height: 480px){body.editor-screen .editor-palette{top:calc(var(--sa-top, 0px) + 8px);left:calc(var(--sa-left, 0px) + 8px);padding:4px;--pal-gap: 2px;display:grid;grid-template-columns:repeat(2,var(--pal-cell))}body.editor-screen #editorKindPicker.pal-tools{display:contents}body.editor-screen .editor-palette .pal-sep{display:none}}body.editor-screen .ed-select-native{position:absolute!important;width:1px!important;height:1px!important;min-height:0!important;margin:-1px!important;padding:0!important;overflow:hidden;clip:rect(0 0 0 0);border:0!important;opacity:0;pointer-events:none}body.editor-screen .ed-select-btn:not(.pal-tool){display:flex;align-items:center;gap:9px;width:100%;min-height:44px;box-sizing:border-box;padding:0 10px 0 12px;border-radius:var(--ed-r-sm, 8px);background:var(--ed-sunken, var(--ed-bg));border:1px solid var(--ed-border-2);color:var(--ed-text);font:600 13.5px/1.2 var(--ed-font);text-align:left;cursor:pointer;transition:border-color var(--ed-t),background var(--ed-t)}body.editor-screen .ed-select-btn:not(.pal-tool):hover{border-color:color-mix(in srgb,var(--ed-accent) 45%,var(--ed-border-2))}body.editor-screen .ed-select-btn:not(.pal-tool):focus-visible{outline:none;box-shadow:var(--ed-ring)}body.editor-screen .ed-select-btn[aria-expanded=true]:not(.pal-tool){border-color:var(--ed-accent)}body.editor-screen .ed-select-btn:disabled{opacity:.5;cursor:not-allowed}body.editor-screen .ed-select-val{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.editor-screen .ed-select-chev{width:16px;height:16px;flex:none;color:var(--ed-faint);transition:transform var(--ed-t)}body.editor-screen .ed-select-btn[aria-expanded=true] .ed-select-chev{transform:rotate(180deg);color:var(--ed-accent)}body.editor-screen .ed-dot{display:inline-block;flex:none;width:12px;height:12px;border-radius:50%;background:var(--dot, var(--ed-muted));box-shadow:0 0 0 2px color-mix(in srgb,var(--dot, var(--ed-muted)) 25%,transparent)}body.editor-screen .ed-dot.neutral{background:transparent;box-shadow:inset 0 0 0 2px var(--ed-muted)}body.editor-screen .ed-dot.all{background:conic-gradient(var(--ed-blue) 0 50%,var(--ed-red) 0)}.ed-select-pop{display:none}body.editor-screen .ed-select-pop{position:fixed;z-index:90;display:grid;gap:2px;box-sizing:border-box;min-width:180px;max-width:min(320px,calc(100vw - 16px));max-height:min(360px,calc(100dvh - 16px));overflow-y:auto;padding:5px;border-radius:12px;background:var(--ed-surface);border:1px solid var(--ed-border-2);box-shadow:0 18px 44px -16px rgba(0,0,0,.8);animation:ed-pop-in .12s ease-out}body.editor-screen .ed-select-pop[hidden]{display:none}@keyframes ed-pop-in{from{opacity:0;transform:translateY(-4px)}}@media (prefers-reduced-motion: reduce){body.editor-screen .ed-select-pop{animation:none}}body.editor-screen .ed-opt{display:flex;align-items:center;gap:10px;min-height:40px;padding:0 10px;border:0;border-radius:8px;background:transparent;color:var(--ed-text);font:600 13px/1.2 var(--ed-font);text-align:left;cursor:pointer}body.editor-screen .ed-opt span{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}body.editor-screen .ed-opt:hover,body.editor-screen .ed-opt:focus-visible{background:var(--ed-raised);outline:none}body.editor-screen .ed-opt.on{color:var(--ed-accent);background:color-mix(in srgb,var(--ed-accent) 12%,transparent)}body.editor-screen .ed-opt:disabled{opacity:.45;cursor:not-allowed}body.editor-screen .ed-opt-check{width:16px;height:16px;flex:none;opacity:0;color:var(--ed-accent)}body.editor-screen .ed-opt.on .ed-opt-check{opacity:1}@media (pointer: coarse){body.editor-screen .ed-opt{min-height:44px}}body.editor-screen .teams-count{margin-left:6px;font:600 10px/1 var(--ed-mono);color:var(--ed-faint);letter-spacing:.06em}body.editor-screen .teams-editor-list{list-style:none;margin:0 0 10px;padding:0;display:grid;gap:6px}body.editor-screen .team-ed-row{display:grid;grid-template-columns:34px minmax(0,1fr) auto 36px;gap:8px;align-items:center;padding:6px 6px 6px 8px;border-radius:var(--ed-r-md);background:var(--ed-raised);border:1px solid var(--ed-border);box-shadow:inset 3px 0 0 var(--team-c)}body.editor-screen .team-ed-color{position:relative;width:26px;height:26px;border-radius:50%;background:var(--team-c);cursor:pointer;box-shadow:0 0 0 2px var(--ed-surface),0 0 0 3px var(--ed-border-2)}body.editor-screen .team-ed-color input{position:absolute;inset:0;opacity:0;width:100%;height:100%;cursor:pointer;border:0;padding:0}body.editor-screen .team-ed-color:focus-within{box-shadow:0 0 0 2px var(--ed-surface),0 0 0 4px var(--ed-accent)}body.editor-screen .team-ed-name{min-width:0;min-height:36px;padding:6px 9px;border-radius:var(--ed-r-sm, 6px);border:1px solid transparent;background:transparent;color:var(--ed-text);font:600 13.5px/1.2 var(--ed-font)}body.editor-screen .team-ed-name:hover{border-color:var(--ed-border)}body.editor-screen .team-ed-name:focus-visible{outline:none;border-color:var(--ed-accent);background:var(--ed-bg, #0b0e14)}body.editor-screen .team-ed-spawn{min-height:32px;padding:0 9px;border-radius:6px;font:600 10.5px/1 var(--ed-mono);letter-spacing:.05em;cursor:pointer;border:1px solid var(--ed-border-2);background:transparent}body.editor-screen .team-ed-spawn.ok{color:#6fae5a;border-color:color-mix(in srgb,#6fae5a 45%,transparent)}body.editor-screen .team-ed-spawn.missing{color:var(--ed-accent);border-color:color-mix(in srgb,var(--ed-accent) 50%,transparent)}body.editor-screen .team-ed-del{width:36px;height:36px;display:grid;place-items:center;border:0;border-radius:6px;background:transparent;color:var(--ed-faint);cursor:pointer}body.editor-screen .team-ed-del:hover:not(:disabled){color:var(--ed-red);background:color-mix(in srgb,var(--ed-red) 10%,transparent)}body.editor-screen .team-ed-del:disabled{opacity:.35;cursor:not-allowed}body.editor-screen .team-ed-del .ic{width:16px;height:16px}@media (max-width: 720px){body.editor-screen .team-ed-spawn,body.editor-screen .team-ed-del,body.editor-screen .team-ed-name{min-height:44px}body.editor-screen .team-ed-del{width:44px;height:44px}}@media (max-width: 1023px),(pointer: coarse){body.editor-screen .team-ed-spawn,body.editor-screen .team-ed-name{min-height:44px}body.editor-screen .team-ed-del{width:44px;height:44px}body.editor-screen .team-ed-row{grid-template-columns:34px minmax(0,1fr) auto 44px}}body.bo-editing #editorJugarYa,body.bo-editing #editorSimulacro{display:none!important}body:not(.editor-screen) .bo-edit-banner{display:none}.bo-edit-banner{position:fixed;z-index:80;top:calc(var(--sa-top, 0px) + 10px);left:50%;transform:translateX(calc(-50% - var(--ed-rail-w, 0px) / 2));width:max-content;max-width:min(780px,calc(100vw - var(--ed-rail-w, 0px) - 140px));display:flex;align-items:center;flex-wrap:wrap;gap:6px 10px;padding:8px 8px 8px 14px;border-radius:12px;background:var(--ed-surface, #121722);color:var(--ed-text, #edf1f7);border:1px solid var(--ed-accent, #e8b23a);box-shadow:0 6px 18px rgba(0,0,0,0.35);font:500 13px/1.35 var(--ed-font, "InterVF", system-ui, sans-serif);pointer-events:auto}.bo-edit-banner b:first-child{color:var(--ed-accent, #e8b23a);font:700 11px/1 var(--ed-mono, "JBMono", monospace);letter-spacing:0.14em;padding:3px 6px;border:1px solid currentColor;border-radius:6px}.bo-edit-banner button{min-height:34px;padding:0 12px;border-radius:8px;cursor:pointer;background:var(--ed-accent, #e8b23a);color:#0b0e14;border:0;font:700 12px/1 var(--ed-font, "InterVF", system-ui, sans-serif)}.bo-edit-banner.is-bad{border-color:#e5484d}@media (max-width: 720px) and (orientation: portrait){.bo-edit-banner{top:calc(var(--sa-top, 0px) + 66px);left:8px;right:8px;transform:none;width:auto;max-width:none;font-size:12px;padding:6px 6px 6px 10px}.bo-edit-banner button{min-height:44px}}.bld-handle{position:absolute;width:34px;height:34px;display:grid;place-items:center;padding:0;margin:0;border-radius:50%;border:2px solid #0b1220;background:var(--ed-accent, #e8b23a);color:#0b1220;box-shadow:0 2px 8px rgba(0,0,0,.45);cursor:grab;touch-action:none}.bld-handle:active{cursor:grabbing}.bld-handle-rot{background:#0b1220;color:var(--ed-accent, #e8b23a);border-color:var(--ed-accent, #e8b23a)}.bld-handle svg{width:18px;height:18px;pointer-events:none}@media (pointer: coarse){.bld-handle{width:44px;height:44px}.bld-handle svg{width:22px;height:22px}}body.editor-screen .building-select-tools{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 4px}body.editor-screen .editor-3d-pieces{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 6px}body.editor-screen .editor-3d-pieces .action-button[aria-pressed=true],body.editor-screen .building-select-tools .action-button[aria-pressed=true],body.editor-screen #buildingArray[aria-pressed=true],body.editor-screen #buildingDuplicate[aria-pressed=true]{border-color:var(--ed-accent, #e8b23a);background:color-mix(in srgb,var(--ed-accent, #e8b23a) 18%,transparent)}body.editor-screen .building-array-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:8px}body.editor-screen .building-array-row input{width:76px}@media (pointer: coarse){body.editor-screen .editor-3d-pieces .action-button,body.editor-screen .building-select-tools .action-button,body.editor-screen .building-array-row .action-button,body.editor-screen .building-array-row input{min-height:44px}}body.editor-screen .editor-palette{--pal-w: 60px;--pal-h: 50px}body.editor-screen .editor-palette .pal-tool,body.editor-screen #editorKindPicker .pal-tool{width:var(--pal-w);height:var(--pal-h);grid-template-rows:auto auto;align-content:center;justify-items:center;gap:4px}body.editor-screen .pal-name{display:block;max-width:calc(var(--pal-w) - 4px);font:700 9px/1 var(--ed-font);letter-spacing:.03em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:inherit}body.editor-screen .pal-team .ed-select-btn::before{content:"EQUIPO";display:block;order:2;font:700 9px/1 var(--ed-font);letter-spacing:.03em;color:inherit}body.editor-screen .pal-team .ed-select-btn{display:grid;grid-template-rows:auto auto;align-content:center;justify-items:center;gap:4px}body.editor-screen .pal-team .ed-select-btn .ed-dot{grid-row:1}body.editor-screen .pal-team .ed-select-btn::before{grid-row:2}body.editor-screen .pal-team .ed-select-btn::after{bottom:auto;top:7px;right:7px}@media (max-width: 720px) and (orientation: portrait){body.editor-screen .editor-palette{--pal-w: 52px;--pal-h: 50px;justify-content:flex-start}body.editor-screen .pal-name,body.editor-screen .pal-team .ed-select-btn::before{font-size:8.5px}}@media (orientation: landscape) and (max-height: 480px){body.editor-screen .editor-palette{--pal-w: 56px;--pal-h: 46px;grid-template-columns:repeat(2,var(--pal-w))}}body.editor-screen .bottom-actions .action-button{flex-direction:column;gap:2px;width:auto;min-width:56px;padding:0 8px;height:52px;min-height:52px}body.editor-screen .bottom-actions .action-button .btn-name{display:block;max-width:72px;font:700 8.5px/1 var(--font-data, var(--ed-mono));letter-spacing:.02em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.editor-screen .bottom-actions #cycleBase #mapModeName{display:none}body.editor-screen .editor-screen-save span,body.editor-screen .editor-screen-exit span{display:inline}body.editor-screen .editor-screen-exit{min-width:0;padding-inline:10px;gap:6px}.bld-handle .bld-handle-name{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);padding:2px 6px;border-radius:4px;white-space:nowrap;pointer-events:none;font:800 9px/1.2 var(--ed-font, sans-serif);letter-spacing:.04em;background:#0b1220;color:var(--ed-accent, #e8b23a);box-shadow:0 1px 4px rgba(0,0,0,.5)}@media (max-width: 420px){body.editor-screen .editor-head-main{min-width:0}body.editor-screen .editor-count{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body.editor-screen .editor-screen-save,body.editor-screen .editor-screen-exit{padding-inline:8px;gap:4px;font-size:12px}}
