*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#1a1a1a;background:#f5f5f5;width:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow-x:hidden}#root{width:100%;max-width:100vw;min-height:100dvh}input,button,textarea,select{font-family:inherit;font-size:16px}a{color:inherit;text-decoration:none}.desktop-block{background:#f5881f;flex-direction:column;justify-content:flex-start;align-items:center;min-height:100dvh;padding-top:80px;display:flex;position:relative;overflow:hidden}.desktop-logo{z-index:1;width:140px;height:auto;margin-bottom:24px;position:relative}.desktop-block p{color:#fff;z-index:1;font-size:1.5rem;font-weight:600;position:relative}.desktop-heart{opacity:.25;pointer-events:none;position:absolute}.photo-upload-hidden{display:none}.photo-preview{border:1.5px solid #e5e5e5;border-radius:12px;position:relative;overflow:hidden}.photo-preview img{object-fit:cover;width:100%;height:200px;display:block}.photo-preview-overlay{text-align:center;background:#00000073;padding:10px;position:absolute;bottom:0;left:0;right:0}.photo-change-btn{color:#fff;cursor:pointer;background:#fff3;border:1px solid #fff6;border-radius:20px;padding:6px 18px;font-size:13px;font-weight:600}.photo-change-btn:active{background:#ffffff59}.photo-upload-options{gap:12px;display:flex}.photo-option-btn{cursor:pointer;background:#fafafa;border:1.5px dashed #ddd;border-radius:12px;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:18px 12px;transition:background .2s,border-color .2s;display:flex}.photo-option-btn:active{background:#f0f0f0;border-color:#ccc}.photo-option-icon{border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;margin-bottom:8px;display:flex}.photo-option-icon svg{width:22px;height:22px}.photo-option-icon--camera{background:#fff3e0}.photo-option-icon--camera svg{color:#f5881f}.photo-option-icon--gallery{background:#e8f0fe}.photo-option-icon--gallery svg{color:#3b82f6}.photo-option-text{color:#555;font-size:13px;font-weight:600}.photo-upload-hint-below{color:#aaa;text-align:center;margin-top:8px;font-size:12px}.photo-upload-error{color:#dc2626;margin-top:8px;font-size:13px}.landing{background:#f5881f;flex-direction:column;width:100%;min-height:100dvh;display:flex;position:relative;overflow:hidden}.landing-header{padding:env(safe-area-inset-top,0px) 0 0 0;z-index:1;position:relative}.landing-header-inner{z-index:1;padding:20px 20px 24px;position:relative}.landing-logo{width:100px;height:auto;margin-bottom:16px}.landing-header-title-wrap{text-align:center}.landing-header-title{color:#fff;margin:0;font-size:26px;font-weight:700}.landing-header-sub{color:#ffffffd9;margin-top:6px;font-size:14px;font-weight:400}.landing-hearts{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;top:0;left:0}.landing-heart{color:#fff;opacity:.25;position:absolute}.landing-heart:first-child{width:30px;height:30px;top:1%;right:8%;transform:rotate(15deg)}.landing-heart:nth-child(2){width:20px;height:20px;top:4%;left:15%;transform:rotate(-25deg)}.landing-heart:nth-child(3){width:26px;height:26px;top:8%;right:35%;transform:rotate(30deg)}.landing-heart:nth-child(4){width:16px;height:16px;top:6%;left:50%;transform:rotate(-10deg)}.landing-heart:nth-child(5){width:22px;height:22px;top:14%;right:5%;transform:rotate(20deg)}.landing-heart:nth-child(6){width:14px;height:14px;top:18%;left:8%;transform:rotate(-30deg)}.landing-heart:nth-child(7){width:28px;height:28px;top:22%;right:20%;transform:rotate(10deg)}.landing-heart:nth-child(8){width:18px;height:18px;top:26%;left:25%;transform:rotate(-15deg)}.landing-heart:nth-child(9){width:24px;height:24px;top:32%;right:3%;transform:rotate(35deg)}.landing-heart:nth-child(10){width:15px;height:15px;top:35%;left:5%;transform:rotate(-20deg)}.landing-heart:nth-child(11){width:26px;height:26px;top:40%;right:28%;transform:rotate(12deg)}.landing-heart:nth-child(12){width:18px;height:18px;top:44%;left:18%;transform:rotate(-18deg)}.landing-heart:nth-child(13){width:30px;height:30px;top:50%;right:10%;transform:rotate(22deg)}.landing-heart:nth-child(14){width:14px;height:14px;top:52%;left:40%;transform:rotate(-28deg)}.landing-heart:nth-child(15){width:22px;height:22px;top:58%;right:38%;transform:rotate(8deg)}.landing-heart:nth-child(16){width:16px;height:16px;top:62%;left:6%;transform:rotate(-22deg)}.landing-heart:nth-child(17){width:24px;height:24px;top:68%;right:5%;transform:rotate(18deg)}.landing-heart:nth-child(18){width:18px;height:18px;top:74%;left:30%;transform:rotate(-12deg)}.landing-heart:nth-child(19){width:28px;height:28px;top:80%;right:18%;transform:rotate(28deg)}.landing-heart:nth-child(20){width:15px;height:15px;top:85%;left:10%;transform:rotate(-8deg)}.landing-header-curve{display:none}.landing-card-wrap{z-index:1;width:100%;max-width:480px;margin:0 auto;padding:0 16px 24px;position:relative}.landing-card{background:#fff;border-radius:16px;padding:20px 18px;box-shadow:0 4px 30px #00000014}.landing-card-title{color:#1a1a1a;margin-bottom:2px;font-size:16px;font-weight:600}.landing-card-desc{color:#999;margin-bottom:16px;font-size:11px}.form-group{margin-bottom:14px}.form-label{color:#555;margin-bottom:5px;font-size:12px;font-weight:500;display:block}.form-input{color:#1a1a1a;appearance:none;background:#fafafa;border:1.5px solid #e5e5e5;border-radius:12px;outline:none;width:100%;padding:11px 12px;font-size:16px;transition:border-color .2s,box-shadow .2s}.form-input::placeholder{color:#c5c5c5}.form-input:focus{background:#fff;border-color:#f5881f;box-shadow:0 0 0 3px #f5881f1a}.form-error{color:#dc2626;text-align:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin-top:16px;padding:12px 16px;font-size:14px}.form-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f5881f 0%,#e07a1a 100%);border:none;border-radius:12px;width:100%;margin-top:16px;padding:12px;font-size:15px;font-weight:600;transition:transform .1s,opacity .2s;box-shadow:0 4px 16px #f5881f4d}.form-submit:active{transform:translateY(1px);box-shadow:0 2px 10px #f9731633}.form-submit:disabled{opacity:.5;cursor:not-allowed}.landing-safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px);background:#f5881f}@media (width>=400px){.landing-card{padding:24px 22px}}@media (width>=768px){.landing-header-inner{padding:28px 32px 32px}.landing-header-title{font-size:30px}.landing-card-wrap{padding:0 24px 32px}.landing-card{padding:28px 26px}.form-group{margin-bottom:18px}}.share-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.share-btn{color:#fff;text-align:center;border-radius:12px;justify-content:center;align-items:center;gap:10px;padding:14px 12px;font-size:14px;font-weight:600;transition:transform .1s;display:flex}.share-btn:active{transform:scale(.96)}.share-btn svg{fill:#fff;width:20px;height:20px}.share-btn--whatsapp{background:#25d366}.share-btn--instagram{background:linear-gradient(135deg,#f58529,#dd2a7b,#8134af)}.share-btn--facebook{background:#1877f2}.share-btn--sharechat{background:gold}.thankyou{background:#f5f5f5;flex-direction:column;width:100%;min-height:100dvh;display:flex}.thankyou-header{padding:env(safe-area-inset-top,0px) 0 0 0;background:linear-gradient(135deg,#f5881f 0%,#e07a1a 100%);position:relative}.thankyou-header-spacer{height:100px}.thankyou-header-curve{background:#f5f5f5;border-radius:50% 50% 0 0;width:100%;height:40px;position:absolute;bottom:-1px;left:0}.thankyou-content{z-index:1;flex-direction:column;flex:1;align-items:center;width:100%;max-width:480px;margin:-30px auto 0;padding:0 20px 40px;display:flex;position:relative}.thankyou-icon{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;margin-bottom:24px;display:flex;box-shadow:0 4px 20px #00000014}.thankyou-icon svg{color:#22c55e;width:36px;height:36px}.thankyou-title{color:#1a1a1a;margin-bottom:8px;font-size:24px;font-weight:700}.thankyou-text{color:#888;text-align:center;margin-bottom:32px;font-size:14px;line-height:1.6}.thankyou-text strong{color:#f5881f;font-weight:600}.thankyou-section{background:#fff;border-radius:16px;width:100%;margin-bottom:16px;padding:24px;box-shadow:0 2px 16px #0000000a}.thankyou-section-title{color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:16px;font-size:12px;font-weight:600}.thankyou-placeholder{text-align:center;color:#bbb;border:1.5px dashed #e0e0e0;border-radius:12px;padding:20px;font-size:14px}.thankyou-bottom{background:linear-gradient(135deg,#f5881f 0%,#e07a1a 100%);border-radius:50% 50% 0 0/100% 100% 0 0;width:100%;height:60px;margin-top:auto}.thankyou-safe-bottom{padding-bottom:env(safe-area-inset-bottom,0px);background:#f5881f}.admin-login{background:#f5881f;justify-content:center;align-items:center;min-height:100dvh;padding:20px;display:flex;position:relative;overflow:hidden}.admin-login-heart{color:#fff;opacity:.25;pointer-events:none;position:absolute}.admin-login-card{z-index:1;background:#fff;border-radius:20px;width:100%;max-width:400px;padding:40px 28px;position:relative;box-shadow:0 4px 30px #00000014}.admin-login-header{text-align:center;margin-bottom:32px}.admin-login-logo{width:120px;height:auto;margin:0 auto 16px;display:block}.admin-login-title{color:#1a1a1a;margin-bottom:4px;font-size:22px;font-weight:700}.admin-login-subtitle{color:#aaa;font-size:13px}.admin-login-form{flex-direction:column;gap:18px;display:flex}.admin-login-form label{color:#555;margin-bottom:6px;font-size:13px;font-weight:500;display:block}.admin-login-form input{background:#fafafa;border:1.5px solid #e5e5e5;border-radius:12px;outline:none;width:100%;padding:14px 16px;transition:border-color .2s,box-shadow .2s}.admin-login-form input:focus{background:#fff;border-color:#f5881f;box-shadow:0 0 0 3px #f5881f1a}.admin-login-error{color:#dc2626;text-align:center;font-size:14px;font-weight:500}.admin-login-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#f5881f 0%,#e07a1a 100%);border:none;border-radius:12px;width:100%;padding:14px;font-size:16px;font-weight:600;transition:opacity .2s;box-shadow:0 4px 16px #f5881f40}.admin-login-btn:disabled{opacity:.5;cursor:not-allowed}.admin-login-hint{text-align:center;color:#ccc;margin-top:24px;font-size:12px}
