/* Shared visual system for every funnel screen. */
:root{--ink:#251841;--violet:#643de5;--muted:#7b708b;color:var(--ink);background:#fff}body{background:#fff}#app{background:radial-gradient(ellipse at 50% 0,#faf7ff 0,transparent 55%)}header{max-width:488px;height:68px;min-height:68px;padding:0 24px}.brand{font-size:23px;color:var(--ink);letter-spacing:-.7px}.brand small{background:var(--violet);border-radius:5px;padding:3px 4px;font-size:8px;margin-left:3px}.back{top:16px;left:21px;font-size:29px;color:#857499;background:#f4effb;border-radius:50%;width:32px;height:32px;line-height:26px}.journey{max-width:440px;height:4px;border-radius:8px;background:#eee8f7;margin-bottom:28px}.journey span{background:linear-gradient(90deg,#b695f0,#6440df)}.journey-first{margin-bottom:12px}main{max-width:440px;padding-bottom:24px}main h1,.game-intro h1,.paywall-page h1,.checkout-page h1,.preparing-page h1{color:var(--ink);font-size:29px;line-height:1.22;letter-spacing:-.7px;margin:0 0 14px}h1 em{color:var(--violet)}.subtitle,.game-intro .subtitle{font-size:16px;line-height:1.5;color:#7b6d8c}.section-kicker{font-size:10px;letter-spacing:1.7px;font-weight:700;color:#9680b0;display:block;margin-bottom:13px}.primary,.game-actions .primary{min-height:56px;border-radius:17px;font-size:17px;padding:16px 22px;background:var(--violet);box-shadow:0 5px 0 #4f2fc0;gap:12px}.primary:hover{background:#5833d4;box-shadow:0 5px 0 #4927b7}.primary:active{transform:translateY(3px);box-shadow:0 2px 0 #4f2fc0}.micro{font-size:12px;color:#92819f;margin-top:15px}.text-button{color:#7a639b;font-size:13px}.bottom-action{padding-top:24px}.button-arrow{font-family:system-ui;font-size:20px;font-weight:400}.question-page h1{font-size:29px;margin:0 0 27px;line-height:1.25}.question-page .answer-options{gap:11px}.answer-card{display:flex;align-items:center;gap:14px;text-align:left;min-height:73px;border:1px solid #e4dcec;border-radius:14px;font-size:16px;font-weight:600;color:#483459;padding:19px 19px;background:#fff;box-shadow:0 3px 0 #f5f0fa}.answer-card:hover{border-color:#b79bdf;background:#fcfaff}.answer-card.selected{border-color:#8760d2;color:#6637c5;background:#f6f0ff;box-shadow:0 3px 0 #e6d9f9}.answer-indicator{width:19px;height:19px;border:1.5px solid #d9cce7;border-radius:50%;flex:none;display:grid;place-items:center}.selected .answer-indicator{border-color:#8a60d7;background:#895ad4;box-shadow:inset 0 0 0 4px #f6f0ff}.answer-chevron{margin-left:auto;font:24px system-ui;color:#c9b9d8}.answer-grid .answer-card{min-height:108px;flex-wrap:wrap;gap:14px 9px;align-content:center;justify-content:flex-start}.answer-grid .answer-card>span:nth-child(2){flex-basis:100%}.answer-grid .answer-chevron{display:none}.question-tip{border:0;border-radius:12px;background:#f6f1fc;color:#8a749d;font-size:12px;padding:12px 15px;margin-top:20px}.question-promise{display:none}
.story-page{gap:0}.story-heading{width:100%;text-align:center;flex:none}.story-heading h1{font-size:39px;letter-spacing:-1.3px;line-height:1.12;margin:0 0 13px}.story-heading .subtitle{font-size:15px}.story-photo{width:calc(100% + 30px);min-height:60px;max-height:155px;flex:1;overflow:hidden;margin:19px -15px 18px;mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}.story-photo img{display:block;width:100%;height:100%;object-fit:cover}.story-review{width:100%;background:linear-gradient(140deg,#faf7ff,#f3edfc);border:1px solid #eadef4;border-radius:19px;padding:21px 23px;text-align:left;flex:none;position:relative}.story-review-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.story-review .stars{font-size:16px;letter-spacing:2px;color:#dca552}.sample-tag{font-size:8px;letter-spacing:.8px;color:#a28db3}.story-review blockquote{font-size:21px;line-height:1.4;color:#40304f;font-weight:600;letter-spacing:-.4px;margin:17px 0 19px}.story-person{display:flex;gap:10px;align-items:center}.story-avatar{width:35px;height:35px;border-radius:50%;background:#e4d7f4;display:grid;place-items:center;font-size:16px;color:#7f56ab}.story-person strong{font-size:13px;display:block;font-weight:700}.story-person small{font-size:10px;display:block;color:#9682a7;margin-top:3px}.story-quote{margin-left:auto;font-family:Georgia;font-size:62px;line-height:30px;color:#d7c3ec}.story-page .bottom-action{padding-top:21px}.story-page .micro{font-size:11px}.story-weeks{width:100%;display:flex;align-items:center;justify-content:space-between;flex:1;min-height:95px;max-height:160px;margin:15px 0 17px}.story-weeks>div{display:flex;flex-direction:column;gap:9px;align-items:center}.story-weeks>div>span{border:1px solid #e3d6f1;background:#f7f1fd;border-radius:16px;width:52px;height:52px;display:grid;place-items:center;font-size:18px;font-weight:600;color:#926bb9}.story-weeks>div:first-child>span{background:#8054d6;border-color:#8054d6;color:#fff;box-shadow:0 5px 12px #8054d622}.story-weeks small{font-size:11px;color:#8e799e}.story-weeks>i{height:1px;background:#e4d8ef;flex:1;margin:-18px 6px 0}
.game-intro .eyebrow{display:block;color:#997bb8;font-size:10px;letter-spacing:1.6px;margin:0 0 13px}.game-stage{background:#faf7ff!important;border:1px solid #e9def4!important;border-radius:20px;padding:20px;margin-top:23px;box-shadow:0 9px 25px #51307805}.stage-top{font-size:10px;color:#9781aa;letter-spacing:.4px}.stage-status{font-size:13px;color:#9b83ae}.cell{border-radius:10px!important;border-color:#e0d1ee!important;box-shadow:0 3px 0 #e9def4!important;color:#8152b8!important}.cell.lit{background:#9066de;color:white!important}.game-actions{padding-top:16px;min-height:35px}.game-actions .micro{font-size:12px;margin:0}.review-card{border-radius:20px;padding:26px;border-color:#e7d9f2;background:#faf7ff;box-shadow:0 8px 28px #52327005}.review-card blockquote{font-size:22px;line-height:1.4;color:#463154}.review-card .preview-badge{font-size:9px;background:white;border:0;color:#9c84af}.review-person>span{background:#e8daf7;color:#8760ad}.review-nav button{border-color:#ded0ed;background:#faf7ff;color:#8e68b0}.review-nav{color:#9a80ae}.testimonials-page h1{font-size:28px}.preparation-flow .loading-orb{background:linear-gradient(145deg,#f0e5fc,#e7d4fa);border-radius:22px;box-shadow:0 10px 28px #8f60c514}.preparation-loaders{background:#fbf9fe;padding:22px 20px;border-radius:19px;border:1px solid #ece3f5}.preparation-label{font-size:13px;color:#9987aa}.preparation-step.active .preparation-label,.preparation-step.complete .preparation-label{color:#564068}.preparation-track{background:#eee5f7;height:6px}.preparation-popup{border-radius:24px;border:1px solid #eaddf3;box-shadow:0 24px 100px #1c0a4033}.popup-answer{border-radius:14px;border-color:#dbc9ed;background:#faf6ff}.popup-answer:first-child{background:#774bd9;border-color:#774bd9;color:#fff}.popup-answer:first-child:hover{background:#653bc8}.preparation-popup h2{font-size:25px;color:#39234f}.popup-step{font-size:10px;color:#a38bb8}.profile-page .profile-form{margin:28px 0 auto;padding-top:0}.profile-form label,.checkout-form label{font-size:14px;color:#7e628f}.profile-form input,.checkout-form input{border:1px solid #dacbe9;border-radius:14px;min-height:55px;background:#fefcff;font-size:16px;color:#4b325f}.profile-form input:focus-visible,.checkout-form input:focus-visible{outline:2px solid #bd9be9}.profile-page .profile-form .primary{margin-top:25px}.profile-page .micro{font-size:12px}.plan-card{background:#fbf8ff;border:1px solid #e5d7f2;border-radius:20px;padding:25px;box-shadow:0 9px 30px #62428b06}.plan-icon{border-radius:15px;background:#eaddfa;color:#976ac5}.plan-head strong{font-size:18px;color:#624078}.plan-head small{font-size:12px;color:#a287b1;line-height:1.5}.plan-weeks>div{padding:18px 0;border-color:#e9def2}.plan-weeks>div:last-child{padding-bottom:0}.plan-weeks span{font-size:12px;color:#b198c1}.plan-weeks strong{font-size:15px;color:#735186;font-weight:600}.dark-offer{background:radial-gradient(ellipse at 50% 45%,#453071,#251640 75%)!important}.dark-offer .back{background:#ffffff10;color:#dfcdeb}.dark-offer .brand{color:white}.dark-offer .brand small{background:#e8d6ff;color:#6c4893}.dark-offer h1{color:white}.dark-offer .primary{background:#9770eb;box-shadow:0 5px 0 #734abd}.dark-offer .primary:hover{background:#a179ef}.offer-unlocked strong{color:#f6e4bc}.offer-reveal{border:1px solid #ffffff12;border-radius:24px;margin:22px 0 0;background:#ffffff05;padding:15px 28px}.coupon-code{background:#ffffff07;border-radius:12px;border-color:#9576b9}.slider-label{font-size:14px}.dark-offer .demo-label{color:#ab91c2}.discount-banner{background:#f3ebff;border:1px dashed #d3b5ed;border-radius:12px;font-size:13px;padding:12px;color:#9262b0}.discount-banner span{background:white;padding:4px 7px;border-radius:6px}.subscription{border-radius:16px;border-color:#e4d8ed;padding:21px 16px;background:white;box-shadow:0 3px 0 #f5eff9}.subscription.selected{border-color:#9665d4;background:#faf5ff;padding:20px 15px;box-shadow:0 4px 0 #ecdef8}.subscription-name strong{font-size:17px;color:#604271}.subscription-name small{color:#9c85ad;font-size:11px}.subscription-price{color:#8356a8;font-size:28px}.subscription-price small{color:#ab91b8;font-size:11px}.subscription.selected .radio-dot{border-color:#9566cb}.subscription.selected .radio-dot:after{background:#9566cb}.paywall-page .subtitle{font-size:15px}.paywall-page .bottom-action{padding-top:16px}.paywall-features{color:#a38bab;font-size:11px}.refund-line{font-size:11px;color:#af96b5}.order-summary{border-radius:16px;border-color:#e6d8ef;background:#faf7ff;padding:20px}.order-summary>div{color:#77558b}.order-summary small{font-size:11px;color:#a38ab4}.order-summary>div>span{color:#a086b1}.checkout-details{color:#9984a5;font-size:11px}.dummy-card,.dummy-card-bottom{border-color:#e5d8ed;background:#fdfbff;color:#a188b5}.checkout-form label span{font-size:11px}.checkout-links .text-button{font-size:12px}.success-orb{background:#eee4fb;color:#9c76c3;border-radius:23px}.confirmation-card{border-radius:20px;border-color:#e6d8f0;background:#faf7fe}.confirmation-card h2{color:#77528d}.confirmation-card p{color:#a08aae}.confirmation-card>div{border-color:#e6d9ee}.week-tabs button{border-radius:12px;color:#9f80b2;border-color:#e6d8ef}.week-tabs button[aria-selected=true]{background:#9266d1;border-color:#9266d1;color:white;box-shadow:0 3px 0 #764ba9}.daily-plan{background:#fbf8ff;border:1px solid #e9ddf3;border-radius:17px;padding:17px}.daily-plan h2{color:#85579f}.daily-plan>div{border-color:#e9def2}.daily-plan p{color:#9272a7}.daily-plan>div>span{color:#b198bd}.legal-card{border-radius:22px}.legal-card h2{color:#63437b}
@media(max-height:740px){header{height:55px;min-height:55px}.back{top:10px}.journey{margin-bottom:22px}main{padding-bottom:18px}.journey-first{margin-bottom:10px}main h1,.game-intro h1,.paywall-page h1,.checkout-page h1,.preparing-page h1,.question-page h1{font-size:26px}.primary{min-height:52px;padding:14px 20px}.story-heading h1{font-size:34px}.story-photo{max-height:110px;margin:15px -15px}.story-review{padding:18px 20px}.story-review blockquote{font-size:19px;margin:13px 0 16px}.story-weeks{max-height:130px;min-height:95px}.story-page .bottom-action{padding-top:18px}.section-kicker{margin-bottom:10px}.question-page h1{margin-bottom:22px}.answer-card{min-height:67px;padding:17px}.answer-grid .answer-card{min-height:102px}.game-stage{padding:17px}.plan-weeks>div{padding:14px 0}.plan-head strong{font-size:16px}.plan-card{padding:21px}.preparation-loaders{padding:18px;gap:20px;margin-top:26px}.preparation-flow h1{font-size:25px}.preparation-flow .loading-orb{margin-bottom:16px}.subscription{padding:17px 14px}.subscription.selected{padding:16px 13px}.subscription-name strong{font-size:16px}.subscription-price{font-size:26px}.order-summary{padding:16px}.checkout-details{font-size:10px}.dummy-card{padding:10px}.dummy-card-bottom span{padding:9px 11px}.checkout-form input{min-height:47px;font-size:14px}.daily-plan{padding:13px}}
@media(max-height:620px){header{height:47px;min-height:47px}.brand{font-size:21px}.back{top:7px;width:29px;height:29px;font-size:26px}.journey{margin-bottom:17px}.journey-first{margin-bottom:8px}main{padding-bottom:14px}main h1,.game-intro h1,.paywall-page h1,.checkout-page h1,.question-page h1,.testimonials-page h1{font-size:23px}.subtitle,.game-intro .subtitle{font-size:14px}.primary,.game-actions .primary{min-height:47px;padding:12px 17px;font-size:16px;border-radius:14px}.micro{font-size:10px;margin-top:12px}.section-kicker{font-size:9px;letter-spacing:1.4px;margin-bottom:10px}.story-heading h1{font-size:29px;line-height:1.13;margin-bottom:10px}.story-heading .subtitle{font-size:13px}.story-photo{max-height:90px;min-height:45px;margin:11px -15px}.story-review{padding:14px 16px;border-radius:16px}.story-review blockquote{font-size:16px;line-height:1.4;margin:11px 0 13px}.story-review .stars{font-size:13px}.sample-tag{font-size:7px}.story-avatar{width:30px;height:30px;font-size:14px}.story-person strong{font-size:12px}.story-person small{font-size:9px}.story-quote{font-size:49px}.story-page .bottom-action{padding-top:16px}.story-page .micro{font-size:10px}.story-weeks{max-height:105px;min-height:80px;margin:10px 0 13px}.story-weeks>div>span{width:44px;height:44px;border-radius:13px;font-size:16px}.story-weeks small{font-size:10px}.question-page h1{margin-bottom:20px}.answer-card{min-height:63px;padding:15px;gap:11px;font-size:14px;border-radius:12px}.answer-grid .answer-card{min-height:94px}.question-page .answer-options{gap:10px}.question-tip{font-size:11px;padding:11px 13px}.game-intro .eyebrow{font-size:9px;margin-bottom:10px}.game-stage{padding:14px;border-radius:16px;margin-top:18px}.game-actions .micro{font-size:11px}.stage-status{font-size:11px}.review-card{padding:19px}.review-card blockquote{font-size:18px}.review-person strong{font-size:13px}.review-person small{font-size:10px}.preparation-flow .loading-orb{width:45px;height:45px;font-size:28px;margin-bottom:13px}.preparation-flow h1{font-size:23px}.preparation-loaders{margin-top:20px;padding:15px;gap:17px}.preparation-label{font-size:11px}.preparation-number{width:19px;height:19px;font-size:10px}.preparation-track{margin-left:26px}.preparation-status{font-size:11px;margin-top:16px}.preparation-popup h2{font-size:23px}.profile-page .profile-form{margin-top:23px}.profile-form label{font-size:13px}.profile-form input{min-height:49px;font-size:14px}.plan-card{padding:17px}.plan-head strong{font-size:15px}.plan-head small{font-size:11px}.plan-weeks>div{padding:13px 0}.plan-weeks strong{font-size:13px}.plan-weeks span{font-size:11px}.offer-reveal{margin-top:16px;padding:12px 22px}.dark-offer .subtitle{font-size:15px}.discount-banner{font-size:11px;padding:10px}.subscription{padding:13px 11px;border-radius:13px}.subscription.selected{padding:12px 10px}.subscription-name strong{font-size:14px}.subscription-name small{font-size:9px}.subscription-price{font-size:23px}.subscription-price small{font-size:10px}.paywall-page .subtitle{font-size:13px}.refund-line{font-size:10px}.order-summary{padding:13px;margin:12px 0}.order-summary small{font-size:9px}.order-summary>div{font-size:13px}.checkout-form input{min-height:43px;font-size:13px}.checkout-form label{font-size:12px}.checkout-details{font-size:9px}.dummy-card{font-size:12px;padding:9px}.dummy-card-bottom span{padding:7px 10px}.checkout-links .text-button{font-size:10px}.confirmation-card h2{font-size:16px}.confirmation-card p{font-size:13px}.confirmation-card>div{font-size:12px}.daily-plan{padding:11px 12px;border-radius:14px}.daily-plan p{font-size:12px}.daily-plan>div>span{font-size:11px;width:39px}.daily-plan h2{font-size:15px}.week-tabs button{font-size:12px}.training-page .bottom-action{padding-top:15px}}
@media(max-height:480px) and (min-width:600px){header{max-width:780px;height:41px;min-height:41px}.back{top:5px}.journey{max-width:720px;margin-bottom:10px}.journey-first{margin-bottom:9px}main{max-width:720px;padding-bottom:12px}.story-page{display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:auto 1fr auto;gap:0 30px;align-items:start}.story-heading{grid-column:1;grid-row:1;text-align:left}.story-heading h1{font-size:29px}.story-heading .subtitle{font-size:13px}.story-photo,.story-weeks{grid-column:1;grid-row:2;width:100%;margin:9px 0 0;min-height:45px;max-height:85px;align-self:center}.story-review{grid-column:2;grid-row:1/4;align-self:center;padding:23px}.story-review blockquote{font-size:20px;margin:17px 0 21px}.story-review .stars{font-size:16px}.story-person strong{font-size:13px}.story-person small{font-size:10px}.story-page .bottom-action{grid-column:1;grid-row:3;align-self:end;padding-top:10px}.story-page .micro{font-size:9px;margin-top:10px}.story-weeks{min-height:60px}.story-weeks>div>span{width:35px;height:35px;font-size:13px;border-radius:10px}.story-weeks>div{gap:5px}.story-weeks>i{margin-top:-13px}.story-weeks small{font-size:9px}.question-page{grid-template-rows:auto 1fr auto}.question-page>.section-kicker{grid-column:1;grid-row:1;margin-top:25px;text-align:left}.question-page h1{grid-row:2;grid-column:1;font-size:25px;margin-top:0;align-self:start}.question-page .question-tip{grid-row:3;align-self:end}.question-page .answer-options{grid-row:1/4}.answer-card{min-height:60px;padding:14px}.game-intro h1{font-size:25px}.game-stage{margin:0;padding:12px}.game-intro .eyebrow{font-size:10px}.preparation-loaders{padding:17px;margin:0;gap:18px}.preparation-heading h1{font-size:25px}.preparation-status{margin-top:10px}.preparation-flow{padding-bottom:12px}.profile-page .profile-form{margin:0;align-self:center}.profile-page .profile-form .primary{margin-top:20px}.profile-page h1,.paywall-page h1,.checkout-page h1{font-size:26px}.plan-card{margin-top:0;padding:18px}.plan-weeks>div{padding:12px 0}.plan-head small{font-size:10px}.offer-reveal{margin:0;padding:15px 22px}.offer-word{font-size:58px}.offer-page h1{font-size:26px}.subscription{padding:16px 12px}.subscription.selected{padding:15px 11px}.checkout-form input{min-height:36px;padding:8px 11px}.checkout-form .dummy-card{padding:7px 10px}.checkout-form .dummy-card-bottom span{padding:6px 10px}.checkout-details{font-size:8px;margin:8px 0}.checkout-form .primary{min-height:37px;font-size:14px;padding:9px}.checkout-form .micro{font-size:8px}.checkout-form label{font-size:11px}.order-summary{padding:13px}.daily-plan{padding:11px 14px}.daily-plan p{font-size:12px}.daily-plan h2{margin-bottom:8px}.preparation-popup{padding:20px 26px}.preparation-popup h2{font-size:22px}}
@media(prefers-reduced-motion:reduce){.primary,.answer-card,.popup-answer{transition:none}}
.day-preview-page .day-preview-card{width:100%;display:flex;flex-direction:column;flex:1;min-height:0;margin:22px 0 0;padding:20px}.day-preview-card .plan-head{flex:none}.day-preview-card .plan-head strong{font-size:16px}.day-preview-card .plan-head small{font-size:12px}.open-days{margin-top:17px;flex:none}.open-days>div{border-top:1px solid #e7d9f2;display:grid;grid-template-columns:48px 1fr;text-align:left;padding:12px 0;gap:3px 12px}.open-days>div>span{grid-row:1/3;align-self:center;font-size:13px;color:#ac8cbd}.open-days strong{font-size:15px;font-weight:600;color:#77518d}.open-days small{font-size:11px;color:#ae94bc}.locked-caption{display:flex;align-items:center;justify-content:center;gap:7px;font-size:11px;color:#a088b0;margin:5px 0 12px;flex:none}.locked-days{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));gap:5px;flex:1;min-height:0}.locked-day{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:0;border:1px solid #ebdff3;background:#f7f1fc;border-radius:8px;padding:3px 2px;overflow:hidden}.locked-day>span{font-size:11px;line-height:1.3;color:#9a7baa;flex:none;white-space:nowrap}.blurred-preview{width:67%;display:flex;flex-direction:column;gap:3px;filter:blur(2.8px);opacity:.48;margin-top:5px;pointer-events:none;user-select:none}.blurred-preview i{height:3px;display:block;background:#b08bca;border-radius:5px}.blurred-preview i:last-child{width:75%;align-self:center}.day-preview-page .bottom-action{padding-top:20px}.day-preview-page .micro{font-size:11px}
@media(max-height:740px){.day-preview-page .day-preview-card{padding:17px;margin-top:17px}.open-days{margin-top:13px}.open-days>div{padding:10px 0}.open-days strong{font-size:14px}.locked-caption{margin:3px 0 9px}.blurred-preview{gap:2px;margin-top:4px}.day-preview-page .bottom-action{padding-top:17px}}
@media(max-height:620px){.day-preview-page h1{font-size:24px;margin-bottom:9px}.day-preview-page .subtitle{font-size:13px}.day-preview-page .day-preview-card{margin-top:14px;padding:13px}.day-preview-card .plan-head strong{font-size:13px}.day-preview-card .plan-head small{font-size:10px}.day-preview-card .plan-icon{width:32px;height:32px;font-size:23px}.open-days{margin-top:10px}.open-days>div{grid-template-columns:36px 1fr;gap:2px 10px;padding:8px 0}.open-days>div>span{font-size:11px}.open-days strong{font-size:12px}.open-days small{font-size:10px}.locked-caption{font-size:9px;margin:2px 0 7px;gap:5px}.locked-caption svg{width:9px;height:11px}.locked-days{gap:4px}.locked-day{border-radius:5px;padding:2px}.locked-day>span{font-size:9px}.blurred-preview{margin-top:3px;gap:2px;filter:blur(2px)}.blurred-preview i{height:2px}.day-preview-page .bottom-action{padding-top:14px}.day-preview-page .micro{font-size:9px;margin-top:10px}}
@media(max-height:480px) and (min-width:600px){.day-preview-page{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr auto;column-gap:28px;align-items:start}.day-preview-page h1{grid-column:1;grid-row:1;font-size:28px;text-align:left;margin-top:20px}.day-preview-page>.subtitle{grid-column:1;grid-row:2;text-align:left;font-size:15px}.day-preview-page>.day-preview-card{grid-column:2;grid-row:1/4;margin:0;padding:12px;height:100%;min-height:0}.day-preview-page>.bottom-action{grid-column:1;grid-row:3}.day-preview-card .plan-head strong{font-size:13px}.open-days{margin-top:9px}.open-days>div{padding:6px 0}.locked-caption{font-size:9px;margin:2px 0 5px}.locked-day>span{font-size:10px}.locked-days{gap:3px}.blurred-preview{margin-top:2px}.day-preview-page .micro{font-size:10px}}
.day-preview-card .plan-head strong,.open-days strong{color:#4d325f}.open-days>div>span,.locked-day>span{color:#795588}.open-days small,.day-preview-card .plan-head small{color:#897293}.locked-caption{color:#897293}.sample-tag{color:#8b759c}.preparation-label{color:#766084}.daily-plan p{color:#70537f}.daily-plan>div>span{color:#9679a0}.subscription-name strong,.order-summary>div{color:#614172}.checkout-details{color:#80698c}
@media(max-height:620px){.paywall-page .plan-options{padding-top:8px;padding-bottom:3px}.paywall-page .refund-line{margin-top:9px}.locked-day>span{font-size:10px}.open-days strong{font-size:13px}.open-days small{font-size:10px}}
@media(max-height:620px){.paywall-page .bottom-action{padding-top:10px}}
/* Clearer typography and a game-led 28-day preview. */
.subtitle,.game-intro .subtitle{color:#6d617a}.section-kicker{color:#7c668e}.plan-head small,.subscription-name small,.subscription-price small,.order-summary small,.confirmation-card p{color:#766180}.plan-weeks strong,.confirmation-card h2,.daily-plan h2{color:#442b59}.micro{color:#80718a}.review-person small,.story-person small{color:#7d698d}.preparation-status,.stage-status{color:#7a638e}.plan-redesign{gap:0}.plan-title{width:100%;text-align:left;flex:none}.plan-kicker{display:block;font-size:10px;font-weight:700;letter-spacing:1.6px;color:#8b70a6;margin-bottom:12px}.plan-title h1{font-size:38px;line-height:1.1;letter-spacing:-1.3px;margin:0 0 13px}.plan-title .subtitle{font-size:14px;line-height:1.5;color:#6a5c79}.featured-days{display:grid;grid-template-columns:1fr 1fr;gap:13px;width:100%;margin:23px 0 24px;flex:none}.featured-game{padding:17px 18px 19px;border-radius:20px;position:relative;overflow:hidden;text-align:left;border:1px solid #e2d7f6}.sudoku-card{background:linear-gradient(140deg,#eee7ff,#e5d7ff)}.ballsort-card{background:linear-gradient(140deg,#fff0de,#ffe2bf);border-color:#f4d8b6}.featured-top{display:flex;justify-content:space-between;align-items:center;gap:6px;color:#765999;font-weight:700;font-size:10px;letter-spacing:.7px}.featured-top small{font-size:9px;font-weight:500;letter-spacing:0}.ballsort-card .featured-top{color:#a47742}.app-game-icon{width:48px;height:48px;margin:15px 0 13px}.app-game-icon svg{display:block;width:100%;height:100%}.ballsort-card .app-game-icon{background:#e8b779;border-radius:12px;padding:5px}.featured-game h2{font-size:22px;letter-spacing:-.5px;color:#402856;margin:0 0 6px}.featured-game p{font-size:12px;line-height:1.4;color:#806294;margin:0}.ballsort-card h2{color:#62401f}.ballsort-card p{color:#987341}.remaining-plan{width:100%;display:flex;flex-direction:column;flex:1;min-height:0}.remaining-title{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;flex:none}.remaining-title h2{font-size:15px;font-weight:700;color:#4a365e;margin:0}.remaining-title>span{font-size:8px;letter-spacing:.7px;color:#927b9d;white-space:nowrap}.calendar-locks{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:7px;flex:1;min-height:0}.calendar-day{background:#f8f6fc;border:1px solid #e9e3f1;border-radius:9px;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:0;padding:4px 1px;overflow:hidden}.calendar-day>span{font-size:11px;font-weight:600;color:#786383;white-space:nowrap;line-height:1.3}.calendar-blur{display:flex;flex-direction:column;gap:3px;filter:blur(2px);opacity:.5;width:62%;margin-top:6px}.calendar-blur i{height:3px;background:#b3a2c2;border-radius:3px}.calendar-blur i:last-child{width:60%;align-self:center}.plan-redesign>.bottom-action{padding-top:23px}.plan-redesign .micro{font-size:11px;line-height:1.4;color:#897794}.daily-plan p{display:flex;flex-direction:column;gap:4px;line-height:1.3}.daily-plan p strong{font-size:14px;color:#4a315e;font-weight:700}.daily-plan p small{font-size:11px;color:#8c719a}.daily-plan>div>span{color:#8c7599}.week-tabs button{color:#6f4f85}.week-tabs button[aria-selected=true]{background:#7043d4;border-color:#7043d4}.daily-plan{background:white;border-color:#e4d9ed}.training-page .subtitle{color:#6b5c78}
@media(max-height:740px){.plan-title h1{font-size:34px}.plan-kicker{margin-bottom:10px}.featured-days{margin:19px 0 20px}.featured-game{padding:14px 16px 16px}.app-game-icon{width:43px;height:43px;margin:12px 0}.featured-game h2{font-size:20px}.plan-redesign>.bottom-action{padding-top:19px}.calendar-locks{gap:6px}.daily-plan p{gap:3px}.daily-plan p strong{font-size:13px}.daily-plan p small{font-size:10px}}
@media(max-height:620px){.plan-kicker{font-size:8px;letter-spacing:1.3px;margin-bottom:8px}.plan-title h1{font-size:29px;margin-bottom:10px}.plan-title .subtitle{font-size:12px}.featured-days{gap:10px;margin:15px 0 17px}.featured-game{padding:11px 12px 13px;border-radius:15px}.featured-top{font-size:8px}.featured-top small{font-size:8px}.app-game-icon{width:35px;height:35px;margin:9px 0}.featured-game h2{font-size:18px;margin-bottom:4px}.featured-game p{font-size:10px}.remaining-title{margin-bottom:9px}.remaining-title h2{font-size:13px}.remaining-title>span{font-size:6.5px;letter-spacing:.5px}.calendar-locks{grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(6,minmax(0,1fr));gap:4px}.calendar-day{border-radius:6px;padding:2px 1px}.calendar-day>span{font-size:10px;line-height:1.2}.calendar-blur{margin-top:3px;gap:2px;filter:blur(1.8px)}.calendar-blur i{height:2px}.plan-redesign>.bottom-action{padding-top:15px}.plan-redesign .micro{font-size:9px;margin-top:11px}.daily-plan p{gap:2px;margin:4px 0}.daily-plan p strong{font-size:12px}.daily-plan p small{font-size:9px}.daily-plan>div{gap:8px}}
@media(max-height:480px) and (min-width:600px){.plan-redesign{display:grid;grid-template-columns:1fr 1.15fr;grid-template-rows:auto 1fr auto;column-gap:30px;align-items:start}.plan-title{grid-column:1;grid-row:1}.plan-title h1{font-size:29px;margin-bottom:8px}.plan-kicker{font-size:8px;margin-bottom:9px}.plan-title .subtitle{font-size:12px}.featured-days{grid-column:2;grid-row:1;margin:0 0 14px;gap:10px}.featured-game{display:grid;grid-template-columns:auto 1fr;padding:11px 12px;border-radius:13px;gap:0 8px;align-items:center}.featured-top{grid-column:1/3;margin-bottom:9px}.app-game-icon{grid-column:1;grid-row:2/4;margin:0;width:32px;height:32px}.featured-game h2{grid-column:2;grid-row:2;font-size:16px;line-height:1.2}.featured-game p{grid-column:2;grid-row:3;font-size:8px;line-height:1.3}.remaining-plan{grid-column:2;grid-row:2/4;height:100%}.calendar-locks{grid-template-columns:repeat(7,minmax(0,1fr));grid-template-rows:repeat(4,minmax(0,1fr));gap:5px}.calendar-day>span{font-size:10px}.plan-redesign>.bottom-action{grid-column:1;grid-row:3;padding-top:0;align-self:end}.plan-redesign .micro{font-size:10px}.daily-plan p strong{font-size:12px}.daily-plan p small{font-size:9px}}
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:#251b36}.brand{font-family:inherit;letter-spacing:-1px;font-weight:750}.story-heading h1{font-size:43px;line-height:1.04;letter-spacing:-1.8px;font-weight:750}.story-heading .section-kicker{font-size:9px;letter-spacing:1.8px;color:#896aab}.story-heading .subtitle{font-size:15px;color:#74647e}.story-welcome .story-heading{flex:none}.welcome-carousel{position:relative;width:100%;flex:1;min-height:135px;max-height:240px;margin:23px 0 17px;border-radius:22px;overflow:hidden;background:#e8ddef;isolation:isolate;touch-action:pan-y}.welcome-slide{position:absolute;inset:0;background-image:linear-gradient(0deg,#251335b3,transparent 57%),url('assets/training-montage.png');background-size:100% 100%,230% auto;background-repeat:no-repeat;background-position:center,0 center;transition:background-position .45s ease;display:flex;align-items:flex-end;justify-content:center;padding:0 42px 31px}.carousel-caption{font-size:14px;font-weight:600;color:white;text-align:center;letter-spacing:-.2px;text-shadow:0 1px 4px #0004}.carousel-arrow{position:absolute;top:50%;transform:translateY(-50%);width:32px;height:32px;display:grid;place-items:center;border:1px solid #ffffffa6;border-radius:50%;background:#ffffffdb;color:#5a337b;font-family:system-ui;font-size:25px;line-height:1;padding:0;box-shadow:0 2px 8px #27183215}.carousel-prev{left:11px}.carousel-next{right:11px}.carousel-arrow:hover{background:white}.carousel-arrow:active{transform:translateY(-50%) scale(.94)}.carousel-dots{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);display:flex;gap:0}.carousel-dots button{width:24px;height:24px;padding:0;border:0;background:none;display:grid;place-items:center}.carousel-dots button:after{content:'';width:5px;height:5px;border-radius:5px;background:#ffffff80;transition:width .2s}.carousel-dots button[aria-current=true]:after{width:16px;background:white}.story-welcome .story-review{background:#fff;border:1px solid #e9e0f1;padding:18px 21px;border-radius:17px;box-shadow:0 5px 20px #55307704}.story-welcome .story-review blockquote{font-size:19px;line-height:1.38;font-weight:600;letter-spacing:-.35px;margin:12px 0 14px}.story-welcome .story-review .stars{font-size:14px;letter-spacing:1.5px}.story-welcome .story-avatar{width:30px;height:30px;font-size:13px}.story-welcome .story-person strong{font-size:12px}.story-welcome .story-person small{font-size:10px}.story-welcome .story-quote{font-size:47px}.story-welcome .sample-tag{font-size:8px}.story-welcome .bottom-action{padding-top:20px}.story-welcome .primary{background:linear-gradient(105deg,#7544e2,#5c38d2);box-shadow:0 5px 0 #4826a9;font-weight:650}.story-welcome .micro{font-size:11px;color:#8b7897}.answer-card{font-weight:550}.primary{font-weight:650}.question-page h1{letter-spacing:-.7px}.plan-title h1{letter-spacing:-1.4px}.review-card blockquote{font-weight:550}.plan-redesign h2{font-weight:650}.daily-plan p strong{font-weight:650}
@media(max-height:740px){.story-heading h1{font-size:37px;line-height:1.06}.welcome-carousel{margin:18px 0 15px;min-height:120px;max-height:210px}.story-welcome .story-review{padding:15px 18px}.story-welcome .story-review blockquote{font-size:17px;margin:10px 0 12px}.story-welcome .bottom-action{padding-top:18px}}
@media(max-height:620px){.story-heading h1{font-size:32px;letter-spacing:-1.1px;margin-bottom:10px}.story-heading .section-kicker{font-size:8px;letter-spacing:1.5px;margin-bottom:9px}.story-heading .subtitle{font-size:12px}.welcome-carousel{margin:14px 0 12px;min-height:105px;max-height:165px;border-radius:17px}.welcome-slide{padding-bottom:27px}.carousel-caption{font-size:12px}.carousel-arrow{width:28px;height:28px;font-size:22px}.story-welcome .story-review{padding:12px 15px;border-radius:14px}.story-welcome .story-review blockquote{font-size:15px;line-height:1.32;margin:8px 0 10px}.story-welcome .story-review .stars{font-size:12px}.story-welcome .sample-tag{font-size:7px}.story-welcome .story-avatar{width:25px;height:25px;font-size:11px}.story-welcome .story-person strong{font-size:11px}.story-welcome .story-person small{font-size:8px}.story-welcome .story-quote{font-size:38px}.story-welcome .bottom-action{padding-top:14px}.story-welcome .micro{font-size:9px;margin-top:12px}}
@media(max-height:480px) and (min-width:600px){.story-welcome{grid-template-columns:1fr 1.1fr;grid-template-rows:auto 1fr auto}.story-welcome .story-heading{grid-column:1;grid-row:1}.story-heading h1{font-size:31px;line-height:1.04}.story-heading .subtitle{font-size:12px}.welcome-carousel{grid-column:2;grid-row:1/3;align-self:stretch;min-height:120px;max-height:none;margin:0 0 12px;width:100%;height:calc(100% - 12px);border-radius:17px}.welcome-slide{background-size:100% 100%,240% auto}.story-welcome .story-review{grid-column:1;grid-row:2;align-self:center;padding:12px 14px;margin:11px 0}.story-welcome .story-review blockquote{font-size:14px;line-height:1.3;margin:7px 0 9px}.story-welcome .story-review .stars{font-size:11px}.story-welcome .story-person strong{font-size:10px}.story-welcome .story-person small{font-size:8px}.story-welcome .story-avatar{width:23px;height:23px;font-size:10px}.story-welcome .story-quote{font-size:33px}.story-welcome .bottom-action{grid-column:2;grid-row:3;align-self:end;padding-top:0}.story-welcome .micro{font-size:9px;margin-top:10px}.carousel-caption{font-size:13px}.story-routine .story-review blockquote{font-size:19px}}
@media(prefers-reduced-motion:reduce){.welcome-slide,.carousel-dots button:after{transition:none}}
.calendar-day{position:relative}.calendar-day>span{position:relative;z-index:1}.calendar-blur{position:absolute;bottom:1px;left:19%;margin:0;opacity:.28}.calendar-blur i:last-child{display:none}
@media(max-height:620px){.featured-game{display:grid;grid-template-columns:32px 1fr;gap:7px 8px;padding:11px 12px}.featured-top{grid-column:1/3;margin-bottom:2px}.app-game-icon{grid-column:1;grid-row:2;width:32px;height:32px;margin:0}.featured-game h2{grid-column:2;grid-row:2;align-self:center;font-size:16px;line-height:1.2;margin:0}.featured-game p{grid-column:1/3;grid-row:3;font-size:9px;line-height:1.35}.calendar-day{padding:1px}.calendar-day>span{font-size:10px;line-height:1.2}.calendar-locks{min-height:125px}.plan-redesign .featured-days{margin-top:14px;margin-bottom:15px}}
@media(max-height:480px) and (min-width:600px){.calendar-locks{min-height:0}.featured-game p{grid-column:2;grid-row:3}.featured-game .app-game-icon{grid-row:2/4}.plan-redesign .featured-days{margin:0 0 14px}}
.age-welcome{justify-content:flex-start;max-width:402px}.age-welcome h1{font-size:26px;font-weight:650;letter-spacing:-.5px;margin:0 0 20px;line-height:1.3}.age-welcome h1 em{color:#6840ef}.age-options{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;flex:none}.age-answer{min-height:72px;padding:13px 6px;background:white;border:1px solid #d7cfe3;border-radius:8px;color:#6840ed;font-size:16px;font-weight:550;box-shadow:none;line-height:1.3}.age-answer:hover{border-color:#655075;background:#fdfaff}.age-answer.selected{border-color:#302043;background:#faf6ff;color:#5830df}.age-answer:disabled{opacity:1}.age-tip{width:100%;background:#fbedfc;border:1px solid #edb9ee;border-radius:18px;font-size:12px;line-height:1.4;color:#6d497f;padding:9px 12px;margin:16px 0 0;flex:none}.mindscore-badges{display:flex;align-items:center;justify-content:space-between;gap:19px;width:100%;padding:0 9px;margin-top:25px;flex:none}.mindscore-badges img{width:27%;height:99px;object-fit:contain;display:block}.mindscore-badges img:nth-child(2){width:35%}.age-footer{display:flex;flex-direction:column;gap:9px;margin-top:19px;color:#352148}.age-footer strong{font-size:12px;font-weight:600;letter-spacing:.5px}.age-footer>span{font-size:12px;color:#766082}
@media(max-height:740px){.age-welcome h1{font-size:25px;margin-bottom:19px}.mindscore-badges{margin-top:22px}.mindscore-badges img{height:94px}.age-footer{margin-top:18px}}
@media(max-height:620px){.age-welcome h1{font-size:24px;margin-bottom:18px}.age-answer{min-height:65px;font-size:14px;padding:11px 5px}.age-answer:last-child{font-size:12px}.age-tip{font-size:10px;margin-top:14px;padding:8px 9px}.mindscore-badges{gap:9px;padding:0;margin-top:20px}.mindscore-badges img{height:78px}.age-footer{margin-top:15px;gap:7px}.age-footer strong{font-size:10px;letter-spacing:.3px}.age-footer>span{font-size:10px}}
@media(max-height:480px) and (min-width:600px){.age-welcome{max-width:720px;display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto auto 1fr;gap:0 28px;align-items:start}.age-welcome h1{grid-column:1;grid-row:1;text-align:left;font-size:27px;margin-top:16px}.age-options{grid-column:2;grid-row:1/4;align-self:center}.age-answer{min-height:74px;font-size:15px}.age-tip{grid-column:1;grid-row:2;margin-top:0}.mindscore-badges{grid-column:1;grid-row:3;margin-top:12px;align-self:start}.mindscore-badges img{height:82px}.age-footer{grid-column:1;grid-row:3;align-self:end;margin:0 0 12px;gap:6px}.age-footer strong{font-size:10px}.age-footer>span{font-size:10px}}
.back{display:grid;place-items:center;left:12px;top:50%;transform:translateY(-50%);width:44px;height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:#49305f;line-height:0;box-shadow:none;transition:background .15s,color .15s}.back svg{display:block;flex:none}.back:hover{background:#f1eafa;color:#633bc7}.back:active:not(:disabled){transform:translateY(-50%) scale(.94);background:#e9ddf8}.back:focus-visible{outline:2px solid #936bd9;outline-offset:-3px}.dark-offer .back{background:transparent;color:#eee3ff}.dark-offer .back:hover{background:#ffffff15;color:white}
@media(max-height:480px) and (min-width:600px){.back{width:40px;height:40px;left:14px}}
.testimonial-feed-page{align-items:stretch;text-align:left;padding-bottom:104px}.feed-heading{flex:none}.feed-heading h1{font-size:33px;line-height:1.12;margin:0 0 16px}.feed-heading .subtitle{font-size:15px;line-height:1.55}.feed-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:20px 0 4px;flex:none}.sample-feed-label{font-size:9px;letter-spacing:.9px;color:#9a84ab}.feed-controls>div{display:flex;gap:5px}.feed-controls button{font-size:11px;border:1px solid #e5daee;border-radius:20px;background:#faf7fe;color:#8a639e;padding:6px 10px;min-height:29px}.feed-controls button:hover{background:#f1e7fb;border-color:#cdb5df}.feed-window{flex:1;min-height:0;overflow:hidden;position:relative;margin-top:5px;mask-image:linear-gradient(transparent,#000 3%,#000 86%,transparent)}.review-loop{will-change:transform;animation:review-conveyor 48s linear infinite}.review-loop[data-paused=true]{animation-play-state:paused}.review-loop-group{display:flex;flex-direction:column;gap:23px;padding:10px 0 23px}.feed-review{display:flex;align-items:flex-start;gap:13px}.feed-avatar{height:42px;width:42px;flex:none;display:grid;place-items:center;font-size:17px;font-weight:650;border-radius:50%;background:#e9dbf7;color:#9b74b4}.feed-avatar.tone-1{background:#fae7d4;color:#bd956c}.feed-avatar.tone-2{background:#dfe9eb;color:#729ba4}.feed-copy{flex:1;min-width:0}.feed-author{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.feed-author strong{font-size:14px;color:#42304f;font-weight:650}.feed-author>span{font-size:10px;color:#a48caf}.feed-copy p{font-size:16px;line-height:1.45;color:#65516f;margin:7px 0 9px;letter-spacing:-.15px}.feed-stars{font-size:13px;color:#d5a160;letter-spacing:2px}.testimonial-floating-cta{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:calc(100% - 48px);max-width:440px;padding:20px 0 18px;z-index:30;background:linear-gradient(transparent,#fff 21%);display:flex;flex-direction:column;align-items:center;gap:13px}.testimonial-floating-cta .primary{border-radius:30px;background:#6438e6;box-shadow:0 5px 0 #4c27b5;gap:16px}.testimonial-floating-cta>span{font-size:10px;color:#9b84aa}.testimonial-floating-cta .primary>span{font-family:system-ui;font-size:20px}
@keyframes review-conveyor{from{transform:translateY(0)}to{transform:translateY(-50%)}}
@keyframes screen-arrive{from{opacity:.4;transform:translateY(12px)}to{opacity:1;transform:none}}
@keyframes card-arrive{from{opacity:0;transform:translateY(9px) scale(.985)}to{opacity:1;transform:none}}
@keyframes panel-arrive{from{opacity:.3;transform:translateY(8px) scale(.985)}to{opacity:1;transform:none}}
.page-enter{animation:screen-arrive .38s cubic-bezier(.2,.7,.2,1) both}.journey span{transition:width .45s cubic-bezier(.2,.7,.2,1)}.answer-card,.age-answer{animation:card-arrive .34s cubic-bezier(.2,.7,.2,1) both;transition:border-color .18s,background .18s,box-shadow .18s,transform .18s}.answer-card:nth-child(2),.age-answer:nth-child(2){animation-delay:35ms}.answer-card:nth-child(3),.age-answer:nth-child(3){animation-delay:70ms}.answer-card:nth-child(4),.age-answer:nth-child(4){animation-delay:105ms}.age-answer:nth-child(5){animation-delay:140ms}.age-answer:nth-child(6){animation-delay:175ms}.age-answer:nth-child(7){animation-delay:210ms}.age-answer:nth-child(8){animation-delay:245ms}.age-answer:nth-child(9){animation-delay:280ms}.game-stage,.featured-game,.story-review,.order-summary,.confirmation-card,.daily-plan{animation:panel-arrive .42s cubic-bezier(.2,.7,.2,1) both}.featured-game:nth-child(2){animation-delay:80ms}.subscription{transition:border-color .2s,background .2s,box-shadow .2s,transform .18s}.preparation-popup{animation:panel-arrive .25s ease-out}.primary{transition:transform .17s,background .17s,box-shadow .17s}.mindscore-badges img{animation:panel-arrive .45s ease-out both}.mindscore-badges img:nth-child(2){animation-delay:100ms}.mindscore-badges img:nth-child(3){animation-delay:200ms}
@media(max-height:740px){.feed-heading h1{font-size:29px}.feed-controls{margin-top:17px}.feed-copy p{font-size:15px}.review-loop-group{gap:20px}.testimonial-floating-cta{padding-bottom:16px}.testimonial-feed-page{padding-bottom:98px}}
@media(max-height:620px){.feed-heading h1{font-size:26px;line-height:1.15;margin-bottom:12px}.feed-heading .subtitle{font-size:13px}.feed-controls{margin-top:15px}.sample-feed-label{font-size:8px}.feed-controls button{font-size:10px;padding:5px 9px;min-height:27px}.feed-avatar{height:33px;width:33px;font-size:14px}.feed-review{gap:10px}.feed-author strong{font-size:12px}.feed-author>span{font-size:9px}.feed-copy p{font-size:14px;line-height:1.45;margin:6px 0 8px}.feed-stars{font-size:11px}.review-loop-group{gap:18px}.testimonial-floating-cta{padding-top:18px;padding-bottom:14px;gap:11px}.testimonial-floating-cta>span{font-size:9px}.testimonial-feed-page{padding-bottom:91px}.feed-heading .section-kicker{font-size:8px}}
@media(max-height:480px) and (min-width:600px){.testimonial-feed-page{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto auto 1fr;gap:0 28px;padding-bottom:12px}.feed-heading{grid-column:1;grid-row:1}.feed-heading h1{font-size:28px}.feed-controls{grid-column:1;grid-row:2;align-self:start;flex-wrap:wrap;gap:9px;justify-content:flex-start}.feed-window{grid-column:2;grid-row:1/4;height:100%;margin-top:0}.testimonial-floating-cta{max-width:720px;width:calc(100% - 48px);left:50%;bottom:0;align-items:flex-start;background:none;padding-bottom:20px}.testimonial-floating-cta .primary{width:calc((100% - 28px)/2.2)}.testimonial-floating-cta>span{font-size:9px}.feed-copy p{font-size:14px}.feed-avatar{width:34px;height:34px}.feed-author strong{font-size:12px}}
@media(prefers-reduced-motion:reduce){.page-enter,.answer-card,.age-answer,.game-stage,.featured-game,.story-review,.order-summary,.confirmation-card,.daily-plan,.mindscore-badges img,.preparation-popup{animation:none!important;transform:none!important}.review-loop[data-user-motion=true]{animation:review-conveyor 48s linear infinite!important}.review-loop[data-user-motion=true][data-paused=true]{animation-play-state:paused!important}.journey span,.primary,.subscription,.age-answer,.answer-card{transition:none!important}}
.game-showcase{border:1px solid #e6d9f5;background:#f4edff;min-height:155px}.game-showcase .welcome-slide{background:#f0e7fc!important;display:flex;align-items:center;justify-content:space-between;padding:24px 36px 35px;gap:17px;transition:background .25s}.game-showcase .welcome-slide[data-showcase="1"]{background:#fbeddf!important}.game-showcase .welcome-slide[data-showcase="2"]{background:#e6f1ee!important}.showcase-copy{text-align:left;z-index:1;min-width:0}.showcase-copy>span{font-size:8px;font-weight:650;letter-spacing:1.5px;color:#ad8dc3;display:block;margin-bottom:11px}.showcase-copy h2{font-size:27px;line-height:1.1;letter-spacing:-.9px;color:#6b467f;margin:0 0 10px}.showcase-copy p{font-size:12px;line-height:1.4;color:#a180b1;margin:0;max-width:130px}.showcase-art{width:104px;height:104px;flex:none;display:grid;place-items:center;transform:rotate(6deg);border-radius:22px;background:#e3d1f4;padding:15px;box-shadow:7px 8px 0 #dfcaef80}.showcase-art>svg{width:100%;height:100%;display:block}.welcome-slide[data-showcase="1"] .showcase-art{background:#eabf8b;box-shadow:7px 8px 0 #f0d7ba}.welcome-slide[data-showcase="1"] .showcase-copy h2{color:#9a6939}.welcome-slide[data-showcase="1"] .showcase-copy>span,.welcome-slide[data-showcase="1"] .showcase-copy p{color:#b58b61}.welcome-slide[data-showcase="2"] .showcase-art{background:#cfe4da;box-shadow:7px 8px 0 #c6dfd380}.welcome-slide[data-showcase="2"] .showcase-copy h2{color:#507e6d}.welcome-slide[data-showcase="2"] .showcase-copy>span,.welcome-slide[data-showcase="2"] .showcase-copy p{color:#78a390}.word-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;width:100%;height:100%}.word-preview-grid>span{font-size:12px;font-weight:650;background:white;border-radius:4px;color:#8aac9d;display:grid;place-items:center}.word-preview-grid>.word-marked{background:#86b7a1;color:white}.game-showcase .carousel-arrow{width:27px;height:27px;top:auto;bottom:12px;transform:none;background:#ffffffb0;color:#9e7fb4;border:0;font-size:23px;z-index:2}.game-showcase .carousel-arrow:active{transform:scale(.94)}.game-showcase .carousel-prev{left:15px}.game-showcase .carousel-next{right:15px}.game-showcase .carousel-dots{bottom:12px}.game-showcase .carousel-dots button:after{background:#cab6dc}.game-showcase .carousel-dots button[aria-current=true]:after{background:#9c78b9}.game-showcase .carousel-dots button{height:23px}.game-showcase .welcome-slide>*{animation:panel-arrive .3s ease-out both}
@media(max-height:740px){.game-showcase .welcome-slide{padding:20px 28px 37px}.showcase-art{width:91px;height:91px;padding:12px;border-radius:19px}.showcase-copy h2{font-size:25px}.showcase-copy>span{font-size:7px;margin-bottom:9px}.showcase-copy p{font-size:11px}}
@media(max-height:620px){.game-showcase{min-height:115px}.game-showcase .welcome-slide{padding:12px 20px 35px;gap:10px}.showcase-art{width:64px;height:64px;border-radius:14px;padding:9px;box-shadow:4px 5px 0 #dfcaef80}.showcase-copy h2{font-size:21px;margin-bottom:6px;letter-spacing:-.7px}.showcase-copy>span{font-size:6px;letter-spacing:1px;margin-bottom:7px}.showcase-copy p{font-size:9px;max-width:115px}.word-preview-grid{gap:3px}.word-preview-grid>span{font-size:8px;border-radius:3px}.game-showcase .carousel-arrow{width:23px;height:23px;font-size:20px;bottom:8px}.game-showcase .carousel-dots{bottom:8px}.welcome-slide[data-showcase="1"] .showcase-art{box-shadow:4px 5px 0 #f0d7ba}.welcome-slide[data-showcase="2"] .showcase-art{box-shadow:4px 5px 0 #c6dfd380}}
@media(max-height:480px) and (min-width:600px){.game-showcase{min-height:130px}.game-showcase .welcome-slide{padding:20px 24px 36px}.showcase-art{width:82px;height:82px;padding:12px}.showcase-copy h2{font-size:24px}.showcase-copy p{font-size:11px}.showcase-copy>span{font-size:7px}.word-preview-grid>span{font-size:10px}}
.game-showcase{perspective:900px}.showcase-pause{position:absolute;right:10px;top:9px;z-index:3;width:26px;height:26px;border:1px solid #ffffffb0;background:#ffffff85;border-radius:50%;color:#9778ae;font-size:10px;display:grid;place-items:center;padding:0}.showcase-pause:hover{background:white}.flashcard-reveal{animation:flashcard-reveal .55s cubic-bezier(.2,.65,.2,1) both!important;transform-origin:50% 100%}.game-showcase .welcome-slide.flashcard-reveal{animation-duration:.6s!important}.game-showcase .welcome-slide>*{animation:none}.testimonial-flash-page{align-items:stretch;text-align:left;padding-bottom:113px;perspective:1000px}.testimonial-deck{width:100%;position:relative;flex:1;min-height:0;margin:34px 0 23px;perspective:1000px;isolation:isolate;touch-action:pan-y}.deck-back{position:absolute;inset:0;border:1px solid #e5d5f2;border-radius:22px;background:#f0e4fc;z-index:-1}.deck-back-one{transform:translateY(9px) rotate(2deg);background:#f0e4fa}.deck-back-two{transform:translateY(17px) rotate(-2.5deg);background:#f7effc}.testimonial-front{height:100%;display:flex;flex-direction:column;justify-content:center;background:white;border:1px solid #e3d5ee;border-radius:22px;padding:27px;box-shadow:0 9px 36px #62307f08}.testimonial-front .story-review-top{flex:none}.testimonial-front blockquote{font-size:24px;line-height:1.4;letter-spacing:-.6px;font-weight:550;color:#5f4074;margin:25px 0;flex:none}.testimonial-front .story-person{margin-top:0;flex:none}.testimonial-front .stars{font-size:17px;color:#d6a45b}.testimonial-front .sample-tag{font-size:9px}.testimonial-front .story-avatar{width:38px;height:38px}.testimonial-front .story-person strong{font-size:14px;color:#755185}.testimonial-front .story-person small{font-size:11px}.flash-controls{display:flex;align-items:center;justify-content:center;gap:14px;flex:none}.flash-controls button{width:33px;height:33px;border:1px solid #e6daee;border-radius:50%;background:#faf6ff;color:#9770ad;font-size:16px;padding:0;display:grid;place-items:center}.flash-controls button:hover{background:#f0e5fa}.flash-controls #flash-pause{border-radius:17px;width:auto;padding:0 14px;font-size:11px;margin-left:5px}.flash-controls>span{font-size:12px;color:#a085af;font-variant-numeric:tabular-nums}
@keyframes flashcard-reveal{from{opacity:.2;transform:translateY(8px) rotateX(-12deg) scale(.97)}to{opacity:1;transform:none}}
@media(max-height:740px){.testimonial-flash-page{padding-bottom:105px}.testimonial-deck{margin:28px 0 23px}.testimonial-front{padding:24px}.testimonial-front blockquote{font-size:21px;line-height:1.4;margin:22px 0}.testimonial-front .story-person strong{font-size:13px}.testimonial-front .story-person small{font-size:10px}}
@media(max-height:620px){.testimonial-flash-page{padding-bottom:94px}.testimonial-deck{margin:22px 0 22px}.testimonial-front{padding:18px;border-radius:17px}.deck-back{border-radius:17px}.testimonial-front blockquote{font-size:18px;line-height:1.38;margin:17px 0;letter-spacing:-.3px}.testimonial-front .stars{font-size:14px}.testimonial-front .sample-tag{font-size:7px}.testimonial-front .story-avatar{width:29px;height:29px;font-size:12px}.testimonial-front .story-person strong{font-size:12px}.testimonial-front .story-person small{font-size:9px}.testimonial-front .story-quote{font-size:40px}.flash-controls{gap:11px}.flash-controls button{width:29px;height:29px;font-size:14px}.flash-controls #flash-pause{font-size:10px;padding:0 12px}.flash-controls>span{font-size:11px}.showcase-pause{width:23px;height:23px;top:7px;right:7px}}
@media(max-height:480px) and (min-width:600px){.testimonial-flash-page{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr auto;gap:0 28px;padding-bottom:35px}.testimonial-flash-page .feed-heading{grid-column:1;grid-row:1}.testimonial-deck{grid-column:2;grid-row:1/4;align-self:stretch;height:100%;margin:0}.testimonial-front{padding:20px}.testimonial-front blockquote{font-size:19px;margin:17px 0;line-height:1.35}.testimonial-front .story-person strong{font-size:12px}.testimonial-front .story-person small{font-size:9px}.flash-controls{grid-column:1;grid-row:2;align-self:start;justify-content:flex-start;margin-top:20px}.testimonial-floating-cta .primary{width:calc((100% - 28px)/2.2)}.testimonial-front .stars{font-size:14px}}
@media(prefers-reduced-motion:reduce){.flashcard-reveal,.game-showcase .welcome-slide.flashcard-reveal{animation:none!important;transform:none!important}.deck-back-one,.deck-back-two{transform:none}.deck-back{display:none}}
.showcase-copy h2{max-width:170px}.featured-game h2{font-size:20px;line-height:1.1}.featured-game p{font-size:11px}
@media(max-height:620px){.featured-game h2{font-size:15px;line-height:1.15}.featured-game p{font-size:9px}.showcase-copy h2{font-size:20px;max-width:135px}}
@media(max-height:480px) and (min-width:600px){.featured-game h2{font-size:14px}.featured-game p{font-size:8px}}
.portrait-photo{object-fit:cover;object-position:50% 35%;border-radius:50%;border:2px solid white;box-shadow:0 0 0 1px #e8dbee;display:block;flex:none}.testimonial-front .story-avatar.portrait-photo{width:48px;height:48px}.story-welcome .story-avatar.portrait-photo{width:38px;height:38px}
@media(max-height:620px){.testimonial-front blockquote{font-size:16px;line-height:1.36;margin:14px 0}.testimonial-front .story-avatar.portrait-photo{width:38px;height:38px}.story-welcome .story-avatar.portrait-photo{width:30px;height:30px}}
@media(max-height:480px) and (min-width:600px){.testimonial-front blockquote{font-size:18px}.testimonial-front .story-avatar.portrait-photo{width:39px;height:39px}}
.testimonial-feed-page .feed-heading h1{font-size:27px;line-height:1.25;margin:0 0 24px;letter-spacing:-.6px}.testimonial-feed-page .feed-heading .subtitle{font-size:16px;color:#5f496e;line-height:1.5}.testimonial-feed-page .feed-controls{margin:17px 0 3px}.testimonial-feed-page .sample-feed-label{font-size:8px;letter-spacing:.6px}.testimonial-feed-page .feed-author strong{color:#35243f;font-size:14px}.testimonial-feed-page .feed-copy p{color:#4c3a57;font-size:16px;line-height:1.4;letter-spacing:-.2px}.testimonial-feed-page .feed-stars{font-size:11px;color:#caa16c}.testimonial-feed-page .review-loop-group{gap:26px}.testimonial-feed-page .feed-avatar{width:42px;height:42px}.testimonial-feed-page{padding-bottom:86px}.testimonial-feed-page~.testimonial-floating-cta{padding-bottom:20px}
@media(max-height:620px){.testimonial-feed-page .feed-heading h1{font-size:23px;margin-bottom:17px}.testimonial-feed-page .feed-heading .subtitle{font-size:14px}.testimonial-feed-page .feed-copy p{font-size:14px;line-height:1.42}.testimonial-feed-page .feed-author strong{font-size:12px}.testimonial-feed-page .feed-avatar{width:34px;height:34px}.testimonial-feed-page .sample-feed-label{font-size:6px}.testimonial-feed-page .feed-controls{gap:6px;margin-top:13px}.testimonial-feed-page .review-loop-group{gap:21px}.testimonial-feed-page{padding-bottom:77px}}
@media(max-height:480px) and (min-width:600px){.testimonial-feed-page{padding-bottom:12px}.testimonial-feed-page .feed-heading h1{font-size:25px}.testimonial-feed-page .feed-copy p{font-size:14px}.testimonial-feed-page .feed-controls{flex-wrap:wrap}}

/* A simple illustrated introduction to the guided routine. */
.easy-start-page{align-items:stretch;text-align:left;padding-bottom:96px;gap:0}.easy-illustration{height:278px;min-height:180px;max-height:34vh;width:100%;position:relative;flex:none;margin:4px 0 30px;isolation:isolate}.easy-halo{position:absolute;inset:9% 7% 2%;background:#f3edff;border-radius:43% 57% 56% 44% / 45% 40% 60% 55%;transform:rotate(-9deg);z-index:-1}.easy-screen{position:absolute;background:#fff;border:3px solid #e4daef;border-radius:19px;box-shadow:0 14px 30px #43276b0e;padding:15px}.easy-screen-back{width:72%;height:65%;left:4%;top:3%;transform:rotate(-5deg);background:#f6f0ff}.easy-screen-front{width:76%;height:67%;right:1%;top:32%;transform:rotate(4deg);background:#fff9f0}.easy-screen-top{display:flex;align-items:center;justify-content:space-between;font-size:8px;font-weight:700;letter-spacing:1px;color:#9075ae}.easy-screen-top i{font-size:17px;font-style:normal;color:#9f76d6}.easy-plan-line{display:flex;align-items:center;gap:12px;margin:13px 0}.easy-plan-line>b{font-size:26px;color:#8960c2;border-radius:12px;padding:9px;background:#e8dafa}.easy-plan-line strong{font-size:16px;display:block;color:#553f70}.easy-plan-line small{font-size:10px;display:block;margin-top:5px;color:#9b88af}.easy-plan-progress{display:flex;gap:7px;width:67%}.easy-plan-progress i{height:5px;flex:1;border-radius:5px;background:#e3d6f6}.easy-plan-progress i:first-child{background:#9565df}.easy-plan-caption{font-size:6px;letter-spacing:1px;color:#a08ab7;display:block;margin-top:9px}.easy-session{display:flex;align-items:center;gap:17px;margin:14px 0 12px}.easy-session-art{width:62px;height:65px;flex:none;border-radius:14px;background:#f7e2c6;display:grid;place-items:center;padding:8px}.easy-session-art svg{height:100%;width:100%}.easy-session strong{display:block;font-size:22px;line-height:1.08;letter-spacing:-.7px;color:#654c34}.easy-session small{font-size:9px;display:block;margin-top:6px;color:#a88a68}.easy-session-bottom{border-top:1px solid #efdfca;padding-top:7px;display:flex;justify-content:space-between;align-items:center;color:#aa8b6a;font-size:9px}.easy-session-bottom b{width:24px;height:24px;border-radius:50%;background:#efd9bb;display:grid;place-items:center;font-size:16px}.easy-plan-pill{position:absolute;left:7%;bottom:-1%;background:#6943bb;color:white;font-size:10px;padding:10px 14px;border-radius:20px;box-shadow:0 6px 14px #6b40b31c;transform:rotate(-4deg)}.easy-orbit{position:absolute;border-radius:50%;background:#f1d6ac}.orbit-one{width:12px;height:12px;right:10%;top:14%}.orbit-two{width:7px;height:7px;left:0;bottom:18%;background:#c7adea}.easy-copy h1{font-size:29px;line-height:1.2;margin:0 0 18px;letter-spacing:-.7px}.easy-copy p{font-size:16px;line-height:1.6;color:#604c72;margin:0 0 18px}.easy-copy strong{color:#39264f;font-weight:650}.easy-unlock-note{font-size:11px;color:#95829e;display:block;margin-top:4px}.easy-screen-back{animation:easy-back-in .7s ease-out both}.easy-screen-front{animation:easy-front-in .85s ease-out both}.easy-plan-pill{animation:easy-pill-in 1s ease-out both}@keyframes easy-back-in{from{opacity:0;transform:translate(-14px,8px) rotate(-9deg)}to{opacity:1;transform:rotate(-5deg)}}@keyframes easy-front-in{from{opacity:0;transform:translate(16px,16px) rotate(9deg)}to{opacity:1;transform:rotate(4deg)}}@keyframes easy-pill-in{from{opacity:0;transform:translateY(8px) rotate(-4deg)}to{opacity:1;transform:rotate(-4deg)}}
@media(max-height:740px){.easy-illustration{height:225px;min-height:160px;margin:0 0 23px}.easy-copy h1{font-size:26px;margin-bottom:14px}.easy-copy p{font-size:14px;line-height:1.5;margin-bottom:14px}.easy-screen{padding:12px}.easy-session{margin:9px 0}.easy-session strong{font-size:20px}.easy-session-art{width:52px;height:55px}.easy-plan-line{margin:8px 0}.easy-start-page{padding-bottom:90px}}
@media(max-height:620px){.easy-illustration{height:170px;min-height:150px;margin:0 0 18px}.easy-screen{padding:9px;border-width:2px;border-radius:14px}.easy-screen-top{font-size:5px;letter-spacing:.65px}.easy-screen-top i{font-size:12px}.easy-plan-line{gap:7px;margin:7px 0}.easy-plan-line>b{font-size:18px;padding:6px;border-radius:8px}.easy-plan-line strong{font-size:11px}.easy-plan-line small{font-size:7px;margin-top:3px}.easy-plan-progress{gap:4px}.easy-plan-progress i{height:4px}.easy-plan-caption{font-size:4px;margin-top:5px}.easy-session{gap:10px;margin:7px 0}.easy-session-art{width:37px;height:40px;border-radius:9px;padding:5px}.easy-session strong{font-size:15px}.easy-session small{font-size:6px;margin-top:4px}.easy-session-bottom{font-size:6px;padding-top:4px}.easy-session-bottom b{width:17px;height:17px;font-size:11px}.easy-plan-pill{font-size:8px;padding:8px 10px}.easy-copy h1{font-size:23px;margin-bottom:12px}.easy-copy p{font-size:13px;line-height:1.5;margin-bottom:12px}.easy-unlock-note{font-size:9px}.easy-start-page{padding-bottom:81px}}
@media(max-height:480px) and (min-width:600px){.easy-start-page{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding-bottom:75px;align-items:center}.easy-illustration{height:215px;max-height:none;min-height:0;margin:0}.easy-copy h1{font-size:25px}.easy-copy p{font-size:13px}.easy-cta{align-items:flex-end}.easy-cta .primary{width:calc((100% - 30px)*1.2/2.2)}}

.weekly-roadmap-page{align-items:stretch;text-align:center;padding-bottom:97px}.roadmap-heading{flex:none}.roadmap-heading h1{font-size:29px;line-height:1.2;margin-bottom:23px}.roadmap-heading .section-kicker{font-size:8px;letter-spacing:1.3px;margin-bottom:12px}.roadmap-card{background:linear-gradient(155deg,#faf8fd,#f9f8fc);border:1px solid #eee8f5;border-radius:22px;padding:23px 13px 13px;flex:none;overflow:hidden}.roadmap-duration{font-size:9px;font-weight:650;letter-spacing:1.2px;color:#9777b4;display:block;margin-bottom:11px}.roadmap-card-heading h2{font-size:18px;letter-spacing:-.3px;margin:0 0 9px;color:#38234f}.roadmap-card-heading p{font-size:13px;color:#907b9f;margin:0}.roadmap-chart{margin-top:17px;width:100%;max-height:36vh}.roadmap-chart svg{display:block;width:100%;max-height:36vh;overflow:visible}.roadmap-milestone text{font-size:10px;font-weight:650}.roadmap-week-labels text{font-size:10px;fill:#a08daa}.roadmap-note{font-size:12px;line-height:1.7;color:#8d799a;margin:19px 0 0;text-align:left;padding:0 9px}.roadmap-curve{stroke-dasharray:1;stroke-dashoffset:0;animation:roadmap-draw 1.5s ease-out both}.roadmap-milestone{animation:panel-arrive .4s ease-out both;transform-box:fill-box;transform-origin:center}.milestone-one{animation-delay:.2s}.milestone-two{animation-delay:.5s}.milestone-three{animation-delay:.8s}.milestone-four{animation-delay:1.1s}@keyframes roadmap-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@media(max-height:740px){.roadmap-heading h1{font-size:27px;margin-bottom:18px}.roadmap-card{padding-top:19px}.roadmap-note{font-size:11px;margin-top:15px}.roadmap-chart,.roadmap-chart svg{max-height:34vh}.weekly-roadmap-page{padding-bottom:89px}}
@media(max-height:620px){.roadmap-heading h1{font-size:23px;margin-bottom:14px}.roadmap-heading .section-kicker{font-size:6px;margin-bottom:9px}.roadmap-card{border-radius:17px;padding:14px 8px 8px}.roadmap-duration{font-size:7px;margin-bottom:8px}.roadmap-card-heading h2{font-size:15px;margin-bottom:6px}.roadmap-card-heading p{font-size:10px}.roadmap-chart{margin-top:11px}.roadmap-chart,.roadmap-chart svg{max-height:32vh}.roadmap-note{font-size:10px;margin-top:12px;line-height:1.6;padding:0 3px}.weekly-roadmap-page{padding-bottom:81px}}
@media(max-height:480px) and (min-width:600px){.weekly-roadmap-page{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr;gap:0 28px;text-align:left;padding-bottom:25px}.roadmap-heading{grid-column:1;grid-row:1}.roadmap-heading h1{font-size:28px;margin-bottom:14px}.roadmap-card{grid-column:2;grid-row:1/3;text-align:center;align-self:stretch;padding:12px 10px 8px}.roadmap-chart,.roadmap-chart svg{max-height:195px}.roadmap-chart{margin-top:6px}.roadmap-note{grid-column:1;grid-row:2;font-size:12px;margin:0;padding:0 0 65px}.roadmap-cta{align-items:flex-start}}

.clean-review-feed .feed-window{margin-top:25px}.clean-review-feed{padding-bottom:109px}.clean-review-feed .feed-window:hover .review-loop,.clean-review-feed .feed-window:focus .review-loop{animation-play-state:paused}.clean-review-feed .feed-window:focus-visible{outline:2px solid #b79bdc;outline-offset:4px;border-radius:8px}@media(max-height:620px){.clean-review-feed .feed-window{margin-top:19px}.clean-review-feed{padding-bottom:100px}}@media(max-height:480px) and (min-width:600px){.clean-review-feed{padding-bottom:12px}.clean-review-feed .feed-window{margin-top:0}}

/* Reference-style community comments, with a single floating action. */
#app.community-reference{background:#fff}.community-reference .journey,.community-reference footer{display:none}.community-reference header{height:58px;min-height:58px}.community-reference .brand{font-size:21px;letter-spacing:-.65px}.community-reference .back{top:7px}.reference-review-feed{padding-top:5px;padding-bottom:94px;text-align:left;align-items:stretch}.reference-review-feed .feed-heading h1{text-align:center;font-size:25px;line-height:1.28;font-weight:600;letter-spacing:-.45px;color:#271b54;margin:0 0 23px}.reference-review-feed .feed-window{margin:0;mask-image:linear-gradient(#000 0%,#000 88%,transparent 100%)}.reference-review-feed .review-loop{animation-duration:72s}.reference-review-feed .review-loop-group{gap:31px;padding:8px 5px 31px}.reference-review-feed .feed-review{gap:10px}.reference-review-feed .feed-avatar{width:34px;height:34px;border:0;box-shadow:none}.reference-review-feed .feed-author{gap:4px}.reference-review-feed .feed-author strong{font-size:13px;color:#62666a;font-weight:600}.reference-review-feed .feed-author>span{font-size:12px;color:#797d81}.reference-review-feed .feed-copy p{font-size:14px;line-height:1.34;color:#171717;letter-spacing:0;margin:2px 0 7px}.comment-reactions{display:flex;align-items:center;gap:6px;color:#767b81;height:21px}.reply-label{font-size:12px;font-weight:600;margin-right:16px}.reaction-stack{display:flex;align-items:center}.reaction-stack i{font-style:normal;display:grid;place-items:center;width:17px;height:17px;font-size:12px;color:white;background:#f83968;border-radius:50%;border:1px solid white;line-height:1}.reaction-stack i+i{margin-left:-5px;background:#198ef3;font-size:10px}.reaction-count{font-size:15px}.comment-like{margin-left:auto;display:flex;align-items:center;padding-right:3px}.reference-feed-cta{width:calc(100% - 28px);max-width:440px;padding:17px 0 9px;gap:7px;background:linear-gradient(transparent,#fff 30%)}.reference-feed-cta .primary{border-radius:32px;min-height:55px;background:#5530f4;box-shadow:none;font-size:18px;font-weight:650}.reference-feed-cta .primary:hover{background:#4824df;box-shadow:none}.reference-feed-cta>span{font-size:8px;color:#939098}.reference-review-feed .feed-window:hover .review-loop,.reference-review-feed .feed-window:focus .review-loop{animation-play-state:paused}.reference-review-feed .feed-window:focus-visible{outline:2px solid #d7c9f2;outline-offset:3px}
@media(max-height:620px){.community-reference header{height:50px;min-height:50px}.community-reference .brand{font-size:19px}.reference-review-feed{padding-bottom:89px;padding-top:6px}.reference-review-feed .feed-heading h1{font-size:21px;line-height:1.3;margin-bottom:18px}.reference-review-feed .feed-copy p{font-size:13px;line-height:1.35}.reference-review-feed .feed-author strong{font-size:12px}.reference-review-feed .feed-author>span{font-size:11px}.reference-review-feed .feed-avatar{width:31px;height:31px}.reference-review-feed .review-loop-group{gap:26px;padding-left:0;padding-right:0}.reference-feed-cta .primary{min-height:51px;font-size:17px}}
@media(max-height:480px) and (min-width:600px){.reference-review-feed{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr;gap:28px;padding-top:12px;padding-bottom:16px}.reference-review-feed .feed-heading h1{text-align:left;font-size:26px;line-height:1.3}.reference-review-feed .feed-window{grid-column:2;grid-row:1/3;height:100%}.reference-feed-cta{max-width:720px;align-items:flex-start;width:calc(100% - 48px);background:none}.reference-feed-cta .primary{width:calc((100% - 28px)/2.2)}.reference-review-feed .review-loop-group{gap:25px}}

.training-explainer-page{align-items:stretch;text-align:left;padding-bottom:95px}.explainer-art{--art-halo:#faf6ee;--art-surface:#eff8f3;--art-border:#cce5d9;flex:none;height:330px;max-height:42vh;margin:0 0 22px}.explainer-art[data-tone=lavender]{--art-halo:#f7f2fc;--art-surface:#f3edfd;--art-border:#ddd0f2}.explainer-art[data-tone=peach]{--art-halo:#fcf7ef;--art-surface:#fff2df;--art-border:#edd7b8}.explainer-art svg{display:block;height:100%;width:100%;overflow:visible}.explainer-back{transform:rotate(-3deg);transform-origin:50% 50%;animation:panel-arrive .55s ease-out both}.explainer-middle{animation:panel-arrive .65s .12s ease-out both}.explainer-bottom{animation:panel-arrive .65s .25s ease-out both}.explainer-copy h1{font-size:27px;line-height:1.28;letter-spacing:-.55px;margin:0 0 19px}.explainer-copy p{font-size:16px;line-height:1.6;color:#695779;margin:0}.explainer-copy strong{color:#34204d;font-weight:650}.explainer-cta .primary{border-radius:30px;box-shadow:none;background:#5832ee}.explainer-cta .primary:hover{background:#4e2cda;box-shadow:none}
@media(max-height:740px){.explainer-art{height:265px;max-height:39vh;margin-bottom:18px}.explainer-copy h1{font-size:25px;margin-bottom:16px}.explainer-copy p{font-size:15px;line-height:1.55}.training-explainer-page{padding-bottom:90px}}
@media(max-height:620px){.explainer-art{height:210px;max-height:36vh;margin-bottom:15px}.explainer-copy h1{font-size:23px;line-height:1.25;margin-bottom:12px}.explainer-copy p{font-size:13px;line-height:1.55}.training-explainer-page{padding-bottom:79px}}
@media(max-height:480px) and (min-width:600px){.training-explainer-page{display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:30px;padding-bottom:73px}.explainer-art{height:244px;max-height:none;margin:0}.explainer-copy h1{font-size:25px}.explainer-copy p{font-size:14px}.explainer-cta{align-items:flex-end}.explainer-cta .primary{width:calc((100% - 30px)*1.2/2.2)}}

.easy-hero-image{height:310px;max-height:38vh;margin:0 0 25px;min-height:0}.easy-hero-image img{width:100%;height:100%;object-fit:contain;display:block;animation:panel-arrive .65s ease-out both}.photo-break-page{align-items:stretch;text-align:left;padding-bottom:89px;gap:0}.photo-break-art{flex:1;min-height:0;margin:0 0 20px}.photo-break-art img{display:block;height:100%;width:100%;object-fit:contain;animation:panel-arrive .65s ease-out both}.photo-break-copy{flex:none}.photo-break-copy h1{font-size:27px;line-height:1.25;letter-spacing:-.5px;margin:0 0 10px}.photo-break-copy p{font-size:14px;line-height:1.5;color:#8b769c;margin:0}.photo-break-page~.explainer-cta .primary{width:100%}
@media(max-height:740px){.easy-hero-image{height:235px;max-height:34vh;margin-bottom:22px}.photo-break-copy h1{font-size:25px}.photo-break-copy p{font-size:13px}.photo-break-art{margin-bottom:17px}}
@media(max-height:620px){.easy-hero-image{height:175px;max-height:31vh;margin-bottom:17px}.photo-break-page{padding-bottom:81px}.photo-break-copy h1{font-size:22px;margin-bottom:8px}.photo-break-copy p{font-size:11px}.photo-break-art{margin-bottom:14px}}
@media(max-height:480px) and (min-width:600px){.easy-hero-image{height:220px;max-height:none;margin:0}.photo-break-page{display:grid;grid-template-columns:1fr 1.2fr;gap:30px;padding-bottom:75px;align-items:center}.photo-break-art{height:245px;margin:0}.photo-break-copy h1{font-size:26px}.photo-break-copy p{font-size:14px}.photo-break-page~.explainer-cta .primary{width:calc((100% - 30px)*1.2/2.2)}}

.roadmap-v2{align-items:stretch;text-align:left;padding-bottom:95px}.roadmap-v2-heading{margin-bottom:24px;flex:none}.roadmap-v2-heading>span{display:block;font-size:9px;font-weight:600;letter-spacing:1.5px;color:#9a87ae;margin-bottom:12px}.roadmap-v2-heading h1{font-size:34px;font-weight:550;line-height:1.16;letter-spacing:-1.1px;margin:0}.roadmap-v2-heading h1 em{font-weight:550;color:#7350c9}.roadmap-v2-card{border:1px solid #e8e0f1;background:linear-gradient(145deg,#fffeff,#faf8fd);border-radius:25px;padding:22px;box-shadow:0 12px 35px #41226005;flex:none}.roadmap-v2-meta{display:flex;justify-content:space-between;align-items:center;color:#947ea8;font-size:11px;font-weight:500}.roadmap-v2-meta>span:last-child{background:#f0eaf8;border-radius:20px;padding:6px 10px;color:#9b82b2}.roadmap-v2-graph{height:182px;margin:9px 0 8px}.roadmap-v2-graph svg{display:block;height:100%;width:100%;overflow:visible}.week-node-halo{transition:opacity .2s}.roadmap-week-tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;border-bottom:1px solid #eae2f2;padding-bottom:17px}.roadmap-week-tabs button{height:43px;border:1px solid #e6dfee;background:white;color:#94849f;border-radius:11px;font-size:13px;white-space:nowrap;font-weight:500;padding:0}.roadmap-week-tabs button[aria-selected=true]{background:#7451c9;border-color:#7451c9;color:white;box-shadow:0 4px 10px #744bc321}.roadmap-week-tabs button:hover{border-color:#b096d3}.roadmap-week-tabs button:focus-visible{outline:3px solid #d9c9ef;outline-offset:3px}.roadmap-week-detail{min-height:110px;padding-top:17px}.roadmap-week-detail>span{font-size:10px;letter-spacing:.7px;color:#9f87b2}.roadmap-week-detail h2{font-size:21px;font-weight:600;letter-spacing:-.4px;color:#422c55;margin:7px 0 8px}.roadmap-week-detail p{font-size:13px;line-height:1.5;color:#8d7b99;margin:0}.roadmap-v2-note{font-size:12px;line-height:1.6;color:#a18eae;margin:17px 0 0;padding:0 5px}.roadmap-v2-cta .primary{box-shadow:none;border-radius:30px;background:#704bcc;font-weight:600}.roadmap-v2-cta .primary:hover{box-shadow:none;background:#6140b6}
@media(max-height:740px){.roadmap-v2-heading{margin-bottom:19px}.roadmap-v2-heading h1{font-size:30px}.roadmap-v2-card{padding:18px}.roadmap-v2-graph{height:145px}.roadmap-week-detail{min-height:98px;padding-top:13px}.roadmap-week-detail h2{font-size:19px;margin:6px 0}.roadmap-week-detail p{font-size:12px}.roadmap-week-tabs{padding-bottom:13px}.roadmap-v2-note{font-size:11px;margin-top:13px}.roadmap-v2{padding-bottom:87px}}
@media(max-height:620px){.roadmap-v2-heading{margin-bottom:13px}.roadmap-v2-heading>span{font-size:6px;margin-bottom:9px;letter-spacing:1.1px}.roadmap-v2-heading h1{font-size:25px;line-height:1.14;letter-spacing:-.7px}.roadmap-v2-card{padding:13px;border-radius:19px}.roadmap-v2-meta{font-size:9px}.roadmap-v2-meta>span:last-child{padding:4px 7px}.roadmap-v2-graph{height:105px;margin:6px 0}.roadmap-week-tabs{gap:4px;padding-bottom:10px}.roadmap-week-tabs button{height:36px;font-size:11px;border-radius:9px}.roadmap-week-detail{min-height:88px;padding-top:10px}.roadmap-week-detail>span{font-size:8px}.roadmap-week-detail h2{font-size:16px;margin:5px 0}.roadmap-week-detail p{font-size:11px;line-height:1.4}.roadmap-v2-note{font-size:9px;margin-top:10px;line-height:1.5}.roadmap-v2{padding-bottom:78px}}
@media(max-height:480px) and (min-width:600px){.roadmap-v2{display:grid;grid-template-columns:1fr 1.2fr;grid-template-rows:auto 1fr;gap:0 28px;padding-bottom:19px;align-items:start}.roadmap-v2-heading{grid-column:1;grid-row:1;margin-top:17px}.roadmap-v2-heading h1{font-size:31px}.roadmap-v2-card{grid-column:2;grid-row:1/3;padding:13px;height:100%;box-sizing:border-box}.roadmap-v2-graph{height:95px}.roadmap-v2-note{grid-column:1;grid-row:2;font-size:12px;padding:0;margin-top:5px}.roadmap-v2-cta{align-items:flex-start}}
/* Main headings carry the message without an extra uppercase kicker. */
.eyebrow,.section-kicker,.roadmap-v2-heading>span,.roadmap-heading>.section-kicker{display:none!important}
.roadmap-v2-meta>span:last-child{background:none;border-radius:0;padding:0 0 0 12px;border-left:1px solid #e1d6ec;color:#947ea8}.roadmap-week-tabs button{border-radius:9px}.roadmap-v2-cta .primary{border-radius:15px}

.popup-question-image{display:block;width:185px;height:185px;object-fit:contain;margin:12px auto 15px;border-radius:15px}.preparation-popup{padding:23px 25px}.preparation-popup h2{font-size:24px;line-height:1.3;font-weight:600}.preparation-popup p{margin:12px 0 20px}.popup-step{display:none}@media(max-height:620px){.popup-question-image{width:145px;height:145px;margin:0 auto 12px}.preparation-popup{padding:20px}.preparation-popup h2{font-size:21px}.preparation-popup p{font-size:12px;margin:10px 0 17px}}@media(max-height:480px) and (min-width:600px){.preparation-popup{max-width:560px;display:grid;grid-template-columns:160px 1fr;grid-template-rows:auto auto auto;column-gap:20px;align-items:center;text-align:left;padding:22px}.popup-question-image{width:160px;height:180px;grid-column:1;grid-row:1/4;margin:0}.preparation-popup h2{grid-column:2;grid-row:1;font-size:21px;align-self:end}.preparation-popup p{grid-column:2;grid-row:2;margin:10px 0 16px}.preparation-popup .popup-choices{grid-column:2;grid-row:3}}

/* The full four-week plan is visible together, with recognizable illustrations. */
.illustrated-roadmap{align-items:stretch;text-align:left;padding-bottom:92px;gap:0}.illustrated-roadmap-heading{flex:none;margin-bottom:24px}.illustrated-roadmap-heading h1{font-size:33px;font-weight:550;letter-spacing:-1px;line-height:1.16;margin:0 0 12px}.illustrated-roadmap-heading h1 em{color:#7151c4;font-weight:550}.illustrated-roadmap-heading>p{font-size:14px;line-height:1.4;color:#83778e;margin:0}.illustrated-week-list{list-style:none;padding:0;margin:0;display:grid;grid-template-rows:repeat(4,1fr);gap:12px;flex:1;min-height:0;max-height:468px}.illustrated-week{--week-accent:#4e927a;--week-tint:#f3faf7;display:flex;align-items:center;gap:15px;border:1px solid #e3ece7;border-radius:17px;background:linear-gradient(110deg,#fff 15%,var(--week-tint));padding:12px 15px 12px 11px;min-height:0;position:relative;animation:panel-arrive .45s ease-out both}.illustrated-week[data-week-tone=lavender]{--week-accent:#9066be;--week-tint:#f8f4fc;border-color:#e9e0f1;animation-delay:.06s}.illustrated-week[data-week-tone=peach]{--week-accent:#b88b55;--week-tint:#fff8ef;border-color:#f0e4d4;animation-delay:.12s}.illustrated-week[data-week-tone=blue]{--week-accent:#748fa8;--week-tint:#f2f7fb;border-color:#e0e9f0;animation-delay:.18s}.week-picture{width:86px;height:86px;flex:none;border-radius:12px;overflow:hidden;background:white;mix-blend-mode:multiply}.week-picture img{width:100%;height:100%;object-fit:contain;display:block}.week-overview{min-width:0;flex:1}.week-overview-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.week-overview-meta>span{color:var(--week-accent);font-weight:650;font-size:12px}.week-overview-meta>small{color:#a496ad;font-size:10px;white-space:nowrap}.week-overview h2{font-size:18px;letter-spacing:-.35px;line-height:1.2;color:#3e2f4c;font-weight:600;margin:0 0 6px}.week-overview p{font-size:12px;line-height:1.4;color:#8c7e97;margin:0}.illustrated-roadmap-note{display:flex;align-items:center;justify-content:center;gap:6px;font-size:11px;line-height:1.4;color:#9d8da9;margin:18px 0 0;flex:none}.illustrated-roadmap-note svg{flex:none}.illustrated-roadmap-cta .primary{border-radius:15px;background:#6f4ac9;box-shadow:none;font-weight:600}.illustrated-roadmap-cta .primary:hover{box-shadow:none;background:#603eb6}.explainer-image{display:flex;align-items:center;justify-content:center}.explainer-image img{display:block;height:100%;width:100%;object-fit:contain;mix-blend-mode:multiply;animation:panel-arrive .6s ease-out both}
@media(max-height:740px){.illustrated-roadmap{padding-bottom:86px}.illustrated-roadmap-heading{margin-bottom:18px}.illustrated-roadmap-heading h1{font-size:29px;margin-bottom:9px}.illustrated-roadmap-heading>p{font-size:12px}.illustrated-week-list{gap:9px;max-height:412px}.illustrated-week{padding:9px 12px 9px 8px;gap:12px}.week-picture{height:71px;width:71px}.week-overview-meta{margin-bottom:6px}.week-overview-meta>span{font-size:11px}.week-overview-meta>small{font-size:9px}.week-overview h2{font-size:16px;margin-bottom:5px}.week-overview p{font-size:11px}.illustrated-roadmap-note{font-size:10px;margin-top:13px}}
@media(max-height:620px){.illustrated-roadmap{padding-bottom:78px}.illustrated-roadmap-heading{margin-bottom:13px}.illustrated-roadmap-heading h1{font-size:25px;letter-spacing:-.6px;margin-bottom:8px}.illustrated-roadmap-heading>p{font-size:11px}.illustrated-week-list{gap:7px;max-height:318px}.illustrated-week{border-radius:13px;padding:7px;gap:9px}.week-picture{height:57px;width:57px;border-radius:9px}.week-overview-meta{margin-bottom:4px}.week-overview-meta>span{font-size:10px}.week-overview-meta>small{font-size:8px}.week-overview h2{font-size:14px;line-height:1.15;margin-bottom:4px;letter-spacing:-.25px}.week-overview p{font-size:10px;line-height:1.3}.illustrated-roadmap-note{font-size:9px;gap:4px;margin-top:10px}.illustrated-roadmap-note svg{width:12px}}
@media(max-height:480px) and (min-width:600px){.illustrated-roadmap{display:grid;grid-template-columns:1fr 1.4fr;grid-template-rows:auto 1fr;gap:0 24px;align-items:start;padding-bottom:20px}.illustrated-roadmap-heading{grid-column:1;grid-row:1;margin-top:18px}.illustrated-roadmap-heading h1{font-size:28px}.illustrated-roadmap-heading>p{font-size:12px;max-width:200px}.illustrated-week-list{grid-column:2;grid-row:1/3;align-self:stretch;height:100%;max-height:none;gap:6px}.illustrated-week{padding:5px 9px;gap:9px;border-radius:10px}.week-picture{height:47px;width:47px}.week-overview-meta{margin-bottom:3px}.week-overview h2{font-size:14px;margin-bottom:2px}.week-overview p{font-size:9px}.illustrated-roadmap-note{grid-column:1;grid-row:2;justify-content:flex-start;align-items:flex-start;max-width:225px;font-size:11px;margin-top:10px;padding-bottom:70px}.illustrated-roadmap-cta{align-items:flex-start}.illustrated-roadmap-cta .primary{width:calc((100% - 24px)/2.4)}}

.plan-bar-page{align-items:stretch;text-align:left;padding-bottom:92px}.plan-bar-heading h1{font-size:33px;line-height:1.15;font-weight:550;letter-spacing:-.8px;margin:0 0 16px}.plan-bar-heading h1 em{font-weight:550;color:#7452cb}.plan-bar-heading>p{font-size:15px;line-height:1.55;color:#8c7e96;margin:0 0 26px}.session-chart{border:1px solid #e8e0f3;border-radius:22px;padding:22px;background:linear-gradient(145deg,#fff,#fbf8ff)}.session-chart-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:25px}.session-chart-header h2{font-size:17px;color:#554066;font-weight:600;margin:0;letter-spacing:-.2px}.session-chart-header>span{font-size:11px;color:#a08aae}.session-chart-plot{height:218px;position:relative}.session-chart-grid{position:absolute;inset:0 0 27px;display:flex;flex-direction:column;justify-content:space-between}.session-chart-grid i{border-top:1px dashed #e6dfee;width:100%}.session-bars{position:absolute;inset:0;display:flex;align-items:flex-end;justify-content:space-around;gap:13px}.session-bar-column{height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;flex:1;min-width:0;padding-top:8px}.session-bar{width:100%;max-width:58px;height:calc((100% - 27px)*var(--bar-height)/100%);height:var(--bar-height);max-height:calc(100% - 27px);min-height:42px;background:linear-gradient(180deg,#bca2e7,#ab86d9);border-radius:12px 12px 3px 3px;display:flex;justify-content:center;padding-top:12px;color:white;animation:session-grow .6s var(--bar-delay) ease-out both;transform-origin:bottom;box-shadow:inset 0 1px 0 #ffffff55}.session-bar-column:nth-child(1) .session-bar{background:linear-gradient(#afd8c8,#8dbfac)}.session-bar-column:nth-child(2) .session-bar{background:linear-gradient(#a9cbd7,#82afc0)}.session-bar-column:nth-child(4) .session-bar{background:linear-gradient(#9c78d7,#7851be)}.session-bar strong{font-size:21px;font-weight:600;line-height:1}.session-bar-column>span{font-size:11px;color:#9b88a7;margin-top:12px;height:15px;white-space:nowrap}.session-chart-caption{font-size:10px;line-height:1.45;color:#aa98b5;margin:18px 0 0;text-align:center}.plan-bar-summary{display:flex;align-items:center;gap:12px;padding:20px 3px 0}.plan-bar-symbol{font-size:20px;color:#6aa187;width:33px;height:33px;display:grid;place-items:center;background:#eef7f1;border-radius:11px;flex:none}.plan-bar-summary p{font-size:13px;line-height:1.65;color:#9c89aa;margin:0}.plan-bar-summary strong{color:#6b507f;font-weight:600}.plan-bar-unlock{font-size:11px;color:#ac99b7;line-height:1.4;margin:18px 0 0}@keyframes session-grow{from{opacity:0;transform:scaleY(.25)}to{opacity:1;transform:scaleY(1)}}
@media(max-height:740px){.plan-bar-heading h1{font-size:29px;margin-bottom:12px}.plan-bar-heading>p{font-size:13px;margin-bottom:21px}.session-chart{padding:19px}.session-chart-header{margin-bottom:18px}.session-chart-plot{height:180px}.plan-bar-summary{padding-top:17px}.plan-bar-summary p{font-size:12px}.plan-bar-unlock{margin-top:13px;font-size:10px}.plan-bar-page{padding-bottom:86px}}
@media(max-height:620px){.plan-bar-heading h1{font-size:25px;margin-bottom:10px}.plan-bar-heading>p{font-size:11px;margin-bottom:16px}.session-chart{padding:15px;border-radius:17px}.session-chart-header{margin-bottom:12px}.session-chart-header h2{font-size:14px}.session-chart-header>span{font-size:9px}.session-chart-plot{height:132px}.session-bars{gap:13px}.session-bar{max-width:44px;border-radius:9px 9px 2px 2px;padding-top:8px;min-height:30px}.session-bar strong{font-size:17px}.session-bar-column>span{font-size:9px;margin-top:9px}.session-chart-caption{font-size:8px;margin-top:12px}.plan-bar-summary{padding-top:14px;gap:9px}.plan-bar-summary p{font-size:11px}.plan-bar-symbol{width:27px;height:27px;font-size:16px;border-radius:9px}.plan-bar-unlock{font-size:9px;margin-top:10px}.plan-bar-page{padding-bottom:78px}}
@media(max-height:480px) and (min-width:600px){.plan-bar-page{display:grid;grid-template-columns:1fr 1.25fr;grid-template-rows:auto auto 1fr;gap:0 28px;padding-bottom:20px;align-items:start}.plan-bar-heading{grid-column:1;grid-row:1}.plan-bar-heading h1{font-size:28px}.plan-bar-heading>p{font-size:12px;margin-bottom:13px}.session-chart{grid-column:2;grid-row:1/4;align-self:stretch;padding:17px}.session-chart-plot{height:185px}.plan-bar-summary{grid-column:1;grid-row:2;padding-top:0}.plan-bar-summary p{font-size:11px}.plan-bar-unlock{display:none}.plan-bar-cta{align-items:flex-start}}
/* One shared primary-action style throughout the funnel. */
#app .primary{border-radius:28px;background:#5833d6;color:#fff;box-shadow:0 5px 0 #4021ab;border:0;font-weight:650;transition:background .15s,box-shadow .15s,transform .15s}#app .primary:hover{background:#633de0;box-shadow:0 5px 0 #4021ab}#app .primary:active{transform:translateY(3px);box-shadow:0 2px 0 #4021ab}#app .primary:focus-visible{outline:3px solid #bca7ef;outline-offset:4px}#app .primary:disabled{opacity:.55;box-shadow:none}

.session-bar-column{padding-top:0}.session-bar{height:calc((100% - 27px) * var(--bar-ratio));max-height:none;min-height:0;flex:none;box-sizing:border-box}.session-bar-column>span{margin-top:12px;height:15px;flex:none}

/* Shared type, surfaces and interaction states across the funnel. */
:root{--funnel-title:#291d45;--funnel-copy:#82728e;--funnel-accent:#6943d3;--funnel-border:#e3d8ef;--funnel-radius:16px}
#app main h1{font-size:30px;line-height:1.2;letter-spacing:-.75px;font-weight:600;color:var(--funnel-title)}#app main h1 em{font-weight:inherit;color:var(--funnel-accent)}#app.dark-offer main h1{color:white}#app.dark-offer main h1 em{color:#d8c3ff}#app main .subtitle{color:var(--funnel-copy);line-height:1.5}#app .answer-card,#app .age-answer,#app .subscription{border-radius:var(--funnel-radius);transition:background .16s,border-color .16s,box-shadow .16s,transform .16s}#app .answer-card:not(.selected),#app .age-answer:not(.selected),#app .subscription:not(.selected){border-color:var(--funnel-border)}#app .answer-card.selected,#app .age-answer.selected,#app .subscription.selected{border-color:#9774d4;background:#f5effe;box-shadow:0 3px 0 #e7dcf7;color:#613cb1}#app .answer-card:hover,#app .age-answer:hover,#app .subscription:hover{border-color:#ac90d5}#app .answer-card:focus-visible,#app .age-answer:focus-visible,#app .subscription:focus-visible{outline:3px solid #d6c3f2;outline-offset:3px}#app .profile-form input,#app .checkout-form input{border-radius:var(--funnel-radius);border-color:var(--funnel-border);background:#fefcff}#app .order-summary,#app .subscription,#app .game-stage,#app .preparation-loaders{border-radius:var(--funnel-radius)}#app .question-page .answer-options{gap:12px}#app .popup-answer{border-radius:20px}#app .back{color:#6c5482}#app .plan-kicker{display:none}
@media(max-height:740px){#app main h1{font-size:27px;line-height:1.2;letter-spacing:-.6px}}
@media(max-height:620px){#app main h1{font-size:24px;line-height:1.18;letter-spacing:-.45px}#app .question-page .answer-options{gap:9px}#app .answer-card,#app .age-answer,#app .subscription{border-radius:13px}#app .primary{border-radius:26px}}
@media(max-height:480px) and (min-width:600px){#app main h1{font-size:26px;line-height:1.18}#app .question-page .answer-options{gap:9px}}

/* Gentle, consistent movement without replaying every nested decoration. */
.page-enter{animation:funnel-arrive .24s cubic-bezier(.2,.65,.2,1) both}.testimonial-floating-cta{animation:funnel-action-arrive .24s ease-out both}.page-enter .answer-card,.page-enter .age-answer,.page-enter .game-stage,.page-enter .featured-game,.page-enter .order-summary,.page-enter .illustrated-week,.page-enter .mindscore-badges img,.page-enter .explainer-image img,.page-enter .photo-break-art img,.page-enter .easy-hero-image img{animation:none}.asset-image{opacity:0;transition:opacity .18s ease-out}.asset-image.asset-ready{opacity:1}.journey span{transition:width .3s ease-out}@keyframes funnel-arrive{from{opacity:0;transform:translateY(var(--page-offset,9px))}to{opacity:1;transform:translateY(0)}}@keyframes funnel-action-arrive{from{opacity:0}to{opacity:1}}
.preparation-human{width:160px;height:114px;margin:0 auto 19px;overflow:hidden;border-radius:22px;flex:none}.preparation-human img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 42%}.preparation-flow .preparation-heading h1{margin-top:0}.session-chart-plot{padding-top:31px;height:249px}.session-bars{top:31px}.session-chart-grid{top:31px}.session-bar{position:relative;overflow:visible}.session-bar-topic{position:absolute;bottom:calc(100% + 9px);left:50%;transform:translateX(-50%);width:78px;text-align:center;font-size:10px;line-height:1.25;font-weight:550;color:#8a739d}.session-chart-header{margin-bottom:16px}.welcome-offer-page{align-items:stretch;text-align:center;padding-bottom:25px}.welcome-offer-heading h1{margin:0 0 13px}.welcome-offer-heading>p{font-size:14px;line-height:1.5;color:#8b789a;margin:0}.welcome-discount-card{width:100%;border:1px solid #e3d4f3;background:linear-gradient(145deg,#fcfaff,#f1e8fc);border-radius:24px;position:relative;padding:20px 26px;margin:27px 0 0;flex:1;min-height:0;max-height:365px;display:flex;flex-direction:column;align-items:center;justify-content:center}.offer-gift{height:77px;margin-bottom:10px}.offer-gift svg{height:100%;width:auto}.welcome-discount-label{font-size:12px;color:#9b7ab4;margin-bottom:8px}.welcome-discount-card h2{font-size:70px;line-height:1;color:#7950bd;font-weight:650;letter-spacing:-3px;margin:0 0 8px;display:flex;align-items:baseline;gap:9px}.welcome-discount-card h2>span{font-size:30px;font-weight:550;letter-spacing:-.7px}.welcome-discount-plan{font-size:15px;color:#8f70a7;margin:0}.welcome-offer-divider{width:100%;border-top:1px dashed #d8c4e8;margin:23px 0 16px}.welcome-offer-code{display:flex;width:100%;justify-content:space-between;align-items:center;color:#9c83af;font-size:12px}.welcome-offer-code strong{font-size:15px;letter-spacing:1.5px;color:#77528f}.welcome-offer-applied{font-size:10px;line-height:1.45;color:#aa92ba;margin:10px 0 0}.welcome-offer-includes{display:grid;gap:10px;text-align:left;padding:20px 8px 0;flex:none}.welcome-offer-includes p{margin:0;color:#846b98;font-size:13px}.welcome-offer-includes p span{color:#9f7abe;margin-right:10px}.welcome-offer-page .bottom-action{padding-top:23px}.welcome-offer-page .micro{font-size:10px;color:#a18aad}
@media(max-height:740px){.preparation-human{width:135px;height:91px;margin-bottom:15px}.session-chart-plot{height:205px;padding-top:27px}.session-bars,.session-chart-grid{top:27px}.session-bar-topic{font-size:9px;width:67px;bottom:calc(100% + 7px)}.welcome-discount-card{margin-top:22px;padding:18px 22px;max-height:310px}.offer-gift{height:57px;margin-bottom:8px}.welcome-discount-card h2{font-size:61px}.welcome-discount-card h2>span{font-size:26px}.welcome-offer-divider{margin:18px 0 13px}.welcome-offer-includes{padding-top:17px;gap:9px}}
@media(max-height:620px){.preparation-human{width:111px;height:74px;margin-bottom:12px}.preparation-flow .preparation-loaders{margin-top:18px;gap:14px;padding:15px}.session-chart-plot{height:159px;padding-top:27px}.session-bar-topic{font-size:8px;width:59px;line-height:1.15}.session-chart-header{margin-bottom:12px}.welcome-offer-heading>p{font-size:11px}.welcome-discount-card{margin-top:18px;padding:13px 18px;border-radius:18px;max-height:263px}.offer-gift{height:44px;margin-bottom:5px}.welcome-discount-label{font-size:10px;margin-bottom:5px}.welcome-discount-card h2{font-size:51px;margin-bottom:5px}.welcome-discount-card h2>span{font-size:23px}.welcome-discount-plan{font-size:12px}.welcome-offer-divider{margin:13px 0 10px}.welcome-offer-code{font-size:10px}.welcome-offer-code strong{font-size:12px}.welcome-offer-applied{font-size:8px;margin-top:7px}.welcome-offer-includes{padding-top:13px;gap:7px}.welcome-offer-includes p{font-size:11px}.welcome-offer-page .bottom-action{padding-top:17px}.welcome-offer-page .micro{font-size:8px;margin-top:12px}.welcome-offer-page{padding-bottom:20px}}
@media(max-height:480px) and (min-width:600px){.preparation-human{width:130px;height:84px;margin-bottom:12px}.session-chart-plot{height:213px}.welcome-offer-page{display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:auto 1fr auto;gap:0 27px;text-align:left;padding-bottom:17px}.welcome-offer-heading{grid-column:1;grid-row:1}.welcome-discount-card{grid-column:2;grid-row:1/4;align-self:stretch;height:100%;max-height:none;margin:0;text-align:center}.welcome-offer-includes{grid-column:1;grid-row:2;align-self:start;padding:14px 0 0}.welcome-offer-page .bottom-action{grid-column:1;grid-row:3;padding-top:10px;margin:0}.welcome-offer-heading>p{font-size:12px}.welcome-offer-page .micro{text-align:center}.offer-gift{height:44px}.welcome-discount-card h2{font-size:52px}}
@media(prefers-reduced-motion:reduce){.page-enter,.testimonial-floating-cta{animation:none!important}.page-enter{transform:none}.asset-image{opacity:1;transition:none}.journey span{transition:none}}
/* Reference-inspired paywall: human imagery, applied offer and readable plan choices. */
.reference-paywall{display:flex;align-items:stretch;text-align:center;gap:0;padding-bottom:20px}.membership-intro{flex:none}.membership-photo{height:145px;position:relative;overflow:hidden;border-radius:20px;margin-bottom:17px}.membership-photo img{width:100%;height:100%;object-fit:cover;object-position:center 45%;display:block}.membership-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,rgba(31,24,46,.6))}.membership-photo>span{position:absolute;z-index:1;bottom:12px;left:17px;font-size:12px;color:white;font-weight:550}.reference-paywall h1{margin:0 0 9px}.membership-intro>p{font-size:13px;color:#82728e;margin:0 0 19px}.membership-selection{width:100%;flex:none}.membership-coupon{background:#f0f4e7;border:1px solid #e6ebd9;border-radius:16px;padding:13px 17px;color:#526731;text-align:left}.membership-coupon>div{display:flex;align-items:center;gap:9px}.membership-coupon strong{font-size:13px;font-weight:600}.membership-coupon>div+div{margin-top:10px;padding-top:10px;border-top:1px dashed #cfd8b9;justify-content:space-between}.membership-coupon>div+div>span{font-size:11px;font-weight:700;letter-spacing:.8px}.membership-coupon small{font-size:9px;color:#718352}.reference-paywall .plan-options{padding:15px 0 0;display:grid;gap:10px}.reference-paywall .subscription,.reference-paywall .subscription.selected{padding:17px 13px;min-height:76px;border-width:1.5px;text-align:left}.reference-paywall .subscription.selected{border-color:#7650dd!important;background:#f6f2ff!important;box-shadow:0 0 0 1px #7650dd!important}.reference-paywall .subscription-name strong{font-size:15px;display:flex;align-items:center;gap:8px}.plan-recommendation{font-size:8px;color:#7650b7;font-weight:650}.reference-paywall .subscription-name small{font-size:10px;margin-top:7px;line-height:1.3}.reference-paywall .subscription-price{font-size:24px;letter-spacing:-.7px}.reference-paywall .subscription-price small{font-size:9px;letter-spacing:0;margin-top:5px}.reference-paywall .radio-dot{width:19px;height:19px;flex:none;margin-right:11px}.membership-billing{font-size:10px;line-height:1.5;color:#8b7b98;margin:13px 0 0}.reference-paywall .bottom-action{padding-top:20px;margin-top:auto}.reference-paywall .micro{font-size:10px;margin-top:15px}
@media(max-height:740px){.membership-photo{height:104px;margin-bottom:12px}.membership-intro>p{margin-bottom:13px;font-size:12px}.membership-coupon{padding:10px 14px}.membership-coupon>div+div{margin-top:8px;padding-top:8px}.reference-paywall .plan-options{padding-top:12px;gap:9px}.reference-paywall .subscription,.reference-paywall .subscription.selected{min-height:67px;padding:12px}.reference-paywall .bottom-action{padding-top:15px}.reference-paywall .membership-billing{margin-top:10px}}
@media(max-height:620px){.membership-photo{height:68px;margin-bottom:9px;border-radius:13px}.membership-photo>span{font-size:9px;bottom:9px;left:12px}#app .reference-paywall h1{font-size:22px;line-height:1.15;margin-bottom:7px}.membership-intro>p{margin-bottom:10px;font-size:10px}.membership-coupon{padding:8px 11px;border-radius:12px}.membership-coupon strong{font-size:11px}.membership-coupon>div+div{padding-top:6px;margin-top:6px}.membership-coupon small{font-size:8px}.membership-coupon>div+div>span{font-size:9px}.reference-paywall .plan-options{padding-top:10px;gap:8px}.reference-paywall .subscription,.reference-paywall .subscription.selected{padding:10px;min-height:57px}.reference-paywall .subscription-name strong{font-size:12px;gap:5px}.plan-recommendation{font-size:7px}.reference-paywall .subscription-name small{font-size:8px;margin-top:4px}.reference-paywall .subscription-price{font-size:19px}.reference-paywall .subscription-price small{font-size:8px;margin-top:3px}.reference-paywall .radio-dot{width:16px;height:16px;margin-right:8px}.membership-billing{font-size:9px}.reference-paywall .bottom-action{padding-top:11px}.reference-paywall .micro{font-size:8px;margin-top:12px}.reference-paywall{padding-bottom:14px}}
@media(max-height:480px) and (min-width:600px){.reference-paywall{display:grid;grid-template-columns:1fr 1.12fr;grid-template-rows:1fr auto;column-gap:28px;align-items:start}.membership-intro{grid-column:1;grid-row:1}.membership-photo{height:90px}.membership-selection{grid-column:2;grid-row:1/3}.reference-paywall .bottom-action{grid-column:1;grid-row:2;align-self:end}.reference-paywall .plan-options{gap:8px}.reference-paywall .subscription,.reference-paywall .subscription.selected{min-height:53px}.membership-intro>p{font-size:12px}}
@media(min-height:741px){.reference-paywall .membership-photo{height:116px;margin-bottom:14px}.reference-paywall .subscription,.reference-paywall .subscription.selected{min-height:68px;padding:13px}.reference-paywall .plan-options{gap:9px}.reference-paywall .bottom-action{padding-top:15px}}
.reference-paywall .micro{display:block!important}.reference-paywall .membership-photo{height:90px}
@media(max-height:740px){.reference-paywall .membership-photo{height:78px}}
@media(max-height:620px){.reference-paywall .membership-photo{height:48px}.reference-paywall .membership-intro>p{margin-bottom:6px}.reference-paywall .plan-options{gap:6px}.reference-paywall .micro{margin-top:8px}.reference-paywall .bottom-action{padding-top:9px}}
@media(max-height:480px) and (min-width:600px){.reference-paywall .membership-photo{height:104px}.reference-paywall .membership-photo img{object-position:center 39%}}
/* Illustrated product badges with readable live captions. */
.mindscore-badges.illustrated-badges{gap:10px;padding:0;margin-top:19px;align-items:start}.illustrated-badges figure{flex:1;min-width:0;margin:0;text-align:center}.mindscore-badges.illustrated-badges img{width:100%;height:90px;object-fit:contain;mix-blend-mode:multiply}.illustrated-badges figcaption{display:flex;flex-direction:column;gap:4px;margin-top:2px}.illustrated-badges strong{font-size:12px;line-height:1.25;color:#473157;font-weight:650}.illustrated-badges figcaption span{font-size:10px;color:#8b7897;line-height:1.3}.feed-author strong{display:inline-flex;align-items:center;gap:4px}.verified-mark{width:13px;height:13px;flex:none;vertical-align:middle}.reference-review-feed .feed-author{gap:4px}
@media(max-height:620px){.mindscore-badges.illustrated-badges{margin-top:14px;gap:9px}.mindscore-badges.illustrated-badges img{height:68px}.illustrated-badges strong{font-size:10px}.illustrated-badges figcaption span{font-size:8px}.illustrated-badges figcaption{gap:3px}.age-welcome .age-footer{margin-top:12px}}
@media(max-height:480px) and (min-width:600px){.mindscore-badges.illustrated-badges{margin-top:9px}.mindscore-badges.illustrated-badges img{height:62px}}
/* Every route fades in; choice lists reveal once in a brief sequence. */
#app .page-enter{animation:funnel-arrive .36s cubic-bezier(.2,.65,.2,1) both}#app .page-enter .option-reveal{animation:option-fade .18s ease-out var(--reveal-delay,0ms) backwards}#app .page-enter .tile-reveal{animation:tile-fade .14s ease-out var(--reveal-delay,0ms) backwards}#app .page-enter .explainer-image,#app .page-enter .easy-hero-image,#app .page-enter .photo-break-art,#app .page-enter .preparation-human{animation:illustration-reveal .48s ease-out both}.popup-choices .option-reveal{animation:option-fade .18s ease-out var(--reveal-delay,0ms) backwards}@keyframes option-fade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes tile-fade{from{opacity:.3}to{opacity:1}}@keyframes illustration-reveal{from{opacity:0;transform:translateY(7px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}
@media(prefers-reduced-motion:reduce){#app .page-enter,#app .page-enter .option-reveal,#app .page-enter .tile-reveal,#app .page-enter .explainer-image,#app .page-enter .easy-hero-image,#app .page-enter .photo-break-art,#app .page-enter .preparation-human,.popup-choices .option-reveal{animation:none!important}}
/* Give floating actions comfortable space from the screen edge. */
#app .testimonial-floating-cta{bottom:clamp(16px,3.5vh,32px)}
@media(max-height:620px){#app .testimonial-floating-cta{bottom:12px}}
@media(max-height:480px) and (min-width:600px){#app .testimonial-floating-cta{bottom:8px}}
/* Two-pick welcome gift reveal. */
.gift-offer-page{align-items:stretch;text-align:center;padding-bottom:30px}.gift-heading h1{margin:0 0 15px}.gift-heading>p{font-size:14px;line-height:1.6;color:#8b789b;margin:0}.gift-round-label{font-size:12px;color:#806792;margin:31px 0 17px}.gift-boxes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;flex:none}.gift-box{--gift-body:#e4d4f5;--gift-lid:#ceb2ed;--gift-ribbon:#9060c3;border:1px solid #e8def2;background:linear-gradient(#fefcff,#f8f3fc);border-radius:20px;min-width:0;height:156px;display:flex;flex-direction:column;justify-content:center;align-items:center;cursor:pointer;color:#7d55a1;padding:10px;transition:transform .15s,border-color .15s,background .15s;box-shadow:0 4px 0 #eee5f5}.gift-tone-1{--gift-body:#f4dcb2;--gift-lid:#edc98d;--gift-ribbon:#c49750}.gift-tone-2{--gift-body:#c7e5d9;--gift-lid:#9bd0ba;--gift-ribbon:#5b9c80}.gift-box svg{width:100%;max-width:105px;height:103px;overflow:visible}.gift-box-label{font-size:12px;font-weight:600;margin-top:5px}.gift-box:not(:disabled):hover{transform:translateY(-4px);border-color:#bc9dd9}.gift-box:not(:disabled):hover .gift-lid{transform:translateY(-3px)}.gift-lid{transition:transform .16s}.gift-box:focus-visible{outline:3px solid #c9b5ee;outline-offset:4px}.gift-box:disabled{cursor:default;opacity:1}.gift-box.gift-opened{background:#f1e7fd;border-color:#bea2e3;box-shadow:0 4px 0 #dfcff1}.gift-boxes:has(.gift-opened:nth-child(2)) .gift-tone-1.gift-opened{background:#fff4df;border-color:#e8cc9d}.gift-tone-2.gift-opened{background:#e9f6ef;border-color:#a6d1bd}.gift-revealed-number{font-size:42px;font-weight:700;letter-spacing:-2px;line-height:1.15}.gift-revealed-number small{font-size:21px;letter-spacing:0}.gift-revealed-label{font-size:10px;letter-spacing:2px;margin-top:7px;font-weight:650}.gift-result{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:160px;max-height:240px;padding:20px;margin-top:24px;border:1px dashed #dcccE9;border-radius:22px;background:#fdfbff}.gift-result-top{font-size:12px;color:#9a7aaa}.gift-result h2{font-size:65px;line-height:1;letter-spacing:-2px;color:#754cba;margin:12px 0 8px;font-weight:650}.gift-result h2 span{font-size:27px;letter-spacing:-.7px;margin-left:5px}.gift-result h2.gift-empty-title{font-size:23px;letter-spacing:-.4px;margin:18px 0 10px}.gift-result p{font-size:14px;color:#887194;margin:0}.gift-result small{font-size:11px;color:#a18bac;margin-top:17px;line-height:1.5}.gift-included{font-size:11px;color:#9b86ab;margin:19px 0 0}.gift-offer-page .bottom-action{padding-top:23px}.gift-offer-page .micro{display:block!important;font-size:9px}.gift-boxes>button{animation:option-fade .18s ease-out backwards}.gift-boxes>button:nth-child(2){animation-delay:22ms}.gift-boxes>button:nth-child(3){animation-delay:44ms}
@media(max-height:740px){.gift-round-label{margin:23px 0 14px}.gift-box{height:128px;border-radius:17px}.gift-box svg{height:83px}.gift-result{margin-top:20px;min-height:150px;padding:17px}.gift-result h2{font-size:55px}.gift-heading>p{font-size:13px}.gift-included{margin-top:16px}}
@media(max-height:620px){.gift-offer-page{padding-bottom:19px}.gift-heading h1{margin-bottom:11px}.gift-heading>p{font-size:11px;line-height:1.5}.gift-round-label{font-size:10px;margin:18px 0 12px}.gift-boxes{gap:9px}.gift-box{height:108px;padding:7px;border-radius:15px}.gift-box svg{height:71px}.gift-box-label{font-size:10px;margin-top:3px}.gift-revealed-number{font-size:33px}.gift-revealed-number small{font-size:17px}.gift-result{min-height:135px;padding:14px;margin-top:18px;border-radius:17px}.gift-result h2{font-size:45px;margin:8px 0 6px}.gift-result h2 span{font-size:22px}.gift-result-top{font-size:10px}.gift-result h2.gift-empty-title{font-size:19px;margin:13px 0 9px}.gift-result p{font-size:12px}.gift-result small{font-size:9px;margin-top:11px}.gift-included{font-size:9px;margin-top:12px}.gift-offer-page .bottom-action{padding-top:15px}.gift-offer-page .micro{font-size:8px;margin-top:11px}}
@media(max-height:480px) and (min-width:600px){.gift-offer-page{display:grid;grid-template-columns:1fr 1.1fr;grid-template-rows:auto auto 1fr auto;gap:0 28px;text-align:left;padding-bottom:15px}.gift-heading{grid-column:1;grid-row:1}.gift-round-label{grid-column:2;grid-row:1;text-align:center;margin:0 0 10px;align-self:end}.gift-boxes{grid-column:2;grid-row:2}.gift-box{height:93px}.gift-box svg{height:59px}.gift-result{grid-column:2;grid-row:3/5;margin-top:15px;min-height:0;align-self:stretch;padding:12px}.gift-result h2{font-size:37px;margin:7px 0}.gift-result h2.gift-empty-title{font-size:18px}.gift-result small{margin-top:8px}.gift-included{grid-column:1;grid-row:2;font-size:10px}.gift-offer-page .bottom-action{grid-column:1;grid-row:4;text-align:center;align-self:end;padding-top:12px}.gift-heading>p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gift-boxes>button{animation:none}.gift-box,.gift-lid{transition:none}}
/* Golden-orange gifts and a white offer card inspired by the supplied reference. */
.gift-box,.gift-tone-1,.gift-tone-2{background:#fffdf9;border-color:#f0dfc4;box-shadow:0 4px 0 #f4e9d8}.golden-gift-image{display:block;width:100%;height:103px;object-fit:contain;mix-blend-mode:multiply}.gift-box.gift-opened,.gift-boxes:has(.gift-opened:nth-child(2)) .gift-tone-1.gift-opened,.gift-tone-2.gift-opened{background:#fff5e4;border-color:#e8c487;box-shadow:0 4px 0 #f0d8b0;color:#bd8129}.gift-box-label{color:#9c783d}.gift-result{position:relative;background:#fff;border:1px solid #ede5f5;box-shadow:0 7px 22px #5130780c;margin-top:34px}.gift-card-art{width:72px;height:72px;object-fit:contain;position:absolute;top:-29px;left:50%;transform:translateX(-50%);border-radius:50%;background:#fff;padding:3px}.gift-result:has(.gift-card-art){padding-top:49px}.gift-result:has(.gift-card-art) h2{margin-top:9px}.gift-result:has(.gift-card-art) small{margin-top:10px}.gift-result-top{font-weight:600;color:#76628a}
@media(max-height:740px){.golden-gift-image{height:83px}.gift-card-art{width:57px;height:57px;top:-24px}.gift-result:has(.gift-card-art){padding-top:37px}}
@media(max-height:620px){.golden-gift-image{height:71px}.gift-result{margin-top:27px}.gift-card-art{width:47px;height:47px;top:-22px}.gift-result:has(.gift-card-art){padding-top:29px}.gift-result:has(.gift-card-art) h2{font-size:37px;margin:6px 0}.gift-result:has(.gift-card-art) small{margin-top:8px}}
@media(max-height:480px) and (min-width:600px){.golden-gift-image{height:59px}.gift-card-art{width:39px;height:39px;top:-19px}.gift-result:has(.gift-card-art){padding-top:23px}.gift-result:has(.gift-card-art) h2{font-size:31px}.gift-result{margin-top:24px}}
@media(max-height:620px){.gift-offer-page .gift-included{display:none}.gift-box{height:96px}.golden-gift-image{height:60px}.gift-offer-page .micro{margin-top:9px}}
@media(max-height:480px) and (min-width:600px){.gift-result:has(.gift-card-art) small{display:none}.gift-result:has(.gift-card-art){padding:23px 12px 9px;justify-content:center}.gift-result:has(.gift-card-art) .gift-result-top{font-size:10px;line-height:1}.gift-result:has(.gift-card-art) h2{font-size:29px;line-height:1;margin:3px 0}.gift-result:has(.gift-card-art) p{font-size:10px;line-height:1.2}}
/* Brief answer feedback before every game advances. */
#app .game-stage .cell.chosen.correct{background:#2b925a!important;border-color:#227a4a!important;color:#fff!important;box-shadow:0 3px 0 #1d6b40!important;opacity:1;position:relative}
#app .game-stage .cell.chosen.wrong{background:#d65361!important;border-color:#bb3e4b!important;color:#fff!important;box-shadow:0 3px 0 #a93440!important;opacity:1;position:relative}
#app .cell.chosen.correct:after,#app .cell.chosen.wrong:after{position:absolute;right:3px;top:2px;font-family:system-ui,sans-serif;font-size:12px;font-weight:700;line-height:1;pointer-events:none}#app .cell.chosen.correct:after{content:'✓'}#app .cell.chosen.wrong:after{content:'×'}
/* A quieter offer layout: one instruction and one discount card. */
.gift-offer-page .gift-heading{margin:10px 0 32px}.gift-offer-page .gift-heading h1{margin-bottom:13px}.gift-offer-page .gift-heading>p{font-size:14px}.gift-offer-page .gift-boxes{gap:12px}.gift-offer-page .gift-box{height:153px}.gift-offer-page .gift-result{flex:none;height:184px;min-height:0;max-height:none;margin-top:38px;justify-content:center;padding-top:31px}.gift-offer-page .gift-result h2{margin:8px 0 10px;font-size:64px}.gift-offer-page .gift-result h2 span{font-size:29px}.gift-offer-page .gift-result p{font-size:14px}.gift-offer-page .gift-result-empty{visibility:hidden;flex:1;height:auto;min-height:0;margin-top:0}.gift-offer-page .bottom-action{padding-top:25px}.gift-offer-page .micro{font-size:9px}
@media(max-height:740px){.gift-offer-page .gift-heading{margin:4px 0 25px}.gift-offer-page .gift-box{height:130px}.gift-offer-page .gift-result{height:160px;margin-top:33px;padding-top:28px}.gift-offer-page .gift-result h2{font-size:54px}}
@media(max-height:620px){.gift-offer-page .gift-heading{margin:0 0 22px}.gift-offer-page .gift-heading>p{font-size:12px}.gift-offer-page .gift-box{height:114px}.gift-offer-page .gift-boxes{gap:9px}.gift-offer-page .gift-result{height:135px;margin-top:30px;padding-top:25px}.gift-offer-page .gift-result h2{font-size:45px;margin:5px 0 8px}.gift-offer-page .gift-result h2 span{font-size:25px}.gift-offer-page .gift-result p{font-size:12px}.gift-offer-page .bottom-action{padding-top:20px}.gift-offer-page .micro{font-size:8px}}
@media(max-height:480px) and (min-width:600px){.gift-offer-page{grid-template-rows:1fr auto;gap:0 28px}.gift-offer-page .gift-heading{grid-column:1;grid-row:1;margin:12px 0 0}.gift-offer-page .gift-boxes{grid-column:2;grid-row:1;align-self:start}.gift-offer-page .gift-box{height:108px}.gift-offer-page .gift-result{grid-column:2;grid-row:2;height:130px;margin:25px 0 0;padding:20px 12px 9px;align-self:end}.gift-offer-page .gift-result-empty{visibility:hidden;height:130px}.gift-offer-page .bottom-action{grid-column:1;grid-row:2;padding-top:15px}.gift-offer-page .gift-result h2{font-size:43px;line-height:1;margin:4px 0 8px}.gift-offer-page .gift-result p{font-size:12px}}
/* Compact 2D game-library preview immediately before subscription options. */
.game-library-page{align-items:stretch;text-align:center;padding-bottom:22px}.game-library-page h1{margin:0 0 15px!important}#app .game-library-page h1{font-size:27px}.library-section-title{text-align:left;font-size:12px;font-weight:650;color:#4b3765;margin:0 0 10px}.library-grid{width:100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(5,minmax(0,1fr));gap:9px;flex:1;min-height:0;max-height:550px}.library-game{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;min-height:0;border:1px solid #ede6f3;border-radius:13px;background:#fff;padding:6px 3px;box-shadow:0 2px 6px #54307805}.library-game svg{height:clamp(26px,5.1vh,50px);max-height:52%;width:auto;flex:0 1 auto}.library-game h3{font-size:10px;line-height:1.3;font-weight:650;color:#3d2958;margin:4px 0 3px;white-space:nowrap}.library-game p{font-size:8px;line-height:1.2;color:#8b799b;margin:0;white-space:nowrap}.library-more{padding:7px;background:#f5f0fe;border-radius:9px;font-size:10px;color:#806499;margin:10px 0 0;flex:none}.library-more span{color:#8150df;font-size:13px;margin-right:4px}.game-library-page .bottom-action{padding-top:12px}
@media(max-height:740px){#app .game-library-page h1{font-size:24px}.game-library-page h1{margin-bottom:12px!important}.library-grid{gap:7px}.library-game h3{font-size:9px;margin:3px 0}.library-game p{font-size:7px}.library-game svg{height:34px}.library-section-title{font-size:11px;margin-bottom:8px}.library-more{font-size:9px;padding:5px}}
@media(max-height:620px){#app .game-library-page h1{font-size:21px}.game-library-page h1{margin-bottom:9px!important}.game-library-page{padding-bottom:15px}.library-grid{gap:6px}.library-game{border-radius:10px;padding:4px 2px}.library-game svg{height:27px}.library-game h3{font-size:8px;margin:2px 0}.library-game p{font-size:6.5px}.library-section-title{font-size:10px;margin-bottom:7px}.library-more{margin-top:7px;padding:4px}.game-library-page .bottom-action{padding-top:9px}.game-library-page .primary{min-height:43px;font-size:15px;padding:10px}}
@media(max-height:480px) and (min-width:600px){.game-library-page{display:grid;grid-template-columns:1fr 2.1fr;grid-template-rows:auto 1fr auto;column-gap:23px;padding-bottom:16px}.game-library-page h1{grid-column:1;grid-row:1;margin-top:20px!important;text-align:left}.library-section-title{display:none}.library-grid{grid-column:2;grid-row:1/4;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:repeat(3,minmax(0,1fr));height:100%;max-height:none}.library-more{grid-column:1;grid-row:2;align-self:start;margin-top:12px;font-size:8px}.game-library-page .bottom-action{grid-column:1;grid-row:3}.library-game h3{font-size:7.5px}.library-game p{font-size:6px}.library-game svg{height:33px}}
/* Original single-round challenges. */
.challenge-page{align-items:stretch;padding-bottom:19px}.challenge-heading{flex:none}.challenge-heading h1{margin:0 0 12px}.challenge-heading>p{font-size:13px;line-height:1.5;color:#877294;margin:0}.challenge-panel{flex:1;min-height:0;margin-top:22px;border:1px solid #e8dfef;border-radius:22px;background:#fdfbff;padding:19px;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:17px}.challenge-feedback{font-size:12px;line-height:1.35;color:#887193;min-height:32px;margin:13px 0 0;flex:none}.challenge-skip{margin:0 auto;padding:5px;min-height:30px}.challenge-choices{display:grid;grid-template-columns:1fr 1fr;gap:12px;flex:none}.challenge-choices button,.code-keypad button,.maze-pad button,.line-order-choices button,.arrow-trail button{background:white;border:1px solid #dfd3eb;border-radius:13px;color:#6c4d98;font-size:22px;min-height:58px;font-weight:600;transition:background .13s,border-color .13s}.challenge-choices button:hover{background:#f4edfd;border-color:#a080ca}.challenge-panel button:focus-visible,.one-line-art [role=button]:focus-visible{outline:3px solid #bda3de;outline-offset:3px}.bird-scene{width:100%;flex:1;min-height:0;max-height:340px;object-fit:contain}.math-expression{font-size:29px;font-weight:650;padding:35px 0;text-align:center;color:#3d2a52}.math-expression em{font-style:normal;color:#b48844}.answer-feedback.answer-right{background:#2b925a!important;color:white!important;border-color:#227a4a!important}.answer-feedback.answer-wrong{background:#d65361!important;color:white!important;border-color:#bb3e4b!important}.challenge-panel.answer-feedback{outline:3px solid currentColor}.code-clue{display:flex;gap:25px;align-items:center;justify-content:center;font-size:25px}.code-clue span{letter-spacing:5px;color:#aa7c3b;font-weight:650}.code-clue strong{color:#744aaf;letter-spacing:4px}.code-clue b{font-size:19px;color:#b5a8c0}.code-input-label{font-size:11px;color:#93829f;text-align:center;margin-bottom:-10px}.code-answer{width:100%;max-width:205px;align-self:center;border:1px solid #c9b3e3;border-radius:12px;letter-spacing:15px;text-indent:15px;text-align:center;font:600 25px system-ui;min-height:52px;color:#684890;background:#fff}.code-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.code-keypad button{min-height:37px;font-size:15px;border-radius:9px}.code-keypad button[data-digit=Clear]{font-size:11px}.challenge-submit{min-height:47px!important;padding:12px!important;font-size:15px!important;flex:none}.line-order-art{width:100%;flex:1;min-height:0;max-height:320px}.line-order-choices{display:flex;gap:9px}.line-order-choices button{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px;font-size:19px;min-height:64px;color:var(--line-color)}.line-order-choices small{font-size:9px;color:#9683a2;margin-top:5px}.line-order-choices .ordered{background:#f4eef9}.challenge-inline-actions{display:flex;align-items:center;gap:14px}.challenge-inline-actions .primary{flex:1}.challenge-inline-actions .text-button{flex:none;font-size:11px}.garden-maze{width:100%;max-width:310px;aspect-ratio:1;display:grid;grid-template-columns:repeat(7,1fr);align-self:center;background:#fbfaf6;border:2px solid #cfdbc9;border-radius:12px;overflow:hidden;min-height:0;flex:0 1 auto}.maze-cell{display:grid;place-items:center;color:#cc9050;font-size:25px;min-height:0;position:relative}.maze-cell.wall{background:#81a58e}.maze-cell.player:after{content:'';width:55%;height:55%;background:#8a62b4;border-radius:50%;box-shadow:0 0 0 3px white}.maze-pad{display:flex;justify-content:center;gap:10px;flex:none}.maze-pad button{min-width:43px;min-height:43px}.one-line-art{width:100%;flex:1;min-height:0;max-height:360px}.one-line-art [role=button]{cursor:pointer}.trace-progress{font-size:12px;margin:0;color:#8f7b9d}.challenge-panel .challenge-reset{padding:4px}.arrow-trail{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;aspect-ratio:1;min-height:0;max-height:330px;align-self:center;width:100%}.arrow-trail button{min-height:0;font-size:29px;aspect-ratio:1}.arrow-trail button.trail-current{background:#fae6bd;border-color:#d7b36f;color:#a77935}.arrow-trail button.trail-visited{border-color:#7fb49f}.word-orbit{flex:1;min-height:0;max-height:180px}.word-orbit svg{height:100%;width:100%}.word-slots{display:flex;justify-content:center;gap:8px;font-size:25px;font-weight:600;letter-spacing:3px;min-height:44px;border-radius:9px;align-items:center}.word-slots span{width:30px;border-bottom:2px solid #d7c6e8;padding-bottom:6px;letter-spacing:0}.word-attempts{font-size:12px;color:#92789f;margin:0}.letter-keyboard{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;flex:none}.letter-keyboard button{min-width:0;min-height:37px;font-size:13px;background:white;border:1px solid #ded2e9;border-radius:7px;color:#644987;font-weight:600}.letter-keyboard .letter-right{background:#d8eee1;color:#398454;border-color:#9bc7ad}.letter-keyboard .letter-wrong{background:#f6dce0;color:#ac5362;border-color:#e5b6bf}
@media(max-height:740px){.challenge-panel{padding:15px;gap:13px;margin-top:18px}.challenge-heading>p{font-size:12px}.challenge-choices button{min-height:50px}.math-expression{font-size:26px;padding:25px 0}.code-clue{font-size:23px}.code-answer{min-height:44px;font-size:22px}.code-keypad button{min-height:33px}.challenge-feedback{font-size:11px;min-height:28px;margin-top:11px}.letter-keyboard button{min-height:32px}.word-slots{font-size:22px;min-height:34px}}
@media(max-height:620px){.challenge-page{padding-bottom:11px}.challenge-heading h1{margin-bottom:9px}.challenge-heading>p{font-size:11px}.challenge-panel{padding:12px;gap:10px;margin-top:14px;border-radius:16px}.challenge-choices{gap:8px}.challenge-choices button{min-height:43px;font-size:19px}.challenge-feedback{font-size:10px;min-height:26px;margin-top:9px}.challenge-skip{font-size:10px;min-height:24px}.math-expression{font-size:23px;padding:23px 0}.code-clue{font-size:21px}.code-clue span{letter-spacing:4px}.code-answer{min-height:37px;font-size:20px}.code-keypad{gap:5px}.code-keypad button{min-height:28px;font-size:13px}.code-input-label{font-size:9px;margin-bottom:-4px}.challenge-submit{min-height:38px!important;padding:9px!important;font-size:13px!important}.line-order-choices button{min-height:50px;font-size:16px;padding:6px}.line-order-choices small{font-size:7px}.challenge-inline-actions{gap:8px}.challenge-inline-actions .text-button{font-size:9px}.maze-pad{gap:8px}.maze-pad button{min-height:35px;min-width:39px;font-size:21px}.garden-maze{max-width:220px}.arrow-trail{gap:7px;max-width:230px}.arrow-trail button{font-size:24px}.trace-progress{font-size:10px}.word-orbit{max-height:115px}.word-slots{font-size:19px;min-height:29px;gap:6px}.word-slots span{width:25px;padding-bottom:4px}.word-attempts{font-size:10px}.letter-keyboard{gap:5px}.letter-keyboard button{min-height:28px;font-size:11px}}
@media(max-height:480px) and (min-width:600px){.challenge-page{display:grid;grid-template-columns:1fr 1.15fr;grid-template-rows:auto 1fr auto;column-gap:28px;padding-bottom:14px}.challenge-heading{grid-column:1;grid-row:1;text-align:left;margin-top:20px}.challenge-panel{grid-column:2;grid-row:1/4;height:100%;margin:0;gap:7px;padding:10px}.challenge-feedback{grid-column:1;grid-row:2;align-self:center;text-align:left}.challenge-skip{grid-column:1;grid-row:3;justify-self:start;margin:0}.challenge-heading h1{font-size:25px}.challenge-choices button{min-height:35px;font-size:17px}.bird-scene{max-height:180px}.code-clue{font-size:17px}.code-answer{min-height:30px;font-size:17px}.code-keypad button{min-height:22px;font-size:12px}.code-input-label{display:none}.challenge-submit{min-height:31px!important;padding:6px!important}.line-order-art{max-height:160px}.line-order-choices button{min-height:40px}.line-order-choices small{font-size:7px}.garden-maze{max-width:200px}.maze-pad button{min-height:31px;min-width:36px}.arrow-trail{max-width:235px}.word-orbit{max-height:80px}.letter-keyboard button{min-height:24px}.word-slots{font-size:17px}.word-slots span{width:23px}.challenge-inline-actions .text-button{font-size:9px}}
.game-actions .game-skip{display:block;margin:0 auto;min-height:34px;padding:8px 14px;font-size:12px}.challenge-skip{min-height:34px;padding:8px 14px}
@media(max-height:620px){.game-actions .game-skip,.challenge-skip{min-height:30px;font-size:10px;padding:7px 13px}.game-actions{padding-top:8px}}
/* New challenges share the established Mindscore game surfaces and controls. */
#app .challenge-panel{background:#faf7ff;border-color:#e9def4;border-radius:20px;box-shadow:0 9px 25px #51307805}#app .challenge-heading>p{color:#9b83ae}#app .challenge-choices button,#app .code-keypad button,#app .maze-pad button,#app .line-order-choices button,#app .arrow-trail button,#app .letter-keyboard button{border:1px solid #e0d1ee;border-radius:8px;background:#fff;color:#8152b8;box-shadow:0 3px 0 #e9def4;font-weight:550}#app .challenge-choices button:hover:not(:disabled),#app .code-keypad button:hover:not(:disabled),#app .maze-pad button:hover:not(:disabled),#app .line-order-choices button:hover:not(:disabled),#app .arrow-trail button:hover:not(:disabled),#app .letter-keyboard button:hover:not(:disabled){border-color:#9c79dc;background:#f5effd}#app .line-order-choices .ordered,#app .arrow-trail button.trail-current{background:#eee7ff;border-color:#9c79dc;color:#7042d0}#app .arrow-trail button.trail-visited{border-color:#b69bcc}.garden-maze{border-color:#d9cbea;background:#fff}.maze-cell.wall{background:#b6a1d1}.maze-cell.player:after{background:#8152b8}.math-expression em{color:#8152b8}.code-clue span{color:#8152b8}.code-clue strong{color:#4c3470}.code-answer{border-color:#d7c5e8;color:#7042d0;background:#fff}#app .letter-keyboard .letter-right{background:#d8eee1;color:#398454;border-color:#9bc7ad;box-shadow:0 3px 0 #c0dfcc}#app .letter-keyboard .letter-wrong{background:#f6dce0;color:#ac5362;border-color:#e5b6bf;box-shadow:0 3px 0 #ebc7cf}#app .challenge-panel .answer-feedback.answer-right{background:#2b925a!important;color:#fff!important;border-color:#227a4a!important;box-shadow:0 3px 0 #1d6b40}#app .challenge-panel .answer-feedback.answer-wrong{background:#d65361!important;color:#fff!important;border-color:#bb3e4b!important;box-shadow:0 3px 0 #a93440}
@media(max-height:620px){#app .challenge-panel{border-radius:16px}}

/* Open game layouts: no enclosing cards or graded answer states. */
#app .challenge-panel,#app .game-stage{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important}
#app .answer-selected,#app .game-grid .chosen,#app .letter-keyboard .letter-used{background:#eee7ff!important;border-color:#9c79dc!important;color:#7042d0!important;box-shadow:0 3px 0 #d9c8ef}
#app .bird-scene{border-radius:12px;object-fit:contain;width:100%;height:auto;max-height:360px}
.challenge-feedback:empty{min-height:12px;margin-top:5px}.line-order-choices button{min-height:54px}.basketball-maze{position:relative;touch-action:none;user-select:none;background:#fffcf6;border:2px solid #d9cbea}.basketball-maze .wall{background:#b6a1d1;box-shadow:inset 0 0 0 1px #a58cc2}.maze-cell svg{width:95%;height:95%}.maze-ball{position:absolute;width:calc(100% / 7);height:calc(100% / 7);padding:3px;cursor:grab;z-index:2;touch-action:none}.maze-ball:active{cursor:grabbing}.maze-ball svg{width:100%;height:100%;display:block}.one-line-art{touch-action:none;user-select:none;cursor:crosshair}.arrow-escape-art{width:100%;flex:1;min-height:0;max-height:350px;overflow:hidden}.arrow-escape-art [role=button]{cursor:pointer;transition:transform .3s ease-in,opacity .3s}.arrow-escape-art [role=button]:focus-visible{outline:2px solid #b79cdc}.hangman-scene{display:flex;align-items:center;justify-content:center;gap:20px;flex:1;min-height:0;max-height:230px}.hangman-scene>svg{height:100%;min-height:0;width:65%;max-width:235px}.hangman-chances{display:flex;flex-direction:column;align-items:center;gap:6px;color:#8b73a0;max-width:88px}.hangman-chances>span{font-size:11px}.hangman-chances strong{color:#7550a8;font-size:24px}.hangman-hearts{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;font-size:21px;color:#a286c5}.hangman-hearts .spent{color:#e7e0ee}#app .word-slots{gap:7px;font-size:23px}#app .word-slots span{width:27px;min-height:35px}.letter-keyboard{grid-template-columns:repeat(9,1fr);gap:5px}.letter-keyboard button{min-height:36px}
@media(max-height:620px){#app .bird-scene{max-height:270px}.hangman-scene{max-height:170px;gap:12px}.hangman-hearts{font-size:17px}.hangman-chances strong{font-size:21px}#app .word-slots{gap:5px;font-size:19px}#app .word-slots span{width:23px;min-height:28px}.letter-keyboard button{min-height:29px}.arrow-escape-art{max-height:275px}}
@media(max-height:480px) and (min-width:600px){#app .bird-scene{max-height:170px}.hangman-scene{max-height:112px}.hangman-hearts{display:flex;font-size:12px}.hangman-chances{gap:2px}.hangman-chances>span{font-size:9px}.hangman-chances strong{font-size:17px}#app .word-slots span{min-height:22px}.letter-keyboard button{min-height:23px}.arrow-escape-art{max-height:210px}.basketball-maze{max-width:180px}}
@media(prefers-reduced-motion:reduce){.arrow-escape-art [role=button]{transition:none}}
/* User-supplied game artwork, kept large enough to recognize. */
#app .library-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:none;grid-auto-rows:max-content;align-content:start;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:1px 3px 5px;gap:12px;max-height:none}#app .library-game{padding:0 0 8px;justify-content:flex-start;border:0;box-shadow:none;background:transparent;border-radius:0}#app .library-game img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:14px;flex:none}#app .library-game h3{white-space:normal;font-size:11px;line-height:1.3;margin:7px 0 0;font-weight:600;min-height:28px}#app .library-grid:focus-visible{outline:2px solid #bca3df;outline-offset:2px}
@media(max-height:620px){#app .library-grid{gap:9px}#app .library-game h3{font-size:10px;min-height:26px;margin-top:5px}#app .library-game img{border-radius:11px}}
@media(max-height:480px) and (min-width:600px){#app .library-grid{grid-template-columns:repeat(4,minmax(0,1fr))}#app .library-game h3{font-size:9px;min-height:23px}}
#app .fine-maze{display:block;background:#fff;border:1.5px solid #a382df;border-radius:7px;max-width:330px}#app .maze-walls{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}#app .fine-maze .maze-ball{width:calc(100% / 9);height:calc(100% / 9);padding:2px}.maze-hoop{position:absolute;right:0;bottom:0;width:calc(100% / 9);height:calc(100% / 9);padding:1px;background:#fff8ea;border-radius:50%}.maze-hoop svg{display:block;width:100%;height:100%}
@media(max-height:620px){#app .fine-maze{max-width:260px}}
@media(max-height:480px) and (min-width:600px){#app .fine-maze{max-width:190px}}
.arrow-escape-art [role=button]{transition:opacity .1s}.arrow-escape-art [aria-disabled=true]{pointer-events:none}
#app .library-grid{gap:8px 7px;padding:1px 1px 4px}#app .library-game{padding-bottom:0}#app .library-game h3{min-height:0;margin-top:5px;font-size:10px;line-height:1.25}
.hangman-chances strong,.hangman-hearts{color:#dd4a60}.hangman-hearts .spent{color:#eadfe4}.escape-line{transition:stroke .12s}
#app .game-library-page h1{font-size:clamp(18px,5.5vw,24px);line-height:1.2}#app .game-library-page h1 em{white-space:nowrap;letter-spacing:-.6px}
#app .library-grid{gap:14px 11px}#app .game-library-page h1{margin-bottom:20px!important}
@media(max-height:620px){#app .library-grid{gap:12px 10px}#app .game-library-page h1{margin-bottom:15px!important}}

/* ---------- arrow escape, matched to the live funnel, 23 Sep 2026 ----------
   The flight itself is in app.js. These two carry the parts CSS does better:
   the tail fade that runs alongside the slide, and the rattle a blocked tap
   gets. Both are lifted from app/globals.css (.ae-a.fly / .ae-a.bad) with the
   shake widened, because 5 user units on that board's cols*10 viewBox is a
   much bigger nudge than 5 on this 320-wide one. */
/* THE BOX ROUND A FLYING ARROW. Each arrow is a <g tabindex="0">, so tapping
   one focuses it and the browser draws its default outline round the group's
   bounding box -- which balloons as the arrow slides off, tracing a big
   rectangle across the board. app/globals.css kills this on .ae-a and I missed
   the rule when porting the flight. Keyboard users keep their cue: the line
   itself lightens on :focus-visible, exactly as the live funnel does it. */
.arrow-escape-art g[data-escape]:focus,
.arrow-escape-art g[data-escape]:focus-visible,
.arrow-escape-art g[data-escape] *:focus{outline:none}
.arrow-escape-art g[data-escape]:focus-visible .escape-line{stroke:#7650dd}
.arrow-escape-art g[data-escape].escape-fly{pointer-events:none;animation:escape-fade .62s linear forwards}
@keyframes escape-fade{0%,62%{opacity:1}100%{opacity:0}}
.arrow-escape-art g[data-escape].escape-bad{animation:escape-shake .35s}
@keyframes escape-shake{25%{transform:translateX(-8px)}50%{transform:translateX(8px)}75%{transform:translateX(-5px)}}
@media(prefers-reduced-motion:reduce){.arrow-escape-art g[data-escape].escape-fly,.arrow-escape-art g[data-escape].escape-bad{animation:none}}

/* ---------- a selected answer went blank on hover, 23 Sep 2026 ----------
   design-system.css paints a selected card white-on-brand:
     #app :is(.answer-card,.age-answer).selected{background:var(--ui-brand);color:#fff}
   and then its hover rule repaints the background white without touching the
   colour:
     #app :is(.answer-card,.age-answer):hover:not(:disabled){background:#fff}
   The hover selector scores higher, so a selected card hovered = white text on
   a white card, and the answer disappears.

   Fixed by specificity rather than by editing design-system.css, so the
   handoff bundle's own stylesheet stays byte-identical and can be re-copied:
   adding .selected puts this at 140 against that rule's 130. */
#app :is(.answer-card,.age-answer,.subscription).selected:hover:not(:disabled){
  background:var(--ui-brand);border-color:var(--ui-brand);color:#fff;
}
#app :is(.answer-card,.age-answer,.subscription).selected:hover:not(:disabled) :is(strong,small,span){color:inherit}

/* ---------- the code keypad ran off the bottom, 23 Sep 2026 ----------
   Measured in Chrome at 390 wide: 740 tall put Continue 10px ON TOP of "Skip
   this challenge"; 667 and 640 pushed the skip link 49-101px past the bottom
   of main, off screen entirely. Only 844 and taller were ever safe.

   Two rules in design-system.css cause it. It pins the panel open --
     #app .challenge-panel{flex:none; min-height:350px}
     #app .challenge-panel:has(.code-keypad){min-height:424px}
   so it cannot give ground, and it re-inflates the keys --
     #app .code-keypad button{min-height:44px}
   which outscores polish.css's own max-height steps (110 against 20) and so
   cancelled the shrinking this file already had.

   Restored at a specificity that wins (#app + .challenge-page + class = 120),
   rather than editing design-system.css, so the handoff bundle's stylesheet
   stays byte-identical and can be re-copied over. */
@media(max-height:820px){
  #app .challenge-page .challenge-panel{flex:0 1 auto;min-height:0}
  #app .challenge-page .code-keypad button{min-height:34px;font-size:15px}
  #app .challenge-page .challenge-submit{min-height:40px!important;padding:10px!important}
}
@media(max-height:700px){
  #app .challenge-page .challenge-panel{gap:8px}
  #app .challenge-page .code-keypad{gap:6px}
  #app .challenge-page .code-keypad button{min-height:26px;font-size:13px}
  #app .challenge-page .challenge-submit{min-height:33px!important;padding:7px!important;font-size:13px!important}
  #app .challenge-page .challenge-skip{min-height:26px;font-size:11px;margin-top:2px}
}
/* 620 and 640 tall still pushed the skip link ~25px past the bottom: the clue
   rows and the answer field carry their own fixed sizing, so the keypad alone
   could not give back enough. */
@media(max-height:660px){
  #app .challenge-page .challenge-heading h1{font-size:19px;line-height:1.15}
  #app .challenge-page .challenge-heading p{font-size:11px}
  #app .challenge-page .challenge-panel{gap:6px;margin-top:8px}
  #app .challenge-page .code-clue{font-size:15px}
  #app .challenge-page .code-answer{min-height:34px;font-size:17px}
  #app .challenge-page .code-input-label{font-size:10px}
  #app .challenge-page .code-keypad button{min-height:22px;font-size:12px}
  #app .challenge-page .challenge-submit{min-height:29px!important;padding:5px!important;font-size:12px!important}
}

/* ---------- the focus ring was clipped on both input screens, 23 Sep 2026 --
   design-system.css draws it 6px outside the field:
     #app :is(button,input,[role=button]):focus-visible{outline:3px solid;outline-offset:3px}
   and the field is width:100% inside .profile-form, which has no horizontal
   gutter -- so the moment the name or email input took focus, both sides of
   the ring were cut off flush against the page edge.

   Two halves: pull the ring in from 6px to 4px, and give the form enough side
   padding to hold what is left. Specificity beats design-system.css (121 to
   120) so its own stylesheet stays byte-identical and re-copyable.
   .checkout-form is included because it carries the same field. */
#app :is(.profile-form,.checkout-form){padding-left:7px;padding-right:7px}
#app :is(.profile-form,.checkout-form) input:focus-visible{outline-width:2px;outline-offset:2px}

/* ---------- the unlock screen, ported from q20, 23 Sep 2026 ----------
   Markup is built in commerce.js; these are the .ul-* rules from
   app/globals.css, renamed so they cannot collide with anything in the
   handoff bundle's own stylesheets. */
#app .q28-unlock{display:flex;flex-direction:column;align-items:stretch;text-align:center}
#app .q28-unlock h1{font-size:23px;line-height:1.24;margin:0}
#app .q28-ul-kick{font-size:13px;font-weight:800;color:#2b2140;margin:clamp(6px,1.6vh,18px) 0 clamp(5px,1vh,10px);text-align:left}
#app .q28-ul-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:clamp(4px,.9vh,7px)}
#app .q28-ul-card{background:#fff;border:1px solid #e8dfef;border-radius:12px;padding:clamp(4px,.8vh,6px) 5px;text-align:center;box-shadow:0 4px 12px rgba(79,91,213,.05)}
#app .q28-ul-shot{display:block;border-radius:9px;overflow:hidden;margin-bottom:clamp(3px,.7vh,7px);aspect-ratio:1;background:#f3edfc}
#app .q28-ul-shot img{width:100%;height:100%;object-fit:cover;display:block}
#app .q28-ul-card b{display:block;font-size:8.5px;font-weight:800;color:#2b2140;line-height:1.2}
#app .q28-ul-more{margin-top:clamp(6px,1.4vh,14px);background:#f3edfc;border-radius:12px;padding:clamp(7px,1.2vh,11px);text-align:center;font-size:12px;font-weight:700;color:#6528ed}
#app .q28-ul-more span{margin-right:4px}
#app .q28-unlock .bottom-action{margin-top:auto;padding-top:clamp(8px,1.5vh,14px)}

/* ---------- paywall plan cards, 23 Sep 2026 -------------------------
   app.js builds four cards from a fixed demo list. The arms sell one or
   two plans, so arms.js fills the leftover slots with placeholders and
   flags them on <html data-q28-hide>. Hiding them in CSS rather than
   deleting them in JS means they are never painted at all.
   `ribbon` is set when there is no weekly plan to price a year against,
   so there is no honest saving to advertise. */
html[data-q28-hide~="lifetime"] #app .lp-plan[data-lp-plan="lifetime"],
html[data-q28-hide~="quarterly"] #app .lp-plan[data-lp-plan="quarterly"],
html[data-q28-hide~="monthly"] #app .lp-plan[data-lp-plan="monthly"]{display:none}
html[data-q28-hide~="ribbon"] #app .lp-plan-ribbon{display:none}

/* ---------- the paywall story circles, 23 Sep 2026 ------------------
   design-system.css drops the circle the moment playback starts --
   `.is-playing` switches it to aspect-ratio:3/4 with a 22px radius, so
   the round frame becomes a rounded rectangle mid-tap -- and plays the
   clip with object-fit:contain, which letterboxes a 9:16 phone video
   inside it. The clips are all vertical, so it stays a circle and the
   video fills it. */
#app .lp-member-circle.is-playing{aspect-ratio:1;border-radius:50%}
#app .lp-member-circle>video{object-fit:cover;object-position:center 30%}

/* ---------- unlock screen: fit one view, 23 Sep 2026 ----------------
   The tiles were square (aspect-ratio:1), which ties their height to the
   column width -- so on a short phone the 4x4 grid could not shrink and
   pushed the CTA below the fold (27px off at 360x640). Height now comes
   from the viewport instead, and object-fit:cover keeps the artwork
   filled at any ratio. Everything else tightens on short screens only,
   so tall phones keep the roomier spacing. */
#app .q28-ul-shot{aspect-ratio:auto;height:clamp(48px,10vh,104px)}

@media (max-height:740px){
  #app .q28-unlock h1{font-size:clamp(17px,4.6vw,21px)}
  #app .q28-ul-kick{margin:6px 0 4px}
  #app .q28-ul-grid{gap:4px}
  #app .q28-ul-card{padding:3px 4px}
  #app .q28-ul-card b{font-size:8px}
  #app .q28-ul-more{margin-top:6px;padding:6px;font-size:11px}
  #app .q28-unlock .bottom-action{padding-top:6px}
}

/* ---------- keep the marquees moving on hover, 23 Sep 2026 ----------
   design-system.css:905 pauses the app-screenshot belt whenever a
   pointer is over it, and :782 does the same to the purchase ticker.
   That is a desktop-only reading aid, but on this funnel the cursor
   rests over the phone mockups for most of the screen, so the carousel
   just sat still and looked broken. Both keep running now.
   .is-paused is left alone -- that is the JS pausing it deliberately. */
#app .lp-screenshot-window:hover .lp-screenshot-belt,
#app .lp-screenshot-window:focus .lp-screenshot-belt{animation-play-state:running}
#app .lp-purchase-window:hover .lp-purchase-track,
#app .lp-purchase-window:focus .lp-purchase-track{animation-play-state:running}
#app .lp-screenshot-loop.is-paused .lp-screenshot-belt{animation-play-state:paused}

/* Smallest phones still in the wild (iPhone SE, 320x568): the taller
   tiles above push the CTA off, so they shrink again below 620px tall. */
@media (max-height:620px){
  #app .q28-ul-shot{height:clamp(40px,8vh,56px)}
  #app .q28-ul-more{margin-top:4px;padding:5px;font-size:10px}
}

/* ---------- no invented discount on single-plan arms, 23 Sep 2026 ----
   app.js prints `discount` in three places -- the plan ribbon, the
   sticky offer bar and the coupon strip -- all computed as
   1 - price/originalPrice. q29 and q32 have a real comparison (what a
   year costs bought by the week) so those read 91% and 86%. q28, q30
   and q31 sell a single plan with nothing to compare against, so
   originalPrice is null there and the arithmetic yields -Infinity%.
   Rather than fabricate a was-price to fill the gap, the discount
   furniture is hidden on those arms. Same `ribbon` flag arms.js sets. */
html[data-q28-hide~="sticky"] #app .lp-sticky-offer{display:none}
html[data-q28-hide~="coupon"] #app .lp-coupon{display:none}

/* A bit more room for the unlock artwork. */
#app .q28-ul-shot{height:clamp(48px,10.2vh,124px)}

/* These follow the taller base rule above on purpose -- equal specificity,
   so source order decides, and the short-screen caps have to win. */
@media (max-height:740px){ #app .q28-ul-shot{height:clamp(46px,9vh,78px)} }
@media (max-height:620px){ #app .q28-ul-shot{height:clamp(40px,8vh,56px)} }

/* A paused story shows a play badge again, since there is no control bar
   to tell the viewer the tap did anything. */
#app .lp-member-circle.q28-paused::after{content:"▶";position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%);width:68px;height:68px;border-radius:50%;
  border:1px solid #ffffff65;background:#3d2d4870;color:#fff;display:grid;
  place-items:center;font-size:25px;padding-left:6px;backdrop-filter:blur(4px);
  pointer-events:none}

/* ---------- the story play button, 23 Sep 2026 ----------------------
   style.css nudges every button down 2px while pressed:

       button:active:not(:disabled){transform:translateY(2px)}

   but this one is centred with transform:translate(-50%,-50%), and a
   second transform REPLACES the first rather than adding to it -- so on
   tap the button lost its centring and jumped a third of the circle up
   and left before playback started. It keeps its place now, and presses
   with a scale instead, which composes with the centring because both
   live in the same transform. */
#app .lp-member-circle>button:active:not(:disabled){transform:translate(-50%,-50%) scale(.94)}
#app .lp-member-circle>button{transition:transform .12s ease,background .2s}

/* While the clip runs there is nothing over it. The badge returns only
   when it is paused, since with the control bar gone it is the only
   thing telling the viewer the tap registered. */
#app .lp-member-circle.is-playing>button{display:none}

/* Tall screens had a band of dead space between the grid and the CTA --
   .bottom-action is margin-top:auto, so anything the grid does not use
   piles up above it. The artwork takes that room instead. */
@media (min-height:1000px){
  #app .q28-ul-shot{height:clamp(96px,11.6vh,172px)}
  #app .q28-ul-card b{font-size:11px}
  #app .q28-ul-kick,#app .q28-ul-more{font-size:14px}
}

/* Paddle's inline frame sits in the paywall between the plan cards and the
   CTA. Paddle sizes the iframe itself; this only gives it room and keeps
   it from touching the edges. */
/* No reserved height: an empty placeholder is a hole in the page if the
   frame never mounts. Paddle sizes its own iframe, and the rule below
   gives the element height only once there is an iframe in it. */
#app .q28-paddle-frame{width:100%;margin:0}
#app .q28-paddle-frame:has(iframe){margin:clamp(10px,2vh,20px) 0}
#app .q28-paddle-frame iframe{width:100%!important;border:0!important;display:block}

/* A spinner while the clip buffers, in place of the play badge. */
#app .lp-member-circle.q28-loading::after{content:"";position:absolute;left:50%;top:50%;
  width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;
  border:3px solid #ffffff55;border-top-color:#fff;animation:q28spin .7s linear infinite;
  pointer-events:none}
@keyframes q28spin{to{transform:rotate(360deg)}}

/* The in-page address prompt, shown only when the paywall is reached
   without one. Styled to sit in the pricing block rather than look like
   a second checkout. */
#app .q28-paddle-frame .q28-gate-label{display:block;text-align:left;font-size:13px;
  font-weight:700;color:#2b2140;margin:0 0 6px}
#app .q28-paddle-frame .q28-gate-input{width:100%;padding:14px;border-radius:14px;
  border:1px solid #d9cfe5;font:inherit;font-size:15px;background:#fff}
#app .q28-paddle-frame .q28-gate-input:focus-visible{outline:2px solid #b69bf3;outline-offset:2px}
#app .q28-paddle-frame .q28-gate-go{margin-top:12px}

/* ---------- the app-screenshot belt, 23 Sep 2026 --------------------
   design-system.css runs it at 180s, which over that strip's width is
   slow enough to read as a static image -- the reason it was worth
   keeping running on hover was that it barely appeared to move at all.
   60s covers the same distance in a third of the time: clearly in
   motion, still slow enough to take a screen in as it passes.
   #app outranks the plain-class rules, including the one inside the
   bundle's own media query. */
#app .lp-screenshot-belt{animation-duration:60s}

/* Anyone who has asked their system for less motion keeps it still. */
@media (prefers-reduced-motion:reduce){
  #app .lp-screenshot-belt{animation-play-state:paused}
}

/* ---------- the market hero cut, above the before/after ------------- */
#app .q28-hero-video{position:relative;width:100%;border-radius:20px;overflow:hidden;
  background:#efebf7;margin:0 0 clamp(8px,1.6vh,16px);line-height:0}
#app .q28-hero-video video{width:100%;height:auto;display:block;object-fit:cover}
#app .q28-hero-video .q28-hero-play{position:absolute;left:50%;top:50%;
  transform:translate(-50%,-50%);width:64px;height:64px;border-radius:50%;
  border:1px solid #ffffff65;background:#3d2d4870;color:#fff;display:grid;
  place-items:center;font-size:24px;padding-left:5px;backdrop-filter:blur(4px);
  cursor:pointer;transition:transform .12s ease}
#app .q28-hero-video .q28-hero-play:active{transform:translate(-50%,-50%) scale(.94)}
#app .q28-hero-video.is-playing .q28-hero-play{display:none}

/* ---------- the before/after still is out, 23 Sep 2026 --------------
   The market's hero cut now opens the paywall, and the still sat
   directly under it making the same point twice -- two images of the
   same idea stacked before the headline. The video keeps the slot.

   Scoped to the paywall via #app[data-page], so .lp-hero is untouched
   anywhere else the bundle uses it. display:none rather than removing
   the node in JS: nothing to undo if it should come back. */
#app[data-page="paywall"] .lp-hero{display:none}

/* Playing without sound because the browser refused an unmuted start --
   a tap is a fresh gesture and turns it on. */
#app .lp-member-circle.q28-muted::after{content:"\1F507";position:absolute;
  left:50%;top:50%;transform:translate(-50%,-50%);width:64px;height:64px;
  border-radius:50%;border:1px solid #ffffff65;background:#3d2d4870;color:#fff;
  display:grid;place-items:center;font-size:24px;backdrop-filter:blur(4px);
  pointer-events:none}
#app .q28-hero-video.q28-muted .q28-hero-play{display:grid}
#app .q28-hero-video.q28-muted .q28-hero-play span::before{content:"\1F507"}
#app .q28-hero-video.q28-muted .q28-hero-play span{font-size:0}

/* ---------- the marketing consent box ----------
   Injected into #email-form by commerce.js (optInBox), because app.js is the
   designer's build and stays byte-identical. Styled to sit quietly under the
   field rather than compete with the Continue button: this is a checkbox the
   visitor may untick, not a second call to action. */
.q28-optin {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 2px 0 16px;
  font-size: 14px;
  line-height: 1.35;
  color: #6b6580;
  cursor: pointer;
  text-align: left;
}
.q28-optin input {
  flex: 0 0 auto;
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #6528ed;
  cursor: pointer;
}
.q28-optin span { flex: 1 1 auto; }
