:root{--bg:#f3f6f4;--surface:#ffffff;--surface-2:#eaf0ec;--fg:#14231d;--muted:#5b6b64;--line:#d5ded9;--brand:#0e3a2f;--brand-fg:#ffffff;--accent:#2f9e6e;--c1:#0e3a2f;--c2:#2f6b55;--c3:#4f8a72;--c4:#79a895;--c5:#a5c7b8;--c6:#cfe2d9;--warn-bg:#fff4dc;--warn-fg:#7a5200;--ok-bg:#e1f5ea;--ok-fg:#14633f;--bad:#b3261e;--bad-bg:#fde8e6;--font:"Inter","Segoe UI",system-ui,-apple-system,sans-serif;--font-d:"Space Grotesk","Segoe UI",system-ui,sans-serif;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#0c1512;--surface:#13201b;--surface-2:#1a2b24;--fg:#e6efea;--muted:#9db0a7;--line:#28392f;--brand:#1d5a47;--accent:#5fd39c;--c1:#78e0ad;--c2:#4fb78a;--c3:#3a8f6d;--c4:#2d6e55;--c5:#245441;--c6:#1c3f31;--warn-bg:#3a2e12;--warn-fg:#f3cf7a;--ok-bg:#163a2a;--ok-fg:#8fe3b6;--bad:#ff8a80;--bad-bg:#3a1714;color-scheme:dark}}*{box-sizing:border-box}body,html{margin:0}body{background:var(--bg);color:var(--fg);font-family:var(--font);font-size:14px;line-height:1.45}h1,h2,h3{font-family:var(--font-d);margin:0;text-wrap:balance}a{color:inherit}button,input,select{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.wrap{max-width:1180px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}label.field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:600;color:var(--muted)}input[type=date],input[type=email],input[type=password],input[type=text],select{background:var(--bg);border:1px solid var(--line);border-radius:6px;padding:9px 11px;font-size:14px;width:100%}.btn{border:0;border-radius:6px;padding:9px 15px;font-weight:600;cursor:pointer;background:var(--brand);color:var(--brand-fg);text-decoration:none;display:inline-block}.btn:hover{filter:brightness(1.12)}.btn:disabled{opacity:.6;cursor:default}.btn.ghost{background:transparent;border:1px solid var(--line);color:var(--fg)}.btn.small{padding:5px 10px;font-size:12px}.btn.danger{background:var(--bad);color:#fff}.msg{border-radius:6px;padding:10px 12px;font-size:13px}.msg.err{background:var(--bad-bg);color:var(--bad)}.msg.ok{background:var(--ok-bg);color:var(--ok-fg)}.hint{font-size:12px;color:var(--muted)}.center{min-height:100vh;display:grid;place-items:center;padding:32px 16px}.auth-card{width:100%;max-width:380px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:28px;display:flex;flex-direction:column;gap:14px}.eyebrow{font-family:var(--font-d);font-weight:700;letter-spacing:.08em;font-size:12px;color:var(--muted);text-transform:uppercase}header.top{position:-webkit-sticky;position:sticky;top:0;z-index:5;background:var(--brand);color:var(--brand-fg)}header.top .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-block:12px}.brand{font-family:var(--font-d);font-weight:700;font-size:18px;margin-right:auto}.brand small{display:block;font-family:var(--font);font-weight:400;font-size:12px;opacity:.78}header.top .btn.ghost{border-color:rgba(255,255,255,.35);color:#fff;padding:6px 12px}.pill{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.pill:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.pill.demo{background:var(--warn-bg);color:var(--warn-fg)}.pill.live{background:var(--ok-bg);color:var(--ok-fg)}nav.tabs{display:flex;gap:4px;border-bottom:1px solid var(--line);overflow-x:auto;margin-top:4px}nav.tabs a{padding:10px 14px;color:var(--muted);font-weight:600;text-decoration:none;border-bottom:3px solid transparent;white-space:nowrap}nav.tabs a[aria-current=page]{color:var(--fg);border-color:var(--accent)}main.page{padding-block:16px 48px;display:flex;flex-direction:column;gap:16px}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:end;padding-block:14px 4px}.filters label.field{flex:1 1 150px;max-width:220px}.range-label{font-size:12px;color:var(--muted);margin-left:auto}.banner{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;border-radius:8px;padding:11px 14px;font-size:13px;background:var(--warn-bg);color:var(--warn-fg)}.banner.ok{background:var(--ok-bg);color:var(--ok-fg)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));grid-gap:12px;gap:12px}.kpi{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.kpi .l{font-size:12px;color:var(--muted);font-weight:600}.kpi .v{font-family:var(--font-d);font-size:26px;font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.kpi .d{font-size:12px;font-weight:600}.up{color:var(--ok-fg)}.down{color:var(--bad)}.flat{color:var(--muted)}.grid{display:grid;grid-gap:16px;gap:16px;grid-template-columns:repeat(12,1fr)}.card{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:16px;min-width:0;display:flex;flex-direction:column;gap:12px}.card h2,.card h3{font-size:15px}.card .sub{font-size:12px;color:var(--muted);margin:-8px 0 0}.s12{grid-column:span 12}.s8{grid-column:span 8}.s7{grid-column:span 7}.s6{grid-column:span 6}.s5{grid-column:span 5}.s4{grid-column:span 4}@media (max-width:860px){.s4,.s5,.s6,.s7,.s8{grid-column:span 12}}.empty{border:1px dashed var(--line);border-radius:8px;padding:18px;color:var(--muted);font-size:13px;text-align:center}.loading{opacity:.55;transition:opacity .2s}svg text{fill:var(--muted);font-family:var(--font);font-size:11px}.donut-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}.legend{display:flex;flex-direction:column;gap:5px;font-size:12px;min-width:0}.donut-row .legend{flex:1 1 160px}.legend span{display:flex;align-items:center;gap:8px}.legend i{width:10px;height:10px;border-radius:2px;flex:0 0 auto}.legend b{margin-left:auto;padding-left:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.legend.row{flex-direction:row;flex-wrap:wrap;gap:16px}.chart{width:100%;overflow-x:auto}.bars{display:flex;flex-direction:column;gap:8px}.bar{display:grid;grid-template-columns:minmax(90px,160px) 1fr 70px;grid-gap:10px;gap:10px;align-items:center;font-size:12.5px}.bar .track{background:var(--surface-2);border-radius:3px;height:18px;overflow:hidden}.bar .fill{background:var(--c2);height:100%;border-radius:3px}.bar .n{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600}.tbl{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:12.5px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}th{text-align:left;color:var(--muted);padding:8px 10px;border-bottom:1px solid var(--line);white-space:nowrap}th,th button{font-weight:600}th button{background:none;border:0;padding:0;color:inherit;cursor:pointer}td.r,th.r{text-align:right}td{padding:7px 10px;border-bottom:1px solid var(--line);white-space:nowrap}td.url{max-width:300px;overflow:hidden;text-overflow:ellipsis}tbody tr:hover{background:var(--surface-2)}.pager{display:flex;justify-content:flex-end;align-items:center;gap:8px;font-size:12px;color:var(--muted)}.steps{display:flex;flex-direction:column;gap:12px;margin:0;padding-left:20px}.code{background:var(--surface-2);border-radius:6px;padding:8px 10px;font-family:ui-monospace,Menlo,monospace;font-size:12px;word-break:break-all;-webkit-user-select:all;-moz-user-select:all;user-select:all}.form-row{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.form-row label.field{flex:1 1 180px}.status{font-size:12px;font-weight:600;border-radius:999px;padding:2px 8px}.status.active{background:var(--ok-bg);color:var(--ok-fg)}.status.pending{background:var(--warn-bg);color:var(--warn-fg)}.status.none{background:var(--surface-2);color:var(--muted)}.inline{display:inline-flex;gap:6px;align-items:center;margin:0}.secret{background:var(--warn-bg);color:var(--warn-fg);border-radius:6px;padding:10px 12px;font-size:13px}.secret code{font-size:15px;-webkit-user-select:all;-moz-user-select:all;user-select:all}