:root{color-scheme:dark;--bg:#080a0f;--panel:#111823;--panel2:#151f2d;--text:#edf3ff;--muted:#91a0b8;--line:#263448;--accent:#73d7ff;--good:#49d17d;--bad:#ff657d;--warn:#ffd166}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#122136,#080a0f 44%);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}header{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px 32px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(8,10,15,.88);backdrop-filter:blur(14px);z-index:2}h1{margin:0;font-size:31px;letter-spacing:-.04em}h2{margin:0 0 12px}.eyebrow{margin:0 0 4px;color:var(--accent);font-size:12px;text-transform:uppercase;letter-spacing:.18em}.sub,.muted{color:var(--muted)}.sub{margin:6px 0 0}main{display:flex;gap:22px;padding:22px 32px}aside{width:320px;flex:0 0 320px}.grow{flex:1;min-width:0}.stack{display:flex;flex-direction:column;gap:14px}.card,.project,.metric,.stage,.task{background:linear-gradient(180deg,var(--panel),#0e141f);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:0 16px 60px rgba(0,0,0,.18)}.compact{gap:10px;display:flex;flex-direction:column}.hero{display:flex;justify-content:space-between;gap:18px;align-items:center}.project{cursor:pointer;text-align:left;color:var(--text);width:100%}.project.active{border-color:var(--accent);box-shadow:0 0 0 1px rgba(115,215,255,.4)}button{background:#1c2b40;color:var(--text);border:1px solid #31435f;border-radius:12px;padding:10px 12px;font-weight:750;cursor:pointer}button:hover{border-color:var(--accent)}input,textarea{background:#0b111a;color:var(--text);border:1px solid var(--line);border-radius:12px;padding:10px;font:inherit}.header-actions,.toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.align-end{align-self:end}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);background:var(--panel2);border-radius:999px;padding:6px 10px;color:var(--muted);font-size:13px}.pill.good,.good{color:var(--good)}.pill.bad,.bad{color:var(--bad)}.warn{color:var(--warn)}.tabs{display:flex;gap:8px;flex-wrap:wrap}.tab{text-transform:capitalize;background:#0d1420}.tab.active{border-color:var(--accent);color:var(--accent);box-shadow:0 0 0 1px rgba(115,215,255,.25)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric b{display:block;font-size:27px;letter-spacing:-.04em}.metric span{color:var(--muted);font-size:13px}.loop{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:10px}.stage{min-height:122px}.stage h3{margin:0 0 8px;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.stage p,.task p{margin:8px 0;color:var(--muted);font-size:13px;line-height:1.35}.stage.done,.task.done{border-color:rgba(73,209,125,.45)}.stage.active{border-color:rgba(255,209,102,.65);box-shadow:0 0 0 1px rgba(255,209,102,.18)}.stage.pending{opacity:.65}.split{display:grid;grid-template-columns:1.05fr .95fr;gap:14px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.config-grid{display:grid;grid-template-columns:1fr 240px;gap:14px}.config-grid label{display:flex;flex-direction:column;gap:7px;color:var(--muted);font-size:13px}.config-grid .wide{grid-column:1/-1}.score{font-size:42px;font-weight:850;letter-spacing:-.05em}.filegrid{display:grid;grid-template-columns:280px 1fr;gap:14px}.filelist{max-height:560px;overflow:auto}.fileitem{display:block;width:100%;text-align:left;background:transparent;border:0;border-radius:8px;padding:7px;color:var(--text);font-weight:500}.fileitem:hover{background:#1a2435}.preview,.mini-pre{white-space:pre-wrap;overflow:auto;background:#070b11;border:1px solid var(--line);border-radius:14px;padding:14px}.preview{max-height:560px}.mini-pre{max-height:220px;color:var(--muted)}.empty{padding:80px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:18px}ul{color:var(--muted)}@media(max-width:1100px){main{flex-direction:column}aside{width:auto;flex:auto}.grid,.split,.filegrid,.loop,.config-grid{grid-template-columns:1fr}.hero{align-items:start;flex-direction:column}.align-end{align-self:start}}
