.admin-body{min-height:100vh;background:linear-gradient(135deg,#261306,#593915 55%,#2b1707);padding:0 18px;color:#4e3218}.admin-page{width:min(1120px,100%);margin:0 auto;padding:24px 0 30px}.admin-header{display:flex;justify-content:space-between;align-items:center;gap:15px;color:#f8e7c0;margin-bottom:22px;font-size:13px;letter-spacing:.04em}.admin-back{color:#f8e7c0;text-decoration:none}.admin-back:hover{text-decoration:underline}.admin-lock{font-size:11px;color:#d9bd7c;letter-spacing:.15em}.admin-card{background:rgba(255,247,226,.97);border:1px solid #c79c50;border-radius:9px 28px 9px 28px;padding:clamp(22px,4vw,42px);box-shadow:0 25px 65px rgba(0,0,0,.22),inset 0 0 0 5px rgba(255,255,255,.18)}.admin-ornament{text-align:center;color:#b17d28;font-size:25px;letter-spacing:.2em}.admin-eyebrow{text-align:center;color:#8b6028;letter-spacing:.2em;text-transform:uppercase;font-size:12px;margin:5px 0}.admin-card h1{text-align:center;font-weight:500;font-size:clamp(36px,6vw,56px);line-height:1.1;color:#583514;margin:7px 0 8px}.admin-lede{text-align:center;color:#826542;font-size:16px;margin:0 auto 26px;max-width:540px;line-height:1.5}.admin-login-form{max-width:440px;margin:0 auto;display:flex;flex-direction:column;gap:9px}.admin-login-form label,.admin-search-label{font-size:15px;font-weight:600;color:#5c3a1b}.admin-login-form input,.admin-search{border:1px solid #cfb27e;border-radius:9px;background:#fffdf6;padding:13px;color:#412911;outline:none;min-height:46px}.admin-login-form input:focus,.admin-search:focus{border-color:#9f6a24;box-shadow:0 0 0 3px #bd87302b}.admin-login-form .submit-button{margin-top:9px}.admin-feedback{max-width:600px;margin:18px auto 0;padding:13px 15px;border:1px solid #d1aa6e;border-radius:9px;background:#fff2d1;color:#6b451c;text-align:center;font:14px/1.5 Arial,sans-serif}.admin-feedback.error{background:#fff0e9;border-color:#dbaaa0;color:#772c20}.dashboard-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin:28px 0 18px}.dashboard-head h2{font-size:29px;font-weight:600;color:#573514;margin:0}.dashboard-head p{color:#866945;font:12px Arial,sans-serif;margin:5px 0 0}.dashboard-tools{display:flex;gap:8px;flex-wrap:wrap}.compact{min-height:38px;padding:8px 12px;font-size:12px;letter-spacing:.02em}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:17px 0 25px}.stat-card{padding:16px;border:1px solid #d8c092;border-radius:10px;background:linear-gradient(135deg,#fffaf0,#f4e5c1);display:flex;flex-direction:column;gap:9px}.stat-card span{font:12px/1.4 Arial,sans-serif;color:#88683e}.stat-card strong{font:600 30px/1 var(--serif);color:#5d3714}.admin-search-label{display:block;margin-bottom:8px}.admin-search{width:100%;margin-bottom:15px}.table-scroll{width:100%;overflow:auto;border:1px solid #d7bf90;border-radius:9px;background:#fffcf4}.responses-table{width:100%;border-collapse:collapse;min-width:780px;text-align:left}.responses-table th{padding:12px;background:#ead5a8;color:#674522;font-size:13px;letter-spacing:.04em}.responses-table td{padding:12px;border-top:1px solid #eee1c7;color:#5e4629;font:14px/1.45 Arial,sans-serif;vertical-align:top;max-width:300px;overflow-wrap:anywhere}.responses-table tbody tr:nth-child(even){background:#fff7e7}.status-chip{display:inline-block;padding:5px 8px;border-radius:999px;background:#e4edd4;color:#435b27;font:11px Arial,sans-serif;white-space:nowrap}.status-chip.no{background:#f3e4d9;color:#874327}.empty-state{text-align:center;color:#8a724f!important;padding:28px!important}.admin-footnote{font:12px/1.5 Arial,sans-serif;color:#8b6c45;margin:14px 0 0}.admin-footer{text-align:center;color:#d0b27b;font-size:12px;margin:22px 0 0}.admin-body[lang=ta]{font-family:var(--tamil),serif}@media(max-width:760px){.admin-body{padding:0 11px}.admin-page{padding-top:14px}.admin-header{align-items:flex-start;flex-direction:column}.admin-card{padding:24px 16px}.dashboard-head{flex-direction:column}.dashboard-tools{width:100%}.stat-grid{grid-template-columns:repeat(2,1fr);gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:25px}.admin-card h1{font-size:38px}}

/* Section 4 readiness diagnostics: tells the owner what must be configured before RSVPs are collected. */
.setup-status{max-width:760px;margin:0 auto 20px;padding:13px 15px;border:1px solid #d8c092;border-radius:10px;background:#fff5d9;color:#6b451c;font:13px/1.55 Arial,sans-serif;overflow-wrap:anywhere}
.setup-status[data-state="checking"]{background:#fffaf0;color:#75582f}
.setup-status[data-state="missing"]{background:#fff0e9;border-color:#dbaaa0;color:#772c20}
.setup-status[data-state="warning"]{background:#fff5d9;border-color:#d8c092;color:#6b451c}
.setup-status[data-state="ready"]{background:#edf5e3;border-color:#a9c18b;color:#395827}
/* Ensure hidden attributes remain hidden despite component display rules. */
.admin-body [hidden]{display:none!important}
