/* ITS Rugby — Maps CSS (shared between bars/stades archives) */

.rz-map-wrap{display:flex;gap:0;height:600px;border:1px solid var(--border);overflow:hidden;margin:0 auto 40px;position:relative;}
.rz-sidebar{flex:0 0 350px;min-width:320px;display:flex;flex-direction:column;height:100%;background:#f9f9f9;}
.rz-cards-list{flex:1;overflow-y:auto;padding:15px;box-sizing:border-box;}
.rz-map-canvas{flex:1;min-width:300px;height:100%;z-index:1;position:relative;}

/* Geoloc button */
.rz-geoloc-btn{position:absolute;bottom:20px;left:20px;z-index:1000;display:flex;align-items:center;gap:6px;padding:10px 16px;background:var(--white);border:2px solid var(--teal);color:var(--teal);font-family:var(--sans);font-size:11px;font-weight:800;letter-spacing:.5px;text-transform:uppercase;cursor:pointer;box-shadow:0 2px 10px rgba(0,0,0,.15);transition:.2s;}
.rz-geoloc-btn:hover,.rz-geoloc-btn.active{background:var(--teal);color:#fff;}

/* User marker pulse */
@keyframes rz-pulse{0%{transform:scale(1);opacity:.6}100%{transform:scale(2.5);opacity:0}}
.rz-user-pulse{width:20px;height:20px;position:relative;}
.rz-user-pulse::before{content:'';position:absolute;inset:0;background:var(--teal);border-radius:50%!important;opacity:.6;animation:rz-pulse 1.5s ease-out infinite;}
.rz-user-dot{width:12px;height:12px;background:var(--teal);border:2px solid #fff;border-radius:50%!important;position:absolute;top:4px;left:4px;box-shadow:0 1px 4px rgba(0,0,0,.3);}

/* Radius wrap */
.rz-radius-wrap{display:none;align-items:center;gap:8px;padding:10px 15px;background:var(--white);border-bottom:1px solid var(--border);flex-shrink:0;}
.rz-radius-wrap.visible{display:flex;}
.rz-radius-wrap label{font-size:11px;font-weight:700;color:var(--teal);white-space:nowrap;}
.rz-radius-wrap input[type=range]{flex:1;accent-color:var(--teal);}
.rz-radius-wrap .rz-radius-val{font-size:12px;font-weight:800;color:var(--ink);min-width:50px;text-align:right;}
.rz-radius-clear{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:none;border:1px solid var(--border);color:var(--muted);font-size:14px;font-weight:700;cursor:pointer;flex-shrink:0;transition:.15s;font-family:var(--sans);}
.rz-radius-clear:hover{background:var(--teal);color:#fff;border-color:var(--teal);}

/* Cards */
.rz-card{display:flex;align-items:center;gap:15px;margin-bottom:12px;background:var(--white);padding:14px;box-shadow:0 2px 5px rgba(0,0,0,.05);cursor:pointer;border-left:4px solid transparent;transition:.2s;}
.rz-card:hover,.rz-card.active{border-left-color:var(--teal);background:#f4f8f7;}
.rz-card-img{width:70px;height:70px;background-size:cover;flex-shrink:0;background-color:#eee;background-position:center;}
.rz-card-logo{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;font-size:14px;font-weight:900;letter-spacing:.5px;flex-shrink:0;}
.rz-card-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background:var(--teal);color:#fff;font-size:20px;flex-shrink:0;}
.rz-card-date{width:60px;min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px 4px;flex-shrink:0;text-transform:uppercase;letter-spacing:.3px;line-height:1.3;text-align:center;gap:2px;}
.rz-card-date--upcoming{background:var(--sage-lt);color:var(--teal);}
.rz-card-date--live{background:#ffe5e5;color:#c00;}
.rz-card-date--done{background:#f0f0f0;color:var(--muted);}
.rz-card-body{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;}
.rz-card-body h3{margin:0 0 4px;font-size:14px;line-height:1.2;font-weight:bold;}
.rz-card-body h3 a{text-decoration:none;color:var(--teal);}
.rz-addr{font-size:11px;color:#666;margin:0 0 4px;line-height:1.3;font-style:italic;}
.rz-desc-text{font-size:12px;color:#333;margin:0 0 6px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.rz-meta-row{display:flex;align-items:center;gap:8px;margin-bottom:4px;flex-wrap:wrap;width:100%;}
.rz-price-tag{font-size:12px;font-weight:bold;color:#333;}
.rz-partner-badge{font-size:9px;text-transform:uppercase;font-weight:800;color:var(--teal);background:var(--sage);padding:2px 6px;letter-spacing:.5px;margin-left:auto;}
.rz-stars{display:inline-flex;align-items:center;}
.rz-teams-row{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:4px;}
.rz-team-tag,.rz-comp-tag{font-size:10px;padding:2px 6px;background:var(--sage-lt);color:var(--teal);font-weight:600;white-space:nowrap;}
.rz-nation-tag,.rz-division-tag{font-size:10px;padding:2px 6px;background:var(--vanilla-d);color:var(--ink);font-weight:600;white-space:nowrap;}
.rz-tag{font-size:10px;padding:2px 6px;font-weight:600;white-space:nowrap;}
.rz-tag--cap{background:var(--sage-lt);color:var(--teal);}
.rz-tag--surface{background:var(--vanilla-d);color:var(--ink);}
.rz-tag--light{background:#FFFACD;color:#8B7500;}
.rz-tag--club{background:var(--teal);color:#fff;}
.rz-distance-tag{font-size:10px;padding:3px 8px;background:var(--teal);color:#fff;font-weight:700;white-space:nowrap;margin-left:auto;}
/* .rz-btn dans le contexte des cartes : lien-bouton compact (popup + sidebar cards).
   Scope au .rz-card et .leaflet-popup-content pour ne pas écraser le .rz-btn plein
   défini dans itsrugby-front-admin.css §6 (utilisé sur les fiches bar/stade). */
.rz-card .rz-btn,
.leaflet-popup-content .rz-btn{background:transparent;color:var(--teal)!important;border:none;padding:0;text-decoration:none!important;font-size:13px;font-weight:700;display:inline-block;cursor:pointer;margin-top:6px;text-transform:none;letter-spacing:0;box-shadow:none;}
.rz-card .rz-btn:hover,
.leaflet-popup-content .rz-btn:hover{background:transparent;text-decoration:underline!important;box-shadow:none;}

/* Popup */
.leaflet-popup-content{width:280px!important;margin:12px 14px;}
.leaflet-popup-content img{width:100%;height:120px;object-fit:cover;margin-bottom:8px;display:block;}

/* Match popup */
.rz-popup-match{font-family:var(--sans);}
.rz-popup-header{display:flex;align-items:center;gap:6px;margin-bottom:10px;flex-wrap:wrap;}
.rz-popup-status{font-size:10px;padding:3px 8px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;display:inline-block;}
.rz-popup-status--upcoming{background:var(--sage-lt);color:var(--teal);}
.rz-popup-status--live{background:#ffe5e5;color:#c00;animation:rz-pulse-bg 1.5s ease-in-out infinite;}
.rz-popup-status--done{background:#f0f0f0;color:var(--muted);}
@keyframes rz-pulse-bg{0%,100%{opacity:1}50%{opacity:.6}}
.rz-popup-comp{font-size:10px;padding:3px 8px;background:var(--sage-lt);color:var(--teal);font-weight:600;}
.rz-popup-teams{display:flex;align-items:center;gap:8px;margin-bottom:8px;justify-content:center;}
.rz-popup-team{flex:1;text-align:center;font-size:14px;font-weight:800;color:var(--ink);line-height:1.2;}
.rz-popup-vs{font-size:11px;font-weight:600;color:var(--muted);flex-shrink:0;}
.rz-popup-score{text-align:center;font-size:24px;font-weight:900;color:var(--ink);margin-bottom:8px;letter-spacing:2px;}
.rz-popup-date{text-align:center;font-size:13px;font-weight:700;color:var(--teal);margin-bottom:8px;padding:6px 0;background:var(--sage-lt);}
.rz-popup-date small{font-size:11px;font-weight:600;opacity:.8;}
.rz-popup-venue{display:flex;align-items:flex-start;gap:6px;font-size:11px;color:#555;margin-bottom:8px;line-height:1.4;}
.rz-popup-venue svg{flex-shrink:0;margin-top:1px;}
.rz-popup-cta{display:block;text-align:center;background:var(--teal);color:#fff!important;text-decoration:none!important;padding:8px 0;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.5px;transition:.2s;}
.rz-popup-cta:hover{opacity:.9;}
.rz-popup-title{font-size:15px;font-weight:800;margin:0 0 8px;line-height:1.3;}
.rz-popup-title a{color:var(--teal);text-decoration:none;}
.rz-popup-title a:hover{text-decoration:underline;}
.rz-popup-desc{font-size:12px;color:#444;margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.rz-popup-club{font-size:12px;font-weight:700;color:var(--teal);margin-bottom:8px;}

/* Pagination */
.rz-pagination{display:flex;align-items:center;justify-content:center;gap:4px;padding:10px 15px;border-top:1px solid var(--border);flex-shrink:0;}
.rz-pagination:empty{display:none;}
.rz-page-btn{padding:6px 12px;border:1px solid var(--border);background:var(--white);color:var(--ink);font-family:var(--sans);font-size:12px;font-weight:600;cursor:pointer;}
.rz-page-btn:hover:not(:disabled){background:var(--sage-lt);border-color:var(--teal);color:var(--teal);}
.rz-page-btn--active{background:var(--teal)!important;color:#fff!important;border-color:var(--teal)!important;font-weight:800;}
.rz-page-btn:disabled{opacity:.4;cursor:default;}

@media(max-width:768px){
  .rz-map-wrap{height:auto;flex-direction:column;}
  .rz-sidebar{min-width:0;width:100%;height:auto;max-height:none;flex:none;order:2;}
  .rz-radius-wrap{border-bottom:none;border-top:1px solid var(--border);}
  .rz-cards-list{max-height:300px;overflow-y:auto;}
  .rz-map-canvas{height:400px;width:100%;flex:none;order:1;}
}
