.header{height:64px;-webkit-backdrop-filter:saturate(120%) blur(8px);backdrop-filter:saturate(120%) blur(8px);background:linear-gradient(135deg,#0f172a,#1e293b);border-bottom:1px solid rgba(255,255,255,.1);box-shadow:0 2px 20px #00000026;position:fixed;top:0;left:0;right:0;z-index:1000;transition:all .3s ease}.header.scrolled{-webkit-backdrop-filter:saturate(120%) blur(10px);backdrop-filter:saturate(120%) blur(10px);background:linear-gradient(135deg,#0f172af2,#1e293bf2);box-shadow:0 4px 30px #0003;border-bottom:1px solid rgba(255,255,255,.15)}.header-container{max-width:1200px;margin:0 auto;padding:0 20px;display:flex;justify-content:space-between;align-items:center;height:64px}.brand{display:flex;gap:.6rem;align-items:center}.brand img{width:28px;height:28px;object-fit:cover;border-radius:50%}.brand-name{font-weight:700;font-size:1.05rem;color:#fff}.nav{display:flex;align-items:center;gap:1rem}.nav-links a{padding:10px 12px;color:#e2e8f0;transition:all .2s ease;border-radius:8px}.nav-links a.active,.nav-links a:hover{color:#fff;background:#ffffff0f;border-radius:8px}.theme-toggle{background:transparent;border:1px solid rgba(255,255,255,.12);padding:6px 8px;border-radius:8px;color:#cbd5e1;transition:all .2s ease;cursor:pointer}.theme-toggle:hover{background:#ffffff0f;border-color:#fff3}.login-btn{background:#2563eb;color:#fff;padding:8px 14px;border-radius:10px;font-weight:500;transition:all .2s ease;cursor:pointer;border:none}.login-btn:hover{background:#1d4ed8;transform:translateY(-1px)}.login-link{background-color:var(--primary-color);color:#fff!important;padding:.5rem 1.25rem!important;border-radius:.5rem;font-weight:500;transition:all .3s ease}.login-link:hover{background-color:var(--primary-dark);color:#fff!important;transform:translateY(-1px);box-shadow:0 4px 12px #2c3e504d}@media(max-width:768px){.header-container{padding:0 1rem}.logo{margin-right:1rem}.logo-image{height:36px;width:36px}.logo-text{font-size:1rem;margin-left:.5rem}.nav{gap:.25rem}.nav-link{padding:.625rem .75rem;font-size:.875rem}.nav-link:after{height:1.5px}.login-link{padding:.5rem 1rem!important;font-size:.875rem}.nav-button{padding:.5rem 1rem;font-size:.875rem}}.theme-toggle{background:#3b82f61a;border:1px solid rgba(59,130,246,.2);color:#3b82f6;padding:.5rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem;margin-right:1rem}.theme-toggle:hover{background:#3b82f633;border-color:#3b82f6;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #3b82f64d}.header-container.modern{max-width:1600px;margin:0 auto;padding:0 3rem;height:70px;display:grid;grid-template-columns:220px 1fr auto;align-items:center;gap:3rem}.brand{display:flex;align-items:center;gap:.875rem;transition:all .3s ease;padding:.5rem 0}.brand:hover{opacity:.85;transform:translate(2px)}.brand img{width:36px;height:36px;border-radius:10px;object-fit:cover;box-shadow:0 2px 8px #0000001a}.brand-name{color:#fff;font-weight:600;font-size:1.125rem;letter-spacing:-.03em}.nav-center{display:flex;gap:.25rem;justify-self:start;align-items:center}.nav-link{position:relative;color:#ffffffa6;padding:.625rem 1.125rem;font-weight:500;font-size:.9375rem;transition:all .3s cubic-bezier(.4,0,.2,1);border-radius:12px;letter-spacing:-.01em}.nav-link:hover{color:#fffffff2;background:#ffffff0f}.nav-link.active{color:#fff;background:#3b82f61f;font-weight:600;box-shadow:inset 0 0 0 1px #3b82f633}.active-indicator{display:none}.nav-right{justify-self:end;display:flex;align-items:center;gap:.625rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:12px;background:#ffffff0f;border:none;color:#fff;font-size:1.125rem;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer}.icon-btn:hover{background:#ffffff1a;transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.pill-btn{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;padding:.625rem 1.5rem;border-radius:12px;font-weight:600;font-size:.875rem;border:none;transition:all .3s cubic-bezier(.4,0,.2,1);cursor:pointer;letter-spacing:-.01em;box-shadow:0 2px 8px #2563eb33}.pill-btn:hover{transform:translateY(-2px);box-shadow:0 4px 16px #2563eb59}.pill-btn:active{transform:translateY(0)}.header{height:70px;position:fixed;inset:0 0 auto;z-index:1000;transition:all .4s cubic-bezier(.4,0,.2,1)}.header.landing-page-header{-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);background:#ffffff14;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:none}.header.landing-page-header.scrolled{-webkit-backdrop-filter:blur(20px) saturate(200%);backdrop-filter:blur(20px) saturate(200%);background:#ffffff1f;border-bottom:1px solid rgba(255,255,255,.12);box-shadow:0 4px 24px #00000014}.header.other-pages-header{-webkit-backdrop-filter:blur(16px) saturate(180%);backdrop-filter:blur(16px) saturate(180%);background:#0a0e1ad9;border-bottom:1px solid rgba(255,255,255,.06);box-shadow:none}.header.other-pages-header.scrolled{-webkit-backdrop-filter:blur(20px) saturate(200%);backdrop-filter:blur(20px) saturate(200%);background:#0a0e1aeb;border-bottom:1px solid rgba(255,255,255,.08);box-shadow:0 4px 24px #0000001f}.nav-link:focus-visible,.icon-btn:focus-visible,.pill-btn:focus-visible{outline:2px solid #60a5fa;outline-offset:2px}@media(max-width:1200px){.header-container.modern{padding:0 2rem;gap:2rem}.nav-link{padding:.625rem .875rem;font-size:.875rem}}@media(max-width:920px){.header{height:64px}.header-container.modern{grid-template-columns:1fr auto;padding:0 1.5rem;gap:1rem;height:64px}.nav-center{display:none}.brand img{width:32px;height:32px}.brand-name{font-size:1rem}.icon-btn{width:38px;height:38px;font-size:1rem}.pill-btn{padding:.5rem 1.25rem;font-size:.8125rem}}@media(max-width:480px){.header-container.modern{padding:0 1rem}.brand-name{display:none}.nav-right{gap:.5rem}}.layout{min-height:100vh;display:flex;flex-direction:column}.main-content{flex:1;padding-top:64px}.footer{background-color:var(--card-background);border-top:1px solid var(--border-color);padding:1rem 0;text-align:center;color:var(--text-secondary);font-size:.875rem}.footer-container{max-width:1200px;margin:0 auto;padding:0 1rem}.landing-page{position:relative;min-height:100vh;padding-top:64px;isolation:isolate}.landing-page:after{content:"";position:fixed;inset:0;height:100dvh;z-index:1;background:linear-gradient(90deg,#000,#020617cc 40%,#020617b3,#02061780,#0206174d)}.hero-bg{position:fixed;inset:0;width:100%;height:100dvh;object-fit:cover;z-index:0;pointer-events:none;filter:brightness(1) saturate(.8) contrast(1.4)}.hero-section{color:#fff;padding:6rem 4rem;text-align:left;min-height:84vh;display:flex;flex-direction:column;justify-content:center;max-width:1400px;margin:0 auto;position:relative;z-index:2}.hero-title{font-size:clamp(2.6rem,3.2vw + 1rem,4rem);line-height:1.1;max-width:20ch;text-wrap:balance;font-weight:700;margin-bottom:1.5rem;letter-spacing:-.02em;opacity:0;transform:translateY(30px);animation:fadeInUp .6s ease-out .3s forwards}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.hero-subtitle{font-size:1.25rem;margin-bottom:3rem;color:#fffc;max-width:60ch;line-height:1.5;font-weight:400;opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease-out .6s forwards}.cta-row{display:flex;gap:20px;margin-top:24px;opacity:0;transform:translateY(20px);animation:fadeInUp .6s ease-out .9s forwards}.cta-primary{padding:1.1rem 2.2rem;background:#2563eb;border:1px solid transparent;border-radius:.75rem;color:#fff;font-weight:700;font-size:1.05rem;text-decoration:none;cursor:pointer;transition:all .3s ease;box-shadow:0 6px 20px #2563eb4d;position:relative;display:inline-block}.cta-primary:hover{background:#1d4ed8;transform:translateY(-3px);box-shadow:0 12px 30px #2563eb66;color:#fff}.cta-secondary{padding:1rem 1.8rem;background:#ffffff14;border:1px solid rgba(255,255,255,.16);border-radius:.75rem;color:#ffffffe6;font-weight:600;font-size:1rem;cursor:pointer;transition:all .3s ease;display:inline-flex;align-items:center;gap:.5rem}.cta-secondary:hover{background:#ffffff1f;color:#fff;border-color:#ffffff3d;transform:translateY(-2px);box-shadow:0 6px 16px #ffffff1a}.trust-note{margin-top:8px;color:#e2e8f0cc;font-size:.9rem;opacity:0;transform:translateY(15px);animation:fadeInUp .6s ease-out .8s forwards}.landing-page .features-section{padding:4rem 2rem;background-color:var(--card-background);display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;max-width:1200px;margin:0 auto;opacity:0;transform:translateY(40px);animation:fadeInUp 1s ease-out 1.2s forwards}.landing-page .feature-card{background-color:var(--background-color);padding:2rem;border-radius:1rem;text-align:center;box-shadow:var(--shadow-md);transition:transform .3s ease,box-shadow .3s ease;opacity:0;transform:translateY(30px);animation:fadeInUp .8s ease-out calc(1.4s + var(--card-index, 0) * .1s) forwards}.landing-page .feature-card:hover{transform:translateY(-4px)}.landing-page .feature-icon{font-size:3rem;margin-bottom:1rem}.landing-page .feature-card h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem;color:var(--text-primary)}.landing-page .feature-card p{color:var(--text-secondary);line-height:1.6}@media(max-width:768px){.hero-content{padding:3rem 2rem}.hero h1{font-size:2.8rem;margin-bottom:1.25rem}.hero p{font-size:1.1rem;margin-bottom:2.5rem}.cta-row{flex-direction:column;align-items:flex-start;gap:1rem}.cta-primary{width:100%;max-width:300px;padding:1rem 2rem;text-align:center;font-size:1rem}.cta-secondary{width:100%;max-width:260px;padding:.9rem 1.7rem;text-align:center;font-size:.95rem}.landing-page .features-section{padding:3rem 1rem;grid-template-columns:1fr;gap:1.5rem}.landing-page .feature-card{padding:1.5rem}}@media(min-width:1400px){.hero-content{padding:8rem 6rem}.hero h1{font-size:4rem;margin-bottom:2rem}.hero p{font-size:1.5rem;margin-bottom:4rem}.cta-row{gap:1.5rem}.cta-primary{padding:1.1rem 2.2rem;font-size:1.05rem}.cta-secondary{padding:1rem 1.8rem;font-size:1rem}}.cta-primary:focus-visible,.cta-secondary:focus-visible,.nav a:focus-visible{outline:2px solid #93c5fd;outline-offset:2px}.login-page{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:2rem;position:relative}.login-bg{position:fixed;inset:0;width:100%;height:100dvh;object-fit:cover;z-index:0;pointer-events:none}.login-container{background-color:#fffffff2;padding:3rem;border-radius:1rem;box-shadow:0 20px 60px #00000026;width:100%;max-width:480px;-webkit-backdrop-filter:saturate(115%) blur(16px);backdrop-filter:saturate(115%) blur(16px);border:1px solid rgba(255,255,255,.3);position:relative;z-index:1}.theme-dark .login-container{background-color:#1a1f2eeb;border-color:#2a334480;box-shadow:0 20px 60px #00000080}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{font-size:2rem;font-weight:700;color:#0f172a;margin-bottom:.5rem}.theme-dark .login-header h1{color:#e8edf4}.login-header p{color:#475569}.theme-dark .login-header p{color:#8b92a7}.login-form{display:flex;flex-direction:column;gap:1.5rem}.form-group{display:flex;flex-direction:column;gap:.5rem}.form-group label{font-weight:600;color:#0f172a}.theme-dark .form-group label{color:#e8edf4}.form-group input{padding:.75rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1rem;transition:all .2s;box-shadow:0 1px 2px #0000000d;background:#fff;color:#0f172a}.theme-dark .form-group input{background:#1a1f2e;border-color:#2a3344;color:#e8edf4}.theme-dark .form-group input::placeholder{color:#5a6176}.form-group input:focus{border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb1a;outline:none}.input-wrap{display:grid;grid-template-columns:36px 1fr;align-items:center;gap:.5rem;background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:.5rem .75rem;box-shadow:0 1px 2px #0000000a;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.input-wrap:focus-within{border-color:var(--primary-color);box-shadow:0 0 0 4px #2563eb26;background:#fcfdff}.input-icon{color:#94a3b8;display:flex;align-items:center;justify-content:center}.input-wrap input{border:none!important;box-shadow:none!important;padding:.5rem 0!important;font-size:1rem}.input-wrap input::placeholder{color:#94a3b8}.reveal-btn{justify-self:end;border:0;background:transparent;color:#64748b;font-weight:600;padding:.25rem .5rem;border-radius:.5rem;cursor:pointer}.reveal-btn:hover{color:#334155}.field-error{margin-top:.375rem;color:var(--error-color);font-size:.875rem}.error-message{background-color:#fef2f2;color:var(--error-color);padding:.75rem;border-radius:.5rem;border:1px solid #fecaca;font-size:.875rem;text-align:center}.login-button{width:100%;padding:.9rem;background-color:var(--primary-color);color:#fff;border-radius:.75rem;font-weight:600;font-size:1rem;transition:background-color .2s;margin-top:.5rem}.login-button:hover:not(:disabled){background-color:var(--primary-dark)}.login-button:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.login-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid var(--border-color)}.login-footer p{color:var(--text-secondary);font-size:.875rem}.form-row{display:flex;justify-content:space-between;align-items:center;margin-top:.25rem}.remember{display:flex;align-items:center;gap:.5rem;color:#64748b}.forgot a{color:#2563eb;font-weight:600}.forgot a:hover{text-decoration:underline}.demo-credentials-chip{background:#2563eb1a;border:1px solid rgba(37,99,235,.2);color:#2563eb;padding:.5rem 1rem;border-radius:2rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;-webkit-user-select:none;user-select:none}.demo-credentials-chip:hover{background:#2563eb26;border-color:#2563eb4d;transform:translateY(-1px);box-shadow:0 4px 12px #2563eb26}.demo-credentials-chip:active{transform:translateY(0)}@media(max-width:768px){.login-page{padding:1rem}.login-container{padding:2rem}.login-header h1{font-size:1.75rem}}:root{--status-operational: #0ea5e9;--status-warning: #f59e0b;--status-critical: #ef4444;--status-success: #10b981;--status-maintenance: #8b5cf6}.theme-dark{--industrial-dark: #0a0e1a;--industrial-surface: #12171f;--industrial-panel: #1a1f2e;--industrial-border: #2a3344;--industrial-accent: #0ea5e9;--industrial-accent-dim: rgba(14, 165, 233, .1);--industrial-text-primary: #e8edf4;--industrial-text-secondary: #8b92a7;--industrial-text-dim: #5a6176;--bg-gradient-start: #0a0e1a;--bg-gradient-end: #12171f;--panel-gradient-start: #1a1f2e;--panel-gradient-end: #12171f;--grid-overlay-color: rgba(42, 51, 68, .3);--shadow-color: rgba(0, 0, 0, .3)}.theme-light{--industrial-dark: #f8fafc;--industrial-surface: #ffffff;--industrial-panel: #ffffff;--industrial-border: #e2e8f0;--industrial-accent: #0ea5e9;--industrial-accent-dim: rgba(14, 165, 233, .1);--industrial-text-primary: #0f172a;--industrial-text-secondary: #475569;--industrial-text-dim: #94a3b8;--bg-gradient-start: #f8fafc;--bg-gradient-end: #f1f5f9;--panel-gradient-start: #ffffff;--panel-gradient-end: #fefefe;--grid-overlay-color: rgba(148, 163, 184, .15);--shadow-color: rgba(0, 0, 0, .08)}.overview-page{min-height:100vh;background:linear-gradient(135deg,var(--bg-gradient-start) 0%,var(--bg-gradient-end) 100%);color:var(--industrial-text-primary);font-family:Roboto,Inter,-apple-system,BlinkMacSystemFont,sans-serif;padding:1.5rem;max-width:85%;margin:0 auto;transition:background .3s ease,color .3s ease}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;gap:2rem}.header-left{flex:1}.page-title{font-size:2rem;font-weight:700;margin:0 0 .5rem;color:var(--industrial-text-primary);letter-spacing:-.02em;line-height:1.2}.page-subtitle{font-size:.95rem;color:var(--industrial-text-secondary);margin:0;font-weight:400}.header-right{display:flex;align-items:center;gap:1rem}.time-display{display:flex;flex-direction:column;align-items:flex-end;padding:.75rem 1rem;background:var(--panel-gradient-start);border:1px solid var(--industrial-border);border-radius:.5rem;box-shadow:0 2px 8px var(--shadow-color)}.time-label{font-size:.625rem;color:var(--industrial-text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-weight:500}.time-value{font-family:Roboto Mono,monospace;font-size:1rem;font-weight:700;color:var(--industrial-accent)}.quick-action-btn{padding:.75rem 1.5rem;border-radius:.5rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease;border:none;display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px}.quick-action-btn.upload{background:linear-gradient(135deg,var(--industrial-accent),#0284c7);color:#fff;box-shadow:0 4px 12px #0ea5e94d}.quick-action-btn.upload:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0ea5e966}.system-status-bar{background:linear-gradient(135deg,var(--panel-gradient-start) 0%,var(--panel-gradient-end) 100%);border:1px solid var(--industrial-border);border-radius:.5rem;padding:1rem 1.5rem;margin-bottom:1.5rem;display:grid;grid-template-columns:auto 1fr auto;gap:2rem;align-items:center;box-shadow:0 2px 8px var(--shadow-color);transition:all .3s ease}.system-status-indicator{display:flex;align-items:center;gap:.75rem}.status-pulse{width:10px;height:10px;background:var(--status-success);border-radius:50%;box-shadow:0 0 12px var(--status-success);animation:pulse-glow 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.system-status-text{font-size:.875rem;font-weight:600;color:var(--industrial-text-primary);text-transform:uppercase;letter-spacing:.5px}.system-metrics{display:flex;gap:2.5rem;justify-content:center}.metric-indicator{display:flex;flex-direction:row;align-items:flex-end;justify-content:flex-end;gap:.25rem}.metric-label{font-size:.65rem;color:var(--industrial-text-dim);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.metric-value{font-family:Roboto Mono,monospace;font-size:1rem;font-weight:700;color:var(--industrial-text-primary)}.metric-value .highlight{color:var(--status-critical)}.system-actions{display:flex;gap:.75rem}.action-btn{background:#00d4ff0d;border:1px solid rgba(0,212,255,.2);color:var(--industrial-accent);padding:.5rem 1rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;cursor:pointer;transition:all .2s ease}.action-btn:hover{background:#00d4ff26;border-color:var(--industrial-accent);box-shadow:0 0 12px #00d4ff33}.action-btn.primary{background:var(--industrial-accent);color:var(--industrial-dark);border-color:var(--industrial-accent)}.action-btn.primary:hover{background:#00b8e6;box-shadow:0 0 16px #00d4ff66}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:1.5rem}.kpi-panel{background:linear-gradient(135deg,var(--panel-gradient-start) 0%,var(--panel-gradient-end) 100%);border:1px solid var(--industrial-border);border-radius:.75rem;padding:1.5rem;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 2px 4px var(--shadow-color)}.kpi-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--kpi-accent),transparent);opacity:.5}.kpi-panel.critical{--kpi-accent: var(--status-critical)}.kpi-panel.warning{--kpi-accent: var(--status-warning)}.kpi-panel.success{--kpi-accent: var(--status-success)}.kpi-panel.operational{--kpi-accent: var(--status-operational)}.kpi-panel.maintenance{--kpi-accent: var(--status-maintenance)}.kpi-panel:hover{border-color:var(--kpi-accent);box-shadow:0 4px 16px var(--shadow-color);transform:translateY(-2px)}.kpi-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.kpi-icon{font-size:1.25rem;filter:grayscale(.3)}.kpi-status-badge{font-size:.5rem;padding:.25rem .5rem;border-radius:.25rem;background:var(--industrial-accent-dim);color:var(--kpi-accent);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.kpi-data{margin-bottom:.75rem}.kpi-value-display{font-family:Roboto Mono,monospace;font-size:1.75rem;font-weight:700;color:var(--kpi-accent);line-height:1;margin-bottom:.375rem}.kpi-label-text{font-size:.75rem;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;font-weight:500}.kpi-trend{height:32px;opacity:.6}.dashboard-layout{display:grid;grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}.main-panel,.main-panel-bottom{display:flex;flex-direction:column;gap:1.5rem}.industrial-panel{background:linear-gradient(135deg,var(--panel-gradient-start) 0%,var(--panel-gradient-end) 100%);border:1px solid var(--industrial-border);border-radius:.5rem;overflow:hidden;box-shadow:0 2px 8px var(--shadow-color);transition:all .3s ease}.panel-header{padding:1rem 1.25rem;border-bottom:1px solid var(--industrial-border);display:flex;justify-content:space-between;align-items:center;background:var(--industrial-surface);transition:all .3s ease}.panel-title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;display:flex;align-items:center;gap:.5rem}.panel-icon{font-size:1rem;filter:drop-shadow(0 0 2px rgba(255,255,255,.3))}.panel-title:before{content:"";width:3px;height:12px;background:var(--industrial-accent);border-radius:2px}.panel-badge{background:#ff475726;color:var(--status-critical);padding:.25rem .625rem;border-radius:.25rem;font-size:.625rem;font-weight:700;letter-spacing:.5px}.panel-summary{padding:.5rem 1.25rem;border-bottom:1px solid var(--industrial-border-light);background:#ffffff05}.summary-text{font-size:.75rem;color:var(--industrial-text-dim);font-weight:500;opacity:.8}.panel-content{padding:1.25rem}.map-container{position:relative;height:480px;background:radial-gradient(circle at 30% 50%,rgba(14,165,233,.03) 0%,transparent 50%),radial-gradient(circle at 70% 50%,rgba(16,185,129,.03) 0%,transparent 50%),var(--industrial-dark);border-radius:.375rem;overflow:hidden;transition:background .3s ease}.map-grid-overlay{position:absolute;inset:0;background-image:linear-gradient(var(--grid-overlay-color) 1px,transparent 1px),linear-gradient(90deg,var(--grid-overlay-color) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;transition:background .3s ease}.map-svg-container{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.map-svg-container svg{width:100%;height:100%;display:block}.pipeline-segment{stroke:var(--industrial-accent);stroke-width:4;stroke-linecap:round;fill:none;opacity:.6;filter:drop-shadow(0 0 4px rgba(0,212,255,.3))}.pipeline-flow{stroke:var(--industrial-accent);stroke-width:2;opacity:.4;stroke-dasharray:12 8;animation:flow-animation 4s linear infinite}@keyframes flow-animation{0%{stroke-dashoffset:0}to{stroke-dashoffset:-40}}.station-marker{cursor:pointer;transition:all .2s ease}.station-marker circle{vector-effect:non-scaling-stroke}.station-marker.operational .station-fill{fill:var(--status-operational)}.station-marker.maintenance .station-fill{fill:var(--status-maintenance)}.station-marker.critical .station-fill{fill:var(--status-critical)}.station-marker:hover .station-fill{filter:brightness(1.3)}.leak-marker{cursor:pointer;animation:leak-pulse 2s ease-in-out infinite}@keyframes leak-pulse{0%,to{opacity:1}50%{opacity:.7}}.leak-marker.critical{filter:drop-shadow(0 0 12px var(--status-critical))}.leak-marker.warning{filter:drop-shadow(0 0 8px var(--status-warning))}.map-hud{position:absolute;inset:0;pointer-events:none}.hud-metrics{position:absolute;top:1rem;left:1rem;display:flex;flex-direction:column;gap:.625rem;pointer-events:auto}.hud-metric-chip{background:var(--panel-gradient-start);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--industrial-border);padding:.625rem .875rem;border-radius:.375rem;min-width:120px;transition:all .3s ease;box-shadow:0 2px 8px var(--shadow-color)}.hud-metric-chip:hover{background:var(--industrial-surface);border-color:var(--industrial-accent);transform:translateY(-2px)}.hud-metric-label{font-size:.625rem;color:var(--industrial-text-dim);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.25rem;font-weight:500}.hud-metric-value{font-family:Roboto Mono,monospace;font-size:1.125rem;font-weight:700;color:var(--industrial-text-primary);display:flex;align-items:baseline;gap:.25rem}.hud-metric-value.critical{color:var(--status-critical)}.hud-metric-value.success{color:var(--status-success)}.hud-metric-unit{font-size:.625rem;color:var(--color-text-secondary);font-weight:500}.hud-legend{position:absolute;bottom:1rem;left:1rem;display:flex;gap:1rem;background:var(--panel-gradient-start);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--industrial-border);padding:.75rem 1rem;border-radius:.375rem;pointer-events:auto;box-shadow:0 2px 8px var(--shadow-color);transition:all .3s ease}.legend-item{display:flex;align-items:center;gap:.5rem;font-size:.65rem;color:var(--color-text-secondary);font-weight:500}.legend-dot{width:8px;height:8px;border-radius:50%}.legend-dot.operational{background:var(--status-operational)}.legend-dot.maintenance{background:var(--status-maintenance)}.legend-dot.critical{background:var(--status-critical)}.legend-dot.warning{background:var(--status-warning)}.alerts-container{display:flex;flex-direction:column;gap:.75rem;max-height:580px;overflow-y:auto}.alerts-container::-webkit-scrollbar{width:4px}.alerts-container::-webkit-scrollbar-track{background:var(--industrial-surface)}.alerts-container::-webkit-scrollbar-thumb{background:var(--industrial-border);border-radius:2px}.alert-card{background:var(--industrial-surface);border:1px solid var(--industrial-border);border-left:3px solid var(--alert-color);border-radius:.375rem;padding:1rem;transition:all .3s ease;cursor:pointer;box-shadow:0 1px 3px var(--shadow-color)}.alert-card.critical{--alert-color: var(--status-critical)}.alert-card.warning{--alert-color: var(--status-warning)}.alert-card.info{--alert-color: var(--status-operational)}.alert-card:hover{background:var(--industrial-panel);border-color:var(--alert-color);transform:translate(4px);box-shadow:0 2px 8px var(--shadow-color)}.alert-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.625rem}.alert-type{font-size:.875rem;font-weight:700;color:var(--industrial-text-primary)}.alert-severity{font-size:.5rem;padding:.25rem .5rem;border-radius:.25rem;background:#ff475726;color:var(--alert-color);font-weight:700;text-transform:uppercase;letter-spacing:.5px}.alert-location{font-size:.75rem;color:var(--color-text-secondary);margin-bottom:.5rem;display:flex;align-items:center;gap:.375rem}.alert-description{font-size:.75rem;color:var(--industrial-text-dim);margin-bottom:.625rem;line-height:1.4}.alert-footer{display:flex;justify-content:space-between;align-items:center;padding-top:.625rem;border-top:1px solid var(--industrial-border);gap:.5rem;flex-wrap:wrap}.alert-timestamp{font-size:.625rem;color:var(--industrial-text-dim);font-family:Roboto Mono,monospace}.alert-source{font-size:.625rem;color:var(--industrial-accent);font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#00d4ff1a;padding:.125rem .375rem;border-radius:.25rem;border:1px solid rgba(0,212,255,.3);align-self:flex-end;margin-left:auto}.alert-action{font-size:.625rem;padding:.375rem .75rem;border:1px solid var(--alert-color);background:transparent;color:var(--alert-color);border-radius:.25rem;cursor:pointer;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease}.alert-action:hover{background:var(--alert-color);color:var(--industrial-dark)}.defects-list{display:flex;flex-direction:column;gap:.75rem}.defect-item{background:var(--industrial-surface);border:1px solid var(--industrial-border);border-radius:.375rem;padding:1rem;transition:all .3s ease;box-shadow:0 1px 3px var(--shadow-color)}.defect-item:hover{background:var(--industrial-panel);border-color:var(--industrial-accent);transform:translateY(-2px);box-shadow:0 2px 8px var(--shadow-color)}.defect-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.625rem}.defect-type-badge{font-size:.625rem;padding:.25rem .625rem;border-radius:.25rem;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.defect-type-badge.critical{background:#ff475726;color:var(--status-critical)}.defect-type-badge.warning{background:#ffb02026;color:var(--status-warning)}.defect-type-badge.info{background:#00d4ff26;color:var(--status-operational)}.defect-severity{font-size:.625rem;color:var(--industrial-text-dim);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.defect-details{display:flex;justify-content:space-between;margin-bottom:.5rem}.defect-location{font-size:.75rem;color:var(--color-text-secondary);font-weight:500}.defect-date{font-size:.65rem;color:var(--industrial-text-dim);font-family:Roboto Mono,monospace}.defect-description{font-size:.75rem;color:var(--industrial-text-dim);line-height:1.4}.stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.alerts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem}.stat-panel{background:var(--industrial-surface);border:1px solid var(--industrial-border);border-radius:.375rem;padding:1.25rem;transition:all .3s ease;box-shadow:0 1px 3px var(--shadow-color)}.stat-panel:hover{background:var(--industrial-panel);border-color:var(--industrial-accent);transform:translateY(-2px);box-shadow:0 2px 8px var(--shadow-color)}.stat-panel-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.stat-icon-wrapper{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--industrial-accent-dim);border-radius:.375rem;color:var(--industrial-accent);font-size:1.25rem}.stat-panel-title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.stat-main-value{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);line-height:1.4;margin-bottom:.75rem}.stat-breakdown{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;padding-top:.75rem;border-top:1px solid var(--industrial-border)}.breakdown-item{display:flex;flex-direction:column;gap:.25rem}.breakdown-label{font-size:.625rem;color:var(--industrial-text-dim);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.breakdown-value{font-family:Roboto Mono,monospace;font-size:1rem;font-weight:700;color:var(--industrial-text-primary)}.breakdown-value.success{color:var(--status-success)}.breakdown-value.critical{color:var(--status-critical)}.breakdown-value.warning{color:var(--status-warning)}@media(max-width:1400px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-layout{grid-template-columns:1fr}}@media(max-width:1024px){.overview-page{padding:1rem;max-width:95%}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.header-right{width:100%;justify-content:space-between}.system-status-bar{grid-template-columns:1fr;gap:1rem;text-align:center}.system-metrics{justify-content:space-around;flex-wrap:wrap}.kpi-grid{grid-template-columns:repeat(2,1fr);gap:1rem}.stats-grid{grid-template-columns:1fr}.alerts-grid{grid-template-columns:1fr;gap:1rem}.main-panel-bottom{gap:1rem}}@media(max-width:768px){.overview-page{max-width:100%}.page-title{font-size:1.5rem}.page-subtitle{font-size:.875rem}.header-right{flex-direction:column;width:100%;gap:.75rem}.time-display{width:100%;flex-direction:row;justify-content:space-between;align-items:center}.quick-action-btn{width:100%;justify-content:center}.kpi-grid{grid-template-columns:1fr;gap:1rem}.map-container{height:360px}.hud-metrics{flex-direction:row;gap:.5rem}.hud-metric-chip{min-width:auto;padding:.5rem .625rem}.hud-legend{flex-wrap:wrap;gap:.625rem}.main-panel-bottom,.stats-grid,.alerts-grid{gap:1rem}}.theme-light .overview-container{background:linear-gradient(135deg,#f8fafc,#f1f5f9)}.theme-light .main-panel,.theme-light .stats-panel,.theme-light .alerts-panel,.theme-light .industrial-panel{background:#fff;border-color:#e2e8f0;box-shadow:0 1px 3px #00000014}.theme-light .panel-header{background:#fefefe;border-bottom-color:#e2e8f0}.theme-light .metric-card,.theme-light .alert-card{background:linear-gradient(135deg,#fff,#fefefe);border-color:#e2e8f0;box-shadow:0 1px 2px #00000014}.theme-light .metric-card:hover,.theme-light .alert-card:hover{background:linear-gradient(135deg,#fefefe,#f8fafc);border-color:#0ea5e9;box-shadow:0 2px 8px #0ea5e926}.theme-light .status-indicator.operational,.theme-light .status-indicator.active{background:#0ea5e91a;border-color:#0ea5e9}.theme-light .status-indicator.warning{background:#f59e0b1a;border-color:#f59e0b}.theme-light .status-indicator.critical{background:#ef44441a;border-color:#ef4444}.theme-light .status-indicator.success{background:#10b9811a;border-color:#10b981}.theme-light .status-indicator.maintenance{background:#8b5cf61a;border-color:#8b5cf6}.theme-light .panel-title,.theme-light .stat-panel-title,.theme-light .metric-label,.theme-light .alert-title{color:#0f172a}.theme-light .metric-value,.theme-light .alert-description,.theme-light .alert-meta{color:#475569}.theme-light .alert-time,.theme-light .metric-unit{color:#94a3b8}.theme-light .alert-card:hover .alert-title,.theme-light .metric-card:hover .metric-label,.theme-light .metric-card:hover .metric-value{color:#0ea5e9}.theme-light .alert-card:hover .alert-time{color:#475569}.theme-light .grid-overlay{background-image:linear-gradient(rgba(148,163,184,.15) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.15) 1px,transparent 1px)}.theme-light .system-chip{background:#fff;border-color:#e2e8f0;color:#475569}.theme-light .system-chip:hover{background:#0ea5e90d;border-color:#0ea5e9;color:#0ea5e9}.theme-light .timeline-item,.theme-light .maintenance-item{background:#fff;border-color:#e2e8f0}.theme-light .timeline-item:hover,.theme-light .maintenance-item:hover{background:#fefefe;border-color:#0ea5e9;box-shadow:0 2px 8px #0ea5e91a}.theme-light .progress-fill{background:linear-gradient(90deg,#0ea5e9,#0284c7)}.theme-light .progress-track{background:#e2e8f0}.theme-light .action-btn,.theme-light .filter-btn{background:#fff;border-color:#e2e8f0;color:#475569}.theme-light .action-btn:hover,.theme-light .filter-btn:hover{background:#0ea5e90d;border-color:#0ea5e9;color:#0ea5e9}.theme-light .action-btn.primary{background:#0ea5e9;border-color:#0ea5e9;color:#fff}.theme-light .action-btn.primary:hover{background:#0284c7;border-color:#0284c7}.theme-light .search-input,.theme-light .filter-select{background:#fff;border-color:#e2e8f0;color:#0f172a}.theme-light .search-input:focus,.theme-light .filter-select:focus{border-color:#0ea5e9;box-shadow:0 0 0 3px #0ea5e91a}.theme-light .toast{background:#fffffff2;border-color:#e2e8f0;color:#0f172a}.theme-light .skeleton-loader{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9,#e2e8f0 75%);background-size:200% 100%}:root{--app-header-height: 56px;--page-gutter: var(--space-xl)}.report-page{min-height:100vh;background:var(--app-background);color:var(--text-primary);padding:0;max-width:none;transition:all .3s ease}.report-sticky-header{position:sticky;top:var(--app-header-height);z-index:100;background:var(--raised-card-background);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-sm);display:flex;flex-direction:column;gap:0;padding:0}.report-header-content{display:flex;align-items:center;justify-content:space-between;width:100%;gap:var(--space-lg);padding:.75rem var(--page-gutter)}.report-page-title{display:flex;align-items:center;gap:var(--space-sm);margin:0;flex-shrink:0}.report-page-title:before{content:none}.report-header-actions{display:flex;gap:var(--space-sm);align-items:center;flex-shrink:0}.action-btn{padding:var(--space-xs) var(--space-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.025em;border-radius:var(--radius-md);transition:var(--transition-normal);cursor:pointer;border:1px solid transparent;display:inline-flex;align-items:center;justify-content:center;min-height:32px;white-space:nowrap}.action-btn.primary{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);box-shadow:var(--shadow-sm)}.action-btn.primary:hover:not(:disabled){background:var(--color-brand-hover);border-color:var(--color-brand-hover);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.action-btn.primary:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.action-btn.secondary{background:transparent;color:var(--color-brand);border-color:var(--color-brand)}.action-btn.secondary:hover{background:var(--color-brand-subtle);border-color:var(--color-brand-hover);color:var(--color-brand-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.report-system-bar{padding:.5rem var(--page-gutter);border-top:1px solid var(--color-border-subtle);background:transparent;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem}.system-status-chips{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.system-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:.25rem .6rem;background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);white-space:nowrap;min-height:26px;box-shadow:none}.system-chip:hover,.system-chip:focus{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-md)}.system-chip:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-severity-healthy);opacity:.8;flex-shrink:0}.system-chip.health-ok:before{background:var(--color-severity-healthy)}.system-chip.health-warning:before{background:var(--color-severity-minor)}.system-chip.health-critical:before{background:var(--color-severity-major)}.system-chip.clickable{cursor:pointer}.system-chip.clickable:hover{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand-hover);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.report-content-wrapper{display:grid;grid-template-columns:340px 1fr;gap:var(--space-xl);padding:0 var(--page-gutter) var(--space-xl);margin-top:var(--space-md);min-height:calc(100vh - 120px);max-width:100%}.report-config-sidebar{display:flex;flex-direction:column;gap:var(--space-xl);height:fit-content}.report-config-sidebar .industrial-panel{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);transition:var(--transition-slow)}.report-config-sidebar .industrial-panel:hover{box-shadow:var(--shadow-lg);border-color:var(--color-brand);transform:translateY(-2px)}.report-main-view{display:flex;flex-direction:column;gap:var(--space-xl);overflow-y:auto;padding-right:var(--space-xs)}.report-main-view::-webkit-scrollbar{width:6px}.report-main-view::-webkit-scrollbar-track{background:var(--color-surface);border-radius:3px}.report-main-view::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}.report-main-view::-webkit-scrollbar-thumb:hover{background:var(--color-brand)}.report-content{display:flex;flex-direction:column;gap:var(--space-xl)}.config-grid{display:grid;grid-template-columns:1fr;gap:1.5rem}.config-section{padding:var(--space-md) 0;border-bottom:1px solid var(--color-border-subtle)}.config-section:last-child{border-bottom:none}.config-section-title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-xs)}.config-section-title:before{content:"";width:4px;height:12px;background:var(--color-brand);border-radius:2px;flex-shrink:0}.enhanced-select{width:100%;padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23666' d='m2 0-2 2h4zm0 5 2-2h-4z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--space-sm) center;background-size:.65em auto;padding-right:2.5rem;min-height:40px}.enhanced-select:hover{border-color:var(--color-brand);background-color:var(--color-brand-subtle)}.enhanced-select:focus{outline:2px solid #2EA8FF;outline-offset:2px;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-subtle);background-color:var(--color-brand-subtle)}.enhanced-select option{background:var(--color-surface);color:var(--color-text-primary);padding:var(--space-xs)}.search-input{width:100%;padding:var(--space-sm) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:var(--transition-normal);min-height:40px}.search-input::placeholder{color:var(--color-text-muted)}.search-input:hover{border-color:var(--color-brand);background-color:var(--color-brand-subtle)}.search-input:focus{outline:2px solid #2EA8FF;outline-offset:2px;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-subtle);background-color:var(--color-brand-subtle)}.search-input-wrapper{position:relative;display:flex;align-items:center;margin-top:var(--space-sm)}.search-icon{position:absolute;left:var(--space-sm);font-size:var(--font-size-sm);color:var(--color-text-muted);pointer-events:none;z-index:1}.search-input{width:100%;padding:var(--space-sm) var(--space-md) var(--space-sm) 2.5rem;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);transition:var(--transition-normal);min-height:40px}.filter-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-sm)}.filter-tag{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--font-size-xs);color:var(--color-text-secondary);cursor:pointer;transition:var(--transition-normal);min-height:28px}.filter-tag:hover,.filter-tag:focus{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand)}.filter-tag.active{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand)}.filter-tag:before{content:"×";font-size:1rem;opacity:.6}.segmented-control{display:flex;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-xs);gap:var(--space-xs)}.segmented-option{flex:1;padding:var(--space-xs) var(--space-sm);background:transparent;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;gap:var(--space-xs);white-space:nowrap;min-height:32px}.segmented-option:hover,.segmented-option:focus{background:var(--color-brand-subtle);color:var(--color-brand)}.segmented-option.active{background:var(--color-brand);color:var(--color-text-primary);font-weight:var(--font-weight-medium);box-shadow:var(--shadow-sm)}.segmented-option .icon{font-size:var(--font-size-sm)}.export-download-btn{width:100%;margin-top:var(--space-sm);justify-content:center}.toggle-switch{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-xs) 0}.toggle-input{display:none}.toggle-label{position:relative;width:44px;height:24px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;cursor:pointer;transition:var(--transition-slow);flex-shrink:0}.toggle-label:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;background:var(--color-text-muted);border-radius:50%;transition:var(--transition-slow)}.toggle-input:checked+.toggle-label{background:var(--color-brand);border-color:var(--color-brand)}.toggle-input:checked+.toggle-label:after{left:22px;background:var(--color-text-primary)}.toggle-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-normal)}.toggle-input:checked~.toggle-text{color:var(--color-text-primary)}.timezone-pill{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-brand-subtle);color:var(--color-brand);border:1px solid var(--color-brand);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);min-height:28px;box-shadow:var(--shadow-sm)}.timezone-pill:hover,.timezone-pill:focus{background:var(--color-brand);color:var(--color-text-primary);transform:translateY(-1px);box-shadow:var(--shadow-md)}.config-group{display:flex;flex-direction:column;gap:.5rem}.config-label{font-size:.75rem;font-weight:600;color:var(--industrial-text-secondary);text-transform:uppercase;letter-spacing:.5px}.config-select{background:var(--industrial-surface);border:1px solid var(--industrial-border);color:var(--industrial-text-primary);padding:.75rem 1rem;border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit}.config-select:hover{border-color:var(--industrial-accent)}.config-select:focus{outline:2px solid #2EA8FF;outline-offset:2px;border-color:var(--industrial-accent);box-shadow:0 0 0 3px var(--industrial-accent-dim)}.export-buttons{display:flex;gap:.625rem}.export-btn{flex:1;background:var(--industrial-surface);border:1px solid var(--industrial-border);color:var(--industrial-text-primary);padding:.75rem 1rem;border-radius:.375rem;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s ease;text-transform:uppercase;letter-spacing:.5px}.export-btn:hover{background:var(--industrial-accent);color:var(--industrial-dark);border-color:var(--industrial-accent);transform:translateY(-2px);box-shadow:0 4px 12px var(--shadow-color)}.report-content-layout{display:flex;flex-direction:column;gap:1.5rem;margin-top:1.5rem}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}.metric-card{background:linear-gradient(135deg,var(--panel-gradient-start) 0%,var(--panel-gradient-end) 100%);border:1px solid var(--industrial-border);border-radius:.5rem;padding:1.5rem;display:flex;align-items:center;gap:1rem;transition:all .3s ease;box-shadow:0 2px 4px var(--shadow-color)}.metric-card:hover{border-color:var(--industrial-accent);transform:translateY(-4px);box-shadow:0 4px 16px var(--shadow-color)}.metric-icon{font-size:2rem;filter:grayscale(.2)}.metric-data{flex:1;display:flex;flex-direction:column;gap:.25rem}.metric-value{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);line-height:1.4}.metric-value.critical{color:var(--status-critical)}.metric-value.success{color:var(--status-success)}.metric-label{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.3px;line-height:1.4}.defect-bars{display:flex;flex-direction:column;gap:1.25rem}.defect-bar-item{display:grid;grid-template-columns:200px 1fr auto;gap:1rem;align-items:center}.defect-bar-label{display:flex;justify-content:space-between;align-items:center}.defect-type{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3}.defect-count{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);line-height:1.4}.defect-bar-track{height:24px;background:var(--industrial-surface);border:1px solid var(--industrial-border);border-radius:.375rem;overflow:hidden;position:relative}.defect-bar-fill{height:100%;background:var(--industrial-accent);border-radius:.25rem;transition:width .6s ease;position:relative}.defect-bar-fill.critical{background:linear-gradient(90deg,var(--status-critical) 0%,#dc2626 100%)}.defect-bar-fill.warning{background:linear-gradient(90deg,var(--status-warning) 0%,#d97706 100%)}.defect-bar-fill.info{background:linear-gradient(90deg,var(--status-operational) 0%,#0284c7 100%)}.defect-percentage{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);min-width:50px;text-align:right;line-height:1.4}.data-table-container{overflow-x:auto;border-radius:.375rem;border:1px solid var(--industrial-border)}.data-table{width:100%;border-collapse:collapse;background:var(--industrial-surface)}.data-table thead{background:var(--industrial-panel);border-bottom:2px solid var(--industrial-border)}.data-table th{padding:1rem 1.25rem;text-align:left;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;font-weight:600;color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.5px;line-height:1.5}.data-table tbody tr{border-bottom:1px solid var(--industrial-border);transition:all .2s ease}.data-table tbody tr:hover{background:var(--industrial-panel)}.data-table tbody tr:last-child{border-bottom:none}.data-table td{padding:1rem 1.25rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;font-weight:400;color:var(--color-text-primary);line-height:1.5}.id-badge{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);background:var(--color-surface);padding:.25rem .5rem;border-radius:.25rem;line-height:1.4}.severity-badge{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;padding:.25rem .625rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.5px;line-height:1.4}.severity-badge.critical{background:#ef444426;color:var(--status-critical)}.severity-badge.warning{background:#f59e0b26;color:var(--status-warning)}.severity-badge.info{background:#0ea5e926;color:var(--status-operational)}.status-badge{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;padding:.25rem .625rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.5px;line-height:1.4}.status-badge.pending{background:#f59e0b26;color:var(--status-warning)}.status-badge.progress{background:#0ea5e926;color:var(--status-operational)}.status-badge.resolved{background:#10b98126;color:var(--status-success)}.detailed-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}.detail-section{display:flex;flex-direction:column;gap:.75rem}.detail-section h4{font-size:1rem;font-weight:700;color:var(--industrial-text-primary);margin:0}.detail-section p{font-size:.875rem;color:var(--industrial-text-secondary);line-height:1.5;margin:0}.detail-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-top:.5rem}.detail-stat{display:flex;flex-direction:column;gap:.25rem;padding:.75rem;background:var(--industrial-surface);border:1px solid var(--industrial-border);border-radius:.375rem}.detail-label{font-size:.625rem;color:var(--industrial-text-dim);text-transform:uppercase;letter-spacing:.5px;font-weight:500}.detail-value{font-family:Roboto Mono,monospace;font-size:1.5rem;font-weight:700;color:var(--industrial-text-primary);line-height:1}.detail-value.critical{color:var(--status-critical)}.detail-value.warning{color:var(--status-warning)}.maintenance-timeline{display:flex;flex-direction:column;gap:1.5rem}.timeline-item{display:flex;gap:1rem;position:relative}.timeline-item:not(:last-child):after{content:"";position:absolute;left:11px;top:32px;bottom:-24px;width:2px;background:var(--industrial-border)}.timeline-marker{width:24px;height:24px;border-radius:50%;border:3px solid var(--industrial-border);background:var(--industrial-surface);flex-shrink:0;position:relative;z-index:1}.timeline-marker.upcoming{border-color:var(--status-operational);background:var(--status-operational)}.timeline-marker.completed{border-color:var(--status-success);background:var(--status-success)}.timeline-content{flex:1;background:var(--industrial-surface);border:1px solid var(--industrial-border);border-radius:.375rem;padding:1rem;transition:all .3s ease}.timeline-content:hover{background:var(--industrial-panel);border-color:var(--industrial-accent);transform:translate(4px);box-shadow:0 2px 8px var(--shadow-color)}.timeline-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem}.timeline-header h4{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;margin:0}.timeline-date{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;color:var(--color-text-secondary);line-height:1.4}.timeline-content p{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;font-weight:400;color:var(--color-text-secondary);line-height:1.5;margin:0 0 .75rem}.timeline-meta{display:flex;gap:.75rem;align-items:center}.timeline-tag{font-size:.625rem;font-weight:700;padding:.25rem .5rem;border-radius:.25rem;text-transform:uppercase;letter-spacing:.5px;background:var(--industrial-accent-dim);color:var(--industrial-accent)}.timeline-tag.completed{background:#10b98126;color:var(--status-success)}.timeline-duration{font-size:.75rem;color:var(--industrial-text-dim);font-weight:500}.unified-toolbar{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-xl);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-md);box-shadow:var(--shadow-sm)}.toolbar-left{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.toolbar-right{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.filter-chips{display:flex;align-items:center;gap:var(--space-xs);flex-wrap:wrap}.filter-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);white-space:nowrap;min-height:28px;box-shadow:var(--shadow-sm)}.filter-chip:hover:not(:disabled),.filter-chip:focus:not(:disabled){background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-md)}.filter-chip.active{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);box-shadow:var(--shadow-sm)}.filter-chip.severity-major{background:#ff62571a;color:var(--color-severity-major);border-color:var(--color-severity-major)}.filter-chip.severity-major:hover:not(:disabled),.filter-chip.severity-major:focus:not(:disabled){background:var(--color-severity-major);color:#fff}.filter-chip.severity-minor{background:#ffb0201a;color:var(--color-severity-minor);border-color:var(--color-severity-minor)}.filter-chip.severity-minor:hover:not(:disabled),.filter-chip.severity-minor:focus:not(:disabled){background:var(--color-severity-minor);color:#fff}.filter-chip.severity-info{background:#5bc2ff1a;color:var(--color-severity-info);border-color:var(--color-severity-info)}.filter-chip.severity-info:hover:not(:disabled),.filter-chip.severity-info:focus:not(:disabled){background:var(--color-severity-info);color:#fff}.filter-chip:disabled,.sort-select:disabled,.toolbar-action-btn:disabled{opacity:.4;cursor:not-allowed;transform:none!important;box-shadow:none!important}.sort-select{padding:var(--space-xs) var(--space-md);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-primary);font-size:var(--font-size-sm);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);min-height:32px;appearance:none;background-image:url("data:image/svg+xml;charset=US-ASCII,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3e%3cpath fill='%23666' d='m2 0-2 2h4zm0 5 2-2h-4z'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right var(--space-sm) center;background-size:.65em auto;padding-right:2.5rem}.sort-select:hover:not(:disabled){border-color:var(--color-brand);background-color:var(--color-brand-subtle)}.sort-select:focus:not(:disabled){outline:none;border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-subtle);background-color:var(--color-brand-subtle)}.toolbar-action-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);min-height:32px;white-space:nowrap}.toolbar-action-btn:hover:not(:disabled),.toolbar-action-btn:focus:not(:disabled){background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.results-summary-bar{background:var(--color-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-md) var(--space-xl);margin-bottom:var(--space-xl);box-shadow:var(--shadow-md)}.summary-info{display:flex;align-items:center;gap:var(--space-md);flex-wrap:wrap}.summary-text{font-size:var(--font-size-sm);color:var(--color-text-secondary);font-weight:var(--font-weight-normal)}.summary-chips{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.summary-chip{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:var(--color-surface);color:var(--color-text-secondary);border:1px solid var(--color-border);border-radius:var(--radius-xl);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);white-space:nowrap;min-height:28px;box-shadow:var(--shadow-sm)}.summary-chip:hover,.summary-chip:focus{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-md)}.summary-chip.severity-major{background:#ff62571a;color:var(--color-severity-major);border-color:var(--color-severity-major)}.summary-chip.severity-major:hover,.summary-chip.severity-major:focus{background:var(--color-severity-major);color:#fff}.summary-chip.severity-minor{background:#ffb0201a;color:var(--color-severity-minor);border-color:var(--color-severity-minor)}.summary-chip.severity-minor:hover,.summary-chip.severity-minor:focus{background:var(--color-severity-minor);color:#fff}.summary-chip.severity-info{background:#5bc2ff1a;color:var(--color-severity-info);border-color:var(--color-severity-info)}.summary-chip.severity-info:hover,.summary-chip.severity-info:focus{background:var(--color-severity-info);color:#fff}.summary-chip.severity-healthy{background:#31d0aa1a;color:var(--color-severity-healthy);border-color:var(--color-severity-healthy)}.summary-chip.severity-healthy:hover,.summary-chip.severity-healthy:focus{background:var(--color-severity-healthy);color:#fff}.bulk-actions{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-xl);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);margin-bottom:var(--space-md);box-shadow:var(--shadow-sm)}.bulk-actions-left{display:flex;align-items:center;gap:var(--space-md)}.bulk-actions-right{display:flex;align-items:center;gap:var(--space-sm)}.bulk-action-btn{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-xs) var(--space-md);background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-normal);cursor:pointer;transition:var(--transition-normal);min-height:32px}.bulk-action-btn:hover,.bulk-action-btn:focus{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.accordion-container{display:flex;flex-direction:column;gap:.75rem}.accordion-section{background:var(--color-card);border:1px solid var(--color-border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden;transition:var(--transition-slow)}.accordion-section:hover{border-color:var(--color-brand);transform:translateY(-1px)}.accordion-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-sm) var(--space-md) .75rem;background:var(--color-surface);border-bottom:1px solid var(--color-border-subtle);cursor:pointer;transition:var(--transition-normal);min-height:48px;width:100%}.accordion-header:hover,.accordion-header:focus{background:var(--color-brand-subtle)}.accordion-header-left{display:flex;align-items:center;gap:var(--space-md);flex:1;min-width:0}.accordion-header-title{display:flex;align-items:center;gap:var(--space-sm);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--color-text-primary);line-height:1.3;min-width:0}.accordion-header-icon{font-size:1.25rem;color:var(--color-text-secondary);flex-shrink:0}.accordion-header-info{display:flex;align-items:center;gap:var(--space-md);flex-shrink:0;margin-left:auto}.accordion-count{background:var(--color-brand);color:var(--color-text-primary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-xl);font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;min-width:fit-content;box-shadow:var(--shadow-sm);line-height:1.4}.accordion-trend{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.trend-sparkline{width:40px;height:20px;display:flex;align-items:end;gap:1px}.trend-bar{width:6px;background:var(--color-severity-healthy);border-radius:1px;min-height:4px;transition:var(--transition-slow)}.trend-bar.up{background:var(--color-severity-healthy)}.trend-bar.down{background:var(--color-severity-major)}.accordion-toggle{font-size:1.25rem;color:var(--color-text-secondary);transition:var(--transition-normal);padding:var(--space-xs);border-radius:var(--radius-sm);flex-shrink:0;background:none;border:none;cursor:pointer}.accordion-toggle:hover,.accordion-toggle:focus{color:var(--color-brand);background:var(--color-brand-subtle)}.accordion-toggle.open{transform:rotate(180deg)}.accordion-content{overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1),opacity .4s cubic-bezier(.4,0,.2,1);background:var(--color-card);animation:slideDown .5s cubic-bezier(.4,0,.2,1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.accordion-content.open{max-height:1000px;opacity:1}.accordion-items{display:flex;flex-direction:column;gap:0;padding:var(--space-sm) 0}.accordion-item{position:relative;display:flex;flex-direction:column;gap:var(--space-xs);padding:.75rem var(--space-md);border-bottom:1px solid var(--color-border-subtle);transition:var(--transition-normal);min-height:72px;max-height:none}.accordion-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--color-brand);opacity:.5;transition:opacity .3s}.accordion-item.selected:before{opacity:1}.accordion-item:last-child{border-bottom:none}.accordion-item:nth-child(2n){background:var(--color-surface)}.accordion-item:hover{background:var(--color-brand-subtle)}.accordion-item.selected{background:var(--color-brand-subtle);border-color:var(--color-brand);box-shadow:inset 0 0 0 1px var(--color-brand)}.item-main{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:.75rem;width:100%}.item-main .sign-text{flex:1;font-weight:var(--font-weight-normal);color:var(--color-text-primary);line-height:1.6;font-size:var(--font-size-sm);-webkit-line-clamp:unset;overflow:visible;white-space:normal;max-width:100%}.item-main .source-badge{flex-shrink:0}.item-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:20px}.meta-left{display:flex;align-items:center;gap:var(--space-sm);flex:1}.meta-left .last-seen{font-size:var(--font-size-xs);color:var(--color-text-secondary);font-weight:var(--font-weight-normal);white-space:nowrap}.meta-right{flex-shrink:0}.meta-right .region-asset{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.item-actions{display:flex;gap:.5rem;margin-top:.5rem;align-self:flex-end}.item-action-btn{padding:var(--space-xs);background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);display:flex;align-items:center;justify-content:center;width:28px;height:28px;font-size:0;line-height:0}.item-action-btn:hover,.item-action-btn:focus{background:var(--color-brand);color:#fff;border-color:var(--color-brand);outline:2px solid var(--color-brand);outline-offset:2px;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.item-action-btn:hover svg,.item-action-btn:focus svg{color:#fff}.confidence-bar{width:100%;height:4px;background:var(--color-surface);border-radius:2px;overflow:hidden;margin-top:var(--space-xs)}.last-seen{font-size:var(--font-size-xs);color:var(--color-text-muted);font-weight:var(--font-weight-normal);margin-top:var(--space-xs)}.text-brand{color:var(--color-brand)}.sensor-badge{min-width:80px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-secondary);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:600;text-align:center;text-transform:none;letter-spacing:.025em;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs);position:relative;white-space:nowrap;box-shadow:var(--shadow-sm);transition:var(--transition-normal)}.sensor-badge:hover,.sensor-badge:focus{background:var(--color-brand);color:var(--color-text-primary);border-color:var(--color-brand);box-shadow:var(--shadow-md)}.sensor-badge[data-type=pt]{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:#3b82f6;color:#fff;position:relative;box-shadow:0 2px 4px #3b82f64d}.sensor-badge[data-type=pt]:after{content:"Pressure Transmitter";position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--color-surface);border:1px solid var(--color-border);padding:var(--space-xs) var(--space-sm);border-radius:var(--radius-md);font-size:var(--font-size-xs);color:var(--color-text-primary);white-space:nowrap;opacity:0;pointer-events:none;transition:var(--transition-normal);z-index:1000;box-shadow:var(--shadow-md)}.sensor-badge[data-type=pt]:hover:after{opacity:1}.sensor-badge[data-type=ft]{background:linear-gradient(135deg,#10b981,#047857);border-color:#10b981;color:#fff;box-shadow:0 2px 4px #10b9814d}.sensor-badge[data-type=ft]:hover:after{opacity:1}.sensor-badge[data-type=tt]{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#f59e0b;color:#fff;box-shadow:0 2px 4px #f59e0b4d}.sensor-badge[data-type=tt]:hover:after{opacity:1}.sensor-badge[data-type="Visible Spectrum Camera"]{background:var(--color-brand);border-color:var(--color-brand);color:#fff}.sensor-badge[data-type="Visible Spectrum Camera"]:hover:after{opacity:1}.sensor-badge[data-type="Spectroscopic Sensor"]{background:var(--color-severity-minor);border-color:var(--color-severity-minor);color:#fff}.sensor-badge[data-type=spectroscopic]:hover:after{opacity:1}.sensor-badge[data-type="Thermal Imaging Camera"]{background:var(--color-severity-major);border-color:var(--color-severity-major);color:#fff}.sensor-badge[data-type="Thermal Imaging Camera"]:hover:after{opacity:1}.sensor-badge[data-type=seismometer]{background:var(--color-badge-seismo);border-color:var(--color-badge-seismo);color:#fff}.sensor-badge[data-type=seismometer]:hover:after{opacity:1}.dual-panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl);margin-bottom:var(--space-xl)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--color-text-secondary);background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-subtle)}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary);margin-bottom:.5rem}.empty-state-btn{padding:.5rem 1rem;background:var(--color-brand-subtle);border:1px solid var(--color-brand);color:var(--color-brand);border-radius:var(--radius-md);font-size:.875rem;font-weight:500;cursor:pointer;transition:var(--transition-normal)}.empty-state-btn:hover{background:var(--color-brand);color:#fff}.accordion-header:focus,.system-chip:focus,.summary-chip:focus,.bulk-action-btn:focus,.item-action-btn:focus,.segmented-option:focus,.enhanced-select:focus,.search-input:focus,.toggle-input:focus+.toggle-label{outline:2px solid #2EA8FF;outline-offset:2px}.toast-container{position:fixed;top:20px;right:20px;z-index:10000;display:flex;flex-direction:column;gap:.5rem}.toast{background:var(--raised-card-background);border:1px solid var(--border-color);border-radius:.5rem;padding:1rem 1.25rem;box-shadow:0 8px 25px #00000026;display:flex;align-items:center;gap:.75rem;min-width:300px;max-width:400px;transform:translate(400px);transition:transform .3s cubic-bezier(.4,0,.2,1)}.toast.show{transform:translate(0)}.toast.success{border-left:4px solid var(--severity-healthy)}.toast.error{border-left:4px solid var(--severity-major)}.toast-content{flex:1;font-size:.875rem;color:var(--text-primary);line-height:1.4}.toast-actions{display:flex;gap:.5rem}.toast-btn{padding:.375rem .75rem;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:.25rem;font-size:.75rem;font-weight:500;cursor:pointer;transition:all .2s ease}.toast-btn:hover{background:var(--primary-color);color:var(--text-primary);border-color:var(--primary-color)}.toast-close{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .2s ease}.toast-close:hover{background:var(--border-color);color:var(--text-primary)}.generate-progress{display:inline-flex;align-items:center;gap:.5rem;margin-left:.5rem}.progress-bar{width:60px;height:4px;background:var(--surface-background);border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:var(--primary-color);border-radius:2px;transition:width .3s ease;width:0%}.progress-text{font-size:.75rem;color:var(--text-secondary);font-weight:500;min-width:2.5rem}.skeleton-row{display:grid;grid-template-columns:2fr 1fr auto auto;gap:1rem;padding:.625rem 1rem;align-items:center;border-bottom:1px solid var(--border-color);animation:pulse 1.5s ease-in-out infinite}.skeleton-row:last-child{border-bottom:none}.skeleton-item{background:var(--surface-background);border-radius:.25rem;height:1rem}.skeleton-icon{width:1.25rem;height:1.25rem;border-radius:50%}.skeleton-title{width:60%}.skeleton-meta{width:40%}.skeleton-actions{width:80px;height:28px}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 1.5rem;text-align:center;color:var(--text-secondary)}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.empty-state-title{font-size:1.125rem;font-weight:600;color:var(--text-primary);margin-bottom:.5rem}.empty-state-description{font-size:.875rem;line-height:1.5;max-width:400px;margin-bottom:1.5rem}.empty-state-actions{display:flex;gap:.75rem;flex-wrap:wrap;justify-content:center}.empty-state-btn{padding:.5rem 1rem;background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:.375rem;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.empty-state-btn:hover{background:var(--primary-color);color:var(--text-primary);border-color:var(--primary-color)}.error-state{background:var(--raised-card-background);border:1px solid var(--severity-major);border-radius:.5rem;padding:1.5rem;margin-bottom:1.5rem}.error-header{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.error-icon{color:var(--severity-major);font-size:1.25rem}.error-title{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0}.error-message{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin-bottom:1rem}.error-actions{display:flex;gap:.75rem;align-items:center}.error-link{color:var(--primary-color);font-size:.875rem;font-weight:500;text-decoration:none;transition:color .2s ease}.error-link:hover{color:var(--primary-hover);text-decoration:underline}.sensor-legend{background:transparent;border:none;border-radius:0;padding:var(--space-sm) 0;margin-bottom:1.5rem;border-bottom:1px solid var(--color-border-subtle)}.legend-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:0}.legend-title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;color:var(--text-primary);line-height:1.3;display:flex;align-items:center;gap:.5rem}.legend-toggle{background:transparent;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:.25rem;transition:all .2s ease}.legend-toggle:hover{background:var(--border-color);color:var(--text-primary)}.legend-toggle.expanded{transform:rotate(180deg)}.legend-badges{display:flex;flex-wrap:wrap;gap:var(--space-xs);margin-top:var(--space-sm);padding:var(--space-sm) 0}.legend-badges .sensor-badge{font-size:var(--font-size-xs);padding:var(--space-xs) var(--space-sm);min-height:24px}.legend-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.legend-item{display:flex;align-items:center;gap:.75rem;padding:.5rem .75rem;background:var(--raised-card-background);border:1px solid var(--border-color);border-radius:.375rem}.legend-badge{width:24px;height:24px;border-radius:50%;flex-shrink:0}.legend-text{font-size:.75rem;color:var(--text-secondary);font-weight:500}.legend-badge.pt{background:var(--badge-pt)}.legend-badge.ft{background:var(--badge-ft)}.legend-badge.tt{background:var(--badge-tt)}.legend-badge.seismo{background:var(--badge-seismo)}.legend-badge.visible{background:var(--primary-color)}.legend-badge.spectroscopic{background:var(--severity-minor)}.legend-badge.thermal{background:var(--severity-major)}@media(max-width:1024px){.detection-method-row{grid-template-columns:1fr;gap:.75rem}.detection-method-row .source-column{justify-content:flex-start}.sensor-badge{min-width:100px;font-size:.7rem;padding:.4rem .8rem}}@media(max-width:768px){.detection-methods-table tbody tr{border-radius:.5rem}.defect-type-header{padding:.875rem 1rem;font-size:.9rem}.detection-method-row{padding:.875rem 1rem}.sensor-badge{min-width:80px;font-size:.65rem;padding:.35rem .7rem}}@media(max-width:1400px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.detailed-grid{grid-template-columns:1fr}.report-content-wrapper{grid-template-columns:320px 1fr;gap:1rem}}@media(max-width:1024px){.report-content-wrapper{grid-template-columns:1fr;gap:1.5rem}.report-config-sidebar{order:-1;display:flex;flex-direction:column;gap:1rem}.report-config-sidebar .industrial-panel{width:100%}.report-header-content{padding:.75rem var(--page-gutter);gap:1rem}.report-page-title{font-size:1.125rem}.system-status-chips{gap:.75rem}.system-chip{font-size:.7rem;padding:.2rem .6rem}.defect-bar-item{grid-template-columns:1fr;gap:.5rem}.report-content-wrapper{padding:0 1rem 1rem}}@media(max-width:768px){.unified-toolbar{flex-direction:column;align-items:stretch;gap:var(--space-md)}.toolbar-left{justify-content:center}.toolbar-right{justify-content:center;flex-wrap:wrap}.report-sticky-header{flex-direction:column;gap:0;align-items:stretch}.report-header-content{justify-content:space-between}.report-page-title{font-size:1rem}.report-header-actions{justify-content:center;flex-wrap:wrap}.report-system-bar{padding:.5rem var(--page-gutter)}.system-status-chips{justify-content:center;gap:.5rem}.report-config-sidebar{grid-template-columns:1fr}.report-config-sidebar .industrial-panel{min-width:auto}.metrics-grid{grid-template-columns:1fr}.data-table-container{font-size:.75rem}.data-table th,.data-table td{padding:.75rem}.config-grid{gap:1rem}.config-select{padding:.625rem .75rem;font-size:.8rem}.report-content-wrapper{padding:0 1rem 1rem}}@media(max-width:1024px){.toast{min-width:280px;max-width:350px}.legend-grid{grid-template-columns:1fr}.accordion-item{padding:.625rem var(--space-sm);min-height:48px;max-height:56px}.item-main,.item-meta{gap:var(--space-sm)}}@media(max-width:768px){.toast-container{left:10px;right:10px;top:10px}.toast{min-width:auto;max-width:none;transform:translateY(-100px)}.toast.show{transform:translateY(0)}.generate-progress{flex-direction:column;gap:.25rem}.progress-bar{width:40px}.accordion-items{padding:.5rem 0}.accordion-item{padding:.625rem var(--space-sm);min-height:44px}.item-main,.item-meta{gap:var(--space-xs)}.sensor-badge{font-size:.65rem;padding:.35rem .7rem}}.report-page{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--color-text-primary)}.report-page h1,.report-page-title{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1.5rem;font-weight:700;line-height:1.2;color:var(--color-text-primary);margin:0 0 1.5rem}.panel-title,.config-section-title,.accordion-header-title,.legend-title,.timeline-header h4{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;font-weight:600;line-height:1.3;color:var(--color-text-primary);margin:0 0 .75rem}.report-page p,.report-page span,.filter-tag,.system-chip,.search-input,.enhanced-select,.segmented-option,.toggle-text,.toast-content,.item-main .sign-text{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:.875rem;font-weight:400;line-height:1.5;color:var(--color-text-primary)}.id-badge,.metric-value,.metric-label,.accordion-count,.defect-count,.defect-percentage,.timeline-date,.last-seen,.region-asset,.meta-right,.detail-value,.detail-label{font-family:Roboto Mono,monospace;font-size:.75rem;font-weight:500;line-height:1.4;color:var(--color-text-secondary)}.report-page.theme-light{--app-background: #F6F8FB;--color-surface: #F9FAFB;--color-card: #FFFFFF;--raised-card-background: rgba(255,255,255,.9);--color-border: #E5E7EB;--color-border-subtle: #EEF2F7;--shadow-color: rgba(2, 6, 23, .08);--shadow-sm: 0 1px 2px var(--shadow-color);--shadow-md: 0 2px 10px var(--shadow-color);--shadow-lg: 0 10px 24px var(--shadow-color);--color-text-primary: #0F172A;--color-text-secondary: #334155;--color-text-muted: #64748B;--color-brand: #2563EB;--color-brand-hover: #1D4ED8;--color-brand-subtle: #E8F0FF;--color-severity-major: #EF4444;--color-severity-minor: #F59E0B;--color-severity-info: #0EA5E9;--color-severity-healthy: #10B981;--panel-gradient-start: #FFFFFF;--panel-gradient-end: #F9FAFB;--industrial-surface: #FFFFFF;--industrial-panel: #F9FAFB;--industrial-border: #E5E7EB;--industrial-accent: #2563EB;--industrial-accent-dim: #E8F0FF;--industrial-text-primary: #0F172A;--industrial-text-secondary: #475569;--industrial-text-dim: #64748B;--badge-pt: #3B82F6;--badge-ft: #10B981;--badge-tt: #F59E0B;--badge-seismo: #8B5CF6}.report-page.theme-light .report-sticky-header{border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);background:var(--raised-card-background)}.report-page.theme-light .industrial-panel,.report-page.theme-light .results-summary-bar,.report-page.theme-light .bulk-actions,.report-page.theme-light .accordion-section{background:var(--color-card);border-color:var(--color-border);box-shadow:var(--shadow-sm)}.report-page.theme-light .accordion-item:nth-child(2n){background:var(--color-surface)}.report-page.theme-light .accordion-header:hover,.report-page.theme-light .accordion-item:hover,.report-page.theme-light .summary-chip:hover,.report-page.theme-light .filter-chip:hover,.report-page.theme-light .toolbar-action-btn:hover,.report-page.theme-light .system-chip:hover,.report-page.theme-light .sort-select:hover,.report-page.theme-light .enhanced-select:hover,.report-page.theme-light .search-input:hover{background:var(--color-brand-subtle);border-color:var(--color-brand)}.report-page.theme-light .enhanced-select,.report-page.theme-light .search-input,.report-page.theme-light .sort-select,.report-page.theme-light .segmented-control{background:#fff;color:var(--color-text-primary);border-color:var(--color-border)}.report-page.theme-light .filter-chip,.report-page.theme-light .summary-chip,.report-page.theme-light .system-chip{background:#fff;color:var(--color-text-secondary);border-color:var(--color-border)}.report-page.theme-light .sensor-badge[data-type]:after{background:#fff;border-color:var(--color-border);color:var(--color-text-primary)}.report-page.theme-light .data-table{background:#fff}.report-page.theme-light .data-table thead{background:var(--color-surface);border-bottom-color:var(--color-border)}.report-page.theme-light .data-table tbody tr:hover{background:var(--color-brand-subtle)}.theme-dark{--upload-bg-start: #0a0e1a;--upload-bg-end: #12171f;--upload-surface: #1a1f2e;--upload-border: #2a3344;--upload-text-primary: #e8edf4;--upload-text-secondary: #8b92a7;--upload-text-dim: #5a6176;--upload-accent: #0ea5e9;--upload-accent-dim: rgba(14, 165, 233, .1);--upload-success: #10b981;--upload-analyzing: #f59e0b;--upload-shadow: rgba(0, 0, 0, .3)}.theme-light{--upload-bg-start: #f8fafc;--upload-bg-end: #f1f5f9;--upload-surface: #ffffff;--upload-border: #e2e8f0;--upload-text-primary: #0f172a;--upload-text-secondary: #475569;--upload-text-dim: #94a3b8;--upload-accent: #0ea5e9;--upload-accent-dim: rgba(14, 165, 233, .1);--upload-success: #10b981;--upload-analyzing: #f59e0b;--upload-shadow: rgba(0, 0, 0, .08)}.upload-page{min-height:100vh;background:linear-gradient(135deg,var(--upload-bg-start) 0%,var(--upload-bg-end) 100%);color:var(--upload-text-primary);font-family:Roboto,Inter,-apple-system,BlinkMacSystemFont,sans-serif;padding:1.5rem;transition:background .3s ease,color .3s ease}.upload-header{max-width:1400px;margin:0 auto 2rem;display:flex;justify-content:space-between;align-items:center;gap:2rem}.header-content{flex:1}.page-title{font-size:2rem;font-weight:700;margin:0 0 .5rem;color:var(--upload-text-primary);letter-spacing:-.02em}.page-subtitle{font-size:1rem;color:var(--upload-text-secondary);margin:0}.header-stats{display:flex;gap:1rem}.stat-chip{background:var(--upload-surface);border:1px solid var(--upload-border);border-radius:.5rem;padding:.75rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.25rem;min-width:80px;box-shadow:0 2px 8px var(--upload-shadow);transition:all .3s ease}.stat-chip:hover{transform:translateY(-2px);box-shadow:0 4px 12px var(--upload-shadow)}.stat-chip.analyzing{border-color:var(--upload-analyzing);background:linear-gradient(135deg,var(--upload-surface),rgba(245,158,11,.05))}.stat-chip.completed{border-color:var(--upload-success);background:linear-gradient(135deg,var(--upload-surface),rgba(16,185,129,.05))}.stat-value{font-size:1.5rem;font-weight:700;color:var(--upload-text-primary)}.stat-label{font-size:.75rem;color:var(--upload-text-secondary);text-transform:uppercase;letter-spacing:.05em}.upload-container{max-width:1400px;margin:0 auto;display:flex;flex-direction:column;gap:2rem}.dropzone{background:var(--upload-surface);border:2px dashed var(--upload-border);border-radius:1rem;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px var(--upload-shadow)}.dropzone:hover{border-color:var(--upload-accent);background:var(--upload-accent-dim);transform:translateY(-2px)}.dropzone.dragging{border-color:var(--upload-accent);background:var(--upload-accent-dim);transform:scale(1.02)}.dropzone-icon{font-size:3rem;margin-bottom:1rem;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.dropzone-title{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:var(--upload-text-primary)}.dropzone-subtitle{font-size:.875rem;color:var(--upload-text-secondary);margin:0 0 1.5rem}.browse-btn{background:var(--upload-accent);color:#fff;border:none;border-radius:.5rem;padding:.75rem 2rem;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px #0ea5e94d}.browse-btn:hover{background:#0284c7;transform:translateY(-2px);box-shadow:0 6px 16px #0ea5e966}.files-section{background:var(--upload-surface);border:1px solid var(--upload-border);border-radius:1rem;padding:1.5rem;box-shadow:0 2px 8px var(--upload-shadow)}.files-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:1px solid var(--upload-border)}.section-title{font-size:1.25rem;font-weight:600;margin:0;color:var(--upload-text-primary)}.clear-btn{background:transparent;color:var(--upload-text-secondary);border:1px solid var(--upload-border);border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;cursor:pointer;transition:all .3s ease}.clear-btn:hover{color:#ef4444;border-color:#ef4444;background:#ef44440d}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.file-card{background:linear-gradient(135deg,var(--upload-surface),rgba(255,255,255,.02));border:1px solid var(--upload-border);border-radius:.75rem;overflow:hidden;transition:all .3s ease;display:flex;flex-direction:column}.file-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--upload-shadow);border-color:var(--upload-accent)}.file-card.analyzing{border-color:var(--upload-analyzing);box-shadow:0 0 20px #f59e0b33}.file-card.completed{border-color:var(--upload-success)}.file-preview{position:relative;width:100%;height:180px;background:var(--upload-border);overflow:hidden}.file-preview img,.file-preview video{width:100%;height:100%;object-fit:cover}.file-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(0,0,0,.3),transparent);display:flex;padding:.75rem}.file-type-badge{background:#000000b3;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;padding:.25rem .75rem;border-radius:.375rem;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.file-info{padding:1rem;flex:1}.file-name{font-size:.875rem;font-weight:600;margin:0 0 .25rem;color:var(--upload-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-size{font-size:.75rem;color:var(--upload-text-secondary);margin:0}.progress-bar{height:4px;background:var(--upload-border);margin:0 1rem;border-radius:2px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--upload-analyzing),var(--upload-accent));transition:width .3s ease}.file-actions{display:flex;gap:.5rem;padding:1rem;border-top:1px solid var(--upload-border);align-items:center}.action-btn{flex:1;border:none;border-radius:.375rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .3s ease}.action-btn.analyze{background:var(--upload-accent);color:#fff;box-shadow:0 2px 8px #0ea5e94d}.action-btn.analyze:hover{background:#0284c7;transform:translateY(-1px);box-shadow:0 4px 12px #0ea5e966}.action-btn.remove{background:transparent;color:var(--upload-text-secondary);border:1px solid var(--upload-border);flex:0 0 auto;padding:.5rem .75rem}.action-btn.remove:hover{color:#ef4444;border-color:#ef4444;background:#ef44440d}.status-text{font-size:.875rem;color:var(--upload-text-secondary);font-weight:500;flex:1}.status-text.success{color:var(--upload-success)}.detections-panel{background:var(--upload-accent-dim);border-top:1px solid var(--upload-border);padding:1rem;margin:0;display:flex;flex-direction:column;gap:.75rem}.detections-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.detections-count{font-size:.875rem;font-weight:600;color:var(--upload-text-primary)}.detection-item{background:var(--upload-surface);border:1px solid var(--upload-border);border-left:3px solid var(--upload-accent);border-radius:.5rem;padding:.75rem;display:flex;flex-direction:column;gap:.5rem;transition:all .3s ease}.detection-item:hover{transform:translate(4px);box-shadow:0 2px 8px var(--upload-shadow)}.detection-item.critical{border-left-color:#ef4444;background:linear-gradient(135deg,var(--upload-surface),rgba(239,68,68,.05))}.detection-item.warning{border-left-color:#f59e0b;background:linear-gradient(135deg,var(--upload-surface),rgba(245,158,11,.05))}.detection-item.info{border-left-color:#0ea5e9;background:linear-gradient(135deg,var(--upload-surface),rgba(14,165,233,.05))}.detection-main{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.detection-type{font-size:.875rem;font-weight:600;color:var(--upload-text-primary)}.detection-confidence{font-size:.75rem;font-weight:700;color:var(--upload-success);background:#10b9811a;padding:.25rem .5rem;border-radius:.25rem}.detection-location{font-size:.75rem;color:var(--upload-text-secondary);display:flex;align-items:center;gap:.25rem}.detection-severity-badge{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;padding:.25rem .5rem;border-radius:.25rem;width:fit-content}.detection-item.critical .detection-severity-badge{background:#ef444426;color:#ef4444}.detection-item.warning .detection-severity-badge{background:#f59e0b26;color:#f59e0b}.detection-item.info .detection-severity-badge{background:#0ea5e926;color:#0ea5e9}.info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:1rem}.info-card{background:var(--upload-surface);border:1px solid var(--upload-border);border-radius:.75rem;padding:1.5rem;text-align:center;transition:all .3s ease;box-shadow:0 2px 8px var(--upload-shadow)}.info-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--upload-shadow);border-color:var(--upload-accent)}.info-icon{font-size:2.5rem;margin-bottom:1rem;animation:pulse 3s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.info-title{font-size:1.125rem;font-weight:600;margin:0 0 .5rem;color:var(--upload-text-primary)}.info-text{font-size:.875rem;color:var(--upload-text-secondary);line-height:1.5;margin:0}@media(max-width:1024px){.upload-header{flex-direction:column;align-items:flex-start}.header-stats{width:100%;justify-content:space-between}.files-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}}@media(max-width:768px){.upload-page{padding:1rem}.page-title{font-size:1.5rem}.header-stats{flex-wrap:wrap}.stat-chip{min-width:calc(50% - .5rem)}.dropzone{padding:2rem 1rem}.dropzone-icon{font-size:2rem}.dropzone-title{font-size:1rem}.files-grid,.info-section{grid-template-columns:1fr}}.theme-dark{--about-bg-start: #0a0e1a;--about-bg-end: #12171f;--about-surface: #1a1f2e;--about-border: #2a3344;--about-text-primary: #e8edf4;--about-text-secondary: #8b92a7;--about-text-dim: #5a6176;--about-accent: #0ea5e9;--about-accent-dim: rgba(14, 165, 233, .1);--about-shadow: rgba(0, 0, 0, .3)}.theme-light{--about-bg-start: #f8fafc;--about-bg-end: #f1f5f9;--about-surface: #ffffff;--about-border: #e2e8f0;--about-text-primary: #0f172a;--about-text-secondary: #475569;--about-text-dim: #94a3b8;--about-accent: #0ea5e9;--about-accent-dim: rgba(14, 165, 233, .1);--about-shadow: rgba(0, 0, 0, .08)}.about-page{min-height:100vh;background:linear-gradient(135deg,var(--about-bg-start) 0%,var(--about-bg-end) 100%);color:var(--about-text-primary);font-family:Roboto,Inter,-apple-system,BlinkMacSystemFont,sans-serif;transition:background .3s ease,color .3s ease}.about-container{max-width:1200px;margin:0 auto;padding:2rem 2rem 4rem}.about-hero{text-align:center;padding:3rem 0 4rem}.hero-badge{display:inline-block;background:var(--about-accent-dim);color:var(--about-accent);padding:.5rem 1.25rem;border-radius:2rem;font-size:.875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;margin-bottom:1.5rem;border:1px solid var(--about-accent)}.hero-title{font-size:3rem;font-weight:700;margin:0 0 1.5rem;color:var(--about-text-primary);letter-spacing:-.03em;line-height:1.2}.hero-description{font-size:1.25rem;color:var(--about-text-secondary);max-width:800px;margin:0 auto;line-height:1.6}.mission-section{background:var(--about-surface);border:1px solid var(--about-border);border-radius:1rem;padding:3rem;margin-bottom:4rem;box-shadow:0 4px 16px var(--about-shadow)}.about-page.theme-dark .mission-section{background:#1a1f2e!important;border-color:#2a3344!important}.about-page.theme-light .mission-section{background:#fff!important;border-color:#e2e8f0!important}.section-title{font-size:2rem;font-weight:700;margin:0 0 1.5rem;color:var(--about-text-primary);letter-spacing:-.02em}.section-text{font-size:1.125rem;line-height:1.8;color:var(--about-text-secondary);margin:0}.section-title-center{text-align:center;font-size:2rem;font-weight:700;margin:0 0 3rem;color:var(--about-text-primary);letter-spacing:-.02em}.features-section{margin-bottom:4rem}.features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature-card{background:var(--about-surface);border:1px solid var(--about-border);border-radius:1rem;padding:2rem;transition:all .3s ease;box-shadow:0 2px 8px var(--about-shadow)}.about-page.theme-dark .feature-card{background:#1a1f2e!important;border-color:#2a3344!important}.about-page.theme-light .feature-card{background:#fff!important;border-color:#e2e8f0!important}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--about-shadow);border-color:var(--about-accent)}.feature-icon{font-size:3rem;margin-bottom:1.5rem;display:block}.feature-title{font-size:1.25rem;font-weight:600;margin:0 0 1rem;color:var(--about-text-primary)}.feature-description{font-size:.9375rem;line-height:1.6;color:var(--about-text-secondary);margin:0}.tech-section{margin-bottom:4rem}.tech-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.tech-category{background:var(--about-surface);border:1px solid var(--about-border);border-radius:1rem;padding:2rem;box-shadow:0 2px 8px var(--about-shadow)}.about-page.theme-dark .tech-category{background:#1a1f2e!important;border-color:#2a3344!important}.about-page.theme-light .tech-category{background:#fff!important;border-color:#e2e8f0!important}.tech-category-title{font-size:1.125rem;font-weight:600;margin:0 0 1.5rem;color:var(--about-text-primary)}.tech-tags{display:flex;flex-wrap:wrap;gap:.75rem}.tech-tag{background:var(--about-accent-dim);color:var(--about-accent);padding:.5rem 1rem;border-radius:.5rem;font-size:.875rem;font-weight:500;border:1px solid var(--about-accent);transition:all .3s ease}.tech-tag:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0ea5e94d}.stats-section{background:linear-gradient(135deg,var(--about-accent),#0284c7);border-radius:1rem;padding:3rem;margin-bottom:4rem;box-shadow:0 8px 32px #0ea5e94d}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat-item{text-align:center}.stat-value{font-size:3rem;font-weight:700;color:#fff;margin-bottom:.5rem;font-family:Roboto Mono,monospace}.stat-label{font-size:1rem;color:#ffffffe6;font-weight:500;text-transform:uppercase;letter-spacing:.05em}.benefits-section{margin-bottom:4rem}.benefits-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}.benefit-item{background:var(--about-surface);border:1px solid var(--about-border);border-radius:1rem;padding:2rem;position:relative;box-shadow:0 2px 8px var(--about-shadow);transition:all .3s ease}.about-page.theme-dark .benefit-item{background:#1a1f2e!important;border-color:#2a3344!important}.about-page.theme-light .benefit-item{background:#fff!important;border-color:#e2e8f0!important}.benefit-item:hover{transform:translateY(-4px);box-shadow:0 8px 24px var(--about-shadow)}.benefit-number{position:absolute;top:2rem;right:2rem;font-size:4rem;font-weight:700;color:var(--about-border);line-height:1}.benefit-title{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:var(--about-text-primary)}.benefit-text{font-size:.9375rem;line-height:1.6;color:var(--about-text-secondary);margin:0}.contact-section{background:var(--about-surface);border:1px solid var(--about-border);border-radius:1rem;padding:3rem;text-align:center;box-shadow:0 4px 16px var(--about-shadow)}.about-page.theme-dark .contact-section{background:#1a1f2e!important;border-color:#2a3344!important}.about-page.theme-light .contact-section{background:#fff!important;border-color:#e2e8f0!important}.contact-title{font-size:2rem;font-weight:700;margin:0 0 1rem;color:var(--about-text-primary)}.contact-description{font-size:1.125rem;color:var(--about-text-secondary);margin:0 0 2rem;max-width:600px;margin-left:auto;margin-right:auto}.contact-info{display:flex;flex-direction:column;gap:1rem;max-width:500px;margin:0 auto}.contact-item{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:var(--about-accent-dim);border:1px solid var(--about-accent);border-radius:.75rem;transition:all .3s ease}.contact-item:hover{transform:translate(4px);box-shadow:0 4px 12px #0ea5e933}.contact-icon{font-size:1.5rem}.contact-text{font-size:1rem;color:var(--about-text-primary);font-weight:500}@media(max-width:1024px){.about-container{padding:2rem 1.5rem 3rem}.hero-title{font-size:2.5rem}.hero-description{font-size:1.125rem}.features-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.tech-grid{grid-template-columns:1fr;gap:1.5rem}.stats-grid{grid-template-columns:repeat(2,1fr);gap:1.5rem}.benefits-grid{grid-template-columns:1fr;gap:1.5rem}}@media(max-width:768px){.about-container{padding:1.5rem 1rem 2rem}.about-hero{padding:2rem 0 3rem}.hero-title{font-size:2rem}.hero-description{font-size:1rem}.mission-section{padding:2rem;margin-bottom:3rem}.section-title,.section-title-center{font-size:1.5rem;margin-bottom:2rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.stats-section{padding:2rem}.stats-grid{grid-template-columns:1fr;gap:2rem}.stat-value{font-size:2.5rem}.benefit-number{font-size:3rem}.contact-section{padding:2rem}.contact-title{font-size:1.5rem}.contact-description{font-size:1rem}}:root{--primary-color: #2563eb;--primary-dark: #1d4ed8;--secondary-color: #95a5a6;--success-color: #10b981;--warning-color: #f59e0b;--error-color: #ef4444;--background-color: #f8fafc;--card-background: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--border-color: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgb(0 0 0 / .05);--shadow-md: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1)}:root{--color-bg: #0B0F14;--color-surface: #10141B;--color-card: #121925;--color-card-hover: #1a2332;--color-border: #1F2A37;--color-border-subtle: rgba(31, 42, 55, .5);--color-text-primary: #E6EDF3;--color-text-secondary: #9FB0C3;--color-text-muted: #6C7C90;--color-brand: #2EA8FF;--color-brand-hover: #5BC2FF;--color-brand-pressed: #1D83CC;--color-brand-subtle: rgba(46, 168, 255, .1);--color-severity-major: #FF6257;--color-severity-minor: #FFB020;--color-severity-info: #5BC2FF;--color-severity-healthy: #31D0AA;--color-badge-pt: #A78BFA;--color-badge-ft: #60A5FA;--color-badge-tt: #34D399;--color-badge-seismo: #F472B6;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.25rem;--space-xl: 1.5rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-weight-normal: 500;--font-weight-medium: 600;--font-weight-bold: 700;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -2px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -4px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .1);--transition-fast: .15s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}.theme-light{--bg-gradient-start: #f8fafc;--bg-gradient-end: #f1f5f9;--app-background: #f8fafc;--surface-background: #ffffff;--raised-card-background: #ffffff;--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--border-color: #e2e8f0;--primary-color: #2563eb;--primary-hover: #1d4ed8;--primary-pressed: #1e40af;--severity-major: #ef4444;--severity-minor: #f59e0b;--severity-info: #0ea5e9;--severity-healthy: #10b981;--badge-pt: #8b5cf6;--badge-ft: #3b82f6;--badge-tt: #10b981;--badge-seismo: #ec4899}.theme-dark{--bg-gradient-start: var(--color-bg);--bg-gradient-end: var(--color-surface);--app-background: var(--color-bg);--surface-background: var(--color-surface);--raised-card-background: var(--color-card);--text-primary: var(--color-text-primary);--text-secondary: var(--color-text-secondary);--text-muted: var(--color-text-muted);--border-color: var(--color-border);--primary-color: var(--color-brand);--primary-hover: var(--color-brand-hover);--primary-pressed: var(--color-brand-pressed);--severity-major: var(--color-severity-major);--severity-minor: var(--color-severity-minor);--severity-info: var(--color-severity-info);--severity-healthy: var(--color-severity-healthy);--badge-pt: var(--color-badge-pt);--badge-ft: var(--color-badge-ft);--badge-tt: var(--color-badge-tt);--badge-seismo: var(--color-badge-seismo)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--app-background);color:var(--text-primary);line-height:1.6;margin:0;padding:0;overflow-x:hidden;transition:all .3s ease}html{scroll-behavior:smooth;margin:0;padding:0}html,body{height:100%}#root{min-height:100vh;display:flex;flex-direction:column}a{color:var(--primary-color);text-decoration:none}a:hover{color:var(--primary-dark)}button{font-family:inherit;cursor:pointer;border:none;outline:none}input{font-family:inherit;outline:none}.container{max-width:1200px;margin:0 auto;padding:0 1rem}@media(max-width:768px){.container{padding:0 .5rem}}
