.recap-dialog{max-width:calc(min(1120px,92vw) + 1.5rem)}.recap-frame{--recap-chrome:9.5rem;container:recap-frame/inline-size}.recap-stage{aspect-ratio:9/16;width:min(100%, max(12rem, calc((100svh - var(--recap-chrome)) * 9 / 16)));isolation:isolate;border:1px solid var(--border);color:var(--foreground);font-family:var(--font-body);background:radial-gradient(60% 45% at 85% 0%, color-mix(in srgb, var(--accent) 16%, transparent), transparent 70%), var(--background);border-radius:14px;margin-inline:auto;position:relative;overflow:hidden;container:recap/size}@container recap-frame (min-width:36rem){.recap-stage{aspect-ratio:16/9;width:min(100%, max(18rem, calc((100svh - var(--recap-chrome)) * 16 / 9)))}}.recap-scene,.recap-topbar,.recap-progress{--u:calc(100cqw / 1920);--pad:calc(96 * var(--u))}@container recap (orientation:portrait){.recap-scene,.recap-topbar,.recap-progress{--u:calc(100cqw / 1080);--pad:calc(72 * var(--u))}}.recap-mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.recap-display{font-family:var(--font-display);font-weight:700}.recap-body-ink{color:color-mix(in srgb, var(--foreground) 78%, var(--muted))}.recap-muted{color:var(--muted)}.recap-accent{color:var(--accent-text)}.recap-tone-p1{--tone:var(--accent);--tone-ink:var(--accent-text)}.recap-tone-p2{--tone:var(--silver-ink);--tone-ink:var(--silver-ink)}.recap-tone-p3{--tone:var(--bronze-ink);--tone-ink:var(--bronze-ink)}.recap-tone-field{--tone:color-mix(in srgb, var(--muted) 45%, var(--border));--tone-ink:var(--muted)}.recap-topbar{z-index:2;left:var(--pad);right:var(--pad);top:calc(56 * var(--u));justify-content:space-between;align-items:center;gap:calc(24 * var(--u));pointer-events:none;display:flex;position:absolute}@container recap (orientation:portrait){.recap-topbar{top:calc(72 * var(--u))}}.recap-brand{align-items:center;gap:calc(14 * var(--u));min-width:0;display:flex}.recap-brand img{width:calc(60 * var(--u));height:calc(60 * var(--u));object-fit:contain;flex:none}.recap-brand span,.recap-tag{font-family:var(--font-mono);font-size:max(9px, calc(24 * var(--u)));letter-spacing:.16em;text-transform:uppercase;color:var(--muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.recap-tag{border:calc(2 * var(--u)) solid var(--border);border-radius:calc(8 * var(--u));padding:calc(6 * var(--u)) calc(12 * var(--u));font-size:max(9px, calc(20 * var(--u)));flex:none}@container recap (orientation:portrait){.recap-brand img{width:calc(72 * var(--u));height:calc(72 * var(--u))}.recap-brand span{font-size:max(9px, calc(28 * var(--u)))}}.recap-progress{z-index:2;height:max(3px, calc(6 * var(--u)));background:color-mix(in srgb, var(--border) 70%, transparent);position:absolute;bottom:0;left:0;right:0}.recap-progress>span{background:var(--accent);transform-origin:0;height:100%;animation:recap-progress var(--scene-ms,4s) linear both;display:block}.recap-scene{box-sizing:border-box;padding:calc(150 * var(--u)) var(--pad) calc(60 * var(--u));justify-content:center;gap:calc(28 * var(--u));flex-direction:column;animation:.35s linear both recap-fade;display:flex;position:absolute;inset:0}@container recap (orientation:portrait){.recap-scene{padding-top:calc(200 * var(--u))}}.recap-h{font-family:var(--font-display);font-weight:700;font-size:max(14px, calc(76 * var(--u)));margin:0;line-height:1.05}@container recap (orientation:portrait){.recap-h{font-size:max(14px, calc(88 * var(--u)))}}.recap-kicker{font-family:var(--font-mono);font-size:max(9px, calc(30 * var(--u)));letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.recap-track{font-family:var(--font-display);font-weight:700;font-size:max(18px, calc(min(200, 2800 / var(--len,10)) * var(--u)));letter-spacing:-.01em;overflow-wrap:break-word;margin:0;line-height:.95}@container recap (orientation:portrait){.recap-track{font-size:max(18px, calc(min(150, 1500 / var(--len,10)) * var(--u)))}}.recap-rule{width:calc(900 * var(--u));max-width:100%;height:calc(10 * var(--u));background:var(--accent);transform-origin:0}@container recap (orientation:portrait){.recap-rule{width:calc(600 * var(--u))}}.recap-line{font-size:max(11px, calc(44 * var(--u)))}.recap-subline{font-size:max(9px, calc(30 * var(--u)))}@container recap (orientation:portrait){.recap-line{font-size:max(11px, calc(40 * var(--u)))}}.recap-chart{grid-template-columns:max(22px, calc(70 * var(--u))) minmax(0, 1fr) max(64px, calc(250 * var(--u)));grid-template-rows:minmax(0, 1fr) max(14px, calc(50 * var(--u)));height:calc(720 * var(--u));column-gap:calc(18 * var(--u));font-family:var(--font-mono);font-size:max(9px, calc(22 * var(--u)));display:grid;position:relative}@container recap (orientation:portrait){.recap-scene[data-scene=chart]{justify-content:flex-start}.recap-chart{grid-template-columns:max(22px, calc(80 * var(--u))) minmax(0, 1fr) max(64px, calc(250 * var(--u)));height:auto;min-height:0;font-size:max(9px, calc(28 * var(--u)));flex:1 1 0}}.recap-chart-axis,.recap-chart-labels{position:relative}.recap-chart-axis span,.recap-chart-labels span{white-space:nowrap;line-height:1;position:absolute;transform:translateY(-50%)}.recap-chart-axis span{color:var(--muted);right:0}.recap-chart-labels span{text-overflow:ellipsis;max-width:100%;font-family:var(--font-body);font-size:max(9px, calc(24 * var(--u)));color:var(--tone-ink);font-weight:500;left:0;overflow:hidden}.recap-chart-labels span.recap-tone-p1,.recap-chart-labels span.recap-tone-p2,.recap-chart-labels span.recap-tone-p3{font-weight:700}@container recap (orientation:portrait){.recap-chart-labels span{font-size:max(10px, calc(32 * var(--u)))}}.recap-chart-plot{min-width:0;position:relative}.recap-chart-plot svg{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.recap-chart-grid{stroke:var(--border);stroke-width:1.5px}.recap-chart-line{fill:none;stroke:var(--tone);stroke-linejoin:round;stroke-linecap:round;stroke-width:max(1.5px, calc(4 * var(--u)))}.recap-chart-connector{stroke:var(--tone);stroke-width:max(1.5px, calc(3 * var(--u)));stroke-dasharray:4 3;stroke-linecap:round}.recap-chart-line.recap-tone-p1,.recap-chart-line.recap-tone-p2,.recap-chart-line.recap-tone-p3{stroke-width:max(2.5px, calc(7 * var(--u)))}.recap-chart-laps{color:var(--muted);grid-column:2;position:relative}.recap-chart-laps span{white-space:nowrap;text-transform:uppercase;position:absolute;bottom:0;transform:translate(-50%)}.recap-chart-laps span:first-child{transform:none}.recap-chart-laps span:last-child:not(:first-child),.recap-chart-laps span:first-child:last-child{transform:translate(-100%)}.recap-podium{justify-content:center;align-items:flex-end;gap:calc(28 * var(--u));display:flex}@container recap (orientation:portrait){.recap-podium{gap:calc(20 * var(--u))}}.recap-step{align-items:center;gap:calc(16 * var(--u));width:calc(300 * var(--u));flex-direction:column;min-width:0;display:flex}.recap-step-who{align-items:center;gap:calc(8 * var(--u));text-align:center;flex-direction:column;max-width:100%;display:flex}.recap-step-name{align-items:center;gap:calc(10 * var(--u));font-size:max(11px, calc(34 * var(--u)));overflow-wrap:anywhere;max-width:100%;font-weight:700;line-height:1.1;display:flex}.recap-step[data-place="1"] .recap-step-name{font-size:max(11px, calc(40 * var(--u)))}.recap-step-gap{font-size:max(9px, calc(24 * var(--u)))}.recap-step-grid{font-size:max(9px, calc(22 * var(--u)))}@container recap (orientation:portrait){.recap-step-name{font-size:max(11px, calc(40 * var(--u)))}.recap-step[data-place="1"] .recap-step-name{font-size:max(11px, calc(48 * var(--u)))}.recap-step-gap{font-size:max(9px, calc(30 * var(--u)))}.recap-step-grid{font-size:max(9px, calc(28 * var(--u)))}}.recap-step-block{box-sizing:border-box;width:100%;padding-top:calc(20 * var(--u));background:var(--card);border:calc(2 * var(--u)) solid var(--border);border-top:calc(8 * var(--u)) solid var(--tone);border-radius:calc(14 * var(--u)) calc(14 * var(--u)) 0 0;transform-origin:50% 100%;font-family:var(--font-display);font-weight:700;font-size:max(16px, calc(96 * var(--u)));color:var(--tone-ink);justify-content:center;line-height:1;display:flex}.recap-step[data-place="1"] .recap-step-block{height:calc(360 * var(--u))}.recap-step[data-place="2"] .recap-step-block{height:calc(260 * var(--u))}.recap-step[data-place="3"] .recap-step-block{height:calc(190 * var(--u))}@container recap (orientation:portrait){.recap-step-block{font-size:max(16px, calc(140 * var(--u)))}.recap-step[data-place="1"] .recap-step-block{height:calc(600 * var(--u))}.recap-step[data-place="2"] .recap-step-block{height:calc(420 * var(--u))}.recap-step[data-place="3"] .recap-step-block{height:calc(300 * var(--u))}}.recap-tiles{gap:calc(24 * var(--u));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@container recap (orientation:portrait){.recap-tiles{grid-template-columns:minmax(0,1fr)}}.recap-tile{box-sizing:border-box;gap:calc(12 * var(--u));padding:calc(32 * var(--u));background:var(--card);border:calc(2 * var(--u)) solid var(--border);border-radius:calc(18 * var(--u));flex-direction:column;min-width:0;display:flex}.recap-tile-label{font-family:var(--font-mono);font-size:max(9px, calc(22 * var(--u)));letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.recap-tile-value{font-family:var(--font-display);font-weight:700;font-size:max(16px, calc(68 * var(--u)));color:var(--tile-ink,var(--foreground));font-variant-numeric:tabular-nums;line-height:1}.recap-tile-sub{font-size:max(11px, calc(28 * var(--u)));overflow-wrap:anywhere}@container recap (orientation:portrait){.recap-tile{padding:calc(30 * var(--u))}.recap-tile-label{font-size:max(9px, calc(26 * var(--u)))}.recap-tile-value{font-size:max(16px, calc(84 * var(--u)))}.recap-tile-sub{font-size:max(11px, calc(32 * var(--u)))}}.recap-tyres{gap:calc(22 * var(--u));flex-direction:column;display:flex}@container recap (orientation:portrait){.recap-tyres{gap:calc(44 * var(--u))}}.recap-tyre-name{font-size:max(10px, calc(26 * var(--u)));margin-bottom:calc(10 * var(--u));overflow-wrap:anywhere;font-weight:600}.recap-tyre-bar{height:max(14px, calc(44 * var(--u)));transform-origin:0;position:relative}.recap-tyre-bar>span{box-sizing:border-box;padding-left:calc(12 * var(--u));border:calc(3 * var(--u)) solid var(--background);border-radius:calc(8 * var(--u));white-space:nowrap;font-family:var(--font-mono);font-weight:700;font-size:max(9px, calc(22 * var(--u)));align-items:center;display:flex;position:absolute;top:0;bottom:0;overflow:hidden}@container recap (orientation:portrait){.recap-tyre-name{font-size:max(10px, calc(36 * var(--u)))}.recap-tyre-bar{height:max(14px, calc(64 * var(--u)))}.recap-tyre-bar>span{font-size:max(9px, calc(28 * var(--u)))}}.recap-end{text-align:center;padding-top:var(--pad);align-items:center}.recap-end img{width:calc(220 * var(--u));height:calc(220 * var(--u));object-fit:contain}.recap-end-name{font-family:var(--font-display);font-weight:700;font-size:max(18px, calc(110 * var(--u)));letter-spacing:.06em;overflow-wrap:anywhere;margin:0;line-height:1}@container recap (orientation:portrait){.recap-end-name{font-size:max(18px, calc(96 * var(--u)))}}.recap-a{animation-duration:var(--dur,.6s);animation-timing-function:var(--motion-ease,cubic-bezier(.2, .8, .2, 1));animation-fill-mode:both;animation-delay:var(--d,0s)}.recap-rise{animation-name:recap-rise}.recap-growx{animation-name:recap-growx}.recap-growy{animation-name:recap-growy}.recap-pop{animation-name:recap-pop;animation-timing-function:linear}.recap-sweep{animation-name:recap-sweep;animation-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes recap-fade{0%{opacity:0}}@keyframes recap-rise{0%{opacity:0;transform:translateY(calc(40 * var(--u,1px)))}}@keyframes recap-growx{0%{transform:scaleX(0)}}@keyframes recap-growy{0%{transform:scaleY(0)}}@keyframes recap-pop{0%{opacity:0;transform:scale(.4)}50%{opacity:1;transform:scale(1.06)}78%{transform:scale(.98)}to{opacity:1;transform:none}}@keyframes recap-sweep{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes recap-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.recap-stage[data-still=true] *,.recap-stage[data-still=true] :before,.recap-stage[data-still=true] :after{animation:none!important}.recap-stage[data-paused=true] *,.recap-stage[data-paused=true] :before,.recap-stage[data-paused=true] :after{animation-play-state:paused}.recap-stage[data-motion=reduced] *,.recap-stage[data-motion=reduced] :before,.recap-stage[data-motion=reduced] :after{animation:none!important}.recap-stage[data-motion=reduced] .recap-progress{display:none}@media (prefers-reduced-motion:reduce){.recap-stage *,.recap-stage :before,.recap-stage :after{animation:none!important}.recap-progress{display:none}}.recap-flag{width:calc(40 * var(--u))!important}
