/* ESI Completed Events 2.1.0 — approved neon card, bold square frame and large portraits */
.esi-results-grid{box-sizing:border-box!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:22px!important;width:100%!important;max-width:1380px!important;margin:0 auto!important;align-items:stretch!important}
.esi-results-grid *{box-sizing:border-box!important}
.esi-results-grid .esi-result-card{position:relative!important;min-width:0!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;overflow:visible!important;padding:27px 17px 24px!important;border-radius:32px!important;border:2px solid #d59ce7!important;background:radial-gradient(ellipse at 85% 85%,rgba(113,28,91,.47),transparent 60%),radial-gradient(ellipse at 15% 15%,rgba(85,15,125,.34),transparent 55%),linear-gradient(145deg,#13091e,#1a0925 55%,#230c30)!important;box-shadow:0 0 20px rgba(166,55,207,.19),inset 0 0 22px rgba(165,38,202,.08)!important;color:#fff!important;text-align:center!important;font-family:'Barlow Condensed','Arial Narrow',Arial,sans-serif!important}
.esi-results-grid .esi-result-card a{color:inherit!important;text-decoration:none!important}
/* All future logos have one SQUARE frame, artwork contained without crop. */
.esi-results-grid .esi-result-logo{position:relative!important;isolation:isolate!important;display:flex!important;align-items:center!important;justify-content:center!important;width:min(235px,82%)!important;height:auto!important;aspect-ratio:1/1!important;flex:0 0 auto!important;margin:0 auto 16px!important;padding:9px!important;border:3px solid #ffd8ff!important;border-radius:28px!important;background:linear-gradient(135deg,rgba(204,105,255,.26),rgba(59,8,116,.22))!important;box-shadow:0 0 0 3px rgba(198,60,255,.65),0 0 12px 5px rgba(255,87,253,.95),0 0 34px 11px rgba(190,29,245,.65),inset 0 0 13px 2px rgba(251,174,255,.78)!important;transition:transform .2s ease,filter .2s ease!important}
.esi-results-grid .esi-result-logo:before{content:"";position:absolute;z-index:2;pointer-events:none;inset:5px;border:2px solid rgba(255,236,255,.9);border-radius:21px;box-shadow:inset 0 0 9px rgba(247,116,255,.85),0 0 8px rgba(255,126,252,.85)}
.esi-results-grid .esi-result-logo:after{content:"";position:absolute;z-index:3;pointer-events:none;left:16%;right:16%;top:-6px;height:9px;border-radius:50%;background:radial-gradient(ellipse,#fff 0%,#ffe0ff 26%,#ff39fa 55%,transparent 78%);box-shadow:0 0 11px 5px #f845fb,0 0 26px 10px rgba(255,47,234,.7)}
.esi-results-grid .esi-result-logo img{display:block!important;width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;object-position:center!important;border:0!important;border-radius:18px!important;box-shadow:none!important;margin:0!important}
.esi-results-grid .esi-result-date{margin:5px 0 6px!important;font-size:clamp(23px,2.3vw,32px)!important;font-weight:800!important;line-height:1.05!important;letter-spacing:.5px!important;color:#fff!important;text-transform:uppercase!important}
.esi-results-grid .esi-result-card h3,.esi-results-grid .esi-result-card h3 a{font-family:inherit!important;font-size:clamp(30px,3vw,43px)!important;line-height:1.03!important;font-weight:800!important;color:#fff!important;margin:0 0 7px!important;overflow-wrap:normal!important}
.esi-results-grid .esi-result-country{color:#ff2155!important;font-size:clamp(29px,2.7vw,38px)!important;line-height:1.05!important;font-weight:800!important;margin:0 0 14px!important}
.esi-results-grid .esi-result-badge{display:inline-flex!important;align-self:center!important;align-items:center!important;justify-content:center!important;border:3px solid #ff2058!important;border-radius:999px!important;padding:6px 17px!important;margin:0 0 16px!important;background:linear-gradient(100deg,rgba(151,0,45,.4),rgba(90,0,55,.38))!important;box-shadow:0 0 10px rgba(255,27,84,.28)!important;font-size:clamp(21px,2vw,27px)!important;line-height:1.12!important;font-weight:800!important;color:#fff!important}
.esi-results-grid .esi-result-heading{display:flex!important;align-items:center!important;gap:10px!important;margin:0 0 13px!important;font-size:clamp(21px,2vw,26px)!important;line-height:1.2!important;letter-spacing:4px!important;font-weight:800!important;color:#fff!important;white-space:nowrap!important}
.esi-results-grid .esi-result-heading:before,.esi-results-grid .esi-result-heading:after{content:"";height:2px;background:linear-gradient(90deg,transparent,#fff)!important;flex:1;min-width:0}.esi-results-grid .esi-result-heading:after{transform:rotate(180deg)}
.esi-results-grid .esi-result-athlete{display:grid!important;grid-template-columns:minmax(0,42%) minmax(0,1fr)!important;align-items:center!important;gap:11px!important;padding:14px 0!important;border-bottom:1px solid rgba(255,255,255,.28)!important;text-align:left!important;min-width:0!important}
.esi-results-grid .esi-result-athlete img{display:block!important;width:100%!important;aspect-ratio:1/1!important;height:auto!important;min-width:0!important;object-fit:cover!important;object-position:center top!important;border:3px solid #fff!important;border-radius:20px!important;box-shadow:0 0 6px rgba(255,255,255,.3)!important}
.esi-results-grid .esi-result-athlete>div{min-width:0!important;border-left:3px solid rgba(255,255,255,.93)!important;padding-left:11px!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.esi-results-grid .esi-result-athlete strong,.esi-results-grid .esi-result-athlete strong a{display:block!important;font-size:clamp(27px,2.6vw,37px)!important;line-height:1.02!important;font-weight:800!important;color:#fff!important;overflow-wrap:normal!important;word-break:normal!important}
.esi-results-grid .esi-result-stats{display:flex!important;flex-wrap:wrap!important;align-items:baseline!important;column-gap:7px!important;row-gap:5px!important;margin-top:12px!important;font-size:clamp(19px,1.9vw,25px)!important;line-height:1.12!important;color:#fff!important}
.esi-results-grid .esi-result-stats b{font-weight:800!important}.esi-results-grid .esi-result-stats em{font-style:normal!important;color:#ff245a!important;font-size:1.15em!important;font-weight:800!important}
.esi-results-grid .esi-stat-time{border-left:2px solid rgba(255,255,255,.85)!important;padding-left:9px!important}
.esi-results-grid .esi-athlete-wa{font-size:15px!important;color:#ffa4c4!important;text-decoration:underline!important}
.esi-results-grid .esi-result-pending{font-size:22px!important;color:#ddd!important}
.esi-results-grid .esi-result-official{display:flex!important;align-items:center!important;justify-content:center!important;min-height:54px!important;padding:8px 9px!important;margin-top:auto!important;border:2px solid #fff0ff!important;border-radius:999px!important;background:linear-gradient(100deg,#c3420a 0%,#b41e3e 45%,#750094 100%)!important;box-shadow:0 0 0 1px #ff3fe9,0 0 12px 4px rgba(255,46,221,.72),0 0 26px rgba(247,36,194,.55),inset 0 2px rgba(255,255,255,.48)!important;color:#fff!important;font-size:clamp(17px,1.7vw,23px)!important;line-height:1.15!important;font-weight:800!important;text-shadow:0 1px 1px rgba(0,0,0,.45)!important;transition:transform .18s ease,filter .18s ease!important}
.esi-results-grid .esi-result-athlete+.esi-result-official{margin-top:25px!important}
.esi-results-grid .esi-result-official:hover,.esi-results-grid .esi-result-logo:hover{transform:translateY(-2px)!important;filter:brightness(1.2)!important}
.esi-results-grid .esi-result-official:active{transform:translateY(1px) scale(.985)!important}
.esi-results-grid .esi-result-official:focus-visible{outline:3px solid white!important;outline-offset:4px!important}
@media(max-width:1120px){.esi-results-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:900px!important}.esi-results-grid .esi-result-athlete strong,.esi-results-grid .esi-result-athlete strong a{font-size:35px!important}.esi-results-grid .esi-result-stats{font-size:23px!important}}
@media(max-width:700px){.esi-results-grid{grid-template-columns:minmax(0,1fr)!important;max-width:470px!important}.esi-results-grid .esi-result-card{padding:23px 15px!important}.esi-results-grid .esi-result-athlete strong,.esi-results-grid .esi-result-athlete strong a{font-size:clamp(27px,7vw,38px)!important}.esi-results-grid .esi-result-stats{font-size:clamp(19px,5vw,25px)!important}.esi-results-grid .esi-result-card h3,.esi-results-grid .esi-result-card h3 a{font-size:clamp(32px,8vw,43px)!important}}
@media(max-width:370px){.esi-results-grid .esi-result-athlete{grid-template-columns:37% minmax(0,1fr)!important;gap:7px!important}.esi-results-grid .esi-result-athlete>div{padding-left:8px!important}.esi-results-grid .esi-result-athlete strong,.esi-results-grid .esi-result-athlete strong a{font-size:26px!important}.esi-results-grid .esi-result-stats{font-size:19px!important}}
@media(prefers-reduced-motion:reduce){.esi-results-grid .esi-result-logo,.esi-results-grid .esi-result-official{transition:none!important}}

/* v2.4.0: Single authoritative athlete layout. Avoid competing older media rules. */
.esi-results-grid .esi-result-card{container-type:inline-size!important;padding:24px 13px 22px!important}
.esi-results-grid .esi-result-athlete{display:grid!important;grid-template-columns:minmax(0,40%) minmax(0,1fr)!important;gap:9px!important;align-items:center!important;min-height:165px!important;padding:15px 0!important}
.esi-results-grid .esi-result-athlete>img{width:100%!important;height:auto!important;aspect-ratio:1/1!important;max-width:none!important;min-width:0!important;object-fit:cover!important;border:3px solid #fff!important;border-radius:18px!important}
.esi-results-grid .esi-result-athlete>div{min-width:0!important;min-height:125px!important;padding-left:9px!important;border-left:2px solid #fff!important;display:flex!important;flex-direction:column!important;justify-content:center!important}
.esi-results-grid .esi-result-athlete strong,.esi-results-grid .esi-result-athlete strong a{font-size:34px!important;line-height:1.03!important;font-weight:800!important;letter-spacing:-.5px!important;overflow-wrap:anywhere!important}
.esi-results-grid .esi-result-stats{display:flex!important;flex-wrap:wrap!important;align-items:baseline!important;gap:5px 9px!important;margin-top:12px!important;font-size:24px!important;line-height:1.15!important;white-space:normal!important}
.esi-results-grid .esi-stat-place,.esi-results-grid .esi-stat-time{white-space:nowrap!important}
.esi-results-grid .esi-stat-time{border-left:2px solid rgba(255,255,255,.9)!important;padding-left:9px!important}
.esi-results-grid .esi-result-stats em{font-size:1.1em!important;color:#ff245a!important}
/* Card-width-aware adjustments: preserve legibility even in a three-column grid. */
@container (max-width:390px){
 .esi-result-athlete{grid-template-columns:minmax(0,37%) minmax(0,1fr)!important;gap:8px!important}
 .esi-result-athlete strong,.esi-result-athlete strong a{font-size:30px!important}
 .esi-result-stats{font-size:21px!important}
}
@container (max-width:325px){
 .esi-result-athlete{grid-template-columns:minmax(0,34%) minmax(0,1fr)!important;gap:7px!important}
 .esi-result-athlete strong,.esi-result-athlete strong a{font-size:27px!important}
 .esi-result-stats{font-size:19px!important}
}
@media(max-width:700px){.esi-results-grid .esi-result-athlete{grid-template-columns:minmax(0,38%) minmax(0,1fr)!important}}

/* v2.5.0 — automatic event-logo color theming. Layout and sizing unchanged. */
.esi-results-grid .esi-result-card{
 background:radial-gradient(ellipse at 85% 85%,color-mix(in srgb,var(--esi-logo-color,#a32acb) 34%,transparent),transparent 64%),radial-gradient(ellipse at 12% 12%,color-mix(in srgb,var(--esi-logo-color,#a32acb) 22%,transparent),transparent 58%),linear-gradient(145deg,#13091e,#1a0925 55%,#230c30)!important;
 border-color:color-mix(in srgb,var(--esi-logo-color,#a32acb) 50%,white)!important;
 box-shadow:0 0 20px color-mix(in srgb,var(--esi-logo-color,#a32acb) 30%,transparent),inset 0 0 22px color-mix(in srgb,var(--esi-logo-color,#a32acb) 13%,transparent)!important;
}
.esi-results-grid .esi-result-logo{
 background:linear-gradient(135deg,color-mix(in srgb,var(--esi-logo-color,#a32acb) 35%,transparent),rgba(15,8,29,.24))!important;
 box-shadow:0 0 0 3px color-mix(in srgb,var(--esi-logo-color,#a32acb) 70%,white),0 0 12px 5px color-mix(in srgb,var(--esi-logo-color,#a32acb) 75%,transparent),0 0 34px 11px color-mix(in srgb,var(--esi-logo-color,#a32acb) 55%,transparent),inset 0 0 13px 2px color-mix(in srgb,var(--esi-logo-color,#a32acb) 55%,white)!important;
}
.esi-results-grid .esi-result-logo:before{box-shadow:inset 0 0 9px color-mix(in srgb,var(--esi-logo-color,#a32acb) 70%,white),0 0 8px var(--esi-logo-color,#a32acb)!important}
.esi-results-grid .esi-result-logo:after{background:radial-gradient(ellipse,#fff 0%,color-mix(in srgb,var(--esi-logo-color,#a32acb) 35%,white) 28%,var(--esi-logo-color,#a32acb) 55%,transparent 78%)!important;box-shadow:0 0 11px 5px var(--esi-logo-color,#a32acb),0 0 26px 10px color-mix(in srgb,var(--esi-logo-color,#a32acb) 65%,transparent)!important}

/* v2.6.0: Historical year filter; card appearance unchanged. */
.esi-results-year-filter{display:flex;align-items:center;justify-content:flex-end;gap:14px;max-width:1380px;width:100%;margin:0 auto 24px;font-family:'Barlow Condensed',Arial,sans-serif;color:#fff}
.esi-results-year-filter label{font-size:23px;font-weight:700;letter-spacing:.3px}
.esi-results-year-filter select{appearance:auto;background:#1d1427;color:#fff;border:1px solid #ba80d4;border-radius:12px;padding:9px 34px 9px 15px;min-width:145px;font:700 21px 'Barlow Condensed',Arial,sans-serif;cursor:pointer}
.esi-results-year-filter select:focus-visible{outline:3px solid #f4c4ff;outline-offset:3px}
.esi-results-year-filter option{background:#1d1427;color:#fff}
@media(max-width:700px){.esi-results-year-filter{justify-content:center;flex-wrap:wrap;gap:9px}.esi-results-year-filter label{font-size:20px}}

/* ESI v2.7.0: accessible paginated results, preserving event card styles */
.esi-results-pagination{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap;margin:34px auto 48px;padding:0 12px;font-family:"Barlow Condensed",sans-serif}
.esi-results-pagination a,.esi-results-pagination .esi-page-number{display:inline-flex;justify-content:center;align-items:center;min-width:42px;min-height:42px;padding:8px 13px;border:1px solid rgba(255,255,255,.35);border-radius:24px;color:#fff;text-decoration:none;font-size:19px;font-weight:700;background:#211a2b;transition:background .2s,border-color .2s}
.esi-results-pagination a:hover,.esi-results-pagination a:focus-visible{border-color:#e93672;background:#512040;color:#fff}
.esi-results-pagination .is-active{background:#d51641;border-color:#d51641;color:white}
.esi-results-pagination .esi-page-ellipsis{color:#ddd;padding:0 2px}
@media(max-width:480px){.esi-results-pagination{gap:5px}.esi-results-pagination a,.esi-results-pagination .esi-page-number{min-width:36px;min-height:36px;padding:6px 9px;font-size:16px}}

/* v2.8.0: Only the event logo frame glows, in its own detected logo color. */
.esi-results-grid .esi-result-card{box-shadow:none!important}
.esi-results-grid .esi-result-badge{box-shadow:none!important}
.esi-results-grid .esi-result-official{box-shadow:none!important}
.esi-results-grid .esi-result-athlete img{box-shadow:none!important}
.esi-results-grid .esi-result-logo{
 border-color:color-mix(in srgb,var(--esi-logo-color,#a32acb) 45%,white)!important;
 box-shadow:0 0 0 1px color-mix(in srgb,var(--esi-logo-color,#a32acb) 60%,white),0 0 12px 3px color-mix(in srgb,var(--esi-logo-color,#a32acb) 55%,transparent),0 0 23px 5px color-mix(in srgb,var(--esi-logo-color,#a32acb) 25%,transparent)!important;
}
.esi-results-grid .esi-result-logo:before{box-shadow:none!important}
.esi-results-grid .esi-result-logo:after{display:none!important}

/* v2.8.1: clearly visible logo-only color-matched halo. Placed last to override theme CSS. */
.esi-results-grid .esi-result-card .esi-result-logo {
  position:relative!important;
  overflow:visible!important;
  border-color:color-mix(in srgb,var(--esi-logo-color,#a32acb) 58%,white)!important;
  box-shadow:
    0 0 0 2px color-mix(in srgb,var(--esi-logo-color,#a32acb) 70%,white),
    0 0 10px 3px var(--esi-logo-color,#a32acb),
    0 0 23px 7px color-mix(in srgb,var(--esi-logo-color,#a32acb) 82%,transparent),
    0 0 43px 10px color-mix(in srgb,var(--esi-logo-color,#a32acb) 50%,transparent)!important;
}
/* Keep glow exclusive to the logo frame. */
.esi-results-grid .esi-result-card,
.esi-results-grid .esi-result-badge,
.esi-results-grid .esi-result-official,
.esi-results-grid .esi-result-athlete img {box-shadow:none!important}

/* v2.8.2 — vivid, sample-style halo confined to the logo frame only. */
.esi-results-grid .esi-result-card .esi-result-logo {
  --esi-neon:var(--esi-logo-glow,#d936ff);
  isolation:isolate!important;
  overflow:visible!important;
  border-color:color-mix(in srgb,var(--esi-neon) 45%,white)!important;
  box-shadow:
    0 0 0 3px color-mix(in srgb,var(--esi-neon) 55%,white),
    0 0 7px 3px var(--esi-neon),
    0 0 17px 6px var(--esi-neon),
    0 0 33px 11px color-mix(in srgb,var(--esi-neon) 85%,transparent),
    0 0 57px 16px color-mix(in srgb,var(--esi-neon) 56%,transparent),
    inset 0 0 9px 1px color-mix(in srgb,var(--esi-neon) 45%,transparent)!important;
}
.esi-results-grid .esi-result-card .esi-result-logo::before {
  content:""!important;
  position:absolute!important;
  pointer-events:none!important;
  inset:-4px!important;
  z-index:-1!important;
  border-radius:31px!important;
  border:4px solid var(--esi-neon)!important;
  filter:blur(9px)!important;
  opacity:1!important;
  box-shadow:0 0 20px 9px var(--esi-neon)!important;
}
.esi-results-grid .esi-result-card .esi-result-logo::after {display:none!important}

/* v2.8.3 — neon card outline and RESULTS divider, matched to each logo. */
.esi-results-grid .esi-result-card {
  --esi-neon:var(--esi-logo-glow,#d936ff);
  border-color:color-mix(in srgb,var(--esi-neon) 58%,white)!important;
  box-shadow:0 0 0 1px var(--esi-neon),0 0 8px 2px var(--esi-neon),0 0 22px 5px color-mix(in srgb,var(--esi-neon) 75%,transparent),0 0 40px 8px color-mix(in srgb,var(--esi-neon) 40%,transparent)!important;
}
.esi-results-grid .esi-result-card .esi-result-logo {margin-bottom:30px!important;}
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  height:3px!important;
  background:linear-gradient(90deg,transparent,var(--esi-neon))!important;
  box-shadow:0 0 5px 1px var(--esi-neon),0 0 14px 3px color-mix(in srgb,var(--esi-neon) 75%,transparent)!important;
}
.esi-results-grid .esi-result-card .esi-result-heading::after {transform:rotate(180deg)!important;}

/* v2.8.4 — thin, restrained outer-card glow only. All other elements unchanged. */
.esi-results-grid .esi-result-card {
  box-shadow:
    0 0 0 1px color-mix(in srgb,var(--esi-neon,var(--esi-logo-glow,#d936ff)) 70%,transparent),
    0 0 5px 1px color-mix(in srgb,var(--esi-neon,var(--esi-logo-glow,#d936ff)) 48%,transparent),
    0 0 10px 2px color-mix(in srgb,var(--esi-neon,var(--esi-logo-glow,#d936ff)) 20%,transparent)!important;
}

/* v2.8.5 — consistent per-event neon color. Preserve the approved thin card glow,
   bright logo-frame halo, and glowing RESULTS dividers; do not alter logo artwork. */
.esi-results-grid .esi-result-card {
  --esi-neon: var(--esi-logo-glow, #d936ff);
  border-color: color-mix(in srgb, var(--esi-neon) 65%, white) !important;
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--esi-neon) 70%, transparent),
    0 0 5px 1px color-mix(in srgb, var(--esi-neon) 48%, transparent),
    0 0 10px 2px color-mix(in srgb, var(--esi-neon) 20%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-logo {
  border-color: color-mix(in srgb, var(--esi-neon) 45%, white) !important;
  box-shadow:
    0 0 0 2px color-mix(in srgb, var(--esi-neon) 60%, white),
    0 0 12px 4px var(--esi-neon),
    0 0 27px 9px color-mix(in srgb, var(--esi-neon) 72%, transparent),
    0 0 43px 12px color-mix(in srgb, var(--esi-neon) 42%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  background: linear-gradient(90deg, transparent, var(--esi-neon)) !important;
  box-shadow: 0 0 5px 1px var(--esi-neon),
    0 0 14px 3px color-mix(in srgb, var(--esi-neon) 75%, transparent) !important;
}

/* v2.8.6: final reference match. Override accumulated legacy neon rules.
   Logo image, athlete content, button, and pagination are unchanged. */
.esi-results-grid .esi-result-card {
  --esi-neon: var(--esi-logo-glow, #d936ff);
  border: 2px solid color-mix(in srgb, var(--esi-neon) 62%, white) !important;
  box-shadow: 0 0 0 1px color-mix(in srgb, var(--esi-neon) 52%, transparent),
              0 0 6px 1px color-mix(in srgb, var(--esi-neon) 43%, transparent),
              0 0 13px 2px color-mix(in srgb, var(--esi-neon) 20%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-logo {
  margin-bottom: 30px !important;
  border-color: color-mix(in srgb, var(--esi-neon) 35%, white) !important;
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--esi-neon) 50%, white),
              0 0 7px 2px var(--esi-neon),
              0 0 17px 5px color-mix(in srgb, var(--esi-neon) 72%, transparent),
              0 0 29px 8px color-mix(in srgb, var(--esi-neon) 34%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-logo::before {
  box-shadow: 0 0 5px color-mix(in srgb, var(--esi-neon) 65%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-logo::after {
  background: radial-gradient(ellipse, #fff 0%, color-mix(in srgb,var(--esi-neon) 45%,white) 35%, var(--esi-neon) 65%, transparent 85%) !important;
  box-shadow: 0 0 7px 2px color-mix(in srgb,var(--esi-neon) 75%,transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  height: 2px !important;
  background: linear-gradient(90deg, transparent, color-mix(in srgb,var(--esi-neon) 55%,white), var(--esi-neon)) !important;
  box-shadow: 0 0 4px 1px var(--esi-neon),
              0 0 10px 2px color-mix(in srgb,var(--esi-neon) 55%,transparent) !important;
}

/* v2.8.7 — match approved reference: only the outer outline and RESULTS rays.
   Preserve the logo artwork/frame and all other card elements unchanged. */
.esi-results-grid .esi-result-card {
  border-width: 2px !important;
  border-style: solid !important;
  border-color: color-mix(in srgb, var(--esi-neon, #d936ff) 66%, white) !important;
  box-shadow:
    0 0 0 1px color-mix(in srgb, var(--esi-neon, #d936ff) 76%, white),
    0 0 5px 1px color-mix(in srgb, var(--esi-neon, #d936ff) 60%, transparent),
    0 0 13px 2px color-mix(in srgb, var(--esi-neon, #d936ff) 25%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  height: 2px !important;
  border: 0 !important;
  opacity: 1 !important;
  filter: none !important;
  /* No dark center: the white-hot highlight is closest to RESULTS. */
  background: linear-gradient(90deg,
    transparent 0%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 38%, transparent) 28%,
    var(--esi-neon, #d936ff) 66%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 32%, white) 90%,
    #fff 100%) !important;
  box-shadow: 0 0 5px 1px color-mix(in srgb, var(--esi-neon, #d936ff) 65%, transparent),
              0 0 11px 2px color-mix(in srgb, var(--esi-neon, #d936ff) 33%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before { transform: none !important; }
.esi-results-grid .esi-result-card .esi-result-heading::after { transform: rotate(180deg) !important; }

/* v2.8.8 — final requested refinement: thinner outer border and clean luminous RESULTS rays.
   Do not alter logo/frame, card content, typography or layout. */
.esi-results-grid .esi-result-card {
  border-width: 1px !important;
  border-color: color-mix(in srgb, var(--esi-neon, #d936ff) 72%, white) !important;
  box-shadow: 0 0 3px 0 color-mix(in srgb, var(--esi-neon, #d936ff) 55%, transparent),
              0 0 9px 1px color-mix(in srgb, var(--esi-neon, #d936ff) 30%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  height: 2px !important;
  opacity: 1 !important;
  transform: none !important;
  filter: none !important;
  box-shadow: 0 0 4px 1px color-mix(in srgb, var(--esi-neon, #d936ff) 65%, transparent),
              0 0 9px 2px color-mix(in srgb, var(--esi-neon, #d936ff) 35%, transparent) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before {
  background: linear-gradient(to right, transparent 0%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 50%, transparent) 18%,
    var(--esi-neon, #d936ff) 55%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 40%, white) 90%,
    #fff 100%) !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::after {
  background: linear-gradient(to left, transparent 0%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 50%, transparent) 18%,
    var(--esi-neon, #d936ff) 55%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 40%, white) 90%,
    #fff 100%) !important;
}

/* v2.8.9 — exact tapered neon RESULTS rays. Only the heading's two lines change.
   The 8px ray is widest at its bright core and tapers to sharp points. */
.esi-results-grid .esi-result-card .esi-result-heading::before,
.esi-results-grid .esi-result-card .esi-result-heading::after {
  content: "" !important;
  display: block !important;
  flex: 1 1 0 !important;
  min-width: 0 !important;
  height: 8px !important;
  border: 0 !important;
  border-radius: 0 !important;
  opacity: 1 !important;
  /* The bright ray has pointed ends, not a rectangular dark-to-light stripe. */
  clip-path: polygon(0 50%, 12% 36%, 52% 28%, 88% 38%, 100% 50%, 88% 62%, 52% 72%, 12% 64%) !important;
  background: linear-gradient(90deg,
    transparent 0%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 55%, transparent) 9%,
    var(--esi-neon, #d936ff) 26%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 35%, white) 45%,
    #fff 62%,
    color-mix(in srgb, var(--esi-neon, #d936ff) 25%, white) 77%,
    var(--esi-neon, #d936ff) 91%,
    transparent 100%) !important;
  filter: drop-shadow(0 0 3px var(--esi-neon, #d936ff))
          drop-shadow(0 0 6px var(--esi-neon, #d936ff)) !important;
  box-shadow: none !important;
}
.esi-results-grid .esi-result-card .esi-result-heading::before { transform: none !important; }
.esi-results-grid .esi-result-card .esi-result-heading::after { transform: scaleX(-1) !important; }

/* ESI v2.9.0 achievements: additive styles; preserve approved neon design. */
.esi-results-grid .esi-athlete-photo-wrap{position:relative;display:block;min-width:0;align-self:center}
.esi-results-grid .esi-athlete-photo-wrap>img{display:block;width:100%!important;height:auto!important;aspect-ratio:1/1!important;object-fit:cover!important;border:3px solid #fff!important;border-radius:18px!important}
.esi-results-grid .esi-athlete-medal{position:absolute;top:-11px;left:-11px;z-index:2;font-size:30px;line-height:1;background:rgba(17,13,25,.92);border-radius:50%;padding:5px;filter:drop-shadow(0 2px 5px rgba(0,0,0,.7))}
.esi-results-grid .esi-achievement-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:10px}
.esi-results-grid .esi-record-badge,.esi-results-grid .esi-championship-badge{display:inline-flex;align-items:center;border-radius:5px;padding:3px 7px;font-size:12px;font-weight:800;line-height:1.3;color:#fff;border:1px solid var(--esi-logo-glow,#b852e8);background:rgba(24,16,37,.85)}
.esi-results-grid .esi-championship-badge{font-size:11px;font-weight:700}

/* v2.9.1 — authentic uploaded championship logos, never cropped. */
.esi-results-grid .esi-championship-badge{gap:5px;max-width:100%;white-space:normal}
.esi-results-grid .esi-championship-logo{display:block!important;flex:none;width:auto!important;height:auto!important;max-width:24px!important;max-height:22px!important;object-fit:contain!important;border:0!important;border-radius:0!important;box-shadow:none!important}

/* v2.9.3 — realistic numbered medals, not oversized emoji; consistent event-logo frames. */
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap {position:relative!important;overflow:visible!important;}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal {
  position:absolute!important;top:-8px!important;left:-8px!important;right:auto!important;bottom:auto!important;
  display:block!important;width:44px!important;height:52px!important;max-width:44px!important;max-height:52px!important;
  aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;
  padding:0!important;margin:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.8))!important;
  z-index:5!important;pointer-events:none!important;
}
.esi-results-grid .esi-result-card .esi-result-logo {
  width:min(235px,82%)!important;aspect-ratio:1/1!important;height:auto!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
}
.esi-results-grid .esi-result-card .esi-result-logo > img {
  width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;
  object-fit:contain!important;object-position:center!important;
}
@media(max-width:600px){.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal{width:38px!important;height:46px!important;max-width:38px!important;max-height:46px!important}}

/* v2.9.4 — compact universal logo frames; fully inset numbered medal. */
.esi-results-grid .esi-result-card .esi-result-logo {
  width: min(185px, 62%) !important;
  max-width: 185px !important;
  height: auto !important;
  aspect-ratio: 1 / 1 !important;
  flex: 0 0 auto !important;
  padding: 9px !important;
}
.esi-results-grid .esi-result-card .esi-result-logo > img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center !important;
}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal {
  top: 5px !important;
  left: 5px !important;
  width: 40px !important;
  height: 47px !important;
  max-width: 40px !important;
  max-height: 47px !important;
}
@media (max-width: 600px) {
  .esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal {
    top: 4px !important;
    left: 4px !important;
    width: 36px !important;
    height: 43px !important;
    max-width: 36px !important;
    max-height: 43px !important;
  }
}

/* v2.9.5 — single universal fixed-size event-logo frame, regardless of source aspect ratio.
   This intentionally overrides the legacy 235px and 185px rules. */
.esi-results-grid .esi-result-card > a.esi-result-logo,
.esi-results-grid .esi-result-card a.esi-result-logo {
  box-sizing: border-box !important;
  width: 160px !important;
  min-width: 160px !important;
  max-width: 160px !important;
  height: 160px !important;
  min-height: 160px !important;
  max-height: 160px !important;
  aspect-ratio: 1 / 1 !important;
  flex: 0 0 160px !important;
  padding: 9px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  overflow: hidden !important;
}
.esi-results-grid .esi-result-card a.esi-result-logo > img {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  height: 100% !important;
  min-width: 0 !important;
  min-height: 0 !important;
  max-width: 100% !important;
  max-height: 100% !important;
  object-fit: contain !important;
  object-position: center center !important;
  margin: 0 !important;
}
@media (max-width: 370px) {
  .esi-results-grid .esi-result-card a.esi-result-logo {
    width: 140px !important; min-width: 140px !important; max-width: 140px !important;
    height: 140px !important; min-height: 140px !important; max-height: 140px !important;
    flex-basis: 140px !important;
  }
}

/* v2.9.6: month groups and guest nationality badges */
.esi-results-grid .esi-results-month-heading{grid-column:1/-1!important;margin:18px 0 0!important;font:700 26px/1.2 'Barlow Condensed',sans-serif!important;letter-spacing:.045em;color:#f5e9ff!important;text-transform:uppercase;border-bottom:1px solid rgba(195,123,255,.35);padding-bottom:9px;}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap{position:relative!important;}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap>.esi-athlete-flag{position:absolute;left:4px;top:4px;z-index:8;display:flex;align-items:center;justify-content:center;width:28px;height:24px;border-radius:4px;background:rgba(18,12,27,.8);font-size:20px;line-height:1;box-shadow:0 1px 5px #0008;}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap>img.esi-athlete-medal{left:auto!important;right:3px!important;top:3px!important;width:36px!important;max-width:36px!important;height:44px!important;max-height:44px!important;object-fit:contain!important;z-index:7!important;}

/* v2.9.9: rectangular national flag at upper-right edge; medal at upper-left. */
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-flag {
 position:absolute!important;left:auto!important;right:0!important;top:0!important;
 width:30px!important;height:21px!important;max-width:30px!important;max-height:21px!important;
 object-fit:cover!important;object-position:center!important;display:block!important;
 border:1px solid rgba(255,255,255,.85)!important;border-radius:0!important;
 padding:0!important;background:transparent!important;box-shadow:0 1px 4px rgba(0,0,0,.55)!important;z-index:9!important;
}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal {
 left:3px!important;right:auto!important;top:3px!important;
}

/* v2.9.10 — approved portrait badges: separate rectangular country flag
   upper-right, photorealistic numbered medal with solid burgundy ribbon upper-left.
   Medal PNGs contain no national flags and are preserved without recoloring. */
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap { position:relative!important; }
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-flag {
 position:absolute!important;top:0!important;right:0!important;left:auto!important;
 width:30px!important;height:21px!important;max-width:30px!important;max-height:21px!important;
 border-radius:0!important;object-fit:cover!important;z-index:10!important;
}
.esi-results-grid .esi-result-card .esi-athlete-photo-wrap > img.esi-athlete-medal {
 position:absolute!important;top:3px!important;left:3px!important;right:auto!important;
 width:36px!important;height:44px!important;max-width:36px!important;max-height:44px!important;
 object-fit:contain!important;z-index:9!important;
}

/* v2.9.12 — nationality flag in right-side results details, below RESULTS divider.
   Do not overlay athlete portraits; keep medal/ribbon at portrait top-left. */
.esi-results-grid .esi-result-card .esi-result-athlete > .esi-result-athlete-details {
 position:relative!important; align-self:stretch!important; justify-content:center!important;
 padding-top:34px!important;
}
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline {
 position:absolute!important; top:1px!important; right:0!important; left:auto!important;
 width:48px!important; height:32px!important; display:block!important; z-index:2!important;
}
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline img {
 display:block!important; width:48px!important; height:32px!important;
 min-width:48px!important; max-width:48px!important; min-height:32px!important; max-height:32px!important;
 aspect-ratio:3/2!important; object-fit:cover!important; border-radius:2px!important;
 border:1px solid rgba(255,255,255,.75)!important; box-shadow:0 2px 5px rgba(0,0,0,.4)!important;
}

/* v2.9.13 — compact rectangular flag aligned to far right under RESULTS divider */
.esi-results-grid .esi-result-card .esi-result-athlete > .esi-result-athlete-details {
 padding-top: 30px !important;
}
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline {
 top: 0 !important; right: 0 !important; left: auto !important;
 width: 36px !important; height: 24px !important;
}
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline img {
 width: 36px !important; height: 24px !important;
 min-width: 36px !important; max-width: 36px !important;
 min-height: 24px !important; max-height: 24px !important;
}

/* v2.9.14 — slightly larger 42×28 rectangular flag, same far-right placement. */
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline {
 top:0!important; right:0!important; left:auto!important;
 width:42px!important; height:28px!important;
}
.esi-results-grid .esi-result-card .esi-result-athlete .esi-athlete-flag-inline img {
 width:42px!important; height:28px!important;
 min-width:42px!important; max-width:42px!important;
 min-height:28px!important; max-height:28px!important;
}

/* v2.9.16 — breathing room between Browse results by year and event cards. */
.esi-results-year-filter { margin-bottom: 52px !important; }
@media (max-width:700px) { .esi-results-year-filter { margin-bottom: 36px !important; } }
