/* Shared mobile coaching interface. Training data and pitch geometry stay separate. */
:root{--page:#f4f7f1;--card:#fff;--soft:#edf4e8;--line:#d6e2d5;--muted:#4f685a;--ui-shadow:0 3px 16px #183f3410;color-scheme:light}
body{background:var(--page)}button:not(:disabled),summary,a{touch-action:manipulation;cursor:pointer}h1,h2,h3{text-wrap:balance}input,select,textarea{font:inherit}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{background:#fff;border-bottom:1px solid var(--line);padding-block:6px}.header-inner{gap:12px}.brand{font-size:12px;line-height:1.2}.brand img{width:26px;height:26px}.header-actions{gap:6px}.header-button{border-radius:12px;min-height:44px;padding:8px 11px;font-weight:650;box-shadow:none}
.container:not(.exercise-focus){padding-top:16px}.session-picker{align-items:end}.session-picker label{font-size:12px;font-weight:650;margin-bottom:5px;display:block}.session-picker select{min-height:48px;box-shadow:none;font-weight:600}.container:not(.exercise-focus) .session-meta{margin-bottom:18px;font-size:12px;color:var(--muted)}
.container:not(.exercise-focus) h1{font-size:27px;line-height:1.15;letter-spacing:-.7px}.eyebrow{font-size:11px;line-height:1.4;letter-spacing:1.1px;color:#40624e}.muted{line-height:1.55;color:var(--muted)}
.button,.secondary-button{font-weight:650;border-radius:13px}.button{box-shadow:0 3px 8px #13523c15}.secondary-button{background:#fff}.text-button{font-weight:650;text-underline-offset:3px}.button:disabled,.secondary-button:disabled{cursor:default;opacity:.45}

/* Overview: purpose, preparation checklist, then two concrete next actions. */
.overview-grid,.overview-main,.overview-tools{min-width:0}.overview-hero{padding:18px 16px 0;margin-bottom:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--ui-shadow)}.overview-hero>.eyebrow{margin:0 0 8px}.container:not(.exercise-focus) .overview-hero h1{margin:0 0 10px}.overview-hero .active-cue{margin:0 0 16px;padding:0;border:0;background:none;color:#426b51;font-size:15px;line-height:1.5;font-weight:550}
.overview-hero .summary-facts{margin:0 -16px;border-radius:0 0 20px 20px;padding:9px 4px;border-top:1px solid var(--line);background:#f0f5ea}.summary-facts small{font-size:11px}.summary-facts strong{font-size:15px}.summary-facts>button{gap:8px;min-height:48px}.summary-facts img{width:21px;height:21px}
.section-heading{margin-bottom:10px}.section-heading h2{font-size:17px}.section-heading .small-note{font-size:12px}.summary-kit{margin-bottom:14px}.summary-gear-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.summary-gear,.summary-gear:nth-child(n+4){grid-column:span 2;min-height:92px;padding:11px 9px;border-radius:15px;background:#fff;box-shadow:var(--ui-shadow)}.summary-gear:nth-child(n+4){grid-column:span 3;min-height:88px}.summary-gear strong{font-size:12px;line-height:1.35}.summary-gear small{font-size:13px;line-height:1.4}.summary-gear:last-child small{font-size:12px}.summary-gear .summary-gear-status{font-size:11px;margin-top:6px}.shell-kit-image{width:31px;height:31px}.summary-gear[aria-pressed=true]{border-color:#427653;background:#e9f3e3;box-shadow:inset 0 0 0 1px #427653}.summary-gear[aria-pressed=true] .summary-gear-status{color:#235633;font-weight:650}
.summary-journey{gap:8px;margin-bottom:20px}.summary-journey button{min-height:56px;font-size:13px;padding:10px 8px;border-radius:14px}.shell-disclosure{border-radius:16px;box-shadow:0 2px 8px #183f3406}.shell-disclosure>summary{min-height:58px;padding:14px;font-size:14px}.shell-disclosure[open]{border-color:#adc6ad}.shell-disclosure[open]>summary{background:#f0f5eb}.disclosure-body{padding-top:12px}.shell-disclosure .plan-card{padding-top:12px}.shell-disclosure #conditions-summary{font-size:12px}
.plan-tabs{border:1px solid var(--line);background:#f0f4ec}.plan-group-card{border-radius:14px}.plan-choice-row button,.plan-group-picker button{border-radius:10px}.plan-card input{font-size:18px}.plan-card .plan-group-card>strong{font-size:18px}.plan-card [role=alert]{line-height:1.5}

/* One consistent bottom navigation; safe-area clearance is kept. */
.bottom-nav{background:#fff;border-radius:20px 20px 0 0;box-shadow:0 -3px 20px #163b3010;padding-inline:8px;gap:4px}.bottom-nav a{min-height:56px;gap:5px;font-size:11px;border-radius:13px;color:#4f675b}.bottom-nav a[aria-current=page]{background:#e4f0dc;color:#174f36;font-weight:750}.bottom-nav img{width:22px;height:22px}

/* Exercise: strong time summary and a readable, complete procedure. */
body:has(.exercise-focus),.exercise-focus{background:var(--page)}.exercise-focus .exercise-toolbar{padding-bottom:5px}.exercise-focus .activity-heading{margin-bottom:12px}.exercise-focus .activity-heading h1{font-size:25px;line-height:1.2}.exercise-card-menu>summary{box-shadow:0 2px 8px #173f3608}.card-group-bar{color:#4d6757}.card-group-button{border-radius:11px;background:#e1efd7}.exercise-focus .exercise-flow>.football-figure{border-radius:18px;box-shadow:var(--ui-shadow)}
.exercise-phase-bar{padding:0;gap:8px;margin-bottom:12px}.exercise-phase-bar button{border-radius:12px;background:#fff}.exercise-phase-label{font-size:12px;line-height:1.45;color:#42604e}
.exercise-focus .card-glance{border:1px solid var(--line);border-radius:17px;overflow:hidden;background:#fff;box-shadow:var(--ui-shadow);margin-bottom:16px}.exercise-dose-total{background:#174f3d;color:white;border:0;min-height:54px;padding:12px}.exercise-dose-total span{font-size:13px;max-width:23ch}.exercise-dose-total strong{font-size:24px}.exercise-dose-grid{background:#f0f5eb;padding:12px 0}.exercise-dose-grid .card-dose{min-height:54px}.exercise-dose-grid .card-dose-label{font-size:12px;color:#4a6453}.exercise-dose-grid .card-dose strong{font-size:19px;line-height:1.3}.exercise-dose-grid .card-dose small{font-size:12px;line-height:1.4;color:#4f6859}.exercise-dose-schedule,.exercise-dose-note{font-size:14px;line-height:1.55;padding:12px;color:#355541}.exercise-dose-note{padding-top:0}
.exercise-summary{padding:16px;border:1px solid var(--line);border-radius:17px;background:#fff;margin-bottom:16px;box-shadow:var(--ui-shadow)}.exercise-summary h2{font-size:20px;line-height:1.3;margin-bottom:10px}.exercise-summary h3{font-size:14px;line-height:1.4;margin:18px 0 8px;color:#2e543c}.exercise-summary-description{font-size:15px;line-height:1.6;color:#36523f}.exercise-summary .exercise-preview{border-radius:12px;background:#edf5e8;padding:12px;box-shadow:none}.exercise-summary-steps{font-size:15px;line-height:1.6;gap:0}.exercise-summary-steps li{padding:10px 0 10px 4px;border-bottom:1px solid #e4ece1}.exercise-summary-steps li:last-child{border-bottom:0;padding-bottom:0}.exercise-summary-steps li::marker{color:#28653c;font-weight:750}.exercise-summary:focus-visible,.football-figure:focus-visible{outline:3px solid #16729c;outline-offset:2px}
.exercise-focus .exercise-topic-nav{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;background:#fff;padding:5px;border:1px solid var(--line);border-radius:16px;bottom:calc(76px + env(safe-area-inset-bottom));box-shadow:0 -2px 12px #183f3408}.exercise-focus .exercise-topic-nav button{display:flex;flex-direction:column;gap:4px;min-height:48px;padding:5px 1px;font-size:11px;font-weight:600;border:0;border-radius:11px;box-shadow:none;background:transparent}.exercise-topic-nav .card-ui-icon{width:19px;height:19px}.exercise-focus .exercise-topic-nav button[aria-pressed=true]{background:#e3efd9;color:#154d34}.exercise-focus .step-actions{bottom:calc(10px + env(safe-area-inset-bottom))}.exercise-focus #complete-block{min-height:56px;border-radius:15px;font-size:17px}.exercise-card{border-radius:15px}.exercise-info h2{font-size:19px}.exercise-info p,.exercise-info li{line-height:1.6}.exercise-pager{gap:8px}.exercise-pager button{min-height:48px}.exercise-tweaks>summary{min-height:48px}.exercise-focus .timer-panel{background:white;border-radius:16px;margin-bottom:3px}.timer-panel .timer-readout output{font-variant-numeric:tabular-nums}

/* Library: search first, clearly named mode buttons, smaller result previews. */
.container[data-view=catalog]>.session-picker,.container[data-view=catalog]>.session-meta{display:none}.catalog-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:5px;background:#e8efe3;border:1px solid var(--line);border-radius:15px;margin-bottom:12px}.catalog-mode-tabs button{min-height:46px;border:0;border-radius:10px;background:transparent;font:inherit;font-size:14px;font-weight:650;color:#45614e}.catalog-mode-tabs button[aria-pressed=true]{background:white;color:#164f37;box-shadow:0 2px 7px #183f3414}
.catalog-filters{display:grid;grid-template-columns:1fr;gap:10px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:14px;margin-bottom:12px}.catalog-filters>div{min-width:0}.catalog-filters label{display:block;font-size:12px;line-height:1.4;font-weight:650;margin-bottom:5px;color:#4b6453}.catalog-filters select,.catalog-filters input{width:100%;margin:0;min-height:48px;background:#f8faf5}.catalog-search{grid-column:1/-1}.catalog-card{border-radius:17px;box-shadow:var(--ui-shadow);padding:16px;gap:8px}.catalog-card>small{font-size:12px;color:#55705c}.catalog-card>strong{font-size:18px;line-height:1.3}.catalog-card>p{font-size:14px;line-height:1.5;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.catalog-card .catalog-config{display:block;line-height:1.5;font-size:12px;padding:8px 10px;background:#f0f5eb;border-left:3px solid #adc6a3;border-radius:9px}.catalog-card .topic-chips{margin:0;gap:5px;max-height:56px;overflow:hidden}.catalog-card .topic-chip{font-size:11px;padding:4px 7px;background:#f0f4ed;border-radius:6px}.catalog-open{font-size:13px;font-weight:700;padding-top:5px;color:#1b633e}.catalog-card:hover,.archive-item:hover{border-color:#8eb08c}

/* Preparation, equipment, archive and personal plan share the same surfaces. */
.pitch-setup{border:1px solid var(--line);border-radius:20px;background:var(--page);box-shadow:0 16px 50px #123f372b}.pitch-setup .setup-header{background:white;border-bottom:1px solid var(--line);padding:16px}.pitch-setup .setup-header h2{font-size:22px;letter-spacing:-.4px}.pitch-setup .setup-body{padding:16px;gap:12px}.pitch-setup .setup-progress{font-size:12px;font-weight:650;color:#3f6a4b}.pitch-setup .setup-step-title{font-size:22px;line-height:1.3;letter-spacing:-.4px}.pitch-setup .setup-map{background:white;border:1px solid var(--line);border-radius:16px}.pitch-setup .setup-action{border:1px solid var(--line);border-radius:14px;background:#edf5e7;font-size:15px;line-height:1.5}.pitch-setup .setup-motion-controls button{min-height:48px;border-radius:12px}.pitch-setup .setup-details{border-radius:14px}.pitch-setup .setup-footer{border-top:1px solid var(--line);background:white;padding:12px 16px max(12px,env(safe-area-inset-bottom))}.pitch-setup .setup-footer button{border-radius:13px}
.equipment-card,.private-card,.personal-step,.note-card,.archive-item{border-radius:17px;box-shadow:var(--ui-shadow);background:white}.equipment-card{padding:16px;gap:12px}.equipment-card p,.private-card p,.personal-step p{font-size:15px;line-height:1.55}.equipment-list{gap:10px}.private-card{padding:18px}.private-card h2{font-size:20px;line-height:1.3}.private-card label,#private-view>.step-label{font-size:13px;font-weight:650}.private-card input,.private-card textarea,#private-plan-select,#personal-topic{font-size:16px;border-radius:12px;min-height:48px}.private-card .button{width:100%;margin-top:12px}.private-card .small-note{font-size:12px;line-height:1.5}#private-ready-title{display:flex;align-items:center;gap:10px}#private-ready-title:before{content:'';flex:none;width:36px;height:36px;border-radius:11px;background:#e4efdb url('./assets/bootstrap-icons/lock.svg') center/20px no-repeat}.private-tools button,.personal-navigation button{min-height:48px}.archive-item{padding:14px}.archive-item strong{font-size:16px}.archive-item small{font-size:12px;line-height:1.5}.guide-header,.layout-header{background:white;border-bottom:1px solid var(--line)}.guide-current-step,.guide-card{border-radius:15px}.guide-body p{line-height:1.6}.guide-tabs button{min-height:44px}.guide-footer{background:white;border-top:1px solid var(--line)}dialog{border-radius:20px}dialog::backdrop{background:#173c315e}
@media(min-width:860px){.overview-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,1fr);gap:24px;align-items:start}.overview-tools{padding-top:0}.overview-hero{padding:22px 20px 0}.overview-hero .summary-facts{margin-inline:-20px}.summary-gear,.summary-gear:nth-child(n+4){min-height:96px}.summary-journey button{font-size:14px}.catalog-filters{grid-template-columns:minmax(0,1.6fr) minmax(200px,1fr)}.catalog-search{grid-column:auto}.catalog-mode-tabs{max-width:420px}.catalog-list{gap:16px}}
@media(max-width:360px){.brand{font-size:10px}.header-button{padding-inline:8px;font-size:11px}.overview-hero{padding:16px 12px 0}.overview-hero .summary-facts{margin-inline:-12px}.summary-facts>button{gap:5px}.summary-facts img{width:18px;height:18px}.summary-facts strong{font-size:13px}.summary-gear,.summary-gear:nth-child(n+4){padding:9px 7px;gap:6px}.summary-gear .shell-kit-image{width:25px;height:25px}.summary-gear small{font-size:12px}.summary-gear strong{font-size:11px}.summary-journey button{font-size:12px}.exercise-summary{padding:13px}.exercise-dose-grid .card-dose strong{font-size:17px}.exercise-dose-grid .card-dose small{font-size:11px}.exercise-focus .exercise-topic-nav{gap:2px;padding:4px}.exercise-focus .exercise-topic-nav button{font-size:10px}.pitch-setup .setup-step-title{font-size:20px}}
@media(max-height:650px){.pitch-setup .setup-body{padding:10px 12px;gap:8px}.pitch-setup .setup-map{height:145px}.pitch-setup .setup-step-title{font-size:18px}.pitch-setup .setup-action{font-size:14px}.exercise-focus .activity-heading h1{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}
@media(max-width:650px){.overview-hero{padding:16px 14px 0;margin-bottom:12px}.overview-hero>.eyebrow{display:none}.overview-hero .summary-facts{margin-inline:-14px}.summary-facts img{display:none}.overview-hero .summary-facts{padding-block:7px}.summary-facts strong{white-space:nowrap;font-size:14px}.summary-gear:nth-child(-n+3){flex-direction:column;gap:5px;text-align:center;justify-content:center;padding:10px 6px;min-height:108px}.summary-gear:nth-child(-n+3) .shell-kit-image{width:29px;height:29px}.summary-gear:nth-child(-n+3) strong{margin-bottom:2px}.summary-gear:nth-child(-n+3) .summary-gear-status{margin-top:3px}.summary-journey{margin-bottom:18px}}
.summary-journey:has(#summary-setup[hidden]){grid-template-columns:1fr}
body:has(dialog[open]){overflow:hidden}
.football-focus .exercise-phase-bar button{width:auto;flex:0 0 auto;min-width:44px;margin:0}.football-focus .football-figure{position:relative;overflow:hidden;border-radius:16px;margin:0 0 12px;background:#edf3e7}.football-focus .football-figure>svg{display:block;width:100%;min-height:0;max-height:60dvh}.football-focus .football-figure>.football-controls{position:absolute;right:12px;bottom:12px;display:flex;gap:8px;margin:0;padding:0}.football-focus .football-figure>.football-controls>.button{width:auto;min-width:100px;min-height:48px;margin:0;border:2px solid white;border-radius:13px;background:#165c3a;color:white;box-shadow:0 3px 12px #123f3733;font-weight:700}.football-focus .exercise-topic-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:4px;padding:6px;border:1px solid var(--line);border-radius:15px;background:white}.football-focus .exercise-topic-nav button{width:auto;min-width:0;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:6px 2px;margin:0;border:0;border-radius:10px;font-size:11px}.football-focus .exercise-topic-nav button[aria-pressed=true]{background:#e2efd6;color:#164f37}.football-focus .exercise-topic-nav .card-ui-icon{width:19px;height:19px}
@media(max-width:650px){.summary-facts strong{font-size:clamp(12px,3.6vw,14px)}}
/* Equal checklist cells, static preparation by drill and timed exercise phases. */
.summary-gear-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr}.summary-gear,.summary-gear:nth-child(n+4),.summary-gear:nth-child(-n+3){grid-column:auto;min-height:112px;padding:12px 10px;display:flex;flex-direction:column;justify-content:flex-start;align-items:center;text-align:center;gap:7px}.summary-gear .shell-kit-image,.summary-gear:nth-child(-n+3) .shell-kit-image{width:29px;height:29px;flex:none}.summary-gear>span{display:flex;flex:1;flex-direction:column;align-items:center;width:100%;gap:3px}.summary-gear strong{font-size:12px;line-height:1.35}.summary-gear small,.summary-gear:last-child small{font-size:12px;line-height:1.4}.summary-gear .summary-gear-status,.summary-gear:nth-child(-n+3) .summary-gear-status{margin-top:auto;padding-top:5px}
.setup-exercise-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:12px 16px;border-bottom:1px solid var(--line);background:white;flex:none}.setup-exercise-tabs button{width:auto;margin:0;padding:8px 5px;min-height:44px;border:1px solid var(--line);border-radius:10px;background:white;color:#355640;font-size:12px;font-weight:650}.setup-exercise-tabs button[aria-pressed=true]{background:#e6f0dd;border-color:#779c72;color:#194e34}.pitch-setup .setup-step-title{margin-bottom:4px}.pitch-setup .setup-map{height:clamp(160px,30dvh,320px)}.pitch-setup .setup-action{margin:10px 0}.setup-details summary{min-height:44px}
.exercise-phase-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}.exercise-phase-card{width:100%;min-height:48px;margin:0;padding:12px;border:1px solid var(--line);border-radius:13px;background:#fff;color:#294c38;text-align:left;font:inherit}.exercise-phase-card.is-current{background:#f0f6e9;border-color:#779b70;box-shadow:inset 3px 0 #6f9267}.phase-card-heading{display:flex;align-items:center;gap:9px;font-size:15px;line-height:1.4}.phase-card-number{width:28px;height:28px;flex:none;display:grid;place-items:center;background:#edf3e8;border-radius:8px;font-size:13px;font-weight:750}.phase-card-doses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin:10px 0}.phase-card-dose small,.phase-card-dose strong{display:block;line-height:1.45}.phase-card-dose small{font-size:12px;color:#526c59}.phase-card-dose strong{font-size:14px}.phase-card-cue{display:block;font-size:14px;line-height:1.55}.phase-card-status{display:block;font-size:12px;line-height:1.4;font-weight:650;margin-top:8px;color:#315d3d}.phase-card-status:empty{display:none}.exercise-phase-rules{margin-top:12px}.exercise-phase-rules>summary{min-height:44px;font-size:14px;font-weight:650}.exercise-phase-rules ol{font-size:14px;line-height:1.6;padding-left:22px}.exercise-phase-rules li+li{margin-top:8px}
@media(min-width:860px){.summary-gear-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-height:650px){.setup-exercise-tabs{padding:7px 12px;gap:5px}.setup-exercise-tabs button{padding-block:5px}.pitch-setup .setup-map{height:145px}}

@media(max-width:360px){.summary-gear-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

.exercise-phase-card:not(.is-current) .phase-card-cue{display:none}

.exercise-kit-overview{grid-auto-rows:1fr}.exercise-kit-choice{height:100%}
