@import"https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400;0,600;0,700;1,400;1,600&family=Montserrat:wght@300;400;500;600;700&display=swap";:root{--wedding-bg: #F9FAFB;--wedding-bg-warm: #f5f0f3;--wedding-bg-card: rgba(255, 255, 255, .97);--wedding-green: #0D3931;--wedding-green-dark: #0a2b25;--wedding-green-light: #1a5c4d;--wedding-green-lightest: #e6f0ed;--wedding-cherry: #EFA7AC;--wedding-cherry-dark: #e88f95;--wedding-cherry-light: #f5c9cd;--wedding-cherry-lightest: #fef3f4;--wedding-violet: #2B1021;--wedding-violet-light: #4a2340;--wedding-gold: #D4AF37;--wedding-gold-light: #E6C659;--wedding-gold-dark: #B8941F;--wedding-ink: #111827;--wedding-ink-sage: #2B1021;--wedding-muted: #4B5563;--wedding-muted-light: #9CA3AF;--wedding-border: #E5E7EB;--wedding-border-dark: #D1D5DB;--wedding-success: #16a34a;--wedding-success-light: #D1FAE5;--wedding-warning: #ea580c;--wedding-warning-light: #FEF3C7;--wedding-error: #dc2626;--wedding-error-light: #FEE2E2;--font-serif: "Playfair Display", Georgia, serif;--font-display: "Playfair Display", serif;--font-sans: "Montserrat", system-ui, sans-serif}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);background-color:var(--wedding-bg);color:var(--wedding-ink);line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-serif);font-weight:700;line-height:1.2;margin-bottom:.5rem}.wedding-h1{font-size:clamp(2rem,5vw,3rem)}.wedding-h2{font-size:clamp(1.5rem,3.5vw,2.25rem)}.wedding-h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}.wedding-h4{font-size:1.5rem;font-family:var(--font-sans);font-weight:600}.wedding-container{max-width:1200px;margin:0 auto;padding:0 1rem}.mt-40{margin-top:40px}.mt-20{margin-top:20px}.has-text-big{font-size:1.125rem}.has-text-medium{font-size:1rem}.has-text-small{font-size:.875rem}.wedding-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px #0d39311a;border:1px solid var(--wedding-border);transition:box-shadow .3s ease,transform .3s ease}.wedding-card:where(.hoverable):hover,.wedding-event-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px #0d39311f}.wedding-stat-card{background:#fff;border-radius:16px;padding:1.5rem;text-align:center;box-shadow:0 4px 6px #0d39311a;border:1px solid var(--wedding-border);transition:box-shadow .3s ease,transform .3s ease}.wedding-stat-card:hover{transform:translateY(-2px);box-shadow:0 10px 15px #0d39311f}.wedding-stat-number{font-family:var(--font-serif);font-size:2.5rem;font-weight:700;color:var(--wedding-green);margin-bottom:.25rem;line-height:1}.wedding-stat-label{color:var(--wedding-muted);font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em}.wedding-event-card{background:#fff;border-radius:16px;padding:1.5rem;box-shadow:0 4px 6px #0d39311a;border:1px solid var(--wedding-border);transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease;cursor:pointer}.wedding-event-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:700;color:var(--wedding-violet);margin-bottom:.5rem}.wedding-event-date{color:var(--wedding-muted);font-size:.875rem;margin-bottom:1rem}.wedding-btn-primary,.wedding-btn-secondary,.wedding-btn-gold,.wedding-btn-rosa{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:8px;font-family:var(--font-sans);font-size:1rem;font-weight:600;line-height:1.4;cursor:pointer;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease;white-space:nowrap;outline:2px solid transparent;outline-offset:2px}.wedding-btn-primary:focus-visible,.wedding-btn-secondary:focus-visible,.wedding-btn-gold:focus-visible,.wedding-btn-rosa:focus-visible{outline-color:var(--wedding-cherry);outline-offset:3px}.wedding-btn-primary{background:var(--wedding-green);color:#fff;box-shadow:0 2px 4px #0d393140}.wedding-btn-primary:hover:not(:disabled){background:var(--wedding-green-light);transform:translateY(-1px);box-shadow:0 6px 16px #0d39314d}.wedding-btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 4px #0d393133}.wedding-btn-secondary{background:transparent;color:var(--wedding-green);border:2px solid var(--wedding-green);box-shadow:none}.wedding-btn-secondary:hover:not(:disabled){background:var(--wedding-green-lightest);border-color:var(--wedding-green-light);color:var(--wedding-green);transform:translateY(-1px);box-shadow:0 4px 12px #0d39311f}.wedding-btn-gold,.wedding-btn-rosa{background:var(--wedding-cherry);color:var(--wedding-violet);box-shadow:0 4px 16px #efa7ac66}.wedding-btn-gold:hover:not(:disabled),.wedding-btn-rosa:hover:not(:disabled){background:var(--wedding-cherry-dark);transform:translateY(-1px);box-shadow:0 6px 20px #efa7ac80}.wedding-btn-primary:disabled,.wedding-btn-secondary:disabled,.wedding-btn-gold:disabled,.wedding-btn-rosa:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.wedding-form-group{margin-bottom:1.5rem}.wedding-input-group{position:relative;margin-bottom:1.25rem}.wedding-label{display:block;font-family:var(--font-sans);font-weight:500;font-size:.875rem;color:var(--wedding-violet);margin-bottom:.5rem;letter-spacing:.01em}.wedding-input{width:100%;padding:.75rem 1rem;border:1px solid var(--wedding-border);border-radius:8px;font-size:1rem;font-family:var(--font-sans);background:#fff;color:var(--wedding-ink);transition:border-color .2s ease,box-shadow .2s ease;appearance:none;-webkit-appearance:none}.wedding-input::placeholder{color:var(--wedding-muted-light)}.wedding-input:hover:not(:disabled):not(:focus){border-color:var(--wedding-green)}.wedding-input:focus{outline:none;border-color:var(--wedding-green);border-width:2px;box-shadow:0 0 0 3px #efa7ac4d;background:#fff}.wedding-input:disabled{background:var(--wedding-bg-warm);color:var(--wedding-muted);cursor:not-allowed;opacity:.65}.wedding-input.error,.wedding-input[aria-invalid=true]{border-color:var(--wedding-error);box-shadow:0 0 0 3px #dc26261f}.wedding-input-group .showPass{position:absolute;right:.75rem;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--wedding-muted);padding:.25rem;display:flex;align-items:center;transition:color .2s ease}.wedding-input-group .showPass:hover{color:var(--wedding-green)}.wedding-login-form{max-width:420px;margin:2rem auto;background:#fff;border-radius:16px;padding:2.5rem 2rem;box-shadow:0 10px 15px #0d39311f;border:1px solid var(--wedding-border)}.wedding-login-header{text-align:center;margin-bottom:2rem}.wedding-login-title{font-family:var(--font-serif);font-size:2rem;font-weight:700;color:var(--wedding-violet);margin-bottom:.5rem}.wedding-login-subtitle{color:var(--wedding-muted);font-size:.9375rem}.wedding-nav-link{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:var(--wedding-muted);font-family:var(--font-sans);font-weight:500;font-size:.9375rem;border-radius:8px;margin:.25rem 0;transition:background .2s ease,color .2s ease}.wedding-nav-link:hover{background:var(--wedding-green-lightest);color:var(--wedding-green)}.wedding-nav-link.active{background:var(--wedding-green);color:#fff;box-shadow:0 4px 12px #0d393133}.burger-top{display:flex;height:58px;align-items:center;justify-content:flex-start}.wedding-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}:focus-visible{outline:2px solid var(--wedding-cherry);outline-offset:2px;border-radius:4px}@media (max-width: 768px){.wedding-card,.wedding-login-form,.wedding-stat-card,.wedding-event-card{padding:1.25rem;margin-inline:.75rem}.wedding-btn-primary,.wedding-btn-gold,.wedding-btn-rosa{width:100%;padding:1rem;justify-content:center}.wedding-btn-secondary{width:100%;padding:.875rem}.wedding-input{padding:1rem}.wedding-dashboard-grid{grid-template-columns:1fr;gap:1rem}.wedding-login-form{margin-inline:1rem;padding:2rem 1.25rem}}#root,.App{min-height:100vh}
