:root { --muted: #606657; }
.hero-shortcuts { display:flex; gap:14px; flex-wrap:wrap; margin-top:22px; font-size:13px; }
.hero-shortcuts a { border-bottom:1px solid #a4ad96; padding-bottom:4px; }
.discovery { padding-block:42px; }
.discovery-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.discovery-card { border:1px solid var(--line); border-radius:15px; padding:25px; background:#f1f0e4; transition:transform .15s,border-color .15s; }
.discovery-card:hover { transform:translateY(-3px); border-color:var(--green); }
.discovery-card > span { color:#8e462b; font-size:12px; }
.discovery-card h3 { margin:14px 0 10px; font-size:22px; }
.discovery-card p { font-size:13px; line-height:1.9; color:#5c6355; }
.discovery-card strong { font-size:13px; }
.catalog-control { display:grid; gap:5px; font-size:12px; }
.catalog-control select,.plan-day select,.plan-people select { min-height:44px; border:1px solid #b7c1ac; border-radius:8px; background:#fffdf6; color:var(--ink); font:inherit; padding:9px 12px; max-width:100%; }
#search-empty .btn { display:block; margin:15px auto; }
.tool-page { padding-block:40px 65px; }
.tool-page h1 { font-size:clamp(30px,4vw,48px); line-height:1.65; max-width:920px; }
.collection-intro { max-width:850px; line-height:2; color:#535d4d; }
.collection-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; margin-top:35px; }
.collection-recipe { border:1px solid var(--line); border-radius:14px; overflow:hidden; background:#fffdf6; }
.collection-recipe img { width:100%; aspect-ratio:3/2; object-fit:cover; }
.collection-recipe span { display:block; color:#83503a; font-size:12px; margin:18px 20px 6px; }
.collection-recipe h2 { font-size:21px; margin:0 20px; line-height:1.7; }
.collection-recipe p { font-size:13px; margin:12px 20px 22px; line-height:1.9; color:#606657; }
.collection-notes { margin-block:35px 0; padding:28px; background:#ecefdf; border-radius:14px; line-height:2; }
.collection-notes h2 { font-size:26px; }
.collection-notes li { margin-bottom:12px; }
.collection-notes a { text-decoration:underline; }
.plan-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; margin-top:24px; }
.plan-day { display:grid; gap:10px; padding:22px; background:#fffdf6; border:1px solid var(--line); border-radius:12px; }
.plan-day > label { font-weight:bold; }
.plan-day > a { font-size:13px; text-decoration:underline; }
.plan-actions { display:flex; gap:12px; flex-wrap:wrap; margin-block:20px; }
.planner-note { margin-block:24px; background:#ecefdf; border-radius:12px; padding:22px; line-height:1.9; }
.planner-note p:last-child { margin-bottom:0; }
.plan-people { display:flex; align-items:center; gap:16px; font-weight:bold; }
button:disabled { opacity:.55; cursor:not-allowed; }
.breadcrumbs { color:#5b6653; font-size:12px; line-height:2; margin-bottom:18px; }
.breadcrumbs a { text-decoration:underline; }
.cooking-progress { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; font-size:13px; padding:15px; background:#eef0e2; border-radius:10px; margin-block:18px; }
.cook-step { display:flex; align-items:flex-start; gap:14px; cursor:pointer; }
.cook-step input { width:22px; min-width:22px; height:22px; margin-top:5px; accent-color:var(--green); }
.step-done .cook-step > span { color:#606657; text-decoration:line-through; text-decoration-color:#849873; }
.cooking-mode .method { max-width:850px; }
.cooking-mode .recipe-layout { grid-template-columns:minmax(230px,1fr) minmax(0,2fr); }
.cooking-mode .method ol li { font-size:21px; line-height:2; padding-block:22px; }
.cooking-mode .cooking-progress { position:sticky; top:8px; z-index:3; border:1px solid #b5c2a8; }
.coming-soon { display:block; font-size:10px; color:#7a5835; }
@media(max-width:1000px) {
  .discovery-grid,.collection-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .header nav { gap:15px; }
}
@media(max-width:680px) {
  .discovery { padding-block:28px; }
  .discovery-grid,.collection-grid,.plan-grid { grid-template-columns:1fr; }
  .discovery-card { padding:20px; }
  .hero-shortcuts { font-size:12px; }
  .tool-page { padding-top:24px; }
  .plan-day { padding:18px; min-width:0; }
  .plan-day select { width:100%; min-width:0; }
  .plan-actions .btn { width:100%; }
  .catalog-control { flex:1 1 45%; min-width:0; }
  .catalog-control select { width:100%; min-width:0; }
  .collection-notes { padding:20px; }
  .cooking-mode .recipe-layout { grid-template-columns:1fr; }
  .cooking-mode .method ol li { font-size:18px; padding-right:35px; }
  .cook-step { gap:10px; }
}
@media print {
  .discovery,.hero-shortcuts,.cooking-progress,.cook-step input,.plan-actions,#plan-confirm,.breadcrumbs { display:none!important; }
  .step-done .cook-step > span { color:black; text-decoration:none; }
  .plan-grid { grid-template-columns:repeat(2,1fr); }
  .plan-day { break-inside:avoid; padding:10px; }
  .tool-page h1 { font-size:24pt; }
}
