:root { --bg:#f4f6f8; --card:#fff; --text:#17212b; --muted:#657481; --border:#dfe5ea; --primary:#146c43; --danger:#b42318; --shadow:0 8px 30px rgba(16,24,40,.07); }
* { box-sizing:border-box; }
body { margin:0; font-family:Tahoma,Arial,sans-serif; color:var(--text); background:var(--bg); line-height:1.6; }
.topbar { display:flex; justify-content:space-between; align-items:center; padding:14px clamp(16px,4vw,48px); background:#0d1f19; color:#fff; }
.topbar strong,.topbar small { display:block; }.topbar small{opacity:.7}.link-button{border:0;background:none;color:#fff;cursor:pointer;font:inherit}
.nav { display:flex; gap:8px; flex-wrap:wrap; padding:10px clamp(16px,4vw,48px); background:#fff; border-bottom:1px solid var(--border); position:sticky; top:0; z-index:10; }
.nav a { color:var(--text); text-decoration:none; padding:7px 10px; border-radius:8px; }.nav a:hover{background:#eef4f1;color:var(--primary)}
.container { width:min(1200px,calc(100% - 24px)); margin:24px auto 60px; }.container>h1{font-size:1.6rem;margin:0 0 18px}
.grid { display:grid; gap:16px; }.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.cards{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin-bottom:18px}
.card { background:var(--card); border:1px solid var(--border); border-radius:14px; padding:18px; box-shadow:var(--shadow); margin-bottom:16px; }.card h2{margin-top:0;font-size:1.15rem}
.cards .card strong { display:block; font-size:1.7rem; margin:8px 0; }.cards .card span,.cards .card small{color:var(--muted)}
.stack { display:flex; flex-direction:column; gap:16px; }.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.mini-form{display:flex;gap:6px;margin-top:8px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
label { display:flex; flex-direction:column; gap:6px; font-weight:700; } label.checkbox{flex-direction:row;align-items:center;font-weight:400;padding-top:31px}
input,select,textarea { width:100%; border:1px solid #cfd8df; border-radius:9px; padding:10px 12px; font:inherit; background:#fff; color:var(--text); }textarea{resize:vertical;line-height:1.6}input:focus,select:focus,textarea:focus{outline:2px solid rgba(20,108,67,.18);border-color:var(--primary)}
.button { display:inline-flex; justify-content:center; align-items:center; border:1px solid #cfd8df; background:#fff; color:var(--text); border-radius:9px; padding:9px 13px; cursor:pointer; text-decoration:none; font:inherit; }.button:hover{filter:brightness(.97)}.button.primary{background:var(--primary);border-color:var(--primary);color:#fff}.button.danger{background:#fff0ef;border-color:#f4b8b2;color:var(--danger)}.button.small{padding:5px 9px;font-size:.85rem}.button.large{padding:13px 20px;font-weight:700}
.alert { padding:12px 14px; border-radius:10px; margin-bottom:16px; }.alert-success{background:#eaf8f0;color:#12633d;border:1px solid #bce5cd}.alert-error{background:#fff0ef;color:#8f1d15;border:1px solid #f2b8b5}
.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.muted{color:var(--muted)}.block{display:block;color:var(--muted);direction:ltr;text-align:right}.empty{padding:30px;text-align:center;border:1px dashed var(--border);border-radius:12px;color:var(--muted)}
.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{border-bottom:1px solid var(--border);padding:10px;text-align:right;vertical-align:top}th{color:var(--muted);font-size:.85rem;background:#fafbfc}pre{white-space:pre-wrap;background:#f7f9fa;border:1px solid var(--border);border-radius:9px;padding:12px;direction:ltr;text-align:left}.context{max-width:420px;max-height:150px;overflow:auto;font-size:.75rem}
.details{display:grid;grid-template-columns:130px 1fr;gap:8px;margin:0 0 18px}.details dt{color:var(--muted)}.details dd{margin:0}.qr-card{text-align:center}.qr-card img{max-width:360px;width:100%;border-radius:12px}.status{font-size:1rem!important}.status-connected{color:#138a55}.status-error,.status-logged_out{color:var(--danger)}
.login-card{max-width:440px;margin:60px auto}.footer{text-align:center;color:var(--muted);padding:20px}.badge{padding:3px 7px;border-radius:99px;background:#eef2f5}.badge-error{background:#fff0ef;color:var(--danger)}.badge-warning{background:#fff8e6;color:#8a5d00}.badge-info{background:#eaf2ff;color:#2258a5}
@media (max-width:760px){.grid.two{grid-template-columns:1fr}.nav{position:static}.container{width:min(100% - 16px,1200px);margin-top:12px}.card{padding:14px;border-radius:11px}.section-head{align-items:flex-start;flex-direction:column}.inline-form{display:grid;grid-template-columns:1fr;width:100%}.details{grid-template-columns:100px 1fr}}
