/* Product refinements retaining BLOC's established palette and identity. */
.quick-actions{display:grid;grid-template-columns:1fr 1.25fr;gap:8px;margin:0 0 14px;}
.quick-actions .btn{font-size:.8125rem;min-height:48px;padding:10px 12px;border:1px solid var(--border);border-radius:14px;gap:7px;}
.today-protein{display:block;font-size:.8125rem;font-weight:600;color:var(--text);margin-top:10px;}
.today-protein>small{display:block;font-size:.75rem;font-weight:400;margin-top:4px;}
.week-overview{margin-top:28px;padding:20px;border:1px solid var(--border);border-radius:20px;background:var(--surface);}
.week-overview h2,.next-session-cards>.section-heading h2{font-size:1rem;letter-spacing:-.025em;}
.week-overview .section-heading{gap:12px;margin-bottom:18px;}
.week-overview .section-heading .btn{font-size:.75rem;padding:5px 0;min-height:32px;}
.week-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.week-facts>div{min-width:0;}
.week-facts strong{display:block;font-size:1.75rem;font-variant-numeric:tabular-nums;letter-spacing:-.05em;line-height:1.2;}
.week-facts span{display:block;font-size:.75rem;color:var(--muted);line-height:1.45;margin-top:6px;}
.week-day.is-finished i,.week-day.is-active i{width:14px;height:14px;line-height:14px;background:transparent;font-size:.75rem;color:var(--accent);}
.week-day.is-today i{color:var(--on-accent);}
.week-day.is-active:not(.is-today){box-shadow:inset 0 0 0 1px var(--accent);}
.history-filters{margin:18px 0 12px;padding:18px;border:1px solid var(--border);background:var(--surface);border-radius:18px;}
.history-search{display:flex;align-items:flex-end;gap:10px;}
.history-search>.field{flex:1;margin:0;min-width:0;}
.history-search>.btn{min-height:48px;padding:10px 16px;}
.history-filters details{margin-top:14px;}
.history-filters summary{font-size:.8125rem;cursor:pointer;padding:8px 0;}
.history-filters .form-grid{margin-top:12px;}
.results-caption{font-size:.8125rem;color:var(--muted);margin:12px 0;}
.route-sessions .history-item{width:100%;text-align:left;}
.next-session-cards>.section-heading{margin-bottom:14px;gap:10px;}
.recommendation-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:18px;}
.recommendation-heading h3{font-size:.9375rem;line-height:1.4;}
.recommendation-heading .tag{font-size:.6875rem;white-space:normal;flex-shrink:0;max-width:45%;}
.recommendation-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;padding:14px 0;border-block:1px solid var(--border);}
.recommendation-compare small,.recommendation-compare span{display:block;font-size:.6875rem;line-height:1.45;color:var(--muted);}
.recommendation-compare strong{display:block;font-size:1.25rem;font-variant-numeric:tabular-nums;letter-spacing:-.035em;line-height:1.4;margin:5px 0;}
.recommendation-compare>div:last-child{text-align:right;}
.recommendation-reason{font-size:.8125rem;line-height:1.55;margin:14px 0;}
.recommendation-details{border-top:1px solid var(--border);margin-top:14px;padding-top:10px;}
.recommendation-details summary,.recommendation-missing summary{cursor:pointer;font-size:.8125rem;line-height:1.5;padding:6px 0;}
.recommendation-details p{font-size:.75rem;color:var(--muted);margin-top:10px;line-height:1.55;}
.recommendation-missing{border:1px solid var(--border);padding:12px 16px;border-radius:16px;margin-top:12px;}
.recommendation-missing>p{margin-top:12px;}
.reference-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid var(--border);}
.reference-row:last-child{border:0;padding-bottom:0;}
.reference-row strong,.reference-row small{display:block;font-size:.8125rem;line-height:1.5;}
.reference-row small{font-size:.75rem;margin-top:3px;}
.reference-row .btn{font-size:.75rem;min-height:40px;padding:8px 12px;}
@media(max-width:420px){.history-search{flex-wrap:wrap;}.history-search>.field{flex-basis:100%;}.history-search>.btn{width:100%;}.week-overview{padding:16px;}.week-facts{gap:12px;}.quick-actions .btn{font-size:.75rem;padding-inline:8px;}}
@media(max-width:899px){.masthead .brand-caption{display:none;}.masthead .saved-pill{white-space:nowrap;}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;}}

/* Actual per-set references stay readable without implying a fixed load. */
.previous-series { border: 1px solid var(--border); border-radius: 12px; padding: 12px 14px; margin: 12px 0; }
.previous-series summary { cursor: pointer; font-size: .85rem; font-weight: 600; }
.previous-series-list { margin: 10px 0; display: grid; gap: 6px; }
.previous-series-list p { margin: 0; display: flex; gap: 12px; align-items: baseline; }
.previous-series-list span { min-width: 24px; opacity: .65; font-size: .78rem; }
.previous-series-list strong { font-size: .9rem; overflow-wrap: anywhere; }
.recommendation-details li { margin: 7px 0; }
.entry-main button > small + small { display: block; margin-top: 4px; color: var(--accent); font-weight: 600; }
.series-targets { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin-block: 16px; }
.series-targets > p { margin: 0; border-bottom: 1px solid var(--border); padding: 10px 0; }
.series-targets > p > small, .series-targets > p > strong { display: block; overflow-wrap: anywhere; }
.series-targets > p > small { margin-bottom: 4px; opacity: .65; }
[data-series-loads] { padding: 16px; border: 1px solid var(--border); border-radius: 12px; margin-block: 8px 20px; }
.series-targets .field input { min-width: 0; }
@media (max-width: 360px) { .series-targets { grid-template-columns: 1fr; } }
