:root{--paper:#f8f3ed;--paper2:#f2ece8;--ink:#37343a;--muted:#89838d;--line:#d9d1d3;--lav:#77788e;--lav2:#9694aa;--peach:#e8c1ae;--blue:#aeb9cf}*{box-sizing:border-box}html,body{margin:0;background:#ece7e4;color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button{font:inherit;color:inherit}.app{width:min(100%,430px);min-height:100vh;margin:auto;background:var(--paper);padding:24px 22px 56px}.app.edge{padding:0}.brand{font-family:Georgia,"Times New Roman",serif;letter-spacing:.18em;font-size:11px;color:#696672}.landing{min-height:100vh;position:relative;overflow:hidden;background:var(--paper)}.landing-copy{position:absolute;left:26px;right:26px;bottom:max(34px,env(safe-area-inset-bottom));padding:25px 22px 22px;background:rgba(248,243,237,.88);backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.45)}.landing h1{font-size:29px;letter-spacing:-.04em;margin:13px 0 10px}.landing p{font-size:15px;line-height:1.65;color:#66616a;margin:0 0 20px}.primary,.secondary{width:100%;height:54px;border-radius:8px;border:0;cursor:pointer}.primary{background:#666779;color:#fff;font-weight:650}.secondary{background:transparent;border:1px solid #9a97a4;color:#55535d;margin-top:24px}.text-btn{width:100%;border:0;background:none;color:#85808a;padding:16px}.top{display:flex;align-items:center;justify-content:space-between;color:#77727d;font-size:12px;letter-spacing:.08em}.back{border:0;background:none;font-size:21px;padding:6px 10px 6px 0}.choice h2{font-size:22px;line-height:1.5;letter-spacing:-.03em;margin:34px 0 24px}.choice-card{display:block;width:100%;padding:0;margin:0 0 15px;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fbf8f4;text-align:left;box-shadow:0 8px 26px rgba(75,67,78,.045);transition:.2s}.choice-card span{display:block;padding:15px 16px 17px;font-size:15px;line-height:1.55}.choice-card.picked{border-color:#7e7e92;transform:scale(.99);background:#f0eef2}.art{position:relative;overflow:hidden;background:linear-gradient(180deg,#aab5ce 0%,#c9bfd0 38%,#e9c2ae 70%,#d8d3cf 100%);isolation:isolate}.art span{position:absolute;right:10px;bottom:8px;font:9px Georgia,serif;letter-spacing:.16em;color:rgba(73,69,83,.38)}.sun{position:absolute;width:34px;height:34px;border-radius:50%;background:#f5d6b6;right:22%;top:26%;box-shadow:0 0 28px #f4d1b6}.horizon{position:absolute;left:-8%;right:-8%;bottom:0;height:42%;background:linear-gradient(160deg,#7e8aa8,#9aa4bb 45%,#747e99);clip-path:polygon(0 55%,30% 25%,51% 58%,72% 12%,100% 55%,100% 100%,0 100%);opacity:.68}.curtain{position:absolute;left:-5%;top:0;width:30%;height:100%;background:linear-gradient(90deg,rgba(248,234,221,.9),rgba(242,220,213,.15));transform:skewX(-5deg)}.plant{position:absolute;width:55px;height:90px;right:8%;bottom:0;background:rgba(81,91,101,.28);clip-path:polygon(48% 100%,45% 48%,25% 35%,43% 42%,38% 12%,52% 39%,72% 18%,58% 47%,82% 45%,56% 55%,58% 100%)}.hero-art{height:100vh}.choice-art{height:205px}.choice-art.b{filter:hue-rotate(12deg) saturate(.82);background:linear-gradient(180deg,#b8b4c9,#d9bfc2 48%,#eac6ad)}.transition{min-height:85vh;display:grid;place-content:center;text-align:center}.transition p{line-height:1.7;font-size:17px}.polaroid{width:145px;margin:0 auto 28px;background:#eee7e4;padding:8px 8px 22px;transform:rotate(-2deg);box-shadow:0 12px 30px rgba(64,58,68,.12)}.mini-art{height:105px}.dots{letter-spacing:.4em;color:#8b8794}.result-page{padding:0 0 60px}.poster{padding:34px 22px 30px;text-align:center;background:linear-gradient(180deg,#f8f3ed,#f4edef)}.poster .kicker{font-size:12px;color:#8b858e;margin:25px 0 8px}.poster h1{font-size:29px;line-height:1.35;letter-spacing:-.04em;margin:0 auto 24px;max-width:330px}.result-art{height:330px;border-radius:2px}.result-copy{text-align:left;font-size:15px;line-height:1.8;color:#625e66;margin:24px 5px 0}.result-body,.self-cta{padding:34px 22px}.section-head span{font:10px Georgia,serif;letter-spacing:.16em;color:#96909a}.section-head h2{font-size:20px;margin:8px 0 22px}.stat{margin:0 0 17px}.stat>div{display:flex;gap:12px;justify-content:space-between;align-items:flex-end;font-size:13px}.stat span{line-height:1.4}.stat b{font-size:12px;white-space:nowrap}.stat i{display:block;height:2px;background:#858596;margin-top:9px}.self-cta{border-top:1px solid var(--line);text-align:center}.self-cta p{font-size:13px;color:#7e7882;margin:0 0 16px}.sheet-wrap{position:fixed;inset:0;z-index:30;display:flex;align-items:flex-end;justify-content:center}.scrim{position:absolute;inset:0;background:rgba(49,47,55,.52);backdrop-filter:blur(2px)}.sheet{position:relative;width:min(100%,430px);background:#f9f5f0;border-radius:18px 18px 0 0;padding:11px 20px calc(20px + env(safe-area-inset-bottom));box-shadow:0 -12px 40px rgba(41,38,48,.18);animation:up .25s ease-out}.handle{width:38px;height:4px;border-radius:10px;background:#c8c1c4;margin:0 auto 24px}.sheet-label{font:10px Georgia,serif;letter-spacing:.15em;color:#96909a}.sheet h2{font-size:21px;line-height:1.4;margin:7px 0}.muted{font-size:13px;color:#827c86;line-height:1.5}.pair{display:grid;grid-template-columns:1fr 22px 1fr;align-items:center;margin-top:20px}.pair-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;background:#fffaf6;padding:0;text-align:left}.pair-card span{display:block;padding:12px;font-size:13px;line-height:1.45}.pair-art{height:132px}.pair-art.two{filter:hue-rotate(18deg) brightness(.98)}.or{text-align:center;font:9px Georgia,serif;color:#aaa3aa}.sheet-close{width:100%;border:0;background:none;padding:18px 0 4px;color:#817b84;font-size:13px}.toast{position:fixed;left:50%;bottom:30px;transform:translate(-50%,20px);background:#4f4d58;color:#fff;padding:12px 16px;border-radius:999px;font-size:12px;opacity:0;transition:.2s;z-index:50;white-space:nowrap}.toast.show{opacity:1;transform:translate(-50%,0)}@keyframes up{from{transform:translateY(100%)}to{transform:none}}@media(min-width:431px){.app{box-shadow:0 0 45px rgba(65,58,66,.08)}}
/* v0.6 — text-first choice, no numeric progress */
.top{min-height:42px;gap:18px}.top .back{flex:0 0 auto}.journey{position:relative;flex:1;height:18px;margin-right:2px}.journey:before{content:"";position:absolute;left:0;right:0;top:8px;height:1px;background:linear-gradient(90deg,rgba(128,126,146,.15),rgba(128,126,146,.34),rgba(128,126,146,.15))}.journey i{--p:0;position:absolute;left:0;top:7px;height:3px;width:calc(var(--p) * 100%);min-width:8px;border-radius:99px;background:linear-gradient(90deg,rgba(232,193,174,.68),rgba(139,139,163,.75));transition:width .35s ease}.journey span{position:absolute;left:calc(var(--p) * (100% - 8px));top:5px;width:7px;height:7px;border-radius:50%;background:#8c8ca0;box-shadow:0 0 0 5px rgba(140,140,160,.07);transition:left .35s ease}.text-choice{min-height:calc(100vh - 105px);display:flex;flex-direction:column}.scene-label{margin:48px 0 10px;font:10px Georgia,"Times New Roman",serif;letter-spacing:.2em;color:#aaa3aa}.text-choice h2{font-size:24px;line-height:1.58;margin:0;max-width:350px}.choice-stack{margin-top:auto;padding:46px 0 max(18px,env(safe-area-inset-bottom))}.choice-card.text-only{min-height:112px;display:flex;align-items:center;border-radius:12px;background:rgba(255,252,248,.66);box-shadow:none}.choice-card.text-only span{padding:24px 20px;font-size:16px;line-height:1.62}.choice-card.text-only:hover{border-color:#b8b1b7}.choice-card.text-only.picked{border-color:#8f8da0;background:#f0edf1}.pair-card{min-height:128px;display:flex;align-items:center}.pair-card span{padding:18px 14px;font-size:14px;line-height:1.55}.pair-art,.choice-art{display:none}

/* v0.7 refinements */
.journey{height:12px}
.journey:before{top:5px;height:2px;background:rgba(128,126,146,.14);border-radius:99px}
.journey i{top:5px;height:2px;min-width:0;background:linear-gradient(90deg,rgba(232,193,174,.82),rgba(139,139,163,.86));border-radius:99px}
.journey span{display:none!important}
.scene-label{display:none!important}
.text-choice{min-height:calc(100vh - 86px)}
.text-choice h2{font-size:19px;line-height:1.55;margin:30px 0 0;max-width:350px;font-weight:600;letter-spacing:-.025em}
.choice-stack{margin-top:54px;padding:0 0 max(18px,env(safe-area-inset-bottom))}
.choice-card.text-only{min-height:118px;margin-bottom:14px}
.choice-card.text-only span{padding:25px 21px;font-size:18px;line-height:1.58;letter-spacing:-.02em}
.transition{min-height:88vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:0 24px}
.transition p{margin:0;text-align:center;font-size:16px;line-height:1.75}
.loading-line{width:86px;height:2px;margin-top:28px;background:rgba(128,126,146,.13);overflow:hidden;border-radius:99px}
.loading-line i{display:block;width:38%;height:100%;background:#8b8b9d;border-radius:99px;animation:loadingMove 1.05s ease-in-out infinite}
.polaroid,.mini-art,.dots{display:none!important}
@keyframes loadingMove{0%{transform:translateX(-110%)}50%{transform:translateX(180%)}100%{transform:translateX(-110%)}}

/* v0.8 intro artwork */
.intro-landing{position:relative;min-height:100svh;background:#c8c2d3;color:#56576c}
.intro-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
.intro-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(247,241,239,.08) 0%,rgba(248,239,232,0) 48%,rgba(104,101,133,.08) 74%,rgba(92,91,125,.18) 100%);pointer-events:none}
.intro-title{position:absolute;z-index:2;left:24px;right:24px;top:29%;text-align:center;text-shadow:0 1px 12px rgba(249,244,239,.36)}
.intro-brand{font-family:Georgia,"Times New Roman",serif;font-size:27px;line-height:1.34;letter-spacing:.22em;font-weight:400;color:rgba(73,74,96,.86)}
.intro-subtitle{margin-top:12px;font-size:13px;letter-spacing:.12em;color:rgba(80,79,101,.62);font-weight:400}
.intro-action{position:absolute;z-index:2;left:28px;right:28px;bottom:max(42px,calc(env(safe-area-inset-bottom) + 26px))}
.intro-cta{width:100%;height:58px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(83,84,112,.78);box-shadow:0 10px 30px rgba(67,64,91,.14);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:rgba(255,255,255,.94);font-size:16px;font-weight:500;letter-spacing:.06em;cursor:pointer}
.intro-cta span{display:inline-block;margin-left:10px;font-size:19px;font-weight:300;transform:translateY(1px)}
@media(max-height:700px){.intro-title{top:25%}.intro-action{bottom:max(24px,env(safe-area-inset-bottom))}.intro-brand{font-size:24px}}
/* v0.9 */
.intro-cta span{display:none!important}
.script-title{font-family:"Snell Roundhand","Segoe Script","Apple Chancery","URW Chancery L",cursive!important;font-size:42px!important;line-height:.9!important;letter-spacing:.01em!important;font-weight:400!important;color:rgba(69,70,94,.84)!important;text-transform:none;transform:rotate(-2deg)}
.script-title span{display:block}.script-title span+span{margin-top:7px;margin-left:34px}
.intro-subtitle{margin-top:22px}
.poster-text-only{min-height:57svh;display:flex;flex-direction:column;justify-content:center;padding:58px 30px 48px;background:linear-gradient(180deg,#f8f3ed 0%,#f4edef 100%)}
.poster-text-only .brand{margin-bottom:52px}.poster-text-only .kicker{margin:0 0 12px}.poster-text-only h1{margin:0 auto 30px;max-width:350px;font-size:31px;line-height:1.42}.poster-text-only .result-copy{margin:0 auto;max-width:340px;padding-top:28px;border-top:1px solid rgba(133,128,140,.2)}
.result-art{display:none!important}
.sheet-label{display:none!important}
@media(max-height:700px){.script-title{font-size:36px!important}.poster-text-only{min-height:62svh}}
/* v1 rebuild — current friend 8-moment flow + question backgrounds */
.question-app{padding:0!important;overflow:hidden}.question-screen{position:relative;min-height:100svh;padding:24px 22px 28px;background:#f8f3ed}.question-screen.with-bg{background-image:var(--bg);background-size:cover;background-position:center}.question-wash{position:absolute;inset:0;background:linear-gradient(180deg,rgba(248,243,237,.18) 0%,rgba(248,243,237,.38) 36%,rgba(248,243,237,.94) 67%,#f8f3ed 100%);pointer-events:none}.question-screen>*:not(.question-wash){position:relative;z-index:1}.question-screen.with-bg .top{color:#5f5b68}.question-screen.with-bg .text-choice h2{text-shadow:0 1px 12px rgba(255,255,255,.6)}.question-screen.with-bg .choice-card.text-only{background:rgba(251,248,244,.84);backdrop-filter:blur(14px)}.moment-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:18px;max-height:52svh;overflow:auto}.moment-card{border:1px solid var(--line);background:#fffaf6;border-radius:10px;min-height:104px;padding:14px;text-align:left;font-size:13px;line-height:1.5}.moment-card:active{background:#f0edf1;border-color:#8f8da0}.sheet{max-height:88svh;overflow:auto}.loading-line{width:150px;height:2px;background:#ded7d8;margin:24px auto 0;overflow:hidden}.loading-line i{display:block;height:100%;width:45%;background:#8f8da0;animation:load 1s ease-in-out infinite}@keyframes load{0%{transform:translateX(-110%)}100%{transform:translateX(330%)}}
/* v1.1 intro title: stronger handwritten presence */
.script-title{font-family:"Snell Roundhand","Segoe Script","Apple Chancery","URW Chancery L",cursive!important;font-size:46px!important;line-height:.86!important;letter-spacing:-.015em!important;font-weight:700!important;color:rgba(61,61,84,.9)!important;text-shadow:0 1px 0 rgba(255,255,255,.2),0 3px 14px rgba(75,69,96,.12);-webkit-text-stroke:.25px currentColor;transform:rotate(-2.5deg)}
.script-title span+span{margin-top:9px;margin-left:38px}
@media(max-height:700px){.script-title{font-size:39px!important}}

/* v1.2 — full-bleed question art + translucent options + Pretendard system */
html,body,button,input,textarea,select,.app,.brand,.scene-label,.section-head span,.sheet-label,.or,.art span,.intro-brand,.script-title{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
.question-screen{min-height:100svh;background-size:cover!important;background-position:center!important;background-repeat:no-repeat!important}
.question-screen.with-bg{background-image:var(--bg)!important}
.question-wash{inset:0;background:linear-gradient(180deg,rgba(248,243,237,.06) 0%,rgba(248,243,237,.10) 34%,rgba(248,243,237,.18) 56%,rgba(248,243,237,.28) 100%)}
.text-choice{min-height:calc(100svh - 52px)}
.choice-stack{margin-top:auto;padding:26px 0 max(18px,env(safe-area-inset-bottom))}
.choice-card.text-only{background:rgba(248,243,237,.36)!important;border-color:rgba(255,255,255,.42);backdrop-filter:blur(16px) saturate(.85);-webkit-backdrop-filter:blur(16px) saturate(.85);box-shadow:0 8px 28px rgba(65,60,75,.05)}
.choice-card.text-only.picked{background:rgba(239,236,241,.55)!important;border-color:rgba(104,102,125,.58)}
.choice-card.text-only span{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;font-weight:500}
.text-choice h2{font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
/* keep intro title handwritten character while using Pretendard as the product UI font */
.script-title{font-family:"Snell Roundhand","Segoe Script","Apple Chancery","URW Chancery L",cursive!important}

/* v1.3 — remove small serif/English UI labels */
.brand,.section-head>span,.sheet-label,.scene-label,.art>span,.or{display:none!important}

/* v1.4 — hierarchy / centered choices / interaction / result redesign */
:root{
  --ink:#403d49;
  --ink-strong:#34313d;
  --ink-soft:#66616e;
  --muted:#817b87;
  --line-soft:rgba(80,76,92,.14);
  --glass:rgba(248,244,240,.50);
  --glass-picked:rgba(240,235,239,.72);
  --accent:#686879;
}
body{color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.question-screen{padding:20px 20px max(20px,env(safe-area-inset-bottom));}
.question-wash{background:linear-gradient(180deg,rgba(245,240,237,.08) 0%,rgba(245,240,237,.08) 28%,rgba(238,233,235,.14) 55%,rgba(226,220,226,.22) 100%)}
.top{min-height:38px}.back{color:rgba(56,53,65,.72);font-size:19px}
.journey:before{background:rgba(63,61,76,.13)}.journey i{background:rgba(73,72,91,.58)}
.text-choice{min-height:calc(100svh - 78px);display:grid;grid-template-rows:minmax(120px,.72fr) auto minmax(18px,.52fr);align-items:end}
.text-choice h2{grid-row:1;align-self:end;margin:0 auto 26px;max-width:350px;width:100%;font-size:19px;line-height:1.55;font-weight:650;letter-spacing:-.035em;color:var(--ink-strong);text-shadow:0 1px 14px rgba(255,255,255,.48)}
.choice-stack{grid-row:2;width:100%;margin:0;padding:0;align-self:center;display:grid;gap:12px}
.choice-card.text-only{position:relative;min-height:108px;margin:0;border:0!important;border-radius:18px;background:var(--glass)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.28),0 12px 34px rgba(62,57,70,.08);backdrop-filter:blur(18px) saturate(.78);-webkit-backdrop-filter:blur(18px) saturate(.78);overflow:hidden;transition:transform .18s ease,background .18s ease,box-shadow .18s ease}
.choice-card.text-only:before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,transparent 22%,rgba(255,255,255,.22) 50%,transparent 78%);transform:translateX(-110%);transition:transform .42s ease;pointer-events:none}
.choice-card.text-only:hover:before{transform:translateX(110%)}
.choice-card.text-only:hover{transform:translateY(-2px);background:rgba(248,244,240,.58)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.36),0 16px 36px rgba(62,57,70,.10)}
.choice-card.text-only:active{transform:scale(.985)}
.choice-card.text-only.picked{transform:scale(.985);background:var(--glass-picked)!important;box-shadow:inset 0 0 0 1.5px rgba(86,82,105,.32),0 8px 22px rgba(62,57,70,.08)}
.choice-card.text-only.picked:after{content:"";position:absolute;right:18px;top:18px;width:7px;height:7px;border-radius:50%;background:rgba(78,76,96,.66);box-shadow:0 0 0 5px rgba(78,76,96,.08)}
.choice-card.text-only span{padding:23px 22px;font-size:17px;line-height:1.58;font-weight:520;letter-spacing:-.028em;color:#494552}

/* Result is editorial, not a test-report card */
.result-page{background:#f5f0eb;color:var(--ink);padding-bottom:max(54px,env(safe-area-inset-bottom))}
.poster{min-height:56svh;padding:72px 26px 48px;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;background:radial-gradient(circle at 78% 14%,rgba(231,194,174,.28),transparent 32%),linear-gradient(180deg,#e9e5e8 0%,#f5efeb 72%)}
.poster .kicker{margin:0 0 14px;font-size:13px;line-height:1.4;font-weight:600;letter-spacing:-.02em;color:#77717c}
.poster h1{max-width:350px;margin:0;font-size:32px;line-height:1.28;font-weight:700;letter-spacing:-.05em;color:#393642;text-wrap:balance}
.result-copy{max-width:340px;margin:26px 0 0;font-size:16px;line-height:1.82;font-weight:450;letter-spacing:-.025em;color:#5f5a66}
.result-body{padding:42px 24px 30px;background:#f8f4ef}
.section-head h2{margin:0 0 8px;font-size:18px;line-height:1.4;font-weight:650;letter-spacing:-.035em;color:#45414c}
#stats{margin-top:24px}.stat{margin:0 0 22px}.stat>div{align-items:flex-start;gap:18px;font-size:13px;color:#68626d}.stat span{max-width:280px;line-height:1.55}.stat b{font-size:12px;font-weight:600;color:#8a838d}.stat i{height:3px;margin-top:10px;border-radius:999px;background:rgba(100,97,116,.56)}
.secondary,.primary{height:56px;border-radius:16px;font-size:15px;font-weight:650;letter-spacing:-.02em}.secondary{margin-top:28px;border:0;background:rgba(91,88,107,.09);color:#565260}.primary{background:#5f5e70;color:#faf8f5;box-shadow:0 8px 24px rgba(63,59,74,.12)}
.self-cta{padding:34px 24px 12px;border-top:1px solid rgba(84,79,91,.08);background:#f8f4ef}.self-cta p{font-size:13px;line-height:1.5;color:#7b7580}
.sheet{background:#f7f2ed;border-radius:24px 24px 0 0;padding:12px 18px calc(18px + env(safe-area-inset-bottom))}.sheet h2{margin:4px 2px 8px;font-size:21px;line-height:1.42;font-weight:680;letter-spacing:-.04em;color:#3f3b47}.muted{margin-left:2px;font-size:13px;color:#7b7580}.moment-grid{gap:10px}.moment-card{border:0;border-radius:15px;background:rgba(255,252,248,.72);box-shadow:inset 0 0 0 1px rgba(86,82,97,.09);font-size:13px;font-weight:520;letter-spacing:-.025em;color:#4e4956;transition:.16s ease}.moment-card:hover{transform:translateY(-1px);background:#fffaf6}.moment-card:active{transform:scale(.98);background:#ece8ed}.sheet-close{color:#817b85}
@media(max-height:720px){.text-choice{grid-template-rows:minmax(95px,.52fr) auto minmax(10px,.25fr)}.choice-card.text-only{min-height:94px}.choice-card.text-only span{padding:18px 20px}.poster{min-height:50svh;padding-top:54px}}

/* v1.5 — scene-first composition */
.question-screen{padding:18px 20px max(18px,env(safe-area-inset-bottom));}
.question-wash{background:linear-gradient(180deg,rgba(239,235,238,.10) 0%,rgba(239,235,238,.06) 42%,rgba(63,57,68,.05) 100%)}
.top{min-height:34px;align-items:center}.back{font-size:18px;color:rgba(59,55,67,.62)}
.journey{max-width:150px;margin-left:auto}.journey:before{height:1px;background:rgba(62,59,72,.13)}.journey i{height:1px;background:rgba(74,72,91,.48)}
.text-choice{min-height:calc(100svh - 70px);display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:4svh 0 7svh}
.text-choice h2{margin:0 auto 34px;width:100%;max-width:342px;font-size:20px;line-height:1.52;font-weight:560;letter-spacing:-.035em;color:#413d48;text-shadow:0 1px 16px rgba(255,250,247,.72)}
.choice-stack{width:100%;max-width:350px;margin:0 auto;display:grid;gap:10px}
.choice-card.text-only{min-height:0;border-radius:14px!important;background:rgba(247,242,238,.36)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18),0 7px 24px rgba(54,49,61,.045);backdrop-filter:blur(10px) saturate(.82);-webkit-backdrop-filter:blur(10px) saturate(.82)}
.choice-card.text-only span{padding:17px 18px 18px;font-size:16px;line-height:1.58;font-weight:430;letter-spacing:-.025em;color:#4c4752}
.choice-card.text-only:hover{background:rgba(249,245,241,.46)!important;transform:translateY(-1px);box-shadow:inset 0 0 0 1px rgba(255,255,255,.26),0 10px 28px rgba(54,49,61,.06)}
.choice-card.text-only.picked{background:rgba(235,229,234,.58)!important;transform:scale(.99);box-shadow:inset 0 0 0 1px rgba(79,75,94,.18)}
.choice-card.text-only.picked:after{display:none}
.choice-card.text-only:before{opacity:.42}
@media(max-height:720px){.text-choice{padding:2svh 0 4svh}.text-choice h2{margin-bottom:22px;font-size:19px}.choice-card.text-only span{padding:14px 17px;font-size:15.5px}}

/* v1.6 — raised choice composition / quiet scene progress / stronger title mark */
/* Intro title is treated as a display mark, not product UI typography. */
.script-title{
  font-family:"Brush Script MT","Snell Roundhand","Segoe Script","Apple Chancery",cursive!important;
  font-size:50px!important;
  line-height:.82!important;
  font-weight:600!important;
  letter-spacing:-.045em!important;
  color:rgba(58,55,76,.94)!important;
  -webkit-text-stroke:.55px rgba(58,55,76,.94);
  text-shadow:0 1px 0 rgba(255,255,255,.18),0 5px 18px rgba(65,58,84,.14);
  transform:rotate(-3deg) skewX(-4deg);
}
.script-title span+span{margin-top:11px;margin-left:46px}
.intro-subtitle{font-weight:450;letter-spacing:.08em;color:rgba(70,68,87,.66)}

/* Progress becomes a quiet visual trace rather than a survey bar. */
.top{padding-top:2px;gap:16px}
.journey{max-width:128px;height:14px;margin-left:auto;opacity:.82}
.journey:before{
  top:6px;height:3px;border-radius:999px;
  background:repeating-linear-gradient(90deg,rgba(70,67,82,.15) 0 5px,transparent 5px 9px);
}
.journey i{
  top:6px;height:3px;border-radius:999px;
  background:repeating-linear-gradient(90deg,rgba(70,67,82,.52) 0 5px,transparent 5px 9px);
  transition:width .38s cubic-bezier(.22,.8,.3,1);
}

/* Raise the whole decision area while keeping the artwork dominant. */
.text-choice{
  min-height:calc(100svh - 70px);
  justify-content:flex-start;
  padding:25svh 0 0;
}
.text-choice h2{margin:0 auto 25px;font-size:20px;line-height:1.5;font-weight:560}
.choice-stack{gap:9px}
.choice-card.text-only{border-radius:13px!important;background:rgba(247,242,238,.31)!important;backdrop-filter:blur(9px) saturate(.8);-webkit-backdrop-filter:blur(9px) saturate(.8)}
.choice-card.text-only span{padding:15px 18px 16px;font-size:16px;line-height:1.55;font-weight:450;color:rgba(62,58,70,.94)}
@media(max-height:720px){
  .script-title{font-size:43px!important}
  .text-choice{padding-top:18svh}
  .text-choice h2{margin-bottom:20px}
}

/* v1.7 — misted paper choices: softer, warmer, less UI-like */
.choice-stack{gap:10px}
.choice-card.text-only{
  border:0!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,rgba(249,245,239,.52),rgba(241,238,240,.38))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24),0 8px 26px rgba(66,61,72,.035)!important;
  backdrop-filter:blur(22px) saturate(.62) brightness(1.04)!important;
  -webkit-backdrop-filter:blur(22px) saturate(.62) brightness(1.04)!important;
  transition:transform .22s cubic-bezier(.22,.8,.3,1),background .22s ease,box-shadow .22s ease,opacity .22s ease;
}
.choice-card.text-only:before{
  opacity:.28!important;
  background:linear-gradient(110deg,transparent 18%,rgba(255,255,255,.25) 49%,transparent 82%)!important;
}
.choice-card.text-only span{
  padding:16px 19px 17px!important;
  font-size:16px!important;
  line-height:1.58!important;
  font-weight:430!important;
  color:rgba(65,61,70,.84)!important;
}
.choice-card.text-only:hover{
  background:linear-gradient(135deg,rgba(252,248,243,.61),rgba(244,240,242,.46))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.34),0 10px 30px rgba(66,61,72,.045)!important;
}
.choice-card.text-only:active{transform:scale(.992)!important}
.choice-card.text-only.picked{
  background:linear-gradient(135deg,rgba(232,228,235,.66),rgba(239,232,229,.58))!important;
  box-shadow:inset 0 0 0 1px rgba(91,86,104,.13),0 6px 20px rgba(66,61,72,.035)!important;
}

/* v1.8 — intro title reset: remove brush-script logo look */
.script-title{
  font-family:"Palatino Linotype","Book Antiqua",Palatino,Georgia,serif!important;
  font-style:italic!important;
  font-size:36px!important;
  line-height:1.04!important;
  letter-spacing:-.045em!important;
  font-weight:500!important;
  color:rgba(77,75,94,.76)!important;
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  transform:none!important;
}
.script-title span{display:inline!important}
.script-title span:first-child::after{content:" ";}
.script-title span+span{margin:0!important}
.intro-title{top:31%!important}
.intro-subtitle{margin-top:15px!important;font-size:12px!important;font-weight:400!important;letter-spacing:.06em!important;color:rgba(82,79,96,.55)!important}
@media(max-width:370px){.script-title{font-size:32px!important}}

/* v1.9 — authoritative choice surface (single final override) */
.question-app .question-screen .text-choice{
  min-height:calc(100svh - 70px)!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:flex-start!important;
  padding:20svh 0 0!important;
}
.question-app .question-screen .text-choice h2{
  margin:0 auto 22px!important;
  width:100%!important;
  max-width:350px!important;
  font:600 20px/1.48 Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:-.035em!important;
  color:rgba(55,51,62,.88)!important;
  text-shadow:0 1px 14px rgba(255,249,244,.6)!important;
}
.question-app .question-screen .choice-stack{
  width:100%!important;
  max-width:350px!important;
  margin:0 auto!important;
  padding:0!important;
  display:grid!important;
  gap:9px!important;
}
.question-app .question-screen .choice-card.text-only{
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-radius:11px!important;
  background:linear-gradient(112deg,rgba(247,240,231,.48),rgba(239,235,239,.38))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 5px 20px rgba(65,58,70,.025)!important;
  backdrop-filter:blur(22px) saturate(.68)!important;
  -webkit-backdrop-filter:blur(22px) saturate(.68)!important;
  transition:background .22s ease,transform .18s ease,opacity .18s ease!important;
}
.question-app .question-screen .choice-card.text-only::before,
.question-app .question-screen .choice-card.text-only::after{display:none!important}
.question-app .question-screen .choice-card.text-only span{
  display:block!important;
  padding:16px 18px 17px!important;
  font:450 16px/1.55 Pretendard,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  letter-spacing:-.025em!important;
  color:rgba(62,57,68,.82)!important;
}
.question-app .question-screen .choice-card.text-only:hover{
  transform:translateY(-1px)!important;
  background:linear-gradient(112deg,rgba(250,244,236,.58),rgba(242,238,242,.48))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 7px 22px rgba(65,58,70,.035)!important;
}
.question-app .question-screen .choice-card.text-only:active{transform:scale(.992)!important}
.question-app .question-screen .choice-card.text-only.picked{
  background:linear-gradient(112deg,rgba(232,226,222,.62),rgba(226,225,235,.58))!important;
  transform:scale(.992)!important;
}
/* quiet progress: no survey-bar feel */
.question-app .journey{width:86px!important;height:3px!important;background:rgba(73,70,84,.12)!important;border-radius:999px!important;overflow:hidden!important}
.question-app .journey i{display:block!important;height:100%!important;width:calc(var(--p) * 100%)!important;background:rgba(73,70,84,.42)!important;border-radius:999px!important}
@media(max-height:720px){.question-app .question-screen .text-choice{padding-top:15svh!important}}

/* v2.0 — softer translucent paper: less surface, more atmosphere */
.question-app .question-screen .choice-card.text-only{
  background:linear-gradient(112deg,rgba(249,244,237,.25),rgba(239,236,241,.18))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.10),0 4px 22px rgba(65,58,70,.018)!important;
  backdrop-filter:blur(34px) saturate(.52) brightness(1.06)!important;
  -webkit-backdrop-filter:blur(34px) saturate(.52) brightness(1.06)!important;
}
.question-app .question-screen .choice-card.text-only span{
  color:rgba(62,57,68,.76)!important;
}
.question-app .question-screen .choice-card.text-only:hover{
  background:linear-gradient(112deg,rgba(250,246,240,.32),rgba(243,239,243,.25))!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.13),0 6px 24px rgba(65,58,70,.022)!important;
}
.question-app .question-screen .choice-card.text-only.picked{
  background:linear-gradient(112deg,rgba(235,230,226,.38),rgba(229,228,237,.34))!important;
  box-shadow:inset 0 0 0 1px rgba(91,86,104,.09),0 5px 20px rgba(66,61,72,.02)!important;
}

/* v2.1 — typography hierarchy / fixed choice height */
.text-choice h2{font-size:17px!important;line-height:1.5!important;font-weight:500!important;letter-spacing:-.025em!important;margin-top:26px!important;margin-bottom:0!important;max-width:340px!important;color:rgba(55,52,62,.78)!important}
.choice-stack{margin-top:38px!important;padding-bottom:max(18px,env(safe-area-inset-bottom))!important}
.choice-card.text-only{height:112px!important;min-height:112px!important;max-height:112px!important;margin-bottom:12px!important;border:1px solid rgba(255,255,255,.28)!important;border-radius:14px!important;background:rgba(250,247,244,.43)!important;backdrop-filter:blur(34px) saturate(.72)!important;-webkit-backdrop-filter:blur(34px) saturate(.72)!important;box-shadow:0 4px 18px rgba(62,57,68,.025)!important}
.choice-card.text-only span{padding:20px 22px!important;font-size:20px!important;line-height:1.48!important;font-weight:400!important;letter-spacing:-.035em!important;color:rgba(54,51,60,.84)!important}
.choice-card.text-only.picked{background:rgba(248,244,242,.55)!important;border-color:rgba(255,255,255,.42)!important;transform:scale(.988)!important}
@media(max-width:360px){.choice-card.text-only{height:108px!important;min-height:108px!important;max-height:108px!important}.choice-card.text-only span{font-size:18px!important}}

/* v2.2 — ultra-translucent mist + paper grain */
.question-app .question-screen .choice-card.text-only{
  background:rgba(250,247,244,.20)!important;
  border:1px solid rgba(255,255,255,.16)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 4px 18px rgba(55,50,62,.018)!important;
  backdrop-filter:blur(48px) saturate(.42) brightness(1.08)!important;
  -webkit-backdrop-filter:blur(48px) saturate(.42) brightness(1.08)!important;
  isolation:isolate;
}
.question-app .question-screen .choice-card.text-only::before{
  display:block!important;
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.16!important;
  background-image:
    radial-gradient(circle at 17% 23%,rgba(70,65,76,.30) 0 0.7px,transparent .8px),
    radial-gradient(circle at 73% 61%,rgba(255,255,255,.60) 0 0.8px,transparent .9px),
    radial-gradient(circle at 42% 84%,rgba(70,65,76,.22) 0 0.6px,transparent .7px),
    radial-gradient(circle at 91% 17%,rgba(255,255,255,.55) 0 0.7px,transparent .8px);
  background-size:13px 13px,17px 17px,19px 19px,23px 23px;
  mix-blend-mode:soft-light;
}
.question-app .question-screen .choice-card.text-only span{position:relative;z-index:1}
.question-app .question-screen .choice-card.text-only:hover{background:rgba(250,247,244,.26)!important}
.question-app .question-screen .choice-card.text-only.picked{background:rgba(246,242,241,.34)!important;border-color:rgba(255,255,255,.22)!important}

/* v2.3 — final choice typography / fixed option height */
.question-app .question-screen .text-choice h2{
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.55!important;
  letter-spacing:-.02em!important;
}
.question-app .question-screen .choice-stack{
  gap:12px!important;
}
.question-app .question-screen .choice-card.text-only{
  height:112px!important;
  min-height:112px!important;
  max-height:112px!important;
}
.question-app .question-screen .choice-card.text-only span{
  padding:18px 20px!important;
  font-size:22px!important;
  font-weight:300!important;
  line-height:1.48!important;
  letter-spacing:-.035em!important;
}
@media(max-height:720px){
  .question-app .question-screen .text-choice h2{font-size:16px!important}
  .question-app .question-screen .choice-card.text-only{height:112px!important;min-height:112px!important;max-height:112px!important}
  .question-app .question-screen .choice-card.text-only span{padding:18px 20px!important;font-size:22px!important}
}

/* v2.4 — mood backgrounds / cover title / readable question & choices */
.question-app .question-screen.with-bg{background-position:var(--bgpos,center)!important}
.question-app .question-wash{background:linear-gradient(180deg,rgba(248,244,240,.30) 0%,rgba(248,244,240,.22) 38%,rgba(248,244,240,.06) 62%,rgba(40,36,50,.06) 100%)!important}

/* 질문(상황): 16px → 20px, 읽히는 굵기 */
.question-app .question-screen .text-choice h2{
  font-size:20px!important;
  font-weight:600!important;
  line-height:1.52!important;
  letter-spacing:-.035em!important;
  color:rgba(44,41,52,.92)!important;
  text-shadow:0 0 18px rgba(255,251,247,.9),0 1px 2px rgba(255,251,247,.6)!important;
  word-break:keep-all;
}

/* 선택지: 투명도 .20 → .62, 22px/300 → 17px/500, 높이는 내용에 맞춤 */
.question-app .question-screen .choice-card.text-only{
  height:auto!important;
  min-height:86px!important;
  max-height:none!important;
  display:flex!important;
  align-items:center!important;
  margin:0!important;
  border:1px solid rgba(255,255,255,.55)!important;
  border-radius:16px!important;
  background:rgba(251,248,245,.62)!important;
  backdrop-filter:blur(18px) saturate(.9)!important;
  -webkit-backdrop-filter:blur(18px) saturate(.9)!important;
  box-shadow:0 6px 22px rgba(52,46,62,.07)!important;
}
.question-app .question-screen .choice-card.text-only::before{display:none!important}
.question-app .question-screen .choice-card.text-only span{
  padding:18px 20px!important;
  font-size:17px!important;
  font-weight:500!important;
  line-height:1.55!important;
  letter-spacing:-.03em!important;
  color:rgba(46,42,54,.92)!important;
  word-break:keep-all;
}
.question-app .question-screen .choice-card.text-only:hover{background:rgba(252,250,247,.72)!important}
.question-app .question-screen .choice-card.text-only.picked{
  background:rgba(255,253,250,.86)!important;
  border-color:rgba(98,94,118,.45)!important;
  transform:scale(.988)!important;
}
@media(max-height:720px){
  .question-app .question-screen .text-choice h2{font-size:18.5px!important}
  .question-app .question-screen .choice-card.text-only{min-height:76px!important}
  .question-app .question-screen .choice-card.text-only span{padding:15px 18px!important;font-size:16px!important}
}
@media(max-width:360px){
  .question-app .question-screen .choice-card.text-only span{font-size:16px!important}
}

/* 표지 타이틀: Mr Dafoe (확정 서체), 하늘 영역에 배치 */
.intro-title{top:13%!important}
.intro-brand.script-title{
  font-family:"Mr Dafoe","Snell Roundhand","Segoe Script",cursive!important;
  font-style:normal!important;
  font-weight:400!important;
  font-size:66px!important;
  line-height:.9!important;
  letter-spacing:0!important;
  color:rgba(72,68,98,.9)!important;
  text-shadow:0 0 24px rgba(255,248,240,.85),0 2px 10px rgba(255,244,232,.6)!important;
  -webkit-text-stroke:0!important;
  transform:rotate(-4deg)!important;
}
.intro-brand.script-title span{display:block!important}
.intro-brand.script-title span:first-child::after{content:none!important}
.intro-brand.script-title span:first-child{margin-right:48px!important}
.intro-brand.script-title span+span{margin:2px 0 0 56px!important}
.intro-subtitle{
  margin-top:26px!important;
  font-size:14px!important;
  font-weight:500!important;
  letter-spacing:.14em!important;
  color:rgba(70,66,92,.72)!important;
  text-shadow:0 0 14px rgba(255,250,244,.9)!important;
}
.intro-shade{background:linear-gradient(180deg,rgba(250,246,242,.28) 0%,rgba(250,246,242,0) 42%,rgba(84,80,112,0) 70%,rgba(84,80,112,.16) 100%)!important}
@media(max-width:370px){.intro-brand.script-title{font-size:56px!important}}
@media(max-height:700px){.intro-title{top:9%!important}.intro-brand.script-title{font-size:56px!important}}

/* v2.5 — progress bar fix (fill was clipped outside the track) */
.question-app .top .journey{
  position:relative!important;flex:0 0 auto!important;
  width:112px!important;max-width:none!important;height:4px!important;
  margin:0 0 0 auto!important;opacity:1!important;overflow:hidden!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.55)!important;
  box-shadow:inset 0 0 0 1px rgba(73,70,90,.10),0 0 10px rgba(255,250,245,.6)!important;
}
.question-app .top .journey::before{display:none!important}
.question-app .top .journey i{
  position:absolute!important;left:0!important;top:0!important;
  display:block!important;height:100%!important;min-width:4px!important;
  width:calc(var(--p) * 100%)!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,rgba(226,184,164,.95),rgba(98,94,124,.85))!important;
  transition:width .38s cubic-bezier(.22,.8,.3,1)!important;
}
.question-app .top .back{color:rgba(50,47,60,.78)!important}

/* v2.6 — interaction / title size / full-width progress / copyright */
/* intro */
.intro-art{animation:kenburns 14s ease-out both}
.intro-brand.script-title{font-size:56px!important;animation:titleIn 1.4s cubic-bezier(.2,.7,.2,1) .2s both}
.intro-subtitle{animation:fadeUp .9s ease .9s both}
.intro-action{animation:fadeUp .9s ease 1.2s both}
.intro-cta{transition:transform .18s ease,background .2s ease,box-shadow .2s ease}
.intro-cta:hover{background:rgba(83,84,112,.86);box-shadow:0 14px 34px rgba(67,64,91,.2)}
.intro-cta:active{transform:scale(.97)}
.copyright{margin:16px 0 0;text-align:center;font-size:10.5px;font-weight:500;letter-spacing:.24em;color:rgba(255,255,255,.82);text-shadow:0 1px 8px rgba(60,56,84,.35)}
.intro-landing.leaving .intro-title,.intro-landing.leaving .intro-action{opacity:0;transform:translateY(-8px);transition:opacity .35s ease,transform .35s ease}
.intro-landing.leaving .intro-art{filter:blur(6px);transition:filter .38s ease}
@media(max-width:370px){.intro-brand.script-title{font-size:48px!important}}
@media(max-height:700px){.intro-brand.script-title{font-size:48px!important}}

/* progress: full row width */
.question-app .top{gap:14px!important}
.question-app .top .journey{flex:1 1 auto!important;width:auto!important;margin:0!important}

/* question enter / leave */
.question-app .question-screen{animation:sceneIn .6s ease both}
.question-app .question-screen.with-bg::after{content:"";position:absolute;inset:0;z-index:0;background:inherit;animation:bgDrift 12s ease-out both;pointer-events:none}
.question-app .question-screen.with-bg{background-image:none!important;overflow:hidden}
.question-app .question-screen.with-bg::after{background-image:var(--bg);background-size:cover;background-position:var(--bgpos,center);background-repeat:no-repeat}
.question-app .question-wash{z-index:0}
.question-app .text-choice h2{animation:fadeUp .6s cubic-bezier(.2,.7,.2,1) .12s both}
.question-app .choice-card.text-only{position:relative;overflow:hidden;animation:fadeUp .55s cubic-bezier(.2,.7,.2,1) both}
.question-app .choice-card.text-only:nth-child(1){animation-delay:.24s}
.question-app .choice-card.text-only:nth-child(2){animation-delay:.34s}
.question-app .choice-stack.decided .choice-card:not(.picked){opacity:.35!important;transform:scale(.97)!important;transition:opacity .25s ease,transform .25s ease!important}
.question-app .question-screen.leaving .text-choice{opacity:0;transform:translateY(-10px);transition:opacity .26s ease,transform .26s ease}
.ripple{position:absolute;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:rgba(255,255,255,.75);pointer-events:none;animation:ripple .55s ease-out forwards}
@keyframes ripple{to{transform:scale(40);opacity:0}}
@keyframes fadeUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes titleIn{from{opacity:0;transform:rotate(-4deg) translateY(10px);filter:blur(6px)}to{opacity:1;transform:rotate(-4deg);filter:blur(0)}}
@keyframes kenburns{from{transform:scale(1.08)}to{transform:scale(1)}}
@keyframes bgDrift{from{transform:scale(1.07)}to{transform:scale(1)}}
@keyframes sceneIn{from{opacity:.4}to{opacity:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.question-app .question-screen.with-bg{isolation:isolate}
.question-app .question-screen.with-bg::after{z-index:-1}

/* v2.7 — no-flicker bg stage / copyright / progress tone / foggier choices / bottom sheet motion */
.bg-stage{position:fixed;top:0;bottom:0;left:50%;width:min(100%,430px);transform:translateX(-50%);z-index:0;overflow:hidden;background:#f8f3ed;pointer-events:none}
.bg-stage i{position:absolute;inset:0;background-size:cover;background-repeat:no-repeat;opacity:0;transform:scale(1.06);transition:opacity .75s ease}
.bg-stage i.on{opacity:1;animation:stageDrift 12s ease-out forwards}
@keyframes stageDrift{from{transform:scale(1.06)}to{transform:scale(1)}}
#app{position:relative;z-index:1}
.app.edge,.app.question-app{background:transparent!important}
.intro-landing,.question-app .question-screen,.question-app .question-screen.with-bg{background:transparent!important}
.question-app .question-screen{animation:none!important}
.question-app .question-screen.with-bg::after{content:none!important;display:none!important}
.question-app .question-screen .text-choice{transition:opacity .24s ease,transform .24s ease}
.intro-landing.leaving .intro-title,.intro-landing.leaving .intro-action{transition:opacity .3s ease,transform .3s ease}

/* copyright: smaller, further from CTA */
.copyright{margin:26px 0 0!important;font-size:9px!important;font-weight:500!important;letter-spacing:.28em!important;color:rgba(255,255,255,.72)!important;text-shadow:0 1px 6px rgba(60,56,84,.25)!important}
.intro-action{bottom:max(28px,calc(env(safe-area-inset-bottom) + 16px))!important}

/* progress: single calm tone */
.question-app .top .journey{background:rgba(255,255,255,.5)!important;box-shadow:inset 0 0 0 1px rgba(73,70,90,.08)!important}
.question-app .top .journey i{background:rgba(74,70,98,.62)!important}

/* choices: milkier frosted glass */
.question-app .question-screen .choice-card.text-only{
  background:linear-gradient(160deg,rgba(255,255,255,.66),rgba(246,243,246,.5))!important;
  border:1px solid rgba(255,255,255,.7)!important;
  backdrop-filter:blur(40px) saturate(.55) brightness(1.1)!important;
  -webkit-backdrop-filter:blur(40px) saturate(.55) brightness(1.1)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 8px 26px rgba(52,46,62,.06)!important;
}
.question-app .question-screen .choice-card.text-only:hover{background:linear-gradient(160deg,rgba(255,255,255,.74),rgba(248,245,248,.6))!important}
.question-app .question-screen .choice-card.text-only.picked{background:rgba(255,254,252,.9)!important;border-color:rgba(98,94,118,.4)!important}

/* bottom sheet motion */
.sheet-wrap .scrim{opacity:0;transition:opacity .3s ease}
.sheet-wrap .sheet{animation:none!important;transform:translateY(100%);transition:transform .46s cubic-bezier(.2,.9,.25,1)}
.sheet-wrap.open .scrim{opacity:1}
.sheet-wrap.open .sheet{transform:none}
.sheet-wrap.closing .sheet{transform:translateY(100%);transition:transform .3s cubic-bezier(.5,0,.8,.4)}
.sheet-wrap.closing .scrim{opacity:0}
.sheet-wrap .moment-card{opacity:0;transform:translateY(10px);transition:opacity .35s ease var(--d,0ms),transform .35s ease var(--d,0ms),background .2s ease,box-shadow .2s ease}
.sheet-wrap.open .moment-card{opacity:1;transform:none}
.sheet-wrap.picked .moment-card:not(.chosen){opacity:.35;transition-delay:0ms}
.sheet-wrap .moment-card.chosen{background:#fff!important;box-shadow:inset 0 0 0 1.5px rgba(90,86,112,.5),0 6px 18px rgba(60,55,75,.1)!important;transform:scale(1.02);transition-delay:0ms}
.poster h1,.result-copy,.moment-card,.stat span{word-break:keep-all}

/* v2.8 — result hero image / 2-choice image sheet */
.result-page{background:#f6f1ec!important}
.poster.poster-hero{position:relative;min-height:66svh;padding:0!important;display:flex;flex-direction:column;justify-content:flex-end;text-align:left;overflow:hidden;background:#ddd6e0!important}
.poster-hero::before{content:"";position:absolute;inset:0;background:var(--hero) center/cover no-repeat;animation:heroIn 1.6s ease both,stageDrift 14s ease-out both}
.poster-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(246,241,236,0) 30%,rgba(246,241,236,.55) 62%,rgba(246,241,236,.92) 86%,#f6f1ec 100%)}
.poster-copy{position:relative;z-index:1;padding:0 26px 26px}
.poster-hero .kicker{margin:0 0 12px!important;font-size:12.5px!important;font-weight:600!important;letter-spacing:.02em!important;color:rgba(80,76,94,.8)!important;animation:fadeUp .7s ease .5s both}
.poster-hero h1{margin:0!important;max-width:340px;font-size:30px!important;line-height:1.32!important;font-weight:700!important;letter-spacing:-.045em!important;color:#34313d!important;text-shadow:0 0 22px rgba(250,246,242,.9);word-break:keep-all;animation:titleReveal 1s cubic-bezier(.2,.7,.2,1) .7s both}
.result-lede{padding:6px 26px 8px;background:#f6f1ec}
.result-lede .result-copy{margin:0!important;max-width:340px;font-size:16px!important;line-height:1.82!important;color:#5d5864!important;animation:fadeUp .7s ease 1.1s both}
.result-body{background:#f6f1ec!important}
.stat i{width:0!important;transition:width .9s cubic-bezier(.2,.8,.2,1)}
.stat i.grow{width:var(--w)!important}
@keyframes heroIn{from{opacity:0;filter:blur(10px)}to{opacity:1;filter:blur(0)}}
@keyframes titleReveal{from{opacity:0;transform:translateY(12px);filter:blur(4px)}to{opacity:1;transform:none;filter:blur(0)}}

.sheet{overflow:hidden}
.sheet::before{content:"";position:absolute;inset:0;background:var(--sheetbg) center/cover;filter:blur(26px) saturate(.7);transform:scale(1.2);opacity:.45;pointer-events:none}
.sheet::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(248,244,240,.55),rgba(248,244,240,.88) 45%);pointer-events:none}
.sheet>*{position:relative;z-index:1}
.pair-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}
.pair-moment{display:flex;flex-direction:column;padding:0;border:0;border-radius:18px;overflow:hidden;background:rgba(255,253,250,.8);box-shadow:inset 0 0 0 1px rgba(255,255,255,.8),0 8px 24px rgba(60,55,75,.08);text-align:left;cursor:pointer;opacity:0;transform:translateY(14px);transition:opacity .4s ease var(--d),transform .4s cubic-bezier(.2,.8,.2,1) var(--d),box-shadow .2s ease}
.sheet-wrap.open .pair-moment{opacity:1;transform:none}
.pm-img{display:block;aspect-ratio:3/4;background-size:cover;background-position:center;transition:transform .5s ease}
.pair-moment:hover .pm-img{transform:scale(1.04)}
.pm-title{display:block;padding:12px 13px 15px;font-size:14px;line-height:1.5;font-weight:560;letter-spacing:-.03em;color:#46414f;word-break:keep-all;min-height:78px}
.pair-moment:active{transform:scale(.98)}
.sheet-wrap.picked .pair-moment:not(.chosen){opacity:.3;transform:scale(.96);transition-delay:0ms}
.sheet-wrap .pair-moment.chosen{transform:translateY(-4px);box-shadow:inset 0 0 0 2px rgba(90,86,112,.55),0 14px 30px rgba(60,55,75,.16);transition-delay:0ms}
.transition .secondary{margin-top:20px;width:auto;padding:0 28px}
.poster-hero::before,.poster-hero::after,.sheet::before{content:none!important}
.hero-img{position:absolute;inset:0;background-size:cover;background-position:center;animation:heroIn 1.6s ease both,stageDrift 14s ease-out both}
.hero-fade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(246,241,236,0) 30%,rgba(246,241,236,.55) 62%,rgba(246,241,236,.92) 86%,#f6f1ec 100%)}
.sheet>.sheet-bg{position:absolute;inset:-40px;z-index:0;background-size:cover;background-position:center;filter:blur(26px) saturate(.7);opacity:.5;pointer-events:none}
.sheet::after{z-index:0}
.sheet>*:not(.sheet-bg){position:relative;z-index:1}

/* v2.9.3 — choices: foggier & more transparent */
.question-app .question-screen .choice-card.text-only{
  background:linear-gradient(160deg,rgba(255,255,255,.42),rgba(246,243,248,.28))!important;
  border:1px solid rgba(255,255,255,.5)!important;
  backdrop-filter:blur(56px) saturate(.45) brightness(1.14)!important;
  -webkit-backdrop-filter:blur(56px) saturate(.45) brightness(1.14)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.55),0 6px 22px rgba(52,46,62,.05)!important;
}
.question-app .question-screen .choice-card.text-only span{text-shadow:0 0 12px rgba(255,252,248,.75)}
.question-app .question-screen .choice-card.text-only:hover{background:linear-gradient(160deg,rgba(255,255,255,.52),rgba(248,245,250,.38))!important}

/* v2.9.4 — bg "slide-in" zoom on enter, no rising choices */
.bg-stage i{transform:scale(1.12)}
.bg-stage i.on{animation:stageEnter 1.2s cubic-bezier(.16,.84,.3,1) forwards,stageSettle 14s ease-out 1.2s forwards!important}
@keyframes stageEnter{from{transform:scale(1.12)}to{transform:scale(1.04)}}
@keyframes stageSettle{from{transform:scale(1.04)}to{transform:scale(1)}}
.question-app .choice-card.text-only{animation:none!important;opacity:1}
.question-app .text-choice h2{animation-delay:.2s!important}

/* v2.9.5 — truly see-through choices (low blur, low alpha) */
.question-app .question-screen .choice-card.text-only{
  background:linear-gradient(160deg,rgba(255,255,255,.22),rgba(255,255,255,.08))!important;
  border:1px solid rgba(255,255,255,.55)!important;
  backdrop-filter:blur(5px) saturate(.9)!important;
  -webkit-backdrop-filter:blur(5px) saturate(.9)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45),0 4px 18px rgba(52,46,62,.05)!important;
}
.question-app .question-screen .choice-card.text-only span{color:rgba(40,37,48,.95)!important;text-shadow:0 0 10px rgba(255,252,248,.95),0 0 2px rgba(255,252,248,.8)!important}
.question-app .question-screen .choice-card.text-only:hover{background:linear-gradient(160deg,rgba(255,255,255,.3),rgba(255,255,255,.14))!important}
.question-app .question-screen .choice-card.text-only.picked{background:rgba(255,255,255,.62)!important}

/* v2.9.6 — question 16px / choices 22px, gentle background sway */
.question-app .question-screen .text-choice h2{font-size:16px!important;line-height:1.6!important;font-weight:600!important}
.question-app .question-screen .choice-card.text-only span{font-size:22px!important;line-height:1.45!important;font-weight:450!important;letter-spacing:-.035em!important;padding:20px 22px!important}
@media(max-height:720px){
  .question-app .question-screen .text-choice h2{font-size:16px!important}
  .question-app .question-screen .choice-card.text-only span{font-size:20px!important;padding:16px 18px!important}
}
@media(max-width:360px){.question-app .question-screen .choice-card.text-only span{font-size:20px!important}}

.bg-stage i{transform:scale(1.14)}
.bg-stage i.on{animation:stageEnter 1.2s cubic-bezier(.16,.84,.3,1) forwards,bgSway 11s ease-in-out 1.2s infinite alternate!important}
@keyframes stageEnter{from{transform:translate3d(0,0,0) scale(1.14) rotate(0)}to{transform:translate3d(0,0,0) scale(1.08) rotate(0)}}
@keyframes bgSway{
  0%{transform:translate3d(0,0,0) scale(1.08) rotate(0)}
  33%{transform:translate3d(-8px,4px,0) scale(1.085) rotate(-.25deg)}
  66%{transform:translate3d(6px,-3px,0) scale(1.08) rotate(.2deg)}
  100%{transform:translate3d(8px,2px,0) scale(1.085) rotate(.25deg)}
}

/* v2.9.7 — choices 21px + roomier vertical padding, question weight 600→500 */
.question-app .question-screen .text-choice h2{font-weight:500!important}
.question-app .question-screen .choice-card.text-only span{font-size:21px!important;padding:28px 22px!important}
@media(max-height:720px){.question-app .question-screen .choice-card.text-only span{font-size:19px!important;padding:22px 18px!important}}
@media(max-width:360px){.question-app .question-screen .choice-card.text-only span{font-size:19px!important}}
.question-app .question-screen .choice-card.text-only{min-height:0!important}
.question-app .question-screen .choice-card.text-only span{padding:32px 22px!important}
@media(max-height:720px){.question-app .question-screen .choice-card.text-only span{padding:24px 18px!important}}

/* v2.9.9 — result body paragraphs */
.result-lede{padding:10px 26px 20px!important}
.result-lede .result-copy{max-width:360px}
.result-lede .result-copy p{margin:0 0 18px;font-size:16px;line-height:1.85;color:#55505d;letter-spacing:-.02em;word-break:keep-all}
.result-lede .result-copy p:first-child{font-size:17.5px;font-weight:600;color:#3a3642;line-height:1.7}
.result-lede .result-copy p:last-child{margin:26px 0 0;font-weight:600;color:#3a3642}

/* v3.0 — friend-flow preview */
.preview-bar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px;background:rgba(58,54,72,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff;font-size:12.5px;letter-spacing:-.01em}
.preview-bar button{flex:none;height:30px;padding:0 12px;border:1px solid rgba(255,255,255,.45);border-radius:999px;background:transparent;color:#fff;font-size:12px;font-weight:600}
.preview-link{display:block;margin:14px auto 0;padding:6px 4px;border:0;background:none;color:#7a7484;font-size:13px;text-decoration:underline;text-underline-offset:3px}

/* v3.5 — main color: terracotta #B06F55 (replaces lavender accents) */
:root{--main:#B06F55;--main-deep:#8E5541;--main-ink:#6B3F31;--main-soft:rgba(176,111,85,.12);--ink:#35302e}
/* intro */
.intro-cta{background:rgba(176,111,85,.9)!important;border-color:rgba(255,255,255,.28)!important;box-shadow:0 12px 30px rgba(142,85,65,.22)!important}
.intro-cta:hover{background:rgba(160,98,74,.95)!important;box-shadow:0 14px 34px rgba(142,85,65,.28)!important}
.intro-brand.script-title{color:rgba(107,63,49,.92)!important}
.intro-subtitle{color:rgba(107,63,49,.72)!important}
/* question */
.question-app .top .journey i{background:var(--main)!important}
.question-app .top .back{color:rgba(80,50,40,.78)!important}
.question-app .question-screen .text-choice h2{color:rgba(52,40,36,.94)!important}
.question-app .question-screen .choice-card.text-only span{color:rgba(46,36,32,.95)!important}
.question-app .question-screen .choice-card.text-only.picked{border-color:rgba(176,111,85,.55)!important;box-shadow:0 0 0 1px rgba(176,111,85,.25),0 8px 24px rgba(142,85,65,.12)!important}
/* loading / result */
.loading-line{background:rgba(176,111,85,.15)!important}.loading-line i{background:var(--main)!important}
.primary{background:var(--main)!important;color:#fff!important}
.secondary{border-color:rgba(176,111,85,.45)!important;color:var(--main-deep)!important}
.stat i{background:var(--main)!important}
.poster-hero .kicker{color:rgba(142,85,65,.85)!important}
.poster-hero h1{color:#3a2e2a!important}
.result-lede .result-copy p:first-child,.result-lede .result-copy p:last-child{color:#3a2e2a!important}
/* sheet */
.sheet-wrap .pair-moment.chosen{box-shadow:inset 0 0 0 2px rgba(176,111,85,.7),0 14px 30px rgba(142,85,65,.18)!important}
.toast{background:#4a3a34!important}
.preview-bar{background:rgba(110,66,50,.9)!important}
