@media (min-width: 901px) {
  body:not(.jg-landing-active):not(.dashboard-active) {
    height: auto !important;
    min-height: 100dvh !important;
    overflow-y: auto !important;
  }

  body.jg-landing-active #app {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.jg-landing-active .jg-landing-hero {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: center !important;
    width: 100% !important;
    height: clamp(480px, calc(100dvh - 120px), 680px) !important;
    min-height: 480px !important;
    max-height: none !important;
    padding: 36px 56px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.jg-landing-active .jg-hero-scene {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    object-position: center !important;
  }

  body.jg-landing-active .jg-landing-hero::after {
    background: linear-gradient(180deg, rgba(28, 20, 16, .12), rgba(28, 20, 16, .5) 70%, rgba(28, 20, 16, .65)) !important;
  }

  body.jg-landing-active .jg-landing-copy :is(.jg-kicker, .jg-front-note) {
    color: #fff1df !important;
    -webkit-text-fill-color: #fff1df !important;
  }

  body.jg-landing-active .jg-landing-copy {
    position: relative !important;
    z-index: 2 !important;
    display: block !important;
    width: 100% !important;
    max-width: 660px !important;
    margin: auto !important;
    padding: 0 !important;
    text-align: center !important;
  }

  body.jg-landing-active .jg-landing-copy h1 {
    font-size: clamp(36px, 3.5vw, 50px) !important;
    line-height: 1.08 !important;
    margin: 16px 0 !important;
  }

  body.jg-landing-active .jg-landing-copy > p {
    max-width: 580px !important;
    margin: 0 auto 22px !important;
    font-size: 17px !important;
    line-height: 1.5 !important;
  }

  body.jg-landing-active .jg-front-actions {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
    margin: 0 !important;
  }

  body.jg-landing-active .jg-front-actions button {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: 180px !important;
    min-height: 48px !important;
    padding: 12px 24px !important;
    font-size: 16px !important;
    white-space: nowrap !important;
  }

  html body.jg-landing-active #app.jg-public-app [data-jg-inside] {
    display: none !important;
  }

  body.dashboard-active:not(.jg-landing-active) #app {
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    display: grid !important;
    grid-template-rows: auto auto minmax(0, 1fr) !important;
    gap: 12px !important;
    width: min(1380px, calc(100% - 48px)) !important;
    height: calc(100dvh - 170px) !important;
    min-height: 500px !important;
    max-height: none !important;
    margin: 12px auto 84px !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.dashboard-active:not(.jg-landing-active) .dashboard-welcome {
    position: relative !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 12px 16px !important;
  }

  body.dashboard-active:not(.jg-landing-active) .dashboard-track-switch {
    position: relative !important;
    inset: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    align-items: center !important;
    width: 100% !important;
    height: auto !important;
    min-height: 66px !important;
    margin: 0 !important;
    padding: 10px 16px 18px !important;
    box-sizing: border-box !important;
    border: 0 !important;
    border-bottom: 6px solid #d7c9bd !important;
    border-radius: 0 !important;
    background: transparent !important;
    overflow: visible !important;
  }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid {
    position: relative !important;
    inset: auto !important;
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    grid-template-rows: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 14px !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid .home-tile {
    position: relative !important;
    inset: auto !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 12px !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 16px !important;
    text-align: center !important;
    box-sizing: border-box !important;
    overflow: visible !important;
  }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid .home-tile > span:nth-child(2) {
    width: 100% !important;
    min-width: 0 !important;
    text-align: center !important;
  }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid .home-tile strong {
    font-size: 0 !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid .home-tile strong::after {
    font-size: clamp(16px, 1.4vw, 21px);
    line-height: 1.2;
  }

  .tile-plan strong::after { content: 'Active Study Plan'; }
  .tile-study strong::after { content: 'Study Guides'; }
  .tile-practice strong::after { content: 'Practice Questions'; }
  .tile-games strong::after { content: 'Learning Games'; }
  .tile-mini strong::after { content: 'Mini Mocks'; }
  .tile-mock strong::after { content: 'Full Mocks'; }
  .tile-mock.has-saved-mock strong::after { content: 'Resume Full Mock'; }
  .tile-progress strong::after { content: 'Progress'; }
  .tile-printables strong::after { content: 'PDFs & Printables'; }

  html.jg-theme-light body.dashboard-active:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .approved-home-grid.jg-v568-grid .home-tile .tile-explain {
    position: absolute !important;
    right: 10px !important;
    bottom: 8px !important;
  }

  body.study-session-active #app,
  body.mock-mode-active #app {
    position: relative !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  #app .official-case-record,
  #app .official-case-narrative,
  #app .official-general-scroll,
  #app .official-session-scroll,
  #app .case-specific-mse {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
    -webkit-line-clamp: unset !important;
    contain: none !important;
  }

  #app .official-case-record :is(p, li) {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    -webkit-line-clamp: unset !important;
  }

  body.game-mode-active #app {
    position: relative !important;
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  body.game-mode-active #app .game-shell {
    display: flex !important;
    flex-direction: column !important;
    height: calc(100dvh - 180px) !important;
    min-height: 420px !important;
    max-height: none !important;
    overflow: hidden !important;
  }

  body.game-mode-active #app .game-top {
    flex: 0 0 auto !important;
  }

  body.game-mode-active #app :is(.purpose-game-stage, .game-stage) {
    flex: 1 1 auto !important;
    min-height: 0 !important;
    height: auto !important;
    max-height: none !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    padding-bottom: 24px !important;
  }

  body.game-mode-active #app :is(.purpose-game-body, .purpose-game-prompt, .purpose-game-feedback, .purpose-options) {
    height: auto !important;
    max-height: none !important;
    overflow: visible !important;
  }

  html.jg-theme-light body:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .study-pane :is(.reasoning-step, .reasoning-step summary, .reasoning-step > div, .practice-prescription, .mastery-evidence-lock, .mastery-evidence-lock li, .knowledge-app-bridge, .game-weak-evidence) {
    background: #fffaf6 !important;
    background-image: none !important;
    border-color: #d7c9bd !important;
    color: #211f1d !important;
    -webkit-text-fill-color: #211f1d !important;
    box-shadow: none !important;
  }

  html.jg-theme-light body:not(.jg-landing-active):not(.mock-mode-active):not(.high-contrast) #app .study-pane :is(.reasoning-step, .practice-prescription, .mastery-evidence-lock, .knowledge-app-bridge, .game-weak-evidence) :is(p, span, small, strong, b, li) {
    color: #211f1d !important;
    -webkit-text-fill-color: #211f1d !important;
  }
}
