:root{
  --navy:#1b1d29;--navy2:#2a2f43;--red:#9a745e;--cream:#f7f5f2;--paper:#fff;
  --ink:#1b1d29;--muted:#665f5b;--line:#d8d2ce;--soft:#f0f4f8;
  --shadow:0 16px 42px rgba(27,29,41,.13);--shadow2:0 26px 70px rgba(27,29,41,.20);
  --safeBottom:max(14px,env(safe-area-inset-bottom))
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#e9e5e1;color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overscroll-behavior-y:none}
button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}
.app{width:min(100%,760px);margin:auto;min-height:100vh;background:var(--cream);position:relative;box-shadow:0 0 70px rgba(27,29,41,.12);padding-bottom:calc(132px + var(--safeBottom))}
.topbar{height:92px;padding:max(18px,env(safe-area-inset-top)) 18px 12px;background:rgba(27,29,41,.97);backdrop-filter:blur(18px);color:#fff;display:flex;align-items:flex-end;justify-content:space-between;position:sticky;top:0;z-index:60}
.brand{border:0;background:none;color:#fff;padding:0;font-family:Georgia,serif;font-style:italic;font-size:31px;line-height:.9;letter-spacing:-1.7px;text-align:center}
.brand small{display:block;font:800 7px/1.2 Inter,sans-serif;letter-spacing:2.2px;margin-top:6px;color:#f2f6fb}
.round{height:44px;border-radius:999px;display:flex;align-items:center;justify-content:center;gap:5px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.07);color:#fff;padding:0 10px}
.round>span{font-size:16px;line-height:1}.round>small{font-size:9px;line-height:1;font-weight:900;color:#fff;white-space:nowrap}
.screen{display:none;min-height:calc(100vh - 210px)}.screen.active{display:block;animation:screenIn .22s cubic-bezier(.2,.75,.25,1) both}
@keyframes screenIn{from{opacity:0;transform:translate3d(10px,0,0)}to{opacity:1;transform:none}}
.intro,.question,.brief{padding:28px 20px 34px}.intro{padding-top:34px}
.meta{font-size:10px;text-transform:uppercase;letter-spacing:1.8px;font-weight:900;color:var(--red)}
.intro h1,.question h2,.brief h2{font-family:Georgia,serif;letter-spacing:-1.7px;line-height:1.02}
.intro h1{font-size:43px;margin:8px 0 12px}.intro p,.question>p,.brief>p{margin:0;color:var(--muted);font-size:14px;line-height:1.55}
.routeStack{display:grid;gap:11px;padding:0 20px 38px}.route{width:100%;border:1px solid var(--line);background:#fff;border-radius:24px;padding:17px;display:grid;grid-template-columns:52px 1fr 28px;gap:12px;align-items:center;text-align:left;color:var(--ink);box-shadow:var(--shadow)}
.routeIcon{width:50px;height:50px;border-radius:17px;background:var(--red);color:#fff;display:grid;place-items:center;font-weight:950;font-size:21px}.routeIcon.tan{background:#c6aa96}
.route strong{font-size:17px;display:block;margin-bottom:4px}.route small{font-size:10.5px;line-height:1.4;color:var(--muted);display:block}.route i{font-style:normal;font-size:25px;color:var(--red);text-align:center}
.question{padding-top:40px}.question h2{font-size:36px;margin:8px 0 10px}
.choices{display:grid;gap:10px;margin-top:20px}.choices button{border:1px solid var(--line);background:#fff;border-radius:20px;padding:16px;text-align:left;color:var(--ink);box-shadow:0 10px 28px rgba(27,29,41,.08)}
.choices button strong{display:block;font-size:15px;margin-bottom:5px}.choices button small{display:block;color:var(--muted);font-size:10.5px;line-height:1.45}.choices button.active{border-color:var(--red);box-shadow:inset 0 0 0 1px var(--red),0 12px 28px rgba(154,116,94,.12);background:#fffaf6}
.choices.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.choices.compact button{min-height:78px;display:flex;align-items:center;font-weight:850}
.moneyCard,.subcard,.briefCard,.agendaCard{border:1px solid var(--line);background:#fff;border-radius:24px;padding:18px;box-shadow:var(--shadow);margin-top:14px}
.moneyCard{background:linear-gradient(145deg,#1b1d29,#303548);color:#fff}.moneyCard>strong{display:block;font-family:Georgia,serif;font-size:34px;font-weight:500;margin-bottom:12px}.moneyCard input{width:100%;accent-color:#c9aa96}.moneyCard>div{display:flex;justify-content:space-between;color:#c9c0b9;font-size:9px;margin-top:7px}
.subcard{box-shadow:none;background:#fbfaf8}.pills{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.pills button{border:1px solid #d7d1cc;background:#fff;border-radius:999px;padding:9px 12px;color:#5c5551;font-size:10px}.pills button.active{background:var(--navy);color:#fff;border-color:var(--navy)}
.brief h2{font-size:38px;margin:8px 0 10px}.briefCard>div:last-child,.agendaCard>div:last-child{display:grid;gap:8px;margin-top:11px}.briefCard.mutedCard{background:#f2eeea}
.row{border-top:1px solid #e1dbd6;padding-top:8px}.row b{display:block;font-size:9px}.row span{display:block;color:var(--muted);font-size:10.5px;line-height:1.45;margin-top:3px}
.agendaCard{background:linear-gradient(145deg,#1b1d29,#303548);color:#fff}.agendaCard .meta{color:#c9aa96}.agendaCard h3{font-family:Georgia,serif;font-size:24px;font-weight:500;line-height:1.08;margin:7px 0 2px}.agendaItem{display:grid;grid-template-columns:26px 1fr;gap:8px;border-top:1px solid rgba(255,255,255,.13);padding-top:8px}.agendaItem b{font-size:8px;color:#c9aa96}.agendaItem span{font-size:10px;line-height:1.45;color:#e6e0dc}
.handoffs{display:grid;gap:10px;margin-top:14px}.handoffs a,.handoffs button{display:block;width:100%;border:1px solid var(--line);background:#fff;border-radius:20px;padding:16px;text-align:left;color:var(--ink)}.handoffs .primary{background:var(--red);color:#fff;border-color:var(--red)}
.handoffs small{display:block;font-size:8px;font-weight:900;letter-spacing:1px}.handoffs strong{display:block;font-size:16px;margin:7px 0 3px}.handoffs span{display:block;font-size:10px;line-height:1.4;color:var(--muted)}.handoffs .primary span{color:#f5eae3}
.privacyNote{font-size:9px!important;text-align:center;margin-top:13px!important}
.bottomnav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,760px);height:calc(64px + var(--safeBottom));padding-bottom:var(--safeBottom);background:rgba(255,255,255,.97);backdrop-filter:blur(18px);border-top:1px solid #ded8d2;display:grid;grid-template-columns:repeat(5,1fr);z-index:55}
.bottomnav a{display:grid;place-items:center;align-content:center;gap:2px;color:#5d5652;font-size:14px}.bottomnav small{font-size:8px;font-weight:850}.bottomnav a.active{color:var(--red)}
.flowNav{position:fixed;left:50%;bottom:calc(64px + var(--safeBottom));transform:translateX(-50%);width:min(100%,760px);height:58px;background:rgba(247,245,242,.98);backdrop-filter:blur(14px);border-top:1px solid #ddd7d2;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:9px 14px;z-index:54}
.flowNav button{border-radius:999px;min-height:38px;padding:0 13px;font-size:9px;font-weight:900}.flowNav #flowBack{background:#fff;border:1px solid #d8d2ce;color:var(--ink)}.flowNav #flowNext{background:var(--red);border:1px solid var(--red);color:#fff}.flowNav span{text-align:center;font-size:9px;font-weight:900;color:var(--muted)}
.toast{position:fixed;left:50%;bottom:calc(132px + var(--safeBottom));transform:translate(-50%,16px);opacity:0;transition:.2s;background:#1b1d29;color:#fff;border-radius:999px;padding:10px 14px;font-size:9px;z-index:80;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%,0)}
@media(min-width:760px){.intro,.question,.brief{padding-left:36px;padding-right:36px}.routeStack{padding-left:36px;padding-right:36px}.question h2{font-size:40px}.intro h1{font-size:48px}.choices.compact{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:520px){.brand{font-size:27px}.brand small{font-size:6px;letter-spacing:1.8px}.round{padding:0 8px}.round small{display:none}.intro h1{font-size:38px}.question h2{font-size:32px}.choices.compact{grid-template-columns:1fr 1fr}.route{grid-template-columns:46px 1fr 20px;padding:14px}.routeIcon{width:44px;height:44px;border-radius:15px}.route strong{font-size:15px}.route small{font-size:9.5px}}
@media(max-width:360px){.choices.compact{grid-template-columns:1fr}.intro,.question,.brief{padding-left:15px;padding-right:15px}.routeStack{padding-left:15px;padding-right:15px}.flowNav span{display:none}.flowNav{grid-template-columns:1fr 1fr}.flowNav button{width:100%}}