:root { color-scheme: light; --ink:#17211b; --muted:#66736b; --line:#dce4df; --panel:#fff; --accent:#147d50; --accent2:#dff5e9; --danger:#a63d40; }
* { box-sizing:border-box; }
body { margin:0; background:#f2f6f3; color:var(--ink); font:15px/1.45 Inter, system-ui, sans-serif; }
nav { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:12px 32px; background:var(--panel); border-bottom:1px solid var(--line); }
.brand { color:var(--ink); font-weight:900; text-decoration:none; }.nav-actions { display:flex; gap:14px; align-items:center; }.nav-actions form { margin:0; }
main { max-width:1440px; margin:auto; padding:32px; }
header { display:flex; justify-content:space-between; gap:30px; align-items:end; margin-bottom:24px; }
h1,h2,p { margin-top:0; } h1 { font-size:38px; margin-bottom:4px; } h2 { font-size:20px; }
.eyebrow { color:var(--accent); font-weight:800; text-transform:uppercase; letter-spacing:.12em; font-size:12px; margin-bottom:4px; }
.muted,.empty,small { color:var(--muted); } small { display:block; }
button,input { font:inherit; border:1px solid var(--line); border-radius:8px; padding:9px 11px; }
button { cursor:pointer; background:var(--ink); color:white; font-weight:700; } button:hover { opacity:.82; }
.primary { background:var(--accent); padding:11px 15px; }.quiet { background:#edf2ef; color:var(--ink); }.danger { background:#fff0f0; color:var(--danger); border-color:#f0d0d0; }
.scan-form,.inline-form,.section-head,.item,.chip,.run { display:flex; gap:8px; align-items:center; }.scan-form label { color:var(--muted); font-size:13px; }
.stats { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-bottom:16px; }.stats.four { grid-template-columns:repeat(4,1fr); }.stats article,.panel { background:var(--panel); border:1px solid var(--line); border-radius:14px; padding:18px; }.stats strong { display:block; font-size:30px; }.stats span { color:var(--muted); }
.two-columns { display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:16px; }.inline-form input:first-child { flex:1; }.item-list { margin-top:14px; }.item { border-top:1px solid var(--line); padding:10px 0; }.item div:first-child { flex:1; }.disabled { opacity:.45; }
.chips { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }.chip { background:var(--accent2); border-radius:9px; padding:5px 7px 5px 10px; }.chip button { padding:3px 7px; }
.panel { margin-bottom:16px; }.section-head { justify-content:space-between; }.section-head h2 { margin:0; }
.table-wrap { overflow:auto; } table { width:100%; border-collapse:collapse; margin-top:12px; } th,td { text-align:left; vertical-align:top; border-top:1px solid var(--line); padding:10px; } th { color:var(--muted); font-size:12px; text-transform:uppercase; }.nowrap { white-space:nowrap; }.message { min-width:300px; max-width:650px; white-space:pre-wrap; margin-bottom:5px; }.tag { display:inline-block; padding:3px 6px; margin:2px; border-radius:5px; background:var(--accent2); white-space:nowrap; }
.runs { display:grid; gap:7px; }.run { flex-wrap:wrap; }.status { padding:3px 7px; border-radius:5px; font-weight:800; }.status.done { background:var(--accent2); color:var(--accent); }.status.running { background:#fff4c7; }.status.error { background:#fff0f0; color:var(--danger); }.run strong { color:var(--danger); }
.login-body { min-height:100vh; display:grid; place-items:center; padding:20px; }.login-card { width:min(520px,100%); padding:38px; background:var(--panel); border:1px solid var(--line); border-radius:18px; text-align:center; box-shadow:0 18px 60px #17332318; }.login-card h1 { font-size:32px; }.telegram-login { margin-top:26px; }.setup-warning { margin-top:24px; padding:12px; background:#fff4c7; border-radius:8px; }
@media(max-width:900px) { nav{padding:12px 16px}.nav-actions span{display:none} main{padding:16px} header,.scan-form{align-items:stretch;flex-direction:column}.two-columns,.stats,.stats.four{grid-template-columns:1fr}.inline-form{flex-wrap:wrap}.inline-form input{width:100%} }
