.approved-challenge .flow-head{border-bottom:1px solid #f0e7f3}.approved-challenge .progress-hero{margin:5px 0 24px;gap:25px;align-items:center}.approved-challenge .progress-orbit{width:130px;height:130px}.approved-challenge .progress-orbit>b{width:105px;height:105px;font-size:40px}.approved-challenge .progress-hero .journal-kicker{font-size:14px;line-height:1.6;margin-bottom:13px}.approved-challenge .progress-hero h3{font-size:28px;line-height:1.3;margin:0 0 13px}.approved-challenge .progress-hero p{font-size:15px}.approved-challenge .final-intro{font-size:15px;line-height:1.8;margin-bottom:22px}.approved-challenge .book-navigation{position:sticky;top:-1px;z-index:2;background:#fff;padding:10px 0 12px;margin:0 0 8px;box-shadow:0 5px 9px #ffffffed}.approved-challenge .book-navigation button{padding:10px;border-radius:13px;min-height:66px}.approved-challenge .book-navigation button.selected{background:#fbf0ff;border-color:#b36bd1}.approved-challenge .book-navigation small{display:flex;align-items:center;gap:3px;font-size:12px}.approved-challenge .book-navigation small svg{width:12px;height:12px;flex-shrink:0}.approved-challenge .book-page{box-shadow:none}.approved-challenge .selected-day-page{padding:22px 24px}.approved-challenge .selected-day-page>h3{margin:8px 0 19px;font-size:23px}.waiting-copy,.secret-day>p{font-size:15px;color:#886d92;line-height:1.8;margin:0 0 18px}.day-countdown{border:1px solid #e9d6f2;border-radius:14px;background:#faf2fe;padding:18px 20px;margin-top:16px}.day-countdown>span{display:flex;gap:8px;align-items:center;color:#91649f;font-size:13px}.day-countdown>span svg{width:17px;height:17px}.day-countdown>strong{display:block;font-size:34px;line-height:1.4;letter-spacing:2px;font-variant-numeric:tabular-nums;color:#8525ae;margin:8px 0}.day-countdown>p{font-size:12px;line-height:1.7;color:#a083ae;margin:0}.secret-badge{display:inline-flex;gap:7px;align-items:center;border-radius:8px;padding:7px 10px;background:#f1e7f5;color:#9a73a9;font-size:12px;margin:3px 0 10px}.secret-badge svg{width:16px;height:16px}.secret-day .secret-hint{display:block;border-top:1px solid #eee1f3;padding-top:15px;color:#aa8ab5;font-size:13px;line-height:1.7}.approved-challenge .challenge-reward{width:calc(100% - 24px);max-width:500px;margin:20px auto 0;padding:10px 13px;gap:10px;border:1px solid #eddbf6;background:#fcf7ff;border-radius:13px;align-items:center}.approved-challenge .challenge-reward>svg{width:21px;height:21px}.approved-challenge .challenge-reward p{font-size:13px;line-height:1.55}.approved-challenge .flow-footer .btn:disabled{cursor:not-allowed;opacity:.5}.approved-challenge .progress-orbit small{font-size:14px}
@media(max-width:640px){.approved-challenge .progress-hero{flex-direction:row;gap:12px;align-items:center;margin:2px 0 20px}.approved-challenge .progress-orbit{width:70px;height:70px}.approved-challenge .progress-orbit>b{width:56px;height:56px;font-size:25px}.approved-challenge .progress-orbit small{font-size:11px;margin-top:2px}.approved-challenge .progress-hero .journal-kicker{font-size:12px;line-height:1.5;margin-bottom:9px}.approved-challenge .progress-hero h3{font-size:21px;margin-bottom:9px}.approved-challenge .progress-hero p{font-size:12px;line-height:1.6}.approved-challenge .final-intro{font-size:14px}.approved-challenge .book-navigation{gap:6px}.approved-challenge .book-navigation button{padding:9px 3px;gap:6px}.approved-challenge .book-navigation button>span:last-child{font-size:12px}.approved-challenge .book-navigation small{font-size:12px;justify-content:center}.approved-challenge .selected-day-page{padding:17px 15px}.approved-challenge .selected-day-page>h3{font-size:21px}.day-countdown{padding:14px 12px}.day-countdown>strong{font-size:26px;letter-spacing:1px}.day-countdown>span{font-size:12px}.waiting-copy,.secret-day>p{font-size:14px}.approved-challenge .challenge-reward{width:100%;padding:10px;gap:7px}.approved-challenge .challenge-reward p{font-size:12px}.approved-challenge .flow-footer .btn{font-size:13px}.approved-challenge .challenge-reward>svg{width:18px;height:18px}}
@media(max-width:380px){.approved-challenge .progress-hero{flex-direction:column;align-items:flex-start}.approved-challenge .progress-hero h3{font-size:22px}}

.approved-challenge #flow-content{height:min(780px,94dvh);max-height:94dvh}.approved-challenge .flow-head{padding:23px 27px}.approved-challenge .challenge-layout{grid-template-columns:165px minmax(0,1fr)}.approved-challenge .challenge-scroll{padding:24px 25px 28px}.approved-challenge .dish-ribbon{margin-left:18px}.approved-challenge .book-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.approved-challenge .book-navigation button{display:flex;align-items:center;gap:9px;min-width:0;text-align:left;color:#83618e;border:1px solid #e9dbee;background:#fff}.approved-challenge .book-navigation button.selected{background:#fbf0ff;border-color:#b36bd1}.approved-challenge .book-navigation img,.approved-challenge .book-number{width:37px;height:45px;border-radius:7px;object-fit:cover;flex-shrink:0}.approved-challenge .book-number{display:grid;place-items:center;background:#f5e8fb;color:#aa7dbb;font-size:17px;font-weight:750}.approved-challenge .book-navigation button>span:last-child{font-size:13px;line-height:1.4;font-weight:650}.approved-challenge .book-navigation small{font-weight:400;color:#aa89b6;margin-top:3px}.approved-challenge .book-page{border-left:4px solid #dcb8eb;border-radius:3px 17px 17px 3px}.approved-challenge .selected-day-page{border:1px solid #e7d8ef;background:#fffcff;border-radius:0 17px 17px 0;border-left:0}.approved-challenge .selected-day-page .stage-record{padding:0}.approved-challenge .day-task>p{color:#806589;font-size:15px;line-height:1.8;margin:0 0 22px}.approved-challenge .task-footnote{display:block;color:#ab90b5;font-size:13px;line-height:1.7}.approved-challenge .challenge-reward{width:100%;max-width:none;padding:7px 13px;margin:18px 0 0;min-height:0}.approved-challenge .challenge-reward p{line-height:1.45}.approved-challenge .challenge-reward>svg{width:20px;height:20px}
@media(max-width:640px){.approved-challenge #flow-content{height:95dvh;max-height:95dvh}.approved-challenge .flow-head{padding:16px 12px}.approved-challenge .challenge-layout{grid-template-columns:80px minmax(0,1fr)}.approved-challenge .dish-ribbon{margin-left:8px}.approved-challenge .challenge-scroll{padding:18px 12px 23px}.approved-challenge .book-navigation{gap:6px}.approved-challenge .book-navigation button{flex-direction:column;gap:6px;padding:9px 3px;text-align:center}.approved-challenge .book-navigation button>span:last-child{font-size:12px}.approved-challenge .challenge-reward{padding:7px 10px}}
/* Targeted recipe flips, review layout and landing copy placement. */
.approved-challenge .stage-review-layout{margin-top:22px}.approved-challenge .stage-review-layout.has-photo{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.8fr);gap:20px;align-items:start}.approved-challenge .stage-review-copy{min-width:0}.approved-challenge .stage-review-copy h4{margin:0 0 9px}.approved-challenge .stage-review-layout .stage-user-photo{display:block;width:auto;height:auto;max-width:100%;max-height:260px;margin:0;justify-self:end;object-fit:contain;background:transparent;border-radius:12px}.food-flip-card{min-width:0;height:400px;perspective:1200px}.food-flip-inner{height:100%;position:relative;transform-style:preserve-3d;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.food-flip-card.is-flipped .food-flip-inner{transform:rotateY(180deg)}.food-flip-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;border:1px solid #e8dced;border-radius:24px;overflow:hidden;background:#fff;display:flex;flex-direction:column}.food-flip-front{transform:rotateY(0deg)}.food-flip-trigger{display:flex;flex-direction:column;padding:0;border:0;background:transparent;text-align:left;color:#292031;flex:1;min-height:0;width:100%}.food-flip-trigger .landing-recipe-photo{height:220px;width:100%;flex-shrink:0}.food-flip-title{padding:22px}.food-flip-title h3{font-size:20px;line-height:1.35;letter-spacing:-.4px;margin:0 0 12px}.food-flip-title p{font-size:13px;color:#796b80;margin:0;line-height:1.6}.food-flip-front .flip-cook{align-self:flex-start;margin:0 22px 20px;font-size:14px}.food-flip-back{transform:rotateY(180deg);background:#fcf7ff;padding:22px;border-color:#dfbdee}.flip-back-scroll{overflow:auto;min-height:0;flex:1;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px}.flip-back-scroll h3{font-size:20px;line-height:1.35;color:#542760;margin:0 0 13px;letter-spacing:-.4px}.flip-back-scroll h4{font-size:14px;color:#694473;margin:17px 0 7px}.flip-back-scroll p{font-size:14px;color:#8a6c96;line-height:1.65;margin:10px 0 0}.flip-back-scroll .recipe-meta{font-size:12px}.flip-back-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-top:14px;flex-shrink:0}.flip-back-actions .text-btn{font-size:14px}.day-flip-recipes{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:14px;margin-top:20px}.day-flip-recipes .food-flip-card{height:390px}.day-flip-recipes .food-flip-trigger .landing-recipe-photo{height:175px}.day-flip-recipes .food-flip-title{padding:17px}.day-flip-recipes .food-flip-title h3{font-size:18px}.day-flip-recipes .food-flip-back{padding:18px}.day-flip-recipes .flip-back-scroll h3{font-size:18px}.food #challenge>.section-sub{max-width:none;width:100%;margin-top:22px}.food #challenge .challenge-top>div{max-width:none}.food #deals .reward-heading{display:block}.food #deals .reward-description{color:#70557f;line-height:1.8;font-size:15px;margin:20px 0 0;max-width:none}.food #deals .reward-bottom{justify-content:flex-end}
@media(max-width:850px){.food-flip-card{height:380px}.food-flip-trigger .landing-recipe-photo{height:190px}.food-flip-title{padding:18px}.food-flip-title h3{font-size:18px}.food-flip-back{padding:18px}.flip-back-scroll h3{font-size:18px}}
@media(max-width:640px){.food-flip-card{height:365px}.food-flip-trigger .landing-recipe-photo{height:205px;min-height:0}.food-flip-face{border-radius:19px}.food-flip-title{padding:19px}.food-flip-title h3{font-size:19px}.approved-challenge .stage-review-layout.has-photo{grid-template-columns:minmax(0,1fr) minmax(70px,.8fr);gap:12px}.approved-challenge .stage-review-layout .stage-user-photo{max-height:180px}.food #deals .reward-description{font-size:14px}.food #challenge>.section-sub{margin-top:18px}.day-flip-recipes .food-flip-card{height:365px}.day-flip-recipes .food-flip-trigger .landing-recipe-photo{height:155px}}
@media(prefers-reduced-motion:reduce){.food-flip-inner{transition:none}}

/* Compact reward journey — scoped to the landing reward block */
.food #deals .reward-heading{display:flex;justify-content:space-between;align-items:center;gap:24px}.food #deals .reward-heading>.btn{flex-shrink:0}.food #deals .reward-path{gap:24px;margin:28px 0 0}.food #deals .reward-path article{padding:18px;min-height:0}.food #deals .reward-path article:not(:last-child)::after{content:'→';position:absolute;right:-23px;top:50%;transform:translateY(-50%);font-size:20px;color:#a13dcc;z-index:1}.food #deals .reward-preview{height:58px;display:flex;align-items:center;gap:12px}.food #deals .reward-preview>img{width:58px;height:58px;object-fit:cover;border-radius:12px;flex-shrink:0}.food #deals .reward-preview>span{font-size:13px;line-height:1.4;color:#754885}.food #deals .reward-complete{display:flex;gap:5px;align-items:center}.food #deals .reward-complete svg{width:17px;height:17px;flex-shrink:0;color:#9227ca}.food #deals .reward-path h3{margin:16px 0 8px;font-size:18px;line-height:1.35}.food #deals .reward-number{font-size:12px;margin-right:5px;vertical-align:2px}.food #deals .reward-path p{max-width:none;font-size:14px;line-height:1.6}.food #deals .reward-earn{background:#ffffffb8;border-color:#fff}.food #deals .reward-preview .reward-coin{width:58px;height:58px;display:grid;place-items:center;flex-shrink:0;border-radius:50%;color:white;font-size:30px;font-weight:800;background:linear-gradient(135deg,#ba38e8,#8620bc);box-shadow:0 5px 13px #a02acb26,inset 0 0 0 4px #ffffff35}.food #deals .reward-preview .reward-earned-label{color:#8c20bb;font-weight:700}.food #deals .reward-thumbnails{display:flex;flex-shrink:0;padding-right:4px}.food #deals .reward-thumbnails img{width:48px;height:58px;object-fit:cover;border:2px solid white;border-radius:10px}.food #deals .reward-thumbnails img+img{margin-left:-10px;transform:rotate(7deg)}
@media(max-width:900px){.food #deals .reward-heading{align-items:flex-start}.food #deals .reward-heading>.btn{font-size:14px;padding:15px}.food #deals .reward-path{gap:18px}.food #deals .reward-path article{padding:15px}.food #deals .reward-path article:not(:last-child)::after{right:-18px;font-size:16px}.food #deals .reward-preview{gap:8px}.food #deals .reward-preview>span{font-size:12px}.food #deals .reward-path h3{font-size:17px}}
@media(max-width:640px){.food #deals .reward-heading{flex-direction:column;gap:18px}.food #deals .reward-path{gap:24px}.food #deals .reward-path article{padding:18px}.food #deals .reward-path article:not(:last-child)::after{right:50%;top:auto;bottom:-25px;transform:translateX(50%) rotate(90deg);font-size:20px}.food #deals .reward-preview>span{font-size:14px}.food #deals .reward-path h3{font-size:18px}}
/* Keep reward cards and their previews consistently proportioned */
.food #deals .reward-path{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch}
.food #deals .reward-path article{min-width:0;padding:22px;display:flex;flex-direction:column}
.food #deals .reward-preview{height:68px;min-height:68px;gap:12px}
.food #deals .reward-preview>img{display:block;width:68px;height:68px;object-fit:cover;object-position:65% center;border-radius:12px}
.food #deals .reward-preview .reward-coin{width:68px;height:68px}
.food #deals .reward-preview>span{min-width:0;font-size:13px;line-height:1.5;overflow-wrap:break-word}
.food #deals .reward-thumbnails{padding:0;gap:6px}
.food #deals .reward-thumbnails img{display:block;width:52px;height:68px;object-fit:cover;border:0;border-radius:10px}
.food #deals .reward-thumbnails img+img{margin-left:0;transform:none}
.food #deals .reward-path h3{display:flex;gap:9px;align-items:baseline;margin:20px 0 10px;line-height:1.4}
.food #deals .reward-number{flex-shrink:0;margin:0;vertical-align:baseline}
.food #deals .reward-path p{margin-top:auto}
.food #deals .reward-path article:not(:last-child)::after{right:-25px;width:20px;text-align:center}
@media(min-width:641px) and (max-width:1000px){.food #deals .reward-path{gap:20px}.food #deals .reward-path article{padding:16px}.food #deals .reward-preview{height:auto;min-height:110px;flex-direction:column;align-items:flex-start;gap:8px}.food #deals .reward-path h3{min-height:50px;font-size:17px}.food #deals .reward-path article:not(:last-child)::after{right:-21px}}
@media(max-width:640px){.food #deals .reward-path{grid-template-columns:1fr;gap:26px}.food #deals .reward-path article{padding:20px}.food #deals .reward-path article:not(:last-child)::after{right:50%;bottom:-26px}.food #deals .reward-preview>span{font-size:14px}}
