/* 홈 대시보드: 대형 모니터에서는 남는 폭과 가독성을 함께 확장한다. */
@media (min-width: 1600px) {
  .page {
    width: min(100%, 1920px);
    max-width: 1920px;
    padding: clamp(28px, 2vw, 44px) clamp(28px, 3vw, 64px) 72px;
  }

  .heading { margin-bottom: clamp(18px, 1.2vw, 26px); }
  .heading h1 { font-size: clamp(27px, 1.55vw, 36px); }
  .heading p, .today { font-size: clamp(13px, .78vw, 16px); }

  .upper-grid {
    grid-template-columns: minmax(500px, .94fr) minmax(620px, 1.06fr);
    gap: clamp(16px, 1.15vw, 26px);
  }
  .left-stack, .right-stack { gap: clamp(16px, 1.15vw, 26px); }
  .left-stack .card { min-height: clamp(240px, 18vh, 320px); }
  .right-stack .card { min-height: clamp(132px, 10vh, 176px); }

  .card { padding: clamp(18px, 1.1vw, 26px); border-radius: 12px; }
  .card-head { margin-bottom: clamp(12px, .9vw, 18px); }
  .card-title { font-size: clamp(17px, 1vw, 22px); }
  .more { font-size: clamp(12px, .75vw, 15px); }

  .summary { gap: clamp(8px, .65vw, 14px); }
  .metric { padding: clamp(11px, .8vw, 18px) 6px; }
  .metric b { font-size: clamp(25px, 1.65vw, 38px); }
  .metric span { font-size: clamp(11px, .7vw, 14px); }
  .tab { font-size: clamp(12px, .72vw, 14px); padding: 5px 10px; }
  .row { font-size: clamp(12px, .75vw, 15px); padding: clamp(9px, .6vw, 13px) 0; }
  .badge { font-size: clamp(10px, .62vw, 13px); padding: 3px 9px; }
  .empty, .muted { font-size: clamp(12px, .72vw, 14px); }

  .bottom-grid { margin-top: clamp(16px, 1.15vw, 26px); }
  .risk-gauge { width: clamp(155px, 11vw, 220px); }
  .risk-score { font-size: clamp(30px, 2vw, 42px); }
  .risk-grade { font-size: clamp(14px, .9vw, 18px); }
  /* 기상 일극값은 수치가 많으므로 대형 화면에서도 한 단계 작게 유지한다. */
  #weatherCard .weather-table,
  #weatherCard .home-weather-table,
  #weatherCard .weather-brief-table,
  #weatherCard .home-normal-table { font-size: clamp(10px, .55vw, 12px) !important; }
  #weatherCard .weather-table th,
  #weatherCard .weather-table td,
  #weatherCard .home-weather-table th,
  #weatherCard .home-weather-table td { padding: clamp(4px, .32vw, 7px) 4px; }

  /* 신규 보고서도 공지·자료실과 같은 목록 글자 크기를 사용한다. */
  .report-row .row-main b { font-size: inherit; }
  .report-row .report-meta { font-size: .85em; margin-top: 3px; }
}

/* 초광폭 화면에서도 콘텐츠가 좌우로 지나치게 퍼지지 않도록 상한을 둔다. */
@media (min-width: 2200px) {
  .page { width: min(100%, 2080px); max-width: 2080px; }
}
