:root{--mtrs-teal:#00c2a8;--mtrs-dark:#0a1f2e;--mtrs-graphite:#33414f;--mtrs-light:#e6ebef;--mtrs-white:#fff;--color-background:var(--mtrs-dark);--color-background-raised:#102938;--color-surface:#132d3c;--color-surface-elevated:#193645;--color-surface-hover:#204252;--color-text-primary:var(--mtrs-white);--color-text-secondary:var(--mtrs-light);--color-text-muted:#a9bac4;--color-border:#e6ebef29;--color-border-strong:#e6ebef42;--color-accent:var(--mtrs-teal);--color-accent-hover:#21d5be;--color-accent-surface:#00c2a824;--color-success:#55d69b;--color-success-surface:#55d69b21;--color-warning:#f2be63;--color-warning-surface:#f2be6324;--color-danger:#fa8080;--color-danger-surface:#fa808024;--color-neutral:#a9bac4;--color-neutral-surface:#a9bac421;--chart-series-1:var(--mtrs-teal);--chart-series-2:#55d69b;--chart-series-3:#f2be63;--chart-series-4:#9eb7c8;--font-sans:"Montserrat", "Segoe UI", Arial, sans-serif;--radius-sm:6px;--radius-md:10px;--shadow-surface:0 14px 32px #0000002e;--control-height:38px;color:#172033;font-synthesis:none;background:#f4f6f9;font-family:Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select{font:inherit}button{color:#fff;cursor:pointer;background:#2767ad;border:0;border-radius:7px;padding:.58rem .88rem;font-weight:650}button:disabled{cursor:wait;opacity:.55}input,select{color:#172033;background:#fff;border:1px solid #cfd8e4;border-radius:6px;padding:.52rem .6rem}.app-shell{grid-template-columns:216px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#dce7f6;background:#14263a;flex-direction:column;gap:2rem;padding:1.7rem 1rem;display:flex}.brand{color:#fff;letter-spacing:.06em;padding:0 .55rem;font-size:1.25rem;font-weight:800}.brand span{color:#76aee8;letter-spacing:.19em;margin-top:.2rem;font-size:.64rem;display:block}.sidebar nav{gap:.35rem;display:grid}.sidebar nav button,.sidebar nav a{color:#b9cce1;text-align:left;background:0 0;border-radius:6px;padding:.65rem .7rem;font-weight:550;text-decoration:none;display:block}.sidebar nav button.active,.sidebar nav button:hover,.sidebar nav a:hover{color:#fff;background:#264767}.sidebar small{color:#7790aa;margin-top:auto}main{width:min(1500px,100%);margin:0 auto;padding:2.15rem clamp(1rem,3vw,3rem)}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.035em;margin-bottom:.35rem;font-size:clamp(1.65rem,3vw,2.35rem)}h2{margin-bottom:0;font-size:1.1rem}h3{font-size:.98rem}.eyebrow{color:#55718e;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.35rem;font-size:.72rem;font-weight:750}.subtle,.updated{color:#68798b;font-size:.88rem}.page-header,.device-header,.panel-heading,.tab-toolbar{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.header-actions{align-items:center;gap:.75rem;display:flex}.device-header{align-items:center;margin-bottom:1.5rem}.summary-grid{grid-template-columns:repeat(6,minmax(120px,1fr));gap:.85rem;margin:1.6rem 0;display:grid}.summary-card,.panel,.info-card,.tab-panel{background:#fff;border:1px solid #e0e6ed;border-radius:10px;box-shadow:0 2px 8px #1c344d0a}.summary-card{border-top:3px solid #2767ad;padding:1rem}.summary-card span{color:#697a8c;font-size:.82rem;display:block}.summary-card strong{color:#1a2c40;margin-top:.3rem;font-size:1.7rem;display:block}.dashboard-grid{grid-template-columns:minmax(0,1fr) 270px;align-items:start;gap:1rem;display:grid}.panel,.tab-panel{padding:1.15rem}.filters{flex-wrap:wrap;align-items:center;gap:.6rem;margin:1rem 0;display:flex}.filters input{flex:195px}.toggle,.checkbox{color:#4a5f74;align-items:center;gap:.45rem;font-size:.85rem;display:inline-flex}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:.86rem}th,td{white-space:nowrap;text-align:left;border-bottom:1px solid #e9edf2;padding:.75rem .6rem}th{color:#65778a;text-transform:uppercase;letter-spacing:.055em;font-size:.7rem}.link-button{color:#1c5d9f;background:0 0;padding:0;font-weight:700;text-decoration:underline}.mono{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem}.result{text-overflow:ellipsis;max-width:320px;overflow:hidden}.badge{letter-spacing:.04em;border-radius:100px;padding:.22rem .48rem;font-size:.68rem;font-weight:800;display:inline-block}.system-panel{position:sticky;top:1rem}.service-grid{gap:.65rem;margin-top:1rem;display:grid}.service{grid-template-columns:auto 1fr;align-items:center;gap:.35rem .6rem;display:grid}.service small{color:#7c8b98;grid-column:2;font-size:.72rem}.service strong{font-size:.88rem}.system-page-actions{align-items:center;gap:.75rem;display:flex}.system-overview{background:#dce6ef;border:1px solid #dce6ef;border-radius:14px;grid-template-columns:minmax(220px,1.5fr) repeat(2,minmax(150px,1fr));gap:1px;margin:1.4rem 0;display:grid;overflow:hidden;box-shadow:0 10px 28px #17334d12}.system-overall-state,.system-overview-stat{background:#fff;min-height:105px;padding:1.15rem 1.3rem}.system-overall-state{align-items:center;gap:.9rem;display:flex}.system-overall-state>div{gap:.17rem;display:grid}.system-overall-state span,.system-overview-stat span{color:#708195;font-size:.78rem;font-weight:650}.system-overall-state strong{color:#166542;font-size:1.35rem}.system-pulse{background:#20b879;border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 6px #e0f7eb}.system-overview-stat{align-content:center;gap:.3rem;display:grid}.system-overview-stat strong{color:#243b55;letter-spacing:-.04em;font-size:1.55rem}.system-services-panel{padding:1.35rem}.system-services{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}.service-card{background:linear-gradient(135deg,#fff,#f9fbfd);border:1px solid #dfe8f0;border-radius:12px;grid-template-columns:auto minmax(0,1fr);min-height:105px;padding:.95rem;transition:border-color .16s,transform .16s,box-shadow .16s}.service-card:hover{border-color:#9bc9dd;transform:translateY(-1px);box-shadow:0 7px 18px #1d486617}.service-icon{color:#126d82;letter-spacing:.04em;background:#ddf4f5;border-radius:10px;place-items:center;width:36px;height:36px;font-size:.69rem;font-weight:850;display:grid}.state-down .service-icon{color:#a13232;background:#fce6e6}.state-unknown .service-icon{color:#647486;background:#edf1f4}.service-card-main{gap:.27rem;min-width:0;display:grid}.service-card-title{justify-content:space-between;align-items:center;gap:.4rem;min-width:0;display:flex}.service-card-title strong{color:#203950;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.service-role{color:#567088;font-size:.8rem}.service-card small{text-overflow:ellipsis;white-space:nowrap;grid-column:auto;overflow:hidden}.empty{color:#65778a;text-align:center;justify-items:start;gap:.5rem;padding:2.3rem 1rem;display:grid}.empty.error{color:#8c3b3b}.empty button{margin-top:.2rem}.detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.info-card{padding:1rem}.info-card h3{margin-bottom:.7rem}.card-title-actions{justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.7rem;display:flex}.card-title-actions h3{margin-bottom:0}.field{border-top:1px solid #edf0f3;grid-template-columns:minmax(120px,.8fr) 1.2fr;gap:1rem;padding:.55rem 0;display:grid}.field span{color:#758497;font-size:.85rem}.field strong{overflow-wrap:anywhere}.tabs{border-bottom:1px solid #dce3eb;gap:.2rem;margin-bottom:1.25rem;display:flex}.tabs button{color:#667a8e;background:0 0;border-radius:7px 7px 0 0}.tabs button:hover{background:#edf3f9}.tab-toolbar{margin-bottom:1rem}.tab-toolbar>div:last-child{align-items:center;gap:.55rem;display:flex}.tab-toolbar select{margin-left:.35rem}.command-actions{flex-wrap:wrap;gap:.6rem;margin-bottom:1rem;display:flex}.danger-button{background:#b94040}.notice{color:#28567f;background:#edf6ff;border-radius:6px;margin:.8rem 0;padding:.65rem .75rem}.config-status{color:#53687d;background:#f4f7fa;border-radius:7px;flex-wrap:wrap;gap:1rem;margin-bottom:1rem;padding:.75rem;font-size:.88rem;display:flex}.text-danger{color:#a23131}.config-form{gap:.9rem;max-width:420px;display:grid}.config-form label:not(.checkbox){color:#52677b;gap:.35rem;font-size:.9rem;display:grid}.config-form input[type=number]{width:100%}.config-form button{justify-self:start}.modal-backdrop{z-index:100;background:#0c19267a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:10px;width:min(420px,100%);padding:1.25rem;box-shadow:0 12px 45px #00000047}.modal-actions{justify-content:flex-end;gap:.6rem;display:flex}@media (width<=1050px){.summary-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr}.system-panel{position:static}.service-grid{grid-template-columns:repeat(3,1fr)}.service{grid-template-columns:auto 1fr}}@media (width<=720px){.app-shell{grid-template-columns:1fr}.sidebar{flex-direction:row;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.sidebar nav{gap:.2rem;display:flex;overflow-x:auto}.sidebar nav button,.sidebar nav a{white-space:nowrap}.sidebar small{display:none}.brand{font-size:1rem}.brand span{display:none}main{padding:1.25rem 1rem}.page-header,.device-header,.tab-toolbar{flex-direction:column;align-items:flex-start}.summary-grid{grid-template-columns:repeat(2,1fr)}.header-actions{justify-content:space-between;width:100%}.detail-grid{grid-template-columns:1fr}.service-grid{grid-template-columns:repeat(2,1fr)}.filters>*{flex:135px}.tabs{overflow-x:auto}.tabs button{white-space:nowrap}.field{grid-template-columns:1fr;gap:.2rem}}.auth-page{place-items:center;min-height:100vh;padding:1rem;display:grid}.auth-card{background:#fff;border:1px solid #e0e6ed;border-radius:10px;gap:.85rem;width:min(390px,100%);padding:2rem;display:grid;box-shadow:0 8px 28px #1c344d1a}.auth-card .brand{color:#14263a;padding:0}.auth-card label{color:#52677b;gap:.35rem;display:grid}.auth-card input{width:100%}.row-action{text-align:right;width:1%}.row-delete-action{min-width:2rem;padding:.25rem .5rem;font-size:1rem;line-height:1}.row-copy-action{min-width:2rem;margin-right:.3rem;padding:.25rem .5rem;font-size:1rem;line-height:1}.device-create-form{gap:.85rem;display:grid}.device-create-form label{color:#52677b;gap:.35rem;font-size:.9rem;display:grid}.device-create-form input,.device-create-form select{width:100%}.device-create-form+.notice{margin-top:.85rem}.modal .device-create-form+.notice+.modal-actions,.modal .device-create-form+.modal-actions{margin-top:1rem}.device-type{color:#52677b;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;max-width:10.5rem;font-size:.76rem;font-weight:700;display:inline-block;overflow:hidden}.device-type-settings{border:1px solid #a9bdc9;border-radius:8px;gap:.65rem;margin:.2rem 0;padding:.75rem;display:grid}.device-type-settings legend{padding:0 .35rem}.imei-input-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:.55rem;display:grid}.imei-input-row>label,.imei-input-row>label>input{min-width:0}.modem-imei-read-control{gap:.3rem;min-width:0;display:grid}.modem-imei-read-control small{overflow-wrap:anywhere;max-width:22rem}.modem-imei-read-control--unavailable{grid-column:1/-1}.modem-imei-read-control--unavailable small{max-width:none}.modem-imei-read-button{white-space:nowrap;min-height:2.45rem}@media (width<=560px){.imei-input-row{grid-template-columns:1fr}.modem-imei-read-button{width:100%}}.generated-device-id output{background:#edf4f7;border-radius:5px;min-height:1.45rem;padding:.4rem .55rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;display:block}.generated-device-id small{color:#52677b}.dashboard-eyebrow{color:#277f91;letter-spacing:.055em;text-transform:none;font-size:.78rem}.devices-table-wrap{overflow:hidden}.modbus-tcp-overview .info-card:last-child{grid-column:1/-1}.modbus-tcp-header .badge{vertical-align:middle;font-size:.68rem}.modbus-tcp-tags-table{max-width:100%}.modbus-tcp-tags-table table{min-width:1680px}.tag-row-actions{gap:.35rem;display:flex}.tag-address{text-overflow:ellipsis;white-space:nowrap;max-width:22rem;overflow:hidden}.tag-address-preview{color:#68798b;cursor:default;background:#f3f6f9}.compact-button{padding:.38rem .55rem;font-size:.76rem}.modbus-tcp-tag-modal{width:min(760px,100%);max-height:calc(100vh - 2rem);overflow-y:auto}.modbus-tcp-tag-form .form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem;margin:1rem 0;display:grid}.modbus-tcp-tag-form .form-grid>label:not(.checkbox){color:#52677b;gap:.35rem;font-size:.86rem;display:grid}.modbus-tcp-tag-form .checkbox{align-self:end;min-height:40px}@media (width<=720px){.modbus-tcp-tag-form .form-grid{grid-template-columns:1fr}.modbus-tcp-overview .info-card:last-child{grid-column:auto}}.devices-table{table-layout:fixed}.devices-table th,.devices-table td{text-overflow:ellipsis;padding:.7rem .45rem;overflow:hidden}.devices-table th:first-child{width:11%}.devices-table th:nth-child(2){width:15%}.devices-table th:nth-child(3){width:8%}.devices-table th:nth-child(4){width:15%}.devices-table th:nth-child(5){width:12%}.devices-table th:nth-child(6){width:7%}.devices-table th:nth-child(7){width:6%}.devices-table th:nth-child(8){width:12%}.devices-table .link-button{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.organization-detail-tabs{border-bottom:1px solid var(--color-border);gap:.45rem;margin:1rem 0;display:flex}.organization-detail-tabs button{border-radius:var(--radius-sm) var(--radius-sm) 0 0}.organization-detail-tabs button.is-active{color:#061d27;background:var(--color-accent);border-color:var(--color-accent)}.interface-settings-company{max-width:30rem;color:var(--color-muted);gap:.45rem;margin-bottom:1rem;font-size:.9rem;display:grid}.map-corner-badge-settings{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;max-width:48rem;margin-bottom:1rem;display:grid}.map-corner-badge-settings>div,.map-corner-badge-settings>p,.map-corner-badge-settings .modal-actions{grid-column:1/-1}.map-corner-badge-settings>label{color:var(--color-muted);gap:.4rem;font-size:.9rem;display:grid}.map-corner-badge-settings .map-corner-badge-preview{min-height:3.75rem;color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#082337;align-items:center;gap:.7rem;padding:.55rem .7rem;display:flex}.map-corner-badge-preview img{object-fit:contain;width:auto;max-width:10rem;height:2.3rem}.map-corner-badge-preview strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.organization-ui-settings-card{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:1rem 1.25rem;max-width:48rem;display:grid}.organization-ui-settings-card h3,.organization-ui-settings-card .notice,.organization-ui-settings-card .text-danger,.organization-ui-settings-card .modal-actions{grid-column:1/-1}.organization-ui-settings-card>label:not(.toggle){color:var(--color-muted);gap:.4rem;font-size:.9rem;display:grid}.organization-ui-settings-card>label select{width:100%}.organization-ui-settings-card .toggle{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#0417225c;min-height:2.65rem;padding:.55rem .7rem}.organization-ui-settings-card .modal-actions{margin-top:.15rem}.calculated-value-modal{width:min(960px,100%);max-height:calc(100vh - 2rem);overflow:auto}.calculated-value-form{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.calculated-value-form h3,.calculated-value-form>label:last-of-type,.calculated-value-form .modal-actions,.calculated-value-form .text-danger{grid-column:1/-1}.calculated-value-input{border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-column:1/-1;grid-template-columns:8rem repeat(4,minmax(0,1fr)) auto;align-items:end;gap:.65rem;padding:.7rem;display:grid}.calculated-value-input label{gap:.35rem;display:grid}.calculated-value-input button{min-width:2.25rem}.organization-ui-settings-card>label:not(.toggle) input[type=number]{width:100%;min-height:2.65rem}.organization-ui-settings-card .toggle{align-items:center;gap:.55rem;display:flex}.organization-ui-settings-card .toggle input{flex:none}.table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-sm)}.table-wrap table{margin:0}.row-action{white-space:nowrap;text-align:right;width:1%}.row-action .link-button{min-height:2rem;color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border);border-radius:var(--radius-sm);justify-content:center;align-items:center;padding:.38rem .55rem;font-size:.76rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.row-action .link-button:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.row-action .link-button.text-danger{color:var(--mtrs-white);background:#b84545;border-color:#b84545}.row-action .link-button.text-danger:hover{color:var(--mtrs-white);background:#d55b5b;border-color:#d55b5b}.row-action .link-button+.link-button{margin-left:.45rem}.config-form.alert-rule-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;max-width:52rem}.config-form.alert-rule-form h3,.config-form.alert-rule-form .modal-actions{grid-column:1/-1}.config-form.alert-rule-form .checkbox,.config-form.alert-rule-form .alert-rule-sound-preview{align-self:end}@media (width<=1050px){.devices-table .device-firmware,.devices-table .device-rssi{display:none}}@media (width<=760px){.devices-table .device-sequence{display:none}.devices-table th:first-child{width:23%}.devices-table th:nth-child(2){width:25%}.devices-table th:nth-child(3){width:16%}.devices-table th:nth-child(4){width:26%}.organization-ui-settings-card,.map-corner-badge-settings,.config-form.alert-rule-form{grid-template-columns:1fr}.organization-ui-settings-card h3,.organization-ui-settings-card .notice,.organization-ui-settings-card .text-danger,.organization-ui-settings-card .modal-actions,.map-corner-badge-settings>div,.map-corner-badge-settings>p,.map-corner-badge-settings .modal-actions,.config-form.alert-rule-form h3,.config-form.alert-rule-form .modal-actions{grid-column:auto}.table-wrap{overflow-x:auto}.row-action .link-button+.link-button{margin-left:.4rem}.calculated-value-form,.calculated-value-input{grid-template-columns:1fr}.calculated-value-form h3,.calculated-value-form>label:last-of-type,.calculated-value-form .modal-actions,.calculated-value-form .text-danger{grid-column:auto}}.calculated-card-values{border:1px solid var(--color-border);border-radius:var(--radius-sm);grid-column:1/-1;gap:.4rem;padding:.75rem;display:grid}.calculated-card-values small{color:var(--color-text-muted)}.calculated-card-values .checkbox{margin:0}.calculated-card-values .checkbox.is-disabled{color:var(--color-text-muted);opacity:.68}.calculated-card-row-actions{white-space:nowrap;justify-content:flex-end;gap:.45rem;min-width:10.5rem;display:flex}.calculated-card-color-picker{border:0;min-width:0;margin:0;padding:0}.calculated-card-color-picker legend{color:var(--color-text-muted);margin-bottom:.45rem;font-size:.86rem}.calculated-card-color-picker>div{flex-wrap:wrap;gap:.5rem;display:flex}.calculated-card-color-option{min-height:2.25rem;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:#04172261;grid-template-columns:1.25rem auto;align-items:center;gap:.35rem;padding:.35rem .5rem;display:grid}.calculated-card-color-option>span{background:var(--card-color);border-radius:50%;width:1.1rem;height:1.1rem;box-shadow:inset 0 0 0 1px #ffffff4d}.calculated-card-color-option.is-selected{color:var(--color-text-primary);border-color:var(--card-color);box-shadow:0 0 0 1px color-mix(in srgb, var(--card-color) 45%, transparent)}.calculated-card-opacity{gap:.4rem;display:grid}.calculated-card-opacity input{width:min(100%,24rem)}.calculated-card-opacity strong{color:var(--color-text-primary)}.calculated-card-settings-layout{grid-template-columns:minmax(0,1fr) minmax(19rem,.55fr);align-items:stretch;gap:1rem;display:grid}.calculated-card-settings-controls{align-content:start;gap:.4rem;min-width:0;display:grid}.calculated-card-preview{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);isolation:isolate;background:#0a2533;min-height:16rem;padding:.7rem;position:relative;overflow:hidden}.calculated-card-preview>span{z-index:2;color:#d7eef4;background:#051d29cc;border:1px solid #a0dae43d;border-radius:.2rem;padding:.22rem .4rem;font-size:.66rem;font-weight:700;display:inline-block;position:relative}.calculated-card-preview svg{z-index:-1;background:linear-gradient(145deg,#0a3a4c,#072330 62%,#0a2c38);width:100%;height:100%;position:absolute;inset:0}.calculated-preview-land{fill:#36564f;opacity:.82}.calculated-preview-water{fill:none;stroke:#13c6c3;stroke-width:7px;opacity:.85}.calculated-preview-water.is-secondary{stroke:#55a9ff;stroke-width:3px;opacity:.68}.calculated-preview-road{fill:none;stroke:#f2d5889e;stroke-width:2px;stroke-dasharray:4 4}.calculated-card-preview circle{fill:#f4cb6e;stroke:#fff0bd;stroke-width:2px}.calculated-card-preview-card{z-index:1;color:#eaf8fb;background:rgb(7 31 44/var(--preview-card-opacity));border:1px solid color-mix(in srgb, var(--preview-card-color) 55%, #2b6878);border-left:3px solid var(--preview-card-color);-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);border-radius:.35rem;gap:.34rem;width:min(14.5rem,100% - 1.6rem);padding:.6rem .7rem;display:grid;position:absolute;bottom:.8rem;right:.8rem;box-shadow:0 .45rem 1.2rem #0000004d}.calculated-card-preview-card>strong{color:#fff;font-size:var(--preview-font-size);line-height:1.2}.calculated-card-preview-card>div{font-size:calc(var(--preview-font-size) * .74);grid-template-columns:minmax(0,1fr) auto;gap:.5rem;display:grid}.calculated-card-preview-card>div span{color:#bed8e1;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calculated-card-preview-card>div b{color:#fff;white-space:nowrap}.calculated-card-preview-card small{color:#c7dce5;font-size:.72rem}.calculated-value-form>button.secondary+h3,.calculated-value-form>button.secondary+h3+label,.calculated-value-form>button.secondary+h3+label+label,.calculated-value-form>button.secondary+h3+label+label+label,.calculated-value-form>button.secondary+h3+label+label+label+label,.calculated-value-form>button.secondary+h3+label+label+label+label+label{display:none}@media (width<=760px){.calculated-card-settings-layout{grid-template-columns:1fr}.calculated-card-preview{min-height:13rem}}.device-map-marker-settings-grid{margin-top:1rem}.device-map-marker-settings{max-width:34rem}.device-map-marker-settings small{color:var(--color-text-muted)}.device-map-marker-summary{align-items:center;gap:.65rem;margin-top:.85rem;display:flex}.device-map-marker-preview{background:#00c2a8;border:2px solid #e5ffff;border-radius:50%;flex:none;width:1.15rem;height:1.15rem;display:inline-block;box-shadow:0 0 0 3px #00c2a838}.device-map-marker-preview.marker-color-blue{background:#55a9ff;box-shadow:0 0 0 3px #55a9ff38}.device-map-marker-preview.marker-color-lilac{background:#c593ff;box-shadow:0 0 0 3px #c593ff38}.device-map-marker-preview.marker-square{border-radius:.12rem}.device-map-marker-preview.marker-diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:.12rem}.device-map-marker-preview.marker-pin{clip-path:polygon(50% 100%,8% 44%,8% 23%,25% 5%,75% 5%,92% 23%,92% 44%)}.device-map-marker-preview.marker-hexagon{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.device-map-marker-preview.marker-drop{clip-path:polygon(50% 100%,13% 58%,7% 35%,17% 13%,38% 0,62% 0,83% 13%,93% 35%,87% 58%)}.map-marker-settings-grid{grid-template-columns:minmax(0,1fr) 14rem;align-items:stretch;gap:1rem;display:grid}.map-marker-choice-row{flex-wrap:wrap;gap:.45rem;margin:.45rem 0 1rem;display:flex}.map-marker-choice{background:#0c2634;border-color:#31576a;align-items:center;gap:.4rem;min-height:2.15rem;padding:.35rem .55rem;font-size:.78rem;display:inline-flex}.map-marker-choice.active{border-color:var(--color-accent);box-shadow:inset 0 0 0 1px var(--color-accent)}.map-marker-choice>i{border:1px solid #ffffffb3;border-radius:50%;width:.85rem;height:.85rem;display:inline-block}.map-marker-choice>.device-map-marker-preview{width:.85rem;height:.85rem;box-shadow:none}.map-marker-preview-map{color:#d9eff1;background:linear-gradient(145deg,#16515b,#12323f 55%,#38604d);border:1px solid #31576a;border-radius:.45rem;place-items:center;min-height:12rem;display:grid;position:relative;overflow:hidden}.map-marker-preview-map:before{content:"";background:repeating-linear-gradient(20deg,#0000 0 30px,#f7cd6f38 31px 34px,#0000 35px 65px);position:absolute;inset:-20%;transform:rotate(-12deg)}.map-marker-preview-map>span{z-index:1;font-size:.72rem;position:absolute;top:.55rem;left:.6rem}.map-marker-preview-map .large{z-index:1;width:1.75rem;height:1.75rem;position:relative}:root{font-family:var(--font-sans);color:var(--color-text-primary);background:var(--color-background);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:var(--color-text-primary);background:radial-gradient(circle at 88% -12%, #00c2a81c, transparent 27rem), linear-gradient(135deg, #071923, var(--color-background))}button{color:#052721;background:var(--color-accent);box-shadow:none}button:hover{background:var(--color-accent-hover)}button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}input,select{color:var(--color-text-primary);border-color:var(--color-border-strong);background:#0d2432}input::placeholder{color:var(--color-text-muted)}option{color:var(--color-text-primary);background:#0d2432}.app-shell{background:0 0}.sidebar{color:var(--color-text-secondary);border-right:1px solid var(--color-border);background:linear-gradient(#071923,#0a1f2e);position:relative}.sidebar:after{content:"";background:var(--color-accent);width:1px;height:7rem;position:absolute;top:0;right:-1px}.brand{color:var(--mtrs-white);font-family:var(--font-sans);letter-spacing:.11em}.brand span{color:var(--color-accent)}.sidebar nav button,.sidebar nav a{color:var(--color-text-muted)}.sidebar nav button.active,.sidebar nav button:hover,.sidebar nav a:hover{color:var(--mtrs-white);background:var(--color-accent-surface);box-shadow:inset 3px 0 var(--color-accent)}.sidebar small{color:var(--color-text-muted)}main{color:var(--color-text-primary)}h1,h2,h3{color:var(--mtrs-white)}.eyebrow{color:var(--color-accent)}.subtle,.updated{color:var(--color-text-muted)}.topbar{border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#071923b8;justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;margin:0 clamp(-1rem,-3vw,-3rem) 1.9rem;padding:.75rem clamp(1rem,3vw,3rem);display:flex}.topbar .eyebrow{margin-bottom:.12rem}.users-filter{width:fit-content;color:var(--color-text-secondary);align-items:center;gap:.45rem;margin:1.25rem 0;display:flex}.operator-client-shell{background:0 0;min-height:100vh}.operator-client-header{border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#071923b8;justify-content:space-between;align-items:center;gap:1rem;min-height:4.25rem;padding:.75rem clamp(1rem,3vw,3rem);display:flex;position:relative}.operator-client-header .eyebrow{margin-bottom:.12rem}.operator-client-brand{align-items:center;gap:.55rem;height:2.25rem;display:flex}.operator-client-brand img{object-fit:contain;background:#fff;border-radius:.25rem;width:auto;max-width:min(11rem,42vw);height:2.25rem;padding:.24rem .42rem;display:block}.operator-client-brand strong{max-width:12rem;color:var(--mtrs-white);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.operator-client-server-clock{font-variant-numeric:tabular-nums;pointer-events:none;justify-items:center;line-height:1.05;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.operator-client-time{color:var(--color-accent);letter-spacing:.055em;white-space:nowrap;text-shadow:0 0 12px #00c2a83d;font-size:1.35rem;font-weight:800}.operator-client-date{color:var(--color-text-muted);letter-spacing:.045em;white-space:nowrap;margin-top:.24rem;font-size:.7rem;font-weight:600}.operator-client-cards-toggle{color:#718a96;background:#07192394;border:1px solid #718a9675;border-radius:.35rem;place-items:center;width:2rem;min-height:2rem;padding:0;font-size:1rem;line-height:1;display:grid;position:absolute;top:50%;left:calc(50% + 5.75rem);transform:translateY(-50%)}.operator-client-cards-toggle.is-active{color:#052c31;background:#00c2a8;border-color:#53e3d0;box-shadow:0 0 0 3px #00c2a829}.operator-client-cards-toggle:hover,.operator-client-cards-toggle:focus-visible{color:#fff;border-color:#8af2e4;outline:none}.operator-client-cards-toggle.is-active:hover,.operator-client-cards-toggle.is-active:focus-visible{color:#052c31;background:#34d4c2}.operator-client-user{max-width:16rem;color:var(--mtrs-white);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.84rem;overflow:hidden}.operator-client-actions{align-items:center;gap:.7rem;display:flex}.operator-client-main{width:min(1600px,100%);max-width:none;margin:0 auto;padding:clamp(1.25rem,3vw,3rem)}.topbar-title{color:var(--color-text-secondary);margin:0;font-size:.84rem}.topbar-actions{align-items:center;gap:.7rem;display:flex}.user-context{text-align:right;min-width:0;display:grid}.user-context strong{max-width:17rem;color:var(--mtrs-white);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.user-context small{color:var(--color-text-muted);text-transform:capitalize;font-size:.68rem}.language-control select{min-width:4.15rem;padding:.42rem .5rem;font-size:.75rem}.logout-button{padding:.46rem .68rem;font-size:.78rem}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.back-button,.secondary{color:var(--color-text-secondary);background:var(--color-surface-elevated)}.back-button:hover,.secondary:hover{background:var(--color-surface-hover)}.summary-card,.panel,.info-card,.tab-panel{border-color:var(--color-border);box-shadow:var(--shadow-surface);background:linear-gradient(145deg,#193645f5,#0f2734f5)}.summary-card{border-top-color:var(--color-accent)}.summary-card span,.field span,.config-status,.config-form label:not(.checkbox),.toggle,.checkbox{color:var(--color-text-muted)}.summary-card strong{color:var(--mtrs-white)}.summary-card.green{border-color:var(--color-success)}.summary-card.gray{border-color:var(--color-neutral)}.summary-card.amber{border-color:var(--color-warning)}.summary-card.purple{border-color:#9eb7c8}.summary-card.red{border-color:var(--color-danger)}th,td{border-bottom-color:var(--color-border)}th{color:var(--color-text-muted)}tbody tr:hover{background:#00c2a812}.link-button{color:var(--color-accent)}.link-button:hover{color:var(--color-accent-hover);background:0 0}.toggle input,.checkbox input{accent-color:var(--color-accent)}.badge.success{color:var(--color-success);background:var(--color-success-surface)}.badge.muted{color:var(--color-neutral);background:var(--color-neutral-surface)}.badge.warning{color:var(--color-warning);background:var(--color-warning-surface)}.badge.danger{color:var(--color-danger);background:var(--color-danger-surface)}.badge.presence-online{color:var(--color-success);background:var(--color-success-surface)}.badge.presence-idle{color:var(--color-warning);background:var(--color-warning-surface)}.badge.presence-offline{color:var(--color-danger);background:var(--color-danger-surface)}.badge.presence-never_connected{color:var(--color-neutral);background:var(--color-neutral-surface)}.device-status-dot-target{cursor:help;flex:0 0 1.5rem;place-items:center;width:1.5rem;height:1.5rem;display:inline-grid;position:relative}.device-status-dot{background:currentColor;border-radius:50%;width:.56rem;height:.56rem;box-shadow:0 0 0 2px}.device-status-dot-target.presence-online{color:var(--color-success)}.device-status-dot-target.presence-idle{color:var(--color-warning)}.device-status-dot-target.presence-offline{color:var(--color-danger)}.device-status-dot-target.presence-never_connected{color:var(--color-neutral)}.device-status-dot-target:after{z-index:30;width:max-content;max-width:min(12.5rem,100vw - 3rem);color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);box-shadow:var(--shadow-surface);content:attr(data-status-label);opacity:0;pointer-events:none;visibility:hidden;white-space:normal;padding:.35rem .5rem;font-size:.75rem;font-weight:600;line-height:1.2;transition:opacity .14s,transform .14s;position:absolute;top:50%;right:calc(100% + .35rem);transform:translateY(-50%)translate(.2rem)}.device-status-dot-target:hover:after{opacity:1;visibility:visible;transform:translateY(-50%)}.service small,.empty{color:var(--color-text-muted)}.empty.error,.text-danger{color:var(--color-danger)}.system-page-actions{gap:.65rem}.system-overview{border-color:var(--color-border);background:var(--color-border);box-shadow:var(--shadow-surface)}.system-overall-state,.system-overview-stat{background:linear-gradient(145deg,#193645f5,#0f2734f5)}.system-overall-state span,.system-overview-stat span{color:var(--color-text-muted)}.system-overall-state strong,.system-overview-stat strong{color:var(--mtrs-white)}.system-overall-state.healthy strong{color:var(--color-success)}.system-pulse{background:var(--color-success);box-shadow:0 0 0 6px var(--color-success-surface)}.system-overall-state.degraded strong{color:var(--color-warning)}.system-overall-state.degraded .system-pulse{background:var(--color-warning);box-shadow:0 0 0 6px var(--color-warning-surface)}.system-services-panel{background:linear-gradient(145deg,#193645f5,#0f2734f5)}.service-card{border-color:var(--color-border);background:#0d2432;box-shadow:inset 0 1px #ffffff05}.service-card:hover{background:var(--color-surface-hover);box-shadow:inset 3px 0 var(--color-accent), var(--shadow-surface);border-color:#00c2a88c}.service-icon{color:var(--color-accent);background:var(--color-accent-surface);border:1px solid #00c2a838}.state-down .service-icon{color:var(--color-danger);background:var(--color-danger-surface);border-color:#d95c5c47}.state-unknown .service-icon{color:var(--color-neutral);background:var(--color-neutral-surface);border-color:#9eb7c82e}.service-card-title strong{color:var(--mtrs-white)}.service-role{color:var(--color-text-secondary)}.tabs{border-bottom-color:var(--color-border)}.tabs button{color:var(--color-text-muted)}.tabs button:hover{color:var(--color-text-primary);background:var(--color-accent-surface)}.tabs button.active{color:var(--color-accent);box-shadow:inset 0 -2px var(--color-accent)}.danger-button{color:var(--mtrs-white);background:#b84545}.danger-button:hover{background:#d55b5b}.notice{color:var(--color-text-secondary);background:var(--color-accent-surface);border:1px solid #00c2a840}.config-status{background:#00000024}.modal-backdrop{background:#030d14c2}.modal{color:var(--color-text-primary);background:var(--color-surface-elevated);border:1px solid var(--color-border-strong)}.auth-page{background:linear-gradient(135deg, #00c2a81a, transparent 33%), repeating-linear-gradient(90deg, transparent 0 4rem, #e6ebef05 4rem 4.1rem), var(--color-background);min-height:100vh}.auth-card{color:var(--color-text-primary);border-color:var(--color-border-strong);background:linear-gradient(145deg,#163242,#0d2533);box-shadow:0 20px 64px #0000005c}.auth-card .brand{color:var(--mtrs-white)}.auth-card label{color:var(--color-text-secondary)}.auth-card select{justify-self:start}@media (width<=720px){.sidebar{border-right:0;border-bottom:1px solid var(--color-border)}.sidebar:after{width:7rem;height:1px;bottom:-1px;left:0;right:auto}.topbar{flex-direction:column;align-items:flex-start;margin:0 -1rem 1.25rem;padding:.75rem 1rem}.topbar-actions{justify-content:space-between;width:100%}.user-context{text-align:left}.operator-client-header{flex-direction:column;align-items:flex-start;padding:.75rem 1rem}.operator-client-server-clock{order:2;align-self:center;position:static;transform:none}.operator-client-cards-toggle{order:3;align-self:center;position:static;transform:none}.operator-client-actions{justify-content:space-between;width:100%}.operator-client-main{padding:1.25rem 1rem}}.uzbekistan-map-workspace{background:#092132;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.uzbekistan-map{cursor:grab;touch-action:none;width:100%;height:100%;min-height:32rem;display:block}.uzbekistan-map-device-statistics{z-index:700;color:#c5dce6;border-radius:var(--radius-sm);pointer-events:none;background:#071923eb;border:1px solid #00c2a8bf;gap:.35rem;min-width:10.5rem;padding:.55rem .7rem;font-size:.72rem;display:grid;position:absolute;top:.8rem;right:.8rem;box-shadow:0 6px 18px #00000057}.uzbekistan-map-device-statistics span{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.uzbekistan-map-device-statistics strong{color:#fff;font-size:1.08rem}.uzbekistan-map-device-statistics.has-corner-badge{top:5rem}.uzbekistan-map-corner-badge{z-index:700;color:#fff;border-radius:var(--radius-sm);background:#071923eb;border:1px solid #00c2a8bf;align-items:center;gap:.5rem;max-width:min(20rem,100% - 1.6rem);min-height:3.35rem;padding:.5rem .65rem;display:flex;position:absolute;top:.8rem;right:.8rem;box-shadow:0 6px 18px #00000057}.uzbekistan-map-corner-badge img{object-fit:contain;width:auto;max-width:9rem;height:2.25rem;display:block}.uzbekistan-map-corner-badge strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.uzbekistan-map-project-version{z-index:700;color:#e2f2f88a;font-variant-numeric:tabular-nums;letter-spacing:.03em;pointer-events:none;text-shadow:0 1px 2px #00000059;font-size:.66rem;line-height:1;position:absolute;bottom:1.55rem;left:.45rem}.uzbekistan-map-alert{z-index:900;color:#fff;text-align:left;cursor:pointer;border:1px solid;border-radius:.55rem;gap:.2rem;min-width:min(28rem,100% - 2rem);max-width:min(38rem,100% - 2rem);padding:.8rem 1rem;display:grid;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #00000073}.uzbekistan-map-alert.is-persistent{cursor:default}.uzbekistan-map-alert strong{font-size:.95rem}.uzbekistan-map-alert span{font-size:.86rem}.uzbekistan-map-alert small{opacity:.78;font-size:.7rem}.uzbekistan-map-alert.is-green{background:#0b6e48f5;border-color:#4de0a8}.uzbekistan-map-alert.is-yellow{background:#896407f5;border-color:#f7d54a}.uzbekistan-map-alert.is-red{background:#8e2830f5;border-color:#ff7781}.uzbekistan-map.leaflet-container{color:#e6ebef;font-family:var(--font-sans);background:#092132}.uzbekistan-map .leaflet-tile-pane{filter:none}.uzbekistan-map .leaflet-control-zoom{border:1px solid #234050;border-radius:4px;overflow:hidden;box-shadow:0 4px 16px #00000047}.uzbekistan-map .leaflet-control-zoom a{color:#e6ebef;background:#102a3b;border-color:#234050;width:2.2rem;height:2.2rem;line-height:2.08rem}.uzbekistan-map .leaflet-control-zoom a:hover{color:#06232b;background:#00c2a8}.uzbekistan-map .mtrs-leaflet-reset{border:1px solid #234050;border-radius:4px;margin-top:.45rem;overflow:hidden;box-shadow:0 4px 16px #00000047}.uzbekistan-map .mtrs-leaflet-reset button{color:#e6ebef;cursor:pointer;background:#102a3b;border:0;width:2.2rem;height:2.2rem;padding:0;font-size:1.28rem;line-height:2.08rem;display:block}.uzbekistan-map .mtrs-leaflet-reset button:hover,.uzbekistan-map .mtrs-leaflet-reset button:focus-visible{color:#06232b;background:#00c2a8;outline:none}.uzbekistan-map .leaflet-control-attribution{color:#b5c6cd;background:#071923c2}.uzbekistan-map .leaflet-control-attribution a{color:#7fffe8}.uzbekistan-map-enable-audio{z-index:450;color:#eafffb;cursor:pointer;background:#072a35f0;border:1px solid #00cdbf;border-radius:.35rem;min-height:2.3rem;padding:.42rem .7rem;font-size:.78rem;font-weight:700;position:absolute;top:.75rem;left:.75rem;box-shadow:0 4px 14px #00000057}.uzbekistan-map-enable-audio:hover,.uzbekistan-map-enable-audio:focus-visible{color:#04262c;background:#00cdbf;outline:none}.uzbekistan-map .leaflet-tooltip{color:#e6ebef;background:#102a3b;border:1px solid #00c2a8;border-radius:4px;padding:.35rem .5rem;font-weight:600;box-shadow:0 4px 14px #00000052}.uzbekistan-map .leaflet-tooltip-top:before{border-top-color:#00c2a8}.uzbekistan-map .uzbekistan-map-device-leaflet-tooltip{max-width:min(19rem,100vw - 2rem);height:auto;max-height:none;color:var(--mtrs-white);border:1px solid var(--color-accent);border-radius:var(--radius-sm);background:#071923;padding:.55rem .65rem;font-size:.82rem;font-weight:500;overflow:visible;box-shadow:0 8px 20px #00000061}.uzbekistan-map .uzbekistan-map-device-leaflet-tooltip:before{border-top-color:var(--color-accent)}.uzbekistan-map-device-tooltip{transform-origin:50% calc(100% + .75rem);gap:.35rem;min-width:11rem;display:grid}.uzbekistan-map-device-tooltip.is-opening{animation:.38s cubic-bezier(.16,1,.3,1) both mtrs-map-tooltip-reveal}@keyframes mtrs-map-tooltip-reveal{0%{opacity:0;transform:translateY(.7rem)scale(.78)}70%{opacity:1;transform:translateY(-.06rem)scale(1.015)}to{opacity:1;transform:translateY(0)scale(1)}}.uzbekistan-map-device-tooltip-name{text-overflow:ellipsis;white-space:nowrap;font-size:.9rem;overflow:hidden}.uzbekistan-map-device-tooltip-status{color:#c9dce2}.uzbekistan-map-device-tooltip-tags{border-top:1px solid #85aebc59;gap:.25rem;padding-top:.4rem;display:grid}.uzbekistan-map-device-tooltip-row{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:1rem;display:grid}.uzbekistan-map-device-tooltip-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.uzbekistan-map-device-tooltip-value{color:#e7fbf7;white-space:nowrap}.device-map-widget{z-index:650;color:#e7f5f8;touch-action:none;background:#071c29f5;border:1px solid #00c2a8;border-radius:.38rem;width:min(13.25rem,100% - 1rem);position:absolute;overflow:hidden;box-shadow:0 .7rem 1.6rem #0000005c}.device-map-widget-header{color:#fff;cursor:grab;-webkit-user-select:none;user-select:none;background:#10394b;justify-content:space-between;align-items:center;gap:.45rem;min-height:2rem;padding:.35rem .45rem .35rem .65rem;display:flex}.device-map-widget-header:active{cursor:grabbing}.device-map-widget-header strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.73rem;overflow:hidden}.device-map-widget-close{color:#b9d9e3;background:0 0;border-color:#0000;flex:0 0 1.35rem;place-items:center;width:1.35rem;min-height:1.35rem;padding:0;font-size:1.05rem;line-height:1;display:grid}.device-map-widget-close:hover,.device-map-widget-close:focus-visible{color:#fff;background:#ffffff21;border-color:#ffffff3d}.device-map-widget-tags{gap:.32rem;padding:.55rem .65rem .65rem;display:grid}.device-map-widget-tags>span{color:#bad5df;justify-content:space-between;align-items:baseline;gap:.65rem;min-width:0;font-size:.7rem;display:flex}.device-map-widget-tags>span>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.device-map-widget-tags strong{color:#fff;white-space:nowrap;flex:none;font-size:.74rem}.boolean-lamp{vertical-align:middle;background:#71808c;border:1px solid #78909a;border-radius:50%;flex:0 0 .8rem;width:.8rem;height:.8rem;display:inline-block;box-shadow:inset 0 1px 2px #00000059}.boolean-lamp.is-on{background:#23c982;border-color:#75f0bf;box-shadow:0 0 0 3px #23c98229,0 0 9px #23c982b8,inset 0 1px 2px #ecfff794}.company-device-detail-lamp{width:1.2rem;height:1.2rem;margin-top:.1rem}.mtrs-leaflet-marker{background:var(--marker-color,#00c2a8);width:.9rem;height:.9rem;box-shadow:0 0 0 4px color-mix(in srgb, var(--marker-color,#00c2a8) 22%, transparent);border:2px solid #dffdfa;border-radius:50%;display:block}.mtrs-leaflet-marker.marker-square{border-radius:.13rem}.mtrs-leaflet-marker.marker-diamond{clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%);border-radius:.12rem}.mtrs-leaflet-marker.marker-pin{clip-path:polygon(50% 100%,8% 44%,8% 23%,25% 5%,75% 5%,92% 23%,92% 44%)}.mtrs-leaflet-marker.marker-hexagon{clip-path:polygon(25% 0,75% 0,100% 50%,75% 100%,25% 100%,0 50%)}.mtrs-leaflet-marker.marker-drop{clip-path:polygon(50% 100%,13% 58%,7% 35%,17% 13%,38% 0,62% 0,83% 13%,93% 35%,87% 58%)}.mtrs-leaflet-marker.idle{background:#d6a33c;box-shadow:0 0 0 4px #d6a33c3b}.mtrs-leaflet-marker.offline{background:#dc6670;box-shadow:0 0 0 4px #dc667038}.mtrs-leaflet-marker.never_connected{background:#71808c;box-shadow:0 0 0 4px #71808c38}.mtrs-leaflet-marker.is-selected{border-color:#fff;width:1.05rem;height:1.05rem;margin:-.075rem;box-shadow:0 0 0 5px #00c2a861,0 0 12px #00c2a8}@keyframes mtrs-presence-connected-marker{0%,to{transform:scale(1)}28%{transform:scale(1.8);box-shadow:0 0 0 8px #00c2a86b,0 0 20px #00c2a8}58%{transform:scale(.88)}}@keyframes mtrs-presence-disconnected-marker{0%,to{transform:scale(1)}28%{transform:scale(1.8);box-shadow:0 0 0 8px #dc66706b,0 0 20px #dc6670}58%{transform:scale(.88)}}.mtrs-leaflet-marker.is-presence-connected{animation:1.7s cubic-bezier(.22,1,.36,1) both mtrs-presence-connected-marker}.mtrs-leaflet-marker.is-preview{animation:1.1s cubic-bezier(.22,1,.36,1) infinite mtrs-presence-connected-marker}.mtrs-leaflet-marker.is-presence-disconnected{animation:1.7s cubic-bezier(.22,1,.36,1) both mtrs-presence-disconnected-marker}.mtrs-leaflet-marker-wrap{width:1rem;height:1rem;display:block;position:relative}.mtrs-leaflet-marker-tags{pointer-events:none;gap:.18rem;min-width:max-content;display:grid;position:absolute;bottom:.95rem;left:.85rem}.mtrs-leaflet-marker-tag{color:#b8d7e4;white-space:nowrap;background:#071923eb;border:1px solid #00c2a8b8;border-radius:.2rem;align-items:baseline;gap:.35rem;padding:.2rem .35rem;font-size:.65rem;line-height:1.1;display:flex;box-shadow:0 2px 7px #00000052}.mtrs-leaflet-marker-tag strong{color:#fff;font-size:.7rem}.uzbekistan-map.is-dragging{cursor:grabbing}.uzbekistan-map-viewport{transition:transform .36s cubic-bezier(.22,1,.36,1)}.uzbekistan-map.is-dragging .uzbekistan-map-viewport{transition:none}.uzbekistan-context path{fill:#354249;stroke:#17272e9e;stroke-width:1px;vector-effect:non-scaling-stroke}.uzbekistan-country-fill{fill:#eaf3ee;stroke:none;pointer-events:none}.uzbekistan-region{fill:#e7f0ed;stroke:#00c7b8;stroke-width:1.2px;vector-effect:non-scaling-stroke;cursor:pointer;outline:none;transition:fill .18s,stroke .18s}.uzbekistan-region:nth-child(3n+2){fill:#eef0cf}.uzbekistan-region:nth-child(3n){fill:#e2f0e8}.uzbekistan-region:hover,.uzbekistan-region.is-active,.uzbekistan-region:focus-visible{fill:#d8f3df;stroke:#00d9c8;stroke-width:2.25px}.uzbekistan-country-border{fill:none;stroke:#00d2c2;stroke-width:2.6px;vector-effect:non-scaling-stroke;pointer-events:none;filter:drop-shadow(0 0 2px #00d4c273)}.uzbekistan-roads{pointer-events:none;fill:none;vector-effect:non-scaling-stroke}.uzbekistan-road{stroke:#ce83758a}.uzbekistan-road--motorway,.uzbekistan-road--trunk{stroke-width:1.45px}.uzbekistan-road--primary{stroke-width:1.1px}.uzbekistan-road--secondary{stroke:#b87b7161;stroke-width:.75px}.uzbekistan-waterbodies{pointer-events:none}.uzbekistan-waterbody--lake{fill:#8dd3e5d1;stroke:#75cbe1e0;stroke-width:1.1px;vector-effect:non-scaling-stroke}.uzbekistan-waterbody--reservoir{fill:#7dcbdedb;stroke:#67c2dbeb;stroke-width:1.25px;vector-effect:non-scaling-stroke}.uzbekistan-waterways{pointer-events:none;fill:none;vector-effect:non-scaling-stroke}.uzbekistan-waterway--river{stroke:#6bc6dcd6;stroke-width:1.2px}.uzbekistan-waterway--river.is-wide{stroke:#6dd0e8f0;stroke-width:2.1px}.uzbekistan-waterway--canal{stroke:#66b9d1a8;stroke-width:.8px;stroke-dasharray:3 2}.uzbekistan-waterway--canal.is-wide{stroke:#5cc3dccc;stroke-width:1.35px}.uzbekistan-map-tooltip{z-index:1;max-width:12.5rem;color:var(--mtrs-white);border:1px solid var(--color-accent);border-radius:var(--radius-sm);pointer-events:none;background:#071923;padding:.45rem .6rem;font-size:.82rem;font-weight:700;position:absolute;box-shadow:0 8px 20px #00000047}.uzbekistan-map-legend{color:var(--mtrs-white);border-radius:var(--radius-sm);pointer-events:none;background:#071923e0;border:1px solid #85aebc73;gap:.25rem;padding:.45rem .6rem;font-size:.75rem;display:grid;position:absolute;bottom:clamp(.75rem,2vw,1.5rem);right:clamp(.75rem,2vw,1.5rem)}.uzbekistan-map-legend span:before{content:"";vertical-align:middle;width:1.25rem;margin-right:.4rem;display:inline-block}.uzbekistan-map-legend-country:before{background:#e7f0ed;border:1px solid #00d2c2;height:.6rem}.uzbekistan-map-legend-road:before{border-top:1px solid #ce8375cc}.uzbekistan-map-legend-river:before{border-top:2px solid #6bc6dce6}.uzbekistan-map-legend-canal:before{border-top:1px dashed #66b9d1d9}.uzbekistan-map-legend-waterbody:before{background:#8dd3e5d1;border:1px solid #75cbe1e0;height:.55rem}.uzbekistan-map-attribution{color:#d6e5ebc7;font-size:.7rem;text-decoration:none;position:absolute;bottom:clamp(.75rem,2vw,1.5rem);left:clamp(.75rem,2vw,1.5rem)}.uzbekistan-map-attribution:hover{color:var(--color-accent);text-decoration:underline}.uzbekistan-map-layer-warning{color:var(--mtrs-white);border-radius:var(--radius-sm);background:#5b4118eb;border:1px solid #c99b45;padding:.4rem .6rem;font-size:.8rem;position:absolute;bottom:1rem;left:50%;transform:translate(-50%)}.uzbekistan-map-controls{z-index:2;gap:.35rem;display:grid;position:absolute;top:clamp(.75rem,2vw,1.5rem);right:clamp(.75rem,2vw,1.5rem)}.uzbekistan-map-controls button{width:2.2rem;min-height:2.2rem;padding:0;font-size:1.1rem}@media (width<=720px){.uzbekistan-map-workspace{min-height:60vh}.uzbekistan-map{height:60vh;min-height:20rem}}.company-interface-workspace{min-height:0;margin-left:0;position:static}.app-shell main.company-interface-main{width:100%;max-width:none;margin:0;padding:0}.company-interface-main .topbar{margin:0}.company-map-template{z-index:0;min-height:0;position:fixed;inset:4.25rem 0 0 min(21rem,78vw)}.company-device-drawer{z-index:20;width:min(21rem,78vw);color:var(--mtrs-white);position:fixed;top:4.25rem;bottom:0;left:0}@media (width>=721px){.company-interface-workspace--admin{grid-template-columns:minmax(16rem,21rem) minmax(0,1fr);height:calc(100vh - 4.25rem);min-height:34rem;display:grid}.company-interface-workspace--admin .company-device-drawer{width:auto;min-height:0;position:relative;top:auto;bottom:auto;left:auto}.company-interface-workspace--admin .company-device-drawer-panel{border-radius:var(--radius-md) 0 0 var(--radius-md)}.company-interface-workspace--admin .company-map-template{min-height:34rem;position:relative;inset:auto}}.company-device-drawer.is-expanded{width:min(21rem,78vw)}.company-device-drawer-handle{border-radius:0 var(--radius-sm) var(--radius-sm) 0;width:2.6rem;min-height:3rem;margin-right:auto;padding:0}.company-device-drawer-panel{border:1px solid var(--color-border);height:100%;max-height:none;box-shadow:var(--shadow-surface);background:#071923f5;border-radius:0;padding:.9rem 1rem;display:block;overflow-y:auto}.company-device-drawer.is-expanded .company-device-drawer-panel{display:block}.company-device-drawer-heading{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.company-device-drawer-panel h2{margin:0 0 .6rem;font-size:1rem}.company-device-drawer-pin{background:0 0;min-height:1.9rem;padding:.2rem .45rem}.company-device-drawer-pin[aria-pressed=true]{color:var(--color-accent);border-color:var(--color-accent)}.company-device-group{z-index:0;margin:.65rem 0;position:relative}.company-device-group-heading{align-items:center;gap:.25rem;display:flex}.company-device-group-title,.company-device-row{text-align:left;width:100%}.company-device-group-title{color:var(--color-accent);background:0 0;justify-content:space-between;padding:.3rem 0;display:flex}.company-device-group-toggle{width:1.5rem;min-height:1.6rem;color:var(--color-accent);background:0 0;border-color:#0000;flex:0 0 1.5rem;place-items:center;padding:0;display:grid}.company-device-group-toggle:hover,.company-device-group-toggle:focus-visible{color:var(--mtrs-white);border-color:var(--color-border)}.company-device-group-items{opacity:0;grid-template-rows:0fr;transition:grid-template-rows .34s cubic-bezier(.16,1,.3,1),opacity .24s;display:grid}.company-device-group-items>div{min-height:0;overflow:hidden}.company-device-group-items.is-expanded{opacity:1;grid-template-rows:1fr}.company-device-row{background:0 0;border-bottom:1px solid #85aebc38;grid-template-columns:minmax(0,1fr) auto;align-items:center;column-gap:.45rem;padding:.45rem .2rem;display:grid}.company-device-row-main{align-items:center;gap:.45rem;min-width:0;display:flex}.company-device-row>.device-status-dot-target{grid-area:1/2}.company-device-tag-tooltip{min-height:0;max-height:0;color:var(--color-text-primary);border-radius:var(--radius-sm);box-shadow:none;opacity:0;pointer-events:none;white-space:normal;will-change:max-height, opacity, transform;background:#0d2a3b;border:1px solid #0000;grid-column:1/-1;gap:0;margin:0;padding:0 .7rem;transition:max-height .18s cubic-bezier(.2,.8,.2,1),margin .14s ease-out,padding .14s ease-out,gap .14s ease-out,opacity .12s ease-out,transform .16s cubic-bezier(.2,.8,.2,1),border-color .12s ease-out,box-shadow .12s ease-out;display:grid;overflow:hidden;transform:translateY(-.35rem)}.company-device-row:hover .company-device-tag-tooltip,.company-device-row:focus-visible .company-device-tag-tooltip{border-color:var(--color-border-strong);max-height:12rem;box-shadow:var(--shadow-surface);opacity:1;gap:.35rem;margin-top:.45rem;padding:.6rem .7rem;transform:translateY(0)}.company-device-tag-tooltip-row{color:var(--color-text-secondary);justify-content:space-between;align-items:baseline;gap:1rem;font-size:clamp(.58rem,1.8vw,.72rem);display:flex}.company-device-tag-tooltip-row>span{overflow-wrap:anywhere;min-width:0}.company-device-tag-tooltip-row strong{color:var(--mtrs-white);white-space:nowrap;flex:none;font-size:.76rem}.company-device-tag-empty{color:var(--color-text-muted);font-size:.72rem}.company-device-name{min-width:0;color:var(--color-text-primary);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:.84rem;font-weight:500;line-height:1.25;overflow:hidden}.company-device-list-tag{color:#8db6c8;white-space:nowrap;align-items:baseline;gap:.3rem;min-width:0;max-width:9rem;font-size:.7rem;display:flex}.company-device-list-tag>span{text-overflow:ellipsis;overflow:hidden}.company-device-list-tag strong{color:#e8fbf8;font-size:.75rem}.company-device-row.is-selected{background:#16c7bc2b;border-radius:.35rem;width:calc(100% + .7rem);margin-inline:-.35rem;padding-inline:.55rem}@keyframes mtrs-presence-connected-row{0%,to{background:0 0}20%,60%{background:#00c2a84a}}@keyframes mtrs-presence-disconnected-row{0%,to{background:0 0}20%,60%{background:#dc667045}}.company-device-row.is-presence-connected{animation:1.7s ease-in-out both mtrs-presence-connected-row}.company-device-row.is-presence-disconnected{animation:1.7s ease-in-out both mtrs-presence-disconnected-row}.company-device-details-backdrop{place-items:center;padding:.75rem;display:grid;position:absolute;inset:0}.company-device-details{color:#eef8fb;background:#092030;border-color:#00bfb4;border-radius:.4rem;width:min(48rem,100%);height:auto;max-height:100%;padding:0;overflow:auto}.company-device-details-topbar{z-index:1;color:#fff;background:#0c2b3d;border-bottom:1px solid #173d50;justify-content:space-between;align-items:center;min-height:2.65rem;padding:0 1.1rem;font-size:.78rem;font-weight:700;display:flex;position:sticky;top:0}.company-device-details-topbar button{color:#d3e5ed;border:0;min-width:2.2rem;padding:.15rem;font-size:1.3rem}.company-device-details-body{padding:1.25rem}.company-device-details-title{justify-content:space-between;align-items:start;gap:1rem;margin:0 0 1.4rem;display:flex}.company-device-details-title p{color:#03d4c6;letter-spacing:.18em;margin:0 0 .45rem;font-size:.62rem;font-weight:700}.company-device-details-title h2{color:#fff;margin:0 0 .35rem;font-size:1.8rem}.company-device-details-title small{color:#83b6ca}.company-device-details-title .badge{color:#00d5c4;letter-spacing:.1em;background:0 0;border:0;font-size:.68rem}.company-device-panel{background:#0d2a3b;border:1px solid #285064;border-radius:.38rem;margin:1rem 0;padding:1.1rem 1.2rem}.company-device-panel h3{color:#fff;margin:0 0 .9rem;font-size:1rem}.company-device-panel h3 small{color:#75a7bd;margin-left:.7rem;font-size:.63rem;font-weight:400}.company-device-detail-tags{grid-template-columns:repeat(auto-fit,minmax(11.5rem,1fr));gap:.65rem;display:grid}.company-device-detail-tag{color:#d8edf4;text-align:left;background:#082337;border:1px solid #0000;border-radius:.3rem;gap:.35rem;min-height:4rem;padding:.8rem;display:grid}.company-device-detail-tag:hover,.company-device-detail-tag.is-selected{background:#103949;border-color:#00d2c3}.company-device-detail-tag span{color:#78abc0;text-transform:uppercase;font-size:.63rem}.company-device-detail-tag strong{color:#fff;font-size:1.05rem}.company-device-history-controls{flex-wrap:wrap;gap:.45rem;display:flex}.company-device-history-controls button{color:#a4c9d8;background:0 0;border:1px solid #386277;border-radius:.2rem;min-height:2rem;padding:.25rem .7rem}.company-device-history-controls button.active{color:#05232f;background:#00cdbf;border-color:#00cdbf}.company-device-history-plot{margin-top:1rem}.company-device-history-chart{background:repeating-linear-gradient(0deg,#0000 0 calc(25% - 1px),#51809147 25%),repeating-linear-gradient(90deg,#0000 0 calc(20% - 1px),#51809138 20%),#092536;width:100%;height:17rem}.company-device-history-chart polyline{stroke:#00cdbf;stroke-width:1.3px}.company-device-history-footer{color:#78a8bb;padding-top:.65rem;font-size:.68rem}.company-device-history-chart{touch-action:none;cursor:grab}.company-device-history-chart:active{cursor:grabbing}.company-device-history-axis{color:#8cb4c5;white-space:nowrap;justify-content:space-between;gap:.5rem;padding-top:.45rem;font-size:.64rem;display:flex;overflow:hidden}.device-metadata-cards{margin-bottom:1rem}.company-device-detail-tag{border-color:color-mix(in srgb, var(--tag-color,#00c2a8) 42%, transparent)}.calculated-value-cards{z-index:620;pointer-events:auto;gap:.5rem;width:min(15rem,100% - 1.5rem);max-height:calc(100% - 9rem);display:grid;position:absolute;overflow:visible}.calculated-value-cards.is-top_left{top:3.75rem;left:.75rem}.calculated-value-cards.is-top_center{top:3.75rem;left:50%;transform:translate(-50%)}.calculated-value-cards.is-top_right{top:7.9rem;right:.75rem}.calculated-value-cards.is-middle_left{top:50%;left:.75rem;transform:translateY(-50%)}.calculated-value-cards.is-middle_right{top:50%;right:.75rem;transform:translateY(-50%)}.calculated-value-cards.is-bottom_left{bottom:3.1rem;left:.75rem}.calculated-value-cards.is-bottom_center{bottom:8rem;left:50%;transform:translate(-50%)}.calculated-value-cards.is-bottom_right{bottom:3.1rem;right:.75rem}.calculated-value-card{color:#d9edf3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#071f2cf0;border:1px solid #2b6878;border-left:3px solid #00c2a8;border-radius:.35rem;grid-template-columns:1fr auto;gap:.25rem .65rem;min-width:0;padding:.6rem .7rem;display:grid;box-shadow:0 .45rem 1.2rem #00000040}.calculated-value-card>span{font-size:calc(var(--calculated-font-size) * .78);text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.calculated-value-card>strong{color:#fff;font-size:var(--calculated-font-size);grid-column:1/-1;line-height:1.1}.calculated-value-card small{color:#efbf68;grid-column:1/-1}.calculated-value-card .link-button{padding:0;font-size:.7rem}.company-device-history-graph{grid-template-columns:minmax(4.4rem,auto) minmax(0,1fr);align-items:stretch;display:grid}.company-device-history-y-axis{color:#8cb4c5;text-align:right;font-variant-numeric:tabular-nums;flex-direction:column;justify-content:space-between;gap:.25rem;padding:.35rem .7rem .35rem 0;font-size:.64rem;display:flex}.company-device-history-chart{min-width:0}.company-device-detail-tag{overflow:hidden}.company-device-detail-tag span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.company-device-history-footer{line-height:1.45}.company-device-details-topbar span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}@media (width<=720px){.company-device-details{width:calc(100vw - .75rem);height:calc(100vh - .75rem)}.company-device-details-topbar{padding:0 .8rem}.company-device-details-body{padding:.9rem}.company-device-details-title{align-items:flex-start;margin-bottom:1rem}.company-device-details-title h2{font-size:1.35rem}.company-device-panel{padding:.85rem}.company-device-panel h3{line-height:1.35}.company-device-panel h3 small{margin:.3rem 0 0;display:block}.company-device-detail-tags{grid-template-columns:1fr}.company-device-history-graph{grid-template-columns:3.8rem minmax(0,1fr)}.company-device-history-y-axis{padding-right:.4rem;font-size:.58rem}.company-device-history-chart{height:13rem}.company-device-history-axis{gap:.3rem;font-size:.57rem}.company-device-history-axis span{text-overflow:ellipsis;max-width:31%;overflow:hidden}.company-device-history-footer{font-size:.63rem}}.company-device-detail-tag:hover,.company-device-detail-tag.is-selected{border-color:var(--tag-color,#00d2c3);background:color-mix(in srgb, var(--tag-color,#00c2a8) 15%, #082337)}.company-device-detail-tag span{color:var(--tag-color,#78abc0)}.company-device-history-graph{grid-template-columns:minmax(4.8rem,auto) minmax(0,1fr);align-items:stretch;gap:.55rem;display:grid}.company-device-history-y-axis{color:#8cb4c5;text-align:right;white-space:nowrap;flex-direction:column;justify-content:space-between;padding:.25rem 0;font-size:.64rem;display:flex;overflow:hidden}.company-device-history-chart polygon{fill:color-mix(in srgb, var(--tag-color,#00c2a8) 20%, transparent)}.company-device-history-chart polyline{stroke:var(--tag-color,#00c2a8)}.company-device-history-axis{margin-left:5.35rem}@media (width<=720px){.company-interface-workspace{min-height:60vh;padding-top:20rem}.company-map-template{height:60vh;min-height:20rem;position:relative;inset:auto}.company-device-drawer{width:100%;height:19rem;bottom:auto}.company-device-drawer-panel{border-radius:0 0 var(--radius-md) var(--radius-md)}}@media (prefers-reduced-motion:reduce){.mtrs-leaflet-marker.is-presence-connected,.mtrs-leaflet-marker.is-presence-disconnected,.mtrs-leaflet-marker.is-preview,.company-device-row.is-presence-connected,.company-device-row.is-presence-disconnected,.uzbekistan-map-device-tooltip.is-opening{animation:none}.company-device-group-items,.company-device-tag-tooltip{transition:none}}.calculated-value-card{transform:translate(var(--calculated-offset-x,0), var(--calculated-offset-y,0));touch-action:none;background:rgb(7 31 44/var(--calculated-opacity,94%));border-color:color-mix(in srgb, var(--calculated-accent,#00c2a8) 52%, #2b6878);border-left-color:var(--calculated-accent,#00c2a8)}.calculated-value-card.is-movable{cursor:grab;-webkit-user-select:none;user-select:none}.calculated-value-card.is-movable:active{cursor:grabbing}.calculated-value-card>strong{white-space:normal;overflow-wrap:anywhere;line-height:1.35}.calculated-value-card .link-button{align-self:start}.calculated-value-card-values{grid-column:1/-1;gap:.38rem;display:grid}.calculated-value-card-values>div{grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:.6rem;display:grid}.calculated-value-card-values span{color:#a9c9d6;min-width:0;font-size:calc(var(--calculated-font-size) * .72);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.calculated-value-card-values strong{color:#fff;font-size:var(--calculated-font-size);text-align:right;white-space:nowrap;line-height:1.2}.calculated-card-details .company-device-detail-tag{border-color:color-mix(in srgb, var(--tag-color,#00c2a8) 42%, #285064);border-left:3px solid var(--tag-color,#00c2a8)}.calculated-card-details .company-device-detail-tag:hover,.calculated-card-details .company-device-detail-tag.is-selected{border-color:var(--tag-color,#00c2a8);background:color-mix(in srgb, var(--tag-color,#00c2a8) 14%, #082337)}@media (width<=720px){.company-device-details{width:100%;height:auto;max-height:100%}}.calculated-card-details-backdrop{z-index:950;background:#030d14c2;place-items:center;padding:.75rem;display:grid;position:absolute;inset:0}.calculated-card-details{color:#eef8fb;background:#092030;border:1px solid #00bfb4;border-radius:.4rem;width:min(48rem,100%);max-height:100%;overflow:auto;box-shadow:0 .9rem 2.2rem #00000075}@media (width<=720px){.calculated-card-details-backdrop{padding:.4rem}.calculated-card-details{max-height:calc(100% - .8rem)}}
