:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: oklch(.978 .002 250);--surface: oklch(1 0 0);--surface-muted: oklch(.968 .004 250);--surface-strong: oklch(.932 .006 250);--sidebar: oklch(.19 .018 255);--sidebar-soft: oklch(.242 .022 255);--sidebar-ink: oklch(.95 .008 250);--sidebar-muted: oklch(.72 .026 250);--ink: oklch(.205 .024 255);--muted: oklch(.43 .026 255);--faint: oklch(.62 .02 255);--line: oklch(.885 .008 250);--line-strong: oklch(.8 .012 250);--accent: oklch(.52 .13 235);--accent-ink: oklch(.36 .14 238);--accent-soft: oklch(.955 .018 238);--good: oklch(.45 .115 155);--good-soft: oklch(.93 .04 155);--warn: oklch(.55 .12 72);--warn-soft: oklch(.94 .055 78);--bad: oklch(.54 .16 25);--bad-soft: oklch(.94 .048 25);--focus: oklch(.58 .16 238)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;background:var(--bg);color:var(--ink);font-size:13.5px;font-variant-numeric:tabular-nums}button,select{font:inherit}button{cursor:pointer}button:focus-visible,select:focus-visible,tr:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.app-shell{display:grid;grid-template-columns:216px minmax(0,1fr);width:100%;min-height:100vh;overflow-x:clip}.sidebar{display:flex;flex-direction:column;gap:18px;min-width:0;padding:16px 10px;background:var(--sidebar);color:var(--sidebar-ink)}.brand{display:flex;align-items:center;gap:9px;min-height:42px;padding:0 7px}.brand-mark{display:grid;place-items:center;width:30px;height:30px;border:1px solid oklch(.78 .03 250 / .28);border-radius:6px;background:#f6f9fc14;color:var(--sidebar-ink);font-size:.86rem;font-weight:760}.brand span{display:block;color:var(--sidebar-muted);font-size:.72rem;line-height:1.1}.brand strong{display:block;margin-top:2px;color:var(--sidebar-ink);font-size:1rem;line-height:1.1;letter-spacing:0}nav{display:grid;gap:3px;min-width:0}nav button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;border:0;border-radius:5px;padding:8px 8px 8px 11px;background:transparent;color:var(--sidebar-muted);text-align:left}nav button:hover{background:#ffffff0f;color:var(--sidebar-ink)}nav button.active{box-shadow:inset 2px 0 0 var(--accent);background:#ffffff12;color:var(--sidebar-ink)}nav button span{display:grid;gap:2px;min-width:0}nav button strong{overflow:hidden;font-size:.86rem;font-weight:650;line-height:1.15;text-overflow:ellipsis;white-space:nowrap}nav button small{color:inherit;font-size:.72rem;line-height:1.1;opacity:.68}nav button em{min-width:30px;border:1px solid oklch(1 0 0 / .09);border-radius:5px;padding:2px 7px;background:#00000029;color:var(--sidebar-muted);font-size:.72rem;font-style:normal;font-weight:700;line-height:1.25;text-align:center}nav button.active em{border-color:#ffffff29;background:#00000029;color:var(--sidebar-ink)}.workspace{min-width:0}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;min-height:50px;min-width:0;padding:8px 20px;border-bottom:1px solid var(--line);background:var(--surface)}.project-switcher{display:flex;align-items:center;gap:10px;min-width:0}.topbar span,.project-switcher>span{color:var(--muted);font-size:.82rem}select{min-width:240px;border:1px solid var(--line-strong);border-radius:5px;padding:6px 30px 6px 10px;background:var(--surface);color:var(--ink)}.topbar-meta{display:flex;align-items:center;gap:10px;min-width:0}.topbar-meta>span{overflow:hidden;max-width:240px;text-overflow:ellipsis;white-space:nowrap}.main-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;min-width:0;padding:16px 18px 18px}.main-content{min-width:0}.content-section{display:grid;gap:12px;min-width:0}.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;min-width:0;padding:2px 0 4px}h1,h2,p{margin:0}.section-label{display:block;margin-bottom:5px;color:var(--muted);font-size:.8rem;font-weight:650}h1{max-width:760px;font-size:1.12rem;font-weight:690;line-height:1.25;letter-spacing:0}h2{font-size:.9rem;font-weight:690;line-height:1.3}.section-heading p,.inspector p,.empty-state p,.error-box p{max-width:72ch;margin-top:5px;color:var(--muted);font-size:.86rem;line-height:1.48}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line);border-radius:6px;background:var(--surface)}.metric{display:flex;align-items:center;gap:8px;min-height:38px;padding:8px 11px;border-right:1px solid var(--line)}.metric:last-child{border-right:0}.metric span,.metric small,.title-cell small,.inspector-header span,.settings-list span,.inspector-empty span,.inspector-summary dt{color:var(--muted);font-size:.78rem}.metric span{color:var(--ink);font-weight:670}.metric small{overflow:hidden;min-width:0;color:var(--faint);text-overflow:ellipsis;white-space:nowrap}.metric strong{order:-1;color:var(--ink);font-size:.84rem;font-weight:760;line-height:1}.overview-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}.panel,.inspector,.error-box,.empty-state,.settings-list{border:1px solid var(--line);border-radius:6px;background:var(--surface)}.panel{display:grid;min-width:0;overflow:hidden}.panel-header{display:flex;align-items:center;justify-content:space-between;min-height:38px;padding:0 12px;border-bottom:1px solid var(--line);background:#f9fafb}.table-wrap{min-width:0;overflow:auto;background:var(--surface)}table{width:100%;min-width:600px;border-collapse:collapse}th,td{padding:8px 11px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle;font-size:.82rem}th{position:sticky;top:0;z-index:1;background:#fbfcfc;color:var(--muted);font-size:.74rem;font-weight:650}tbody tr{cursor:pointer;transition:background-color .16s ease,color .16s ease}tbody tr:nth-child(2n){background:#fbfcfc}tbody tr:hover{background:var(--surface-muted)}tbody tr[aria-selected=true],tbody tr[aria-selected=true]:hover{background:var(--accent-soft)}tbody tr[aria-selected=true] td:first-child{box-shadow:inset 3px 0 0 var(--accent)}tbody tr:last-child td{border-bottom:0}.title-cell{display:grid;gap:2px}td strong,.title-cell strong{font-weight:660}.pill{display:inline-flex;align-items:center;gap:6px;width:fit-content;min-height:21px;border:1px solid var(--line);border-radius:999px;padding:2px 8px;background:transparent;color:var(--muted);font-size:.76rem;font-weight:670;line-height:1.35;white-space:nowrap}.pill-good{border-color:#96bca2;background:transparent;color:var(--good)}.pill-warn{border-color:#d0b285;background:transparent;color:var(--warn)}.pill-bad{border-color:#dd9f99;background:var(--bad-soft);color:var(--bad)}.status-dot{width:7px;height:7px;border-radius:999px;background:var(--faint)}.status-dot-good{background:var(--good)}.status-dot-warn{background:var(--warn)}.status-dot-bad{background:var(--bad)}.inspector{position:sticky;top:66px;display:flex;flex-direction:column;max-height:calc(100vh - 82px);min-width:0;overflow:hidden}.inspector-empty{justify-content:center;min-height:190px;padding:20px;background:#fbfcfc}.inspector-empty strong{display:block;margin-top:4px;font-size:1rem}.inspector-header{display:flex;justify-content:space-between;gap:12px;padding:12px 13px;border-bottom:1px solid var(--line);background:#f9fafb}.inspector-header h2{margin-top:3px;font-size:.95rem}.icon-button{display:grid;place-items:center;width:28px;height:28px;min-width:28px;border:1px solid var(--line-strong);border-radius:5px;padding:0;background:var(--surface);color:var(--ink);font-size:1rem;line-height:1;white-space:nowrap}.icon-button:hover{background:var(--surface-strong)}pre{margin:0;overflow:auto;padding:13px;background:#f8f9fb;color:var(--ink);font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.77rem;line-height:1.55}.inspector-summary{display:grid;margin:0;padding:8px 0;border-bottom:1px solid var(--line)}.inspector-summary>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;padding:7px 13px}.inspector-summary dt{margin:0}.inspector-summary dd{overflow:hidden;margin:0;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.78rem;text-overflow:ellipsis;white-space:nowrap}.raw-json{min-height:0}.raw-json summary{cursor:pointer;padding:10px 13px;border-bottom:1px solid var(--line);color:var(--muted);font-size:.82rem;font-weight:680}.raw-json summary:hover{background:var(--surface-muted);color:var(--ink)}.raw-json[open]{flex:1;overflow:auto}.empty-state,.error-box{padding:15px}.empty-state{display:grid;gap:4px;min-height:92px;align-content:center}.error-box{border-color:#edaaa4;background:var(--bad-soft)}.skeleton-stack{display:grid;gap:10px}.skeleton-stack div{height:50px;border:1px solid var(--line);border-radius:6px;background:linear-gradient(90deg,var(--surface-muted),var(--surface),var(--surface-muted));background-size:240% 100%;animation:shimmer 1.2s ease-in-out infinite}.settings-list{display:grid}.settings-list>div{display:flex;justify-content:space-between;gap:20px;padding:13px 14px;border-bottom:1px solid var(--line)}.settings-list>div:last-child{border-bottom:0}.settings-list strong{overflow:hidden;max-width:68%;font-size:.86rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}@keyframes shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}@media(max-width:1120px){.main-grid{grid-template-columns:minmax(0,1fr)}.inspector{position:static;max-height:460px}}@media(max-width:820px){.app-shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:20;gap:12px;padding:11px 12px}.brand{min-height:34px;padding:0}nav{display:flex;max-width:100%;overflow-x:auto;padding-bottom:2px}nav button{width:auto;min-width:128px;white-space:nowrap}.topbar,.section-heading{align-items:stretch;flex-direction:column}.topbar{padding:11px 16px}.project-switcher,.topbar-meta{justify-content:space-between}.main-grid{padding:14px}.inspector-empty{display:none}.inspector:not(.inspector-empty){position:fixed;inset:0;z-index:40;max-height:none;border:0;border-radius:0}.inspector-header{min-height:56px}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.metric:nth-child(2){border-right:0}.metric:nth-child(1),.metric:nth-child(2){border-bottom:1px solid var(--line)}select{width:100%;min-width:0}.settings-list>div{align-items:flex-start;flex-direction:column;gap:4px}.settings-list strong{max-width:100%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}
