/* 一周食谱生成器 */
.mw-wrap { max-width: 1200px; margin: 0 auto; padding: 0 12px; }
.mw-card { background: #fff; border: 1px solid #fef9c3; border-radius: 14px; padding: 22px; margin-bottom: 18px; }

.mw-row { display: flex; gap: 12px; align-items: center; margin-bottom: 12px; flex-wrap: wrap; }
.mw-row label { flex: 0 0 100px; font-size: 13px; color: #4b5563; }
.mw-row select, .mw-row input[type=number] { flex: 1; min-width: 120px; padding: 9px 11px; border: 1px solid #fde047; border-radius: 6px; font-size: 14px; background: #fff; }
.mw-row input[type=checkbox] { width: 18px; height: 18px; margin-right: 6px; }
.mw-row .chk-label { display: inline-flex; align-items: center; padding: 6px 12px; cursor: pointer; background: #fef9c3; border-radius: 6px; font-size: 13px; }
.mw-row .chk-label input { margin-right: 8px; }

.mw-btn { padding: 10px 18px; border: 0; border-radius: 6px; cursor: pointer; font-size: 14px; font-weight: 500; transition: all .15s; }
.mw-btn-primary { background: linear-gradient(135deg, #ca8a04, #a16207); color: #fff; }
.mw-btn-primary:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(202,138,4,.4); }
.mw-btn-secondary { background: #fef9c3; color: #713f12; border: 1px solid #fde047; }
.mw-btn-secondary:hover { background: #fef08a; }

.mw-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: 10px; margin-bottom: 16px; }
.mw-summary-item { background: linear-gradient(135deg, #fef9c3, #fef08a); padding: 14px 12px; border-radius: 10px; text-align: center; color: #713f12; }
.mw-summary-item strong { font-size: 18px; }
.mw-summary-item small { font-size: 11px; opacity: .8; }

.mw-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px; margin-bottom: 18px; }
.mw-day-card { background: #fff; border: 1px solid #fde047; border-radius: 10px; overflow: hidden; }
.mw-day-head { background: linear-gradient(135deg, #ca8a04, #a16207); color: #fff; padding: 8px 12px; font-weight: 700; font-size: 14px; }

.mw-meal { padding: 10px 12px; border-top: 1px solid #fef9c3; }
.mw-meal:first-of-type { border-top: 0; }
.mw-meal-label { font-size: 11px; color: #92400e; font-weight: 600; margin-bottom: 2px; }
.mw-meal-name { font-size: 14px; color: #1f2937; font-weight: 600; }
.mw-meal-meta { font-size: 11px; color: #6b7280; margin-top: 2px; }
.mw-meal-mains { margin-top: 4px; display: flex; flex-wrap: wrap; gap: 3px; }
.mw-meal-mains span { background: #fef9c3; color: #713f12; padding: 1px 7px; border-radius: 9px; font-size: 10px; }

.mw-shopping { background: #fef9c3; border: 1px solid #fde047; border-radius: 10px; padding: 14px 16px; margin-bottom: 16px; }
.mw-shopping h4 { margin: 0 0 10px; color: #713f12; font-size: 14px; font-weight: 700; }
.mw-ing-list { display: flex; flex-wrap: wrap; gap: 6px; }
.mw-ing { background: #fff; padding: 4px 10px; border-radius: 14px; font-size: 12px; color: #713f12; border: 1px solid #fde047; }

.mw-actions { display: flex; gap: 10px; flex-wrap: wrap; }

@media print {
  body * { visibility: hidden; }
  #menuResult, #menuResult * { visibility: visible; }
  #menuResult { position: absolute; left: 0; top: 0; width: 100%; }
  .mw-actions, .mw-btn { display: none !important; }
  .mw-grid { grid-template-columns: repeat(7, 1fr); }
}

@media (max-width: 600px) {
  .mw-row label { flex: 0 0 100%; }
  .mw-grid { grid-template-columns: 1fr 1fr; }
}
