.rsvp-page{max-width:600px;margin:var(--space-lg) auto;text-align:center;font-family:var(--font-body);color:var(--color-text)}.rsvp-page h1{font-family:var(--font-heading);font-size:var(--font-size-3xl);margin-bottom:var(--space-xs);color:var(--color-primary)}.rsvp-page .step-description{font-size:var(--font-size-lg);color:var(--color-secondary);margin-bottom:var(--space-lg);line-height:1.5;max-width:500px;margin-left:auto;margin-right:auto}@media (max-width: var(--bp-sm)){.rsvp-page .step-description{font-size:var(--font-size-md);padding:0 var(--space-sm)}}.rsvp-page .progress-bar{width:100%;height:8px;background:var(--color-border);border-radius:4px;overflow:hidden}.rsvp-page .progress-bar .progress-bar-fill{height:100%;background:linear-gradient(90deg,var(--color-primary),#c9a87c);transition:width .3s ease;border-radius:4px}.rsvp-page .rsvp-form{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:calc(100vh - 300px);height:100%;margin-top:var(--space-lg)}.rsvp-page .rsvp-form .form-group{height:100%;margin-bottom:var(--space-md);text-align:left}.rsvp-page .rsvp-form .form-group.submit-group{display:flex;gap:var(--space-md)}.rsvp-page .rsvp-form .form-group label{display:block;margin-bottom:var(--space-xs);font-weight:var(--fw-medium);color:var(--color-text);-webkit-user-select:none;user-select:none}.rsvp-page .rsvp-form .form-group .form-input{width:100%;padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:var(--font-size-md);transition:all .3s ease;background:var(--color-white)}.rsvp-page .rsvp-form .form-group .form-input:focus{outline:none;box-shadow:0 0 0 3px rgba(var(--color-primary),.25)}.rsvp-page .rsvp-form .form-group .form-input::placeholder{color:var(--color-secondary)}.rsvp-page .rsvp-form .form-group textarea.form-input{min-height:120px;resize:vertical}.rsvp-page .rsvp-form .form-group .form-input-valid{border-color:#2ecc71!important;box-shadow:0 0 0 3px #2ecc7140!important}.rsvp-page .rsvp-form .form-group .form-input-invalid{border-color:#e74c3c!important;box-shadow:0 0 0 3px #e74c3c40!important}.rsvp-page .rsvp-form .form-navigation{display:flex;justify-content:center;align-items:center;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.rsvp-page .rsvp-form .form-navigation .form-btn{width:20px;height:20px;flex:1;padding:var(--space-md) var(--space-lg);background:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--radius-sm);font-weight:var(--fw-semibold);font-size:var(--font-size-md);cursor:pointer;transition:all .3s ease}.rsvp-page .rsvp-form .form-navigation .form-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.rsvp-page .rsvp-form .form-navigation .form-btn:disabled{background:#9e8a7e!important;cursor:not-allowed;opacity:.6}.rsvp-page .rsvp-form .form-navigation .form-btn:first-child{background:var(--color-secondary);left:-100px}.rsvp-page .rsvp-form .form-navigation .form-btn:last-child{right:-100px}.rsvp-page .rsvp-form .rsvp-error{background:#e74c3c1a;color:#e74c3c;font-weight:var(--fw-medium);margin-bottom:var(--space-md);text-align:left;padding:var(--space-sm);border-radius:var(--radius-sm);border-left:4px solid #e74c3c}.rsvp-page .rsvp-form .field-error,.rsvp-page .rsvp-form .guests-error{color:#e74c3c;font-size:var(--font-size-sm);margin-top:var(--space-xs);padding:var(--space-xs) var(--space-sm);background:#e74c3c0d;border-radius:var(--radius-sm);border-left:3px solid #e74c3c;margin-bottom:var(--space-sm)}.rsvp-page .rsvp-form .guests-error{margin-bottom:var(--space-md);text-align:center}.rsvp-page .rsvp-form .guests-section h3{font-size:var(--font-size-xl);color:var(--color-text);margin-bottom:var(--space-md);text-align:left}.rsvp-page .rsvp-form .guests-section .add-guest-btn{background:#2ecc71;color:var(--color-white);border:none;padding:var(--space-md) var(--space-lg);border-radius:var(--radius-sm);cursor:pointer;width:100%;font-weight:var(--fw-semibold);font-size:var(--font-size-md);transition:all .3s ease}.rsvp-page .rsvp-form .guests-section .add-guest-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px)}.rsvp-page .rsvp-form .guests-section .add-guest-btn:disabled{background:#9e8a7e;cursor:not-allowed}.rsvp-page .rsvp-form .review{background:var(--color-white);border:2px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-xl);text-align:left;box-shadow:0 2px 8px rgba(var(--color-border),.1)}.rsvp-page .rsvp-form .review p{margin-bottom:var(--space-sm);padding:var(--space-xs) 0;border-bottom:1px solid rgba(var(--color-border),.3)}.rsvp-page .rsvp-form .review p strong{color:var(--color-primary);display:inline-block;min-width:140px}@media (max-width: var(--bp-md)){.rsvp-page{max-width:90%;padding:0 var(--space-md)}}:root{--color-primary-light: #f43f5e;--color-secondary-light: #555;--color-background-light: #f9f9f9;--color-text-light: #333;--color-white-light: #ffffff;--color-shadow-light: rgba(0, 0, 0, .1);--color-border-light: rgb(204, 204, 204);--color-primary-dark: #ea3943;--color-secondary-dark: #b8bcc8;--color-background-dark: #1a1a1a;--color-text-dark: #e8e8e8;--color-white-dark: #ffffff;--color-shadow-dark: rgba(0, 0, 0, .4);--color-border-dark: rgb(60, 60, 60);--color-danger: #e74c3c;--color-success: #2ecc71;--color-primary: light-dark( var(--color-primary-light), var(--color-primary-dark) );--color-secondary: light-dark( var(--color-secondary-light), var(--color-secondary-dark) );--color-background: light-dark( var(--color-background-light), var(--color-background-dark) );--color-text: light-dark(var(--color-text-light), var(--color-text-dark));--color-white: light-dark(var(--color-white-light), var(--color-white-dark));--color-shadow: light-dark( var(--color-shadow-light), var(--color-shadow-dark) );--color-border: light-dark( var(--color-border-light), var(--color-border-dark) );--font-header: "Adelia", sans-serif;--font-heading: "Mantonico", serif;--font-fancy: "Adelia", sans-serif;--font-body: "Mantonico", serif;--font-display: "Cormorant Garamond", "Garamond", Georgia, serif;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--font-size-2xs: .75rem;--font-size-xs: .8125rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.75rem;--font-size-4xl: 2.125rem;--font-size-5xl: 2.5rem;--font-size-6xl: 3em;--font-size-7xl: 4rem;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 2rem;--space-xl: 4rem;--space-xxl: 6rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 24px;--radius-button: 999px;--bp-sm: 640px;--bp-md: 768px;--bp-lg: 1024px;--bp-xl: 1280px}html[data-theme=light]{--color-primary: var(--color-primary-light) !important;--color-secondary: var(--color-secondary-light) !important;--color-background: var(--color-background-light) !important;--color-text: var(--color-text-light) !important;--color-white: var(--color-white-light) !important;--color-shadow: var(--color-shadow-light) !important;--color-border: var(--color-border-light) !important}html[data-theme=dark]{--color-primary: var(--color-primary-dark) !important;--color-secondary: var(--color-secondary-dark) !important;--color-background: var(--color-background-dark) !important;--color-text: var(--color-text-dark) !important;--color-white: var(--color-white-dark) !important;--color-shadow: var(--color-shadow-dark) !important;--color-border: var(--color-border-dark) !important}.guest-card{display:flex;justify-content:space-between;align-items:center;border-radius:var(--radius-md);padding:var(--space-md) 0;margin-bottom:var(--space-md);box-shadow:0 6px 18px rgba(var(--color-shadow),.4)}.guest-card.invalid input{border:1px solid #e74c3c!important}.guest-card .guest-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-sm)}.guest-card .guest-header h4{font-size:var(--font-size-sm);font-weight:var(--fw-semibold);color:var(--color-text);margin:0}.guest-card .guest-header .remove-guest{border:none;background:transparent;color:var(--color-secondary);font-size:var(--font-size-lg);line-height:1;cursor:pointer;padding:0;transition:color .3s ease,transform .3s ease}.guest-card .guest-header .remove-guest:hover{color:#e74c3c;transform:scale(1.1)}.guest-card .form-row{display:flex;gap:var(--space-sm);margin-bottom:var(--space-sm);overflow:hidden}.guest-card .form-row input,.guest-card .form-row textarea{flex:1;font-size:var(--font-size-sm);padding:var(--space-sm) var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-white);color:var(--color-text);font-family:var(--font-body);transition:border-color .3s ease,box-shadow .3s ease}.guest-card .form-row input::placeholder,.guest-card .form-row textarea::placeholder{color:var(--color-secondary)}.guest-card .form-row input:focus,.guest-card .form-row textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(var(--color-primary),.25)}.guest-card .form-row textarea{resize:vertical;min-height:70px}.guest-card .guest-actions{display:flex;gap:var(--space-sm);margin-bottom:var(--space-xs)}.guest-card .guest-actions .link-btn{background:transparent;border:none;padding:0;font-size:var(--font-size-xs);font-weight:var(--fw-medium);color:var(--color-primary);cursor:pointer;transition:color .3s ease}.guest-card .guest-actions .link-btn:hover{text-decoration:underline}.guest-card .guest-actions .link-btn.active{color:#c9a87c;font-weight:var(--fw-semibold)}.guest-card .guest-card-actions{display:flex;align-items:center;gap:var(--space-xs);position:relative;width:min-content}.guest-card .guest-card-actions .three-dots-btn{position:relative;background:transparent;border:none;font-size:1.5rem;cursor:pointer;padding:0 var(--space-xs);line-height:1;color:var(--color-primary);transition:color .3s ease}.guest-card .guest-card-actions .three-dots-btn:hover{color:#c9a87c}.guest-card .guest-card-actions .dropdown-menu{position:absolute;top:calc(100% - var(--space-sm));right:var(--space-sm);display:flex;flex-direction:column;background:var(--color-white);border:1px solid var(--color-border);border-radius:var(--radius-sm);box-shadow:0 6px 12px rgba(var(--color-shadow),.25);padding:var(--space-xs) 0;z-index:10;width:max-content}.guest-card .guest-card-actions .dropdown-menu button{background:transparent;border:none;padding:var(--space-xs) var(--space-xs);font-size:var(--font-size-xs);text-align:left;cursor:pointer;color:var(--color-text);transition:background .3s ease}.guest-card .guest-card-actions .dropdown-menu button:hover{background:var(--color-primary)}.guest-card .form-btn{border-radius:var(--radius-button);border:none;background:var(--color-primary);color:var(--color-text)!important;font-size:var(--font-size-sm);font-weight:var(--fw-semibold);cursor:pointer;transition:background .3s ease,transform .3s ease,box-shadow .3s ease;padding:0 var(--space-md)!important}.guest-card .form-btn.add-guest-btn{aspect-ratio:1/1!important;width:min-content!important;height:min-content!important;background:none!important}.guest-card .form-btn:hover:not(:disabled){filter:brightness(1.1);transform:translateY(-1px);box-shadow:0 10px 24px rgba(var(--color-shadow),.35)}.guest-card .form-btn:disabled{background:#9e8a7e;cursor:not-allowed;box-shadow:none;transform:none}@media (max-width: var(--bp-sm)){.guest-card{padding:var(--space-sm)}.guest-card .form-row{flex-direction:column;gap:var(--space-xs)}.guest-card .guest-card-actions{justify-content:flex-start}.guest-card .guest-card-actions .dropdown-menu{right:auto;left:0}}
