/* HowieKnows — Desktop Experience Lead SAFE chrome (2026-09-05)
   Viewport: ~1440×900. Applies only at min-width: 900px.
   Does not edit Mobile #224 files. writer_certifies=false. Not LIVE. */

@media (min-width: 900px) {
  /* First-use signature was sized for bottom tabs (100svh - 56px) while desktop chrome
     lives at the TOP (tabs + header ≈ 126px). That forced a scroll to reach location. */
  .home-signature-shell {
    min-height: min(640px, calc(100svh - 126px));
    max-width: 100%;
    padding: 18px 28px 20px;
    box-sizing: border-box;
  }
  .home-signature {
    width: min(1040px, 100%);
    padding: 18px 22px;
  }
  .hs-frame {
    min-height: 0;
    padding: 36px 48px 32px;
  }

  /* Earned plan: collapse the lit marquee so UNDERSTOOD / asked / Plan Board enter
     the first 1440×900 viewport instead of sitting under a 48svh poster. */
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .home-signature-shell {
    min-height: 0;
    padding: 10px 24px 6px;
  }
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .home-signature {
    padding: 10px 16px 8px;
  }
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .home-signature.is-lit .hs-frame {
    min-height: 0;
    padding: 22px 36px 18px;
  }
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .hs-rule {
    margin: 10px 0;
  }
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .hs-asked {
    margin-top: 10px;
    color: rgba(247,243,233,.72);
  }
  body:has(#homePlanBoard.home-plan-board:not([hidden])) .home-plan-board {
    padding-top: 8px;
    padding-bottom: 36px;
  }

  /* Use more of the 1440 canvas without inventing a second layout system. */
  .wrap { max-width: 1240px; }

  /* Overlays must clear the fixed top nav + header stack (≈126px), not the 88px
     tablet offset that lands the panel mid-chrome. */
  .loc-panel,
  .search-panel { margin-top: 140px; max-width: 560px; }
  .signup-panel { margin-top: 160px; }

  /* While a modal is open, desktop top tabs / planbar / header cannot steal clicks. */
  body.search-open #tabs,
  body.search-open .planbar,
  body.search-open .ghead { pointer-events: none; }

  .loc-overlay,
  .search-overlay { z-index: 220; }
  .planning-moment { z-index: 230; }

  /* Empty header context looks like a dead control on a wide bar. */
  .gh-ctx[data-desktop-empty-ctx="1"] {
    color: var(--accent-hot);
    letter-spacing: .12em;
  }

  /* Location control on the dark stage: readable, not a cramped inherited chip. */
  .hs-location-entry {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-top: 18px;
    color: rgba(247,243,233,.58);
    font: 500 13px/1.3 Inter, system-ui, sans-serif;
  }
  .hs-location-entry button {
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid rgba(247,243,233,.28);
    border-radius: 8px;
    background: rgba(3,4,5,.35);
    color: #fffdf7;
    font: 600 13px/1 Inter, system-ui, sans-serif;
  }
  .hs-location-entry button:focus-visible {
    outline: 2px solid rgba(255,216,140,.85);
    outline-offset: 2px;
  }

  /* Provenance / Why Howie Knows: 42ch was a phone-width clamp on a 1240 stage. */
  .home-plan-board .pb-trust,
  .home-plan-board .pb-why-howie,
  .home-plan-board .pb-why-this,
  .home-plan-board .pb-wto,
  .home-plan-board .pb-access,
  .home-plan-board .pb-role {
    max-width: 68ch;
    overflow: visible;
    text-overflow: unset;
    white-space: normal;
    overflow-wrap: anywhere;
  }

  /* Plan shortcut can use width; still ellipsize the stop list, not the label. */
  .planbar {
    width: min(760px, calc(100% - 48px));
    bottom: 20px;
  }

  /* Horizon chips stay one row on desktop. */
  .horizon-chips {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 10px;
  }

  /* Planning overlay: Cancel is a real control, not a keyboard trap. */
  .hs-planning-cancel {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 96px;
    min-height: 40px;
    margin-top: 18px;
    padding: 0 16px;
    border: 1px solid rgba(247,243,233,.32);
    border-radius: 8px;
    background: transparent;
    color: #fffdf7;
    font: 600 13px/1 Inter, system-ui, sans-serif;
    cursor: pointer;
  }
  .hs-planning-cancel:focus-visible {
    outline: 2px solid rgba(255,216,140,.85);
    outline-offset: 2px;
  }

  /* Visible share feedback when native share / clipboard is unavailable. */
  .hs-share-status {
    margin: 8px 0 0;
    font: 500 13px/1.4 Inter, system-ui, sans-serif;
    color: rgba(247,243,233,.72);
  }

  /* Multi-day readout already exists — keep the day kicker visible, not clipped. */
  [data-day-sections] + .cine .stage-k {
    overflow: visible;
    white-space: nowrap;
  }

  /* Party-size line is a fact, not utility chrome — keep it on one readable line. */
  .sl-partysize {
    overflow: visible;
    white-space: nowrap;
  }
}

@media (min-width: 900px) and (prefers-reduced-motion: reduce) {
  .home-signature-shell,
  .hs-frame { transition: none !important; }
}
