.toast-sage{background:linear-gradient(90deg,var(--color-sage),#7f9b7f);color:#fff}.toast-warn{background:linear-gradient(90deg,var(--color-beige),var(--color-blush));color:var(--color-brown)}.toast-danger{background:linear-gradient(90deg,#d9534f,#c9302c);color:#fff}.toast-sage .toast-body,.toast-warn .toast-body,.toast-danger .toast-body{color:inherit}.form-section{background:#f3efe699;border:1px solid var(--card-border);border-radius:.75rem;padding:1rem;margin-bottom:1rem}.section-title{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.section-title .dot-accent{width:10px;height:10px;border-radius:50%;background:var(--color-sage);box-shadow:0 0 0 6px #8fa78f0f}.accom-option{min-width:140px;padding:1rem 1.1rem;border-radius:12px;border:1px solid var(--card-border);background:#fffffffa;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.25rem;cursor:pointer;transition:transform .18s cubic-bezier(.2,.8,.2,1),box-shadow .18s cubic-bezier(.2,.8,.2,1),border-color .18s ease,background .18s ease;color:var(--color-brown);position:relative;text-align:center;-webkit-user-select:none;user-select:none}.accom-option .fw-bold{font-weight:700;font-size:1rem}.accom-option .muted{color:#4a3b3699;font-size:.88rem}.accom-option:hover{transform:translateY(-4px);box-shadow:0 10px 30px #0000000f;border-color:#8fa78f1f}.accom-option:focus{outline:none;box-shadow:0 0 0 4px #8fa78f14}.accom-option:active{transform:translateY(-2px)}.accom-option.selected{background:linear-gradient(180deg,#8fa78f14,#8fa78f05);border-color:#8fa78f38;box-shadow:0 18px 40px #6478640f;transform:translateY(-6px)}.accom-option.selected:after{content:"✓";position:absolute;top:-8px;right:-8px;background:var(--color-sage);color:#fff;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;box-shadow:0 6px 18px #8fa78f14;font-weight:700}#accom_options{flex-wrap:wrap}#accom_options .accom-option{flex:1 1 140px;min-width:120px}.toast-progress{height:4px;background:#ffffff1f;border-radius:4px;overflow:hidden}.toast-progress-bar{width:0;height:100%;background:linear-gradient(90deg,#fffffff2,#ffffffb3);transition:width linear}.romantic-header{position:relative;overflow:hidden;border-radius:1.5rem;background-color:#6b8a6b7a;color:var(--color-brown);padding:2rem 1.5rem;text-align:center;border:1px solid rgba(72,58,50,.04)}.romantic-card{position:relative;z-index:1;padding:1.5rem;border-radius:1.2rem;background:#fffffffa;box-shadow:0 10px 30px #0000001a}.romantic-card:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 30%,rgba(180,210,180,.18),transparent 28%),radial-gradient(circle at 80% 70%,rgba(200,230,200,.1),transparent 40%),linear-gradient(135deg,#8fa78f0f,#dceedc05);opacity:1;z-index:0;border-radius:1.2rem;pointer-events:none}.romantic-decor{position:absolute;pointer-events:none;z-index:0}.romantic-decor.decor-left,.romantic-decor.decor-right{width:220px;height:220px;border-radius:50%;opacity:.18;transform-origin:center}.romantic-decor.decor-left{top:-36px;left:-36px;background:radial-gradient(circle at 30% 30%,rgba(231,207,200,.95),rgba(231,207,200,.5) 30%,rgba(231,207,200,.18) 55%,transparent 60%);transform:rotate(-12deg) scale(1.05)}.romantic-decor.decor-right{bottom:-36px;right:-36px;background:radial-gradient(circle at 70% 70%,rgba(200,165,125,.9),rgba(200,165,125,.5) 30%,rgba(200,165,125,.12) 55%,transparent 60%);transform:rotate(18deg) scale(1)}@media(max-width:576px){.romantic-decor.decor-left,.romantic-decor.decor-right{width:120px;height:120px;opacity:.12}.romantic-decor.decor-left{top:-18px;left:-18px}.romantic-decor.decor-right{bottom:-18px;right:-18px}.heart{display:none!important}}.romantic-names{font-size:1.8rem;font-weight:700;margin-bottom:.5rem}.romantic-sub{font-size:1rem;margin-bottom:1rem}.romantic-meta{text-align:center;margin-top:.4rem;z-index:2}.romantic-date{font-weight:700;color:#40523ce0;font-size:2.05rem;letter-spacing:2px}.romantic-location{color:#40523ce0;font-size:1.55rem;margin-top:.15rem}.romantic-phones{display:flex;justify-content:center;gap:1.25rem;align-items:flex-start;flex-wrap:wrap}.phone-item{text-align:center;display:flex;flex-direction:column;gap:.15rem}.phone-name{color:#4a3b36cc;font-size:.95rem}.phone-number{color:var(--color-beige);text-decoration:none;font-weight:700;display:inline-block}.phone-number:hover{text-decoration:underline}.romantic-content{position:relative;z-index:2;font-family:Playfair Display,serif;background:linear-gradient(135deg,#8fa78f4d,#8fa78f24,#f3efe60f 70%);color:var(--color-brown);padding:1rem 1.25rem;border-radius:.8rem;border:1px solid rgba(143,167,143,.1);box-shadow:inset 0 6px 18px #ffffff1a,0 8px 30px #0000000f;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.romantic-names{color:var(--color-sage);font-family:Edwardian Script ITC,Edwardian Script,Great Vibes,cursive;font-size:2.3rem;letter-spacing:.6px}.card-wedding .title-font{font-family:Edwardian Script ITC,Edwardian Script,Great Vibes,cursive;font-size:2.6rem;line-height:1;color:var(--color-sage)}.romantic-sub{color:#40523ceb}.romantic-phones .phone-number{color:#789678fa}.page-transition{position:relative;overflow:hidden;opacity:1;transition:opacity .5s ease}.page-fade-out{opacity:0;pointer-events:none}.page-fade-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#e8d8dbf2;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2147483646!important;opacity:0;pointer-events:none;transition:opacity .5s ease;will-change:opacity;transform:translateZ(0)}.page-fade-overlay.active{opacity:1;pointer-events:auto}.presents-grid .present-card{border-radius:12px;border:1px solid rgba(0,0,0,.06);padding:.75rem;background:#fff;display:flex;gap:.75rem;align-items:flex-start}.presents-grid .present-thumb{width:120px;height:96px;object-fit:cover;border-radius:8px;flex:0 0 120px}.presents-grid .present-info{flex:1;min-width:0}.presents-grid .present-desc{color:var(--color-brown);font-size:.95rem;margin-top:.25rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.presents-grid .present-meta{color:#4a3b3699;font-size:.88rem}@media(max-width:576px){.presents-grid .present-thumb{width:84px;height:64px;flex:0 0 84px}}.contribution-item{transition:opacity .26s ease,transform .26s ease,max-height .26s ease,margin .26s ease,padding .26s ease;will-change:opacity,transform,max-height;overflow:hidden}.contribution-item.removing{opacity:0!important;transform:translateY(-8px)!important;max-height:0!important;margin-bottom:0!important;padding-top:0!important;padding-bottom:0!important}
