.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.authenticated{min-height:100vh;background:var(--paper)}
.app-header{position:sticky;z-index:20;top:0;display:grid;grid-template-columns:auto auto minmax(260px,1fr) auto auto;align-items:center;gap:24px;min-height:76px;padding:12px clamp(20px,4vw,64px);border-bottom:1px solid var(--line);background:var(--box-header-bg,#fffffff2);color:var(--box-header-fg,var(--ink));backdrop-filter:blur(14px)}
.app-header[style] .app-logo,.app-header[style] .app-navigation a,.app-header[style] .header-context,.app-header[style] .box-switcher label{color:var(--box-header-fg)}.app-header[style] .app-logo span{background:#fff;color:var(--box-header-bg)}.app-header[style] .user-avatar{background:#fff;color:var(--box-header-bg)}
.app-logo{display:flex;align-items:center;gap:10px;color:var(--forest);text-decoration:none;font-size:13px;letter-spacing:.14em}.app-logo span{display:grid;width:36px;height:36px;place-items:center;border-radius:9px;background:var(--accent);font-size:19px}.app-navigation a{color:var(--muted);text-decoration:none;font-size:14px}.performance-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:0}.performance-search .exercise-combobox{min-width:0}.performance-search input{width:100%;min-height:44px;background:var(--paper)}.performance-search button{min-height:44px;padding:0 16px}.performance-search .exercise-options{z-index:40}.user-avatar{display:grid;width:44px;height:44px;place-items:center;border-radius:50%;background:var(--forest);color:white;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.04em}.profile-menu{position:relative;grid-column:-2;justify-self:end}.profile-menu>summary{list-style:none;cursor:pointer}.profile-menu>summary::-webkit-details-marker{display:none}.profile-menu-popup{position:absolute;z-index:30;top:calc(100% + 9px);right:0;display:grid;min-width:150px;padding:7px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 16px 40px #173b2c24;opacity:0;visibility:hidden;transform:translateY(-5px);pointer-events:none;transition:opacity .15s,transform .15s,visibility .15s}.profile-menu-popup::before{position:absolute;right:0;bottom:100%;width:100%;height:10px;content:''}.profile-menu-popup a{padding:10px 12px;border-radius:8px;color:var(--ink);text-decoration:none;font-size:14px;font-weight:700}.profile-menu-popup a:hover,.profile-menu-popup a:focus{background:#eef3ef}.profile-menu:hover .profile-menu-popup,.profile-menu:focus-within .profile-menu-popup,.profile-menu[open] .profile-menu-popup{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.app-main{width:min(100% - 32px,1120px);margin:0 auto;padding:clamp(38px,6vw,76px) 0 70px}.app-main.app-wide{width:min(100% - 32px,1720px);padding-top:32px}.app-main h1{margin:7px 0 10px;font-size:clamp(34px,5vw,62px);line-height:1.03;letter-spacing:-.045em}.app-main h2{letter-spacing:-.025em}.app-notice{max-width:780px;margin:0 auto 24px}.muted{color:var(--muted)}
.welcome-page{max-width:980px;margin:0 auto}.welcome-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:54px 0 18px}.welcome-heading h2{margin:6px 0 0}.latest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.primary-action{width:min(100%,320px);margin-top:28px}
.performance-display{display:flex;color:var(--ink);text-decoration:none}.performance-card{min-height:150px;flex-direction:column;justify-content:center;gap:8px;padding:24px;border:1px solid var(--line);border-radius:16px;background:white;box-shadow:0 10px 30px #173b2c0a}.performance-card strong{font-size:19px}.performance-card span{color:var(--forest);font-size:18px;font-weight:750}.performance-compact{display:grid;gap:2px;padding:8px;border-radius:8px;background:#f7f9f6}.performance-compact strong{overflow:hidden;font-size:12px;line-height:1.25;text-overflow:ellipsis}.performance-compact span{overflow:hidden;color:var(--muted);font-size:11px;line-height:1.3;text-overflow:ellipsis}.performance-history{display:grid;gap:3px;flex:1;padding:10px 12px;border-radius:9px;background:#f7f9f6}.performance-history strong{font-size:14px}.performance-history span{color:var(--muted);font-size:13px}
.month-navigation{display:grid;grid-template-columns:50px minmax(220px,auto) 50px;align-items:center;justify-content:center;gap:20px;margin-bottom:25px;text-align:center}.month-navigation h1{margin:2px 0;font-size:clamp(30px,4vw,48px)}.month-navigation>a{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--line);border-radius:50%;background:white;text-decoration:none;font-size:30px}.month-empty{margin:0 0 20px}.calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line);background:white}.weekday{padding:12px 10px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase}.calendar-day{min-width:0;min-height:clamp(145px,17vh,245px);max-height:290px;padding:9px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);overflow:auto;color:inherit;text-decoration:none;transition:background .15s,box-shadow .15s}.calendar-day:hover,.calendar-day:focus{position:relative;z-index:1;background:#f9fbf7;box-shadow:inset 0 0 0 2px #789247}.calendar-day-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:12px;font-weight:800}.calendar-day-heading span{opacity:0;color:var(--muted);font-size:10px;font-weight:700;transition:opacity .15s}.calendar-day:hover .calendar-day-heading span,.calendar-day:focus .calendar-day-heading span{opacity:1}.outside-month{background:#f3f5f2;color:#9ba49f}.outside-month .day-performances{opacity:.5}.day-performances{display:grid;gap:6px}.mobile-month{display:none}
.search-page,.detail-page,.profile-page,.edit-page,.day-page{max-width:980px;margin:0 auto}.discipline-results{display:grid;gap:10px;margin-top:28px}.discipline-results a{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:17px 19px;border:1px solid var(--line);border-radius:12px;background:white;text-decoration:none}.discipline-results span{color:var(--muted);font-size:13px}.history-list{display:grid;gap:9px}.history-entry{display:grid;grid-template-columns:120px 1fr;align-items:center;gap:12px}.history-entry>time{color:var(--muted);font-size:13px;font-weight:750}.pagination{display:flex;justify-content:space-between;gap:12px;margin-top:22px}.pagination .button{min-width:130px}.back-link{display:inline-block;margin-bottom:28px}.detail-performance{margin:24px 0}.detail-performance .performance-card{pointer-events:none}.profile-page form,.edit-page form{padding:24px;border:1px solid var(--line);border-radius:16px;background:white}.profile-actions{display:grid;gap:10px;margin-top:20px}.training-sections{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:32px}.training-group{padding:22px;border:1px solid var(--line);border-radius:16px;background:white}.training-group.other-group{grid-column:1/-1}.group-heading{display:grid;grid-template-columns:1fr auto;align-items:center;margin-bottom:16px}.group-heading .kicker{grid-column:1/-1}.group-heading h2{margin:3px 0}.group-heading>span{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:var(--accent);color:#17221d;font-weight:800}.day-performance-list{display:grid;gap:10px}.day-performance-list .performance-card{min-height:120px;box-shadow:none}.group-empty{margin:0;padding:24px 12px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);text-align:center}
.edit-rounds{display:grid;gap:12px}.edit-rounds fieldset{display:grid;gap:12px;margin:0;padding:15px;border:1px solid var(--line);border-radius:10px}.edit-rounds legend{padding:0 7px;color:var(--forest);font-weight:800}.empty{padding:30px 18px;text-align:center;border:1px dashed var(--line);border-radius:14px}.empty h2,.empty h3{margin:7px 0}.empty p{margin:0;color:var(--muted)}.app-empty{margin:30px 0;background:#ffffff80}
.app-navigation{display:flex;align-items:center;gap:16px;white-space:nowrap}.header-context{display:grid;justify-items:end;color:var(--muted);font-size:12px}.header-context small{font-size:10px}.context-search{display:flex;align-items:center;justify-content:center;gap:18px;padding:14px clamp(20px,4vw,64px);border-bottom:1px solid var(--line);background:#eef3ef}.context-search>label{white-space:nowrap}.context-search>div{display:grid;grid-template-columns:minmax(220px,440px) auto;gap:8px}.context-search input,.context-search button{min-height:42px}.directory-page,.admin-page{max-width:1100px;margin:0 auto}.directory-search{grid-template-columns:minmax(220px,1fr) auto;align-items:end;margin:24px 0}.directory-list,.admin-table,.status-list{display:grid;gap:10px;margin-top:24px}.directory-list>a,.admin-table>article,.status-list>article{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border:1px solid var(--line);border-radius:12px;background:white;text-decoration:none}.directory-list>a>span:nth-child(2),.admin-table article>div:first-child,.status-list article>div:first-child{display:grid;flex:1}.directory-list small,.admin-table small,.status-list small{color:var(--muted)}.discipline-edit-link{display:inline-block;margin:8px 4px 2px;font-size:12px}.trainer-permissions{margin-top:34px}.checkbox-list{display:grid;gap:8px}.checkbox-row{display:flex;grid-template-columns:none;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:10px}.checkbox-row input{width:20px;min-height:20px}.admin-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:28px 0}.admin-metrics article{display:grid;padding:22px;border:1px solid var(--line);border-radius:14px;background:white}.admin-metrics strong{font-size:34px}.admin-metrics span{color:var(--muted)}.admin-form{max-width:680px;margin:24px 0;padding:22px;border:1px solid var(--line);border-radius:14px;background:white}.row-actions{display:flex;gap:8px}.row-actions form,.admin-table article form{margin:0}.row-actions button,.admin-table button{min-height:42px}.status-list article{display:grid;grid-template-columns:1fr auto}.status-list article>small{grid-column:1/-1}.status-erfolgreich{color:#28623d}.status-fehlgeschlagen{color:var(--danger)}
.box-member-groups{display:grid;gap:14px;margin-top:24px}.box-member-group{border:1px solid var(--line);border-radius:14px;background:white;overflow:hidden}.box-member-group>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 20px;cursor:pointer;list-style-position:inside}.box-member-group>summary span{color:var(--muted);font-size:13px}.box-member-group>.admin-table{margin:0;padding:0 14px 14px}.danger{border-color:#a53535;background:#a53535;color:white}.danger:hover,.danger:focus{background:#842727}.admin-form select[multiple],.admin-table select[multiple]{min-width:220px;min-height:110px}
.box-management-links{display:flex;flex-wrap:wrap;gap:7px 14px;margin-top:10px}.box-management-links a{font-size:13px;font-weight:750}.box-management-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.box-management-actions form{margin:0}.box-management-actions small{flex-basis:100%;color:var(--muted);text-align:right}.box-management-actions button:disabled{cursor:not-allowed;opacity:.55}.admin-add-button{display:inline-flex;margin-top:14px;text-decoration:none}
.admin-files-page{max-width:1500px;margin:0 auto}.file-box-selection{max-width:620px}.file-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin:24px 0}.file-metrics article{display:grid;padding:18px;border:1px solid var(--line);border-radius:14px;background:white}.file-metrics strong{font-size:28px}.file-metrics span{color:var(--muted)}.file-calendar-day{cursor:default}.file-day-entries{display:grid;gap:6px}.file-entry{display:grid;gap:2px;padding:9px;border-left:4px solid #789247;border-radius:8px;background:#f7f9f6}.file-entry strong{overflow-wrap:anywhere;font-size:12px}.file-entry span,.file-entry small,.file-entry time{color:var(--muted);font-size:11px}.file-assignment-link{margin-top:4px;font-size:11px;font-weight:800}.file-status-warnung{border-left-color:#c38b23}.file-status-fehler{border-left-color:var(--danger)}.file-issues{margin-top:34px}.file-mobile-list .file-entry{padding:15px}.file-mobile-list .file-entry strong{font-size:14px}.file-detail-page{max-width:900px}
.setup-field{display:grid;gap:7px}.setup-field-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.setup-field-heading label{display:block}.setup-field-heading a{font-size:12px;white-space:nowrap}.setup-help{display:grid;gap:10px;margin:4px 0 8px;padding-top:8px;border-top:1px solid var(--line)}.setup-help h3{margin:4px 0}.setup-help article{padding:15px;border:1px solid var(--line);border-radius:11px;background:#f7f9f6;scroll-margin-top:100px}.setup-help article:target{border-color:#789247;box-shadow:0 0 0 3px #d7ff3638}.setup-help h4{margin:0 0 5px}.setup-help p{margin:5px 0 9px;color:var(--muted);font-size:13px}.setup-help article>a,.setup-help-links a{font-size:13px}.setup-help-links{display:flex;flex-wrap:wrap;gap:8px 16px}.setup-command{display:block;padding:10px;border-radius:8px;background:#e9eeea;overflow-wrap:anywhere;font-size:12px;font-weight:600;white-space:normal}
.box-create-form{max-width:none}.delivery-setup-title{margin:22px 0 0;padding-top:22px;border-top:1px solid var(--line)}.delivery-setup-row{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start;gap:24px;padding:22px 0;border-bottom:1px solid var(--line)}.delivery-setup-inputs{display:grid;min-width:0;gap:12px}.delivery-setup-inputs>h3{margin:0 0 4px}.delivery-setup-inputs>p{margin:0;color:var(--muted);font-size:13px}.setup-help-card{padding:18px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6;scroll-margin-top:100px}.setup-help-card:target{border-color:#789247;box-shadow:0 0 0 3px #d7ff3638}.setup-help-card h4{margin:0 0 8px}.setup-help-card p{margin:0 0 10px;color:var(--muted);font-size:13px}.setup-help-card ol{display:grid;gap:8px;margin:0;padding-left:20px;font-size:13px}.setup-help-card code{overflow-wrap:anywhere}
@media(max-width:900px){.delivery-setup-row{grid-template-columns:1fr;gap:16px}.setup-help-card{order:2}}
.box-switcher{display:grid;gap:3px;margin:0}.box-switcher label{font-size:11px;font-weight:800}.box-switcher select{min-width:150px;min-height:42px;background:#fff;color:#17221d}.training-plan-page>h1{margin-bottom:8px}.week-navigation{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin:26px 0;text-align:center}.week-navigation>div{display:grid;gap:9px}.week-jump{display:flex;align-items:end;justify-content:center;gap:8px}.week-jump label{display:grid;gap:3px;color:var(--muted);font-size:11px;text-align:left}.week-jump input,.week-jump button{min-height:42px}.training-plan-form{display:grid;gap:22px}.training-plan-grid{display:grid;grid-template-columns:repeat(7,minmax(220px,1fr));gap:12px;overflow-x:auto;padding-bottom:10px}.training-plan-grid article{display:grid;align-content:start;gap:14px;padding:16px;border:1px solid var(--line);border-radius:14px;background:white}.training-plan-grid article>header{display:grid;gap:3px}.training-plan-grid article>header span{font-weight:800}.training-plan-grid article>header small{color:var(--muted)}.training-plan-grid label{display:grid;gap:6px;font-weight:750}.training-plan-grid textarea{min-width:0;resize:vertical}.training-plan-grid .reset-plan-day{display:flex;align-items:flex-start;gap:8px;color:var(--muted);font-size:12px;font-weight:600}.reset-plan-day input{width:18px;min-height:18px}.training-plan-actions{position:sticky;z-index:5;bottom:16px;display:flex;justify-content:flex-end}.trainer-box-form{display:grid;gap:8px}.trainer-box-form fieldset{display:grid;gap:5px;margin:0;padding:10px;border:1px solid var(--line);border-radius:9px}.trainer-box-form label{display:flex;align-items:center;gap:7px;font-size:12px}.trainer-box-form input{width:18px;min-height:18px}
@media(max-width:800px){.app-header{position:relative;grid-template-columns:1fr auto auto;gap:10px;padding:12px 16px}.app-logo strong{display:none}.app-navigation{justify-self:end;max-width:52vw;overflow:auto}.performance-search{grid-column:1/-1;grid-row:2}.performance-search input{min-width:0}.box-switcher{grid-column:1/-1}.box-switcher select{width:100%}.profile-menu{grid-column:auto}.header-context{display:none}.context-search{align-items:stretch;flex-direction:column;padding:14px}.context-search>div{grid-template-columns:1fr auto}.app-main,.app-main.app-wide{width:min(100% - 28px,720px);padding:34px 0 50px}.latest-grid{grid-template-columns:1fr}.welcome-heading{align-items:start;flex-direction:column;margin-top:38px}.week-navigation{grid-template-columns:1fr}.training-plan-grid{grid-template-columns:1fr;overflow:visible}.training-plan-actions{position:static}.training-plan-actions button{width:100%}.desktop-calendar{display:none}.mobile-month{display:grid;gap:14px}.mobile-day{padding:16px;border:1px solid var(--line);border-radius:14px;background:white;color:inherit;text-decoration:none}.mobile-day h2{margin:0 0 12px;font-size:16px}.mobile-day>div{display:grid;gap:7px}.month-navigation{grid-template-columns:42px minmax(170px,1fr) 42px;gap:8px}.month-navigation>a{width:40px;height:40px}.month-empty{margin-bottom:14px}.history-entry{grid-template-columns:1fr}.history-entry>time{padding-left:4px}.profile-page form,.edit-page form{padding:18px}.training-sections{grid-template-columns:1fr}.training-group.other-group{grid-column:auto}.directory-search{grid-template-columns:1fr}.directory-list>a,.admin-table>article{align-items:stretch;flex-direction:column}.admin-metrics,.file-metrics{grid-template-columns:1fr}.row-actions{flex-wrap:wrap}}
@media(prefers-color-scheme:dark){.authenticated{--ink:#eef4f0;--muted:#a7b3ac;--line:#34443b;--paper:#111914;--forest:#d7ff36;background:var(--paper);color:var(--ink)}.app-header{background:var(--box-header-bg,#152019ed)}.app-logo,.user-avatar{color:#111914}.user-avatar{background:var(--accent)}.performance-card,.calendar,.month-navigation>a,.discipline-results a,.mobile-day,.profile-page form,.edit-page form,.training-group,.directory-list>a,.admin-table>article,.status-list>article,.admin-metrics article,.admin-form,.box-member-group,.profile-menu-popup,.file-metrics article,.training-plan-grid article{background:#19241e}.profile-menu-popup a:hover,.profile-menu-popup a:focus{background:#223028}.context-search{background:#16221b}.performance-compact,.performance-history,.file-entry,.setup-help article,.setup-help-card{background:#223028}.setup-command{background:#111914}.calendar-day:hover,.calendar-day:focus{background:#223028}.outside-month{background:#131c17}.button{background:var(--accent);color:#111914}.secondary{border-color:var(--line);background:#19241e;color:var(--ink)}input,select,textarea{border-color:var(--line);background:#18231d;color:var(--ink)}.app-header[style] .box-switcher select{background:#fff;color:#17221d}.app-empty{background:#19241e80}}

.setup-page{max-width:1100px}.setup-progress{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0}.setup-progress article{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:2px 10px;padding:14px;border:1px solid var(--line);border-radius:12px;background:white}.setup-progress strong{grid-row:1/3;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#e9eeea}.setup-progress span{font-weight:750}.setup-progress small{color:var(--muted)}.setup-progress .complete{border-color:#789247}.setup-progress .complete strong{background:var(--accent);color:#111914}.setup-wizard{max-width:none;display:grid;gap:18px;padding:0;border:0;background:transparent}.setup-general,.setup-step{display:grid;gap:14px;padding:24px;border:1px solid var(--line);border-radius:14px;background:white}.setup-general{grid-template-columns:1fr 1fr}.setup-general.box-general{grid-template-columns:1fr}.setup-general h2{grid-column:1/-1}.setup-step-heading{display:flex;align-items:center;gap:14px}.setup-step-heading>span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:50%;background:var(--forest);color:white;font-size:20px;font-weight:800}.setup-step-heading .kicker,.setup-step-heading h2{margin:0}.setup-step>p{margin:0;color:var(--muted)}.google-setup-steps{display:grid;gap:12px;margin:0;padding:0;list-style:none;counter-reset:google-step}.google-setup-steps>li{counter-increment:google-step;position:relative;padding:18px 18px 18px 62px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6}.google-setup-steps>li::before{content:'2.' counter(google-step);position:absolute;left:16px;top:17px;color:#4d6530;font-weight:850}.google-setup-steps h3{margin:0 0 6px;font-size:16px}.google-setup-steps p{margin:5px 0 12px;color:var(--muted);font-size:13px}.copy-field{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.copy-field button{min-height:50px}.copy-status{min-height:18px}.manual-google-files{padding:14px;border:1px solid var(--line);border-radius:11px}.manual-google-files summary{cursor:pointer;font-weight:750}.manual-google-files[open]{display:grid;gap:12px}.setup-actions{display:flex;justify-content:flex-end}.setup-help-links{margin-bottom:4px}
.setup-progress{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
@media(max-width:800px){.setup-progress{grid-template-columns:1fr}.setup-general{grid-template-columns:1fr}.setup-general h2{grid-column:auto}.google-setup-steps>li{padding:16px 14px 16px 48px}.google-setup-steps>li::before{left:12px}.copy-field{grid-template-columns:1fr}.setup-step{padding:18px}}
@media(prefers-color-scheme:dark){.setup-progress article,.setup-general,.setup-step{background:#19241e}.setup-progress strong,.google-setup-steps>li{background:#223028}.google-setup-steps>li::before{color:#d7ff36}.setup-step-heading>span{color:#111914}}
.file-detail-page{max-width:1500px}.assignment-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;background:white}.assignment-table{width:100%;border-collapse:collapse}.assignment-table th,.assignment-table td{padding:15px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.assignment-table th{color:var(--muted);font-size:12px;text-transform:uppercase;letter-spacing:.05em}.assignment-table tbody tr:last-child td{border-bottom:0}.assignment-table td:first-child{min-width:220px}.assignment-table td:nth-child(3){min-width:280px}.assignment-table td:last-child{min-width:220px}.assignment-table td>strong,.assignment-table td>small{display:block}.assignment-table td>small{margin-top:5px;color:var(--muted)}.assignment-table select{width:100%;min-height:44px}.assignment-table form{display:grid;gap:8px}.assignment-table button{min-height:44px}.assignment-table button:disabled,.assignment-table select:disabled{cursor:not-allowed;opacity:.6}.assignment-open{background:#fffdf6}.delivered-performances{display:grid;gap:9px}.delivered-performances>div{display:grid;gap:2px}.delivered-performances span{color:var(--muted);font-size:13px}.assignment-status{display:inline-block;padding:7px 10px;border-radius:999px;background:#e4f3e8;color:#205c35;font-size:12px;font-weight:800}.assignment-status.recovery{background:#fff0ca;color:#694d08}
@media(prefers-color-scheme:dark){.assignment-table-wrap{background:#19241e}.assignment-open{background:#241f14}.assignment-status{background:#23452f;color:#bce8c9}.assignment-status.recovery{background:#59430d;color:#ffe7a6}}
.box-switcher select{width:clamp(210px,18vw,280px)}
.discipline-results a>time{flex:0 0 92px;color:var(--muted);font-size:13px;font-weight:750}.discipline-results a>strong{flex:1}.discipline-results a>span{text-align:right}
.dashboard-overview{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);align-items:start;gap:26px;margin-top:46px}.dashboard-overview .welcome-heading{margin:0 0 18px}.personal-bests{margin:0}.personal-bests .welcome-heading{margin:0 0 18px}.personal-best-list{display:grid;gap:10px}.personal-best{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:white}.personal-best>summary{display:grid;grid-template-columns:22px minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px 20px;cursor:pointer;list-style:none}.personal-best>summary::-webkit-details-marker{display:none}.personal-best>summary::before{content:'›';color:var(--forest);font-size:27px;font-weight:800;line-height:1;transition:transform .15s}.personal-best[open]>summary::before{transform:rotate(90deg)}.personal-best-title,.personal-best-score{display:grid;gap:3px}.personal-best-title small,.personal-best-score time,.personal-best-empty{color:var(--muted);font-size:12px}.personal-best-score{justify-items:end}.personal-best-score strong{color:var(--forest);font-size:21px}.personal-best-score.empty-score{color:var(--muted);font-size:13px}.personal-best-ranks{display:grid;gap:8px;margin:0 20px 18px 58px;padding:14px 18px 14px 34px;border-left:3px solid var(--accent);border-radius:8px;background:#f7f9f6}.personal-best-ranks li{padding-left:5px}.personal-best-ranks li::marker{color:var(--muted);font-weight:800}.personal-best-ranks li>span{font-weight:800}.personal-best-ranks li>time{float:right;color:var(--muted);font-size:13px}.personal-best-empty{margin:0 20px 18px 58px;padding:13px 16px;border-left:3px solid var(--line)}
.personal-best{margin:0}.highscore-config{display:grid;gap:10px;margin-bottom:18px;padding:16px;border:1px solid var(--line);border-radius:14px;background:#ffffff9c}.highscore-add-form{gap:7px}.highscore-add-form>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.highscore-add-form input,.highscore-add-form button{min-height:44px}.highscore-add-form button{padding:0 14px}.highscore-add-form button:disabled,.highscore-filter:disabled{cursor:not-allowed;opacity:.55}.highscore-limit{margin:0;color:var(--muted);font-size:12px}.highscore-filters{display:flex;flex-wrap:wrap;gap:8px}.highscore-filter-control{display:flex;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:white}.highscore-filter-control form{display:block}.highscore-filter,.highscore-remove{min-height:42px;border-radius:0}.highscore-filter{display:grid;justify-items:start;gap:0;padding:5px 11px;background:white;color:var(--ink)}.highscore-filter small{color:var(--muted);font-size:10px}.highscore-filter.active{background:var(--forest);color:white}.highscore-filter.active small{color:#dce8e1}.highscore-remove{width:36px;padding:0;border-left:1px solid var(--line);background:#f4f6f3;color:var(--muted);font-size:20px}.highscore-remove:hover,.highscore-remove:focus{background:#fde9e7;color:var(--danger)}.highscore-empty{margin:0;padding:18px}.highscore-empty p{margin:0}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:18px}.setting-card{display:grid;max-width:none;margin:0;gap:14px}.setting-card h2,.setting-card p{margin:0}.setting-card form+form{margin-top:-4px}.setting-status{display:flex;align-items:center;gap:9px;padding:11px 13px;border-radius:10px}.setting-status.status-ok{background:#e7f3e9;color:#1f6238}.setting-status.status-paused{background:#fff0ef;color:var(--danger)}.openai-status{display:grid;gap:6px;padding:13px;border:1px solid var(--line);border-radius:10px;background:#f7f9f6}.openai-status p{display:flex;align-items:center;justify-content:space-between;gap:16px}.openai-status span,.openai-status small{color:var(--muted);font-size:12px}.status-ok-text{color:#1f6238}.status-warning-text{color:#8c4d16}.setting-card:last-child{grid-column:1/-1}
@media(max-width:800px){.settings-grid{grid-template-columns:1fr}.setting-card:last-child{grid-column:auto}}
@media(prefers-color-scheme:dark){.openai-status{background:#223028}.setting-status.status-ok{background:#203b2a;color:#9de0ad}.setting-status.status-paused{background:#432524;color:#ffb4ae}.status-ok-text{color:#9de0ad}.status-warning-text{color:#ffcc8b}}
.highscore-add-form>small{color:var(--muted);font-size:11px;font-weight:500}.highscore-search-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px}.exercise-combobox{position:relative}.exercise-combobox>input[type=search]{width:100%}.exercise-options{position:absolute;z-index:15;top:calc(100% + 5px);right:0;left:0;overflow:auto;max-height:280px;padding:5px;border:1px solid var(--line);border-radius:11px;background:white;box-shadow:0 14px 32px #173b2c26}.exercise-option{display:grid;width:100%;min-height:52px;padding:8px 10px;border-radius:7px;background:white;color:var(--ink);text-align:left}.exercise-option small{color:var(--muted);font-size:11px}.exercise-option:hover,.exercise-option[aria-selected=true]{background:#edf3e9}.highscore-add-form input[aria-invalid=true]{border-color:var(--danger)}
@media(max-width:800px){.box-switcher select{width:100%}}
@media(max-width:800px){.app-header{grid-template-columns:minmax(0,1fr) auto}.app-logo{grid-column:1}.profile-menu{grid-column:2;grid-row:1}.box-switcher,.app-navigation,.performance-search{grid-column:1/-1;grid-row:auto}.app-navigation{justify-self:start;max-width:100%}}
@media(max-width:800px){.dashboard-overview{grid-template-columns:1fr;gap:44px;margin-top:38px}.personal-bests .welcome-heading>span{display:none}.personal-best>summary{grid-template-columns:18px minmax(0,1fr);padding:16px}.personal-best-score{grid-column:2;justify-items:start}.personal-best-ranks,.personal-best-empty{margin-right:16px;margin-left:34px}.personal-best-ranks li>time{float:none;display:block;margin-top:2px}}
@media(max-width:800px){.highscore-add-form>div,.highscore-search-row{grid-template-columns:1fr}.highscore-add-form button{justify-content:center}.highscore-filter-control{flex:1 1 145px}.highscore-filter-control form:first-child{flex:1}.highscore-filter{width:100%}}
@media(prefers-color-scheme:dark){.personal-best{background:#19241e}.personal-best-ranks{background:#223028}}
@media(prefers-color-scheme:dark){.highscore-config{background:#19241e}.highscore-filter-control,.highscore-filter{background:#223028;color:var(--ink)}.highscore-filter.active{background:var(--accent);color:#111914}.highscore-filter.active small{color:#334019}.highscore-remove{background:#19241e}}
@media(prefers-color-scheme:dark){.exercise-options,.exercise-option{background:#19241e;color:var(--ink)}.exercise-option:hover,.exercise-option[aria-selected=true]{background:#2a382f}}
.image-delivery-page{max-width:1050px;margin:0 auto}.image-capture-form{display:grid;gap:18px;margin-top:28px;padding:24px;border:1px solid var(--line);border-radius:16px;background:white}.image-capture-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.image-capture-fields label,.image-rename-form label{display:grid;gap:7px;font-weight:750}.image-capture-fields input{width:100%}.image-preview-panel{display:grid;grid-template-columns:minmax(180px,1fr) repeat(3,minmax(130px,.7fr));align-items:center;gap:14px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f7f9f6}.image-preview-panel img{width:100%;max-height:280px;object-fit:contain;border-radius:9px}.image-preview-panel div{display:grid;gap:4px}.image-preview-panel span{color:var(--muted);font-size:12px}.delivered-images{margin-top:46px}.delivered-image-list{display:grid;gap:14px}.delivered-image{display:grid;grid-template-columns:180px minmax(220px,1fr) minmax(260px,.9fr);align-items:center;gap:20px;padding:16px;border:1px solid var(--line);border-left:5px solid #789247;border-radius:14px;background:white}.delivered-image.status-verarbeitet{border-left-color:#28623d}.delivered-image.status-fehler{border-left-color:var(--danger)}.delivered-image.status-in_verarbeitung{border-left-color:#c38b23}.image-preview-button{position:relative;display:block;min-height:0;padding:0;overflow:hidden;border:0;border-radius:10px;background:#e9eeea;color:white;cursor:zoom-in}.image-preview-button img{display:block;width:100%;height:135px;object-fit:cover}.image-preview-button span{position:absolute;right:8px;bottom:8px;padding:5px 8px;border-radius:999px;background:#10291fcc;color:white;font-size:11px;font-weight:800;opacity:0;transform:translateY(3px);transition:opacity .15s,transform .15s}.image-preview-button:hover span,.image-preview-button:focus-visible span{opacity:1;transform:none}.image-preview-button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.image-lightbox{width:min(96vw,1450px);max-width:none;padding:18px;border:1px solid var(--line);border-radius:16px;background:#111914;color:#eef4f0;box-shadow:0 28px 90px #000b}.image-lightbox::backdrop{background:#020805d9;backdrop-filter:blur(3px)}.image-lightbox-close{position:relative;z-index:2;margin:-8px -5px 8px 8px}.image-lightbox-close button{border-radius:50%;background:#ffffff18;color:white}.image-lightbox-stage{display:grid;max-height:calc(100vh - 180px);place-items:center;overflow:auto;border-radius:10px;background:#070b09}.image-lightbox-stage img{display:block;max-width:100%;max-height:calc(100vh - 180px);object-fit:contain}.image-lightbox-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 2px 0}.image-lightbox-footer>div{display:grid;min-width:0;gap:3px}.image-lightbox-footer strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-lightbox-footer span{color:#b8c2bc;font-size:12px}.image-lightbox-footer a{flex:0 0 auto}.delivered-image-info{display:grid;gap:5px}.delivered-image-info time,.delivered-image-info small,.image-edit>small{color:var(--muted);font-size:12px}.image-status{width:max-content;padding:5px 8px;border-radius:999px;background:#e7efe2;color:#315325;font-size:11px;font-weight:800}.image-edit,.image-edit-actions{display:grid;gap:9px}.image-edit-actions{grid-template-columns:1fr 1fr}.image-edit-actions[hidden]{display:none}.folder-image-note{display:grid;gap:6px;padding:14px;border:1px dashed var(--line);border-radius:10px}.folder-image-note span{color:var(--muted);font-size:12px;line-height:1.45}.folder-image-note code{overflow-wrap:anywhere}.danger-button{border-color:#a53535;background:#a53535;color:white}.danger-button:hover,.danger-button:focus{background:#842727}.image-edit-dialog{width:min(92vw,620px);padding:26px;border:1px solid var(--line);border-radius:16px;background:white;color:var(--ink);box-shadow:0 24px 70px #071b1266}.image-edit-dialog::backdrop{background:#071b1299;backdrop-filter:blur(2px)}.image-edit-dialog h3{margin:5px 0 12px;font-size:26px}.image-edit-dialog>p:not(.kicker){line-height:1.55}.dialog-close-form{float:right;margin:-12px -10px 0 0}.dialog-close-form button{width:40px;min-height:40px;padding:0;border:0;background:transparent;color:var(--muted);font-size:27px}.dialog-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:20px}.dialog-actions form{margin:0}.dialog-actions button{min-height:44px}.warning-note{padding:12px;border-left:4px solid #a35d18;border-radius:6px;background:#fff5df;color:#5d3a0c;font-size:13px}.image-rename-form{display:grid;gap:14px;margin:0}.image-rename-form input{min-height:44px}.change-summary{display:grid;gap:7px;margin:0}.change-summary div{display:grid;grid-template-columns:minmax(150px,.8fr) 1fr;gap:10px;padding-bottom:7px;border-bottom:1px solid var(--line)}.change-summary dt{color:var(--muted);font-size:12px}.change-summary dd{margin:0;font-size:13px;font-weight:750;overflow-wrap:anywhere}.image-capture-form .hint{margin:0;color:var(--muted);font-size:12px}
@media(max-width:800px){.image-capture-form{padding:18px}.image-capture-fields,.image-preview-panel,.delivered-image{grid-template-columns:1fr}.image-preview-panel img{max-height:360px}.image-preview-button img{height:auto;max-height:320px}.image-capture-form>button{width:100%}.dialog-actions{align-items:stretch;flex-direction:column-reverse}.dialog-actions form,.dialog-actions button{width:100%}.change-summary div{grid-template-columns:1fr}.image-lightbox{width:96vw;padding:12px}.image-lightbox-stage,.image-lightbox-stage img{max-height:calc(100vh - 210px)}.image-lightbox-footer{align-items:stretch;flex-direction:column}.image-lightbox-footer a{width:100%}}
@media(prefers-color-scheme:dark){.image-capture-form,.delivered-image,.image-edit-dialog{background:#19241e}.image-preview-panel{background:#223028}.image-status{background:#2b462f;color:#ccebd1}.warning-note{background:#3a2b14;color:#ffe3ad}}
.assignment-table td:last-child form{margin-top:9px}
.performance-release-form{display:grid;gap:7px;max-width:420px;margin-top:16px}.performance-release-form small{color:var(--muted);font-size:12px}
.day-release-form{margin-top:8px}.day-release-form button{width:100%;min-height:42px}
