:root{--bg-primary:#0a0e17;--bg-secondary:#111827;--bg-tertiary:#1e293b;--bg-hover:#253348;--border-color:#1e293b;--border-light:#334155;--text-primary:#e2e8f0;--text-secondary:#94a3b8;--text-muted:#64748b;--accent-blue:#3b82f6;--accent-blue-hover:#2563eb;--accent-blue-bg:#3b82f61a;--positive:#10b981;--positive-bg:#10b9811a;--negative:#ef4444;--negative-bg:#ef44441a;--bull:#ef4444;--bull-bg:#ef44441a;--bear:#10b981;--bear-bg:#10b9811a;--warning:#f59e0b;--cooldown:#3b82f6;--cooldown-bg:#3b82f626;--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"SF Mono", "Fira Code", "Fira Mono", "Roboto Mono", "Consolas", monospace;--sidebar-width:240px;--header-height:56px;--radius:8px;--radius-sm:4px;--transition:.15s ease}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}body{font-family:var(--font-sans);background-color:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.5}#root{min-height:100vh}a{color:var(--accent-blue);text-decoration:none}a:hover{text-decoration:underline}h1{color:var(--text-primary);letter-spacing:-.025em;font-size:1.75rem;font-weight:600}h2{color:var(--text-primary);font-size:1.125rem;font-weight:600}.mono{font-family:var(--font-mono);font-size:.85rem}.ticker{color:var(--text-primary);font-weight:700;font-family:var(--font-mono);letter-spacing:.05em}.positive{color:var(--bull)!important}.negative{color:var(--bear)!important}.text-right{text-align:right}.capitalize{text-transform:capitalize}.layout{min-height:100vh;display:flex}.sidebar-overlay{z-index:40;background:#00000080;display:none;position:fixed;inset:0}.sidebar{width:var(--sidebar-width);background-color:var(--bg-secondary);border-right:1px solid var(--border-color);z-index:50;transition:transform var(--transition);flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:0}.sidebar-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.sidebar-logo{align-items:center;gap:10px;display:flex}.logo-icon{background:linear-gradient(135deg, var(--positive), #059669);color:#fff;border-radius:8px;justify-content:center;align-items:center;width:32px;height:32px;font-size:1.25rem;font-weight:800;display:flex}.logo-text{color:var(--text-primary);font-size:1.1rem;font-weight:700}.sidebar-close{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;display:none}.sidebar-nav{flex-direction:column;flex:1;gap:2px;padding:12px 8px;display:flex}.nav-link{border-radius:var(--radius);color:var(--text-secondary);transition:all var(--transition);align-items:center;gap:12px;padding:10px 16px;font-size:.9rem;font-weight:500;text-decoration:none;display:flex}.nav-link:hover{color:var(--text-primary);background-color:var(--bg-hover);text-decoration:none}.nav-link.active{color:var(--accent-blue);background-color:var(--accent-blue-bg)}.sidebar-footer{border-top:1px solid var(--border-color);margin-top:auto;padding:12px 16px;position:relative}.user-menu{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);z-index:100;margin-bottom:4px;position:absolute;bottom:100%;left:8px;right:8px;overflow:hidden;box-shadow:0 -4px 16px #0003}.user-menu-backdrop{z-index:99;position:fixed;inset:0}.user-menu-item{width:100%;color:var(--text-secondary);cursor:pointer;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-size:.85rem;transition:all .15s;display:flex}.user-menu-item:hover{background-color:var(--bg-hover);color:var(--text-primary)}.user-menu-item.has-submenu{justify-content:space-between}.user-menu-item.has-submenu>span{flex:1}.submenu-chevron{color:var(--text-muted);margin-left:auto;transition:transform .15s}.submenu-chevron.open{transform:rotate(90deg)}.user-menu-item.logout:hover{color:var(--negative);background-color:#ef44441a}.language-submenu{border-top:1px solid var(--border-color);background:var(--bg-tertiary)}.language-option{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;padding:8px 14px 8px 24px;font-size:.85rem;transition:all .15s;display:flex}.language-option:hover{background-color:var(--bg-hover);color:var(--text-primary)}.language-option.active{color:var(--accent-blue)}.language-option.active svg{margin-left:-6px}.sidebar-user{cursor:pointer;border-radius:var(--radius);align-items:center;gap:10px;padding:4px 8px;transition:background-color .15s;display:flex}.sidebar-user:hover{background-color:var(--bg-hover)}.user-chevron{color:var(--text-muted);transition:transform .15s}.sidebar-user:hover .user-chevron{color:var(--text-secondary)}.user-avatar{background:var(--bg-tertiary);width:32px;height:32px;color:var(--accent-blue);border:1px solid var(--border-light);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:600;display:flex}.user-name{color:var(--text-secondary);font-size:.85rem}.main-content{margin-left:var(--sidebar-width);flex:1;min-height:100vh;padding:24px;position:relative;overflow-y:auto}.mobile-menu-btn{z-index:45;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);color:var(--text-secondary);cursor:pointer;padding:8px;line-height:0;display:none;position:fixed;top:16px;right:16px}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.page-header h1{margin-bottom:4px}.account-label{color:var(--text-muted);font-size:.85rem}.header-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);margin-bottom:20px;overflow:hidden}.card-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 20px;display:flex}.card-header h2{margin:0}.card-badge{color:var(--text-muted);background:var(--bg-tertiary);border-radius:12px;padding:2px 10px;font-size:.75rem}@media (width<=640px){.price-card-header{flex-direction:column;align-items:flex-start;gap:8px}}.stats-grid{grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px;display:grid}.stat-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius);align-items:flex-start;gap:14px;padding:20px;display:flex}.stat-icon{border-radius:var(--radius);background-color:var(--bg-tertiary);width:42px;height:42px;color:var(--text-muted);flex-shrink:0;justify-content:center;align-items:center;display:flex}.stat-icon.positive{background-color:var(--bull-bg);color:var(--bull)}.stat-icon.negative{background-color:var(--bear-bg);color:var(--bear)}.stat-content{flex-direction:column;gap:4px;display:flex}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.8rem}.stat-value{font-size:1.35rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);letter-spacing:-.025em}.stat-sub{color:var(--text-muted);font-size:.7rem;font-family:var(--font-mono);margin-top:2px}.table-container{overflow-x:auto}table{border-collapse:collapse;width:100%}th{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);text-align:left;background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color);white-space:nowrap;padding:10px 16px;font-size:.75rem;font-weight:600}td{border-bottom:1px solid var(--border-color);white-space:nowrap;padding:12px 16px;font-size:.875rem}tbody tr:hover{background-color:var(--bg-hover)}tbody tr:nth-child(2n){background-color:#1e293b4d}tbody tr:nth-child(2n):hover{background-color:var(--bg-hover)}.empty-row{text-align:center;color:var(--text-muted);font-style:italic;padding:32px 16px!important}.btn{border-radius:var(--radius);cursor:pointer;transition:all var(--transition);white-space:nowrap;font-size:.85rem;font-weight:500;font-family:var(--font-sans);border:1px solid #0000;align-items:center;gap:6px;padding:8px 16px;display:inline-flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--accent-blue);color:#fff;border-color:var(--accent-blue)}.btn-primary:hover:not(:disabled){background-color:var(--accent-blue-hover)}.btn-danger{background-color:var(--negative);color:#fff;border-color:var(--negative)}.btn-danger:hover:not(:disabled){background-color:#dc2626}.btn-ghost{color:var(--text-secondary);border-color:var(--border-light);background-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--bg-hover);color:var(--text-primary)}.btn-sm{padding:5px 10px;font-size:.8rem}.btn-full{justify-content:center;width:100%}.form-group{margin-bottom:16px}.form-group label{color:var(--text-secondary);margin-bottom:6px;font-size:.8rem;font-weight:500;display:block}input[type=text],input[type=password],input[type=email],input[type=url],input[type=date],input[type=datetime-local],input[type=number],select,textarea{background-color:var(--bg-tertiary);border:1px solid var(--border-light);border-radius:var(--radius);width:100%;color:var(--text-primary);font-size:.875rem;font-family:var(--font-sans);transition:border-color var(--transition);padding:10px 12px}input[type=date],input[type=datetime-local]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}input[type=datetime-local]::-webkit-calendar-picker-indicator{filter:invert(.7);cursor:pointer}input:focus,select:focus,textarea:focus{border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-bg);outline:none}input::placeholder{color:var(--text-muted)}select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%2364748b' d='M6 8.825a.7.7 0 0 1-.5-.2L1.7 4.8a.68.68 0 0 1 0-1 .68.68 0 0 1 1 0L6 7.15l3.3-3.35a.68.68 0 0 1 1 0 .68.68 0 0 1 0 1L6.5 8.625a.7.7 0 0 1-.5.2Z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;padding-right:36px}select option{background:var(--bg-tertiary);color:var(--text-primary)}.checkbox-label{cursor:pointer;align-items:center;gap:8px;display:flex!important}.checkbox-label input[type=checkbox]{width:auto;accent-color:var(--accent-blue)}.form-inline{flex-wrap:wrap;align-items:flex-end;gap:16px;padding:16px 20px;display:flex}.form-inline .form-group{flex:1;min-width:160px;margin-bottom:0}.alert{border-radius:var(--radius);margin-bottom:16px;padding:12px 16px;font-size:.85rem}.alert-error{background-color:var(--negative-bg);color:var(--negative);border:1px solid #ef444440}.alert-success{background-color:var(--positive-bg);color:var(--positive);border:1px solid #22c55e40}.alert-warning{color:#fbbf24;background-color:#f59e0b1f;border:1px solid #f59e0b52}.alert-with-icon{align-items:flex-start;gap:10px;display:flex}.alert-with-icon svg{flex-shrink:0;margin-top:1px}.badge{text-transform:uppercase;letter-spacing:.05em;background-color:var(--bg-tertiary);color:var(--text-secondary);border-radius:12px;align-items:center;padding:3px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.badge-bull{background-color:var(--bull-bg);color:var(--bull)}.badge-bear{background-color:var(--bear-bg);color:var(--bear)}.badge-cooldown{background-color:var(--cooldown-bg);color:var(--cooldown)}.badge-neutral{color:#94a3b8;background-color:#94a3b826}.badge-info{color:#3b82f6;background-color:#3b82f626}.badge-warning{color:#f59e0b;background-color:#f59e0b26}.badge-ok{background-color:var(--positive-bg);color:var(--positive)}.badge-err{background-color:var(--negative-bg);color:var(--negative)}.auth-page{background-color:var(--bg-primary);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.auth-card{background-color:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:400px;padding:40px 32px}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{color:var(--positive);margin-bottom:8px;font-size:1.75rem;font-weight:800}.auth-subtitle{color:var(--text-muted);font-size:.9rem}.auth-form{margin-bottom:24px}.auth-footer{text-align:center;color:var(--text-muted);font-size:.85rem}.loading-container{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:60px 24px;display:flex}.loading-container.full-page{background-color:var(--bg-primary);min-height:100vh}.spinner{border:3px solid var(--border-light);border-top-color:var(--accent-blue);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:1s linear infinite spin}.empty-state{color:var(--text-muted);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:16px;padding:80px 24px;display:flex}.empty-state h2,.empty-state h3{color:var(--text-secondary);margin:0}.empty-state p{max-width:480px;line-height:1.6}.empty-state a{color:var(--accent-blue);text-decoration:underline}.account-selector select{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-color);cursor:pointer;border-radius:6px;outline:none;padding:6px 12px;font-size:13px}.account-selector select option{background:var(--bg-secondary);color:var(--text-primary)}.account-selector select:focus{border-color:var(--accent-blue)}.chart-container{padding:20px}.page-subtitle{color:var(--text-muted);margin:6px 0 0;font-size:.88rem}.macro-range-actions{flex-wrap:wrap;gap:4px;display:flex}.macro-method-note{background:var(--bg-secondary);color:var(--text-secondary);border-left:3px solid #64748b;border-radius:4px;margin:0 0 16px;padding:10px 14px;font-size:.8rem;line-height:1.5}.macro-history-note{margin-top:20px}.monitor-tabs{border-bottom:1px solid var(--border-color);gap:4px;margin:-5px 0 18px;display:flex}.monitor-tabs a{color:var(--text-muted);border-bottom:2px solid #0000;padding:8px 12px;font-size:.84rem;text-decoration:none}.monitor-tabs a.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue);font-weight:600}.industry-boundary{background:var(--bg-secondary);color:var(--text-secondary);border-left:3px solid #f59e0b;gap:11px;margin-bottom:18px;padding:13px 16px;font-size:.82rem;line-height:1.55;display:flex}.industry-boundary>svg{color:#f59e0b;flex:none;margin-top:2px}.industry-boundary strong,.industry-boundary span{display:block}.industry-boundary strong{color:var(--text-primary);margin-bottom:2px}.industry-health-strip{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-secondary);align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.8rem;display:flex}.industry-health-strip>div{gap:2px;display:grid}.industry-health-strip strong{color:var(--text-primary)}.industry-health-strip span{color:var(--text-secondary)}.industry-health-ok>svg{color:#22c55e}.industry-health-warning>svg{color:#f59e0b}.industry-health-error>svg,.industry-health-unknown>svg{color:#ef4444}.industry-health-summary{white-space:nowrap;margin-left:auto}.industry-health-strip details{color:var(--accent-blue);cursor:pointer;margin-left:5px;position:relative}.industry-health-sources{z-index:4;background:#172033;border:1px solid #475569;border-radius:6px;gap:8px;width:min(440px,80vw);max-height:320px;padding:11px;display:grid;position:absolute;top:24px;right:0;overflow-y:auto;box-shadow:0 10px 24px #00000047}.industry-health-sources div{color:#cbd5e1;border-bottom:1px solid #334155;gap:2px;padding-bottom:7px;display:grid}.industry-health-sources div:last-child{border-bottom:0;padding-bottom:0}.industry-health-sources strong{color:#e2e8f0}.industry-health-sources span{color:#94a3b8}.industry-health-sources small{color:#fbbf24;line-height:1.45}.industry-health-sources .health-error strong{color:#fca5a5}.industry-health-sources .health-warning strong{color:#fbbf24}.industry-update-status{background:var(--bg-secondary);color:var(--text-secondary);border-left:3px solid #64748b;border-radius:4px;gap:4px;margin:-6px 0 16px;padding:10px 14px;font-size:.78rem;display:grid}.industry-update-status strong{color:var(--text-primary)}.industry-update-running{border-left-color:#60a5fa}.industry-update-success{border-left-color:#22c55e}.industry-update-failed{border-left-color:#ef4444}.industry-update-status small{color:#fca5a5}.industry-update-status details{color:var(--accent-blue);cursor:pointer}.industry-update-status pre{color:#cbd5e1;white-space:pre-wrap;background:#172033;border-radius:4px;max-height:250px;margin:8px 0 0;padding:9px;font-size:.72rem;overflow:auto}.industry-chart-tooltip{min-width:250px}.industry-chart-tooltip .macro-tooltip-rows{max-height:220px;padding-right:2px;overflow-y:auto}.industry-chart-tooltip .macro-tooltip-rows strong{font-variant-numeric:tabular-nums}.industry-controls{flex-wrap:wrap;gap:18px 30px;margin-bottom:20px;padding:13px 18px;display:flex}.industry-controls>div{flex-wrap:wrap;align-items:center;gap:5px;display:flex}.industry-controls span{color:var(--text-muted);margin-right:4px;font-size:.78rem}.industry-current-card{margin-bottom:20px}.industry-table tr{cursor:pointer}.industry-table tr:hover,.industry-table .industry-selected-row{background:color-mix(in srgb, var(--accent-blue) 8%, transparent)}.industry-table td{font-size:.8rem}.industry-table td small{max-width:310px;color:var(--text-muted);white-space:normal;margin-top:2px;font-size:.72rem;display:block}.industry-ticker-button{color:var(--accent-blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0}.industry-asset-tag{background:color-mix(in srgb, var(--accent-blue) 13%, transparent);color:var(--text-secondary);white-space:nowrap;border-radius:999px;padding:2px 6px;font-size:.7rem;display:inline-block}.industry-asset-tag.cross{color:#2dd4bf;background:#14b8a629}.industry-z-hot,.industry-z-positive{color:#fb7185;font-variant-numeric:tabular-nums}.industry-z-cold,.industry-z-negative{color:#2dd4bf;font-variant-numeric:tabular-nums}.industry-z-positive,.industry-z-negative{opacity:.83}.industry-picker{grid-template-columns:170px 1fr;gap:16px;margin-bottom:20px;padding:14px 18px;display:grid}.industry-picker>div>strong,.industry-picker>div>span{display:block}.industry-picker>div>span{color:var(--text-muted);margin-top:4px;font-size:.75rem;line-height:1.4}.industry-picker-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;min-width:0;display:grid}.industry-picker-groups section{border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center;gap:5px;min-height:30px;margin:0;padding-bottom:7px;display:flex}.industry-picker-groups b{color:var(--text-muted);flex:0 0 70px;font-size:.74rem;font-weight:500}.industry-picker-groups button{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);font-family:var(--font-mono);cursor:pointer;border-radius:4px;padding:3px 7px;font-size:.74rem}.industry-picker-groups button.selected{border-color:var(--accent-blue);background:color-mix(in srgb, var(--accent-blue) 16%, transparent);color:var(--text-primary)}.industry-chart{min-height:290px}.industry-empty{min-height:260px;color:var(--text-muted);place-items:center;font-size:.85rem;display:grid}.industry-extremes{margin-top:20px}.industry-picker-actions{gap:5px;margin-top:9px;display:flex}.industry-picker-actions button{border:1px solid var(--border-color);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;padding:3px 5px;font-size:.7rem}.industry-heat-card,.industry-dispersion-card{margin-top:20px}.industry-inline-controls{flex-wrap:wrap;gap:4px;display:flex}.industry-card-lede{color:var(--text-secondary);margin:-6px 20px 14px;font-size:.78rem;line-height:1.5}.industry-heat-scroll{margin:0 20px;padding-bottom:8px;overflow:auto}.industry-heat{align-items:center;width:max-content;display:grid}.industry-heat-corner,.industry-heat-label{z-index:1;background:var(--bg-secondary);color:var(--text-secondary);font-family:var(--font-mono);padding:0 7px;font-size:.7rem;position:sticky;left:0}.industry-heat-corner{height:24px;color:var(--text-muted);align-items:end;display:flex}.industry-heat-label{height:17px;line-height:17px}.industry-heat-date{height:24px;color:var(--text-muted);font-family:var(--font-mono);transform-origin:0 100%;white-space:nowrap;font-size:.64rem;overflow:visible;transform:rotate(-55deg)}.industry-heat-cell{border-right:1px solid color-mix(in srgb, var(--border-color) 40%, transparent);width:12px;height:16px;margin:1px 0}.industry-heat-cell:hover{outline:1px solid var(--text-primary);outline-offset:-1px}.industry-heat-legend{color:var(--text-muted);align-items:center;gap:7px;margin:8px 20px 16px;font-size:.72rem;display:flex}.industry-heat-legend i{background:linear-gradient(90deg, #14b8a6, var(--bg-primary), #f43f5e);width:58px;height:8px}.industry-heat-legend small{margin-left:auto}.industry-dispersion-actions{flex-wrap:wrap;align-items:center;gap:5px;padding:0 20px;display:flex}.industry-dispersion-actions span{color:var(--text-muted);margin-left:8px;font-size:.73rem}.industry-table-toggle{border:0;border-top:1px solid var(--border-color);width:100%;color:var(--accent-blue);cursor:pointer;background:0 0;padding:10px 16px;font-size:.8rem;display:block}.industry-table-toggle:hover{background:color-mix(in srgb, var(--accent-blue) 7%, transparent)}.macro-health-strip{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-secondary);align-items:center;gap:10px;margin-bottom:16px;padding:10px 14px;font-size:.8rem;display:flex}.macro-health-strip>div{gap:2px;display:grid}.macro-health-strip strong{color:var(--text-primary)}.macro-health-strip span{color:var(--text-secondary)}.macro-health-ok>svg{color:#22c55e}.macro-health-warning>svg{color:#f59e0b}.macro-health-summary{white-space:nowrap;margin-left:auto}.macro-health-strip details{color:var(--accent-blue);cursor:pointer;margin-left:6px;position:relative}.macro-health-sources{z-index:3;color:#e2e8f0;background:#172033;border:1px solid #475569;border-radius:6px;min-width:260px;max-height:240px;padding:10px;display:grid;position:absolute;top:24px;right:0;overflow-y:auto;box-shadow:0 10px 24px #00000047}.macro-health-sources span{color:#e2e8f0;padding:3px 0}.macro-health-sources .health-warning,.macro-health-sources .health-error{color:#fbbf24}.macro-pipeline-card{margin-bottom:20px}.macro-pipeline-meta{background:var(--border-color);grid-template-columns:repeat(4,1fr);gap:1px;display:grid}.macro-pipeline-meta>div{background:var(--bg-secondary);padding:14px 20px}.macro-pipeline-meta span,.macro-pipeline-meta strong{display:block}.macro-pipeline-meta span{color:var(--text-muted);font-size:.76rem}.macro-pipeline-meta strong{margin-top:5px;font-size:.85rem;font-weight:600}.macro-pipeline-error{color:#fca5a5;border-top:1px solid var(--border-color);white-space:pre-wrap;padding:10px 20px;font-size:.8rem}.macro-status{border:1px solid var(--border-color);border-radius:var(--radius);background:var(--bg-secondary);border-left:4px solid #64748b;align-items:center;gap:14px;margin-bottom:20px;padding:18px 20px;display:flex}.macro-status strong,.macro-status span{display:block}.macro-status strong{margin:3px 0;font-size:1.15rem}.macro-kicker{color:var(--text-muted);font-size:.78rem}.macro-thresholds{color:var(--text-secondary);margin-top:5px;font-size:.76rem}.macro-streak{color:var(--text-secondary);white-space:nowrap;margin-left:auto}.macro-streak small{max-width:300px;color:var(--text-muted);white-space:normal;margin-top:5px;display:inline-block}.macro-risk-red{border-left-color:#ef4444}.macro-risk-orange{border-left-color:#f97316}.macro-risk-yellow{border-left-color:#eab308}.macro-risk-lead{border-left-color:#3b82f6}.macro-risk-calm{border-left-color:#22c55e}.macro-current-details{grid-template-columns:2fr 1fr;gap:20px;margin:-6px 0 20px;padding:14px 20px;display:grid}.macro-current-details p{color:var(--text-secondary);border-left:2px solid #64748b;align-self:center;margin:0;padding-left:18px;font-size:.82rem;line-height:1.5}.macro-signal-list{flex-wrap:wrap;gap:7px;margin-top:8px;display:flex}.macro-empty-detail{color:var(--text-muted);font-size:.84rem}.macro-category-grid{grid-template-columns:repeat(4,1fr)}.macro-icon{color:#60a5fa}.stat-value small{color:var(--text-muted);font-size:.75rem;font-weight:400}.macro-detail-grid{grid-template-columns:3fr 2fr;gap:20px;display:grid}.macro-signals{flex-wrap:wrap;gap:8px;min-height:72px;padding:18px 20px;display:flex}.macro-signal{background:color-mix(in srgb, #f59e0b 18%, var(--bg-tertiary));color:var(--text-primary);border:1px solid color-mix(in srgb, #f59e0b 35%, var(--border-color));border-radius:999px;padding:5px 10px;font-size:.8rem}.empty-state{color:var(--text-muted)}.macro-funding{gap:16px;padding:18px 20px;display:grid}.macro-funding span,.macro-funding strong{display:block}.macro-funding span{color:var(--text-muted);margin-bottom:4px;font-size:.8rem}.macro-l2-summary{background:var(--border-color);border-bottom:1px solid var(--border-color);grid-template-columns:repeat(3,1fr);gap:1px;display:grid}.macro-l2-summary>div{background:var(--bg-secondary);padding:16px 20px}.macro-l2-summary .macro-l2-uncalibrated{opacity:.66;border-top:2px dashed #64748b}.macro-l2-summary span,.macro-l2-summary strong,.macro-l2-summary small{display:block}.macro-l2-summary span{color:var(--text-muted);font-size:.8rem}.macro-l2-summary strong{margin:5px 0 7px;font-size:1rem}.macro-l2-summary small{color:var(--text-secondary);font-size:.76rem;line-height:1.45}.macro-chart-note{color:var(--text-muted);margin:8px 0 0;font-size:.78rem;line-height:1.45}.macro-regime-legend{color:var(--text-secondary);flex-wrap:wrap;gap:6px 10px;margin-top:8px;font-size:.76rem;display:flex}.macro-regime-legend button{color:inherit;cursor:pointer;font:inherit;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:5px;padding:2px 5px;display:inline-flex}.macro-regime-legend button.selected{border-color:var(--accent-blue);background:color-mix(in srgb, var(--accent-blue) 12%, transparent)}.macro-regime-legend i,.macro-regime-stats i,.macro-episode-list i{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.macro-regime-stats{color:var(--text-secondary);flex-wrap:wrap;gap:6px 12px;margin-top:10px;font-size:.75rem;display:flex}.macro-regime-stats span{align-items:center;gap:5px;display:inline-flex}.macro-regime-stats small{width:100%;color:var(--text-muted)}.macro-episodes-card{margin-top:20px}.macro-episodes-card summary{color:var(--text-primary);cursor:pointer;justify-content:space-between;align-items:center;padding:16px 20px;font-size:1rem;font-weight:600;display:flex}.macro-episodes-card summary small{color:var(--text-muted);font-size:.78rem;font-weight:400}.macro-episodes-card[open] summary{border-bottom:1px solid var(--border-color)}.macro-episodes-content .card-header{padding:12px 20px}.macro-episodes-card label{color:var(--text-muted);font-size:.78rem}.macro-episodes-card select{border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);border-radius:4px;margin-left:6px;padding:3px 5px}.macro-episode-list{display:grid}.macro-episode-list>div{border-top:1px solid var(--border-color);grid-template-columns:10px minmax(150px,1fr) minmax(190px,1fr) auto;align-items:center;gap:10px;padding:10px 20px;font-size:.82rem;display:grid}.macro-episode-list strong{color:var(--text-primary)}.macro-episode-list span{color:var(--text-secondary)}.macro-episode-list b{color:var(--text-muted);white-space:nowrap;font-weight:500}.macro-tooltip{color:#e2e8f0;background:#172033;border:1px solid #475569;border-radius:8px;min-width:230px;max-width:380px;padding:11px 12px;font-size:.78rem;box-shadow:0 10px 24px #00000047}.macro-tooltip-header{color:#cbd5e1;border-bottom:1px solid #334155;justify-content:space-between;align-items:center;gap:14px;margin-bottom:8px;padding-bottom:8px;display:flex}.macro-tooltip-header b{color:#93c5fd;white-space:nowrap;background:#60a5fa2e;border-radius:999px;padding:2px 7px}.macro-tooltip-group{margin-top:7px}.macro-tooltip-group strong{color:#94a3b8;margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}.macro-tooltip-group>div{flex-wrap:wrap;gap:4px;display:flex}.macro-tooltip-group span{color:#e2e8f0;background:#26344b;border-radius:4px;padding:2px 6px;font-size:.72rem}.macro-tooltip-empty{color:#94a3b8}.macro-tooltip-state{align-items:center;gap:8px;font-size:.88rem;font-weight:600;display:flex}.macro-tooltip-state i,.macro-tooltip-rows i{border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.macro-tooltip-rows{gap:7px;display:grid}.macro-tooltip-rows>div{justify-content:space-between;align-items:center;gap:16px;display:flex}.macro-tooltip-rows span{color:#94a3b8;align-items:center;gap:6px;display:inline-flex}.macro-tooltip-rows strong{color:#e2e8f0;text-align:right;font-weight:600}.macro-tooltip-meaning{color:#cbd5e1;border-top:1px solid #334155;margin-top:10px;padding-top:9px;font-size:.75rem;line-height:1.5}.macro-signal-guide{margin-top:20px}.macro-signal-groups{padding:4px 20px 20px}.macro-signal-groups h3{color:var(--text-primary);margin:20px 0 9px;font-size:.95rem}.macro-signal-groups section:first-child h3{margin-top:14px}.macro-signal-groups td{vertical-align:top;line-height:1.45}@media (width<=900px){.macro-category-grid,.macro-l2-summary,.macro-pipeline-meta{grid-template-columns:repeat(2,1fr)}.macro-current-details{grid-template-columns:1fr}.macro-current-details p{border-left:0;border-top:1px solid var(--border-color);padding-top:12px;padding-left:0}.macro-detail-grid{grid-template-columns:1fr}.macro-streak{margin-left:0}.macro-status{flex-wrap:wrap;align-items:flex-start}.macro-health-strip{flex-wrap:wrap}.macro-health-summary{margin-left:0}.industry-health-strip{flex-wrap:wrap}.industry-health-summary{margin-left:0}}@media (width<=700px){.industry-picker,.industry-picker-groups{grid-template-columns:1fr}.industry-controls{gap:12px}.industry-controls>div{width:100%}}@media (width<=560px){.industry-heat-legend small,.industry-dispersion-actions span{width:100%;margin-left:0}.macro-l2-summary,.macro-pipeline-meta{grid-template-columns:1fr}.macro-range-actions{width:100%}}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--border-color)}.date-range-picker{align-items:center;gap:10px;display:flex}.date-range-picker input[type=date]{width:auto;min-width:140px}.date-separator{color:var(--text-muted);font-size:.85rem}.pagination{border-top:1px solid var(--border-color);justify-content:center;align-items:center;gap:16px;padding:16px 20px;display:flex}.pagination-info{color:var(--text-muted);font-size:.8rem}.tabs{border-bottom:1px solid var(--border-color);gap:2px;margin-bottom:24px;display:flex}.tab{color:var(--text-muted);cursor:pointer;transition:all var(--transition);font-size:.875rem;font-weight:500;font-family:var(--font-sans);background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:12px 20px;display:flex}.tab:hover{color:var(--text-secondary)}.tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.tab-content{animation:.2s fadeIn}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.scheduler-info{gap:32px;padding:16px 20px;display:flex}.info-item{flex-direction:column;gap:4px;display:flex}.info-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem}.info-value{color:var(--text-primary);font-size:1rem;font-weight:600;font-family:var(--font-mono)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-primary)}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media (width<=1200px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.sidebar{transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar-close,.sidebar-overlay,.mobile-menu-btn{display:block}.main-content{margin-left:0}.stats-grid{grid-template-columns:1fr}.page-header{flex-direction:column;align-items:stretch}.header-actions{justify-content:flex-start}.form-inline{flex-direction:column;align-items:stretch}.form-inline .form-group{min-width:100%}.date-range-picker{flex-wrap:wrap}.main-content{padding:16px}.auth-card{padding:28px 20px}.stat-card{padding:16px}.stat-value{font-size:1.1rem}}@media (width<=480px){.pagination{gap:8px}td,th{padding:8px 10px;font-size:.8rem}}.backtest-form{flex-direction:column;gap:16px;padding:16px 20px 20px;display:flex}.form-row{flex-wrap:wrap;align-items:flex-end;gap:16px;display:flex}.form-row .form-group{flex:1;min-width:120px}.form-row select{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius);width:100%;color:var(--text-primary);padding:8px 12px;font-size:.9rem}.form-row select option{background:var(--bg-primary);color:var(--text-primary)}.form-row select:focus{border-color:var(--accent-blue);outline:none}.update-banner{z-index:9999;background:var(--accent-blue);color:#fff;font-size:.85rem;font-family:var(--font-sans);justify-content:center;align-items:center;gap:8px;padding:8px 16px;display:flex;position:fixed;top:0;left:0;right:0}.update-banner button{border-radius:var(--radius-sm);color:#fff;cursor:pointer;transition:background var(--transition);background:0 0;border:1px solid #fff6;margin-left:8px;padding:4px 12px;font-size:.8rem}.update-banner button:hover{background:#ffffff26}.update-banner~.layout{margin-top:36px}.update-banner~.auth-page{padding-top:36px}
