/* App UI carousel adapted from the approved standalone preview. */
#app-feature-carousel{--ink:#111827;--soft:#656b76;--faint:#858b97;--paper:#fbfcfe;--blue:#4b8cf6;--violet:#8b5cf6;--green:#10b981;--font:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Arial,sans-serif}
#app-feature-carousel, #app-feature-carousel *{box-sizing:border-box}
#app-feature-carousel button{font:inherit}
#app-feature-carousel svg{display:block}
#app-feature-carousel .intro{width:min(1320px,calc(100% - 64px));margin:auto;padding:76px 0 42px}
#app-feature-carousel .eyebrow{margin:0 0 15px;color:#9ca8c3;font-size:12px;font-weight:700;letter-spacing:.17em;text-transform:uppercase}
#app-feature-carousel .intro h1{margin:0;font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em;font-size:clamp(40px,6vw,77px);line-height:1.05}
#app-feature-carousel .intro>p:not(.eyebrow){max-width:700px;margin:20px 0 0;color:#9ca4b6;font-size:16px;line-height:1.55}
#app-feature-carousel .note{display:inline-block;margin-top:24px;padding:9px 13px;border:1px solid #2e3442;border-radius:999px;color:#b3bdd1;font-size:11px;letter-spacing:.03em}
#app-feature-carousel .carousel{position:relative;padding:4px 0 70px}
#app-feature-carousel .rail{display:flex;gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:max(32px,calc((100vw - 1320px)/2));scrollbar-width:none;overscroll-behavior-inline:contain;padding:4px max(32px,calc((100vw - 1320px)/2)) 17px}
#app-feature-carousel .rail::-webkit-scrollbar{display:none}
#app-feature-carousel .feature{flex:0 0 390px;scroll-snap-align:start;min-width:0;min-height:617px;padding:20px 20px 26px;display:flex;flex-direction:column;border:1px solid #282a31;border-radius:30px;background:#111216;box-shadow:0 18px 55px #0005}
#app-feature-carousel .feature:focus-visible{outline:3px solid #7f9dff;outline-offset:3px}
#app-feature-carousel .scene{position:relative;display:flex;align-items:center;justify-content:center;height:425px;overflow:hidden;border-radius:21px;background:linear-gradient(180deg,#313c87 0%,#5067db 53%,#d4dffa 100%)}
#app-feature-carousel .scene::after{content:"";position:absolute;inset:auto 0 0;height:40px;background:linear-gradient(transparent,#10121616);pointer-events:none}
#app-feature-carousel .scene.fire{background:linear-gradient(180deg,#15162a,#29326f 48%,#5871df 100%)}
#app-feature-carousel .scene.cash{background:linear-gradient(180deg,#303c85 0%,#5b73dc 58%,#d6e0f7 100%)}
#app-feature-carousel .scene.report{background:#f5f6f8}
#app-feature-carousel .feature-copy{display:flex;flex-direction:column;justify-content:flex-start;flex:1;min-height:150px;padding:22px 9px 0}
#app-feature-carousel .feature-copy h3{font-size:23px;line-height:1.14;letter-spacing:-.03em;font-weight:590;margin:0 0 10px}
#app-feature-carousel .feature-copy p{color:#9397a2;font-size:15px;line-height:1.46;margin:0}
#app-feature-carousel .controls{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:13px}
#app-feature-carousel .control{width:48px;height:48px;border-radius:50%;border:1px solid #33363e;background:#1a1b21;color:#fff;display:grid;place-items:center;cursor:pointer}
#app-feature-carousel .control:hover{background:#30323a}
#app-feature-carousel .control:focus-visible{outline:2px solid #93a8ff;outline-offset:3px}
#app-feature-carousel .control svg{width:20px;height:20px}
#app-feature-carousel .status{min-width:70px;text-align:center;color:#949ba9;font-size:13px;font-variant-numeric:tabular-nums}
#app-feature-carousel .foot{max-width:1320px;margin:0 auto;padding:0 32px 54px;color:#767f91;font-size:12px;line-height:1.5}
#app-feature-carousel .app{width:315px;color:var(--ink);border-radius:24px;background:var(--paper);box-shadow:0 19px 40px #131b3c33;border:1px solid #16203d13}
#app-feature-carousel .app.inset{padding:18px}
#app-feature-carousel .kicker{color:#111827;font-size:10px;font-weight:750;letter-spacing:.075em;text-transform:uppercase}
#app-feature-carousel .value{margin-top:10px;font-size:30px;font-weight:720;letter-spacing:-.045em;line-height:1.05;font-variant-numeric:tabular-nums}
#app-feature-carousel .gain{margin-top:5px;color:#10b981;font-size:11px;font-weight:650}
#app-feature-carousel .gain span{color:#868c98;font-weight:500}
#app-feature-carousel .small-chart{width:100%;height:120px;margin-top:18px}
#app-feature-carousel .chart-under{display:flex;justify-content:space-between;color:#898f99;font-size:10px;margin:3px 0 10px}
#app-feature-carousel .tabs{display:flex;justify-content:space-between;align-items:center;color:#7b8290;font-size:10px;font-weight:700}
#app-feature-carousel .tabs span{padding:7px 8px}
#app-feature-carousel .tabs .selected{background:#e5e7eb;color:#111827;border-radius:8px}
#app-feature-carousel .return{display:flex;justify-content:space-between;color:#808794;font-size:10px;margin-top:10px}
#app-feature-carousel .return strong{color:#10b981}
#app-feature-carousel .plan{width:305px;text-align:center;color:white;padding:17px 9px 20px}
#app-feature-carousel .plan h3{font-size:24px;letter-spacing:-.04em;margin:0 0 25px}
#app-feature-carousel .plan .plan-label{font-size:9px;letter-spacing:.1em;color:#d8def8;font-weight:750}
#app-feature-carousel .plan .age{font-size:76px;line-height:1;font-weight:750;letter-spacing:-.055em;margin:5px 0}
#app-feature-carousel .plan .year{font-size:12px;color:#e5eafd;font-weight:600}
#app-feature-carousel .plan .progress-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;font-weight:700;letter-spacing:.06em;color:#dce4fa;margin-top:35px}
#app-feature-carousel .plan .progress-head strong{font-size:16px;color:white}
#app-feature-carousel .progress{height:7px;border-radius:8px;background:#ffffff45;margin-top:6px;overflow:hidden}
#app-feature-carousel .progress i{display:block;width:9.58%;height:100%;background:white;border-radius:inherit}
#app-feature-carousel .progress-values{display:flex;justify-content:space-between;font-size:10px;font-weight:700;margin-top:7px}
#app-feature-carousel .plan-tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:20px}
#app-feature-carousel .plan-tiles div{padding:10px 3px;border:1px solid #ffffff35;background:#ffffff23;border-radius:10px}
#app-feature-carousel .plan-tiles span{display:block;font-size:8px;letter-spacing:.04em;color:#e4e8fb}
#app-feature-carousel .plan-tiles strong{display:block;font-size:12px;margin-top:4px;white-space:nowrap}
#app-feature-carousel .invest-card{width:min(326px,calc(100% - 24px));color:var(--ink);background:linear-gradient(145deg,#fff,#fbfcfe);border:1px solid #e5e7eb;border-radius:25px;box-shadow:0 16px 35px #17213b24;padding:17px 15px}
#app-feature-carousel .metric-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#app-feature-carousel .metric-pair span{display:block;color:#686e78;font-size:10px;letter-spacing:.06em;font-weight:750}
#app-feature-carousel .metric-pair strong{display:block;font-size:21px;font-weight:730;margin-top:4px;font-variant-numeric:tabular-nums}
#app-feature-carousel .investment-plot{position:relative;height:150px;margin-top:17px}
#app-feature-carousel .bars{position:absolute;inset:8px 1px 0;display:grid;grid-template-columns:repeat(12,1fr);gap:4px;align-items:end}
#app-feature-carousel .bar-slot{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:5px}
#app-feature-carousel .bar{width:57%;max-width:16px;border-radius:6px 6px 3px 3px;background:#4b8cf6}
#app-feature-carousel .bar-slot b{height:13px;font-size:9px;color:#6b7280;font-weight:650}
#app-feature-carousel .goal-line{position:absolute;left:0;right:0;top:58px;border-top:2px dashed #858b94;z-index:1}
#app-feature-carousel .goal-tag{position:absolute;right:0;top:35px;padding:4px 8px;border-radius:999px;background:#dbeafe;font-size:10px;font-weight:700;z-index:2}
#app-feature-carousel .category{padding:18px 15px;width:320px}
#app-feature-carousel .category h3{font-size:14px;font-weight:750;letter-spacing:.02em;margin:0 0 7px}
#app-feature-carousel .cat-row{position:relative;display:grid;grid-template-columns:43px 1fr auto;gap:10px;align-items:center;min-height:67px}
#app-feature-carousel .cat-row+.cat-row::before{content:"";position:absolute;top:0;left:53px;right:0;border-top:1px solid #dfe1e7}
#app-feature-carousel .bubble{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;font-size:23px;background:linear-gradient(145deg,#f8f9fc,#e7e9ee);border:2px solid #fff;box-shadow:0 4px 12px #1118271a,inset 0 0 0 1px #dfe3ea}
#app-feature-carousel .cat-name{font-size:12px;font-weight:720;line-height:1.12;white-space:nowrap}
#app-feature-carousel .cat-pct{color:#8a8f99;font-size:11px;margin-top:3px}
#app-feature-carousel .cat-amount{font-size:11px;font-weight:730;white-space:nowrap;font-variant-numeric:tabular-nums}
#app-feature-carousel .see-all{color:#7c28d9;font-size:13px;font-weight:730;margin-top:8px}
#app-feature-carousel .cash-view{position:absolute;inset:0;display:grid;place-items:center;padding-top:26px;opacity:0;visibility:hidden;transform:translateY(9px) scale(.98);transition:opacity .45s ease,transform .45s ease,visibility .45s}
#app-feature-carousel .cash-view.is-visible{opacity:1;visibility:visible;transform:none}
#app-feature-carousel .cash-tabs{position:absolute;z-index:2;top:14px;left:50%;transform:translateX(-50%);display:flex;gap:3px;padding:4px;border:1px solid #ffffff66;border-radius:999px;background:#ffffff30;backdrop-filter:blur(12px)}
#app-feature-carousel .cash-tab{min-width:76px;padding:7px 12px;border:0;border-radius:999px;background:transparent;color:#fff;font-size:11px;font-weight:750;cursor:pointer}
#app-feature-carousel .cash-tab.is-active{background:#fff;color:#263a95;box-shadow:0 2px 8px #12235a2b}
#app-feature-carousel .cash-tab:focus-visible{outline:2px solid #fff;outline-offset:2px}
#app-feature-carousel .report-ui{width:320px;height:396px;padding:22px 10px 10px;color:var(--ink);text-align:center;display:flex;flex-direction:column;align-items:center}
#app-feature-carousel .report-label{font-size:10px;font-weight:780;letter-spacing:.075em;color:#686d76}
#app-feature-carousel .report-ui h3{margin:7px 0 0;font-size:20px;line-height:1.12;letter-spacing:-.033em;font-weight:780}
#app-feature-carousel .report-ring{width:150px;height:150px;flex:none;margin:18px auto 12px}
#app-feature-carousel .report-table{width:100%;padding:2px 8px 2px 5px;border-radius:20px;background:#fbfcfe}
#app-feature-carousel .report-row{display:grid;grid-template-columns:34px 6px 1fr auto;align-items:center;gap:7px;min-height:43px;text-align:left}
#app-feature-carousel .report-row+.report-row{border-top:1px solid #e3e5e9}
#app-feature-carousel .report-row .bubble{width:31px;height:31px;font-size:17px}
#app-feature-carousel .dot{width:6px;height:6px;border-radius:50%}
#app-feature-carousel .report-row strong{font-size:12px}
#app-feature-carousel .report-row b{font-size:12px;font-variant-numeric:tabular-nums}
#app-feature-carousel .report-number{font-size:81px;line-height:1;font-weight:800;letter-spacing:-.07em;margin:23px 0 0}
#app-feature-carousel .report-number-sub{color:#696e78;font-size:16px;font-weight:700;margin:0}
#app-feature-carousel .emoji-grid{width:210px;display:grid;grid-template-columns:1fr 1fr;justify-items:center;gap:12px 45px;margin:20px auto 15px}
#app-feature-carousel .emoji-grid .bubble{width:54px;height:54px;font-size:27px}
#app-feature-carousel .report-summary{color:#696e78;font-size:12px;line-height:1.4;margin:0;max-width:285px}
@media(max-width:700px){
#app-feature-carousel .intro{width:calc(100% - 32px);padding:46px 0 33px}
#app-feature-carousel .intro h1{font-size:44px}
#app-feature-carousel .intro>p:not(.eyebrow){font-size:14px}
#app-feature-carousel .rail{gap:13px;padding-inline:16px;scroll-padding-inline:16px}
#app-feature-carousel .feature{flex-basis:min(340px,calc(100vw - 37px));min-height:580px;padding:13px 13px 22px;border-radius:25px}
#app-feature-carousel .scene{height:405px}
#app-feature-carousel .feature-copy{min-height:132px;padding:16px 8px 0}
#app-feature-carousel .feature-copy h3{font-size:21px}
#app-feature-carousel .feature-copy p{font-size:13px}
#app-feature-carousel .controls{margin-top:6px}
#app-feature-carousel .app{width:min(300px,calc(100% - 20px))}
#app-feature-carousel .category{width:min(305px,calc(100% - 14px))}
#app-feature-carousel .report-ui{width:min(305px,100%)}
#app-feature-carousel .foot{padding-inline:16px}
}
@media(prefers-reduced-motion:reduce){
#app-feature-carousel .rail{scroll-behavior:auto}
#app-feature-carousel .cash-view{transition:none}
}
#app-feature-carousel{color:#f6f7fb;font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text",Arial,sans-serif;-webkit-font-smoothing:antialiased;padding-bottom:44px}
#app-feature-carousel .carousel{padding-bottom:0}
#app-feature-carousel .feature-copy h3{font-size:23px;line-height:1.14;letter-spacing:-.03em;font-weight:590;margin:0 0 10px}
#app-feature-carousel .controls{margin-top:18px}
@media(max-width:700px){#app-feature-carousel{padding-bottom:24px}#app-feature-carousel .feature-copy h3{font-size:21px}}
