.mj{--mj-gutter:24px;--mj-cream:#fff6ec;--mj-cream-2:#fed;--mj-green:#2f7a3f;--mj-green-bg:#e5f4e3;--mj-orange:#c2410c;--mj-orange-bg:#ffead9;--mj-rose:#be185d;--mj-rose-bg:#fde7f1;--mj-blue:#1d4ed8;--mj-blue-bg:#e8effd;background:var(--ds-bg);color:var(--ds-text);font-family:var(--ds-font-body);-webkit-font-smoothing:antialiased;padding-bottom:var(--ds-space-12);display:block}.dark-mode .mj{--mj-cream:#231c16;--mj-cream-2:#2b2119;--mj-green:#86efac;--mj-green-bg:#86efac21;--mj-orange:#fdba74;--mj-orange-bg:#fdba7424;--mj-rose:#f9a8d4;--mj-rose-bg:#f9a8d424;--mj-blue:#93c5fd;--mj-blue-bg:#93c5fd24}.mj *,.mj :before,.mj :after{box-sizing:border-box}.mj :focus-visible{box-shadow:var(--ds-focus-ring);outline:none}.mj img{max-width:100%}.mj-wrap{width:100%;max-width:1200px;padding:0 var(--mj-gutter);margin:0 auto}@media (max-width:599px){.mj{--mj-gutter:16px}}@keyframes mj-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes mj-swap{0%{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}.mj-hero{background:linear-gradient(180deg, var(--mj-cream) 0%, var(--mj-cream-2) 70%, var(--ds-bg) 100%);padding:18px 0 28px}.mj-crumbs{color:var(--ds-text-3);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:18px;font-size:.82rem;display:flex}.mj-crumbs a{color:inherit;text-decoration:none}.mj-crumbs a:hover{text-decoration:underline}.mj-crumbs [aria-current]{color:var(--ds-text);font-weight:600}.mj-week{align-items:center;gap:10px;display:flex}.mj-week__arrow{border-radius:var(--ds-radius-sm);background:var(--ds-surface);width:44px;height:44px;color:var(--ds-text);box-shadow:var(--ds-shadow-sm);transition:transform var(--ds-duration) var(--ds-ease), color var(--ds-duration) var(--ds-ease);flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.mj-week__arrow:hover{color:var(--ds-accent-text);transform:translateY(-2px)}.mj-week__arrow.is-off{opacity:.35;box-shadow:none;pointer-events:none}.mj-week__days{flex:1;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.mj-week__days li{min-width:0;margin:0;padding:0;list-style:none}.mj .mj-dayl{border-radius:var(--ds-radius-md);background:var(--ds-surface);color:var(--ds-text);box-shadow:var(--ds-shadow-sm);transition:transform var(--ds-duration) var(--ds-ease), box-shadow var(--ds-duration) var(--ds-ease), border-color var(--ds-duration) var(--ds-ease), background var(--ds-duration) var(--ds-ease);border:2px solid #0000;flex-direction:column;align-items:center;gap:2px;padding:12px 4px 10px;text-decoration:none;display:flex;position:relative}.mj .mj-dayl:hover{box-shadow:var(--ds-shadow-md);transform:translateY(-3px)}.mj-dayl__name{letter-spacing:.06em;text-transform:uppercase;color:var(--ds-text-3);font-size:.72rem;font-weight:700}.mj-dayl__num{font-family:var(--ds-font-display);font-size:1.6rem;font-weight:600;line-height:1.15}.mj-dayl__mark{width:24px;height:24px;color:var(--ds-text-3);border-radius:8px;place-items:center;margin-top:4px;font-size:.95rem;display:grid}.mj-dayl__mark--veggie{background:var(--mj-green-bg);color:var(--mj-green)}.mj-dayl__mark--poisson{background:var(--mj-blue-bg);color:var(--mj-blue)}.mj-dayl__mark--weekend{background:var(--mj-rose-bg);color:var(--mj-rose)}.mj-dayl__mark--fete{background:var(--mj-orange-bg)}.mj-dayl__emoji{font-size:.85rem;line-height:1}.mj .mj-dayl.is-today .mj-dayl__name{color:var(--ds-accent-text)}.mj .mj-dayl.is-on{border-color:var(--ds-accent);background:var(--ds-accent-soft);box-shadow:0 10px 24px -12px #f26b4b8c}.mj .mj-dayl.is-on .mj-dayl__num{color:var(--ds-accent-text)}.mj .mj-dayl.is-later{opacity:.55;box-shadow:none;border:2px dashed var(--ds-border-strong);background:0 0}.mj .mj-dayl.is-none{opacity:.6}@media (max-width:719px){.mj-week{gap:6px}.mj-week__arrow{border-radius:14px;width:34px;height:44px}.mj-week__days{gap:5px}.mj .mj-dayl{border-radius:16px;padding:10px 0 8px}.mj-dayl__name{letter-spacing:.03em;font-size:.62rem}.mj-dayl__num{font-size:1.25rem}.mj-dayl__mark{border-radius:7px;width:22px;height:22px;font-size:.85rem}}@media (max-width:380px){.mj-week__arrow{display:none}}.mj-day{transition:opacity .2s var(--ds-ease);margin-top:8px}.mj-day.is-loading{opacity:.45;pointer-events:none}.mj-day.is-entering{animation:mj-in .42s var(--ds-ease) both}.mj-head{padding:8px 0 26px}.mj-theme{border-radius:var(--ds-radius-badge);background:var(--mj-orange-bg);color:var(--mj-orange);align-items:center;gap:8px;margin:0 0 14px;padding:7px 14px;font-size:.82rem;font-weight:700;display:inline-flex}.mj-theme--veggie{background:var(--mj-green-bg);color:var(--mj-green)}.mj-theme--poisson{background:var(--mj-blue-bg);color:var(--mj-blue)}.mj-theme--weekend{background:var(--mj-rose-bg);color:var(--mj-rose)}.mj-theme--event{background:color-mix(in srgb, var(--mj-event) 14%, var(--ds-surface));color:var(--mj-event)}.dark-mode .mj-theme--event{color:color-mix(in srgb, var(--mj-event) 60%, #fff)}.mj-title{max-width:22ch;font-family:var(--ds-font-display);letter-spacing:-.015em;color:var(--ds-text);text-wrap:balance;margin:0;font-size:clamp(1.9rem,1.2rem + 3vw,3.2rem);font-weight:600;line-height:1.08}.mj-title em{font-family:var(--ds-font-display);color:var(--ds-accent-text);font-style:normal;display:inline}.mj-lead{max-width:60ch;color:var(--ds-text-2);margin:14px 0 0;font-size:1.02rem;line-height:1.6}.mj-stats{flex-wrap:wrap;gap:10px;margin:22px 0 0;padding:0;list-style:none;display:flex}.mj-stats li{border-radius:var(--ds-radius-md);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm);grid-template-rows:auto auto;grid-template-columns:auto 1fr;align-items:center;column-gap:12px;margin:0;padding:12px 18px 12px 14px;list-style:none;display:grid}.mj-stats .cb-icon{box-sizing:border-box;background:var(--ds-accent-soft);width:38px;height:38px;color:var(--ds-accent-text);border-radius:13px;grid-row:1/3;padding:9px}.mj-stats strong{font-family:var(--ds-font-display);color:var(--ds-text);white-space:nowrap;font-size:1.02rem;font-weight:600;line-height:1.2}.mj-stats span{color:var(--ds-text-3);font-size:.78rem}.mj-actions{flex-wrap:wrap;gap:10px;margin-top:18px;display:flex}.mj .mj-btn{border:1px solid var(--ds-border-strong);border-radius:var(--ds-radius-btn);background:var(--ds-surface);min-height:48px;color:var(--ds-text);font-family:var(--ds-font-body);cursor:pointer;transition:transform var(--ds-duration) var(--ds-ease), background var(--ds-duration) var(--ds-ease), box-shadow var(--ds-duration) var(--ds-ease);justify-content:center;align-items:center;gap:10px;padding:0 20px;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.mj .mj-btn:hover{box-shadow:var(--ds-shadow-md);transform:translateY(-2px)}.mj .mj-btn--primary{background:var(--ds-primary);color:var(--ds-on-primary);border-color:#0000}.mj .mj-btn--primary:hover{background:var(--ds-primary-hover)}.mj-short{display:none}@media (max-width:599px){.mj-stats li{flex:calc(50% - 5px);min-width:0}.mj-actions .mj-btn{flex:1 1 0;padding:0 14px}.mj-actions .mj-btn--primary{flex-grow:1.6}.mj-long{display:none}.mj-short{display:inline}}.mj-profile{border-radius:var(--ds-radius-md);background:var(--mj-green-bg);max-width:560px;color:var(--ds-text);align-items:center;gap:14px;margin:18px 0 0;padding:12px 12px 12px 14px;display:flex}.mj-profile__icon{background:var(--ds-surface);width:42px;height:42px;color:var(--mj-green);border-radius:14px;flex:none;place-items:center;font-size:1.35rem;display:grid}.mj-profile__text{min-width:0;color:var(--ds-text-2);flex:1;gap:2px;margin:0;font-size:.88rem;line-height:1.4;display:grid}.mj-profile__text strong{color:var(--ds-text);font-size:.95rem}.mj .mj-profile__btn{border-radius:var(--ds-radius-btn);background:var(--ds-surface);min-height:42px;color:var(--ds-text);font-family:var(--ds-font-body);box-shadow:var(--ds-shadow-sm);transition:transform var(--ds-duration) var(--ds-ease), box-shadow var(--ds-duration) var(--ds-ease), color var(--ds-duration) var(--ds-ease);flex:none;align-items:center;gap:8px;padding:0 16px;font-size:.88rem;font-weight:600;text-decoration:none;display:inline-flex}.mj .mj-profile__btn:hover{box-shadow:var(--ds-shadow-md);color:var(--ds-accent-text);transform:translateY(-2px)}.mj-profile--setup{background:var(--ds-primary-soft)}.mj-profile--setup .mj-profile__icon{color:var(--ds-primary-text)}@media (max-width:479px){.mj-profile{flex-wrap:wrap}.mj-profile__text{flex-basis:calc(100% - 70px)}.mj .mj-profile__btn{flex:100%;justify-content:center}}.mj-courses{gap:var(--ds-space-6);counter-reset:mj;grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}@media (min-width:720px){.mj-courses{gap:var(--ds-space-5);grid-template-columns:repeat(3,minmax(0,1fr))}}.mj-course{flex-direction:column;gap:12px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.mj-course__head{align-items:center;gap:10px;min-height:44px;display:flex}.mj-course__icon{background:var(--mj-orange-bg);width:40px;height:40px;color:var(--mj-orange);border-radius:14px;flex:none;place-items:center;font-size:1.4rem;display:grid}.mj-course--entree .mj-course__icon{background:var(--mj-green-bg);color:var(--mj-green)}.mj-course--dessert .mj-course__icon{background:var(--mj-rose-bg);color:var(--mj-rose)}.mj-course__label{font-family:var(--ds-font-display);color:var(--ds-text);flex:1;margin:0;font-size:1.15rem;font-weight:600}.mj .mj-swap{border:1px solid var(--ds-border);border-radius:var(--ds-radius-btn);background:var(--ds-surface);min-height:40px;color:var(--ds-text-2);cursor:pointer;font-family:var(--ds-font-body);transition:color var(--ds-duration) var(--ds-ease), border-color var(--ds-duration) var(--ds-ease);align-items:center;gap:8px;padding:0 14px;font-size:.85rem;font-weight:600;display:inline-flex}.mj .mj-swap:hover{color:var(--ds-accent-text);border-color:var(--ds-accent)}.mj .mj-swap .cb-icon{transition:transform .5s var(--ds-ease)}.mj .mj-swap:active .cb-icon{transform:rotate(180deg)}.mj-swap__count{background:var(--ds-accent-soft);color:var(--ds-accent-text);border-radius:8px;padding:2px 7px;font-size:.75rem}.mj-course__card{min-width:0}.mj-course__card.is-entering{animation:mj-swap .38s var(--ds-ease) both}.mj-course__card .ds-recipe{aspect-ratio:4/5}@media (max-width:719px){.mj-course__card .ds-recipe{aspect-ratio:5/4}}.mj-course__note{color:var(--mj-green);align-items:center;gap:8px;margin:0;font-size:.85rem;font-weight:600;display:flex}.mj-plan{margin-top:var(--ds-space-6);border-radius:var(--ds-radius-lg);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm);padding:20px 24px}.mj-plan__title{font-family:var(--ds-font-display);color:var(--ds-text);align-items:center;gap:10px;margin:0 0 12px;font-size:1.05rem;font-weight:600;display:flex}.mj-plan__title .cb-icon{color:var(--ds-accent-text)}.mj-plan__steps{counter-reset:mj-step;gap:8px;margin:0;padding:0;list-style:none;display:grid}.mj-plan__steps li{color:var(--ds-text-2);counter-increment:mj-step;margin:0;padding-left:38px;line-height:1.55;list-style:none;position:relative}.mj-plan__steps li:before{content:counter(mj-step);background:var(--ds-accent-soft);width:26px;height:26px;color:var(--ds-accent-text);border-radius:9px;place-items:center;font-size:.8rem;font-weight:700;display:grid;position:absolute;top:-1px;left:0}.mj-empty{text-align:center;border-radius:var(--ds-radius-lg);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm);flex-direction:column;align-items:center;gap:10px;padding:48px 20px;display:flex}.mj-empty__icon{background:var(--ds-accent-soft);width:64px;height:64px;color:var(--ds-accent-text);border-radius:22px;place-items:center;font-size:1.6rem;display:grid}.mj-empty__title{font-family:var(--ds-font-display);color:var(--ds-text);margin:6px 0 0;font-size:1.25rem;font-weight:600}.mj-empty__text{max-width:46ch;color:var(--ds-text-2);margin:0 0 8px;line-height:1.6}.mj-ad{margin:var(--ds-space-10) 0 0}.mj-section{margin-top:clamp(40px,6vw,64px)}.mj-section__head{margin-bottom:var(--ds-space-5)}.mj-section__title{font-family:var(--ds-font-display);letter-spacing:-.01em;color:var(--ds-text);text-wrap:balance;margin:0;font-size:clamp(1.4rem,1.05rem + 1.3vw,2rem);font-weight:600;line-height:1.15}.mj-section__lead{max-width:64ch;color:var(--ds-text-2);margin:8px 0 0;line-height:1.6}.mj-weeklist__days{border-radius:var(--ds-radius-lg);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm);gap:0;margin:0;padding:6px 0;list-style:none;display:grid;overflow:hidden}.mj-wl{border-top:1px solid var(--ds-border);transition:background var(--ds-duration) var(--ds-ease);grid-template-columns:minmax(0,220px) minmax(0,1fr);align-items:start;gap:8px 24px;margin:0;padding:16px 24px;list-style:none;display:grid}.mj-wl:first-child{border-top:0}.mj-wl.is-on{background:var(--mj-cream)}.mj .mj-wl__day{color:var(--ds-text);flex-direction:column;align-items:flex-start;gap:6px;text-decoration:none;display:flex}.mj-wl__date{font-family:var(--ds-font-display);font-size:.98rem;font-weight:600}.mj .mj-wl__day:hover .mj-wl__date{color:var(--ds-accent-text)}.mj-wl__tag{background:var(--ds-accent);color:var(--ds-on-accent);border-radius:8px;padding:3px 9px;font-size:.72rem;font-weight:700}.mj-wl__tag--soft{background:var(--ds-surface-2);color:var(--ds-text-2)}.mj-wl__dishes{gap:6px;margin:0;padding:0;list-style:none;display:grid}.mj-wl__dishes li{align-items:baseline;gap:10px;min-width:0;margin:0;padding:0;list-style:none;display:flex}.mj-wl__type{letter-spacing:.04em;text-transform:uppercase;color:var(--mj-orange);flex:0 0 64px;font-size:.72rem;font-weight:700}.mj-wl__type--entree{color:var(--mj-green)}.mj-wl__type--dessert{color:var(--mj-rose)}.mj .mj-wl__dishes a{min-width:0;color:var(--ds-text);line-height:1.4;text-decoration:none}.mj .mj-wl__dishes a:hover{color:var(--ds-primary-text);text-decoration:underline}.mj-wl__none{color:var(--ds-text-3);margin:0;font-size:.9rem}@media (max-width:599px){.mj-wl{grid-template-columns:minmax(0,1fr);padding:14px 18px}.mj .mj-wl__day{flex-flow:wrap;align-items:center}}.mj-how__grid{gap:var(--ds-space-4);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}@media (min-width:640px){.mj-how__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:1000px){.mj-how__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.mj-how__item{border-radius:var(--ds-radius-lg);background:var(--ds-surface);box-shadow:var(--ds-shadow-sm);flex-direction:column;gap:8px;margin:0;padding:22px;list-style:none;display:flex}.mj-how__item strong{font-family:var(--ds-font-display);color:var(--ds-text);font-size:1rem;font-weight:600}.mj-how__item>span:last-child{color:var(--ds-text-2);font-size:.92rem;line-height:1.55}.mj-how__icon{border-radius:15px;place-items:center;width:44px;height:44px;margin-bottom:4px;font-size:1.5rem;display:grid}.mj-how__icon--green{background:var(--mj-green-bg);color:var(--mj-green)}.mj-how__icon--orange{background:var(--mj-orange-bg);color:var(--mj-orange)}.mj-how__icon--blue{background:var(--mj-blue-bg);color:var(--mj-blue)}.mj-how__icon--rose{background:var(--mj-rose-bg);color:var(--mj-rose)}.mj-cta{margin-top:var(--ds-space-5);border-radius:var(--ds-radius-lg);background:linear-gradient(135deg, var(--mj-cream) 0%, var(--ds-accent-soft) 100%);flex-wrap:wrap;align-items:center;gap:16px 20px;padding:22px 24px;display:flex}.mj-cta__icon{background:var(--ds-surface);width:52px;height:52px;color:var(--ds-accent-text);border-radius:18px;place-items:center;font-size:1.7rem;display:grid}.mj-cta__text{flex-direction:column;flex:320px;gap:4px;min-width:0;display:flex}.mj-cta__text strong{font-family:var(--ds-font-display);color:var(--ds-text);font-size:1.05rem;font-weight:600}.mj-cta__text span{color:var(--ds-text-2);line-height:1.55}@media (prefers-reduced-motion:reduce){.mj-day.is-entering,.mj-course__card.is-entering{animation:none}.mj .mj-dayl,.mj .mj-btn,.mj-week__arrow{transition:none}.mj .mj-dayl:hover,.mj .mj-btn:hover,.mj-week__arrow:hover{transform:none}}
