:root{--color-bg:#e7e9eb;--color-surface:#f4f5f6;--color-surface-raised:#fff;--color-surface-muted:#eceff1;--color-surface-accent:#edf2f4;--color-border:#c3c9ce;--color-border-strong:#aeb7be;--color-border-focus:#6b8799;--color-text:#2f3941;--color-text-muted:#69757e;--color-text-subtle:#87929a;--color-text-on-accent:#fff;--color-accent:#6b8799;--color-accent-dark:#526f82;--color-accent-soft:#dce6eb;--color-success:#4f9a70;--color-success-soft:#e6f1ea;--color-warning:#b88a3e;--color-warning-soft:#f5eddf;--color-danger:#c96969;--color-danger-soft:#f6e5e5;--font-family:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs:11px;--font-size-sm:12px;--font-size-md:13px;--font-size-lg:15px;--font-size-xl:18px;--font-size-2xl:22px;--control-height-sm:32px;--control-height:38px;--control-height-lg:44px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:32px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-pill:999px;--shadow-sm:0 1px 4px #3039401a;--shadow-md:0 3px 12px #30394024;--shadow-lg:0 12px 32px #3039402e;--transition-fast:.12s ease;--transition-normal:.18s ease;--z-map:0;--z-map-controls:10;--z-map-panel:20;--z-map-handle:30;--z-header:100;--z-dropdown:500;--z-modal:1000}*,:before,:after{box-sizing:border-box}html,body,#root{min-height:100%}html{background:var(--color-bg)}body{background:var(--color-bg);min-width:320px;color:var(--color-text);font-family:var(--font-family);font-size:var(--font-size-md);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;line-height:1.45}button,input,select,textarea{font:inherit}button{margin:0}a{color:inherit}h1,h2,h3,h4,p{margin-top:0}:focus-visible{outline:2px solid var(--color-border-focus);outline-offset:2px}#root{min-height:100vh}.app-shell{background:var(--color-bg);flex-direction:column;min-height:100vh;display:flex}.app-header{z-index:var(--z-header);align-items:center;gap:var(--space-5);min-height:64px;padding:0 var(--space-6);background:var(--color-surface-raised);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);grid-template-columns:auto minmax(0,1fr) auto;display:grid;position:sticky;top:0}.app-brand{align-items:center;gap:var(--space-3);min-width:max-content;display:flex}.brand-mark{border-radius:var(--radius-md);background:var(--color-accent);width:34px;height:34px;color:var(--color-text-on-accent);flex:0 0 34px;place-items:center;font-size:18px;font-weight:700;display:grid}.brand-text{gap:2px;display:grid}.brand-text strong{color:var(--color-text);font-size:var(--font-size-lg);line-height:1.1}.brand-text span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.top-navigation{justify-content:center;align-items:center;gap:var(--space-1);scrollbar-width:thin;min-width:0;display:flex;overflow-x:auto}.top-navigation-link{align-items:center;gap:var(--space-2);min-height:38px;padding:0 var(--space-3);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;transition:background var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);background:0 0;border:1px solid #0000;flex:none;font-weight:500;display:inline-flex}.top-navigation-link:hover{background:var(--color-surface-muted);color:var(--color-text)}.top-navigation-link.active{background:var(--color-accent-soft);border-color:var(--color-border);color:var(--color-accent-dark);font-weight:700}.top-navigation-icon{text-align:center;width:18px}.topbar-actions{align-items:center;gap:var(--space-3);display:flex}.topbar-user{align-items:center;gap:var(--space-2);color:var(--color-text-muted);white-space:nowrap;display:inline-flex}.user-status{background:var(--color-success);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-success-soft);border-radius:50%;flex:0 0 8px}.topbar-username{color:var(--color-text);font-size:var(--font-size-sm);font-weight:600}.app-main{width:100%;min-height:0;padding:var(--space-3);flex:auto}.app-main-monitoring{flex-direction:column;min-height:0;padding:0;display:flex;position:relative;overflow:hidden}.app-header{min-height:72px}.brand-mark{flex-basis:38px;width:38px;height:38px;font-size:19px}.brand-text strong{font-size:18px}.brand-text span{font-size:12px}.top-navigation{gap:3px}.top-navigation-link{gap:8px;min-height:44px;padding:0 10px;font-size:13px;font-weight:600}.top-navigation-icon{width:20px;min-width:20px;color:var(--color-accent-dark);font-size:17px;font-weight:800;line-height:1}.top-navigation-link.active .top-navigation-icon{color:var(--color-accent-dark)}.topbar-username{font-size:13px}.topbar-actions .button{border-radius:var(--radius-md);min-height:36px;padding:0 12px;font-size:13px;font-weight:600}.notification-nav-badge{background:var(--color-danger);min-width:20px;height:20px;color:var(--color-text-on-accent);border-radius:999px;justify-content:center;align-items:center;margin-left:2px;padding:0 6px;font-size:11px;font-weight:800;line-height:1;display:inline-flex}.button{min-height:var(--control-height);justify-content:center;align-items:center;gap:var(--space-2);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);font-size:var(--font-size-md);white-space:nowrap;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast), color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);font-weight:600;line-height:1;display:inline-flex}.button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-muted)}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.55;cursor:not-allowed}.button-primary,.button.primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.button-primary:hover:not(:disabled),.button.primary:hover:not(:disabled){border-color:var(--color-accent-dark);background:var(--color-accent-dark)}.button-secondary,.button.secondary{background:var(--color-accent-soft);color:var(--color-accent-dark)}.button-danger,.button.danger{border-color:var(--color-danger);background:var(--color-danger);color:var(--color-text-on-accent)}.button-ghost{color:var(--color-text-muted);background:0 0;border-color:#0000}.button-ghost:hover:not(:disabled){border-color:var(--color-border);background:var(--color-surface-muted);color:var(--color-text)}.button-small,.button.small{min-height:var(--control-height-sm);padding-inline:var(--space-3);font-size:var(--font-size-sm)}.button-large{min-height:var(--control-height-lg)}.panel,.ui-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm)}.panel-title{padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:var(--font-size-lg);font-weight:700}input:not([type=checkbox]):not([type=radio]),select,textarea{width:100%;min-height:var(--control-height);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast)}textarea{min-height:100px;padding-block:var(--space-3);resize:vertical}input::placeholder,textarea::placeholder{color:var(--color-text-subtle)}input:hover:not(:disabled),select:hover:not(:disabled),textarea:hover:not(:disabled){border-color:var(--color-border-strong)}input:focus,select:focus,textarea:focus{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}input[type=checkbox],input[type=radio]{accent-color:var(--color-accent)}.form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.form-field{gap:var(--space-2);display:grid}.form-field>label,.form-field>span,.ui-label{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.form-section{gap:var(--space-4);display:grid}.form-section-title{color:var(--color-text);font-size:var(--font-size-lg);margin:0;font-weight:700}.table-scroll,.table-wrapper{width:100%;overflow-x:auto}.ui-table{border-collapse:separate;border-spacing:0;width:100%}.ui-table th,.ui-table td,.ui-table-cell{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:middle}.ui-table th{background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:left;text-transform:uppercase;letter-spacing:.04em;font-weight:700}.ui-table tbody tr:last-child td{border-bottom:0}.ui-table tbody tr:hover{background:var(--color-surface-accent)}.ui-table-cell-actions,.table-actions{text-align:right;white-space:nowrap}.badge{min-height:24px;padding:0 var(--space-2);border-radius:var(--radius-pill);font-size:var(--font-size-xs);white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;font-weight:700;line-height:1;display:inline-flex}.badge-success,.badge.success{background:var(--color-success-soft);border-color:color-mix(in srgb, var(--color-success) 30%, var(--color-border));color:var(--color-success)}.badge-danger,.badge.danger{background:var(--color-danger-soft);border-color:color-mix(in srgb, var(--color-danger) 30%, var(--color-border));color:var(--color-danger)}.badge-warning,.badge.warning{background:var(--color-warning-soft);border-color:color-mix(in srgb, var(--color-warning) 30%, var(--color-border));color:var(--color-warning)}.badge-neutral,.badge.neutral{background:var(--color-surface-muted);border-color:var(--color-border);color:var(--color-text-muted)}.empty-state{align-content:center;place-items:center;gap:var(--space-2);min-height:180px;padding:var(--space-7);text-align:center;color:var(--color-text-muted);display:grid}.empty-state-title{color:var(--color-text);font-size:var(--font-size-lg);font-weight:700}.empty-state-description{max-width:520px}.modal-backdrop{z-index:var(--z-modal);padding:var(--space-6);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#232a2f6b;place-items:center;display:grid;position:fixed;inset:0}.modal{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:min(760px,100%);max-height:min(88vh,900px);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;overflow:hidden}.modal-header,.modal-footer{align-items:center;gap:var(--space-3);padding:var(--space-4) var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border);flex:none;display:flex}.modal-header h2{color:var(--color-text);font-size:var(--font-size-xl);flex:1;margin:0}.modal-footer{border-top:1px solid var(--color-border);border-bottom:0;justify-content:flex-end}.modal-body{min-height:0;padding:var(--space-5);overflow:auto}.modal-close{border-radius:var(--radius-md);width:32px;height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;place-items:center;font-size:22px;line-height:1;display:grid}.modal-close:hover{border-color:var(--color-border);background:var(--color-surface-muted);color:var(--color-text)}.page{width:100%;min-width:0}.page-toolbar,.page-header{justify-content:space-between;align-items:flex-start;gap:var(--space-5);display:flex}.page-toolbar h1,.page-header h1,.page-title{color:var(--color-text);font-size:var(--font-size-2xl);margin:0;font-weight:700;line-height:1.2}.page-description,.page-subtitle{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.5}.toolbar,.toolbar-actions,.modal-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.page-error,.dashboard-error,.events-error,.form-error,.devices-error,.login-error,.monitoring-error{padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--color-danger) 35%, var(--color-border));border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--font-size-sm);line-height:1.45}.list-message,.map-empty{min-height:120px;padding:var(--space-6);color:var(--color-text-muted);text-align:center;place-items:center;display:grid}.section{gap:var(--space-4);display:grid}.status-dot{border-radius:var(--radius-pill);background:var(--color-text-subtle);flex:0 0 8px;width:8px;height:8px;display:inline-block}.status-dot.online,.status-dot.active{background:var(--color-success)}.status-dot.offline,.status-dot.error{background:var(--color-danger)}.status-dot.warning{background:var(--color-warning)}@media (width<=760px){.page-toolbar,.page-header{flex-direction:column}.form-grid{grid-template-columns:1fr}.modal-backdrop{padding:var(--space-3)}.modal{max-height:94vh}}.app-loading{min-height:100vh;padding:var(--space-6);background:var(--color-bg);color:var(--color-text-muted);place-items:center;display:grid}.page-shell,.section{gap:var(--space-5);display:grid}.list-message{min-height:120px;padding:var(--space-6);color:var(--color-text-muted);text-align:center;place-items:center;display:grid}.panel-refresh{margin-left:auto}.info-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.info-row{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:36px;padding:var(--space-1) 0;border-bottom:1px solid var(--color-border);display:flex}.info-row:last-child{border-bottom:0}.info-row span,.info-card span{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:600}.info-row strong{color:var(--color-text)}.info-action-button{min-height:var(--control-height-sm)}.telemetry-card,.telemetry-panel,.raw-telemetry{min-width:0}.telemetry-card{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.telemetry-panel{gap:var(--space-3);display:grid}.telemetry-value{color:var(--color-text);font-size:var(--font-size-xl);font-weight:700}.raw-telemetry{overflow:auto}.raw-telemetry h3{margin:0 0 var(--space-3);color:var(--color-text);font-size:var(--font-size-md)}.calibration-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.calibration-section-title{margin:0 0 var(--space-3);color:var(--color-text);font-size:var(--font-size-md);font-weight:700}.calibration-input-wrap{align-items:center;gap:var(--space-2);display:flex}.calibration-input-wrap input{flex:auto;min-width:0}.calibration-input-unit{color:var(--color-text-muted);font-size:var(--font-size-xs);flex:none}.calibration-table-wrapper{border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:auto}.calibration-chart{width:100%;min-height:240px;margin-top:var(--space-4)}.calibration-history{gap:var(--space-2);display:grid}.calibration-message,.calibration-error{padding:var(--space-3);border-radius:var(--radius-md)}.calibration-message{background:var(--color-success-soft);color:var(--color-success)}.calibration-error{background:var(--color-danger-soft);color:var(--color-danger)}.device-info{min-width:0}@media (width<=760px){.info-grid,.info-actions{grid-template-columns:1fr}.calibration-toolbar{flex-direction:column;align-items:flex-start}}.page,.app-page{width:100%;min-width:0}.page-header{min-width:0}.page-header h1,.page-title{letter-spacing:-.01em}input,select,textarea{min-width:0}button,.button{font-family:inherit}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid color-mix(in srgb, var(--color-border-focus) 65%, transparent);outline-offset:2px}.panel,.ui-card{min-width:0}.table-wrapper,.table-scroll,.devices-table-wrap,.events-list-body,.events-raw-table{scrollbar-width:thin}.status-badge,.badge,.event-severity{white-space:nowrap}.dashboard-page{gap:var(--space-5);display:grid}.dashboard-page .page-toolbar{margin-bottom:0}.dashboard-page .dashboard-grid{gap:var(--space-5);grid-template-columns:minmax(0,1.45fr) minmax(320px,.85fr);display:grid}.dashboard-page .dashboard-stats{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.dashboard-page .stat-card{min-height:96px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-sm)}.dashboard-page .stat-label{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.dashboard-page .stat-value{margin-top:var(--space-2);color:var(--color-text);font-size:var(--font-size-2xl);font-weight:700;display:block}.dashboard-page .stat-description{margin-top:var(--space-1);color:var(--color-text-subtle);font-size:var(--font-size-xs)}.dashboard-page .quick-actions{gap:var(--space-2);padding:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.dashboard-page .quick-action{justify-content:center;align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:82px;color:var(--color-text-muted);font:inherit;font-size:var(--font-size-sm);cursor:pointer;flex-direction:column;display:flex}.dashboard-page .quick-action:hover{border-color:var(--color-border-strong);background:var(--color-surface-accent);color:var(--color-text)}.dashboard-page .quick-action-icon{color:var(--color-accent-dark);font-size:20px}.dashboard-page .activity-list{display:grid}.dashboard-page .activity-item{align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border);display:flex}.dashboard-page .activity-item:last-child{border-bottom:0}.dashboard-page .activity-icon{color:var(--color-accent-dark)}.dashboard-page .activity-info{gap:var(--space-1);flex:1;min-width:0;display:grid}.dashboard-page .activity-info strong{color:var(--color-text);font-size:var(--font-size-sm)}.dashboard-page .activity-info span,.dashboard-page .activity-state,.dashboard-page .activity-empty{color:var(--color-text-muted);font-size:var(--font-size-xs)}.dashboard-page .system-info{gap:var(--space-2);display:grid}@media (width<=1000px){.dashboard-page .dashboard-grid,.dashboard-page .dashboard-bottom-grid{grid-template-columns:1fr}}@media (width<=680px){.dashboard-page .dashboard-stats,.dashboard-page .quick-actions{grid-template-columns:1fr}}.dashboard-page .system-panel,.dashboard-page .activity-panel,.dashboard-page .quick-panel,.dashboard-page .info-panel{min-width:0}.dashboard-page .dashboard-toolbar-actions{align-items:center;gap:var(--space-3);display:flex}.dashboard-page .dashboard-live-dot{background:var(--color-success);border-radius:50%;flex:none;width:8px;height:8px}.dashboard-page .dashboard-live-dot.paused{background:var(--color-text-subtle)}.dashboard-page .dashboard-kpi{min-width:0;min-height:132px;padding:var(--space-4);text-align:left;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);color:var(--color-text);font:inherit;cursor:pointer;flex-direction:column;justify-content:center;align-items:flex-start;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.dashboard-page .dashboard-kpi:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.dashboard-page .dashboard-kpi-label{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.dashboard-page .dashboard-kpi strong{margin-top:var(--space-2);font-size:32px;line-height:1}.dashboard-page .dashboard-kpi-description{margin-top:var(--space-2);color:var(--color-text-subtle);font-size:var(--font-size-xs)}.dashboard-page .dashboard-kpi-moving{border-top:3px solid var(--color-success)}.dashboard-page .dashboard-kpi-stopped{border-top:3px solid var(--color-accent)}.dashboard-page .dashboard-kpi-offline{border-top:3px solid var(--color-warning)}.dashboard-page .dashboard-kpi-critical{border-top:3px solid var(--color-danger)}.dashboard-page .dashboard-main-grid{gap:var(--space-5);grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);display:grid}.dashboard-page .panel-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.dashboard-page .dashboard-state-list{gap:var(--space-1);margin-top:var(--space-3);display:grid}.dashboard-page .dashboard-state-row{min-height:42px;padding:0 var(--space-2);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;display:flex}.dashboard-page .dashboard-state-row:last-child{border-bottom:0}.dashboard-page .dashboard-state-row span{align-items:center;gap:var(--space-2);display:flex}.dashboard-page .dashboard-state-row strong{color:var(--color-text)}.dashboard-page .dashboard-state-dot{border-radius:50%;width:9px;height:9px;display:inline-block}.dashboard-page .dashboard-state-dot.moving{background:var(--color-success)}.dashboard-page .dashboard-state-dot.stopped{background:var(--color-accent)}.dashboard-page .dashboard-state-dot.offline{background:var(--color-warning)}.dashboard-page .dashboard-event-row{align-items:center;gap:var(--space-3);width:100%;min-width:0;padding:var(--space-3) 0;border:0;border-bottom:1px solid var(--color-border);color:var(--color-text);font:inherit;text-align:left;cursor:pointer;background:0 0;grid-template-columns:8px minmax(0,1fr) auto;display:grid}.dashboard-page .dashboard-event-row:last-child{border-bottom:0}.dashboard-page .dashboard-event-row:hover .dashboard-event-content strong{text-decoration:underline}.dashboard-page .dashboard-event-severity{background:var(--color-border-strong);border-radius:4px;width:8px;height:28px}.dashboard-page .dashboard-event-severity.critical{background:var(--color-danger)}.dashboard-page .dashboard-event-severity.warning{background:var(--color-warning)}.dashboard-page .dashboard-event-severity.info{background:var(--color-accent)}.dashboard-page .dashboard-event-content{gap:3px;min-width:0;display:grid}.dashboard-page .dashboard-event-content strong,.dashboard-page .dashboard-event-content span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dashboard-page .dashboard-event-content span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.dashboard-page .dashboard-event-meta{color:var(--color-text-subtle);font-size:var(--font-size-xs);justify-items:end;gap:3px;display:grid}.dashboard-page .dashboard-event-meta time{white-space:nowrap}.dashboard-page .dashboard-empty{padding:var(--space-6) 0;color:var(--color-text-muted);text-align:center;font-size:var(--font-size-sm)}.dashboard-page .dashboard-quick-panel .quick-actions{padding:var(--space-3) 0 0}@media (width<=1200px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.dashboard-page .dashboard-main-grid{grid-template-columns:1fr}.dashboard-page .dashboard-toolbar-actions{flex-direction:column;align-items:flex-end}}@media (width<=680px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .dashboard-toolbar-actions{align-items:stretch;width:100%}.dashboard-page .dashboard-update-status{justify-content:space-between}}@media (width<=480px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:1fr}}.dashboard-page .dashboard-hero{justify-content:space-between;align-items:center;gap:var(--space-5);padding:var(--space-2) 0 var(--space-1);display:flex}.dashboard-page .dashboard-eyebrow{color:var(--color-accent-dark);letter-spacing:.12em;margin-bottom:5px;font-size:10px;font-weight:800}.dashboard-page .dashboard-hero h1{margin:0}.dashboard-page .dashboard-hero-actions{align-items:center;gap:var(--space-3);display:flex}.dashboard-page .dashboard-update-status{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);display:flex}.dashboard-page .dashboard-live-dot{background:var(--color-success);width:8px;height:8px;box-shadow:0 0 0 3px var(--color-success-soft);border-radius:50%}.dashboard-page .dashboard-live-dot.paused{background:var(--color-text-subtle);box-shadow:none}.dashboard-page .dashboard-last-updated{padding-left:var(--space-2);border-left:1px solid var(--color-border)}.dashboard-page .dashboard-kpi-grid{gap:var(--space-3);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}.dashboard-page .dashboard-kpi{text-align:left;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);min-width:0;min-height:126px;box-shadow:var(--shadow-sm);color:var(--color-text);font:inherit;cursor:pointer;grid-template-rows:auto auto auto;grid-template-columns:auto 1fr;align-content:center;column-gap:11px;padding:18px;transition:transform .15s,box-shadow .15s,border-color .15s;display:grid;position:relative;overflow:hidden}.dashboard-page .dashboard-kpi:before{content:"";background:var(--color-accent);width:4px;position:absolute;inset:0 auto 0 0}.dashboard-page .dashboard-kpi:hover{box-shadow:var(--shadow-md);border-color:var(--color-border-strong);transform:translateY(-2px)}.dashboard-page .dashboard-kpi-icon{background:var(--color-surface-accent);width:32px;height:32px;color:var(--color-accent-dark);border-radius:9px;grid-row:1/span 2;place-items:center;font-size:16px;font-weight:800;display:grid}.dashboard-page .dashboard-kpi-label{color:var(--color-text-muted);font-size:var(--font-size-sm);align-self:end;font-weight:650}.dashboard-page .dashboard-kpi strong{align-self:start;margin-top:3px;font-size:30px;line-height:1}.dashboard-page .dashboard-kpi-description{color:var(--color-text-subtle);grid-column:1/-1;margin-top:10px;font-size:10px;line-height:1.35}.dashboard-page .dashboard-kpi-moving:before{background:var(--color-success)}.dashboard-page .dashboard-kpi-moving .dashboard-kpi-icon{color:var(--color-success);background:var(--color-success-soft)}.dashboard-page .dashboard-kpi-stopped:before{background:var(--color-accent)}.dashboard-page .dashboard-kpi-offline:before{background:var(--color-warning)}.dashboard-page .dashboard-kpi-offline .dashboard-kpi-icon{color:var(--color-warning);background:var(--color-warning-soft)}.dashboard-page .dashboard-kpi-critical:before{background:var(--color-danger)}.dashboard-page .dashboard-kpi-critical .dashboard-kpi-icon{color:var(--color-danger);background:var(--color-danger-soft)}.dashboard-page .dashboard-chart-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.dashboard-page .dashboard-chart-panel,.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{min-width:0;padding:18px}.dashboard-page .dashboard-panel-subtitle{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin-top:3px}.dashboard-page .dashboard-fleet-chart{align-items:center;gap:var(--space-3);grid-template-columns:minmax(210px,.9fr) minmax(170px,1fr);min-height:255px;display:grid}.dashboard-page .dashboard-donut-wrap{height:220px;position:relative}.dashboard-page .dashboard-donut-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.dashboard-page .dashboard-donut-center strong{font-size:30px;line-height:1}.dashboard-page .dashboard-donut-center span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:5px}.dashboard-page .dashboard-legend{gap:10px;display:grid}.dashboard-page .dashboard-legend-row{border-bottom:1px solid var(--color-border);font-size:var(--font-size-sm);justify-content:space-between;align-items:center;padding:10px 0;display:flex}.dashboard-page .dashboard-legend-row:last-child{border-bottom:0}.dashboard-page .dashboard-legend-row span{color:var(--color-text-muted);align-items:center;gap:8px;display:flex}.dashboard-page .dashboard-legend-row i{border-radius:50%;width:9px;height:9px}.dashboard-page .dashboard-event-totals{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:5px;display:grid}.dashboard-page .dashboard-event-totals>div{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-width:0;color:var(--color-text-muted);grid-template-columns:auto 1fr auto;align-items:center;gap:6px;padding:9px 8px;font-size:10px;display:grid}.dashboard-page .dashboard-event-totals strong{color:var(--color-text);font-size:var(--font-size-sm)}.dashboard-page .dashboard-severity-mark{background:var(--color-accent);border-radius:50%;width:7px;height:7px}.dashboard-page .dashboard-severity-mark.critical{background:var(--color-danger)}.dashboard-page .dashboard-severity-mark.warning{background:var(--color-warning)}.dashboard-page .dashboard-severity-mark.info{background:var(--color-accent)}.dashboard-page .dashboard-bottom-grid{gap:var(--space-4);grid-template-columns:minmax(280px,.75fr) minmax(0,1.25fr);display:grid}.dashboard-page .dashboard-summary-list{gap:18px;margin-top:22px;display:grid}.dashboard-page .dashboard-summary-row{color:var(--color-text-muted);font-size:var(--font-size-sm);grid-template-columns:1fr auto;gap:6px 12px;display:grid;position:relative}.dashboard-page .dashboard-summary-row strong{color:var(--color-text)}.dashboard-page .dashboard-progress{background:var(--color-surface-muted);border-radius:99px;grid-column:1/-1;height:7px;overflow:hidden}.dashboard-page .dashboard-progress i{background:var(--color-success);border-radius:99px;height:100%;display:block}.dashboard-page .dashboard-progress i.moving{background:var(--color-accent)}.dashboard-page .dashboard-progress i.offline{background:var(--color-warning)}.dashboard-page .dashboard-attention-actions{gap:var(--space-2);border-top:1px solid var(--color-border);margin-top:24px;padding-top:16px;display:flex}.dashboard-page .dashboard-events-list{margin-top:10px;display:grid}.dashboard-page .dashboard-event-row{grid-template-columns:7px minmax(0,1fr) auto;min-height:54px;padding:10px 0}.dashboard-page .dashboard-event-severity{border-radius:4px;width:7px;height:32px}.dashboard-page .dashboard-empty{padding:40px 0}.dashboard-page .dashboard-error{border:1px solid var(--color-danger);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-text);font-size:var(--font-size-sm);padding:11px 14px}@media (width<=1200px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=900px){.dashboard-page .dashboard-hero{flex-direction:column;align-items:flex-start}.dashboard-page .dashboard-hero-actions{justify-content:space-between;width:100%}.dashboard-page .dashboard-chart-grid,.dashboard-page .dashboard-bottom-grid{grid-template-columns:1fr}.dashboard-page .dashboard-fleet-chart{grid-template-columns:1fr 1fr}}@media (width<=680px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-page .dashboard-fleet-chart,.dashboard-page .dashboard-event-totals{grid-template-columns:1fr}.dashboard-page .dashboard-hero-actions{flex-direction:column;align-items:stretch}}@media (width<=480px){.dashboard-page .dashboard-kpi-grid{grid-template-columns:1fr}}.dashboard-page .dashboard-attention-full{min-width:0;padding:18px}.dashboard-page .dashboard-attention-items-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px;margin-top:10px;display:grid}@media (width<=700px){.dashboard-page .dashboard-attention-items-grid{grid-template-columns:1fr}}.dashboard-page .dashboard-fleet-chart{grid-template-columns:220px minmax(160px,1fr);min-height:205px}.dashboard-page .dashboard-event-totals{margin-top:2px}.dashboard-page .dashboard-attention-items-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px}.dashboard-page .dashboard-attention-item{border:0;border-bottom:1px solid var(--color-border);width:100%;min-width:0;min-height:58px;color:var(--color-text);font:inherit;text-align:left;box-shadow:none;cursor:pointer;appearance:none;background:0 0;border-radius:0;outline:0;grid-template-columns:32px minmax(0,1fr) 16px;align-items:center;gap:10px;margin:0;padding:9px 4px;display:grid}.dashboard-page .dashboard-attention-item:hover{background:var(--color-surface)}.dashboard-page .dashboard-attention-icon{border-radius:8px;place-items:center;width:28px;height:28px;font-size:12px;font-weight:800;display:grid}.dashboard-page .dashboard-attention-icon.offline,.dashboard-page .dashboard-attention-icon.warning{color:var(--color-warning);background:var(--color-warning-soft)}.dashboard-page .dashboard-attention-icon.critical{color:var(--color-danger);background:var(--color-danger-soft)}.dashboard-page .dashboard-attention-content{gap:3px;min-width:0;display:grid}.dashboard-page .dashboard-attention-content strong{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-size:var(--font-size-sm);font-weight:650;display:block;overflow:hidden}.dashboard-page .dashboard-attention-content span{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text-muted);font-size:10px;display:block;overflow:hidden}.dashboard-page .dashboard-attention-arrow{color:var(--color-text-subtle);font-size:18px}.dashboard-page .dashboard-attention-empty{text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;min-height:145px;display:flex}.dashboard-page .dashboard-attention-empty span{background:var(--color-success-soft);width:36px;height:36px;color:var(--color-success);border-radius:50%;place-items:center;margin-bottom:8px;font-size:17px;display:grid}.dashboard-page .dashboard-attention-empty strong{color:var(--color-text);font-size:var(--font-size-sm)}.dashboard-page .dashboard-attention-empty small{color:var(--color-text-muted);margin-top:3px;font-size:10px}@media (width<=700px){.dashboard-page .dashboard-attention-items-grid{grid-template-columns:1fr}}.dashboard-page .dashboard-kpi{border-radius:8px;min-height:84px;padding:11px 13px}.dashboard-page .dashboard-kpi-icon{border-radius:7px;width:26px;height:26px;font-size:13px}.dashboard-page .dashboard-kpi strong{margin-top:2px;font-size:25px}.dashboard-page .dashboard-chart-panel{padding:11px 14px 9px}.dashboard-page .dashboard-fleet-chart{grid-template-columns:175px minmax(130px,1fr);gap:8px;min-height:155px}.dashboard-page .dashboard-event-totals{gap:5px}.dashboard-page .dashboard-attention-full{padding:10px 14px}.dashboard-page .dashboard-attention-items-grid{column-gap:20px;margin-top:3px}.dashboard-page .dashboard-attention-item{grid-template-columns:26px minmax(0,1fr) 12px;gap:7px;min-height:42px;padding:5px 2px}.dashboard-page .dashboard-attention-icon{border-radius:6px;width:23px;height:23px;font-size:10px}.dashboard-page .dashboard-attention-content{gap:1px}.dashboard-page .dashboard-bottom-grid{gap:10px}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{padding:11px 14px}.dashboard-page .dashboard-summary-row{gap:3px 8px;font-size:10px}.dashboard-page .dashboard-attention-actions{gap:6px;margin-top:10px;padding-top:8px}.dashboard-page .dashboard-event-row{grid-template-columns:5px minmax(0,1fr) auto;gap:8px;min-height:39px;padding:5px 0}.dashboard-page .dashboard-event-severity{width:5px;height:24px}.dashboard-page .dashboard-event-content{gap:1px}.dashboard-page .dashboard-event-content span,.dashboard-page .dashboard-event-meta{font-size:8px}@media (height<=900px) and (width>=900px){.dashboard-page{gap:8px}.dashboard-page .dashboard-kpi{min-height:76px;padding:9px 11px}.dashboard-page .dashboard-fleet-chart{min-height:140px}.dashboard-page .dashboard-donut-wrap{height:135px}.dashboard-page .dashboard-event-chart{height:115px}.dashboard-page .dashboard-attention-item{min-height:37px;padding:3px 2px}.dashboard-page .dashboard-event-row{min-height:35px;padding:3px 0}}@media (width>=1001px) and (height>=760px){.dashboard-page{grid-template-rows:auto auto minmax(175px,auto) auto minmax(175px,1fr);min-height:calc(100vh - 58px)}.dashboard-page .dashboard-chart-panel{min-height:185px}.dashboard-page .dashboard-fleet-chart{min-height:165px}.dashboard-page .dashboard-donut-wrap{height:155px}.dashboard-page .dashboard-event-chart{height:140px}.dashboard-page .dashboard-attention-full{min-height:105px}.dashboard-page .dashboard-bottom-grid{min-height:175px}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{box-sizing:border-box;height:100%}}@media (width>=1001px) and (height>=850px){.dashboard-page{grid-template-rows:auto auto minmax(190px,auto) auto minmax(205px,1fr)}.dashboard-page .dashboard-chart-panel{min-height:200px}.dashboard-page .dashboard-fleet-chart{min-height:175px}.dashboard-page .dashboard-donut-wrap{height:165px}.dashboard-page .dashboard-event-chart{height:150px}.dashboard-page .dashboard-attention-full{min-height:112px}}.dashboard-page{gap:10px;padding-bottom:8px}.dashboard-page .dashboard-hero{min-height:52px;padding:0}.dashboard-page .dashboard-eyebrow{margin-bottom:3px;font-size:9px}.dashboard-page .dashboard-hero h1{font-size:22px;line-height:1.15}.dashboard-page .page-subtitle{margin-top:4px;font-size:10px}.dashboard-page .dashboard-kpi-grid{gap:8px}.dashboard-page .dashboard-kpi-description{margin-top:5px;font-size:9px}.dashboard-page .dashboard-chart-grid{gap:10px}.dashboard-page .dashboard-chart-panel{box-sizing:border-box;height:205px;min-height:205px;padding:13px 15px 10px}.dashboard-page .dashboard-attention-full{box-sizing:border-box;height:104px;min-height:0;padding:11px 15px}.dashboard-page .dashboard-attention-items-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;height:62px;margin-top:3px}.dashboard-page .dashboard-attention-item{grid-template-columns:28px minmax(0,1fr) 14px;height:30px;min-height:30px;padding:3px 2px}.dashboard-page .dashboard-attention-icon{width:24px;height:24px;font-size:10px}.dashboard-page .dashboard-attention-arrow{font-size:15px}.dashboard-page .dashboard-bottom-grid{gap:10px;height:205px;min-height:0!important}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{box-sizing:border-box;padding:13px 15px;height:205px!important;min-height:0!important}.dashboard-page .dashboard-events-list{margin-top:3px}.dashboard-page .dashboard-event-content span,.dashboard-page .dashboard-event-meta{font-size:9px}.dashboard-page .button-small{min-height:25px;padding:4px 9px;font-size:9px}@media (width>=1001px){.dashboard-page{grid-template-rows:none!important;min-height:0!important}}@media (width>=1001px) and (height<=760px){.dashboard-page .dashboard-kpi{height:78px;min-height:78px}.dashboard-page .dashboard-chart-panel{height:190px;min-height:190px}.dashboard-page .dashboard-fleet-chart{height:150px;min-height:150px}.dashboard-page .dashboard-donut-wrap{height:140px}.dashboard-page .dashboard-event-chart{height:120px}.dashboard-page .dashboard-attention-full{height:92px}.dashboard-page .dashboard-attention-items-grid{height:52px}.dashboard-page .dashboard-bottom-grid,.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{height:185px!important}}.dashboard-page .dashboard-hero{min-height:58px}.dashboard-page .dashboard-chart-panel{height:245px;min-height:245px;padding:15px 17px 12px}.dashboard-page .dashboard-fleet-chart{grid-template-columns:220px minmax(0,1fr);height:195px;min-height:195px}.dashboard-page .dashboard-legend{gap:5px}.dashboard-page .dashboard-legend-row{padding:8px 0;font-size:11px}.dashboard-page .dashboard-event-chart{height:165px;margin-top:7px}.dashboard-page .dashboard-attention-full{height:125px;min-height:125px;padding:13px 17px}.dashboard-page .dashboard-attention-items-grid{grid-auto-rows:38px;height:78px}.dashboard-page .dashboard-attention-item{height:38px;min-height:38px;padding:5px 3px}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{padding:15px 17px;height:255px!important;min-height:255px!important}.dashboard-page .dashboard-event-row{height:39px;min-height:39px;padding:5px 0}.dashboard-page .dashboard-event-content span,.dashboard-page .dashboard-event-meta{font-size:9px}.dashboard-page .dashboard-progress i.stopped{background:var(--color-accent)}.dashboard-page .dashboard-progress i.critical{background:var(--color-danger)}@media (width>=1001px) and (height<=850px){.dashboard-page .dashboard-kpi{height:84px;min-height:84px}.dashboard-page .dashboard-chart-panel{height:220px;min-height:220px}.dashboard-page .dashboard-fleet-chart{height:170px;min-height:170px}.dashboard-page .dashboard-donut-wrap{height:155px}.dashboard-page .dashboard-event-chart{height:145px}.dashboard-page .dashboard-attention-full{height:108px;min-height:108px}.dashboard-page .dashboard-attention-items-grid{grid-auto-rows:32px;height:64px}.dashboard-page .dashboard-attention-item{height:32px;min-height:32px}.dashboard-page .dashboard-bottom-grid{height:225px;min-height:225px}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{height:225px!important;min-height:225px!important}}.dashboard-page{box-sizing:border-box;grid-template-rows:60px 92px 245px 120px minmax(0,1fr);grid-template-columns:minmax(0,1fr);gap:10px;width:100%;height:100%;min-height:0;display:grid;overflow:hidden}.dashboard-page .dashboard-hero{height:100%;min-height:0;padding:0}.dashboard-page .dashboard-kpi-grid,.dashboard-page .dashboard-kpi,.dashboard-page .dashboard-chart-grid,.dashboard-page .dashboard-chart-panel{height:100%;min-height:0}.dashboard-page .dashboard-fleet-chart{height:195px;min-height:195px}.dashboard-page .dashboard-attention-full{height:100%;min-height:0}.dashboard-page .dashboard-attention-items-grid{height:auto;min-height:0}.dashboard-page .dashboard-bottom-grid{height:100%;min-height:0!important}.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{overflow:hidden;height:100%!important;min-height:0!important}.dashboard-page .dashboard-events-list{min-height:0}.dashboard-page .dashboard-event-row{min-height:39px}.dashboard-page .dashboard-summary-list{gap:10px}@media (height<=850px) and (width>=900px){.dashboard-page{grid-template-rows:54px 82px 205px 105px minmax(0,1fr);gap:8px}.dashboard-page .dashboard-fleet-chart{height:160px;min-height:160px}.dashboard-page .dashboard-donut-wrap{height:145px}.dashboard-page .dashboard-event-chart{height:135px}}@media (width<=900px){.dashboard-page{grid-template-rows:auto;height:auto;min-height:0;overflow:visible}}.dashboard-page{grid-template-rows:64px 100px 255px 125px minmax(260px,1fr);gap:10px;height:calc(100vh - 84px);min-height:calc(100vh - 84px)}.dashboard-page .dashboard-chart-panel,.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{padding:16px 18px}.dashboard-page .dashboard-panel-subtitle{font-size:12px}.dashboard-page .dashboard-chart-panel .panel-title,.dashboard-page .dashboard-attention-full .panel-title,.dashboard-page .dashboard-bottom-grid .panel-title{font-size:16px;font-weight:700}.dashboard-page .dashboard-fleet-chart{grid-template-columns:190px minmax(0,320px);justify-content:start;gap:18px;min-height:210px}.dashboard-page .dashboard-donut-wrap{height:195px}.dashboard-page .dashboard-donut-center strong{font-size:32px}.dashboard-page .dashboard-donut-center span{font-size:12px}.dashboard-page .dashboard-legend{gap:4px;width:100%;max-width:320px}.dashboard-page .dashboard-legend-row{justify-content:flex-start;gap:28px;padding:9px 0;font-size:14px}.dashboard-page .dashboard-legend-row strong{text-align:right;min-width:24px;margin-left:auto}.dashboard-page .dashboard-event-chart{height:178px}.dashboard-page .dashboard-event-totals>div{padding:9px 10px;font-size:12px}.dashboard-page .dashboard-event-totals strong{font-size:14px}.dashboard-page .dashboard-attention-item{min-height:52px;font-size:14px}.dashboard-page .dashboard-attention-content strong{font-size:14px}.dashboard-page .dashboard-attention-content span{font-size:12px}.dashboard-page .dashboard-summary-list{gap:12px;margin-top:18px}.dashboard-page .dashboard-summary-row,.dashboard-page .dashboard-summary-row strong{font-size:14px}.dashboard-page .dashboard-progress{height:8px}.dashboard-page .dashboard-event-row{min-height:42px;padding:9px 0}.dashboard-page .dashboard-event-content strong{font-size:14px}.dashboard-page .dashboard-event-content span{font-size:12px}.dashboard-page .dashboard-event-meta{font-size:11px}.dashboard-page .dashboard-attention-actions{margin-top:18px;padding-top:12px}@media (height<=900px) and (width>=901px){.dashboard-page{grid-template-rows:60px 92px 235px 115px minmax(250px,1fr);height:calc(100vh - 84px);min-height:calc(100vh - 84px)}.dashboard-page .dashboard-chart-panel,.dashboard-page .dashboard-attention-panel,.dashboard-page .dashboard-events-panel{padding:14px 16px}.dashboard-page .dashboard-fleet-chart{grid-template-columns:175px minmax(0,300px);min-height:190px}.dashboard-page .dashboard-donut-wrap{height:175px}.dashboard-page .dashboard-event-chart{height:155px}}@media (width<=900px){.dashboard-page{grid-template-rows:auto;height:auto;min-height:0;overflow:visible}}.dashboard-page{grid-template-rows:none;gap:12px;height:auto;min-height:0;overflow:visible}.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-page .dashboard-kpi-label{font-size:13px}.dashboard-page .dashboard-kpi-description{font-size:10px}.dashboard-main-workspace{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:12px;display:grid}.dashboard-workspace-panel{min-width:0;min-height:270px;padding:18px}.dashboard-fleet-content{grid-template-columns:210px minmax(0,1fr);align-items:center;gap:24px;min-height:205px;display:grid}.dashboard-state-breakdown{gap:0;display:grid}.dashboard-state-breakdown-row{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:44px;padding:0 4px;font-size:14px;display:flex}.dashboard-state-breakdown-row:last-child{border-bottom:0}.dashboard-state-breakdown-row span{color:var(--color-text-muted);align-items:center;gap:9px;display:flex}.dashboard-state-breakdown-row i{background:var(--color-text-subtle);border-radius:50%;width:9px;height:9px}.dashboard-state-breakdown-row i.moving{background:var(--color-success)}.dashboard-state-breakdown-row i.stopped{background:var(--color-accent)}.dashboard-state-breakdown-row i.offline{background:var(--color-warning)}.dashboard-state-breakdown-row i.no_data{background:var(--color-text-subtle)}.dashboard-state-breakdown-row strong{font-size:16px}.dashboard-summary-panel .dashboard-summary-row{font-size:14px}.dashboard-summary-panel .dashboard-progress{height:8px}.dashboard-summary-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:12px;margin-top:18px;padding-top:14px;display:flex}.dashboard-summary-critical{color:var(--color-text-muted);align-items:center;gap:8px;font-size:13px;display:flex}.dashboard-summary-critical i{background:var(--color-danger);border-radius:50%;width:9px;height:9px}.dashboard-summary-critical strong{color:var(--color-text);margin-left:3px}.dashboard-events-overview{padding:18px}.dashboard-events-overview-grid{grid-template-columns:minmax(0,1.55fr) minmax(330px,.8fr);align-items:center;gap:20px;display:grid}.dashboard-event-chart-main{height:190px}.dashboard-event-categories{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.dashboard-category-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-direction:column;justify-content:center;gap:5px;min-height:100px;padding:14px;display:flex}.dashboard-category-card span{color:var(--color-text-muted);font-size:12px}.dashboard-category-card strong{font-size:24px;line-height:1}.dashboard-category-card small{color:var(--color-text-subtle);font-size:10px}.dashboard-category-card.critical{border-left:3px solid var(--color-danger)}.dashboard-category-card.warning{border-left:3px solid var(--color-warning)}.dashboard-category-card.info{border-left:3px solid var(--color-accent)}.dashboard-operational-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.dashboard-operational-panel{min-height:180px;padding:18px}.dashboard-fuel-cards{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:18px;display:grid}.dashboard-fuel-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;min-height:70px;padding:10px;display:grid}.dashboard-fuel-icon{background:var(--color-success-soft);width:28px;height:28px;color:var(--color-success);border-radius:7px;place-items:center;font-weight:700;display:grid}.dashboard-fuel-icon.warning{background:var(--color-warning-soft);color:var(--color-warning)}.dashboard-fuel-icon.critical{background:var(--color-danger-soft);color:var(--color-danger)}.dashboard-fuel-icon.info{background:var(--color-surface-accent);color:var(--color-accent-dark)}.dashboard-fuel-card div{gap:2px;min-width:0;display:grid}.dashboard-fuel-card strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dashboard-fuel-card small{color:var(--color-text-subtle);font-size:9px}.dashboard-fuel-card b{font-size:18px}.dashboard-notification-center{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);justify-content:space-between;align-items:center;gap:20px;min-height:105px;margin-top:18px;padding:16px;display:flex}.dashboard-notification-main{align-items:center;gap:12px;display:flex}.dashboard-notification-icon{background:var(--color-surface-accent);width:34px;height:34px;color:var(--color-accent-dark);border-radius:9px;place-items:center;font-size:12px;display:grid}.dashboard-notification-main div{gap:4px;display:grid}.dashboard-notification-main strong{font-size:14px}.dashboard-notification-main span{color:var(--color-text-muted);font-size:10px}.dashboard-latest-events{padding:18px}.dashboard-events-list-dashboard{grid-template-columns:1fr 1fr;column-gap:28px;margin-top:8px}.dashboard-events-list-dashboard .dashboard-event-row{min-height:48px;padding:7px 0}.dashboard-events-list-dashboard .dashboard-event-content strong{font-size:13px}.dashboard-events-list-dashboard .dashboard-event-content span{font-size:11px}.dashboard-events-list-dashboard .dashboard-event-meta{font-size:10px}@media (width<=1200px){.dashboard-main-workspace,.dashboard-operational-grid,.dashboard-events-overview-grid{grid-template-columns:1fr}.dashboard-event-categories{grid-template-columns:repeat(3,1fr)}}@media (width<=900px){.dashboard-page{height:auto;min-height:0;overflow:visible}.dashboard-page .dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-fuel-cards{grid-template-columns:repeat(2,1fr)}.dashboard-events-list-dashboard{grid-template-columns:1fr}}@media (width<=680px){.dashboard-event-categories,.dashboard-fleet-content,.dashboard-fuel-cards{grid-template-columns:1fr}.dashboard-notification-center{flex-direction:column;align-items:flex-start}}.dashboard-notification-list{border-top:1px solid var(--color-border);margin-top:10px;display:grid}.dashboard-notification-row{border-bottom:1px solid var(--color-border);grid-template-columns:7px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:42px;padding:6px 0;display:grid}.dashboard-notification-row>span{background:var(--color-accent);border-radius:4px;width:7px;height:26px}.dashboard-notification-row>span.warning{background:var(--color-warning)}.dashboard-notification-row>span.critical{background:var(--color-danger)}.dashboard-notification-row>div{gap:2px;min-width:0;display:grid}.dashboard-notification-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.dashboard-notification-row span:not(.dashboard-event-severity){color:var(--color-text-muted)}.dashboard-notification-row div span{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.dashboard-notification-row small{color:var(--color-text-subtle);font-size:9px}.dashboard-events-latest-grid{grid-template-columns:minmax(0,1.55fr) minmax(390px,.8fr);align-items:stretch;gap:12px;display:grid}.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{min-width:0;min-height:300px}.dashboard-events-latest-grid .dashboard-events-overview{flex-direction:column;display:flex}.dashboard-events-latest-grid .dashboard-events-overview-grid{flex:1;min-height:0}.dashboard-events-latest-grid .dashboard-event-categories{grid-template-columns:1fr}.dashboard-events-latest-grid .dashboard-category-card{height:62px;min-height:0;padding:10px 12px}.dashboard-events-latest-grid .dashboard-category-card small{display:none}.dashboard-events-latest-grid .dashboard-latest-events{flex-direction:column;display:flex}.dashboard-events-latest-grid .dashboard-events-list-dashboard{flex:1;grid-template-columns:1fr;margin-top:4px;overflow:hidden}.dashboard-events-latest-grid .dashboard-event-row{min-height:43px;padding:5px 0}.dashboard-events-latest-grid .dashboard-event-content strong{font-size:12px}.dashboard-events-latest-grid .dashboard-event-content span{font-size:10px}.dashboard-events-latest-grid .dashboard-event-meta{font-size:9px}@media (width<=1200px){.dashboard-events-latest-grid{grid-template-columns:1fr}.dashboard-events-latest-grid .dashboard-event-categories{grid-template-columns:repeat(3,1fr)}.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{min-height:260px}}@media (width<=900px){.dashboard-events-latest-grid .dashboard-event-categories{grid-template-columns:1fr}}.dashboard-page{gap:10px}.dashboard-page .dashboard-kpi{height:82px;min-height:82px;padding:11px 14px}.dashboard-page .dashboard-kpi strong{font-size:25px}.dashboard-main-workspace{gap:10px}.dashboard-workspace-panel{height:225px;min-height:225px;padding:15px}.dashboard-fleet-content{grid-template-columns:190px minmax(0,1fr);gap:18px;min-height:170px}.dashboard-summary-panel .dashboard-summary-list{gap:10px;margin-top:14px}.dashboard-summary-footer{margin-top:12px;padding-top:10px}.dashboard-events-latest-grid{gap:10px}.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{height:260px;min-height:260px;padding:15px}.dashboard-events-latest-grid .dashboard-event-chart-main{height:175px}.dashboard-events-latest-grid .dashboard-category-card{height:54px;padding:8px 10px}.dashboard-operational-grid{gap:10px}.dashboard-operational-panel{height:140px;min-height:140px;padding:15px}.dashboard-fuel-cards{gap:8px;margin-top:10px}.dashboard-fuel-card{min-height:58px;padding:8px}.dashboard-notification-center{min-height:72px;margin-top:10px;padding:11px}.dashboard-notification-list{margin-top:6px}.dashboard-notification-row{min-height:34px;padding:4px 0}.dashboard-main-workspace{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.dashboard-workspace-panel{height:215px;min-height:215px}.dashboard-fleet-content{min-height:160px}.dashboard-state-breakdown{max-width:360px}.dashboard-state-breakdown-row{justify-content:flex-start;gap:24px}.dashboard-state-breakdown-row strong{margin-left:auto}.dashboard-events-latest-grid{grid-template-columns:minmax(0,1.55fr) minmax(390px,.8fr)}.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{height:250px;min-height:250px}.dashboard-events-latest-grid .dashboard-events-overview-grid{grid-template-columns:minmax(0,1.5fr) 310px;align-items:stretch;gap:16px}.dashboard-events-latest-grid .dashboard-event-categories{grid-template-rows:repeat(3,1fr);grid-template-columns:1fr;gap:8px;height:100%}.dashboard-events-latest-grid .dashboard-category-card{justify-content:center;height:auto;min-height:0;padding:8px 12px}.dashboard-events-latest-grid .dashboard-category-card span{font-size:11px}.dashboard-events-latest-grid .dashboard-category-card strong{font-size:20px}.dashboard-events-latest-grid .dashboard-latest-events,.dashboard-events-latest-grid .dashboard-events-list-dashboard{overflow:hidden}.dashboard-operational-grid{margin-top:0}.dashboard-operational-panel{height:125px;min-height:125px}.dashboard-fuel-cards{margin-top:8px}.dashboard-fuel-card{min-height:54px}.dashboard-notification-center{min-height:58px;margin-top:8px}@media (width<=1200px){.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{height:250px;min-height:250px}}.dashboard-page{align-content:start;gap:10px}.dashboard-main-workspace{align-items:stretch;height:215px;min-height:215px}.dashboard-main-workspace>.dashboard-workspace-panel{box-sizing:border-box;height:215px;min-height:215px;max-height:215px;overflow:hidden}.dashboard-donut-wrap{width:190px;height:160px;min-height:160px;max-height:160px}.dashboard-state-breakdown{width:100%;max-width:360px}.dashboard-events-latest-grid{align-items:stretch;height:250px;min-height:250px;max-height:250px;overflow:hidden}.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events{box-sizing:border-box;height:250px;min-height:250px;max-height:250px;overflow:hidden}.dashboard-events-latest-grid .dashboard-events-list-dashboard{height:195px;min-height:0;overflow:hidden}.dashboard-events-latest-grid .dashboard-events-list-dashboard .dashboard-event-row{height:38px;min-height:38px;padding:4px 0}.dashboard-operational-grid{align-items:stretch;height:125px;min-height:125px;max-height:125px}.dashboard-operational-grid>.dashboard-operational-panel{box-sizing:border-box;height:125px;min-height:125px;max-height:125px;overflow:hidden}.dashboard-page{box-sizing:border-box;grid-template-rows:auto auto minmax(0,1fr) minmax(0,1.15fr) minmax(0,1fr);align-content:stretch;gap:10px;height:calc(100vh - 96px);min-height:calc(100vh - 96px)}.dashboard-main-workspace,.dashboard-events-latest-grid,.dashboard-operational-grid{height:auto;min-height:0;max-height:none}.dashboard-main-workspace>.dashboard-workspace-panel,.dashboard-events-latest-grid>.dashboard-events-overview,.dashboard-events-latest-grid>.dashboard-latest-events,.dashboard-operational-grid>.dashboard-operational-panel{box-sizing:border-box;height:100%;min-height:0;max-height:none}.dashboard-fleet-content{height:calc(100% - 48px);min-height:150px;max-height:none}.dashboard-donut-wrap{height:100%;min-height:150px;max-height:none}.dashboard-events-latest-grid .dashboard-events-overview-grid{height:calc(100% - 48px);min-height:0}.dashboard-events-latest-grid .dashboard-event-chart-main{height:100%;min-height:170px}.dashboard-events-latest-grid .dashboard-events-list-dashboard{height:calc(100% - 48px);min-height:0}.dashboard-operational-panel .dashboard-fuel-cards{min-height:54px}.login-page{background:radial-gradient(ellipse at 50% 0%, #6f91a329, transparent 52%), linear-gradient(145deg, var(--color-surface-muted), var(--color-accent-soft));place-items:center;min-height:100vh;padding:clamp(20px,4vw,48px);display:grid}.login-page .login-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:16px;width:min(430px,100%);padding:clamp(28px,4vw,38px);position:relative;overflow:hidden;box-shadow:0 18px 48px #1a303e21,0 2px 8px #1a303e0f}.login-page .login-card:before{content:"";background:linear-gradient(90deg, var(--color-accent-dark), var(--color-accent), var(--color-accent-soft));height:4px;position:absolute;inset:0 0 auto}.login-page .login-logo{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:3px 9px;margin-bottom:24px;display:flex}.login-page .login-logo-main{color:var(--color-accent-dark);letter-spacing:-.045em;font-size:27px;font-weight:800}.login-page .login-logo-text{color:var(--color-text-muted);font-size:12px;line-height:1.5}.login-page .login-logo-version{color:var(--color-text-muted);white-space:nowrap;font-size:12px}.login-page .login-header{text-align:center;margin-bottom:27px}.login-page .login-header h1{color:var(--color-text);letter-spacing:-.025em;margin:0;font-size:clamp(24px,3vw,28px);font-weight:750;line-height:1.2}.login-page .login-header p{color:var(--color-text-muted);margin:10px 0 0;font-size:14px;line-height:1.5}.login-page .login-form{flex-direction:column;gap:17px;display:flex}.login-page .login-form label{color:var(--color-text);flex-direction:column;gap:7px;font-size:13px;font-weight:600;display:flex}.login-page .login-form input{border:1px solid var(--color-border-strong);background:var(--color-surface);width:100%;min-height:44px;color:var(--color-text);font:inherit;border-radius:9px;padding:10px 13px;font-size:14px;transition:border-color .14s,box-shadow .14s,background .14s}.login-page .login-form input:hover{border-color:var(--color-accent)}.login-page .login-form input:focus{border-color:var(--color-accent-dark);background:var(--color-surface-raised);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}.login-page .login-button{border-radius:9px;width:100%;min-height:44px;margin-top:2px;font-size:14px;font-weight:700;transition:transform .14s,box-shadow .14s,filter .14s;box-shadow:0 3px 8px #2a4d601f}.login-page .login-button:not(:disabled):hover{filter:brightness(1.04);box-shadow:0 5px 12px #2a4d602e}.login-page .login-button:not(:disabled):active{transform:translateY(1px)}.login-page .login-button:focus-visible{outline:3px solid var(--color-accent-soft);outline-offset:2px}.login-page .login-error{border:1px solid var(--color-danger);background:color-mix(in srgb, var(--color-danger) 8%, var(--color-surface-raised));color:var(--color-danger);border-radius:8px;margin:-3px 0 0;padding:10px 12px;font-size:13px}.login-page .login-footer{color:var(--color-text-subtle);text-align:center;letter-spacing:.04em;margin-top:24px;font-size:11px}@media (width<=480px){.login-page{padding:16px}.login-page .login-card{border-radius:14px;padding:28px 22px}.login-page .login-logo{margin-bottom:21px}.login-page .login-logo-text{text-align:center}}.monitoring-screen,.tracks-page{background:var(--color-bg);isolation:isolate;flex:auto;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.monitoring-map,.monitoring-screen .monitoring-map,.monitoring-screen .leaflet-map{width:100%;height:100%;z-index:var(--z-map);position:absolute;inset:0}.monitoring-map .leaflet-container,.leaflet-map{background:var(--color-surface-muted);width:100%;height:100%}.resizable-panel-wrapper>aside{width:100%;height:100%}.resizable-panel-wrapper{top:var(--space-3);left:var(--space-3);bottom:var(--space-3);width:380px;z-index:var(--z-map-panel);min-width:0;min-height:0;position:absolute}.resize-handle{cursor:col-resize;width:12px;height:100%;z-index:var(--z-map-handle);position:absolute;top:0;right:-6px}.resize-handle:hover,.resize-handle:focus-visible{background:var(--color-accent-soft)}.monitoring-devices-panel,.monitoring-info-panel,.tracks-page .track-master-panel{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-sm);color:var(--color-text);flex-direction:column;display:flex;overflow:hidden}.monitoring-devices-panel{position:relative}.monitoring-info-panel{top:var(--space-3);right:var(--space-3);bottom:var(--space-3);width:300px;height:fit-content;max-height:calc(100% - 2 * var(--space-3));z-index:var(--z-map-panel);position:absolute}.monitoring-info-panel .info-panel-content{flex:0 auto;min-height:0;overflow-y:auto}.floating-panel-header,.tracks-page .track-master-header{min-height:var(--control-height);justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-3);background:var(--color-surface);border-bottom:1px solid var(--color-border);flex:none;display:flex;position:relative}.floating-panel-header>div{align-items:center;gap:var(--space-2);min-width:0;display:flex}.floating-panel-title{color:var(--color-text);font-size:var(--font-size-sm);letter-spacing:.02em;font-weight:700}.device-counter{color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.device-search{align-items:center;gap:var(--space-2);margin:var(--space-2);padding:0 var(--space-2);min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);flex:none;display:flex}.device-search:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-accent-soft)}.device-search input{min-width:0;min-height:calc(var(--control-height) - 2px);box-shadow:none;background:0 0;border:0;outline:0;flex:1;padding:0}.device-search input:focus{box-shadow:none}.monitoring-device-list{min-height:0;padding:0 var(--space-2) var(--space-2);flex:auto;overflow-y:auto}.monitoring-message,.monitoring-error{padding:var(--space-6) var(--space-3);text-align:center;color:var(--color-text-muted);font-size:var(--font-size-sm)}.monitoring-error{color:var(--color-danger)}.monitoring-device-item{align-items:center;gap:var(--space-2);width:100%;height:34px;min-height:34px;margin-bottom:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-fast), border-color var(--transition-fast);padding:4px 8px;font-family:inherit;display:flex}.monitoring-device-item:hover{border-color:var(--color-border-strong);background:var(--color-surface-accent)}.monitoring-device-item.selected{border-color:var(--color-border-focus);background:var(--color-accent-soft)}.monitoring-device-dot{background:var(--color-text-subtle);border-radius:50%;flex:0 0 11px;width:11px;height:11px}.monitoring-device-dot.online{background:var(--color-success)}.monitoring-device-dot.warning{background:var(--color-warning)}.monitoring-device-dot.offline{background:var(--color-danger)}.monitoring-device-dot.no_data{background:#9ca3af}.monitoring-device-info{flex:1;align-items:center;min-width:0;display:flex}.monitoring-device-info strong{min-width:0;color:var(--color-text);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.monitoring-device-meta{justify-content:flex-end;align-items:center;min-width:52px;display:flex}.monitoring-device-meta small{color:var(--color-success);font-size:var(--font-size-xs);white-space:nowrap;font-weight:700}.info-panel-content{min-height:0;padding:var(--space-3);overflow-y:auto}.selected-device-title{align-items:center;gap:var(--space-2);min-height:50px;padding:var(--space-2);margin-bottom:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:flex}.selected-device-title>div:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.selected-device-title strong{color:var(--color-text);font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.selected-device-title span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.vehicle-icon{background:var(--color-accent-soft);width:30px;height:30px;color:var(--color-accent-dark);border-radius:50%;flex:0 0 30px;place-items:center;display:grid}.monitoring-sensors{margin:var(--space-3) 0;padding:var(--space-2) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.monitoring-section-title{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:.04em;font-weight:700}.monitoring-sensor-list{flex-direction:column;display:flex}.monitoring-sensor-row{padding:7px 0}.monitoring-sensor-row strong{font-variant-numeric:tabular-nums}.info-card{min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.info-card strong{margin-top:var(--space-1);overflow-wrap:anywhere;display:block}.info-actions{gap:var(--space-2);margin-top:var(--space-3);grid-template-columns:1fr 1fr;display:grid}.info-action-button{width:100%;min-height:var(--control-height-sm)}.info-updated{margin-top:var(--space-3);color:var(--color-text-subtle);font-size:var(--font-size-xs)}.value-ok{color:var(--color-success)}.value-warning{color:var(--color-warning)}.monitoring-device-map-marker{pointer-events:auto;justify-content:center;align-items:center;display:flex;background:0 0!important;border:0!important}.monitoring-device-map-icon{width:44px;height:44px;color:var(--color-accent-strong);transform-origin:50%;filter:drop-shadow(0 0 2px #fffffff2)drop-shadow(0 2px 4px #0000006b);place-items:center;display:grid}.monitoring-device-map-icon svg{width:100%;height:100%;display:block}.monitoring-device-map-marker.is-selected .monitoring-device-map-icon{width:48px;height:48px;color:var(--color-accent-strong);filter:drop-shadow(0 0 3px #fff)drop-shadow(0 3px 5px #00000080)}.map-popup{color:var(--color-text);font-size:var(--font-size-sm);gap:4px;display:grid}.map-popup-warning{color:var(--color-warning)}.monitoring-screen .leaflet-control-zoom a{color:var(--color-text);background:var(--color-surface-raised);border-color:var(--color-border)}.monitoring-screen .leaflet-popup-content-wrapper{border-radius:var(--radius-md);color:var(--color-text)}.map-empty{inset:var(--space-3);z-index:1;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-muted) 92%, transparent);color:var(--color-text-muted);place-items:center;display:grid;position:absolute}@media (width<=900px){.monitoring-info-panel{width:280px}}@media (width<=620px){.monitoring-info-panel{top:auto;left:var(--space-2);right:var(--space-2);bottom:var(--space-2);width:auto;height:fit-content;max-height:42%}.resizable-panel-wrapper{top:var(--space-2);left:var(--space-2);width:min(360px,100% - 16px);height:48%;bottom:auto}}.map-ui-overlay{z-index:500;pointer-events:none;position:absolute;inset:0}.map-ui-bottom-center{pointer-events:auto;align-items:center;gap:8px;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%)}.map-ui-zoom{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent);min-height:34px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);align-items:center;display:inline-flex;overflow:hidden}.map-ui-zoom button{width:34px;height:34px;color:var(--color-text);cursor:pointer;background:0 0;border:0;font-size:19px;line-height:1}.map-ui-zoom button:hover{background:var(--color-surface-accent)}.map-ui-zoom span{min-width:30px;color:var(--color-text-muted);text-align:center;border-left:1px solid var(--color-border);border-right:1px solid var(--color-border);padding:0 5px;font-size:10px;font-weight:700}.map-ui-scale,.map-ui-coordinates{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent);min-height:34px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-text-muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;padding:0 10px;font-size:10px;display:inline-flex}.map-ui-coordinates{pointer-events:none;justify-content:center;min-width:185px;position:static}@media (width<=620px){.map-ui-coordinates{min-width:0}.map-ui-bottom-center{bottom:8px}.map-ui-scale{display:none}}.monitoring-view-toggle{margin:0 var(--space-2) var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:1fr 1fr;gap:2px;padding:2px;display:grid}.monitoring-view-toggle button{border-radius:calc(var(--radius-md) - 2px);min-height:32px;color:var(--color-text-muted);font:inherit;font-size:var(--font-size-xs);cursor:pointer;background:0 0;border:0;font-weight:700}.monitoring-view-toggle button:hover{background:var(--color-surface-accent);color:var(--color-text)}.monitoring-view-toggle button.active{background:var(--color-accent-soft);color:var(--color-text)}.monitoring-device-tree{padding-bottom:var(--space-2);flex-direction:column;gap:2px;display:flex}.monitoring-tree-district{margin-bottom:var(--space-2)}.monitoring-tree-node{align-items:center;gap:var(--space-2);width:100%;min-height:32px;padding:5px var(--space-2);border-radius:var(--radius-md);color:var(--color-text);text-align:left;background:0 0;border:0;display:flex}.monitoring-tree-district-node{background:var(--color-surface);border:1px solid var(--color-border);font-size:var(--font-size-xs);margin-bottom:2px}.monitoring-tree-district-node>span:last-child{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-left:auto}.monitoring-tree-group-node{color:var(--color-text);font-size:var(--font-size-xs);font-weight:600}.monitoring-tree-marker{width:14px;color:var(--color-text-muted);text-align:center;flex:0 0 14px}.monitoring-tree-device{cursor:pointer;min-height:36px}.monitoring-tree-device:hover{background:var(--color-surface-accent)}.monitoring-tree-device.selected{background:var(--color-accent-soft)}.monitoring-tree-device-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:var(--font-size-xs);flex:1;overflow:hidden}.monitoring-tree-device .device-status{flex:none}.map-ui-source-picker{display:inline-flex;position:relative}.map-ui-source-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent);min-height:34px;box-shadow:var(--shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-text);cursor:pointer;white-space:nowrap;padding:0 10px;font-size:10px;font-weight:700}.map-ui-source-button:hover{background:var(--color-surface-accent)}.map-ui-source-menu{z-index:1000;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);min-width:190px;box-shadow:var(--shadow-md);padding:4px;position:absolute;bottom:calc(100% + 6px);right:0}.map-ui-source-menu button{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:8px 10px;font-size:11px}.map-ui-source-menu button:hover,.map-ui-source-menu button.active{background:var(--color-accent-soft);color:var(--color-accent-dark)}.settings-map-source-selector{grid-column:1/-1;gap:8px;display:grid}.settings-map-source-list-heading{gap:3px;margin-bottom:2px;display:grid}.settings-map-source-list-heading strong{font-size:var(--font-size-sm);color:var(--color-text)}.settings-map-source-list-heading small{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.settings-map-source-picker{position:relative}.settings-map-source-picker-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:40px;color:var(--color-text);font:inherit;font-size:var(--font-size-sm);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:12px;padding:0 12px;font-weight:600;display:flex}.settings-map-source-picker-button:hover{background:var(--color-surface-muted);border-color:var(--color-border-strong)}.settings-map-source-picker-menu{z-index:20;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);max-height:300px;box-shadow:var(--shadow-md);gap:2px;padding:5px;display:grid;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto}.settings-map-source-option{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:9px 10px;display:flex}.settings-map-source-option:hover{background:var(--color-surface-muted)}.settings-map-source-option.disabled{opacity:.55;cursor:not-allowed}.settings-map-source-option input{flex:none;width:16px;height:16px;margin:0}.settings-map-source-option span{gap:2px;min-width:0;display:grid}.settings-map-source-option strong{color:var(--color-text);font-size:12px}.settings-map-source-option small{color:var(--color-text-subtle);font-size:10px}.settings-map-source-selected{flex-wrap:wrap;gap:5px;min-height:20px;display:flex}.settings-map-source-selected span{background:var(--color-accent-soft);color:var(--color-text);border-radius:999px;padding:3px 7px;font-size:10px;font-weight:600}.monitoring-transport-actions{align-items:center;gap:4px;margin-left:auto;display:flex;position:relative}.monitoring-visibility-button,.monitoring-device-visibility{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:30px;min-width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);place-items:center;font-size:16px;line-height:1;display:grid}.monitoring-visibility-button:hover,.monitoring-device-visibility:hover{border-color:var(--color-border-focus);background:var(--color-accent-soft);color:var(--color-text)}.monitoring-device-visibility{align-self:stretch;height:auto}.monitoring-device-visibility.is-hidden{opacity:.42}.monitoring-eye{filter:grayscale(.15);line-height:1;display:block}.monitoring-visibility-button .monitoring-eye.is-hidden{opacity:.42}.monitoring-tree-device-row{align-items:stretch;gap:4px;display:flex}.monitoring-tree-device-row .monitoring-tree-device{flex:auto;min-width:0}.monitoring-tree-action{flex:0 0 30px;width:30px;min-width:30px}.monitoring-device-item-row{margin-bottom:var(--space-1);align-items:stretch;gap:4px;display:flex}.monitoring-device-item-row .monitoring-device-item{flex:auto;min-width:0;margin-bottom:0}.monitoring-device-delete{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:30px;color:var(--color-text-muted);cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast);flex:0 0 30px;align-self:stretch;place-items:center;font-size:18px;line-height:1;display:grid}.monitoring-device-delete:hover{border-color:var(--color-danger);background:var(--color-danger-soft);color:var(--color-danger)}.monitoring-transport-picker{top:var(--control-height);z-index:var(--z-map-panel);border:1px solid var(--color-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-surface-raised);width:auto;max-height:min(620px,72vh);box-shadow:var(--shadow-lg);flex-direction:column;display:flex;position:absolute;left:0;right:0;overflow:hidden}.monitoring-transport-picker-search{align-items:center;gap:var(--space-2);margin:var(--space-2);padding:0 var(--space-2);min-height:var(--control-height);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);display:flex}.monitoring-transport-picker-search:focus-within{border-color:var(--color-border-focus);box-shadow:0 0 0 3px var(--color-accent-soft)}.monitoring-transport-picker-search input{min-width:0;min-height:calc(var(--control-height) - 2px);box-shadow:none;background:0 0;border:0;outline:0;flex:1;padding:0}.monitoring-transport-picker-header{min-height:52px;padding:0 var(--space-3);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.monitoring-transport-picker-header strong{font-size:var(--font-size-sm)}.monitoring-transport-picker-header button{width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;font-size:22px}.monitoring-transport-picker-list{min-height:0;padding:var(--space-2);overflow-y:auto}.monitoring-transport-picker-item{align-items:center;gap:var(--space-2);width:100%;min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text);text-align:left;cursor:pointer;margin-bottom:4px;display:flex}.monitoring-transport-picker-item:hover{border-color:var(--color-border-focus);background:var(--color-surface-accent)}.monitoring-transport-picker-item>span:nth-child(2){flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.monitoring-transport-picker-item small{color:var(--color-text-muted)}.monitoring-transport-picker-add{color:var(--color-success);font-size:22px;font-weight:700}.monitoring-parking-indicator{color:#fff;background:#2f80c9;border-radius:5px;flex:0 0 22px;place-items:center;width:22px;height:22px;font-family:Arial,sans-serif;font-size:13px;font-weight:800;line-height:1;display:grid;box-shadow:inset 0 0 0 1px #ffffff38}.monitoring-device-delete{color:var(--color-danger)}.monitoring-tree-device-state{flex:none;justify-content:flex-end;align-items:center;min-width:58px;margin-left:auto;display:flex}.monitoring-tree-device-state small{color:var(--color-success);font-size:var(--font-size-xs);white-space:nowrap;font-weight:700}.monitoring-tree-device-state .monitoring-parking-indicator{flex-basis:20px;width:20px;height:20px;font-size:12px}.monitoring-device-settings-button{border:1px solid var(--color-accent);border-radius:var(--radius-md);background:var(--color-accent);color:#fff;cursor:pointer;width:40px;height:40px;transition:transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast);flex:0 0 40px;place-items:center;font-size:21px;font-weight:700;line-height:1;display:grid;box-shadow:0 2px 6px #0000002e}.monitoring-device-settings-button:hover{background:var(--color-accent-strong);transform:translateY(-1px);box-shadow:0 3px 9px #00000038}.monitoring-map .leaflet-control-attribution img,.monitoring-map .leaflet-control-attribution svg{display:none!important}.tracks-page .track-master-panel{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;height:100%;box-shadow:var(--shadow-sm);position:relative;overflow:hidden}.tracks-page .track-master-body{min-height:0;padding:var(--space-3);background:var(--color-surface-raised);flex:auto;overflow-y:auto}.tracks-page .track-section{margin-bottom:var(--space-4)}.tracks-page .track-section:last-child{margin-bottom:0}.tracks-page .track-section-title{margin-bottom:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-xs);letter-spacing:.04em;text-transform:uppercase;font-weight:700}.tracks-page .track-select{width:100%}.tracks-page .track-periods{gap:var(--space-1);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.tracks-page .track-period{width:100%}.tracks-page .track-custom-period{gap:var(--space-3);margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.tracks-page .track-custom-period label,.tracks-page .track-option{align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-sm);display:flex}.tracks-page .track-option{min-height:var(--control-height-sm)}.tracks-page .track-main-button,.tracks-page .track-clear-button{width:100%;min-height:var(--control-height);margin-top:var(--space-2)}.tracks-page .monitoring-info-panel{width:280px}@media (width<=900px){.tracks-page .monitoring-info-panel{width:280px}}@media (width<=620px){.tracks-page .monitoring-info-panel{width:auto}}.tracks-page .track-master-header{min-height:var(--control-height);box-sizing:border-box}.tracks-page .track-section select,.tracks-page .track-section input[type=date],.tracks-page .track-section input[type=time]{box-sizing:border-box}.tracks-page .track-periods .button{min-height:var(--control-height-sm);height:var(--control-height-sm)}.tracks-page .track-section .track-option{min-height:32px}.tracks-page .track-periods .button{width:100%}.tracks-page .track-datetime{margin-top:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);gap:var(--space-2);flex-direction:column;display:flex}.tracks-page .track-datetime label{gap:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-direction:column;font-weight:700;display:flex}.tracks-page .track-datetime input[type=datetime-local]{box-sizing:border-box;width:100%;min-width:0}.tracks-page .track-diagnostics-panel{right:calc(280px + var(--space-3));width:280px;max-height:calc(100% - 2 * var(--space-3));z-index:30;flex-direction:column;display:flex}.tracks-page .track-diagnostics-panel .track-master-body{min-height:0;overflow-y:auto}@media (width<=1200px){.tracks-page .track-diagnostics-panel{right:calc(260px + var(--space-3));width:260px}}@media (width<=900px){.tracks-page .track-diagnostics-panel{right:calc(240px + var(--space-3));width:240px}}@media (width<=720px){.tracks-page .track-diagnostics-panel{right:var(--space-2);top:auto;bottom:var(--space-2);width:min(280px, calc(100% - 2 * var(--space-2)));max-height:45%}}.tracks-page .track-diagnostics-drag-handle{cursor:grab;touch-action:none;justify-content:space-between;align-items:center;gap:8px;display:flex}.tracks-page .track-diagnostics-drag-handle:active{cursor:grabbing}.tracks-page .track-diagnostics-drag-hint{color:var(--muted-foreground,#64748b);font-size:16px;line-height:1}.tracks-page .track-info-header{min-height:42px;padding:0 10px}.tracks-page .track-info-header .floating-panel-title{font-size:12px;line-height:1.25}.tracks-page .track-info-header .monitoring-device-settings-button{border:1px solid var(--color-border);background:var(--color-accent);color:#fff;border-color:var(--color-accent);border-radius:7px;flex:0 0 30px;width:30px;height:30px;font-size:17px;font-weight:500;box-shadow:0 2px 5px #00000024}.tracks-page .track-info-header .monitoring-device-settings-button:hover{background:var(--color-accent-strong);color:#fff;border-color:var(--color-accent-strong);transform:none;box-shadow:0 2px 6px #0000002e}.events-page{box-sizing:border-box;width:100%;height:100%;min-height:0;padding:var(--space-3);gap:var(--space-3);background:var(--color-bg);color:var(--color-text);grid-template-rows:minmax(0,1fr) 315px;grid-template-columns:230px minmax(0,1fr) 280px;align-items:stretch;display:grid}.events-page .events-sidebar,.events-page .events-details,.events-page .events-chart-section,.events-page .events-map-section,.events-page .events-raw-section{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm)}.events-page .events-sidebar{flex-direction:column;grid-area:1/1;height:100%;min-height:0;display:flex;overflow:hidden}.events-page .events-main{grid-area:1/2;gap:0;min-width:0;min-height:0;display:grid;overflow:hidden}.events-page .events-main-resizer{cursor:row-resize;background:var(--color-bg);z-index:5;height:8px;position:relative}.events-page .events-main-resizer:before{content:"";background:var(--color-border);height:2px;position:absolute;top:3px;left:0;right:0}.events-page .events-main-resizer:hover:before{background:var(--color-accent)}.events-page .events-map-section,.events-page .events-chart-section{min-height:0;overflow:hidden}.events-page .events-details{grid-area:1/3;min-height:0;overflow-y:auto}.events-page .events-raw-section{grid-area:2/1/auto/4;min-height:300px;overflow:hidden}.events-page .events-panel-header,.events-page .events-section-header{min-height:var(--control-height);box-sizing:border-box;padding:0 var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;display:flex}.events-page .events-panel-header h3,.events-page .events-section-header h3,.events-page .events-list-header h3{color:var(--color-text);font-size:var(--font-size-xs);letter-spacing:.04em;margin:0;font-weight:700}.events-page .events-section-header span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.events-page .events-filter-body{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border)}.events-page .events-filter-body label{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700;display:block}.events-page .events-filter-body select{box-sizing:border-box;width:100%}.events-page .events-list-header{min-height:var(--control-height);padding:0 var(--space-4);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex}.events-page .events-list-header span{color:var(--color-accent);font-size:var(--font-size-xs);font-weight:700}.events-page .events-sidebar .events-period-toolbar{gap:var(--space-3);padding:var(--space-3);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border);flex-direction:column;flex:none;display:flex}.events-page .events-sidebar .events-period-device{gap:var(--space-1);flex-direction:column;display:flex}.events-page .events-sidebar .events-period-device label{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:700}.events-page .events-sidebar .events-period-device select{box-sizing:border-box;width:100%;min-width:0}.events-page .events-sidebar .events-period-presets{gap:var(--space-1);grid-template-columns:1fr 1fr;display:grid}.events-page .events-sidebar .events-period-presets button{width:100%}.events-page .events-sidebar .events-period-dates{gap:var(--space-2);flex-direction:column;display:flex}.events-page .events-sidebar .events-period-dates label{gap:var(--space-1);font-size:var(--font-size-xs);color:var(--color-text-muted);flex-direction:column;font-weight:700;display:flex}.events-page .events-sidebar .events-period-dates input{box-sizing:border-box;width:100%;min-width:0}.events-page .events-sidebar .events-period-toolbar button{width:100%}.events-page .events-sidebar .events-period-toolbar button:disabled{opacity:.6;cursor:default}.events-page .events-sidebar .events-list-header{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none}.events-page .event-list-item:hover{background:var(--color-surface-accent);border-color:var(--color-border-strong)}.events-page .event-list-item.selected{background:var(--color-accent-soft);border-color:var(--color-border-strong);box-shadow:inset 0 0 0 1px var(--color-accent-soft)}.events-page .event-list-top{align-items:center;gap:var(--space-2);display:flex}.events-page .event-list-top b{color:var(--color-text);font-size:var(--font-size-xs);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.events-page .event-list-type{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs)}.events-page .event-list-item small{margin-top:var(--space-2);color:var(--color-accent);font-size:var(--font-size-xs);display:block}.events-page .event-severity{background:var(--color-text-subtle);border-radius:50%;flex:0 0 7px;width:7px;height:7px;display:inline-block}.events-page .event-severity.warning{background:var(--color-warning)}.events-page .event-severity.error,.events-page .event-severity.critical{background:var(--color-danger)}.events-page .event-severity.info{background:var(--color-accent)}.events-page .event-severity.low_battery,.events-page .event-severity.overspeed{background:var(--color-warning)}.events-page .events-chart-section,.events-page .events-map-section{flex-direction:column;min-height:0;display:flex;overflow:hidden}.events-page .events-chart-content,.events-page .events-map-content{flex:1;min-height:0;position:relative}.events-page .events-chart-content{padding:var(--space-2);box-sizing:border-box}.events-page .events-chart-content>*{width:100%;height:100%}.events-page .events-details-body{padding:var(--space-4)}.events-page .event-detail-block{margin-bottom:var(--space-4)}.events-page .event-detail-block>span{margin-bottom:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700;display:block}.events-page .event-detail-block strong{align-items:center;gap:var(--space-2);color:var(--color-text);font-size:var(--font-size-xs);display:flex}.events-page .event-params{margin-top:var(--space-5);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.events-page .event-params h4{margin:0 0 var(--space-3);color:var(--color-accent-dark);font-size:var(--font-size-xs)}.events-page .event-params>div{justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border);font-size:var(--font-size-xs);display:flex}.events-page .event-params span{color:var(--color-text-muted)}.events-page .event-params strong{color:var(--color-text);text-align:right}.events-page .events-detail-actions{gap:var(--space-2);margin-top:var(--space-5);display:grid}.events-page .events-placeholder,.events-page .events-empty{min-height:100px;color:var(--color-text-muted);font-size:var(--font-size-xs);justify-content:center;align-items:center;display:flex}.events-page .events-raw{background:var(--color-surface-muted);border-top:1px solid var(--color-border);min-height:280px}.events-page .events-raw-table tbody tr:nth-child(2n) td{background:var(--color-surface-muted)}.events-page .events-raw-table td:first-child{text-align:center;color:var(--color-text-muted)}.events-page .events-raw-empty{padding:var(--space-7);color:var(--color-text-muted);font-size:var(--font-size-sm);text-align:center}.events-page .events-raw-content{background:var(--color-surface-muted);flex:1;min-height:0;max-height:none;overflow:auto}.events-page .events-raw-table-wrapper{background:var(--color-surface-muted);width:100%;height:100%;max-height:none;overflow:auto}.events-page .events-raw-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:var(--font-size-xs);color:var(--color-text)}.events-page .events-raw-table th{z-index:2;padding:var(--space-2);text-align:left;white-space:nowrap;background:var(--color-surface-muted);color:var(--color-text-muted);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);font-size:var(--font-size-xs);text-transform:uppercase;border:1px solid var(--color-border);font-weight:700;position:sticky;top:0}.events-page .events-raw-table td{padding:var(--space-2);white-space:nowrap;border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);border:1px solid var(--color-border)}.events-page .events-raw-table tbody tr{cursor:pointer}.events-page .events-raw-table tbody tr:hover td{background:var(--color-surface-accent)}.events-page .events-raw-table tbody tr.selected td{background:var(--color-danger-soft);border-top-color:var(--color-danger);border-bottom-color:var(--color-danger)}.events-page .events-raw-section .events-section-header{justify-content:space-between;align-items:center;display:flex}.events-page .events-raw-actions{align-items:center;gap:var(--space-3);display:flex}.events-page .events-list-body .event-list-item{min-height:54px}.events-page .events-list-body .event-list-item:nth-child(n+7){display:block}.events-page .events-list-body{min-height:354px;padding:var(--space-2);box-sizing:border-box;flex:none;height:378px;max-height:354px;overflow:hidden auto}.events-page .event-list-item{margin-bottom:var(--space-1);padding:var(--space-2) var(--space-3);box-sizing:border-box;text-align:left;width:100%;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;font:inherit;height:56px;display:block;overflow:hidden}.events-page .event-list-item:last-child{margin-bottom:0}.events-page{color:var(--color-text)}.events-page .events-error{margin-bottom:var(--space-4)}.events-page .telemetry-chart-wrapper{flex-direction:column;width:100%;min-width:0;height:100%;min-height:0;display:flex;position:relative}.events-page .telemetry-chart{flex:auto;width:100%;height:auto;min-height:0}.events-page .telemetry-chart-legend{gap:var(--space-3);padding:var(--space-3) 0;color:var(--color-text-muted);font-size:var(--font-size-xs);flex-wrap:wrap;display:flex}.events-page .telemetry-chart-legend i{width:8px;height:8px;margin-right:var(--space-1);background:var(--color-text-subtle);border-radius:50%;display:inline-block}.events-page .telemetry-chart-legend .movement{background:var(--color-success)}.events-page .telemetry-chart-legend .parking{background:var(--color-warning)}.events-page .telemetry-chart-legend .stop{background:var(--color-text-subtle)}.events-page .telemetry-chart-legend .no-data{background:var(--color-danger)}.events-page{box-sizing:border-box;width:100%;height:auto;min-height:0;padding:var(--space-3);flex:1 1 0;grid-template-rows:minmax(0,1fr) 378px;overflow:hidden}.events-page .events-raw-section{flex-direction:column;height:auto;min-height:0;display:flex;overflow:hidden}.events-page .events-raw-section .events-raw-content{flex:auto;min-height:0;overflow:auto}.events-page .events-list-body{flex:auto;height:auto;min-height:0;max-height:none}.events-page .events-main{min-height:0}.devices-page{gap:var(--space-5);display:grid}.devices-page-header{align-items:center;gap:var(--space-5);grid-template-columns:minmax(280px,1fr) auto auto;display:grid}.devices-page-header-left{align-items:center;gap:var(--space-5);min-width:0;display:flex}.devices-page-title-block{min-width:0;padding-left:var(--space-4);align-self:center;position:relative}.devices-page-title-block:before{content:"";border-radius:var(--radius-pill);background:var(--color-accent);width:3px;position:absolute;top:2px;bottom:2px;left:0}.devices-page-title-block h1{color:var(--color-text);font-size:var(--font-size-2xl);letter-spacing:-.02em;margin:0;line-height:1.2}.devices-page-title-block .page-description{max-width:420px;margin-top:var(--space-2)}.devices-page .devices-header-divider{display:none}.devices-page .device-stat-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(128px,1fr));min-width:0;display:grid}.devices-page .device-stat-card{min-width:0;min-height:var(--control-height);height:var(--control-height);align-items:center;gap:var(--space-3);padding:0 var(--space-3);background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast);display:flex}.devices-page .device-stat-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-md);transform:translateY(-1px)}.devices-page .device-stat-card-active,.devices-page .device-stat-card-inactive{border-color:var(--color-border)}.devices-page .device-stat-card-found{border-color:color-mix(in srgb, var(--color-accent) 35%, var(--color-border))}.devices-page .device-stat-card-found .device-stat-value{color:var(--color-text);font-size:var(--font-size-md)}.devices-page .device-stat-label{color:var(--color-text-muted);font-size:var(--font-size-sm);white-space:nowrap;flex:none;font-weight:600;line-height:1}.devices-page .device-stat-value{color:var(--color-text);font-size:var(--font-size-md);white-space:nowrap;flex:none;font-weight:700;line-height:1}.devices-page .device-stat-card-active .device-stat-value{color:var(--color-success)}.devices-page .device-stat-card-inactive .device-stat-value{color:var(--color-text-muted)}.devices-page-header-actions{justify-content:flex-end;align-self:center;align-items:center;gap:var(--space-2);flex-wrap:wrap;max-width:none;display:flex}.devices-page .device-list-controls{align-items:center;gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:minmax(360px,2.4fr) minmax(145px,1fr) minmax(145px,1fr) minmax(120px,.75fr) auto;display:grid}.devices-page .device-list-search{min-width:0}.devices-page .device-list-search input{min-height:var(--control-height)}.devices-page .device-list-controls select{min-width:0}.devices-page .device-list-controls select:last-of-type{min-width:120px}.devices-page>.panel{overflow:hidden}.devices-page .device-table-wrapper{background:var(--color-surface-raised);width:100%;overflow:auto hidden}.devices-page .devices-table{table-layout:auto;border-collapse:separate;border-spacing:0;width:100%;min-width:1180px}.devices-page .devices-table th,.devices-page .devices-table td{padding:10px var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:middle;text-align:left}.devices-page .devices-table th{background:var(--color-surface-muted);height:40px;color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;letter-spacing:.02em;font-weight:700;line-height:1.25}.devices-page .devices-table td{min-height:48px;color:var(--color-text);font-size:var(--font-size-sm);white-space:nowrap;line-height:1.35}.devices-page .devices-table tbody tr:last-child td{border-bottom:0}.devices-page .devices-table tbody tr:hover td{background:var(--color-surface-accent)}.devices-page .devices-table th[data-column=name],.devices-page .devices-table td[data-column=name]{min-width:240px}.devices-page .devices-table th[data-column=registration_number],.devices-page .devices-table td[data-column=registration_number]{min-width:110px}.devices-page .devices-table th[data-column=groups],.devices-page .devices-table td[data-column=groups]{min-width:130px}.devices-page .devices-table th[data-column=status],.devices-page .devices-table td[data-column=status]{min-width:105px}.devices-page .devices-table th[data-column=first_connection],.devices-page .devices-table td[data-column=first_connection],.devices-page .devices-table th[data-column=last_connection],.devices-page .devices-table td[data-column=last_connection],.devices-page .devices-table th[data-column=last_point],.devices-page .devices-table td[data-column=last_point]{min-width:150px}.devices-page .devices-table th[data-column=protocol],.devices-page .devices-table td[data-column=protocol]{min-width:105px}.devices-page .devices-table th[data-column=phone_number],.devices-page .devices-table td[data-column=phone_number]{min-width:150px}.devices-page .devices-table th[data-column=identifier],.devices-page .devices-table td[data-column=identifier],.devices-page .devices-table th[data-column=public_id],.devices-page .devices-table td[data-column=public_id]{min-width:160px}.devices-page .devices-table th[data-column=brand],.devices-page .devices-table td[data-column=brand],.devices-page .devices-table th[data-column=model],.devices-page .devices-table td[data-column=model]{min-width:120px}.devices-page .devices-table th[data-column=actions],.devices-page .devices-table td[data-column=actions]{text-align:right;width:92px;min-width:92px}.devices-page .device-cell{align-items:center;gap:var(--space-3);min-width:0;display:flex}.devices-page .device-avatar{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);width:32px;height:32px;color:var(--color-accent-dark);font-size:var(--font-size-sm);flex:0 0 32px;place-items:center;display:grid}.devices-page .device-cell-content{gap:2px;min-width:0;display:grid}.devices-page .device-cell-content strong{color:var(--color-text);text-overflow:ellipsis;font-weight:700;overflow:hidden}.devices-page .device-cell-subtitle{color:var(--color-text-subtle);font-size:var(--font-size-xs);text-overflow:ellipsis;overflow:hidden}.devices-page .device-code{color:var(--color-text);font-family:var(--font-family-mono);font-size:var(--font-size-xs)}.devices-page .device-empty{color:var(--color-text-subtle)}.devices-page .device-date{color:var(--color-text-muted);font-variant-numeric:tabular-nums}.devices-page .device-protocol{max-width:100%;min-height:24px;padding:0 var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;align-items:center;font-weight:700;display:inline-flex}.devices-page .device-status{align-items:center;gap:var(--space-2);color:inherit;cursor:pointer;background:0 0;border:0;padding:0;display:inline-flex}.devices-page .device-status-dot{border-radius:var(--radius-pill);background:var(--color-text-subtle);flex:0 0 7px;width:7px;height:7px}.devices-page .device-status-active .device-status-dot{background:var(--color-success)}.devices-page .device-custom-fields-cell{flex-wrap:wrap;gap:4px;display:flex}.devices-page .device-custom-field-cell{align-items:center;max-width:320px;display:inline-flex;overflow:hidden}.devices-page .device-custom-field-name{color:var(--color-text-muted);font-weight:600}.devices-page .device-custom-field-separator{color:var(--color-text-subtle)}.devices-page .device-custom-field-value{color:var(--color-text);text-overflow:ellipsis;overflow:hidden}.devices-page .device-metric{font-variant-numeric:tabular-nums;align-items:baseline;gap:4px;display:inline-flex}.devices-page .device-metric small{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.devices-page .device-coordinate{font-variant-numeric:tabular-nums}.devices-page .device-actions{justify-content:flex-end;align-items:center;gap:4px;display:inline-flex}.devices-page .device-actions .button{width:34px;min-width:34px;min-height:34px;padding:0}.devices-page .device-grouped-list{gap:var(--space-4);display:grid}.devices-page .device-grouped-section{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);overflow:hidden}.devices-page .device-grouped-section-header{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);display:flex}.devices-page .device-grouped-section-header strong{color:var(--color-text);font-size:var(--font-size-sm)}.devices-page .device-grouped-section-header span{border-radius:var(--radius-pill);background:var(--color-surface-raised);min-width:28px;color:var(--color-text-muted);font-size:var(--font-size-xs);text-align:center;padding:2px 8px;font-weight:700}@media (width<=1180px){.devices-page-header{grid-template-columns:1fr}.devices-page-header-left{flex-wrap:wrap;width:100%}.devices-page .devices-header-divider{display:none}.devices-page .device-stat-grid{flex:100%;grid-template-columns:repeat(4,minmax(0,1fr))}.devices-page-header-actions{justify-content:flex-start;max-width:none}}@media (width<=900px){.devices-page .device-list-controls{grid-template-columns:minmax(0,1fr) repeat(2,minmax(145px,1fr)) minmax(120px,.75fr) auto}}@media (width<=680px){.devices-page-header-left{flex-direction:column;align-items:stretch}.devices-page .device-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));width:100%}.devices-page .device-list-controls{grid-template-columns:1fr}}@media (width<=760px){.devices-page .device-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.devices-page .device-column-settings{width:min(760px,100vw - 32px);max-width:760px}.devices-page .device-column-settings .modal-header{align-items:flex-start}.devices-page .device-column-settings .modal-header h2{color:var(--color-text);font-size:var(--font-size-xl);margin:0;line-height:1.2}.devices-page .device-column-settings .modal-header p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.4}.devices-page .device-column-list{gap:var(--space-2);padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.devices-page .device-column-option{align-items:center;gap:var(--space-2);min-width:0;min-height:32px;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-sm);cursor:pointer;border:1px solid #0000;line-height:1.25;display:flex}.devices-page .device-column-option:hover{background:var(--color-surface-accent);border-color:var(--color-border)}.devices-page .device-column-option input{flex:0 0 16px;width:16px;height:16px;margin:0}.devices-page .device-column-option span{text-overflow:ellipsis;min-width:0;overflow:hidden}.devices-page .device-column-settings .modal-actions{justify-content:flex-start}@media (width<=620px){.devices-page .device-column-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=420px){.devices-page .device-column-list{grid-template-columns:1fr}}.device-details-page{gap:var(--space-5);display:grid}.device-details-header{justify-content:space-between;align-items:flex-start;gap:var(--space-5);display:flex}.device-details-header h1{color:var(--color-text);font-size:var(--font-size-2xl);margin:0}.device-details-grid{gap:var(--space-5);grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);display:grid}.device-details-grid>div{min-width:0}.device-details-grid strong{color:var(--color-text)}.device-details-grid p{color:var(--color-text-muted);margin:0}.device-details-tabs{gap:var(--space-2);border-bottom:1px solid var(--color-border);display:flex}.device-info-list{display:grid}.device-info-list>div{gap:var(--space-4);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(130px,.6fr) minmax(0,1fr);align-items:center;min-height:42px;display:grid}.device-info-list>div:last-child{border-bottom:0}.device-info-list span{color:var(--color-text-muted);font-size:var(--font-size-sm)}.device-info-list strong,.device-info-list code{color:var(--color-text)}.device-statistic{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);display:grid}.device-statistic span{color:var(--color-text-muted);font-size:var(--font-size-xs)}.device-statistic strong{color:var(--color-text);font-size:var(--font-size-xl)}.device-details-section-actions{align-items:center;gap:var(--space-2);display:flex}@media (width<=900px){.device-details-grid{grid-template-columns:1fr}.device-statistics{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=560px){.device-statistics{grid-template-columns:1fr}}.device-sensor-name{min-width:0;color:var(--color-text);font-weight:600}.device-sensor-source{align-items:center;gap:var(--space-2);min-width:0;display:flex}.device-settings-modal .device-settings-field.readonly input{opacity:.75;cursor:default}.device-settings-modal .device-settings-subsection{margin-top:0}.device-settings-modal .device-settings-section hr{margin:14px 0}.device-settings-modal .device-settings-help{font-size:var(--font-size-sm);color:var(--color-text-muted);margin:0}.device-settings-modal .device-settings-custom-field-row input[type=text]{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-width:0;height:38px;color:var(--color-text);font-size:var(--font-size-md);padding:0 10px}.device-settings-modal .device-settings-checkbox input[type=checkbox]{width:16px;height:16px;margin:0}.device-settings-modal .device-settings-custom-field-row .device-settings-checkbox{margin:0}.device-settings-modal .device-settings-field select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;height:42px;color:var(--color-text);font-size:var(--font-size-md);box-sizing:border-box;padding:0 12px;line-height:42px}.device-settings-modal .device-settings-field select:focus{border-color:var(--color-border-focus);outline:none}.device-settings-modal .device-settings-field span{font-size:var(--font-size-sm);opacity:.7;margin-bottom:8px;display:block}.sensor-settings-content{grid-template-columns:300px minmax(0,1fr);min-height:520px;display:grid;overflow:hidden}.sensor-settings-subtitle{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.device-settings-modal .device-settings-tabs{border-bottom:1px solid var(--color-border);gap:4px;padding:0 20px;display:flex;overflow-x:auto}.device-settings-modal .device-settings-tab{color:var(--color-text-muted);cursor:pointer;font:inherit;white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;padding:12px 14px}.device-settings-modal .device-settings-tab:hover{color:var(--color-text)}.device-settings-modal .device-settings-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:600}.device-settings-modal .device-settings-placeholder{padding:24px 20px}.device-settings-modal .device-settings-placeholder h3{margin-top:0}.device-settings-modal .device-settings-placeholder p{max-width:640px;color:var(--color-text-muted);line-height:1.6}.device-settings-modal .device-settings-content>*{max-width:100%}.device-settings-modal .device-settings-field input{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;height:42px;padding:12px 14px;font-size:15px}.device-settings-modal .device-settings-section h3{margin-top:0;margin-bottom:20px}.device-settings-modal .device-settings-meta span{color:var(--color-text-muted)}.device-settings-modal .device-settings-meta span:nth-child(2){color:var(--color-success);font-weight:700}.device-settings-modal .device-settings-header button{flex-shrink:0}.device-settings-modal .device-settings-toolbar{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px;display:flex}.device-settings-modal .device-settings-toolbar h3{margin:0 0 6px}.device-settings-modal .device-settings-toolbar p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0}.expert-fuel-settings-modal-window .device-settings-header,.expert-fuel-settings-modal-window .device-settings-footer{flex-shrink:0}.device-settings-modal{flex-direction:column;width:min(1450px,96vw);max-width:980px;height:min(850px,92vh);max-height:92vh;display:flex;overflow:hidden}.device-settings-modal .device-settings-title h2{color:var(--color-text);margin:0 0 9px;font-size:26px;font-weight:700;line-height:1.2}.device-settings-modal .device-settings-meta{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:0;font-size:12px;display:flex}.device-settings-modal .device-settings-meta>span{align-items:center;display:inline-flex}.device-settings-modal .device-settings-meta>span+span:before{content:"•";color:var(--color-border-strong);margin:0 10px}.device-settings-modal .device-settings-status-online{color:var(--color-success);font-weight:600}.device-settings-modal .device-settings-status-offline{color:var(--color-danger);font-weight:600}.device-settings-modal .device-settings-header .modal-close{flex-shrink:0}.device-settings-modal .device-settings-nav{text-align:left;border-radius:var(--radius-md);cursor:pointer;width:100%;font-size:var(--font-size-sm);color:var(--color-text-muted);background:0 0;border:0;flex:none;padding:10px 13px;font-family:inherit;line-height:18px;transition:background .15s,color .15s}.device-settings-modal .device-settings-nav:hover{background:var(--color-surface);color:var(--color-text)}.device-settings-modal .device-settings-nav.active{color:var(--color-accent-dark);background:var(--color-accent-soft);font-weight:600}.device-settings-modal .device-settings-section{color:var(--color-text);padding:2px 0 4px}.device-settings-modal .device-settings-section>h3{color:var(--color-text);letter-spacing:-.2px;margin:0 0 10px;font-size:23px;font-weight:600;line-height:28px}.device-settings-modal .device-settings-subsection,.device-settings-modal .device-settings-card{box-sizing:border-box;border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface-raised);margin:0 0 12px;padding:14px}.device-settings-modal .device-settings-card-title{color:var(--color-text);margin:0 0 10px;font-size:15px;font-weight:600;line-height:18px}.device-settings-modal .device-settings-form-grid{row-gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;align-items:start;column-gap:36px;display:grid}.device-settings-modal .device-settings-subsection:last-child,.device-settings-modal .device-settings-card:last-child{margin-bottom:0}.device-settings-modal .device-settings-subsection>h4,.device-settings-modal .device-settings-section-header h4{color:var(--color-text);font-size:var(--font-size-md);margin:0 0 10px;font-weight:600;line-height:18px}.device-settings-modal .device-settings-section-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:10px;display:flex}.device-settings-modal .device-settings-section-header h4{margin:0}.device-settings-modal .device-settings-section-header p,.device-settings-modal .device-settings-help{color:var(--color-accent);margin:3px 0 0;font-size:12px;line-height:1.35}.device-settings-modal .device-settings-empty{color:var(--color-accent);border-top:1px solid var(--color-border,var(--color-accent-soft));border-bottom:1px solid var(--color-border,var(--color-accent-soft));border:1px solid var(--color-bg);border-radius:var(--radius-md);background:var(--color-surface-raised);padding:16px 12px;font-size:12px}.device-settings-modal .device-settings-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;align-items:start;gap:10px 36px;display:grid}.device-settings-modal .device-settings-field{width:100%;min-width:0;min-height:0;color:var(--color-text);flex-direction:column;justify-content:flex-start;gap:3px;margin:0;padding:0;display:flex;position:relative}.device-settings-modal .device-settings-field>span{min-width:0;color:var(--color-text-muted);margin:0 0 3px;font-size:12px;line-height:14px;display:block}.device-settings-modal .device-settings-field input,.device-settings-modal .device-settings-field select,.device-settings-modal .device-settings-field textarea{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:100%;min-width:0;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);box-shadow:none}.device-settings-modal .device-settings-field input,.device-settings-modal .device-settings-field select{width:100%;height:36px;min-height:36px;padding:0 11px}.device-settings-modal .device-settings-field textarea{resize:vertical;min-height:72px;padding:9px 11px}.device-settings-modal .device-settings-field input:hover,.device-settings-modal .device-settings-field select:hover,.device-settings-modal .device-settings-field textarea:hover{border-color:var(--color-border-strong)}.device-settings-modal .device-settings-field input:focus,.device-settings-modal .device-settings-field select:focus,.device-settings-modal .device-settings-field textarea:focus{border-color:var(--color-border-strong);outline:none;box-shadow:0 0 0 2px #417db91a}.device-settings-modal .device-settings-field input[readonly]{background:var(--color-surface);color:var(--color-text-muted)}.device-settings-modal .device-settings-field select:disabled,.device-settings-modal .device-settings-field input:disabled{opacity:.72;cursor:default}.device-settings-modal .device-settings-input-wrap{width:100%;position:relative}.device-settings-modal .device-settings-input-wrap input{padding-right:58px}.device-settings-modal .device-settings-input-wrap>small{box-sizing:border-box;border-left:1px solid var(--color-accent-soft);min-width:34px;color:var(--color-accent);background:var(--color-surface-raised);pointer-events:none;border-radius:0 5px 5px 0;justify-content:center;align-items:center;padding:0 6px;font-size:11px;line-height:1;display:flex;position:absolute;top:1px;bottom:1px;right:1px}.device-settings-modal .device-settings-checkbox{align-items:center;gap:var(--space-2);white-space:nowrap;font-size:var(--font-size-sm);cursor:pointer;min-height:36px;color:var(--color-accent-dark);display:flex}.device-settings-modal .device-settings-checkbox input{width:15px;height:15px;margin:0}.device-settings-modal .device-settings-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);margin-top:12px;display:flex}.device-settings-modal .device-settings-general{color:var(--color-text);flex-direction:column;gap:0;padding:2px 0 4px;display:flex}.device-settings-modal .device-settings-general-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:10px;display:flex}.device-settings-modal .device-settings-general-heading h3{color:var(--color-text);letter-spacing:-.2px;margin:0;font-size:23px;font-weight:600;line-height:28px}.device-settings-modal .device-settings-general-heading p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:5px 0 0;line-height:18px}.device-settings-modal .device-settings-general-card{box-sizing:border-box;border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface-raised);margin:0 0 12px;padding:14px}.device-settings-modal .device-settings-general-card-title{align-items:flex-start;gap:var(--space-2);min-height:35px;margin:0 0 10px;display:flex}.device-settings-modal .device-settings-general-card-title h4{color:var(--color-text);margin:0;font-size:15px;font-weight:600;line-height:18px}.device-settings-modal .device-settings-general-card-title p{color:var(--color-accent);margin:3px 0 0;font-size:12px;line-height:15px}.device-settings-modal .device-settings-general-card-icon{box-sizing:border-box;border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface);width:30px;height:30px;color:var(--color-accent-dark);font-size:var(--font-size-sm);flex:0 0 30px;justify-content:center;align-items:center;font-weight:600;display:flex}.device-settings-modal .device-settings-general-grid{row-gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));column-gap:36px;display:grid}.device-settings-modal .device-settings-general .device-settings-field{gap:3px}.device-settings-modal .device-settings-general .device-settings-field>span{height:13px;margin-bottom:3px;line-height:13px}.device-settings-modal .device-settings-general input,.device-settings-modal .device-settings-general select{height:36px}.device-settings-modal .device-settings-general input[readonly]{background:var(--color-surface)}.device-settings-modal .device-settings-general-input-with-copy{gap:7px;min-width:0;display:flex}.device-settings-modal .device-settings-general-input-with-copy input{flex:1;min-width:0}.device-settings-modal .device-settings-copy-button{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:40px;height:36px;color:var(--color-accent-dark);cursor:pointer;flex:0 0 40px}.device-settings-modal .device-settings-copy-button:hover{border-color:var(--color-border-strong);background:var(--color-surface)}.device-settings-modal .device-settings-copy-button.copied{border-color:var(--color-border-strong);background:var(--color-surface);color:var(--color-success)}.device-settings-modal .device-settings-general-two-columns{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:14px;margin:0 0 12px;display:grid}.device-settings-modal .device-settings-general-two-columns .device-settings-general-card{min-width:0;margin:0;padding:13px 14px}.device-settings-modal .device-settings-general-two-columns .device-settings-general-card-title{min-height:48px;margin-bottom:10px}.device-settings-modal .device-settings-general-two-columns .device-settings-field>span,.device-settings-modal .device-settings-general-group-selector>span{height:14px;margin-bottom:5px;line-height:14px}.device-settings-modal .device-settings-general-two-columns .device-settings-field select,.device-settings-modal .device-settings-general-group-trigger{height:38px;min-height:38px}.device-settings-modal .device-settings-general-vehicle{align-items:center;gap:var(--space-2);border:1px solid var(--color-bg);border-radius:var(--radius-md);background:var(--color-surface);margin-top:8px;padding:8px;display:flex}.device-settings-modal .device-settings-general-vehicle-icon{border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface-raised);width:40px;height:36px;color:var(--color-text-muted);flex:0 0 40px;justify-content:center;align-items:center;display:flex}.device-settings-modal .device-settings-general-vehicle-icon span{font-size:16px}.device-settings-modal .device-settings-general-vehicle strong{color:var(--color-text);font-size:var(--font-size-sm);margin-bottom:3px;font-weight:600;display:block}.device-settings-modal .device-settings-general-vehicle span{color:var(--color-accent);font-size:11px;display:block}.device-settings-modal .device-settings-general-error{color:var(--color-danger);margin-top:7px;font-size:11px;display:block}.device-settings-modal .device-settings-general-group-selector{width:100%}.device-settings-modal .device-settings-general-group-selector>span{color:var(--color-text-muted);font-size:12px;display:block}.device-settings-modal .device-settings-general-group-dropdown{width:100%;position:relative}.device-settings-modal .device-settings-general-group-trigger{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:100%;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;padding:0 11px;display:flex}.device-settings-modal .device-settings-general-group-trigger:hover{border-color:var(--color-border-strong)}.device-settings-modal .device-settings-general-group-trigger:focus,.device-settings-modal .device-settings-general-group-trigger[aria-expanded=true]{border-color:var(--color-border-strong);outline:none;box-shadow:0 0 0 2px #417db91a}.device-settings-modal .device-settings-general-group-trigger>span:first-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.device-settings-modal .device-settings-general-group-chevron{color:var(--color-text-muted);font-size:var(--font-size-sm);flex:none;margin-left:10px;line-height:1}.device-settings-modal .device-settings-general-group-menu{z-index:50;box-sizing:border-box;border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface-raised);max-height:190px;padding:5px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 22px #2332411f}.device-settings-modal .device-settings-general-group-option{box-sizing:border-box;border-radius:var(--radius-sm);width:100%;min-height:36px;color:var(--color-accent-dark);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;padding:7px 9px;font-family:inherit;font-size:12px;display:flex}.device-settings-modal .device-settings-general-group-option:hover{background:var(--color-surface)}.device-settings-modal .device-settings-general-group-option.selected{background:var(--color-surface);color:var(--color-accent-dark)}.device-settings-modal .device-settings-general-group-option-check{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);width:18px;height:18px;color:var(--color-accent-dark);flex:0 0 18px;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:flex}.device-settings-modal .device-settings-general-group-option.selected .device-settings-general-group-option-check{border-color:var(--color-border-strong);background:var(--color-surface-accent)}.device-settings-modal .device-settings-general-group-empty-option{color:var(--color-accent);padding:11px 10px;font-size:12px}.device-settings-modal .device-settings-general-selected-groups{display:none}.device-settings-modal .device-settings-general-technical-grid{gap:var(--space-2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.device-settings-modal .device-settings-general-technical-grid>div{border:1px solid var(--color-bg);border-radius:var(--radius-md);background:var(--color-surface-raised);min-width:0;padding:8px 10px}.device-settings-modal .device-settings-general-technical-grid span{color:var(--color-accent);margin-bottom:5px;font-size:11px;display:block}.device-settings-modal .device-settings-general-technical-grid strong{text-overflow:ellipsis;white-space:nowrap;color:var(--color-text);font-size:12px;font-weight:500;display:block;overflow:hidden}.device-settings-modal .device-settings-general-message{border:1px solid var(--color-bg);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-accent);text-align:center;padding:14px;font-size:12px}.device-settings-modal .device-settings-icon-selector{align-items:flex-end;gap:var(--space-2);display:flex;position:relative}.device-settings-modal .device-settings-icon-preview{box-sizing:border-box;border:1px solid var(--color-accent-soft);background:var(--color-surface-raised);width:54px;height:54px;color:var(--color-text);border-radius:10px;justify-content:center;align-items:center;display:flex}.device-settings-modal .device-settings-icon-picker{flex-direction:column;gap:4px;display:flex;position:relative}.device-settings-modal .device-settings-icon-label{color:var(--color-accent);font-size:11px;line-height:1}.device-settings-modal .device-settings-icon-trigger{align-items:center;gap:var(--space-2);box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:178px;height:36px;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;padding:0 9px;display:flex;position:relative}.device-settings-modal .device-settings-icon-trigger:hover{border-color:var(--color-border-strong);background:var(--color-surface-raised)}.device-settings-modal .device-settings-icon-trigger>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.device-settings-modal .device-settings-icon-chevron{color:var(--color-text-muted);font-size:var(--font-size-sm);flex:none;line-height:1}.device-settings-modal .device-settings-icon-menu{z-index:100;box-sizing:border-box;border:1px solid var(--color-accent-soft);border-radius:var(--radius-md);background:var(--color-surface-raised);width:250px;max-height:320px;padding:5px;position:absolute;top:calc(100% + 5px);right:0;overflow-y:auto;box-shadow:0 8px 24px #20304024}.device-settings-modal .device-settings-icon-option{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);width:100%;min-height:42px;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);text-align:left;cursor:pointer;background:0 0;border:0;padding:7px 9px;display:flex}.device-settings-modal .device-settings-icon-option:hover{background:var(--color-surface)}.device-settings-modal .device-settings-icon-option.active{background:var(--color-surface-accent);color:var(--color-accent-dark)}.device-settings-modal .device-settings-icon-option-image{width:28px;height:28px;color:var(--color-accent-dark);flex:0 0 28px;justify-content:center;align-items:center;display:flex}.device-settings-modal .device-settings-icon-option.active .device-settings-icon-option-image{color:var(--color-accent-dark)}.device-settings-modal .device-settings-icon-check{color:var(--color-accent-dark);margin-left:auto;font-weight:600}.device-settings-modal .device-settings-icon-overlay{z-index:-1;background:0 0;border:0;position:fixed;inset:0}.device-settings-modal .device-settings-custom-fields{gap:var(--space-2);flex-direction:column;display:flex}.device-settings-modal .device-settings-custom-field-row{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:minmax(150px,.8fr) minmax(180px,1fr) auto;padding:8px 10px;display:grid}.device-settings-modal .device-settings-custom-field-row input,.device-settings-modal .device-settings-custom-field-row select{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:100%;height:36px;min-height:36px;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);padding:0 11px}.device-settings-modal .device-settings-custom-field-row input:focus,.device-settings-modal .device-settings-custom-field-row select:focus{border-color:var(--color-border-strong);outline:none;box-shadow:0 0 0 2px #417db91a}.device-settings-modal .calibration-table input{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-raised);height:34px;color:var(--color-text);font-family:inherit;font-size:var(--font-size-sm);padding:0 8px}.device-settings-modal .calibration-table input:focus{border-color:var(--color-border-strong);outline:none;box-shadow:0 0 0 2px #417db91a}.device-settings-modal .device-sensor-editor .device-settings-subsection{margin-top:12px}.expert-fuel-settings-modal-window{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.device-settings-modal .device-settings-source-unit{color:var(--color-accent);margin-top:4px;font-size:11px;line-height:1.3;display:block}.device-settings-modal .calibration-table th{color:var(--color-text-muted);font-size:12px;font-weight:600}.device-settings-modal .calibration-table td{vertical-align:middle}.device-settings-modal .calibration-table td input{width:100%}.device-settings-modal .device-settings-layout{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-md);grid-template-columns:220px minmax(0,1fr);display:grid;overflow:hidden}.device-settings-modal .device-settings-sidebar{padding:var(--space-3);background:var(--color-surface-muted);border-right:1px solid var(--color-border)}.device-settings-modal .device-settings-content{min-width:0;padding:var(--space-5)}.device-settings-modal .device-settings-header{justify-content:space-between;align-items:center;gap:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border);display:flex}.device-settings-modal .device-settings-footer{justify-content:flex-end;gap:var(--space-3);margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:flex}.sensor-list-panel,.sensor-form-panel{min-width:0;padding:var(--space-4)}.sensor-list-panel{border-right:1px solid var(--color-border);background:var(--color-surface);overflow:auto}.device-settings-modal .sensor-list-header{margin-bottom:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:700}.sensor-checkbox{align-items:flex-start;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;display:flex}.sensor-checkbox:hover{background:var(--color-surface-accent)}.sensor-form-panel{overflow:auto}.sensor-form-actions{justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-4);display:flex}.device-sensors-header,.device-sensors-toolbar{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-4);display:flex}.device-sensors-toolbar h3,.device-sensors-toolbar p{margin:0}.device-sensors-toolbar h3{color:var(--color-text);font-size:var(--font-size-lg)}.device-sensors-toolbar p{margin-top:var(--space-1);max-width:520px;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.45}.device-sensors-settings-button{color:var(--color-accent-dark);font:inherit;font-size:var(--font-size-sm);cursor:pointer;background:0 0;border:0}.device-sensors-settings-button:hover{text-decoration:underline}.device-sensors-list{gap:var(--space-3);display:grid}.device-sensor-row{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:flex}.device-sensor-info{align-items:center;gap:var(--space-2);flex-wrap:wrap;min-width:0;display:flex}.device-sensor-info strong{color:var(--color-text);font-size:var(--font-size-md)}.device-sensor-info span,.device-sensor-muted,.device-sensor-unit{color:var(--color-text-muted);font-size:var(--font-size-xs)}.device-sensor-info code,.device-sensors-table-row code{border-radius:var(--radius-sm);background:var(--color-surface-muted);color:var(--color-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:var(--font-size-xs);padding:3px 6px}.device-sensors-table{width:100%}.device-sensors-table-header,.device-sensors-table-row{align-items:center;column-gap:var(--space-4);grid-template-columns:minmax(0,1.5fr) minmax(110px,.9fr) minmax(110px,1fr) 140px 190px;display:grid}.device-sensors-table-header{min-height:36px;padding:0 var(--space-3);border-bottom:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--font-size-xs);font-weight:700}.device-sensors-table-row{min-height:56px;padding:0 var(--space-3);border-bottom:1px solid var(--color-border)}.device-sensors-table-row:hover{background:var(--color-surface-accent)}.device-sensor-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);white-space:nowrap;display:flex}.device-sensor-editor{gap:var(--space-4);margin-top:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.device-sensor-editor h3{margin:0}.device-sensor-editor-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.sensor-empty,.sensor-error,.device-sensors-empty,.device-sensor-error{padding:var(--space-5);text-align:center;color:var(--color-text-muted)}.sensor-error,.device-sensor-error{color:var(--color-danger)}@media (width<=760px){.device-sensors-table{overflow-x:auto}.device-sensors-table-header,.device-sensors-table-row{min-width:700px}}.device-settings-modal-window{min-width:0}.device-settings-close{flex:none}.device-settings-subtitle{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm)}.calibration-modal{min-width:0}.device-sensor-monitoring{justify-content:flex-start;align-items:center;display:flex}.device-sensor-monitoring .device-settings-checkbox{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;margin:0;display:inline-flex}.device-sensor-monitoring .device-settings-checkbox input,.device-settings-field input[type=checkbox]{width:16px;height:16px;accent-color:var(--color-accent);margin:0}.admin-architecture-page{gap:var(--space-5);min-width:0;display:grid}.admin-architecture-page .device-stat-grid{grid-template-columns:repeat(4,minmax(130px,170px));justify-content:start}.admin-architecture-page .devices-error{margin:0 0 var(--space-3)}.admin-architecture-page .devices-check-list{max-height:300px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);overflow:auto}.admin-architecture-page .devices-check-list label{padding:var(--space-2);border-bottom:1px solid var(--color-surface-muted);color:var(--color-text);font-size:var(--font-size-md);display:block}.admin-architecture-page .devices-check-list label:last-child{border-bottom:0}.admin-architecture-page .devices-check-list label:hover{background:var(--color-surface)}.admin-architecture-page .devices-scope-grid{gap:var(--space-4);grid-template-columns:1fr 1fr;display:grid}.admin-architecture-page .devices-scope-grid>div{border:1px solid var(--color-border);border-radius:var(--radius-md);min-width:0;overflow:hidden}.admin-architecture-page .devices-field-error{min-height:16px;margin-top:var(--space-1);font-size:var(--font-size-sm);color:var(--color-danger);line-height:16px}.admin-architecture-page .devices-search-input,.admin-architecture-page .devices-filter-select{min-height:var(--control-height);box-sizing:border-box}.admin-architecture-page .devices-table-card{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm);overflow:hidden}.admin-architecture-page .devices-table-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);display:flex}.admin-architecture-page .devices-table-card-header h2{color:var(--color-text);font-size:var(--font-size-lg);margin:0;line-height:1.25}.admin-architecture-page .devices-table-card-header p{max-width:900px;margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.45}.admin-architecture-page .devices-table-wrap{width:100%;overflow-x:auto}.admin-architecture-page .devices-table{border-collapse:separate;border-spacing:0;width:100%;min-width:760px}.admin-architecture-page .devices-table th,.admin-architecture-page .devices-table td{padding:11px var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:middle;text-align:left}.admin-architecture-page .devices-table th{background:var(--color-surface-muted);height:40px;color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;text-transform:uppercase;letter-spacing:.03em;font-weight:700;line-height:1.25}.admin-architecture-page .devices-table td{color:var(--color-text);font-size:var(--font-size-sm);line-height:1.35}.admin-architecture-page .devices-table tbody tr:hover td{background:var(--color-surface-accent)}.admin-architecture-page .devices-table tbody tr:last-child td{border-bottom:0}.admin-architecture-page .devices-table-actions{white-space:nowrap;text-align:right;width:1%}.admin-architecture-page .devices-table-actions .button{margin-left:var(--space-1)}.admin-architecture-page .devices-table-subtext{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin-top:2px}.admin-architecture-page .devices-form-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-architecture-page .devices-form-field{gap:var(--space-2);display:grid}.admin-architecture-page .devices-form-field>span,.admin-architecture-page .devices-form-section-title{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.admin-architecture-page .devices-form-section-title{margin:var(--space-4) 0 var(--space-3);color:var(--color-text);font-size:var(--font-size-md)}.admin-architecture-page .devices-form-input{width:100%;min-height:var(--control-height);box-sizing:border-box}.admin-architecture-page .devices-form-textarea{min-height:96px;padding-block:var(--space-3)}.admin-architecture-page .devices-form-check{align-items:center;gap:var(--space-2);min-height:var(--control-height);color:var(--color-text);font-size:var(--font-size-sm);display:inline-flex}.admin-architecture-page .devices-form-check input{width:16px;height:16px}.admin-architecture-page .devices-form-note{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);color:var(--color-text-muted);font-size:var(--font-size-sm);grid-column:1/-1;margin:0;line-height:1.45}.admin-architecture-page .devices-form-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--color-border);grid-column:1/-1;display:flex}.admin-architecture-page .devices-dual-list{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-architecture-page .devices-dual-list h3,.admin-architecture-page .devices-scope-grid h3{margin:0 0 var(--space-2);color:var(--color-text);font-size:var(--font-size-md)}@media (width<=620px){.admin-architecture-page .devices-dual-list,.admin-architecture-page .devices-scope-grid,.admin-architecture-page .devices-form-grid,.admin-architecture-page .devices-toolbar-right{grid-template-columns:1fr}.admin-architecture-page .devices-toolbar-right .devices-filter-select,.admin-architecture-page .devices-toolbar-right .devices-search-input,.admin-architecture-page .devices-toolbar-right .button{width:100%}}.admin-architecture-page .devices-toolbar{align-items:center;gap:var(--space-3);grid-template-columns:max-content minmax(0,1fr);display:grid}.admin-architecture-page .devices-toolbar-left{align-items:center;gap:var(--space-2);flex-wrap:nowrap;min-width:0;display:flex}.admin-architecture-page .devices-toolbar-right{align-items:center;gap:var(--space-2);grid-template-columns:max-content minmax(0,1fr) max-content;min-width:0;display:grid}.admin-architecture-page .devices-toolbar-right .devices-filter-select{order:1;width:max-content;min-width:max-content}.admin-architecture-page .devices-toolbar-right .devices-search-input{order:2;width:100%;min-width:0}.admin-architecture-page .devices-toolbar-right>.button{order:3;justify-self:end;width:max-content}.admin-architecture-page .devices-toolbar-right:not(:has(.devices-filter-select)){grid-template-columns:minmax(0,1fr) max-content}.admin-architecture-page .devices-toolbar-right:not(:has(.devices-filter-select)) .devices-search-input{grid-column:1}.admin-architecture-page .devices-toolbar-right:not(:has(.devices-filter-select))>.button{grid-column:2}@media (width<=1180px){.admin-architecture-page .devices-toolbar{grid-template-columns:1fr}.admin-architecture-page .devices-toolbar-left{width:100%;overflow-x:auto}.admin-architecture-page .devices-toolbar-right{width:100%}}@media (width<=620px){.admin-architecture-page .devices-toolbar-right{grid-template-columns:1fr}.admin-architecture-page .devices-toolbar-right .devices-filter-select,.admin-architecture-page .devices-toolbar-right .devices-search-input,.admin-architecture-page .devices-toolbar-right>.button{justify-self:stretch;width:100%}.admin-architecture-page .devices-dual-list,.admin-architecture-page .devices-scope-grid,.admin-architecture-page .devices-form-grid{grid-template-columns:1fr}}.admin-architecture-page .resource-access-intro{justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);display:flex}.admin-architecture-page .resource-access-intro strong{color:var(--color-text)}.admin-architecture-page .resource-access-intro p{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.45}.admin-architecture-page .resource-access-legend{align-items:center;gap:var(--space-3);color:var(--color-text-muted);font-size:var(--font-size-xs);white-space:nowrap;flex:none;display:flex}.admin-architecture-page .legend-dot{background:var(--color-text-subtle);border-radius:50%;width:7px;height:7px;margin-right:5px;display:inline-block}.admin-architecture-page .legend-dot.inherited{background:var(--color-primary)}.admin-architecture-page .resource-access-tree{max-height:460px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);overflow:auto}.admin-architecture-page .resource-tree-district+.resource-tree-district{border-top:1px solid var(--color-border)}.admin-architecture-page .resource-tree-row{align-items:center;gap:var(--space-2);min-height:38px;display:flex}.admin-architecture-page .resource-tree-district-row{padding:4px var(--space-2)}.admin-architecture-page .resource-tree-group{padding:2px var(--space-2)}.admin-architecture-page .resource-tree-check{align-items:center;gap:var(--space-2);min-width:0;color:var(--color-text);font-size:var(--font-size-sm);display:inline-flex}.admin-architecture-page .resource-tree-check input{flex:none;width:16px;height:16px}.admin-architecture-page .resource-tree-chevron{width:18px;color:var(--color-text-subtle);text-align:center;flex:0 0 18px}.admin-architecture-page .resource-tree-badge{color:var(--color-text-subtle);background:var(--color-surface-muted);border-radius:999px;margin-left:auto;padding:3px 7px;font-size:11px}.admin-architecture-page .resource-tree-badge.inherited{color:var(--color-primary)}.admin-architecture-page .resource-tree-device{color:var(--color-text-muted);font-size:var(--font-size-sm)}.admin-architecture-page .resource-tree-device-dot{width:10px;color:var(--color-text-subtle);font-size:8px}.admin-architecture-page .resource-tree-subtle{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin-left:auto}.admin-architecture-page .resource-tree-empty{padding:var(--space-2) var(--space-4);color:var(--color-text-subtle);font-size:var(--font-size-sm)}.admin-architecture-page .resource-access-summary{gap:var(--space-5);padding:var(--space-3) 0;color:var(--color-text-muted);font-size:var(--font-size-sm);display:flex}.admin-architecture-page .resource-access-summary strong{color:var(--color-text)}@media (width<=620px){.admin-architecture-page .resource-access-intro{flex-direction:column}.admin-architecture-page .resource-access-legend{white-space:normal}}.admin-architecture-page .admin-tree-section-label-spaced{margin-top:var(--space-4)}.admin-architecture-page .admin-organization-device-tree{margin-top:var(--space-2);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised)}.admin-architecture-page .admin-device-picker-district+.admin-device-picker-district{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.admin-architecture-page .admin-tree-row-static{cursor:default;flex:1;align-items:center;display:flex}.admin-architecture-page .admin-tree-unassigned-section{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.admin-architecture-page .admin-organization-edit-tree{max-height:360px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);overflow:auto}.admin-architecture-page .admin-organization-edit-tree-district+.admin-organization-edit-tree-district{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--color-border)}.admin-architecture-page .admin-organization-tree-device{align-items:center;gap:var(--space-2);min-height:30px;font-size:13px;display:flex}.admin-architecture-page .admin-organization-tree-device small{color:var(--color-text-muted);margin-left:auto}.admin-architecture-page .admin-device-picker-tree{gap:2px;display:grid}.admin-architecture-page .admin-device-picker-branch{min-height:34px;color:var(--color-text);font-size:var(--font-size-sm);border-radius:var(--radius-md);align-items:center;padding:4px 8px;font-weight:600;display:flex}.admin-architecture-page .admin-device-picker-branch.district{border-bottom:1px solid var(--color-border);padding-left:8px}.admin-architecture-page .admin-device-picker-branch:hover{background:var(--color-surface-accent)}.admin-architecture-page .admin-district-devices-section{margin-bottom:var(--space-4)}.admin-architecture-page .admin-structure-layout{gap:var(--space-4);grid-template-columns:minmax(280px,330px) minmax(0,1fr);align-items:stretch;min-width:0;display:grid}.admin-architecture-page .admin-tree-panel,.admin-architecture-page .admin-detail-panel{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;box-shadow:var(--shadow-sm)}.admin-architecture-page .admin-tree-panel{min-height:620px;overflow:hidden}.admin-architecture-page .admin-tree-header{padding:var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted)}.admin-architecture-page .admin-tree-header strong{color:var(--color-text);font-size:var(--font-size-md);display:block}.admin-architecture-page .admin-tree-header span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:4px;display:block}.admin-architecture-page .admin-tree{min-height:520px;max-height:calc(100vh - 330px);padding:var(--space-2);overflow:auto}.admin-architecture-page .admin-tree-item{align-items:center;min-width:0;display:flex}.admin-architecture-page .admin-tree-chevron{width:28px;min-width:28px;height:34px;color:var(--color-text-subtle);cursor:pointer;background:0 0;border:0}.admin-architecture-page .admin-tree-row{align-items:center;gap:var(--space-2);border-radius:var(--radius-md);min-width:0;min-height:34px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;flex:1;padding:5px 7px;display:flex}.admin-architecture-page .admin-tree-row:hover{background:var(--color-surface-accent)}.admin-architecture-page .admin-tree-row.selected{background:var(--color-surface-accent);border-color:var(--color-border)}.admin-architecture-page .admin-tree-icon{text-align:center;flex:0 0 20px;width:20px}.admin-architecture-page .admin-tree-label{min-width:0;font-size:var(--font-size-sm);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.admin-architecture-page .admin-tree-device .admin-tree-label{font-weight:500}.admin-architecture-page .admin-tree-meta{color:var(--color-text-subtle);font-size:var(--font-size-xs);white-space:nowrap;margin-left:auto}.admin-architecture-page .admin-empty-detail{text-align:center;min-height:580px;color:var(--color-text-muted);align-content:center;place-items:center;display:grid}.admin-architecture-page .admin-empty-detail h2{margin:var(--space-3) 0 var(--space-2);color:var(--color-text);font-size:var(--font-size-xl)}.admin-architecture-page .admin-empty-detail p{max-width:500px;margin:0;line-height:1.5}.admin-architecture-page .admin-empty-icon{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-muted);width:48px;height:48px;color:var(--color-text-subtle);place-items:center;display:grid}.admin-architecture-page .admin-detail-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.admin-architecture-page .admin-breadcrumb{margin-bottom:var(--space-2);color:var(--color-text-subtle);font-size:var(--font-size-xs)}.admin-architecture-page .admin-detail-header h2{color:var(--color-text);font-size:var(--font-size-xl);margin:0}.admin-architecture-page .admin-detail-header p{max-width:720px;margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--font-size-sm);line-height:1.45}.admin-architecture-page .admin-detail-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.admin-architecture-page .admin-detail-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.admin-architecture-page .admin-list-row{align-items:center;gap:var(--space-2);width:100%;min-height:48px;padding:8px var(--space-4);border:0;border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:28px minmax(0,1fr) auto;display:grid}.admin-architecture-page .admin-list-row:last-child{border-bottom:0}.admin-architecture-page .admin-list-row:hover{background:var(--color-surface-accent)}.admin-architecture-page .admin-list-row span:last-child{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.admin-architecture-page .admin-device-facts{background:var(--color-border);grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;display:grid}.admin-architecture-page .admin-device-facts>div{padding:var(--space-4);background:var(--color-surface-raised);gap:5px;display:grid}.admin-architecture-page .admin-device-facts span{color:var(--color-text-subtle);font-size:var(--font-size-xs)}.admin-architecture-page .admin-device-facts strong{color:var(--color-text);font-size:var(--font-size-sm)}.admin-architecture-page .admin-user-modal{width:min(980px,100vw - 32px);max-width:980px}.admin-architecture-page .admin-user-section{gap:var(--space-2);grid-column:1/-1;display:grid}.admin-architecture-page .admin-user-section h3{color:var(--color-text);font-size:var(--font-size-md);margin:0}.admin-architecture-page .admin-user-help{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:0;line-height:1.45}.admin-architecture-page .admin-user-fields{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.admin-architecture-page .admin-access-tree,.admin-architecture-page .admin-resource-list{max-height:330px;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);overflow:auto}.admin-architecture-page .admin-access-branch+.admin-access-branch{border-top:1px solid var(--color-border);margin-top:4px;padding-top:4px}.admin-architecture-page .admin-access-row,.admin-architecture-page .admin-resource-row{align-items:center;gap:var(--space-2);min-height:34px;color:var(--color-text);font-size:var(--font-size-sm);border-radius:var(--radius-md);padding:4px 8px;display:flex}.admin-architecture-page .admin-access-row:hover,.admin-architecture-page .admin-resource-row:hover{background:var(--color-surface-accent)}.admin-architecture-page .admin-access-row input,.admin-architecture-page .admin-resource-row input{flex:0 0 16px;width:16px;height:16px}.admin-architecture-page .admin-access-row em,.admin-architecture-page .admin-access-row small{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin-left:auto;font-style:normal}@media (width<=1000px){.admin-architecture-page .admin-structure-layout{grid-template-columns:1fr}.admin-architecture-page .admin-tree-panel{min-height:0}.admin-architecture-page .admin-tree{min-height:260px;max-height:360px}}@media (width<=720px){.admin-architecture-page .admin-detail-grid,.admin-architecture-page .admin-user-fields,.admin-architecture-page .admin-device-facts{grid-template-columns:1fr}.admin-architecture-page .admin-detail-header{flex-direction:column}.admin-architecture-page .admin-detail-actions{justify-content:flex-start}}.admin-architecture-page .admin-compact-header{justify-content:space-between;align-items:center;gap:24px;padding:2px 0 14px;display:flex}.admin-architecture-page .admin-kicker{color:var(--color-text-subtle);font-size:var(--font-size-xs);letter-spacing:.02em;margin-bottom:3px;font-weight:600}.admin-architecture-page .admin-compact-header h1{color:var(--color-text);margin:0;font-size:25px;line-height:1.1}.admin-architecture-page .admin-compact-header p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:5px 0 0}.admin-architecture-page .admin-header-summary{align-items:center;gap:8px;display:flex}.admin-architecture-page .admin-header-summary span{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);color:var(--color-text-muted);font-size:var(--font-size-xs);padding:7px 11px}.admin-architecture-page .devices-toolbar{margin-top:0}.admin-architecture-page .devices-toolbar-right{flex-wrap:wrap}.admin-architecture-page .admin-structure-layout{grid-template-columns:minmax(320px,380px) minmax(0,1fr);min-height:calc(100vh - 285px)}.admin-architecture-page .admin-tree-panel{min-height:calc(100vh - 285px)}.admin-architecture-page .admin-tree{min-height:0;max-height:calc(100vh - 345px);padding:10px}.admin-architecture-page .admin-tree-root{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);align-items:center;gap:10px;min-height:48px;padding:8px 10px;display:flex}.admin-architecture-page .admin-tree-root-icon{background:var(--color-surface-raised);width:30px;height:30px;color:var(--color-text-subtle);border-radius:8px;place-items:center;font-size:14px;display:grid}.admin-architecture-page .admin-tree-root-copy{min-width:0}.admin-architecture-page .admin-tree-root-copy strong{color:var(--color-text);font-size:var(--font-size-sm);display:block}.admin-architecture-page .admin-tree-root-copy span{color:var(--color-text-muted);font-size:var(--font-size-xs);margin-top:2px;display:block}.admin-architecture-page .admin-tree-root-line{background:var(--color-border);width:1px;height:10px;margin-left:25px}.admin-architecture-page .admin-tree-section-label{color:var(--color-text-subtle);letter-spacing:.06em;text-transform:uppercase;margin:0 8px 4px;font-size:10px;font-weight:700}.admin-architecture-page .admin-tree-item{position:relative}.admin-architecture-page .admin-tree-item:before{content:"";background:var(--color-border);opacity:.55;width:1px;position:absolute;top:0;bottom:0;left:14px}.admin-architecture-page .admin-tree-chevron{z-index:1;position:relative}.admin-architecture-page .admin-tree-row{min-height:38px}.admin-architecture-page .admin-tree-label{font-size:13px}.admin-architecture-page .admin-tree-device .admin-tree-label{font-size:12.5px}.admin-architecture-page .admin-detail-panel{padding:24px}.admin-architecture-page .admin-detail-header{margin-bottom:18px}.admin-architecture-page .admin-detail-header h2{font-size:21px}.admin-architecture-page .admin-detail-actions .button{white-space:nowrap}.admin-architecture-page .admin-detail-grid{gap:14px}.admin-architecture-page .devices-table-card-header{padding:14px 16px}.admin-architecture-page .admin-empty-detail{min-height:520px}@media (width<=900px){.admin-architecture-page .admin-compact-header{flex-direction:column;align-items:flex-start}.admin-architecture-page .admin-structure-layout{grid-template-columns:1fr}.admin-architecture-page .admin-tree-panel{min-height:0}.admin-architecture-page .admin-tree{max-height:420px}}.admin-architecture-page .admin-main-toolbar{align-items:center;gap:10px;width:100%;display:flex}.admin-architecture-page .admin-main-toolbar-left{flex:none;align-items:center;gap:6px;display:flex}.admin-architecture-page .admin-main-toolbar-search{flex:auto;min-width:180px}.admin-architecture-page .admin-main-toolbar-search .devices-search-input{width:100%}.admin-architecture-page .admin-main-toolbar-actions{flex:none;align-items:center;gap:6px;display:flex}@media (width<=760px){.admin-architecture-page .admin-main-toolbar{flex-wrap:wrap}.admin-architecture-page .admin-main-toolbar-search{flex-basis:100%;order:3}}.admin-architecture-page .admin-compact-header{position:relative}.admin-architecture-page .admin-header-summary{white-space:nowrap;justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.admin-architecture-page .admin-header-summary span{justify-content:center;align-items:baseline;gap:5px;min-width:96px;display:inline-flex}.admin-architecture-page .admin-header-summary strong{color:var(--color-text);font-size:var(--font-size-sm)}@media (width<=1050px){.admin-architecture-page .admin-header-summary{flex-wrap:wrap;justify-content:flex-end;position:static;transform:none}}@media (width<=760px){.admin-architecture-page .admin-header-summary{justify-content:flex-start}}.admin-architecture-page .admin-devices-header{padding-top:0}.admin-architecture-page .admin-stat-grid .device-stat-card{min-width:108px}.admin-architecture-page .admin-stat-grid .device-stat-label{white-space:nowrap}@media (width<=1050px){.admin-architecture-page .admin-stat-grid{flex-wrap:wrap}}.admin-architecture-page .admin-resource-tree{border:1px solid var(--color-border);background:var(--color-surface);border-radius:8px;overflow:hidden}.admin-architecture-page .admin-resource-group+.admin-resource-group{border-top:1px solid var(--color-border)}.admin-architecture-page .admin-resource-group-row{min-height:42px;font-weight:600}.admin-architecture-page .admin-resource-chevron{width:14px;color:var(--color-muted);justify-content:center;display:inline-flex}.admin-architecture-page .admin-resource-group-name{flex:1}.admin-architecture-page .admin-resource-group-row small,.admin-architecture-page .admin-resource-ungrouped small{color:var(--color-muted);margin-left:auto}.admin-architecture-page .admin-resource-children{border-left:1px solid var(--color-border);margin-left:38px;padding:2px 0 6px 8px}.admin-architecture-page .admin-resource-children .admin-resource-row{min-height:34px}.admin-architecture-page .admin-resource-ungrouped{border-top:1px solid var(--color-border);min-height:40px}.admin-architecture-page .admin-resource-empty{color:var(--color-muted);padding:8px 12px 10px 28px;font-size:12px}.admin-architecture-page .admin-group-devices-picker{border:1px solid var(--color-border);border-radius:var(--radius-md);max-height:360px;overflow:hidden auto}.admin-architecture-page .admin-group-devices-picker .admin-resource-row{border-bottom:1px solid var(--color-border);min-height:40px;padding:7px 10px}.admin-architecture-page .admin-group-devices-picker .admin-resource-row:last-child{border-bottom:0}.admin-architecture-page .admin-group-devices-picker small{color:var(--color-text-subtle);margin-left:auto}.admin-architecture-page .admin-organization-bulk-toolbar{align-items:center;gap:var(--space-2);margin-bottom:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);padding:8px 10px;display:flex}.admin-architecture-page .admin-organization-bulk-toolbar>span{color:var(--color-text-muted);font-size:var(--font-size-sm);flex:none}.admin-architecture-page .admin-organization-bulk-toolbar select{flex:auto;min-width:260px}.admin-architecture-page .admin-organization-tree-select-row{align-items:center;gap:var(--space-2);cursor:pointer;flex:1;min-width:0;display:flex}.admin-architecture-page .admin-organization-tree-select-row input{flex:0 0 16px;width:16px;height:16px}.admin-architecture-page .admin-organization-tree-select-row small{color:var(--color-text-subtle);font-size:var(--font-size-xs);margin-left:auto}.admin-architecture-page .admin-organization-tree-district-header{align-items:center;gap:var(--space-2);display:flex}.admin-architecture-page .admin-organization-tree-district-header>.admin-organization-tree-select-row{min-width:0}@media (width<=760px){.admin-architecture-page .admin-organization-bulk-toolbar{flex-direction:column;align-items:stretch}.admin-architecture-page .admin-organization-bulk-toolbar select{min-width:0}}.admin-architecture-page .admin-organization-modal .modal-body{padding:16px}.admin-architecture-page .admin-organization-modal .devices-form-grid{gap:12px}.admin-architecture-page .admin-organization-modal .admin-user-section{gap:6px}.admin-architecture-page .admin-organization-modal .admin-user-section h3{font-size:14px}.admin-architecture-page .admin-organization-modal .admin-user-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px 10px}.admin-architecture-page .admin-organization-modal .devices-form-field{gap:5px}.admin-architecture-page .admin-organization-modal .devices-form-field>span{font-size:12px}.admin-architecture-page .admin-organization-modal .devices-form-input{min-height:36px;padding-block:0}.admin-architecture-page .admin-organization-modal .devices-form-textarea{resize:none;height:36px;min-height:36px;padding-block:8px}.admin-architecture-page .admin-organization-modal .admin-user-help{font-size:12px;line-height:1.35}.admin-architecture-page .admin-organization-modal .admin-organization-edit-tree{max-height:460px}.admin-architecture-page .admin-organization-modal .devices-form-actions{margin-top:0;padding-top:10px}@media (width<=720px){.admin-architecture-page .admin-organization-modal .admin-user-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=480px){.admin-architecture-page .admin-organization-modal .admin-user-fields{grid-template-columns:1fr}}.admin-architecture-page .admin-organization-modal .devices-form-actions{z-index:5;justify-content:flex-end;gap:var(--space-2);background:var(--color-surface-raised);border-top:1px solid var(--color-border);margin:12px -16px -16px;padding:10px 16px;display:flex;position:sticky;bottom:0;box-shadow:0 -4px 12px #232a2f14}.admin-user-actions{flex-wrap:wrap;gap:6px;display:flex}.impersonation-banner{border-bottom:1px solid var(--border-color);background:var(--surface-muted);min-height:38px;color:var(--text-secondary);justify-content:center;align-items:center;gap:14px;padding:6px 16px;font-size:13px;display:flex}.impersonation-banner button{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;font-weight:600}.settings-page{gap:var(--space-4);display:grid}.settings-toolbar{align-items:center}.settings-layout{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.settings-primary-column{gap:var(--space-4);min-width:0;display:grid}.settings-secondary-column{min-width:0}.settings-card{overflow:hidden}.settings-card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5);background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex}.settings-card-header>div:first-child{align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.settings-card-header h2{color:var(--color-text);font-size:var(--font-size-lg);margin:0}.settings-card-header p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:4px 0 0;line-height:1.45}.settings-card-icon{border-radius:var(--radius-md);background:var(--color-accent-soft);width:34px;height:34px;color:var(--color-accent-dark);flex:0 0 34px;place-items:center;font-size:16px;font-weight:700;display:grid}.settings-switch{min-height:30px;color:var(--color-text-muted);font-size:var(--font-size-sm);cursor:pointer;flex:none;align-items:center;gap:7px;font-weight:600;display:inline-flex}.settings-switch input{width:16px;height:16px;margin:0}.settings-form{gap:var(--space-4);padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-form-single{grid-template-columns:1fr}.settings-field{gap:var(--space-2);min-width:0;display:grid}.settings-field-wide{grid-column:1/-1}.settings-field>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.settings-field small{color:var(--color-text-subtle);font-size:var(--font-size-xs);line-height:1.4}.settings-recipient-note{margin:0 var(--space-5) var(--space-5);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);gap:4px;display:grid}.settings-recipient-note strong{color:var(--color-text);font-size:var(--font-size-sm)}.settings-recipient-note span{color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:1.45}.settings-status{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-success-soft);color:var(--color-success);font-size:var(--font-size-sm);justify-self:end;padding:8px 12px;font-weight:600}.settings-loading{min-height:180px;color:var(--color-text-muted);place-items:center;display:grid}@media (width<=1000px){.settings-layout{grid-template-columns:1fr}}@media (width<=640px){.settings-form{grid-template-columns:1fr}.settings-field-wide{grid-column:auto}.settings-card-header{flex-direction:column}}.settings-future{align-items:flex-start;gap:var(--space-3);min-height:180px;padding:var(--space-5);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface);color:var(--color-text-muted);display:flex}.settings-future-icon{border-radius:var(--radius-md);background:var(--color-surface-muted);width:34px;height:34px;color:var(--color-text-muted);flex:0 0 34px;place-items:center;display:grid}.settings-future h2{color:var(--color-text);font-size:var(--font-size-md);margin:0}.settings-future p{font-size:var(--font-size-sm);margin:5px 0 0;line-height:1.45}@media (width<=1000px){.settings-layout{grid-template-columns:1fr}}.settings-breadcrumb{color:var(--color-text-subtle);font-size:var(--font-size-xs);letter-spacing:.02em;margin-bottom:5px;font-weight:600}.settings-shell{gap:var(--space-3);grid-template-columns:300px minmax(0,1fr);align-items:stretch;min-height:0;display:grid}.settings-nav{min-width:0;min-height:0;padding:8px;position:sticky;top:16px}.settings-nav-heading{color:var(--color-text-subtle);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.06em;padding:9px 10px 8px;font-weight:700}.settings-nav-item{border-radius:var(--radius-md);width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:30px minmax(0,1fr) 14px;align-items:center;gap:9px;padding:10px 9px;display:grid}.settings-nav-item:hover{background:var(--color-surface-muted)}.settings-nav-item.active{border-color:var(--color-border);background:var(--color-accent-soft)}.settings-nav-icon{background:var(--color-surface-muted);width:28px;height:28px;color:var(--color-text-muted);border-radius:8px;place-items:center;font-size:14px;font-weight:700;display:grid}.settings-nav-item.active .settings-nav-icon{background:var(--color-surface);color:var(--color-accent-dark)}.settings-nav-item strong{font-size:var(--font-size-sm);line-height:1.2;display:block}.settings-nav-item small{color:var(--color-text-subtle);margin-top:3px;font-size:10px;line-height:1.3;display:block}.settings-nav-item b{color:var(--color-text-subtle);font-size:17px;font-weight:400}.settings-content{min-width:0}.settings-section{overflow:hidden}.settings-section-intro{justify-content:space-between;gap:var(--space-4);padding:var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface);align-items:flex-start;display:flex}.settings-section-intro h2{color:var(--color-text);margin:0;font-size:20px}.settings-section-intro p{color:var(--color-text-muted);font-size:var(--font-size-sm);margin:5px 0 0}.settings-state{border:1px solid var(--color-border);color:var(--color-text-subtle);font-size:var(--font-size-xs);border-radius:999px;flex:none;align-items:center;gap:7px;padding:6px 9px;font-weight:600;display:inline-flex}.settings-state i{background:var(--color-text-subtle);border-radius:50%;width:6px;height:6px}.settings-state-connected{color:var(--color-success)}.settings-state-connected i{background:var(--color-success)}.settings-grid{gap:var(--space-4);padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-info{margin:0 var(--space-5) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);gap:4px;padding:12px 14px;display:grid}.settings-info strong{color:var(--color-text);font-size:var(--font-size-sm)}.settings-info span{color:var(--color-text-muted);font-size:var(--font-size-xs);line-height:1.45}.settings-card-grid{gap:var(--space-3);padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-module-card{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:34px minmax(0,1fr) 18px;align-items:start;gap:12px;min-height:112px;padding:15px;display:grid}.settings-module-icon{background:var(--color-accent-soft);width:32px;height:32px;color:var(--color-accent-dark);border-radius:8px;place-items:center;font-weight:700;display:grid}.settings-module-card h3{font-size:var(--font-size-sm);margin:1px 0 5px}.settings-module-card p{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:0;line-height:1.45}.settings-module-arrow{color:var(--color-text-subtle);font-size:20px}.settings-notification-stack{gap:var(--space-4);padding:var(--space-5);display:grid}.settings-card-inner{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow:hidden}.settings-card-inner .settings-card-header,.settings-card-inner .settings-form{padding:var(--space-4)}.settings-card-inner .settings-recipient-note{margin:0 var(--space-4) var(--space-4)}.settings-server-actions{gap:var(--space-3);padding:var(--space-5);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.settings-server-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);text-align:left;cursor:pointer;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:3px 11px;padding:14px;display:grid}.settings-server-button:hover{background:var(--color-surface-muted)}.settings-server-button span{background:var(--color-accent-soft);width:32px;height:32px;color:var(--color-accent-dark);border-radius:8px;grid-row:1/3;place-items:center;display:grid}.settings-server-button strong{font-size:var(--font-size-sm)}.settings-server-button small{color:var(--color-text-muted);font-size:var(--font-size-xs)}@media (width<=900px){.settings-shell{grid-template-columns:1fr}.settings-nav{position:static}.settings-nav-item{grid-template-columns:30px minmax(0,1fr) 14px}}@media (width<=640px){.settings-grid,.settings-card-grid,.settings-server-actions{grid-template-columns:1fr}.settings-section-intro{flex-direction:column}.settings-quick-title{display:none}}.settings-page{box-sizing:border-box;width:100%;height:calc(100vh - 96px);min-height:0;overflow:hidden}.settings-shell{align-items:stretch;width:100%;height:100%;min-height:0}.settings-nav{box-sizing:border-box;height:100%;overflow:auto}.settings-content{height:100%;min-height:0}.settings-section{box-sizing:border-box;flex-direction:column;height:100%;display:flex}.settings-section>.settings-section-intro,.settings-section>.settings-grid,.settings-section>.settings-card-grid,.settings-section>.settings-notification-stack,.settings-section>.settings-server-actions,.settings-section>.settings-info{flex:none}.settings-page{grid-template-rows:auto minmax(0,1fr);align-content:stretch;height:calc(100vh - 96px);min-height:0}.settings-nav-item strong{font-size:12px}.settings-nav-icon{width:28px;height:28px}.settings-nav-item{padding:10px}.settings-nav-item strong{font-size:13px;line-height:1.25}.settings-nav-item small{font-size:11px;line-height:1.35}.settings-nav-heading{font-size:11px}.settings-nav-icon{width:30px;height:30px;font-size:15px}.telemetry-workspace{flex-direction:column;flex:auto;min-height:0;display:flex;overflow:hidden}.telemetry-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;display:flex}.telemetry-tabs{scrollbar-width:thin;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.telemetry-tab{color:var(--color-text-muted);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:7px;flex:none;padding:7px 11px;font-size:12px;font-weight:600}.telemetry-tab:hover{background:var(--color-surface-muted);color:var(--color-text)}.telemetry-tab.active{border-color:var(--color-border);background:var(--color-accent-soft);color:var(--color-accent-dark)}.telemetry-view{flex:auto;min-height:0;padding:14px 16px 24px;overflow:auto}.telemetry-view-section{gap:12px;min-width:0;display:grid}.telemetry-view-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.telemetry-view-heading h3{color:var(--color-text);margin:0;font-size:15px}.telemetry-view-heading p{color:var(--color-text-muted);margin:3px 0 0;font-size:12px;line-height:1.4}.telemetry-view-section>.settings-card-inner{border-radius:var(--radius-md)}.telemetry-view-section>.settings-card-inner .settings-card-header{padding:12px 14px}.telemetry-view-section>.settings-card-inner .settings-card-header p{font-size:12px}.telemetry-view-section>.settings-card-inner .settings-info{margin:0 14px 14px}.telemetry-table-wrap{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;overflow:auto}.telemetry-table-wrap table{border-collapse:collapse;width:100%;min-width:680px}.telemetry-table-wrap th,.telemetry-table-wrap td{border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:9px 11px;font-size:12px}.telemetry-table-wrap th{background:var(--color-surface-muted);color:var(--color-text-muted);font-weight:700}.telemetry-table-wrap td{color:var(--color-text)}.telemetry-table-wrap tr:last-child td{border-bottom:0}.telemetry-empty{border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-muted);gap:5px;padding:24px;display:grid}.telemetry-empty strong{color:var(--color-text);font-size:13px}.telemetry-empty span{color:var(--color-text-muted);font-size:12px;line-height:1.45}.telemetry-view .settings-card-grid{gap:10px;padding:0}.telemetry-view .settings-module-card{min-height:84px;padding:12px}.telemetry-view .settings-module-card p{font-size:16px;font-weight:700}@media (width<=900px){.telemetry-toolbar{flex-direction:column;align-items:stretch}.telemetry-view{padding:12px}}.telemetry-protocols-card{min-width:0}.telemetry-protocol-table-wrap{width:100%;overflow:auto}.telemetry-protocol-table{border-collapse:collapse;width:100%;min-width:980px}.telemetry-protocol-table th,.telemetry-protocol-table td{border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:8px 9px;font-size:11px}.telemetry-protocol-table th{background:var(--color-surface-muted);color:var(--color-text-muted);font-weight:700}.telemetry-protocol-table td small{color:var(--color-text-subtle);margin-top:2px;font-size:10px;display:block}.telemetry-protocol-table input{width:70px;min-width:70px}.telemetry-protocol-actions{justify-content:flex-end;gap:4px;display:flex}.telemetry-protocol-actions .button{padding:5px 7px;font-size:10px}.telemetry-state{color:var(--color-text-muted)}.telemetry-state.ok{color:var(--color-success);font-weight:700}.telemetry-error-value{color:var(--color-danger,#b42318);font-weight:700}.telemetry-diagnostic-toolbar{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);flex-wrap:wrap;align-items:flex-end;gap:8px;padding:10px;display:flex}.telemetry-diagnostic-toolbar label{gap:4px;min-width:180px;display:grid}.telemetry-diagnostic-toolbar label span{color:var(--color-text-subtle);font-size:10px;font-weight:700}.telemetry-diagnostic-toolbar select{min-height:32px;font-size:12px}.telemetry-clickable-row{cursor:pointer}.telemetry-clickable-row:hover{background:var(--color-surface-muted)}.telemetry-terminal{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.telemetry-terminal-head{border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);justify-content:space-between;gap:12px;padding:10px 12px;font-size:12px;display:flex}.telemetry-terminal-head span{color:var(--color-text-muted)}.telemetry-terminal-line{border-bottom:1px solid var(--color-border);grid-template-columns:135px 34px 90px minmax(0,1fr);align-items:start;gap:8px;padding:7px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;display:grid}.telemetry-terminal-line:last-child{border-bottom:0}.telemetry-terminal-line code{white-space:pre-wrap;word-break:break-all;color:var(--color-text)}.telemetry-terminal-line b{color:var(--color-accent-dark)}.telemetry-status-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.telemetry-status-grid>div{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:4px;padding:12px;display:grid}.telemetry-status-grid span{color:var(--color-text-subtle);font-size:10px}.telemetry-status-grid strong{color:var(--color-text);font-size:12px;line-height:1.35}@media (width<=900px){.telemetry-status-grid{grid-template-columns:1fr 1fr}.telemetry-terminal-line{grid-template-columns:110px 30px 70px minmax(0,1fr)}}@media (width<=640px){.telemetry-status-grid{grid-template-columns:1fr}}.telemetry-inline-toggle{white-space:nowrap;color:var(--text-secondary,#6b7280);align-items:center;gap:6px;font-size:12px;display:inline-flex}.telemetry-inline-toggle input{margin:0}.telemetry-log-filters{align-items:center;gap:8px;margin-bottom:10px;display:flex}.telemetry-log-filters select,.telemetry-log-filters input{min-height:34px;padding:0 10px}.telemetry-log-filters input{flex:1;min-width:220px}.telemetry-log-filters>span{color:var(--text-secondary,#6b7280);white-space:nowrap;margin-left:auto;font-size:12px}@media (width<=900px){.telemetry-log-filters{flex-wrap:wrap}.telemetry-log-filters input{min-width:160px}.telemetry-log-filters>span{margin-left:0}}.server-monitor{flex:auto;gap:12px;min-height:0;padding:14px 16px 24px;display:grid;overflow:auto}.server-status-strip{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;display:grid}.server-status-item{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:4px;padding:10px 12px;display:grid}.server-status-item span{color:var(--color-text-subtle);font-size:10px;font-weight:700}.server-status-item strong{color:var(--color-text);font-size:13px}.server-monitor .settings-card-grid{padding:0}.server-monitor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.server-monitor .settings-card-inner{min-width:0}.server-monitor .settings-card-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.server-monitor .settings-card-header h3{margin:0;font-size:14px}.server-monitor .settings-card-header p{color:var(--color-text-muted);margin:3px 0 0;font-size:11px}.server-service-list,.server-metric-list{display:grid}.server-service-row{border-bottom:1px solid var(--color-border);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 14px;display:grid}.server-service-row:last-child{border-bottom:0}.server-service-row strong{font-size:12px;display:block}.server-service-row small{color:var(--color-text-subtle);margin-top:2px;font-size:10px;display:block}.server-service-row>b{color:var(--color-text-muted);font-size:10px}.server-dot{background:var(--color-text-subtle);border-radius:50%;width:7px;height:7px}.server-dot.ok{background:var(--color-success)}.server-dot.error{background:var(--color-danger,#b42318)}.server-metric-list>div{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:9px 14px;display:grid}.server-metric-list>div:last-child{border-bottom:0}.server-metric-list span{color:var(--color-text-muted);font-size:11px}.server-metric-list strong{color:var(--color-text);text-align:right;font-size:12px}.server-metric-list small{color:var(--color-text-subtle);grid-column:1/-1;font-size:10px}.server-monitor>.settings-card-inner{min-width:0}@media (width<=900px){.server-status-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.server-monitor-grid{grid-template-columns:1fr}}@media (width<=640px){.server-status-strip{grid-template-columns:1fr}.server-monitor{padding:12px}.server-monitor .settings-card-grid{grid-template-columns:1fr}}.settings-page{height:calc(100vh - 96px);min-height:0;overflow:hidden}.settings-shell{height:100%;min-height:0;overflow:hidden}.settings-content{height:100%;min-height:0;overflow:hidden auto}.settings-section{height:auto;min-height:100%;overflow:visible}.settings-maps-sources-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.settings-maps-sources-grid>.settings-card-inner{min-width:0}@media (width<=1000px){.settings-maps-sources-grid{grid-template-columns:1fr}}.settings-maps-top-grid{gap:var(--space-4);padding:var(--space-5);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid}.settings-maps-top-grid>.settings-card-inner{min-width:0}.settings-maps-top-grid>.settings-maps-sources-grid{grid-column:1/-1;min-width:0}@media (width<=1000px){.settings-maps-top-grid{grid-template-columns:1fr}.settings-maps-top-grid>.settings-maps-sources-grid{grid-column:auto}}@media (width<=640px){.settings-maps-top-grid{padding:var(--space-3)}}.settings-address-database-list{border-top:1px solid var(--color-border);gap:0;display:grid}.settings-address-database-row{gap:var(--space-4);padding:14px var(--space-5);border-bottom:1px solid var(--color-border);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.settings-address-database-row:last-child{border-bottom:0}.settings-address-database-main{grid-template-columns:8px minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.settings-address-database-main h3{color:var(--color-text);font-size:var(--font-size-sm);margin:0}.settings-address-database-main p{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:3px 0 0;line-height:1.35}.settings-address-database-dot{background:var(--color-text-subtle);border-radius:50%;width:8px;height:8px;margin-top:5px}.settings-address-database-dot.ready{background:var(--color-success)}.settings-address-database-dot.busy{background:var(--color-warning,#b7791f)}.settings-address-database-dot.error{background:var(--color-danger,#b42318)}.settings-address-database-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.settings-address-database-actions .settings-switch{min-height:34px}.settings-address-database-error{color:var(--color-danger,#b42318)!important}@media (width<=760px){.settings-address-database-row{grid-template-columns:1fr}.settings-address-database-actions{justify-content:flex-start}}.settings-reports-grid{gap:var(--space-4);padding:var(--space-5);grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.settings-reports-grid>.settings-card-inner{min-width:0}@media (width<=640px){.settings-reports-grid{padding:var(--space-3)}}.reports-builder{gap:var(--space-4);margin-top:var(--space-5);display:grid}.reports-builder-step{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);padding:var(--space-5)}.reports-builder-step-head{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);display:flex}.reports-builder-step-head>span{background:var(--color-accent-soft);width:28px;height:28px;color:var(--color-accent);border-radius:50%;flex:0 0 28px;place-items:center;font-weight:700;display:grid}.reports-builder-step-head>div{gap:3px;display:grid}.reports-builder-step-head strong{font-size:14px}.reports-builder-step-head small{color:var(--color-text-muted);line-height:1.4}.reports-builder-step-head>b{white-space:nowrap;color:var(--color-text-muted);margin-left:auto;font-size:12px}.reports-field-groups{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reports-field-group{min-width:0;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.reports-field-group h4{margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:12px}.reports-field-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px;display:grid}.reports-field-option{cursor:pointer;align-items:center;gap:8px;min-height:30px;font-size:12px;display:flex}.reports-field-option input{margin:0}.reports-selected-columns{gap:var(--space-3);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);display:grid}.reports-selected-columns>div:first-child{gap:3px;display:grid}.reports-selected-columns small{color:var(--color-text-muted)}.reports-selected-list{gap:6px;display:grid}.reports-selected-item{justify-content:space-between;align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);padding:7px 9px;font-size:12px;display:flex}.reports-selected-item>div{gap:4px;display:flex}.reports-role-grid{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reports-builder-actions{padding-top:var(--space-1);justify-content:flex-end;display:flex}@media (width<=900px){.reports-field-groups,.reports-role-grid,.reports-field-options{grid-template-columns:1fr}}.reports-custom-list{margin-top:var(--space-4);gap:10px;display:grid}.reports-template-card{gap:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);grid-template-columns:minmax(0,1fr) auto;align-items:center;padding:14px 16px;transition:border-color .15s,box-shadow .15s;display:grid}.reports-template-card:hover{border-color:var(--color-border-focus);box-shadow:0 2px 8px #1e32460f}.reports-template-main{align-items:flex-start;gap:12px;min-width:0;display:flex}.reports-template-icon{border-radius:var(--radius-md);background:var(--color-accent-soft);width:34px;height:34px;color:var(--color-accent-dark);flex:0 0 34px;place-items:center;font-weight:700;display:grid}.reports-template-body{gap:9px;min-width:0;display:grid}.reports-template-title{align-items:flex-start;gap:12px;display:flex}.reports-template-title>div{gap:3px;min-width:0;display:grid}.reports-template-title strong{color:var(--color-text);font-size:13px}.reports-template-title small{color:var(--color-text-muted);font-size:11px;line-height:1.35}.reports-template-status{background:var(--color-success-soft,#eaf7ef);color:var(--color-success-dark,#26734d);border-radius:999px;flex:none;margin-left:auto;padding:3px 7px;font-size:10px;font-weight:700}.reports-template-meta{flex-wrap:wrap;gap:6px;display:flex}.reports-template-meta span{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted);max-width:100%;color:var(--color-text-muted);padding:5px 8px;font-size:10px;line-height:1.35}.reports-template-meta b{color:var(--color-text);font-weight:700}.reports-template-actions{flex:none;align-items:center;gap:6px;display:flex}.reports-template-actions .button{min-height:32px}@media (width<=800px){.reports-template-card{grid-template-columns:1fr}.reports-template-actions{justify-content:flex-end}}.reports-global-settings{margin-bottom:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);padding:14px 16px 16px}.reports-global-settings-head{border-bottom:1px solid var(--color-border);margin-bottom:12px;padding-bottom:12px}.reports-global-settings-head>div{gap:3px;display:grid}.reports-global-settings-head strong{color:var(--color-text);font-size:13px}.reports-global-settings-head span{color:var(--color-text-muted);font-size:11px;line-height:1.4}.reports-global-settings-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.reports-global-setting{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);align-items:flex-start;gap:10px;min-width:0;padding:12px;display:flex}.reports-global-setting-icon{border-radius:var(--radius-sm);background:var(--color-accent-soft);width:30px;height:30px;color:var(--color-accent-dark);flex:0 0 30px;place-items:center;font-weight:700;display:grid}.reports-global-setting>div{gap:5px;min-width:0;display:grid}.reports-global-setting strong{font-size:12px}.reports-global-setting p{color:var(--color-text-muted);margin:0;font-size:10px;line-height:1.4}.reports-format-list{flex-wrap:wrap;gap:5px;display:flex}.reports-format-list span,.reports-setting-note{border:1px solid var(--color-border);background:var(--color-surface-muted);min-height:21px;color:var(--color-text-muted);border-radius:999px;align-items:center;padding:2px 7px;font-size:9px;font-weight:600;display:inline-flex}.reports-setting-note{width:fit-content}.reports-template-actions .button-danger{min-height:32px}@media (width<=1000px){.reports-global-settings-grid{grid-template-columns:1fr}}.reports-global-form-grid{margin-bottom:var(--space-3)}.reports-filename-options{gap:7px}.reports-filename-checks{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:4px;display:grid}.reports-filename-checks .settings-switch{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:38px;padding:8px 12px}@media (width<=900px){.reports-filename-checks{grid-template-columns:1fr;gap:10px}}.reports-global-toggles{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0 14px;display:grid}.reports-global-toggles .settings-switch{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:10px 12px}@media (width<=900px){.reports-global-toggles{grid-template-columns:1fr}}.security-center{min-width:0}.settings-content .security-center .security-center-header{border-bottom:1px solid var(--color-border);padding:12px 0}.settings-content .security-center .security-tabs{grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px;padding:10px 0;display:grid}.settings-content .security-center .security-tab{border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:8px;flex-direction:column;align-items:flex-start;min-height:56px;padding:9px 12px;display:flex}.settings-content .security-center .security-tab strong,.settings-content .security-center .security-tab small{display:block}.settings-content .security-center .security-tab small{color:var(--color-text-muted);margin-top:4px}.settings-content .security-center .security-stack{gap:10px;display:grid}.settings-content .security-center .security-block{border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:8px;padding:12px}.settings-content .security-center .security-block-heading,.settings-content .security-center .security-block p{margin-bottom:10px}.settings-content .security-center .security-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.settings-content .security-center .security-metric{border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:8px;flex-direction:column;justify-content:center;min-height:84px;padding:12px;display:flex}.settings-content .security-center .security-metric strong{font-size:22px}.settings-content .security-center .security-account-grid{grid-template-columns:180px minmax(0,1fr);gap:8px 16px;display:grid}.settings-content .security-center .security-protection-list{gap:8px;display:grid}.settings-content .security-center .security-protection-item{border:1px solid var(--color-border);border-radius:8px;justify-content:space-between;padding:8px 10px;display:flex}.settings-content .security-center .security-table{border-collapse:collapse;width:100%;font-size:12px}.settings-content .security-center .security-table th,.settings-content .security-center .security-table td{border-bottom:1px solid var(--color-border);padding:8px}.settings-content .security-center .security-role-layout{grid-template-columns:230px minmax(0,1fr)}.settings-content .security-center .security-permission-grid{max-height:280px}.settings-content .security-center .security-role,.settings-content .security-center .security-permission-item{border-radius:8px}.settings-content .security-center .security-role-create{padding:10px}@media (width<=900px){.settings-content .security-center .security-tabs{grid-template-columns:repeat(2,minmax(120px,1fr))}.settings-content .security-center .security-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}.settings-content .security-workspace{flex-direction:column;min-width:0;min-height:0;display:flex}.settings-content .security-workspace .security-toolbar{flex:none;align-items:center;gap:10px;padding:0 0 10px;display:flex}.settings-content .security-workspace .security-toolbar .security-tabs{flex:auto;gap:6px;min-width:0;padding:0;display:flex}.settings-content .security-workspace .security-toolbar .security-tab{border:1px solid var(--color-border);background:var(--color-surface-raised);min-height:38px;color:var(--color-text);white-space:nowrap;border-radius:7px;padding:8px 14px}.settings-content .security-workspace .security-toolbar .security-tab.active{border-color:var(--color-primary);background:var(--color-primary-soft,var(--color-surface-raised))}.settings-content .security-workspace .security-view{flex:auto;min-width:0;min-height:0}.settings-content .security-workspace .security-view .telemetry-view-section{min-width:0}.settings-content .security-workspace .security-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;display:grid}.settings-content .security-workspace .security-account-grid{grid-template-columns:minmax(150px,.65fr) minmax(0,1.35fr);gap:0;display:grid}.settings-content .security-workspace .security-account-grid>*{border-bottom:1px solid var(--color-border);padding:8px 0}.settings-content .security-workspace .security-account-grid span{color:var(--color-text-muted)}.settings-content .security-workspace .security-protection-list{gap:6px;display:grid}.settings-content .security-workspace .security-protection-item{border:1px solid var(--color-border);border-radius:7px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;display:flex}.settings-content .security-workspace .security-protection-item b{white-space:nowrap}.settings-content .security-workspace .security-table-wrap{min-width:0;overflow-x:auto}.settings-content .security-workspace .security-section-actions{justify-content:flex-end;gap:8px;margin-top:10px;display:flex}.settings-content .security-workspace .security-audit-filters{align-items:center;gap:8px;margin-bottom:10px;display:flex}.settings-content .security-workspace .security-audit-filters select,.settings-content .security-workspace .security-audit-filters input{min-height:34px}.settings-content .security-workspace .security-audit-filters input{flex:260px;min-width:180px}.settings-content .security-workspace .security-audit-filters span{color:var(--color-text-muted);white-space:nowrap}.settings-content .security-workspace .security-role-layout{grid-template-columns:250px minmax(0,1fr);gap:10px;margin-top:10px;display:grid}.settings-content .security-workspace .security-role-list{flex-direction:column;gap:6px;min-width:0;display:flex}.settings-content .security-workspace .security-role{text-align:left;border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:7px;width:100%;padding:10px 12px}.settings-content .security-workspace .security-role.active{border-color:var(--color-primary)}.settings-content .security-workspace .security-role strong,.settings-content .security-workspace .security-role small{display:block}.settings-content .security-workspace .security-role small{color:var(--color-text-muted);margin-top:3px}.settings-content .security-workspace .security-role-editor{border:1px solid var(--color-border);background:var(--color-surface-raised);border-radius:8px;min-width:0;padding:12px}.settings-content .security-workspace .security-permission-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;max-height:360px;margin-top:12px;display:grid;overflow-y:auto}.settings-content .security-workspace .security-permission-item{border:1px solid var(--color-border);background:var(--color-surface);border-radius:7px;align-items:flex-start;gap:8px;padding:9px 10px;display:flex}.settings-content .security-workspace .security-permission-item span{min-width:0}.settings-content .security-workspace .security-permission-item b,.settings-content .security-workspace .security-permission-item small{display:block}.settings-content .security-workspace .security-permission-item small{color:var(--color-text-muted);margin-top:2px}@media (width<=900px){.settings-content .security-workspace .security-toolbar{flex-direction:column;align-items:stretch}.settings-content .security-workspace .security-toolbar .security-tabs{overflow-x:auto}.settings-content .security-workspace .security-overview-grid,.settings-content .security-workspace .security-role-layout,.settings-content .security-workspace .security-permission-grid{grid-template-columns:1fr}.settings-content .security-workspace .security-audit-filters{flex-direction:column;align-items:stretch}}.reports-page{gap:var(--space-3);width:100%;height:100%;min-height:0;padding:var(--space-3);box-sizing:border-box;background:var(--color-bg);color:var(--color-text);grid-template-columns:280px minmax(0,1fr);display:grid;overflow:hidden}.reports-builder-panel,.reports-map-panel,.reports-result-panel{background:var(--color-surface-raised);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;min-height:0;box-shadow:var(--shadow-sm)}.reports-builder-panel{flex-direction:column;display:flex;overflow:hidden}.reports-builder-header{padding:var(--space-4);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none}.reports-builder-header h1{font-size:var(--font-size-lg);margin:4px 0}.reports-builder-header p{color:var(--color-text-muted);font-size:var(--font-size-xs);margin:0;line-height:1.4}.eyebrow{color:var(--color-text-muted);letter-spacing:.13em;font-size:10px;font-weight:800}.reports-builder-body{min-height:0;padding:var(--space-2);flex:auto;overflow:auto}.reports-step{gap:var(--space-2);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--color-border);grid-template-columns:25px minmax(0,1fr);display:grid}.reports-step:last-child{border-bottom:0}.reports-step-number{background:var(--color-accent-soft);width:24px;height:24px;color:var(--color-accent-dark);border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid}.reports-step-content{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.reports-step-content>label,.reports-inline-field,.reports-advanced label{gap:var(--space-1);color:var(--color-text-muted);font-size:var(--font-size-xs);flex-direction:column;font-weight:700;display:flex}.reports-step-content select,.reports-step-content input{box-sizing:border-box;width:100%}.reports-step-content small{color:var(--color-text-muted);font-size:10px;line-height:1.35}.reports-period-buttons{grid-template-columns:repeat(2,1fr);gap:4px;display:grid}.reports-period-buttons button,.reports-advanced-toggle{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:30px;color:var(--color-text-muted);font:inherit;cursor:pointer;font-size:10px;font-weight:700}.reports-period-buttons button:hover,.reports-advanced-toggle:hover{background:var(--color-surface-accent);color:var(--color-text)}.reports-period-buttons button.active{background:var(--color-accent-soft);border-color:var(--color-border-focus);color:var(--color-text)}.reports-date-grid{gap:var(--space-2);grid-template-columns:1fr;display:grid}.reports-date-grid label{color:var(--color-text-muted);flex-direction:column;gap:3px;font-size:10px;font-weight:700;display:flex}.reports-zone-select{min-height:80px}.reports-advanced{padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted)}.reports-advanced-toggle{width:100%;min-height:28px}.reports-builder-footer{padding:var(--space-3);border-top:1px solid var(--color-border);background:var(--color-surface);flex:none}.reports-generate{width:100%}.reports-selection-note{margin-top:var(--space-2);color:var(--color-text-muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.reports-workspace-main{gap:0;min-width:0;min-height:0;display:grid;overflow:hidden}.reports-map-panel,.reports-result-panel{flex-direction:column;display:flex;overflow:hidden}.reports-panel-header{min-height:var(--control-height);justify-content:space-between;align-items:center;gap:var(--space-3);padding:0 var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface);flex:none;display:flex}.reports-panel-header>div:first-child{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.reports-panel-header strong{color:var(--color-text);font-size:var(--font-size-xs);letter-spacing:.04em}.reports-panel-header span{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.reports-map-status{color:var(--color-text-muted);font-size:10px}.reports-map-content{flex:auto;min-height:0;position:relative}.reports-map-content .monitoring-map,.reports-map-content .leaflet-container{width:100%;height:100%}.reports-map-content .map-empty{border:0;border-radius:0;inset:0}.reports-main-resizer{cursor:row-resize;background:var(--color-bg);z-index:5;height:8px;position:relative}.reports-main-resizer:before{content:"";background:var(--color-border);height:2px;position:absolute;top:3px;left:0;right:0}.reports-main-resizer:hover:before{background:var(--color-accent)}.reports-result-header{flex-wrap:wrap}.reports-result-actions{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.reports-result-actions button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:30px;color:var(--color-text-muted);font:inherit;cursor:pointer;padding:0 9px;font-size:10px;font-weight:700}.reports-result-actions button:hover:not(:disabled){background:var(--color-surface-accent);color:var(--color-text)}.reports-result-actions button.active{background:var(--color-accent-soft);border-color:var(--color-border-focus);color:var(--color-text)}.reports-result-actions button:disabled{opacity:.5;cursor:default}.reports-kpi-strip{padding:8px var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-muted);flex:none;gap:6px;display:flex;overflow:auto}.reports-kpi{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);min-width:95px;padding:7px 9px}.reports-kpi strong,.reports-kpi span{display:block}.reports-kpi strong{color:var(--color-text);font-size:13px}.reports-kpi span{color:var(--color-text-muted);margin-top:2px;font-size:9px}.reports-table-tools{padding:8px var(--space-3);border-bottom:1px solid var(--color-border);flex:none;justify-content:space-between;gap:8px;display:flex}.reports-table-tools input{flex:1;min-width:220px}.reports-table-tools select{width:110px}.reports-table-wrap{flex:auto;min-height:0;overflow:auto}.reports-table-wrap table{border-collapse:collapse;width:max-content;min-width:100%;font-size:10px}.reports-table-wrap th,.reports-table-wrap td{border-bottom:1px solid var(--color-border);border-right:1px solid var(--color-border);text-align:left;white-space:nowrap;padding:7px 9px}.reports-table-wrap th{z-index:2;background:var(--color-surface);color:var(--color-text-muted);position:sticky;top:0}.reports-table-wrap th button{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700}.reports-table-wrap tbody tr{cursor:pointer}.reports-table-wrap tbody tr:hover td{background:var(--color-surface-accent)}.reports-table-wrap tbody tr.selected td{background:var(--color-accent-soft);box-shadow:inset 0 1px 0 var(--color-border-focus),inset 0 -1px 0 var(--color-border-focus)}.reports-footer{justify-content:space-between;align-items:center;gap:var(--space-3);padding:7px var(--space-3);border-top:1px solid var(--color-border);color:var(--color-text-muted);flex:none;font-size:10px;display:flex}.reports-footer>span:last-child{gap:5px;display:flex}.reports-empty,.reports-empty-state{min-height:110px;padding:var(--space-5);color:var(--color-text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;display:flex}.reports-empty-state{flex:1}.reports-empty-state strong{color:var(--color-text);font-size:var(--font-size-sm)}.reports-error{margin:8px var(--space-3);border:1px solid var(--color-danger);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);flex:none;padding:8px 10px;font-size:10px}.reports-analytics{min-height:0;padding:var(--space-3);flex:auto;overflow:auto}.reports-analytics-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.reports-analytics-card{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.reports-analytics-card span,.reports-analytics-card small{color:var(--color-text-muted);font-size:10px;display:block}.reports-analytics-card strong{margin:5px 0;font-size:18px;display:block}.reports-bar{background:var(--color-surface-muted);border-radius:4px;height:5px;margin-top:8px;overflow:hidden}.reports-bar i{background:var(--color-accent);height:100%;display:block}.reports-analytics-hint{margin-top:var(--space-3);padding:var(--space-3);border:1px dashed var(--color-border);border-radius:var(--radius-md);color:var(--color-text-muted);font-size:10px;line-height:1.45}@media (width<=900px){.reports-page{grid-template-columns:240px minmax(0,1fr)}}@media (width<=700px){.reports-page{grid-template-columns:1fr;height:auto;min-height:calc(100vh - 64px);overflow:auto}.reports-builder-panel{max-height:none}.reports-workspace-main{min-height:900px}}.reports-page{height:calc(100vh - 64px);min-height:0;padding:var(--space-3);gap:var(--space-3);grid-template-columns:280px minmax(0,1fr);align-items:stretch;overflow:hidden}.reports-builder-panel{border-radius:var(--radius-lg);height:100%;box-shadow:var(--shadow-sm)}.reports-builder-header{padding:var(--space-3) var(--space-4);background:var(--color-surface-muted);border-bottom:1px solid var(--color-border)}.reports-builder-header h1{display:none}.reports-builder-header p{font-size:var(--font-size-xs);margin:0;line-height:1.35}.reports-builder-header .eyebrow{margin-bottom:3px}.reports-step{gap:var(--space-2);padding:var(--space-3) var(--space-4);grid-template-columns:1fr}.reports-step-number{display:none}.reports-step-content{gap:var(--space-2)}.reports-step-content>label{margin:0}.reports-scope-tabs{gap:var(--space-1);grid-template-columns:1fr 1fr 1fr;display:grid}.reports-scope-tabs button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:30px;color:var(--color-text-muted);font:inherit;cursor:pointer;font-size:10px;font-weight:700}.reports-scope-tabs button.active{background:var(--color-accent-soft);border-color:var(--color-border-focus);color:var(--color-accent-dark)}.reports-object-select{box-sizing:border-box;width:100%;min-height:90px}.reports-workspace-main{min-height:0}.reports-panel-header{padding:0 var(--space-4)}.reports-main-resizer{height:8px}.reports-result-panel{min-height:0}.reports-builder-footer{padding:var(--space-3)}@media (width<=700px){.reports-page{min-height:calc(100vh - 64px)}}.reports-device-search{box-sizing:border-box;width:100%;min-height:30px}.reports-builder-panel{height:100%;min-height:0}@media (height>=760px){.reports-object-select{min-height:190px;max-height:240px}}@media (height<=760px){.reports-page{height:calc(100vh - 64px);min-height:calc(100vh - 64px);overflow:hidden}.reports-builder-body{overflow-y:auto}.reports-object-select{min-height:130px;max-height:170px}}@media (width<=700px){.reports-page{height:auto;min-height:calc(100vh - 64px);overflow:auto}}.reports-page{box-sizing:border-box;width:100%;height:calc(100vh - 42px);min-height:0;padding:var(--space-2);grid-template-columns:320px minmax(0,1fr);width:100%;height:calc(100vh - 96px);min-height:0;padding:0;overflow:hidden}.reports-checkbox-field{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;gap:8px;min-height:30px;padding:7px 9px;color:var(--color-text)!important;flex-direction:row!important;font-size:11px!important;font-weight:600!important;display:flex!important}.reports-checkbox-field input{accent-color:var(--color-accent);margin:0;width:auto!important;min-height:auto!important}.reports-checkbox-field:hover{background:var(--color-surface-accent)}@media (width<=900px){.reports-page{grid-template-columns:320px minmax(0,1fr)}}.reports-zone-picker{gap:var(--space-2);flex-direction:column;display:flex}.reports-zone-picker .reports-scope-tabs,.reports-zone-picker .reports-device-search{margin:0}.reports-zone-picker .reports-zone-select{box-sizing:border-box;width:100%;min-height:135px;max-height:180px;margin:0}.reports-zone-picker small{margin:0}.reports-object-select{min-height:135px;max-height:180px}@media (height>=760px){.reports-object-select,.reports-zone-picker .reports-zone-select{min-height:143px;max-height:180px}}@media (height<=760px){.reports-object-select,.reports-zone-picker .reports-zone-select{min-height:98px;max-height:128px}}.reports-result-meta{white-space:nowrap;align-items:center;min-width:0;gap:var(--space-4)!important;display:flex!important}.reports-result-meta strong,.reports-result-meta span{flex:none}@media (width<=900px){.reports-result-meta{gap:var(--space-2)!important}}.reports-builder-header p,.reports-builder-header .eyebrow,.reports-step-content>label,.reports-inline-field,.reports-advanced label,.reports-date-grid label,.reports-step-content small,.reports-zone-picker small,.reports-period-buttons button,.reports-advanced-toggle,.reports-scope-tabs button,.reports-object-select,.reports-zone-picker .reports-zone-select,.reports-checkbox-field,.reports-generate,.reports-selection-note{font-size:var(--font-size-xs)}.reports-saved{border-top:1px solid var(--border-color);margin-top:10px;padding-top:10px}.reports-saved-header{justify-content:space-between;align-items:center;margin-bottom:7px;font-size:13px;display:flex}.reports-saved-header span{text-align:center;background:var(--surface-muted,#eef1f4);border-radius:10px;min-width:20px;padding:2px 6px}.reports-saved-create{grid-template-columns:minmax(0,1fr) auto;gap:6px;display:grid}.reports-saved-create input{min-width:0}.reports-saved-list{gap:4px;max-height:145px;margin-top:7px;display:grid;overflow-y:auto}.reports-saved-item{grid-template-columns:minmax(0,1fr) 30px 30px;align-items:center;gap:3px;display:grid}.reports-saved-open{border:1px solid var(--border-color);cursor:pointer;text-align:left;background:0 0;border-radius:5px;flex-direction:column;align-items:flex-start;min-width:0;padding:6px 8px;display:flex}.reports-saved-open:hover{background:var(--surface-muted,#f5f6f7)}.reports-saved-open strong,.reports-saved-open small{text-overflow:ellipsis;white-space:nowrap;max-width:100%;overflow:hidden}.reports-saved-open small{opacity:.65;margin-top:2px}.reports-saved-action{border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:5px;height:30px;padding:0}.reports-saved-action.danger{color:#b42318}.reports-custom-panel{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--color-surface);margin:0 10px 10px;padding:10px}.reports-custom-panel .reports-saved-header{margin-bottom:6px}.reports-custom-panel .reports-saved-header>div{flex-direction:column;gap:2px;min-width:0;display:flex}.reports-custom-panel .reports-saved-header small{opacity:.65;font-size:10px}.reports-custom-builder{border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);flex-direction:column;gap:7px;padding:8px 0;display:flex}.reports-custom-builder input{box-sizing:border-box;width:100%}.reports-custom-builder>div{flex-direction:column;gap:4px;display:flex}.reports-custom-builder>div>small{opacity:.65;font-size:10px}.reports-custom-builder .reports-checkbox-field{min-height:28px;padding:5px 7px}.reports-custom-list{gap:4px;max-height:145px;margin-top:7px;display:grid;overflow-y:auto}.reports-custom-list .reports-saved-item{grid-template-columns:minmax(0,1fr) 30px 30px}.reports-custom-empty{opacity:.6;padding:7px 2px 2px;font-size:10px;display:block}.reports-shift-row{grid-template-columns:56px 70px 8px 70px 24px!important;gap:4px!important}.reports-speed-legend{z-index:500;border:1px solid var(--border-color,#cbd5e1);color:var(--text-primary,#334155);background:#fffffff5;border-radius:8px;flex-wrap:wrap;gap:8px 12px;padding:8px 10px;font-size:11px;display:flex;position:absolute;bottom:12px;left:12px;box-shadow:0 1px 5px #0f172a1f}.reports-speed-legend span{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.reports-speed-legend i{border-radius:3px;width:16px;height:5px;display:inline-block}.reports-speed-controls{border:1px solid var(--border-color,#cbd5e1);background:var(--panel-bg,#fff);border-radius:8px;gap:8px;margin:8px 0 2px;padding:9px 10px;display:grid}.reports-speed-control{gap:4px;font-size:12px;font-weight:700;display:grid}.reports-speed-control input[type=range]{cursor:pointer;width:100%;margin:0;display:block}.reports-speed-red-label{color:#dc2626;font-size:12px;font-weight:700}.reports-speed-chart-section{border-top:1px solid var(--border-color,#d5dce2);margin-top:18px;padding-top:14px}.reports-speed-chart-section .reports-analytics-summary-heading p{display:none}.reports-speed-chart{box-sizing:border-box;border:1px solid var(--border-color,#d5dce2);background:var(--panel-bg,#fff);border-radius:8px;width:100%;height:340px;min-height:300px;margin-top:12px;padding:8px 12px 12px}.reports-speed-chart .telemetry-chart-wrapper,.reports-speed-chart .telemetry-chart{width:100%;height:100%;min-height:0}.reports-speed-chart .telemetry-chart-legend{margin-bottom:8px}.reports-speed-summary{border:1px solid var(--border-color,#d5dce2);background:var(--panel-bg,#fff);border-radius:10px;padding:14px 16px 16px}.reports-speed-summary-heading{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.reports-speed-summary-heading h3{margin:0;font-size:15px;font-weight:700}.reports-speed-summary-heading p{color:var(--text-secondary,#667085);margin:4px 0 0;font-size:12px}.reports-speed-summary-list{flex-direction:column;display:flex}.reports-speed-summary-row{border:1px solid var(--border-color,#d5dce2);border-radius:7px;grid-template-columns:minmax(110px,.8fr) repeat(4,minmax(130px,1fr));align-items:stretch;gap:0;display:grid;overflow:hidden}.reports-speed-summary-row>div{background:var(--panel-bg,#fff);border-right:1px solid var(--border-color,#e2e7ec);flex-direction:column;justify-content:center;gap:7px;min-width:0;padding:13px 15px;display:flex}.reports-speed-summary-row>div:last-child{border-right:0}.reports-speed-summary-row>div>span{color:var(--text-secondary,#667085);font-size:11px;line-height:1.35}.reports-speed-summary-row strong{color:var(--text-primary,#243447);font-size:17px;font-weight:700;line-height:1.25}.reports-speed-summary-device{background:var(--table-header-bg,#f3f6f9)!important}.reports-speed-summary-device strong{font-size:20px}.reports-speed-summary-row small{color:var(--text-secondary,#667085);font-size:11px;font-weight:500}@media (width<=900px){.reports-speed-summary-row{grid-template-columns:repeat(2,minmax(0,1fr))}.reports-speed-summary-row>div{border-bottom:1px solid var(--border-color,#e2e7ec)}}@media (width<=560px){.reports-speed-summary-row{grid-template-columns:minmax(0,1fr)}.reports-speed-summary-row>div{border-right:0}}.reports-speed-chart .telemetry-chart-zoomable{cursor:crosshair;overscroll-behavior:contain}.reports-speed-chart .telemetry-chart-legend{flex-wrap:wrap;align-items:center;gap:14px;margin:0 0 8px;padding:0 4px;display:flex}.reports-speed-chart .telemetry-chart-legend span{color:var(--text-secondary,#667085);align-items:center;gap:6px;font-size:12px;display:inline-flex}.reports-speed-chart .telemetry-chart-legend i{border-radius:50%;flex:0 0 9px;width:9px;height:9px;display:inline-block}.reports-speed-chart .telemetry-chart-legend i.movement{background:#22c55e}.reports-speed-chart .telemetry-chart-legend i.stop{background:#eab308}.reports-speed-chart .telemetry-chart-legend i.parking{background:#3b82f6}.reports-speed-chart .telemetry-chart-legend i.no-data{background:#ef4444}.reports-speed-chart .speed-canvas-chart{height:100%;min-height:0}.reports-speed-chart .speed-canvas-viewport{cursor:crosshair;touch-action:pan-y;width:100%;height:calc(100% - 26px);min-height:240px;position:relative;overflow:hidden}.reports-speed-chart .speed-canvas-viewport canvas{width:100%;height:100%;display:block}.reports-speed-chart .speed-canvas-tooltip{z-index:5;pointer-events:none;border:1px solid var(--border-color,#cbd5df);background:var(--panel-bg,#fff);min-width:150px;color:var(--text-primary,#243447);border-radius:6px;padding:8px 10px;font-size:11px;position:absolute;box-shadow:0 3px 12px #0000001f}.reports-speed-chart .speed-canvas-tooltip strong{color:#2788c7;margin-top:4px;display:block}@media (width<=1180px){.app-header{gap:var(--space-3);padding-inline:var(--space-4);grid-template-columns:auto minmax(0,1fr) auto}.top-navigation{justify-content:flex-start}.events-page{grid-template-columns:220px minmax(0,1fr) 260px}}@media (width<=1000px){.dashboard-grid,.dashboard-bottom-grid,.events-page{grid-template-columns:1fr}.events-sidebar,.events-main,.events-details,.events-raw-section{grid-area:auto/1}.events-main{min-height:560px}}@media (width<=900px){.devices-page-header{flex-direction:column}.devices-page-header-left{align-items:flex-start;width:100%}.device-stat-grid{width:100%}.device-details-header,.device-details-grid,.device-statistics{grid-template-columns:1fr}.device-details-header{flex-direction:column}.device-info-list>div{gap:var(--space-1);grid-template-columns:1fr}.device-info-list strong,.device-info-list code{text-align:left}.admin-architecture-page .devices-toolbar,.admin-architecture-page .devices-toolbar-left,.admin-architecture-page .devices-toolbar-right{flex-wrap:wrap}}@media (width<=760px){.app-header{gap:var(--space-3);padding:var(--space-3);grid-template-columns:1fr auto}.brand-text span,.topbar-user{display:none}.top-navigation{padding-bottom:var(--space-1);grid-area:2/1/auto/-1;justify-content:flex-start}.top-navigation-link{min-height:34px;padding-inline:var(--space-2)}.app-main{padding:var(--space-4)}.form-grid,.devices-form-grid{grid-template-columns:1fr}.events-period-toolbar,.events-period-device,.events-period-dates,.events-period-presets{width:100%}.device-settings-layout{grid-template-columns:1fr}.device-settings-sidebar{border-right:0;border-bottom:1px solid var(--color-border);max-height:none}.device-settings-custom-field-row,.sensor-settings-content{grid-template-columns:1fr}.sensor-list-panel{border-right:0;border-bottom:1px solid var(--color-border);max-height:260px}.device-column-list{grid-template-columns:1fr}.admin-tabs{overflow-x:auto}}@media (width<=620px){.events-main{min-height:500px}.events-chart-content,.events-map-content,.events-raw-content{min-height:300px}.quick-actions,.dashboard-stats{grid-template-columns:1fr}.modal-header,.modal-footer,.modal-body{padding-inline:var(--space-4)}.device-stat-grid{grid-template-columns:1fr}.devices-page .device-stat-card{min-height:72px}}@media (width<=520px){.app-main{padding:var(--space-3)}.button{min-height:36px}.page-toolbar,.page-header,.devices-page-header-actions,.toolbar-actions{width:100%}.devices-page-header-actions,.toolbar-actions{justify-content:stretch}.devices-page-header-actions .button,.toolbar-actions .button{flex:auto}}.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;top:0;left:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:0 0}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{-webkit-transform-origin:0 0;width:1600px;height:1600px}.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{width:auto;padding:0;max-width:none!important;max-height:none!important}.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:#33b5e566}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{box-sizing:border-box;z-index:800;width:0;height:0}.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{z-index:800;pointer-events:visiblePainted;pointer-events:auto;position:relative}.leaflet-top,.leaflet-bottom{z-index:1000;pointer-events:none;position:absolute}.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;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{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{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{outline-offset:1px;background:#ddd}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{background:#ffffff80;border:2px dotted #38f}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:.75rem;line-height:1.5}.leaflet-bar{border-radius:4px;box-shadow:0 1px 5px #000000a6}.leaflet-bar a{text-align:center;color:#000;background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;text-decoration:none;display:block}.leaflet-bar a,.leaflet-control-layers-toggle{background-position: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:none;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.leaflet-bar a.leaflet-disabled{cursor:default;color:#bbb;background-color:#f4f4f4}.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-right-radius:2px;border-bottom-left-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{text-indent:1px;font:700 18px Lucida Console,Monaco,monospace}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{background:#fff;border-radius:5px;box-shadow:0 1px 5px #0006}.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{color:#333;background:#fff;padding:6px 10px 6px 6px}.leaflet-control-layers-scrollbar{padding-right:5px;overflow:hidden scroll}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{font-size:1.08333em;display:block}.leaflet-control-layers-separator{border-top:1px solid #ddd;height:0;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:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{color:#333;padding:0 5px;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{width:1em;height:.6669em;vertical-align:baseline!important;display:inline!important}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{white-space:nowrap;box-sizing:border-box;text-shadow:1px 1px #fff;background:#fffc;border:2px solid #777;border-top:none;padding:2px 5px 1px;line-height:1.1}.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{background-clip:padding-box;border:2px solid #0003}.leaflet-popup{text-align:center;margin-bottom:20px;position:absolute}.leaflet-popup-content-wrapper{text-align:left;border-radius:12px;padding:1px}.leaflet-popup-content{min-height:1px;margin:13px 24px 13px 20px;font-size:1.08333em;line-height:1.3}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{pointer-events:none;width:40px;height:20px;margin-top:-1px;margin-left:-20px;position:absolute;left:50%;overflow:hidden}.leaflet-popup-tip{pointer-events:auto;width:17px;height:17px;margin:-10px auto 0;padding:1px;transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{color:#333;background:#fff;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{text-align:center;color:#757575;background:0 0;border:none;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;text-decoration:none;position:absolute;top:0;right:0}.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{-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";width:24px;filter:progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);margin:0 auto}.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{color:#222;white-space:nowrap;-webkit-user-select:none;user-select:none;pointer-events:none;background-color:#fff;border:1px solid #fff;border-radius:3px;padding:6px;position:absolute;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{pointer-events:none;content:"";background:0 0;border:6px solid #0000;position:absolute}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{margin-left:-6px;left:50%}.leaflet-tooltip-top:before{border-top-color:#fff;margin-bottom:-12px;bottom:0}.leaflet-tooltip-bottom:before{border-bottom-color:#fff;margin-top:-12px;margin-left:-6px;top:0}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{margin-top:-6px;top:50%}.leaflet-tooltip-left:before{border-left-color:#fff;margin-right:-12px;right:0}.leaflet-tooltip-right:before{border-right-color:#fff;margin-left:-12px;left:0}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.geozones-page{box-sizing:border-box;width:100%;height:calc(100vh - 64px);min-height:calc(100vh - 64px);padding:var(--space-3);gap:var(--space-3);grid-template-rows:auto minmax(0,1fr);display:grid;position:relative;overflow:hidden}.geozones-page-header{align-items:center;gap:var(--space-4);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.geozones-page-header>div:first-child{min-width:0}.geozones-eyebrow{display:none}.geozones-page-header h1{font-size:var(--font-size-xl);color:var(--color-text);margin:0}.geozones-page-header .page-description{display:none}.geozones-header-actions{justify-content:flex-end;align-items:center;gap:var(--space-2);grid-area:1/3;display:flex}.geozones-view-tabs{z-index:3;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:fit-content;box-shadow:var(--shadow-sm);margin:0;padding:3px;display:inline-flex;position:absolute;top:0;left:50%;transform:translate(-50%)}.geozones-view-tabs button{border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;padding:8px 14px;font-weight:700}.geozones-view-tabs span{color:var(--color-text-muted);margin-left:6px;font-size:11px}.geozones-workspace{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);width:100%;min-width:0;height:100%;min-height:0;box-shadow:var(--shadow-sm);grid-template-columns:260px minmax(0,1fr);display:grid;overflow:hidden}.geozones-explorer{border-right:1px solid var(--color-border);background:var(--color-surface-raised);flex-direction:column;min-width:0;min-height:0;display:flex}.geozones-explorer-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:15px 16px 12px;display:flex}.geozones-explorer-head>div{gap:3px;display:grid}.geozones-explorer-head strong{font-size:14px}.geozones-explorer-head span{color:var(--color-text-muted);font-size:11px}.geozones-icon-action{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:30px;height:30px;color:var(--color-text);cursor:pointer;font-size:20px;line-height:1}.geozones-search{padding:12px 12px 8px}.geozones-search input,.geozones-filter-row select,.map-bulk-actions select{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:36px;color:var(--color-text);outline:none;padding:7px 10px}.geozones-search input:focus,.geozones-filter-row select:focus,.map-bulk-actions select:focus{border-color:var(--color-accent)}.geozones-filter-row{grid-template-columns:1fr 1fr;gap:8px;padding:0 12px 10px;display:grid}.geozones-filter-row select{min-width:0;font-size:12px}.geozones-group-tree{border-bottom:1px solid var(--color-border);padding:0 8px 8px}.tree-row{border-radius:var(--radius-sm);width:100%;min-height:34px;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:18px 16px minmax(0,1fr) auto;align-items:center;gap:7px;padding:5px 7px;display:grid}.tree-row:hover,.tree-row.active{background:var(--color-surface-accent)}.tree-row b{color:var(--color-text-muted);font-size:11px;font-weight:600}.tree-chevron{color:var(--color-text-muted);text-align:center}.tree-icon{color:var(--color-accent);text-align:center;font-size:13px}.tree-icon.muted{color:var(--color-text-muted)}.tree-color{border:1px solid var(--color-border);border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.geozones-list-toolbar{min-height:38px;color:var(--color-text-muted);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:8px;padding:7px 12px;font-size:11px;display:flex}.geozones-list-toolbar label{align-items:center;gap:7px;display:flex}.geozone-list{flex:1;min-height:0;overflow:auto}.geozone-item{border-bottom:1px solid var(--color-border);grid-template-columns:20px minmax(0,1fr) 30px;align-items:center;gap:5px;padding:5px 8px;display:grid}.geozone-item:hover,.geozone-item.selected{background:var(--color-surface-accent)}.geozone-select{margin-left:4px}.geozone-item-body{min-width:0;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:10px minmax(0,1fr);align-items:center;gap:9px;padding:7px 3px;display:grid}.geozone-color{border:1px solid var(--color-border);border-radius:50%;width:9px;height:9px;display:inline-block}.geozone-item-main{gap:2px;min-width:0;display:grid}.geozone-item-main strong,.geozone-item-main small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.geozone-item-main small{color:var(--color-text-muted);font-size:10px}.geozone-more{border-radius:var(--radius-sm);width:28px;height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0}.geozone-more:hover{background:var(--color-surface);color:var(--color-text)}.geozones-map-area{background:var(--color-surface);grid-template-rows:auto minmax(0,1fr) auto;min-width:0;min-height:0;display:grid}.geozones-map-toolbar{border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);z-index:2;justify-content:space-between;align-items:center;gap:10px;min-height:46px;padding:8px 12px;display:flex}.map-tool-group,.map-bulk-actions,.map-drawing-tools{align-items:center;gap:8px;display:flex}.map-context{font-size:12px;font-weight:700}.map-count{color:var(--color-text-muted);font-size:11px}.map-bulk-actions select{width:190px;min-height:32px;font-size:11px}.map-drawing-tools{flex-wrap:wrap}.map-drawing-tools button,.geozone-group-actions button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:30px;color:var(--color-text);cursor:pointer;padding:5px 9px;font-size:11px}.map-drawing-tools button.active,.map-drawing-tools button.primary{background:var(--color-surface-accent);border-color:var(--color-accent)}.geozones-map-canvas{min-height:0;position:relative}.geozones-drawing-toolbar{z-index:1000;border:1px solid var(--color-border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--color-surface-raised) 96%, transparent);width:min(430px,100% - 24px);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:9px;position:absolute;top:12px;left:12px}.drawing-toolbar-title{color:var(--color-text-muted);letter-spacing:.07em;margin:0 0 7px;font-size:9px;font-weight:800}.drawing-toolbar-tools{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;display:grid}.drawing-toolbar-tools button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:34px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;gap:7px;padding:5px 8px;font-size:11px;font-weight:600;display:inline-flex}.drawing-toolbar-tools button:hover{border-color:var(--color-border-strong);background:var(--color-surface-muted)}.drawing-toolbar-tools button.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-dark)}.drawing-tool-icon{border:2px solid;flex:0 0 13px;width:13px;height:13px;display:inline-block}.drawing-tool-icon.polygon{clip-path:polygon(50% 0,100% 35%,82% 100%,18% 100%,0 35%)}.drawing-tool-icon.circle{border-radius:50%}.drawing-tool-icon.corridor{background:currentColor;border-width:0;border-radius:999px;width:15px;height:6px}.drawing-tool-icon.rectangle{border-radius:2px}.drawing-toolbar-hint{border-top:1px solid var(--color-border);color:var(--color-text-muted);margin-top:7px;padding-top:7px;font-size:10px;line-height:1.35}.drawing-toolbar-actions{gap:6px;margin-top:7px;display:flex}.drawing-toolbar-actions button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:30px;color:var(--color-text);text-align:center;cursor:pointer;flex:1;padding:5px 9px;font-size:11px}.drawing-toolbar-actions .primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.geozone-map,.geozone-map .leaflet-map{width:100%;height:100%;min-height:0}.geozones-details{border-top:1px solid var(--color-border);background:var(--color-surface-raised);grid-template-columns:minmax(220px,1fr) minmax(150px,.9fr) auto;align-items:center;gap:16px;min-height:70px;padding:10px 14px;display:grid}.details-main{align-items:center;gap:10px;min-width:0;display:flex}.details-color{border:1px solid var(--color-border);border-radius:50%;width:12px;height:12px}.details-main div{gap:3px;min-width:0;display:grid}.details-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.details-main span{color:var(--color-text-muted);font-size:10px}.details-groups{flex-wrap:wrap;gap:5px;display:flex}.details-groups span{border:1px solid var(--color-border);border-radius:var(--radius-pill);color:var(--color-text-muted);padding:3px 7px;font-size:10px}.details-actions{gap:6px;display:flex}.details-placeholder{color:var(--color-text-muted);grid-column:1/-1;font-size:12px}.geozone-group-list{padding:5px}.geozone-group-card{border-radius:var(--radius-md);border:1px solid #0000;gap:7px;margin-bottom:4px;padding:10px;display:grid}.geozone-group-card:hover,.geozone-group-card.selected{border-color:var(--color-border);background:var(--color-surface-accent)}.geozone-group-main{width:100%;color:var(--color-text);text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;display:flex}.group-avatar{border-radius:var(--radius-md);color:#fff;place-items:center;width:30px;height:30px;font-size:12px;font-weight:800;display:grid}.geozone-group-main>span:last-child{gap:3px;min-width:0;display:grid}.geozone-group-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.geozone-group-main small{color:var(--color-text-muted);font-size:10px}.geozone-group-actions{flex-wrap:wrap;gap:5px;padding-left:40px;display:flex}.geozone-group-actions button.danger{color:var(--color-danger)}.empty-state{text-align:center;justify-items:center;gap:9px;padding:32px 18px;display:grid}.empty-state.compact{padding:28px 18px}.empty-state-title{font-weight:700}.empty-state-description{max-width:260px;color:var(--color-text-muted);font-size:11px;line-height:1.5}.list-message{color:var(--color-text-muted);text-align:center;padding:24px;font-size:12px}.geozone-form-grid{gap:var(--space-4);display:grid}.geozone-form-field{gap:var(--space-2);display:grid}.geozone-form-field>span{color:var(--color-text-muted);font-size:var(--font-size-sm);font-weight:600}.geozone-form-field input:not([type=checkbox]):not([type=color]),.geozone-form-field textarea{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;color:var(--color-text);padding:9px 10px}.geozone-form-field input[type=color]{width:48px;height:36px;padding:2px}.geozone-form-inline{align-items:flex-end;gap:28px;display:flex}.geozone-form-check-grid{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:7px;max-height:180px;padding:9px;display:grid;overflow:auto}.geozone-form-check-grid label{align-items:center;gap:7px;font-size:12px;display:flex}.geozone-form-note{border-radius:var(--radius-md);background:var(--color-surface-accent);color:var(--color-text-muted);padding:9px 10px;font-size:11px;line-height:1.45}.geozone-form-error{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-danger-soft);color:var(--color-danger);font-size:var(--font-size-sm)}.group-members-modal{gap:12px;display:grid}.geozone-members-list{gap:2px;max-height:430px;display:grid;overflow:auto}.geozone-members-list label{border-radius:var(--radius-sm);grid-template-columns:18px 10px minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;font-size:12px;display:grid}.geozone-members-list label:hover{background:var(--color-surface-accent)}.geozone-members-list small{color:var(--color-text-muted);font-size:10px}.muted{color:var(--color-text-muted)}.geozone-edit-handle{border:2px solid var(--color-surface-raised);border-radius:var(--radius-pill);background:var(--color-accent);box-shadow:var(--shadow-sm)}@media (width<=1100px){.geozones-workspace{grid-template-columns:330px minmax(0,1fr)}.geozones-details{grid-template-columns:1fr auto}.details-groups{display:none}}@media (width<=820px){.geozones-page{min-height:auto}.geozones-page-header{flex-direction:column;align-items:flex-start}.geozones-view-tabs{align-self:flex-start;position:static;transform:none}.geozones-workspace{grid-template-columns:1fr;height:auto;min-height:820px}.geozones-explorer{border-right:0;border-bottom:1px solid var(--color-border);min-height:390px;max-height:470px}.geozones-map-area{min-height:500px}.geozones-map-canvas,.geozone-map,.geozone-map .leaflet-map{min-height:430px}}@media (width<=560px){.geozones-header-actions{width:100%}.geozones-header-actions>*{flex:1}.geozones-filter-row{grid-template-columns:1fr}.geozones-map-toolbar{flex-direction:column;align-items:flex-start}.geozones-details{grid-template-columns:1fr}.details-actions{justify-content:flex-start}}.geozone-eye{border-radius:var(--radius-sm);width:24px;height:24px;color:var(--color-text-subtle);cursor:pointer;background:0 0;border:0;flex:0 0 24px;place-items:center;font-size:13px;display:grid}.geozone-eye:hover,.geozone-eye.visible{background:var(--color-accent-soft);color:var(--color-accent-dark)}.eye-icon{border:1.5px solid;border-radius:80% 20%;width:13px;height:8px;display:block;position:relative;transform:rotate(45deg)}.eye-icon:after{content:"";background:currentColor;border-radius:50%;width:4px;height:4px;position:absolute;top:1px;left:3px}.geozone-map-label{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--color-surface-raised) 94%, transparent);box-shadow:var(--shadow-sm);color:var(--color-text);padding:2px 6px;font-size:10px;font-weight:700}.geozone-map-label:before{display:none}.geozone-edit-handle,.geozone-insert-handle{border:2px solid var(--color-accent-dark);background:var(--color-surface-raised);border-radius:50%;box-shadow:0 0 0 1px #ffffffbf}.geozone-insert-handle{opacity:.7;border-width:1px}.drawing-width-control{color:var(--color-text-muted);grid-template-columns:1fr 90px;align-items:center;gap:8px;margin-top:7px;font-size:10px;font-weight:700;display:grid}.drawing-width-control input{min-height:28px;font-size:11px}.drawing-toolbar-actions{flex-wrap:wrap}.drawing-toolbar-actions button{min-width:76px}.geozones-workspace{grid-template-columns:260px minmax(0,1fr) 340px}.geozones-map-area{grid-template-rows:auto minmax(0,1fr);min-width:0}.geozones-editor{border-left:1px solid var(--color-border);background:var(--color-surface-raised);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.geozones-editor-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;min-height:58px;padding:12px 14px;display:flex}.geozones-editor-header>div{gap:3px;min-width:0;display:grid}.geozones-editor-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.geozones-editor-kicker{color:var(--color-text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:9px;font-weight:800}.geozones-editor-close{border-radius:var(--radius-sm);width:30px;height:30px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;flex:0 0 30px;font-size:20px;line-height:1}.geozones-editor-close:hover{background:var(--color-surface);color:var(--color-text)}.geozones-editor-form{flex:1;min-height:0;padding:14px;overflow:auto}.geozones-editor-section{border-bottom:1px solid var(--color-border);gap:12px;margin-bottom:16px;padding-bottom:16px;display:grid}.geozones-editor-section:last-of-type{border-bottom:0;margin-bottom:0}.geozones-editor-section-title{color:var(--color-text);letter-spacing:.04em;text-transform:uppercase;font-size:11px;font-weight:800}.editor-type-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.editor-type-button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:38px;color:var(--color-text);cursor:pointer;justify-content:center;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.editor-type-button:hover:not(:disabled){border-color:var(--color-border-strong);background:var(--color-surface-muted)}.editor-type-button.active{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent-dark)}.editor-type-button:disabled{opacity:.72;cursor:default}.geozones-editor-hint{border-radius:var(--radius-sm);background:var(--color-surface-accent);color:var(--color-text-muted);padding:9px 10px;font-size:10px;line-height:1.45}.editor-drawing-actions{grid-template-columns:1fr 1fr 1fr;gap:6px;display:grid}.editor-drawing-actions button{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);min-height:32px;color:var(--color-text);cursor:pointer;font-size:10px}.editor-drawing-actions button.primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent)}.editor-drawing-actions button:disabled{opacity:.45;cursor:default}.editor-opacity-field{flex:1;min-width:0}.editor-opacity-field input[type=range]{width:100%;padding:0}.geozones-editor-footer{border-top:1px solid var(--color-border);background:var(--color-surface-raised);justify-content:space-between;align-items:center;gap:8px;min-height:58px;padding:10px 14px;display:flex}.geozones-editor-footer-main{gap:7px;margin-left:auto;display:flex}.geozones-info{flex:1;min-height:0;padding:14px;overflow:auto}.geozones-info-hero{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);align-items:center;gap:10px;margin-bottom:14px;padding:10px;display:flex}.geozones-info-hero>div{gap:3px;min-width:0;display:grid}.geozones-info-hero strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.geozones-info-hero span:last-child{color:var(--color-text-muted);font-size:10px}.geozones-info-block{gap:7px;margin-bottom:16px;display:grid}.geozones-info-block>span{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:700}.geozones-info-block p{color:var(--color-text);margin:0;font-size:12px;line-height:1.5}.geozones-info-grid{grid-template-columns:1fr 1fr;gap:7px;margin-bottom:16px;display:grid}.geozones-info-grid>div{border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);gap:3px;padding:9px;display:grid}.geozones-info-grid span{color:var(--color-text-muted);font-size:9px}.geozones-info-grid strong{font-size:11px}.geozones-editor-empty{text-align:center;height:100%;color:var(--color-text-muted);place-content:center;justify-items:center;gap:8px;padding:24px;display:grid}.geozones-editor-empty strong{color:var(--color-text);font-size:13px}.geozones-editor-empty span{max-width:230px;font-size:11px;line-height:1.5}.geozones-editor-empty-icon{border:1px solid var(--color-border);border-radius:var(--radius-md);width:38px;height:38px;color:var(--color-accent);background:var(--color-surface);place-items:center;display:grid}@media (width<=1100px){.geozones-workspace{grid-template-columns:230px minmax(0,1fr) 300px}.geozones-details{display:none}}@media (width<=820px){.geozones-workspace{grid-template-columns:1fr}.geozones-explorer{border-right:0;border-bottom:1px solid var(--color-border);min-height:360px;max-height:440px}.geozones-map-area{min-height:500px}.geozones-editor{border-left:0;border-top:1px solid var(--color-border);min-height:520px}.geozones-editor-form{max-height:none}}.geozone-item{grid-template-columns:minmax(0,1fr) 28px;gap:6px}.geozone-item-body{grid-column:1}.geozone-eye{grid-area:1/2;justify-self:end}.geozones-eye-all{margin-left:auto}.geozone-select{display:none}.geozones-page{height:100%;min-height:0;padding:0;display:block;overflow:hidden}.geozones-workspace{box-shadow:none;background:var(--color-surface-muted);border:0;border-radius:0;display:block;position:absolute;inset:0;overflow:hidden}.geozones-map-area{background:var(--color-surface-muted);min-width:0;min-height:0;display:block;position:absolute;inset:0}.geozones-map-canvas{min-height:0;position:absolute;inset:0}.geozone-map,.geozone-map .leaflet-map{width:100%;height:100%}.geozones-explorer,.geozones-editor{top:var(--space-3);bottom:var(--space-3);z-index:var(--z-map-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-height:0;box-shadow:var(--shadow-sm);position:absolute}.geozones-explorer{left:var(--space-3);border-right:1px solid var(--color-border);width:330px;overflow:hidden}.geozones-editor{right:var(--space-3);border-left:1px solid var(--color-border);width:340px}.geozones-view-tabs{z-index:auto;align-self:flex-start;margin:0 12px 8px;position:static;transform:none}.geozones-view-tabs button{padding:7px 11px;font-size:11px}.geozones-map-actions{top:var(--space-3);right:calc(340px + var(--space-3) + var(--space-3));z-index:var(--z-map-panel);align-items:center;gap:7px;display:flex;position:absolute}.geozones-map-actions .button{min-height:var(--control-height-sm)}.geozones-map-error{top:calc(var(--space-3) + 52px);z-index:var(--z-map-panel);max-width:min(520px,100% - 40px);margin:0;position:absolute;left:50%;transform:translate(-50%)}.geozones-page .geozone-map .leaflet-control-zoom{display:none}@media (width<=1100px){.geozones-explorer,.geozones-editor{width:300px}.geozones-map-actions{right:calc(300px + var(--space-3) + var(--space-3))}}@media (width<=820px){.geozones-explorer{top:var(--space-2);left:var(--space-2);right:var(--space-2);width:auto;max-height:45%;bottom:auto}.geozones-editor{top:auto;left:var(--space-2);right:var(--space-2);bottom:var(--space-2);width:auto;max-height:45%}.geozones-map-actions{top:calc(45% + 10px);left:var(--space-2);right:auto}}.geozones-map-area{z-index:0;width:100%;height:100%;display:block;position:absolute;inset:0}.geozones-map-canvas{width:100%;height:100%;min-height:0;position:absolute;inset:0}.geozone-map{position:absolute;inset:0}.geozone-map .leaflet-container{width:100%;height:100%;position:absolute;inset:0}.geozones-page{width:100%;height:100%;min-height:0;padding:0;display:block;position:relative;overflow:hidden}.geozones-workspace{width:100%;min-width:0;height:100%;min-height:0;box-shadow:none;background:0 0;border:0;border-radius:0;display:block;position:absolute;inset:0;overflow:hidden}.geozones-map-area{z-index:0;background:var(--color-surface);width:100%;min-width:0;height:100%;min-height:0;display:block;position:absolute;inset:0}.geozones-map-toolbar{display:none}.geozones-map-canvas{z-index:0;width:100%;min-width:0;height:100%;min-height:0;position:absolute;inset:0}.geozone-map,.geozone-map .leaflet-map,.geozone-map .leaflet-container{width:100%;min-width:0;height:100%;min-height:0;position:absolute;inset:0}.geozones-explorer{z-index:var(--z-map-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:280px;min-width:280px;box-shadow:var(--shadow-md);position:absolute;top:12px;bottom:12px;left:12px;overflow:hidden}.geozones-editor{z-index:var(--z-map-panel);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:360px;min-width:360px;box-shadow:var(--shadow-md);position:absolute;top:12px;bottom:12px;right:12px;overflow:hidden}.geozones-view-tabs{width:auto;box-shadow:none;justify-content:center;align-self:stretch;margin:0 12px 8px;position:static;top:auto;left:auto;transform:none}.geozones-map-actions{z-index:calc(var(--z-map-panel) + 1);align-items:center;gap:7px;display:flex;position:absolute;top:12px;right:384px}.geozones-map-error{z-index:calc(var(--z-map-panel) + 2);max-width:min(520px,100% - 24px);position:absolute;top:62px;left:50%;transform:translate(-50%)}@media (width<=1100px){.geozones-explorer{width:250px;min-width:250px}.geozones-editor{width:320px;min-width:320px}.geozones-map-actions{right:344px}}@media (width<=820px){.geozones-explorer{width:auto;min-width:0;max-height:42%;inset:8px 8px auto}.geozones-editor{width:auto;min-width:0;max-height:48%;inset:auto 8px 8px}.geozones-map-actions{top:8px;right:8px}}.geozones-page,.geozones-workspace{height:calc(100vh - 64px);min-height:calc(100vh - 64px)}.geozones-catalog-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px;padding:0 12px 10px;display:grid}.geozones-catalog-actions .button{justify-content:center;width:100%;min-width:0}.geozones-catalog-actions>:only-child{grid-column:1/-1}@media (width<=820px){.geozones-catalog-actions{grid-template-columns:1fr}}.geozones-explorer{padding-top:0}.geozones-view-tabs{border:0;border-bottom:1px solid var(--color-border);border-radius:var(--radius-lg) var(--radius-lg) 0 0;background:var(--color-surface-muted);width:100%;box-shadow:none;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:0;display:grid;overflow:hidden}.geozones-view-tabs button{min-height:42px;color:var(--color-text-muted);background:0 0;border:0;border-radius:0;padding:8px 12px;font-size:11px;font-weight:700;position:relative}.geozones-view-tabs button+button{border-left:1px solid var(--color-border)}.geozones-view-tabs button.active{background:var(--color-surface-raised);color:var(--color-accent-dark);box-shadow:inset 0 -2px 0 var(--color-accent)}.geozones-view-tabs button:hover:not(.active){background:var(--color-surface);color:var(--color-text)}.geozones-explorer-head{border-bottom:0;padding:13px 14px 10px}.geozones-catalog-actions{padding-top:0}.geozones-explorer-head{min-height:34px;color:var(--color-text-muted);border-bottom:0;justify-content:space-between;align-items:center;min-height:34px;padding:7px 14px 6px;font-size:10px;display:flex}.geozones-explorer-head .geozones-icon-action{width:28px;height:28px;font-size:19px}.geozones-explorer-footer{border-top:1px solid var(--color-border);background:var(--color-surface-raised);flex:none;padding:8px 12px 10px}.geozones-export-button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-muted);width:100%;height:34px;color:var(--color-accent-dark);cursor:pointer;place-items:center;font-size:18px;font-weight:700;line-height:1;display:grid}.geozones-explorer-head span{font-size:12px}.geozones-icon-action{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent);box-shadow:var(--shadow-sm);font-weight:800}.geozones-icon-action:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.geozones-search input{min-height:40px;font-size:13px}.geozones-filter-row select{min-height:38px;font-size:12px}.geozones-list-toolbar{font-size:12px}.geozone-item-main strong{font-size:13px}.geozone-item-main small{font-size:11px}.geozone-eye{flex-basis:28px;width:28px;height:28px;font-size:14px}.geozones-export-button{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-text-on-accent);box-shadow:var(--shadow-sm);font-size:18px}.geozones-export-button:hover{background:var(--color-accent-dark);border-color:var(--color-accent-dark)}.geozones-view-tabs button{min-height:46px;padding:10px 14px;font-size:13px;font-weight:700}.geozones-view-tabs button.active{color:var(--color-text);box-shadow:inset 0 -2px 0 var(--color-accent)}.geozones-view-tabs span{margin-left:7px;font-size:12px;font-weight:600}.geozones-editor-empty .button{min-height:38px;margin-top:4px;padding-inline:14px;font-size:12px;font-weight:700}.notifications-page{box-sizing:border-box;width:100%;height:100%;overflow:hidden}.notifications-workspace{grid-template-columns:230px minmax(0,1fr);gap:12px;height:100%;display:grid;overflow:hidden}.notifications-explorer{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);min-width:0;box-shadow:var(--shadow-sm);flex-direction:column;display:flex;overflow:hidden}.notifications-explorer-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:12px;display:flex}.notifications-explorer-head div{gap:3px;display:grid}.notifications-explorer-head span{color:var(--color-text-muted);font-size:11px}.notifications-explorer-head button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;width:30px;height:30px;font-size:20px}.notifications-search{grid-template-columns:1fr 90px;gap:7px;padding:8px;display:grid}.notifications-search input,.notifications-search select,.notification-editor input,.notification-editor select,.notification-editor textarea{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;min-height:36px;color:var(--color-text);padding:7px 10px}.notification-list{overflow:auto}.notification-row{border:0;border-bottom:1px solid var(--color-border);text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;grid-template-columns:10px 1fr;gap:10px;padding:12px;display:grid}.notification-row:hover,.notification-row.selected{background:var(--color-surface-accent)}.notification-row span{gap:4px;min-width:0;display:grid}.notification-row small{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;overflow:hidden}.notification-dot{border:2px solid;border-radius:50%;width:8px;height:8px;margin-top:4px}.notification-dot.info{color:var(--color-accent)}.notification-dot.warning{color:var(--color-warning)}.notification-dot.critical{color:var(--color-danger)}.notification-empty{text-align:center;color:var(--color-text-muted);padding:30px;font-size:12px}.notifications-content{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);min-width:0;box-shadow:var(--shadow-sm);overflow:auto}.notification-error{border:1px solid var(--color-danger);border-radius:var(--radius-md);color:var(--color-danger);margin:12px;padding:10px;font-size:12px}.notification-details,.notification-editor{padding:16px}.notification-details header,.notification-editor header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex}.notification-details h1,.notification-editor h1{margin:8px 0 4px;font-size:22px}.notification-details p{color:var(--color-text-muted);margin:0}.notification-details header>div:last-child,.notification-editor header>div:last-child{gap:7px;display:flex}.notification-details button,.notification-editor header button,.notification-placeholder button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:34px;color:var(--color-text);cursor:pointer;padding:6px 11px}.notification-details button.primary,.notification-editor button.primary,.notification-placeholder button{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent)}.notification-details .danger{color:var(--color-danger)}.status-badge{font-size:11px}.status-badge.active{color:var(--color-success)}.status-badge.inactive{color:var(--color-text-muted)}.notification-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px;display:grid}.notification-cards article{border:1px solid var(--color-border);border-radius:var(--radius-md);gap:6px;padding:15px;display:grid}.notification-cards label,.notification-cards span{color:var(--color-text-muted);font-size:11px}.notification-placeholder{height:100%;color:var(--color-text-muted);place-content:center;justify-items:center;gap:10px;display:grid}.notification-placeholder strong{color:var(--color-text);font-size:20px}.editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.editor-grid section{border:1px solid var(--color-border);border-radius:var(--radius-md);align-content:start;gap:10px;padding:15px;display:grid}.editor-grid h3{margin:0 0 4px;font-size:14px}.editor-grid label{color:var(--color-text-muted);gap:6px;font-size:11px;display:grid}.editor-grid textarea{resize:vertical;min-height:80px}.condition-card{background:var(--color-surface-accent);border-radius:var(--radius-md);gap:8px;padding:10px;display:grid}.condition-card span{color:var(--color-text-muted);font-size:11px}.schedule-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:7px;display:grid}.action-check{align-items:center;gap:8px;display:flex!important}.action-check input{width:auto!important;min-height:auto!important}.notifications-content button:disabled{opacity:.6}@media (width<=900px){.notifications-workspace{grid-template-columns:230px minmax(0,1fr)}.editor-grid,.notification-cards{grid-template-columns:1fr}}.scope-editor-section{grid-column:1/-1}.scope-editor-title{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.scope-editor-title h3{margin:0 0 4px}.scope-editor-title span{color:var(--color-text-muted);font-size:11px;line-height:1.4;display:block}.scope-editor-title>strong{color:var(--color-accent);white-space:nowrap;font-size:11px}.scope-group{gap:6px;margin-top:10px;display:grid}.scope-heading{font-weight:600;color:var(--color-text)!important;font-size:11px!important}.scope-check{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);align-items:center;gap:8px;padding:7px 9px;color:var(--color-text)!important;font-size:12px!important;display:flex!important}.scope-check:hover{background:var(--color-surface-accent)}.scope-check input{width:auto!important;min-height:auto!important}.scope-check small{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;margin-left:auto;font-size:10px;overflow:hidden}.scope-empty{color:var(--color-text-muted);padding:5px;font-size:11px}.scope-advanced{border-top:1px solid var(--color-border);margin-top:10px;padding-top:10px}.scope-advanced summary{cursor:pointer;color:var(--color-text-muted);font-size:11px}.scope-device-list{gap:6px;max-height:180px;margin-top:8px;display:grid;overflow:auto}@media (width<=900px){.scope-editor-section{grid-column:auto}.scope-editor-title{display:grid}}.notifications-page{flex-direction:column;gap:12px;display:flex}.notifications-header{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);box-shadow:var(--shadow-sm);justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.notifications-header>div:first-child{gap:3px;display:grid}.notifications-header strong{font-size:16px}.notifications-header span{color:var(--color-text-muted);font-size:11px}.notifications-tabs{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);gap:4px;padding:3px;display:flex}.notifications-tabs button{min-height:32px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:7px;padding:5px 11px;font-size:12px}.notifications-tabs button.active{background:var(--color-surface-accent);color:var(--color-text);font-weight:600}.notifications-tabs b{background:var(--color-danger);min-width:17px;height:17px;color:var(--color-text-on-accent);border-radius:9px;justify-content:center;align-items:center;margin-left:5px;font-size:10px;display:inline-flex}.notifications-rules-workspace{flex:1;min-height:0;overflow:hidden}.notifications-center{flex:1;grid-template-columns:360px minmax(0,1fr);gap:12px;min-height:0;display:grid;overflow:hidden}.notification-center-list,.notification-center-detail{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);min-width:0;box-shadow:var(--shadow-sm);overflow:hidden}.notification-center-list{flex-direction:column;display:flex}.notification-center-list-head{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:10px;padding:13px;display:flex}.notification-center-list-head div{gap:3px;display:grid}.notification-center-list-head span{color:var(--color-text-muted);font-size:10px}.notification-center-list-head button{color:var(--color-accent);cursor:pointer;background:0 0;border:0;font-size:11px}.notification-center-row{border:0;border-bottom:1px solid var(--color-border);text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;grid-template-columns:10px 1fr;gap:10px;padding:12px;display:grid}.notification-center-row:hover,.notification-center-row.selected{background:var(--color-surface-accent)}.notification-center-row.unread{background:color-mix(in srgb,var(--color-surface-accent) 45%,transparent)}.notification-center-row>span{gap:4px;min-width:0;display:grid}.notification-center-row small,.notification-center-row em{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-style:normal;overflow:hidden}.notification-center-empty{text-align:center;color:var(--color-text-muted);place-items:center;gap:6px;padding:40px 20px;display:grid}.notification-center-empty strong{color:var(--color-text);font-size:13px}.notification-center-empty span{font-size:11px;line-height:1.5}.notification-center-detail{padding:18px;overflow:auto}.notification-center-detail>header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex}.notification-center-detail h1{margin:8px 0 5px;font-size:22px}.notification-center-detail p{color:var(--color-text-muted);margin:0;font-size:13px}.notification-center-detail time{color:var(--color-text-muted);white-space:nowrap;font-size:10px}.notification-event-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;display:grid}.notification-event-grid article{border:1px solid var(--color-border);border-radius:var(--radius-md);gap:5px;padding:12px;display:grid}.notification-event-grid label{color:var(--color-text-muted);font-size:9px}.notification-event-grid strong{font-size:12px}.notification-event-grid span{color:var(--color-text-muted);font-size:10px}.notification-event-details{border:1px solid var(--color-border);border-radius:var(--radius-md);margin-top:12px;padding:13px}.notification-event-details h3{margin:0 0 9px;font-size:12px}.notification-event-details pre{border-radius:var(--radius-md);background:var(--color-surface-accent);margin:0;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;overflow:auto}.notification-center-actions{gap:8px;margin-top:14px;display:flex}.notification-center-actions button{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);min-height:34px;color:var(--color-text);cursor:pointer;padding:6px 11px}.notification-center-actions button.primary{background:var(--color-accent);color:var(--color-text-on-accent);border-color:var(--color-accent)}.notification-center-placeholder{height:100%;color:var(--color-text-muted);place-content:center;justify-items:center;gap:7px;display:grid}.notification-center-placeholder strong{color:var(--color-text);font-size:18px}.notification-center-placeholder span{font-size:11px}@media (width<=1000px){.notifications-header{flex-direction:column;align-items:flex-start}.notification-center{grid-template-columns:300px minmax(0,1fr)}.notification-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.notification-center{grid-template-columns:1fr}.notification-center-detail{display:none}.notifications-tabs{width:100%}.notifications-tabs button{flex:1}}.notification-center{box-sizing:border-box;flex:auto;grid-template-rows:minmax(0,1fr);grid-template-columns:360px minmax(0,1fr);gap:12px;width:100%;height:100%;min-height:0;display:grid;overflow:hidden}.notification-center-list{height:100%;min-height:0;overflow:hidden}.notification-center-detail{box-sizing:border-box;height:100%;min-height:0}.notification-center-filters{border-bottom:1px solid var(--color-border);background:var(--color-surface);padding:9px}.notification-filter-tabs{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);grid-template-columns:1fr 1fr;gap:3px;margin-bottom:7px;padding:3px;display:grid}.notification-filter-tabs button{min-height:28px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;font-size:10px}.notification-filter-tabs button.active{background:var(--color-surface-accent);color:var(--color-text);font-weight:600}.notification-filter-tabs b{color:var(--color-danger);margin-left:4px;font-size:9px}.notification-filter-row{grid-template-columns:minmax(0,1fr) 112px;gap:6px;display:grid}.notification-filter-row input,.notification-filter-row select{box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);width:100%;height:30px;color:var(--color-text);padding:5px 8px;font-size:10px}.notification-center-results{min-height:0;overflow:auto}.notification-center-row{padding:11px 12px}.notification-center-row.unread,.notification-center-row.selected{box-shadow:inset 3px 0 0 var(--color-accent)}.notification-detail-title{justify-content:space-between;align-items:flex-start;gap:18px;margin-top:7px;display:flex}.notification-detail-title h1{margin:3px 0 0}.notification-detail-title time{padding-top:4px}.notification-severity{font-size:10px;font-weight:600;display:inline-flex}.notification-severity.critical{color:var(--color-danger)}.notification-severity.warning{color:var(--color-warning)}.notification-severity.info{color:var(--color-accent)}.notification-event-details{background:var(--color-surface)}.notification-section-head{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.notification-section-head h3{margin:0;font-size:13px}.notification-section-head span{color:var(--color-text-muted);font-size:10px}.notification-value-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.notification-value-grid article{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-raised);gap:4px;padding:10px 11px;display:grid}.notification-value-grid label{color:var(--color-text-muted);font-size:9px}.notification-value-grid strong{font-size:12px;font-weight:600}@media (width<=1000px){.notification-value-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=700px){.notification-filter-row,.notification-value-grid{grid-template-columns:1fr}}.notification-center{align-items:stretch}.notification-center-list{flex-direction:column;height:100%;min-height:0;display:flex}.notification-center-results{flex:auto;min-height:0;overflow:auto}.notification-center-detail{height:100%;min-height:0;padding:0;overflow:hidden}.notification-detail-stack{grid-template-rows:auto minmax(0,1fr);gap:10px;height:100%;min-height:0;display:grid;overflow:hidden}.notification-current,.notification-history{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-raised);min-height:0;overflow:auto}.notification-current{padding:18px}.notification-current>header{border-bottom:1px solid var(--color-border);padding-bottom:14px}.notification-history{flex-direction:column;display:flex}.notification-history-head{border-bottom:1px solid var(--color-border);background:var(--color-surface);justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;display:flex}.notification-history-head div{gap:3px;display:grid}.notification-history-head strong{font-size:13px}.notification-history-head span{color:var(--color-text-muted);font-size:10px}.notification-history-head>span{background:var(--color-surface-accent);border-radius:10px;place-items:center;min-width:20px;height:20px;display:grid}.notification-history-list{min-height:0;overflow:auto}.notification-history-row{border:0;border-bottom:1px solid var(--color-border);text-align:left;width:100%;color:var(--color-text);cursor:pointer;background:0 0;grid-template-columns:10px minmax(0,1fr) auto;align-items:center;gap:9px;padding:10px 14px;display:grid}.notification-history-row:hover{background:var(--color-surface-accent)}.notification-history-row span{gap:3px;min-width:0;display:grid}.notification-history-row strong{font-size:11px}.notification-history-row small{color:var(--color-text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:9px;overflow:hidden}.notification-history-row b{color:var(--color-accent);font-size:9px}.notification-history-empty{text-align:center;color:var(--color-text-muted);padding:24px;font-size:10px}@media (width<=700px){.notification-detail-stack{grid-template-rows:auto minmax(160px,1fr)}.notification-center-detail{overflow:auto}.notification-detail-stack{height:auto}.notification-current{overflow:visible}.notification-history{min-height:180px}}.notifications-page{box-sizing:border-box;height:calc(100vh - 96px);min-height:calc(100vh - 96px)}.notifications-center{height:100%;min-height:0}@media (width<=900px){.notifications-page{height:calc(100vh - 92px);min-height:calc(100vh - 92px)}}.notification-center-list-head{padding:14px}.notification-center-list-head strong{font-size:15px}.notification-center-list-head span{font-size:11px}.notification-center-list-head button{font-size:12px}.notification-filter-tabs button{font-size:11px}.notification-filter-tabs b{font-size:10px}.notification-filter-row input,.notification-filter-row select{height:32px;font-size:11px}.notification-center-row{grid-template-columns:11px minmax(0,1fr);padding:13px 12px}.notification-center-row strong{font-size:13px}.notification-center-row small{font-size:11px}.notification-center-row em{font-size:10px}.notification-dot{width:8px;height:8px}.notification-current{min-height:0;overflow:auto}.notification-history{min-height:0}.notification-editor header{align-items:center;padding-bottom:10px}.notification-editor h1{margin:4px 0 0;font-size:18px}.notification-editor header span{font-size:10px}.editor-grid{gap:10px;margin-top:10px}.editor-grid section{gap:7px;padding:11px}.editor-grid h3{margin-bottom:2px;font-size:12px}.editor-grid label{gap:4px;font-size:10px}.notification-editor input,.notification-editor select{min-height:30px;padding:5px 8px;font-size:11px}.notification-editor textarea{min-height:54px;padding:6px 8px;font-size:11px}.editor-grid .scope-editor-section{max-height:370px;overflow:hidden auto}.scope-editor-title{z-index:2;background:var(--color-surface-raised);padding-bottom:6px;position:sticky;top:-11px}.scope-group{gap:5px;max-height:105px;margin-top:7px;padding-right:3px;overflow:hidden auto}.scope-advanced{margin-top:7px;padding-top:7px}.condition-card{gap:6px;padding:8px}.schedule-row{gap:5px}.action-check{padding:2px 0}.notification-editor{padding:12px 14px}.editor-grid{grid-template-rows:auto minmax(250px,1fr) auto auto;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;margin-top:10px}.scope-editor-section{grid-area:2/1/auto/-1;min-height:250px;max-height:none!important;overflow:hidden!important}.editor-main-fields{grid-template-columns:minmax(0,1fr) 180px;align-items:start;gap:8px;display:grid}.editor-grid label{font-size:11px}.notification-editor input,.notification-editor select{min-height:34px;font-size:12px}.notification-editor textarea{font-size:12px}.editor-actions-section{align-content:start}.editor-actions-section .action-check{padding:5px 0;font-size:12px!important}.scope-group{max-height:155px}.scope-editor-section .scope-group{overflow-y:auto}.scope-check{padding:6px 9px;font-size:12px!important}.scope-check small{font-size:11px}.scope-advanced{margin-top:8px}.scope-device-list{max-height:130px}.editor-grid{grid-template-rows:auto minmax(300px,1fr) auto auto;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:start}.editor-main-fields{grid-template-rows:auto auto;grid-template-columns:150px minmax(0,1fr);gap:7px 10px}.editor-main-fields label:nth-child(2){grid-area:1/2/span 2}.editor-main-fields label:first-child{grid-area:1/1}.editor-main-fields label:last-child{grid-area:2/1}.editor-main-fields textarea{height:76px!important;min-height:76px!important}.scope-editor-section{grid-area:2/1/auto/-1}.editor-actions-section{min-height:96px}.editor-actions-section .action-check{margin-right:24px;display:inline-flex}.editor-suppression-section{min-height:118px}.editor-grid{grid-template-rows:auto auto auto minmax(320px,1fr);grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);align-items:start;gap:10px;height:100%}.editor-main-section{grid-area:1/1}.editor-actions-section{grid-area:1/2}.editor-suppression-section{grid-area:2/1}.editor-grid>section:not(.scope-editor-section):not(.editor-main-section):not(.editor-actions-section):not(.editor-schedule-section):not(.editor-suppression-section){grid-area:2/2}.editor-schedule-section{grid-area:3/2}.editor-suppression-section{grid-row:2/span 2}.scope-editor-section{grid-area:4/1/auto/-1;height:100%;min-height:320px;max-height:none!important;overflow:hidden!important}.editor-grid{grid-template-rows:auto auto auto minmax(0,1fr)}.scope-editor-section{height:100%;min-height:0;margin-bottom:0}.notification-editor>header{flex:none}.notification-editor .scope-editor-section{box-sizing:border-box;height:100%;min-height:0}.notification-editor,.notification-editor>.editor-grid{height:auto;min-height:0}.scope-editor-section{height:auto;min-height:320px;overflow:visible!important}.scope-editor-section .scope-group{max-height:155px;overflow-y:auto}.scope-editor-section .scope-device-list{max-height:130px;overflow-y:auto}.scope-editor-section{min-height:430px}.scope-editor-section .scope-group{max-height:180px}.scope-editor-section .scope-device-list{max-height:160px}.notification-editor{box-sizing:border-box;flex-direction:column;height:100%;min-height:0;display:flex}.notification-editor>.editor-grid{flex:auto;grid-template-rows:auto auto auto minmax(430px,1fr);height:100%;min-height:0}.notification-editor>.editor-grid>.scope-editor-section{box-sizing:border-box;height:100%;min-height:430px;max-height:none!important;overflow:hidden!important}.notification-editor>.editor-grid>.scope-editor-section .scope-group{max-height:180px;overflow-y:auto}.notification-editor>.editor-grid>.scope-editor-section .scope-device-list{max-height:160px;overflow-y:auto}.notifications-content{flex-direction:column;min-height:0;display:flex}.notification-editor{flex:auto;min-height:0}.notifications-rules-workspace{height:100%;min-height:0}.notifications-content{height:100%;min-height:0;overflow:hidden}.notification-editor>.editor-grid>.scope-editor-section{height:100%;min-height:0}.notifications-page{flex-direction:column;min-height:0;display:flex}.notifications-header{flex:none}.notifications-rules-workspace{flex:auto;height:auto;min-height:0}.notifications-workspace,.notifications-content{min-height:0}.notification-editor>.editor-grid{flex:auto;height:100%;min-height:0}
