:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html,body{overflow-x:clip}*,:before,:after{box-sizing:border-box}::selection{background:var(--ck-brand-tint)}body{background:var(--ck-bg);color:var(--ck-text);font-variant-numeric:tabular-nums;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.4}button,input{font:inherit}a{color:var(--ck-brand-ink)}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:700}.muted,.meta{color:var(--ck-text-2)}.meta{font-size:13px}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.list,.card-list{margin:0;padding:0;list-style:none}.card-list{gap:var(--ck-space-3);flex-direction:column;display:flex}:focus-visible{outline:2px solid var(--ck-brand-ink);outline-offset:2px}.band-dark :focus-visible{outline-color:var(--ck-band-text)}.band-brand :focus-visible{outline-color:var(--ck-band-brand-text)}.card-link:focus-visible{border-radius:var(--ck-radius-xl)}input:focus-visible{border-color:var(--ck-brand-ink);box-shadow:0 0 0 3px var(--ck-brand-tint);outline:none}*{scrollbar-width:thin;scrollbar-color:var(--ck-border) transparent}.ion-icon{background:currentColor;flex:none;display:inline-block;-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.mdi-icon{flex:none}button,.button-link{justify-content:center;align-items:center;gap:var(--ck-space-2);min-height:48px;padding:var(--ck-space-3) var(--ck-space-6);border-radius:var(--ck-radius-md);cursor:pointer;background:var(--ck-brand-ink);color:var(--ck-on-brand);border:1.5px solid #0000;font-weight:600;text-decoration:none;display:inline-flex}button:hover:not(:disabled),.button-link:hover{background:var(--ck-brand-ink-hover)}button:active:not(:disabled){opacity:.7}button:disabled{background:var(--ck-disabled-fill);color:var(--ck-disabled-text);cursor:default}button.secondary{background:var(--ck-surface);border-color:var(--ck-border-strong);color:var(--ck-text)}button.secondary:hover:not(:disabled){background:var(--ck-surface-hover)}button.ghost{min-height:40px;color:var(--ck-brand-ink);background:0 0}button.ghost:hover:not(:disabled){background:var(--ck-brand-tint)}button.full,.button-link{width:100%}.auth-column button:not(.ghost):not(.secondary),.auth-column .button-link{border-radius:var(--ck-radius-xl);box-shadow:var(--ck-shadow-raised)}.band-link{align-items:center;gap:var(--ck-space-2);min-height:40px;padding:0 var(--ck-space-2);color:inherit;box-shadow:none;border-radius:var(--ck-radius-md);background:0 0;font-size:15px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.band-link:hover:not(:disabled){background:0 0;text-decoration:underline}label{color:var(--ck-text-2);margin-bottom:var(--ck-space-2);font-size:13px;font-weight:600;display:block}input{width:100%;min-height:48px;padding:var(--ck-space-3) var(--ck-space-4);border:1px solid var(--ck-divider);border-radius:var(--ck-radius-md);background:var(--ck-surface);color:var(--ck-text)}input::placeholder{color:var(--ck-text-3)}input[aria-invalid=true]{border-color:var(--ck-error-ink)}.inline-error{margin:var(--ck-space-1) 0 0;color:var(--ck-error-ink);font-size:13px}form button{margin-top:var(--ck-space-5)}.band{border-radius:0 0 var(--ck-radius-xxl) var(--ck-radius-xxl);padding:var(--ck-space-6) var(--ck-space-7) var(--ck-space-7)}.band-dark{background:var(--ck-band);color:var(--ck-band-text)}.band-brand{background:var(--ck-band-brand);color:var(--ck-band-brand-text)}.band-inner{max-width:var(--ck-content-max);margin:0 auto}.band-top{justify-content:space-between;align-items:center;min-height:40px;display:flex}.band-wordmark{align-items:center;gap:var(--ck-space-2);font-size:18px;font-weight:700;display:inline-flex}.band-title{margin-top:var(--ck-space-6);letter-spacing:-.25px;font-size:30px;line-height:1.2}.band-pills{margin-top:var(--ck-space-3)}.pill-row{gap:var(--ck-space-2);flex-wrap:wrap;display:flex}.pill-row.centered{justify-content:center}.band-pill{height:28px;padding:0 var(--ck-space-3);border-radius:var(--ck-radius-full);background:var(--ck-band-chip);color:var(--ck-band-chip-ink);align-items:center;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.band-brand .band-pill{color:var(--ck-band-brand-text)}.detail-hero{flex-direction:column;align-items:center;display:flex}.detail-hero .band-title{margin-top:var(--ck-space-4);font-size:24px}.name-row{align-items:center;gap:var(--ck-space-2);display:flex}.logo-plate{margin-top:var(--ck-space-4);padding:var(--ck-space-2);border-radius:var(--ck-radius-xl);background:var(--ck-surface);box-shadow:var(--ck-shadow-lift);display:flex}.skeleton.on-band{opacity:.3;background:currentColor}.body{box-sizing:content-box;gap:var(--ck-space-7);max-width:var(--ck-content-max);padding:var(--ck-space-7) var(--ck-space-7) var(--ck-space-8);grid-template-columns:1fr 1fr;align-items:start;min-height:calc(100vh + 1px);margin:0 auto;display:grid}.body-single{grid-template-columns:minmax(0,480px);justify-content:center}.body>section{min-width:0}@media (width<=1100px){.body{grid-template-columns:1fr}}.section-header{align-items:center;gap:var(--ck-space-2);margin-bottom:var(--ck-space-4);display:flex}.section-header h2{font-size:18px}.count-badge{border-radius:var(--ck-radius-full);background:var(--ck-band);min-width:24px;height:24px;color:var(--ck-band-text);justify-content:center;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.count-badge.wide{padding:0 var(--ck-space-2)}.card{background:var(--ck-surface);border-radius:var(--ck-radius-xl);padding:var(--ck-space-4);box-shadow:var(--ck-shadow-card)}.card-link{color:inherit;align-items:center;text-decoration:none;transition:box-shadow .15s;display:flex}.card-link:hover{box-shadow:var(--ck-shadow-raised)}.card-link:active{opacity:.7}.age-card{min-height:84px}.plate{width:52px;height:52px;margin-right:var(--ck-space-4);border-radius:var(--ck-radius-lg);background:var(--ck-band-brand);color:var(--ck-band-brand-text);flex:none;justify-content:center;align-items:center;font-size:20px;font-weight:700;display:inline-flex}.plate.big{width:72px;height:72px;margin:0;font-size:36px}.age-card-text{gap:var(--ck-space-1);flex-direction:column;min-width:0;display:flex}.age-card-name{align-items:center;gap:var(--ck-space-1);min-width:0;font-size:16px;font-weight:600;display:flex}.age-card-name .mdi-icon{color:var(--ck-icon)}.event-card{align-items:flex-start;gap:var(--ck-space-4);display:flex}.date-tile{border-radius:var(--ck-radius-lg);background:var(--ck-band);width:56px;height:56px;color:var(--ck-band-text);flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex;position:relative}.date-tile.has-corner{padding-bottom:var(--ck-space-1)}.date-day{font-size:20px;font-weight:700;line-height:1.1}.date-month{letter-spacing:.5px;font-size:12px;font-weight:600;line-height:1.2}.corner{border-radius:var(--ck-radius-full);border:2px solid var(--ck-surface);width:20px;height:20px;color:var(--ck-on-type);justify-content:center;align-items:center;display:flex;position:absolute;bottom:-8px;right:-8px}.corner-match{background:var(--ck-match)}.corner-training{background:var(--ck-training)}.event-info{gap:var(--ck-space-1);flex-direction:column;min-width:0;display:flex}.event-title{font-size:16px;font-weight:600}.pill{align-items:center;gap:var(--ck-space-1);padding:2px var(--ck-space-2);border-radius:var(--ck-radius-full);background:var(--ck-pill-neutral);color:var(--ck-text-2);font-size:12px;font-weight:600;display:inline-flex}.pill-outline{border:1px solid var(--ck-border-strong)}.coach-card{align-items:center;gap:var(--ck-space-3);min-height:72px;display:flex}.avatar{border-radius:var(--ck-radius-full);flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:15px;font-weight:700;display:inline-flex}.coach-name{font-size:16px}.info-banner{align-items:center;gap:var(--ck-space-3);margin-top:var(--ck-space-3);padding:var(--ck-space-4);border-radius:var(--ck-radius-xl);background:var(--ck-brand-tint);color:var(--ck-brand-ink);font-size:15px;font-weight:500;display:flex}.empty-card,.error-card{text-align:center;padding:var(--ck-space-6);flex-direction:column;align-items:center;display:flex}.empty-card h3{margin-top:var(--ck-space-4);font-size:18px;font-weight:600}.empty-card .meta{margin-top:var(--ck-space-1)}.error-card h2{margin-top:var(--ck-space-4);font-size:20px}.error-card .meta{margin-top:var(--ck-space-1)}.error-card button{margin-top:var(--ck-space-6)}.icon-circle{border-radius:var(--ck-radius-full);background:var(--ck-brand-tint);width:72px;height:72px;color:var(--ck-brand);justify-content:center;align-items:center;display:inline-flex}.icon-circle.tone-error{background:var(--ck-error-tint);width:80px;height:80px;color:var(--ck-error-ink)}.skeleton{background:var(--ck-skeleton);border-radius:var(--ck-radius-sm);animation:1.2s ease-in-out infinite alternate pulse;display:block}@keyframes pulse{0%{opacity:1}to{opacity:.55}}.skeleton.on-band{animation:1.2s ease-in-out infinite alternate pulse-band}@keyframes pulse-band{0%{opacity:.3}to{opacity:.18}}@media (prefers-reduced-motion:reduce){.skeleton,.skeleton.on-band,.card-link{transition:none;animation:none}}.auth-page{min-height:100vh;padding:15vh var(--ck-space-4) var(--ck-space-8);justify-content:center;display:flex}.auth-column{text-align:center;flex-direction:column;align-items:stretch;width:100%;max-width:400px;display:flex}.auth-column>.brand-tile,.auth-column>.icon-circle{margin-bottom:var(--ck-space-6);align-self:center}.brand-tile{background:var(--ck-brand);border-radius:20px;justify-content:center;align-items:center;width:72px;height:72px;display:inline-flex}.auth-column h1{font-size:30px;line-height:1.2}.auth-sub{text-wrap:balance;margin:var(--ck-space-2) 0 0;color:var(--ck-text-2);font-size:16px;line-height:1.625}.auth-column form{margin-top:var(--ck-space-7);text-align:left}.auth-column form button{width:100%;margin-top:var(--ck-space-5)}.auth-column>button,.auth-column>.button-link{margin-top:var(--ck-space-4)}.auth-column>button.ghost{margin-top:var(--ck-space-2)}.auth-footer{margin-top:var(--ck-space-6);color:var(--ck-text-2);font-size:13px}.auth-footer p+p{margin-top:var(--ck-space-2)}.auth-footer a{color:var(--ck-brand-ink)}.grecaptcha-badge{visibility:hidden}.skeleton-card{align-items:center;gap:var(--ck-space-4);display:flex}.skeleton-lines{gap:var(--ck-space-2);flex-direction:column;flex:1;display:flex}.switcher{align-items:center;gap:var(--ck-space-2);display:flex;position:relative}.switcher-menu{z-index:10;min-width:260px;margin-top:var(--ck-space-1);padding:var(--ck-space-2);color:var(--ck-text);box-shadow:var(--ck-shadow-raised);position:absolute;top:100%;right:0}.switcher-menu button{width:100%;min-height:44px;padding:0 var(--ck-space-3);color:var(--ck-text);border-radius:var(--ck-radius-md);background:0 0;justify-content:space-between;font-weight:500}.switcher-menu button:hover:not(:disabled){background:var(--ck-surface-hover)}.switcher-menu button[aria-checked=true]{font-weight:700}.band-actions{align-items:center;gap:var(--ck-space-4);display:flex}.spinner{border:3px solid var(--ck-skeleton);border-top-color:var(--ck-brand);border-radius:var(--ck-radius-full);animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.auth-spinner{margin-top:var(--ck-space-5);justify-content:center;display:flex}@media (prefers-reduced-motion:reduce){.spinner{animation:none}}.detail-hero .band-title{min-height:33px}.section-header{min-height:40px}.section-action{margin-left:auto}button.compact{min-height:40px;padding:0 var(--ck-space-4);gap:var(--ck-space-1);font-size:15px}.title-row{margin-top:var(--ck-space-4);justify-content:center;align-items:center;display:inline-flex;position:relative}.title-row .band-title{margin-top:0}button.band-icon-button{width:32px;height:32px;min-height:32px;margin-left:var(--ck-space-2);border-radius:var(--ck-radius-full);background:var(--ck-band-chip);color:var(--ck-band-brand-text);border:0;padding:0;position:absolute;top:50%;left:100%;transform:translateY(-50%)}button.band-icon-button:hover:not(:disabled){background:var(--ck-band-chip);box-shadow:var(--ck-shadow-raised)}button.band-icon-button:active:not(:disabled){opacity:.7}.dialog-scrim{z-index:100;padding:12vh var(--ck-space-4) var(--ck-space-4);background:var(--ck-overlay);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.dialog{width:100%;max-height:calc(88vh - var(--ck-space-6));padding:var(--ck-space-6);border-radius:var(--ck-radius-xl);background:var(--ck-surface-elevated);box-shadow:var(--ck-shadow-xl);overflow-y:auto}.dialog-form{max-width:480px}.dialog-confirm{max-width:400px}.dialog-title{margin-bottom:var(--ck-space-5);font-size:18px}.dialog form button{margin-top:0}.field+.field{margin-top:var(--ck-space-4)}.field-error{margin-top:var(--ck-space-1);color:var(--ck-error-ink);font-size:12px}.field-hint>span{display:block}.field-hint>span+span{margin-top:var(--ck-space-2)}.field-hint{margin-top:var(--ck-space-2);color:var(--ck-text-2);font-size:13px;line-height:1.4}.field input[readonly]{background:var(--ck-surface-hover)}.dialog-info{margin-top:var(--ck-space-4);color:var(--ck-text-2);font-size:13px;line-height:1.4}.dialog-actions{gap:var(--ck-space-3);margin-top:var(--ck-space-6);flex-direction:column;display:flex}.error-banner{align-items:flex-start;gap:var(--ck-space-3);margin-bottom:var(--ck-space-4);padding:var(--ck-space-3) var(--ck-space-4);border-radius:var(--ck-radius-lg);background:var(--ck-error-tint);color:var(--ck-error-ink);font-size:14px;font-weight:500;display:flex}.error-banner .ion-icon{margin-top:1px}button.chip{min-height:28px;margin-top:var(--ck-space-2);padding:0 var(--ck-space-3) 0 var(--ck-space-2);gap:var(--ck-space-1);border-radius:var(--ck-radius-full);background:var(--ck-brand-tint);color:var(--ck-brand-ink);font-size:13px}button.chip:hover:not(:disabled){background:var(--ck-brand-tint);text-decoration:underline}button[aria-disabled=true]:not([aria-busy=true]){background:var(--ck-disabled-fill);color:var(--ck-disabled-text);cursor:default}button[aria-busy=true]{cursor:progress}.btn-spinner{border-radius:var(--ck-radius-full);border:2px solid;border-right-color:#0000;flex:none;width:16px;height:16px;animation:.8s linear infinite spin}@media (prefers-reduced-motion:reduce){.btn-spinner{animation:none}}.toast-region{right:var(--ck-space-6);bottom:var(--ck-space-6);z-index:110;pointer-events:none;justify-content:flex-end;display:flex;position:fixed;left:auto}.toast{align-items:center;gap:var(--ck-space-3);max-width:480px;padding:var(--ck-space-3) var(--ck-space-4);border-radius:var(--ck-radius-xl);background:var(--ck-surface);box-shadow:var(--ck-shadow-raised);pointer-events:auto;font-size:15px;font-weight:500;animation:.15s ease-out toast-in;display:flex}.toast-check{border-radius:var(--ck-radius-full);background:var(--ck-success-tint);width:24px;height:24px;color:var(--ck-success-ink);flex:none;justify-content:center;align-items:center;display:inline-flex}@keyframes toast-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}.body>.col{gap:var(--ck-space-7);flex-direction:column;min-width:0;display:flex}.empty-action{margin-top:var(--ck-space-5)}.dialog-body{color:var(--ck-text-2);font-size:16px;line-height:1.4}button.danger{background:var(--ck-danger-fill);color:var(--ck-on-brand)}button.danger:hover:not(:disabled){background:var(--ck-danger-fill);opacity:.9}.role-group{margin:var(--ck-space-4) 0 0;border:0;padding:0}.role-group legend{margin-bottom:var(--ck-space-2);color:var(--ck-text-2);padding:0;font-size:13px;font-weight:600}.role-option{align-items:flex-start;gap:var(--ck-space-3);margin:0 0 var(--ck-space-2);padding:var(--ck-space-3);border:1px solid var(--ck-divider);border-radius:var(--ck-radius-md);color:var(--ck-text);cursor:pointer;font-size:16px;font-weight:400;display:flex}.role-option:has(input:checked){border-color:var(--ck-brand-ink);background:var(--ck-brand-tint)}.role-option input{width:18px;height:18px;min-height:0;accent-color:var(--ck-brand-ink);flex:none;margin:2px 0 0;padding:0}.role-option input:focus-visible{outline:2px solid var(--ck-brand-ink);outline-offset:2px;box-shadow:none}.role-name,.role-help{display:block}.role-name{font-weight:600}.role-help{color:var(--ck-text-2);margin-top:2px;font-size:13px}.pending-card{gap:var(--ck-space-2);flex-direction:column;min-height:88px;display:flex}.pending-email{overflow-wrap:anywhere;font-size:16px;font-weight:600}.pending-line{align-items:center;gap:var(--ck-space-3);grid-template-columns:auto 1fr auto;display:grid}.pending-meta{min-width:0}.role-pill{height:22px;padding:0 var(--ck-space-2);border-radius:var(--ck-radius-full);letter-spacing:.5px;text-transform:uppercase;align-items:center;font-size:12px;font-weight:700;display:inline-flex}.pending-actions{gap:var(--ck-space-1);display:flex}button.ghost-action{min-height:32px;padding:0 var(--ck-space-3);color:var(--ck-brand-ink);background:0 0;font-size:14px}button.ghost-action.danger-ink{color:var(--ck-error-ink)}button.ghost-action:hover:not(:disabled){background:var(--ck-surface-hover)}button.ghost-action:disabled{color:var(--ck-text-3);background:0 0}.compact-empty{font-size:15px}.compact-empty strong{margin-right:var(--ck-space-2)}.warning-banner{align-items:flex-start;gap:var(--ck-space-3);padding:var(--ck-space-3) var(--ck-space-4);border-radius:var(--ck-radius-lg);background:var(--ck-warning-tint);color:var(--ck-warning-ink);font-size:15px;font-weight:500;line-height:1.4;display:flex}.warning-banner .ion-icon{margin-top:1px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pending-error{margin-top:var(--ck-space-1);color:var(--ck-error-ink);font-size:12px}.coach-name{flex:1;min-width:0}.person-pills{flex-wrap:nowrap;flex:none;justify-content:flex-end}.welfare-row{align-items:center;gap:var(--ck-space-3);padding-top:var(--ck-space-3);padding-bottom:var(--ck-space-3);color:var(--ck-brand-ink);display:flex}.welfare-row .welfare-text{flex:1}.welfare-row .ion-icon{flex:none}.welfare-text{flex-direction:column;gap:2px;min-width:0;display:flex}.welfare-label{color:var(--ck-text);font-size:16px;font-weight:600}.dialog:has(.dialog-split){flex-direction:column;display:flex;overflow:hidden}.dialog-split{flex-direction:column;min-height:0;display:flex}.dialog-scroll{min-height:0;margin:0 calc(-1 * var(--ck-space-1));padding:0 var(--ck-space-1) var(--ck-space-1);overflow-y:auto}.tick-row{align-items:flex-start;gap:var(--ck-space-3);margin-top:var(--ck-space-4);font-size:15px;line-height:1.4;display:flex}.tick-row input{width:20px;height:20px;min-height:0;accent-color:var(--ck-brand-ink);flex:none;margin:1px 0 0;padding:0}.tick-row input:focus-visible{outline:2px solid var(--ck-brand-ink);outline-offset:2px;box-shadow:none}button.ghost-action.full{min-height:40px}.dialog-scroll .dialog-info{margin-bottom:var(--ck-space-4)}.dialog-banner{flex:none}.dialog.has-overflow .dialog-actions{padding-top:var(--ck-space-4);border-top:1px solid var(--ck-divider);margin-top:0}
