/* Server admin: sign-in, tabs in drawers, JSON blocks, checkboxes. Built on admin.css tokens. */
.login-wrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f6f4f0}
.login-card{width:min(420px,100%);display:flex;flex-direction:column;gap:14px;padding:32px}
.login-card .brand{display:flex;align-items:center;gap:10px;margin-bottom:8px;color:inherit;text-decoration:none}
.login-card h1{font-size:26px;margin:0}
.login-card .btn.wide{width:100%;justify-content:center}
.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 16px;border-bottom:1px solid #eee7df;padding-bottom:8px}
.tab{border:0;background:transparent;padding:8px 12px;border-radius:9px;font:inherit;font-size:13px;font-weight:600;color:#7a736d;cursor:pointer}
.tab.active{background:#fff1e7;color:#d9550f}
.json-block{background:#faf8f5;border:1px solid #eee7df;border-radius:10px;padding:12px;font-size:12px;line-height:1.5;max-height:420px;overflow:auto;white-space:pre}
details.detail-section summary{cursor:pointer;font-weight:600;padding:6px 0}
.check{display:inline-flex;align-items:center;gap:8px;margin:6px 16px 6px 0;font-size:14px}
fieldset.field{border:1px solid #eee7df;border-radius:12px;padding:10px 14px}
fieldset.field legend{font-size:13px;font-weight:600;padding:0 6px}
b.plus{color:#1e8e5a}b.minus{color:#c2410c}
.admin-account .icon-btn{margin-left:auto}

/* Stage 9: moderation */
.row-actions{display:flex;gap:6px;flex-wrap:wrap}
.mod-text{display:block;max-width:440px;white-space:pre-wrap;overflow-wrap:anywhere}

/* Stage 10: statistics overview */
.stats-toolbar .card-head{display:none}.stats-toolbar .toolbar{margin:0;align-items:center}.stats-toolbar input[type=date]{height:40px;border:1px solid var(--line,#e6e3dd);border-radius:10px;padding:0 10px;font:inherit}
.stats-period{margin-left:auto;font-size:12px}
.delta{font-weight:700;white-space:nowrap}.delta.up{color:#16a34a}.delta.down{color:#dc2626}
.live-stats{margin-top:16px}.live-stats .stat strong{font-size:22px}
.mini-title{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#8a8d97;margin:16px 0 4px}
@media(max-width:720px){.stats-period{margin-left:0;width:100%}}

/* Stage 11: counters, loading and error states, saved filters, hotkeys */
.notification{position:relative}.bell-count{position:absolute;top:-4px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:#ef4444;color:#fff;font-size:11px;font-weight:700;line-height:18px;text-align:center}
.nav-link .nav-count{margin-left:auto;min-width:20px;padding:1px 6px;border-radius:10px;background:#f97316;color:#fff;font-size:11px;font-weight:700;text-align:center}
.nav-count[hidden]{display:none!important}
.page.is-loading{position:relative}.page.is-loading::before{content:"";position:fixed;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,transparent,#f97316,transparent);background-size:50% 100%;animation:admin-loading 1s linear infinite;z-index:50}
@keyframes admin-loading{from{background-position:-50% 0}to{background-position:150% 0}}
@media(prefers-reduced-motion:reduce){.page.is-loading::before{animation:none;background:#f97316}}
.error-state{display:flex;flex-direction:column;align-items:flex-start;gap:12px;padding:20px;border-radius:14px;background:#fff4ed;border:1px solid #fed7aa;color:#9a3412}.error-state p{margin:0}
.saved-filters{display:inline-flex;gap:8px;align-items:center;margin-left:auto}.saved-filters select{max-width:220px}
.hotkeys kbd{font:600 12px/1 ui-monospace,SFMono-Regular,Menlo,monospace;padding:5px 8px;border-radius:6px;background:#f3f2ef;border:1px solid #e3e1dc}
