.admin-body { background: #eef1ec; min-height: 100vh; }
.admin-header { background: #173a32; color: #fff; padding: 1.5rem clamp(1rem, 4vw, 4rem); display: flex; align-items: center; justify-content: space-between; gap: 1rem; }
.admin-header h1 { margin: .15rem 0 0; font-size: clamp(1.55rem, 3vw, 2.35rem); }
.admin-header .eyebrow { color: #d5b66f; }
.admin-header-actions, .admin-event-actions { display: flex; align-items: center; gap: .65rem; flex-wrap: wrap; }
.admin-header-actions form, .admin-event-actions form { margin: 0; }
.admin-shell { width: min(1180px, calc(100% - 2rem)); margin: 2rem auto 4rem; }
.admin-card { background: #fff; border-radius: 18px; padding: clamp(1.2rem, 3vw, 2rem); box-shadow: 0 12px 35px rgba(23,58,50,.08); }
.login-card { width: min(470px, 100%); margin: 4rem auto; }
.admin-grid { display: grid; grid-template-columns: minmax(0, 1.45fr) minmax(280px, .75fr); gap: 1.5rem; align-items: start; }
.admin-card-heading { display: flex; justify-content: space-between; gap: 1rem; align-items: start; margin-bottom: 1rem; }
.admin-card h2 { margin: .2rem 0 1rem; color: #173a32; }
.admin-form { display: grid; gap: 1rem; }
.admin-form label { display: grid; gap: .4rem; font-weight: 700; color: #243c35; }
.admin-form input, .admin-form textarea { width: 100%; border: 1px solid #b9c6bf; border-radius: 9px; padding: .78rem .85rem; font: inherit; background: #fff; }
.admin-form input:focus, .admin-form textarea:focus { outline: 3px solid rgba(181,142,65,.25); border-color: #8a6c2f; }
.admin-form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.compact-form { margin-top: 1rem; }
.admin-alert { padding: .9rem 1rem; border-radius: 10px; margin-bottom: 1rem; font-weight: 700; }
.admin-alert.success { background: #dcefe4; color: #14552e; }
.admin-alert.error { background: #f8dddd; color: #8a1e1e; }
.event-management { margin-top: 1.5rem; }
.admin-event-list { display: grid; gap: .8rem; }
.admin-event-row { display: grid; grid-template-columns: 78px minmax(0, 1fr) auto; gap: 1rem; align-items: center; border: 1px solid #dce3de; border-radius: 13px; padding: 1rem; }
.admin-event-date { background: #eff4f0; color: #173a32; border-radius: 10px; text-align: center; padding: .75rem .5rem; }
.admin-event-date strong, .admin-event-date span { display: block; }
.admin-event-copy h3 { margin: .1rem 0 .25rem; }
.admin-event-copy p { margin: 0; }
.danger-button { background: #9c2f2f; border-color: #9c2f2f; }
.danger-button:hover { background: #7e2424; }
@media (max-width: 820px) {
  .admin-header, .admin-grid { display: grid; grid-template-columns: 1fr; }
  .admin-event-row { grid-template-columns: 68px minmax(0, 1fr); }
  .admin-event-actions { grid-column: 1 / -1; }
}
@media (max-width: 540px) {
  .admin-form-row { grid-template-columns: 1fr; }
  .admin-header-actions { align-items: stretch; }
  .admin-header-actions .button { width: 100%; text-align: center; }
}
