/* The coaching diary leads the workspace; operational queues stay alongside it.
   All colours derive from the shared theme and the tenant's own accent. */
@media screen {
  .gate.athletic-gate { justify-content:flex-start; padding:0 32px 28px; background:var(--paper); }
  .athletic-gate .gate-card {
    display:flex; flex-direction:column; align-items:center; width:min(1180px,100%);
    padding:0; border:0; border-radius:0; box-shadow:none; background:transparent;
  }
  html[data-theme='dark'] .athletic-gate .gate-card { background:transparent; }
  .coach-signin-toprail { display:flex; align-items:center; justify-content:space-between; gap:24px; width:100%; min-height:112px; border-bottom:1px solid var(--rule); }
  .athletic-gate .gate-card .brandmark { flex:0 0 180px; width:180px; height:80px; min-height:80px; margin:0; }
  .athletic-gate .gate-card .brandmark .logo { width:180px; height:80px; object-fit:contain; }
  .athletic-gate .gate-card .entry-toolbar { margin:0; gap:24px; align-items:center; }
  .athletic-gate .entry-toolbar .btn { width:auto; border-radius:8px; }
  .athletic-gate #gatebody {
    width:min(440px,100%); margin:48px 0 36px; padding:32px;
    border:1px solid var(--rule); border-top:3px solid var(--gold); border-radius:14px;
    background:var(--card);
  }
  .athletic-gate .gate-card .auth-kicker { margin-bottom:12px; }
  .athletic-gate .gate-card h1 { font-size:2.125rem; margin-bottom:12px; }
  .athletic-gate .gate-card .sub { margin-bottom:28px; font-size:.875rem; color:var(--ink-2); }
  .athletic-gate .gate-card .f { margin-bottom:20px; }
  .athletic-gate .entry-account-link { margin-top:20px; padding-top:16px; }
  .athletic-gate .auth-story { width:min(880px,100%); padding:0; }
  .athletic-gate .auth-story > :is(p,h2) { display:none; }
  .athletic-gate .auth-story ul { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px; margin:0; }
  .athletic-gate .auth-story li { border:0; padding:0; }
  .athletic-gate .auth-story b { color:var(--ink-2); font-size:.8125rem; }
  .athletic-gate .auth-story li span { font-size:.75rem; line-height:1.6; }
  .athletic-gate > .built { margin-top:36px; }
  .coach-athletic-shell .workspace-column { min-height:calc(100dvh - var(--demo-h)); }
  .coach-contextbar {
    display:flex; align-items:center; justify-content:space-between; gap:20px;
    min-height:72px; padding:12px var(--page-gutter); border-bottom:1px solid var(--rule);
    background:var(--rail-bg); color:var(--ink);
  }
  .coach-context-path { display:flex; align-items:center; gap:14px; min-width:0; font-size:.8125rem; }
  .coach-context-path > span { color:var(--ink-2); }
  .coach-context-path strong { font-weight:600; overflow-wrap:anywhere; }
  .coach-contextbar .coach-appearance {
    display:inline-flex; align-items:center; gap:8px; min-height:44px;
    padding:8px 12px; border:1px solid var(--rule); border-radius:8px;
    background:transparent; color:var(--ink-2); font:inherit; font-size:.8125rem;
  }
  .coach-appearance svg { width:17px; height:17px; }
  .coach-contextbar .coach-appearance:hover { color:var(--ink); background:var(--band); }
  .coach-contextbar .coach-appearance:focus-visible { outline:2px solid var(--gold-dp); outline-offset:3px; }
  .coach-athletic-shell .main { padding-top:28px; padding-bottom:48px; }
  .coach-athletic-shell .workspace-heading { margin-bottom:24px; padding-bottom:20px; border-bottom:1px solid var(--rule); }
  .coach-athletic-shell .workspace-heading h1 { font-size:2rem; line-height:1.15; letter-spacing:-.035em; }
  .coach-athletic-shell .rail .brandmark.has-logo { padding:0 8px; border:0; }
  .coach-athletic-shell .rail .brandmark.has-logo .logo { width:154px!important; height:56px!important; }
  .coach-rail-caption { margin:2px 0 10px; color:var(--ink-3); text-align:center; font-size:.75rem; }
  .coach-athletic-shell .rail #nav { margin-top:0; }
  .coach-athletic-shell .rail #nav .grp { margin-top:8px; margin-bottom:4px; font-size:.75rem; }
  .coach-athletic-shell .rail #nav button { gap:12px; padding:10px 14px; margin:3px 0; border-radius:9px; }
  .coach-athletic-shell .rail #nav button[aria-current='page'] {
    background:var(--gold-wash); color:var(--ink); box-shadow:inset 3px 0 var(--gold);
  }
  .coach-athletic-shell .rail #nav button[aria-current='page'] .gl { color:var(--gold-dp); }
  .coach-athletic-shell .rail .rail-foot { margin-top:16px; }

  .athletic-day { gap:24px; }
  .athletic-day .welcome-top { align-items:center; gap:24px; }
  .athletic-day .welcome-intro h1 { font-size:2.75rem; line-height:1.08; letter-spacing:-.045em; margin:0; }
  .athletic-day .welcome-intro h2 {
    margin:10px 0 0; padding:0; border:0; font-size:.9375rem; font-weight:400;
    letter-spacing:0; line-height:1.5; color:var(--ink-2);
  }
  .welcome-day-actions { display:flex; align-items:center; justify-content:flex-end; gap:24px; }
  .athletic-day .welcome-date { margin:0; display:grid; gap:5px; font-size:.8125rem; color:var(--ink-2); text-align:right; }
  .athletic-day .welcome-local-time { font-size:.75rem; }
  .athletic-day .welcome-day-actions > .btn { flex-shrink:0; }
  .athletic-day .welcome-stats {
    display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0;
    border:1px solid var(--rule); border-radius:12px; overflow:hidden;
    background:var(--rail-bg);
  }
  .athletic-day .welcome-stat { padding:18px 20px; gap:12px; }
  .athletic-day .welcome-stat-icon { background:transparent; width:24px; height:30px; flex-basis:24px; }
  .athletic-day .welcome-stat > span:nth-child(2) { display:flex; flex-direction:column; gap:4px; }
  .athletic-day .welcome-stat strong { font-size:1.5rem; margin:0; }
  .athletic-day .welcome-stat > span:nth-child(2) > span { font-size:.75rem; }
  .athletic-day .welcome-stat > span:last-child { align-self:center; }
  .athletic-day .welcome-workbench { grid-template-columns:minmax(0,1.65fr) minmax(290px,1fr); gap:32px; }
  .athletic-day .welcome-panel { border:0; border-radius:0; background:transparent; padding:0; }
  .athletic-day .welcome-panel-heading { align-items:center; margin:0 0 20px; gap:14px; }
  .athletic-day .welcome-panel-heading h2 { font-size:1.125rem; line-height:1.3; margin:0 0 6px; }
  .athletic-day .welcome-panel-heading p { font-size:.8125rem; color:var(--ink-2); }
  .athletic-day .welcome-next {
    padding:24px; margin:0 0 28px; border:1px solid var(--gold-line); border-radius:16px;
    background:var(--card); box-shadow:inset 0 3px var(--gold);
  }
  .athletic-day .welcome-next-heading { color:var(--ink-2); font-size:.8125rem; }
  .athletic-day .welcome-next-person { display:grid; grid-template-columns:auto minmax(0,1fr); gap:12px; margin:20px 0 12px; }
  .athletic-day .welcome-next-person > .av {
    display:grid; place-items:center; width:44px; height:44px; border-radius:50%;
    background:var(--gold-wash); border:1px solid var(--gold-line); color:var(--gold-dp);
    font-size:.8125rem; font-weight:600; object-fit:cover;
  }
  .athletic-day .welcome-next-person > div { min-width:0; }
  .athletic-day .welcome-next-person strong { font-size:1.125rem; line-height:1.35; }
  .athletic-day .welcome-next-person > time {
    grid-column:1/-1; grid-row:1; display:flex; align-items:baseline; flex-wrap:wrap;
    gap:8px 14px; margin-bottom:10px; color:var(--ink); font-size:3.5rem;
    font-weight:600; letter-spacing:-.045em; line-height:1;
  }
  .athletic-day .welcome-next-person time small { margin:0; font-size:.8125rem; letter-spacing:0; color:var(--ink-2); }
  .athletic-day .welcome-next > .btn { margin:8px 0 0; padding-inline:0; }
  .athletic-day .welcome-next-empty { margin-top:18px; }
  .athletic-day .welcome-next-empty strong { display:block; font-size:1.375rem; line-height:1.3; letter-spacing:-.025em; }
  .athletic-day .welcome-next-empty p { margin:10px 0 12px; color:var(--ink-2); max-width:50ch; }
  .athletic-day .welcome-diary-subhead { margin:0 0 6px; font-size:.8125rem; font-weight:600; color:var(--ink-2); }
  .athletic-day .welcome-session-list { padding-left:16px; border-left:2px solid var(--gold-line); }
  .athletic-day .welcome-session { min-height:82px; padding:16px 0; gap:20px; }
  .athletic-day .welcome-session > time { font-size:1rem; min-width:58px; }
  .athletic-day .welcome-session-person strong { font-size:.9375rem; }
  .athletic-day .welcome-earlier { margin:20px 0; }
  .athletic-day .welcome-earlier summary { min-height:44px; }
  .athletic-day .welcome-pending-sessions { margin-top:24px; padding-top:24px; border-top:1px solid var(--rule); }
  .athletic-day .welcome-pending-sessions .welcome-panel-heading { align-items:flex-start; margin-bottom:8px; }
  .athletic-day .welcome-pending-sessions h3 { margin:0 0 6px; font-size:.9375rem; }
  .athletic-day .welcome-coming { margin-top:24px; padding-top:24px; border-top:1px solid var(--rule); }
  .athletic-day .welcome-coming h3 { font-size:.9375rem; }
  .athletic-day .welcome-attention { padding-left:28px; border-left:1px solid var(--rule); }
  .athletic-day .welcome-count { border-radius:8px; min-width:32px; height:32px; background:var(--gold-wash); color:var(--gold-dp); font-weight:600; }
  .athletic-day .welcome-onboarding { grid-template-columns:1fr; gap:0; padding:0 0 12px; margin-bottom:2px; }
  .athletic-day .welcome-onboarding button { min-height:48px; padding:10px 0; border-radius:0; background:transparent; gap:9px; }
  .athletic-day .welcome-onboarding button > strong { display:grid; place-items:center; width:28px; height:28px; border:1px solid var(--rule); border-radius:7px; }
  .athletic-day .welcome-priorities .priority-row { padding:20px 0; gap:10px; }
  .athletic-day .welcome-priorities .priority-row > div > strong,
  .athletic-day .welcome-request strong { margin-top:10px; font-size:.9375rem; line-height:1.4; }
  .athletic-day .welcome-priorities .priority-row p { line-height:1.6; }
  .athletic-day .welcome-priorities .priority-row > .btn { padding-inline:4px; }
  .athletic-day .welcome-request { padding:20px 0; gap:12px; }
  .athletic-day .welcome-request > .btn { padding-inline:10px; }
}
@media screen and (max-width:1200px) {
  .welcome-day-actions { gap:16px; }
  .athletic-day .welcome-date { max-width:180px; }
  .athletic-day .welcome-workbench { grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr); gap:24px; }
  .athletic-day .welcome-attention { padding-left:24px; }
  .athletic-day .welcome-stat { padding:16px 14px; }
  .athletic-day .welcome-stat-icon { display:none; }
}
@media screen and (max-width:900px) {
  .coach-contextbar, .coach-rail-caption { display:none; }
  .coach-athletic-shell .main { padding-top:calc(var(--demo-h) + 76px); }
  .coach-athletic-shell .rail .brandmark.has-logo { display:none; }
  .coach-athletic-shell .rail #nav { margin-top:0; }
  .coach-athletic-shell .rail #nav .grp { margin-top:10px; }
  .coach-athletic-shell .workspace-heading h1 { font-size:1.875rem; }
  .athletic-day .welcome-top { align-items:flex-start; }
  .athletic-day .welcome-workbench { grid-template-columns:minmax(0,1.4fr) minmax(250px,1fr); }
}
@media screen and (max-width:700px) {
  .gate.athletic-gate { padding:0 20px 24px; }
  .athletic-gate .gate-card { border-radius:0; }
  .coach-signin-toprail { display:grid; grid-template-columns:1fr; gap:0; padding-bottom:8px; min-height:0; }
  .athletic-gate .gate-card .brandmark { flex-basis:auto; justify-self:center; align-items:center; width:150px; height:64px; min-height:64px; margin:4px 0; }
  .athletic-gate .gate-card .brandmark .logo { width:150px; height:64px; object-position:center; }
  .athletic-gate .gate-card .entry-toolbar { width:100%; gap:12px; flex-wrap:nowrap; }
  .athletic-gate .entry-toolbar .entry-theme { font-size:.75rem; padding-inline:10px; }
  .athletic-gate #gatebody { margin:24px 0 0; padding:24px; }
  .athletic-gate .gate-card h1 { font-size:1.875rem; }
  .athletic-gate .gate-card .sub { margin-bottom:24px; }
  .athletic-gate .auth-story { display:none; }
  .athletic-gate > .built { margin-top:24px; }
  .athletic-day { gap:22px; }
  .athletic-day .welcome-top { flex-direction:column; gap:18px; }
  .athletic-day .welcome-intro h1 { font-size:2.25rem; }
  .athletic-day .welcome-intro h2 { margin-top:7px; }
  .welcome-day-actions { width:100%; justify-content:space-between; gap:12px; }
  .athletic-day .welcome-date { text-align:left; font-size:.75rem; max-width:160px; line-height:1.5; }
  .athletic-day .welcome-day-actions > .btn { font-size:.8125rem; padding:10px 12px; }
  .athletic-day .welcome-stats { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .athletic-day .welcome-stat { min-height:78px; padding:12px 14px; }
  .athletic-day .welcome-stat strong { font-size:1.375rem; }
  .athletic-day .welcome-stat > span:nth-child(2) { gap:3px; }
  .athletic-day .welcome-workbench { grid-template-columns:1fr; gap:32px; }
  .athletic-day .welcome-panel-heading { margin-bottom:16px; }
  .athletic-day .welcome-next { padding:20px; margin-bottom:24px; }
  .athletic-day .welcome-next-person > time { font-size:3rem; }
  .athletic-day .welcome-next-person strong { font-size:1.0625rem; }
  .athletic-day .welcome-session { gap:12px; }
  .athletic-day .welcome-attention { border-left:0; padding-left:0; }
  .athletic-day .welcome-agenda { border-top:1px solid var(--rule); padding-top:28px; }
  .athletic-day .welcome-onboarding { grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
  .athletic-day .welcome-onboarding button { font-size:.75rem; align-items:flex-start; }
  .athletic-day .welcome-onboarding button > span { display:none; }
  .athletic-day .welcome-priorities .priority-row > .btn { padding-inline:10px; }
}
@media screen and (max-width:360px) {
  .gate.athletic-gate { padding-inline:14px; }
  .athletic-gate #gatebody { padding:22px 18px; }
  .welcome-day-actions { align-items:flex-start; flex-direction:column; }
  .athletic-day .welcome-date { max-width:none; }
  .athletic-day .welcome-day-actions > .btn { width:100%; }
  .athletic-day .welcome-next { padding:16px; }
  .athletic-day .welcome-next-person > time { font-size:2.75rem; }
  .athletic-day .welcome-session-list { padding-left:10px; }
  .athletic-day .welcome-session { flex-wrap:wrap; }
  .athletic-day .welcome-session-person { flex-basis:calc(100% - 75px); }
  .athletic-day .welcome-session > .tag { margin-left:70px; }
  .athletic-day .welcome-pending-sessions .welcome-panel-heading { flex-direction:column; }
}
@media print { .coach-contextbar, .coach-rail-caption { display:none; } }
