/* ================================================
   V1_FOOD1 - 오늘의 식단 카드 (신버전) — TOTAL_FOOD1 복제 [2026-10-06]
   모든 값은 --food1-* CSS 변수 → 슬롯 설정(모달 "개별 latest 전용")에서 바로 바뀐다.
   배경/라운드/여백은 비우면 투명·0 → 슬롯 칸 배경(slot_box_bg)이 그대로 보인다.
   ================================================ */

.V1_FOOD1 { width: 100%; float: left; }

.V1_FOOD1 .food1_card {
  width: 100%; float: left; box-sizing: border-box;
  text-align: center;
  background: var(--food1-bg, transparent);
  border-radius: var(--food1-radius, 0);
  padding: var(--food1-padding, 0);
}
.V1_FOOD1.food1_align_left  .food1_card { text-align: left; }
.V1_FOOD1.food1_align_right .food1_card { text-align: right; }
.V1_FOOD1.food1_align_left  .food1_icon { justify-content: flex-start; }
.V1_FOOD1.food1_align_right .food1_icon { justify-content: flex-end; }

/* 아이콘 */
.V1_FOOD1 .food1_icon {
  width: 100%; display: flex; justify-content: center;
  margin-bottom: var(--food1-icon-mb, clamp(12px, calc(0.78vw + 9.5px), 20px));
}
.V1_FOOD1 .food1_icon img {
  width: var(--food1-icon-size, clamp(100px, calc(3.91vw + 87.5px), 150px));
  height: auto; max-height: 130px; object-fit: contain;
}

/* 제목 */
.V1_FOOD1 .food1_title {
  font-size: var(--food1-title-size, clamp(20px, calc(0.78vw + 17.5px), 30px));
  font-weight: var(--food1-title-weight, 800);
  color: var(--food1-title-color, #fff);
  letter-spacing: var(--food1-title-spacing, -1px);
  margin-bottom: var(--food1-title-mb, clamp(4px, calc(0.31vw + 3px), 8px));
}

/* 날짜 */
.V1_FOOD1 .food1_date {
  font-size: var(--food1-date-size, clamp(18px, calc(0.63vw + 16px), 26px));
  font-weight: var(--food1-date-weight, 700);
  color: var(--food1-date-color, #fff);
  letter-spacing: var(--food1-date-spacing, -0.5px);
  margin-bottom: var(--food1-date-mb, clamp(14px, calc(0.78vw + 11.5px), 22px));
}

/* 칼로리 박스 */
.V1_FOOD1 .food1_calorie_box {
  display: inline-flex; align-items: center; gap: 4px;
  background: var(--food1-cal-bg, #fff);
  border-radius: var(--food1-cal-box-radius, 100px);
  padding: clamp(8px, calc(0.47vw + 6.5px), 14px) clamp(18px, calc(0.94vw + 15px), 30px);
  margin-bottom: var(--food1-cal-box-mb, clamp(14px, calc(0.78vw + 11.5px), 22px));
}
.V1_FOOD1 .food1_calorie_label,
.V1_FOOD1 .food1_calorie_value {
  font-size: var(--food1-cal-size, clamp(14px, calc(0.31vw + 13px), 18px));
  color: var(--food1-cal-color, #222);
}
.V1_FOOD1 .food1_calorie_label { font-weight: 600; }
.V1_FOOD1 .food1_calorie_value { font-weight: 800; }

/* 메뉴 */
.V1_FOOD1 .food1_menu {
  font-size: var(--food1-menu-size, clamp(13px, calc(0.31vw + 12px), 17px));
  font-weight: var(--food1-menu-weight, 400);
  color: var(--food1-menu-color, rgba(255,255,255,0.9));
  line-height: var(--food1-menu-lh, 1.7);
  letter-spacing: -0.3px; word-break: keep-all;
}

/* 원산지 */
.V1_FOOD1 .food1_origin {
  width: 100%; float: left;
  margin-top: clamp(10px, calc(0.63vw + 8px), 18px);
  padding-top: clamp(10px, calc(0.63vw + 8px), 18px);
  border-top: 1px dashed var(--food1-origin-line, rgba(255,255,255,0.25));
  font-size: var(--food1-origin-size, clamp(12px, calc(0.23vw + 11.3px), 15px));
  color: var(--food1-origin-color, rgba(255,255,255,0.7));
  line-height: 1.6; word-break: keep-all;
}
.V1_FOOD1 .food1_origin_label { font-weight: 600; margin-right: 6px; }

/* 더보기 버튼 */
.V1_FOOD1 .food1_more { width: 100%; float: left; margin-top: clamp(14px, calc(0.78vw + 11.5px), 22px); }
.V1_FOOD1 .food1_more_btn {
  display: inline-flex; align-items: center; gap: 4px;
  padding: var(--food1-more-padding, clamp(8px, calc(0.47vw + 6.5px), 14px) clamp(20px, calc(1.17vw + 16.25px), 35px));
  background: var(--food1-more-bg, rgba(255,255,255,0.15));
  border: 1px solid var(--food1-more-border, rgba(255,255,255,0.3));
  border-radius: var(--food1-more-radius, 100px);
  color: var(--food1-more-color, #fff);
  font-size: var(--food1-more-size, clamp(13px, calc(0.23vw + 12.3px), 16px));
  font-weight: 600; text-decoration: none;
  transition: filter 0.2s;
}
.V1_FOOD1 .food1_more_btn:hover { filter: brightness(1.15); }

/* 카드 전체 링크 */
.V1_FOOD1 .food1_card_link { display: block; width: 100%; text-decoration: none; color: inherit; transition: opacity 0.2s; }
.V1_FOOD1 .food1_card_link:hover { opacity: 0.85; }

/* 빈 상태 */
.V1_FOOD1 .food1_empty { font-size: clamp(14px, calc(0.31vw + 13px), 18px); color: var(--food1-menu-color, rgba(255,255,255,0.7)); padding: 20px 0; }

/* 웹접근성 */
.V1_FOOD1 a:focus-visible { outline: 2px solid #fff; outline-offset: 2px; }

@media only all and (max-width: 767px) {
  .V1_FOOD1 .food1_icon img { max-height: 100px; }
}
