/* Spin Club — Quadras (complementa torneios.css; mesma identidade: #F7F7F7, #FF6A00, cards #FFFFFF, Poppins) */

.quadras-cabeca .patrocinio{display:inline-flex; align-items:center; gap:10px; margin-top:18px; color:var(--mute); font-size:12px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase;}
.quadras-cabeca .patrocinio img{height:16px; width:auto; filter:brightness(0); opacity:0.85;}

/* ---------- Chamadas (dono de quadra / jogador) ---------- */
.quadras-chamadas{display:grid; grid-template-columns:1fr 1fr; gap:16px; margin-bottom:28px;}
.chamada{display:flex; flex-direction:column; align-items:flex-start; gap:12px; background:var(--card); border:1px solid var(--line); border-radius:20px; padding:22px;}
.chamada h2{font-size:20px;}
.chamada p{color:var(--text-2); font-size:15px;}
.chamada .destaque{color:var(--orange-2); font-weight:600;}
.chamada.jogador .destaque{color:#157347;}
.chamada .btn{margin-top:auto;}
.chamada.dono{border-color:rgba(255,106,0,0.45); background:linear-gradient(135deg, rgba(255,106,0,0.14), rgba(255,106,0,0.03));}

/* ---------- Filtros ---------- */
.quadras-filtros{display:flex; flex-direction:column; gap:14px; margin-bottom:22px;}
.filtro-esporte{display:flex; gap:8px; overflow-x:auto; padding:4px 0; scrollbar-width:none;}
.filtro-esporte::-webkit-scrollbar{display:none;}
.filtro-esporte button{flex-shrink:0; display:inline-flex; align-items:center; min-height:44px; padding:0 18px; border-radius:100px; border:1.5px solid var(--line); background:transparent; color:var(--text-2); font-family:'Poppins',sans-serif; font-weight:500; font-size:14.5px; cursor:pointer;}
.filtro-esporte button:hover{border-color:var(--orange);}
.filtro-esporte button.active{background:var(--text); border-color:var(--text); color:var(--bg); font-weight:600;}
.filtro-locais{display:grid; grid-template-columns:1fr 1fr; gap:12px; max-width:640px;}
.filtro-locais label{display:block; font-size:13px; font-weight:600; color:var(--text-2); margin-bottom:6px;}

/* ---------- Cards ---------- */
.courts-grid{display:grid; grid-template-columns:repeat(3, 1fr); gap:20px;}
.court-card{display:flex; flex-direction:column; gap:12px; background:var(--card); border:1px solid var(--line); border-radius:20px; padding:20px; transition:border-color 0.15s ease;}
.court-card:hover{border-color:#D6D6D6;}
.court-card.is-featured{border-color:var(--orange);}
.court-card.is-open{grid-column:span 2;}
.court-top{display:flex; align-items:flex-start; flex-wrap:wrap; justify-content:space-between; gap:8px;}
.court-sport, .court-featured{display:inline-block; font-size:12px; font-weight:600; letter-spacing:0.06em; text-transform:uppercase; padding:5px 12px; border-radius:100px; white-space:nowrap;}
.court-sport{color:var(--orange-2); background:rgba(255,106,0,0.12);}
.court-featured{color:#fff; background:var(--grad);}
.court-name{font-size:19px; font-weight:700; font-style:italic; text-transform:uppercase; line-height:1.15;}
.court-address{font-size:14px; color:var(--text-2); line-height:1.5;}
.court-address span{display:block;}
.court-address .addr-l2{font-size:13px; color:var(--mute);}

/* Detalhes: fotos, descrição e características */
.court-details{font-size:14px; color:var(--text-2);}
.court-details summary{cursor:pointer; font-weight:600; color:var(--orange-2); list-style:none; display:inline-flex; align-items:center; min-height:44px; margin:-8px 0;}
.court-details summary::-webkit-details-marker{display:none;}
.court-details summary:focus-visible{outline:2px solid var(--orange); outline-offset:3px; border-radius:6px;}
.court-details .sum-fechar{display:none;}
.court-details[open] .sum-abrir{display:none;}
.court-details[open] .sum-fechar{display:inline;}
.court-more{display:flex; flex-direction:column; gap:14px; margin-top:14px;}
.court-gallery{position:relative; border-radius:14px; overflow:hidden; background:var(--card-2);}
.cg-track{display:flex; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none;}
.cg-track::-webkit-scrollbar{display:none;}
.cg-item{flex:0 0 100%; scroll-snap-align:start;}
.cg-item img{width:100%; aspect-ratio:16/9; height:auto; object-fit:cover; display:block;}
.cg-count{position:absolute; right:10px; bottom:10px; background:rgba(21, 20, 19,0.72); color:#fff; font-size:12px; font-weight:600; padding:4px 10px; border-radius:100px;}
.cg-nav{position:absolute; top:50%; transform:translateY(-50%); width:44px; height:44px; border-radius:50%; border:1px solid var(--line); background:rgba(247, 247, 247,0.82); color:var(--text); font-size:24px; line-height:1; cursor:pointer; display:flex; align-items:center; justify-content:center;}
.cg-prev{left:8px;}
.cg-next{right:8px;}
.cg-nav[disabled]{opacity:0; pointer-events:none;}
.court-desc{line-height:1.55; display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;}
.court-desc.aberta{display:block; -webkit-line-clamp:unset;}
.court-desc-mais{align-self:flex-start; background:none; border:none; padding:0; margin-top:-10px; font-family:'Poppins',sans-serif; font-size:13.5px; font-weight:600; color:var(--orange-2); cursor:pointer; min-height:32px;}
.court-chips{list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:8px;}
.chip{display:flex; align-items:center; gap:8px; min-width:0; background:var(--card-2); border:1px solid var(--line); border-radius:12px; padding:9px 11px; font-size:13.5px; font-weight:500; color:var(--text);}
.chip span{white-space:nowrap; overflow:hidden;}
.chip-largo{grid-column:1/-1;}
.chip-largo span{white-space:normal; overflow:visible;}
.ci{width:16px; height:16px; flex-shrink:0; color:var(--orange-2);}
.court-line{display:flex; align-items:flex-start; gap:8px; font-weight:500; color:var(--text); line-height:1.4;}
.court-line .ci{margin-top:2px;}

/* Botões de contato */
.court-actions{display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:auto; padding-top:12px; border-top:1px solid var(--line);}
.court-icon-btn{position:relative; width:44px; height:44px; border-radius:50%; display:flex; align-items:center; justify-content:center; flex-shrink:0; border:1.5px solid var(--line); background:var(--card-2); color:var(--text); transition:transform 0.15s ease, border-color 0.15s ease;}
.court-icon-btn:hover{transform:translateY(-2px); border-color:var(--orange);}
.court-icon-btn svg{width:19px; height:19px; display:block;}
.court-icon-btn.whatsapp-icon{background:#25D366; border-color:#25D366; color:#151413;}
.court-icon-btn.map-icon{background:var(--grad); border-color:transparent; color:#fff;}
.court-icon-btn.instagram-icon{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7); border-color:transparent; color:#fff;}
/* Dica ao passar o mouse ou focar pelo teclado */
.court-icon-btn::after{content:attr(data-dica); position:absolute; bottom:calc(100% + 8px); left:50%; transform:translateX(-50%); background:var(--text); color:var(--bg); font-size:12px; font-weight:600; white-space:nowrap; padding:5px 9px; border-radius:8px; opacity:0; pointer-events:none; transition:opacity 0.15s ease; z-index:5;}
.court-icon-btn:focus-visible::after{opacity:1;}
@media (hover:hover){ .court-icon-btn:hover::after{opacity:1;} }

.courts-error{grid-column:1/-1; color:var(--text-2);}
.courts-empty[hidden]{display:none;}
.courts-empty{margin-top:12px;}
.courts-note{margin:28px 0 90px; font-size:13.5px; color:var(--mute);}

/* WhatsApp flutuante (igual à página inicial) */
.whats-flutuante{position:fixed; right:18px; bottom:18px; z-index:30; display:grid; place-items:center; width:56px; height:56px; border-radius:50%; background:#25D366; color:#fff; box-shadow:0 10px 24px rgba(0,0,0,.4);}
.whats-flutuante svg{width:30px; height:30px;}

@media (max-width:960px){
  .courts-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:700px){
  .quadras-chamadas{grid-template-columns:1fr;}
  .chamada .btn{width:100%; white-space:normal;}
}
/* Celular: um card por linha, para caber endereço e botões de 44px */
@media (max-width:560px){
  .courts-grid{grid-template-columns:1fr; gap:14px;}
  .court-card.is-open{grid-column:auto;}
  .filtro-locais{grid-template-columns:1fr;}
}
