.results-page{max-width:1000px;margin:35px auto 60px}
.results-heading{margin-bottom:28px}
.results-heading .eyebrow{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--ink);font-size:11px}
.results-heading h1{font-family:'Archivo Black',sans-serif;font-weight:400;font-size:clamp(42px,5.9vw,75px);line-height:1.08;letter-spacing:-.065em;margin:0 0 17px}
.results-heading h1>span{color:var(--coral)}
.results-heading>p{margin:0;font-size:15px;font-weight:600;line-height:1.6}
.finish-hero{display:grid;grid-template-columns:minmax(0,1fr) 170px;align-items:center;gap:22px;background:var(--purple);border:3px solid var(--ink);border-radius:18px;padding:30px 32px;box-shadow:7px 7px 0 var(--ink)}
.finish-score-block{min-width:0}
.finish-topline{display:flex;align-items:center;gap:15px;flex-wrap:wrap;font-size:11px;font-weight:800;letter-spacing:.06em}
.finish-rank{display:inline-flex;align-items:center;gap:7px;background:var(--cream);border:2px solid var(--ink);border-radius:7px;padding:7px 10px;letter-spacing:0;font-size:11px;transform:rotate(-3deg)}
.finish-rank .icon{width:16px;height:16px}
.finish-score{display:flex;align-items:baseline;gap:15px;flex-wrap:wrap;margin-top:20px;font-variant-numeric:tabular-nums}
.finish-score>strong{font-family:'Archivo Black',sans-serif;font-size:clamp(55px,7vw,94px);font-weight:400;letter-spacing:-.07em;line-height:1.05;min-width:5.2ch;white-space:nowrap}
.finish-score>span{font-family:'Space Grotesk',sans-serif;font-size:22px;font-weight:600;white-space:nowrap}
.finish-score>span small{font-size:12px;font-family:'Manrope',sans-serif;font-weight:700}
.finish-hero h2{font-family:'Space Grotesk',sans-serif;font-weight:700;letter-spacing:-.04em;font-size:26px;line-height:1.2;margin:20px 0 17px}
.finish-meter{height:13px;border:2px solid var(--ink);border-radius:5px;overflow:hidden;background:var(--cream)}
.finish-meter>span{display:block;height:100%;background:var(--ink)}
.finish-caption{font-size:11px;font-weight:600;margin:9px 0 0;line-height:1.5}
.finish-emblem{display:grid;place-items:center;width:142px;height:142px;border:3px solid var(--ink);border-radius:50%;background:var(--coral);box-shadow:5px 5px 0 var(--ink);transform:rotate(9deg);justify-self:center}
.finish-emblem .icon{width:80px;height:80px;stroke-width:1.7}
.finish-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px;margin-top:26px}
.finish-stat{display:grid;grid-template-columns:1fr auto;gap:11px 7px;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);border-radius:12px;padding:21px;background:var(--blue);min-width:0}
.finish-stat:nth-child(2){background:#ffb6a1}.finish-stat:nth-child(3){background:var(--cream)}
.finish-stat>.icon{grid-column:2;grid-row:1;width:21px;height:21px}
.finish-stat>span{grid-column:1;grid-row:1;font-size:11px;font-weight:800;align-self:center;line-height:1.4}
.finish-stat>strong{grid-column:1 / -1;font-family:'Space Grotesk',sans-serif;font-size:36px;line-height:1.1;font-weight:700;letter-spacing:-.055em;font-variant-numeric:tabular-nums}
.finish-stat>strong em{font-style:normal;font-size:.58em;font-weight:500}
.finish-stat>small{grid-column:1 / -1;font-size:10px;font-weight:600;line-height:1.5;overflow-wrap:anywhere}
.results-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap;margin:31px 0 15px}
.results-actions .btn{font-size:13px}
.results-home{display:inline-flex;align-items:center;gap:8px;border:0;background:none;padding:10px 5px;font-size:12px;font-weight:700;cursor:pointer;margin-left:auto}
.results-home:hover{text-decoration:underline;text-underline-offset:4px}
.score-save-status{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:600;line-height:1.5;margin:17px 0 0}
.score-save-status .icon{width:16px;height:16px}
.results-section-heading{margin:40px 0 20px}
.results-section-heading h2{font-family:'Space Grotesk',sans-serif;font-size:33px;letter-spacing:-.05em;line-height:1.15;margin:0 0 8px}
.results-section-heading p{font-size:13px;line-height:1.6;margin:0}
.finish-standings ol{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.finish-standings li{display:flex;align-items:center;gap:15px;padding:16px 19px;background:var(--cream);border:2px solid var(--ink);border-radius:10px;box-shadow:3px 3px 0 var(--ink)}
.finish-standings li.is-me{background:var(--blue)}
.standing-rank{display:inline-flex;align-items:center;justify-content:center;width:30px;flex:none;font:700 22px 'Space Grotesk',sans-serif}
.finish-standings li>strong{display:flex;align-items:center;gap:8px;flex:1;font-size:17px;min-width:0;overflow-wrap:anywhere}
.finish-standings li>strong small{font-size:9px;border:1px solid var(--ink);border-radius:5px;padding:3px 5px}
.finish-standings li>span:last-child{font:700 23px 'Space Grotesk',sans-serif;white-space:nowrap}
.finish-standings li>span:last-child small{font:700 10px 'Manrope',sans-serif}
.recap-list{display:grid;gap:13px}
.recap-round{background:var(--cream);border:2px solid var(--ink);border-radius:12px;box-shadow:3px 3px 0 var(--ink);overflow:hidden}
.recap-round>summary{display:grid;grid-template-columns:30px 76px minmax(0,1fr) auto 27px;align-items:center;gap:15px;list-style:none;padding:13px 17px;cursor:pointer}
.recap-round>summary::-webkit-details-marker{display:none}
.recap-round>summary:focus-visible{outline:3px solid var(--coral);outline-offset:-5px}
.recap-round>summary:hover{background:#f0eedf}
.recap-close>summary{background:#eff8ce}
.recap-missed>summary{background:#eeeae2}
.recap-index{font:700 18px 'Space Grotesk',sans-serif}
.recap-thumb{width:76px;height:68px;object-fit:cover;border:2px solid var(--ink);border-radius:6px;background:var(--blue)}
.recap-place{display:flex;flex-direction:column;gap:5px;min-width:0}
.recap-place>strong{font:700 20px/1.2 'Space Grotesk',sans-serif;letter-spacing:-.035em;overflow-wrap:anywhere}
.recap-place>small{font-size:11px;font-weight:600;line-height:1.4}
.recap-place>span{font-size:10px;font-weight:800}
.recap-points{font:700 23px 'Space Grotesk',sans-serif;white-space:nowrap;text-align:right}
.recap-points>small{display:block;font:700 9px 'Manrope',sans-serif;letter-spacing:.05em}
.recap-expand{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border:1.5px solid var(--ink);border-radius:50%;background:var(--cream)}
.recap-expand>.icon{width:16px;height:16px;transition:transform .15s}
.recap-round[open] .recap-expand>.icon{transform:rotate(45deg)}
.recap-round[open]>summary{border-bottom:2px solid var(--ink);background:var(--blue)}
.recap-detail{padding:19px}
.recap-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px;align-items:start}
.recap-detail figure{margin:0;min-width:0}
.recap-detail figure>img{display:block;width:100%;height:250px;object-fit:contain;background:#eeeae2;border:2px solid var(--ink);border-radius:8px}
.recap-detail figcaption{font-size:9px;font-weight:500;line-height:1.5;margin-top:8px;overflow-wrap:anywhere}
.recap-map{height:250px;background:var(--blue);border:2px solid var(--ink);border-radius:8px;overflow:hidden}
.recap-map>p{font-size:12px;padding:20px;line-height:1.6}
.recap-map-wrap{min-width:0}
.recap-map-wrap .map-legend{padding-top:9px;gap:14px}
.recap-map-wrap .map-legend>span{font-size:10px}
.recap-explanation{font-size:12px;font-weight:500;line-height:1.7;margin:20px 0 12px}
.recap-external{display:inline-flex;align-items:center;gap:6px;font-size:10px;font-weight:800;text-decoration:underline;text-underline-offset:3px}
.recap-external .icon{width:14px;height:14px}
@media(max-width:850px){.results-page{margin-top:25px}.finish-hero{grid-template-columns:minmax(0,1fr) 120px;padding:24px}.finish-emblem{width:105px;height:105px}.finish-emblem .icon{width:60px;height:60px}.finish-score>strong{font-size:65px}.finish-score>span{font-size:17px}.finish-stats{gap:13px}.finish-stat{padding:16px}.finish-stat>strong{font-size:31px}.finish-stat>span{font-size:10px}.recap-round>summary{gap:10px;padding:12px}.recap-place>strong{font-size:18px}.results-actions .btn{font-size:12px}}
@media(max-width:560px){
  .shell-results{padding-bottom:calc(150px + env(safe-area-inset-bottom,0px))}
  .shell-results .topbar{margin-bottom:0}
  .shell-results .top-pill{font-size:8px;padding:8px;max-width:45%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}
  .results-page{margin:26px 0 25px}
  .results-heading{margin-bottom:22px}
  .results-heading .eyebrow{font-size:8px;letter-spacing:.035em;margin-bottom:15px;line-height:1.5}
  .results-heading h1{font-size:43px;letter-spacing:-.07em;line-height:1.1;margin-bottom:13px}
  .results-heading h1>span{white-space:nowrap}
  .results-heading>p{font-size:12px;line-height:1.6}
  .finish-hero{display:block;border-radius:13px;box-shadow:4px 4px 0 var(--ink);padding:20px 18px}
  .finish-topline{font-size:10px;gap:10px;justify-content:space-between}
  .finish-rank{font-size:9px;padding:6px 8px;gap:5px}
  .finish-rank .icon{width:14px;height:14px}
  .finish-emblem{display:none}
  .finish-score{margin-top:19px;gap:6px 10px}
  .finish-score>strong{font-size:57px;line-height:1.1;letter-spacing:-.07em;min-width:5.2ch}
  .finish-score>span{font-size:15px}.finish-score>span small{font-size:10px}
  .finish-hero h2{font-size:21px;margin:17px 0 15px;line-height:1.2}
  .finish-meter{height:11px}.finish-caption{font-size:9px;line-height:1.6;margin-top:8px}
  .finish-stats{gap:9px;margin-top:19px}
  .finish-stat{padding:12px 10px;border-width:2px;border-radius:9px;gap:9px 3px;box-shadow:2px 2px 0 var(--ink)}
  .finish-stat>.icon{display:none}
  .finish-stat>span{grid-column:1 / -1;grid-row:auto;font-size:9px;line-height:1.4;min-height:25px}
  .finish-stat>strong{font-size:25px;letter-spacing:-.065em;overflow-wrap:anywhere}
  .finish-stat:first-child>strong{font-size:clamp(15px,4.7vw,22px);line-height:1.45}
  .finish-stat>strong em{font-size:13px}
  .finish-stat>small{font-size:8px;line-height:1.5}
  .results-actions{position:fixed;bottom:0;left:0;right:0;z-index:1100;display:grid;grid-template-columns:1fr 1.4fr;gap:9px 10px;border-top:3px solid var(--ink);background:var(--yellow);padding:12px 16px calc(10px + env(safe-area-inset-bottom,0px));margin:0}
  .results-actions .btn{font-size:11px;min-height:48px;padding:9px;border-width:2px;box-shadow:3px 3px 0 var(--ink);gap:6px}
  .results-actions .btn .icon{width:17px;height:17px}
  .results-home{grid-column:1 / -1;justify-self:center;min-height:30px;padding:4px;margin:0;font-size:10px}
  .score-save-status{font-size:10px;margin:21px 0 0;align-items:flex-start;line-height:1.6}
  .score-save-status .icon{width:14px;height:14px;margin-top:1px}
  .results-section-heading{margin:29px 0 16px}
  .results-section-heading h2{font-size:27px;letter-spacing:-.055em;line-height:1.15;margin-bottom:9px}
  .results-section-heading p{font-size:11px}
  .finish-standings li{padding:12px 10px;gap:9px}.standing-rank{width:24px;font-size:17px}
  .standing-rank .icon{width:21px;height:21px}
  .finish-standings li>strong{font-size:13px;gap:6px}.finish-standings li>strong small{font-size:8px;padding:2px 4px}
  .finish-standings li>span:last-child{font-size:18px}.finish-standings li>span:last-child small{font-size:9px}
  .recap-list{gap:11px}
  .recap-round{border-radius:10px;box-shadow:2px 2px 0 var(--ink)}
  .recap-round>summary{grid-template-columns:48px minmax(0,1fr) auto 20px;gap:8px;padding:11px 9px}
  .recap-index{display:none}
  .recap-thumb{width:48px;height:59px;border-width:1.5px;border-radius:5px}
  .recap-place{gap:4px}.recap-place>strong{font-size:13px;line-height:1.25;letter-spacing:-.025em}
  .recap-place>small{font-size:9px;line-height:1.4}.recap-place>span{font-size:9px}
  .recap-points{font-size:17px;letter-spacing:-.03em}.recap-points>small{font-size:8px}
  .recap-expand{width:20px;height:20px}.recap-expand>.icon{width:13px;height:13px}
  .recap-detail{padding:13px 10px}
  .recap-detail-grid{grid-template-columns:1fr;gap:14px}
  .recap-detail figure>img{height:215px}.recap-detail figcaption{font-size:8px}
  .recap-map{height:245px}.recap-map-wrap .map-legend>span{font-size:9px}
  .recap-explanation{font-size:11px;margin:17px 0 12px}.recap-external{font-size:9px}
  .shell-results .footer{font-size:9px}
}
@media(max-width:370px){.results-heading h1{font-size:36px}.finish-score>strong{font-size:50px}.finish-hero{padding:18px 14px}.finish-stat{padding:11px 8px}.finish-stat>strong{font-size:22px}.finish-stat>span{font-size:8px}.finish-stat>small{font-size:7px}.results-actions .btn{font-size:10px}.recap-points{font-size:15px}.recap-round>summary{grid-template-columns:40px minmax(0,1fr) auto 18px;gap:6px}.recap-thumb{width:40px;height:56px}.recap-place>strong{font-size:12px}.recap-expand{width:18px;height:18px}}
