:root{--home-ease: cubic-bezier(.22, 1, .36, 1);--home-ease-out: cubic-bezier(.16, 1, .3, 1);--home-blue: #0ea5e9;--home-blue-soft: #f0f9ff;--home-shadow: 0 4px 24px rgba(14, 165, 233, .12);--home-shadow-lg: 0 20px 50px rgba(15, 23, 42, .08)}body{background:#fff!important;color:#111827!important}.home{position:relative;min-height:100dvh;background:#fff;color:#111827;font-family:-apple-system,BlinkMacSystemFont,Inter,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.home-sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;overflow:hidden}.home-sky:before,.home-sky:after{content:"";position:absolute;border-radius:50%;filter:blur(90px);opacity:.45;animation:skyDrift 22s ease-in-out infinite alternate}.home-sky:before{width:min(72vw,520px);height:min(72vw,520px);background:radial-gradient(circle,rgba(186,230,253,.55) 0%,transparent 70%);top:-12%;right:-18%}.home-sky:after{width:min(65vw,480px);height:min(65vw,480px);background:radial-gradient(circle,rgba(224,242,254,.7) 0%,transparent 70%);bottom:-8%;left:-22%;animation-duration:18s;animation-delay:-4s}@keyframes skyDrift{0%{transform:translate(0) scale(1)}to{transform:translate(-24px,18px) scale(1.06)}}.banner,.page-wrap{position:relative;z-index:1}.page-wrap{max-width:min(680px,100%);margin:0 auto;padding:0 clamp(14px,4.5vw,32px) max(32px,env(safe-area-inset-bottom,0px))}[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .7s var(--home-ease),transform .7s var(--home-ease);transition-delay:var(--reveal-delay, 0s)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.how-step:nth-child(1){--reveal-delay: 0s}.how-step:nth-child(2){--reveal-delay: .1s}.how-step:nth-child(3){--reveal-delay: .2s}@keyframes fadeRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes bannerSlide{0%{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sectionRise{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes chipPop{0%{opacity:0;transform:translateY(10px) scale(.94)}to{opacity:1;transform:translateY(0) scale(1)}}.banner{display:flex;justify-content:center;padding:clamp(10px,2.5vw,20px) clamp(14px,4.5vw,32px);background:transparent;animation:bannerSlide .65s var(--home-ease-out) both}.banner-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;background:#f0f9ff;border:1px solid #bae6fd;border-radius:clamp(12px,3vw,16px);padding:clamp(10px,2.5vw,14px) clamp(14px,3vw,18px);max-width:640px;width:100%;box-shadow:0 2px 16px #0ea5e91a;transition:box-shadow .35s var(--home-ease),transform .35s var(--home-ease)}.banner-inner:hover{box-shadow:var(--home-shadow-lg)}.banner-left{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1 1 160px}.banner-title{font-size:clamp(.82rem,2.5vw,.9rem);font-weight:700;color:#0f172a}.banner-desc{font-size:clamp(.72rem,2.2vw,.8rem);color:#64748b;line-height:1.35;max-width:340px}.banner-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.btn-checkin{background:linear-gradient(to right,#38bdf8,#0ea5e9);color:#fff;border:none;border-radius:999px;padding:9px 20px;font-family:inherit;font-size:clamp(.8rem,2.2vw,.85rem);font-weight:700;cursor:pointer;white-space:nowrap;box-shadow:0 4px 16px #0ea5e959;transition:transform .2s var(--home-ease),box-shadow .25s var(--home-ease),filter .2s}.btn-checkin:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0ea5e973;filter:brightness(1.03)}.btn-checkin:active{transform:translateY(0)}.btn-later{background:transparent;border:none;font-family:inherit;font-size:clamp(.8rem,2.2vw,.85rem);font-weight:500;color:#64748b;cursor:pointer;padding:6px 10px;border-radius:8px;transition:color .2s,background .2s}.btn-later:hover{color:#374151;background:#fff9}@media(max-width:400px){.banner-inner{flex-direction:column;align-items:stretch}.banner-actions{justify-content:flex-end}.banner-desc{max-width:none}}.journal-row{display:flex;justify-content:flex-end;padding:clamp(10px,2vw,14px) 0 0;animation:fadeRise .6s var(--home-ease-out) .12s both}.btn-journal{background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:8px 18px;font-family:inherit;font-size:clamp(.8rem,2.2vw,.85rem);font-weight:600;color:#374151;cursor:pointer;transition:border-color .25s,background .25s,transform .2s var(--home-ease),box-shadow .25s}.btn-journal:hover{border-color:#0ea5e9;color:#0ea5e9;background:#f0f9ff;transform:translateY(-2px);box-shadow:var(--home-shadow)}.btn-journal:active{transform:translateY(0)}.hero{text-align:center;padding:clamp(24px,5vw,52px) 0 clamp(20px,4vw,36px)}.hero-entrance .brand-label{animation:fadeRise .7s var(--home-ease-out) both}.hero-entrance .hero-title{animation:fadeRise .72s var(--home-ease-out) .08s both}.hero-entrance .hero-sub{animation:fadeRise .72s var(--home-ease-out) .16s both}.brand-label{display:block;font-size:clamp(10px,2.2vw,11.5px);font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:#0ea5e9;margin-bottom:clamp(14px,3vw,18px)}.hero-title{font-size:clamp(2.1rem,7vw + .4rem,4rem);font-weight:800;letter-spacing:-.025em;line-height:1.06;color:#0f172a;margin-bottom:clamp(12px,2.5vw,16px);background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;background-clip:text;color:transparent}.hero-sub{font-size:clamp(.9rem,2.4vw,1.05rem);color:#64748b;line-height:1.65;max-width:22rem;margin:0 auto}.tool{margin-bottom:clamp(28px,5vw,48px)}.tool-entrance .tool-card{animation:fadeRise .75s var(--home-ease-out) .2s both}.tool-entrance .chips-row{animation:fadeRise .7s var(--home-ease-out) .28s both}.tool-card{background:#fff;border:1px solid #e2e8f0;border-radius:clamp(14px,3vw,18px);overflow:hidden;box-shadow:0 4px 20px #0f172a0f;margin-bottom:clamp(14px,3vw,18px);transition:transform .35s var(--home-ease),box-shadow .35s var(--home-ease),border-color .3s}.tool-card:hover{transform:translateY(-3px);box-shadow:var(--home-shadow-lg);border-color:#cbd5e1}.tool-card:focus-within{border-color:#7dd3fc;box-shadow:0 0 0 3px #0ea5e926,var(--home-shadow-lg)}.tool-textarea{width:100%;min-height:clamp(88px,22vw,120px);max-height:220px;background:#fff;border:none;border-bottom:1px solid #f1f5f9;padding:clamp(14px,3vw,20px) clamp(16px,3.5vw,22px);font-family:inherit;font-size:clamp(.92rem,2.4vw,.97rem);color:#111827;line-height:1.6;resize:none;outline:none;overflow-y:auto;transition:background .2s}.tool-textarea::placeholder{color:#9ca3af}.tool-textarea:disabled{opacity:.55}.btn-check{position:relative;width:100%;padding:clamp(14px,3.5vw,18px) 24px;overflow:hidden;background:linear-gradient(to right,#56ccf2,#2f80ed);color:#fff;border:none;font-family:inherit;font-size:clamp(.95rem,2.5vw,1rem);font-weight:700;cursor:pointer;letter-spacing:.01em;transition:transform .2s var(--home-ease),filter .25s,box-shadow .3s}.btn-check:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 0%,rgba(255,255,255,.22) 45%,transparent 55%);transform:translate(-120%);transition:transform .55s var(--home-ease)}.btn-check:hover:not(:disabled):after{transform:translate(120%)}.btn-check:hover:not(:disabled){filter:brightness(1.04);box-shadow:0 10px 32px #2f80ed59}.btn-check:active:not(:disabled){transform:scale(.992)}.btn-check:disabled{opacity:.52;cursor:not-allowed;filter:grayscale(.15)}.chips-row{text-align:center}.chips-label{display:block;font-size:clamp(.78rem,2.2vw,.82rem);color:#9ca3af;margin-bottom:12px}.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.chip{background:#fff;border:1px solid #d1d5db;border-radius:999px;padding:8px 16px;font-family:inherit;font-size:clamp(.78rem,2.2vw,.85rem);font-weight:500;color:#374151;cursor:pointer;transition:border-color .25s,background .25s,color .25s,transform .22s var(--home-ease),box-shadow .25s;animation:chipPop .5s var(--home-ease-out) both}.chip:nth-child(1){animation-delay:.32s}.chip:nth-child(2){animation-delay:.38s}.chip:nth-child(3){animation-delay:.44s}.chip:nth-child(4){animation-delay:.5s}.chip:nth-child(5){animation-delay:.56s}.chip:hover:not(:disabled){border-color:#0ea5e9;color:#0ea5e9;background:#f0f9ff;transform:translateY(-3px);box-shadow:var(--home-shadow)}.chip:active:not(:disabled){transform:translateY(-1px)}.chip:disabled{opacity:.45;cursor:not-allowed}.responses{margin-bottom:clamp(32px,6vw,56px);scroll-margin-top:max(20px,env(safe-area-inset-top))}.responses-enter{animation:sectionRise .55s var(--home-ease-out) both}.responses-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:16px}.responses-label{font-size:.78rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#9ca3af}.btn-clear{background:transparent;border:1px solid #e2e8f0;border-radius:999px;padding:6px 14px;font-family:inherit;font-size:.76rem;font-weight:600;color:#9ca3af;cursor:pointer;transition:border-color .2s,color .2s,background .2s,transform .15s}.btn-clear:hover{border-color:#fca5a5;color:#ef4444;background:#fef2f2;transform:translateY(-1px)}.msg-list{display:flex;flex-direction:column;gap:clamp(16px,3vw,22px);margin-bottom:18px}.msg{display:flex;gap:10px;align-items:flex-end;animation:msgSlide .42s var(--home-ease-out) both}@keyframes msgSlide{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.msg-ai{align-self:flex-start}.msg-user{flex-direction:row-reverse;align-self:flex-end}.msg-ava{width:clamp(32px,8vw,36px);height:clamp(32px,8vw,36px);border-radius:50%;display:grid;place-items:center;font-size:.95rem;flex-shrink:0;background:#f0f9ff;border:1px solid #bae6fd;transition:transform .25s var(--home-ease)}.msg:hover .msg-ava{transform:scale(1.05)}.msg-user .msg-ava{background:#f8fafc;border-color:#e2e8f0}.msg-body{display:flex;flex-direction:column;gap:6px;max-width:min(100%,540px)}@media(max-width:420px){.msg-body{max-width:calc(100% - 48px)}}.msg-user .msg-body{align-items:flex-end}.msg-bubble{padding:clamp(12px,3vw,15px) clamp(14px,3.5vw,18px);border-radius:18px;font-size:clamp(.88rem,2.4vw,.95rem);line-height:1.72;white-space:pre-wrap;word-break:break-word}.msg-ai .msg-bubble{background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px 18px 18px;color:#1e293b;transition:border-color .25s,box-shadow .25s}.msg-ai:hover .msg-bubble{border-color:#cbd5e1;box-shadow:0 6px 20px #0f172a0f}.msg-user .msg-bubble{background:linear-gradient(135deg,#56ccf2,#2f80ed);color:#fff;border-radius:18px 4px 18px 18px;box-shadow:0 6px 20px #0ea5e940}.msg-foot{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.msg-user .msg-foot{justify-content:flex-end}.msg-time{font-size:.68rem;color:#9ca3af}.msg-actions{display:flex;gap:6px;flex-wrap:wrap}.action-btn{background:#f0f9ff;border:1px solid #bae6fd;border-radius:999px;padding:5px 12px;font-family:inherit;font-size:.7rem;font-weight:600;color:#0ea5e9;cursor:pointer;transition:background .2s,transform .15s var(--home-ease),box-shadow .2s;white-space:nowrap}.action-btn:hover{background:#e0f2fe;transform:translateY(-2px);box-shadow:0 4px 12px #0ea5e933}.typing-bubble{display:flex;align-items:center;gap:5px;padding:14px 18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:4px 18px 18px}.typing-bubble span{width:8px;height:8px;border-radius:50%;background:#94a3b8;animation:typingBounce 1.25s ease infinite}.typing-bubble span:nth-child(2){animation-delay:.18s}.typing-bubble span:nth-child(3){animation-delay:.36s}@keyframes typingBounce{0%,80%,to{transform:scale(.65);opacity:.35}40%{transform:scale(1);opacity:1}}.msg-error{align-self:center;font-size:.84rem;color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:10px 16px;text-align:center;animation:msgSlide .4s var(--home-ease-out) both}.followup{display:flex;gap:10px;align-items:flex-end;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;transition:border-color .25s,box-shadow .25s}.followup:focus-within{border-color:#7dd3fc;box-shadow:0 0 0 3px #0ea5e91f}.followup-ta{flex:1;min-width:0;background:transparent;border:none;outline:none;font-family:inherit;font-size:clamp(.85rem,2.4vw,.9rem);color:#111827;line-height:1.5;resize:none;min-height:40px}.followup-ta::placeholder{color:#9ca3af}.followup-ta:disabled{opacity:.5}.btn-send{width:clamp(36px,10vw,40px);height:clamp(36px,10vw,40px);flex-shrink:0;border-radius:11px;border:none;background:linear-gradient(135deg,#56ccf2,#2f80ed);color:#fff;font-size:1.05rem;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px #0ea5e959;transition:transform .2s var(--home-ease),box-shadow .25s,filter .2s}.btn-send:hover:not(:disabled){transform:translateY(-2px) scale(1.04);box-shadow:0 8px 22px #2f80ed66;filter:brightness(1.03)}.btn-send:disabled{opacity:.38;cursor:not-allowed}@media(max-width:380px){.followup{flex-direction:column;align-items:stretch}.btn-send{align-self:flex-end}}.how{border-top:1px solid #f1f5f9;padding:clamp(36px,7vw,64px) 0}.section-title{font-size:clamp(1.35rem,4vw,1.95rem);font-weight:800;color:#0f172a;letter-spacing:-.02em;text-align:center;margin-bottom:clamp(22px,4vw,40px)}.section-title-reveal{opacity:0;transform:translateY(16px);transition:opacity .65s var(--home-ease),transform .65s var(--home-ease)}.section-title-reveal.is-visible{opacity:1;transform:translateY(0)}.how-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(10px,2.5vw,18px)}@media(max-width:640px){.how-steps{grid-template-columns:1fr}}.how-step{background:#f8fafc;border:1px solid #e2e8f0;border-radius:clamp(14px,3vw,18px);padding:clamp(18px,4vw,28px);transition:transform .35s var(--home-ease),box-shadow .35s var(--home-ease),border-color .3s}.how-step:hover{transform:translateY(-6px);box-shadow:var(--home-shadow-lg);border-color:#bae6fd}.how-num{font-size:.7rem;font-weight:800;letter-spacing:.1em;color:#0ea5e9;margin-bottom:8px}.how-icon{font-size:clamp(1.5rem,4vw,1.85rem);margin-bottom:10px;display:inline-block;transition:transform .35s var(--home-ease)}.how-step:hover .how-icon{transform:scale(1.12) rotate(-4deg)}.how-step h3{font-size:clamp(.9rem,2.4vw,.95rem);font-weight:700;color:#0f172a;margin-bottom:8px}.how-step p{font-size:clamp(.78rem,2.2vw,.84rem);color:#64748b;line-height:1.65}.faq{border-top:1px solid #f1f5f9;padding:clamp(36px,7vw,64px) 0}.faq-list{display:flex;flex-direction:column;gap:10px}.faq-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;transition:border-color .3s,box-shadow .3s}.faq-item.open{border-color:#7dd3fc;background:#f0f9ff;box-shadow:var(--home-shadow)}.faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:clamp(14px,3vw,18px) clamp(16px,3vw,22px);background:transparent;border:none;font-family:inherit;font-size:clamp(.86rem,2.3vw,.92rem);font-weight:600;color:#1e293b;cursor:pointer;text-align:left;transition:color .2s}.faq-q:hover{color:#0ea5e9}.faq-icon{font-size:1.25rem;font-weight:300;color:#0ea5e9;flex-shrink:0;line-height:1;transition:transform .35s var(--home-ease)}.faq-item.open .faq-icon{transform:rotate(180deg)}.faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--home-ease);overflow:hidden}.faq-item.open .faq-a{grid-template-rows:1fr}.faq-a>p{min-height:0;overflow:hidden;padding:0 clamp(16px,3vw,22px) clamp(14px,3vw,18px);font-size:clamp(.82rem,2.2vw,.87rem);color:#475569;line-height:1.7}.footer{border-top:1px solid #f1f5f9;padding:clamp(28px,5vw,48px) 0 max(24px,env(safe-area-inset-bottom));text-align:center;display:flex;flex-direction:column;align-items:center;gap:12px}.footer-brand{margin-bottom:2px}.footer-note{font-size:clamp(.74rem,2.2vw,.8rem);color:#9ca3af;line-height:1.65;max-width:28rem;padding:0 4px}.footer-copy{font-size:.72rem;color:#cbd5e1}@media(prefers-reduced-motion:reduce){.home-sky:before,.home-sky:after{animation:none;opacity:.25}.banner,.hero-entrance .brand-label,.hero-entrance .hero-title,.hero-entrance .hero-sub,.journal-row,.tool-entrance .tool-card,.tool-entrance .chips-row,.chip,.responses-enter{animation:none!important;opacity:1!important;transform:none!important}[data-reveal],.section-title-reveal{opacity:1!important;transform:none!important;transition:none!important}.btn-check:after{display:none}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #06050f;--bg2: #0d0c1e;--surface: rgba(255,255,255,.04);--surface2: rgba(255,255,255,.07);--border: rgba(255,255,255,.08);--border2: rgba(255,255,255,.14);--violet: #8b5cf6;--violet-d: #6d28d9;--violet-l: #c4b5fd;--rose: #f43f5e;--rose-d: #be123c;--rose-l: #fda4af;--amber: #f59e0b;--amber-l: #fcd34d;--teal: #0ea5e9;--teal-l: #7dd3fc;--emerald: #10b981;--emerald-l: #6ee7b7;--pink: #ec4899;--pink-l: #f9a8d4;--text: #f0eeff;--text-dim: #a09dc5;--text-muted: #5c5a7a;--grad-brand: linear-gradient(135deg, #7c3aed 0%, #db2777 100%);--grad-hero: linear-gradient(120deg, #c4b5fd 0%, #fda4af 50%, #fcd34d 100%);--grad-teal: linear-gradient(135deg, #0ea5e9 0%, #10b981 100%);--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Plus Jakarta Sans", system-ui, sans-serif;--r-sm: 8px;--r-md: 14px;--r-lg: 20px;--r-xl: 28px;--ease: cubic-bezier(.22, 1, .36, 1)}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:#fff;color:#111827;min-height:100dvh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}#root{min-height:100dvh}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#bae6fd;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#7dd3fc}.reveal{opacity:0;transform:translateY(28px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.reveal.visible{opacity:1;transform:translateY(0)}.reveal-delay-1{transition-delay:.1s}.reveal-delay-2{transition-delay:.2s}.reveal-delay-3{transition-delay:.3s}.reveal-delay-4{transition-delay:.4s}
