/* Globaler Kompaktmodus für niedrige Tablet-Bildschirme im Querformat. */
@media (max-height:760px) and (min-width:700px) and (orientation:landscape) {
  .shell {
    width:min(1180px,calc(100% - 24px));
    padding-top:10px;
    padding-bottom:20px;
  }

  .header {
    min-height:50px;
    padding:4px 0 12px;
  }

  .mark {
    width:40px;
    height:40px;
  }

  .brand {
    gap:10px;
  }

  .brand small {
    margin-top:0;
    font-size:.7rem;
  }

  .header-actions {
    gap:8px;
  }

  .fullscreen-toggle {
    min-height:38px;
    padding:8px 12px;
  }

  .eyebrow {
    margin-bottom:7px;
    font-size:.68rem;
  }

  .hero {
    padding:14px 0 18px;
  }

  .hero h1 {
    font-size:clamp(3.2rem,7vw,5.1rem);
    line-height:.9;
  }

  .hero > p:last-child,
  .head p:last-child {
    margin-top:10px;
    font-size:.94rem;
    line-height:1.45;
  }

  .drivers {
    gap:12px;
  }

  .driver {
    min-height:170px;
    padding:20px;
    gap:16px;
  }

  .avatar {
    width:78px;
    height:78px;
    font-size:2.25rem;
    box-shadow:inset 0 0 0 6px rgba(0,0,0,.18);
  }

  .driver-copy strong {
    font-size:clamp(2rem,4vw,3rem);
  }

  .driver-copy small {
    font-size:.78rem;
  }

  .start-number {
    top:14px;
    right:16px;
  }

  .start-number strong {
    font-size:1.65rem;
  }

  .driver-cta {
    left:20px;
    bottom:16px;
  }

  .head {
    padding:8px 0 12px;
  }

  .head h1 {
    font-size:clamp(2.8rem,6vw,4.6rem);
    line-height:.92;
  }

  .game-head {
    padding:4px 0 8px;
  }

  .game-head h1 {
    font-size:clamp(2.5rem,5vw,3.8rem);
  }

  .text-btn,
  .academy-back {
    min-height:38px;
    padding:8px 13px;
    font-size:.76rem;
  }

  .progress {
    grid-template-columns:minmax(170px,.32fr) 1fr;
    gap:18px;
    margin-bottom:10px;
    padding:12px 16px;
  }

  .academy-tools {
    margin:-2px 0 10px;
  }

  .academy-tools .secondary {
    min-height:36px;
    padding:8px 12px;
  }

  .missions {
    gap:12px;
  }

  .mission {
    min-height:365px !important;
    padding:18px 18px 78px !important;
  }

  .mission-visual,
  .memory-preview,
  .traffic-preview {
    width:200px !important;
    height:112px !important;
    margin:14px 0 12px !important;
  }

  .memory-preview {
    gap:8px !important;
    padding:8px !important;
  }

  .memory-preview .preview-card {
    height:94px !important;
  }

  .memory-preview .preview-card svg {
    width:62px !important;
    height:86px !important;
  }

  .traffic-preview .traffic-housing {
    transform:scale(.9);
  }

  .mission h2 {
    font-size:clamp(1.45rem,2.6vw,2rem);
  }

  .mission p {
    margin-top:8px;
    font-size:.88rem;
    line-height:1.42;
  }

  .mission .record {
    margin-top:10px !important;
    padding:6px 10px;
    font-size:.7rem !important;
  }

  .mission .primary {
    left:18px !important;
    bottom:16px !important;
    min-height:40px;
    padding:9px 14px;
  }

  .mission.done::after {
    top:12px !important;
    right:12px !important;
    width:48px !important;
    height:48px !important;
    font-size:1.35rem !important;
  }

  .mission.done::before {
    top:42px;
    right:21px;
    width:34px;
    height:29px;
  }

  .mission.done .topline {
    padding-right:62px !important;
  }

  .award-teaser {
    gap:16px;
    margin-top:12px;
    padding:16px 18px;
  }

  .award-teaser .lock {
    width:48px;
    height:48px;
    font-size:1.4rem;
  }

  .award-teaser h2 {
    font-size:clamp(1.4rem,2.5vw,2rem);
  }

  .award-teaser p:not(.eyebrow) {
    margin-top:5px;
    font-size:.84rem;
  }

  .stats {
    margin-bottom:7px;
  }

  .stats span {
    min-width:102px;
    padding:7px 11px;
  }

  .memory {
    max-width:520px;
    gap:6px;
  }

  .face {
    border-radius:9px;
  }

  .back::after {
    width:34px;
    height:34px;
    font-size:.82rem;
  }

  .result {
    min-height:104px;
    margin-top:9px;
    padding:15px !important;
  }

  #reactionScreen .challenge-panel {
    margin-bottom:10px;
    padding:10px 14px;
  }

  #reactionScreen .challenge-rule {
    padding-bottom:8px;
  }

  #reactionScreen .challenge-metrics {
    margin-top:8px;
  }

  #reactionScreen .challenge-metrics div {
    padding:7px 10px;
  }

  #reactionScreen .attempt-dots {
    margin-top:8px;
  }

  #reactionScreen .attempt-dots span {
    width:30px;
    height:30px;
    font-size:.78rem;
  }

  .reaction-play-layout {
    gap:12px;
  }

  .reaction-play-layout .reaction {
    padding:16px;
  }

  .reaction-play-layout .lights {
    max-width:330px;
    gap:12px;
    margin-bottom:14px;
    padding:14px;
  }

  .reaction-play-layout .pad {
    min-height:170px;
    padding:18px;
  }

  .reaction-play-layout .challenge-result {
    gap:12px;
    padding:18px;
  }

  .award-stage {
    padding:8px 0 18px;
  }

  .award-stage > .eyebrow {
    margin-bottom:5px;
  }

  .trophy {
    width:72px;
    height:72px;
    margin:8px auto 12px;
    font-size:2.25rem;
  }

  .award-stage > h1 {
    font-size:clamp(2.7rem,6vw,4.2rem);
  }

  .award-stage > p {
    max-width:620px;
    margin:10px auto 0;
    font-size:.9rem;
    line-height:1.45;
  }

  .special {
    max-width:340px;
    margin:14px auto 0;
    padding:12px 18px;
  }

  .special-car {
    min-height:100px;
  }

  .special-car svg {
    max-height:100px;
  }

  .certificate-premium {
    max-width:800px;
    margin-top:18px;
    padding:24px 38px 26px;
  }

  .cert-ribbon {
    margin-bottom:12px;
    padding:6px 13px;
  }

  .cert-top {
    grid-template-columns:52px 1fr 52px;
    gap:14px;
  }

  .certificate-premium .cert-mark,
  .cert-seal {
    width:48px;
    height:48px;
  }

  .cert-divider {
    margin:14px 0 12px;
  }

  .cert-kicker {
    margin-bottom:5px !important;
  }

  .certificate-premium h2 {
    font-size:clamp(1.8rem,3.3vw,2.5rem);
  }

  .certificate-premium .cert-name {
    margin-top:12px;
    font-size:clamp(3.3rem,7vw,5.1rem);
  }

  .cert-number {
    margin:6px 0 14px !important;
    padding:5px 11px;
  }

  .cert-copy {
    margin-bottom:16px !important;
    font-size:.88rem !important;
    line-height:1.45;
  }

  .certificate-premium .cert-details {
    gap:10px;
  }

  .certificate-premium .cert-details span {
    padding:11px 12px;
  }

  .certificate-premium .cert-details strong {
    margin-top:4px;
    font-size:.88rem;
  }

  .certificate-premium .cert-footer {
    gap:24px;
    margin-top:18px;
    padding-top:14px;
  }

  .award-actions {
    margin-top:12px;
  }

  footer {
    padding-top:16px;
  }
}

/* Noch kompakter im echten Vollbild auf sehr niedrigen Geräten. */
@media (max-height:680px) and (min-width:700px) and (orientation:landscape) {
  .brand small,
  .status {
    display:none;
  }

  .header {
    padding-bottom:8px;
  }

  .hero {
    padding-top:8px;
  }

  .mission {
    min-height:340px !important;
  }

  .mission-visual,
  .memory-preview,
  .traffic-preview {
    width:180px !important;
    height:100px !important;
  }

  .memory-preview .preview-card {
    height:82px !important;
  }

  .memory-preview .preview-card svg {
    height:76px !important;
  }

  .memory {
    max-width:470px;
  }

  .award-stage > .eyebrow,
  .award-stage > p {
    display:none;
  }

  .trophy {
    width:58px;
    height:58px;
    margin:4px auto 8px;
    font-size:1.8rem;
  }

  .special {
    margin-top:9px;
  }
}
