@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Fraunces:wght@700;900&display=swap";:root{--brand-primary:#1a6b6b;--brand-primary-hover:#2e9a9a;--brand-primary-light:#eaf4f4;--brand-accent:#e8875a;--brand-accent-light:#fdf1eb;--brand-amber:#f4c842;--brand-slate:#4a6b7a;--brand-success:#3da882;--bg-page:#f7f5f1;--bg-card:#fff;--bg-muted:#edeae5;--text-primary:#1c2b2b;--text-secondary:#7d8c8c;--text-muted:#9aabab;--border:#d4dede;--border-selected:#1a6b6b;--danger:#dc2626;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-card:0 1px 4px #0000000f}*,:before,:after{box-sizing:border-box}html,body{overflow-x:hidden}body{background:var(--bg-page);color:var(--text-primary);-webkit-font-smoothing:antialiased;margin:0;font-family:DM Sans,sans-serif}button,input{font-family:inherit}ul{margin:0;padding:0;list-style:none}a{color:inherit;text-decoration:none}.page{max-width:540px;min-height:100dvh;margin:0 auto;padding:0 20px 100px}.logo{color:var(--brand-primary);font-family:Fraunces,serif;font-size:22px;font-weight:700}.display-heading{color:var(--text-primary);font-family:Fraunces,serif;font-weight:700}.option-card{border-radius:var(--radius-md);border:1.5px solid var(--border);cursor:pointer;background:var(--bg-card);text-align:left;width:100%;color:var(--text-primary);align-items:center;gap:12px;padding:14px 18px;font-size:15px;font-weight:500;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s;display:flex}.option-card:hover{box-shadow:var(--shadow-card);transform:translateY(-1px)}.option-card.selected{border-color:var(--border-selected);background:var(--brand-primary-light)}.option-card__emoji{flex-shrink:0;font-size:20px}.option-card__label{flex:1}.option-card__check{background:var(--brand-primary);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;display:flex}.continue-btn{border-radius:var(--radius-pill);background:var(--brand-primary);color:#fff;cursor:pointer;width:calc(100% - 48px);max-width:492px;height:56px;padding-bottom:calc(0px + env(safe-area-inset-bottom,0px));z-index:50;border:none;font-size:17px;font-weight:600;transition:background .2s,transform .15s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.continue-btn:hover:not(:disabled){background:var(--brand-primary-hover)}.continue-btn:disabled{opacity:.45;cursor:not-allowed}.progress-bar-track{background:var(--bg-muted);border-radius:2px;height:4px;overflow:hidden}.progress-bar-fill{background:var(--brand-primary);border-radius:2px;height:100%;transition:width .4s}.quiz-chrome{justify-content:space-between;align-items:center;padding:16px 0 8px;display:flex}.quiz-back-btn{cursor:pointer;color:var(--text-secondary);background:0 0;border:none;align-items:center;gap:6px;padding:4px 0;font-size:15px;display:flex}.quiz-step-counter{color:var(--text-muted);font-size:13px}.step-enter{animation:.4s forwards stepIn}@keyframes stepIn{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}.input-field-wrap{flex-direction:column;align-items:center;gap:8px;margin-top:32px;display:flex}.input-field{text-align:center;border:none;border-bottom:2px solid var(--brand-primary);width:220px;color:var(--text-primary);background:0 0;outline:none;padding-bottom:6px;font-size:32px}.input-unit{color:var(--text-secondary);font-size:14px}.countdown-banner{z-index:100;background:var(--brand-accent-light);justify-content:space-between;align-items:center;gap:12px;max-width:100%;padding:10px 20px;display:flex;position:sticky;top:0}.countdown-banner__left{flex-direction:column;gap:2px;display:flex}.countdown-banner__label{color:var(--text-secondary);font-size:12px}.countdown-banner__timer{color:var(--text-primary);font-variant-numeric:tabular-nums;font-size:22px;font-weight:700}.countdown-banner__btn{background:var(--brand-primary);color:#fff;border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;border:none;padding:10px 18px;font-size:13px;font-weight:700}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:20px}.feature-card{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--bg-card);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.feature-card__icon{flex-shrink:0;font-size:22px}.feature-card__title{margin-bottom:4px;font-size:15px;font-weight:600}.feature-card__body{color:var(--text-secondary);margin:0;font-size:13px}.faq-item{border-bottom:1px solid var(--border);overflow:hidden}.faq-question{cursor:pointer;text-align:left;width:100%;color:var(--text-primary);background:0 0;border:none;justify-content:space-between;align-items:center;padding:16px 0;font-size:15px;font-weight:600;display:flex}.faq-icon{flex-shrink:0;font-size:20px;transition:transform .2s}.faq-icon.open{transform:rotate(45deg)}.faq-answer{max-height:0;transition:max-height .3s;overflow:hidden}.faq-answer.open{max-height:200px}.faq-answer p{color:var(--text-secondary);margin:0;padding-bottom:16px;font-size:14px;line-height:1.6}.plan-card{border:1.5px solid var(--border);border-radius:var(--radius-md);cursor:pointer;background:var(--bg-card);text-align:left;width:100%;padding:16px 18px;transition:border-color .15s,background .15s;position:relative;overflow:hidden}.plan-card.selected{border-color:var(--brand-primary);background:var(--brand-primary-light)}.plan-card__badge{background:var(--brand-amber);color:#7a5800;text-align:center;letter-spacing:.04em;padding:4px 0;font-size:11px;font-weight:700;position:absolute;top:0;left:0;right:0}.plan-card__inner{justify-content:space-between;align-items:center;display:flex}.plan-card__radio{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;display:flex}.plan-card.selected .plan-card__radio{border-color:var(--brand-primary);background:var(--brand-primary)}.plan-card.selected .plan-card__radio:after{content:"";background:#fff;border-radius:50%;width:7px;height:7px}.plan-card__name{letter-spacing:.04em;text-transform:uppercase;flex:1;margin-left:12px;font-size:13px;font-weight:700}.plan-card__price-wrap{text-align:right}.plan-card__per-day,.plan-card__prices{color:var(--text-secondary);font-size:13px}.plan-card__prices s{margin-right:6px}.bmi-bar-wrap{margin:20px 0;padding-top:44px}.bmi-bar{background:linear-gradient(to right, var(--brand-primary) 0%, var(--brand-success) 30%, var(--brand-amber) 60%, #dc2626 100%);border-radius:5px;height:10px;position:relative}.bmi-indicator{border:3px solid var(--brand-primary);background:#fff;border-radius:50%;width:18px;height:18px;transition:left .8s;position:absolute;top:-4px;transform:translate(-50%)}.bmi-tooltip{background:var(--brand-accent);color:#fff;white-space:nowrap;border-radius:4px;padding:3px 8px;font-size:12px;font-weight:700;position:absolute;top:-34px;transform:translate(-50%)}.bmi-labels{color:var(--text-muted);justify-content:space-between;margin-top:8px;font-size:11px;display:flex}.bmi-info-box{background:var(--brand-accent-light);border:1px solid var(--brand-accent);border-radius:var(--radius-sm);color:var(--text-primary);margin-top:12px;padding:10px 14px;font-size:13px}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}.btn-shimmer{background:linear-gradient(90deg, var(--brand-primary) 40%, var(--brand-primary-hover) 50%, var(--brand-primary) 60%);background-size:200%;animation:2.5s linear infinite shimmer}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.spinner{border:3px solid var(--bg-muted);border-top-color:var(--brand-primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@keyframes successPop{0%{opacity:0;transform:scale(0)}70%{opacity:1;transform:scale(1.12)}to{opacity:1;transform:scale(1)}}@keyframes successFadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes ringPulse{0%,to{box-shadow:0 0 #1a6b6b40}50%{box-shadow:0 0 0 14px #1a6b6b00}}.success-page{background:var(--bg-page);justify-content:center;align-items:center;min-height:100dvh;padding:24px 20px;display:flex}.success-card{background:var(--bg-card);border-radius:var(--radius-lg);text-align:center;width:100%;max-width:400px;padding:36px 28px 32px;animation:.5s both successFadeUp;box-shadow:0 4px 24px #00000014}.success-ring{background:var(--brand-primary-light);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 20px;animation:2s ease-in-out infinite ringPulse;display:flex}.success-icon-wrap{background:var(--brand-primary);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;animation:.5s cubic-bezier(.34,1.56,.64,1) both successPop;display:flex}.success-icon-wrap--error{background:var(--danger);border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 20px;animation:.4s both successPop;display:flex}.success-icon-char{color:#fff;font-size:28px;font-weight:700;line-height:1}.success-heading{color:var(--text-primary);margin:0 0 8px;font-size:26px}.success-tagline{color:var(--text-secondary);margin:0 0 24px;font-size:15px}.success-sub{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.5}.success-steps{text-align:left;flex-direction:column;gap:12px;margin-bottom:28px;display:flex}.success-step{opacity:.35;align-items:center;gap:12px;transition:opacity .4s;display:flex}.success-step--done,.success-step--active{opacity:1}.success-step__dot{border:1.5px solid var(--border);width:22px;height:22px;color:var(--text-muted);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:700;transition:background .3s,border-color .3s,color .3s;display:flex}.success-step--done .success-step__dot{background:var(--brand-primary);border-color:var(--brand-primary);color:#fff}.success-step__spin{border:2px solid var(--brand-primary);border-top-color:#0000;border-radius:50%;width:10px;height:10px;animation:.7s linear infinite spin;display:block}.success-step--active .success-step__dot{border-color:var(--brand-primary)}.success-step__label{color:var(--text-primary);font-size:14px;font-weight:500}.success-footer{border-top:1px solid var(--border);flex-direction:column;align-items:center;gap:10px;padding-top:20px;display:flex}.success-footer-text{color:var(--text-muted);margin:0;font-size:13px}.unit-toggle{background:var(--bg-muted);border-radius:var(--radius-pill);gap:2px;width:fit-content;margin:0 auto 28px;padding:3px;display:flex}.unit-toggle__btn{border-radius:var(--radius-pill);color:var(--text-secondary);cursor:pointer;background:0 0;border:none;padding:6px 20px;font-size:14px;font-weight:600;transition:background .15s,color .15s}.unit-toggle__btn.active{background:var(--bg-card);color:var(--text-primary);box-shadow:0 1px 3px #0000001a}.height-inputs{justify-content:center;align-items:flex-end;gap:16px;margin-top:8px;display:flex}.height-input-group{flex-direction:column;align-items:center;gap:6px;display:flex}.height-input-group .input-field{width:110px}.continue-btn-inline{border-radius:var(--radius-pill);background:var(--brand-primary);color:#fff;cursor:pointer;border:none;width:100%;height:56px;margin-top:24px;font-size:17px;font-weight:600;transition:background .2s}.continue-btn-inline:hover:not(:disabled){background:var(--brand-primary-hover)}.continue-btn-inline:disabled{opacity:.45;cursor:not-allowed}.bmi-calc-card{background:var(--brand-primary-light);border:1px solid var(--brand-primary);border-radius:var(--radius-md);color:var(--text-primary);align-items:center;gap:10px;margin-top:20px;padding:12px 16px;font-size:13px;display:flex}.bmi-calc-card__icon{flex-shrink:0;font-size:20px}.summary-bmi-section{margin:20px 0}.summary-stats-grid{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.summary-stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px}.summary-stat-card__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:11px}.summary-stat-card__value{color:var(--text-primary);font-size:15px;font-weight:700}.exclude-card{border-radius:var(--radius-md);border:1.5px solid var(--border);cursor:pointer;background:var(--bg-card);text-align:left;width:100%;color:var(--text-primary);align-items:center;gap:12px;padding:14px 18px;font-size:15px;font-weight:500;transition:border-color .15s,background .15s;display:flex}.exclude-card.selected{border-color:var(--border-selected);background:var(--brand-primary-light)}.exclude-card__check{border:2px solid var(--border);background:0 0;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;transition:background .15s,border-color .15s;display:flex}.exclude-card.selected .exclude-card__check{background:var(--brand-primary);border-color:var(--brand-primary)}.exclude-card.locked{opacity:.4;cursor:not-allowed}.exclude-card__label{flex:1}.exclude-card__emoji{flex-shrink:0;font-size:20px}.generation-screen{flex-direction:column;align-items:center;gap:32px;padding:40px 0 80px;display:flex}.generation-ring-wrap{width:140px;height:140px;position:relative}.generation-ring-wrap svg{transform:rotate(-90deg)}.generation-ring-pct{color:var(--text-primary);justify-content:center;align-items:center;font-size:28px;font-weight:700;display:flex;position:absolute;inset:0}.generation-checklist{flex-direction:column;gap:10px;width:100%;display:flex}.generation-check-item{color:var(--text-secondary);align-items:center;gap:12px;font-size:14px;transition:color .3s;display:flex}.generation-check-item.done{color:var(--text-primary)}.generation-check-item__dot{border:2px solid var(--border);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;transition:background .3s,border-color .3s;display:flex}.generation-check-item.done .generation-check-item__dot{background:var(--brand-primary);border-color:var(--brand-primary)}.result-screen{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:32px 0 16px;display:flex}.result-screen__intro{color:var(--text-secondary);font-size:16px;line-height:1.5}.result-screen__number{color:var(--brand-primary);font-family:Fraunces,serif;font-size:80px;font-weight:900;line-height:1}.result-screen__label{color:var(--text-primary);font-family:Fraunces,serif;font-size:26px;font-weight:700}.result-screen__sub{color:var(--text-secondary);font-size:14px}.features-grid{flex-direction:column;gap:10px;margin-top:20px;display:flex}.features-item{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.features-item__icon{flex-shrink:0;margin-top:1px;font-size:22px}.features-item__title{margin-bottom:2px;font-size:14px;font-weight:700}.features-item__body{color:var(--text-secondary);margin:0;font-size:13px}.guarantee-badge{background:var(--brand-primary);text-align:center;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto;display:flex;box-shadow:0 4px 16px #1a6b6b4d}.guarantee-badge__title{color:#fff;letter-spacing:.06em;font-size:10px;font-weight:700;line-height:1.2}.guarantee-badge__icon{margin:4px 0;font-size:24px}
