/* member-panels-v242.css */
/* Distinct member panels. Existing controls, routes and content stay in place. */
.feature-icon-v242{display:grid!important;place-items:center;flex:0 0 64px;width:64px!important;height:72px!important;min-width:0!important;background:transparent!important;border:0!important;border-radius:0!important}
.feature-art-v242{display:block;width:72px;height:72px;max-width:100%;overflow:visible}
#home-card-stack>#home-showroom-open{position:relative;display:flex;align-items:center;gap:16px;min-height:128px;box-sizing:border-box;padding:22px;border:1px solid #d9b7c3;border-radius:24px;background:radial-gradient(ellipse at 10% 0%,#fff7df 0%,transparent 55%),linear-gradient(115deg,#f9e3d6,#eee1f1);box-shadow:0 8px 24px #714b6010;color:#66354f;text-decoration:none}
#home-card-stack>#home-showroom-open>span:nth-child(2){flex:1;min-width:0}
#home-card-stack>#home-showroom-open strong{display:block;font-size:clamp(1.3125rem,5.6vw,1.6875rem);font-weight:750;line-height:1.18;letter-spacing:-.4px}
#home-card-stack>#home-showroom-open>span:nth-child(2)>span{display:block;margin-top:7px;font-size:1rem;line-height:1.4;color:#765366}
#home-card-stack>#home-showroom-open>span:last-child{flex:none;font-size:1.5625rem}
#home-card-stack .home-food-links>a.home-recipe-club{display:flex!important;align-items:center;gap:14px;min-height:116px;box-sizing:border-box;margin:0;padding:20px!important;border:1px solid #bccbad;border-radius:22px;background:radial-gradient(ellipse at 0% 0%,#fff8df 0%,transparent 65%),linear-gradient(110deg,#edf0dc,#dfe8dc);color:#445d40;box-shadow:0 6px 20px #5065430b}
#home-card-stack .home-food-links>a.home-recipe-club>span:nth-child(2){flex:1;min-width:0}
#home-card-stack .home-food-links>a.home-recipe-club strong{font-size:clamp(1.3125rem,5.4vw,1.625rem)!important;white-space:normal;font-weight:750;line-height:1.2;letter-spacing:-.4px}
#home-card-stack .home-food-links>a.home-recipe-club .hub-entry-arrow{flex:none;font-size:25px;color:#445d40}
.mirror-invitation #mirror-launch{display:flex;align-items:center;justify-content:flex-start;gap:16px;min-height:120px;height:auto;padding:20px;box-sizing:border-box;border:1px solid #c6b9d8;border-radius:24px;background:radial-gradient(ellipse at 0% 0%,#fff5e7 0%,transparent 60%),linear-gradient(115deg,#eee1ed,#e1dcf0);color:#624366;box-shadow:0 6px 20px #69507510;text-align:left;white-space:normal}
#mirror-launch>span:nth-child(2){flex:1;min-width:0;font-size:clamp(1.375rem,5.5vw,1.6875rem);font-weight:750;line-height:1.2;letter-spacing:-.4px}
#mirror-launch>span:last-child{flex:none;font-size:1.5625rem}
.member-voice-section{box-sizing:border-box;margin-top:28px;padding:22px;border:1px solid #ddbcc9;border-radius:24px;background:radial-gradient(ellipse at 100% 0%,#fff5e4 0%,transparent 60%),linear-gradient(125deg,#f6e2e9,#f5edf2);box-shadow:0 7px 24px #714b600a}
.encouragement-heading-v242{display:flex;align-items:center;gap:12px;color:#77415b}
.encouragement-heading-v242 .feature-icon-v242{flex-basis:56px;width:56px!important;height:64px!important}
#member-voice-title{font-family:inherit;flex:1;min-width:0;margin:0;font-size:clamp(1.4375rem,5.9vw,1.8125rem);line-height:1.18;font-weight:750;letter-spacing:-.5px}
.member-voice-section>#member-voice-list>p{margin:12px 0 18px;font-size:1rem;color:#765e6c}
.member-voice-section .member-contribution-link{display:flex;align-items:center;gap:12px;box-sizing:border-box;margin:18px 0 0;padding:16px;min-height:76px;border:1px solid #ae7a92;border-radius:17px;background:#fffaf5;color:#71374f;box-shadow:0 4px 12px #714b6008;text-decoration:none}
.member-voice-section .member-contribution-link .feature-icon-v242{flex-basis:38px;width:38px!important;height:42px!important}
.member-voice-section .member-contribution-link>span:nth-child(2){flex:1;min-width:0}
.member-voice-section .member-contribution-link strong{font-size:1.1875rem;line-height:1.25;font-weight:700}
.member-voice-section .member-contribution-link>.hub-entry-arrow{flex:none;font-size:23px}
#home-card-stack>#home-showroom-open:focus-visible,.home-recipe-club:focus-visible,#mirror-launch:focus-visible,.member-contribution-link:focus-visible{outline:3px solid #80445f;outline-offset:4px}
@media(max-width:360px){#home-card-stack>#home-showroom-open,#home-card-stack .home-food-links>a.home-recipe-club,.mirror-invitation #mirror-launch{padding:16px;gap:10px}.feature-icon-v242{flex-basis:52px;width:52px!important}.member-voice-section{padding:17px}.member-voice-section .member-contribution-link{padding:12px;gap:8px}}

.feature-icon-v242>.feature-art-v242{width:100%!important;height:100%!important}
#home-card-stack .home-food-links .home-recipe-club .feature-icon-v242{flex:0 0 64px}
@media(max-width:360px){#home-card-stack .home-food-links .home-recipe-club .feature-icon-v242{flex-basis:52px}#home-card-stack .home-food-links>a.home-recipe-club{padding:16px!important}}

/* progress-panels-v243.css */
/* Compact movement disclosure and illustrated journal entry. */
#personal-space .hub-steps-card.has-movement-expander-v243{padding:0!important;min-height:0!important;height:auto;overflow:visible}
.movement-expander-v243>summary{display:flex;align-items:center;gap:14px;box-sizing:border-box;min-height:106px;padding:20px;list-style:none;cursor:pointer;color:#584855;border-radius:24px}
.movement-expander-v243>summary::-webkit-details-marker{display:none}
.movement-summary-icon-v243{display:grid;place-items:center;flex:0 0 42px;width:42px;height:50px;color:#856078}
.movement-summary-icon-v243 svg{display:block;width:34px;height:34px;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.movement-summary-copy-v243{flex:1;min-width:0}
.movement-summary-copy-v243 strong{display:block;font-size:clamp(1.3125rem,5.5vw,1.625rem);font-weight:700;line-height:1.2;letter-spacing:-.3px}
.movement-summary-copy-v243>span{display:block;margin-top:7px;font-size:0.9375rem;line-height:1.4;color:#746c70;overflow-wrap:anywhere}
.movement-summary-chevron-v243{flex:none;font-size:1.75rem;line-height:1;transition:transform .15s}
.movement-expander-v243[open]>.movement-summary-chevron-v243,.movement-expander-v243[open]>summary>.movement-summary-chevron-v243{transform:rotate(180deg)}
.movement-expander-v243[open]>summary{border-bottom:1px solid #dce0d7;border-radius:24px 24px 0 0}
.movement-expander-body-v243{padding:20px}
.movement-expander-body-v243 .hub-steps-heading .eyebrow{display:none}
.movement-expander-body-v243 #hub-steps-title{font-size:1.3125rem!important}
.movement-expander-v243>summary:focus-visible{outline:3px solid #80546d;outline-offset:3px}
#personal-space .hub-steps-card .movement-expander-body-v243>a.steps-world-entry{display:grid!important;grid-template-columns:23px minmax(0,1fr) 16px;align-items:center;gap:9px;min-height:48px;height:auto;margin:8px 0 0;padding:9px 0 0!important;background:none!important;border:0!important;border-top:1px solid #dedbd5!important;border-radius:0;box-shadow:none!important;color:#65495d!important;text-decoration:none}
#personal-space .movement-expander-body-v243>a.steps-world-entry .steps-world-orb{display:grid;place-items:center;width:23px;height:23px;min-width:0;flex:none;font-size:1.1875rem;line-height:1;color:#6d7796;text-shadow:none}
#personal-space .movement-expander-body-v243>a.steps-world-entry>span:nth-child(2){display:grid;gap:3px;min-width:0}
#personal-space .movement-expander-body-v243>a.steps-world-entry small{display:none}
#personal-space .movement-expander-body-v243>a.steps-world-entry strong{display:block;font-size:0.9375rem;line-height:1.3;color:#65495d;margin:0}
#personal-space .movement-expander-body-v243>a.steps-world-entry [data-world-distance]{font-size:0.875rem;line-height:1.4;color:#786575}
#personal-space .movement-expander-body-v243>a.steps-world-entry>span:last-child{font-size:1.125rem;color:#786575;line-height:1}
#personal-space #home-body-preview.progress-photo-journal{display:grid;grid-template-columns:minmax(0,1fr) 117px 20px;align-items:center;gap:12px;box-sizing:border-box;min-height:162px;padding:20px;border:1px solid #d7b6cf;border-radius:24px;background:radial-gradient(ellipse at 0% 0%,#fff4e7 0%,transparent 65%),linear-gradient(115deg,#f4e2ee,#e9e1f2);text-decoration:none;box-shadow:0 7px 22px #714b600c}
#home-body-preview.progress-photo-journal h2{margin:0;font-family:inherit;font-size:clamp(1.375rem,5.6vw,1.5rem)!important;font-weight:700;line-height:1.18;letter-spacing:-.4px;color:#68455d}
.journal-card-examples-v243{display:block;min-width:0;text-align:center}
.journal-card-photos-v243{display:flex;justify-content:center;align-items:center;gap:7px}
.journal-mini-v243{display:block;position:relative;flex:0 0 54px;width:54px;height:108px;overflow:hidden;box-sizing:border-box;border:3px solid #fffaf6;border-radius:6px;background:#eee1d5;box-shadow:0 3px 7px #71556826;transform:rotate(-5deg)}
.journal-mini-v243+ .journal-mini-v243{transform:rotate(5deg)}
#home-body-preview .journal-mini-v243 img{display:block;width:200%!important;height:100%!important;max-width:none!important;object-fit:cover;object-position:left center;margin:0;border:0;border-radius:0;transform:none}
#home-body-preview .journal-mini-v243+ .journal-mini-v243 img{transform:translateX(-50%)}
.journal-card-examples-v243>small{display:block;margin-top:8px;font-size:0.875rem;line-height:1.3;color:#7c6676}
#home-body-preview.progress-photo-journal>span:last-child{font-size:1.5625rem;color:#785770}
#home-body-preview:focus-visible{outline:3px solid #80546d;outline-offset:4px}
@media(max-width:360px){.movement-expander-v243>summary{gap:10px;padding:16px}.movement-summary-icon-v243{flex-basis:32px;width:32px}.movement-expander-body-v243{padding:16px}#personal-space #home-body-preview.progress-photo-journal{grid-template-columns:minmax(0,1fr) 95px 18px;gap:8px;padding:16px}.journal-mini-v243{flex-basis:43px;width:43px;height:86px}.journal-card-photos-v243{gap:6px}}
@media(prefers-reduced-motion:reduce){.movement-summary-chevron-v243{transition:none}}

/* ux-foundation-v244.css */
/* UX review Stage 2: reading, touch targets and reflow. Feature routes are unchanged. */
:root{--ph-body:1rem;--ph-support:.875rem;--ph-panel:1.375rem;--ph-page:1.875rem;--ph-tap:3rem;--ph-nav-height:64px;--ph-muted:#66535f}
body{font-size:var(--ph-body);line-height:1.55}
#main-content .screen p:not(.eyebrow):not([class*="note"]):not([class*="help"]):not([class*="meta"]):not([class*="caption"]):not([class*="status"]):not([class*="hint"]){font-size:var(--ph-body)}
#main-content .screen h1{font-size:var(--ph-page)!important;line-height:1.2;overflow-wrap:anywhere}
#main-content .screen:not(#welcome):not(#signup) h2{font-size:var(--ph-panel)!important}
#main-content .screen h2{line-height:1.25;overflow-wrap:anywhere}
#main-content .screen :where(p,small,label,summary,legend),dialog :where(p,small,label,summary,legend){overflow-wrap:anywhere}
.screen,.screen :where(form,fieldset),dialog :where(form,fieldset){min-width:0}
.screen :where(input,select,textarea),dialog :where(input,select,textarea){box-sizing:border-box;min-width:0;max-width:100%}
:where(button,.button,[role="tab"],summary){box-sizing:border-box;min-height:var(--ph-tap)!important;min-width:var(--ph-tap)!important}
:where(button,.button,[role="tab"]){white-space:normal;overflow-wrap:anywhere;line-height:1.35}
:where(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="color"]),select,textarea){font-size:1rem;line-height:1.4;min-height:var(--ph-tap)}
textarea{height:auto;resize:vertical}
label:has(>input:is([type="checkbox"],[type="radio"])){min-height:var(--ph-tap);align-content:center}
.form-columns,.form-columns>*{min-width:0}
.screen img,dialog img{max-width:100%}
.screen :where(.panel,.gentle-card,.simple-heading,.hub-entry,.home-showroom-link){min-width:0}
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #79425e;outline-offset:3px}
/* Keep the S mark small while providing a larger target around it. */
.quick-share-s{width:3rem!important;height:3rem!important;min-width:3rem!important;min-height:3rem!important;flex-basis:3rem!important;font-size:.875rem!important}
.quick-share-s:before{inset:.625rem;border-radius:5px}
.recipe-favourite-square-v237{min-width:3rem!important;min-height:3rem!important}
.close-dialog,.shop-close,.quick-share-close{min-width:3rem!important;min-height:3rem!important}
.quick-share-heading h1,.quick-share-heading h2{flex:1;min-width:0}
/* Dialogs can grow vertically when text is enlarged. Full-screen viewers retain their layout. */
dialog:not(.journal-viewer):not(.journal-shield):not(.mirror-dialog){box-sizing:border-box;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}
dialog :where(.form-columns,.quick-share-actions,.dialog-actions){flex-wrap:wrap;gap:10px}
@media(max-width:720px){
 .mobile-nav,body.chat-open .mobile-nav{height:auto!important;min-height:calc(60px + env(safe-area-inset-bottom));grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;padding:4px 6px calc(4px + env(safe-area-inset-bottom))}
 .mobile-nav a,body.chat-open .mobile-nav a{height:auto!important;min-height:3rem;min-width:0;gap:3px;padding:3px 0}
 .mobile-nav .nav-label,body.chat-open .mobile-nav .nav-label{font-size:.84375rem!important;line-height:1.25!important;white-space:normal!important;overflow-wrap:anywhere}
 body:not(.chat-open) #main-content{padding-bottom:calc(var(--ph-nav-height) + 24px)!important}
 html{scroll-padding-bottom:calc(var(--ph-nav-height) + 24px)}
 .screen :where(.simple-heading,.meal-heading,.panel-top,.progress-section-head,.hub-steps-heading,.meal-day-heading,.graph-range){gap:12px;flex-wrap:wrap}
 .screen :where(.panel,.gentle-card){max-width:100%}
 .meal-library-tools,.meal-library-tools>*,.shopping-tools,.shopping-tools>*{min-width:0;max-width:100%}
 .meal-day-tabs{gap:6px;grid-template-columns:repeat(7,minmax(0,1fr))}
 .meal-day-tabs button{min-width:3rem;white-space:normal}
 .member-keypad{grid-template-columns:repeat(3,minmax(0,1fr))}
 .member-keypad button{height:auto;min-height:3.25rem}
 .steps-world-entry,.member-contribution-link,.home-showroom-link,.body-preview-link{height:auto}
}
@media(max-width:380px){
 .form-columns{grid-template-columns:minmax(0,1fr)}
 .quick-share-actions>.button{flex:1 1 auto}
}
@media(max-width:419px){.meal-day-tabs{grid-template-columns:repeat(4,minmax(0,1fr))!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{scroll-behavior:auto!important}}
