#nextMatches .teams-block{
  display:flex;
  flex-direction:column;
  gap:4px;
}

@media (min-width:769px){
  body[data-page="calendario"] #calendarTable[data-appadel-rendering="true"]{
    visibility:hidden;
  }
}

#nextMatches .team-name.team-ours{
  color:var(--club-green);
  font-weight:800;
}

#homeConvocatoria:empty{display:none;}

.mcal-list{display:grid;gap:calc(var(--appadel-spacing-content-gap) + var(--appadel-spacing-control-gap))}
.mcal-card{
  background:var(--card-secondary-bg);
  border:1px solid var(--color-border);
  border-radius:var(--radius-md);
  box-shadow:var(--shadow-soft);
  padding:13px 14px;
  min-width:0;
  max-width:100%;
  overflow:hidden;
}
.mcal-line1{
  display:flex;
  align-items:flex-start;
  gap:10px;
  flex-wrap:nowrap;
  margin-bottom:10px;
  min-width:0;
  max-width:100%;
}

.mcal-line1 .ms-auto{
  margin-left:auto;
}.mcal-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px;
  border-radius:var(--radius-pill);
  background:var(--color-primary-ghost);
  color:var(--color-primary);
  border:1px solid var(--color-primary-border-soft);
  font-weight:900;
}
.mcal-meta{
  color:var(--color-muted);
  font-weight:600;
  font-size:.82rem;
  line-height:1.25;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.mcal-line2{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  margin-bottom:10px;
  min-width:0;
  max-width:100%;
}
.mcal-teams{
  font-weight:900;
  font-size:1rem;
  line-height:1.28;
  word-break:break-word;
}
.mcal-teams .sep{opacity:.6;font-weight:700}
.mcal-teams-vs{display:grid;gap:4px}
.mcal-vs{font-size:.78rem;opacity:.55;font-weight:800;letter-spacing:.03em}
.mcal-line3 .mcal-chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.cal-teams-block{
  display:flex;
  flex-direction:column;
  gap:6px;
  width:100%;
  min-width:0;
}

.cal-team-row,
.mcal-team-row{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  width:100%;
  max-width:100%;
  overflow:hidden;
}

.cal-team-row .badge,
.mcal-team-row .badge{
  flex:0 0 auto;
  min-width:0;
}

.cal-team-row .team-name,
.mcal-team-row .team-name{
  display:block;
  flex:1 1 auto;
  min-width:0;
  width:100%;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:400;
  color:var(--color-text);
}

.cal-team-row .team-name.team-ours,
.mcal-team-row .team-name.team-ours{
  color:var(--color-primary);
  font-weight:700;
}

.cal-score-meta{
  display:flex;
  align-items:center;
  gap:8px;
}

.cal-meta-block{
  display:grid;
  gap:3px;
}

.mcal-head-main{
  display:grid;
  gap:6px;
  min-width:0;
  flex:1 1 auto;
}

.mcal-jornada-row{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  min-width:0;
  max-width:100%;
}

.mcal-meta-stack{
  display:grid;
  gap:2px;
  min-width:0;
  max-width:100%;
}

.mcal-venue-ico{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border-radius:999px;
  background:var(--color-primary-ghost-strong);
  box-shadow:0 0 0 1px var(--color-primary-ghost-strong) inset;
  font-size:1rem;
  font-weight:900;
  line-height:1;
}

.mcal-actions-wrap{
  display:flex;
  align-items:flex-start;
  min-width:0;
  max-width:100%;
}

.mcal-teams-wrap{
  min-width:0;
  flex:1 1 auto;
  width:100%;
  max-width:100%;
  overflow:hidden;
}

.mcal-teams-block{
  display:flex;
  flex-direction:column;
  gap:8px;
  width:100%;
  min-width:0;
  max-width:100%;
  overflow:hidden;
}

.mcal-score-wrap{
  display:flex;
  align-items:flex-start;
  justify-content:flex-end;
  flex:0 0 auto;
  margin-left:auto;
  min-width:0;
  max-width:100%;
}

.mcal-line3-actions{
  margin-top:2px;
  margin-bottom:8px;
}

.mcal-line3-actions .cal-gestion-stack{
  flex-wrap:nowrap;
}

.cal-jornada-title{
  font-size:1rem;
  font-weight:800;
  line-height:1.2;
  color:var(--color-text);
}

.mcal-pill.cal-jornada-title{
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:var(--color-text);
  font-size:1rem;
  font-weight:800;
  letter-spacing:0;
}

.player-mgmt-readonly{
  background:var(--color-bg) !important;
  color:var(--color-text-disabled) !important;
  border-color:var(--color-border) !important;
  cursor:not-allowed;
}

.player-mgmt-readonly:focus{
  background:var(--color-bg) !important;
  color:var(--color-text-disabled) !important;
  border-color:var(--color-border) !important;
  box-shadow:none !important;
}

.cal-detail-toggle-wrap{
  margin-top:0;
  flex:0 0 auto;
}

.cal-detail-block[hidden]{
  display:none !important;
}

.cal-action-row{
  display:grid;
  grid-template-columns:1fr 1fr 1fr;
  align-items:stretch;
  gap:8px;
  min-width:0;
  width:100%;
  margin-top:12px;
}

.cal-action-row .cal-gestion-btn,
.cal-action-row .cal-detail-toggle{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  border-radius:999px;
  font-size:.78rem;
  line-height:1.1;
  min-width:0;
  padding:4px 8px;
  width:100%;
}

.cal-action-row .cal-detail-toggle{
  gap:.34rem;
}

.cal-action-row .cal-btn-ico{
  flex:0 0 auto;
}

.cal-action-row .cal-btn-text{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media (max-width:768px){
  .cal-action-row{
    gap:6px;
    align-items:stretch;
  }

  .cal-action-row .cal-gestion-btn,
  .cal-action-row .cal-detail-toggle{
    padding:4px 7px;
    font-size:.72rem;
  }

  .mcal-card .cal-action-row{
    margin-top:0;
  }
}

.mcal-meta-wrap{
  display:flex;
  flex-wrap:wrap;
  gap:6px 12px;
}

.mcal-chips{
  display:grid;
  gap:10px;
}

.cal-gestion-stack{
  gap:.42rem;
}

.home-clas table,
#clasificacionWrap table{
  table-layout:fixed;
  width:100%;
}

.home-clas th:nth-child(1),
.home-clas td:nth-child(1),
#clasificacionWrap th:nth-child(1),
#clasificacionWrap td:nth-child(1){
  width:var(--clas-col-pos);
  text-align:center;
}

.home-clas th:nth-child(2),
.home-clas td:nth-child(2),
#clasificacionWrap th:nth-child(2),
#clasificacionWrap td:nth-child(2){
  width:auto;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.home-clas th:nth-child(3),
.home-clas td:nth-child(3),
#clasificacionWrap th:nth-child(3),
#clasificacionWrap td:nth-child(3){
  width:var(--clas-col-pts);
  text-align:center;
}

.home-clas th:nth-child(4),
.home-clas td:nth-child(4),
.home-clas th:nth-child(5),
.home-clas td:nth-child(5),
.home-clas th:nth-child(6),
.home-clas td:nth-child(6),
#clasificacionWrap th:nth-child(4),
#clasificacionWrap td:nth-child(4),
#clasificacionWrap th:nth-child(5),
#clasificacionWrap td:nth-child(5),
#clasificacionWrap th:nth-child(6),
#clasificacionWrap td:nth-child(6){
  width:var(--clas-col-num);
  text-align:center;
}

.is-ours{background:var(--color-primary-ghost);}
.is-ours td{font-weight:400;}
.is-ours td:nth-child(2){
  color:var(--club-green);
  font-weight:800;
}
.is-ours td.col-pts{font-weight:800;}

body[data-page="clasificacion"] .clas-page-shell{
  padding:var(--density-comfortable-card-padding);
  border-radius:26px;
}

body[data-page="clasificacion"] #clasificacionUpdatedInfo{
  margin-top:var(--appadel-spacing-content-gap);
  padding-inline:var(--appadel-spacing-panel-gap);
  color:var(--appadel-text-primary);
  font-size:.78rem;
  font-weight:650;
  line-height:1.35;
  text-align:left;
}

body[data-page="clasificacion"] #clasificacionWrap{
  overflow:visible;
}

body[data-page="clasificacion"] #clasificacionWrap > .text-muted.p-3{
  padding:18px !important;
  border:1px dashed rgba(var(--club-primary-rgb), .18);
  border-radius:18px;
  background:rgba(var(--club-primary-rgb), .04);
  font-weight:700;
}

body[data-page="clasificacion"] .clas-mobile-list{
  display:grid;
  gap:10px;
}

body[data-page="clasificacion"] .clas-rank-head{
  display:grid;
  grid-template-columns:18px 28px minmax(0, 1fr) 34px 22px 22px 22px;
  align-items:center;
  gap:6px;
  padding:10px 14px;
}

body[data-page="clasificacion"] .clas-rank-head-pos{
  text-align:center;
}

body[data-page="clasificacion"] .clas-rank-head-pts,
body[data-page="clasificacion"] .clas-rank-head-stat{
  justify-self:end;
  white-space:nowrap;
}

body[data-page="clasificacion"] .clas-rank-row{
  display:grid;
  grid-template-columns:18px 28px minmax(0, 1fr) 34px 22px 22px 22px;
  align-items:center;
  gap:4px;
  min-height:38px;
  padding:6px 12px;
  border:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:16px;
  background:rgba(255,255,255,.88);
  box-shadow:var(--shadow-xs);
}

body[data-page="clasificacion"] .clas-rank-row.is-ours{
  background:rgba(255,255,255,.88);
  border-color:rgba(var(--club-primary-rgb), .10);
  box-shadow:var(--shadow-xs);
}

body[data-page="clasificacion"] .clas-rank-row.has-fcp-zone{
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

body[data-page="clasificacion"] .clas-rank-row.has-fcp-zone.is-ours{
  background:var(--appadel-surface-interactive);
  box-shadow:none;
}

body[data-page="clasificacion"] .clas-rank-pos{
  font-size:.92rem;
  font-weight:900;
  text-align:center;
  color:var(--color-text);
}

body[data-page="clasificacion"] .clas-rank-team{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.96rem;
  font-weight:800;
  color:var(--color-text);
}

body[data-page="clasificacion"] .clas-rank-row.is-ours .clas-rank-team{
  color:var(--color-primary);
}

body[data-page="clasificacion"] .clas-rank-row.is-ours .clas-rank-pos,
body[data-page="clasificacion"] .clas-rank-row.is-ours .clas-rank-pts,
body[data-page="clasificacion"] .clas-rank-row.is-ours .clas-rank-stat{
  color:var(--color-primary);
}

body[data-page="clasificacion"] .clas-rank-pts{
  justify-self:end;
  font-size:.86rem;
  font-weight:900;
  color:var(--color-primary);
  white-space:nowrap;
}

body[data-page="clasificacion"] .clas-rank-stat{
  justify-self:end;
  white-space:nowrap;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.01em;
  color:var(--color-muted);
}

body[data-page="clasificacion"] .clas-desktop-table{
    display:none;
  }

body[data-page="clasificacion"] .clas-empty-state{
  justify-items:start;
}

body[data-page="clasificacion"] .clas-fcp-legend,
.home-clas .clas-fcp-legend{
  display:flex;
  flex-wrap:wrap;
  gap:8px 12px;
  align-items:center;
  margin-top:8px;
  padding:8px 10px;
  border:1px solid var(--appadel-border-subtle);
  border-radius:12px;
  background:var(--appadel-surface-secondary);
}

body[data-page="clasificacion"] .clas-fcp-legend-item,
.home-clas .clas-fcp-legend-item{
  display:inline-flex;
  align-items:center;
  min-width:0;
  gap:6px;
  font-size:.78rem;
  font-weight:650;
  color:var(--appadel-text-primary);
}

body[data-page="clasificacion"] .clas-fcp-legend-label,
.home-clas .clas-fcp-legend-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.home-clas .home-clas-legend{
  gap:6px 10px;
  margin-top:10px;
  padding:8px 10px;
  border-radius:10px;
}

.home-clas .home-clas-legend .clas-fcp-legend-item{
  font-size:.72rem;
}

body[data-page="clasificacion"] #clasificacionActions{
  margin-top:8px !important;
  padding-top:8px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
}

body[data-page="clasificacion"] #clasificacionEditorCard{
  border-radius:22px;
}

body[data-page="clasificacion"] .clas-actions-row .btn,
body[data-page="clasificacion"] .clas-buttons .btn{
  min-height:42px;
  border-radius:14px;
  font-weight:800;
}

body[data-page="clasificacion"] .clas-actions-row .btn{
  white-space:nowrap;
}

@media (min-width:769px){
  body[data-page="clasificacion"] .clas-mobile-list{
    display:none;
  }

  body[data-page="clasificacion"] .clas-desktop-table{
    display:block;
  }

  body[data-page="clasificacion"] .clas-desktop-grid,
  body[data-page="clasificacion"] .clas-desktop-rows{
    display:grid;
    gap:6px;
  }

  body[data-page="clasificacion"] .clas-desktop-head,
  body[data-page="clasificacion"] .clas-desktop-row{
    display:grid;
    grid-template-columns:24px 56px minmax(180px, 1fr) repeat(4, 64px);
    align-items:center;
    column-gap:0;
  }

  body[data-page="clasificacion"] .clas-desktop-head{
    min-height:38px;
    padding:10px 14px;
  }

  body[data-page="clasificacion"] .clas-desktop-head > span:not(:nth-child(3)){
    text-align:center;
  }

  body[data-page="clasificacion"] .clas-desktop-row{
    min-height:48px;
    padding:0 14px;
    border:1px solid rgba(var(--club-primary-rgb), .10);
    border-radius:18px;
    background:rgba(255,255,255,.9);
    box-shadow:var(--shadow-xs);
    overflow:hidden;
  }

  body[data-page="clasificacion"] .clas-desktop-cell{
    min-width:0;
    font-size:var(--app-data-desktop-font-size);
    font-weight:var(--app-data-desktop-font-weight);
    line-height:var(--app-data-desktop-line-height);
  }

  body[data-page="clasificacion"] .clas-desktop-pos,
  body[data-page="clasificacion"] .clas-desktop-pts{
    font-weight:900;
    color:var(--color-primary);
  }

  body[data-page="clasificacion"] .clas-desktop-team{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-weight:800;
  }

  body[data-page="clasificacion"] .clas-desktop-pos,
  body[data-page="clasificacion"] .clas-desktop-pts,
  body[data-page="clasificacion"] .clas-desktop-stat{
    text-align:center;
  }

  body[data-page="clasificacion"] .clas-desktop-stat{
    color:var(--color-muted);
  }

  body[data-page="clasificacion"] .clas-desktop-row.is-ours{
    color:var(--color-primary);
    border-color:rgba(var(--club-primary-rgb), .34);
    box-shadow:0 0 0 2px rgba(var(--club-primary-rgb), .10), var(--shadow-xs);
  }

  body[data-page="clasificacion"] .clas-desktop-row.is-ours:not(.has-fcp-zone){
    background:var(--color-primary-ghost);
  }

  body[data-page="clasificacion"] .clas-desktop-row.is-ours .clas-desktop-cell{
    color:var(--color-primary);
  }

  body[data-page="clasificacion"] .clas-desktop-row.has-fcp-zone{
    background:var(--appadel-surface-interactive);
    box-shadow:none;
  }

  body[data-page="clasificacion"] .clas-desktop-row.has-fcp-zone.is-ours{
    box-shadow:none;
  }
}

@media (max-width:768px){
  body[data-page="clasificacion"] .clas-page-shell{
    padding:var(--density-comfortable-card-padding-mobile);
    border-radius:22px;
  }

  body[data-page="clasificacion"] .clas-page-head{
    gap:4px !important;
  }

  body[data-page="clasificacion"] .clas-rank-row{
    grid-template-columns:14px 24px minmax(7rem, 1fr) 30px 24px 28px 28px;
    gap:4px;
    min-height:22px;
    padding:5px 10px;
    border-radius:14px;
  }

  body[data-page="clasificacion"] .clas-rank-head{
    grid-template-columns:14px 24px minmax(7rem, 1fr) 30px 24px 28px 28px;
    gap:4px;
    padding:5px 10px;
  }

  body[data-page="clasificacion"] .clas-rank-pos{
    font-size:.8rem;
  }

  body[data-page="clasificacion"] .clas-rank-team{
    font-size:.88rem;
  }

  body[data-page="clasificacion"] .clas-rank-pts{
    font-size:.76rem;
  }

  body[data-page="clasificacion"] .clas-rank-stat{
    font-size:.68rem;
  }

  body[data-page="clasificacion"] .clas-desktop-table{
    display:none;
  }

  .only-desktop{display:none !important;}

  #logoutBtn{
    margin:0;
    width:52px;
    height:52px;
    min-width:52px;
    min-height:52px;
    border:1px solid var(--color-primary-border-soft);
    border-radius:16px;
    background:#fff;
    color:var(--color-primary);
    box-shadow:0 8px 18px rgba(15, 23, 42, .08);
  }
  #logoutBtn:hover{background:#fff;}
}

body[data-page="estadisticas"] .stats-page-shell{
  padding:var(--density-comfortable-card-padding);
  border-radius:26px;
}

body[data-page="estadisticas"] .stats-page-head{
  align-items:stretch;
  grid-template-columns:minmax(0, 1fr);
  margin-bottom:14px;
}

body[data-page="estadisticas"] .stats-page-head .product-page-context-slot{
  justify-self:stretch;
  width:100%;
}

body[data-page="estadisticas"] .stats-page-head .stats-year-filter{
  align-items:center;
  display:flex;
  gap:var(--appadel-spacing-control-gap);
  justify-self:stretch;
  width:100%;
}

body[data-page="estadisticas"] .stats-year-filter .ds-form-field__label{
  flex:0 0 auto;
}

body[data-page="estadisticas"] .stats-year-filter .product-year-select{
  flex:1 1 auto;
  max-inline-size:none;
  min-inline-size:0;
  width:100%;
}

body[data-page="estadisticas"] .stats-page-loading{
  min-height:var(--appadel-interaction-control-height);
  justify-content:flex-start;
}

body[data-page="estadisticas"] :is(.stats-page-loading,.stats-page-content,#statsPageFeedback)[hidden]{
  display:none;
}

body[data-page="estadisticas"] .stats-page-content{
  display:grid;
  min-width:0;
}

body[data-page="estadisticas"] .stats-tabs{
  display:flex;
  gap:10px;
  margin-bottom:16px;
  flex-wrap:wrap;
}

body[data-page="estadisticas"] .stats-tabs[hidden]{
  display:none;
}

body[data-page="estadisticas"] .stats-tab{
  border:none;
  background:rgba(var(--club-primary-rgb), .08);
  color:var(--text);
  border-radius:999px;
  padding:10px 16px;
  font-weight:700;
  transition:background .2s ease, color .2s ease, transform .2s ease;
}

body[data-page="estadisticas"] .stats-tab:hover,
body[data-page="estadisticas"] .stats-tab:focus{
  background:rgba(var(--club-primary-rgb), .14);
  color:var(--color-primary);
}

body[data-page="estadisticas"] .stats-tab.is-active{
  background:var(--color-primary);
  color:#fff;
  box-shadow:0 10px 22px rgba(var(--club-primary-rgb), .22);
}

body[data-page="estadisticas"] .stats-table-wrap{
  overflow:visible;
}

body[data-page="estadisticas"] .stats-table{
  width:100%;
  table-layout:fixed;
}

body[data-page="estadisticas"] .stats-table.has-header-card thead{
  background:var(--app-data-header-bg);
  outline:1px solid var(--app-data-header-border);
  border-radius:16px;
  overflow:hidden;
}

body[data-page="estadisticas"] .stats-table.has-header-card thead tr{
  background:var(--app-data-header-bg);
  clip-path:inset(0 round 16px);
}

body[data-page="estadisticas"] .stats-table tbody td{
  padding:13px 8px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
  border-bottom:1px solid rgba(var(--club-primary-rgb), .10);
  background:rgba(255,255,255,.9);
  vertical-align:middle;
}

body[data-page="estadisticas"] .stats-table tbody td:first-child{
  border-left:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:18px 0 0 18px;
}

body[data-page="estadisticas"] .stats-table tbody td:last-child{
  border-right:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:0 18px 18px 0;
}

body[data-page="estadisticas"] .stats-table tbody tr + tr td{
  border-top-width:1px;
}

body[data-page="estadisticas"] .stats-table tbody tr:nth-child(odd) td{
  background:rgba(255,255,255,.94);
}

body[data-page="estadisticas"] .stats-table tbody tr.is-current-user{
  background:var(--color-primary-ghost);
  clip-path:inset(0 round 18px);
}

body[data-page="estadisticas"] .stats-table tbody tr.is-current-user td{
  background:transparent;
  border-color:rgba(var(--club-primary-rgb), .20);
}

body[data-page="estadisticas"] .stats-table tbody tr:nth-child(-n+3) td:first-child{
  color:var(--color-primary);
}

body[data-page="estadisticas"] .stats-table tbody tr.is-current-user td:first-child{
  color:var(--color-primary);
  font-weight:800;
}

body[data-page="estadisticas"] .stats-table tbody td:nth-child(1){
  width:auto;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="estadisticas"] .stats-table tbody td:nth-child(n+2),
body[data-page="estadisticas"] .stats-table thead th:nth-child(n+2){
  text-align:center;
}

body[data-page="estadisticas"] .stats-table thead th:first-child,
body[data-page="estadisticas"] .stats-table tbody td:first-child{
  padding-left:12px;
}

body[data-page="estadisticas"] .stats-table thead th:nth-child(n+2),
body[data-page="estadisticas"] .stats-table tbody td:nth-child(n+2){
  padding-left:6px;
  padding-right:6px;
}

body[data-page="estadisticas"] .stats-table.has-header-card thead th{
  padding-top:10px;
  padding-bottom:10px;
  background:transparent;
  border-color:transparent;
  box-shadow:none;
}

body[data-page="estadisticas"] .stats-table tbody .text-muted.p-3,
body[data-page="estadisticas"] .stats-table tbody .text-danger.p-3{
  padding:18px !important;
  border:1px dashed rgba(var(--club-primary-rgb), .18);
  border-radius:18px;
  background:rgba(var(--club-primary-rgb), .04);
  font-weight:700;
}

body[data-page="estadisticas"] #statsAvailabilityPanel .stats-availability-legend{
  margin-top:2px;
  margin-bottom:10px;
}

body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table thead th:first-child,
body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table tbody td:first-child{
  padding-right:4px;
}

body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table thead th:nth-child(n+2),
body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table tbody td:nth-child(n+2){
  padding-left:4px;
  padding-right:4px;
}

@media (min-width:769px){
  body[data-page="estadisticas"] .stats-table{
    border-collapse:separate;
    border-spacing:0 10px;
  }

  body[data-page="estadisticas"] .stats-table thead th:nth-child(1){
    width:auto;
  }

  body[data-page="estadisticas"] .stats-table thead th:nth-child(n+2){
    width:60px;
  }

  body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table thead th:nth-child(n+2){
    width:52px;
  }
}

@media (max-width:768px){
  body[data-page="estadisticas"] .stats-page-shell{
    padding:var(--density-comfortable-card-padding-mobile);
    border-radius:22px;
  }

  body[data-page="estadisticas"] .stats-tabs{
    gap:8px;
  }

  body[data-page="estadisticas"] .stats-tab{
    flex:1 1 calc(50% - 4px);
    text-align:center;
    padding:11px 12px;
  }

  body[data-page="estadisticas"] .stats-table{
    border-collapse:separate;
    border-spacing:0 10px;
    table-layout:fixed;
    width:100%;
  }

  body[data-page="estadisticas"] .stats-table thead th:nth-child(1){
    width:auto;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  body[data-page="estadisticas"] .stats-table thead th:nth-child(n+2){
    width:34px;
  }

  body[data-page="estadisticas"] #statsAvailabilityPanel .stats-availability-legend{
    margin-bottom:8px;
    line-height:1.35;
  }

  body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table thead th:nth-child(n+2){
    width:31px;
  }

  body[data-page="estadisticas"] .stats-table tbody td{
    padding:9px 3px;
    border-top:1px solid rgba(var(--club-primary-rgb), .10);
    border-bottom:1px solid rgba(var(--club-primary-rgb), .10);
  }

  body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table tbody td:nth-child(n+2),
  body[data-page="estadisticas"] #statsAvailabilityPanel .stats-table thead th:nth-child(n+2){
    padding-left:2px;
    padding-right:2px;
  }

  body[data-page="estadisticas"] .stats-table tbody td:first-child{
    padding-left:8px;
  }

  body[data-page="estadisticas"] .stats-table tbody td:last-child{
    padding-right:8px;
  }

  body[data-page="estadisticas"] .stats-table tbody tr.is-current-user{
    clip-path:inset(0 round 16px);
  }
}

.login-body{
  min-height:100vh;
  background:
    radial-gradient(1200px 600px at 20% -10%, rgba(255,212,0,.08), transparent 55%),
    radial-gradient(900px 500px at 120% 10%, rgba(255,212,0,.05), transparent 55%),
    var(--appadel-surface-background);
  display:flex;
  align-items:center;
  justify-content:center;
}
.login-shell{
  width:100%;
  max-width:520px;
  padding:18px;
}
.login-card{
  width:100%;
  box-shadow:var(--shadow-soft);
  padding:18px;
}
.login-head{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:2px;
  margin-bottom:18px;
}
.login-logo{
  width:132px;
  height:132px;
  object-fit:contain;
}
.login-titles{
  line-height:1.15;
  text-align:center;
}
.login-title{font-weight:900;font-size:1.25rem;}
.login-subtitle{
  color:var(--color-muted);
  font-weight:800;
  font-size:.95rem;
  margin-top:2px;
}
.login-msg{
  min-height:20px;
  margin:6px 0 10px 0;
  font-weight:800;
  color:var(--lose);
}
.login-msg:empty{display:none;}
.login-form{display:grid;gap:8px;}

.activation-card{width:min(100%,620px);}
.activation-brand-header{display:flex;flex-direction:column;align-items:center;width:100%;gap:4px;text-align:center;}
.activation-brand-header .login-logo{order:1;width:clamp(82px,22vw,108px);height:auto;object-fit:contain;}
.activation-copy{display:contents;}
.activation-brand-header .login-title{order:2;margin-top:2px;}
.activation-brand-header .login-subtitle{order:3;margin:0;}
.activation-mascot-frame{order:4;display:grid;place-items:center;width:clamp(52px,14vw,68px);aspect-ratio:1;overflow:hidden;border-radius:12px;background:#fff;margin-top:5px;}
.activation-mascot-frame[hidden]{display:none;}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-copy{position:relative;order:2;display:grid;gap:6px;width:min(100%,280px);margin:3px auto 10px;padding:13px 18px 15px;border:2px solid #fff;border-radius:20px;background:var(--appadel-surface-elevated,#20242a);}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-copy::before{content:"";position:absolute;left:50%;bottom:-15px;transform:translateX(-50%);border-left:15px solid transparent;border-right:15px solid transparent;border-top:15px solid #fff;}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-copy::after{content:"";position:absolute;left:50%;bottom:-11px;transform:translateX(-50%);border-left:11px solid transparent;border-right:11px solid transparent;border-top:11px solid var(--appadel-surface-elevated,#20242a);}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-copy .login-title{margin:0;font-size:1.08rem;font-weight:900;}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-copy .login-subtitle{margin:0;color:var(--appadel-text-secondary,#a7adb8);font-size:.9rem;}
.activation-card:is([data-current-step="1"],[data-current-step="5"]) .activation-mascot-frame{order:3;margin-top:1px;}
.activation-mascot{display:block;width:100%;height:100%;object-fit:contain;}
.activation-steps{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--appadel-spacing-inline-tight,6px);padding:0;margin:0 0 12px;list-style:none;font-size:.75rem;text-align:center;color:var(--appadel-text-muted,#a7adb8);}
.activation-steps li{padding:8px 3px;border-bottom:2px solid var(--appadel-product-border,#343943);}
.activation-steps li[aria-current="step"]{color:var(--appadel-brand-primary,#b3ce0c);border-color:var(--appadel-brand-primary,#b3ce0c);}
.activation-form section,.activation-players{display:grid;gap:12px;}
.activation-team{padding:12px;border:1px solid var(--appadel-product-border,#343943);border-radius:var(--appadel-radius-md,10px);}
.activation-players{border:0;padding:0;margin:0;}
.activation-player{display:flex;gap:10px;align-items:center;padding:12px;border:1px solid var(--appadel-product-border,#343943);border-radius:var(--appadel-radius-md,10px);cursor:pointer;}
.activation-actions{display:flex;justify-content:space-between;gap:10px;margin-top:12px;}
.activation-actions .ds-button{flex:1;}
.activation-status:empty{display:none;}
.activation-field-label,.login-body:not(.activation-body) .login-label{font-size:1rem;color:var(--appadel-text-primary,#fff);}
.activation-body .activation-field-label{margin:0 0 6px;color:var(--appadel-text-primary,#fff) !important;font-size:1rem;font-weight:800;}
.activation-card [data-activation-step="1"] .ds-form-field{margin-bottom:10px;}
.activation-peek[hidden]{display:none;}
.activation-ready-step:not([hidden]){display:grid;gap:18px;}
.activation-summary{display:grid;gap:13px;margin:5px 0 0;}
.activation-summary div{display:grid;gap:3px;}
.activation-summary__teams{margin-top:5px;}
.activation-summary dt{color:var(--appadel-text-muted,#a7adb8);}
.activation-summary dd{margin:0;}
.activation-summary ul{margin:0;padding-left:20px;overflow-x:hidden;overflow-wrap:anywhere;}
.activation-summary ul.is-scrollable{max-height:8.5rem;overflow-y:auto;padding-right:7px;scrollbar-width:thin;scrollbar-color:var(--appadel-text-muted,#a7adb8) transparent;overscroll-behavior:contain;}
.activation-ready-step #activationEnter{width:100%;max-width:100%;box-sizing:border-box;margin-top:7px;justify-content:center;text-align:center;}
.login-first-access{display:grid;width:100%;margin-top:18px;padding-top:16px;border-top:1px solid var(--appadel-product-border,#343943);}
.login-first-access .ds-button{width:100%;max-width:100%;box-sizing:border-box;justify-content:center;text-align:center;}
@media (max-width:600px){
  .activation-body .login-shell{padding-inline:12px;}
  .activation-body .activation-card{padding-inline:clamp(20px,6vw,28px);}
  .activation-body :is(.activation-steps,.login-form){width:min(100%,300px);margin-inline:auto;}
  .activation-body [data-activation-step] > h2{text-align:center;}
}
.login-label{
  font-size:.85rem;
  color:var(--muted);
  font-weight:800;
  margin-top:6px;
}
.login-passwrap{position:relative;}
.login-peek{
  position:absolute;
  right:8px;
  top:50%;
  transform:translateY(-50%);
  border:0;
  background:transparent;
  padding:6px 8px;
  border-radius:10px;
  cursor:pointer;
  opacity:.8;
}
.login-peek:hover{opacity:1;background:rgba(0,0,0,.04);}
.login-forgot-link{
  display:inline-flex;
  justify-content:center;
  margin-top:10px;
  color:var(--color-primary);
  font-weight:800;
  text-decoration:none;
}
.login-forgot-link[hidden]{display:none;}
.login-forgot-link:hover{text-decoration:underline;}
.login-forgot-details{
  text-align:center;
}
.login-forgot-details > summary{
  cursor:pointer;
  list-style:none;
}
.login-forgot-details > summary::-webkit-details-marker{display:none;}
.login-forgot-guidance{
  margin-top:10px;
  text-align:left;
}
.login-forgot-guidance .ds-alert__title{
  display:block;
  margin-bottom:6px;
}
.login-foot{
  margin-top:12px;
  font-size:.85rem;
  display:flex;
  justify-content:center;
}
@media (min-width:992px){
  .login-card{padding:22px;}
  .login-logo{width:156px;height:156px;}
  .login-title{font-size:1.35rem;}
}

.sets-row{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.set-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  padding:6px 8px;
  border-radius:12px;
  font-weight:800;
  font-size:.9rem;
  border:1px solid var(--color-border-subtle);
  box-shadow:0 1px 0 var(--color-overlay-dark-soft);
}
.set-pill.set-win{background:var(--win-bg);color:var(--win);}
.set-pill.set-lose{background:var(--lose-bg);color:var(--lose);}
.set-pill.set-neutral{background:var(--color-bg-elevated);color:var(--color-text-placeholder);}

.ol-teamrow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid color-mix(in srgb, var(--color-border-subtle) 85%, var(--color-surface) 15%);
  background:var(--color-surface);
  margin-top:6px;
}
.ol-teamname{font-weight:700;line-height:1.2;}
.ol-teampoints{
  min-width:34px;
  text-align:center;
  font-weight:900;
  font-size:1rem;
  border-radius:999px;
  padding:4px 8px;
  background:var(--color-bg-elevated);
}

#olJornadaCard{
  padding:10px 12px !important;
}
#olJornadaCard .h6{
  font-size:1.05rem;
  margin:0 0 2px 0 !important;
  line-height:1.15;
}
#olJornadaCard .text-muted.small{
  margin:0 !important;
  line-height:1.2;
}
#olJornadaCard .mb-1{ margin-bottom:4px !important; }
#olJornadaCard .ol-teamrow{ margin-top:4px !important; }

.ol-card-head h2{margin:0 !important;line-height:1.15;}
.ol-card-head .text-muted{margin-top:4px;}
.ol-card-head .ol-toggle-btn{margin-top:2px;min-width:92px;}

.match-chip .set-win{
  color:var(--win) !important;
  background:var(--win-bg) !important;
  border-color:var(--color-success-border) !important;
}
.match-chip .set-lose{
  color:var(--lose) !important;
  background:var(--lose-bg) !important;
  border-color:var(--color-danger-border) !important;
}
.match-chip.match-win{
  border-color:var(--color-success-border-strong) !important;
  box-shadow:0 0 0 1px var(--color-success-shadow-inset) inset !important;
}
.match-chip.match-lose{
  border-color:var(--color-danger-border-strong) !important;
  box-shadow:0 0 0 1px var(--color-danger-shadow-inset) inset !important;
}

@media (min-width:992px){
  .carousel-compact .carousel-item img{
    height:auto;
    max-height:420px;
    object-fit:contain;
  }
}

#olChatMessages{
  display:flex;
  flex-direction:column;
  gap:8px;
  padding:8px;
  max-height:350px;
  overflow-y:auto;
}
.chat-row{display:flex;justify-content:flex-start;}
.chat-row.mine{justify-content:flex-end;}
.chat-bubble{
  max-width:75%;
  padding:8px 12px;
  border-radius:16px;
  background:var(--color-neutral-soft);
  font-size:.9rem;
  position:relative;
}
.chat-row.mine .chat-bubble{background:color-mix(in srgb, var(--color-success-soft) 70%, var(--color-surface) 30%);}
.chat-name{font-size:.7rem;font-weight:600;margin-bottom:2px;opacity:.6;}
.chat-text{word-wrap:break-word;}
.chat-time{font-size:.65rem;text-align:right;margin-top:4px;opacity:.5;}

#olCaptainPairs .ol-cap-row{
  display:grid !important;
  grid-template-columns:20px 1fr 1fr;
  gap:8px;
  align-items:center;
}
#olCaptainPairs .ol-cap-row .ol-cap-input{
  width:100% !important;
  max-width:100% !important;
}

@media (max-width:768px){

  .mcal-card .match-chip{
    display:grid !important;
    grid-template-columns:auto minmax(0,1fr) auto;
    align-items:center;
    gap:6px;
    width:100% !important;
    padding:5px 8px !important;
    min-width:0;
  }

  .mcal-card .match-chip .match-n{
    flex:0 0 auto;
    white-space:nowrap;
    font-size:.72rem;
  }

  .mcal-card .match-chip .pair-names{
    display:flex;
    align-items:center;
    gap:4px;
    min-width:0;
    font-weight:500 !important;
    font-size:.84rem;
  }

  .mcal-card .match-chip .pair-player{
    min-width:0;
    flex:1 1 0;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  .mcal-card .match-chip .pair-separator{
    flex:0 0 auto;
  }

  .mcal-card .match-chip .sets{
    display:flex !important;
    justify-content:flex-end;
    align-items:center;
    gap:4px;
    white-space:nowrap;
    min-width:0;
  }

  .mcal-card .match-chip .set{
    font-size:.74rem;
    padding:2px 5px;
  }

  .mcal-card .mobile-results{
    padding-left:0 !important;
    padding-right:0 !important;
  }

  .mcal-card{
    padding:12px 11px;
  }

  .mcal-line1{
    align-items:flex-start;
    gap:8px;
    margin-bottom:10px;
  }

  .mcal-line2{
    gap:12px;
    margin-bottom:8px;
  }

  .mcal-meta{
    font-size:.8rem;
  }

  .mcal-teams{
    font-size:.97rem;
    line-height:1.32;
  }

  .mcal-line2 .score-badge{
    min-width:62px;
    padding:6px 11px;
    font-size:.92rem;
  }

  .mcal-chips{
    gap:6px;
  }
}

.ol-card-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
}

.ol-cap-match{
  padding: .55rem .6rem !important;
  border-radius: 12px;
}

.ol-cap-title{
  font-weight: 800;
  margin-bottom: .15rem;
}

.ol-cap-names{
  font-size: .92rem;
  line-height: 1.15;
  margin-bottom: .35rem;
}

.ol-cap-inputs{
  gap: .35rem !important;
  justify-content: flex-start;
}

.ol-cap-set{
  width: 56px;
  max-width: 56px;
  text-align: center;
  padding: .2rem .35rem;
}

.login-logo {
  width: 132px;
  height: 132px;
  display: block;
  margin: 0 auto;
}

.ol-stepper {
  display:flex;
  align-items:center;
  gap:4px;
}

.ol-stepper input {
  width:40px;
  text-align:center;
  border:1px solid #ddd;
  border-radius:6px;
}

.ol-stepper button {
  width:30px;
  height:30px;
  border:none;
  border-radius:6px;
  background:#0f6b4f;
  color:white;
  font-weight:bold;
}

.ol-stepper button:active {
  transform:scale(.95);
}

.ol-cap-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.ol-cap-left{
  min-width:0;
}
.ol-cap-p{
  font-weight:1000;
  font-size:1.05rem;
  line-height:1.1;
}
.ol-cap-n{
  font-weight:800;
  font-size:.95rem;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:52vw;
}

.ol-set-tabs{
  display:flex;
  gap:8px;
  align-items:flex-start;
  justify-content:flex-end;
  flex-shrink:0;
}
.ol-set-chip{
  width:52px;
  border-radius:999px;
  padding:8px 6px;
}
.ol-set-chip .ol-chip-score{
  display:block;
  font-weight:1000;
  font-size:1.05rem;
  line-height:1.05;
}
.ol-set-chip .ol-chip-num{
  display:block;
  margin-top:2px;
  font-weight:900;
  font-size:.85rem;
  opacity:.75;
  line-height:1;
}

.ol-set-controls{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding-top:6px;
}
.ol-stepper-btns{
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:6px 6px 4px 6px;
  border-radius:14px;
  background:rgba(0,0,0,.02);
  flex:1;
}
.ol-stepper-btns .ol-stepper-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.ol-stepper-btns .ol-step{
  width:44px;
  height:44px;
  border-radius:14px;
  font-size:1.35rem;
}
.ol-stepper-btns .ol-stepper-lab{
  font-weight:900;
  font-size:.85rem;
  opacity:.8;
  line-height:1;
}
.ol-step-val-hidden{
  position:absolute !important;
  width:1px !important;
  height:1px !important;
  padding:0 !important;
  margin:-1px !important;
  overflow:hidden !important;
  clip:rect(0,0,0,0) !important;
  white-space:nowrap !important;
  border:0 !important;
}

#olCaptainPairsActions{
  display:flex;
  gap:.5rem;
  flex-wrap:nowrap;
}
#olCaptainPairsActions > button{
  flex:1 1 0;
  min-width:0;
}

.ol-align-locked-msg{
  font-size:.92rem;
  font-weight:700;
  text-align:center;
  padding:.6rem .6rem;
  border-radius:12px;
  background:rgba(220,53,69,.10);
  color:#842029;
}

body[data-page="online"] .online-page-shell{
  padding:0;
  border-radius:0;
  min-width:0;
  max-width:100%;
  overflow-x:hidden;
}

body[data-page="jornada"] .jornada-page-shell{
  display:grid;
  gap:var(--density-compact-gap);
  padding:0;
  border-radius:0;
}

.captain-page-shell{
  display:grid;
  gap:var(--density-compact-gap);
}

body[data-page="jornada"] #olJornadaCard,
body[data-page="jornada"] #olCaptainResultsCard{
  box-shadow:var(--shadow-sm);
}

body[data-page="jornada"] .jornada-results-head{
  margin-bottom:12px;
}

body[data-page="jornada"] .jornada-results-subtitle{
  max-width:56ch;
}

body[data-page="jornada"] .jornada-actions-stack{
  flex-direction:column;
  max-width:var(--appadel-result-card-max-width, 36rem);
  margin-inline:auto;
  width:100%;
}

body[data-page="jornada"] .jornada-actions-stack > .btn{
  width:100%;
}

body[data-page="alineacion"] .ol-section-kicker{
  font-weight:900;
  font-size:1rem;
  letter-spacing:.02em;
  color:var(--appadel-text-primary);
}

body[data-page="alineacion"] .ol-section-sub{
  color:var(--color-muted);
  font-size:.95rem;
}

body[data-page="alineacion"] .ol-cap-input{
  touch-action:manipulation;
}

body[data-page="alineacion"] .ol-pair-card{
  padding:.55rem .7rem .42rem;
  animation:olFadeUp .22s ease;
}

body[data-page="alineacion"] .ol-pair-card + .ol-pair-card{
  margin-top:.65rem;
}

body[data-page="alineacion"] .ol-pair-head{
  display:grid;
  align-items:center;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:.5rem;
  margin-bottom:.06rem;
}

body[data-page="alineacion"] .ol-pair-badge{
  grid-column:1;
  justify-self:start;
  min-width:76px;
  font-weight:900;
  font-size:.8rem;
  flex:0 0 auto;
  text-align:left;
}

body[data-page="alineacion"] .ol-pair-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:.55rem;
}

body[data-page="alineacion"] .ol-pair-meta{
  display:flex;
  flex-wrap:wrap;
  gap:.35rem;
  margin-bottom:0;
  justify-content:flex-end;
  flex:1 1 auto;
  min-width:0;
  grid-column:2;
  justify-self:end;
}

body[data-page="alineacion"] .ol-pair-note-wrap{
  margin-top:.55rem;
}

body[data-page="alineacion"] .ol-pair-note-wrap:empty{
  display:none;
  margin-top:0;
}

body[data-page="alineacion"] .ol-pair-note{margin-top:.45rem;}

body[data-page="alineacion"] .ol-convocatoria-head{
  margin-bottom:0;
}

body[data-page="alineacion"] .ol-page-title{
  font-size:var(--data-page-title-size);
  font-weight:900;
  line-height:1.1;
  color:var(--appadel-brand-primary);
}

body[data-page="alineacion"] .ol-page-subtitle,
body[data-page="alineacion"] .ol-lineup-hint,
body[data-page="alineacion"] .ol-availability-summary{
  color:var(--color-muted);
  font-size:.84rem;
  font-weight:700;
  line-height:1.32;
}

body[data-page="alineacion"] .ol-lineup-hint.is-warning{
  color:var(--color-warning);
}

body[data-page="alineacion"] .ol-flow-progress{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:.28rem;
  flex-wrap:nowrap;
  white-space:nowrap;
  overflow:hidden;
  width:100%;
  margin:.25rem 0 .7rem;
}

body[data-page="alineacion"] #olCaptainPairsCard .ol-flow-progress{
  display:none;
}

body[data-page="alineacion"] .ol-flow-step{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  padding:.22rem .42rem;
  border:1px solid var(--color-border);
  border-radius:999px;
  background:var(--color-surface);
  color:var(--color-muted);
  flex:0 1 auto;
  box-shadow:var(--shadow-xs);
}

body[data-page="alineacion"] .ol-flow-step.is-active{
  color:var(--color-primary);
  background:var(--color-primary-ghost);
  border-color:var(--color-primary-border-soft);
}

body[data-page="alineacion"] .ol-flow-step.is-complete{
  color:var(--color-success);
  background:var(--win-bg);
  border-color:var(--color-success-border);
}

body[data-page="alineacion"] .ol-flow-step__label{
  display:block;
  font-size:.84rem;
  font-weight:900;
  line-height:1.1;
  white-space:nowrap;
  min-width:0;
}

body[data-page="alineacion"] .ol-flow-arrow{
  color:var(--color-muted);
  font-size:.78rem;
  font-weight:900;
  flex:0 0 auto;
}


body[data-page="alineacion"] #olCaptainPairsCard{
  display:flex !important;
  flex-direction:column;
  gap:var(--appadel-spacing-content-gap);
}

body[data-page="alineacion"] .ol-availability-card,
body[data-page="alineacion"] .ol-lineup-card,
body[data-page="alineacion"] .ol-convocatoria-card{
  padding:.82rem .82rem .78rem;
  border:1px solid var(--color-border);
  border-radius:14px;
  background:var(--card-secondary-bg, var(--color-surface));
}

body[data-page="alineacion"] .ol-lineup-card{
  background:var(--card-primary-bg, var(--color-surface));
}

body[data-page="alineacion"] .ol-lineup-actions{
  display:flex;
  flex-direction:row;
  gap:.5rem;
}

body[data-page="alineacion"] .ol-lineup-actions > .btn{
  flex:1 1 0;
  min-width:0;
  width:100%;
}

body[data-page="alineacion"] .ol-availability-card{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  grid-template-areas:
    "title"
    "whatsapp"
    "divider"
    "manage"
    "save";
  align-items:start;
  row-gap:.55rem;
}

body[data-page="alineacion"] .ol-availability-card > .app-section-stack{
  grid-area:title;
  margin-bottom:0 !important;
}

body[data-page="alineacion"] .ol-availability-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
}

body[data-page="alineacion"] .ol-availability-toggle-link{
  padding-inline:var(--appadel-spacing-content-gap);
  border:1px solid var(--appadel-brand-primary);
  background:var(--appadel-surface-secondary);
  color:var(--appadel-brand-primary);
  font-size:.78rem;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}

body[data-page="alineacion"] .ol-availability-toggle-link:hover,
body[data-page="alineacion"] .ol-availability-toggle-link:focus{
  color:var(--appadel-brand-primary-hover);
  background:var(--appadel-interaction-hover);
  border-color:var(--appadel-brand-primary-hover);
  text-decoration:none;
}

body[data-page="alineacion"] .ol-availability-content{
  display:contents;
}

body[data-page="alineacion"] .ol-availability-whatsapp{
  grid-area:whatsapp;
  gap:.55rem;
}

body[data-page="alineacion"] .ol-availability-whatsapp > .btn{
  flex:1 1 0;
  min-width:0;
}

body[data-page="alineacion"] .ol-availability-divider{
  display:none;
}

body[data-page="alineacion"] .ol-availability-manage{
  grid-area:manage;
  display:grid;
  gap:.72rem;
  margin-top:1rem;
  padding:.78rem .82rem;
  border:1px solid var(--color-border);
  border-radius:14px;
  background:var(--color-surface-overlay-soft);
  box-shadow:var(--shadow-xs);
}

body[data-page="alineacion"] .ol-availability-list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:6px;
}

body[data-page="alineacion"] .ol-availability-tools{
  display:flex;
  align-items:center;
  gap:.3rem;
  white-space:nowrap;
  justify-self:start;
  min-width:0;
  flex-wrap:nowrap;
}

body[data-page="alineacion"] .ol-inline-action{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:var(--appadel-interaction-control-height-compact);
  padding-inline:var(--appadel-spacing-content-gap);
  border:1px solid var(--appadel-brand-primary);
  border-radius:var(--appadel-radius-control);
  background:var(--appadel-surface-secondary);
  color:var(--appadel-brand-primary);
  font-size:.74rem;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
  transition:
    background-color var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    color var(--motion-fast) var(--ease-standard),
    transform var(--motion-fast) var(--ease-standard);
}

body[data-page="alineacion"] .ol-inline-action:disabled{
  opacity:.45;
  cursor:default;
}

body[data-page="alineacion"] .ol-inline-action:hover,
body[data-page="alineacion"] .ol-inline-action:focus{
  color:var(--appadel-brand-primary-hover);
  background:var(--appadel-interaction-hover);
  border-color:var(--appadel-brand-primary-hover);
}

body[data-page="alineacion"] .ol-inline-action:active{
  transform:translateY(1px);
}

body[data-page="alineacion"] .ol-inline-sep{
  color:var(--color-muted);
  font-size:.74rem;
  font-weight:800;
}

body[data-page="alineacion"] .ol-availability-count{
  color:var(--color-muted);
  font-size:.76rem;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
  min-width:0;
}

body[data-page="alineacion"] .ol-availability-save{
  margin-top:.08rem;
}

body[data-page="alineacion"] .ol-availability-save > .btn{
  width:100%;
}

body[data-page="alineacion"] .ol-availability-row{
  display:flex;
  align-items:center;
  min-width:0;
}

body[data-page="alineacion"] .ol-availability-row--toggle{
  width:100%;
  min-height:36px;
  padding:.4rem .52rem;
  border:1px solid var(--color-border);
  border-radius:10px;
  background:var(--color-surface-overlay-soft);
  color:var(--color-muted);
  text-align:center;
  cursor:pointer;
  transition:
    background-color var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    transform var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard);
}

body[data-page="alineacion"] .ol-availability-row.is-readonly{
  opacity:.82;
}

body[data-page="alineacion"] .ol-availability-row__main{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  min-width:0;
}

body[data-page="alineacion"] .ol-availability-row__icon{
  flex:0 0 auto;
  font-size:.86rem;
  font-weight:900;
  line-height:1;
}

body[data-page="alineacion"] .ol-availability-row--toggle[data-state="available"],
body[data-page="alineacion"] .availability-player-chip.is-available{
  border-color:var(--color-primary-border-soft);
  background:var(--color-primary-ghost);
  color:var(--color-primary-dark);
  box-shadow:var(--shadow-xs);
}

body[data-page="alineacion"] .ol-availability-row--toggle[data-state="unavailable"]{
  border-color:var(--color-border);
  background:var(--color-surface-overlay-soft);
  color:var(--color-muted);
}

body[data-page="alineacion"] .ol-availability-row--toggle:hover,
body[data-page="alineacion"] .ol-availability-row--toggle:focus{
  border-color:var(--color-primary);
  box-shadow:var(--shadow-xs);
}

body[data-page="alineacion"] .ol-availability-row--toggle:active{
  transform:translateY(1px);
}

body[data-page="alineacion"] .ol-availability-row--toggle:disabled{
  opacity:.55;
  cursor:default;
  box-shadow:none;
}

body[data-page="alineacion"] .ol-avail-placeholder{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  min-width:22px;
  color:var(--color-muted);
  opacity:.55;
  font-size:.72rem;
  font-weight:900;
  line-height:1;
  flex:0 0 auto;
}

body[data-page="alineacion"] .ol-availability-name{
  font-size:.86rem;
  font-weight:800;
  line-height:1.2;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  flex:1 1 auto;
}

body[data-page="alineacion"] .ol-availability-row--toggle[data-state="unavailable"] .ol-availability-name{
  font-weight:700;
}

body[data-page="alineacion"] .ol-availability-empty{
  padding:.35rem .2rem;
}

@media (max-width: 768px){
  body[data-page="alineacion"] .ol-availability-card,
  body[data-page="alineacion"] .ol-lineup-card,
  body[data-page="alineacion"] .ol-convocatoria-card{
    padding:.68rem .68rem .64rem;
  }

  body[data-page="alineacion"] .ol-availability-card{
    row-gap:.8rem;
  }

  body[data-page="alineacion"] .ol-availability-manage{
    gap:.58rem;
    margin-top:.8rem;
    padding:.7rem .72rem;
  }

  body[data-page="alineacion"] .ol-flow-progress{
    gap:.16rem;
    margin:.2rem 0 .6rem;
  }

  body[data-page="alineacion"] .ol-flow-step{
    padding:.2rem .28rem;
  }

  body[data-page="alineacion"] .ol-flow-step__label{
    font-size:.68rem;
    letter-spacing:-.02em;
  }

  body[data-page="alineacion"] .ol-flow-arrow{
    font-size:.58rem;
  }

  body[data-page="alineacion"] .ol-availability-tools{
    gap:.22rem;
    flex-wrap:wrap;
  }

  body[data-page="alineacion"] .ol-availability-whatsapp{
    gap:.45rem;
    margin-top:.9rem;
  }

  body[data-page="alineacion"] .ol-availability-row{
    min-width:0;
  }

  body[data-page="alineacion"] .ol-availability-row--toggle{
    min-height:34px;
    padding:.36rem .44rem;
  }

  body[data-page="alineacion"] .ol-availability-name{
    font-size:.78rem;
  }

  body[data-page="alineacion"] .ol-availability-row__icon{
    font-size:.8rem;
  }

  body[data-page="alineacion"] .ol-inline-action,
  body[data-page="alineacion"] .ol-inline-sep,
  body[data-page="alineacion"] .ol-availability-count{
    font-size:.7rem;
  }
}

body[data-page="alineacion"] .ol-validation-card{
  margin-top:.9rem;
  margin-bottom:.25rem;
  padding:.78rem .88rem;
  border-radius:14px;
  border:1px solid var(--color-border);
  background:var(--card-primary-bg);
}

body[data-page="alineacion"] .ol-field-wrap{
  display:flex;
  flex-direction:column;
  gap:.32rem;
  min-width:0;
}

body[data-page="alineacion"] .ol-field-label{
  font-size:.8rem;
  font-weight:800;
  color:var(--appadel-text-primary);
  opacity:1;
  padding-left:.05rem;
  line-height:1.1;
  letter-spacing:.02em;
  text-align:center;
}

body[data-page="alineacion"] .ol-player-slot{
  display:grid;
}

body[data-page="alineacion"] .ol-slot-editable-control[hidden],
body[data-page="alineacion"] .ol-slot-readonly[hidden]{
  display:none !important;
}

body[data-page="alineacion"] .ol-slot-readonly{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.75rem;
  color:transparent;
}

body[data-page="alineacion"] .ol-slot-readonly.is-filled{
  color:inherit;
}

body[data-page="alineacion"] .ol-cap-input{
  min-height:38px;
  height:38px;
  border-radius:10px;
  font-size:.9rem;
  padding:.35rem .65rem;
  border-width:1px;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, color .18s ease;
}

body[data-page="alineacion"] .ol-cap-input:focus{
  border-color:var(--color-primary-border-mid);
  box-shadow:0 0 0 .18rem rgba(var(--club-primary-rgb), .12);
}

body[data-page="alineacion"] .ol-cap-input.tier-top{
  color:var(--color-primary);
  font-weight:800;
  background:var(--color-primary-ghost);
  border-color:var(--color-primary-border-soft);
}

body[data-page="alineacion"] .ol-cap-input.tier-mid{
  color:var(--color-primary-dark);
  font-weight:800;
  background:var(--color-primary-ghost);
  border-color:var(--color-primary-border-soft);
}

body[data-page="alineacion"] .ol-cap-input.tier-low{
  color:var(--color-text);
  font-weight:800;
  background:var(--color-bg-elevated);
  border-color:var(--color-border-strong);
}

body[data-page="alineacion"] .ol-cap-input.is-invalid-pick{
  color:var(--color-danger);
  background:var(--color-danger-soft);
  border-color:rgba(180,35,24,.35);
  box-shadow:0 0 0 .16rem rgba(180,35,24,.08);
}

body[data-page="alineacion"] .ol-pair-card-reordered{
  position:relative;
  animation:olPairReordered .5s cubic-bezier(.22,.8,.22,1);
  box-shadow:
    0 0 0 2px rgba(var(--club-primary-rgb), .24),
    0 14px 28px rgba(var(--club-primary-rgb), .18);
}

body[data-page="alineacion"] .ol-pair-card,
body[data-page="jornada"] .ol-cap-match,
body[data-page="online"] .ol-online-match,
body[data-page="cambiar-fecha"] .cf-card-main{
  transition:
    transform var(--motion-base) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard),
    opacity var(--motion-fast) var(--ease-standard);
}

body[data-page="alineacion"] .ol-pair-card:active,
body[data-page="jornada"] .ol-act-btn:active,
body[data-page="online"] #btnRefresh:active,
body[data-page="online"] #olChatSend:active{
  transform:scale(.98);
}

body[data-page="alineacion"] .ol-pair-card-reordered::after{
  content:"Reordenada";
  position:absolute;
  top:10px;
  right:12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 9px;
  border-radius:999px;
  background:linear-gradient(135deg, var(--club-primary-strong) 0%, var(--club-primary) 100%);
  color:#fff;
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.02em;
  box-shadow:0 8px 18px rgba(var(--club-primary-rgb), .28);
  animation:olPairReorderedBadge .9s ease-out;
}

@keyframes olPairReordered{
  0%{
    transform:translateY(-8px) scale(1.01);
    box-shadow:0 0 0 0 rgba(var(--club-primary-rgb), 0);
  }
  40%{
    transform:translateY(0) scale(1.015);
    box-shadow:
      0 0 0 3px rgba(var(--club-primary-rgb), .28),
      0 18px 34px rgba(var(--club-primary-rgb), .22);
  }
  100%{
    transform:translateY(0) scale(1);
    box-shadow:
      0 0 0 2px rgba(var(--club-primary-rgb), .24),
      0 14px 28px rgba(var(--club-primary-rgb), .18);
  }
}

@keyframes olPairReorderedBadge{
  0%{
    opacity:0;
    transform:translateY(-6px) scale(.92);
  }
  30%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
  75%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
  100%{
    opacity:0;
    transform:translateY(0);
    transform:translateY(-2px) scale(.98);
  }
}

@keyframes olFadeUp{
  from{opacity:0;transform:translateY(6px);}
  to{opacity:1;transform:translateY(0);}
}

body[data-page="jornada"] .ol-btn-main,
body[data-page="jornada"] .ol-btn-secondary,
body[data-page="jornada"] #olCaptainSaveSets,
body[data-page="jornada"] .btn.btn-club-inverse{
  width:100%;
  min-height:40px;
  font-weight:700;
  border-radius:12px;
  font-size:.95rem;
  padding:.42rem .72rem;
}

body[data-page="jornada"] .ol-btn-main,
body[data-page="jornada"] .ol-btn-secondary,
body[data-page="jornada"] #olCaptainSaveSets,
body[data-page="jornada"] .btn.btn-club-inverse,
body[data-page="jornada"] .ol-act-btn,
body[data-page="jornada"] .ol-wa-mini,
body[data-page="jornada"] #olCaptainFinalizeBottom,
body[data-page="jornada"] .ol-set-input{
  touch-action:manipulation;
}

body[data-page="jornada"] .ol-results-loading{
  display:flex;
  flex-direction:column;
  gap:.85rem;
}

body[data-page="jornada"] .ol-results-skel-card{
  border:1px solid var(--color-border);
  border-radius:18px;
  padding:.85rem;
  background:rgba(255,255,255,.6);
}

body[data-page="jornada"] .ol-results-skel-top,
body[data-page="jornada"] .ol-results-skel-left,
body[data-page="jornada"] .ol-results-skel-right,
body[data-page="jornada"] .ol-results-skel-pill,
body[data-page="jornada"] .ol-results-skel-wa,
body[data-page="jornada"] .ol-results-skel-set,
body[data-page="jornada"] .ol-results-skel-action{
  background:linear-gradient(90deg, rgba(0,0,0,.06) 25%, rgba(0,0,0,.12) 37%, rgba(0,0,0,.06) 63%);
  background-size:400% 100%;
  animation:olSkel 1.4s ease infinite;
}

body[data-page="jornada"] .ol-results-skel-top{
  width:180px;
  height:18px;
  border-radius:999px;
  margin-bottom:.75rem;
}

body[data-page="jornada"] .ol-results-skel-body{
  display:grid;
  grid-template-columns:1fr 110px;
  gap:.75rem;
}

body[data-page="jornada"] .ol-results-skel-left,
body[data-page="jornada"] .ol-results-skel-right{
  border-radius:14px;
  min-height:74px;
}

body[data-page="jornada"] .ol-results-skel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.45rem;
  margin-bottom:.3rem;
}

body[data-page="jornada"] .ol-results-skel-pill{
  height:26px;
  flex:1 1 auto;
  border-radius:999px;
}

body[data-page="jornada"] .ol-results-skel-wa{
  width:20px;
  height:20px;
  border-radius:999px;
  flex:0 0 20px;
}

body[data-page="jornada"] .ol-results-skel-match{
  border:1px solid var(--color-border);
  border-radius:18px;
  padding:.65rem .7rem;
  background:rgba(255,255,255,.6);
}

body[data-page="jornada"] .ol-results-skel-board{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  gap:.28rem;
  align-items:stretch;
}

body[data-page="jornada"] .ol-results-skel-sets{
  display:grid;
  grid-template-columns:repeat(3, 32px);
  gap:.08rem;
}

body[data-page="jornada"] .ol-results-skel-set{
  height:68px;
  border-radius:8px;
}

body[data-page="jornada"] .ol-results-skel-actions{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:.08rem;
}

body[data-page="jornada"] .ol-results-skel-action{
  height:68px;
  border-radius:8px;
}

@keyframes olSkel{
  0%{background-position:100% 50%;}
  100%{background-position:0 50%;}
}

body[data-page="jornada"] .ol-cap-match{
  display:flex;
  flex-direction:column;
  padding:.58rem .64rem !important;
  border-radius:14px;
  border:1px solid var(--color-border);
  background:var(--card-primary-bg);
  box-shadow:var(--shadow-xs);
  animation:olFadeUp .22s ease;
  overflow:hidden;
}

body[data-page="alineacion"] #olCaptainPairsCard,
body[data-page="jornada"] #olCaptainResultsCard,
body[data-page="online"] #olResultadosOnlineCard:not(.app-matchday-results-canonical),
body[data-page="cambiar-fecha"] .cf-card-main{
  border-radius:18px;
}

body[data-page="alineacion"] #olCaptainPairsCard,
body[data-page="jornada"] #olCaptainResultsCard{
  padding:var(--density-compact-card-padding) !important;
}

body[data-page="online"] #olResultadosOnlineCard:not(.app-matchday-results-canonical){
  padding:var(--density-compact-card-padding) var(--density-compact-card-padding) .76rem !important;
}

body[data-page="jornada"] .ol-cap-match + .ol-cap-match{
  margin-top:.12rem;
}

@keyframes olFadeUp{
  from{opacity:0;transform:translateY(6px);}
  to{opacity:1;transform:translateY(0);}
}

body[data-page="jornada"] .ol-cap-head{
  display:block;
  position:static;
  z-index:auto;
  margin:0 0 .4rem;
  padding:0;
  background:none;
  border-bottom:0;
}

body[data-page="jornada"] .ol-cap-title{
  display:flex;
  align-items:center;
  gap:.32rem;
  min-width:0;
  width:100%;
}

body[data-page="jornada"] .ol-cap-pill{
  display:flex;
  align-items:center;
  gap:.32rem;
  min-width:0;
  flex:1;
  background:var(--color-primary-ghost);
  color:var(--color-primary);
  border-radius:999px;
  padding:.12rem .42rem;
  min-height:25px;
}

body[data-page="jornada"] .ol-cap-pill-p{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  font-weight:900;
  font-size:.78rem;
  flex-shrink:0;
}

body[data-page="jornada"] .ol-cap-pill-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:900;
  font-size:.84rem;
  line-height:1.1;
  color:var(--color-text);
  flex:1;
}

body[data-page="jornada"] .ol-wa-mini{
  border:0;
  background:transparent;
  padding:0;
  color:var(--color-whatsapp);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  flex:0 0 32px;
}

body[data-page="jornada"] .ol-wa-mini:active{transform:scale(.96);}
body[data-page="jornada"] .ol-wa-mini svg{width:24px;height:24px;display:block;}

body[data-page="jornada"] .ol-cap-body{
  display:grid;
  grid-template-columns:max-content minmax(0,1fr);
  flex:1 1 auto;
  gap:.22rem;
  align-items:end;
  padding:0;
}

body[data-page="jornada"] .ol-cap-sets,
body[data-page="jornada"] .ol-cap-act,
body[data-page="jornada"] .ol-block,
body[data-page="jornada"] .ol-block-sets,
body[data-page="jornada"] .ol-block-act{
  display:block;
  min-width:0;
  width:100%;
  padding:0;
  border:0;
  background:transparent;
  min-height:auto;
}

body[data-page="jornada"] .ol-cap-sets,
body[data-page="jornada"] .ol-block-sets{
  width:max-content;
}

body[data-page="jornada"] .ol-cap-act,
body[data-page="jornada"] .ol-block-act{
  height:100%;
}

body[data-page="jornada"] .ol-set-tabs{
  display:grid;
  grid-template-columns:repeat(3, 32px);
  gap:.08rem;
  justify-content:flex-start;
  width:max-content;
  margin:0;
}

body[data-page="jornada"] .ol-set-chip{
  width:32px;
  min-height:74px;
  padding:.16rem .06rem;
  border-radius:8px;
  border:1px solid var(--color-border-strong);
  background:var(--color-surface);
  display:grid;
  grid-template-columns:1fr;
  grid-template-rows:auto 1fr 1fr;
  align-items:center;
  column-gap:0;
  row-gap:.12rem;
  justify-items:center;
  text-align:center;
  transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), background var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);
}

body[data-page="jornada"] .ol-chip-num{
  margin:0;
  grid-column:1 / -1;
  font-weight:900;
  font-size:.54rem;
  letter-spacing:.04em;
  line-height:1;
  opacity:.78;
}

body[data-page="jornada"] .ol-chip-score,
body[data-page="jornada"] .ol-set-result{
  display:none;
}

body[data-page="jornada"] .ol-set-chip.active{
  transform:none;
  height:auto;
  border-width:2px;
  border-color:var(--color-primary);
  background:linear-gradient(180deg, var(--color-primary), var(--color-primary-dark));
  box-shadow:0 0 0 2px rgba(var(--club-primary-rgb), .18);
}

body[data-page="jornada"] .ol-set-chip.active .ol-chip-num{
  color:var(--color-text-inverse);
  opacity:1;
}

body[data-page="jornada"] .ol-set-chip.active .ol-set-input{
  border-color:rgba(255,255,255,.35);
  background:rgba(255,255,255,.98);
  color:var(--color-text);
}

body[data-page="jornada"] .ol-set-dash{
  display:none;
}

body[data-page="jornada"] .ol-set-input{
  width:100%;
  min-height:22px;
  height:22px;
  max-width:24px;
  border-radius:6px;
  border:1px solid var(--color-border);
  background:var(--color-surface);
  font-size:16px;
  font-weight:900;
  text-align:center;
  padding:.18rem;
  appearance:textfield;
  transition:border-color var(--motion-fast) var(--ease-standard), box-shadow var(--motion-fast) var(--ease-standard), background-color var(--motion-fast) var(--ease-standard);
}

body[data-page="jornada"] .ol-set-input:focus{
  outline:none;
  border-color:var(--color-primary-border-mid);
  box-shadow:0 0 0 .18rem rgba(var(--club-primary-rgb), .12);
}

body[data-page="jornada"] .ol-set-chip.won{
  background:var(--color-success-soft);
  border-color:var(--color-success-border-emphasis);
}

body[data-page="jornada"] .ol-set-chip.won .ol-set-result{color:var(--color-success);}

body[data-page="jornada"] .ol-set-chip.lost{
  background:var(--color-danger-soft);
  border-color:var(--color-danger-border-emphasis);
}

body[data-page="jornada"] .ol-set-chip.lost .ol-set-result{color:var(--color-danger);}

body[data-page="jornada"] .ol-set-chip.inprog{
  background:var(--color-info-soft);
  border-color:var(--color-info-border);
}

body[data-page="jornada"] .ol-set-chip.inprog .ol-set-result{color:var(--color-info);}

body[data-page="jornada"] .ol-set-chip.disabled{
  opacity:.55;
  background:var(--color-bg-elevated);
  border-color:var(--color-border);
  pointer-events:none;
}

body[data-page="jornada"] .ol-actions{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr));
  gap:.08rem;
  margin-top:0;
  height:100%;
}

body[data-page="jornada"] .ol-act-btn{
  border:0;
  border-radius:8px;
  width:100%;
  height:100%;
  min-height:68px;
  padding:.14rem .06rem;
  background:var(--color-primary);
  color:var(--color-text-inverse);
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  line-height:1;
  font-weight:900;
  font-size:.78rem;
  transition:transform var(--motion-fast) var(--ease-standard), filter var(--motion-fast) var(--ease-standard), background-color var(--motion-fast) var(--ease-standard);
}

body[data-page="jornada"] .ol-act-btn:active{transform:scale(.98);}
body[data-page="jornada"] .ol-act-btn:hover{filter:brightness(.98);}

body[data-page="jornada"] .ol-act-top{
  font-size:1.1rem;
  margin-bottom:0;
}

body[data-page="jornada"] .ol-act-reset{
  background:var(--color-primary-dark);
}

body[data-page="jornada"] #olCaptainFinalizeBottom:disabled{
  opacity:.55;
  pointer-events:none;
}

body[data-page="jornada"] .ol-status-slot{
  min-height:0;
  display:flex;
  align-items:center;
}

body[data-page="jornada"] .ol-status-slot:empty{
  display:none;
}

body[data-page="jornada"] #olJornadaCard,
body[data-page="jornada"] #olCaptainResultsCard{
  margin-bottom:.42rem !important;
}

body[data-page="jornada"] #olCaptainStatus{
  min-height:0;
  margin:0;
}

body[data-page="jornada"] #olCaptainStatus:empty{
  display:none;
}

body[data-page="jornada"] #olCaptainResultsActions{
  position:static;
  bottom:auto;
  z-index:auto;
  margin:var(--appadel-spacing-panel-gap) 0 0;
  padding-bottom:max(var(--appadel-spacing-panel-gap), env(safe-area-inset-bottom, 0px));
  background:transparent;
  backdrop-filter:none;
}

body[data-page="cambiar-fecha"] .cf-page-shell{
  display:grid;
  gap:var(--density-compact-gap);
}

body[data-page="cambiar-fecha"] #cfJornadaCard,
body[data-page="cambiar-fecha"] #cfEditorCard{
  box-shadow:var(--shadow-xs);
}

body[data-page="cambiar-fecha"] .cf-editor-head{
  margin-bottom:6px;
}

body[data-page="cambiar-fecha"] .cf-editor-form{
  display:grid;
  gap:10px;
}

body[data-page="cambiar-fecha"] .cf-current-card,
body[data-page="cambiar-fecha"] .cf-input-card{
  display:grid;
  gap:6px;
}

body[data-page="cambiar-fecha"] .cf-block-label{
  color:var(--appadel-text-primary);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.06em;
  text-transform:none;
}

body[data-page="cambiar-fecha"] .cf-current-value{
  font-size:1rem;
  font-weight:900;
  color:var(--appadel-text-primary);
  line-height:1.15;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body[data-page="cambiar-fecha"] .cf-current-meta{
  color:var(--color-muted);
  font-size:.84rem;
  font-weight:700;
}

body[data-page="cambiar-fecha"] .cf-inputs-stack{
  display:grid;
  gap:10px;
}

body[data-page="cambiar-fecha"] .cf-inputs-row{
  display:grid;
  align-items:center;
  gap:10px;
}

body[data-page="cambiar-fecha"] .cf-inputs-row-date{
  grid-template-columns:52px minmax(0, 1fr);
}

body[data-page="cambiar-fecha"] .cf-inputs-row-time{
  grid-template-columns:52px auto;
}

body[data-page="cambiar-fecha"] .cf-inline-label{
  color:var(--appadel-text-primary);
  font-size:.9rem;
  font-weight:900;
  margin:0;
}

body[data-page="cambiar-fecha"] .cf-time-inline{
  display:grid;
  grid-template-columns:90px 10px 90px;
  gap:8px;
  align-items:center;
}

body[data-page="cambiar-fecha"] .cf-field{
  min-width:0;
}

body[data-page="cambiar-fecha"] .cf-time-sep{
  display:flex;
  align-items:center;
  justify-content:center;
  color:var(--color-muted);
  font-weight:900;
}

body[data-page="cambiar-fecha"] .cf-actions{
  display:flex;
  flex-wrap:nowrap;
  gap:10px;
}

body[data-page="cambiar-fecha"] .cf-actions > .btn{
  flex:1 1 0;
  min-height:46px;
  border-radius:14px;
  font-weight:800;
}

@media (min-width: 769px){
  body[data-page="jornada"] .jornada-actions-stack{
    flex-direction:column;
    flex-wrap:nowrap;
  }

  body[data-page="jornada"] .jornada-actions-stack > .btn{
    flex:0 0 auto;
    min-height:var(--appadel-interaction-control-height);
    min-width:0;
    width:100%;
  }

  body[data-page="jornada"] .ol-cap-body{
    grid-template-columns:max-content minmax(0, 330px);
    justify-content:space-between;
  }

  body[data-page="jornada"] .ol-set-tabs{
    grid-template-columns:repeat(3, 64px);
    gap:.16rem;
  }

  body[data-page="jornada"] .ol-set-chip{
    width:64px;
    min-height:100px;
    padding:.24rem .12rem;
  }

  body[data-page="jornada"] .ol-chip-num{
    font-size:.72rem;
  }

  body[data-page="jornada"] .ol-set-input{
    min-height:28px;
    height:28px;
    max-width:38px;
    font-size:18px;
  }

  body[data-page="jornada"] .ol-actions{
    grid-template-columns:repeat(3, 1fr);
    width:330px;
  }

  body[data-page="jornada"] .ol-act-btn{
    min-height:62px;
  }

  body[data-page="cambiar-fecha"] .cf-actions{
    flex-direction:row;
    flex-wrap:nowrap;
  }

  body[data-page="cambiar-fecha"] .cf-actions > .btn{
    width:auto;
    min-width:0;
  }
}

body[data-page="online"] .online-page-head{
  margin-bottom:14px;
}

body[data-page="online"] #btnRefresh,
body[data-page="online"] #olChatSend,
body[data-page="online"] #olChatInput,
body[data-page="online"] .score-badge,
body[data-page="online"] .ol-card,
body[data-page="online"] button{
  touch-action:manipulation;
}

body[data-page="online"] .ol-online-jornada{
  padding:0;
}

body[data-page="online"] .ol-online-results,
.app-matchday-results-card .ol-online-results{
  display:grid;
  gap:.5rem;
  min-width:0;
}

body[data-page="online"] #olResultadosOnlineCard:not(.app-matchday-results-canonical),
.app-matchday-results-card{
  background:linear-gradient(
    160deg,
    var(--color-primary-dark),
    color-mix(in srgb, var(--color-primary-dark) 82%, var(--color-primary) 18%)
  );
  border:1px solid rgba(var(--club-primary-rgb), .22);
  box-shadow:0 14px 28px rgba(var(--club-primary-rgb), .22);
}

body[data-page="online"] .ol-online-results-head,
.app-matchday-results-card .ol-online-results-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:.5rem;
  margin-bottom:.45rem;
}

body[data-page="online"] .ol-online-results-title,
.app-matchday-results-card .ol-online-results-title{
  font-weight:900;
  font-size:1rem;
  color:#fff;
}

body[data-page="online"] .ol-online-match,
.app-matchday-results-card .ol-online-match{
  display:block;
  padding:.62rem .82rem;
  border-radius:16px;
  background:rgba(255,255,255,.06);
  border:1px solid rgba(var(--club-primary-rgb), .16);
  min-width:0;
  max-width:100%;
  overflow:hidden;
}

body[data-page="online"] .ol-online-match + .ol-online-match,
.app-matchday-results-card .ol-online-match + .ol-online-match{
  margin-top:.1rem;
}

body[data-page="online"] .ol-online-pairblock,
.app-matchday-results-card .ol-online-pairblock{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  row-gap:.32rem;
  min-width:0;
}

body[data-page="online"] .ol-online-pair-row,
.app-matchday-results-card .ol-online-pair-row{
  display:flex;
  align-items:center;
  gap:.75rem;
  min-width:0;
  max-width:100%;
}

body[data-page="online"] .online-pair-text,
.app-matchday-results-card .online-pair-text{
  flex:1 1 auto;
  min-width:0;
  max-width:100%;
  overflow:hidden;
}

body[data-page="online"] .online-pair-score,
.app-matchday-results-card .online-pair-score{
  flex:0 0 auto;
  width:auto;
  min-width:0;
  max-width:100%;
  overflow:hidden;
}

body[data-page="online"] .ol-online-pair-main,
body[data-page="online"] .ol-online-pair-rival,
.app-matchday-results-card .ol-online-pair-main,
.app-matchday-results-card .ol-online-pair-rival{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body[data-page="online"] .ol-online-pair-main,
.app-matchday-results-card .ol-online-pair-main{
  font-weight:800;
  color:#fff;
  font-size:1rem;
  line-height:1.15;
  margin:0;
}

body[data-page="online"] .ol-online-pair-rival,
.app-matchday-results-card .ol-online-pair-rival{
  margin:0;
  color:rgba(255,255,255,.72);
  font-size:1rem;
  font-weight:700;
  line-height:1.15;
}

.app-matchday-results-card.app-matchday-results-card--calendar .online-pair-text{
  overflow:visible;
}

.app-matchday-results-card.app-matchday-results-card--calendar .ol-online-pair-main,
.app-matchday-results-card.app-matchday-results-card--calendar .ol-online-pair-rival{
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  font-size:.9rem;
  line-height:1.2;
}

body[data-page="online"] .ol-online-scoreline,
.app-matchday-results-card .ol-online-scoreline{
  display:inline-grid;
  grid-template-columns:repeat(3, minmax(22px, 1fr));
  gap:.2rem;
  align-items:center;
  width:auto;
  max-width:100%;
}

body[data-page="online"] .ol-online-setcell,
.app-matchday-results-card .ol-online-setcell{
  display:grid;
  justify-items:center;
  align-items:center;
  min-width:22px;
  line-height:1.05;
  color:#fff;
  font-size:1.02rem;
  font-weight:900;
  overflow:hidden;
}

body[data-page="online"] .ol-online-set-empty,
.app-matchday-results-card .ol-online-set-empty{
  opacity:.22;
}

body[data-page="online"] #btnRefresh,
body[data-page="online"] #olChatSend{
  transform:scale(.9);
  transform-origin:center;
}

body[data-page="online"] .online-updated,
.app-matchday-results-card .online-updated{
  font-weight:800;
  color:rgba(255,255,255,.92) !important;
}

body[data-page="online"] .online-refresh-row,
.app-matchday-results-card .online-refresh-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:0;
  padding-top:12px;
  transition:opacity var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);
}

body[data-page="online"] .online-updated-wrap,
.app-matchday-results-card .online-updated-wrap{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  flex:0 1 auto;
  flex-wrap:wrap;
}

body[data-page="online"] .online-refresh-row #btnRefresh,
.app-matchday-results-card .online-refresh-row #btnRefresh{
  flex:0 0 auto;
}

body[data-page="online"] .online-refresh-row .online-updated,
body[data-page="online"] .online-refresh-row .online-updated-label,
.app-matchday-results-card .online-refresh-row .online-updated,
.app-matchday-results-card .online-refresh-row .online-updated-label{
  min-width:0;
  text-align:left;
  color:#fff !important;
  font-weight:800;
}

body[data-page="online"] .online-refresh-row #btnRefresh,
.app-matchday-results-card .online-refresh-row #btnRefresh{
  color:#fff;
  border-color:rgba(255,255,255,.38);
  font-weight:800;
}

body[data-page="online"] .ol-online-results-foot,
.app-matchday-results-card .ol-online-results-foot{
  margin-top:.7rem;
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical{
  padding:var(--appadel-spacing-panel-gap);
  background:var(--appadel-product-surface);
  border:1px solid var(--appadel-product-border);
  border-radius:var(--appadel-product-radius);
  box-shadow:none;
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical .ol-online-results-head{
  margin:0;
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical .ol-online-results-title{
  margin:0;
  color:var(--appadel-brand-primary);
  font-family:var(--appadel-typography-font-family);
  font-size:var(--appadel-typography-size-title);
  font-weight:var(--appadel-typography-weight-heading);
  line-height:var(--appadel-typography-line-height-tight);
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical #btnRefresh{
  color:var(--appadel-brand-primary);
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-brand-primary);
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical #btnRefresh:is(:hover, :focus-visible){
  color:var(--appadel-brand-primary-hover);
  background:var(--appadel-interaction-hover);
  border-color:var(--appadel-brand-primary-hover);
}

body[data-page="online"] #olResultadosOnlineCard.app-matchday-results-canonical :is(.online-updated-label,.online-updated){
  color:var(--appadel-text-secondary)!important;
  font-weight:var(--appadel-typography-weight-supporting);
}

body[data-page="online"] #olJornadaCard,
body[data-page="online"] #olResultadosOnlineCard:not(.app-matchday-results-canonical),
body[data-page="online"] #olCommentsCard,
body[data-page="online"] #olChatCard{
  box-shadow:var(--shadow-xs);
  min-width:0;
  max-width:100%;
}

body[data-page="online"] #olPartidos{
  display:grid;
  gap:10px;
  min-width:0;
  max-width:100%;
}

body[data-page="online"] .online-chat-messages{
  max-height:260px;
  overflow:auto;
  border-radius:12px;
  padding:10px;
  background:var(--appadel-surface-background);
  border:1px solid var(--appadel-border-subtle);
}

body[data-page="online"] .chat-row{width:100%}
body[data-page="online"] .chat-bubble{
  width:fit-content;
  max-width:50%;
  padding:5px 12px;
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-control);
  background:var(--appadel-surface-secondary);
  color:var(--appadel-text-primary);
}
body[data-page="online"] .chat-row.mine .chat-bubble{
  background:color-mix(in srgb,var(--appadel-surface-interactive) 88%,var(--appadel-brand-primary) 12%);
  border-color:color-mix(in srgb,var(--appadel-border-subtle) 72%,var(--appadel-brand-primary) 28%);
}
body[data-page="online"] :is(.chat-name,.chat-time){color:var(--appadel-text-secondary);opacity:1}
body[data-page="online"] .chat-name{margin-bottom:1px}
body[data-page="online"] .chat-time{margin-top:2px}

body[data-page="online"] #olJornadaCard .score-badge{
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary);
}
body[data-page="online"] #olJornadaCard .score-badge.score-win{color:var(--appadel-feedback-success)}
body[data-page="online"] #olJornadaCard .score-badge.score-lose{color:var(--appadel-feedback-danger)}

.product-workflow-loading{display:grid;gap:var(--appadel-spacing-panel-gap);padding-block:var(--appadel-spacing-panel-gap)}
.product-workflow-loading[hidden]{display:none}
.product-workflow-loading .ds-loading{min-height:var(--appadel-interaction-control-height);justify-content:flex-start}
.workflow-content-pending{display:none!important}

body[data-page="online"] .online-chat-actions{
  align-items:stretch;
}

body[data-page="online"] .online-chat-actions .form-control{
  min-width:0;
}

@media (max-width:768px){
  body[data-page="jornada"] .jornada-page-shell{
    padding:0;
    border-radius:0;
  }

  body[data-page="jornada"] .ol-cap-match{
    padding:.64rem .66rem !important;
    border-radius:15px;
  }

  body[data-page="jornada"] .ol-cap-body{
    grid-template-columns:max-content minmax(0,1fr);
    gap:.16rem;
    align-items:end;
  }

  body[data-page="jornada"] .ol-set-chip{
    min-height:70px;
    padding:.14rem .04rem;
  }

  body[data-page="jornada"] .ol-chip-num{
    font-size:.48rem;
  }

  body[data-page="jornada"] .ol-act-btn{
    min-height:64px;
    font-size:.72rem;
  }

  body[data-page="jornada"] #olJornadaCard,
  body[data-page="jornada"] #olCaptainResultsCard{
    margin-bottom:.34rem !important;
  }

  body[data-page="cambiar-fecha"] .cf-inputs-row-date{
    grid-template-columns:46px minmax(0, 1fr);
  }

  body[data-page="cambiar-fecha"] .cf-inputs-row-time{
    grid-template-columns:46px auto;
  }

  body[data-page="cambiar-fecha"] .cf-time-inline{
    grid-template-columns:80px 8px 80px;
    gap:6px;
  }

  body[data-page="online"] .online-page-shell{
    padding:0;
    border-radius:0;
  }

  body[data-page="online"] .online-page-head{
    align-items:flex-start !important;
    gap:12px !important;
  }

  body[data-page="online"] .online-page-head #btnRefresh{
    min-height:34px;
  }

  body[data-page="online"] .online-refresh-row,
  .app-matchday-results-card .online-refresh-row{
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
  }
}

@media (max-width:520px){
  body[data-page="online"] .ol-online-match,
  .app-matchday-results-card .ol-online-match{
    padding-right:1rem;
  }

  body[data-page="online"] .ol-online-pair-row,
  .app-matchday-results-card .ol-online-pair-row{
    gap:.65rem;
  }

  body[data-page="online"] .online-pair-score,
  .app-matchday-results-card .online-pair-score{
    flex-basis:auto;
    width:auto;
    min-width:0;
  }

  body[data-page="online"] .ol-online-pair-main,
  body[data-page="online"] .ol-online-pair-rival,
  .app-matchday-results-card .ol-online-pair-main,
  .app-matchday-results-card .ol-online-pair-rival{
    font-size:.96rem;
  }

  body[data-page="online"] .ol-online-scoreline,
  .app-matchday-results-card .ol-online-scoreline{
    gap:.18rem;
  }

  body[data-page="online"] .ol-online-setcell,
  .app-matchday-results-card .ol-online-setcell{
    font-size:.96rem;
    min-width:20px;
  }
}

@media (max-width:600px){
  body[data-page="jornada"] .ol-results-skel-body{
    grid-template-columns:1fr 110px;
  }
}

@media (max-width:390px){
  body[data-page="jornada"] .ol-cap-body{
    grid-template-columns:max-content minmax(0,1fr);
    gap:.1rem;
  }

  body[data-page="jornada"] .ol-set-tabs{
    grid-template-columns:repeat(3, 29px);
    gap:.06rem;
  }

  body[data-page="jornada"] .ol-set-chip{
    width:29px;
    min-height:66px;
    padding:.14rem .04rem;
  }

  body[data-page="jornada"] .ol-set-input{
    min-height:20px;
    height:20px;
    max-width:22px;
  }

  body[data-page="jornada"] .ol-act-btn{
    min-height:60px;
    font-size:.68rem;
  }
}

#btnActualizarClas{
  font-weight:900;
  border-radius:12px;
  white-space:nowrap;
}

@media (max-width:768px){
  #btnActualizarClas{
    width:auto;
  }
}

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

.clas-status{
  margin-top: 8px;
  font-weight: 700;
  text-align: center;
}
.clas-status.ok{ color: var(--color-success); }
.clas-status.err{ color: var(--color-danger); }
.clas-status.info{ color: var(--color-muted); }

.row-warn { background: rgba(255, 193, 7, 0.18); }

.clas-actions-row{
  align-items:stretch;
}

.clas-actions-row > .btn{
  flex:1 1 0;
  min-width:0;
}

.clas-actions-row > a{
  flex:1 1 100%;
}

.clas-row{
  display:flex;
  gap:8px;
}

#clasificacionWrap.clas-editing td{
  padding:3px 2px;
}

#clasificacionWrap.clas-editing input.form-control-sm{
  min-height:28px;
  width:2.05em;
  max-width:2.05em;
  margin:0 auto;
  padding:0 1px;
  font-size:.78rem;
  line-height:1.1;
  text-align:center;
}

#clasificacionWrap.clas-editing input.form-control-sm[data-field="ds"],
#clasificacionWrap.clas-editing input.form-control-sm[data-field="dj"]{
  width:3em;
  max-width:3em;
}

#clasificacionWrap.clas-editing .clas-team-readonly{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:left;
  line-height:24px;
  font-size:.78rem;
}

@media (max-width:768px){
  .clas-actions-row{
    display:flex !important;
    flex-wrap:nowrap !important;
    gap:8px !important;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }

  body[data-page="clasificacion"] .clas-actions-row > .btn{
    flex:1 0 max-content;
    min-width:max-content;
    padding-left:10px;
    padding-right:10px;
  }

  .clas-actions-row > a{
    flex:1 0 100%;
  }

  .clas-buttons{
    display:block;
  }

  #clasificacionWrap.clas-editing th,
  #clasificacionWrap.clas-editing td{
    padding:2px 2px;
  }

  #clasificacionWrap.clas-editing input.form-control-sm{
    min-height:24px;
    width:1.9em;
    max-width:1.9em;
    padding:0 1px;
    font-size:.72rem;
  }

  #clasificacionWrap.clas-editing input.form-control-sm[data-field="ds"],
  #clasificacionWrap.clas-editing input.form-control-sm[data-field="dj"]{
    width:2.7em;
    max-width:2.7em;
  }

  #clasificacionWrap.clas-editing th{
    font-size:.74rem;
  }

  #clasificacionWrap.clas-editing .clas-team-readonly{
    line-height:24px;
    font-size:.72rem;
  }
}

.clas-editor-wrapper{
  position:relative;
}

.clas-preview-overlay{
  position:absolute;
  inset:0;
  background:white;
  overflow:auto;
  border-radius:6px;
  padding:6px;
}

.clas-preview-table{
  table-layout:fixed;
  width:100%;
}

.clas-preview-table th,
.clas-preview-table td{
  padding:4px 6px;
}

.clas-preview-table th:nth-child(1),
.clas-preview-table td:nth-child(1),
.clas-preview-table th:nth-child(3),
.clas-preview-table td:nth-child(3),
.clas-preview-table th:nth-child(4),
.clas-preview-table td:nth-child(4),
.clas-preview-table th:nth-child(5),
.clas-preview-table td:nth-child(5),
.clas-preview-table th:nth-child(6),
.clas-preview-table td:nth-child(6){
  text-align:center;
}

.clas-preview-table th:nth-child(2),
.clas-preview-table td:nth-child(2){
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

@media (max-width:768px){
  .home-captain-tips-card{
    padding:11px 14px !important;
  }

  .clas-preview-overlay{
    padding:4px;
  }

  .clas-preview-table th,
  .clas-preview-table td{
    padding:3px 2px;
  }

  .clas-preview-table th{
    font-size:.72rem;
  }

  .clas-preview-table td{
    font-size:.76rem;
  }

  .tips-video-modal{
    padding:12px;
  }

  .tips-video-modal__dialog{
    padding:14px;
    border-radius:20px;
  }

  .tips-video-modal__head{
    flex-direction:column;
  }

  .tips-video-modal__close{
    width:100%;
  }
}

.team-ours{
  font-weight:700;
  color:#0a7c3a;
}

.user-mgmt-shell{
  display:grid;
  gap:16px;
}

.user-mgmt-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.user-mgmt-head-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.user-mgmt-actor,
.user-mgmt-password,
.user-mgmt-form{
  padding:14px;
}

.user-mgmt-actor{
  display:grid;
  gap:4px;
}

.user-mgmt-password{
  display:grid;
  gap:10px;
}

.user-mgmt-password-title{
  font-weight:800;
}

.user-mgmt-password-value{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:1.1rem;
  font-weight:800;
  letter-spacing:.03em;
}

.user-mgmt-grid{
  display:grid;
  gap:14px;
}

.user-mgmt-switch{
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
}

.user-mgmt-teams-block{
  display:grid;
  gap:8px;
}

.user-mgmt-teams{
  display:grid;
  gap:8px;
}

.user-mgmt-team-option{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) 112px;
  align-items:center;
  gap:10px;
  padding:10px 12px;
  border:1px solid var(--color-border);
  border-radius:12px;
  background:#fff;
  font-weight:700;
}

.user-mgmt-team-copy{
  display:grid;
  gap:2px;
  min-width:0;
}

.user-mgmt-team-name,
.user-mgmt-team-meta{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.user-mgmt-team-name{
  color:var(--color-text);
  font-weight:850;
}

.user-mgmt-team-meta{
  color:var(--color-muted);
  font-size:.78rem;
  font-weight:700;
}

.user-mgmt-team-role{
  width:112px;
  min-width:0;
}

.user-mgmt-form-actions{
  display:flex;
  justify-content:flex-end;
}

.user-mgmt-list{
  display:grid;
  gap:12px;
}

.user-mgmt-card{
  background:#fff;
  border:1px solid var(--color-border);
  border-radius:14px;
  padding:14px;
  box-shadow:var(--shadow-xs);
  display:grid;
  gap:12px;
}

.user-mgmt-card-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.user-mgmt-card-user{
  font-weight:900;
  font-size:1rem;
}

.user-mgmt-card-name{
  font-weight:700;
  color:var(--color-muted);
}

.user-mgmt-card-grid{
  display:grid;
  gap:10px;
}

.user-mgmt-card-grid > div{
  display:grid;
  gap:2px;
}

.user-mgmt-k{
  font-size:.78rem;
  font-weight:800;
  text-transform:uppercase;
  color:var(--color-muted);
}

.user-mgmt-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:82px;
  padding:6px 10px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:900;
}

.user-mgmt-badge.is-active{
  background:var(--win-bg);
  color:var(--win);
}

.user-mgmt-badge.is-inactive{
  background:var(--lose-bg);
  color:var(--lose);
}

.user-mgmt-card-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}

.player-mgmt-table-wrap{
  display:none;
  overflow:auto;
  border:1px solid var(--color-border);
  background:#fff;
  box-shadow:var(--shadow-xs);
}

.player-mgmt-table{
  width:100%;
  min-width:1080px;
  border-collapse:collapse;
}

.player-mgmt-table thead th{
  position:sticky;
  top:0;
  z-index:1;
}

.player-mgmt-sort-btn{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:0;
  border:0;
  background:transparent;
  color:inherit;
  font:inherit;
  font-weight:inherit;
  text-transform:inherit;
  cursor:pointer;
}

.player-mgmt-table tbody td{
  padding:12px 10px;
  border-bottom:1px solid rgba(15,23,42,.08);
  vertical-align:middle;
}

.player-mgmt-table tbody tr:last-child td{
  border-bottom:0;
}

.player-mgmt-mobile-wrap{
  overflow:hidden;
  border:1px solid var(--color-border);
  border-radius:14px;
  background:#fff;
  box-shadow:var(--shadow-xs);
}

.player-mgmt-mobile-table{
  width:100%;
  min-width:0;
  border-collapse:collapse;
  table-layout:fixed;
}

.player-mgmt-mobile-table tbody td{
  padding:6px 4px;
  border-bottom:1px solid rgba(15,23,42,.08);
  vertical-align:top;
}

.player-mgmt-mobile-table tbody tr:last-child td{
  border-bottom:0;
}

.player-mgmt-mobile-table th:nth-child(1),
.player-mgmt-mobile-table td:nth-child(1){
  width:52%;
  max-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  padding-right:2px;
}

.player-mgmt-mobile-table th:nth-child(2),
.player-mgmt-mobile-table td:nth-child(2){
  width:44px;
  white-space:nowrap;
  text-align:left;
  padding-left:8px;
  padding-right:12px;
}

.player-mgmt-mobile-table th:nth-child(3),
.player-mgmt-mobile-table td:nth-child(3){
  width:88px;
  white-space:nowrap;
  padding-left:4px;
}

.player-mgmt-actions{
  display:flex;
  gap:2px;
  flex-wrap:nowrap;
  justify-content:flex-start;
  width:auto;
}

.player-mgmt-action-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  min-width:24px;
  min-height:24px;
  padding:0;
  font-size:0;
  line-height:0;
  overflow:hidden;
  white-space:nowrap;
  border-radius:6px;
}

.player-mgmt-action-icon{
  display:inline-flex;
  width:10px;
  height:10px;
  flex:0 0 10px;
  font-size:10px;
  line-height:1;
}

.player-mgmt-action-icon svg{
  width:10px;
  height:10px;
  fill:currentColor;
}

body[data-page="jugadores"] .players-page-shell{
  gap:18px;
  padding:18px;
  border-radius:26px;
}

body[data-page="jugadores"] .user-mgmt-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
  margin-bottom:2px;
}

body[data-page="jugadores"] .user-mgmt-head > .d-flex{
  width:100%;
  justify-content:space-between;
}

body[data-page="jugadores"] #playerMgmtHeading{
  margin:0;
}

body[data-page="jugadores"] .user-mgmt-head-actions{
  gap:10px;
}

body[data-page="jugadores"] .user-mgmt-shell .btn:not(.player-mgmt-action-btn){
  font-weight:800;
}

body[data-page="jugadores"] .user-mgmt-list-wrap{
  display:grid;
  gap:12px;
}

body[data-page="jugadores"] #playerMgmtCount{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(var(--club-primary-rgb), .08);
  border:1px solid rgba(var(--club-primary-rgb), .12);
  color:var(--color-primary) !important;
  font-size:.78rem !important;
  font-weight:900;
}

body[data-page="jugadores"] #playerMgmtList > .text-muted.small{
  padding:18px;
  border:1px dashed rgba(var(--club-primary-rgb), .18);
  border-radius:18px;
  background:rgba(var(--club-primary-rgb), .04);
  font-weight:700;
}

body[data-page="jugadores"] .player-mgmt-table-wrap{
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}

body[data-page="jugadores"] .player-mgmt-table{
  width:100%;
  min-width:1080px;
  border-collapse:separate;
  border-spacing:0 10px;
}

body[data-page="jugadores"] .player-mgmt-table thead th{
  position:static;
}

body[data-page="jugadores"] .player-mgmt-table tbody td{
  padding:14px 12px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
  border-bottom:1px solid rgba(var(--club-primary-rgb), .10);
  background:rgba(255,255,255,.92);
  vertical-align:middle;
}

body[data-page="jugadores"] .player-mgmt-table tbody td:first-child{
  border-left:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:18px 0 0 18px;
}

body[data-page="jugadores"] .player-mgmt-table tbody td:last-child{
  border-right:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:0 18px 18px 0;
}

body[data-page="jugadores"] .player-mgmt-table tbody tr:nth-child(odd) td{
  background:rgba(255,255,255,.96);
}

body[data-page="jugadores"] .player-mgmt-mobile-wrap{
  overflow:visible;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

body[data-page="jugadores"] .player-mgmt-mobile-table{
  border-collapse:separate;
  border-spacing:0 10px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead{
  background:var(--app-data-header-bg);
  outline:1px solid var(--app-data-header-border);
  border-radius:16px;
  overflow:hidden;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead tr{
  background:var(--app-data-header-bg);
  clip-path:inset(0 round 16px);
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead th{
  padding:10px 12px;
  border-top:1px solid var(--app-data-header-border);
  border-bottom:1px solid var(--app-data-header-border);
  background:transparent;
  color:var(--app-data-header-color);
  font-size:var(--app-data-header-size-mobile);
  font-weight:900;
  letter-spacing:var(--app-data-header-letter-spacing-mobile);
  line-height:1.1;
  text-transform:uppercase;
  box-shadow:none;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead th:first-child{
  padding-left:8px;
  border-left:1px solid var(--app-data-header-border);
  border-radius:16px 0 0 16px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.is-captain-readonly th:nth-child(3),
body[data-page="jugadores"] .player-mgmt-mobile-table.is-captain-readonly td:nth-child(3){
  width:76px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead th:last-child{
  border-right:1px solid var(--app-data-header-border);
  border-radius:0 16px 16px 0;
}

body[data-page="jugadores"] .player-mgmt-mobile-table tbody td{
  padding:10px 8px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
  border-bottom:1px solid rgba(var(--club-primary-rgb), .10);
  background:rgba(255,255,255,.94);
  vertical-align:middle;
}

body[data-page="jugadores"] .player-mgmt-mobile-table tbody td:first-child{
  border-left:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:16px 0 0 16px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table tbody td:last-child{
  border-right:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:0 16px 16px 0;
}

body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(1),
body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(1){
  width:auto;
  min-width:0;
  max-width:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(2),
body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(2){
  width:48px;
  text-align:center;
}

body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(2){
  padding-left:4px;
  padding-right:4px;
  font-size:.74rem;
}

body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(3),
body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(3){
  width:136px;
  text-align:center;
}

body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(3){
  padding-left:2px;
  padding-right:2px;
}

body[data-page="jugadores"] .player-mgmt-sort-btn{
  gap:6px;
}

body[data-page="jugadores"] .player-mgmt-actions{
  gap:4px;
  flex-wrap:nowrap;
  justify-content:center;
}

body[data-page="jugadores"] .player-mgmt-action-btn{
  width:32px;
  height:32px;
  min-width:32px;
  min-height:32px;
  border-radius:10px;
}

body[data-page="jugadores"] .player-mgmt-action-icon{
  width:14px;
  height:14px;
  flex:0 0 14px;
}

body[data-page="jugadores"] .player-mgmt-action-icon svg{
  width:14px;
  height:14px;
}

body[data-page="jugadores"] .user-mgmt-form,
body[data-page="jugadores"] .user-mgmt-password{
  padding:16px;
  border-radius:22px;
}

body[data-page="jugadores"] .user-mgmt-status{
  border-radius:14px;
}

@media (max-width:768px){
  body[data-page="jugadores"] .players-page-shell{
    gap:16px;
    padding:16px 14px;
    border-radius:22px;
  }

  body[data-page="jugadores"] #playerMgmtCount{
    min-height:24px;
    padding:4px 8px;
    font-size:.72rem !important;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table{
    table-layout:fixed;
    width:100%;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table tbody td{
    padding:3px 6px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead th:first-child{
    padding-left:6px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(2),
  body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(2){
    width:42px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table.has-header-card thead th:nth-child(2){
    padding-left:6px;
    padding-right:2px;
    text-align:left;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(3),
  body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(3){
    width:132px;
    text-align:center;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table.is-captain-readonly th:nth-child(3),
  body[data-page="jugadores"] .player-mgmt-mobile-table.is-captain-readonly td:nth-child(3){
    width:64px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(3){
    padding-left:2px;
    padding-right:2px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(1){
    font-size:var(--data-table-name-size);
    font-weight:800;
    line-height:1.2;
  }

  body[data-page="jugadores"] .player-mgmt-actions{
    gap:4px;
    flex-wrap:nowrap;
  }

  body[data-page="jugadores"] .player-mgmt-action-btn{
    width:28px;
    height:28px;
    min-width:28px;
    min-height:28px;
    border-radius:9px;
  }

  body[data-page="jugadores"] .player-mgmt-action-icon{
    width:12px;
    height:12px;
    flex-basis:12px;
  }

  body[data-page="jugadores"] .player-mgmt-action-icon svg{
    width:12px;
    height:12px;
  }

  body[data-page="jugadores"] .user-mgmt-head-actions{
    width:100%;
  }

  body[data-page="jugadores"] .user-mgmt-shell .btn:not(.player-mgmt-action-btn){
    flex:1 1 0;
  }
}

.password-change-shell{
  display:grid;
  gap:16px;
  max-width:640px;
  margin:0 auto;
}

.password-change-status:empty{
  display:none;
}

.password-change-form{
  display:grid;
  gap:14px;
}

.password-change-form .login-passwrap .ds-input{
  padding-right:48px;
}

.password-change-actions{
  display:grid;
  gap:10px;
}

.password-change-actions > *{
  width:100%;
}

@media (max-width:575.98px){
  .password-change-body{
    align-items:flex-start;
  }

  .password-change-body .login-shell{
    padding:10px;
  }

  .password-change-shell{
    gap:8px;
    padding:12px;
  }

  .password-change-head{
    gap:0;
    margin-bottom:4px;
  }

  .password-change-head .login-logo{
    width:92px;
    height:92px;
    margin-bottom:2px;
  }

  .password-change-head .login-title{
    font-size:1.08rem;
    line-height:1.15;
  }

  .password-change-head .login-subtitle{
    margin:2px 0 0;
    font-size:.82rem;
    line-height:1.25;
  }

  .password-change-head .text-muted{
    margin-top:2px;
    font-size:.78rem;
    line-height:1.25;
  }

  .password-change-form{
    gap:7px;
  }

  .password-change-form .login-label{
    margin-top:2px;
    margin-bottom:3px;
    font-size:.78rem;
  }

  .password-change-form .login-passwrap .ds-input{
    padding-right:42px;
  }

  .password-change-form .login-peek{
    right:5px;
    padding:5px 7px;
  }

  .password-change-actions{
    gap:8px;
  }

}

@media (min-width:768px){
  .user-mgmt-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .user-mgmt-teams-block,
  .user-mgmt-form-actions{
    grid-column:1 / -1;
  }

  .user-mgmt-card-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .player-mgmt-table-wrap{
    display:block;
  }

  .player-mgmt-mobile-wrap{
    display:none;
  }
}

.home-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:var(--density-comfortable-gap);
  align-items:start;
  grid-template-areas:
    "calendar"
    "clas"
    "top"
    "photos";
}

.home-calendar{grid-area:calendar}
.home-clas{grid-area:clas}
.home-top3{grid-area:top}
.home-photos{grid-area:photos}

@media (min-width:992px){
  .home-grid{
    grid-template-columns:3fr 2fr;
    grid-template-areas:
      "clas calendar"
      "photos top";
    align-items:start;
  }

  .home-grid > .card-soft{
    display:flex;
    flex-direction:column;
    min-width:0;
  }

  .home-grid.no-photos{
    grid-template-areas:
      "clas calendar"
      "top calendar";
  }
}

.carousel-compact .carousel-inner{
  border-radius:20px;
  overflow:hidden;
  background:#fff;
}

.carousel-compact .carousel-item img{
  display:block;
  width:100%;
  height:260px;
  object-fit:cover;
}

@media (min-width:992px){
  .carousel-compact .carousel-item img{
    height:360px;
    object-fit:contain;
  }
}

.home-photos-carousel{
  display:grid;
  gap:12px;
}

.home-photos-stage{
  position:relative;
  border-radius:20px;
  overflow:hidden;
  background:#fff;
  box-shadow:var(--shadow-xs);
}

.home-photos-image{
  display:block;
  width:100%;
  height:260px;
  object-fit:cover;
  object-position:center center;
  background:rgba(255,255,255,.92);
}

.home-photos-image.is-loading,
.home-photos-image.is-portrait{
  object-fit:contain;
  object-position:center top;
}

.home-photos-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:38px;
  height:38px;
  border:0;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(15,23,42,.54);
  color:#fff;
  font-size:1.4rem;
  line-height:1;
  box-shadow:var(--shadow-sm);
  backdrop-filter:blur(8px);
  transition:
    background-color var(--motion-fast) var(--ease-standard),
    transform var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard);
}

.home-photos-nav--prev{left:12px;}
.home-photos-nav--next{right:12px;}

.home-photos-dots{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.home-photos-dot{
  width:8px;
  height:8px;
  border:0;
  border-radius:999px;
  padding:0;
  background:rgba(var(--club-primary-rgb), .24);
  transition:
    transform var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard),
    opacity var(--motion-fast) var(--ease-standard);
}

.home-photos-dot.is-active{
  width:22px;
  background:var(--color-primary);
}

.home-photos-skeleton{
  display:grid;
}

.home-loading-photo-block{block-size:12rem;border-radius:var(--appadel-radius-control)}

.home-classif-img{
  width:100%;
  max-width:980px;
  border-radius:16px;
}

.skeleton{
  position:relative;
  overflow:hidden;
  background:#eef2f6;
  border-radius:12px;
}

.skeleton::after{
  content:"";
  position:absolute;
  inset:0;
  transform:translateX(-100%);
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.7), transparent);
  animation:skeleton-shimmer 1.2s infinite;
}

@keyframes skeleton-shimmer{
  100%{transform:translateX(100%)}
}

.sk-line{height:12px;margin-bottom:10px}
.sk-line:last-child{margin-bottom:0}
.sk-line.w-100{width:100%}
.sk-line.w-85{width:85%}
.sk-line.w-70{width:70%}
.sk-line.w-55{width:55%}
.sk-line.w-40{width:40%}

.sk-card{
  padding:14px;
  border:1px solid rgba(0,0,0,.05);
  border-radius:16px;
  background:rgba(255,255,255,.65);
}

.sk-stack > * + *{margin-top:12px}

.sk-table-row{
  display:grid;
  grid-template-columns:50px 1.8fr 50px 40px 40px 40px;
  gap:10px;
  margin-bottom:10px;
}

.sk-top-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 0;
  width:100%;
}

.sk-photo{
  width:100%;
  height:260px;
  border-radius:16px;
}

@media (min-width:992px){
  .sk-photo{height:360px}
  .home-photos-image{height:360px}
}

.home-menu-btn{
  display:inline-flex;
  flex-direction:column;
  justify-content:center;
  gap:4px;
  width:44px;
  height:44px;
  padding:0;
  border:1px solid var(--color-border);
  border-radius:14px;
  background:rgba(255,255,255,.86);
  box-shadow:var(--shadow-xs);
}

body[data-page="index"] .app-page-intro{
  display:none !important;
}

.home-menu-btn span{
  display:block;
  width:18px;
  height:2px;
  margin:0 auto;
  border-radius:999px;
  background:var(--color-text);
}

.home-context-panel{
  display:grid;
  gap:12px;
  padding:16px;
  border:1px solid var(--color-border);
  border-radius:22px;
  background:rgba(255,255,255,.9);
  box-shadow:var(--shadow-xs);
}

.home-more-links{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
}

.home-captain-tips-card{
  color:inherit;
  padding:12px 16px !important;
}

.home-captain-tips-card:hover,
.home-captain-tips-card:focus{
  color:inherit;
  transform:translateY(-1px);
  box-shadow:0 12px 28px rgba(17, 24, 39, .10);
}

.home-captain-tips-card__inner{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:26px;
  white-space:nowrap;
}

.home-captain-tips-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background:rgba(var(--club-primary-rgb), .08);
  border:1px solid rgba(var(--club-primary-rgb), .14);
  font-size:.9rem;
  line-height:1;
  flex:0 0 auto;
}

.home-captain-tips-card__label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  font-size:.9rem;
  font-weight:900;
  line-height:1.1;
}

.home-captain-tips-card__meta{
  color:var(--color-muted);
  font-size:.82rem;
  font-weight:800;
  line-height:1.1;
  flex:0 0 auto;
}

.home-captain-tips-card__arrow{
  margin-left:auto;
  color:var(--color-primary);
  font-size:1rem;
  font-weight:900;
  line-height:1;
  flex:0 0 auto;
}

.home-grid--foundation{
  grid-template-columns:1fr !important;
  grid-template-areas:
    "identity"
    "hero"
    "clas"
    "recent"
    "top"
    "photos"
    "tips" !important;
}

.home-grid--foundation.no-photos{
  grid-template-areas:
    "identity"
    "hero"
    "clas"
    "recent"
    "top"
    "tips" !important;
}

.home-grid--foundation > .card-soft,
.home-grid--foundation > .app-card{
  box-shadow:0 10px 22px rgba(17, 24, 39, .07);
}

.home-hero,
.home-clas,
.home-top3,
.home-photos{
  padding:18px;
}

.home-identity-card{
  grid-area:identity;
  padding:var(--appadel-spacing-content-gap) var(--appadel-spacing-panel-gap);
}

.home-identity-card__content{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--appadel-spacing-control-gap);min-width:0;width:100%}
.home-identity-card__main{display:grid;gap:3px;min-width:0}
.home-identity-card__loading{justify-content:flex-start}

.home-identity-card__greeting{
  color:var(--appadel-brand-primary);
  font-size:var(--appadel-typography-size-card-title);
  font-weight:var(--appadel-typography-weight-heading);
  line-height:var(--appadel-typography-line-height-tight);
  margin:0 0 var(--appadel-spacing-control-gap);
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

.home-identity-card__role-team,.home-identity-card__competition{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-identity-card__role-team{color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-body);font-weight:var(--appadel-typography-weight-emphasis)}
.home-identity-card .home-identity-card__competition{color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-supporting);font-weight:var(--appadel-typography-weight-regular)}
.home-identity-card__additional{display:grid;gap:var(--appadel-spacing-control-gap);min-width:0;padding-top:var(--appadel-spacing-control-gap);border-top:1px solid var(--appadel-border-subtle)}
.home-identity-card__additional-heading{margin:0;color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-supporting);font-weight:var(--appadel-typography-weight-emphasis)}
.home-identity-card__additional-list{display:grid;gap:calc(var(--appadel-spacing-control-gap) - 2px);min-width:0}
.home-install-recommendation{border-top:1px solid var(--appadel-border-subtle);display:grid;gap:var(--appadel-spacing-control-gap);justify-items:start;min-width:0;padding-top:var(--appadel-spacing-content-gap)}
.home-install-recommendation__title{color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-card-title);font-weight:var(--appadel-typography-weight-heading);line-height:var(--appadel-typography-line-height-tight);margin:0}
.home-install-recommendation__description{color:var(--appadel-text-secondary);font-size:var(--appadel-typography-size-supporting);line-height:var(--appadel-typography-line-height-supporting);margin:var(--appadel-spacing-control-gap) 0 0;max-width:60ch}
.home-install-recommendation__feedback{width:100%}
@media (display-mode:standalone){.home-install-recommendation{display:none}}
.home-identity-card__team-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0}
.home-identity-card__team-bullet{width:8px;height:8px;border-radius:999px;background:var(--appadel-brand-primary);box-shadow:0 0 0 3px rgba(var(--club-primary-rgb), .08);flex:0 0 8px}
.home-identity-card__team-copy{display:grid;gap:1px;min-width:0}
.home-identity-card__team-name,.home-identity-card__team-context{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.home-identity-card__team-name{color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-supporting);font-weight:var(--appadel-typography-weight-regular)}
.home-identity-card .home-identity-card__team-context{color:var(--appadel-text-primary);font-size:var(--appadel-typography-size-supporting);font-weight:var(--appadel-typography-weight-regular)}
.home-identity-card__team-action{flex:0 0 auto;color:var(--appadel-brand-primary);font-size:var(--appadel-typography-size-supporting);font-weight:var(--appadel-typography-weight-emphasis);line-height:1.2;text-decoration:none}
.home-identity-card__team-action:hover,
.home-identity-card__team-action:focus-visible{text-decoration:underline;text-underline-offset:2px;outline:none}

.home-captain-tips-card{grid-area:tips}
.home-hero{grid-area:hero}
.home-clas{grid-area:clas}
.home-recent-results{grid-area:recent}
.home-top3{grid-area:top}

.home-recent-results-list{
  display:grid;
  gap:calc(var(--appadel-spacing-content-gap) + var(--appadel-spacing-control-gap));
}

.home-hero{
  background:var(--card-secondary-bg);
}

.home-hero-content{
  display:grid;
  gap:14px;
}

.home-jornada-card{
  display:grid;
  gap:14px;
}

.home-jornada-top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.home-jornada-top-main{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}

.home-jornada-icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:999px;
  background:rgba(var(--club-primary-rgb), .10);
  border:1px solid rgba(var(--club-primary-rgb), .12);
  font-size:1.05rem;
  flex:0 0 42px;
}

.home-jornada-round{
  display:grid;
  gap:3px;
  min-width:0;
}

.home-jornada-label{
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--color-muted);
}

.home-jornada-round strong{
  font-size:1.5rem;
  line-height:1;
}

.home-jornada-inline-title{
  font-size:1.18rem;
  font-weight:900;
  line-height:1.1;
}

.home-jornada-inline-meta{
  color:var(--color-muted);
  font-size:.88rem;
  font-weight:700;
  line-height:1.2;
}

.home-jornada-score{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:84px;
  min-height:46px;
  padding:8px 14px;
  border-radius:999px;
  border:1px solid rgba(var(--club-primary-rgb), .16);
  background:rgba(var(--club-primary-rgb), .08);
  color:var(--color-primary);
  font-size:1.4rem;
  font-weight:900;
  line-height:1;
  flex:0 0 auto;
}

.home-jornada-score.is-filled{
  background:rgba(20,125,69,.12);
  color:var(--win);
}

.home-jornada-list{
  display:grid;
  gap:10px;
}

.home-jornada-list-row{
  display:block;
  min-width:0;
}

.home-jornada-list-label{
  font-size:.9rem;
  font-weight:900;
  color:var(--color-text);
}

.home-jornada-list-team{
  display:block;
  min-width:0;
  width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:1rem;
  font-weight:800;
  line-height:1.2;
  color:var(--color-text);
}

.home-jornada-team--ours{
  color:var(--color-primary);
}

.home-hero-actions{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-top:2px;
}

.home-hero-actions.cal-action-row{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  margin-top:4px;
}

.home-hero-actions.cal-action-row .cal-gestion-btn{
  min-height:40px;
  padding:7px 9px;
  border-radius:14px;
}

body[data-page="tips-capitan"] .tips-page-shell{
  display:grid;
  gap:18px;
}

.tips-page-head{
  display:grid;
  gap:12px;
}

.tips-page-head__copy{
  display:grid;
  gap:8px;
}

.tips-sections{
  display:grid;
  gap:18px;
}

.tips-section{
  display:grid;
  gap:12px;
}

.tips-section__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.tips-section__title{
  margin:0;
  font-size:1rem;
  font-weight:900;
  line-height:1.15;
}

.tips-card-grid{
  display:grid;
  gap:12px;
}

.tips-card{
  width:100%;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:12px;
  align-items:flex-start;
  padding:16px;
  border:1px solid var(--color-border);
  border-radius:18px;
  background:var(--color-surface-overlay-subtle);
  color:var(--color-text);
  text-align:left;
  box-shadow:var(--shadow-xs);
  transition:
    transform var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard);
}

.tips-card:hover,
.tips-card:focus{
  transform:translateY(-1px);
  border-color:rgba(var(--club-primary-rgb), .24);
  background:var(--color-surface-overlay);
  box-shadow:0 12px 24px rgba(17, 24, 39, .08);
}

.tips-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:14px;
  background:rgba(var(--club-primary-rgb), .10);
  border:1px solid rgba(var(--club-primary-rgb), .14);
  font-size:1.2rem;
  line-height:1;
}

.tips-card__body{
  display:grid;
  gap:6px;
  min-width:0;
}

.tips-card__title-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

.tips-card__title{
  font-size:.98rem;
  line-height:1.2;
}

.tips-card__description{
  margin:0;
  color:var(--color-muted);
  font-size:.9rem;
  font-weight:700;
  line-height:1.35;
}

.tips-card__cta{
  display:inline-flex;
  align-items:center;
  gap:6px;
  color:var(--color-primary);
  font-size:.82rem;
  font-weight:900;
}

.tips-card__cta::before{
  content:"▶";
  font-size:.72rem;
}

.tips-video-modal{
  position:fixed;
  inset:0;
  z-index:2600;
  display:grid;
  place-items:center;
  padding:18px;
}

.tips-video-modal[hidden]{
  display:none;
}

.tips-video-modal__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15, 23, 42, .58);
  backdrop-filter:blur(8px);
}

.tips-video-modal__dialog{
  position:relative;
  z-index:1;
  width:min(100%, 860px);
  display:grid;
  gap:14px;
  padding:16px;
  border:1px solid rgba(var(--club-primary-rgb), .18);
  border-radius:24px;
  background:var(--color-surface-overlay-strong);
  box-shadow:0 24px 48px rgba(15, 23, 42, .24);
}

.tips-video-modal__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.tips-video-modal__copy{
  display:grid;
  gap:4px;
  min-width:0;
}

.tips-video-modal__section{
  color:var(--color-muted);
  font-size:.76rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.tips-video-modal__title{
  margin:0;
  font-size:1.05rem;
  font-weight:900;
  line-height:1.15;
}

.tips-video-modal__player{
  width:100%;
  max-height:min(68vh, 560px);
  border-radius:18px;
  background:#000;
}

.tips-video-modal__fallback{
  display:grid;
  gap:10px;
  justify-items:start;
}

body.tips-video-modal-open{
  overflow:hidden;
}

/* Tips for Captains consumes the shared Product surfaces and card contract. */
body[data-page="tips-capitan"] {
  background:var(--appadel-surface-background);
  color:var(--appadel-text-primary);
}

body[data-page="tips-capitan"] .tips-page {
  max-width:960px;
  padding-bottom:max(var(--appadel-spacing-panel-gap), env(safe-area-inset-bottom));
}

body[data-page="tips-capitan"] .tips-page-shell {
  background:var(--appadel-surface-elevated);
  gap:var(--appadel-spacing-panel-gap);
  padding:var(--appadel-spacing-panel-gap);
}

body[data-page="tips-capitan"] .product-page-title {
  color:var(--appadel-brand-primary);
  font-size:var(--data-page-title-size);
  font-weight:900;
  letter-spacing:0;
  line-height:1.1;
  margin:0;
  text-align:left;
  text-transform:none;
}

body[data-page="tips-capitan"] .tips-page-subtitle {
  color:var(--appadel-text-secondary);
  font-weight:600;
  line-height:1.45;
  margin:0;
}

body[data-page="tips-capitan"] :is(.tips-sections, .tips-section) {
  gap:var(--appadel-spacing-content-gap);
}

body[data-page="tips-capitan"] .tips-sections {
  gap:var(--appadel-spacing-panel-gap);
}

body[data-page="tips-capitan"] .tips-section__title {
  font-size:1rem;
  font-weight:800;
  line-height:1.25;
}

body[data-page="tips-capitan"] .tips-card-grid {
  gap:var(--appadel-spacing-content-gap);
}

body[data-page="tips-capitan"] .tips-card.ds-panel {
  background:var(--appadel-surface-interactive);
  border-radius:var(--appadel-radius-panel);
  box-shadow:none;
  color:var(--appadel-text-primary);
  gap:var(--appadel-spacing-content-gap);
  min-height:72px;
  padding:var(--appadel-spacing-content-gap);
  transition:background-color var(--appadel-motion-fast), border-color var(--appadel-motion-fast);
}

body[data-page="tips-capitan"] .tips-card.ds-panel:is(:hover, :focus-visible) {
  background:var(--appadel-interaction-hover);
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
  transform:none;
}

body[data-page="tips-capitan"] .tips-card__icon {
  background:var(--appadel-surface-secondary);
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-control);
  color:var(--appadel-text-primary);
  flex:none;
}

body[data-page="tips-capitan"] .tips-card__icon--xlsx {
  color:var(--appadel-feedback-success);
  font-size:.72rem;
  font-weight:900;
}

body[data-page="tips-capitan"] .tips-card__title {
  color:var(--appadel-text-primary);
  font-weight:800;
}

body[data-page="tips-capitan"] .tips-card__description {
  color:var(--appadel-text-secondary);
  font-weight:600;
}

body[data-page="tips-capitan"] .tips-card__cta.ds-button {
  border:0;
  color:var(--appadel-brand-primary);
  justify-content:flex-start;
  min-height:0;
  padding:0;
  width:max-content;
}

body[data-page="tips-capitan"] .tips-card__cta.ds-button::before {
  color:inherit;
}

body[data-page="tips-capitan"] .tips-video-modal__dialog.ds-panel {
  background:var(--appadel-surface-elevated);
  box-shadow:var(--appadel-elevation-panel);
}

body[data-page="tips-capitan"] :is(.tips-video-modal__title, .tips-video-modal__fallback .app-subtitle) {
  color:var(--appadel-text-primary);
}

body[data-page="tips-capitan"] .tips-video-modal__section {
  color:var(--appadel-text-secondary);
}

@media (max-width:767.98px) {
  body[data-page="tips-capitan"] .tips-page {
    padding-inline:var(--appadel-spacing-content-gap);
  }

  body[data-page="tips-capitan"] .product-page-title {
    font-size:var(--data-page-title-size-mobile);
  }

  body[data-page="tips-capitan"] .tips-page-shell {
    padding:var(--appadel-spacing-content-gap);
  }

  body[data-page="tips-capitan"] .tips-card.ds-panel {
    grid-template-columns:42px minmax(0, 1fr);
  }
}

.home-clas-gap{
  padding:0;
  min-height:6px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:var(--color-muted);
  font-size:.62rem;
  font-weight:900;
  letter-spacing:.12em;
  line-height:1;
}

.home-summary-list{
  display:grid;
  gap:16px;
}

.home-clas-group{
  display:grid;
  gap:10px;
}

.home-clas-group-title{
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--color-muted);
}

.home-clas-group-list{
  display:grid;
  gap:10px;
}

.home-clas-row{
  display:grid;
  grid-template-columns:18px 28px minmax(0, 1fr) auto;
  align-items:center;
  gap:9px;
  min-height:42px;
  padding:10px 12px;
  border:1px solid var(--color-border);
  border-radius:12px;
  background:rgba(255,255,255,.82);
  transition:
    transform var(--motion-base) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard);
}

.home-clas-row.is-ours{
  border-color:var(--color-border);
  background:rgba(255,255,255,.82);
}

.home-clas-row.has-fcp-zone{
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

.home-clas-row.has-fcp-zone.is-ours{
  background:var(--appadel-surface-interactive);
  box-shadow:none;
}

.home-clas-pos{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  border-radius:999px;
  background:rgba(15,23,42,.06);
  font-size:.68rem;
  font-weight:900;
}

.home-clas-team{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-weight:800;
  font-size:.9rem;
}

.home-clas-row.is-ours .home-clas-pos,
.home-clas-row.is-ours .home-clas-team,
.home-clas-row.is-ours .home-clas-points{
  color:var(--color-primary);
}

.home-clas-points{
  font-weight:900;
  color:var(--color-primary);
  font-size:.88rem;
}

.home-player-card{
  display:flex;
  align-items:center;
  gap:9px;
  padding:12px 14px;
  border:1px solid var(--color-border);
  border-radius:14px;
  background:rgba(255,255,255,.86);
  transition:
    transform var(--motion-base) var(--ease-standard),
    border-color var(--motion-fast) var(--ease-standard),
    box-shadow var(--motion-fast) var(--ease-standard),
    background-color var(--motion-fast) var(--ease-standard);
}

.home-player-rank{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  border-radius:999px;
  background:var(--color-primary);
  color:#fff;
  font-weight:900;
  font-size:.72rem;
  flex:0 0 26px;
}

.home-player-copy{
  min-width:0;
  flex:1 1 auto;
}

.home-player-name{
  color:var(--color-text);
  font-weight:900;
  line-height:1.15;
  font-size:.92rem;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

.home-player-metric{
  margin-top:2px;
  color:var(--color-text);
  opacity:.72;
  font-size:.72rem;
  font-weight:700;
  white-space:nowrap;
}

.home-top3 .home-player-card{
  padding:10px 14px;
  gap:8px;
}

.home-clas-row:hover,
.home-player-card:hover{
  box-shadow:0 10px 20px rgba(17, 24, 39, .07);
}

.home-more-trigger{
  border:0;
}

.nav-ico-text{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:1.15rem;
  font-weight:900;
}

.home-jornada-skeleton,
.home-summary-skeleton,
.home-top-skeleton{
  display:grid;
  gap:10px;
}

@media (min-width:992px){
  .home-grid--foundation{
    grid-template-columns:minmax(0, 2fr) minmax(0, 3fr) !important;
    grid-template-areas:
      "identity identity"
      "hero clas"
      "recent top"
      ". photos"
      "tips tips" !important;
  }

  .home-grid--foundation.no-photos{
    grid-template-areas:
      "identity identity"
      "hero clas"
      "recent top"
      "tips tips" !important;
  }

  .home-photos-stage{aspect-ratio:4 / 3}
  .home-photos-image,
  .home-photos-image.is-loading,
  .home-photos-image.is-portrait{
    height:100%;
    object-fit:contain;
    object-position:center;
  }
}

@media (max-width:768px){
  .home-jornada-top{
    align-items:flex-start;
  }

  .home-jornada-top-main{
    width:100%;
  }

  .home-jornada-score{
    min-width:74px;
    min-height:42px;
    font-size:1.2rem;
  }

  .home-hero-actions.cal-action-row{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  .home-hero-actions.cal-action-row .cal-gestion-btn{
    min-height:38px;
    font-size:.74rem;
    padding:6px 8px;
  }

  .home-more-links{
    grid-template-columns:1fr;
  }
}

body[data-page="calendario"] .score-badge{
  min-width:82px;
  min-height:44px;
  padding:8px 16px;
  font-size:1.05rem;
  box-shadow:none;
}

body[data-page="calendario"] .mobile-results,
body[data-page="calendario"] .mcal-chips{
  margin-top:10px;
  padding-top:12px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
}

body[data-page="calendario"] .match-chip{
  min-height:36px;
  padding:7px 11px;
  border-radius:14px;
  background:rgba(255,255,255,.96);
}

body[data-page="calendario"] .cal-action-row{
  margin-top:14px;
  gap:8px;
  display:flex;
  flex-wrap:nowrap;
  align-items:stretch;
}

body[data-page="calendario"] .cal-action-row .cal-gestion-btn,
body[data-page="calendario"] .cal-action-row .cal-detail-toggle{
  flex:1 1 0;
  min-height:36px;
  padding:6px 6px;
  font-size:.74rem;
  font-weight:800;
  border-radius:12px;
}

body[data-page="calendario"] .cal-action-row .cal-gestion-btn{
  width:100%;
  gap:3px;
}

body[data-page="calendario"] .cal-action-row .cal-detail-toggle-wrap{
  flex:1 1 0;
  min-width:0;
}

body[data-page="calendario"] .cal-action-row .cal-btn-ico{
  font-size:.82em;
}

body[data-page="calendario"] .cal-action-row .cal-btn-text{
  overflow:hidden;
  text-overflow:ellipsis;
}

body[data-page="calendario"] .cal-detail-block{
  background:rgba(var(--club-primary-rgb), .04);
  border:1px solid rgba(var(--club-primary-rgb), .08);
  border-radius:16px;
  padding:12px;
}

body[data-page="calendario"] .mcal-list{
  display:grid;
  gap:14px;
}

body[data-page="calendario"] .mcal-card{
  position:relative;
  padding:16px 16px 14px;
  border-radius:22px;
  border:1px solid rgba(var(--club-primary-rgb), .12);
  background:var(--card-secondary-bg) !important;
  box-shadow:var(--shadow-sm);
  min-width:0;
  overflow:hidden;
}

body[data-page="calendario"] .mcal-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:3px;
  border-radius:22px 22px 0 0;
  background:linear-gradient(90deg, rgba(var(--club-primary-rgb), .18), rgba(var(--club-primary-rgb), .72), rgba(var(--club-primary-rgb), .18));
}

body[data-page="calendario"] .mcal-line1{
  align-items:center;
  gap:12px;
  margin-bottom:12px;
  min-width:0;
}

body[data-page="calendario"] .mcal-head-main{
  gap:5px;
}

body[data-page="calendario"] .mcal-jornada-row{
  gap:10px;
}

body[data-page="calendario"] .mcal-venue-ico{
  width:34px;
  height:34px;
  background:linear-gradient(135deg, rgba(var(--club-primary-rgb), .16), rgba(var(--club-primary-rgb), .08));
  box-shadow:none;
}

body[data-page="calendario"] .mcal-pill.cal-jornada-title{
  font-size:1.02rem;
  font-weight:900;
}

body[data-page="calendario"] .mcal-meta{
  font-size:.84rem;
  font-weight:700;
  color:var(--color-muted);
}

body[data-page="calendario"] .mcal-line2{
  margin-bottom:12px;
  min-width:0;
}

body[data-page="calendario"] .mcal-teams-block{
  gap:10px;
}

body[data-page="calendario"] .mcal-team-row .team-name{
  font-size:1rem;
  font-weight:800;
  line-height:1.25;
}

body[data-page="calendario"] .mcal-actions-wrap{
  min-width:0;
  max-width:100%;
  flex:1 1 auto;
}

body[data-page="calendario"] .mcal-actions-wrap .cal-action-row{
  min-width:0;
  width:100%;
}

body[data-page="calendario"] .mcal-line3-actions{
  margin-top:2px;
  margin-bottom:0;
}

body[data-page="calendario"] .mcal-card .cal-action-row{
  margin-top:0;
}

body[data-page="calendario"] .mcal-card .cal-detail-block{
  margin-top:12px;
}

@media (max-width:768px){
  body[data-page="calendario"] .mcal-card{
    padding:15px 14px 14px;
    border-radius:20px;
  }

  body[data-page="calendario"] .mcal-line1{
    align-items:flex-start;
  }

  body[data-page="calendario"] .mcal-score-wrap{
    margin-left:0;
  }

  body[data-page="calendario"] .mcal-line2{
    gap:10px;
  }

  body[data-page="calendario"] .mcal-card .cal-action-row{
    display:flex;
    flex-wrap:nowrap;
  }

  body[data-page="calendario"] .mcal-card .cal-action-row .cal-gestion-btn,
  body[data-page="calendario"] .mcal-card .cal-action-row .cal-detail-toggle{
    min-height:34px;
    font-size:.7rem;
    padding:5px 5px;
  }

  body[data-page="calendario"] .mcal-card .cal-action-row .cal-gestion-btn-reopen{
    flex:0.84 1 0;
    padding-inline:4px;
    font-size:.66rem;
  }

  body[data-page="calendario"] .mcal-card .match-chip{
    border-radius:12px;
  }
}

@media (min-width:1024px){
  :root{
    --app-data-desktop-font-size:15px;
    --app-data-desktop-font-weight:500;
    --app-data-desktop-line-height:1.2;
  }

  body[data-page="clasificacion"] .clas-desktop-cell,
  body[data-page="estadisticas"] .stats-table tbody td,
  body[data-page="jugadores"] .player-mgmt-table tbody td{
    font-size:var(--app-data-desktop-font-size);
    font-weight:var(--app-data-desktop-font-weight);
    line-height:var(--app-data-desktop-line-height);
  }

  body[data-page="jugadores"] .player-mgmt-table th:nth-child(3),
  body[data-page="jugadores"] .player-mgmt-table td:nth-child(3){
    width:54px;
    text-align:center;
  }

  body[data-page="jugadores"] .player-mgmt-table th:nth-child(4),
  body[data-page="jugadores"] .player-mgmt-table td:nth-child(4){
    width:88px;
    text-align:center;
  }

  body[data-page="jugadores"] .player-mgmt-table th:nth-child(5),
  body[data-page="jugadores"] .player-mgmt-table td:nth-child(5){
    width:108px;
    text-align:center;
  }

  body[data-page="jugadores"] .player-mgmt-table th:last-child,
  body[data-page="jugadores"] .player-mgmt-table td:last-child{
    width:156px;
  }

  body[data-page="jugadores"] .player-mgmt-table td:last-child{
    padding-left:6px;
    padding-right:6px;
  }

  body[data-page="jugadores"] .player-mgmt-actions{
    gap:4px;
    flex-wrap:nowrap;
    justify-content:center;
  }
}

.stats-order-note {
  font-size: 0.75rem;
  color: var(--color-text-secondary);
  margin: 6px 0 8px 0;
  line-height: 1.25;
}

body[data-page="scouting"] .scouting-page{
  max-width:1320px;
}

body[data-page="scouting"] .scouting-shell{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  gap:12px;
  align-items:start;
}

body[data-page="scouting"].is-scouting-syncing .scouting-panel{
  opacity:.64;
}

body[data-page="scouting"].is-scouting-syncing .scouting-sync-overview{
  position:relative;
  opacity:1;
  z-index:6;
}

body[data-page="scouting"] .scouting-main{
  display:grid;
  gap:12px;
  min-width:0;
}

body[data-page="scouting"] :is(.scouting-main, .scouting-top-grid) > .product-content-panel{
  margin-block-end:0;
}

body[data-page="scouting"] .scouting-panel{
  min-width:0;
}

body[data-page="scouting"] .scouting-subsection{
  display:grid;
  gap:10px;
  min-width:0;
  margin-top:16px;
}

body[data-page="scouting"] .scouting-subsection:not(.product-content-panel):not(.ds-chart-card):not(.ds-insight-card):not(.gameplan-team-comparison){
  padding-top:14px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
}

body[data-page="scouting"] .scouting-subsection-title{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:8px;
  margin:0;
}

body[data-page="scouting"] .scouting-subsection-title:not(.ds-section-header__title){
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-subsection-title span{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-subsection-copy:not(.product-content-text){
  margin:0;
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-detail-block{
  min-width:0;
  margin-top:4px;
}

body[data-page="scouting"] .scouting-more-results{
  grid-column:1 / -1;
}

body[data-page="scouting"] .scouting-detail-block > summary:not(.ds-button),
body[data-page="scouting"] .scouting-pair-result-group > summary{
  cursor:pointer;
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-detail-block > summary:not(.ds-button){
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 10px;
  border:1px solid rgba(var(--club-primary-rgb), .14);
  border-radius:8px;
  background:rgba(var(--club-primary-rgb), .05);
}

body[data-page="scouting"] .scouting-sidebar{
  display:grid;
  gap:10px;
  align-content:start;
  background:rgba(255,255,255,.72);
}

body[data-page="scouting"] .scouting-sync-overview{
  display:grid;
  gap:8px;
  align-items:start;
}

body[data-page="scouting"] .scouting-sync-card{
  min-width:0;
}

body[data-page="scouting"] .scouting-sync-summary{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:8px 14px;
  align-items:center;
  cursor:pointer;
  list-style-position:outside;
}

body[data-page="scouting"] .scouting-sync-summary::-webkit-details-marker{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-sync-updated{
  color:var(--color-muted);
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-sync-updated strong{
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-sync-primary{
  justify-self:start;
}

body[data-page="scouting"] .scouting-sync-primary[hidden]{
  display:none;
}

body[data-page="scouting"] .scouting-sync-expanded{
  display:grid;
  gap:12px;
  margin-top:14px;
  padding-top:12px;
  border-top:1px solid rgba(var(--club-primary-rgb), .10);
}

body[data-page="scouting"] .scouting-sync-status-list{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
  margin:0;
}

body[data-page="scouting"] .scouting-sync-status-list > div{
  display:grid;
  gap:4px;
  min-width:0;
  padding:9px 10px;
  border:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:8px;
  background:var(--color-surface-overlay);
}

body[data-page="scouting"] .scouting-sync-status-list dt{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-sync-status-list dd{
  display:flex;
  align-items:center;
  gap:6px;
  min-width:0;
  margin:0;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-block{
  display:grid;
  gap:14px;
}

body[data-page="scouting"] .scouting-title,
body[data-page="scouting"] .scouting-section-title{
  margin:0;
}

body[data-page="scouting"] .scouting-section-title span{
}

body[data-page="scouting"] .scouting-muted{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-team-name{
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-checks{
  display:grid;
  gap:9px;
  padding-block:4px 12px;
  border-bottom:1px solid rgba(var(--club-primary-rgb), .12);
}

body[data-page="scouting"] .scouting-checks > div{
  display:flex;
  align-items:center;
  gap:8px;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-dot{
  width:18px;
  height:18px;
  border-radius:999px;
  background:var(--color-neutral-soft);
  border:1px solid var(--color-border);
  flex:0 0 18px;
}

body[data-page="scouting"] .scouting-dot[data-state="ok"]{
  background:var(--color-success);
  border-color:var(--color-success);
  box-shadow:inset 0 0 0 4px var(--color-success-soft);
}

body[data-page="scouting"] .scouting-meta-list{
  display:grid;
  gap:8px;
  margin:0;
}

body[data-page="scouting"] .scouting-meta-list > div{
  display:flex;
  justify-content:space-between;
  gap:10px;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-meta-list dt{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-meta-list dd{
  margin:0;
}

body[data-page="scouting"] .scouting-actions{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:8px;
}

body[data-page="scouting"] .scouting-actions .btn{
  min-height:34px;
  padding:6px 8px;
  border-radius:8px;
}

body[data-page="scouting"] .scouting-top-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}

body[data-page="scouting"].is-scouting-pending .scouting-top-grid,
body[data-page="scouting"].is-scouting-pending .scouting-matches-panel,
body[data-page="scouting"].is-scouting-pending .scouting-players-panel,
body[data-page="scouting"].is-scouting-pending .scouting-pair-performance-panel,
body[data-page="scouting"].is-scouting-pending .scouting-analysis-panel,
body[data-page="scouting"].is-scouting-empty .scouting-top-grid,
body[data-page="scouting"].is-scouting-empty .scouting-matches-panel,
body[data-page="scouting"].is-scouting-empty .scouting-players-panel,
body[data-page="scouting"].is-scouting-empty .scouting-pair-performance-panel,
body[data-page="scouting"].is-scouting-empty .scouting-analysis-panel{
  display:none;
}

body[data-page="scouting"] .scouting-rival-picker{
  display:grid;
  align-content:start;
  gap:16px;
}

body[data-page="scouting"] .scouting-rival-picker .form-select{
  width:100%;
}

body[data-page="scouting"] .scouting-selector-preview{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-selector-preview span:last-child{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-section-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}

body[data-page="scouting"] .scouting-rival-summary-body{
  display:grid;
  gap:14px;
}

body[data-page="scouting"] .scouting-rival-card,
body[data-page="scouting"] .scouting-summary-headline{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
}

body[data-page="scouting"] .scouting-crest{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:58px;
  height:58px;
  border-radius:12px;
  border:2px solid var(--appadel-brand-primary);
  background:var(--appadel-surface-interactive);
  color:var(--appadel-brand-primary);
  flex:0 0 58px;
}

body[data-page="scouting"] .scouting-crest.is-small{
  width:42px;
  height:42px;
  flex-basis:42px;
  border-radius:10px;
}

body[data-page="scouting"] .scouting-crest.is-large{
  width:64px;
  height:64px;
  flex-basis:64px;
}

body[data-page="scouting"] .scouting-crest.is-muted{
  border-color:var(--appadel-border-subtle);
  background:var(--appadel-surface-interactive);
  color:var(--appadel-text-secondary);
}

body[data-page="scouting"] .scouting-crest.has-logo{
  overflow:hidden;
  border-color:var(--appadel-border-subtle);
  background:var(--appadel-surface-interactive);
}

body[data-page="scouting"] .scouting-crest.has-logo img{
  width:100%;
  height:100%;
  object-fit:contain;
  padding:4px;
}

body[data-page="scouting"] .scouting-crest:not(.has-logo)::before{
  content:attr(data-initials);
}

body[data-page="scouting"] .scouting-rival-copy{
  display:grid;
  gap:5px;
  min-width:0;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-rival-copy strong{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-form{
  display:grid;
  gap:10px;
  min-width:0;
  padding-top:12px;
  border-top:1px solid rgba(var(--club-primary-rgb), .14);
}

body[data-page="scouting"] .scouting-form-grid{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
}

body[data-page="scouting"] .scouting-form-chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:28px;
  height:28px;
  padding:0 7px;
  border-radius:5px;
  color:var(--color-muted);
  background:var(--color-neutral-soft);
}

body[data-page="scouting"] .scouting-form-chip.is-win{
  color:var(--color-success);
  background:var(--color-success-soft);
  border:1px solid var(--color-success-border);
}

body[data-page="scouting"] .scouting-form-chip.is-loss{
  color:var(--color-danger);
  background:var(--color-danger-soft);
  border:1px solid var(--color-danger-border);
}

body[data-page="scouting"] .scouting-form-chip.is-rest{
  color:var(--color-muted);
  background:rgba(107,114,128,.10);
  border:1px solid rgba(107,114,128,.22);
}

body[data-page="scouting"] .scouting-trajectory-chip{
  display:grid;
  gap:1px;
  height:auto;
  min-width:34px;
  padding:3px 6px 5px;
  place-items:center;
  text-align:center;
}

body[data-page="scouting"] .scouting-trajectory-chip small{
  color:inherit;
  display:block;
  width:100%;
  text-align:center;
}

body[data-page="scouting"] .scouting-trajectory-chip strong{
  color:inherit;
}

body[data-page="scouting"] .scouting-kpi-grid,
body[data-page="scouting"] .scouting-pair-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
  margin-top:14px;
}

body[data-page="scouting"] .scouting-summary-kpis{
  display:grid;
  grid-template-columns:repeat(6, minmax(0, 1fr));
  gap:10px;
}

body[data-page="scouting"] .scouting-pair-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr));
}

body[data-page="scouting"] .scouting-pair-stats{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3px 12px;
  width:100%;
  text-align:center;
}

body[data-page="scouting"] .scouting-match-strip{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
}

body[data-page="scouting"] .scouting-match-strip--expanded{
  margin-top:10px;
}

body[data-page="scouting"] .pd-match-result-summary{
  position:relative;
  display:grid;
  gap:8px;
  text-align:center;
}

body[data-page="scouting"] .pd-match-result-summary__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
}

body[data-page="scouting"] .pd-match-result-summary__meta span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-match-teams{
  display:grid;
  gap:2px;
  min-width:0;
  color:var(--color-text);
  text-align:left;
}

body[data-page="scouting"] .pd-match-result-summary__teams{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
  color:var(--color-text);
  text-align:center;
}

body[data-page="scouting"] .pd-match-result-summary__teams span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-match-teams span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-match-teams em{
  color:var(--color-muted);
  font-style:normal;
}

body[data-page="scouting"] .pd-match-result-summary__score{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  align-items:center;
  gap:12px;
  color:var(--color-text);
}

body[data-page="scouting"] .pd-match-result-summary__score strong{
  min-width:64px;
  text-align:center;
}

body[data-page="scouting"] .pd-match-result-summary__team-mark{
  display:grid;
  grid-template-rows:auto auto;
  justify-items:center;
  gap:4px;
  min-width:0;
}

body[data-page="scouting"] .pd-match-result-summary__outcome-placeholder{
  display:block;
  min-height:1em;
}

body[data-page="scouting"] .scouting-match-chips{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  color:var(--color-muted);
}

body[data-page="scouting"] .pd-match-result-summary__details{
  padding-top:8px;
  border-top:1px solid rgba(var(--club-primary-rgb), .1);
  text-align:left;
}

body[data-page="scouting"] .pd-match-result-summary__details summary{
  cursor:pointer;
  color:var(--color-primary);
}

body[data-page="scouting"] .pd-match-result-summary__sheet{
  display:grid;
  gap:8px;
  margin-top:8px;
}

body[data-page="scouting"] .pd-match-result-summary__pair-result{
  display:grid;
  gap:4px;
  padding:7px 8px;
  border-radius:8px;
  background:rgba(var(--club-primary-rgb), .04);
}

body[data-page="scouting"] .pd-match-result-summary__pair-header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
  color:var(--color-primary);
}

body[data-page="scouting"] .pd-match-result-summary__pair-header.scouting-acta-title--compact{
  justify-content:flex-end;
}

body[data-page="scouting"] .pd-match-result-summary__pair-header span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-acta-players{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  gap:6px;
  align-items:center;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-acta-players strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-acta-players strong.is-analyzed{
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-acta-players span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-acta-players .scouting-acta-opponent{
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-acta-result{
  display:flex;
  flex-wrap:wrap;
  gap:6px 10px;
  justify-content:flex-start;
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-acta-result em{
  color:var(--color-text);
  font-style:normal;
}

body[data-page="scouting"] .scouting-acta-result .sets{
  display:inline-flex;
  flex-wrap:wrap;
  gap:4px;
}

body[data-page="scouting"] .scouting-acta-result .set{
  min-width:34px;
  padding:2px 6px;
  border-radius:6px;
  background:rgba(var(--club-primary-rgb), .08);
  color:var(--color-muted);
  text-align:center;
}

body[data-page="scouting"] .scouting-pair-side-lines{
  display:grid;
  gap:4px;
  min-width:0;
}

body[data-page="scouting"] .scouting-pair-side-line{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  gap:8px;
  align-items:center;
  min-width:0;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-pair-side-line.is-analyzed{
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-pair-side-names{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  gap:5px;
  align-items:center;
  min-width:0;
}

body[data-page="scouting"] .scouting-pair-side-names span,
body[data-page="scouting"] .scouting-pair-side-names strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-pair-side-names span{
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-pair-side-names strong.is-analyzed-pair{
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-pair-side-names em{
  color:var(--color-muted);
  font-style:normal;
}

body[data-page="scouting"] .scouting-pair-side-scores{
  display:grid;
  grid-template-columns:repeat(3, 18px);
  gap:2px;
  justify-content:end;
  color:var(--color-text);
  font-variant-numeric:tabular-nums;
}

body[data-page="scouting"] .scouting-pair-side-scores span{
  min-width:0;
  text-align:center;
}

body[data-page="scouting"] .scouting-pair-results{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:12px;
}

body[data-page="scouting"] .pd-gameplan-pair-results--desktop{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
}

body[data-page="scouting"] .pd-gameplan-pair-results--mobile{
  display:none;
}

body[data-page="scouting"] .pd-gameplan-pair-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
}

body[data-page="scouting"] .pd-gameplan-pair-tabs__tab{
  min-height:32px;
  padding:6px 10px;
  border:1px solid rgba(var(--club-primary-rgb), .14);
  border-radius:8px;
  background:rgba(var(--club-primary-rgb), .05);
  color:var(--color-primary);
}

body[data-page="scouting"] .pd-gameplan-pair-tabs__tab.is-active{
  background:var(--appadel-brand-primary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] .pd-gameplan-pair-tabs__tab.is-active:is(:hover, :focus-visible){
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] .pd-gameplan-pair-tabs__panel{
  min-width:0;
}

body[data-page="scouting"] .pd-gameplan-pair-tabs__panel[hidden]{
  display:none;
}

body[data-page="scouting"] .pd-gameplan-pair-results__group{
  display:grid;
  gap:8px;
  min-width:0;
  padding:10px;
}

body[data-page="scouting"] .pd-gameplan-pair-results__group h3{
  margin:0;
}

body[data-page="scouting"] .pd-gameplan-pair-results__list{
  display:grid;
  gap:8px;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card{
  display:grid;
  gap:7px;
  min-width:0;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--compact{
  gap:0;
  padding:7px 8px;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail{
  gap:5px;
  padding:8px;
}

body[data-page="scouting"] .scouting-pair-result-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-width:0;
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-pair-outcome{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  min-width:26px;
  height:24px;
  border-radius:7px;
}

body[data-page="scouting"] .scouting-pair-outcome.is-win{
  background:var(--color-success-soft);
  color:var(--color-success);
}

body[data-page="scouting"] .scouting-pair-outcome.is-loss{
  background:var(--color-danger-soft);
  color:var(--color-danger);
}

body[data-page="scouting"] .scouting-pair-outcome.is-pending{
  background:rgba(107,114,128,.10);
  color:var(--color-muted);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .pd-gameplan-pair-result-card__teams{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  align-items:center;
  gap:5px;
  min-width:0;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .pd-gameplan-pair-result-card__teams span{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  text-align:center;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .pd-gameplan-pair-result-card__teams em{
  flex:0 0 auto;
  color:var(--color-muted);
  font-style:normal;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card__body{
  display:grid;
  grid-template-columns:minmax(0, 1fr);
  align-items:center;
  gap:6px;
  min-width:0;
}

body[data-page="scouting"] .scouting-pair-position{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:24px;
  border-radius:7px;
  background:rgba(var(--club-primary-rgb), .08);
  color:var(--color-primary);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  align-items:center;
  gap:5px;
  min-width:0;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players span,
body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players strong{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players small{
  color:var(--color-muted);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players span{
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players strong.is-analyzed-pair{
  color:var(--color-primary);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players em{
  flex:0 0 auto;
  color:var(--color-muted);
  font-style:normal;
}

body[data-page="scouting"] .scouting-pair-score{
  flex:0 0 auto;
  color:var(--color-text);
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-pair-result-line{
  display:grid;
  grid-template-columns:34px minmax(0, 1fr) auto 24px;
  gap:8px;
  align-items:center;
  min-width:0;
}

body[data-page="scouting"] .scouting-pair-result-line span{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-pair-result-line strong{
  min-width:0;
  overflow:hidden;
  color:var(--color-text);
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-pair-result-line em{
  color:var(--color-muted);
  font-style:normal;
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-pair-result-line b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:24px;
  min-height:24px;
  border-radius:999px;
}

body[data-page="scouting"] .scouting-pair-result-line b.is-win{
  color:var(--color-success);
  background:var(--win-bg);
}

body[data-page="scouting"] .scouting-pair-result-line b.is-loss{
  color:var(--color-danger);
  background:var(--lose-bg);
}

body[data-page="scouting"] .scouting-pair-result-line b.is-pending{
  color:var(--color-muted);
  background:rgba(var(--club-primary-rgb), .06);
}

body[data-page="scouting"] .scouting-pair-result-meta,
body[data-page="scouting"] .scouting-pair-result-teams,
body[data-page="scouting"] .scouting-pair-result-players{
  display:flex;
  flex-wrap:wrap;
  gap:5px 8px;
  align-items:center;
  min-width:0;
}

body[data-page="scouting"] .scouting-pair-result-meta{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-pair-result-meta em{
  margin-left:auto;
  padding:2px 7px;
  border-radius:999px;
  color:var(--color-text);
  background:var(--color-neutral-soft);
  font-style:normal;
}

body[data-page="scouting"] .scouting-pair-result-teams{
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-pair-result-players span{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-pair-result-players{
}

body[data-page="scouting"] .scouting-pair-result-players strong{
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-pair-result-players .scouting-acta-opponent{
  color:var(--color-text);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players span{
  color:var(--color-text);
}

body[data-page="scouting"] .pd-gameplan-pair-result-card--detail .scouting-pair-result-players strong.is-analyzed-pair{
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-two-col{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

body[data-page="scouting"] .scouting-chart-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

body[data-page="scouting"] .scouting-player-kpi-list{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:10px;
  margin-top:14px;
}

body[data-page="scouting"] .scouting-player-rank{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:999px;
  color:var(--color-text-inverse);
  background:var(--color-primary);
}

body[data-page="scouting"] .scouting-tactical-grid{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

body[data-page="scouting"] .scouting-insight-list ul{
  display:grid;
  gap:8px;
  margin:12px 0 0;
  padding:0;
  list-style:none;
}

body[data-page="scouting"] .scouting-insight-list li{
  position:relative;
  padding:8px 10px 8px 24px;
  border:1px solid rgba(var(--club-primary-rgb), .10);
  border-radius:8px;
  color:var(--color-text);
  background:var(--color-surface-overlay);
}

body[data-page="scouting"] .scouting-insight-list li::before{
  content:"";
  position:absolute;
  left:10px;
  top:14px;
  width:6px;
  height:6px;
  border-radius:999px;
  background:var(--color-primary);
}

body[data-page="scouting"] .scouting-insight-sections{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:0 var(--appadel-spacing-panel-gap);
  margin-top:12px;
}

body[data-page="scouting"] .scouting-comparison{
  display:grid;
  gap:6px;
  margin-top:12px;
}

body[data-page="scouting"] .scouting-comparison-head,
body[data-page="scouting"] .scouting-comparison-row{
  display:grid;
  grid-template-columns:minmax(54px, .8fr) repeat(3, minmax(0, 1fr));
  gap:6px;
  align-items:center;
}

body[data-page="scouting"] .pd-gameplan-team-comparison__row{
  padding:7px 8px;
  border-bottom:1px solid var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] :is(.pd-gameplan-team-comparison__label, .pd-gameplan-team-comparison__value, .pd-gameplan-team-comparison__status){
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .pd-gameplan-team-comparison__status{
  justify-self:start;
  padding:2px 6px;
  border-radius:999px;
  color:var(--appadel-text-secondary);
  background:var(--appadel-surface-interactive);
  font-style:normal;
}

body[data-page="scouting"] .pd-gameplan-team-comparison__status.is-por-encima{
  color:var(--appadel-feedback-success);
  background:var(--color-success-soft);
}

body[data-page="scouting"] .pd-gameplan-team-comparison__status.is-por-debajo{
  color:var(--appadel-feedback-danger);
  background:var(--color-danger-soft);
}

body[data-page="scouting"] .pd-gameplan-team-comparison__status.is-igual{
  color:var(--appadel-text-secondary);
  background:var(--appadel-surface-interactive);
}

body[data-page="scouting"] .pd-gameplan-team-comparison__note{
  margin-top:2px;
}

body[data-page="scouting"] .scouting-bar-chart{
  display:grid;
  gap:9px;
  margin-top:12px;
}

body[data-page="scouting"] .ds-chart-card__data-row{
  display:grid;
  gap:5px;
  min-width:0;
}

body[data-page="scouting"] .ds-chart-card__data-label{
}

body[data-page="scouting"] .ds-chart-card__track{
  height:8px;
}

body[data-page="scouting"] .scouting-ranking-strip{
  display:flex;
  gap:10px;
  min-width:0;
  margin-top:12px;
  overflow-x:auto;
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
  scrollbar-width:thin;
}

body[data-page="scouting"] .scouting-ranking-card{
  display:grid;
  flex:0 0 min(260px, 88vw);
  gap:10px;
  min-height:124px;
  padding:12px;
  border:1px solid rgba(var(--club-primary-rgb), .12);
  border-radius:8px;
  background:var(--color-surface-overlay);
  scroll-snap-align:start;
}

body[data-page="scouting"] .scouting-rank-row{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap:10px;
  align-items:center;
}

body[data-page="scouting"] .scouting-rank-row strong{
  color:var(--color-info);
}

body[data-page="scouting"] .scouting-rank-row span{
  display:-webkit-box;
  overflow:hidden;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  white-space:normal;
  color:var(--color-text);
}

body[data-page="scouting"] .scouting-rank-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

body[data-page="scouting"] .scouting-rank-tags span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 8px;
  border-radius:999px;
  color:var(--color-muted);
  background:rgba(var(--club-primary-rgb), .06);
  white-space:nowrap;
}

body[data-page="scouting"] .scouting-rank-metrics{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:10px;
  padding-top:10px;
  border-top:1px solid rgba(var(--club-primary-rgb), .12);
  text-align:center;
}

body[data-page="scouting"] .scouting-rank-metrics strong{
  display:block;
  color:var(--color-primary);
}

body[data-page="scouting"] .scouting-rank-metrics span{
  color:var(--color-muted);
}

body[data-page="scouting"] .scouting-table-wrap{
  margin-top:10px;
}

body[data-page="scouting"] .scouting-bar-pair-label{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto minmax(0, 1fr);
  align-items:center;
  gap:var(--appadel-spacing-inline-tight);
  min-width:0;
}

body[data-page="scouting"] .scouting-bar-pair-player{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body[data-page="scouting"] .management-data-table__sort .sort-ind{
  display:inline-block;
  min-width:.75em;
  color:inherit;
}

@media (min-width:1100px){
  body[data-page="scouting"] .scouting-main{
    grid-template-columns:repeat(12, minmax(0, 1fr));
  }

  body[data-page="scouting"] .scouting-top-grid,
  body[data-page="scouting"] .scouting-sync-overview,
  body[data-page="scouting"] .scouting-chart-grid,
  body[data-page="scouting"] .scouting-tactical-grid,
  body[data-page="scouting"] .scouting-two-col{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-kpi-panel{
    grid-column:1 / span 6;
  }

  body[data-page="scouting"] .scouting-pair-performance-panel{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-pair-results-panel{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-players-panel{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-matches-panel{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-matches-panel .scouting-match-strip{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  body[data-page="scouting"] .scouting-analysis-panel{
    grid-column:1 / -1;
  }
}

@media (max-width:991px){
  body[data-page="scouting"] .scouting-shell{
    grid-template-columns:1fr;
  }

  body[data-page="scouting"] .scouting-sidebar{
    position:static;
  }

  body[data-page="scouting"] .scouting-top-grid,
  body[data-page="scouting"] .scouting-rival-summary-body,
  body[data-page="scouting"] .scouting-chart-grid,
  body[data-page="scouting"] .scouting-tactical-grid,
  body[data-page="scouting"] .scouting-insight-sections,
  body[data-page="scouting"] .scouting-two-col,
  body[data-page="scouting"] .scouting-pair-results{
    grid-template-columns:1fr;
  }

  body[data-page="scouting"] .pd-gameplan-pair-results--desktop{
    display:none;
  }

  body[data-page="scouting"] .pd-gameplan-pair-results--mobile{
    display:grid;
    gap:8px;
  }

  body[data-page="scouting"] .scouting-form{
    padding-left:0;
    border-left:0;
    padding-top:12px;
    border-top:1px solid rgba(var(--club-primary-rgb), .12);
  }
}

@media (max-width:768px){
  body[data-page="scouting"] .scouting-sync-overview.product-content-panel.ds-panel{
    gap:var(--appadel-spacing-control-gap);
    padding:var(--appadel-spacing-content-gap);
  }

  body[data-page="scouting"] .scouting-sync-overview .scouting-sync-line{
    margin-top:calc(var(--appadel-spacing-control-gap) * -0.25);
  }

  body[data-page="scouting"] .scouting-sync-primary{
    width:100%;
  }

  body[data-page="scouting"] .scouting-detail-block > summary.ds-button{
    width:100%;
  }

  body[data-page="scouting"] .scouting-page{
    margin-top:12px !important;
  }

  body[data-page="scouting"] .scouting-shell,
  body[data-page="scouting"] .scouting-main{
    gap:10px;
  }

  body[data-page="scouting"] .scouting-sidebar{
    gap:10px;
  }

  body[data-page="scouting"] .scouting-title,
  body[data-page="scouting"] .scouting-section-title{
  }

  body[data-page="scouting"] .scouting-checks{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:6px;
  }

  body[data-page="scouting"] .scouting-checks > div{
    gap:5px;
  }

  body[data-page="scouting"] .scouting-dot{
    width:14px;
    height:14px;
    flex-basis:14px;
  }

  body[data-page="scouting"] .scouting-meta-list{
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:6px;
  }

  body[data-page="scouting"] .scouting-meta-list > div{
    display:grid;
    justify-items:start;
    gap:2px;
  }

  body[data-page="scouting"] .scouting-actions{
    grid-template-columns:repeat(3, minmax(0, 1fr));
  }

  body[data-page="scouting"] .scouting-actions .btn{
    min-height:38px;
    padding-inline:5px;
  }

  body[data-page="scouting"] .scouting-sync-summary{
    grid-template-columns:1fr;
  }

  body[data-page="scouting"] .scouting-sync-updated{
    white-space:normal;
  }

  body[data-page="scouting"] .scouting-sync-status-list{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }

  body[data-page="scouting"] .scouting-section-head{
    align-items:flex-start;
    margin-bottom:10px;
  }

  body[data-page="scouting"] .scouting-rival-card{
    align-items:flex-start;
  }

  body[data-page="scouting"] .scouting-crest{
    width:48px;
    height:48px;
    flex-basis:48px;
  }

  body[data-page="scouting"] .scouting-kpi-grid,
  body[data-page="scouting"] .scouting-summary-kpis{
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:8px;
    margin-top:10px;
  }

  body[data-page="scouting"] .scouting-match-strip{
    display:flex;
    gap:8px;
    margin-top:10px;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scroll-snap-type:x proximity;
  }

  body[data-page="scouting"] .scouting-matches-panel > .scouting-match-strip{
    display:grid;
    grid-template-columns:1fr;
    overflow:visible;
  }

  body[data-page="scouting"] .scouting-pair-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:6px;
    margin-top:10px;
    overflow:visible;
  }

  body[data-page="scouting"] .scouting-pair-result-body{
    grid-template-columns:minmax(0, 1fr);
  }

  body[data-page="scouting"] .scouting-pair-score{
    grid-column:1;
    justify-self:start;
  }

  body[data-page="scouting"] .scouting-pair-side-line{
    gap:6px;
  }

  body[data-page="scouting"] .scouting-pair-side-names{
    gap:4px;
  }

  body[data-page="scouting"] .scouting-pair-side-scores{
    grid-template-columns:repeat(3, 16px);
  }

  body[data-page="scouting"] .pd-match-result-summary{
    flex:0 0 270px;
    align-items:center;
    text-align:left;
    scroll-snap-align:start;
  }

  body[data-page="scouting"] .pd-match-result-summary__score{
    grid-column:1 / -1;
  }

  body[data-page="scouting"] .scouting-ranking-card{
    flex-basis:240px;
    min-height:0;
    padding:12px;
  }

  body[data-page="scouting"] #scoutingBestPlayersChart .scouting-bar-row:nth-child(n+6){
    display:none;
  }
}

@media (max-width:575.98px){
}

.home-top-order-note {
  margin-top: 8px;
}

/* DS-12.1: scoped Product visual alignment; legacy layout remains authoritative. */
.home-grid--foundation > :is(.card-soft, .app-card),
body[data-page="calendario"] .app-calendar-shell,
body[data-page="estadisticas"] .stats-page-shell,
body[data-page="clasificacion"] .clas-page-shell {
  background:var(--appadel-surface-elevated);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
  box-shadow:var(--appadel-elevation-panel);
}

.home-grid--foundation :is(.app-title, .home-jornada-list-label, .home-jornada-list-team, .home-player-name),
body[data-page="calendario"] :is(.cal-jornada-title, .date-main, .teams-inline, .teams .team, .mcal-team-row .team-name),
body[data-page="estadisticas"] .stats-table tbody td,
body[data-page="clasificacion"] :is(.clas-rank-team, .clas-desktop-team),
body[data-page="scouting"] :is(.scouting-title, .scouting-team-name) {
  color:var(--appadel-text-primary);
}

.home-grid--foundation :is(.home-jornada-label, .home-jornada-inline-meta, .home-clas-group-title),
body[data-page="calendario"] :is(.date-sub, .mcal-meta),
body[data-page="estadisticas"] :is(.text-muted),
body[data-page="clasificacion"] :is(.text-muted, .clas-rank-stat, .clas-desktop-stat),
body[data-page="scouting"] :is(.scouting-muted, .scouting-subsection-copy:not(.product-content-text)) {
  color:var(--appadel-text-secondary) !important;
}

.home-grid--foundation :is(.home-clas-row, .home-clas-row.is-ours, .home-player-card),
.home-grid--foundation :is(.home-clas-row.has-fcp-zone, .home-clas-row.has-fcp-zone.is-ours) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

.home-grid--foundation .home-clas-pos {
  background:var(--appadel-interaction-hover);
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] .mcal-card {
  background:var(--appadel-surface-interactive) !important;
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] :is(.match-chip, .cal-detail-block) {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="estadisticas"] .stats-tab {
  background:var(--appadel-surface-interactive);
  color:var(--appadel-text-secondary);
}

body[data-page="estadisticas"] .stats-tab:is(:hover, :focus) {
  background:var(--appadel-interaction-hover);
  color:var(--appadel-text-primary);
}

body[data-page="estadisticas"] .stats-tab.is-active {
  background:var(--appadel-brand-primary);
  color:var(--appadel-surface-background);
  box-shadow:none;
}

body[data-page="estadisticas"] .stats-table {
  --bs-table-bg:transparent;
  --bs-table-color:var(--appadel-text-primary);
  --bs-table-border-color:var(--appadel-border-subtle);
}

body[data-page="estadisticas"] .stats-table.has-header-card :is(thead, thead tr) {
  background:var(--appadel-surface-secondary);
}

body[data-page="estadisticas"] .stats-table.has-header-card thead th {
  color:var(--appadel-text-primary);
}

body[data-page="estadisticas"] .stats-table tbody td,
body[data-page="estadisticas"] .stats-table tbody tr:nth-child(odd) td {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
}

body[data-page="estadisticas"] .stats-table tbody tr:nth-child(odd) td {
  background:var(--appadel-surface-elevated);
}

body[data-page="clasificacion"] :is(.clas-rank-row, .clas-rank-row.is-ours),
body[data-page="clasificacion"] :is(.clas-rank-row.has-fcp-zone, .clas-rank-row.has-fcp-zone.is-ours),
body[data-page="clasificacion"] :is(.clas-desktop-row, .clas-desktop-row.is-ours),
body[data-page="clasificacion"] :is(.clas-desktop-row.has-fcp-zone, .clas-desktop-row.has-fcp-zone.is-ours) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="clasificacion"] :is(.clas-rank-head, .clas-desktop-head) {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-brand-primary);
}

body[data-page="scouting"] :is(
  .pd-match-result-summary,
  .scouting-sync-status-list > div
) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] :is(
  .scouting-match-teams,
  .pd-match-result-summary__teams,
  .pd-match-result-summary__score,
  .scouting-pair-result-teams,
  .scouting-pair-result-players,
  .scouting-pair-side-line,
  .scouting-pair-side-names span,
  .scouting-pair-side-scores
) {
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] :is(
  .scouting-match-chips,
  .scouting-pair-result-meta,
  .scouting-pair-result-line em,
  .scouting-pair-side-names em
) {
  color:var(--appadel-text-secondary);
}

/* DS-13: Public authentication compatibility adapter. */
.login-body {
  background:var(--appadel-surface-background);
  color:var(--appadel-text-primary);
}

.login-body :is(.login-title, .login-label) {
  color:var(--appadel-text-primary);
}

.login-body :is(.login-subtitle, .login-foot, .password-change-head .text-muted) {
  color:var(--appadel-text-secondary) !important;
}

.login-body :is(.login-peek, .login-forgot-link):focus-visible {
  border-color:var(--appadel-brand-primary);
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
}

.login-body .login-peek {
  color:var(--appadel-text-secondary);
}

.login-body .login-peek:hover {
  background:var(--appadel-interaction-hover);
  color:var(--appadel-text-primary);
}

.login-body .login-forgot-link {
  color:var(--appadel-brand-primary);
}


@media (min-width:768px){
  .home-captain-tips-card{
    padding:12px 16px !important;
  }

  .tips-page-head{
    grid-template-columns:minmax(0, 1fr) auto;
    align-items:end;
  }

  .tips-card-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

/* Product Polish: scoped visual compatibility over retained Product layouts. */
:where(
  .home-grid--foundation .app-title,
  body[data-page="calendario"] .app-data-page-title,
  body[data-page="clasificacion"] .app-data-page-title,
  body[data-page="estadisticas"] .app-data-page-title,
  body[data-page="scouting"] .scouting-sync-overview > .scouting-section-title,
  body[data-page="jugadores"] .app-data-page-title
) {
  color:var(--appadel-brand-primary);
  font-weight:900;
}

:where(
  body[data-page="home"],
  body[data-page="calendario"],
  body[data-page="clasificacion"],
  body[data-page="estadisticas"],
  body[data-page="scouting"],
  body[data-page="jugadores"]
) {
  background:var(--appadel-surface-background);
}

:where(
  body[data-page="home"],
  body[data-page="calendario"],
  body[data-page="clasificacion"],
  body[data-page="estadisticas"],
  body[data-page="scouting"],
  body[data-page="jugadores"]
) main {
  color:var(--appadel-text-primary);
}

.home-grid--foundation > :is(.card-soft, .app-card),
.home-captain-tips-card,
body[data-page="jugadores"] :is(.players-page-shell, .user-mgmt-form, .user-mgmt-password) {
  background:var(--appadel-surface-elevated);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
  box-shadow:var(--appadel-elevation-panel);
}

.home-grid--foundation .home-card-head .app-title {
  color:var(--appadel-brand-primary);
}

.home-grid--foundation .home-identity-card__greeting {
  color:var(--appadel-brand-primary);
}

.home-grid--foundation :is(.home-action-link, .home-hero-actions .cal-gestion-btn) {
  background:var(--appadel-brand-primary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-surface-background);
  box-shadow:none;
}

.home-grid--foundation :is(.home-action-link, .home-hero-actions .cal-gestion-btn):is(:hover, :focus-visible) {
  background:var(--appadel-brand-primary-hover);
  border-color:var(--appadel-brand-primary-hover);
  color:var(--appadel-surface-background);
}

.home-grid--foundation .home-card-head {
  align-items:center;
}

.home-grid--foundation .home-action-link,
.home-grid--foundation .home-hero-actions .cal-gestion-btn {
  border-radius:var(--appadel-radius-control);
  min-height:var(--appadel-interaction-control-height);
}

.home-grid--foundation .home-hero-actions .cal-gestion-btn:is(.cal-gestion-btn-disabled, [aria-disabled="true"]) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-secondary);
}

.home-grid--foundation :is(.home-jornada-score, .home-player-rank) {
  background:var(--appadel-interaction-selected);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

body[data-page="calendario"] :is(.cal-jornada-title, .mcal-pill.cal-jornada-title) {
  color:var(--appadel-text-primary);
  font-weight:900;
}

body[data-page="calendario"] :is(.date-sub, .mcal-meta, .cal-location, .cal-time) {
  color:var(--appadel-text-secondary) !important;
}

body[data-page="calendario"] :is(.cal-gestion-btn, .cal-detail-toggle, .cal-actions-menu__toggle) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary);
  box-shadow:none;
}

body[data-page="clasificacion"] :is(.clas-rank-row, .clas-desktop-row) {
  box-shadow:none;
}

body[data-page="clasificacion"] :is(
  .clas-rank-row.has-fcp-zone,
  .clas-rank-row.has-fcp-zone.is-ours,
  .clas-desktop-row.has-fcp-zone,
  .clas-desktop-row.has-fcp-zone.is-ours
) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

body[data-page="clasificacion"] :is(.clas-rank-team, .clas-desktop-team) {
  color:var(--appadel-text-primary);
}

body[data-page="clasificacion"] :is(.clas-rank-row.is-ours, .clas-desktop-row.is-ours) {
  outline:1px solid var(--appadel-border-strong);
  outline-offset:-1px;
}

body[data-page="estadisticas"] :is(.stats-page-head, .stats-year-filter) {
  background:transparent;
  color:var(--appadel-text-primary);
}

body[data-page="estadisticas"] .stats-year-filter {
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-control);
  padding:var(--appadel-spacing-control-gap);
}

body[data-page="estadisticas"] .stats-ranking-row .management-data-table__cell--row-start {
  color:var(--appadel-text-primary);
  font-weight:900;
}

body[data-page="scouting"] .scouting-selector-preview {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] :is(.scouting-rival-copy strong, .scouting-team-name) {
  color:var(--appadel-text-primary);
}

body[data-page="scouting"] :is(
  .scouting-rival-copy span,
  .scouting-acta-players strong.is-analyzed,
  .scouting-pair-side-line.is-analyzed,
  .scouting-pair-side-names strong.is-analyzed-pair,
  .pd-gameplan-pair-result-card--detail .scouting-pair-result-players strong.is-analyzed-pair
) {
  color:var(--appadel-brand-primary);
}

body[data-page="scouting"] :is(.scouting-detail-block > summary:not(.ds-button), .pd-match-result-summary__details summary, .pd-gameplan-pair-tabs__tab:not(.is-active)) {
  color:var(--appadel-brand-primary);
}

body[data-page="jugadores"] .players-page-shell {
  min-width:0;
}

body[data-page="jugadores"] #playerMgmtCount {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary) !important;
}

body[data-page="jugadores"] :is(.player-mgmt-table-wrap, .player-mgmt-mobile-wrap) {
  background:transparent;
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
  max-width:100%;
}

body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table) {
  color:var(--appadel-text-primary);
}

body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table).has-header-card thead,
body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table).has-header-card thead tr {
  background:var(--appadel-surface-secondary);
}

body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table).has-header-card thead th {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table) tbody td,
body[data-page="jugadores"] :is(.player-mgmt-table, .player-mgmt-mobile-table) tbody tr:nth-child(odd) td {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

body[data-page="jugadores"] :is(.user-mgmt-badge.is-active, .user-mgmt-badge.is-inactive) {
  background:var(--appadel-surface-interactive);
}

body[data-page="jugadores"] .user-mgmt-badge.is-active {
  border:1px solid var(--appadel-feedback-success);
  color:var(--appadel-feedback-success);
}

body[data-page="jugadores"] .user-mgmt-badge.is-inactive {
  border:1px solid var(--appadel-border-strong);
  color:var(--appadel-text-secondary);
}

body[data-page="jugadores"] :is(.form-control, .form-select) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary);
}

body[data-page="jugadores"] :is(.form-control, .form-select):focus-visible,
body[data-page="jugadores"] :is(.player-mgmt-sort-btn, .player-mgmt-action-btn):focus-visible {
  border-color:var(--appadel-brand-primary);
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
}

/* PLAYERS-009/010: stable column ownership and name truncation. */
body[data-page="jugadores"] .player-mgmt-table th:nth-child(6),
body[data-page="jugadores"] .player-mgmt-table td:nth-child(6) {
  box-sizing:border-box;
  padding-right:20px;
  text-align:right;
  width:84px;
}

body[data-page="jugadores"] .player-mgmt-table.has-actions th:last-child,
body[data-page="jugadores"] .player-mgmt-table.has-actions td:last-child {
  box-sizing:border-box;
  padding-left:20px;
  text-align:right;
  width:220px;
}

body[data-page="jugadores"] .player-mgmt-table.has-actions .player-mgmt-actions {
  justify-content:flex-end;
}

body[data-page="jugadores"] .player-mgmt-mobile-table th:nth-child(2),
body[data-page="jugadores"] .player-mgmt-mobile-table td:nth-child(2) {
  box-sizing:border-box;
  padding-left:4px;
  padding-right:10px;
  text-align:right;
  width:54px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions th:nth-child(3),
body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions td:nth-child(3) {
  box-sizing:border-box;
  padding-left:8px;
  padding-right:6px;
  text-align:right;
  width:196px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions.is-captain-readonly th:nth-child(3),
body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions.is-captain-readonly td:nth-child(3) {
  width:84px;
}

body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions .player-mgmt-actions {
  justify-content:flex-end;
}

body[data-page="jugadores"] .player-mgmt-player-name {
  display:block;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

/* CAL-001–006: canonical Calendar visual ownership. */
body[data-page="calendario"] :is(.team-inline, .cal-team-row .team-name, .mcal-team-row .team-name) {
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] :is(.team-inline, .cal-team-row .team-name, .mcal-team-row .team-name).team-ours {
  color:var(--appadel-product-own-team);
}

body[data-page="calendario"] .cal-jornada-title,
body[data-page="calendario"] .mcal-pill.cal-jornada-title {
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] .score-badge:is(.score-win, .score-lose) {
  background:var(--appadel-primitive-color-white);
  border-color:var(--appadel-border-strong);
  box-shadow:none;
}

body[data-page="calendario"] .score-badge.score-win {
  color:var(--appadel-feedback-success);
}

body[data-page="calendario"] .score-badge.score-lose {
  color:var(--appadel-feedback-danger);
}

body[data-page="calendario"] .score-badge:is(.score-neutral, .score-pending) {
  background:var(--appadel-primitive-color-white);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-surface-background);
  box-shadow:none;
}

@media (max-width:768px) {
  body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions th:nth-child(3),
  body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions td:nth-child(3) {
    width:176px;
  }

  body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions.is-captain-readonly th:nth-child(3),
  body[data-page="jugadores"] .player-mgmt-mobile-table.has-actions.is-captain-readonly td:nth-child(3) {
    width:78px;
  }
}

/* Batch 01 patch: final shared title contract and zone-decoration reset. */
body:is(
  [data-page="calendario"],
  [data-page="clasificacion"],
  [data-page="estadisticas"],
  [data-page="scouting"],
  [data-page="jugadores"]
) .product-page-title {
  align-self:auto;
  color:var(--appadel-brand-primary);
  display:block;
  font-size:var(--data-page-title-size);
  font-weight:900;
  letter-spacing:0;
  line-height:1.1;
  margin:0;
  text-align:left;
  text-transform:none;
  visibility:visible;
}

body[data-page="clasificacion"] :is(
  .clas-rank-row.has-fcp-zone,
  .clas-rank-row.has-fcp-zone.is-ours,
  .clas-desktop-row.has-fcp-zone,
  .clas-desktop-row.has-fcp-zone.is-ours
),
.home-grid--foundation :is(
  .home-clas-row.has-fcp-zone,
  .home-clas-row.has-fcp-zone.is-ours
) {
  background:var(--appadel-surface-interactive);
  background-image:none;
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

body[data-page="clasificacion"] :is(.clas-rank-row.is-ours, .clas-desktop-row.is-ours),
.home-grid--foundation .home-clas-row.is-ours {
  outline:1px solid var(--appadel-border-strong);
  outline-offset:-1px;
}

@media (max-width:767.98px) {
  body:is(
    [data-page="calendario"],
    [data-page="clasificacion"],
    [data-page="estadisticas"],
    [data-page="scouting"],
    [data-page="jugadores"]
  ) .product-page-title {
    font-size:var(--data-page-title-size-mobile);
  }
}

/* Product Polish patch: shared titles and scoped control contrast corrections. */
body:is(
  [data-page="calendario"],
  [data-page="clasificacion"],
  [data-page="estadisticas"],
  [data-page="scouting"],
  [data-page="jugadores"]
) .product-page-title {
  color:var(--appadel-brand-primary);
  display:block;
  font-size:var(--data-page-title-size);
  font-weight:900;
  line-height:1.1;
  margin:0;
  opacity:1;
  visibility:visible;
}

body[data-page="clasificacion"] .clas-year-filter.app-data-filter {
  align-items:center;
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  display:inline-flex;
  flex:0 1 auto;
  padding:var(--appadel-spacing-inline-tight) var(--appadel-spacing-control-gap);
  width:auto;
}

body[data-page="clasificacion"] .clas-year-filter .ds-form-field__label {
  color:var(--appadel-text-primary);
  font-weight:800;
  margin:0;
  white-space:nowrap;
}

body[data-page="clasificacion"] .clas-year-filter .ds-select {
  flex:0 1 auto;
  width:auto;
}

body[data-page="estadisticas"] .stats-ranking-row .management-data-table__cell--row-start {
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] .cal-detail-toggle.ds-button,
body[data-page="calendario"] .cal-detail-toggle.ds-button[aria-expanded="true"] {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

/* Product Polish Batch 01: shared Product visual patterns. */
:where(body.app-shell) .product-page-title {
  color:var(--appadel-brand-primary);
  display:block;
  font-size:var(--data-page-title-size);
  font-weight:900;
  letter-spacing:0;
  line-height:1.1;
  margin:0;
  text-transform:none;
  visibility:visible;
}

body[data-page="calendario"] .cal-actions-menu__toggle.ds-button {
  background:transparent;
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
  min-height:var(--appadel-interaction-control-height-compact);
}

body[data-page="calendario"] .cal-actions-menu__toggle.ds-button:hover,
body[data-page="calendario"] .cal-actions-menu__toggle.ds-button[aria-expanded="true"] {
  background:var(--appadel-interaction-selected);
  border-color:var(--appadel-brand-primary-hover);
  color:var(--appadel-brand-primary-hover);
}

body[data-page="calendario"] .cal-actions-menu__toggle.ds-button:focus-visible,
body[data-page="calendario"] .cal-actions-menu__item:focus-visible {
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
}

body[data-page="calendario"] .cal-actions-menu__chevron {
  color:currentColor;
  transition:transform var(--appadel-motion-fast) ease;
}

body[data-page="calendario"] .cal-actions-menu__list {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
  box-shadow:var(--appadel-elevation-shell);
  color:var(--appadel-text-primary);
  max-width:min(100%, 28rem);
  position:relative;
  z-index:var(--appadel-z-index-dropdown);
}

body[data-page="calendario"] .cal-actions-menu__item {
  color:var(--appadel-brand-primary);
  justify-content:flex-end;
  text-align:right;
}

body[data-page="calendario"] .cal-actions-menu__item:hover,
body[data-page="calendario"] .cal-actions-menu__item:focus-visible {
  background:var(--appadel-interaction-hover);
  color:var(--appadel-brand-primary-hover);
}

:where(
  body[data-page="alineacion"],
  body[data-page="jornada"],
  body[data-page="online"],
  body[data-page="cambiar-fecha"]
) :is(#olJornadaCard, #cfJornadaCard) {
  background:var(--appadel-surface-elevated);
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-panel);
  box-shadow:none;
  color:var(--appadel-text-primary);
  overflow:hidden;
}

:where(
  body[data-page="alineacion"],
  body[data-page="jornada"],
  body[data-page="online"],
  body[data-page="cambiar-fecha"]
) :is(#olJornadaCard, #cfJornadaCard) .ol-jtag {
  background:var(--appadel-interaction-selected);
  border:1px solid var(--appadel-brand-primary);
  border-radius:var(--appadel-radius-control);
  color:var(--appadel-brand-primary);
  min-width:2.75rem;
}

:where(
  body[data-page="alineacion"],
  body[data-page="jornada"],
  body[data-page="online"],
  body[data-page="cambiar-fecha"]
) :is(#olJornadaCard, #cfJornadaCard) .ol-jteam {
  color:var(--appadel-brand-primary);
}

:where(
  body[data-page="alineacion"],
  body[data-page="jornada"],
  body[data-page="online"],
  body[data-page="cambiar-fecha"]
) :is(#olJornadaCard, #cfJornadaCard) .ol-jscore {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-strong);
  box-shadow:none;
}

:where(
  body[data-page="clasificacion"] :is(.clas-rank-row, .clas-desktop-row),
  .home-grid--foundation .home-clas-row
).has-fcp-zone {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

:where(.clas-zone-indicator) {
  align-items:center;
  display:inline-flex;
  justify-content:center;
  min-width:0;
}

body[data-page="clasificacion"] :is(.clas-rank-pos, .clas-desktop-pos) {
  color:var(--appadel-text-primary);
  text-align:center;
}

:where(
  body[data-page="clasificacion"] .clas-rank-team,
  body[data-page="clasificacion"] .clas-desktop-team,
  .home-grid--foundation .home-clas-team
) {
  color:var(--appadel-text-primary);
}

:where(body[data-page="clasificacion"] .clas-fcp-legend, .home-clas .clas-fcp-legend) {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

:where(body[data-page="clasificacion"] .clas-fcp-legend-item, .home-clas .clas-fcp-legend-item),
:where(body[data-page="clasificacion"] .clas-fcp-legend-label, .home-clas .clas-fcp-legend-label) {
  color:var(--appadel-text-primary);
}

body[data-page="estadisticas"] .stats-ranking-row :is(.stats-player-name, .management-data-table__cell--primary) {
  color:var(--appadel-text-primary);
}

:where(
  body[data-page="clasificacion"] #clasificacionUpdatedInfo,
  body[data-page="estadisticas"] .stats-order-note,
  body[data-page="scouting"] .scouting-sync-counts
) {
  color:var(--appadel-text-primary);
  opacity:1;
}

:where(
  body[data-page="estadisticas"] .stats-ranking-row,
  body[data-page="clasificacion"] :is(.clas-rank-row, .clas-desktop-row),
  .home-grid--foundation .app-card,
  body[data-page="calendario"] .mcal-card
) {
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

body.app-shell :is(.app-nav-link, .site-nav a) {
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  color:var(--appadel-text-primary);
  position:relative;
}

body.app-shell :is(.app-nav-link, .site-nav a):hover,
body.app-shell :is(.app-nav-link, .site-nav a):focus-visible {
  background:transparent;
  color:var(--appadel-brand-primary);
  transform:none;
}

body.app-shell :is(.app-nav-link, .site-nav a).active {
  background:transparent;
  box-shadow:inset 0 -2px 0 var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

body.app-shell :is(.app-nav-link, .site-nav a).active:focus-visible {
  box-shadow:var(--appadel-interaction-focus-ring), inset 0 -2px 0 var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

body.app-shell :is(.app-nav-link, .site-nav a).active .nav-ico {
  background-color:currentColor;
  color:inherit;
  opacity:1;
}

@media (max-width:768px) {
  :where(body.app-shell) .product-page-title {
    display:block;
    font-size:var(--data-page-title-size-mobile);
    visibility:visible;
  }

  body.app-shell .site-nav--mobile-bottom :is(.app-nav-link, a).active {
    box-shadow:inset 0 -3px 0 var(--appadel-brand-primary);
  }
}

/* Product Polish Batch 04: Product identity and workflow consolidation. */
:where(body[data-page="alineacion"] .product-workflow-shell) :is(
  .ol-pair-badge,
  .ol-mini-badge,
  .ol-player-chip,
  .ol-slot-readonly,
  .ol-slot-readonly span,
  .ol-pair-meta,
  .ol-pair-note
) {
  color:var(--appadel-text-primary);
}

:where(body[data-page="alineacion"] .product-workflow-shell) .ol-pair-badge {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-subtle);
}

:where(body[data-page="alineacion"] .product-workflow-shell) :is(
  .ol-cap-input:not([hidden]),
  .ol-slot-editable-control:not([hidden])
) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-text-primary);
}

:where(.product-workflow-shell) .ds-button--primary {
  background:var(--appadel-brand-primary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-surface-background);
}

:where(.product-workflow-shell) .ds-button--secondary {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

:where(.product-workflow-shell) :is(.ds-button--primary, .ds-button--secondary) {
  min-height:var(--appadel-interaction-control-height);
}

:where(.product-workflow-shell) :is(.app-button-row, .app-actions-stack) {
  gap:var(--appadel-spacing-control-gap);
}

body[data-page="calendario"] .cal-detail-toggle.ds-button .cal-btn-text {
  color:var(--appadel-brand-primary);
}

body[data-page="calendario"] .cal-detail-toggle.ds-button:is(:hover, :focus-visible) {
  background:var(--appadel-interaction-hover);
  border-color:var(--appadel-brand-primary-hover);
  color:var(--appadel-brand-primary-hover);
}

body[data-page="calendario"] .cal-detail-toggle.ds-button:is(:hover, :focus-visible) .cal-btn-text {
  color:var(--appadel-brand-primary-hover);
}

@media (max-width:767.98px) {
  body:is(
    [data-page="calendario"],
    [data-page="clasificacion"],
    [data-page="estadisticas"],
    [data-page="scouting"],
    [data-page="jugadores"]
  ) .product-page-title {
    display:block;
    font-size:var(--data-page-title-size-mobile);
    visibility:visible;
  }

  body[data-page="clasificacion"] .clas-year-filter.app-data-filter {
    max-width:100%;
    width:fit-content;
  }
}

/* Product Polish Batch 02: safe workflow and Online foundations. */
:where(.product-workflow-shell) {
  color:var(--appadel-text-primary);
  display:grid;
  gap:var(--appadel-spacing-content-gap);
  min-width:0;
}

:where(.product-workflow-shell) :is(
  .card-soft,
  .app-card,
  .app-subcard,
  .ol-cap-match,
  .cf-form-card,
  .online-card,
  #olCaptainResultsCard,
  #olResultadosOnlineCard:not(.app-matchday-results-canonical),
  #olCommentsCard,
  #olChatCard
) {
  background:var(--appadel-surface-elevated);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
  color:var(--appadel-text-primary);
}

:where(.product-workflow-shell) :is(
  .ol-page-title,
  .cf-page-title
) {
  color:var(--appadel-brand-primary);
  font-size:var(--data-page-title-size);
  font-weight:900;
  line-height:1.1;
}

:where(.product-workflow-shell) :is(
  .ol-section-kicker,
  .ol-card-head h2,
  .ol-match-name,
  label,
  .cf-label
) {
  color:var(--appadel-text-primary);
}

:where(.product-workflow-shell) :is(
  .text-muted,
  .ol-availability-count,
  .ol-meta,
  .cf-current-label,
  .online-updated
) {
  color:var(--appadel-text-secondary) !important;
}

:where(.product-workflow-shell) :is(.btn-club-inverse, .ol-btn-main, .cf-save-btn) {
  background:var(--appadel-brand-primary);
  border-color:var(--appadel-brand-primary);
  border-radius:var(--appadel-radius-control);
  color:var(--appadel-surface-background);
  box-shadow:none;
}

:where(.product-workflow-shell) :is(.btn-club-inverse, .ol-btn-main, .cf-save-btn):is(:hover, :focus-visible) {
  background:var(--appadel-brand-primary-hover);
  border-color:var(--appadel-brand-primary-hover);
  color:var(--appadel-surface-background);
}

:where(.product-workflow-shell) :is(button, a, input, select, textarea):focus-visible {
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
}

body[data-page="online"] .product-workflow-shell :is(.chat-bubble, .online-result-card) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-primary);
}

:where(.appadel-brand-logo) {
  background:transparent;
  object-fit:contain;
}

/* BR-001 Step 3: complete Willy Vista wordmark on shared authentication surfaces. */
.login-head .login-logo {
  display:block;
  width:min(220px, 100%);
  height:auto;
  aspect-ratio:278 / 105;
  object-fit:contain;
}

@media (min-width:992px) {
  .login-head .login-logo {
    width:min(240px, 100%);
    height:auto;
  }
}

@media (max-width:575.98px) {
  .password-change-head .login-logo {
    width:min(190px, 100%);
    height:auto;
  }
}

/* Product Polish Batch 03: classification, workflow interiors and global ownership. */
:where(body[data-page="clasificacion"] .clas-rank-head, body[data-page="clasificacion"] .clas-rank-row) {
  column-gap:4px;
}

:where(body[data-page="clasificacion"] .clas-rank-head-zone, body[data-page="clasificacion"] .clas-zone-indicator) {
  justify-self:center;
}

:where(
  body[data-page="clasificacion"] .clas-rank-pts,
  body[data-page="clasificacion"] .clas-rank-stat,
  body[data-page="clasificacion"] .clas-desktop-pts,
  body[data-page="clasificacion"] .clas-desktop-stat
) {
  color:var(--appadel-text-primary);
  white-space:nowrap;
}

body[data-page="clasificacion"] :is(.clas-rank-row.is-ours, .clas-desktop-row.is-ours) :is(
  .clas-rank-pos,
  .clas-rank-team,
  .clas-rank-pts,
  .clas-rank-stat,
  .clas-desktop-cell
) {
  color:var(--appadel-text-primary);
}

:where(body[data-page="clasificacion"] .clas-rank-team, body[data-page="clasificacion"] .clas-desktop-team) {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

:where(body[data-page="clasificacion"] .clas-fcp-legend, .home-clas .clas-fcp-legend) {
  background:var(--appadel-surface-secondary);
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-panel);
  color:var(--appadel-text-primary);
  padding:var(--appadel-spacing-panel-gap);
}

:where(.product-workflow-shell) .workflow-page-title {
  color:var(--appadel-brand-primary);
  font-size:var(--data-page-title-size);
  font-weight:900;
  line-height:1.1;
  margin:0;
  text-align:left;
  text-transform:none;
}

:where(.product-workflow-shell) :is(#olCaptainPairsCard, #olCaptainResultsCard, #cfEditorCard) {
  background:var(--appadel-surface-elevated);
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-panel);
  box-shadow:none;
  color:var(--appadel-text-primary);
}

:where(.product-workflow-shell) :is(
  .ol-availability-card,
  .ol-lineup-card,
  .ol-convocatoria-card,
  .ol-pair-card,
  .ol-cap-match,
  .cf-current-card,
  .cf-input-card,
  .ol-block
) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
  color:var(--appadel-text-primary);
}

:where(.product-workflow-shell) :is(
  .ol-cap-pill-text,
  .ol-section-kicker,
  .ol-field-label,
  .ol-availability-name,
  .cf-block-label,
  .cf-current-value,
  .cf-inline-label,
  .ol-set-input
) {
  color:var(--appadel-text-primary);
}

body[data-page="jornada"] :is(.ol-set-chip, .ol-set-input) {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-border-strong);
  color:var(--appadel-text-primary);
}

body[data-page="jornada"] .ol-act-btn {
  background:var(--appadel-surface-secondary);
  border:1px solid var(--appadel-border-strong);
  color:var(--appadel-text-primary);
}

body[data-page="jornada"] .ol-act-reset {
  color:var(--appadel-brand-primary);
}

body[data-page="jornada"] #olCaptainResultsActions {
  background:var(--appadel-surface-elevated);
  border-top:1px solid var(--appadel-border-subtle);
  padding-top:var(--appadel-spacing-control-gap);
}

:where(.product-workflow-shell) .workflow-action-primary {
  background:var(--appadel-brand-primary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-surface-background);
}

:where(.product-workflow-shell) .workflow-action-secondary {
  background:var(--appadel-surface-secondary);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

:where(.product-workflow-shell) :is(input, select, textarea):disabled,
:where(.product-workflow-shell) :is(input, select, textarea)[readonly],
:where(.product-workflow-shell) .ol-slot-readonly {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  color:var(--appadel-text-secondary);
}

body.app-shell #logoutBtn {
  background:transparent;
  border:0;
  color:var(--appadel-brand-primary);
  box-shadow:none;
}

body.app-shell #logoutBtn:is(:hover,:focus-visible){
  background:transparent;
  color:var(--appadel-brand-primary-hover);
}

body.app-shell #logoutBtn:is(:hover,:focus-visible)::before{
  background:var(--appadel-surface-interactive);
}

body.app-shell #logoutBtn .logout-ico {
  background-color:currentColor;
}

@media (min-width:769px) {
  body[data-page="clasificacion"] :is(.clas-desktop-head, .clas-desktop-row) {
    grid-template-columns:18px 44px minmax(12rem, 1fr) repeat(4, 58px);
  }
}

@media (max-width:768px) {
  :where(.product-workflow-shell) {
    gap:var(--appadel-spacing-content-gap);
  }

  :where(.product-workflow-shell) :is(#olCaptainPairsCard, #olCaptainResultsCard, #cfEditorCard) {
    padding:var(--appadel-spacing-panel-gap) !important;
  }

  :where(.product-workflow-shell) :is(
    .ol-availability-card,
    .ol-lineup-card,
    .ol-convocatoria-card,
    .ol-pair-card,
    .ol-cap-match,
    .cf-current-card,
    .cf-input-card
  ) {
    padding:var(--appadel-spacing-panel-gap);
  }

  :where(.product-workflow-shell) .workflow-page-title {
    font-size:var(--data-page-title-size-mobile);
  }

  body[data-page="jornada"] .jornada-results-grid {
    display:grid;
    gap:var(--appadel-spacing-control-gap);
  }

  body[data-page="jornada"] #olCaptainResultsActions {
    bottom:calc(var(--app-bottom-nav-height) + env(safe-area-inset-bottom));
    gap:var(--appadel-spacing-control-gap);
  }
}

/* HOME-003: the single Product classification-zone indicator implementation. */
.clas-zone-indicator::before {
  background:currentColor;
  border:0;
  clip-path:polygon(0 0, 100% 50%, 0 100%);
  color:var(--clas-fcp-color);
  content:"";
  display:block;
  flex:0 0 10px;
  font-size:0;
  height:12px;
  line-height:0;
  width:10px;
}

body[data-page="clasificacion"] :is(.clas-rank-row, .clas-desktop-row).is-own-team > :not(.clas-zone-indicator),
body[data-page="clasificacion"] tr.is-own-team > td,
body[data-page="home"] .home-clas-row.is-own-team > :not(.clas-zone-indicator) {
  color:var(--appadel-product-own-team);
}

body[data-page="home"] .home-player-card .home-player-metric {
  color:var(--appadel-text-primary);
  opacity:1;
}

body[data-page="home"] .home-grid--foundation > :is(.card-soft, .app-card),
body[data-page="home"] .home-captain-tips-card {
  background:var(--appadel-surface-elevated);
  border:1px solid var(--appadel-panel-border);
  box-shadow:none;
}

body[data-page="home"] .home-grid--foundation > .ds-summary-card {
  border-color:var(--appadel-product-border);
}

body[data-page="home"] .home-captain-tips-card:is(:hover, :focus) {
  border-color:var(--appadel-panel-border);
  box-shadow:none;
  transform:none;
}

body[data-page="home"] .home-grid--foundation :is(
  .home-jornada-list,
  .home-clas-row,
  .home-player-card,
  .clas-fcp-legend,
  .home-hero-actions
) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-border-subtle);
  box-shadow:none;
}

body[data-page="home"] .home-hero-actions .cal-gestion-btn.ds-button {
  background:var(--appadel-surface-secondary);
  border:1px solid var(--appadel-brand-primary);
  border-radius:var(--appadel-radius-control);
  color:var(--appadel-brand-primary);
  min-height:var(--appadel-interaction-control-height);
  box-shadow:none;
}

body[data-page="home"] .home-hero-actions .cal-gestion-btn.ds-button:not([aria-disabled="true"]):is(:hover, :focus-visible) {
  background:var(--appadel-surface-interactive);
  border-color:var(--appadel-brand-primary);
  color:var(--appadel-brand-primary);
}

body[data-page="home"] .home-hero-actions .cal-gestion-btn.ds-button:focus-visible {
  outline:none;
  box-shadow:var(--appadel-interaction-focus-ring);
}

/* HOME-CLOSE-001: classification points are factual primary text. */
body[data-page="home"] .home-clas-points,
body[data-page="clasificacion"] :is(.clas-rank-pts, .clas-desktop-pts) {
  color:var(--appadel-text-primary);
  opacity:1;
}

:where(body.app-shell) .product-page-header__actions .ds-form-field__label {
  color:var(--appadel-text-primary);
  font-weight:800;
  margin:0;
  white-space:nowrap;
}

:where(body.app-shell) .product-page-header__actions .ds-select {
  background-color:var(--appadel-surface-interactive);
  border-color:var(--appadel-brand-primary);
  border-radius:var(--appadel-radius-control);
  color:var(--appadel-text-primary);
  flex:0 0 auto;
  min-height:var(--appadel-interaction-control-height);
  width:auto;
}

:where(body.app-shell) .product-page-header__actions .ds-select:focus-visible {
  border-color:var(--appadel-brand-primary);
  box-shadow:var(--appadel-interaction-focus-ring);
  outline:none;
}

body[data-page="estadisticas"] #statsPerformancePanel > .stats-order-note {
  color:var(--appadel-text-primary);
  opacity:1;
}

body[data-page="clasificacion"] .clas-sync-feedback {
  margin-top:var(--appadel-spacing-control-gap);
  color:var(--appadel-text-primary);
  font-weight:650;
  line-height:1.35;
}

body[data-page="clasificacion"] :is(.clas-sync-feedback--processing, .clas-sync-feedback--success) {
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] .calendar-tabs{
  display:flex;
  flex-wrap:nowrap;
  gap:2px;
  width:100%;
  padding:3px;
  margin-bottom:var(--appadel-spacing-control-gap);
  border:1px solid var(--appadel-border-subtle);
  border-radius:var(--appadel-radius-control);
  background:var(--appadel-surface-secondary);
}

body[data-page="calendario"] .calendar-tab{
  position:relative;
  display:inline-flex;
  flex:1 1 0;
  justify-content:center;
  align-items:center;
  min-width:0;
  min-height:36px;
  padding:7px 10px;
  border:1px solid transparent;
  border-radius:calc(var(--appadel-radius-control) - 3px);
  background:transparent;
  color:var(--appadel-text-secondary);
  font:inherit;
  font-size:var(--appadel-typography-size-supporting);
  font-weight:var(--appadel-typography-weight-emphasis);
  line-height:1.2;
  white-space:nowrap;
  cursor:pointer;
  transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}

body[data-page="calendario"] .calendar-tab__count{
  min-width:1.5ch;
  color:inherit;
  font-variant-numeric:tabular-nums;
}

body[data-page="calendario"] .calendar-tab.is-active{
  border-color:color-mix(in srgb,var(--appadel-border-subtle) 72%,var(--appadel-brand-primary) 28%);
  background:color-mix(in srgb,var(--appadel-surface-interactive) 88%,var(--appadel-brand-primary) 12%);
  color:var(--appadel-brand-primary);
}

body[data-page="calendario"] .calendar-tab:hover:not(.is-active){
  background:var(--appadel-surface-interactive);
  color:var(--appadel-text-primary);
}

body[data-page="calendario"] .calendar-tab:focus-visible{
  outline:2px solid var(--appadel-brand-primary);
  outline-offset:2px;
}

body[data-page="calendario"] .calendar-tab-empty{
  margin-bottom:var(--appadel-spacing-control-gap);
}

/* Calendar desktop composes the canonical DS-030 card with its external actions. */
body[data-page="calendario"] .cal-desktop-list {
  display:grid;
  gap:calc(var(--appadel-spacing-panel-gap) + var(--appadel-spacing-control-gap));
  min-width:0;
  width:100%;
}

body[data-page="calendario"] .cal-desktop-item {
  display:grid;
  gap:var(--appadel-spacing-content-gap);
  min-width:0;
}

body[data-page="calendario"] .cal-desktop-item__match,
body[data-page="calendario"] .cal-desktop-item__actions,
body[data-page="calendario"] .cal-desktop-item__detail {
  min-width:0;
}

body[data-page="calendario"] .cal-desktop-item__actions .cal-actions-shell {
  margin-top:0;
}

body[data-page="calendario"] .cal-desktop-item__actions .cal-actions-main-row {
  align-items:stretch;
}

body[data-page="calendario"] .cal-desktop-item__actions :is(.cal-main-result-btn, .cal-actions-menu__toggle) {
  flex:1 1 0;
}
body[data-page="equipos"] .league-teams-list {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--appadel-spacing-control-gap);
  margin: 0;
  padding: 0;
  list-style: none;
}

body[data-page="equipos"] .league-team-item,
body[data-page="equipos"] .league-team-disclosure {
  min-width: 0;
}

body[data-page="equipos"] .league-team-disclosure {
  overflow: hidden;
  border: 1px solid var(--appadel-border-subtle);
  border-radius: var(--appadel-product-radius);
  background: var(--appadel-surface-secondary);
}

body[data-page="equipos"] .league-team-disclosure > summary {
  display: flex;
  width: 100%;
  min-width: 0;
  min-height: var(--appadel-interaction-control-height);
  justify-content: space-between;
  gap: var(--appadel-spacing-control-gap);
  border: 0;
  border-radius: 0;
  text-align: left;
  list-style: none;
  white-space: normal;
}

body[data-page="equipos"] .league-team-disclosure > summary::-webkit-details-marker {
  display: none;
}

body[data-page="equipos"] .league-team-name {
  min-width: 0;
  overflow-wrap: anywhere;
}

body[data-page="equipos"] .league-team-chevron {
  flex: 0 0 auto;
  font-size: 1.25em;
  line-height: 1;
  transition: transform var(--appadel-motion-fast) ease;
}

body[data-page="equipos"] .league-team-disclosure[open] .league-team-chevron {
  transform: rotate(90deg);
}

body[data-page="equipos"] .league-team-disclosure__body {
  padding: 0 var(--appadel-spacing-content-gap) var(--appadel-spacing-content-gap);
}

body[data-page="equipos"] .league-team-details {
  display: grid;
  gap: var(--appadel-spacing-control-gap);
  margin: var(--appadel-spacing-content-gap) 0 0;
}

body[data-page="equipos"] .league-team-detail {
  display: grid;
  grid-template-columns: minmax(7rem, auto) minmax(0, 1fr);
  gap: var(--appadel-spacing-inline-tight);
}

body[data-page="equipos"] .league-team-detail :is(dt, dd) { margin: 0; }
body[data-page="equipos"] .league-team-detail dt { color: var(--appadel-text-secondary); }
body[data-page="equipos"] .league-team-detail dd {
  color: var(--appadel-text-primary);
  overflow-wrap: anywhere;
}

@media (max-width: 480px) {
  body[data-page="equipos"] .league-team-detail { grid-template-columns: minmax(0, 1fr); }
}

@media (prefers-reduced-motion: reduce) {
  body[data-page="equipos"] .league-team-chevron { transition: none; }
}
