.LoginModal-module__ODbXta__container{background:linear-gradient(to bottom right,#fff,#f9fafc);padding:24px}.LoginModal-module__ODbXta__sideInfo{flex-direction:column;justify-content:center;gap:16px;display:flex}.LoginModal-module__ODbXta__logoBox{flex-direction:column;gap:16px;display:flex}.LoginModal-module__ODbXta__logoIcon{background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 4px 10px rgba(0,0,0,.1)}.LoginModal-module__ODbXta__formSection{padding:16px}.LoginModal-module__ODbXta__header,.LoginModal-module__ODbXta__rememberRow{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.LoginModal-module__ODbXta__socialTitle{text-align:center;margin-bottom:8px}.LoginModal-module__ODbXta__registerText{text-align:center}
.RecipePlaceholder-module__A-dQwa__root{width:100%;height:100%;position:relative;overflow:hidden}.RecipePlaceholder-module__A-dQwa__noise{mix-blend-mode:overlay;background:repeating-linear-gradient(45deg,rgba(255,255,255,.04) 0,rgba(255,255,255,.04) 2px,transparent 2px,transparent 5px);position:absolute;top:0;bottom:0;left:0;right:0}.RecipePlaceholder-module__A-dQwa__vignette{background:radial-gradient(120% 80% at 50% 40%,transparent 50%,rgba(0,0,0,.15) 100%);position:absolute;top:0;bottom:0;left:0;right:0}.RecipePlaceholder-module__A-dQwa__categoryStamp{letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.22);border-radius:6px;padding:4px 8px;font-size:10px;position:absolute;top:12px;left:12px}
.planChip-module__RGmhjW__root{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);cursor:grab;border-radius:10px;align-items:center;gap:8px;padding:6px;display:flex}.planChip-module__RGmhjW__root:active{cursor:grabbing}.planChip-module__RGmhjW__compact{border-radius:8px;padding:5px}.planChip-module__RGmhjW__drag{color:var(--ink-3);cursor:grab;flex-shrink:0;place-items:center;display:grid}.planChip-module__RGmhjW__thumb{border-radius:7px;flex-shrink:0;width:40px;height:40px;overflow:hidden}.planChip-module__RGmhjW__compact .planChip-module__RGmhjW__thumb{width:36px;height:36px}.planChip-module__RGmhjW__info{flex-direction:column;flex:1;justify-content:space-between;gap:3px;min-width:0;display:flex}.planChip-module__RGmhjW__title{color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;font-weight:600;line-height:1.25;text-decoration:none;display:-webkit-box;overflow:hidden}.planChip-module__RGmhjW__title:hover{color:var(--accent)}.planChip-module__RGmhjW__meta{color:var(--ink-3);font-size:10px}.planChip-module__RGmhjW__remove{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;place-items:center;padding:2px;transition:color .15s;display:grid}.planChip-module__RGmhjW__remove:hover{color:var(--accent)}
.RecipeCard-module__Qb5n_G__root{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:column;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.RecipeCard-module__Qb5n_G__root:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.RecipeCard-module__Qb5n_G__root:active{transform:translateY(0)}.RecipeCard-module__Qb5n_G__featured{border-radius:20px}.RecipeCard-module__Qb5n_G__featuredBadge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:var(--ink);z-index:2;pointer-events:none;background:rgba(255,255,255,.92);border-radius:999px;align-items:center;gap:5px;padding:5px 10px;font-size:11.5px;font-weight:600;display:flex;position:absolute;top:14px;left:14px}.RecipeCard-module__Qb5n_G__featuredBadge svg{color:var(--amber)}.RecipeCard-module__Qb5n_G__imageLink{text-decoration:none;display:block}.RecipeCard-module__Qb5n_G__imageWrap{flex-shrink:0;width:100%;position:relative;overflow:hidden}.RecipeCard-module__Qb5n_G__categoryStamp{letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(0,0,0,.22);border-radius:6px;padding:4px 8px;font-size:10px;position:absolute;top:12px;left:12px}.RecipeCard-module__Qb5n_G__favBtn{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);width:30px;height:30px;color:var(--ink-3);cursor:pointer;z-index:2;background:rgba(255,255,255,.9);border:none;border-radius:999px;place-items:center;transition:color .15s;display:grid;position:absolute;top:10px;right:10px}.RecipeCard-module__Qb5n_G__favBtn:hover,.RecipeCard-module__Qb5n_G__favBtnActive{color:var(--accent)}.RecipeCard-module__Qb5n_G__featured .RecipeCard-module__Qb5n_G__favBtn{width:36px;height:36px;top:14px;right:14px}.RecipeCard-module__Qb5n_G__body{color:inherit;flex-direction:column;gap:4px;padding:11px 12px 13px;text-decoration:none;display:flex}.RecipeCard-module__Qb5n_G__featured .RecipeCard-module__Qb5n_G__body{padding:14px 16px 16px}.RecipeCard-module__Qb5n_G__meta{color:var(--ink-3);align-items:center;gap:10px;margin-bottom:4px;font-size:11.5px;display:flex}.RecipeCard-module__Qb5n_G__metaCategory{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:11px;font-weight:500}.RecipeCard-module__Qb5n_G__metaRating{color:var(--amber);align-items:center;gap:3px;font-size:12px;font-weight:600;display:inline-flex}.RecipeCard-module__Qb5n_G__title{font-family:var(--serif);color:var(--ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;font-weight:500;line-height:1.3;display:-webkit-box;overflow:hidden}.RecipeCard-module__Qb5n_G__titleFeatured{-webkit-line-clamp:3;font-size:28px;line-height:1.15}.RecipeCard-module__Qb5n_G__description{color:var(--ink-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.RecipeCard-module__Qb5n_G__metaSmall{align-items:center;gap:6px;margin-top:2px;display:flex}.RecipeCard-module__Qb5n_G__metaCategorySmall{letter-spacing:.06em;text-transform:uppercase;color:var(--accent);font-size:10.5px;font-weight:500}.RecipeCard-module__Qb5n_G__tagRow{flex-wrap:wrap;gap:4px;margin-top:6px;display:flex}.RecipeCard-module__Qb5n_G__tagPill{border-radius:var(--radius-sm,6px);background:var(--tag-bg,rgba(190,89,55,.09));border:1px solid var(--tag-border,rgba(190,89,55,.25));color:var(--accent);white-space:nowrap;text-overflow:ellipsis;letter-spacing:.01em;align-items:center;max-width:120px;padding:3px 7px;font-size:10px;font-weight:500;line-height:1.4;display:inline-flex;overflow:hidden}.RecipeCard-module__Qb5n_G__tagOverflow{border-radius:var(--radius-sm,6px);background:var(--bg-soft);border:1px solid var(--line);color:var(--ink-3);white-space:nowrap;flex-shrink:0;align-items:center;padding:3px 7px;font-size:10px;font-weight:500;line-height:1.4;display:inline-flex}.RecipeCard-module__Qb5n_G__rootHorizontal{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;flex-direction:row;height:100%;transition:box-shadow .2s,transform .2s;display:flex;position:relative;overflow:hidden}.RecipeCard-module__Qb5n_G__rootHorizontal:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.RecipeCard-module__Qb5n_G__horizontalImageLink{flex-shrink:0;width:150px;text-decoration:none;display:block;position:relative;overflow:hidden}.RecipeCard-module__Qb5n_G__horizontalBody{color:inherit;flex-direction:column;flex:1;gap:4px;min-width:0;padding:14px 14px 12px;text-decoration:none;display:flex}.RecipeCard-module__Qb5n_G__horizontalFooter{justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px;display:flex}.RecipeCard-module__Qb5n_G__favBtnInline{cursor:pointer;width:28px;height:28px;color:var(--ink-3);background:0 0;border:none;border-radius:999px;place-items:center;transition:color .15s;display:grid}.RecipeCard-module__Qb5n_G__favBtnInline:hover{color:var(--accent)}@media (min-width:768px) and (max-width:1099px){.RecipeCard-module__Qb5n_G__rootHorizontal{flex-direction:column}.RecipeCard-module__Qb5n_G__horizontalImageLink{width:100%;height:160px}}
.addMealModal-module__MW74FW__overlay{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:rgba(20,15,10,.45);place-items:center;padding:40px 16px;display:grid;position:fixed;top:0;bottom:0;left:0;right:0}.addMealModal-module__MW74FW__modal{background:var(--bg-elev);border:1px solid var(--line);width:100%;max-width:560px;max-height:78vh;box-shadow:var(--shadow-md);border-radius:18px;flex-direction:column;display:flex;overflow:hidden}.addMealModal-module__MW74FW__header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 18px 14px;display:flex}.addMealModal-module__MW74FW__title{font-family:var(--serif);color:var(--ink);font-variation-settings:"opsz" 60;margin:0 0 4px;font-size:22px;font-weight:500}.addMealModal-module__MW74FW__subtitle{color:var(--ink-3);font-size:13px}.addMealModal-module__MW74FW__close{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:8px;flex-shrink:0;place-items:center;margin-top:2px;padding:4px;transition:color .15s;display:grid}.addMealModal-module__MW74FW__close:hover{color:var(--ink)}.addMealModal-module__MW74FW__searchWrap{background:var(--bg);border:1px solid var(--line);border-radius:10px;align-items:center;gap:8px;margin:12px 18px;padding:10px 12px;display:flex}.addMealModal-module__MW74FW__searchIcon{color:var(--ink-3);flex-shrink:0;place-items:center;display:grid}.addMealModal-module__MW74FW__search{color:var(--ink);font-size:14px;font-family:var(--sans);background:0 0;border:none;outline:none;flex:1}.addMealModal-module__MW74FW__search::placeholder{color:var(--ink-3)}.addMealModal-module__MW74FW__list{flex:1;padding:0 8px 12px;overflow-y:auto}.addMealModal-module__MW74FW__empty{color:var(--ink-3);text-align:center;padding:24px;font-size:13px}.addMealModal-module__MW74FW__item{text-align:left;cursor:pointer;background:0 0;border:none;border-radius:12px;align-items:center;gap:12px;width:100%;padding:10px;transition:background .15s;display:flex}.addMealModal-module__MW74FW__item:hover{background:var(--bg-soft)}.addMealModal-module__MW74FW__itemThumb{border-radius:10px;flex-shrink:0;width:52px;height:52px;overflow:hidden}.addMealModal-module__MW74FW__itemInfo{flex:1;min-width:0}.addMealModal-module__MW74FW__itemTitle{color:var(--ink);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:14px;font-weight:600;display:block;overflow:hidden}.addMealModal-module__MW74FW__itemMeta{color:var(--ink-3);gap:6px;font-size:12px;display:flex}.addMealModal-module__MW74FW__itemAdd{color:var(--accent);flex-shrink:0;place-items:center;display:grid}
.MobileRecipeCard-module__jRv5JG__root{background:var(--bg-elev);border:1px solid var(--line);border-radius:14px;position:relative;overflow:hidden}.MobileRecipeCard-module__jRv5JG__cardLink{color:inherit;text-decoration:none;display:flex}.MobileRecipeCard-module__jRv5JG__imageCol{flex-shrink:0;align-self:stretch;width:124px;min-height:120px;position:relative;overflow:hidden}.MobileRecipeCard-module__jRv5JG__content{flex-direction:column;flex:1;gap:6px;min-width:0;padding:12px 14px;display:flex}.MobileRecipeCard-module__jRv5JG__header{align-items:flex-start;gap:8px;display:flex}.MobileRecipeCard-module__jRv5JG__headerText{flex:1;min-width:0}.MobileRecipeCard-module__jRv5JG__category{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:4px;font-size:9.5px}.MobileRecipeCard-module__jRv5JG__title{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;font-variation-settings:"opsz" 60;text-wrap:pretty;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:17px;font-weight:500;line-height:1.18;display:-webkit-box;overflow:hidden}.MobileRecipeCard-module__jRv5JG__contentWithFav{padding-right:42px}.MobileRecipeCard-module__jRv5JG__favBtn{border:1px solid var(--line);background:var(--bg-elev);cursor:pointer;width:28px;height:28px;color:var(--ink-3);border-radius:999px;place-items:center;transition:color .15s;display:grid;position:absolute;top:12px;right:14px}.MobileRecipeCard-module__jRv5JG__favBtn:hover,.MobileRecipeCard-module__jRv5JG__favBtnActive{color:var(--accent)}.MobileRecipeCard-module__jRv5JG__tags{flex-wrap:wrap;gap:4px;display:flex}.MobileRecipeCard-module__jRv5JG__tagPill{background:var(--accent-soft);color:var(--accent-ink);border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.MobileRecipeCard-module__jRv5JG__meta{color:var(--ink-3);align-items:center;gap:8px;margin-top:auto;font-size:11.5px;display:flex}.MobileRecipeCard-module__jRv5JG__metaRating{color:var(--amber);align-items:center;gap:3px;font-weight:600;display:inline-flex}.MobileRecipeCard-module__jRv5JG__metaItem{align-items:center;gap:4px;display:inline-flex}.MobileRecipeCard-module__jRv5JG__metaDivider{background:var(--line-strong);flex-shrink:0;width:1px;height:10px}.MobileRecipeCard-module__jRv5JG__ingredientsToggle{background:var(--bg);border:none;border-top:1px dashed var(--line-strong);cursor:pointer;width:100%;color:var(--ink-2);justify-content:space-between;align-items:center;padding:8px 14px;display:flex}.MobileRecipeCard-module__jRv5JG__toggleLabel{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);font-size:9.5px}.MobileRecipeCard-module__jRv5JG__ingredientsList{background:var(--bg);padding:10px 14px 12px}.MobileRecipeCard-module__jRv5JG__ingredientRow{border-bottom:1px dotted var(--line);align-items:baseline;gap:6px;padding:3px 0;font-size:12.5px;display:flex}.MobileRecipeCard-module__jRv5JG__ingredientRow:last-child{border-bottom:none}.MobileRecipeCard-module__jRv5JG__ingredientName{color:var(--ink)}.MobileRecipeCard-module__jRv5JG__ingredientAmount{text-align:right;color:var(--ink-3);font-variant-numeric:tabular-nums;flex:1}
.CalorieNormCard-module__LTb3TW__card{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius-lg,20px);box-shadow:var(--shadow-sm);margin:16px 0;padding:20px}.CalorieNormCard-module__LTb3TW__calRow{align-items:baseline;gap:10px;margin-bottom:16px;display:flex}.CalorieNormCard-module__LTb3TW__calValue{font-family:var(--serif);color:var(--ink);font-variation-settings:"opsz" 120;font-size:44px;font-weight:500;line-height:1}.CalorieNormCard-module__LTb3TW__calUnit{color:var(--ink-2);font-size:14px}.CalorieNormCard-module__LTb3TW__macros{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.CalorieNormCard-module__LTb3TW__macro{background:var(--bg-soft);border-radius:var(--radius-md,12px);flex-direction:column;align-items:center;padding:10px 4px;display:flex}.CalorieNormCard-module__LTb3TW__macroValue{font-family:var(--serif);color:var(--ink);font-size:22px;font-weight:500;line-height:1.1}.CalorieNormCard-module__LTb3TW__macroLabel{color:var(--ink-3);margin-top:4px;font-size:12px}.CalorieNormCard-module__LTb3TW__cta{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.CalorieNormCard-module__LTb3TW__ctaTitle{font-family:var(--serif);color:var(--ink);margin:0;font-size:20px;font-weight:500}.CalorieNormCard-module__LTb3TW__ctaSub{color:var(--ink-2);margin:0 0 8px;font-size:14px;line-height:1.5}.CalorieNormCard-module__LTb3TW__ctaBtn{background:var(--accent);color:#fff;border-radius:var(--radius-md,12px);padding:10px 18px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}
.calendar-module__r5qhga__pageHeader{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.calendar-module__r5qhga__weekLabel{font-family:var(--mono);color:var(--accent);letter-spacing:.04em;margin-bottom:8px;font-size:12px}.calendar-module__r5qhga__heading{font-family:var(--serif);color:var(--ink);font-variation-settings:"opsz" 144;letter-spacing:-.02em;margin:0;font-size:36px;font-weight:500;line-height:1}.calendar-module__r5qhga__headingAccent{color:var(--accent);font-style:italic;font-weight:400}.calendar-module__r5qhga__toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.calendar-module__r5qhga__viewToggle{background:var(--bg-elev);border:1px solid var(--line);border-radius:10px;gap:2px;padding:3px;display:flex}.calendar-module__r5qhga__viewBtn{color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:7px 14px;font-size:13px;font-weight:500;transition:background .15s}.calendar-module__r5qhga__viewBtnActive{background:var(--bg-soft);color:var(--ink)}.calendar-module__r5qhga__toolBtn{background:var(--bg-elev);border:1px solid var(--line);color:var(--ink);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:8px 12px;font-size:13px;font-weight:500;transition:background .15s;display:inline-flex}.calendar-module__r5qhga__toolBtn:hover:not(:disabled){background:var(--bg-soft)}.calendar-module__r5qhga__toolBtn:disabled{opacity:.4;cursor:not-allowed}.calendar-module__r5qhga__toolBtnLabel{display:none}@media (min-width:600px){.calendar-module__r5qhga__toolBtnLabel{display:inline}}.calendar-module__r5qhga__nav{align-items:center;gap:8px;margin-bottom:16px;display:flex}.calendar-module__r5qhga__navBtn{border:1px solid var(--line);background:var(--bg-elev);cursor:pointer;color:var(--ink-2);border-radius:10px;padding:7px 12px;font-size:13px;transition:background .15s}.calendar-module__r5qhga__navBtn:hover{background:var(--bg-soft)}.calendar-module__r5qhga__rangeLabel{text-align:center;font-family:var(--serif);color:var(--ink);font-variation-settings:"opsz" 60;flex:1;font-size:16px}.calendar-module__r5qhga__cartFlash{background:var(--bg-soft);border:1px solid var(--line);color:var(--ink);border-radius:12px;margin:-8px 0 12px;padding:10px 14px;font-size:14px}.calendar-module__r5qhga__weekSummary{display:none}@media (min-width:900px){.calendar-module__r5qhga__weekSummary{background:var(--bg-elev);border:1px solid var(--line);box-shadow:var(--shadow-sm);border-radius:16px;margin-bottom:20px;display:flex;overflow:hidden}}.calendar-module__r5qhga__weekSummaryItem{border-right:1px solid var(--line);flex:1;padding:16px 18px}.calendar-module__r5qhga__weekSummaryWater{min-width:200px;padding:16px 22px}.calendar-module__r5qhga__weekSummaryLabel{font-family:var(--mono);color:var(--ink-3);letter-spacing:.03em;margin-bottom:6px;font-size:11px}.calendar-module__r5qhga__weekSummaryValue{font-family:var(--serif);color:var(--ink);margin-bottom:8px;font-size:24px;font-weight:500;line-height:1.1}.calendar-module__r5qhga__weekSummaryUnit{color:var(--ink-3);font-size:12px;font-family:var(--sans);font-weight:400}.calendar-module__r5qhga__summaryBar{background:var(--bg-soft);border-radius:999px;height:4px;overflow:hidden}.calendar-module__r5qhga__summaryBarFill{border-radius:999px;max-width:100%;height:100%;transition:width .3s}.calendar-module__r5qhga__dayStrip{scrollbar-width:none;gap:6px;padding-bottom:16px;display:flex;overflow-x:auto}.calendar-module__r5qhga__dayStrip::-webkit-scrollbar{display:none}.calendar-module__r5qhga__dayBtn{background:var(--bg-elev);border:1px solid var(--line);min-width:48px;color:var(--ink);cursor:pointer;border-radius:12px;flex-direction:column;flex:1;align-items:center;gap:4px;padding:10px 8px;transition:background .15s,border-color .15s;display:flex}.calendar-module__r5qhga__dayBtn:hover{background:var(--bg-soft)}.calendar-module__r5qhga__dayBtnActive{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.calendar-module__r5qhga__dayBtnToday{border-color:var(--accent)}.calendar-module__r5qhga__dayBtnDay{letter-spacing:.06em;text-transform:uppercase;opacity:.65;font-size:10px;font-weight:600}.calendar-module__r5qhga__dayBtnNum{font-family:var(--serif);font-size:20px;font-weight:500;line-height:1}.calendar-module__r5qhga__dayDot{background:var(--ink-3);border-radius:50%;width:6px;height:6px}.calendar-module__r5qhga__dayDotActive{background:rgba(255,255,255,.7)}.calendar-module__r5qhga__dayLayout{flex-direction:column;gap:16px;display:flex}@media (min-width:900px){.calendar-module__r5qhga__dayLayout{flex-direction:row;align-items:flex-start;gap:24px}}.calendar-module__r5qhga__dayMeals{flex-direction:column;flex:1;gap:12px;display:flex}.calendar-module__r5qhga__dayActions{gap:6px;display:flex}.calendar-module__r5qhga__actionBtn{border:1px solid var(--line);color:var(--ink-2);cursor:pointer;background:0 0;border-radius:10px;align-items:center;gap:5px;padding:6px 10px;font-size:12px;transition:background .15s;display:inline-flex}.calendar-module__r5qhga__actionBtn:hover:not(:disabled){background:var(--bg-soft)}.calendar-module__r5qhga__actionBtn:disabled{opacity:.4;cursor:not-allowed}.calendar-module__r5qhga__daySidebar{flex-direction:column;gap:14px;display:flex}@media (min-width:900px){.calendar-module__r5qhga__daySidebar{flex-shrink:0;align-self:start;width:300px;position:-webkit-sticky;position:sticky;top:24px}}.calendar-module__r5qhga__kbjuCard{background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;padding:20px}.calendar-module__r5qhga__kbjuCardLabel{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;text-transform:uppercase;margin-bottom:12px;font-size:11px}.calendar-module__r5qhga__kbjuCardMobile{background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;margin-bottom:14px;padding:14px 16px}.calendar-module__r5qhga__kbjuDialOuter{align-items:center;gap:12px;margin-bottom:12px;display:flex}.calendar-module__r5qhga__kbjuCircle{border:2px solid;border-radius:50%;flex-shrink:0;place-items:center;width:56px;height:56px;display:grid}.calendar-module__r5qhga__kbjuPct{font-family:var(--serif);font-size:16px;font-weight:600;line-height:1}.calendar-module__r5qhga__kbjuDial{justify-content:center;align-items:center;margin-bottom:14px;display:flex;position:relative}.calendar-module__r5qhga__kbjuDialCenter{text-align:center;position:absolute}.calendar-module__r5qhga__kbjuDialSub{font-family:var(--mono);color:var(--ink-3);letter-spacing:.04em;font-size:10px}.calendar-module__r5qhga__kbjuDialVal{font-family:var(--serif);color:var(--ink);font-size:28px;font-weight:500;line-height:1.05}.calendar-module__r5qhga__kbjuDialNorm{color:var(--ink-3);font-size:11px}.calendar-module__r5qhga__kbjuToneBadge{background:var(--bg-soft);color:var(--ink-3);border-radius:999px;margin-top:6px;padding:2px 8px;font-size:10px;font-weight:600;display:inline-block}.calendar-module__r5qhga__kbjuMacros{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.calendar-module__r5qhga__kbjuMacroItem{background:var(--bg);border:1px solid var(--line);border-radius:10px;padding:10px}.calendar-module__r5qhga__kbjuMacroLabel{font-family:var(--mono);color:var(--ink-3);margin-bottom:4px;font-size:10px}.calendar-module__r5qhga__kbjuMacroVal{font-family:var(--serif);color:var(--ink);font-size:18px;font-weight:500;line-height:1}.calendar-module__r5qhga__kbjuMacroBar{background:var(--bg-soft);border-radius:999px;height:3px;margin-top:6px;overflow:hidden}.calendar-module__r5qhga__kbjuMacroBarFill{border-radius:999px;max-width:120%;height:100%;transition:width .3s}.calendar-module__r5qhga__kbjuBars{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.calendar-module__r5qhga__kbjuBarItem{flex-direction:column;gap:3px;display:flex}.calendar-module__r5qhga__kbjuBarRow{justify-content:space-between;align-items:baseline;display:flex}.calendar-module__r5qhga__kbjuBarName{font-weight:600;font-family:var(--serif);color:var(--ink);font-size:13px}.calendar-module__r5qhga__kbjuBarVal{color:var(--ink-3);font-size:11px}.calendar-module__r5qhga__kbjuBarTrack{background:var(--bg-soft);border-radius:999px;height:4px;overflow:hidden}.calendar-module__r5qhga__kbjuBarFill{border-radius:999px;height:100%}.calendar-module__r5qhga__toneOk{background:color-mix(in oklab,var(--leaf)14%,transparent);color:var(--leaf)}.calendar-module__r5qhga__toneWarn{background:color-mix(in oklab,var(--amber)22%,transparent);color:#a67632}.calendar-module__r5qhga__toneBad{background:color-mix(in oklab,var(--accent)16%,transparent);color:var(--accent)}.calendar-module__r5qhga__mealSlot{background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;padding:14px;transition:background .15s}.calendar-module__r5qhga__mealSlotOver{outline:2px dashed var(--accent);outline-offset:-3px;background:var(--accent-soft)}.calendar-module__r5qhga__mealHeader{align-items:center;gap:8px;margin-bottom:10px;display:flex}.calendar-module__r5qhga__mealIcon{background:var(--accent-soft);width:28px;height:28px;color:var(--accent-ink);border-radius:8px;flex-shrink:0;place-items:center;display:grid}.calendar-module__r5qhga__mealLabel{font-family:var(--serif);color:var(--ink);flex:1;font-size:16px;font-weight:500}.calendar-module__r5qhga__addBtn{border:1px dashed var(--line-strong);color:var(--ink-2);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:4px;margin-left:auto;padding:5px 10px;font-size:12px;font-weight:500;transition:background .15s;display:inline-flex}.calendar-module__r5qhga__addBtn:hover{background:var(--bg-soft)}.calendar-module__r5qhga__mealEmpty{border:1px dashed var(--line-strong);color:var(--ink-3);text-align:center;border-radius:10px;padding:12px;font-size:13px}.calendar-module__r5qhga__mealEntries{flex-direction:column;gap:6px;display:flex}.calendar-module__r5qhga__weekGrid{gap:10px;display:grid}@media (min-width:900px){.calendar-module__r5qhga__weekGrid{grid-template-columns:repeat(7,1fr)}}.calendar-module__r5qhga__weekDayCard{background:var(--bg-elev);border:1px solid var(--line);border-radius:16px;flex-direction:column;gap:8px;padding:12px;display:flex}.calendar-module__r5qhga__weekDayCardToday{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)inset}.calendar-module__r5qhga__weekDayHeader{justify-content:space-between;align-items:flex-start;margin-bottom:4px;display:flex}.calendar-module__r5qhga__weekDayName{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);margin-bottom:2px;font-size:10px;font-weight:600}.calendar-module__r5qhga__weekDayNameToday{color:var(--accent)}.calendar-module__r5qhga__weekDayNum{font-family:var(--serif);color:var(--ink);font-size:22px;font-weight:500;line-height:1}.calendar-module__r5qhga__copyDayBtn{background:var(--bg);border:1px solid var(--line);width:26px;height:26px;color:var(--ink-3);cursor:pointer;border-radius:8px;place-items:center;transition:background .15s;display:grid}.calendar-module__r5qhga__copyDayBtn:hover:not(:disabled){background:var(--bg-soft)}.calendar-module__r5qhga__copyDayBtn:disabled{opacity:.35;cursor:not-allowed}.calendar-module__r5qhga__kcalBadge{background:var(--bg-soft);color:var(--ink-3);border-radius:999px;align-items:center;padding:3px 8px;font-size:10px;font-weight:600;display:inline-flex}.calendar-module__r5qhga__monthHead{grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px;display:grid}.calendar-module__r5qhga__monthHeadCell{text-align:center;text-transform:uppercase;letter-spacing:.05em;color:var(--ink-3);padding:6px 0;font-size:11px;font-weight:600}.calendar-module__r5qhga__monthGrid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-module__r5qhga__monthCell{aspect-ratio:1/1.1;background:var(--bg-elev);border:1px solid var(--line);cursor:pointer;text-align:left;border-radius:12px;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2px;padding:6px 8px;transition:background .15s;display:flex;overflow:hidden}.calendar-module__r5qhga__monthCell:hover{background:var(--bg-soft)}.calendar-module__r5qhga__monthCellOut{opacity:.35}.calendar-module__r5qhga__monthCellToday{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)inset}.calendar-module__r5qhga__monthCellDay{font-family:var(--serif);color:var(--ink);font-size:14px;font-weight:500}.calendar-module__r5qhga__monthCellKcal{color:var(--ink-3);font-size:10px;line-height:1}.calendar-module__r5qhga__monthCellBar{opacity:.8;border-radius:999px;width:100%;height:4px;margin-top:auto}@media (max-width:600px){.calendar-module__r5qhga__monthCell{padding:4px}.calendar-module__r5qhga__monthCellDay{font-size:12px}.calendar-module__r5qhga__monthCellKcal{font-size:9px}}.calendar-module__r5qhga__empty{color:var(--ink-3);font-size:13px}.calendar-module__r5qhga__guest{text-align:center;color:var(--ink-2);padding:60px 20px}.calendar-module__r5qhga__guest h2{font-family:var(--serif);margin-bottom:16px;font-size:22px;font-weight:500}.calendar-module__r5qhga__guest a{background:var(--accent);color:#fff;border-radius:12px;padding:10px 24px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}
