@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@300;400;500&display=swap");:root{--bg:#0a0a0a;--surface:#111111;--border:#1e1e1e;--border-bright:#2e2e2e;--text:#e8e8e8;--muted:#666;--accent:#00d4aa;--accent-dim:rgba(0,212,170,0.1);--warn:#f59e0b;--danger:#ef4444;--matmarkt:#378ADD;--cortina:#00d4aa}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:IBM Plex Sans,sans-serif;font-size:14px;line-height:1.6;min-height:100vh;flex-direction:column}body,header{display:flex}header{border-bottom:1px solid var(--border);padding:16px 24px;align-items:center;justify-content:space-between;gap:12px}.logo{font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;color:var(--accent);letter-spacing:.05em}.accounts{display:flex;gap:8px;align-items:center}.account-badge{font-family:IBM Plex Mono,monospace;font-size:11px;padding:3px 8px;border-radius:3px;border:1px solid}.badge-matmarkt{color:var(--matmarkt);border-color:rgba(55,138,221,.3);background:rgba(55,138,221,.08)}.badge-cortina{color:var(--cortina);border-color:rgba(0,212,170,.3);background:rgba(0,212,170,.08)}.main{flex:1 1;display:flex;flex-direction:column;max-width:860px;width:100%;margin:0 auto;padding:0 24px}.account-selector{display:flex;align-items:center;gap:10px;padding:20px 0 0}.ctx-meta{font-size:11.5px}.acc-btn,.ctx-meta{font-family:IBM Plex Mono,monospace;color:var(--muted)}.acc-btn{font-size:12px;padding:6px 14px;border-radius:4px;border:1px solid var(--border-bright);background:transparent;cursor:pointer;transition:all .15s}a.acc-btn{text-decoration:none;display:inline-flex;align-items:center}.acc-btn:hover{border-color:var(--accent);color:var(--accent)}.client-menu{position:relative}.cm-trigger{display:inline-flex;align-items:center;gap:7px}.cm-trigger .cm-lbl{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.cm-trigger .cm-name{color:var(--text);font-weight:500}.cm-trigger .cm-chev{color:var(--muted)}.cm-backdrop{position:fixed;inset:0;z-index:90}.cm-pop{position:absolute;top:38px;left:0;z-index:91;min-width:230px;background:var(--surface);border:1px solid var(--border-bright);border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.5);overflow:hidden;padding:6px}.cm-item{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:7px;cursor:pointer;font-size:13px}.cm-item,a.cm-item,a.cm-item:visited{color:var(--text);text-decoration:none}.cm-item:hover{background:var(--surface2,#161616)}.cm-item.on{background:var(--accent-dim)}.cm-item .cm-role{margin-left:auto;font-size:10px;color:var(--muted);font-family:IBM Plex Mono,monospace}.cm-item .cm-check,.cm-item.cm-new{color:var(--accent)}.cm-item.cm-new{font-family:IBM Plex Mono,monospace;font-size:12px}.cm-sep{height:1px;background:var(--border);margin:6px 4px}.cm-create{padding:6px}.rm-pop{min-width:250px}.rm-section{display:flex;align-items:center;gap:8px;padding:6px 10px 4px;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted2);font-family:IBM Plex Mono,monospace}.rm-section .rm-scope{margin-left:auto;color:var(--accent);text-transform:none;letter-spacing:0}.rm-hint{padding:6px 10px 9px;font-size:12px;color:var(--muted)}.cm-create input{width:100%;background:var(--bg);border:1px solid var(--border-bright);border-radius:6px;color:var(--text);font-family:IBM Plex Mono,monospace;font-size:12px;padding:8px;outline:none}.cm-create input:focus{border-color:var(--accent)}.cm-err{color:var(--danger);font-size:11px;margin-top:6px}.cm-create-btns{display:flex;gap:6px;justify-content:flex-end;margin-top:8px}.combo{position:relative}.combo-trigger{display:inline-flex;align-items:center;gap:8px;font-family:IBM Plex Mono,monospace;font-size:13px;padding:8px 14px;border-radius:8px;border:1px solid var(--border-bright);background:var(--surface);color:var(--text);cursor:pointer;transition:.15s}.combo-trigger:hover{border-color:var(--accent)}.combo-trigger .combo-lbl{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px}.combo-trigger .combo-cur{font-weight:500}.combo-trigger .combo-chev{color:var(--muted)}.combo-backdrop{position:fixed;inset:0;z-index:90}.combo-pop{position:absolute;top:42px;left:0;z-index:91;width:320px;max-width:80vw;background:var(--surface);border:1px solid var(--border-bright);border-radius:10px;box-shadow:0 16px 40px rgba(0,0,0,.5);overflow:hidden}.combo-search{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--border)}.combo-ic{color:var(--muted);font-size:13px}.combo-search input{flex:1 1;background:transparent;border:none;outline:none;color:var(--text);font-family:IBM Plex Mono,monospace;font-size:13px}.combo-list{max-height:320px;overflow-y:auto;padding:6px}.combo-empty{padding:12px;color:var(--muted);font-size:12px}.combo-row{display:flex;align-items:center;gap:8px;padding:9px 10px;border-radius:7px;cursor:pointer}.combo-row.hl{background:var(--accent-dim)}.combo-row.on{color:var(--accent)}.combo-row .combo-name{font-size:13px}.combo-row .combo-meta{margin-left:auto;font-size:10px;color:var(--muted);font-family:IBM Plex Mono,monospace}.combo-row .combo-check{color:var(--accent);margin-left:6px}.cmdk-ov{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:300;display:flex;align-items:flex-start;justify-content:center;padding-top:14vh}.cmdk{width:min(560px,92vw);background:var(--surface);border:1px solid var(--border-bright);border-radius:14px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.6)}.cmdk-in{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border)}.cmdk-in input{flex:1 1;background:transparent;border:none;outline:none;color:var(--text);font-size:15px}.cmdk-esc,.cmdk-in input{font-family:IBM Plex Mono,monospace}.cmdk-esc{font-size:10px;color:var(--muted)}.cmdk-list{max-height:340px;overflow-y:auto;padding:6px}.cmdk-sec{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;padding:8px 10px 4px}.cmdk-row{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:8px;cursor:pointer;font-size:13px}.cmdk-row.hl{background:var(--accent-dim)}.cmdk-ico{color:var(--muted);width:14px;text-align:center}.cmdk-meta{margin-left:auto;font-size:10px;color:var(--muted);font-family:IBM Plex Mono,monospace}.view-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin:14px 0 0}.view-tab{padding:9px 14px;font-size:13px;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.view-tab:hover{color:var(--text)}.view-tab.on{color:var(--accent);border-bottom-color:var(--accent)}.hist-view{flex:1 1;display:flex;flex-direction:column;min-height:0;padding:16px 0 0}.hist-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.seg{display:flex;border:1px solid var(--border-bright);border-radius:8px;overflow:hidden}.seg span{padding:6px 12px;font-size:12px;color:var(--muted2);cursor:pointer;font-family:IBM Plex Mono,monospace}.seg span.on{background:var(--accent-dim);color:var(--accent)}.hist-filter,.hist-search{background:var(--surface);border:1px solid var(--border-bright);border-radius:8px;padding:6px 12px;font-size:12px;color:var(--text);font-family:IBM Plex Mono,monospace;outline:none}.hist-search{flex:1 1;min-width:160px}.hist-filter:focus,.hist-search:focus{border-color:var(--accent)}.hist-count{font-size:12px;color:var(--muted);font-family:IBM Plex Mono,monospace;margin-left:auto}.hist-table-wrap{flex:1 1;overflow-y:auto;min-height:0}.hist-table{width:100%;border-collapse:collapse;font-size:13px}.hist-table th{text-align:left;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px;padding:8px 12px;border-bottom:1px solid var(--border-bright);font-weight:500;position:-webkit-sticky;position:sticky;top:0;background:var(--bg)}.hist-table td{padding:10px 12px;border-bottom:1px solid var(--border)}.hist-table tr:hover td{background:var(--surface)}.hist-table tr.sel td{background:var(--accent-dim)}.hist-check{width:15px;height:15px;border:1px solid var(--border-bright);border-radius:4px;display:inline-block;cursor:pointer;vertical-align:middle}.hist-check.on{background:var(--accent);border-color:var(--accent)}.mchip{display:inline-block;font-family:IBM Plex Mono,monospace;font-size:10px;padding:2px 7px;border-radius:5px;background:var(--surface);border:1px solid var(--border);margin-right:4px}.hist-nometa{color:var(--muted);font-size:12px}.htag{font-family:IBM Plex Mono,monospace;font-size:9px;padding:2px 6px;border-radius:4px;background:var(--accent-dim);color:var(--accent)}.htag.man{background:rgba(245,158,11,.1);color:var(--warn)}.hist-act{color:var(--muted2);cursor:pointer;font-size:12px}.hist-act:hover{color:var(--accent)}.hist-act.danger:hover{color:#e5484d}.hist-cmpbar{position:-webkit-sticky;position:sticky;bottom:0;margin-top:10px;display:flex;align-items:center;gap:12px;background:var(--surface);border:1px solid var(--accent);border-radius:10px;padding:10px 14px;box-shadow:0 8px 24px rgba(0,0,0,.4);font-size:13px}.dash-view{flex:1 1;overflow-y:auto;min-height:0;padding:18px 0 30px}.dash-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.dash-head h2{font-size:16px}.dash-pill{font-size:11px;padding:3px 10px;border-radius:20px;border:1px solid var(--border-bright);color:var(--muted2)}.dash-loading,.dash-pill{font-family:IBM Plex Mono,monospace}.dash-loading{font-size:12px;color:var(--muted)}.dash-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:12px;gap:12px;margin-bottom:18px}.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px}.dash-k{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.dash-v{font-size:24px;font-weight:600}.dash-d,.dash-v{font-family:IBM Plex Mono,monospace}.dash-d{font-size:11px;margin-top:4px;color:var(--muted)}.dash-d.up{color:var(--ok)}.dash-d.down{color:var(--danger)}.dash-panel{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:16px;margin-bottom:14px}.dash-panel h3{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-weight:500}.dash-empty{color:var(--muted);font-size:13px}.dash-bar-row{display:grid;grid-template-columns:180px 1fr 70px;grid-gap:10px;gap:10px;align-items:center;margin-bottom:8px;font-size:12px;cursor:pointer}.dash-bar-row:hover .dash-bar-label{color:var(--accent)}.dash-bar-label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dash-track{height:18px;background:var(--surface2,#161616);border-radius:4px;overflow:hidden}.dash-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--matmarkt));border-radius:4px;min-width:2px}.dash-bar-val{text-align:right;font-family:IBM Plex Mono,monospace;color:var(--muted2)}.dash-alert{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--border);font-size:13px;cursor:pointer}.dash-alert:last-child{border-bottom:0}.dash-alert:hover{color:var(--accent)}.dash-alert-open,.dash-alert-reason{color:var(--muted)}.dash-alert-open{margin-left:auto;font-size:11px}.dash-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dash-dot.alert{background:var(--danger)}.dash-dot.warn{background:var(--warn)}.dash-dot.idle{background:var(--muted)}@media (max-width:720px){.dash-grid{grid-template-columns:repeat(2,1fr)}.dash-bar-row{grid-template-columns:110px 1fr 60px}}.report-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:250;display:flex;align-items:center;justify-content:center;padding:24px}.report-modal{width:min(820px,96vw);max-height:90vh;background:var(--surface);border:1px solid var(--border-bright);border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.6)}.report-head{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;border-bottom:1px solid var(--border)}.report-head h3{font-size:15px;color:var(--accent)}.report-head h3,.report-sub{font-family:IBM Plex Mono,monospace}.report-sub{font-size:11px;color:var(--muted);margin-top:3px}.report-actions{margin-left:auto;display:flex;gap:8px}.report-body{overflow-y:auto;padding:0}.report-loading{display:flex;align-items:center;gap:10px;padding:40px 24px;color:var(--muted2);font-family:IBM Plex Mono,monospace;font-size:13px}.report-error{padding:24px;color:var(--danger);font-size:13px}.report-md{background:#ffffff;color:#1a1a1a;padding:28px 32px;margin:0;font-family:IBM Plex Sans,sans-serif;font-size:13.5px;line-height:1.65}.report-md h1{font-size:20px;margin:0 0 12px;color:#0a0a0a}.report-md h2{font-size:15px;margin:20px 0 8px;padding-bottom:5px;color:#0a7a63;border-bottom:1px solid #e5e5e5}.report-md h3{font-size:13.5px;margin:14px 0 6px;color:#222}.report-md p{margin:6px 0}.report-md ol,.report-md ul{margin:6px 0 6px 20px}.report-md li{margin:3px 0}.report-md strong{color:#0a0a0a}.report-md table{width:100%;border-collapse:collapse;margin:10px 0;font-size:12px}.report-md td,.report-md th{border:1px solid #ddd;padding:6px 9px;text-align:left}.report-md th{background:#f3f3f3}.report-md code{background:#f1f1f1;padding:1px 5px;border-radius:4px;font-size:12px}.report-md hr{border:none;border-top:1px solid #e5e5e5;margin:16px 0}.acc-btn.active-mm{border-color:var(--matmarkt);color:var(--matmarkt);background:rgba(55,138,221,.08)}.acc-btn.active-ch{border-color:var(--cortina);color:var(--cortina);background:rgba(0,212,170,.08)}.chat-area{flex:1 1;overflow-y:auto;padding:20px 0;display:flex;flex-direction:column;gap:16px;min-height:300px;max-height:55vh}.msg{display:flex;gap:12px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.msg-icon{width:28px;height:28px;border-radius:4px;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-family:IBM Plex Mono,monospace;font-size:10px;font-weight:500;margin-top:2px}.msg-user .msg-icon{background:var(--border-bright);color:var(--muted)}.msg-claude .msg-icon{background:var(--accent-dim);color:var(--accent);border:1px solid rgba(0,212,170,.2)}.msg-body{flex:1 1}.msg-label{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--muted);margin-bottom:4px;letter-spacing:.06em}.msg-text{color:var(--text);font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:break-word}.msg-claude .msg-text{color:#d4d4d4}.msg-text strong{color:var(--accent);font-weight:500}.msg-text .flag-warn{color:var(--warn)}.msg-text .flag-danger{color:var(--danger)}.msg-text .flag-ok{color:#4ade80}.divider{border:none;margin:4px 0}.divider,.input-area{border-top:1px solid var(--border)}.input-area{padding:16px 0 20px;display:flex;flex-direction:column;gap:10px}.input-row{display:flex;gap:8px;align-items:flex-end}textarea{flex:1 1;background:var(--surface);border:1px solid var(--border-bright);border-radius:6px;color:var(--text);font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.5;padding:10px 12px;resize:none;min-height:80px;max-height:240px;transition:border-color .15s;outline:none}textarea:focus{border-color:var(--accent)}textarea::placeholder{color:var(--muted)}.send-btn{background:var(--accent);color:#000;border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:500;padding:10px 18px;cursor:pointer;height:40px;white-space:nowrap;transition:opacity .15s;flex-shrink:0}.send-btn:hover{opacity:.85}.send-btn:disabled{opacity:.4;cursor:not-allowed}.quick-btns{display:flex;gap:6px;flex-wrap:wrap}.quick-btn{font-family:IBM Plex Mono,monospace;font-size:11px;padding:4px 10px;border-radius:3px;border:1px solid var(--border-bright);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.quick-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-dim)}.thinking{display:flex;gap:4px;align-items:center;padding:4px 0}.dot{width:4px;height:4px;border-radius:50%;background:var(--accent);animation:pulse 1.2s infinite}.dot:nth-child(2){animation-delay:.2s}.dot:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,80%,to{opacity:.2;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}.status-bar{font-family:IBM Plex Mono,monospace;font-size:10px;color:var(--muted);padding:6px 0 0;border-top:1px solid var(--border);display:flex;justify-content:space-between}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:5px}::-webkit-scrollbar{width:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:2px}.history-overlay{display:none;position:fixed;top:0;right:0;bottom:0;width:380px;background:var(--surface);border-left:1px solid var(--border);z-index:100;flex-direction:column;animation:slideIn .2s ease}.history-overlay.open{display:flex}@keyframes slideIn{0%{transform:translateX(100%)}to{transform:translateX(0)}}.history-header{display:flex;justify-content:space-between;align-items:center;padding:16px;border-bottom:1px solid var(--border);font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;color:var(--accent)}.history-close{background:none;border:none;color:var(--muted);cursor:pointer;font-size:18px;padding:4px 8px}.history-close:hover{color:var(--text)}.history-list{flex:1 1;overflow-y:auto;padding:8px}.history-item{padding:10px 12px;border:1px solid var(--border);border-radius:6px;margin-bottom:6px;cursor:pointer;transition:border-color .15s}.history-item.selected,.history-item:hover{border-color:var(--accent)}.history-item.selected{background:var(--accent-dim)}.history-item-date{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--accent);margin-bottom:4px}.history-item-preview{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item-badges{display:flex;gap:4px;margin-top:4px}.history-badge{font-family:IBM Plex Mono,monospace;font-size:9px;padding:1px 5px;border-radius:2px;background:var(--accent-dim);color:var(--accent)}.history-actions{padding:12px;border-top:1px solid var(--border);display:flex;gap:6px}.history-actions button{flex:1 1;font-family:IBM Plex Mono,monospace;font-size:11px;padding:8px;border-radius:4px;border:1px solid var(--border-bright);background:transparent;color:var(--muted);cursor:pointer;transition:all .15s}.history-actions button:hover{border-color:var(--accent);color:var(--accent)}.history-actions button:disabled{opacity:.3;cursor:not-allowed}.history-empty{padding:12px;color:var(--muted);font-size:12px}.history-error{padding:12px;color:var(--danger);font-size:12px}.dashboard-overlay{display:none;position:fixed;inset:0;z-index:1100;background:var(--bg);overflow-y:auto;padding:24px;font-family:IBM Plex Mono,monospace}.dashboard-overlay.open{display:block}.dash-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid var(--border)}.dash-header h2{font-size:16px;color:var(--accent);margin:0;font-weight:600}.dash-header .dash-subtitle{font-size:12px;color:var(--muted);margin-top:4px}.dash-close{background:none;border:1px solid var(--border-bright);color:var(--text);font-size:14px;padding:6px 14px;border-radius:6px;cursor:pointer;font-family:inherit}.dash-close:hover{border-color:var(--accent);color:var(--accent)}.kpi-grid{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:12px;gap:12px;margin-bottom:28px}.kpi-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:16px}.kpi-label{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:8px}.kpi-values{display:flex;gap:12px;align-items:baseline;margin-bottom:6px}.kpi-val{font-size:18px;font-weight:600;color:var(--text)}.kpi-val.s1{color:var(--accent)}.kpi-val.s2{color:var(--matmarkt)}.kpi-delta{font-size:13px;font-weight:500;padding:2px 8px;border-radius:4px}.kpi-delta.pos{color:#4ade80;background:rgba(74,222,128,.1)}.kpi-delta.neg{color:#ef4444;background:rgba(239,68,68,.1)}.kpi-delta.zero{color:var(--muted);background:rgba(102,102,102,.1)}.dash-section-title{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--muted);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.bar-chart{margin-bottom:28px}.bar-row{display:grid;grid-template-columns:160px 1fr;grid-gap:12px;gap:12px;align-items:center;margin-bottom:8px}.bar-label{font-size:11px;color:var(--text);text-align:right;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-pair{display:flex;flex-direction:column;gap:3px}.bar-track{height:14px;border-radius:3px;position:relative;display:flex;align-items:center}.bar-fill{height:100%;border-radius:3px;min-width:2px;transition:width .4s ease}.bar-fill.s1{background:var(--accent)}.bar-fill.s2{background:var(--matmarkt)}.bar-value{font-size:9px;color:var(--muted);margin-left:6px;white-space:nowrap}.dash-table{width:100%;border-collapse:collapse;font-size:11px;margin-bottom:28px}.dash-table th{padding:8px 10px;border-bottom:2px solid var(--border-bright);text-align:right;color:var(--muted);font-weight:500;font-size:10px;text-transform:uppercase;letter-spacing:.3px}.dash-table th:first-child{text-align:left}.dash-table td{padding:8px 10px;border-bottom:1px solid var(--border);text-align:right;color:var(--text)}.dash-table td:first-child{text-align:left}.dash-table tr:hover td{background:rgba(255,255,255,.02)}.delta-pos{color:#4ade80}.delta-neg{color:#ef4444}.dash-legend{display:flex;gap:20px;margin-bottom:16px;font-size:11px;color:var(--muted)}.dash-legend-dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:6px;vertical-align:middle}@media (max-width:700px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.bar-row{grid-template-columns:100px 1fr}}.toast{position:fixed;bottom:20px;right:20px;background:var(--accent);color:#000;font-family:IBM Plex Mono,monospace;font-size:12px;padding:8px 16px;border-radius:4px;z-index:200;animation:fadeIn .2s ease}.save-modal-overlay{display:none;position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.6);z-index:150;align-items:center;justify-content:center}.save-modal-overlay.open{display:flex}.save-modal{background:var(--surface);border:1px solid var(--border-bright);border-radius:8px;padding:24px;width:360px}.save-modal h3{font-size:14px;color:var(--accent);margin-bottom:16px}.save-modal h3,.save-modal label{font-family:IBM Plex Mono,monospace}.save-modal label{font-size:11px;color:var(--muted);display:block;margin-bottom:4px}.save-modal input{font-size:12px}.save-modal input,.save-modal textarea{width:100%;background:var(--bg);border:1px solid var(--border-bright);border-radius:4px;color:var(--text);font-family:IBM Plex Mono,monospace;padding:8px;margin-bottom:12px}.save-modal textarea{min-height:80px;font-size:11px;resize:vertical}.save-modal-btns{display:flex;gap:8px;justify-content:flex-end}.save-modal-btns button{font-family:IBM Plex Mono,monospace;font-size:12px;padding:8px 16px;border-radius:4px;border:1px solid var(--border-bright);background:transparent;color:var(--muted);cursor:pointer}.save-modal-btns .save-confirm{background:var(--accent);color:#000;border-color:var(--accent)}.login-wrap{flex:1 1;display:flex;align-items:center;justify-content:center;padding:24px}.login-card{background:var(--surface);border:1px solid var(--border-bright);border-radius:8px;padding:32px;width:340px}.login-card .logo{margin-bottom:8px}.login-card .login-sub{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--muted);margin-bottom:20px}.login-card input{width:100%;background:var(--bg);border:1px solid var(--border-bright);border-radius:6px;color:var(--text);font-family:IBM Plex Mono,monospace;font-size:13px;padding:10px 12px;margin-bottom:12px;outline:none}.login-card input:focus{border-color:var(--accent)}.login-card .login-btn{width:100%;background:var(--accent);color:#000;border:none;border-radius:6px;font-family:IBM Plex Mono,monospace;font-size:13px;font-weight:500;padding:10px;cursor:pointer;transition:opacity .15s}.login-card .login-btn:hover{opacity:.85}.login-card .login-btn:disabled{opacity:.4;cursor:not-allowed}.login-error{font-family:IBM Plex Mono,monospace;font-size:11px;color:var(--danger);margin-bottom:12px;min-height:14px}