/* Shared presentation system for competition, result and rating pages. */
.adb-main{
 --adb-type-page:38px;--adb-type-heading:20px;--adb-type-metric:28px;--adb-type-body:14px;--adb-type-meta:12px;
 --adb-space-1:4px;--adb-space-2:8px;--adb-space-3:12px;--adb-space-4:16px;--adb-space-6:24px;--adb-space-8:32px;
 font-size:var(--adb-type-body);line-height:1.5;padding-top:var(--adb-space-8);padding-bottom:48px
}
.adb-main h1{font-size:var(--adb-type-page);font-weight:550;line-height:1.4;letter-spacing:normal;max-width:none;min-width:0;margin:0}
.adb-main h2,.adb-main .adb-section>h2,.adb-main .adb-section-heading h2,.adb-main .adb-table-toolbar h2,.adb-main .adb-class-heading>h2{
 font-size:var(--adb-type-heading);font-weight:550;line-height:1.4;margin:0 0 var(--adb-space-3)
}
.adb-main h3,.adb-main .adb-distance-round>h3{font-size:var(--adb-type-body);font-weight:600;line-height:1.4;margin:var(--adb-space-6) 0 var(--adb-space-3)}
.adb-main .adb-distance-round>h3{margin-top:0}
.adb-main .adb-profile-heading,.adb-main .adb-title-row{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--adb-space-2) var(--adb-space-4)}
.adb-main .adb-profile-heading>div{display:flex;align-items:baseline;flex-wrap:wrap;gap:var(--adb-space-2) var(--adb-space-4);width:100%}
.adb-main .adb-profile-heading h1{max-width:100%;text-indent:-2px;overflow-wrap:anywhere}
.adb-main .adb-title-row .adb-back{flex:none;margin:0 0 0 auto;padding:var(--adb-space-1) 0;font-size:var(--adb-type-body);line-height:1.4;white-space:nowrap}
.adb-main .adb-profile-heading .adb-lead,.adb-main .adb-profile-region{font-size:var(--adb-type-body);line-height:1.4;color:var(--adb-muted);margin:0;overflow-wrap:anywhere}
.adb-main .adb-lead{font-size:var(--adb-type-body);line-height:1.5;margin:var(--adb-space-2) 0}
.adb-main .adb-meta{font-size:var(--adb-type-meta);line-height:1.4;margin:var(--adb-space-2) 0 var(--adb-space-6)}
.adb-main .adb-profile-heading .adb-meta{flex-basis:100%;margin:0 0 var(--adb-space-6)}
.adb-main .adb-event-heading{margin:0 0 var(--adb-space-6)}
.adb-main .adb-event-meta{font-size:var(--adb-type-meta);line-height:1.4;gap:var(--adb-space-2) var(--adb-space-4);margin-top:var(--adb-space-2)}
.adb-main .adb-event-meta .adb-source{font-size:inherit}
.adb-main .adb-context{align-items:baseline;font-size:var(--adb-type-meta);line-height:1.4;gap:var(--adb-space-2) var(--adb-space-6);padding:var(--adb-space-4) 0}
.adb-main .adb-context strong{font-size:var(--adb-type-heading);font-weight:550;line-height:1.4}
.adb-main .adb-home-heading{padding:0;margin:0 0 var(--adb-space-6)}
.adb-main .adb-home-heading h1{margin-bottom:var(--adb-space-2)}
.adb-main .adb-home-heading>p{margin:var(--adb-space-2) 0 0;font-size:var(--adb-type-body)}
.adb-main .adb-section{margin:var(--adb-space-8) 0}
.adb-main .adb-section-heading,.adb-main .adb-class-heading{gap:var(--adb-space-4);margin-bottom:var(--adb-space-3)}
.adb-main .adb-section-heading h2,.adb-main .adb-class-heading>h2{margin:0}
.adb-main .adb-table-toolbar{gap:var(--adb-space-6);margin:var(--adb-space-6) 0 var(--adb-space-3)}
.adb-main .adb-table-toolbar h2{margin:0 0 var(--adb-space-1)}
.adb-main .adb-tabs{column-gap:var(--adb-space-6);row-gap:0;margin:var(--adb-space-4) 0 var(--adb-space-6)}
.adb-main .adb-tabs a{font-size:var(--adb-type-body);min-height:44px;padding:var(--adb-space-3) 0}
.adb-main .adb-category-form{gap:var(--adb-space-4);padding:0;margin:var(--adb-space-4) 0 var(--adb-space-6)}
.adb-main .adb-category-form>div{min-width:0}
.adb-main .adb-category-form label,.adb-main .adb-directory-form label,.adb-main .adb-person-filters label,.adb-main .adb-table-search{
 font-size:var(--adb-type-meta);font-weight:500;line-height:1.4;gap:var(--adb-space-2)
}
.adb-main .adb-category-form select{min-width:0;max-width:100%}
.adb-main .adb-directory-form,.adb-main .adb-person-filters{gap:var(--adb-space-4);margin:var(--adb-space-4) 0 var(--adb-space-6)}
.adb-main input,.adb-main select,.adb-main button,.adb-main .adb-category-form button{font-size:var(--adb-type-body);min-height:44px;line-height:1.4}
/* Existing person controls declare important font values; keep their shared role explicit. */
.adb-main :is(.adb-category-form,.adb-directory-form.adb-stat-form,.adb-person-filters,.adb-table-period,.adb-archive-year-form,.adb-column-control) button.a74-select-trigger{font-size:var(--adb-type-body)!important;font-weight:400!important}
.adb-main .adb-filter-strip{margin:0 0 var(--adb-space-6)}
.adb-main .adb-medallists{gap:var(--adb-space-6);margin:var(--adb-space-6) 0}
.adb-main .adb-medallist strong{font-size:var(--adb-type-body);font-weight:550}
.adb-main .adb-medallist small{font-size:var(--adb-type-meta);line-height:1.4}
.adb-main .adb-medal-rank{font-size:var(--adb-type-metric)}
.adb-main .adb-note,.adb-main .adb-scroll-hint,.adb-main .adb-section-heading p,.adb-main .adb-table-toolbar p,
.adb-main .adb-provenance,.adb-main .adb-match-links,.adb-main .adb-match-stage,.adb-main .adb-match-name small,
.adb-main .adb-team,.adb-main .adb-pagination,.adb-main .adb-person-summary td small{font-size:var(--adb-type-meta);line-height:1.4}
.adb-main .adb-note{margin:0 0 var(--adb-space-3)}
.adb-main .adb-provenance{gap:var(--adb-space-4);margin:var(--adb-space-6) 0}
.adb-main .adb-coverage{font-size:var(--adb-type-body);margin:0 0 var(--adb-space-6)}
.adb-main .adb-table,.adb-main .adb-arrow,.adb-main .adb-score,.adb-main .adb-place,.adb-main .adb-athlete-link,
.adb-main .adb-match-name,.adb-main .adb-match-winner{font-size:var(--adb-type-body)}
.adb-main .adb-table thead th,.adb-main .adb-column-control{font-size:var(--adb-type-meta);font-weight:500;line-height:1.4}
.adb-main .adb-table thead th{padding:9px var(--adb-space-2)}
.adb-main .adb-table tbody th,.adb-main .adb-table tbody td{padding:6px var(--adb-space-2);line-height:1.4}
.adb-main .adb-table .adb-arrows{vertical-align:middle}
.adb-main .adb-duel-sums .adb-duel-gap{padding:0;border:0}
.adb-main .adb-profile-stats{gap:var(--adb-space-6);padding:var(--adb-space-6) 0 var(--adb-space-4)}
.adb-main .adb-profile-stats strong,.adb-main .adb-series-extremes strong,.adb-main .adb-person-summary td strong{
 font-size:var(--adb-type-metric);font-weight:500;line-height:1.4
}
.adb-main .adb-profile-stats strong small,.adb-main .adb-series-extremes small{font-size:var(--adb-type-body)}
.adb-main .adb-profile-stats>div>span,.adb-main .adb-profile-stats p,.adb-main .adb-series-extremes span,.adb-main .adb-chart-caption{font-size:var(--adb-type-meta);line-height:1.4}
.adb-main .adb-analysis{padding:var(--adb-space-6);margin:var(--adb-space-6) 0 var(--adb-space-8)}
.adb-main .adb-analysis-grid{gap:var(--adb-space-6)}
.adb-main .adb-chart-value,.adb-main .adb-chart-label{font-size:12px}
.adb-main .adb-match-score{font-size:var(--adb-type-heading)}
.adb-main .adb-person-summary tbody td{padding:var(--adb-space-3) var(--adb-space-2)}
.adb-main .adb-class-return{font-size:var(--adb-type-body)}
.adb-main .adb-event-copy h2{font-size:var(--adb-type-heading);max-width:none}
.adb-main .adb-event-classification,.adb-main .adb-event-copy>.adb-event-summary,.adb-main .adb-event-foot{font-size:var(--adb-type-meta)}
.adb-main .adb-event-date .adb-event-start{font-size:var(--adb-type-metric)}
@media(max-width:767px){
 .adb-main .adb-profile-stats{gap:var(--adb-space-6) var(--adb-space-4)}
 .adb-main .adb-analysis{padding:var(--adb-space-4)}
 .adb-main .adb-category-form>label{margin-bottom:var(--adb-space-2)}
 .adb-main .adb-medallists{gap:0}
 .adb-main .adb-directory-form,.adb-main .adb-person-filters{gap:var(--adb-space-3) var(--adb-space-4)}
 .adb-main .adb-person-summary{gap:0 var(--adb-space-4)}
}
/* Shared roles for sortable labels, compact rating columns and calendar cards. */
.adb-main .adb-sort,.adb-main .adb-table-period>label{font-size:var(--adb-type-meta);font-weight:500;line-height:1.4}
/* Both filter rows share the same three left-aligned columns. */
#adb-athlete-filters.adb-directory-form.adb-stat-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:var(--adb-space-4);min-width:0;width:100%;padding:0}
#adb-athlete-filters>label:nth-of-type(n){grid-column:auto;min-width:0;text-align:left;overflow-wrap:anywhere}
.adb-main .adb-rating-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:center;gap:var(--adb-space-2) var(--adb-space-6)}
.adb-rating-toolbar>div:first-child{display:contents}
.adb-main .adb-rating-toolbar h2{grid-column:1;grid-row:1;margin:0}
.adb-rating-toolbar>div:first-child>p{grid-column:1/-1;grid-row:2}
.adb-rating-search{grid-column:2;grid-row:1;display:flex;align-items:center;gap:var(--adb-space-3);min-width:0}
.adb-rating-search>label{flex:1;min-width:0}
.adb-rating-search input[type=search]{width:100%;min-width:0;height:46px;padding:10px 14px}
.adb-rating-search>button{flex:none;min-height:46px;padding:10px 16px}
@media(min-width:768px){
 .adb-main .adb-rating-toolbar{align-items:start}
 .adb-rating-toolbar>div:first-child{display:block;padding-top:9px}
 .adb-main .adb-rating-toolbar h2{margin:0 0 17px}
 .adb-rating-search{margin-top:16px}
}
@media(max-width:767px){
 .adb-main .adb-rating-toolbar{grid-template-columns:minmax(0,1fr)}
 .adb-rating-search{grid-column:1;grid-row:2}
 .adb-rating-toolbar>div:first-child>p{grid-row:3}
}
.adb-main #adb-athlete-filters .adb-table-period{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-column:1/-1;align-items:start;gap:var(--adb-space-4);width:100%;max-width:none}
.adb-main #adb-athlete-filters .adb-table-period>label:nth-child(n){grid-column:auto;min-width:0;margin:0;gap:var(--adb-space-2);text-align:left;overflow-wrap:anywhere}
body #adb-athlete-filters button.a74-select-trigger{white-space:normal;height:auto;min-height:44px;text-align:left}
.adb-main .adb-directory-count p,.adb-main .adb-mobile-region{font-size:var(--adb-type-meta);line-height:1.4}
.adb-main .adb-stat-table tbody strong{font-size:var(--adb-type-body);font-weight:500;line-height:1.4}
.adb-main .adb-stat-table thead tr:not(.adb-period-row)>.adb-sport-rank-heading{font-size:var(--adb-type-meta);padding:9px var(--adb-space-2)}
.adb-main .adb-stat-table tbody tr>.adb-sport-rank{font-size:var(--adb-type-meta);padding:6px var(--adb-space-2)}
.adb-main .adb-event-date .adb-event-end{font-size:var(--adb-type-meta)}
.adb-main .adb-event-start>.adb-event-year{font-size:inherit}
.adb-main .a74-calendar-card .adb-event-start>.adb-event-year{font-size:var(--adb-type-meta)}
.adb-main .a74-calendar-card .adb-event-copy h4,.adb-main .a74-calendar-all h4{font-size:var(--adb-type-heading);font-weight:550;line-height:1.4;margin:0 0 var(--adb-space-2)}
.adb-main .a74-calendar-schedule>h3{font-size:var(--adb-type-heading);font-weight:550;line-height:1.4;margin:var(--adb-space-8) 0 var(--adb-space-3)}
@media(max-width:767px){.adb-main .adb-event-start>.adb-event-year{font-size:var(--adb-type-meta)}}

.adb-main .adb-stat-table tbody small,.adb-main .adb-stat-table tbody .adb-mobile-region{font-size:var(--adb-type-meta);line-height:1.4}

/* Reserve a top-right navigation column; only the event title wraps. */
.adb-main .adb-event-heading .adb-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:first baseline;gap:var(--adb-space-4)}
.adb-main .adb-event-heading .adb-title-row h1{overflow-wrap:anywhere}
.adb-main .adb-event-heading .adb-title-row .adb-back{margin:0;justify-self:end;align-self:first baseline}
@media(max-width:600px){
 .adb-main .adb-event-heading .adb-title-row{grid-template-columns:minmax(0,1fr) minmax(0,112px)}
 .adb-main .adb-event-heading .adb-title-row .adb-back{white-space:normal;text-align:right}
}

@media(min-width:1024px){
 .adb-main .adb-event-copy>h2,.adb-main .adb-event-copy>h4{grid-column:1;grid-row:1}
 .adb-main .adb-event-copy>.adb-event-summary{grid-column:2;grid-row:1}
 .adb-main .adb-event-copy>.adb-event-classification{grid-column:1/-1;grid-row:2}
}
.adb-main .adb-event-copy>.adb-event-classification{margin:8px 0 0}

/* Identical minimum rhythm with arrow marks and with published totals only. */
.adb-main .adb-duel tbody tr:not(.adb-match-total),.adb-main .adb-distance-round tbody tr{height:43px}
.adb-main .adb-event-copy>h2,.adb-main .adb-event-copy>h4{margin:0}
@media(min-width:1024px){.adb-main .adb-event-copy>.adb-event-classification{margin:0}}
