:root{color-scheme:dark;--bg: #0c0c0d;--bg-elevated: #121214;--surface: #18181b;--surface-2: #222226;--border: #2a2a2e;--border-strong: #3f3f46;--text: #fafafa;--text-secondary: #a1a1aa;--text-tertiary: #71717a;--accent: #6b9aff;--accent-hover: #8bb0ff;--accent-muted: rgba(107, 154, 255, .16);--ok: #34d399;--ok-muted: rgba(52, 211, 153, .14);--warn: #fbbf24;--warn-muted: rgba(251, 191, 36, .14);--danger: #f87171;--danger-muted: rgba(248, 113, 113, .14);--chart-human: #6b9aff;--chart-cloud: #e3b34a;--chart-bot: #a78bfa;--chart-preview: #2dd4bf;--radius: 12px;--radius-sm: 8px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--mono: ui-monospace, "SF Mono", Menlo, Consolas, monospace;--shadow: 0 1px 0 rgba(255,255,255,.04), 0 12px 32px rgba(0,0,0,.45);--sidebar: 248px;--focus: 0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}[data-theme=light]{color-scheme:light;--bg: #f4f4f5;--bg-elevated: #ffffff;--surface: #ffffff;--surface-2: #f4f4f5;--border: #e4e4e7;--border-strong: #d4d4d8;--text: #09090b;--text-secondary: #52525b;--text-tertiary: #71717a;--accent: #3b6fd8;--accent-hover: #2f5fbe;--accent-muted: rgba(59, 111, 216, .12);--ok: #059669;--ok-muted: rgba(5, 150, 105, .12);--warn: #b45309;--warn-muted: rgba(180, 83, 9, .12);--danger: #dc2626;--danger-muted: rgba(220, 38, 38, .1);--shadow: 0 1px 0 rgba(0,0,0,.04), 0 12px 28px rgba(0,0,0,.08);--focus: 0 0 0 2px var(--bg), 0 0 0 4px var(--accent)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--text);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button,input,select{font:inherit}:focus-visible{outline:none;box-shadow:var(--focus)}.app-shell{position:relative;display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100dvh;min-height:100vh;background-color:var(--bg);background-image:linear-gradient(var(--border),var(--border)),linear-gradient(var(--bg-elevated),var(--bg-elevated));background-size:1px 100%,var(--sidebar) 100%;background-position:var(--sidebar) 0,0 0;background-repeat:no-repeat}.sidebar{grid-column:1;grid-row:1;position:sticky;top:0;height:100dvh;height:100vh;width:var(--sidebar);background:transparent;padding:var(--space-5) var(--space-3);display:flex;flex-direction:column;gap:var(--space-5);z-index:30;box-sizing:border-box;align-self:start}.brand{display:flex;align-items:center;gap:12px;padding:4px var(--space-2)}.brand-mark{width:32px;height:32px;border-radius:9px;background:linear-gradient(145deg,#7aa6ff,#3d6fd8);color:#fff;display:grid;place-items:center;font-weight:700;font-size:14px;letter-spacing:-.02em;flex-shrink:0}.brand-text{display:flex;flex-direction:column;gap:1px;min-width:0}.brand-text strong{font-size:14px;letter-spacing:-.01em}.brand-text span{color:var(--text-tertiary);font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{display:flex;flex-direction:column;gap:2px;flex:1;overflow:auto}.nav a{color:var(--text-secondary);text-decoration:none;padding:9px 12px;border-radius:var(--radius-sm);display:flex;align-items:center;gap:10px;font-weight:500;font-size:13.5px}.nav a:hover{background:var(--surface-2);color:var(--text);text-decoration:none}.nav a.active{background:var(--accent-muted);color:var(--text)}.sidebar-foot{position:relative;padding:var(--space-2);border-top:1px solid var(--border);margin:0 calc(-1 * var(--space-1))}.user-chip{width:100%;display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid transparent;border-radius:var(--radius-sm);background:transparent;color:var(--text);cursor:pointer;text-align:left}.user-chip:hover{background:var(--surface-2)}.avatar{width:28px;height:28px;border-radius:50%;background:var(--surface-2);border:1px solid var(--border-strong);display:grid;place-items:center;font-size:10px;font-weight:600;color:var(--text-secondary);flex-shrink:0}.user-meta{display:flex;flex-direction:column;flex:1;min-width:0}.user-meta strong{font-size:13px;font-weight:600}.user-meta span{font-size:11px;color:var(--text-tertiary)}.chev{color:var(--text-tertiary);font-size:11px}.user-menu{position:absolute;left:var(--space-2);right:var(--space-2);bottom:calc(100% + 6px);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);box-shadow:var(--shadow);padding:4px;z-index:40}.user-menu button{width:100%;text-align:left;border:0;background:transparent;color:var(--text);padding:9px 10px;border-radius:6px;cursor:pointer;font-size:13px}.user-menu button:hover{background:var(--surface-2)}.user-menu .danger-item{color:var(--danger)}.main{grid-column:2;padding:var(--space-6);max-width:1120px;width:100%;min-height:100dvh;min-height:100vh;box-sizing:border-box}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.page-head h1{margin:0;font-size:24px;letter-spacing:-.025em;font-weight:600}.page-head>div:first-child{max-width:min(36rem,100%)}.page-head p{margin:6px 0 0;color:var(--text-secondary);max-width:34ch}.banner{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:var(--radius-sm);background:var(--accent-muted);color:var(--text-secondary);font-size:13px;margin-bottom:var(--space-4)}.banner strong{color:var(--text);font-weight:600}.grid{display:grid;gap:var(--space-4)}.grid.stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.grid.two{grid-template-columns:1.2fr 1fr}.grid.summary{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4)}.card h2,.card h3{margin:0 0 var(--space-3);font-size:12px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.stat{min-height:112px;display:flex;flex-direction:column;justify-content:space-between}.stat .stat-value{font-size:28px;letter-spacing:-.03em;font-weight:600;line-height:1.15;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stat .stat-label{color:var(--text-secondary);font-size:13px;margin-top:8px}.stat .stat-note{color:var(--text-tertiary);font-size:12px;margin-top:4px}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text);border-radius:var(--radius-sm);padding:8px 14px;font-weight:500;cursor:pointer;font-size:13px}.btn:hover{background:var(--border)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:transparent;color:#fff}.btn.primary:hover{background:var(--accent-hover)}.btn.danger{background:var(--danger-muted);border-color:transparent;color:var(--danger)}.btn.danger.solid{background:var(--danger);color:#fff}.btn.danger.solid:hover{filter:brightness(1.05)}.btn.quiet{background:transparent;border-color:transparent;color:var(--text-secondary)}.btn.quiet:hover{color:var(--text);background:var(--surface-2)}.btn.icon{width:32px;height:32px;padding:0;display:inline-grid;place-items:center;border-radius:8px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:12px 10px;border-bottom:1px solid var(--border);vertical-align:middle}th{color:var(--text-tertiary);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.04em}tr:last-child td{border-bottom:0}.row-clickable{cursor:pointer}.row-clickable:hover td{background:#ffffff05}[data-theme=light] .row-clickable:hover td{background:#00000005}.tag{display:inline-flex;align-items:center;max-width:100%;padding:3px 9px;border-radius:999px;font-size:12px;font-weight:500;background:var(--surface-2);color:var(--text-secondary);white-space:nowrap;line-height:1.2}.tag.ok{background:var(--ok-muted);color:var(--ok)}.tag.warn{background:var(--warn-muted);color:var(--warn)}.tag.danger{background:var(--danger-muted);color:var(--danger)}.tag.accent{background:var(--accent-muted);color:var(--accent)}.pill-row{display:flex;gap:6px;flex-wrap:nowrap;align-items:center;overflow:hidden}.muted{color:var(--text-secondary)}.mono{font-family:var(--mono);font-size:12px}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.empty,.error,.loading{padding:var(--space-6);text-align:center;color:var(--text-secondary);border:1px dashed var(--border);border-radius:var(--radius)}.empty strong,.loading strong{display:block;color:var(--text);margin-bottom:6px}.error{color:var(--danger);border-color:transparent;background:var(--danger-muted);text-align:left}.error strong{display:block;margin-bottom:4px}.auth-screen{min-height:100%;display:grid;place-items:center;padding:var(--space-5);background:radial-gradient(900px 400px at 50% -10%,rgba(107,154,255,.12),transparent 60%),var(--bg)}.auth-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:var(--space-6);box-shadow:var(--shadow)}.auth-card .auth-brand{display:flex;align-items:center;gap:12px;margin-bottom:var(--space-5)}.auth-card h1{margin:0 0 8px;font-size:22px;letter-spacing:-.02em}.auth-card p{margin:0 0 var(--space-5);color:var(--text-secondary)}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:var(--space-4)}.field label{font-size:13px;color:var(--text-secondary);font-weight:500}.field input,.field select{width:100%;border:1px solid var(--border-strong);background:var(--bg);color:var(--text);border-radius:var(--radius-sm);padding:10px 12px}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center}.chart{display:flex;align-items:flex-end;gap:3px;height:160px;padding-top:var(--space-3)}.chart .bar{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:flex-end;gap:1px;height:100%}.chart .seg{width:100%;border-radius:2px 2px 0 0}.chart-legend{display:flex;gap:var(--space-4);margin-top:var(--space-3);font-size:12px;color:var(--text-secondary);flex-wrap:wrap}.chart-legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:6px}.dialog-backdrop,.drawer-backdrop{background:#0000008c;z-index:50}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;height:100vh;width:100vw;display:grid;place-items:center;padding:var(--space-4)}.drawer-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;height:100vh;width:100vw}.dialog{width:min(520px,100%);background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:var(--space-5);box-shadow:var(--shadow)}.dialog h2{margin:0 0 8px;font-size:18px;text-transform:none;letter-spacing:-.01em;color:var(--text);font-weight:600}.dialog pre,.code-block{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-3);overflow:auto;max-height:220px;font-size:12px;font-family:var(--mono)}.drawer{position:fixed;top:0;right:0;height:100dvh;height:100vh;width:min(420px,100%);background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow);z-index:60;display:flex;flex-direction:column;animation:slideIn .18s ease-out}@keyframes slideIn{0%{transform:translate(12px);opacity:.6}to{transform:none;opacity:1}}.drawer-head{padding:var(--space-5);border-bottom:1px solid var(--border);display:flex;justify-content:space-between;gap:var(--space-3);align-items:flex-start}.drawer-head h2{margin:0;font-size:18px;letter-spacing:-.02em}.drawer-body{padding:var(--space-5);overflow:auto;flex:1}.drawer-foot{padding:var(--space-4) var(--space-5);border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:var(--space-2)}.segmented{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:4px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm)}.segmented button{border:0;background:transparent;color:var(--text-secondary);padding:8px 6px;border-radius:6px;cursor:pointer;font-size:12px;font-weight:500}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border)}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:12px 0;border-bottom:1px solid var(--border)}.switch-row:last-child{border-bottom:0}.switch{position:relative;width:40px;height:24px;border-radius:999px;border:0;background:var(--border-strong);cursor:pointer;flex-shrink:0}.switch[aria-checked=true]{background:var(--accent)}.switch span{position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;transition:transform .15s ease}.switch[aria-checked=true] span{transform:translate(16px)}.spark{display:inline-flex;align-items:flex-end;gap:2px;height:22px;width:56px}.spark i{display:block;width:4px;background:var(--accent);border-radius:1px;opacity:.85}.pill-row.wrap{flex-wrap:wrap}.confirm-summary{margin:0;color:var(--text);font-size:15px;line-height:1.45;font-weight:500}.confirm-diff{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:start;padding:12px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg)}.confirm-arrow{color:var(--text-tertiary);padding-top:22px;font-size:14px}.tech-details{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);overflow:hidden}.tech-details summary{cursor:pointer;padding:10px 12px;font-size:13px;font-weight:500;color:var(--text-secondary);list-style:none}.tech-details summary::-webkit-details-marker{display:none}.tech-details summary:before{content:"▸";display:inline-block;margin-right:8px;color:var(--text-tertiary)}.tech-details[open] summary:before{content:"▾"}.tech-details .code-block{margin:0;border:0;border-top:1px solid var(--border);border-radius:0;max-height:220px}.code-block.wrap-scroll{white-space:pre-wrap;overflow-x:auto;word-break:break-word}.pages-table{table-layout:fixed;width:100%;border-collapse:collapse}.pages-table col.col-page{width:32%}.pages-table col.col-status{width:48%}.pages-table col.col-hits{width:96px}.pages-table col.col-action{width:52px}.pages-table th:nth-child(3),.pages-table td.hits-cell{text-align:right;padding-right:16px}.pages-table th:nth-child(4),.pages-table td:nth-child(4){width:52px;text-align:right}.pages-table .hits-cell{font-variant-numeric:tabular-nums;white-space:nowrap}.pages-table .host-row td{background:var(--bg);color:var(--text-secondary);font-family:var(--mono);font-size:12px;font-weight:600;padding-top:14px;padding-bottom:10px;border-bottom:1px solid var(--border)}.pages-table td .truncate{max-width:100%}.host-block{margin-bottom:var(--space-5)}.mobile-toggle,.nav-scrim,.bottom-nav{display:none}.hamburger{width:16px;height:2px;background:var(--text);position:relative;display:block}.hamburger:before,.hamburger:after{content:"";position:absolute;left:0;width:16px;height:2px;background:var(--text)}.hamburger:before{top:-5px}.hamburger:after{top:5px}@media(max-width:960px){.grid.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two{grid-template-columns:1fr}}@media(max-width:860px){.app-shell{grid-template-columns:1fr;background-image:none}.sidebar{position:fixed;top:0;left:0;height:100dvh;height:100vh;transform:translate(-105%);transition:transform .2s ease;width:min(84vw,300px);box-shadow:var(--shadow);grid-column:auto;grid-row:auto;background:var(--bg-elevated);border-right:1px solid var(--border)}.sidebar.open{transform:translate(0)}.nav-scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;height:100dvh;height:100vh;background:#00000073;opacity:0;pointer-events:none;transition:opacity .2s ease;z-index:25}.nav-scrim.show{opacity:1;pointer-events:auto}.mobile-toggle{display:inline-grid;place-items:center;position:fixed;top:12px;left:12px;z-index:40;width:40px;height:40px;padding:0}.main{grid-column:1;margin-left:0;width:100%;padding:64px var(--space-4) 88px;max-width:none}.confirm-diff{grid-template-columns:1fr}.confirm-arrow{display:none}.pages-table .col-page,.pages-table .col-status{width:40%}.bottom-nav{display:grid;grid-template-columns:repeat(6,1fr);position:fixed;left:0;right:0;bottom:0;z-index:20;background:var(--bg-elevated);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.bottom-nav a,.bottom-more{text-align:center;font-size:10px;color:var(--text-tertiary);text-decoration:none;padding:8px 2px;border:0;background:transparent;font-weight:500}.bottom-nav a.active{color:var(--accent)}.drawer{width:100%}.segmented{grid-template-columns:repeat(2,1fr)}}@media(max-width:420px){.grid.stats{grid-template-columns:1fr 1fr}.stat{min-height:96px}.stat .stat-value{font-size:24px}}tr.row-click{cursor:pointer}tr.row-click:hover td{background:#ffffff08}[data-theme=light] tr.row-click:hover td{background:#00000008}tr.row-click:focus-visible{outline:2px solid var(--accent, #5b8cff);outline-offset:-2px}.alert-headline{max-width:420px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.alerts-compact td{vertical-align:middle}.detail-list{display:grid;grid-template-columns:110px 1fr;gap:8px 12px;margin:0;font-size:13px}.detail-list dt{color:var(--muted, #8b93a7);font-weight:600;font-size:12px}.detail-list dd{margin:0;word-break:break-word}
