/*
======================================================
TRIPLE STAR
Mobile Landscape Fullscreen — versione pulita
======================================================
*/

.mobile-game-gate {
  display: none;
}

/* ======================================================
   SCHERMATA MOBILE INIZIALE
====================================================== */

@media (max-width: 900px), (pointer: coarse) {
  .mobile-game-gate {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: none;
    place-items: center;
    padding: 20px;
    overflow: auto;
    background: radial-gradient(
      circle at center,
      rgba(18, 45, 82, 0.97),
      rgba(2, 7, 14, 0.99)
    );
  }

  .mobile-game-gate.is-visible {
    display: grid;
  }

  body.mobile-game-gate-open {
    overflow: hidden !important;
  }

  body.mobile-game-gate-open .machine {
    visibility: hidden;
  }

  .mobile-game-gate__card {
    width: min(620px, 96vw);
    padding: 22px;
    border: 3px solid #d6a300;
    border-radius: 20px;
    background: #071321;
    color: #fff;
    text-align: center;
  }

  .mobile-game-gate__phone {
    margin-bottom: 10px;
    color: #ffc400;
    font-size: 72px;
    animation: rotatePhone 1.5s infinite ease-in-out;
  }

  .mobile-game-gate h1 {
    margin: 0;
    color: #ffc400;
    font-size: 34px;
  }

  .mobile-game-gate p {
    max-width: 500px;
    margin: 18px auto;
    font-size: 18px;
    line-height: 1.5;
  }

  #mobileGameStart {
    width: 100%;
    max-width: 420px;
    height: 60px;
    margin-top: 8px;
    border: 0;
    border-radius: 14px;
    background: #19b31d;
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    cursor: pointer;
  }

  #mobileGameStart:hover {
    filter: brightness(1.08);
  }

  #mobileGameStart:disabled {
    opacity: 0.65;
    cursor: not-allowed;
  }

  .mobile-game-gate__help {
    margin-top: 14px;
    color: #ffd54d;
    font-size: 14px;
  }

  @keyframes rotatePhone {
    0%, 100% { transform: rotate(0deg); }
    50% { transform: rotate(90deg); }
  }
}

/* ======================================================
   GIOCO MOBILE ORIZZONTALE
====================================================== */

@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {
  html,
  body {
    width: 100%;
    height: 100%;
    min-height: 100%;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .machine {
    box-sizing: border-box;
    width: 100vw;
    height: 100dvh;
    min-width: 0;
    min-height: 100dvh;
    display: grid;
    grid-template-columns:
      minmax(0, 36%)
      minmax(0, 32%)
      minmax(0, 32%);
  grid-template-areas:
  "prizes jackpot stats"
  "table table table"
  "controls controls controls"
  "message message message";

grid-template-rows:
  clamp(150px, 40dvh, 175px)
  minmax(0, 1fr)
  40px
  22px;
    align-content: stretch;
    overflow: hidden;
  }

  body.mobile-landscape-game .dashboard {
    display: contents;
  }

  body.mobile-landscape-game .toolbar { grid-area: toolbar; }
  body.mobile-landscape-game .pay-panel { grid-area: prizes; }
  body.mobile-landscape-game .brand-panel { grid-area: jackpot; }
  body.mobile-landscape-game .stats-panel { grid-area: stats; }
  body.mobile-landscape-game .table { grid-area: table; }
  body.mobile-landscape-game .controls { grid-area: controls; }
  body.mobile-landscape-game .message { grid-area: message; }

body.mobile-landscape-game .toolbar {
    display: none !important;
}
  
  /* Tabella premi */
  body.mobile-landscape-game .pay-panel {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: 22px minmax(0, 1fr);
    padding: 2px 6px;
    overflow: hidden;
  }

  body.mobile-landscape-game .pay-panel h1 {
    width: 100%;
    height: 22px;
    min-height: 22px;
    margin: 0;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: clamp(12px, 2.8vh, 17px);
    line-height: 22px;
    white-space: nowrap;
  }

  body.mobile-landscape-game .paytable {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: repeat(10, minmax(9px, 1fr));
    margin: 0;
    padding: 0;
    overflow: hidden;
  }

  body.mobile-landscape-game .paytable > div {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
    min-height: 9px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) 62px;
    align-items: center;
    gap: 3px;
    margin: 0;
    padding: 0 3px;
    font-size: clamp(8px, 1.9vh, 12px);
    line-height: 1;
    overflow: hidden;
  }

  body.mobile-landscape-game .paytable > div > * {
    min-width: 0;
    margin: 0;
    padding: 0;
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
  }

  body.mobile-landscape-game .paytable > div > :last-child {
    text-align: right;
  }

  body.mobile-landscape-game .pay-panel p {
    display: none !important;
  }

  /* Pannello centrale: titolo, jackpot e moltiplicatori */
  body.mobile-landscape-game .brand-panel {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 2px !important;
    padding: 1px 5px 3px !important;
    overflow: visible !important;
    position: relative !important;
  }

  /* Il titolo Triple Star resta sempre visibile sopra le card */

  body.mobile-landscape-game .brand {
    display: none !important;
}

  body.mobile-landscape-game .player-prize-cards,
  body.mobile-landscape-game .player-prize-cards__frame,
  body.mobile-landscape-game .player-prize-cards__panel,
  body.mobile-landscape-game .player-prize-cards__content {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.mobile-landscape-game .player-prize-cards {
    display: flex !important;
    flex-direction: column !important;
    gap: 2px !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .player-prize-cards__title {
    box-sizing: border-box !important;
    width: auto !important;
    height: 13px !important;
    min-height: 13px !important;
    margin: 2px auto 3px !important;
    padding: 0 5px !important;
    font-size: clamp(10px, 2.3vh, 15px) !important;
    line-height: 13px !important;
    white-space: nowrap !important;
  }

  /* Card Jackpot più basse e con distanza verticale reale */
  body.mobile-landscape-game .player-prize-cards__list {
    box-sizing: border-box !important;
    width: 98% !important;
    height: 76px !important;
    min-height: 76px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(3, 22px) !important;
    gap: 5px !important;
    margin: 4px auto 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .player-prize-card {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 22px !important;
    min-height: 22px !important;
    max-height: 22px !important;
    display: grid !important;
    grid-template-columns: 16% minmax(0, 1fr) 40% !important;
    align-items: center !important;
    gap: 2px !important;
    margin: 0 !important;
    padding: 0 5px !important;
    border-radius: 5px !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-card__stars {
    min-width: 0 !important;
    font-size: clamp(8px, 1.8vh, 11px) !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-card__name {
    min-width: 0 !important;
    font-size: clamp(10px, 2.2vh, 14px) !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-card__value {
    min-width: 0 !important;
    padding: 0 3px !important;
    font-size: clamp(8px, 1.8vh, 11px) !important;
    line-height: 1 !important;
    text-align: right !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  /* x3, x5 e x9 più grandi, più in basso e perfettamente allineati */
  body.mobile-landscape-game .multiplier-lines {
    box-sizing: border-box !important;
    width: 96% !important;
    height: 30px !important;
    min-height: 30px !important;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: center !important;
    gap: 12px !important;
    margin: 9px auto 0 !important;
    padding: 0 5px !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .multiplier-lines div,
  body.mobile-landscape-game .active-multiplier {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    max-height: 30px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 3px !important;
    margin: 0 !important;
    padding: 0 2px !important;
    border: 0 !important;
    outline: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    line-height: 1 !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .active-multiplier strong {
    font-size: clamp(18px, 4.6vh, 24px) !important;
    line-height: 1 !important;
  }

  body.mobile-landscape-game .active-multiplier small {
    font-size: clamp(8px, 2vh, 11px) !important;
    line-height: 1 !important;
  }

  /* Crediti, punti e bet */
  body.mobile-landscape-game .stats-panel {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-rows: repeat(3, 40px);
    align-content: center;
    justify-items: center;
    gap: 6px;
    padding: 6px 7px;
    overflow: hidden;
  }

  body.mobile-landscape-game .stats-panel .stat {
    box-sizing: border-box;
    width: 94%;
    height: 40px;
    min-width: 0;
    min-height: 40px;
    display: grid;
    grid-template-columns: 40% 60%;
    align-items: stretch;
    margin: 0;
    padding: 0;
    border-radius: 7px;
    overflow: hidden;
  }

  body.mobile-landscape-game .stats-panel .stat label {
    min-width: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1px 3px;
    font-size: clamp(11px, 2.5vh, 15px);
    line-height: 1;
    white-space: nowrap;
    overflow: hidden;
  }

  body.mobile-landscape-game .stats-panel .stat output {
    box-sizing: border-box;
    width: calc(100% - 4px);
    height: 36px;
    min-width: 0;
    min-height: 36px;
    margin: 2px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    font-size: clamp(18px, 4.2vh, 27px);
    line-height: 1;
    overflow: hidden;
  }

  body.mobile-landscape-game .stars-strip {
    display: none !important;
  }

  /* Tavolo verde: più alto, largo e completamente responsive */
  body.mobile-landscape-game .table {
    box-sizing: border-box;
    position: relative;
    width: calc(100% - 4px);
    height: calc(100% - 2px);
    min-height: 0;
    margin: 1px 2px;
    align-self: stretch;
    border-radius: 13px;
    overflow: hidden;
  }

  body.mobile-landscape-game .items,
  body.mobile-landscape-game .items.cards,
  body.mobile-landscape-game .items.balls {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-height: 0;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    align-items: stretch;
    justify-items: center;
    gap: clamp(8px, 1.2vw, 18px);
    padding: 6px clamp(12px, 2.2vw, 28px) 5px;
    overflow: hidden;
  }

  body.mobile-landscape-game .item.card,
  body.mobile-landscape-game .item.ball,
  body.mobile-landscape-game .item.ball.joker-ball,
  body.mobile-landscape-game .items.cards .item.card,
  body.mobile-landscape-game .items.balls .item.ball,
  body.mobile-landscape-game .items.balls .item.ball.joker-ball {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) 16px;
    align-items: center;
    justify-items: center;
    overflow: hidden;
  }

  body.mobile-landscape-game .item.card img,
  body.mobile-landscape-game .items.cards .item.card img {
    width: 84%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    justify-self: center;
  }

  body.mobile-landscape-game .item.ball img,
  body.mobile-landscape-game .item.ball.joker-ball img,
  body.mobile-landscape-game .items.balls .item.ball img,
  body.mobile-landscape-game .items.balls .item.ball.joker-ball img {
    width: 88%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    object-position: center;
    justify-self: center;
  }

  body.mobile-landscape-game .item span,
  body.mobile-landscape-game .item.ball span,
  body.mobile-landscape-game .item.ball.joker-ball span {
    box-sizing: border-box;
    width: auto;
    min-width: 34px;
    height: 14px;
    min-height: 14px;
    margin: 0 0 1px;
    padding: 0 4px;
    align-self: end;
    border-width: 1px;
    border-radius: 5px;
    font-size: clamp(6px, 1.35vh, 8px);
    line-height: 12px;
    overflow: hidden;
  }

  /* Elimina le righe/guide gialle sotto le carte solo su mobile */
  body.mobile-landscape-game .item::before,
  body.mobile-landscape-game .item::after,
  body.mobile-landscape-game .item.card::before,
  body.mobile-landscape-game .item.card::after,
  body.mobile-landscape-game .item.ball::before,
  body.mobile-landscape-game .item.ball::after {
    display: none !important;
    content: none !important;
    border: 0 !important;
    background: none !important;
    box-shadow: none !important;
  }

  /* Pulsanti */
  body.mobile-landscape-game .controls {
    box-sizing: border-box;
    width: 100%;
    height: 40px;
    min-height: 40px;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 6px;
    padding: 3px 10px;
  }

  body.mobile-landscape-game #doubleBtn {
    grid-column: auto;
  }

  body.mobile-landscape-game .control {
    box-sizing: border-box;
    height: 34px;
    min-height: 34px;
    border-width: 1px;
    border-radius: 7px;
    font-size: clamp(8px, 2vh, 12px);
    line-height: 1;
  }

  body.mobile-landscape-game .message {
    box-sizing: border-box;
    width: 100%;
    height: 22px;
    min-height: 22px;
    padding: 1px 3px;
    font-size: clamp(7px, 1.8vh, 10px);
    line-height: 20px;
  }

  /* Popup vincita disattivato su mobile */
  body.mobile-landscape-game .mobile-win-popup,
  body.mobile-landscape-game .mobile-win-popup.show,
  .mobile-win-popup,
  .mobile-win-popup.show {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}

/* ======================================================
   RADDOPPIO MOBILE ORIZZONTALE
====================================================== */

@media (max-width: 950px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {
  body.mobile-landscape-game .double-overlay {
    box-sizing: border-box;
    padding: 4px;
    overflow: hidden;
    align-items: center;
    justify-content: center;
  }

  body.mobile-landscape-game .double-card {
    box-sizing: border-box;
    width: min(920px, calc(100vw - 8px));
    height: calc(100dvh - 8px);
    max-height: calc(100dvh - 8px);
    padding: 7px 12px;
    border-radius: 14px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
  }

  body.mobile-landscape-game .double-card header {
    flex: 0 0 auto;
    min-height: 38px;
    padding-bottom: 4px;
  }

  body.mobile-landscape-game .double-card h2 {
    margin: 0;
    font-size: clamp(19px, 5.2vh, 31px);
    line-height: 1;
  }

  body.mobile-landscape-game .double-card header button {
    width: 36px;
    height: 36px;
    min-width: 36px;
    padding: 0;
    font-size: 23px;
    line-height: 1;
  }

  body.mobile-landscape-game .double-info {
    flex: 0 0 auto;
    margin: 5px 0;
    font-size: clamp(16px, 4.3vh, 25px);
    line-height: 1.1;
  }

  body.mobile-landscape-game .double-reveal {
    flex: 1 1 auto;
    width: 100%;
    min-height: 0;
    height: auto;
    margin: 3px auto;
    border-radius: 11px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.mobile-landscape-game .double-back,
  body.mobile-landscape-game .double-result {
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    max-width: 100%;
    max-height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  body.mobile-landscape-game .double-back img,
  body.mobile-landscape-game .double-result img {
    display: block;
    width: auto !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
    object-position: center;
  }

  body.mobile-landscape-game .double-result strong {
    bottom: 4px;
    padding: 3px 9px;
    font-size: clamp(12px, 3vh, 17px);
  }

  body.mobile-landscape-game .double-rule {
    flex: 0 0 auto;
    margin: 3px 0;
    font-size: clamp(11px, 3vh, 17px);
    line-height: 1.05;
  }

  body.mobile-landscape-game .double-actions {
    flex: 0 0 auto;
    gap: 7px;
    margin: 0;
  }

  body.mobile-landscape-game .double-actions button {
    box-sizing: border-box;
    min-height: 34px;
    height: clamp(34px, 8.5vh, 45px);
    padding: 2px 10px;
    border-width: 2px;
    border-radius: 10px;
    font-size: clamp(15px, 3.8vh, 22px);
    line-height: 1;
  }
}

/* ======================================================
   ACCESSIBILITÀ
====================================================== */

@media (prefers-reduced-motion: reduce) {
  .mobile-game-gate__phone {
    animation: none;
  }
}


/* ======================================================
   ALLINEAMENTO FINALE FASCIA SUPERIORE MOBILE
====================================================== */
@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {
  body.mobile-landscape-game .pay-panel,
  body.mobile-landscape-game .brand-panel,
  body.mobile-landscape-game .stats-panel {
    min-height: 0 !important;
    height: 100% !important;
    align-self: stretch !important;
  }

  body.mobile-landscape-game .pay-panel p,
  body.mobile-landscape-game .pay-panel .pay-note,
  body.mobile-landscape-game .pay-panel .paytable-note {
    display: none !important;
  }

  body.mobile-landscape-game .brand,
  body.mobile-landscape-game .player-prize-cards__title {
    position: relative !important;
    z-index: 30 !important;
  }

  body.mobile-landscape-game .player-prize-cards {
    position: relative !important;
    z-index: 10 !important;
  }
}

/* ======================================================
   JACKPOT MOBILE — POSIZIONAMENTO DEFINITIVO
====================================================== */

@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {

  body.mobile-landscape-game .brand {
    display: none !important;
  }

  body.mobile-landscape-game .brand-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;

    padding: 4px 8px 5px !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-cards {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: grid !important;
    grid-template-rows:
      24px
      82px
      minmax(42px, 1fr) !important;

    align-items: stretch !important;
    justify-items: center !important;

    gap: 6px !important;
    margin: 0 !important;
    padding: 0 !important;

    transform: none !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-cards__title {
    box-sizing: border-box !important;
    width: auto !important;
    height: 24px !important;
    min-height: 24px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 auto !important;
    padding: 0 12px !important;

    font-size: clamp(15px, 3.4vh, 20px) !important;
    font-weight: 800 !important;
    line-height: 24px !important;
    white-space: nowrap !important;

    position: relative !important;
    z-index: 30 !important;
  }

  body.mobile-landscape-game .player-prize-cards__list {
    box-sizing: border-box !important;
    width: 96% !important;
    height: 82px !important;
    min-height: 82px !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(3, 25px) !important;

    gap: 3px !important;
    margin: 0 auto !important;
    padding: 0 !important;

    align-self: start !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-card {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 25px !important;
    min-height: 25px !important;
    max-height: 25px !important;

    display: grid !important;
    grid-template-columns: 16% minmax(0, 1fr) 40% !important;
    align-items: center !important;

    gap: 3px !important;
    margin: 0 !important;
    padding: 0 6px !important;

    border-radius: 6px !important;
    overflow: hidden !important;
  }

  body.mobile-landscape-game .player-prize-card__stars {
    font-size: clamp(10px, 2.4vh, 14px) !important;
    line-height: 1 !important;
  }

  body.mobile-landscape-game .player-prize-card__name {
    font-size: clamp(13px, 3vh, 18px) !important;
    line-height: 1 !important;
    text-align: center !important;
  }

  body.mobile-landscape-game .player-prize-card__value {
    padding: 0 4px !important;
    font-size: clamp(12px, 2.8vh, 17px) !important;
    line-height: 1 !important;
    text-align: right !important;
  }

  body.mobile-landscape-game .multiplier-lines {
    box-sizing: border-box !important;
    width: 97% !important;
    height: 100% !important;
    min-height: 42px !important;

    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: end !important;

    gap: 10px !important;
    margin: 0 auto !important;
    padding: 0 4px 4px !important;

    align-self: stretch !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .multiplier-lines > div,
  body.mobile-landscape-game .active-multiplier {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 42px !important;
    min-height: 42px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 5px !important;
    margin: 0 !important;
    padding: 0 !important;

    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    overflow: visible !important;
  }

  body.mobile-landscape-game .active-multiplier strong {
    font-size: clamp(28px, 6.3vh, 36px) !important;
    line-height: 1 !important;
  }

  body.mobile-landscape-game .active-multiplier small {
    font-size: clamp(14px, 3.4vh, 20px) !important;
    line-height: 1 !important;
  }
}

/* ======================================================
   JACKPOT MOBILE DEFINITIVO
   Struttura reale del modulo player-prize-cards
====================================================== */

@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {

  /* Elementi che saranno inseriti nel futuro popup */
  body.mobile-landscape-game .brand,
  body.mobile-landscape-game .multiplier-lines,
  body.mobile-landscape-game .active-multiplier {
    display: none !important;
  }

  /* Pannello centrale */
  body.mobile-landscape-game .brand-panel {
    box-sizing: border-box !important;
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: flex !important;
    align-items: stretch !important;
    justify-content: stretch !important;

    padding: 7px 10px !important;
    overflow: hidden !important;
  }

  /* Cornice completa Jackpot */
  body.mobile-landscape-game .player-prize-cards {
    box-sizing: border-box !important;
    position: relative !important;

    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    justify-content: stretch !important;

    margin: 0 !important;
    padding: 39px 10px 9px !important;

    border: 2px solid #ffbf00 !important;
    border-radius: 13px !important;

    background:
      radial-gradient(
        circle at 50% 0%,
        rgba(255, 193, 7, 0.16),
        transparent 48%
      ),
      linear-gradient(
        180deg,
        rgba(5, 11, 22, 0.99),
        rgba(1, 5, 12, 0.99)
      ) !important;

    box-shadow:
      inset 0 0 14px rgba(255, 189, 0, 0.34),
      0 0 8px rgba(255, 189, 0, 0.62) !important;

    transform: none !important;
    overflow: hidden !important;
  }

  /* Titolo reale creato tramite pseudo-elemento */
  body.mobile-landscape-game .player-prize-cards::before {
    content: "JACKPOT A 3 LIVELLI" !important;

    box-sizing: border-box !important;
    position: absolute !important;

    top: 4px !important;
    left: 8px !important;
    right: 8px !important;

    width: auto !important;
    height: 29px !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    transform: none !important;
    margin: 0 !important;
    padding: 0 6px !important;

    border-radius: 9px !important;
    background: #07101e !important;
    color: #ffc400 !important;

    font-size: clamp(18px, 4.4vh, 27px) !important;
    font-weight: 900 !important;
    line-height: 29px !important;
    letter-spacing: 0.5px !important;
    text-align: center !important;
    white-space: nowrap !important;

    text-shadow:
      0 0 4px #000,
      0 0 8px rgba(255, 196, 0, 0.8) !important;

    z-index: 20 !important;
  }

  /* Lista reale delle tre card */
  body.mobile-landscape-game .player-prize-cards__list {
    box-sizing: border-box !important;

    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;

    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: repeat(3, minmax(0, 1fr)) !important;

    align-items: stretch !important;
    gap: 7px !important;

    margin: 0 !important;
    padding: 0 !important;

    overflow: hidden !important;
  }

   /* Gold, Silver e Bronze: distribuzione definitiva */
  body.mobile-landscape-game .player-prize-card {
    box-sizing: border-box !important;
    position: relative !important;

    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: none !important;

    display: grid !important;
    grid-template-columns:
      11%
      35%
      minmax(0, 54%) !important;

    align-items: center !important;
    gap: 2px !important;

    margin: 0 !important;
    padding: 0 5px !important;

    border-radius: 8px !important;
    overflow: hidden !important;
  }

  /* Stelle piccole e completamente a sinistra */
  body.mobile-landscape-game .player-prize-card__stars {
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;

    width: 100% !important;
    min-width: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;

    margin: 0 !important;
    padding: 0 0 0 1px !important;

    font-size: clamp(9px, 2.1vh, 13px) !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  /* GOLD, SILVER e BRONZE più piccoli */
  body.mobile-landscape-game .player-prize-card__title {
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;

    width: 100% !important;
    min-width: 0 !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    margin: 0 !important;
    padding: 0 2px !important;

    font-size: clamp(14px, 3.4vh, 21px) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: center !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }

  /* Importi con maggiore spazio e sempre visibili per intero */
  body.mobile-landscape-game .player-prize-card__amount {
    box-sizing: border-box !important;
    position: relative !important;
    z-index: 2 !important;

    width: 100% !important;
    min-width: 0 !important;
    height: calc(100% - 6px) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;

    margin: 3px 0 !important;
    padding: 0 6px 0 3px !important;

    border-radius: 7px !important;

    font-size: clamp(13px, 3.1vh, 19px) !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-align: right !important;
    white-space: nowrap !important;
    overflow: hidden !important;
  }
}
/* ======================================================
   MENU POPUP MOBILE
====================================================== */
.mobile-game-menu,
.mobile-menu-button {
  display: none;
}
@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {

.mobile-menu-button{
display:block;
position:absolute;
right:8px;
bottom:52px;

width:40px;
height:40px;

border:2px solid #d8a500;
border-radius:50%;

background:
linear-gradient(
180deg,
#14253d,
#050b16);

color:#ffd54a;

font-size:22px;
font-weight:700;

cursor:pointer;

box-shadow:
0 0 8px rgba(255,196,0,.45),
inset 0 0 10px rgba(255,196,0,.15);

z-index:999;
}

.mobile-game-menu{

position:fixed;
inset:0;

display:none;

align-items:center;
justify-content:center;

background:rgba(0,0,0,.70);

backdrop-filter:blur(4px);

z-index:5000;

}

.mobile-game-menu.open{

display:flex;

}

.mobile-game-menu-card{

width:min(520px,90vw);

padding:10px;

border:3px solid #d7a600;
border-radius:18px;

background:
linear-gradient(
180deg,
#081320,
#03070f);

box-shadow:

0 0 30px rgba(255,196,0,.40),

inset 0 0 20px rgba(255,196,0,.18);

display:flex;

flex-direction:column;

gap:5px;

}

.mobile-game-menu-card h2{

margin:0;

text-align:center;

font-size:34px;

font-weight:900;

color:#ffd54a;

text-shadow:
0 0 8px #000,
0 0 10px rgba(255,196,0,.50);

}

.mobile-player-name{

height:40px;

display:flex;

align-items:center;
justify-content:center;

border:2px solid #d7a600;
border-radius:10px;

background:#071320;

color:#ffffff;

font-size:20px;
font-weight:700;

}

.mobile-popup-button{

height:48px;

border:2px solid #d7a600;
border-radius:10px;

background:
linear-gradient(
180deg,
#ffb300,
#d98a00);

color:#111;

font-size:20px;
font-weight:900;

cursor:pointer;

transition:.2s;

}

.mobile-popup-button:hover{

transform:scale(1.02);

}

.mobile-popup-stars{

display:flex;

justify-content:space-between;

gap:12px;

margin-top:4px;

}

.mobile-popup-stars span{

flex:1;

height:42px;

display:flex;

align-items:center;
justify-content:center;

border:2px solid #d7a600;
border-radius:10px;

background:#071320;

color:#ffd54a;

font-size:22px;
font-weight:900;

}

.mobile-popup-close{

height:42px;

border:2px solid #d7a600;
border-radius:10px;

background:#2d2d2d;

color:#fff;

font-size:18px;
font-weight:700;

cursor:pointer;

}

}
/* =====================================================
   TRIPLE STAR — CREDITO ZERO DESKTOP

   Solo nello stato INSERIRE COIN:
   - elimina il pannello verde interno;
   - mantiene la cornice marrone;
   - centra le cinque carte;
   - centra la scritta sopra le carte.
===================================================== */

@media (min-width: 901px) and (hover: hover) and (pointer: fine) {

  /* Tavolo contenitore */
  body.insert-coin .table,
  html:fullscreen body.insert-coin .table {
    position: relative !important;
  }

  /* Elimina esclusivamente il pannello verde interno */
  body.insert-coin .items.coin-idle,
  body.insert-coin .items.cards.coin-idle,
  html:fullscreen body.insert-coin .items.coin-idle,
  html:fullscreen body.insert-coin .items.cards.coin-idle {
    position: absolute !important;

    inset:
      clamp(28px, 4vh, 52px)
      clamp(38px, 4vw, 72px) !important;

    z-index: 5 !important;

    box-sizing: border-box !important;

    width: auto !important;
    height: auto !important;

    min-height: 0 !important;

    margin: 0 !important;

    padding:
      clamp(20px, 3vh, 38px)
      clamp(30px, 4vw, 70px) !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    gap: clamp(24px, 4vw, 72px) !important;

    border: 0 !important;
    border-radius: 0 !important;

    background: transparent !important;

    box-shadow: none !important;

    overflow: hidden !important;

    pointer-events: none !important;
  }

  /* Dimensione uniforme delle cinque carte */
  body.insert-coin .items.coin-idle .idle-back,
  html:fullscreen body.insert-coin
  .items.coin-idle
  .idle-back {
    flex:
      0 1
      clamp(125px, 11vw, 190px) !important;

    width:
      clamp(125px, 11vw, 190px) !important;

    height: auto !important;

    max-width: 190px !important;
    max-height: 78% !important;

    aspect-ratio: 183 / 248 !important;

    display: grid !important;

    grid-template-rows:
      minmax(0, 1fr) !important;

    place-items: center !important;

    opacity: 1 !important;
  }

  body.insert-coin .items.coin-idle .idle-back img,
  html:fullscreen body.insert-coin
  .items.coin-idle
  .idle-back
  img {
    width: 100% !important;
    height: 100% !important;

    max-width: 100% !important;
    max-height: 100% !important;

    object-fit: contain !important;
    object-position: center !important;

    filter:
      drop-shadow(
        8px 12px 7px
        rgba(0, 0, 0, 0.88)
      ) !important;
  }

  /* Scritta centrata sopra le carte */
  body.insert-coin .coin-message,
  html:fullscreen body.insert-coin .coin-message {
    position: absolute !important;

    inset: 0 !important;

    z-index: 20 !important;

    display: flex !important;

    align-items: center !important;
    justify-content: center !important;

    box-sizing: border-box !important;

    padding:
      0
      25px
      clamp(10px, 2vh, 30px) !important;

    border: 0 !important;

    background: transparent !important;

    color: #ffd02c !important;

    font-size:
      clamp(52px, 6vw, 102px) !important;

    font-weight: 900 !important;

    line-height: 1 !important;
    letter-spacing: 0.07em !important;

    text-align: center !important;
    white-space: nowrap !important;

    text-shadow:
      0 0 10px rgba(255, 255, 255, 0.90),
      0 0 22px rgba(255, 180, 0, 0.95),
      5px 7px 4px rgba(95, 41, 0, 0.90) !important;

    pointer-events: none !important;
  }
}

/* =====================================================
   NOTEBOOK O MONITOR CON ALTEZZA RIDOTTA
===================================================== */

@media
  (min-width: 901px)
  and (hover: hover) and (pointer: fine)
  and (max-height: 950px) {

  body.insert-coin .items.coin-idle,
  html:fullscreen body.insert-coin
  .items.coin-idle {
    inset:
      20px
      clamp(30px, 3.5vw, 60px) !important;

    padding:
      16px
      clamp(25px, 3vw, 55px) !important;

    gap:
      clamp(18px, 3.2vw, 55px) !important;
  }

  body.insert-coin .items.coin-idle .idle-back,
  html:fullscreen body.insert-coin
  .items.coin-idle
  .idle-back {
    flex:
      0 1
      clamp(110px, 10vw, 165px) !important;

    width:
      clamp(110px, 10vw, 165px) !important;

    max-width: 165px !important;
    max-height: 76% !important;
  }

  body.insert-coin .coin-message,
  html:fullscreen body.insert-coin
  .coin-message {
    padding-bottom:
      clamp(8px, 1.5vh, 20px) !important;

    font-size:
      clamp(48px, 5.6vw, 86px) !important;
  }
}

/* ======================================================
   MENU MOBILE COMPATTO A DUE COLONNE
====================================================== */

@media (max-width: 900px) and (orientation: landscape),
       (pointer: coarse) and (orientation: landscape) {

  .mobile-game-menu {
    padding: 5px;
    overflow: hidden;
  }

  .mobile-game-menu-card {
    width: min(500px, 94vw);
    max-height: calc(100dvh - 10px);
    padding: 7px;
    gap: 5px;

    display: grid;
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    border-width: 2px;
    border-radius: 13px;
    overflow: hidden;
  }

  .mobile-game-menu-card h2 {
    grid-column: 1 / -1;

    margin: 0;
    font-size: 22px;
    line-height: 1.1;
  }

  .mobile-player-name {
    grid-column: 1 / -1;

    width: 100%;
    height: 30px;
    min-height: 30px;

    border-radius: 7px;

    font-size: 14px;
    line-height: 1;

    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .mobile-popup-button {
    width: 100%;
    height: 36px;
    min-height: 36px;
    padding: 0 8px;

    border-radius: 7px;

    font-size: 14px;
    line-height: 1;
  }

  .mobile-popup-stars {
    grid-column: 1 / -1;

    width: 100%;
    gap: 5px;
    margin: 0;
  }

  .mobile-popup-stars span {
    height: 30px;
    min-height: 30px;

    border-radius: 7px;

    font-size: 14px;
    line-height: 1;
  }

  .mobile-popup-close {
    width: 100%;
    height: 34px;
    min-height: 34px;

    border-radius: 7px;

    font-size: 14px;
    line-height: 1;
  }
}
/* ======================================================
   NASCONDE TIENI/TENUTA NELLA SCHERMATA DI ROTAZIONE
====================================================== */

@media (max-width: 900px), (pointer: coarse) {

  body.mobile-game-gate-open
  .machine
  .item span,

  body.mobile-game-gate-open
  .machine
  .item.ball span,

  body.mobile-game-gate-open
  .machine
  .item.ball.joker-ball span {

    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
