.ag-overview{margin-bottom:24px;display:grid;gap:16px;scroll-margin-top:calc(96px + env(safe-area-inset-top,0px));outline:none}
.ag-overview.has-selection{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.ag-detail[hidden]{display:none}
.ag-map-shell{z-index:0}
.ag-map-point{display:grid;place-items:center;background:transparent;border:0}
.ag-map-point span{display:block;width:18px;height:18px;border:3px solid #f3ecdf;border-radius:50%;background:#f15a24;box-shadow:0 1px 5px #073f3270}
.ag-map-cluster{display:grid!important;place-items:center;background:#073f32;color:#f3ecdf;border:3px solid #f3ecdf;border-radius:50%;font:700 13px system-ui;box-shadow:0 1px 5px #073f3270}
.ag .leaflet-container{font-family:inherit}
.ag .ag-head h1{font:inherit;font-family:"Barlow Condensed",sans-serif;font-size:clamp(2.6rem,6vw,5.2rem);font-weight:700;text-transform:uppercase;line-height:.95;margin:.25em 0}
.ag{--ag-green:#073f32;--ag-cream:#f3ecdf;--ag-coral:#f15a24;--ag-line:#073f3226;font-family:'Space Grotesk',system-ui,sans-serif;color:var(--ag-green);background:var(--ag-cream);border-radius:22px;padding:clamp(16px,3vw,36px);margin:0 auto 32px;max-width:1400px}
.ag *{box-sizing:border-box}
.ag-kicker{margin:0 0 6px;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--ag-coral)}
.ag-head h2{margin:0;font:900 clamp(32px,5vw,60px)/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.ag-lead{max-width:640px;line-height:1.6;margin:12px 0 22px}
.ag-periods{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}
.ag button,.ag a.ag-btn{font:600 13px 'Space Grotesk',sans-serif;cursor:pointer}
.ag-periods button{min-height:44px;padding:0 16px;border:1px solid var(--ag-line);border-radius:999px;background:transparent;color:inherit;white-space:nowrap}
.ag-periods button[aria-pressed=true]{background:var(--ag-green);color:var(--ag-cream);border-color:var(--ag-green)}
.ag-custom{display:flex;gap:10px;margin-top:10px}.ag-custom[hidden]{display:none}
.ag-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:12px;align-items:end}
.ag label{display:grid;gap:4px;font-size:12px;font-weight:600}
.ag input,.ag select{min-height:44px;width:100%;padding:8px 12px;border:1px solid var(--ag-line);border-radius:12px;background:#fffdf7;color:var(--ag-green);font:500 14px 'Space Grotesk',sans-serif}
.ag :focus-visible{outline:3px solid var(--ag-coral);outline-offset:2px}
.ag-btn{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;text-decoration:none;border:1px solid var(--ag-green);color:var(--ag-green);background:transparent}
.ag-btn.ag-solid{background:var(--ag-green);color:var(--ag-cream)}.ag-btn:disabled{opacity:.5;cursor:default}
.ag-status{font-size:13px;opacity:.8;margin:14px 0 8px;min-height:18px}
.ag-body{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;align-items:start}
.ag-list-col{max-height:78vh;overflow:auto;padding-right:6px}
.ag-cards{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.ag-card{border:1px solid var(--ag-line);border-radius:16px;background:#fffdf7}.ag-card.is-on{border-color:var(--ag-coral);box-shadow:0 0 0 2px var(--ag-coral) inset}.ag-card.is-off{opacity:.65}
.ag-card-main{display:grid;gap:6px;width:100%;text-align:left;border:0;background:none;color:inherit;padding:14px 16px;font:500 14px 'Space Grotesk',sans-serif!important}
.ag-card-main strong{font:800 21px/1.05 'Barlow Condensed',sans-serif;text-transform:uppercase}
.ag-when{font-size:12px;font-weight:700;color:var(--ag-coral)}.ag-where{font-size:13px;opacity:.8}
.ag-tags{display:flex;flex-wrap:wrap;gap:5px}.ag-tags i{font-style:normal;font-size:11px;padding:3px 9px;border:1px solid var(--ag-line);border-radius:999px}.ag-tags .ag-free{background:var(--ag-green);color:var(--ag-cream)}.ag-tags .ag-cancel{border-color:var(--ag-coral);color:var(--ag-coral)}
.ag-more{padding:16px 0;text-align:center}.ag-hint{font-size:13px;opacity:.7}
.ag-map-col{position:sticky;top:12px;display:grid;gap:12px}
.ag-map-shell{position:relative;border-radius:18px;overflow:hidden;border:1px solid var(--ag-line);background:#e4dac6;height:min(52vh,460px);min-height:260px}
/* Mapbox's stylesheet is loaded later and sets .mapboxgl-map to relative.
   Keep a stronger selector and explicit size so its canvas cannot collapse. */
.ag .ag-map{position:absolute;inset:0;width:100%;height:100%}.ag-map.is-off{display:none}
.ag-map-note{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;font-size:14px;line-height:1.5;pointer-events:none}.ag-map-note[hidden]{display:none}
.ag-map-shell:has(.is-off){height:auto;min-height:0}.ag-map-shell:has(.is-off) .ag-map-note{position:static;padding:18px}
.ag-recenter{position:absolute;z-index:1001;left:10px;bottom:28px;min-height:36px;background:var(--ag-cream)}.ag-recenter[hidden]{display:none}
.ag-pop{display:grid;gap:3px;font-family:'Space Grotesk',sans-serif;color:#073f32}.ag-pop strong{font-size:14px}.ag-pop span{font-size:12px}
.ag-sheet{position:relative;border:1px solid var(--ag-line);border-radius:18px;background:#fffdf7;padding:18px}
.ag-sheet h3{margin:0 0 8px;font:900 28px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;padding-right:70px}
.ag-sheet dl{display:grid;gap:8px;margin:12px 0}.ag-sheet dt{font-size:11px;letter-spacing:.1em;text-transform:uppercase;opacity:.65}.ag-sheet dd{margin:0;font-size:14px}
.ag-x{position:absolute;right:12px;top:12px;min-height:36px;padding:0 12px;border:1px solid var(--ag-line);border-radius:999px;background:transparent;color:inherit}
.ag-actions{display:flex;flex-wrap:wrap;gap:8px}
.ag-linked-matches{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.ag-linked-matches h4{flex-basis:100%;margin:0;font-size:13px}
.ag-linked-matches a{max-width:100%;white-space:normal;text-align:center}
.ag-disc{margin:14px 0 6px;padding:10px 12px;border-left:3px solid var(--ag-coral);background:#f15a2412;font-size:13px;line-height:1.5}
.ag a{color:inherit}
.ag-cancel-note{color:var(--ag-coral);font-weight:700}
.ag-empty{padding:30px 20px;text-align:center;border:1px dashed var(--ag-line);border-radius:16px}.ag-empty h3{font:900 26px 'Barlow Condensed',sans-serif;text-transform:uppercase;margin:0 0 8px}
.ag-skel{display:grid;gap:10px}.ag-skel i{display:block;height:96px;border-radius:16px;background:linear-gradient(90deg,#073f3210,#073f3222,#073f3210);background-size:200% 100%;animation:agsk 1.4s linear infinite}
@keyframes agsk{to{background-position:-200% 0}}
@media(prefers-reduced-motion:reduce){.ag-skel i{animation:none}}
@media(max-width:860px){.ag-overview.has-selection{grid-template-columns:1fr}.ag-overview .ag-map-shell{height:300px;min-height:260px}.ag-map-col{position:static;order:-1}.ag-list-col{max-height:none;overflow:visible}}
/* Programme sportif sub-heading below the agenda on the public page */
.ag-sub{max-width:1400px;margin:8px auto 0;padding:0 clamp(16px,3vw,36px)}
.ag-sub h2{font:900 clamp(28px,4vw,44px)/1 'Barlow Condensed',sans-serif;text-transform:uppercase;color:#073f32;margin:0}

/* ---- Cards + detail sheet in the supplied member sports-ui language (fixture card / venue sheet) ---- */
.ag-cards{grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:13px}
.ag .ag-card{display:flex;flex-direction:column;min-width:0;border:1px solid #163f2e20;background:#fffdf7;border-radius:16px;overflow:hidden;transition:box-shadow .2s,transform .2s}
.ag .ag-card:hover{box-shadow:0 8px 25px #073f3210;transform:translateY(-2px)}
.ag .ag-card.is-on{border-color:var(--ag-coral);box-shadow:0 0 0 2px var(--ag-coral) inset}
.ag .ag-card.is-off{opacity:.62}
.ag .ag-card-top,.ag .ag-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:11px 15px;background:#e3e9e147;border-bottom:1px solid #073f3211;font-size:11px;color:#677a70}
.ag .ag-card-top>span:first-child,.ag .ag-sheet-head>span{text-transform:uppercase;color:var(--ag-green);font-weight:700;letter-spacing:.08em}
.ag .ag-card-top .is-free{color:#2f6b45;font-weight:700}
.ag .ag-card-main{display:flex;align-items:flex-start;gap:14px;padding:16px 15px;flex:1}
.ag-stub{flex:0 0 58px;display:grid;justify-items:center;align-content:center;gap:1px;min-height:68px;border-radius:12px;background:var(--ag-green);color:var(--ag-cream);text-transform:uppercase}
.ag-stub b{font:800 30px/1 'Barlow Condensed',sans-serif}
.ag-stub small{font-size:10px;letter-spacing:.1em;opacity:.85}
.ag-stub.is-tbc{background:#e3e9e1;color:var(--ag-green)}
.ag-card-copy{display:grid;gap:6px;min-width:0}
.ag .ag-card-copy strong{font:800 22px/1 'Barlow Condensed',sans-serif;text-transform:uppercase;overflow-wrap:anywhere}
.ag-where{display:flex;gap:6px;align-items:baseline}.ag-where i{font-style:normal;color:var(--ag-coral)}
.ag .ag-card-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:0 15px 12px}
.ag-go{font-size:12px;font-weight:700;color:var(--ag-coral);white-space:nowrap}
.ag .ag-sheet{padding:0;overflow:hidden;border-color:#163f2e20;box-shadow:0 10px 30px #073f3212}
.ag .ag-sheet-head .ag-x{position:static;min-height:36px}
.ag-sheet-hero{display:flex;gap:16px;align-items:flex-start;padding:18px 18px 4px}
.ag .ag-sheet-hero h3{padding:0;font-size:clamp(28px,3.4vw,40px);line-height:.95;overflow-wrap:anywhere}
.ag-sheet-hero .ag-when{margin:4px 0 0}
.ag-sheet-copy,.ag-sheet>.ag-hint{margin:10px 18px 0;line-height:1.6;font-size:14px}
.ag .ag-place{display:flex;gap:13px;margin:16px 18px 0;padding:16px;border:1px solid #073f321a;border-radius:14px;background:#f3ecdf80}
.ag-pin{flex:0 0 34px;height:34px;display:grid;place-items:center;border-radius:50%;background:var(--ag-coral);color:#fffdf7;font-size:17px}
.ag .ag-place .ns-venue-status{display:block;color:#577b57;font-size:11px;margin-bottom:6px}
.ag .ag-place h4{margin:0;font:800 24px/.95 'Barlow Condensed',sans-serif;text-transform:uppercase}
.ag .ag-place p{margin:6px 0 0;font-size:13px;color:#4f6a5f;line-height:1.5}
.ag-place-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:12px}
.ag .ag-place-links a,.ag .ag-place-links button{padding:0;border:0;background:none;color:var(--ag-green);font:700 12px 'Space Grotesk',sans-serif;text-decoration:underline;text-underline-offset:3px;min-height:32px}
.ag .ag-facts{margin:14px 18px 0;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}
.ag-sheet .ag-linked-matches,.ag-sheet .ag-actions{margin:16px 18px 0}
.ag .ag-btn.ag-coral{background:var(--ag-coral);border-color:var(--ag-coral);color:#fffdf7}
.ag-sheet .ag-disc{margin:18px}
@media(max-width:860px){
  .ag-overview.has-selection .ag-map-shell{height:260px;min-height:220px}
  .ag-sheet-hero{padding:16px 14px 0}.ag .ag-place,.ag .ag-facts,.ag-sheet .ag-actions,.ag-sheet .ag-linked-matches{margin-left:14px;margin-right:14px}
  .ag-sheet .ag-actions .ag-btn{flex:1 1 100%}
}
@media(prefers-reduced-motion:reduce){.ag .ag-card,.ag .ag-card:hover{transition:none;transform:none}}
