:root[data-guest-theme=lumaries]{--guest-bg:#fff;--guest-surface:#fff;--guest-surface-2:#fff;--guest-ink:#0b0d14;--guest-muted:#687084;--guest-border:#e5e7f0;--guest-border-strong:#b9c0d4;--guest-accent:#176bff;--guest-accent-hover:#1259d6;--guest-accent-ink:#fff;--guest-sage:#687084;--guest-gold:#c39a3b;--guest-danger:#b3261e;--guest-success:#1e7a46;--guest-success-bg:#fff;--guest-success-border:#1e7a46;--guest-danger-bg:#fff;--guest-danger-border:#b3261e;--guest-selected-bg:#fff;--guest-radius-sm:6px;--guest-radius-md:8px;--guest-shadow-sm:none;--guest-focus:0 0 0 2px var(--guest-surface), 0 0 0 5px var(--guest-accent);color:var(--guest-ink);background:var(--guest-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}:root[data-guest-theme=wedding]{--guest-bg:#f7f1e7;--guest-surface:#fffdf8;--guest-surface-2:#fbf7ef;--guest-ink:#211c18;--guest-muted:#6f665d;--guest-border:#ded1bd;--guest-border-strong:#c7b394;--guest-accent:#7b2d35;--guest-accent-hover:#66262d;--guest-accent-ink:#fffaf4;--guest-sage:#50695d;--guest-gold:#a77b27;--guest-danger:#9f2d2d;--guest-success:#356b4a;--guest-success-bg:#356b4a1a;--guest-success-border:#356b4a5c;--guest-danger-bg:#9f2d2d1a;--guest-danger-border:#9f2d2d5c;--guest-selected-bg:#7b2d3514;--guest-radius-sm:6px;--guest-radius-md:8px;--guest-shadow-sm:0 8px 28px #2e23161a;--guest-focus:0 0 0 2px var(--guest-surface), 0 0 0 5px var(--guest-accent);color:var(--guest-ink);background:var(--guest-bg);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}*,:before,:after{box-sizing:border-box}html[data-guest-theme],html[data-guest-theme] body{min-width:0;min-height:100%;margin:0}html[data-guest-theme] body{color:var(--guest-ink);background:var(--guest-bg)}html[data-guest-theme] button,html[data-guest-theme] input,html[data-guest-theme] textarea{font:inherit}html[data-guest-theme] input,html[data-guest-theme] textarea{color:var(--guest-ink)}html[data-guest-theme] :focus-visible{outline-offset:2px;box-shadow:var(--guest-focus);outline:2px solid #0000}.guest-rail{display:none}html[data-guest-theme=lumaries] .guest-rail{background:linear-gradient(90deg,#18c9ff 0%,#176bff 28%,#ff4fae 70%,#c39a3b 100%) 0 0/200% 100%;height:4px;animation:3.4s ease-in-out infinite guest-rail-slide;display:block}@keyframes guest-rail-slide{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.guest-main{width:min(100%,760px);margin:0 auto;padding:32px 16px 48px}.guest-main--center{place-items:center;min-height:100vh;display:grid}.guest-hero{margin-bottom:24px}.guest-eyebrow,.field-label,.text-field span{color:var(--guest-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:700}.guest-eyebrow{color:var(--guest-accent);margin:0 0 8px}.guest-hero h1{max-width:12ch;color:var(--guest-ink);letter-spacing:-.02em;margin:0;font-size:40px;font-weight:700;line-height:1.05}html[data-guest-theme=wedding] .guest-hero h1,html[data-guest-theme=wedding] .guest-card legend{letter-spacing:normal;font-family:Georgia,Times New Roman,serif}.guest-lede{color:var(--guest-muted);margin:12px 0 0;font-size:18px}.rsvp-form{gap:20px;display:grid}.guest-card,.submit-panel,.readonly-card,.notice{border:1px solid var(--guest-border);border-radius:var(--guest-radius-md);background:var(--guest-surface);box-shadow:var(--guest-shadow-sm)}.guest-card,.submit-panel{min-width:0;padding:20px}.guest-card{gap:18px;display:grid}.guest-card legend{color:var(--guest-ink);padding:0 8px;font-size:22px;font-weight:700}.choice-grid,.meal-options,.field-grid{gap:12px;display:grid}.choice-grid{grid-template-columns:1fr}.choice-card{border:1px solid var(--guest-border);border-radius:var(--guest-radius-sm);background:var(--guest-surface-2);min-width:0;color:var(--guest-ink);align-items:center;gap:10px;padding:12px;display:flex}.choice-card:has(input:checked){border-color:var(--guest-accent);background:var(--guest-selected-bg)}html[data-guest-theme=lumaries] .choice-card:has(input:checked){box-shadow:inset 0 0 0 1px var(--guest-accent)}.choice-card input{width:18px;height:18px;accent-color:var(--guest-accent);flex:none}.choice-card span{min-width:0}.meal-block{border-top:1px solid var(--guest-border);gap:10px;padding-top:4px;display:grid}.field-label{margin:0}.guest-card:has(input[value=DECLINED]:checked) .meal-block{display:none}.field-grid{grid-template-columns:1fr}.text-field{gap:8px;min-width:0;display:grid}.text-field input,.text-field textarea{border:1px solid var(--guest-border);border-radius:var(--guest-radius-sm);background:var(--guest-surface);width:100%;min-width:0;color:var(--guest-ink)}.text-field input{min-height:44px;padding:10px 12px}.text-field textarea{resize:vertical;min-height:92px;padding:12px}.submit-panel{gap:16px;display:grid}.primary-action{border:1px solid var(--guest-accent);border-radius:var(--guest-radius-sm);background:var(--guest-accent);min-height:46px;color:var(--guest-accent-ink);font-weight:700}.primary-action:hover{background:var(--guest-accent-hover)}.notice{width:min(100% - 32px,760px);color:var(--guest-ink);margin:16px auto 0;padding:14px 16px}.notice[data-notice-scope=success]{border-color:var(--guest-success-border);background:var(--guest-success-bg)}.notice[data-notice-scope=error]{border-color:var(--guest-danger-border);background:var(--guest-danger-bg)}.notice--neutral{width:100%;margin:0 0 20px}.notice--neutral p{margin:0}.notice--neutral p+p{color:var(--guest-muted);margin-top:8px}.readonly-list{gap:12px;display:grid}.readonly-card{padding:16px}.readonly-card h2{margin:0;font-size:18px}.readonly-card p{color:var(--guest-muted);margin:6px 0 0}@media (width>=680px){.guest-main{padding:48px 24px 64px}.choice-grid,.field-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.submit-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:end}.primary-action{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (forced-colors:active){html[data-guest-theme] :focus-visible{box-shadow:none;outline-color:canvastext}.guest-rail{display:none!important}}
