@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Almarai:wght@400;700;800&display=swap";.route-work-orders{border-top:1px solid var(--line);padding-top:20px;margin-top:20px}.route-work-heading{display:flex;align-items:center;gap:9px}.route-work-heading h3{flex:1;font-size:13px;line-height:1.8}.route-work-symbol{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;color:var(--accent);background:var(--accent-soft);flex-shrink:0}.route-work-count{min-width:23px;height:23px;display:grid;place-items:center;border-radius:7px;background:var(--hover);font-size:11px;font-weight:600}.route-work-intro{margin:9px 0 14px;font-size:11px}.route-linked-list{display:grid;gap:10px}.route-work-empty{display:grid;justify-items:center;text-align:center;gap:9px;padding:21px 14px;background:var(--ground);border:1px dashed var(--line);border-radius:12px}.route-work-empty>span{display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--paper);color:var(--muted)}.route-work-empty strong{font-size:12px;line-height:1.8}.route-work-empty p{color:var(--muted);font-size:11px;line-height:1.9;max-width:260px}.route-order-actions{display:grid;grid-template-columns:1fr;gap:8px;margin:14px 0}.route-order-actions>.button{min-height:39px;border-radius:9px;font-size:12px}.route-order-link{padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--paper);min-width:0}.route-order-card-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:9px}.route-order-link code,.route-option-heading code{font:10px Inter,sans-serif;color:var(--muted);direction:ltr}.route-order-link>strong{display:block;font-size:12px;line-height:1.9;overflow-wrap:anywhere}.route-order-link>small{display:block;color:var(--muted);font-size:10px;line-height:1.8;margin-top:4px}.route-order-status{font-size:10px;line-height:1.6;padding:3px 8px;border-radius:6px;background:var(--hover);color:var(--text);white-space:nowrap;font-weight:500}.route-order-status[data-state=todo]{background:var(--accent-soft);color:var(--accent)}.route-order-status[data-state=in_progress]{background:#fff0d6;color:#855400}.route-order-status[data-state=blocked]{background:#ffe5e5;color:#a52c35}.route-order-status[data-state=done]{background:#dcf4e7;color:#23724e}.route-order-status[data-state=cancelled]{background:var(--hover);color:var(--muted)}.route-order-progress{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:13px;font-size:10px;color:var(--muted)}.route-order-progress>span{display:flex;align-items:center;gap:5px;flex:1}.route-order-progress>b{font-weight:500;direction:ltr;color:var(--text)}.route-order-progress-track{flex-basis:100%;height:4px;background:var(--hover);border-radius:5px;overflow:hidden}.route-order-progress-track i{display:block;height:100%;background:var(--accent);border-radius:5px}.route-order-due{display:flex;gap:6px;align-items:center;color:var(--muted);font-size:10px;margin-top:12px}.route-order-edit{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border-top:1px solid var(--line);padding:10px 0 0;margin-top:12px;color:var(--accent);font-size:10px;line-height:1.9;text-align:start}.route-order-edit:hover{text-decoration:underline}.modal.route-order-modal{width:600px;max-width:100%;border-radius:17px}.modal.route-order-modal>header{padding:20px 24px;border-bottom:1px solid var(--line)}.modal.route-order-modal>header h2{font-size:17px}.route-order-picker{padding:20px 24px 0!important}.route-picker-context{display:flex;align-items:center;gap:11px;padding:13px;background:var(--ground);border:1px solid var(--line);border-radius:11px}.route-picker-icon{display:grid;place-items:center;flex-shrink:0;color:var(--accent);background:var(--accent-soft);width:39px;height:39px;border-radius:10px}.route-picker-context>div{flex:1;min-width:0}.route-picker-context small{display:block;font-size:10px;color:var(--muted);margin-bottom:5px}.route-picker-context strong{display:block;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.route-scope-chip{font-size:9px;white-space:nowrap;border:1px solid var(--line);border-radius:6px;padding:5px 7px;color:var(--muted);background:var(--paper)}.route-picker-explanation{margin:12px 0 18px;font-size:11px}.route-order-picker fieldset{border:0;padding:0;min-width:0;margin:0}.route-picker-search>div{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:9px;background:var(--paper);padding-inline:12px;color:var(--muted)}.route-picker-search>div:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.route-picker-search input{border:0;background:transparent;outline:none!important;padding-inline:0;font-size:12px;min-height:42px}.route-picker-list-heading{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin:18px 0 10px}.route-picker-list-heading small{font-size:10px}.route-order-options{display:grid;gap:8px;max-height:258px;overflow:auto;overscroll-behavior:contain;padding:3px;margin:0 -3px 18px;scrollbar-width:thin}.route-order-option{position:relative;display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:10px;background:var(--paper);cursor:pointer;min-width:0}.route-order-option:not(.is-unavailable):hover{border-color:var(--accent)}.route-order-option.is-selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent-soft) 42%,var(--paper));box-shadow:0 0 0 1px var(--accent)}.route-order-option input{width:15px;height:15px;margin:3px 0 0;flex-shrink:0;accent-color:var(--accent)}.route-option-content{flex:1;min-width:0}.route-option-heading{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:6px}.route-option-content>strong{display:block;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.route-option-content>small{display:block;font-size:10px;color:var(--muted);line-height:1.8;margin-top:3px}.route-option-check{color:var(--accent);position:absolute;inset-inline-start:12px;bottom:12px}.route-order-option.is-unavailable{background:var(--ground);cursor:not-allowed}.route-unavailable-reason{display:block;color:var(--muted);font-size:10px;margin-top:8px}.route-picker-empty{display:grid;justify-items:center;gap:9px;padding:22px 12px;margin-bottom:18px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);text-align:center}.route-picker-empty strong{font-size:12px;color:var(--text)}.route-picker-empty p,.route-picker-empty button{font-size:11px}.route-picker-task{margin-bottom:0}.route-picker-task textarea{font-size:12px;min-height:92px;border-radius:9px}.route-picker-task small{font-size:10px;color:var(--muted);line-height:1.8}.route-picker-selection{display:flex;gap:8px;align-items:flex-start;font-size:11px;line-height:1.9;margin-top:14px;padding:10px 12px;border-radius:8px;background:var(--accent-soft);color:var(--accent);overflow-wrap:anywhere}.route-picker-selection svg{margin-top:3px}.route-picker-selection strong{font-weight:600}.route-order-picker footer{position:sticky;bottom:0;background:var(--paper);padding:15px 0!important;margin-top:20px!important;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px;z-index:1}.route-order-picker footer .button{border-radius:8px;min-height:39px}.route-picker-refresh{margin-inline-end:auto}@media(max-width:540px){.modal.route-order-modal{border-radius:14px;max-height:calc(100dvh - 24px)}.modal.route-order-modal>header{padding:15px 16px}.modal.route-order-modal>header h2{font-size:15px}.route-order-picker{padding:15px 16px 0!important}.route-picker-context{padding:10px;gap:8px}.route-scope-chip{display:none}.route-order-picker footer .button{font-size:11px;padding-inline:10px}.route-order-options{max-height:220px}.route-picker-explanation,.route-picker-selection{font-size:10px}}@media(prefers-reduced-motion:no-preference){.route-order-option{transition:border-color .15s,background-color .15s}}.inspector.route-inspector{border-radius:17px}.route-inspector>header .inspector-symbol{background:var(--accent-soft);color:var(--accent);border-radius:12px}.route-inspector-stats{display:grid;grid-template-columns:1.5fr 1fr 1fr;border:1px solid var(--line);border-radius:11px;margin-top:16px;overflow:hidden;background:var(--paper)}.route-inspector-stats>div{display:grid;justify-items:center;align-content:center;gap:6px;min-height:72px;padding:10px 5px;min-width:0}.route-inspector-stats>div+div{border-inline-start:1px solid var(--line)}.route-inspector-stats strong{font-size:17px;font-weight:500;font-variant-numeric:tabular-nums;white-space:nowrap}.route-inspector-stats span{font-size:10px;color:var(--muted)}.record-form.route-order-picker{gap:0}.route-order-picker>.inline-error{margin-top:14px}.route-inspector>header .inspector-symbol svg{color:var(--accent)}.map-workspace .draw-toolbar.map-tool-palette{width:54px;border-radius:30px;background:var(--paper);border:1px solid var(--line);box-shadow:0 4px 18px #17282022;padding:6px;gap:5px;top:50%;transform:translateY(-50%);z-index:810}.map-tool-button{position:relative;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;color:var(--text);padding:0;border:0;background:transparent}.map-tool-button:hover{background:var(--hover)}.map-tool-button.is-active{background:#26382f;color:#fff}.map-tool-with-products{position:relative;display:flex;width:40px;justify-content:center}.map-product-toggle{position:absolute;inset-inline-start:-4px;bottom:-1px;width:15px;height:16px;padding:0;display:grid;place-items:center;border-radius:4px;color:var(--muted);background:var(--paper)}.map-product-toggle:hover,.map-product-toggle[aria-expanded=true]{color:var(--accent);background:var(--accent-soft)}.map-tool-palette>.map-bookmarks{display:flex;justify-content:center;width:40px}.map-workspace .map-tool-palette .map-bookmark-toggle{width:40px;height:40px;border-radius:50%}.map-tool-palette .map-product-panel{position:fixed;left:68px;top:50%;transform:translateY(-50%);width:min(650px,calc(100vw - 108px));max-height:min(740px,calc(100dvh - 100px));display:flex;flex-direction:column;background:var(--paper);color:var(--text);border:1px solid var(--line);box-shadow:0 9px 36px #14251b28;border-radius:16px;overflow:hidden;direction:inherit;text-align:start}html[dir=ltr] .map-tool-palette .map-product-panel{left:auto;right:68px}.map-product-panel>header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px 22px 12px;gap:16px}.map-product-panel h2{font-size:17px}.map-product-panel header p{font-size:11px;color:var(--muted);line-height:1.9;margin-top:5px}.map-product-search{display:flex;align-items:center;gap:10px;margin:0 20px 12px;color:var(--muted);background:var(--ground);border:1px solid var(--line);border-radius:9px;padding-inline:12px}.map-product-search input{background:transparent;border:0;outline:none!important;font-size:12px;padding-inline:0;min-height:40px}.map-product-search:focus-within{border-color:var(--accent)}.map-product-tabs{display:flex;flex-shrink:0;overflow:auto;padding-inline:14px;border-bottom:1px solid var(--line);scrollbar-width:thin}.map-product-tabs button{font-size:12px;white-space:nowrap;padding:12px 14px;border-bottom:2px solid transparent;color:var(--muted)}.map-product-tabs button[aria-pressed=true]{border-color:var(--accent);color:var(--accent);font-weight:700}.map-product-list{min-height:100px;overflow:auto;overscroll-behavior:contain;flex:1;padding:8px 10px 16px;scrollbar-width:thin}.map-product-list>h3{font-size:10px;font-weight:400;color:var(--muted);padding:10px 12px 7px}.map-product-row{display:flex;align-items:center;gap:12px;width:100%;padding:11px 13px;border-radius:7px;min-height:46px;text-align:start;color:var(--text)}.map-product-row:hover,.map-product-row:focus-visible{background:var(--hover)}.map-product-row>svg{color:var(--muted)}.map-product-row>span:first-of-type{flex:1;min-width:0}.map-product-row strong{font-size:12px;font-weight:500;line-height:1.8;overflow-wrap:anywhere}.map-product-row small{display:block;font-size:9px;color:var(--muted);margin-top:3px}.map-product-spec{font-size:10px;color:var(--muted);direction:ltr;white-space:nowrap}.map-product-price{font-size:11px;color:var(--muted);white-space:nowrap;text-align:end}.map-product-empty{display:grid;justify-items:center;gap:12px;text-align:center;color:var(--muted);padding:35px 15px}.map-product-empty strong{font-size:13px;color:var(--text)}.map-product-empty p{font-size:11px}.map-product-panel>footer{padding:11px 20px;border-top:1px solid var(--line);font-size:10px;color:var(--muted);line-height:1.8;background:var(--ground)}.map-multi-summary{position:absolute;left:50%;bottom:22px;transform:translate(-50%);z-index:700;display:flex;align-items:center;gap:12px;padding:12px;background:var(--paper);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);max-width:calc(100% - 140px);font-size:12px}.map-multi-summary>span{line-height:1.8}.is-multi-selected .map-node{outline:3px solid #1858e8;outline-offset:3px}.mode-multi .leaflet-interactive,.mode-note .map-canvas{cursor:crosshair}@media(max-width:760px){.map-workspace .draw-toolbar.map-tool-palette{width:44px;padding:5px;gap:2px;left:8px}.map-tool-button,.map-tool-with-products,.map-tool-palette>.map-bookmarks{width:32px}.map-tool-button,.map-workspace .map-tool-palette .map-bookmark-toggle{width:32px;height:35px}.map-tool-button svg{width:19px;height:19px}.map-product-toggle{inset-inline-start:-3px;width:12px}.map-tool-palette .map-product-panel,html[dir=ltr] .map-tool-palette .map-product-panel{position:fixed;left:48px;right:auto;width:calc(100vw - 76px);max-height:calc(100dvh - 100px);top:50%;transform:translateY(-50%);border-radius:12px}.map-product-panel>header{padding:14px 12px 8px;gap:5px}.map-product-panel h2{font-size:14px}.map-product-panel header p{font-size:9px}.map-product-search{margin:0 10px 8px;padding-inline:8px}.map-product-search input{font-size:11px}.map-product-tabs{padding-inline:4px}.map-product-tabs button{font-size:11px;padding:10px}.map-product-list{padding:6px}.map-product-row{padding:10px 7px;gap:7px;flex-wrap:wrap}.map-product-row>span:first-of-type{flex-basis:calc(100% - 35px)}.map-product-row strong{font-size:11px}.map-product-spec{margin-inline-start:26px}.map-product-row>svg{width:16px;height:16px}.map-product-price{margin-inline-start:auto;font-size:10px}.map-product-panel>footer{font-size:9px;padding:8px 12px}.map-multi-summary{bottom:75px;max-width:calc(100% - 70px);flex-wrap:wrap;gap:8px;padding:10px}.map-multi-summary>span{flex-basis:100%;font-size:11px}}@media(max-height:600px){.map-workspace .draw-toolbar.map-tool-palette{top:50%;max-height:calc(100dvh - 24px);overflow:visible;gap:0;padding:4px}.map-tool-button,.map-workspace .map-tool-palette .map-bookmark-toggle{height:30px;width:32px}.map-tool-with-products,.map-tool-palette>.map-bookmarks{width:32px}.map-workspace .draw-toolbar.map-tool-palette{width:42px}.map-tool-palette .map-product-panel{max-height:calc(100dvh - 32px)}.map-product-panel>header{padding-block:10px}.map-product-panel header p{display:none}.map-product-search{margin-bottom:5px}.map-product-tabs button{padding-block:8px}.map-multi-summary{bottom:12px}}.map-tool-palette .map-product-panel[dir=rtl]{direction:rtl}.map-tool-palette .map-product-panel[dir=ltr]{direction:ltr}@media(min-width:761px){.map-product-row{min-height:37px;padding-block:6px}.map-product-row>span:first-of-type small{display:inline;font-size:9px;margin-inline-start:8px}.map-product-row strong{font-size:12px}}.map-tool-button:focus-visible:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 16px);top:50%;transform:translateY(-50%);background:#26382f;color:#fff;border-radius:6px;padding:8px 11px;font-size:11px;line-height:1.7;white-space:nowrap;pointer-events:none;z-index:2;box-shadow:0 3px 12px #0002}@media(hover:hover){.map-tool-button:hover:after{content:attr(data-tooltip);position:absolute;left:calc(100% + 16px);top:50%;transform:translateY(-50%);background:#26382f;color:#fff;border-radius:6px;padding:8px 11px;font-size:11px;line-height:1.7;white-space:nowrap;pointer-events:none;z-index:2;box-shadow:0 3px 12px #0002}}html[dir=ltr] .map-tool-button:after{left:auto;right:calc(100% + 16px)}html[dir=rtl] .map-tool-button:after{direction:rtl}.map-tool-palette:has(.map-product-panel) .map-tool-button:after{display:none}@media(max-width:760px){.map-tool-button:after{display:none}}@media(min-width:761px){.map-product-row>span:first-of-type{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.map-product-row>span:first-of-type small{margin:0;direction:ltr}}@media(max-width:760px){html[dir=ltr] .map-tool-palette .map-product-panel{left:auto;right:48px}}.map-workspace .inspector.floating-route-card{width:480px;max-width:calc(100% - 32px);top:94px;bottom:auto;max-height:calc(100% - 112px);border-radius:17px;box-shadow:0 9px 28px #1830202b}.floating-route-card>header{padding:17px 19px;gap:10px;border-bottom:0}.floating-route-card>header .icon-button{margin:0;align-self:center}.floating-route-icon{display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)!important;border-radius:15px;width:48px;height:48px;flex-shrink:0}.floating-route-title{flex:1;min-width:0}.floating-route-title>strong{font-size:20px;font-weight:600;display:block;overflow-wrap:anywhere}.floating-route-title>small{font-size:10px;display:block;margin-top:4px}.floating-route-title form{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.floating-route-title form input{flex:1;min-width:100px}.floating-route-title form button{font-size:10px}.floating-route-body{padding:0 19px 15px;overflow:auto;min-height:0}.floating-route-selects{display:flex;justify-content:flex-start;gap:9px;margin:0 0 16px}.floating-route-selects select{width:auto;max-width:50%;min-width:105px;color:var(--accent);background:var(--accent-soft);border-color:var(--accent);border-radius:9px;font-size:13px;padding:7px 11px}.floating-route-stats{display:grid;border:1px solid var(--line);border-radius:13px;overflow:hidden}.floating-route-stats>div{display:grid;justify-items:center;align-content:center;gap:6px;min-height:78px;padding:9px 4px;min-width:0}.floating-route-stats>div+div{border-inline-start:1px solid var(--line)}.floating-route-stats strong{font-size:20px;font-weight:500;white-space:nowrap}.floating-route-stats small{font-size:11px;color:var(--muted)}.floating-route-properties{display:flex;align-items:center;gap:10px;margin:14px 0}.floating-route-properties>label{display:flex;align-items:center;gap:7px;min-width:0;border:1px solid var(--line);border-radius:22px;padding:5px 10px;font-size:11px;color:var(--muted)}.floating-route-properties>label:first-child{flex:1}.floating-route-properties select{border:0;min-width:0;font-size:11px;padding:5px 0;background:transparent}.floating-route-color input{width:35px;height:23px;padding:0;border:0;background:none}.floating-route-description-link{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 0;width:100%;text-align:start;color:var(--muted);font-size:12px;line-height:1.8;border-block:1px solid var(--line);overflow-wrap:anywhere}.floating-route-description-link:disabled{opacity:1;cursor:default}.floating-route-description{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.floating-route-description textarea{flex-basis:100%}.floating-route-hint{font-size:10px;color:var(--muted);line-height:1.9;margin-bottom:12px}.floating-route-cables{display:grid;gap:4px;margin-top:10px}.floating-route-cables>p{font-size:12px;color:var(--accent);padding:10px 0}.floating-route-cables>button{display:flex;align-items:center;gap:8px;text-align:start;padding:8px 0}.floating-route-cables strong{font-size:11px;font-weight:500;flex:1;overflow-wrap:anywhere}.floating-route-cables small{color:var(--muted);font-size:10px}.floating-route-card>footer{position:relative;padding:10px 15px;gap:8px;justify-content:flex-start}.floating-route-card>footer>.floating-route-add{margin-inline-end:auto}.floating-route-add,.floating-route-more{position:relative}.floating-route-add>.button{padding:6px;min-width:40px;min-height:40px;border-radius:9px}.route-action-menu{position:absolute;bottom:48px;inset-inline-start:0;background:var(--paper);border:1px solid var(--line);border-radius:9px;padding:5px;min-width:190px;box-shadow:var(--shadow);z-index:4}.floating-route-more .route-action-menu{inset-inline-start:auto;inset-inline-end:0}.route-action-menu button{display:flex;align-items:center;gap:8px;text-align:start;width:100%;padding:11px 9px;font-size:12px;border-radius:5px}.route-action-menu button:hover{background:var(--hover)}.modal.cable-placement-modal{width:660px}.cable-path-fields{border-top:1px solid var(--line);padding-top:18px;margin-top:12px}.cable-path-fields h3,.node-cable-list h3{display:flex;align-items:center;gap:8px;font-size:14px}.cable-path-fields>.help{margin:10px 0 15px;font-size:11px}.cable-node-slacks{display:grid;gap:7px;margin:12px 0}.cable-node-slacks>label{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px}.cable-step-index{width:23px;height:23px;border-radius:50%;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center;font-size:10px;flex-shrink:0}.cable-node-slacks>label>span:nth-child(2){flex:1;min-width:0}.cable-node-slacks strong{display:block;font-size:11px;overflow-wrap:anywhere}.cable-node-slacks small{display:block;font-size:9px;color:var(--muted);line-height:1.7}.cable-node-slacks input{width:90px;font-size:12px;direction:ltr;padding:7px}.cable-length-review{display:flex;align-items:flex-start;gap:12px;padding:14px;background:var(--accent-soft);border-radius:10px;color:var(--accent);margin-block:16px}.cable-length-review dl{flex:1;margin:0;display:grid;gap:9px}.cable-length-review dl>div{display:flex;justify-content:space-between;gap:12px;font-size:11px}.cable-length-review dd{margin:0;direction:ltr;font-variant-numeric:tabular-nums}.cable-length-review dl>div:last-child{border-top:1px solid var(--line);padding-top:10px;font-weight:700}.cable-route-order{display:grid;gap:6px;margin:10px 0}.cable-route-order>div{display:flex;gap:8px;align-items:center;font-size:11px;padding:7px;border:1px solid var(--line);border-radius:7px}.cable-route-order span{flex:1;min-width:0;overflow-wrap:anywhere}.cable-route-order .icon-button{width:26px;height:26px}.node-cable-list{border-block:1px solid var(--line);padding-block:15px;margin:15px 0}.node-cable-list h3>span{margin-inline-start:auto;font-size:11px;color:var(--muted)}.node-cable-list>.help{font-size:10px;margin-block:10px;line-height:1.9}.node-cable-entry{display:flex;align-items:center;gap:8px;padding:12px 0;border-bottom:1px solid var(--line);width:100%;text-align:start}.node-cable-entry>span{flex:1;min-width:0}.node-cable-entry strong{display:block;font-size:11px;overflow-wrap:anywhere}.node-cable-entry small{display:block;font-size:9px;color:var(--muted);line-height:1.9}.node-cable-entry>bdi{font-size:10px;color:var(--muted)}.node-cable-list>.button{margin-top:12px;font-size:11px}@media(max-width:760px){.map-workspace .inspector.floating-route-card{top:65px;max-height:calc(100% - 80px);width:auto;max-width:none;bottom:auto}.floating-route-card>header{padding:14px 13px;gap:7px}.floating-route-title>strong{font-size:17px}.floating-route-icon{width:40px;height:40px}.floating-route-body{padding:0 13px 12px}.floating-route-stats strong{font-size:16px}.floating-route-stats small{font-size:10px}.floating-route-stats>div{min-height:68px}.floating-route-card>footer{gap:5px;padding:9px 12px}.floating-route-card>footer .icon-button{width:30px;height:32px}.floating-route-properties{gap:7px}.floating-route-properties>label{padding-inline:8px}.cable-node-slacks input{width:75px}.cable-node-slacks>label{padding:9px 7px;gap:7px}}.map-workspace .inspector:has(.overlay){z-index:1200}.map-workspace .inspector.floating-route-card{overflow:visible}.floating-route-card>footer{flex-shrink:0}.cable-placement-modal .record-form>footer{position:sticky;bottom:0;z-index:3;background:var(--paper);padding-bottom:12px;box-shadow:0 -6px 12px var(--paper)}.map-workspace .inspector.floating-route-card{inset-inline-end:84px;z-index:850}.map-workspace .inspector.floating-route-card:has(.overlay){z-index:1200}@media(max-width:760px){.map-workspace .inspector.floating-route-card{inset-inline-end:12px}}.cable-suggest-button{margin-block:8px 12px;margin-inline-end:12px;color:var(--accent);border-color:var(--accent)}.map-workspace .draw-toolbar.map-tool-palette:has(.map-bookmark-toggle.is-open),.map-workspace .draw-toolbar.map-tool-palette:has(.map-product-panel){z-index:1000}.cable-route-ducts{display:grid;gap:9px;margin:12px 0 20px}.cable-route-ducts>div{border:1px solid var(--line);border-radius:9px;padding:12px}.cable-route-ducts strong{display:block;font-size:12px;margin-bottom:8px}.cable-route-ducts>div>small{color:var(--muted);font-size:10px}.cable-route-ducts .field{margin:0}.cable-route-ducts .field>span{font-size:10px;color:var(--muted)}.cable-route-ducts select{font-size:12px}.cable-path-fields>.text-link{display:inline-flex;align-items:center;vertical-align:middle;min-height:32px;padding:6px 0;margin-inline-start:4px;font-size:11px;line-height:1.8;color:var(--accent)}.cable-path-fields>h3:not(:first-child){margin-top:16px}.cable-path-fields>.text-link:hover{text-decoration:underline}.floating-route-properties>label.floating-route-color{flex:0 0 126px;justify-content:space-between}.floating-route-color input{width:40px;height:23px}.floating-route-color input::-webkit-color-swatch-wrapper{padding:7px 0}.floating-route-color input::-webkit-color-swatch{border:0;border-radius:7px}.floating-route-color input::-moz-color-swatch{border:0;border-radius:7px}.map-bookmarks{position:relative;display:inline-block;font-size:12px}.map-bookmark-toggle{background:var(--paper);border:1px solid var(--line);border-radius:50%;box-shadow:var(--shadow)}.map-bookmark-toggle.is-open{color:var(--accent);background:var(--accent-soft)}.map-bookmark-panel{position:absolute;inset-inline-end:0;bottom:calc(100% + 9px);width:320px;max-width:calc(100vw - 32px);max-height:min(550px,calc(100dvh - 120px));overflow:auto;overscroll-behavior:contain;z-index:750;background:var(--paper);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:0 5px 24px #17281d25;text-align:start;padding:0 14px 14px}.map-bookmark-panel>header{display:flex;align-items:center;gap:5px;padding:12px 0 9px;position:sticky;top:0;background:var(--paper);z-index:1;border-bottom:1px solid var(--line)}.map-bookmark-panel h2{flex:1;font-size:13px;font-weight:600;margin:0}.map-bookmark-panel .icon-button{width:27px;height:28px;flex-shrink:0}.map-bookmark-panel .button{padding:7px 10px;min-height:32px;font-size:11px;white-space:normal}.map-bookmark-help{font-size:10px;color:var(--muted);line-height:1.7;margin:10px 0}.map-bookmark-count{font-size:10px;color:var(--muted);text-align:end;margin:8px 0}.map-bookmark-loading{display:flex;align-items:center;gap:7px;margin:16px 0;font-size:11px;color:var(--muted)}.map-bookmark-error,.map-bookmark-success{font-size:11px;line-height:1.6;padding:9px;border-radius:7px;overflow-wrap:anywhere;margin:10px 0}.map-bookmark-error{background:#fff0ed;color:#9b2d23;border:1px solid #efcdc7}.map-bookmark-success{background:var(--accent-soft);color:var(--accent);border:1px solid var(--line)}.map-bookmark-list{max-height:270px;overflow:auto;overscroll-behavior:contain}.map-bookmark-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px;align-items:center;border-bottom:1px solid var(--line);padding:9px 0}.map-bookmark-go{display:flex;align-items:center;gap:8px;width:100%;padding:4px;text-align:start;min-width:0;border-radius:7px}.map-bookmark-go:hover{background:var(--hover)}.map-bookmark-go>svg{color:var(--accent);flex-shrink:0}.map-bookmark-go>span{min-width:0;flex:1}.map-bookmark-go strong{display:block;font-size:12px;font-weight:500;overflow-wrap:anywhere}.map-bookmark-go small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.map-bookmark-actions{display:flex;gap:3px}.map-bookmark-rename,.map-bookmark-confirm{grid-column:1/-1;padding:10px;background:var(--hover);border:1px solid var(--line);border-radius:8px}.map-bookmark-rename label,.map-bookmark-add label{display:block;font-size:11px}.map-bookmark-rename label>span,.map-bookmark-add label>span{display:block;margin-bottom:7px}.map-bookmark-rename input,.map-bookmark-add input{width:100%;min-width:0;max-width:100%;border:1px solid var(--line);border-radius:7px;padding:8px;background:var(--paper);color:var(--text);font:inherit}.map-bookmark-rename>div{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}.map-bookmark-confirm p{font-size:11px;margin:0 0 8px;line-height:1.6}.map-bookmark-confirm .button{margin-inline-end:6px}.map-bookmark-add{border-top:1px solid var(--line);margin-top:12px;padding-top:14px}.map-bookmark-add>.button{display:flex;gap:5px;align-items:center;margin-top:10px;width:100%;justify-content:center}.map-bookmark-panel button:focus-visible,.map-bookmark-panel input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:760px){.map-bookmark-panel{max-height:calc(100dvh - 110px);width:min(320px,calc(100vw - 28px));max-width:calc(100vw - 28px);padding-inline:12px}.map-bookmark-list{max-height:200px}}.map-bookmark-orphan{margin-top:12px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--hover)}.map-bookmark-orphan label{display:block;font-size:11px}.map-bookmark-orphan label>span{display:block;margin-bottom:7px}.map-bookmark-orphan input{max-width:100%;width:100%;min-width:0;padding:8px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:var(--text);font:inherit}.map-bookmark-orphan .button{margin-top:8px}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}:root{font-family:Inter,Almarai,sans-serif;color:#202624;background:#f6f7f4;font-synthesis:none;--ground:#f6f7f4;--paper:#fff;--text:#202624;--muted:#7a8582;--line:#e1e5dc;--hover:#eef1eb;--accent:#1858e8;--accent-soft:#e1e9fc;--shadow:0 4px 20px #1d2a3010}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{border:0;background:none}a{color:inherit;text-decoration:none}h1,h2,h3,h4,p{margin:0}h1{font-size:24px;font-weight:500;letter-spacing:-.4px}h2{font-size:19px;font-weight:600}h3{font-size:15px;font-weight:600}small{font-size:12px}svg{flex-shrink:0}input,select,textarea{border:1px solid var(--line);border-radius:7px;padding:10px 12px;color:var(--text);background:var(--paper);min-width:0;width:100%;font-size:14px}input:focus,select:focus,textarea:focus{border-color:var(--accent)}input[type=checkbox]{width:16px;height:16px;accent-color:var(--accent);padding:0;flex-shrink:0}textarea{resize:vertical;line-height:1.6}.muted,.help{color:var(--muted);font-size:13px}.help{line-height:1.7}.app{height:100dvh;display:flex;overflow:hidden}.sidebar{width:246px;flex-shrink:0;background:var(--ground);display:flex;flex-direction:column;padding:15px 13px 20px}.brand{display:flex;align-items:center;gap:10px;width:100%;padding:5px 12px 23px;text-align:start;direction:ltr}.brand b{font-size:19px;font-weight:700;letter-spacing:.6px;flex:1}.brandmark{width:37px;height:37px;background:#dce5fc;color:#164ce1;display:grid;place-items:center;border-radius:10px}.brand>svg{color:var(--muted)}.section-label{color:var(--muted);font-size:11px;padding:12px 17px 7px;display:block}.sidebar nav{display:flex;flex-direction:column;gap:2px}.sidebar nav>button{width:100%;padding:10px 17px;display:flex;align-items:center;gap:14px;border-radius:26px;text-align:start;font-size:14px}.sidebar nav>button:hover{background:var(--hover)}.sidebar nav>button.selected{background:var(--accent-soft);color:var(--accent);font-weight:600}.sidebar-bottom{margin-top:auto;padding:18px 13px 0;font-size:12px;color:var(--muted)}.sidebar-bottom>small{float:inline-end}.sidebar-bottom p{font-size:10px;line-height:1.8;margin-top:9px}.version-dot{display:inline-block;width:6px;height:6px;background:#35a16b;border-radius:50%;margin-inline-end:7px}.workspace{min-width:0;flex:1;display:flex;flex-direction:column}.topbar{height:74px;flex-shrink:0;display:flex;align-items:center;gap:18px;padding:12px 25px;background:var(--ground)}.topbar>.icon-button{display:none}.search{display:flex;align-items:center;gap:11px;background:#e9ece5;border-radius:22px;padding:0 15px;max-width:650px;flex:1;height:40px;color:#6d7973}.search input{border:0;outline:none!important;background:none;padding:8px 0;font-size:13px}.search .icon-button{width:24px;height:24px}.top-actions{margin-inline-start:auto;display:flex;gap:7px;align-items:center}.avatar{width:34px;height:34px;border-radius:50%;display:inline-grid;place-items:center;background:#c9eaf0;color:#1f5363;font-size:12px;font-weight:600;flex-shrink:0;direction:ltr}.avatar.tiny{width:27px;height:27px;font-size:10px}.page{margin-inline-end:0;background:var(--paper);border-radius:19px 0 0;padding:27px 28px;flex:1;overflow:auto}.page-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:21px;gap:16px}.page-heading p{font-size:13px;color:var(--muted);margin-top:6px}.button{border:1px solid var(--line);border-radius:6px;background:var(--paper);display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:35px;padding:7px 13px;font-size:13px;font-weight:500;white-space:nowrap}.button:hover{background:var(--hover)}.button.primary{color:#fff;background:var(--accent);border-color:var(--accent)}.button.primary:hover{filter:brightness(.96)}.button.danger{color:#c52c37}.icon-button{border:0;width:34px;height:34px;border-radius:7px;display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--text);padding:0;flex-shrink:0}.icon-button:hover{background:var(--hover)}.filters{display:flex;gap:8px;align-items:center;margin-bottom:18px}.filters>button{border:1px solid var(--line);padding:4px 10px;font-size:12px;border-radius:6px;white-space:nowrap}.filters>button.on{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-soft)}.filters>span{color:var(--muted);font-size:12px;margin-inline-start:auto}.filters.scrollable{overflow:auto;padding-bottom:6px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-bottom:22px}.project-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:0;text-align:start;background:var(--paper)}.project-card:hover{box-shadow:var(--shadow);border-color:#b8c9f3}.project-art{height:126px;background:#f0f3ed;position:relative;overflow:hidden}.project-art svg{width:100%;height:100%;opacity:.65}.project-art>span{position:absolute;bottom:7px;inset-inline-end:8px;font:10px Inter,sans-serif;background:#fff9;padding:2px 5px;border-radius:3px;color:#6f7a75}.project-card-info{display:flex;justify-content:space-between;align-items:center;padding:12px 13px}.project-card-info strong{display:block;font-size:13px;font-weight:500}.project-card-info small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.table-wrap{width:100%;overflow:auto}table{border-collapse:collapse;width:100%;font-size:13px;text-align:start}th{text-align:start;background:var(--ground);font-weight:500;color:var(--muted);font-size:12px;padding:13px 12px;white-space:nowrap}td{padding:13px 12px;border-bottom:1px solid var(--line)}tr:hover td{background:color-mix(in srgb,var(--ground) 50%,transparent)}.text-link{display:flex;align-items:center;gap:13px;text-align:start;padding:0}.text-link svg{color:#3d9671}.row-actions{display:flex;gap:5px;align-items:center}.person{display:flex;gap:11px;align-items:center}.badge{font-size:11px;padding:4px 8px;border-radius:5px;background:#edf0eb;display:inline-flex;align-items:center;color:#64716c;white-space:nowrap}.badge.active,.badge.in_service,.badge.done{background:#e7f3ec;color:#267c4a}.badge.planned,.badge.todo{background:#edf0f6;color:#586b90}.badge.under_construction,.badge.in_progress,.badge.high{background:#fff1dd;color:#a06d21}.badge.blocked,.badge.urgent{background:#fde9e9;color:#ba4550}.badge.archived,.badge.decommissioned,.badge.cancelled{background:#eee;color:#7a7d7a}.empty{min-height:380px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:17px;text-align:center;max-width:560px;margin:30px auto;padding:30px}.empty-icon{color:#699078;border:1px solid var(--line);background:var(--ground);width:80px;height:80px;border-radius:24px;display:grid;place-items:center}.empty h2{font-weight:500}.empty p{color:var(--muted);font-size:14px;line-height:1.9;max-width:400px}.empty .button{margin-top:5px}.project-choices{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.overlay{position:fixed;inset:0;background:#15251d55;z-index:4000;display:flex;align-items:center;justify-content:center;padding:22px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{width:490px;max-width:100%;max-height:92dvh;overflow:auto;background:var(--paper);color:var(--text);border-radius:16px;box-shadow:0 20px 80px #0f202333}.modal.wide{width:760px}.modal>header{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:19px 23px;background:var(--paper);border-bottom:1px solid var(--line)}.record-form{display:flex;flex-direction:column;gap:16px;padding:22px}.field{display:flex;flex-direction:column;gap:8px;font-size:13px}.field>span{font-weight:500}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.record-form>footer{display:flex;justify-content:flex-end;gap:10px;padding-top:16px;border-top:1px solid var(--line);margin-top:5px}.check-options{border:1px solid var(--line);border-radius:7px;padding:5px 10px;max-height:170px;overflow:auto}.check-options:empty{display:none}.check-options>label{display:flex;gap:9px;align-items:center;padding:8px 0;font-size:13px}.check-options>label>b{margin-inline-start:auto;color:var(--accent);font-size:11px}.check-options .icon-button{margin-inline-start:auto}.inline-add{display:flex;gap:6px}.inline-add .icon-button{border:1px solid var(--line);height:40px;width:40px}.inline-error{font-size:13px;color:#bd3c4b;line-height:1.6;background:#fff0f1;padding:10px;border-radius:6px}.error-banner{position:relative;z-index:3000;background:#fff0f1;border-bottom:1px solid #f2d0d2;padding:9px 22px;color:#a73344;font-size:13px;display:flex;align-items:center;gap:10px}.error-banner>.icon-button{margin-inline-start:auto}.toast{position:fixed;bottom:23px;left:50%;transform:translate(-50%);z-index:5000;background:#29382f;color:#fff;box-shadow:var(--shadow);padding:12px 22px;border-radius:9px;display:flex;gap:10px;align-items:center;font-size:13px}.busy-line{position:fixed;top:0;left:0;height:2px;width:40%;background:var(--accent);z-index:6000;animation:busy 1.5s infinite}.boot{height:100dvh;display:flex;gap:15px;align-items:center;justify-content:center;color:var(--accent)}.spin{animation:spin 1s linear infinite}.settings-card{max-width:650px;border:1px solid var(--line);border-radius:13px;padding:25px}.settings-card h2{margin-bottom:20px}.setting-row{display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--line);padding:20px 0;font-size:14px}.setting-row>span:first-child{color:var(--muted)}.setting-row select{max-width:150px}.settings-card>.button{margin-top:24px}.product-icon{width:35px;height:35px;border-radius:9px;background:#eef1e8;color:#779061;display:grid;place-items:center}.board{display:grid;grid-template-columns:repeat(5,minmax(210px,1fr));gap:14px;overflow:auto;min-height:500px}.board-column{background:var(--ground);border-radius:10px;padding:12px;min-width:210px}.board-column>header{display:flex;align-items:center;gap:8px;padding:3px 0 15px}.board-column>header>span:last-child{margin-inline-start:auto;color:var(--muted);font-size:12px}.board-column>header h3{font-size:13px}.status-dot{width:7px;height:7px;background:#9da7a0;border-radius:50%;display:inline-block;flex-shrink:0}.status-dot.in_service,.status-dot.done{background:#59a67b}.status-dot.under_construction,.status-dot.in_progress{background:#e8af52}.status-dot.blocked{background:#d66c75}.status-dot.planned,.status-dot.todo{background:#7899c9}.work-card{width:100%;text-align:start;border:1px solid var(--line);background:var(--paper);padding:13px;border-radius:9px;display:block;margin-bottom:10px;box-shadow:0 2px 3px #14261b03}.work-card>div:first-child{display:flex;justify-content:space-between;align-items:center}.work-card>div>small{color:var(--muted);font-size:10px}.work-card h4{margin:13px 0 7px;font-size:14px;font-weight:500}.work-card p{font-size:12px;color:var(--muted);line-height:1.7}.work-card footer{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);margin-top:17px}.work-card footer span{display:flex;gap:3px}.assignees{display:flex;gap:3px;margin-top:12px}.board-empty{text-align:center;color:#b3bcb4;padding:22px}.report-kpis{display:flex;gap:16px;margin:25px 0}.report-kpis>div{padding:20px 24px;border:1px solid var(--line);border-radius:12px;min-width:150px;display:flex;flex-direction:column;gap:10px}.report-kpis>div>strong{font-size:28px;font-weight:500;direction:ltr;text-align:start}.report-kpis>div>span,.report-kpis small{font-size:12px;color:var(--muted)}.progress{height:4px;width:90px;background:var(--hover);margin-top:5px;border-radius:3px;overflow:hidden}.progress i{height:100%;display:block;background:var(--accent)}.comment-list p{border-bottom:1px solid var(--line);padding:8px 0}.comment-list small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.upload-zone{border:1px dashed #a4b3a6;border-radius:10px;padding:25px 17px;display:flex;flex-direction:column;gap:18px;align-items:center;color:var(--muted)}.upload-zone input{font-size:12px}.import-preview{max-height:200px;overflow:auto;margin-top:15px}.import-preview p{display:flex;justify-content:space-between;padding:8px;border-bottom:1px solid var(--line);font-size:12px}.project-switch{display:flex;align-items:center;gap:8px;font-size:13px;white-space:nowrap}.project-switch>span{max-width:160px;overflow:hidden;text-overflow:ellipsis}.map-main{position:relative;flex:1;overflow:hidden;border-start-start-radius:18px}.map-workspace,.map-canvas{height:100%;width:100%;position:relative}.map-canvas{z-index:0;direction:ltr;background:#e9eee5}.map-top{position:absolute;top:16px;inset-inline:16px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;z-index:600}.map-title,.map-file-actions{display:flex;align-items:center;gap:9px;background:var(--paper);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:9px;padding:7px 12px;pointer-events:auto}.map-title{font-size:13px}.map-title>span{font-size:10px;color:var(--muted)}.map-file-actions{padding:3px;gap:1px}.map-contents{position:absolute;top:78px;inset-inline-start:16px;width:290px;z-index:600;background:var(--paper);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:12px;overflow:hidden;max-height:calc(100% - 170px);display:flex;flex-direction:column}.contents-heading{display:flex;align-items:center;justify-content:space-between;padding:16px}.contents-heading>span{background:var(--ground);border-radius:5px;padding:3px 7px;font-size:11px;color:var(--muted)}.contents-tabs{display:flex;border-bottom:1px solid var(--line);padding:0 8px}.contents-tabs button{flex:1;display:flex;flex-direction:column;gap:6px;align-items:center;font-size:11px;padding:8px 3px 11px;border-bottom:2px solid transparent}.contents-tabs button.active{border-color:var(--accent);color:var(--accent)}.contents-tabs small{font-size:10px;color:var(--muted)}.contents-list{overflow:auto;max-height:390px;min-height:100px}.element-row{width:100%;display:flex;align-items:center;gap:10px;padding:11px 14px;text-align:start;border-bottom:1px solid var(--line)}.element-row:hover,.element-row.on{background:var(--ground)}.element-row strong{display:block;font-size:12px;font-weight:500}.element-row small{font-size:10px;color:var(--muted);display:block;margin-top:5px}.element-row .status-dot{margin-inline-start:auto}.element-symbol{width:25px;height:25px;display:grid;place-items:center;background:var(--ground);border-radius:5px;flex-shrink:0}.element-symbol span{width:9px;height:9px;background:#fff;border:2px solid #709a7e;border-radius:3px}.element-symbol.routes span{height:3px;width:16px;background:#b38b4d;border:0;transform:rotate(-30deg)}.element-symbol.cables span{height:3px;width:16px;background:var(--accent);border:0;transform:rotate(-30deg)}.element-symbol.sectors span{background:#d2e7d3;border:1px dashed #6a9e70}.contents-footer{padding:10px;border-top:1px solid var(--line)}.contents-footer .button{width:100%;border:0;color:var(--accent)}.contents-empty{display:flex;flex-direction:column;align-items:center;gap:10px;padding:30px 12px;color:var(--muted);font-size:12px}.contents-empty>small{text-align:center;line-height:1.8;font-size:10px}.map-controls{position:absolute;z-index:600;inset-inline-end:16px;bottom:90px;display:flex;flex-direction:column;gap:9px}.map-controls>.icon-button,.map-controls>div{border:1px solid var(--line);background:var(--paper);box-shadow:var(--shadow);border-radius:7px}.map-controls>div{display:flex;flex-direction:column}.map-controls>div>button+button{border-top:1px solid var(--line);border-radius:0 0 7px 7px}.draw-toolbar{position:absolute;z-index:600;bottom:25px;left:50%;transform:translate(-50%);background:var(--paper);border:1px solid var(--line);border-radius:11px;box-shadow:var(--shadow);display:flex;align-items:center;gap:3px;padding:7px;direction:ltr}.draw-toolbar .icon-button{width:38px;height:38px}.draw-toolbar .icon-button[aria-pressed=true]{color:var(--accent);background:var(--accent-soft)}.separator{height:24px;width:1px;background:var(--line);margin:0 4px}.draw-instruction{position:absolute;z-index:650;bottom:94px;left:50%;transform:translate(-50%);background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;padding:9px 12px;display:flex;gap:10px;align-items:center;white-space:nowrap;font-size:12px}.layers-panel{position:absolute;inset-inline-end:61px;bottom:90px;z-index:650;padding:14px;width:220px;border:1px solid var(--line);border-radius:10px;background:var(--paper);box-shadow:var(--shadow)}.layers-panel>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.layers-panel>label{display:flex;gap:10px;align-items:center;font-size:13px;padding:8px 0}.layers-panel>select{margin-top:12px;font-size:12px}.map-node{width:22px;height:22px;background:#fff;border:2px solid #308557;border-radius:5px;display:grid;place-items:center;font:700 10px Inter,sans-serif;color:#327752;box-shadow:0 1px 4px #24352940}.map-node.pole{border-radius:50%;background:#fff6df;border-color:#9e7737;color:#9e7737}.map-node.cabinet,.map-node.site{background:#e6eefd;border-color:#2869d2;color:#2869d2}.map-node.customer{border-radius:50%;width:17px;height:17px;background:#fff;border-color:#c98548}.map-node.building{border-color:#8b709e;color:#8b709e}.node-marker{background:none!important;border:none!important}.mode-route .map-canvas,.mode-sector .map-canvas,.mode-node .map-canvas,.mode-measure .map-canvas{cursor:crosshair}.archive-notice{position:absolute;bottom:25px;inset-inline-start:15px;z-index:610;display:flex;gap:8px;align-items:center;padding:10px;background:var(--paper);border-radius:8px;font-size:12px;color:var(--muted)}.inspector{position:absolute;top:78px;bottom:20px;inset-inline-end:16px;width:355px;z-index:660;background:var(--paper);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow);display:flex;flex-direction:column;overflow:hidden}.inspector>header{display:flex;gap:12px;padding:20px 17px;border-bottom:1px solid var(--line);align-items:center}.inspector>header .icon-button{margin-inline-start:auto;align-self:flex-start}.inspector>header h2{font-size:18px;margin:5px 0}.inspector>header small,.inspector>header span{font-size:11px;color:var(--muted)}.inspector-symbol{background:var(--ground);width:40px;height:40px;display:grid;place-items:center;border-radius:9px;color:#458566!important}.inspector-body{padding:20px 17px;overflow:auto;flex:1}.inspector dl{display:grid;grid-template-columns:90px 1fr;gap:14px 8px;font-size:12px;line-height:1.6;margin:20px 0}.inspector dt{color:var(--muted)}.inspector dd{margin:0;overflow-wrap:anywhere}.inspector>footer{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:12px 17px}.subheading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:15px;margin-top:20px;margin-bottom:10px}.equipment-card{border:1px solid var(--line);border-radius:8px;padding:12px;margin-bottom:10px;font-size:12px}.equipment-card>div:first-child{display:flex;gap:7px;align-items:center;margin-bottom:10px}.equipment-card strong{font-weight:500}.equipment-card small{margin-inline-start:auto;color:var(--muted);font-size:10px}.equipment-card>span{color:var(--muted)}.equipment-card .row-actions{margin-top:8px}.connection-row{display:flex;gap:8px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.connection-row strong{font-size:10px;line-height:1.8;display:block;overflow-wrap:anywhere}.connection-row small{color:var(--muted);font-size:10px}.connection-row .icon-button{margin-inline-start:auto}.connection-bridge{text-align:center;color:var(--accent)}.fiber-summary{display:flex;gap:12px;margin:15px 0 25px}.fiber-summary>span{flex:1;background:var(--ground);padding:13px;border-radius:8px;font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:7px}.fiber-summary b{font-size:25px;font-weight:500;color:var(--text)}.fiber-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:5px;direction:ltr;margin:15px 0}.fiber-grid>button{border:1px solid var(--line);border-radius:5px;padding:6px 3px;display:flex;align-items:center;gap:4px;justify-content:center;position:relative;font-size:10px}.fiber-grid>button.selected{outline:2px solid var(--accent);outline-offset:0}.fiber-grid i{width:5px;height:14px;background:var(--fiber);border-radius:3px;border:1px solid #0002}.fiber-grid small{position:absolute;top:-4px;right:1px;font-size:8px;color:#278e52}.trace-action{display:flex;align-items:center;justify-content:space-between;font-size:12px}.trace-result{margin-top:20px;border-top:1px solid var(--line);padding-top:15px}.trace-result>small{font-size:10px;line-height:1.8;color:var(--muted);display:block;margin-top:12px}.trace-branch{border:1px solid var(--line);border-radius:8px;padding:13px;margin-top:12px;font-size:11px}.trace-branch>strong{display:block;margin-bottom:15px}.trace-branch p{display:flex;gap:7px;align-items:center;padding:9px 0;border-inline-start:1px solid var(--line);padding-inline-start:10px}.trace-branch small{margin-inline-start:auto;font-size:10px;color:var(--muted)}.trace-dot{width:6px;height:6px;border-radius:50%;background:var(--accent)}.history-list{padding:10px 22px;max-height:60vh;overflow:auto}.history-list>div{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}.history-list strong{font-weight:500;display:block}.history-list small{color:var(--muted);font-size:10px;display:block;margin-top:7px}.login{display:grid;grid-template-columns:56fr 44fr;min-height:100dvh;direction:ltr;background:var(--paper)}.login-art{position:relative;background:#1f2924;overflow:hidden;color:#fff;min-height:100dvh;padding:30px}.login-art .brand{position:relative;z-index:2;width:230px}.login-art .brandmark{background:#ffffff18;color:#aac8fd}.login-network{position:absolute;inset:15% -35% 10%;transform:rotate(-20deg);opacity:.85}.login-network svg{height:100%;width:100%;transform:scale(1.4);color:#b0c5b9}.login-caption{position:absolute;bottom:10%;left:8%;right:8%;direction:inherit}.login-caption>p{font:10px Inter,sans-serif;color:#a4b5aa;letter-spacing:3px;margin-bottom:18px}.login-caption h1{font-size:40px;font-weight:500;line-height:1.7;max-width:540px}.login-caption>span{display:block;margin-top:18px;font-size:14px;line-height:1.9;color:#b0beb5}.login-form{display:flex;align-items:center;justify-content:center;flex-direction:column;position:relative;padding:75px 40px;direction:inherit}.login-form form{width:100%;max-width:370px;direction:inherit}.login-form h2{font-size:31px;font-weight:500;margin-bottom:13px}.login-form form>p{color:var(--muted);font-size:14px;margin-bottom:35px}.login-form .field{margin-bottom:21px}.login-form form>.button{width:100%;margin-top:7px;min-height:44px}.login-note{color:var(--muted);display:block;text-align:center;margin-top:28px;font-size:11px}.login-form>footer{position:absolute;bottom:25px;font-size:11px;color:var(--muted)}.language-button{position:absolute;top:26px;right:30px;display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}.password-input{position:relative;display:flex}.password-input .icon-button{position:absolute;inset-inline-end:5px;top:4px}.password-input>input{padding-inline-end:42px}.login-mobile-brand{display:none}.login-form:dir(rtl),html[dir=rtl] .login-form,html[dir=rtl] .login-caption{direction:rtl}html[data-theme=dark]{--ground:#202421;--paper:#282e2a;--text:#e2e8e1;--muted:#9aa79e;--line:#3d473f;--hover:#353f37;--accent:#8ab4f8;--accent-soft:#334662;--shadow:0 4px 20px #0003;color:var(--text);background:var(--ground)}html[data-theme=dark] .search{background:#343b35}html[data-theme=dark] .project-art{background:#27382c}html[data-theme=dark] .button.primary{color:#16263c}html[data-theme=dark] .badge{background:#3d473e;color:#c1cfc3}html[data-theme=dark] .badge.in_service,html[data-theme=dark] .badge.done{background:#284733;color:#8fd4a4}html[data-theme=dark] .avatar{background:#38575e;color:#b8dce3}html[data-theme=dark] .inline-error,html[data-theme=dark] .error-banner{background:#512b31;color:#f4b5bf}html[data-theme=dark] .leaflet-control-attribution{background:#282e2ad9;color:#bac3b7}html[data-theme=dark] .leaflet-control-attribution a{color:#8ab4f8}@keyframes spin{to{transform:rotate(360deg)}}@keyframes busy{0%{left:-40%}to{left:100%}}@media(min-width:1600px){.page{padding:35px 45px}.project-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}@media(max-width:1100px){.sidebar{width:204px;padding-inline:9px}.topbar{padding-inline:17px;gap:12px}.page{padding:23px 20px}.project-grid{gap:12px}.map-contents{width:250px}.inspector{width:315px}.project-switch>span{max-width:110px}.search{min-width:100px}}@media(max-width:800px){.sidebar{position:fixed;inset-block:0;inset-inline-start:0;z-index:2500;transform:translate(110%);box-shadow:var(--shadow);width:245px;transition:transform .2s}html[dir=ltr] .sidebar{transform:translate(-110%)}.sidebar.is-open,html[dir=ltr] .sidebar.is-open{transform:translate(0)}.topbar{height:62px;gap:10px;padding:10px 12px}.topbar>.icon-button{display:flex}.top-actions{gap:1px}.top-actions>.icon-button{width:30px}.search{height:36px;padding:0 10px}.search input{font-size:11px}.project-switch{max-width:120px}.project-switch>svg:first-child{display:none}.project-switch>span{max-width:85px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.page{border-radius:12px 12px 0 0;padding:22px 15px}.map-main{border-radius:12px 12px 0 0}.page-heading h1{font-size:22px}.map-contents{width:230px;max-height:55%;top:70px}.inspector{top:70px;bottom:90px;width:calc(100% - 32px);max-width:355px}.inspector~.map-controls{display:none}.map-title>span{display:none}.map-title{font-size:12px}.map-file-actions .icon-button{width:29px}.draw-instruction{max-width:calc(100% - 20px);font-size:11px;white-space:normal;bottom:87px}.draw-instruction>span:first-child{max-width:180px;line-height:1.6}.draw-instruction .button{font-size:11px;padding-inline:8px}.map-controls{bottom:100px}.login{display:flex;flex-direction:column}.login-art{min-height:270px;height:32vh;padding:20px}.login-art .brand{padding-bottom:0}.login-caption{bottom:25px}.login-caption h1{font-size:24px;max-width:100%}.login-caption>p,.login-caption>span{display:none}.login-form{flex:1;padding:65px 24px 75px;min-height:65vh;border-radius:18px 18px 0 0;margin-top:-18px;z-index:2}.login-form h2{font-size:27px}.report-kpis{flex-wrap:wrap;gap:9px}.report-kpis>div{min-width:130px;padding:15px}.record-form{padding:18px}.modal>header{padding:15px 18px}.overlay{padding:12px}.project-choices{flex-direction:column}.filters{gap:5px}.filters>button{font-size:11px}.board{min-height:450px}.setting-row{font-size:12px;gap:12px;overflow-wrap:anywhere}}@media(max-width:480px){.project-grid{grid-template-columns:1fr 1fr;gap:9px}.project-card-info{padding:10px 9px}.project-art{height:92px}.project-card-info .avatar{display:none}.project-card-info strong{font-size:11px}.project-card-info small{font-size:9px}.search input::placeholder{color:transparent}.topbar .project-switch{max-width:95px}.top-actions>.icon-button:nth-child(2){display:none}.map-contents{width:210px;top:69px;max-height:42%}.contents-tabs button{font-size:10px}.contents-heading{padding:12px}.element-row{padding:9px 11px}.map-title{max-width:210px;overflow:hidden;white-space:nowrap}.draw-toolbar{bottom:18px;padding:5px}.draw-toolbar .icon-button{width:34px;height:34px}.empty{padding:25px 10px;min-height:340px}.empty p{font-size:13px}.page-heading .button{font-size:11px;padding-inline:10px}}@media print{.sidebar,.topbar,.filters,.page-heading .row-actions,.toast,.error-banner{display:none!important}.app,.workspace,.page{height:auto!important;overflow:visible!important;display:block!important;background:#fff!important;color:#000!important}.page{padding:0}.page-heading:before{content:"SPPLAN";font-size:25px;font-weight:700;margin-inline-end:25px}.table-wrap{overflow:visible}.report-kpis>div{break-inside:avoid}th,td{font-size:10px;padding:9px;border-color:#ddd}.page-heading{margin-bottom:25px}body{background:#fff}tr{break-inside:avoid}button{display:none}}.password-settings{border-top:1px solid var(--line);padding-top:25px;margin-top:25px;display:flex;flex-direction:column;gap:16px}.password-settings>.button{align-self:flex-start}.star-active{color:#cc9824}.splice-editor{width:min(1280px,98vw);height:min(920px,94dvh);background:var(--paper);border:1px solid var(--line);border-radius:16px;display:flex;flex-direction:column;box-shadow:0 24px 90px #10211844;overflow:hidden}.splice-editor>header{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--line);padding:18px 24px}.splice-title{display:flex;align-items:center;gap:13px}.splice-title h2{font-size:19px}.splice-title small{display:block;color:var(--muted);margin-top:5px;font:11px Inter,sans-serif}.splice-editor>header>.icon-button{margin-inline-start:auto}.splice-counters{margin-inline-start:auto;display:flex;gap:12px;font-size:11px;color:var(--muted)}.splice-counters span{background:var(--ground);border-radius:6px;padding:7px 10px}.splice-editor-scroll{overflow:auto;flex:1}.splice-scene{display:grid;grid-template-columns:minmax(190px,1fr) minmax(280px,1.45fr) minmax(190px,1fr);gap:35px;position:relative;padding:24px;min-height:530px}.splice-wires{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible}.splice-wires path{fill:none;stroke-width:2;opacity:.35;transition:opacity .1s}.splice-wires path.focused{stroke-width:4;opacity:.9}.splice-end-panel{position:relative;z-index:1;background:var(--paper);align-self:start;border:1px solid var(--line);border-radius:10px;overflow:hidden}.splice-end-panel h3{padding:14px 12px;border-bottom:1px solid var(--line);font-size:13px}.splice-end-panel>select{font-size:12px;margin:10px;width:calc(100% - 20px)}.splice-page-picker{display:flex;align-items:center;gap:7px;padding:0 11px 9px;font-size:11px;color:var(--muted)}.splice-page-picker select{width:60px;padding:5px 8px;font-size:11px}.splice-page-picker small{margin-inline-start:auto;font-size:10px}.splice-end-list{padding:0 9px 9px;max-height:460px;overflow:auto}.splice-end-row{display:flex;align-items:center;gap:8px;width:100%;height:32px;font-size:11px;text-align:start;border:1px solid var(--line);border-radius:5px;margin-bottom:4px;padding:3px 9px;background:var(--paper)}.splice-end-row>span:not(.fiber-stripe){color:var(--muted);font-size:10px}.splice-end-row.selected{border-color:var(--accent);background:var(--accent-soft)}.splice-end-row.occupied{background:var(--ground)}.splice-end-row.selected.occupied{outline:1px solid var(--accent)}.fiber-stripe{width:4px;height:20px;border-radius:3px;flex-shrink:0;border:1px solid #0002}.splice-anchor{margin-inline-start:auto;border:1px solid #0002;width:8px;height:8px;display:block;border-radius:50%}.splice-tray-panel{z-index:1;position:relative;align-self:start}.splice-tray-panel>label{font-size:12px;display:flex;flex-direction:column;gap:10px}.splice-tray-panel>label>select{font-size:12px}.splice-tray-tabs{display:flex;gap:6px;overflow:auto;padding:14px 0 10px}.splice-tray-tabs button{border:1px solid var(--line);background:var(--paper);border-radius:6px;padding:6px 10px;white-space:nowrap;font-size:11px}.splice-tray-tabs button.active{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.splice-tray-tabs small{display:block;font-size:9px;color:var(--muted);margin-top:5px}.physical-tray{border:2px solid #9eaaa1;border-radius:18px 18px 30px 30px;background:var(--ground);padding:16px 15px 20px;box-shadow:inset 0 0 0 5px var(--paper)}.tray-mark{display:flex;align-items:center;justify-content:space-between;font-size:12px;color:var(--muted);padding:4px 4px 16px}.tray-mark>span{width:9px;height:9px;border:2px solid #a1ada3;border-radius:50%;background:var(--paper)}.splice-slot-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;direction:ltr}.splice-slot-grid button{position:relative;min-height:65px;border:1px solid var(--line);border-radius:7px;background:var(--paper);display:flex;align-items:center;justify-content:space-evenly;flex-direction:column;padding:6px 3px;gap:5px}.splice-slot-grid button.selected{border-color:var(--accent);outline:1px solid var(--accent)}.splice-slot-grid button.occupied{background:color-mix(in srgb,#5b9e76 12%,var(--paper))}.splice-slot-grid small{position:absolute;top:4px;left:5px;font-size:9px;color:var(--muted)}.splice-sleeve{display:flex;align-items:center;border:1px solid #9ea8a0;background:#e7ece9;width:43px;height:10px;border-radius:5px;margin-top:6px;overflow:hidden}.splice-sleeve>i{width:50%;height:3px;background:#b9c3bb}.occupied .splice-sleeve>i{background:#3e9363}.splice-slot-grid b{font-size:9px;font-weight:400;color:var(--muted)}.tray-vent{display:flex;justify-content:center;gap:6px;padding-top:22px}.tray-vent>i{width:22px;height:4px;border-radius:3px;background:#bbc5bc}.splice-no-closure{display:flex;flex-direction:column;align-items:center;gap:18px;padding:55px 12px;color:var(--muted);font-size:12px;line-height:1.8;text-align:center;background:var(--ground);border:1px dashed var(--line);margin-top:16px;border-radius:14px}.splice-connection-detail{margin-top:16px;padding:13px;border:1px solid var(--line);border-radius:9px;background:var(--paper);display:flex;gap:9px;align-items:center;flex-wrap:wrap}.splice-connection-detail strong{font-size:11px;font-weight:500}.splice-connection-detail small{color:var(--muted);font-size:10px}.splice-connection-detail .button{margin-inline-start:auto;font-size:11px}.splice-editor>footer{border-top:1px solid var(--line);padding:14px 24px 16px;background:var(--paper);position:relative;z-index:3}.splice-editor>footer>p{margin-bottom:10px;font-size:12px}.splice-connect-form{display:flex;align-items:flex-end;gap:13px}.splice-connect-form label{font-size:11px;display:flex;flex-direction:column;gap:7px;max-width:180px}.splice-connect-form input{font-size:12px;padding:8px 10px}.splice-connect-form .button{margin-inline-start:auto;font-size:12px;min-height:37px}.splice-chosen{display:flex;flex-direction:column;gap:5px;padding-bottom:4px;font-size:11px}.splice-chosen small{font-size:10px;color:var(--muted)}.splice-editor>footer>small{display:block;margin-top:10px;font-size:10px}.splice-success{color:#30845a}.splice-all-connections{margin:0 24px 18px;border:1px solid var(--line);border-radius:9px;font-size:12px}.splice-all-connections summary{padding:13px;cursor:pointer}.splice-all-connections>div{display:flex;align-items:center;gap:12px;padding:8px 13px;border-top:1px solid var(--line)}.splice-all-connections small{margin-inline-start:auto;color:var(--muted);font-size:10px}.splice-all-connections>p{padding:15px;color:var(--muted)}.split-preview{background:var(--ground);border:1px solid var(--line);border-radius:8px;padding:15px;display:flex;justify-content:space-between;font-size:12px;direction:ltr}.splice-open-button{width:100%;margin-top:16px;color:var(--accent)}@media(max-width:800px){.splice-overlay{padding:5px}.splice-editor{width:100%;height:98dvh;border-radius:12px}.splice-editor>header{padding:13px;gap:8px}.splice-title h2{font-size:14px}.splice-title small{font-size:10px}.splice-counters{display:none}.splice-scene{min-width:730px;padding:15px;gap:20px;grid-template-columns:190px 280px 190px}.splice-connect-form{flex-wrap:wrap;gap:9px}.splice-connect-form label{max-width:130px}.splice-connect-form>.button{width:100%;margin-top:3px}.splice-editor>footer{padding:13px}.splice-chosen{margin-inline-start:auto}.splice-all-connections{min-width:680px}.splice-all-connections small{font-size:9px}}.services{width:100%}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:start}.service-box{margin:16px 0;max-width:none;min-width:0}.service-field{display:flex;flex-direction:column;gap:7px;margin:14px 0}.service-field input,.service-field select,.service-field textarea,.service-row input,.services td input,.service-textarea{border:1px solid var(--line,#dce1e8);background:var(--paper,#fff);color:inherit;padding:10px 12px;border-radius:7px;min-width:0;max-width:100%;font:inherit}.service-field textarea,.service-textarea{min-height:110px}.service-textarea{width:100%}.service-row{display:flex;gap:10px;align-items:center;margin:10px 0;flex-wrap:wrap}.service-row>input{flex:1}.service-row small{min-width:90px}.service-item{display:flex;flex-direction:column;align-items:start;gap:7px;text-align:start;background:var(--paper,#fff);color:inherit;border:1px solid var(--line,#dce1e8);border-radius:9px;padding:14px;width:100%;margin:8px 0}.service-details{margin:14px 0;border:1px solid var(--line,#dce1e8);padding:16px;border-radius:10px}.service-details summary{cursor:pointer;font-weight:600}.service-check{display:flex;align-items:center;gap:9px;margin:10px 0}.service-success{color:#16814d;padding:10px;background:#21a56b12}.service-secret{display:block;overflow-wrap:anywhere;padding:16px;background:#1858e810;border:1px solid #1858e830;border-radius:8px;direction:ltr;-webkit-user-select:all;user-select:all}.service-ports{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0}.service-ports span{padding:5px 9px;border-radius:5px;background:#f09b1a20}.service-ports .port-up{background:#23aa6a25;color:#19844d}.public-page{max-width:1200px;margin:auto;padding:24px}.public-page>header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ddd;padding-bottom:20px}.public-page>header strong{font-size:25px;color:#1858e8}.public-map{height:420px;border-radius:10px;overflow:hidden;z-index:0}.services td input{width:100%;min-width:70px}.services td:first-child input{min-width:140px}.services dl{display:grid;grid-template-columns:1fr 2fr;gap:10px}.services dd{margin:0;overflow-wrap:anywhere}.services fieldset{border:1px solid var(--line,#ddd);border-radius:8px;margin:14px 0}.services .row-actions{flex-wrap:wrap}.services .button{margin:4px 3px}.services .filters{flex-wrap:wrap}.services .filters input{padding:9px;border:1px solid #ddd;border-radius:6px}@media(max-width:1050px){.service-grid{grid-template-columns:1fr}}@media print{.services button,.services .filters,.public-page>header{display:none}.service-grid{display:block}.service-box{break-inside:avoid}.service-details{display:none}}.service-box p{margin:10px 0;line-height:1.6}.service-box h3{margin:16px 0 8px}.service-box h2{margin-bottom:16px}.service-box small{line-height:1.5}.service-box select{max-width:100%}.sidebar nav{min-height:0;overflow-y:auto;flex:1}.sidebar-bottom{flex-shrink:0}.account-settings summary{font-weight:600;cursor:pointer}.account-settings[open] summary{margin-bottom:20px}.physical-plant{padding:3px 0;min-width:0}.modal>.physical-plant{padding:20px;overflow:auto;max-height:80vh}.modal:has(>.physical-plant){width:min(1180px,96vw);max-width:1180px}.physical-box{max-width:none;margin:16px 0;min-width:0}.physical-box h2{margin-bottom:18px}.physical-box p{margin:10px 0;line-height:1.65}.physical-plant .filters{flex-wrap:wrap}.physical-plant .button{margin:4px}.physical-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 14px}.duct-card{border:1px solid var(--line);padding:15px;border-radius:9px;margin:14px 0;min-width:0}.duct-fill{display:flex;flex-direction:column;gap:7px;padding:12px;background:var(--hover);border-radius:6px}.duct-fill b{color:#d56a12}.rack-elevation{border:5px solid #414b53;border-radius:5px;max-height:550px;overflow:auto}.rack-unit{display:flex;gap:18px;padding:7px 12px;border-bottom:1px solid var(--line);background:var(--hover);font-size:13px}.rack-unit>b{width:44px;direction:ltr}.rack-unit.occupied{background:var(--accent-soft);color:var(--accent)}.physical-port-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(76px,1fr));gap:8px;max-height:360px;overflow:auto;padding:5px}.physical-port-grid button{display:flex;flex-direction:column;align-items:center;gap:6px;border:1px solid var(--line);padding:10px;border-radius:6px}.physical-port-grid button.selected{border-color:var(--accent);background:var(--accent-soft)}.physical-port-grid i{font-style:normal;font-size:11px}.physical-plant .row-actions,.physical-plant .service-row{flex-wrap:wrap}.physical-plant .service-row>select{width:auto;max-width:100%;flex:1}.physical-box .service-field{min-width:0}@media(max-width:620px){.physical-form-grid{grid-template-columns:1fr}.modal>.physical-plant{padding:12px}.physical-box{padding:15px}.physical-plant .page-heading{align-items:flex-start;flex-direction:column;gap:10px}}@media print{.physical-plant button,.physical-plant .filters{display:none}.rack-elevation{max-height:none}}.import-workspace{min-width:0}.modal>.import-workspace{overflow:auto;max-height:82vh;padding:20px}.modal:has(>.import-workspace){width:min(1100px,96vw);max-width:1100px}.import-card{max-width:none;min-width:0;margin:18px 0}.import-card h2{margin:18px 0 14px}.import-card h2:first-child{margin-top:0}.import-card p{line-height:1.7;margin:10px 0}.import-card .button{margin:5px}.import-card .report-kpis{grid-template-columns:repeat(auto-fit,minmax(100px,1fr));margin:18px 0}.import-workspace .service-row{flex-wrap:wrap}.import-workspace .service-row>.service-field{flex:1;min-width:140px}.import-issues{border:1px solid #db961b66;background:#db961b0d;border-radius:8px;padding:14px;max-height:260px;overflow:auto}.import-issues p{font-size:13px}.import-actor{display:block;color:var(--muted);font-size:11px;margin-top:5px}.import-rollback{padding:16px;border:1px solid var(--line);border-radius:8px;margin:16px 0}.import-preview p{display:flex;justify-content:space-between;gap:10px;overflow-wrap:anywhere}.import-workspace .inline-error{padding:12px}.import-workspace .table-wrap{max-width:100%}@media(max-width:620px){.import-card{padding:15px}.modal>.import-workspace{padding:12px}.import-workspace .page-heading{align-items:start;flex-direction:column;gap:12px}}@media print{.import-workspace button,.import-workspace .upload-zone{display:none}}.alarm-filters{display:flex;gap:14px;align-items:end;flex-wrap:wrap}.alarm-filters .service-field{flex:1;min-width:160px}.alarm-item{overflow-wrap:anywhere}.alarm-item p{margin:.4rem 0}.share-candidates{max-height:320px;overflow:auto;border:1px solid var(--line);padding:12px;border-radius:12px}.share-candidates .service-check{padding:6px}.share-workspace{min-width:0}.share-preview{margin:18px 0}.share-workspace .service-secret,.share-workspace .service-row span{overflow-wrap:anywhere}.crew-time-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px}.crew-plan{overflow-wrap:anywhere}.crew-plan small{display:block}.crew-conflict-review{padding:12px;border:1px solid var(--line);border-radius:12px;margin-top:14px}.crew-planner{min-width:0}.order-summary-filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:16px}.order-summary-filters button{padding:12px 18px;display:flex;gap:14px;align-items:center;cursor:pointer}.order-summary-filters .selected{border-color:#1858e8}.work-card.overdue{border-inline-start:3px solid #d33}.drop-unavailable{opacity:.55}.work-assignee-list{display:grid;gap:10px}.work-assignee{padding:10px;border:1px solid var(--line);border-radius:10px}.work-checklist{display:grid;gap:10px}.work-check-item{padding:10px;border:1px solid var(--line);border-radius:10px;display:grid;gap:8px}.work-check-item small{overflow-wrap:anywhere}.work-order-fields .comment-list article{padding:8px 0;border-bottom:1px solid var(--line)}.record-fields{border:0;margin:0;padding:0;min-width:0;display:grid;gap:14px}.personal-work-grid{display:grid;grid-template-columns:minmax(260px,1fr) minmax(0,1.6fr);gap:20px;align-items:start}.personal-task-list{display:grid;gap:12px;min-width:0}.personal-task{display:grid;gap:8px;text-align:start;cursor:pointer;overflow-wrap:anywhere;padding:16px}.personal-task.selected{border-color:#1858e8}.personal-task-detail{min-width:0;overflow-wrap:anywhere}.personal-task-detail small{display:block}.personal-status-change{padding:12px;border:1px solid var(--line);border-radius:12px;margin:16px 0}@media(max-width:850px){.personal-work-grid{grid-template-columns:1fr}}.optional-ppe{border:1px solid var(--line);border-radius:12px;padding:12px;min-width:0}.optional-ppe legend{padding:0 6px;font-weight:600}.optional-ppe .service-check{align-items:start}.field-readiness-status{font-weight:600}.participant-readiness{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:10px}.participant-readiness small{display:block;overflow-wrap:anywhere}.work-types{border:1px solid var(--line);border-radius:8px;padding:14px}.work-type-order{padding-inline-start:24px}.work-type-order li{padding:6px;overflow-wrap:anywhere}.work-type-order .row-actions{display:inline-flex;margin-inline-start:12px}.work-type-summary{display:block;font-size:12px;color:var(--muted);overflow-wrap:anywhere;margin-block:6px}.work-composer{position:fixed;inset:0;z-index:3000;background:var(--ground);isolation:isolate;font-size:13px}.composer-canvas{position:absolute;inset:0;inset-inline-start:476px}.composer-scope-map{height:100%;width:100%;background:var(--ground)}.composer-map-tools{position:absolute;z-index:450;top:16px;inset-inline:16px;display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;width:fit-content;max-width:calc(100% - 32px);margin:auto;background:var(--paper);border:1px solid var(--line);border-radius:26px;padding:6px 12px;box-shadow:0 2px 10px #1b30211c}.composer-map-tools b{background:var(--accent-soft);color:var(--accent);border-radius:5px;padding:3px 8px}.composer-map-tools .button{border:0;padding:4px 7px;min-height:28px;font-size:12px}.composer-map-empty{position:absolute;top:100px;inset-inline:24px;z-index:450;max-width:460px;background:var(--paper);padding:14px;border-radius:10px;margin:auto;text-align:center;box-shadow:var(--shadow)}.composer-panel{position:absolute;inset-block:16px;inset-inline-start:16px;width:444px;border-radius:30px;background:var(--paper);box-shadow:0 2px 9px #1c30212d;display:flex;flex-direction:column;overflow:hidden;min-height:0}.composer-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 18px 12px}.composer-header h2{font-size:16px;font-weight:600;line-height:1.5;margin:0}.composer-header p{margin:1px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.composer-header .icon-button{width:28px;height:28px;color:var(--muted)}.composer-steps{display:grid;grid-template-columns:1fr .8fr 1.25fr;border-bottom:1px solid var(--line);padding-inline:10px;flex-shrink:0}.composer-steps button{min-height:44px;padding:10px 4px;border:0;border-bottom:3px solid transparent;background:none;color:var(--muted);font-size:12px;white-space:nowrap;cursor:pointer}.composer-steps button[aria-current=step]{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.composer-body{border:0;padding:14px 18px 24px;margin:0;min-height:0;min-width:0;overflow:auto;flex:1;overscroll-behavior:contain}.composer-body .field{margin:0 0 18px;gap:7px;font-size:13px}.composer-body .field>span{font-weight:400}.composer-body .field em{font-style:normal;color:#dc3545}.composer-body input:not([type=checkbox]),.composer-body select,.composer-body textarea{border-radius:9px;min-height:40px;padding:8px 10px;width:100%;background:var(--paper);color:var(--text);border:1px solid var(--line);font:inherit}.composer-body input:focus,.composer-body select:focus,.composer-body textarea:focus{outline:2px solid var(--accent);outline-offset:1px}.composer-step[hidden]{display:none!important}.composer-step-label{color:var(--muted);font-size:11px;margin:0 0 16px}.composer-project{display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:9px;padding:10px;min-height:40px}.composer-project svg{color:var(--muted)}.composer-step h3{font-size:14px;font-weight:600;margin:20px 0 12px;display:flex;align-items:center;gap:7px}.composer-step h3:focus{outline:none}.composer-section-heading{display:flex;justify-content:space-between;align-items:center;gap:8px}.composer-section-heading h3{margin:0}.composer-section-heading .text-link{font-size:12px;color:var(--muted)}.composer-scope-open{width:100%;border:1px solid var(--line);background:transparent;color:var(--muted);border-radius:23px;padding:11px 12px;display:flex;align-items:center;gap:10px;text-align:start;font-size:12px;margin-top:8px;cursor:pointer}.composer-scope>small{display:block;color:var(--muted);font-size:10px;line-height:1.6;margin-top:6px}.composer-scope-list>div{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:8px;font-size:11px;padding:4px 0;overflow-wrap:anywhere}.composer-scope-list .icon-button{flex-shrink:0;width:26px;height:26px}.composer-disclosure{display:flex;align-items:center;gap:8px;border:0;background:none;color:var(--accent);font-size:13px;font-weight:500;padding:20px 8px;cursor:pointer}.composer-disclosure svg{transition:transform .15s}.composer-disclosure .rotated{transform:rotate(180deg)}.composer-extra{padding-block:3px}.composer-panel .work-types{padding:0;margin:0 0 22px;border:0}.composer-panel .work-types legend{font-size:14px;font-weight:600;margin-bottom:8px}.composer-panel .work-types .service-check{display:inline-flex;position:relative;align-items:center;min-height:34px;padding:7px 12px;border:1px solid var(--line);border-radius:20px;margin:3px;gap:7px;font-size:12px;cursor:pointer}.composer-panel .work-types .service-check input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.composer-panel .work-types .service-check:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.composer-panel .work-types .service-check:has(input:checked):before{content:"✓";font-size:13px}.composer-panel .work-types .service-check:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.work-type-sort summary{font-size:11px;color:var(--muted);cursor:pointer;margin:8px 0}.composer-panel .work-type-sort li{font-size:11px}.composer-panel .work-type-sort .button{min-height:26px;padding:3px 8px}.composer-panel .help{font-size:11px;line-height:1.8}.composer-panel .work-assignee{padding:9px;border-radius:10px;margin-bottom:8px}.composer-panel .work-assignee .field{margin-bottom:0;margin-top:7px}.composer-panel .work-check-item{background:var(--paper);padding:10px;margin-bottom:6px}.composer-panel .inline-add{display:flex;gap:7px;align-items:center}.composer-panel .inline-add>input{min-width:0;flex:1}.composer-panel .inline-add>.button{flex-shrink:0;min-height:36px;padding-inline:10px;font-size:11px}.composer-panel .optional-ppe{margin:18px 0;padding:12px;border-radius:12px}.composer-panel .optional-ppe .service-check{font-size:12px;margin:8px 0}.composer-review{border:1px solid var(--line);border-radius:12px;padding:12px;margin-top:20px;overflow-wrap:anywhere}.composer-review h3{margin-top:0}.composer-review>p{font-size:12px;color:var(--muted);line-height:1.7}.composer-review dl{margin:12px 0 0}.composer-review dl>div{display:flex;justify-content:space-between;padding:6px 0;border-top:1px solid var(--line)}.composer-review dd{margin:0;font-variant-numeric:tabular-nums}.composer-comment summary{color:var(--accent);font-size:12px;cursor:pointer;margin:18px 0}.composer-comment .comment-list{font-size:12px}.composer-footer{flex-shrink:0;display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 18px;border-top:1px solid var(--line);background:var(--paper)}.composer-footer>.primary{margin-inline-start:auto}.composer-footer .button{font-size:12px;min-height:34px;padding:7px 11px}.composer-clear{border:0;background:none;color:var(--muted);font-size:10px;text-decoration:underline;cursor:pointer;padding:4px}.composer-return{display:none}.composer-body .form-grid{gap:0 12px}.composer-body .inline-error{font-size:12px;line-height:1.6;padding:10px;margin-bottom:14px}.work-composer button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media(max-width:760px){.composer-panel{inset:0;width:100%;border-radius:0}.composer-canvas{display:none;inset:0}.composer-header{padding:14px 16px 9px}.composer-header h2{font-size:16px}.composer-body{padding:14px 16px 24px}.composer-steps{padding-inline:8px}.composer-steps button{font-size:11px}.composer-footer{padding:12px 16px max(12px,env(safe-area-inset-bottom))}.work-composer.is-map-open .composer-canvas{display:block}.work-composer.is-map-open .composer-panel{display:none}.composer-return{position:absolute;z-index:450;bottom:24px;inset-inline-end:16px;display:inline-flex}.composer-map-tools{font-size:11px;top:12px;gap:5px;padding:8px}.composer-map-tools>span{flex-basis:100%;text-align:center}.composer-map-empty{top:130px}.composer-footer .composer-clear{flex-basis:100%;text-align:start}.composer-panel .work-types .service-check{font-size:11px;padding:7px 11px}}@media(prefers-reduced-motion:reduce){.composer-disclosure svg{transition:none}}.composer-body:disabled{opacity:.65}.composer-body>.composer-clear{display:block;margin-top:20px;text-align:start}.composer-header{padding-bottom:10px}.composer-header h2{font-size:14px;line-height:22px}.composer-header p{line-height:18px}.composer-step-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.composer-panel .work-types.is-compact{position:relative}.composer-panel .is-compact .service-check{padding:5px 11px;font-size:13px;line-height:20px}.composer-panel .is-compact .work-type-sort{position:absolute;inset-inline-end:0;top:-26px;z-index:20;width:170px}.composer-panel .is-compact .work-type-sort summary{margin:0;text-align:end;font-size:10px;line-height:20px}.composer-panel .is-compact .work-type-sort[open] .work-type-order{position:absolute;inset-inline-end:0;top:18px;background:var(--paper);border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow);width:260px;max-width:80vw;max-height:230px;overflow:auto;margin:0;padding:10px 30px 10px 12px}.composer-footer .button{font-size:14px;line-height:20px;padding:6px 12px}.order-detail{position:fixed;inset:0;z-index:2501;background:var(--ground);font-size:13px}.order-detail-canvas{position:absolute;inset:0;inset-inline-start:452px}.order-detail-panel{position:absolute;inset-block:16px;inset-inline-start:16px;width:420px;border-radius:17px;background:var(--paper);box-shadow:0 4px 24px #13241c36;display:flex;flex-direction:column;overflow:hidden;min-height:0}.order-detail-panel>header{padding:12px 16px 0;flex-shrink:0}.order-detail-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.order-detail-toolbar>div{display:flex;gap:2px}.order-detail-toolbar .icon-button{height:28px;width:27px;color:var(--muted)}.order-back{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--accent);border:0;background:none;padding:0;cursor:pointer}.order-detail-panel header>small{display:block;color:var(--muted);font-size:11px;margin:5px 0}.order-detail-panel h1{font-size:18px;font-weight:600;line-height:1.6;margin:5px 0;overflow-wrap:anywhere}.order-detail-panel h1:focus{outline:none}.order-detail-badges{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin:8px 0}.order-detail-badges .badge{font-size:11px;border-radius:6px}.detail-overdue{color:#e43838;font-size:11px;border:1px solid #e4383866;border-radius:6px;padding:3px 6px}.order-detail-tabs{display:flex;margin:8px -6px 0;border-bottom:1px solid var(--line)}.order-detail-tabs button{flex:1;min-width:0;white-space:nowrap;border:0;border-bottom:2px solid transparent;background:none;padding:11px 4px;color:var(--muted);font-size:12px;cursor:pointer}.order-detail-tabs button[aria-selected=true]{color:var(--accent);border-bottom-color:var(--accent)}.order-detail-body{flex:1;overflow:auto;min-height:0;padding:12px 16px 22px;overscroll-behavior:contain}.order-detail-body h2{font-size:13px;font-weight:600;display:flex;align-items:center;gap:7px;margin:22px 0 10px}.order-detail-body p{line-height:1.8;overflow-wrap:anywhere}.order-detail-body .help,.order-detail-body small{color:var(--muted);font-size:11px;line-height:1.7}.order-detail-panel>footer{display:flex;gap:8px;flex-shrink:0;padding:12px 16px;border-top:1px solid var(--line);background:var(--paper)}.order-detail-panel>footer .button{flex:1;justify-content:center;font-size:12px;min-height:34px;padding:7px 9px}.order-progress{border:1px solid var(--line);border-radius:10px;padding:13px;display:grid;grid-template-columns:1fr auto;gap:10px}.order-progress>strong{display:flex;gap:6px;align-items:center;font-size:12px}.order-progress>span{font-size:12px}.order-progress progress{grid-column:1/-1;width:100%;height:8px;appearance:none;border:0;border-radius:7px;overflow:hidden;background:var(--line)}.order-progress progress::-webkit-progress-bar{background:var(--line)}.order-progress progress::-webkit-progress-value{background:#4aa979;border-radius:7px}.order-progress progress::-moz-progress-bar{background:#4aa979}.order-progress small,.order-progress p{grid-column:1/-1;font-size:11px;margin:0}.order-metadata{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:20px 0}.order-metadata>div{display:flex;flex-direction:column;gap:7px;overflow-wrap:anywhere}.order-metadata span{font-size:11px;color:var(--muted)}.order-metadata strong{font-size:12px;font-weight:500}.order-metadata strong.detail-overdue{border:0;padding:0}.order-description{font-size:12px;white-space:pre-wrap}.order-person{display:flex;align-items:center;gap:9px;margin:12px 0}.order-person strong{font-size:12px;font-weight:500}.order-person small{display:block}.order-ppe p{font-size:12px;margin:5px 0}.order-section-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.order-section-heading h2{margin:5px 0}.order-section-heading .button{font-size:11px;padding:6px 9px}.order-scope-item,.order-comment,.order-activity{padding:12px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.order-scope-item strong,.order-activity strong{font-size:12px;font-weight:500}.order-scope-item small,.order-comment small,.order-activity small{display:block}.order-comment p{margin:0 0 7px;white-space:pre-wrap}.order-task{display:flex;gap:9px;padding:13px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.order-task strong{font-weight:500;font-size:12px}.order-task small{display:block}.order-task .is-done{color:#3c9c6a}.order-task-circle{display:block;width:16px;height:16px;border:1px solid var(--muted);border-radius:50%;margin-top:2px}.order-comment-form{padding:15px 0}.order-comment-form .button{margin-top:10px}.order-comment-form textarea{width:100%;font:inherit;background:var(--paper);color:var(--text);border:1px solid var(--line);padding:9px;border-radius:8px}.order-detail-body .service-grid{grid-template-columns:1fr;gap:20px}.order-detail-body .service-box{box-shadow:none;border:0;padding:0;max-width:100%}.order-detail-body .service-grid h2{margin-top:5px}.order-detail-body .service-field input{max-width:100%}.order-detail-body .row-actions{flex-wrap:wrap}.order-detail-body .participant-readiness{grid-template-columns:1fr}.order-detail-body .service-grid .button{font-size:11px;padding:7px 9px}.order-detail-body .inline-error,.order-detail-body .service-success{font-size:12px;padding:10px}.order-detail-body .service-item{padding:10px}.order-map-return{display:none}.order-detail-loading{padding:30px;min-height:250px}.order-detail button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.order-detail .order-comment-form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}@media(max-width:760px){.order-detail-panel{inset:0;width:100%;border-radius:0}.order-detail-canvas{display:none;inset:0}.order-detail.is-map-open .order-detail-canvas{display:block}.order-detail.is-map-open .order-detail-panel{display:none}.order-map-return{display:inline-flex;position:absolute;z-index:450;inset-inline-end:16px;bottom:24px}.order-detail-panel>header{padding-top:12px}.order-detail-panel>footer{padding-bottom:max(12px,env(safe-area-inset-bottom))}.order-detail-panel h1{font-size:17px}.order-detail-tabs button{font-size:11px}.order-detail-panel>footer .button{font-size:11px}.order-detail-body{padding-inline:16px}}.order-detail-view>.sidebar,.order-detail-view>.workspace>.topbar{visibility:hidden}.work-order-edit-modal{width:720px;max-height:calc(100dvh - 48px);height:min(960px,calc(100dvh - 48px));border:1px solid var(--line);border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.work-order-edit-modal>header{flex-shrink:0;padding:20px 24px}.work-order-edit-modal .record-form{padding:0;gap:0;min-height:0;flex:1;overflow:hidden}.work-order-edit-modal .record-fields{min-height:0;overflow:auto;padding:24px;flex:1;overscroll-behavior:contain}.work-order-edit-modal .record-form>footer{flex-shrink:0;margin:0;padding:12px 24px;background:var(--paper)}.work-order-edit-modal .record-form>.inline-error{flex-shrink:0;margin:8px 24px;padding:10px}.work-order-edit-modal .work-order-fields>.form-grid{padding-bottom:20px;margin-bottom:20px;border-bottom:1px solid var(--line)}.work-order-edit-modal .work-assignee-list,.work-order-edit-modal .work-checklist{margin:12px 0 20px}.work-order-edit-modal .work-type-sort summary{font-size:12px}.work-order-edit-modal .work-types{margin-bottom:20px}.work-order-edit-modal .optional-ppe{margin:16px 0 24px}@media(max-width:760px){.overlay:has(>.work-order-edit-modal){padding:0}.work-order-edit-modal{width:100%;height:100dvh;max-height:100dvh;border-radius:0}.work-order-edit-modal .record-fields{padding:18px 16px}.work-order-edit-modal>header{padding:16px}.work-order-edit-modal .record-form>footer{padding:12px 16px max(12px,env(safe-area-inset-bottom))}}.order-files{margin-top:20px}.order-files-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.order-files-heading h2{margin:8px 0;display:flex;gap:8px}.order-files-heading h2>span{color:var(--muted);font-size:10px;font-weight:400}.order-files-heading .icon-button{width:28px;height:28px}.order-file{display:flex;align-items:flex-start;gap:10px;padding:13px 0;border-bottom:1px solid var(--line);min-width:0}.order-file-icon{flex-shrink:0;color:var(--accent);background:var(--accent-soft);border-radius:8px;padding:9px}.order-file-info{min-width:0;flex:1}.order-file-info strong{font-size:12px;font-weight:500;display:block;overflow-wrap:anywhere}.order-file-info small{display:block;overflow-wrap:anywhere}.order-file-actions{display:flex;gap:14px;margin-top:8px;flex-wrap:wrap}.order-file-actions .text-link{display:inline-flex;align-items:center;gap:4px;font-size:11px}.order-file-actions .danger-text{color:#d33}.order-file-confirm{padding:10px;border:1px solid var(--line);border-radius:8px;margin-top:9px;background:var(--hover)}.order-file-confirm p{font-size:11px;margin:0 0 8px}.order-file-confirm .button{font-size:11px;min-height:30px;padding:5px 9px;margin-inline-end:6px}.order-file-drop{display:flex;position:relative;align-items:center;justify-content:center;gap:8px;border:1px dashed var(--accent);border-radius:10px;padding:20px 12px;margin-top:12px;background:var(--accent-soft);color:var(--accent);font-size:12px;cursor:pointer;min-height:64px;overflow:hidden}.order-file-drop input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.order-file-drop:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.order-file-drop.is-dragging{outline:2px solid var(--accent);outline-offset:2px}.order-file-drop.is-disabled{opacity:.6;cursor:default}.order-file-drop.is-disabled input{cursor:default}.order-files .inline-error,.order-files .service-success{font-size:11px;overflow-wrap:anywhere}.order-files .help{margin:8px 0;font-size:10px}.work-order-editor-fields>section{padding-bottom:22px;margin-bottom:22px;border-bottom:1px solid var(--line)}.work-order-editor-fields>section:last-child{margin-bottom:0;border-bottom:0}.work-order-editor-fields h3{font-size:14px;font-weight:600;margin:0 0 18px}.work-order-editor-fields .field{margin:0 0 8px}.work-order-editor-fields .help{margin:6px 0 16px}.work-order-editor-fields .work-types{padding:0;border:0;margin:20px 0}.work-order-editor-fields .work-types legend{font-size:12px;margin-bottom:10px}.order-priority-choices{border:0;padding:0;margin:16px 0 0;min-width:0}.order-priority-choices legend{font-size:12px;margin-bottom:10px}.order-priority-choices>div{display:flex;gap:8px;flex-wrap:wrap}.order-priority-choices label,.ppe-choice-row label{position:relative;cursor:pointer}.order-priority-choices input,.ppe-choice-row input{position:absolute;opacity:0;width:1px;height:1px}.order-priority-choices label>span{display:block;border:1px solid var(--line);border-radius:7px;padding:7px 14px;font-size:12px;background:var(--paper)}.order-priority-choices input:checked+span{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.order-priority-choices input:checked+span.urgent{color:#b42318;border-color:#b42318;background:#fff1f0}.order-priority-choices input:focus-visible+span,.ppe-choice-row input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.order-priority-choices:disabled label,.ppe-choice-row label:has(input:disabled){cursor:default;opacity:.65}.order-edit-project{border:1px solid var(--line);border-radius:8px;background:var(--hover);padding:14px;display:flex;align-items:center;justify-content:space-between;gap:12px}.order-edit-project strong{font-size:13px}.order-edit-project small{color:var(--muted)}.work-order-editor-fields .optional-ppe{margin:0;border:0;padding:0}.work-order-editor-fields .optional-ppe>legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.ppe-choice-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.ppe-choice-row:last-child{border:0}.ppe-choice-row>div{display:flex;gap:3px;padding:3px;background:var(--hover);border-radius:8px}.ppe-choice-row label>span{display:block;padding:6px 12px;border:1px solid transparent;border-radius:6px;font-size:11px}.ppe-choice-row input:checked+span{background:var(--paper);border-color:var(--line);font-weight:600;box-shadow:0 1px 2px #0000000a}.work-order-editor-fields .form-grid{margin-top:20px}.work-order-editor-fields .work-assignee-list{margin-bottom:0}.work-order-editor-fields .work-order-fields>.form-grid{border:0;padding-bottom:0;margin-bottom:0}.work-type-settings{max-width:960px}.work-type-settings>header{margin-bottom:24px}.work-type-settings h2{font-size:20px}.work-type-settings .help{margin-top:12px}.work-type-settings>fieldset{border:0;padding:0;min-width:0}.work-type-settings-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:18px}.work-type-settings-list .settings-card{margin:0;min-width:0}.work-type-settings-list header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.work-type-settings-list h3{font-size:14px;overflow-wrap:anywhere}.work-type-settings-list .field{margin:12px 0}.work-type-settings-list .form-grid{grid-template-columns:1fr}.work-type-settings>footer{display:flex;justify-content:flex-end;gap:10px;border-top:1px solid var(--line);margin-top:24px;padding-top:16px}@media(max-width:760px){.work-type-settings-list{grid-template-columns:1fr}}.work-order-editor-fields .work-types .service-check{display:inline-flex;position:relative;align-items:center;min-height:34px;padding:7px 12px;border:1px solid var(--line);border-radius:20px;margin:3px;gap:7px;font-size:12px;cursor:pointer}.work-order-editor-fields .work-types .service-check input{position:absolute;inset:0;width:100%;height:100%;opacity:0;margin:0;cursor:pointer}.work-order-editor-fields .work-types .service-check:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.work-order-editor-fields .work-types .service-check:has(input:checked):before{content:"✓";font-size:13px}.work-order-editor-fields .work-types .service-check:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:3px}.work-order-editor-fields .work-types .service-check{font-size:11px;padding:7px 11px}.overlay:has(>.work-order-edit-modal){inset-block-start:24px;background:var(--paper);border-radius:12px 12px 0 0;-webkit-backdrop-filter:none;backdrop-filter:none;align-items:flex-start;padding:40px 24px 0}.work-order-edit-modal{height:calc(100dvh - 64px);max-height:calc(100dvh - 64px);border-bottom:0;border-radius:12px 12px 0 0}.work-order-editor-fields h3{font-size:11px;font-weight:400;color:var(--muted)}.work-order-editor-fields>section{padding-bottom:20px;margin-bottom:20px}@media(max-width:760px){.overlay:has(>.work-order-edit-modal){inset-block-start:0;padding:0;border-radius:0}.work-order-edit-modal{height:100dvh;max-height:100dvh;border-radius:0}}.orders-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.orders-toolbar>.button{gap:8px}.orders-toolbar>.button.selected{color:var(--accent);background:var(--accent-soft)}.order-view-switch{display:flex;padding:3px;background:var(--hover);border:1px solid var(--line);border-radius:9px;gap:3px}.order-view-switch button{border-radius:6px;padding:7px 14px;font-size:12px}.order-view-switch button.selected{background:var(--paper);box-shadow:0 1px 3px #00000012;color:var(--accent)}.order-advanced-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;padding:18px;border:1px solid var(--line);border-radius:12px;background:var(--paper);margin-bottom:18px}.order-advanced-filters>.button{grid-column:1/-1;justify-self:start}.order-visible-count{font-size:11px;color:var(--muted);margin:12px 0}.orders-list-wrap{max-width:100%;overflow-x:auto;border:1px solid var(--line);border-radius:12px;background:var(--paper)}.orders-list{width:100%;border-collapse:collapse;font-size:12px;min-width:850px}.orders-list th{text-align:start;background:var(--hover);font-size:11px;white-space:nowrap;padding:14px 12px;color:var(--muted);font-weight:500}.orders-list th button{padding:0;display:inline-flex;gap:5px}.orders-list td{padding:15px 12px;border-top:1px solid var(--line);vertical-align:middle}.orders-list td:first-child{min-width:240px;max-width:360px}.order-list-open{display:flex;flex-direction:column;text-align:start;gap:6px;max-width:100%;padding:0}.order-list-open small{color:var(--muted);font-size:10px}.order-list-open strong{font-size:13px;font-weight:500;overflow-wrap:anywhere}.orders-list .work-type-summary{display:block;margin-top:7px;font-size:10px;color:var(--muted)}.orders-list td time{white-space:nowrap;font-size:11px}.order-list-late{display:block;color:#bc3528;margin-top:5px;font-size:10px}.orders-list select{font-size:11px;max-width:145px}.orders-list tr.is-overdue td:first-child{border-inline-start:3px solid #d84a40}.order-no-results{padding:26px;text-align:center;border:1px dashed var(--line);border-radius:12px;margin:16px 0;color:var(--muted)}.order-no-results .button{margin-top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}@media(max-width:760px){.order-advanced-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:12px}.orders-toolbar{margin-bottom:14px}.orders-list-wrap{border-radius:8px}.orders-list td{padding:12px 10px}}.orders-list{min-width:1180px}.orders-list td:first-child{min-width:80px;max-width:120px;white-space:nowrap;color:var(--muted)}.orders-list td:nth-child(2){min-width:240px;max-width:350px}.orders-list .order-list-types{display:block;max-width:180px;font-size:11px;color:var(--muted)}.scope-search{position:absolute;top:22px;inset-inline-start:22px;z-index:550;max-width:calc(100% - 44px);width:320px}.scope-search>.button{background:var(--paper);box-shadow:var(--shadow);font-size:12px;max-width:100%}.scope-search-panel{background:var(--paper);box-shadow:var(--shadow);border:1px solid var(--line);border-radius:10px;padding:14px;margin-top:8px}.scope-search-panel .field{margin:0 0 10px}.scope-search-panel input{max-width:100%;width:100%}.scope-search-panel>small{display:block;font-size:10px;color:var(--muted);margin:8px 0}.scope-search-results{max-height:300px;overflow:auto;overscroll-behavior:contain}.scope-search-results button{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 8px;width:100%;text-align:start;border-top:1px solid var(--line);font-size:11px}.scope-search-results button>span{overflow-wrap:anywhere;min-width:0}.scope-search-results button>small{flex-shrink:0;color:var(--muted)}.scope-search-results button[aria-pressed=true]{background:var(--accent-soft);color:var(--accent)}@media(max-width:760px){.scope-search{top:16px;inset-inline-start:16px;width:290px;max-width:calc(100% - 32px)}}.scope-search~.composer-map-tools{top:74px}.scope-search.is-open~.composer-map-tools{visibility:hidden}.projects-browser .page-heading{margin-bottom:14px}.project-filter-row{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.project-filter-row button{font-size:12px;border:1px solid var(--line);border-radius:6px;padding:4px 10px;color:var(--muted);background:var(--paper)}.project-filter-row button.selected{background:var(--accent-soft);border-color:var(--accent-soft);color:var(--accent)}.projects-browser .project-grid{grid-template-columns:repeat(3,minmax(0,270px));justify-content:start;gap:16px;margin-bottom:8px}.projects-browser .project-card{border-radius:12px;min-width:0}.project-card-open{display:block;width:100%;padding:0;text-align:start}.projects-browser .project-card-info{padding:10px 12px;min-height:53px;gap:10px}.projects-browser .project-card-info strong{font-size:13px;font-weight:600}.projects-browser .project-card-info small{font-size:11px;margin-top:4px}.project-preview{height:120px;position:relative;overflow:hidden;background:var(--ground)}.project-preview-map{position:absolute;inset:0;pointer-events:none;z-index:0}.project-preview-message{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:12px;color:var(--muted);padding:16px}.project-preview-credit{position:absolute;bottom:2px;inset-inline-end:2px;font-size:8px;padding:1px 3px;color:#263d30;background:#fffc;z-index:1}.project-preview-reduced{position:absolute;top:4px;inset-inline-start:4px;font-size:9px;color:var(--muted);background:var(--paper);padding:3px 5px;border-radius:4px}.project-preview-attribution{font-size:9px;color:var(--muted);margin:0 0 12px}.project-preview-attribution a{text-decoration:underline}.projects-browser .project-table-wrap{overflow:visible}.projects-table{table-layout:fixed}.projects-table th:first-child{width:43%}.projects-table th:nth-child(2){width:29%}.projects-table th:last-child{width:52px}.projects-table td{padding:10px 12px}.project-name-cell{display:flex;align-items:center;gap:10px;min-width:0}.project-name-cell .text-link{font-size:13px;overflow-wrap:anywhere;min-width:0;text-align:start}.project-folder{flex-shrink:0;width:29px;height:29px;border-radius:8px;background:var(--accent-soft);color:var(--accent);display:grid;place-items:center}.project-folder.archived{color:var(--muted);background:var(--hover)}.project-star{flex-shrink:0;margin-inline-start:2px;color:var(--muted)}.project-star.star-active{color:#e5a02c}.project-star.star-active svg{fill:currentColor}.project-owner{display:flex;align-items:center;gap:8px;min-width:0;font-size:12px}.project-owner .avatar{flex-shrink:0}.projects-table time{font-size:12px;white-space:nowrap}.project-menu-container{position:relative}.project-actions-menu{position:absolute;inset-inline-end:0;top:36px;z-index:850;min-width:175px;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:9px;padding:5px}.project-actions-menu button{display:flex;width:100%;align-items:center;gap:8px;text-align:start;padding:10px;font-size:12px;border-radius:5px}.project-actions-menu button:hover{background:var(--hover)}.project-list-empty{padding:70px 20px;text-align:center;color:var(--muted)}.project-list-empty h2{font-size:18px;margin:18px 0 12px;color:var(--text)}.project-list-empty p{margin-bottom:20px;font-size:12px}.project-list-empty .button{margin:auto}.app.map-view>.sidebar,.app.map-view>.workspace>.topbar{display:none}.app.map-view>.workspace{height:100dvh}.app.map-view .map-main{height:100%;flex:1;border-radius:0}.map-workspace .map-top{inset-inline-start:78px;inset-inline-end:auto;top:auto;bottom:18px;width:auto;z-index:610}.map-workspace .map-file-actions{background:var(--paper);border:1px solid var(--line);border-radius:10px;pointer-events:auto}.map-workspace .map-contents.project-layers{top:16px;inset-inline-start:16px;width:300px;max-height:calc(100% - 32px);height:calc(100% - 32px);border-radius:17px;box-shadow:0 3px 12px #1f2a2426}.project-layers-heading{display:flex;align-items:center;gap:7px;padding:8px 10px;min-height:50px}.project-layers-heading .map-title{min-width:0;flex:1}.project-layers-heading .map-title strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px}.project-layers-heading .map-title small{font-size:10px;color:var(--muted)}.project-layers-heading .icon-button{width:26px;height:28px}.project-layer-tabs{display:flex;border-bottom:1px solid var(--line);flex-shrink:0}.project-layer-tabs button{flex:1;padding:10px;font-size:12px;border-bottom:2px solid transparent;color:var(--muted)}.project-layer-tabs button[aria-selected=true]{border-color:var(--accent);color:var(--accent);font-weight:600}.project-layer-controls{display:flex;align-items:center;gap:5px;padding:6px 10px;background:var(--ground);border-bottom:1px solid var(--line);flex-shrink:0}.project-layer-controls>span{flex:1;font-size:10px;color:var(--muted)}.project-layer-controls .icon-button{width:27px;height:27px}.project-layer-filter{padding:10px;display:flex;gap:8px;border-bottom:1px solid var(--line)}.project-layer-filter>.field{min-width:0;flex:1;margin:0}.project-layer-filter select{width:100%;font-size:11px;min-width:0}.project-layer-group-heading{display:flex;align-items:center;gap:3px;min-height:34px;padding-inline:6px}.project-layer-group-toggle{display:flex;align-items:center;gap:6px;flex:1;min-width:0;padding:7px 2px;text-align:start;font-size:12px;color:var(--muted)}.project-layer-group-toggle span{flex:1;min-width:0}.project-layer-group-toggle small{font-size:11px;margin-inline:4px}.project-layer-group-toggle .is-collapsed{transform:rotate(-90deg)}.project-layer-group-heading>.icon-button{width:24px;height:25px;color:var(--muted)}.project-layer-group.is-hidden .project-layer-group-toggle{opacity:.5}.project-layer-tree{padding:3px 4px 8px;min-height:0;flex:1;overflow:auto}.project-layer-tree .element-row{border:0;min-height:34px;padding:6px 12px;gap:8px}.project-layer-tree .element-symbol{width:18px;height:18px;flex-shrink:0}.project-layer-leaf-label{flex:1;min-width:0;text-align:start}.project-layer-leaf-label strong{font-size:12px;font-weight:400;overflow-wrap:anywhere;display:block}.project-layer-leaf-label small{font-size:9px;color:var(--muted)}.project-layers-create{display:flex;gap:7px;align-items:center;padding:10px!important}.project-layers-create select{min-width:0;width:95px;font-size:11px;padding:7px}.project-layers-create .button{flex:1;font-size:11px;padding:8px;white-space:normal}.project-map-summary{padding:18px;overflow:auto;font-size:12px}.project-map-summary h3{font-size:14px;margin-bottom:12px}.project-map-summary p{margin:12px 0;overflow-wrap:anywhere}.project-map-summary dl>div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px solid var(--line)}.project-map-summary dd{margin:0}.project-map-search{position:absolute;top:16px;left:calc(50% - 180px);width:360px;max-width:calc(100% - 660px);z-index:610;background:var(--paper);border:1px solid var(--line);box-shadow:var(--shadow);height:38px}.project-map-account{position:absolute;top:16px;inset-inline-end:16px;display:flex;gap:10px;align-items:center;z-index:610}.project-map-account .button{border-radius:25px;background:var(--paper);font-size:12px;box-shadow:var(--shadow)}.project-panel-toggle{position:absolute;z-index:620;inset-inline-start:306px;top:calc(50% - 20px);background:var(--paper);border:1px solid var(--line);width:20px;height:42px;border-radius:8px}.project-panel-toggle.is-collapsed{inset-inline-start:16px;top:70px;width:35px;height:35px}.project-panel-toggle.is-collapsed svg{transform:rotate(180deg)}.map-workspace .draw-toolbar{left:16px;top:calc(50% - 140px);bottom:auto;transform:none;flex-direction:column;direction:ltr;border-radius:26px;padding:5px}.map-workspace .draw-toolbar .separator{height:1px;width:24px}.map-workspace .map-controls{inset-inline-end:16px;bottom:18px}.map-workspace .layers-panel{inset-inline-end:60px;bottom:20px;top:auto}.map-workspace .inspector{z-index:650}@media(max-width:1100px){.project-map-search{left:80px;max-width:calc(100% - 420px);width:300px}.project-map-account{top:65px;inset-inline-end:16px}.projects-browser .project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-owner{font-size:11px}}@media(max-width:760px){.projects-browser .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.project-preview{height:110px}.projects-table th:first-child{width:48%}.projects-table th:nth-child(2){display:none}.projects-table td:nth-child(2){display:none}.project-name-cell{gap:7px}.projects-table th:last-child{width:42px}.projects-table td{padding:10px 7px}.project-name-cell .text-link{font-size:11px}.projects-table time{font-size:10px}.project-star{width:25px;height:28px}.project-filter-row{gap:6px}.map-workspace .map-contents.project-layers{width:min(300px,calc(100% - 62px));top:64px;height:calc(100% - 80px);max-height:calc(100% - 80px);inset-inline-start:12px}.project-map-search{left:12px;top:12px;width:calc(100% - 80px);max-width:none;height:38px}.project-map-account{top:12px;inset-inline-end:12px}.project-map-account>.button{display:none}.project-map-account .avatar{width:36px;height:36px}.project-panel-toggle{inset-inline-start:min(302px,calc(100% - 52px))}.project-panel-toggle.is-collapsed{top:65px;inset-inline-start:12px}.map-workspace .draw-toolbar{left:8px;top:calc(50% - 140px);max-width:none;padding:4px;gap:1px}.map-workspace .draw-toolbar .icon-button{width:30px;height:30px}.map-workspace .map-controls{inset-inline-end:9px;bottom:12px}.map-workspace .map-top{inset-inline-start:54px;bottom:12px}.project-layers-heading .map-title strong{font-size:12px}.map-workspace .draw-instruction{left:50%;max-width:calc(100% - 20px);bottom:70px}.map-workspace .inspector{inset-inline:12px;top:65px;bottom:12px;width:auto;max-height:calc(100% - 80px)}}@media(max-width:480px){.projects-browser .project-grid{grid-template-columns:1fr}.projects-browser .project-card{max-width:100%}.project-preview{height:135px}}.map-workspace .draw-toolbar{left:auto;inset-inline-end:16px}@media(max-width:1100px)and (min-width:761px){.project-map-search{left:auto;inset-inline-end:80px}}@media(max-width:760px){.map-workspace .draw-toolbar{left:auto;inset-inline-end:8px}}@media(max-width:760px){.project-map-search{left:auto;inset-inline-start:12px}}html[dir=rtl] .project-layers-heading>button:first-child svg,html[dir=rtl] .project-panel-toggle svg{transform:rotate(180deg)}html[dir=rtl] .project-panel-toggle.is-collapsed svg{transform:none}.project-layers-heading .map-title{display:block;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.project-layer-tree{max-height:none}.map-workspace .draw-toolbar{inset-inline-end:auto;left:16px;right:auto}.map-workspace .map-top{inset-inline-start:auto;inset-inline-end:78px}html[dir=ltr] .map-workspace .draw-toolbar{left:auto;right:16px}@media(max-width:760px){.map-workspace .draw-toolbar{left:8px;right:auto}html[dir=ltr] .map-workspace .draw-toolbar{left:auto;right:8px}.map-workspace .map-top{inset-inline-start:auto;inset-inline-end:54px}}.project-layer-panel{display:flex;flex-direction:column;flex:1;min-height:0}.project-layer-panel[hidden]{display:none}.project-layer-active-filter{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:6px 12px;border-bottom:1px solid var(--line);font-size:10px;color:var(--muted)}.project-layer-active-filter .text-link{font-size:10px}.project-layer-controls .is-active{color:var(--accent);background:var(--accent-soft)}.project-layer-leaf .element-symbol svg{display:block}.map-workspace .draw-toolbar:has(.map-bookmark-toggle.is-open){z-index:800}.map-workspace .draw-toolbar .map-bookmark-toggle{border:0;box-shadow:none;background:transparent;border-radius:8px}.map-workspace .draw-toolbar .map-bookmark-toggle.is-open{background:var(--accent-soft);color:var(--accent)}html[dir=rtl] .draw-toolbar .map-bookmarks{direction:rtl}html[dir=ltr] .draw-toolbar .map-bookmarks{direction:ltr}@media(max-height:600px){.map-workspace .draw-toolbar{top:60px}.map-workspace .map-controls{flex-direction:row;bottom:8px;inset-inline-end:78px;gap:5px}.map-workspace .map-controls>div{display:flex;flex-direction:row}.map-workspace .map-top{bottom:56px}.map-workspace .draw-instruction{bottom:105px}.draw-toolbar .map-bookmark-panel{max-height:calc(100dvh - 110px)}}.map-workspace .draw-toolbar{top:calc(50% - 170px)}@media(max-width:760px){.map-workspace .draw-toolbar{top:calc(50% - 135px)}}@media(max-height:600px){.map-workspace .draw-toolbar{top:60px}.map-workspace .draw-toolbar .icon-button{width:30px;height:30px}}
