:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:#2e1d20;background:#fdfbf9;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{scroll-behavior:smooth;scroll-padding-top:5.5rem}button,input,textarea,select{font:inherit}button{-webkit-tap-highlight-color:transparent}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.commercial-layout{color:#3b2226;background:linear-gradient(#fffcfb 0%,#fef8f6 100%);flex-direction:column;min-height:100dvh;display:flex}.commercial-navbar{z-index:50;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffcfbe6;border-bottom:1px solid #f3e2de;padding:1rem 1.5rem;position:sticky;top:0}.navbar-container{justify-content:space-between;align-items:center;gap:1.5rem;max-width:72rem;margin-inline:auto;display:flex}.brand-logo{color:#3b2226;align-items:center;gap:.6rem;text-decoration:none;display:flex}.brand-icon{font-size:1.6rem}.brand-text{letter-spacing:-.03em;color:#3b2226;font-size:1.25rem;font-weight:800}.navbar-links{align-items:center;gap:2rem;display:flex}.navbar-links a{color:#6d4e52;font-size:.95rem;font-weight:600;text-decoration:none;transition:color .15s}.navbar-links a:hover,.navbar-links a.active{color:#a95954}.btn-login-nav{color:#fff;background:#a95954;border-radius:999px;align-items:center;padding:.65rem 1.25rem;font-size:.875rem;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 4px 12px #a9595433}.btn-login-nav:hover{background:#934a45;transform:translateY(-1px)}.public-account-actions,.public-account-profile{align-items:center;display:flex}.public-account-actions{gap:.65rem}.public-account-logout-form{margin:0}.public-account-logout{color:#7b5559;min-height:2.75rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #e2c8c4;border-radius:.75rem;padding:0 .75rem;font-size:.75rem;font-weight:800}.public-account-profile{color:#55383c;gap:.55rem;min-height:2.75rem;text-decoration:none}.public-account-avatar{color:#914641;background:#fae9e5;border:1px solid #e4c7c2;border-radius:50%;flex:none;place-items:center;width:2.25rem;height:2.25rem;font-size:.8rem;font-weight:900;display:grid}.public-account-copy strong,.public-account-copy small{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;display:block;overflow:hidden}.public-account-copy strong{font-size:.76rem}.public-account-copy small{color:#927578;margin-top:.12rem;font-size:.65rem}@media (max-width:40rem){.public-account-actions{gap:.4rem}.public-account-copy{display:none}.public-account-actions .btn-login-nav{padding-inline:.8rem}.public-account-logout{padding-inline:.6rem}}.hero-section{text-align:center;background:radial-gradient(circle at 50% 20%,#f6ded973 0%,#0000 60%);padding:5rem 1.5rem 4rem}.hero-container{max-width:54rem;margin-inline:auto}.hero-badge{color:#a05752;letter-spacing:.02em;background:#fbeee9;border:1px solid #f1d5cd;border-radius:999px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.4rem 1rem;font-size:.8125rem;font-weight:750;display:inline-flex}.hero-title{letter-spacing:-.04em;color:#2d181b;margin:0 0 1.25rem;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,3.8rem);font-weight:400;line-height:1.1}.hero-title span{color:#a95954;font-style:italic}.hero-subtitle{color:#6d4e52;max-width:42rem;margin:0 auto 2.25rem;font-size:clamp(1.1rem,2vw,1.25rem);line-height:1.6}.hero-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-bottom:2.5rem;display:flex}.btn-hero-primary{color:#fff;background:#a95954;border-radius:.9rem;justify-content:center;align-items:center;padding:1rem 2rem;font-size:1.05rem;font-weight:750;text-decoration:none;transition:all .15s;display:inline-flex;box-shadow:0 8px 24px #a9595447}.btn-hero-primary:hover{background:#934a45;transform:translateY(-2px)}.btn-hero-secondary{color:#6d4e52;background:#fff;border:1px solid #e7cdcb;border-radius:.9rem;justify-content:center;align-items:center;padding:1rem 1.75rem;font-size:1.05rem;font-weight:750;text-decoration:none;transition:all .15s;display:inline-flex}.btn-hero-secondary:hover{background:#fdf6f4;border-color:#d8b7b4}.hero-highlight-chips{color:#7b585c;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.5rem;font-size:.875rem;font-weight:600;display:flex}.how-it-works-section,.features-section{padding:4.5rem 1.5rem}.section-container{max-width:72rem;margin-inline:auto}.section-header-center{text-align:center;max-width:38rem;margin:0 auto 3rem}.section-tag{color:#a95954;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem;font-weight:800;display:inline-block}.section-header-center h2{letter-spacing:-.04em;color:#2d181b;margin:0 0 .75rem;font-size:2.2rem}.section-header-center p{color:#6d4e52;margin:0;font-size:1.05rem}.steps-grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:1.75rem;display:grid}.step-card{background:#fff;border:1px solid #f1ddd9;border-radius:1.25rem;padding:2rem 1.75rem;box-shadow:0 8px 24px #552a2e0a}.step-number{color:#a95954;background:#fbede9;border-radius:.75rem;place-items:center;width:2.75rem;height:2.75rem;margin-bottom:1.25rem;font-size:1.25rem;font-weight:800;display:grid}.step-card h3{letter-spacing:-.025em;color:#2d181b;margin:0 0 .6rem;font-size:1.2rem}.step-card p{color:#6d4e52;margin:0;font-size:.95rem;line-height:1.55}.features-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));gap:1.5rem;display:grid}.feature-card{background:#fff;border:1px solid #f2dfdc;border-radius:1.25rem;padding:1.75rem;transition:transform .15s,box-shadow .15s;box-shadow:0 6px 20px #552a2e08}.feature-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px #552a2e12}.feature-icon{margin-bottom:1rem;font-size:2.2rem}.feature-card h3{letter-spacing:-.025em;color:#2d181b;margin:0 0 .5rem;font-size:1.15rem}.feature-card p{color:#6d4e52;margin:0;font-size:.92rem;line-height:1.55}.cta-banner-section{color:#fff;text-align:center;background:linear-gradient(135deg,#a95954 0%,#873e3a 100%);padding:4rem 1.5rem}.cta-container{max-width:44rem;margin-inline:auto}.cta-container h2{letter-spacing:-.035em;margin:0 0 .75rem;font-size:2.2rem}.cta-container p{opacity:.9;margin:0 0 2rem;font-size:1.1rem}.cta-buttons{flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;display:flex}.btn-cta-white{color:#873e3a;background:#fff;border-radius:.8rem;padding:.9rem 1.75rem;font-weight:800;text-decoration:none;display:inline-flex;box-shadow:0 6px 16px #00000026}.btn-cta-outline{color:#fff;border:1px solid #fff9;border-radius:.8rem;padding:.9rem 1.75rem;font-weight:800;text-decoration:none;display:inline-flex}.commercial-footer{color:#f7e6e4;background:#231416;padding:3.5rem 1.5rem 2rem}.footer-container{border-bottom:1px solid #ffffff1a;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;max-width:72rem;margin-inline:auto;padding-bottom:2rem;display:flex}.footer-brand strong{margin-bottom:.35rem;font-size:1.15rem;display:block}.footer-brand p{color:#b29393;margin:0;font-size:.875rem}.footer-links{gap:1.5rem;display:flex}.footer-links a{color:#f7e6e4;font-size:.9rem;font-weight:600;text-decoration:none}.footer-bottom{text-align:center;color:#8f7273;max-width:72rem;margin:1.5rem auto 0;font-size:.8125rem}.plans-page-container{max-width:72rem;margin-inline:auto;padding:3.5rem 1.5rem 5rem}.plans-header{text-align:center;max-width:42rem;margin:0 auto 3rem}.plans-header h1{letter-spacing:-.04em;color:#2d181b;margin:.35rem 0 .85rem;font-size:2.5rem}.plans-header p{color:#6d4e52;margin:0;font-size:1.1rem;line-height:1.55}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));align-items:stretch;gap:2rem;margin-bottom:3.5rem;display:grid}.pricing-card{background:#fff;border:1px solid #eedcd8;border-radius:1.5rem;flex-direction:column;padding:2.25rem 2rem;display:flex;position:relative;box-shadow:0 8px 24px #552a2e0a}.pricing-card-featured{border-color:#a95954;transform:scale(1.02);box-shadow:0 16px 40px #a959541f}.featured-ribbon{color:#fff;letter-spacing:.04em;text-transform:uppercase;background:#a95954;border-radius:999px;padding:.3rem .9rem;font-size:.75rem;font-weight:800;position:absolute;top:-.85rem;right:1.5rem}.tier-badge{color:#a95954;background:#f7e6e2;border-radius:999px;margin-bottom:.85rem;padding:.25rem .75rem;font-size:.75rem;font-weight:800;display:inline-block}.featured-badge{color:#8c3e39;background:#fae4e1}.pricing-card h3{letter-spacing:-.03em;color:#2d181b;margin:0 0 .35rem;font-size:1.6rem}.tier-desc{color:#7b5b5f;min-height:2.5rem;margin:0 0 1.25rem;font-size:.875rem}.pricing-credits-highlight{color:#a95954;font-size:1.35rem}.pricing-credits-highlight strong{letter-spacing:-.04em;font-size:1.85rem;font-weight:900}.credit-subtext{color:#8c6e71;margin-top:.25rem;margin-bottom:1.5rem;font-size:.75rem;display:block}.pricing-features{color:#55363a;flex:1;gap:.75rem;margin:0 0 2rem;padding:0;font-size:.9rem;list-style:none;display:grid}.btn-plan-select{color:#a95954;background:#f6e8e5;border-radius:.75rem;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:.95rem;font-weight:800;text-decoration:none;transition:all .15s;display:flex}.btn-plan-select:hover{color:#8e423d;background:#faece9}.btn-plan-featured{color:#fff;background:#a95954;border-radius:.75rem;justify-content:center;align-items:center;padding:.95rem 1.5rem;font-size:1rem;font-weight:800;text-decoration:none;transition:all .15s;display:flex;box-shadow:0 6px 18px #a9595440}.btn-plan-featured:hover{background:#914641;transform:translateY(-2px)}.credit-packages-card{background:#fff;border:1px solid #eedcd8;border-radius:1.5rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:2rem;padding:2.5rem;display:flex;box-shadow:0 8px 24px #552a2e0a}.packages-text h2{letter-spacing:-.03em;color:#2d181b;margin:0 0 .4rem;font-size:1.45rem}.packages-text p{color:#6d4e52;margin:0;font-size:.95rem}.packages-options{flex-wrap:wrap;gap:1rem;display:flex}.package-pill{text-align:center;background:#fdf8f6;border:1px solid #eedcd8;border-radius:1rem;padding:.85rem 1.25rem}.package-pill strong{color:#a95954;font-size:1rem;display:block}.package-pill span{color:#7b5b5f;margin-top:.15rem;font-size:.75rem;display:block}.plans-back-action{text-align:center;margin-top:3rem}.btn-back-home{color:#a95954;font-size:.95rem;font-weight:750;text-decoration:none}.admin-login-layout{background:linear-gradient(135deg,#fdf6f4 0%,#f6e3de 100%);justify-content:center;align-items:center;min-height:100dvh;padding:2rem 1.5rem;display:flex}.login-card-container{width:100%;max-width:32rem}.login-card{background:#fff;border:1px solid #f0d8d4;border-radius:1.75rem;padding:2.75rem 2.5rem;box-shadow:0 20px 60px #552a2e1a}.login-card-header{text-align:center;margin-bottom:2rem}.login-brand{align-items:center;gap:.5rem;margin-bottom:1.25rem;text-decoration:none;display:inline-flex}.login-brand .brand-name{letter-spacing:-.03em;color:#3b2226;font-size:1.35rem;font-weight:800}.login-card-header h1{letter-spacing:-.04em;color:#2d181b;margin:0 0 .5rem;font-size:1.75rem}.login-card-header p{color:#6d4e52;margin:0;font-size:.92rem;line-height:1.5}.login-form{gap:1.25rem;display:grid}.login-field label{color:#4a3034;margin-bottom:.45rem;font-size:.875rem;font-weight:750;display:block}.login-field input{color:#2d181b;background:#fffcfb;border:1px solid #e1c8c5;border-radius:.85rem;outline:none;width:100%;min-height:3.25rem;padding:0 1rem;font-size:1rem;transition:all .15s}.login-field input:focus{background:#fff;border-color:#a95954;box-shadow:0 0 0 4px #a9595426}.btn-login-submit{color:#fff;cursor:pointer;background:#a95954;border:0;border-radius:.85rem;width:100%;min-height:3.4rem;margin-top:.5rem;font-size:1.05rem;font-weight:800;transition:all .15s;box-shadow:0 8px 20px #a9595440}.btn-login-submit:hover{background:#914641;transform:translateY(-1px)}.demo-credentials-box{color:#7b4f53;background:#fdf3ef;border:1px dashed #e6c1bc;border-radius:.85rem;margin-top:1.75rem;padding:1rem 1.25rem;font-size:.8125rem}.demo-tag{color:#a95954;margin-bottom:.35rem;font-weight:800;display:block}.demo-credentials-box p{margin:.2rem 0}.demo-credentials-box small{margin-top:.55rem;line-height:1.45;display:block}.demo-credentials-box code{color:#3b2226;background:#f3deda;border-radius:.35rem;padding:.15rem .4rem;font-weight:700}.login-card-footer{text-align:center;margin-top:1.75rem}.link-back-home{color:#875c60;font-size:.875rem;font-weight:700;text-decoration:none}.payment-return-layout{min-height:100dvh;padding:max(1.25rem, env(safe-area-inset-top)) 1rem max(1.25rem, env(safe-area-inset-bottom));background:linear-gradient(135deg,#fdf6f4,#f6e3de);place-items:center;display:grid}.payment-return-card{background:#fff;border:1px solid #ead4d0;border-top:.35rem solid #d19b58;border-radius:1.5rem;width:min(100%,38rem);padding:clamp(1.4rem,5vw,2.5rem);box-shadow:0 20px 60px #552a2e1a}.payment-return-card.success{border-top-color:#4e9a72}.payment-return-card.error{border-top-color:#bd5b59}.payment-return-card h1{color:#382124;margin:.75rem 0}.payment-return-card>p{color:#74575b;line-height:1.6}.payment-return-card>small{color:#94777a;margin-top:1.25rem;line-height:1.5;display:block}.payment-return-details{gap:.7rem;margin:1.4rem 0;display:grid}.payment-return-details div{border-bottom:1px solid #f0e2df;justify-content:space-between;gap:1rem;padding-bottom:.7rem;display:flex}.payment-return-details dt{color:#87696d}.payment-return-details dd{color:#432a2e;text-align:right;margin:0;font-weight:800}.payment-return-actions{flex-wrap:wrap;gap:.7rem;margin-top:1.5rem;display:flex}.link-back-home:hover{color:#a95954}
.admin-desktop-layout{color:#342224;background:#fbf8f6;flex-direction:column;min-height:100dvh;display:flex}.admin-navbar{z-index:40;background:#fff;border-bottom:1px solid #eedcd8;padding:.9rem 2rem;position:sticky;top:0;box-shadow:0 2px 8px #00000008}.admin-nav-container{justify-content:space-between;align-items:center;gap:1.5rem;max-width:86rem;margin-inline:auto;display:flex}.admin-brand{align-items:center;gap:.85rem;display:flex}.admin-logo-badge{color:#9a5550;background:#fffdfc;border:1px solid #d9b7b1;border-radius:50%;place-items:center;width:2.15rem;height:2.15rem;font-family:Georgia,Times New Roman,serif;font-size:1.05rem;line-height:1;transition:transform .3s cubic-bezier(.34,1.56,.64,1),background .2s;display:grid}.admin-logo-badge svg{width:1.4rem;height:1.4rem}.admin-brand:hover .admin-logo-badge{background:#fff3f0;transform:scale(1.08)rotate(6deg)}.admin-brand-name{color:#2d181b;font-size:1.15rem;font-weight:800;display:block}.admin-brand-sub{color:#a95954;text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:700;display:block}.admin-nav-actions{align-items:center;gap:1.5rem;display:flex}.admin-org-pill{color:#7b4440;background:#f7ebe8;border:1px solid #eccbc6;border-radius:999px;align-items:center;gap:.5rem;padding:.4rem .9rem;font-size:.8125rem;font-weight:750;display:flex}.org-dot{background:#4b8a5c;border-radius:50%;width:.5rem;height:.5rem}.admin-user-menu{align-items:center;gap:1rem;display:flex}.admin-settings-link{align-items:center;gap:.35rem;display:inline-flex}.admin-settings-link svg{width:1rem;height:1rem}.user-greeting{color:#6d4e52;font-size:.875rem}.user-greeting strong{color:#2d181b}.logout-button{color:#8c575a;cursor:pointer;background:#fff;border:1px solid #e1c7c4;border-radius:.65rem;padding:.45rem .95rem;font-size:.8125rem;font-weight:750;transition:all .15s}.logout-button:hover{color:#a23d39;background:#faecea;border-color:#dcb3af}.admin-main-container{width:100%;max-width:86rem;margin-inline:auto;padding:2.5rem 2rem 4rem}.admin-hero-banner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;margin-bottom:2.25rem;display:flex}.admin-hero-text h1{letter-spacing:-.04em;color:#2d181b;margin:0 0 .35rem;font-size:2rem}.admin-hero-text p{color:#7b585c;margin:0;font-size:1rem}.admin-hero-controls{align-items:center;gap:.85rem;display:flex}.admin-hero-controls a,.empty-weddings-box a{justify-content:center;text-decoration:none}.admin-access-notice{background:#fff4f1;border:1px solid #e5c9c4;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;margin:-.75rem 0 1.5rem;padding:1rem 1.15rem;display:flex}.admin-access-notice strong{color:#4b2e32}.admin-access-notice p{color:#76585c;margin:.25rem 0 0;font-size:.82rem;line-height:1.45}.admin-access-notice a{color:#914641;flex:none;align-items:center;min-height:2.75rem;font-size:.82rem;font-weight:800;text-decoration:none;display:inline-flex}@media (max-width:47.99rem){.admin-access-notice{flex-direction:column;align-items:stretch}}.admin-btn-primary{color:#fff;cursor:pointer;background:#a95954;border:0;border-radius:.8rem;align-items:center;gap:.5rem;padding:.85rem 1.6rem;font-size:.95rem;font-weight:800;transition:all .15s;display:inline-flex;box-shadow:0 6px 18px #a9595440}.admin-btn-primary:hover{background:#914641;transform:translateY(-1px)}.admin-btn-secondary{color:#634346;cursor:pointer;background:#fff;border:1px solid #ded0cc;border-radius:.8rem;align-items:center;padding:.85rem 1.25rem;font-size:.95rem;font-weight:750;transition:all .15s;display:inline-flex}.admin-btn-secondary svg{width:1rem;height:1rem}.admin-btn-secondary:hover{background:#fbf4f2}.admin-btn-secondary.spinning{opacity:.7;cursor:wait}.admin-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:1rem;margin-bottom:2.25rem;display:grid}.metric-card{background:#fff;border:1px solid #f1deda;border-radius:.95rem;align-items:center;gap:1.15rem;padding:1.2rem 1.25rem;display:flex;box-shadow:0 2px 8px #552a2e06}.metric-icon{border-radius:.75rem;place-items:center;width:3.25rem;height:3.25rem;display:grid}.metric-icon svg{width:1.45rem;height:1.45rem}.metric-purple{color:#77558d;background:#f5edf7}.metric-blue{color:#3d718e;background:#eaf3f9}.metric-green{color:#3c8050;background:#eaf5ec}.metric-amber{color:#986a2f;background:#fdf5e7}.metric-info{flex-direction:column;display:flex}.metric-label{color:#876266;font-size:.8125rem;font-weight:700}.metric-value{letter-spacing:-.04em;color:#2d181b;font-size:1.75rem;font-weight:900}.metric-toggle-row{align-items:center;gap:.6rem;margin-top:.25rem;display:flex}.status-live-tag{color:#4b8a5c;font-size:.75rem;font-weight:800}.btn-text-small{color:#a95954;cursor:pointer;background:0 0;border:0;padding:0;font-size:.75rem;font-weight:750;text-decoration:underline}.created-alert-banner{background:#f0f9f2;border:1px solid #c9ebd1;border-radius:1.25rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.25rem;margin-bottom:2rem;padding:1.25rem 1.5rem;display:flex}.alert-content{align-items:center;gap:1rem;display:flex}.alert-icon{font-size:1.8rem}.alert-content strong{color:#276137;font-size:1.05rem;display:block}.alert-content p{color:#3e784f;margin:.15rem 0 0;font-size:.875rem}.alert-actions{align-items:center;gap:.75rem;display:flex}.admin-btn-copy{color:#fff;cursor:pointer;background:#276137;border:0;border-radius:.65rem;padding:.6rem 1.15rem;font-size:.875rem;font-weight:800}.admin-btn-open{color:#276137;background:#fff;border:1px solid #b2dfbe;border-radius:.65rem;padding:.6rem 1.15rem;font-size:.875rem;font-weight:800;text-decoration:none}.alert-close-btn{color:#5b8f69;cursor:pointer;background:0 0;border:0;padding:.4rem;font-size:1.2rem}.section-title-row{margin-bottom:1.5rem}.section-title-row h2{letter-spacing:-.03em;color:#2d181b;margin:0 0 .25rem;font-size:1.5rem}.section-hint{color:#7b585c;font-size:.875rem}.weddings-grid{grid-template-columns:repeat(auto-fit,minmax(28rem,1fr));gap:2rem;display:grid}.wedding-admin-card{background:#fff;border:1px solid #f0deda;border-radius:1.5rem;flex-direction:column;gap:1.25rem;padding:1.75rem;display:flex;box-shadow:0 8px 24px #552a2e0a}@media (min-width:48rem){.wedding-details>summary{display:none}.wedding-details>.wedding-details-content{display:grid}}.wedding-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.wedding-card-kicker{text-transform:uppercase;letter-spacing:.12em;color:#a95954;font-size:.7rem;font-weight:800}.wedding-card-title{letter-spacing:-.035em;color:#2d181b;margin:.2rem 0 .35rem;font-size:1.45rem}.wedding-card-date{color:#785a5e;align-items:center;gap:.35rem;margin:0;font-size:.8125rem;display:inline-flex}.wedding-card-date svg{width:.95rem;height:.95rem}.status-badge-active{color:#3b8751;background:#e8f5ec;border-radius:999px;padding:.3rem .75rem;font-size:.75rem;font-weight:800}.status-badge-revoked{color:#b64b3d;background:#fff1ef}.status-badge-pending{color:#96700c;background:#fff6e0}.wedding-access-hint{color:#6b4a4e;background:#fcf6f4;border-radius:.75rem;margin:.6rem 0 0;padding:.65rem .8rem;font-size:.8125rem;line-height:1.45}.wedding-card-header-actions .btn-edit-wedding-details:disabled,.wedding-template-summary button:disabled{opacity:.55;cursor:not-allowed}.wedding-link-box{background:#fcf6f4;border:1px solid #eddcd8;border-radius:1rem;padding:1rem 1.15rem}.link-box-label{color:#8c575a;align-items:center;gap:.35rem;margin-bottom:.5rem;font-size:.75rem;font-weight:800;display:inline-flex}.link-box-label svg{width:.9rem;height:.9rem}.link-input-row{gap:.5rem;display:flex}.link-readonly-input{color:#4a2e31;background:#fff;border:1px solid #e5c9c5;border-radius:.65rem;flex:1;min-height:2.6rem;padding:0 .75rem;font-family:monospace;font-size:.8125rem}.btn-copy{color:#fff;cursor:pointer;background:#a95954;border:0;border-radius:.65rem;padding:0 1rem;font-size:.8125rem;font-weight:800}.btn-open-link{color:#874946;background:#fff;border:1px solid #debdb9;border-radius:.65rem;align-items:center;padding:0 1rem;font-size:.8125rem;font-weight:800;text-decoration:none;display:inline-flex}.wedding-stats-row{gap:1rem;display:flex}.stat-pill{color:#7b4b4e;background:#fbf0ee;border-radius:.75rem;padding:.5rem 1rem;font-size:.8125rem}.stat-pill strong{color:#a95954;font-size:1rem}.wedding-photos-feed{border-top:1px solid #f3e5e2;padding-top:1.15rem}.feed-heading{align-items:center;gap:.5rem;margin-bottom:.85rem;display:flex}.feed-heading h4{letter-spacing:-.02em;color:#2d181b;margin:0;font-size:.95rem}.feed-live-dot{background:#4b8a5c;border-radius:50%;width:.5rem;height:.5rem;animation:2s infinite pulse}@keyframes pulse{0%{opacity:.8;transform:scale(.95)}50%{opacity:1;transform:scale(1.2)}to{opacity:.8;transform:scale(.95)}}.empty-feed-text{color:#927578;margin:0;font-size:.8125rem;font-style:italic}.photo-thumbnails-grid{grid-template-columns:repeat(4,1fr);gap:.6rem;display:grid}.photo-thumb-card{aspect-ratio:1;cursor:pointer;background:#f2e2de;border-radius:.75rem;position:relative;overflow:hidden}.admin-photo-img{object-fit:cover;width:100%;height:100%;transition:transform .15s}.photo-thumb-card:hover .admin-photo-img{transform:scale(1.06)}.photo-thumb-overlay{background:linear-gradient(#0000 0%,#000000b3 100%);padding:.35rem;position:absolute;inset:auto 0 0}.photo-guest-badge{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:.65rem;font-weight:750;display:block;overflow:hidden}.wedding-ranking-preview{border-top:1px solid #f3e5e2;padding-top:1rem}.wedding-ranking-preview h4{color:#5e4145;margin:0 0 .65rem;font-size:.875rem}.btn-delete-wedding svg{width:.95rem;height:.95rem}.ranking-compact-list{gap:.4rem;margin:0;padding:0;list-style:none;display:grid}.ranking-item{background:#fdf5f4;border-radius:.5rem;align-items:center;gap:.75rem;padding:.35rem .6rem;font-size:.8125rem;display:flex}.rank-pos{color:#a95954;width:1.5rem;font-weight:800}.rank-name{color:#342224;flex:1;font-weight:600}.rank-score{color:#6e464a;font-weight:800}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#23141699;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.modal-window{background:#fff;border-radius:1.5rem;width:100%;max-width:34rem;overflow:hidden;box-shadow:0 24px 70px #0003}.modal-header{border-bottom:1px solid #f3e5e2;justify-content:space-between;align-items:center;padding:1.5rem 1.75rem;display:flex}.modal-header h2{color:#2d181b;margin:0;font-size:1.4rem}.modal-close-btn{color:#8c6e71;cursor:pointer;background:0 0;border:0;font-size:1.3rem}.modal-form{padding:1.75rem}.modal-subtitle{color:#785a5e;margin:0 0 1.25rem;font-size:.875rem;line-height:1.5}.form-error-banner{color:#7b2926;background:#fff1f0;border:1px solid #e9aaa5;border-left:.3rem solid #b53f3a;border-radius:.75rem;margin-bottom:1.25rem;padding:.9rem 1rem;font-size:.875rem;font-weight:700;line-height:1.45}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-group{margin-bottom:1.15rem}.form-group label{color:#4a3034;margin-bottom:.35rem;font-size:.8125rem;font-weight:750;display:block}.form-group input{background:#fff;border:1px solid #dfc7c4;border-radius:.75rem;outline:none;width:100%;min-height:3rem;padding:0 .85rem;font-size:.95rem}.form-group input:focus{border-color:#a95954;box-shadow:0 0 0 3px #a9595426}.template-picker-hint,.template-customization-note{color:#785a5e;margin:0 0 .7rem;font-size:.8rem;line-height:1.4}.template-picker-groups{gap:1.1rem;display:grid}.template-picker-group{min-width:0}.template-picker-group header{margin-bottom:.55rem}.template-picker-group h3{color:#533337;margin:0;font-size:.92rem}.template-picker-group p{color:#805f63;margin:.2rem 0 0;font-size:.72rem;line-height:1.35}.template-picker{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;padding:.15rem;display:grid}.template-picker-card{color:#432a2e;text-align:left;cursor:pointer;background:#fff;border:1px solid #e8d5d1;border-radius:.75rem;grid-template-columns:2.75rem 1fr auto;align-items:center;gap:.55rem;min-height:4.8rem;padding:.55rem;display:grid}.template-picker-card.selected{background:#fff8f6;border:2px solid #a95954}.template-picker-card.locked{opacity:.58;cursor:not-allowed}.template-picker-card strong,.template-picker-card small{display:block}.template-picker-card strong{font-size:.82rem}.template-picker-card small{color:#7b6265;margin-top:.2rem;font-size:.7rem;line-height:1.25}.template-picker-card b{color:#a95954;font-size:1.05rem}.template-picker-card em{font-size:.85rem;font-style:normal}.template-picker-swatch{text-shadow:0 1px 4px #0000004d;background:linear-gradient(155deg,#fffaf8 0 40%,#a95954 41% 63%,#bf756d 64%);border:1px solid #3c28281f;border-radius:.5rem;flex:none;place-items:center;width:2.75rem;height:3.5rem;font-size:1.3rem;line-height:1;display:grid}.wedding-template-summary{color:#73585b;background:#fffaf8;border:1px solid #efe0dc;border-radius:.75rem;justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem .85rem;font-size:.8rem;display:flex}.wedding-template-summary strong{color:#493034}.wedding-template-summary button{color:#804441;cursor:pointer;background:#f1dfdc;border:0;border-radius:.55rem;min-height:2.3rem;font-size:.75rem;font-weight:800}.template-modal-window{max-width:44rem}@media (max-width:36rem){.template-picker{grid-template-columns:1fr}.wedding-template-summary{flex-direction:column;align-items:flex-start}}.modal-actions{justify-content:flex-end;gap:.75rem;margin-top:1.75rem;display:flex}.btn-cancel{color:#6d4e52;cursor:pointer;background:#fff;border:1px solid #dfc7c4;border-radius:.75rem;padding:.75rem 1.25rem;font-weight:750}.photo-modal-card{background:#fff;border-radius:1.5rem;width:100%;max-width:42rem;overflow:hidden}.photo-modal-header{border-bottom:1px solid #f3e5e2;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.photo-modal-header h3{color:#2d181b;margin:0;font-size:1.15rem}.photo-modal-header p{color:#7b585c;margin:.2rem 0 0;font-size:.8125rem}.photo-modal-body{text-align:center;padding:1.25rem}.photo-modal-full-img{object-fit:contain;border-radius:.85rem;max-width:100%;max-height:70vh}.template-customization-card{background:linear-gradient(135deg,#fffaf7,#fbefeb);border:1px solid #ecd9d4;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:.9rem;padding:1rem 1.1rem;display:flex}.template-customization-card strong{color:#3e2528;font-size:.95rem;display:block}.template-customization-card p{color:#785a5e;margin:.2rem 0 0;font-size:.82rem;line-height:1.45}.template-whatsapp-button{color:#fff;background:#238b57;border-radius:.8rem;flex:none;justify-content:center;align-items:center;gap:.45rem;min-height:2.9rem;padding:.7rem 1.1rem;font-size:.9rem;font-weight:800;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex;box-shadow:0 8px 18px #238b573d}.template-whatsapp-button:hover{background:#167445;transform:translateY(-2px)}.template-whatsapp-button:focus-visible{outline-offset:2px;outline:3px solid #238b5759}@media (max-width:40rem){.template-customization-card{flex-direction:column;align-items:stretch}.template-whatsapp-button{width:100%}}.event-kind-picker{grid-template-columns:repeat(auto-fit,minmax(7.5rem,1fr));gap:.7rem;margin-bottom:1rem;display:grid}.event-kind-option{color:#3e2528;text-align:center;cursor:pointer;background:#fffdfb;border:1.5px solid #e8d3ce;border-radius:1rem;justify-items:center;gap:.15rem;padding:.85rem .6rem;transition:transform .2s,border-color .2s,box-shadow .2s,background .2s;display:grid}.event-kind-option>span{font-size:1.5rem;line-height:1}.event-kind-option strong{font-size:.92rem}.event-kind-option small{color:#785a5e;font-size:.74rem;line-height:1.3}.event-kind-option:hover{border-color:#c9908a;transform:translateY(-2px);box-shadow:0 10px 22px #4a212714}.event-kind-option.selected{background:#fbeeea;border-color:#a95954;box-shadow:0 0 0 .2rem #a9595424}.admin-album-button{color:#7a3f3a;cursor:pointer;background:#fff;border:1px solid #d9b8b3;border-radius:.6rem;justify-content:center;align-items:center;gap:.35rem;padding:.35rem .75rem;font-size:.75rem;font-weight:750;transition:all .15s;display:inline-flex}.admin-album-button:hover:not(:disabled){background:#fbeeea}.admin-album-button:disabled{opacity:.55;cursor:not-allowed}.album-options{gap:.7rem;margin-top:.9rem;display:grid}.album-option{color:#3e2528;text-align:left;cursor:pointer;background:#fffdfb;border:1.5px solid #e8d3ce;border-radius:1rem;grid-template-columns:auto 1fr;align-items:center;column-gap:.9rem;padding:1rem 1.1rem;transition:transform .2s,border-color .2s,box-shadow .2s;display:grid}.album-option>span{grid-row:span 2;font-size:1.8rem;line-height:1}.album-option strong{font-size:1rem}.album-option small{color:#785a5e;font-size:.8rem;line-height:1.4}.album-option:hover:not(:disabled){border-color:#a95954;transform:translateY(-2px);box-shadow:0 12px 26px #4a21271a}.album-option:disabled{opacity:.6;cursor:wait}.album-status{color:#785a5e;align-items:center;gap:.6rem;margin:1rem 0 0;font-size:.85rem;line-height:1.45;display:flex}.album-status-ok{color:#276a3d;background:#e9f5ec;border-radius:.8rem;padding:.75rem .9rem;font-weight:700}.album-spinner{border:2px solid #eadbd7;border-top-color:#c8766d;border-radius:50%;flex:none;width:1.1rem;height:1.1rem;animation:.8s linear infinite appLoadingSpin}
.wedding-themed{background:var(--wedding-background);color:var(--wedding-text);font-family:var(--wedding-body-font)}.wedding-themed h1,.wedding-themed .welcome-title{font-family:var(--wedding-heading-font)}.wedding-themed .event-kicker,.wedding-themed .game-event-name,.wedding-themed .section-kicker{color:var(--wedding-primary)}.wedding-themed h1,.wedding-themed .section-heading h2,.wedding-themed .mission-card h3,.wedding-themed .photos-header h1{color:var(--wedding-text)}.wedding-themed h1 span{color:var(--wedding-accent)}.wedding-themed .couple-ampersand{color:var(--wedding-accent);letter-spacing:0;vertical-align:-.04em;margin-inline:.08em;font-family:Georgia,Times New Roman,serif;font-size:1.08em;font-style:italic;font-weight:400;line-height:1;display:inline-block}.wedding-themed .welcome-description,.wedding-themed .photos-header>p:last-child,.wedding-themed .mission-card>p{color:var(--wedding-muted-text)}.wedding-themed .entry-form button,.wedding-themed .score-card,.wedding-themed .use-photo-button,.wedding-themed .close-photo-viewer,.wedding-themed .profile-save,.wedding-themed .empty-photos a{background:var(--wedding-primary);color:var(--wedding-primary-foreground)}.wedding-themed .mission-action button,.wedding-themed .photos-shortcut,.wedding-themed .back-link{color:var(--wedding-primary)}.wedding-themed .mission-action button{border-color:color-mix(in srgb, var(--wedding-primary) 25%, white);background:var(--wedding-surface)}.wedding-themed .mission-action>span strong{color:var(--wedding-primary)}.wedding-themed .mission-count,.wedding-themed .guest-avatar,.wedding-themed .profile-avatar-preview{color:var(--wedding-primary);background:color-mix(in srgb, var(--wedding-primary) 12%, white)}.wedding-themed .monogram{border-color:color-mix(in srgb, var(--wedding-accent) 42%, var(--wedding-surface));background:color-mix(in srgb, var(--wedding-surface) 82%, transparent);color:var(--wedding-primary)}.wedding-themed .entry-form label,.wedding-themed .guest-switcher h2,.wedding-themed .guest-switcher-list button{color:var(--wedding-text)}.wedding-themed .entry-form input:not([type=checkbox]):not([type=radio]),.wedding-themed .guest-switcher-list button{border-color:color-mix(in srgb, var(--wedding-primary) 25%, var(--wedding-surface));background:var(--wedding-surface)}.wedding-themed .entry-form input:not([type=checkbox]):not([type=radio]){color:var(--wedding-text)}.wedding-themed .entry-form input:not([type=checkbox]):not([type=radio])::placeholder,.wedding-themed .welcome-footer,.wedding-themed .guest-switcher>div>span,.wedding-themed .guest-switcher-list small{color:var(--wedding-muted-text)}.wedding-themed .guest-switcher-initial{background:color-mix(in srgb, var(--wedding-primary) 13%, var(--wedding-surface));color:var(--wedding-primary)}.wedding-themed .guest-switcher-list b,.wedding-themed .guest-switcher-new,.wedding-themed .entry-back-button{border-color:color-mix(in srgb, var(--wedding-primary) 38%, var(--wedding-surface));color:var(--wedding-primary)}.wedding-themed.wedding-style-classic .mission-card,.wedding-themed.wedding-style-classic .saved-photo-card,.wedding-themed.wedding-style-classic .empty-photos,.wedding-themed.wedding-style-classic .mission-card h3,.wedding-themed.wedding-style-classic .saved-photo-card h3,.wedding-themed.wedding-style-classic .empty-photos h2{color:#342d2c}.wedding-themed.wedding-style-classic .mission-card>p,.wedding-themed.wedding-style-classic .saved-photo-card p,.wedding-themed.wedding-style-classic .empty-photos p{color:#675c5a}.wedding-themed.wedding-style-classic .mission-action>span{color:#756966}.wedding-themed.wedding-style-classic .mission-action>span strong,.wedding-themed.wedding-style-classic .mission-action button,.wedding-themed.wedding-style-classic .photos-shortcut,.wedding-themed.wedding-style-classic .back-link{color:#765018}.welcome-screen{isolation:isolate;width:min(100%,32rem);min-height:100dvh;padding:max(2rem, env(safe-area-inset-top)) 1.5rem max(1.5rem, env(safe-area-inset-bottom));flex-direction:column;margin-inline:auto;display:flex;position:relative;overflow:hidden}.welcome-content{flex-direction:column;flex:1;justify-content:center;width:100%;max-width:25rem;margin-inline:auto;display:flex}.welcome-header{text-align:center}.welcome-cover{object-fit:cover;border-radius:1.25rem;width:100%;max-height:11rem;margin:0 auto 1.25rem;display:block}.welcome-logo{object-fit:contain;width:auto;max-width:8rem;height:auto;max-height:4.5rem;margin:0 auto 1rem;display:block}.monogram{color:#b26059;background:#ffffff8c;border:1px solid #e9c9c4;border-radius:50%;place-items:center;width:4.5rem;height:4.5rem;margin:0 auto 1.5rem;font-family:Georgia,serif;font-size:1.8rem;display:grid;box-shadow:0 8px 30px #81443c17}.event-kicker{color:#a05b56;letter-spacing:.16em;text-transform:uppercase;margin:0 0 .6rem;font-size:.75rem;font-weight:700}.entry-form{margin-top:2.25rem}.entry-form label{color:#5a4244;margin-bottom:.65rem;font-size:.875rem;font-weight:700;display:block}.entry-form input:not([type=checkbox]):not([type=radio]){color:#342224;background:#ffffffd1;border:1px solid #dfc7c4;border-radius:.9rem;outline:none;width:100%;min-height:3.5rem;padding:0 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s;display:block;box-shadow:0 2px 6px #59323008}.entry-form input:not([type=checkbox]):not([type=radio])::placeholder{color:#aa9696}.entry-form input:not([type=checkbox]):not([type=radio]):focus{border-color:#bd716a;box-shadow:0 0 0 4px #bd716a29}.entry-error{color:#a23d39;margin:.5rem 0 0;font-size:.8125rem;line-height:1.35}.entry-form button{color:#fff;cursor:pointer;background:#a95954;border:0;border-radius:.9rem;justify-content:center;align-items:center;width:100%;min-height:3.6rem;margin-top:.9rem;font-size:1rem;font-weight:750;transition:all .22s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 10px 20px #83413b33}.entry-form button span{margin-left:.55rem;font-size:1.25rem;transition:transform .2s}.entry-form button:hover{background:#964d48;transform:translateY(-2px);box-shadow:0 14px 28px #83413b47}.entry-form button:hover span{transform:translate(3px)}.entry-form button:active{background:#85423e;transform:translateY(0)scale(.985);box-shadow:0 4px 12px #83413b2e}.entry-form button:disabled{cursor:wait;opacity:.65;box-shadow:none;transform:none}.welcome-footer{z-index:1;color:#9b8484;text-align:center;margin:1rem 0 0;font-size:.8125rem;position:relative}.entry-form .guest-legal-checkbox{border:1px solid color-mix(in srgb, var(--wedding-primary) 19%, white);background:color-mix(in srgb, var(--wedding-surface) 92%, var(--wedding-primary));min-height:4.25rem;box-shadow:0 .25rem .9rem color-mix(in srgb, var(--wedding-primary) 6%, transparent);color:var(--wedding-muted-text);cursor:pointer;text-align:left;border-radius:.9rem;grid-template-columns:1.25rem minmax(0,1fr);align-items:start;gap:.75rem;margin:.7rem 0 0;padding:.8rem .85rem;font-size:.84rem;font-weight:600;line-height:1.45;transition:border-color .15s,background .15s,box-shadow .15s,transform .15s;display:grid}.entry-form .guest-legal-checkbox:hover{border-color:color-mix(in srgb, var(--wedding-primary) 38%, white)}.entry-form .guest-legal-checkbox:has(input:checked){border-color:color-mix(in srgb, var(--wedding-primary) 52%, white);background:color-mix(in srgb, var(--wedding-primary) 10%, var(--wedding-surface))}.entry-form .guest-legal-checkbox:focus-within{border-color:var(--wedding-primary);box-shadow:0 0 0 .22rem color-mix(in srgb, var(--wedding-primary) 18%, transparent)}.entry-form .guest-legal-checkbox input[type=checkbox]{appearance:none;border:1.5px solid color-mix(in srgb, var(--wedding-primary) 48%, white);background-color:var(--wedding-surface);width:1.25rem;min-width:1.25rem;height:1.25rem;min-height:0;box-shadow:none;cursor:pointer;background-position:50%;background-repeat:no-repeat;background-size:.72rem .72rem;border-radius:.38rem;outline:none;margin:.05rem 0 0;padding:0;display:block}.entry-form .guest-legal-checkbox input[type=checkbox]:checked{border-color:var(--wedding-primary);background-color:var(--wedding-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='m3 8 3 3 7-7' fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2.3'/%3E%3C/svg%3E")}.entry-form .guest-legal-checkbox a{color:var(--wedding-primary);text-underline-offset:.14em;font-weight:800;text-decoration-thickness:1.5px}.welcome-glow{z-index:-1;filter:blur(2px);opacity:.65;pointer-events:none;border-radius:50%;width:20rem;height:20rem;position:absolute}.welcome-glow-top{background:#f4dbd3;top:-10rem;right:-11rem}.welcome-glow-bottom{background:#f5e6ce;bottom:-12rem;left:-11rem}@media (min-width:48rem){.welcome-screen{border:1px solid #f0dfd9;border-radius:2rem;min-height:min(48rem,100dvh);margin-block:2rem;box-shadow:0 24px 80px #58302d1a}}.game-screen{width:min(100%,42rem);min-height:100dvh;padding:max(1.5rem, env(safe-area-inset-top)) 1.25rem max(2rem, env(safe-area-inset-bottom));background:#fffaf8;margin-inline:auto;position:relative}.camera-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.game-header{justify-content:space-between;align-items:center;gap:1rem;max-width:38rem;margin-inline:auto;display:flex}.game-event-name{color:#a05b56;letter-spacing:.04em;margin:0 0 .35rem;font-size:.8125rem;font-weight:750}.game-header h1{color:#3e2528;letter-spacing:-.055em;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(1.65rem,7vw,2.4rem);font-weight:800;line-height:1.1}.guest-avatar{color:#9e504c;cursor:pointer;background:#f7e6e2;border:1px solid #f1d7d2;border-radius:50%;flex:none;place-items:center;width:2.8rem;height:2.8rem;padding:0;font-size:1rem;font-weight:800;display:grid;overflow:hidden}.guest-avatar img{object-fit:cover;width:100%;height:100%}.profile-overlay{z-index:30;padding:1rem 1rem max(1rem, env(safe-area-inset-bottom));background:#2b1b1d9e;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.profile-sheet{width:min(100%,32rem);max-height:calc(100dvh - 2rem - env(safe-area-inset-bottom));background:#fffaf8;border-radius:1.4rem;padding:1.25rem;animation:.28s cubic-bezier(.16,1,.3,1) slideUpSheet;overflow:auto;box-shadow:0 20px 60px #1e10114d}.profile-sheet-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.profile-sheet-heading p{color:#a05b56;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .2rem;font-size:.6875rem;font-weight:800}.profile-sheet-heading h2{color:#3e2528;letter-spacing:-.045em;margin:0;font-size:1.4rem}.profile-sheet-heading>button{color:#704d4d;cursor:pointer;background:#f4e6e3;border:0;border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-size:1.5rem;display:grid}.profile-form{gap:.65rem;margin-top:1.25rem;display:grid}.profile-form>label{color:#5a4244;margin-top:.65rem;font-size:.875rem;font-weight:750}.profile-form>label span{color:#977f7e;font-size:.75rem;font-weight:600}.profile-form>input,.profile-form>textarea{color:#342224;background:#fff;border:1px solid #dfc7c4;border-radius:.8rem;outline:none;width:100%;padding:.85rem .95rem;line-height:1.35}.profile-form>input{min-height:3rem}.profile-form>textarea{resize:vertical}.profile-avatar-editor{background:#fff;border:1px solid #f0dfdb;border-radius:1rem;align-items:center;gap:.9rem;padding:.8rem;display:flex}.profile-avatar-preview{color:#9e504c;background:#f7e6e2;border-radius:50%;flex:none;place-items:center;width:4.25rem;height:4.25rem;font-size:1.35rem;font-weight:800;display:grid;overflow:hidden}.profile-avatar-preview img{object-fit:cover;width:100%;height:100%}.profile-photo-picker,.profile-remove-avatar{color:#98534e;cursor:pointer;background:#fff9f7;border:1px solid #e4c8c4;border-radius:.65rem;justify-content:center;align-items:center;min-height:2.45rem;padding:0 .7rem;font-size:.75rem;font-weight:800;display:inline-flex}.profile-photo-picker input{display:none}.profile-remove-avatar{color:#a23d39;background:0 0;border-color:#0000;margin-left:.35rem}.profile-save,.profile-cancel{cursor:pointer;border-radius:.8rem;width:100%;min-height:3.25rem;font-weight:800}.profile-save{color:#fff;background:#a95954;border:0;margin-top:.8rem}.profile-cancel{color:#99524d;background:#fff;border:1px solid #e5c9c5}.score-card{color:#fff;background:#a95954;border-radius:1.25rem;justify-content:space-between;align-items:flex-end;gap:1rem;max-width:38rem;margin:1.7rem auto 0;padding:1.3rem;display:flex;box-shadow:0 13px 28px #83413b33}.score-card p{color:#ffffffc2;margin:0 0 .3rem;font-size:.8125rem;font-weight:700}.score-card strong{letter-spacing:-.06em;font-size:2rem;line-height:1;display:block}.score-card strong span{letter-spacing:-.02em;font-size:.875rem;font-weight:700}.photos-shortcut{color:#98534e;justify-content:center;align-items:center;gap:.45rem;width:fit-content;min-height:2.75rem;margin:.85rem 0 0 auto;font-size:.8125rem;font-weight:800;text-decoration:none;display:flex}.photos-shortcut-count{background:#f1d8d3;border-radius:999px;place-items:center;min-width:1.35rem;height:1.35rem;padding-inline:.3rem;font-size:.6875rem;display:grid}.game-notice{color:#8b5b2b;background:#fff1dc;border-radius:.75rem;max-width:38rem;margin:.35rem auto 0;padding:.75rem .9rem;font-size:.8125rem;line-height:1.4}.score-progress{border-left:1px solid #ffffff47;min-width:6.4rem;padding-left:1rem}.score-progress span{display:block}.score-progress span:first-child{letter-spacing:-.04em;font-size:1.05rem;font-weight:800}.score-progress span:last-child{color:#ffffffc2;margin-top:.12rem;font-size:.7rem;line-height:1.2}.missions-section{max-width:38rem;margin:2.1rem auto 0}.section-heading{justify-content:space-between;align-items:flex-end;gap:1rem;display:flex}.section-kicker{color:#a05b56;letter-spacing:.13em;text-transform:uppercase;margin:0 0 .35rem;font-size:.6875rem;font-weight:800}.section-heading h2{color:#3e2528;letter-spacing:-.04em;margin:0;font-size:1.3rem}.mission-count{color:#a15b56;background:#f5e8e5;border-radius:50%;place-items:center;width:1.9rem;height:1.9rem;font-size:.8125rem;font-weight:800;display:grid}.mission-list{gap:.85rem;margin-top:1.15rem;display:grid}.mission-card{background:#fff;border:1px solid #f0dfdb;border-radius:1.15rem;padding:1.1rem;box-shadow:0 3px 10px #53302d08}.mission-card-completed{background:#fcfffc;border-color:#d5e5d8}.mission-card-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.mission-icon{color:#af625b;background:#f8ebe7;border-radius:.65rem;place-items:center;width:2rem;height:2rem;display:grid}.mission-icon svg{width:1.15rem;height:1.15rem}.mission-card-completed .mission-icon{color:#4b8a5c;background:#e6f1e7}.mission-status{text-align:right;color:#4b8a5c;font-size:.75rem;font-weight:800}.mission-status-pending{color:#9b7975}.mission-card h3{color:#3d292b;letter-spacing:-.035em;margin:1rem 0 0;font-size:1.1rem}.mission-card>p{color:#796568;margin:.38rem 0 0;font-size:.875rem;line-height:1.45}.mission-action{gap:.7rem;margin-top:1.15rem;display:grid}.mission-action>span{color:#9a7772;white-space:nowrap;flex:auto;font-size:.75rem}.mission-action>span strong{color:#a85853;font-size:.875rem}.mission-action button{color:#9e504c;cursor:pointer;background:#fff9f7;border:1px solid #e7c9c5;border-radius:.72rem;width:100%;min-height:3rem;padding:0 .85rem;font-size:.8125rem;font-weight:800}.photo-preview-overlay{z-index:10;padding:1rem 1rem max(1rem, env(safe-area-inset-bottom));background:#2b1b1d9e;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.photo-preview-sheet{width:min(100%,32rem);max-height:calc(100dvh - 2rem - env(safe-area-inset-bottom));background:#fffaf8;border-radius:1.4rem;padding:1.25rem;animation:.28s cubic-bezier(.16,1,.3,1) slideUpSheet;position:relative;overflow:auto;box-shadow:0 20px 60px #1e10114d}.photo-preview-close{color:#704044;cursor:pointer;background:#f1dfdc;border:0;border-radius:50%;place-items:center;width:2.35rem;height:2.35rem;font-size:1.55rem;line-height:1;display:grid;position:absolute;top:.7rem;right:.7rem}.photo-preview-close:hover{background:#e8cbc7}.photo-preview-close:disabled{opacity:.5;cursor:not-allowed}.preview-kicker{color:#a05b56;letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.7rem;font-weight:800}.photo-preview-sheet h2{color:#3e2528;letter-spacing:-.045em;margin:.3rem 0 1rem;font-size:1.45rem}.photo-preview-image{object-fit:contain;background:#f1e5e1;border-radius:.9rem;width:100%;max-height:min(48dvh,30rem);display:block}.photo-preview-actions{gap:.7rem;margin-top:1rem;display:grid}.photo-legal-checkbox{background:#f8eeeb;border-radius:.8rem;margin-top:1rem;padding:.85rem}.photo-preview-actions button{cursor:pointer;border-radius:.85rem;width:100%;min-height:3.45rem;font-size:1rem;font-weight:800}.use-photo-button{color:#fff;background:#a95954;border:0;box-shadow:0 9px 18px #83413b2e}.retake-photo-button{color:#99524d;background:#fff;border:1px solid #e5c9c5}.my-photos-screen{width:min(100%,42rem);min-height:100dvh;padding:max(1.5rem, env(safe-area-inset-top)) 1.25rem max(2rem, env(safe-area-inset-bottom));background:#fffaf8;margin-inline:auto}.photos-header{max-width:38rem;margin-inline:auto}.back-link{color:#98534e;align-items:center;min-height:2.75rem;margin:-.5rem 0 1.2rem -.3rem;font-size:.8125rem;font-weight:800;text-decoration:none;display:inline-flex}.photos-header h1{color:#3e2528;letter-spacing:-.065em;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:clamp(2rem,9vw,2.75rem);font-weight:800;line-height:1}.empty-photos{text-align:center;background:#fff;border:1px solid #f0dfdb;border-radius:1.2rem;max-width:38rem;margin:2.25rem auto 0;padding:2rem 1.4rem}.empty-photos-icon{color:#af625b;background:#f8ebe7;border-radius:1rem;place-items:center;width:3rem;height:3rem;margin:0 auto 1rem;display:grid}.empty-photos-icon svg{width:1.35rem;height:1.35rem}.empty-photos>a{width:min(100%,19rem);min-height:3.25rem;box-shadow:0 10px 20px color-mix(in srgb, var(--wedding-primary) 24%, transparent);border-radius:.9rem;justify-content:center;align-items:center;gap:.6rem;margin-top:1.2rem;font-weight:800;text-decoration:none;transition:transform .18s,box-shadow .18s;display:inline-flex}.empty-photos>a:after{content:"→";font-size:1.25rem;transition:transform .18s}.empty-photos>a:hover{box-shadow:0 15px 24px color-mix(in srgb, var(--wedding-primary) 33%, transparent);transform:translateY(-2px)}.empty-photos>a:hover:after{transform:translate(.2rem)}.saved-photo-list{gap:.9rem;max-width:38rem;margin:2rem auto 0;display:grid}.photo-groups{gap:2rem;max-width:38rem;margin:2rem auto 0;display:grid}.saved-photo-card{background:#fff;border:1px solid #f0dfdb;border-radius:1rem;grid-template-columns:6.75rem minmax(0,1fr);display:grid;overflow:hidden;box-shadow:0 3px 10px #53302d08}.saved-photo-card img{object-fit:cover;background:#f1e5e1;width:6.75rem;height:100%;min-height:9rem}.saved-photo-content{flex-direction:column;justify-content:center;min-width:0;padding:.9rem 1rem;display:flex}.saved-photo-actions{flex-wrap:wrap;gap:.45rem;margin-top:.75rem;display:flex}.saved-photo-actions button{color:#98534e;cursor:pointer;background:#fff9f7;border:1px solid #e4c8c4;border-radius:.65rem;min-height:2.35rem;padding:0 .7rem;font-size:.75rem;font-weight:800}.saved-photo-actions .delete-photo-button{color:#a23d39;background:0 0;border-color:#0000}.photo-status{align-items:center;gap:.3rem;width:fit-content;margin-top:.55rem;font-size:.75rem;font-weight:800;display:inline-flex}.photo-status-pending{color:#a56c42}.photo-status-sent{color:#4b8a5c}.photo-status-failed{color:#a23d39}.photo-viewer-overlay{z-index:20;padding:max(1rem, env(safe-area-inset-top)) 1rem max(1rem, env(safe-area-inset-bottom));background:#201516d1;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.photo-viewer{background:#fffaf8;border-radius:1.25rem;width:min(100%,38rem);max-height:calc(100dvh - 2rem);padding:1rem;overflow:auto}.close-photo-viewer{color:#fff;cursor:pointer;background:#a95954;border:0;border-radius:.75rem;width:100%;min-height:3rem;margin-top:.85rem;font-weight:800}@media (min-width:48rem){.game-screen,.my-photos-screen{border:1px solid #f0dfd9;border-radius:2rem;min-height:min(54rem,100dvh - 4rem);margin-block:2rem;padding:2rem;box-shadow:0 24px 80px #58302d1a}}@keyframes slideUpSheet{0%{opacity:0;transform:translateY(1.5rem)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.profile-sheet,.photo-preview-sheet{animation:none!important}}.photo-terms-accepted{color:var(--wedding-muted-text,#765b4e);margin:.7rem 0 0;font-size:.78rem;line-height:1.45}
.notice-info-banner{color:#1d4b8c;background:#eef4fd;border:1px solid #bdd5f5;border-radius:.85rem;margin-bottom:1.5rem;padding:.9rem 1.15rem;font-size:.875rem;line-height:1.5}.notice-success-banner{color:#1d6b3a;background:#eef9f1;border:1px solid #b5dfc1;border-radius:.85rem;margin-bottom:1.5rem;padding:.9rem 1.15rem;font-size:.875rem;line-height:1.5}.plans-notice{margin-inline:auto;max-width:72rem;margin-top:0}.btn-plan-unavailable{color:#888;cursor:not-allowed;text-align:center;background:#f3f3f3;border:1px dashed #ccc;border-radius:.75rem;justify-content:center;align-items:center;padding:.85rem 1.5rem;font-size:.875rem;font-weight:700;display:flex}.wedding-card-header-actions{flex-direction:column;align-items:flex-end;gap:.5rem;display:flex}.btn-toggle-public-access{color:#72509a;cursor:pointer;background:#fbf7ff;border:1px solid #d9c4ee;border-radius:.6rem;padding:.35rem .75rem;font-size:.75rem;font-weight:750;transition:all .15s}.btn-toggle-public-access:hover:not(:disabled){background:#f2eaff;border-color:#c9afe8}.btn-toggle-public-access:disabled{opacity:.55;cursor:wait}.admin-book-button{color:#8b4d46;cursor:pointer;background:#fffaf8;border:1px solid #d8b2a8;border-radius:.6rem;padding:.35rem .75rem;font-size:.75rem;font-weight:750;transition:all .15s}.admin-book-button:hover{background:#fff1ed;border-color:#a95954}.btn-delete-wedding{color:#c0392b;cursor:pointer;background:#fff7f6;border:1px solid #f0c4c0;border-radius:.6rem;padding:.35rem .75rem;font-size:.75rem;font-weight:750;transition:all .15s}.btn-delete-wedding:hover:not(:disabled){background:#fdedec;border-color:#e8b2ad}.btn-delete-wedding:disabled{opacity:.55;cursor:wait}.admin-gallery-backdrop{z-index:1000;background:#231316b8;justify-content:center;align-items:flex-start;padding:clamp(1rem,4vw,3rem);display:flex;position:fixed;inset:0;overflow-y:auto}.admin-gallery-modal{background:#fffdfb;border:1px solid #ead8d3;border-radius:1.5rem;width:min(100%,1120px);min-height:min(760px,100vh - 2rem);margin:auto 0;padding:clamp(1rem,3vw,2rem);box-shadow:0 24px 70px #23131647}.admin-gallery-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.25rem;display:flex}.admin-gallery-kicker{color:#a95954;letter-spacing:.12em;text-transform:uppercase;font-size:.72rem;font-weight:900}.admin-gallery-header h2{color:#2d181b;margin:.35rem 0 .3rem;font-size:clamp(1.4rem,3vw,2rem)}.admin-gallery-header p{color:#785a5e;margin:0;font-size:.9rem}.admin-gallery-close,.admin-gallery-lightbox-close{color:#633b3e;cursor:pointer;background:#fff;border:1px solid #e4d2ce;border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-size:1.65rem;line-height:1;display:grid}.admin-gallery-filters{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-bottom:1.25rem;display:grid}.admin-gallery-filters label{color:#5e3d40;gap:.35rem;font-size:.78rem;font-weight:800;display:grid}.admin-gallery-filters select{color:#3c2528;min-height:2.75rem;font:inherit;background:#fff;border:1px solid #dec9c4;border-radius:.7rem;padding:0 .75rem;font-weight:600}.admin-gallery-summary{color:#866a6d;margin-bottom:.75rem;font-size:.8rem;font-weight:750}.admin-gallery-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:.85rem;display:grid}.admin-gallery-photo{aspect-ratio:1;cursor:pointer;text-align:left;background:#f1e7e3;border:1px solid #ead8d3;border-radius:.9rem;padding:0;position:relative;overflow:hidden}.admin-gallery-photo img{object-fit:cover;width:100%;height:100%;transition:transform .18s;display:block}.admin-gallery-photo:hover img{transform:scale(1.04)}.admin-gallery-photo-caption{color:#fff;background:linear-gradient(#0000,#1b0e10c7);gap:.15rem;padding:2.5rem .7rem .65rem;display:grid;position:absolute;bottom:0;left:0;right:0}.admin-gallery-photo-caption strong,.admin-gallery-photo-caption small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.admin-gallery-photo-caption strong{font-size:.82rem}.admin-gallery-photo-caption small{opacity:.88;font-size:.72rem}.admin-gallery-pagination{color:#6f5054;justify-content:center;align-items:center;gap:1rem;margin-top:1.35rem;font-size:.82rem;font-weight:750;display:flex}.admin-gallery-pagination button{color:#633b3e;min-height:2.5rem;font:inherit;cursor:pointer;background:#fff;border:1px solid #dec9c4;border-radius:.65rem;padding:0 .85rem}.admin-gallery-pagination button:disabled{cursor:not-allowed;opacity:.45}.admin-gallery-state{color:#785a5e;text-align:center;place-items:center;min-height:18rem;font-weight:700;display:grid}.admin-gallery-error{color:#b64b3d}.admin-gallery-lightbox{z-index:1010;background:#0c0708e6;place-items:center;padding:3rem 1rem 1.5rem;display:grid;position:fixed;inset:0}.admin-gallery-lightbox>img{object-fit:contain;border-radius:.75rem;max-width:min(94vw,1100px);max-height:calc(100vh - 7rem);box-shadow:0 16px 50px #00000059}.admin-gallery-lightbox-close{color:#fff;background:#ffffff1f;border-color:#ffffff4d;position:absolute;top:1rem;right:1rem}.admin-gallery-lightbox-caption{color:#fff;gap:.5rem;font-size:.85rem;display:flex}.admin-gallery-lightbox-caption span{opacity:.78}@media (max-width:560px){.admin-gallery-backdrop{padding:0}.admin-gallery-modal{border-radius:0;min-height:100vh}.admin-gallery-filters{grid-template-columns:1fr}.admin-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}.admin-gallery-pagination{gap:.55rem}.admin-gallery-pagination span{font-size:.75rem}}.admin-settings-link{color:#634346;background:#fff;border:1px solid #ded0cc;border-radius:.6rem;align-items:center;padding:.45rem .85rem;font-size:.8125rem;font-weight:750;text-decoration:none;transition:all .15s;display:inline-flex}.admin-settings-link:hover{background:#fbf4f2;border-color:#cbb8b5}.metric-account-email{color:#7b585c;word-break:break-all;margin-top:.2rem;font-size:.8rem;font-weight:700}.field-error{color:#a23d39;margin:.3rem 0 0;font-size:.78rem;line-height:1.35}.settings-page{background:#fbf8f6;min-height:100dvh;padding:3rem 1.5rem 5rem}.settings-container{max-width:44rem;margin-inline:auto}.settings-header{margin-bottom:2rem}.settings-header h1{letter-spacing:-.04em;color:#2d181b;margin:0 0 .35rem;font-size:2rem}.settings-header p{color:#7b585c;margin:0;font-size:1rem}.settings-tabs{border-bottom:1px solid #eedcd8;gap:.5rem;margin-bottom:2rem;display:flex}.settings-tab{color:#7b585c;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;margin-bottom:-1px;padding:.65rem 1.25rem;font-size:.9rem;font-weight:750;transition:all .15s}.settings-tab:hover{color:#a95954}.settings-tab.active{color:#a95954;border-bottom-color:#a95954}.settings-form{background:#fff;border:1px solid #f0deda;border-radius:1.25rem;gap:0;padding:1.75rem;display:grid;box-shadow:0 6px 20px #552a2e0a}.settings-success-banner{color:#1d6b3a;background:#eef9f1;border:1px solid #b5dfc1;border-radius:.85rem;margin-bottom:1.5rem;padding:.9rem 1.15rem;font-size:.875rem}.settings-form-actions{justify-content:flex-end;margin-top:1.5rem;display:flex}.label-hint{color:#927578;margin-left:.35rem;font-size:.75rem;font-weight:600}.settings-subscription-info{background:#fff;border:1px solid #f0deda;border-radius:1.25rem;padding:1.75rem;box-shadow:0 6px 20px #552a2e0a}.account-commercial-status{border-bottom:1px solid #eedcd8;margin-bottom:1.4rem;padding-bottom:1.4rem}.account-commercial-status>span{color:#927578;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:800}.account-commercial-status>strong{color:#2d181b;margin-top:.35rem;font-size:1.25rem;display:block}.account-commercial-status>p{color:#6d4e52;margin:.45rem 0 0;font-size:.85rem;line-height:1.5}.subscription-plan-card>div{flex:auto;min-width:0}.subscription-plan-card{align-items:flex-start;gap:1.25rem;display:flex}.plan-icon{flex:none;font-size:2.5rem}.subscription-plan-card strong{color:#2d181b;margin-bottom:.4rem;font-size:1.1rem;display:block}.subscription-plan-card p{color:#6d4e52;margin:0 0 .4rem;font-size:.9rem;line-height:1.5}.plan-hint{color:#927578!important;font-size:.8125rem!important}.subscription-details{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;margin:1rem 0 0;display:grid}.subscription-details div{background:#fff7f5;border-radius:.75rem;padding:.7rem}.subscription-details dt{color:#927578;text-transform:uppercase;font-size:.7rem;font-weight:800}.subscription-details dd{color:#402529;margin:.2rem 0 0;font-size:.85rem;font-weight:750}.settings-back{text-align:center;flex-wrap:wrap;justify-content:center;align-items:center;gap:1rem;margin-top:2.5rem;display:flex}.settings-plan-action{color:#fff;background:#a95954;border-radius:.75rem;justify-content:center;align-items:center;min-height:3rem;margin-top:1.35rem;padding:.7rem 1rem;font-size:.85rem;font-weight:800;text-decoration:none;display:inline-flex}.settings-plan-action:hover{background:#914641}.empty-weddings-box{text-align:center;background:#fff;border:1px dashed #e0cbc8;border-radius:1.5rem;padding:3rem 2rem}.empty-icon{margin-bottom:1rem;font-size:3rem;display:block}.empty-icon svg{color:#a95954;width:3rem;height:3rem}.empty-weddings-box h3{color:#2d181b;letter-spacing:-.03em;margin:0 0 .5rem;font-size:1.4rem}.empty-weddings-box p{color:#7b585c;margin:0 0 1.5rem;font-size:.95rem}:root{--page-gutter:clamp(1rem, 4vw, 2rem);--content-width:86rem}html{-webkit-text-size-adjust:100%;overflow-x:clip}body{overflow-x:clip}img,svg,video,canvas,button,a,input,textarea,select{max-width:100%}.commercial-navbar{padding:.8rem var(--page-gutter)}.navbar-container{flex-wrap:wrap;gap:.65rem 1rem;min-width:0}.brand-logo,.navbar-cta,.admin-brand,.admin-nav-actions,.admin-user-menu{min-width:0}.brand-text{white-space:nowrap}.hero-section,.how-it-works-section,.features-section,.cta-banner-section,.commercial-footer{padding-inline:var(--page-gutter)}.hero-title{font-size:clamp(2.25rem,9vw,3.8rem)}.hero-subtitle{font-size:clamp(1rem,3.8vw,1.25rem)}.section-header-center h2,.cta-container h2{font-size:clamp(1.75rem,7vw,2.2rem)}.steps-grid,.features-grid,.pricing-grid,.weddings-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr))}.pricing-grid{gap:1rem}.pricing-card-featured{transform:none}.plans-page-container{padding:2.5rem var(--page-gutter) 4rem}.plans-header h1{font-size:clamp(2rem,9vw,2.5rem)}.credit-packages-card{padding:clamp(1.25rem,5vw,2.5rem)}.footer-container,.footer-links,.cta-buttons{align-items:stretch}.admin-login-layout{padding:max(1rem, env(safe-area-inset-top)) var(--page-gutter) max(1rem, env(safe-area-inset-bottom));align-items:flex-start}.login-card{border-radius:clamp(1.25rem,5vw,1.75rem);padding:clamp(1.5rem,6vw,2.75rem) clamp(1.15rem,6vw,2.5rem)}.login-card-header{margin-bottom:1.5rem}.login-card-header h1{font-size:clamp(1.55rem,7vw,1.75rem)}.admin-navbar{padding-inline:var(--page-gutter)}.admin-nav-container,.admin-main-container{max-width:var(--content-width)}.admin-main-container{padding:1.5rem var(--page-gutter) 3rem}.admin-hero-text,.admin-hero-text h1,.alert-content,.wedding-card-header,.section-title-row{min-width:0}.admin-hero-text h1{font-size:clamp(1.55rem,5vw,2rem)}.admin-hero-text p{line-height:1.5}.admin-hero-controls,.alert-actions,.link-input-row,.wedding-stats-row,.modal-actions{flex-wrap:wrap}.admin-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,14rem),1fr))}.weddings-grid{gap:1rem}.wedding-admin-card{min-width:0;padding:clamp(1rem,4vw,1.75rem)}.wedding-card-title,.rank-name,.metric-account-email{overflow-wrap:anywhere}.link-readonly-input{min-width:0}.modal-backdrop{padding:max(1rem, env(safe-area-inset-top)) var(--page-gutter) max(1rem, env(safe-area-inset-bottom))}.modal-window,.photo-modal-card{max-height:calc(100dvh - 2rem);overflow:auto}.modal-form,.modal-header{padding-inline:clamp(1rem,5vw,1.75rem)}.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-screen,.game-screen,.my-photos-screen{width:100%;max-width:42rem}.welcome-screen{min-height:100svh;padding-inline:var(--page-gutter)}.welcome-content{max-width:min(100%,25rem)}.welcome-header h1{color:var(--wedding-text,#3e2528);letter-spacing:-.06em;overflow-wrap:anywhere;margin:0;font-size:clamp(2rem,10vw,3rem);line-height:1.04}.welcome-header h1 span{color:var(--wedding-accent,#b26059);font-style:italic}.welcome-copy{text-align:center;margin-top:1.35rem}.welcome-title{color:var(--wedding-text,#3e2528);letter-spacing:-.04em;margin:0;font-size:clamp(1.2rem,5vw,1.5rem);font-weight:800;line-height:1.2}.welcome-description{color:var(--wedding-muted-text,#796568);margin:.55rem auto 0;font-size:.95rem;line-height:1.5}.game-screen{min-height:100svh;padding-inline:var(--page-gutter)}.game-header h1{overflow-wrap:anywhere;min-width:0;margin:0}.game-header>div:first-child{min-width:0}.score-card{align-items:center;margin-top:1.4rem}.score-progress{flex:0 auto}.mission-status{overflow-wrap:anywhere;max-width:65%}.mission-action>span{white-space:normal}.photo-groups{max-width:42rem}.mission-photo-group{min-width:0}.photo-group-heading,.photo-viewer-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.photo-group-heading h2,.photo-viewer-heading h2{color:#3e2528;letter-spacing:-.035em;overflow-wrap:anywhere;min-width:0;margin:0;font-size:1.05rem}.photo-group-heading>span{color:#9b7975;flex:none;font-size:.75rem;font-weight:800}.photo-viewer-heading{align-items:center}.photo-viewer-heading p{color:#a05b56;letter-spacing:.1em;text-transform:uppercase;margin:0 0 .2rem;font-size:.7rem;font-weight:800}.photo-viewer-heading>button{color:#704d4d;cursor:pointer;background:#f4e6e3;border:0;border-radius:50%;flex:none;place-items:center;width:2.75rem;height:2.75rem;font-size:1.5rem;display:grid}.photo-viewer>img{object-fit:contain;border-radius:.9rem;width:100%;max-height:calc(100dvh - 13rem);margin-top:1rem;display:block}.photos-feedback{color:#796568;max-width:38rem;margin:1.25rem auto 0;font-size:.875rem;line-height:1.5}.photos-error{color:#a23d39}.saved-photo-mission,.photo-last-error{overflow-wrap:anywhere;margin:0}.saved-photo-mission{color:#3e2528;font-size:.875rem;font-weight:800}.photo-last-error{color:#a23d39;margin-top:.35rem;font-size:.75rem;line-height:1.35}@media (max-width:47.99rem){.navbar-container{align-items:center}.brand-text{font-size:1.05rem}.brand-icon{font-size:1.35rem}.navbar-links{scrollbar-width:none;order:3;justify-content:flex-start;gap:0;width:100%;margin-inline:-.25rem;overflow-x:auto}.navbar-links::-webkit-scrollbar{display:none}.navbar-links a{white-space:nowrap;flex:none;padding:.45rem .7rem;font-size:.8rem}.btn-login-nav{text-overflow:ellipsis;white-space:nowrap;max-width:10.5rem;padding:.55rem .75rem;font-size:.72rem;overflow:hidden}.hero-section{padding-top:3rem;padding-bottom:3.5rem}.hero-badge{text-align:center;max-width:100%}.hero-actions,.cta-buttons{grid-template-columns:1fr;width:100%;display:grid}.btn-hero-primary,.btn-hero-secondary,.btn-cta-white,.btn-cta-outline{width:100%}.hero-highlight-chips{text-align:left;justify-items:start;gap:.7rem;max-width:20rem;margin-inline:auto;line-height:1.35;display:grid}.how-it-works-section,.features-section{padding-top:3.25rem;padding-bottom:3.25rem}.steps-grid,.features-grid,.pricing-grid{grid-template-columns:1fr}.step-card,.feature-card,.pricing-card{padding:1.35rem}.footer-container{flex-direction:column;align-items:flex-start;gap:1.25rem}.footer-links{flex-wrap:wrap;gap:.75rem 1rem}.admin-nav-container{align-items:flex-start}.admin-brand-sub,.admin-org-pill,.user-greeting{display:none}.admin-nav-actions,.admin-user-menu{gap:.45rem}.admin-settings-link{padding-inline:.6rem;font-size:.75rem}.logout-button{padding-inline:.65rem}.admin-hero-banner{flex-direction:column;align-items:stretch;gap:1rem}.admin-hero-controls{grid-template-columns:minmax(0,1fr) auto;display:grid}.admin-btn-primary,.admin-btn-secondary{text-align:center;min-height:3rem;padding-inline:.9rem}.created-alert-banner{flex-direction:column;align-items:stretch}.alert-content{align-items:flex-start}.alert-actions{grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;display:grid}.alert-actions button,.alert-actions a{min-height:2.75rem}.wedding-card-header{align-items:flex-start}.wedding-card-header-actions{flex:none}.link-input-row{grid-template-columns:minmax(0,1fr) auto;display:grid}.link-readonly-input{grid-column:1/-1;width:100%}.btn-copy,.btn-open-link{min-height:2.75rem}.wedding-stats-row{gap:.5rem}.stat-pill{flex:8rem;padding-inline:.7rem}.photo-thumbnails-grid{grid-template-columns:repeat(3,1fr)}.form-row{grid-template-columns:1fr;gap:0}.modal-actions,.settings-form-actions{grid-template-columns:1fr;display:grid}.modal-actions>*,.settings-form-actions>*{width:100%}.settings-page{padding:2rem var(--page-gutter) 3rem}.settings-header h1{font-size:clamp(1.55rem,7vw,2rem)}.settings-tabs{margin-inline:calc(var(--page-gutter) * -1);padding-inline:var(--page-gutter);overflow-x:auto}.settings-tab{white-space:nowrap;flex:none;padding-inline:.8rem}.settings-form,.settings-subscription-info{padding:1.15rem}.subscription-details{grid-template-columns:1fr}.subscription-plan-card{gap:.8rem}.saved-photo-card{grid-template-columns:5.5rem minmax(0,1fr)}.saved-photo-card img{width:5.5rem;min-height:8rem}.saved-photo-content{padding:.8rem}}@media (min-width:48rem){.navbar-container,.hero-container,.section-container,.cta-container,.footer-container,.footer-bottom,.plans-page-container,.plans-notice{width:min(100%, var(--content-width))}.admin-main-container{padding-top:2.5rem}.welcome-screen,.game-screen,.my-photos-screen{width:min(100%,42rem)}}@media (min-width:72rem){.hero-section{padding-top:6rem;padding-bottom:5rem}}@media (max-width:22rem){.navbar-container{gap:.5rem}.navbar-cta{order:2;width:100%}.btn-login-nav{justify-content:center;width:100%;max-width:none}.navbar-links{order:4}}@media (min-width:48rem) and (max-width:64rem){.navbar-container{align-items:center}.navbar-cta{order:2}.navbar-links{border-top:1px solid #f3e2de;order:3;justify-content:center;width:100%;padding-top:.35rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.account-deletion-notice{color:#6a4210;background:#fff8ec;border:1px solid #ecc98f;border-left:.3rem solid #c9822b;border-radius:.85rem;gap:.45rem;margin-bottom:1.25rem;padding:1rem 1.15rem;font-size:.9rem;line-height:1.5;display:grid}.account-deletion-notice strong{color:#4d2e08}.account-deletion-notice p{margin:0}.account-recovery-contact{flex-wrap:wrap;gap:.6rem;margin-top:.4rem;display:flex}.account-recovery-contact a{min-height:2.75rem;color:inherit;border:1px solid;border-radius:999px;align-items:center;padding:0 1rem;font-weight:750;text-decoration:none;display:inline-flex}
.plan-stepper{color:#aa9291;justify-content:center;align-items:center;gap:.6rem;margin:0 auto 2rem;font-size:.75rem;font-weight:800;display:flex}.plan-step{white-space:nowrap;align-items:center;gap:.4rem;display:inline-flex}.plan-step:not(:last-child):after{content:"";background:#eadbd8;width:1.25rem;height:1px;margin-left:.2rem;display:block}.plan-step b{color:#a99190;background:#fff;border:1px solid #e8d7d3;border-radius:50%;place-items:center;width:1.6rem;height:1.6rem;font-size:.7rem;display:grid}.plan-step.current,.plan-step.completed{color:#a95954}.plan-step.current b,.plan-step.completed b{color:#a95954;background:#f8e8e5;border-color:#d9aaa5}.plan-builder{background:#fff;border:1px solid #eedcd8;border-radius:1.75rem;max-width:62rem;margin:0 auto;padding:clamp(1.25rem,4vw,2.25rem);box-shadow:0 16px 45px #552a2e12}.plan-builder-intro{text-align:center;max-width:38rem;margin:0 auto 2rem}.plan-builder-intro h2{color:#2d181b;letter-spacing:-.045em;margin:.45rem 0 .65rem;font-size:clamp(1.65rem,4vw,2.15rem);line-height:1.08}.plan-builder-intro p{color:#6d4e52;margin:0;font-size:.95rem;line-height:1.5}.plan-builder-section{border-top:1px solid #f1e3e0;padding-top:1.5rem}.credits-builder-section{margin-top:1.6rem}.builder-section-heading{align-items:flex-start;gap:.75rem;margin-bottom:1rem;display:flex}.builder-number{color:#a95954;background:#f8e8e5;border-radius:.65rem;flex:none;place-items:center;width:1.85rem;height:1.85rem;font-size:.85rem;font-weight:900;display:grid}.builder-section-heading h3{color:#3c2528;letter-spacing:-.025em;margin:0;font-size:1.05rem}.builder-section-heading p{color:#927578;margin:.25rem 0 0;font-size:.8rem;line-height:1.4}.duration-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.duration-option,.credit-plan-option{appearance:none;color:inherit;cursor:pointer;text-align:left;background:#fffaf8;border:1px solid #eadbd8;transition:border-color .15s,box-shadow .15s,background .15s,transform .15s}.duration-option{border-radius:.9rem;min-height:4.5rem;padding:.8rem}.duration-option strong,.duration-option span{display:block}.duration-option strong{color:#4c3034;font-size:.9rem}.duration-option span{color:#927578;margin-top:.25rem;font-size:.7rem}.duration-option:hover,.credit-plan-option:hover{background:#fff6f4;border-color:#d8aaa5;transform:translateY(-1px)}.credit-plan-option:disabled{cursor:not-allowed;opacity:.52;transform:none}.credit-plan-option:disabled:hover{background:#fffaf8;border-color:#eadbd8}.duration-option.selected,.credit-plan-option.selected{background:linear-gradient(#fff8f6 0%,#fdf0ed 100%);border-color:#b56760;box-shadow:0 0 0 3px #a959541c}.credit-plan-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.credit-plan-option{border-radius:1rem;min-width:0;padding:1rem;position:relative}.credit-plan-option-top{justify-content:space-between;align-items:center;gap:.5rem;display:flex}.credit-plan-option .tier-badge{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100% - 2rem);margin:0;overflow:hidden}.plan-selected-check{color:#fff;background:#a95954;border-radius:50%;flex:none;place-items:center;width:1.55rem;height:1.55rem;font-size:.75rem;font-weight:900;display:grid}.credit-plan-name{color:#2d181b;letter-spacing:-.035em;margin-top:1rem;font-size:1.25rem;display:block}.credit-plan-count{color:#a95954;letter-spacing:-.04em;margin-top:.15rem;font-size:1.3rem;font-weight:900;display:block}.credit-plan-count small{color:#8c6e71;letter-spacing:0;font-size:.8rem;font-weight:700}.credit-plan-price{color:#904840;margin-top:.7rem;font-size:1.05rem;display:block}.credit-plan-price small,.credit-plan-total{color:#8c6e71;font-size:.78rem;font-weight:500}.credit-plan-total{margin-top:.15rem;display:block}.credit-plan-description{color:#6d4e52;min-height:2.5rem;margin-top:.55rem;font-size:.78rem;line-height:1.4;display:block}.credit-plan-features{color:#86666a;margin-top:.75rem;font-size:.7rem;line-height:1.45;display:block}.plan-selection-bar{background:#fbf1ee;border:1px solid #ead4d0;border-radius:1rem;justify-content:space-between;align-items:center;gap:1rem;margin-top:1.75rem;padding:1rem;display:flex}.plan-selection-bar span,.selection-summary span{color:#927578;font-size:.7rem;font-weight:700;display:block}.plan-selection-bar strong{color:#4b2e32;margin-top:.25rem;font-size:.9rem;display:block}.btn-plan-continue,.btn-plan-payment-disabled,.btn-plan-back{border-radius:.75rem;min-height:3rem;font-weight:800}.btn-plan-continue{color:#fff;cursor:pointer;background:#a95954;border:0;flex:none;padding:0 1.1rem;box-shadow:0 7px 18px #a9595438}.btn-plan-continue:hover{background:#914641;transform:translateY(-1px)}.btn-plan-continue:disabled{box-shadow:none;color:#aa9d9a;cursor:not-allowed;background:#e7dfdd;transform:none}.one-off-section{background:linear-gradient(135deg,#fff 0%,#fdf8f6 100%);border:1px solid #eadbd8;border-radius:1.5rem;max-width:62rem;margin:1.5rem auto 0;padding:clamp(1.1rem,4vw,1.6rem)}.one-off-heading{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.one-off-heading h2{color:#3e2528;letter-spacing:-.035em;margin:.35rem 0 .25rem;font-size:1.25rem}.one-off-heading p{color:#7b5b5f;margin:0;font-size:.82rem;line-height:1.45}.one-off-status{color:#a95954;background:#fff4f1;border:1px solid #ead0cb;border-radius:999px;flex:none;padding:.35rem .7rem;font-size:.7rem;font-weight:800}.one-off-section .packages-options{grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;display:grid}.one-off-section .package-pill{text-align:left;min-width:0;padding:.85rem}.one-off-section .package-pill small{color:#b18b87;margin-top:.5rem;font-size:.65rem;font-weight:700;display:block}.one-off-section .package-pill button,.custom-credit-buy{color:#fff;width:100%;min-height:2.75rem;font:inherit;cursor:pointer;background:#a95954;border:0;border-radius:.7rem;margin-top:.8rem;font-size:.78rem;font-weight:850}.one-off-section .package-pill button:hover,.custom-credit-buy:hover{background:#914641}.custom-credit-buy{grid-column:1/-1;justify-self:end;width:auto;padding-inline:1.25rem}.custom-credit-selector{background:#fbf1ee;border:1px solid #ead4d0;border-radius:1rem;grid-template-columns:minmax(0,1fr) auto minmax(12rem,auto);align-items:center;gap:1rem;margin-top:1rem;padding:1rem;display:grid}.custom-credit-copy strong,.custom-credit-copy span{display:block}.custom-credit-copy strong{color:#4b2e32;font-size:.95rem}.custom-credit-copy span{color:#84676a;margin-top:.25rem;font-size:.75rem}.custom-credit-control{background:#fff;border:1px solid #d9aaa5;border-radius:.8rem;align-items:stretch;display:flex;overflow:hidden}.custom-credit-control button{color:#914641;cursor:pointer;background:#fff7f5;border:0;width:2.9rem;min-height:3.25rem;font-size:1.15rem;font-weight:900}.custom-credit-control button:disabled{color:#cbbfbd;cursor:not-allowed}.custom-credit-control label{border-left:1px solid #eadbd8;border-right:1px solid #eadbd8;place-items:center;min-width:5rem;display:grid}.custom-credit-control label span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.custom-credit-control input{appearance:textfield;color:#3e2528;width:4.5rem;font:inherit;text-align:center;background:0 0;border:0;outline:0;font-size:1.05rem;font-weight:900}.custom-credit-control input::-webkit-inner-spin-button{appearance:none;margin:0}.custom-credit-control input::-webkit-outer-spin-button{appearance:none;margin:0}.custom-credit-price{text-align:right}.custom-credit-price span,.custom-credit-price strong{display:block}.custom-credit-price span{color:#84676a;font-size:.75rem}.custom-credit-price strong{color:#914641;margin-top:.2rem;font-size:1.05rem}.custom-credit-tiers{flex-wrap:wrap;grid-column:1/-1;gap:.45rem;display:flex}.custom-credit-tiers span{color:#8b7072;background:#fff;border-radius:999px;padding:.3rem .55rem;font-size:.68rem;font-weight:700}.custom-credit-tiers span.active{color:#fff;background:#a95954}@media (max-width:47.99rem){.custom-credit-selector{grid-template-columns:1fr}.custom-credit-control{width:100%}.custom-credit-control button,.custom-credit-control label{flex:1}.custom-credit-price{text-align:left}}.plan-payment-step{max-width:48rem;margin:0 auto}.payment-unavailable-card{text-align:center;background:#fff;border:1px solid #eadbd8;border-radius:1.75rem;padding:clamp(1.35rem,5vw,2.5rem);box-shadow:0 16px 45px #552a2e12}.payment-unavailable-icon{background:#f9e9e5;border-radius:1.15rem;place-items:center;width:3.4rem;height:3.4rem;margin:0 auto 1rem;font-size:1.55rem;display:grid}.payment-unavailable-card h2{color:#2d181b;letter-spacing:-.045em;margin:.45rem 0 .65rem;font-size:clamp(1.65rem,5vw,2.2rem)}.payment-unavailable-card>p{color:#6d4e52;max-width:34rem;margin:0 auto;font-size:.95rem;line-height:1.55}.selection-summary{text-align:left;background:#fbf1ee;border:1px solid #ead4d0;border-radius:1rem;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.65rem;margin-top:1.5rem;padding:.85rem;display:grid}.selection-summary strong{color:#4b2e32;margin-top:.25rem;font-size:.9rem;display:block}.payment-actions{gap:.65rem;margin-top:1.25rem;display:grid}.btn-plan-payment-disabled{color:#8d8180;cursor:not-allowed;background:#eeeceb;border:1px solid #d9d0ce;width:100%}.btn-plan-back{color:#a95954;cursor:pointer;background:0 0;border:0}.btn-plan-back:hover{text-decoration:underline}.payment-safe-note{color:#9b8484!important;margin-top:1rem!important;font-size:.75rem!important}.payer-details-card{text-align:left;background:linear-gradient(145deg,#fffdfc,#fff7f4);border:1px solid #ead4d0;border-radius:1.25rem;max-width:42rem;margin:1.4rem auto;padding:1.35rem;box-shadow:0 .7rem 2rem #5630310f}.payer-details-heading{align-items:center;gap:.75rem;display:flex}.payer-details-step{color:#fff;background:#a95954;border-radius:50%;flex:none;place-items:center;width:2rem;height:2rem;font-size:.85rem;font-weight:900;display:inline-grid;box-shadow:0 .35rem .8rem #a9595438}.payer-details-eyebrow{color:#a95954;letter-spacing:.11em;margin-bottom:.15rem;font-size:.66rem;font-weight:900;display:block}.payer-details-card h2,.payment-method-card h2{color:#4b2e32;margin:0;font-size:1.08rem;line-height:1.2}.payer-details-description,.payment-method-description{color:#806e6d;margin:.85rem 0 1.1rem;font-size:.86rem;line-height:1.5}.payer-details-grid{grid-template-columns:1fr 1fr;gap:.9rem;display:grid}.payer-details-field{color:#5f4a4b;gap:.42rem;font-size:.78rem;font-weight:800;display:grid}.payer-details-field-full{grid-column:1/-1}.payer-details-field input{color:#3f3031;width:100%;min-height:3rem;font:inherit;background:#fff;border:1px solid #dcc9c5;border-radius:.75rem;padding:.72rem .8rem;font-weight:500;transition:border-color .16s,box-shadow .16s}.payer-details-field input:focus{border-color:#b96b65;outline:3px solid #f1cbc5}.payer-details-field input::placeholder{color:#b8a8a6}.payer-details-privacy{color:#8d7877;border-top:1px solid #f0dfdb;gap:.4rem;margin:1rem 0 0;padding-top:.9rem;font-size:.74rem;line-height:1.45;display:flex}.payer-details-privacy:before{content:"⌾";color:#a95954;font-weight:900}.payment-method-card{text-align:left;background:#fff;border:1px solid #ead4d0;border-radius:1.25rem;max-width:42rem;margin:1.1rem auto 1.4rem;padding:1.35rem;box-shadow:0 .7rem 2rem #5630310f}.payment-method-card [class*=payment]{max-width:100%}.one-time-method-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:.7rem;margin:1rem 0;display:grid}.one-time-method-options button{color:#5c4547;cursor:pointer;min-height:3.35rem;font:inherit;background:#fffaf8;border:1px solid #dec9c5;border-radius:.9rem;font-weight:850}.one-time-method-options button.selected{color:#803e3b;background:#f9e9e5;border-color:#a95954;box-shadow:inset 0 0 0 1px #a95954}.pix-create-card{background:#fffaf8;border:1px solid #ead4d0;border-radius:1rem;gap:.55rem;margin-top:1rem;padding:1.1rem;display:grid}.pix-create-card>span{color:#a95954;letter-spacing:.11em;font-size:.68rem;font-weight:900}.pix-create-card h3,.pix-create-card p{margin:0}.pix-create-card h3{color:#4b2e32;font-size:1.05rem}.pix-create-card p{color:#806e6d;font-size:.84rem;line-height:1.45}.pix-create-button{color:#fff;cursor:pointer;min-height:3rem;font:inherit;background:#a95954;border:0;border-radius:.75rem;margin-top:.35rem;font-weight:850}.pix-create-button:hover{background:#8f4844}.pix-payment-result{text-align:center;background:linear-gradient(145deg,#fffdfc,#f9eeee);border:1px solid #ead4d0;border-radius:1.35rem;width:min(100%,42rem);margin:1.5rem auto;padding:clamp(1.15rem,4vw,1.7rem);box-shadow:0 1rem 2.5rem #5c37361a}.pix-payment-heading{justify-items:center;gap:.35rem;display:grid}.pix-status-pill{color:#80531d;background:#f6dfc2;border-radius:999px;padding:.38rem .75rem;font-size:.72rem;font-weight:900;display:inline-flex}.pix-payment-result h2{color:#4b2e32;margin:.35rem 0 0;font-size:1.35rem}.pix-payment-heading p{color:#806e6d;max-width:29rem;margin:0;font-size:.9rem;line-height:1.5}.pix-expiration{color:#7a5b34;background:#fff8ed;border:1px solid #ecd8bd;border-radius:.9rem;gap:.25rem;min-width:12rem;margin:1.1rem auto .75rem;padding:.7rem 1rem;font-size:.75rem;font-weight:700;display:inline-grid}.pix-expiration strong{color:#6e4224;font-variant-numeric:tabular-nums;letter-spacing:.06em;font-size:1.45rem}.pix-qr-code{aspect-ratio:1;object-fit:contain;width:min(100%,16rem);image-rendering:pixelated;background:#fff;border:1px solid #ead4d0;border-radius:1rem;margin:.65rem auto 1.2rem;padding:.7rem;display:block}.pix-copy-box{text-align:left;background:#fff;border:1px solid #ead4d0;border-radius:1rem;gap:.55rem;padding:.9rem;display:grid}.pix-copy-label{color:#5f4a4b;font-size:.78rem;font-weight:800}.pix-copy-field{resize:none;color:#625354;background:#fffaf8;border:1px solid #d9c4c0;border-radius:.7rem;width:100%;min-height:4.5rem;padding:.7rem;font:.72rem/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;overflow:auto}.pix-copy-button{color:#fff;cursor:pointer;min-height:2.9rem;font:inherit;background:#a95954;border:0;border-radius:.7rem;padding:.7rem .9rem;font-weight:800;transition:transform .15s,background .15s}.pix-copy-button:hover{background:#8f4844;transform:translateY(-1px)}.pix-pending-note{color:#806e6d;margin:1rem 0 0;font-size:.8rem;line-height:1.45}.payment-loading-state{text-align:center;background:#fffaf8;border:1px solid #ead4d0;border-radius:1.2rem;justify-items:center;gap:.55rem;max-width:34rem;margin:1.4rem auto;padding:1.5rem;display:grid}.payment-error-alert{color:#702825;text-align:left;background:#fff3f2;border:1px solid #e5a3a0;border-left:.35rem solid #b53f3a;border-radius:1rem;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.85rem;max-width:42rem;margin:1.1rem auto;padding:1rem 1.1rem;display:grid}.payment-error-alert>span{color:#fff;background:#b53f3a;border-radius:50%;place-items:center;width:1.8rem;height:1.8rem;font-weight:900;display:grid}.payment-error-alert p{color:#a13b37;letter-spacing:.09em;margin:0 0 .2rem;font-size:.68rem;font-weight:850}.payment-error-alert h2{color:#702825;margin:0 0 .35rem;font-size:1rem}.payment-error-alert strong{color:#702825;font-size:.88rem;line-height:1.45;display:block}.payment-error-alert small{color:#805552;margin-top:.5rem;font-size:.76rem;line-height:1.4;display:block}.payment-loading-state h2{color:#4b2e32;margin:0;font-size:1.15rem}.payment-loading-state p{color:#806e6d;margin:0;line-height:1.5}.payment-success-state{color:#25563a;text-align:center;background:linear-gradient(145deg,#f8fffa,#ecf9f0);border:1px solid #c7e5d0;border-radius:1.2rem;justify-items:center;gap:.6rem;max-width:34rem;margin:1.4rem auto;padding:1.75rem 1.5rem;display:grid}.payment-success-state h2{color:#25563a;margin:0;font-size:1.25rem}.payment-success-state p{color:#437356;margin:0;line-height:1.5}.payment-success-icon{color:#fff;background:#2e9d57;border-radius:50%;place-items:center;width:2.9rem;height:2.9rem;font-size:1.45rem;font-weight:900;display:grid}.payment-loading-spinner{border:.24rem solid #efd4d0;border-top-color:#a95954;border-radius:50%;width:2.2rem;height:2.2rem;animation:.75s linear infinite payment-spin}@keyframes payment-spin{to{transform:rotate(360deg)}}@media (max-width:560px){.payer-details-grid{grid-template-columns:1fr}.payer-details-field-full{grid-column:auto}.one-time-method-options{grid-template-columns:1fr}.pix-copy-button{min-height:2.75rem}}.plans-legal-links{flex-wrap:wrap;justify-content:center;gap:.5rem 1.25rem;margin:1rem 0 2rem;display:flex}.plans-legal-links a{color:#77595d;align-items:center;min-height:2.75rem;font-size:.82rem;font-weight:700;display:inline-flex}.plans-contact-banner{background:linear-gradient(135deg,#fff8f5,#fbe8e2);border:1px solid #dcb7ad;border-radius:1.25rem;justify-content:space-between;align-items:center;gap:1.5rem;max-width:68rem;margin:0 auto 2rem;padding:clamp(1.25rem,4vw,2rem);display:flex;box-shadow:0 14px 38px #552a2e17}.plans-contact-banner h2,.plans-showcase-heading h2{color:#3d2428;margin:.35rem 0 .55rem;font:400 clamp(1.45rem,3.5vw,2rem)/1.08 Georgia,Times New Roman,serif}.plans-contact-banner p,.plans-showcase-heading p{color:#72565a;max-width:43rem;margin:0;line-height:1.55}.plans-whatsapp-button{color:#fff;background:#238b57;border-radius:.8rem;flex:none;justify-content:center;align-items:center;min-height:3.15rem;padding:.75rem 1.1rem;font-weight:800;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex;box-shadow:0 8px 18px #238b573d}.plans-whatsapp-button:hover{background:#167445;transform:translateY(-2px)}.plans-showcase-section{max-width:68rem;margin:0 auto 2.25rem}.plans-showcase-heading{text-align:center;max-width:46rem;margin:0 auto 1.35rem}.plans-showcase-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.plans-showcase-card{background:#fff;border:1px solid #ead8d4;border-radius:1.15rem;flex-direction:column;min-width:0;padding:1.25rem;display:flex;position:relative;box-shadow:0 8px 24px #552a2e0d}.plans-showcase-card.featured{border-color:#c9877c;box-shadow:0 14px 30px #a9595421}.plans-showcase-badge{color:#9a4c47;letter-spacing:.04em;background:#f8e7e2;border-radius:999px;align-self:flex-start;padding:.34rem .55rem;font-size:.68rem;font-weight:850}.plans-showcase-card h3{color:#382227;margin:.85rem 0 .35rem;font:400 1.65rem/1 Georgia,Times New Roman,serif}.plans-showcase-card>p{color:#765b5e;min-height:3.9rem;margin:0;font-size:.88rem;line-height:1.45}.plans-showcase-credits{color:#66343a;margin:1rem 0 .7rem;font-size:.88rem;display:block}.plans-showcase-prices,.plans-showcase-features{margin:0;padding:0;list-style:none}.plans-showcase-prices{border-top:1px solid #f0e0dc}.plans-showcase-prices li{border-bottom:1px solid #f3e7e4;grid-template-columns:1fr auto;gap:.1rem .6rem;padding:.65rem 0;display:grid}.plans-showcase-prices li>span{color:#73585b;font-size:.78rem;font-weight:750}.plans-showcase-prices strong{color:#493034;text-align:right;font-size:.9rem}.plans-showcase-prices strong small{color:#896d70;margin-left:.1rem;font-size:.68rem;font-weight:700}.plans-showcase-prices li>small{color:#967c7e;text-align:right;grid-column:1/-1;font-size:.7rem}.plans-showcase-features{color:#65484c;gap:.42rem;margin-top:1rem;font-size:.78rem;line-height:1.4;display:grid}.plans-showcase-features li:before{color:#25824f;content:"✓";margin-right:.45rem;font-weight:900}.plans-template-contact{color:#238b57;text-underline-offset:.15em;margin-top:1rem;font-size:.8rem;font-weight:800;line-height:1.35;text-decoration:underline;display:inline-flex}.plans-one-off-showcase{background:#fffaf8;border:1px solid #ead8d4;border-radius:1.25rem;padding:clamp(1.25rem,4vw,2rem)}.plans-credit-packages{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.plans-credit-packages article{background:#fff;border:1px solid #eadbd8;border-radius:.85rem;gap:.35rem;padding:1rem;display:grid}.plans-credit-packages strong{color:#4c3034;font-size:.9rem}.plans-credit-packages span{color:#a4524d;font-size:1.05rem;font-weight:850}.plans-credit-packages small,.plans-volume-note{color:#806568;font-size:.76rem;line-height:1.4}.plans-volume-note{text-align:center;margin:1rem 0 0}@media (max-width:720px){.plans-contact-banner{flex-direction:column;align-items:stretch}.plans-whatsapp-button{width:100%}.plans-showcase-grid{grid-template-columns:1fr}.plans-showcase-card>p{min-height:auto}.plans-credit-packages{grid-template-columns:repeat(2,minmax(0,1fr))}}
