@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";
:root{--brand-rose:#ff4b8d;--brand-rose-rgb:255,75,141;--bg-base:#f8f9fc;--bg-card:#fff;--bg-card2:#fdf4f7;--bg-glass:#ffffffb3;--bg-glass2:#ff4b8d0d;--text-primary:#1a1d29;--text-secondary:#2d3142;--text-muted:#4a4e69;--brand-water:#2fa2e1;--brand-purple:#7e5c8e;--brand-gold:#d4a56a;--brand-teal:#24d2b5;--border:#e8edf5;--border-glow:#ff4b8d33;--grad-primary:linear-gradient(135deg,#ff4b8d 0%,#ff85b3 100%);--grad-gold:linear-gradient(135deg,#ffd600 0%,#ff4b8d 100%);--grad-teal:linear-gradient(135deg,#24d2b5 0%,#5d5fef 100%);--grad-bg:radial-gradient(circle at 50% -20%,#ff4b8d14 0%,transparent 70%);--grad-profile:linear-gradient(135deg,#ff5f6d 0%,#ffc371 100%);--shadow-card:0 12px 30px #2d31420f,0 4px 10px #2d31420a;--shadow-glow:0 0 30px #ff4b8d1a;--shadow-btn:0 10px 25px #ff4b8d4d;--nav-bg:#ffffffd9;--radius-xl:32px;--radius-lg:24px;--radius-md:16px}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#0d0f17;--bg-card:#151821;--bg-card2:#1d202d;--bg-glass:#151821d9;--bg-glass2:#ffffff0d;--text-primary:#fff;--text-secondary:#d1d4e0;--text-muted:#8e92a1;--border:#ffffff1a;--border-glow:#ff4b8d4d;--grad-bg:radial-gradient(circle at 50% -20%,#ff4b8d26 0%,transparent 70%);--shadow-card:0 20px 50px #00000080;--nav-bg:#0d0f17f2}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-tap-highlight-color:transparent}body{background-color:var(--bg-base);background-image:var(--grad-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,sans-serif;transition:background-color .4s,color .4s}body:before{content:"";pointer-events:none;z-index:0;opacity:.4;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.025'/%3E%3C/svg%3E");position:fixed;inset:0}h1,h2,h3{font-family:Plus Jakarta Sans,sans-serif}h1{color:var(--text-primary);letter-spacing:-.04em;font-size:28px;font-weight:800;line-height:1.25}h2{color:var(--text-primary);letter-spacing:-.03em;font-size:20px;font-weight:700;line-height:1.3}h3{color:var(--text-primary);letter-spacing:-.02em;font-size:17px;font-weight:700}p{color:var(--text-secondary);font-size:15px;line-height:1.6}.grid-4-col{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.icon-circle{background:var(--bg-card);border:1px solid var(--border);width:56px;height:56px;transition:var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;display:flex}.icon-circle.active{background:rgba(var(--brand-rose-rgb),.1);border-color:var(--brand-rose);transform:scale(1.05)}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);-webkit-backdrop-filter:blur(20px);padding:24px;transition:box-shadow .3s,border-color .3s,transform .2s}.card:hover{box-shadow:0 20px 40px #2d314214}.card-glow{background:var(--bg-card);border:1px solid var(--border-glow);border-radius:var(--radius-xl);box-shadow:var(--shadow-card),var(--shadow-glow);-webkit-backdrop-filter:blur(24px);padding:28px;transition:box-shadow .3s,transform .2s;position:relative;overflow:hidden}.card-glow:hover{box-shadow:var(--shadow-card),0 0 40px #ff4b8d26;transform:translateY(-4px)}.card-glow:before{content:"";background:linear-gradient(90deg,transparent,rgba(var(--brand-rose-rgb),.4),transparent);height:2px;position:absolute;top:0;left:0;right:0}.card-glass{background:var(--bg-glass);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(16px);border:1px solid #fff3;padding:20px}.glass-panel{-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);background:#ffffff26;border:1px solid #ffffff4d}[data-theme=dark] .glass-panel{background:#ffffff0d;border:1px solid #ffffff1a}.profile-header-grad{background:var(--grad-profile);position:relative}.orb{filter:blur(60px);pointer-events:none;border-radius:50%;position:absolute}.orb-rose{background:radial-gradient(circle,#e8547a59,#0000)}.orb-mauve{background:radial-gradient(circle,#9b6ab04d,#0000)}.orb-teal{background:radial-gradient(circle,#3ebfaa40,#0000)}.btn-primary{background:var(--grad-primary);color:#fff;cursor:pointer;letter-spacing:.5px;width:100%;box-shadow:var(--shadow-btn);white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:100px;padding:14px 28px;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:700;transition:all .25s cubic-bezier(.34,1.56,.64,1);position:relative;overflow:hidden}.btn-primary:hover{filter:brightness(1.05);box-shadow:0 15px 30px rgba(var(--brand-rose-rgb),.4);transform:translateY(-3px)scale(1.02)}.btn-primary:active{opacity:.9;transform:translateY(0)scale(.98)}.btn-secondary{color:var(--brand-rose);border:2px solid var(--brand-rose);cursor:pointer;background:#fff;border-radius:100px;width:100%;padding:12px 24px;font-family:Plus Jakarta Sans,sans-serif;font-size:15px;font-weight:700;transition:all .2s}.btn-secondary:hover{background:var(--brand-rose);color:#fff;transform:translateY(-2px)}.btn-pill{cursor:pointer;letter-spacing:.3px;border:none;border-radius:100px;align-items:center;gap:6px;padding:8px 16px;font-family:Plus Jakarta Sans,sans-serif;font-size:13px;font-weight:700;transition:background .2s,transform .2s,opacity .2s;display:inline-flex}.btn-pill-rose{color:var(--brand-rose);background:#e8547a26;border:1px solid #e8547a4d}.btn-pill-teal{color:var(--brand-teal);background:#3ebfaa26;border:1px solid #3ebfaa4d}.btn-pill-gold{color:var(--brand-gold);background:#e8c07c26;border:1px solid #e8c07c4d}.btn-pill-mauve{color:var(--brand-mauve);background:#9b6ab026;border:1px solid #9b6ab04d}.input-field{background:var(--bg-glass);border:1px solid var(--border);color:var(--text-primary);border-radius:14px;outline:none;width:100%;padding:15px 18px;font-family:DM Sans,sans-serif;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}.input-field::placeholder{color:var(--text-muted)}.input-field:focus{border-color:var(--border-glow);background:#e8547a0d;box-shadow:0 0 0 3px #e8547a1a}.badge{letter-spacing:.4px;text-transform:uppercase;border-radius:100px;align-items:center;gap:5px;padding:5px 12px;font-family:DM Sans,sans-serif;font-size:12px;font-weight:700;display:inline-flex}.badge-rose{color:var(--brand-rose);background:#e8547a26;border:1px solid #e8547a4d}.badge-teal{color:var(--brand-teal);background:#3ebfaa26;border:1px solid #3ebfaa4d}.badge-gold{color:var(--brand-gold);background:#e8c07c26;border:1px solid #e8c07c4d}.badge-mauve{color:var(--brand-mauve);background:#9b6ab026;border:1px solid #9b6ab04d}.progress-bar{background:var(--bg-glass2);border-radius:100px;height:6px;overflow:hidden}.progress-bar-fill{background:var(--grad-primary);border-radius:100px;height:100%;transition:width .8s cubic-bezier(.34,1.56,.64,1);position:relative}.progress-bar-fill:after{content:"";background:linear-gradient(90deg,#0000,#fff6);border-radius:100px;width:20px;height:100%;animation:2s infinite shimmer-bar;position:absolute;top:0;right:0}.check-item{background:var(--bg-glass);border:1px solid var(--border);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:16px;align-items:center;gap:14px;padding:14px 16px;transition:background .22s,border-color .22s,transform .22s;display:flex}.check-item:hover{background:#e8547a0f;border-color:#e8547a33;transform:translate(2px)}.check-item:active{transform:scale(.99)}.check-item.checked{background:#3ebfaa12;border-color:#3ebfaa40}.check-circle{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:26px;height:26px;transition:background .25s cubic-bezier(.34,1.56,.64,1),border-color .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s cubic-bezier(.34,1.56,.64,1);display:flex}.check-item.checked .check-circle,.card.checked .check-circle{background:var(--grad-teal);border-color:#0000;box-shadow:0 4px 12px #3ebfaa59}[data-theme=light] .check-item.checked .check-circle{background:#147d64;box-shadow:0 4px 12px #147d6433}.nav-item{cursor:pointer;color:var(--text-muted);letter-spacing:.3px;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:8px 14px;font-family:Plus Jakarta Sans,sans-serif;font-size:11px;font-weight:600;text-decoration:none;transition:color .2s,background .2s;display:flex;position:relative}.nav-item.active{color:var(--brand-rose)}.nav-item.active:before{content:"";background:var(--grad-primary);border-radius:100px;width:20px;height:3px;position:absolute;bottom:-2px;left:50%;transform:translate(-50%)}.nav-item:hover:not(.active){color:var(--text-secondary);background:var(--bg-glass2)}.nav-item.active svg{filter:drop-shadow(0 0 6px #e8547a80)}.symptom-slider{appearance:none;background:var(--bg-glass2);border-radius:100px;outline:none;width:100%;height:5px}.symptom-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--grad-primary);cursor:pointer;border-radius:50%;width:22px;height:22px;transition:transform .15s;box-shadow:0 4px 12px #e8547a73}.symptom-slider::-webkit-slider-thumb:active{transform:scale(1.2)}.gradient-text{background:var(--grad-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.gradient-text-gold{background:var(--grad-gold);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.lock-overlay{position:relative;overflow:hidden}.lock-overlay:after{content:"";border-radius:inherit;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0d0910b3;position:absolute;inset:0}[data-theme=light] .lock-overlay:after{background:#f8f4ffb3}.modal-overlay{-webkit-backdrop-filter:blur(8px);z-index:1000;background:#0009;flex-direction:column;justify-content:flex-end;animation:.2s fadeIn;display:flex;position:fixed;inset:0}.modal-sheet{background:var(--bg-card);width:100%;max-width:430px;padding:28px;padding-bottom:calc(28px + env(safe-area-inset-bottom));border-top:1px solid var(--border-glow);border-top-left-radius:28px;border-top-right-radius:28px;max-height:88vh;margin:0 auto;animation:.35s cubic-bezier(.34,1.3,.64,1) slideSheet;position:relative;overflow-y:auto}.modal-sheet:before{content:"";background:var(--border);border-radius:100px;width:36px;height:4px;margin:-10px auto 20px;display:block}.theme-toggle{background:var(--bg-glass2);border:1px solid var(--border);cursor:pointer;border-radius:100px;outline:none;width:52px;height:28px;transition:background .3s;position:relative}.theme-toggle.light-on{background:linear-gradient(135deg,#ffd070,#ff8a50)}.theme-toggle-knob{background:#fff;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;transition:left .3s cubic-bezier(.34,1.56,.64,1);display:flex;position:absolute;top:3px;box-shadow:0 2px 8px #0000004d}.stat-card{background:var(--bg-glass);text-align:center;border:1px solid var(--border);border-radius:16px;flex:1;padding:14px;transition:border-color .2s,background .2s,transform .2s}.stat-card:hover{border-color:var(--border-glow);background:#e8547a0d;transform:translateY(-2px)}.stat-card-num{font-family:Playfair Display,serif;font-size:26px;font-weight:800}.stat-card-label{color:var(--text-muted);margin-top:2px;font-size:12px;font-weight:600}::-webkit-scrollbar{width:3px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#e8547a4d;border-radius:100px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideSheet{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes shimmer-bar{0%{opacity:0;transform:translate(-10px)}50%{opacity:1}to{opacity:0;transform:translate(10px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #e8547a00}50%{box-shadow:0 0 18px 4px #e8547a38}}@keyframes spin-slow{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes heartbeat{0%,to{transform:scale(1)}30%{transform:scale(1.12)}60%{transform:scale(1.06)}}.animate-slideUp{animation:.4s forwards slideUp}.animate-float{animation:4s ease-in-out infinite float}.animate-pulse-glow{animation:2.5s ease-in-out infinite pulse-glow}.animate-heartbeat{animation:2s ease-in-out infinite heartbeat}.stagger-children>:first-child{animation:.4s 50ms both slideUp}.stagger-children>:nth-child(2){animation:.4s .12s both slideUp}.stagger-children>:nth-child(3){animation:.4s .19s both slideUp}.stagger-children>:nth-child(4){animation:.4s .26s both slideUp}.stagger-children>:nth-child(5){animation:.4s .33s both slideUp}.score-ring{transition:stroke-dashoffset 1s cubic-bezier(.34,1.4,.64,1)}.pb-safe{padding-bottom:max(80px,env(safe-area-inset-bottom))}.section-label{letter-spacing:1.2px;text-transform:uppercase;color:var(--text-muted);font-family:Plus Jakarta Sans,sans-serif;font-size:12px;font-weight:700}.divider{background:linear-gradient(90deg,transparent,var(--border),transparent);height:1px;margin:4px 0}.hero-wave{pointer-events:none;position:absolute;bottom:0;left:0;right:0}[data-theme=light] body{color:#11141d;--text-secondary:#3a3e4e;--text-muted:#52576c;background-color:#f7f2ff;background-image:radial-gradient(130% 60% at 20% 0,#e8547a17 0%,#0000 50%),radial-gradient(80% 50% at 80% 100%,#9b6ab012 0%,#0000 50%)}[data-theme=light] .card{background:#fffffff7;border-color:#9b6ab01f;box-shadow:0 4px 24px #9b6ab01a,0 1px 4px #0000000d}[data-theme=light] .card-glow{background:#fffffff7;border-color:#e8547a4d;box-shadow:0 6px 28px #9b6ab024,0 0 40px #e8547a1a}[data-theme=light] .card-glow:before{background:linear-gradient(90deg,#0000,#e8547a59,#0000)}[data-theme=light] .card-glass{background:#ffffffb3;border-color:#0000000f}[data-theme=light] .bg-glass{background:#00000008}[data-theme=light] .bg-glass2{background:#0000000f}[data-theme=light] h1,[data-theme=light] h2,[data-theme=light] h3{color:#11141d}[data-theme=light] p{color:#1e212b}[data-theme=light] .text-secondary{color:#3a3e4e}[data-theme=light] .text-muted{color:#52576c}[data-theme=light] .badge-rose{color:#b8305a;background:#e8547a1f}[data-theme=light] .badge-teal{color:#1d8f80;background:#3ebfaa1f}[data-theme=light] .badge-gold{color:#8a6010;background:#c8a03c1f}[data-theme=light] .badge-mauve{color:#6a3a90;background:#9b6ab01f}[data-theme=light] .progress-bar{background:#00000014}[data-theme=light] .check-item{background:#ffffffd9;border-color:#00000014}[data-theme=light] .check-item:hover{background:#e8547a0d;border-color:#e8547a33}[data-theme=light] .check-item.checked{background:#3ebfaa0f;border-color:#3ebfaa33}[data-theme=light] .check-circle{border-color:#0000002e}[data-theme=light] .stat-card{background:#00000008;border-color:#00000012}[data-theme=light] .stat-card-label{color:#3a3e4e}[data-theme=light] .nav-item{color:#5a6178}[data-theme=light] .nav-item.active{color:var(--brand-rose)}[data-theme=light] .nav-item:hover:not(.active){color:#1a1d29;background:#00000014}[data-theme=light] .input-field{color:#1e0d30;background:#00000008;border-color:#0000001a}[data-theme=light] .input-field::placeholder{color:#9b87b0}[data-theme=light] .orb-rose{opacity:.25}[data-theme=light] .orb-mauve{opacity:.2}[data-theme=light] .orb-teal{opacity:.18}[data-theme=light] ::-webkit-scrollbar-thumb{background:#e8547a33}[data-theme=light] .modal-sheet{background:#fffffffa;border-top-color:#e8547a33}.horizontal-scroll{scroll-behavior:smooth;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;background:0 0;gap:16px;padding:8px 20px 24px;display:flex;overflow-x:auto}.horizontal-scroll::-webkit-scrollbar{display:none}.horizontal-scroll{-ms-overflow-style:none;scrollbar-width:none}.snap-card{scroll-snap-align:center;will-change:transform;flex:0 0 85%;min-width:280px;transition:transform .3s cubic-bezier(.34,1.56,.64,1)}.snap-card:active{transform:scale(.97)}.image-overlay-dark{pointer-events:none;background:linear-gradient(#00000040 0%,#00000073 50%,#000000d9 100%);position:absolute;inset:0}[data-theme=light] .image-overlay-dark{background:linear-gradient(#00000026 0%,#0006 50%,#000c 100%)}.frosted-glass{background:var(--bg-glass);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border)}[data-theme=light] .frosted-glass{background:#fffc;border:1px solid #ffffff80}.app-shell{width:100%;max-width:430px;min-height:100vh;margin:0 auto;position:relative}@media (min-width:768px){body{background-image:var(--grad-bg),radial-gradient(ellipse 40% 60% at 20% 30%,#c8587a12 0%,transparent 55%),radial-gradient(ellipse 35% 50% at 80% 70%,#7e5c8e0f 0%,transparent 55%);justify-content:center;display:flex}.app-shell{border-left:1px solid #ffffff0f;border-right:1px solid #ffffff0f;box-shadow:0 0 0 1px #ffffff0d,0 0 60px #c8587a24,0 8px 80px #0000008c}.app-shell:before{content:"";pointer-events:none;z-index:1000;background:linear-gradient(90deg,#0000,#c8587a80,#7e5c8e66,#0000);height:1px;position:absolute;top:0;left:0;right:0}}.skeleton{background:linear-gradient(90deg,var(--bg-glass2)25%,var(--bg-glass)50%,var(--bg-glass2)75%);background-size:200% 100%;border-radius:8px;animation:1.5s infinite shimmer-bar}.skeleton-circle{border-radius:50%}.skeleton-card{background:var(--bg-card);border:1px solid var(--border);border-radius:20px;flex-direction:column;gap:12px;padding:20px;display:flex}.input-field:focus-visible{outline:2px solid var(--brand-rose);outline-offset:2px}.btn-primary:focus-visible,.btn-secondary:focus-visible{outline:2px solid var(--brand-rose);outline-offset:3px}.btn-pill:focus-visible{outline:2px solid var(--brand-rose);outline-offset:2px}.nav-item:focus-visible{outline:2px solid var(--brand-rose);outline-offset:2px;border-radius:14px}.check-item:focus-visible{outline:2px solid var(--brand-rose);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
