:root{--bg:#f6f7f9;--panel:#fff;--border:#e3e6ea;--text:#1c2430;--muted:#66707d;--accent:#2c7a4b;--accent-dark:#1f5c38;--red:#b3372f;--amber:#9a6b00}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:14px;line-height:1.5}a{color:var(--accent-dark);text-decoration:none}a:hover{text-decoration:underline}.topbar{color:#fff;background:#0f2e1d}.topbar-inner{align-items:center;gap:32px;max-width:1200px;height:52px;margin:0 auto;padding:0 20px;display:flex}.brand{color:#fff;font-size:15px;font-weight:700}.brand span{opacity:.8;font-weight:400}.topbar nav{gap:18px;display:flex}.topbar nav a{color:#cfe3d7;font-size:13px}.topbar nav a:hover{color:#fff;text-decoration:none}.userchip{color:#cfe3d7;align-items:center;gap:12px;margin-left:auto;font-size:12px;display:flex}.userchip a{color:#fff;opacity:.75}.userchip a:hover{opacity:1}.page{max-width:1200px;margin:0 auto;padding:24px 20px 64px}h1{margin:0 0 4px;font-size:20px}h2{margin:28px 0 10px;font-size:15px}.subtitle{color:var(--muted);margin:0 0 20px}.panel{background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-bottom:16px;padding:16px 18px}.grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;display:grid}.stat{background:var(--panel);border:1px solid var(--border);border-radius:8px;padding:12px 16px}.stat .label{color:var(--muted);font-size:12px}.stat .value{font-size:22px;font-weight:600}table.data{border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:8px;width:100%;overflow:hidden}table.data th,table.data td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:7px 12px}table.data th{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);background:#f0f2f4;font-size:12px}table.data tr:last-child td{border-bottom:none}table.data tr.rowlink{cursor:pointer}table.data tr.rowlink:hover td{background:var(--bg)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}.badge{border-radius:10px;padding:1px 8px;font-size:12px;font-weight:600;display:inline-block}.badge.ok{color:var(--accent-dark);background:#e3f2e9}.badge.warn{color:var(--amber);background:#fdf3d7}.badge.err{color:var(--red);background:#fbe4e2}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 16px;font-size:14px;font-weight:600;display:inline-block}.btn:hover{background:var(--accent-dark);color:#fff;text-decoration:none}.btn.secondary{color:var(--text);border:1px solid var(--border);background:#fff}.btn:disabled{opacity:.6;cursor:default}.notice{border:1px solid;border-radius:6px;margin-bottom:16px;padding:10px 14px}.notice.ok{color:var(--accent-dark);background:#e3f2e9;border-color:#bcdccb}.notice.err{color:var(--red);background:#fbe4e2;border-color:#efc4c0}.muted{color:var(--muted)}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.report-indent-1 td:first-child{padding-left:28px}.report-indent-2 td:first-child{padding-left:44px}.report-indent-3 td:first-child{padding-left:60px}.report-indent-4 td:first-child{padding-left:76px}tr.report-summary td{background:#fafbfc;font-weight:600}form.inline{display:inline}.fieldgrid{grid-template-columns:minmax(180px,260px) 1fr;gap:6px 16px;display:grid}.fieldgrid-key{color:var(--muted);font-size:13px}.searchbar{gap:8px;margin-bottom:12px;display:flex}.searchbar input,.searchbar select{border:1px solid var(--border);border-radius:6px;padding:7px 10px;font-size:14px}.searchbar input{flex:1;max-width:420px}
