:root{--bg:#f6f5f1;--card:#fff;--ink:#1c1f1d;--muted:#5d645f;--line:#dcdad2;--accent:#2f5d50;--danger:#a23b2a;--chart:#1f7a55;--grid:#ebe9e3}@media (prefers-color-scheme:dark){:root{--bg:#141715;--card:#1d221f;--ink:#ecece6;--muted:#a2a89f;--line:#30372f;--accent:#7fb7a4;--danger:#e08a78;--chart:#45a97f;--grid:#283029}}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);margin:0;font:16px/1.5 system-ui,-apple-system,Segoe UI,sans-serif}main{max-width:520px;margin:0 auto;padding:48px 16px}h1{margin:0 0 4px;font-size:26px}h2{margin:0 0 8px;font-size:18px}p{margin:0 0 12px}.muted{color:var(--muted);font-size:14px}.card{background:var(--card);border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:20px}label{margin:12px 0 4px;font-size:14px;display:block}input[type=text],input[type=email],input[type=password]{border:1px solid var(--line);width:100%;color:inherit;font:inherit;background:0 0;border-radius:8px;padding:10px 12px}button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer;border-radius:8px;margin:12px 8px 0 0;padding:10px 16px}button.secondary{color:var(--accent);background:0 0}button:disabled{opacity:.5;cursor:default}.error{color:var(--danger);margin-top:8px;font-size:14px}.ok{color:var(--accent);margin-top:8px;font-size:14px}code,pre{font-family:ui-monospace,Menlo,monospace;font-size:14px}pre{background:var(--bg);border-radius:8px;padding:12px;overflow:auto}ul.list{margin:0;padding:0;list-style:none}ul.list li{border-top:1px solid var(--line);justify-content:space-between;align-items:center;padding:8px 0;display:flex}a{color:var(--accent)}select,textarea,input[type=date]{border:1px solid var(--line);width:100%;color:inherit;font:inherit;background:0 0;border-radius:8px;padding:10px 12px}nav.top{gap:16px;max-width:720px;margin:0 auto;padding:16px 16px 0;font-size:14px;display:flex}nav.top a{color:var(--muted);text-decoration:none}nav.top a:hover{color:var(--ink)}main.wide{max-width:720px}.tiles{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.tile{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px}.tile .label{color:var(--muted);font-size:13px}.tile .value{font-variant-numeric:tabular-nums;margin-top:2px;font-size:22px;font-weight:600}.tile.hero .value{font-size:28px}@media (max-width:560px){.tiles{grid-template-columns:1fr}}.chart{position:relative}.chart svg{touch-action:none;width:100%;height:auto;display:block}.tip{pointer-events:none;background:var(--card);border:1px solid var(--line);white-space:nowrap;border-radius:8px;padding:6px 10px;font-size:13px;position:absolute;transform:translate(-50%,-110%);box-shadow:0 2px 8px #00000014}.num{font-variant-numeric:tabular-nums;text-align:right}table.data{border-collapse:collapse;width:100%;font-size:14px}table.data td,table.data th{border-top:1px solid var(--line);text-align:left;padding:6px 4px}table.data th{color:var(--muted);font-weight:500}.row-actions button{margin:0 0 0 6px;padding:6px 10px;font-size:13px}input.inline{width:140px;padding:6px 8px}a.button{border:1px solid var(--accent);background:var(--accent);color:#fff;border-radius:8px;margin:0 0 0 6px;padding:6px 10px;font-size:13px;text-decoration:none;display:inline-block}a.button.secondary{color:var(--accent);background:0 0}
