@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;700&family=Space+Grotesk:wght@400;500;700&display=swap";:root{color-scheme:light;--bg: #f5f7fb;--card: #ffffff;--text: #142033;--muted: #667085;--line: #d7dce5;--launcher-bg: #101828;--launcher-line: #344054;--launcher-ink: #f8fafc;--accent: #0f766e;--accent-soft: #e6fffb;--accent-deep: #115e59;--danger: #b42318;--shadow: 0 22px 60px rgba(16, 24, 40, .08);--shadow-soft: 0 14px 30px rgba(16, 24, 40, .06);font-family:Space Grotesk,ui-sans-serif,system-ui,sans-serif;background:var(--bg);color:var(--text)}*{box-sizing:border-box}html,body,#app{min-height:100%}body{margin:0;min-width:320px;color:var(--text);overflow-x:hidden;background:radial-gradient(circle at top left,rgba(15,118,110,.12) 0,transparent 24%),radial-gradient(circle at 100% 0,rgba(16,24,40,.08) 0,transparent 22%),linear-gradient(180deg,#fbfcfe,#f3f5f9)}button{font:inherit}h1,h2,p{margin:0}h2{font-size:19px;line-height:1.2}.shell{min-height:100vh;padding:0 20px 56px;overflow-x:hidden}.launcher-header{margin:0 -20px 24px;min-height:74px;padding:12px 18px;border:1px solid var(--launcher-bg);background:var(--launcher-bg);color:var(--launcher-ink);display:flex;align-items:center;gap:14px;flex-wrap:wrap}.launcher-title-group{display:grid;gap:3px;min-width:0}.launcher-title-group strong{display:inline-flex;align-items:center;gap:10px;font-size:28px;line-height:1}.launcher-title-group span{color:#98a2b3;font-size:14px}.phoenix-icon{width:34px;height:30px;display:inline-grid;place-items:center;border-radius:10px;background:linear-gradient(135deg,#2dd4bf,#0f766e);color:#fff;font-size:17px;font-weight:700}.launcher-meta,.session-box{padding:8px 12px;border-radius:999px;background:#182230;border:1px solid var(--launcher-line)}.launcher-meta{margin-left:auto;color:#98a2b3;font-family:IBM Plex Mono,monospace;font-size:12px;text-transform:uppercase}.session-box{min-height:38px;display:inline-flex;align-items:center;gap:8px;color:#d0d5dd;font-size:13px;max-width:min(360px,100%)}.status-dot{width:9px;height:9px;flex:0 0 auto;border-radius:50%;background:#f79009}.status-dot.ok{background:#12b76a}.grid{width:min(1180px,100%);max-width:calc(100vw - 40px);margin:0 auto;display:grid;grid-template-columns:360px minmax(0,1fr);gap:20px;align-items:start}.grid>*{min-width:0}.panel{background:var(--card);border:1px solid var(--line);border-radius:20px;padding:22px;box-shadow:var(--shadow-soft)}.wide{min-height:340px}.wide+.wide{grid-column:2}.wide.full{grid-column:1 / -1}.tool-drawer{grid-column:1 / -1;border:1px solid var(--line);border-radius:18px;background:#ffffffb8;box-shadow:var(--shadow-soft);overflow:hidden}.tool-drawer>summary{min-height:58px;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-weight:700}.tool-drawer>summary small{color:var(--muted);font-weight:500}.tool-drawer-body{padding:0 16px 16px;display:grid;grid-template-columns:minmax(0,1fr);gap:10px}.tool-drawer-body .panel{box-shadow:none}.tool-section{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.tool-section>summary{min-height:58px;padding:14px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.tool-section>summary span{font-weight:700}.tool-section>summary small{color:var(--muted);font-weight:500;text-align:right}.tool-section-body{border-top:1px solid var(--line);padding:16px}.tool-actions{margin-bottom:14px}.panel-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px;flex-wrap:wrap}.panel-header p{margin-top:6px;color:var(--muted);font-size:14px;line-height:1.5}.actions{display:flex;flex-wrap:wrap;gap:10px}.inline-form{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.inline-form label{display:grid;gap:4px;color:var(--muted);font-size:12px;font-weight:700}.text-input{min-height:40px;min-width:min(100%,280px);border:1px solid #c7d1df;border-radius:10px;padding:8px 10px;color:var(--ink);font:inherit}.text-input.small{width:104px;min-width:104px}.text-input.token{width:min(420px,100%);min-width:min(420px,100%);font-family:IBM Plex Mono,monospace;font-size:12px}.scan-controls{margin-bottom:14px}.history-filters{align-items:end}.filter-count{min-height:40px;display:inline-flex;align-items:center;color:var(--muted);font-size:13px;font-weight:700}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}.settings-grid label{display:grid;gap:6px;color:var(--muted);font-size:12px;font-weight:700}.settings-wide{grid-column:1 / -1}.toggle-row{min-height:42px;grid-template-columns:auto minmax(0,1fr);align-items:center;color:var(--text)}.toggle-row input{width:18px;height:18px}.small-select{width:160px;min-width:160px}.button{min-height:40px;border:1px solid transparent;border-radius:12px;padding:9px 13px;cursor:pointer;font-weight:700;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}.button:hover:not(:disabled){transform:translateY(-1px)}.button:disabled{cursor:not-allowed;opacity:.55}.button.primary{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 10px 20px #0f766e33}.button.secondary{background:var(--launcher-bg);border-color:var(--launcher-bg);color:#fff}.button.ghost{background:#fff;border-color:#c7d1df;color:#344054}.button.mini{min-height:30px;padding:5px 8px;border-radius:8px;font-size:12px}.button.danger{background:#fff1f0;border-color:#fecaca;color:var(--danger)}.facts{display:grid;grid-template-columns:72px minmax(0,1fr);gap:8px 12px;margin:18px 0 0;font-size:14px}.facts dt,th{color:var(--muted)}.facts dd{margin:0;word-break:break-word}.report-facts{grid-template-columns:96px minmax(0,1fr);margin-bottom:14px}.empty,.summary{border:1px dashed #c7d1df;border-radius:14px;padding:14px;color:var(--muted);background:#f9fbfd}.summary{display:flex;justify-content:space-between;gap:12px;margin-bottom:12px;border-style:solid}.summary.ok{border-color:#99f6e4;background:var(--accent-soft);color:var(--accent-deep)}.summary.bad{border-color:#fecaca;background:#fff1f0;color:var(--danger)}.apply-result{margin-top:14px}.residual-grid,.ops-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.ops-grid{margin-bottom:14px}.metric-card{min-height:108px;border:1px solid #d7dce5;border-radius:12px;padding:12px;background:#fff;display:grid;align-content:start;gap:6px}.metric-card.alert{border-color:#fecaca;background:snow}.metric-card span{color:var(--muted);font-size:12px;font-weight:700}.metric-card strong{font-size:26px;line-height:1}.metric-card small{color:var(--muted);line-height:1.35;word-break:break-word}.progress-block{border:1px solid var(--line);border-radius:12px;padding:12px;background:#fff}.progress-row{display:flex;justify-content:space-between;gap:12px;color:var(--ink)}.progress-row span,.progress-block small{color:var(--muted)}.progress-track{height:10px;margin:10px 0 8px;border-radius:999px;background:#e8edf4;overflow:hidden}.progress-fill{height:100%;border-radius:inherit;background:var(--accent)}.checks{display:grid;gap:10px}.check{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}.check summary{min-height:44px;display:flex;align-items:center;gap:10px;padding:10px 12px;cursor:pointer;font-weight:700}.status-pill{width:48px;text-align:center;border-radius:999px;padding:3px 8px;font-family:IBM Plex Mono,monospace;font-size:12px;font-weight:700}.status-pill.ok{background:#ccfbf1;color:#115e59}.status-pill.bad{background:#fee2e2;color:#991b1b}.decision{display:inline-flex;max-width:280px;border-radius:999px;padding:4px 8px;font-family:IBM Plex Mono,monospace;font-size:11px;font-weight:700;line-height:1.25}.decision.skip{background:#eef2f6;color:#475467}.decision.eligible{background:#fff1f0;color:var(--danger)}pre{margin:0;padding:12px;overflow:auto;border-top:1px solid var(--line);background:#f8fafc;color:#344054;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.5}.table-wrap{overflow-x:auto}.terminal-log{max-height:320px;overflow:auto;border:1px solid #101828;border-radius:12px;padding:10px;background:#101828;color:#e4e9f1;font-family:IBM Plex Mono,monospace;font-size:12px;line-height:1.55}.terminal-line{display:grid;grid-template-columns:68px 52px minmax(320px,1fr);gap:10px;min-width:620px;padding:2px 0}.terminal-line span{color:#98a2b3}.terminal-line strong{text-transform:uppercase}.terminal-line.info strong{color:#93c5fd}.terminal-line.ok strong{color:#5eead4}.terminal-line.warn strong{color:#fcd34d}.terminal-line.error strong{color:#fca5a5}.terminal-line code{white-space:pre-wrap}table{width:100%;border-collapse:collapse;font-size:13px}th,td{border-bottom:1px solid #e4e9f1;padding:10px 8px;text-align:left;vertical-align:top}th{font-family:IBM Plex Mono,monospace;font-size:11px;text-transform:uppercase}.error{margin-top:14px;border:1px solid #fecaca;border-radius:14px;padding:12px;background:#fff1f0;color:var(--danger);font-size:14px}@media(max-width:760px){.launcher-header,.panel-header{flex-direction:column;align-items:stretch}.launcher-meta{margin-left:0;width:fit-content}.grid{max-width:calc(100vw - 32px);grid-template-columns:1fr}.wide+.wide{grid-column:auto}.wide.full,.tool-drawer{grid-column:auto}.tool-drawer>summary{align-items:flex-start;flex-direction:column}.tool-drawer-body,.settings-grid,.residual-grid,.ops-grid{grid-template-columns:1fr}}
