:root{--bg: #faf6ef;--bg-soft: #fffdf8;--bg-card: #ffffff;--bg-card-2: #f4efe6;--fg: #2a2a35;--muted: #6e6b7b;--accent: #7c6bf0;--accent-strong: #6a58e0;--accent-2: #c67c33;--danger: #e05c74;--ok: #3fa968;--line: #eae2d4;--shadow: 0 4px 20px rgba(92, 74, 46, .08);--shadow-sm: 0 2px 10px rgba(92, 74, 46, .06);--radius: 18px;font-synthesis:none}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:radial-gradient(120% 80% at 50% 0%,var(--bg-soft) 0%,var(--bg) 60%);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,Roboto,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}.app{max-width:460px;margin:0 auto;min-height:100%;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom)}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:14px 18px;background:#faf6efd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.brand{font-weight:800;font-size:20px;letter-spacing:2px;background:none;border:none;color:var(--fg);cursor:pointer}.lang-toggle{display:flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.lang-toggle button{border:none;background:transparent;color:var(--muted);padding:6px 14px;font-size:13px;font-weight:700;cursor:pointer}.lang-toggle button.on{background:var(--accent);color:#fff}.screen{flex:1;padding:18px}.card{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:20px;margin-bottom:16px;box-shadow:var(--shadow)}.landing{margin:-18px}.lp-hero{position:relative;min-height:calc(100dvh - 60px);display:flex;align-items:flex-end;overflow:hidden}.lp-hero-media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(120% 80% at 50% 0%,#efe8ff 0%,var(--bg) 70%)}.lp-video{width:100%;height:100%;object-fit:cover;opacity:.5}.lp-hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(250,246,239,.1) 0%,rgba(250,246,239,.55) 55%,var(--bg) 100%)}.lp-hero-content{position:relative;z-index:1;width:100%;padding:28px 22px 40px;animation:lp-rise .9s cubic-bezier(.2,.7,.2,1) both}@keyframes lp-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}.lp-kicker{display:block;font-size:13px;letter-spacing:.06em;color:var(--accent-2);margin-bottom:14px}.lp-title{white-space:pre-line;margin:0 0 14px;font-size:32px;font-weight:800;line-height:1.22;letter-spacing:-.02em}.lp-sub{margin:0 0 24px;font-size:15px;line-height:1.55;color:#57545f;max-width:32ch}.lp-cta{width:100%}.lp-scroll{display:block;margin-top:18px;text-align:center;font-size:12px;color:var(--muted);animation:lp-bob 1.8s ease-in-out infinite}@keyframes lp-bob{0%,to{transform:translateY(0);opacity:.55}50%{transform:translateY(4px);opacity:1}}.lp-section{padding:56px 22px}.lp-h2{margin:0 0 8px;font-size:24px;font-weight:800;letter-spacing:-.01em;text-align:center}.lp-p{margin:0 0 26px;text-align:center;color:var(--muted);font-size:14px}.lp-problem,.lp-product{padding-top:40px;padding-bottom:40px}.lp-lead{max-width:640px;margin:0 auto;text-align:center;font-size:19px;line-height:1.6;font-weight:700;letter-spacing:-.01em}.lp-product .lp-lead{color:var(--accent, #7c5cff)}.lp-char-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.lp-char{display:flex;justify-content:center}.lp-char img{width:100%;height:auto;max-width:84px;filter:drop-shadow(0 6px 12px rgba(124,107,240,.18))}.lp-features{padding-top:8px}.lp-feature{text-align:center;padding:22px 0;border-top:1px solid var(--line)}.lp-feature.reveal:first-child{border-top:none}.lp-feat-ico{font-size:24px;color:var(--accent)}.lp-feature h3{margin:10px 0 6px;font-size:18px}.lp-feature p{margin:0;color:var(--muted);font-size:14px}.lp-final{padding:56px 22px 64px;text-align:center}.lp-final .lp-cta{margin-top:18px}.lp-privacy{margin:18px 0 0;font-size:12px;color:var(--muted)}.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal.in{opacity:1;transform:none}@media (prefers-reduced-motion: reduce){.reveal{opacity:1;transform:none;transition:none}.lp-scroll,.lp-hero-content{animation:none}}@media (max-width: 360px){.lp-title{font-size:28px}.lp-char img{max-width:64px}}.tagline{margin:2px 0 20px;font-size:15px;color:var(--accent-2);text-align:center}.hero{margin:2px 0 22px;text-align:center}.hero-title{margin:0 0 8px;font-size:22px;font-weight:800;line-height:1.3;letter-spacing:-.01em;color:var(--fg)}.hero-sub{margin:0;font-size:14px;line-height:1.55;color:var(--muted)}@media (max-width: 360px){.hero-title{font-size:20px}}.field{display:flex;flex-direction:column;margin-bottom:20px}.field-label{font-size:14px;font-weight:600;margin-bottom:8px}.muted{color:var(--muted);font-weight:400;font-size:12px}input[type=date],input[type=time],input[type=text]{width:100%;background:var(--bg-card-2);border:1px solid var(--line);border-radius:12px;color:var(--fg);padding:13px 14px;font-size:16px;color-scheme:light}input:focus{outline:2px solid var(--accent);outline-offset:1px}.suggest{list-style:none;margin:6px 0 0;padding:6px;background:var(--bg-card-2);border:1px solid var(--line);border-radius:12px}.suggest li button{width:100%;display:flex;justify-content:space-between;align-items:center;gap:10px;background:none;border:none;color:var(--fg);padding:10px 8px;border-radius:8px;font-size:15px;cursor:pointer;text-align:left}.suggest li button:hover{background:var(--bg-card)}.picked{margin-top:8px;font-size:14px;color:var(--ok)}.checkbox{display:flex;align-items:center;gap:8px;margin-top:10px;font-size:14px;cursor:pointer}.checkbox input{width:18px;height:18px;accent-color:var(--accent)}.hint{margin-top:8px;font-size:13px;color:var(--accent-2)}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{background:var(--bg-card-2);border:1px solid var(--line);border-radius:999px;color:var(--fg);padding:9px 15px;font-size:14px;cursor:pointer}.chip.on{background:var(--accent);border-color:var(--accent);color:#fff}.checkin{margin-top:4px}.checkin-row{margin-bottom:12px}.checkin-q{display:block;font-size:13px;color:var(--muted);margin-bottom:6px}.segmented{display:flex;flex-wrap:wrap;gap:6px}.seg{flex:1 1 auto;min-width:64px;background:var(--bg-card-2);border:1px solid var(--line);border-radius:10px;color:var(--fg);padding:9px 10px;font-size:13px;cursor:pointer;text-align:center}.seg.on{background:var(--accent);border-color:var(--accent);color:#fff}.error{color:var(--danger);font-size:14px;margin:0 0 14px}.cta{width:100%;background:linear-gradient(135deg,var(--accent),var(--accent-strong));border:none;border-radius:14px;color:#fff;padding:16px;font-size:17px;font-weight:700;cursor:pointer;margin-top:6px;box-shadow:0 6px 16px #7c6bf047}.cta:active{transform:translateY(1px)}.cta.ghost{background:transparent;border:1px solid var(--line);color:var(--muted);margin-top:4px}.section-tag{display:inline-block;font-size:12px;letter-spacing:1px;color:var(--accent);text-transform:uppercase;margin-bottom:8px}.char-wrap{display:flex;justify-content:center;margin:6px 0 4px}.char-portrait{width:144px;height:144px;object-fit:contain;filter:drop-shadow(0 8px 16px rgba(124,107,240,.18))}@media (max-width: 360px){.char-portrait{width:120px;height:120px}}.type-name{font-size:34px;margin:4px 0;line-height:1.15}.coordinate{font-size:13px;color:var(--muted);margin:0 0 14px}.essence{font-size:17px;margin:0 0 18px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.two-col .mini{margin:0 0 4px;font-size:18px;color:var(--accent-2)}.two-col p{margin:0;font-size:14px;color:var(--fg)}.modifier{margin-top:18px;padding-top:16px;border-top:1px solid var(--line)}.modifier p{margin:8px 0 0;font-size:14px}.badge{display:inline-block;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px}.badge-강{background:#f6788a2e;color:var(--danger)}.badge-약{background:#8b7cf633;color:var(--accent)}.badge-균형{background:#6fd28a2e;color:var(--ok)}.phase-name{font-size:26px;margin:4px 0 8px}.meaning{font-size:16px;margin:0 0 10px}.advice{font-size:15px;color:var(--accent-2);margin:0}.rx-row{padding:12px 0;border-bottom:1px solid var(--line)}.rx-row:last-child{border-bottom:none}.rx-label{font-size:13px;margin:0 0 6px;display:inline-block;padding:3px 10px;border-radius:8px}.rx-label.use{background:#6fd28a26;color:var(--ok)}.rx-label.warn{background:#f6788a26;color:var(--danger)}.rx-label.step{background:#f6c17726;color:var(--accent-2)}.rx-row p{margin:0;font-size:15px}.feedback{text-align:center}.fb-prompt{margin:0 0 12px;font-size:15px}.fb-buttons{display:flex;gap:8px;justify-content:center}.fb-buttons button{flex:1;background:var(--bg-card-2);border:1px solid var(--line);border-radius:12px;color:var(--fg);padding:12px;font-size:14px;cursor:pointer}.thanks{margin:0;color:var(--ok);font-size:15px}.aiprofile{border:1px solid var(--accent)}.ap-pitch{margin:0 0 14px;font-size:14px;line-height:1.6;color:var(--fg)}.aiprofile .cta{margin-top:4px}.ap-paywall-note{margin:8px 2px 0;font-size:12px;color:var(--muted);text-align:center}.ap-paypal{margin-top:4px}.ap-paypal .ap-paywall-note{margin-top:12px}.ap-block{background:var(--bg-card-2);border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:12px}.ap-identity{margin:0 0 14px;font-size:15px;font-weight:600;line-height:1.55}.ap-sub{margin:14px 0 8px;font-size:12px;letter-spacing:.04em;color:var(--accent-2);text-transform:uppercase}.ap-rules{margin:0;padding-left:20px}.ap-rules li{margin:6px 0;font-size:14px;line-height:1.55}.ap-strength{margin:10px 0 0;font-size:13px;color:var(--muted)}.ap-stuck{margin:0;font-size:14px;line-height:1.55}.ap-block .cta{margin-top:16px}.funnel{display:flex;align-items:stretch;gap:6px;margin:4px 0 16px}.funnel-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 6px;border-radius:12px;border:1px solid var(--line);background:var(--bg-card-2);text-align:center}.funnel-step.done{border-color:color-mix(in srgb,var(--ok) 45%,var(--line))}.funnel-step.now{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.funnel-step.soon{opacity:.72}.funnel-n{font-size:13px;color:var(--muted)}.funnel-step.done .funnel-n{color:var(--ok)}.funnel-step.now .funnel-n{color:var(--accent)}.funnel-name{font-size:12.5px;font-weight:700;line-height:1.3}.funnel-sub{font-size:10.5px;color:var(--muted);line-height:1.3}.funnel-arrow{align-self:center;color:var(--muted);font-size:12px;flex:0 0 auto}.card.partner{border-color:color-mix(in srgb,var(--accent) 30%,var(--line))}.partner-tag{color:var(--accent)}.partner-teaser{margin:10px 0 14px;font-size:14px;line-height:1.6;color:var(--fg)}.partner-cta{margin-top:4px}.partner-thanks{margin:8px 0 0;font-size:14px;text-align:center;color:var(--ok)}.survey{margin-top:6px}.survey-intro{margin:0 0 14px;font-size:13px;color:var(--muted);line-height:1.55}.survey-q{margin-bottom:14px}.survey-q-label{margin:0 0 8px;font-size:13.5px;font-weight:600}.survey-opts{display:flex;flex-wrap:wrap;gap:6px}.survey-opt{padding:8px 12px;border-radius:999px;border:1px solid var(--line);background:var(--bg-card-2);color:var(--fg);font-size:12.5px;cursor:pointer;transition:border-color .15s,background .15s}.survey-opt:hover{border-color:var(--accent)}.survey-opt.picked{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 22%,var(--bg-card-2));font-weight:600}.survey-email-label{display:block;margin:16px 0 6px;font-size:13px;color:var(--muted)}.survey-email{width:100%;padding:11px 12px;border-radius:10px;border:1px solid var(--line);background:var(--bg-card-2);color:var(--fg);font-size:14px}.survey-email:focus{outline:none;border-color:var(--accent)}.survey-privacy{margin:8px 2px 14px;font-size:12px;color:var(--muted);line-height:1.5}.share .cta{margin-top:12px}.share-note{margin:8px 2px 4px;font-size:13px;color:var(--ok)}.share-warning{margin:8px 2px 0;font-size:13px;color:var(--accent-2);display:flex;gap:6px}.share-warning:before{content:"⚠"}.toast{margin:12px 0 0;text-align:center;font-size:14px;color:var(--accent)}.footnote{padding:18px;text-align:center;border-top:1px solid var(--line)}.footnote p{margin:0 0 4px;font-size:12px;color:var(--muted)}.footnote .source{font-size:11px;opacity:.7}
