:root{color-scheme:dark;--bg: #0b0f14;--panel: #11171f;--line: #1c2530;--text: #e6edf3;--muted: #8b98a5;--accent: #3b91cf;--font-heading: "Raleway", "Arial", sans-serif;--font-body: "Roboto", "Arial", sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-body)}h1,h2,h3,.brand{font-family:var(--font-heading);letter-spacing:.02em}.shell{display:grid;grid-template-columns:220px 1fr;min-height:100%}.nav{background:var(--panel);border-right:1px solid var(--line);padding:20px 12px;display:flex;flex-direction:column;gap:4px}.brand{font-size:20px;font-weight:700;padding:8px 12px 20px;color:var(--text)}.logo{display:inline-flex;align-items:center;gap:.6em;line-height:0}.logo svg{display:block;flex:none}.logo-stacked{display:inline-flex;flex-direction:column;align-items:center;line-height:0}.logo-stacked svg{display:block;flex:none}.nav a{color:var(--muted);text-decoration:none;padding:8px 12px;border-radius:8px}.nav a.active,.nav a:hover{color:var(--text);background:#3b91cf1f}.content{padding:32px 40px}.eyebrow{color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.12em}.muted{color:var(--muted)}@media (max-width: 800px){.shell{grid-template-columns:1fr}.nav{flex-direction:row;flex-wrap:wrap}}:root{--sev-critical: #e5484d;--sev-high: #f76b15;--sev-medium: #ffc53d;--sev-low: #8b98a5;--sev-info: #3b91cf}button{font:inherit;color:var(--text);background:transparent;border:1px solid var(--line);border-radius:8px;padding:8px 14px;cursor:pointer}button:disabled{opacity:.45;cursor:default}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.on{border-color:var(--accent)}input,textarea{font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:8px 10px;width:100%}code,pre,textarea.spec{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px}.panel{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:20px;margin:16px 0}.steps{list-style:none;display:flex;flex-wrap:wrap;gap:6px;padding:0;margin:16px 0 0}.steps button{border:none;color:var(--muted);padding:6px 10px}.steps li.on button{color:var(--text);background:#3b91cf26}.steps li.done button{color:var(--text)}.choices{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));margin:12px 0}.choice{display:flex;flex-direction:column;gap:6px;text-align:left;padding:14px}.choice.on{border-color:var(--accent);background:#3b91cf14}.form label{display:flex;flex-direction:column;gap:6px;margin:12px 0}.nav-buttons,.actions,.targets{display:flex;gap:8px;flex-wrap:wrap}.tiles{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.tile{display:flex;flex-direction:column;min-width:96px;padding:12px;border:1px solid var(--line);border-left-width:4px;border-radius:8px}.tile .n{font-size:26px;font-weight:700}.sev-critical{border-left-color:var(--sev-critical)}.sev-high{border-left-color:var(--sev-high)}.sev-medium{border-left-color:var(--sev-medium)}.sev-low{border-left-color:var(--sev-low)}.sev-info{border-left-color:var(--sev-info)}.pill{border-left:3px solid var(--line);padding:2px 8px;margin:2px 0;font-size:13px}table.grid{width:100%;border-collapse:collapse}table.grid th,table.grid td{text-align:left;vertical-align:top;padding:10px 8px;border-bottom:1px solid var(--line)}.small{font-size:12px}.callout{border:1px solid var(--line);border-radius:8px;padding:12px 16px;margin-top:12px}.split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-top:16px}textarea.spec{min-height:480px;resize:vertical}pre.plan{background:var(--bg);border:1px solid var(--line);border-radius:8px;padding:12px;overflow-x:auto}pre.plan.error{color:var(--sev-critical);white-space:pre-wrap}ul.hosts{padding-left:18px}@media (max-width: 900px){.split{grid-template-columns:1fr}.content{padding:20px 16px}}.center{min-height:100vh;display:grid;place-items:center;padding:16px}.signin{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:32px;max-width:360px;width:100%;text-align:center}.signin .brand{padding:0 0 8px;text-align:center}.account{padding:0 12px 16px;border-bottom:1px solid var(--line);margin-bottom:8px}button.link{border:none;padding:0;color:var(--muted);text-decoration:underline}
