:root{--color-bg:#07182d;--color-surface:#0e2138;--color-surface-2:#16324f;--color-border:#294663;--color-text:#fff;--color-text-muted:#b4b9c0;--color-accent:#02c8ff;--color-accent-2:#0a60ff;--color-accent-2-strong:#0847c4;--color-magenta:#ff007f;--color-warn:#ff9000;--color-success:#29d17f;--color-danger:#ff4d67;--bg:var(--color-bg);--surface:var(--color-surface);--surface-2:var(--color-surface-2);--border:var(--color-border);--text:var(--color-text);--muted:var(--color-text-muted);--primary:var(--color-accent-2);--primary-700:var(--color-accent-2-strong);--danger:var(--color-danger);--warn:var(--color-warn);--ok:var(--color-success);--radius:10px;--font-sans:"CiscoSansTT","CiscoSans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;--font-head:"CiscoSansTT Medium","CiscoSansTT","CiscoSans",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:15px;line-height:1.55}a{color:var(--color-accent);text-decoration:none}a:hover{text-decoration:underline}.app-header{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-bottom:1px solid var(--color-border);background:var(--color-surface);position:-webkit-sticky;position:sticky;top:0;z-index:10}.app-header .brand{font-weight:700;letter-spacing:.2px;font-family:var(--font-head)}.app-header .brand span{color:var(--color-accent)}.container{max-width:1080px;margin:0 auto;padding:28px 24px 80px}h1,h2,h3{font-family:var(--font-head)}h1{font-size:1.7rem;margin:0 0 6px}h2{font-size:1.25rem;margin:28px 0 10px}h3{font-size:1.05rem;margin:16px 0 6px}.muted{color:var(--color-text-muted)}.muted.status-failed{color:var(--color-danger)}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:18px;margin-bottom:16px}.btn{display:inline-flex;align-items:center;gap:8px;background:var(--color-accent-2);color:#fff;border:none;border-radius:8px;padding:9px 16px;font-size:.95rem;font-weight:600;cursor:pointer}.btn:hover{background:var(--color-accent-2-strong);text-decoration:none}.btn.secondary{background:var(--color-surface-2);color:var(--color-text)}.btn.ghost,.btn.secondary{border:1px solid var(--color-border)}.btn.ghost{background:transparent;color:var(--color-accent)}.btn.danger{background:var(--color-danger)}.btn:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{width:100%;background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:8px;color:var(--color-text);padding:9px 11px;font:inherit}input:focus,select:focus,textarea:focus{outline:2px solid var(--color-accent);border-color:transparent}label{display:block;font-weight:600;margin:12px 0 4px;font-size:.9rem}.field-help{color:var(--color-text-muted);font-size:.82rem;margin-top:3px}.field-error{color:var(--color-danger);font-size:.82rem;font-weight:600;margin-top:4px}.field-invalid .agent-search,.field-invalid .saas-url-input,.field-invalid input,.field-invalid select,.field-invalid textarea{border-color:var(--color-danger)}.row{display:grid;grid-template-columns:1fr 1fr;grid-gap:14px;gap:14px}.badge{display:inline-block;padding:2px 9px;border-radius:999px;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.4px;background:var(--color-surface-2);border:1px solid var(--color-border)}.badge.sev-critical,.badge.sev-high{background:rgba(255,77,103,.16);color:#ff9db0;border-color:rgba(255,77,103,.4)}.badge.sev-medium{background:rgba(255,144,0,.16);color:#ffc078;border-color:rgba(255,144,0,.4)}.badge.sev-info,.badge.sev-low{background:rgba(41,209,127,.16);color:#86efac;border-color:rgba(41,209,127,.4)}.status{font-size:.78rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--color-surface-2);border:1px solid var(--color-border)}.pov-list{display:grid;grid-gap:12px;gap:12px}.pov-row{display:flex;align-items:center;justify-content:space-between}.pov-link{flex:1 1;display:block;color:inherit}.pov-link:hover{text-decoration:none}.pov-row-actions{display:flex;align-items:center;gap:12px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;background:transparent;color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:8px;cursor:pointer}.icon-btn:hover{color:#fff}.icon-btn.danger:hover{background:var(--color-danger);border-color:var(--color-danger)}.icon-btn:disabled{opacity:.5;cursor:not-allowed}.modal-backdrop{position:fixed;inset:0;z-index:50;background:rgba(0,0,0,.6);display:flex;align-items:center;justify-content:center;padding:20px}.modal{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:22px;max-width:460px;width:100%}.modal h3{margin:0 0 10px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.delete-details{margin:10px 0 0;padding-left:18px;max-height:220px;overflow-y:auto;font-size:.82rem;line-height:1.5}.delete-details li{list-style:disc;word-break:break-word}.auto-refresh-note{display:flex;align-items:center;gap:8px;font-size:.82rem;margin:6px 0 0}.auto-refresh-dot{width:8px;height:8px;border-radius:50%;background:var(--color-accent);display:inline-block;animation:auto-refresh-pulse 1.4s ease-in-out infinite}@keyframes auto-refresh-pulse{0%,to{opacity:.3}50%{opacity:1}}.steps{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.step{padding:6px 12px;border-radius:999px;border:1px solid var(--color-border);color:var(--color-text-muted);font-size:.85rem}.step.active{background:var(--color-accent-2);color:#fff;border-color:transparent}.step.done{color:var(--color-success);border-color:rgba(41,209,127,.4)}.usecase-pick{border:1px solid var(--color-border);border-radius:10px;padding:14px;margin-bottom:10px}.usecase-pick.selected{border-color:var(--color-accent);background:rgba(2,200,255,.08)}.usecase-pick header{justify-content:space-between}.toolbar,.usecase-pick header{display:flex;align-items:center}.toolbar{gap:10px;flex-wrap:wrap}.spacer{flex:1 1}.agent-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-gap:8px;gap:8px}.agent-option{display:flex;align-items:center;gap:8px;margin:0;border:1px solid var(--color-border);border-radius:8px;padding:8px 10px;font-weight:500;cursor:pointer;background:var(--color-surface-2)}.agent-option.selected{border-color:var(--color-accent);background:rgba(2,200,255,.12)}.agent-search{width:100%;margin-bottom:6px}.agent-search-hint{color:var(--color-text-muted);font-size:.82rem;margin:2px 0 8px}.agent-list-group{margin:10px 0}.agent-list-title{font-weight:600;font-size:.85rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px}.saas-url-row{border:1px solid var(--color-border);border-radius:10px;padding:12px;margin-bottom:10px;background:var(--color-surface-2)}.list-row,.saas-url-head{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:8px}.list-row-input,.saas-url-input{flex:1 1 240px;min-width:0}.list-row select,.saas-url-head select{flex:0 0 auto;width:auto;min-width:150px}.list-row .btn,.saas-url-head .btn{flex:0 0 auto}.list-row select.dns-record-select{min-width:92px}.dns-check-ok{color:var(--color-success)}.btn.btn-inline{padding:1px 8px;font-size:.8rem;vertical-align:baseline}.agent-selected{margin:8px 0 4px}.agent-chips{display:flex;flex-wrap:wrap;gap:6px}.agent-chip{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--color-accent);background:rgba(2,200,255,.12);color:var(--color-text);border-radius:999px;padding:3px 10px;font-size:.82rem;font-weight:500;cursor:pointer}.agent-chip:hover{background:rgba(2,200,255,.2)}.agent-chip-x{color:var(--color-text-muted);font-weight:700;line-height:1}.link-row{display:flex;gap:8px;margin-bottom:6px}.tag-list{list-style:none;padding:0;margin:8px 0 0;display:grid;grid-gap:6px;gap:6px}.tag-list li{font-size:.9rem}.tag-list code{background:var(--color-surface-2);border:1px solid var(--color-border);border-radius:6px;padding:1px 6px;font-size:.85rem}.branding-preview{display:flex;align-items:center;min-height:56px;margin:6px 0}.branding-logo{height:48px;width:auto;max-width:220px;object-fit:contain;background:#fff;border-radius:8px;padding:4px 8px}.branding-hero{height:56px;width:auto;max-width:100%;object-fit:cover;border-radius:8px;border:1px solid var(--color-border)}.report-page{max-width:920px;margin:0 auto;padding:24px;background:var(--color-bg);color:var(--color-text);min-height:100vh}.report-toolbar{display:flex;align-items:center;gap:12px;justify-content:flex-end;margin-bottom:16px}.report-version{color:var(--color-text-muted);font-size:.85rem}.report{color:var(--color-text)}.report-cover{padding:40px 0 28px;border-bottom:3px solid var(--color-accent);margin-bottom:24px}.report-cover .eyebrow{text-transform:uppercase;letter-spacing:1.5px;color:var(--color-accent);font-weight:700;font-size:.8rem;margin:0}.report-cover h1{font-size:2.2rem;color:var(--color-text);margin:8px 0}.report-cover .subtitle{font-size:1.1rem;color:var(--color-text-muted);margin:0}.report-cover .meta{color:var(--color-text-muted);font-size:.85rem;margin-top:12px}.report-hero{position:relative;padding:30px 28px 26px;border-radius:12px;margin-bottom:24px;border:1px solid var(--color-border);background:radial-gradient(900px 380px at 10% -25%,rgba(2,200,255,.14),transparent 60%),linear-gradient(135deg,#0a1c33,#07182d)}.report-hero.has-bg{border-color:rgba(2,200,255,.28)}.report-hero-logos{display:flex;align-items:center;gap:16px;margin-bottom:16px;flex-wrap:wrap}.report-te-logo{height:26px;width:auto}.report-cust-logo{height:42px;width:auto;max-width:220px;object-fit:contain;background:#fff;border-radius:8px;padding:5px 10px}.report-hero .eyebrow{text-transform:uppercase;letter-spacing:1.5px;color:var(--color-accent);font-weight:700;font-size:.8rem;margin:0}.report-hero h1{font-size:2.1rem;margin:8px 0;color:#fff}.report-hero .subtitle{color:var(--color-text-muted);font-size:1.05rem;margin:0}.report-hero .meta{color:var(--color-text-muted);font-size:.85rem;margin-top:10px}.report-section{margin:24px 0}.report-section h2{border-bottom:1px solid var(--color-border);padding-bottom:6px}.report-section h2,.report-section p{color:var(--color-text)}.highlights li{margin:6px 0}.report .hypothesis{background:var(--color-surface);padding:10px 12px;border-radius:8px;border:1px solid var(--color-border)}.report figure.chart{margin:16px 0}.report figcaption{font-weight:600;color:var(--color-text-muted);margin-bottom:4px}.report .caption{color:var(--color-text-muted);font-size:.85rem}.path-table{width:100%;border-collapse:collapse;margin:8px 0}.path-table td,.path-table th{border:1px solid var(--color-border);padding:6px 10px;text-align:left;font-size:.9rem;color:var(--color-text)}.path-table th{background:var(--color-surface-2)}.path-table tr.culprit{background:rgba(255,77,103,.14)}.path-table tr.culprit td{color:#ff9db0;font-weight:600}.finding{border:1px solid var(--color-border);border-left:4px solid var(--color-text-muted);border-radius:8px;padding:14px;margin:14px 0;background:var(--color-surface)}.finding.sev-critical,.finding.sev-high{border-left-color:var(--color-danger)}.finding.sev-medium{border-left-color:var(--color-warn)}.finding-head{display:flex;align-items:center;gap:10px}.finding-head h3{margin:0;color:var(--color-text)}.finding .confidence{margin-left:auto;color:var(--color-text-muted);font-size:.82rem}.value-box{background:rgba(41,209,127,.12);border:1px solid rgba(41,209,127,.4);border-radius:8px;padding:10px 12px;margin-top:10px}.value-box strong{color:#6ee7b7}.value-box p{color:#a7f3d0;margin:4px 0 0}.issue-links ul{margin:4px 0}.evidence-item{background:var(--color-surface);border:1px solid var(--color-border);border-radius:8px;padding:10px 12px;margin:8px 0}.evidence-file{font-weight:600;color:var(--color-text-muted);margin:0 0 4px}.totals{display:flex;gap:18px;flex-wrap:wrap;margin-top:12px}.stat{background:var(--color-surface);border:1px solid var(--color-border);border-radius:10px;padding:14px 18px;min-width:150px}.stat-value{font-size:1.5rem;font-weight:800;color:var(--color-accent)}.stat-label{color:var(--color-text-muted);font-size:.82rem}.editor-field{width:100%}.editor-grid{display:grid;grid-gap:14px;gap:14px}.editor-block{border:1px solid var(--color-border);border-radius:10px;padding:14px;margin-bottom:12px;background:var(--color-surface)}.editor-block textarea{min-height:72px}@media print{.no-print{display:none!important}.report-page{padding:0}}