:root{--theme-bg-start:#fff1f2;--theme-bg-mid:#ffe4e6;--theme-border:#fecaca;--theme-primary:#e11d48;--theme-primary-hover:#be123c;--theme-heading:#9f1239;--theme-shadow:#f472b62e;--theme-shadow-strong:#f8717166}html,body{color:#0f172a;background:#f9fafb;min-height:100%;margin:0;padding:0;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{-webkit-font-smoothing:antialiased}a{color:var(--theme-primary);text-decoration:underline}a:hover{color:var(--theme-heading)}.app-body{background:linear-gradient(to bottom,var(--theme-bg-start),var(--theme-bg-mid),var(--theme-bg-start));color:#0f172a;min-height:100vh}.layout-outer{justify-content:center;align-items:center;min-height:100vh;padding:16px;display:flex}.layout-inner{width:100%;max-width:768px}.card{box-shadow:0 18px 45px var(--theme-shadow);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border:1px solid #fffc;border-radius:18px}.text-center{text-align:center}.heading-main{letter-spacing:-.03em;color:var(--theme-heading);font-size:1.875rem;font-weight:600;line-height:1.2}.heading-sub{color:var(--theme-heading);font-size:1.25rem;font-weight:600}.text-muted{color:#475569;font-size:.95rem}.section{margin-top:16px;margin-bottom:16px}.btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;padding:8px 18px;font-size:.85rem;font-weight:600;display:inline-flex}.btn-primary{background:var(--theme-primary);color:#fff;box-shadow:0 10px 25px var(--theme-shadow-strong)}.btn-primary:hover{background:var(--theme-primary-hover)}.badge{border-radius:999px;padding:2px 8px;font-size:.7rem;font-weight:500;display:inline-block}.badge-kid{color:#92400e;background:#fef3c7}.input,.textarea,.select{box-sizing:border-box;border:1px solid #cbd5f5;border-radius:8px;width:100%;padding:6px 10px;font-size:.85rem}.guest-dietary-notes::placeholder{color:#cbd5e1;opacity:1}.text-xs{font-size:.75rem}.table-wrapper{background:#ffffffe6;border:1px solid #e2e8f0;border-radius:12px;max-height:420px;overflow:auto}.table{border-collapse:collapse;width:100%;font-size:.8rem}.table thead{background:#f8fafc}.table th,.table td{text-align:left;padding:6px 10px}.table tbody tr:nth-child(2n){background:#f9fafb}.stats-box{background:#f8fafc;border-radius:12px;padding:10px 14px;font-size:.8rem}
