*{margin:0;padding:0;box-sizing:border-box}:root{--calcite-color-brand: #1976d2;--layer-online: rgb(34, 197, 94);--layer-offline: rgb(220, 38, 38);--layer-fsa: rgb(255, 65, 54);--layer-fiber: rgb(0, 255, 0);--layer-mst: rgb(0, 191, 255);--layer-splitter: rgb(128, 0, 128);--layer-closure: rgb(255, 140, 0);--layer-node: rgb(255, 165, 0);--layer-electric: rgb(74, 124, 89);--layer-fiber-truck: rgb(30, 95, 175);--layer-weather: rgb(59, 130, 246)}[data-theme=dark]{--calcite-color-brand: #4a9eff}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--calcite-color-foreground-1);color:var(--calcite-color-text-1);overflow:hidden;-webkit-font-smoothing:antialiased}.app-skeleton{position:fixed;inset:0;display:flex;flex-direction:column;background:var(--calcite-color-foreground-1, #f8f8f8);z-index:9998}.app-skeleton.hidden{display:none}.skeleton-header{height:56px;background:var(--calcite-color-foreground-2, #fff);border-bottom:1px solid var(--calcite-color-border-3);display:flex;align-items:center;padding:0 16px;gap:16px}.skeleton-logo,.skeleton-search,.skeleton-actions{background:linear-gradient(90deg,#e0e0e0 25%,#f0f0f0,#e0e0e0 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:4px}.skeleton-logo{width:140px;height:28px}.skeleton-search{flex:1;max-width:600px;height:36px}.skeleton-actions{width:120px;height:28px}.skeleton-body{flex:1;display:flex;overflow:hidden}.skeleton-sidebar{width:350px;background:var(--calcite-color-foreground-2);border-right:1px solid var(--calcite-color-border-3)}.skeleton-map{flex:1;display:flex;align-items:center;justify-content:center;background:var(--calcite-color-foreground-3)}[data-theme=dark] .skeleton-logo,[data-theme=dark] .skeleton-search,[data-theme=dark] .skeleton-actions{background:linear-gradient(90deg,#404040 25%,#505050,#404040 75%);background-size:200% 100%}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.auth-container{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(135deg,#6c757d,#495057);z-index:10000;padding:20px}[data-theme=dark] .auth-container{background:linear-gradient(135deg,#343a40,#212529)}.auth-welcome-section,.clerk-sign-in-wrapper,.auth-loading,.auth-error{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:400px;text-align:center}.auth-welcome-section{margin-bottom:2rem;color:#fff}.auth-logo{display:flex;align-items:center;justify-content:center;width:80px;height:80px;margin:0 auto 1.5rem;background:#ffffff26;border-radius:50%;backdrop-filter:blur(10px)}.auth-logo calcite-icon{color:#fff;--calcite-icon-size: 2.5rem}.auth-title{font-size:2rem;font-weight:600;margin-bottom:.5rem;color:#fff}.auth-subtitle{font-size:1rem;color:#ffffffe6;line-height:1.5}.clerk-sign-in-wrapper{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d;padding:2rem}[data-theme=dark] .clerk-sign-in-wrapper{background:var(--calcite-color-foreground-1)}#clerk-sign-in-container{width:100%;display:flex;justify-content:center}.auth-loading{gap:1rem;color:#fff}.auth-loading p{font-size:1rem;margin:0}.auth-error-page{display:flex;flex-direction:column;align-items:center;gap:1rem;max-width:400px;padding:2rem;background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d}#app{height:100vh}calcite-shell{height:100%}[hidden]{display:none!important}calcite-shell-panel{transition:width var(--calcite-animation-timing) ease-in-out}calcite-action-bar::part(expand-toggle){display:none!important}#panel-collapse-toggle{opacity:.8;transition:opacity var(--calcite-animation-timing)}#panel-collapse-toggle:hover{opacity:1}calcite-shell-panel[collapsed] calcite-action-bar calcite-action:hover{transform:scale(1.1);background:var(--calcite-color-foreground-2)}.map-container,arcgis-map{width:100%;height:100%;touch-action:pan-x pan-y;-webkit-overflow-scrolling:touch}arcgis-map arcgis-locate,arcgis-map arcgis-track,arcgis-map arcgis-search,arcgis-map arcgis-fullscreen,arcgis-map arcgis-expand{margin-bottom:12px}arcgis-map arcgis-basemap-toggle,arcgis-map arcgis-distance-measurement-2d{margin-top:12px}calcite-navigation.unified-header{--calcite-navigation-height: 64px;min-height:64px;max-height:64px;border-bottom:1px solid var(--calcite-color-border-1);background:var(--calcite-color-foreground-1)}calcite-navigation.unified-header calcite-navigation-logo{font-weight:600;color:var(--calcite-color-brand)}.navigation-content-center{display:flex;align-items:center;justify-content:space-between;flex:1;padding:0 var(--calcite-spacing-lg);gap:var(--calcite-spacing-lg)}.search-section{flex:1;max-width:600px;display:flex;justify-content:center}.metrics-section{display:flex;align-items:center;gap:var(--calcite-spacing-sm);flex-shrink:0}.navigation-actions{display:flex;align-items:center;gap:var(--calcite-spacing-xs);padding-right:var(--calcite-spacing-md)}.header-search-input{width:100%;max-width:500px}#metrics-chip,#mobile-metrics-chip{--calcite-chip-border-color: var(--calcite-color-status-danger);--calcite-chip-text-color: var(--calcite-color-status-danger);font-family:var(--calcite-font-family-monospace);font-weight:var(--calcite-font-weight-bold);min-width:48px;text-align:center}#mobile-metrics-chip{--calcite-chip-background-color: rgba(255, 255, 255, .95);box-shadow:0 2px 8px #00000026;backdrop-filter:blur(10px)}.desktop-only{display:none}.mobile-only{display:block}#mobile-tab-bar{position:fixed;bottom:0;left:0;right:0;z-index:1000;background:var(--calcite-color-foreground-1);border-top:1px solid var(--calcite-color-border-2);box-shadow:0 -2px 8px #0000001a;--calcite-segmented-control-height: 64px}#mobile-tab-bar calcite-segmented-control-item{height:64px}#mobile-outage-overlay{position:fixed;top:20px;left:20px;z-index:100;pointer-events:none;display:none}#mobile-close-button{display:none!important;position:fixed;bottom:64px;left:0;right:0;z-index:901;border-radius:0;border-top:2px solid var(--calcite-color-brand)}#mobile-close-button.show{display:block!important}calcite-dialog.mobile-only[open]{--calcite-dialog-width-multiplier: 1;position:fixed!important;inset:0 0 120px!important;width:100%!important;height:calc(100vh - 120px)!important;margin:0!important;border-radius:0!important}calcite-dialog.mobile-only[open]::part(scrim){backdrop-filter:blur(4px)}calcite-dialog.mobile-only [slot=header]{padding:var(--calcite-spacing-md)!important;background:var(--calcite-color-foreground-2)!important;border-bottom:1px solid var(--calcite-color-border-2)!important;position:sticky!important;top:0!important;z-index:10!important}calcite-dialog.mobile-only [slot=content]{flex:1 1 auto!important;overflow-y:auto!important;background:var(--calcite-color-foreground-1)!important;padding:var(--calcite-spacing-md)!important}.dialog-header{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px}.dialog-title{font-weight:600;font-size:16px;color:var(--calcite-color-text-1);flex:1}.layer-toggle-item{cursor:pointer;transition:background-color .2s ease}.layer-toggle-item:hover{background:var(--calcite-color-foreground-2)}calcite-list-item[data-layer-type=online]{border-left:3px solid var(--layer-online)}calcite-list-item[data-layer-type=offline]{border-left:3px solid var(--layer-offline)}calcite-list-item[data-layer-type=fsa]{border-left:3px solid var(--layer-fsa)}calcite-list-item[data-layer-type=fiber]{border-left:3px solid var(--layer-fiber)}calcite-list-item[data-layer-type=mst]{border-left:3px solid var(--layer-mst)}calcite-list-item[data-layer-type=splitter]{border-left:3px solid var(--layer-splitter)}calcite-list-item[data-layer-type=closure]{border-left:3px solid var(--layer-closure)}calcite-list-item[data-layer-type=node]{border-left:3px solid var(--layer-node)}calcite-list-item[data-layer-type=electric]{border-left:3px solid var(--layer-electric)}calcite-list-item[data-layer-type=fiber-truck]{border-left:3px solid var(--layer-fiber-truck)}calcite-list-item[data-layer-type=weather]{border-left:3px solid var(--layer-weather)}#layers-content calcite-list-item[label="Online Subscribers"]{border-left:3px solid var(--layer-online)}#layers-content calcite-list-item[label="Offline Subscribers"]{border-left:3px solid var(--layer-offline)}#osp-content calcite-list-item[label*=FSA]{border-left:3px solid var(--layer-fsa)}#osp-content calcite-list-item[label*=Fiber]{border-left:3px solid var(--layer-fiber)}#osp-content calcite-list-item[label*=MST]{border-left:3px solid var(--layer-mst)}#osp-content calcite-list-item[label*=Splitter]{border-left:3px solid var(--layer-splitter)}#osp-content calcite-list-item[label*=Closure]{border-left:3px solid var(--layer-closure)}#network-parent-content calcite-list-item[label="Node Sites"]{border-left:3px solid var(--layer-node)}#vehicles-content calcite-list-item[label*=Electric]{border-left:3px solid var(--layer-electric)}#vehicles-content calcite-list-item[label*=Fiber]{border-left:3px solid var(--layer-fiber-truck)}#tools-content calcite-list-item[label="Weather Radar"]{border-left:3px solid var(--layer-weather)}#power-outages-content{display:flex;flex-direction:column;height:100%;min-height:400px}.power-company-card{margin-bottom:var(--calcite-spacing-sm);transition:transform .2s,box-shadow .2s}.power-company-card:hover{transform:translateY(-1px);box-shadow:var(--calcite-shadow-1)}.power-company-card[data-company=apco]{border-left:4px solid var(--layer-fiber-truck)}.power-company-card[data-company=tombigbee]{border-left:4px solid var(--layer-electric)}.company-header{display:flex;align-items:center;justify-content:space-between;padding:var(--calcite-spacing-md)}.company-info{display:flex;align-items:center;gap:var(--calcite-spacing-sm);flex:1}.company-logo{width:24px;height:24px;object-fit:contain;flex-shrink:0}.company-name{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.customers-affected{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-3)}.outage-counter{text-align:center;padding:var(--calcite-spacing-xs)}.counter-value{font-size:var(--calcite-font-size-2);font-weight:var(--calcite-font-weight-bold);font-family:var(--calcite-font-family-monospace)}.counter-label{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-2);text-transform:uppercase}.status-Online{color:var(--calcite-color-status-success);font-weight:600}.status-Offline{color:var(--calcite-color-status-danger);font-weight:600}.status-Unknown{color:var(--calcite-color-text-3);font-style:italic}.popup-status-indicator{display:flex;align-items:center;gap:8px;margin-bottom:8px}.popup-status-dot{width:8px;height:8px;border-radius:50%}.popup-status-dot.online{background:var(--calcite-color-status-success)}.popup-status-dot.offline{background:var(--calcite-color-status-danger)}.popup-status-badge{background:var(--calcite-color-foreground-2);border:1px solid var(--calcite-color-border-2);border-radius:16px;padding:4px 12px;font-size:12px}.popup-status-badge.online{border-color:var(--calcite-color-status-success);color:var(--calcite-color-status-success)}.popup-status-badge.offline{border-color:var(--calcite-color-status-danger);color:var(--calcite-color-status-danger)}.mobile-network-status-cards{display:flex;gap:var(--calcite-spacing-md);margin-bottom:var(--calcite-spacing-md)}.mobile-status-card{flex:1;padding:var(--calcite-spacing-md);border:1px solid var(--calcite-color-border-3);border-radius:var(--calcite-border-radius);background:var(--calcite-color-foreground-1)}.mobile-status-label{display:flex;align-items:center;gap:var(--calcite-spacing-xs);font-size:var(--calcite-font-size--1);font-weight:var(--calcite-font-weight-medium);text-transform:uppercase}.mobile-status-card-online .mobile-status-label{color:var(--calcite-color-status-success)}.mobile-status-card-offline .mobile-status-label{color:var(--calcite-color-status-danger)}.mobile-status-count{font-size:var(--calcite-font-size-3);font-weight:var(--calcite-font-weight-bold);font-family:var(--calcite-font-family-monospace)}.mobile-status-card-online .mobile-status-count{color:var(--calcite-color-status-success)}.mobile-status-card-offline .mobile-status-count{color:var(--calcite-color-status-danger)}.node-site-metrics{font-family:var(--calcite-font-family);max-width:400px}.metrics-header{display:flex;align-items:center;gap:var(--calcite-spacing-sm);padding:var(--calcite-spacing-md);background:var(--calcite-color-foreground-2);border-bottom:1px solid var(--calcite-color-border-2)}.metrics-title{font-size:var(--calcite-font-size-0);font-weight:var(--calcite-font-weight-medium)}.metrics-content{padding:var(--calcite-spacing-md)}.metrics-counters,.service-type-counters{display:flex;gap:var(--calcite-spacing-sm);margin-bottom:var(--calcite-spacing-md)}.metric-item,.service-type-item{flex:1;text-align:center;padding:var(--calcite-spacing-sm);border-radius:var(--calcite-border-radius);background:var(--calcite-color-foreground-2);border:1px solid var(--calcite-color-border-3)}.metric-item[data-status=online]{border-color:var(--calcite-color-status-success)}.metric-item[data-status=offline]{border-color:var(--calcite-color-status-danger)}.metric-item[data-status=total]{border-color:var(--calcite-color-brand)}.metric-value,.service-type-value{font-size:var(--calcite-font-size-2);font-weight:var(--calcite-font-weight-bold);font-family:var(--calcite-font-family-monospace);margin-bottom:var(--calcite-spacing-xs)}.metric-item[data-status=online] .metric-value{color:var(--calcite-color-status-success)}.metric-item[data-status=offline] .metric-value{color:var(--calcite-color-status-danger)}.metric-label,.service-type-label{font-size:var(--calcite-font-size--1);color:var(--calcite-color-text-3);text-transform:uppercase}#simple-vehicle-list{flex:1;min-height:200px;overflow-y:auto}.install-prompt{position:fixed;bottom:80px;left:20px;right:20px;background:var(--calcite-color-brand);color:#fff;padding:16px;border-radius:8px;box-shadow:0 4px 16px #0003;transform:translateY(120px);opacity:0;transition:all .3s ease;z-index:1000}.install-prompt.show{transform:translateY(0);opacity:1}#notice-container{position:fixed;bottom:20px;left:50%;transform:translate(-50%);z-index:1000;max-width:500px;width:90%;display:flex;flex-direction:column;gap:10px;pointer-events:none}#notice-container calcite-notice{pointer-events:all;animation:slideIn .3s ease-out}.loading{display:flex;align-items:center;justify-content:center;height:100vh}.error{color:var(--calcite-color-status-danger)}.stats-content::-webkit-scrollbar,.outages-list::-webkit-scrollbar,#simple-vehicle-list::-webkit-scrollbar{width:8px}.stats-content::-webkit-scrollbar-track,.outages-list::-webkit-scrollbar-track,#simple-vehicle-list::-webkit-scrollbar-track{background:var(--calcite-color-foreground-2);border-radius:4px}.stats-content::-webkit-scrollbar-thumb,.outages-list::-webkit-scrollbar-thumb,#simple-vehicle-list::-webkit-scrollbar-thumb{background:var(--calcite-color-border-1);border-radius:4px}@media (max-width: 768px){input,textarea,select,calcite-input,calcite-autocomplete,arcgis-search input{font-size:16px!important}}calcite-button:focus:not(:focus-visible),calcite-action:focus:not(:focus-visible){outline:none;box-shadow:none}calcite-button:focus-visible,calcite-action:focus-visible{outline:2px solid var(--calcite-color-brand);outline-offset:2px}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width: 767px){calcite-navigation.unified-header{display:none!important}#mobile-outage-overlay,.mobile-only{display:block!important}.desktop-only{display:none!important}.map-container{height:calc(100vh - 64px)}calcite-dialog.mobile-only[open]{top:0!important;bottom:64px!important;height:calc(100vh - 64px)!important}#mobile-close-button.show{display:block!important;position:fixed!important;bottom:64px!important}.layer-toggle-item:active{background:var(--calcite-color-foreground-3)}.mobile-network-status-cards{flex-direction:row;gap:var(--calcite-spacing-sm)}.mobile-status-count{font-size:var(--calcite-font-size-2)}.esri-popup--is-docked{max-width:calc(100vw - 32px)!important;margin-bottom:80px!important;border-radius:16px 16px 0 0!important}}@media (min-width: 768px) and (max-width: 1366px){calcite-navigation.unified-header{display:none!important}#mobile-outage-overlay{display:block!important}.desktop-only{display:none!important}.mobile-only,#mobile-tab-bar{display:block!important}.map-container{height:calc(100vh - 64px)}calcite-dialog.mobile-only[open]{position:fixed!important;inset:0 0 120px!important;height:calc(100vh - 120px)!important}#mobile-close-button.show{display:block!important;position:fixed!important;bottom:64px!important}}@media (min-width: 1367px){.desktop-only{display:block!important}.mobile-only,#mobile-tab-bar,#mobile-close-button{display:none!important}calcite-navigation.unified-header .navigation-actions{padding-right:var(--calcite-spacing-lg)}}.noscript-fallback{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--calcite-color-foreground-1);padding:2rem;text-align:center}#prtg-container{width:100%;height:600px;border:none;background:var(--calcite-color-foreground-1)}#prtg-container iframe{width:100%;height:100%;border:none}#cache-status-container{padding:var(--calcite-spacing-md)}
