.full-player-profile{--forest:#123e30;--acid:#d5f17b;--soft:#edf1e8}.profile-hero{background:radial-gradient(ellipse at 95% 0,#397052 0,transparent 48%),linear-gradient(135deg,#10382b,#173f32);color:#f6faee;padding:30px 36px;border-radius:22px;overflow:hidden;position:relative;margin-bottom:20px}.profile-hero:after{content:'';position:absolute;width:360px;height:360px;border:1px solid #ffffff15;border-radius:50%;right:-90px;top:50px;box-shadow:0 0 0 40px #ffffff06,0 0 0 80px #ffffff04;pointer-events:none}.profile-topline{display:flex;justify-content:space-between;gap:16px;font-size:0.6875rem;letter-spacing:2px;color:#c4d9bc;position:relative;z-index:1}.profile-identity{display:flex;align-items:center;gap:24px;padding:42px 0;position:relative;z-index:1}.profile-monogram{width:110px;height:110px;flex-shrink:0;border:1px solid #d5f17b77;background:#d5f17b10;border-radius:50%;display:grid;place-items:center;color:var(--acid);font-size:2.25rem;font-weight:800;letter-spacing:-2px}.profile-kicker{font-size:0.75rem;font-weight:800;letter-spacing:4px;color:var(--acid)}.profile-identity h1{font-size:clamp(2.375rem,6vw,4.125rem);letter-spacing:-2.5px;margin:8px 0 12px;color:#f7faef}.profile-identity p{color:#d2dfcb;margin:0}.profile-tag{display:inline-block;border:1px solid #8aab7755;border-radius:30px;padding:4px 10px;margin-left:9px;font-size:0.6875rem;color:var(--acid)}.profile-hero-foot{border-top:1px solid #ffffff20;padding-top:19px;display:flex;justify-content:space-between;gap:16px;font-size:0.6875rem;letter-spacing:1px;color:#c4d9bc}.profile-hero-foot small{display:block;letter-spacing:0;font-size:0.625rem;opacity:.75;margin-top:3px}.profile-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}.profile-metrics article{background:#fffdf7;border:1px solid #dce2d5;border-radius:14px;padding:22px 19px}.profile-metrics span{display:block;font-size:0.6875rem;font-weight:650;color:#5a6d60}.profile-metrics strong{display:block;font-size:2.625rem;letter-spacing:-2px;line-height:1.4;font-variant-numeric:tabular-nums}.profile-metrics small{font-size:0.625rem;color:#65756a}.profile-chart-panel{padding:28px!important}.profile-chart-panel h2,.profile-lower h2{margin-top:8px}.chart-toggles{display:flex;gap:20px;flex-wrap:wrap;margin:22px 0 0}.chart-toggles label{display:flex;align-items:center;gap:7px;font-size:0.75rem;cursor:pointer}.chart-toggles input{width:16px;min-height:16px;height:16px;accent-color:#286b46}.legend-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#286b46}.legend-dot.starting{background:#6b8478}.rating-chart{width:100%;height:auto;display:block;margin-top:8px;overflow:visible}.rating-chart text{font:0.75rem system-ui;fill:#65756a}.rating-chart circle:focus{outline:2px solid #97bf42;outline-offset:4px}.chart-note{font-size:0.6875rem;color:#65756a;line-height:1.6;margin:20px 0 0}.profile-lower{display:grid;grid-template-columns:1.3fr 1fr;gap:20px}.profile-lower>.panel{min-width:0}.rating-change{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:10px;font-size:0.75rem;padding:10px 0}.rating-change strong{text-align:right;font-variant-numeric:tabular-nums}.change-track{position:relative;height:26px;background:#edf1e8;border-radius:5px;overflow:hidden}.change-zero{position:absolute;top:0;bottom:0;width:1px;background:#9bab98;left:50%}.change-bar{position:absolute;top:5px;bottom:5px;background:#397b51;border-radius:3px}.change-bar.negative{background:#af7058}.change-track small{position:absolute;inset:0;text-align:center;background:#edf1e8;color:#70806d;font-size:0.625rem;line-height:26px}.profile-career{background:#eaf0df}.profile-career>strong{font-size:4rem;line-height:1.2;display:block;letter-spacing:-3px}.profile-career>p{font-size:0.8125rem}.profile-team-chip{display:inline-block;padding:7px 12px;border-radius:100px;background:white;font-size:0.75rem;margin:0 5px 5px 0}.profile-timeline article{display:grid;grid-template-columns:78px 1fr;gap:20px}.timeline-year{padding-top:25px;font-weight:800;font-size:1.1875rem;position:relative}.timeline-year i{position:absolute;right:0;top:31px;width:8px;height:8px;background:#83a85c;border-radius:50%}.timeline-body{padding:22px 0;border-bottom:1px solid #dce2d5}.timeline-body h3{font-size:1.0625rem;margin:0}.timeline-body dl{display:flex;gap:50px;margin:16px 0}.timeline-body dt{font-size:0.6875rem;color:#65756a}.timeline-body dd{margin:3px 0 0;font-size:1.3125rem;font-weight:700}.timeline-body small{font-size:0.625rem}.profile-source{font-size:0.6875rem;color:#65756a;line-height:1.7;padding:0 8px 20px}.profile-finder summary{cursor:pointer;font-weight:700;font-size:0.9375rem;margin-bottom:16px}.profile-finder #player-history-list{max-height:360px;overflow:auto}#player-history-detail{scroll-margin-top:20px}@media(max-width:650px){.profile-hero{padding:22px}.profile-identity{gap:15px;padding:30px 0}.profile-monogram{width:70px;height:70px;font-size:1.625rem}.profile-identity h1{font-size:2.25rem}.profile-tag{margin:8px 0 0;display:table}.profile-topline{font-size:0.5625rem;letter-spacing:1px}.profile-hero-foot>span:last-child{display:none}.profile-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-metrics article{padding:16px}.profile-metrics strong{font-size:2.1875rem}.profile-lower{grid-template-columns:1fr;gap:0}.profile-chart-panel{padding:18px!important}.profile-timeline article{grid-template-columns:53px 1fr;gap:14px}.timeline-year{font-size:1rem}.timeline-body dl{gap:24px}.timeline-body dd{font-size:1.125rem}.timeline-body .row{align-items:start;flex-wrap:wrap;gap:8px}.chart-toggles{gap:12px}.rating-chart text{font-size:0.875rem}}
.match-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0}.match-filters label{font-size:0.6875rem}.match-summary{margin:20px 0;font-weight:700;font-size:0.8125rem}.match-card{border:1px solid var(--line);border-radius:13px;padding:20px;margin:12px 0;background:#fff}.match-card-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:0.6875rem;font-weight:700;color:var(--muted);margin-bottom:12px}.match-card h3{font-size:1.25rem;margin:0 0 6px}.match-card p{font-size:0.75rem;margin:5px 0 12px}.match-outcome{border-radius:30px;padding:4px 10px;background:#edf0e8;white-space:nowrap}.outcome-W{background:#e4efcf;color:#315322}.outcome-L{background:#f7e8e0;color:#8d4f35}.outcome-T{background:#eee7d2;color:#66551f}.match-scores{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:15px 0;border-top:1px solid var(--line)}.match-scores span{font-size:0.625rem;color:var(--muted);display:block}.match-scores strong{font-size:1.125rem;display:block;font-variant-numeric:tabular-nums}.match-card summary{font-size:0.75rem;cursor:pointer;color:var(--muted)}.match-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;font-size:0.75rem}.match-detail-grid dd{margin:3px 0;font-weight:700}.match-detail-grid dt{color:var(--muted)}@media(max-width:650px){.match-filters{grid-template-columns:1fr 1fr}.match-scores{grid-template-columns:1fr 1fr}.match-card{padding:15px}.match-card-top{align-items:flex-start}}
.match-chart-grid{display:grid;grid-template-columns:.85fr 1.5fr;gap:18px;margin:20px 0 28px}.match-chart-box{background:#f6f8ef;border:1px solid var(--line);border-radius:15px;padding:20px;min-width:0}.match-chart-box h3{font-size:1.4375rem;margin:8px 0 15px}.win-donut{display:flex;align-items:center;gap:12px}.win-donut svg{width:155px;max-width:55%;flex-shrink:0}.donut-number{font:bold 1.5625rem system-ui;fill:#18352d}.donut-label{font:0.5rem system-ui;letter-spacing:1px;fill:#65756a}.record-legend{display:flex;gap:8px;align-items:center;font-size:0.6875rem;margin:10px 0}.record-legend i{width:8px;height:8px;border-radius:50%;flex-shrink:0}.record-legend strong{margin-left:auto}.round-rating-stats{display:flex;gap:24px;font-size:0.625rem;color:var(--muted)}.round-rating-stats strong{display:block;font-size:1.5625rem;color:var(--ink);letter-spacing:-1px}@media(max-width:750px){.match-chart-grid{grid-template-columns:1fr}.win-donut{justify-content:center;gap:25px}.win-donut svg{width:170px}.match-chart-box{padding:16px}}
[data-weekly-profile] .row{align-items:start}[data-weekly-profile] label{min-width:140px}.weekly-values{margin:12px 0;font-size:0.75rem}.weekly-values summary{cursor:pointer;color:var(--muted)}.weekly-value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:15px}.weekly-value-grid>div{padding:10px;background:#edf1e8;border-radius:8px}.weekly-value-grid span{font-size:0.625rem;color:var(--muted);display:block}.weekly-value-grid strong{font-size:1.25rem}.profile-lower{grid-template-columns:1fr}@media(max-width:650px){.weekly-value-grid{grid-template-columns:repeat(2,1fr)}[data-weekly-profile] .row{flex-wrap:wrap}}

[data-weekly-plot]{position:relative}.weekly-match-tooltip{position:absolute;z-index:10;width:300px;max-width:100%;max-height:340px;overflow:auto;box-sizing:border-box;white-space:pre-line;background:#173f32;color:#f7faef;border:1px solid #66866d;border-radius:12px;padding:16px 18px;box-shadow:0 8px 28px #123e3033;font:0.75rem/1.55 system-ui}.weekly-match-tooltip[hidden]{display:none}[data-weekly-point]{cursor:pointer;stroke-width:3;pointer-events:all}

.weekly-match-tooltip{width:340px;max-height:460px;padding:0;white-space:normal;background:#fffdf7;color:#193c2e;border:1px solid #d4dfcd;box-shadow:0 14px 40px #123e3033;border-radius:16px;font-size:0.75rem;line-height:1.45}.weekly-tip-header{display:flex;justify-content:space-between;align-items:center;padding:17px 20px;background:#173f32;color:#f7faef}.weekly-tip-header span{display:block;font-size:0.5625rem;letter-spacing:1.2px;color:#c7d9bd}.weekly-tip-header strong{display:block;font-size:1.25rem;line-height:1.3;margin-top:3px}.weekly-tip-rating{text-align:right}.weekly-tip-rating strong{font-size:1.875rem;color:#d5f17b;font-variant-numeric:tabular-nums;margin:0}.weekly-tip-rating span{font-size:0.5rem;letter-spacing:.7px}.weekly-tip-match{padding:16px 20px}.weekly-tip-match+.weekly-tip-match{border-top:1px solid #e2e8dc}.weekly-tip-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.weekly-tip-top>strong{font-size:0.75rem}.weekly-tip-top strong span{font-weight:400;color:#637565}.weekly-tip-result{font-size:0.625rem;font-weight:700;border-radius:20px;padding:3px 9px;background:#edf0e8}.weekly-tip-result[data-result=W]{color:#326020;background:#e4efcf}.weekly-tip-result[data-result=L]{color:#934f37;background:#f8e8df}.weekly-tip-result[data-result=T]{color:#75602c;background:#f3ecd6}.weekly-tip-course{font-size:0.625rem;color:#65756a;margin:6px 0 11px}.weekly-tip-opponent{font-size:0.8125rem;font-weight:650;margin:0;line-height:1.45}.weekly-tip-opponent>span{font-weight:400;color:#65756a}.weekly-tip-partner{font-size:0.6875rem;color:#65756a;margin:4px 0 0}.weekly-tip-scores{display:flex;gap:25px;margin-top:13px}.weekly-tip-scores span{display:block;font-size:0.5rem;letter-spacing:.7px;color:#65756a}.weekly-tip-scores strong{display:block;font-size:1.375rem;font-weight:700;line-height:1.3;font-variant-numeric:tabular-nums}.weekly-tip-round-rating{margin-left:auto;padding-left:18px;border-left:1px solid #e2e8dc}.weekly-tip-empty{margin:0;padding:18px 20px;color:#65756a}

.round-aces{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 4px}.ace-badge{display:inline-flex;align-items:center;border:1px solid #d8bc63;background:#fff3bd;color:#624b0b;border-radius:999px;padding:5px 11px;font-size:0.75rem;font-weight:800;letter-spacing:.03em}
