/* Copa V2 — Elencos Grupo C
   Preenche Brasil, Marrocos, Haiti e Escócia com elencos e montagem de XI. */

.sq-ok-badge {
  display: inline-flex;
  margin-left: 6px;
  padding: 3px 7px;
  border-radius: 999px;
  background: rgba(56,217,150,.14);
  color: #ddfff1;
  border: 1px solid rgba(56,217,150,.24);
  font-size: 10px;
  font-weight: 900;
  vertical-align: middle;
}

.sq-block {
  margin-top: 14px;
  padding: 18px;
  border: 1px solid rgba(216,178,110,.22);
  border-radius: 24px;
  background:
    radial-gradient(circle at 12% 0%, rgba(216,178,110,.10), transparent 34%),
    rgba(0,0,0,.18);
}

.sq-head {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: flex-start;
  margin-bottom: 14px;
}

.sq-head h3 {
  margin-bottom: 6px;
}

.sq-head p {
  margin: 0;
  color: #d7cfbf;
  line-height: 1.55;
  font-size: 13px;
}

.sq-source-pill {
  display: inline-flex;
  padding: 7px 9px;
  border-radius: 999px;
  background: rgba(216,178,110,.14);
  border: 1px solid rgba(216,178,110,.24);
  color: #ffe6aa;
  font-size: 11px;
  font-weight: 900;
  white-space: nowrap;
}

.sq-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
}

.sq-span-4 { grid-column: span 4; }
.sq-span-5 { grid-column: span 5; }
.sq-span-6 { grid-column: span 6; }
.sq-span-7 { grid-column: span 7; }
.sq-span-8 { grid-column: span 8; }
.sq-span-12 { grid-column: span 12; }

.sq-card {
  padding: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 20px;
  background: rgba(255,255,255,.04);
}

.sq-card h4 {
  margin: 0 0 10px;
  color: #f6f1e8;
  font-size: 18px;
}

.sq-card p {
  color: #d7cfbf;
  line-height: 1.55;
  margin: 0;
  font-size: 13px;
}

.sq-facts {
  display: grid;
  gap: 9px;
}

.sq-fact {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(255,255,255,.08);
  color: #d7cfbf;
  font-size: 13px;
}

.sq-fact strong {
  color: #f6f1e8;
  text-align: right;
}

.sq-roster-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 12px;
}

.sq-tab {
  min-height: 32px;
  padding: 0 11px;
  border: 1px solid rgba(255,255,255,.11);
  border-radius: 999px;
  background: rgba(255,255,255,.06);
  color: #d7cfbf;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.sq-tab.active {
  background: rgba(216,178,110,.18);
  border-color: rgba(216,178,110,.34);
  color: #ffe6aa;
}

.sq-roster-list {
  display: grid;
  gap: 8px;
  max-height: 520px;
  overflow: auto;
  padding-right: 4px;
}

.sq-player {
  display: grid;
  grid-template-columns: 42px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  padding: 10px;
  border: 1px solid rgba(255,255,255,.08);
  border-radius: 14px;
  background: rgba(0,0,0,.16);
}

.sq-pos {
  display: inline-flex;
  justify-content: center;
  padding: 6px 0;
  border-radius: 999px;
  background: rgba(216,178,110,.14);
  color: var(--gold);
  font-size: 11px;
  font-weight: 900;
}

.sq-player strong {
  display: block;
  color: #f6f1e8;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sq-player small {
  display: block;
  margin-top: 2px;
  color: #d7cfbf;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sq-sector-bars {
  display: grid;
  gap: 10px;
}

.sq-sector {
  display: grid;
  grid-template-columns: 92px minmax(0,1fr) 32px;
  gap: 10px;
  align-items: center;
  color: #d7cfbf;
  font-size: 12px;
}

.sq-track {
  height: 9px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  overflow: hidden;
}

.sq-fill {
  display: block;
  height: 100%;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--gold), var(--green));
}

.sq-note {
  padding: 12px 14px;
  border: 1px solid rgba(216,178,110,.20);
  border-radius: 16px;
  background: rgba(216,178,110,.075);
  color: #d7cfbf;
  font-size: 13px;
  line-height: 1.6;
}

.sq-builder {
  display: grid;
  gap: 12px;
}

.sq-builder-controls {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
}

.sq-btn {
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 999px;
  background: rgba(255,255,255,.07);
  color: #f6f1e8;
  font-size: 11px;
  font-weight: 900;
  cursor: pointer;
}

.sq-btn:hover {
  background: rgba(255,255,255,.13);
}

.sq-btn.gold {
  background: rgba(216,178,110,.16);
  border-color: rgba(216,178,110,.30);
  color: #ffe6aa;
}

.sq-btn.red {
  background: rgba(240,114,109,.13);
  border-color: rgba(240,114,109,.28);
  color: #ffe1df;
}

.sq-pitch {
  min-height: 620px;
  border: 1px solid rgba(56,217,150,.26);
  border-radius: 24px;
  background:
    linear-gradient(90deg, rgba(255,255,255,.04) 49%, rgba(255,255,255,.12) 50%, rgba(255,255,255,.04) 51%),
    repeating-linear-gradient(0deg, rgba(56,217,150,.055), rgba(56,217,150,.055) 88px, rgba(56,217,150,.09) 88px, rgba(56,217,150,.09) 176px),
    rgba(1,30,18,.62);
  padding: 16px;
  overflow: hidden;
}

.sq-pitch-row {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin: 18px 0;
}

.sq-slot {
  width: min(148px, 18vw);
  min-width: 112px;
  padding: 9px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 15px;
  background: rgba(0,0,0,.34);
  text-align: center;
}

.sq-slot label {
  display: block;
  color: var(--gold);
  font-size: 10px;
  font-weight: 900;
  margin-bottom: 6px;
}

.sq-slot select {
  width: 100%;
  height: 34px;
  padding: 0 7px;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 10px;
  background: rgba(3,7,7,.75) !important;
  color: #f6f1e8 !important;
  font-size: 11px;
}

.sq-compare-block {
  margin-top: 16px;
}

.sq-compare-grid {
  display: grid;
  grid-template-columns: repeat(12, minmax(0,1fr));
  gap: 14px;
}

.sq-compare-card {
  padding: 16px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 20px;
  background: rgba(0,0,0,.18);
}

.sq-mini-table {
  display: grid;
  gap: 8px;
}

.sq-mini-row {
  display: grid;
  grid-template-columns: minmax(0,1fr) 72px minmax(0,1fr);
  gap: 10px;
  align-items: center;
  color: #d7cfbf;
  font-size: 12px;
}

.sq-mini-row strong {
  color: var(--gold);
  text-align: center;
}

@media (max-width: 1280px) {
  .sq-span-4,
  .sq-span-5,
  .sq-span-6,
  .sq-span-7,
  .sq-span-8,
  .sq-span-12 {
    grid-column: 1 / -1;
  }

  .sq-head {
    flex-direction: column;
  }

  .sq-pitch {
    min-height: auto;
  }

  .sq-pitch-row {
    flex-wrap: wrap;
  }

  .sq-slot {
    width: 46%;
  }
}

@media (max-width: 720px) {
  .sq-block {
    padding: 14px;
    border-radius: 20px;
  }

  .sq-slot {
    width: 100%;
  }

  .sq-mini-row {
    grid-template-columns: 1fr;
  }
}
