/* Keep the approved typefaces, sizes and weights; tighten small captions only. */
.breed-open small,.tag,.recipe-meta,.recipe-meta span,.recipe-reason,.nutrition small,.stat-label,.list-row small,.breed-stats small,.fine,.breed-badge,.offline-status{line-height:1.3}
[hidden]{display:none!important}
.paw-icon{fill:currentColor;stroke:none}
.today-dog{display:flex;align-items:center;gap:15px;border:1px solid #cde7ed;background:#eaf6fb;border-radius:18px;padding:12px;margin-bottom:18px}
.today-dog img{width:85px;height:85px;border-radius:13px;object-fit:cover}
.today-dog strong{font-family:'Baloo 2';font-size:25px;line-height:1.1;display:block}
.today-dog small{display:block;margin:4px 0;line-height:1.3}
.today-dog .text-btn{padding:2px 0}
.natural-hero{grid-template-columns:1.2fr 1fr}
.natural-hero h2{font-size:39px;line-height:1.08}
.home-recipes{grid-template-columns:repeat(2,minmax(0,1fr))}
.home-recipes>.recipe-card:last-child{display:flex}
.breed-open small{display:block;line-height:1.3}
.meal-photo{display:block;padding:0;flex-shrink:0;border-radius:14px;overflow:hidden}
.meal-recipe-name{display:block;padding:0;margin:0 0 4px;text-align:left;font-size:14px;line-height:1.35;color:var(--ink)}
.meal-photo:focus-visible,.meal-recipe-name:focus-visible{outline:3px solid var(--primary);outline-offset:3px}
.meal-recipe-name:hover{text-decoration:underline}
.preparation{background:var(--sky);padding:16px;border-radius:18px;margin:16px 0}
.preparation>label{display:block;font-weight:800;margin-bottom:8px}
.preparation-options{margin-bottom:12px;background:#ffffffa0}
.preparation-total{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:8px}
.preparation-total strong{font-family:'Baloo 2';font-size:24px;line-height:1.2}
.preparation-total span{font-size:12px;white-space:nowrap}
.recipe-origin{margin:0 0 12px;font-size:11px;color:var(--muted)}
.shopping-group{margin-top:22px}
.shopping-group h3{color:var(--button);margin-bottom:6px}
.shopping-group .check-row label{flex:1;min-width:0}
.shopping-group .check-row label strong{display:block;font-size:13px;line-height:1.3}
.shopping-group .check-row label small{display:block;margin-top:4px;line-height:1.3;color:var(--muted)}
.shopping-group .check-row>span{white-space:nowrap;font-weight:800;font-size:14px}
.breed-profile-status{padding:12px 16px;border-radius:12px;background:var(--green-soft);font-weight:800;color:#215d36}
.breed-recommendations>.btn{margin:0 0 18px}
.onboarding-shell{display:block}
.onboarding-shell .content{max-width:1120px;padding-bottom:30px}
.onboarding-shell .mobile-brand{display:flex}
.onboarding-shell .topbar>.date{display:none}
.onboarding .page-title{max-width:620px;margin:38px 0 26px}
.onboarding .search{max-width:620px}
.onboarding .breed-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.category-row{align-items:stretch}
.category-chip{height:53px;min-height:53px;display:flex;align-items:center;line-height:1.3}
.dog-hero .hero-image img{object-position:center}
.dog-hero .hero-image:after{display:none}
.dog-hero .hero-text{padding-right:18px}
.breed-badge{display:flex;gap:5px;align-items:flex-start;color:#28613a;background:#eaf7df;padding:7px 8px;border-radius:7px;margin-top:10px}
.breed-badge .icon{width:14px;height:14px}
.dog-portion{background:#fff0dc;border:1px solid #f7d4aa;padding:17px;border-radius:16px;margin:18px 0 10px}
.dog-portion small{display:block;color:#80501f;margin-bottom:5px}
.dog-portion strong{font-family:'Baloo 2';font-size:23px;line-height:1.2;display:block;color:#703b15}
.dog-portion span{font-size:12px;display:block;margin-top:8px}
.dog-portion .fine{margin:10px 0 0}
.recipe-serving{font-size:13px;margin:18px 0 8px}
.recipe-details,.profile-details{border:1px solid var(--line);border-radius:13px;padding:14px;margin:16px 0 24px;background:#fff}
.recipe-details summary,.profile-details summary{cursor:pointer;font-weight:700;font-size:13px;line-height:1.3}
.profile-details[open]>.fields{margin-top:20px}
.profile-save{width:100%}
.profile-breed-summary{display:flex;align-items:center;gap:12px;background:#fff4e5;border-radius:13px;margin-bottom:20px;font-size:13px;font-weight:700;padding:10px}
.profile-breed-summary img{width:62px;height:62px;object-fit:cover;border-radius:10px}
.profile-breed-summary .icon{width:17px}
.profile-details .field label{min-height:16px}
.auto-week-action{margin:20px 0}
.auto-week-action .btn{text-align:left}
.replace-plans{display:flex;gap:9px;align-items:flex-start;margin:18px 0}
.meal .recipe-row .thumb{width:110px!important;height:96px!important}
.base-row{opacity:.85}
.base-row p{font-size:12px}
.meal .list-row{gap:10px}
.meal .list-row .text-btn{padding:4px;font-size:11px}
.meal .list-row .circle-btn{width:28px;height:28px}
.meal .list-row .circle-btn .icon{width:15px}
.filter-label{font-size:12px;font-weight:800;margin:18px 0 9px}
.status-filters .safe{background:#e6f5df;color:#28613a;border-color:#c2dfbc}
.status-filters .care{background:#fff3cb;color:#7a5b05;border-color:#e9d594}
.status-filters .toxic{background:#ffe5e0;color:#a02a1c;border-color:#f6bdb3}
.status-filters .active{outline:2px solid currentColor;outline-offset:1px;font-weight:800}
.dot.safe{background:#2a9d54}.status-text.safe{color:#28613a}
.dot.care{background:#d69c22}.status-text.care{color:#806016}
.search input{min-width:0;text-overflow:ellipsis}
.support-links{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:9px}
.support-links:empty{display:none}
.presentation{margin-top:24px;overflow:hidden;background:#f1f8e8}
.presentation h2{font-size:25px;margin-bottom:8px}
.presentation-image{width:100%;max-height:240px;object-fit:cover;border-radius:14px;margin-bottom:16px}
.offer{background:#e9f5fe}
@media(max-width:600px){.today-dog{padding:10px;gap:12px;margin-bottom:16px}.today-dog img{width:70px;height:70px}.today-dog strong{font-size:23px}.today-dog small{font-size:11px}.today-dog .text-btn{font-size:11px}.natural-hero{grid-template-columns:1.3fr .85fr;max-height:none;min-height:240px}.natural-hero h2{font-size:27px;line-height:1.1}.natural-hero .hero-text{padding:20px 8px 20px 17px}.natural-hero p{line-height:1.4;font-size:12px}.natural-hero .hero-image{min-height:240px}.natural-hero .hero-image img{object-position:45%}.home-recipes>.recipe-card:last-child{display:flex}}
@media(max-width:900px){.onboarding .breed-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.onboarding .breed-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.onboarding .page-title{margin-top:27px}.onboarding .page-title h1{font-size:34px}.onboarding-shell .content{padding:17px}.dog-hero .hero-text{padding-right:12px}.dog-hero h2{font-size:30px}.dog-hero p{font-size:12px}.category-chip{white-space:normal;text-align:center}.dog-portion strong{font-size:21px}.recipe-detail-image{height:180px}.meal .recipe-row .thumb{width:88px!important;height:88px!important}.meal .list-row{gap:8px}.profile-details{margin-bottom:18px}.profile-breed-summary{margin-bottom:16px}.recipe-body{min-height:180px}.auto-week-action .btn{width:100%;font-size:12px}}

/* Keep category colors and breed badges aligned through the full card height. */
.recipe-card{display:flex;flex-direction:column;margin-bottom:0}
.recipe-card>.recipe-open{display:flex;flex-direction:column;flex:1}
.recipe-card .recipe-image{flex-shrink:0}
.recipe-body{display:flex;flex-direction:column;flex:1}
.recipe-body>.tag{align-self:flex-start}
.recipe-body:has(.breed-badge) .recipe-meta{margin-bottom:10px}
.recipe-body>.breed-badge{margin-top:auto}
.breed-recommendations .grid>div{display:grid;grid-template-rows:subgrid;grid-row:span 2}
.daily-actions{grid-template-columns:1fr}
#main>.natural-hero:last-child{margin-top:26px}
@media(max-width:600px){.breed-recommendations .recipe-card>.recipe-open{display:grid;grid-template-columns:120px minmax(0,1fr)}}
/* Clear body-condition comparison and compact tutor-facing controls. */
.bcs-photo{position:relative;overflow:hidden;width:100px;aspect-ratio:1/2;margin:0 auto 12px;border-radius:12px;background:#e8f6ff}
.bcs-photo img{position:absolute;top:0;width:300%;height:100%;max-width:none;display:block}
.nutrition .body-condition-label{font-family:'Nunito';font-size:16px;line-height:1.25;overflow-wrap:normal}
.weight-summary{font-size:14px;line-height:1.6;margin:15px 0}
.weight-summary strong{font-family:'Baloo 2';font-size:24px}
.served-recipe{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:12px;color:#215d36}
.served-recipe>span{font-weight:800}
.sticky-action>small{display:block;text-align:center;margin-top:8px}
.profile-details select{padding-right:25px}
@media(max-width:600px){.bcs{grid-template-columns:100px minmax(0,1fr);align-items:center}.bcs-photo{grid-row:1/3;margin:0}.nutrition .body-condition-label{font-size:14px}.profile-details .field:has(select[name=stageOverride]),.profile-details .field:has(select[name=health]){grid-column:1/-1}}
