:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-sans:"Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg:#101827;--bg-elevated:#182538;--surface:#182538;--surface-overlay:#182538f0;--bg-hover:#22344d;--text:#f3f6fa;--text-muted:#b8c5d3;--border:#8596a9;--accent:#ff8a50;--selection-bg:#44291f;--focus:#84bfff;--brand:#f34c09;--brand-text:#0c1d30;--btn-primary-bg:#f3f6fa;--btn-primary-text:#0c1d30;--btn-danger-bg:#a62532;--btn-danger-text:#fff;--status-success-fg:#97deb4;--status-success-bg:#173229;--status-warning-fg:#ffd17b;--status-warning-bg:#392b17;--status-error-fg:#ffa9b0;--status-error-bg:#3a222c;--status-info-fg:#9acbff;--status-info-bg:#1a304c;--header-h:56px;--sidebar-w:420px;font-family:var(--font-sans);font-size:16px}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f5f7fa;--bg-elevated:#fff;--surface:#fff;--surface-overlay:#fffffff2;--bg-hover:#e9eef5;--text:#0c1d30;--text-muted:#536477;--border:#788999;--accent:#a83208;--selection-bg:#fff0e9;--focus:#005fcc;--brand:#f34c09;--brand-text:#0c1d30;--btn-primary-bg:#0c1d30;--btn-primary-text:#fff;--btn-danger-bg:#a62532;--btn-danger-text:#fff;--status-success-fg:#17613d;--status-success-bg:#e9f6ee;--status-warning-fg:#805000;--status-warning-bg:#fff3d6;--status-error-fg:#a62532;--status-error-bg:#fdecef;--status-info-fg:#174f87;--status-info-bg:#eaf3ff}*,:before,:after{box-sizing:border-box}html,body,#root{background:var(--bg);height:100%;color:var(--text);font-family:var(--font-sans);margin:0;padding:0;font-size:1rem;font-weight:400;line-height:1.5rem}:focus-visible{outline:2px solid var(--focus);outline-offset:2px}p a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.screen-title{letter-spacing:-.015em;margin:0 0 .75rem;font-size:2rem;font-weight:700;line-height:2.5rem}.section-title{letter-spacing:-.01em;margin:0 0 .75rem;font-size:1.5rem;font-weight:700;line-height:2rem}.card-title,.panel-title{margin:0 0 .5rem;font-size:1.125rem;font-weight:700;line-height:1.625rem}.stat-value{font-variant-numeric:tabular-nums;margin:0;font-size:1.75rem;font-weight:700;line-height:2.25rem}.tabular,.num,td[data-numeric=true],th[data-numeric=true]{font-variant-numeric:tabular-nums;text-align:right}.chart-axis{color:var(--text-muted);font-size:.75rem;font-weight:400;line-height:1rem}.chart-axis-label{color:var(--text);font-size:.75rem;font-weight:600;line-height:1rem}.app-shell{flex-direction:column;height:100dvh;display:flex;overflow:hidden}.app-header{--surface:#fff;--bg:#f5f7fa;--bg-hover:#e9eef5;--text:#0c1d30;--text-muted:#536477;--border:#788999;--accent:#a83208;--selection-bg:#fff0e9;--focus:#005fcc;--status-success-fg:#17613d;--status-success-bg:#e9f6ee;--status-warning-fg:#805000;--status-warning-bg:#fff3d6;--status-error-fg:#a62532;--status-error-bg:#fdecef;--status-info-fg:#174f87;--status-info-bg:#eaf3ff;min-height:var(--header-h);background:var(--surface);color:var(--text);border-bottom:1px solid #dbe3eb;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;padding:.5rem 1.25rem;display:flex;box-shadow:0 1px 3px #0c1d3014}.app-brand{flex-wrap:wrap;align-items:center;gap:.75rem;padding:.125rem 0;display:flex}.app-title{letter-spacing:-.015em;color:var(--text);align-items:center;margin:0;font-size:1.25rem;font-weight:800;line-height:1.75rem;display:flex}.app-logo{width:156px;height:auto;display:block}.app-subtitle{color:var(--text-muted);border-left:1px solid #dbe3eb;padding-left:.75rem;font-size:.75rem;font-weight:600;line-height:1rem}.header-actions{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.header-link{border:1px solid var(--border);min-height:2.25rem;color:var(--text);background:var(--surface);border-radius:6px;align-items:center;padding:.375rem .75rem;font-size:.875rem;font-weight:600;line-height:1.25rem;text-decoration:none;display:inline-flex}.header-link:hover{background:var(--bg-hover)}.header-link[aria-current=page]{background:var(--selection-bg);border-color:var(--accent);box-shadow:inset 0 -2px 0 var(--accent)}.health-badge{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.375rem;font-size:.75rem;font-weight:400;line-height:1rem;display:inline-flex}.health-dot{border-radius:999px;flex-shrink:0;width:.5rem;height:.5rem}.health-dot--loading{background:var(--border)}.health-dot--ok{background:var(--status-success-fg)}.health-dot--degraded{background:var(--status-warning-fg)}.health-dot--offline{background:var(--status-error-fg)}.health-label{color:var(--text);font-weight:600}.health-mock-tag{border:1px solid var(--border);background:var(--status-info-bg);color:var(--status-info-fg);border-radius:4px;padding:.125rem .4375rem;font-size:.75rem;font-weight:600;line-height:1rem}.disclaimer{background:var(--surface);border-bottom:1px solid var(--border);color:var(--text-muted);padding:.5rem 1rem;font-size:1rem;font-weight:400;line-height:1.5rem}.app-workspace{flex-direction:row;flex:1;min-height:0;display:flex}.map-pane{background:var(--bg);flex:1;min-width:0;min-height:0;position:relative}.map-skeleton,.map-placeholder{text-align:center;width:100%;height:100%;color:var(--text-muted);place-items:center;padding:1.5rem;font-size:1rem;line-height:1.5rem;display:grid}.side-panel{width:var(--sidebar-w);background:var(--surface);border-left:1px solid var(--border);flex-direction:column;flex-shrink:0;min-height:0;display:flex}.panel-nav{border-bottom:1px solid var(--border);background:var(--bg);display:flex}.panel-tab{min-height:2.625rem;color:var(--text-muted);overflow-wrap:break-word;text-align:center;border-bottom:3px solid #0000;flex:1;justify-content:center;align-items:center;padding:.5rem .625rem;font-size:.875rem;font-weight:600;line-height:1.25rem;text-decoration:none;display:flex}.panel-tab:hover{color:var(--text);background:var(--bg-hover)}.panel-tab[aria-current=page]{color:var(--text);background:var(--selection-bg);border-bottom-color:var(--accent)}.panel-body{flex:1;min-height:0;padding:1rem;overflow-y:auto}.panel-muted{color:var(--text-muted);overflow-wrap:break-word;margin:0;font-size:1rem;font-weight:400;line-height:1.5rem}.not-found{flex-direction:column;align-items:flex-start;gap:.75rem;padding:1.5rem 1rem;display:flex}.btn,.btn-link{cursor:pointer;border:1px solid #0000;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;min-height:2.5rem;padding:.5rem .875rem;font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.25rem;text-decoration:none;display:inline-flex}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary,.btn-link{background:var(--btn-primary-bg);color:var(--btn-primary-text)}.btn-secondary{background:var(--surface);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.btn-brand{background:var(--brand);color:var(--brand-text)}.btn-danger{background:var(--btn-danger-bg);color:var(--btn-danger-text)}.mode-switch{border:1px solid var(--border);background:var(--surface);border-radius:6px;display:inline-flex;overflow:hidden}.mode-switch-button{border:0;border-left:1px solid var(--border);min-height:2.25rem;color:var(--text);cursor:pointer;background:0 0;padding:.375rem .75rem;font-family:inherit;font-size:.875rem;font-weight:600;line-height:1.25rem}.mode-switch-button:first-child{border-left:0}.mode-switch-button:hover{background:var(--bg-hover)}.mode-switch-button[aria-pressed=true]{background:var(--selection-bg);color:var(--text);box-shadow:inset 0 -3px 0 var(--accent);font-weight:600}.mode-switch-button:focus-visible{outline:2px solid var(--focus);outline-offset:-2px}.field{flex-direction:column;gap:.375rem;display:flex}.field-label{color:var(--text);font-size:.875rem;font-weight:600;line-height:1.25rem}.field-input{border:1px solid var(--border);background:var(--surface);width:100%;min-height:2.5rem;color:var(--text);border-radius:6px;padding:.5rem .75rem;font-family:inherit;font-size:1rem;font-weight:400;line-height:1.5rem}.field-help{color:var(--text-muted);font-size:.75rem;line-height:1rem}.field-error{color:var(--status-error-fg);font-size:.875rem;font-weight:600;line-height:1.25rem}.filter-chip{border:1px solid var(--accent);background:var(--selection-bg);color:var(--text);overflow-wrap:break-word;border-radius:6px;align-items:center;gap:.375rem;padding:.25rem .625rem;font-size:.875rem;font-weight:600;line-height:1.25rem;display:inline-flex}.card{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:1rem}.data-table{border-collapse:collapse;width:100%;font-size:.875rem;font-weight:400;line-height:1.25rem}.data-table th{color:var(--text);text-align:left;border-bottom:1px solid var(--border);overflow-wrap:break-word;padding:.5rem .625rem;font-weight:600}.data-table td{border-bottom:1px solid var(--border);overflow-wrap:break-word;padding:.5rem .625rem}.data-table tr[aria-selected=true]{background:var(--selection-bg);box-shadow:inset 3px 0 0 var(--accent)}.status-banner{border:1px solid var(--border);border-radius:6px;align-items:flex-start;gap:.5rem;padding:.75rem;font-size:1rem;font-weight:400;line-height:1.5rem;display:flex}.status-banner--success{color:var(--status-success-fg);background:var(--status-success-bg);border-color:var(--status-success-fg)}.status-banner--warning{color:var(--status-warning-fg);background:var(--status-warning-bg);border-color:var(--status-warning-fg)}.status-banner--error{color:var(--status-error-fg);background:var(--status-error-bg);border-color:var(--status-error-fg)}.status-banner--info{color:var(--status-info-fg);background:var(--status-info-bg);border-color:var(--status-info-fg)}.map-view{width:100%;height:100%;position:relative}.map-canvas{width:100%;height:100%}.map-badge{z-index:2;pointer-events:none;flex-direction:column;gap:.375rem;max-width:min(22.5rem,100% - 1.5rem);display:flex;position:absolute;top:.75rem;left:.75rem}.map-badge-note,.map-badge-warning{background:var(--surface-overlay);border:1px solid var(--border);color:var(--text);overflow-wrap:break-word;border-radius:6px;padding:.375rem .625rem;font-size:.875rem;font-weight:400;line-height:1.25rem}.map-badge-warning{background:var(--status-warning-bg);border-color:var(--status-warning-fg);color:var(--status-warning-fg);font-weight:600}.map-legend{z-index:2;background:var(--surface-overlay);border:1px solid var(--border);max-width:calc(100% - 1.5rem);color:var(--text);overflow-wrap:break-word;pointer-events:none;border-radius:6px;padding:.5rem .75rem;font-size:.875rem;font-weight:400;line-height:1.25rem;position:absolute;bottom:1.75rem;left:.75rem}.map-legend-title{font-size:.875rem;font-weight:600;line-height:1.25rem}.map-legend-meta{color:var(--text)}.map-legend-coverage{color:var(--text-muted);font-size:.75rem;line-height:1rem}@media (max-width:899px){.screen-title{font-size:1.625rem;line-height:2.125rem}.app-logo{width:120px}.app-subtitle{display:none}.disclaimer{padding:.375rem .75rem;font-size:.75rem;line-height:1rem}.app-workspace{flex-direction:column}.map-pane{flex:none;height:45%}.side-panel{border-left:none;border-top:1px solid var(--border);flex:1;width:100%}}
