:root{color:#2b2338;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:radial-gradient(circle at top,#ffbee180,#0000 35%),linear-gradient(#fffafc 0%,#f7f2ff 38%,#fdf6fb 100%);font-family:Inter,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}img{max-width:100%;display:block}button,input,textarea,select{font:inherit}#root{width:100%;min-height:100vh}h1,h2,h3,h4,p{margin-top:0}.page-shell{--page-bg:linear-gradient(180deg, #fffafc 0%, #f7f2ff 38%, #fdf6fb 100%);--panel-bg:#ffffffb8;--panel-border:#94a3b82e;--text-main:#1d1533;--text-soft:#4d4760;--text-muted:#615a76;--accent-1:#ff5ea8;--accent-2:#8b5cf6;--accent-3:#5f3cc2;--shadow-strong:#4c1d951f;--shadow-soft:#6d28d917;background:var(--page-bg);width:100%;min-height:100vh;color:var(--text-main);position:relative;overflow:hidden}.page-shell[data-theme=dark]{--page-bg:radial-gradient(circle at top, #5e1f8080, transparent 32%), linear-gradient(180deg, #0f0d1a 0%, #170f28 100%);--panel-bg:#171223cc;--panel-border:#a88bff2e;--text-main:#f5f3ff;--text-soft:#d9d3ec;--text-muted:#b8b0d7;--accent-1:#ff7ab6;--accent-2:#9a7cff;--accent-3:#d7c8ff;--shadow-strong:#0d091699;--shadow-soft:#a680ff24}.campaign-page,.final-stage{z-index:1;max-width:1200px;margin:0 auto;padding:48px 24px 32px;position:relative}.hero-panel{grid-template-columns:1.2fr .8fr;align-items:center;gap:28px;margin-bottom:32px;display:grid}.hero-copy,.study-card,.carousel-card,.stat-card,.final-card{background:var(--panel-bg);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 20px 45px var(--shadow-strong)}.hero-copy{border-radius:30px;padding:40px 32px;animation:5s ease-in-out infinite alternate floatPanel}.study-card{animation:5s ease-in-out infinite alternate glowCard}.eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);margin:0 0 14px;font-size:.72rem;font-weight:700}.hero-copy h1{letter-spacing:-.08em;color:var(--text-main);margin:0;font-size:clamp(2.6rem,4vw,5rem);line-height:.95}.subtitle{max-width:560px;color:var(--text-soft);margin-top:18px;font-size:1.08rem}.primary-button,.accept-button{letter-spacing:.04em;cursor:pointer;border:none;border-radius:999px;padding:16px 28px;font-size:.98rem;font-weight:800;transition:transform .2s,box-shadow .2s,filter .2s}.primary-button{color:#fff;background:linear-gradient(135deg,#ff5ea8 0%,#8b5cf6 100%);margin-top:26px;box-shadow:0 18px 32px #a855f759}.accept-button{color:#fff;background:linear-gradient(135deg,#ff4d6d 0%,#7c3aed 100%);padding:20px 34px;font-size:1.15rem;box-shadow:0 20px 40px #7c3aed54}.primary-button:hover,.accept-button:hover,.nav-button:hover,.indicator:hover{filter:brightness(1.03);transform:translateY(-2px)scale(1.01)}.study-card{border-radius:30px;padding:28px;position:relative;overflow:hidden}.study-card:before{content:"";pointer-events:none;background:linear-gradient(135deg,#ff5fa31f,#8b5cf621);position:absolute;inset:0}.study-card>*{z-index:1;position:relative}.mini-badge,.slide-badge{letter-spacing:.08em;text-transform:uppercase;color:#5f3cc2;background:#ffffffb3;border:1px solid #66498826;border-radius:999px;align-items:center;padding:7px 12px;font-size:.74rem;font-weight:800;display:inline-flex}.study-card h2{color:var(--text-main);margin:18px 0 12px;font-size:clamp(1.8rem,2vw,2.6rem);line-height:1.05}.study-card p{color:var(--text-soft);margin:0;font-size:1rem}.carousel-section,.stats-section{margin-top:36px}.section-heading{margin-bottom:18px}.section-heading h3{color:var(--text-main);margin:0;font-size:clamp(1.8rem,2.5vw,2.6rem)}.carousel-shell{grid-template-columns:62px minmax(0,1fr) 62px;align-items:center;gap:18px;display:grid}.carousel-card{background:linear-gradient(145deg,#ffffffc7,#fbe6ffbd);border-radius:28px;min-height:340px;padding:34px 30px;position:relative;overflow:hidden}.slide-animate{animation:.6s cubic-bezier(.2,.8,.2,1) slideIn}.carousel-card:after{content:"🧪";opacity:.2;font-size:4rem;animation:3s ease-in-out infinite floatIcon;position:absolute;bottom:16px;right:22px}.slide-content{z-index:1;flex-direction:column;justify-content:center;min-height:280px;display:flex;position:relative}.slide-content h4{color:var(--text-main);margin:18px 0 14px;font-size:clamp(1.8rem,2.6vw,2.9rem);line-height:1.12;animation:.45s ease-out both textIn}.slide-content p{max-width:620px;color:var(--text-soft);margin:0;font-size:1.04rem;animation:.55s ease-out both textIn}.nav-button{color:#3b255d;cursor:pointer;width:62px;height:62px;box-shadow:0 15px 25px var(--shadow-soft);background:#ffffffb3;border:1px solid #94a3b84d;border-radius:50%;font-size:2.4rem;line-height:1}.carousel-indicators{justify-content:center;gap:12px;margin-top:18px;display:flex}.indicator{cursor:pointer;background:#8b5cf640;border:none;border-radius:50%;width:12px;height:12px;padding:0;transition:transform .2s,background .2s}.indicator.active{background:linear-gradient(135deg,#ff5ea8,#8b5cf6);transform:scale(1.2)}.stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;display:grid}.stat-card{text-align:center;background:linear-gradient(135deg,#fffc,#f4e0ffb3);border-radius:22px;padding:28px 22px;animation:4s ease-in-out infinite statPulse}.stat-value{letter-spacing:-.07em;color:var(--text-main);font-size:clamp(2.1rem,3vw,3.4rem);font-weight:900}.stat-card p{color:var(--text-soft);margin:12px 0 0;font-weight:600}.accept-section{justify-content:center;margin-top:26px;display:flex}.chaos-layer{z-index:20;pointer-events:none;position:fixed;inset:0;overflow:hidden}.floaty-message{letter-spacing:.07em;color:#8a5cf6e6;white-space:nowrap;text-shadow:0 0 18px #fffc;opacity:0;font-weight:900;animation-name:riseAndFade;animation-timing-function:ease-out;position:absolute}@keyframes riseAndFade{0%{opacity:0;transform:translateY(20px)scale(.85)rotate(0)}18%{opacity:1}80%{opacity:1}to{opacity:0;transform:translateY(-80px)scale(1.06)}}@keyframes slideIn{0%{opacity:0;transform:translate(22px)scale(.98)}to{opacity:1;transform:translate(0)scale(1)}}@keyframes floatPanel{0%{transform:translateY(0)}to{transform:translateY(-6px)}}@keyframes glowCard{0%{box-shadow:0 20px 45px #4c1d951f}to{box-shadow:0 26px 54px #ec48992e}}@keyframes floatIcon{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-10px)rotate(8deg)}}@keyframes textIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes statPulse{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}.final-stage{place-items:center;min-height:100vh;display:grid}.final-card{text-align:center;border-radius:32px;width:min(760px,100%);padding:40px 28px}.final-message h2{color:var(--text-main);margin:0;font-size:clamp(2rem,4vw,3.5rem);line-height:1.08}.final-message p{color:var(--text-soft);margin-top:18px;font-size:1.1rem}.final-message small{color:var(--text-muted);margin-top:12px;font-size:.95rem;display:block}.final-message .primary-button{margin-top:24px}.top-bar{justify-content:flex-end;max-width:1200px;margin:0 auto;padding:24px 24px 0;display:flex}.theme-toggle{border:1px solid var(--panel-border);background:var(--panel-bg);color:var(--text-main);cursor:pointer;box-shadow:0 12px 28px var(--shadow-strong);border-radius:999px;padding:10px 16px;font-size:.82rem;font-weight:700}.page-footer{text-align:center;color:var(--text-soft);letter-spacing:.04em;padding:18px 20px 30px;font-weight:700}.confetti-layer{z-index:30;pointer-events:none;position:fixed;inset:0;overflow:hidden}.confetti-piece{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:.8rem;animation:2.2s ease-in forwards drop;display:inline-flex;position:absolute;top:-12%}@keyframes drop{0%{opacity:0;transform:translateY(-8px)scale(.4)rotate(0)}20%{opacity:1}to{opacity:0;transform:translateY(100vh)scale(1.15)rotate(720deg)}}.love-stage h2{max-width:720px;margin:0 auto}@media (width<=900px){.hero-panel{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=640px){.campaign-page,.final-stage{padding-left:16px;padding-right:16px}.hero-copy,.study-card,.carousel-card,.final-card{border-radius:24px}.hero-copy{padding:28px 22px}.carousel-shell{grid-template-columns:1fr}.nav-button{display:none}.stats-grid{grid-template-columns:1fr}.slide-content h4{font-size:1.8rem}.accept-button{width:100%}}
