.dashboard-terminal{--void:#000;--surface:#0d0d0d;--border:#1a1a1a;--border-glow:#2a2a2a;--amber:#ffb000;--amber-dim:#ffb0001f;--green:#00ff41;--green-dim:#00ff4114;--cyan:#00e5ff;--cyan-dim:#00e5ff14;--red:#ff0040;--red-dim:#ff004014;--text:silver;--text-bright:#e0e0e0;--text-dim:#777;--grid-stroke:#1a1a1a;--tick-color:#777;--tooltip-bg:#0d0d0dee;--tooltip-border:#333;--ring-bg:#1a1a1a;--ring-color:var(--green);--card-bg:#0a0a0a;background:var(--void);color:var(--text);min-height:100vh;padding:1rem;font-family:VT323,Share Tech Mono,monospace;position:relative;overflow-x:hidden}.dashboard-terminal:before{content:"";pointer-events:none;z-index:1000;background:repeating-linear-gradient(0deg,#0000,#0000 2px,#00ff4108 2px 4px);position:fixed;inset:0}.dashboard-terminal:after{content:"";pointer-events:none;z-index:999;background:radial-gradient(#00ff4108 0%,#0000 70%);position:fixed;inset:0}.dashboard-terminal .dash-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;margin-bottom:1rem;padding:1rem 0;display:flex}.dashboard-terminal .dash-title{color:var(--green);text-shadow:0 0 10px var(--green), 0 0 20px #00ff414d;align-items:center;gap:.5rem;margin:0;font-family:"Press Start 2P",monospace;font-size:1.2rem;display:flex}.dashboard-terminal .cursor{color:var(--green);animation:1s step-end infinite blink}@keyframes blink{50%{opacity:0}}.dashboard-terminal .dash-subtitle{color:var(--text-dim);letter-spacing:2px;text-transform:uppercase;margin-top:.25rem;font-size:.75rem;display:block}.dashboard-terminal .date-badge{color:var(--amber);border:1px solid var(--amber);background:var(--amber-dim);text-shadow:0 0 8px var(--amber);padding:.25rem .75rem;font-size:1rem}.dashboard-terminal .filters{flex-wrap:wrap;gap:.75rem;margin-bottom:1.5rem;display:flex}.dashboard-terminal .filter-select{background:var(--surface);color:var(--text);border:1px solid var(--border-glow);cursor:pointer;outline:none;min-width:140px;padding:.5rem 1rem;font-family:VT323,monospace;font-size:1rem;transition:border-color .2s}.dashboard-terminal .filter-select:hover,.dashboard-terminal .filter-select:focus{border-color:var(--green);box-shadow:0 0 8px #00ff4133}.dashboard-terminal .filter-select option{background:var(--surface);color:var(--text)}.dashboard-terminal .kpi-grid{grid-template-columns:repeat(6,1fr);gap:.75rem;margin-bottom:1.5rem;display:grid}.dashboard-terminal .kpi-card{background:var(--card-bg);border:1px solid var(--border);text-align:center;padding:1rem;position:relative;overflow:hidden}.dashboard-terminal .kpi-card:before{content:"";height:2px;position:absolute;top:0;left:0;right:0}.dashboard-terminal .kpi-good:before{background:var(--green);box-shadow:0 0 10px var(--green)}.dashboard-terminal .kpi-neutral:before{background:var(--amber);box-shadow:0 0 10px var(--amber)}.dashboard-terminal .kpi-bad:before{background:var(--red);box-shadow:0 0 10px var(--red)}.dashboard-terminal .kpi-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem;font-size:.85rem}.dashboard-terminal .kpi-value{color:var(--text-bright);margin-bottom:.25rem;font-family:VT323,monospace;font-size:1.8rem;line-height:1}.dashboard-terminal .kpi-good .kpi-value{color:var(--green);text-shadow:0 0 8px #00ff414d}.dashboard-terminal .kpi-neutral .kpi-value{color:var(--amber);text-shadow:0 0 8px #ffb0004d}.dashboard-terminal .kpi-bad .kpi-value{color:var(--red);text-shadow:0 0 8px #ff00404d}.dashboard-terminal .kpi-sub{color:var(--text-dim);font-size:.7rem}.dashboard-terminal .kpi-pct{color:var(--text);margin-top:.25rem;font-size:1rem}.dashboard-terminal .kpi-ring{opacity:.15;width:80px;height:80px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.dashboard-terminal .charts-row{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem;display:grid}.dashboard-terminal .chart-card{background:var(--card-bg);border:1px solid var(--border);padding:1rem}.dashboard-terminal .chart-title{color:var(--amber);text-shadow:0 0 8px #ffb00033;border-bottom:1px solid var(--border);margin:0 0 .75rem;padding-bottom:.5rem;font-family:VT323,monospace;font-size:1.1rem}.dashboard-terminal .table-card{background:var(--card-bg);border:1px solid var(--border);margin-bottom:1rem;padding:1rem}.dashboard-terminal .table-scroll{overflow-x:auto}.dashboard-terminal table{border-collapse:collapse;width:100%;font-family:VT323,monospace;font-size:.95rem}.dashboard-terminal th{color:var(--amber);text-align:right;border-bottom:1px solid var(--border-glow);text-transform:uppercase;letter-spacing:1px;padding:.5rem;font-size:.8rem;font-weight:400}.dashboard-terminal td{border-bottom:1px solid var(--border);color:var(--text);padding:.5rem}.dashboard-terminal .top-row td{color:var(--green);text-shadow:0 0 4px #00ff4133}.dashboard-terminal .num-cell{text-align:left;direction:ltr;font-family:Share Tech Mono,monospace}.dashboard-terminal .pct-cell{text-align:center}.dashboard-terminal .pct-good{color:var(--green)}.dashboard-terminal .pct-neutral{color:var(--amber)}.dashboard-terminal .pct-bad{color:var(--red)}.dashboard-terminal .chat-fab{border:2px solid var(--green);background:var(--surface);width:56px;height:56px;color:var(--green);cursor:pointer;z-index:100;border-radius:0;justify-content:center;align-items:center;font-size:1.5rem;transition:all .2s;display:flex;position:fixed;bottom:1.5rem;left:1.5rem;box-shadow:0 0 15px #00ff414d}.dashboard-terminal .chat-fab:hover{background:var(--green);color:var(--void);box-shadow:0 0 25px #00ff4180}.dashboard-terminal .chat-panel{background:var(--surface);border:1px solid var(--green);z-index:99;flex-direction:column;width:380px;max-height:500px;display:flex;position:fixed;bottom:5rem;left:1.5rem;box-shadow:0 0 20px #00ff4126}.dashboard-terminal .chat-header{background:var(--green-dim);border-bottom:1px solid var(--border);color:var(--green);justify-content:space-between;align-items:center;padding:.75rem 1rem;font-size:.9rem;display:flex}.dashboard-terminal .chat-close{color:var(--text-dim);cursor:pointer;background:0 0;border:none;font-size:1.2rem}.dashboard-terminal .chat-messages{flex-direction:column;flex:1;gap:.75rem;max-height:340px;padding:1rem;display:flex;overflow-y:auto}.dashboard-terminal .chat-msg{word-break:break-word;max-width:85%;padding:.5rem .75rem;font-size:.9rem;line-height:1.5}.dashboard-terminal .chat-msg-user{background:var(--amber-dim);border:1px solid var(--amber);color:var(--amber);align-self:flex-start}.dashboard-terminal .chat-msg-assistant{background:var(--green-dim);color:var(--text);border:1px solid #00ff414d;align-self:flex-end}.dashboard-terminal .typing{color:var(--text-dim);animation:1s step-end infinite blink}.dashboard-terminal .chat-input-row{border-top:1px solid var(--border);display:flex}.dashboard-terminal .chat-input{background:var(--void);color:var(--text);border:none;outline:none;flex:1;padding:.75rem 1rem;font-family:VT323,monospace;font-size:1rem}.dashboard-terminal .chat-input::placeholder{color:var(--text-dim)}.dashboard-terminal .chat-send{background:var(--green-dim);border:none;border-right:1px solid var(--border);color:var(--green);cursor:pointer;padding:.75rem 1rem;font-family:VT323,monospace;font-size:1rem;transition:all .2s}.dashboard-terminal .chat-send:hover{background:var(--green);color:var(--void)}.back-btn{z-index:200;color:var(--green);background:var(--surface);border:1px solid var(--border-glow);letter-spacing:1px;padding:.4rem 1rem;font-family:VT323,monospace;font-size:1rem;text-decoration:none;transition:all .2s;position:fixed;top:1rem;left:1rem}.back-btn:hover{border-color:var(--green);color:var(--void);background:var(--green);box-shadow:0 0 10px #00ff414d}@media (max-width:1024px){.dashboard-terminal .kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-terminal .charts-row{grid-template-columns:1fr}}@media (max-width:600px){.dashboard-terminal{padding:.5rem}.dashboard-terminal .kpi-grid{grid-template-columns:repeat(2,1fr)}.dashboard-terminal .dash-title{font-size:.9rem}.dashboard-terminal .chat-panel{width:calc(100vw - 2rem);left:.5rem}.dashboard-terminal .kpi-value{font-size:1.4rem}}.sector-switch{flex-wrap:wrap;align-items:center;gap:.5rem;padding:1rem 0;display:flex}.sector-switch-label{color:var(--text-dim);margin-right:.5rem;font-size:.85rem}.sector-chip{color:var(--text-dim);border:1px solid var(--border);padding:.3rem .75rem;font-family:VT323,monospace;font-size:.8rem;text-decoration:none;transition:all .2s}.sector-chip:hover,.sector-chip.active{border-color:var(--green);color:var(--green);background:var(--green-dim)}.sector-badge{color:var(--amber);border:1px solid var(--amber);background:var(--amber-dim);margin-left:.5rem;padding:.2rem .6rem;font-size:.8rem}.dashboard-terminal{border:3px solid #1a1a1a;max-width:1400px;margin:2rem auto;padding:2.5rem 3rem;box-shadow:0 0 0 1px #0a0a0a,0 0 40px #00ff410f,0 20px 60px #00000080}.modal-overlay{z-index:500;background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--surface);border:1px solid var(--green);width:90%;max-width:450px;padding:2rem;box-shadow:0 0 30px #00ff4133}.modal-title{color:var(--green);text-align:center;text-shadow:0 0 8px #00ff414d;margin-bottom:1.5rem;font-family:VT323,monospace;font-size:1.1rem}.modal-themes{grid-template-columns:repeat(3,1fr);gap:.75rem;margin-bottom:1rem;display:grid}.modal-theme-btn{background:var(--void);border:1px solid var(--border-glow);color:var(--text);cursor:pointer;text-align:center;flex-direction:column;align-items:center;gap:.3rem;padding:1rem .5rem;font-family:VT323,monospace;font-size:.9rem;transition:all .2s;display:flex}.modal-theme-btn:hover{border-color:var(--green);box-shadow:0 0 10px #00ff4133}.modal-theme-icon{font-size:1.8rem}.modal-theme-sub{color:var(--text-dim);letter-spacing:1px;font-size:.7rem}.modal-same-btn{background:var(--green-dim);width:100%;color:var(--green);cursor:pointer;border:1px solid #00ff414d;margin-bottom:.5rem;padding:.6rem;font-family:VT323,monospace;font-size:1rem;transition:all .2s}.modal-same-btn:hover{background:var(--green);color:var(--void)}.modal-close{border:1px solid var(--border);width:100%;color:var(--text-dim);cursor:pointer;background:0 0;padding:.5rem;font-family:VT323,monospace;font-size:.9rem}@media (max-width:600px){.dashboard-terminal{padding:1rem .75rem}.modal-themes{grid-template-columns:1fr}.modal{padding:1.5rem 1rem}}
