@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Geist+Mono:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";:root{--bg-primary:#0d1b2a;--bg-secondary:#1b2838;--bg-card:#172231;--bg-card-hover:#1e2d3d;--surface-raised:#1e1e2e;--surface-default:#16161e;--accent-orange:#e67e22;--accent-orange-light:#f39c12;--accent-orange-glow:#e67e224d;--accent-green:#2ecc71;--accent-red:#e74c3c;--accent-blue:#3498db;--accent-teal:#0d9488;--tech-purple:#9b59b6;--tech-teal:#1abc9c;--steel:#5a7a95;--status-critical:#8e44ad;--accent-primary:var(--accent-blue);--danger:var(--accent-red);--accent-route-selected:#5dade2;--publish-pill-pending:var(--accent-orange);--publish-pill-current:var(--text-secondary);--publish-pill-unpublished:var(--text-muted);--text-on-accent:#fff;--text-on-accent-dark:#1a1206;--status-pill-active:#2688d9;--status-pill-active-fg:#fff;--status-pill-inactive:#e6e6e6;--status-pill-inactive-fg:#464a53;--status-pill-hover:#5c9fd6;--text-primary:#fff;--text-secondary:#8899a6;--text-muted:#5c6b7a;--text-muted-lifted:#7d8fa0;--border-color:#2d3d4f;--border-accent:#3d4d5f;--shadow-card:0 4px 20px #0000004d;--shadow-glow:0 0 20px var(--accent-orange-glow);--touch-target-md:44px;--touch-target-sm:32px;--touch-target-lg:56px;--brand-navy:#001236;--brand-navy-deep:#000928;--brand-orange:#df6a15;--brand-orange-warm:#e67e22;--brand-orange-soft:#f39c12;--brand-sunset-pink:#8e3266;--brand-sunset-violet:#3a2560;--brand-navy-chrome:#0a1422;--shadow-lg:0 8px 32px #0006;--backdrop-color:#0d1b2ae6;--backdrop-blur:4px;--modal-shadow-stack:var(--shadow-card), var(--shadow-glow);--success:var(--accent-green);--warning:var(--accent-orange-light);--bg-hover:#ffffff0d;--bg-input:#1a2332;--text-disabled:var(--text-muted);--text-tertiary:#ffffff59;--sidebar-text:#ffffffb3;--border-primary:var(--border-color);--border-subtle:var(--border-accent);--border:var(--border-color);--bg-danger-subtle:#e74c3c1a;--bg-error-subtle:var(--bg-danger-subtle);--bg-success-subtle:#2ecc711a;--bg-warning-subtle:#e67e221a;--bg-info-subtle:#3498db1a;--bg-muted-subtle:#6b72801a;--text-info-subtle:#8fc7f2;--fs-xs:.75rem;--fs-sm:.875rem;--fs-md:.875rem;--fs-lg:1rem;--fs-h1:2rem;--fs-h2:1.5rem;--fs-h3:1.25rem;--fs-h4:1rem;--fs-body:.9375rem;--fs-micro:.65rem;--lh-tight:1.15;--lh-body:1.5;--lh-relaxed:1.7;--tracking-caps:.08em;--tracking-tight:-.01em;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif:"bagatela", "PT Serif", "Georgia", serif;--font-mono:"Geist Mono", "JetBrains Mono", "SF Mono", ui-monospace, Menlo, monospace;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-sm:var(--space-2);--space-md:var(--space-3);--cem-section-gap:var(--space-4);--cem-row-gap:var(--space-1);--cem-label-color:var(--text-secondary);--cem-value-color:var(--text-primary);--cem-section-heading-color:var(--text-muted);--cem-mono-font:var(--font-mono);--radius-xs:3px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--radius-2xl:16px;--radius-pill:999px;--z-map-overlay:1000;--z-overlay-drawer:1050;--z-modal:1100;--dashboard-icon-strip-width:64px;--dashboard-drawer-width:320px;--srlg-shared:#d92626;--srlg-alternative:#228ec3;--srlg-multi-select:#eea62b;--srlg-annotation-bg:#303541;--srlg-annotation-bg-hover:#3b414f;--srlg-annotation-text:#b3bbcc;--srlg-annotation-border:#454e5e;--srlg-type-duct-bg:#473515;--srlg-type-duct-text:#efbf6c;--srlg-type-duct-border:#6f5220;--srlg-type-bridge-bg:#183936;--srlg-type-bridge-text:#61d1c8;--srlg-type-bridge-border:#285d58;--srlg-type-mmr-bg:#251f47;--srlg-type-mmr-text:#9b8de2;--srlg-type-mmr-border:#382e6b;--srlg-type-landing-bg:#1c2b40;--srlg-type-landing-text:#7ca5de;--srlg-type-landing-border:#2b4364;--srlg-type-row-bg:#25351d;--srlg-type-row-text:#8ac76b;--srlg-type-row-border:#3c562e;--srlg-type-jb-bg:#472115;--srlg-type-jb-text:#e48767;--srlg-type-jb-border:#6f3420;--srlg-type-other-bg:#2f3237;--srlg-type-other-text:#9196a1;--srlg-type-other-border:#464a53;--pair-state-unassigned:#5c6370;--pair-state-assigned:#3473b2;--pair-state-reserved:#bd7f28;--pair-state-lit:#358d52;--pair-state-unavailable:#8d3535;--pair-state-faulty:#c32222;--pair-state-unknown:#464a53;--lit-status-pending:#9ca3af;--lit-status-validated:#16a34a;--lit-status-disputed:#d97706;--lit-status-retracted:#6b7280;--access-path-1:#269dd9;--access-path-2:#e88c30;--access-path-3:#39ac39;--access-path-4:#a347d1;--access-path-5:#d74242;--access-path-6:#d9d926;--access-path-7:#2eb8b8;--access-path-8:#d74273;--access-path-9:#34b288;--access-path-10:#5281e0;--access-path-11:#df9f20;--access-path-12:#bf40bf;--access-path-ungrouped:gray;--lit-segment-bg:#265926;--lit-segment-fg:#adebad;--dark-segment-bg:#333c4d;--dark-segment-fg:#9cabc9;--mixed-segment-bg:#6b572e;--mixed-segment-fg:#ebd6ad;--capacity-known-assigned:#39ac39;--capacity-known-assigned-bg:#244224;--capacity-known-unassigned:#999;--capacity-known-unassigned-bg:#383838;--capacity-unknown-share:#d99d26;--capacity-unknown-share-bg:#493e27;--latency-measured:#3b9b3b;--latency-modelled:#be9137;--dialog-overlay:#0009;--dialog-bg:var(--bg-card);--dialog-border:var(--border-color);--dialog-destructive-bg:#492727;--civil-regime-1:#39ac39;--civil-regime-2:#d99d26;--civil-regime-3:#3488b2;--civil-regime-fallback:#8c8c8c;--subsea-system-1:#2e5cb8;--subsea-system-2:#309191;--subsea-system-3:#d09725;--subsea-system-4:#be3737;--subsea-system-5:#8039c6;--subsea-system-6:#309159;--subsea-system-7:#bd7328;--subsea-system-8:#2e829e;--subsea-system-fallback:gray;--subsea-branching-unit:#a347d1;--lifecycle-active:#3398db;--lifecycle-planned:#c49331;--lifecycle-retired:#737b8c;--lifecycle-decommissioned:#8d3535;--gas-pipeline:#ff6b35;--oil-ngl-pipeline:#d35400;--lng-terminal:#2980b9;--coal-mine-boundary-fill:#2c2c2c4d;--coal-mine-boundary-stroke:#1a1a1a;--smelter-eaf:#00c1cf;--smelter-bf:#4a4a4a;--smelter-dri:#f39c12;--marketing-nav-gradient:linear-gradient(to bottom, #000928a6 0%, #00092800 100%);--marketing-hero-vignette-start:#0009288c;--marketing-hero-vignette-end:#000928d9;--marketing-hero-vignette:linear-gradient(135deg, #0009288c 0%, #00092800 45%, #00092880 100%);--marketing-glass-bg:#ffffff0a;--marketing-glass-border:#ffffff1f;--marketing-text-primary:#ffffffc7;--marketing-text-secondary:#ffffffc7;--marketing-text-muted:#ffffffa6;--marketing-divider:#ffffff0f;--marketing-card-bg:#0a1a3a;--marketing-card-border:#ffffff1a;--marketing-card-border-hover:#e67e2280;--marketing-orange-icon-bg:#e67e221f;--marketing-final-cta-overlay:linear-gradient(to bottom, #00123661 0%, #0012368c 100%);--mkt-container-max-width:1320px;--mkt-side-padding-mobile:20px;--mkt-side-padding-tablet:28px;--mkt-side-padding-desktop:40px;--mkt-section-padding-mobile:80px;--mkt-section-padding-tablet:110px;--mkt-section-padding-desktop:140px;--mkt-hero-cta-padding:160px;--mkt-h1-fluid-desktop:clamp(56px, 7.6vw, 124px);--mkt-h1-fluid-mobile:clamp(40px, 11vw, 64px);--mkt-h2-fluid-desktop:clamp(36px, 4.2vw, 64px);--mkt-h2-fluid-mobile:clamp(30px, 8vw, 42px);--mkt-blockquote-fluid-mobile:clamp(22px, 6vw, 32px);--mkt-body-fluid:clamp(16px, 1.4vw, 19px);--mkt-drawer-link-fontsize:22px;--mkt-drawer-link-padding:14px 0;--mkt-drawer-backdrop:#00092866;--mkt-drawer-bg:#000928f5;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}button,input,select,textarea,optgroup{font:inherit;color:inherit;line-height:inherit}option{background-color:var(--bg-secondary);color:var(--text-primary)}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;line-height:1.5;overflow-x:hidden}.app-container{min-height:100vh;display:flex;position:relative}.app-container:before{content:"";opacity:.15;z-index:-1;pointer-events:none;background-image:url(/background.png);background-position:50%;background-repeat:no-repeat;background-size:cover;background-attachment:fixed;width:100vw;min-width:100vw;height:100vh;min-height:100vh;position:fixed;top:0;left:0}@media (width<=900px){.power-overlay-panel{z-index:1000;border-radius:12px 12px 0 0!important;width:100%!important;max-height:50vh!important;position:fixed!important;inset:auto 0 0!important}}.leaflet-control-attribution{color:var(--text-muted)!important;font-size:11px!important}.main-content{z-index:1;flex-direction:column;flex:1;display:flex;position:relative;overflow:hidden}.header{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 2rem;display:flex}.header-title{font-size:1.5rem;font-weight:600}.header-subtitle{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.875rem;display:flex}.header-actions{gap:.75rem;display:flex}.btn{cursor:pointer;border:1px solid #0000;border-radius:6px;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background:var(--accent-orange);color:#fff;border-color:var(--accent-orange)}.btn-primary:hover{background:var(--accent-orange-light);box-shadow:var(--shadow-glow)}.btn-secondary{background:var(--bg-card);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.btn-secondary:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.btn-success{background:var(--success);color:#fff;border-color:var(--success)}.btn-success:hover{filter:brightness(1.1);box-shadow:var(--shadow-glow)}.btn-danger{background:var(--danger);color:#fff;border-color:var(--danger)}.btn-danger:hover{filter:brightness(1.1);box-shadow:var(--shadow-glow)}.btn-danger:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.btn-sm{border-radius:4px;padding:2px 8px;font-size:.75rem}.btn-xs{border-radius:4px;padding:1px 6px;font-size:.7rem}.btn-md{border-radius:6px;padding:.5rem .875rem;font-size:.875rem}.btn-icon{border-radius:6px;padding:.4rem;line-height:0}.btn-touch-md{min-height:var(--touch-target-md);min-width:var(--touch-target-md)}.btn-touch-sm{min-height:var(--touch-target-sm);min-width:var(--touch-target-sm)}.ui-tooltip-bubble{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-subtle);white-space:nowrap;z-index:1100;pointer-events:none;box-shadow:var(--shadow-card);border-radius:4px;margin-top:4px;padding:4px 8px;font-size:.75rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}.btn-lg{border-radius:8px;padding:1rem 2rem;font-size:1rem}.btn:disabled,.btn[aria-disabled=true]{background:var(--bg-card);color:var(--text-muted);border-color:var(--border-color);cursor:not-allowed;opacity:.6}.btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.btn-tab{color:var(--text-muted);background:0 0;border-bottom:2px solid #0000;border-radius:0;padding:8px 14px}.btn-tab:hover{color:var(--text-primary)}.btn-tab[aria-selected=true],.btn-tab.is-active{color:var(--accent-orange);border-bottom-color:var(--accent-orange)}.settings-nav .btn-tab[aria-selected=true],.settings-nav .btn-tab.is-active{background:var(--bg-warning-subtle);border-left:2px solid var(--accent-orange);border-bottom-color:#0000}.eyebrow-label{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-muted);font-weight:600;display:inline-block}.page-container{max-width:1400px;margin:0 auto;padding:1.5rem}.settings-nav{flex-direction:column;gap:2px;display:flex}.error{color:var(--danger);font-size:.875rem}.skeleton-row{background:linear-gradient(90deg, var(--bg-card) 25%, var(--bg-card-hover) 50%, var(--bg-card) 75%);background-size:200% 100%;border-radius:4px;height:1rem;animation:1.4s ease-in-out infinite skeleton-shimmer}@keyframes skeleton-shimmer{to{background-position:-200% 0}}.nav-label{font-size:var(--fs-sm);color:var(--text-primary);font-weight:500;display:inline-block}.climate-chart-wrap{width:100%;height:350px;min-height:0}.card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:12px;padding:1.5rem}.card-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.card-title{align-items:center;gap:.5rem;font-size:1rem;font-weight:600;display:flex}.card-title svg{color:var(--accent-orange)}.stat-card{background:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:1rem 1.25rem}.panel{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary)}.panel-secondary{border-radius:var(--radius-lg);background:var(--bg-secondary);padding:16px}.panel-card{border-radius:var(--radius-xl);box-shadow:var(--shadow-card);padding:20px}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem}.stat-value{font-size:1.75rem;font-weight:600;font-family:var(--font-mono);color:var(--accent-orange)}.stat-value span{font-size:1rem;font-weight:400;font-family:var(--font-mono);color:var(--text-secondary)}.stat-sub{color:var(--text-secondary);margin-top:.25rem;font-size:.75rem}.form-group{margin-bottom:1.25rem}.form-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:.5rem;font-size:.75rem;display:block}.form-input{background:var(--bg-card);border:1px solid var(--border-color);width:100%;color:var(--text-primary);border-radius:8px;padding:.75rem 1rem;font-family:JetBrains Mono,monospace;font-size:.9rem;transition:border-color .2s}.form-input:focus{border-color:var(--accent-orange)}.form-input-touch-md{min-height:var(--touch-target-md)}.form-input-touch-sm{min-height:var(--touch-target-sm)}.form-input:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.slider-container{padding:.5rem 0}.slider-header{justify-content:space-between;margin-bottom:.75rem;display:flex}.slider-label{color:var(--text-primary);font-size:.875rem}.slider-value{color:var(--accent-orange);font-size:.875rem;font-weight:600}.slider{background:var(--bg-primary);appearance:none;border-radius:3px;outline:none;width:100%;height:6px}.slider::-webkit-slider-thumb{appearance:none;background:var(--accent-orange);cursor:pointer;width:18px;height:18px;box-shadow:0 0 10px var(--accent-orange-glow);border-radius:50%;transition:transform .2s}.slider::-webkit-slider-thumb:hover{transform:scale(1.1)}.slider-range{color:var(--text-muted);justify-content:space-between;margin-top:.5rem;font-size:.75rem;display:flex}.priority-badge,.outcome-validated,.outcome-overridden,.outcome-disproved{font-size:var(--fs-xs);white-space:nowrap;border-radius:4px;padding:.15rem .5rem;font-weight:600;display:inline-block}.tabs{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;gap:.5rem;padding:.25rem;display:flex}.tab{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.5rem 1rem;font-size:.875rem;font-weight:500;transition:all .2s}.tab:hover{color:var(--text-primary)}.tab:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.tab.active{background:var(--accent-orange);color:#fff}.network-management-page{flex-direction:column;gap:1rem;padding:1.5rem;display:flex}.network-management-panel{flex:1;min-width:0}.workbench-site-context{padding:var(--space-2) var(--space-4);margin:0 var(--space-3) var(--space-3);position:relative}.workbench-site-context-label{font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);margin-bottom:var(--space-1)}.workbench-site-switch{justify-content:space-between;align-items:flex-start;gap:var(--space-2);width:100%;min-height:44px;padding:var(--space-2) var(--space-3);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);color:var(--text-primary);font-size:var(--fs-sm);text-align:left;cursor:pointer;display:flex}.workbench-site-switch-leading{background:var(--accent-orange);border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:.35rem}.workbench-site-switch-text{flex-direction:column;flex:1;gap:.125rem;min-width:0;display:flex}.workbench-site-sub{font-size:var(--fs-xs);color:var(--text-secondary);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.sites-pitch-toggle{border:1px solid var(--border-color);background:var(--bg-primary);min-height:44px;color:var(--text-secondary);cursor:pointer;border-radius:6px;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.875rem;display:inline-flex}.sites-pitch-toggle--on{border-color:var(--accent-orange);color:var(--accent-orange);background:#df6a1514}.sites-pitch-toggle:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.sites-pitch-star{min-width:44px;min-height:44px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;padding:.25rem;display:inline-flex}.sites-pitch-star--on{color:var(--accent-orange)}.sites-pitch-star:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.sites-pitch-star:disabled{cursor:wait;opacity:.6}.sites-pitch-empty{color:var(--text-primary)}.sites-hero-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}@media (width<=1280px){.sites-hero-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.sites-hero-grid{grid-template-columns:minmax(0,1fr)}}.create-site-field{border:1px solid var(--border-color);background:var(--bg-secondary);width:100%;color:var(--text-primary);border-radius:6px;padding:.625rem;font-size:.875rem}.create-site-field--narrow{width:150px}.create-site-location-fieldset{border:1px solid var(--border-color);border-radius:8px;margin:0;padding:.75rem 1rem 1rem}.create-site-location-legend{padding:0 .25rem;font-size:.875rem;font-weight:500}.create-site-location-modes{flex-wrap:wrap;gap:1rem;margin-bottom:.75rem;display:flex}.create-site-location-mode{cursor:pointer;align-items:center;gap:.375rem;min-height:44px;font-size:.875rem;display:inline-flex}.create-site-kmz-panel{flex-direction:column;gap:.5rem;display:flex}.create-site-kmz-input{display:none}.create-site-kmz-upload-btn{border:1px solid var(--accent-orange);min-height:44px;color:var(--accent-orange);cursor:pointer;background:#df6a1514;border-radius:6px;justify-content:center;align-items:center;gap:.375rem;padding:.5rem .75rem;font-size:.875rem;font-weight:600;display:inline-flex}.create-site-kmz-upload-btn:disabled{opacity:.6;cursor:wait}.create-site-kmz-upload-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.create-site-kmz-hint{color:var(--text-secondary);margin:0;font-size:.75rem;line-height:1.4}.create-site-kmz-error{color:var(--accent-red);white-space:pre-wrap;margin:0;font-size:.75rem}.create-site-kmz-preview{background:var(--bg-primary);border:1px solid var(--border-color);color:var(--text-secondary);border-radius:6px;flex-direction:column;gap:.125rem;padding:.5rem .75rem;font-size:.8125rem;display:flex}.create-site-secondary-btn{border:1px solid var(--border-color);cursor:pointer;color:var(--text-secondary);background:0 0;border-radius:6px;min-height:44px;padding:.625rem 1rem;font-size:.875rem}.create-site-secondary-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.workbench-site-switch:disabled{cursor:default;opacity:.85}.workbench-site-switch:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.workbench-site-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.workbench-site-menu{left:var(--space-4);right:var(--space-4);z-index:var(--z-overlay-drawer);margin-top:var(--space-1);max-height:320px;padding:var(--space-1);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-lg);position:absolute;overflow-y:auto;box-shadow:0 4px 16px #00000059}.workbench-site-option{width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md,6px);color:var(--text-primary);font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:none;display:block}.workbench-site-option:hover{background:var(--bg-hover)}.workbench-site-option:focus-visible{outline:2px solid var(--accent-orange);outline-offset:-2px}.workbench-site-option.selected{color:var(--accent-orange);font-weight:600}.panel-destinations{gap:var(--space-1);flex-direction:column;display:flex}.panel-destinations--tabs{gap:var(--space-2);flex-flow:wrap}.panel-destination{align-items:center;gap:var(--space-3);min-height:44px;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-family:var(--font-sans);font-size:var(--fs-sm);text-align:left;cursor:pointer;background:0 0;border:none;border-left:2px solid #0000;transition:all .2s;display:flex}.panel-destinations--tabs .panel-destination{border-bottom:2px solid #0000;border-left:none}.panel-destination:hover:not(.disabled){background:var(--bg-card-hover);color:var(--text-primary)}.panel-destination.active{background:var(--bg-card);border-left-color:var(--accent-orange);color:var(--text-primary);font-weight:600}.panel-destinations--tabs .panel-destination.active{border-left-color:#0000;border-bottom-color:var(--accent-orange)}.panel-destination.disabled{color:var(--text-muted);cursor:default}.panel-destination:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.panel-destination-dot{border-radius:var(--radius-pill);background:currentColor;flex-shrink:0;width:6px;height:6px}.panel-destination-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.period-filter{background:var(--bg-primary);border-radius:6px;gap:.25rem;padding:.25rem;display:flex}.period-btn{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.5rem 1rem;font-size:.8rem;font-weight:500;transition:all .2s}.period-btn:hover{color:var(--text-primary)}.period-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.period-btn.active{background:var(--accent-orange);color:#fff}.grid-2{grid-template-columns:repeat(2,1fr);gap:1rem;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:1rem;display:grid}.dashboard-layout{flex:1;grid-template-columns:320px 1fr;gap:0;display:grid;overflow:hidden}.config-panel{background:var(--bg-secondary);border-right:1px solid var(--border-color);padding:1rem 1.25rem;overflow-y:auto}.map-panel{position:relative;overflow:visible}.dashboard-layout{position:relative}.dashboard-layout--cfg-collapsed{grid-template-columns:44px 1fr}.dashboard-config-drawer{top:0;left:var(--dashboard-icon-strip-width);width:var(--dashboard-drawer-width);background:var(--bg-secondary);border-right:1px solid var(--border-color);height:100%;z-index:var(--z-overlay-drawer);visibility:hidden;transition:transform .2s,visibility 0s linear .2s;position:absolute;overflow-y:auto;transform:translate(-100%);box-shadow:0 4px 12px #0003}.dashboard-config-drawer--open{visibility:visible;transition:transform .2s,visibility linear;transform:translate(0)}.map-overlay-panel{z-index:var(--z-map-overlay);background:var(--bg-card);max-height:calc(100vh - 2rem);font-size:var(--fs-sm);color:var(--text-primary);border-radius:8px;position:absolute;overflow-y:auto;box-shadow:0 4px 12px #0003}.map-overlay-panel--top-right{width:280px;max-width:320px;top:1rem;right:1rem}.map-overlay-panel--top-left{top:1rem;left:1rem}.map-overlay-panel--bottom-left{bottom:1rem;left:1rem}.map-overlay-panel--bottom-right{bottom:1rem;right:1rem}.map-overlay-panel--top-center{z-index:var(--z-modal);max-width:calc(100vw - 2rem);top:1rem;left:50%;transform:translate(-50%)}.map-overlay-panel--bottom-center{max-width:calc(100vw - 2rem);bottom:1rem;left:50%;transform:translate(-50%)}.map-overlay-panel--collapsed{width:auto;min-width:0}.map-overlay-panel--work{width:264px;max-height:70vh}.panel-toggle-header{background:var(--bg-secondary);cursor:pointer;width:100%;font:inherit;color:inherit;text-align:left;border:none;border-radius:0;outline:none;justify-content:space-between;align-items:center;padding:.75rem 1rem;display:flex}.panel-toggle-header+.panel-section{border-top:1px solid var(--border-color)}.panel-section{padding:.75rem 1rem}.panel-section+.panel-section{border-top:1px solid var(--border-color)}.panel-section-title{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;justify-content:space-between;align-items:center;margin-bottom:.5rem;font-weight:600;display:flex}.filter-row{font-size:var(--fs-sm);cursor:pointer;color:var(--text-primary);align-items:center;gap:.5rem;padding:.3rem 0;display:flex}.filter-row input[type=checkbox],.filter-row input[type=radio]{accent-color:var(--accent-orange);cursor:pointer;flex-shrink:0}.filter-row-count{color:var(--text-muted);margin-left:auto}.filter-row--dim{color:var(--text-secondary)}.link-button{font:inherit;font-size:var(--fs-xs);color:var(--accent-orange);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0 2px;text-decoration:underline}.link-button-group{gap:.4rem;display:flex}.ambient-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid var(--border-color);z-index:1000;background:#1b2838f2;border-radius:12px;width:280px;padding:1.25rem;position:absolute;top:1.5rem;right:1.5rem}.ambient-header{justify-content:space-between;align-items:flex-start;margin-bottom:1rem;display:flex}.ambient-title{font-size:.9rem;font-weight:600}.ambient-subtitle{color:var(--text-secondary);font-size:.75rem}.ambient-grid{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.ambient-stat{background:var(--bg-card);border-radius:8px;padding:.75rem}.ambient-stat-label{color:var(--text-muted);text-transform:uppercase;margin-bottom:.25rem;font-size:.65rem}.ambient-stat-value{font-size:1.25rem;font-weight:600;font-family:var(--font-mono)}.site-marker{text-align:center;z-index:500;position:absolute;bottom:40%;left:50%;transform:translate(-50%,50%)}.marker-dot{background:var(--accent-orange);border-radius:50%;width:16px;height:16px;margin:0 auto .5rem;animation:2s infinite pulse;box-shadow:0 0 0 8px #e67e224d,0 0 0 16px #e67e221a}@keyframes pulse{0%,to{box-shadow:0 0 0 8px #e67e224d,0 0 0 16px #e67e221a}50%{box-shadow:0 0 0 12px #e67e2233,0 0 0 24px #e67e220d}}.marker-label{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:.5rem 1rem}.marker-label-title{color:var(--text-muted);text-transform:uppercase;font-size:.7rem}.marker-label-name{font-size:.9rem;font-weight:600}.section-header{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid var(--border-color);align-items:center;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem;font-size:.8rem;font-weight:600;display:flex}.section-header svg{color:var(--accent-orange)}.run-button{background:var(--accent-orange);color:#fff;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:.75rem;width:100%;margin-top:1.5rem;padding:1rem;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.run-button:hover{background:var(--accent-orange-light);box-shadow:var(--shadow-glow)}.run-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.run-button:disabled{opacity:.7;cursor:not-allowed}.run-estimate{text-align:center;color:var(--text-muted);margin-top:.75rem;font-size:.75rem}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--border-accent)}.loading-modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d1b2ae6;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.loading-modal{background:var(--bg-card);border:1px solid var(--border-color);text-align:center;box-shadow:var(--shadow-card), 0 0 40px #e67e2233;border-radius:16px;max-width:400px;padding:3rem}.loading-modal h3{color:var(--text-primary);margin-bottom:.5rem;font-size:1.25rem;font-weight:600}.loading-modal p{color:var(--text-secondary);font-size:.875rem}.loading-spinner{border:4px solid var(--border-color);border-top-color:var(--accent-orange);border-radius:50%;width:60px;height:60px;margin:0 auto 1.5rem;animation:1s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.text-secondary{color:var(--text-secondary)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.distance-label-icon{background:0 0!important;border:none!important;overflow:visible!important}@media print{.sidebar,button,.header-actions,.simulation-progress-panel,.report-progress-panel{display:none!important}.main-content{margin-left:0!important;padding:0!important}body{color:#000!important;background:#fff!important}}.data-table{border-collapse:collapse;width:100%;color:var(--text-primary);font-size:.875rem}.data-table th{background:var(--bg-secondary);color:var(--text-secondary);text-transform:uppercase;letter-spacing:var(--tracking-caps);text-align:left;border-bottom:1px solid var(--border-color);white-space:nowrap;padding:.625rem .875rem;font-size:.75rem;font-weight:700}.data-table td{border-bottom:1px solid var(--border-color);vertical-align:middle;padding:.625rem .875rem}.data-table tbody tr:hover{background:var(--bg-secondary)}.data-table tbody tr.row-selected{background:#3498db1f}.data-table-align-right{text-align:right}.data-table-align-left{text-align:left}.data-table-align-center{text-align:center}.data-table-caption{caption-side:top;color:var(--text-muted);padding:8px 0;font-size:.75rem}.data-table-empty{text-align:center;color:var(--text-muted);padding:24px}.data-table tbody tr.data-table-row-warning{background:var(--bg-warning-subtle)}.data-table-sticky-header thead th{z-index:1;position:sticky;top:0}.facility-type-pill{white-space:nowrap;align-items:center;font-weight:600;display:inline-flex}.facility-type-pill:hover{opacity:.85}.back-button{align-items:center;gap:.5rem;display:inline-flex}.back-button:hover{opacity:.8;text-decoration:underline}.back-button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.status-pill{white-space:nowrap;align-items:center;font-weight:600;display:inline-flex}.lifecycle-filter-pill{border:1px solid var(--border-color);cursor:pointer;border-radius:999px;padding:2px 10px;font-size:12px;transition:background .12s,color .12s}.lifecycle-filter-pill:hover{background:var(--status-pill-hover)!important}.lifecycle-filter-pill:focus-visible{outline:2px solid var(--accent-primary);outline-offset:1px}.lifecycle-filter-pill:active{transform:translateY(1px)}.data-chip{font-size:var(--fs-xs);background:var(--bg-muted-subtle);color:var(--text-secondary);border:1px solid var(--border-color);white-space:nowrap;border-radius:4px;align-items:center;padding:2px 8px;display:inline-flex}.drawer{transition:box-shadow .15s}.drawer:focus-within{outline:none}.drawer-close-btn{border-radius:4px;justify-content:center;align-items:center;display:inline-flex}.drawer-close-btn:hover{background:var(--bg-muted-subtle);color:var(--text-primary)}.drawer-close-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.presence-status-badge{font-size:var(--fs-xs);white-space:nowrap;text-transform:capitalize;font-weight:600}.status-badge{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:20px;align-items:center;gap:.375rem;padding:.3rem .7rem;font-weight:600;display:inline-flex}.status-badge--unreviewed{color:var(--text-secondary);background:#ffffff0f}.status-badge--supplier_claimed{color:var(--accent-orange);background:#e6b42226}.status-badge--internally_verified{color:var(--accent-blue);background:#3498db1f}.status-badge--externally_verified{color:var(--accent-blue);background:#3498db26}.status-badge--rejected{color:var(--danger);background:#e74c3c26}.status-badge--disputed{color:var(--accent-orange);background:#e67e2226}.trust-badge{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:20px;align-items:center;gap:.375rem;padding:.3rem .7rem;font-weight:600;display:inline-flex}.trust-badge--trusted{color:var(--accent-blue);background:#3498db24}.trust-badge--supplier_claimed{color:var(--accent-orange-light);background:#f39c1229}.trust-badge--quarantined,.trust-badge--disputed{color:var(--danger);background:#e74c3c29}.trust-badge--unknown{color:var(--text-secondary);background:#ffffff0f}.trust-badge-wrap{align-items:center;gap:.5rem;display:inline-flex}.trust-badge-warning{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.02em;color:var(--danger);font-weight:600}.row-clickable{cursor:pointer}.row-clickable:hover td{background:var(--bg-muted-subtle)}.row-clickable:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.filter-bar{flex-wrap:wrap;align-items:center;gap:.625rem;display:flex}.filter-bar select,.filter-bar input[type=text],.filter-bar input[type=number]{background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);border-radius:6px;min-width:130px;padding:.4rem .75rem;font-size:.8125rem;transition:border-color .2s}.filter-bar select:focus,.filter-bar input[type=text]:focus,.filter-bar input[type=number]:focus{border-color:var(--accent-blue);outline:none}.error-banner{background:var(--bg-danger-subtle);color:var(--danger);border:1px solid #e74c3c4d;border-radius:6px;align-items:center;gap:.75rem;padding:.75rem 1rem;font-size:.875rem;display:flex}.error-banner button{background:var(--danger);color:#fff;cursor:pointer;white-space:nowrap;border:none;border-radius:5px;flex-shrink:0;margin-left:auto;padding:.3125rem .875rem;font-size:.8rem;font-weight:600;transition:opacity .15s}.error-banner button:hover{opacity:.85}.pagination{color:var(--text-secondary);justify-content:space-between;align-items:center;padding:.625rem 0;font-size:.8125rem;display:flex}.audit-group-subhead{background:0 0}.audit-group-subhead td{background:var(--bg-muted-subtle);color:var(--text-muted);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.03em;padding:.4rem .5rem;font-weight:600}.pagination button{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:5px;padding:.375rem .875rem;font-size:.8rem;transition:background .15s}.pagination button:hover:not(:disabled){background:var(--bg-card-hover)}.pagination button:disabled{opacity:.35;cursor:not-allowed}.modal-backdrop{background:#0000008c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-shell{background:var(--backdrop-color);-webkit-backdrop-filter:blur(var(--backdrop-blur));z-index:var(--z-modal);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal-content-box{background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-xl);box-shadow:var(--modal-shadow-stack);flex-direction:column;width:100%;max-height:calc(100vh - 48px);display:flex;overflow:hidden}.modal-content-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-title{font-size:var(--fs-h3);color:var(--text-primary);margin:0;font-weight:600}.modal-close-btn{width:32px;height:32px;padding:0;font-size:20px;line-height:1}.modal-content-body{color:var(--text-primary);padding:24px;overflow-y:auto}.modal-actions-row{gap:var(--space-sm);margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--border-color);justify-content:flex-end;display:flex}.import-progress-body{text-align:center;flex-direction:column;gap:.5rem;display:flex}.import-status-icon{justify-content:center;margin-bottom:1.25rem;display:flex}.import-status-icon-error,.import-status-icon-success{border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:24px;display:flex}.import-status-icon-error{background:var(--bg-danger-subtle);color:var(--danger)}.import-status-icon-success{background:var(--bg-success-subtle);color:var(--accent-green)}.import-spinner{border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite import-spin}@keyframes import-spin{to{transform:rotate(360deg)}}.import-filename{font-size:var(--fs-body);color:var(--text-secondary);word-break:break-all}.import-status-message{font-size:var(--fs-sm);color:var(--text-primary);line-height:1.5}.import-status-message-error{color:var(--danger)}.import-summary{font-size:var(--fs-xs);color:var(--text-secondary)}.import-error-detail{font-size:var(--fs-xs);color:var(--text-secondary);background:var(--bg-secondary);text-align:left;white-space:pre-line;border-radius:6px;max-height:220px;padding:.5rem .75rem;font-family:JetBrains Mono,monospace;line-height:1.45;overflow:auto}.import-timer{font-size:var(--fs-xs);color:var(--text-secondary);font-family:JetBrains Mono,monospace}.import-warning{font-size:var(--fs-xs);color:var(--text-secondary);opacity:.7;font-style:italic}.peering-toggle-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:2px}.diversity-badge-loading,.diversity-badge-error{font-size:var(--fs-xs);background:var(--bg-card);color:var(--text-secondary);border:1px solid var(--border-color);border-radius:999px;align-items:center;padding:.2rem .55rem;display:inline-flex}.diversity-badge-error{color:var(--danger);border-color:var(--danger)}.diversity-legend{border:1px solid var(--border-color);background:var(--bg-card);border-radius:4px;margin-top:.5rem;padding:.5rem .75rem}.diversity-legend h4{color:var(--text-secondary);margin:0 0 .4rem;font-size:.9rem}.diversity-legend ul{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}.diversity-legend li{color:var(--text-secondary);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.legend-swatch{border-radius:2px;flex-shrink:0;width:24px;height:12px;display:inline-block}.swatch-primary{background:linear-gradient(90deg, var(--success) 0% 33%, var(--accent-orange) 33% 66%, var(--text-secondary) 66% 100%)}.compare-mode-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.compare-mode-controls label{font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;display:flex}.compare-mode-controls label.diverse-k-selector select{background:var(--bg-input);color:var(--text-primary);border:1px solid var(--border-color);font-size:var(--fs-xs);border-radius:4px;padding:1px 4px}.cancel-btn:hover{border-color:var(--accent-orange)!important}.capacity-pair-row{border-bottom:1px solid var(--border-color);cursor:default;align-items:center;gap:8px;padding:6px 8px;display:flex}.capacity-pair-row:hover{background:var(--bg-hover)}.capacity-assignment-row{border-bottom:1px solid var(--border-subtle);font-size:var(--fs-sm);color:var(--text-secondary);padding:4px 8px 4px 24px}.capacity-assignment-row:hover{background:var(--bg-hover)}.capacity-wave-row{font-size:var(--fs-xs);color:var(--text-muted);border-bottom:1px solid var(--border-subtle);padding:3px 8px 3px 48px}.capacity-wave-row:hover{background:var(--bg-hover)}.agreement-id-redacted{color:var(--text-muted);font-style:italic}.agreement-id{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-secondary)}.pair-state-badge{font-size:var(--fs-xs);color:#ffffffe6;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;min-width:64px;padding:1px 7px;font-weight:500;display:inline-flex}.pair-state-badge:hover{opacity:.85}.segment-litness-badge{font-size:var(--fs-xs);white-space:nowrap;border-radius:999px;align-items:center;gap:.4rem;padding:.25rem .6rem;font-weight:600;display:inline-flex}.segment-litness-lit{background:var(--lit-segment-bg);color:var(--lit-segment-fg)}.segment-litness-dark{background:var(--dark-segment-bg);color:var(--dark-segment-fg)}.segment-litness-mixed{background:var(--mixed-segment-bg);color:var(--mixed-segment-fg)}.segment-litness-unknown{background:var(--bg-card);color:var(--text-muted);border:1px solid var(--border-color)}.capacity-pair-row-clickable{cursor:pointer}.capacity-pair-row-clickable:hover{background:var(--bg-card-hover)}.latency-cell-empty{color:var(--text-muted)}.latency-cell em{font-size:var(--fs-xs);margin-left:.3rem;font-style:normal}.latency-measured em{color:var(--latency-measured)}.latency-modelled em{color:var(--latency-modelled)}.bulk-dialog-overlay{z-index:var(--z-modal);background:var(--dialog-overlay);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.bulk-dialog{background:var(--dialog-bg);border:1px solid var(--dialog-border);border-radius:6px;min-width:380px;max-width:600px;max-height:80vh;padding:1.25rem;overflow-y:auto}.bulk-dialog-destructive{border-color:var(--danger);background:var(--dialog-destructive-bg)}.bulk-dialog-title{color:var(--text-primary);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.bulk-dialog-summary{color:var(--text-secondary);margin:0 0 .5rem;font-size:.875rem}.bulk-dialog-items{color:var(--text-secondary);margin:0 0 .75rem;padding:0;font-size:.8125rem;list-style:none}.bulk-dialog-items li{border-bottom:1px solid var(--border-color);padding:.1875rem 0}.bulk-dialog-overflow{color:var(--text-muted);font-style:italic}.bulk-dialog-body{margin:.75rem 0}.bulk-dialog-prompt{color:var(--text-secondary);margin:.5rem 0;font-size:.8125rem}.bulk-dialog-error{color:var(--danger);border:1px solid var(--danger);background:#321b1b;border-radius:4px;margin:.5rem 0;padding:.375rem .5rem;font-size:.8125rem}.bulk-dialog-actions{justify-content:flex-end;gap:.5rem;margin-top:1rem;display:flex}.bulk-dialog-cancel{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-primary);cursor:pointer;border-radius:4px;padding:.4375rem .875rem;font-size:.8125rem}.bulk-dialog-cancel:hover:not(:disabled){background:var(--bg-card-hover)}.bulk-dialog-confirm{cursor:pointer;color:var(--text-primary);border:none;border-radius:4px;padding:.4375rem .875rem;font-size:.8125rem;font-weight:500}.bulk-dialog-confirm:disabled{opacity:.5;cursor:not-allowed}.bulk-dialog-confirm-safe{background:var(--accent-primary)}.bulk-dialog-confirm-destructive{background:var(--danger)}.bulk-dialog-confirm:hover:not(:disabled){filter:brightness(1.1)}.bulk-trigger-button{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:.25rem .625rem;font-size:.8125rem}.bulk-trigger-button:disabled{opacity:.4;cursor:not-allowed}.bulk-trigger-button:hover:not(:disabled){background:var(--bg-card-hover);color:var(--text-primary)}.corridor-tag-filter{flex-wrap:wrap;gap:6px;padding:8px 0;display:flex}.corridor-tag-filter-loading,.corridor-tag-filter-error,.corridor-tag-filter-empty{font-size:var(--fs-xs);color:var(--text-muted);padding:4px 0}.corridor-tag-chip{border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;background:0 0;border-radius:12px;align-items:center;padding:2px 10px;transition:background .1s,color .1s;display:inline-flex}.corridor-tag-chip.selected{background:var(--accent-primary);color:var(--text-on-accent,#fff);border-color:var(--accent-primary)}.corridor-tag-chip:hover:not(.selected){background:var(--bg-card-hover);color:var(--text-primary)}:root{--history-current-pill:#2d862d;--history-current-fg:#adebad;--history-superseded-pill:#595959;--history-superseded-fg:#ccc;--history-removed-pill:#933;--history-removed-fg:#f0c2c2;--history-connector:#4d4d4d;--row-hover:#ffffff0a;--error-text:#d64f4f}.history-loading{color:var(--text-muted);padding:12px 16px;font-size:13px}.history-error{color:var(--error-text);padding:12px 16px;font-size:13px}.history-empty{color:var(--text-muted);padding:12px 16px;font-size:13px}.history-timeline{flex-direction:column;gap:8px;padding:12px 0;display:flex}.history-legend{gap:8px;padding:0 16px 8px;display:flex}.history-list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.history-row{cursor:pointer;border-left:3px solid var(--history-connector);align-items:center;gap:8px;padding:6px 16px;font-size:12px;display:flex}.history-row:hover{background:var(--row-hover)}.history-row-current{border-left-color:var(--history-current-pill)}.history-row-superseded{border-left-color:var(--history-superseded-pill)}.history-row-removed{border-left-color:var(--history-removed-pill)}.history-version-index{color:var(--text-muted);min-width:28px;font-family:monospace}.history-state-badge{letter-spacing:.02em;border-radius:3px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.history-row-current .history-state-badge,.history-badge-current{background:var(--history-current-pill);color:var(--history-current-fg)}.history-row-superseded .history-state-badge,.history-badge-superseded{background:var(--history-superseded-pill);color:var(--history-superseded-fg)}.history-row-removed .history-state-badge,.history-badge-removed{background:var(--history-removed-pill);color:var(--history-removed-fg)}.history-validity{color:var(--text-muted);font-size:11px}.history-source{color:var(--text-muted);font-size:11px;font-style:italic}.history-restore-btn{border:1px solid var(--border-subtle);color:var(--accent-primary);cursor:pointer;background:0 0;border-radius:3px;margin-left:auto;padding:2px 8px;font-size:11px}.history-restore-btn:hover{background:var(--row-hover)}.history-restore-notice{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-sm);font-size:var(--fs-sm);color:var(--text-secondary);display:flex}.history-restore-copy-btn{flex-shrink:0}.history-restore-btn:focus-visible{outline:2px solid var(--accent-primary)}.entity-history-page{flex-direction:column;height:100%;display:flex}.entity-history-page-header{border-bottom:1px solid var(--border-subtle);align-items:center;gap:12px;padding:12px 16px;display:flex}.entity-history-back-btn{border:1px solid var(--border-subtle);color:var(--text-primary);cursor:pointer;background:0 0;border-radius:4px;padding:4px 10px;font-size:12px}.entity-history-back-btn:hover{background:var(--row-hover)}.entity-history-title{text-transform:capitalize;margin:0;font-size:14px;font-weight:600}.entity-history-natural-key{font-size:var(--fs-xs);color:var(--text-secondary);font-family:var(--font-mono,"Geist Mono", monospace);margin:.25rem 0 0}:root{--diff-unchanged-bg:#2e2e2e;--diff-unchanged-fg:#999;--diff-changed-bg:#604a20;--diff-changed-fg:#f5daa3;--diff-added-bg:#265926;--diff-added-fg:#adebad;--diff-removed-bg:#592626;--diff-removed-fg:#ebadad}.version-diff-view{flex-direction:column;gap:.75rem;padding:12px 0;display:flex}.version-diff-table{border-collapse:collapse;width:100%;font-size:13px}.version-diff-table th,.version-diff-table td{border:1px solid var(--border-color);vertical-align:top;padding:.4rem .6rem}.version-diff-table th{color:var(--text-primary);background:var(--bg-card);text-align:left;font-weight:600}.diff-row-unchanged{background:var(--diff-unchanged-bg);color:var(--diff-unchanged-fg)}.diff-row-changed{background:var(--diff-changed-bg);color:var(--diff-changed-fg)}.diff-row-added{background:var(--diff-added-bg);color:var(--diff-added-fg)}.diff-row-removed{background:var(--diff-removed-bg);color:var(--diff-removed-fg)}.diff-field-name{font-family:monospace;font-size:12px}.diff-cell-empty{color:var(--text-muted);font-style:italic}.diff-legend{font-size:var(--fs-xs);flex-wrap:wrap;gap:1rem;padding:4px 0;display:flex}.diff-legend-swatch{align-items:center;gap:.4rem;display:inline-flex}.diff-legend-swatch-box{border:1px solid var(--border-color);border-radius:2px;flex-shrink:0;width:1rem;height:1rem}.superseded-version-badge{font-size:var(--fs-xs);background:var(--history-superseded-pill);color:var(--history-superseded-fg);white-space:nowrap;border-radius:999px;padding:.2rem .55rem;display:inline-flex}.edit-tab{flex-direction:column;gap:0;padding:.5rem 0;display:flex}.edit-tab-section{border-bottom:1px solid var(--border-color)}.edit-tab-section-header{width:100%;font:inherit;font-size:var(--fs-sm);color:var(--text-secondary);text-align:left;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;background:0 0;border:none;border-radius:0;align-items:center;gap:.4rem;padding:.5rem .75rem;font-weight:600;display:flex}.edit-tab-section-header:hover{color:var(--text-primary);background:var(--bg-secondary)}.edit-tab-section-header:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px}.edit-tab-section-body{padding:.5rem .75rem .75rem}.edit-tab-readonly-banner{background:var(--bg-warning-subtle);color:var(--accent-orange);font-size:var(--fs-sm);border-radius:4px;margin-bottom:.75rem;padding:.5rem .75rem}.edit-tab-loading,.edit-tab-placeholder{color:var(--text-muted);font-size:var(--fs-sm);padding:.75rem}.edit-tab-error{color:var(--danger);font-size:var(--fs-sm);padding:.75rem}.edit-tab-section-error{color:var(--danger);font-size:var(--fs-sm);margin-top:.5rem}.edit-tab-meta-text{color:var(--text-muted);font-size:var(--fs-sm)}.edit-tab-hint-text{color:var(--text-secondary);font-size:var(--fs-sm)}.edit-tab-mono-meta{font-family:monospace;font-size:var(--fs-xs);color:var(--text-muted)}.edit-tab-mono{font-family:monospace;font-size:var(--fs-xs)}.edit-tab-dl{margin-bottom:.75rem}.edit-tab-label-block{margin-top:.5rem;display:block}.edit-tab-full-width{width:100%}.edit-tab-btn-mt{margin-top:.5rem}.edit-tab-parent-link{font:inherit;font-size:var(--fs-sm);color:var(--accent-primary);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:none}.edit-tab-parent-link:hover{color:var(--accent-orange);text-decoration:underline}.edit-tab-parent-link:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px;border-radius:2px}.edit-tab-parent-list{margin:0;padding:0;list-style:none}.edit-tab-parent-item{border-bottom:1px solid var(--border-color);padding:.375rem 0}.edit-tab-parent-meta{color:var(--text-muted);font-size:var(--fs-xs);margin-left:.5rem}.edit-tab-switcher-label{margin-bottom:.5rem;display:block}.diligence-panel{border:1px solid var(--border-color);border-radius:4px;margin-bottom:.75rem}.diligence-panel-header{background:var(--bg-secondary);width:100%;font:inherit;font-size:var(--fs-sm);color:var(--text-secondary);text-align:left;cursor:pointer;text-transform:uppercase;letter-spacing:.04em;border:none;border-radius:4px;align-items:center;gap:.4rem;padding:.5rem .75rem;font-weight:600;display:flex}.diligence-panel-header:hover{color:var(--text-primary);background:var(--bg-hover)}.diligence-panel-header:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px;border-radius:4px}.diligence-panel-body{padding:.75rem}.diligence-verified-chip{font-size:var(--fs-xs);color:#27ae60;text-transform:uppercase;letter-spacing:.03em;background:#27ae6026;border-radius:3px;margin-left:auto;padding:.1rem .4rem;font-weight:600}.diligence-disputed-chip{font-size:var(--fs-xs);color:var(--danger);text-transform:uppercase;letter-spacing:.03em;background:#e74c3c26;border-radius:3px;margin-left:auto;padding:.1rem .4rem;font-weight:600}.diligence-trail{font-size:var(--fs-sm);color:var(--text-secondary);border-left:2px solid var(--border-color);margin:0 0 .75rem;padding-left:.5rem}.diligence-trail dt{color:var(--text-muted);font-weight:600;font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;margin-top:.25rem}.diligence-trail dd{color:var(--text-primary);margin-left:0}.diligence-form{flex-direction:column;gap:.5rem;display:flex}.diligence-decision-fieldset{border:1px solid var(--border-color);border-radius:4px;padding:.4rem .6rem}.diligence-legend{font-size:var(--fs-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;padding:0 .2rem;font-weight:600}.diligence-radio-label{font-size:var(--fs-sm);color:var(--text-primary);cursor:pointer;margin-top:.25rem;display:block}.diligence-note-label{font-size:var(--fs-sm);color:var(--text-secondary);display:block}.diligence-note-textarea{background:var(--bg-primary);border:1px solid var(--border-color);width:100%;color:var(--text-primary);font:inherit;font-size:var(--fs-sm);resize:vertical;border-radius:3px;margin-top:.25rem;padding:.35rem .5rem;display:block}.diligence-note-textarea:focus{outline:2px solid var(--accent-primary);outline-offset:-1px}.diligence-note-counter{font-size:var(--fs-xs);color:var(--text-muted);margin:.15rem 0 0}.diligence-note-counter--short{color:var(--warning)}.diligence-submit-btn{background:var(--accent-primary);color:var(--bg-primary);font:inherit;font-size:var(--fs-sm);cursor:pointer;border:none;border-radius:4px;align-self:flex-start;padding:.35rem .8rem;font-weight:600}.diligence-submit-btn:hover:not(:disabled){background:var(--accent-orange)}.diligence-submit-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.diligence-submit-btn:disabled{opacity:.5;cursor:not-allowed}.diligence-submit-error{font-size:var(--fs-sm);color:var(--danger)}.diligence-conflict{gap:var(--space-2);border:1px solid var(--warning);border-radius:var(--radius-sm);background:var(--bg-warning-subtle);flex-direction:column;padding:.5rem .6rem;display:flex}.diligence-conflict-text{font-size:var(--fs-sm);color:var(--text-primary);margin:0}.diligence-conflict-reload-btn{font-size:var(--fs-sm);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--warning);border-radius:var(--radius-sm);cursor:pointer;align-self:flex-start;padding:.3rem .7rem;font-weight:600}.diligence-conflict-reload-btn:hover:not(:disabled){background:var(--bg-card-hover)}.diligence-conflict-reload-btn:disabled{opacity:.6;cursor:default}.diligence-readonly-hint{font-size:var(--fs-sm);color:var(--text-muted);margin:0}.segment-preset-filter{flex-wrap:wrap;gap:6px;padding:8px 0;display:flex}.segment-preset-chip{border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;background:0 0;border-radius:12px;align-items:center;gap:6px;padding:2px 10px;transition:background .1s,color .1s;display:inline-flex}.segment-preset-chip.selected{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.segment-preset-chip:hover:not(.selected){background:var(--bg-card-hover);color:var(--text-primary)}.segment-preset-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.segment-preset-chip-count{background:var(--bg-card-hover);min-width:18px;color:var(--text-muted);font-size:var(--fs-xs);text-align:center;border-radius:9px;padding:0 4px;line-height:1.4;display:inline-block}.segment-preset-chip.selected .segment-preset-chip-count{background:var(--text-on-accent);color:var(--accent-primary)}.route-role-chips{flex-wrap:wrap;gap:6px;padding:8px 0;display:flex}.route-role-chip{border:1px solid var(--border-color);color:var(--text-secondary);font-size:var(--fs-xs);cursor:pointer;background:0 0;border-radius:12px;align-items:center;padding:2px 10px;transition:background .1s,color .1s;display:inline-flex}.route-role-chip.selected{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.route-role-chip:hover:not(.selected){background:var(--bg-card-hover);color:var(--text-primary)}.route-role-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media (pointer:coarse){.route-role-chip{min-height:var(--touch-target-sm);min-width:var(--touch-target-sm);padding:6px 12px}}@media (hover:none){.route-role-chip:hover:not(.selected){color:var(--text-secondary);background:0 0}.route-role-chip.selected{background:var(--accent-primary);color:var(--text-on-accent)}}.vertex-handle{background:var(--accent-primary);border:2px solid var(--text-on-accent);cursor:grab;box-sizing:border-box;border-radius:50%;width:12px;height:12px}.vertex-handle--floor{background:var(--text-muted);cursor:grab}.midpoint-handle{background:var(--bg-card);border:1px solid var(--accent-primary);cursor:crosshair;box-sizing:border-box;opacity:.8;border-radius:50%;width:8px;height:8px}@media (pointer:coarse){.vertex-handle{width:32px;height:32px;box-shadow:0 0 0 0 var(--accent-primary);border-width:3px}.vertex-handle--floor{width:32px;height:32px}.midpoint-handle{border-width:2px;width:24px;height:24px}}.vertex-editor-controls{font-size:var(--fs-sm);color:var(--text-primary);padding:.75rem 0}.vertex-editor-save-error{background:var(--bg-danger-subtle);border:1px solid var(--danger);font-size:var(--fs-sm);color:var(--danger);border-radius:4px;margin-bottom:.5rem;padding:.5rem .75rem}.vertex-editor-actions{flex-wrap:wrap;gap:8px;margin-bottom:.5rem;display:flex}.vertex-editor-btn{font-size:var(--fs-sm);background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:4px;padding:.3rem .75rem}.vertex-editor-btn:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-accent)}.vertex-editor-btn:focus-visible,.vertex-editor-delete-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.vertex-editor-btn:disabled{opacity:.45;cursor:not-allowed}.vertex-editor-btn--primary{background:var(--accent-primary);color:var(--text-on-accent);border-color:var(--accent-primary)}.vertex-editor-btn--primary:hover:not(:disabled){opacity:.88}.vertex-editor-floor-hint{font-size:var(--fs-xs);color:var(--text-muted);margin:.25rem 0 .5rem}.vertex-editor-list{max-height:200px;margin:0;padding:0;list-style:none;overflow-y:auto}.vertex-editor-list-item{border-bottom:1px solid var(--border-color);font-size:var(--fs-xs);justify-content:space-between;align-items:center;padding:.2rem 0;display:flex}.vertex-editor-coords{font-family:var(--font-mono);color:var(--text-secondary)}.vertex-editor-delete-btn{color:var(--danger);font-size:var(--fs-md);cursor:pointer;background:0 0;border:none;padding:0 4px;line-height:1}.vertex-editor-delete-btn:hover:not(:disabled){color:var(--accent-red)}.vertex-editor-delete-btn:disabled{color:var(--text-muted);cursor:not-allowed}.geometry-tab-loading,.geometry-tab-placeholder{font-size:var(--fs-sm);color:var(--text-muted);padding:.5rem 0}.geometry-tab-error{font-size:var(--fs-sm);color:var(--danger);padding:.5rem 0}.copy-state-ok{font-size:var(--fs-sm);color:var(--text-secondary)}.copy-state-error{font-size:var(--fs-sm);color:var(--danger)}.route-editor-geometry-view{flex-direction:column;gap:12px;display:flex}.geometry-tab-toolbar{align-items:center;gap:8px;margin-bottom:.5rem;display:flex}.geometry-tab-edit-btn{font-size:var(--fs-sm);background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:4px;margin-bottom:.5rem;padding:.3rem .75rem}.geometry-tab-edit-btn:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.geometry-tab-create-segment{margin-bottom:.75rem}.geometry-tab-create-btn{font-size:var(--fs-sm);background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);cursor:pointer;border-radius:4px;padding:.3rem .75rem}.geometry-tab-create-btn:hover{background:var(--bg-card-hover);border-color:var(--border-accent)}.geometry-tab-create-form{flex-direction:column;gap:6px;display:flex}.geometry-tab-create-label{font-size:var(--fs-sm);color:var(--text-secondary)}.geometry-tab-geojson-textarea{background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-primary);font-family:var(--font-mono);resize:vertical;border-radius:4px;padding:6px 8px;font-size:12px}.geometry-tab-geojson-textarea:focus{border-color:var(--accent-primary);outline:none}.geometry-tab-create-error{font-size:var(--fs-sm);color:var(--danger)}.geometry-tab-create-actions{gap:8px;display:flex}.geometry-tab-create-save-btn{font-size:var(--fs-sm);background:var(--accent-primary);color:#fff;cursor:pointer;border:none;border-radius:4px;padding:.3rem .75rem}.geometry-tab-create-save-btn:disabled{opacity:.5;cursor:not-allowed}.geometry-tab-create-cancel-btn{font-size:var(--fs-sm);background:var(--bg-input);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;border-radius:4px;padding:.3rem .75rem}.geometry-tab-create-cancel-btn:disabled{opacity:.5;cursor:not-allowed}.geometry-tab-multipart-note{font-size:var(--fs-sm);color:var(--text-secondary);margin:0;padding:.25rem 0 .5rem}.dq-badge{font-size:var(--fs-xs);letter-spacing:.02em;white-space:nowrap;border-radius:3px;padding:1px 6px;font-weight:500;display:inline-block}.dq-badge--ok{background:var(--bg-success-subtle);color:var(--accent-green)}.dq-badge--no-length{background:var(--bg-warning-subtle);color:var(--accent-orange)}.dq-badge--shell{background:var(--bg-danger-subtle);color:var(--danger)}.dq-badge--no-geometry{background:var(--bg-warning-subtle);color:var(--accent-orange)}.routes-near-panel{font-size:var(--fs-sm);color:var(--text-primary);margin-top:1rem}.routes-near-panel__header{font-size:var(--fs-sm);color:var(--text-secondary);margin-bottom:.5rem}.routes-near-panel__table{border-collapse:collapse;width:100%;font-size:var(--fs-sm)}.routes-near-panel__table th,.routes-near-panel__table td{text-align:left;border-bottom:1px solid var(--border-color);padding:4px 8px}.routes-near-panel__table th{color:var(--text-secondary);font-weight:500}.routes-near-panel__table th button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none;padding:0;font-weight:500}.routes-near-panel__table th button:hover{color:var(--text-primary)}.routes-near-panel__table th button:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.badge{white-space:nowrap;border-radius:20px;align-items:center;gap:6px;padding:3px 10px;font-size:11px;font-weight:600;line-height:1.4;display:inline-flex}.badge-status{color:var(--text-primary);background:var(--text-muted)}.badge-status[data-status=healthy],.badge-status[data-status=success],.badge-status[data-status=ok]{background:var(--success)}.badge-status[data-status=warning],.badge-status[data-status=pending]{background:var(--warning)}.badge-status[data-status=danger],.badge-status[data-status=error],.badge-status[data-status=failed]{background:var(--danger)}.badge-status[data-status=info]{background:var(--accent-blue)}.badge-count{color:var(--accent-orange);background:var(--accent-orange-glow)}.badge-meta{color:var(--text-muted);background:var(--bg-card);border:1px solid var(--border-color)}.badge-tech{color:var(--text-muted);text-transform:uppercase;letter-spacing:var(--tracking-caps);background:0 0;font-size:10px}.page-title{font-family:var(--font-serif);font-size:32px;font-weight:700;line-height:var(--lh-tight);letter-spacing:var(--tracking-tight);color:var(--text-primary);margin:0}.record-card__cta-mark-reviewed{background:var(--accent-orange);min-height:44px;color:var(--text-on-accent);border-radius:var(--radius-sm);cursor:pointer;border:none;padding:.3rem .6rem;font-size:.78rem;font-weight:600}.record-card__cta-mark-reviewed:hover{filter:brightness(1.1)}.record-card__cta-mark-reviewed:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.record-card__cta-mark-reviewed:disabled{opacity:.6;cursor:not-allowed}.record-card__cta-resume-draft{min-height:44px;color:var(--accent-primary);border:1px solid var(--accent-primary);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:.3rem .6rem;font-size:.78rem}.record-card__cta-resume-draft:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.record-card__cta-delete-draft{min-height:44px;color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:.3rem .6rem;font-size:.78rem}.record-card__cta-delete-draft:focus-visible{outline:2px solid var(--danger);outline-offset:2px}.record-card__source-label{white-space:nowrap}.library-cta-strip{gap:var(--space-md);margin-bottom:var(--space-6);flex-wrap:wrap;display:flex}.library-cta-button{border-radius:var(--radius-sm);cursor:pointer;border:none;min-height:44px;padding:0 16px;font-family:Inter,sans-serif;font-size:.9rem;font-weight:600}.library-cta-button[disabled],.library-cta-button[aria-disabled=true]{opacity:.5;cursor:not-allowed}.library-cta-button--import{background:var(--accent-orange);color:var(--text-on-accent)}.library-cta-button--import:hover:not([disabled]){filter:brightness(1.1)}.library-cta-button--apply,.library-cta-button--start{background:var(--bg-card);color:var(--text-primary);border:1px solid var(--border-color)}.library-cta-button:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.library-status-tabs{gap:var(--space-2);border-bottom:1px solid var(--border-color);margin-bottom:var(--space-3);display:flex}.library-status-tabs__tab{cursor:pointer;min-height:44px;color:var(--text-muted);background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 16px;font-family:Inter,sans-serif;font-size:.9rem}.library-status-tabs__tab[aria-selected=true]{border-bottom:2px solid var(--accent-orange);color:var(--accent-orange);font-weight:600}.library-status-tabs__tab:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}@media (width<=1280px){.library-cta-strip{flex-direction:column}.library-cta-button{width:100%}}.design-detail__empty{color:var(--text-secondary);text-align:center;padding:2rem 1rem;font-size:.85rem}.design-detail__brief-tab{flex-direction:column;gap:1rem;padding-top:.5rem;display:flex}.design-detail__brief-actions{flex-wrap:wrap;gap:.5rem;margin-top:.25rem;display:flex}.design-detail__error-banner{background:var(--bg-error-subtle);border:1px solid var(--danger);color:var(--danger);border-radius:4px;padding:.75rem 1rem;font-size:.85rem}.design-detail__error-banner--auth{color:var(--text-primary);background:var(--bg-warning-subtle);border-color:var(--accent-orange)}.apply-to-site-wizard-modal{z-index:var(--z-modal);background:#000000b3;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.apply-to-site-wizard-inner{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;flex-direction:column;gap:0;width:520px;max-width:95vw;max-height:90vh;display:flex;overflow-y:auto}.apply-to-site-wizard-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:1rem 1.25rem .75rem;display:flex}.apply-to-site-wizard-breadcrumb{color:var(--text-muted);margin-bottom:.2rem;font-size:.75rem}.apply-to-site-wizard-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:700}.apply-to-site-wizard-close{cursor:pointer;color:var(--text-muted);background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.25rem .5rem;font-size:1.2rem;display:flex}.apply-to-site-wizard-body{flex-direction:column;flex:1;gap:.75rem;padding:1rem 1.25rem;display:flex}.apply-to-site-wizard-footer{border-top:1px solid var(--border);justify-content:flex-end;gap:.5rem;padding:.75rem 1.25rem 1rem;display:flex}.apply-to-site-wizard-btn{border:1px solid var(--border);cursor:pointer;border-radius:4px;min-width:80px;min-height:44px;padding:.5rem 1.1rem;font-size:.85rem}.apply-to-site-wizard-btn--primary{background:var(--accent-primary);color:var(--text-primary);border-color:var(--accent-primary)}.apply-to-site-wizard-btn--primary:disabled{opacity:.5;cursor:not-allowed}.apply-to-site-wizard-btn--secondary{color:var(--text-secondary);background:0 0}.apply-to-site-wizard-list{flex-direction:column;gap:.4rem;max-height:260px;display:flex;overflow-y:auto}.apply-to-site-wizard-item{border:1px solid var(--border);cursor:pointer;background:var(--bg-input);color:var(--text-primary);text-align:left;border-radius:4px;align-items:center;min-height:44px;padding:.6rem .85rem;font-size:.88rem;display:flex}.apply-to-site-wizard-item:hover{background:var(--bg-hover)}.apply-to-site-wizard-item--selected{border-color:var(--accent-primary);background:var(--bg-hover)}.apply-to-site-wizard-field{flex-direction:column;gap:.25rem;display:flex}.apply-to-site-wizard-label{color:var(--text-muted);font-size:.82rem;font-weight:500}.apply-to-site-wizard-input{background:var(--bg-input);border:1px solid var(--border);color:var(--text-primary);border-radius:4px;min-height:44px;padding:.4rem .6rem;font-size:.88rem}.apply-to-site-wizard-error{background:var(--bg-danger-subtle);color:var(--danger);border-radius:4px;padding:.5rem .75rem;font-size:.82rem}.apply-to-site-wizard-error--auth{background:var(--bg-warning-subtle);color:var(--text-primary);border:1px solid var(--accent-orange)}.apply-to-site-wizard-grid-2{grid-template-columns:1fr 1fr;gap:.5rem;display:grid}.orphan-brief-triage-banner{background:var(--bg-card);border:1px solid var(--border);border-radius:4px;flex-direction:column;gap:.5rem;margin-bottom:.75rem;padding:1rem;display:flex}.orphan-brief-triage-banner__text{color:var(--text-primary);font-size:.85rem}.orphan-brief-triage-banner__list{color:var(--text-secondary);flex-direction:column;gap:.4rem;margin:0;padding:0;font-size:.83rem;list-style:none;display:flex}.orphan-brief-triage-banner__row{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.orphan-brief-triage-banner__name{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;flex:12rem;min-width:0;font-weight:600;overflow:hidden}.orphan-brief-triage-banner__picker-label{color:var(--text-secondary);font-size:.78rem}.orphan-brief-triage-banner__picker{background:var(--bg-card);border:1px solid var(--border);min-height:44px;color:var(--text-primary);border-radius:4px;max-width:16rem;padding:.25rem .5rem;font-size:.83rem}.orphan-brief-triage-banner__error{background:var(--bg-danger-subtle);color:var(--danger);border-radius:4px;padding:.4rem .6rem;font-size:.8rem}.facilities-panel{flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.facilities-panel__header{color:var(--text-secondary);font-size:.875rem}.facilities-panel__list{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.facilities-panel-btn{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;justify-content:space-between;align-items:center;gap:.5rem;padding:.4rem .6rem;font-size:.875rem;transition:all .2s;display:flex}.facilities-panel-btn:hover{background:var(--bg-card-hover)}.facilities-panel-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.facilities-panel-btn--selected{background:var(--bg-card);border-color:var(--border-accent)}.facilities-panel-btn__country{font-family:var(--font-mono);color:var(--text-secondary);font-size:.7rem}.facilities-panel__peering{border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:.5rem}.facilities-panel__peering-header{color:var(--text-secondary);margin-bottom:.35rem;font-size:.875rem}.facilities-panel__ixp-list{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}.facilities-panel__ixp-item{flex-wrap:wrap;align-items:center;gap:.4rem;display:flex}.facilities-panel__ixp-name{font-weight:500}.facilities-panel__ixp-meta{font-size:.75rem}.peering-ixp-list{flex-direction:column;display:flex}.peering-ixp{border-bottom:1px solid var(--border-color)}.peering-pops{flex-direction:column;display:flex}.peering-pop{border-top:1px dashed var(--border-color)}.peering-toggle-btn:hover{color:var(--accent-orange)}.peering-toggle-btn:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.route-drawer{background:var(--bg-card);border-left:1px solid var(--border-color);height:100%;padding:1rem;overflow-y:auto}.route-drawer-header{justify-content:space-between;align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.route-drawer-close{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:.25rem;line-height:0}.route-drawer-close:hover{color:var(--text-primary);background:var(--bg-card-hover)}.route-drawer-fields{grid-template-columns:auto 1fr;gap:.35rem .75rem;font-size:.875rem;display:grid}.route-drawer-fields dt{color:var(--text-secondary)}.route-editor-workspace{min-height:100%}.route-editor-header{border-bottom:1px solid var(--border-color);padding-bottom:.75rem}.route-editor-title{font-family:var(--font-serif);font-size:var(--fs-h2);letter-spacing:-.01em;font-weight:700}.route-editor-meta{font-family:var(--font-mono)}.diverse-k-selector{align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.875rem;display:flex}.route-editor-tabs{overflow-x:auto}.route-editor-task-entry{flex-direction:column;gap:1rem;display:flex}.route-editor-crumb{font-size:var(--fs-xs);color:var(--text-tertiary)}.route-editor-task-prompt{font-size:var(--fs-micro);text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-muted);margin:0;font-weight:600}.route-editor-task-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.route-editor-task-card{text-align:left;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;flex-direction:column;gap:.75rem;padding:1.25rem 1rem 1rem;display:flex}.route-editor-task-card:hover{border-color:var(--border-accent)}.route-editor-task-card:focus-visible{border-color:#e67e228c;outline:none;box-shadow:0 0 0 2px #e67e2280}.route-editor-task-stat{font-size:var(--fs-xs);color:var(--text-muted);margin-top:.5rem;display:block}.route-editor-task-secondary{font-size:var(--fs-xs);color:var(--text-muted);align-items:center;gap:.5rem;display:flex}.route-editor-task-secondary-label{text-transform:uppercase;letter-spacing:.08em}.route-editor-task-secondary button{min-width:auto;min-height:44px;color:var(--text-secondary);font-size:inherit;font-weight:inherit;cursor:pointer;background:0 0;border:none;padding:.25rem 0;transition:none;display:inline-block}.route-editor-task-secondary button:hover,.route-editor-task-secondary button:focus-visible{color:var(--text-primary);text-decoration:underline}.route-editor-task-secondary button:focus-visible{outline-offset:2px;border-radius:2px;outline:2px solid #e67e228c}.route-editor-loading,.route-editor-empty,.route-editor-empty-reason,.route-editor-error{font-size:.875rem}.route-editor-error-detail{font-size:var(--fs-xs);color:var(--text-secondary);margin:.25rem 0 0}.route-editor-error-dismiss{font-size:var(--fs-sm);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius-sm);cursor:pointer;margin-top:.5rem;padding:.25rem .7rem}.route-editor-error-dismiss:hover{background:var(--bg-card-hover)}.route-editor-error-dismiss:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.route-editor-back-btn{color:var(--accent-primary);font-size:var(--fs-sm);cursor:pointer;background:0 0;border:none;padding:0}.route-editor-back-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.route-editor-honest-length,.route-editor-trust{align-items:center;gap:.35rem;display:inline-flex}.route-editor-body{align-items:stretch;gap:1rem;display:flex}.route-editor-map-pane{flex:auto;min-width:0}.route-editor-side-panel{flex:0 0 320px;max-width:360px}.route-editor-destination{flex-direction:column;gap:1rem;display:flex}.route-editor-tab-content{border-top:1px solid var(--border-color);padding-top:1rem}.facility-popup-card{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;padding:.5rem .75rem;font-size:.8rem}.route-editor-segment-table{background:var(--bg-card)}.segment-table-header,.segment-table-pills{border-bottom:1px solid var(--border-color)}.history-tab{padding:.5rem 0}.history-tab-loading,.history-tab-placeholder{text-align:center;color:var(--text-secondary);padding:1.5rem;font-size:.875rem}.history-tab-error{color:var(--danger);padding:1rem;font-size:.875rem}.geometry-tab{padding:.75rem 0}.segment-preset-chip-label{color:var(--text-secondary);letter-spacing:var(--tracking-caps);text-transform:uppercase;font-size:.7rem}.cancel-btn{color:var(--text-secondary);border:1px solid var(--border-color);cursor:pointer;background:0 0;border-radius:6px;padding:.35rem .75rem;font-size:.8rem;transition:all .2s}.cancel-btn:hover{color:var(--text-primary);border-color:var(--border-accent);background:var(--bg-card-hover)}.diversity-legend-swatch{border:1px solid var(--border-color);vertical-align:middle;border-radius:3px;width:14px;height:14px;margin-right:.4rem;display:inline-block}.swatch-shared{background:var(--srlg-shared)}.swatch-alternative{background:var(--srlg-alternative)}.error-banner__title{color:var(--text-primary);display:block}.error-banner__body{color:var(--text-secondary);font-size:.875rem}.parsed-errors{color:var(--text-primary);font-size:.8rem}.level-error{color:var(--danger)}.level-warning{color:var(--accent-orange)}.level-info{color:var(--text-secondary)}.peering-toggle-btn{color:var(--text-primary);transition:color .2s}.key-findings{margin-top:1rem}.finding-icon{flex-shrink:0;line-height:1}.finding-title{font-weight:600}.finding-text{color:var(--text-primary)}.comparison-matrix{margin-top:1rem}.overall{font-weight:600}.radar-chart-container{width:100%;position:relative}.bias-description{color:var(--text-secondary);font-size:.875rem}.bias-none{color:var(--text-muted);font-size:.875rem}.bias-table{border-collapse:collapse;width:100%;font-size:.875rem}.tab-bar{border-bottom:1px solid var(--border-color);gap:.5rem;margin-bottom:1rem;display:flex}.tab-content{padding-top:.5rem}.export-menu-item{text-align:left;width:100%;color:var(--text-primary);cursor:pointer;background:0 0;border:none;padding:.4rem .75rem;font-size:.875rem;display:block}.export-menu-item:hover{background:var(--bg-card-hover)}.country-context-empty{text-align:center;color:var(--text-muted);padding:1rem;font-size:.875rem}.power-gen-error{color:var(--danger);font-size:.875rem}.power-overlay-panel{background:var(--bg-card);border:1px solid var(--border-color);border-radius:8px;padding:.75rem}.cold-source-card{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-primary);border-radius:8px;padding:.5rem .75rem;font-size:.8rem}.sld-kofn-badge{background:var(--bg-secondary);color:var(--text-secondary);border-radius:20px;padding:1px 6px;font-size:.7rem;display:inline-block}.grid-3{grid-template-columns:repeat(3,1fr);gap:.75rem;display:grid}.panel-edge-toggle{width:22px;height:44px;color:var(--text-secondary);background:var(--bg-secondary);border:1px solid var(--border-color);cursor:pointer;z-index:20;border-left:none;border-radius:0 22px 22px 0;justify-content:center;align-items:center;padding:0;transition:color .15s,background .15s,border-color .15s;display:flex;position:absolute;top:50%;right:-22px;transform:translateY(-50%)}.panel-edge-toggle:hover{color:var(--accent-orange);background:var(--bg-card-hover);border-color:var(--border-accent)}.panel-edge-toggle:focus-visible{outline:2px solid var(--accent-orange);outline-offset:2px}.panel-edge-toggle--left{border-left:1px solid var(--border-color);border-right:none;border-radius:22px 0 0 22px;left:-22px;right:auto}.cs-tool-btn{cursor:pointer;border-radius:4px;align-items:center;gap:.25rem;min-height:44px;padding:2px 10px;font-family:Inter,sans-serif;font-size:.72rem;display:inline-flex}.cs-tool-btn--primary{border:1px solid var(--accent-orange,#e67e22);background:var(--accent-orange,#e67e22);color:#fff;font-weight:600}.cs-tool-btn--primary:hover:not(:disabled){background:var(--accent-orange-light,#f39c12)}.cs-tool-btn--secondary{border:1px solid var(--border-color);background:var(--bg-card);color:var(--text-secondary)}.cs-tool-btn--secondary:hover:not(:disabled){background:var(--bg-card-hover,#1e1e2e)}.cs-tool-btn--run{border:1px solid var(--accent-blue,#3498db);color:var(--accent-blue,#3498db);background:#3498db1f;font-weight:600}.cs-draw-marker{background:0 0;border:none}.cs-draw-marker__inner{background:var(--accent-orange,#e67e22);color:#fff;cursor:grab;pointer-events:auto;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-family:Inter,sans-serif;font-size:.65rem;font-weight:700;display:flex;box-shadow:0 2px 6px #0006}@media (pointer:coarse){.cs-draw-marker .cs-draw-marker__inner{width:52px;height:52px}}.site-topo-map-overlay{position:relative}.cs-draw-hint{pointer-events:none}.site-topo-map-overlay .cs-draw-hint{z-index:1000;background:var(--bg-card,#1e1e2e);color:var(--text-secondary);border:1px solid var(--border-color);white-space:nowrap;pointer-events:none;border-radius:4px;padding:.3rem .75rem;font-size:.72rem;position:absolute;bottom:1.25rem;left:50%;transform:translate(-50%)}.map-pipeline-banner{z-index:1001;white-space:nowrap;pointer-events:none;border-radius:6px;padding:.4rem 1rem;font-size:.8rem;font-weight:500;position:absolute;top:.75rem;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000040}.map-pipeline-banner--loading{background:var(--bg-card,#0d1f3c);color:var(--text-secondary,#89b);border:1px solid var(--border-color,#1e3a5f)}.map-pipeline-banner--error,.map-pipeline-banner--server_error{color:#fff;background:#b42828eb;border:1px solid #dc3c3c99}.map-pipeline-banner--auth{color:#fff;background:#643ca0eb;border:1px solid #8c5ac899}.map-pipeline-banner--network{color:#fff;background:#966414eb;border:1px solid #c88c2899}.map-pipeline-banner--unknown{color:#fff;background:#3c3c50eb;border:1px solid #64648299}.terrain-action-btn{cursor:pointer;border-radius:4px;align-items:center;gap:.25rem;min-height:44px;padding:.375rem .75rem;font-size:.8rem;transition:opacity .15s;display:flex}.terrain-action-btn:disabled{cursor:not-allowed;opacity:.5}.terrain-action-btn--danger{border:1px solid var(--danger,#dc2626);background:var(--bg-card,#1e1e2e);color:var(--danger,#dc2626)}.terrain-action-btn--danger:hover:not(:disabled){background:#dc26261a}.terrain-action-btn--secondary{border:1px solid var(--border-color,#334);background:var(--bg-card,#1e1e2e);color:var(--text-secondary,#888)}.terrain-action-btn--secondary:hover:not(:disabled){background:var(--bg-hover,#252d3d)}.topo-invalid-dem-refresh-btn{border:1px solid var(--warning,#f59e0b);min-height:44px;color:var(--warning,#f59e0b);cursor:pointer;background:0 0;border-radius:4px;margin-top:.25rem;padding:.4rem 1rem;font-size:.85rem}.topo-invalid-dem-refresh-btn:hover{background:#f59e0b1f}.topo-invalid-dem-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.topo-invalid-dem-refresh-btn:disabled:hover{background:0 0}.terrain-error-banner{border-radius:4px;margin-bottom:.5rem;padding:.4rem .75rem;font-size:.8rem}.terrain-error-banner--auth{color:#fff;background:#643ca0d9;border:1px solid #8c5ac899}.terrain-error-banner--server_error{color:#fff;background:#b42828d9;border:1px solid #dc3c3c99}.terrain-error-banner--network{color:#fff;background:#966414d9;border:1px solid #c88c2899}.terrain-error-banner--unknown{color:var(--danger,#dc2626);background:0 0;border:none}.curation-inline-form{border:1px solid var(--border-color);background:var(--bg-muted-subtle);border-radius:4px;padding:.75rem}.curation-form-row{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.curation-form-label{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:500}.curation-form-input{font-size:var(--fs-sm);color:var(--text-primary);background:var(--bg-card);border:1px solid var(--border-color);box-sizing:border-box;border-radius:3px;width:100%;padding:.3rem .5rem}.curation-form-input:focus{outline:2px solid var(--accent-primary);outline-offset:1px}.curation-form-input:disabled{opacity:.55;cursor:not-allowed}.curation-form-error{font-size:var(--fs-sm);color:var(--danger);margin-bottom:.5rem}.curation-submit-row{gap:.5rem;margin-top:.5rem;display:flex}.curation-save-btn{font-size:var(--fs-sm);background:var(--accent-primary);color:var(--text-on-accent,#fff);cursor:pointer;border:none;border-radius:3px;padding:.3rem .75rem}.curation-save-btn:hover:not(:disabled){filter:brightness(1.1)}.curation-save-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.curation-save-btn:disabled{opacity:.55;cursor:not-allowed}.curation-cancel-btn{font-size:var(--fs-sm);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:3px;padding:.3rem .75rem}.curation-cancel-btn:hover:not(:disabled){background:var(--bg-card-hover)}.curation-cancel-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.curation-cancel-btn:disabled{opacity:.55;cursor:not-allowed}.curation-edit-btn{font-size:var(--fs-xs);border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;white-space:nowrap;background:0 0;border-radius:3px;flex-shrink:0;padding:.2rem .5rem}.curation-edit-btn:hover:not(:disabled){background:var(--bg-card-hover);color:var(--accent-primary);border-color:var(--accent-primary)}.curation-edit-btn:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.curation-edit-btn:disabled{opacity:.55;cursor:not-allowed}.subsea-curation-panel{padding:1.5rem}.subsea-curation-section{border:1px solid var(--border-color);border-radius:4px;margin-bottom:1rem}.subsea-curation-section-header{background:var(--bg-muted-subtle);text-align:left;width:100%;font-size:var(--fs-sm);color:var(--text-primary);cursor:pointer;border:none;border-radius:3px;align-items:center;gap:.5rem;padding:.6rem .75rem;font-weight:600;display:flex}.subsea-curation-section-header:hover{filter:brightness(1.06)}.subsea-curation-section-header:focus-visible{outline:2px solid var(--accent-primary);outline-offset:1px}.subsea-curation-section-body{padding:.75rem}.subsea-curation-list-row{min-height:var(--touch-target-md);font-size:var(--fs-sm);color:var(--text-secondary);cursor:pointer;border-radius:3px;align-items:center;gap:.5rem;padding:.3rem .5rem;display:flex}.subsea-curation-list-row:hover{background:var(--bg-card-hover);color:var(--text-primary)}.subsea-curation-list-row:focus-visible{outline:2px solid var(--accent-primary);outline-offset:-2px;background:var(--bg-card-hover);color:var(--text-primary)}.subsea-curation-list-row--selected{background:var(--bg-card-hover);color:var(--text-primary);font-weight:500}.srlg-anchor-result{border:1px solid var(--border-color);font-size:var(--fs-xs);color:var(--text-secondary);background:var(--bg-muted-subtle);border-radius:4px;margin-top:.5rem;padding:.5rem .75rem}.curation-loading-hint{font-size:var(--fs-xs);color:var(--text-muted);padding:.25rem .5rem;display:block}.curation-no-results{font-size:var(--fs-xs);color:var(--text-muted);margin:0;padding:.25rem .5rem}.srlg-segment-ids-row{flex-direction:column;gap:.25rem;margin-bottom:.5rem;display:flex}.srlg-segment-ids-label{font-size:var(--fs-xs);color:var(--text-secondary);font-weight:500}.login-root{background:var(--bg-primary);width:100%;min-height:100vh;color:var(--text-primary);display:flex;position:relative;overflow:hidden}.login-bg{z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.login-bg-img{object-fit:cover;object-position:center 35%;width:100%;height:100%;display:block}.login-vignette{background:var(--marketing-hero-vignette,linear-gradient(120deg, #001236eb 0%, #001236a6 45%, #00123659 75%, #0012368c 100%));z-index:1;pointer-events:none;position:absolute;inset:0}.login-grain{opacity:.5;z-index:2;pointer-events:none;mix-blend-mode:overlay;background-image:radial-gradient(#ffffff0a 1px,#0000 1px);background-size:3px 3px;position:absolute;inset:0}.login-shell{z-index:3;flex:1;grid-template-columns:1fr minmax(360px,480px);align-items:center;gap:3rem;padding:3rem 4rem;display:grid;position:relative}@media (width<=1024px){.login-shell{grid-template-columns:1fr;gap:2rem;padding:2rem 1.5rem}}.login-brand{min-height:60vh;color:var(--text-primary);flex-direction:column;justify-content:space-between;display:flex}@media (width<=1024px){.login-brand{min-height:auto}}.login-brand-eyebrow{font-family:var(--font-mono,"Geist Mono", monospace);letter-spacing:.18em;text-transform:uppercase;color:var(--text-primary);opacity:.85;align-items:center;gap:.5rem;font-size:.75rem;display:inline-flex}.login-brand-dot{background:var(--brand-orange,#df6a15);width:8px;height:8px;box-shadow:0 0 12px var(--brand-orange,#df6a15);border-radius:50%}.login-brand-headline{font-family:var(--font-serif,"PT Serif", serif);color:var(--text-primary);margin:1.5rem 0 1rem;font-size:clamp(2rem,4.5vw,3.5rem);font-weight:400;line-height:1.1}.login-brand-headline em{color:var(--brand-orange,#df6a15);font-style:italic}.login-brand-subhead{max-width:38ch;color:var(--text-secondary);margin:0 0 2rem;font-size:1rem;line-height:1.6}.login-brand-meta{font-family:var(--font-mono,"Geist Mono", monospace);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);flex-wrap:wrap;gap:2rem;font-size:.75rem;display:flex}.login-brand-meta-item{flex-direction:column;gap:.25rem;display:flex}.login-brand-meta-value{font-size:1.125rem;font-family:var(--font-mono,"Geist Mono", monospace);color:var(--text-primary);letter-spacing:.04em;text-transform:none}.login-card{-webkit-backdrop-filter:blur(14px);color:var(--text-primary);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:12px;padding:2.25rem 2rem;box-shadow:0 24px 48px #00000059}.login-card-wordmark{text-align:center;margin-bottom:1.5rem}.login-card-wordmark-text{letter-spacing:.04em;font-size:1.75rem;font-weight:700;line-height:1;display:block}.login-card-tagline{font-family:var(--font-serif,"PT Serif", serif);color:var(--text-secondary);margin-top:.375rem;font-size:.8125rem;font-style:italic}.login-card-product{font-family:var(--font-mono,"Geist Mono", monospace);letter-spacing:.22em;text-transform:uppercase;color:var(--text-muted);margin-top:.5rem;font-size:.6875rem}.login-error{background:var(--bg-danger-subtle);color:var(--danger);border:1px solid var(--danger);border-radius:6px;margin-bottom:1rem;padding:.625rem .875rem;font-size:.8125rem}.login-notice{background:var(--bg-info-subtle);color:var(--accent-primary);border-radius:6px;margin-bottom:1rem;padding:.625rem .875rem;font-size:.8125rem}.login-btn-google{background:var(--text-primary);width:100%;color:var(--bg-primary);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;min-height:44px;margin-bottom:1.5rem;padding:.6875rem 1rem;font-size:.875rem;font-weight:600;transition:filter .15s;display:flex}.login-btn-google:hover:not(:disabled){filter:brightness(.92)}.login-btn-google:focus-visible{outline:2px solid var(--brand-orange);outline-offset:2px}.login-btn-google:disabled{opacity:.55;cursor:not-allowed}.login-divider{color:var(--text-muted);font-family:var(--font-mono,"Geist Mono", monospace);letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:.75rem;margin:0 0 1rem;font-size:.6875rem;display:flex}.login-divider:before,.login-divider:after{content:"";background:#ffffff1f;flex:1;height:1px}.login-input{width:100%;color:var(--text-primary);box-sizing:border-box;background:#ffffff0a;border:1px solid #ffffff24;border-radius:6px;min-height:44px;margin-bottom:.625rem;padding:.6875rem .875rem;font-size:.875rem;transition:border-color .15s,background .15s}.login-input:focus-visible{border-color:var(--brand-orange);background:#ffffff12;outline:none}.login-input::placeholder{color:var(--text-muted)}.login-forgot-row{justify-content:flex-end;margin-bottom:1rem;display:flex}.login-forgot-btn{color:var(--brand-orange);cursor:pointer;background:0 0;border:none;padding:0;font-size:.75rem;text-decoration:underline}.login-forgot-btn:disabled{cursor:not-allowed;opacity:.55}.login-btn-submit{background:var(--brand-orange);width:100%;color:var(--text-primary);cursor:pointer;border:none;border-radius:6px;min-height:44px;padding:.6875rem 1rem;font-size:.875rem;font-weight:600;transition:filter .15s}.login-btn-submit:hover:not(:disabled){filter:brightness(1.08)}.login-btn-submit:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.login-btn-submit:disabled{opacity:.55;cursor:not-allowed}.login-sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.access-error-banner{background-color:var(--bg-danger-subtle);border:1px solid var(--accent-red);border-radius:4px;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;padding:.75rem 1rem;display:flex}.access-error-banner__content{flex:1;align-items:flex-start;gap:.5rem;display:flex}.access-error-banner__icon{color:var(--accent-red);flex-shrink:0;font-size:1rem;line-height:1.4}.access-error-banner__text{flex-direction:column;gap:.25rem;display:flex}.access-error-banner__title{color:var(--accent-red);font-size:.875rem;font-weight:600}.access-error-banner__message{color:var(--text-secondary);font-size:.875rem}.access-error-banner__meta{color:var(--text-muted);font-size:.8125rem}.access-error-banner__dismiss{color:var(--accent-red);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0;font-size:1.125rem;line-height:1}.reauth-modal-backdrop{-webkit-backdrop-filter:blur(6px);z-index:1200;background:#001236b8;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.reauth-modal-card{background:var(--bg-primary);border:1px solid var(--border-color);width:100%;max-width:440px;box-shadow:var(--shadow-card);text-align:center;border-radius:10px;padding:2rem 1.75rem}.reauth-modal-icon{color:var(--warning);margin-bottom:.75rem;font-size:2.25rem;line-height:1}.reauth-modal-title{color:var(--text-primary);letter-spacing:.01em;margin:0 0 .5rem;font-size:1.25rem;font-weight:600}.reauth-modal-message{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.9375rem;line-height:1.55}.reauth-modal-action{background:var(--warning);color:var(--bg-primary);border:1px solid var(--warning);cursor:pointer;border-radius:6px;min-width:180px;min-height:44px;padding:0 1.5rem;font-size:.9375rem;font-weight:500;transition:filter .15s;display:inline-block}.reauth-modal-action:hover{filter:brightness(1.08)}.reauth-modal-action:focus-visible{outline:2px solid var(--text-primary);outline-offset:2px}.data-table-numeric{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.data-table-chooser{font-size:var(--fs-xs);color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.data-table-chooser-label{text-transform:uppercase;letter-spacing:var(--tracking-caps);color:var(--text-muted);font-weight:700}.data-table-chooser-item{cursor:pointer;white-space:nowrap;align-items:center;gap:.3rem;display:inline-flex}.data-table-sort-btn{color:inherit;font:inherit;cursor:pointer;text-align:inherit;background:0 0;border:none;margin:0;padding:0}.data-table-sort-btn:hover{color:var(--text-primary)}.data-table-sort-btn:focus-visible{outline:2px solid var(--accent-primary,var(--accent-blue));outline-offset:2px;border-radius:var(--radius-sm)}.data-table-filter-row{background:var(--bg-secondary)}.data-table-filter-row th{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);text-transform:none;padding:.375rem .875rem;font-weight:400}.data-table-filter-input{background:var(--bg-input);border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);font-size:var(--fs-xs);padding:.3rem .5rem}.data-table-filter-input:focus{border-color:var(--accent-blue,var(--accent-primary));outline:none}.access-pending{background-color:var(--bg-primary);min-height:100vh;color:var(--text-primary);justify-content:center;align-items:center;padding:1.5rem;display:flex}.access-pending__card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;flex-direction:column;gap:.75rem;width:100%;max-width:26rem;padding:2rem;display:flex}.access-pending__wordmark{font-family:var(--font-sans);letter-spacing:.18em;color:var(--brand-orange);font-size:.75rem;font-weight:700}.access-pending__title{font-family:var(--font-serif);color:var(--text-primary);margin:0;font-size:1.5rem;font-weight:600}.access-pending__body{color:var(--text-secondary);margin:0;font-size:.9375rem;line-height:1.5}.access-pending__label{color:var(--text-secondary);margin-top:.5rem;font-size:.8125rem;font-weight:600}.access-pending__select,.access-pending__textarea{width:100%;min-height:44px;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-color);box-sizing:border-box;border-radius:4px;padding:.625rem .75rem;font-size:.9375rem}.access-pending__textarea{resize:vertical;min-height:88px}.access-pending__submit{min-height:44px;font-family:var(--font-sans);color:var(--text-primary);background-color:var(--brand-orange);border:1px solid var(--brand-orange);cursor:pointer;border-radius:4px;margin-top:.5rem;padding:0 1rem;font-size:.9375rem;font-weight:600}.access-pending__submit:hover:not(:disabled){background-color:var(--accent-orange)}.access-pending__submit:disabled{opacity:.5;cursor:not-allowed}.access-pending__signout{min-height:44px;font-family:var(--font-sans);color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-top:.25rem;font-size:.875rem;text-decoration:underline}.access-pending__field-error{color:var(--accent-red);margin:0;font-size:.8125rem}.access-pending__banner{color:var(--accent-red);background-color:var(--bg-danger-subtle);border:1px solid var(--accent-red);border-radius:4px;padding:.625rem .75rem;font-size:.875rem}.access-pending__success{flex-direction:column;gap:.375rem;display:flex}.access-pending__success-title{color:var(--text-primary);margin:0;font-size:1rem;font-weight:600}.access-pending__muted{color:var(--text-muted);margin:0;font-size:.875rem}
