/*
 * Windows / desktop browser presentation for 松哥今日关注.
 * The mobile stylesheet and application logic remain unchanged.
 * Enabled only at desktop widths; phones and tablets keep their current layout.
 */
@media (min-width: 1024px) and (hover: hover) and (pointer: fine) {
  :root { font-size: 16px; }
  body { min-width: 1024px; background: #f6f4f2; }

  body main,
  body:not(.selection-page-open) main,
  body.selection-page-open main {
    box-sizing: border-box;
    width: calc(100% - 72px);
    max-width: 1440px;
    margin: 0 auto;
    padding: 24px 30px 122px;
  }

  /* Four-across lottery lobby, using all existing game buttons and handlers. */
  .home-view { width: 100%; }
  .home-view .home-draw-feature { margin-bottom: 24px; }
  .home-view .home-draw-feature .today-draw-card {
    padding: 23px 27px;
    border-radius: 22px;
  }
  .home-view .today-draw-games { grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
  .home-view .today-draw-games button { min-height: 43px; font-size: 14px; }
  .home-view .today-draw-heading strong { font-size: 19px; }
  .home-view .home-section-heading { margin: 24px 2px 14px; }
  .home-view .home-section-heading strong { font-size: 21px; }
  .home-view .home-section-heading span { font-size: 13px; }
  .home-view .games { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
  .home-view .games button {
    min-height: 114px;
    padding: 19px 16px;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    gap: 12px;
    font-size: 19px;
    border-radius: 20px;
  }
  .home-view .game-icon { width: 52px; height: 52px; font-size: 12px; }
  .home-view .game-icon-3d, .home-view .game-icon-p3 { font-size: 17px; }
  .home-view .games small { font-size: 13px; }
  .home-view #sports-open { padding: 19px 22px; min-height: 74px; font-size: 19px; }
  .home-view #sports-open small { font-size: 14px; }
  .home-view .home-tools-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
  .home-view .home-tools-grid button { min-height: 100px; font-size: 16px; }
  .home-view .service-icon { font-size: 24px; }
  .home-view .shop-slogan { margin-top: 14px; padding: 18px 25px; }
  .home-view .store-advice { max-width: 100%; }

  /* The picker has two spacious zones rather than a narrow phone column. */
  .selection-view .selection-page-head {
    top: 0;
    grid-template-columns: 130px minmax(0, 1fr) 130px;
    padding: 16px 22px;
    margin-bottom: 22px;
    border: 1px solid #e6dce8;
    border-radius: 16px;
    box-shadow: 0 4px 18px rgba(71, 48, 61, .05);
  }
  .selection-view .selection-page-head h1 { font-size: 29px; }
  .selection-view .selection-page-head button { font-size: 16px; min-height: 45px; }
  .selection-view .selection-page-tools { gap: 15px; font-size: 15px; }
  .selection-view .selection-page-tools button { padding: 10px 16px; font-size: 14px; }
  .selection-view .modes { max-width: 780px; gap: 12px; }
  .selection-view .modes button { font-size: 16px; min-height: 45px; padding: 12px; }
  .selection-view #zones {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    align-items: start;
  }
  .selection-view #zones > .section {
    min-width: 0;
    margin: 12px 0;
    padding: 20px 22px 24px;
    border-radius: 18px;
  }
  .selection-view #zones .section h2 { font-size: 20px; margin-bottom: 15px; }
  .selection-view #zones .row { font-size: 16px; margin: 13px 0; }
  .selection-view #zones select { font-size: 16px; min-height: 42px; }
  .selection-view #zones .hint { font-size: 14px; line-height: 1.6; }
  .selection-view #zones .tabs button { font-size: 14px; padding: 10px 14px; }
  .selection-view #zones .balls { gap: 11px 6px; margin-top: 16px; }
  .selection-view #zones .ball { max-width: 44px; font-size: 16px; }
  .selection-view .lower-stage { margin: 20px 0; width: 100%; }
  .selection-view .portrait-photo { display: none; }
  .selection-view #result-panel { margin-top: 12px; padding: 24px; }
  .selection-view #result { font-size: 17px; line-height: 1.9; }
  #selection-dock .dockinner { max-width: 1100px; gap: 12px; }
  #selection-dock #review { min-width: 156px; font-size: 16px; }
  #selection-dock .money { font-size: 23px; }

  /* The existing navigation and dialogs remain functional on larger screens. */
  .home-bottom-nav {
    left: 50%;
    right: auto;
    bottom: 18px;
    width: min(650px, calc(100% - 80px));
    transform: translateX(-50%);
    border: 1px solid #edb8bf;
    border-radius: 20px;
    box-shadow: 0 12px 32px rgba(88, 45, 54, .16);
    overflow: hidden;
  }
  .library-modal { align-items: center; }
  .library-sheet { width: min(1050px, calc(100vw - 100px)); max-height: 88dvh; border-radius: 22px; }
  .sports-confirm-sheet { max-width: 900px; }
  #recommendations-view { max-width: 1200px; margin: auto; }
}

/* Touch-first iPads use a tablet layout, not a Windows navigation rail. */
@media (min-width: 768px) and (pointer: coarse) {
  body { min-width: 0; }
  body main,body:not(.selection-page-open) main,body.selection-page-open main {
    width: calc(100% - 32px); max-width: 940px; margin: 0 auto;
    padding: 18px 16px 120px;
  }
  .home-view .games { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
  .home-view .games button { min-width: 0; }
  .selection-view #zones { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
  .selection-view #zones > .section { min-width: 0; }
  .home-bottom-nav { top: auto; bottom: 0; left: 0; right: 0; width: 100%; transform: none; }
}
/* Intermediate Windows windows / split-screen browser panes. */
@media (min-width: 768px) and (max-width: 1023.98px) {
  main { width: calc(100% - 36px); max-width: 850px; }
  .home-view .games { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .selection-view #zones { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
  .selection-view #zones > .section { min-width: 0; }
}

/* Current-app desktop refinements; this file intentionally leaves phone widths alone. */
@media (min-width:1024px) and (hover: hover) and (pointer: fine) {
  .home-view {display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:20px;align-items:center}
  .home-view>[hidden] {display:none!important}
  .home-view>* {grid-column:1/-1;min-width:0}
  .home-view>.desktop-app-heading[hidden] {display:flex!important;grid-column:1;align-items:center;gap:13px;padding:4px 0 20px}
  .desktop-app-heading img {width:52px;height:52px;border-radius:15px}
  .desktop-app-heading strong {display:block;font-size:25px;font-weight:850;letter-spacing:1px;color:#713444}
  .desktop-app-heading span {display:block;font-size:13px;color:#9a7c83;margin-top:5px}
  .home-view>.theme-launcher {grid-column:2;grid-row:1;margin:0 0 20px;max-width:480px}
  .home-view .today-draw-summary {gap:28px}
  .home-view #today-draw-pool {font-size:34px;line-height:1.3}
  .home-view .today-draw-pool-block small {font-size:13px}
  .home-view #today-draw-pool-meta {font-size:12px}
  .home-view .today-draw-actions {grid-template-columns:140px;gap:8px}
  .home-view #today-draw-detail-button,.home-view #draw-bulletin-open {width:140px;height:38px;min-height:38px;font-size:14px}
  .home-view .shop-slogan {min-height:0}
  .selection-view[data-game="fc3d"] #zones,.selection-view[data-game="p3"] #zones,.selection-view[data-game="p5"] #zones,.selection-view[data-game="qxc"] #zones {grid-template-columns:repeat(3,minmax(0,1fr))}
  .selection-view[data-game="kl8"] #zones {grid-template-columns:1fr}
  .selection-view[data-game="p5"] #zones>.p5-single-card,.selection-view[data-game="p5"] #zones>.p5-combo-card,.selection-view #zones>.qxc-seeds,.selection-view #zones>.qxc-combination {grid-column:1/-1}
  .selection-view #zones .p5-single-row .ball {width:38px;max-width:100%;justify-self:center}
  .selection-view #zones .p5-single-row {grid-template-columns:35px minmax(0,1fr);gap:12px;padding:12px 0}
  .selection-view[data-game="kl8"] #zones .balls {grid-template-columns:repeat(10,minmax(0,1fr));max-width:800px}
  .selection-view .modes,#extra-modes {width:100%;max-width:900px}
  #sports-modal {align-items:center;padding:24px;background:#2e1f2b66}
  #sports-modal .sports-sheet {width:min(1240px,100%);height:calc(100dvh - 48px);max-height:1000px;border-radius:18px;margin:auto}
  #trend-modal {padding:0}
  #trend-modal .trend-sheet {width:100%;height:100dvh;max-width:none}
  #draw-bulletin-modal {align-items:center;background:#2e1f2b66;padding:24px}
  #draw-bulletin-modal .draw-bulletin-sheet {width:min(720px,100%);max-width:720px;height:calc(100dvh - 48px);max-height:1100px;border-radius:20px}
  #recommendations-list {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:start}
  #recommendations-list .poster-card {margin:0;min-width:0}
  .review-overlay {align-items:center;padding:30px}
  .review-sheet {max-width:920px;max-height:80dvh;padding:24px}
  .review-overlay.is-full .review-sheet {max-width:none}
  .home-bottom-nav button {font-size:15px;flex-direction:row;gap:9px}
  .home-bottom-nav button>span {font-size:23px}
}
@media (min-width:768px) and (max-width:1023.98px) {
  .selection-view #zones>.p5-single-card,.selection-view #zones>.p5-combo-card {grid-column:1/-1}
}
/* A desktop navigation rail leaves every content card unobstructed. */
@media (min-width:1024px) and (hover: hover) and (pointer: fine) {
  body main,body:not(.selection-page-open) main,body.selection-page-open main {width:calc(100% - 192px);max-width:1440px}
  .home-bottom-nav {left:max(18px,calc((100vw - 1630px)/2));right:auto;top:150px;bottom:auto;width:88px;height:auto;transform:none;grid-template-columns:1fr;padding:12px 7px;gap:8px;border-radius:18px}
  .home-bottom-nav button {min-height:64px;flex-direction:column;gap:7px;border-radius:11px;font-size:14px}
  .home-bottom-nav button[aria-current=page] {background:#fff7f4}
}
