.site-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-6);padding:var(--space-5) var(--gutter);background:var(--color-ink-band);color:var(--color-on-ink)}html.web-app .auth-header,html.web-app .site-header{padding-top:max(var(--space-5),env(safe-area-inset-top,0px))}html.web-app .site-footer{padding-bottom:max(var(--space-6),env(safe-area-inset-bottom,0px))}@media (display-mode:standalone){body,html{overscroll-behavior:none}.auth-header,.site-header{padding-top:max(var(--space-5),env(safe-area-inset-top,0px))}.site-footer{padding-bottom:max(var(--space-6),env(safe-area-inset-bottom,0px))}}.brand{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--weight-black);font-size:var(--text-brand);letter-spacing:var(--tracking-brand)}.brand,.brand:hover{color:inherit;text-decoration:none}.brand-mark{color:var(--color-court)}.owling-orb{width:var(--owl-size);height:var(--owl-size);border-radius:50%;background:var(--color-court);position:relative;flex-shrink:0}.owling-orb:after,.owling-orb:before{content:"";position:absolute;top:var(--owl-eye-top);width:var(--owl-eye);height:var(--owl-eye);border-radius:50%;background:var(--color-bg)}.owling-orb:before{left:var(--owl-eye-inset)}.owling-orb:after{right:var(--owl-eye-inset)}.site-nav{display:flex;align-items:center;gap:var(--space-1);font-family:var(--font-mono);font-size:var(--text-label)}.site-nav-link{padding:var(--space-2) var(--space-3);border:0;border-radius:var(--radius-control);background:transparent;font:inherit;letter-spacing:inherit;cursor:pointer}.site-nav-link,.site-nav-link:hover{color:var(--color-on-ink);text-decoration:none}.site-nav-link.is-active{background:var(--color-nav-active)}.site-nav-link.is-disabled{color:var(--color-text-faint);cursor:not-allowed}.site-footer-label{font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-faint);letter-spacing:var(--tracking-micro)}.shell{flex:1 1;width:100%;max-width:var(--page-max);margin:0 auto;padding:var(--space-12) var(--gutter) var(--space-page-bottom)}.shell:has(.match-main),.shell:has(.player-page-main),.shell:has(.tournament-competition){max-width:none;--gutter:clamp(16px,4vw,48px);--gutter-sm:clamp(12px,3vw,20px);padding-top:0;overflow-x:clip}.shell:has(.tournament-competition){padding-top:0}.shell:has(.account-page){padding-top:var(--space-8)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-6) var(--gutter);background:var(--color-ink-band);font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint)}.site-footer-brand{display:flex;align-items:center;gap:var(--space-2)}.eyebrow{font-family:var(--font-mono);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase;font-size:var(--text-eyebrow);color:var(--color-accent)}.eyebrow,.match-heading{margin:0 0 var(--space-2)}.match-heading{font-size:var(--text-match);font-weight:var(--weight-black);line-height:var(--leading-match)}.lede{color:var(--color-text-muted);max-width:var(--lede-max);font-size:var(--text-body);line-height:var(--leading-body);font-weight:var(--weight-regular)}.lede,.page-meta{margin:0 0 var(--space-9)}.page-meta{font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-quiet);text-transform:uppercase;letter-spacing:var(--tracking-label)}.banner{border:1px solid var(--color-border);background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-4) 1.1rem;margin:1.25rem 0}.banner.error{border-color:var(--color-danger);color:var(--color-danger)}.players-search-main{max-width:40rem;margin:0 auto;padding-top:var(--space-8)}.players-search-title{font-size:clamp(2rem,4vw,2.75rem);font-weight:var(--weight-black);line-height:1.1;letter-spacing:-.02em;margin:0 0 var(--space-3)}.players-search-lede{margin-bottom:var(--space-8)}.player-search-reopen{display:inline-flex;align-items:center;padding:.75rem 1.15rem;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font-family:var(--font-archivo),var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-semibold);cursor:pointer}.player-search-reopen:focus-visible,.player-search-reopen:hover{border-color:var(--color-accent-outline);box-shadow:0 0 0 3px var(--color-accent-ring);outline:none}.player-search-spotlight-backdrop{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-start;justify-content:center;padding:clamp(12vh,18vh,9rem) 16px 24px;background:color-mix(in srgb,var(--color-ink-band) 58%,transparent);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);animation:player-search-spotlight-fade .16s ease-out}.player-search-spotlight{width:min(100%,36rem);overflow:hidden;border-radius:18px;background:color-mix(in srgb,var(--color-surface) 94%,transparent);border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--color-on-ink) 55%,transparent) inset,0 28px 80px color-mix(in srgb,var(--color-ink-band) 42%,transparent);animation:player-search-spotlight-rise .18s ease-out}.player-search-spotlight-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.player-search-field{position:relative;display:flex;align-items:center;gap:.35rem;padding-right:.65rem}.player-search-spotlight-glyph{position:absolute;left:1.15rem;top:50%;transform:translateY(-50%);display:inline-flex;color:var(--color-text-quiet);pointer-events:none}.player-search-input{width:100%;box-sizing:border-box;padding:1.15rem .5rem 1.15rem 3rem;border:0;border-radius:0;background:transparent;color:var(--color-text);font-family:var(--font-archivo),var(--font-sans);font-size:clamp(1.2rem,2.5vw,1.55rem);font-weight:var(--weight-semibold);line-height:1.3;outline:none}.player-search-input::placeholder{color:var(--color-text-faint);font-weight:var(--weight-regular)}.player-search-input::-webkit-search-cancel-button,.player-search-input::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.player-search-spotlight-close{flex-shrink:0;width:1.85rem;height:1.85rem;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-ink) 12%,transparent);color:var(--color-text-muted);font-size:1.35rem;line-height:1;cursor:pointer}.player-search-spotlight-close:focus-visible,.player-search-spotlight-close:hover{background:color-mix(in srgb,var(--color-ink) 14%,transparent);color:var(--color-text);outline:none}.player-search-status{flex-shrink:0;font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-quiet);letter-spacing:var(--tracking-label);text-transform:uppercase;pointer-events:none}.player-search-error{margin:0;padding:0 var(--space-5) var(--space-3);color:var(--color-danger);font-size:var(--text-body)}.player-search-results{list-style:none;margin:0;padding:var(--space-2);border-top:1px solid var(--color-border-subtle);max-height:min(22rem,48vh);overflow:auto}.player-search-empty{padding:var(--space-4) var(--space-3);color:var(--color-text-muted)}.player-search-result{border-radius:12px}.player-search-result.is-active,.player-search-result:hover{background:var(--color-accent-wash)}.player-search-result-link{display:flex;align-items:center;gap:var(--space-3);padding:.85rem .8rem}.player-search-result-link,.player-search-result-link:hover{color:inherit;text-decoration:none}.player-search-flag,.player-search-flag-slot{flex-shrink:0;width:20px;height:14px;border-radius:2px;object-fit:cover;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 12%,transparent)}.player-search-flag-slot{background:var(--color-border-subtle);box-shadow:none}.player-search-name{flex:1 1;min-width:0;font-weight:var(--weight-semibold)}.player-search-rank{flex-shrink:0;font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-semibold);color:var(--color-text-quiet);letter-spacing:var(--tracking-label);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@keyframes player-search-spotlight-fade{0%{opacity:0}to{opacity:1}}@keyframes player-search-spotlight-rise{0%{opacity:0;transform:translateY(-10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.home-hero{margin:0 0 var(--space-8)}.home-live-line{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase}.home-live-dot{width:8px;height:8px;border-radius:50%;background:var(--color-court);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-court) 28%,transparent)}.home-live-sep{color:var(--color-text-faint)}.home-live-date{color:var(--color-text-quiet)}.home-hero-brand{display:flex;align-items:flex-start;gap:var(--space-4);margin:0 0 var(--space-4)}.home-hero-event-flag{flex-shrink:0;width:26px;height:17px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 12%,transparent);margin-top:.35em}.home-hero-brand-copy{min-width:0;flex:1 1}.home-hero-location{margin:0 0 var(--space-3);color:var(--color-link);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-label);text-transform:uppercase}.home-hero-chips{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-4)}.home-surface-chip{display:inline-flex;align-items:center;min-height:24px;padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-on-surface-chip)}.home-surface-chip.tone-hard{background:var(--surface-hard)}.home-surface-chip.tone-clay{background:var(--surface-clay)}.home-surface-chip.tone-grass{background:var(--surface-grass)}.home-surface-chip.tone-indoor{background:var(--surface-indoor)}.home-surface-chip.tone-unknown{background:var(--surface-unknown)}.home-hero-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-6)}.home-hero-title-row h1{margin:0;max-width:14ch}.home-hero-stats{gap:var(--space-8)}.home-hero-stat,.home-hero-stats{display:flex;align-items:flex-end;margin:0}.home-hero-stat{flex-direction:column;gap:2px;color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-micro);text-transform:uppercase;text-align:right}.home-hero-stat strong{color:var(--color-text);font-size:clamp(2rem,4vw,3rem);line-height:1}.home-hero-count{display:flex;flex-direction:column;align-items:flex-end;gap:2px;margin:0;color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-micro);text-transform:uppercase;text-align:right}.home-hero-count strong{color:var(--color-text);font-size:clamp(2rem,4vw,3rem);line-height:1}.home-search{display:flex;align-items:center;gap:var(--space-3);flex:1 1;min-width:12rem;width:100%;margin:0;padding:0 var(--space-4);min-height:52px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.home-board-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3);margin:0 0 var(--space-10)}.home-event-pills{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.home-event-pill{display:inline-flex;align-items:baseline;gap:.45em;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);cursor:pointer}.home-event-pill-name{font-family:var(--font-sans);font-size:var(--text-chip);font-weight:var(--weight-semibold);letter-spacing:-.01em}.home-event-pill-tier{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-medium);letter-spacing:var(--tracking-micro);text-transform:uppercase}.home-event-pill.is-active{border-color:var(--color-ink-band);background:var(--color-ink-band);color:var(--color-on-ink)}.home-event-pill.is-active .home-event-pill-tier{color:color-mix(in srgb,var(--color-on-ink) 72%,transparent)}.home-event-pill:hover:not(.is-active){border-color:var(--color-text)}.home-board-modes{display:inline-flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0 0 var(--space-5)}.home-board-mode{padding:8px 14px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase;cursor:pointer}.home-board-mode.is-active{border-color:var(--color-ink-band);background:var(--color-ink-band);color:var(--color-on-ink)}.home-board-mode:hover:not(.is-active){border-color:var(--color-text);color:var(--color-text)}.home-search-icon{display:inline-grid;place-items:center;color:var(--color-text-faint);flex-shrink:0}.home-search-icon,.home-search-icon svg{width:20px;height:20px}.home-search input{flex:1 1;min-width:0;border:0;outline:none;background:transparent;color:var(--color-text);font:inherit;font-size:var(--text-fixture)}.home-search input::placeholder{color:var(--color-text-faint)}.home-search-count{flex-shrink:0;margin-left:auto;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase}.home-tournament-header{display:flex;align-items:flex-start;gap:var(--space-4);margin:0 0 var(--space-4);padding:var(--space-4) 0;border:0;border-top:1px solid var(--color-border);border-radius:0;background:transparent}.home-tournament-header .tournament-logo-shell,.home-tournament-header .tournament-monogram{align-self:flex-start;border-radius:10px}.home-tournament-header .tournament-logo-shell{padding:6px}.home-tournament-header .tournament-logo-shell,.home-tournament-header .tournament-monogram{background:var(--color-nav-active);border:1px solid color-mix(in srgb,var(--color-ink) 18%,transparent)}.home-tournament-header .tournament-monogram{color:var(--color-on-ink)}.home-tournament-header-copy{min-width:0;flex:1 1}.home-tournament-header-title{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3);min-width:0}.home-tournament-flag{flex-shrink:0;width:18px;height:12px;object-fit:cover;border-radius:1px;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 12%,transparent)}.home-tournament-name{min-width:0;color:var(--color-text);font-size:var(--text-section);font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.15}.home-tournament-tier{display:inline-flex;flex-shrink:0;min-height:22px;padding:3px 8px;border-radius:6px;background:var(--color-court);color:var(--color-on-accent);font-weight:var(--weight-bold);line-height:1}.home-tournament-meta,.home-tournament-tier{align-items:center;font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-micro);text-transform:uppercase}.home-tournament-meta{display:flex;flex-wrap:wrap;gap:.35em;margin:var(--space-2) 0 0;color:var(--color-text-quiet);font-weight:var(--weight-medium)}.home-tournament-meta-part{display:inline-flex;align-items:center;gap:.35em}.home-tournament-meta-sep{color:var(--color-text-faint)}.home-surface-dot{display:inline-block;width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-right:1px}.home-surface-dot.tone-hard{background:var(--surface-hard)}.home-surface-dot.tone-clay{background:var(--surface-clay)}.home-surface-dot.tone-grass{background:var(--surface-grass)}.home-surface-dot.tone-indoor{background:var(--surface-indoor)}.home-surface-dot.tone-unknown{background:var(--surface-unknown)}.home-tournament-header-aside{display:flex;flex-direction:column;justify-content:center;align-items:flex-end;align-self:center;gap:2px;flex-shrink:0;text-align:right}.home-tournament-dates{color:var(--color-text);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:-.01em;line-height:1.2}.match-hero .home-tournament-header{margin-bottom:var(--space-5);padding:var(--space-4) var(--space-5);border:1px solid color-mix(in srgb,var(--color-on-ink) 16%,transparent);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text)}.tournament{margin:0 0 var(--space-12)}.tournament-heading-rule{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin:0 0 var(--space-6);color:var(--color-text);font-size:var(--text-section)}.tournament-heading-rule>span:last-child{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-medium);letter-spacing:var(--tracking-micro);text-transform:uppercase}.tournament-group-heading{display:inline-flex;align-items:center;gap:var(--space-3);min-width:0}.tournament-group-name{min-width:0}.tournament-category-badge{display:block;width:auto;height:auto;max-height:28px;object-fit:contain;flex-shrink:0}.tournament-category-badge[data-tier=challenger]{max-width:92px}.tournament-challenger-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;box-sizing:border-box;padding:0 6px;border-radius:6px;background:color-mix(in srgb,var(--color-ink) 88%,transparent);color:var(--color-on-ink);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);letter-spacing:.06em;line-height:1}.home-hero-chips .tournament-category-badge,.match-hero-event-row .tournament-category-badge{max-height:28px}.match-hero .tournament-category-badge-ink-white{filter:brightness(0) invert(1)}.eyebrow-tournament{display:flex;align-items:center}.draw-sections{display:flex;flex-direction:column;gap:var(--space-8)}.draw-section{margin:0}.draw-section-title,.round-rule{margin:0 0 var(--space-5)}.round-rule{display:flex;align-items:center;gap:var(--space-3);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase}.draw-section+.draw-section>.round-rule{margin-top:var(--space-7)}.round-rule-pill{flex-shrink:0;padding:var(--space-2) var(--space-4);border-radius:var(--radius-pill);background:var(--color-border-subtle);color:var(--color-text-muted)}.round-rule-line{height:1px;flex:1 1;background:var(--color-border)}.round-rule-count{flex-shrink:0;color:var(--color-text-faint)}.match-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr;grid-gap:var(--space-5);gap:var(--space-5)}.match-card{position:relative;display:grid;grid-template-columns:minmax(7.5rem,9.5rem) minmax(12rem,1fr) minmax(4.75rem,6.5rem) minmax(5.5rem,7rem) auto;align-items:center;grid-gap:var(--space-6);gap:var(--space-6);min-height:112px;padding:var(--space-5) var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:var(--color-text);text-decoration:none;overflow:hidden;cursor:pointer;touch-action:manipulation;-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:color-mix(in srgb,var(--color-court) 25%,transparent);transition:border-color var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.match-card>*{pointer-events:none}.match-card:hover{color:var(--color-text);text-decoration:none;border-color:var(--color-text);box-shadow:0 var(--space-2) var(--space-6) color-mix(in srgb,var(--color-text) 10%,transparent);transform:translateY(-2px)}.match-card-meta{align-self:stretch;display:flex;flex-direction:column;justify-content:center;gap:var(--space-1);padding-right:var(--space-5);border-right:1px solid var(--color-border-subtle);font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-quiet);text-transform:uppercase;letter-spacing:var(--tracking-micro)}.match-card-when{color:var(--color-text);font-size:var(--text-label);font-weight:var(--weight-bold);text-transform:none;letter-spacing:0}.match-card-round{color:var(--color-text-faint)}.match-card-refresh{color:var(--color-text-quiet);text-transform:none;letter-spacing:0;font-size:var(--text-micro);line-height:1.35;max-width:12rem}.match-card-surface{align-self:flex-start;padding:2px 6px;border-radius:var(--radius-chip);color:var(--color-on-surface-chip);font-size:var(--text-chip)}.match-card-surface.tone-hard{background:var(--surface-hard)}.match-card-surface.tone-clay{background:var(--surface-clay)}.match-card-surface.tone-grass{background:var(--surface-grass)}.match-card-surface.tone-indoor{background:var(--surface-indoor)}.match-card-surface.tone-unknown{background:var(--surface-unknown)}.match-card-players{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;grid-column-gap:var(--space-3);column-gap:var(--space-3);min-width:0}.match-card-avatar-stack{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.match-card-player-stack{display:flex;flex-direction:column;min-width:0}.match-card-player{display:flex;align-items:center;gap:var(--space-3);min-width:0;padding:var(--space-2) 0}.match-card-player-stack>.match-card-player+.match-card-player{border-top:1px solid var(--color-border-subtle)}.match-card-avatar{display:inline-grid;place-items:center;width:40px;height:40px;flex-shrink:0;border-radius:50%;background:color-mix(in srgb,var(--color-text-faint) 18%,var(--color-surface));color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-bold);letter-spacing:.02em;line-height:1;overflow:hidden}.match-card-avatar.player-avatar--photo{background:transparent;color:transparent}.match-card-flag{width:18px;height:12px;object-fit:cover;border-radius:1px;flex-shrink:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 12%,transparent)}.match-card-name{min-width:0;overflow-wrap:anywhere;font-size:var(--text-fixture);font-weight:var(--weight-semibold);line-height:var(--leading-names)}.match-card-market,.match-card-owlsense{display:grid;grid-template-rows:auto 1fr 1fr;align-items:center;justify-items:center;grid-gap:var(--space-1);gap:var(--space-1);min-width:0;align-self:stretch}.match-card-market{justify-items:start}.match-card-col-label{color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase}.match-card-owlsense-label{display:inline-flex;align-items:baseline;justify-content:center;gap:.12em;font-size:var(--text-label);line-height:1}.match-card-owlsense .methodology-inset-eyebrow-sense,.match-card-owlsense-hand{color:var(--color-text)}.match-card-price-row{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:1px;min-height:34px}.match-card-implied{flex-shrink:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:.02em}.match-card-odds{color:var(--color-text-faint)}.match-card-odds,.match-card-sense{font-family:var(--font-mono);font-size:var(--text-chip);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.match-card-sense{display:inline-flex;align-items:center;justify-content:center;min-width:3.25rem;min-height:28px;padding:2px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-ink) 6%,transparent);color:var(--color-text);text-align:center}.match-card-sense.is-lean{background:color-mix(in srgb,var(--color-court) 22%,var(--color-surface));color:var(--color-text);font-weight:var(--weight-bold)}.match-card-value-badge{top:0;right:0;left:auto;bottom:auto;z-index:3;display:inline-flex;align-items:center;gap:.35em;height:1.75rem;max-width:min(100%,12rem);padding:0 12px;border:0;border-radius:0 var(--radius-card) 0 var(--radius-chip);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro);line-height:1;text-transform:uppercase;white-space:nowrap;box-sizing:border-box}.match-card-divider,.match-card-value-badge{position:absolute;margin:0;pointer-events:none}.match-card-divider{inset:0;z-index:2;display:block;height:auto;padding:0;overflow:visible}.match-card-divider-line{display:none}.match-card-value-badge:before{content:"";flex-shrink:0;width:.45em;height:.45em;border-radius:50%;background:currentColor}.match-card-value-badge-slight{background:color-mix(in srgb,var(--color-text-faint) 16%,var(--color-surface));color:var(--color-text-muted)}.match-card-value-badge-moderate{background:color-mix(in srgb,var(--color-court) 28%,var(--color-surface));color:color-mix(in srgb,var(--color-accent) 72%,var(--color-text))}.match-card-value-badge-strong{background:var(--color-court);color:var(--color-text)}.match-card-value-badge-strong:before{width:auto;height:auto;border-radius:0;background:none;box-shadow:none;margin:0;content:"••";letter-spacing:.02em;font-size:.95em;line-height:1}.match-card-vs{display:block;width:40px;margin:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-align:center;text-transform:uppercase;line-height:1}.match-card-action{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--color-ink-band);color:var(--color-court)}.match-card-action-label{display:none}.match-card-action svg{width:20px;height:20px}.match-card-mobile-only{display:none}.match-card-odds-chip{display:inline-flex;align-items:center;justify-content:center;min-width:0;min-height:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.home-back-top{display:flex;justify-content:center;margin-top:var(--space-12)}.home-back-top-btn{padding:10px 18px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase;cursor:pointer}.home-back-top-btn:hover{border-color:var(--color-text);color:var(--color-text)}.scroll-to-top{display:none}@media (max-width:720px){.scroll-to-top{display:inline-flex;align-items:center;justify-content:center;position:fixed;right:max(var(--space-5),env(safe-area-inset-right,0px));bottom:max(var(--space-5),env(safe-area-inset-bottom,0px));z-index:50;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:var(--color-court);color:var(--color-ink-band);box-shadow:0 8px 20px color-mix(in srgb,var(--color-ink-band) 22%,transparent);opacity:0;transform:translateY(8px);pointer-events:none;cursor:pointer;transition:opacity var(--motion-fast) var(--ease-out),transform var(--motion-fast) var(--ease-out)}.scroll-to-top.is-visible{opacity:1;transform:none;pointer-events:auto}.scroll-to-top:focus-visible{outline:2px solid var(--color-ink-band);outline-offset:3px}}@media (max-width:720px) and (prefers-reduced-motion:reduce){.scroll-to-top{transition:none}}.route-loading{text-align:center}.route-loading .match-heading{display:flex;flex-direction:column;align-items:center;gap:var(--space-1)}.route-loading .match-heading-vs{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-regular);letter-spacing:var(--tracking-label);text-transform:uppercase}.route-loading .lede{color:var(--color-text-faint)}.page-loading{display:flex;align-items:center;justify-content:center;min-height:min(70vh,640px)}.page-loading-inner{width:100%}.owling{margin:.5rem 0 1.5rem}.owling-loader{--owl-size:4.75rem;--owl-loader-fill:var(--color-court);position:relative;display:grid;place-items:center;width:calc(var(--owl-size) + 1.75rem);height:calc(var(--owl-size) + 1.75rem);margin:0 auto var(--space-6)}.owling-loader:before{content:"";position:absolute;inset:0;border-radius:50%;border-left:2.5px solid color-mix(in srgb,var(--owl-loader-fill) 18%,transparent);border-bottom:2.5px solid color-mix(in srgb,var(--owl-loader-fill) 18%,transparent);border-right-color:color-mix(in srgb,var(--owl-loader-fill) 18%,transparent);border-top-color:color-mix(in srgb,var(--owl-loader-fill) 18%,transparent);border-top:2.5px solid var(--owl-loader-fill);border-right:2.5px solid color-mix(in srgb,var(--owl-loader-fill) 55%,transparent);animation:owl-ring-spin .95s linear infinite}.owling-loader:after{content:"";position:absolute;inset:.35rem;border-radius:50%;border:1.5px dashed color-mix(in srgb,var(--owl-loader-fill) 28%,transparent);animation:owl-ring-spin 2.4s linear infinite reverse}.owling-loader-mark{position:relative;z-index:1;width:var(--owl-size);height:var(--owl-size);color:var(--color-court);animation:owl-curious 1.85s ease-in-out infinite;filter:drop-shadow(0 8px 18px color-mix(in srgb,var(--color-court) 32%,transparent))}@keyframes owl-ring-spin{to{transform:rotate(1turn)}}@keyframes owl-curious{0%,to{transform:translateY(0) rotate(-14deg) scale(1)}20%{transform:translateY(-.55rem) rotate(-4deg) scale(1.04)}40%{transform:translateY(-.2rem) rotate(12deg) scale(1)}60%{transform:translateY(-.7rem) rotate(5deg) scale(1.05)}80%{transform:translateY(-.15rem) rotate(-10deg) scale(1.01)}}.owling-loader-mini{--owl-size:3rem;margin:0 auto var(--space-5)}.owling-loader-mini:before{animation-duration:.85s}.owling-loader-mini:after{animation-duration:1.9s;opacity:.9}.owling-loader-mini .owling-loader-mark{animation:owl-mini-hop 1.35s ease-in-out infinite;filter:drop-shadow(0 6px 14px color-mix(in srgb,var(--color-court) 36%,transparent))}@keyframes owl-mini-hop{0%,to{transform:translateY(0) rotate(-10deg) scale(1)}25%{transform:translateY(-.55rem) rotate(4deg) scale(1.08)}45%{transform:translateY(-.12rem) rotate(12deg) scale(1.02)}70%{transform:translateY(-.42rem) rotate(-6deg) scale(1.06)}}.home-board-preparing{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);margin:var(--space-6) 0 var(--space-8);padding:var(--space-8) var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);text-align:center}.home-board-preparing .owling-loader-mini{animation:owl-preparing-glow 2.2s ease-in-out infinite}@keyframes owl-preparing-glow{0%,to{filter:drop-shadow(0 0 0 transparent)}50%{filter:drop-shadow(0 0 12px color-mix(in srgb,var(--color-court) 42%,transparent))}}.home-board-preparing-title{margin:0;font-size:var(--text-title-sm,1.35rem);font-weight:var(--weight-bold);letter-spacing:-.02em;color:var(--color-text)}.home-board-preparing-copy{margin:0;max-width:22rem;color:var(--color-text-muted);font-size:var(--text-body-sm,.95rem);line-height:1.45}.owling-steps{margin:0;padding-left:1.2rem;color:var(--color-text-muted)}.owling-steps li{margin:.35rem 0}.match-loading-status{margin-bottom:var(--space-4)}.match-loading-steps{list-style:none;padding-left:0;text-align:left;max-width:28rem;margin-inline:auto}.match-loading-step{position:relative;padding-left:1.1rem;color:var(--color-text-faint);font-size:var(--text-chip)}.match-loading-step:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--color-border)}.match-loading-step.is-active{color:var(--color-text);font-weight:var(--weight-medium)}.match-loading-step.is-active:before{background:var(--color-court);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-court) 22%,transparent)}.match-loading-step.is-done{color:var(--color-text-muted)}.match-loading-step.is-done:before{background:var(--color-accent)}.meta{color:var(--color-text-quiet);font-size:var(--text-meta)}.desk{display:grid;grid-gap:var(--desk-gap);gap:var(--desk-gap);margin-top:0}@media (min-width:800px){.desk{grid-template-columns:1fr 1fr}}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-5) var(--space-6)}.card h2{font-size:var(--text-card-title);font-weight:var(--weight-bold);margin-bottom:var(--space-2);letter-spacing:0}.identity-card{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:var(--space-5);gap:var(--space-5);align-items:start}.identity-main h2{margin:0}.identity-title{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);min-width:0}.identity-title h2{min-width:0;overflow-wrap:anywhere}.player-name-stack{display:flex;flex-direction:column;align-items:flex-start;gap:.05em;min-width:0;margin:0}.player-name-stack.is-inline{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.22em .4em}.player-name-stack.is-inline .player-name-family,.player-name-stack.is-inline .player-name-given{display:inline;max-width:none}.player-name-family,.player-name-given{display:block;max-width:100%;overflow-wrap:anywhere;line-height:1.05}.player-name-given{font-weight:var(--weight-semibold)}.player-name-family{font-weight:inherit}.identity-meta{display:flex;flex-wrap:wrap;align-items:center;margin:0 0 var(--space-3);color:var(--color-text-muted);font-size:var(--text-chip)}.identity-meta-sep{color:var(--color-text-quiet)}.identity-flag{flex-shrink:0;width:24px;height:16px;object-fit:cover;border-radius:2px;border:1px solid var(--color-border);background:var(--color-surface)}.identity-style{text-transform:none;letter-spacing:0}.identity-vs-type{margin-top:var(--space-3)}.identity-vs-line,.style-matchup-line{margin:0;font-size:var(--text-chip);color:var(--color-text-quiet);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.identity-vs-line+.identity-vs-line,.style-matchup-line+.style-matchup-line{margin-top:var(--space-1)}.style-matchup{margin:0 0 var(--space-8);padding:var(--space-4) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.style-matchup-title{margin:0 0 var(--space-1);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.style-matchup-sub{margin:0 0 var(--space-3);font-size:var(--text-chip);color:var(--color-text-quiet)}.style-matchup-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-4);gap:var(--space-4)}.style-matchup-name{margin:0 0 var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold)}.style-matchup-group{display:flex;flex-direction:column}.style-matchup-group+.style-matchup-group{margin-top:var(--space-4)}.style-matchup-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.style-matchup-row-surface{padding-top:10px;border-top:1px solid var(--color-border-subtle)}.style-matchup-label{margin:0;font-size:14px;font-weight:var(--weight-semibold)}.style-matchup-value{margin:0;font-family:var(--font-mono);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text);text-align:right}.style-matchup-value.is-surface{color:var(--color-accent)}.style-matchup-empty{margin:0;color:var(--color-text-quiet)}.identity-record{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);margin:0 0 var(--space-3);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.identity-wins{color:var(--palette-result-win);font-weight:var(--weight-semibold)}.identity-dash{color:var(--color-text-quiet)}.identity-losses{color:var(--color-spider-b,var(--palette-bar-idle));font-weight:var(--weight-semibold)}.identity-pct{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-chip)}.identity-window{color:var(--color-text-quiet);font-size:var(--text-chip)}.identity-rank{border-left:1px solid var(--color-border);padding-left:var(--space-5);text-align:right;min-width:4.5rem}.identity-atp{margin:0;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-accent)}.identity-current{margin:2px 0 0;font-size:var(--text-card-title);font-weight:var(--weight-bold)}.identity-peak{margin:2px 0 0;color:var(--color-text-quiet);font-size:var(--text-chip)}.identity-card .badge-row{margin-top:0}.identity-card .type{margin-bottom:0}.type{font-family:var(--font-mono);font-size:var(--text-chip);color:var(--color-accent);background:var(--color-accent-wash);border:1px solid var(--color-accent-ring);border-radius:var(--radius-pill);padding:3px 10px;text-transform:uppercase;letter-spacing:var(--tracking-micro);display:inline-block;margin:0 0 1rem}.badges{margin:0;padding-left:1.1rem;color:var(--color-text-muted)}.badges li{margin:.35rem 0}.facts{margin:1rem 0 0;padding-top:.85rem;border-top:1px solid var(--color-border);color:var(--color-text-quiet)}.back,.facts{font-size:var(--text-ui)}.back{display:inline-block;margin:0 0 var(--space-7);color:var(--color-text-muted);text-decoration:none}.back:hover{color:var(--color-accent)}.block{margin-top:var(--space-10)}.block h2{font-family:var(--font-mono);font-size:var(--text-section);margin-bottom:var(--space-18);color:var(--color-text-quiet)}.block h2,.card h3{font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-label)}.card h3{font-size:var(--text-label);color:var(--color-text-faint);margin:1rem 0 .4rem}.surface-strip{margin:.2rem 0 0;color:var(--color-text-strong);font-size:var(--text-strip)}.facts-table{width:100%;border-collapse:collapse;font-size:var(--text-table);color:var(--color-text-quiet)}.facts-table th{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--tracking-micro);font-weight:var(--weight-medium)}.facts-table td,.facts-table th{text-align:left;padding:var(--space-3) var(--space-2) var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle);vertical-align:top}.facts-table td:last-child{font-family:var(--font-mono);text-align:right}.prose{color:var(--color-text-muted);line-height:var(--leading-prose)}.prose>:first-child{margin-top:0}.prose h1,.prose h2,.prose h3{color:var(--color-text);font-weight:var(--weight-bold);letter-spacing:0;text-transform:none;margin:1.15rem 0 .4rem}.prose h1{font-size:var(--text-prose-1)}.prose h2{font-size:var(--text-prose-2)}.prose h3{font-size:var(--text-prose-3)}.prose p{margin:.4rem 0 .7rem}.prose ol,.prose ul{margin:.35rem 0 .85rem;padding-left:1.2rem}.prose li{margin:.28rem 0}.prose li p{margin:.15rem 0}.prose strong{color:var(--color-text-strong)}.prose a,.sources{color:var(--color-accent)}.sources{padding-left:1.1rem}.injury{margin:.75rem 0}.desk-toggle{display:flex;position:relative;gap:0;margin:0 0 var(--space-18);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-toggle);padding:3px;width:-moz-fit-content;width:fit-content;overflow:hidden;isolation:isolate}.desk-toggle-thumb{position:absolute;top:3px;bottom:3px;left:0;width:var(--tw,0);border-radius:var(--radius-control);background:var(--color-ink-band);transform:translateX(var(--tx,0));transition:transform var(--motion-base) var(--ease-out),width var(--motion-base) var(--ease-out);pointer-events:none;z-index:0}.desk-toggle:has(.desk-toggle-thumb) .toggle-btn.active,.desk-toggle:has(.desk-toggle-thumb) .toggle-btn.active-soft{background:transparent;color:var(--color-on-ink)}.toggle-btn{position:relative;z-index:1;padding:7px var(--space-14);border-radius:var(--radius-control);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:0;color:var(--color-text-quiet);background:transparent;border:0;text-decoration:none;transition:color var(--motion-fast) var(--ease-out)}.toggle-btn:last-child{border-right:none}.toggle-btn:hover{color:var(--color-text);text-decoration:none}.desk-toggle:has(.desk-toggle-thumb) .toggle-btn.active-soft:hover,.desk-toggle:has(.desk-toggle-thumb) .toggle-btn.active:hover,.toggle-btn.active-soft:hover,.toggle-btn.active:hover{color:var(--color-on-ink)}.desk-toggle button{cursor:pointer;font-family:inherit}.toggle-btn.active,.toggle-btn.active-soft{background:var(--color-ink-band);color:var(--color-on-ink);font-weight:var(--weight-semibold)}.block-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;margin-bottom:var(--space-18)}.block-head h2{margin-bottom:0}.desk-filter-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:0 0 var(--space-18)}.desk-filter-group{display:flex;flex-wrap:wrap;gap:var(--space-2)}.desk-filter-rule{width:1px;height:22px;background:var(--color-border);flex-shrink:0}.desk-pill{margin:0;padding:7px var(--space-3);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-micro);text-transform:uppercase;cursor:pointer}.desk-pill:hover:not(:disabled){color:var(--color-text)}.desk-pill:disabled{opacity:.4;cursor:not-allowed;color:var(--color-text-quiet)}.desk-pill[aria-pressed=true]{border-color:transparent;background:var(--color-court);color:var(--color-on-accent);font-weight:var(--weight-semibold)}.desk-pill[data-surface=hard][aria-pressed=true]{background:var(--surface-hard)}.desk-pill[data-surface=clay][aria-pressed=true]{background:var(--surface-clay)}.desk-pill[data-surface=grass][aria-pressed=true]{background:var(--surface-grass)}.desk-pill[data-surface=hard_indoor][aria-pressed=true]{background:var(--surface-indoor)}.block-head-controls{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-3)}.block-head .desk-toggle{margin:0}.desk-tight{margin-bottom:var(--space-8)}.badge-row{display:flex;flex-wrap:wrap;gap:6px}.badge-row .type{margin:0}.swatch{width:8px;height:8px;border-radius:2px;flex-shrink:0}.swatch-hard{background:var(--surface-hard)}.swatch-clay{background:var(--surface-clay)}.swatch-grass{background:var(--surface-grass)}.swatch-indoor{background:var(--surface-indoor)}.swatch-unknown{background:var(--surface-unknown)}.card.pad-lg{padding:var(--space-6)}.surface-row{margin-bottom:var(--space-18)}.surface-row:last-of-type{margin-bottom:var(--space-2)}.surface-row-label{display:flex;align-items:center;gap:6px;margin-bottom:6px;font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-muted);text-transform:uppercase;letter-spacing:var(--tracking-micro)}.surface-row-label .swatch{width:9px;height:9px}.bar-row{display:grid;grid-template-columns:90px 1fr;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:6px}.bar-name{font-size:var(--text-table);color:var(--color-text-quiet);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track-wrap{display:flex;align-items:center;gap:10px}.bar-track{flex:1 1;height:8px;background:var(--color-bar-track);overflow:hidden}.bar-fill,.bar-track{border-radius:var(--radius-chip)}.bar-fill{height:100%;width:100%;background:var(--color-bar-idle);transform:scaleX(var(--bar,0));transform-origin:left center;transition:transform var(--motion-base) var(--ease-in-out),background-color var(--motion-fast) var(--ease-out)}.bar-fill.bar-a{background:var(--color-player-a)}.bar-fill.bar-b{background:var(--color-player-b)}.bar-value{font-family:var(--font-mono);font-size:var(--text-table);font-weight:var(--weight-semibold);width:32px;text-align:right;color:var(--color-text-strong);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:color var(--motion-fast) var(--ease-out)}.bar-value.bar-a{color:var(--color-player-a)}.bar-value.bar-b{color:var(--color-player-b)}.bar-value.leader{font-weight:var(--weight-bold)}.footnote{font-size:var(--text-label);color:var(--color-footnote);margin:var(--space-1) 0 0}.spider-panel{display:grid;grid-gap:var(--space-18);gap:var(--space-18)}.serve-return-panel{display:grid;grid-gap:var(--space-6);gap:var(--space-6);align-items:start}@media (min-width:800px){.serve-return-panel{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:clamp(20px,3vw,40px)}}.serve-return-chart{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.serve-return-chart-head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}.serve-return-chart-head h2{margin:0}.serve-return-chart .spider-legend{justify-content:flex-end;gap:14px}.serve-return-chart .footnote{margin:0;color:var(--color-text-quiet)}.spider-legend{display:flex;flex-wrap:wrap;gap:var(--space-14);justify-content:center}.spider-legend-item{display:inline-flex;align-items:center;gap:5px;font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.spider-legend-item.spider-a{color:var(--color-player-a)}.spider-legend-item.spider-b{color:var(--color-player-b)}.spider-dot{width:9px;height:9px;border-radius:2px}.spider-legend-item.spider-a .spider-dot{background:var(--color-player-a)}.spider-legend-item.spider-b .spider-dot{background:var(--color-player-b)}.ratio-panel{display:block}.ratio-panel-body{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}@media (min-width:720px){.ratio-panel-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:var(--space-8)}}.ratio-chart-wrap{min-width:0}.ratio-chart{width:100%;max-width:28rem;height:auto;display:block;margin-inline:auto}.ratio-chart-grid{stroke:var(--color-border-subtle);stroke-width:1}.ratio-baseline{stroke:var(--color-text-faint);stroke-width:1.25;stroke-dasharray:4 4}.ratio-line{stroke-width:2.25}.ratio-line-a{stroke:var(--color-player-a)}.ratio-line-b{stroke:var(--color-player-b)}.ratio-dot-a{fill:var(--color-player-a)}.ratio-dot-b{fill:var(--color-player-b)}.ratio-x-label,.ratio-y-label{fill:var(--color-text-muted);font-size:11px}.ratio-point-label{font-size:11px;font-weight:600;paint-order:stroke fill;stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round}.ratio-point-a{fill:var(--color-player-a)}.ratio-point-b{fill:var(--color-player-b)}.ratio-tile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3);min-width:0}@media (max-width:719px){.ratio-tile-grid{border-top:1px solid var(--color-border-subtle);padding-top:var(--space-6)}}.ratio-tile{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-control);text-align:center;position:relative}.ratio-tile-head{display:flex;align-items:center;justify-content:center;gap:4px}.ratio-tile-label{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);letter-spacing:var(--tracking-micro);text-transform:uppercase}.ratio-tile-value{display:grid;grid-gap:1px;gap:1px;padding:var(--space-2) var(--space-1);border-radius:var(--radius-chip);font-family:var(--font-mono);font-size:var(--text-table);line-height:1.2}.ratio-tile-a{color:var(--color-player-a)}.ratio-tile-b{color:var(--color-player-b)}.ratio-tile-name{font-size:var(--text-chip);opacity:.85}.ratio-tile-num{font-weight:var(--weight-semibold,600)}.ratio-tile-edge{margin-top:var(--space-1);padding:var(--space-2) var(--space-3);border-radius:var(--radius-chip);font-size:var(--text-chip);font-weight:var(--weight-bold)}.ratio-tile-edge-a{color:var(--color-player-a);background:color-mix(in srgb,var(--color-player-a) 14%,transparent)}.ratio-tile-edge-b{color:var(--color-player-b);background:color-mix(in srgb,var(--color-player-b) 14%,transparent)}.ratio-tile-edge-label{display:block;font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-regular);color:inherit;opacity:.75;letter-spacing:var(--tracking-micro);text-transform:uppercase}.ratio-tile-edge.even{font-weight:var(--weight-regular);color:var(--color-text-muted);background:var(--color-border-subtle)}.metric-info{position:relative;flex-shrink:0}.metric-info-btn{display:inline-flex;width:16px;height:16px;align-items:center;justify-content:center;border-radius:50%;border:1px solid var(--color-border);background:transparent;color:var(--color-text-faint);font-size:10px;font-family:var(--font-mono);font-style:italic;line-height:1;padding:0;cursor:pointer}.metric-info-btn:focus-visible,.metric-info-btn:hover{color:var(--color-text-muted);border-color:var(--color-text-faint);outline:none}.metric-info-panel{position:absolute;top:calc(100% + 6px);left:0;right:auto;z-index:5;width:max(11rem,140px);max-width:min(16rem,90vw);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-control);box-shadow:0 8px 24px color-mix(in srgb,var(--color-text-strong) 12%,transparent);text-align:left}.metric-info-title{margin:0 0 var(--space-2);font-size:var(--text-chip);font-weight:var(--weight-bold);color:var(--color-text-strong)}.metric-info-footnote,.metric-info-formula,.metric-info-summary{margin:0;font-size:var(--text-chip);line-height:1.45;color:var(--color-text-muted)}.metric-info-formula{margin-top:var(--space-2)}.metric-info-formula-label{display:block;margin-bottom:2px;font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase}.metric-info-footnote,.metric-info-formula-label{font-size:var(--text-micro);color:var(--color-text-faint)}.metric-info-footnote{margin-top:var(--space-2)}.spider-svg{display:block;width:100%;max-width:100%;height:auto;margin:0 auto;overflow:hidden}.spider-axis,.spider-ring{stroke:var(--color-border-subtle);stroke-width:1}.spider-poly{stroke-width:1.75;fill-opacity:1;stroke-linejoin:round}.spider-poly-a{fill:color-mix(in srgb,var(--color-player-a) 14%,transparent);stroke:var(--color-player-a)}.spider-poly-b{fill:color-mix(in srgb,var(--color-player-b) 14%,transparent);stroke:var(--color-player-b)}.spider-label{fill:var(--color-text-quiet);font-family:var(--font-mono);font-size:8.5px;letter-spacing:.06em}.spider-metric-table{min-width:0}.spider-metric-head,.spider-metric-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(5.5rem,1fr) minmax(5.5rem,1fr);grid-column-gap:16px;column-gap:16px;align-items:center}.spider-metric-head{padding-bottom:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-quiet)}.spider-metric-head .spider-metric-a,.spider-metric-head .spider-metric-b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spider-metric-head .spider-metric-a,.spider-metric-value.spider-metric-a{color:var(--color-player-a);text-align:right}.spider-metric-head .spider-metric-b,.spider-metric-value.spider-metric-b{color:var(--color-player-b);text-align:right}.spider-metric-row{padding:11px 0;border-top:1px solid var(--color-border-subtle)}.spider-metric-label{font-size:13px;font-weight:var(--weight-semibold);color:var(--color-text-strong)}.spider-metric-value{font-family:var(--font-mono);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;transition:opacity var(--motion-fast) var(--ease-out)}.spider-metric-value.leader{font-weight:var(--weight-bold)}.dual-bar-list,.dual-bar-row{display:flex;flex-direction:column}.dual-bar-row{gap:7px;padding:13px 0;border-top:1px solid var(--color-border-subtle)}.dual-bar-row:first-child{border-top:0;padding-top:0}.dual-bar-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.dual-bar-label{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:var(--weight-semibold);color:var(--color-text-strong)}.dual-bar-edge{flex-shrink:0;padding:3px 8px;border-radius:var(--radius-chip);font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-on-surface-chip)}.dual-bar-edge.edge-a{background:var(--color-player-a);color:var(--color-on-surface-chip)}.dual-bar-edge.edge-b{background:var(--color-player-b);color:var(--color-on-surface-chip)}.dual-bar-edge.even{background:var(--color-border);color:var(--color-text-muted)}.dual-bar-track{display:grid;grid-template-columns:46px 1fr 46px;grid-gap:10px;gap:10px;align-items:center}.dual-bar-value{font-family:var(--font-mono);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.dual-bar-value.spider-metric-b{text-align:right}.dual-bar-mids{display:flex;gap:4px;height:7px}.dual-bar-half{flex:1 1;display:flex;overflow:hidden;border-radius:999px;background:var(--color-border-subtle)}.dual-bar-half:first-child{justify-content:flex-end}.dual-bar-fill{height:100%;border-radius:999px;transition:width var(--motion-medium) var(--ease-out)}.dual-bar-fill.fill-a{background:var(--color-player-a)}.dual-bar-fill.fill-b{background:var(--color-player-b)}.dual-bar-fill.is-muted{opacity:.45}.injury-note{font-family:var(--font-mono);margin:0 0 var(--space-10);text-transform:uppercase;letter-spacing:var(--tracking-micro)}.compare-table{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.compare-table-head,.compare-table-row{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px;align-items:start;padding:var(--space-3) var(--space-6);border-bottom:1px solid var(--color-border-subtle)}.compare-table-head>div:first-child,.compare-table-row>div:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.compare-table.wide .compare-table-head,.compare-table.wide .compare-table-row{grid-template-columns:minmax(5.5rem,.7fr) minmax(9.5rem,1fr) minmax(9.5rem,1fr)}.compare-table-head{font-family:var(--font-mono);font-size:var(--text-micro);color:var(--color-text-faint);text-transform:uppercase;letter-spacing:var(--tracking-micro);border-bottom-color:var(--color-border)}.compare-table-head>div:not(:first-child),.compare-table-row>div:not(:first-child){text-align:right;font-family:var(--font-mono)}.compare-table-row{font-size:var(--text-table);color:var(--color-text-strong)}.compare-table-row:last-child{border-bottom:0}.compare-table-row .leader{font-weight:var(--weight-bold)}.compare-table-head>div:nth-child(2),.compare-table-row>div:nth-child(2){color:var(--color-player-a)}.compare-table-head>div:nth-child(3),.compare-table-row>div:nth-child(3){color:var(--color-player-b)}.stat-stack{display:flex;flex-direction:column;align-items:flex-end;gap:1px;line-height:1.15}.stat-n{font-size:var(--text-chip);font-weight:var(--weight-regular);color:var(--color-text-faint)}.leader .stat-n{color:inherit;opacity:.7}.compare-trailing{opacity:.55}.compare-table-row>div{transition:color var(--motion-fast) var(--ease-out),opacity var(--motion-fast) var(--ease-out)}@media (max-width:719px){.compare-table-head,.compare-table-row{gap:var(--space-2);padding:var(--space-3) var(--space-4)}.compare-table-head,.compare-table-row,.compare-table.wide .compare-table-head,.compare-table.wide .compare-table-row{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) minmax(0,1fr)}.compare-table-head>div,.compare-table-row>div{min-width:0}.compare-table-head>div:not(:first-child),.compare-table-row>div:not(:first-child){overflow-wrap:anywhere;line-height:1.35}.compare-table-row{font-size:var(--text-label)}}.clutch-panel{display:grid;grid-gap:var(--space-12);gap:var(--space-12)}.clutch-grid{display:flex;flex-direction:column}.clutch-grid-head,.clutch-grid-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:12px;gap:12px;padding:13px 0;border-bottom:1px solid var(--color-border-subtle);align-items:start}.clutch-grid-head{padding-top:0;padding-bottom:8px;font-family:var(--font-mono);font-size:10px;color:var(--color-text-quiet);text-transform:uppercase;letter-spacing:.12em;border-bottom-color:transparent}.clutch-grid-head>div:not(:first-child),.clutch-value{text-align:right}.clutch-grid-head .spider-metric-a{color:var(--color-player-a)}.clutch-grid-head .spider-metric-b{color:var(--color-player-b)}.clutch-grid-row:last-child{border-bottom:0}.clutch-label{font-size:var(--text-table);color:var(--color-text-muted);display:flex;align-items:center;gap:6px}.clutch-value{display:flex;flex-direction:column;align-items:flex-end;gap:2px}.clutch-pct{font-family:var(--font-mono);font-size:1.25rem;font-weight:var(--weight-bold);line-height:1.1}.clutch-a .clutch-pct{color:var(--color-player-a)}.clutch-b .clutch-pct{color:var(--color-player-b)}.clutch-value.leader .clutch-pct{padding:var(--space-1) var(--space-2);border-radius:var(--radius-chip)}.clutch-value.leader.clutch-a .clutch-pct{background:color-mix(in srgb,var(--color-player-a) 12%,transparent)}.clutch-value.leader.clutch-b .clutch-pct{background:color-mix(in srgb,var(--color-player-b) 12%,transparent)}.clutch-detail{font-size:var(--text-chip);color:var(--color-text-muted);line-height:1.2}.kv{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--text-ui);padding:6px 0}.kv span:last-child{font-family:var(--font-mono)}.travel-copy{font-size:var(--text-ui);line-height:1.6;color:var(--color-text-strong);margin:0}.travel-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.travel-row{margin:0;font-size:var(--text-ui);line-height:1.5;color:var(--color-text-strong)}.travel-player{font-weight:var(--weight-semibold)}.travel-detail{color:var(--color-text-muted)}.desk-research{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:var(--space-4) var(--space-6)}.desk-research-summary{cursor:pointer;font-size:var(--text-ui);font-weight:var(--weight-bold);color:var(--color-text-strong);list-style:none}.desk-research-summary::-webkit-details-marker{display:none}.desk-research:not([open]) .desk-research-label-open,.desk-research[open] .desk-research-label-closed{display:none}.desk-research-panel{margin-top:var(--space-6);display:flex;flex-direction:column;gap:var(--space-8)}.desk-research-panel .block{margin-bottom:0}.h2h-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);padding:var(--space-6);display:flex;align-items:center;gap:var(--space-6)}.h2h-score{margin:0;display:flex;align-items:baseline;gap:.35em;font-size:22px;font-weight:var(--weight-medium);font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.h2h-wins-a{color:var(--color-player-a)}.h2h-wins-b{color:var(--color-player-b)}.h2h-score-sep{color:var(--color-text-faint)}.h2h-wins-trailing{opacity:.55}.h2h-copy{font-size:13px;color:var(--color-text-muted);line-height:1.5;margin:0 0 16px}.h2h-meeting,.h2h-meetings{display:flex;flex-direction:column}.h2h-meeting{gap:5px;padding:12px 0;border-top:1px solid var(--color-border-subtle)}.h2h-meeting-bottom,.h2h-meeting-top{display:flex;align-items:center;gap:10px;min-width:0}.h2h-date{flex-shrink:0;font-family:var(--font-mono);font-size:11px;color:var(--color-text-faint)}.h2h-event{min-width:0;font-size:13px;font-weight:var(--weight-semibold)}.h2h-score-line{font-family:var(--font-mono);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--palette-graphite)}.h2h-winner{margin-left:auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-faint)}.h2h-winner.winner-a{color:var(--color-player-a)}.h2h-winner.winner-b{color:var(--color-player-b)}.fatigue-table{display:flex;flex-direction:column}.fatigue-table-head,.fatigue-table-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:12px;gap:12px;align-items:baseline}.fatigue-table-head{padding-bottom:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-faint)}.fatigue-col-a{text-align:right;color:var(--color-player-a)}.fatigue-col-b{text-align:right;color:var(--color-player-b)}.fatigue-table-row{padding:13px 0;border-top:1px solid var(--color-border-subtle)}.fatigue-label{font-size:14px;font-weight:var(--weight-semibold)}.fatigue-cell{display:flex;flex-direction:column;gap:3px;text-align:right}.fatigue-primary{font-family:var(--font-mono);font-size:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text)}.fatigue-cell.lead-a .fatigue-primary{color:var(--color-player-a)}.fatigue-cell.lead-b .fatigue-primary{color:var(--color-player-b)}.fatigue-sub{font-family:var(--font-mono);font-size:10px;color:var(--color-text-faint)}.stack-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card);overflow:hidden}.stack-card-head{padding:14px 20px;font-family:var(--font-mono);font-weight:var(--weight-semibold);font-size:var(--text-ui);border-bottom:1px solid var(--color-border)}.desk>.stack-card:first-child .stack-card-head{color:var(--color-player-a);box-shadow:inset 3px 0 var(--color-player-a)}.desk>.stack-card:nth-child(2) .stack-card-head{color:var(--color-player-b);box-shadow:inset 3px 0 var(--color-player-b)}.stack-empty{padding:12px 20px}.form-strip{display:flex;gap:4px;padding:0 20px 10px}.form-opp-rank{margin:0;padding:0 20px 10px}.form-chip,.form-opp-rank{font-family:var(--font-mono);font-size:var(--text-micro)}.form-chip{flex:1 1;min-width:0;height:28px;display:grid;place-items:center;border-radius:var(--radius-control);font-weight:var(--weight-bold);letter-spacing:.02em}.form-chip.win{background:var(--color-form-win-fill);color:var(--color-form-win-ink)}.form-chip.loss{background:var(--color-form-loss-fill);color:var(--color-form-loss-ink)}.form-momentum-card .stack-card-head{border-bottom:1px solid var(--color-border)}.form-momentum-panel{position:relative;padding:8px 8px 12px}.form-momentum-chart{display:block;width:100%;height:auto}.form-momentum-grid{stroke:var(--color-border-subtle);stroke-width:1}.form-momentum-mid{stroke:var(--color-border);stroke-width:1;stroke-dasharray:4 4}.form-momentum-axis{fill:var(--color-text-faint);font-size:10px;font-family:var(--font-mono)}.form-momentum-line{stroke:var(--color-text-strong);stroke-width:2;stroke-linejoin:round;stroke-linecap:round;pointer-events:none}.form-momentum-draw{stroke-dasharray:1;stroke-dashoffset:1}.form-momentum-card:first-child .form-momentum-line{stroke:var(--color-player-a)}.form-momentum-card:nth-child(2) .form-momentum-line{stroke:var(--color-player-b)}.form-momentum-line-hit{stroke:transparent;stroke-width:16;stroke-linejoin:round;stroke-linecap:round;cursor:crosshair;pointer-events:stroke}.form-momentum-line-marker{fill:var(--color-text-strong);stroke:var(--color-surface);stroke-width:1.5;pointer-events:none}.form-momentum-card:first-child .form-momentum-line-marker{fill:var(--color-player-a)}.form-momentum-card:nth-child(2) .form-momentum-line-marker{fill:var(--color-player-b)}.form-dot{stroke:var(--color-surface);stroke-width:1;cursor:pointer}.form-dot-hard{fill:var(--surface-hard)}.form-dot-clay{fill:var(--surface-clay)}.form-dot-grass{fill:var(--surface-grass)}.form-dot-indoor{fill:var(--surface-indoor)}.form-dot-unknown{fill:var(--surface-unknown)}.form-dot-loss{opacity:.4}.form-momentum-tooltip{position:absolute;left:16px;top:16px;z-index:2;max-width:240px;padding:10px 12px;border-radius:var(--radius-control);background:var(--color-text-strong);color:var(--color-surface);font-size:var(--text-table);line-height:1.4;pointer-events:none;box-shadow:0 8px 24px color-mix(in srgb,var(--color-text-strong) 25%,transparent)}.form-momentum-tooltip .meta{color:color-mix(in srgb,var(--color-surface) 70%,transparent);margin-top:2px}.form-momentum-tooltip-result{font-weight:var(--weight-semibold);margin-bottom:4px}.form-momentum-tooltip-result.tone-hard{color:var(--surface-hard)}.form-momentum-tooltip-result.tone-clay{color:var(--surface-clay)}.form-momentum-tooltip-result.tone-grass{color:var(--surface-grass)}.form-momentum-tooltip-result.tone-indoor{color:var(--surface-indoor)}.hist-row,.last4-row{padding:10px 20px;border-bottom:1px solid var(--color-border-subtle)}.last4-row{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-table)}.last4-year{color:var(--color-text-faint)}.last4-wl,.last4-year{font-family:var(--font-mono)}.last4-wl{font-weight:var(--weight-semibold)}.round-stage-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:12px 20px;border-bottom:1px solid var(--color-border-subtle);font-size:var(--text-table)}.round-stage-tier{color:var(--color-text-quiet);font-weight:var(--weight-regular)}.round-stage-row:last-child{border-bottom:0}.round-stage-row strong{font-family:var(--font-mono);font-weight:var(--weight-semibold);white-space:nowrap}.hist-top{display:flex;justify-content:space-between;gap:var(--space-2);font-size:var(--text-table);margin-bottom:2px;color:var(--color-text-strong)}.hist-opponent{display:inline-flex;align-items:baseline;gap:6px;min-width:0}.hist-opp-rank{flex-shrink:0}.hist-meta,.hist-opp-rank{font-family:var(--font-mono);font-size:var(--text-micro)}.hist-meta{display:flex;justify-content:space-between;gap:var(--space-2);color:var(--color-text-faint)}.hist-meta-primary{display:inline-flex;align-items:center;gap:6px;min-width:0}.surface-badge{display:inline-block;flex-shrink:0;padding:1px 5px;border-radius:var(--radius-chip);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:.04em;line-height:1.35;color:var(--color-on-surface-chip)}.surface-badge.tone-hard{background:var(--surface-hard)}.surface-badge.tone-clay{background:var(--surface-clay)}.surface-badge.tone-grass{background:var(--surface-grass)}.surface-badge.tone-indoor{background:var(--palette-olive-3);color:var(--color-surface)}.surface-badge.tone-unknown{background:var(--surface-unknown);color:var(--color-surface)}.result-badge{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;flex-shrink:0;font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-bold);line-height:1}.result-badge.win{background:var(--color-form-win-fill);color:var(--color-form-win-ink)}.result-badge.loss{background:var(--color-form-loss-fill);color:var(--color-form-loss-ink)}.reveal{display:block;width:100%;padding:var(--space-3) 20px;text-align:center;font-size:var(--text-label);color:var(--color-accent);font-family:var(--font-mono);background:transparent;border:0;cursor:pointer}.briefing-band{position:relative;margin-inline:calc(-1 * var(--gutter));margin-bottom:calc(-1 * var(--space-page-bottom));background:var(--color-ink-band);color:var(--color-on-ink)}.briefing-band:before{content:"";position:absolute;left:0;right:0;top:0;height:10px;transform:translateY(-100%);background:var(--color-ink-band);pointer-events:none;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpolygon points='0,10 9,0 18,10' fill='black'/%3E%3C/svg%3E");-webkit-mask-size:18px 10px;-webkit-mask-repeat:repeat-x;mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 10'%3E%3Cpolygon points='0,10 9,0 18,10' fill='black'/%3E%3C/svg%3E");mask-size:18px 10px;mask-repeat:repeat-x}.briefing-inner{width:100%;margin:0;padding:var(--space-10) var(--gutter) var(--space-12)}.briefing-band h2.briefing-eyebrow{color:var(--color-on-ink);font-size:var(--text-eyebrow);display:inline-flex;align-items:center;gap:var(--space-2);margin:0}.owlread-title{display:inline-flex;align-items:baseline;gap:.12em}.owlread-title-owl{color:var(--color-accent);font-family:var(--font-mono);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.owlread-title-read{color:var(--color-on-ink);font-family:var(--font-hand);font-size:1.55em;font-weight:600;letter-spacing:.01em;text-transform:none;line-height:1}.owlread-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin:0 0 var(--space-6)}.owlread-mark{flex-shrink:0}.owlread-lean{display:inline-flex;align-items:center;min-height:28px;padding:6px 12px;border-radius:var(--radius-pill);background:var(--color-court);color:var(--color-on-accent);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro);text-transform:uppercase}.owlread-section{margin:0 0 var(--space-6)}.owlread-bottom p,.owlread-edge-body,.owlread-section p{margin:0 0 .75rem;color:var(--color-on-ink-muted);font-size:var(--text-body);line-height:1.7}.owlread-bottom p:last-child,.owlread-section p:last-child{margin-bottom:0}.owlread-edges{margin:var(--space-8) 0}.owlread-edges-title{color:var(--color-court);margin-bottom:var(--space-4)}.owlread-edges-title:before{content:"> "}.owlread-edge-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:var(--space-4);gap:var(--space-4)}@media (min-width:900px){.owlread-edge-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.owlread-edge{display:flex;flex-direction:column;padding:var(--space-4);border-radius:var(--radius-card);border:1px solid color-mix(in srgb,var(--color-on-ink) 10%,transparent);background:color-mix(in srgb,var(--color-on-ink) 4%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--color-on-ink) 6%,transparent)}.owlread-edge-player{display:flex;align-items:center;gap:var(--space-2);margin:0 0 var(--space-3);color:var(--color-on-ink);font-size:var(--text-ui);font-weight:var(--weight-bold);line-height:1.2}.owlread-edge-flag{flex-shrink:0;width:18px;height:12px;object-fit:cover;border-radius:2px;border:1px solid color-mix(in srgb,var(--color-on-ink) 22%,transparent);background:color-mix(in srgb,var(--color-on-ink) 10%,transparent)}.owlread-edge-badge{display:inline-flex;align-self:flex-start;margin:0 0 var(--space-3);padding:5px 10px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro);text-transform:uppercase;line-height:1.25}.owlread-edge-a .owlread-edge-badge{color:var(--color-player-a);background:color-mix(in srgb,var(--color-player-a) 18%,transparent)}.owlread-edge-b .owlread-edge-badge{color:var(--color-player-b);background:color-mix(in srgb,var(--color-player-b) 18%,transparent)}.owlread-edge-body{margin:0}.owlread-bottom{margin-top:var(--space-8)}.briefing-card{max-width:none;color:var(--color-on-ink-muted)}.match-weather-strip{margin-bottom:var(--space-8);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.match-weather{display:flex;flex-wrap:wrap;gap:var(--space-4);margin:0;padding:0;list-style:none}.match-weather-item{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:var(--text-label);color:var(--color-text-muted)}.match-weather-icon{width:16px;height:16px;color:var(--color-accent);flex-shrink:0}.match-weather-value{color:var(--color-text-strong)}.briefing-card h1,.briefing-card h2,.briefing-card h3{font-family:var(--font-mono);font-size:var(--text-table);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-label);color:var(--color-on-ink);margin:0 0 10px}.briefing-card .briefing-bottom-line{column-span:all;margin-top:var(--space-8);padding:var(--space-4);border:1px solid color-mix(in srgb,var(--color-court) 55%,transparent);border-radius:var(--radius-control);background:color-mix(in srgb,var(--color-court) 12%,transparent);color:var(--color-court)}.briefing-card .briefing-bottom-line.owlread-bottom{color:var(--color-on-ink-muted)}.briefing-card .briefing-bottom-line.owlread-bottom .briefing-section-title{color:var(--color-court);margin-bottom:var(--space-3)}.briefing-card .briefing-bottom-line.owlread-bottom p{color:var(--color-on-ink-muted);margin:0}.briefing-conditions{margin:0 0 var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid color-mix(in srgb,var(--color-on-ink) 18%,transparent);font-family:var(--font-mono);font-size:var(--text-label);line-height:1.6;color:var(--color-on-ink-muted)}.briefing-card p{font-size:var(--text-body);line-height:1.7;color:var(--color-on-ink-muted)}.briefing-card strong{color:var(--color-on-ink)}.briefing-card a{color:var(--color-court)}@media (prefers-reduced-motion:reduce){.home-board-preparing .owling-loader-mini,.owling-loader-mark,.owling-loader-mini .owling-loader-mark,.owling-loader:after,.owling-loader:before,.owling-orb{animation:none}.bar-fill,.bar-value,.compare-table-row>div,.desk-toggle-thumb,.dual-bar-fill,.match-link,.toggle-btn{transition:none}}@media (max-width:720px){.shell,.site-footer,.site-header{padding-left:var(--gutter-sm);padding-right:var(--gutter-sm)}h1{font-size:var(--text-display-sm)}.site-header{align-items:center;gap:var(--space-3)}.brand{flex-shrink:0;font-size:16px;gap:var(--space-2)}.site-header-end{flex:1 1;justify-content:flex-end;min-width:0;gap:var(--space-2)}.site-nav{min-width:0;overflow-x:auto;gap:0}.site-nav-link{padding:var(--space-2) var(--space-2);white-space:nowrap}.match-card,.match-list{grid-template-columns:1fr}.match-card{gap:0;min-height:0;padding:var(--space-4);align-items:stretch}.match-card-desktop-only{display:none}.match-card-mobile-only{display:flex}.match-card-meta{grid-column:1;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:baseline;justify-content:space-between;gap:var(--space-3);padding:0;border-right:0;border-bottom:0}.match-card-meta,.match-card-when{font-size:var(--text-label)}.match-card-round{margin-left:auto;text-align:right}.match-card-divider{position:static;inset:auto;grid-column:1;display:flex;align-items:center;gap:var(--space-2);width:100%;height:auto;margin:var(--space-3) 0 0;overflow:visible}.match-card-divider-line{display:block;flex:1 1 auto;min-width:var(--space-6);height:1px;background:var(--color-border-subtle)}.match-card-value-badge{position:static;top:auto;right:auto;left:auto;bottom:auto;flex:0 0 auto;height:1.75rem;margin:0;padding:0 10px;border-radius:var(--radius-pill);font-size:var(--text-label);line-height:1;box-sizing:border-box;transform:none}.match-card-value-badge-strong:before{margin:0;box-shadow:none}.match-card-mobile-sides{flex-direction:column;min-width:0}.match-card-mobile-side{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;grid-column-gap:var(--space-3);column-gap:var(--space-3);padding:var(--space-4) 0}.match-card-mobile-side+.match-card-mobile-side{border-top:1px solid var(--color-border-subtle)}.match-card-mobile-copy{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.match-card-mobile-side .match-card-player{padding:0;gap:var(--space-2)}.match-card-mobile-side .match-card-avatar{width:40px;height:40px;font-size:var(--text-label)}.match-card-mobile-side .match-card-name{font-size:var(--text-fixture)}.match-card-mobile-metrics{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3) var(--space-8)}.match-card-mobile-metric{display:inline-flex;align-items:center;gap:var(--space-2);min-width:0}.match-card-mobile-metric-label{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-micro);text-transform:uppercase;white-space:nowrap}.match-card-mobile-owlsense-label{font-size:var(--text-label);gap:.1em}.match-card-mobile-owlsense-label .match-card-owlsense-hand,.match-card-mobile-owlsense-label .methodology-inset-eyebrow-sense{color:var(--color-text);font-size:1.45em}.match-card-mobile-metric .match-card-sense{min-width:3rem;min-height:28px;font-size:var(--text-label)}.match-card-action{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:auto;min-height:52px;margin-top:var(--space-3);padding:0 3rem;border-radius:var(--radius-pill);background:var(--color-ink-band);color:var(--color-court)}.match-card-action-label{display:inline;color:var(--color-on-ink);font-family:var(--font-sans);font-size:var(--text-body);font-weight:var(--weight-medium);letter-spacing:0;line-height:1;text-align:center;text-transform:none}.match-card-action svg{position:absolute;top:50%;right:var(--space-5);width:18px;height:18px;flex-shrink:0;transform:translateY(-50%)}.home-board-toolbar{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3)}.home-search{min-width:0;width:100%}.home-board-modes,.home-event-pills{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2);min-width:0;max-width:100%;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.home-board-modes::-webkit-scrollbar,.home-event-pills::-webkit-scrollbar{display:none}.home-board-mode,.home-event-pill{flex-shrink:0;white-space:nowrap}.home-tournament-header{flex-wrap:wrap;padding:var(--space-3) 0}.home-tournament-header-aside{margin-left:auto}.home-hero-stats{gap:var(--space-5)}.home-back-top-btn,.home-board-mode,.home-search-count,.round-rule,.round-rule-count{font-size:var(--text-label)}.home-search input{font-size:var(--text-body)}.home-search-count{justify-self:end}}.player-page-main{position:relative}.player-page,.player-page-main{min-width:0;max-width:100%}.player-page-body{display:grid;grid-gap:var(--space-6);gap:var(--space-6);width:100%;max-width:min(100%,var(--page-max));margin:0 auto;padding:0 0 var(--space-8);min-width:0}.player-explore,.player-form-momentum,.player-page-body>*,.player-profile-card,.player-profile-deep-sections,.player-profile-grid,.player-section-reveal{min-width:0;max-width:100%}.player-page-building{max-width:var(--page-max);margin:0 auto var(--space-6)}.player-jump-bar{display:flex;align-items:center;gap:6px clamp(12px,2.2vw,22px);flex-wrap:nowrap;margin:0 calc(-1 * var(--gutter)) 0;padding:7px var(--gutter);border:0;border-bottom:1px solid var(--color-border);border-radius:0;background:color-mix(in srgb,var(--color-bg) 93%,transparent);box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.player-jump-nav-sticky{position:-webkit-sticky;position:sticky;top:0;z-index:20}.player-jump-nav{display:flex;align-items:center;gap:6px clamp(12px,2.2vw,22px);flex:1 1 auto;min-width:0;overflow-x:auto;scrollbar-width:none}.player-jump-nav::-webkit-scrollbar{display:none}.player-jump-links{display:flex;align-items:center;gap:6px clamp(10px,1.8vw,18px);flex:0 0 auto;min-width:0}.player-window-toggle{flex:0 0 auto;margin-left:auto;min-width:0}.player-window-toggle .desk-toggle{margin:0;max-width:100%}.player-page :is(#explore,#form,#surfaces,#bestof,#deciders,#tiebreaks,#clashes,#rank,#levels,#exploit,#matches){scroll-margin-top:4.5rem}.player-jump-link{flex:0 0 auto;padding:5px 11px;border-radius:var(--radius-pill);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase}.player-jump-link:hover{background:transparent;color:var(--color-text);text-decoration:none}.player-jump-link-match{display:inline-flex;align-items:center;gap:var(--space-2);border:1px solid var(--color-border)}.player-jump-link-match,.player-jump-link-match:hover{background:var(--color-surface);color:var(--color-text)}.player-jump-link-match:hover{border-color:var(--color-text)}.player-form-momentum{padding:24px clamp(18px,3vw,28px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.player-form-range{display:inline-flex;flex:0 0 auto;gap:6px}.player-form-range button{min-width:2.4rem;padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:transparent;color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-bold);cursor:pointer}.player-form-range button.is-active{border-color:var(--color-text);background:var(--color-text);color:var(--color-surface)}.player-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px 20px;margin-bottom:var(--space-5)}.player-section-heading h2{margin:0;font-size:17px;font-weight:var(--weight-bold);letter-spacing:-.024em}.player-section-heading>div>p:not(.player-section-eyebrow),.player-section-heading>p{max-width:56ch;margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.player-section-eyebrow{display:none}.player-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.player-profile-card{padding:24px clamp(18px,3vw,28px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.player-profile-card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.player-profile-card-heading h2{margin:0;font-size:17px;font-weight:var(--weight-bold);letter-spacing:-.024em}.player-profile-card-heading p{margin:0}.player-profile-card-heading>div>p:not(.player-section-eyebrow){max-width:42ch;margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.player-profile-card-heading>p{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.player-profile-deep-sections{display:grid;grid-gap:var(--space-6);gap:var(--space-6)}@keyframes player-shimmer{0%{opacity:.42}50%{opacity:.92}to{opacity:.42}}@keyframes player-section-reveal{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.player-section-reveal{min-width:0;max-width:100%;animation:player-section-reveal .42s ease-out both}.desk-reveal{opacity:0;transform:translateY(10px);transition:opacity var(--motion-reveal) var(--ease-out) var(--motion-reveal-delay),transform var(--motion-reveal) var(--ease-out) var(--motion-reveal-delay)}.desk-reveal.is-revealed{opacity:1;transform:translateY(0)}.desk-reveal:not(.is-revealed) .bar-fill{transform:scaleX(0)!important}.desk-reveal:not(.is-revealed) .dual-bar-fill{width:0!important}.desk-reveal:not(.is-revealed) .spider-poly{transform:scale(0);transform-origin:center}.desk-reveal.is-revealed .spider-poly{transform:scale(1);transform-origin:center;transition:transform var(--motion-chart) var(--ease-out) var(--motion-chart-delay)}.desk-reveal.is-revealed .bar-fill{transition:transform var(--motion-chart) var(--ease-in-out) var(--motion-chart-delay),background-color var(--motion-fast) var(--ease-out)}.desk-reveal.is-revealed .dual-bar-fill,.desk-reveal.is-revealed .player-explore-card-fill,.desk-reveal.is-revealed .player-surface-fill{transition:width var(--motion-chart) var(--ease-out) var(--motion-chart-delay)}.desk-reveal:not(.is-revealed) .player-explore-card-fill,.desk-reveal:not(.is-revealed) .player-surface-fill{width:0!important}.desk-reveal:not(.is-revealed) .form-momentum-draw,.desk-reveal:not(.is-revealed) .player-form-momentum-draw{stroke-dasharray:1;stroke-dashoffset:1;opacity:.15}.desk-reveal:not(.is-revealed) .player-form-momentum-area{opacity:0;-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0)}.desk-reveal:not(.is-revealed) .player-form-momentum-dot{transform:scaleY(.2);opacity:0}.desk-reveal.is-revealed .form-momentum-draw,.desk-reveal.is-revealed .player-form-momentum-draw{stroke-dasharray:1;stroke-dashoffset:0;opacity:1;transition:stroke-dashoffset var(--motion-chart) var(--ease-out) var(--motion-chart-delay),opacity var(--motion-chart) var(--ease-out) var(--motion-chart-delay)}.desk-reveal.is-revealed .player-form-momentum-area{opacity:1;-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0);transition:opacity var(--motion-chart) var(--ease-out) var(--motion-chart-delay),-webkit-clip-path calc(var(--motion-chart) + .12s) var(--ease-out) var(--motion-chart-delay);transition:opacity var(--motion-chart) var(--ease-out) var(--motion-chart-delay),clip-path calc(var(--motion-chart) + .12s) var(--ease-out) var(--motion-chart-delay);transition:opacity var(--motion-chart) var(--ease-out) var(--motion-chart-delay),clip-path calc(var(--motion-chart) + .12s) var(--ease-out) var(--motion-chart-delay),-webkit-clip-path calc(var(--motion-chart) + .12s) var(--ease-out) var(--motion-chart-delay)}.desk-reveal.is-revealed .player-form-momentum-dot{transform:none;opacity:1;transition:transform .35s var(--ease-out) calc(var(--i, 0) * 12ms),opacity .35s var(--ease-out) calc(var(--i, 0) * 12ms)}@media (prefers-reduced-motion:reduce){.desk-reveal{opacity:1;transform:none}.desk-reveal,.desk-reveal.is-revealed .bar-fill,.desk-reveal.is-revealed .dual-bar-fill,.desk-reveal.is-revealed .form-momentum-draw,.desk-reveal.is-revealed .player-explore-card-fill,.desk-reveal.is-revealed .player-form-momentum-area,.desk-reveal.is-revealed .player-form-momentum-dot,.desk-reveal.is-revealed .player-form-momentum-draw,.desk-reveal.is-revealed .player-surface-fill,.desk-reveal.is-revealed .spider-poly{transition:none}.bestof-pie-chart,.player-win-rate-fill{transition:none;animation:none}.player-section-reveal{animation:none}.player-shimmer{animation:none;opacity:.65}}.player-shimmer{display:block;animation:player-shimmer 1.15s ease-in-out infinite}.player-shimmer--paper{background:color-mix(in srgb,var(--color-text) 10%,transparent)}.player-shimmer--ink{background:color-mix(in srgb,var(--color-on-ink) 16%,transparent)}.player-shimmer--square{border-radius:0}.player-shimmer--sm{border-radius:4px}.player-shimmer--md{border-radius:8px}.player-shimmer--pill{border-radius:var(--radius-pill)}.player-shimmer--circle{border-radius:50%}.player-page-skeleton .player-jump-link.player-page-skeleton-pill{color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;background:color-mix(in srgb,var(--color-text) 8%,transparent);animation:player-shimmer 1.15s ease-in-out infinite}.player-page-skeleton-toggle{display:inline-flex;gap:2px;padding:3px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-text) 6%,transparent)}.player-page-skeleton-toggle-item{padding:6px 12px;border-radius:var(--radius-pill);color:transparent;font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;-webkit-user-select:none;-moz-user-select:none;user-select:none;background:color-mix(in srgb,var(--color-text) 8%,transparent);animation:player-shimmer 1.15s ease-in-out infinite}.player-page-skeleton-name{margin:0;font-size:clamp(1.65rem,3.4vw,2.35rem);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.05}.player-page-skeleton-avatar{width:72px;height:72px}.player-page-skeleton-eyebrow{width:6.5rem;height:10px}.player-page-skeleton-name-block{width:min(18rem,72vw);height:2rem}.player-page-skeleton-badge{width:4.5rem;height:1.35rem}.player-page-skeleton-badge-wide{width:6.75rem}.player-page-skeleton-fact-label{width:3.25rem;height:8px}.player-page-skeleton-fact-value{width:5.5rem;height:14px;margin-top:4px}.player-page-skeleton-rating-value{width:2.75rem;height:1.35rem}.player-page-skeleton-rating-label{width:2rem;height:8px;margin-top:4px}.player-page-skeleton-form-label{width:4.5rem;height:10px}.player-page-skeleton-form-dot{width:1.35rem;height:1.35rem}.player-page-skeleton-headline-label{width:4.75rem;height:8px}.player-page-skeleton-headline-value{width:3rem;height:1.1rem;margin-top:4px}.player-page-skeleton-section-title{width:9rem;height:1.1rem}.player-page-skeleton-section-blurb{width:min(28rem,80vw);height:.85rem;margin-top:8px}.player-page-skeleton-section-blurb-wide{width:min(36rem,92vw)}.player-page-skeleton-title-sm{width:7rem;height:1.1rem}.player-page-skeleton-title-md{width:9.5rem;height:1.1rem}.player-page-skeleton-title-lg{width:12rem;height:1.1rem}.player-page-skeleton-blurb{display:block;height:.85rem;margin-top:8px}.player-page-skeleton-blurb-sm{width:min(16rem,70vw)}.player-page-skeleton-blurb-md{width:min(24rem,82vw)}.player-page-skeleton-explore-title{width:5.5rem;height:.95rem}.player-page-skeleton-chevron{width:.75rem;height:.75rem}.player-page-skeleton-explore-label{width:4rem;height:.75rem;margin-top:6px}.player-page-skeleton-stat-lg{width:4.5rem;height:1.35rem}.player-page-skeleton-stat-md{width:3.25rem;height:1.35rem}.player-page-skeleton-stat-sm{width:2.5rem;height:1.35rem}.player-page-skeleton-bar{width:68%;height:100%}.player-page-skeleton-chart{width:100%;height:220px}.player-page-skeleton-bars{display:grid;grid-gap:12px;gap:12px}.player-page-skeleton-surface-bar{width:100%;height:1.35rem}.player-page-skeleton-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.player-page-skeleton-stat-cell{width:100%;height:2.75rem}.player-page-skeleton-grid-block{width:100%;height:160px}.player-page-skeleton-grid-block-short{height:120px}.player-page-skeleton-table{width:100%;height:180px}.player-page-skeleton-heatmap{width:100%;height:220px}.player-page-skeleton-list{display:grid;grid-gap:10px;gap:10px}.player-page-skeleton-list-row{width:100%;height:2.25rem}.player-page-skeleton-status{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.player-recent-list,.player-vulnerability-list{display:grid}.player-vulnerability-callout{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:baseline;grid-gap:var(--space-3);gap:var(--space-3);margin:0 0 var(--space-5);padding:var(--space-4);border-left:4px solid var(--color-danger);border-radius:var(--radius-control);background:var(--color-form-loss-fill)}.player-vulnerability-callout small,.player-vulnerability-callout span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-micro)}.player-vulnerability-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border-subtle)}.player-recent-row:last-child,.player-vulnerability-row:last-child{border-bottom:0}.player-vulnerability-row>div{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.player-vulnerability-row small{color:var(--color-text-muted);font-family:var(--font-mono)}.player-verdict-chip{flex:0 0 auto;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.player-verdict-chip.verdict-strong{background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent)}.player-verdict-chip.verdict-vulnerable{background:color-mix(in srgb,var(--color-danger) 14%,transparent);color:var(--color-danger)}.player-verdict-chip.verdict-neutral{background:var(--color-border-subtle);color:var(--color-text-muted)}.player-verdict-chip.verdict-no_data{background:var(--color-border-subtle);color:var(--color-text-faint)}.player-recent-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border-subtle)}.player-recent-opponent,.player-recent-score{display:grid;grid-gap:var(--space-1);gap:var(--space-1)}.player-recent-score{text-align:right}.player-recent-opponent small,.player-recent-score small{color:var(--color-text-muted);font-size:var(--text-micro)}.player-recent-meta{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}.player-recent-date{color:var(--color-text-muted);font-size:var(--text-micro);white-space:nowrap}.player-recent-date,.player-recent-score small,.player-recent-score strong{font-family:var(--font-mono)}.player-profile-expand{width:100%;margin-top:var(--space-3);padding:var(--space-3);border:0;border-top:1px solid var(--color-border-subtle);background:transparent;color:var(--color-link);font:inherit;font-weight:var(--weight-bold);cursor:pointer}.player-explore{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.player-explore-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:16px;gap:16px}.player-explore-card{display:grid;grid-gap:0;gap:0;min-width:0;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.player-explore-card-hit{display:flex;flex-direction:column;gap:14px;width:100%;padding:20px clamp(16px,2.4vw,22px);border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.player-explore-card-hit:hover{border-color:transparent}.player-explore-card:has(.player-explore-card-hit:hover){border-color:var(--color-text)}.player-explore-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.player-explore-card-top h3{margin:0;font-size:15px;font-weight:var(--weight-bold);letter-spacing:-.02em}.player-explore-card-chevron{flex-shrink:0;margin-top:2px;color:var(--color-text-faint);font-size:16px;line-height:1}.player-explore-card-stat{display:flex;flex-direction:column;gap:4px}.player-explore-card-stat .tournament-logo-shell,.player-explore-card-stat .tournament-monogram{margin-bottom:2px}.player-explore-card-stat strong{font-family:var(--font-mono);font-size:21px;font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;color:var(--color-text)}.player-explore-card-stat span{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.player-explore-card-track{height:5px;margin-top:auto;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border-subtle)}.player-explore-card-fill{display:block;height:100%;border-radius:inherit}.player-explore-card-fill.tone-player{background:var(--color-player-a)}.player-explore-card-fill.tone-olive{background:var(--color-accent)}.player-explore-detail{margin:0;padding:0 20px 18px;color:var(--color-text-muted);font-size:13px;line-height:1.45}.player-explore-modal-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow:hidden;overscroll-behavior:contain;background:color-mix(in srgb,var(--color-ink-band) 62%,transparent)}.player-explore-modal{display:flex;flex-direction:column;width:100%;max-width:780px;max-height:min(92dvh,calc(100% - 8px));overflow:hidden;border-radius:20px;background:var(--color-surface);box-shadow:0 30px 80px color-mix(in srgb,var(--color-ink-band) 45%,transparent)}.player-explore-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0;padding:20px clamp(18px,3vw,28px);background:var(--color-ink-band)}.player-explore-modal-heading{display:flex;flex-direction:column;gap:5px;min-width:0}.player-explore-modal-heading h2{margin:0;color:var(--color-on-ink);font-size:18px;font-weight:var(--weight-bold);letter-spacing:-.026em}.player-explore-modal-heading p{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.player-explore-modal-close{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;padding:0;border:1px solid var(--color-ink-line);border-radius:999px;background:transparent;color:var(--color-on-ink-soft);font-size:20px;line-height:1;cursor:pointer}.player-explore-modal-close:focus-visible,.player-explore-modal-close:hover{border-color:var(--color-on-ink-soft);color:var(--color-on-ink);outline:none}.player-drilldown-modal .player-explore-modal-header{align-items:flex-start;padding:26px clamp(22px,3vw,32px) 20px;border-bottom:1px solid var(--color-border-subtle);background:var(--color-surface)}.player-drilldown-modal .player-explore-modal-heading{gap:6px}.player-drilldown-modal-eyebrow{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase}.player-drilldown-modal .player-explore-modal-heading h2{color:var(--color-text);font-size:clamp(24px,3.2vw,30px);letter-spacing:-.035em;line-height:1.1}.player-drilldown-modal-meta{margin:2px 0 0;color:var(--color-text-muted);font-size:13px;font-weight:var(--weight-semibold);letter-spacing:.02em;line-height:1.4}.player-drilldown-modal .player-explore-modal-close{border:0;background:color-mix(in srgb,var(--color-ink) 6%,var(--color-surface));color:var(--color-text-muted)}.player-drilldown-modal .player-explore-modal-close:focus-visible,.player-drilldown-modal .player-explore-modal-close:hover{background:color-mix(in srgb,var(--color-ink) 10%,var(--color-surface));color:var(--color-text)}.player-drilldown-modal .player-explore-modal-content{gap:14px;padding-top:22px}.player-drilldown-modal-section{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase}.player-explore-modal-content{display:flex;flex-direction:column;gap:22px;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:clamp(18px,3vw,26px) clamp(18px,3vw,28px) clamp(22px,3vw,30px)}.player-explore-modal-intro{margin:0;padding:13px 16px;border:1px solid var(--color-accent-outline);border-radius:12px;background:var(--color-form-win-fill);color:var(--color-accent);font-size:13px;line-height:1.55}.player-explore-modal-body-stack{display:flex;flex-direction:column;gap:22px;min-width:0}.player-explore-rounds-stage{display:flex;flex-direction:column;gap:12px;min-width:0}.player-explore-rounds-tier-block{display:flex;flex-direction:column;gap:8px;min-width:0;padding-left:2px}.player-explore-rounds-tier-label{margin:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.14em;text-transform:uppercase}.player-explore-rounds-stage .player-explore-modal-section-heading{margin-bottom:0}.player-explore-modal-section-heading{margin:0 0 12px;color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.18em;text-transform:uppercase}.player-explore-modal-duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));grid-gap:12px;gap:12px}.player-explore-modal-stat-card{display:flex;flex-direction:column;gap:7px;min-width:0;padding:16px 18px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.player-explore-modal-stat-label{font-size:13px;font-weight:var(--weight-semibold)}.player-explore-modal-bar-sub,.player-explore-modal-row-sub,.player-explore-modal-stat-sub,.player-explore-modal-table-sub{color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;letter-spacing:.06em}.player-explore-modal-rows{display:flex;flex-direction:column;gap:8px}.player-explore-modal-row{display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0;padding:12px 15px;border:1px solid var(--color-border-subtle);border-radius:12px;background:var(--color-bg)}.player-explore-modal-row-main{display:flex;align-items:center;gap:11px;min-width:0}.player-explore-modal-row-main .tournament-category-badge{max-height:32px}.player-explore-modal-row-main .tournament-category-badge[data-tier=challenger]{max-width:104px}.player-explore-modal-row-main .tournament-challenger-badge{height:32px;min-width:32px;font-size:11px}.player-explore-modal-row-dot{flex-shrink:0;width:8px;height:8px;border-radius:2px;background:var(--color-border)}.player-explore-modal-row-dot.tone-hard{background:var(--surface-hard)}.player-explore-modal-row-dot.tone-clay{background:var(--surface-clay)}.player-explore-modal-row-dot.tone-grass{background:var(--surface-grass)}.player-explore-modal-row-dot.tone-indoor{background:var(--surface-indoor)}.player-explore-modal-row-dot.tone-unknown{background:var(--surface-unknown)}.player-explore-modal-row-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.player-explore-modal-row-name{overflow:hidden;color:var(--color-text);font-size:14px;font-weight:var(--weight-semibold);text-overflow:ellipsis;white-space:nowrap}.player-explore-modal-row-name.is-muted{color:var(--color-text-muted)}.player-explore-modal-row-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-explore-modal-row-sub-inline{display:inline-flex;align-items:center;gap:6px;min-width:0;max-width:100%}.player-explore-modal-row-sub-inline>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.player-explore-modal-pct{flex-shrink:0;font-family:var(--font-mono);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text);line-height:1}.player-explore-modal-stat-card .player-explore-modal-pct{font-size:26px}.player-explore-modal-pct.tone-strong{color:var(--color-accent)}.player-explore-modal-pct.tone-weak{color:var(--color-danger)}.player-explore-modal-pct.tone-neutral{color:var(--color-text)}.player-explore-modal-pct.tone-muted{color:var(--color-text-faint)}.player-explore-modal-bars{display:flex;flex-direction:column;gap:14px}.player-explore-modal-bar-row{display:flex;flex-direction:column;gap:7px;min-width:0}.player-explore-modal-bar-top{display:flex;align-items:center;gap:14px}.player-explore-modal-bar-label{flex-shrink:0;width:92px;font-size:13px;font-weight:var(--weight-semibold)}.player-explore-modal-bar-track{flex:1 1 auto;min-width:0;height:8px;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border-subtle)}.player-explore-modal-bar-fill{display:block;height:100%;border-radius:inherit;background:var(--color-text)}.player-explore-modal-bar-fill.tone-strong{background:var(--color-accent)}.player-explore-modal-bar-fill.tone-weak{background:var(--color-danger)}.player-explore-modal-bar-fill.tone-muted{background:transparent}.player-explore-modal-bar-sub{padding-left:106px}.player-explore-modal-table{display:flex;flex-direction:column;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch}.player-explore-modal-table-head,.player-explore-modal-table-row{display:flex;gap:12px}.player-explore-modal-table-head{padding-bottom:9px}.player-explore-modal-table-head>*{flex:1 1;color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}.player-explore-modal-table-head>.player-explore-modal-table-surface.tone-hard{color:var(--surface-hard)}.player-explore-modal-table-head>.player-explore-modal-table-surface.tone-clay{color:var(--surface-clay)}.player-explore-modal-table-head>.player-explore-modal-table-surface.tone-grass{color:var(--surface-grass)}.player-explore-modal-table-head>.player-explore-modal-table-surface.tone-indoor{color:var(--surface-indoor)}.player-explore-modal-table-cell,.player-explore-modal-table-head>:not(:first-child){text-align:right}.player-explore-modal-table-row{padding:11px 0;border-top:1px solid var(--color-border-subtle)}.player-explore-modal-table-row>:first-child{flex:1 1;color:var(--color-text);font-family:var(--font-mono);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-explore-modal-table-cell{flex:1 1;min-width:0}.player-explore-modal-table-cell .player-explore-modal-pct{font-size:13px}.player-explore-modal-empty{margin:0;color:var(--color-text-muted);font-size:13px}@media (max-width:720px){.player-explore-modal-backdrop{align-items:flex-end;padding:max(8px,env(safe-area-inset-top,0px)) 0 0}.player-explore-modal{max-width:100%;max-height:min(92dvh,calc(100% - max(8px, env(safe-area-inset-top, 0px))));border-radius:20px 20px 0 0}.player-explore-modal-header{padding:16px 16px 14px}.player-explore-modal-heading h2{font-size:17px}.player-drilldown-modal .player-explore-modal-heading h2{font-size:24px}.player-explore-modal-content{gap:18px;padding:16px 16px calc(18px + env(safe-area-inset-bottom, 0px))}.player-explore-modal-duo{grid-template-columns:1fr}.player-explore-modal-row{align-items:flex-start;gap:10px}.player-explore-modal-row-main{align-items:flex-start}.player-explore-modal-pct{flex-shrink:0}.player-explore-modal-bar-top{flex-wrap:wrap;gap:8px 14px}.player-explore-modal-bar-label{width:auto;min-width:4.5rem}.player-explore-modal-bar-track{flex:1 1 8rem}.player-explore-modal-bar-sub{padding-left:0}.player-explore-modal-table-head,.player-explore-modal-table-row{min-width:28rem}}.player-profile-empty{margin:0;color:var(--color-text-muted)}.player-rank-band-chart{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));grid-gap:clamp(var(--space-2),2vw,var(--space-5));gap:clamp(var(--space-2),2vw,var(--space-5));min-height:240px}.player-rank-band{display:grid;grid-template-rows:auto minmax(120px,1fr) auto auto;grid-gap:var(--space-2);gap:var(--space-2);min-width:0;text-align:center}.player-rank-band-hit{margin:0;padding:0;border:0;border-radius:12px;background:transparent;color:inherit;cursor:pointer;font:inherit}.player-rank-band-hit:focus-visible .player-rank-band-track,.player-rank-band-hit:hover .player-rank-band-track{outline:2px solid color-mix(in srgb,var(--color-player-a) 55%,transparent);outline-offset:2px}.player-rank-band-hit:focus-visible{outline:none}.player-drilldown-list{display:flex;flex-direction:column;gap:0;min-width:0}.player-drilldown-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-4) 0;border-bottom:1px solid var(--color-border-subtle)}.player-drilldown-main,.player-drilldown-meta{display:grid;grid-gap:var(--space-1);gap:var(--space-1);min-width:0}.player-drilldown-meta{justify-items:end;text-align:right}.player-drilldown-main strong,.player-drilldown-meta strong{font-size:var(--text-ui)}.player-drilldown-main small{color:var(--color-text-muted);font-size:12px;line-height:1.35}.player-rank-band>small,.player-rank-band>strong{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-tier-round .player-profile-card-heading>div>p:not(.player-section-eyebrow){max-width:62ch}.player-tier-round .desk-toggle{flex-shrink:0}.player-rank-band-track{display:flex;align-items:flex-end;overflow:hidden;border-radius:8px 8px 2px 2px;background:var(--color-border-subtle)}.player-rank-band-fill{display:block;width:100%;min-height:0;background:var(--color-player-a)}.player-rank-band-label{overflow:hidden;font-size:var(--text-ui);font-weight:var(--weight-bold);text-overflow:ellipsis;white-space:nowrap}.player-rank-band>small{color:var(--color-text-muted);font-size:var(--text-micro);white-space:nowrap}.player-tier-round-scroll{width:100%;max-width:100%;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.player-tier-round-table{width:max(100%,760px);min-width:760px;border-collapse:separate;border-spacing:8px;table-layout:fixed}.player-tier-round-table thead th{padding:0 0 4px;color:var(--color-text-muted);font-size:11px;font-weight:var(--weight-semibold);letter-spacing:.04em;text-align:center}.player-tier-round-table tbody th,.player-tier-round-table thead th:first-child{position:-webkit-sticky;position:sticky;left:0;z-index:1;width:7.6rem;padding:0 10px 0 0;text-align:left;background:var(--color-surface)}.player-tier-round-table tbody th{color:var(--color-text);font-size:13px;font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.2;white-space:nowrap}.player-tier-round-table td{height:68px;padding:0;border:0;border-radius:12px;text-align:center;vertical-align:stretch}.player-tier-round-table td,.player-tier-round-table td[data-empty=true]{background:color-mix(in srgb,var(--color-ink) 4%,var(--color-surface))}.player-tier-round-cell{display:grid;width:100%;height:100%;place-content:center;grid-gap:2px;gap:2px;border-radius:12px;background:color-mix(in srgb,var(--color-player-a) calc(22% + var(--heat) * 68%),var(--color-surface));font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-tier-round-cell-hit{margin:0;padding:8px 4px;border:0;color:inherit;cursor:pointer;font:inherit}.player-tier-round-cell-hit:focus-visible,.player-tier-round-cell-hit:hover{outline:2px solid color-mix(in srgb,var(--color-player-a) 55%,transparent);outline-offset:-2px}.player-tier-round-cell strong{font-size:16px;font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.1}.player-tier-round-cell small{color:color-mix(in srgb,var(--color-text) 52%,transparent);font-size:11px;line-height:1.2}@property --bestof-win-deg{syntax:"<angle>";inherits:false;initial-value:0deg}.player-serve-return-list,.player-surfaces-list{display:grid;grid-gap:var(--space-4);gap:var(--space-4);margin:0}.bestof-pies{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-top:var(--space-5);padding-top:var(--space-5);border-top:1px solid var(--color-border-subtle)}.player-bestof .bestof-pies{margin-top:var(--space-3);padding-top:0;border-top:none}.player-bestof-toggle{margin-top:var(--space-1)}.player-bestof-toggle .desk-toggle{margin:0;max-width:100%}.player-bestof-filter-meta{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.bestof-pie,.bestof-pie-empty{display:grid;justify-items:center;grid-gap:var(--space-2);gap:var(--space-2);min-width:0;text-align:center}.bestof-pie-label{margin:0;color:var(--color-text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1.3;text-transform:uppercase}.bestof-pie-chart{width:min(140px,40vw);max-width:100%;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--color-bestof-fill) 0deg var(--bestof-win-deg),var(--color-bestof-empty) var(--bestof-win-deg) 1turn);transition:--bestof-win-deg .55s ease}@keyframes bestof-pie-settle{0%{transform:scale(.92);opacity:.65}to{transform:scale(1);opacity:1}}.bestof-pies[data-surface] .bestof-pie-chart{animation:bestof-pie-settle .45s ease}.bestof-pie-caption{display:flex;align-items:baseline;justify-content:center;gap:var(--space-2);margin:0;font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bestof-pie-empty{align-content:start;min-height:190px}.bestof-pie-empty .meta{margin:0}.player-surface-summary{display:grid;grid-template-columns:minmax(0,1fr) auto 3rem;grid-gap:var(--space-3);gap:var(--space-3);align-items:baseline;margin-bottom:var(--space-2)}.player-serve-return-row dd,.player-surface-record,.player-surface-summary strong{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-surface-summary strong{text-align:right}.player-surface-record{color:var(--color-text-muted);font-size:var(--text-micro)}.player-surface-track,.player-win-rate-track{height:7px;overflow:hidden;border-radius:var(--radius-pill);background:var(--color-border-subtle)}.player-win-rate-fill{display:block;height:100%;border-radius:inherit;background:var(--color-bestof-fill);transition:width .45s ease}.player-win-rate-track.tone-favourable .player-win-rate-fill{background:var(--color-accent)}.player-win-rate-track.tone-awkward .player-win-rate-fill{background:var(--color-danger)}.player-surface-fill{display:block;height:100%;border-radius:inherit}.player-surface-fill.tone-clay{background:var(--surface-clay)}.player-surface-fill.tone-hard{background:var(--surface-hard)}.player-surface-fill.tone-grass{background:var(--surface-grass)}.player-surface-fill.tone-hard_indoor{background:var(--surface-indoor)}.player-surface-fill.tone-carpet{background:var(--surface-unknown)}.player-serve-return-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3);margin:0}.player-serve-return-tile{display:grid;grid-gap:var(--space-2);gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg)}.player-serve-return-tile dt{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.player-serve-return-tile dd{display:grid;grid-gap:4px;gap:4px;margin:0}.player-serve-return-tile strong{font-family:var(--font-mono);font-size:clamp(22px,3vw,28px);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.player-serve-return-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);padding-bottom:var(--space-3);border-bottom:1px solid var(--color-border-subtle)}.player-serve-return-row:last-child{padding-bottom:0;border-bottom:0}.player-serve-return-row dt{color:var(--color-text-muted);font-size:var(--text-ui)}.player-serve-return-row dd{display:flex;gap:var(--space-2);align-items:baseline;margin:0;white-space:nowrap}.player-serve-return-delta{font-size:var(--text-micro);font-weight:var(--weight-bold)}.player-serve-return-delta.positive{color:var(--color-accent)}.player-serve-return-delta.negative{color:var(--color-danger)}.player-set-clutch-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-5)}.player-clutch-hero{display:grid;grid-gap:6px;gap:6px;padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg)}.player-clutch-hero>span:first-child{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase}.player-clutch-hero strong{font-family:var(--font-mono);font-size:clamp(28px,4vw,34px);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.player-clutch-hero small{color:var(--color-text-muted);font-size:13px;line-height:1.4}.player-clutch-foot{display:flex;align-items:center;flex-wrap:wrap;gap:8px 10px;margin-top:4px}.player-clutch-chip{justify-self:start;padding:4px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-accent) 16%,transparent);color:var(--color-accent);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.player-deciders-by-surface,.player-set-count-layout,.player-tiebreak-surfaces{display:grid;grid-gap:var(--space-5);gap:var(--space-5)}.player-set-count-group-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.player-deciders-by-surface h3,.player-set-count-group-head h3,.player-tiebreak-block h3,.player-tiebreak-surfaces h3{margin:0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.player-tiebreak-block h3{margin-bottom:var(--space-3);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.player-set-count-group-head span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.player-set-count-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.player-set-count-grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.player-set-comeback,.player-set-count-cell{display:grid;grid-gap:var(--space-1);gap:var(--space-1);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg)}.player-set-count-cell-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-2)}.player-set-count-cell-head span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:12px}.player-decider-surface span,.player-set-comeback span,.player-set-count-cell span{color:var(--color-text-muted);font-size:var(--text-micro)}.player-decider-surface strong,.player-set-comeback strong,.player-set-count-cell strong{font-family:var(--font-mono);font-size:var(--text-section);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-set-comeback small,.player-set-count-cell small{color:var(--color-text-muted);font-family:var(--font-mono)}.player-deciders-surface-grid,.player-tiebreak-stakes,.player-tiebreak-surface-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.player-deciders-by-surface,.player-tiebreak-surfaces{margin-top:var(--space-6)}.player-tiebreak-overall{margin-bottom:var(--space-5)}.player-tiebreak-block+.player-tiebreak-block{margin-top:var(--space-6)}.player-tiebreak-card{display:grid;grid-gap:var(--space-1);gap:var(--space-1);padding:var(--space-4) var(--space-4) var(--space-4) calc(var(--space-4) + 6px);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg);box-shadow:inset 3px 0 0 var(--color-player-a)}.player-tiebreak-card.tone-other{box-shadow:inset 3px 0 0 var(--color-player-b)}.player-tiebreak-card span{color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}.player-tiebreak-card strong{font-family:var(--font-mono);font-size:var(--text-section);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-tiebreak-card small{color:var(--color-text-muted);font-family:var(--font-mono)}.player-tiebreak-surface{display:grid;grid-gap:8px;gap:8px;padding:12px 14px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg)}.player-tiebreak-surface-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.player-tiebreak-surface-pill{display:inline-flex;align-items:center;padding:4px 10px;border:1px solid;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-bold);letter-spacing:.1em;line-height:1;text-transform:uppercase}.player-tiebreak-surface-pill.tone-hard{color:var(--surface-hard)}.player-tiebreak-surface-pill.tone-clay{color:var(--surface-clay)}.player-tiebreak-surface-pill.tone-grass{color:var(--surface-grass)}.player-tiebreak-surface-pill.tone-hard_indoor{color:var(--surface-indoor)}.player-tiebreak-surface strong{margin:0;font-family:var(--font-mono);font-size:var(--text-ui);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-tiebreak-surface small{color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.player-style-clashes{grid-column:1/-1}.player-style-clash-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-6);gap:var(--space-6)}.player-style-clash-codes h3,.player-style-clash-column h3{margin:0 0 var(--space-3);color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.player-style-clash-list{display:grid;grid-gap:var(--space-4);gap:var(--space-4);margin:0;padding:0;list-style:none}.player-style-clash-hit{display:grid;width:100%;margin:0;padding:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer;font:inherit}.player-style-clash-hit:focus-visible{outline:2px solid color-mix(in srgb,var(--color-player-a) 55%,transparent);outline-offset:3px;border-radius:6px}.player-style-clash-row{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin-bottom:4px}.player-style-clash-name{display:inline-flex;align-items:center;gap:6px;font-weight:var(--weight-bold)}.player-style-clash-chevron{color:var(--color-text-faint);font-size:15px;font-weight:var(--weight-semibold);line-height:1}.player-style-clash-row strong{font-family:var(--font-mono);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-style-clash-list small{display:block;margin-bottom:8px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:11px}.player-style-clashes-empty{margin:0;color:var(--color-text-muted);font-size:13px}.player-style-clash-codes{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--color-border-subtle)}.player-style-clash-codes ul{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:var(--space-2) var(--space-4);gap:var(--space-2) var(--space-4);margin:0;padding:0;list-style:none;color:var(--color-text-muted);font-size:12px}.player-style-clash-codes span{display:inline-block;min-width:2.6em;margin-right:6px;font-family:var(--font-mono);font-weight:var(--weight-bold)}.player-form-momentum-chart-wrap{padding:0;border:0;border-radius:0;background:transparent}.player-form-momentum-panel{position:relative}.player-form-momentum-chart{display:block;width:100%;height:auto;color:var(--color-player-a)}.player-form-momentum-grid,.player-form-momentum-mid{stroke:var(--color-border-subtle);stroke-width:1}.player-form-momentum-mid{stroke:var(--color-border);stroke-dasharray:4 4}.player-form-momentum-axis{fill:var(--color-text-faint);font-family:var(--font-mono);font-size:10px}.player-form-momentum-area{fill:url(#player-form-area-fill)}.player-form-momentum-line{stroke:var(--color-player-a);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.player-form-momentum-point-hit{fill:transparent;stroke:none;cursor:pointer}.player-form-momentum-point{fill:var(--color-player-a);stroke:var(--color-surface);stroke-width:2;pointer-events:none}.player-form-momentum-point.is-active{fill:var(--color-text-strong);stroke-width:2.5}.player-form-momentum-results{display:grid;grid-template-columns:repeat(var(--n,1),minmax(0,1fr));align-items:stretch;grid-column-gap:3px;column-gap:3px;min-height:9px;margin:6px 2.5% 0 5.83%}.player-form-momentum-dot,.player-form-momentum-legend i{display:block;min-height:8px;border-radius:3px}.player-form-momentum-dot{position:relative;padding:0;transform-origin:center bottom;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.player-form-momentum-dot:after{content:"";position:absolute;inset:-10px}.player-form-momentum-dot:focus-visible{outline:2px solid var(--color-player-a);outline-offset:2px}.player-form-momentum-dot.is-active.win{box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-player-a)}.player-form-momentum-dot.is-active.loss{border-color:var(--color-text-strong);box-shadow:0 0 0 2px var(--color-surface),0 0 0 4px var(--color-text-faint)}.player-form-momentum-tooltip{left:auto;right:16px}.player-form-momentum-dot.win,.player-form-momentum-legend i.win{background:var(--color-player-a)}.player-form-momentum-dot.loss,.player-form-momentum-legend i.loss{border:1.5px solid var(--color-player-a);background:var(--color-surface)}.player-form-momentum-foot{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-4);margin:var(--space-4) 0 0;color:var(--color-text-muted);font-family:var(--font-mono)}.player-form-momentum-foot p{margin:0;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.player-form-momentum-foot strong{margin-right:8px;color:var(--color-text);font-size:22px;font-weight:var(--weight-bold);letter-spacing:0;text-transform:none}.player-form-momentum-foot span{letter-spacing:.06em}.player-form-momentum-legend{display:flex;justify-content:flex-end;gap:var(--space-4);margin:var(--space-3) 0 0;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-micro)}.player-form-momentum-legend span{display:inline-flex;align-items:center;gap:var(--space-2)}.player-form-momentum-legend i{width:8px}.player-form-momentum-empty{margin:0;padding:var(--space-8);border:1px dashed var(--color-border);border-radius:var(--radius-card);color:var(--color-text-muted);text-align:center}@media (max-width:720px){.player-jump-bar{flex-direction:column;align-items:stretch;gap:8px;padding-top:8px;padding-bottom:8px}.player-jump-nav{order:2;width:100%}.player-window-toggle{order:1;margin-left:0;width:100%}.player-window-toggle .desk-toggle{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.player-window-toggle .toggle-btn{padding:8px 6px;font-size:10px;letter-spacing:.02em;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-page :is(#explore,#form,#surfaces,#bestof,#deciders,#tiebreaks,#clashes,#rank,#levels,#exploit,#matches){scroll-margin-top:7.5rem}.player-explore-grid,.player-profile-grid{grid-template-columns:1fr}.player-vulnerability-callout{grid-template-columns:1fr;gap:var(--space-1)}.player-profile-card-heading{flex-direction:column;align-items:stretch;gap:var(--space-3)}.player-profile-card-heading>p{align-self:flex-start}.player-recent-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.player-recent-score{grid-column:2;text-align:left}.player-recent-meta{justify-content:flex-start;flex-wrap:wrap}.player-vulnerability-row{flex-wrap:wrap;align-items:flex-start;gap:var(--space-2) var(--space-3)}.player-vulnerability-row>div{flex:1 1 10rem;min-width:0}.player-set-clutch-row{grid-template-columns:1fr}.player-set-count-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.player-section-heading{align-items:flex-start;flex-direction:column;gap:var(--space-2)}.player-form-momentum-chart-wrap{padding:0;min-width:0;max-width:100%;overflow-x:auto}.player-form-momentum-panel,.player-form-momentum-results{min-width:0;max-width:100%}.player-rank-band-chart{gap:var(--space-2);overflow-x:auto;overscroll-behavior-x:contain;padding-bottom:var(--space-1)}.player-rank-band{grid-template-rows:auto minmax(90px,1fr) auto auto;min-width:2.75rem}.player-rank-band-label,.player-rank-band>small{font-size:.62rem}.player-drilldown-row{grid-template-columns:auto minmax(0,1fr);align-items:start}.player-drilldown-meta{grid-column:2;justify-items:start;text-align:left}.player-tier-round-table{width:max(100%,640px);min-width:640px;border-spacing:6px}.player-tier-round-table tbody th,.player-tier-round-table thead th:first-child{width:6.4rem;font-size:12px}.player-tier-round-table td{height:58px}.player-tier-round-cell strong{font-size:14px}.player-tier-round-scroll{margin-inline:0;padding-inline:0}.player-serve-return-grid,.player-style-clash-codes ul,.player-style-clash-columns{grid-template-columns:1fr}.player-serve-return-row{flex-wrap:wrap;gap:var(--space-2)}.player-serve-return-row dt{flex:1 1 12rem;min-width:0}.player-serve-return-row dd{flex:0 0 auto}.player-deciders-surface-grid,.player-tiebreak-surface-grid{grid-template-columns:1fr}.player-hero-facts dd{white-space:normal;overflow-wrap:anywhere}}.player-hero{overflow:hidden;margin:0 calc(-1 * var(--gutter)) var(--space-8);border-radius:0;background:var(--color-ink-band);color:var(--color-on-ink)}.player-hero-inner{width:100%;max-width:var(--page-max);margin:0 auto;padding:0 var(--gutter) clamp(20px,3vw,28px)}.player-hero-main{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:clamp(14px,2.2vw,24px);gap:clamp(14px,2.2vw,24px);padding:clamp(24px,4vw,38px) 0 18px}.player-hero-identity{display:grid;grid-gap:14px;gap:14px;min-width:0}.player-hero-top{display:flex;align-items:center;gap:var(--space-4);min-width:0}.player-hero-avatar{display:grid;place-items:center;width:clamp(48px,7vw,72px);height:clamp(48px,7vw,72px);flex:0 0 clamp(48px,7vw,72px);border-radius:50%;background:var(--color-ink-elevated);color:var(--color-player-a-soft);font-family:var(--font-mono);font-size:clamp(14px,2vw,20px);font-weight:var(--weight-medium);letter-spacing:.04em;overflow:hidden}.player-hero-avatar.player-avatar--photo{background:transparent;color:transparent}.player-hero-copy{min-width:0;display:grid;grid-gap:10px;gap:10px}.player-hero-eyebrow,.player-hero-last-match,.player-hero-side-label{margin:0;color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.player-hero-name-row{display:flex;align-items:center;min-width:0}.player-hero-name-row h1{margin:0;overflow-wrap:anywhere;font-size:clamp(30px,4.4vw,44px);font-weight:var(--weight-bold);letter-spacing:-.035em;line-height:1.05;color:var(--color-on-ink)}.player-hero-name-row .player-name-given{font-weight:var(--weight-semibold)}.player-hero-flag{width:28px;height:19px;flex-shrink:0;margin:0 0 0 .15em;object-fit:cover;border:1px solid color-mix(in srgb,var(--color-on-ink) 24%,transparent);border-radius:1px}.player-hero-badges{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.player-hero-rank-pill,.player-hero-style{display:inline-flex;align-items:center;min-height:0;padding:5px 11px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase}.player-hero-rank-pill{background:var(--color-court);color:var(--color-ink-band)}.player-hero-style{border:0;background:color-mix(in srgb,var(--color-player-a-soft) 14%,transparent);color:var(--color-player-a-soft)}.player-hero-facts{display:flex;flex-wrap:wrap;gap:12px clamp(18px,3vw,34px);margin:0}.player-hero-facts div{display:grid;grid-gap:4px;gap:4px;min-width:0}.player-hero-facts dt{color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-regular);letter-spacing:.14em;text-transform:uppercase}.player-hero-facts dd,.player-hero-headlines dd,.player-hero-ratings dd{margin:0;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.player-hero-facts dd{font-size:14px;font-weight:var(--weight-semibold);color:var(--color-on-ink-soft);line-height:1.3;white-space:nowrap}.player-hero-form-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px 18px;padding-bottom:2px}.player-hero-form-meter{display:flex;align-items:center;gap:5px}.player-hero-form-result{display:inline-block;width:22px;height:6px;border-radius:999px}.player-hero-form-result.win{background:var(--color-court)}.player-hero-form-result.loss{background:var(--color-form-loss-bar)}.player-hero-form-empty{color:var(--color-on-ink-muted);font-family:var(--font-mono);font-size:10px}.player-hero-ratings{display:flex;align-items:start;align-self:flex-start;gap:clamp(14px,2.2vw,24px);margin:0;text-align:center}.player-hero-elo-summary,.player-hero-ratings>div:not(.player-hero-elo){display:grid;grid-template-rows:1.15em auto;justify-items:center;align-items:end;grid-gap:5px;gap:5px;min-width:0}.player-hero-elo-value,.player-hero-ratings dd{grid-row:1;align-self:end;color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:clamp(17px,2vw,21px);font-weight:var(--weight-medium);line-height:1}.player-hero-elo-label,.player-hero-ratings dt{grid-row:2;display:inline-flex;align-items:center;justify-content:center;gap:4px;min-height:12px;color:var(--color-on-ink-muted);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-regular);letter-spacing:.18em;line-height:1;text-transform:uppercase}.player-hero-elo,.player-hero-elo-details{position:relative}.player-hero-elo-summary{list-style:none;padding:0;margin:0;cursor:pointer}.player-hero-elo-summary::-webkit-details-marker,.player-hero-elo-summary::marker{display:none;content:none}.player-hero-elo-caret{display:inline-block;width:0;height:0;border-left:3.5px solid transparent;border-right:3.5px solid transparent;border-top:4px solid;opacity:.75;transition:transform .15s ease}.player-hero-elo-details[open] .player-hero-elo-caret{transform:rotate(180deg)}.player-hero-elo-details[open] .player-hero-elo-label{color:var(--color-court)}.player-hero-elo-menu{position:absolute;top:calc(100% + 10px);right:0;z-index:6;display:grid;grid-gap:8px;gap:8px;min-width:132px;margin:0;padding:10px 12px;list-style:none;border:1px solid var(--color-ink-line);border-radius:8px;background:var(--color-nav-active);box-shadow:0 10px 28px color-mix(in srgb,var(--color-ink-band) 45%,transparent);text-align:left}.player-hero-elo-menu li{display:flex;align-items:baseline;justify-content:space-between;gap:16px}.player-hero-elo-menu-label{color:var(--color-on-ink-muted);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.player-hero-elo-menu-value{color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:14px;font-weight:var(--weight-medium);line-height:1}.player-hero-headlines{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));grid-gap:clamp(12px,2vw,28px);gap:clamp(12px,2vw,28px);margin:0;padding:clamp(16px,2.4vw,22px) clamp(16px,2.6vw,24px);border:1px solid var(--color-ink-line);border-radius:var(--radius-card);background:var(--color-ink-elevated)}.player-hero-headlines div{display:grid;grid-gap:8px;gap:8px;min-width:0;padding:0}.player-hero-headlines div+div{border-left:0;padding-left:0}.player-hero-headlines dt{color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-regular);letter-spacing:.14em;text-transform:uppercase}.player-hero-headlines dd{color:var(--color-on-ink);font-family:var(--font-mono);font-size:14px;font-weight:var(--weight-medium);line-height:1.1}@media (max-width:900px){.player-hero-main{align-items:start;gap:12px}.player-hero-ratings{justify-content:flex-end;text-align:center}.player-hero-elo-summary,.player-hero-ratings>div:not(.player-hero-elo){justify-items:center}.player-hero-elo-menu{right:0;left:auto}}@media (max-width:620px){.player-hero-main{gap:var(--space-6);padding-top:var(--space-6)}.player-hero-identity{gap:12px}.player-hero-top{gap:var(--space-3)}.player-hero-headlines{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}.player-hero-headlines div{padding:0}.player-hero-headlines div+div{padding-left:0}.player-hero-headlines div:nth-child(n+3){border-top:0;padding-top:0}}.tournament-strip{display:flex;gap:var(--space-4);align-items:flex-start;margin-bottom:var(--space-8);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface)}.tournament-logo-shell{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border-radius:var(--radius-control);background:var(--color-court);border:1px solid var(--color-accent-edge);padding:3px;box-sizing:border-box}.tournament-logo-shell-ink{background:var(--color-nav-active);border-color:color-mix(in srgb,var(--color-on-ink) 22%,transparent);padding:6px}.tournament-logo{display:block;width:100%;height:100%;object-fit:contain}.tournament-monogram{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;background:var(--color-border-subtle);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro)}.tournament-monogram-ink{background:var(--color-nav-active);border:1px solid color-mix(in srgb,var(--color-on-ink) 22%,transparent);color:var(--color-on-ink-muted)}.tournament-strip-copy{min-width:0;flex:1 1}.tournament-strip-title{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:baseline;margin:0 0 var(--space-2);font-weight:var(--weight-bold)}.tournament-strip-meta{font-family:var(--font-mono);font-size:var(--text-chip);color:var(--color-text-faint);font-weight:var(--weight-regular);text-transform:uppercase;letter-spacing:var(--tracking-micro)}.tournament-strip-chips{display:flex;flex-wrap:wrap;gap:var(--space-3);margin:0 0 var(--space-2);padding:0;list-style:none}.tournament-chip{display:inline-flex;align-items:center;gap:4px;padding:2px 6px;border-radius:var(--radius-chip);background:var(--color-border-subtle);font-size:var(--text-chip)}.tournament-chip-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:var(--tracking-micro);color:var(--color-text-faint)}.tournament-chip-value{font-weight:var(--weight-bold);color:var(--color-text-strong)}.tournament-strip-more{font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:var(--tracking-micro)}.tournament-competition{max-width:1120px;margin:0 auto;padding-top:0}.tournament-jump-bar{position:-webkit-sticky;position:sticky;top:0;z-index:20;margin:0 calc(-1 * var(--gutter));padding:7px var(--gutter);border-bottom:1px solid var(--color-border);background:color-mix(in srgb,var(--color-bg) 93%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.tournament-jump{display:flex;flex-wrap:wrap;align-items:center;gap:6px clamp(12px,2.2vw,22px);max-width:1120px;margin:0 auto}.tournament-jump-calendar{display:inline-flex;align-items:center;gap:8px;flex-shrink:0;padding:5px 11px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.tournament-jump-calendar:focus-visible,.tournament-jump-calendar:hover{border-color:var(--color-text);color:var(--color-text);text-decoration:none}.tournament-jump-pills{display:flex;flex-wrap:wrap;gap:3px}.tournament-jump-pills a{display:inline-flex;align-items:center;padding:4px 9px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.tournament-jump-pills a:focus-visible,.tournament-jump-pills a:hover{color:var(--color-text);border-color:var(--color-text);text-decoration:none}.tournament-comp-hero{padding:clamp(22px,3.4vw,34px) 0 clamp(26px,3.4vw,38px);margin:0;border-bottom:1px solid var(--color-border)}.tournament-comp-stack{display:flex;flex-direction:column;gap:16px;padding:clamp(28px,4vw,48px) 0 clamp(48px,6vw,80px)}.tournament-ball-card{display:flex;flex-direction:row;align-items:flex-start;gap:16px;width:100%;margin:0;padding:22px 24px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);text-align:left;cursor:pointer;color:inherit;font:inherit;transition:border-color .12s ease,box-shadow .12s ease}.tournament-ball-card:focus-visible,.tournament-ball-card:hover{border-color:color-mix(in srgb,var(--color-accent) 28%,var(--color-border));box-shadow:0 12px 28px color-mix(in srgb,var(--color-ink-band) 7%,transparent);outline:none}.tournament-ball-card-icon{flex-shrink:0;display:grid;place-items:center;width:34px;height:34px;margin-top:2px}.tournament-ball-card-body{display:flex;flex-direction:column;gap:8px;min-width:0;flex:1 1}.tournament-ball-card-title-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}.tournament-ball-card-title{font-size:18px;font-weight:var(--weight-bold);letter-spacing:-.025em;color:var(--color-text-strong);line-height:1.2}.tournament-ball-badge,.tournament-ball-card-tag{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-pill);background:var(--color-border-subtle);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;line-height:1.25}.tournament-ball-card-summary{max-width:62ch;color:var(--color-text-muted);font-size:15px;line-height:1.45}.tournament-ball-card-cta{display:inline-flex;align-items:center;gap:6px;margin-top:4px;color:var(--color-accent);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase}.tournament-ball-sheet-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow:hidden;overscroll-behavior:contain;background:color-mix(in srgb,var(--color-ink-band) 58%,transparent)}.tournament-ball-sheet{display:flex;flex-direction:column;width:100%;max-width:760px;max-height:min(92dvh,calc(100% - 8px));overflow:hidden;border-radius:24px;background:var(--color-surface);box-shadow:0 30px 80px color-mix(in srgb,var(--color-ink-band) 45%,transparent)}.tournament-ball-sheet-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-shrink:0;padding:26px clamp(22px,3.4vw,32px) 10px}.tournament-ball-sheet-heading{display:flex;align-items:flex-start;gap:14px;min-width:0}.tournament-ball-sheet-icon{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;margin-top:18px}.tournament-ball-sheet-titles{display:flex;flex-direction:column;gap:6px;min-width:0}.tournament-ball-meta-grid dt,.tournament-ball-quote-attr,.tournament-ball-section-label,.tournament-ball-sheet-eyebrow{margin:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase}.tournament-ball-sheet-title{margin:0;font-family:var(--font-sans);font-size:clamp(24px,3.6vw,30px);font-weight:var(--weight-bold);letter-spacing:-.035em;line-height:1.12;color:var(--color-text-strong)}.tournament-ball-sheet-brand{margin:0;color:var(--color-text-muted);font-size:15px;line-height:1.35}.tournament-ball-sheet-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.tournament-ball-badge.is-confirmed{background:var(--color-court);color:var(--color-text-strong)}.tournament-ball-sheet-close{flex-shrink:0;display:grid;place-items:center;width:36px;height:36px;margin:0;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font-size:22px;line-height:1;cursor:pointer}.tournament-ball-sheet-close:focus-visible,.tournament-ball-sheet-close:hover{color:var(--color-text-strong);border-color:var(--color-text-muted);outline:none}.tournament-ball-sheet-content{display:flex;flex-direction:column;gap:24px;overflow:auto;padding:14px clamp(22px,3.4vw,32px) 28px}.tournament-ball-how{display:flex;flex-direction:column;gap:10px;padding:18px 18px 16px;border-radius:16px;background:color-mix(in srgb,var(--color-bg) 88%,#e8e4d4)}.tournament-ball-how .tournament-ball-section-label{margin:0}.tournament-ball-how p,.tournament-ball-meta-grid dd,.tournament-ball-quote-text{margin:0;color:var(--color-text);font-size:15px;line-height:1.55}.tournament-ball-quotes{display:flex;flex-direction:column;gap:12px}.tournament-ball-quotes ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.tournament-ball-quotes li{padding-left:14px;border-left:2px solid var(--color-border)}.tournament-ball-quote-text{color:var(--color-text-strong)}.tournament-ball-quote-attr{margin-top:8px}.tournament-ball-meta-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:18px 24px;gap:18px 24px;margin:0;padding-top:20px;border-top:1px solid var(--color-border)}.tournament-ball-meta-grid div{display:flex;flex-direction:column;gap:8px}.tournament-ball-meta-grid dd{color:var(--color-text-muted)}@media (max-width:720px){.tournament-ball-card{padding:18px;gap:14px}.tournament-ball-meta-grid{grid-template-columns:1fr}.tournament-ball-sheet-icon{margin-top:14px}}.tournament-heading{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:0;min-width:0}.tournament-heading-name{min-width:0;font-size:clamp(28px,4.2vw,42px);font-weight:700;letter-spacing:-.035em;line-height:1}.tournament-comp-flag{display:block;width:22px;height:15px;border-radius:1px;object-fit:cover;flex-shrink:0}.tournament-tier-pill{display:inline-flex;padding:5px 11px;border-radius:var(--radius-pill);background:var(--color-court);color:var(--color-on-accent);font-weight:var(--weight-medium);letter-spacing:.1em;line-height:1;white-space:nowrap}.tournament-comp-kicker,.tournament-tier-pill{align-items:center;font-family:var(--font-mono);font-size:11px}.tournament-comp-kicker{display:flex;flex-wrap:wrap;gap:8px 14px;margin:0;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.tournament-comp-kicker-dot{margin-right:14px;color:var(--color-text-muted)}.tournament-comp-toprow{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin-bottom:14px}.tournament-comp-toprow-rule{width:1px;height:11px;background:var(--palette-hairline)}.tournament-comp-event-id,.tournament-comp-official{margin:0;font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-regular);letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-faint);text-decoration:none}.tournament-comp-official{letter-spacing:.14em;color:var(--color-text-muted)}.tournament-comp-official:focus-visible,.tournament-comp-official:hover{color:var(--color-text)}.tournament-comp-title-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:20px 32px}.tournament-comp-title-block{display:flex;flex-direction:column;gap:13px;min-width:0}.tournament-headline-facts{display:flex;flex-wrap:wrap;align-self:flex-start;gap:clamp(14px,2.2vw,24px);margin:0;padding:0}.tournament-headline-facts>div{display:flex;flex-direction:column;align-items:center;gap:5px}.tournament-headline-facts dd{margin:0;font-family:var(--font-mono);font-size:clamp(17px,2vw,21px);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1}.tournament-headline-facts dt{margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-meta-strip{display:flex;flex-wrap:wrap;gap:11px clamp(18px,3vw,32px);margin:0;padding:3px 0 0;border:0}.tournament-meta-cell{display:flex;flex-direction:column;gap:4px;min-width:0;padding:0}.tournament-meta-strip dt{margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-meta-strip dd{margin:0;font-size:13px;font-weight:600;line-height:1.3;white-space:nowrap}.tournament-snapshot-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));grid-gap:16px clamp(16px,2.6vw,30px);gap:16px clamp(16px,2.6vw,30px);margin:clamp(20px,2.8vw,28px) 0 0;padding:clamp(16px,2.2vw,20px) 0 0;border:0;border-top:1px solid var(--color-border-subtle)}.tournament-snapshot-cell{display:flex;flex-direction:column;gap:5px;min-width:0;padding:0}.tournament-snapshot-strip dt{margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-snapshot-strip dd{margin:0;font-family:var(--font-mono);font-size:clamp(18px,2.1vw,22px);font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;letter-spacing:0}.tournament-panel{display:flex;flex-direction:column;gap:20px;margin:0;padding:24px clamp(18px,3vw,28px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);scroll-margin-top:4.5rem}.tournament-panel-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:14px 20px;margin-bottom:0}.tournament-panel-head .lede{margin:9px 0 0;max-width:58ch;font-size:13px;line-height:1.5;color:var(--color-text-muted)}.tournament-panel-count{margin:0;font-size:10px;letter-spacing:.14em;color:var(--color-text-faint);white-space:nowrap}.tournament-panel-count,.tournament-panel-more{font-family:var(--font-mono);text-transform:uppercase}.tournament-panel-more{align-self:flex-start;display:inline-block;width:auto;margin-top:0;padding:0;border:0;background:transparent;color:var(--color-link);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.12em;text-align:left;text-decoration:none;cursor:pointer}.tournament-panel-more:focus-visible,.tournament-panel-more:hover{text-decoration:underline}.tournament-section-title{margin:0;font-size:17px;font-weight:700;letter-spacing:-.024em}.tournament-owlsense-title{display:inline-flex;align-items:center;gap:10px;color:var(--color-accent)}.tournament-owlsense-mark{display:block;flex-shrink:0;color:var(--color-accent)}.tournament-owlsense-owl{font-family:var(--font-mono);font-size:13px;font-weight:500;letter-spacing:.1em;color:var(--color-accent)}.tournament-owlsense-sense{font-size:15px;font-weight:700;letter-spacing:-.01em;color:var(--color-text)}.tournament-insight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));grid-gap:14px;gap:14px;margin:0;padding:0;list-style:none}.tournament-insight-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:17px 19px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.tournament-insight-tag{display:inline-flex;align-items:center;padding:5px 11px;border:0;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.tournament-insight-tag.tone-blue{color:var(--color-player-a);background:color-mix(in srgb,var(--color-player-a) 9%,transparent)}.tournament-insight-tag.tone-pink{color:var(--color-player-b);background:color-mix(in srgb,var(--color-player-b) 9%,transparent)}.tournament-insight-tag.tone-green{color:var(--palette-grass-court);background:color-mix(in srgb,var(--palette-grass-court) 9%,transparent)}.tournament-insight-tag.tone-orange{color:var(--palette-clay);background:color-mix(in srgb,var(--palette-clay) 9%,transparent)}.tournament-insight-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.tournament-insight-when{font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint);white-space:nowrap}.tournament-insight-body{margin:0;flex:1 1;font-size:14px;line-height:1.5;color:var(--color-text)}.tournament-insight-link{color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.tournament-insight-link:focus-visible,.tournament-insight-link:hover{color:var(--color-accent)}.tournament-final-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:14px 20px;margin-bottom:22px}.tournament-final-meta{margin:6px 0 0;color:var(--color-text-muted);font-size:13px;line-height:1.5}.tournament-final-report{color:var(--color-link);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;flex-shrink:0}.tournament-final-report:focus-visible,.tournament-final-report:hover{text-decoration:underline}.tournament-final-grid{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);grid-gap:clamp(14px,3vw,34px);gap:clamp(14px,3vw,34px);align-items:start}.tournament-final-player{display:flex;flex-direction:column;gap:8px;min-width:0}.tournament-final-player-meta{display:flex;align-items:center;gap:9px}.tournament-final-player.is-runner{align-items:flex-end;text-align:right}.tournament-final-flag{display:block;width:20px;height:14px;border-radius:1px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 10%,transparent)}.tournament-final-badge{display:inline-flex;align-items:center;margin-bottom:0;padding:4px 9px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.tournament-final-badge.is-champion{background:color-mix(in srgb,var(--color-player-a) 10%,transparent);color:var(--color-player-a)}.tournament-final-badge.is-runner{background:transparent;border:1px solid var(--color-border);color:var(--color-text-faint)}.tournament-final-name{margin:0;font-size:clamp(22px,2.8vw,28px);font-weight:700;letter-spacing:-.028em;line-height:1.05}.tournament-final-detail,.tournament-final-player.is-runner .tournament-final-name{color:var(--color-text-muted)}.tournament-final-detail{margin:0;font-size:13px;line-height:1.4}.tournament-final-score{text-align:center;padding:.55rem var(--space-3) 0}.tournament-final-sets{margin:0;font-family:var(--font-mono);font-size:clamp(20px,2.8vw,28px);font-weight:var(--weight-regular);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1;white-space:nowrap}.tournament-final-tiebreak{margin:8px 0 0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.tournament-final-sets.is-muted{font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-conditions-featured{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:12px;gap:12px;margin:0}.tournament-speed-card{display:flex;flex-direction:column;gap:18px;padding:20px 22px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.tournament-speed-top{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px}.tournament-speed-value-row{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:8px}.tournament-speed-value{margin:0;font-family:var(--font-mono);font-size:clamp(34px,4vw,44px);font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.04em;line-height:1}.tournament-speed-band{display:inline-flex;align-items:center;padding:4px 9px;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.tournament-speed-band.is-average,.tournament-speed-band.is-fast{background:color-mix(in srgb,var(--color-player-a) 12%,transparent);color:var(--color-player-a)}.tournament-speed-band.is-slow{background:color-mix(in srgb,var(--color-danger) 12%,transparent);color:var(--color-danger)}.tournament-speed-year-toggle{flex-shrink:0;display:inline-flex;align-items:center;gap:8px;margin:2px 0 0;padding:9px 14px;border:0;border-radius:var(--radius-pill);background:var(--color-court);color:var(--color-ink-band);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;cursor:pointer}.tournament-speed-year-toggle svg{display:block;transition:transform .16s ease}.tournament-speed-card.is-open .tournament-speed-year-toggle svg{transform:rotate(180deg)}.tournament-speed-year-toggle:focus-visible,.tournament-speed-year-toggle:hover{background:color-mix(in srgb,var(--color-court) 82%,var(--color-ink-band))}.tournament-speed-year-toggle:focus-visible{outline:2px solid color-mix(in srgb,var(--color-player-a) 55%,transparent);outline-offset:3px}.tournament-speed-gauge{display:flex;flex-direction:column;gap:8px}.tournament-speed-gauge-track{position:relative;display:block;height:10px;border-radius:99px;background:color-mix(in srgb,var(--color-border) 70%,transparent);overflow:visible}.tournament-speed-gauge-fast,.tournament-speed-gauge-slow{position:absolute;top:0;bottom:0;width:28%;border-radius:inherit}.tournament-speed-gauge-slow{left:0;background:linear-gradient(90deg,color-mix(in srgb,var(--color-danger) 22%,transparent),transparent)}.tournament-speed-gauge-fast{right:0;background:linear-gradient(270deg,color-mix(in srgb,var(--color-player-a) 28%,transparent),transparent)}.tournament-speed-gauge-tour{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:99px;background:var(--color-text-faint)}.tournament-speed-gauge-dot{position:absolute;top:50%;width:14px;height:14px;margin-left:-7px;border-radius:99px;background:var(--color-player-a);border:2px solid var(--color-surface);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-player-a) 35%,transparent);transform:translateY(-50%)}.tournament-speed-gauge-labels{display:flex;justify-content:space-between;gap:12px;color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.tournament-speed-gauge-tour-label{text-align:center}.tournament-speed-blurb{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.55;max-width:54rem}.tournament-speed-history-panel{margin-top:4px;padding-top:18px;border-top:1px solid var(--color-border-subtle)}.tournament-speed-history-chart{display:flex;flex-direction:column;gap:16px}.tournament-speed-history-head{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 16px}.tournament-speed-history-meta,.tournament-speed-history-title{margin:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase}.tournament-speed-history-bars{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:end;grid-gap:4px;gap:4px;min-height:160px;padding:4px 0 0;overflow-x:auto}.tournament-speed-history-col{display:flex;flex-direction:column;align-items:center;gap:6px;min-width:28px}.tournament-speed-history-value{font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--color-text-faint);line-height:1}.tournament-speed-history-col.is-fast .tournament-speed-history-value{color:var(--color-player-a)}.tournament-speed-history-col.is-slow .tournament-speed-history-value{color:var(--color-danger)}.tournament-speed-history-track{display:flex;align-items:flex-end;justify-content:center;width:100%;height:120px}.tournament-speed-history-fill{position:relative;display:flex;align-items:center;justify-content:center;width:min(100%,18px);border-radius:6px 6px 4px 4px;background:color-mix(in srgb,var(--color-border) 85%,transparent)}.tournament-speed-history-col.is-fast .tournament-speed-history-fill{background:var(--color-player-a)}.tournament-speed-history-col.is-average .tournament-speed-history-fill{background:color-mix(in srgb,var(--color-text-faint) 55%,transparent)}.tournament-speed-history-col.is-slow .tournament-speed-history-fill{background:color-mix(in srgb,var(--color-danger) 78%,#8b5a2b)}.tournament-speed-history-col.is-gap .tournament-speed-history-fill{background:color-mix(in srgb,var(--color-border) 70%,transparent)}.tournament-speed-history-gap-label{writing-mode:vertical-rl;transform:rotate(180deg);font-family:var(--font-mono);font-size:8px;font-weight:var(--weight-medium);letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-speed-history-year{color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;letter-spacing:.04em}.tournament-speed-history-blurb{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.55;max-width:54rem}.tournament-conditions-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:12px;gap:12px;margin-top:12px}.tournament-conditions-info-grid.is-single{grid-template-columns:minmax(0,1fr)}.tournament-conditions-info-card{display:flex;flex-direction:column;gap:10px;min-width:0;padding:18px 20px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.tournament-conditions-info-card.is-inline{flex-direction:row;flex-wrap:nowrap;align-items:baseline;gap:12px 16px;padding:14px 18px}.tournament-conditions-info-card.is-inline .tournament-condition-value{font-size:18px;flex-shrink:0}.tournament-conditions-info-card.is-inline .tournament-condition-note{flex:1 1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-condition-featured{display:flex;flex-direction:column;gap:9px;min-width:0;padding:16px 18px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.tournament-condition-value{margin:0;font-family:var(--font-mono);font-size:28px;font-weight:var(--weight-regular);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1}.tournament-condition-label{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-condition-band{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:0}.tournament-cpi-band{display:inline-block;padding:4px 9px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-player-a) 10%,transparent);color:var(--color-player-a);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.14em;text-transform:uppercase}.tournament-condition-note{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.5;max-width:28rem}.tournament-event-averages{display:flex;flex-direction:column;gap:18px;margin:12px 0 0;padding:20px 22px;border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.tournament-event-averages-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.tournament-event-averages-list li{display:flex;flex-direction:column;gap:8px}.tournament-event-averages-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.tournament-event-averages-name{font-size:14px;font-weight:600;color:var(--color-text)}.tournament-event-averages-values{display:inline-flex;align-items:baseline;gap:10px;min-width:0}.tournament-event-averages-tour{color:var(--color-text-faint);font-size:12px;white-space:nowrap}.tournament-event-averages-track{display:block;height:7px;border-radius:var(--radius-pill);background:var(--color-border-subtle);overflow:hidden}.tournament-event-averages-value{font-family:var(--font-mono);font-size:15px;font-weight:var(--weight-semibold);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;min-width:0;text-align:right;color:var(--color-text)}.tournament-event-averages-fill{display:block;height:100%;border-radius:inherit;background:var(--color-player-a)}.tournament-event-averages-label{margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-event-averages-footnote{margin:0;font-size:12px;line-height:1.45;color:var(--color-text-faint)}@media (max-width:720px){.tournament-conditions-info-grid{grid-template-columns:1fr}.tournament-speed-gauge-labels{flex-wrap:wrap}.tournament-speed-gauge-tour-label{order:3;width:100%;text-align:left}}.tournament-champions{list-style:none;margin:0;padding:0}.tournament-champions li{display:grid;grid-template-columns:14px 46px minmax(0,1.4fr) minmax(0,1.2fr) 104px;grid-gap:10px 16px;gap:10px 16px;align-items:center;padding:12px 0;border-top:1px solid var(--color-border-subtle);border-bottom:0;font-size:var(--text-body)}.tournament-champion-dot{width:10px;height:10px;border-radius:999px;border:1.5px solid var(--palette-on-ink-soft);background:var(--color-surface);justify-self:center}.tournament-champion-beat{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-regular);letter-spacing:.08em;text-transform:uppercase;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-champion-score{font-family:var(--font-mono);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text);white-space:nowrap;justify-self:end}.tournament-champion-dot.is-first{background:var(--color-player-a);border-color:var(--color-player-a)}.tournament-champion-year{font-family:var(--font-mono);font-size:12px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-text-faint)}.tournament-champion-winner{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tournament-champion-current{flex-shrink:0;padding:2px 6px;border-radius:999px;background:color-mix(in srgb,var(--color-court) 22%,transparent);color:var(--color-court);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-regular);letter-spacing:.08em;text-transform:uppercase}.tournament-champion-flag{display:block;width:18px;height:12px;border-radius:1px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 10%,transparent)}.tournament-explore{display:flex;flex-direction:column;gap:14px;margin:0;scroll-margin-top:4.5rem}.tournament-explore-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));grid-gap:16px;gap:16px;margin:0;padding:0;list-style:none}.tournament-explore-card{position:relative;display:flex;flex-direction:column;gap:14px;min-height:0;padding:20px clamp(16px,2.4vw,22px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);color:inherit;text-decoration:none}.tournament-explore-card:focus-visible,.tournament-explore-card:hover{border-color:var(--color-text);text-decoration:none}.tournament-explore-card-title{margin:0;padding-right:1.25rem;font-size:15px;font-weight:700;letter-spacing:-.02em}.tournament-explore-card-value{margin:0;font-family:var(--font-mono);font-size:21px;font-weight:var(--weight-regular);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;letter-spacing:0;line-height:1}.tournament-explore-card-track{display:block;height:5px;margin-top:auto;border-radius:var(--radius-pill);background:var(--color-border-subtle);overflow:hidden}.tournament-explore-card-fill{display:block;height:100%;border-radius:inherit;background:var(--color-player-a)}.tournament-explore-label{display:inline-flex;align-items:center;gap:7px;margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-explore-grid-icon{display:inline-block;width:14px;height:14px;opacity:.75;background:linear-gradient(currentColor,currentColor) 0 0 /5px 5px no-repeat,linear-gradient(currentColor,currentColor) 9px 0 /5px 5px no-repeat,linear-gradient(currentColor,currentColor) 0 9px /5px 5px no-repeat,linear-gradient(currentColor,currentColor) 9px 9px /5px 5px no-repeat}.tournament-explore-card-chevron{position:absolute;top:20px;right:18px;color:var(--color-text-faint);font-size:16px;line-height:1}.tournament-explore-card-label{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.tournament-calendar-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tournament-calendar-main{max-width:min(72rem,100%)}.tournament-calendar-hero .lede{margin-bottom:var(--space-6)}.tournament-calendar-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-gap:0;gap:0;margin:0 0 var(--space-6);padding:0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.tournament-calendar-stats>div{min-width:0;padding:var(--space-4) var(--space-4) var(--space-4) 0}.tournament-calendar-stats>div+div{border-left:1px solid var(--color-border);padding-left:var(--space-4)}.tournament-calendar-stats dt{margin:6px 0 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-stats dd{margin:0;font-family:var(--font-mono);font-size:clamp(1.6rem,3vw,2.1rem);font-weight:var(--weight-medium);letter-spacing:-.03em;line-height:1}.tournament-calendar-live-feature,.tournament-calendar-next{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4) var(--space-6);margin:0 0 var(--space-5);padding:1.35rem 1.5rem;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface);color:var(--color-text);box-shadow:0 10px 28px color-mix(in srgb,var(--color-text) 8%,transparent);text-decoration:none}.tournament-calendar-live-feature:focus-visible,.tournament-calendar-live-feature:hover,.tournament-calendar-next:focus-visible,.tournament-calendar-next:hover{color:var(--color-text);text-decoration:none}.tournament-calendar-live-feature{border-color:var(--color-court);box-shadow:0 10px 28px color-mix(in srgb,var(--color-court) 16%,transparent)}.tournament-calendar-live-feature-main,.tournament-calendar-next-main{min-width:0;flex:1 1 16rem}.tournament-calendar-live-kicker,.tournament-calendar-next-kicker{display:inline-flex;align-items:center;gap:.45rem;margin:0 0 .7rem;font-family:var(--font-mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-status-dot{width:6px;height:6px;border-radius:50%;background:var(--color-text-faint);flex:0 0 auto}.tournament-calendar-status-dot--court{background:var(--color-court)}.tournament-calendar-status-dot--ink{background:var(--color-ink-band)}.tournament-calendar-live-badge{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .75rem;padding:.28rem .7rem;border-radius:var(--radius-pill);background:var(--color-court);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-semibold);letter-spacing:.14em;text-transform:uppercase;color:var(--color-ink-band)}.tournament-calendar-next-title{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem .7rem}.tournament-calendar-next-title h2{margin:0;font-size:clamp(1.45rem,2.8vw,1.95rem);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.05}.tournament-calendar-pill{display:inline-flex;align-items:center;padding:.22rem .62rem;border-radius:var(--radius-pill);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.tournament-calendar-pill--accent{background:var(--color-court);color:var(--color-ink-band)}.tournament-calendar-pill--muted{background:color-mix(in srgb,var(--color-text-faint) 16%,var(--color-surface));color:var(--color-text-muted)}.tournament-calendar-pill--ink{background:var(--color-ink-band);color:var(--color-on-ink)}.tournament-calendar-next-meta{margin:.55rem 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-next-aside{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-4) var(--space-5)}.tournament-calendar-next-count{display:flex;flex-direction:column;align-items:flex-end;gap:4px;text-align:right}.tournament-calendar-next-count strong{font-family:var(--font-mono);font-size:clamp(1.45rem,2.4vw,1.95rem);font-weight:var(--weight-medium);letter-spacing:-.03em;line-height:1;white-space:nowrap;color:var(--color-text)}.tournament-calendar-next-count span{font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-next-cta{display:inline-flex;align-items:center;justify-content:center;min-height:2.4rem;padding:0 1.1rem;border-radius:var(--radius-pill);background:var(--color-ink-band);box-shadow:0 8px 18px color-mix(in srgb,var(--color-ink-band) 18%,transparent);font-family:var(--font-mono);font-size:11px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;color:var(--color-on-ink);white-space:nowrap;transition:background var(--motion-fast) var(--ease-out),color var(--motion-fast) var(--ease-out),box-shadow var(--motion-fast) var(--ease-out)}.tournament-calendar-live-feature:focus-visible .tournament-calendar-next-cta,.tournament-calendar-live-feature:hover .tournament-calendar-next-cta,.tournament-calendar-next:focus-visible .tournament-calendar-next-cta,.tournament-calendar-next:hover .tournament-calendar-next-cta{background:var(--color-court);color:var(--color-ink-band);text-decoration:none;box-shadow:0 8px 18px color-mix(in srgb,var(--color-ink-band) 14%,transparent)}.tournament-calendar-live{margin:0 0 var(--space-5)}.tournament-calendar-live-head{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-3)}.tournament-calendar-live-head .tournament-calendar-live-kicker{margin:0;flex:0 0 auto}.tournament-calendar-live-rule{flex:1 1 auto;height:1px;background:var(--color-border)}.tournament-calendar-live-count{margin:0;flex:0 0 auto;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-live-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.tournament-calendar-live-grid[data-count="1"]{grid-template-columns:1fr}.tournament-calendar-live-grid[data-count="2"]{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-calendar-live-card{display:flex;flex-direction:column;gap:.7rem;min-height:100%;padding:1rem 1.05rem;border:1.5px solid var(--color-court);border-radius:18px;background:var(--color-surface);color:var(--color-text);text-decoration:none}.tournament-calendar-live-card:focus-visible,.tournament-calendar-live-card:hover{color:var(--color-text);text-decoration:none}.tournament-calendar-live-card-title{display:flex;align-items:center;gap:.55rem;font-size:1.05rem;font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.15}.tournament-calendar-live-card-badges{display:flex;flex-wrap:wrap;gap:.4rem}.tournament-calendar-live-card-meta{margin:auto 0 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-toolbar{position:-webkit-sticky;position:sticky;top:0;z-index:2;display:flex;flex-direction:column;gap:var(--space-3);margin:0 0 var(--space-6);padding:var(--space-3) 0;background:var(--color-bg);border-bottom:1px solid var(--color-border)}.tournament-calendar-toolbar-primary{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-3);min-width:0;width:100%}.tournament-calendar-search{position:relative;display:block;margin:0;flex:0 1 16rem;min-width:10rem;max-width:18rem}.tournament-calendar-search-icon{position:absolute;top:50%;left:14px;display:inline-flex;color:var(--color-text-faint);transform:translateY(-50%);pointer-events:none}.tournament-calendar-search input{width:100%;min-height:44px;padding:0 var(--space-4) 0 2.5rem;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text);font:inherit}.tournament-calendar-search input:focus{outline:none;border-color:var(--color-accent-outline);box-shadow:0 0 0 3px var(--color-accent-ring)}.tournament-calendar-toolbar-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:var(--space-2) var(--space-3);width:100%}.tournament-calendar-filters{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:var(--space-2)}.tournament-calendar-filters--tiers{flex:1 1 auto;flex-wrap:nowrap;min-width:0;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tournament-calendar-filters--tiers::-webkit-scrollbar{display:none}.tournament-calendar-filters--tiers .desk-pill{flex:0 0 auto;padding-inline:10px;white-space:nowrap}.tournament-calendar-shown{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-faint);white-space:nowrap}@media (max-width:820px){.tournament-calendar-filters,.tournament-calendar-toolbar-meta{justify-content:flex-start}}.tournament-calendar-earlier{margin:0 0 var(--space-5)}.tournament-calendar-earlier summary{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);cursor:pointer;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);list-style:none}.tournament-calendar-earlier summary::-webkit-details-marker{display:none}.tournament-calendar-earlier summary span{color:var(--color-text-faint)}.tournament-calendar-earlier[open] summary{margin-bottom:var(--space-4)}.tournament-calendar-month{margin:0 0 var(--space-7)}.tournament-calendar-month-head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);margin:0 0 var(--space-3);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-border)}.tournament-calendar-month-head h2{margin:0;font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase}.tournament-calendar-month-head p{margin:0;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-link{display:grid;grid-template-columns:7.5rem minmax(0,1.4fr) 9rem 5.25rem minmax(8rem,12rem) 1.25rem;align-items:center;grid-gap:var(--space-3) var(--space-4);gap:var(--space-3) var(--space-4);padding:14px 18px;border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);text-decoration:none;color:inherit}.tournament-calendar-link:focus-visible,.tournament-calendar-link:hover{color:inherit;text-decoration:none;border-color:var(--color-accent-outline)}.tournament-calendar-link:focus-visible .tournament-calendar-name,.tournament-calendar-link:hover .tournament-calendar-name{color:var(--color-accent)}.tournament-calendar-dates{font-family:var(--font-mono);font-size:var(--text-chip);color:var(--color-text-muted);letter-spacing:.02em;white-space:nowrap}.tournament-calendar-identity{display:flex;align-items:center;gap:10px;min-width:0}.tournament-calendar-flag{flex-shrink:0;width:18px;height:12px;object-fit:cover;border-radius:2px;box-shadow:inset 0 0 0 1px rgb(0 0 0/8%)}.tournament-calendar-identity-copy{display:flex;flex-direction:column;gap:3px;min-width:0}.tournament-calendar-name{font-size:1.05rem;font-weight:var(--weight-bold);letter-spacing:-.02em;line-height:1.15}.tournament-calendar-city{letter-spacing:.14em;color:var(--color-text-faint)}.tournament-calendar-city,.tournament-calendar-tier{font-family:var(--font-mono);font-size:10px;text-transform:uppercase}.tournament-calendar-tier{display:inline-flex;align-items:center;justify-self:start;max-width:100%;padding:5px 10px;border-radius:var(--radius-pill);background:color-mix(in srgb,var(--color-text) 6%,transparent);letter-spacing:.12em;color:var(--color-text-muted);white-space:nowrap}.tournament-calendar-tier[data-tier=grand_slam]{background:color-mix(in srgb,var(--color-court) 28%,transparent);color:var(--color-text)}.tournament-calendar-tier[data-tier=masters_1000]{background:color-mix(in srgb,var(--surface-hard) 22%,transparent);color:color-mix(in srgb,var(--surface-hard) 72%,var(--color-text))}.tournament-calendar-tier[data-tier=atp_500]{background:color-mix(in srgb,var(--color-accent) 14%,transparent);color:var(--color-text-muted)}.tournament-calendar-surface{display:inline-flex;align-items:center;gap:8px;justify-self:start;font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-muted);white-space:nowrap}.tournament-calendar-result{display:flex;flex-direction:column;align-items:flex-end;gap:3px;text-align:right;min-width:0}.tournament-calendar-result strong{font-size:var(--text-body);font-weight:var(--weight-semibold);line-height:1.2}.tournament-calendar-result span{font-size:12px;line-height:1.25;color:var(--color-text-muted)}.tournament-calendar-result[data-kind=live] span,.tournament-calendar-result[data-kind=upcoming] span{font-family:var(--font-mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--color-text-faint)}.tournament-calendar-link[data-status=completed] .tournament-calendar-result strong{color:var(--color-text)}.tournament-calendar-link[data-status=live] .tournament-calendar-result strong,.tournament-calendar-link[data-status=upcoming] .tournament-calendar-result strong{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted)}.tournament-calendar-chevron{justify-self:end;font-size:1.25rem;line-height:1;color:var(--color-text-faint)}.tournament-calendar-footnote{margin:var(--space-4) 0 0;font-family:var(--font-mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-faint)}@media (max-width:960px){.tournament-calendar-live-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:840px){.tournament-calendar-live-feature,.tournament-calendar-next{align-items:flex-start}.tournament-calendar-next-aside{width:100%;justify-content:space-between}.tournament-calendar-next-count{align-items:flex-start;text-align:left}}@media (max-width:640px){.tournament-calendar-live-grid{grid-template-columns:1fr}.tournament-calendar-live-head{flex-wrap:wrap}.tournament-calendar-live-rule{display:none}}@media (max-width:920px){.tournament-calendar-link{grid-template-columns:7.5rem minmax(0,1fr) 1.25rem;grid-template-areas:"dates result chevron" "identity identity identity" "tier surface surface"}.tournament-calendar-dates{grid-area:dates}.tournament-calendar-identity{grid-area:identity}.tournament-calendar-tier{grid-area:tier}.tournament-calendar-surface{grid-area:surface;justify-self:start}.tournament-calendar-result{grid-area:result}.tournament-calendar-chevron{grid-area:chevron}}@media (max-width:720px){.tournament-calendar-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.tournament-calendar-stats>div:nth-child(3),.tournament-calendar-stats>div:nth-child(4){border-top:1px solid var(--color-border)}.tournament-calendar-stats>div:nth-child(3){border-left:none;padding-left:0}.tournament-calendar-link{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"dates chevron" "identity identity" "tier surface" "result result" "speed speed";padding:14px}.tournament-calendar-result{align-items:flex-start;text-align:left}}@media (max-width:980px){.tournament-insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.tournament-final-grid,.tournament-insight-grid{grid-template-columns:1fr}.tournament-final-grid{text-align:left}.tournament-final-player.is-runner{align-items:flex-start;text-align:left}.tournament-final-player.is-runner .tournament-final-player-meta{flex-direction:row-reverse;justify-content:flex-end}.tournament-final-score{text-align:left;padding:0}}@media (max-width:640px){.tournament-panel{padding:20px 16px}.tournament-champions li{grid-template-columns:14px 46px minmax(0,1fr)}.tournament-champion-beat,.tournament-champion-score{grid-column:3}}.pro-soft-lock{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.7fr) auto;align-items:center;grid-gap:var(--space-6);gap:var(--space-6);min-height:180px;padding:var(--space-7);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);overflow:hidden}.pro-soft-lock-copy{position:relative;z-index:1}.pro-soft-lock .pro-soft-lock-badge{display:inline-flex;margin-bottom:var(--space-3);padding:var(--space-1) var(--space-2);border-radius:var(--radius-chip);background:var(--color-court);color:var(--color-text-strong);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:var(--tracking-label)}.pro-soft-lock h2{margin-bottom:var(--space-2);color:var(--color-text-strong)}.pro-soft-lock-copy p{max-width:var(--lede-max);margin:0;color:var(--color-text-muted);line-height:1.5}.pro-soft-lock-placeholder{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-toggle);background:var(--color-bg);filter:blur(3px);opacity:.62}.pro-soft-lock-placeholder span{height:16px;border-radius:var(--radius-chip);background:var(--color-border)}.pro-soft-lock-placeholder span:nth-child(2){width:72%}.unlock-pro{position:relative;z-index:1;min-width:190px}.unlock-pro-button{min-height:44px;padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-pill);background:var(--color-ink-band);color:var(--color-on-ink);font:inherit;font-weight:var(--weight-semibold);cursor:pointer}.unlock-pro-button:focus-visible,.unlock-pro-button:hover{background:var(--color-ink-elevated);outline:none}.unlock-pro-button:focus-visible{outline:3px solid var(--color-accent-ring);outline-offset:2px}.paywall-modal-backdrop{position:fixed;inset:0;z-index:95;display:flex;align-items:center;justify-content:center;padding:max(12px,env(safe-area-inset-top,0px)) max(12px,env(safe-area-inset-right,0px)) max(12px,env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));overflow:hidden;overscroll-behavior:contain;background:color-mix(in srgb,var(--color-ink-band) 62%,transparent)}.paywall-modal-backdrop.is-entering{animation:paywall-backdrop-in .28s ease-out both}.paywall-modal-backdrop.is-leaving{animation:paywall-backdrop-out .22s ease-in both;pointer-events:none}.paywall-modal{display:flex;flex-direction:column;width:100%;max-width:520px;max-height:min(94dvh,calc(100% - 8px));overflow:hidden;border-radius:28px;background:var(--color-surface);box-shadow:0 30px 80px color-mix(in srgb,var(--color-ink-band) 45%,transparent);transform-origin:50% 40%}.paywall-modal.is-entering{animation:paywall-modal-in .38s cubic-bezier(.16,1,.3,1) both}.paywall-modal.is-leaving{animation:paywall-modal-out .2s ease-in both}@keyframes paywall-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes paywall-backdrop-out{0%{opacity:1}to{opacity:0}}@keyframes paywall-modal-in{0%{opacity:0;transform:translateY(18px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes paywall-modal-out{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(10px) scale(.98)}}@media (prefers-reduced-motion:reduce){.paywall-modal-backdrop.is-entering,.paywall-modal-backdrop.is-leaving,.paywall-modal.is-entering,.paywall-modal.is-leaving,.paywall-rally-arc,.paywall-rally-spin,.paywall-rally-travel{animation:none}.paywall-rally-travel{left:12%}}.paywall-modal-header{position:relative;flex-shrink:0;padding:var(--space-6) clamp(20px,4vw,28px) 0;overflow:hidden;background:radial-gradient(circle at 82% 10%,color-mix(in srgb,var(--color-court) 18%,transparent),transparent 58%),var(--color-ink-band);color:var(--color-on-ink)}.paywall-modal-header-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-3)}.paywall-modal-eyebrow{margin:0;color:var(--color-court);font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-bold);letter-spacing:.18em;text-transform:uppercase}.paywall-modal-header-actions{display:flex;align-items:center;gap:var(--space-2)}.paywall-modal-mark{color:var(--color-court)}.paywall-modal-close{display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid var(--color-ink-line);border-radius:var(--radius-pill);background:transparent;color:var(--color-on-ink-soft);font-size:20px;line-height:1;cursor:pointer}.paywall-modal-close:focus-visible,.paywall-modal-close:hover{border-color:var(--color-on-ink-soft);color:var(--color-on-ink);outline:none}.paywall-modal-title{margin:0 0 var(--space-3);max-width:22ch;color:var(--color-on-ink);font-size:clamp(21px,3.4vw,27px);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.08}.paywall-modal-lede{margin:0;max-width:46ch;padding-bottom:72px;color:var(--color-on-ink-muted);font-size:13.5px;line-height:1.5}.paywall-rally{position:absolute;left:0;right:0;bottom:0;height:40px;pointer-events:none}.paywall-rally-line{position:absolute;left:5%;right:5%;bottom:10px;height:1px;background:var(--color-ink-line)}.paywall-rally-travel{position:absolute;bottom:10px;width:20px;height:20px;animation:paywall-rally 1.3s linear infinite alternate}.paywall-rally-arc{width:20px;height:20px;animation:paywall-arc 1.3s linear infinite}.paywall-rally-spin{display:block;width:20px;height:20px;animation:paywall-spin 1.4s linear infinite}.paywall-rally-spin svg{display:block}@keyframes paywall-rally{0%{left:5%}to{left:calc(95% - 20px)}}@keyframes paywall-arc{0%{transform:translateY(0) scale(1.16,.84)}6%{transform:translateY(-9px) scale(1)}10%{transform:translateY(-14px) scale(1)}20%{transform:translateY(-24px) scale(1)}30%{transform:translateY(-32px) scale(1)}40%{transform:translateY(-36px) scale(1)}50%{transform:translateY(-38px) scale(1)}60%{transform:translateY(-36px) scale(1)}70%{transform:translateY(-32px) scale(1)}80%{transform:translateY(-24px) scale(1)}90%{transform:translateY(-14px) scale(1)}94%{transform:translateY(-9px) scale(1)}to{transform:translateY(0) scale(1.16,.84)}}@keyframes paywall-spin{to{transform:rotate(1turn)}}.paywall-modal-body{display:flex;flex-direction:column;gap:var(--space-5);flex:1 1;min-height:0;padding:var(--space-6) clamp(20px,4vw,28px) var(--space-6);overflow:auto;overscroll-behavior:contain;background:var(--color-bg)}.paywall-plan-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3)}.paywall-plan-card{display:flex;flex-direction:column;gap:var(--space-4);min-height:148px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:18px;background:var(--color-surface);color:inherit;font:inherit;text-align:left;cursor:pointer}.paywall-plan-card.is-selected{border-color:var(--color-ink-band);border-width:2px;padding:calc(var(--space-4) - 1px);box-shadow:0 8px 24px color-mix(in srgb,var(--color-ink-band) 10%,transparent)}.paywall-plan-card:focus-visible{outline:3px solid var(--color-accent-ring);outline-offset:2px}.paywall-plan-card:disabled{cursor:wait;opacity:.72}.paywall-plan-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-2);min-height:22px}.paywall-plan-label{color:var(--color-text-muted);font-size:var(--text-micro);letter-spacing:.12em}.paywall-plan-badge,.paywall-plan-label{font-family:var(--font-mono);font-weight:var(--weight-bold);text-transform:uppercase}.paywall-plan-badge{flex-shrink:0;padding:3px 8px;border-radius:var(--radius-pill);background:var(--color-court);color:var(--color-text-strong);font-size:9px;letter-spacing:.08em}.paywall-plan-price{display:flex;align-items:baseline;gap:6px;margin-top:auto}.paywall-plan-amount{color:var(--color-text-strong);font-size:34px;font-weight:var(--weight-bold);letter-spacing:-.04em;line-height:1}.paywall-plan-period{color:var(--color-text-muted);font-size:var(--text-label)}.paywall-plan-select{display:inline-flex;align-items:center;gap:8px;color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:.1em;text-transform:uppercase}.paywall-plan-radio{width:14px;height:14px;border:1.5px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface)}.paywall-plan-card.is-selected .paywall-plan-radio{border-color:var(--color-court);background:radial-gradient(circle at center,var(--color-ink-band) 0 35%,transparent 36%),var(--color-court)}.paywall-feature-list{display:grid;grid-gap:var(--space-3);gap:var(--space-3);margin:0;padding:0;list-style:none}.paywall-feature-list li{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-strong);font-size:var(--text-ui);font-weight:var(--weight-semibold)}.paywall-feature-check{flex-shrink:0;color:var(--color-court)}.paywall-cta{width:100%;min-height:52px;padding:var(--space-3) var(--space-5);border:none;border-radius:var(--radius-pill);background:var(--color-ink-band);color:var(--color-on-ink);font:inherit;font-size:var(--text-body);font-weight:var(--weight-bold);cursor:pointer}.paywall-cta:focus-visible,.paywall-cta:hover:not(:disabled){background:var(--color-ink-elevated);outline:none}.paywall-cta:focus-visible{outline:3px solid var(--color-accent-ring);outline-offset:2px}.paywall-cta:disabled{cursor:wait;opacity:.7}.paywall-cancel-note{margin:calc(var(--space-2) * -1) 0 0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:.12em;text-align:center;text-transform:uppercase}.paywall-error{margin:0;color:var(--color-danger);font-size:var(--text-label);text-align:center}.paywall-free{display:grid;grid-gap:var(--space-3);gap:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--color-border);text-align:center}.paywall-free p{margin:0;color:var(--color-text-muted);font-size:var(--text-ui);line-height:1.45}.paywall-free-link{justify-self:center;padding:0;border:none;background:none;color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-micro);font-weight:var(--weight-bold);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.paywall-free-link:focus-visible,.paywall-free-link:hover{color:var(--color-accent-hover);outline:none}@media (max-width:560px){.paywall-modal{max-width:100%;border-radius:22px}.paywall-plan-grid{grid-template-columns:1fr}.paywall-plan-card{min-height:0}.paywall-modal-title{max-width:none}}.upgrade-plans{position:relative;z-index:1;min-width:190px}.upgrade-plans-title{margin:0 0 var(--space-3);color:var(--color-text-strong);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-bold);text-transform:uppercase;letter-spacing:var(--tracking-label)}.upgrade-plan-actions{display:flex;gap:var(--space-2)}.upgrade-plan-button{min-height:40px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-accent);border-radius:var(--radius-control);background:transparent;color:var(--color-accent);font:inherit;font-weight:var(--weight-semibold);cursor:pointer}.upgrade-plan-button.is-primary{background:var(--color-accent);color:var(--color-on-accent)}.upgrade-plan-button:hover:not(:disabled){border-color:var(--color-accent-hover);background:var(--color-accent-hover);color:var(--color-on-accent)}.upgrade-plan-button:focus-visible{outline:3px solid var(--color-accent-ring);outline-offset:2px}.upgrade-plan-button:disabled{cursor:wait;opacity:.6}.upgrade-plans-error{max-width:240px;margin:var(--space-2) 0 0;color:var(--color-danger);font-size:var(--text-label)}@media (max-width:800px){.pro-soft-lock{grid-template-columns:1fr;gap:var(--space-5);padding:var(--space-5)}.pro-soft-lock-placeholder{display:none}.upgrade-plans{min-width:0}}.tournament-style-head{align-items:flex-start}.tournament-style-window{margin:0;font-size:12px;color:var(--color-text-faint);white-space:nowrap}.tournament-style-chart{display:grid;grid-template-columns:repeat(var(--style-count,8),minmax(56px,1fr));grid-gap:10px 8px;gap:10px 8px;min-height:220px;margin:22px 0 28px;overflow-x:auto}.tournament-style-col{display:grid;grid-template-rows:auto minmax(120px,1fr) auto;grid-gap:8px;gap:8px;min-width:0;text-align:center;--style-ink:var(--color-accent)}.tournament-style-col strong{font-size:13px;font-weight:var(--weight-semibold);color:var(--color-text)}.tournament-style-col-track{display:flex;align-items:flex-end;min-height:120px;overflow:hidden}.tournament-style-col-fill{display:block;width:72%;margin:0 auto;border-radius:4px 4px 0 0;background:var(--style-ink)}.tournament-style-col-label{overflow:hidden;color:var(--color-text-faint);font-size:9px;font-weight:var(--weight-semibold);letter-spacing:.04em;text-transform:uppercase;text-overflow:ellipsis;white-space:nowrap}.tournament-style-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:0;padding:0;list-style:none}.tournament-style-card{display:grid;grid-gap:10px;gap:10px;min-width:0;padding:16px 16px 14px;border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);background:var(--color-bg);--style-ink:var(--color-accent)}.tournament-style-card-name{margin:0;font-weight:var(--weight-semibold)}.tournament-style-card-stat{display:flex;align-items:baseline;gap:8px;margin:0}.tournament-style-card-stat strong{font-size:28px;font-weight:var(--weight-bold);line-height:1;color:var(--style-ink)}.tournament-style-card-stat span{color:var(--color-text-muted);font-size:12px}.tournament-style-card-track{display:block;height:8px;overflow:hidden;border-radius:99px;background:var(--color-border-subtle)}.tournament-style-card-fill{display:block;height:100%;background:var(--style-ink);border-radius:99px}.tournament-style-card-foot{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--color-text-faint);font-size:12px}.tournament-style-pp-pill{display:inline-flex;align-items:center;padding:3px 8px;border-radius:99px;background:var(--color-border-subtle);font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--style-ink)}.tournament-style-pp-pill.is-avg{color:var(--color-text-faint)}.tournament-style-pp-pill.is-minus{color:var(--color-danger)}.tournament-style-card[data-style=elite_all_courter],.tournament-style-col[data-style=elite_all_courter]{--style-ink:var(--color-playstyle-elite-all-courter)}.tournament-style-card[data-style=boom_or_bust_aggressor],.tournament-style-col[data-style=boom_or_bust_aggressor]{--style-ink:var(--color-playstyle-boom-or-bust-aggressor)}.tournament-style-card[data-style=heavy_topspin_baseliner],.tournament-style-col[data-style=heavy_topspin_baseliner]{--style-ink:var(--color-playstyle-heavy-topspin-baseliner)}.tournament-style-card[data-style=power_baseliner],.tournament-style-col[data-style=power_baseliner]{--style-ink:var(--color-playstyle-power-baseliner)}.tournament-style-card[data-style=pure_big_server],.tournament-style-col[data-style=pure_big_server]{--style-ink:var(--color-playstyle-pure-big-server)}.tournament-style-card[data-style=big_serving_baseliner],.tournament-style-col[data-style=big_serving_baseliner]{--style-ink:var(--color-playstyle-big-serving-baseliner)}.tournament-style-card[data-style=offensive_counterpuncher],.tournament-style-col[data-style=offensive_counterpuncher]{--style-ink:var(--color-playstyle-offensive-counterpuncher)}.tournament-style-card[data-style=serve_and_volleyer],.tournament-style-col[data-style=serve_and_volleyer]{--style-ink:var(--color-playstyle-serve-and-volleyer)}.tournament-style-card[data-style=defensive_grinder],.tournament-style-col[data-style=defensive_grinder]{--style-ink:var(--color-playstyle-defensive-grinder)}.tournament-style-card[data-style=solid_server],.tournament-style-col[data-style=solid_server]{--style-ink:var(--color-playstyle-solid-server)}.tournament-style-card[data-style=solid_returner],.tournament-style-col[data-style=solid_returner]{--style-ink:var(--color-playstyle-solid-returner)}.tournament-style-card[data-style=solid_core],.tournament-style-col[data-style=solid_core]{--style-ink:var(--color-playstyle-solid-core)}.tournament-style-card[data-style=clay_specialist],.tournament-style-col[data-style=clay_specialist]{--style-ink:var(--color-playstyle-clay-specialist)}@media (max-width:960px){.tournament-style-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.tournament-style-cards{grid-template-columns:1fr}.tournament-style-window{white-space:normal}}.tournament-style-rows{display:flex;flex-direction:column;gap:14px;margin:0;padding:0;list-style:none}.tournament-style-row-head,.tournament-upset-round-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.tournament-style-name{font-weight:600}.tournament-style-pp{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.tournament-style-pp.is-plus{color:var(--color-court)}.tournament-style-pp.is-minus{color:var(--color-danger)}.tournament-style-pp.is-avg{color:var(--color-text-faint)}.tournament-style-meta,.tournament-upset-round-meta{margin:4px 0 8px;font-size:12px;color:var(--color-text-muted)}.tournament-style-track{position:relative;display:block;height:6px;border-radius:99px;background:var(--color-border)}.tournament-style-fill{display:block;height:100%;background:var(--color-court);border-radius:99px}.tournament-style-legend{display:flex;gap:14px;margin:8px 0 0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}.tournament-style-legend-losses:before,.tournament-style-legend-wins:before{content:"";display:inline-block;width:8px;height:8px;margin-right:6px;border-radius:99px;vertical-align:middle}.tournament-style-legend-wins:before{background:var(--color-form-win-fill)}.tournament-style-legend-losses:before{background:var(--color-form-loss-fill)}.tournament-style-wl{display:flex;align-items:stretch;height:14px;overflow:hidden;border-radius:99px;background:var(--color-border)}.tournament-style-wl-losses,.tournament-style-wl-wins{display:block;height:100%;min-width:0}.tournament-style-wl-wins{background:var(--color-form-win-fill)}.tournament-style-wl-losses{background:var(--color-form-loss-fill)}.tournament-style-wl-counts{display:flex;justify-content:space-between;gap:12px;margin:6px 0 0;font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;color:var(--color-text-muted)}.tournament-style-wl-counts .is-wins{color:var(--color-form-win-ink)}.tournament-style-wl-counts .is-losses{color:var(--color-form-loss-ink)}.tournament-phase-rows{display:flex;flex-direction:column;gap:14px;margin:22px 0 0;padding:0;list-style:none}.tournament-phase-row{display:grid;grid-template-columns:minmax(140px,.95fr) minmax(80px,1fr) 2.75rem;grid-gap:10px 16px;gap:10px 16px;align-items:center}.tournament-phase-round{font-weight:var(--weight-semibold)}.tournament-phase-meta{margin:3px 0 0;font-size:12px;color:var(--color-text-muted)}.tournament-phase-track{position:relative;display:block;height:8px;border-radius:99px;background:var(--color-border)}.tournament-phase-fill{display:block;height:100%;border-radius:99px;background:var(--color-text-faint)}.tournament-phase-row.is-high .tournament-phase-fill{background:var(--color-court)}.tournament-phase-row.is-low .tournament-phase-fill{background:var(--color-danger)}.tournament-phase-tick{position:absolute;top:-4px;bottom:-4px;width:2px;margin-left:-1px;border-radius:99px;background:var(--color-text)}.tournament-phase-pct{font-weight:var(--weight-semibold);text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}@media (max-width:640px){.tournament-phase-row{grid-template-columns:minmax(0,1fr) 2.75rem;grid-template-rows:auto auto}.tournament-phase-track{grid-column:1/-1}.tournament-phase-pct{grid-column:2;grid-row:1;align-self:start}}.tournament-phase-notes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px;gap:12px;margin:22px 0 0;padding:14px;list-style:none;border-radius:14px;background:var(--color-bg)}.tournament-phase-note{--note-accent:var(--color-accent);position:relative;overflow:hidden;display:grid;grid-gap:6px;gap:6px;min-width:0;padding:18px 20px 16px 22px;border:1px solid var(--color-border-subtle);border-radius:12px;background:var(--color-surface);box-shadow:0 6px 16px color-mix(in srgb,var(--color-text) 7%,transparent)}.tournament-phase-note:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--note-accent)}.tournament-phase-note.is-early{--note-accent:var(--color-accent)}.tournament-phase-note.is-peak{--note-accent:color-mix(in srgb,var(--color-accent) 52%,var(--color-court))}.tournament-phase-note.is-late{--note-accent:var(--surface-clay)}.tournament-phase-note.is-styles{--note-accent:var(--color-ink-elevated)}.tournament-phase-note-kicker{margin:0;color:var(--note-accent);font-size:10px;font-weight:var(--weight-semibold);letter-spacing:.1em;text-transform:uppercase}.tournament-phase-note-title{margin:0;color:var(--color-text-strong);font-weight:var(--weight-bold);line-height:1.3}.tournament-phase-note-body{margin:0;color:var(--color-text-muted);font-size:13px;line-height:1.45}@media (max-width:960px){.tournament-phase-notes{grid-template-columns:1fr}}.tournament-clash-head{align-items:flex-start}.tournament-clash-scroll{overflow-x:auto}.tournament-clash-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:11px}.tournament-clash-table td,.tournament-clash-table th{padding:6px 7px;text-align:center;border:1px solid var(--color-border)}.tournament-clash-table th[scope=row]{text-align:left;white-space:nowrap}.tournament-clash-table td.is-thin{color:var(--color-text-faint)}.tournament-clash-table td.is-hot{background:color-mix(in srgb,var(--color-court) 22%,var(--color-surface))}.tournament-clash-table td.is-cold{background:color-mix(in srgb,var(--color-danger) 16%,var(--color-surface))}.tournament-clash-table td.is-diag{color:var(--color-text-faint)}.tournament-upset-rounds{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.tournament-shock-block{scroll-margin-top:4.5rem}.tournament-shock-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 16px;margin:0 2px 12px}.tournament-shock-head .tournament-event-averages-label{margin:0}.tournament-shock-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:10px}.tournament-shock-card{display:flex;flex-direction:column;gap:12px;padding:16px 18px 14px;border:1px solid var(--color-border-subtle);border-radius:12px;background:var(--color-surface);box-shadow:0 6px 16px color-mix(in srgb,var(--color-text) 7%,transparent)}.tournament-shock-meta{display:flex;align-items:center;justify-content:space-between;gap:12px}.tournament-shock-round{color:var(--color-text-faint);font-size:10px}.tournament-shock-implied,.tournament-shock-round{font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase}.tournament-shock-implied{flex-shrink:0;padding:4px 9px;border-radius:99px;background:var(--color-form-loss-fill);color:var(--color-form-loss-ink);font-size:9px;white-space:nowrap}.tournament-shock-side{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-gap:10px 12px;gap:10px 12px;align-items:center}.tournament-shock-outcome{display:inline-flex;align-items:center;justify-content:center;min-width:3.1rem;padding:3px 7px;border-radius:6px;font-size:9px;font-weight:var(--weight-bold);letter-spacing:.1em;text-transform:uppercase;line-height:1.2}.tournament-shock-side.is-winner .tournament-shock-outcome{color:var(--color-result-win-ink);background:var(--color-result-win-fill)}.tournament-shock-side.is-loser .tournament-shock-outcome{color:var(--color-text-muted);background:color-mix(in srgb,var(--color-text-faint) 22%,var(--color-surface))}.tournament-shock-name{min-width:0;display:inline-flex;align-items:center;gap:8px;font-size:15px;line-height:1.3;color:var(--color-text-muted)}.tournament-shock-flag{display:block;width:18px;height:12px;border-radius:1px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 10%,transparent)}.tournament-shock-side.is-winner .tournament-shock-name{font-weight:var(--weight-bold);color:var(--color-text-strong)}.tournament-shock-price{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:15px;font-weight:var(--weight-semibold);line-height:1;letter-spacing:-.02em;color:var(--color-text-faint)}.tournament-shock-side.is-winner .tournament-shock-price{font-size:22px;font-weight:var(--weight-bold);letter-spacing:-.03em;color:var(--color-text-strong)}.tournament-shock-score{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:2px 0 0;padding:10px 0 0;border-top:1px solid var(--color-border-subtle)}.tournament-shock-score-label{color:var(--color-text-faint);font-size:10px;font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase}.tournament-shock-score-value{color:var(--color-text);font-size:13px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tournament-hero{display:block;width:100%;max-height:180px;object-fit:cover;border-radius:var(--radius-control);margin-bottom:var(--space-6)}.cpi-history{width:100%;border-collapse:collapse;font-size:var(--text-table)}.cpi-history td,.cpi-history th{text-align:left;padding:6px 8px;border-bottom:1px solid var(--color-border)}.cpi-history th{font-family:var(--font-mono);font-size:var(--text-chip);text-transform:uppercase;letter-spacing:var(--tracking-micro);color:var(--color-text-faint)}.champion-list,.court-notes{margin:0;padding-left:1.1rem}.court-feel-block{display:flex;flex-direction:column;gap:var(--space-6)}.court-feel-placeholder-badge{display:inline-flex;align-items:center;flex-shrink:0;margin:0;padding:6px 12px;border-radius:var(--radius-pill);background:color-mix(in srgb,#B3261E 8%,transparent);color:#B3261E;font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap}.court-feel-quotes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));grid-gap:14px;gap:14px;margin:0;padding:0;list-style:none}.court-feel-card{display:flex;flex-direction:column;gap:14px;min-width:0;padding:18px 20px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.court-feel-card-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.court-feel-tag{margin:0;display:inline-flex;align-items:center;padding:4px 9px;border:1px solid;border-radius:var(--radius-pill);background:transparent;font-family:var(--font-mono);font-size:9px;font-weight:var(--weight-medium);letter-spacing:.16em;text-transform:uppercase;line-height:1.2;white-space:nowrap}.court-feel-tag.tone-blue{color:var(--color-player-a)}.court-feel-tag.tone-orange{color:var(--palette-clay)}.court-feel-tag.tone-purple{color:var(--palette-indoor-court)}.court-feel-tag.tone-green{color:var(--palette-grass-court)}.court-feel-tag.tone-gray{color:var(--color-text-muted)}.court-feel-session{margin:0;font-family:var(--font-mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint);white-space:nowrap}a.court-feel-session{text-decoration:none}a.court-feel-session:hover{color:var(--color-text);text-decoration:underline}.court-feel-quotes blockquote{margin:0;flex:1 1;font-size:15px;font-weight:var(--weight-regular);line-height:1.55;color:var(--color-text)}.court-feel-attr{display:flex;align-items:center;gap:10px;margin-top:auto;padding-top:2px;border-top:1px solid var(--color-border-subtle);color:var(--color-text-faint);font-size:var(--text-chip)}.court-feel-flag{display:block;width:20px;height:14px;margin-top:2px;border-radius:2px;object-fit:cover;flex-shrink:0;box-shadow:0 0 0 1px color-mix(in srgb,var(--color-ink) 10%,transparent)}.court-feel-attr-text{min-width:0;flex:1 1}.tournament-attr{color:var(--color-text-faint);font-size:var(--text-chip)}.court-feel-player{margin:0;color:var(--color-text);font-weight:var(--weight-bold);font-size:var(--text-label);line-height:1.25}a.court-feel-player{text-decoration:none}a.court-feel-player:hover{text-decoration:underline}.court-feel-context{margin:3px 0 0;line-height:1.35}.court-feel-context,.court-feel-source{color:var(--color-text-faint);font-size:var(--text-chip)}.court-feel-source{margin-left:auto;align-self:center}.court-feel-themes{padding-top:2px}.court-feel-themes-label{margin:0 0 var(--space-3);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--color-text-faint)}.court-feel-theme-list{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.court-feel-theme-list li{padding:7px 12px;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:transparent;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted)}@media (max-width:640px){.court-feel-quotes{grid-template-columns:1fr}}.tournament-block-h{display:flex;align-items:center;gap:6px}.serve-pace-strip{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-border)}.serve-pace-window{margin:0 0 var(--space-2);color:var(--color-text-faint);font-size:var(--text-chip);letter-spacing:.02em;text-transform:uppercase}.serve-pace-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.serve-pace-fact{display:flex;flex-direction:column;gap:2px}.serve-pace-fact strong{font-size:var(--text-body);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.match-conditions-hint,.serve-pace-fact span{color:var(--color-text-faint);font-size:var(--text-chip)}.match-conditions-hint{margin:var(--space-2) 0 0}.match-main{min-width:0}.desk-sticky{position:-webkit-sticky;position:sticky;top:0;z-index:20;margin-inline:calc(-1 * var(--gutter));background:color-mix(in srgb,var(--color-surface) 93%,transparent);border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.desk-sticky.is-away,.desk-sticky.is-docked,.player-jump-nav-sticky.is-away,.player-jump-nav-sticky.is-docked,.tournament-jump-bar.is-away,.tournament-jump-bar.is-docked{position:fixed;left:0;right:0;width:100%;margin-inline:0;z-index:30;transition:transform var(--motion-fast) var(--ease-out)}.desk-sticky.is-docked,.player-jump-nav-sticky.is-docked,.tournament-jump-bar.is-docked{top:0;transform:none;box-shadow:0 8px 24px color-mix(in srgb,var(--color-ink-band) 10%,transparent)}.desk-sticky.is-away,.player-jump-nav-sticky.is-away,.tournament-jump-bar.is-away{top:0;transform:translateY(-120%);pointer-events:none;box-shadow:none}html.web-app .desk-sticky.is-away,html.web-app .desk-sticky.is-docked,html.web-app .player-jump-nav-sticky.is-away,html.web-app .player-jump-nav-sticky.is-docked,html.web-app .tournament-jump-bar.is-away,html.web-app .tournament-jump-bar.is-docked{top:env(safe-area-inset-top,0)}@media (display-mode:standalone){.desk-sticky.is-away,.desk-sticky.is-docked,.player-jump-nav-sticky.is-away,.player-jump-nav-sticky.is-docked,.tournament-jump-bar.is-away,.tournament-jump-bar.is-docked{top:env(safe-area-inset-top,0)}}@media (prefers-reduced-motion:reduce){.desk-sticky.is-away,.desk-sticky.is-docked,.player-jump-nav-sticky.is-away,.player-jump-nav-sticky.is-docked,.tournament-jump-bar.is-away,.tournament-jump-bar.is-docked{transition:none}}.desk-sticky .desk-filter-bar{width:100%;margin:0;padding:var(--space-3) var(--gutter) var(--space-2);flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.desk-jump-nav{display:flex;align-items:center;min-width:0;padding:0 var(--gutter) 7px;overflow-x:auto;scrollbar-width:none}.desk-jump-nav::-webkit-scrollbar{display:none}.desk-jump-links{display:flex;align-items:center;gap:6px clamp(10px,1.8vw,18px);flex:0 0 auto;min-width:0}.desk-jump-link{flex:0 0 auto;padding:5px 11px;border-radius:var(--radius-pill);color:var(--color-text-muted);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-medium);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;white-space:nowrap}.desk-jump-link:focus-visible,.desk-jump-link:hover{background:transparent;color:var(--color-text);text-decoration:none}.match-main :is(#style,#h2h,#travel,#fatigue,#serve,#form,#dominance,#clutch,#averages,#round,#last4,#last10,#injury,#owlsense,#length,#owlread){scroll-margin-top:6.5rem}.desk-sticky .desk-filter-pills{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-3);min-width:0}.desk-sticky .desk-filter-selects{display:none}.desk-sticky .desk-filter-group{display:flex;flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:var(--space-2)}.desk-back-pill,.desk-sticky .desk-pill{flex-shrink:0;min-height:32px;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-micro);text-transform:uppercase}.desk-back-pill{display:inline-flex;align-items:center;padding:7px var(--space-3);border-radius:var(--radius-pill);text-decoration:none}.desk-back-pill:hover{color:var(--color-text);text-decoration:none}.desk-sticky .desk-pill[aria-pressed=true]{border-color:var(--color-ink-band)}.desk-sticky .desk-pill[aria-pressed=true],.match-hero{background:var(--color-ink-band);color:var(--color-on-ink)}.match-hero{margin-inline:calc(-1 * var(--gutter));margin-bottom:var(--space-10)}.match-hero-inner{width:100%;margin:0;padding:var(--space-10) var(--gutter) var(--space-8)}.match-hero-event,.match-hero-meta{margin:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--tracking-label);text-transform:uppercase}.match-hero-event-row{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2) var(--space-3)}.match-hero-event-flag{flex-shrink:0;width:18px;height:12px;object-fit:cover;border-radius:1px;border:1px solid color-mix(in srgb,var(--color-on-ink) 25%,transparent)}.match-hero-title-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);padding-bottom:var(--space-6)}.match-hero-event{min-width:0}.match-surface-chip{display:inline-flex;align-items:center;min-height:22px;padding:3px 7px;border-radius:var(--radius-chip);font-family:var(--font-mono);font-size:var(--text-chip);font-weight:var(--weight-bold);letter-spacing:var(--tracking-micro);text-transform:uppercase;color:var(--color-on-surface-chip)}.match-surface-chip.tone-hard{background:var(--surface-hard)}.match-surface-chip.tone-clay{background:var(--surface-clay)}.match-surface-chip.tone-grass{background:var(--surface-grass)}.match-surface-chip.tone-indoor{background:var(--surface-indoor)}.match-surface-chip.tone-unknown{background:var(--surface-unknown)}.match-hero .match-heading{margin:0;color:var(--color-on-ink);font-size:clamp(1.25rem,2.6vw,1.625rem);letter-spacing:-.03em;line-height:1}.match-hero-players{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:var(--space-4);gap:var(--space-4);margin-top:0}.identity-card.identity-card-ink{position:relative;display:flex;flex-direction:column;gap:14px;min-width:0;padding:clamp(18px,2.4vw,24px);border-color:color-mix(in srgb,var(--color-on-ink) 18%,transparent);background:var(--color-nav-active);color:var(--color-on-ink)}.identity-player-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;grid-gap:14px;gap:14px;min-width:0;-webkit-padding-end:clamp(6.75rem,24%,9rem);padding-inline-end:clamp(6.75rem,24%,9rem)}.identity-heading-copy{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:0}.identity-avatar{display:grid;place-items:center;width:50px;height:50px;flex-shrink:0;border-radius:50%;border:1px solid color-mix(in srgb,var(--color-on-ink) 22%,transparent);background:var(--color-ink-band);color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-medium);overflow:hidden}.identity-avatar.player-avatar--photo{background:transparent;color:transparent}.player-avatar-img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;border-radius:inherit}.identity-card-ink .identity-title{margin-bottom:0}.identity-profile-more{display:grid;width:100%;justify-items:start;padding:0;border-top:0;color:var(--color-court);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase;text-decoration:none}.identity-profile-more:before{content:"";display:block;width:100%;height:1px;margin:0 0 14px;background:color-mix(in srgb,var(--color-on-ink) 14%,transparent)}.identity-profile-more:hover{color:color-mix(in srgb,var(--color-court) 88%,var(--color-on-ink))}.identity-card-ink .identity-title h2{margin:0;color:var(--color-on-ink);font-size:clamp(1.375rem,3.2vw,1.875rem);letter-spacing:-.032em;line-height:1.05}.identity-card-ink .player-name-given{font-weight:var(--weight-semibold);color:color-mix(in srgb,var(--color-on-ink) 78%,transparent)}.identity-rank-line{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase}.identity-card-ink .identity-flag{width:18px;height:12px;border-radius:1px;border-color:color-mix(in srgb,var(--color-on-ink) 25%,transparent)}.identity-card-ink .identity-style{align-self:flex-start;margin:0;padding:6px 12px;border-radius:var(--radius-pill);border-color:transparent;background:var(--color-court);color:var(--color-on-accent);font-family:var(--font-mono);font-size:var(--text-label);font-weight:var(--weight-medium);letter-spacing:.1em;text-transform:uppercase}.identity-card-ink .identity-main{display:flex;flex:1 1;flex-direction:column;gap:14px;min-width:0}.identity-facts{display:grid;grid-template-columns:auto minmax(0,1fr);grid-column-gap:clamp(16px,2.4vw,26px);column-gap:clamp(16px,2.4vw,26px);grid-row-gap:12px;row-gap:12px;margin:0}.identity-facts div{min-width:0}.identity-facts>div:nth-child(3){grid-column:1/-1}.identity-facts dt,.identity-rating-label{color:var(--color-on-ink-soft);font-family:var(--font-mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase}.identity-facts dd{margin:4px 0 0;color:var(--color-on-ink);font-size:14px;font-weight:var(--weight-semibold);line-height:1.3;white-space:nowrap}.identity-card-ink .identity-record{margin:0}.identity-card-ink .identity-losses,.identity-card-ink .identity-wins{color:var(--color-on-ink);font-family:var(--font-mono);font-size:22px;font-weight:var(--weight-medium)}.identity-card-ink .identity-dash,.identity-card-ink .identity-window{color:var(--color-text-faint)}.identity-card-ink .identity-window{font-size:10px;letter-spacing:.12em;text-transform:uppercase}.identity-card-ink .identity-pct{color:var(--color-court);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.1em;text-transform:uppercase}.identity-ratings{position:absolute;top:clamp(18px,2.4vw,24px);right:clamp(18px,2.4vw,24px);z-index:1;display:flex;flex-shrink:0;gap:14px;margin:0}.identity-footer{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:flex-start;gap:14px 20px;margin-top:auto;padding-top:14px;border-top:1px solid color-mix(in srgb,var(--color-on-ink) 15%,transparent)}.identity-stat-strip{flex:1 1 100%;margin:0;color:var(--color-on-ink-muted);font-family:var(--font-mono);font-size:11px;line-height:1.45;letter-spacing:.01em}.identity-rating{display:flex;flex-direction:column;align-items:flex-end;gap:3px;min-width:2.25rem}.identity-rating-value{color:var(--color-on-ink);font-family:var(--font-mono);font-size:14px;font-weight:var(--weight-medium);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1}.identity-card-ink .identity-ratings .identity-rating-label{color:var(--color-on-ink-soft)}.match-conditions{display:flex;flex-direction:column;gap:14px;overflow:hidden;margin-top:var(--space-4);padding:clamp(16px,2.2vw,20px) clamp(18px,2.4vw,24px);border:1px solid color-mix(in srgb,var(--color-on-ink) 18%,transparent);border-radius:var(--radius-card);background:var(--color-nav-active)}.match-conditions-row{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:start;grid-gap:12px clamp(14px,2.4vw,28px);gap:12px clamp(14px,2.4vw,28px);padding:0}.match-conditions-row+.match-conditions-row{border-top:0}.match-conditions-row h3{width:auto;margin:0;padding-top:3px;color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase}.match-conditions-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:12px clamp(12px,2vw,24px);gap:12px clamp(12px,2vw,24px);min-width:0}.match-condition-fact{display:grid;grid-gap:4px;gap:4px;min-width:0}.match-condition-value{display:inline-flex;align-items:center;gap:6px;min-width:0}.match-condition-icon{flex-shrink:0;width:14px;height:14px;color:var(--color-court)}.match-condition-fact strong{color:var(--color-on-ink);font-family:var(--font-mono);font-size:15px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1;overflow-wrap:anywhere}.match-condition-fact span{color:var(--color-text-faint);font-family:var(--font-mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase}@keyframes match-condition-shimmer{0%{opacity:.45}50%{opacity:.9}to{opacity:.45}}.match-condition-shimmer{display:block;border-radius:4px;background:color-mix(in srgb,var(--color-on-ink) 16%,transparent);animation:match-condition-shimmer 1.2s ease-in-out infinite}.match-condition-shimmer-icon{width:16px;height:16px;border-radius:50%;flex-shrink:0}.match-condition-shimmer-value{width:3.5rem;height:14px}.match-condition-shimmer-label{width:4.25rem;height:8px;margin-top:2px}.match-conditions-more{display:grid;width:100%;justify-items:start;padding:0;border-top:0;color:var(--color-court);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.12em;text-transform:uppercase}.match-conditions-more:before{content:"";display:block;width:100%;height:1px;margin:0 0 14px;background:color-mix(in srgb,var(--color-on-ink) 14%,transparent)}.match-paper{display:flex;flex-direction:column;gap:var(--space-4);width:100%;padding-bottom:var(--space-10);background:var(--color-bg)}.desk-refresh-banner{margin:0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-subtle);border-radius:var(--radius-chip);background:color-mix(in srgb,var(--color-text) 4%,transparent);color:var(--color-text-quiet);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-micro)}.match-paper-pair{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));grid-gap:var(--space-4);gap:var(--space-4)}.match-paper-stack{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.match-paper-pair>.block,.match-paper-pair>.desk-reveal>.block,.match-paper-pair>.desk-reveal>.match-paper-stack>.block,.match-paper-stack>.block,.match-paper-stack>.desk-reveal>.block,.match-paper>.block,.match-paper>.desk-reveal>.block,.match-paper>.desk-reveal>.style-matchup,.match-paper>.style-matchup{margin:0;padding:24px clamp(18px,3vw,28px);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface)}.match-paper>.desk-reveal>.style-matchup,.match-paper>.style-matchup{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);display:flex;flex-direction:column;gap:18px}.match-paper .block-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.match-paper .block-head>h2{margin:0}.match-paper .fatigue-block>h2,.match-paper .h2h-block>h2{margin-bottom:16px}.match-paper .h2h-block .block-head{margin-bottom:0}.match-paper .h2h-block .h2h-copy{margin-top:0}.match-paper .compare-table{border:0;border-radius:0;background:transparent;overflow:visible}.match-paper .compare-table-head,.match-paper .compare-table-row{padding-inline:0}.match-paper .form-momentum-stack{display:grid;grid-template-columns:1fr;grid-gap:22px;gap:22px}@media (min-width:800px){.match-paper .form-momentum-stack.desk{grid-template-columns:1fr 1fr;align-items:start}}.match-paper .form-momentum-card{margin:0;padding:0;border:0;background:transparent;box-shadow:none;min-width:0}.match-paper .block>h2,.style-matchup-title{margin:0 0 var(--space-4);color:var(--color-text-faint);font-family:var(--font-mono);font-size:10px;font-weight:var(--weight-regular);letter-spacing:.16em;text-transform:uppercase}.style-matchup-head{justify-content:space-between;margin:0}.style-matchup-head,.style-matchup-head-copy{display:flex;align-items:baseline;flex-wrap:wrap;gap:8px 16px}.style-matchup-head-copy{min-width:0}.style-matchup-head .style-matchup-sub,.style-matchup-head .style-matchup-title{margin:0}.style-matchup-sub{font-family:var(--font-mono);font-size:11px;letter-spacing:.1em;text-align:right;text-transform:uppercase;color:var(--color-text-muted)}.match-paper .style-matchup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));grid-gap:var(--space-4);gap:var(--space-4)}.match-paper .style-matchup-side{display:flex;flex-direction:column;gap:12px;padding:18px 20px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.match-paper .style-matchup-side .style-matchup-group+.style-matchup-group{margin-top:var(--space-3)}.match-paper .style-matchup-name{margin:0;font-size:16px;font-weight:var(--weight-bold);letter-spacing:-.022em}.match-paper-pair .desk{grid-template-columns:1fr}@media (min-width:800px){.briefing-card.prose{column-count:2;column-gap:var(--space-10)}.briefing-card.prose h1,.briefing-card.prose h2,.briefing-card.prose h3,.briefing-card.prose ol,.briefing-card.prose p,.briefing-card.prose ul{page-break-inside:avoid;break-inside:avoid}.briefing-card.owlread-card{column-count:1}}@media (max-width:720px){.desk-sticky,.match-hero{margin-inline:calc(-1 * var(--gutter-sm))}.desk-jump-nav,.desk-sticky .desk-filter-bar,.match-hero-inner{padding-left:var(--gutter-sm);padding-right:var(--gutter-sm)}.desk-sticky .desk-filter-bar{flex-wrap:wrap;align-items:flex-start;gap:var(--space-3);overflow-x:visible}.desk-sticky .desk-filter-pills,.desk-sticky .desk-filter-rule{display:none}.desk-sticky .desk-filter-selects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:var(--space-2);gap:var(--space-2);flex:1 1 100%;min-width:0}.match-main :is(#style,#h2h,#travel,#fatigue,#serve,#form,#dominance,#clutch,#averages,#round,#last4,#last10,#injury,#owlsense,#length,#owlread){scroll-margin-top:9rem}.desk-filter-select{display:flex;flex-direction:column;gap:4px;min-width:0}.desk-filter-select-label{color:var(--color-text-faint);font-size:var(--text-micro)}.desk-filter-select select,.desk-filter-select-label{font-family:var(--font-mono);letter-spacing:var(--tracking-micro);text-transform:uppercase}.desk-filter-select select{width:100%;min-width:0;min-height:36px;padding:6px 28px 6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-control);background-color:var(--color-surface);background-image:linear-gradient(45deg,transparent 50%,var(--color-text-muted) 50%),linear-gradient(135deg,var(--color-text-muted) 50%,transparent 50%);background-position:calc(100% - 14px) calc(50% - 2px),calc(100% - 10px) calc(50% - 2px);background-size:4px 4px;background-repeat:no-repeat;color:var(--color-text);font-size:var(--text-chip);-webkit-appearance:none;-moz-appearance:none;appearance:none}.identity-card.identity-card-ink{padding:var(--space-4)}.identity-player-head{-webkit-padding-end:clamp(5.5rem,34%,7rem);padding-inline-end:clamp(5.5rem,34%,7rem)}.identity-ratings{top:var(--space-4);right:var(--space-4);gap:10px}.identity-rating{min-width:2rem}.identity-rating-value{font-size:13px}.match-hero-event-row,.match-hero-title-row,.style-matchup-head{align-items:flex-start}.style-matchup-head{flex-direction:column}.style-matchup-sub{text-align:left}.identity-facts{grid-template-columns:auto minmax(0,1fr)}.identity-facts dd{white-space:normal}.match-conditions-row h3{width:auto}.match-conditions-facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 12px}.match-paper-pair{grid-template-columns:1fr}.briefing-band{margin-inline:calc(-1 * var(--gutter-sm))}.briefing-inner{padding-left:var(--gutter-sm);padding-right:var(--gutter-sm)}}.methodology-side-a{color:var(--color-player-a)}.methodology-side-b{color:var(--color-player-b)}.methodology-fill-a{background:var(--color-player-a)}.methodology-fill-b{background:var(--color-player-b)}.methodology-inset{margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-ink-band);color:var(--color-on-ink);border:1px solid var(--color-ink-line)}.methodology-inset-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.methodology-inset-eyebrow{margin:0;font-size:var(--text-label);display:inline-flex;align-items:baseline;gap:.12em}.methodology-inset-eyebrow-owl{color:var(--color-accent);font-family:var(--font-mono);font-weight:var(--weight-bold);letter-spacing:.08em;text-transform:uppercase}.methodology-inset-eyebrow-sense{color:var(--color-on-ink);font-family:var(--font-hand);font-size:1.55em;font-weight:600;letter-spacing:.01em;text-transform:none;line-height:1}.methodology-inset-value{font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;padding:4px 8px;border-radius:999px;border:1px solid}.methodology-inset-value-strong{color:var(--color-result-win-fill)}.methodology-inset-value-moderate{color:var(--color-court)}.methodology-inset-value-none,.methodology-inset-value-slight{color:var(--color-on-ink-muted)}.methodology-inset-dual{margin-bottom:var(--space-4)}.methodology-inset-dual-labels{display:flex;justify-content:space-between;gap:var(--space-3);font-size:clamp(1.1rem,2.4vw,1.45rem);font-weight:700;margin-bottom:10px}.methodology-inset-dual-name{color:var(--color-on-ink)}.methodology-inset-dual-track{height:10px;border-radius:999px;background:var(--color-player-b);overflow:hidden}.methodology-inset-dual-fill{display:block;height:100%}.methodology-odds{margin-top:14px;padding:12px;border-radius:var(--radius-md,8px);border:1px solid var(--color-ink-line);background:var(--color-ink-elevated)}.methodology-odds-title{display:inline-flex;align-items:center;gap:6px;margin:0 0 10px;font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-on-ink-muted)}.methodology-odds-help{width:15px;height:15px;border-color:color-mix(in srgb,var(--color-on-ink-muted) 70%,transparent);color:var(--color-on-ink-soft);font-size:10px;font-weight:700;line-height:1;text-transform:none}.odds-help-modal-backdrop{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:max(16px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(16px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px));background:color-mix(in srgb,var(--color-ink-band) 68%,transparent)}.odds-help-modal-backdrop[hidden]{display:none}.odds-help-modal{display:flex;flex-direction:column;width:min(560px,100%);max-height:min(88dvh,720px);overflow:hidden;border-radius:20px;background:var(--color-surface);box-shadow:0 30px 80px color-mix(in srgb,var(--color-ink-band) 45%,transparent);color:var(--color-text)}.odds-help-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px 18px;background:var(--color-ink-band)}.odds-help-modal-eyebrow{margin:0 0 6px;color:var(--color-on-ink-muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}.odds-help-modal-header h2{margin:0;color:var(--color-on-ink);font-size:clamp(22px,3vw,28px);font-weight:var(--weight-bold);letter-spacing:-.03em;line-height:1.15}.odds-help-modal-lede{margin:10px 0 0;max-width:40ch;color:var(--color-on-ink-soft);font-size:14px;line-height:1.45}.odds-help-modal-close{display:grid;place-items:center;flex-shrink:0;width:32px;height:32px;padding:0;border:1px solid var(--color-ink-line);border-radius:999px;background:transparent;color:var(--color-on-ink-soft);font-size:20px;line-height:1;cursor:pointer}.odds-help-modal-close:focus-visible,.odds-help-modal-close:hover{border-color:var(--color-on-ink-soft);color:var(--color-on-ink);outline:none}.odds-help-modal-body{display:grid;grid-gap:14px;gap:14px;overflow:auto;padding:20px 24px 24px}.odds-help-card{padding:16px 18px;border:1px solid var(--color-border-subtle);border-radius:14px;background:var(--color-bg)}.odds-help-card h3{margin:0 0 10px;font-size:16px;font-weight:var(--weight-bold);letter-spacing:-.02em}.odds-help-card p{margin:0 0 10px;color:var(--color-text-muted);font-size:14px;line-height:1.5}.odds-help-card p:last-child{margin-bottom:0}.odds-help-example{color:var(--color-text)!important;font-weight:var(--weight-semibold)}.odds-help-footnote{margin:2px 2px 0;color:var(--color-text-muted);font-size:13px;line-height:1.45}.methodology-odds-table{width:100%;border-collapse:collapse;font-size:12px;font-family:var(--font-mono);letter-spacing:.02em}.methodology-odds-table td,.methodology-odds-table th{padding:6px 4px;text-align:right;font-weight:600}.methodology-odds-table thead th{font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--color-on-ink-muted)}.methodology-odds-table th[scope=row],.methodology-odds-table thead th:first-child{text-align:left}.methodology-odds-row-a td,.methodology-odds-row-a th{color:var(--color-player-a)}.methodology-odds-row-b td,.methodology-odds-row-b th{color:var(--color-player-b)}.methodology-odds-edge-pos{color:var(--color-court)!important}.match-length{position:relative;overflow:hidden;margin:0 0 var(--space-4);padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-ink-elevated);color:var(--color-on-ink);border:1px solid var(--color-ink-line)}.match-length-sample-badge{position:absolute;top:0;right:0;z-index:2;display:inline-flex;align-items:center;max-width:min(100%,9.5rem);height:1.5rem;padding:0 10px;border-radius:0 var(--radius-lg) 0 var(--radius-chip);background:color-mix(in srgb,var(--color-on-ink) 12%,transparent);color:var(--color-on-ink-muted);font-family:var(--font-mono);font-size:8px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;cursor:help}.match-length-head{margin-bottom:var(--space-3);display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.match-length-lean{flex-shrink:0;font-size:10px;font-family:var(--font-mono);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--color-court)}.match-length-lean-soft{color:var(--color-on-ink-muted);font-weight:500;text-transform:none;letter-spacing:.02em}.match-length-has-sample .match-length-head{padding-right:6.5rem}.match-length .match-length-eyebrow{margin:0;display:block;font-size:10px;font-family:var(--font-mono);font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-on-ink-muted)}.match-length-line{margin:0 0 var(--space-3);text-align:center;font-size:var(--text-body);font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--color-on-ink)}.match-length-dual{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-3);gap:var(--space-3);margin-bottom:12px}.match-length-side{display:grid;grid-gap:2px;gap:2px}.match-length-under{text-align:left}.match-length-over{text-align:right}.match-length-side-label{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-on-ink-muted)}.match-length-side-pct{font-size:clamp(1.25rem,3vw,1.7rem);font-weight:700;line-height:1.1}.match-length-side-fair-accent,.match-length-side-pct-accent{color:var(--color-court)}.match-length-edge,.match-length-side-fair,.match-length-side-market{font-size:11px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.04em;color:var(--color-on-ink-muted)}.match-length-edge-pos{color:var(--color-court)}.match-length-track{display:flex;height:10px;border-radius:999px;overflow:hidden;background:var(--color-ink-elevated)}.match-length-fill-under{display:block;height:100%;background:color-mix(in srgb,var(--color-on-ink) 28%,transparent)}.match-length-fill-over{display:block;height:100%;background:var(--color-court)}.methodology-inset-engines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:var(--space-3);gap:var(--space-3)}.methodology-inset-card{position:relative;padding:var(--space-3);border-radius:var(--radius-md,8px);background:var(--color-ink-elevated);border:1px solid var(--color-ink-line)}.methodology-inset-card-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:6px}.methodology-inset-card-label{font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-on-ink-muted)}.methodology-inset-card-meta{display:inline-flex;align-items:center;gap:8px}.methodology-inset-card-weight{font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--color-on-ink-soft)}.methodology-inset-card-title{margin:0 0 8px;font-size:var(--text-body);font-weight:700;color:var(--color-on-ink)}.methodology-inset-lean-line{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:8px;gap:8px;margin:0 0 6px;font-size:11px;font-family:var(--font-mono);font-weight:700;text-transform:uppercase;letter-spacing:.04em}.methodology-inset-lean-mid{text-align:center}.methodology-inset-lean-even{color:var(--color-on-ink-muted)}.methodology-inset-card-track{height:6px;border-radius:999px;background:var(--color-player-b);overflow:hidden;margin-bottom:10px}.methodology-inset-card-fill{display:block;height:100%}.methodology-inset-signals{list-style:none;margin:0;padding:0;display:grid;grid-gap:16px;gap:16px}.methodology-inset-signal-row{display:flex;justify-content:space-between;gap:10px;font-size:var(--text-small)}.methodology-inset-signal-label,.methodology-inset-signal-row{color:var(--color-on-ink-soft)}.methodology-inset-signal-vals{font-family:var(--font-mono);white-space:nowrap}.methodology-inset-signal-note,.methodology-inset-signal-sep{color:var(--color-on-ink-muted)}.methodology-inset-signal-note{display:block;margin-top:2px;font-size:11px}@media (max-width:720px){.methodology-odds-table{font-size:11px}.match-length-dual{gap:var(--space-2)}.methodology-inset-engines{grid-template-columns:1fr}}.methodology-inset-info{position:relative}.methodology-inset-info-btn{width:18px;height:18px;border-radius:999px;border:1px solid var(--color-ink-line);background:transparent;color:var(--color-on-ink-soft);font-size:11px;font-family:var(--font-mono);line-height:1;cursor:pointer;padding:0}.methodology-inset-info-btn:hover,.methodology-inset-info-btn[aria-expanded=true]{border-color:var(--color-court);color:var(--color-court)}.methodology-inset-popover{position:absolute;right:0;top:calc(100% + 8px);z-index:5;width:min(260px,70vw);padding:10px 12px;border-radius:8px;background:var(--color-nav-active);border:1px solid var(--color-ink-line);box-shadow:0 10px 28px color-mix(in srgb,var(--color-ink-band) 45%,transparent);color:var(--color-on-ink-soft);font-size:12px;line-height:1.45}.methodology-inset-popover p{margin:0 0 8px}.methodology-inset-popover p:last-child{margin-bottom:0}.match-card-model{display:inline-flex;align-items:center;gap:6px}.match-card-value{font-size:10px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em;padding:2px 6px;border-radius:999px;border:1px solid}.match-card-value-strong{color:var(--color-success)}.match-card-value-moderate{color:var(--color-accent)}.match-card-value-slight{color:var(--color-muted)}.match-card-model-pct{font-family:var(--font-mono);font-size:var(--text-label)}.match-card-model-preview{font-size:10px;color:var(--color-muted);text-transform:uppercase}.site-header-desktop,.site-header-end{display:flex;align-items:center;gap:var(--space-4);min-width:0}.mobile-site-menu{display:none;position:relative;flex-shrink:0}.mobile-site-menu-trigger{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:var(--radius-control);background:transparent;color:var(--color-on-ink);cursor:pointer}.mobile-site-menu-trigger:focus-visible{outline:2px solid var(--color-court);outline-offset:2px}.mobile-site-menu-icon{display:flex;flex-direction:column;justify-content:center;gap:5px;width:18px;height:14px}.mobile-site-menu-icon>span{display:block;width:100%;height:2px;border-radius:1px;background:currentColor}.mobile-site-menu-panel{position:absolute;top:calc(100% + 10px);right:0;left:auto;z-index:40;width:18.5rem;padding:4px 0;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 12px 32px color-mix(in srgb,var(--color-ink-band) 18%,transparent);color:var(--color-text)}.mobile-site-menu-identity{display:flex;align-items:center;gap:12px;padding:12px 14px 10px}.mobile-site-menu-identity .account-menu-avatar{background:color-mix(in srgb,var(--color-ink-band) 12%,transparent);color:var(--color-text-strong);flex-shrink:0}.mobile-site-menu-identity-text{min-width:0}.mobile-site-menu-section{padding:4px 0;border-top:1px solid var(--color-border-subtle)}.site-nav--menu{display:flex;flex-direction:column;align-items:stretch;gap:0;font-family:inherit;font-size:inherit}.account-menu-item.site-nav-menu-link,.site-nav-menu-link{display:flex;align-items:center;gap:10px}.site-nav-menu-glyph{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:1.25rem;height:1.25rem;color:var(--color-text-muted)}.site-nav-menu-link.is-active .site-nav-menu-glyph,.site-nav-menu-link:hover .site-nav-menu-glyph{color:var(--color-text)}.site-nav-menu-glyph svg{display:block}.site-nav-menu-link.is-active{background:var(--color-accent-wash);font-weight:var(--weight-semibold)}@media (max-width:720px){.site-header-desktop{display:none}.mobile-site-menu{display:block}}.account-menu{position:relative;flex-shrink:0}.account-menu-trigger{display:inline-flex;align-items:center;justify-content:center;padding:0;border:0;background:transparent;cursor:pointer;border-radius:999px}.account-menu-trigger:focus-visible{outline:2px solid var(--color-court);outline-offset:2px}.account-menu-avatar{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:color-mix(in srgb,var(--color-on-ink) 16%,transparent);color:var(--color-on-ink);font-family:var(--font-mono);font-size:12px;font-weight:var(--weight-semibold);letter-spacing:.04em}.account-menu-dropdown{position:absolute;top:calc(100% + 10px);right:0;z-index:40;width:min(17.5rem,calc(100vw - 1.5rem));padding:4px 0;border:1px solid var(--color-border);border-radius:12px;background:var(--color-surface);box-shadow:0 12px 32px color-mix(in srgb,var(--color-ink-band) 18%,transparent);color:var(--color-text)}.account-menu-identity{padding:12px 14px 10px}.account-menu-name{margin:0;font-size:.95rem;font-weight:var(--weight-semibold);color:var(--color-text-strong)}.account-menu-mail,.account-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-mail{margin:2px 0 0;font-size:.8rem;color:var(--color-text-muted)}.account-menu-section{padding:4px 0;border-top:1px solid var(--color-border-subtle)}.account-menu-item{display:block;width:100%;padding:10px 14px;border:0;background:transparent;font:inherit;font-size:.95rem;text-align:left;cursor:pointer}.account-menu-item,.account-menu-item:hover{color:var(--color-text);text-decoration:none}.account-menu-item:hover{background:var(--color-accent-wash)}.account-menu-item--danger{color:var(--color-danger)}.account-menu-item--danger:hover{background:color-mix(in srgb,var(--color-danger) 8%,transparent);color:var(--color-danger)}.account-page{width:100%;max-width:46rem;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-6);padding:0 0 var(--space-12)}.account-hero{display:flex;align-items:center;gap:var(--space-5)}.account-hero-avatar{flex:0 0 auto;width:4rem;height:4rem;display:grid;place-items:center;border-radius:var(--radius-pill);background:var(--color-court);color:var(--color-text-strong);font-size:var(--text-section);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight)}.account-hero-copy{min-width:0}.account-hero-copy h1{margin:0;font-size:var(--text-display-sm);line-height:var(--leading-display);letter-spacing:var(--tracking-tight)}.account-hero-meta{margin:var(--space-1) 0 0;color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-micro);letter-spacing:var(--tracking-micro)}.account-tabs{display:flex;flex-wrap:wrap;gap:var(--space-2);padding:var(--space-1);width:-moz-fit-content;width:fit-content;max-width:100%;background:color-mix(in srgb,var(--color-border) 55%,var(--color-bg))}.account-tab,.account-tabs{border-radius:var(--radius-pill)}.account-tab{padding:var(--space-2) var(--space-5);color:var(--color-text-muted);font-size:var(--text-ui);font-weight:var(--weight-semibold);text-decoration:none}.account-tab.is-active{background:var(--color-surface);color:var(--color-text-strong);box-shadow:0 1px 2px color-mix(in srgb,var(--color-text) 10%,transparent)}.account-stack{display:flex;flex-direction:column;gap:var(--space-5)}.account-card,.account-plan-banner,.account-plan-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-card)}.account-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-5)}.account-card-head h2,.account-plan-banner h2,.account-plan-card h3{margin:0;font-size:var(--text-section);font-weight:var(--weight-bold)}.account-card-head p,.account-plan-banner p{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:var(--text-ui);line-height:var(--leading-body)}.account-field-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-4);gap:var(--space-4)}.account-field{display:flex;flex-direction:column;gap:var(--space-2);min-width:0}.account-field span{font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-faint)}.account-field input{width:100%;min-height:2.75rem;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-toggle);background:var(--color-surface);color:var(--color-text-strong);font:inherit;font-size:var(--text-ui)}.account-field input:disabled,.account-field input[readonly]{background:var(--color-border-subtle);color:var(--color-text-muted)}.account-card-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.account-btn{min-height:2.5rem;padding:var(--space-2) var(--space-5);border:none;border-radius:var(--radius-pill);font:inherit;font-size:var(--text-ui);font-weight:var(--weight-semibold);cursor:pointer}.account-btn-ink{background:var(--color-ink-band);color:var(--color-on-ink)}.account-btn-court{background:var(--color-court);color:var(--color-text-strong)}.account-btn:disabled{opacity:.55;cursor:not-allowed}.account-card-foot,.account-card-note{margin:0;font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-faint)}.account-choice-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}.account-choice{min-height:2.5rem;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-muted);font:inherit;font-size:var(--text-ui);font-weight:var(--weight-semibold);cursor:pointer}.account-choice.is-on{background:var(--color-ink-band);border-color:var(--color-ink-band);color:var(--color-on-ink)}.account-choice:disabled{opacity:.45;cursor:not-allowed}.account-plan-banner{display:flex;align-items:center;justify-content:space-between;gap:var(--space-5);padding:var(--space-6)}.account-plan-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:var(--space-4);gap:var(--space-4)}.account-plan-card{padding:var(--space-6);display:flex;flex-direction:column;gap:var(--space-4)}.account-plan-card.is-featured{border-color:color-mix(in srgb,var(--color-text) 18%,var(--color-border))}.account-plan-card header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.account-plan-badge{padding:.2rem var(--space-3);border-radius:var(--radius-pill);background:var(--color-border-subtle);color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:var(--tracking-label);text-transform:uppercase}.account-plan-badge.is-court{background:var(--color-court);color:var(--color-text-strong)}.account-plan-price{display:flex;align-items:baseline;gap:var(--space-2);margin:0}.account-plan-price strong{font-size:var(--text-display-sm);letter-spacing:var(--tracking-tight)}.account-plan-alt,.account-plan-price span{margin:0;font-family:var(--font-mono);font-size:var(--text-chip);letter-spacing:var(--tracking-label);text-transform:uppercase;color:var(--color-text-faint)}.account-plan-card ul{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-ui)}.account-plan-card li{padding-left:.9rem;position:relative}.account-plan-card li:before{content:"·";position:absolute;left:0}.account-billing-legal{text-align:center}.account-billing-extra{display:flex}.unlock-pro--flush{min-width:0}.billing-unconfigured{margin:0;color:var(--color-text-muted)}.billing-manage{display:flex;flex-direction:column;align-items:flex-start}@media (max-width:40rem){.account-field-grid,.account-plan-banner,.account-plan-grid{grid-template-columns:1fr;flex-direction:column;align-items:stretch}}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-shell{min-height:100vh;display:flex;flex-direction:column;background:radial-gradient(ellipse 80% 50% at 50% -10%,color-mix(in srgb,var(--color-court) 22%,transparent),transparent),var(--color-bg)}.auth-header{display:flex;align-items:center;padding:var(--space-5) var(--gutter);background:var(--color-ink-band);color:var(--color-on-ink)}.auth-main{flex:1 1;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-10) var(--gutter)}.auth-card{width:min(26rem,100%);display:flex;flex-direction:column;gap:var(--space-4)}.auth-title{font-size:var(--text-display-sm);line-height:var(--leading-display)}.auth-lead{margin:0;color:var(--color-text-muted);font-size:var(--text-body,1rem);line-height:1.45}.auth-form,.auth-oauth{display:flex;flex-direction:column;gap:var(--space-3)}.auth-field{display:flex;flex-direction:column;gap:var(--space-2)}.auth-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.04em;text-transform:uppercase;color:var(--color-text-muted)}.auth-input{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:var(--color-text);font:inherit}.auth-input:focus{outline:2px solid var(--color-accent-ring);outline-offset:1px;border-color:var(--color-accent)}.auth-oauth-btn,.auth-submit{width:100%;padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);cursor:pointer}.auth-submit{border:0;background:var(--color-accent);color:var(--color-on-accent);font:inherit;font-weight:var(--weight-semibold)}.auth-submit:hover:not(:disabled){background:var(--color-accent-hover)}.auth-oauth-btn:disabled,.auth-submit:disabled{opacity:.65;cursor:wait}.auth-oauth-btn{gap:12px;min-height:44px;font-family:var(--font-roboto),"Roboto",var(--font-sans);font-size:14px;font-weight:500;letter-spacing:.01em;line-height:1.2}.auth-oauth-btn,.auth-oauth-icon{display:inline-flex;align-items:center;justify-content:center}.auth-oauth-icon{flex-shrink:0;width:20px;height:20px}.auth-oauth-icon img{display:block;width:18px;height:18px}.auth-oauth-btn--google{border:1px solid #747775;background:#ffffff;color:#1f1f1f}.auth-oauth-btn--google:hover:not(:disabled){background:#f8f9fa;box-shadow:0 1px 2px color-mix(in srgb,#000 12%,transparent)}.auth-oauth-btn--google .auth-oauth-icon{background:#ffffff}.auth-oauth-btn--apple{border:1px solid #000000;background:#000000;color:#ffffff}.auth-oauth-btn--apple:hover:not(:disabled){background:#1a1a1a}.auth-oauth-icon--apple{color:#ffffff}.auth-divider{display:flex;align-items:center;gap:var(--space-3);color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-label);text-transform:uppercase;letter-spacing:.06em}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;height:1px;background:var(--color-border)}.auth-error{color:var(--color-danger)}.auth-error,.auth-info{margin:0;font-size:.95rem}.auth-info{color:var(--color-accent)}.auth-aside{margin:0;font-size:.9rem}.auth-footer-link{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:.95rem}.nav-sign-in{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:36px;padding:.45rem .95rem;border-radius:999px;background:var(--color-accent);font-family:var(--font-sans);font-size:.9rem;font-weight:var(--weight-semibold);line-height:1}.nav-sign-in,.nav-sign-in:hover{color:var(--color-on-accent);text-decoration:none}.nav-sign-in:hover{background:var(--color-accent-hover)}.nav-sign-in:focus-visible{outline:2px solid var(--color-court);outline-offset:2px}.home-auth-locked-wrap{position:relative;margin-top:var(--space-6);min-height:22rem;border-radius:var(--radius-panel,16px);overflow:hidden}.home-auth-locked-wrap:not(:has(.home-auth-locked-bg)) .home-auth-glass{position:relative;inset:auto;min-height:22rem}.home-auth-locked-bg{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:blur(7px) saturate(.85);opacity:.55;transform:scale(1.01);max-height:28rem;overflow:hidden}.home-auth-glass{position:absolute;inset:0;z-index:2;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-8) var(--space-5);background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg) 28%,transparent) 0,color-mix(in srgb,var(--color-bg) 55%,transparent) 40%,color-mix(in srgb,var(--color-bg) 72%,transparent) 100%);backdrop-filter:blur(14px) saturate(1.15);-webkit-backdrop-filter:blur(14px) saturate(1.15)}.home-auth-glass-panel{width:min(26rem,100%);padding:var(--space-6);border:1px solid color-mix(in srgb,var(--color-border) 70%,transparent);border-radius:16px;background:color-mix(in srgb,var(--color-surface) 78%,transparent);box-shadow:0 18px 48px color-mix(in srgb,var(--color-ink-band) 14%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.auth-card--overlay{width:100%;gap:var(--space-3)}.auth-card--overlay .auth-title{font-size:clamp(1.45rem,2.4vw,1.85rem)}.auth-locked-page{position:relative;min-height:min(70vh,42rem);border-radius:var(--radius-panel,16px);overflow:hidden}.auth-locked-page--section{margin-top:var(--space-4);min-height:min(56vh,34rem)}.auth-locked-page-bg{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;filter:blur(8px) saturate(.88);opacity:.58;max-height:min(78vh,48rem);overflow:hidden}.auth-locked-page--section .auth-locked-page-bg{max-height:min(56vh,36rem)}.auth-locked-page-glass{position:absolute;inset:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:var(--space-8) var(--space-5);background:linear-gradient(180deg,color-mix(in srgb,var(--color-bg) 22%,transparent) 0,color-mix(in srgb,var(--color-bg) 52%,transparent) 45%,color-mix(in srgb,var(--color-bg) 70%,transparent) 100%);backdrop-filter:blur(12px) saturate(1.1);-webkit-backdrop-filter:blur(12px) saturate(1.1)}.player-auth-lock-heading{margin:var(--space-6) 0 0}.pro-locked-panel{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-3);text-align:center}.pro-locked-eyebrow{margin:0;color:var(--color-muted);font-size:.78rem;font-weight:var(--weight-semibold);letter-spacing:.08em;text-transform:uppercase}.pro-locked-title{margin:0;font-size:clamp(1.45rem,2.4vw,1.85rem);line-height:1.15}.pro-locked-lead{margin:0;color:var(--color-muted);font-size:.98rem;line-height:1.45}.pro-locked-panel .unlock-pro{display:flex;justify-content:center;min-width:0}.pro-locked-plans{margin:0;color:var(--color-muted);font-size:.85rem}@media (max-width:640px){.site-header-end{gap:var(--space-2)}.home-auth-glass{padding:var(--space-6) var(--space-4)}.home-auth-glass-panel{padding:var(--space-5)}.nav-sign-in{padding:.4rem .8rem;font-size:.85rem}}