*{box-sizing:border-box}html,body{width:100%;height:100%;margin:0;overflow:hidden}body{font-family:Inter,Arial,Helvetica,sans-serif;background:#15171a;color:#e8eaed}button,input,select{font:inherit}#app{display:flex;width:100vw;height:100vh}#sidebar{position:relative;display:flex;flex-direction:column;width:330px;min-width:330px;height:100vh;background:#202124;border-right:1px solid #35363a;z-index:20}.sidebar-header{display:flex;align-items:center;gap:12px;min-height:72px;padding:14px 18px;border-bottom:1px solid #35363a}.app-logo{display:flex;align-items:center;justify-content:center;width:42px;height:42px;flex-shrink:0;border-radius:10px;background:#4285f4;color:#fff;font-size:21px;font-weight:700}.app-title{display:flex;flex-direction:column;gap:3px;min-width:0}.app-title strong{overflow:hidden;color:#f1f3f4;font-size:15px;text-overflow:ellipsis;white-space:nowrap}.app-title span{color:#9aa0a6;font-size:11px}.sidebar-section{padding:16px 18px;border-bottom:1px solid #35363a}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.section-title{margin-bottom:12px;color:#9aa0a6;font-size:11px;font-weight:700;letter-spacing:.08em}.section-header .section-title{margin-bottom:0}#layer-count{display:flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 7px;border-radius:10px;background:#35363a;color:#bdc1c6;font-size:11px}button{border:0;outline:0}.button-group{display:flex;flex-direction:column;gap:8px}.primary-button,.secondary-button{width:100%;padding:10px 12px;border-radius:6px;cursor:pointer;transition:background .15s ease,opacity .15s ease}.primary-button{background:#4285f4;color:#fff;font-weight:600}.primary-button:hover{background:#5a95f5}.secondary-button{background:#35363a;color:#e8eaed}.secondary-button:hover:not(:disabled){background:#45474c}button:disabled{cursor:default;opacity:.4}.layers-section{display:flex;flex:1;flex-direction:column;min-height:0}.layers-header-actions{display:flex;align-items:center;gap:8px}.small-icon-button{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:1px solid #4a4d52;border-radius:6px;background:#292a2d;color:#e8eaed;font-size:18px;line-height:1;cursor:pointer;transition:background .15s ease,border-color .15s ease}.small-icon-button:hover{background:#35363a;border-color:#5f6368}.active-layer-info{display:flex;flex-direction:column;gap:4px;margin-bottom:12px;padding:10px 12px;border:1px solid #3c4043;border-radius:7px;background:#292a2d}.active-layer-info span{color:#9aa0a6;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.active-layer-info strong{overflow:hidden;color:#8ab4f8;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}#layers-list{display:flex;flex-direction:column;flex-shrink:0;gap:5px;width:100%;min-height:40px;max-height:180px;padding-right:4px;overflow-x:hidden;overflow-y:auto}.empty-message{padding:18px 10px;color:#80868b;font-size:12px;line-height:1.5;text-align:center}.layer-list-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;flex-shrink:0;width:100%;min-height:38px;padding:4px 8px 4px 5px;border:1px solid transparent;border-radius:7px;background:#292a2d;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease,border-color .15s ease,opacity .15s ease}.layer-list-item:hover{background:#35363a}.layer-list-item.active{border-color:#4285f4;background:#2b3038}.layer-list-item.hidden-layer{opacity:.55}.layer-list-visibility{display:flex;align-items:center;justify-content:center;width:26px;height:26px;padding:0;border:0;border-radius:5px;background:transparent;color:#8ab4f8;font-size:12px;cursor:pointer;transition:background .15s ease,color .15s ease}.layer-list-visibility:hover{background:#45474c;color:#fff}.hidden-layer .layer-list-visibility{color:#5f6368}.layer-list-name{min-width:0;padding:0 7px;overflow:hidden;color:#e8eaed;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.layer-list-item.active .layer-list-name{color:#8ab4f8}.layer-list-count{display:flex;align-items:center;justify-content:center;min-width:25px;height:20px;padding:0 6px;border-radius:10px;background:#3c4043;color:#bdc1c6;font-size:10px}.layer-objects-panel{display:flex;flex:1;flex-direction:column;width:100%;min-height:0;margin-top:14px;padding-top:12px;overflow:hidden;border-top:1px solid #35363a}.layer-objects-panel-header{flex-shrink:0;margin-bottom:8px;color:#9aa0a6;font-size:10px;font-weight:700;letter-spacing:.07em}#layer-objects-list{display:flex;flex:1;flex-direction:column;gap:3px;width:100%;min-height:0;padding-right:4px;padding-bottom:4px;overflow-x:hidden;overflow-y:auto}.layer-object-list-item{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;flex-shrink:0;width:100%;min-height:32px;padding:4px 8px;border:0;border-radius:5px;background:transparent;color:#bdc1c6;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.layer-object-list-item:hover{background:#35363a;color:#fff}.layer-object-list-icon{display:flex;align-items:center;justify-content:center;width:24px;color:#8ab4f8;font-size:13px}.layer-object-list-name{min-width:0;overflow:hidden;font-size:12px;text-overflow:ellipsis;white-space:nowrap}#layers-list,#layer-objects-list{scrollbar-width:thin;scrollbar-color:#5f6368 transparent}#layers-list::-webkit-scrollbar,#layer-objects-list::-webkit-scrollbar{width:6px}#layers-list::-webkit-scrollbar-track,#layer-objects-list::-webkit-scrollbar-track{background:transparent}#layers-list::-webkit-scrollbar-thumb,#layer-objects-list::-webkit-scrollbar-thumb{border-radius:10px;background:#5f6368}#layers-list::-webkit-scrollbar-thumb:hover,#layer-objects-list::-webkit-scrollbar-thumb:hover{background:#80868b}.statistics-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.statistic{display:flex;flex-direction:column;gap:4px;padding:10px;border-radius:6px;background:#292a2d}.statistic-label{color:#9aa0a6;font-size:11px}.statistic strong{color:#f1f3f4;font-size:18px}#main-area{position:relative;display:flex;flex:1;flex-direction:column;min-width:0;height:100vh}#toolbar{position:relative;display:flex;align-items:center;min-height:56px;height:56px;padding:0 14px;background:#202124;border-bottom:1px solid #35363a;z-index:15}.toolbar-group{display:flex;align-items:center;gap:5px}.toolbar-divider{width:1px;height:28px;margin:0 10px;background:#3c4043}.toolbar-spacer{flex:1}.tool-button{min-width:70px;padding:8px 11px;border-radius:5px;background:transparent;color:#bdc1c6;cursor:pointer;transition:background .15s ease,color .15s ease}.tool-button:hover:not(:disabled){background:#35363a;color:#fff}.tool-button.active{background:#394457;color:#8ab4f8}.project-status{max-width:300px;overflow:hidden;color:#9aa0a6;font-size:12px;text-overflow:ellipsis;white-space:nowrap}#map{position:relative;flex:1;min-width:0;min-height:0;background:#17191c}#snapping-panel{position:absolute;top:76px;right:20px;width:260px;padding:15px;border:1px solid #3c4043;border-radius:9px;background:#202124f5;box-shadow:0 5px 20px #00000059;z-index:10}.snapping-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.snapping-header strong{color:#f1f3f4;font-size:14px}.snapping-option{margin-bottom:14px}.snapping-option label{display:block;margin-bottom:7px;color:#bdc1c6;font-size:12px}#snap-radius{width:100%;cursor:pointer}#snap-radius:disabled{cursor:default;opacity:.4}#snap-mode{width:100%;padding:8px 9px;border:1px solid #4a4d52;border-radius:5px;outline:none;background:#292a2d;color:#e8eaed}#snap-mode:focus{border-color:#4285f4}.snap-status{display:flex;align-items:center;gap:7px;padding-top:10px;border-top:1px solid #3c4043;color:#9aa0a6;font-size:11px}.status-indicator{width:7px;height:7px;border-radius:50%;background:#34a853}.switch{position:relative;display:inline-block;width:38px;height:22px}.switch input{width:0;height:0;opacity:0}.switch-slider{position:absolute;inset:0;border-radius:22px;background:#5f6368;cursor:pointer;transition:background .2s ease}.switch-slider:before{position:absolute;bottom:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;content:"";transition:transform .2s ease}.switch input:checked+.switch-slider{background:#4285f4}.switch input:checked+.switch-slider:before{transform:translate(16px)}.properties-panel{position:absolute;top:76px;right:20px;bottom:20px;z-index:20;display:flex;flex-direction:column;width:310px;min-width:310px;overflow:hidden;border:1px solid #3c4043;border-radius:10px;background:#202124;box-shadow:0 8px 30px #0006}.properties-panel.hidden{display:none}.properties-header{display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-height:62px;padding:12px 14px;border-bottom:1px solid #3c4043;background:#292a2d}.properties-header>div{display:flex;flex-direction:column;gap:3px}.properties-header-label{color:#8ab4f8;font-size:9px;font-weight:700;letter-spacing:.1em}.properties-header strong{color:#e8eaed;font-size:15px;font-weight:600}.properties-close-button{display:flex;align-items:center;justify-content:center;width:30px;height:30px;padding:0;border-radius:6px;background:transparent;color:#9aa0a6;font-size:22px;line-height:1;cursor:pointer;transition:background .15s ease,color .15s ease}.properties-close-button:hover{background:#3c4043;color:#fff}.properties-content{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto}.properties-section{display:flex;flex-direction:column;gap:14px;padding:16px 14px;border-bottom:1px solid #35363a}.properties-section-title{color:#80868b;font-size:10px;font-weight:700;letter-spacing:.08em}.property-field{display:flex;flex-direction:column;gap:7px}.property-field>label,.property-label-row label{color:#bdc1c6;font-size:11px;font-weight:500}.property-label-row{display:flex;align-items:center;justify-content:space-between}.property-label-row>span{color:#8ab4f8;font-size:11px;font-weight:600}.property-input,.property-select{width:100%;height:34px;padding:0 9px;border:1px solid #4a4d52;border-radius:6px;outline:none;background:#292a2d;color:#e8eaed;font-size:12px;transition:border-color .15s ease,background .15s ease}.property-input:hover,.property-select:hover{border-color:#5f6368}.property-input:focus,.property-select:focus{border-color:#4285f4;background:#303134}.property-input[readonly]{color:#9aa0a6;cursor:default}.property-color-row{display:flex;align-items:center;gap:9px}.property-color-input{width:42px;height:32px;padding:2px;border:1px solid #4a4d52;border-radius:6px;background:#292a2d;cursor:pointer}.property-color-input::-webkit-color-swatch-wrapper{padding:2px}.property-color-input::-webkit-color-swatch{border:0;border-radius:3px}.property-color-value{display:flex;flex:1;align-items:center;height:32px;padding:0 9px;border:1px solid #3c4043;border-radius:6px;background:#292a2d;color:#bdc1c6;font-family:Consolas,Monaco,monospace;font-size:11px}.property-range{width:100%;cursor:pointer;accent-color:#4285f4}.property-information-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.property-information-item{display:flex;flex-direction:column;gap:5px;min-width:0;padding:9px;border:1px solid #3c4043;border-radius:6px;background:#292a2d}.property-information-item span{color:#80868b;font-size:9px;font-weight:600;text-transform:uppercase}.property-information-item strong{overflow:hidden;color:#e8eaed;font-size:11px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.properties-danger-section{border-bottom:0}.property-delete-button{width:100%;min-height:36px;border:1px solid #5f3539;border-radius:6px;background:#3b2528;color:#f28b82;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease,color .15s ease}.property-delete-button:hover{border-color:#8c4a50;background:#4a292d;color:#ffaaa2}#loading-overlay{position:absolute;inset:56px 0 0;display:flex;align-items:center;justify-content:center;background:#0f1012c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100}#loading-overlay.hidden{display:none}.loading-window{display:flex;align-items:center;flex-direction:column;gap:9px;min-width:240px;padding:24px;border:1px solid #3c4043;border-radius:10px;background:#202124;box-shadow:0 8px 30px #0006}.loading-window strong{margin-top:4px;color:#f1f3f4}.loading-window span{color:#9aa0a6;font-size:12px}.loading-spinner{width:30px;height:30px;border:3px solid #3c4043;border-top-color:#4285f4;border-radius:50%;animation:loading-spin .8s linear infinite}@keyframes loading-spin{to{transform:rotate(360deg)}}#notifications{position:absolute;right:20px;bottom:20px;display:flex;flex-direction:column;gap:8px;width:300px;pointer-events:none;z-index:200}.notification{padding:11px 13px;border:1px solid #3c4043;border-radius:7px;background:#292a2d;box-shadow:0 4px 16px #00000059;color:#e8eaed;font-size:12px;opacity:0;transform:translate(20px);transition:opacity .3s ease,transform .3s ease}.notification.visible{opacity:1;transform:translate(0)}.notification-success{border-left:4px solid #34a853}.notification-error{border-left:4px solid #ea4335}.notification-info{border-left:4px solid #4285f4}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{border-radius:5px;background:#4a4d52}::-webkit-scrollbar-thumb:hover{background:#5f6368}#layers-list::-webkit-scrollbar,.properties-content::-webkit-scrollbar{width:6px}@media(max-width:1100px){.properties-panel{width:280px;min-width:280px}}@media(max-width:900px){#sidebar{width:280px;min-width:280px}#snapping-panel{width:220px}.properties-panel{right:12px;width:270px;min-width:270px}.tool-button{min-width:auto}}#basemap-switcher{position:absolute;top:76px;left:20px;z-index:25;display:flex;align-items:center;padding:4px;gap:3px;border:1px solid #3c4043;border-radius:9px;background:#202124f5;box-shadow:0 5px 20px #00000059;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);-webkit-user-select:none;user-select:none}.basemap-button{position:relative;min-width:82px;height:34px;padding:0 14px;border:0;border-radius:6px;outline:none;background:transparent;color:#9aa0a6;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s ease,color .15s ease,box-shadow .15s ease}.basemap-button:hover{background:#35363a;color:#e8eaed}.basemap-button.active{background:#4285f4;color:#fff;box-shadow:0 2px 8px #4285f44d}.basemap-button.active:hover{background:#5a95f5}@media(max-width:900px){#basemap-switcher{top:68px;left:12px}.basemap-button{min-width:70px;padding:0 10px}}#coordinate-search{position:absolute;top:72px;left:16px;z-index:20;display:flex;gap:6px;padding:6px;border:1px solid #3c4043;border-radius:8px;background:#202124;box-shadow:0 4px 14px #0000004d}#coordinate-search-input{width:190px;padding:8px 10px;border:1px solid #3c4043;border-radius:5px;outline:none;background:#292a2d;color:#e8eaed;font-size:12px}#coordinate-search-input:focus{border-color:#4285f4}#coordinate-search-input::placeholder{color:#80868b}#coordinate-search-button{padding:8px 12px;border:0;border-radius:5px;background:#4285f4;color:#fff;font-size:12px;font-weight:600;cursor:pointer}#coordinate-search-button:hover{background:#5a95f5}.coordinate-search-marker{position:relative;display:flex;align-items:center;justify-content:center;width:34px;height:34px;cursor:pointer}.coordinate-search-marker:before{content:"";position:absolute;width:28px;height:28px;border-radius:50%;background:#ea433540;animation:coordinate-marker-pulse 1.8s infinite}.coordinate-search-marker-dot{position:relative;width:14px;height:14px;border:3px solid #ffffff;border-radius:50%;background:#ea4335;box-shadow:0 2px 8px #0000008c}.coordinate-search-popup{display:flex;flex-direction:column;gap:4px;min-width:170px;color:#202124;font-size:12px}.coordinate-search-popup strong{font-size:13px}.coordinate-search-popup span{font-family:monospace;white-space:nowrap}@keyframes coordinate-marker-pulse{0%{transform:scale(.6);opacity:1}to{transform:scale(1.6);opacity:0}}.vertex-context-menu{position:fixed;z-index:1000;display:flex;flex-direction:column;gap:4px;min-width:190px;padding:6px;border:1px solid #3c4043;border-radius:8px;background:#202124;box-shadow:0 8px 24px #00000073}.vertex-context-menu[hidden]{display:none!important}.vertex-context-menu-title{padding:7px 9px 5px;color:#9aa0a6;font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.vertex-context-menu-delete{width:100%;padding:9px 10px;border:0;border-radius:6px;background:transparent;color:#f28b82;font-size:12px;font-weight:600;text-align:left;cursor:pointer;transition:background .15s ease,color .15s ease}.vertex-context-menu-delete:hover{background:#f28b821f;color:#ffb4ab}.vertex-context-menu-delete:focus-visible{outline:2px solid #8ab4f8;outline-offset:1px}.property-textarea{min-height:82px;height:auto;padding:9px;resize:vertical;line-height:1.45}.property-file-input{width:100%;color:#bdc1c6;font-size:11px}.property-file-input::file-selector-button{margin-right:9px;padding:7px 10px;border:1px solid #4a4d52;border-radius:6px;background:#303134;color:#e8eaed;font-size:11px;font-weight:600;cursor:pointer}.property-file-input::file-selector-button:hover{background:#3c4043}.property-help-text{margin-top:6px;color:#9aa0a6;font-size:10px;line-height:1.4}.point-custom-icon-info{display:flex;align-items:center;gap:10px;margin-top:8px;padding:9px;border:1px solid #3c4043;border-radius:7px;background:#292a2d}.point-custom-icon-preview{width:46px;height:46px;flex:0 0 46px;object-fit:contain;border-radius:6px;background:#ffffff0f}.point-custom-icon-actions{display:flex;flex:1;min-width:0;flex-direction:column;gap:7px;color:#bdc1c6;font-size:11px}.property-secondary-button{align-self:flex-start;padding:6px 9px;border:1px solid #4a4d52;border-radius:6px;background:#303134;color:#e8eaed;font-size:11px;cursor:pointer}.property-secondary-button:hover{border-color:#5f6368;background:#3c4043}.mobile-only{display:none!important}.properties-header-actions,.snapping-header-actions{display:flex;align-items:center;gap:8px}@media(max-width:768px){:root{--mobile-toolbar-height: 62px;--mobile-edge: 8px;--mobile-safe-bottom: env(safe-area-inset-bottom, 0px)}html,body,#app,#main-area{width:100%;height:100dvh;min-height:100dvh}body{overscroll-behavior:none}#app{position:relative;display:block;overflow:hidden}#main-area{position:relative;width:100vw;min-width:0;overflow:hidden}.mobile-only{display:flex!important}.mobile-sheet-backdrop[hidden],[hidden].mobile-only{display:none!important}#map{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0}.maplibregl-canvas-container,.maplibregl-canvas{touch-action:none}.maplibregl-ctrl-bottom-left,.maplibregl-ctrl-bottom-right{bottom:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom) + 4px)}#toolbar{position:absolute;inset:auto 0 0;z-index:80;display:flex;align-items:center;justify-content:flex-start;width:100%;min-height:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom));height:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom));padding:7px 8px calc(7px + var(--mobile-safe-bottom));overflow-x:auto;overflow-y:hidden;border-top:1px solid #3c4043;border-bottom:0;background:#202124f7;box-shadow:0 -6px 24px #00000057;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);-webkit-overflow-scrolling:touch;scrollbar-width:none}#toolbar::-webkit-scrollbar{display:none}.toolbar-group{display:flex;flex:0 0 auto;gap:6px}.toolbar-divider{flex:0 0 1px;height:34px;margin:0 6px}.toolbar-spacer,.project-status{display:none}.tool-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:68px;min-height:44px;padding:8px 10px;border:1px solid transparent;border-radius:9px;background:#292a2d;color:#bdc1c6;font-size:12px;font-weight:600;white-space:nowrap;touch-action:manipulation}.tool-button.active{border-color:#8ab4f859;background:#394457;color:#a8c7fa}#mobile-map-controls{position:absolute;top:max(10px,env(safe-area-inset-top,0px));right:10px;z-index:50;flex-direction:column;gap:8px;pointer-events:none}.mobile-map-control-button{display:flex;align-items:center;justify-content:center;width:72px;height:44px;min-width:72px;min-height:44px;padding:0;border:1px solid #4a4d52;border-radius:11px;background:#202124f5;color:#e8eaed;box-shadow:0 4px 18px #0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);font-size:11px;font-weight:700;line-height:1;pointer-events:auto;touch-action:manipulation}.mobile-map-control-button:active{background:#394457;color:#a8c7fa;transform:scale(.97)}#mobile-menu-button{font-size:20px;font-weight:500}#basemap-switcher{top:max(10px,env(safe-area-inset-top,0px));left:10px;z-index:40;padding:3px}.basemap-button{min-width:64px;height:38px;padding:0 9px;font-size:11px;touch-action:manipulation}.mobile-sheet-backdrop{position:absolute;inset:0 0 calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom)) 0;z-index:55;width:100%;height:auto;padding:0;border:0;background:#00000061;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px)}.mobile-sheet-header{position:sticky;top:0;z-index:2;align-items:center;justify-content:space-between;min-height:58px;padding:9px 12px;border-bottom:1px solid #3c4043;background:#292a2dfa;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-sheet-header>div{display:flex;min-width:0;flex-direction:column;gap:2px}.mobile-sheet-header strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.mobile-sheet-kicker{color:#8ab4f8;font-size:9px;font-weight:700;letter-spacing:.12em}.mobile-sheet-close{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;padding:0;border-radius:10px;background:transparent;color:#bdc1c6;font-size:24px;line-height:1;touch-action:manipulation}.mobile-sheet-close:active{background:#35363a;color:#fff}#sidebar{position:fixed;top:auto;right:var(--mobile-edge);bottom:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom) + var(--mobile-edge));left:var(--mobile-edge);z-index:70;display:flex;flex-direction:column;width:auto;min-width:0;max-width:none;height:min(78dvh,720px);max-height:calc(100dvh - var(--mobile-toolbar-height) - var(--mobile-safe-bottom) - 24px);padding:0 0 var(--mobile-safe-bottom);overflow-x:hidden;overflow-y:auto;border:1px solid #3c4043;border-radius:16px;background:#202124;box-shadow:0 -10px 38px #00000075;opacity:0;transform:translateY(calc(100% + 24px));pointer-events:none;transition:transform .22s ease,opacity .18s ease;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}#sidebar.mobile-open{opacity:1;transform:translateY(0);pointer-events:auto}.sidebar-section{flex:0 0 auto;padding:14px}.layers-section{display:flex;flex:0 0 auto;min-height:auto}#layers-list{max-height:24dvh}.layer-objects-panel{flex:0 0 auto;min-height:auto;overflow:visible}#layer-objects-list{flex:0 0 auto;max-height:28dvh}.layer-list-item{min-height:46px}.layer-list-visibility,.small-icon-button{min-width:44px;width:44px;min-height:44px;height:44px;touch-action:manipulation}.layer-object-list-item{min-height:44px}.primary-button,.secondary-button{min-height:46px;padding:11px 12px;touch-action:manipulation}.sidebar-coordinate-search{flex:0 0 auto}.coordinate-search-row{gap:8px}#coordinate-search-input{min-height:46px;font-size:16px}#coordinate-search-button{min-width:74px;min-height:46px;touch-action:manipulation}.properties-panel{position:absolute;top:auto;right:var(--mobile-edge);bottom:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom) + var(--mobile-edge));left:var(--mobile-edge);z-index:48;width:auto;min-width:0;max-width:none;height:auto;max-height:min(56dvh,590px);border-radius:16px;box-shadow:0 -8px 34px #00000070;transition:max-height .18s ease,transform .18s ease,opacity .18s ease}.properties-panel.mobile-suppressed{display:none!important}.properties-panel.mobile-collapsed{max-height:62px}.properties-panel.mobile-collapsed .properties-content{display:none}.properties-header{min-height:62px;padding:8px 10px 8px 14px;touch-action:manipulation}.properties-content{overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.properties-header-actions{display:flex;align-items:center;gap:4px}.properties-close-button{width:44px;height:44px;min-width:44px;min-height:44px;touch-action:manipulation}.property-input,.property-select,.property-textarea,.property-file-input{font-size:16px}.property-input,.property-select{min-height:44px}.property-file-input::file-selector-button,.property-secondary-button,.property-delete-button{min-height:44px;touch-action:manipulation}.property-range{min-height:34px}#snapping-panel{position:absolute;top:auto;right:var(--mobile-edge);bottom:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom) + var(--mobile-edge));left:var(--mobile-edge);z-index:70;width:auto;max-width:none;padding:14px;border-radius:16px;opacity:0;transform:translateY(calc(100% + 24px));pointer-events:none;transition:transform .22s ease,opacity .18s ease}#snapping-panel.mobile-open{opacity:1;transform:translateY(0);pointer-events:auto}.snapping-header{min-height:44px;margin-bottom:12px}.snapping-header-actions{display:flex;align-items:center;gap:8px}#snap-mode{min-height:44px;font-size:16px}#snap-radius{min-height:32px}#notifications{right:10px;bottom:calc(var(--mobile-toolbar-height) + var(--mobile-safe-bottom) + 10px);left:10px;width:auto}.notification{width:100%;max-width:none}.vertex-context-menu{min-width:210px;max-width:calc(100vw - 20px);border-radius:12px}.vertex-context-menu-delete{min-height:48px;font-size:14px;touch-action:manipulation}}@media(max-width:360px){.basemap-button{min-width:58px;padding:0 7px;font-size:10px}.tool-button{min-width:64px}#mobile-map-controls{right:8px}}@media(pointer:coarse){button,.layer-list-item,.layer-object-list-item{-webkit-tap-highlight-color:transparent}}.property-secondary-button{width:100%;min-height:38px;margin-top:10px;padding:8px 12px;border:1px solid #4b4f55;border-radius:8px;background:#303134;color:#e8eaed;font:inherit;font-weight:600;cursor:pointer}.property-secondary-button:hover{background:#3c4043}.property-secondary-button.is-active{border-color:#8ab4f8;background:#8ab4f824;color:#d2e3fc}.mobile-drawing-actions{display:none}@media(max-width:768px),(pointer:coarse){.mobile-drawing-actions{position:fixed;left:50%;bottom:calc(74px + env(safe-area-inset-bottom,0px));z-index:120;display:flex;align-items:center;gap:8px;max-width:calc(100vw - 20px);padding:7px;border:1px solid rgba(255,255,255,.14);border-radius:14px;background:#202124f5;box-shadow:0 8px 28px #00000061;opacity:0;transform:translate(-50%,14px);pointer-events:none;transition:opacity .16s ease,transform .16s ease}.mobile-drawing-actions.is-visible{opacity:1;transform:translate(-50%);pointer-events:auto}.mobile-drawing-action{min-width:46px;min-height:46px;padding:0 13px;border:0;border-radius:10px;background:#3c4043;color:#f1f3f4;font:inherit;font-size:14px;font-weight:700;white-space:nowrap;touch-action:manipulation}.mobile-drawing-action.finish{min-width:112px;background:#1a73e8;color:#fff}.mobile-drawing-action.danger{background:#4a2b2b;color:#ffb4ab}.mobile-drawing-action:disabled{opacity:.42}.property-secondary-button{min-height:46px;font-size:15px;touch-action:manipulation}}.layer-list-rename{flex:0 0 auto;width:25px;height:25px;padding:0;border:0;border-radius:6px;background:transparent;color:#94a3b8;cursor:pointer;opacity:.72}.layer-list-item:hover .layer-list-rename,.layer-list-item.active .layer-list-rename{opacity:1}.layer-list-rename:hover{background:#94a3b81f;color:#fff}.desktop-snapping-toggle{min-width:56px}.snapping-close-button{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;min-width:30px;padding:0;border:0;border-radius:8px;background:#ffffff0f;color:#bdc1c6;cursor:pointer;font-size:20px;line-height:1}.snapping-close-button:hover{background:#ffffff1f;color:#fff}.snap-source-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.snap-source-item{display:flex!important;align-items:flex-start;gap:7px;margin:0!important;padding:8px;border:1px solid #3c4043;border-radius:7px;background:#292a2db8;cursor:pointer}.snap-source-item input{margin:2px 0 0;flex:0 0 auto}.snap-source-item span{display:grid;gap:2px;min-width:0}.snap-source-item strong{color:#e8eaed;font-size:10.5px;line-height:1.2}.snap-source-item small{color:#9aa0a6;font-size:8.5px;line-height:1.25}.snap-reference-status{margin-top:8px;padding:7px 8px;border:1px solid rgba(66,133,244,.24);border-radius:7px;background:#4285f414;color:#aecbfa;font-size:9.5px;line-height:1.35}.snap-reference-note{margin:7px 0 0;color:#9aa0a6;font-size:8.5px;line-height:1.35}@media(min-width:769px){#snapping-panel{transition:opacity .15s ease,transform .15s ease}#snapping-panel.snap-panel-closed{opacity:0;transform:translateY(-7px) scale(.985);pointer-events:none}}@media(max-width:768px){.desktop-snapping-toggle{display:none!important}.snap-source-grid{grid-template-columns:1fr 1fr}.snapping-close-button{display:flex;width:44px;height:44px;min-width:44px}}@media(max-width:390px){.snap-source-grid{grid-template-columns:1fr}}.layer-list-stack-value{display:inline-grid;grid-template-columns:14px minmax(0,1fr);align-items:center;gap:3px;width:58px;min-width:58px;height:28px;padding:2px 4px;border:1px solid rgba(138,180,248,.24);border-radius:7px;background:#111827b8;cursor:text}.layer-list-stack-value>span{color:#8ab4f8;font-size:9px;font-weight:800;line-height:1;text-align:center}.layer-list-stack-value input{width:100%;min-width:0;height:22px;padding:0 2px;border:0;outline:0;background:transparent;color:#e8eaed;font:700 11px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;text-align:center;appearance:textfield}.layer-list-stack-value input::-webkit-inner-spin-button,.layer-list-stack-value input::-webkit-outer-spin-button{margin:0;appearance:none}.layer-list-stack-value:focus-within{border-color:#8ab4f8;box-shadow:0 0 0 2px #8ab4f821}.layer-list-item.active .layer-list-stack-value{border-color:#8ab4f875}@media(max-width:720px){.layer-list-item{grid-template-columns:44px 38px 32px minmax(0,1fr) 58px auto;column-gap:2px}.layer-list-stack-value{height:36px}}html[data-klen-editor-theme]{--ket-bg: #15171a;--ket-panel: #202124;--ket-panel-2: #292a2d;--ket-surface: #303134;--ket-hover: #35363a;--ket-border: #3c4043;--ket-border-strong: #4a4d52;--ket-text: #e8eaed;--ket-text-strong: #f1f3f4;--ket-muted: #9aa0a6;--ket-accent: #4285f4;--ket-accent-hover: #5a95f5;--ket-accent-soft: #394457;--ket-accent-text: #a8c7fa;--ket-glass: rgba(32, 33, 36, .96);--ket-shadow: rgba(0, 0, 0, .38)}html[data-klen-editor-theme=midnight]{--ket-bg: #07111f;--ket-panel: #0c1727;--ket-panel-2: #111e31;--ket-surface: #16263c;--ket-hover: #1c304a;--ket-border: #273b57;--ket-border-strong: #34506f;--ket-text: #dfeaff;--ket-text-strong: #f3f7ff;--ket-muted: #91a7c5;--ket-accent: #4f8cff;--ket-accent-hover: #6ba0ff;--ket-accent-soft: #1e385d;--ket-accent-text: #b7d0ff;--ket-glass: rgba(12, 23, 39, .96);--ket-shadow: rgba(1, 7, 18, .48)}html[data-klen-editor-theme=forest]{--ket-bg: #08140f;--ket-panel: #0d1c15;--ket-panel-2: #12251b;--ket-surface: #183125;--ket-hover: #1e3b2d;--ket-border: #294737;--ket-border-strong: #365c48;--ket-text: #e0f1e7;--ket-text-strong: #f1fbf5;--ket-muted: #93b3a1;--ket-accent: #4fbf83;--ket-accent-hover: #69d39a;--ket-accent-soft: #1d4934;--ket-accent-text: #a9e8c5;--ket-glass: rgba(13, 28, 21, .96);--ket-shadow: rgba(1, 10, 6, .46)}html[data-klen-editor-theme=plum]{--ket-bg: #150b19;--ket-panel: #1d1023;--ket-panel-2: #28152f;--ket-surface: #34203d;--ket-hover: #40284a;--ket-border: #52335d;--ket-border-strong: #694176;--ket-text: #f0e5f4;--ket-text-strong: #fff4ff;--ket-muted: #bea2c7;--ket-accent: #ac78e8;--ket-accent-hover: #c091f4;--ket-accent-soft: #45265b;--ket-accent-text: #ddc0ff;--ket-glass: rgba(29, 16, 35, .96);--ket-shadow: rgba(10, 2, 13, .5)}html[data-klen-editor-theme=ember]{--ket-bg: #170d0b;--ket-panel: #21120f;--ket-panel-2: #2c1915;--ket-surface: #39221c;--ket-hover: #472a23;--ket-border: #5b372e;--ket-border-strong: #74483c;--ket-text: #f4e6e1;--ket-text-strong: #fff7f3;--ket-muted: #c2a39a;--ket-accent: #ef7658;--ket-accent-hover: #ff8b6e;--ket-accent-soft: #552d24;--ket-accent-text: #ffc0ae;--ket-glass: rgba(33, 18, 15, .96);--ket-shadow: rgba(13, 4, 2, .5)}html[data-klen-editor-theme] body,html[data-klen-editor-theme] #app,html[data-klen-editor-theme] #main-area{background:var(--ket-bg);color:var(--ket-text)}html[data-klen-editor-theme] #sidebar,html[data-klen-editor-theme] #toolbar,html[data-klen-editor-theme] .properties-panel,html[data-klen-editor-theme] .klen-bookmarks-panel,html[data-klen-editor-theme] .klen-mobile-tools-sheet,html[data-klen-editor-theme] .klen-editing-context-menu,html[data-klen-editor-theme] .klen-measure-card,html[data-klen-editor-theme] .klen-batch-bar{background:var(--ket-glass);color:var(--ket-text);border-color:var(--ket-border);box-shadow:0 10px 34px var(--ket-shadow)}html[data-klen-editor-theme] #sidebar,html[data-klen-editor-theme] #toolbar,html[data-klen-editor-theme] .sidebar-section,html[data-klen-editor-theme] .properties-section,html[data-klen-editor-theme] .properties-header,html[data-klen-editor-theme] .layer-objects-panel-header,html[data-klen-editor-theme] .klen-bookmarks-header,html[data-klen-editor-theme] .klen-bookmarks-add-row,html[data-klen-editor-theme] .klen-mobile-tools-header,html[data-klen-editor-theme] .mobile-sheet-header{border-color:var(--ket-border)}html[data-klen-editor-theme] .properties-header,html[data-klen-editor-theme] .mobile-sheet-header,html[data-klen-editor-theme] .layer-objects-panel-header,html[data-klen-editor-theme] .klen-mobile-tools-header{background:var(--ket-panel-2)}html[data-klen-editor-theme] .active-layer-info,html[data-klen-editor-theme] .layer-list-item,html[data-klen-editor-theme] .layer-object-list-item,html[data-klen-editor-theme] .property-input,html[data-klen-editor-theme] .property-select,html[data-klen-editor-theme] #coordinate-search-input,html[data-klen-editor-theme] .klen-measure-card-actions button,html[data-klen-editor-theme] .klen-batch-bar button,html[data-klen-editor-theme] .klen-properties-actions button,html[data-klen-editor-theme] .klen-bookmarks-add-row button,html[data-klen-editor-theme] .klen-mobile-tools-grid>button,html[data-klen-editor-theme] .klen-mobile-tools-header>button{background:var(--ket-panel-2);color:var(--ket-text);border-color:var(--ket-border-strong)}html[data-klen-editor-theme] .layer-list-item:hover,html[data-klen-editor-theme] .layer-object-list-item:hover,html[data-klen-editor-theme] .tool-button:hover:not(:disabled),html[data-klen-editor-theme] .basemap-button:hover,html[data-klen-editor-theme] .klen-editing-context-menu button:hover:not(:disabled),html[data-klen-editor-theme] .klen-bookmark-go:hover,html[data-klen-editor-theme] .klen-lock-button:hover,html[data-klen-editor-theme] .properties-close-button:hover,html[data-klen-editor-theme] .mobile-sheet-close:active{background:var(--ket-hover);color:var(--ket-text-strong)}html[data-klen-editor-theme] .layer-list-item.active,html[data-klen-editor-theme] .tool-button.active,html[data-klen-editor-theme] .klen-mobile-tools-grid>button.active,html[data-klen-editor-theme] .mobile-map-control-button:active{background:var(--ket-accent-soft);color:var(--ket-accent-text);border-color:color-mix(in srgb,var(--ket-accent) 45%,transparent)}html[data-klen-editor-theme] .primary-button,html[data-klen-editor-theme] #coordinate-search-button,html[data-klen-editor-theme] .basemap-button.active{background:var(--ket-accent);color:#fff}html[data-klen-editor-theme] .primary-button:hover:not(:disabled),html[data-klen-editor-theme] #coordinate-search-button:hover,html[data-klen-editor-theme] .basemap-button.active:hover{background:var(--ket-accent-hover)}html[data-klen-editor-theme] .secondary-button,html[data-klen-editor-theme] .small-icon-button,html[data-klen-editor-theme] .tool-button,html[data-klen-editor-theme] .mobile-map-control-button,html[data-klen-editor-theme] #basemap-switcher,html[data-klen-editor-theme] #snapping-panel{border-color:var(--ket-border-strong)}html[data-klen-editor-theme] #basemap-switcher,html[data-klen-editor-theme] #snapping-panel,html[data-klen-editor-theme] .mobile-map-control-button{background:var(--ket-glass);color:var(--ket-text)}html[data-klen-editor-theme] .app-title strong,html[data-klen-editor-theme] .properties-header strong,html[data-klen-editor-theme] .klen-mobile-tools-header strong,html[data-klen-editor-theme] .klen-measure-card strong,html[data-klen-editor-theme] .klen-bookmarks-header strong{color:var(--ket-text-strong)}html[data-klen-editor-theme] .app-title span,html[data-klen-editor-theme] .section-title,html[data-klen-editor-theme] .properties-section-title,html[data-klen-editor-theme] .property-field>label,html[data-klen-editor-theme] .property-label-row label,html[data-klen-editor-theme] .project-status,html[data-klen-editor-theme] .klen-measure-card-title,html[data-klen-editor-theme] .klen-measure-card-hint,html[data-klen-editor-theme] .klen-bookmark-go span,html[data-klen-editor-theme] .klen-bookmarks-empty,html[data-klen-editor-theme] .klen-mobile-tools-header span{color:var(--ket-muted)}html[data-klen-editor-theme] .properties-header-label,html[data-klen-editor-theme] .property-label-row>span,html[data-klen-editor-theme] .mobile-sheet-kicker{color:var(--ket-accent-text)}html[data-klen-editor-theme] .property-input:focus,html[data-klen-editor-theme] .property-select:focus,html[data-klen-editor-theme] #coordinate-search-input:focus{border-color:var(--ket-accent)}html[data-klen-editor-theme] .klen-coordinate-hud{background:var(--ket-glass);color:var(--ket-text);border-color:var(--ket-border-strong)}html[data-klen-editor-theme] .advanced-panel{--lab-panel: var(--ket-panel);--lab-border: var(--ket-border);--lab-text: var(--ket-text);--lab-muted: var(--ket-muted);--lab-blue: var(--ket-accent);--lab-blue-soft: color-mix(in srgb, var(--ket-accent) 18%, transparent);background:var(--ket-panel)!important;color:var(--ket-text)!important;border-color:var(--ket-border)!important}html[data-klen-editor-theme] .advanced-header,html[data-klen-editor-theme] .advanced-tabs{background:var(--ket-panel-2)!important;border-color:var(--ket-border)!important}html[data-klen-editor-theme] .advanced-content,html[data-klen-editor-theme] .advanced-card,html[data-klen-editor-theme] .advanced-heavy-list button,html[data-klen-editor-theme] .advanced-export-card,html[data-klen-editor-theme] .advanced-safe-note,html[data-klen-editor-theme] .advanced-issue,html[data-klen-editor-theme] .advanced-focus-preview,html[data-klen-editor-theme] .advanced-toolbox,html[data-klen-editor-theme] .advanced-metrics>div{background:var(--ket-panel-2)!important;border-color:var(--ket-border)!important;color:var(--ket-text)!important}html[data-klen-editor-theme] .v21-modal,html[data-klen-editor-theme] .v21-section,html[data-klen-editor-theme] .v22-compare-modal,html[data-klen-editor-theme] .v22-compare-card,html[data-klen-editor-theme] .v22-swipe-bar,html[data-klen-editor-theme] .v242-compare-bar,html[data-klen-editor-theme] .v22-annotation-toolbar{background:var(--ket-panel)!important;color:var(--ket-text)!important;border-color:var(--ket-border)!important}html[data-klen-editor-theme] .v21-action,html[data-klen-editor-theme] .v22-annotation-toolbar button,html[data-klen-editor-theme] .v22-swipe-bar button,html[data-klen-editor-theme] .v242-compare-bar button{background:var(--ket-panel-2)!important;color:var(--ket-text)!important;border-color:var(--ket-border-strong)!important}html[data-klen-editor-theme] .v21-action.primary,html[data-klen-editor-theme] .v22-annotation-toolbar button.active{background:var(--ket-accent)!important;border-color:var(--ket-accent)!important;color:#fff!important}html[data-klen-editor-theme]{--klen-ux-bg: var(--ket-glass)}html[data-klen-editor-theme] .klen-save-indicator{border-color:var(--ket-border)}@media(max-width:768px){html[data-klen-editor-theme] #toolbar{background:var(--ket-glass);border-color:var(--ket-border);box-shadow:0 -6px 24px var(--ket-shadow)}html[data-klen-editor-theme] #sidebar,html[data-klen-editor-theme] .properties-panel,html[data-klen-editor-theme] .advanced-panel{background:var(--ket-panel)!important;border-color:var(--ket-border)!important}}#draw-arrow-tool{white-space:nowrap}#draw-arrow-tool:before{content:"➤";display:inline-block;margin-right:.35rem;font-size:.9em;transform:translateY(-.02em)}.klen-arrow-editor-panel{position:fixed;z-index:1350;top:74px;right:16px;width:min(340px,calc(100vw - 32px));max-height:calc(100vh - 94px);overflow:hidden;border:1px solid rgba(148,163,184,.28);border-radius:16px;background:#0f172af7;color:#f8fafc;box-shadow:0 22px 60px #02061775;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.klen-arrow-editor-panel.hidden{display:none}.klen-arrow-editor-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid rgba(148,163,184,.18)}.klen-arrow-editor-heading{display:grid;gap:2px}.klen-arrow-editor-heading small{color:#60a5fa;font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.klen-arrow-editor-heading strong{font-size:16px}.klen-arrow-editor-close{width:36px;height:36px;border:0;border-radius:10px;background:#94a3b824;color:#f8fafc;font-size:23px;cursor:pointer}.klen-arrow-editor-content{display:grid;gap:14px;max-height:calc(100vh - 160px);overflow-y:auto;overscroll-behavior:contain;padding:14px 15px 18px}.klen-arrow-editor-section{display:grid;gap:11px;padding:13px;border:1px solid rgba(148,163,184,.17);border-radius:13px;background:#1e293bad}.klen-arrow-editor-section-title{color:#94a3b8;font-size:10px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.klen-arrow-field{display:grid;gap:7px}.klen-arrow-field>span,.klen-arrow-label-row{color:#dbeafe;font-size:12px;font-weight:650}.klen-arrow-label-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.klen-arrow-label-row output{color:#93c5fd;font-variant-numeric:tabular-nums}.klen-arrow-input,.klen-arrow-select{width:100%;min-height:40px;box-sizing:border-box;border:1px solid rgba(148,163,184,.28);border-radius:10px;background:#0f172ae0;color:#f8fafc;padding:9px 10px;outline:none}.klen-arrow-input:focus,.klen-arrow-select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #60a5fa29}.klen-arrow-color-row{display:grid;grid-template-columns:46px 1fr;align-items:center;gap:10px}.klen-arrow-color{width:46px;height:40px;border:0;border-radius:10px;background:transparent;padding:0;cursor:pointer}.klen-arrow-range{width:100%;accent-color:#3b82f6}.klen-arrow-presets{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px}.klen-arrow-preset{height:34px;border:2px solid rgba(255,255,255,.72);border-radius:10px;cursor:pointer;box-shadow:inset 0 0 0 1px #0f172a8c}.klen-arrow-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.klen-arrow-action{min-height:42px;border:1px solid rgba(148,163,184,.25);border-radius:11px;background:#334155e6;color:#f8fafc;font-weight:700;cursor:pointer}.klen-arrow-action:hover{background:#475569f2}.klen-arrow-action.danger{border-color:#f871716b;background:#7f1d1d9e;color:#fecaca}.klen-arrow-draw-hint{position:fixed;z-index:1400;left:50%;bottom:22px;transform:translate(-50%);max-width:min(520px,calc(100vw - 30px));padding:11px 14px;border:1px solid rgba(96,165,250,.42);border-radius:12px;background:#0f172af5;color:#eff6ff;box-shadow:0 16px 40px #02061761;font-size:13px;text-align:center;pointer-events:none}.klen-arrow-draw-hint.hidden{display:none}@media(max-width:760px),(pointer:coarse){#draw-arrow-tool:before{margin-right:.2rem}.klen-arrow-editor-panel{inset:auto 8px 8px;width:auto;max-height:74vh;border-radius:18px}.klen-arrow-editor-content{max-height:calc(74vh - 66px);padding-bottom:max(18px,env(safe-area-inset-bottom))}.klen-arrow-editor-close,.klen-arrow-action,.klen-arrow-input,.klen-arrow-select{min-height:44px}.klen-arrow-draw-hint{bottom:max(16px,env(safe-area-inset-bottom))}}:root{--lab-bg:#17191d;--lab-panel:#202124;--lab-panel-2:#25272b;--lab-panel-3:#2b2d31;--lab-border:#35363a;--lab-border-soft:#303238;--lab-text:#f1f3f4;--lab-muted:#9aa0a6;--lab-blue:#4285f4;--lab-blue-hover:#5a95f5;--lab-blue-soft:rgba(66,133,244,.14);--lab-danger:#ea4335;--lab-warning:#fbbc04;--lab-success:#34a853}.advanced-panel{position:absolute;z-index:70;top:68px;right:16px;bottom:16px;width:450px;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--lab-border);border-radius:13px;background:var(--lab-panel);color:var(--lab-text);box-shadow:0 24px 70px #00000075;font-family:Inter,Arial,Helvetica,sans-serif}.advanced-panel.hidden{display:none}.advanced-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--lab-blue),#7baaf7 58%,transparent);z-index:2}.advanced-header{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:68px;padding:13px 16px 12px;border-bottom:1px solid var(--lab-border);background:linear-gradient(180deg,#24262a,#202124)}.advanced-header>div{display:flex;min-width:0;flex-direction:column;gap:4px}.advanced-header strong{font-size:15px;line-height:1.2;color:#fff}.advanced-kicker{font-size:9px;font-weight:800;letter-spacing:.14em;color:#8ab4f8}.advanced-header button{width:36px;height:36px;flex:0 0 36px;border:1px solid transparent;border-radius:8px;background:transparent;color:#9aa0a6;font-size:23px;cursor:pointer;transition:.15s}.advanced-header button:hover{border-color:#45474c;background:#303134;color:#fff}.advanced-tabs{display:flex;gap:5px;padding:8px 9px;border-bottom:1px solid var(--lab-border);overflow-x:auto;background:#1d1f22;scrollbar-width:thin}.advanced-tabs button{flex:0 0 auto;min-height:34px;padding:0 11px;border:1px solid transparent;border-radius:7px;background:transparent;color:#9aa0a6;font-size:11px;font-weight:700;cursor:pointer;transition:.15s}.advanced-tabs button:hover{background:#292b2f;color:#e8eaed}.advanced-tabs button.active{border-color:#4285f447;background:var(--lab-blue-soft);color:#9fc3ff}.advanced-content{flex:1;overflow:auto;padding:16px;background:var(--lab-panel);scrollbar-color:#55585e transparent}.advanced-section-intro{padding-bottom:14px;margin-bottom:13px;border-bottom:1px solid var(--lab-border-soft)}.advanced-section-intro h3{margin:0 0 6px;color:#f8f9fa;font-size:18px;letter-spacing:-.01em}.advanced-section-intro p{margin:0;color:var(--lab-muted);font-size:12px;line-height:1.55}.advanced-loading,.advanced-empty,.advanced-error{padding:18px;border:1px dashed #45474c;border-radius:9px;background:#1b1d20;color:var(--lab-muted);text-align:center;font-size:12px;line-height:1.5}.advanced-error{border-color:#ea433573;background:#ea433514;color:#f28b82}.advanced-warning,.advanced-success{padding:10px 12px;margin-bottom:12px;border-radius:8px;font-size:11px;line-height:1.5}.advanced-warning{border:1px solid rgba(251,188,4,.35);background:#fbbc0414;color:#fdd663}.advanced-success{border:1px solid rgba(52,168,83,.35);background:#34a85314;color:#81c995}.advanced-list{display:flex;flex-direction:column;gap:9px}.advanced-list.compact{margin-top:8px}.advanced-card{padding:12px;border:1px solid var(--lab-border);border-radius:9px;background:#24262a;box-shadow:0 4px 16px #00000014}.advanced-card.active{border-color:#4285f494;background:#242a34}.advanced-card-head{display:flex;gap:9px;align-items:flex-start;justify-content:space-between}.advanced-card-head>div{display:flex;min-width:0;flex-direction:column;gap:4px}.advanced-card-head strong{font-size:12px;color:#f1f3f4;overflow-wrap:anywhere}.advanced-card-head small{font-size:10px;color:#8b9096}.advanced-card-note{margin:10px 0 0;color:#bdc1c6;font-size:11px;line-height:1.48}.advanced-badge{flex:0 0 auto;padding:4px 7px;border-radius:999px;background:#4285f429;color:#8ab4f8;font-size:9px;font-weight:800}.advanced-badge.accepted{background:#34a85326;color:#81c995}.advanced-badge.rejected{background:#ea433521;color:#f28b82}.advanced-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:11px}.advanced-action{min-height:35px;padding:0 12px;border:1px solid transparent;border-radius:7px;background:var(--lab-blue);color:#fff;font-size:10px;font-weight:800;cursor:pointer;transition:.15s}.advanced-action:hover{background:var(--lab-blue-hover);transform:translateY(-1px)}.advanced-action.secondary{border-color:#45474c;background:#303134;color:#e8eaed}.advanced-action.secondary:hover{background:#3c4043}.advanced-action.danger-soft{border-color:#ea433561;background:#ea433512;color:#f28b82}.advanced-action.danger-soft:hover{background:#ea433521}.advanced-create-row{display:flex;gap:7px;margin-bottom:12px}.advanced-create-row input,.advanced-field input,.advanced-date-grid input{min-height:38px;padding:0 10px;border:1px solid #45474c;border-radius:7px;background:#17191c;color:#f1f3f4;outline:none}.advanced-create-row input{flex:1;min-width:0}.advanced-create-row input::placeholder{color:#70757a}.advanced-create-row input:focus,.advanced-field input:focus,.advanced-date-grid input:focus{border-color:#669df6;box-shadow:0 0 0 2px #4285f429}.advanced-current-branch{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;padding:10px;border:1px solid rgba(66,133,244,.38);border-radius:8px;background:#4285f417;color:#aecbfa;font-size:11px}.advanced-info-row{display:flex;justify-content:space-between;gap:15px;padding:9px 0;border-bottom:1px solid var(--lab-border-soft);font-size:11px}.advanced-info-row span{color:#8b9096}.advanced-info-row strong{color:#e8eaed;text-align:right}.advanced-field{display:flex;flex-direction:column;gap:6px;margin-top:12px;color:#bdc1c6;font-size:10px;font-weight:700}.advanced-subheading{margin:18px 0 8px;color:#8b9096;font-size:9px;font-weight:800;letter-spacing:.09em;text-transform:uppercase}.advanced-date-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.advanced-date-grid label{display:flex;flex-direction:column;gap:6px;color:#bdc1c6;font-size:10px;font-weight:700}.advanced-result{margin-top:12px}.advanced-diff-summary{padding:12px;border:1px solid var(--lab-border);border-radius:8px;background:#24262a}.advanced-diff-summary>div{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px;font-size:10px;font-weight:700}.advanced-diff-summary .added{color:#81c995}.advanced-diff-summary .removed{color:#f28b82}.advanced-diff-summary .changed{color:#fdd663}.advanced-metrics{display:grid;grid-template-columns:1fr 1fr;gap:8px}.advanced-metrics>div{padding:12px;border:1px solid var(--lab-border);border-radius:8px;background:#292b2f;display:flex;flex-direction:column;gap:4px}.advanced-metrics span{color:#8b9096;font-size:9px;text-transform:uppercase;letter-spacing:.04em}.advanced-metrics strong{color:#fff;font-size:18px}.advanced-toolbox{margin-top:13px;padding:12px;border:1px solid #3b3d42;border-radius:10px;background:linear-gradient(145deg,#25272b,#222428)}.advanced-toolbox-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.advanced-toolbox-head>div{display:flex;flex-direction:column;gap:4px}.advanced-toolbox-head strong{font-size:12px;color:#f1f3f4}.advanced-toolbox-head small{max-width:310px;color:#9aa0a6;font-size:10px;line-height:1.45}.advanced-toolbox-head>span{display:grid;place-items:center;min-width:24px;height:20px;border-radius:999px;background:#4285f429;color:#8ab4f8;font-size:9px;font-weight:900}.advanced-topology-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px;align-items:end}.advanced-topology-grid .advanced-field{margin-top:0}.advanced-check{display:flex;align-items:center;gap:8px;min-height:38px;color:#bdc1c6;font-size:10px;font-weight:700;cursor:pointer}.advanced-check input{width:15px;height:15px;accent-color:var(--lab-blue)}.topology-actions{margin-top:10px}.advanced-tool-note{margin:10px 0 0;color:#8b9096;font-size:9.5px;line-height:1.5}.advanced-diagnostic-summary{display:flex;flex-direction:column;gap:4px;margin-bottom:9px}.advanced-diagnostic-summary strong{font-size:12px;color:#f1f3f4}.advanced-diagnostic-summary small{color:#8b9096;font-size:10px;line-height:1.45}.advanced-issues{display:flex;flex-direction:column;gap:7px;max-height:330px;overflow:auto;padding-right:2px}.advanced-issue{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;align-items:start;padding:9px;border:1px solid var(--lab-border);border-radius:8px;background:#24262a;font-size:10px;line-height:1.4}.advanced-issue.error{border-color:#ea433557;background:#ea43350e}.advanced-issue-icon{display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#fbbc041a;color:#fdd663;font-weight:900}.advanced-issue.error .advanced-issue-icon{background:#ea43351c;color:#f28b82}.advanced-issue-body{display:flex;min-width:0;flex-direction:column;gap:3px}.advanced-issue-body strong{color:#e8eaed;font-size:10px;font-weight:650}.advanced-issue-body small{color:#8b9096;font-size:9px}.advanced-issue-actions{grid-column:2;display:flex;gap:6px;flex-wrap:wrap}.advanced-issue-actions .advanced-action{min-height:30px;padding:0 9px;font-size:9px}.advanced-heavy-list{display:flex;flex-direction:column;gap:5px}.advanced-heavy-list button{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px;border:1px solid var(--lab-border);border-radius:7px;background:#24262a;color:#f1f3f4;text-align:left;cursor:pointer;transition:.15s}.advanced-heavy-list button:hover{border-color:#4b4d53;background:#2a2c31}.advanced-heavy-list span{font-size:11px;font-weight:700}.advanced-heavy-list small{color:#8b9096;font-size:9px;white-space:nowrap}.advanced-focus-preview{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--lab-border);border-radius:10px;background:linear-gradient(135deg,#292b2f,#222428)}.advanced-focus-preview span{color:#8ab4f8;font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.advanced-focus-preview strong{font-size:14px;color:#fff}.advanced-focus-preview small{font-size:10px;color:#9aa0a6}.advanced-focus-options{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;align-items:end}.advanced-focus-options .advanced-field{margin-top:0}.advanced-toolbar-group{margin-left:4px}.advanced-toolbar-group .tool-button,.mobile-map-control-button{position:relative}.advanced-issue-count{position:absolute;top:2px;right:2px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:#d93025;color:#fff;font-size:8px;font-weight:900;line-height:1}.advanced-issue-count[hidden]{display:none}@media(max-width:768px){.advanced-panel{position:fixed;inset:auto 0 0;width:100%;height:min(88dvh,760px);max-height:calc(100dvh - 8px);border-radius:16px 16px 0 0;z-index:120;border-left:0;border-right:0;border-bottom:0;padding-bottom:env(safe-area-inset-bottom,0px)}.advanced-header{padding:13px 15px;min-height:62px}.advanced-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:8px 10px 9px;overflow:visible;scrollbar-width:none;background:#1d1f22}.advanced-tabs::-webkit-scrollbar{display:none}.advanced-tabs button{width:100%;min-width:0;min-height:42px;padding:6px 7px;display:flex;align-items:center;justify-content:center;white-space:normal;text-align:center;line-height:1.15;font-size:11.5px}.advanced-tabs button.active{box-shadow:inset 0 0 0 1px #4285f429}.advanced-content{padding:14px 15px 26px}.advanced-section-intro h3{font-size:19px}.advanced-section-intro p{font-size:13px}.advanced-action{min-height:41px;font-size:11px}.advanced-card{padding:13px}.advanced-card-head strong{font-size:13px}.advanced-date-grid,.advanced-topology-grid,.advanced-focus-options{grid-template-columns:1fr}.advanced-metrics{grid-template-columns:1fr 1fr}.advanced-create-row{flex-direction:column}.advanced-create-row input{min-height:42px}.advanced-toolbar-group{display:none}.advanced-issues{max-height:none}.advanced-issue{grid-template-columns:26px minmax(0,1fr)}.advanced-issue-actions .advanced-action{min-height:36px;font-size:10px}}@media(max-width:430px){.advanced-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:8px 10px 10px}.advanced-tabs button{min-height:42px;font-size:11.5px;padding:6px 8px}.advanced-content{padding-top:13px}}.advanced-safe-note,.advanced-export-card{display:flex;flex-direction:column;gap:7px;margin-top:10px;padding:12px 13px;border:1px solid var(--lab-border);border-radius:9px;background:#24262a}.advanced-safe-note{border-color:#34a85338;background:#34a8530b}.advanced-safe-note strong,.advanced-export-card strong{color:#f1f3f4;font-size:11px}.advanced-safe-note span,.advanced-export-card small{color:#9aa0a6;font-size:10px;line-height:1.5}.advanced-export-card .advanced-card-actions{margin-top:3px}@media(max-width:768px){.advanced-export-card .advanced-card-actions{display:grid;grid-template-columns:1fr}.advanced-export-card .advanced-action{width:100%}}.advanced-export-card{border-color:#4285f461;background:linear-gradient(145deg,#4285f41b,#24262a 62%)}.advanced-export-card>div:first-child strong{font-size:13px;color:#dbe8ff}.advanced-export-card>div:first-child small{font-size:10.5px}@media(max-width:768px){.advanced-tabs button[data-tab=focus]{border-color:#4285f42e;color:#aecbfa}.advanced-export-card{padding:14px}.advanced-export-card .advanced-action{min-height:46px;font-size:11.5px}}.advanced-tabs button[data-tab=gis]{border-color:#34a85352;color:#9be7b0}.advanced-tabs button[data-tab=gis].active{background:#34a85324;color:#b7f7c8}.advanced-tabs button[data-tab=academy]{border-color:#4285f438;color:#aecbfa}:root{--klen-ux-bg: rgba(20, 24, 31, .96);--klen-ux-panel: #ffffff;--klen-ux-text: #202124;--klen-ux-muted: #6b7280;--klen-ux-border: rgba(60, 64, 67, .18);--klen-ux-accent: #1a73e8;--klen-ux-shadow: 0 18px 55px rgba(0, 0, 0, .28)}.klen-command-launcher{display:inline-flex;align-items:center;gap:7px;min-width:auto;padding-inline:10px}.klen-command-launcher .klen-command-icon{font-size:19px;line-height:1}.klen-command-launcher .klen-command-label{font-size:12px;font-weight:600}.klen-command-launcher kbd,.klen-command-footer kbd{font:inherit;font-size:10px;border:1px solid rgba(60,64,67,.22);border-bottom-width:2px;border-radius:5px;padding:1px 5px;background:#ffffff9e;white-space:nowrap}.klen-mobile-command-button{font-size:22px;font-weight:700}.klen-command-palette{position:fixed;inset:0;z-index:10050}.klen-command-palette.hidden{display:none!important}.klen-command-backdrop{position:absolute;inset:0;background:#1013187a;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.klen-command-panel{position:absolute;left:50%;top:11vh;transform:translate(-50%);width:min(680px,calc(100vw - 32px));max-height:min(680px,76vh);display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--klen-ux-border);border-radius:16px;background:var(--klen-ux-panel);color:var(--klen-ux-text);box-shadow:var(--klen-ux-shadow)}.klen-command-handle{display:none}.klen-command-search-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:14px 14px 10px}.klen-command-search-icon{font-size:25px;color:#5f6368}#klen-command-input{min-width:0;width:100%;border:0;outline:0;background:transparent;color:inherit;font-size:18px;line-height:1.35}#klen-command-input::placeholder{color:#9aa0a6}.klen-command-close{width:36px;height:36px;border:0;border-radius:50%;background:transparent;color:#5f6368;font-size:25px;cursor:pointer}.klen-command-close:hover{background:#f1f3f4}.klen-command-help{padding:0 52px 10px;color:var(--klen-ux-muted);font-size:11px;border-bottom:1px solid var(--klen-ux-border)}.klen-command-results{overflow:auto;padding:7px;overscroll-behavior:contain}.klen-command-result{width:100%;display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:0;border-radius:10px;background:transparent;color:inherit;text-align:left;cursor:pointer}.klen-command-result:hover,.klen-command-result.active{background:#f1f5fb}.klen-result-glyph{width:34px;height:34px;display:grid;place-items:center;border-radius:9px;background:#e8f0fe;color:#1967d2;font-weight:800}.klen-result-copy{min-width:0;display:flex;flex-direction:column;gap:2px}.klen-result-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.klen-result-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--klen-ux-muted);font-size:11px}.klen-result-kind{color:#9aa0a6;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.klen-command-empty{padding:34px 18px;text-align:center;display:flex;flex-direction:column;gap:7px;color:var(--klen-ux-muted)}.klen-command-empty strong{color:var(--klen-ux-text)}.klen-command-footer{display:flex;gap:18px;flex-wrap:wrap;padding:9px 14px 11px;border-top:1px solid var(--klen-ux-border);color:var(--klen-ux-muted);font-size:10px}.klen-command-footer span{display:inline-flex;align-items:center;gap:4px}.klen-save-indicator{display:inline-flex;align-items:center;gap:6px;max-width:220px;min-height:26px;padding:4px 8px;border:1px solid rgba(60,64,67,.15);border-radius:999px;background:#ffffffb8;color:#5f6368;font-size:11px;white-space:nowrap;overflow:hidden}.klen-save-text{overflow:hidden;text-overflow:ellipsis}.klen-save-dot{width:7px;height:7px;border-radius:50%;background:#34a853;flex:0 0 auto}.klen-save-indicator.is-saving .klen-save-dot{background:#1a73e8;animation:klenSavePulse .9s ease-in-out infinite alternate}.klen-save-indicator.is-dirty .klen-save-dot{background:#f9ab00}.klen-save-indicator.is-offline .klen-save-dot{background:#9aa0a6}.klen-save-indicator.is-error .klen-save-dot{background:#d93025}@keyframes klenSavePulse{0%{opacity:.35;transform:scale(.8)}to{opacity:1;transform:scale(1.2)}}.klen-tour-welcome{position:fixed;inset:0;z-index:10100;display:grid;place-items:center;padding:20px;background:#0f121875;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.klen-tour-welcome-card{width:min(470px,100%);padding:24px;border-radius:18px;background:#fff;color:#202124;box-shadow:var(--klen-ux-shadow)}.klen-tour-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#e8f0fe;color:#1967d2;font-size:11px;font-weight:700}.klen-tour-welcome h2{margin:14px 0 7px;font-size:22px}.klen-tour-welcome p{margin:0;color:#5f6368;line-height:1.55;font-size:14px}.klen-tour-welcome-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:22px}.klen-tour-welcome button,.klen-tour-actions button{min-height:40px;padding:8px 14px;border:1px solid #dadce0;border-radius:9px;background:#fff;color:#3c4043;font-weight:600;cursor:pointer}.klen-tour-welcome button.primary,.klen-tour-actions button.primary{border-color:#1a73e8;background:#1a73e8;color:#fff}.klen-ux-tour{position:fixed;inset:0;z-index:10110;pointer-events:none}.klen-ux-tour.hidden{display:none!important}.klen-tour-dim{position:absolute;inset:0;background:#0e111654;pointer-events:none}.klen-tour-card{position:absolute;left:50%;bottom:max(24px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(560px,calc(100vw - 28px));padding:18px;border-radius:16px;background:#fff;color:#202124;box-shadow:var(--klen-ux-shadow);pointer-events:auto}.klen-tour-progress{display:flex;gap:3px;margin-bottom:14px}.klen-tour-progress span{flex:1 1 0;min-width:2px;height:3px;border-radius:999px;background:#e0e3e7}.klen-tour-progress span.active{background:#1a73e8}.klen-tour-title{display:block;font-size:16px}.klen-tour-text{margin:7px 0 16px;color:#5f6368;line-height:1.48;font-size:13px}.klen-tour-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.klen-tour-actions>div{display:flex;gap:7px}.klen-tour-actions button:disabled{opacity:.45;cursor:default}.klen-tour-dim{z-index:0}.klen-tour-card{z-index:3}.klen-tour-target{outline:4px solid rgba(26,115,232,.95)!important;outline-offset:4px!important;box-shadow:0 0 0 8px #1a73e829!important}.klen-ux-toasts{position:fixed;z-index:10200;right:18px;bottom:max(18px,env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:7px;pointer-events:none}.klen-ux-toast{max-width:min(360px,calc(100vw - 28px));padding:10px 13px;border-radius:10px;background:#202124f0;color:#fff;box-shadow:0 8px 25px #00000038;font-size:12px;transform:translateY(8px);opacity:0;transition:.2s ease}.klen-ux-toast.show{transform:translateY(0);opacity:1}.klen-ux-toast.success{background:#186c3af5}.klen-ux-toast.error{background:#b02820f5}@media(max-width:760px),(pointer:coarse){.klen-command-launcher{display:none!important}.klen-save-indicator{position:fixed;top:auto;right:10px;bottom:calc(var(--mobile-toolbar-height, 62px) + var(--mobile-safe-bottom, 0px) + 10px);z-index:10440;max-width:152px;min-height:30px;background:#fffffff0;box-shadow:0 3px 12px #0000002e;pointer-events:none}.klen-command-panel{top:auto;bottom:0;width:100%;max-height:min(78dvh,720px);border-radius:18px 18px 0 0;padding-bottom:env(safe-area-inset-bottom);transform:translate(-50%)}.klen-command-handle{display:block;width:42px;height:4px;border-radius:999px;background:#dadce0;margin:7px auto 0}.klen-command-search-row{padding:10px 12px 8px}#klen-command-input{font-size:16px}.klen-command-help{padding-inline:48px}.klen-command-result{min-height:58px;padding:9px 10px}.klen-result-glyph{width:40px;height:40px}.klen-result-kind,.klen-command-footer{display:none}.klen-tour-welcome-card{padding:20px}.klen-tour-welcome-actions button,.klen-tour-actions button{min-height:46px}.klen-tour-card{bottom:calc(var(--mobile-toolbar-height, 62px) + var(--mobile-safe-bottom, env(safe-area-inset-bottom, 0px)) + 14px);max-height:calc(100dvh - var(--mobile-toolbar-height, 62px) - var(--mobile-safe-bottom, env(safe-area-inset-bottom, 0px)) - 42px);overflow-y:auto;overscroll-behavior:contain;padding:15px}.klen-tour-text{font-size:13px}.klen-ux-toasts{left:12px;right:12px;bottom:max(12px,env(safe-area-inset-bottom));align-items:stretch}.klen-ux-toast{max-width:none;text-align:center}}@media(prefers-reduced-motion:reduce){.klen-save-dot,.klen-ux-toast{animation:none!important;transition:none!important}}.klen-legacy-status-hidden,.v21-presentation #klen-save-indicator{display:none!important}.klen-academy-chooser{position:fixed;inset:0;z-index:10300;display:grid;place-items:center;padding:18px;background:#02061794;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.klen-academy-chooser.hidden,.klen-interactive-course.hidden{display:none!important}.klen-academy-chooser-card{width:min(650px,100%);padding:22px;border:1px solid rgba(148,163,184,.22);border-radius:20px;background:#111827;color:#f8fafc;box-shadow:0 30px 90px #00000085}.klen-academy-badge,.klen-course-mode{color:#93c5fd;font-size:10px;font-weight:850;letter-spacing:.13em}.klen-academy-chooser h2{margin:9px 0 7px;font-size:22px}.klen-academy-chooser-card>p{margin:0;color:#a9b8ca;font-size:13px;line-height:1.55}.klen-academy-modes{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}.klen-academy-modes>button{display:grid;gap:7px;min-height:145px;padding:16px;text-align:left;border:1px solid rgba(148,163,184,.18);border-radius:14px;background:#1e293bb8;color:#f8fafc;cursor:pointer}.klen-academy-modes>button:hover{border-color:#60a5fa;background:#1e40af38}.klen-academy-modes strong{font-size:17px}.klen-academy-modes span{color:#c0cedd;font-size:12px;line-height:1.45}.klen-academy-modes small{align-self:end;color:#93c5fd}.klen-academy-chooser-actions{display:flex;justify-content:flex-end;margin-top:14px}.klen-academy-chooser-actions button{min-height:40px;padding:8px 14px;border:1px solid rgba(148,163,184,.2);border-radius:9px;background:#1e293bbf;color:#f8fafc}.klen-interactive-course{position:fixed;inset:0;z-index:10280;pointer-events:none}.klen-course-dim{position:absolute;inset:0;background:#02061721;pointer-events:none}.klen-course-card{position:absolute;right:18px;bottom:18px;width:min(470px,calc(100vw - 36px));max-height:min(72vh,680px);overflow:auto;padding:16px;border:1px solid rgba(96,165,250,.3);border-radius:17px;background:#0f172af7;color:#f8fafc;box-shadow:0 22px 70px #0000007a;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);pointer-events:auto}.klen-course-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.klen-course-top>div{display:grid;gap:4px}.klen-course-title{font-size:17px}.klen-course-top>button{width:34px;height:34px;flex:0 0 auto;padding:0;border:0;border-radius:9px;background:#94a3b81f;color:#fff;font-size:21px}.klen-course-progress{display:flex;gap:3px;margin:13px 0}.klen-course-progress i{flex:1 1 0;min-width:2px;height:3px;border-radius:999px;background:#94a3b82e}.klen-course-progress i.active{background:#60a5fa}.klen-course-progress i.done{background:#34d399}.klen-course-text{margin:0;color:#b4c2d2;font-size:12px;line-height:1.55}.klen-course-task{margin-top:12px;padding:10px 11px;border:1px solid rgba(96,165,250,.22);border-radius:10px;background:#2563eb1c;color:#dbeafe;font-size:12px;font-weight:700}.klen-course-status{margin-top:9px;padding:7px 9px;border-radius:9px;font-size:11px}.klen-course-status.pending{background:#f59e0b1a;color:#fde68a}.klen-course-status.done{background:#10b9811f;color:#a7f3d0}.klen-course-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px}.klen-course-actions>div{display:flex;gap:7px}.klen-course-actions button{min-height:38px;padding:8px 11px;border:1px solid rgba(148,163,184,.2);border-radius:9px;background:#1e293bcc;color:#f8fafc}.klen-course-actions button.primary{border-color:#3b82f6;background:#2563eb}.klen-course-actions button:disabled{opacity:.42}.klen-course-target{outline:4px solid rgba(59,130,246,.95)!important;outline-offset:4px!important;box-shadow:0 0 0 8px #3b82f629!important}@media(max-width:760px),(pointer:coarse){.klen-academy-chooser{align-items:end;padding:0}.klen-academy-chooser-card{width:100%;max-height:88dvh;overflow:auto;padding:18px 16px calc(18px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.klen-academy-modes{grid-template-columns:1fr}.klen-academy-modes>button{min-height:112px}.klen-course-card{right:10px;bottom:calc(var(--mobile-toolbar-height, 62px) + env(safe-area-inset-bottom) + 12px);left:10px;width:auto;max-height:48dvh}.klen-course-actions{align-items:stretch;flex-direction:column}.klen-course-actions>div{display:grid;grid-template-columns:1fr 1fr}.klen-course-actions>button,.klen-course-actions>div button{min-height:44px}}.klen-course-card{width:min(610px,calc(100vw - 40px));max-height:min(78vh,760px);padding:21px;border-radius:19px}.klen-course-title{font-size:21px;line-height:1.22}.klen-course-mode{font-size:11px}.klen-course-text{font-size:14px;line-height:1.62}.klen-course-task{margin-top:15px;padding:13px 14px;font-size:14px;line-height:1.5}.klen-course-status{margin-top:11px;padding:9px 11px;font-size:12.5px}.klen-course-actions button{min-height:42px;padding:9px 14px;font-size:12.5px}.klen-course-progress{margin:16px 0}.klen-course-progress i{height:4px}@media(max-width:760px),(pointer:coarse){.klen-course-card{right:7px;left:7px;width:auto;max-height:60dvh;padding:17px}.klen-course-title{font-size:19px}.klen-course-text,.klen-course-task{font-size:13.5px}}.klen-course-mode{max-width:100%;color:#93c5fd;font-weight:900;letter-spacing:.09em;line-height:1.35}.klen-course-progress{gap:2px;overflow:hidden}.klen-course-progress i{min-width:1px;height:4px}.klen-course-task:before{content:"ЗАВДАННЯ";display:block;margin-bottom:5px;color:#93c5fd;font-size:9px;font-weight:900;letter-spacing:.12em}@media(max-width:760px),(pointer:coarse){.klen-course-mode{font-size:10px}.klen-course-progress{gap:1px}.klen-course-progress i{height:3px}}@media(max-width:760px),(pointer:coarse){.klen-course-card{right:7px;bottom:calc(var(--mobile-toolbar-height, 62px) + env(safe-area-inset-bottom,0px) + 7px);left:7px;width:auto;max-height:min(34dvh,330px);padding:10px 11px;border-radius:13px}.klen-course-top{gap:7px}.klen-course-top>div{gap:2px}.klen-course-mode{font-size:8.5px;line-height:1.2}.klen-course-title{font-size:15px;line-height:1.18}.klen-course-top>button{width:29px;height:29px;border-radius:8px;font-size:18px}.klen-course-progress{gap:1px;margin:7px 0}.klen-course-progress i{height:2px}.klen-course-text{font-size:10.5px;line-height:1.35}.klen-course-task{margin-top:7px;padding:7px 8px;font-size:10.5px;line-height:1.32}.klen-course-task:before{margin-bottom:3px;font-size:7.5px}.klen-course-status{margin-top:5px;padding:5px 7px;font-size:9.5px}.klen-course-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;margin-top:7px}.klen-course-actions>div{display:grid;grid-template-columns:auto auto;gap:5px}.klen-course-actions>button,.klen-course-actions>div button{min-height:31px;padding:5px 8px;border-radius:8px;font-size:9.5px;white-space:nowrap}.klen-course-target{outline-width:3px!important;outline-offset:2px!important}}@media(max-width:380px),(pointer:coarse){.klen-course-card{max-height:min(31dvh,285px)}.klen-course-actions>button,.klen-course-actions>div button{padding-inline:6px;font-size:9px}}.layer-list-item{grid-template-columns:28px 28px minmax(0,1fr) auto}.layer-object-list-item{grid-template-columns:24px minmax(0,1fr) 28px}.klen-editing-toolbar,.klen-editing-divider{flex:0 0 auto}.klen-coordinate-hud{position:absolute;left:50%;bottom:18px;z-index:420;transform:translate(-50%);border:1px solid #45474c;border-radius:8px;padding:6px 10px;background:#202124f2;color:#e8eaed;font:600 11px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;box-shadow:0 4px 14px #0000004d;cursor:copy;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.klen-measure-card{position:absolute;z-index:600;right:18px;top:72px;width:min(300px,calc(100vw - 28px));padding:12px;border:1px solid #45474c;border-radius:12px;background:#202124f7;box-shadow:0 10px 30px #00000057}.klen-measure-card-title{color:#9aa0a6;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.klen-measure-card strong{display:block;margin:5px 0 4px;font-size:21px;color:#f1f3f4}.klen-measure-card-hint{color:#bdc1c6;font-size:11px;line-height:1.35}.klen-measure-card-actions{display:flex;gap:7px;margin-top:10px}.klen-measure-card-actions button{border:1px solid #45474c;border-radius:7px;padding:6px 9px;background:#292a2d;color:#e8eaed;cursor:pointer}.klen-batch-bar{position:absolute;z-index:610;left:50%;top:68px;transform:translate(-50%);display:flex;align-items:center;gap:7px;max-width:calc(100vw - 24px);padding:7px;border:1px solid #45474c;border-radius:11px;background:#202124f7;box-shadow:0 8px 24px #0000004d}.klen-batch-bar strong{padding:0 5px;white-space:nowrap;font-size:12px}.klen-batch-bar button{border:1px solid #45474c;border-radius:7px;padding:6px 8px;background:#292a2d;color:#e8eaed;cursor:pointer;white-space:nowrap}.klen-batch-bar button:disabled{opacity:.45;cursor:default}.layer-object-item.klen-multi-selected{background:#1a73e81f!important;outline:1px solid rgba(26,115,232,.35)}.klen-lock-button{flex:0 0 auto;width:28px;min-width:28px;height:28px;border:0;border-radius:6px;background:transparent;cursor:pointer;opacity:.75}.klen-lock-button:hover{background:#45474c;opacity:1}.klen-lock-button.locked{opacity:1}.layer-list-item.klen-layer-locked .layer-list-name,.layer-object-item.klen-object-locked .layer-object-name{opacity:.72}.klen-editing-context-menu{position:fixed;z-index:11050;width:238px;padding:7px;border:1px solid #45474c;border-radius:10px;background:#202124fc;box-shadow:0 14px 36px #0000006b}.klen-context-title{padding:6px 8px 7px;color:#9aa0a6;font-size:10px;font-weight:800;letter-spacing:.08em}.klen-editing-context-menu button{display:block;width:100%;border:0;border-radius:7px;padding:8px 9px;background:transparent;color:#e8eaed;text-align:left;cursor:pointer}.klen-editing-context-menu button:hover:not(:disabled){background:#35363a}.klen-editing-context-menu button:disabled{opacity:.4;cursor:default}.klen-editing-context-menu button.danger{color:#b3261e}.klen-editing-context-menu .mobile-only-action{display:none}.klen-bookmarks-panel{position:fixed;z-index:11040;right:14px;top:64px;width:min(360px,calc(100vw - 28px));max-height:min(620px,calc(100vh - 82px));overflow:hidden;border:1px solid #45474c;border-radius:14px;background:#202124;box-shadow:0 18px 50px #00000073}.klen-bookmarks-header{display:flex;align-items:center;justify-content:space-between;padding:13px 14px 10px;border-bottom:1px solid #3c4043}.klen-bookmarks-header div{display:flex;flex-direction:column;gap:2px}.klen-bookmarks-header span{color:#9aa0a6;font-size:9px;font-weight:800;letter-spacing:.09em}.klen-bookmarks-header strong{font-size:15px}.klen-bookmarks-header button{border:0;background:transparent;font-size:22px;cursor:pointer}.klen-bookmarks-add-row{padding:10px 12px;border-bottom:1px solid #3c4043}.klen-bookmarks-add-row button{width:100%;border:1px solid #45474c;border-radius:8px;padding:8px;background:#292a2d;color:#e8eaed;cursor:pointer}.klen-bookmarks-list{max-height:480px;overflow:auto;padding:7px}.klen-bookmarks-empty{padding:22px 12px;color:#9aa0a6;text-align:center;font-size:12px}.klen-bookmark-row{display:grid;grid-template-columns:minmax(0,1fr) 32px;gap:5px;align-items:stretch}.klen-bookmark-go{min-width:0;border:0;border-radius:8px;padding:9px;background:transparent;text-align:left;cursor:pointer}.klen-bookmark-go:hover{background:#35363a}.klen-bookmark-go strong,.klen-bookmark-go span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.klen-bookmark-go span{margin-top:2px;color:#9aa0a6;font-size:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.klen-bookmark-remove{border:0;border-radius:8px;background:transparent;cursor:pointer;font-size:18px}.klen-bookmark-remove:hover{background:#ea433524;color:#f28b82}#properties-panel.klen-object-locked:before{content:"🔒 Об'єкт заблоковано — перегляд доступний, редагування вимкнено";display:block;margin:10px 12px 0;padding:8px 10px;border-radius:8px;background:#fbbc041a;color:#fdd663;font-size:11px;line-height:1.35}.hidden{display:none!important}@media(max-width:768px){.klen-coordinate-hud{bottom:calc(70px + env(safe-area-inset-bottom));font-size:10px}.klen-measure-card{top:60px;right:10px}.klen-batch-bar{top:auto;bottom:calc(72px + env(safe-area-inset-bottom));width:calc(100vw - 20px);overflow-x:auto;justify-content:flex-start}.klen-editing-context-menu.mobile-sheet{left:0!important;right:0;top:auto!important;bottom:0;width:100%;padding:10px 10px calc(10px + env(safe-area-inset-bottom));border-radius:18px 18px 0 0;box-shadow:0 -12px 34px #2021243d}.klen-editing-context-menu.mobile-sheet .mobile-only-action{display:block;margin-top:5px;text-align:center}.klen-editing-context-menu.mobile-sheet button{padding:12px;font-size:14px}.klen-bookmarks-panel{top:auto;right:0;bottom:0;width:100%;max-height:78vh;border-radius:18px 18px 0 0}}.klen-properties-actions{display:flex;gap:7px;padding:8px 12px;border-bottom:1px solid rgba(128,134,139,.2)}.klen-properties-actions button{flex:1;border:1px solid #45474c;border-radius:7px;padding:7px 8px;background:#292a2d;color:#e8eaed;cursor:pointer;font-size:11px}.klen-properties-actions button:hover:not(:disabled){background:#35363a}.klen-properties-actions button:disabled{opacity:.45;cursor:default}.klen-mobile-tools-button,.klen-mobile-tools-sheet,.klen-mobile-tools-backdrop{display:none}@media(max-width:768px){.klen-editing-toolbar,.klen-editing-divider{display:none!important}.klen-mobile-tools-button{display:inline-flex!important;flex:0 0 auto;min-width:68px;min-height:44px;border-color:#8ab4f838}.klen-mobile-tools-backdrop{position:fixed;inset:0 0 calc(var(--mobile-toolbar-height, 62px) + var(--mobile-safe-bottom, 0px)) 0;z-index:11070;display:block;border:0;background:#0000007a;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.klen-mobile-tools-sheet{position:fixed;right:10px;bottom:calc(var(--mobile-toolbar-height, 62px) + var(--mobile-safe-bottom, 0px) + 10px);left:10px;z-index:11080;display:block;overflow:hidden;border:1px solid #45474c;border-radius:16px;background:#202124fb;box-shadow:0 -10px 36px #0000006b;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.klen-mobile-tools-header{display:flex;align-items:center;justify-content:space-between;min-height:58px;padding:10px 12px 9px 14px;border-bottom:1px solid #3c4043}.klen-mobile-tools-header>div{display:flex;flex-direction:column;gap:2px}.klen-mobile-tools-header span{color:#9aa0a6;font-size:9px;font-weight:800;letter-spacing:.09em}.klen-mobile-tools-header strong{color:#f1f3f4;font-size:15px}.klen-mobile-tools-header>button{width:38px;height:38px;border:0;border-radius:10px;background:#292a2d;color:#e8eaed;font-size:24px;line-height:1;touch-action:manipulation}.klen-mobile-tools-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:10px}.klen-mobile-tools-grid>button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:0;min-height:64px;padding:8px 5px;border:1px solid #45474c;border-radius:11px;background:#292a2d;color:#e8eaed;touch-action:manipulation}.klen-mobile-tools-grid>button strong{overflow:hidden;max-width:100%;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.klen-mobile-tools-grid>button span{overflow:hidden;max-width:100%;color:#9aa0a6;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.klen-mobile-tools-grid>button.active{border-color:#8ab4f88c;background:#394457;color:#a8c7fa}.klen-mobile-tools-grid>button.active span{color:#c2d7fa}.klen-mobile-tools-hint{padding:0 12px 11px;color:#9aa0a6;font-size:10px;line-height:1.35;text-align:center}.klen-mobile-tools-sheet.hidden,.klen-mobile-tools-backdrop.hidden{display:none!important}}@media(max-width:360px){.klen-mobile-tools-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}#klen-bookmarks-close.klen-panel-close{display:grid;place-items:center;flex:0 0 auto;width:32px;height:32px;padding:0;border:1px solid rgba(148,163,184,.22);border-radius:9px;background:#1e293bd1;color:#e8eaed;font-size:21px;line-height:1;cursor:pointer}#klen-bookmarks-close.klen-panel-close:hover{background:#334155f5;color:#fff}#klen-bookmarks-close.klen-panel-close:focus-visible{outline:2px solid #60a5fa;outline-offset:2px}.layer-list-item{grid-template-columns:28px 28px 25px minmax(0,1fr) 58px auto}@media(max-width:720px){.layer-list-item{grid-template-columns:44px 38px 32px minmax(0,1fr) 58px auto}}.klen-geometry-toolbar{display:flex;align-items:center;gap:4px}.klen-geometry-toolbar .tool-button.active,#klen-property-split.active,[data-klen-geometry-mobile].active{box-shadow:inset 0 0 0 2px #00d8ffb3}.klen-split-hint{position:fixed;z-index:13050;top:max(14px,env(safe-area-inset-top));left:50%;display:flex;align-items:center;gap:10px;max-width:min(620px,calc(100vw - 28px));padding:10px 12px;transform:translate(-50%);border:1px solid rgba(0,216,255,.34);border-radius:14px;background:#0c1218f0;color:#f4f8fb;box-shadow:0 14px 44px #00000057;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.klen-split-hint.hidden{display:none!important}.klen-split-hint-icon{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:10px;background:#00d8ff24;color:#77eaff;font-size:18px}.klen-split-hint>div:nth-child(2){display:grid;gap:2px;min-width:0}.klen-split-hint strong{font-size:13px;line-height:1.2}.klen-split-hint span{color:#f4f8fbbd;font-size:12px;line-height:1.35}.klen-split-hint button{width:32px;height:32px;margin-left:auto;flex:0 0 32px;border:0;border-radius:9px;background:#ffffff14;color:#fff;font:inherit;font-size:18px;cursor:pointer}#klen-batch-merge:disabled,#klen-property-split:disabled,.klen-geometry-toolbar button:disabled,[data-klen-geometry-mobile]:disabled{opacity:.42;cursor:not-allowed}@media(max-width:760px){.klen-geometry-toolbar,.klen-geometry-divider{display:none!important}.klen-split-hint{top:max(10px,env(safe-area-inset-top));width:calc(100vw - 20px);max-width:none;padding:9px 10px}.klen-split-hint span{font-size:11.5px}}.klen-v30-backdrop{position:fixed;inset:0;z-index:12500;background:#0308129e;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;padding:24px}.klen-v30-backdrop.hidden{display:none}.klen-v30-modal{width:min(760px,calc(100vw - 32px));max-height:min(820px,calc(100vh - 48px));display:flex;flex-direction:column;background:var(--panel-bg,#111827);color:var(--text-primary,#f8fafc);border:1px solid rgba(148,163,184,.22);border-radius:18px;box-shadow:0 28px 90px #0000007a;overflow:hidden}.klen-v30-header{display:flex;justify-content:space-between;gap:16px;align-items:center;padding:17px 19px;border-bottom:1px solid rgba(148,163,184,.16)}.klen-v30-header>div{display:grid;gap:2px}.klen-v30-header span{font-size:10px;letter-spacing:.16em;color:#8ab4f8}.klen-v30-header strong{font-size:19px}.klen-v30-header small{font-size:12px;color:#94a3b8}.klen-v30-header button{border:0;background:transparent;color:inherit;font-size:28px;cursor:pointer}.klen-v30-tabs{display:flex;gap:4px;padding:8px 12px;border-bottom:1px solid rgba(148,163,184,.13);overflow:auto}.klen-v30-tabs button{border:0;border-radius:9px;padding:9px 13px;background:transparent;color:#94a3b8;font-weight:700;cursor:pointer;white-space:nowrap}.klen-v30-tabs button.active{background:#3b82f62b;color:#bfdbfe}.klen-v30-body{overflow:auto;padding:18px}.klen-v30-panel{display:none;gap:14px}.klen-v30-panel.active{display:grid}.klen-v30-grid{display:grid;gap:12px}.klen-v30-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.klen-v30-grid label,.klen-v30-card label{display:grid;gap:6px;font-size:12px;color:#cbd5e1}.klen-v30-grid label.wide{grid-column:1/-1}.klen-v30-grid label.check{display:flex;align-items:center;gap:8px;min-height:38px}.klen-v30-grid input[type=text],.klen-v30-grid input[type=number],.klen-v30-grid select,.klen-v30-card select{width:100%;box-sizing:border-box;border:1px solid rgba(148,163,184,.22);background:#0f172a94;color:inherit;border-radius:9px;padding:9px}.klen-v30-grid input[type=color]{width:100%;height:38px;border:1px solid rgba(148,163,184,.22);background:transparent;border-radius:9px;padding:3px}.klen-v30-grid input[type=range]{width:calc(100% - 44px)}.klen-v30-grid output{display:inline-block;width:38px;text-align:right;color:#93c5fd}.klen-v30-card{display:grid;gap:10px;border:1px solid rgba(148,163,184,.16);border-radius:12px;padding:12px;background:#0f172a47}.klen-v30-actions-row{display:flex;gap:8px;flex-wrap:wrap}.klen-v30-actions-row button,.klen-v30-template-head button,.klen-v30-template-list button,.klen-v30-panel>.primary{border:1px solid rgba(148,163,184,.22);border-radius:9px;padding:9px 12px;background:#1e293bb3;color:inherit;font-weight:700;cursor:pointer}.klen-v30-panel>.primary{background:#2563eb;border-color:#3b82f6}.klen-v30-help{margin:0;color:#94a3b8;font-size:12px;line-height:1.45}.klen-v30-template-head{display:flex;justify-content:space-between;gap:12px;align-items:center}.klen-v30-template-head>div{display:grid;gap:3px}.klen-v30-template-head small{color:#94a3b8}.klen-v30-template-list{display:grid;gap:8px}.klen-v30-template-list article{display:flex;justify-content:space-between;gap:10px;align-items:center;border:1px solid rgba(148,163,184,.16);border-radius:11px;padding:11px;background:#0f172a4d}.klen-v30-template-list article>div:first-child{display:grid;gap:3px}.klen-v30-template-list article span{font-size:11px;color:#94a3b8}.klen-v30-template-list article>div:last-child{display:flex;gap:6px}.klen-v30-template-list button.danger{color:#fecaca;border-color:#f8717147}.klen-v30-empty{padding:28px;text-align:center;color:#94a3b8;border:1px dashed rgba(148,163,184,.2);border-radius:12px}@media(max-width:720px){.klen-v30-backdrop{padding:10px;align-items:end}.klen-v30-modal{width:100%;max-height:calc(100dvh - 88px);border-radius:18px 18px 8px 8px}.klen-v30-grid.two{grid-template-columns:1fr}.klen-v30-grid label.wide{grid-column:auto}.klen-v30-body{padding:14px}.klen-v30-toolbar-group{display:none!important}.klen-v30-template-list article{align-items:flex-start}}.klen-v30-toolbar-group{flex:0 0 auto}#klen-v30-style-button.klen-v30-style-launcher{min-width:44px;padding-inline:9px}@media(max-width:1550px)and (min-width:761px){#klen-v30-style-button .klen-v30-style-launcher-label{display:none}#klen-v30-style-button.klen-v30-style-launcher{min-width:40px;width:40px;padding-inline:0;justify-content:center}}.klen-v30-properties-presets{position:relative}.klen-v30-property-preset-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:8px}.klen-v30-property-preset-actions .danger{grid-column:1 / -1;border-color:#f8717152;color:#fecaca}.klen-v30-preset-pulse{animation:klen-v30-preset-pulse .9s ease}@keyframes klen-v30-preset-pulse{0%,to{box-shadow:none}45%{box-shadow:inset 0 0 0 1px #60a5fab8,0 0 18px #3b82f629}}.klen-v3b-backdrop{position:fixed;inset:0;z-index:12050;background:#02060cad;display:grid;place-items:center;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.klen-v3b-backdrop.hidden{display:none}.klen-v3b-modal{width:min(760px,100%);max-height:min(860px,calc(100dvh - 32px));overflow:hidden;border:1px solid rgba(120,160,210,.25);border-radius:18px;background:#0c1513;color:#e9f7f1;box-shadow:0 30px 90px #0000007a;display:flex;flex-direction:column}.klen-v3b-modal>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid rgba(120,160,210,.18)}.klen-v3b-modal>header div{display:grid;gap:2px}.klen-v3b-modal>header span,.klen-v3b-modal>header small{font-size:11px;color:#87b3a4}.klen-v3b-modal>header strong{font-size:20px}.klen-v3b-modal>header button{width:38px;height:38px;border:0;border-radius:10px;background:#25303d;color:#fff;font-size:22px}.klen-v3b-modal>nav{display:flex;gap:8px;padding:10px 14px;border-bottom:1px solid rgba(120,160,210,.15)}.klen-v3b-modal>nav button,.klen-v3b-actions button,.klen-v3b-drop button,.klen-v3b-card button,.klen-v3b-modal .primary{border:1px solid rgba(120,160,210,.28);background:#16231f;color:#eefcf6;border-radius:10px;padding:10px 13px;font-weight:700}.klen-v3b-modal>nav button.active,.klen-v3b-modal .primary{background:#2878ec;border-color:#4c93ff}.klen-v3b-body{overflow:auto;padding:16px}.klen-v3b-body>section{display:none;gap:14px}.klen-v3b-body>section.active{display:grid}.klen-v3b-drop{min-height:170px;border:1.5px dashed rgba(112,181,255,.4);border-radius:16px;display:grid;place-items:center;align-content:center;gap:8px;background:#22546917;text-align:center;padding:22px}.klen-v3b-drop.drag{border-color:#48a5ff;background:#247bbe29}.klen-v3b-drop span,.klen-v3b-card p,.klen-v3b-preview small{color:#9ab7ad}.klen-v3b-card,.klen-v3b-preview{padding:14px;border:1px solid rgba(120,160,210,.18);border-radius:13px;background:#0f1d19d1}.klen-v3b-card label,.klen-v3b-grid label{display:grid;gap:7px;font-size:12px;color:#b8d0c7}.klen-v3b-modal input,.klen-v3b-modal select{width:100%;border:1px solid rgba(120,160,210,.25);border-radius:9px;padding:10px;background:#101c22;color:#fff}.klen-v3b-grid{display:grid;gap:12px}.klen-v3b-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.klen-v3b-preview.muted{color:#a8c0b7}.klen-v3b-preview.error{color:#ff9c9c;border-color:#ff505059}.klen-v3b-counts{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:10px 0}.klen-v3b-counts span{padding:8px;background:#111f1b;border-radius:8px;font-size:12px}.klen-v3b-actions{display:flex;gap:8px;flex-wrap:wrap}.klen-v3b-actions .primary{margin-left:auto}.klen-v3b-grid .inline{display:grid;grid-template-columns:1fr 90px;gap:6px}.klen-v3b-data-group{flex:0 0 auto}@media(max-width:1450px)and (min-width:761px){#klen-v3b-data-group .tool-button span:last-child{display:none}#klen-v3b-data-group .tool-button{width:40px;min-width:40px;padding-inline:0;justify-content:center}}@media(max-width:760px){.klen-v3b-backdrop{padding:8px;align-items:end}.klen-v3b-modal{max-height:88dvh;border-radius:18px 18px 0 0}.klen-v3b-grid.two{grid-template-columns:1fr}.klen-v3b-counts{grid-template-columns:1fr 1fr}.klen-v3b-actions{display:grid;grid-template-columns:1fr 1fr}.klen-v3b-actions .primary{grid-column:1/-1;margin-left:0}}.klen-v3b-publish-backdrop{position:fixed;inset:0;z-index:12060;background:#02060cb3;display:grid;place-items:center;padding:20px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.klen-v3b-publish-backdrop.hidden{display:none}.klen-v3b-publish-modal{width:min(800px,100%);max-height:min(880px,calc(100dvh - 32px));overflow:hidden;background:#0c1513;color:#edf8f4;border:1px solid rgba(110,170,150,.25);border-radius:18px;box-shadow:0 30px 90px #0008;display:flex;flex-direction:column}.klen-v3b-publish-modal>header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #ffffff18}.klen-v3b-publish-modal>header div{display:grid}.klen-v3b-publish-modal>header span,.klen-v3b-publish-modal>header small{font-size:11px;color:#8bb6a8}.klen-v3b-publish-modal>header strong{font-size:20px}.klen-v3b-publish-modal>header button{width:38px;height:38px;border:0;border-radius:10px;background:#27313d;color:#fff;font-size:22px}.klen-v3b-publish-modal>nav{padding:10px 14px;display:flex;gap:7px;border-bottom:1px solid #ffffff14}.klen-v3b-publish-modal>nav button,.v3pub-actions button,.klen-v3b-publish-modal .primary{border:1px solid #ffffff28;background:#16231f;color:#f1fff9;border-radius:10px;padding:10px 13px;font-weight:700}.klen-v3b-publish-modal>nav button.active,.klen-v3b-publish-modal .primary{background:#2878ec;border-color:#5799ff}.klen-v3b-publish-body{overflow:auto;padding:16px}.klen-v3b-publish-body>section{display:none;gap:14px}.klen-v3b-publish-body>section.active{display:grid}.v3pub-card,.v3pub-note,.v3pub-status{padding:14px;border-radius:13px;border:1px solid #ffffff18;background:#101d19}.v3pub-card p,.v3pub-note{color:#9db8ae}.v3pub-grid{display:grid;gap:12px}.v3pub-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.v3pub-grid label{display:grid;gap:6px;font-size:12px;color:#b5cec5}.v3pub-grid label.wide{grid-column:1/-1}.v3pub-grid label.check{grid-template-columns:auto 1fr;align-items:center}.v3pub-grid label.check input{width:auto}.klen-v3b-publish-modal input,.klen-v3b-publish-modal select{width:100%;padding:10px;border-radius:9px;border:1px solid #ffffff25;background:#111d23;color:#fff}.v3pub-actions{display:flex;gap:8px;justify-content:flex-end}.v3pub-status.success{color:#8cf0b4}.v3pub-status.error{color:#ff9d9d}.v3print-mini{height:180px;border:1px solid #cdd4d0;background:#f4f4f0;color:#111827;padding:14px;display:grid;grid-template-rows:auto 1fr auto}.v3print-mini div{display:grid;place-items:center;background:#dfe5e2;margin:8px 0;font-weight:800}.klen-v3b-publish-group{flex:0 0 auto}@media(max-width:1500px)and (min-width:761px){#klen-v3b-publish-button span:last-child{display:none}#klen-v3b-publish-button{width:40px;min-width:40px;padding:0;justify-content:center}}@media(max-width:760px){.klen-v3b-publish-backdrop{padding:8px;align-items:end}.klen-v3b-publish-modal{max-height:90dvh;border-radius:18px 18px 0 0}.klen-v3b-publish-modal>nav{overflow:auto}.v3pub-grid.two{grid-template-columns:1fr}.v3pub-grid label.wide{grid-column:auto}.v3pub-actions{display:grid;grid-template-columns:1fr}.v3print-mini{height:140px}}.v3pub-pretty-link-card{display:grid;gap:9px}.v3pub-pretty-link-field{display:flex!important;align-items:center;gap:0!important;overflow:hidden;border:1px solid rgba(148,163,184,.26);border-radius:10px;background:#0f172aa8}.v3pub-pretty-link-field>span{padding:10px 3px 10px 11px;color:#94a3b8;font-size:12px}.v3pub-pretty-link-field>input{min-width:0;flex:1;border:0!important;background:transparent!important}.v3pub-pretty-preview{padding:8px 10px;border-radius:8px;background:#2563eb14;color:#93c5fd;font-size:12px;overflow-wrap:anywhere}.r44-collab-pill{position:fixed;right:18px;bottom:18px;top:auto;z-index:4000;display:flex;align-items:center;gap:8px;min-height:36px;padding:0 12px;border:1px solid rgba(255,255,255,.12);border-radius:18px;background:#191b1ff0;color:#f1f3f4;box-shadow:0 8px 28px #00000047;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.r44-collab-pill:hover,.r44-collab-pill.active{background:#292b30fa}.r44-collab-pill.offline .r44-live-dot{background:#9aa0a6;box-shadow:none}.r44-live-dot,.r44-person-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#4fd18b;box-shadow:0 0 0 3px #4fd18b1f}.r44-unread{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:10px;background:#ff5d67;color:#fff;font-size:10px;font-weight:700}.r44-unread.hidden,.r44-collab-panel.hidden{display:none!important}.r44-collab-panel,.r44-collab-panel *,.r44-collab-pill,.r44-collab-pill *{box-sizing:border-box}.r44-collab-panel{position:fixed;right:18px;bottom:64px;top:auto;z-index:4001;display:flex;flex-direction:column;width:min(390px,calc(100vw - 24px));max-height:min(680px,calc(100vh - 92px));overflow:hidden;border:1px solid #3a3d43;border-radius:14px;background:#202124;color:#e8eaed;box-shadow:0 20px 64px #0000006b;overscroll-behavior:contain}.r44-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 15px;border-bottom:1px solid #35363a;background:#202124}.r44-head>div{min-width:0}.r44-head strong,.r44-head small{display:block}.r44-head strong{font-size:14px}.r44-head small{margin-top:3px;overflow:hidden;color:#9aa0a6;font-size:11px;text-overflow:ellipsis;white-space:nowrap}.r44-head button{width:34px;height:34px;flex:0 0 auto;border-radius:9px;border:1px solid rgba(255,255,255,.1);background:#303134;color:#e8eaed;font-size:18px;line-height:1;cursor:pointer}.r44-section-title{margin-bottom:9px;color:#9aa0a6;font-size:10px;font-weight:800;letter-spacing:.08em}.r44-presence-section{padding:12px 14px;border-bottom:1px solid #35363a}.r44-presence-list{display:flex;flex-direction:column;gap:7px;max-height:150px;overflow:auto}.r44-person{display:flex;align-items:center;gap:9px;min-height:40px;padding:5px 6px;border-radius:9px}.r44-person.me{background:#4285f414}.r44-avatar{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 auto;border-radius:50%;background:hsl(var(--r44-h) 55% 42%);color:#fff;font-size:10px;font-weight:800}.r44-person-text{display:flex;flex:1;flex-direction:column;min-width:0}.r44-person-text strong,.r44-person-text small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.r44-person-text strong{font-size:12px}.r44-person-text small{margin-top:2px;color:#9aa0a6;font-size:10px}.r44-person-dot{width:7px;height:7px}.r44-chat-section{display:flex;flex:1;flex-direction:column;min-height:260px;padding:12px 14px 14px}.r44-chat-list{display:flex;flex:1;flex-direction:column;gap:8px;min-height:120px;max-height:360px;overflow:auto;padding-right:3px}.r44-message{align-self:flex-start;max-width:90%;padding:8px 10px;border:1px solid #3a3d43;border-radius:10px 10px 10px 3px;background:#292a2d;font-size:12px;line-height:1.42;overflow-wrap:anywhere}.r44-message.mine{align-self:flex-end;border-radius:10px 10px 3px;background:#303d55}.r44-message-meta{display:flex;justify-content:space-between;gap:12px;margin-bottom:4px;color:#bdc1c6;font-size:9px}.r44-message-meta time{color:#80868b}.r44-chat-form{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.r44-chat-form textarea{min-height:44px;max-height:100px;resize:vertical;padding:8px 9px;border:1px solid #46494f;border-radius:8px;outline:none;background:#17181b;color:#f1f3f4}.r44-chat-form textarea:focus{border-color:#6ea0f8}.r44-chat-form button{align-self:end;min-height:36px;padding:0 11px;border-radius:8px;background:#4285f4;color:#fff;font-size:11px;font-weight:700;cursor:pointer}.r44-muted{padding:8px 2px;color:#9aa0a6;font-size:11px}.r44-chat-empty{margin:auto;text-align:center}.r44-remote-cursor{--r44-h: 210;position:absolute;left:0;top:0;z-index:25;display:flex;align-items:center;gap:3px;pointer-events:none;transform-origin:0 0;will-change:transform}.r44-cursor-arrow{color:hsl(var(--r44-h) 80% 62%);font-size:19px;line-height:1;filter:drop-shadow(0 1px 2px rgba(0,0,0,.65));transform:rotate(-38deg)}.r44-cursor-name{padding:3px 5px;border-radius:5px;background:hsl(var(--r44-h) 54% 35% / .94);color:#fff;font-size:9px;font-weight:700;white-space:nowrap;box-shadow:0 2px 7px #00000047}@media(max-width:700px){.r44-collab-pill{right:12px;bottom:12px;min-height:40px;z-index:5000}.r44-collab-panel{inset:auto 8px 60px;width:auto;max-height:min(78vh,calc(100vh - 72px));border-radius:16px;z-index:5001}.r44-chat-list{max-height:32vh}}@media(max-width:1180px){.r44-collab-pill{right:14px;bottom:14px;top:auto}.r44-collab-panel{right:14px;bottom:60px;top:auto;width:min(360px,calc(100vw - 20px));max-height:min(72vh,calc(100vh - 84px))}}
