/* desktop-layout-tune.css — PC 본문/푸터 폭 통일 보정 */

@media (min-width: 1024px) {
  :root {
    --desktop-content-max: 720px;
    --desktop-content-pad-x: 28px;
    --desktop-content-pad-y: 32px;
  }

  .app-shell {
    width: 100%;
    max-width: 1060px;
    margin-left: auto;
    margin-right: auto;
  }

  .site-sidebar {
    width: 240px;
  }

  .site-main {
    align-items: center;
    width: 100%;
    min-width: 0;
  }

  .page-container {
    width: 100%;
    max-width: calc(var(--desktop-content-max) + (var(--desktop-content-pad-x) * 2));
    margin-left: auto;
    margin-right: auto;
    padding: var(--desktop-content-pad-y) var(--desktop-content-pad-x);
    box-sizing: border-box;
  }

  .page-container > .home-dash,
  .page-container > .layout-cols,
  .page-container > .layout-main,
  .page-container > .write-page,
  .page-container > .page-enter,
  .page-container > .admin-layout,
  .page-container > div[style*="max-width"] {
    width: 100% !important;
    max-width: var(--desktop-content-max) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box;
  }

  .home-dash,
  .layout-cols,
  .layout-main,
  .write-page {
    width: 100%;
    max-width: var(--desktop-content-max);
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }

  .layout-cols {
    display: block !important;
  }

  .layout-sidebar {
    display: none !important;
  }

  .site-footer {
    width: 100%;
    align-self: stretch;
    box-sizing: border-box;
  }

  .site-footer__inner,
  .site-footer__copy-bar {
    width: 100%;
    max-width: calc(var(--desktop-content-max) + (var(--desktop-content-pad-x) * 2));
    margin-left: auto;
    margin-right: auto;
    box-sizing: border-box;
  }

  .site-footer__inner,
  .site-footer__copy-bar {
    padding-left: var(--desktop-content-pad-x) !important;
    padding-right: var(--desktop-content-pad-x) !important;
  }

  /* 관리자 화면 — 사이트와 동일한 가로폭 사용 */
  body:has(.admin-layout) .site-sidebar,
  body:has(.admin-layout) .site-footer,
  body:has(.admin-layout) .bottom-nav {
    display: none !important;
  }

  body:has(.admin-layout) .site-main {
    min-height: 100vh;
  }

  body:has(.admin-layout) .page-container {
    max-width: none;
    width: 100%;
    padding: 0;
  }

  body:has(.admin-layout) .page-container > .admin-layout {
    max-width: 100% !important;
    width: 100% !important;
  }
}

@media (min-width: 1280px) {
  :root {
    --desktop-content-max: 740px;
  }

  .app-shell {
    max-width: 1100px;
  }
}

@media (min-width: 1024px) and (max-width: 1180px) {
  :root {
    --desktop-content-max: 660px;
    --desktop-content-pad-x: 22px;
  }

  .app-shell {
    max-width: 940px;
  }

  .site-sidebar {
    width: 230px;
  }
}

/* ── PC 홈: 빠른 시작 3열로 표시 (720px 폭에서 6열은 너무 작음) ── */
@media (min-width: 1024px) {
  .home-quick-grid {
    grid-template-columns: repeat(6, 1fr);
    gap: 10px;
  }

  .home-quick-btn {
    padding: 16px 8px 12px;
    min-height: 88px;
  }

  .home-quick-btn__icon { font-size: 24px; }
  .home-quick-btn__label { font-size: 12px; }

  /* 랭킹 hover 효과 강화 */
  .home-rank-item:hover {
    box-shadow: var(--shadow-xs);
  }

  /* 통계 카드 hover */
  .home-stat-card:hover {
    box-shadow: var(--shadow-sm);
  }
}
