.map-editor-v2-screen{min-width:0;padding:16px 12px calc(92px + env(safe-area-inset-bottom));overflow-x:clip}.map-editor-v2__page-head{gap:14px}.map-editor-v2__page-actions{width:100%}.map-editor-v2__page-actions .button{flex:1;min-height:44px;font-size:.78rem}.map-editor-v2-screen>.state-notice{max-width:1480px;margin:0 auto 10px}.map-editor-v2{border:1px solid var(--line-strong);border-radius:var(--radius-md);background:var(--surface);grid-template-columns:minmax(0,1fr);width:100%;min-width:0;max-width:1480px;min-height:560px;margin-inline:auto;display:grid;position:relative;overflow:hidden}.map-editor-v2__stage{background:var(--surface);flex-direction:column;min-width:0;min-height:560px;display:flex}.map-editor-v2__toolbar{z-index:2;border-bottom:1px solid var(--line);background:var(--bg);align-items:center;gap:4px;min-width:0;min-height:54px;padding:5px 7px;display:flex;position:relative}.map-editor-v2__toolbar-group{align-items:center;gap:2px;min-width:0;display:flex}.map-editor-v2__toolbar-group--scroll{scrollbar-width:none;flex:1;overflow-x:auto}.map-editor-v2__toolbar-group--scroll::-webkit-scrollbar{display:none}.map-editor-v2__toolbar .icon-button,.map-editor-v2__toolbar button:not(.button,.map-editor-v2__save-state){flex:none;min-width:42px;min-height:42px}.map-editor-v2__toolbar button:not(.icon-button,.button,.map-editor-v2__save-state){color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:.69rem;font-weight:700;display:inline-flex}.map-editor-v2__toolbar button:not(.icon-button,.button,.map-editor-v2__save-state):hover:not(:disabled){background:var(--surface);color:var(--ink)}.map-editor-v2__toolbar button.is-active{background:var(--action-pale)!important;color:var(--action)!important}.map-editor-v2__toolbar button svg{width:16px;height:16px}.map-editor-v2__toolbar .button{flex:none;min-height:42px;padding-inline:11px;font-size:.7rem}.map-editor-v2__grid-size{min-height:42px;color:var(--muted);white-space:nowrap;border-radius:7px;align-items:center;gap:5px;padding:0 7px;font-size:.66rem;font-weight:700;display:inline-flex}.map-editor-v2__grid-size select{border:1px solid var(--line);background:var(--bg);width:52px;height:32px;color:var(--ink);border-radius:6px;padding:0 5px;font-size:.68rem}.map-editor-v2__save-state{min-width:42px;min-height:42px;color:var(--success);white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;padding:0 8px;font-size:.66rem;font-weight:720;display:inline-flex}.map-editor-v2__save-state[data-state=dirty],.map-editor-v2__save-state[data-state=saving]{color:var(--warning)}.map-editor-v2__save-state[data-state=error]{color:var(--danger)}.map-editor-v2__save-state svg{width:15px;height:15px}.map-editor-v2__save-state span{display:none}.map-editor-v2__canvas-viewport{overscroll-behavior:contain;background:var(--surface-strong);scrollbar-color:var(--line-strong) var(--surface);flex:1;min-width:0;min-height:505px;position:relative;overflow:auto}.map-editor-v2__canvas-wrap{background:var(--bg);min-width:1px;min-height:1px;margin:14px auto;position:relative;overflow:hidden}.map-editor-v2__canvas-wrap.has-grid{background-image:linear-gradient(to right, color-mix(in oklch, var(--line) 72%, transparent) 1px, transparent 1px), linear-gradient(to bottom, color-mix(in oklch, var(--line) 72%, transparent) 1px, transparent 1px);background-size:var(--editor-grid-size) var(--editor-grid-size)}.map-editor-v2__canvas{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block;overflow:visible}.map-editor-v2__ground{fill:color-mix(in oklch, var(--surface) 58%, white)}.map-editor-v2__element{cursor:move;touch-action:none;outline:none}.map-editor-v2__element.is-locked{cursor:default}.map-editor-v2__element .hit{fill:#0000;stroke:#0000}.map-editor-v2__element .shape{vector-effect:non-scaling-stroke}.map-editor-v2__element text{fill:var(--ink);paint-order:stroke;stroke:color-mix(in oklch, var(--bg) 88%, transparent);stroke-width:2px;stroke-linejoin:round;pointer-events:none;font-family:Inter Variable,Inter,system-ui,sans-serif;font-size:9px;font-weight:750}.map-editor-v2__element line,.map-editor-v2__element path:not(.shape){fill:none;stroke:currentColor;stroke-width:1.4px;vector-effect:non-scaling-stroke;pointer-events:none}.map-editor-v2__element.is-seat-set,.map-editor-v2__element.is-sunbed{color:var(--action)}.map-editor-v2__element.is-seat-set .shape,.map-editor-v2__element.is-sunbed .shape{fill:var(--bg);stroke:currentColor;stroke-width:1.4px}.map-editor-v2__element.is-seat-set.is-selected .shape,.map-editor-v2__element.is-sunbed.is-selected .shape{fill:var(--action-pale)}.map-editor-v2__element.is-umbrella{color:#8a5c00;color:lab(43.033% 15.7849 63.1808)}.map-editor-v2__element.is-umbrella .shape{fill:#ffe3b7;fill:lab(91.978% 6.69554 29.4058);stroke:currentColor;stroke-width:1.4px}.map-editor-v2__element.is-zone .shape{fill:color-mix(in oklch, var(--action-pale) 34%, transparent);stroke:color-mix(in oklch, var(--action) 72%, transparent);stroke-width:1.4px;stroke-dasharray:7 5}.map-editor-v2__element.is-sea{color:#00627e;color:lab(37.6843% -19.8324 -26.8631)}.map-editor-v2__element.is-sea .shape{fill:#b2e4f8;fill:lab(87.5056% -13.0382 -15.3898);stroke:#4b90ab;stroke:lab(56.241% -16.9474 -20.8682);stroke-width:1.2px}.map-editor-v2__element.is-sea text{fill:#003647;fill:lab(20.1841% -14.5041 -20.3749);stroke:#b2e4f8;stroke:lab(87.5056% -13.0382 -15.3898)}.map-editor-v2__element.is-shore{color:#846d4d;color:lab(47.8315% 5.81232 21.7495)}.map-editor-v2__element.is-shore .shape{fill:#f4e2c8;fill:lab(90.795% 3.1648 15.2766);stroke:currentColor;stroke-width:1.4px}.map-editor-v2__element.is-rock{color:#493d32;color:lab(26.8845% 3.92075 8.9939)}.map-editor-v2__element.is-rock .shape{fill:#b4a18e;fill:lab(67.4949% 4.95696 12.6317);stroke:currentColor;stroke-width:1.5px}.map-editor-v2__element.is-rock text{fill:#251b10;fill:lab(10.6312% 4.16183 8.7645);stroke:#b4a18e;stroke:lab(67.4949% 4.95696 12.6317)}.map-editor-v2__element.is-path{color:#7d6541;color:lab(44.3543% 6.23786 24.1863)}.map-editor-v2__element.is-path .shape{fill:#f5e9d8;fill:lab(93.0952% 1.94076 9.83684);stroke:currentColor;stroke-width:1.2px;stroke-dasharray:7 5}.map-editor-v2__element.is-path path{stroke-dasharray:3 4}.map-editor-v2__element.is-text .hit{fill:color-mix(in oklch, var(--bg) 78%, transparent);stroke:var(--line);stroke-width:1px;stroke-dasharray:3 3;vector-effect:non-scaling-stroke}.map-editor-v2__element.is-text text{font-size:13px;font-weight:780}.map-editor-v2__element.is-restaurant,.map-editor-v2__element.is-bar,.map-editor-v2__element.is-cashier,.map-editor-v2__element.is-stairs,.map-editor-v2__element.is-entry,.map-editor-v2__element.is-sea-entry,.map-editor-v2__element.is-toilet,.map-editor-v2__element.is-shower,.map-editor-v2__element.is-custom{color:var(--ink-soft)}.map-editor-v2__element.is-restaurant .shape,.map-editor-v2__element.is-bar .shape,.map-editor-v2__element.is-cashier .shape,.map-editor-v2__element.is-stairs .shape,.map-editor-v2__element.is-entry .shape,.map-editor-v2__element.is-sea-entry .shape,.map-editor-v2__element.is-toilet .shape,.map-editor-v2__element.is-shower .shape,.map-editor-v2__element.is-custom .shape{fill:var(--bg);stroke:currentColor;stroke-width:1.5px}.map-editor-v2__element.is-restaurant .shape{fill:#fde6dd;fill:lab(92.8775% 6.98656 7.42453)}.map-editor-v2__element.is-bar .shape{fill:#fbe3f2;fill:lab(92.5882% 10.4789 -4.17742)}.map-editor-v2__element.is-cashier .shape{fill:var(--brand-pale);stroke:var(--brand)}.map-editor-v2__element.is-stairs .shape,.map-editor-v2__element.is-entry .shape,.map-editor-v2__element.is-sea-entry .shape{fill:var(--action-pale);stroke:var(--action)}.map-editor-v2__element .glyph{font-size:15px;font-weight:800}.map-editor-v2__element.is-inactive{opacity:.52}.map-editor-v2__element.has-issue .shape,.map-editor-v2__element.has-issue .hit:not(:first-child){fill:var(--danger-pale);stroke:var(--danger)}.map-editor-v2__element.is-selected .shape,.map-editor-v2__element.is-selected .hit{stroke:var(--brand);stroke-width:2.2px}.map-editor-v2__element:focus-visible .shape,.map-editor-v2__element:focus-visible .hit{stroke:var(--action);stroke-width:3px}.map-editor-v2__lock-mark rect{fill:var(--ink-soft);stroke:var(--bg);stroke-width:1px;vector-effect:non-scaling-stroke}.map-editor-v2__lock-mark path{fill:none;stroke:var(--bg)!important;stroke-width:1.1px!important}.map-editor-v2__selection{color:var(--brand);pointer-events:none}.map-editor-v2__selection>rect{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-dasharray:5 3;vector-effect:non-scaling-stroke}.map-editor-v2__selection>line{stroke:currentColor;stroke-width:1.4px;vector-effect:non-scaling-stroke}.map-editor-v2__selection circle{fill:var(--bg);stroke:currentColor;stroke-width:2px;vector-effect:non-scaling-stroke;pointer-events:all;touch-action:none}.map-editor-v2__selection .rotate-handle{cursor:grab}.map-editor-v2__selection .resize-handle{cursor:nwse-resize}.map-editor-v2__marquee{fill:color-mix(in oklch, var(--action-pale) 55%, transparent);stroke:var(--action);stroke-width:1.5px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;pointer-events:none}.map-editor-v2__zoom{z-index:3;border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);align-items:center;width:max-content;margin:-60px 12px 12px auto;display:flex;position:sticky;bottom:12px;right:12px}.map-editor-v2__zoom .icon-button{border-radius:0;width:44px;height:44px}.map-editor-v2__zoom>button:not(.icon-button){border:0;border-inline:1px solid var(--line);background:var(--bg);min-width:72px;min-height:44px;color:var(--ink-soft);justify-content:center;align-items:center;gap:5px;padding:0 8px;font-size:.69rem;font-weight:740;display:flex}.map-editor-v2__zoom>button svg{width:15px;height:15px}.map-editor-v2__side{z-index:var(--modal);right:0;bottom:calc(66px + env(safe-area-inset-bottom));border-top:1px solid var(--line-strong);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--bg);flex-direction:column;max-height:min(76dvh,720px);display:none;position:fixed;left:0;overflow:hidden;box-shadow:0 -4px 8px #0303032e;box-shadow:0 -4px 8px lab(.903296% 0 0/.18)}.map-editor-v2__side.is-open{display:flex}.map-editor-v2__side-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;min-height:52px;padding:4px 10px 4px 16px;display:flex}.map-editor-v2__side-head strong{font-size:.82rem}.map-editor-v2__side-head .icon-button{min-width:44px;min-height:44px}.map-editor-v2__side-scroll{overscroll-behavior:contain;flex:1;min-height:0;overflow-y:auto}.map-editor-v2__tabs{border-bottom:1px solid var(--line);background:var(--surface);grid-template-columns:repeat(3,minmax(0,1fr));gap:3px;padding:6px;display:grid}.map-editor-v2__tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:0 5px;font-size:.68rem;font-weight:720;display:inline-flex}.map-editor-v2__tabs button[aria-selected=true]{background:var(--bg);color:var(--action)}.map-editor-v2__tabs svg{width:15px}.map-editor-v2__library-group{border-bottom:1px solid var(--line);padding:14px}.map-editor-v2__library-group h2,.map-editor-v2__multi-tools h2{color:var(--muted);letter-spacing:0;margin:0 0 8px;font-size:.68rem;font-weight:760}.map-editor-v2__library-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.map-editor-v2__library-grid>button{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);min-width:0;min-height:64px;color:var(--ink-soft);text-align:left;grid-template-columns:24px minmax(0,1fr) 16px;align-items:center;gap:6px;padding:8px;display:grid}.map-editor-v2__library-grid>button:hover{border-color:var(--action);background:var(--action-pale);color:var(--action)}.map-editor-v2__library-grid>button>svg:first-child{width:20px;height:20px}.map-editor-v2__library-grid>button>svg:last-child{width:15px;height:15px}.map-editor-v2__library-grid>button span{flex-direction:column;min-width:0;display:flex}.map-editor-v2__library-grid strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.map-editor-v2__library-grid small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.57rem;overflow:hidden}.map-editor-v2__background-control{gap:10px;padding:14px;display:grid}.map-editor-v2__background-control>div,.map-editor-v2__versions-intro{align-items:flex-start;gap:9px;display:flex}.map-editor-v2__background-control>div>svg{width:19px;color:var(--action)}.map-editor-v2__background-control span{flex-direction:column;display:flex}.map-editor-v2__background-control strong{font-size:.72rem}.map-editor-v2__background-control small,.map-editor-v2__background-control p{color:var(--muted);font-size:.62rem;line-height:1.45}.map-editor-v2__background-control p{margin:0}.map-editor-v2__background-control .button{min-height:44px;font-size:.7rem}.map-editor-v2__layer-groups{border-bottom:1px solid var(--line);padding:8px 14px}.map-editor-v2__layer-groups>label{justify-content:space-between;align-items:center;gap:8px;min-height:48px;display:flex}.map-editor-v2__layer-groups>label>span{align-items:center;gap:8px;display:flex}.map-editor-v2__layer-groups svg{width:17px;color:var(--muted)}.map-editor-v2__layer-groups span span{flex-direction:column;font-size:.69rem;font-weight:700;display:flex}.map-editor-v2__layer-groups small{color:var(--muted);font-size:.58rem;font-weight:500}.map-editor-v2__layer-search{border-bottom:1px solid var(--line);padding:12px 14px}.map-editor-v2__layer-search span,.map-editor-v2__property-form>label>span,.map-editor-v2__field-row label>span,.map-editor-v2__dialog label>span{color:var(--muted);margin-bottom:5px;font-size:.65rem;font-weight:720;display:block}.map-editor-v2__layer-search input,.map-editor-v2__property-form input,.map-editor-v2__property-form select,.map-editor-v2__dialog input,.map-editor-v2__dialog select,.map-editor-v2__dialog textarea{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:44px;color:var(--ink);padding:0 11px;font-size:.75rem}.map-editor-v2__dialog textarea{resize:vertical;min-height:84px;padding-block:10px}.map-editor-v2__object-list>div{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) 38px 38px;align-items:center;gap:2px;min-height:54px;padding:4px 6px 4px 10px;display:grid}.map-editor-v2__object-list>div.is-selected{background:var(--brand-pale)}.map-editor-v2__object-list>div>button:first-child{text-align:left;background:0 0;border:0;align-items:center;gap:8px;min-width:0;min-height:46px;padding:4px;display:flex}.map-editor-v2__object-list>div>button:first-child>span:not(.map-editor-v2__element-glyph){flex-direction:column;min-width:0;display:flex}.map-editor-v2__object-list strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.map-editor-v2__object-list small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:.57rem;overflow:hidden}.map-editor-v2__object-list .icon-button{width:38px;height:38px}.map-editor-v2__element-glyph{background:var(--surface);width:32px;height:32px;color:var(--ink-soft);border-radius:7px;flex:0 0 32px;place-items:center;display:grid}.map-editor-v2__element-glyph.is-seat-set,.map-editor-v2__element-glyph.is-sunbed{background:var(--action-pale);color:var(--action)}.map-editor-v2__element-glyph.is-sea,.map-editor-v2__element-glyph.is-shore{color:#004a62;color:lab(28.3506% -16.8057 -22.9944);background:#c9ebf9;background:lab(90.9107% -9.15536 -10.6867)}.map-editor-v2__element-glyph.is-rock{color:#493d32;color:lab(26.8845% 3.92075 8.9939);background:#eadbcd;background:lab(88.3893% 3.40512 8.91397)}.map-editor-v2__element-glyph svg{width:17px;height:17px}.map-editor-v2__versions-panel{padding:14px}.map-editor-v2__versions-intro>span{border-radius:var(--radius-sm);background:var(--brand-pale);width:36px;height:36px;color:var(--brand);flex:0 0 36px;place-items:center;display:grid}.map-editor-v2__versions-intro svg{width:18px}.map-editor-v2__versions-intro strong{font-size:.74rem}.map-editor-v2__versions-intro p{color:var(--muted);margin:3px 0 0;font-size:.62rem;line-height:1.45}.map-editor-v2__refresh{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--bg);width:100%;min-height:42px;color:var(--ink-soft);justify-content:center;align-items:center;gap:7px;margin:12px 0 8px;font-size:.68rem;font-weight:720;display:flex}.map-editor-v2__refresh svg{width:15px}.map-editor-v2__version-list{border-top:1px solid var(--line)}.map-editor-v2__version-list article{border-bottom:1px solid var(--line)}.map-editor-v2__version-list article.is-current{background:color-mix(in oklch, var(--brand-pale) 48%, var(--bg))}.map-editor-v2__version-main{text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr) 20px;align-items:center;gap:8px;width:100%;min-height:58px;padding:6px 4px;display:grid}.map-editor-v2__version-status{background:var(--surface);width:30px;height:30px;color:var(--muted);border-radius:7px;place-items:center;display:grid}.map-editor-v2__version-status.is-draft{background:var(--brand-pale);color:var(--brand)}.map-editor-v2__version-status.is-published{background:var(--success-pale);color:var(--success)}.map-editor-v2__version-status svg{width:15px}.map-editor-v2__version-main>span:nth-child(2){flex-direction:column;display:flex}.map-editor-v2__version-main strong{font-size:.7rem}.map-editor-v2__version-main small{color:var(--muted);margin-top:2px;font-size:.58rem}.map-editor-v2__version-main>svg{width:16px;transition:transform .16s ease-out}.map-editor-v2__version-main[aria-expanded=true]>svg{transform:rotate(180deg)}.map-editor-v2__version-details{padding:2px 4px 12px 42px}.map-editor-v2__version-details dl,.map-editor-v2__metadata{gap:7px;margin:0;display:grid}.map-editor-v2__version-details dl>div,.map-editor-v2__metadata>div{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.map-editor-v2__version-details dt,.map-editor-v2__metadata dt{color:var(--muted);font-size:.58rem}.map-editor-v2__version-details dd,.map-editor-v2__metadata dd{color:var(--ink-soft);text-align:right;margin:0;font-size:.61rem;font-weight:650}.map-editor-v2__version-details p{color:var(--muted);margin:9px 0;font-size:.62rem;line-height:1.45}.map-editor-v2__version-details .button{width:100%;min-height:42px;padding-inline:8px;font-size:.66rem}.map-editor-v2__comparison{border-radius:var(--radius-sm);background:var(--action-pale);color:var(--action-hover);margin:9px 0;padding:9px}.map-editor-v2__comparison>strong{margin-bottom:7px;font-size:.63rem;display:block}.map-editor-v2__comparison>div{grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;display:grid}.map-editor-v2__comparison span{background:var(--bg);border-radius:6px;flex-direction:column;align-items:center;padding:5px 3px;font-size:.54rem;display:flex}.map-editor-v2__comparison b{font-size:.72rem}.map-editor-v2__version-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;display:grid}.map-editor-v2__property-form{gap:12px;padding:14px;display:grid}.map-editor-v2__selection-summary{border-radius:var(--radius-sm);background:var(--surface);grid-template-columns:36px minmax(0,1fr) 20px;align-items:center;gap:8px;min-height:54px;padding:7px;display:grid}.map-editor-v2__selection-summary>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.map-editor-v2__selection-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:.73rem;overflow:hidden}.map-editor-v2__selection-summary small{color:var(--muted);margin-top:2px;font-size:.59rem}.map-editor-v2__selection-summary>svg{width:16px;color:var(--muted)}.map-editor-v2__multi-tools{border-radius:var(--radius-sm);background:var(--surface);padding:10px}.map-editor-v2__multi-tools>div{grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;display:grid}.map-editor-v2__multi-tools>div+h2{margin-top:10px}.map-editor-v2__multi-tools .icon-button{background:var(--bg);width:100%;height:38px}.map-editor-v2__field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.map-editor-v2__input-icon{display:block;position:relative}.map-editor-v2__input-icon svg{width:15px;color:var(--muted);pointer-events:none;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.map-editor-v2__input-icon input{padding-inline:34px}.map-editor-v2__input-icon b{color:var(--muted);pointer-events:none;font-size:.7rem;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.map-editor-v2__property-form input[type=range]{border:0;min-height:34px;padding:0}.map-editor-v2__switches{border:1px solid var(--line);border-radius:var(--radius-sm);margin:0;padding:8px 10px}.map-editor-v2__switches legend{color:var(--muted);padding:0 4px;font-size:.64rem;font-weight:720}.map-editor-v2__switches label{justify-content:space-between;align-items:center;gap:8px;min-height:42px;font-size:.68rem;font-weight:650;display:flex}.map-editor-v2__switches label span{align-items:center;gap:7px;display:flex}.map-editor-v2__switches svg{width:15px;color:var(--muted)}.map-editor-v2__inventory-summary{border-radius:var(--radius-sm);background:var(--action-pale);color:var(--action-hover);padding:10px}.map-editor-v2__inventory-summary.has-active-rental{background:var(--warning-pale);color:color-mix(in oklch, var(--warning) 70%, var(--ink))}.map-editor-v2__inventory-summary>div{align-items:center;gap:8px;display:flex}.map-editor-v2__inventory-summary svg{width:17px}.map-editor-v2__inventory-summary span{flex-direction:column;display:flex}.map-editor-v2__inventory-summary strong{font-size:.69rem}.map-editor-v2__inventory-summary small{margin-top:2px;font-size:.58rem}.map-editor-v2__inventory-summary p{margin:8px 0 0;font-size:.61rem;line-height:1.45}.map-editor-v2__visual-only-note{border-radius:var(--radius-sm);background:var(--warning-pale);color:color-mix(in oklch, var(--warning) 70%, var(--ink));align-items:flex-start;gap:8px;padding:10px;display:flex}.map-editor-v2__visual-only-note>svg{flex:0 0 17px;width:17px}.map-editor-v2__visual-only-note>span{flex-direction:column;display:flex}.map-editor-v2__visual-only-note strong{font-size:.68rem}.map-editor-v2__visual-only-note small{margin-top:3px;font-size:.59rem;line-height:1.45}.map-editor-v2__metadata{padding:4px 0}.map-editor-v2__stack-actions{gap:7px;display:grid}.map-editor-v2__stack-actions .button{min-height:44px;padding-inline:10px;font-size:.69rem}.map-editor-v2__stack-actions>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;display:grid}.map-editor-v2__stack-actions>div .button{min-width:0;font-size:.62rem}.map-editor-v2__empty-selection{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:320px;padding:30px 22px;display:flex}.map-editor-v2__empty-selection>svg{width:30px;height:30px;color:var(--muted);margin-bottom:12px}.map-editor-v2__empty-selection h2{margin-bottom:6px;font-size:.9rem}.map-editor-v2__empty-selection p{max-width:30ch;color:var(--muted);margin-bottom:14px;font-size:.7rem;line-height:1.5}.map-editor-v2__empty-selection .button{min-height:44px;font-size:.69rem}.map-editor-v2__issues{border:1px solid var(--line-strong);border-radius:var(--radius-sm);background:var(--bg);width:100%;max-width:1480px;margin:10px auto 0;overflow:hidden}.map-editor-v2__issues-head{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:68px;padding:10px 12px;display:grid}.map-editor-v2__issues-head>span{background:var(--success-pale);width:36px;height:36px;color:var(--success);border-radius:50%;place-items:center;display:grid}.map-editor-v2__issues.has-errors .map-editor-v2__issues-head>span{background:var(--danger-pale);color:var(--danger)}.map-editor-v2__issues.has-warnings .map-editor-v2__issues-head>span{background:var(--warning-pale);color:color-mix(in oklch, var(--warning) 72%, var(--ink))}.map-editor-v2__issues-head svg{width:18px}.map-editor-v2__issues-head>div{flex-direction:column;min-width:0;display:flex}.map-editor-v2__issues-head strong{font-size:.76rem}.map-editor-v2__issues-head small{color:var(--muted);margin-top:2px;font-size:.62rem}.map-editor-v2__issues-head .button{min-height:42px;padding-inline:10px;font-size:.68rem}.map-editor-v2__issue-list{border-top:1px solid var(--line);max-height:260px;overflow-y:auto}.map-editor-v2__issue-list>button{border:0;border-bottom:1px solid var(--line);text-align:left;background:0 0;grid-template-columns:28px minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:54px;padding:7px 12px;display:grid}.map-editor-v2__issue-list>button:last-child{border-bottom:0}.map-editor-v2__issue-list>button:hover{background:var(--surface)}.map-editor-v2__issue-list>button>span:first-child{border-radius:6px;place-items:center;width:28px;height:28px;display:grid}.map-editor-v2__issue-list .is-error{background:var(--danger-pale);color:var(--danger)}.map-editor-v2__issue-list .is-warning{background:var(--warning-pale);color:color-mix(in oklch, var(--warning) 72%, var(--ink))}.map-editor-v2__issue-list svg{width:15px}.map-editor-v2__issue-list>button>span:nth-child(2){flex-direction:column;min-width:0;display:flex}.map-editor-v2__issue-list strong{font-size:.69rem}.map-editor-v2__issue-list small{color:var(--muted);margin-top:2px;font-size:.57rem}.map-editor-v2__mobile-backdrop{z-index:var(--backdrop);background:#03030361;background:lab(.903296% 0 0/.38);border:0;position:fixed;inset:0}.map-editor-v2__preview-tools{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);align-items:center;gap:3px;width:100%;max-width:1480px;min-height:48px;margin:0 auto 8px;padding:4px;display:flex;overflow-x:auto}.map-editor-v2__preview-tools>span{color:var(--muted);white-space:nowrap;padding:0 8px;font-size:.67rem;font-weight:700}.map-editor-v2__preview-tools button{min-height:40px;color:var(--muted);white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:.68rem;font-weight:720;display:inline-flex}.map-editor-v2__preview-tools button.is-active{background:var(--bg);color:var(--action)}.map-editor-v2__preview-tools svg{width:15px}.map-editor-v2.is-preview{background:var(--surface-strong);margin-inline:auto}.map-editor-v2.is-preview.is-mobile{max-width:390px}.map-editor-v2.is-preview.is-tablet{max-width:768px}.map-editor-v2.is-preview .map-editor-v2__stage,.map-editor-v2.is-preview .map-editor-v2__canvas-viewport{min-height:640px}.map-editor-v2__dialog-backdrop{align-items:center;padding:12px}.map-editor-v2__dialog{border-radius:var(--radius-md);background:var(--bg);width:min(100%,500px);max-height:min(90dvh,760px);padding:18px;overflow-y:auto;box-shadow:0 4px 8px #03030338;box-shadow:0 4px 8px lab(.903296% 0 0/.22)}.map-editor-v2__dialog-head{grid-template-columns:42px minmax(0,1fr) 42px;align-items:center;gap:9px;margin-bottom:12px;display:grid}.map-editor-v2__dialog-head>span{border-radius:var(--radius-sm);background:var(--action-pale);width:42px;height:42px;color:var(--action);place-items:center;display:grid}.map-editor-v2__dialog.is-danger .map-editor-v2__dialog-head>span{background:var(--danger-pale);color:var(--danger)}.map-editor-v2__dialog-head svg{width:19px}.map-editor-v2__dialog-head h2{margin:0;font-size:1.06rem}.map-editor-v2__dialog-head .icon-button{width:42px;height:42px}.map-editor-v2__dialog>p{max-width:62ch;color:var(--muted);margin-bottom:14px;font-size:.75rem;line-height:1.5}.map-editor-v2__dialog>label,.map-editor-v2__dialog-fields label{margin-top:10px;display:block}.map-editor-v2__dialog-fields{grid-template-columns:minmax(0,1.3fr) minmax(110px,.7fr);gap:8px;display:grid}.map-editor-v2__dialog-note{border-radius:var(--radius-sm);background:var(--surface);padding:9px 10px;color:var(--ink-soft)!important}.map-editor-v2__dialog-actions{justify-content:flex-end;gap:7px;margin-top:18px;display:flex}.map-editor-v2__dialog-actions .button{min-height:44px;padding-inline:13px;font-size:.72rem}@media (max-width:460px){.map-editor-v2-screen{padding-inline:8px}.map-editor-v2__toolbar{padding-inline:3px}.map-editor-v2__toolbar-group:first-child .icon-button:nth-of-type(4),.map-editor-v2__toolbar-group:first-child .icon-button:nth-of-type(5),.map-editor-v2__save-state{display:none}.map-editor-v2__issues-head{grid-template-columns:34px minmax(0,1fr)}.map-editor-v2__issues-head .button{grid-column:1/-1;width:100%}.map-editor-v2__dialog-fields{grid-template-columns:1fr}.map-editor-v2__dialog-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.map-editor-v2__dialog-actions .button{min-width:0;padding-inline:8px}}@media (min-width:720px){.map-editor-v2-screen{padding:20px 20px 34px}.map-editor-v2__page-actions{width:auto}.map-editor-v2__page-actions .button{flex:none;padding-inline:16px}.map-editor-v2,.map-editor-v2__stage{min-height:650px}.map-editor-v2__canvas-viewport{min-height:595px}.map-editor-v2__save-state span{display:inline}.map-editor-v2__side{border:1px solid var(--line-strong);border-radius:var(--radius-lg);width:min(420px,100vw - 36px);max-height:min(78dvh,760px);bottom:18px;left:auto;right:18px;box-shadow:-4px 0 8px #03030326;box-shadow:-4px 0 8px lab(.903296% 0 0/.15)}.map-editor-v2__library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1080px){.map-editor-v2-screen{padding:24px 24px 36px}.map-editor-v2{grid-template-columns:230px minmax(0,1fr) 270px;height:calc(100dvh - 246px);min-height:680px}.map-editor-v2__stage,.map-editor-v2__canvas-viewport{min-height:0}.map-editor-v2__side,.map-editor-v2__side.is-open{z-index:auto;width:auto;max-height:none;box-shadow:none;border:0;border-radius:0;display:flex;position:static}.map-editor-v2__side--library{border-right:1px solid var(--line)!important}.map-editor-v2__side--properties{border-left:1px solid var(--line)!important}.map-editor-v2__side-head .icon-button{display:none}.map-editor-v2__mobile-tool,.map-editor-v2__mobile-backdrop{display:none!important}.map-editor-v2__library-grid{grid-template-columns:1fr}.map-editor-v2__library-grid>button{min-height:58px}.map-editor-v2__toolbar{padding-inline:8px}.map-editor-v2.is-preview{grid-template-columns:minmax(0,1fr);height:calc(100dvh - 294px);min-height:640px}}@media (min-width:1380px){.map-editor-v2{grid-template-columns:260px minmax(0,1fr) 300px}.map-editor-v2__library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:1079px),(pointer:coarse){.map-editor-v2 button,.map-editor-v2 .button,.map-editor-v2 input,.map-editor-v2 select{min-height:44px}.map-editor-v2 .icon-button,.map-editor-v2__toolbar button,.map-editor-v2__preview-tools button,.map-editor-v2__zoom button{min-width:44px}}@media (prefers-reduced-motion:reduce){.map-editor-v2 *,.map-editor-v2__version-main>svg{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
