*{margin:0;padding:0;box-sizing:border-box}:root{--primary-blue: #0066FF;--primary-blue-dark: #0052CC;--primary-blue-light: #4D94FF;--primary-blue-subtle: rgba(0, 102, 255, .08);--accent-cyan: #00D4FF;--accent-gradient: linear-gradient(135deg, #0066FF 0%, #00D4FF 100%);--safety-orange: #FF8C00;--success-green: #00C853;--danger-red: #FF3B30;--warning-amber: #FFB300;--dark-slate: #1A1F36;--text-primary: #1A1F36;--text-secondary: #6B7280;--text-tertiary: #9CA3AF;--bg-gray: #F8FAFC;--bg-white: #FFFFFF;--border-light: rgba(0, 0, 0, .06);--border-medium: rgba(0, 0, 0, .1);--glass-bg: rgba(255, 255, 255, .85);--glass-bg-strong: rgba(255, 255, 255, .95);--glass-border: rgba(255, 255, 255, .3);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .12);--glass-shadow-hover: 0 12px 40px rgba(0, 0, 0, .16);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .04);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 32px rgba(0, 0, 0, .12);--shadow-xl: 0 16px 48px rgba(0, 0, 0, .16);--shadow-glow-blue: 0 0 20px rgba(0, 102, 255, .3);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-5xl: 3rem;--text-6xl: 3.75rem;--leading-tight: 1.25;--leading-snug: 1.375;--leading-normal: 1.5;--leading-relaxed: 1.625;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--radius-xl: 20px;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-smooth: .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .4s cubic-bezier(.34, 1.56, .64, 1);--focus-ring: 0 0 0 3px rgba(0, 102, 255, .4);--focus-ring-offset: 2px;--min-touch-target: 44px}:focus-visible{outline:2px solid var(--primary-blue);outline-offset:var(--focus-ring-offset)}:focus:not(:focus-visible){outline:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:none;box-shadow:var(--focus-ring)}.skip-link{position:absolute;top:-100%;left:0;padding:var(--space-sm) var(--space-md);background:var(--primary-blue);color:#fff;z-index:9999;transition:top var(--transition-fast)}.skip-link:focus{top:0}@media(prefers-contrast:high){:root{--border-light: rgba(0, 0, 0, .3);--border-medium: rgba(0, 0, 0, .5)}}html,body,#root{width:100%;height:100%;overflow-x:hidden;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--bg-gray);color:var(--dark-slate);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.canvas-container{position:absolute;top:0;left:0;width:100%;height:100%}.control-panel{position:fixed;top:80px;left:20px;background:#fffffff2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:20px;padding:24px;box-shadow:0 0 0 1px #0000000a,0 8px 32px #00000014,0 2px 8px #0000000a;border:none;width:340px;max-height:calc(100vh - 120px);overflow-y:auto;z-index:100;transition:all .3s cubic-bezier(.16,1,.3,1)}.control-panel:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--primary-blue),var(--accent-cyan));border-radius:20px 20px 0 0}.control-panel:hover{box-shadow:0 0 0 1px #0066ff14,0 12px 40px #0000001f,0 4px 12px #0000000f}.control-panel::-webkit-scrollbar{width:6px}.control-panel::-webkit-scrollbar-track{background:transparent}.control-panel::-webkit-scrollbar-thumb{background:#0000001a;border-radius:3px}.control-panel::-webkit-scrollbar-thumb:hover{background:#0003}.control-panel .panel-header{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);position:relative}.control-panel.collapsed .panel-header{margin-bottom:0}.control-panel .panel-logo{width:44px;height:44px;object-fit:contain;border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.control-panel .panel-logo-fallback{width:44px;height:44px;background:var(--accent-gradient);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff;box-shadow:var(--shadow-md),var(--shadow-glow-blue);letter-spacing:-1px}.control-panel.collapsed .panel-logo,.control-panel.collapsed .panel-logo-fallback{width:36px;height:36px}.control-panel.collapsed .panel-logo-fallback{font-size:16px}.control-panel .panel-titles{flex:1;min-width:0}.control-panel .panel-collapse-btn{background:var(--primary-blue-subtle);border:none;border-radius:var(--radius-sm);width:32px;height:32px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--primary-blue);transition:all var(--transition-base)}.control-panel .panel-collapse-btn:hover{background:var(--primary-blue);color:#fff;transform:scale(1.05)}.control-panel.collapsed{min-width:320px}.control-panel h1{font-size:1.1rem;font-weight:700;background:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:2px;letter-spacing:-.3px}.control-panel .subtitle{font-size:.7rem;color:var(--text-tertiary);margin-bottom:0;font-weight:500;letter-spacing:.2px}.timeline-section{margin-bottom:var(--spacing-lg);padding:var(--spacing-md);background:var(--bg-gray);border-radius:var(--radius-md)}.timeline-section label{display:flex;justify-content:space-between;align-items:center;font-size:.75rem;font-weight:600;margin-bottom:var(--spacing-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.timeline-slider{width:100%;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(to right,var(--primary-blue) 0%,var(--success-green) 40%,var(--safety-orange) 70%,var(--danger-red) 100%);border-radius:var(--radius-full);outline:none;cursor:pointer;transition:height var(--transition-fast)}.timeline-slider:hover{height:8px}.timeline-slider::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:#fff;border:3px solid var(--primary-blue);border-radius:50%;cursor:pointer;box-shadow:var(--shadow-md),var(--shadow-glow-blue);transition:all var(--transition-base)}.timeline-slider::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:var(--shadow-lg),0 0 16px #06f6}.timeline-slider::-moz-range-thumb{width:18px;height:18px;background:#fff;border:3px solid var(--primary-blue);border-radius:50%;cursor:pointer;box-shadow:var(--shadow-md),var(--shadow-glow-blue);transition:all var(--transition-base)}.timeline-slider::-moz-range-thumb:hover{transform:scale(1.15)}.playback-controls{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.playback-btn{flex:1;min-width:110px;padding:14px 20px;border:none;border-radius:var(--radius-md);font-weight:700;cursor:pointer;transition:all var(--transition-base);font-size:.9rem;display:flex;align-items:center;justify-content:center;gap:10px;text-transform:uppercase;letter-spacing:.5px}.playback-btn svg{flex-shrink:0}.speed-selector{padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--border-medium);font-weight:600;font-size:.85rem;cursor:pointer;background:#fff;color:var(--text-primary);transition:all var(--transition-base);min-width:70px}.playback-btn.play{background:var(--success-green);color:#fff;box-shadow:0 4px 12px #00c8534d}.playback-btn.play:hover{background:#00b348;box-shadow:0 6px 16px #00c85366}.playback-btn.pause{background:var(--safety-orange);color:#fff;box-shadow:0 4px 12px #ff8c004d}.playback-btn.pause:hover{background:#e67e00;box-shadow:0 6px 16px #ff8c0066}.playback-btn.reset{background:var(--text-secondary);color:#fff;box-shadow:var(--shadow-sm)}.playback-btn.reset:hover{background:var(--dark-slate);box-shadow:var(--shadow-md)}.playback-btn:hover{transform:translateY(-2px)}.playback-btn:active{transform:translateY(0)}.playback-controls select{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border-medium);font-weight:600;font-size:.8rem;cursor:pointer;background:#fff;color:var(--text-primary);transition:all var(--transition-base);min-width:60px}.playback-controls select:hover{border-color:var(--primary-blue)}.playback-controls select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px var(--primary-blue-subtle)}.mode-toggle{display:flex;gap:2px;background:var(--bg-gray);border-radius:var(--radius-md);padding:3px;margin-bottom:var(--spacing-lg);box-shadow:inset 0 1px 3px #0000000f}.mode-btn{flex:1;padding:10px 12px;border:none;border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;cursor:pointer;transition:all var(--transition-base);background:transparent;color:var(--text-secondary);position:relative;z-index:1}.mode-btn:hover:not(.active){color:var(--text-primary);background:#ffffff80}.mode-btn.active{background:#fff;color:var(--primary-blue);box-shadow:var(--shadow-sm)}.sensor-stats{background:#fff;border-radius:var(--radius-md);padding:var(--spacing-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-xs);margin-bottom:var(--spacing-md)}.sensor-stats h3{font-size:.75rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);gap:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light);flex-wrap:wrap}.stats-header h3{margin-bottom:0;flex-shrink:0;border-bottom:none;padding-bottom:0}.structure-selector{padding:6px 10px;border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;cursor:pointer;background:var(--bg-gray);color:var(--text-primary);min-width:0;flex:1;max-width:140px;transition:all var(--transition-base)}.structure-selector:hover{border-color:var(--primary-blue-light)}.structure-selector:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px var(--primary-blue-subtle)}.stat-row{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px solid var(--border-light)}.stat-row:last-child{border-bottom:none;padding-bottom:0}.stat-label{font-size:.8rem;color:var(--text-secondary);font-weight:500}.stat-value{font-size:.9rem;font-weight:700;font-variant-numeric:tabular-nums}.stat-value.pressure{color:var(--primary-blue)}.stat-value.temperature{color:var(--safety-orange)}.stat-value.humidity{color:var(--success-green)}.legend{position:absolute;bottom:16px;left:16px;background:var(--glass-bg-strong);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-lg);border:1px solid var(--glass-border);z-index:100;transition:all var(--transition-smooth)}.legend:hover{box-shadow:var(--glass-shadow-hover)}.legend h4{font-size:.7rem;color:var(--text-secondary);margin-bottom:var(--spacing-sm);text-transform:uppercase;letter-spacing:.5px;font-weight:600}.legend-gradient{width:200px;height:8px;border-radius:var(--radius-full);margin-bottom:var(--spacing-xs);box-shadow:inset 0 1px 2px #0000001a}.legend-gradient.pressure{background:linear-gradient(to right,var(--primary-blue) 0%,var(--success-green) 35%,var(--warning-amber) 65%,var(--danger-red) 100%)}.legend-gradient.temperature{background:linear-gradient(to right,var(--primary-blue) 0%,var(--success-green) 35%,var(--safety-orange) 65%,var(--danger-red) 100%)}.legend-gradient.humidity{background:linear-gradient(to right,var(--danger-red) 0%,var(--warning-amber) 25%,var(--success-green) 50%,var(--warning-amber) 75%,var(--danger-red) 100%)}.legend-labels{display:flex;justify-content:space-between;font-size:.65rem;color:var(--text-tertiary);font-weight:500}.offline-indicator{position:fixed;top:20px;right:20px;background:#fffffffa;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color:var(--success-green);padding:12px 18px;border-radius:14px;font-size:.8rem;font-weight:600;display:flex;align-items:center;gap:10px;z-index:100;border:1px solid rgba(0,0,0,.06);box-shadow:0 0 0 1px #00000005,0 4px 16px #00000014;transition:box-shadow .2s ease}.offline-indicator:hover{box-shadow:0 0 0 1px #0066ff1a,0 8px 24px #0000001f}.offline-indicator.offline{color:var(--safety-orange)}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success-green);box-shadow:0 0 8px var(--success-green);animation:pulse-glow 2s ease-in-out infinite}.offline-indicator.offline .status-dot{background:var(--safety-orange);box-shadow:0 0 8px var(--safety-orange);animation:pulse-glow-orange 2s ease-in-out infinite}@keyframes pulse-glow{0%,to{opacity:1;box-shadow:0 0 8px var(--success-green)}50%{opacity:.7;box-shadow:0 0 16px var(--success-green)}}@keyframes pulse-glow-orange{0%,to{opacity:1;box-shadow:0 0 8px var(--safety-orange)}50%{opacity:.7;box-shadow:0 0 16px var(--safety-orange)}}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--bg-gray);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000}.loading-spinner{width:48px;height:48px;border:4px solid #ddd;border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite}.loading-text{margin-top:16px;color:var(--dark-slate);font-weight:600}.introduction{width:100%;height:100%;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);color:#fff;display:flex;flex-direction:column;overflow:hidden}.intro-header{text-align:center;padding:var(--space-lg) var(--space-xl) var(--space-md);position:relative;z-index:1}.header-top{display:flex;justify-content:flex-end;align-items:center;margin-bottom:var(--space-sm);padding:0 var(--space-md)}.brand-logo{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md)}.heliport-logo{height:40px;width:auto}.heliport-logo .logo-text{font-family:Segoe UI,system-ui,sans-serif;font-size:28px;font-weight:800;fill:#fff;letter-spacing:4px}.brand-tagline{font-size:var(--text-xs);color:#ffffff80;text-transform:uppercase;letter-spacing:2px;font-weight:500}.intro-header h1{display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);margin-bottom:var(--space-md)}.intro-header h1 .title-main{font-size:clamp(var(--text-3xl),5vw,var(--text-5xl));font-weight:700;background:linear-gradient(135deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em;line-height:var(--leading-tight)}.intro-header h1 .title-sub{font-size:clamp(var(--text-xl),3vw,var(--text-3xl));font-weight:300;color:#ffffffd9;letter-spacing:.05em}.intro-header .tagline{font-size:clamp(var(--text-sm),2vw,var(--text-lg));color:#ffffffa6;font-weight:400;max-width:600px;margin:0 auto;line-height:var(--leading-relaxed)}.intro-nav{display:flex;justify-content:center;gap:var(--space-sm);padding:0 var(--space-xl);margin-bottom:var(--space-lg)}.nav-btn{display:flex;flex-direction:column;align-items:center;min-height:var(--min-touch-target);min-width:120px;padding:var(--space-sm) var(--space-lg);background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-smooth);color:#fff9;position:relative;overflow:hidden}.nav-btn:hover{background:#ffffff1a;border-color:#fff3;transform:translateY(-2px)}.nav-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.nav-btn.active{background:linear-gradient(135deg,#00d9ff33,#0f83);border-color:#00d9ff80;color:#fff;box-shadow:0 4px 20px #00d9ff40}.nav-number{font-size:var(--text-xs);font-weight:600;opacity:.7;margin-bottom:2px}.nav-label{font-size:var(--text-sm);font-weight:600}.intro-content{flex:1;padding:0 var(--space-xl);overflow-y:auto;min-height:0;position:relative;z-index:1}.intro-content::-webkit-scrollbar{width:6px}.intro-content::-webkit-scrollbar-track{background:#ffffff0d;border-radius:3px}.intro-content::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.intro-content::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.section{max-width:1100px;margin:0 auto;animation:fadeIn .4s ease-out;padding-bottom:var(--space-lg)}.section-subtitle{text-align:center;font-size:var(--text-sm);color:#fff9;margin-bottom:var(--space-xl);max-width:600px;margin-left:auto;margin-right:auto;line-height:var(--leading-relaxed)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section-icon{width:44px;height:44px;margin:0 auto 10px;background:linear-gradient(135deg,#00d9ff33,#0f83);border-radius:12px;display:flex;align-items:center;justify-content:center}.section-icon svg{width:24px;height:24px;color:#00d9ff}.section-icon.esg svg{color:#0f8}.section h2{text-align:center;font-size:1.3rem;margin-bottom:12px;font-weight:600}.challenge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.challenge-card{background:#ffffff0d;border-radius:var(--radius-md);padding:var(--space-lg);border-left:3px solid;transition:all var(--transition-smooth);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.challenge-card .card-icon{width:40px;height:40px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-sm)}.challenge-card .card-icon svg{width:20px;height:20px}.challenge-card.critical{border-left-color:#e74c3c}.challenge-card.critical .card-icon{background:#e74c3c33;color:#e74c3c}.challenge-card.warning{border-left-color:#ff8c00}.challenge-card.warning .card-icon{background:#ff8c0033;color:#ff8c00}.challenge-card.info{border-left-color:#2e86de}.challenge-card.info .card-icon{background:#2e86de33;color:#2e86de}.challenge-card.dark{border-left-color:#00d9ff}.challenge-card.dark .card-icon{background:#00d9ff33;color:#00d9ff}.card-header{margin-bottom:12px}.card-header .stat{font-size:2rem;font-weight:700;display:block;background:linear-gradient(135deg,#00d9ff,#0f8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.card-header .context{font-size:.8rem;color:#ffffff80}.challenge-card h3{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-sm);color:#fff}.challenge-card p{font-size:var(--text-sm);line-height:var(--leading-relaxed);color:#ffffffbf}.pain-points{background:#ffffff08;border-radius:12px;padding:20px}.pain-points h3{font-size:1rem;margin-bottom:16px;color:#ffffffe6}.pain-points ul{list-style:none}.pain-points li{position:relative;padding-left:20px;margin-bottom:12px;font-size:.9rem;line-height:1.5;color:#ffffffb3}.pain-points li:before{content:"";position:absolute;left:0;top:8px;width:6px;height:6px;background:#ff8c00;border-radius:50%}.pain-points li strong{color:#fff}.proof-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-bottom:28px}.proof-card{background:#ffffff0d;border-radius:12px;padding:20px;position:relative}.proof-number{position:absolute;top:12px;right:12px;font-size:1.5rem;font-weight:700;color:#00d9ff4d}.proof-card h3{font-size:1rem;margin-bottom:10px;color:#fff}.proof-card p{font-size:.85rem;line-height:1.5;color:#ffffffb3;margin-bottom:16px}.proof-visual{margin-top:auto}.heatmap-demo{position:relative}.gradient-bar{height:12px;border-radius:6px;background:linear-gradient(to right,#06f,#0f6,#ff0,#f30);margin-bottom:4px}.heatmap-demo span{font-size:.7rem;color:#ffffff80}.heatmap-demo span:last-child{float:right}.alert-demo{display:flex;flex-direction:column;gap:6px}.alert-item{padding:6px 10px;border-radius:6px;font-size:.75rem;font-weight:600}.alert-item.p0{background:#e74c3c4d;border-left:3px solid #E74C3C}.alert-item.p1{background:#ff8c004d;border-left:3px solid #FF8C00}.alert-item.p2{background:#2e86de4d;border-left:3px solid #2E86DE}.timeline-demo{padding:10px 0}.timeline-bar{height:8px;background:#ffffff1a;border-radius:4px;position:relative}.timeline-progress{height:100%;background:linear-gradient(90deg,#2e86de,#27ae60);border-radius:4px}.timeline-marker{position:absolute;top:-24px;transform:translate(-50%)}.timeline-marker.safe span{background:#27ae60;color:#fff;padding:4px 8px;border-radius:4px;font-size:.7rem;white-space:nowrap}.offline-demo{display:flex;align-items:center;gap:10px;padding:10px;background:#27ae6033;border-radius:8px}.signal-icon{width:24px;height:24px}.signal-icon svg{width:100%;height:100%;fill:#27ae60}.offline-demo span{font-size:.8rem;color:#27ae60;font-weight:600}.tech-stack{background:#ffffff08;border-radius:12px;padding:16px;text-align:center}.tech-stack h3{font-size:.9rem;margin-bottom:12px;color:#ffffffb3}.tech-items{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}.tech-badge{padding:6px 12px;background:#00d9ff1a;border:1px solid rgba(0,217,255,.3);border-radius:20px;font-size:.75rem;color:#00d9ff}.esg-pillars{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-md);margin-bottom:var(--space-xl)}@media(max-width:1024px){.esg-pillars{grid-template-columns:repeat(2,1fr)}.esg-pillar:last-child{grid-column:span 2;max-width:50%;justify-self:center}}@media(max-width:640px){.esg-pillars{grid-template-columns:1fr}.esg-pillar:last-child{grid-column:span 1;max-width:100%}}.esg-pillar{background:#ffffff0d;border-radius:var(--radius-md);overflow:hidden;transition:all var(--transition-smooth);border:1px solid transparent;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.esg-pillar:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d;border-color:#ffffff1a}.pillar-header{display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md) var(--space-md)}.pillar-letter{width:36px;height:36px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:var(--text-lg);font-weight:700;flex-shrink:0}.environmental .pillar-letter{background:#27ae6033;color:#27ae60}.social .pillar-letter{background:#2e86de33;color:#2e86de}.governance .pillar-letter{background:#8e44ad33;color:#9b59b6}.pillar-header h3{font-size:var(--text-base);font-weight:600;color:#fff}.pillar-content{padding:0 var(--space-md) var(--space-md)}.impact-stat{background:#0003;border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-sm);text-align:center}.stat-number{font-size:var(--text-2xl);font-weight:700;display:block;line-height:var(--leading-tight)}.environmental .stat-number{color:#27ae60}.social .stat-number{color:#2e86de}.governance .stat-number{color:#9b59b6}.impact-stat .stat-label{font-size:.75rem;color:#fff9}.pillar-content ul{list-style:none}.pillar-content li{font-size:.7rem;line-height:1.4;color:#ffffffb3;margin-bottom:4px;padding-left:12px;position:relative}.pillar-content li:before{content:">";position:absolute;left:0;color:#ffffff4d}.pillar-content li strong{color:#fff}.pillar-content p{font-size:.7rem;line-height:1.4;color:#ffffffb3}.sdg-alignment{background:#ffffff08;border-radius:12px;padding:20px;margin-bottom:20px}.sdg-alignment h3{font-size:.9rem;color:#ffffffb3;text-align:center;margin-bottom:16px}.sdg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}.sdg-item{display:flex;align-items:center;gap:12px;padding:10px;background:#ffffff0d;border-radius:8px}.sdg-number{width:36px;height:36px;background:linear-gradient(135deg,#00d9ff,#0f8);border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;color:#1a1a2e}.sdg-name{font-size:.8rem;color:#fffc}.cta-section{text-align:center;padding:20px 0}.cta-text{font-size:.95rem;color:#fffc;line-height:1.6;max-width:600px;margin:0 auto}.intro-disclaimer{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;background:#f1c40f26;border:1px solid rgba(241,196,15,.3);border-radius:8px;margin:0 24px 12px;color:#f39c12;font-size:.85rem;font-weight:500}.intro-disclaimer svg{flex-shrink:0;stroke:#f39c12}.intro-footer{padding:var(--space-md) var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-md);flex-shrink:0;position:relative;z-index:1;background:linear-gradient(to top,rgba(10,15,28,.8) 0%,transparent 100%)}.footer-buttons{display:flex;gap:var(--space-md);flex-wrap:wrap;justify-content:center}.next-btn,.enter-btn{min-height:var(--min-touch-target);padding:var(--space-sm) var(--space-xl);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:600;cursor:pointer;transition:all var(--transition-smooth);display:flex;align-items:center;gap:var(--space-sm)}.next-btn:focus-visible,.enter-btn:focus-visible{outline:none;box-shadow:var(--focus-ring)}.next-btn{background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2)}.next-btn:hover{background:#ffffff26;border-color:#ffffff4d;transform:translateY(-2px)}.enter-btn{background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;box-shadow:0 4px 20px #00d9ff4d}.enter-btn:hover{transform:scale(1.05);box-shadow:0 8px 30px #00d9ff66}.arrow{font-size:var(--text-lg);transition:transform var(--transition-fast)}.next-btn:hover .arrow,.enter-btn:hover .arrow{transform:translate(4px)}.progress-dots{display:flex;gap:var(--space-sm);padding:var(--space-xs) 0}.dot{width:10px;height:10px;padding:0;border:none;border-radius:var(--radius-full);background:#fff3;transition:all var(--transition-smooth);cursor:pointer}.dot:hover{background:#fff6}.dot:focus-visible{outline:none;box-shadow:0 0 0 2px #00d9ffcc}.dot.active{background:#00d9ff;transform:scale(1.3);box-shadow:0 0 10px #00d9ff80}.dot.completed{background:#0f8}.footer-brand{font-size:var(--text-sm);color:#ffffff80}.footer-brand a{color:#ffffffb3;text-decoration:none;transition:color var(--transition-fast)}.footer-brand a:hover{color:#00d9ff}.back-to-intro{position:fixed;bottom:20px;right:20px;width:48px;height:48px;border-radius:14px;background:#fffffffa;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(0,0,0,.06);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px #00000005,0 4px 16px #00000014;transition:box-shadow .2s ease,background .2s ease;z-index:100}.back-to-intro:hover{box-shadow:0 0 0 1px #0066ff26,0 8px 24px #0066ff26;background:var(--primary-blue)}.back-to-intro:active{transform:translateY(0)}.back-to-intro svg{width:22px;height:22px;color:var(--primary-blue);transition:all var(--transition-base)}.back-to-intro:hover svg{color:#fff}@media(max-width:1200px){.challenge-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:1024px){.intro-header{padding:var(--space-md) var(--space-lg) var(--space-sm)}.challenge-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.intro-header{padding:var(--space-md) var(--space-md) var(--space-sm)}.brand-logo{margin-bottom:var(--space-sm)}.heliport-logo{height:32px}.intro-content{padding:0 var(--space-md)}.intro-nav{padding:0 var(--space-md);gap:var(--space-xs)}.nav-btn{min-width:100px;padding:var(--space-xs) var(--space-md)}.challenge-grid,.proof-grid,.esg-pillars{grid-template-columns:1fr;gap:var(--space-sm)}.esg-pillar:last-child{grid-column:span 1;max-width:100%}.sdg-grid{grid-template-columns:1fr}.intro-footer{padding:var(--space-sm) var(--space-md)}.footer-buttons{width:100%;flex-direction:column}.next-btn,.enter-btn{width:100%;justify-content:center}}@media(max-width:480px){.intro-header{padding:var(--space-sm) var(--space-sm) var(--space-xs)}.heliport-logo{height:28px}.brand-tagline{font-size:10px;letter-spacing:1px}.intro-nav{flex-wrap:wrap;justify-content:center}.nav-btn{flex:1 1 auto;min-width:90px}.section h2{font-size:var(--text-lg)}.section-icon{width:36px;height:36px}.section-icon svg{width:18px;height:18px}.challenge-card{padding:var(--space-md)}.challenge-card h3{font-size:var(--text-sm)}.challenge-card p{font-size:var(--text-xs)}.pillar-letter{width:32px;height:32px;font-size:var(--text-base)}.intro-disclaimer{margin:0 var(--space-sm) var(--space-sm);font-size:var(--text-xs);padding:var(--space-xs) var(--space-sm)}}.alert-indicator{position:fixed;top:20px;right:140px;width:48px;height:48px;border-radius:14px;background:#fffffffa;border:1px solid rgba(0,0,0,.06);cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px #00000005,0 4px 16px #00000014;transition:box-shadow .2s ease;z-index:100}.alert-indicator:hover{box-shadow:0 0 0 1px #0066ff1a,0 8px 24px #0000001f}.alert-indicator svg{width:24px;height:24px;color:var(--dark-slate)}.alert-indicator.warning{background:var(--safety-orange)}.alert-indicator.warning svg{color:#fff}.alert-indicator.critical{background:var(--danger-red);animation:pulse-critical 1s infinite}.alert-indicator.critical svg{color:#fff}@keyframes pulse-critical{0%,to{box-shadow:0 0 #e74c3cb3}50%{box-shadow:0 0 0 10px #e74c3c00}}.alert-count{position:absolute;top:-4px;right:-4px;min-width:20px;height:20px;background:var(--danger-red);color:#fff;font-size:.7rem;font-weight:700;border-radius:10px;display:flex;align-items:center;justify-content:center;padding:0 4px}.pulse-ring{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;border:2px solid var(--danger-red);border-radius:50%;animation:pulse-ring 1.5s infinite}@keyframes pulse-ring{0%{transform:translate(-50%,-50%) scale(1);opacity:1}to{transform:translate(-50%,-50%) scale(1.5);opacity:0}}.alert-dashboard-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.alert-dashboard{width:90%;max-width:900px;max-height:85vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.dashboard-header{display:flex;align-items:center;padding:20px 24px;background:linear-gradient(135deg,var(--dark-slate) 0%,#1a252f 100%);color:#fff}.header-title h2{font-size:1.3rem;margin-bottom:2px}.header-title .subtitle{font-size:.8rem;opacity:.7}.header-stats{display:flex;gap:12px;margin-left:auto;margin-right:20px}.stat-badge{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:#ffffff1a;border-radius:8px;min-width:70px}.stat-badge.critical{background:#e74c3c4d;border:1px solid var(--danger-red)}.stat-badge.warning{background:#ff8c004d;border:1px solid var(--safety-orange)}.badge-value{font-size:1.5rem;font-weight:700}.badge-label{font-size:.7rem;opacity:.8}.close-btn{width:40px;height:40px;min-width:40px;border:none;background:#ffffff1a;border-radius:10px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0}.close-btn:hover{background:var(--danger-red);transform:scale(1.05)}.close-btn svg{width:20px;height:20px;color:#fff}.dashboard-tabs{display:flex;background:#f5f6fa;border-bottom:1px solid #e0e0e0}.tab-btn{flex:1;padding:14px 20px;background:none;border:none;font-size:.9rem;font-weight:600;color:#666;cursor:pointer;position:relative;display:flex;align-items:center;justify-content:center;gap:8px;transition:all .2s}.tab-btn:hover{color:var(--dark-slate);background:#00000008}.tab-btn.active{color:var(--primary-blue);background:#fff}.tab-btn.active:after{content:"";position:absolute;bottom:-1px;left:0;right:0;height:3px;background:var(--primary-blue)}.tab-badge{background:var(--danger-red);color:#fff;font-size:.7rem;padding:2px 6px;border-radius:10px;min-width:20px;text-align:center}.dashboard-toolbar{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;background:#fafafa;border-bottom:1px solid #e0e0e0}.filter-group{display:flex;align-items:center;gap:10px}.filter-group label{font-size:.85rem;color:#666}.filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.85rem;cursor:pointer}.toolbar-actions{display:flex;gap:8px}.sound-toggle{width:36px;height:36px;border:1px solid #ddd;background:#fff;border-radius:6px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.sound-toggle svg{width:20px;height:20px;color:#999}.sound-toggle.enabled svg{color:var(--primary-blue)}.clear-btn{padding:8px 16px;background:#f0f0f0;border:1px solid #ddd;border-radius:6px;font-size:.85rem;cursor:pointer;transition:all .2s}.clear-btn:hover{background:#e0e0e0}.dashboard-content{flex:1;overflow-y:auto;padding:16px 20px;background:#f5f6fa}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{width:64px;height:64px;margin-bottom:16px;color:var(--success-green)}.empty-icon svg{width:100%;height:100%}.empty-state h3{font-size:1.2rem;color:var(--dark-slate);margin-bottom:8px}.empty-state p{font-size:.9rem;color:#888}.alert-list{display:flex;flex-direction:column;gap:10px}.alert-card{display:flex;align-items:stretch;background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 2px 8px #00000014;transition:all .2s}.alert-card:hover{box-shadow:0 4px 16px #0000001f}.alert-card.acknowledged{opacity:.7}.alert-card.resolved{opacity:.5}.alert-priority{width:50px;display:flex;align-items:center;justify-content:center;background:#f0f0f0}.alert-card.critical .alert-priority{background:var(--danger-red)}.alert-card.severe .alert-priority{background:#c0392b}.alert-card.warning .alert-priority{background:var(--safety-orange)}.alert-card.advisory .alert-priority{background:#3498db}.alert-card.info .alert-priority{background:#95a5a6}.priority-badge{color:#fff;font-weight:700;font-size:.85rem}.alert-icon{width:50px;display:flex;align-items:center;justify-content:center;background:#f8f9fa}.alert-icon svg{width:24px;height:24px;color:#666}.alert-card.critical .alert-icon svg{color:var(--danger-red)}.alert-card.severe .alert-icon svg{color:#c0392b}.alert-card.warning .alert-icon svg{color:var(--safety-orange)}.alert-content{flex:1;padding:12px 16px}.alert-header{display:flex;align-items:center;gap:10px;margin-bottom:4px}.alert-header h4{font-size:.95rem;color:var(--dark-slate)}.sensor-id{font-size:.75rem;color:#888;padding:2px 6px;background:#f0f0f0;border-radius:4px}.alert-message{font-size:.85rem;color:#666;margin-bottom:6px}.alert-details{display:flex;gap:16px;font-size:.8rem}.alert-details .value{color:var(--dark-slate)}.alert-details .threshold{color:#999}.alert-meta{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;padding:12px 16px;min-width:140px;background:#fafafa}.timestamp{font-size:.75rem;color:#888}.alert-actions{display:flex;gap:6px}.action-btn{padding:6px 12px;border:none;border-radius:4px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.action-btn.acknowledge{background:#f0f0f0;color:#666}.action-btn.acknowledge:hover{background:#e0e0e0}.action-btn.resolve{background:var(--success-green);color:#fff}.action-btn.resolve:hover{background:#219a52}.resolved-badge{font-size:.75rem;color:var(--success-green);font-weight:600}.threshold-config{display:flex;flex-direction:column;gap:20px}.threshold-section{background:#fff;border-radius:10px;padding:16px 20px;box-shadow:0 2px 8px #0000000f}.threshold-section h3{display:flex;align-items:center;gap:10px;font-size:1rem;color:var(--dark-slate);margin-bottom:12px}.section-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center}.section-icon svg{width:18px;height:18px;color:#fff}.section-icon.pressure{background:var(--primary-blue)}.section-icon.temperature{background:var(--safety-orange)}.section-icon.humidity{background:var(--success-green)}.section-icon.gradient{background:#9b59b6}.threshold-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.threshold-item{display:flex;flex-direction:column;padding:10px 14px;background:#f8f9fa;border-radius:8px;border-left:4px solid}.threshold-item.p0{border-left-color:var(--danger-red)}.threshold-item.p1{border-left-color:#c0392b}.threshold-item.p2{border-left-color:var(--safety-orange)}.threshold-item.p3{border-left-color:#3498db}.priority-label{font-size:.7rem;font-weight:700;color:#888;margin-bottom:2px}.threshold-value{font-size:1rem;font-weight:700;color:var(--dark-slate);margin-bottom:2px}.threshold-label{font-size:.75rem;color:#666}.threshold-info{background:#fff;border-radius:10px;padding:16px 20px;box-shadow:0 2px 8px #0000000f}.threshold-info h4{font-size:.95rem;color:var(--dark-slate);margin-bottom:12px}.threshold-info ul{list-style:none}.threshold-info li{font-size:.85rem;color:#666;margin-bottom:8px;padding-left:12px;position:relative}.threshold-info li:before{content:"";position:absolute;left:0;top:8px;width:4px;height:4px;background:var(--primary-blue);border-radius:50%}.threshold-info li strong{color:var(--dark-slate)}.dashboard-footer{padding:12px 20px;background:#f5f6fa;border-top:1px solid #e0e0e0}.footer-info{display:flex;align-items:center;justify-content:center;gap:12px;font-size:.8rem;color:#888}.separator{color:#ddd}@media(max-width:768px){.alert-dashboard{width:100%;max-height:100%;border-radius:0}.dashboard-header{flex-wrap:wrap;gap:12px}.header-stats{margin-left:0;width:100%;justify-content:center}.alert-card{flex-wrap:wrap}.alert-meta{width:100%;flex-direction:row;padding:10px 16px}.threshold-grid{grid-template-columns:1fr 1fr}}.sensor-tooltip{position:fixed;z-index:1000;background:#fffffffa;border-radius:12px;box-shadow:0 8px 32px #0003;min-width:260px;overflow:hidden;pointer-events:none;animation:tooltipFadeIn .15s ease-out;border:1px solid rgba(0,0,0,.1)}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}.sensor-tooltip.critical{border-color:var(--danger-red);box-shadow:0 8px 32px #e74c3c4d}.sensor-tooltip.severe{border-color:#c0392b;box-shadow:0 8px 32px #c0392b40}.sensor-tooltip.warning{border-color:var(--safety-orange);box-shadow:0 8px 32px #ff8c0033}.tooltip-header{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:var(--dark-slate);color:#fff}.sensor-tooltip.critical .tooltip-header{background:linear-gradient(135deg,#c0392b,#e74c3c)}.sensor-tooltip.severe .tooltip-header{background:linear-gradient(135deg,#d35400,#e67e22)}.sensor-tooltip.warning .tooltip-header{background:linear-gradient(135deg,#f39c12,#f1c40f)}.sensor-name{font-weight:700;font-size:.95rem}.status-badge{font-size:.7rem;font-weight:700;padding:3px 8px;border-radius:4px;background:#fff3}.status-badge.normal{background:var(--success-green)}.status-badge.warning{background:#0003}.status-badge.severe,.status-badge.critical{background:#0000004d;animation:statusPulse 1s infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.7}}.tooltip-location{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#f8f9fa;font-size:.75rem;color:#666;border-bottom:1px solid #eee}.tooltip-location svg{color:var(--primary-blue)}.tooltip-metrics{padding:10px 14px}.metric-row{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid #f0f0f0}.metric-row:last-child{border-bottom:none}.metric-row.warning{background:#ff8c0014;margin:0 -14px;padding:8px 14px}.metric-row.severe{background:#c0392b14;margin:0 -14px;padding:8px 14px}.metric-row.critical{background:#e74c3c1f;margin:0 -14px;padding:8px 14px}.metric-icon{width:28px;height:28px;border-radius:6px;display:flex;align-items:center;justify-content:center}.metric-icon svg{width:16px;height:16px;color:#fff}.metric-icon.pressure{background:var(--primary-blue)}.metric-icon.temperature{background:var(--safety-orange)}.metric-icon.humidity{background:var(--success-green)}.metric-info{flex:1}.metric-label{display:block;font-size:.7rem;color:#888;margin-bottom:2px}.metric-value{font-size:.95rem;font-weight:700;color:var(--dark-slate)}.metric-status{font-size:.65rem;font-weight:700;padding:2px 6px;border-radius:3px;background:#e8e8e8;color:#666}.metric-status.normal{background:#27ae6026;color:var(--success-green)}.metric-status.elevated{background:#3498db26;color:#3498db}.metric-status.warning{background:#ff8c0026;color:#e67e22}.metric-status.severe{background:#c0392b26;color:#c0392b}.metric-status.critical{background:#e74c3c33;color:var(--danger-red);animation:statusPulse .5s infinite}.tooltip-footer{display:flex;justify-content:space-between;padding:8px 14px;background:#f8f9fa;border-top:1px solid #eee}.footer-item{display:flex;align-items:center;gap:4px;font-size:.7rem;color:#888}.footer-item svg{color:#aaa}.tooltip-warning{padding:8px 14px;font-size:.75rem;font-weight:600;text-align:center;color:#fff}.tooltip-warning.warning{background:linear-gradient(135deg,#f39c12,#f1c40f)}.tooltip-warning.severe{background:linear-gradient(135deg,#d35400,#e67e22)}.tooltip-warning.critical{background:linear-gradient(135deg,#c0392b,#e74c3c);animation:warningPulse 1s infinite}@keyframes warningPulse{0%,to{opacity:1}50%{opacity:.85}}.sensor-label{background:#000000bf;color:#fff;padding:4px 8px;border-radius:4px;font-size:.7rem;font-weight:600;font-family:Segoe UI,sans-serif;white-space:nowrap;pointer-events:none}.sensor-label-mini{background:#0009;color:#fff;padding:2px 6px;border-radius:10px;font-size:.6rem;font-weight:700;font-family:Segoe UI,sans-serif;white-space:nowrap;pointer-events:none;min-width:18px;text-align:center;transition:all .2s ease}.sensor-label-mini.expanded{background:#00d9ffe6;padding:4px 8px;font-size:.7rem}.critical-indicator{width:24px;height:24px;background:var(--danger-red);border-radius:50%;display:flex;align-items:center;justify-content:center;animation:criticalBounce .5s infinite;box-shadow:0 2px 8px #e74c3c80}.critical-indicator span{color:#fff;font-size:14px;font-weight:700;font-family:Segoe UI,sans-serif}@keyframes criticalBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.anomaly-count{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--danger-red);color:#fff;border-radius:12px;font-size:.75rem;font-weight:700;margin-left:8px}.anomaly-count.warning{background:var(--safety-orange)}.anomaly-count.none{background:var(--success-green)}.scenario-indicator{position:fixed;bottom:20px;left:380px;display:flex;align-items:center;gap:12px;padding:12px 20px;background:#fffffffa;border:2px solid;border-radius:16px;cursor:pointer;transition:box-shadow .2s ease;z-index:100;box-shadow:0 0 0 1px #00000005,0 4px 16px #0000001a}.scenario-indicator:hover{box-shadow:0 0 0 1px #0066ff1a,0 8px 24px #00000026}.scenario-indicator.green{border-color:var(--success-green)}.scenario-indicator.orange{border-color:var(--safety-orange)}.scenario-indicator.yellow{border-color:#f1c40f}.scenario-indicator.blue{border-color:var(--primary-blue)}.scenario-indicator.purple{border-color:#9b59b6}.scenario-indicator.gray{border-color:#95a5a6}.indicator-content{display:flex;flex-direction:column}.indicator-label{font-size:.65rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.indicator-name{font-size:.9rem;font-weight:700;color:var(--dark-slate)}.indicator-params{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#666;padding:4px 10px;background:#f5f5f5;border-radius:6px}.indicator-params .separator{color:#ccc}.indicator-arrow{width:16px;height:16px;color:#888}.scenario-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.scenario-modal{width:90%;max-width:900px;max-height:90vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.scenario-header{position:relative;padding:24px;background:linear-gradient(135deg,var(--dark-slate) 0%,#1a252f 100%);color:#fff}.scenario-header h2{font-size:1.4rem;margin-bottom:4px}.scenario-header p{font-size:.85rem;opacity:.7}.scenario-header .close-btn{position:absolute;top:20px;right:20px;width:36px;height:36px;border:none;background:#ffffff1a;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.scenario-header .close-btn:hover{background:#fff3}.scenario-header .close-btn svg{width:20px;height:20px;color:#fff}.scenario-content{flex:1;overflow-y:auto;padding:20px;background:#f5f6fa}.scenario-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-bottom:20px}.scenario-card{background:#fff;border-radius:12px;padding:16px;cursor:pointer;border:2px solid transparent;transition:all .2s;position:relative;box-shadow:0 2px 8px #0000000f}.scenario-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.scenario-card.selected{border-color:var(--primary-blue);box-shadow:0 6px 20px #2e86de33}.scenario-card.green .card-icon{background:#27ae6026;color:var(--success-green)}.scenario-card.orange .card-icon{background:#ff8c0026;color:var(--safety-orange)}.scenario-card.yellow .card-icon{background:#f1c40f26;color:#f39c12}.scenario-card.blue .card-icon{background:#2e86de26;color:var(--primary-blue)}.scenario-card.purple .card-icon{background:#9b59b626;color:#9b59b6}.scenario-card.gray .card-icon{background:#95a5a626;color:#7f8c8d}.scenario-card.selected.green{border-color:var(--success-green)}.scenario-card.selected.orange{border-color:var(--safety-orange)}.scenario-card.selected.yellow{border-color:#f1c40f}.scenario-card.selected.blue{border-color:var(--primary-blue)}.scenario-card.selected.purple{border-color:#9b59b6}.scenario-card.selected.gray{border-color:#7f8c8d}.card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.card-icon svg{width:22px;height:22px}.scenario-card h4{font-size:.95rem;color:var(--dark-slate);margin-bottom:6px}.scenario-card p{font-size:.75rem;color:#888;line-height:1.4;margin-bottom:12px}.card-params{display:flex;gap:8px}.card-params span{font-size:.7rem;padding:3px 8px;background:#f5f5f5;border-radius:4px;color:#666;font-weight:600}.active-badge{position:absolute;top:12px;right:12px;font-size:.65rem;font-weight:700;padding:3px 8px;background:var(--success-green);color:#fff;border-radius:4px;text-transform:uppercase}.custom-config{background:#fff;border-radius:12px;padding:20px;margin-bottom:20px;box-shadow:0 2px 8px #0000000f}.custom-config h3{font-size:1rem;color:var(--dark-slate);margin-bottom:16px}.config-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.config-field{display:flex;flex-direction:column;gap:8px}.config-field label{font-size:.8rem;font-weight:600;color:#666}.config-field .input-group{display:flex;align-items:center;gap:12px}.config-field input[type=range]{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#e0e0e0;border-radius:3px;outline:none}.config-field input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--primary-blue);border-radius:50%;cursor:pointer}.config-field .value{min-width:60px;font-size:.85rem;font-weight:700;color:var(--dark-slate);text-align:right}.config-field select{padding:10px 12px;border:1px solid #ddd;border-radius:8px;font-size:.85rem;cursor:pointer;background:#fff}.scenario-details{display:grid;grid-template-columns:1fr 1fr;gap:16px}.details-section{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f}.details-section h4{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--dark-slate);margin-bottom:12px}.details-section h4 svg{width:18px;height:18px}.details-section.risks h4{color:var(--safety-orange)}.details-section.recommendations h4{color:var(--success-green)}.details-section ul{list-style:none}.details-section li{font-size:.8rem;color:#666;padding:6px 0 6px 16px;position:relative;border-bottom:1px solid #f5f5f5}.details-section li:last-child{border-bottom:none}.details-section li:before{content:"";position:absolute;left:0;top:12px;width:6px;height:6px;border-radius:50%}.details-section.risks li:before{background:var(--safety-orange)}.details-section.recommendations li:before{background:var(--success-green)}.scenario-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;background:#fff;border-top:1px solid #eee}.cancel-btn{padding:12px 24px;background:#f5f5f5;border:none;border-radius:8px;font-size:.9rem;font-weight:600;color:#666;cursor:pointer;transition:background .2s}.cancel-btn:hover{background:#e8e8e8}.apply-btn{padding:12px 24px;background:var(--primary-blue);border:none;border-radius:8px;font-size:.9rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s}.apply-btn:hover{background:#2573c2;transform:translateY(-1px)}@media(max-width:768px){.scenario-indicator{left:16px;bottom:80px}.scenario-modal{width:100%;max-height:100%;border-radius:0}.scenario-grid,.scenario-details,.config-grid{grid-template-columns:1fr}}.structure-indicator{position:fixed;left:50%;transform:translate(-50%);top:20px;display:flex;align-items:center;gap:12px;padding:12px 20px;background:#fffffffa;border:1px solid rgba(0,0,0,.06);border-radius:16px;cursor:pointer;box-shadow:0 0 0 1px #00000005,0 4px 16px #00000014;transition:box-shadow .2s ease;z-index:100}.structure-indicator:hover{transform:translate(-50%);box-shadow:0 0 0 1px #0066ff1a,0 8px 24px #0000001f}.structure-indicator .indicator-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center}.structure-indicator .indicator-icon svg{width:18px;height:18px}.structure-indicator.site .indicator-icon,.structure-indicator.blue .indicator-icon{background:#2e86de26;color:var(--primary-blue)}.structure-indicator.orange .indicator-icon{background:#ff8c0026;color:var(--safety-orange)}.structure-indicator.yellow .indicator-icon{background:#f1c40f26;color:#f1c40f}.structure-indicator.green .indicator-icon{background:#27ae6026;color:#27ae60}.structure-indicator.purple .indicator-icon{background:#9b59b626;color:#9b59b6}.structure-indicator .indicator-content{display:flex;flex-direction:column;align-items:flex-start}.structure-indicator .indicator-label{font-size:.65rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.structure-indicator .indicator-name{font-size:.85rem;font-weight:600;color:var(--dark-slate)}.structure-indicator .indicator-meta{font-size:.7rem;color:#666;padding:3px 8px;background:#f5f5f5;border-radius:4px}.structure-indicator .indicator-arrow{width:16px;height:16px;color:#888}.structure-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.structure-modal{width:90%;max-width:800px;max-height:90vh;background:#fff;border-radius:16px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0000004d}.structure-header{position:relative;padding:24px;background:linear-gradient(135deg,var(--dark-slate) 0%,#1a252f 100%);color:#fff}.structure-header h2{font-size:1.4rem;margin-bottom:4px}.structure-header p{font-size:.85rem;opacity:.7}.structure-header .close-btn{position:absolute;top:20px;right:20px;width:36px;height:36px;border:none;background:#ffffff1a;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.structure-header .close-btn:hover{background:#fff3}.structure-header .close-btn svg{width:20px;height:20px;color:#fff}.structure-content{flex:1;overflow-y:auto;padding:20px;background:#f5f6fa}.site-overview-btn{display:flex;align-items:center;gap:16px;width:100%;padding:16px;background:#fff;border:2px solid transparent;border-radius:12px;cursor:pointer;margin-bottom:16px;transition:all .2s;box-shadow:0 2px 8px #0000000f;text-align:left}.site-overview-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.site-overview-btn.active{border-color:var(--primary-blue);box-shadow:0 6px 20px #2e86de33}.site-overview-btn .overview-icon{width:48px;height:48px;background:#2e86de26;color:var(--primary-blue);border-radius:12px;display:flex;align-items:center;justify-content:center}.site-overview-btn .overview-icon svg{width:24px;height:24px}.site-overview-btn .overview-info{flex:1;display:flex;flex-direction:column;gap:2px}.site-overview-btn .overview-title{font-size:1rem;font-weight:600;color:var(--dark-slate)}.site-overview-btn .overview-desc{font-size:.8rem;color:#888}.structure-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.structure-card{background:#fff;border-radius:12px;padding:16px;cursor:pointer;border:2px solid transparent;transition:all .2s;position:relative;box-shadow:0 2px 8px #0000000f}.structure-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #0000001a}.structure-card.selected{border-color:var(--primary-blue);box-shadow:0 6px 20px #2e86de33}.structure-card.inactive{opacity:.6}.structure-card.blue .card-icon{background:#2e86de26;color:var(--primary-blue)}.structure-card.orange .card-icon{background:#ff8c0026;color:var(--safety-orange)}.structure-card.yellow .card-icon{background:#f1c40f26;color:#f1c40f}.structure-card.green .card-icon{background:#27ae6026;color:#27ae60}.structure-card.purple .card-icon{background:#9b59b626;color:#9b59b6}.structure-card.selected.blue{border-color:var(--primary-blue)}.structure-card.selected.orange{border-color:var(--safety-orange)}.structure-card.selected.yellow{border-color:#f1c40f}.structure-card.selected.green{border-color:#27ae60}.structure-card.selected.purple{border-color:#9b59b6}.structure-card .card-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;margin-bottom:12px}.structure-card .card-icon svg{width:22px;height:22px}.structure-card .card-info{margin-bottom:12px}.structure-card .card-info h4{font-size:.95rem;color:var(--dark-slate);margin-bottom:2px}.structure-card .structure-type{font-size:.75rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.structure-card .card-details{display:flex;flex-direction:column;gap:6px}.structure-card .detail-row{display:flex;align-items:center;gap:6px;font-size:.75rem;color:#666}.structure-card .detail-row svg{color:#aaa}.structure-card .selected-badge{position:absolute;top:12px;right:12px;font-size:.65rem;font-weight:700;padding:3px 8px;background:var(--primary-blue);color:#fff;border-radius:4px;text-transform:uppercase}.structure-card .inactive-badge{position:absolute;top:12px;right:12px;font-size:.65rem;font-weight:700;padding:3px 8px;background:#95a5a6;color:#fff;border-radius:4px;text-transform:uppercase}.structure-footer{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:#fff;border-top:1px solid #eee}.structure-footer .structure-stats{display:flex;gap:8px;font-size:.8rem;color:#888}.structure-footer .structure-stats .separator{color:#ddd}.structure-footer .close-modal-btn{padding:10px 20px;background:#f5f5f5;border:none;border-radius:8px;font-size:.85rem;font-weight:600;color:#666;cursor:pointer;transition:background .2s}.structure-footer .close-modal-btn:hover{background:#e8e8e8}.sensor-tooltip .tooltip-header .sensor-identity{display:flex;flex-direction:column;gap:2px}.sensor-tooltip .tooltip-header .structure-name{font-size:.7rem;color:#888;font-weight:400}@media(max-width:768px){.structure-indicator{left:50%;transform:translate(-50%);top:16px}.structure-modal{width:100%;max-height:100%;border-radius:0}.structure-grid{grid-template-columns:1fr}}.language-switcher{position:relative;z-index:200}.lang-trigger{display:flex;align-items:center;gap:8px;padding:8px 12px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .2s;color:#fff;font-size:.85rem}.lang-trigger:hover{background:#ffffff26;border-color:#ffffff4d}.lang-flag{font-size:1.1rem}.lang-name{font-weight:500}.lang-arrow{width:14px;height:14px;transition:transform .2s}.lang-arrow.open{transform:rotate(180deg)}.lang-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:#fff;border-radius:12px;box-shadow:0 10px 40px #00000040;overflow:hidden;animation:dropdownFade .2s ease-out}@keyframes dropdownFade{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.lang-header{display:flex;align-items:center;gap:8px;padding:12px 16px;background:var(--dark-slate);color:#fff;font-size:.85rem;font-weight:600}.lang-header svg{width:18px;height:18px}.lang-list{list-style:none;padding:8px}.lang-option{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;background:none;border:none;border-radius:8px;cursor:pointer;transition:background .2s;text-align:left}.lang-option:hover{background:#f5f5f5}.lang-option.active{background:#2e86de1a}.lang-info{display:flex;flex-direction:column;flex:1}.lang-native{font-size:.9rem;font-weight:600;color:var(--dark-slate)}.lang-english{font-size:.75rem;color:#888}.lang-check{width:18px;height:18px;color:var(--primary-blue)}.lang-footer{padding:10px 16px;background:#f5f5f5;border-top:1px solid #eee;text-align:center}.platform-badge{font-size:.7rem;font-weight:700;padding:4px 10px;background:linear-gradient(135deg,#00d9ff,#0f8);color:#1a1a2e;border-radius:12px}.floating-lang-switcher{position:fixed;top:16px;right:180px;z-index:150}.floating-lang-switcher .lang-trigger{background:#fffffff2;border-color:#0000001a;color:var(--dark-slate);box-shadow:0 4px 12px #00000026}.floating-lang-switcher .lang-trigger:hover{background:#fff;box-shadow:0 6px 20px #0003}.language-switcher.minimal{display:flex}.lang-buttons{display:flex;gap:4px;padding:4px;background:#ffffff1a;border-radius:8px}.lang-btn{padding:6px 12px;background:transparent;border:none;border-radius:6px;font-size:.75rem;font-weight:700;color:#fff9;cursor:pointer;transition:all .2s}.lang-btn:hover{color:#fff;background:#ffffff1a}.lang-btn.active{background:#fff3;color:#fff}.header-top{display:flex;justify-content:flex-end;align-items:center;margin-bottom:10px;padding:0 20px}.brand-badge{display:flex;align-items:center}.brand-badge .platform-badge{font-size:.75rem;padding:6px 14px}.header-top .language-switcher{position:relative}.header-top .lang-dropdown{right:0;left:auto;min-width:220px}.brand-logo{display:flex;flex-direction:column;align-items:center;margin-bottom:8px}.heliport-logo{width:140px;height:38px;margin-bottom:2px}.logo-text{font-family:Segoe UI,sans-serif;font-size:26px;font-weight:800;fill:#fff;letter-spacing:2px}.heliport-features{background:#ffffff08;border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-top:var(--space-lg);text-align:center;border:1px solid rgba(255,255,255,.05)}.heliport-features h3{font-size:var(--text-sm);color:#ffffffb3;margin-bottom:var(--space-md);text-transform:uppercase;letter-spacing:.5px}.feature-badges{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-sm)}.feature-badge{padding:var(--space-xs) var(--space-md);background:#00d9ff1a;border:1px solid rgba(0,217,255,.3);border-radius:var(--radius-full);font-size:var(--text-xs);color:#00d9ff;font-weight:500;transition:all var(--transition-fast)}.feature-badge:hover{background:#00d9ff33;border-color:#00d9ff80}body.rtl{direction:rtl;text-align:right}body.rtl .intro-header{text-align:center}body.rtl .header-top,body.rtl .intro-nav{flex-direction:row-reverse}body.rtl .challenge-card{border-left:none;border-right:4px solid}body.rtl .challenge-card.critical{border-right-color:#e74c3c}body.rtl .challenge-card.warning{border-right-color:#ff8c00}body.rtl .challenge-card.info{border-right-color:#2e86de}body.rtl .challenge-card.dark{border-right-color:#95a5a6}body.rtl .pillar-header{flex-direction:row-reverse}body.rtl .pillar-content li{padding-left:0;padding-right:16px}body.rtl .pillar-content li:before{left:auto;right:0}body.rtl .control-panel,body.rtl .legend{left:auto;right:16px}body.rtl .offline-indicator{left:16px;right:auto}body.rtl .floating-lang-switcher{right:auto;left:180px}body.rtl .back-to-intro{left:16px;right:auto}body.rtl .alert-indicator{left:120px;right:auto}body.rtl .alert-card{flex-direction:row-reverse}body.rtl .alert-priority,body.rtl .alert-icon{order:1}body.rtl .alert-content{text-align:right}body.rtl .alert-meta{align-items:flex-start}body.rtl .details-section li{padding-left:0;padding-right:16px}body.rtl .details-section li:before{left:auto;right:0}body.rtl .threshold-item{border-left:none;border-right:4px solid}body.rtl .threshold-item.p0{border-right-color:var(--danger-red)}body.rtl .threshold-item.p1{border-right-color:#c0392b}body.rtl .threshold-item.p2{border-right-color:var(--safety-orange)}body.rtl .threshold-item.p3{border-right-color:#3498db}body.rtl .lang-dropdown{right:auto;left:0}body.rtl .lang-option{flex-direction:row-reverse;text-align:right}body.rtl .scenario-indicator{left:auto;right:350px}body.rtl .indicator-params .separator{margin:0 4px}body.rtl .scenario-footer{flex-direction:row-reverse}body.rtl .heatmap-demo span:last-child{float:left}@media(max-width:768px){body.rtl .scenario-indicator{right:16px;left:auto}body.rtl .floating-lang-switcher{left:16px;right:auto}}.analytics-section{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-light)}.analytics-section h3{font-size:.75rem;color:var(--text-secondary);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.analytics-buttons{display:flex;flex-direction:column;gap:8px}.analytics-btn{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fff;border:1px solid var(--border-light);border-radius:var(--radius-md);cursor:pointer;font-size:.85rem;font-weight:500;color:var(--dark-slate);transition:all var(--transition-base);text-align:left}.analytics-btn:hover{background:var(--primary-blue-subtle);border-color:var(--primary-blue-light);color:var(--primary-blue);transform:translate(4px);box-shadow:var(--shadow-sm)}.analytics-btn:active{transform:translate(2px)}.analytics-btn svg{flex-shrink:0;color:var(--primary-blue);opacity:.7}.analytics-btn:hover svg{opacity:1}.history-panel-overlay,.stripping-panel-overlay,.export-panel-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172ad9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:24px;animation:modalFadeIn .25s ease}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.history-panel,.stripping-panel,.export-panel{background:#fff;border-radius:20px;box-shadow:0 0 0 1px #ffffff1a,0 32px 100px #0006;width:calc(100vw - 80px);max-width:1400px;height:calc(100vh - 80px);max-height:900px;overflow:hidden;animation:modalSlideUp .35s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.history-panel{max-width:1600px}.stripping-panel,.export-panel{max-width:1200px;max-height:800px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(40px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.history-panel .panel-header,.stripping-panel .panel-header,.export-panel .panel-header{display:flex;align-items:center;padding:24px 32px;border-bottom:1px solid rgba(0,0,0,.08);background:linear-gradient(180deg,#f8fafc,#fff);border-radius:20px 20px 0 0;position:relative;z-index:10;flex-shrink:0;gap:20px}.history-panel .back-btn,.stripping-panel .back-btn,.export-panel .back-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;cursor:pointer;font-size:.875rem;font-weight:600;color:var(--text-secondary);transition:all .2s ease;box-shadow:0 1px 3px #0000000a}.history-panel .back-btn:hover,.stripping-panel .back-btn:hover,.export-panel .back-btn:hover{background:var(--primary-blue);border-color:var(--primary-blue);color:#fff;box-shadow:0 4px 12px #0066ff40}.history-panel .back-btn svg,.stripping-panel .back-btn svg,.export-panel .back-btn svg{width:18px;height:18px}.history-panel .close-btn,.stripping-panel .close-btn,.export-panel .close-btn{width:48px;height:48px;min-width:48px;background:linear-gradient(135deg,#fee2e2,#fecaca);border:2px solid #fca5a5;border-radius:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#dc2626;transition:all .2s ease;flex-shrink:0;box-shadow:0 2px 8px #dc262626}.history-panel .close-btn:hover,.stripping-panel .close-btn:hover,.export-panel .close-btn:hover{background:linear-gradient(135deg,#dc2626,#b91c1c);border-color:#b91c1c;color:#fff;transform:scale(1.08);box-shadow:0 6px 20px #dc262659}.history-panel .close-btn svg,.stripping-panel .close-btn svg,.export-panel .close-btn svg{width:22px;height:22px;stroke-width:2.5}.history-panel .header-title,.stripping-panel .header-title,.export-panel .header-title{flex:1;text-align:center}.history-panel .header-title h2,.stripping-panel .header-title h2,.export-panel .header-title h2{font-size:1.5rem;font-weight:700;color:var(--dark-slate);margin-bottom:4px;letter-spacing:-.3px}.history-panel .header-title .subtitle,.stripping-panel .header-title .subtitle,.export-panel .header-title .subtitle{font-size:.9rem;color:#64748b;font-weight:500}.history-controls{display:flex;align-items:center;gap:32px;padding:20px 32px;background:linear-gradient(180deg,#f1f5f9,#fff);border-bottom:1px solid rgba(0,0,0,.06);flex-shrink:0}.history-tabs{display:flex;gap:6px;padding:6px;background:#fff;border-radius:14px;box-shadow:inset 0 1px 3px #0000000f}.history-tabs .tab-btn{padding:12px 24px;border:none;background:transparent;border-radius:10px;cursor:pointer;font-weight:600;font-size:.9rem;color:#64748b;transition:all .2s ease}.history-tabs .tab-btn:hover{background:#f1f5f9;color:#334155}.history-tabs .tab-btn.active{background:var(--primary-blue);color:#fff;box-shadow:0 2px 8px #0066ff4d}.history-selectors{display:flex;gap:20px;margin-left:auto}.selector-group{display:flex;flex-direction:column;gap:6px}.selector-group label{font-size:.7rem;color:#64748b;text-transform:uppercase;letter-spacing:.8px;font-weight:600}.selector-group select{padding:10px 16px;border:1px solid #e2e8f0;border-radius:10px;font-size:.9rem;min-width:160px;background:#fff;font-weight:500;color:#334155;cursor:pointer;transition:all .2s ease}.selector-group select:hover{border-color:var(--primary-blue)}.selector-group select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0066ff1a}.history-chart-container{padding:32px;flex:1;display:flex;flex-direction:column;background:#fff;overflow-y:auto;min-height:0}.history-chart-container .time-series-chart{flex:1;min-height:400px;width:100%}.no-data-message{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;color:#64748b;text-align:center}.no-data-message p{font-size:1.25rem;font-weight:500}.no-data-message .hint{font-size:1rem;color:#94a3b8;margin-top:12px}.history-stats{display:flex;align-items:center;justify-content:center;gap:40px;padding:20px 32px;background:linear-gradient(180deg,#fff,#f8fafc);border-radius:0 0 20px 20px;border-top:1px solid rgba(0,0,0,.06);flex-shrink:0}.history-stats .stat-item{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d}.history-stats .stat-label{font-size:.7rem;color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin-bottom:4px}.history-stats .stat-value{font-size:1rem;font-weight:700;color:var(--dark-slate)}.history-stats .stat-divider{width:1px;height:40px;background:linear-gradient(180deg,transparent,#cbd5e1,transparent)}.chart-tooltip{background:#000000d9;padding:8px 12px;border-radius:6px;color:#fff}.chart-tooltip .tooltip-time{font-size:.75rem;color:#aaa;margin-bottom:4px}.chart-tooltip .tooltip-value{font-size:.95rem;font-weight:600}.stripping-panel>.stripping-selector,.stripping-panel>.maturity-card,.stripping-panel>.stripping-info{margin-left:32px;margin-right:32px}.stripping-selector{display:flex;align-items:center;gap:16px;padding:20px 32px;border-bottom:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,#f8fafc,#fff)}.stripping-selector label{font-size:.9rem;font-weight:600;color:#475569}.stripping-selector select{padding:12px 16px;border:1px solid #e2e8f0;border-radius:10px;font-size:.95rem;min-width:200px;background:#fff;cursor:pointer;transition:all .2s ease}.stripping-selector select:hover{border-color:var(--primary-blue)}.stripping-selector select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0066ff1a}.maturity-card{margin:32px;padding:28px;background:linear-gradient(135deg,#f0f4ff,#e8f4ff);border-radius:16px;border:1px solid #d0e0ff;flex:1}.maturity-card .card-header{display:flex;align-items:center;gap:10px;margin-bottom:16px}.maturity-card .card-icon{width:32px;height:32px;background:var(--primary-blue);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.1rem}.maturity-card .card-title{font-weight:600;color:var(--dark-slate)}.progress-bar-container{position:relative;height:24px;background:#e0e0e0;border-radius:12px;overflow:hidden;margin-bottom:12px}.progress-bar{height:100%;border-radius:12px;transition:width .5s ease}.maturity-progress{background:linear-gradient(90deg,var(--primary-blue),#00d9ff)}.progress-milestones{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.milestone{position:absolute;top:0;bottom:0;display:flex;flex-direction:column;align-items:center}.milestone-marker{width:2px;height:100%;background:#ffffff80}.milestone-label{position:absolute;top:-18px;font-size:.65rem;color:#888;white-space:nowrap}.maturity-value{display:flex;align-items:baseline;gap:8px}.maturity-value .value{font-size:1.5rem;font-weight:700;color:var(--primary-blue)}.maturity-value .target{font-size:.85rem;color:#888}.strength-card{margin:0 24px 20px;padding:16px 20px;background:#f8f9fa;border-radius:12px}.strength-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.strength-row .label{font-size:.85rem;color:#666}.strength-row .value{font-weight:600;color:var(--dark-slate)}.strength-row .percent{font-size:.8rem;color:#888;margin-left:8px}.strength-progress{height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;margin-top:8px}.strength-progress .progress-bar{height:100%}.strength-progress .progress-bar.safe{background:var(--success-green)}.strength-progress .progress-bar.not-safe{background:var(--safety-orange)}.countdown-card{margin:0 24px 20px;padding:24px;background:linear-gradient(135deg,#fff5e6,#fff0d6);border:1px solid #ffe0b2;border-radius:12px;display:flex;align-items:center;gap:16px}.countdown-card.safe{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#a5d6a7}.countdown-icon{flex-shrink:0}.countdown-card .countdown-icon svg{stroke:var(--safety-orange)}.countdown-card.safe .countdown-icon svg{stroke:var(--success-green)}.countdown-content{flex:1}.countdown-label{display:block;font-size:.85rem;color:#666;margin-bottom:4px}.countdown-value{display:block;font-size:1.75rem;font-weight:700;color:var(--dark-slate)}.confidence-section{padding:16px 24px;display:flex;flex-wrap:wrap;align-items:center;gap:12px;border-top:1px solid #eee}.confidence-badge{display:flex;align-items:center;gap:8px}.confidence-badge .label{font-size:.85rem;color:#666}.confidence-badge .badge{padding:4px 10px;border-radius:4px;font-size:.75rem;font-weight:600}.confidence-badge .badge.low{background:#ffebee;color:#c62828}.confidence-badge .badge.medium{background:#fff3e0;color:#e65100}.confidence-badge .badge.high{background:#e8f5e9;color:#2e7d32}.weather-warning{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#fff3e0;border-radius:6px;font-size:.8rem;color:#e65100}.weather-warning.cold{background:#e3f2fd;color:#1565c0}.weather-warning .warning-icon{font-weight:700}.details-toggle{margin-left:auto;padding:8px 16px;background:transparent;border:1px solid #ddd;border-radius:6px;cursor:pointer;font-size:.85rem;color:#666;transition:all .2s ease}.details-toggle:hover{background:#f5f5f5;border-color:#bbb}.calculation-details{margin:0 24px 20px;padding:16px;background:#f5f5f5;border-radius:8px}.calculation-details h4{font-size:.9rem;color:#666;margin-bottom:12px}.calculation-details table{width:100%;font-size:.85rem}.calculation-details td{padding:6px 0;border-bottom:1px solid #e0e0e0}.calculation-details td:first-child{color:#888}.calculation-details td:last-child{text-align:right;color:var(--dark-slate)}.export-panel-body{flex:1;overflow-y:auto;display:flex;flex-direction:column}.export-form{padding:28px 32px;flex:1}.export-form .form-group{margin-bottom:20px}.export-form label{display:block;font-size:.9rem;font-weight:600;color:#475569;margin-bottom:8px}.export-form input,.export-form select{width:100%;padding:12px 16px;border:1px solid #e2e8f0;border-radius:10px;font-size:.95rem;transition:all .2s ease}.export-form input:hover,.export-form select:hover{border-color:var(--primary-blue)}.export-form input:focus,.export-form select:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 3px #0066ff1a}.export-sections{padding:24px 32px;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border-radius:16px;margin:0 32px 24px}.export-sections h4{font-size:.9rem;font-weight:600;color:#475569;margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.checkbox-label{display:flex;align-items:center;gap:10px;padding:10px 0;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-blue)}.checkbox-label span{font-size:.9rem;color:var(--dark-slate)}.checkbox-label .badge{margin-left:auto;padding:2px 8px;background:#e0e0e0;border-radius:10px;font-size:.75rem;color:#666}.export-warning{display:flex;align-items:flex-start;gap:12px;margin:16px 24px;padding:12px 16px;background:#fff3e0;border-radius:8px;border-left:4px solid var(--safety-orange)}.export-warning .warning-icon{flex-shrink:0;width:20px;height:20px;background:var(--safety-orange);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.8rem}.export-warning p{font-size:.85rem;color:#e65100;line-height:1.4}.export-actions{display:flex;justify-content:flex-end;gap:16px;padding:24px 32px;border-top:1px solid rgba(0,0,0,.06);background:linear-gradient(180deg,#fff,#f8fafc);border-radius:0 0 20px 20px;flex-shrink:0}.cancel-btn{padding:14px 32px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;color:#64748b;transition:all .2s ease}.cancel-btn:hover{background:#f1f5f9;border-color:#cbd5e1}.download-btn{display:flex;align-items:center;gap:10px;padding:14px 32px;background:linear-gradient(135deg,var(--primary-blue) 0%,#0052cc 100%);border:none;border-radius:12px;cursor:pointer;font-size:.95rem;font-weight:600;color:#fff;transition:all .2s ease;box-shadow:0 2px 8px #0066ff40}.download-btn:hover:not(:disabled){background:linear-gradient(135deg,#0052cc,#003d99);box-shadow:0 4px 16px #0066ff59}.download-btn:disabled{opacity:.6;cursor:not-allowed}.download-btn .spinner{width:16px;height:16px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.time-series-chart,.multi-sensor-chart{width:100%}.sensor-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.sensor-detail-panel{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.detail-header{display:flex;align-items:center;gap:16px;padding:20px 24px;border-bottom:1px solid #eee;position:sticky;top:0;background:#fff;z-index:10}.detail-header .header-info{flex:1}.detail-header h2{font-size:1.4rem;font-weight:700;color:var(--dark-slate);margin-bottom:4px}.detail-header .structure-name{font-size:.85rem;color:#666}.detail-header .status-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;border-radius:20px;font-size:.85rem;font-weight:600}.detail-header .status-indicator.normal{background:#27ae601a;color:#27ae60}.detail-header .status-indicator.warning{background:#f39c121a;color:#f39c12}.detail-header .status-indicator.severe{background:#ff8c001a;color:#ff8c00}.detail-header .status-indicator.critical{background:#e74c3c1a;color:#e74c3c}.detail-header .status-dot{width:10px;height:10px;border-radius:50%;background:currentColor;animation:pulse 2s ease-in-out infinite}.detail-header .close-btn{background:#0000000d;border:none;border-radius:10px;width:40px;height:40px;min-width:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--text-secondary);transition:all .2s ease;flex-shrink:0}.detail-header .close-btn:hover{background:var(--danger-red);color:#fff;transform:scale(1.05)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:20px 24px}@media(max-width:600px){.detail-grid{grid-template-columns:1fr}}.current-status-card,.sensor-info-card{background:#f8f9fa;border-radius:12px;padding:16px}.current-status-card h3,.sensor-info-card h3{font-size:.9rem;font-weight:600;color:#666;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.metrics-list{display:flex;flex-direction:column;gap:10px}.metric-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#fff;border-radius:8px;border-left:4px solid}.metric-item.pressure{border-left-color:var(--primary-blue)}.metric-item.temperature{border-left-color:#e74c3c}.metric-item.humidity{border-left-color:#27ae60}.metric-label{font-size:.85rem;color:#666}.metric-value{font-size:1rem;font-weight:700;color:var(--dark-slate)}.info-list{display:flex;flex-direction:column;gap:8px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid #eee}.info-item:last-child{border-bottom:none}.info-label{font-size:.85rem;color:#666}.info-value{font-size:.9rem;font-weight:500;color:var(--dark-slate)}.detail-tabs{display:flex;gap:8px;padding:0 24px;border-bottom:1px solid #eee}.tab-btn{padding:12px 20px;border:none;background:transparent;cursor:pointer;font-size:.9rem;font-weight:500;color:#666;border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .2s ease}.tab-btn:hover{color:var(--primary-blue)}.tab-btn.active{color:var(--primary-blue);border-bottom-color:var(--primary-blue)}.detail-chart-container{padding:20px 24px}.no-data-message{text-align:center;padding:40px;color:#666}.no-data-message .hint{font-size:.85rem;color:#999;margin-top:8px}.prediction-legend{display:flex;justify-content:center;gap:24px;margin-top:12px;font-size:.8rem;color:#666}.prediction-legend .legend-item{display:flex;align-items:center;gap:8px}.prediction-legend .solid-line{width:24px;height:2px;background:var(--primary-blue)}.prediction-legend .dashed-line{width:24px;height:2px;background:repeating-linear-gradient(to right,var(--primary-blue) 0px,var(--primary-blue) 5px,transparent 5px,transparent 8px)}.recommendations-section{padding:20px 24px;border-top:1px solid #eee}.recommendations-section h3{font-size:.9rem;font-weight:600;color:#666;margin-bottom:16px;text-transform:uppercase;letter-spacing:.5px}.recommendations-list{display:flex;flex-direction:column;gap:10px}.recommendation-item{display:flex;align-items:flex-start;gap:14px;padding:14px 16px;border-radius:10px;background:#f8f9fa}.recommendation-item.success{background:#27ae6014;border-left:4px solid #27ae60}.recommendation-item.info{background:#2e86de14;border-left:4px solid var(--primary-blue)}.recommendation-item.warning{background:#f39c1214;border-left:4px solid #f39c12}.recommendation-item.action{background:#ff8c0014;border-left:4px solid var(--safety-orange)}.recommendation-item.critical{background:#e74c3c14;border-left:4px solid #e74c3c}.rec-icon{font-size:1.2rem;flex-shrink:0;width:28px;height:28px;display:flex;align-items:center;justify-content:center}.rec-content{flex:1;display:flex;flex-direction:column;gap:4px}.rec-title{font-weight:600;font-size:.95rem;color:var(--dark-slate)}.rec-message{font-size:.85rem;color:#666;line-height:1.5}.chart-tooltip{background:#fff;border:1px solid #ddd;border-radius:8px;padding:10px 14px;box-shadow:0 4px 12px #0000001a}.tooltip-time{font-size:.8rem;color:#666;margin-bottom:4px}.tooltip-value{font-size:1rem;font-weight:700;color:var(--dark-slate)}.sitemap-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.sitemap-panel{background:#1a1a2e;border-radius:16px;width:100%;max-width:900px;height:80vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 60px #0006}.sitemap-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid #2d2d44}.sitemap-header h2{color:#fff;font-size:1.2rem;font-weight:600}.sitemap-header .close-btn{background:#ffffff1a;border:none;border-radius:10px;width:40px;height:40px;min-width:40px;cursor:pointer;display:flex;align-items:center;justify-content:center;color:#ffffffb3;transition:all .2s ease}.sitemap-header .close-btn:hover{background:var(--danger-red);color:#fff;transform:scale(1.05)}.sitemap-legend{display:flex;gap:16px;padding:12px 20px;background:#0003;flex-wrap:wrap;align-items:center}.sitemap-legend .legend-item{display:flex;align-items:center;gap:6px;font-size:.8rem;color:#aaa}.sitemap-legend .legend-color{width:16px;height:10px;border-radius:2px}.sitemap-legend .legend-color.landing-pad{background:#4a90d9}.sitemap-legend .legend-color.windsock{background:#e67e22}.sitemap-legend .legend-color.lighting{background:#f1c40f}.sitemap-legend .legend-color.weather-station{background:#27ae60}.sitemap-legend .legend-color.camera{background:#9b59b6}.sitemap-legend .legend-dot{width:10px;height:10px;border-radius:50%}.sitemap-legend .legend-dot.normal{background:#0f6}.sitemap-legend .legend-dot.warning{background:#fc0}.sitemap-legend .legend-dot.severe{background:#f80}.sitemap-legend .legend-dot.critical{background:red}.sitemap-legend .legend-divider{width:1px;height:16px;background:#444}.sitemap-canvas-container{flex:1;position:relative;overflow:hidden}.sitemap-canvas-container canvas{width:100%;height:100%}.sitemap-info{padding:12px 20px;border-top:1px solid #2d2d44;text-align:center}.sitemap-info p{color:#888;font-size:.85rem}.sitemap-indicator{position:fixed;bottom:80px;right:20px;background:#fffffffa;border:1px solid rgba(0,0,0,.06);border-radius:14px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 0 0 1px #00000005,0 4px 16px #00000014;transition:box-shadow .2s ease,background .2s ease;z-index:100}.sitemap-indicator:hover{box-shadow:0 0 0 1px #0066ff26,0 8px 24px #0066ff26;background:var(--primary-blue)}.sitemap-indicator svg{color:var(--primary-blue);transition:color .2s ease}.sitemap-indicator:hover svg{color:#fff}body.rtl .sitemap-indicator{right:auto;left:70px}@media(min-width:769px){.legend{display:none!important}.structure-indicator{position:fixed;top:16px;left:50%;transform:translate(-50%);padding:10px 18px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);border-radius:16px;box-shadow:0 4px 24px #00000014,0 1px 3px #0000000a;gap:10px;z-index:110;transition:all .25s cubic-bezier(.4,0,.2,1)}.structure-indicator:hover{transform:translate(-50%) translateY(-2px);box-shadow:0 8px 32px #0000001f,0 2px 4px #0000000f;border-color:var(--primary-blue-light)}.structure-indicator .indicator-icon{width:28px;height:28px;border-radius:8px}.structure-indicator .indicator-icon svg{width:16px;height:16px}.structure-indicator .indicator-label{display:none}.structure-indicator .indicator-name{font-size:.85rem;font-weight:600;letter-spacing:-.2px}.structure-indicator .indicator-meta{padding:4px 10px;font-size:.7rem;background:linear-gradient(135deg,#0066ff14,#00d4ff14);color:var(--primary-blue);border-radius:12px;font-weight:500}.structure-indicator .indicator-arrow{width:14px;height:14px;color:#888;transition:transform .2s ease}.structure-indicator:hover .indicator-arrow{transform:translateY(2px)}.offline-indicator{position:fixed;top:16px;right:16px;padding:10px 14px;border-radius:14px;font-size:.75rem;font-weight:600;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 24px #00000014;z-index:110;transition:all .25s ease}.offline-indicator:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f}.alert-indicator{position:fixed;top:68px;right:16px;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 24px #00000014;z-index:110;transition:all .25s ease}.alert-indicator:hover{transform:scale(1.05);box-shadow:0 8px 32px #0000001f;border-color:var(--danger-red)}.alert-indicator svg{width:20px;height:20px}.alert-count{top:-4px;right:-4px;min-width:18px;height:18px;font-size:.65rem;border:2px solid white;box-shadow:0 2px 8px #e74c3c66}.floating-lang-switcher{position:fixed;top:120px;right:16px;z-index:110}.floating-lang-switcher .lang-trigger{padding:10px 14px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 24px #00000014;font-size:.8rem;transition:all .25s ease}.floating-lang-switcher .lang-trigger:hover{transform:translateY(-2px);box-shadow:0 8px 32px #0000001f;border-color:var(--primary-blue)}.control-panel{position:fixed;top:68px;left:16px;background:#fffffff2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:1px solid rgba(255,255,255,.6);border-radius:18px;padding:16px;box-shadow:0 4px 32px #00000014,0 1px 3px #0000000a;min-width:280px;max-width:300px;max-height:calc(100vh - 160px);overflow-y:auto;overflow-x:hidden;z-index:100;transition:all .3s cubic-bezier(.4,0,.2,1)}.control-panel:hover{box-shadow:0 8px 40px #0000001a,0 2px 4px #0000000a}.control-panel::-webkit-scrollbar{width:4px}.control-panel::-webkit-scrollbar-track{background:transparent}.control-panel::-webkit-scrollbar-thumb{background:#06f3;border-radius:4px}.control-panel::-webkit-scrollbar-thumb:hover{background:#06f6}.control-panel .panel-header{gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.05)}.control-panel .panel-logo,.control-panel .panel-logo-fallback{width:36px;height:36px;border-radius:10px}.control-panel .panel-logo-fallback{font-size:16px}.control-panel h1{font-size:.95rem;margin-bottom:2px;letter-spacing:-.3px}.control-panel .subtitle{font-size:.65rem;opacity:.7}.control-panel .panel-collapse-btn{width:28px;height:28px;border-radius:8px;font-size:11px;background:#0066ff0f;transition:all .2s ease}.control-panel .panel-collapse-btn:hover{background:var(--primary-blue);color:#fff;transform:scale(1.05)}.control-panel.collapsed{min-width:280px;padding:12px 16px}.timeline-section{margin-bottom:12px;padding:12px;background:#f8fafccc;border-radius:12px}.timeline-section label{font-size:.7rem;margin-bottom:6px;color:var(--text-secondary)}.playback-controls{gap:6px;margin-bottom:12px}.playback-btn{padding:8px 12px;font-size:.75rem;border-radius:10px;font-weight:600;transition:all .2s ease}.playback-btn:hover{transform:translateY(-1px)}.mode-toggle{margin-bottom:12px;background:#f8fafccc;border-radius:10px;padding:4px}.mode-btn{padding:8px 10px;font-size:.7rem;border-radius:8px;font-weight:500;transition:all .2s ease}.mode-btn.active{background:#fff;box-shadow:0 2px 8px #00000014}.sensor-stats{padding:12px;border-radius:12px;margin-bottom:12px;background:#fff;border:1px solid rgba(0,0,0,.04)}.stats-header{font-size:.7rem;margin-bottom:8px}.stat-row{font-size:.75rem;padding:6px 0}.analytics-section h3{font-size:.7rem;margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary)}.analytics-btn{padding:10px 12px;border-radius:10px;font-size:.75rem;font-weight:500;background:#f8fafce6;border:1px solid rgba(0,0,0,.04);transition:all .2s ease}.analytics-btn:hover{background:#fff;border-color:var(--primary-blue-light);transform:translateY(-1px);box-shadow:0 4px 12px #0066ff1a}.analytics-btn svg{width:16px;height:16px}.scenario-indicator{position:fixed;bottom:20px;left:50%;transform:translate(-50%);padding:10px 18px;background:#fffffff2;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border:2px solid;border-radius:20px;box-shadow:0 4px 32px #0000001a,0 2px 6px #0000000a;gap:10px;z-index:100;transition:all .25s cubic-bezier(.4,0,.2,1)}.scenario-indicator:hover{transform:translate(-50%) translateY(-3px);box-shadow:0 8px 40px #00000024,0 4px 8px #0000000f}.scenario-indicator .indicator-label{font-size:.6rem;text-transform:uppercase;letter-spacing:.5px;color:#888}.scenario-indicator .indicator-name{font-size:.8rem;font-weight:600;letter-spacing:-.2px}.scenario-indicator .indicator-params{gap:6px;padding:5px 10px;background:#f8fafce6;border-radius:10px}.scenario-indicator .param{padding:3px 8px;font-size:.65rem;border-radius:8px;font-weight:500}.scenario-indicator .indicator-arrow{width:14px;height:14px;color:#888;transition:transform .2s ease}.scenario-indicator:hover .indicator-arrow{transform:translateY(-2px)}.sitemap-indicator{position:fixed;bottom:72px;right:16px;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 24px #00000014;z-index:100;transition:all .25s ease}.sitemap-indicator:hover{transform:scale(1.05) translateY(-2px);box-shadow:0 8px 32px #0000001f;border-color:var(--primary-blue)}.sitemap-indicator svg{width:18px;height:18px}.back-to-intro{position:fixed;bottom:20px;right:16px;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.5);box-shadow:0 4px 24px #00000014;z-index:100;transition:all .25s ease}.back-to-intro:hover{transform:scale(1.05) translateY(-2px);box-shadow:0 8px 32px #0000001f;border-color:var(--primary-blue);background:var(--primary-blue)}.back-to-intro:hover svg{color:#fff}.back-to-intro svg{width:18px;height:18px;color:var(--primary-blue);transition:color .25s ease}}@media(min-width:1200px){.structure-indicator{padding:12px 22px;border-radius:18px;gap:12px}.structure-indicator .indicator-icon{width:32px;height:32px}.structure-indicator .indicator-name{font-size:.9rem}.control-panel{top:72px;left:20px;min-width:300px;max-width:320px;padding:18px;border-radius:20px}.control-panel .panel-header{margin-bottom:16px;padding-bottom:14px}.control-panel .panel-logo,.control-panel .panel-logo-fallback{width:40px;height:40px}.control-panel h1{font-size:1rem}.offline-indicator{padding:12px 16px;font-size:.8rem}.alert-indicator{top:72px;width:48px;height:48px;border-radius:16px}.alert-indicator svg{width:22px;height:22px}.floating-lang-switcher{top:128px}.floating-lang-switcher .lang-trigger{padding:12px 16px;font-size:.85rem}.scenario-indicator{bottom:24px;padding:12px 22px;border-radius:22px;gap:12px}.scenario-indicator .indicator-name{font-size:.85rem}.scenario-indicator .param{padding:4px 10px;font-size:.7rem}.sitemap-indicator{bottom:80px;right:20px;width:48px;height:48px;border-radius:16px}.sitemap-indicator svg{width:20px;height:20px}.back-to-intro{bottom:24px;right:20px;width:48px;height:48px;border-radius:16px}.back-to-intro svg{width:20px;height:20px}}@media(max-width:1024px)and (min-width:769px){.structure-indicator{padding:8px 14px;gap:8px}.structure-indicator .indicator-meta{display:none}.control-panel{min-width:260px;max-width:280px;padding:14px}.control-panel h1{font-size:.9rem}.control-panel .subtitle{font-size:.6rem}.alert-indicator{top:64px;width:42px;height:42px}.floating-lang-switcher{top:114px}.scenario-indicator .indicator-params{display:none}.sitemap-indicator{bottom:68px;width:42px;height:42px}.back-to-intro{width:42px;height:42px}}@media(max-width:768px){.control-panel{position:fixed;top:auto;bottom:0;left:0;right:0;min-width:100%;max-width:100%;border-radius:24px 24px 0 0;padding:20px 20px 24px;max-height:70vh;overflow-y:auto;transform:translateY(0);transition:transform .3s cubic-bezier(.4,0,.2,1);background:#fffffff5;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);box-shadow:0 -4px 40px #0000001f;border:1px solid rgba(255,255,255,.5);border-bottom:none}.control-panel:before{content:"";display:block;width:40px;height:4px;background:#00000026;border-radius:4px;margin:0 auto 16px}.control-panel.collapsed{transform:translateY(calc(100% - 72px));min-width:100%}.control-panel .panel-header{position:sticky;top:0;gap:12px;margin-bottom:14px;padding-top:8px;padding-bottom:12px;border-bottom:1px solid rgba(0,0,0,.05);background:#fffffff5;z-index:5}.control-panel .panel-collapse-btn{width:44px;height:44px;font-size:16px;border-radius:12px;background:#0066ff14}.control-panel h1{font-size:1rem;letter-spacing:-.3px}.control-panel .subtitle{font-size:.7rem;opacity:.7}.timeline-slider{height:12px}.timeline-slider::-webkit-slider-thumb{width:28px;height:28px;border-width:4px}.timeline-slider::-moz-range-thumb{width:28px;height:28px;border-width:4px}.playback-btn{min-height:44px;padding:12px 16px;font-size:.9rem;border-radius:12px}.mode-btn{min-height:44px;padding:10px 14px;border-radius:10px}.analytics-btn{min-height:48px;padding:12px;border-radius:12px}.legend{display:none}.offline-indicator{position:fixed;top:12px;left:12px;right:auto;bottom:auto;padding:8px 12px;font-size:.7rem;border-radius:12px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;z-index:110}.back-to-intro{position:fixed;top:56px;left:12px;bottom:auto;right:auto;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;z-index:110}.alert-indicator{position:fixed;top:12px;right:12px;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;z-index:110}.scenario-indicator{position:fixed;top:64px;left:auto;bottom:auto;right:12px;width:44px;height:44px;padding:0;border-radius:14px;justify-content:center;border-width:2px;transform:none;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;z-index:110}.scenario-indicator .indicator-content,.scenario-indicator .indicator-params,.scenario-indicator .indicator-arrow{display:none}.scenario-indicator:before{content:"";width:20px;height:20px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 24 24' stroke='%231A1F36'%3E%3Cpath stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M12 6V4m0 2a2 2 0 100 4m0-4a2 2 0 110 4m-6 8a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4m6 6v10m6-2a2 2 0 100-4m0 4a2 2 0 110-4m0 4v2m0-6V4'/%3E%3C/svg%3E");background-size:contain;background-repeat:no-repeat}.structure-indicator{position:fixed;top:116px;left:auto;right:12px;width:44px;height:44px;padding:0;border-radius:50%;justify-content:center;transform:none}.structure-indicator{background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;border-radius:14px}.structure-indicator:hover{transform:none}.structure-indicator .indicator-content,.structure-indicator .indicator-meta,.structure-indicator .indicator-arrow{display:none}.structure-indicator .indicator-icon{width:24px;height:24px}.sitemap-indicator{position:fixed;top:168px;right:12px;width:44px;height:44px;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a;z-index:110}.floating-lang-switcher{position:fixed;top:220px;right:12px;z-index:110}.floating-lang-switcher .language-switcher{width:44px;height:44px}.floating-lang-switcher .lang-trigger{width:44px;height:44px;padding:0;justify-content:center;border-radius:14px;background:#ffffffeb;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 4px 20px #0000001a}.floating-lang-switcher .lang-name,.floating-lang-switcher .lang-arrow{display:none}.alert-dashboard,.scenario-modal,.structure-modal,.sitemap-panel,.sensor-detail-panel{width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.history-panel,.stripping-panel,.export-panel{width:100%;max-width:100%;max-height:90vh;border-radius:20px 20px 0 0;margin-top:auto}.history-panel-overlay,.stripping-panel-overlay,.export-panel-overlay{align-items:flex-end}.history-panel .panel-header,.stripping-panel .panel-header,.export-panel .panel-header{padding:16px;border-radius:20px 20px 0 0;flex-wrap:wrap;gap:12px}.history-panel .back-btn,.stripping-panel .back-btn,.export-panel .back-btn{order:1;width:100%;justify-content:center;margin-right:0;margin-bottom:8px;padding:10px 16px}.history-panel .header-title,.stripping-panel .header-title,.export-panel .header-title{order:2;flex:1;text-align:center}.history-panel .close-btn,.stripping-panel .close-btn,.export-panel .close-btn{order:3;position:absolute;top:16px;right:16px}.history-tabs{padding:12px;flex-wrap:wrap;gap:8px}.history-tabs .tab-btn{flex:1;min-width:80px;padding:10px 12px;text-align:center;justify-content:center}.history-selectors{flex-direction:column;padding:12px 16px}.selector-group,.selector-group select{width:100%}.history-chart-container{padding:12px 16px;min-height:280px}.history-stats{flex-wrap:wrap;gap:12px;padding:12px 16px}.history-stats .stat-divider{display:none}.history-stats .stat-item{flex:1;min-width:80px}.stripping-selector{padding:12px 16px;flex-wrap:wrap;gap:8px}.stripping-selector select{width:100%}.maturity-card{margin:12px 16px;padding:16px}.strength-card{margin:0 16px 12px;padding:12px 16px}.countdown-card{margin:0 16px 12px;padding:16px}.confidence-section{padding:12px 16px;flex-direction:column;align-items:flex-start}.calculation-details{margin:0 16px 16px}.export-form,.export-sections{padding:12px 16px}.export-actions{flex-direction:column;padding:16px}.export-actions .cancel-btn,.export-actions .download-btn{width:100%;justify-content:center}.modal-content,.modal-header{padding:16px}.modal-header h2{font-size:1.1rem}.sensor-tooltip{max-width:280px;padding:12px;border-radius:14px;background:#fffffff5;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}}@media(max-width:480px){.control-panel{padding:16px 16px 20px;border-radius:20px 20px 0 0}.control-panel:before{width:32px;margin-bottom:12px}.playback-controls{flex-wrap:wrap;gap:6px}.playback-btn{flex:1;min-width:80px;padding:10px;font-size:.8rem}.mode-toggle{flex-wrap:wrap}.mode-btn{flex:1;min-width:80px;font-size:.75rem;padding:8px}.analytics-buttons{flex-direction:column;gap:8px}.analytics-btn{width:100%;padding:10px}.stat-row{flex-wrap:wrap;gap:4px;font-size:.7rem}.alert-indicator,.scenario-indicator,.structure-indicator,.sitemap-indicator{width:40px;height:40px;right:8px;border-radius:12px}.alert-indicator{top:8px}.scenario-indicator{top:54px}.structure-indicator{top:100px}.sitemap-indicator{top:146px}.floating-lang-switcher{top:192px;right:8px}.floating-lang-switcher .lang-trigger{width:40px;height:40px;border-radius:12px}.offline-indicator{top:8px;left:8px;bottom:auto;padding:6px 10px;font-size:.65rem;border-radius:10px}.back-to-intro{top:50px;left:8px;bottom:auto;width:40px;height:40px;border-radius:12px}}@media(max-height:500px)and (orientation:landscape){.control-panel{max-height:90vh;padding:10px 16px}.control-panel .panel-header{margin-bottom:8px}.timeline-section,.playback-controls,.mode-toggle{margin-bottom:10px}.sensor-stats,.analytics-section{display:none}}@media(hover:none)and (pointer:coarse){.playback-btn,.mode-btn,.analytics-btn,.panel-collapse-btn,.close-btn,.nav-btn{min-height:44px;min-width:44px}.playback-btn:hover,.mode-btn:hover,.analytics-btn:hover{transform:none}.playback-btn:active,.mode-btn:active,.analytics-btn:active{transform:scale(.95);opacity:.8}.timeline-slider::-webkit-slider-thumb{width:32px;height:32px}.timeline-slider::-moz-range-thumb{width:32px;height:32px}}*:focus-visible{outline:2px solid var(--primary-blue);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{box-shadow:0 0 0 3px #0066ff40}.btn-primary{background:var(--accent-gradient);color:#fff;border:none;padding:12px 24px;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md),0 4px 12px #0066ff40;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);transition:left .5s ease}.btn-primary:hover:before{left:100%}.btn-primary:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),0 8px 20px #0066ff59}.btn-primary:active{transform:translateY(0)}.btn-secondary{background:var(--glass-bg-strong);color:var(--text-primary);border:1px solid var(--border-medium);padding:12px 24px;border-radius:var(--radius-md);font-weight:600;font-size:.9rem;cursor:pointer;transition:all var(--transition-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-secondary:hover{background:#fff;border-color:var(--primary-blue);color:var(--primary-blue);box-shadow:var(--shadow-md)}.btn-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;background:var(--glass-bg-strong);border:1px solid var(--border-light);cursor:pointer;transition:all var(--transition-base);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.btn-icon:hover{background:#fff;border-color:var(--primary-blue);box-shadow:var(--shadow-md);transform:scale(1.05)}.btn-icon svg{width:20px;height:20px;color:var(--text-secondary);transition:color var(--transition-fast)}.btn-icon:hover svg{color:var(--primary-blue)}.card-premium{background:var(--glass-bg-strong);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-lg);border:1px solid var(--border-light);box-shadow:var(--shadow-md);transition:all var(--transition-smooth);overflow:hidden}.card-premium:hover{box-shadow:var(--shadow-lg);border-color:#06f3;transform:translateY(-2px)}.card-premium .card-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,rgba(0,102,255,.03),transparent)}.card-premium .card-body{padding:var(--spacing-lg)}.card-premium .card-footer{padding:var(--spacing-md) var(--spacing-lg);background:#00000005;border-top:1px solid var(--border-light)}input[type=text],input[type=number],input[type=email],select,textarea{width:100%;padding:12px 16px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:.9rem;background:#fff;transition:all var(--transition-base);color:var(--text-primary)}input:focus,select:focus,textarea:focus{border-color:var(--primary-blue);box-shadow:0 0 0 3px #0066ff1a;outline:none}input::placeholder{color:var(--text-tertiary)}label{display:block;font-size:.8rem;font-weight:600;color:var(--text-secondary);margin-bottom:6px;text-transform:uppercase;letter-spacing:.5px}.modal-overlay,.alert-dashboard-overlay,.scenario-overlay,.structure-overlay,.history-panel-overlay,.stripping-panel-overlay,.export-panel-overlay,.sitemap-overlay,.sensor-detail-overlay{animation:overlayFadeIn .3s ease-out}@keyframes overlayFadeIn{0%{opacity:0;-webkit-backdrop-filter:blur(0);backdrop-filter:blur(0)}to{opacity:1;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}}.modal-content,.alert-dashboard,.scenario-modal,.structure-modal,.history-panel,.stripping-panel,.export-panel,.sitemap-panel,.sensor-detail-panel{animation:modalSlideUp .4s cubic-bezier(.34,1.56,.64,1)}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.dashboard-header,.scenario-header,.structure-header,.sitemap-header{background:linear-gradient(135deg,var(--dark-slate) 0%,#2d3748 100%);position:relative;overflow:hidden}.dashboard-header:before,.scenario-header:before,.structure-header:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent-gradient)}.dashboard-header:after,.scenario-header:after,.structure-header:after{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:200%;background:radial-gradient(circle,rgba(0,212,255,.1) 0%,transparent 60%);pointer-events:none}.dashboard-tabs,.history-tabs,.detail-tabs{background:linear-gradient(180deg,#f8fafc,#f1f5f9);padding:8px;gap:4px}.tab-btn{border-radius:var(--radius-md)!important;font-weight:600;transition:all var(--transition-base);position:relative}.tab-btn:after{display:none}.tab-btn.active{background:#fff!important;color:var(--primary-blue)!important;box-shadow:var(--shadow-sm)}.tab-btn:hover:not(.active){background:#0066ff0d}.alert-card{border-radius:var(--radius-lg)!important;overflow:hidden;transition:all var(--transition-smooth);border:1px solid transparent}.alert-card:hover{border-color:#06f3;transform:translate(4px)}.alert-card.critical{animation:alertPulse 2s ease-in-out infinite}@keyframes alertPulse{0%,to{box-shadow:0 2px 8px #00000014}50%{box-shadow:0 4px 20px #e74c3c4d}}.scenario-card{position:relative;overflow:hidden}.scenario-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--border-light);transition:all var(--transition-base)}.scenario-card:hover:before{background:var(--accent-gradient)}.scenario-card.selected:before{background:var(--accent-gradient);height:4px}.structure-card{position:relative;overflow:hidden}.structure-card:after{content:"";position:absolute;bottom:0;left:0;right:0;height:3px;background:transparent;transition:all var(--transition-base)}.structure-card:hover:after{background:var(--accent-gradient)}.active-badge,.selected-badge{background:var(--accent-gradient)!important;box-shadow:0 2px 8px #0066ff4d}.platform-badge{background:var(--accent-gradient)!important;font-weight:700;letter-spacing:.5px;box-shadow:0 2px 8px #00d4ff4d}.progress-bar{background:var(--accent-gradient);position:relative;overflow:hidden}.progress-bar:after{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.4),transparent);animation:progressShine 2s infinite}@keyframes progressShine{0%{left:-100%}50%,to{left:100%}}.sensor-tooltip{animation:tooltipPop .2s cubic-bezier(.34,1.56,.64,1)}@keyframes tooltipPop{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.introduction{background:linear-gradient(135deg,#0a0f1c,#1a1f36 40%,#0f1628);position:relative;overflow:hidden}.introduction:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 20%,rgba(0,102,255,.15) 0%,transparent 50%),radial-gradient(ellipse at 80% 80%,rgba(0,212,255,.1) 0%,transparent 50%),radial-gradient(ellipse at 50% 50%,rgba(0,200,83,.05) 0%,transparent 60%);pointer-events:none}.intro-header{position:relative;z-index:1}.intro-header h1{text-shadow:0 0 40px rgba(0,212,255,.3)}.nav-btn{position:relative;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.nav-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.1),transparent);transition:left .5s ease}.nav-btn:hover:before{left:100%}.nav-btn.active{box-shadow:0 0 20px #00d9ff4d}.challenge-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-smooth);position:relative;overflow:hidden}.challenge-card:after{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(255,255,255,.05) 0%,transparent 60%);pointer-events:none}.challenge-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.proof-card{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-smooth)}.proof-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d;border:1px solid rgba(0,217,255,.3)}.esg-pillar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);transition:all var(--transition-smooth);border:1px solid transparent}.esg-pillar:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.esg-pillar.environmental:hover{border-color:#27ae6080}.esg-pillar.social:hover{border-color:#2e86de80}.esg-pillar.governance:hover{border-color:#9b59b680}.enter-btn{position:relative;overflow:hidden;box-shadow:0 4px 20px #00d9ff66}.enter-btn:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:enterBtnShine 3s infinite}@keyframes enterBtnShine{0%,to{left:-100%}50%{left:100%}}.enter-btn:hover{box-shadow:0 8px 40px #00d9ff80}.playback-btn{position:relative;overflow:hidden}.playback-btn.primary{background:var(--accent-gradient);color:#fff;border:none;box-shadow:var(--shadow-sm),0 2px 8px #06f3}.playback-btn.primary:hover{box-shadow:var(--shadow-md),0 4px 16px #0066ff4d}.mode-btn.active{background:var(--accent-gradient);color:#fff;border:none;box-shadow:var(--shadow-sm);position:relative}.mode-btn.active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:20px;height:3px;background:#fff;border-radius:2px}.analytics-btn{position:relative;overflow:hidden}.analytics-btn:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--accent-gradient);opacity:0;transition:opacity var(--transition-base)}.analytics-btn:hover:before{opacity:1}.analytics-btn:hover{padding-left:20px}.sensor-stats{background:linear-gradient(135deg,#0066ff0d,#00d4ff08);border:1px solid rgba(0,102,255,.1)}.offline-indicator,.alert-indicator,.scenario-indicator,.structure-indicator,.sitemap-indicator,.back-to-intro{transition:all var(--transition-smooth)}.offline-indicator:hover,.alert-indicator:hover,.sitemap-indicator:hover,.back-to-intro:hover{transform:scale(1.08)}.legend{background:linear-gradient(135deg,#fffffff2,#ffffffe6);border:1px solid rgba(0,102,255,.1)}.section{animation:sectionFadeIn .5s ease-out}@keyframes sectionFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0000000d;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--primary-blue-light),var(--primary-blue));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-blue-dark)}*{scrollbar-width:thin;scrollbar-color:var(--primary-blue) rgba(0,0,0,.05)}.loading-spinner{border:3px solid rgba(0,102,255,.1);border-top-color:var(--primary-blue);box-shadow:0 0 20px #06f3}@keyframes skeletonPulse{0%,to{background-position:200% 50%}50%{background-position:-200% 50%}}.skeleton{background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0,#f0f0f0 75%);background-size:400% 100%;animation:skeletonPulse 1.5s ease-in-out infinite;border-radius:var(--radius-sm)}::selection{background:#06f3;color:var(--dark-slate)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}@media(prefers-contrast:high){:root{--glass-bg: rgba(255, 255, 255, 1);--glass-bg-strong: rgba(255, 255, 255, 1);--border-light: rgba(0, 0, 0, .3);--border-medium: rgba(0, 0, 0, .5)}.control-panel,.alert-indicator,.scenario-indicator,.structure-indicator{border-width:2px}}@media print{.control-panel,.legend,.offline-indicator,.alert-indicator,.scenario-indicator,.structure-indicator,.sitemap-indicator,.back-to-intro,.floating-lang-switcher{display:none!important}}.marketing-landing{background:#0f172a;color:#fff;min-height:100vh;position:relative;overflow-x:hidden;font-family:Inter,system-ui,sans-serif;--landing-primary: #3b82f6;--landing-accent: #06b6d4;--landing-text-main: #f8fafb;--landing-text-muted: #94a3b8}.landing-bg{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.grid-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);background-size:40px 40px;-webkit-mask-image:radial-gradient(circle at 50% 50%,black 40%,transparent 80%);mask-image:radial-gradient(circle at 50% 50%,black 40%,transparent 80%)}.glow-orb{position:absolute;border-radius:50%;filter:blur(100px);opacity:.4;animation:orbFloat 10s ease-in-out infinite alternate}.glow-orb.top-left{top:-20%;left:-10%;width:800px;height:800px;background:radial-gradient(circle,var(--landing-primary) 0%,transparent 70%)}.glow-orb.bottom-right{bottom:-20%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,var(--landing-accent) 0%,transparent 70%);animation-delay:-5s}@keyframes orbFloat{0%{transform:translate(0)}to{transform:translate(30px,50px)}}.landing-nav{position:fixed;top:0;left:0;width:100%;z-index:100;transition:all .3s ease;padding:1.5rem 0}.landing-nav.scrolled{background:#0f172ae6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:1rem 0;border-bottom:1px solid rgba(255,255,255,.05)}.nav-container{max-width:1280px;margin:0 auto;padding:0 2rem;display:flex;justify-content:space-between;align-items:center}.brand{display:flex;align-items:center;gap:1rem}.brand-logo{height:32px;width:auto}.logo-text{fill:#fff;font-weight:800;letter-spacing:-.02em}.brand-badge{background:#3b82f61a;color:var(--landing-accent);font-size:.7rem;font-weight:700;padding:4px 8px;border-radius:4px;border:1px solid rgba(6,182,212,.2);letter-spacing:.05em}.nav-actions{display:flex;align-items:center;gap:1.5rem}.landing-content{position:relative;z-index:1}.hero-section{min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:6rem 2rem 2rem}.hero-content{max-width:900px}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);padding:6px 16px;border-radius:20px;font-size:.85rem;color:var(--landing-accent);margin-bottom:2rem;font-weight:500}.badge-dot{width:6px;height:6px;background:var(--landing-accent);border-radius:50%;box-shadow:0 0 10px var(--landing-accent)}.hero-title{font-size:clamp(3rem,6vw,5rem);font-weight:800;line-height:1.1;margin-bottom:1.5rem;letter-spacing:-.02em}.text-gradient{background:linear-gradient(135deg,#60a5fa,#22d3ee);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-subtitle{font-size:clamp(1.1rem,2vw,1.25rem);color:var(--landing-text-muted);max-width:640px;margin:0 auto 3rem;line-height:1.6}.hero-actions{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.fade-in-up{opacity:0;transform:translateY(20px);animation:fadeInUp .8s cubic-bezier(.16,1,.3,1) forwards}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:600;border-radius:8px;transition:all .2s ease;cursor:pointer;border:none}.cta-btn.small{padding:8px 16px;font-size:.9rem;background:#fff;color:#0f172a}.cta-btn.small:hover{background:#e2e8f0}.cta-btn.primary{padding:16px 32px;font-size:1.1rem;background:var(--landing-primary);color:#fff;box-shadow:0 0 20px #3b82f64d}.cta-btn.primary:hover{background:#2563eb;transform:translateY(-2px);box-shadow:0 0 30px #3b82f680}.cta-btn.secondary{padding:16px 32px;font-size:1.1rem;background:#ffffff0d;color:#fff;border:1px solid rgba(255,255,255,.1)}.cta-btn.secondary:hover{background:#ffffff1a}.pulse-glow{animation:btnPulse 2s infinite}@keyframes btnPulse{0%{box-shadow:0 0 #3b82f666}70%{box-shadow:0 0 0 10px #3b82f600}to{box-shadow:0 0 #3b82f600}}.cta-btn .icon{width:20px;height:20px}.stats-ticker-container{background:#0f172acc;border-top:1px solid rgba(255,255,255,.05);border-bottom:1px solid rgba(255,255,255,.05);padding:1rem 0;overflow:hidden;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.stats-ticker{display:inline-flex;animation:tickerScroll 20s linear infinite}.ticker-track{display:flex;align-items:center;gap:2rem;padding-right:2rem}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.ticker-item{display:flex;gap:.5rem;align-items:center;font-family:JetBrains Mono,monospace;font-size:.9rem}.ticker-item .label{color:var(--landing-text-muted)}.ticker-item .label.warning{color:#fbbf24}.ticker-item .value{font-weight:700;color:#fff}.ticker-item .value.warning{color:#fbbf24}.ticker-separator{color:#ffffff1a}.label.active{color:#4ade80}.value-section{padding:6rem 2rem;max-width:1280px;margin:0 auto}.section-title{font-size:2.5rem;font-weight:700;margin-bottom:4rem;text-align:center}.value-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem}.value-card{background:#ffffff08;border:1px solid rgba(255,255,255,.05);padding:2.5rem;border-radius:20px;position:relative;overflow:hidden;transition:all .3s ease}.value-card:hover{transform:translateY(-10px);background:#ffffff0d;border-color:#ffffff1a}.card-shine{position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(255,255,255,.1),transparent 40%);opacity:0;transition:opacity .3s ease}.value-card:hover .card-shine{opacity:1}.icon-wrapper{width:64px;height:64px;background:linear-gradient(135deg,#3b82f633,#06b6d41a);border-radius:16px;display:flex;align-items:center;justify-content:center;margin-bottom:1.5rem;color:var(--landing-accent)}.icon-wrapper svg{width:32px;height:32px}.value-card h3{font-size:1.5rem;font-weight:700;margin-bottom:1rem}.value-card p{color:var(--landing-text-muted);line-height:1.6}.feature-section{padding:6rem 2rem;background:linear-gradient(to bottom,#0f172a00,#3b82f60d)}.feature-container{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}@media(max-width:900px){.feature-container{grid-template-columns:1fr}}.feature-label{color:var(--landing-accent);font-weight:700;text-transform:uppercase;letter-spacing:.1em;font-size:.9rem;margin-bottom:1rem;display:block}.feature-text h2{font-size:3rem;font-weight:800;margin-bottom:1.5rem;line-height:1.1}.feature-text p{font-size:1.1rem;color:var(--landing-text-muted);line-height:1.6;margin-bottom:2rem}.feature-list li{display:flex;align-items:center;gap:1rem;margin-bottom:1rem;font-weight:600}.check-icon{width:20px;height:20px;color:#4ade80}.visual-card.glass{background:#ffffff0d;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);padding:2rem;border-radius:24px;box-shadow:0 20px 50px #0003;transform:perspective(1000px) rotateY(-5deg);transition:transform .3s ease}.visual-card.glass:hover{transform:perspective(1000px) rotateY(0) scale(1.02)}.data-row{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem}.data-label{font-family:JetBrains Mono,monospace;color:var(--landing-text-muted);width:50px}.data-bar{flex:1;height:8px;background:#ffffff1a;border-radius:4px;overflow:hidden}.data-bar .fill{height:100%;background:var(--landing-accent);border-radius:4px}.data-val{font-weight:700;width:50px;text-align:right}.visual-status{margin-top:2rem;display:flex;align-items:center;gap:.5rem;color:#4ade80;font-weight:700;font-size:.8rem;letter-spacing:.1em}.status-dot{width:8px;height:8px;background:currentColor;border-radius:50%}.status-dot.pulse{animation:pulse 2s infinite}@keyframes pulse{0%{box-shadow:0 0 #4ade8066}70%{box-shadow:0 0 0 6px #4ade8000}to{box-shadow:0 0 #4ade8000}}.cta-section{padding:8rem 2rem;text-align:center}.cta-content{max-width:800px;margin:0 auto}.cta-content h2{font-size:3rem;font-weight:800;margin-bottom:1.5rem}.cta-content p{color:var(--landing-text-muted);font-size:1.25rem;margin-bottom:3rem}.cta-btn.large{font-size:1.25rem;padding:20px 48px;border-radius:12px}.landing-footer{border-top:1px solid rgba(255,255,255,.05);padding:2rem;color:var(--landing-text-muted);font-size:.9rem}.footer-content{max-width:1280px;margin:0 auto;display:flex;justify-content:space-between}.footer-links{display:flex;gap:2rem}.footer-links span{cursor:pointer;transition:color .2s}.footer-links span:hover{color:#fff}.narrative-section{padding:8rem 2rem;overflow:hidden}.narrative-container{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:center}.narrative-section.inverse .narrative-container{grid-template-columns:1.2fr 1fr}@media(max-width:1024px){.narrative-container,.narrative-section.inverse .narrative-container{grid-template-columns:1fr;gap:3rem}.narrative-section.inverse .narrative-visual{order:2}}.narrative-text h2{font-size:clamp(2rem,4vw,3rem);font-weight:800;margin-bottom:2rem;line-height:1.1}.narrative-text p{font-size:1.15rem;color:var(--landing-text-muted);line-height:1.7;margin-bottom:2.5rem}.narrative-bullets{display:flex;flex-direction:column;gap:1.5rem}.bullet{display:flex;gap:1rem}.bullet-icon{color:var(--landing-accent);font-size:1.2rem}.bullet strong{display:block;font-size:1.1rem;margin-bottom:.25rem}.narrative-visual{position:relative}.glass-frame{background:#ffffff08;border:1px solid rgba(255,255,255,.1);padding:1rem;border-radius:32px;box-shadow:0 40px 100px #0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.glass-frame img{width:100%;height:auto;border-radius:20px;display:block}.impact-quote{border-left:3px solid var(--landing-accent);padding-left:1.5rem;font-style:italic;font-size:1.2rem;color:var(--landing-text-main)}.benefits-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.benefit-item{background:#3b82f61a;padding:1.5rem;border-radius:16px;text-align:center;border:1px solid rgba(59,130,246,.2)}.benefit-val{display:block;font-size:2rem;font-weight:800;color:var(--landing-accent);margin-bottom:.5rem}.benefit-lab{font-size:.85rem;font-weight:600;color:var(--landing-text-muted)}
