@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/roboto-latin-400-normal-BqEyEoaF.woff2)format("woff2"),url(/assets/roboto-latin-400-normal-D27F5sTu.woff)format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/roboto-latin-500-normal-7RbcRiD8.woff2)format("woff2"),url(/assets/roboto-latin-500-normal-fsTFPL3E.woff)format("woff")}@font-face{font-family:Roboto;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/roboto-latin-700-normal-BZpUvMxY.woff2)format("woff2"),url(/assets/roboto-latin-700-normal-YuyVweIx.woff)format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/montserrat-latin-600-normal-UVxSCcoG.woff2)format("woff2"),url(/assets/montserrat-latin-600-normal-CdhFl4lI.woff)format("woff")}@font-face{font-family:Montserrat;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/montserrat-latin-700-normal-BdjcYUrC.woff2)format("woff2"),url(/assets/montserrat-latin-700-normal-BWkrl476.woff)format("woff")}:root{--blue:#0f3b89;--blue-dark:#0a2a63;--blue-soft:#e6ecf6;--yellow:#ffed00;--red:#b3261e;--grey:#6b6b6b;--grey-soft:#efefef;--bg:#f5f5f5;--card:#fff;--text:#444;--heading:#0f3b89;--border:#d9dada;--heading-font:"Montserrat", system-ui, sans-serif;color:var(--text);background:var(--bg);font-family:Roboto,system-ui,-apple-system,Segoe UI,sans-serif;font-size:17px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--blue:#7ea2e6;--blue-soft:#1b2740;--red:#f2837b;--grey:#a4a8ad;--grey-soft:#26292d;--bg:#121418;--card:#1c1f24;--text:#e3e5e8;--heading:#a9c1f0;--border:#33373d}}*{box-sizing:border-box}body{background:var(--bg);margin:0}main{max-width:1040px;margin:0 auto;padding:16px 16px 48px}h1,h2,h3{font-family:var(--heading-font);color:var(--heading);margin:0 0 10px;font-weight:600;line-height:1.2}h1{font-size:1.7rem}h2{font-size:1.3rem}p{margin:0 0 12px}.topbar{color:#fff;background:#0f3b89;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;padding:6px 16px;font-size:.85rem;display:flex}.topbar .link{color:#fff}.account{flex-wrap:wrap;justify-content:flex-end;gap:2px 14px;display:flex}.site-header{background:#fff;border-bottom:1px solid #d9dada;padding:10px 16px}.brand{max-width:1040px;color:inherit;align-items:center;gap:14px;margin:0 auto;text-decoration:none;display:flex}.brand .mark{color:#fff;background:#0f3b89;border-bottom:4px solid #ffed00;border-radius:6px;place-items:center;width:48px;height:48px;display:grid}.brand .mark .icon{width:30px;height:30px}.brand .title strong{font-family:var(--heading-font);color:#0f3b89;font-size:1.35rem;font-weight:700;display:block}.brand .title small{color:#444;font-size:.85rem}.card{background:var(--card);border:1px solid var(--border);border-radius:4px;margin-bottom:16px;padding:18px}.narrow{max-width:460px;margin:28px auto}button,input,select{font:inherit}button{border:2px solid var(--blue);background:var(--card);color:var(--blue);cursor:pointer;border-radius:3px;padding:10px 18px;font-weight:700}button.primary{background:var(--blue);border-color:var(--blue);color:#fff}@media (prefers-color-scheme:dark){button.primary{color:#0b1a33}}button.danger{color:var(--red);border-color:var(--red)}button:disabled{opacity:.6;cursor:default}button.link,a.link{color:var(--blue);text-underline-offset:3px;cursor:pointer;background:0 0;border:none;padding:4px 0;font-weight:500;text-decoration:underline}label{color:var(--grey);margin-bottom:12px;font-size:.9rem;display:block}input,select{border:1px solid var(--border);background:var(--card);width:100%;color:var(--text);border-radius:3px;margin-top:4px;padding:10px 12px;display:block}input:focus,select:focus,button:focus-visible{outline:3px solid var(--yellow);outline-offset:1px}input.invalid{border-color:var(--red)}form>input{margin-bottom:12px}form>button.primary{width:100%}label.check{color:var(--text);align-items:center;gap:8px;display:flex}label.check input{width:auto;margin:0}label.check.inline{margin-right:14px;display:inline-flex}fieldset{border:1px solid var(--border);border-radius:3px;margin:0 0 12px;padding:8px 12px 0}legend{color:var(--grey);font-size:.9rem}.error{color:var(--red)}.notice{background:var(--yellow);color:#0f3b89;border-radius:3px;padding:10px 12px;font-weight:500}.rules{margin:0 0 14px;padding-left:1.2em}.success{font-size:1.05rem}.hint,.muted{color:var(--grey);font-size:.9rem}.preview-banner{background:var(--yellow);color:#0f3b89;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;padding:8px 16px;font-size:.9rem;font-weight:500;display:flex}.preview-banner .link{color:#0f3b89}.next{border-top:5px solid var(--yellow)}.next small{color:var(--grey);text-transform:uppercase;letter-spacing:.05em;font-size:.75rem;font-weight:700}.next .big{color:var(--text);font-size:1.1rem;font-weight:700}.coach-actions{gap:8px;margin-bottom:12px;display:flex}.whatsapp{color:var(--grey);font-size:.85rem}.month h3{z-index:1;background:var(--bg);text-transform:capitalize;padding:14px 0 6px;font-size:1.05rem;position:sticky;top:0}.month ul{margin:0;padding:0;list-style:none}.event{background:var(--card);border:1px solid var(--border);border-left:5px solid var(--blue);border-radius:4px;grid-template-columns:78px 1fr auto;align-items:start;gap:10px;margin-bottom:8px;padding:10px 12px;display:grid}.event.match_day{border-left-color:var(--yellow)}.event.no_training{border-left-color:var(--border);background:var(--grey-soft)}.event.today{box-shadow:0 0 0 2px var(--blue)}.event.past{opacity:.55}.event.no-date{grid-template-columns:1fr auto}.event .date{font-family:var(--heading-font);color:var(--heading);font-variant-numeric:tabular-nums;font-weight:700}.event .line{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:2px;display:flex}.event .note{color:var(--grey);font-size:.9rem}.event .tba{color:var(--grey);font-style:italic}.event .edit{font-size:.85rem}.badge{text-transform:uppercase;letter-spacing:.03em;background:var(--blue-soft);color:var(--blue);border-radius:3px;padding:2px 8px;font-size:.72rem;font-weight:700}.badge.match_day{background:var(--yellow);color:#0f3b89}.badge.no_training{background:var(--card);color:var(--grey)}.badge.changed{background:var(--red);color:#fff}.overlay{z-index:10;background:#00000080;justify-content:center;align-items:flex-start;padding:16px;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{width:100%;max-width:520px;margin-top:24px}.grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}.buttons{align-items:center;gap:8px;display:flex}.spacer{flex:1}.icon{vertical-align:-.2em;flex:none;width:1.15em;height:1.15em}.badge{align-items:center;gap:4px;display:inline-flex}.badge .icon{width:1.1em;height:1.1em}.place{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.place .icon{color:var(--blue)}.place .rain{color:var(--grey)}.next h2{align-items:center;gap:8px;display:flex}.next h2 .icon{width:1.1em;height:1.1em}button .icon{margin-right:2px}.quick{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.toolbar .coach-actions{margin:0}.segmented{border:2px solid var(--blue);border-radius:3px;display:inline-flex;overflow:hidden}.segmented button{background:var(--card);color:var(--blue);border:none;border-radius:0;padding:8px 14px}.segmented button.active{background:var(--blue);color:#fff}@media (prefers-color-scheme:dark){.segmented button.active{color:#0b1a33}}.cal-head{align-items:center;gap:8px;margin:8px 0;display:flex}.cal-head h3{text-align:center;text-transform:capitalize;min-width:11ch;margin:0}.icon-btn{padding:6px 8px;line-height:0}.today-btn{margin-left:auto}.cal-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.cal-dow{text-align:center;font-family:var(--heading-font);color:var(--grey);padding:4px 0;font-size:.8rem;font-weight:700}.cal-day{border:1px solid var(--border);background:var(--card);min-height:104px;color:var(--text);text-align:left;border-radius:4px;flex-direction:column;align-items:stretch;gap:3px;padding:6px;font-weight:400;display:flex}.cal-day .num{font-family:var(--heading-font);font-size:.9rem;font-weight:700}.cal-day.out{opacity:.45}.cal-day.past:not(.today){background:var(--grey-soft)}.cal-day.today .num{background:var(--blue);color:#fff;border-radius:999px;align-self:flex-start;padding:0 7px}.cal-day.selected{border:2px solid var(--blue);padding:5px}.chip{background:var(--blue-soft);color:var(--blue);border-radius:3px;align-items:center;gap:4px;padding:2px 5px;font-size:.78rem;font-weight:500;display:flex;overflow:hidden}.chip.match_day{background:var(--yellow);color:#0f3b89}.chip.no_training{color:var(--grey);border:1px dashed var(--border);background:0 0}.chip.changed{box-shadow:inset 3px 0 0 var(--red)}.chip-text{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.chip-loc{margin-left:auto}.cal-legend{color:var(--grey);flex-wrap:wrap;gap:6px 16px;margin:12px 0;font-size:.82rem;display:flex}.cal-legend span{align-items:center;gap:4px;display:inline-flex}.cal-detail{margin-top:8px}.cal-detail ul{margin:0;padding:0;list-style:none}@media (width<=719px){.cal-grid{gap:2px}.cal-day{aspect-ratio:1/1.1;align-items:center;gap:1px;min-height:0;padding:3px}.cal-day.selected{padding:2px}.cal-day .num{font-size:.8rem}.cal-day.today .num{align-self:center;padding:0 5px}.chip{justify-content:center;gap:1px;padding:1px 2px}.chip .icon{width:.95em;height:.95em}.chip-text{display:none}.chip-loc{margin-left:0}.chip.no_training{border:none}}@media (width<=420px){.brand .mark{width:40px;height:40px}.brand .mark .icon{width:25px;height:25px}.brand .title strong{font-size:1.15rem}.event{grid-template-columns:64px 1fr}.event .edit{grid-column:2;justify-self:start}}
