/* Canonical mobile calendar, roster and day views. */
@media(max-width:720px){
  /* Calendari: la graella mostra el mes; el detall es consulta tocant el dia. */
  .unified-calendar-v2120 .card{padding:14px 12px}
  .unified-calendar-top-v2120{gap:10px}
  .unified-calendar-top-v2120 h2{font-size:26px}
  .unified-calendar-controls-v2120{width:100%;display:grid;grid-template-columns:1fr;gap:8px}
  .unified-calendar-controls-v2120 label{width:100%}
  .unified-calendar-controls-v2120 select{width:100%;min-height:48px}
  .unified-calendar-controls-v2120 .cal-nav{display:grid;grid-template-columns:54px 1fr 54px;gap:6px;width:100%}
  .unified-calendar-controls-v2120 .cal-nav button{min-height:44px}
  .mobile-month-overview-v2130{gap:4px!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;min-width:0!important;width:100%!important}
  .mobile-month-overview-v2130 .cal-weekday{font-size:8px;padding:4px 0;text-align:center}
  .mobile-month-overview-v2130 .cal-day{min-width:0!important;min-height:66px!important;padding:5px 4px!important;border-radius:11px!important;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;touch-action:manipulation}
  .mobile-month-overview-v2130 .cal-day:active{transform:scale(.985)}
  .mobile-month-overview-v2130 .cal-day:focus-visible{outline:2px solid #111;outline-offset:1px}
  .mobile-month-overview-v2130 .cal-day-number{min-height:18px;margin:0 0 3px;display:flex;align-items:center;justify-content:space-between}
  .mobile-month-overview-v2130 .cal-day-number>span:first-child{font-size:11px!important;font-weight:900}
  .mobile-month-overview-v2130 .cal-day-number .dot{width:5px!important;height:5px!important}
  .mobile-month-overview-v2130 .cal-events{display:flex!important;align-items:flex-start;align-content:flex-start;flex-wrap:wrap;gap:3px!important;min-height:10px;max-height:22px;overflow:hidden;pointer-events:none!important}
  .mobile-month-overview-v2130 .cal-event{width:8px!important;height:8px!important;min-width:8px!important;min-height:8px!important;max-width:8px!important;padding:0!important;margin:0!important;border:0!important;border-radius:999px!important;box-shadow:none!important;font-size:0!important;line-height:0!important;overflow:hidden;pointer-events:none!important}
  .mobile-month-overview-v2130 .cal-event strong,.mobile-month-overview-v2130 .cal-event span,.mobile-month-overview-v2130 .cal-event small{display:none!important}
  .mobile-month-overview-v2130 .cal-event.match{background:#111!important}
  .mobile-month-overview-v2130 .cal-event.cancelled{background:#df3028!important}
  .mobile-month-overview-v2130 .cal-event.court-green{background:#3ba36b!important}
  .mobile-month-overview-v2130 .cal-event.court-grey{background:#8b9197!important}
  .mobile-month-overview-v2130 .cal-event.court-brossa{background:#b4873a!important}
  .mobile-month-overview-v2130 .cal-event.court-edm{background:#4f80bf!important}
  .mobile-month-overview-v2130 .calendar-break-badge-v2120{margin-top:auto!important;width:100%;max-width:100%;padding:3px 4px!important;border-radius:7px!important;font-size:6.5px!important;line-height:1.05!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;pointer-events:none!important}
  .unified-calendar-legend-v2120{gap:8px;font-size:8px;flex-wrap:wrap}
  .court-colour-legend{width:100%;border-top:1px solid var(--line);padding-top:8px;display:flex;flex-wrap:wrap;gap:8px}

  /* Gestió > Plantilla: targetes verticals, sense taula horitzontal. */
  .table-wrap:has(.admin-player-table){overflow:visible!important;border:0!important;background:transparent!important}
  .admin-player-table{display:block!important;width:100%!important;min-width:0!important;border:0!important;background:transparent!important}
  .admin-player-table thead{display:none!important}
  .admin-player-table tbody{display:grid!important;gap:8px;width:100%}
  .admin-player-table tbody tr{display:grid!important;grid-template-columns:44px minmax(0,1fr) auto;grid-template-areas:'dorsal name state' 'dorsal positions action';gap:5px 9px;align-items:center;width:100%;padding:11px;border:1px solid var(--line);border-radius:14px;background:#fff}
  .admin-player-table tbody td{display:block!important;width:auto!important;min-width:0!important;border:0!important;padding:0!important;white-space:normal!important}
  .admin-player-table tbody td:nth-child(1){grid-area:dorsal;align-self:stretch;display:grid!important;place-items:center;background:#111;color:var(--yellow);border-radius:10px!important;font-size:10px}
  .admin-player-table tbody td:nth-child(2){grid-area:name;overflow-wrap:anywhere}
  .admin-player-table tbody td:nth-child(2) strong{font-size:12px;line-height:1.2}
  .admin-player-table tbody td:nth-child(3){grid-area:positions}
  .admin-player-table tbody td:nth-child(4){grid-area:state;justify-self:end}
  .admin-player-table tbody td:nth-child(5){grid-area:action;justify-self:end}
  .admin-player-table tbody td:nth-child(5) .btn{min-height:34px;padding:7px 10px}
  .admin-player-table .roster-positions{margin:0;gap:4px}
  .admin-player-table .position-badge{font-size:7px;min-height:18px;padding:3px 6px}
  .admin-player-filter-v296{gap:9px}
  .admin-player-filter-v296>label{min-width:0!important;width:100%}
  .admin-player-filter-v296 select{width:100%}
  .admin-player-filter-v296 .admin-filter-summary{width:100%}
  .admin-player-actions-v296{display:grid!important;grid-template-columns:1fr;width:100%!important;gap:8px}
  .admin-player-actions-v296 .roster-sort,.admin-player-actions-v296>.btn{width:100%!important}

  /* Full del dia: cada sessió és una acció clara i completa. */
  .mobile-day-list-v2130{display:grid;gap:9px}
  .mobile-day-row-v2130{width:100%;min-height:72px;border:1px solid var(--line);border-radius:14px;background:#fff;padding:12px 13px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;text-align:left;overflow:visible;white-space:normal;touch-action:manipulation}
  .mobile-day-row-v2130:active{transform:scale(.99)}
  .mobile-day-row-v2130>div{display:grid;gap:4px;min-width:0}
  .mobile-day-row-v2130 strong{font-size:13px;line-height:1.2;white-space:normal}
  .mobile-day-row-v2130 span{font-size:10px;line-height:1.3;color:var(--muted);white-space:normal;overflow-wrap:anywhere}
  .mobile-day-row-v2130>b{font-size:9px;line-height:1.15;white-space:normal;text-align:right;max-width:92px;color:#111}
  .mobile-day-row-v2130.match{border-left:4px solid #111}
  .mobile-day-row-v2130.training{border-left:4px solid var(--yellow)}
  .mobile-day-breaks-v2130{margin-bottom:10px;padding:10px 11px;border-radius:12px;background:#fff6b5;display:grid;gap:4px}
  .mobile-day-breaks-v2130>strong{font-size:11px}
  .mobile-day-breaks-v2130>span,.mobile-day-breaks-v2130>small{font-size:9px;color:#625700}
}
