:root{--primary: #3b82f6;--primary-dark: #2563eb;--secondary: #10b981;--secondary-dark: #059669;--danger: #ef4444;--warning: #f59e0b;--info: #6366f1;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--radius: 8px;--shadow: 0 1px 3px rgba(0, 0, 0, .1), 0 1px 2px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--bg-primary: var(--gray-100);--bg-secondary: white;--bg-card: white;--text-primary: var(--gray-800);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--border-color: var(--gray-200)}[data-theme=dark]{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-card: #1e293b;--text-primary: #f1f5f9;--text-secondary: #cbd5e1;--text-muted: #94a3b8;--border-color: #334155;--gray-50: #1e293b;--gray-100: #0f172a;--gray-200: #334155;--gray-300: #475569;--gray-400: #64748b;--gray-500: #94a3b8;--gray-600: #475569;--gray-700: #334155;--gray-800: #f1f5f9;--gray-900: #f8fafc;--shadow: 0 1px 3px rgba(0, 0, 0, .3), 0 1px 2px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -2px rgba(0, 0, 0, .2)}[data-theme=dark] body{background-color:var(--bg-primary);color:var(--text-primary)}[data-theme=dark] .main-content{background:var(--bg-primary)}[data-theme=dark] .header{background:var(--bg-card);border-bottom:1px solid var(--border-color)}[data-theme=dark] .header h1{color:var(--text-primary)}[data-theme=dark] .card{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .card-header{border-bottom-color:var(--border-color)}[data-theme=dark] .card-header h3{color:var(--text-primary)}[data-theme=dark] .stat-card{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .stat-card .label{color:var(--text-muted)}[data-theme=dark] .stat-card .value{color:var(--text-primary)}[data-theme=dark] .summary-card{background:var(--bg-card);border:1px solid var(--border-color)}[data-theme=dark] .summary-card h4{color:var(--text-muted)}[data-theme=dark] .nav-tabs{background:var(--bg-card);border:1px solid var(--border-color);scrollbar-color:var(--gray-400) transparent}[data-theme=dark] .nav-tabs::-webkit-scrollbar-thumb{background:var(--gray-400)}[data-theme=dark] .nav-tabs:after{background:linear-gradient(to right,transparent,var(--bg-card))}[data-theme=dark] .nav-tab{color:var(--text-secondary)}[data-theme=dark] .nav-tab:hover{background:var(--gray-200);color:var(--text-primary)}[data-theme=dark] .data-table th{color:var(--text-muted);border-bottom-color:var(--border-color)}[data-theme=dark] .data-table td{border-bottom-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .data-table tr:hover{background:var(--gray-200)}[data-theme=dark] .btn-outline{border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .btn-outline:hover{background:var(--gray-200)}[data-theme=dark] .btn-secondary{background:var(--gray-200);color:var(--text-primary)}[data-theme=dark] input[type=text],[data-theme=dark] input[type=number],[data-theme=dark] select{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .indicator-item{border-bottom-color:var(--border-color)}[data-theme=dark] .indicator-name{color:var(--text-secondary)}[data-theme=dark] .indicator-value{color:var(--text-primary)}[data-theme=dark] .sidebar{background:#1e293b;color:#f1f5f9}[data-theme=dark] .sidebar-header{border-bottom-color:#334155}[data-theme=dark] .sidebar-section h3{color:#94a3b8}[data-theme=dark] .sidebar .form-group label{color:#cbd5e1}[data-theme=dark] .sidebar input,[data-theme=dark] .sidebar select{background:#334155;border-color:#475569;color:#f1f5f9}[data-theme=dark] .intervention-card{background:#334155!important;border:1px solid #475569}[data-theme=dark] .intervention-card .header{background:transparent}[data-theme=dark] .intervention-card .name{color:#f1f5f9!important}[data-theme=dark] .intervention-card .toggle{background:#475569!important}[data-theme=dark] .intervention-card .toggle.active{background:var(--primary)!important}[data-theme=dark] .intervention-card .params{color:#cbd5e1}[data-theme=dark] .intervention-card .btn-sm{border-color:#475569;color:#cbd5e1}[data-theme=dark] .intervention-card .btn-sm:hover{background:#475569}[data-theme=dark] .preset-btn{background:#334155;border-color:#475569}[data-theme=dark] .preset-btn:hover{background:#475569;border-color:#64748b}[data-theme=dark] .preset-btn .title{color:#f1f5f9}[data-theme=dark] .preset-btn .desc{color:#94a3b8}[data-theme=dark] #interventionModal>div{background:#1e293b;color:#f1f5f9}[data-theme=dark] #interventionModal label{color:#cbd5e1}[data-theme=dark] #interventionModal select,[data-theme=dark] #interventionModal input{background:#334155;border-color:#475569;color:#f1f5f9}.theme-toggle{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);padding:8px 12px;border-radius:6px;cursor:pointer;font-size:1rem;display:flex;align-items:center;gap:6px;transition:all .2s}.theme-toggle:hover{background:var(--gray-100);border-color:var(--gray-300)}[data-theme=dark] .theme-toggle{border-color:var(--border-color);color:var(--text-secondary)}[data-theme=dark] .theme-toggle:hover{background:var(--gray-200)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:var(--gray-100);color:var(--gray-800);line-height:1.6}.app-container{display:flex;min-height:100vh}.sidebar{width:320px;background:var(--gray-800);color:#fff;padding:20px;position:fixed;height:100vh;overflow-y:auto;display:flex;flex-direction:column}.main-content{flex:1;margin-left:320px;padding:24px}.header{background:#fff;padding:20px 24px;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;display:flex;justify-content:space-between;align-items:center}.header h1{font-size:1.5rem;font-weight:700;color:var(--gray-900)}.header-actions{display:flex;gap:12px}.sidebar-header{margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--gray-600)}.sidebar-header h2{font-size:1.25rem;font-weight:600}.sidebar-section{margin-bottom:24px}.sidebar-section h3{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-400);margin-bottom:12px}.nav-tabs-container{position:relative;margin-bottom:24px}.nav-tabs{display:flex;gap:8px;background:#fff;padding:8px;border-radius:var(--radius);box-shadow:var(--shadow);overflow-x:auto;scrollbar-width:thin;scrollbar-color:var(--gray-300) transparent;-webkit-overflow-scrolling:touch;scroll-behavior:smooth}.nav-tabs::-webkit-scrollbar{height:6px}.nav-tabs::-webkit-scrollbar-track{background:transparent}.nav-tabs::-webkit-scrollbar-thumb{background:var(--gray-300);border-radius:3px}.nav-tabs:after{content:"";position:absolute;right:0;top:0;bottom:0;width:40px;background:linear-gradient(to right,transparent,white);pointer-events:none;opacity:0;transition:opacity .3s}.nav-tabs.can-scroll-right:after{opacity:1}.nav-tab{padding:10px 20px;border:none;background:transparent;color:var(--gray-600);font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s;white-space:nowrap;flex-shrink:0}.nav-tab:hover{background:var(--gray-100);color:var(--gray-900)}.nav-tab.active{background:var(--primary);color:#fff}.nav-more-dropdown{position:relative}.nav-more-btn{padding:10px 16px;border:none;background:var(--gray-200);color:var(--gray-600);font-weight:500;cursor:pointer;border-radius:6px;display:flex;align-items:center;gap:6px;white-space:nowrap;flex-shrink:0}.nav-more-btn:hover{background:var(--gray-300)}.nav-more-menu{position:absolute;right:0;top:100%;margin-top:4px;background:var(--bg-card);border:1px solid var(--border-color);border-radius:var(--radius);box-shadow:var(--shadow-lg);min-width:200px;z-index:100;display:none}.nav-more-menu.open{display:block}.nav-more-menu .nav-tab{display:block;width:100%;text-align:left;border-radius:0}.nav-more-menu .nav-tab:first-child{border-radius:var(--radius) var(--radius) 0 0}.nav-more-menu .nav-tab:last-child{border-radius:0 0 var(--radius) var(--radius)}[data-theme=dark] .nav-more-btn{background:var(--gray-200);color:var(--text-secondary)}[data-theme=dark] .nav-more-btn:hover{background:var(--gray-300)}[data-theme=dark] .nav-more-menu{background:var(--bg-card);border-color:var(--border-color)}.card{background:#fff;border-radius:var(--radius);box-shadow:var(--shadow);padding:20px;margin-bottom:20px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-200)}.card-header h3{font-size:1rem;font-weight:600;color:var(--gray-900)}.card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.stat-card{background:#fff;border-radius:var(--radius);padding:20px;box-shadow:var(--shadow)}.stat-card .label{font-size:.875rem;color:var(--gray-500);margin-bottom:4px}.stat-card .value{font-size:1.75rem;font-weight:700;color:var(--gray-900)}.stat-card .change{font-size:.875rem;margin-top:4px}.stat-card .change.positive{color:var(--secondary)}.stat-card .change.negative{color:var(--danger)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:.875rem;font-weight:500;color:var(--gray-300);margin-bottom:6px}.sidebar .form-group label{color:var(--gray-300)}input[type=text],input[type=number],select{width:100%;padding:10px 12px;border:1px solid var(--gray-300);border-radius:6px;font-size:.875rem;transition:border-color .2s,box-shadow .2s}input:focus,select:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f61a}.sidebar input,.sidebar select{background:var(--gray-700);border-color:var(--gray-600);color:#fff}.sidebar input:focus,.sidebar select:focus{border-color:var(--primary)}input[type=range]{width:100%;height:6px;background:var(--gray-600);border-radius:3px;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:18px;height:18px;background:var(--primary);border-radius:50%;cursor:pointer}.range-value{text-align:right;font-size:.875rem;color:var(--gray-400);margin-top:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:6px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--gray-200);color:var(--gray-700)}.btn-secondary:hover{background:var(--gray-300)}.btn-success{background:var(--secondary);color:#fff}.btn-success:hover{background:var(--secondary-dark)}.btn-danger{background:var(--danger);color:#fff}.btn-outline{background:transparent;border:1px solid var(--gray-300);color:var(--gray-700)}.btn-outline:hover{background:var(--gray-100)}.btn-block{width:100%}.btn-sm{padding:6px 12px;font-size:.75rem}.btn-lg{padding:14px 28px;font-size:1rem}.chart-container{position:relative;height:300px;margin-bottom:20px}.chart-container.large{height:400px}.chart-container.small{height:200px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:12px;text-align:left;border-bottom:1px solid var(--gray-200)}.data-table th{font-weight:600;color:var(--gray-600);font-size:.75rem;text-transform:uppercase;letter-spacing:.05em}.data-table tr:hover{background:var(--gray-50)}.tag{display:inline-block;padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:500}.tag-high{background:#ef44441a;color:var(--danger)}.tag-medium{background:#f59e0b1a;color:var(--warning)}.tag-low{background:#10b9811a;color:var(--secondary)}.progress-bar{height:8px;background:var(--gray-200);border-radius:4px;overflow:hidden}.progress-bar .fill{height:100%;background:var(--primary);transition:width .3s ease}.intervention-card{background:var(--gray-700);border-radius:6px;padding:12px;margin-bottom:8px}.intervention-card .header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.intervention-card .name{font-weight:500;font-size:.875rem}.intervention-card .toggle{width:36px;height:20px;background:var(--gray-600);border-radius:10px;position:relative;cursor:pointer;transition:background .2s}.intervention-card .toggle.active{background:var(--primary)}.intervention-card .toggle:after{content:"";position:absolute;width:16px;height:16px;background:#fff;border-radius:50%;top:2px;left:2px;transition:transform .2s}.intervention-card .toggle.active:after{transform:translate(16px)}.intervention-card-footer{display:flex;justify-content:space-between;align-items:center}.intervention-card .category{font-size:.75rem;color:var(--gray-400);text-transform:capitalize}.intervention-card .remove-btn{padding:4px 8px;background:var(--gray-600);border:none;font-size:.75rem}[data-theme=dark] .intervention-card .category{color:#94a3b8}[data-theme=dark] .intervention-card .remove-btn{background:#475569;color:#f1f5f9}[data-theme=dark] .intervention-card .remove-btn:hover{background:#64748b}.no-interventions-message{font-size:.875rem;color:var(--gray-400)}[data-theme=dark] .no-interventions-message{color:#94a3b8}.preset-btn{display:block;width:100%;text-align:left;padding:12px;background:var(--gray-700);border:1px solid transparent;border-radius:6px;color:#fff;cursor:pointer;margin-bottom:8px;transition:all .2s}.preset-btn:hover{background:var(--gray-600);border-color:var(--primary)}.preset-btn .title{font-weight:500;margin-bottom:4px}.preset-btn .desc{font-size:.75rem;color:var(--gray-400)}.summary-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.summary-card{background:#fff;padding:16px;border-radius:var(--radius);box-shadow:var(--shadow)}.summary-card h4{font-size:.75rem;color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.stat-change{font-size:1.25rem;font-weight:600}.stat-change.positive{color:var(--secondary)}.stat-change.negative{color:var(--danger)}.stat-change span{display:block;font-size:.75rem;font-weight:400;color:var(--gray-500)}.stat-value{font-size:1.25rem;font-weight:600;color:var(--gray-900)}.indicator-list{max-height:400px;overflow-y:auto}.indicator-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid var(--gray-100)}.indicator-item:last-child{border-bottom:none}.indicator-name{font-weight:500;color:var(--gray-800)}.indicator-value{font-weight:600;color:var(--gray-900)}.indicator-source{font-size:.75rem;color:var(--gray-400)}.section{display:none}.section.active{display:block}.loading{display:flex;align-items:center;justify-content:center;padding:40px;color:var(--gray-500)}.spinner{width:32px;height:32px;border:3px solid var(--gray-200);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin-right:12px}@keyframes spin{to{transform:rotate(360deg)}}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:100%;left:50%;transform:translate(-50%);background:var(--gray-900);color:#fff;padding:6px 10px;border-radius:4px;font-size:.75rem;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s}[data-tooltip]:hover:after{opacity:1;visibility:visible}@media (max-width: 1200px){.summary-grid{grid-template-columns:repeat(2,1fr)}}.mobile-menu-toggle{display:none;background:var(--primary);border:none;color:#fff;padding:10px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;line-height:1;align-items:center;gap:8px;font-weight:500;box-shadow:0 2px 8px #3b82f64d;transition:all .2s}.mobile-menu-toggle .menu-icon{font-size:1.1rem}.mobile-menu-toggle .menu-label{font-size:.875rem}.mobile-menu-toggle:hover{background:var(--primary-dark);transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.mobile-menu-toggle:active{transform:translateY(0)}.mobile-fab{display:none;position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:var(--primary);color:#fff;border:none;box-shadow:0 4px 16px #3b82f666;cursor:pointer;z-index:900;font-size:1.5rem;transition:all .2s}.mobile-fab:hover{transform:scale(1.1);box-shadow:0 6px 20px #3b82f680}.mobile-fab:active{transform:scale(.95)}@media (max-width: 1024px){.sidebar{width:280px}.main-content{margin-left:280px;padding:16px}.nav-tabs{flex-wrap:wrap}.nav-tab{padding:8px 14px;font-size:.8rem}}@media (max-width: 768px){.mobile-menu-toggle{display:flex}.mobile-fab{display:flex;align-items:center;justify-content:center}.sidebar{position:fixed;width:85%;max-width:320px;height:100vh;left:-100%;top:0;z-index:1000;transition:left .3s ease;overflow-y:auto}.sidebar.open{left:0}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;z-index:999}.sidebar-overlay.active{display:block}.sidebar-close{display:block;position:absolute;top:16px;right:16px;background:var(--gray-600);border:none;color:#fff;width:32px;height:32px;border-radius:50%;cursor:pointer;font-size:1.25rem;line-height:1}.sidebar-close:hover{background:var(--gray-500)}.main-content{margin-left:0;padding:12px}.app-container{flex-direction:column}.header{flex-direction:row;gap:12px;padding:12px 16px}.header h1{font-size:1rem;flex:1}.header-actions{gap:8px;flex-wrap:wrap}.header-actions .btn{padding:8px 12px;font-size:.75rem}.nav-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;padding:6px;gap:4px;margin-bottom:16px}.nav-tab{padding:10px 14px;font-size:.8rem;white-space:nowrap;flex-shrink:0}.summary-grid,.stats-grid{grid-template-columns:1fr;gap:12px}.card-grid{grid-template-columns:1fr;gap:16px}.card{padding:16px;margin-bottom:16px}.stat-card{padding:16px}.stat-card .value{font-size:1.5rem}.summary-card{padding:14px}.stat-change{font-size:1.1rem}.data-table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.data-table th,.data-table td{padding:10px 8px;font-size:.8rem;white-space:nowrap}.comparison-table{font-size:.75rem}.comparison-table th,.comparison-table td{padding:8px 6px}.chart-container{height:250px}.chart-container.large{height:300px}.chart-container.small{height:180px}.form-group{margin-bottom:14px}.btn{padding:12px 18px;font-size:.9rem;min-height:44px}.btn-sm{padding:10px 14px;font-size:.8rem;min-height:40px}.btn-lg{padding:14px 24px;font-size:1rem}.intervention-card{padding:14px}.intervention-card .toggle{width:44px;height:24px}.intervention-card .toggle:after{width:20px;height:20px}.intervention-card .toggle.active:after{transform:translate(20px)}input[type=text],input[type=number],select{padding:12px 14px;font-size:1rem;min-height:44px}input[type=range]{height:8px}input[type=range]::-webkit-slider-thumb{width:24px;height:24px}.loading{padding:24px}.indicator-list{max-height:300px}.indicator-item{padding:10px 0;flex-wrap:wrap;gap:4px}.indicator-name{width:100%;font-size:.9rem}.indicator-value{font-size:.9rem}}@media (max-width: 480px){.header h1{font-size:.9rem}.header-actions .btn{padding:6px 10px;font-size:.7rem}#shareBtn .btn-text{display:none}.nav-tab{padding:8px 10px;font-size:.75rem}.stat-card .value{font-size:1.25rem}.summary-card h4{font-size:.7rem}.stat-change{font-size:1rem}.card-header{flex-direction:column;align-items:flex-start;gap:8px}.chart-container{height:200px}.chart-container.large{height:250px}}@media print{.sidebar{display:none}.main-content{margin-left:0}.btn{display:none}}.fade-in{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-10px)}}.collapsible-header{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:12px 0}.collapsible-header:after{content:"▼";font-size:.75rem;transition:transform .2s}.collapsible-header.collapsed:after{transform:rotate(-90deg)}.collapsible-content{overflow:hidden;transition:max-height .3s ease}.collapsible-content.collapsed{max-height:0}body{background-color:var(--gray-100)!important;color:var(--gray-800)!important}.main-content{background:var(--gray-100)!important}.comparison-container{animation:fadeIn .3s ease}.comparison-metrics{display:flex;flex-direction:column;gap:8px}.comparison-metrics .metric-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid var(--gray-100)}.comparison-metrics .metric-row:last-child{border-bottom:none}.comparison-metrics .metric-label{font-size:.875rem;color:var(--gray-600)}.comparison-metrics .metric-value{font-weight:600;color:var(--gray-900)}.comparison-table th,.comparison-table td{text-align:center;padding:10px 12px}.comparison-table th:first-child,.comparison-table td:first-child{text-align:left}.comparison-table tbody tr:nth-child(2n){background:var(--gray-50)}.comparison-table tbody tr:hover{background:#3b82f60d}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:disabled:hover{opacity:.5}.timeline-player{padding:24px;background:var(--bg-card);border-radius:var(--radius)}.timeline-controls-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--gray-200)}.timeline-controls{display:flex;align-items:center;gap:12px}.timeline-speed-control{display:flex;align-items:center;gap:8px;font-size:.875rem;color:var(--text-muted)}.timeline-date-display{text-align:center;padding-top:20px;border-top:1px solid var(--gray-200);margin-top:8px}.timeline-date-value{font-size:1.75rem;font-weight:700;color:var(--primary);transition:transform .3s ease,color .3s ease}.timeline-year-animate{animation:yearPulse .3s ease}@keyframes yearPulse{0%{transform:scale(1)}50%{transform:scale(1.1);color:var(--secondary)}to{transform:scale(1)}}.timeline-btn{width:36px;height:36px;border-radius:50%;border:2px solid var(--gray-300);background:var(--bg-card);color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.875rem;transition:all .2s ease}.timeline-btn:hover{border-color:var(--primary);color:var(--primary);background:#3b82f61a}.timeline-btn-play{width:44px;height:44px;background:var(--primary);border-color:var(--primary);color:#fff;font-size:1rem}.timeline-btn-play:hover{background:var(--primary-dark);border-color:var(--primary-dark);color:#fff}.timeline-btn-play.playing{background:var(--secondary);border-color:var(--secondary)}.timeline-speed-select{padding:6px 12px;border-radius:4px;border:1px solid var(--gray-300);background:var(--bg-card);color:var(--text-primary);cursor:pointer;font-size:.875rem;margin-left:8px}.timeline-scrubber{margin-top:24px;margin-bottom:0;padding:0 10px}.timeline-track{position:relative;display:flex;justify-content:space-between;padding-top:8px;padding-bottom:8px}.timeline-track-line{position:absolute;top:12px;left:0;right:0;height:4px;background:var(--gray-200);border-radius:2px;z-index:0}.timeline-track-progress{position:absolute;top:12px;left:0;height:4px;background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:2px;z-index:1;transition:width .3s ease}.timeline-tick{position:relative;z-index:2;cursor:pointer;display:flex;flex-direction:column;align-items:center;padding:0 1px}.timeline-tick-dot{width:10px;height:10px;border-radius:50%;background:var(--gray-300);border:2px solid var(--bg-card);transition:all .2s ease}.timeline-tick:hover .timeline-tick-dot{background:var(--primary);transform:scale(1.2)}.timeline-tick.active .timeline-tick-dot{background:var(--primary)}.timeline-tick.current .timeline-tick-dot{background:var(--secondary);transform:scale(1.4);box-shadow:0 0 0 4px #10b9814d}.timeline-labels{display:flex;justify-content:space-between;margin-top:8px;font-size:.75rem;color:var(--text-muted)}.timeline-tick-label{position:absolute;top:20px;font-size:.625rem;color:var(--text-muted);white-space:nowrap}.timeline-charts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.timeline-chart-card{background:var(--gray-50);border-radius:var(--radius);padding:16px;transition:transform .2s ease,box-shadow .2s ease}.timeline-chart-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.timeline-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.timeline-chart-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.timeline-chart-value{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums}.timeline-chart-container{height:80px;position:relative}.timeline-chart-canvas{width:100%;height:100%}[data-theme=dark] .timeline-controls-bar{border-bottom-color:var(--border-color)}[data-theme=dark] .timeline-date-display{border-top-color:var(--border-color)}[data-theme=dark] .timeline-track-line{background:var(--gray-200)}[data-theme=dark] .timeline-tick-dot{background:var(--gray-300);border-color:var(--bg-card)}[data-theme=dark] .timeline-chart-card{background:var(--gray-200)}[data-theme=dark] .timeline-speed-select{background:var(--bg-secondary);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .timeline-btn{border-color:var(--border-color);background:var(--bg-card);color:var(--text-primary)}[data-theme=dark] .timeline-speed-control label{color:var(--text-muted)}@media (max-width: 768px){.timeline-controls-bar{flex-direction:column;gap:12px;align-items:flex-start}.timeline-date-value{font-size:1.5rem}.timeline-charts-grid{grid-template-columns:1fr}.timeline-chart-container{height:60px}}@media (max-width: 480px){.timeline-player{padding:16px}.timeline-controls{flex-wrap:wrap;justify-content:center}.timeline-btn{width:32px;height:32px;font-size:.75rem}.timeline-btn-play{width:40px;height:40px}.timeline-chart-value{font-size:1rem}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.modal-content{background:var(--bg-card);border-radius:12px;padding:24px;box-shadow:0 25px 50px -12px #00000040;border:1px solid var(--border-color);width:100%;animation:modalSlideIn .2s ease-out}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-content h3{color:var(--text-primary);margin:0 0 16px;font-size:1.25rem}.modal-content p{color:var(--text-secondary)}.modal-content .form-group{margin-bottom:16px}.modal-content .form-group label{display:block;margin-bottom:6px;font-size:.875rem;color:var(--text-secondary)}.modal-content .form-group input{width:100%;padding:10px 12px;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-secondary);color:var(--text-primary);font-size:1rem}.modal-content .form-group input:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #3b82f633}[data-theme=dark] .modal-overlay{background:#000000bf}[data-theme=dark] .modal-content{background:#1e293b;border-color:#334155}[data-theme=dark] .modal-content .stat-box{background:#0f172a!important}[data-theme=dark] .modal-content #trainingMessage{background:#0f172a;color:var(--text-secondary)}#aiResultsModal .modal-content{max-height:85vh;display:flex;flex-direction:column}.ai-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 0 16px;margin-bottom:16px;position:sticky;top:0;background:var(--bg-card);z-index:10;border-bottom:1px solid var(--border-color);margin-top:-24px}.ai-modal-header h3{margin:0;color:var(--text-primary)}.ai-modal-footer{position:sticky;bottom:0;background:linear-gradient(to top,var(--bg-card) 70%,transparent);padding:24px 0 8px;margin-top:24px;text-align:center;z-index:10}.ai-modal-footer .btn{min-width:200px;box-shadow:0 4px 12px #00000026}[data-theme=dark] .ai-modal-header{background:var(--bg-card)}[data-theme=dark] .ai-modal-footer{background:linear-gradient(to top,var(--bg-card) 70%,transparent)}#aiResultsContent{color:var(--text-primary)}#aiResultsContent h4{color:var(--text-primary);margin:20px 0 12px;font-size:1.1rem;border-bottom:1px solid var(--border-color);padding-bottom:8px}#aiResultsContent ul{margin:0;padding-left:20px}#aiResultsContent li{margin-bottom:8px;color:var(--text-secondary);line-height:1.5}@media (max-width: 768px){.modal-overlay{padding:12px}.modal-content{padding:16px;max-height:90vh;overflow-y:auto}#aiResultsModal .modal-content{max-width:100%!important}#skillsGapContent>div:first-child{grid-template-columns:1fr!important;gap:16px!important}#demographicsContent>div>div{flex-wrap:wrap}}[data-theme=dark] #demographicsCard .indicator-item,[data-theme=dark] #skillsGapCard .indicator-item{background:var(--gray-700)}[data-theme=dark] #skillsGapContent div[style*="rgba(239, 68, 68"]{background:#ef444426!important}[data-theme=dark] #skillsGapContent div[style*="rgba(16, 185, 129"]{background:#10b98126!important}[data-theme=dark] #demographicsContent div[style*="rgba(239, 68, 68"]{background:#ef444426!important}.ai-analysis-inline,.ai-analysis{max-width:100%;overflow-x:hidden;word-wrap:break-word}.ai-analysis-inline p,.ai-analysis p{word-wrap:break-word;overflow-wrap:break-word;max-width:100%}.ai-analysis-inline .analysis-section,.ai-analysis .analysis-section{max-width:100%;overflow:hidden}.ai-findings-grid{display:grid;gap:12px}.ai-finding-card{padding:12px;background:var(--gray-50);border-radius:8px;border-left:4px solid var(--gray-300)}.ai-finding-meta{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px;font-size:.75rem;color:var(--gray-500)}.ai-workforce-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ai-workforce-card{padding:16px;background:var(--gray-50);border-radius:8px}.ai-skills-list{display:flex;flex-wrap:wrap;gap:8px}.ai-skill-tag{padding:4px 12px;background:var(--secondary);color:#fff;border-radius:16px;font-size:.75rem}.ai-policy-grid{display:grid;gap:12px}.ai-policy-card{display:flex;gap:12px;padding:12px;background:var(--gray-50);border-radius:8px}.ai-policy-priority{flex-shrink:0;width:80px;text-align:center}.ai-priority-badge{display:inline-block;padding:4px 8px;color:#fff;border-radius:4px;font-size:.625rem;text-transform:uppercase}.ai-policy-content{flex:1;min-width:0}.ai-scenarios-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ai-scenario-card{padding:16px;border-radius:8px;border-left:4px solid}.ai-scenario-card h5{font-size:.75rem;text-transform:uppercase;margin-bottom:8px}.ai-scenario-optimistic{background:#ecfdf5;border-left-color:var(--secondary)}.ai-scenario-optimistic h5{color:var(--secondary)}.ai-scenario-likely{background:#fef3c7;border-left-color:var(--warning)}.ai-scenario-likely h5{color:var(--warning)}.ai-scenario-pessimistic{background:#fef2f2;border-left-color:var(--danger)}.ai-scenario-pessimistic h5{color:var(--danger)}.ai-narrative-box{padding:20px;background:var(--gray-50);border-radius:8px;line-height:1.8}.ai-confidence-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:16px;background:var(--gray-100);border-radius:8px}.ai-confidence-badge{padding:6px 16px;color:#fff;border-radius:16px;font-weight:700;text-transform:uppercase}@media (max-width: 900px){.ai-workforce-grid,.ai-scenarios-grid{grid-template-columns:1fr}}@media (max-width: 768px){.ai-policy-card{flex-direction:column}.ai-policy-priority{width:100%;text-align:left}.ai-analysis-inline,.ai-analysis{font-size:.9rem}.ai-finding-meta{flex-direction:column;gap:4px}}@media (max-width: 480px){.ai-analysis-inline h4,.ai-analysis h4{font-size:1rem}.ai-analysis-inline p,.ai-analysis p{font-size:.875rem;line-height:1.5}.ai-skill-tag{font-size:.7rem;padding:3px 10px}}.main-content,.section{overflow-x:hidden;max-width:100%}@media (max-width: 900px){.nav-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.nav-tabs::-webkit-scrollbar{display:none}.header>div:last-child{flex-wrap:wrap;gap:8px}}.sector-weights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.sector-weight-item{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);padding:12px 16px}.sector-weight-item .sector-name{font-weight:500;font-size:.9rem;margin-bottom:8px;color:var(--text-primary)}.sector-weight-item .weight-slider-row{display:flex;align-items:center;gap:12px}.sector-weight-item input[type=range]{flex:1;height:6px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--gray-300);border-radius:3px;outline:none}.sector-weight-item input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:var(--primary);cursor:pointer;transition:transform .1s ease}.sector-weight-item input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.2)}.sector-weight-item .weight-value{min-width:40px;font-weight:600;font-size:.85rem;text-align:right;color:var(--primary)}[data-theme=dark] .sector-weight-item{background:var(--gray-800)}[data-theme=dark] .sector-weight-item input[type=range]{background:var(--gray-600)}.abm-log-panel{background:var(--gray-900);border:1px solid var(--gray-700);border-radius:6px;max-height:200px;overflow-y:auto;font-family:Monaco,Menlo,monospace;font-size:.75rem;padding:12px}.abm-log-panel::-webkit-scrollbar{width:6px}.abm-log-panel::-webkit-scrollbar-thumb{background:var(--gray-600);border-radius:3px}.log-entry{padding:4px 0;border-bottom:1px solid var(--gray-800);color:var(--gray-400);display:flex;gap:8px}.log-entry:last-child{border-bottom:none}.log-entry .log-time{color:var(--gray-500);min-width:60px}.log-entry.log-info{color:var(--gray-400)}.log-entry.log-success{color:#10b981}.log-entry.log-warning{color:#f59e0b}.log-entry.log-error{color:#ef4444}.log-entry.log-milestone{color:#8b5cf6;font-weight:500}[data-theme=light] .abm-log-panel{background:#1e293b}.abm-spinner-paused{animation:none!important;border-top-color:var(--warning)!important}
