/* ============================================================
   부동산플러스 — mobile.css (반응형)
   ============================================================ */

/* ── 사이드 광고 숨김: 1100px 이하 ── */
@media (max-width: 1100px) {
  .ad-side { display: none !important; }
}

/* ── 태블릿: 768px ~ 1024px ── */
@media (max-width: 1024px) {
  .content { grid-template-columns: 1fr; }
  .stats-row { grid-template-columns: repeat(2, 1fr); }
  .region-grid { grid-template-columns: repeat(4, 1fr); }
  .detail-header { flex-direction: column; }
  .detail-price-box { text-align: left; }
}

/* ── 모바일: 768px 이하 ── */
@media (max-width: 768px) {
  /* 네비게이션 */
  .nav-inner { padding: 0 16px; }
  .nav-links {
    display: none;
    position: absolute;
    top: 56px;
    left: 0;
    right: 0;
    background: #fff;
    flex-direction: column;
    padding: 8px 16px 16px;
    border-bottom: 1px solid var(--border);
    box-shadow: 0 4px 12px rgba(0,0,0,0.06);
    z-index: 99;
  }
  .nav-links.open { display: flex; }
  .nav-links a { padding: 10px 12px; font-size: 14px; border-radius: 8px; }
  .nav-mobile-btn { display: flex; }

  /* 컨테이너 */
  .container { padding: 0 16px; }

  /* 히어로 */
  .hero { padding: 28px 16px 20px; }
  .hero h1 { font-size: 24px; }
  .hero p { font-size: 13px; margin-bottom: 18px; }
  .search-box { flex-direction: column; }
  .search-box input { height: 46px; font-size: 14px; }
  .search-box button { height: 46px; font-size: 14px; }

  /* 통계 카드 */
  .stats-row { grid-template-columns: repeat(2, 1fr); gap: 8px; padding: 0 16px 16px; }
  .stat-card { padding: 14px 16px; }
  .stat-value { font-size: 22px; }
  .stat-label { font-size: 10px; }

  /* 콘텐츠 */
  .content { padding: 0 16px 24px; gap: 12px; }

  /* 카드 */
  .card { padding: 16px; border-radius: 10px; }
  .section-title { font-size: 14px; }

  /* 테이블 */
  table { font-size: 12px; }
  th { font-size: 10px; padding: 8px 6px; }
  td { padding: 8px 6px; }

  /* 지역 그리드 */
  .region-grid { grid-template-columns: repeat(3, 1fr); gap: 6px; }
  .region-btn { padding: 10px 4px; font-size: 12px; }

  /* 상세 페이지 */
  .detail-title { font-size: 22px; }
  .detail-price-value { font-size: 28px; }
  .chart-container { height: 240px; }
  .chart-container-sm { height: 160px; }
  .chart-filter { flex-wrap: wrap; }
  .chart-btn { padding: 4px 10px; font-size: 11px; }
  .detail-tags { gap: 4px; }
  .dtag { font-size: 11px; padding: 3px 8px; }

  /* 토허제 */
  .permit-header { padding: 12px 0; }
  .page-title { font-size: 20px; }
  .permit-calendar { border-radius: 10px; }
  .cal-day { min-width: 56px; padding: 8px 4px; }
  .cal-day-num { font-size: 16px; }
  .cal-permit-cnt { font-size: 9px; }
  .permit-item { padding: 14px 16px; border-radius: 10px; margin-bottom: 6px; }
  .permit-complex-name { font-size: 14px; }
  .permit-complex-meta { font-size: 11px; }
  .permit-badge { font-size: 11px; padding: 3px 10px; }

  /* 광고 */
  .ad-horizontal { min-height: 60px; }
  .ad-rect { min-height: 200px; }

  /* 푸터 */
  footer { padding: 28px 16px; font-size: 11px; }

  /* 브레드크럼 */
  .breadcrumb { padding: 12px 0 4px; font-size: 11px; }
}

/* ── 초소형 모바일: 480px 이하 ── */
@media (max-width: 480px) {
  .hero h1 { font-size: 20px; }
  .stats-row { grid-template-columns: 1fr 1fr; }
  .stat-value { font-size: 20px; }
  .region-grid { grid-template-columns: repeat(3, 1fr); }
  .cal-day { min-width: 48px; }
  .cal-day-num { font-size: 14px; }
  .detail-price-value { font-size: 24px; }
  .chart-container { height: 200px; }
}

/* ── Trade List Mobile ── */
@media (max-width: 768px) {
  .page-header { padding: 12px 0; }
  .tab-pills { flex-wrap: wrap; }
  .tab-pill { padding: 5px 12px; font-size: 12px; }
  .filter-bar { flex-wrap: wrap; gap: 8px; }
  .filter-bar select { width: 100%; }
  .pagination a { min-width: 30px; height: 30px; font-size: 12px; }
}
