@charset "UTF-8";:root{--color-primary: #B9FF00;--color-primary-bg: #F5FCDD;--color-primary-hover: #92CC00;--color-primary-text: #222222;--color-primary-strong: #5C8700;--color-surface: #FFFFFF;--color-background: #FAFAFA;--color-text-primary: #222222;--color-text-secondary: #6A6A6A;--color-text-placeholder: #6C6C6C;--color-border: #6C6C6C;--color-border-light: #DDDDDD;--color-divider: #E0E0E0;--color-error: #D32F2F;--color-error-hover: #b71c1c;--color-error-bg: #fef2f2;--color-success: #2e7d32;--color-success-bg: #e8f5e9;--color-warning: #e65100;--color-warning-bg: #FEF9F0;--color-neutral-bg: #fafafa;--color-input-disabled-bg: #f1f1f1;--color-status-green: #29C740;--color-status-amber: #FDBC2E;--color-status-red: #FF5F57;--color-status-grey: #B0B0B0;--color-primary-bg-light: #FAFEEF;--color-overlay: rgba(0, 0, 0, .5);--font-family: -apple-system, BlinkMacSystemFont, "Inter", sans-serif;--font-size-body: 16px;--font-size-small: 14px;--font-size-caption: 12px;--font-size-heading: 26px;--font-weight-regular: 400;--font-weight-medium: 500;--font-weight-bold: 500;--line-height-body: 1.4;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-12: 48px;--radius-input: 12px;--radius-button: 12px;--radius-card: 16px;--radius-checkbox: 4px;--radius-pill: 999px;--shadow-card: 0 1px 2px rgba(0, 0, 0, .03), 0 4px 12px rgba(0, 0, 0, .03);--input-height: 60px;--control-height: 44px;--button-height: 56px;--login-card-max-width: 420px;--confirm-modal-max-width: 400px;--logo-height: 56px;--touch-target-min: 44px;--status-dot-size: 10px;--badge-padding-y: 2px;--badge-padding-x: var(--space-2);--loading-dot-size: 8px;--loading-dot-gap: 6px;--loading-dots-duration: 1.4s;--btn-radius: var(--radius-button);--btn-gap: var(--space-2);--btn-padding-x: var(--space-4);--btn-height-sm: var(--touch-target-min);--btn-height-md: var(--button-height);--btn-font-size-sm: var(--font-size-small);--btn-font-size-md: var(--font-size-body);--btn-primary-bg: var(--color-primary);--btn-primary-color: var(--color-primary-text);--btn-primary-hover-bg: var(--color-primary-hover);--btn-secondary-bg: var(--color-neutral-bg);--btn-secondary-color: var(--color-text-primary);--btn-secondary-hover-bg: var(--color-divider);--btn-danger-bg: var(--color-error);--btn-danger-color: var(--color-surface);--btn-danger-hover-bg: var(--color-error-hover);--btn-dark-bg: var(--color-text-primary);--btn-dark-color: var(--color-surface);--btn-dark-hover-bg: var(--color-text-secondary);--btn-ghost-color: var(--color-primary-strong);--btn-ghost-hover-bg: var(--color-primary-bg-light);--btn-ghost-danger-color: var(--color-error);--btn-ghost-danger-hover-bg: var(--color-error-bg);--btn-outline-bg: var(--color-surface);--btn-outline-color: var(--color-text-primary);--btn-outline-border: var(--color-border-light);--btn-outline-hover-border: var(--color-primary);--transition-default: .2s ease;--focus-ring: var(--color-text-primary);--z-index-modal: 1000;--z-index-dropdown: 1100;--sidebar-width: 240px;--sidebar-logo-height: 26px;--color-sidebar-bg: var(--color-surface);--color-sidebar-text: var(--color-text-primary);--color-sidebar-text-muted: var(--color-text-secondary);--color-sidebar-hover: #E5E5E5;--color-sidebar-active: #DCDCDC}:root{--fieldsBackgroundColor: var(--color-surface);--fieldsBorderColor: var(--color-border);--fieldsBorderRadius: var(--radius-input);--fieldsHeight: var(--input-height);--primaryColor: var(--color-text-primary);--hoverColor: var(--color-text-primary);--blackColor: var(--color-text-primary);--whiteColor: var(--color-surface);--backgroundColor: var(--color-text-primary);--darkestGreyColor: var(--color-text-primary);--darkGreyColor: var(--color-text-secondary);--greyColor: var(--color-border-light);--lightGreyColor: var(--color-primary-bg);--errorColor: var(--color-error);--bodyTextSize: var(--font-size-body);--bodyFontWeight: var(--font-weight-medium);--bodyTextLineHeight: var(--line-height-body);--normalTextSize: var(--font-size-small);--normalFontWeight: var(--font-weight-regular);--normalTextLineHeight: var(--line-height-body);--smallTextSize: var(--font-size-caption)}:root{--radius-pill: 100px;--invitation-card-max-width: 480px;--modal-card-max-width: 420px;--photo-thumb-min: 140px;--photo-thumb-aspect: 4 / 3;--border-width-emphasis: 2px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{min-height:100vh;min-height:100dvh}img,svg{display:block;max-width:100%}button,input{font:inherit;color:inherit;border:none;background:none;outline:none}button{cursor:pointer;-webkit-appearance:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}body{font-family:var(--font-family);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);color:var(--color-text-primary);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-medium)}::placeholder{color:var(--color-text-placeholder)}:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:18px;height:18px;margin:0;flex-shrink:0;display:inline-grid;place-content:center;border:1.5px solid var(--color-border-light);border-radius:var(--radius-checkbox);background:var(--color-surface);cursor:pointer;transition:background var(--transition-default),border-color var(--transition-default)}input[type=checkbox]:hover:not(:disabled){border-color:var(--color-primary)}input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}input[type=checkbox]:checked:after{content:"";width:4px;height:9px;margin-top:-2px;border:solid var(--color-primary-text);border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=checkbox]:disabled{opacity:.5;cursor:not-allowed}.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}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.modal-card{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-6);width:100%;max-width:var(--modal-card-max-width)}.modal-card__title{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-5)}.modal-card__error{padding:var(--space-3);margin-bottom:var(--space-4);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.modal-form{display:flex;flex-direction:column;gap:var(--space-4)}.modal-form__row{display:flex;gap:var(--space-4)}.modal-form__row .modal-form__field{flex:1;min-width:0}.modal-form__field{display:flex;flex-direction:column;gap:var(--space-1)}.modal-form__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.modal-form__input{height:var(--touch-target-min);padding:0 var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-input);font-size:var(--font-size-body);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-surface);transition:border-color var(--transition-default)}.modal-form__input--textarea{height:auto;padding:var(--space-3);min-height:80px;resize:vertical}.modal-form__input:focus{outline:none;border-color:var(--color-primary)}.modal-form__input--error,.modal-form__input--error:focus{border-color:var(--color-error)}.modal-form__field-help{margin:0;font-size:var(--font-size-caption);color:var(--color-text-secondary)}.modal-form__field-error{margin:0;font-size:var(--font-size-caption);color:var(--color-error)}.modal-card__actions{display:flex;gap:var(--space-3);justify-content:flex-end;flex-wrap:wrap;margin-top:var(--space-2)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--btn-gap);padding-inline:var(--btn-padding-x);border:none;cursor:pointer;text-decoration:none;font-family:var(--font-family);font-weight:var(--font-weight-medium);border-radius:var(--btn-radius);transition:background var(--transition-default),color var(--transition-default),opacity var(--transition-default)}.btn--block{width:100%}.btn--sm{height:var(--btn-height-sm);font-size:var(--btn-font-size-sm)}.btn--md{height:var(--btn-height-md);font-size:var(--btn-font-size-md)}.btn--primary{background:var(--btn-primary-bg);color:var(--btn-primary-color)}.btn--primary:hover:not(:disabled),.btn--primary:focus-visible:not(:disabled){background:var(--btn-primary-hover-bg)}.btn--secondary{background:var(--btn-secondary-bg);color:var(--btn-secondary-color)}.btn--secondary:hover:not(:disabled),.btn--secondary:focus-visible:not(:disabled){background:var(--btn-secondary-hover-bg)}.btn--danger{background:var(--btn-danger-bg);color:var(--btn-danger-color)}.btn--danger:hover:not(:disabled),.btn--danger:focus-visible:not(:disabled){background:var(--btn-danger-hover-bg)}.btn--dark{background:var(--btn-dark-bg);color:var(--btn-dark-color)}.btn--dark:hover:not(:disabled),.btn--dark:focus-visible:not(:disabled){background:var(--btn-dark-hover-bg)}.btn--ghost{background:transparent;color:var(--btn-ghost-color)}.btn--ghost:hover:not(:disabled),.btn--ghost:focus-visible:not(:disabled){background:var(--btn-ghost-hover-bg)}.btn--ghost-danger{background:transparent;color:var(--btn-ghost-danger-color)}.btn--ghost-danger:hover:not(:disabled),.btn--ghost-danger:focus-visible:not(:disabled){background:var(--btn-ghost-danger-hover-bg)}.btn--outline{background:var(--btn-outline-bg);color:var(--btn-outline-color);border:1px solid var(--btn-outline-border)}.btn--outline:hover:not(:disabled),.btn--outline:focus-visible:not(:disabled){border-color:var(--btn-outline-hover-border)}.btn--outline-danger{background:var(--btn-outline-bg);color:var(--btn-danger-bg);border:1px solid var(--btn-danger-bg)}.btn--outline-danger:hover:not(:disabled),.btn--outline-danger:focus-visible:not(:disabled){background:var(--btn-ghost-danger-hover-bg)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn--loading:disabled{opacity:1;cursor:progress}.btn__label--hidden{display:none}.loading-dots{display:inline-flex;align-items:center;gap:var(--loading-dot-gap)}.loading-dots__dot{width:var(--loading-dot-size);height:var(--loading-dot-size);border-radius:var(--radius-pill);background:currentColor;animation:loading-dots-pulse var(--loading-dots-duration) ease-in-out infinite}.loading-dots__dot:nth-child(2){animation-delay:calc(var(--loading-dots-duration) / 6)}.loading-dots__dot:nth-child(3){animation-delay:calc(var(--loading-dots-duration) / 3)}@keyframes loading-dots-pulse{0%,80%,to{opacity:.35;transform:scale(.8)}40%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.loading-dots__dot{animation:none;opacity:.7}}.confirm-modal{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);display:flex;align-items:center;justify-content:center;z-index:var(--z-index-modal);padding:var(--space-4)}.confirm-modal__card{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-6);width:100%;max-width:var(--confirm-modal-max-width);box-shadow:var(--shadow-card)}.confirm-modal__title{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-3)}.confirm-modal__message{font-size:var(--font-size-small);color:var(--color-text-secondary);margin:0 0 var(--space-6);line-height:var(--line-height-body)}.confirm-modal__actions{display:flex;gap:var(--space-3);justify-content:flex-end}.logo-wm{--logo-wm-ink: var(--color-text-primary);--logo-wm-stroke-width: 2.2;--logo-wm-draw-duration: .62s;--logo-wm-ink-duration: .42s;--logo-wm-stagger: .16s;--logo-wm-ease-draw: cubic-bezier(.16, 1, .3, 1);display:block;overflow:visible}.logo-wm__letter{fill:var(--logo-wm-ink)}.logo-wm--animate .logo-wm__letter{stroke:var(--logo-wm-ink);stroke-width:var(--logo-wm-stroke-width);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1;fill-opacity:0;animation:logo-wm-draw var(--logo-wm-draw-duration) var(--logo-wm-ease-draw) calc(var(--i) * var(--logo-wm-stagger)) both,logo-wm-ink var(--logo-wm-ink-duration) ease-out calc(var(--i) * var(--logo-wm-stagger) + var(--logo-wm-draw-duration) * .55) both}@keyframes logo-wm-draw{0%{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes logo-wm-ink{0%{fill-opacity:0;stroke-opacity:1}to{fill-opacity:1;stroke-opacity:0}}@media(prefers-reduced-motion:reduce){.logo-wm--animate .logo-wm__letter{animation:none;fill-opacity:1;stroke-opacity:0}}.status-dot{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-text-primary)}.status-dot__bullet{width:var(--status-dot-size);height:var(--status-dot-size);border-radius:var(--radius-pill);flex-shrink:0;background:var(--status-dot-color)}.status-dot--green{--status-dot-color: var(--color-status-green)}.status-dot--amber{--status-dot-color: var(--color-status-amber)}.status-dot--red{--status-dot-color: var(--color-status-red)}.status-dot--grey{--status-dot-color: var(--color-status-grey)}.staff{margin-top:var(--space-8);padding:var(--space-5);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-card)}.staff__title{font-size:var(--font-size-subheading);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin:0 0 var(--space-4)}.staff__subtitle{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);margin:var(--space-5) 0 var(--space-2)}.staff__banner{padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);font-size:var(--font-size-small);margin-bottom:var(--space-4)}.staff__banner--success{background:var(--color-success-bg);color:var(--color-success)}.staff__banner--error{background:var(--color-error-bg);color:var(--color-error)}.staff__invite{display:flex;flex-direction:column;gap:var(--space-3);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border-light)}.staff__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.staff__row{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap;padding:var(--space-3) var(--space-4);background:var(--color-background);border-radius:var(--radius-input)}.staff__who{display:flex;flex-direction:column;min-width:0;flex:1}.staff__name{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-primary);word-break:break-word}.staff__email{font-size:var(--font-size-caption);color:var(--color-text-secondary);word-break:break-word}.staff__member{display:flex;flex-direction:column;background:var(--color-background);border-radius:var(--radius-input)}.staff__member .staff__row{background:transparent}.staff__access{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-4);border-top:1px solid var(--color-border-light)}.staff__access--invite{padding:0;border-top:none}.staff__presets{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.staff__presets-label{font-size:var(--font-size-caption);color:var(--color-text-secondary)}.staff__scopes{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}@media(min-width:640px){.staff__scopes{grid-template-columns:1fr 1fr}}.staff__check{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-small);color:var(--color-text-primary);cursor:pointer}.staff__check input{width:1.1rem;height:1.1rem;accent-color:var(--color-primary-strong);cursor:pointer}.staff__access-actions{display:flex;gap:var(--space-2)}.staff__empty{font-size:var(--font-size-small);color:var(--color-text-secondary);margin:0}.staff__state{display:flex;align-items:center;gap:var(--space-3);font-size:var(--font-size-small);color:var(--color-text-secondary);padding:var(--space-4) 0}.staff__field-error{font-size:var(--font-size-caption);color:var(--color-error);margin:0}.staff__submit{align-self:flex-start}.badge{display:inline-flex;align-items:center;gap:var(--space-1);padding:var(--badge-padding-y) var(--badge-padding-x);border-radius:var(--radius-pill);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);font-variant-numeric:tabular-nums;white-space:nowrap}.badge--neutral{background:var(--color-divider);color:var(--color-text-secondary)}.badge--muted{background:var(--color-background);color:var(--color-text-secondary)}.badge--info{background:var(--color-primary-bg-light);color:var(--color-primary-strong)}.badge--success{background:var(--color-success-bg);color:var(--color-success)}.badge--warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge--error{background:var(--color-error-bg);color:var(--color-error)}.chip{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-pill);background:var(--color-surface);color:var(--color-text-primary);font-family:var(--font-family);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-default),border-color var(--transition-default),color var(--transition-default)}.chip--md{min-height:var(--touch-target-min);padding:var(--space-2) var(--space-4);font-size:var(--font-size-small)}.chip--sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-caption)}.chip:hover:not(:disabled),.chip:focus-visible:not(:disabled){border-color:var(--color-primary)}.chip--active,.chip--active:hover{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-text-primary)}.chip:disabled{opacity:.6;cursor:not-allowed}.booking-summary{display:flex;flex-direction:column;gap:var(--space-2);margin:0 0 var(--space-5);padding:var(--space-4);border-radius:var(--radius-input);background:var(--color-neutral-bg)}.booking-summary__row{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.booking-summary__label{font-size:var(--font-size-small);color:var(--color-text-secondary)}.booking-summary__value{margin:0;font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-primary);text-align:right}.booking-summary__value--reason{font-weight:var(--font-weight-medium)}.layout{display:flex;min-height:100vh;min-height:100dvh}.layout__menu-toggle{position:fixed;top:var(--space-4);left:var(--space-4);z-index:90;width:var(--touch-target-min);height:var(--touch-target-min);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-card);cursor:pointer;transition:background var(--transition-default)}@media(hover:hover){.layout__menu-toggle:hover{background:var(--color-sidebar-hover)}}.layout__menu-toggle svg{width:24px;height:24px}.layout__backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--color-overlay);z-index:99}.layout__sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;height:100dvh;background:var(--color-sidebar-bg);display:flex;flex-direction:column;z-index:100;transform:translate(-100%);transition:transform var(--transition-default)}.layout__sidebar--open{transform:translate(0)}.sidebar__header{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);padding:var(--space-5) var(--space-5);border-bottom:1px solid var(--color-sidebar-hover)}.sidebar__logo{height:var(--sidebar-logo-height);width:auto}.sidebar__role{font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);letter-spacing:.08em;text-transform:uppercase;color:var(--color-sidebar-text-muted)}.sidebar__nav{flex:1;padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-1)}.sidebar__link{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);color:var(--color-sidebar-text-muted);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);text-decoration:none;transition:background var(--transition-default),color var(--transition-default)}@media(hover:hover){.sidebar__link:hover{background:var(--color-sidebar-hover);color:var(--color-sidebar-text)}}.sidebar__link--active{background:var(--color-sidebar-active);color:var(--color-sidebar-text)}.sidebar__account{padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-sidebar-hover);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.sidebar__account-info{display:flex;flex-direction:column;min-width:0}.sidebar__account-name{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar__account-role{font-size:var(--font-size-small);color:var(--color-sidebar-text-muted);text-transform:capitalize}.sidebar__logout{padding:var(--space-2) var(--space-3);border:1px solid var(--color-sidebar-text-muted);border-radius:var(--radius-button);background:none;font-size:var(--font-size-small);color:var(--color-sidebar-text-muted);cursor:pointer;flex-shrink:0;transition:border-color var(--transition-default),color var(--transition-default)}@media(hover:hover){.sidebar__logout:hover{border-color:var(--color-sidebar-text);color:var(--color-sidebar-text)}}.layout__content{flex:1;margin-left:0;min-height:100vh;min-height:100dvh;padding:calc(var(--touch-target-min) + var(--space-8)) var(--space-6) var(--space-6);background:var(--color-background)}@media(min-width:1024px){.layout__menu-toggle,.layout__backdrop{display:none}.layout__sidebar{transform:translate(0)}.layout__content{margin-left:var(--sidebar-width);padding:var(--space-6)}}.venue-switcher{position:relative;padding:var(--space-3);border-bottom:1px solid var(--color-sidebar-hover)}.venue-switcher__current{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-1);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-sidebar-hover);border-radius:var(--radius-input);background:var(--color-sidebar-bg);color:var(--color-sidebar-text);font-family:inherit;text-align:left;cursor:default;transition:background var(--transition-default),border-color var(--transition-default)}.venue-switcher__current--clickable{cursor:pointer}@media(hover:hover){.venue-switcher__current--clickable:hover{background:var(--color-sidebar-hover);border-color:var(--color-border-light)}}.venue-switcher__label{font-size:var(--font-size-caption);font-weight:var(--font-weight-regular);color:var(--color-sidebar-text-muted);text-transform:uppercase;letter-spacing:.04em}.venue-switcher__name{font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-sidebar-text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.venue-switcher__chevron{position:absolute;top:50%;right:var(--space-4);width:18px;height:18px;transform:translateY(-50%);color:var(--color-sidebar-text-muted);transition:transform var(--transition-default)}.venue-switcher__chevron--open{transform:translateY(-50%) rotate(180deg)}.venue-switcher__menu{position:absolute;top:calc(100% + var(--space-1));left:var(--space-3);right:var(--space-3);list-style:none;margin:0;padding:var(--space-2);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-input);box-shadow:var(--shadow-card);z-index:50;max-height:320px;overflow-y:auto}.venue-switcher__option{display:flex}.venue-switcher__option-btn{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-3) var(--space-4);border:none;border-radius:var(--radius-input);background:transparent;color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-small);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:background var(--transition-default)}@media(hover:hover){.venue-switcher__option-btn:hover{background:var(--color-sidebar-hover)}}.venue-switcher__option--active .venue-switcher__option-btn{background:var(--color-sidebar-active)}.venue-switcher__option-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.venue-switcher__check{width:16px;height:16px;color:var(--color-primary-strong);flex-shrink:0}.modal-card__head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-5)}.modal-card__head .modal-card__title{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-card--detail .modal-card__actions{margin-top:0}.modal-card__head .badge{flex-shrink:0}.cancel-confirm{display:flex;flex-direction:column;gap:var(--space-1);margin-bottom:var(--space-4)}.cancel-confirm__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.cancel-confirm__input{padding:var(--space-3);min-height:var(--input-height);border:1px solid var(--color-border-light);border-radius:var(--radius-input);font-size:var(--font-size-body);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-surface);resize:vertical;transition:border-color var(--transition-default)}.cancel-confirm__input:focus{outline:none;border-color:var(--color-primary)}.modal-form__midnight-value{display:flex;align-items:center;height:44px;padding:0 var(--space-3);border:1px solid var(--color-border-light);border-radius:var(--radius-input);background:var(--color-neutral-bg);font-size:var(--font-size-small);color:var(--color-text-primary)}.modal-form__midnight-value--error{border-color:var(--color-error)}.modal-form__midnight-toggle{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-1);font-size:var(--font-size-caption);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.modal-form__midnight-toggle input{width:16px;height:16px;accent-color:var(--color-primary-strong);cursor:pointer}.amenity-picker__empty{margin:0;font-size:var(--font-size-small);color:var(--color-text-secondary)}.amenity-picker__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:var(--space-3)}.amenity-picker__check{flex-shrink:0;opacity:0;transition:opacity var(--transition-default)}.amenity-picker__check--on{opacity:1}.location-picker{--location-picker-map-height: 360px;display:flex;flex-direction:column;gap:var(--space-2)}.location-picker__head{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap}.location-picker__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.location-picker__coords{font-size:var(--font-size-caption);color:var(--color-text-secondary);font-variant-numeric:tabular-nums}.location-picker__map{width:100%;height:var(--location-picker-map-height);overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-input-disabled-bg)}.location-picker__note{margin:0;font-size:var(--font-size-caption);color:var(--color-text-secondary)}.location-picker__note--error{color:var(--color-error)}.location-picker__actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}.photo-gallery__error{padding:var(--space-3) var(--space-4);margin-bottom:var(--space-4);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.photo-gallery__empty{font-size:var(--font-size-small);color:var(--color-text-placeholder);margin:0 0 var(--space-4)}.photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(var(--photo-thumb-min),1fr));gap:var(--space-3);margin-bottom:var(--space-4)}.photo-card{position:relative;margin:0;border-radius:var(--radius-input);overflow:hidden;background:var(--color-neutral-bg);box-shadow:var(--shadow-card)}.photo-card--cover{box-shadow:inset 0 0 0 var(--border-width-emphasis) var(--color-primary),var(--shadow-card)}.photo-card--ghost{opacity:.5}.photo-card__img{display:block;width:100%;aspect-ratio:var(--photo-thumb-aspect);object-fit:cover}.photo-card__badge{position:absolute;top:var(--space-2);left:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-button);background:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold)}.photo-card__drag{position:absolute;top:var(--space-2);right:var(--space-2);width:var(--touch-target-min);height:var(--touch-target-min);display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:var(--radius-button);background:var(--color-surface);color:var(--color-text-secondary);cursor:grab;touch-action:none}.photo-card__drag:active{cursor:grabbing}.photo-card__drag svg{fill:currentColor}.photo-card__actions{display:flex;gap:var(--space-2);padding:var(--space-2)}.photo-card__action{flex:1;min-height:var(--touch-target-min);border:none;border-radius:var(--radius-button);background:var(--color-neutral-bg);color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-default)}@media(hover:hover){.photo-card__action:not(:disabled):hover{background:var(--color-divider)}}.photo-card__action:disabled{opacity:.6;cursor:not-allowed}.photo-card__action--danger{color:var(--color-error)}@media(hover:hover){.photo-card__action--danger:not(:disabled):hover{background:var(--color-error-bg)}}.photo-gallery__upload{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.photo-gallery__file{display:none}.photo-gallery__hint{font-size:var(--font-size-caption);color:var(--color-text-secondary)}.duration-multiselect{display:flex;flex-wrap:wrap;gap:var(--space-2)}.court-durations{display:flex;flex-direction:column;gap:var(--space-3)}.court-durations__modes{display:inline-flex;align-self:flex-start;gap:var(--space-2);padding:var(--space-1);background:var(--color-neutral-bg);border-radius:var(--radius-pill)}.court-durations__mode{min-height:36px;padding:var(--space-1) var(--space-4);background:transparent;border:none;border-radius:var(--radius-pill);color:var(--color-text-secondary);font-family:var(--font-family);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);cursor:pointer;transition:background var(--transition-default),color var(--transition-default)}.court-durations__mode--active{background:var(--color-surface);color:var(--color-text-primary);box-shadow:var(--shadow-card)}.court-durations__hint{margin:0;font-size:var(--font-size-small);color:var(--color-text-secondary)}.court-durations__inherited{color:var(--color-text-primary);font-weight:var(--font-weight-bold)}.login{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--space-4);background-color:var(--color-background)}.login__card{width:100%;max-width:var(--login-card-max-width);padding:var(--space-8);background-color:var(--color-surface);border-radius:var(--radius-card);box-shadow:0 2px 12px #00000014}.login__logo{display:block;width:auto;height:var(--logo-height);margin:0 auto var(--space-6)}.login__title{text-align:center;font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.login__subtitle{text-align:center;font-size:var(--font-size-small);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.login__error{text-align:center;font-size:var(--font-size-small);color:var(--color-error);background-color:#d32f2f0f;padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);margin-bottom:var(--space-4)}.login__notice{text-align:center;font-size:var(--font-size-small);color:var(--color-success);background-color:var(--color-success-bg);padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);margin-bottom:var(--space-4)}.login__form{display:flex;flex-direction:column;gap:var(--space-4)}.login__button{width:100%;height:var(--button-height);border:none;border-radius:var(--radius-button);background-color:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color var(--transition-default),opacity var(--transition-default);margin-top:var(--space-2)}@media(hover:hover){.login__button:not(:disabled):hover{background-color:var(--color-primary-hover)}}.login__button:disabled{opacity:.5;cursor:not-allowed}.login__link{display:block;text-align:center;margin-top:var(--space-5);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-primary-strong)}@media(hover:hover){.login__link:hover{text-decoration:underline}}.accept{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--space-4);background-color:var(--color-background)}.accept__card{width:100%;max-width:var(--invitation-card-max-width);padding:var(--space-8);background-color:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.accept__logo{display:block;width:auto;height:var(--logo-height);margin:0 auto var(--space-6)}.accept__title{text-align:center;font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-2)}.accept__subtitle{text-align:center;font-size:var(--font-size-small);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.accept__body{text-align:center;font-size:var(--font-size-body);color:var(--color-text-secondary);margin-bottom:var(--space-6)}.accept__status{text-align:center}.accept__context{display:flex;flex-direction:column;gap:var(--space-2);margin-bottom:var(--space-6);padding:var(--space-4);background:var(--color-background);border-radius:var(--radius-input)}.accept__context-row{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--font-size-small)}.accept__context-term{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.accept__context-value{color:var(--color-text-primary);font-weight:var(--font-weight-medium);text-align:right;word-break:break-word}.accept__error{text-align:center;font-size:var(--font-size-small);color:var(--color-error);background-color:var(--color-error-bg);padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);margin-bottom:var(--space-4)}.accept__form,.accept__claim{display:flex;flex-direction:column;gap:var(--space-4)}.accept__hint{font-size:var(--font-size-caption);color:var(--color-text-secondary);margin-top:calc(var(--space-2) * -1)}.accept__button{width:100%;height:var(--button-height);border:none;border-radius:var(--radius-button);background-color:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);cursor:pointer;transition:background-color var(--transition-default),opacity var(--transition-default);margin-top:var(--space-2)}@media(hover:hover){.accept__button:not(:disabled):hover{background-color:var(--color-primary-hover)}}.accept__button:disabled{opacity:.5;cursor:not-allowed}.accept__secondary-button{width:100%;height:var(--button-height);border:1px solid var(--color-border-light);border-radius:var(--radius-button);background-color:var(--color-surface);color:var(--color-text-primary);font-size:var(--font-size-body);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color var(--transition-default)}@media(hover:hover){.accept__secondary-button:hover{background-color:var(--color-background)}}.dashboard__notice{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-input);background:var(--color-warning-bg);color:var(--color-warning);font-size:var(--font-size-small)}.dashboard__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:var(--space-4)}.dashboard__placeholder{color:var(--color-text-secondary)}.team__header{margin-bottom:var(--space-2)}.team__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.team__subtitle{font-size:var(--font-size-small);color:var(--color-text-secondary);margin:var(--space-2) 0 0}.venue-picker{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;padding:var(--space-4);background:var(--color-background)}.venue-picker__card{width:100%;max-width:var(--login-card-max-width);padding:var(--space-8);background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card)}.venue-picker__logo{display:block;width:auto;height:var(--logo-height);margin:0 auto var(--space-6)}.venue-picker__title{text-align:center;font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-2) 0}.venue-picker__subtitle{text-align:center;font-size:var(--font-size-small);color:var(--color-text-secondary);margin:0 0 var(--space-6) 0}.venue-picker__notice{margin:0 0 var(--space-4) 0;padding:var(--space-3) var(--space-4);background:var(--color-error-bg);color:var(--color-error);border-radius:var(--radius-input);font-size:var(--font-size-small);text-align:center}.venue-picker__list{list-style:none;margin:0 0 var(--space-6) 0;padding:0;display:flex;flex-direction:column;gap:var(--space-2)}.venue-picker__option{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);width:100%;padding:var(--space-4) var(--space-5);border:1px solid var(--color-border-light);border-radius:var(--radius-input);background:var(--color-surface);color:var(--color-text-primary);font-family:inherit;font-size:var(--font-size-body);font-weight:var(--font-weight-medium);text-align:left;cursor:pointer;transition:border-color var(--transition-default),background var(--transition-default)}@media(hover:hover){.venue-picker__option:hover{border-color:var(--color-primary);background:var(--color-primary-bg-light)}}.venue-picker__name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-picker__arrow{width:18px;height:18px;color:var(--color-text-secondary);flex-shrink:0}.venue-picker__empty{margin-bottom:var(--space-6);padding:var(--space-6) var(--space-5);border:1px dashed var(--color-border-light);border-radius:var(--radius-input);text-align:center}.venue-picker__empty-title{margin:0 0 var(--space-2) 0;font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.venue-picker__empty-desc{margin:0;font-size:var(--font-size-small);color:var(--color-text-secondary)}.venue-picker__logout{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-button);background:transparent;color:var(--color-text-secondary);font-family:inherit;font-size:var(--font-size-small);font-weight:var(--font-weight-medium);cursor:pointer;transition:border-color var(--transition-default),color var(--transition-default)}@media(hover:hover){.venue-picker__logout:hover{border-color:var(--color-text-primary);color:var(--color-text-primary)}}.venue-profile__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap;margin-bottom:var(--space-6)}.venue-profile__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.venue-profile__actions{display:flex;align-items:center;gap:var(--space-3)}.venue-profile__saved{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-success)}.venue-profile__saved svg{flex-shrink:0}.venue-profile__error{padding:var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.venue-profile__loading{padding:var(--space-12);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-small)}.venue-profile__card{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:var(--space-6)}.venue-profile__grid{display:grid;grid-template-columns:1fr;gap:var(--space-5);align-items:start}.venue-profile__span{grid-column:1/-1}.venue-profile__section{grid-column:1/-1;margin:var(--space-3) 0 0;padding-top:var(--space-5);border-top:1px solid var(--color-divider);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em}.venue-profile__section--first{margin-top:0;padding-top:0;border-top:none}@media(min-width:640px){.venue-profile__grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--space-5)}}@media(min-width:1280px){.venue-profile__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(min-width:1536px){.venue-profile__grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.profile-textarea{display:flex;flex-direction:column;gap:var(--space-2)}.profile-textarea__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.profile-textarea__field{width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-input);font-size:var(--font-size-body);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-surface);resize:vertical;transition:border-color var(--transition-default)}.profile-textarea__field:focus{outline:none;border:2px solid var(--color-text-primary);padding:calc(var(--space-3) - 1px) calc(var(--space-4) - 1px)}.profile-textarea__field:disabled{background:var(--color-input-disabled-bg);color:var(--color-text-secondary);cursor:not-allowed;resize:none}.profile-textarea__field--error{border-color:var(--color-error)}.profile-textarea__hint{font-size:var(--font-size-caption);color:var(--color-text-secondary);margin:0}.venue-profile__amenities-hint{font-size:var(--font-size-caption);color:var(--color-text-secondary);margin:var(--space-3) 0 0}.profile-textarea__error{font-size:var(--font-size-caption);color:var(--color-error);margin:0}.venue-profile__photos{margin-top:var(--space-6)}.venue-profile__photos-title{font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0 0 var(--space-4)}.fade-enter-active,.fade-leave-active{transition:opacity var(--transition-default)}.fade-enter-from,.fade-leave-to{opacity:0}.courts-page__header{margin-bottom:var(--space-6)}.courts-page__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.courts-page__error{padding:var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.courts-page__loading{padding:var(--space-12);text-align:center;color:var(--color-text-secondary);font-size:var(--font-size-small)}.courts-page__section{margin-bottom:var(--space-8)}.courts-page__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.courts-page__section-title{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.booking-mode{display:grid;grid-template-columns:1fr;gap:var(--space-3)}@media(min-width:640px){.booking-mode{grid-template-columns:repeat(2,1fr)}}.booking-mode__option{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);text-align:left;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-card);box-shadow:var(--shadow-card);cursor:pointer;font-family:var(--font-family);transition:border-color var(--transition-default),box-shadow var(--transition-default)}@media(hover:hover){.booking-mode__option:not(:disabled):hover{border-color:var(--color-primary)}}.booking-mode__option--active{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}@media(hover:hover){.booking-mode__option--active:not(:disabled):hover{border-color:var(--color-primary);box-shadow:inset 0 0 0 1px var(--color-primary)}}.booking-mode__option:disabled{opacity:.6;cursor:not-allowed}.booking-mode__title{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.booking-mode__desc{font-size:var(--font-size-small);color:var(--color-text-secondary);line-height:1.4}.courts-defaults{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);padding:var(--space-4);margin-bottom:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-card)}.courts-defaults__label{font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.courts-defaults__value{font-size:var(--font-size-small);color:var(--color-text-secondary)}.courts-defaults__actions{display:flex;gap:var(--space-2);margin-left:auto}.courts-grid{display:grid;grid-template-columns:1fr;gap:var(--space-4)}@media(min-width:640px){.courts-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1280px){.courts-grid{grid-template-columns:repeat(3,1fr)}}.court-card{background:var(--color-surface);border-radius:var(--radius-card);padding:var(--space-5);box-shadow:var(--shadow-card);overflow:hidden;transition:box-shadow var(--transition-default),opacity var(--transition-default)}.court-card--ghost{opacity:.5;border:1px dashed var(--color-primary)}.court-card__image{height:120px;margin:calc(-1 * var(--space-5)) calc(-1 * var(--space-5)) var(--space-4);background-color:var(--color-neutral-bg);background-position:center;background-size:cover;background-repeat:no-repeat;border-top-left-radius:var(--radius-card);border-top-right-radius:var(--radius-card)}.court-photos__loading{font-size:var(--font-size-small);color:var(--color-text-placeholder);margin:0}.court-hours__loading,.court-hours__inherited{font-size:var(--font-size-small);color:var(--color-text-secondary);margin:0 0 var(--space-3)}.court-hours__error{font-size:var(--font-size-small);color:var(--color-error);margin:0 0 var(--space-3)}.court-hours__actions{display:flex;justify-content:flex-end;gap:var(--space-2);margin-top:var(--space-3)}.court-card__header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);margin-bottom:var(--space-4)}.court-card__drag-handle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:none;border-radius:var(--radius-button);background:transparent;color:var(--color-text-secondary);cursor:grab;transition:background var(--transition-default),color var(--transition-default);touch-action:none}@media(hover:hover){.court-card__drag-handle:hover{background:var(--color-neutral-bg);color:var(--color-text-primary)}}.court-card__drag-handle:focus-visible{background:var(--color-neutral-bg);color:var(--color-text-primary);outline:none}.court-card__drag-handle:active{cursor:grabbing}.court-card__drag-handle svg{fill:currentColor}.court-card__name{flex:1;font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.court-card__details{display:flex;flex-direction:column;gap:var(--space-3)}.court-card__row{display:flex;justify-content:space-between;align-items:center}.court-card__label{font-size:var(--font-size-small);color:var(--color-text-secondary)}.court-card__value{font-size:var(--font-size-small);color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.court-card__actions{display:flex;gap:var(--space-2);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--color-divider)}.schedule-card{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.schedule-uniform{display:flex;align-items:center;justify-content:space-between;padding:var(--space-5)}.schedule-uniform__label{font-size:var(--font-size-small);color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.schedule-uniform__time{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.schedule-table{width:100%;border-collapse:collapse}.schedule-table th{text-align:left;padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider)}.schedule-table td{padding:var(--space-3) var(--space-5);font-size:var(--font-size-small);color:var(--color-text-primary);border-bottom:1px solid var(--color-divider)}.schedule-table tr:last-child td{border-bottom:none}.schedule-table__day{font-weight:var(--font-weight-medium)}.schedule-edit__times{display:flex;align-items:center;gap:var(--space-2)}.schedule-edit__input{height:36px;padding:0 var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-input);font-size:var(--font-size-body);font-family:var(--font-family);color:var(--color-text-primary);background:var(--color-surface)}.schedule-edit__input:focus{outline:none;border-color:var(--color-primary)}.schedule-edit__sep{color:var(--color-text-secondary)}.schedule-edit__closed{color:var(--color-text-secondary);font-style:italic}.schedule-edit__midnight{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--font-size-caption);color:var(--color-text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.schedule-edit__midnight input{width:16px;height:16px;accent-color:var(--color-primary-strong);cursor:pointer}.schedule-edit__midnight-value{display:inline-flex;align-items:center;justify-content:center;height:36px;min-width:60px;padding:0 var(--space-2);border:1px solid var(--color-border-light);border-radius:var(--radius-input);background:var(--color-neutral-bg);font-size:var(--font-size-small);color:var(--color-text-primary)}.schedule-table__closed{color:var(--color-text-secondary);font-style:italic}.schedule-edit__toggle input{width:18px;height:18px;cursor:pointer;accent-color:var(--color-primary-strong)}.schedule-edit__actions{display:flex;gap:var(--space-3);justify-content:flex-end;padding:var(--space-4) var(--space-5);border-top:1px solid var(--color-divider)}.pricing-card{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.pricing-table{width:100%;border-collapse:collapse}.pricing-table th{text-align:left;padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider)}.pricing-table td{padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);color:var(--color-text-primary);border-bottom:1px solid var(--color-divider)}.pricing-table tr:last-child td{border-bottom:none}.pricing-table__name{font-weight:var(--font-weight-medium)}.pricing-table__price{font-weight:var(--font-weight-bold);color:var(--color-primary-strong)}.pricing-table__actions{display:flex;gap:var(--space-2)}.bookings-page{display:flex;flex-direction:column;gap:var(--space-6)}.bookings-page__header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:var(--space-5)}.bookings-page__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;justify-self:start}.bookings-page__header-right{display:flex;align-items:center;gap:var(--space-5);justify-self:end}.date-nav{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border:1px solid var(--color-divider);border-radius:var(--radius-pill);background:var(--color-surface);justify-self:center}.date-nav__btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:var(--color-text-secondary);font-size:22px;line-height:1;cursor:pointer;transition:background var(--transition-default),color var(--transition-default)}@media(hover:hover){.date-nav__btn:hover{background:var(--color-neutral-bg);color:var(--color-text-primary)}}.date-nav__today{border:none;background:transparent;color:var(--color-text-primary);font-family:var(--font-family);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);padding:var(--space-2) var(--space-3);border-radius:var(--radius-button);cursor:pointer;transition:background var(--transition-default)}@media(hover:hover){.date-nav__today:not(:disabled):hover{background:var(--color-neutral-bg)}}.date-nav__today:disabled{cursor:default;opacity:.5}.date-nav__divider{width:1px;height:20px;background:var(--color-divider)}.date-nav__label{font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-primary);padding:0 var(--space-2);white-space:nowrap}.toggle{display:inline-flex;align-items:center;gap:var(--space-3);cursor:pointer;-webkit-user-select:none;user-select:none}.toggle__input{position:absolute;opacity:0;pointer-events:none}.toggle__track{position:relative;display:inline-block;width:40px;height:22px;border-radius:var(--radius-pill);background:var(--color-border-light);transition:background var(--transition-default);flex-shrink:0}.toggle__thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--color-surface);box-shadow:0 1px 3px #0003;transition:left var(--transition-default)}.toggle__input:checked+.toggle__track{background:var(--color-primary)}.toggle__input:checked+.toggle__track .toggle__thumb{left:20px}.toggle__input:focus-visible+.toggle__track{outline:2px solid var(--color-primary);outline-offset:2px}.toggle__label{font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap}.stats-chip{display:inline-flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-5);border:1px solid var(--color-divider);border-radius:var(--radius-input);background:var(--color-surface)}.stats-chip__segment{font-size:var(--font-size-small);color:var(--color-text-primary);white-space:nowrap}.stats-chip__divider{width:1px;height:20px;background:var(--color-divider)}.bookings-grid{background:var(--color-surface);border:1px solid var(--color-divider);overflow:hidden}.bookings-grid__head,.bookings-grid__body{display:grid;grid-template-columns:var(--bookings-time-col) repeat(var(--bookings-courts),minmax(0,1fr))}.bookings-grid__head{background:var(--color-neutral-bg);border-bottom:1px solid var(--color-divider)}.bookings-grid__time-head{padding:var(--space-3) var(--space-4);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.court-head{padding:var(--space-3) var(--space-6);border-left:1px solid var(--color-divider)}.court-head__name{font-size:var(--font-size-body);font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.court-head__type{margin-top:var(--space-1);font-size:var(--font-size-caption);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.bookings-grid__body{position:relative}.bookings-grid__time-col,.bookings-grid__court-col{position:relative;display:flex;flex-direction:column}.bookings-grid__court-col{border-left:1px solid var(--color-divider)}.bookings-grid__time-col:after,.bookings-grid__court-col:after{content:"";position:absolute;top:0;left:0;right:0;bottom:var(--bookings-hour-height);pointer-events:none;z-index:1;background-image:repeating-linear-gradient(to bottom,transparent 0,transparent calc(var(--bookings-hour-height) - 1px),var(--color-divider) calc(var(--bookings-hour-height) - 1px),var(--color-divider) var(--bookings-hour-height))}.bookings-grid__time-cell{height:var(--bookings-hour-height);padding:var(--space-2) var(--space-4);font-size:var(--font-size-small);color:var(--color-text-secondary);text-align:center;box-sizing:border-box}.bookings-grid__hour-row{height:var(--bookings-hour-height);box-sizing:border-box}.bookings-grid__now-label{position:absolute;left:0;right:0;padding:var(--space-2) var(--space-4);font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-error);text-align:center;box-sizing:border-box;background:var(--color-surface);transform:translateY(-50%);pointer-events:none;z-index:2}.booking-block{position:absolute;left:0;right:0;padding:var(--space-3) var(--space-5);display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);background:var(--color-primary-bg);overflow:hidden;border:none;font-family:inherit;color:inherit;text-align:left;cursor:pointer;transition:box-shadow var(--transition-default)}@media(hover:hover){.booking-block:hover{box-shadow:inset 0 0 0 2px var(--color-primary)}}.booking-block:focus-visible{box-shadow:inset 0 0 0 2px var(--color-primary);outline:none}.booking-block__name{font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.booking-block__price{font-size:var(--font-size-small);font-weight:var(--font-weight-bold);color:var(--color-text-primary);flex-shrink:0}.booking-block--pending{background:var(--color-warning-bg)}.booking-block--cancelled{opacity:.6}.booking-block--cancelled .booking-block__name{text-decoration:line-through}.booking-block--no_show{background:var(--color-neutral-bg)}.booking-block--no_show .booking-block__name{color:var(--color-text-secondary)}.add-slot{position:absolute;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:center;padding:0;border:none;background:transparent;color:var(--color-primary-strong);cursor:pointer;opacity:0;transition:opacity var(--transition-default),background var(--transition-default)}@media(hover:hover){.add-slot:hover{opacity:1;background:var(--color-primary-bg)}}.add-slot:focus-visible{opacity:1;background:var(--color-primary-bg);outline:none}.add-slot__icon{display:flex;align-items:center;justify-content:center;width:var(--space-5);height:var(--space-5);border-radius:50%;background:var(--color-primary);color:var(--color-primary-text);font-size:var(--font-size-body);font-weight:var(--font-weight-bold);line-height:1}.now-line{position:absolute;left:var(--bookings-time-col);right:0;border-top:2px solid var(--color-error);pointer-events:none;z-index:5}.now-line__dot{position:absolute;left:0;top:-5px;width:10px;height:10px;margin-left:-5px;border-radius:50%;background:var(--color-error)}.bookings-grid__overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-6);background:var(--color-surface);z-index:6;text-align:center}.bookings-grid__status-text,.bookings-page__status-text{margin:0;font-size:var(--font-size-small);color:var(--color-text-secondary)}.bookings-page__status{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-3);padding:var(--space-12) var(--space-6);border:1px solid var(--color-divider);background:var(--color-surface);text-align:center}.players__header{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-6)}.players__title{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0}.players__count{font-size:var(--font-size-small);color:var(--color-text-secondary)}.players__toolbar{margin-bottom:var(--space-5)}.players__search{max-width:360px}.players__error{padding:var(--space-4);margin-bottom:var(--space-5);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.players__table-wrap{background:var(--color-surface);border-radius:var(--radius-card);overflow:hidden;overflow-x:auto;box-shadow:var(--shadow-card)}.players__table{width:100%;min-width:640px;border-collapse:collapse}.players__table th{text-align:left;padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);border-bottom:1px solid var(--color-divider);white-space:nowrap}.players__table td{padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);color:var(--color-text-primary);border-bottom:1px solid var(--color-divider)}.players__row--clickable{cursor:pointer;transition:background var(--transition-default)}@media(hover:hover){.players__row--clickable:hover{background:var(--color-primary-bg-light)}}.players__row:last-child td{border-bottom:none}.players__empty{text-align:center;padding:var(--space-12) var(--space-5);color:var(--color-text-secondary)}.players__cell-name{display:flex;align-items:center;gap:var(--space-3);font-weight:var(--font-weight-medium)}.players__avatar{width:32px;height:32px;border-radius:50%;background:var(--color-primary);color:var(--color-primary-text);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-small);font-weight:var(--font-weight-bold);flex-shrink:0;text-transform:uppercase}.players__pagination{display:flex;align-items:center;justify-content:center;gap:var(--space-4);margin-top:var(--space-5)}.players__page-btn{padding:var(--space-2) var(--space-4);border:1px solid var(--color-border-light);border-radius:var(--radius-button);background:var(--color-surface);font-size:var(--font-size-small);font-family:var(--font-family);color:var(--color-text-primary);cursor:pointer;transition:border-color var(--transition-default),background var(--transition-default)}@media(hover:hover){.players__page-btn:not(:disabled):hover{border-color:var(--color-primary);background:var(--color-primary-bg-light)}}.players__page-btn:disabled{opacity:.4;cursor:not-allowed}@media(min-width:1024px){.players__table-wrap{overflow-x:hidden}.players__table{min-width:0}}.player-detail__back{display:inline-flex;align-items:center;gap:var(--space-2);padding:0;border:none;background:none;font-size:var(--font-size-small);font-family:var(--font-family);color:var(--color-text-secondary);cursor:pointer;margin-bottom:var(--space-6);transition:color var(--transition-default)}@media(hover:hover){.player-detail__back:hover{color:var(--color-primary-strong)}}.player-detail__back svg{width:18px;height:18px}.player-detail__loading{text-align:center;padding:var(--space-12);color:var(--color-text-secondary);font-size:var(--font-size-small)}.player-detail__error{padding:var(--space-4);border-radius:var(--radius-input);background:var(--color-error-bg);color:var(--color-error);font-size:var(--font-size-small)}.player-detail__header{display:flex;align-items:center;gap:var(--space-5);margin-bottom:var(--space-6)}.player-detail__avatar{width:56px;height:56px;border-radius:50%;background:var(--color-primary);color:var(--color-primary-text);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);text-transform:uppercase;flex-shrink:0}.player-detail__name{font-size:var(--font-size-heading);font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0 0 var(--space-1) 0}.player-detail__header-meta{display:flex;align-items:center;gap:var(--space-3)}.player-detail__table-wrap{background:var(--color-surface);border-radius:var(--radius-card);box-shadow:var(--shadow-card);overflow:hidden}.player-detail__table{width:100%;border-collapse:collapse}.player-detail__section-row{background:var(--color-background)}.player-detail__section-title{padding:var(--space-3) var(--space-5);font-size:var(--font-size-caption);font-weight:var(--font-weight-bold);color:var(--color-text-secondary);text-transform:uppercase;letter-spacing:.05em}.player-detail__table td{padding:var(--space-4) var(--space-5);font-size:var(--font-size-small);border-bottom:1px solid var(--color-divider)}.player-detail__section-row+tr td{border-top:none}.player-detail__table tr:last-child td{border-bottom:none}.player-detail__label{color:var(--color-text-secondary);width:40%}.player-detail__value{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.player-detail__value--verified{color:var(--color-success)}.player-detail__value--unverified{color:var(--color-text-secondary);font-weight:var(--font-weight-regular)}@media(min-width:640px){.player-detail__label{width:30%}}
