/* Homepage journey polish: faster first read, clearer choices and quieter utilities. */
.home-location-picker{max-width:620px;margin-top:20px;border:1px solid #b6cbc5;border-radius:18px;background:#f5f4ea;color:#143240;overflow:clip}
.home-location-picker>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:76px;padding:14px 18px;cursor:pointer;list-style:none;box-sizing:border-box}
.home-location-picker>summary::-webkit-details-marker{display:none}
.home-location-picker>summary span{min-width:0;display:grid;gap:4px}
.home-location-picker>summary strong{font-size:16px;font-weight:600;overflow-wrap:anywhere}
.home-location-picker>summary small{font-size:12px;color:#48645c}
.home-location-picker>summary b{display:grid;place-items:center;min-height:44px;padding-inline:14px;border-radius:22px;background:#153442;color:#fff;font-size:13px;font-weight:600}
.home-location-picker>summary:focus-visible{outline:3px solid #1594a8;outline-offset:-4px}
.home-location-picker .location-card{margin:0!important;border:0!important;border-top:1px solid #b6cbc5!important;border-radius:0!important;max-width:none;width:100%;box-sizing:border-box;box-shadow:none}
.selection-status{display:block;min-height:16px;margin:7px 0 0 43px;color:#71847d;font-size:9px;line-height:1.4}
#showForecastBtn{transition:background-color .18s ease,box-shadow .18s ease}
#showForecastBtn.selection-pending{background:#d5ff5f;box-shadow:0 0 0 3px #d5ff5f38}
.more-disclosure{margin-top:12px;border:1px solid var(--line);border-radius:14px;background:#fff;overflow:clip}
.more-disclosure>summary{min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 14px;cursor:pointer;list-style:none}
.more-disclosure>summary::-webkit-details-marker{display:none}
.more-disclosure>summary span,.more-disclosure>summary b{display:block}
.more-disclosure>summary span{color:var(--ink);font-size:13px;font-weight:800}
.more-disclosure>summary b{color:var(--muted);font-size:9px;font-weight:700;text-align:right}
.more-disclosure>summary:after{content:"+";flex:0 0 auto;color:var(--muted);font-size:20px}
.more-disclosure[open]>summary:after{content:"−"}
.more-disclosure .trip-log,.more-disclosure .accessibility-controls{margin:0;padding:16px;border-top:1px solid var(--line)}
html.theme-night .selection-status{color:#a8bec4}
html.theme-night .more-disclosure{background:#102d39;border-color:#35535e}
html.theme-night .more-disclosure>summary span{color:#e7f3f5}
html.theme-night .more-disclosure>summary b,html.theme-night .more-disclosure>summary:after{color:#a8c0c6}

@media(min-width:601px){
  .more-panel.open .more-links{display:grid}
  .more-panel.open{max-height:calc(100vh - 96px);overflow:auto}
}

/* Tablet layout: avoid desktop chrome compression and lazy-card reflow on iPad. */
@media (min-width:601px) and (max-width:900px) {
  .topbar {
    gap: 16px;
    padding-inline: clamp(20px, 3.5vw, 32px);
  }
  .topbar > .brand {
    flex: 0 0 118px;
    width: 118px;
  }
  .topbar > .brand .brand-wordmark {
    width: 118px;
    max-width: 118px;
  }
  .topbar > nav {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: flex-end;
    gap: clamp(8px, 1.6vw, 14px);
  }
  .hero {
    min-height: 0;
    padding: 52px 5vw 58px;
  }
  .hero-copy,
  .location-card {
    width: 100%;
    max-width: none;
    min-width: 0;
  }
  .forecast-shell {
    padding: 48px 5vw;
  }
  .section-heading {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 16px;
  }
  .section-actions {
    margin-left: auto;
  }
  .dashboard-grid,
  .dashboard-column,
  .dashboard-grid > *,
  .dashboard-grid article,
  .dashboard-grid section {
    width: 100%;
    max-width: 100%;
    min-width: 0;
  }
  .moon-panel,
  .playbook,
  .rules-section {
    content-visibility: visible;
    contain-intrinsic-size: auto;
  }
  .score-card {
    grid-template-columns: 140px minmax(0, 1fr);
    gap: 20px;
    padding: 24px;
  }
  .score-ring {
    width: 138px;
    height: 138px;
  }
  .dashboard-moon {
    height: auto !important;
    min-height: 0 !important;
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 18px;
    padding: 22px;
  }
  .dashboard-moon .moon-visual {
    width: 96px;
    height: 96px;
  }
  .dashboard-moon .phase-list {
    grid-column: 1 / -1;
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

@media(max-width:760px){
  .hero{padding:28px 16px 32px}
  .hero .eyebrow{margin-top:0}
  .hero h1{margin:17px 0 12px;font-size:clamp(40px,12.2vw,49px);line-height:.98}
  .hero .subhead{margin:0;font-size:13px;line-height:1.5}
  .hero-paths{margin-top:18px}
  .location-card{margin-top:16px}
  .daily-brief{margin-top:12px;margin-bottom:14px}
  .daily-brief-head{padding:12px 14px}
  .daily-brief-grid{display:grid;grid-template-columns:1fr;overflow:visible}
  .daily-item{width:100%;min-width:0;min-height:72px;border-top:1px solid #294955!important;border-left:0!important}
  .daily-item:first-child{border-top:0!important}
  .home-arcade-rail{margin-top:14px;margin-bottom:20px;padding:15px 13px}
  .home-arcade-rail>header{margin-bottom:13px}
  .home-arcade-rail h2{font-size:26px}
  .home-game-card{min-height:218px}
  .home-arcade-drawer{margin-top:10px}
  .home-arcade-drawer summary{min-height:48px}
  .forecast-shell{padding-top:30px}
  .selection-status{margin-left:0;margin-top:6px}
  .more-panel{padding:17px}
  .more-links{grid-template-columns:1fr 1fr}
  .more-links .featured-game-link{min-height:68px}
  .more-disclosure>summary{min-height:54px}
}

@media(max-width:390px){
  .hero{padding-inline:14px}
  .hero-paths a{padding-inline:12px}
  .daily-live{max-width:96px}
  .home-arcade-rail>header p{display:none}
  .home-game-showcase .home-game-card{flex-basis:82vw}
}

@media(prefers-reduced-motion:reduce){#showForecastBtn{transition:none}}
@media(max-width:700px){.simple-footer nav a{display:inline-flex;align-items:center;min-height:40px;padding-inline:2px}}

.home-game-filters{display:flex;gap:7px;margin:12px 0 15px;overflow-x:auto;scrollbar-width:none}.home-game-filters::-webkit-scrollbar{display:none}.home-game-filters button{flex:0 0 auto;min-height:38px;padding:0 14px;border:1px solid #bfd0cc;border-radius:999px;background:#f7f8f4;color:#526970;font:750 11px/1 Manrope,system-ui,sans-serif;cursor:pointer}.home-game-filters button[aria-pressed=true]{border-color:#0b3545;background:#0b3545;color:#d5ff5f}.home-game-filter-status{position:absolute!important;width:1px!important;height:1px!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important}.home-game-card[hidden],.home-arcade-drawer[hidden]{display:none!important}.home-arcade-profile:empty{display:none}
@media(max-width:600px){.home-game-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-inline:0;overflow:visible}.home-game-filters button{width:100%;min-height:40px;padding-inline:8px}.home-game-filters button:nth-child(4){grid-column:1/2}.home-game-filters button:nth-child(5){grid-column:2/4}.home-arcade-rail{padding-bottom:18px}.home-game-showcase{max-width:100%}}

/* The daily strip follows the hero instead of sitting on top of its controls. */
.daily-brief{margin-top:16px}
