:root{--g:#2daa6a;--gd:#1f8f56;--bg:#f4faf6;--bd:#d6e8dc;--t:#1a2e22;--m:#5c7268;--w:#fff;--d:#b91c1c}
*{box-sizing:border-box}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--t);line-height:1.55}
a{color:var(--gd)}.wrap{max-width:1100px;margin:0 auto;padding:20px}
.top{background:var(--w);border-bottom:1px solid var(--bd);padding:12px 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;justify-content:space-between}
.top h1{margin:0;font-size:1.1rem}.nav a{margin-left:12px;text-decoration:none;color:var(--m);font-weight:500;font-size:.875rem}
.nav a:hover,.nav a.on{color:var(--gd)}
.card{background:var(--w);border:1px solid var(--bd);padding:20px;margin-bottom:16px;border-radius:10px}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px;margin-bottom:16px}
.stat{background:var(--w);border:1px solid var(--bd);padding:16px;border-radius:10px}
.stat b{display:block;font-size:1.5rem;color:var(--gd)}
.stat span{font-size:.8rem;color:var(--m)}
table{width:100%;border-collapse:collapse;font-size:.875rem}
th,td{padding:10px 8px;border-bottom:1px solid var(--bd);text-align:left;vertical-align:top}
th{font-size:.75rem;text-transform:uppercase;color:var(--m)}
label{display:block;font-size:.8rem;font-weight:600;margin:10px 0 4px}
input,select,textarea{width:100%;padding:10px;border:1px solid var(--bd);font:inherit;border-radius:6px}
.btn{display:inline-block;padding:10px 16px;background:var(--g);color:#fff;border:none;font-weight:600;cursor:pointer;text-decoration:none;border-radius:6px;font-size:.875rem}
.btn:hover{background:var(--gd)}.btn.secondary{background:#fff;color:var(--gd);border:1px solid var(--bd)}
.btn.danger{background:var(--d)}.badge{display:inline-block;padding:2px 8px;font-size:.75rem;font-weight:600;border-radius:4px;background:#e8f7ee;color:var(--gd)}
.badge.off{background:#fef2f2;color:var(--d)}.badge.warn{background:#fff7ed;color:#c2410c}
.alert{padding:10px 12px;margin-bottom:12px;border-radius:6px;font-size:.875rem}
.alert.ok{background:#e8f7ee;color:var(--gd)}.alert.err{background:#fef2f2;color:var(--d)}
.code{background:#1a2e22;color:#e8f7ee;padding:12px;font-family:Consolas,monospace;font-size:.8rem;overflow:auto;border-radius:6px;word-break:break-all}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media(max-width:700px){.grid2{grid-template-columns:1fr}}
.msg{padding:10px 12px;margin:8px 0;border-radius:8px;max-width:85%}
.msg.user{background:#e8f7ee;margin-right:auto}.msg.admin{background:#f0f0f0;margin-left:auto}
.thread{max-height:420px;overflow:auto;border:1px solid var(--bd);padding:12px;border-radius:8px;background:#fafafa}
.form-group{margin-bottom:4px}
.top{position:sticky;top:0;z-index:50;backdrop-filter:blur(8px)}
.card h2{font-size:1.15rem;margin-top:0}
code{background:#e8f7ee;padding:2px 6px;border-radius:4px;font-size:.8rem}
.wrap{padding-bottom:48px}
