/* My-BRO nutrition: theme and component density. */
:root{--color-scheme:light;--food-bg:#F2F3F7;--food-surface:#FFFFFF;--food-elevated:#FFFFFF;--food-line:#E4E6EB;--food-text:#1A1D24;--food-muted:#7A7F8A;--food-accent:#00A8FF;--food-danger:#D95B55;--bg:var(--food-bg);--card:var(--food-surface);--elevated:var(--food-elevated);--line:var(--food-line);--line2:var(--food-line);--txt:var(--food-text);--sub:var(--food-muted);--mut:var(--food-muted);--accent:var(--food-accent);--accent-soft:#E8F7FE;--on-accent:#FFFFFF;--scrim:rgba(14,22,18,.46);--blue:var(--accent);--blue-d:#0091DE;--blue-soft:var(--accent-soft);--green:#2FBF71;--red:var(--food-danger);--r:var(--radius-card)}
body{height:100dvh;background:var(--bg)}
.top{padding:calc(16px + var(--safe-top)) 16px 12px}
.scroll{padding:4px 16px 24px;overscroll-behavior-y:contain}
.kcalcard{display:grid;grid-template-columns:minmax(0,1fr) 132px minmax(0,1fr);align-items:center;gap:4px;padding:16px 8px;margin:0;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:0 2px 6px rgba(23,27,24,.025)}
.kccol{min-width:0;text-align:center}.kcv{font-size:26px;font-weight:650;letter-spacing:-1px;line-height:1.15;color:var(--txt);white-space:nowrap}.kck{font-size:12px;color:var(--sub);margin-top:5px;line-height:1.3}
.kcring{position:relative;width:132px;height:132px}.kcring-t{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.kcring-t .kcv{font-size:30px;font-weight:700;letter-spacing:-1.2px}.kcring-t .kck{margin-top:3px}.kcal-track{stroke:var(--accent-soft)}#arc{stroke:var(--accent)}.kcalcard.over #arc{stroke:var(--red)}.kcalcard.over #kcalLeft{color:var(--red)}
.kcalgoal{margin:10px 0 16px;font-size:13px;color:var(--sub);text-align:center}.kcalgoal b{color:var(--txt);font-weight:600}
.macros{padding:4px 14px;margin-top:0;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none}.macros .mrow{gap:10px;padding:11px 0;margin:0;min-height:42px}.macros .mrow+.mrow{border-top:1px solid #EFF1F4}.macros .ml{width:86px;font-size:14px;font-weight:500}.macros .mt{height:5px;background:var(--accent-soft)}.macros .mv{font-size:12px;line-height:1.3}.macros .mv b{font-weight:650}
.watercard{min-height:64px;padding:8px 12px;margin:12px 0;gap:10px;background:var(--accent-soft);border-radius:var(--radius-control)}.watercard .wico{color:var(--accent);display:flex}.watercard .wbar{height:5px;background:#D7EEFA;min-width:20px}.watercard .wbar i{background:var(--accent)}.watercard .wtxt{color:#558399;font-size:12px;min-width:0;white-space:nowrap}.watercard .wbtn{min-width:52px;min-height:44px;padding:8px;background:var(--accent);font-size:14px;font-weight:600;border-radius:10px}
.nutrbox{padding:14px;border:1px solid var(--line);border-radius:var(--radius-card);box-shadow:none}#v-diary .nutrbox{margin:12px 0}.nutrT{font-size:16px;font-weight:650;margin-bottom:12px;gap:8px;align-items:baseline;flex-wrap:wrap}.nutrT span{color:var(--sub);font-size:12px}.nrow{gap:10px;margin:8px 0;min-height:24px}.nn{width:108px;font-size:12px;line-height:1.35}.nb{height:5px;background:var(--accent-soft)}.nfill,.nutrFill{background:var(--accent)}.nv{width:52px;font-size:12px;font-weight:600}#vitsBox .nv{width:110px}
.mealcard{border:1px solid var(--line);border-radius:var(--radius-card);margin-top:16px;box-shadow:none;overflow:hidden}.mealhead{padding:14px;gap:12px}.mico{width:40px;height:40px;border-radius:12px;color:var(--accent)}.mname{font-size:17px;font-weight:600}.mgoal{font-size:12px;line-height:1.4}.mkcal .v{font-size:21px;font-weight:650}.food{padding:10px 14px;min-height:60px;gap:8px}.food .fn{font-size:14px;white-space:normal;overflow-wrap:anywhere}.food .fn small{font-size:12px;line-height:1.4}.food .fv{font-size:14px}.fdel{width:44px;height:44px;padding:8px;color:var(--sub)}.addline{min-height:44px;margin:0 12px 12px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--radius-control);background:transparent;font-size:14px}.mealempty{padding:8px 14px 12px;font-size:13px}
.planCard{margin:12px 0;border-radius:var(--radius-card);padding:14px;box-shadow:none}.planItem{padding:8px 0;background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0}.planItem .pn{font-size:14px}.planItem .pn small,.planMealLbl{font-size:12px}.pbtnS,.pbtnD{min-width:44px;height:44px;border-radius:12px;font-size:18px}.planTop .plink{min-height:44px;padding:8px;font-size:13px}.planTop b{font-size:16px}
.way{padding:10px 12px;gap:12px;border-width:1px;border-radius:var(--radius-control);color:var(--txt);background:var(--card);min-height:68px}.way .wi{background:var(--accent-soft);color:var(--accent)}.way small{font-size:12px;line-height:1.4}
.searchBtn,.eatBtn,.morebtn,.pgN.on{background:var(--accent);color:var(--on-accent);box-shadow:none}.searchBtn:active,.eatBtn:active,.moreBtn:active,.plusbtn:active,.favBtn:active{transform:translateY(1px);box-shadow:none}.eatBtn,.moreBtn,.catEat,.rcard .rbtn,.rbtn2,.morebtn{min-height:48px;padding:12px 16px;font-size:15px;border-radius:var(--radius-control)}.moreBtn{background:var(--accent-soft);border-color:var(--line)}.plusbtn{min-height:44px;box-shadow:none}.modebtn,button.cat,button.chip,.pmode,.seg button,.planMT .mt,.mt2 button{min-height:44px;padding:10px 12px;font-size:13px}.catItem{padding:12px;border-radius:var(--radius-control)}.catItem .cn{font-size:14px}.catItem .cn small{font-size:12px}.grams button{width:48px;height:48px;border-radius:var(--radius-control)}.grams input{height:48px;font-size:24px;min-width:0;color:var(--txt)}.pgA,.pgN{min-width:44px;height:44px}.srow{min-height:60px;padding:12px 2px}.srow .n{font-size:15px}.srow .m{font-size:12px;line-height:1.4}
@media(max-width:374px){.kcalcard{grid-template-columns:minmax(0,1fr) 124px minmax(0,1fr)}.kcring,.kcring svg{width:124px;height:124px}.kcv{font-size:24px}.kcring-t .kcv{font-size:28px}.macros .ml{width:80px}.macros .mrow{gap:8px}}

.macros .mf{min-width:0}.rectop{flex-wrap:wrap;align-items:center;width:100%}.rectop>div{flex:1 0 calc(100% - 64px);order:0}.rectop>.plus{order:1}.rectop>.modebtn{order:2;flex:1;margin-top:8px}.rcard,.pcard{border:1px solid var(--line);border-radius:16px;box-shadow:none}.rcard .rn{font-size:17px;font-weight:600}.rpic2{height:160px;border-radius:12px;background-color:var(--accent-soft)}.cats2{box-shadow:none;max-height:112px;padding:8px;gap:6px}.cats2 .chip{min-height:44px;font-size:13px}.badge.pr{background:var(--accent-soft);color:var(--accent)}.badge,.rbadge{font-size:12px}.seg.sp{padding-left:0}.stitle{padding-left:0;font-size:17px;font-weight:600}.cal .ck{font-size:12px}.myX{width:44px;height:44px;right:0}.myBadge{margin-right:38px}.regscreen .logo{background:var(--accent-soft);box-shadow:none;color:var(--accent)}.regscreen .seg{flex-wrap:wrap}.regscreen .seg button{min-width:95px}.sheet .panel>.btn{flex-shrink:0}.sheet .fld{min-width:0}.sheet .kcaltrio{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sheet .kcaltrio .fld{margin-bottom:0}.sheet .fldrow{flex-wrap:wrap}.sheet .fldrow .fld{min-width:80px}#prodList{padding-bottom:24px}#sh-cat .panel>div:has(#catGrams){flex-wrap:wrap}#catGrams{min-width:0;width:120px}.planTop{flex-wrap:wrap;gap:4px}.planTop>div{display:flex;align-items:center}.planTop button{min-width:44px;min-height:44px}

.error-banner{padding:12px;border:1px solid var(--red);border-radius:12px;font-size:14px;line-height:1.4;margin-bottom:12px}.error-banner button{min-height:44px;background:transparent;color:var(--accent);border:0;font:inherit;padding:8px}.nutrload{color:var(--sub);font-size:13px;line-height:1.5}

/* Nutrition retains its original soft gray, white and cyan palette. */
.kcalcard{margin-bottom:12px;padding-bottom:0;overflow:hidden}.kcring-t{inset:20px}.kcring-t .kcv{font-size:27px;letter-spacing:-.6px;max-width:100%}.kcring-t .kck{font-size:11px;white-space:nowrap}.kcalgoal{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;margin:12px 6px 0;padding:12px 4px;border-top:1px solid var(--line);font-size:14px;text-align:left}.kcalgoal strong{color:var(--txt);font-weight:600;white-space:nowrap}
.catalog-header{flex:none;position:relative;z-index:2;background:var(--bg);padding-bottom:10px;box-shadow:0 7px 12px -9px rgba(34,45,66,.36)}.catalog-search{padding:0 16px}.catalog-header .cats2{margin:10px 16px 0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;max-height:94px;overflow-x:hidden;overflow-y:auto;align-content:flex-start;gap:6px}.catalog-header .cats2 button{flex:none;white-space:nowrap;min-height:44px;padding:9px 12px;font-size:13px}.catalog-header .top{padding-bottom:12px}#recList,#prodList{padding-top:12px}
.rmeta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:8px;margin-bottom:14px}.rmeta .rbadge,.rmeta .rbadge.cat{display:inline-flex;align-items:center;min-height:0;height:auto;line-height:1.45;padding:0;border:0;border-radius:0;background:transparent;color:var(--sub);font-size:12px;font-weight:400;white-space:normal}.rmeta .rbadge.kcal{color:var(--txt);font-weight:500}.rmeta .rbadge+.rbadge:before{content:'·';margin-right:10px;color:#B4B8C2}.favBtn{min-width:44px;min-height:44px;flex:none}.favBtn.on{color:#B98020}.sheet .sh h3:has(.favBtn){display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%}

/* Browsing controls remain visually separate from result cards. */
.rectop>div:first-child{flex:1 1 auto}.recipe-head-actions{display:flex;gap:8px;flex:0 0 auto!important}.rectop>.modebtn{order:2}.header-icon,.recipe-head-actions .plus{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;border:1px solid var(--line2);border-radius:12px;background:var(--card);color:var(--accent);box-shadow:none}.recipe-head-actions .plus{border-color:var(--accent);background:var(--accent);color:var(--on-accent)}.header-icon .ui-icon,.recipe-head-actions .ui-icon{width:22px;height:22px}
.catalog-header .cats2{margin:10px 16px 0;padding:8px;border:1px solid var(--line2);border-radius:14px;background:var(--card);box-shadow:inset 0 1px 0 rgba(255,255,255,.75);max-height:104px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#C6D0DE transparent}.catalog-header .cats2::-webkit-scrollbar{width:6px}.catalog-header .cats2::-webkit-scrollbar-thumb{background:#C6D0DE;border-radius:99px}.catalog-header .cats2:after{content:'';flex-basis:100%;height:1px;pointer-events:none}
.recipe-search-panel{gap:10px}.search-label{font-size:13px;color:var(--sub)}.recipe-search-actions{display:grid;grid-template-columns:1fr 1.4fr;gap:8px;margin-top:4px}.recipe-search-actions .btn,.recipe-search-actions .btn2{width:100%}
.rrowbtn .add-only,.catEat.add-only{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;min-width:48px;height:48px;padding:0;border-radius:12px}.add-only .ui-icon{width:22px;height:22px}.catEat:not(.add-only){display:flex;align-items:center;justify-content:center;gap:7px}.catEat .ui-icon,.eatBtn .ui-icon{width:20px;height:20px}
.mico.meal-breakfast,.meal-choice.meal-breakfast .meal-choice-icon{color:#B97918}.mico.meal-lunch,.meal-choice.meal-lunch .meal-choice-icon{color:#2B8C67}.mico.meal-dinner,.meal-choice.meal-dinner .meal-choice-icon{color:#6F65A8}.mico.meal-snack,.meal-choice.meal-snack .meal-choice-icon{color:#C26D3C}.mico.meal-other,.meal-choice.meal-other .meal-choice-icon{color:#52829A}.meal-choice{display:inline-flex;align-items:center;gap:6px}.meal-choice-icon{display:flex}.meal-choice-icon .ui-icon{width:18px;height:18px}.meal-choice.on .meal-choice-icon{color:currentColor}
#ui-toast.ui-toast-success{background:#F3FAF6;border-color:#BFDCCB;color:#29563D}

/* Diary focal widgets use the familiar bright blue nutrition palette. */
.kcalcard{
  position:relative;isolation:isolate;overflow:hidden;
  padding:14px 8px 0;margin-bottom:10px;
  border:0;
  background:radial-gradient(circle at 18% 0,rgba(255,255,255,.24),transparent 34%),radial-gradient(circle at 88% 100%,rgba(67,238,232,.3),transparent 42%),linear-gradient(135deg,#00A9EE 0%,#1687DF 52%,#3D62D4 100%);
  box-shadow:0 15px 30px -20px rgba(22,91,185,.88);
}
.kcalcard:after{content:'';display:block;position:absolute;inset:7px;border:1px solid rgba(255,255,255,.14);border-radius:calc(var(--radius-card) - 5px);pointer-events:none;z-index:0}.kcalcard>*{position:relative;z-index:1}
.kcalcard,.kcalcard *{font-family:inherit}
.kcalcard .kccol{margin:0 3px;padding:10px 3px;border:1px solid rgba(255,255,255,.13);border-radius:12px;background:rgba(255,255,255,.09)}
.kcalcard .kcv,.kcalcard .kcalgoal b,.kcalcard .kcalgoal strong{color:#FFFFFF}
.kcalcard .kck,.kcalcard .kcalgoal{color:rgba(255,255,255,.78)}
.kcalcard .kcring-t{inset:24px}
.kcalcard .kcal-track{stroke:rgba(255,255,255,.22)}
.kcalcard #arc{stroke:#B9F7DD}
.kcalcard.over #arc{stroke:#FFB5AA}
.kcalcard.over #kcalLeft{color:#FFF1EE}
.kcalgoal{margin:12px -8px 0;padding:11px 16px 12px;border-top:1px solid rgba(255,255,255,.18);background:rgba(14,47,130,.2)}
.kcring-t .kcv{font-variant-numeric:tabular-nums;max-width:96px;text-align:center}
.kcring-t .kcv.long{font-size:19px;letter-spacing:-.8px}
.watercard{
  position:relative;min-height:62px;margin:10px 0;
  border:1px solid #A8DFF3;
  background:linear-gradient(135deg,#E3F8FF 0%,#CDEEFF 100%);
  box-shadow:0 10px 22px -18px rgba(30,126,176,.78);
}
.watercard .wico{width:36px;height:36px;align-items:center;justify-content:center;border-radius:11px;background:rgba(255,255,255,.78);color:#0786C7}
.watercard .wico .ui-icon{width:20px;height:20px}.watercard .wbar{height:6px;background:rgba(39,126,155,.14)}
.watercard .wbar i{background:linear-gradient(90deg,#00A8E8,#3E89E2)}
.watercard .wtxt{color:#176E98;font-weight:600}.watercard .wbtn{background:linear-gradient(135deg,#00A8E8,#3378D8);box-shadow:0 7px 15px -10px rgba(20,86,166,.9)}

/* Equal navigation controls in catalog headers. */
.rectop{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 8px}
.rectop>div:first-child{min-width:0}.recipe-head-actions{grid-column:2;grid-row:1}
.recipe-modes{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
.recipe-modes .modebtn{width:100%;margin:0;min-width:0;border-radius:12px}
.product-top{display:flex;align-items:center;gap:10px}.product-top>div{min-width:0;flex:1}
.product-modes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 16px 2px}
.product-modes .pmode{width:100%;min-width:0;border-radius:12px}

/* Opened recipe nutrition stays compact. */
.recipe-nutrition{display:grid;grid-template-columns:1.25fr repeat(3,1fr);gap:5px;margin:10px 0 6px;padding:0;border:0;border-radius:0;overflow:visible;background:transparent}
.recipe-nutrition>div{display:flex;min-width:0;flex-direction:column;align-items:center;justify-content:center;padding:7px 3px;border:1px solid #DCE8EC;border-radius:10px;background:#F1F7F8;text-align:center}
.recipe-nutrition>div:nth-child(2){background:#EEF7F1;border-color:#D8E9DE}.recipe-nutrition>div:nth-child(3){background:#FBF5E9;border-color:#EDE1C9}.recipe-nutrition>div:nth-child(4){background:#F3F0F8;border-color:#E3DDEE}
.recipe-nutrition span{font-size:9px;line-height:1.15;color:#71808A}
.recipe-nutrition strong{font-size:16px;line-height:1.05;margin-top:3px;color:#263941;font-weight:700;font-variant-numeric:tabular-nums}
.recipe-nutrition small{font-size:9px;line-height:1.05;margin-top:1px;color:#71808A}
.recipe-nutrition .recipe-energy{background:#EAF4F6;border-color:#D4E6EA}.recipe-nutrition .recipe-energy strong{font-size:18px;color:#236E84}
.recipe-detail-meta{margin:8px 0 4px}.rpic.recipe-photo{padding:0;overflow:hidden;background:#EDF2F4}.rpic.recipe-photo img{display:block;width:100%;height:100%;object-fit:cover}
.pick-recipe-nutrition{display:flex;align-items:center;gap:8px;margin-top:6px;font-size:12px;color:var(--sub);font-weight:500;flex-wrap:wrap}
.pick-recipe-nutrition b{font-size:13px;color:#236E84}.pick-recipe-nutrition span{white-space:nowrap}
.mkcal .v small{font-size:10px;font-weight:500;color:var(--sub);letter-spacing:0}
#recList .rcard{padding:13px;margin-top:8px}#recList .rcard .rn{font-size:16px}
#recList .rmeta{margin:5px 0 8px;gap:5px 9px}#recList .rrowbtn{margin-top:8px}
#recList .rbtn2,#recList .rbtn{min-height:40px;padding:8px 12px;font-size:14px}
#v-prod .catalog-header .cats2{margin-top:7px;padding:6px;max-height:82px;gap:4px}
#v-prod .catalog-header .cats2 button{min-height:34px;padding:5px 10px;font-size:12px}
.photo-source-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;padding:13px 5px;font-size:13px}
.photo-source-btn .ui-icon{display:block;width:21px;height:21px;fill:currentColor;flex:none}

/* Compact colored KБЖУ for catalog cards. */
.macro-pills{display:flex;align-items:center;gap:4px;min-width:0;margin-top:7px;flex-wrap:nowrap;font-family:inherit}
.macro-pills span{display:inline-flex;align-items:center;justify-content:center;min-height:21px;padding:3px 7px;border-radius:7px;font-size:11px;font-weight:650;line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}
.macro-pills .mp-kcal{background:#E1F4FF;color:#0879B6}.macro-pills .mp-protein{background:#E4F7ED;color:#208258}.macro-pills .mp-fat{background:#FFF0D3;color:#A66605}.macro-pills .mp-carbs{background:#EEE8FC;color:#674DA3}
#recList .recipe-card-macros{margin-top:7px}#recList .rmeta{margin:6px 0 5px}#recList .rrowbtn{margin-top:7px}
#v-prod .product-card-macros{margin-top:6px}.product-brand,.product-note{display:block;margin-top:3px;color:var(--mut);font-size:11px;font-weight:500}.product-uses{margin-top:4px;color:var(--mut);font-size:11px}

@media(max-width:374px){
  .recipe-nutrition>div{padding-left:2px;padding-right:2px}.recipe-nutrition strong{font-size:15px}.recipe-nutrition .recipe-energy strong{font-size:17px}
  .photo-source-btn{font-size:12px;gap:4px}.photo-source-btn .ui-icon{width:19px;height:19px}
  .macro-pills{gap:3px}.macro-pills span{padding-left:5px;padding-right:5px;font-size:10.5px}
}
