@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:ital,wght@0,600;0,700;0,800;1,600&family=Inter:wght@400;500;600&display=swap";:root{--primary: #FF4D79;--primary-light: #FF85A1;--primary-soft: #FFF0F4;--primary-text: #C4003C;--accent: #FF7043;--bg: #F8F8F8;--bg-warm: #FFFFFF;--card: #FFFFFF;--border: #F0F0F0;--ink: #111111;--muted: #888888;--stone: #F5F5F5;--gradient: linear-gradient(135deg, #FF4D79 0%, #FF7043 100%);--gradient-soft: linear-gradient(135deg, #FFF0F4 0%, #FFF3F0 100%);--shadow-sm: 0 1px 3px rgba(0,0,0,.06), 0 1px 2px rgba(0,0,0,.04);--shadow-md: 0 4px 14px rgba(0,0,0,.08), 0 1px 4px rgba(0,0,0,.04);--shadow-lg: 0 8px 28px rgba(0,0,0,.1), 0 2px 8px rgba(0,0,0,.06);--shadow-xl: 0 16px 52px rgba(0,0,0,.14), 0 4px 14px rgba(0,0,0,.08);--shadow-pink: 0 8px 32px rgba(255,77,121,.28);--radius-xs: 6px;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--radius-xl: 24px;--success: #22A36B;--error: #D93C3C;--font-heading: "Plus Jakarta Sans", system-ui, sans-serif;--font-body: "Inter", system-ui, sans-serif;--fire: #FF4D79;--ember: #FF7043;font-family:var(--font-body);font-weight:400;line-height:1.55;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{height:100%}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--font-body)}a{font-weight:400;color:var(--primary);text-decoration:inherit;transition:color .15s ease}a:hover{color:var(--primary-light)}button{border-radius:var(--radius-sm);border:none;font-size:1em;font-weight:500;font-family:var(--font-body);cursor:pointer}button:active{transform:scale(.97)}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:800;line-height:1.1;letter-spacing:-.03em}input,textarea,select{font-family:var(--font-body);font-weight:400}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}@keyframes slideUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUpSm{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes breathe{0%,to{opacity:1}50%{opacity:.7}}@keyframes shimmer{0%{background-position:200% center}to{background-position:-200% center}}@keyframes shimmerSlide{0%{transform:translate(-100%)}to{transform:translate(200%)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes matchIn{0%{opacity:0;transform:scale(.8) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}@keyframes heartPop{0%{transform:scale(0) rotate(-20deg)}60%{transform:scale(1.3) rotate(5deg)}to{transform:scale(1) rotate(0)}}@keyframes blobFloat{0%,to{transform:translate(0) scale(1)}33%{transform:translate(18px,-16px) scale(1.04)}66%{transform:translate(-10px,10px) scale(.97)}}@keyframes blobFloat2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-20px,14px) scale(1.04)}66%{transform:translate(12px,-8px) scale(.97)}}@keyframes cardIn{0%{opacity:0;transform:translateY(26px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes popIn{0%{transform:scale(.75);opacity:0}50%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}@keyframes stepIn{0%{opacity:0;transform:translate(22px)}to{opacity:1;transform:translate(0)}}@keyframes swipeRight{to{transform:translate(120%) rotate(20deg);opacity:0}}@keyframes swipeLeft{to{transform:translate(-120%) rotate(-20deg);opacity:0}}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}@keyframes toastIn{0%{opacity:0;transform:translateY(10px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes gradientShift{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}@keyframes dotPulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.5);opacity:.6}}*{transition:background-color .25s ease,color .25s ease,border-color .25s ease}button,input,textarea,select,a{transition:background-color .25s ease,color .25s ease,border-color .25s ease,transform .12s ease,box-shadow .2s ease,opacity .2s ease}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border);border-radius:99px}::-webkit-scrollbar-thumb:hover{background:var(--muted)}::selection{background:var(--primary-soft);color:var(--primary-text)}
