#michael-training-hub{
  --ink:#151515;--text:#30302d;--muted:#777771;--line:#dfdfd9;--line-strong:#c7c7bf;
  --soft:#f6f6f2;--soft2:#efefe9;--good:#277352;--good-soft:#edf7f1;--warn:#8a6115;--bad:#9d3d3d;
  --radius:18px;--radius-sm:11px;
  width:min(1240px,calc(100vw - 48px));max-width:none;margin:44px auto 80px;position:relative;left:50%;transform:translateX(-50%);
  color:var(--ink)!important;font-family:inherit;font-size:16px;line-height:1.55;
}
#michael-training-hub,#michael-training-hub *{box-sizing:border-box}
#michael-training-hub h1,#michael-training-hub h2,#michael-training-hub h3,#michael-training-hub h4,#michael-training-hub p{color:inherit}
#michael-training-hub button,#michael-training-hub input,#michael-training-hub select,#michael-training-hub textarea{font:inherit;color:var(--ink)}
#michael-training-hub button{cursor:pointer}
.mth-shell{background:#fff;border:1px solid var(--line);border-radius:22px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.05)}
.mth-header{padding:38px 42px 30px}.mth-header-row{display:flex;justify-content:space-between;align-items:flex-end;gap:28px}
.mth-kicker{display:block;color:var(--muted)!important;font-size:12px;letter-spacing:.03em;margin-bottom:10px}
.mth-header h2{font-size:clamp(38px,5vw,62px)!important;line-height:.98!important;letter-spacing:-.05em!important;font-weight:520!important;margin:0!important}
.mth-header p{margin:13px 0 0!important;color:var(--muted)!important;font-size:15px!important}
.mth-header-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.mth-statusline{font-size:12px;color:var(--muted)!important;white-space:nowrap}.mth-statusline[data-state="saving"],.mth-statusline[data-state="loading"]{color:var(--warn)!important}.mth-statusline[data-state="error"]{color:var(--bad)!important}
.mth-button{appearance:none;border:1px solid var(--line-strong)!important;background:#fff!important;padding:10px 14px!important;border-radius:999px!important;font-size:13px!important;font-weight:650!important;line-height:1.2!important;transition:.15s}
.mth-button:hover{border-color:var(--ink)!important;background:var(--soft)!important}.mth-button:disabled{opacity:.35;cursor:default}.mth-button-light{background:#fff!important}

.mth-plan-switcher{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:30px}
.mth-plan-card{position:relative;text-align:left;border:1px solid var(--line)!important;background:var(--soft)!important;border-radius:14px!important;padding:16px 17px!important;min-height:112px;transition:.16s}
.mth-plan-card:hover{border-color:var(--line-strong)!important;transform:translateY(-1px)}.mth-plan-card.is-active{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important}
.mth-plan-card span,.mth-plan-card small,.mth-plan-card strong,.mth-plan-card em{display:block;color:inherit!important}.mth-plan-eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.08em;opacity:.58}.mth-plan-card strong{font-size:18px!important;line-height:1.15!important;margin-top:8px;font-weight:620!important}.mth-plan-card small{font-size:12px;margin-top:6px;opacity:.65}.mth-plan-card em{position:absolute;right:12px;top:12px;font-style:normal;font-size:10px;padding:4px 7px;border-radius:999px;background:#fff;border:1px solid var(--line);color:var(--muted)!important}.mth-plan-card.is-active em{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.22);color:#fff!important}

.mth-tabs-wrap{padding:0 42px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.mth-tabs{display:flex;gap:4px;padding:9px 0;overflow:auto;scrollbar-width:none}.mth-tabs::-webkit-scrollbar{display:none}
.mth-tab{border:0!important;background:transparent!important;color:var(--muted)!important;padding:10px 14px!important;border-radius:999px!important;font-size:14px!important;font-weight:600!important;white-space:nowrap}.mth-tab:hover{background:var(--soft)!important;color:var(--ink)!important}.mth-tab.is-active{background:var(--ink)!important;color:#fff!important}
.mth-view{display:none;padding:0 42px}.mth-view.is-active{display:block}.mth-dashboard{max-width:1090px;margin:auto;padding:34px 0 44px}.mth-plan-view{max-width:1160px;margin:auto;padding:34px 0 44px}.mth-race-blog{max-width:1040px;margin:auto;padding:36px 0 48px}.mth-planner{max-width:1160px;margin:auto;padding:34px 0 46px}
.mth-section-title{margin-bottom:22px}.mth-section-title>span{font-size:12px;color:var(--muted)!important}.mth-section-title h3{font-size:32px!important;line-height:1.08!important;letter-spacing:-.035em!important;font-weight:560!important;margin:7px 0 8px!important}.mth-section-title p{margin:0!important;max-width:780px;color:var(--muted)!important;font-size:14px!important;line-height:1.6!important}.mth-section-title.compact{margin-top:32px}.mth-section-title.compact h3{font-size:25px!important}

.mth-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.mth-kpi{padding:20px;border:1px solid var(--line);border-radius:15px;background:var(--soft)}.mth-kpi strong{display:block;font-size:clamp(26px,3.2vw,42px)!important;line-height:1!important;letter-spacing:-.04em!important;font-weight:550!important}.mth-kpi small{display:block;margin-top:8px;color:var(--muted)!important;font-size:11px}
.mth-progress-block{margin:12px 0 24px;padding:17px 19px;border:1px solid var(--line);border-radius:14px}.mth-progress-block>div:first-child{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}.mth-progress-block strong{font-size:16px!important}.mth-progress-block span{font-size:12px;color:var(--muted)!important}.mth-progress{height:7px;background:var(--soft2);border-radius:999px;overflow:hidden}.mth-progress i{display:block;height:100%;background:var(--ink);border-radius:999px}
.mth-two-col{display:grid;grid-template-columns:1.25fr .75fr;gap:12px}.mth-panel{border:1px solid var(--line);border-radius:16px;padding:21px;background:#fff}.mth-panel-head{display:flex;justify-content:space-between;gap:12px;align-items:baseline;margin-bottom:13px}.mth-panel-head span{font-size:11px;color:var(--muted)!important}.mth-panel-head strong{font-size:13px!important;font-weight:600!important;text-align:right}.mth-next-card{padding:14px 0;border-top:1px solid var(--line)}.mth-next-card:first-of-type{border-top:0;padding-top:4px}.mth-next-card>div{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:baseline}.mth-next-card span,.mth-next-card small{font-size:11px;color:var(--muted)!important}.mth-next-card strong{font-size:15px!important}.mth-next-card p{margin:7px 0 0 120px!important;color:var(--text)!important;font-size:13px!important;line-height:1.55!important}.mth-focus-card{padding:14px;background:var(--soft);border-radius:12px}.mth-focus-card small{font-size:11px;color:var(--muted)!important}.mth-focus-card h4{margin:7px 0 8px!important;font-size:22px!important;line-height:1.15!important;font-weight:580!important;letter-spacing:-.02em!important}.mth-focus-card p{margin:0!important;color:var(--muted)!important;font-size:12px!important}.mth-week-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.mth-week-card{padding:15px;border:1px solid var(--line);border-radius:12px;background:#fff}.mth-week-card.is-current{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.mth-week-card span{font-size:11px;color:var(--muted)!important}.mth-week-card strong{display:block;margin-top:8px;font-size:14px!important;line-height:1.35!important}.mth-week-card small{display:block;margin-top:10px;color:var(--muted)!important;font-size:10px}

.mth-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:26px;padding:10px;max-width:760px;border:1px solid var(--line);background:var(--soft);border-radius:12px}.mth-filter,.mth-inline-title,.mth-inline-target,.mth-edit-grid input,.mth-edit-grid textarea,.mth-status-select,.mth-editor-form input,.mth-editor-form textarea,.mth-planner-nav select,.mth-planner-card input{width:100%;border:1px solid var(--line-strong)!important;background:#fff!important;border-radius:8px!important;padding:9px 10px!important;outline:none;font-size:13px!important}.mth-inline-title:focus,.mth-inline-target:focus,.mth-edit-grid input:focus,.mth-edit-grid textarea:focus,.mth-editor-form input:focus,.mth-editor-form textarea:focus{border-color:var(--ink)!important;box-shadow:0 0 0 2px rgba(0,0,0,.05)}
.mth-week-group{margin-bottom:30px}.mth-week-group-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding:0 2px;margin-bottom:10px}.mth-week-group-head h4{margin:0!important;font-size:22px!important;font-weight:620!important}.mth-week-group-head span{font-size:11px;color:var(--muted)!important}.mth-week-group-head strong{font-size:12px!important;color:var(--muted)!important;text-align:right;font-weight:500!important}.mth-session-list{display:grid;gap:9px}.mth-session-row{display:grid;grid-template-columns:92px minmax(0,1fr);gap:20px;padding:19px 20px;border:1px solid var(--line);border-radius:11px;background:#fff}.mth-session-row.is-a{border-left:4px solid var(--ink);padding-left:14px}.mth-session-row.is-today{box-shadow:0 0 0 2px var(--ink)}.mth-session-row.is-done{background:var(--good-soft);border-color:#cfe5d8}.mth-session-row.is-skipped{opacity:.6}.mth-session-date span{display:block;font-size:18px!important;font-weight:650!important;line-height:1}.mth-session-date small{display:block;margin-top:6px;color:var(--muted)!important;font-size:11px}.mth-session-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:8px}.mth-priority{display:inline-flex;align-items:center;justify-content:center;min-width:25px;height:23px;padding:0 7px;border-radius:999px;background:var(--ink);color:#fff!important;font-size:10px;font-weight:700!important}.mth-sport{font-size:11px;text-transform:uppercase;letter-spacing:.055em;color:var(--muted)!important;font-weight:650}.mth-today{font-size:10px;padding:3px 7px;background:var(--soft2);border-radius:999px}.mth-badge{margin-left:auto;border:1px solid var(--line);padding:5px 8px;border-radius:999px;font-size:10px;color:var(--muted)!important;background:#fff}.mth-badge[data-status="Erledigt"]{color:var(--good)!important;border-color:#9bc6ac}.mth-badge[data-status="Teilweise"]{color:var(--warn)!important}.mth-badge[data-status="Ausgelassen"]{color:var(--bad)!important}.mth-session-main h4{font-size:21px!important;line-height:1.2!important;font-weight:600!important;letter-spacing:-.02em!important;margin:0 0 7px!important}.mth-session-main>p{margin:0!important;max-width:930px;font-size:14px!important;line-height:1.6!important;color:var(--text)!important}.mth-session-meta{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.mth-session-meta span{font-size:11px;color:var(--muted)!important;background:var(--soft);padding:5px 7px;border-radius:6px}.mth-public-note{margin-top:12px;padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:13px}.mth-empty{color:var(--muted)!important;padding:18px 0}.mth-inline-title{font-size:18px!important;font-weight:600!important;margin-bottom:7px}.mth-inline-target{min-height:72px;resize:vertical}.mth-status-select{width:auto!important;margin-left:auto;padding:5px 8px!important;font-size:11px!important}.mth-edit-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:13px;padding:13px;background:var(--soft);border-radius:10px}.mth-edit-grid label{display:grid;gap:5px;font-size:10px;color:var(--muted)!important;font-weight:650}.mth-edit-grid .mth-edit-wide{grid-column:1/-1}.mth-edit-grid textarea{min-height:70px;resize:vertical}

.mth-race-hero{padding:30px;border:1px solid var(--line);border-radius:18px;background:var(--ink);color:#fff!important}.mth-race-hero *{color:inherit!important}.mth-race-hero .mth-kicker{opacity:.55}.mth-race-hero h3{font-size:clamp(34px,5vw,54px)!important;line-height:1!important;letter-spacing:-.045em!important;font-weight:530!important;margin:8px 0 14px!important}.mth-race-hero>p{max-width:760px;margin:0!important;font-size:16px!important;line-height:1.65!important;opacity:.78}.mth-race-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:26px}.mth-race-facts>div{padding:12px;border:1px solid rgba(255,255,255,.16);border-radius:10px}.mth-race-facts small{display:block;font-size:10px;opacity:.55}.mth-race-facts strong{display:block;margin-top:5px;font-size:13px!important;font-weight:620!important}.mth-blog-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(250px,.5fr);gap:14px;margin-top:14px}.mth-blog-story,.mth-result-card{border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff}.mth-blog-story h3{font-size:30px!important;line-height:1.12!important;font-weight:560!important;letter-spacing:-.03em!important;margin:8px 0 11px!important}.mth-lead{font-size:17px!important;line-height:1.6!important;color:var(--text)!important}.mth-prose p{font-size:15px!important;line-height:1.75!important;color:var(--text)!important}.mth-result-card>span{font-size:11px;color:var(--muted)!important}.mth-result-card>strong{display:block;font-size:34px!important;letter-spacing:-.04em!important;margin-top:8px}.mth-result-card>p{color:var(--muted)!important;font-size:12px!important}.mth-split-table{margin-top:18px;border-top:1px solid var(--line)}.mth-split-table>div{display:flex;justify-content:space-between;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:12px}.mth-split-table span{color:var(--muted)!important}.mth-split-table strong{font-weight:650!important}.mth-race-editor{margin-top:26px;padding-top:26px;border-top:1px solid var(--line)}.mth-editor-form{display:grid;gap:12px}.mth-editor-form label{display:grid;gap:6px;font-size:11px;color:var(--muted)!important;font-weight:650}.mth-editor-form textarea{min-height:90px;resize:vertical}.mth-editor-form .mth-report-input{min-height:200px}.mth-split-editor{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--soft)}.mth-split-editor>strong{display:block;margin-bottom:10px;font-size:13px!important}.mth-split-editor>div{display:grid;grid-template-columns:1fr 160px;gap:8px;margin-top:7px}

.mth-planner-nav{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;margin-bottom:14px}.mth-planner-nav select{min-height:42px}.mth-board{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:7px;align-items:start}.mth-day-column{min-height:240px;border:1px solid var(--line);border-radius:12px;background:var(--soft);overflow:hidden;transition:.15s}.mth-day-column.is-today{border-color:var(--ink)}.mth-day-column.is-over{box-shadow:inset 0 0 0 2px var(--ink);background:#fff}.mth-day-head{display:flex;justify-content:space-between;gap:6px;padding:10px 11px;border-bottom:1px solid var(--line);background:#fff}.mth-day-head strong{font-size:12px!important}.mth-day-head span{font-size:10px;color:var(--muted)!important}.mth-day-body{display:grid;gap:7px;padding:8px}.mth-day-empty{color:var(--muted)!important;font-size:10px;text-align:center;padding:20px 0}.mth-planner-card{padding:10px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:grab}.mth-planner-card.is-a{border-left:3px solid var(--ink)}.mth-planner-card.is-dragging{opacity:.45}.mth-planner-card>div{display:flex;justify-content:space-between;gap:6px}.mth-planner-card span,.mth-planner-card small{font-size:9px;color:var(--muted)!important;text-transform:uppercase}.mth-planner-card>strong{display:block;margin:6px 0 9px;font-size:12px!important;line-height:1.35!important;font-weight:620!important}.mth-planner-card input{padding:5px 6px!important;font-size:10px!important}



.mth-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.mth-gallery-item{display:block;aspect-ratio:4/3;overflow:hidden;border-radius:10px;border:1px solid var(--line);background:var(--soft)}.mth-gallery-item img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .2s ease}.mth-gallery-item:hover img{transform:scale(1.025)}
.mth-image-manager{margin-top:13px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#fff}.mth-image-manager-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.mth-image-manager-head>div{display:grid;gap:2px}.mth-image-manager-head strong{font-size:12px!important}.mth-image-manager-head small{font-size:10px;color:var(--muted)!important}.mth-upload-button{position:relative;display:inline-flex!important;align-items:center;justify-content:center;cursor:pointer}.mth-upload-button input{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.mth-upload-button span{display:inline-flex;align-items:center;min-height:34px;padding:7px 11px;border:1px solid var(--line-strong);border-radius:999px;background:var(--soft);font-size:11px!important;font-weight:650;color:var(--ink)!important;white-space:nowrap}.mth-upload-button:hover span{border-color:var(--ink);background:#fff}.mth-image-editor-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:11px}.mth-image-editor-item{position:relative;aspect-ratio:1/1;border-radius:9px;overflow:hidden;border:1px solid var(--line);background:var(--soft)}.mth-image-editor-item img{display:block;width:100%;height:100%;object-fit:cover}.mth-image-editor-item button{position:absolute;top:5px;right:5px;width:27px;height:27px;padding:0!important;border:1px solid rgba(255,255,255,.75)!important;border-radius:999px!important;background:rgba(18,18,18,.78)!important;color:#fff!important;font-size:18px!important;line-height:1!important;box-shadow:0 2px 8px rgba(0,0,0,.16)}
.mth-race-blog>.mth-gallery{margin:14px 0 0;grid-template-columns:repeat(3,minmax(0,1fr))}.mth-race-editor .mth-image-manager{margin-top:0;background:var(--soft)}

.mth-toast{position:fixed;right:20px;bottom:20px;background:#111;color:#fff!important;padding:11px 14px;border-radius:9px;font-size:12px;opacity:0;transform:translateY(8px);pointer-events:none;transition:.2s;z-index:99999}.mth-toast.is-on{opacity:1;transform:none}
.mth-modal-backdrop{position:fixed;inset:0;z-index:999999;background:rgba(18,18,18,.42);display:grid;place-items:center;padding:22px;backdrop-filter:blur(7px)}.mth-modal{width:min(460px,100%);position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:28px;box-shadow:0 28px 90px rgba(0,0,0,.24)}.mth-modal h3{font-size:28px!important;line-height:1.08!important;letter-spacing:-.03em!important;font-weight:560!important;margin:8px 38px 10px 0!important}.mth-modal>p{margin:0 0 20px!important;color:var(--text)!important;font-size:14px!important}.mth-modal form{display:grid;gap:12px}.mth-modal form label{display:grid;gap:7px;color:var(--muted)!important;font-size:12px;font-weight:650}.mth-password-input{width:100%;border:1px solid var(--line-strong)!important;border-radius:8px!important;font-size:16px!important;min-height:46px!important;padding:11px 12px!important}.mth-login-submit{width:100%;min-height:44px}.mth-login-error{padding:10px 12px;border-radius:9px;background:#fbefef;border:1px solid #e0b7b7;color:var(--bad)!important;font-size:12px}.mth-modal-close{position:absolute;top:16px;right:16px;width:34px;height:34px;border:0!important;border-radius:50%!important;background:var(--soft)!important;font-size:22px!important;line-height:1!important;padding:0!important}

@media(max-width:1000px){
  #michael-training-hub{width:calc(100vw - 28px);margin:30px auto 58px}.mth-header{padding:30px}.mth-tabs-wrap{padding:0 26px}.mth-view{padding:0 26px}.mth-kpis{grid-template-columns:1fr 1fr}.mth-two-col{grid-template-columns:1fr}.mth-week-strip{grid-template-columns:1fr 1fr}.mth-edit-grid{grid-template-columns:1fr 1fr 1fr}.mth-blog-layout{grid-template-columns:1fr}.mth-board{grid-template-columns:repeat(4,1fr)}
}
@media(max-width:700px){
  /* Keep the hub centred against the viewport, not the narrower WordPress content column.
     This avoids the apparent mobile “zoom”/right-side overflow seen on iPhone. */
  #michael-training-hub{width:calc(100vw - 24px);max-width:calc(100vw - 24px);margin:12px auto 42px;font-size:15px;left:50%;transform:translateX(-50%)}
  .mth-shell{border-radius:14px}
  /* iOS: keep the native date picker, but make the closed field compact and prevent focus zoom. */
  .mth-edit-grid input[type="date"]{width:min(100%,220px)!important;max-width:220px;min-width:0;min-height:42px!important;height:42px;padding:6px 10px!important;font-size:16px!important;line-height:1.2!important}
  .mth-edit-grid input[type="date"]::-webkit-date-and-time-value{text-align:left}
  .mth-edit-grid input,.mth-edit-grid textarea,.mth-status-select,.mth-filter,.mth-planner-card input{font-size:16px!important}
  .mth-filter,.mth-status-select{font-size:15px!important}.mth-header{padding:22px 18px 18px}.mth-header-row{display:block}.mth-header h2{font-size:39px!important}.mth-header-actions{justify-content:flex-start;margin-top:17px}.mth-statusline{width:100%}.mth-plan-switcher{grid-template-columns:1fr;margin-top:22px}.mth-plan-card{min-height:90px}.mth-tabs-wrap{padding:0 12px}.mth-view{padding:0 14px}.mth-dashboard,.mth-plan-view,.mth-race-blog,.mth-planner{padding-top:25px}.mth-section-title h3{font-size:28px!important}.mth-kpis{grid-template-columns:1fr 1fr;gap:8px}.mth-kpi{padding:15px}.mth-kpi strong{font-size:27px!important}.mth-progress-block>div:first-child{align-items:flex-end}.mth-week-strip{grid-template-columns:1fr}.mth-next-card>div{grid-template-columns:82px 1fr}.mth-next-card>div small{grid-column:2}.mth-next-card p{margin-left:92px!important}.mth-toolbar{grid-template-columns:1fr 1fr;max-width:none;padding:8px}.mth-toolbar .mth-filter:nth-child(3){grid-column:1/-1}.mth-week-group-head{align-items:flex-start}.mth-week-group-head strong{max-width:55%}.mth-session-row{grid-template-columns:1fr;gap:9px;padding:15px}.mth-session-row.is-a{padding-left:12px}.mth-session-date{display:flex;gap:8px;align-items:baseline}.mth-session-date span{font-size:15px!important}.mth-session-date small{margin:0}.mth-badge,.mth-status-select{margin-left:0}.mth-session-main h4{font-size:19px!important}.mth-edit-grid{grid-template-columns:1fr 1fr}.mth-race-hero{padding:22px 18px}.mth-race-hero h3{font-size:36px!important}.mth-race-facts{grid-template-columns:1fr 1fr}.mth-blog-story,.mth-result-card{padding:19px}.mth-split-editor>div{grid-template-columns:1fr 110px}.mth-board{grid-template-columns:1fr}.mth-day-column{min-height:0}.mth-day-body{min-height:54px}.mth-planner-card{cursor:default}.mth-planner-nav{grid-template-columns:auto 1fr auto}.mth-planner-nav select{font-size:11px!important}.mth-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mth-image-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.mth-image-manager-head{align-items:flex-start;flex-direction:column}.mth-upload-button{width:100%}.mth-upload-button span{width:100%;justify-content:center}.mth-modal-backdrop{padding:16px;display:flex;align-items:center;justify-content:center;min-height:100dvh}.mth-modal{width:min(440px,100%);max-height:calc(100dvh - 32px);overflow:auto;border-radius:18px;padding:24px 18px 20px}
}
@media(max-width:420px){.mth-kpis{grid-template-columns:1fr}.mth-race-facts{grid-template-columns:1fr}.mth-edit-grid{grid-template-columns:1fr}.mth-next-card p{margin-left:0!important;margin-top:9px!important}.mth-image-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ==================================================
   v12 · Media viewer + Garmin workout editor
================================================== */
.mth-gallery-item{position:relative;padding:0!important;appearance:none;-webkit-appearance:none;cursor:pointer;text-align:inherit;color:inherit}
.mth-gallery-item video,.mth-image-editor-item video{display:block;width:100%;height:100%;object-fit:cover;background:#111}
.mth-play-badge{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:42px;height:42px;border-radius:999px;background:rgba(0,0,0,.68);color:#fff!important;font-size:15px!important;padding-left:2px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);pointer-events:none}
.mth-image-editor-item .mth-play-badge{width:32px;height:32px;font-size:11px!important}
html.mth-viewer-open,html.mth-viewer-open body{overflow:hidden!important}
.mth-media-viewer{position:fixed;inset:0;z-index:2147483000;background:rgba(8,8,8,.94);display:grid;grid-template-columns:64px minmax(0,1fr) 64px;grid-template-rows:58px minmax(0,1fr);grid-template-areas:"bar bar bar" "prev stage next";align-items:center;justify-items:center;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.mth-media-viewer-bar{grid-area:bar;align-self:stretch;width:100%;display:flex;align-items:center;justify-content:space-between;padding:10px 16px;color:#fff;border-bottom:1px solid rgba(255,255,255,.1)}
.mth-media-viewer-bar span{font-size:12px!important;letter-spacing:.03em;color:rgba(255,255,255,.72)!important}
.mth-media-viewer-bar button,.mth-media-nav{border:0!important;background:rgba(255,255,255,.1)!important;color:#fff!important;box-shadow:none!important;cursor:pointer}
.mth-media-viewer-bar button{width:38px;height:38px;border-radius:999px!important;font-size:26px!important;line-height:1!important;padding:0!important}
.mth-media-stage{grid-area:stage;width:100%;height:100%;display:grid;place-items:center;padding:18px;overflow:hidden}
.mth-media-stage img,.mth-media-stage video{display:block;max-width:100%;max-height:calc(100dvh - 94px);object-fit:contain;border-radius:12px;background:#000;box-shadow:0 20px 70px rgba(0,0,0,.35)}
.mth-media-stage video{width:min(1100px,100%)}
.mth-media-nav{width:42px;height:42px;border-radius:999px!important;font-size:34px!important;line-height:1!important;padding:0 0 4px!important}
.mth-media-nav.prev{grid-area:prev}.mth-media-nav.next{grid-area:next}.mth-media-nav[hidden]{visibility:hidden}
.mth-session-tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px;padding-top:14px;border-top:1px solid var(--line)}
.mth-button-dark{background:var(--ink)!important;border-color:var(--ink)!important;color:#fff!important}
.mth-garmin-editor{margin-top:14px;padding:16px;border:1px solid var(--line-strong);border-radius:14px;background:#fafafa}
.mth-garmin-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--line)}
.mth-garmin-head>div{display:grid;gap:3px}.mth-garmin-head strong{font-size:15px!important}.mth-garmin-head small{font-size:10px!important;color:var(--muted)!important}
.mth-garmin-meta{display:grid;grid-template-columns:minmax(180px,1fr) 160px auto;gap:9px;align-items:end;margin:14px 0}
.mth-garmin-meta label,.mth-garmin-step label{display:grid;gap:5px;font-size:10px!important;font-weight:650;color:var(--muted)!important}
.mth-garmin-meta input,.mth-garmin-meta select,.mth-garmin-step input,.mth-garmin-step select{width:100%;min-height:39px;padding:8px 9px!important;border:1px solid var(--line-strong)!important;border-radius:9px!important;background:#fff!important;color:var(--ink)!important;font-size:12px!important;box-shadow:none!important}
.mth-garmin-step label small{font-size:9px!important;font-weight:500;color:var(--muted)!important}
.mth-garmin-steps{display:grid;gap:8px}.mth-garmin-step{position:relative;display:grid;grid-template-columns:minmax(180px,1.4fr) repeat(5,minmax(105px,.7fr));gap:8px;padding:42px 12px 12px;border:1px solid var(--line);border-radius:11px;background:#fff;align-items:end}.mth-garmin-step .wide{min-width:0}.mth-garmin-step-top{position:absolute;right:9px;top:8px;display:flex;gap:6px;align-items:center}.mth-garmin-step-top strong{display:grid;place-items:center;width:22px;height:22px;border-radius:999px;background:var(--ink);color:#fff!important;font-size:9px!important}.mth-garmin-step-top button{width:25px;height:25px;padding:0!important;border:0!important;border-radius:999px!important;background:#eee!important;color:#444!important;font-size:16px!important;line-height:1!important}
.mth-garmin-add{margin-top:10px}

@media(max-width:1200px){.mth-garmin-step{grid-template-columns:repeat(3,minmax(0,1fr))}.mth-garmin-step .wide{grid-column:1/-1}}
@media(max-width:700px){
  .mth-media-viewer{grid-template-columns:44px minmax(0,1fr) 44px;grid-template-rows:52px minmax(0,1fr)}
  .mth-media-stage{padding:8px 0 12px}.mth-media-stage img,.mth-media-stage video{max-height:calc(100dvh - 68px);width:100%;border-radius:0;box-shadow:none}
  .mth-media-nav{width:34px;height:34px;font-size:28px!important;background:rgba(255,255,255,.13)!important}.mth-media-viewer-bar{padding:7px 10px}
  .mth-garmin-editor{padding:13px;margin-left:-2px;margin-right:-2px}.mth-garmin-head{align-items:flex-start;flex-direction:column}.mth-garmin-head .mth-button{width:100%}
  .mth-garmin-meta{grid-template-columns:1fr 1fr}.mth-garmin-meta .mth-button{grid-column:1/-1;width:100%}
  .mth-garmin-step{grid-template-columns:1fr 1fr;padding:12px}.mth-garmin-step .wide{grid-column:1/-1}.mth-garmin-step-top{position:static;grid-column:1/-1;display:flex;justify-content:space-between;transform:none}.mth-garmin-step-top button{position:static}
  .mth-garmin-meta input,.mth-garmin-meta select,.mth-garmin-step input,.mth-garmin-step select{font-size:16px!important}
  .mth-session-tools .mth-button{flex:1 1 145px}
}
@media(max-width:420px){.mth-garmin-meta,.mth-garmin-step{grid-template-columns:1fr}.mth-garmin-step .wide,.mth-garmin-step-top,.mth-garmin-meta .mth-button{grid-column:1}.mth-gallery{gap:6px}}
