:root{--bg:#f6f6fc;--surface:#fff;--surface-tint:#dde1ff;--surface-tint-soft:#eef0fb;--text:#17153b;--text-muted:#6b6b85;--text-faint:#8785a3;--accent:#5b5cff;--accent-deep:#6d28d9;--accent-soft:#e0b3ff;--border:#e7e7f3;--border-strong:#17153b29;--shadow-sm:0 1px 2px #17153b0d;--shadow-md:0 1px 2px #17153b0f, 0 8px 24px -12px #17153b2e;--sidebar-bg:#17153b;--sidebar-hover:#232055;--sidebar-text:#d7d6ee;--sidebar-text-soft:#8e8cb8;--sidebar-text-faint:#7b79a6;--ok-bg:#e6f6ef;--ok-text:#1f9d6b;--warn-bg:#fbf1dc;--warn-text:#b4790a;--bad-bg:#fbeaea;--bad-text:#c23b3b;--unknown-bg:#f2e7fc;--unknown-text:#6d28d9;--info-bg:#ededff;--info-text:#5b5cff;--sidebar-w:250px;--radius-md:12px;--radius-lg:12px}*{box-sizing:border-box}html,body{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font-family:Geist,Calibri,Segoe UI,system-ui,sans-serif;font-size:14px}a{color:inherit}h1,h2,h3{text-wrap:balance;letter-spacing:-.01em;margin:0;font-weight:700}table{font-variant-numeric:tabular-nums}.app-shell{min-height:100vh;display:flex}.sidebar{width:var(--sidebar-w);background:var(--sidebar-bg);color:#fff;flex-direction:column;flex-shrink:0;padding:24px 16px;display:flex}.brand-row{border-bottom:1px solid #ffffff1a;align-items:center;gap:10px;margin-bottom:20px;padding:0 8px 20px;display:flex}.brand-row .wordmark-group{line-height:1.15}.brand-row .wordmark{font-size:15px;font-weight:700;display:block}.brand-row .tagline{color:var(--accent-soft);letter-spacing:.02em;font-size:11px;display:block}.sidebar-section-label{color:var(--sidebar-text-soft);letter-spacing:.04em;text-transform:uppercase;margin-top:6px;padding:6px 10px;font-size:11px}.sidebar-link{color:var(--sidebar-text);border-radius:8px;align-items:center;gap:10px;margin-bottom:2px;padding:9px 10px;font-size:13.5px;font-weight:600;text-decoration:none;transition:background-color .12s,color .12s;display:flex}.sidebar-link .dot{opacity:.5;background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.sidebar-link:hover{background:var(--sidebar-hover)}.sidebar-link.active{background:var(--accent);color:#fff}.sidebar-footer{color:var(--sidebar-text-faint);border-top:1px solid #ffffff1a;flex-direction:column;gap:12px;margin-top:auto;padding:14px 8px 12px;font-size:11px;display:flex}.sidebar-footer .user-row{align-items:center;gap:10px;min-width:0;display:flex}.user-avatar{background:var(--accent);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex}.user-row-text{flex-direction:column;min-width:0;display:flex;overflow:hidden}.user-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.user-email{color:var(--sidebar-text-faint);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.logout-btn{font:inherit;color:var(--sidebar-text);cursor:pointer;text-align:center;background:0 0;border:1px solid #ffffff2e;border-radius:8px;width:100%;padding:8px 12px;font-size:12.5px;font-weight:600}.logout-btn:hover{color:#fff;background:var(--sidebar-hover);border-color:#ffffff59}.main-col{flex-direction:column;flex:1;min-width:0;display:flex}.topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:14px 28px;display:flex}.breadcrumb{color:var(--text-muted);font-size:12.5px}.breadcrumb b{color:var(--text)}.filters{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.range-btn{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:7px;padding:6px 12px;font-size:12.5px}.range-btn:hover{background:var(--bg)}.range-btn.active{background:var(--info-bg);color:var(--accent);border-color:var(--accent);font-weight:600}.datepick{font:inherit;border:1px solid var(--border);color:var(--text-muted);background:var(--surface);border-radius:7px;padding:6px 10px;font-size:12.5px}.main{flex:1;min-width:0;max-width:1180px;padding:24px 28px 60px}.page-header{margin-bottom:4px}.page-header h1{font-size:21px}.page-header p{color:var(--text-muted);max-width:640px;margin:4px 0 0;font-size:13px}.section-label{color:var(--text-muted);align-items:center;gap:8px;margin:26px 0 10px;font-size:12.5px;font-weight:600;display:flex}.section-label .tag{border-radius:20px;padding:2px 7px;font-size:10.5px;font-weight:600}.section-label .tag.ok{background:var(--ok-bg);color:var(--ok-text)}.section-label .tag.attn{background:var(--bad-bg);color:var(--bad-text)}.kpi-row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.kpi-row.attn{grid-template-columns:repeat(4,1fr)}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 16px}.kpi.ok-card{border-left:3px solid var(--ok-text)}.kpi.attn-card{border-left:3px solid var(--bad-text)}.kpi.warn-card{border-left:3px solid var(--warn-text)}.kpi .label{color:var(--text-muted);align-items:flex-start;gap:6px;min-height:28px;margin-bottom:6px;font-size:11.5px;display:flex}.kpi .value{font-variant-numeric:tabular-nums;font-size:24px;font-weight:700}.kpi.ok-card .value{color:var(--ok-text)}.kpi.attn-card .value{color:var(--bad-text)}.kpi.warn-card .value{color:var(--warn-text)}.data-table-wrap,.table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);overflow-x:auto}.filter-bar{flex-wrap:wrap;justify-content:flex-end;gap:6px;margin-left:auto;display:flex}.agent-dock{left:var(--sidebar-w);z-index:900;background:var(--bg);border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:8px;padding:12px 28px;display:flex;position:fixed;bottom:0;right:0}.agent-dock>*{width:100%;max-width:760px}.agent-bar{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow-md);border-radius:999px;align-items:center;gap:12px;padding:8px 8px 8px 10px;display:flex}.agent-bar:focus-within{border-color:var(--accent-soft)}.agent-bar-mark{background:var(--bg);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.agent-bar-input{font:inherit;min-width:0;color:var(--text);background:0 0;border:none;flex:1;padding:6px 0;font-size:13.5px}.agent-bar-input::placeholder{color:var(--text-faint)}.agent-bar-input:focus{outline:none}.agent-bar-send{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;transition:opacity .12s;display:flex}.agent-bar-send:disabled{opacity:.4;cursor:default}.agent-answer{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-md);white-space:pre-wrap;justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 14px;font-size:13px;line-height:1.5;display:flex}.agent-answer.error{background:var(--bad-bg);border-color:var(--bad-bg);color:var(--bad-text)}.agent-answer-close{font:inherit;color:var(--text-faint);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 2px;font-size:12px}.agent-answer-close:hover{color:var(--text)}.main{padding-bottom:104px}.lang-toggle{border:1px solid var(--border);border-radius:999px;flex-shrink:0;display:inline-flex;overflow:hidden}.lang-btn{font:inherit;letter-spacing:.03em;background:var(--surface);color:var(--text-muted);cursor:pointer;border:none;padding:5px 10px;font-size:11.5px;transition:background-color .12s,color .12s}.lang-btn:hover{background:var(--bg);color:var(--text)}.lang-btn.active{background:var(--accent);color:#fff}.filter-chip{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:20px;padding:5px 11px;font-size:12px;font-weight:500}.filter-chip:hover{background:var(--bg);color:var(--text)}.filter-chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.tabs-nav{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex}.tab-link{color:var(--text-muted);border-bottom:2px solid #0000;margin-right:20px;padding:12px 4px;font-size:13px;font-weight:600;text-decoration:none}.tab-link:hover{color:var(--text)}.tab-link.active{color:var(--accent);border-bottom-color:var(--accent);font-weight:600}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);margin-top:18px;overflow:hidden}.panel-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:14px 18px;display:flex}.panel-head h3{flex-shrink:0;font-size:14px;font-weight:600}.group-grid-scroll{overflow-x:auto}.group-grid{align-items:center;gap:10px;padding:11px 18px;display:grid}.group-header{background:var(--bg);color:var(--text-muted);white-space:nowrap;font-size:11.5px;font-weight:600}.group-row{border-top:1px solid var(--border)}.group-row summary{cursor:pointer;list-style:none}.group-row summary::-webkit-details-marker{display:none}.group-row summary:hover{background:var(--bg)}.group-row-name{color:var(--accent);white-space:normal;overflow-wrap:break-word;font-size:14px;font-weight:400;line-height:1.3}.group-row.zero .group-row-name{color:var(--text-muted)}.group-row-eff{font-variant-numeric:tabular-nums;font-weight:400}.group-row-eff.good{color:var(--ok-text)}.group-row-eff.mid{color:var(--warn-text)}.group-row-eff.low{color:var(--bad-text)}.group-row-eff.zero{color:var(--text-faint);font-weight:400}.group-row-caret{color:var(--text-faint);text-align:right;font-size:13px;transition:transform .12s}.group-row[open] .group-row-caret{transform:rotate(180deg)}.group-row-detail{background:var(--bg);padding:4px 18px 18px}table.data-table{border-collapse:collapse;width:100%;font-size:13px}table.data-table thead tr{background:var(--bg)}table.data-table th{text-align:left;color:var(--text-muted);white-space:nowrap;padding:10px 18px;font-size:11.5px;font-weight:600}table.data-table td{border-top:1px solid var(--border);vertical-align:middle;white-space:nowrap;padding:11px 18px}table.data-table tbody tr:hover{background:var(--surface-tint-soft)}.empty-state,.error-state{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);text-align:center;color:var(--text-muted);padding:40px 24px;font-size:14px}.error-state{border-style:solid;border-color:var(--bad-bg);color:var(--bad-text);background:var(--bad-bg)}.run-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.run-list li{border:1px solid var(--border);background:var(--surface);border-radius:10px;justify-content:space-between;align-items:center;padding:10px 16px;font-size:13px;display:flex}.run-list .run-meta{color:var(--text-faint);font-variant-numeric:tabular-nums}.callout{border-radius:var(--radius-md);align-items:flex-start;gap:10px;margin-top:16px;padding:12px 16px;font-size:13.5px;display:flex}.callout.warn{background:var(--warn-bg);color:var(--warn-text)}.etiqueta-chip{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:400;display:inline-flex}.etiqueta-chip:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.etiqueta-chip.ok{background:var(--ok-bg);color:var(--ok-text)}.etiqueta-chip.warn{background:var(--warn-bg);color:var(--warn-text)}.etiqueta-chip.bad{background:var(--bad-bg);color:var(--bad-text)}.etiqueta-chip.unknown{background:var(--unknown-bg);color:var(--unknown-text)}.etiqueta-chip.info{background:var(--info-bg);color:var(--info-text)}.code-cell{font-family:ui-monospace,Cascadia Code,Consolas,monospace;font-size:13px}@media (max-width:900px){.app-shell{flex-direction:column}.sidebar{-webkit-overflow-scrolling:touch;white-space:nowrap;flex-flow:row;align-items:center;gap:4px;width:100%;padding:12px 14px;overflow-x:auto}.brand-row{border-bottom:none;flex-shrink:0;margin-bottom:0;padding:0 12px 0 0}.sidebar-section-label{display:none}.sidebar-link{white-space:nowrap;flex-shrink:0}.sidebar-footer{border-top:none;border-left:1px solid #ffffff26;flex-direction:row;flex-shrink:0;align-items:center;gap:10px;margin-top:0;margin-left:auto;padding:0 0 0 12px}.sidebar-footer .user-row{display:none}.logout-btn{white-space:nowrap;width:auto}.content,.main{padding:18px 16px 88px}.agent-dock{padding:0 16px 14px;left:0}.kpi-row,.kpi-row.attn{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.group-grid-scroll{-webkit-overflow-scrolling:touch}.group-grid,.group-row-detail{min-width:max-content}}
