@layer trimarkus-ui-contract {
/* Shared interface contract: 14px readable text, 20px card titles, 28px dialog titles.
   Exceptions: page/hero headings, numeric countdowns, and 12px clock/illustration labels. */
:is(.tm-season,[data-tmcal]){--tm-ui-font:Montserrat,Arial,sans-serif;--tm-ui-text:14px;--tm-ui-title:20px;--tm-ui-dialog:28px;--tm-ui-line:1.55;--tm-ui-border:#d9e7ef;--tm-ui-ink:#153e54;font-family:var(--tm-ui-font)}
:is(.tm-season:not(.tm-sport-world),[data-tmcal]) [hidden]{display:none!important}
/* One card hierarchy, independent of the native module's older large-card rules. */
.tm-season .tmcal.tm-season-starts .tmcal-personal,[data-season-compact-ui] [data-personal]{gap:16px!important;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)!important;grid-template-rows:auto auto!important;align-items:stretch}
.tm-season .tmcal.tm-season-starts .tmcal-personal-card,[data-season-compact-ui] [data-personal] .tmcal-personal-card{display:flex!important;flex-direction:column;min-height:0!important;height:auto!important;padding:20px!important;gap:12px;border-radius:16px!important;text-align:left;overflow:visible}
.tm-season .tmcal.tm-season-starts .tmcal-primary,[data-season-compact-ui] [data-personal] .tmcal-primary{grid-column:1!important;grid-row:1/span 2!important}
.tm-season .tmcal.tm-season-starts .tmcal-secondary,[data-season-compact-ui] [data-personal] .tmcal-secondary{grid-column:2!important;grid-row:1!important}
.tm-season .tmcal.tm-season-starts .tmcal-tertiary,[data-season-compact-ui] [data-personal] .tmcal-tertiary{grid-column:2!important;grid-row:2!important;display:grid!important;grid-template-columns:48px minmax(0,1fr)!important;align-items:center;column-gap:12px!important;row-gap:12px!important}
:is(.tm-season-starts,[data-season-compact-ui]) [data-personal][data-count="1"],.tm-season-starts .tmcal-personal[data-count="1"]{grid-template-columns:1fr!important;grid-template-rows:auto!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal[data-count="1"]>.tmcal-primary{grid-row:1!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal[data-count="2"]{grid-template-rows:auto!important;align-items:start}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal[data-count="2"]>.tmcal-primary{grid-row:1!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal-title{align-items:center!important;gap:12px!important;margin:0!important;min-width:0}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal-title>div{min-width:0}
:is(.tm-season-starts,[data-season-compact-ui]) :is(.tmcal-personal-title h3,.tmcal-tertiary-copy>strong){display:block;font:750 var(--tm-ui-title)/1.3 var(--tm-ui-font)!important;letter-spacing:-.025em!important;margin:0!important;overflow-wrap:anywhere}
:is(.tm-season-starts,[data-season-compact-ui]) :is(.tmcal-personal-title p,.tmcal-tertiary-copy>small){display:block;font:400 var(--tm-ui-text)/var(--tm-ui-line) var(--tm-ui-font)!important;margin:5px 0 0!important;overflow-wrap:anywhere}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-tertiary-copy{min-width:0;grid-column:2}
:is(.tm-season-starts,[data-season-compact-ui]) :is(.tmcal-eyebrow,.tm-season-type){font:700 var(--tm-ui-text)/1.4 var(--tm-ui-font)!important;letter-spacing:.03em!important;margin:0!important}
:is(.tm-season-starts,[data-season-compact-ui]) :is(.tmcal-secondary,.tmcal-tertiary) .tmcal-eyebrow{display:none!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-primary>.tmcal-eyebrow{align-self:flex-start;padding:4px 10px!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tm-season-brand-symbol{width:48px!important;height:48px!important;flex:0 0 48px!important;min-width:48px!important;border-radius:9px!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tm-season-brand-symbol>img{height:34px!important;max-width:36px!important}
.tm-season .tm-season-race-footer{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap;gap:10px!important;margin-top:auto!important;padding-top:6px!important;width:100%}
.tm-season .tm-season-tertiary-footer{grid-column:1/-1!important}
.tm-season .tm-season-plan-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px!important;margin:0!important;font:400 var(--tm-ui-text)/1.4 var(--tm-ui-font)!important}
.tm-season :is(.tm-season-status-pill,.tm-season-priority){font:600 var(--tm-ui-text)/1.4 var(--tm-ui-font)!important;padding:3px 8px!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-public-race-footer{padding-top:6px!important;margin-top:auto!important;grid-column:1/-1!important;display:flex;justify-content:flex-end}
/* A compact clock is still the one intentional large numeric element. */
:is(.tm-season .tm-season-starts,body[data-season-home-layout] [data-tmcal]) .tmcal-primary .tmcal-countdown{padding:12px 0!important;margin:0!important}
:is(.tm-season .tm-season-starts,body[data-season-home-layout] [data-tmcal]) .tmcal-primary :is(.tmcal-clock-unit b,.tmcal-clock-colon){font-size:clamp(28px,8cqi,60px)!important;line-height:1.12!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-countdown-heading{font:700 var(--tm-ui-text)/1.5 var(--tm-ui-font)!important;letter-spacing:.035em!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-clock-footnote{font:400 12px/1.5 var(--tm-ui-font)!important;opacity:.8!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-clock-unit small{font-size:12px!important;line-height:1.4!important;margin-top:4px!important;letter-spacing:.02em!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-countdown-units{margin-top:10px!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-countdown-track{margin:10px 0 6px!important}
/* Later cards, list rows, search cards and comparison cards follow the same information budget. */
.tm-season .tm-season-event{padding:18px!important;gap:12px;min-height:0!important;border-radius:14px!important}
.tm-season .tm-season-events{gap:16px!important}
.tm-season .tm-season-event-main{gap:12px!important;align-items:center!important}
.tm-season .tm-season-event-main h3{font:750 var(--tm-ui-title)/1.3 var(--tm-ui-font)!important;margin:0!important;letter-spacing:-.025em}
.tm-season .tm-season-event-main :is(p,small){font:400 var(--tm-ui-text)/var(--tm-ui-line) var(--tm-ui-font)!important;margin:5px 0 0!important}
.tm-season .tm-season-event-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:12px!important}
.tm-season .tm-season-event-bottom>[data-season-edit]{display:none!important}
.tm-season .tm-season-list-row{grid-template-columns:28px 130px minmax(0,1fr) 140px auto!important;gap:14px!important;padding:14px!important;align-items:center!important}
.tm-season .tm-season-list-copy>strong{font:750 var(--tm-ui-title)/1.3 var(--tm-ui-font)!important;overflow-wrap:anywhere}
.tm-season :is(.tm-season-list-row small,.tm-season-list-state span,.tm-season-list-date strong,.tm-season-compare-card p,.tm-season-compare-card dt,.tm-season-compare-card dd){font:400 var(--tm-ui-text)/var(--tm-ui-line) var(--tm-ui-font)!important}
.tm-season .tm-season-compare-card h3{font:750 var(--tm-ui-title)/1.3 var(--tm-ui-font)!important}
[data-season-compact-ui] .tmcal-finder-card{padding:18px!important;gap:10px;min-height:0!important}
[data-season-compact-ui] .tmcal-finder-card h4{font:750 var(--tm-ui-title)/1.3 var(--tm-ui-font)!important;margin:12px 0 0!important}
[data-season-compact-ui] :is(.tmcal-finder-location,.tmcal-finder-when,.tmcal-radar-item small,.tmcal-day-event small,.tmcal-preview-event>span){font:400 var(--tm-ui-text)/var(--tm-ui-line) var(--tm-ui-font)!important}
[data-season-compact-ui] .tmcal-finder-card-actions{display:flex!important;justify-content:flex-end!important;grid-template-columns:1fr!important;padding-top:8px!important}
[data-season-compact-ui] .tmcal-finder-card-top>div>small{font-size:14px!important}
/* Public finder and calendar detail popups use the same reading scale. */
[data-season-compact-ui] .tmcal-dialog :is(p,small,label,summary,dt,dd,input,select,textarea,.tmcal-detail-facts,.tmcal-detail-badges,.tmcal-event-meta){font-size:14px!important;line-height:1.55!important}
[data-season-compact-ui] .tmcal-dialog .tmcal-detail-hero h3{font-size:28px!important;line-height:1.25!important;letter-spacing:-.03em!important}
[data-season-compact-ui] .tmcal-dialog :is(h4,.tmcal-dialog-section h3){font-size:20px!important;line-height:1.3!important}
[data-season-compact-ui] .tmcal-dialog :is(.tmcal-detail-hero,.tmcal-detail-body){padding:20px!important}
/* One event lightbox: stable header and tabs, with full details only inside it. */
.tm-season .tm-season-event-dialog{width:min(900px,calc(100vw - 32px));max-width:900px;border-radius:16px!important}
.tm-season .tm-season-event-dialog>.tm-season-dialog-head{padding:20px 24px!important;margin:0!important}
.tm-season .tm-season-event-dialog>.tm-season-dialog-head h2{font:750 var(--tm-ui-dialog)/1.25 var(--tm-ui-font)!important;letter-spacing:-.03em!important}
.tm-season .tm-season-dialog>.tm-season-dialog-head .tm-season-kicker{font-size:14px!important;line-height:1.4!important}
.tm-event-tabs{display:flex;gap:4px;margin:0;padding:0 24px;border-bottom:1px solid var(--tm-ui-border);background:#f6fafd}
.tm-event-tabs>[role=tab]{display:flex;align-items:center;justify-content:center;flex:1 1 0;min-height:44px;padding:10px 14px;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:#567489;font:650 var(--tm-ui-text)/1.4 var(--tm-ui-font);cursor:pointer;text-transform:none}
.tm-event-tabs>[role=tab][aria-selected=true]{color:#087eaa;border-bottom-color:#159bc4;background:#eaf6fc}
.tm-event-tabs>[role=tab]:focus-visible{outline:2px solid #159bc4;outline-offset:-4px}
.tm-season .tm-season-event-dialog>.tm-season-dialog-body{padding:22px 24px!important;min-height:0}
[data-season-event-panel][hidden]{display:none!important}
.tm-season .tm-season-event-dialog :is(p,label,small,summary,dt,dd,select,input:not([type=checkbox]),textarea,.tm-season-footnote){font-size:var(--tm-ui-text)!important;line-height:var(--tm-ui-line)!important}
.tm-season .tm-season-event-dialog :is(h3,h4){font-size:var(--tm-ui-title)!important;line-height:1.3!important}
.tm-season .tm-season-event-dialog .tm-season-facts>div>span{font-size:14px!important}
.tm-season .tm-season-event-dialog .tm-season-facts>div>strong{font-size:16px!important;line-height:1.5!important}
.tm-season .tm-season-event-dialog .tm-season-facts{gap:14px!important;margin:0 0 18px!important}.tm-season .tm-season-event-dialog .tm-season-facts>div{padding:16px!important}.tm-season .tm-season-event-dialog .tm-season-danger-zone:empty{display:none!important}
.tm-season .tm-season-event-dialog .tm-season-planning-heading{margin:0 0 16px}
.tm-season .tm-season-event-dialog .tm-season-planning-heading>.tm-season-check-summary{font-size:14px}
.tm-season .tm-season-event-dialog .tm-journey-intro{margin-bottom:18px}
.tm-season .tm-season-event-dialog .tm-journey-search-heading>span{display:none!important}
.tm-season .tm-season-event-dialog .tm-journey-save{margin-top:18px}
.tm-season .tm-season-event-dialog .tm-journey-partner-note{font-size:14px!important}
/* Global menu density and readable labels. Controls keep the original arrow/hover system. */
.tm-season :is(.tm-season-workspace-nav,.tm-season-plan-tools,.tm-season-viewbar,.tm-season-filterbar,.tm-season-advanced,.tm-season-selectionbar,.tm-season-account-menu) :is(button,a,label,select,input,summary,small,span){font-size:var(--tm-ui-text)!important;line-height:1.45!important}
.tm-season .tm-season-workspace-nav{padding:14px 0!important;margin-bottom:18px!important;gap:16px}
.tm-season .tm-season-plan-heading{margin:20px 0 16px!important;gap:16px}
.tm-season .tm-season-plan-summary>strong{font-size:20px!important}
.tm-season .tm-season-hub{padding:16px 18px!important;margin-bottom:18px!important}
.tm-season .tm-season-hub .tm-season-overview-item{min-height:66px!important;padding:8px 14px!important}
.tm-season .tm-season-hub .tm-season-overview-item :is(b,small){font-size:14px!important;line-height:1.45!important}
.tm-season .tm-season-hub .tm-season-overview-item small{display:none!important}
.tm-season .tm-season-overview-heading>p{display:none!important}
.tm-season .tm-season-hub .tm-season-trip-strip{margin-top:14px!important;padding-top:14px!important}
.tm-season .tm-season-trip-strip-copy>span{display:none!important}
.tm-season .tm-season-trip-strip-action .tm-journey-brand-pair{display:none!important}
.tm-season .tm-season-hub .tm-season-trip-strip{grid-template-columns:48px minmax(0,1fr) auto!important}
.tm-season .tm-season-trip-strip-action{width:auto!important;min-width:0!important;gap:0!important}
.tm-season .tm-journey-entry-actions{grid-template-columns:repeat(2,max-content)!important;gap:8px!important}
@media(max-width:1000px){.tm-season .tm-season-hub .tm-season-trip-strip{grid-template-columns:48px minmax(0,1fr)!important}.tm-season .tm-season-trip-strip-action{grid-column:1/-1!important;justify-self:start!important}}
@media(max-width:500px){.tm-season .tm-journey-entry-actions{grid-template-columns:1fr!important;justify-items:start!important}}
.tm-season .tm-season-trip-strip-copy>strong{font-size:14px!important}
.tm-season .tm-season-starts-heading{margin-bottom:14px!important;gap:14px}
.tm-season .tm-season-starts-heading>.tm-season-kicker,.tm-season .tm-season-starts-heading>div>.tm-season-kicker{display:none}
.tm-season .tm-season-starts-heading>p{display:none}
@media(max-width:1000px){.tm-season .tm-season-list-row{grid-template-columns:28px 110px minmax(0,1fr) auto!important}.tm-season-list-state{grid-column:3}.tm-season-list-row>.tm-ui-card-action{grid-column:4;grid-row:1/span 2}.tm-season .tm-season-trip-strip-action{max-width:500px;width:100%}}
@media(max-width:750px){.tm-season .tmcal.tm-season-starts .tmcal-personal,[data-season-compact-ui] [data-personal]{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important}.tm-season .tmcal.tm-season-starts .tmcal-personal>.tmcal-personal-card,[data-season-compact-ui] [data-personal]>.tmcal-personal-card{grid-column:1!important;grid-row:auto!important}.tm-season .tm-season-event-dialog{width:calc(100vw - 20px)}.tm-season .tm-season-event-dialog>.tm-season-dialog-head{padding:18px!important}.tm-event-tabs{padding:0 12px}.tm-season .tm-season-event-dialog>.tm-season-dialog-body{padding:18px!important}.tm-season .tm-season-list-row{grid-template-columns:24px minmax(0,1fr)!important;gap:8px 12px!important}.tm-season-list-check{grid-column:1;grid-row:1/span 3}.tm-season-list-date,.tm-season-list-copy,.tm-season-list-state{grid-column:2!important;grid-row:auto!important}.tm-season-list-row>.tm-ui-card-action{grid-column:2!important;grid-row:auto!important;justify-self:start}.tm-season .tm-season-hub .tm-season-overview-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}.tm-season .tm-season-hub .tm-season-overview-item{min-height:64px!important;border:0!important;padding:6px!important}.tm-season .tm-season-hub .tm-season-overview-item>span:last-child{display:none}.tm-season .tm-season-hub .tm-season-overview-item>strong{font-size:24px!important}.tm-season .tm-season-event-dialog>.tm-season-dialog-head h2{font-size:24px!important}}
@media(max-width:420px){.tm-season .tm-season-hub .tm-season-overview-grid{grid-template-columns:1fr!important;gap:0!important}.tm-season .tm-season-hub .tm-season-overview-item{min-height:48px!important;flex-direction:row!important;align-items:center!important}.tm-event-tabs>[role=tab]{padding:10px 6px}.tm-season .tmcal.tm-season-starts .tmcal-personal-card,[data-season-compact-ui] [data-personal] .tmcal-personal-card{padding:16px!important}.tm-season .tm-season-event-dialog .tm-season-facts{grid-template-columns:1fr}.tm-season .tm-season-event-dialog .tm-season-facts strong{overflow-wrap:anywhere}}
@media(pointer:coarse){.tm-season :is(button,.tm-ui-card-action,[role=tab]),[data-season-compact-ui] :is(button,.tm-ui-card-action){min-height:44px!important}}
.tm-season .tmcal.tm-season-starts .tmcal-personal[data-season-filtered=true]{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;grid-template-rows:auto!important;align-items:start}
.tm-season .tmcal.tm-season-starts .tmcal-personal[data-season-filtered=true]>.tmcal-personal-card{grid-column:auto!important;grid-row:auto!important}
.tm-season .tm-season-dialog>.tm-season-dialog-head h2{font-size:28px!important;line-height:1.25!important}
.tm-season .tm-season-dialog :is(p,label,small,summary,select,input:not([type=checkbox]),textarea,.tm-season-footnote){font-size:14px!important;line-height:1.55!important}
.tm-season .tm-season-dialog :is(h3,h4){font-size:20px!important;line-height:1.3!important}
.tm-season-account-frame .tm-account-surface :is(p,label,small,a,button,input,select){font-size:14px!important;line-height:1.55!important}
:is(.tm-season-starts,[data-season-compact-ui]) .tmcal-personal-card>.tmcal-eyebrow{display:none!important}
.tm-season .tm-season-event-dialog[open]{display:flex!important;flex-direction:column;overflow:hidden!important;max-height:calc(100dvh - 40px)!important;padding:0!important}
.tm-season .tm-season-event-dialog>.tm-season-dialog-head,.tm-season .tm-season-event-dialog>.tm-event-tabs{flex:0 0 auto}
.tm-season .tm-season-event-dialog>.tm-season-dialog-body{flex:1 1 auto;overflow:auto;min-height:0;max-height:none!important;overscroll-behavior:contain}
.tm-season .tm-season-event .tm-season-brand-symbol{width:48px!important;height:48px!important;min-width:48px!important;flex:0 0 48px!important;border-radius:9px!important}
.tm-season .tm-ui-date-symbol>svg{width:28px;height:28px;fill:none;stroke:#177fa4;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

}
@layer trimarkus-motion-buttons{body.tm-redesign :is(#sp-main-body,#main-content,.tm-section,.tmcal) :is(.tm-season-service-actions .tm-unified-button,.tm-unified-button,.tm-ui-card-action,.tm-journey-quick-action){font-size:14px!important;line-height:1.4!important;min-height:40px!important;padding:8px 12px!important;letter-spacing:0!important}}
