:root{color-scheme:light;--red:#d71920;--ink:#182231;--muted:#667385;--line:#e4e8ee;--paper:#fff;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:#f5f6f8;color:var(--ink)}header{background:var(--paper);border-bottom:1px solid var(--line);min-height:92px;padding:18px max(24px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;gap:14px;font-size:23px;font-weight:800;white-space:nowrap}.brand img{width:54px;height:54px;object-fit:contain}.brand small{display:block;color:var(--muted);font-size:12px;font-weight:500;margin-top:3px}main{max-width:1160px;margin:32px auto;padding:0 24px}footer{text-align:center;font-size:12px;color:var(--muted);padding:24px}h1{font-size:clamp(26px,4vw,36px);line-height:1.2;margin:8px 0 14px}h2{font-size:21px;margin:0 0 18px}h3{font-size:17px;margin:0 0 8px}p{line-height:1.6}.muted,small{color:var(--muted)}.eyebrow{font-size:11px;font-weight:800;letter-spacing:1.5px;text-transform:uppercase;color:var(--red)}.card{background:var(--paper);border:1px solid var(--line);border-radius:18px;padding:26px;margin-bottom:20px;box-shadow:0 8px 28px #18223104}.auth{max-width:470px;margin:32px auto}.auth-intro{text-align:center;margin-bottom:26px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.grid .card{margin:0}.topline{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.selectors{display:grid;grid-template-columns:1fr 1fr;gap:16px;background:#fff;padding:18px 22px;border:1px solid var(--line);border-radius:14px;margin-bottom:26px}label{display:block;font-size:13px;font-weight:650;margin-bottom:7px}input,select{font:inherit;color:inherit;min-height:46px;border:1px solid #cdd5df;border-radius:9px;padding:11px 12px;background:#fff;width:100%;margin-bottom:17px}input:focus,select:focus{outline:2px solid #f1b6b8;outline-offset:2px}button{font:inherit;cursor:pointer;border:0;border-radius:9px;padding:12px 16px;background:var(--red);color:#fff;font-size:14px;font-weight:650;min-height:44px}button:hover{filter:brightness(.96)}button:disabled{opacity:.55;cursor:wait}.secondary{color:var(--ink);background:#f0f2f5;border:1px solid var(--line)}.wide{width:100%}.tabs{display:flex;gap:8px;margin-bottom:22px}.tabs button{flex:1}.tabs button[aria-selected=false]{background:#f0f2f5;color:var(--muted)}.message{border:1px solid #b6dacb;background:#effaf4;padding:13px 16px;border-radius:10px;margin:18px 0;font-size:14px;white-space:pre-wrap}.message.error{background:#fff1f1;border-color:#f1bcbc;color:#942329}.badges{display:flex;flex-wrap:wrap;gap:6px}.badge{font-size:11px;font-weight:700;background:#fff0f0;color:#ab252b;border-radius:6px;padding:6px 9px}.stat{font-size:38px;font-weight:800;line-height:1.2;margin:14px 0 6px}.list-item{padding:15px 0;border-bottom:1px solid var(--line)}.list-item:last-child{border:0}.list-item p{margin:5px 0}.list-item button{margin-top:8px}.step{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid var(--line)}.step b{font-size:14px}.step span{border-radius:50%;background:#fff0f0;color:var(--red);min-width:30px;height:30px;text-align:center;padding-top:5px;font-weight:800}.step p{margin:4px 0;font-size:13px}.notice{padding:14px 18px;border-radius:12px;background:#fceee8;color:#80432f;font-size:13px;line-height:1.6;margin-bottom:22px}.email{font-size:12px;margin-right:8px;word-break:break-word}.empty{border:1px dashed #cdd5df;padding:20px;border-radius:12px;color:var(--muted)}details>summary{font-size:14px;font-weight:700;cursor:pointer;margin-bottom:18px}#account{display:flex;align-items:center;gap:8px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:12px 8px;border-bottom:1px solid var(--line)}.table-scroll{overflow-x:auto}.select-label{font-size:11px;color:var(--muted);margin-bottom:6px}.selectors select{margin:0}.inline{display:flex;gap:8px;align-items:center}.divider{height:1px;background:var(--line);margin:20px 0}
@media(max-width:700px){header{padding:14px 16px;align-items:flex-start}.brand{font-size:18px;gap:9px}.brand img{width:42px;height:42px}.brand small{font-size:10px}main{margin:24px auto;padding:0 16px}.card{padding:21px}.grid{grid-template-columns:1fr}.selectors{grid-template-columns:1fr;padding:16px}.topline{align-items:flex-start;flex-direction:column}#account{align-items:flex-end;flex-direction:column}.email{max-width:135px;text-align:right;font-size:10px}#account button{font-size:11px;padding:8px 11px;min-height:36px}.auth{margin:22px auto}.stat{font-size:32px}.inline{align-items:stretch;flex-direction:column}}
.selectors{grid-template-columns:1fr 1fr 1fr}.section-nav{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.section-nav button{background:#fff;border:1px solid var(--line);color:var(--muted)}.section-nav button[aria-current=page]{background:var(--red);color:#fff;border-color:var(--red)}.player-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.player-card{padding:18px;background:#fff;border:1px solid var(--line);color:var(--ink);display:flex;align-items:center;gap:14px;text-align:left;box-shadow:0 5px 20px #18223104}.player-card b{font-size:16px}.player-card p{font-size:12px;font-weight:500;color:var(--muted);margin:5px 0}.player-card small{font-weight:400;font-size:11px}.avatar{width:54px;height:54px;flex-shrink:0;border-radius:14px;background:#fff0f0;color:var(--red);display:grid;place-items:center;overflow:hidden;font-size:23px;font-weight:800}.avatar img{width:100%;height:100%;object-fit:cover}.avatar.large{width:88px;height:88px;font-size:40px}.profile-head{display:flex;align-items:center;gap:20px;margin-bottom:24px}.profile-head h1{margin:8px 0;font-size:30px}.profile-head p{margin:0}.profile-card{margin-top:18px}.chevron{margin-left:auto;color:var(--muted)}.count{font-size:14px;background:#fff0f0;border-radius:7px;padding:5px 9px;color:var(--red);vertical-align:middle}.skills-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.skills-grid>div{display:flex;justify-content:space-between;gap:15px;padding:12px;background:#f5f6f8;border-radius:8px;font-size:13px}.edit-form{margin-top:24px;padding:20px;background:#f9fafb;border-radius:12px}textarea{font:inherit;color:inherit;width:100%;border:1px solid #cdd5df;border-radius:9px;padding:12px;resize:vertical;margin-bottom:14px}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}.preview{padding:20px;background:#f9fafb;border:1px solid var(--line);border-radius:12px;margin-top:16px}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preview-grid>div{background:#fff;border-radius:8px;padding:12px}.preview-grid b{font-size:24px;display:block}.preview-grid small{display:block;font-size:11px;margin-top:4px}.checkline{display:flex;gap:10px;align-items:flex-start;line-height:1.6;margin:20px 0}.checkline input{width:18px;min-height:18px;height:18px;margin:3px 0;flex-shrink:0}.development-note{font-size:12px;text-align:center;margin-top:30px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:700px){.selectors{grid-template-columns:1fr}.player-grid{grid-template-columns:1fr}.profile-head{gap:14px;align-items:flex-start}.profile-head h1{font-size:24px;overflow-wrap:anywhere}.avatar.large{width:64px;height:64px}.skills-grid{grid-template-columns:1fr}.preview-grid{grid-template-columns:1fr 1fr}.section-nav button{flex:1;font-size:12px;white-space:nowrap}.preview{padding:15px}}
.calendar-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:22px 0}.calendar-toolbar .inline{flex-direction:row;align-items:center;flex-wrap:wrap}.calendar-toolbar b{font-size:14px}.calendar-hint{font-size:12px;margin:8px 0}.week-agenda{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:26px}.agenda-day{padding:18px;border:1px solid var(--line);background:#fff;border-radius:14px}.agenda-day h3{font-size:14px;margin-bottom:14px}.agenda-day>p{font-size:12px;margin:0}.today{border-color:#e7a5a8!important;background:#fffafa!important}.calendar-event{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:6px;background:#f6f8fb;color:var(--ink);text-align:left;border-left:4px solid #6485bd;border-radius:8px;margin:10px 0;padding:14px;overflow-wrap:anywhere}.calendar-event.training{border-left-color:#449b70}.calendar-event.match{border-left-color:var(--red)}.event-time{font-size:11px;font-weight:650;color:var(--muted)}.calendar-event>span{font-size:12px;font-weight:400}.calendar-event>span.event-time{font-weight:650}.calendar-event.cancelled{opacity:.65;border-left-color:#88909b}.calendar-event.cancelled>b,.month-dot.cancelled{text-decoration:line-through}.response-counts{display:flex;flex-wrap:wrap;gap:8px;font-size:11px;margin-top:6px}.response-counts>span{font-size:11px}.reply-yes{color:#257147}.reply-no{color:#a22b32}.reply-maybe{color:#95651e}.reply-badge{display:inline-block;font-size:11px;background:#f0f2f5;border-radius:6px;padding:5px 9px;margin-left:12px}.event-detail{margin-top:20px}.event-detail h2{margin-top:14px}.event-detail button{margin:6px 8px 6px 0}.weekly-replies h2{margin-top:12px}.weekly-reply-row{padding:18px 0;border-top:1px solid var(--line)}.weekly-reply-row h3{font-size:14px;line-height:1.5}.weekly-replies>p{font-size:13px}.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px}.month-heading{text-align:center;font-size:12px;padding:10px}.month-day{min-height:112px;padding:9px;background:#fff;color:var(--ink);border:1px solid var(--line);display:flex;flex-direction:column;align-items:stretch;text-align:left;gap:7px;font-size:13px}.month-day.outside{opacity:.45}.month-dot{font-size:10px;border-radius:4px;background:#ecf5ef;color:#2a6f46;padding:4px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;max-width:100%}.month-dot.match{background:#fff0f0;color:#a02c32}.month-dot.other{background:#edf1fa;color:#476294}.weekday-picker{border:1px solid var(--line);padding:14px;border-radius:9px;margin-bottom:20px;display:grid;grid-template-columns:1fr 1fr}.weekday-picker legend{font-size:13px;font-weight:650}.weekday-picker label{display:flex;align-items:center;gap:8px;margin:6px 0}.weekday-picker input{width:18px;height:18px;min-height:18px;margin:0}#seriesPreview{margin-bottom:20px;font-size:13px}input:disabled,select:disabled{background:#f3f4f6;color:var(--muted)}
@media(max-width:700px){.calendar-toolbar{align-items:flex-start;flex-direction:column}.calendar-toolbar .inline{gap:8px}.calendar-toolbar b{font-size:12px}.calendar-toolbar button{font-size:12px;padding:10px 12px}.week-agenda{grid-template-columns:1fr}.month-grid{gap:3px}.month-day{padding:5px;min-height:85px;border-radius:6px;font-size:11px}.month-dot{font-size:8px;padding:3px}.month-heading{padding:8px 0}.event-detail button{width:100%;margin:6px 0}.weekday-picker{grid-template-columns:1fr 1fr;padding:12px}.weekday-picker label{font-size:12px}}

@media(max-width:700px){.month-title{display:none}.month-dot{font-size:9px;padding:3px 2px}}
.evaluations h2{margin-top:12px}.evaluation-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:20px 0}.evaluation-summary>div{background:#f7f8fa;border-radius:10px;padding:16px}.evaluation-summary b{display:block;font-size:28px;margin-top:6px}.evaluation-summary small{font-size:12px}.skill-category{margin-top:24px}.skill-category h3{display:flex;justify-content:space-between;gap:12px}.category-average{font-size:12px;color:var(--muted);white-space:nowrap}.skills-grid b{font-size:12px;white-space:nowrap}.skill-fieldset{border:1px solid var(--line);border-radius:12px;padding:16px;margin:20px 0}.skill-fieldset legend{font-size:14px;font-weight:700}.skill-edit-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.rating-note{font-size:11px;color:var(--muted);margin-top:5px;white-space:pre-wrap;overflow-wrap:anywhere}.trend-table{margin:20px 0}.trend-table caption{text-align:left;font-size:13px;font-weight:700;padding:10px 0}.ratings-table button{padding:8px 12px}.evaluations>.inline{flex-wrap:wrap}.evaluations>.inline button{font-size:12px}
@media(max-width:700px){.evaluation-summary{grid-template-columns:1fr 1fr}.evaluation-summary>div{padding:12px}.skill-edit-grid{grid-template-columns:1fr}.skill-fieldset{padding:12px}.skills-grid>div{font-size:12px}.skills-grid b{font-size:11px}.evaluations>.inline button{width:100%}.ratings-table{min-width:370px}.trend-table{font-size:12px}}

/* Terminbewertungen: native table with contained horizontal scroll on phones. */
.matrix-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:20px 0}.matrix-toolbar label{margin:0;display:flex;align-items:center;gap:12px}.matrix-toolbar select{width:auto;margin:0}.matrix-table{width:100%;border-collapse:collapse;text-align:left;min-width:860px}.matrix-table th,.matrix-table td{padding:12px;border-bottom:1px solid var(--line,#e2e6ed);vertical-align:middle}.matrix-table thead{color:var(--muted,#68778a)}.matrix-table tbody th{min-width:140px}.matrix-table th small{display:block;color:var(--muted,#68778a);font-weight:400;margin-top:5px}.matrix-table select,.matrix-table input{margin:0;min-width:105px}.matrix-table [data-attendance]{min-width:180px}.matrix-table [data-matrix-note]{min-width:200px}.matrix-table select:disabled,.matrix-table input:disabled{opacity:.55;background:#f3f5f7}.matrix-ignore{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;white-space:nowrap}.matrix-ignore input{width:18px;min-width:18px}.matrix-table [hidden]{display:none}
.matrix-table tr>th:first-child{position:sticky;left:0;background:#fff;z-index:1}.matrix-table thead tr>th:first-child{z-index:2}.event-detail+ .card #openEventMatrix{margin-right:8px}
/* Spielkader: Karten bleiben auch auf kleinen Bildschirmen bedienbar. */
.squad-list{display:grid;gap:12px}.squad-player{padding:16px;border:1px solid var(--line,#e1e5eb);border-radius:14px;display:grid;gap:10px;min-width:0}.squad-player.nominated{background:#fff4f4;border-color:#e2a9ad}.squad-player label{margin:0}.squad-player .checkline{display:flex;align-items:center;gap:12px}.squad-player input[type=checkbox]{width:22px;height:22px;flex-shrink:0}.squad-warning{color:#8b4a2f}.squad-player select{max-width:100%}
@media(min-width:760px){.squad-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.lineup-pitch{background:#286d4a;border:2px solid #e0efe5;border-radius:16px;color:white;overflow:hidden;margin:16px 0}.pitch-band{padding:14px 10px;min-height:78px;border-bottom:1px solid #ffffff55;text-align:center}.pitch-band:last-child{border-bottom:0}.pitch-band small{color:#e3f2e8;display:block;margin-bottom:8px}.pitch-band>div,.lineup-bench>div{display:flex;justify-content:center;flex-wrap:wrap;gap:8px}.lineup-chip{display:inline-flex;background:#fff;color:#172332;padding:8px 12px;border-radius:12px;max-width:100%;overflow-wrap:anywhere}.pitch-empty{color:#e3f2e8}.lineup-bench{padding:14px;border-radius:14px;background:#eef1f5;margin-bottom:18px}.lineup-bench>div{justify-content:flex-start;margin-top:10px}.lineup-panel [hidden]{display:none}
.planning-panel [hidden]{display:none}.planning-result h3{margin-top:30px;padding-top:16px;border-top:1px solid #e1e5eb}.planning-player{border-left:5px solid #c4cbd4}.planning-TW{border-left-color:#468ad5}.planning-VER{border-left-color:#42a077}.planning-MIT{border-left-color:#dba143}.planning-ANG{border-left-color:#9861bd}.planning-player.rotation-pick{background:#fff9e8;border-color:#d8b456}.planning-player p{margin:4px 0}.planning-panel .checkline{display:flex;align-items:center;gap:10px}.planning-panel .checkline input{width:22px;height:22px;flex-shrink:0}
.report-panel .checkline{display:flex;align-items:center;gap:10px}.report-panel .checkline input{width:22px;height:22px;flex-shrink:0}.match-statistics .preview-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.match-statistics .preview-grid small{overflow-wrap:anywhere}.report-panel .squad-list{margin:20px 0}

.nomination-answer{border-top:1px solid var(--line,#e2e7ef);padding-top:14px;margin-top:10px}.nomination-answer textarea{width:100%;resize:vertical}

/* The nomination response determines card color; weekly availability is separate. */
.squad-panel .squad-player.nomination-yes{background:#edf8f0;border-color:#8fc6a2}
.squad-panel .squad-player.nomination-unknown{background:#fff9e8;border-color:#e4ca80}
.squad-panel .squad-player.nomination-no{background:#fff0f1;border-color:#dfa0a8}
.squad-panel .squad-player.nomination-none{background:#fff;border-color:var(--line)}
.squad-panel .squad-player.nomination-cancelled{background:#f3f4f6;border-color:#cbd2db}
.squad-player-head{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between}
.squad-player-head>.checkline{flex:1;min-width:140px}
.nomination-status{display:inline-flex;align-items:center;border:1px solid transparent;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700;line-height:1.4;max-width:100%;overflow-wrap:anywhere}
.nomination-yes .nomination-status{background:#d8efdf;color:#205d38;border-color:#a6cdb4}
.nomination-unknown .nomination-status{background:#fff0bc;color:#765312;border-color:#e4ca80}
.nomination-no .nomination-status{background:#f9dce0;color:#922b3c;border-color:#dfa0a8}
.nomination-none .nomination-status,.nomination-cancelled .nomination-status{background:#edf0f4;color:#536073;border-color:#d6dce4}
/* Shared pitch agenda */
.pitch-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-top:20px}.pitch-day{min-width:0}.pitch-slot{border:1px solid #e1e6ed;border-radius:14px;padding:14px;margin:10px 0;background:#fff}.pitch-label{display:block;font-size:13px;color:#6b7685;margin-top:5px}.pitch-free{color:#25764a}.pitch-disabled{background:#f0f1f3}.pitch-reservation{background:#fff5e9;border-left:3px solid #d68c36;border-radius:8px;padding:10px;margin-top:10px;font-size:13px;overflow-wrap:anywhere}.pitch-reservation button{display:block;font-size:12px;padding:8px;margin-top:8px}.club-code{display:block;overflow-wrap:anywhere;font-size:15px;background:#f5f6f8;padding:12px;border-radius:10px}.pitches-panel .inline{flex-wrap:wrap}.pitches-panel input[type=checkbox]{width:auto}.pitch-day h3{margin-top:14px}@media(max-width:600px){.pitch-days{grid-template-columns:1fr}.pitches-panel .card{padding:20px}}
/* Exercise library and event training plan */
.exercise-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:12px}.exercise-tile{text-align:left;display:flex;flex-direction:column;align-items:flex-start;gap:8px;white-space:normal;width:100%}.exercise-tile span,.exercise-tile small{font-weight:400;color:#657389}.exercise-image{display:block;max-width:100%;max-height:640px;object-fit:contain;margin:18px auto}.training-goals,.training-participants{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px;border:1px solid #dce2eb;border-radius:16px;padding:16px}.training-participants .checkline{align-items:flex-start}.training-participants small,.training-group small{display:block;color:#657389}.training-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:12px}.training-group{background:#f5f7fa;border:1px solid #dce2eb;border-radius:16px;padding:16px}.training-station{border-top:1px solid #e0e5ee;padding:24px 0}.training-panel fieldset legend{font-weight:700}.training-result{margin-top:28px}.training-panel details{margin:12px 0}.training-rules{margin:24px 0}
@media print{body.printing-training header,body.printing-training footer,body.printing-training #account,body.printing-training #app>*:not(.training-panel),body.printing-training .training-panel>*:not(.training-result),body.printing-training .training-result .no-print{display:none!important}body.printing-training #app{max-width:none;padding:0}body.printing-training .training-panel{border:0;box-shadow:none;margin:0;padding:0}body.printing-training .training-station{break-inside:avoid}body.printing-training .training-result details{display:block}body.printing-training .training-result textarea{border:0;min-height:100px}body.printing-training{background:white;color:black}}

.print-only{display:none}@media print{body.printing-training .print-only{display:block!important}}
.exercise-card{display:grid;grid-template-columns:minmax(0,1fr)112px;background:#eff2f6;border:1px solid #dce2eb;border-radius:16px;overflow:hidden}.exercise-card .exercise-tile{border:0;background:transparent;border-radius:0;margin:0;height:100%;min-width:0;padding:16px}.exercise-preview{display:flex;flex-direction:column;justify-content:center;gap:8px;align-items:center;padding:10px;margin:0;border:0;border-left:1px solid #dce2eb;border-radius:0;background:#fff;min-width:0;width:100%}.exercise-preview img{width:100%;height:96px;object-fit:contain}.exercise-preview span{font-size:12px;font-weight:600}.exercise-no-image{align-self:center;padding:10px;color:#657389;font-size:12px;text-align:center}.exercise-image-dialog{width:min(960px,calc(100vw - 24px));max-height:calc(100dvh - 24px);padding:20px;border:0;border-radius:18px;box-sizing:border-box;overflow:auto;color:#192434}.exercise-image-dialog::backdrop{background:rgba(15,23,42,.7)}.exercise-image-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;position:sticky;top:-20px;background:white;padding:12px 0;z-index:1}.exercise-image-toolbar h2{font-size:22px;margin:0;overflow-wrap:anywhere}.exercise-image-toolbar button{flex:none;margin:0;white-space:nowrap}.exercise-large-image{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain}.danger{background:#fff0f1;color:#b71c2b;border:1px solid #edc3c7}.danger:hover{background:#ffe2e5}@media(max-width:480px){.exercise-image-dialog{padding:12px}.exercise-image-toolbar{top:-12px;gap:8px}.exercise-image-toolbar h2{font-size:18px}.exercise-image-toolbar button{padding:10px;font-size:13px}}
/* Persönliche Hausaufgaben und mobile Profilbereiche */
.profile-section>summary{font-size:1.4rem;font-weight:750;cursor:pointer;padding:.25rem 0;line-height:1.4}
.profile-section[open]>summary{margin-bottom:1.2rem}
.homework-summary{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.homework-summary>span{background:#f1f4f8;border-radius:12px;padding:.6rem .9rem}
.homework-task{border:1px solid var(--line,#dfe5ed);border-left:5px solid #94a3b8;border-radius:16px;padding:1.2rem;margin:1rem 0;overflow-wrap:anywhere}
.homework-task h3{margin:.7rem 0}.homework-task details{margin:1rem 0}.homework-task summary,.homework-choice summary,.homework-preferences summary{cursor:pointer;font-weight:650}
.homework-status{display:inline-block;border-radius:9px;background:#eef2f7;color:#334155;padding:.35rem .65rem;font-weight:700}
.homework-done{border-left-color:#238052;background:#f4fbf6}.homework-done .homework-status{background:#d9f2e2;color:#166534}
.homework-overdue{border-left-color:#c17610;background:#fffcf5}.homework-overdue .homework-status{background:#fff0ca;color:#854d0e}
.homework-cancelled{border-left-color:#64748b;background:#f8fafc}.homework-cancelled .homework-status{background:#e2e8f0;color:#475569}
.homework-preferences{margin:1.2rem 0}.homework-choice .exercise-image,.homework-task .exercise-image{max-width:100%;height:auto}
.homework-task form{margin-top:1rem}.homework-task .topline{align-items:flex-start}.homework-task .exercise-detail{min-width:0}
@media(max-width:600px){.homework-task{padding:1rem}.homework-task .topline{display:block}.homework-task .topline>button{margin-bottom:.7rem}.profile-section>summary{font-size:1.25rem}}
.event-pitch-field{border:1px solid #dfe5ed;border-radius:14px;padding:1rem;margin:1.2rem 0;min-width:0}.event-pitch-field legend{padding:0 .5rem;font-weight:700}.event-pitch-field select{max-width:100%}.event-pitch-field .notice{margin:.8rem 0}
.profile-section .topline{margin-top:.8rem}.profile-section>summary:focus-visible{outline:2px solid #db151d;outline-offset:5px;border-radius:4px}

/* v21.0.17 */
.stats-scroll{overflow-x:auto;max-width:100%;border:1px solid #e2e7ed;border-radius:12px}.stats-table{min-width:1050px;width:100%;border-collapse:collapse}.stats-table th,.stats-table td{padding:14px 12px;border-bottom:1px solid #e2e7ed;text-align:left;vertical-align:top}.stats-table thead th{background:#f3f5f8;color:#536174}.stats-table tbody th{min-width:150px}.stats-table small{display:block;color:#66758c;font-size:12px;line-height:1.45;max-width:140px;margin-top:5px}.pitch-block{background:#fff3da!important;border-color:#efd799!important}.grounds-panel .notice{margin-top:20px}.ground-notices{border-left:5px solid #c67b14}.grounds-panel input[type=datetime-local]{width:100%;min-width:0}

.annual-photo{margin:16px 0}.annual-photo img{display:block;max-width:100%;width:auto;height:auto;max-height:360px;object-fit:contain;border-radius:12px}.annual-photo figcaption{color:#667385;font-size:13px;margin-top:8px}.photo-archive form{margin-top:20px}.stats-export-note{margin-top:12px;font-size:13px}.stats-table{min-width:1290px}

.app-fold>summary{font-size:1.25rem}.fold-counts{display:block;margin:.35rem 0 0;font-size:.85rem;font-weight:400;color:#64748b}.app-fold{margin-bottom:.6rem}[data-ui-fold]{margin:1rem 0}.app-fold>summary:hover{color:#c9141c}

.backup-counts{display:flex;flex-wrap:wrap;gap:.4rem 1rem}.backup-panel>details{margin-top:1.5rem}.backup-preview{margin:1rem 0;padding:1rem;background:#f5f6f8;border-radius:12px}.backup-download{display:inline-block;padding:.6rem 0;font-weight:700}.backup-panel input[type=file]{max-width:100%}

.calendar-team-badge{font-size:.8em;font-weight:600;white-space:normal;overflow-wrap:anywhere}.calendar-filters fieldset{margin:12px 0}.shared-editor fieldset{margin:18px 0}.shared-editor legend{font-weight:700}.shared-editor #sharedPitchStatus{font-size:.9em}

.calendar-team-chip{display:inline-block!important;background:hsl(var(--team-hue) 55% 94%);color:hsl(var(--team-hue) 50% 28%);border:1px solid hsl(var(--team-hue) 40% 78%);border-radius:7px;padding:2px 6px;margin:2px 3px 2px 0;font-size:inherit}

/* Altersbezogene Skills */
.age-skill-item{min-width:0}.skill-criterion{font-size:.9rem;color:var(--muted);line-height:1.5;min-height:3em}.age-skill-item textarea{width:100%;box-sizing:border-box}.skills-grid small{grid-column:1/-1;color:var(--muted)}.age-skill-history,.grade-guide{margin:20px 0}.age-skill-history summary,.grade-guide summary{cursor:pointer;font-weight:700}.age-skill-history table td{vertical-align:top}.age-skill-history table small{white-space:normal}
.age-skill-history table{min-width:700px;width:100%;border-collapse:collapse}.age-skill-history th,.age-skill-history td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.age-skill-history th:first-child{width:180px}.age-skill-history th:nth-child(2){width:140px}.age-skill-history th:nth-child(3){width:70px}.age-skill-history td:last-child{min-width:230px}

.activity-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;align-items:end}.activity-filters input,.activity-filters select{margin-bottom:0}.activity-entry{padding:22px 0;border-top:1px solid var(--line)}.activity-entry h3{margin:12px 0;line-height:1.5}.activity-action{font-weight:500;color:var(--muted)}.activity-meta{font-size:13px}.activity-entry summary{cursor:pointer;font-weight:650}.activity-entry button{margin-top:14px}.activity-changes>div{padding:12px 0;border-bottom:1px solid var(--line)}.activity-changes dt{font-weight:650;margin-bottom:6px}.activity-changes dd{margin:0;display:flex;flex-wrap:wrap;gap:10px;overflow-wrap:anywhere}.activity-changes dd>*{min-width:0;max-width:100%}@media(max-width:600px){.activity-filters{grid-template-columns:1fr}.activity-panel .topline{align-items:flex-start}}

.report-timeline{margin:1.4rem 0;padding:1rem;border:1px solid var(--line,#dce1e8);border-radius:14px;background:#f8fafc}.timeline-initial{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.5rem}.timeline-initial legend{font-weight:700}.timeline-swaps{list-style:none;padding:0}.timeline-swaps li{display:flex;align-items:center;gap:1rem;padding:.8rem 0;border-bottom:1px solid #dce1e8}.timeline-swaps li>span{flex:1;min-width:0;overflow-wrap:anywhere}.timeline-out{color:#9d3838}.timeline-in{color:#287447}.timeline-swaps button{flex-shrink:0}@media(max-width:600px){.timeline-swaps li{flex-wrap:wrap;gap:.5rem}.timeline-swaps li>span{flex-basis:65%}.timeline-swaps button{margin-left:auto}.report-timeline{padding:.8rem}}

.agenda-day-heading{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-bottom:.7rem}.agenda-day-heading h3{margin:0;min-width:0}.calendar-date-button{font:inherit;font-weight:700;padding:0;background:none;color:var(--ink);text-align:left}.calendar-add-date{font-size:.8rem;padding:.45rem .6rem;white-space:nowrap}.date-writable{cursor:pointer}.date-writable:hover{border-color:#e5a2a5}.calendar-date-button:hover{color:var(--red)}.calendar-date-button:focus-visible,.month-date-button:focus-visible,.month-week-link:focus-visible{outline:2px solid var(--red);outline-offset:3px}.month-date-button{background:none;color:var(--ink);font-size:inherit;padding:.15rem 0;display:flex;justify-content:space-between;gap:.4rem;width:100%}.month-date-button span{color:var(--red)}button.month-dot{margin:0;width:100%;text-align:left;font-weight:500}.month-week-link{font-size:.65rem;background:none;color:var(--muted);padding:.2rem 0;margin-top:auto;text-align:left}.month-week-link:hover{color:var(--red)}.record-fold>summary{font-size:1.05rem}.record-fold>summary .fold-counts{font-size:.85rem}.record-fold{margin:0}.fold-bulk{margin:1rem 0;flex-wrap:wrap}.fold-bulk button{font-size:.85rem}[data-ui-fold^="training-station-"]>details>summary{font-size:1.15rem}.training-station>details{margin-top:.5rem}.skill-category>.app-fold>summary{font-size:1.05rem}@media(max-width:600px){.calendar-add-date{font-size:.75rem}.month-date-button{min-height:28px}.month-week-link{font-size:.58rem;line-height:1.2;min-height:28px}.month-dot{white-space:normal;overflow-wrap:anywhere;line-height:1.25}.record-fold>summary{font-size:1rem}.fold-bulk button{flex:1}.report-timeline>details>summary{font-size:1.1rem}}@media print{body.printing-training .training-result .app-fold>summary{font-size:16px}body.printing-training .training-result .app-fold{break-inside:auto}}
/* Shared-session freshness never replaces an active draft. */
.sync-status{display:flex;gap:.5rem;align-items:center;flex-wrap:wrap;color:var(--muted);font-size:.8rem;margin:0 0 1rem;padding:.65rem .8rem;border:1px solid var(--line);border-radius:10px;background:#fff}.sync-status.pending{background:#fff6e5;border-color:#ead4a4;color:#775820}.sync-status.offline{background:#f7f2ed;color:#795b48}.sync-status.refreshing{color:#476294}.sync-status button{font-size:.8rem;padding:.5rem .65rem;margin-left:auto}@media print{.sync-status{display:none!important}}

.card-events{padding-left:20px}.card-events li{padding:12px 0;border-bottom:1px solid var(--line);display:flex;flex-wrap:wrap;align-items:center;gap:10px}.card-events li p{flex-basis:100%;margin:0;overflow-wrap:anywhere}.card-badge{font-weight:700;border-radius:6px;padding:5px 9px}.card-badge.yellow{background:#fff2a8;color:#665000}.card-badge.red{background:#ffe1e3;color:#aa1520}.card-badge.yellow_red{background:linear-gradient(120deg,#fff2a8 48%,#ffe1e3 48%);color:#682329}

/* v21.0.30 */
.hierarchy-list{display:grid;gap:18px;margin:18px 0}.hierarchy-team{padding:16px;border:1px solid var(--line);border-radius:12px;min-width:0}.hierarchy-team h3{overflow-wrap:anywhere}.table-scroll{max-width:100%;overflow-x:auto}.appearance-table{border-collapse:collapse;width:100%;font-size:14px}.appearance-table th,.appearance-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left;min-width:110px}.appearance-table th:first-child{min-width:150px}.hierarchy-reuse summary{font-weight:700;cursor:pointer}.appearance-overview details{margin:18px 0}

/* v21.0.31 hierarchy board */
.hierarchy-board{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.hierarchy-group{background:#f7f8fa;border:2px solid var(--line);border-radius:14px;padding:16px;min-width:0}.hierarchy-group-title,.hierarchy-tile-title{display:flex;align-items:center;gap:10px;justify-content:space-between;flex-wrap:wrap}.hierarchy-tile{background:white;margin:12px 0;padding:14px;cursor:grab}.hierarchy-tile b{overflow-wrap:anywhere}.hierarchy-tile label{margin-top:12px}.hierarchy-tile .inline{flex-wrap:wrap}.hierarchy-grip{font-size:24px;color:var(--muted)}.hierarchy-tile.dragging{opacity:.5}.hierarchy-group.drop-active{border-color:var(--red);background:#fff1f1}.hierarchy-drop-empty{border:1px dashed #cdd5df;border-radius:9px;padding:18px;color:var(--muted)}.hierarchy-unassigned{grid-column:1/-1}.hierarchy-new-group,.hierarchy-unlinked{border-top:1px solid var(--line);padding:16px 0}.hierarchy-new-group summary,.hierarchy-unlinked summary{font-weight:700;cursor:pointer;margin-bottom:14px}#hierarchyDraftStatus{font-weight:650}.hierarchy-tile select{margin-bottom:8px}@media(max-width:650px){.hierarchy-board{grid-template-columns:1fr}.hierarchy-group{padding:12px}.hierarchy-tile .inline button{font-size:12px;padding:10px}.hierarchy-group-title button{font-size:12px}}
/* v21.0.32 mixed-age groups */
.hierarchy-structure input[type=checkbox]{width:18px;min-height:18px;height:18px;margin:0 8px 0 0;padding:0;vertical-align:middle;accent-color:var(--red)}
.hierarchy-group>label,.hierarchy-new-group>label{margin:12px 0}

/* v21.0.33 direct exchanges */
.exchange-new{padding:12px 0;border-bottom:1px solid var(--line)}.exchange-new summary{cursor:pointer;font-weight:700;margin-bottom:16px}.exchange-pair h3{overflow-wrap:anywhere}.exchange-pair select{margin-bottom:12px}#exchangeDraftStatus{font-weight:650}

/* v21.0.35 */
.squad-exchange{border:1px solid var(--line);border-radius:12px;padding:16px;margin:18px 0}.squad-exchange summary{font-weight:700;cursor:pointer}.squad-exchange .squad-player{margin-top:12px}

/* v21.0.36: review evidence stays visually separate from nomination answers. */
.review-hint{background:#fff8e8;border:1px solid #e8d4a3;border-radius:12px;padding:12px;margin:12px 0;color:#544527;overflow-wrap:anywhere}.review-hint summary{font-weight:700;cursor:pointer}.review-hint li{margin:8px 0}.match-review{margin:20px 0}.competition-panel input,.competition-panel select{min-width:0;width:100%}.competition-panel .grid>*{min-width:0}

/* Vereinsanmeldung */
.join-personal form+form{border-top:1px solid #e0e5ed;margin-top:24px;padding-top:24px}.members-panel input,.members-panel select,.join-personal input,.join-personal select{min-width:0;width:100%}.members-panel .list-item{overflow-wrap:anywhere}.members-panel details>form{padding-top:16px}.members-panel .grid>*{min-width:0}

.room-toolbar{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;margin:12px 0}.room-toolbar b{text-align:center;font-size:.9rem}.room-toolbar button{width:44px;min-width:0;padding:8px}.room-modes{display:flex;gap:8px}.room-modes button{width:auto;flex:1}.room-lane{border-top:1px solid #e4e8ee;margin-top:16px;padding-top:8px}

.calendar-filter-details{margin-bottom:14px}.calendar-filter-details summary{cursor:pointer;font-weight:700}.calendar-filter-details .grid{margin-top:12px}.calendar-filter-status{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px}.calendar-room-summary{display:block;overflow-wrap:anywhere}.month-dot .month-resource{display:block;font-size:.72rem;white-space:normal;overflow-wrap:anywhere;font-weight:400}

.training-guest-row{border-top:1px solid #e4e8ee;padding:12px 0;margin-top:12px}.training-guest-row h3 small{font-weight:400}.training-guests-panel summary,#trainingGuestInbox summary{cursor:pointer;font-weight:700}

.primary-nav{margin-bottom:12px}.more-navigation{border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px;margin-bottom:10px}.more-navigation>summary{cursor:pointer;font-weight:700;color:var(--muted)}.more-navigation .section-nav{margin:14px 0 0}.help-access{margin-bottom:24px}.quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-actions button{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:6px}.quick-actions small{font-weight:400}.help-search{margin-top:18px}.help-card summary{cursor:pointer;font-weight:700}.help-card h3{margin-top:20px}.help-path{display:block;color:var(--muted);font-size:13px;margin-top:5px}.help-table{width:100%;border-collapse:collapse;min-width:550px}.help-table td,.help-table th{padding:9px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.help-card{overflow-wrap:anywhere}.help-card li{margin:8px 0}.help-tree{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.help-tree>div{border:1px solid var(--line);border-radius:10px;padding:14px;background:#f8fafc}.help-tree ul{padding-left:18px}.help-tree .tree-basis{grid-column:1/-1;text-align:center;background:#fff1f1}.help-empty{padding:16px}.help-search-count{font-size:13px;color:var(--muted)}@media(max-width:600px){.quick-actions,.help-tree{grid-template-columns:1fr}.help-tree .tree-basis{grid-column:1}.help-table{font-size:13px}}

/* Startseite: direkte Aufgaben statt langer Verwaltungsübersicht. */
.home-layout{display:grid;grid-template-columns:minmax(0,2fr) minmax(230px,1fr);gap:20px;align-items:start}.home-layout .card{margin:0 0 20px}.home-event h3{font-size:1.5rem;overflow-wrap:anywhere}.home-actions,.home-resources,.home-states{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.home-actions button{min-height:48px;flex:1 1 180px}.home-states span{background:#f0f2f5;border-radius:24px;padding:8px 12px;font-size:.9rem}.home-states .ready{color:#146e38;background:#e4f5e9}.home-shortcuts{display:grid;gap:10px}.home-shortcuts button{text-align:left;min-height:48px}.home-organisation{margin-top:12px}.home-dashboard h2{margin-bottom:6px}.home-layout>*{min-width:0}@media(max-width:720px){.home-layout{grid-template-columns:1fr}.home-event h3{font-size:1.25rem}.home-actions button{flex-basis:100%}.home-resources .badge{max-width:100%;white-space:normal}.home-organisation .grid{grid-template-columns:1fr}}

.dashboard-title{font-size:1.6rem;margin-bottom:8px}.context-selection{margin:12px 0;border:1px solid #dde2eb;border-radius:12px;background:white;padding:12px 16px}.context-selection summary{cursor:pointer;font-weight:700;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.context-selection summary span{color:#b3161e;font-size:.9rem}.context-selection .selectors{margin:12px 0 0}.nav-shell{display:flex;gap:8px;align-items:start;position:relative;margin:12px 0 20px}.nav-shell .primary-nav{display:flex;flex:1;gap:8px;margin:0}.nav-shell .primary-nav button{flex:1;min-height:46px}.nav-shell .more-navigation{margin:0;padding:0;min-width:90px;border:0;background:transparent}.nav-shell .more-navigation>summary{border:1px solid #dbe1ea;border-radius:10px;background:white;min-height:46px;padding:13px 18px;cursor:pointer}.nav-shell .more-navigation[open]>nav{position:absolute;top:54px;right:0;z-index:30;background:white;padding:16px;box-shadow:0 8px 24px #15203926;border:1px solid #dde2eb;border-radius:12px;width:min(560px,calc(100vw - 40px));display:flex;gap:8px;flex-wrap:wrap}.nav-shell .more-navigation nav button{flex:1 1 180px}.home-dashboard h2{font-size:1.5rem}@media(max-width:720px){.dashboard-title{font-size:1.25rem}.context-selection{padding:10px 12px}.nav-shell{gap:5px}.nav-shell .primary-nav{gap:5px}.nav-shell .primary-nav button{padding:10px 9px;font-size:.9rem}.nav-shell .more-navigation{min-width:64px}.nav-shell .more-navigation>summary{padding:13px 10px;font-size:.9rem}}

.match-stages{display:flex;gap:8px;margin:18px 0 12px}.match-stages button{flex:1;min-height:48px}.match-stages+ .inline{margin-bottom:12px}@media(max-width:720px){.match-stages{gap:5px}.match-stages button{font-size:.9rem;padding:12px 8px}}

.context-selection>summary,.nav-shell .more-navigation>summary{margin-bottom:0}.nav-shell .primary-nav{flex-wrap:nowrap;min-width:0}.nav-shell .primary-nav button{flex:1 1 0;min-width:0}.dashboard-title{overflow-wrap:anywhere}@media(max-width:720px){.dashboard-topline{flex-direction:row;gap:10px}.dashboard-topline>div{min-width:0}.dashboard-topline>#reload{font-size:12px;padding:9px 10px;min-height:38px}.nav-shell .primary-nav button{font-size:.8rem;padding:10px 6px;white-space:normal}}

/* Navigation remains reachable while the document scrolls. */
html{scroll-padding-top:calc(80px + env(safe-area-inset-top,0px))}
.nav-shell{position:sticky;top:0;z-index:40;background:#f5f6f8;padding:6px 0;border-bottom:1px solid var(--line);box-shadow:0 5px 12px #1822310a}
.nav-shell .more-navigation[open]>nav{top:calc(100% + 4px);margin:0;max-height:calc(100dvh - 100px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain}
@supports(padding:env(safe-area-inset-top)){.nav-shell{padding-top:calc(6px + env(safe-area-inset-top,0px))}}
@media print{.nav-shell{position:static;box-shadow:none}}
/* Dense selection rows, with details available on demand. */
.compact-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0}.compact-filters label{flex:1;min-width:120px;margin:0}.compact-filters input,.compact-filters select{margin:0}.compact-filters>span{font-size:12px;color:var(--muted);padding-bottom:10px}.compact-group{margin:18px 0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:white}.compact-group h4{margin:0;padding:10px 12px;background:#f0f3f6;font-size:14px}.compact-table{table-layout:fixed}.compact-table th,.compact-table td{padding:8px 10px;vertical-align:middle;overflow-wrap:anywhere}.compact-table th{font-size:11px;color:var(--muted)}.compact-table th:first-child{width:40%}.compact-table th:nth-child(2){width:16%}.compact-table th:nth-child(3){width:24%}.compact-table th:last-child{width:20%}.compact-table td>b,.compact-table td>small{display:block}.compact-table select,.compact-table input[type=number]{margin:0;padding:6px;font-size:12px;min-height:44px}.compact-table details{margin-top:5px}.compact-table summary{margin:0;font-size:11px;color:var(--muted);min-height:28px;padding:5px 0}.compact-table .reply-badge{margin:0;padding:5px 7px;font-size:11px}.compact-table .nomination-status{display:block;margin-top:4px;font-size:11px}.compact-toggle{position:relative;display:grid;place-items:center;min-height:44px;min-width:44px;margin:0;cursor:pointer}.compact-toggle input{position:absolute;width:44px;height:44px;min-height:44px;margin:0;opacity:0;cursor:pointer}.compact-toggle span{display:grid;place-items:center;width:30px;height:30px;border:1px solid var(--red);border-radius:50%;color:var(--red);font-size:23px}.compact-toggle span:before{content:'+'}.compact-toggle:has(input:checked) span:before{content:'−'}.compact-toggle:has(input:checked) span{background:var(--red);color:white}.compact-toggle:has(input:focus-visible){outline:2px solid var(--red);outline-offset:2px}.compact-empty{padding:12px;margin:0;color:var(--muted);font-size:12px}.compact-picker [hidden]{display:none!important}
@media(max-width:600px){.compact-filters{gap:8px}.compact-filters>span{width:100%;padding:0}.compact-table th,.compact-table td{padding:6px 4px;font-size:12px}.compact-table th:first-child{width:33%}.compact-table th:nth-child(2){width:17%}.compact-table th:nth-child(3){width:23%}.compact-table th:last-child{width:27%}.compact-table .reply-badge{padding:4px;font-size:10px}.compact-table select{width:100%;font-size:11px;padding:4px 1px}.compact-table td .notice{padding:8px;margin:6px 0}.compact-table td details .nomination-answer{padding:0}.compact-table td details .checkline{margin:6px 0}}

/* v21.0.55 · Stage 1: shared design contract */
:root{--red:#b51f2b;--ink:#20252d;--muted:#626b78;--line:#e1e5eb;--ui-radius:10px;--mobile-nav-height:66px}
.card{border-radius:var(--ui-radius);padding:20px;box-shadow:0 2px 8px #18223104}.card h2{margin-bottom:14px}
button,input,select,textarea{border-radius:var(--ui-radius)}button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:3px}
button:disabled{cursor:not-allowed}.nav-icon{display:none}.compact-table button,.matrix-details summary{min-height:44px}
.player-directory{border:1px solid var(--line);border-radius:var(--ui-radius);background:white;overflow:hidden;margin:12px 0 20px}
.directory-row{border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;padding:10px 14px;width:100%;gap:12px;min-height:64px}
.directory-row:last-child{border-bottom:0}.directory-row .avatar{width:36px;height:36px;font-size:16px;border-radius:50%}
.directory-row .directory-name{display:grid;grid-template-columns:minmax(180px,1fr) minmax(130px,1fr) 170px;align-items:center;gap:12px;flex:1;min-width:0}
.directory-row b{font-size:14px;overflow-wrap:anywhere}.directory-row p{margin:0;font-size:13px}.directory-row small{font-size:12px}
.picker-tabs{display:none}.compact-group h4{font-size:15px;margin:12px 0}.compact-table th,.compact-table td{padding:8px 10px}.compact-table button{font-size:13px}
.matrix-table{width:100%;min-width:0;table-layout:fixed}.matrix-table th:first-child{width:28%;min-width:0}.matrix-table th,.matrix-table td{padding:8px;vertical-align:middle;overflow-wrap:anywhere}.matrix-table input,.matrix-table select{min-width:0;width:100%;margin:0;min-height:44px;padding:6px}.matrix-table th small{display:block;font-weight:400;font-size:11px}
.matrix-details{position:relative}.matrix-details summary{margin:0;display:flex;align-items:center;font-size:12px;color:var(--red)}.matrix-details[open]{padding:8px;background:#f5f6f8;border:1px solid var(--line);border-radius:var(--ui-radius)}.matrix-details label{margin:6px 0}.matrix-detail-label{display:block;font-size:12px;font-weight:650;margin-top:8px}.draft-status{font-size:12px;color:var(--muted);flex:1}
.ui-savebar{position:sticky;bottom:8px;z-index:20;background:#fff;border:1px solid var(--line);border-radius:var(--ui-radius);padding:10px;box-shadow:0 2px 12px #18223112;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;margin-top:16px}
@media(max-width:720px){
 body.has-app-navigation{padding-bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 16px)}
 main{padding:0 12px;margin:16px auto}.card{padding:14px}.nav-shell{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:60;margin:0;background:white;border-top:1px solid var(--line);border-bottom:0;padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));box-shadow:0 -3px 14px #18223112;align-items:stretch;gap:0}
 .nav-shell .primary-nav{gap:0}.nav-shell .primary-nav button,.nav-shell .more-navigation>summary{min-height:58px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;margin:0;padding:5px 3px;border:0;background:white;color:var(--muted);font-size:11px;border-radius:8px}
 .nav-shell .primary-nav button[aria-current=page],.nav-shell .more-navigation[open]>summary{color:var(--red);background:#fff1f2}.nav-shell .more-navigation{width:25%;min-width:0}.nav-icon{display:block;font-size:21px;line-height:24px}.nav-shell .more-navigation[open]>nav{top:auto;bottom:calc(100% + 8px);right:8px;max-height:calc(100dvh - 160px);width:calc(100vw - 16px);padding:12px}
 .nav-shell .more-navigation nav button{min-height:44px}.nav-shell .more-navigation nav .nav-icon{display:none}
 .ui-savebar{bottom:calc(var(--mobile-nav-height) + env(safe-area-inset-bottom,0px) + 8px);gap:8px;padding:8px}.ui-savebar .draft-status{flex-basis:100%}.ui-savebar button{flex:1;min-width:0}
 .directory-row{padding:8px 10px;min-height:60px}.directory-row .directory-name{display:block}.directory-row p{margin:3px 0 0;font-size:12px}.directory-row .directory-year{display:none}.directory-row .avatar{width:32px;height:32px}
 .picker-tabs{display:flex;gap:6px;margin:10px 0;flex-wrap:wrap}.picker-tabs button{flex:1;min-width:0;padding:8px;font-size:12px;min-height:44px}.picker-tabs [aria-pressed=true]{background:var(--red);color:#fff;border-color:var(--red)}.compact-picker .compact-group[data-active=false]{display:none}
 .matrix-reply{display:none}.matrix-table th:first-child{width:30%}.matrix-table th:nth-child(3){width:27%}.matrix-table th:nth-child(4){width:20%}.matrix-table th:nth-child(5){width:23%}.matrix-table th,.matrix-table td{padding:6px 3px;font-size:12px}.matrix-table select{font-size:12px;padding:5px 2px}.matrix-details[open]{position:absolute;right:14px;left:14px;z-index:25;box-shadow:0 6px 20px #18223122}.matrix-details input{font-size:14px}.matrix-table th:first-child small{max-width:100%;overflow-wrap:anywhere}
 .matrix-toolbar{flex-wrap:wrap}.matrix-toolbar label{width:100%}.event-matrix .table-scroll{overflow:visible}.event-matrix .matrix-table{min-width:0}
 .compact-table th,.compact-table td{padding:7px 4px}.compact-table button{min-height:44px;min-width:44px}.compact-table details summary{min-height:44px;display:flex;align-items:center}
}
@media print{.nav-shell,.ui-savebar{position:static!important;box-shadow:none}body.has-app-navigation{padding-bottom:0}.picker-tabs{display:none}.compact-picker .compact-group[data-active=false]{display:block}}
.matrix-table [data-attendance],.matrix-table [data-matrix-note]{min-width:0}.matrix-ignore input{width:18px;min-width:18px;min-height:18px}.matrix-ignore{white-space:normal}

/* v21.0.56 · Same match, preparation / live / finish */
/* v21.0.99 report-specific rules are appended at the end of this file. */
.match-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.match-heading>div{min-width:0}.match-heading h2{margin:6px 0;overflow-wrap:anywhere}.match-heading p{margin:5px 0;font-size:14px}.match-resource-chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0}.match-stages{display:flex;gap:6px;margin:16px 0}.match-stages button{flex:1;min-width:0}.match-preparation-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.match-action{display:flex;flex-direction:column;align-items:flex-start;gap:5px;text-align:left;background:#fff;color:var(--ink);border:1px solid var(--line);padding:14px}.match-action span{font-size:12px;font-weight:400;color:var(--muted);line-height:1.4}.match-action.selected{border-color:var(--red);background:#fff1f2}.match-action:first-child{border-color:var(--red)}.match-action b{color:var(--red)}.match-event-settings{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.match-event-settings>summary,.match-response-overview>summary{margin:0;min-height:44px;line-height:1.5}.match-phase-hint{font-size:14px;margin:12px 0}.match-response-overview .response-counts{display:flex;flex-wrap:wrap;margin-top:8px}.match-response-overview table{table-layout:fixed}.match-response-table th:first-child{width:42%}.match-response-table td,.match-response-table th{overflow-wrap:anywhere;vertical-align:top}.match-response-table summary{min-height:44px;margin:0}.match-response-overview .inline{margin-top:12px}
.plan-result-summary{display:flex;flex-wrap:wrap;gap:6px;flex-direction:column;margin:16px 0}.plan-compact-group{border:1px solid var(--line);border-radius:var(--ui-radius);overflow:hidden;margin:14px 0}.plan-compact-group h3{padding:12px;margin:0;background:#f4f5f7}.plan-compact-table{table-layout:fixed}.plan-compact-table th:first-child{width:32%}.plan-compact-table th:nth-child(2){width:10%}.plan-compact-table th:nth-child(3),.plan-compact-table th:nth-child(4){width:12%}.plan-compact-table th:last-child{width:34%}.plan-compact-table th,.plan-compact-table td{overflow-wrap:anywhere;vertical-align:top;padding:8px}.plan-compact-table small{display:block;font-size:11px;font-weight:400;margin-top:4px}.plan-compact-table summary{min-height:44px;display:flex;align-items:center;margin:0;color:var(--red)}.plan-compact-table select{margin-bottom:0;width:100%;min-width:0;font-size:12px}.plan-more>summary{margin:0;min-height:44px}.plan-compact-table .muted{font-size:12px;line-height:1.5}.planning-result .ui-savebar{flex-wrap:wrap}
.clock-live-bar{position:sticky;top:66px;z-index:25;background:white;border:1px solid var(--line);border-radius:var(--ui-radius);padding:12px;box-shadow:0 2px 8px #1822310a;margin:12px 0}.clock-live-bar .preview-grid{margin:0 0 8px}.clock-live-bar .inline{display:flex;flex-direction:row;flex-wrap:wrap}.clock-live-bar .inline button{flex:1;min-width:0}.clock-roster>summary{min-height:44px;margin:0}.clock-roster{margin:12px 0}
@media(max-width:720px){.match-heading{gap:8px}.match-heading .badge{font-size:10px;white-space:nowrap}.match-heading h2{font-size:20px}.match-preparation-actions{grid-template-columns:1fr}.match-action{padding:12px}.match-stages button{padding:10px 5px;font-size:12px}.match-response-table th,.match-response-table td{font-size:12px;padding:7px 4px}.plan-extra-column{display:none}.plan-compact-table th:first-child{width:48%}.plan-compact-table th:nth-child(2){width:18%}.plan-compact-table th:last-child{width:34%}.plan-compact-table th,.plan-compact-table td{padding:7px;font-size:12px}.planning-result .ui-savebar button{flex-basis:100%}.clock-live-bar{top:8px;padding:10px}.clock-live-bar #clockAdd{flex:2}.game-clock{padding:12px!important}.game-clock>.muted{font-size:13px}.match-phase-hint{font-size:13px}}
@media print{.clock-live-bar{position:static;box-shadow:none}}
/* v21.0.57: accessible pointer movement on the lineup board. */
.lineup-chip{font:inherit;border:2px solid transparent;min-height:44px;cursor:grab;touch-action:none;user-select:none;color:#172332;background:#fff}
.lineup-chip:hover{background:#fff;color:#172332;border-color:var(--primary)}
.lineup-chip[aria-pressed="true"]{border-color:var(--primary);box-shadow:0 0 0 2px #fff}
.lineup-chip:disabled{opacity:1;cursor:default}
.lineup-drop-active{outline:3px solid #f4c95d;outline-offset:-3px;background:#ffffff22}
[data-lineup-drop]:focus-visible{outline:3px solid #f4c95d;outline-offset:-3px}
.lineup-unassigned{padding:14px;border:1px dashed var(--border);border-radius:10px;margin-bottom:12px}
.lineup-unassigned>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.lineup-unassigned .pitch-empty,.lineup-bench .pitch-empty{color:var(--muted)}
.lineup-drag-ghost{position:fixed;z-index:10000;pointer-events:none;background:#fff;color:#172332;border:2px solid var(--primary);border-radius:10px;padding:10px;box-shadow:0 5px 20px #0003;max-width:220px}
/* v21.0.58: one leave dialog throughout the app. */
.unsaved-dialog{width:min(480px,calc(100vw - 24px));max-height:calc(100dvh - 32px);box-sizing:border-box;overflow:auto;border:1px solid var(--border);border-radius:10px;padding:24px;color:var(--text);background:#fff;box-shadow:0 18px 60px #0004}
.unsaved-dialog::backdrop{background:#17233288}
.unsaved-dialog h2{font-size:1.35rem;margin:0 0 14px}.unsaved-dialog p{line-height:1.5}
.unsaved-summary{padding:10px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);margin:14px 0}.unsaved-summary p{margin:3px 0;font-weight:600}
.unsaved-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin-top:20px}.unsaved-actions button{min-height:44px;padding:10px 8px}
@media(max-width:480px){.unsaved-dialog{padding:18px}.unsaved-actions{grid-template-columns:1fr}.unsaved-actions [data-unsaved="save"]{grid-row:1}.unsaved-actions [data-unsaved="cancel"]{grid-row:3}}

/* v21.0.59: shared squad planning and replacement review. */
.kader-summary{display:flex;flex-wrap:wrap;gap:8px 18px;background:#f7f7f8;padding:14px;border-radius:10px;margin:14px 0}
.kader-summary b{color:var(--primary,#b51f2b)}
.kader-declines{border-left:4px solid #b51f2b;padding:12px 16px;background:#fff5f5;border-radius:10px;margin:16px 0}
.kader-replacement{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 0;border-bottom:1px solid #eadcdd}
.kader-replacement button{margin-left:auto}
.kader-automatic,.kader-changes{margin:16px 0;padding:12px;border:1px solid #dedee3;border-radius:10px}
.kader-automatic>.planning-panel{border:0;box-shadow:none;margin:10px 0;padding:0}
.kader-automatic summary,.kader-changes summary{min-height:32px;font-weight:700;cursor:pointer}
@media(max-width:720px){.kader-summary{flex-direction:column;gap:5px}.kader-replacement{align-items:flex-start}.kader-replacement b,.kader-replacement span{width:100%}.kader-replacement button{margin-left:0}.kader-automatic{padding:10px}}

/* v21.0.60: explain automatic nominations and rotation. */
.kader-auto-review{border:1px solid #e8b9be;border-radius:10px;background:#fffafa;padding:16px;margin:16px 0}
.kader-source,.kader-source-manual,.kader-rotation-label{display:block;width:fit-content;font-size:11px;line-height:1.4;border-radius:6px;padding:3px 6px;margin:5px 0;font-weight:700}
.kader-source{background:#b51f2b;color:#fff}.kader-source-changed{background:#eee;color:#555}
.kader-source-manual{background:#f0f0f3;color:#555}.kader-rotation-label{background:#fff0ce;color:#694a00}
.kader-rotation-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid #e6d6d8}
.kader-rotation-row:last-child{border:0}.kader-rotation-row>div{flex:1;min-width:0}.kader-rotation-row b{overflow-wrap:anywhere}.kader-rotation-row small{display:block;color:#697386}
.kader-rotation-rank{font-weight:800;color:#b51f2b;min-width:20px}
.kader-rotation-state{font-size:12px;font-weight:700;background:#eee;border-radius:6px;padding:5px 8px;max-width:90px}
.kader-rotation-state.in-squad{background:#e7f3e9;color:#265c35}
@media(max-width:720px){.kader-auto-review{padding:12px}.kader-source,.kader-source-manual,.kader-rotation-label{font-size:10px}}

/* v21.0.61: guided match steps and compact report rows. */
.match-progress{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0;margin:16px 0}
.match-progress li{display:flex;align-items:center;gap:6px;color:#697386;font-size:13px;min-width:0}
.match-progress li>span{display:grid;place-items:center;flex-shrink:0;width:24px;height:24px;border-radius:50%;background:#eee;color:#555;font-weight:700}
.match-progress .current{color:#b51f2b;font-weight:800}.match-progress .current>span{background:#b51f2b;color:white}
.match-next-step{display:flex;align-items:center;justify-content:space-between;gap:16px}.match-next-step p{margin:6px 0}.match-next-step button{flex-shrink:0;min-height:44px}
.report-saved-status{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.report-saved-status>span:last-child{font-size:13px;color:#b51f2b}
.report-player-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:13px}
.report-player-table th,.report-player-table td{text-align:left;vertical-align:top;padding:10px 6px;border-bottom:1px solid #e7e7ec;overflow-wrap:anywhere}
.report-player-table th:first-child{width:34%}.report-player-table th:nth-child(2){width:24%}.report-player-table th:nth-child(n+3){width:14%}
.report-player-table th[scope=row]{font-weight:400}.report-player-table small{display:block;color:#697386;font-size:11px;margin:4px 0}
.report-player-table input,.report-player-table select{width:100%;min-width:0;min-height:44px;padding:7px 4px;margin:0;font-size:13px}
.report-player-table details{font-size:11px;margin-top:5px}.report-player-table abbr{text-decoration:none}
@media(max-width:720px){.match-progress{grid-template-columns:repeat(2,1fr);gap:10px}.match-next-step{align-items:stretch;flex-direction:column;gap:8px}.match-next-step button{width:100%}.report-player-table{font-size:11px}.report-player-table th,.report-player-table td{padding:8px 3px}.report-player-table th:first-child{width:30%}.report-player-table th:nth-child(2){width:25%}.report-player-table th:nth-child(n+3){width:15%}.report-player-table select,.report-player-table input{font-size:12px;padding:6px 2px}}

/* v21.0.62: clickable steps and marked football pitch. */
.match-progress{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:18px 0}
.match-step{display:flex;align-items:center;gap:10px;text-align:left;min-height:74px;padding:12px;border:1px solid #d8dce5;background:#fff;color:#172332;min-width:0}
.match-step:hover{background:#faf5f5;color:#172332}.match-step.current,.match-step.current:hover{background:#b51f2b;border-color:#b51f2b;color:#fff}
.match-step-number{font-size:22px;font-weight:800}.match-step-label{flex:1;min-width:0}.match-step-label b{display:block;font-size:14px}.match-step-label small{display:block;margin-top:4px;font-size:12px;font-weight:400;color:#697386}.match-step.current small{color:#fff}
.match-step-check{display:grid;place-items:center;width:25px;height:25px;flex-shrink:0;background:#348449;border-radius:50%;color:#fff;font-size:18px;font-weight:800}.match-step.current.completed .match-step-check{background:#fff;color:#348449}
.lineup-pitch{position:relative;border:0;border-radius:10px;background:repeating-linear-gradient(0deg,#3c9947 0,#3c9947 70px,#358c40 70px,#358c40 140px);box-shadow:inset 0 0 40px #14572544;padding:18px 10px}
.pitch-markings{position:absolute;inset:0;width:100%;height:100%;fill:none;stroke:#ffffff60;stroke-width:3;pointer-events:none}
.pitch-band{position:relative;border:0;padding:12px 6px;min-height:84px;z-index:1}.pitch-band small{display:inline-block;background:#246a3199;border-radius:5px;padding:2px 7px;font-size:11px;color:#fff}
.lineup-chip{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-width:95px;max-width:165px;border-radius:10px;box-shadow:0 3px 8px #123c2444;font-size:13px;padding:10px 12px}
.lineup-shirt-icon{width:20px;height:20px;fill:#b51f2b;flex-shrink:0}.lineup-bench{border-radius:10px}.pitch-empty{font-size:11px;color:#ffffffbb}
@media(max-width:720px){.match-progress{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.match-step{gap:7px;min-height:74px;padding:10px}.match-step-label b{font-size:13px}.match-step-label small{font-size:11px}.match-step-check{width:22px;height:22px}.lineup-pitch{padding:14px 4px}.pitch-band{padding:10px 4px}.lineup-chip{min-width:78px;max-width:140px;font-size:12px;padding:8px}}

.lineup-chip.lineup-swap-target{border-color:#f4c95d;box-shadow:0 0 0 3px #f4c95d;transform:scale(1.03)}

/* v21.0.63: named player-profile areas. */
.profile-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.profile-tabs button{min-height:44px;flex:1;white-space:nowrap}
.profile-tab-panel[hidden]{display:none!important}.profile-head>div:last-child{min-width:0}.profile-head h1{overflow-wrap:anywhere}
.profile-account-table{width:100%;border-collapse:collapse;font-size:14px}.profile-account-table th,.profile-account-table td{text-align:left;padding:10px 7px;border-bottom:1px solid #e5e5ec;vertical-align:middle;overflow-wrap:anywhere}.profile-account-table th[scope=row]{font-weight:600}.profile-account-table small{display:block;color:#697386;font-weight:400}.profile-account-table button{min-height:44px;font-size:12px;padding:7px 10px}
@media(max-width:720px){.profile-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.profile-tabs button{white-space:normal;font-size:13px;padding:10px 6px}.profile-tabs button:last-child:nth-child(odd){grid-column:1/-1}.profile-account-table{font-size:12px}.profile-account-table th,.profile-account-table td{padding:8px 4px}}

/* v21.0.65: open exercise summaries for training and homework. */
.exercise-overview{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;align-items:start;margin:12px 0}
.exercise-short{min-width:0}.exercise-short p{margin:0;line-height:1.55;overflow-wrap:anywhere}
.exercise-overview-image{display:flex;flex-direction:column;gap:6px;width:100%;padding:8px;margin:0;background:#fff;border:1px solid #dce2eb;min-width:0;white-space:normal}
.exercise-overview-image:hover{background:#f5f6fa;color:#172332}.exercise-overview-image img{display:block;width:100%;height:190px;object-fit:contain;border-radius:6px;background:#f5f6fa}.exercise-overview-image span{font-size:12px;color:#b51f2b}
.exercise-overview-empty{display:grid;place-items:center;min-height:90px;color:#697386;border:1px dashed #dce2eb;border-radius:10px;font-size:13px}
.training-station{border:1px solid #dce2eb;border-radius:10px;padding:18px;margin:12px 0;background:#fff}.training-station h3{margin:8px 0}.training-exercise-details>summary{font-weight:700;color:#b51f2b;cursor:pointer}
.homework-task{border-radius:10px}.homework-draft-status{font-size:13px;color:#697386}.homework-overdue-count{color:#854d0e}.homework-choice{border:1px solid #dce2eb;border-radius:10px;padding:14px;margin:14px 0}
@media(max-width:720px){.exercise-overview{grid-template-columns:minmax(0,1fr);gap:12px}.exercise-overview-image img{height:200px}.training-station{padding:14px}.homework-choice{padding:12px}}
@media print{.exercise-overview-image{border:0;padding:0;background:transparent;color:inherit}.exercise-overview-image span{display:none}.exercise-overview-image img{height:auto;max-height:220px}.exercise-overview-empty{display:none}.exercise-overview{grid-template-columns:3fr 2fr;gap:12px}}
.training-settings>summary{font-weight:700;cursor:pointer;padding:12px;border:1px solid #dce2eb;border-radius:10px;background:#f5f6fa}.training-settings[open]>summary{margin-bottom:16px}

/* v21.0.66: focused statistics areas and compact player rows. */
.stats-controls{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stats-area-buttons{display:flex;gap:8px;margin:14px 0}.stats-area-buttons button{flex:1;min-height:44px}
.stats-compact-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:14px}.stats-compact-table th,.stats-compact-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e5e5ec;padding:12px 8px;overflow-wrap:anywhere}.stats-compact-table th:first-child{width:34%}.stats-compact-table th[scope=row]{font-weight:400}.stats-compact-table small{display:block;font-size:11px;color:#697386;margin-top:4px}.stats-compact-table abbr{text-decoration:none}.stats-player-details{font-size:12px;margin-top:6px}.stats-player-details summary{cursor:pointer;color:#697386}.stats-player-details p{margin:6px 0}.stats-method{margin-top:18px}.stats-method summary{font-weight:700;cursor:pointer}.stats-export .inline{flex-wrap:wrap}.stats-export button{min-height:44px}.statistics-panel .topline h3{margin:0}
@media(max-width:720px){.stats-controls{grid-template-columns:minmax(0,1fr);gap:8px}.stats-area-buttons{gap:6px}.stats-area-buttons button{font-size:12px;padding:10px 4px}.stats-compact-table{font-size:11px}.stats-compact-table th,.stats-compact-table td{padding:10px 3px}.stats-compact-table th:first-child{width:34%}.stats-compact-table small{font-size:10px}.stats-player-details{font-size:10px}.stats-export .inline button{flex:1;white-space:normal}}

/* v21.0.67: compact administration with full-width editors. */
.admin-compact-table{width:100%;table-layout:fixed;border-collapse:collapse;font-size:14px}.admin-compact-table th,.admin-compact-table td{text-align:left;vertical-align:top;padding:12px 8px;border-bottom:1px solid #e5e5ec;overflow-wrap:anywhere}.admin-compact-table th[scope=row]{font-weight:400}.admin-compact-table th:first-child{width:38%}.admin-compact-table th:last-child:nth-child(3){width:26%}.admin-compact-table small{display:block;font-size:12px;color:#697386;margin-top:4px}.admin-compact-table button{min-height:44px;white-space:normal}.admin-editor-row[hidden],.role-access-row[hidden]{display:none!important}.admin-editor-row td{background:#f5f6fa;padding:16px}.admin-editor-row form{max-width:680px;margin:12px 0}.admin-editor-row h4{margin:0}.admin-row-status{display:block;width:fit-content;background:#f0f2f6;color:#455269;padding:3px 6px;border-radius:6px;font-size:12px;margin-top:6px}.role-invite-log{margin-top:20px}.role-invite-log>summary,.member-request-info>summary{font-weight:700;cursor:pointer}.member-request-info{margin:10px 0}.members-panel [data-member-request]{padding:14px 0}.members-panel [data-member-request]>p{margin:8px 0}
@media(max-width:720px){.admin-compact-table{font-size:12px}.admin-compact-table th,.admin-compact-table td{padding:10px 4px}.admin-compact-table th:first-child{width:36%}.admin-compact-table th:last-child:nth-child(3){width:28%}.admin-compact-table button{font-size:11px;padding:8px 5px}.admin-compact-table small{font-size:11px}.admin-editor-row td{padding:12px}.admin-editor-row button{font-size:13px}.admin-row-status{font-size:11px}}
.registration-row[hidden]{display:none!important}.registration-panel .topline{align-items:flex-start}.registration-panel .topline h2{margin:0}.registration-panel .admin-compact-table details{margin:6px 0;font-size:12px}.registration-panel .admin-compact-table details p{margin:6px 0}

.match-time-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.match-time-fields label{min-width:0}.match-time-fields input{width:100%;min-height:44px}.match-time-summary{font-weight:600}#teamForm .match-time-fields{grid-template-columns:1fr}@media(max-width:720px){.match-time-fields{grid-template-columns:1fr}}

.report-player-table.with-grades th:first-child{width:29%}.report-player-table.with-grades th:nth-child(2){width:19%}.report-player-table.with-grades th:nth-child(n+3){width:13%}.report-player-table.with-grades details input[type=checkbox]{width:auto;min-height:0}.report-player-table.with-grades details .checkline{display:flex;align-items:center;gap:5px}@media(max-width:720px){.report-player-table.with-grades th:first-child{width:28%}.report-player-table.with-grades th:nth-child(2){width:20%}.report-player-table.with-grades th:nth-child(n+3){width:13%}.report-player-table.with-grades th:last-child{font-size:10px}}

/* Direkte Ja/Nein-Auswahl für die tatsächliche Teilnahme. */
:is(.matrix-table,.report-player-table) .attendance-slider{display:flex;isolation:isolate;border:1px solid var(--line,#e2e6ed);border-radius:10px;background:#f3f5f7;overflow:hidden;min-width:0;width:100%;max-width:144px}
:is(.matrix-table,.report-player-table) .attendance-choice{position:relative;flex:1;min-width:0;margin:0;cursor:pointer}
:is(.matrix-table,.report-player-table) .attendance-choice input{position:absolute;opacity:0;width:1px;min-width:0;height:1px;min-height:0;padding:0;margin:0;left:50%;top:50%}
:is(.matrix-table,.report-player-table) .attendance-choice span{display:flex;align-items:center;justify-content:center;min-height:44px;padding:2px;white-space:nowrap;font-size:12px;font-weight:700;color:#526173;border-radius:8px;transition:background-color .15s,color .15s}
:is(.matrix-table,.report-player-table) .attendance-choice input:is([value="present"],[value="yes"]):checked+span{background:#187443;color:#fff}
:is(.matrix-table,.report-player-table) .attendance-choice input:is([value="absent"],[value="no"]):checked+span{background:#b42332;color:#fff}
:is(.matrix-table,.report-player-table) .attendance-choice input:focus-visible+span{outline:3px solid #182231;outline-offset:-3px}
:is(.matrix-table,.report-player-table) .attendance-choice input:disabled+span{opacity:.55;cursor:default}
@media(prefers-reduced-motion:reduce){:is(.matrix-table,.report-player-table) .attendance-choice span{transition:none}}

.auth .auth-forgot{display:block;margin:0 0 16px auto;min-height:44px;padding:8px 12px}
.homework-dashboard{margin-bottom:24px}.homework-dashboard .homework-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:16px}.homework-dashboard .homework-task{margin:0;min-width:0}.homework-dashboard .exercise-overview{grid-template-columns:minmax(0,1fr)}

.home-layout aside .homework-dashboard .homework-list{display:block}.home-layout aside .homework-task{margin:12px 0}.home-layout aside .homework-dashboard .topline{display:block}.home-layout aside .homework-dashboard .topline>button{margin-top:10px}
#account{position:relative;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.account-tasks{display:inline-block}.task-star{position:relative;width:48px;height:48px;min-height:44px;padding:0;border:0;background:transparent!important}.task-star-shape{font-size:48px;line-height:48px;color:#f4c542}.task-star-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;color:#182231;font-size:12px;font-weight:800;padding-top:3px}.task-warning{position:absolute;right:0;top:0;color:#b42332;font-weight:800}.task-popover{position:absolute;right:0;top:calc(100% + 10px);width:min(390px,calc(100vw - 24px));max-height:min(65vh,540px);overflow:auto;background:#fff;border:1px solid #dce2eb;border-radius:10px;box-shadow:0 8px 24px #18223126;padding:16px;z-index:1000;text-align:left}.task-popover[hidden]{display:none}.task-popover h2{font-size:18px;margin:0 0 8px}.task-popover-list{display:grid;gap:8px}.task-entry{text-align:left;white-space:normal;min-height:48px;padding:10px}.task-entry small{display:block;font-weight:400;margin-top:5px;color:#526173}.task-star:focus-visible{outline:3px solid #182231;outline-offset:2px}
@media(max-width:720px){.home-layout aside{display:flex;flex-direction:column}.home-layout aside .homework-dashboard{order:-1}.task-popover{position:fixed;top:80px;right:12px;max-height:calc(100dvh - 180px)}#account .email{max-width:140px;overflow-wrap:anywhere}}

#account .account-name{display:block;background:transparent;color:#182231;border-color:transparent;min-height:44px;font-weight:500;padding:8px;max-width:220px;overflow-wrap:anywhere;white-space:normal}.account-settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.account-settings-grid .card{min-width:0}.account-page{margin-top:20px}.account-settings-grid .ui-savebar{flex-wrap:wrap}.account-settings-grid input{width:100%}
@media(max-width:720px){.account-settings-grid{grid-template-columns:minmax(0,1fr)}#account .account-name{max-width:130px;font-size:13px}.account-settings-grid .ui-savebar{position:static}}

@media(max-width:720px){#account{display:grid;grid-template-columns:minmax(0,92px) 44px;gap:4px;max-width:140px;align-items:center}#account .account-name{grid-column:1;grid-row:1;max-width:92px;margin:0;padding:4px;font-size:12px}#taskBadgeHost{grid-column:2;grid-row:1}#account .task-star{width:44px;height:44px;padding:0;min-height:44px}#account .task-star-shape{font-size:44px;line-height:44px}#logout{grid-column:1 / -1;justify-self:end;min-height:44px!important}.task-star-count{font-size:11px}}

.club-admin-panel small{display:block;overflow-wrap:anywhere}.club-admin-panel table{width:100%}.club-admin-panel th,.club-admin-panel td{overflow-wrap:anywhere}.club-admin-panel details{margin-top:20px}.club-admin-panel summary{font-weight:650;cursor:pointer}.club-admin-panel form{margin-top:16px}
@media(max-width:720px){.club-admin-panel td button{white-space:normal;padding:8px;font-size:12px}.club-admin-panel th,.club-admin-panel td{padding:8px 4px;font-size:12px}}
/* v85 compact shared header and context */
body>header{min-height:76px;padding:0 max(20px,calc((100vw - 1440px)/2));gap:18px;position:relative;z-index:70;align-items:center}body>header .brand{height:76px;gap:10px;font-size:18px;flex-shrink:0}body>header .brand img{height:70px;width:auto;max-width:220px;object-fit:contain}body>header .brand small{display:none}#headerNav{flex:1;min-width:0}#headerNav .nav-shell{position:static;box-shadow:none;background:transparent;border:0;margin:0;padding:0;gap:6px}#headerNav .section-nav{margin:0}#headerNav .primary-nav{gap:4px}#headerNav .primary-nav button{padding:10px;font-size:13px;background:transparent;min-width:0;white-space:nowrap;border:0;color:var(--muted)}#headerNav .primary-nav button[aria-current=page]{color:var(--red);box-shadow:inset 0 -2px var(--red);border-radius:0}#headerNav .nav-icon{display:none}#headerNav .more-navigation{min-width:62px}#headerNav .more-navigation>summary{padding:12px 8px;font-size:13px;border:0;background:transparent}#headerNav .more-navigation[open]>nav{top:calc(100% + 8px);bottom:auto;z-index:90;max-height:70dvh}#account{display:flex;flex-wrap:nowrap;max-width:none;gap:8px;align-items:center}#account summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;gap:7px;font-size:13px;font-weight:650}#account summary::-webkit-details-marker{display:none}.account-avatar{border-radius:50%;width:32px;height:32px;display:grid;place-items:center;background:#edf0f5;color:#4b5d74}.account-display{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu,.donation-menu{position:relative}.donation-menu>summary{font-size:23px!important;color:#a31b2b}.donation-menu>summary span{font-size:12px}.header-popover{position:absolute;right:0;top:calc(100% + 12px);z-index:100;background:white;border:1px solid var(--line);box-shadow:0 10px 28px #18223124;border-radius:12px;padding:10px;width:240px;font-size:14px}.header-popover button{display:block!important;width:100%;text-align:left;margin:3px 0!important;max-width:none!important}.app-context{display:grid;grid-template-columns:auto minmax(180px,1fr) auto;gap:10px 20px;align-items:center;border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:22px}.context-club{font-size:13px;font-weight:650;grid-column:1;grid-row:1}.context-selection{grid-column:2;grid-row:1;margin:0!important;border:0!important;background:transparent!important;position:relative}.context-selection>summary{padding:6px!important;font-size:14px;min-height:36px;display:flex;gap:14px}.context-selection .selectors{position:absolute;z-index:55;left:0;top:100%;width:min(460px,calc(100vw - 32px));box-shadow:0 12px 30px #18223120;grid-template-columns:1fr;margin:0}.context-selection .selectors input,.context-selection .selectors select{margin-bottom:4px}.context-sync{grid-column:3;grid-row:1;display:flex;gap:6px;align-items:center}.context-sync .sync-status{margin:0;padding:0;border:0;background:transparent;font-size:11px}.context-sync .sync-status:before{content:'●';color:#359c4b;margin-right:5px}.context-sync .sync-status.offline:before{color:#b51f2b}.icon-refresh{min-height:36px;padding:3px 8px;font-size:23px}.context-roles{grid-column:1/-1;grid-row:2;justify-self:end;font-size:11px}.context-roles summary{cursor:pointer}.context-roles .badges{padding-top:8px}.administration>h1{font-size:26px}.admin-sections{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.admin-sections button{background:white;border:1px solid var(--line);color:var(--muted)}.admin-sections button[aria-current=page]{background:var(--red);color:white}main{max-width:1440px;margin-top:0}.donation-menu .header-popover{line-height:1.5}.context-selection>summary span{color:var(--red);font-size:12px}
@media(min-width:761px) and (max-width:1180px){body>header .brand>span{display:none}body>header .brand img{max-width:170px;height:60px}body>header{gap:10px}.account-display{max-width:90px}.donation-menu>summary span{display:none}}
@media(max-width:760px){body>header{padding:0 12px;min-height:62px;gap:6px}body>header .brand{height:62px;gap:6px;min-width:0;font-size:14px}body>header .brand img{height:auto;width:auto;max-height:58px;max-width:148px}body>header .brand>span{display:none}#headerNav{flex:0}#account{gap:5px;margin-left:auto}#account .task-star{width:38px;height:44px}#account .task-star-shape{font-size:42px}#account .account-display,.donation-menu>summary span{display:none}#account summary{gap:3px}.account-avatar{width:30px;height:30px}#headerNav .nav-shell{position:fixed;top:auto;bottom:0;left:0;right:0;z-index:60;border-top:1px solid var(--line);background:white;padding:4px 8px calc(4px + env(safe-area-inset-bottom,0px));gap:0}#headerNav .nav-icon{display:block}#headerNav .primary-nav{width:75%;gap:0}#headerNav .primary-nav button,#headerNav .more-navigation>summary{font-size:11px;padding:5px 3px;min-height:56px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:3px;white-space:normal}#headerNav .more-navigation{width:25%}#headerNav .more-navigation[open]>nav{top:auto;bottom:calc(100% + 8px);right:8px;width:calc(100vw - 16px);max-height:calc(100dvh - 150px)}main{padding:0 12px}.app-context{grid-template-columns:minmax(0,1fr) auto;gap:4px 8px;margin-bottom:16px;padding:8px 0}.context-selection{grid-row:1;grid-column:1}.context-selection>summary{font-size:12px;gap:5px;padding:4px 0!important;flex-wrap:wrap}.context-club{grid-row:2;grid-column:1;font-size:10px;color:var(--muted)}.context-sync{grid-row:1;grid-column:2}.context-sync .sync-status small{display:none}.context-roles{grid-row:2;grid-column:2;font-size:10px}.header-popover{position:fixed;right:10px;top:66px;width:min(270px,calc(100vw - 20px));max-height:70dvh;overflow:auto}.admin-sections{display:grid;grid-template-columns:1fr 1fr}.admin-sections button{font-size:12px;padding:8px}.task-popover{position:fixed!important;right:8px!important;left:8px!important;top:66px!important;width:auto!important;max-height:calc(100dvh - 150px)!important}.context-selection .selectors{left:0;width:min(420px,calc(100vw - 24px))}}
/* Shared pitch and room views */
.resource-tabs{margin:0 0 16px;flex-wrap:wrap}.resource-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 16px}.resource-modes{display:flex;gap:4px;margin-left:auto}.resource-scroll{overflow:auto;max-width:100%;border:1px solid var(--line);border-radius:10px;overscroll-behavior:contain}.resource-week{width:100%;min-width:1000px;border-collapse:collapse;table-layout:fixed;font-size:12px}.resource-week th,.resource-week td{border:1px solid var(--line);padding:7px;vertical-align:top}.resource-week thead th{background:#f5f7fa;font-size:12px;white-space:normal}.resource-week th:first-child{width:170px;position:sticky;left:0;z-index:2;background:#fff}.resource-week thead th:first-child{background:#f5f7fa;z-index:3}.resource-child{padding-left:24px!important;font-weight:500!important}.resource-child:before{content:'↳ ';color:var(--muted)}.resource-booking{display:flex;flex-direction:column;align-items:flex-start;gap:3px;background:#e7f1ff;color:#183b60;border:1px solid #c9ddf4;border-left:3px solid #629bd6;border-radius:5px;width:100%;padding:7px;min-height:44px;text-align:left;font-size:11px;line-height:1.3;overflow-wrap:anywhere;margin:3px 0}.resource-booking b{font-size:11px}.resource-booking small{font-size:10px;color:#486480}.resource-inherited{background:#f0f5fb;border-left-color:#9badc2}.resource-free{color:#23794c;font-size:11px;display:block;padding:7px}.resource-disabled{display:block;background:#ffe9eb;color:#932b34;padding:7px;font-size:11px}.resource-block{padding:7px;background:#fff2d6;color:#8d5d0e;border-radius:5px;font-size:11px;margin:3px 0;overflow-wrap:anywhere}.resource-block.full{background:#ffe3e6;color:#902a36}.resource-block small{display:block;font-size:10px;color:inherit}.resource-hint{font-size:11px;margin:8px 0 0}.resource-timeline{min-width:1000px}.resource-time-head,.resource-time-row{display:grid;grid-template-columns:170px 1fr}.resource-time-head>b,.resource-time-row>b{position:sticky;left:0;background:white;z-index:4;border-bottom:1px solid var(--line);padding:12px;font-size:12px}.resource-time-head>div{display:flex;background:#f5f7fa}.resource-time-head>div span{flex:1;padding:8px 3px;border-left:1px solid var(--line);font-size:10px}.resource-time-track{position:relative;min-height:132px;border-bottom:1px solid var(--line);background:repeating-linear-gradient(to right,transparent 0,transparent calc(100% / var(--hours) - 1px),#e4e8ee calc(100% / var(--hours) - 1px),#e4e8ee calc(100% / var(--hours)))}.resource-time-booking,.resource-time-block{position:absolute;min-width:26px}.resource-time-block{top:0;bottom:0;opacity:.8;overflow:hidden}.resource-time-booking{max-width:100%;z-index:2}.resource-time-booking .resource-booking{font-size:10px;padding:4px;min-height:48px;margin:0;overflow:hidden}.resource-time-track>.resource-free{position:absolute;bottom:0;font-size:9px}.resource-agenda>section{border-top:1px solid var(--line);padding:14px 0}.resource-agenda-row{display:grid;grid-template-columns:110px 1fr 200px;gap:16px;align-items:center;border-bottom:1px solid var(--line);font-size:13px;padding:4px 0}.resource-agenda-row .resource-booking{background:transparent;border:0;color:var(--ink);padding:7px}.resource-agenda-row .resource-booking>b{display:none}.resource-agenda-row:hover{background:#f5f8fc}.resource-inline-form,.facility-management #pitchForm{background:#f7f9fc;padding:16px;margin:12px 0;border:1px solid var(--line);border-radius:10px}.facility-management{margin-bottom:20px}.facility-management>summary{padding:14px;cursor:pointer;font-weight:700;background:white;border:1px solid var(--line);border-radius:10px;margin-bottom:12px}.facility-management .card{padding:18px}.resource-management-list .list-item{padding:12px 0}.facility-grounds .ground-old-board{display:none}.facility-booking-detail{border-left:4px solid #629bd6}.facility-booking-detail>#closeFacilityBooking{float:right}.facility-booking-detail form{max-width:600px}
@media(max-width:760px){.resource-toolbar{gap:5px}.resource-toolbar>b{font-size:12px}.resource-toolbar button{padding:8px;font-size:12px}.resource-modes{width:100%;margin:5px 0 0}.resource-modes button{flex:1}.resource-tabs button{font-size:12px;padding:8px}.resource-agenda-row{grid-template-columns:92px 1fr;gap:6px;font-size:11px}.resource-agenda-row>span:last-child{grid-column:2;color:var(--muted);margin-top:-6px;padding:0 7px 8px}.resource-time-head,.resource-time-row{grid-template-columns:120px 1fr}.resource-timeline{min-width:850px}.resource-week th:first-child{width:125px}.resource-week{min-width:1050px}.facility-booking-detail>#closeFacilityBooking{float:none;margin-bottom:12px}}
#account{flex-direction:row}.app-context .context-selection{padding:0;min-height:0}.context-roles{margin:0;padding:0;line-height:1.3}.context-roles>summary{margin:0;padding:0;min-height:20px}.resource-tabs{display:flex}.resource-tabs button{width:auto;flex:0 1 auto}
@media(max-width:760px){.resource-tabs{gap:6px}.resource-tabs button{flex:1 1 auto}.app-context{padding:6px 0}.context-roles>summary{font-size:10px}body>header{height:62px}#account{height:62px}.context-selection>summary{justify-content:flex-start;min-height:30px}}
.resource-tabs{flex-direction:row}.resource-tabs button{flex-shrink:0}
@media(max-width:760px){.resource-tabs button{flex:1 1 40%;min-width:0}.resource-tabs button[data-resource-tab=grounds]{flex-basis:100%}}
@media(max-width:760px){body>header .brand img{max-width:min(181px,calc(100vw - 160px));max-height:58px}}
/* v86: one local icon family and consistent navigation controls */
.app-icon{display:inline-block;width:24px;height:24px;flex:0 0 auto;fill:currentColor;vertical-align:middle}.event-symbol{--symbol-paper:#fff1f2;display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;border-radius:10px;background:var(--symbol-paper);color:#a91d30;flex-shrink:0}.event-symbol .app-icon{width:29px;height:29px}.symbol-training{--symbol-paper:#e7f6eb;color:#237344}.symbol-homework{--symbol-paper:#e7f2ff;color:#215c91}.symbol-club{--symbol-paper:#fff3d7;color:#94600a}.symbol-small{width:28px;height:28px;min-width:28px;border-radius:7px}.symbol-small .app-icon{width:20px;height:20px}.icon-heading{display:flex;align-items:center;gap:10px}.home-event-heading{display:flex;align-items:center;gap:12px;margin-bottom:14px}.home-event-heading>div{min-width:0}.home-event-heading h3{margin:3px 0 0}.calendar-event-lead{display:flex;align-items:center;gap:7px;margin-bottom:4px}.calendar-event-lead .event-time{margin:0}.month-dot .event-symbol{float:left;width:20px;height:20px;min-width:20px;border-radius:4px;margin-right:5px}.month-dot .event-symbol .app-icon{width:15px;height:15px}.resource-caption{display:flex;align-items:center;gap:5px}.resource-caption .event-symbol{width:22px;height:22px;min-width:22px;border-radius:4px}.resource-caption .event-symbol .app-icon{width:16px;height:16px}.resource-time-booking .resource-caption .event-symbol{display:none}
#account{gap:10px}#taskBadgeHost,.account-tasks{flex:0 0 44px;display:inline-flex}#account .task-star,#account .donation-menu>summary,#account .account-menu>summary{position:relative;display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;max-height:44px;margin:0;padding:0;border:1px solid #dce2eb;border-radius:10px;background:#f7f9fc;box-shadow:none;line-height:1;box-sizing:border-box}#account .task-star-shape{display:flex;align-items:center;justify-content:center;width:32px;height:32px;line-height:1;color:#efb62d}#account .task-star-shape .app-icon{width:32px;height:32px}#account .task-star-count{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding-top:2px;line-height:1;font-size:11px;color:#172231;font-weight:800;pointer-events:none}#account .donation-menu>summary>.app-icon{width:26px;height:26px;color:#b51f2b}#account .account-avatar{width:28px;height:28px;font-size:13px;font-weight:750;background:#e4eaf1}#account .account-display{display:none}#account .account-menu>summary>span:last-child{position:absolute;bottom:3px;right:3px;font-size:10px;color:#4e6078}.account-holder{margin:2px 4px 10px;font-size:13px;font-weight:700;overflow-wrap:anywhere}#account .donation-menu{margin:0}#account .task-warning{position:absolute;top:-4px;right:-3px}
#headerNav .nav-shell{gap:8px}#headerNav .primary-nav{gap:8px}#headerNav .primary-nav button,#headerNav .more-navigation>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:46px;background:#edf0f5;color:#263347;border:1px solid #dce2eb;border-radius:9px;padding:10px 14px;font-size:14px;font-weight:750;line-height:1.2;box-shadow:none;white-space:nowrap}#headerNav .primary-nav .nav-icon,#headerNav .more-navigation>summary .nav-icon{display:inline-flex;align-items:center;justify-content:center}#headerNav .nav-icon .app-icon{width:23px;height:23px}#headerNav .primary-nav button[aria-current=page],#headerNav .more-navigation[open]>summary,#headerNav .more-navigation.has-current>summary{background:#b51f2b;color:white;border-color:#b51f2b;border-radius:9px;box-shadow:none}#headerNav .more-navigation{min-width:86px}#headerNav .more-navigation>summary::marker{content:''}#headerNav .more-navigation>summary::-webkit-details-marker{display:none}#headerNav .more-navigation>summary:after{display:none}.context-roles .badges{padding:0;justify-content:flex-end;gap:5px}.context-roles .badge{font-size:10px;padding:4px 7px;line-height:1.25}.context-roles{align-self:center}.icon-refresh .app-icon{width:22px;height:22px}button:focus-visible,summary:focus-visible{outline:3px solid #457bad;outline-offset:3px}
@media(min-width:761px) and (max-width:1040px){body>header .brand>span{display:none}body>header .brand img{max-width:140px;height:auto;max-height:66px}#headerNav .primary-nav button,#headerNav .more-navigation>summary{flex-direction:column;gap:4px;padding:6px 9px;font-size:12px;min-height:56px}#headerNav .primary-nav{gap:5px}#headerNav .nav-shell{gap:5px}#headerNav .more-navigation{min-width:64px}}
@media(max-width:760px){body>header .brand img{max-width:min(181px,calc(100vw - 188px));max-height:58px}#account{gap:10px;height:62px;flex-shrink:0}#headerNav .nav-shell{gap:6px;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));align-items:stretch}#headerNav .primary-nav{gap:6px;width:auto;flex:3 1 0}#headerNav .primary-nav button,#headerNav .more-navigation>summary{flex-direction:column;gap:4px;min-height:56px;padding:6px 2px;font-size:11px;line-height:1.1;font-weight:700;border-radius:9px;border:1px solid #dce2eb;background:#f0f2f6;color:#39485d}#headerNav .nav-icon .app-icon{width:24px;height:24px}#headerNav .more-navigation{min-width:0;width:auto;flex:1 1 0}#headerNav .primary-nav button[aria-current=page],#headerNav .more-navigation[open]>summary,#headerNav .more-navigation.has-current>summary{border-radius:9px;background:#b51f2b;color:white}#headerNav .more-navigation>summary .nav-icon{display:inline-flex}#headerNav .more-navigation nav button{white-space:normal}.context-roles{max-width:100%;grid-column:1/-1;grid-row:3;justify-self:start;margin-top:2px}.context-roles .badges{justify-content:flex-start;gap:5px}.context-roles .badge{font-size:10px}.home-event-heading{gap:10px;margin-bottom:10px}.home-event-heading .event-symbol{width:40px;height:40px;min-width:40px}.home-event-heading .event-symbol .app-icon{width:27px;height:27px}}
@media(max-width:760px){.app-context{display:flex;flex-wrap:wrap;gap:5px 8px}.context-selection{order:1;flex:1 1 170px;min-width:0}.context-sync{order:2;flex:0 0 auto}.context-club{order:3;flex:1 1 90px}.context-roles{order:4;flex:0 1 auto;margin:0;justify-self:auto}.context-roles .badges{flex-wrap:wrap}}
.home-shortcuts button{display:flex;align-items:center;justify-content:center;gap:8px}.resource-caption>.app-icon{width:17px;height:17px;color:var(--muted)}
/* v87: explicit symbols also in the More menu */
#headerNav .more-navigation nav .nav-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}#headerNav .more-navigation nav .app-icon{width:24px;height:24px}#headerNav .more-navigation nav button{white-space:normal;overflow-wrap:break-word}
#headerNav .more-navigation nav button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:54px;line-height:1.25}#headerNav .more-navigation nav button>span:last-child{min-width:0}
@media(max-width:760px){#headerNav .more-navigation nav button{flex-direction:column;gap:5px;min-height:68px}}

/* v21.0.88: family replies live inside the weekly event card. */
.calendar-event{padding:14px;gap:0;font-size:14px;font-weight:400}.calendar-event-open{display:flex;flex-direction:column;align-items:flex-start;gap:6px;width:100%;min-width:0;min-height:44px;padding:0;margin:0;border:0;border-radius:5px;background:transparent;color:var(--ink);text-align:left;font-weight:400;box-shadow:none;overflow-wrap:anywhere}.calendar-event-open:hover{background:transparent;color:var(--ink)}.calendar-event-open>b{font-size:15px}.calendar-event-open>span{font-size:12px}.calendar-event-open:focus-visible{outline:3px solid var(--red);outline-offset:4px}.calendar-event.cancelled .calendar-event-open>b{text-decoration:line-through}.calendar-replies{width:100%;min-width:0;margin-top:14px;border-top:1px solid #dce1e8;padding-top:12px;font-size:13px}.calendar-replies>p{font-size:11px;margin:5px 0 8px}.calendar-reply-row{display:grid;grid-template-columns:minmax(90px,1fr) auto auto;align-items:center;gap:8px 12px;padding:12px 0;margin:0;border-bottom:1px solid #e1e5eb}.calendar-reply-row:last-of-type{border-bottom:0}.calendar-reply-person{display:flex;flex-direction:column;gap:3px;min-width:0;overflow-wrap:anywhere}.calendar-reply-person small{font-size:11px;color:var(--muted)}.calendar-reply-choice{display:flex;gap:6px}.calendar-reply-row button{min-height:44px;margin:0;font-size:13px;padding:8px 12px;border:1px solid #cfd7e2;box-shadow:none}.calendar-reply-choice button{min-width:64px;background:#fff;color:#394657}.calendar-reply-choice .reply-choice-yes{background:#23864d;color:white;border-color:#23864d}.calendar-reply-choice .reply-choice-no{background:#bb2337;color:white;border-color:#bb2337}.calendar-reply-choice button:disabled{opacity:.65;cursor:default}.calendar-reply-state{grid-column:1/3;font-size:11px;min-height:16px}.calendar-reply-row .calendar-reply-note-toggle{grid-column:3;grid-row:1/3;width:44px;padding:8px;align-self:start;background:#fff;color:#536174}.calendar-reply-note-toggle .app-icon{width:22px;height:22px}.calendar-reply-note-toggle>span{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.calendar-reply-note{grid-column:1/-1;min-width:0}.calendar-reply-note label{font-size:12px;margin:4px 0 6px}.calendar-reply-note input{font-size:13px;margin-bottom:8px;min-width:0}.calendar-reply-note[hidden]{display:none}.calendar-reply-note .inline{flex-direction:row;flex-wrap:wrap}.calendar-reply-warning,.calendar-reply-closed{display:block;grid-column:1/-1;font-size:11px;color:#8a5a17;line-height:1.5}.calendar-reply-error{grid-column:1/-1;font-size:12px;overflow-wrap:anywhere}.calendar-reply-error .inline{margin-top:8px;flex-wrap:wrap}.calendar-reply-row:target{outline:2px solid var(--red);outline-offset:4px}.calendar-reply-row{scroll-margin-top:110px}.coach-weekly-replies>.weekly-replies{border:0;box-shadow:none;padding:8px 0;margin:0}
@media(min-width:1200px){.calendar-reply-row{grid-template-columns:minmax(90px,1fr) auto minmax(76px,auto) 44px}.calendar-reply-state{grid-column:3;grid-row:1}.calendar-reply-row .calendar-reply-note-toggle{grid-column:4;grid-row:1}.calendar-reply-row button{padding:8px 10px}}
@media(max-width:720px){.calendar-event{padding:12px}.calendar-reply-row{grid-template-columns:minmax(0,1fr) 44px;gap:8px}.calendar-reply-person{grid-column:1;grid-row:1}.calendar-reply-choice{grid-column:1;grid-row:2}.calendar-reply-choice button{flex:1;min-width:0;max-width:145px}.calendar-reply-state{grid-column:1/-1;grid-row:3}.calendar-reply-row .calendar-reply-note-toggle{grid-column:2;grid-row:1/3}.calendar-reply-row{scroll-margin-top:90px}.calendar-reply-error .inline{flex-direction:column;align-items:stretch}}
.role-account-picker{position:relative}
.role-account-options{max-height:300px;overflow:auto;border:1px solid #dce1e8;border-radius:12px;background:#fff;margin:4px 0 12px;padding:4px}
.role-account-options[hidden]{display:none}
.role-account-options button{display:block;width:100%;text-align:left;background:#fff;color:#252b33;border:0;border-radius:8px;padding:10px 12px;min-height:48px;overflow-wrap:anywhere}
.role-account-options button small{display:block;color:#626d7a;font-weight:400;margin-top:3px}
.role-account-options button:hover,.role-account-options button[aria-selected=true]{background:#fff0f1;color:#b71929}
.role-account-options button:disabled{opacity:.6;cursor:default}
.role-account-options p{padding:8px}
.family-player-options{max-height:260px;overflow:auto;border:1px solid #dce1e8;border-radius:10px;padding:4px 10px;margin-bottom:12px}
.family-player-options .checkline{min-height:44px;margin:0;padding:8px 0;align-items:center;overflow-wrap:anywhere}
.family-player-options input[type=checkbox],.family-player-options input[type=radio]{width:20px;height:20px;min-height:20px;flex:0 0 20px;margin:0;padding:0;accent-color:var(--red)}
.family-player-options .checkline[hidden]{display:none}
.training-station-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:end;margin:12px 0}.training-station-actions label{width:100px;margin:0}.training-station-actions input{margin:4px 0 0}.training-exercise-editor{padding:16px;margin:14px 0;background:#f5f7fa;border:1px solid var(--line);border-radius:10px;min-width:0}.training-exercise-editor select{max-width:100%}.training-exercise-editor h4{margin-top:0}
[data-family-assignment][hidden]{display:none}
/* v21.0.94: common personal responses, grade matrix, ticker and donation dialog. */
.home-event-heading>div{flex:1}.home-refresh{display:inline-flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;min-height:44px;margin:0;padding:10px}.home-refresh .app-icon{width:24px;height:24px}
.ticker-symbol .app-icon{width:18px;height:18px;vertical-align:middle}
.grade-table .badge .app-icon{width:14px;height:14px;vertical-align:middle}
body>header .brand small{display:block;font-size:11px;font-weight:400;color:#929ba7;margin-top:4px}
@media(min-width:761px){body>header{position:sticky;top:0;z-index:90;background:white}html{scroll-padding-top:115px}body>header .brand>span{display:block!important}body>header .brand{font-size:17px}body>header .brand img{max-width:200px}.task-popover,.header-popover{z-index:100}}
.donation-heart{width:44px;height:44px;min-width:44px;padding:9px;color:#b71929;background:#f4f6f9;border:1px solid var(--line)}.donation-heart .app-icon{width:24px;height:24px}
dialog{border:1px solid var(--line);border-radius:18px;padding:26px;width:min(540px,calc(100vw - 24px));max-height:calc(100dvh - 32px);overflow:auto;color:var(--ink)}dialog::backdrop{background:#18223180}.dialog-close{float:right}.donation-target{padding:18px;margin:16px 0;border:1px solid var(--line);border-radius:12px}.donation-link{display:block;text-align:center;background:#b71929;color:white;font-weight:700;border-radius:9px;padding:13px;text-decoration:none}.team-section-tabs{display:flex;gap:8px;margin-bottom:20px}
.personal-row{border-top:1px solid var(--line);padding:14px 0}.personal-person{display:flex;gap:6px;flex-wrap:wrap;align-items:center;margin-bottom:10px}.personal-person small{flex:1}.personal-choice{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;align-items:center;margin:10px 0;font-size:13px}.personal-choice>div{display:flex;gap:6px}.personal-choice button{min-width:66px;min-height:44px;padding:8px}.personal-choice>small{grid-column:1/-1}.personal-choice .chosen.reply-choice-yes{background:#26794a;border-color:#26794a;color:white}.personal-choice .chosen.reply-choice-no{background:#b71929;border-color:#b71929;color:white}.personal-row details>summary{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--muted)}.personal-row details .app-icon{width:20px;height:20px}
.home-match-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin-top:18px}.home-match-steps button{display:flex;gap:6px;align-items:center;justify-content:center;padding:10px 6px;font-size:12px}.home-match-steps span{font-weight:800}.home-match-steps .done{background:#e6f5ec;color:#267044}.home-match-steps .current{background:#b71929;color:white}.home-ticker{margin-top:20px}.ticker-heading{display:flex;justify-content:space-between;gap:8px;color:#267044;margin-bottom:12px}.ticker-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:16px}.ticker-score{text-align:center;padding:20px 10px;background:#f8fafc;border:1px solid var(--line);border-radius:12px}.ticker-score strong{display:block;font-size:clamp(42px,7vw,72px);line-height:1.3}.ticker-score>div{font-size:12px}.ticker-events{list-style:none;margin:0;padding:0;max-height:320px;overflow:auto}.ticker-events li{display:grid;grid-template-columns:30px 24px 1fr;gap:6px;font-size:13px;padding:10px 0;border-bottom:1px solid var(--line)}.ticker-events small{display:block}.ticker-card{display:inline-block;width:11px;height:16px;border-radius:2px;background:#efc52e}.ticker-card.red{background:#ce2437}.ticker-card.yellow_red{background:linear-gradient(90deg,#efc52e 50%,#ce2437 50%)}
.grade-filters{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:12px}.grade-scroll{overflow:auto;max-height:65dvh;border:1px solid var(--line);border-radius:10px}.grade-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.grade-table th,.grade-table td{min-width:96px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:8px;text-align:center;background:white}.grade-table th:first-child{position:sticky;left:0;min-width:150px;max-width:180px;text-align:left;z-index:2;background:#fff}.grade-table thead th{position:sticky;top:0;z-index:3;background:#f4f6f9}.grade-table thead th:first-child{z-index:4}.grade-table small{display:block;font-size:10px;max-width:120px;overflow-wrap:anywhere}.grade-table .badge{display:block;margin:6px 0}.grade-table .badge.training{background:#e6f5ec;color:#267044}.grade-table .grade-cell{width:100%;padding:8px;background:white;color:var(--ink);min-height:44px;border:1px solid transparent}.grade-table .grade-cell:not(:disabled):hover{border-color:#b71929}.grade-table .grade-changed,.grade-table .grade-changed button{background:#fff6cf}.grade-table .grade-ignored{color:#7a8490}.grade-table .grade-average{background:#f5f7fa;font-weight:700}.grade-matrix .ui-savebar{position:sticky;bottom:0;background:#fff4f4;border-radius:9px;padding:12px;z-index:5;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.grade-matrix .ui-savebar>span{flex:1;font-size:12px}
@media(max-width:760px){.home-match-steps{grid-template-columns:1fr 1fr}.ticker-layout{grid-template-columns:1fr}.ticker-heading{font-size:12px}.grade-filters{grid-template-columns:1fr 1fr}.grade-filters label:last-child{grid-column:1/-1}.grade-matrix>.card,.grade-matrix form>.card{padding:12px}.grade-table th:first-child{min-width:110px;max-width:125px}.grade-table th,.grade-table td{min-width:84px}.grade-matrix .ui-savebar{position:static}.personal-choice{grid-template-columns:1fr}.personal-choice>small{grid-column:auto}.donation-heart{width:44px;height:44px}dialog{padding:18px}}
@media(min-width:761px) and (max-width:1180px){body>header .brand{font-size:12px;gap:7px}body>header .brand img{max-width:140px}.brand small{font-size:10px!important}}
/* v21.0.99 compact report; single set of fields on both screen sizes. */
.report-score-card{padding:18px;border:1px solid var(--line);border-radius:10px;background:#f8fafb;margin:16px 0}.report-score-teams{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:14px;text-align:center}.report-score-teams strong{font-size:42px;white-space:nowrap}.report-score-card>p{text-align:center}.report-score-card summary{color:var(--red);font-weight:700;cursor:pointer}.report-score-card .grid{margin-top:16px}.report-finish>.report-edit>summary{display:none}.report-edit{margin-top:18px}.report-edit>summary,.report-clock-tools>summary{cursor:pointer;font-weight:700}.report-clock-tools{margin:12px 0}.report-more{margin:18px 0;border:1px solid var(--line);border-radius:10px;padding:12px}.report-more>summary{font-weight:700;cursor:pointer}.report-more[open]>summary{margin-bottom:18px}.report-mobile-stats{display:none}.report-savebar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;background:white;border:1px solid var(--line);padding:12px}.report-savebar #finalizeReport{order:-1}.report-savebar button{min-height:44px}.report-player-section .report-invalid,.report-invalid{outline:2px solid var(--red);outline-offset:2px}.training-exclusions{max-height:260px;overflow:auto;background:white;border:1px solid var(--line);border-radius:10px;padding:10px}.training-exclusions p{padding:8px 0;border-top:1px solid var(--line);overflow-wrap:anywhere}.simple-report-table [data-report-played]{min-width:0}.simple-report-table .report-player-details{margin-top:6px}
@media(max-width:720px){.simplified-report{padding:14px!important}.simplified-report h2{font-size:22px}.report-score-card{padding:12px}.report-score-teams{grid-template-columns:1fr auto 1fr;gap:8px;font-size:12px}.report-score-teams strong{font-size:34px}.simple-report-table,.simple-report-table thead,.simple-report-table tbody{display:block;width:100%;min-width:0}.simple-report-table tr{display:grid;grid-template-columns:minmax(0,1fr) 90px 58px;gap:6px;border-bottom:1px solid var(--line);padding:10px 0}.simple-report-table th,.simple-report-table td{display:block;min-width:0;width:auto!important;padding:4px 2px;border:0;font-size:12px}.simple-report-table .report-grade-cell{grid-column:3;grid-row:1}.simple-report-table .report-played-cell{grid-column:2;grid-row:1}.simple-report-table th:first-child{grid-column:1;grid-row:1;overflow-wrap:anywhere}.simple-report-table .report-stat-cell{display:none}.simple-report-table .report-stats-open>.report-stat-cell{display:flex;grid-column:1/-1;gap:10px;align-items:center;justify-content:space-between}.simple-report-table .report-stats-open>.report-stat-cell:before{content:attr(data-label);font-weight:650}.simple-report-table .report-stats-open>.report-stat-cell input{width:95px;margin:0}.simple-report-table select{font-size:12px;min-height:44px;padding:5px 2px}.simple-report-table .attendance-choice{min-width:44px;min-height:44px}.simple-report-table .attendance-choice span{font-size:12px}.report-mobile-stats{display:flex;gap:4px;align-items:center;flex-wrap:wrap}.report-mobile-stats small{font-size:10px!important;line-height:1.5}.report-mobile-stats button{padding:7px;width:44px;min-height:44px}.report-mobile-stats .app-icon{width:17px;height:17px}.report-player-details{font-size:11px}.report-savebar{bottom:calc(80px + env(safe-area-inset-bottom) + 8px)}.report-savebar button{width:100%}.report-more{padding:10px}.report-more .grid{grid-template-columns:1fr}.report-score-card .grid{grid-template-columns:1fr}}

/* v21.0.100: direct match events and touch-friendly modal player selection. */
.game-clock .clock-scoreboard{display:flex;align-items:center;justify-content:center;gap:24px;text-align:center}.clock-scoreboard>div{display:flex;flex-direction:column;min-width:0}.clock-scoreboard #clockTime{font-size:2rem;font-variant-numeric:tabular-nums;color:#18773f}.clock-scoreboard>div+div>b{font-size:2.4rem;line-height:1.2}.clock-scoreboard small{font-size:12px;color:var(--muted)}
.clock-direct-actions{margin:16px 0}.clock-direct-actions h4{margin:0 0 10px}.clock-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.game-clock .clock-quick{display:flex;align-items:center;justify-content:center;gap:10px;min-height:64px;min-width:0;margin:0;font-size:15px}.clock-quick .app-icon{width:26px;height:26px;flex:0 0 26px}.game-clock .clock-quick-goal{border-color:var(--red,#b71929);background:#fff3f4;color:var(--red,#b71929)}.clock-direct-actions>.clock-quick-end{width:100%;margin-top:10px;min-height:44px}.clock-planned{font-size:12px;color:var(--muted)}.clock-management{margin:12px 0}.clock-management>summary{min-height:44px}
.clock-card-symbol{display:inline-block;flex:0 0 19px;width:19px;height:26px;border-radius:3px;vertical-align:middle;background:#f3c400;box-shadow:inset 0 0 0 1px #0002}.clock-card-symbol.red{background:#b71929}.clock-card-symbol.yellow_red{position:relative;background:#f3c400;transform:rotate(-10deg);margin-right:5px}.clock-card-symbol.yellow_red:after{content:'';position:absolute;left:8px;top:3px;width:17px;height:25px;border-radius:3px;background:#b71929;transform:rotate(24deg);box-shadow:inset 0 0 0 1px #0002}
dialog.clock-event-dialog{padding:0;width:min(600px,calc(100vw - 24px));max-width:100%;max-height:calc(100dvh - 24px);overflow:hidden;margin:auto;border:1px solid var(--line);border-radius:16px;box-shadow:0 15px 60px #10182840}dialog.clock-event-dialog::backdrop{background:#17233299}.clock-event-dialog form{margin:0;display:flex;flex-direction:column;max-height:calc(100dvh - 26px);min-height:0}.clock-dialog-head{display:flex;position:static;align-items:flex-start;justify-content:space-between;gap:10px;padding:18px 20px 12px;border-bottom:1px solid var(--line);background:white;flex:0 0 auto;box-shadow:none}.clock-dialog-head small{font-size:10px;font-weight:800;letter-spacing:1.5px;color:var(--red,#b71929)}.clock-dialog-head h3{font-size:22px;margin:4px 0 0;overflow-wrap:anywhere}.clock-dialog-head button{width:44px;height:44px;min-width:44px;margin:0;padding:0}.clock-dialog-scroll{padding:12px 20px 18px;overflow-y:auto;overscroll-behavior:contain;min-height:0}.clock-dialog-scroll section{margin:16px 0}.clock-dialog-scroll h4{font-size:15px;margin:0 0 10px}.clock-event-stamp{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin:0 0 12px;font-size:13px}.clock-event-stamp>b{background:#f0f2f6;border-radius:8px;padding:6px 9px}.clock-event-stamp>span{color:var(--muted)}.clock-dialog-scroll details>summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-weight:600;font-size:13px}.clock-dialog-scroll details>summary:before{content:'▸';margin-right:7px}.clock-dialog-scroll details[open]>summary:before{content:'▾'}.clock-dialog-scroll input{width:100%;min-width:0}.clock-player-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.clock-event-dialog .clock-player-choice{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:78px;margin:0;min-width:0;padding:12px 22px;white-space:normal;overflow-wrap:anywhere;text-align:center;background:white;font-size:14px;color:var(--ink);border:1px solid var(--line)}.clock-event-dialog .clock-player-choice[aria-pressed=true]{border:2px solid var(--red,#b71929);background:#fff1f3;color:var(--red,#b71929);padding:11px 21px}.clock-shirt{display:flex;align-items:center;justify-content:center;width:34px;height:33px;background:var(--red,#b71929);color:white;font-size:12px;clip-path:polygon(25% 0,38% 5%,62% 5%,75% 0,100% 20%,85% 40%,76% 32%,76% 100%,24% 100%,24% 32%,15% 40%,0 20%)}.clock-choice-check{position:absolute;right:6px;top:4px;font-size:16px;font-weight:800}.clock-event-dialog .clock-unassigned{grid-column:1/-1;min-height:44px;font-size:13px}.clock-swap-arrow{text-align:center;font-size:24px;color:var(--muted)}.clock-swap-summary{padding:10px;background:#f1f3f6;border-radius:10px;text-align:center;font-size:14px;overflow-wrap:anywhere}.clock-dialog-footer{display:flex;gap:10px;flex:0 0 auto;margin:0;padding:12px 20px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:white}.clock-dialog-footer button{flex:1;min-width:0;min-height:48px;margin:0;font-size:14px;padding:10px}.clock-modal-note{font-size:12px;margin-bottom:0}.clock-event-dialog:has(~*){z-index:auto}.clock-player-choice:focus-visible,.clock-quick:focus-visible{outline:3px solid #1f70ba;outline-offset:2px}
@media(max-width:720px){.clock-action-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.game-clock .clock-quick{flex-direction:column;gap:7px;min-height:76px;font-size:14px}.clock-live-bar .inline .clock-quick-half{flex-direction:row;min-height:44px;font-size:12px}.clock-live-bar .inline .clock-quick-half .app-icon{width:18px;height:18px;flex-basis:18px}.clock-scoreboard{gap:20px!important}.clock-scoreboard #clockTime{font-size:1.8rem}.clock-scoreboard>div+div>b{font-size:2.2rem}dialog.clock-event-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);margin:auto auto 0;border-radius:16px 16px 0 0}.clock-event-dialog form{max-height:calc(100dvh - 14px)}.clock-dialog-head{padding:14px 14px 10px}.clock-dialog-head h3{font-size:20px}.clock-dialog-scroll{padding:10px 14px 14px}.clock-dialog-footer{padding:10px 14px max(12px,env(safe-area-inset-bottom));gap:8px}.clock-player-choices{gap:8px}.clock-event-dialog .clock-player-choice{font-size:13px}}
.clock-dialog-head{min-height:0}.clock-event-dialog:modal{outline:none}.clock-scoreboard{flex-direction:column-reverse;gap:6px!important}.clock-scoreboard>div+div>small{display:none}
body:has(.clock-event-dialog:modal){overflow:hidden}.clock-direct-actions>.clock-quick-end{min-height:44px;flex-direction:row}
.clock-scoreboard>div{padding:0}
@media print{.clock-direct-actions,.clock-event-dialog,.clock-management{display:none!important}}

/* v21.0.101: consistent direct actions and compact editors. */
[hidden]{display:none!important}
.quick-dialog{box-sizing:border-box;width:min(760px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:18px;border:1px solid var(--line,#dce1e8);border-radius:14px;overflow:auto;background:#fff;color:#202733;overscroll-behavior:contain}
.quick-dialog::backdrop{background:rgb(18 28 42 / .5)}
.quick-dialog>.card{margin:0;border:0;padding:0;box-shadow:none}
.quick-dialog .topline{gap:10px;align-items:center}
.quick-dialog .ui-savebar{position:sticky;bottom:-18px;background:#fff;border-top:1px solid #e2e6ed;z-index:3;padding:12px 0;margin-bottom:0}
.quick-dialog .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.quick-dialog>section,.quick-dialog>div{min-width:0}
.quick-dialog .message{white-space:normal}
.quick-dialog .planning-panel{padding:0;border:0;box-shadow:none}
.quick-dialog .planning-panel>p,.quick-dialog .planning-panel>details{font-size:.85rem}
.quick-dialog .inline button,.training-direct button{min-height:44px}
.quick-dialog .training-goals{grid-template-columns:repeat(2,minmax(0,1fr))}
.training-direct{margin:12px 0;gap:8px}
.training-basis{margin:8px 0}
.training-entry,.event-kind-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
.training-entry button,.event-kind-buttons button{min-height:64px;padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.event-kind-buttons svg{width:24px;height:24px}
.quick-dialog .other-event-kinds{margin:8px 0}
.quick-dialog .event-extra,.quick-dialog .event-pitch-field{margin:12px 0;padding:10px;border:1px solid #dce1e8;border-radius:10px}
.quick-dialog .event-extra summary,.quick-dialog .event-pitch-field summary{cursor:pointer;font-weight:650;min-height:32px}
.resource-choice-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.choice-tile{border:1px solid #dce1e8;border-radius:10px;padding:10px;min-height:48px;display:flex;align-items:center;gap:8px;cursor:pointer}
.choice-tile:has(:checked){border-color:#b51d2b;background:#fff1f2}
.choice-tile input{width:20px;min-height:20px;margin:0}
.exercise-art{position:relative;min-width:0;align-self:stretch}
.exercise-art .exercise-preview{height:100%;width:100%;box-sizing:border-box}
.exercise-markers{position:absolute;top:2px;right:2px;display:flex;gap:2px;z-index:2}
.exercise-marker{width:44px;height:44px;min-height:44px;box-sizing:border-box;padding:10px!important;border:1px solid #dce1e8!important;border-radius:8px!important;background:rgb(255 255 255 / .94)!important;color:#66717f!important;display:inline-flex;justify-content:center;align-items:center;box-shadow:0 1px 5px #0002}
.exercise-marker svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linejoin:round;stroke-linecap:round}
.exercise-marker.marker-favorite.is-marked{color:#b67a00!important}.exercise-marker.marker-favorite.is-marked svg{fill:#ffc638;stroke:#b67a00}
.exercise-marker.marker-planned.is-marked{color:#b51d2b!important}.exercise-marker.marker-planned.is-marked svg{fill:#b51d2b;stroke:#b51d2b}
.exercise-markers+.exercise-preview{padding-top:44px}
.exercise-quick-filters{margin:12px 0}
.team-switch-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:12px}
.team-switch-cards>label{grid-column:1/-1}.team-switch-card{min-height:60px;text-align:left;white-space:normal}.team-switch-card small{display:block}
.context-advanced{padding:12px}.context-advanced>.selectors{position:static!important;box-shadow:none!important}
.skill-tabs{margin:12px 0;gap:6px}.skill-tabs button{flex:1;white-space:normal}
.skill-fieldset .skill-edit-grid{display:block!important}.age-skill-item{border:1px solid #dce1e8;border-radius:10px;padding:12px;margin:10px 0;display:grid;grid-template-columns:minmax(0,1fr) 100px;gap:8px}
.age-skill-item>label{grid-column:1;align-self:center}.age-skill-item>.skill-criterion{grid-column:1;font-size:.9rem;margin:0}.age-skill-item>select{grid-column:2;grid-row:1/3;margin:0;align-self:center;min-width:0}
.age-skill-item>.skill-observation,.age-skill-item>small,.age-skill-item>p:not(.skill-criterion){grid-column:1/-1}.skill-observation summary{padding:10px;background:#f1f3f7;border-radius:8px;cursor:pointer}
.grade-choices{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}.grade-choices button{min-height:48px}.grade-choices button:first-child{grid-column:span 2}.grade-choices [aria-pressed=true]{outline:2px solid #b51d2b;outline-offset:1px}
.grade-desktop{display:flex;gap:4px;align-items:center}.grade-desktop select{width:74px;min-width:0;margin:0}.grade-desktop button{min-height:44px;padding:8px}
.grade-table .grade-cell{display:none}
@media(max-width:720px){
 .quick-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);padding:12px;border-radius:14px;margin:auto}
 .quick-dialog .ui-savebar{bottom:-12px;padding-bottom:max(12px,env(safe-area-inset-bottom))}
 .quick-dialog .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .quick-dialog .topline{flex-wrap:wrap}.quick-dialog .topline h3{margin:4px 0}
 .training-direct{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.training-direct button:last-child{grid-column:1/-1}
 .quick-dialog .training-goals{grid-template-columns:1fr}
 .training-entry button{font-size:.85rem}.team-switch-cards{grid-template-columns:1fr}
 .grade-table .grade-cell{display:block}.grade-desktop{display:none}
 .age-skill-item{grid-template-columns:minmax(0,1fr) 92px;padding:10px}
}
@media(max-height:480px){.quick-dialog{max-height:calc(100dvh - 12px);margin:6px auto}}
.quick-dialog [data-quick-dialog]>.topline:first-child{position:sticky;top:-12px;background:#fff;z-index:5;padding:8px 0}
.kader-automatic>.planning-panel>h2,.kader-automatic>.planning-panel>.eyebrow{display:none}
.exercise-art .exercise-preview{padding:0 0 8px;justify-content:flex-start}
.exercise-art .exercise-preview img{height:130px;width:100%;object-fit:contain}
.exercise-art .exercise-preview span{padding:0 6px}
.exercise-marker{position:relative;isolation:isolate;background:transparent!important;border:0!important;box-shadow:none;padding:12px!important}
.exercise-marker::before{content:"";position:absolute;inset:6px;border:1px solid #dce1e8;background:rgb(255 255 255 / .94);border-radius:7px;box-shadow:0 1px 4px #0002;z-index:-1}
.exercise-marker svg{width:20px;height:20px}
.exercise-quick-filters,.duration-shortcuts{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
.exercise-quick-filters>button,.duration-shortcuts>button{flex:1!important;width:auto!important;min-width:0!important;font-size:.85rem}
@media(max-width:720px){.quick-dialog .inline:not(.topline){display:flex;flex-wrap:wrap;gap:8px}.quick-dialog .inline>button{width:auto;flex:1;min-width:0}}
.exercise-quick-filters,.duration-shortcuts{flex-direction:row!important}
.exercise-advanced{margin:10px 0}.exercise-advanced>summary{padding:8px 0}
.context-selection{position:relative}.context-switch-panel{position:absolute;top:100%;left:0;z-index:80;width:min(480px,calc(100vw - 24px));max-height:65dvh;overflow:auto;background:#fff;border:1px solid #dce1e8;border-radius:10px;box-shadow:0 8px 28px #18223126}
.context-switch-panel .selectors{position:static!important;width:auto!important;left:auto!important}
.quick-dialog{padding-top:12px}.quick-dialog .topline{margin-bottom:12px}.quick-dialog .topline h2{margin:0;font-size:21px}

/* v21.0.103: equal event controls and one compact duration row. */
.calendar-editor input:not([type=checkbox]):not([type=radio]),.calendar-editor select{box-sizing:border-box;min-width:0;width:100%;height:44px;min-height:44px;margin-top:0}
.calendar-editor .grid>div{min-width:0;display:flex;flex-direction:column}
.calendar-editor input[type=date]{appearance:none;-webkit-appearance:none;text-align:left;padding:10px 12px}
.calendar-editor input[type=date]::-webkit-date-and-time-value{text-align:left}
.calendar-editor .duration-shortcuts{display:grid!important;grid-template-columns:1fr 1fr minmax(70px,1.15fr);align-items:stretch;gap:6px!important}
.calendar-editor .duration-shortcuts>button,.calendar-editor .duration-shortcuts>input{margin:0!important;min-height:44px;height:44px;padding:6px!important;line-height:1.15;min-width:0;width:100%!important}
.calendar-editor .duration-shortcuts>button br{display:none}
.training-entry{grid-template-columns:repeat(2,minmax(0,1fr))}
#unsavedFieldHint{scroll-margin-block:70px}

/* v21.0.105: compact page actions and accessible multi-player selection. */
.compact-page-heading{margin:12px 0 18px}
.compact-page-heading>.eyebrow{display:block;margin-bottom:4px}
.compact-heading-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
.compact-heading-row h2{margin:0;line-height:1.2;overflow-wrap:anywhere}
.compact-heading-row>button{width:auto;min-height:44px;margin:0;padding:10px 14px;font-size:14px;white-space:nowrap}
.compact-page-heading>p{margin:10px 0 0}
.action-short{display:none}
.homework-player-picker{min-width:0;border:0;padding:0;margin:14px 0}
.homework-player-picker legend{padding:0 0 10px;font-weight:700}
.homework-player-picker legend small{font-size:12px;font-weight:500;color:var(--muted);margin-left:8px}
.homework-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.homework-player-choice{position:relative;display:flex;align-items:center;gap:7px;min-width:0;min-height:44px;margin:0;padding:10px;border:1px solid #d9dfe7;border-radius:9px;background:#eef1f5;color:var(--ink);cursor:pointer;font-size:14px;font-weight:650;line-height:1.25;text-align:left}
.homework-player-choice>input{position:absolute;width:1px!important;height:1px!important;min-height:0!important;padding:0!important;margin:0!important;opacity:0}
.homework-player-choice>span:last-child{min-width:0;overflow-wrap:anywhere}
.homework-player-check{visibility:hidden;flex:0 0 15px;font-size:16px;line-height:1}
.homework-player-choice.is-selected{background:#e4f4e9;border-color:#218344;color:#176536}
.homework-player-choice.is-selected .homework-player-check{visibility:visible}
.homework-player-choice:focus-within{outline:3px solid #477da7;outline-offset:2px}
.homework-player-choice:has(input:disabled){cursor:default;opacity:.75}
@media(max-width:600px){.compact-heading-row{gap:8px}.compact-heading-row h2{font-size:clamp(18px,4.8vw,24px)}.compact-heading-row>button{padding:9px 11px;font-size:13px}.compact-heading-row .action-full{display:none}.compact-heading-row .action-short{display:inline}.compact-page-heading>p{font-size:14px;line-height:1.4}.homework-player-choice{padding:9px 8px;font-size:13px}}
@media(max-width:600px){nav[aria-label="Mannschaft"]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}nav[aria-label="Mannschaft"]>button{min-width:0;width:100%;padding:12px 8px;font-size:13px;white-space:normal}}
.homework-assign-heading{display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center!important;gap:10px!important}
.homework-assign-heading h3{margin:0!important;text-align:left;line-height:1.25;overflow-wrap:anywhere}
.homework-assign-heading>button{width:auto!important;min-height:44px;margin:0!important;padding:9px 12px;font-size:13px}
@media(max-width:600px){.homework-assign-heading h3{font-size:18px}}
/* v21.0.106: compact calendar controls and explicit, cancellable filter sheet. */
.calendar-heading{margin-bottom:14px}.calendar-heading .compact-heading-row h2{font-size:clamp(24px,3vw,32px)}.calendar-heading #newEvent{white-space:nowrap}
.calendar-toolbar.calendar-toolbar-compact{gap:12px;margin:0 0 10px;align-items:center}.calendar-period{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;min-width:0;flex:1;max-width:520px}.calendar-period>div{text-align:center;min-width:0}.calendar-period b{display:block;font-size:15px}.calendar-period small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.calendar-period button{min-width:44px;height:44px;padding:8px;margin:0}.calendar-mode{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;min-width:245px}.calendar-mode button{min-height:44px;padding:8px 12px;margin:0;font-size:13px}
.calendar-filter-bar{display:flex;align-items:stretch;gap:8px;margin-bottom:10px}.calendar-filter-bar select{min-width:0;max-width:440px;flex:1;width:0;margin:0;min-height:44px;font-size:14px}.calendar-filter-bar button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;margin:0;padding:8px 12px;white-space:nowrap;font-size:14px}.calendar-filter-bar .app-icon{width:19px;height:19px;flex:0 0 19px}.calendar-filter-count{border-radius:20px;background:var(--red);color:#fff;min-width:20px;text-align:center;padding:1px 4px;font-size:11px}.calendar-filter-summary{font-size:12px;color:var(--muted);margin:0 0 12px;overflow-wrap:anywhere}.calendar-selection-summary{display:block;max-width:100%;white-space:normal;overflow-wrap:anywhere;text-align:left;font-size:12px;min-height:36px;padding:7px 10px;margin:0 0 10px}
#trainingGuestInbox{padding:0;margin:0 0 14px;border-radius:10px}#trainingGuestInbox>summary{display:flex;align-items:center;gap:8px;min-height:44px;font-size:13px;padding:10px 12px;cursor:pointer}#trainingGuestInbox>summary::before{content:'▸';color:var(--muted)}#trainingGuestInbox[open]>summary::before{content:'▾'}#trainingGuestInbox>summary::marker{content:''}#trainingGuestInbox>summary::-webkit-details-marker{display:none}#trainingGuestInbox[open]{padding:0 12px 12px}#trainingGuestInbox[open]>summary{margin:0 -12px}
.agenda-day-heading .calendar-add-date{width:36px;min-width:36px;min-height:36px;padding:4px;font-size:21px;line-height:1}.agenda-day-heading .calendar-date-button{min-height:36px}
dialog.calendar-filter-dialog{width:min(580px,calc(100vw - 24px));padding:0;max-height:calc(100dvh - 24px);margin:auto;border-radius:16px;overflow:hidden}.calendar-filter-dialog form{margin:0;display:flex;flex-direction:column;max-height:calc(100dvh - 26px)}.calendar-filter-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 18px;border-bottom:1px solid var(--line);flex-shrink:0}.calendar-filter-head h3{margin:0;font-size:20px}.calendar-filter-head button{width:44px;min-width:44px;height:44px;padding:0;font-size:25px;margin:0}.calendar-filter-body{padding:14px 18px;overflow:auto;overscroll-behavior:contain;min-height:0}.calendar-filter-body .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.calendar-filter-body label{min-width:0;margin:0 0 10px;font-size:13px}.calendar-filter-body select{margin:5px 0 0;width:100%;min-width:0;min-height:44px;font-size:14px}.calendar-filter-body fieldset{border:1px solid var(--line);border-radius:10px;padding:10px;margin:0 0 14px;min-width:0}.calendar-filter-body fieldset[hidden]{display:none}.calendar-filter-body legend{font-size:13px;font-weight:650}.calendar-filter-body .checkline{min-height:44px;overflow-wrap:anywhere}.calendar-filter-body p{font-size:12px;margin:0;line-height:1.5}.calendar-filter-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line);flex-shrink:0}.calendar-filter-actions button{margin:0;min-height:44px;padding:10px;font-size:14px}body:has(.calendar-filter-dialog:modal){overflow:hidden}
@media(max-width:700px){.calendar-toolbar.calendar-toolbar-compact{flex-direction:column;align-items:stretch;gap:8px}.calendar-period{max-width:none;flex:auto}.calendar-mode{min-width:0}.calendar-filter-bar select{font-size:13px}.calendar-heading{margin-bottom:12px}dialog.calendar-filter-dialog{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);margin:auto auto 0;border-radius:16px 16px 0 0}.calendar-filter-dialog form{max-height:calc(100dvh - 14px)}.calendar-filter-body,.calendar-filter-head{padding:12px 14px}.calendar-filter-actions{padding-left:14px;padding-right:14px}.calendar-filter-body .grid{gap:8px}.calendar-filter-body select{font-size:13px}}
@media print{.calendar-filter-bar,.calendar-filter-dialog,.calendar-selection-summary{display:none!important}}
/* v21.0.107: shared compact filters; selection fields remain direct. */
.filter-sr-only,.grade-kind-original,.homework-filter-original{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.grade-kind-original select,.homework-filter-original select{visibility:hidden}
.compact-filter-bar{display:flex;gap:8px;align-items:center;margin:0 0 12px;min-width:0}.compact-filter-bar input{min-width:0;flex:1;width:0;margin:0;min-height:44px}.filter-open{display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;min-height:44px;padding:8px 12px;margin:0;font-size:14px}.filter-open .app-icon{width:19px;height:19px;flex:0 0 19px}.filter-applied-summary{flex:1;font-size:13px;overflow-wrap:anywhere;min-width:0}.stats-filter-container{margin:12px 0}
dialog.filter-sheet{width:min(560px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:0;overflow:hidden;border-radius:16px}.filter-sheet-form{display:flex;flex-direction:column;margin:0;max-height:calc(100dvh - 26px)}.filter-sheet-head{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);flex-shrink:0}.filter-sheet-head h3{font-size:20px;margin:0}.filter-sheet-head button{margin:0;min-width:44px;width:44px;height:44px;padding:0;font-size:25px}.filter-sheet-body{padding:14px 18px;overflow:auto;overscroll-behavior:contain;min-height:0}.filter-sheet-body label{display:block;min-width:0;font-size:13px;margin:0 0 12px}.filter-sheet-body input,.filter-sheet-body select{width:100%;min-width:0;min-height:44px;font-size:14px;margin:5px 0 0}.filter-sheet-body .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.filter-sheet-body p{font-size:12px;line-height:1.5}.filter-sheet-body .inline{display:flex;gap:8px;flex-wrap:wrap}.filter-sheet-body .inline button{min-width:0;width:auto;min-height:44px;font-size:13px;margin:0}.filter-sheet-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex-shrink:0;padding:12px 18px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}.filter-sheet-actions button{margin:0;min-height:44px;font-size:14px;padding:10px}body:has(dialog.filter-sheet:modal){overflow:hidden}
.filter-sheet-form.activity-filters{display:flex;grid-template-columns:none}.activity-panel>.muted:first-of-type{font-size:12px;line-height:1.5;margin:8px 0 12px}.exercise-quick-filters{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px!important;margin:0 0 12px!important}.exercise-quick-filters button{font-size:13px!important;width:100%!important;min-width:0;min-height:44px;margin:0!important;padding:8px 6px!important}.stats-controls{display:block!important}.stats-controls label{margin:0}.stats-controls input{min-height:44px}.stats-area-buttons{gap:6px}.stats-area-buttons button{min-height:44px;font-size:13px;padding:8px 10px}
.member-direct-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(110px,.55fr);gap:8px;margin:12px 0}.member-direct-filters label{min-width:0;font-size:12px;margin:0}.member-direct-filters label:first-child{grid-column:2;grid-row:1}.member-direct-filters label:last-child{grid-column:1;grid-row:1}.member-direct-filters input,.member-direct-filters select{min-width:0;width:100%;min-height:44px;font-size:13px;margin:5px 0 0}
.grade-filters{display:grid!important;grid-template-columns:minmax(140px,.65fr) minmax(0,1fr)!important;gap:8px;margin-bottom:8px}.grade-filters label{min-width:0;font-size:12px;margin:0}.grade-filters label:last-child{grid-column:auto!important}.grade-filters input{min-height:44px;font-size:14px;margin:5px 0 0;width:100%;min-width:0}.grade-kind-buttons,.homework-status-buttons{display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));margin:0 0 14px}.grade-kind-buttons button,.homework-status-buttons button{margin:0;min-width:0;min-height:44px;padding:8px;font-size:13px}.homework-status-buttons{grid-template-columns:repeat(4,minmax(0,1fr))}.homework-status-buttons span{display:inline-block;font-size:11px;border-radius:12px;background:#ffffff55;padding:2px 5px}.homework-panel>.topline{align-items:center;gap:8px}.homework-panel>.topline h2{font-size:24px}.homework-panel>.topline .inline{gap:6px}.homework-panel>.topline .inline button{font-size:12px;min-height:44px;padding:8px;margin:0}
.resource-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px!important;margin:10px 0}.resource-toolbar>button{min-height:44px;min-width:44px;margin:0;padding:8px;font-size:13px}.resource-toolbar>b{font-size:13px;min-width:0;text-align:center;flex:1}.resource-modes{display:flex;gap:6px}.resource-modes button{min-height:44px;font-size:13px;margin:0;padding:8px 12px}#pitchFilter{min-height:44px;margin:4px 0 12px;font-size:14px}label[for=pitchFilter]{font-size:12px;margin:0}
@media(max-width:700px){dialog.filter-sheet{width:calc(100vw - 12px);max-height:calc(100dvh - 12px);margin:auto auto 0;border-radius:16px 16px 0 0}.filter-sheet-form{max-height:calc(100dvh - 14px)}.filter-sheet-head,.filter-sheet-body{padding:12px 14px}.filter-sheet-actions{padding-left:14px;padding-right:14px}.filter-sheet-body .grid{grid-template-columns:1fr}.grade-filters{grid-template-columns:1fr!important}.grade-filters label:last-child{grid-column:1!important}.homework-status-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.homework-panel>.topline{flex-wrap:wrap}.homework-panel>.topline>div:last-child{display:flex;flex-wrap:wrap}.resource-toolbar>.resource-modes{flex:0 0 100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.resource-modes button{width:100%}.resource-toolbar>b{font-size:12px}.resource-toolbar #pitchToday,.resource-toolbar #roomsToday{min-width:54px}.member-direct-filters{grid-template-columns:minmax(0,1fr) 110px}}
@media print{.compact-filter-bar,.filter-sheet,.grade-kind-buttons,.homework-status-buttons{display:none!important}}
.stats-area-buttons{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.stats-area-buttons button{min-width:0;white-space:normal;overflow-wrap:anywhere}
@media(max-width:600px){.homework-panel>.topline .action-full{display:none}.homework-panel>.topline .action-short{display:inline}.homework-panel>.topline{flex-wrap:nowrap}.homework-panel>.topline>div{min-width:0}.homework-panel>.topline h2{font-size:clamp(17px,4.8vw,22px)}.homework-panel>.topline .app-icon{width:22px;height:22px;flex-basis:22px}.homework-panel>.topline button{white-space:nowrap}.stats-area-buttons button{padding:8px 4px;font-size:12px}}
@media(max-width:360px){.stats-area-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}}
.filter-sheet-form.activity-filters{align-items:stretch;gap:0}.compact-filter-summary{font-size:12px;line-height:1.4;color:var(--muted);margin:0 0 12px;overflow-wrap:anywhere}.filter-context-note{font-size:12px;margin:0 0 10px}.filter-context-note summary{cursor:pointer;min-height:32px;display:flex;align-items:center}.filter-context-note summary:before{content:'▸';margin-right:6px}.filter-context-note[open] summary:before{content:'▾'}.filter-context-note p{font-size:12px}
.grade-month-control>span{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:6px;align-items:stretch;margin-top:5px}.grade-month-control>span input{margin:0;height:44px;min-width:0;padding:8px}.grade-month-control button{margin:0;height:44px;padding:8px;min-width:0}
.homework-panel:not(.homework-dashboard)>.topline{display:flex;flex-direction:row!important;justify-content:space-between;text-align:left}.homework-panel:not(.homework-dashboard)>.topline h2{margin:5px 0}.homework-panel:not(.homework-dashboard)>.topline>.inline{flex-shrink:0}.homework-panel:not(.homework-dashboard)>.topline .eyebrow{font-size:10px;letter-spacing:1px}
/* 109: readable, compact subordinate navigation. Main navigation stays unchanged. */
.text-tabs-shell{position:relative;display:flex;align-items:center;gap:4px;min-width:0;margin:12px 0 20px;max-width:100%}
.text-tabs-shell .text-tabs{display:flex!important;flex:1;min-width:0;overflow-x:auto;flex-wrap:nowrap!important;gap:18px!important;margin:0!important;padding:0 2px!important;border-bottom:1px solid #d5dbe3;scrollbar-width:thin;background:transparent!important}
.text-tabs-shell .text-tabs>button{flex:0 0 auto!important;width:auto!important;min-width:0!important;min-height:48px!important;padding:10px 2px!important;border:0!important;border-bottom:3px solid transparent!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:#465160!important;font-size:17px!important;line-height:1.35!important;font-weight:600!important;white-space:nowrap;text-align:center}
.text-tabs-shell .text-tabs>button.is-active{color:#ae1f2a!important;border-bottom-color:#b51f2b!important;font-weight:750!important}
.text-tabs-shell .text-tabs>button:focus-visible{outline:3px solid #3978b5!important;outline-offset:-3px}
.tab-scroll.secondary{padding:0!important;min-width:36px!important;width:36px!important;height:48px;font-size:26px;flex:0 0 36px;border:0;background:transparent}
.tab-scroll[hidden]{display:none!important}
.subpage-heading{display:flex;align-items:center;gap:10px;margin:0 0 14px;min-width:0}
.subpage-heading h1,.subpage-heading h2{margin:0;flex:1;min-width:0;overflow-wrap:anywhere}
.back-icon.secondary{height:44px!important;width:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;display:inline-flex;align-items:center;justify-content:center;font-size:24px!important;flex:0 0 44px;border-radius:10px}
.profile-card .profile-edit{padding:8px 12px;min-height:44px;font-size:16px;white-space:nowrap}
.profile-card .compact-profile-meta{gap:12px;margin:0}.compact-profile-meta .avatar{width:52px;height:52px;flex:0 0 52px}.compact-profile-meta p{margin:4px 0 0}.compact-profile-meta small{font-size:14px}
.mini-skills-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}.mini-skills h3,.profile-contacts h3{margin:0 0 8px}
.mini-skill-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:10px 0}
.mini-skill.secondary{padding:10px 6px!important;display:grid;grid-template-columns:20px 1fr;align-items:center;gap:4px;font-size:15px;min-width:0;background:#f5f6f8;color:#394452;border:1px solid #dde2e9}.mini-skill svg{width:18px;height:18px}.mini-skill b{grid-column:1/-1;font-size:24px;color:#242b33}.mini-skills>small{font-size:13px;color:#657080}
.profile-contact-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;padding:12px 0;border-bottom:1px solid #e1e5eb}.profile-contact-row small{display:block}.contact-phone{min-height:44px;display:flex;align-items:center;color:#9d1c27;font-weight:650}.profile-contacts>small{display:block;margin-top:10px;color:#66717e}
.gallery-navigation{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:6px 0 12px}.gallery-navigation button{width:48px;height:44px;padding:4px}.exercise-large-image{touch-action:pan-y;user-select:none}.exercise-image-toolbar h2{font-size:22px}.exercise-image-dialog{overscroll-behavior:contain}
.context-help{display:inline-block;position:relative;vertical-align:middle;margin:0 4px}.context-help>summary{display:flex;align-items:center;justify-content:center;width:44px;height:44px;list-style:none;font-size:21px;color:#596675;border:0!important;background:transparent!important;padding:0!important;cursor:pointer}.context-help>summary::-webkit-details-marker{display:none}.context-help-text{position:absolute;z-index:50;bottom:48px;left:0;width:min(290px,75vw);padding:14px;background:#fff;border:1px solid #cbd3de;border-radius:10px;box-shadow:0 5px 18px #0002;font-size:16px;color:#283341}.context-help-text p{margin:8px 0 0;line-height:1.5}.contact-settings .ui-savebar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between}.contact-settings #contactDraftStatus{font-size:14px;color:#637080}
@media(max-width:480px){.player-profile-heading{gap:7px}.player-profile-heading h1{font-size:25px}.profile-card .profile-edit{font-size:15px;padding:8px}.mini-skill.secondary{font-size:14px;grid-template-columns:1fr}.mini-skill svg{justify-self:center}.text-tabs-shell .text-tabs{gap:17px!important}.context-help-text{position:fixed;left:20px;right:20px;bottom:100px;width:auto}}
.context-help-text>button{font-size:14px;margin-top:10px;min-height:44px;padding:8px 12px}
/* 110: direct content within selected tabs, compact personal responses. */
.profile-linked-accounts>h2.sr-only,.skills-main>h2.sr-only,.photo-archive-content>h2.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
#playerPanel-homework .homework-panel>.topline:has(.inline:empty){display:none}
#playerPanel-homework .homework-panel>.topline{margin-bottom:8px}
.homework-panel .text-tabs-shell{margin-top:0}
.homework-status-buttons span{margin-left:5px;font-size:13px}
.photo-archive-content>p.muted{font-size:14px;margin-top:0}
.stats-context{margin:0 0 6px;color:#5f6a79}
.personal-replies{border-top:0!important;margin-top:12px!important;padding-top:0!important}
.personal-row{position:relative;container-type:inline-size;padding:12px 0!important}
.personal-person{margin-bottom:8px!important;gap:6px!important}
.personal-person small{flex:0 1 auto!important}
.personal-controls{display:grid;grid-template-columns:minmax(88px,1fr) minmax(88px,1fr) 44px;gap:8px;align-items:start}
.personal-controls .personal-choice{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin:0!important;font-size:14px}
.personal-controls .personal-choice>span{font-size:14px;line-height:20px;white-space:nowrap}
.personal-controls .personal-choice>div{display:flex;gap:0}
.personal-controls .personal-choice button{width:50%;min-width:0!important;min-height:44px!important;padding:6px 2px!important;font-size:15px!important;border-radius:0!important;white-space:nowrap}
.personal-controls .personal-choice button:first-child{border-radius:9px 0 0 9px!important}
.personal-controls .personal-choice button:last-child{border-radius:0 9px 9px 0!important}
.personal-controls .personal-choice>small{font-size:12px;line-height:17px}
.personal-note-toggle.secondary{position:relative;width:44px!important;min-width:44px!important;min-height:44px!important;height:44px;padding:10px!important;display:flex;align-items:center;justify-content:center;margin-top:24px}
.personal-note-toggle .app-icon{width:22px;height:22px}
.note-present{position:absolute;top:3px;right:3px;width:7px;height:7px;border-radius:50%;background:#b51f2b}
.personal-kader-status{padding-top:2px;min-width:0;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.personal-kader-status b,.personal-kader-status small{display:block}.personal-kader-status b{font-size:13px;color:#5c6674}.personal-kader-status small{margin-top:3px;font-size:12px;color:#566979}
.personal-note-preview{margin:8px 0 0!important;padding:7px 10px;background:#edf0f4;border-radius:7px;font-size:14px!important;line-height:1.45;overflow-wrap:anywhere;white-space:pre-wrap}
.personal-note-editor{margin-top:8px}.personal-note-editor[hidden]{display:none!important}.personal-note-editor label{font-size:14px}.personal-note-editor input{min-height:44px}.personal-note-editor .inline{gap:8px;margin-top:8px}
@container(max-width:247px){.personal-controls{grid-template-columns:minmax(88px,1fr) minmax(88px,1fr)}.personal-note-toggle.secondary{position:absolute;top:0;right:0;margin:0}.personal-person{padding-right:50px}.personal-controls-space{display:none}}
@keyframes today-pulse{0%,100%{box-shadow:0 0 0 0 transparent}35%{box-shadow:0 0 0 4px #b51f2b55;background:#fff1f3}}
.today-jump{animation:today-pulse 2s ease-out;scroll-margin-top:100px}
@media(prefers-reduced-motion:reduce){.today-jump{animation:none;outline:3px solid #b51f2b}}
#playerPanel-homework .homework-panel>.topline{justify-content:flex-end}

/* 113: compact skill tabs without scrolling; aligned score and date columns. */
#skillsForm .skill-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px!important;width:100%;min-width:0;margin:12px 0 16px;padding:0;border-bottom:1px solid #d5dbe3}
#skillsForm .skill-tabs>button{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;width:100%!important;min-width:0!important;min-height:52px;padding:7px 0;border:0;border-bottom:3px solid transparent;border-radius:0;background:transparent;box-shadow:none;color:#465160;font-size:14px;font-weight:600;line-height:1.4;text-align:center}
#skillsForm .skill-tabs>button>span{display:block;white-space:nowrap}
#skillsForm .skill-tabs>button[aria-selected="true"]{color:#ae1f2a;border-bottom-color:#b51f2b;font-weight:700}
#skillsForm .skill-tabs>button:focus-visible{outline:3px solid #3978b5;outline-offset:-3px}
.age-skill-basis{margin:0 0 12px;font-size:13px;color:#596675}
.age-skill-basis>summary{cursor:pointer;min-height:44px;display:flex;align-items:center;gap:6px;font-weight:600}
.age-skill-basis>summary:before{content:'▸'}
.age-skill-basis[open]>summary:before{content:'▾'}
.age-skill-basis>summary::-webkit-details-marker{display:none}
.age-skill-basis>p{margin:4px 0 12px;line-height:1.5}
.evaluations .skills-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.evaluations .skills-grid>div{display:grid;grid-template-columns:minmax(0,1fr) 108px 80px;align-items:center;gap:8px;min-width:0;padding:10px}
.evaluations .skills-grid>div>span{min-width:0;overflow-wrap:anywhere}
.evaluations .skills-grid>div>b{grid-column:2;text-align:center;font-variant-numeric:tabular-nums;white-space:normal;font-size:12px}
.evaluations .skills-grid>div>.skill-assessed-date{grid-column:3;text-align:right;white-space:nowrap;font-size:11px}
@media(max-width:700px){
 .evaluations .skills-grid{grid-template-columns:minmax(0,1fr)}
 .evaluations .skills-grid>div{grid-template-columns:minmax(0,1fr) 108px;gap:4px 8px}
 .evaluations .skills-grid>div>.skill-assessed-date{grid-column:2;text-align:center}
 .evaluations .skills-grid>div>.skill-assessed-date:empty{display:none}
}
@media(max-width:480px){
 #skillsForm{padding:12px}
 #skillsForm .skill-tabs>button{font-size:13px;min-height:52px}
 #skillsForm>h3{font-size:16px}
}

#skillsForm .age-skill-item{grid-template-columns:minmax(0,1fr) 140px;gap:8px}
#skillsForm .age-skill-item>select{grid-row:1;grid-column:2;width:100%;font-size:16px;padding:8px;min-height:44px}
#skillsForm .age-skill-item>.skill-criterion{grid-column:1/-1;grid-row:2;min-height:0}
@media(max-width:480px){#skillsForm .skill-fieldset{padding:8px}#skillsForm .age-skill-item{padding:8px;grid-template-columns:minmax(0,1fr) 132px}}

/* Training preparation: one step at a time, readable on narrow phones. */
.training-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:16px 0}
.training-steps button{min-width:0;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 5px;font-size:13px;line-height:1.25}
.training-steps button>small{font-size:12px;border:1px solid currentColor;border-radius:50%;width:23px;height:23px;display:grid;place-items:center;flex-shrink:0}
.training-steps button span small{display:block;font-size:10px;font-weight:400}
.training-panel [hidden]{display:none!important}
.training-performing .training-steps,.training-performing #trainingConfig,.training-performing .training-station-actions,.training-performing #addTrainingExercise,.training-performing #saveTrainingPlan,.training-performing .training-result>.muted,.training-performing .training-exercise-editor{display:none!important}
@media(max-width:520px){.training-steps button{flex-direction:column;font-size:11px;gap:5px;padding:9px 2px}.training-panel .topline h2{font-size:21px}.training-panel .training-goals{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.training-panel .training-goals label{font-size:13px}}
@media print{.training-steps{display:none!important}}

.training-workflow-fields{border:0;padding:0;margin:0;min-width:0}

/* Football Combine — compact station cards and touch-friendly timing. */
.combine-panel h2{letter-spacing:.04em}.combine-panel fieldset{border:0;padding:0;margin:0;min-width:0}.combine-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.combine-steps button{padding:10px 5px;font-size:13px;min-width:0}.combine-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(230px,1fr);gap:22px}.combine-layout>section,.combine-layout>aside{min-width:0}.combine-layout>aside{background:#f3f6fa;border:1px solid #e1e7ef;border-radius:12px;padding:16px}.combine-station-card{border-bottom:1px solid #e1e7ef;padding:12px 0}.combine-station-card>summary{display:flex;gap:12px;align-items:center}.combine-station-card>summary>span:nth-child(2){flex:1}.combine-station-card b,.combine-station-card small{display:block}.combine-station-card small{font-size:12px;color:#5c6b80}.combine-station-number{font-size:23px;color:#193c73;font-variant-numeric:tabular-nums}.combine-diagram{color:#193c73;background:#edf3fc;padding:12px;border-radius:10px;margin:15px 0}.combine-diagram svg{display:block;width:100%;height:125px;font-size:12px}.combine-stopwatch{text-align:center;font-size:60px;line-height:1.2;font-variant-numeric:tabular-nums;margin:24px 0 15px;font-weight:600}.combine-stopwatch small{font-size:20px}.combine-timer-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:10px 0 20px}.combine-timer-actions button{min-height:60px;font-size:18px}.combine-table-wrap{max-width:100%;overflow-x:auto}.combine-table{border-collapse:collapse;width:100%;font-size:13px}.combine-table td,.combine-table th{padding:10px 6px;border-bottom:1px solid #e1e7ef;text-align:left}.combine-table th{font-weight:600}.combine-table td:last-child{font-variant-numeric:tabular-nums}.combine-table small{display:block;font-size:12px;color:#5c6b80}.combine-table button{padding:7px;min-width:44px;font-size:12px}.combine-selected{background:#e8f0fc}.combine-comparison{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:15px 0}.combine-comparison>div{background:#edf3fc;padding:16px;border-radius:10px}.combine-comparison b,.combine-comparison small{display:block}.combine-comparison b{font-size:26px}.combine-panel [hidden]{display:none!important}
@media(max-width:700px){.combine-layout{grid-template-columns:1fr}.combine-steps button{font-size:12px}.combine-stopwatch{font-size:52px}.combine-panel h2{font-size:22px}.combine-layout>aside{padding:12px}.combine-comparison{grid-template-columns:1fr}}

/* Four direct event types, two columns on phones. */
.event-kind-buttons:has(button:nth-child(4)){grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:600px){.event-kind-buttons:has(button:nth-child(4)){grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Readable annotated Combine setups; diagram size follows its own viewBox. */
.combine-diagram svg{height:auto;max-height:none;font-size:16px;overflow:visible}
.combine-sketch-label{fill:currentColor;font-size:16px;font-weight:500}
.combine-sketch-cone{fill:#bd7b19;stroke:#82500b;stroke-width:1}
.combine-sketch-route{fill:none;stroke:currentColor;stroke-width:2;stroke-dasharray:5 4}
.combine-sketch-line,.combine-sketch-arrow{fill:none;stroke:currentColor;stroke-width:1.8}
.combine-sketch-dimension{fill:none;stroke:currentColor;stroke-width:1;opacity:.7}
.combine-sketch-zone{fill:#dbe9fa;stroke:currentColor;stroke-width:1.8}
.combine-sketch-person{fill:#193c73;stroke:#193c73;stroke-width:1.8}
.combine-sketch-person.combine-sketch-trainer{fill:#fff}
.combine-sketch-person-letter{fill:#fff;font-size:14px;font-weight:600}
.combine-sketch-trainer+.combine-sketch-person-letter{fill:#193c73}
.combine-sketch-legend{font-size:12px;line-height:1.5;margin:8px 0 0;color:#435976}
.combine-test-instructions h4{font-size:15px;margin:15px 0 5px}
.combine-test-instructions ol{padding-left:22px;margin:6px 0 14px}
.combine-test-instructions li{margin:7px 0}
.combine-layout:has(.combine-participants){grid-template-columns:minmax(0,1fr) minmax(340px,1fr)}
.combine-participants>.inline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.combine-participants>.inline button{min-width:0;font-size:12px;padding:10px 6px}
.combine-participants .combine-participant-table{min-width:0;width:100%;table-layout:fixed;font-size:13px}
.combine-participant-table th,.combine-participant-table td{padding:10px 4px;vertical-align:top}
.combine-participant-table th:first-child{width:35%;overflow-wrap:anywhere}
.combine-participant-table th:nth-child(2){width:38%}
.combine-participant-table th:last-child{width:27%}
.combine-participant-table th small{display:block;color:#687383;font-size:11px;font-weight:400;margin-top:4px}
.combine-participant-table .matrix-details summary{font-size:12px}
.combine-participant-table .matrix-details p{overflow-wrap:anywhere;font-size:12px}
.combine-participant-table .attendance-choice span{min-height:44px}
.combine-shots{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;margin:12px 0}
.combine-shots span{text-align:center;padding:8px 0;border-radius:5px;font-size:12px;font-weight:700}
.combine-shots .hit{background:#e1efe4;color:#28633d}.combine-shots .miss{background:#f8e7e8;color:#b51c2b}.combine-shots .pending{background:#eef0f4;color:#687383}
@media(max-width:850px){.combine-layout:has(.combine-participants){grid-template-columns:minmax(0,1fr)}}
