.admin-body { background: #f4f6f1; }
.admin-header { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem clamp(1rem, 4vw, 3rem); background: white; border-bottom: 1px solid var(--line); }
.admin-header > div { display: flex; align-items: center; gap: 1rem; }
.admin-main { width: min(1180px, calc(100% - 2rem)); margin: 0 auto; padding: 3rem 0 5rem; }
.admin-title h1 { margin: 0; font-size: clamp(2rem, 4vw, 3.4rem); line-height: 1.2; }
.admin-title > p:last-child { color: var(--muted); }
.stats-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 2rem 0; }
.stats-grid div { display: flex; flex-direction: column; padding: 1.5rem; background: var(--ink); color: white; border-radius: 18px; }
.stats-grid strong { font-size: 2.2rem; }
.stats-grid span { color: rgba(255,255,255,.72); }
.admin-panel { margin-top: 1rem; padding: clamp(1.2rem, 3vw, 2rem); background: white; border: 1px solid var(--line); border-radius: 20px; box-shadow: 0 12px 35px rgba(23,60,48,.06); }
.admin-panel h2 { margin: 0; }
.admin-panel > div > p { margin-top: .25rem; color: var(--muted); }
.admin-form { display: grid; grid-template-columns: repeat(4, 1fr) auto; gap: .8rem; align-items: end; margin-top: 1rem; }
.admin-form label { display: grid; gap: .3rem; font-weight: 800; }
.admin-form .primary-button { min-height: 50px; border: 0; cursor: pointer; }
.password-form { grid-template-columns: 1fr 1fr auto; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 760px; }
th, td { padding: .85rem .6rem; text-align: left; border-bottom: 1px solid var(--line); }
th { color: var(--muted); font-size: .85rem; }
.table-button { padding: .4rem .65rem; margin-right: .35rem; color: var(--ink); background: #eef3e7; border: 1px solid var(--line); border-radius: 8px; cursor: pointer; font-weight: 700; }
.status-active { color: #247044; font-weight: 800; }
.status-off { color: #9b3026; font-weight: 800; }
@media (max-width: 900px) { .admin-form, .password-form { grid-template-columns: 1fr 1fr; } .admin-form .primary-button { justify-content: center; } }
@media (max-width: 620px) { .admin-header { align-items: flex-start; } .admin-header #admin-name { display: none; } .stats-grid { grid-template-columns: 1fr; } .admin-form, .password-form { grid-template-columns: 1fr; } }
