html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background:#fdf8f2;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:18px}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#fdf8f2;margin:0}#root{background:#fdf8f2;min-height:100vh}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--cream:#fdf8f2;--teal:#22cec8;--teal-dark:#18adaa;--teal-pale:#ccf8f5;--pink:#f06292;--pink-dark:#e0457a;--pink-pale:#fde8f0;--gold:#f0b429;--gold-dark:#c9920a;--gold-pale:#fdf0c7;--navy:#1a2744;--teal-heading:#0a9490;--text-dark:#1a2744;--text-mid:#4a5568;--white:#fff;--shadow-sm:0 2px 8px #0000001a;--shadow-md:0 4px 20px #00000021;--shadow-lg:0 8px 32px #00000029}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--cream);min-height:100vh;color:var(--text-dark);-webkit-font-smoothing:antialiased;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif}#root{min-height:100vh}.app{flex-direction:column;align-items:center;max-width:480px;min-height:100vh;margin:0 auto;padding:16px 20px 40px;display:flex}.welcome-text{color:var(--teal-heading);text-align:center;letter-spacing:2px;width:100%;margin-bottom:10px;font-size:clamp(1.6rem,7vw,2rem);font-weight:700}.feedback-banner{color:#0a6e6b;text-align:center;cursor:pointer;width:100%;box-shadow:var(--shadow-sm);background:#e0f9f7;border:2px solid #3b0764;border-radius:14px;margin-bottom:16px;padding:12px 20px;font-family:inherit;font-size:1rem;font-weight:600;transition:background .15s,transform .12s;display:block}.feedback-banner:hover{background:#c4f4f0;transform:translateY(-1px)}.logo-area{margin-bottom:12px}.grandma-mac-logo{width:160px;height:auto;display:block}.grandmas-corner{background:var(--cream)}.corner-back-btn{color:#0a6e6b!important}.corner-back-btn:hover{color:var(--teal-dark)!important}.corner-header{text-align:center;border-bottom:2px dashed #5cdad6;flex-direction:column;align-items:center;margin-bottom:40px;padding:24px 0 32px;display:flex}.corner-cup-big{margin-bottom:12px;font-size:4rem;display:block}.corner-title{color:var(--teal-heading);margin-bottom:10px;font-size:clamp(1.7rem,7vw,2.2rem);font-weight:700}.corner-tagline{color:var(--text-mid);font-size:1.05rem;font-style:italic;line-height:1.55}.corner-coming-soon{text-align:center;box-shadow:var(--shadow-md);background:#fff;border:2px solid #5cdad6;border-radius:22px;padding:36px 28px}.corner-soon-text{color:var(--teal-heading);letter-spacing:1px;margin-bottom:16px;font-size:1.8rem;font-weight:700}.corner-soon-sub{color:var(--text-mid);font-size:1.1rem;line-height:1.65}.photo-wrapper{width:100%;max-width:160px;margin-bottom:16px}.grandma-photo{width:100%;height:auto;box-shadow:var(--shadow-lg);border-radius:28px;display:block}.photo-placeholder{aspect-ratio:3/4;color:#4a9a7a;background:#e8f5f0;border:3px dashed #a0d4c0;border-radius:28px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;font-size:1rem;font-style:italic;display:flex}.photo-placeholder span{font-size:3rem}.heading-area{text-align:center;margin-bottom:16px;padding:0 4px}.hi-there{color:var(--text-mid);margin-bottom:6px;font-size:1.15rem;font-style:italic}@keyframes shimmer{0%{background-position:-300%}to{background-position:300%}}@keyframes twinkle{0%,to{opacity:1;transform:scale(1)rotate(0)}25%{opacity:.3;transform:scale(.6)rotate(45deg)}50%{opacity:1;transform:scale(1.3)rotate(90deg)}75%{opacity:.4;transform:scale(.7)rotate(135deg)}}.main-title{letter-spacing:3px;background:linear-gradient(90deg,#d81b7a 0%,#f06292 15%,#ffcce8 30%,#fff 40%,#ffcce8 50%,#f06292 65%,#d81b7a 80%,#f06292 90%,#d81b7a 100%) 0 0/300%;color:#0000;-webkit-text-stroke:2.5px #000;paint-order:stroke fill;-webkit-background-clip:text;background-clip:text;margin-bottom:12px;font-size:clamp(2rem,8vw,2.6rem);font-weight:700;line-height:1.15;animation:4s linear infinite shimmer;position:relative}.sparkle-star{color:#fc0;-webkit-text-stroke:0;text-shadow:0 0 6px #fc0,0 0 12px #f90;vertical-align:middle;background:0 0;-webkit-background-clip:unset;background-clip:unset;margin:0 4px;font-size:.65em;display:inline-block}.sparkle-star.s1{animation:1.8s ease-in-out infinite twinkle}.sparkle-star.s2{animation:2.3s ease-in-out .4s infinite twinkle}.sparkle-star.s3{animation:1.5s ease-in-out .9s infinite twinkle}.subtitle{color:var(--text-mid);font-size:clamp(1rem,4vw,1.15rem);line-height:1.55}.safety-card{background:var(--white);box-shadow:var(--shadow-md);border:2px solid #d4ede4;border-radius:18px;align-items:center;gap:14px;width:100%;margin-bottom:24px;padding:14px 18px;display:flex}.shield-icon{flex-shrink:0;align-items:center;display:flex}.safety-text{color:#1a5c40;font-size:1rem;font-weight:600;line-height:1.45}.button-stack{flex-direction:column;gap:28px;width:100%;display:flex}.button-group{flex-direction:column;align-items:center;gap:10px;display:flex}.main-btn{cursor:pointer;width:100%;box-shadow:var(--shadow-md);letter-spacing:.2px;color:var(--white);border:3px solid var(--navy);border-radius:18px;justify-content:center;align-items:center;gap:14px;min-height:72px;padding:22px 28px;font-family:inherit;font-size:clamp(1.15rem,4.5vw,1.35rem);font-weight:700;transition:transform .15s,box-shadow .15s;display:flex}.main-btn:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.main-btn:active{box-shadow:var(--shadow-sm);transform:translateY(0)}.btn-icon{flex-shrink:0;align-items:center;display:flex}.emoji-icon{background:#ffffff40;border-radius:14px;justify-content:center;align-items:center;width:52px;height:52px;font-size:1.8rem;line-height:1;display:flex}.btn-label-outlined{-webkit-text-stroke:1.5px black;paint-order:stroke fill}.btn-teal{background:var(--teal)}.btn-teal:hover{background:var(--teal-dark)}.btn-pink{background:var(--pink)}.btn-pink:hover{background:var(--pink-dark)}.btn-gold{background:var(--gold);color:var(--navy)}.btn-gold:hover{background:var(--gold-dark);color:var(--white)}.info-btn{cursor:pointer;box-shadow:var(--shadow-sm);border:2px solid #000;border-radius:12px;padding:10px 20px;font-family:inherit;font-size:.9rem;font-weight:600;transition:transform .12s,box-shadow .12s}.info-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.info-btn-teal{background:var(--teal-pale);color:#0a6e6b}.info-btn-pink{background:var(--pink-pale);color:#9c2151}.info-btn-gold{background:var(--gold-pale);color:#7a5a00}.corner-btn-bottom{background:var(--teal-pale);border:2px solid var(--teal-dark);color:#0a6e6b;cursor:pointer;box-shadow:var(--shadow-sm);border-radius:50px;justify-content:center;align-items:center;gap:10px;margin-top:36px;padding:14px 28px;font-family:inherit;font-size:1.05rem;font-weight:700;transition:background .15s,transform .12s,box-shadow .12s;display:flex}.corner-btn-bottom span{font-size:1.3rem}.corner-btn-bottom:hover{box-shadow:var(--shadow-md);background:#b0f0ec;transform:translateY(-2px)}.corner-btn-bottom:active{transform:translateY(0)}.footer{text-align:center;color:#000;flex-direction:column;align-items:center;gap:14px;width:100%;margin-top:28px;font-size:.99rem;font-style:italic;display:flex}.end-visit-btn{color:#3a4a60;cursor:pointer;letter-spacing:.02em;background:#f4f6fa;border:2px solid #000;border-radius:12px;padding:12px 36px;font-size:1rem;font-style:normal;font-weight:700;transition:background .15s,border-color .15s,color .15s}.end-visit-btn:hover{color:#1a2744;background:#e8ecf4;border-color:#7a8eaa}.modal-overlay{z-index:100;background:#1a27448c;justify-content:center;align-items:flex-end;padding:0 0 24px;animation:.2s fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.modal-card{background:#fffef9;border-radius:24px 24px 20px 20px;flex-direction:column;width:calc(100% - 32px);max-width:460px;max-height:85vh;padding:0;animation:.25s slideUp;display:flex;box-shadow:0 -4px 40px #0003}.modal-scroll{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:32px 28px 20px;overflow-y:auto}.modal-footer{background:#fffef9;border-top:1px solid #ccf8f5;border-radius:0 0 20px 20px;flex-shrink:0;padding:16px 28px 24px}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.modal-title{color:var(--teal-heading);margin-bottom:14px;font-size:1.55rem;font-weight:700;line-height:1.25}.modal-body{color:var(--text-mid);margin-bottom:24px;font-size:1.15rem;line-height:1.65}.mailto-link{color:#6a1bb5;word-break:break-all;text-decoration:underline}.modal-intro{color:var(--text-mid);margin-bottom:16px;font-size:1.15rem;line-height:1.6}.modal-examples{flex-direction:column;gap:12px;margin:0 0 20px;padding:0;list-style:none;display:flex}.modal-examples li{color:var(--text-dark);background:#e8faf8;border-left:4px solid #5cdad6;border-radius:10px;padding:10px 14px;font-size:1.15rem;line-height:1.5}.modal-closing{color:var(--teal-heading);text-align:center;margin-bottom:24px;font-size:1.2rem;font-weight:700;line-height:1.5}.modal-close{width:100%;color:var(--white);cursor:pointer;box-shadow:var(--shadow-sm);background:#5cdad6;border:3px solid #18adaa;border-radius:14px;padding:18px;font-family:inherit;font-size:1.2rem;font-weight:700;transition:background .15s}.modal-close:hover{background:var(--teal-dark)}.modal-title-pink{color:#c0306a}.modal-close-pink{background:#e64a93;border-color:#a82f6a}.modal-close-pink:hover{background:#c0306a}@media (width>=520px){.app{padding:48px 32px 56px}.logo-area{margin-bottom:20px}.grandma-mac-logo{width:220px}.photo-wrapper{max-width:300px;margin-bottom:28px}.heading-area{margin-bottom:24px}.safety-card{margin-bottom:36px;padding:18px 22px}}.modal-title-gold{color:#7a5a00}.modal-close-gold{color:#3a2800;background:#f6c455;border-color:#c9920a}.modal-close-gold:hover{background:var(--gold-dark);color:var(--white)}.modal-section-heading{color:var(--text-dark);margin-top:20px;margin-bottom:4px;font-size:1.1rem;font-weight:700}.modal-body-bold{color:var(--text-dark);font-weight:700}.fullscreen{background:var(--cream);flex-direction:column;width:100%;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.back-btn{color:#7a5a00;cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:20px 20px 0;padding:8px 4px;font-family:inherit;font-size:1.05rem;font-weight:700}.back-btn:hover{color:var(--gold-dark)}.fullscreen-inner{flex-direction:column;gap:0;padding:24px 20px 48px;display:flex}.fullscreen-title{color:#7a5a00;margin-bottom:28px;font-size:clamp(1.4rem,6vw,1.8rem);font-weight:700;line-height:1.25}.scam-action-header{background:var(--gold-light,#fff3cd);border:2.5px solid #000;border-radius:16px;flex-shrink:0;align-items:flex-start;gap:16px;margin:14px 14px 0;padding:20px 20px 24px;display:flex}.scam-back-btn{color:#5a3e00;cursor:pointer;white-space:nowrap;background:#00000014;border:2px solid #00000040;border-radius:14px;flex-shrink:0;margin-top:4px;padding:8px 14px;font-size:1.05rem;font-weight:700;transition:background .15s}.scam-back-btn:hover{background:#00000026}.scam-action-header-title{color:#7a5a00;flex:1;margin:0;font-size:clamp(1.3rem,5.5vw,1.7rem);font-weight:700;line-height:1.25}.fullscreen-intro{color:var(--text-mid);margin-bottom:32px;font-size:1.1rem;line-height:1.6}.scam-choices{flex-direction:column;gap:0;display:flex}.scam-choice-card{box-shadow:var(--shadow-md);background:#fff;border:2px solid #f0d080;border-radius:20px;flex-direction:column;align-items:center;gap:12px;padding:24px 20px;display:flex}.scam-choice-icon{font-size:3rem;line-height:1}.scam-choice-text{text-align:center}.scam-choice-question{color:var(--text-dark);margin-bottom:6px;font-size:1.2rem;font-weight:700;line-height:1.4}.scam-choice-sub{color:var(--text-mid);font-size:1rem;font-style:italic}.scam-choice-btn{cursor:pointer;border-radius:14px;width:100%;margin-top:4px;padding:18px;font-family:inherit;font-size:1.15rem;font-weight:700;transition:transform .12s,box-shadow .12s}.scam-choice-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.btn-gold-solid{color:#3a2800;box-shadow:var(--shadow-sm);background:#f6c455;border:3px solid #c9920a}.btn-gold-solid:hover{background:#f0b429}.scam-choice-divider{text-align:center;color:var(--text-mid);padding:18px 0;font-size:1rem;font-style:italic}.phone-section{margin-bottom:36px}.phone-section-title{color:#7a5a00;margin-bottom:16px;font-size:1.3rem;font-weight:700}.phone-diagram{width:200px;margin:0 auto 20px}.phone-body{background:#e8e8e8;border:3px solid #999;border-radius:20px;width:120px;height:200px;margin:0 auto;position:relative}.phone-screen{background:#c8e6f0;border-radius:10px;justify-content:center;align-items:center;display:flex;position:absolute;inset:14px 8px}.phone-screen-label{color:#336;text-align:center;font-size:.65rem;font-weight:600}.phone-btn-right{background:#999;border-radius:3px;width:6px;height:28px;position:absolute;right:-14px}.phone-btn-side-top{top:36px}.phone-btn-power{top:40px}.phone-btn-vol-down{top:78px}.phone-btn-left{background:#999;border-radius:3px;width:6px;height:28px;position:absolute;left:-14px}.phone-btn-vol-up{top:50px}.phone-btn-label{white-space:nowrap;color:#7a5a00;background:#fff9e6;border:1px solid #f0d080;border-radius:5px;padding:2px 6px;font-size:.65rem;font-weight:700;position:absolute;top:50%;transform:translateY(-50%)}.phone-btn-label-right{left:14px}.phone-btn-label-left{right:14px}.phone-steps{flex-direction:column;gap:10px;padding-left:22px;display:flex}.phone-steps li{color:var(--text-dark);font-size:1.05rem;line-height:1.55}.screenshot-tip{color:#5a3e00;background:#fff9e6;border:2px solid #f0d080;border-radius:14px;margin-bottom:36px;padding:16px 18px;font-size:1rem;line-height:1.55}.screenshot-go-btn{color:#3a2800;cursor:pointer;width:100%;box-shadow:var(--shadow-md);background:#f6c455;border:3px solid #c9920a;border-radius:16px;margin-top:8px;padding:20px;font-family:inherit;font-size:1.15rem;font-weight:700;transition:background .15s,transform .12s}.screenshot-go-btn:hover{background:#f0b429;transform:translateY(-2px)}.scam-analyzing-screen{text-align:center;background:#fdf8f2;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:40px 24px;display:flex}.scam-analyzing-thumb{object-fit:cover;border:3px solid #d4a017;border-radius:16px;width:180px;height:180px;margin-bottom:24px;box-shadow:0 4px 16px #0000002e}.scam-analyzing-icon{margin-bottom:24px;font-size:4rem;animation:1.2s ease-in-out infinite scamIconBounce}@keyframes scamIconBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.scam-analyzing-text{color:#4a2080;max-width:320px;font-size:1.4rem;font-weight:700;line-height:1.5}.scam-result-screen{box-sizing:border-box;background:#fdf8f2;flex-direction:column;width:100%;max-width:480px;min-height:100vh;margin:0 auto;padding:32px 20px 48px;display:flex}.scam-result-header{align-items:center;gap:12px;margin-bottom:28px;display:flex}.scam-result-icon{font-size:2.4rem}.scam-result-title{color:#3b0764;margin:0;font-size:1.5rem;font-weight:800}.scam-result-body{color:#2a1a40;white-space:pre-wrap;word-wrap:break-word;background:#fff;border:2px solid #e0d0f0;border-radius:20px;flex:1;margin-bottom:28px;padding:28px 24px;font-size:1.15rem;line-height:1.7;box-shadow:0 2px 12px #0000000f}.scam-result-back-btn{color:#fff;cursor:pointer;background:#4a2080;border:none;border-radius:18px;width:100%;padding:22px;font-family:inherit;font-size:1.2rem;font-weight:700;transition:background .15s,transform .12s;box-shadow:0 4px 16px #4a208040}.scam-result-back-btn:hover{background:#3b0764;transform:translateY(-2px)}.scam-result-error{color:#7a1a1a;background:#fff0f0;border-color:#f0a0a0}@media (width>=520px){.fullscreen-inner{padding:32px 32px 56px}.back-btn{margin:28px 32px 0}}.splash-screen{background:var(--cream);cursor:pointer;z-index:9999;flex-direction:column;justify-content:center;align-items:center;transition:opacity .6s;animation:.5s both splashFadeIn;display:flex;position:fixed;inset:0}.splash-screen.splash-fading{opacity:0}.splash-image{object-fit:contain;width:auto;max-width:90%;height:auto;max-height:80vh;box-shadow:var(--shadow-lg);border:4px solid #000;border-radius:56px;overflow:hidden}.splash-tap-hint{color:#4a0080;letter-spacing:.02em;text-shadow:none;white-space:normal;text-align:center;font-family:Georgia,serif;font-size:1.4rem;font-weight:700;animation:2s ease-in-out 1s infinite splashHintPulse;position:absolute;bottom:8px;left:24px;right:24px}@media (width<=480px){.splash-tap-hint{text-align:center;word-wrap:break-word;overflow-wrap:break-word;box-sizing:border-box;width:85%;max-width:85%;margin:0 auto;padding:0 20px;font-size:1.15rem;left:0;right:0}}@keyframes splashFadeIn{0%{opacity:0}to{opacity:1}}@keyframes splashHintPulse{0%,to{opacity:.7}50%{opacity:1}}.auth-loading-screen{background:var(--cream);flex-direction:column;justify-content:center;align-items:center;gap:24px;min-height:100vh;display:flex}.auth-loading-logo{opacity:.85;width:140px;height:auto}.auth-loading-text{color:var(--text-mid);font-size:1.2rem;font-style:italic}.welcome-fullbleed{background:#3b0764;flex-direction:column;width:100%;max-width:480px;min-height:100vh;margin:0 auto;display:flex;position:relative;overflow:hidden}.welcome-img-wrap{cursor:pointer;flex:1;align-items:flex-start;display:flex}.welcome-fullbleed-img{object-fit:cover;width:100%;height:auto;display:block}.welcome-footer{background:#3b0764;flex-direction:column;align-items:center;gap:0;width:100%;padding:16px 24px 28px;display:flex}.welcome-login-btn{color:#e0c8ff;background:0 0;border-color:#9b72d0;width:100%;font-size:1.15rem}.welcome-login-btn:hover{background:#9b72d040}.auth-screen{background:var(--cream);flex-direction:column;align-items:center;width:100%;max-width:480px;min-height:100vh;margin:0 auto;padding:0 0 48px;display:flex}.auth-logo-wrap{border-bottom:2px solid #ede8e0;justify-content:center;width:100%;margin-bottom:8px;padding:24px 20px 16px;display:flex}.auth-logo-img{width:130px;height:auto}.auth-content{flex-direction:column;align-items:center;gap:0;width:100%;padding:20px 24px 0;display:flex}.signup-brand-titles{text-align:center;width:100%;margin-bottom:12px}.signup-brand-name{color:var(--teal-heading);-webkit-text-stroke:1.5px #000;paint-order:stroke fill;margin:0 0 4px;font-size:clamp(2rem,8vw,2.8rem);font-weight:800;line-height:1.2}.signup-brand-tagline{color:var(--navy);-webkit-text-stroke:1px #000;paint-order:stroke fill;margin:0;font-size:clamp(1.4rem,5.5vw,2rem);font-weight:700;line-height:1.2}.auth-screen-title{color:var(--teal-heading);text-align:center;margin-bottom:10px;font-size:clamp(1.5rem,6vw,2rem);font-weight:700;line-height:1.25}.auth-body-text{color:var(--text-mid);text-align:center;margin-bottom:20px;font-size:1.1rem;line-height:1.6}.auth-welcome-title{color:var(--teal-heading);text-align:center;margin-bottom:10px;font-size:clamp(1.6rem,6vw,2.1rem);font-weight:700;line-height:1.25}.auth-welcome-body{color:var(--text-mid);text-align:center;margin-bottom:20px;font-size:1.2rem;line-height:1.6}.auth-hero-image{box-sizing:border-box;border-radius:16px;width:calc(100% - 16px);max-width:420px;height:auto;margin:0 auto 24px;display:block}.auth-grandma-photo{width:182px;height:auto;box-shadow:var(--shadow-md);border-radius:20px;margin-bottom:24px}.auth-trial-note{color:#0a6e6b;text-align:center;margin-top:10px;margin-bottom:4px;font-size:1rem;font-style:italic}.auth-btn-primary{background:var(--teal);width:100%;color:var(--white);border:3px solid var(--navy);text-align:center;cursor:pointer;box-shadow:var(--shadow-md);-webkit-text-stroke:1px #000;paint-order:stroke fill;border-radius:18px;margin-bottom:12px;padding:20px 24px;font-family:inherit;font-size:1.25rem;font-weight:700;text-decoration:none;transition:background .15s,transform .12s,box-shadow .12s;display:block}.auth-btn-primary:hover{background:var(--teal-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.auth-btn-primary:active{transform:translateY(0)}.auth-btn-primary:disabled{box-shadow:none;cursor:not-allowed;-webkit-text-stroke:0;background:#a0d8d6;border-color:#888;transform:none}.auth-btn-secondary{color:#0a6e6b;text-align:center;cursor:pointer;background:0 0;border:2px solid #000;border-radius:18px;width:100%;margin-bottom:8px;padding:16px 24px;font-family:inherit;font-size:1.1rem;font-weight:600;transition:background .15s;display:block}.auth-btn-secondary:hover{background:var(--teal-pale)}.auth-field-group{width:100%;margin-bottom:20px}.auth-label{color:var(--text-dark);margin-bottom:6px;font-size:1.15rem;font-weight:700;display:block}.auth-label-hint{color:var(--text-mid);margin-bottom:12px;font-size:.95rem;font-style:italic}.auth-input{width:100%;color:var(--text-dark);background:var(--white);box-shadow:var(--shadow-sm);border:3px solid #000;border-radius:14px;outline:none;padding:18px 16px;font-family:inherit;font-size:1.3rem;transition:border-color .15s}.auth-input:focus{border-color:#000}.auth-input:disabled{color:#999;background:#f5f5f5}.auth-error{color:#b00020;text-align:center;background:#fff0f0;border:2px solid #f0a0a0;border-radius:12px;width:100%;margin-bottom:16px;padding:14px 16px;font-size:1.1rem;font-weight:600;line-height:1.5}.auth-trial-info-box{color:#0a6e6b;text-align:center;background:#e0f9f7;border:2px solid #5cdad6;border-radius:14px;flex-direction:column;gap:6px;width:100%;margin-bottom:20px;padding:16px 18px;font-size:1.05rem;line-height:1.55;display:flex}.pin-trial-note{color:#555;text-align:center;width:100%;margin:10px 0 0;font-size:.95rem;line-height:1.55}.pin-trial-note strong{color:#0a6e6b}.auth-already-tried{flex-direction:column;align-items:center;gap:8px;width:100%;display:flex}.auth-already-icon{margin-bottom:4px;font-size:3.5rem}.auth-already-title{color:var(--teal-heading);margin-bottom:8px;font-size:1.8rem;font-weight:700}.auth-already-body{color:var(--text-mid);text-align:center;margin-bottom:20px;font-size:1.1rem;line-height:1.6}.auth-lockout-icon{text-align:center;margin-bottom:8px;font-size:3.5rem}.pin-pad{flex-direction:column;align-items:center;gap:20px;width:100%;display:flex}.pin-dots{justify-content:center;gap:20px;display:flex}@keyframes pin-dot-pop{0%{opacity:.5;transform:scale(.6)}55%{transform:scale(1.35)}80%{transform:scale(1)}to{opacity:1;transform:scale(1.15)}}.pin-dot{border:3px solid var(--teal-dark);background:0 0;border-radius:50%;width:22px;height:22px;transition:background .12s}.pin-dot-filled{background:var(--teal);border-color:var(--teal-dark);animation:.25s ease-out forwards pin-dot-pop}.pin-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:320px;display:grid}.pin-key{aspect-ratio:1;background:var(--white);min-height:72px;color:var(--text-dark);cursor:pointer;box-shadow:var(--shadow-sm);border:2.5px solid #000;border-radius:16px;justify-content:center;align-items:center;font-family:inherit;font-size:1.8rem;font-weight:700;transition:background .1s,transform .1s,box-shadow .1s;display:flex}.pin-key:hover{background:var(--teal-pale);border-color:var(--teal-dark);box-shadow:var(--shadow-md);transform:translateY(-1px)}.pin-key:active{background:var(--teal);color:var(--white);transform:scale(.95)}.pin-key:disabled{opacity:.5;cursor:not-allowed}.pin-key-back{color:var(--text-mid);flex-direction:column;gap:2px;font-size:1.3rem}.pin-key-back-label{letter-spacing:.03em;font-size:.6rem;font-weight:700;line-height:1}.trial-banner{text-align:center;background:#e0f9f7;border:2.5px solid #000;border-radius:16px;flex-direction:column;align-items:center;gap:8px;width:calc(100% - 28px);max-width:452px;margin:14px auto 0;padding:12px 16px;display:flex}.trial-banner-warning{background:#fff3cd;border-color:#000}.trial-banner-text{color:#0a5e5c;font-size:.95rem;line-height:1.45}.trial-banner-warning .trial-banner-text{color:#7a4f00}.trial-banner-btn{background:var(--teal);color:var(--white);border:2px solid var(--teal-dark);cursor:pointer;border-radius:20px;padding:8px 20px;font-family:inherit;font-size:.9rem;font-weight:700;transition:background .15s}.trial-banner-warning .trial-banner-btn{background:var(--gold);border-color:var(--gold-dark);color:var(--navy)}.trial-banner-btn:hover{background:var(--teal-dark);color:var(--white)}.expired-screen .auth-screen-title{color:#7b4fa6;-webkit-text-stroke:1.5px #000;paint-order:stroke fill;font-size:clamp(1.05rem,4.2vw,1.4rem)}.expired-haley-photo{width:100%;max-width:340px;height:auto;box-shadow:var(--shadow-md);border:3px solid #000;border-radius:16px;margin-bottom:20px}.expired-subscribe-btn{background:#7b4fa6!important;border-width:4px!important;border-color:#000!important}.expired-subscribe-btn:hover{background:#5e3180!important}.expired-back-btn{color:#888;cursor:pointer;background:0 0;border:none;border-radius:8px;margin-top:8px;padding:8px 12px;font-family:inherit;font-size:.9rem;transition:color .15s}.expired-back-btn:hover{color:#444}.subscribe-price-card{background:var(--white);text-align:center;width:100%;box-shadow:var(--shadow-md);border:2.5px solid #111;border-radius:20px;margin-bottom:24px;padding:24px 20px}.subscribe-price{color:var(--teal-heading);font-size:2.55rem;font-weight:700;line-height:1}.subscribe-price-period{color:var(--text-mid);margin-bottom:20px;font-size:1rem}.subscribe-features{text-align:left;flex-direction:column;gap:10px;padding:0;list-style:none;display:flex}.subscribe-features li{color:var(--text-dark);background:#fff;border:2px solid #111;border-radius:10px;padding:10px 14px;font-size:1.1rem;line-height:1.45}.subscribe-coming-soon{text-align:center;background:#fffbf0;border:2px solid #f0d080;border-radius:18px;width:100%;margin-bottom:20px;padding:24px 20px}.subscribe-setup-icon{margin-bottom:8px;font-size:2.5rem}.subscribe-setup-text{color:var(--text-dark);margin-bottom:10px;font-size:1.2rem}.subscribe-setup-sub{color:var(--text-mid);margin-bottom:20px;font-size:1.05rem;line-height:1.6}.subscribe-email-btn{text-decoration:none;display:inline-block}.subscribe-error{color:#c0392b;text-align:center;background:#fdecea;border-radius:8px;width:100%;padding:.75rem 1rem;font-size:1rem}.app{padding:0}.app.landing{flex-direction:column;align-items:stretch;padding:0;display:flex}.home-illus-wrap{background:#f5e6c0;width:100%;margin-top:16px;line-height:0;position:relative;overflow:hidden}.home-illus{box-sizing:border-box;border:3px solid #3b0764;border-radius:4px;width:100%;height:auto;display:block}.landing-body{background:#fdf8f2;flex-direction:column;align-items:center;gap:0;padding:28px 20px 40px;display:flex}.home-btn-stack{flex-direction:column;gap:16px;width:100%;max-width:480px;display:flex}.smarty-pants-label{color:#000;text-align:center;letter-spacing:.01em;margin-bottom:4px;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:1.65rem;font-weight:800;display:block}.smarty-pants-inline{color:#ffffffeb;letter-spacing:.03em;margin-top:2px;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:1rem;font-weight:700;display:block}.home-btn{cursor:pointer;text-align:left;box-sizing:border-box;border-radius:22px;align-items:center;gap:12px;width:100%;height:80px;padding:14px 14px 14px 12px;font-family:inherit;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 16px #0000001a}.home-btn:hover{transform:translateY(-3px);box-shadow:0 6px 20px #00000026}.home-btn:active{transform:translateY(0)}.home-btn-purple{background:#d0eeff;border:2.5px solid #1a6fa8}.home-btn-pink{background:#fde8f0;border:2.5px solid #3b0764}.home-btn-gold{background:#fef3c7;border:2.5px solid #3b0764}.home-btn-icon-wrap{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:1.4rem;line-height:1;display:flex}.home-btn-icon-purple{background:#a8d8f8}.home-btn-icon-pink{background:#f8b5d0}.home-btn-icon-gold{background:#fcd34d}.home-btn-text{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.home-btn-title{color:#2a1a5e;font-size:clamp(1.05rem,4.5vw,1.25rem);font-weight:700;line-height:1.2}.home-btn-sub{color:#5a4a7a;font-size:clamp(.99rem,4.24vw,1.11rem);line-height:1.35}.home-btn-chevron{color:#9580b8;flex-shrink:0;font-size:2.2rem;font-weight:300;line-height:1}.home-btn-gold .home-btn-title{color:#3a2000}.home-btn-gold .home-btn-sub{color:#7a5a20}.home-btn-gold .home-btn-chevron{color:#b45309}.home-btn-pink .home-btn-title{color:#5a0a2a}.home-btn-pink .home-btn-sub{color:#8a3060}.home-btn-pink .home-btn-chevron{color:#c0306a}.feedback-banner{width:100%;max-width:480px;margin:24px 0 0}.mailbox-modal{border-top:5px solid #7c5cb8}.mailbox-modal-header{text-align:center;flex-direction:column;align-items:center;margin-bottom:20px;display:flex;position:relative}.mailbox-modal-x{color:#aaa;cursor:pointer;background:0 0;border:none;border-radius:6px;padding:4px 6px;font-size:1.1rem;line-height:1;transition:color .15s,background .15s;position:absolute;top:0;right:0}.mailbox-modal-x:hover{color:#555;background:#f0f0f0}.mailbox-modal-icon{margin-bottom:8px;font-size:3rem}.mailbox-modal-title{color:#5c3d8f;margin-bottom:4px;font-size:1.5rem;font-weight:700;line-height:1.25}.mailbox-modal-date{color:#888;font-size:.9rem;font-style:italic}.mailbox-modal-greeting{color:#2a1a5e;margin-bottom:12px;font-size:1.25rem;font-weight:700}.mailbox-modal-body{color:#4a3a6a;margin-bottom:20px;font-size:1.15rem;line-height:1.7}.mailbox-modal-sign{color:#7c5cb8;text-align:right;font-size:1.1rem;font-style:italic;font-weight:600}.mailbox-modal-footer{border-top-color:#e0d0f8!important}.mailbox-modal-close{background:#7c5cb8!important;border-color:#5c3d8f!important}.mailbox-modal-close:hover{background:#5c3d8f!important}.mailbox-note-card{background:#fdf6e3;border:1px solid #e8d9a0;border-radius:12px;margin-bottom:14px;padding:16px 18px}.mailbox-note-subject{color:#3a2d00;margin:0 0 4px;font-size:1rem;font-weight:700}.mailbox-note-sent{color:#9a8040;margin:0 0 10px;font-size:.78rem}.mailbox-note-body{color:#4a3800;white-space:pre-wrap;margin:0;font-size:.95rem;line-height:1.6}.mailbox-home-btn{cursor:pointer;text-align:left;background:#f5f5f5;border:2px solid #ddd;border-radius:14px;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:14px 18px;transition:background .18s,border-color .18s,transform .12s;display:flex;position:relative}.mailbox-home-btn:active{transform:scale(.98)}.mailbox-home-btn-new{background:#fffbea;border-color:#e8b800;box-shadow:0 2px 10px #e8b8002e}.mailbox-home-icon{flex-shrink:0;font-size:1.7rem}.mailbox-home-text{color:#444;flex:1;font-size:.95rem;font-weight:600}.mailbox-home-btn-new .mailbox-home-text{color:#7a5500}.mailbox-home-badge{color:#fff;background:#e53935;border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:.78rem;font-weight:700;display:flex}.mailbox-flag-btn{cursor:pointer;background:0 0;border:none;border-radius:4px;width:8%;height:10%;padding:0;transition:background .15s;position:absolute;top:18%;left:9%}.mailbox-flag-btn:hover,.mailbox-flag-btn:focus-visible{background:#ffffff40;outline:2px solid #fff9}.mailbox-flag-btn-new{animation:1.8s ease-in-out infinite flag-pulse}@keyframes flag-pulse{0%,to{box-shadow:0 0 #e5393580}50%{box-shadow:0 0 0 8px #e5393500}}.mailbox-flag-badge{color:#fff;pointer-events:none;background:#e53935;border:2px solid #fff;border-radius:10px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 4px;font-size:.72rem;font-weight:700;display:flex;position:absolute;top:-8px;right:-8px;box-shadow:0 1px 4px #00000040}.admin-compose-btn{color:#777;cursor:pointer;background:0 0;border:1.5px dashed #aaa;border-radius:10px;margin:0 auto 10px;padding:8px 20px;font-size:.85rem;transition:color .15s,border-color .15s;display:block}.admin-compose-btn:hover{color:#444;border-color:#666}.compose-modal{max-width:480px!important}.compose-modal-title{color:#2c2c2c;margin:0 0 6px;font-size:1.15rem;font-weight:700}.compose-modal-sub{color:#777;margin:0 0 20px;font-size:.88rem}.compose-field{margin-bottom:16px}.compose-label{color:#555;margin-bottom:6px;font-size:.85rem;font-weight:600;display:block}.compose-input{box-sizing:border-box;border:1.5px solid #ddd;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:.95rem;transition:border-color .15s}.compose-input:focus{border-color:#5cdad6}.compose-textarea{resize:vertical;box-sizing:border-box;border:1.5px solid #ddd;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-family:inherit;font-size:.95rem;line-height:1.55;transition:border-color .15s}.compose-textarea:focus{border-color:#5cdad6}.compose-error{color:#c0392b;margin:8px 0 0;font-size:.88rem}.compose-modal-footer{border-top:1px solid #eee;gap:10px;padding-top:14px;display:flex}.compose-cancel-btn{cursor:pointer;color:#555;background:#fff;border:1.5px solid #ddd;border-radius:10px;flex:1;padding:12px;font-size:.95rem}.compose-send-btn{color:#fff;cursor:pointer;background:#5cdad6;border:none;border-radius:10px;flex:2;padding:12px;font-size:.95rem;font-weight:700;transition:background .15s,opacity .15s}.compose-send-btn:disabled{opacity:.5;cursor:not-allowed}.compose-send-btn:not(:disabled):hover{background:#3cbfbb}.ama-screen,.ama-screen button,.ama-screen textarea,.ama-screen input{font-family:inherit}.ama-screen{background:var(--cream);flex-direction:column;width:100%;max-width:480px;min-height:100vh;margin:0 auto;font-family:inherit;display:flex}.ama-header{background:var(--teal);border:2.5px solid #000;border-radius:16px;flex-shrink:0;align-items:flex-start;gap:16px;margin:14px 14px 0;padding:20px 20px 24px;display:flex}.ama-back-btn{color:#fff;cursor:pointer;background:#ffffff40;border:2px solid #fff9;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;gap:6px;width:auto;height:56px;margin-top:4px;padding:0 16px;font-family:inherit;font-size:1.05rem;font-weight:700;line-height:1;transition:background .15s;display:flex}.ama-back-btn:hover{background:#fff6}.ama-title{color:#fff;-webkit-text-stroke:1px #00000040;paint-order:stroke fill;font-size:clamp(1.5rem,6vw,2rem);font-weight:700;line-height:1.25}.ama-title-sub{-webkit-text-stroke:.5px #00000026;font-size:clamp(1.15rem,5vw,1.5rem);font-weight:600}.ama-messages{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:20px;padding:24px 16px 16px;display:flex;overflow-y:auto}.ama-messages--suggestions{flex:unset;overflow:visible}.ama-empty{flex:1;justify-content:center;align-items:center;padding:40px 16px;display:flex}.ama-empty-text{color:var(--teal-heading);text-align:center;font-size:1.6rem;font-style:normal;font-weight:700;line-height:1.5}.ama-bubble-wrap{align-items:flex-end;gap:10px;display:flex}.ama-bubble-wrap-user{flex-direction:row-reverse}.ama-avatar{border:2px solid #5cdad6;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex;overflow:hidden}.ama-bubble{max-width:80%;color:var(--text-dark);white-space:pre-wrap;border-radius:22px;padding:18px 20px;font-size:1.2rem;line-height:1.65}.ama-bubble-user{background:var(--teal);color:#fff;border-bottom-right-radius:6px}.ama-bubble-assistant{box-shadow:var(--shadow-sm);background:#fff;border:2px solid #ccf8f5;border-bottom-left-radius:6px}.ama-bubble-thinking{align-items:center;gap:8px;padding:20px 24px;display:flex}@keyframes ama-bounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-8px)}}.ama-dot{background:var(--teal);border-radius:50%;width:12px;height:12px;animation:1.2s ease-in-out infinite ama-bounce;display:inline-block}.ama-dot:nth-child(2){animation-delay:.2s}.ama-dot:nth-child(3){animation-delay:.4s}.ama-error{color:#b00020;text-align:center;background:#fff0f0;border:2px solid #f0a0a0;border-radius:14px;padding:16px 18px;font-size:1.15rem;line-height:1.5}.ama-input-area{background:#fff;border-top:3px solid #ccf8f5;flex-direction:column;flex-shrink:0;gap:12px;padding:14px 16px 16px;display:flex}.ama-input-hint{color:#111;text-align:center;font-size:1.2rem;font-weight:700;line-height:1.4}.ama-photo-attach{background:var(--teal-pale);border:2px solid var(--teal);border-radius:14px;align-items:center;gap:12px;padding:10px 14px;display:flex}.ama-photo-thumb{object-fit:cover;border:2px solid var(--teal-dark);border-radius:10px;flex-shrink:0;width:64px;height:64px}.ama-photo-attach-label{color:var(--teal-heading);flex:1;font-size:1.05rem;font-weight:600}.ama-photo-remove{border:2px solid var(--teal-dark);width:auto;height:auto;color:var(--teal-dark);cursor:pointer;background:#fff;border-radius:20px;flex-shrink:0;justify-content:center;align-items:center;padding:6px 12px;font-family:inherit;font-size:1rem;font-weight:700;transition:background .15s;display:flex}.ama-photo-remove:hover{background:var(--teal-pale)}.ama-textarea{width:100%;color:var(--text-dark);background:var(--cream);resize:none;box-shadow:var(--shadow-sm);border:3px solid #5cdad6;border-radius:18px;outline:none;padding:18px 16px;font-family:inherit;font-size:1.25rem;line-height:1.55;transition:border-color .15s}.ama-textarea:focus{border-color:var(--teal-dark)}.ama-textarea:disabled{opacity:.6}.ama-textarea::placeholder{color:#a0b0b0}.ama-input-actions{align-items:flex-end;gap:12px;display:flex}.ama-send-btn{background:var(--teal);color:#fff;cursor:pointer;box-shadow:var(--shadow-md);border:3px solid #111;border-radius:18px;flex:1;padding:14px;font-family:inherit;font-size:1.1rem;font-weight:700;transition:background .15s,transform .12s}.ama-send-btn:hover:not(:disabled){background:var(--teal-dark);transform:translateY(-2px)}.ama-send-btn:active:not(:disabled){transform:translateY(0)}.ama-send-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.ama-camera-wrap{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.ama-camera-btn{background:var(--teal-pale);width:80px;height:80px;color:var(--teal-heading);cursor:pointer;box-shadow:var(--shadow-sm);border:3px solid #111;border-radius:18px;justify-content:center;align-items:center;transition:background .15s,transform .12s;display:flex}.ama-camera-btn:hover:not(:disabled){background:var(--teal);color:#fff;transform:translateY(-2px)}.ama-camera-btn:active:not(:disabled){transform:translateY(0)}.ama-camera-btn:disabled{opacity:.45;cursor:not-allowed}.ama-camera-label{color:#111;text-align:center;font-size:.9rem;font-weight:700;line-height:1.2}.ama-bubble-photo{border:2px solid #ffffff80;border-radius:12px;width:100%;max-width:220px;margin-bottom:8px;display:block}.ama-bubble-photo-caption{margin:0;font-size:1.1rem}.ama-end-visit-wrap{background:#fff;border-top:2px solid #ccf8f5;flex-shrink:0;padding:14px 16px 28px}.ama-suggestions-wrap{flex-direction:column;gap:16px;padding:20px 4px 8px;display:flex}.ama-suggestions-intro{color:var(--text-mid);text-align:center;padding:0 4px;font-size:1.15rem;line-height:1.6}.ama-suggestions-list{flex-direction:column;gap:10px;display:flex}@keyframes ama-suggestion-in{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.ama-suggestion-btn{cursor:pointer;width:100%;box-shadow:var(--shadow-sm);text-align:left;border-style:solid;border-width:2.5px;border-radius:18px;align-items:center;gap:14px;padding:16px 18px;font-family:inherit;font-size:1.1rem;font-weight:600;line-height:1.45;transition:transform .15s,box-shadow .15s;animation:.38s both ama-suggestion-in;display:flex}.ama-suggestion-btn:hover:not(:disabled){box-shadow:var(--shadow-md);transform:translateY(-3px)}.ama-suggestion-btn:active:not(:disabled){transform:translateY(0)}.ama-suggestion-btn:disabled{opacity:.5;cursor:not-allowed}.ama-suggestion-teal{color:#0a5e5c;background:#e0f9f7;border-color:#1a1a1a}.ama-suggestion-teal .ama-suggestion-icon{background:#ffffffa6}.ama-suggestion-teal:hover:not(:disabled){background:#c4f4f0}.ama-suggestion-gold{color:#7a5a00;background:#fdf0c7;border-color:#1a1a1a}.ama-suggestion-gold .ama-suggestion-icon{background:#ffffffa6}.ama-suggestion-gold:hover:not(:disabled){background:#fbe5a0}.ama-suggestion-pink{color:#9c2151;background:#fde8f0;border-color:#1a1a1a}.ama-suggestion-pink .ama-suggestion-icon{background:#ffffffa6}.ama-suggestion-pink:hover:not(:disabled){background:#fbd0e4}.ama-suggestion-purple{color:#4a1e8a;background:#f0eaff;border-color:#1a1a1a}.ama-suggestion-purple .ama-suggestion-icon{background:#ffffffa6}.ama-suggestion-purple:hover:not(:disabled){background:#e2d4ff}@keyframes ama-own-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.ama-suggestion-btn-own{color:#fff;background:#f0127a;border-color:#1a1a1a;font-size:1.15rem;font-weight:700;animation:1.4s ease-in-out infinite ama-own-bounce}.ama-suggestion-btn-own .ama-suggestion-icon{background:#ffffff40}.ama-suggestion-btn-own:hover:not(:disabled){background:#c90060;border-color:#1a1a1a;animation-play-state:paused}.ama-suggestion-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.6rem;line-height:1;display:flex}.ama-suggestion-text{flex:1}.ama-end-visit-btn{color:#0a6e6b;cursor:pointer;width:100%;box-shadow:var(--shadow-sm);background:0 0;border:3px solid #111;border-radius:18px;padding:22px;font-family:inherit;font-size:1.3rem;font-weight:700;transition:background .15s,color .15s,transform .12s}.ama-end-visit-btn:hover{background:var(--teal-pale);transform:translateY(-2px)}.ama-end-visit-btn:active{transform:translateY(0)}.nav-btn-row{gap:12px;width:100%;margin:20px 0 28px;display:flex}.nav-btn-row-auth{margin-bottom:20px}.nav-btn{cursor:pointer;min-height:56px;box-shadow:var(--shadow-sm);border-radius:16px;flex:1;padding:16px 20px;font-family:inherit;font-size:1.2rem;font-weight:700;transition:transform .12s,box-shadow .12s}.nav-btn:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.nav-btn:active{transform:translateY(0)}.nav-btn-back{color:#4a2080;background:#f5f0ff;border:2.5px solid #7c5cb8}.nav-btn-row-auth .nav-btn-back{border-radius:10px;flex:none;min-height:0;padding:8px 14px;font-size:.85rem;font-weight:600}@keyframes scroll-hint-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@keyframes scroll-hint-fade-in{0%{opacity:0}to{opacity:1}}.scroll-hint{color:#fff;pointer-events:none;z-index:9999;background:#0a1e3cc7;border-radius:40px;flex-direction:column;align-items:center;gap:4px;padding:10px 22px 12px;animation:.4s both scroll-hint-fade-in;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.scroll-hint-label{letter-spacing:.02em;font-size:1rem;font-weight:700;line-height:1}.scroll-hint-arrow{font-size:1.25rem;line-height:1;animation:1s ease-in-out infinite scroll-hint-bounce}.nav-btn-back:hover{background:#ede0ff}.nav-btn-next{background:var(--teal);color:#fff;border:2.5px solid var(--teal-dark)}.nav-btn-next:hover{background:var(--teal-dark)}.home-btn-lavender{background:#c9b1e8;border:2.5px solid #3b0764}.home-btn-icon-lavender{background:#b090d8}.home-btn-lavender .home-btn-title{color:#2a0060}.home-btn-lavender .home-btn-sub{color:#5a3a90}.home-btn-lavender .home-btn-chevron{color:#7b5ea7}.home-tell-more-btn{color:#2a0060;cursor:pointer;text-align:center;background:#c9b1e8;border:2px solid #000;border-radius:20px;align-self:center;width:50%;max-width:240px;margin-top:-4px;padding:7px 12px;font-family:inherit;font-size:.75rem;font-weight:700;transition:background .15s}.home-tell-more-btn:hover{background:#f5eeff}.modal-title-lavender{color:#5c3d8f}.modal-close-lavender{color:#fff;background:#9b72d0;border-color:#7b5ea7}.modal-close-lavender:hover{background:#7b5ea7}.magic-screen{background:#faf6ff;flex-direction:column;width:100%;max-width:480px;min-height:100vh;margin:0 auto;display:flex}.magic-screen-center{justify-content:center;align-items:center}.magic-header{padding:20px;padding-top:max(24px, calc(env(safe-area-inset-top,0px) + 20px));background:linear-gradient(135deg,#9b72d0 0%,#7b5ea7 100%);border-bottom:2.5px solid #000;border-radius:20px 20px 0 0;flex-shrink:0;align-items:center;gap:14px;margin-top:20px;display:flex}.magic-header-back{color:#fff;cursor:pointer;white-space:nowrap;background:#fff3;border:none;border-radius:20px;flex-shrink:0;padding:8px 14px;font-size:1rem;font-weight:700;transition:background .15s}.magic-header-back:hover{background:#ffffff59}.magic-header-icon{font-size:2rem;line-height:1}.magic-header-title{color:#fff;-webkit-text-stroke:.5px #0003;paint-order:stroke fill;background:#ffffff2e;border:2.5px solid #000;border-radius:999px;padding:6px 18px;font-size:clamp(1.3rem,5.5vw,1.7rem);font-weight:700;line-height:1.2}.magic-body{flex-direction:column;gap:0;padding:28px 20px 48px;display:flex}.magic-body-action{padding-bottom:40px}.magic-body-result{align-items:center;gap:16px}.magic-intro{color:#3a2060;margin-bottom:4px;font-size:1.2rem;font-weight:600;line-height:1.55}.magic-photo-choices{flex-direction:column;gap:16px;margin-top:8px;display:flex}.magic-photo-choice-btn{cursor:pointer;text-align:left;width:100%;min-height:88px;box-shadow:var(--shadow-sm);background:#fff;border:2.5px solid #000;border-radius:20px;align-items:center;gap:20px;padding:24px 20px;font-family:inherit;transition:transform .15s,box-shadow .15s,background .15s;display:flex}.magic-photo-choice-btn:hover{box-shadow:var(--shadow-md);background:#f5eeff;transform:translateY(-3px)}.magic-photo-choice-btn:active{transform:translateY(0)}.magic-photo-choice-icon{flex-shrink:0;font-size:2.2rem;line-height:1}.magic-photo-choice-label{color:#3a2060;font-size:1.2rem;font-weight:700;line-height:1.3}.magic-thumb-wrap{justify-content:center;width:100%;margin-bottom:16px;display:flex}.magic-thumb{object-fit:cover;width:100px;height:100px;box-shadow:var(--shadow-md);border:3px solid #9b72d0;border-radius:16px}.magic-error{color:#b00020;text-align:center;background:#fff0f0;border:2px solid #f0a0a0;border-radius:14px;margin-bottom:16px;padding:14px 16px;font-size:1.1rem;line-height:1.5}.magic-ideas-list{flex-direction:column;gap:20px;margin-bottom:24px;display:flex}.magic-idea-section{flex-direction:column;gap:8px;display:flex}.magic-idea-section-title{color:#7b5ea7;letter-spacing:.3px;border-bottom:2px solid #e0d0f8;margin-bottom:4px;padding-bottom:4px;font-size:1.05rem;font-weight:700}.magic-idea-chip{color:#3a2060;text-align:left;cursor:pointer;background:#fff;border:2px solid #d0b8f0;border-radius:12px;width:100%;padding:14px 16px;font-family:inherit;font-size:1.1rem;line-height:1.4;transition:background .12s,border-color .12s,transform .1s}.magic-idea-chip:hover{background:#f0e6ff;border-color:#9b72d0;transform:translate(4px)}.magic-idea-chip-selected{background:#e8d8ff;border-width:2.5px;border-color:#7b5ea7;font-weight:700}.magic-custom-wrap{margin-bottom:24px}.magic-custom-label{color:#3a2060;margin-bottom:8px;font-size:1.05rem;font-weight:700;display:block}.magic-custom-textarea{width:100%;color:var(--text-dark);resize:none;box-shadow:var(--shadow-sm);background:#fff;border:2.5px solid #9b72d0;border-radius:14px;outline:none;padding:16px;font-family:inherit;font-size:1.15rem;line-height:1.5;transition:border-color .15s}.magic-custom-textarea:focus{border-color:#7b5ea7}.magic-custom-textarea-large{border-width:3px;min-height:100px;padding:20px 18px;font-size:1.25rem}.magic-custom-textarea::placeholder{color:#b090c0}.magic-create-btn{color:#fff;cursor:pointer;width:100%;min-height:64px;box-shadow:var(--shadow-md);background:#9b72d0;border:3px solid #000;border-radius:18px;margin-bottom:8px;padding:18px 24px;font-family:inherit;font-size:1.25rem;font-weight:700;transition:background .15s,transform .12s,box-shadow .12s}.magic-surprises-btn{color:#fff;cursor:pointer;width:100%;min-height:88px;box-shadow:var(--shadow-sm);letter-spacing:.01em;text-align:left;background:linear-gradient(135deg,#f9a825,#f06292);border:2.5px solid #000;border-radius:20px;align-items:center;gap:16px;margin-top:24px;padding:24px 20px;font-family:inherit;font-size:1.2rem;font-weight:700;transition:background .15s,transform .12s,box-shadow .12s;display:flex}.magic-surprises-btn:hover{box-shadow:var(--shadow-lg);background:linear-gradient(135deg,#f06292,#f9a825);transform:translateY(-2px)}.magic-surprises-btn .magic-photo-choice-label{color:#fff}.magic-surprises-panel{background:#fff8f0;border:2px solid #f9a825;border-radius:16px;flex-direction:column;gap:10px;margin-bottom:16px;padding:16px;animation:.2s fadeIn;display:flex}.magic-surprises-label{color:#b03060;text-align:center;margin:0 0 10px;font-size:1rem;font-weight:700}.magic-surprise-idea-row{border-bottom:1px solid #f9d0e0;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.magic-surprise-idea-row:last-child{border-bottom:none}.magic-surprise-idea-bullet{flex-shrink:0;margin-top:2px;font-size:1.1rem}.magic-surprise-idea-text{color:#5c3d8f;font-size:1.05rem;font-weight:600;line-height:1.4}.magic-body-surprises{gap:0;padding:0}.magic-surprises-intro{color:#5c3d8f;text-align:center;padding:20px 20px 8px;font-size:1.1rem;font-weight:700;line-height:1.4}.showcase-card{background:#faf8f5;border-bottom:3px solid #000;margin-bottom:0;overflow:hidden}.showcase-img-wrap{background:#e9e0f8;border:2px solid #000;border-radius:12px;width:calc(100% - 32px);margin:12px 16px 0;position:relative;overflow:hidden}.showcase-img-wrap--cropped{aspect-ratio:5/3}.showcase-img{width:100%;height:auto;display:block}.showcase-img-wrap--cropped .showcase-img{object-fit:cover;object-position:top;height:100%}.showcase-img-fallback{background:linear-gradient(135deg,#e0c8ff,#ffd0e8);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.showcase-img-fallback-emoji{opacity:.6;font-size:5rem}.showcase-story{padding:8px 12px 12px}.showcase-prompt-label{color:#7b5ea7;letter-spacing:.02em;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:.82rem;font-weight:800}.showcase-star{color:#f9a825}.showcase-prompt-box{color:#222;background:#fff;border:2px solid #9b72d0;border-radius:10px;padding:7px 10px;font-family:Nunito,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;font-size:.8rem;font-weight:700;line-height:1.5}.magic-surprises-try-btn{width:calc(100% - 40px);margin:20px 20px 32px}.magic-create-btn:hover:not(:disabled){box-shadow:var(--shadow-lg);background:#7b5ea7;transform:translateY(-2px)}.magic-create-btn:active:not(:disabled){transform:translateY(0)}.magic-create-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.magic-save-btn{color:#7b5ea7;cursor:pointer;background:0 0;border:2.5px solid #9b72d0;border-radius:16px;width:100%;min-height:56px;margin-bottom:4px;padding:16px 24px;font-family:inherit;font-size:1.15rem;font-weight:700;transition:background .15s}.magic-save-btn:hover{background:#f0e6ff}.magic-menu-btn{margin-top:8px}.magic-another-btn{background:#9b72d0}.magic-another-btn:hover{background:#7b5ea7}.magic-save-confirmed{color:#1b5e20;text-align:center;background:#e6f9ec;border:2.5px solid #4caf50;border-radius:16px;width:100%;margin-bottom:8px;padding:18px 24px;font-size:1.2rem;font-weight:700;line-height:1.4}.magic-save-tip{color:#5d4037;text-align:center;background:#fff8e1;border:2px solid #f9a825;border-radius:14px;width:100%;margin-top:6px;padding:14px 20px;font-size:1.1rem;line-height:1.5}.magic-save-tip strong{color:#e65100}.magic-screenshot-help-link{color:#5a7a8a;cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:4px;padding:8px 0;font-family:inherit;font-size:1rem;text-decoration:underline}.magic-screenshot-help-link:hover{color:#2a5a6a}.magic-result-image{width:100%;max-width:420px;height:auto;box-shadow:var(--shadow-lg);border:3px solid #9b72d0;border-radius:18px;margin-bottom:8px;display:block}.magic-generating-wrap{text-align:center;flex-direction:column;align-items:center;gap:28px;padding:40px 28px;display:flex}.magic-generating-icon{font-size:4rem;animation:1.5s ease-in-out infinite magicPulse}@keyframes magicPulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.2)}}.magic-generating-text{color:#5c3d8f;font-size:1.4rem;font-weight:700;line-height:1.5}.magic-spinner{align-items:center;gap:12px;display:flex}.magic-spinner-dot{background:#9b72d0;border-radius:50%;width:16px;height:16px;animation:1.2s ease-in-out infinite magicBounce}.magic-spinner-dot:nth-child(2){animation-delay:.2s}.magic-spinner-dot:nth-child(3){animation-delay:.4s}@keyframes magicBounce{0%,80%,to{opacity:.5;transform:translateY(0)}40%{opacity:1;transform:translateY(-12px)}}.magic-limit-wrap{text-align:center;flex-direction:column;align-items:center;gap:24px;padding:40px 28px;display:flex}.magic-limit-icon{font-size:4rem}.magic-limit-text{color:#3a2060;font-size:1.25rem;font-weight:600;line-height:1.65}.ttg-layout{height:100dvh;display:flex;position:relative}.ttg-screen{background:#fff8fb;flex-direction:column;flex:1;min-width:0;height:100dvh;font-family:inherit;display:flex}.ttg-header{background:var(--pink);color:#fff;flex-shrink:0;align-items:center;gap:12px;padding:14px 16px 12px;display:flex;box-shadow:0 2px 8px #f0629240}.ttg-back-btn{color:#fff;cursor:pointer;background:#ffffff38;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:auto;height:44px;padding:0 14px;font-family:inherit;font-size:1.05rem;font-weight:700;transition:background .15s;display:flex}.ttg-back-btn:hover{background:#ffffff59}.ttg-header-text{flex:1}.ttg-title{margin:0;font-size:1.25rem;font-weight:700;line-height:1.2}.ttg-subtitle{opacity:.92;margin:2px 0 0;font-size:.95rem}.ttg-header-heart{flex-shrink:0;font-size:1.6rem}.ttg-messages{flex-direction:column;flex:1;gap:12px;padding:16px 14px;display:flex;overflow-y:auto}.ttg-empty{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:32px 16px;display:flex}.ttg-empty-avatar{background:var(--pink-pale);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 2px 10px #f0629233}.ttg-empty-text{color:var(--text-mid);max-width:300px;font-size:1.1rem;line-height:1.6}.ttg-bubble-wrap{align-items:flex-end;gap:8px;display:flex}.ttg-bubble-wrap-user{flex-direction:row-reverse}.ttg-avatar{background:var(--pink-pale);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.ttg-bubble{border-radius:18px;max-width:80%;padding:12px 16px;font-size:1.05rem;line-height:1.55}.ttg-bubble-user{background:var(--pink);color:#fff;border-bottom-right-radius:4px}.ttg-bubble-assistant{color:var(--text-dark);background:#fff;border:1.5px solid #f8d0e0;border-bottom-left-radius:4px;box-shadow:0 1px 6px #f062921a}.ttg-thinking-wrap{flex-direction:column;gap:6px;display:flex}.ttg-thinking-hint{color:#8a90a0;margin:0;padding-left:4px;font-size:.78rem;font-style:italic}.ttg-bubble-thinking{align-items:center;gap:6px;padding:14px 20px;display:flex}.ttg-dot{background:var(--pink);border-radius:50%;width:8px;height:8px;animation:1.2s ease-in-out infinite ttgDotBounce;display:inline-block}.ttg-dot:nth-child(2){animation-delay:.2s}.ttg-dot:nth-child(3){animation-delay:.4s}@keyframes ttgDotBounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-6px)}}.ttg-error{color:#b71c1c;text-align:center;background:#fff0f0;border:1.5px solid #e57373;border-radius:12px;padding:12px 16px;font-size:1rem}.ttg-input-area{background:#fff;border-top:1.5px solid #f8d0e0;flex-shrink:0;padding:12px 14px 8px}.ttg-textarea{resize:none;box-sizing:border-box;width:100%;color:var(--text-dark);background:#fff8fb;border:2px solid #f8d0e0;border-radius:14px;padding:12px 14px;font-family:inherit;font-size:1.05rem;line-height:1.5;transition:border-color .15s}.ttg-textarea:focus{border-color:var(--pink);outline:none}.ttg-textarea:disabled{opacity:.6}.ttg-input-actions{justify-content:center;align-items:center;gap:20px;margin-top:10px;display:flex}.ttg-send-btn{background:var(--pink);color:#fff;cursor:pointer;border:none;border-radius:14px;padding:14px 36px;font-size:1.15rem;font-weight:700;transition:background .15s,opacity .15s,transform .1s;box-shadow:0 3px 10px #e0457a4d}.ttg-send-btn:hover:not(:disabled){background:var(--pink-dark);transform:scale(1.03)}.ttg-send-btn:disabled{opacity:.45;cursor:not-allowed}.ttg-end-wrap{background:#fff;justify-content:center;padding:8px 14px 16px;display:flex}.ttg-end-btn{color:var(--pink-dark);cursor:pointer;background:0 0;border:2px solid #f8d0e0;border-radius:10px;padding:10px 32px;font-size:1rem;font-weight:600;transition:background .15s,border-color .15s}.ttg-end-btn:hover{background:var(--pink-pale);border-color:var(--pink)}.ttg-inline-speak{color:#c0392b;letter-spacing:.02em;cursor:pointer;background:#c0392b14;border:1.5px solid #c0392b38;border-radius:20px;align-items:center;gap:6px;margin-top:10px;padding:5px 12px 5px 8px;font-size:.82rem;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.ttg-inline-speak:hover{background:#c0392b26;border-color:#c0392b}.ttg-inline-speak--active{background:#c0392b24;border-color:#c0392b;animation:1.2s ease-in-out infinite ttg-pulse}@keyframes ttg-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.ttg-stop-speaking-btn{color:#e0457a;cursor:pointer;white-space:nowrap;background:#fff0f5;border:1.5px solid #e0457a;border-radius:20px;align-items:center;gap:5px;padding:6px 12px;font-size:.82rem;font-weight:700;transition:background .15s;display:inline-flex}.ttg-stop-speaking-btn:hover{background:#ffd6e7}.ttg-volume-bar{-webkit-user-select:none;user-select:none;background:#f5edf3;border-left:1.5px solid #e8d4e4;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:10px;width:64px;padding:20px 0;display:flex}.ttg-volume-icon{justify-content:center;align-items:center;display:flex}.ttg-volume-track-wrap{flex-shrink:0;justify-content:center;align-items:center;width:44px;height:200px;display:flex;position:relative}.ttg-volume-slider{writing-mode:vertical-lr;appearance:slider-vertical;cursor:pointer;z-index:2;accent-color:#c0392b;direction:rtl;background:0 0;width:44px;height:200px;position:relative}.ttg-volume-slider::-webkit-slider-runnable-track{background:#d9c8d5;border-radius:5px;width:10px}.ttg-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;cursor:pointer;background:#c0392b;border:3px solid #fff;border-radius:50%;width:36px;height:36px;margin-left:-13px;box-shadow:0 2px 8px #c0392b59}.ttg-volume-slider::-moz-range-thumb{cursor:pointer;background:#c0392b;border:3px solid #fff;border-radius:50%;width:36px;height:36px;box-shadow:0 2px 8px #c0392b59}.ttg-volume-slider::-moz-range-track{background:#d9c8d5;border-radius:5px;width:10px}.ttg-volume-label{letter-spacing:.08em;text-transform:uppercase;color:#8a6a7e;margin-top:4px;font-size:.65rem;font-weight:800}.tos-modal{flex-direction:column;max-height:88vh;display:flex}.tos-modal-header{border-bottom:2px solid var(--teal-pale);flex-shrink:0;padding:20px 48px 14px 20px;position:relative}.tos-modal-title{color:var(--teal-heading);font-size:1.25rem;font-weight:700}.tos-modal-sub{color:var(--text-mid);margin-top:2px;font-size:.85rem}.tos-modal-x{color:var(--text-mid);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 8px;font-family:inherit;font-size:1.1rem;line-height:1;transition:background .15s;position:absolute;top:14px;right:14px}.tos-modal-x:hover{background:var(--teal-pale)}.tos-modal-scroll{-webkit-overflow-scrolling:touch;flex:1;padding:16px 20px;overflow-y:auto}.tos-modal-footer{border-top:2px solid var(--teal-pale);flex-shrink:0}.tos-date{color:var(--text-mid);margin-bottom:10px;font-size:.82rem}.tos-intro{color:var(--text-dark);margin-bottom:16px;font-size:.95rem;font-style:italic;line-height:1.55}.tos-section-heading{color:var(--teal-heading);margin-top:18px;margin-bottom:6px;font-size:1rem;font-weight:700}.tos-body{color:var(--text-dark);margin-bottom:4px;font-size:.92rem;line-height:1.6}.tos-link{color:var(--teal-dark);text-decoration:underline}.tos-checkbox-row{width:100%;margin:12px 0 4px}.tos-checkbox-label{cursor:pointer;align-items:flex-start;gap:10px;display:flex}.tos-checkbox{width:22px;min-width:22px;height:22px;accent-color:var(--teal-dark);cursor:pointer;margin-top:2px}.tos-checkbox:disabled{cursor:not-allowed;opacity:.6}.tos-checkbox-text{color:var(--text-dark);font-size:.95rem;line-height:1.5}.tos-inline-link{font-family:inherit;font-size:inherit;color:var(--teal-dark);cursor:pointer;background:0 0;border:none;padding:0;font-weight:600;text-decoration:underline}.tos-inline-link:hover{color:var(--teal-heading)}.mic-wrap{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;display:flex}.mic-btn{cursor:pointer;background:#fff;border:3px solid #1a2744;border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;transition:background .18s,border-color .18s,transform .12s;display:inline-flex;box-shadow:0 3px 12px #00000026}.mic-btn:hover:not(:disabled){background:#f0faf8;border-color:#2a9d8f}.mic-btn:active:not(:disabled){transform:scale(.93)}.mic-btn:disabled{opacity:.4;cursor:not-allowed}.mic-btn--listening{background:#fde8f0;border-color:#e0457a;animation:1.1s ease-in-out infinite mic-pulse}@keyframes mic-pulse{0%,to{box-shadow:0 0 #e0457a66}55%{box-shadow:0 0 0 12px #e0457a00}}.mic-label{color:#1a2744;letter-spacing:.01em;white-space:nowrap;font-size:.8rem;font-weight:700}:is(.mic-btn--listening+.mic-label,.mic-wrap:has(.mic-btn--listening) .mic-label){color:#e0457a}.mic-row{flex-direction:column;align-items:center;gap:8px;margin:-8px 0 16px;display:flex}.ttg-input-hint{flex-direction:column;align-items:center;gap:2px;margin-top:6px;display:flex}.mic-instructions{color:#556;text-align:center;margin:4px 0 0;font-size:.82rem;font-weight:700;line-height:1.4}.mic-instructions--magic{max-width:260px}
