@media (min-width: 601px) and (pointer: fine) {
  #mobile-app { display: none !important; }
}

@media (max-width: 600px), (pointer: coarse) {
  :root {
    --mobile-system-bottom: max(44px, env(safe-area-inset-bottom, 0px));
    --mobile-coral: #f43d4d;
    --mobile-coral-light: #ff7a78;
    --mobile-cream: #f5efeb;
    --mobile-muted: #aaa0a4;
    --mobile-popup-heading-size: 32px;
    --mobile-popup-text-size: 20px;
    --mobile-popup-icon-size: 44px;
    --mobile-popup-action-size: 19px;
  }

  html:has(#mobile-app) { background: #09080a; }
  body.mobile-experience { height: 100dvh; overflow: hidden; background: #09080a; }
  body.mobile-experience > :not(#mobile-app):not(dialog):not(.feedback-dialog) { display: none !important; }
  body.mobile-experience #voice-search-button { display: none !important; }

  #mobile-app {
    position: fixed;
    z-index: 100;
    top: 0;
    bottom: 0;
    left: var(--mobile-viewport-left, 0px);
    width: var(--mobile-viewport-width, 100%);
    max-width: none;
    height: 100dvh;
    overflow: hidden;
    background:
      radial-gradient(circle at 50% 82%, #42151b55 0, transparent 34%),
      radial-gradient(circle at 90% 8%, #26344b2e 0, transparent 35%),
      linear-gradient(180deg, #100e11 0%, #0b090c 64%, #110c10 100%);
    color: var(--mobile-cream);
    isolation: isolate;
  }
  #mobile-app:fullscreen { inset: 0; width: 100%; height: 100%; }
  #mobile-app::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: 0;
    opacity: .3;
    pointer-events: none;
    background-image: linear-gradient(#ffffff05 1px, transparent 1px);
    background-size: 100% 8px;
    mask-image: linear-gradient(to bottom, #000, transparent 65%);
  }
  .m-interface { position: absolute; inset: 0; opacity: 0; transition: opacity 500ms ease; }
  .m-app-ready .m-interface { opacity: 1; }

  .m-launch {
    position: absolute;
    z-index: 40;
    inset: 0;
    display: grid;
    place-items: center;
    pointer-events: none;
    background: linear-gradient(180deg, #100e11, #0b090c 72%, #110c10);
    transition: opacity 360ms ease;
  }
  .m-launch.is-complete { opacity: 0; }
  .m-launch-logo {
    position: relative;
    display: grid;
    grid-template-columns: 58px auto;
    grid-template-rows: auto auto;
    column-gap: 12px;
    align-items: center;
    width: min(86vw, 370px);
    opacity: 0;
    transform: scale(.78);
    filter: blur(7px);
    will-change: transform, opacity;
    animation: m-logo-arrive 780ms cubic-bezier(.16,.82,.29,1) 120ms forwards;
  }
  .m-launch-popcorn { grid-row: 1 / 3; width: 58px; height: 68px; }
  .m-launch-words { display: flex; align-items: baseline; gap: 8px; font: 900 40px/.9 var(--condensed); letter-spacing: -.8px; white-space: nowrap; }
  .m-launch-words .m-to { color: var(--mobile-coral); }
  .m-launch-lower { display: flex; align-items: end; justify-content: space-between; gap: 14px; margin-top: 9px; }
  .m-launch-tagline { color: #d1c5c7; font-size: 8px; letter-spacing: 1.8px; white-space: nowrap; }
  .m-launch-guide { color: #efb6a2; font: 800 15px/1 var(--condensed); letter-spacing: 3px; white-space: nowrap; }
  .m-launch.is-exiting .m-launch-logo { animation: m-logo-exit 720ms cubic-bezier(.4,0,.2,1) forwards; }

  .m-utility {
    position: absolute;
    z-index: 12;
    top: max(18px, calc(env(safe-area-inset-top, 0px) + 14px));
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--mobile-muted);
    opacity: .78;
  }
  .m-help { left: max(13px, calc(env(safe-area-inset-left, 0px) + 11px)); }
  .m-settings { right: max(13px, calc(env(safe-area-inset-right, 0px) + 11px)); }
  .m-utility svg { width: 29px; height: 29px; fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }

  .m-stage { position: absolute; inset: 0; }
  .m-home { position: absolute; inset: max(84px, calc(env(safe-area-inset-top, 0px) + 78px)) 0 190px; display: grid; place-items: center; padding: 12px 22px 78px; }
  .m-prompt {
    position: relative;
    display: grid;
    place-items: center;
    width: 100%;
    height: min(48dvh, 410px);
    min-height: 290px;
    padding: 42px 30px 54px;
    border: 1px solid #403039;
    border-radius: 34px;
    background: linear-gradient(145deg, #211a1f, #171317 75%);
    box-shadow: 0 28px 70px #0009, inset 0 1px 0 #ffffff0a;
  }
  .m-prompt::before { content: ""; position: absolute; inset: 12px; border: 1px solid #ffffff08; border-radius: 25px; }
  .m-prompt::after {
    content: "";
    position: absolute;
    left: 50%;
    bottom: -68px;
    width: 66px;
    height: 90px;
    background: linear-gradient(145deg, #1a1519 45%, #211a1f 46%);
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    transform: translateX(-50%);
    filter: drop-shadow(0 10px 10px #0007);
  }
  .m-prompt-copy { position: relative; z-index: 1; text-align: center; }
  .m-prompt p { max-width: 320px; margin: 0; text-align: center; font: 400 clamp(38px,10.4vw,48px)/1.06 var(--serif); letter-spacing: -1.5px; text-wrap: balance; }
  .m-prompt strong { color: var(--mobile-coral-light); font-weight: 400; }
  .m-prompt-hint { position: relative; z-index: 1; display: block; margin-top: 18px; color: #c1b5ba; font-size: 16px; letter-spacing: .02em; }
  .m-text-search { position: relative; z-index: 2; display: grid; grid-template-columns: minmax(0,1fr) 56px; width: min(100%,340px); overflow: hidden; border: 1px solid #6a4b56; border-radius: 18px; background: #100d10e8; box-shadow: 0 15px 38px #0008; }
  .m-text-search[hidden] { display: none; }
  .m-text-search input { min-width: 0; height: 64px; padding: 0 8px 0 18px; border: 0; outline: 0; background: transparent; color: var(--mobile-cream); font-size: 19px; }
  .m-text-search input::placeholder { color: #9d9096; }
  .m-text-search button { display: grid; width: 56px; height: 64px; place-items: center; border: 0; background: var(--mobile-coral); color: white; font-size: 28px; }
  .m-text-search:focus-within { border-color: #e88682; box-shadow: 0 0 0 3px #ff817a21,0 15px 38px #0008; }

  .m-results { position: absolute; inset: 0; }
  .m-result-card {
    position: absolute;
    z-index: 2;
    inset: max(72px, calc(env(safe-area-inset-top, 0px) + 68px)) 12px calc(var(--mobile-system-bottom) + 18px);
    overflow: hidden;
    border: 1px solid #584049;
    border-radius: 32px;
    background: #161216;
    box-shadow: 0 30px 80px #000c;
    isolation: isolate;
    touch-action: none;
    user-select: none;
  }
  .m-result-card::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    pointer-events: none;
    background:
      linear-gradient(180deg, #0b090dcc 0%, transparent 17%, transparent 42%, #0d0a0e96 61%, #0b090ded 77%, #0a080bec 100%),
      linear-gradient(90deg, #09070a38, transparent 42%, #09070a20);
  }
  .m-result-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center 22%; filter: saturate(.9) contrast(1.02); }
  .m-result-network { position: absolute; z-index: 3; top: 25px; left: 25px; max-width: 64%; overflow: hidden; color: var(--network-color, #ff3543); font: 900 22px/1 var(--condensed); letter-spacing: -.5px; text-overflow: ellipsis; white-space: nowrap; text-shadow: 0 2px 10px #000; }
  .m-result-position { position: absolute; z-index: 3; top: 27px; right: 25px; color: #eee5e8; font-size: 16px; font-weight: 650; letter-spacing: .06em; text-shadow: 0 2px 10px #000; }
  .m-result-copy { position: absolute; z-index: 3; left: 25px; right: 25px; bottom: 124px; text-shadow: 0 2px 18px #000; }
  .m-result-eyebrow { margin: 0 0 9px; color: #fac2b6; font-size: 14px; font-weight: 750; letter-spacing: .16em; text-transform: uppercase; }
  .m-result-title { max-width: 340px; margin: 0 0 10px; font: 400 clamp(43px,11vw,56px)/.98 var(--serif); letter-spacing: -2.4px; text-wrap: balance; }
  .m-result-meta, .m-result-genres { margin: 0; color: #eee5e8; font-size: 16px; line-height: 1.42; }
  .m-result-genres { margin-top: 5px; color: #d2c6cb; font-size: 16px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .m-result-watch { position: absolute; z-index: 4; right: 25px; bottom: 25px; left: 25px; }
  .m-result-watch[hidden] { display: none; }
  .m-result-step { position: absolute; z-index: 6; top: 50%; display: grid; width: 48px; height: 72px; place-items: center; padding: 0; border: 0; background: transparent; color: #fff; transform: translateY(-50%); }
  .m-result-step svg { width: 22px; height: 38px; fill: none; stroke: currentColor; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; }
  .m-result-previous { left: 12px; }
  .m-result-next { right: 12px; }
  .m-result-step:active:not(:disabled) { transform: translateY(-50%) scale(.95); }
  .m-result-step:focus-visible { outline: 2px solid #ffb0a8; outline-offset: 2px; }
  .m-result-step:disabled { opacity: .28; }
  .m-results.m-watch-picker-open .m-result-card { z-index: 60; overflow: visible; }
  .m-result-card.is-entering { animation: m-card-enter 220ms cubic-bezier(.2,.75,.25,1); }
  .m-result-card.is-loading .m-result-copy, .m-result-card.is-loading .m-result-network, .m-result-card.is-loading .m-result-position { opacity: .25; }

  .m-sports-results {
    position: absolute;
    inset: max(74px, calc(env(safe-area-inset-top, 0px) + 70px)) 0 0;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0 12px calc(var(--mobile-system-bottom) + 188px);
    scrollbar-width: none;
  }
  .m-sports-results::-webkit-scrollbar { display: none; }
  .m-game-card {
    min-height: calc(100dvh - max(74px, calc(env(safe-area-inset-top, 0px) + 70px)) - 14px);
    padding: 25px 21px calc(var(--mobile-system-bottom) + 176px);
    overflow: hidden;
    border: 1px solid #584049;
    border-radius: 30px;
    background:
      radial-gradient(circle at 84% 5%, #5a202a4c, transparent 32%),
      linear-gradient(160deg, #211a1f 0%, #151115 64%, #100d10 100%);
    box-shadow: 0 30px 80px #000c, inset 0 1px 0 #ffffff0b;
    transition: transform 160ms ease-out;
    touch-action: pan-y;
  }
  .m-game-card:focus-visible { outline: 2px solid #ffb0a8; outline-offset: -3px; }
  .m-game-header { display: flex; align-items: center; justify-content: space-between; color: #e2b4aa; font-size: 16px; font-weight: 800; letter-spacing: .12em; }
  .m-game-header b { color: #c9bdc2; font-size: 15px; letter-spacing: .06em; }
  .m-game-status { width: fit-content; margin: 18px 0 24px; padding: 8px 12px; border: 1px solid #61454f; border-radius: 999px; color: #eee5e8; font-size: 16px; font-weight: 700; line-height: 1.15; }
  .m-game-status.live { border-color: #f1636e; background: #a41f2d35; color: #ff9694; }
  .m-game-status.final { color: #cfc3c8; }
  .m-game-status.postponed { border-color: #8b6550; color: #e7b48f; }
  .m-game-matchup { display: grid; gap: 13px; }
  .m-game-team { display: grid; grid-template-columns: 70px minmax(0,1fr) auto; align-items: center; gap: 15px; min-height: 88px; padding: 9px 12px; border: 1px solid #49363f; border-radius: 17px; background: #110e11a3; }
  .m-game-team img { width: 66px; height: 66px; object-fit: contain; filter: drop-shadow(0 7px 12px #0008); }
  .m-game-team strong, .m-game-team small { display: block; }
  .m-game-team strong { color: #f4edef; font-size: 23px; line-height: 1.08; }
  .m-game-team small { margin-top: 5px; color: #c2b5ba; font-size: 15px; font-weight: 700; letter-spacing: .1em; }
  .m-game-team > b { min-width: 48px; color: white; font: 500 48px/.9 var(--serif); text-align: right; }
  .m-game-at { height: 0; color: #c0b3b8; font-size: 14px; font-weight: 800; letter-spacing: .14em; text-align: center; transform: translateY(-7px); }
  .m-game-broadcast, .m-game-options { margin-top: 27px; }
  .m-game-broadcast h2, .m-game-options h2 { margin: 0 0 10px; color: #e1d5da; font-size: 15px; letter-spacing: .14em; text-transform: uppercase; }
  .m-game-broadcast p { margin: 0; color: #f0e7ea; font-size: 19px; line-height: 1.4; }
  .m-game-options { display: grid; gap: 10px; }
  .m-game-options h2 { margin-bottom: 2px; }
  .m-game-watch { display: grid; grid-template-columns: minmax(0,1fr) 28px; align-items: center; min-height: 78px; gap: 12px; padding: 13px 15px; border: 1px solid #59414b; border-radius: 14px; background: #2a2025; color: #f4ecef; text-decoration: none; }
  .m-game-watch strong, .m-game-watch small { display: block; }
  .m-game-watch strong { font-size: 19px; line-height: 1.2; }
  .m-game-watch small { margin-top: 6px; color: #d4c7cc; font-size: 16px; line-height: 1.4; }
  .m-game-watch > b { color: var(--mobile-coral-light); font-size: 24px; font-weight: 400; text-align: right; }
  .m-game-unavailable { margin: 0; color: #bfaeb5; font-size: 16px; line-height: 1.5; }
  .m-game-guides { display: flex; flex-wrap: wrap; gap: 9px 16px; margin-top: 23px; padding-top: 19px; border-top: 1px solid #49363f; }
  .m-game-guide { color: #edc0b4; font-size: 17px; line-height: 1.4; text-decoration: none; }
  .m-game-watch:focus-visible, .m-game-guide:focus-visible { outline: 2px solid #ffb0a8; outline-offset: 3px; }

  .m-discovery-list {
    position: absolute;
    z-index: 18;
    inset: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: max(92px, calc(env(safe-area-inset-top, 0px) + 86px)) 14px calc(var(--mobile-system-bottom) + 28px);
    background: #100d10;
    scrollbar-width: none;
  }
  .m-discovery-list::-webkit-scrollbar { display: none; }
  .m-discovery-open :is(.m-utility,.m-primary-nav,.m-voice,.m-popcorn-home) { display: none; }
  .m-discovery-heading { margin: 0 5px 17px; color: #eee5e8; font: 400 30px/1.05 var(--serif); letter-spacing: -1px; }
  .m-discovery-items { display: grid; gap: 10px; }
  .m-discovery-item { display: grid; grid-template-columns: 40px 76px minmax(0,1fr) 26px; align-items: center; gap: 12px; width: 100%; min-height: 106px; padding: 12px; border: 1px solid #553e47; border-radius: 15px; background: #1b161ad9; color: #eee5e8; text-align: left; text-decoration: none; font: inherit; }
  .m-discovery-list[data-mode="trending"] .m-discovery-item { grid-template-columns: 85px minmax(0,1fr) 60px 20px; gap: 10px; min-height: 115px; padding: 13px; }
  .m-discovery-item img, .m-discovery-poster { width: 76px; height: 76px; object-fit: cover; border-radius: 9px; background: radial-gradient(circle at 72% 22%,#d9aa9a1c 0,transparent 38%), linear-gradient(145deg,#382b31,#181416 74%); }
  .m-discovery-list[data-mode="trending"] :is(.m-discovery-item img,.m-discovery-poster) { width: 85px; height: 85px; }
  .m-discovery-poster, .m-release-art-fallback { position: relative; overflow: hidden; }
  .m-discovery-poster::after, .m-release-art-fallback::after { content: "COMING\A SOON"; position: absolute; inset: 0; display: grid; place-items: center; color: #cdbbc1; font: 800 10px/1.15 var(--sans); letter-spacing: .08em; text-align: center; white-space: pre; }
  .m-discovery-rank { color: #e5b7aa; font: 800 32px/1 var(--condensed); text-align: center; }
  .m-discovery-copy { min-width: 0; }
  .m-discovery-copy strong, .m-discovery-copy small, .m-discovery-copy em { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .m-discovery-copy strong { font-size: 20px; line-height: 1.2; }
  .m-discovery-copy small, .m-discovery-copy em { margin-top: 5px; color: #d0c4c9; font-size: 16px; line-height: 1.25; }
  .m-discovery-list[data-mode="trending"] .m-discovery-copy strong { display: -webkit-box; font-size: 22px; white-space: normal; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
  .m-discovery-list[data-mode="trending"] .m-discovery-copy :is(small,em) { font-size: 17px; }
  .m-discovery-copy em { color: #e2b2a6; font-style: normal; }
  .m-discovery-statuses { display: flex; align-items: center; justify-content: flex-end; gap: 5px; }
  .m-discovery-list[data-mode="trending"] .m-discovery-statuses { flex-direction: column; justify-content: center; }
  .m-discovery-tenure { position: relative; display: grid; place-items: center; width: 43px; height: 43px; flex: 0 0 43px; filter: drop-shadow(0 3px 7px #0008); }
  .m-discovery-tenure svg { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
  .m-discovery-tenure path { fill: #e8ad4f; stroke: #ffd995; stroke-width: 1.25; stroke-linejoin: round; }
  .m-discovery-tenure > span { position: relative; color: #fff; font: 800 16px/1 var(--condensed); font-variant-numeric: tabular-nums; text-shadow: 0 1px 2px #5b3000, 0 0 1px #5b3000; }
  .m-discovery-movement { min-width: 60px; padding: 9px 6px; border: 1px solid currentColor; border-radius: 999px; font-size: 20px; font-weight: 800; line-height: 1; text-align: center; font-variant-numeric: tabular-nums; }
  .m-discovery-movement.up { color: #71d69b; background: #3aaf6c21; }
  .m-discovery-movement.down { color: #ff7883; background: #f43f521f; }
  .m-discovery-movement.new { color: #f0bd6c; background: #e1a44124; font-size: 14px; letter-spacing: .04em; }
  .m-discovery-movement.steady { color: #aaa1a6; background: #aaa1a617; }
  .m-discovery-item > b { color: var(--mobile-coral-light); font-size: 40px; font-weight: 300; line-height: 1; text-align: right; }
  .m-discovery-item:focus-visible { outline: 2px solid #ffb0a8; outline-offset: 2px; }
  .m-release-switch { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 3px; margin: 0 0 17px; padding: 4px; border: 1px solid #57454d; border-radius: 12px; background: #151114f5; box-shadow: 0 10px 24px #090609a8; }
  .m-release-switch button { min-height: 52px; padding: 7px 10px; border: 0; border-radius: 8px; background: transparent; color: #c8bcc1; font: 700 16px/1.2 var(--sans); }
  .m-release-switch button[aria-selected="true"] { background: #f43d4d; color: #fff; }
  .m-show-update-list { display: grid; gap: 10px; }
  .m-show-update-row { display: grid; grid-template-columns: 48px 66px minmax(0,1fr) 22px; align-items: center; gap: 10px; width: 100%; min-height: 88px; padding: 9px; border: 1px solid #553e47; border-radius: 14px; background: #1b161ad9; color: #f1e9ec; text-align: left; text-decoration: none; font: inherit; }
  .m-show-update-row:focus-visible { outline: 2px solid #ffb0a8; outline-offset: 2px; }
  .m-show-update-date { display: grid; place-items: center; align-content: center; width: 48px; min-height: 56px; border-right: 1px solid #4c3942; color: #e9b7a5; font-variant-numeric: tabular-nums; }
  .m-show-update-date span { font-size: 12px; font-weight: 800; letter-spacing: .1em; }
  .m-show-update-date strong { font: 700 27px/1 var(--condensed); }
  .m-show-update-row > img, .m-show-update-art { display: block; width: 66px; height: 66px; object-fit: cover; border-radius: 8px; background: radial-gradient(circle at 72% 22%,#d9aa9a1c 0,transparent 38%), linear-gradient(145deg,#382b31,#181416 74%); }
  .m-show-update-copy { min-width: 0; }
  .m-show-update-copy strong, .m-show-update-copy small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .m-show-update-copy strong { margin-top: 5px; font-size: 20px; line-height: 1.2; }
  .m-show-update-copy small { margin-top: 5px; color: #d0c4c9; font-size: 16px; line-height: 1.25; }
  .m-show-update-label { display: inline-block; color: #efc175; font-size: 13px; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
  .m-show-update-label.cancellation { color: #f08b91; }
  .m-show-update-row > b { color: var(--mobile-coral-light); font-size: 27px; font-weight: 400; line-height: 1; text-align: right; }
  .m-release-blog { display: grid; gap: 20px; }
  .m-release-lead { position: relative; display: block; min-height: 530px; overflow: hidden; border: 1px solid #59414b; border-radius: 17px; background: #211b1f; color: #fff; isolation: isolate; }
  .m-release-lead > img { position: absolute; inset: 0; z-index: -2; width: 100%; height: 100%; object-fit: cover; }
  .m-release-lead::after { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,#0d090cfb 0%,#0d090dda 61%,#0d090d26 100%); }
  .m-release-lead > div { position: absolute; inset: auto 0 0; padding: 25px 22px; }
  .m-release-lead p { display: flex; align-items: center; gap: 9px; margin: 0 0 13px; color: #ffc2b4; font-size: 12px; font-weight: 800; letter-spacing: .14em; }
  .m-release-lead p::before { content: ""; width: 25px; height: 2px; background: #f43d4d; }
  .m-release-lead h2 { max-width: 12ch; margin: 0 0 13px; font: 400 44px/.98 var(--serif); letter-spacing: -.035em; text-wrap: balance; }
  .m-release-lead span { display: -webkit-box; overflow: hidden; color: #e4d9dd; font: 19px/1.48 var(--serif); -webkit-line-clamp: 4; -webkit-box-orient: vertical; }
  .m-release-lead small { display: block; margin-top: 16px; color: #c8bcc1; font-size: 13px; line-height: 1.4; }
  .m-release-secondary { display: grid; }
  .m-release-secondary > a { display: grid; grid-template-columns: 106px minmax(0,1fr) 20px; align-items: center; gap: 14px; min-height: 154px; padding: 15px 0; border-top: 1px solid #4c3b43; color: #f1e9ec; }
  .m-release-secondary img, .m-release-secondary .m-release-art-fallback { display: block; width: 106px; height: 124px; object-fit: cover; border-radius: 9px; background: radial-gradient(circle at 72% 22%,#d9aa9a1c 0,transparent 38%), linear-gradient(145deg,#382b31,#181416 74%); }
  .m-release-secondary .m-release-art-fallback::after { font-size: 11px; }
  .m-release-secondary time { display: block; margin-bottom: 6px; color: #e9b7a5; font-size: 11px; font-weight: 800; }
  .m-release-secondary h3 { margin: 0 0 7px; font: 400 23px/1.08 var(--serif); }
  .m-release-secondary p { display: -webkit-box; overflow: hidden; margin: 0; color: #c8bcc0; font-size: 14px; line-height: 1.45; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }
  .m-release-secondary small { display: block; margin-top: 8px; color: #9f9499; font-size: 12px; }
  .m-release-secondary b { color: #e9b7a5; font-size: 26px; font-weight: 400; }
  .m-release-history { padding-top: 25px; border-top: 1px solid #5a454e; }
  .m-release-history > header { display: flex; align-items: start; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
  .m-release-history > header h2 { margin: 0; font: 400 30px/1.1 var(--serif); }
  .m-release-history > header p { max-width: 105px; margin: 4px 0 0; color: #978d91; font-size: 12px; line-height: 1.35; text-align: right; }
  .m-release-history > div { display: grid; gap: 10px; }
  .m-release-history > div > a { display: grid; grid-template-columns: 68px minmax(0,1fr) minmax(58px,max-content) 24px; align-items: center; gap: 11px; min-height: 92px; padding: 10px 11px; border: 1px solid #553e47; border-radius: 14px; background: #1b161ad9; color: #f1e9ec; }
  .m-release-history img, .m-release-history .m-release-art-fallback { display: block; width: 68px; height: 68px; object-fit: cover; border-radius: 8px; background: radial-gradient(circle at 72% 22%,#d9aa9a1c 0,transparent 38%), linear-gradient(145deg,#382b31,#181416 74%); }
  .m-release-history time { color: #e9b7a5; font-size: 12px; font-weight: 700; font-variant-numeric: tabular-nums; line-height: 1.25; text-align: right; }
  .m-release-history strong, .m-release-history small { display: block; }
  .m-release-history strong, .m-release-history small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .m-release-history strong { font-size: 18px; line-height: 1.2; }
  .m-release-history small { margin-top: 5px; color: #c6b9bf; font-size: 14px; line-height: 1.2; }
  .m-release-history b { color: var(--mobile-coral-light); font-size: 34px; font-weight: 300; line-height: 1; text-align: right; }
  .m-release-pager { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 8px; margin-top: 20px; }
  .m-release-pager button { min-height: 48px; padding: 0; border: 0; background: transparent; color: #d8cbd0; font-weight: 700; }
  .m-release-pager button:first-child { text-align: left; }.m-release-pager button:last-child { text-align: right; }
  .m-release-pager span { color: #978d91; font-size: 12px; font-variant-numeric: tabular-nums; }
  .m-release-empty { margin: 80px 20px; color: #c8bcc0; font-size: 17px; line-height: 1.6; text-align: center; }

  .m-state-message { position: absolute; z-index: 3; inset: 95px 24px 205px; display: grid; place-items: center; color: #d6cbd0; text-align: center; font-size: 16px; line-height: 1.55; }

  .m-primary-nav { position: absolute; z-index: 8; left: 14px; right: 14px; bottom: calc(var(--mobile-system-bottom) + 20px); height: 102px; display: grid; grid-template-columns: 1fr 132px 1fr; align-items: center; justify-items: center; pointer-events: none; }
  .m-primary-nav button, .m-voice { pointer-events: auto; }
  .m-primary-nav button {
    display: grid;
    width: 96px;
    height: 96px;
    place-items: center;
    padding: 0;
    border: 8px solid #2c1117;
    border-radius: 50%;
    background: linear-gradient(145deg, #ff5963, #c91e31);
    color: white;
    box-shadow: 0 14px 30px #000a, inset 0 1px 1px #ffffff52;
  }
  .m-primary-nav button[aria-pressed="true"] { filter: brightness(1.12); box-shadow: 0 0 0 3px #ff9a9550, 0 14px 30px #000a; }
  .m-primary-nav .m-popular { transform: translateX(5vw); }
  .m-primary-nav .m-nav-spacer { grid-column: 2; }
  .m-primary-nav .m-upcoming { grid-column: 3; transform: translateX(-5vw); }
  .m-primary-nav svg { width: 44px; height: 44px; fill: none; stroke: white; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
  .m-primary-nav .m-flame { width: 48px; height: 48px; fill: white; stroke: none; }
  .m-voice {
    position: absolute;
    z-index: 9;
    left: 50%;
    bottom: calc(var(--mobile-system-bottom) + 92px);
    width: 124px;
    height: 124px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: #2c1117;
    box-shadow: 0 18px 38px #000b;
    transform: translateX(-50%);
    touch-action: none;
    user-select: none;
    -webkit-touch-callout: none;
  }
  .m-voice::before, .m-voice::after { content: ""; position: absolute; border-radius: 50%; pointer-events: none; }
  .m-voice::before { inset: 7px; border: 2px solid #a92b3899; box-shadow: 0 0 0 9px #8f25312d, 0 0 0 18px #72232b1f; }
  .m-voice::after { inset: 19px; background: linear-gradient(145deg, #ff5963, #c91e31); box-shadow: inset 0 1px 1px #ffffff52, 0 8px 22px #0008; }
  .m-voice svg { position: absolute; z-index: 2; inset: 0; width: 40px; height: 40px; margin: auto; fill: none; stroke: white; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
  .m-voice.is-listening::before { animation: m-voice-ring 1.35s ease-out infinite; }
  .m-voice.is-listening { filter: brightness(1.08); }
  .m-search-results-open :is(.m-primary-nav,.m-voice) { display: none; }
  .m-title-card-open :is(.m-utility,.m-popcorn-home) { display: none; }

  .m-popcorn-home {
    position: absolute;
    z-index: 10;
    left: 50%;
    bottom: calc(var(--mobile-system-bottom) + 3px);
    display: grid;
    width: 44px;
    height: 48px;
    place-items: center;
    padding: 0;
    border: 0;
    background: transparent;
    transform: translateX(-50%);
  }
  .m-popcorn-home svg { width: 35px; height: 42px; filter: drop-shadow(0 4px 7px #000b); }

  .m-overlay {
    position: absolute;
    z-index: 30;
    inset: 0;
    display: grid;
    place-items: center;
    padding: 24px;
    background: #08070a80;
    backdrop-filter: blur(3px);
  }
  .m-overlay[hidden] { display: none; }
  .m-overlay-card { width: min(100%, 380px); padding: 30px 27px 27px; border: 1px solid #624650; border-radius: 24px; background: #1b161af2; font-size: var(--mobile-popup-text-size); line-height: 1.4; box-shadow: 0 24px 70px #000c, inset 0 1px 0 #ffffff0b; }
  .m-overlay-card h2 { margin: 0 0 23px; font: 400 var(--mobile-popup-heading-size)/1.08 var(--serif); letter-spacing: -.6px; text-align: center; }
  .m-gesture-line { display: grid; grid-template-columns: 58px 1fr; align-items: center; gap: 15px; min-height: 80px; color: #ddd2d6; font-size: inherit; line-height: inherit; }
  .m-gesture-line + .m-gesture-line { border-top: 1px solid #ffffff10; }
  .m-gesture-mark { color: var(--mobile-coral-light); font-size: var(--mobile-popup-icon-size); line-height: 1; text-align: center; }
  .m-confirm { width: 100%; min-height: 58px; margin-top: 21px; border: 0; border-radius: 14px; background: var(--mobile-coral); color: white; font-size: var(--mobile-popup-action-size); font-weight: 750; box-shadow: 0 10px 24px #0007; }
  .m-about-logo { display: block; width: min(100%, 285px); height: auto; margin: 4px auto 22px; }
  .m-about-copy { margin: 0; color: #cbbfc4; font-size: inherit; line-height: inherit; text-align: center; }

  .m-settings-shell { position: absolute; z-index: 36; inset: 0; overflow: hidden; }
  .m-settings-shell[hidden] { display: none; }
  .m-settings-scrim { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: #050406b8; opacity: 0; transition: opacity 220ms ease-out; }
  .m-settings-drawer { position: absolute; top: 0; right: 0; width: min(88vw,400px); height: 100%; overflow: hidden; background: #171317; color: var(--mobile-cream); box-shadow: -24px 0 60px #000b; transform: translateX(104%); transition: transform 240ms cubic-bezier(.16,.82,.29,1); }
  .m-settings-shell.is-open .m-settings-scrim { opacity: 1; }
  .m-settings-shell.is-open .m-settings-drawer { transform: translateX(0); }
  .m-settings-panel { height: 100%; overflow-y: auto; overscroll-behavior: contain; padding: max(24px,calc(env(safe-area-inset-top,0px) + 18px)) max(22px,calc(env(safe-area-inset-right,0px) + 18px)) max(28px,calc(env(safe-area-inset-bottom,0px) + 22px)) 24px; scrollbar-width: thin; scrollbar-color: #5a414b transparent; }
  .m-settings-panel[hidden] { display: none; }
  .m-settings-header, .m-settings-subheader { display: grid; grid-template-columns: minmax(0,1fr) 52px; align-items: center; min-height: 64px; margin-bottom: 18px; }
  .m-settings-subheader { grid-template-columns: 52px minmax(0,1fr) auto; }
  .m-settings-header h2, .m-settings-subheader h2 { margin: 0; font: 400 36px/1 var(--serif); letter-spacing: -1px; }
  .m-settings-subheader h2 { font-size: 30px; text-align: center; }
  .m-settings-close, .m-settings-back { display: grid; width: 52px; height: 52px; place-items: center; padding: 0; border: 0; background: transparent; color: #e8dfe2; font-size: 36px; line-height: 1; }
  .m-settings-clear { min-width: 52px; min-height: 52px; padding: 0 0 0 8px; border: 0; background: transparent; color: var(--mobile-coral-light); font-size: 17px; }
  .m-settings-menu { border-top: 1px solid #49343e; }
  .m-settings-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; width: 100%; min-height: 82px; padding: 13px 3px; border: 0; border-bottom: 1px solid #49343e; background: transparent; color: var(--mobile-cream); text-align: left; }
  .m-settings-row strong, .m-settings-row small { display: block; }
  .m-settings-row strong { font-size: 21px; line-height: 1.2; }
  .m-settings-row small { margin-top: 6px; overflow: hidden; color: #bdaeb4; font-size: 16px; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
  .m-settings-row b { padding-left: 18px; color: var(--mobile-coral-light); font-size: 38px; font-weight: 300; line-height: 1; }
  .m-settings-done { width: 100%; min-height: 60px; margin-top: 34px; border: 0; border-radius: 14px; background: var(--mobile-coral); color: white; font-size: 20px; font-weight: 750; }
  .m-settings-hint { margin: -4px 0 20px; color: #bdaeb4; font-size: 17px; line-height: 1.45; }
  .m-settings-choices { border-top: 1px solid #49343e; }
  .m-settings-choice { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 32px; align-items: center; min-height: 62px; gap: 16px; border-bottom: 1px solid #3e2d35; color: #e6dce0; font-size: 18px; line-height: 1.25; }
  .m-settings-choice input { position: absolute; width: 1px; height: 1px; opacity: 0; }
  .m-settings-choice i { display: grid; width: 26px; height: 26px; place-items: center; border: 1px solid #765764; border-radius: 7px; background: #211a1f; }
  .m-settings-choice input:checked + i { border-color: var(--mobile-coral-light); background: var(--mobile-coral); }
  .m-settings-choice input:checked + i::after { content: ""; width: 10px; height: 6px; border-right: 2px solid white; border-bottom: 2px solid white; transform: translateY(-1px) rotate(45deg); }
  .m-settings-choice:has(input:focus-visible) i, :is(.m-settings-close,.m-settings-back,.m-settings-clear,.m-settings-row,.m-settings-done):focus-visible { outline: 2px solid #ffb0a8; outline-offset: 3px; }

  .m-help-shell { position: absolute; z-index: 36; inset: 0; overflow: hidden; }
  .m-help-shell[hidden] { display: none; }
  .m-help-scrim { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: #050406b8; opacity: 0; transition: opacity 220ms ease-out; }
  .m-help-drawer { position: absolute; top: 0; left: 0; width: min(88vw,400px); height: 100%; overflow: hidden; background: #171317; color: var(--mobile-cream); box-shadow: 24px 0 60px #000b; transform: translateX(-104%); transition: transform 240ms cubic-bezier(.16,.82,.29,1); }
  .m-help-shell.is-open .m-help-scrim { opacity: 1; }
  .m-help-shell.is-open .m-help-drawer { transform: translateX(0); }
  .m-help-panel { height: 100%; overflow-y: auto; overscroll-behavior: contain; padding: max(24px,calc(env(safe-area-inset-top,0px) + 18px)) 24px max(28px,calc(env(safe-area-inset-bottom,0px) + 22px)) max(22px,calc(env(safe-area-inset-left,0px) + 18px)); scrollbar-width: thin; scrollbar-color: #5a414b transparent; }
  .m-help-panel[hidden] { display: none; }
  .m-help-header { display: grid; grid-template-columns: 52px minmax(0,1fr); align-items: center; min-height: 64px; margin-bottom: 18px; }
  .m-help-header h2 { margin: 0; font: 400 36px/1 var(--serif); letter-spacing: -1px; text-align: right; }
  .m-help-close { display: grid; width: 52px; height: 52px; place-items: center; padding: 0; border: 0; background: transparent; color: #e8dfe2; font-size: 36px; line-height: 1; }
  .m-help-menu { border-top: 1px solid #49343e; }
  .m-help-row { display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; width: 100%; min-height: 70px; padding: 11px 3px; border: 0; border-bottom: 1px solid #49343e; background: transparent; color: var(--mobile-cream); text-align: left; text-decoration: none; }
  .m-help-row strong, .m-help-row small { display: block; }
  .m-help-row strong { font-size: 20px; line-height: 1.25; }
  .m-help-row small { margin-top: 5px; color: #bdaeb4; font-size: 16px; line-height: 1.25; }
  .m-help-row b { padding-left: 18px; color: var(--mobile-coral-light); font-size: 38px; font-weight: 300; line-height: 1; }
  .m-help-subheader { display: grid; grid-template-columns: 52px minmax(0,1fr); align-items: center; min-height: 64px; margin-bottom: 24px; }
  .m-help-subheader h2 { margin: 0; font: 400 31px/1.05 var(--serif); letter-spacing: -1px; text-align: right; }
  .m-help-back { display: grid; width: 52px; height: 52px; place-items: center; padding: 0; border: 0; background: transparent; color: #e8dfe2; font-size: 38px; line-height: 1; }
  .m-casting-steps { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid #49343e; }
  .m-casting-steps li { display: grid; grid-template-columns: 42px minmax(0,1fr); align-items: start; gap: 14px; padding: 22px 0; border-bottom: 1px solid #49343e; }
  .m-casting-steps li > span { display: grid; width: 36px; height: 36px; place-items: center; border-radius: 50%; background: #352128; color: var(--mobile-coral-light); font-size: 18px; font-weight: 750; }
  .m-casting-steps p { margin: 4px 0 0; color: #e2d7db; font-size: 19px; line-height: 1.45; }
  :is(.m-help-close,.m-help-back,.m-help-row):focus-visible { outline: 2px solid #ffb0a8; outline-offset: 3px; }

  .m-detail-legend { display: flex; flex-wrap: wrap; gap: 10px 14px; margin-bottom: 19px; color: #b9adb2; font-size: 13px; }
  .m-detail-legend span { display: inline-flex; align-items: center; gap: 7px; }
  .m-tier-dot { display: inline-block; width: 13px; height: 13px; border: 1px solid #151017; border-radius: 50%; box-shadow: 0 0 0 1px #ffffff70; flex: 0 0 13px; }
  .m-tier-dot.free { background: #4fc67a; }.m-tier-dot.ads { background: #559be3; }.m-tier-dot.subscription { background: #9a72d7; }.m-tier-dot.live { background: #d4ab72; }.m-tier-dot.purchase { background: #f15d69; }
  .m-detail-close, .m-detail-share, .m-discovery-close { position: fixed; z-index: 20; top: max(18px, calc(env(safe-area-inset-top, 0px) + 14px)); display: grid; width: 52px; height: 52px; place-items: center; padding: 0; border: 1px solid #725a65; border-radius: 50%; background: #171217dc; color: white; backdrop-filter: blur(12px); }
  .m-detail-close, .m-discovery-close { right: 16px; font-size: 31px; line-height: 1; }.m-detail-share { right: 80px; }
  .m-detail-share svg { width: 25px; height: 25px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

  .m-watch-picker { position: relative; width: 100%; }
  .m-watch-picker-trigger { display: flex; align-items: center; justify-content: center; width: 100%; min-height: 65px; gap: 7px; padding: 12px 5px; border: 1px solid #ff7178; border-radius: 10px; background: var(--mobile-coral); color: white; font-size: 20px; font-weight: 750; white-space: nowrap; }
  .m-watch-picker-play { font-size: 16px; }
  .m-watch-picker.is-open .m-watch-picker-trigger { position: fixed; z-index: 64; top: calc(50% - 34px); left: 50%; width: 132px; transform: translate(-50%,-50%); border-color: #775763; background: #36282f; }
  .m-watch-picker.is-open .m-watch-picker-play { display: none; }
  .m-watch-picker-layer { position: fixed; z-index: 62; inset: 0; }
  .m-watch-picker-scrim { position: absolute; inset: 0; width: 100%; height: 100%; padding: 0; border: 0; background: #080609e8; backdrop-filter: blur(2px); }
  .m-watch-picker-stage { position: absolute; z-index: 1; inset: 0; overflow: hidden; pointer-events: none; }
  .m-watch-picker-options { position: absolute; inset: 0; }
  .m-watch-picker-option { position: absolute; z-index: 2; top: calc(50% - 34px); left: 50%; display: flex; width: 136px; min-height: 98px; padding: 13px 10px 17px; flex-direction: column; align-items: center; justify-content: center; gap: 8px; border: 1px solid #765562; border-radius: 12px; background: #2d2229; color: white; text-align: center; transform: translate(calc(-50% + var(--m-watch-x)),calc(-50% + var(--m-watch-y))); pointer-events: auto; }
  .m-watch-picker-option:focus-visible { border-color: #f1bbc3; outline: none; }
  .m-watch-provider-logo { display: block; width: 114px; height: 38px; object-fit: contain; border-radius: 0; background: transparent; }
  .m-watch-provider-wordmark { font-size: 18px; font-weight: 750; line-height: 1.1; }
  .m-watch-brand-prime { font-size: 22px; letter-spacing: -.8px; }.m-watch-brand-max { font-size: 34px; font-weight: 800; letter-spacing: -2.5px; line-height: .8; }.m-watch-brand-hulu { color: #1ce783; font-size: 30px; font-weight: 800; letter-spacing: -1.2px; }.m-watch-brand-netflix { color: #e50914; font-size: 22px; font-weight: 800; letter-spacing: -.8px; }
  .m-watch-provider-access { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 8px; color: #ddd0d5; font-size: 14px; line-height: 1.3; }
  .m-watch-provider-access > span { display: inline-flex; align-items: center; gap: 4px; }
  .m-watch-provider-access .m-tier-dot { width: 10px; height: 10px; flex-basis: 10px; }
  .m-watch-provider-stripe { position: absolute; right: 8px; bottom: 0; left: 8px; display: flex; height: 5px; overflow: hidden; border-radius: 4px 4px 0 0; }
  .m-watch-provider-stripe i { flex: 1; }.m-watch-provider-stripe .free { background: #4fc67a; }.m-watch-provider-stripe .ads { background: #559be3; }.m-watch-provider-stripe .subscription { background: #9a72d7; }.m-watch-provider-stripe .live { background: #d4ab72; }.m-watch-provider-stripe .purchase { background: #f15d69; }
  .m-watch-picker-current { position: absolute; right: 17px; bottom: calc(var(--mobile-system-bottom) + 82px); left: 17px; margin: 0; color: #eee2e7; font-size: 16px; line-height: 1.4; text-align: center; }
  .m-watch-picker-legend { position: absolute; right: 17px; bottom: var(--mobile-system-bottom); left: 17px; justify-content: center; gap: 9px 14px; margin: 0; color: #d7cbd0; font-size: 15px; line-height: 1.25; pointer-events: none; }
  .m-watch-picker-open { overflow: hidden; }

  .m-system-home { position: absolute; z-index: 50; left: 50%; bottom: 12px; width: 134px; height: 5px; border-radius: 5px; background: #f3eff1; opacity: .88; transform: translateX(-50%); pointer-events: none; }
  @supports (padding: env(safe-area-inset-bottom)) { .m-system-home { display: none; } }

  @keyframes m-logo-arrive { to { opacity: 1; transform: scale(1); filter: blur(0); } }
  @keyframes m-logo-exit { from { opacity: 1; transform: scale(1); filter: blur(0); } to { opacity: 0; transform: scale(1.62); filter: blur(0); } }
  @keyframes m-card-enter { from { opacity: .5; transform: scale(.975); } to { opacity: 1; transform: none; } }
  @keyframes m-voice-ring { 0% { opacity: .8; transform: scale(.82); } 100% { opacity: 0; transform: scale(1.65); } }

  @media (max-height: 740px) {
    .m-home { bottom: 164px; padding-bottom: 60px; }
    .m-prompt { height: 42dvh; min-height: 240px; }
    .m-result-copy { bottom: 124px; }
    .m-result-title { font-size: 39px; }
    .m-primary-nav { bottom: calc(var(--mobile-system-bottom) + 10px); }
    .m-voice { bottom: calc(var(--mobile-system-bottom) + 77px); width: 112px; height: 112px; }
    .m-primary-nav button { width: 86px; height: 86px; }
    .m-watch-picker-current { bottom: calc(var(--mobile-system-bottom) + 78px); font-size: 15px; }
    .m-watch-picker-legend { gap: 7px 11px; font-size: 14px; }
  }

  @media (prefers-reduced-motion: reduce) {
    .m-launch { display: none; }
    .m-interface { opacity: 1; }
    .m-launch-logo, .m-launch-piece, .m-result-card, .m-voice::before { animation: none !important; transition: none !important; }
    .m-settings-scrim, .m-settings-drawer, .m-help-scrim, .m-help-drawer { transition-duration: 1ms; }
  }
}

.m-watch-picker.is-open .m-watch-picker-trigger{border-color:#ff7178;background:var(--mobile-coral)}

.m-watch-picker-pager{position:absolute;z-index:3;top:calc(50% - 34px);left:50%;display:flex;width:270px;align-items:center;justify-content:space-between;transform:translate(-50%,-50%);pointer-events:none}
.m-watch-picker-pager button{display:grid;width:48px;height:48px;place-items:center;padding:0;border:1px solid #765562;border-radius:50%;background:#2d2229;color:#fff;pointer-events:auto}
.m-watch-picker-pager button:focus-visible{border-color:#ff7178;outline:none}
.m-watch-picker-pager svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.m-watch-picker-pager span{position:absolute;top:51px;left:50%;color:#d3c6cb;font-size:14px;font-variant-numeric:tabular-nums;letter-spacing:.1em;transform:translateX(-50%)}
.m-watch-picker-option.is-orbit-entering{animation:m-watch-orbit-enter 220ms ease-out both}
@keyframes m-watch-orbit-enter{from{opacity:0;transform:translate(-50%,-50%) scale(.82)}to{opacity:1;transform:translate(calc(-50% + var(--m-watch-x)),calc(-50% + var(--m-watch-y))) scale(1)}}
@media(prefers-reduced-motion:reduce){.m-watch-picker-option.is-orbit-entering{animation:none}}
@media(max-width:340px){.m-watch-picker-option{width:128px}.m-watch-provider-logo{width:106px}.m-watch-picker-pager{width:252px}}
