.c-spinner{display:inline-block;border:2px solid currentColor;border-right-color:transparent;border-radius:var(--radius-full);animation:c-spinner-turn .7s linear infinite}@keyframes c-spinner-turn{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.c-spinner{animation-duration:2s}}.c-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid transparent;border-radius:var(--radius-md);font:inherit;font-weight:600;cursor:pointer}.c-button:disabled{opacity:.55;cursor:not-allowed}.c-button--primary{background:var(--color-primary);color:var(--color-text-inverse)}.c-button--primary:hover:not(:disabled){background:var(--color-primary-hover)}.c-button--secondary{background:var(--color-surface);color:var(--color-text);border-color:var(--color-border-strong)}.c-button--secondary:hover:not(:disabled){background:var(--color-bg)}.c-button--ghost{background:transparent;color:var(--color-primary);padding-inline:var(--space-2)}.c-button--ghost:hover:not(:disabled){background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-button--danger{background:var(--color-danger);color:var(--color-text-inverse)}.c-button--danger:hover:not(:disabled){filter:brightness(.92)}.c-button--block{width:100%}a.c-button{text-decoration:none}@media (max-width: 640px){.c-button{width:100%}}.c-alert{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface)}.c-alert__title{display:block}.c-alert__title+.c-alert__body{margin-top:var(--space-1)}.c-alert__body>:last-child{margin-bottom:0}.c-alert--info{background:var(--color-surface)}.c-alert--success{background:var(--color-success-soft);border-color:var(--color-success)}.c-alert--warning{background:var(--color-warning-soft);border-color:var(--color-warning)}.c-alert--error{background:var(--color-danger-soft);border-color:var(--color-danger)}.c-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-7) var(--space-4);text-align:center;color:var(--color-text-muted)}.c-state__title{font-weight:600;color:var(--color-text);margin:0}.c-shell{min-height:100vh;display:flex;flex-direction:column}.c-shell>main{flex:1;width:100%}.c-shell__bar{background:var(--color-surface);border-bottom:1px solid var(--color-border)}.c-shell__inner{max-width:1140px;margin:0 auto;padding:var(--space-2) var(--space-4);display:flex;align-items:center;gap:var(--space-4);flex-wrap:wrap}.c-shell__club{display:inline-flex;align-items:center;gap:var(--space-2);font-weight:600;color:var(--color-text);text-decoration:none;padding:var(--space-2) 0}.c-shell__logo{width:28px;height:28px;border-radius:var(--radius-md);flex:none}.c-shell__club:hover{color:var(--color-primary)}.c-shell__club--compact{position:relative}.c-shell__club--compact .c-shell__club-name{position:absolute;top:100%;left:0;z-index:20;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-text);color:var(--color-surface);font-size:var(--text-sm);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity .1s}.c-shell__club--compact:hover .c-shell__club-name,.c-shell__club--compact:focus-visible .c-shell__club-name{opacity:1}.c-usermenu{position:relative}.c-usermenu__button{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer}.c-usermenu__button:hover,.c-usermenu__button[aria-expanded=true]{color:var(--color-primary)}.c-usermenu__panel{position:absolute;top:100%;right:0;z-index:20;min-width:12rem;padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:0 4px 16px #0000001f;display:grid}.c-usermenu__name{margin:0;padding:var(--space-2);border-bottom:1px solid var(--color-border);font-weight:600}.c-usermenu__section{margin:var(--space-2) 0 0;padding:var(--space-2) var(--space-2) var(--space-1);border-top:1px solid var(--color-border);color:var(--color-text-muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.04em}.c-usermenu__item{display:block;width:100%;min-height:44px;padding:var(--space-2);border:0;border-radius:var(--radius-sm);background:transparent;color:var(--color-text);font:inherit;text-align:left;text-decoration:none;cursor:pointer}.c-usermenu__item:hover,.c-usermenu__item:focus-visible{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-shell__nav{display:flex;gap:var(--space-4);flex:1;flex-wrap:wrap}.c-shell__nav a{color:var(--color-text-muted);text-decoration:none;padding:var(--space-2) 0;font-weight:600}.c-shell__nav a:hover{color:var(--color-text)}.c-shell__nav a.active{color:var(--color-primary);box-shadow:inset 0 -2px 0 var(--color-primary)}.c-shell__content{max-width:1140px;margin:0 auto;padding:var(--space-5) var(--space-4)}.c-shell__content--narrow{max-width:480px}.c-shell__content--reading{max-width:760px}.c-shell__notice{margin-bottom:var(--space-5)}.c-shell__footer{border-top:1px solid var(--color-border);margin-top:var(--space-7)}.c-shell__footer a{color:var(--color-text-muted);font-size:var(--text-sm);padding:var(--space-2) 0}@media (max-width: 640px){.c-shell__inner{gap:var(--space-2)}.c-shell__nav{order:3;width:100%;gap:var(--space-3)}.c-shell__nav a{font-size:var(--text-sm)}}.c-bell{position:relative;display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;color:var(--color-text-muted);border-radius:var(--radius-md)}.c-bell:hover,.c-bell.active{color:var(--color-primary)}.c-bell__count{position:absolute;top:4px;right:2px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:var(--color-danger);color:var(--color-text-inverse);font-size:11px;font-weight:700;line-height:18px;text-align:center}.c-shell__spacer{flex:1}.c-theme-switch{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;border:0;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer}.c-theme-switch:hover{color:var(--color-primary)}.c-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5)}.c-card__title{margin-bottom:var(--space-4)}@media (max-width: 640px){.c-card{padding:var(--space-4)}}.c-field+.c-field{margin-top:var(--space-4)}.c-field__label{display:block;font-weight:600;margin-bottom:var(--space-1)}.c-field__hint{color:var(--color-text-muted);margin:0 0 var(--space-2)}.c-field__error{color:var(--color-danger);margin:var(--space-1) 0 0}.c-input{display:block;width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font:inherit}.c-input[aria-invalid=true]{border-color:var(--color-danger)}.c-input:disabled{background:var(--color-bg);color:var(--color-text-muted)}.c-page-header{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:space-between;align-items:flex-start;margin-bottom:var(--space-5)}.c-page-header p{margin:var(--space-1) 0 0}.c-app-page__code{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.c-app-page__club{margin:0;font-size:var(--text-lg);font-weight:600}.c-app-page__link{margin:0;color:var(--color-text-muted);font-size:var(--text-sm);word-break:break-all}.c-app-page__steps{padding-left:var(--space-5)}.c-app-card{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4)}.c-app-card p{margin-top:0}.c-app-page__get{display:grid;grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));gap:var(--space-4);margin-top:var(--space-4);align-items:start}.c-app-hint{margin-top:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-app-hint p{margin:0 0 var(--space-1)}.c-app-hint p:last-child{margin-bottom:0}.c-app-hint__title{font-weight:600}@media print{.c-shell__bar,.c-shell__notice,.c-shell__footer,.c-page-header,.c-app-page__steps,.c-app-page__actions,.c-app-page__get,.c-app-page .u-small{display:none!important}.c-app-page .c-card{border:0;box-shadow:none}.c-app-page__club{font-size:var(--text-2xl)}.c-app-page .c-qr{width:12cm;height:12cm}}.c-checkbox{margin-top:var(--space-4)}.c-checkbox__row{display:flex;align-items:flex-start;gap:var(--space-3)}.c-checkbox__input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--color-primary)}.c-checkbox__input[aria-invalid=true]{outline:2px solid var(--color-danger);outline-offset:2px}.c-checkbox__label{min-height:44px;line-height:var(--leading-normal)}.c-inbox__actions{display:flex;justify-content:flex-end;margin-bottom:var(--space-3)}.c-inbox{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-border)}.c-inbox li{border-bottom:1px solid var(--color-border)}.c-inbox__item{display:grid;gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-3) var(--space-3) var(--space-4);border:0;background:none;text-align:left;font:inherit;color:var(--color-text);cursor:pointer}.c-inbox__item:hover{background:var(--color-bg)}.c-inbox__item--unread{background:var(--color-primary-soft);box-shadow:inset 3px 0 0 var(--color-primary);--color-primary: var(--color-primary-strong)}.c-inbox__item--unread .c-inbox__title{font-weight:700}.c-inbox__title{font-weight:600}.c-inbox__pages{display:flex;align-items:center;justify-content:center;gap:var(--space-3);margin-top:var(--space-3)}.c-dialog__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1c1c1a73;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:10}.c-dialog{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--space-5);width:min(480px,100%);max-height:90vh;overflow-y:auto}.c-dialog--wide{width:min(640px,100%)}.c-dialog__body{margin:var(--space-4) 0}.c-dialog__actions{display:flex;flex-wrap:wrap;gap:var(--space-3);justify-content:flex-end}.c-event__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3);align-items:end}.c-event__grid .c-field+.c-field{margin-top:0}.c-event__grid--times{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--space-3)}.c-event__courts,.c-event__scope{margin:var(--space-3) 0;padding:0;border:0}.c-event__courts legend,.c-event__scope legend{font-weight:600;margin-bottom:var(--space-1)}.c-event__scope label{display:block;padding:var(--space-1) 0}.c-event__scope input{accent-color:var(--color-primary)}.c-event__court-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:0 var(--space-3)}.c-event__repeat{margin:var(--space-3) 0}.c-event__description-input{resize:vertical;min-height:80px}.c-event__meta{margin-top:0}.c-event__description{white-space:pre-line}@media (max-width: 640px){.c-event__grid,.c-event__grid--times{grid-template-columns:1fr}}.c-badge{display:inline-block;padding:2px var(--space-2);border-radius:var(--radius-full);border:1px solid var(--color-border-strong);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.c-badge--success{background:var(--color-success-soft);border-color:var(--color-success);color:var(--color-success)}.c-badge--warning{background:var(--color-warning-soft);border-color:var(--color-warning);color:var(--color-warning)}.c-badge--danger{background:var(--color-danger-soft);border-color:var(--color-danger);color:var(--color-danger)}.c-calendar__bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.c-calendar__month{margin:0;font-size:var(--text-lg);min-width:12ch;text-align:center}.c-calendar__spacer{flex:1}.c-month{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.c-month__row{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.c-month__row+.c-month__row{border-top:1px solid var(--color-border)}.c-month__weekday{padding:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--color-text-muted);text-align:center}.c-month__day{min-height:104px;padding:var(--space-1);border-left:1px solid var(--color-border);display:flex;flex-direction:column;gap:2px;min-width:0}.c-month__day:first-child{border-left:0}.c-month__day--other{background:var(--color-bg);color:var(--color-text-muted)}.c-month__date{align-self:flex-start;min-width:28px;min-height:28px;border:0;border-radius:14px;background:none;font:inherit;font-weight:600;color:inherit;cursor:pointer}button.c-month__date:hover{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-month__day--today .c-month__date{background:var(--color-primary);color:var(--color-text-inverse)}.c-month__day ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:2px;min-width:0}.c-month__event{width:100%;border:0;border-radius:4px;padding:1px 4px;font:inherit;font-size:12px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}.c-month__event--league_match,.c-calendar__dot--league_match{background:var(--color-booking-soft);color:var(--color-booking)}.c-month__event--tournament,.c-calendar__dot--tournament{background:var(--color-warning-soft);color:var(--color-warning)}.c-month__event--training,.c-calendar__dot--training{background:var(--color-primary-soft);color:var(--color-primary);--color-primary: var(--color-primary-strong)}.c-month__event--other,.c-calendar__dot--other{background:var(--color-danger-soft);color:var(--color-danger)}.c-calendar__list{margin-top:var(--space-5)}.c-calendar__list ul{list-style:none;margin:0;padding:0;border-top:1px solid var(--color-border)}.c-calendar__list li{border-bottom:1px solid var(--color-border)}.c-calendar__list button{width:100%;display:grid;grid-template-columns:auto 1fr;gap:2px var(--space-2);align-items:center;padding:var(--space-3) var(--space-2);border:0;background:none;font:inherit;text-align:left;cursor:pointer}.c-calendar__list button:hover{background:var(--color-bg)}.c-calendar__list button>.u-small{grid-column:2}.c-calendar__dot{width:10px;height:10px;border-radius:5px;border:2px solid currentColor}@media (max-width: 640px){.c-month__day{min-height:56px}.c-month__event{font-size:0;height:6px;padding:0}.c-month__event span[aria-hidden]{display:none}}.c-calendar__bar .c-button{width:auto}.c-grid__scroll{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.c-grid{display:grid;grid-template-columns:56px repeat(var(--courts),minmax(112px,1fr));grid-template-rows:auto repeat(var(--rows),var(--slot-h));min-width:calc(56px + var(--courts) * 112px)}.c-grid__corner,.c-grid__court{position:sticky;top:0;background:var(--color-surface);border-bottom:1px solid var(--color-border);z-index:2}.c-grid__court{padding:var(--space-2);font-weight:600;font-size:var(--text-sm);text-align:center;border-left:1px solid var(--color-border)}.c-grid__corner,.c-grid__time{position:sticky;left:0;z-index:3;background:var(--color-surface)}.c-grid__time{grid-column:1;padding:2px var(--space-2) 0 0;font-size:12px;color:var(--color-text-muted);text-align:right;border-top:1px solid var(--color-border)}.c-grid__slot{border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);background:var(--color-bg)}.c-grid__slot--free{background:var(--color-surface);border-right:0;border-bottom:0;padding:0;cursor:pointer}.c-grid__slot--free:hover,.c-grid__slot--free:focus-visible{background:var(--color-primary-soft);outline:2px solid var(--color-primary);outline-offset:-2px;--color-primary: var(--color-primary-strong)}.c-grid__item{margin:2px;padding:4px 6px;border-radius:var(--radius-md);border:0;overflow:hidden;text-align:left;font:inherit;font-size:12px;line-height:1.3;display:flex;flex-direction:column;gap:1px;z-index:1}button.c-grid__item{cursor:pointer}button.c-grid__item:focus-visible{outline:2px solid var(--color-text);outline-offset:1px}.c-grid__label{font-weight:600}.c-grid__detail{opacity:.85}.c-grid__item--booking{background:var(--color-booking-soft);color:var(--color-booking)}.c-grid__item--mine{background:var(--color-primary);color:var(--color-text-inverse)}.c-grid__item--event{background:var(--color-warning-soft);color:var(--color-warning);box-shadow:inset 3px 0 0 var(--color-warning)}.c-grid__item--blocked{background:repeating-linear-gradient(45deg,var(--color-bg),var(--color-bg) 6px,var(--color-border) 6px,var(--color-border) 8px);color:var(--color-text-muted)}.c-grid__onsite,.c-grid__slot--onsite{border-left:1px solid var(--color-border);border-top:1px solid var(--color-border);background-color:var(--color-surface);background-image:radial-gradient(var(--color-border) 1px,transparent 1.5px);background-size:8px 8px}.c-grid__onsite{display:flex;align-items:flex-start;justify-content:center;padding:var(--space-1);font-size:12px;color:var(--color-text-muted);text-align:center}.c-daynav{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-4)}.c-daynav__label{margin:0;font-size:var(--text-lg);min-width:15ch;text-align:center}.c-daynav__picker,.c-daynav .c-button{width:auto}@media (max-width: 640px){.c-daynav__label{order:-1;flex-basis:100%;text-align:left}}.c-booking__when{font-weight:600;margin-top:0}.c-booking__players{margin:var(--space-4) 0}.c-booking__chips{list-style:none;margin:0 0 var(--space-3);padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.c-booking__chip{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border-radius:999px;background:var(--color-primary-soft);color:var(--color-primary);font-weight:600;--color-primary: var(--color-primary-strong)}.c-booking__chip button{border:0;background:none;color:inherit;font-size:18px;line-height:1;cursor:pointer;min-width:24px;min-height:24px}.c-booking__results{list-style:none;margin:calc(-1 * var(--space-2)) 0 var(--space-3);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md)}.c-booking__results button{width:100%;padding:var(--space-2) var(--space-3);border:0;background:none;text-align:left;font:inherit;cursor:pointer}.c-booking__results li+li{border-top:1px solid var(--color-border)}.c-booking__results button:hover,.c-booking__results button:focus-visible{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-booking__problems{margin:var(--space-3) 0 0;padding-left:var(--space-5);color:var(--color-warning)}.c-plan__banner{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.c-plan__chip{border:1px solid var(--color-warning);background:var(--color-warning-soft);color:var(--color-text);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);font:inherit;cursor:pointer}.c-mybookings{list-style:none;margin:0;padding:0}.c-mybookings__item{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--color-border)}.c-mybookings__item:last-child{border-bottom:0}.c-mybookings__actions{display:flex;align-items:center;gap:var(--space-3)}.c-mybookings__quota{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}.c-mybookings__quota li{display:grid;gap:2px}@media (max-width: 640px){.c-mybookings__quota{grid-template-columns:1fr}}.c-ladder__toolbar{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin-bottom:var(--space-3)}.c-ladder__toolbar .c-button{width:auto}.c-ladders{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:var(--space-3)}.c-ladders__card{display:grid;gap:var(--space-1);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);color:var(--color-text);text-decoration:none}.c-ladders__card:hover{border-color:var(--color-primary)}.c-ladders__name{font-weight:700;font-size:var(--text-lg)}.c-ladders__meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.c-ranking,.c-manage{list-style:none;margin:0;padding:0}.c-ranking__row,.c-manage li{display:grid;grid-template-columns:40px 1fr auto auto;gap:var(--space-2) var(--space-3);align-items:center;padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.c-manage li{grid-template-columns:40px 1fr auto auto auto}.c-ranking__row:last-child,.c-manage li:last-child{border-bottom:0}.c-ranking__row--me{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-ranking__position{font-weight:700;text-align:center;color:var(--color-text-muted)}.c-ranking__row .c-button,.c-manage .c-button{width:auto;min-height:36px;padding:var(--space-1) var(--space-3)}.c-ladder__history{list-style:none;margin:0;padding:0}.c-ladder__history li{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--color-border)}.c-ladder__history .c-button{width:auto}.c-ladder__subhead{margin:var(--space-4) 0 var(--space-1);font-size:var(--text-md)}.c-ladder__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);align-items:end}.c-ladder__grid .c-field+.c-field{margin-top:0}@media (max-width: 640px){.c-ladder__grid{grid-template-columns:1fr}.c-ranking__row{grid-template-columns:32px 1fr auto}.c-ranking__row>.u-small{grid-column:2}}.c-public__tabs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.c-public__tabs a{padding:var(--space-2) 0;font-weight:600;color:var(--color-text-muted);text-decoration:none}.c-public__tabs a.active{color:var(--color-primary);box-shadow:inset 0 -2px 0 var(--color-primary)}.c-public__spacer{flex:1}.c-public__events{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-2)}.c-public__events button{border:1px solid var(--color-warning);background:var(--color-warning-soft);border-radius:var(--radius-md);padding:var(--space-1) var(--space-3);font:inherit;cursor:pointer}.c-profile__meta{display:grid;grid-template-columns:max-content 1fr;gap:var(--space-1) var(--space-4);margin:0 0 var(--space-5);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.c-profile__meta dt{color:var(--color-text-muted);font-size:var(--text-sm)}.c-profile__meta dd{margin:0}@media (max-width: 640px){.c-profile__meta{grid-template-columns:1fr;gap:0}.c-profile__meta dd{margin-bottom:var(--space-2)}}.c-profile__permissions{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-1)}.c-delivery{margin:0 0 var(--space-4);padding:0;border:0;display:grid;gap:var(--space-2)}.c-delivery legend{font-weight:600;margin-bottom:var(--space-2)}.c-delivery__option{display:grid;grid-template-columns:auto 1fr;gap:var(--space-2);align-items:start;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer}.c-delivery__option:has(input:checked){border-color:var(--color-primary);background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-delivery__option input{accent-color:var(--color-primary);width:18px;height:18px;margin:2px 0 0}.c-delivery__option>span{display:grid;gap:2px}.c-delivery__when{display:grid;grid-template-columns:repeat(2,minmax(0,220px));gap:var(--space-3);margin-bottom:var(--space-3)}.c-delivery__when .c-field+.c-field{margin-top:0}@media (max-width: 640px){.c-delivery__when{grid-template-columns:1fr}}.c-table__scroll{overflow-x:auto}.c-table{width:100%;border-collapse:collapse;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);overflow:hidden}.c-table th,.c-table td{text-align:left;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-border);vertical-align:top}.c-table th{font-size:var(--text-sm);color:var(--color-text-muted);background:var(--color-bg)}.c-table tbody tr:last-child td{border-bottom:none}@media (max-width: 640px){.c-table,.c-table tbody,.c-table tr,.c-table td{display:block;width:100%}.c-table thead{display:none}.c-table tr{border-bottom:1px solid var(--color-border);padding:var(--space-2) 0}.c-table td{border-bottom:none;padding:var(--space-1) var(--space-4)}.c-table td:before{content:attr(data-label);display:block;font-size:var(--text-xs);color:var(--color-text-muted)}}.c-members__filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-5)}.c-members__filters .c-field+.c-field{margin-top:0}.c-members__actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.c-members__actions .c-button{min-height:36px;padding:var(--space-1) var(--space-3)}@media (max-width: 960px){.c-members__filters{grid-template-columns:1fr 1fr}}@media (max-width: 640px){.c-members__filters{grid-template-columns:1fr}.c-members__actions .c-button{width:auto}}.c-members__permissions{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}.c-permissions{max-height:60vh;overflow-y:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.c-permissions__table{width:100%;border-collapse:collapse}.c-permissions__table th{position:sticky;top:0;background:var(--color-surface);text-align:left;font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600}.c-permissions__table th,.c-permissions__table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);vertical-align:top}.c-permissions__table tr:last-child td{border-bottom:0}.c-permissions__table td:first-child,.c-permissions__table th:first-child{width:1%;padding-right:0}.c-permissions__table input{width:18px;height:18px;margin:2px 0 0}.c-permissions__table label{font-weight:600;white-space:nowrap}.c-secret{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1)}.c-secret .c-field{width:100%}.c-email-settings__error{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:var(--text-sm);overflow-wrap:anywhere;margin:0}.c-email-settings__fields{border:0;margin:0;padding:0;min-inline-size:0}.c-settings-nav{display:flex;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.c-settings-nav a{color:var(--color-text-muted);text-decoration:none;padding:var(--space-2) 0;font-weight:600}.c-settings-nav a:hover{color:var(--color-text)}.c-settings-nav a.active{color:var(--color-primary);box-shadow:inset 0 -2px 0 var(--color-primary)}.c-courts__add{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-5)}.c-courts__add .c-field{margin:0}.c-courts__order,.c-courts__actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}.c-courts__order .c-button,.c-courts__actions .c-button{min-height:36px;padding:var(--space-1) var(--space-2)}@media (max-width: 640px){.c-courts__add{grid-template-columns:1fr}}.c-hours{display:grid;gap:var(--space-3);margin-top:var(--space-4)}.c-hours__day,.c-hours__copy{display:grid;gap:var(--space-2);justify-items:start;border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;padding:var(--space-3)}.c-hours__copy{margin-top:var(--space-4)}.c-hours__weekday{font-weight:600;padding:0 var(--space-1)}.c-hours__window{justify-self:stretch;display:grid;grid-template-columns:1fr 1fr auto;gap:var(--space-2);align-items:end}.c-hours__window .c-field{margin:0}@media (max-width: 640px){.c-hours__window{grid-template-columns:1fr 1fr}}.c-rules__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3) var(--space-4);align-items:end}.c-rules__grid .c-field+.c-field{margin-top:0}.c-rules__season{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3) var(--space-4);margin-top:var(--space-3)}.c-rules__season>p{grid-column:1 / -1;margin:0}.c-rules__day{display:grid;grid-template-columns:1fr 2fr;gap:var(--space-2);margin:0;padding:0;border:0}.c-rules__day legend{font-weight:600;margin-bottom:var(--space-1)}.c-rules__day .c-field+.c-field{margin-top:0}@media (max-width: 960px){.c-rules__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.c-rules__grid,.c-rules__season{grid-template-columns:1fr}}.c-legal{line-height:var(--leading-normal)}.c-legal h1{margin-top:0}.c-legal h2{font-size:var(--text-lg);margin-top:var(--space-6)}.c-legal__summary{background:var(--color-surface);border:1px solid var(--color-border);border-left:4px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin:var(--space-4) 0 var(--space-5)}.c-legal__summary h2{margin-top:0}.c-legal__note{color:var(--color-text-muted);font-size:var(--text-sm);margin-bottom:0}.c-legal__body table{display:block;overflow-x:auto;border-collapse:collapse;font-size:var(--text-sm)}.c-legal__body th,.c-legal__body td{border:1px solid var(--color-border);padding:var(--space-2) var(--space-3);text-align:left;vertical-align:top}.c-legal__version{margin-top:var(--space-5)}.c-children{list-style:none;margin:0 0 var(--space-3);padding:0}.c-children li{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0}.c-children li+li{border-top:1px solid var(--color-border)}.c-children__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:0 var(--space-4);align-items:end}.c-children__subhead{margin:var(--space-4) 0 var(--space-1);font-size:var(--text-md)}.c-children__results{list-style:none;margin:calc(-1 * var(--space-2)) 0 var(--space-3);padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md)}.c-children__results button{width:100%;padding:var(--space-2) var(--space-3);border:0;background:none;text-align:left;font:inherit;cursor:pointer}.c-children__results li+li{border-top:1px solid var(--color-border)}.c-children__results button:hover,.c-children__results button:focus-visible{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-children__handover{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-3)}.c-children__handover>:first-child{flex:1 1 16rem}.c-start{display:flex;flex-direction:column;gap:var(--space-4)}.c-start>.c-alert,.c-start>p{margin:0}.c-start__pending{display:flex;margin:0;white-space:nowrap}.c-start__pending a{flex:none}.c-start__names{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:pre}.c-start__columns{display:grid;gap:var(--space-4);align-items:start}.c-start__column{display:flex;flex-direction:column;gap:var(--space-4);min-width:0}.c-start__list{list-style:none;margin:0;padding:0}.c-start__list li{display:flex;flex-direction:column;gap:var(--space-1);padding:var(--space-2) 0}.c-start__list li+li{border-top:1px solid var(--color-border)}.c-start__links{margin:var(--space-3) 0 0}.c-terminal{min-height:100vh;padding:var(--space-4) var(--space-5);background:var(--color-bg);font-size:1.125rem}.c-terminal--register{max-width:36rem;margin:0 auto;padding-top:var(--space-6)}.c-terminal__register{display:grid;gap:var(--space-3)}.c-terminal__admin{margin:0 0 var(--space-3);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-warning-soft);color:var(--color-warning);font-weight:600}.c-terminal__bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-4)}.c-terminal__club{margin:0;font-size:var(--text-2xl);font-weight:700}.c-terminal__tabs{display:flex;gap:var(--space-2)}.c-terminal__tab{min-height:56px;min-width:8rem;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font:inherit;font-weight:600;cursor:pointer}.c-terminal__tab[aria-current=page]{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-inverse)}.c-terminal__view{display:grid;gap:var(--space-3)}.c-terminal__hint{margin:0;color:var(--color-text-muted)}.c-terminal .c-grid{--slot-h: 56px !important}.c-terminal__chips{display:flex;flex-wrap:wrap;gap:var(--space-2);margin:0 0 var(--space-3);padding:0;list-style:none}.c-terminal__chip{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);background:var(--color-primary-soft);font-weight:600;--color-primary: var(--color-primary-strong)}.c-terminal__chip button{min-width:44px;min-height:44px;border:0;background:transparent;font-size:1.25rem;cursor:pointer}.c-terminal__keypad{display:grid;grid-template-columns:repeat(auto-fill,minmax(3.25rem,1fr));gap:var(--space-1);margin:0 0 var(--space-3)}.c-terminal__keypad button{min-height:52px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font:inherit;font-weight:600;cursor:pointer;touch-action:manipulation}.c-terminal__keypad button:active{background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-terminal__key--wide{grid-column:span 2}.c-terminal__results{display:grid;gap:var(--space-2);margin:0 0 var(--space-3);padding:0;list-style:none}.c-terminal__results button{width:100%;min-height:56px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font:inherit;text-align:left;cursor:pointer}.c-terminal__problems{color:var(--color-warning)}.c-terminal__ladders{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr));align-items:start}.c-terminal__ladder{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.c-terminal__ladder h2{margin-top:0}.c-terminal__ladder ol{margin:0;padding-left:var(--space-5);line-height:1.8}.c-terminal__week-bar{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}.c-terminal__week-bar .c-button{min-height:56px;min-width:56px}.c-terminal__week-title{margin:0;font-size:var(--text-xl)}.c-terminal__week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:var(--space-2);margin:0;padding:0;list-style:none}.c-terminal__day{min-height:12rem;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.c-terminal__day--today{border-color:var(--color-primary);box-shadow:inset 0 3px 0 var(--color-primary)}.c-terminal__day-name{display:flex;justify-content:space-between;gap:var(--space-2);margin:0 0 var(--space-2);font-size:1rem}.c-terminal__day-name span{color:var(--color-text-muted);font-weight:400}.c-terminal__day ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.c-terminal__event{display:grid;gap:2px;padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-warning-soft);box-shadow:inset 3px 0 0 var(--color-warning);font-size:.95rem}@media (max-width: 960px){.c-terminal__week{grid-template-columns:1fr}.c-terminal__day{min-height:0}}.c-terminal-settings__add{display:grid;grid-template-columns:1fr auto;gap:var(--space-3);align-items:end;margin-bottom:var(--space-4)}.c-terminal-settings__add .c-field{margin:0}.c-terminal-settings__code{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;margin-bottom:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-primary-soft);--color-primary: var(--color-primary-strong)}.c-terminal-settings__code p{margin:0 0 var(--space-2);word-break:break-all}.c-terminal-settings__secret{font-family:ui-monospace,monospace;font-size:var(--text-xl);letter-spacing:.15em}.c-terminal-settings__actions{display:inline-flex;flex-wrap:wrap;gap:var(--space-1)}@media (max-width: 640px){.c-terminal-settings__add{grid-template-columns:1fr}}.c-switch{position:relative;display:inline-flex;align-items:center;gap:var(--space-3);min-height:44px;cursor:pointer;font-weight:600}.c-switch__input{position:absolute;top:50%;left:0;z-index:1;width:48px;height:28px;margin:-14px 0 0;opacity:0;cursor:pointer}.c-switch__track{position:relative;flex:none;width:48px;height:28px;border-radius:var(--radius-full);background:var(--color-border);transition:background .15s}.c-switch__track:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--color-surface);box-shadow:0 1px 3px #00000040;transition:transform .15s}.c-switch__input:checked+.c-switch__track{background:var(--color-primary)}.c-switch__input:checked+.c-switch__track:after{transform:translate(20px)}.c-switch__input:focus-visible+.c-switch__track{outline:2px solid var(--color-primary);outline-offset:2px}.c-switch__input:disabled+.c-switch__track{opacity:.6}:root{color-scheme:light;--color-bg: #fbfdfc;--color-surface: #ffffff;--color-border: #d7dad9;--color-border-strong: #b8bcba;--color-text: #1a211e;--color-text-muted: #5f6563;--color-text-inverse: #ffffff;--color-primary: #218358;--color-primary-hover: #193b2d;--color-primary-soft: #e6f6eb;--color-primary-strong: #193b2d;--color-danger: #ce2c31;--color-danger-soft: #fff7f7;--color-warning: #4f3422;--color-warning-soft: #fff7c2;--color-success: #193b2d;--color-success-soft: #e6f6eb;--color-booking: #113264;--color-booking-soft: #e6f4fe;--focus-ring: 0 0 0 3px rgba(33, 131, 88, .35);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .06);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--space-8: 64px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 10px;--radius-full: 999px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--text-xs: 12px;--text-sm: 14px;--text-md: 16px;--text-lg: 20px;--text-xl: 26px;--text-2xl: 32px;--leading-tight: 1.25;--leading-normal: 1.55}:root[data-theme=dark]{color-scheme:dark;--color-bg: #101211;--color-surface: #171918;--color-border: #373b39;--color-border-strong: #5b625f;--color-text: #eceeed;--color-text-muted: #adb5b2;--color-text-inverse: #101211;--color-primary: #3dd68c;--color-primary-hover: #b1f1cb;--color-primary-soft: #132d21;--color-primary-strong: #b1f1cb;--color-danger: #ff9592;--color-danger-soft: #3b1219;--color-warning: #ffca16;--color-warning-soft: #302008;--color-success: #3dd68c;--color-success-soft: #132d21;--color-booking: #70b8ff;--color-booking-soft: #0d2847;--focus-ring: 0 0 0 3px rgba(61, 214, 140, .45);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow-md: 0 4px 12px rgba(0, 0, 0, .5)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-md);line-height:var(--leading-normal);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}h1,h2,h3{line-height:var(--leading-tight);margin:0;font-weight:600}h1{font-size:var(--text-xl)}h2{font-size:var(--text-lg)}p{margin:0 0 var(--space-3)}a{color:var(--color-primary)}img{max-width:100%}:focus-visible{outline:none;box-shadow:var(--focus-ring);border-radius:var(--radius-sm)}.u-muted{color:var(--color-text-muted)}.u-small{font-size:var(--text-sm)}.u-stack>*+*{margin-top:var(--space-4)}.c-form-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.u-row{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center}.u-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
