:root{--bg: #0f1419;--surface: #1a2332;--border: #2d3a4d;--text: #e7ecf3;--muted: #8b9bb4;--accent: #3d8bfd;--accent-hover: #5a9dff;--danger-bg: #3a2228;--danger-border: #6b3a45;--font: system-ui, -apple-system, Segoe UI, Roboto, Ubuntu, Cantarell, sans-serif}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-height:100vh;font-family:var(--font);background:var(--bg);color:var(--text);line-height:1.5}#app{min-height:100vh}code{font-size:.9em;background:#00000059;padding:.12em .35em;border-radius:4px}.login-page{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.5rem}.login-page__banner{width:100%;max-width:400px;margin-bottom:1rem;padding:.75rem 1rem;background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px;font-size:.9rem}.login-page__card{width:100%;max-width:400px;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:2rem}.login-page__title{margin:0 0 .25rem;font-size:1.5rem;font-weight:600}.login-page__subtitle{margin:0 0 1.5rem;color:var(--muted);font-size:.95rem}.login-page__form{display:flex;flex-direction:column;gap:1rem}.login-page__field{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.login-page__field input{padding:.6rem .75rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit}.login-page__field input:focus{outline:2px solid var(--accent);outline-offset:1px}.login-page__field-error{color:#f87171;font-size:.8rem}.login-page__form-error{margin:0;color:#f87171;font-size:.875rem}.login-page__submit{margin-top:.25rem;padding:.65rem 1rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}.login-page__submit:hover:not(:disabled){background:var(--accent-hover)}.login-page__submit:disabled{opacity:.7;cursor:not-allowed}.dash{min-height:100vh;display:flex;flex-direction:column}.dash__top{display:flex;align-items:center;justify-content:space-between;padding:.875rem 1.5rem;border-bottom:1px solid var(--border);background:var(--surface)}.dash__logo{font-weight:700;letter-spacing:-.02em}.dash__top-actions{display:flex;align-items:center;gap:1rem}.dash__user{color:var(--muted);font-size:.9rem}.dash__ghost-btn{padding:.4rem .75rem;border-radius:8px;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;cursor:pointer}.dash__ghost-btn:hover{border-color:var(--muted)}.dash__link{text-decoration:none;display:inline-flex;align-items:center}.dash__body{flex:1;padding:1.5rem;max-width:1680px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:1.25rem}.dash__row-actions--flush{margin-top:0}.dash__fieldset>.dash__hint:first-of-type{margin-top:0}.dash__fieldset{border:1px solid var(--border);border-radius:10px;padding:1rem 1.1rem 1.1rem;margin:0 0 1rem}.dash__fieldset:last-of-type{margin-bottom:0}.dash__fieldset--muted{opacity:.92}.dash__fieldset legend{padding:0 .4rem;font-size:.72rem;font-weight:700;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.dash__fieldset .dash__hint:last-child{margin-bottom:0}.dash__multilist-toolbar{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.5rem}.dash__multilist{max-height:200px;overflow:auto;padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);display:flex;flex-direction:column;gap:.35rem}.dash__multilist--empty{color:var(--muted);font-size:.875rem;padding:.35rem 0}.dash__multilist__item{display:flex;align-items:flex-start;gap:.5rem;font-size:.875rem;cursor:pointer;border-radius:6px;padding:.25rem .35rem;margin:0 -.35rem}.dash__multilist__item:hover{background:#ffffff0a}.dash__multilist__item input{margin-top:.2rem;flex-shrink:0;accent-color:var(--accent)}.dash__multilist__item span{flex:1;line-height:1.35}.dash__scope-row{display:grid;grid-template-columns:1fr 1fr;gap:1.25rem;align-items:stretch}.dash__scope-row--triple{grid-template-columns:repeat(3,minmax(0,1fr))}.dash__scope-col{display:flex;flex-direction:column;gap:.35rem;min-width:0}.dash__scope-col .dash__label{flex:1;min-height:0}.dash__scope-col .dash__multilist{flex:1;min-height:120px}@media(max-width:1100px){.dash__scope-row--triple{grid-template-columns:1fr}}@media(max-width:720px){.dash__scope-row{grid-template-columns:1fr}}.dash__logs-wrap{margin-top:1rem}.dash__logs-filters{margin-bottom:1rem}.dash__kpis{display:flex;flex-wrap:wrap;align-items:stretch;gap:.75rem 1rem;margin-bottom:1rem}.dash__kpis-group{display:grid;grid-template-columns:repeat(3,minmax(8.5rem,1fr));gap:.75rem;flex:1 1 0;min-width:min(100%,28rem)}.dash__kpis-group--counts .dash__kpi{text-align:left}.dash__kpis-group--outcomes .dash__kpi{text-align:right}.dash__kpis-group--outcomes .dash__kpi-label,.dash__kpis-group--outcomes .dash__kpi-value{align-self:flex-end;text-align:right;width:100%}.dash__kpis-sep{width:1px;flex:0 0 1px;background:var(--border);align-self:stretch;margin:.15rem 0}@media(max-width:720px){.dash__kpis{flex-direction:column}.dash__kpis-sep{width:100%;height:1px;flex:0 0 auto;margin:.25rem 0}.dash__kpis-group{grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));min-width:0}}.dash__kpi{padding:.65rem .85rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);display:flex;flex-direction:column;gap:.25rem}.dash__kpi-label{font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.dash__kpi-value{font-size:1.35rem;font-weight:700;letter-spacing:-.02em;line-height:1.2}.dash__run-progress{margin-top:.75rem;padding:.75rem .85rem;border-radius:8px;border:1px solid var(--border);background:var(--bg)}.dash__run-progress-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.5rem}.dash__run-progress-label{font-size:.875rem;font-weight:600;color:var(--text)}.dash__run-progress-track{height:.45rem;border-radius:999px;background:#00000059;overflow:hidden;border:1px solid var(--border)}.dash__run-progress-fill{width:0%;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--accent),#6eb3ff);transition:width .2s ease-out}.dash__run-current-log{margin:.55rem 0 0;font-size:.78rem;line-height:1.45;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;word-break:break-word}.dash__logs-note{margin-bottom:.65rem}.dash__table-scroll{overflow:auto;max-height:320px;border-radius:8px;border:1px solid var(--border)}.dash__table-scroll--wide{max-height:420px}.dash__logs-table-panel{position:relative}.dash__logs-validating-overlay[hidden]{display:none!important}.dash__logs-validating-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:4;display:flex;align-items:flex-start;justify-content:center;padding:2rem 1rem;background:#0f1419c7;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);border-radius:8px;pointer-events:none}.dash__logs-validating-overlay__card{display:flex;align-items:center;gap:.75rem;margin-top:.5rem;padding:.65rem 1rem;border-radius:10px;border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 28px #00000059;font-size:.9rem;font-weight:600;color:var(--text);animation:dash-validating-pulse 1.8s ease-in-out infinite}.dash__logs-validating-overlay__spinner{width:1.1rem;height:1.1rem;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;animation:dash-validating-spin .75s linear infinite}@keyframes dash-validating-spin{to{transform:rotate(360deg)}}@keyframes dash-validating-pulse{0%,to{opacity:.92}50%{opacity:1}}.dash__run-summary{margin-top:.75rem;padding:.75rem .85rem;border-radius:8px;border:1px solid var(--border);background:var(--bg)}.dash__run-summary-meta{margin:0 0 .65rem;font-size:.8125rem;color:var(--muted)}.dash__run-summary-empty{margin:0;font-size:.8125rem;color:var(--muted)}.dash__run-summary-table{width:100%;border-collapse:collapse;font-size:.78rem}.dash__run-summary-table th,.dash__run-summary-table td{padding:.4rem .5rem;text-align:left;border-bottom:1px solid var(--border)}.dash__run-summary-table th{color:var(--muted);font-weight:600}.dash__run-summary-id{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;word-break:break-all}.dash__table{width:100%;border-collapse:collapse;font-size:.8125rem}.dash__table th,.dash__table td{padding:.5rem .65rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:top}.dash__table th{position:sticky;top:0;background:var(--surface);color:var(--muted);font-weight:600;z-index:1}.dash__table tbody tr:last-child td{border-bottom:none}.dash__table tbody tr:hover{background:#ffffff08}.dash__table-cell-agent-val{vertical-align:middle}.dash__agent-val-row{display:inline-flex;align-items:center;gap:.35rem;flex-wrap:wrap}.dash__agent-val-text{line-height:1.35}.dash__agent-rationale-btn{flex-shrink:0;width:1.2rem;height:1.2rem;padding:0;margin:0;border-radius:999px;border:1px solid var(--border);background:#3d8bfd2e;color:var(--accent);font-size:.65rem;font-weight:700;font-style:italic;font-family:Georgia,Times New Roman,serif;line-height:1;cursor:pointer}.dash__agent-rationale-btn:hover,.dash__agent-rationale-btn:focus-visible{background:#3d8bfd61;outline:none;box-shadow:0 0 0 2px #3d8bfd59}.dash__modal[hidden]{display:none!important}.dash__modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;display:flex;align-items:center;justify-content:center;padding:max(1rem,env(safe-area-inset-top,0px)) max(1rem,env(safe-area-inset-right,0px)) max(1rem,env(safe-area-inset-bottom,0px)) max(1rem,env(safe-area-inset-left,0px))}.dash__modal-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;margin:0;padding:0;border:none;background:#00000094;cursor:pointer}.dash__modal-dialog{position:relative;z-index:1;width:100%;max-width:min(40rem,calc(100vw - 2rem));max-height:min(85vh,100%);display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border);border-radius:12px;box-shadow:0 20px 48px #00000080}.dash__modal-head{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.85rem 1rem;border-bottom:1px solid var(--border)}.dash__modal-title{margin:0;font-size:1rem;font-weight:600;color:var(--text)}.dash__modal-close{flex-shrink:0;width:2rem;height:2rem;margin:0;padding:0;border:none;border-radius:6px;background:transparent;color:var(--muted);font-size:1.35rem;line-height:1;cursor:pointer}.dash__modal-close:hover,.dash__modal-close:focus-visible{color:var(--text);background:#ffffff0f;outline:none}.dash__modal-body{flex:1 1 auto;min-height:0;overflow-y:auto;overflow-x:hidden;padding:1rem 1.1rem;font-size:.875rem;line-height:1.5;color:var(--text);white-space:pre-wrap;word-break:break-word;-webkit-overflow-scrolling:touch}.dash__table th:nth-child(n+9),.dash__table td:nth-child(n+9){background:#7c5cff12}.dash__table th:nth-child(9),.dash__table td:nth-child(9){border-left:2px solid rgba(124,92,255,.4)}.dash__table a.dash__table-report-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.dash__table a.dash__table-report-link:hover{color:var(--accent-hover)}.dash__table-na{color:var(--muted);font-style:italic;font-size:.8125rem}.dash__table .dash__table-control{width:100%;min-width:6.5rem;max-width:14rem;padding:.35rem .45rem;border-radius:6px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit;font-size:.8125rem}.dash__table .dash__table-control:focus{outline:2px solid var(--accent);outline-offset:1px}.dash__table .dash__table-control:disabled{opacity:.45;cursor:not-allowed}.dash__primary--table{padding:.35rem .65rem;font-size:.8125rem;white-space:nowrap}.dash__alert{padding:.75rem 1rem;background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:8px;font-size:.9rem}.dash__card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.25rem 1.5rem}.dash__card--muted{opacity:.92}.dash__card-head{margin-bottom:1rem}.dash__h1{margin:0 0 .35rem;font-size:1.25rem;font-weight:600}.dash__h2{margin:0 0 .35rem;font-size:1.1rem;font-weight:600}.dash__sub{margin:0;color:var(--muted);font-size:.875rem}.dash__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:640px){.dash__grid{grid-template-columns:1fr}}.dash__label{display:flex;flex-direction:column;gap:.35rem;font-size:.875rem}.dash__label--full{grid-column:1 / -1}.dash__label input,.dash__label select,.dash__label textarea{padding:.5rem .65rem;border-radius:8px;border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit}.dash__label input:disabled{opacity:.5}.dash__hint{margin:.5rem 0 .75rem;font-size:.8rem;color:var(--muted)}.dash__row-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;align-items:center}.dash__primary{padding:.5rem 1rem;border:none;border-radius:8px;background:var(--accent);color:#fff;font:inherit;font-weight:600;cursor:pointer}.dash__primary:hover:not(:disabled){background:var(--accent-hover)}.dash__primary:disabled{opacity:.45;cursor:not-allowed}.dash__pre{margin-top:1rem;padding:1rem;background:var(--bg);border:1px solid var(--border);border-radius:8px;font-size:.75rem;overflow:auto;max-height:280px;white-space:pre-wrap;word-break:break-word}.dash__run-logs{margin-top:.75rem}.dash__run-logs-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:.35rem}.dash__run-logs-title{font-size:.8125rem;font-weight:600;color:var(--muted)}.dash__ghost-btn--sm{font-size:.7rem;padding:.15rem .4rem}.dash__run-logs-pre{margin:0;padding:.75rem .85rem;background:#0d1117;color:#c9d1d9;border:1px solid var(--border);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;line-height:1.55;overflow:auto;max-height:400px;white-space:pre-wrap;word-break:break-word}.dash__placeholder{margin:0;color:var(--muted);font-size:.9rem}
