/* Saved recipes, cooked log and private notes (task 823.5): the recipe page's Save button and panel, and /saved. */
.save-form { display: inline-flex; margin: 0; }
.save-btn .i-heart { fill: none; flex: none; }
.save-btn[aria-pressed="true"] { background: var(--honey-soft); border-color: var(--accent); color: var(--accent); }
.save-btn[aria-pressed="true"] .i-heart { fill: currentColor; }
.save-btn:disabled { opacity: .7; cursor: progress; }

.mine { margin-top: 28px; }
.mine .panel-head { margin-bottom: 6px; }
.mine-private { display: inline-flex; align-items: center; gap: 6px; margin: 0; }
.mine-flash { margin: 8px 0 4px; }
.mine-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 18px 28px; margin-top: 10px; }
.mine-box { margin: 0; min-width: 0; }
.mine-box h3 { font-size: 1.25rem; margin: 6px 0 4px; }
.mine-box h3 label { font: inherit; margin: 0; }
.col-set { border: 0; padding: 0; margin: 0; min-width: 0; }
.col-set legend { padding: 0; }
.col-set label.check { margin: 6px 0; }
.mine-actions { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 12px 0 0; }
.cook-fields { display: flex; gap: 10px; flex-wrap: wrap; }
.cook-fields > div { min-width: 0; }
.cook-fields .grow { flex: 1 1 150px; }
.cook-fields input { width: 100%; }
.cook-sum { margin: 14px 0 0; font-weight: 600; }
.mine-out p { max-width: 62ch; }
.mine-out .cta-row { align-items: center; }

.cook-log { list-style: none; padding: 0; margin: 8px 0 0; }
.cook-log li { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: baseline; gap: 4px 12px; padding: 8px 0; border-bottom: 1px solid var(--line); }
.cook-log li:last-child { border-bottom: 0; }
.cook-log time { font-weight: 600; min-width: 7.2em; font-variant-numeric: tabular-nums; }
.cook-log .cook-what { min-width: 0; overflow-wrap: anywhere; }
.cook-log .cook-note { color: var(--muted); }
.cook-log.compact li { padding: 4px 0; font-size: .92rem; }
.cook-log.compact time { min-width: 6.6em; }
.saved .collection h2 .small { font-family: var(--sans); font-weight: 500; }
@media (max-width: 640px) { .cook-log li:not(.compact li) { grid-template-columns: minmax(0, 1fr) auto; } .cook-log li:not(.compact li) .cook-what { grid-column: 1 / -1; grid-row: 2; } }
form.inline { display: inline; margin: 0; }

.saved .page-head { align-items: center; }
.saved-tabs { margin: 0; }
.saved .collection { margin: 30px 0; }
.saved .collection h2 { display: flex; align-items: baseline; gap: 10px; flex-wrap: wrap; overflow-wrap: anywhere; }
.saved .collection h2 a { color: var(--ink); text-decoration: none; }
.saved .collection h2 a:hover { color: var(--accent-hover); text-decoration: underline; }
.saved-grid { list-style: none; padding: 0; margin: 0; }
.saved-item { display: flex; flex-direction: column; gap: 8px; }
.saved-item .card { flex: 1; }
.saved-meta { padding: 0 4px; }
.saved-meta p { margin: 0 0 2px; }
.saved-note { color: var(--muted); font-style: italic; overflow-wrap: anywhere; }
.saved-new, .saved-data, .saved-manage { margin-top: 28px; }
.saved-new h2, .saved-data h2, .saved-manage h2 { font-size: 1.3rem; }
.saved-manage form { margin-top: 12px; }
.clear-form { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.clear-form label.check { margin: 0; }
.cta-row.center { justify-content: center; }
.saved-out { margin-top: 10px; }
.saved-out h1 { font-size: clamp(1.7rem, 4vw, 2.2rem); }
.cook-month h2 { font-size: 1.3rem; margin-top: 22px; }
.saved h1, .saved-item .card-title { overflow-wrap: anywhere; }
