:root{--gray-1000:#0a0a0a;--gray-950:#0f0f0f;--gray-900:#1c1c1c;--gray-700:#2e2e2e;--gray-500:#888;--gray-300:#b8b8b8;--gray-50:#efefef;--bg-base:var(--gray-950);--bg-surface:var(--gray-900);--bg-elevated:var(--gray-950);--bg-overlay:var(--gray-1000);--bg-inverse:var(--gray-50);--bg-hover:var(--gray-700);--border:var(--gray-700);--text-primary:var(--gray-50);--text-secondary:var(--gray-300);--text-muted:var(--gray-500);--text-inverse:var(--gray-900);--black:var(--gray-1000);--off-white:var(--bg-base);--white:var(--bg-surface);--light:var(--border);--mid:var(--text-muted);--dark:var(--text-secondary);--near-black:var(--text-primary);--available:#7ec8a0;--available-light:#e8f0eb;--warning:#e0a93a;--warning-light:#f5f0e3;--warning-dark:#6b5320;--danger:#e05252;--danger-light:#f5e8e8;--danger-dark:#8a2e2e;--info:#3b5e9b;--info-light:#e8edf5;--selection-blue:#0a84ff;--space-xs:.25rem;--space-sm:.5rem;--space-3:.75rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.25rem;--text-xl:1.5rem;--text-2xl:2rem;--radius-sm:2px;--radius-md:3px;--radius-lg:4px;--radius-xl:12px;--radius-input:8px;--radius-pill:100px;--shadow-sm:0 1px 2px #0000000f;--shadow-md:0 2px 8px #00000014;--shadow-lg:0 8px 30px #0000001f;--shadow-overlay:0 16px 50px #00000040;--accent:#db380f;--focus-ring:0 0 0 1px var(--accent), 0 0 10px #db380f59;--ease:cubic-bezier(.25, .1, .25, 1);--duration-fast:.15s;--duration-base:.3s;--duration-slow:.6s;--max-width:920px;--gutter:max(1rem, 4vw)}*{box-sizing:border-box;margin:0;padding:0}input,select,textarea{background:var(--bg-surface);color:var(--text-primary);font-family:inherit;font-size:1rem}input::placeholder,textarea::placeholder{color:var(--text-muted)}.btn-icon{color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;justify-content:center;align-items:center;font-family:inherit;line-height:1;display:inline-flex;position:relative}.btn-icon:after{content:"";width:max(100%,44px);height:max(100%,44px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}body{background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;font-family:Arial,sans-serif;font-size:var(--text-base);letter-spacing:-.01em;line-height:1.5}header{background:var(--bg-overlay);color:var(--text-primary);padding:calc(var(--space-lg) + env(safe-area-inset-top)) max(var(--gutter), env(safe-area-inset-right)) var(--space-lg) max(var(--gutter), env(safe-area-inset-left));z-index:12;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}header .brand h1{font-size:var(--text-xl);letter-spacing:-.02em;font-weight:500}header .brand p{opacity:.5;font-size:var(--text-sm);letter-spacing:.02em;margin-top:2px;font-weight:400}.container{max-width:var(--max-width);padding:var(--space-sm) var(--gutter) var(--space-xl);margin:0 auto}.mode-banner{border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);font-size:var(--text-sm);letter-spacing:.02em;font-weight:500}.mode-banner.pos{background:var(--info-light);border:1px solid var(--info);color:var(--info)}.date-nav{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);width:calc(100% - 2 * var(--gutter));max-width:calc(var(--max-width) - 2 * var(--gutter));margin:0 auto var(--space-xl);align-items:center;display:flex}.date-nav-arrow{cursor:pointer;font-family:inherit;font-size:var(--text-2xl);color:var(--text-muted);padding:var(--space-md) var(--space-sm);width:2.5rem;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;flex-shrink:0;line-height:1}.date-nav-arrow:hover{color:var(--text-primary)}.date-nav-arrow:disabled{opacity:.3;cursor:default}.date-nav-arrow:disabled:hover{color:var(--text-muted)}.date-nav-days{flex:1;min-width:0;display:flex}.date-nav-day{cursor:pointer;min-width:0;padding:var(--space-md) var(--space-xs);color:var(--text-muted);transition:color var(--duration-fast) var(--ease);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;font-family:inherit;display:flex;position:relative}@media (max-width:675.98px){.date-nav-day.edge{display:none}}.date-nav-day:hover:not(.past){color:var(--text-secondary)}.date-nav-day.past{opacity:.3;cursor:default}.date-nav-day .day-name{font-size:var(--text-sm);font-weight:500}.date-nav-day .day-date{font-size:var(--text-sm);font-weight:400}.date-nav-day.active{color:var(--text-primary)}.date-nav-day.active .day-name,.date-nav-day.active .day-date{font-weight:700}.date-nav-day.active:after{content:"";background:var(--text-primary);border-radius:2px 2px 0 0;width:60%;height:3px;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.week-strip{gap:var(--space-xs);margin-bottom:var(--space-xl);flex-wrap:wrap;justify-content:center;display:flex}.week-strip .day-chip{padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;color:var(--text-muted);transition:all var(--duration-fast) var(--ease);background:0 0;border:1px solid #0000}.week-strip .day-chip:hover{color:var(--text-primary);background:var(--bg-surface)}.week-strip .day-chip.active{background:var(--bg-inverse);color:var(--text-inverse)}.slots-section{padding-top:var(--space-xl)}[data-date]:first-of-type .slots-section{padding-top:0}.slots-section h2{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:0;font-weight:500}.timeline{gap:var(--space-3);-webkit-user-select:none;user-select:none;flex-direction:column;display:flex}.tl-row{column-gap:var(--space-lg);row-gap:var(--space-sm);padding:var(--space-md);background:var(--bg-surface);border-radius:var(--radius-lg);cursor:pointer;color:var(--text-primary);-webkit-tap-highlight-color:transparent;touch-action:manipulation;transition:background var(--duration-fast) var(--ease), box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);grid-template-rows:auto auto;grid-template-columns:auto 1fr auto;display:grid}@media (hover:hover) and (pointer:fine){.tl-row:hover:not(.disabled){box-shadow:0 0 0 1px var(--border), 0 4px 12px #0006;transform:translateY(-1px)}.tl-row:hover:not(.disabled):not(.selected){background:var(--bg-hover)}.tl-row.selected:hover{background:var(--bg-hover);box-shadow:0 0 0 2px var(--text-primary), 0 4px 12px #0006;transform:translateY(-1px)}}.tl-row.disabled{opacity:.3;cursor:default}.tl-row.in-progress{border-left:3px solid var(--warning)}.tl-row.in-progress .tl-event-name{color:var(--warning)}.tl-row.selected{background:var(--bg-surface);box-shadow:0 0 0 2px var(--text-primary), 0 4px 12px #0006;transform:translateY(-1px)}.tl-row.selected .tl-remaining{color:var(--text-secondary)}.tl-row.block-member{border-left:3px solid var(--text-secondary)}.tl-row.block-member.selected{border-left-color:var(--text-primary)}.tl-time-range{font-size:var(--text-lg);color:var(--text-primary);white-space:nowrap;grid-area:1/1;font-weight:700}.tl-duration{font-size:var(--text-sm);color:var(--text-muted);grid-area:2/1}.tl-event-name{font-size:var(--text-lg);color:var(--text-primary);grid-area:1/2;font-weight:700}.tl-price{font-size:var(--text-lg);color:var(--text-primary);text-align:right;grid-area:1/3;font-weight:700}.tl-remaining{font-size:var(--text-sm);color:var(--text-muted);text-align:right;grid-area:2/3}.slots-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:flex-start;display:flex}.slots-header h2{margin-bottom:0}.pass-link{font-size:var(--text-sm);color:var(--text-inverse);background:var(--bg-inverse);border-radius:var(--radius-pill);white-space:nowrap;transition:opacity var(--duration-fast) var(--ease);padding:4px 12px;font-weight:500;text-decoration:none}.pass-link:hover{opacity:.7}.selection-bar{align-items:center;gap:var(--space-md);padding:var(--space-md) var(--gutter);background:var(--bg-overlay);border-top:1px solid var(--border);font-size:var(--text-sm);display:flex}.selection-bar span{flex:1}.color-dot{vertical-align:middle;border-radius:50%;width:10px;height:10px;margin-right:4px;display:inline-block}.modal-overlay{-webkit-backdrop-filter:blur(4px);z-index:1300;background:#0a0a0a99;justify-content:center;align-items:center;display:none;position:fixed;top:0;bottom:0;left:0;right:0}.modal-overlay.show{display:flex}.modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-sizing:border-box;padding:var(--space-xl);overscroll-behavior:contain;width:90%;max-width:420px;max-height:min(90vh,100dvh - 2rem);box-shadow:var(--shadow-overlay);overflow-y:auto}.modal h3{font-size:var(--text-lg);margin-bottom:var(--space-xs);letter-spacing:-.02em;font-weight:500}.modal .modal-date{color:var(--text-muted);margin-bottom:var(--space-lg);font-size:var(--text-base)}.modal .modal-capacity{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg);font-size:var(--text-sm);color:var(--text-muted)}.booking-modal{max-width:560px;max-height:90vh;position:relative;overflow-y:auto}.modal-close{top:var(--space-md);right:var(--space-md);color:var(--text-primary);font-size:var(--text-lg);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;line-height:1;position:absolute}.booking-title{font-size:var(--text-2xl);margin-top:var(--space-sm);margin-bottom:var(--space-sm);padding-right:var(--space-xl);font-weight:700;line-height:1.1}.booking-meta{font-size:var(--text-base);color:var(--text-primary);margin-bottom:var(--space-xs)}.sessions-summary{gap:var(--space-xs);margin-bottom:var(--space-md);flex-direction:column;display:flex}.session-summary{justify-content:space-between;align-items:baseline;gap:var(--space-md);display:flex}.session-date{font-size:var(--text-base);color:var(--text-primary)}.session-times{font-size:var(--text-sm);color:var(--text-secondary)}.pos-add-hour-btn{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);min-height:44px;padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;font-family:inherit;display:inline-flex}.pos-add-hour-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.confirmed-sessions{gap:var(--space-sm);margin-bottom:var(--space-md);flex-direction:column;display:flex}.confirmed-session-block{flex-direction:column;gap:6px;display:flex}.confirmed-session-row{justify-content:space-between;align-items:center;gap:var(--space-lg);display:flex}.confirmed-session{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.confirmed-session .booking-meta{margin:0}.confirmed-date,.confirmed-times .time-range{white-space:nowrap}.confirmed-right{flex-shrink:0;align-items:center;display:flex}.confirmed-visitors{white-space:nowrap;margin:0}.invite-share-btn{align-items:center;gap:var(--space-xs);border:1px solid var(--border);border-radius:var(--radius-input);color:var(--text-primary);cursor:pointer;font-size:var(--text-sm);transition:all var(--duration-fast) var(--ease);background:0 0;padding:6px 14px;font-family:inherit;display:inline-flex}.invite-share-btn:hover{border-color:var(--text-primary)}.booking-row{padding:var(--space-sm) 0;font-size:var(--text-base);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.booking-row:last-of-type{border-bottom:none}.booking-row-label{color:var(--text-primary)}.booking-row-value{font-weight:600}.booking-total-row{font-weight:700;font-size:var(--text-lg)}.booking-discount-row{color:var(--available);font-size:var(--text-sm)}.booking-field{margin:var(--space-sm) 0}.booking-field label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px;display:block}.booking-field input.invalid{border-color:var(--danger)}.guest-stepper{border:1px solid var(--border);border-radius:var(--radius-sm);align-items:center;display:flex;overflow:hidden}.guest-stepper button{color:var(--text-primary);font-size:var(--text-lg);cursor:pointer;padding:var(--space-xs) var(--space-sm);background:0 0;border:none;font-family:inherit;line-height:1}.guest-stepper span{text-align:center;min-width:2rem;font-size:var(--text-base);background:var(--text-primary);color:var(--text-inverse);padding:var(--space-xs) var(--space-sm);font-weight:600}.pay-header{padding:var(--space-sm) 0;justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.pay-panel{gap:var(--space-md);margin-bottom:var(--space-sm);flex-direction:column;display:flex}.pay-group{gap:var(--space-sm);flex-direction:column;display:flex}.pay-group-title{font-size:var(--text-xs);letter-spacing:.08em;color:var(--text-secondary);padding-bottom:var(--space-xs);border-bottom:1px solid var(--border);font-weight:600}.pay-group-options{gap:var(--space-sm);flex-direction:column;display:flex}input[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1.5px solid var(--gray-500);cursor:pointer;width:1.125rem;height:1.125rem;transition:border-color var(--duration-fast) var(--ease);background:0 0;border-radius:50%;flex-shrink:0;place-content:center;margin:0;display:inline-grid}input[type=radio]:before{content:"";background:var(--selection-blue);width:.625rem;height:.625rem;transition:transform var(--duration-fast) var(--ease);border-radius:50%;transform:scale(0)}input[type=radio]:checked{border-color:var(--selection-blue)}input[type=radio]:checked:before{transform:scale(1)}input[type=radio]:focus-visible{box-shadow:0 0 0 3px color-mix(in srgb, var(--selection-blue) 40%, transparent);outline:none}input[type=radio]:disabled{opacity:.5;cursor:not-allowed}input[type=checkbox]{accent-color:var(--selection-blue)}.pay-option{align-items:center;gap:var(--space-3);cursor:pointer;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);padding:var(--space-sm);transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);margin-bottom:0;display:flex}.modal .pay-option{font-size:var(--text-base);color:var(--text-primary);margin-bottom:0;font-weight:400;display:flex}.pay-option:hover{border-color:var(--text-secondary)}.pay-option:has(input:checked){border-color:var(--selection-blue);background:color-mix(in srgb, var(--selection-blue) 10%, transparent)}.pay-option:has(input:focus-visible){box-shadow:0 0 0 3px color-mix(in srgb, var(--selection-blue) 40%, transparent)}.pay-option input[type=checkbox]{cursor:pointer;flex-shrink:0;width:16px;height:16px;margin:0}.modal .pay-option input:focus{box-shadow:none}.pay-option.disabled{opacity:.45;cursor:not-allowed}.pay-option.disabled:hover{border-color:var(--border)}.pay-option-body{flex:1;min-width:0}.pay-skeleton{gap:var(--space-sm);flex-direction:column;display:flex}.pay-skeleton-tile,.pay-skeleton-line{border-radius:var(--radius-sm);background:linear-gradient(90deg, color-mix(in srgb, var(--text-primary) 4%, transparent) 25%, color-mix(in srgb, var(--text-primary) 9%, transparent) 37%, color-mix(in srgb, var(--text-primary) 4%, transparent) 63%);background-size:200% 100%;animation:1.4s ease-in-out infinite pay-skeleton-shimmer}.pay-skeleton-tile{border:1px solid var(--border);height:2.75rem}.pay-skeleton-line{width:11rem;height:.875rem}@keyframes pay-skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (prefers-reduced-motion:reduce){.pay-skeleton-tile,.pay-skeleton-line{animation:none}}.pay-lines{flex-direction:column;min-width:0;display:flex}.pay-primary{font-size:var(--text-base);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;line-height:1.3;display:block;overflow:hidden}.pay-secondary{font-size:var(--text-xs);color:var(--mid);white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.pay-panel-action{color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:var(--text-sm);text-align:left;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;align-self:flex-start;padding:4px 0}.pay-panel-action:hover{color:var(--text-primary)}.pay-add-card-btn{color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:var(--text-sm);white-space:nowrap;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;padding:0}.pay-add-card-btn:hover{color:var(--text-primary)}.pay-panel-hint{color:var(--text-secondary);font-size:var(--text-sm);margin:4px 0 0 var(--space-sm)}.new-card-section{gap:var(--space-sm);flex-direction:column;display:flex}.terminal-waiting-msg{color:var(--text-secondary);font-size:var(--text-sm);margin:var(--space-md) 0;text-align:center}.terminal-amount{font-size:var(--text-2xl);text-align:center;margin:var(--space-md) 0 var(--space-sm);font-weight:500}.optional-hint{color:var(--text-muted);font-weight:400;font-size:var(--text-xs)}.pos-lookup-hint{margin-top:var(--space-xs);color:var(--text-muted);font-size:var(--text-xs);display:block}.pos-customer-section{gap:var(--space-sm);margin:var(--space-md) 0;flex-direction:column;display:flex}.pos-customer-section .booking-field{margin:0}.modal .pos-customer-search input{margin-bottom:0}.pos-customer-results{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.pos-customer-result,.pos-customer-selected,.pos-customer-conflict{justify-content:space-between;align-items:center;gap:var(--space-md);background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;padding:var(--space-3);color:var(--text-primary);display:flex}.pos-customer-result{cursor:pointer;font:inherit;text-align:left;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease)}.pos-customer-result:hover{border-color:var(--text-secondary);background:var(--bg-hover)}.pos-customer-lines{flex-direction:column;gap:1px;min-width:0;display:flex}.pos-customer-name{color:var(--text-primary);font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;font-weight:600;line-height:1.3;overflow:hidden}.pos-customer-email{color:var(--text-muted);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap;line-height:1.3;overflow:hidden}.pos-customer-side{align-items:center;gap:var(--space-sm);flex:none;display:flex}.pos-waiver-pill{border:1px solid var(--warning);border-radius:var(--radius-pill);min-height:1.5rem;color:var(--warning);font-size:var(--text-xs);white-space:nowrap;flex:none;align-items:center;padding:2px 8px;font-weight:600;line-height:1.2;display:inline-flex}.pos-waiver-pill.signed{border-color:var(--available);color:var(--available)}.pos-role-pill{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:1.5rem;color:var(--text-muted);font-size:var(--text-xs);text-transform:capitalize;white-space:nowrap;flex:none;align-items:center;padding:2px 8px;font-weight:600;line-height:1.2;display:inline-flex}.pos-customer-new-head{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.pos-customer-conflict{margin-top:var(--space-xs);border-color:var(--warning)}.pos-new-customer-btn{margin-top:0}.pos-pass-cancelled{color:var(--warning);font-weight:600}.pos-gym-toggle{align-items:center;gap:var(--space-xs);margin-top:var(--space-xs);font-size:var(--text-xs);color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none;display:inline-flex}.pos-confirm-warn{padding:var(--space-sm) var(--space-md);background:var(--warning-light);color:var(--text-inverse);border-radius:var(--radius-sm)}.waiver-link-row{padding:var(--space-sm) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:var(--space-md);display:flex}.waiver-link-row:last-of-type{border-bottom:none}.waiver-link-info{flex-direction:column;min-width:0;display:flex}.waiver-link-info strong{font-size:var(--text-base)}.waiver-link-email{font-size:var(--text-sm);color:var(--text-muted);overflow-wrap:anywhere}.waiver-link-actions{gap:var(--space-xs);flex-shrink:0;display:flex}.waiver-link-actions .btn-secondary-sm{text-decoration:none}.sq-card-message-no-error{display:none!important}.modal .save-card-label{font-size:var(--text-sm);color:var(--text-primary);margin:0}.credit-amount{color:var(--text-muted);font-size:var(--text-sm)}.coupon-input{background:var(--bg-surface);border:1px solid var(--gray-500);border-radius:var(--radius-input);color:var(--text-primary);padding:var(--space-sm) var(--space-3);-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);outline:none;flex:1;margin:0;font-family:inherit}.coupon-input:focus{box-shadow:var(--focus-ring)}.coupon-input::placeholder{color:var(--gray-500)}.btn-secondary.coupon-apply{padding:var(--space-sm) var(--space-md);font-size:var(--text-sm);flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.promo-field{margin:var(--space-sm) 0}.promo-entry{gap:var(--space-sm);align-items:stretch;display:flex}.promo-error{color:var(--danger);font-size:var(--text-sm);margin:var(--space-xs) 0 0}.booking-divider{border:none;border-top:1px solid var(--border);margin:var(--space-sm) 0}.booking-fine-print{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-md);line-height:1.5}.booking-submit{width:100%;margin-top:var(--space-sm);padding:var(--space-lg) var(--space-xl);font-size:var(--text-lg);font-weight:600}.modal label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px;font-weight:500;display:block}.modal input:not([type=checkbox]):not([type=radio]),.modal select{width:100%;padding:var(--space-sm) var(--space-3);border:1px solid var(--gray-500);border-radius:var(--radius-input);margin-bottom:var(--space-md);transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);background:var(--bg-surface);color:var(--text-primary);outline:none;font-family:inherit}.modal input:focus,.modal select:focus{box-shadow:var(--focus-ring)}.modal input::placeholder{color:var(--text-muted)}.modal .promo-entry input.coupon-input{max-width:16rem;margin-bottom:0}.guest-section>label,.guest-section-label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px;font-weight:500;display:block}.guest-count{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-sm)}.guest-row{gap:var(--space-xs);margin-bottom:var(--space-xs);align-items:center;display:flex}.guest-row input{padding:var(--space-sm) var(--space-3);border:1px solid var(--gray-500);border-radius:var(--radius-input);font-size:var(--text-sm);background:var(--bg-surface);min-width:0;transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);flex:1;font-family:inherit}.guest-row input:focus{box-shadow:var(--focus-ring);outline:none}.guest-row input::placeholder{color:var(--text-muted)}.guest-remove-btn{color:var(--text-muted);cursor:pointer;transition:color var(--duration-fast) var(--ease);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-2px -2px -2px 0;padding:2px;line-height:1;display:inline-flex}.guest-remove-btn:hover{color:var(--danger)}.guest-add-btn{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);cursor:pointer;font-size:var(--text-sm);width:100%;margin-top:var(--space-xs);transition:all var(--duration-fast) var(--ease);background:0 0;padding:6px 12px;font-family:inherit}.guest-add-btn:hover{border-color:var(--bg-inverse);color:var(--text-primary)}.guest-add-btn:disabled{opacity:.4;cursor:default}.guest-add-btn:disabled:hover{border-color:var(--border);color:var(--text-primary)}.guest-section{margin-bottom:var(--space-md)}.guest-section .booking-row{border-bottom:none}.guest-count-hint{font-size:var(--text-sm);color:var(--text-muted)}.guest-card{background:var(--bg-elevated);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-3);margin-bottom:var(--space-sm)}.guest-card-head{margin-bottom:var(--space-sm);justify-content:space-between;align-items:center;display:flex}.guest-card-title{font-size:var(--text-xs);letter-spacing:.06em;color:var(--text-muted);font-weight:600}.guest-row-fields{gap:var(--space-xs);grid-template-columns:1fr 1fr;min-width:0;display:grid}.guest-row-fields input[type=email]{grid-column:1/-1}.guest-row-fields input{padding:var(--space-sm) var(--space-3);border:1px solid var(--gray-500);border-radius:var(--radius-input);background:var(--bg-surface);color:var(--text-primary);min-width:0;transition:border-color var(--duration-fast) var(--ease);font-family:inherit}.guest-row-fields input:focus{box-shadow:var(--focus-ring);outline:none}.guest-row-fields input::placeholder{color:var(--text-muted)}.guest-row-fields input.invalid{border-color:var(--danger)}.guest-error{font-size:var(--text-xs);color:var(--danger);grid-column:1/-1;margin-top:2px}.guest-card-collapsed{padding:var(--space-sm) var(--space-3)}.guest-summary{justify-content:space-between;align-items:center;gap:var(--space-sm);display:flex}.guest-summary-main{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:flex-start;gap:1px;min-width:0;margin:0;padding:0;font-family:inherit;display:flex}.guest-summary-name{align-items:center;gap:var(--space-xs);font-size:var(--text-sm);color:var(--text-primary);overflow-wrap:anywhere;min-width:0;font-weight:600;display:flex}.guest-summary-email{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:var(--text-sm);color:var(--text-muted);overflow:hidden}.modal-sign-statement{font-size:var(--text-sm);margin-bottom:var(--space-md);line-height:1.5}.modal-sign-fields{gap:var(--space-sm);margin:var(--space-md) 0;grid-template-columns:2fr 1fr;display:grid}.modal-sign-field label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:4px;display:block}.modal-sign-field input{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg-surface);width:100%;color:var(--text-primary);padding:8px;font-family:inherit}.modal-sign-field input.input-error{border-color:var(--danger);box-shadow:0 0 0 1px var(--danger)}@media (max-width:500px){.modal-sign-fields{grid-template-columns:1fr}}.waiver-links{margin-top:var(--space-md);padding:var(--space-md);background:var(--warning-light);color:var(--text-inverse);border-radius:var(--radius-sm);font-size:var(--text-sm)}.waiver-links p{margin-bottom:var(--space-sm);font-weight:500}.waiver-links .waiver-link-item{margin-bottom:var(--space-xs);color:var(--text-inverse)}.waiver-links a{color:var(--info);word-break:break-all;font-size:var(--text-xs)}.waiver-link-copy{vertical-align:middle;margin-left:var(--space-xs);color:var(--info);cursor:pointer;opacity:.8;background:0 0;border:none;justify-content:center;align-items:center;padding:2px;transition:opacity .15s;display:inline-flex}.waiver-link-copy:hover{opacity:1}.etiquette-card{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:var(--space-sm) var(--space-md);margin-top:var(--space-lg);font-size:var(--text-sm);line-height:1.6}.etiquette-card h4{font-size:var(--text-xs);color:var(--text-muted);letter-spacing:.08em;padding:var(--space-sm) 0;margin:0;font-weight:600}.etiquette-card ul{margin:0;padding:0;list-style:none}.etiquette-item{padding:var(--space-3) 0;border-top:1px solid var(--border);color:var(--text-secondary);margin:0}.etiquette-item strong{color:var(--text-primary);font-weight:600}.etiquette-item.etiquette-expandable{padding:0}.etiquette-toggle{justify-content:space-between;align-items:flex-start;gap:var(--space-md);width:100%;padding:var(--space-3) 0;font:inherit;color:var(--text-secondary);text-align:left;cursor:pointer;background:0 0;border:none;margin:0;display:flex}.etiquette-toggle:hover strong{text-decoration:underline}.etiquette-chevron{color:var(--text-muted);flex-shrink:0;font-size:1.2em;line-height:1.35;transition:transform .18s;display:inline-block}.etiquette-chevron.open{transform:rotate(180deg)}.etiquette-memo{margin:0 0 var(--space-3) 0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6}.checkbox-row{align-items:center;gap:var(--space-sm);margin-bottom:var(--space-md);font-size:var(--text-base);display:flex}.checkbox-row input[type=checkbox]{flex-shrink:0;width:1.125rem;height:1.125rem;margin:0}.price-summary{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:var(--space-md);margin-bottom:var(--space-md);font-size:var(--text-base)}.price-summary .line{margin-bottom:var(--space-xs);color:var(--text-muted);justify-content:space-between;display:flex}.price-summary .total{border-top:1px solid var(--border);padding-top:var(--space-sm);margin-top:var(--space-sm);color:var(--text-primary);justify-content:space-between;font-weight:600;display:flex}.price-summary .discount{color:var(--available)}.modal-actions{gap:var(--space-sm);margin-top:var(--space-md);display:flex}.modal-actions button{flex:1}.btn-chip{background:var(--bg-surface);border:1px solid var(--border);color:var(--text-primary);padding:var(--space-sm) var(--space-sm);font-size:var(--text-base);border-radius:var(--radius-pill);cursor:pointer;transition:all var(--duration-fast) var(--ease);font-family:inherit}.btn-chip:hover{border-color:var(--text-primary)}.btn-chip-active{background:var(--text-primary);color:var(--text-inverse);border-color:var(--text-primary)}.btn-primary,.btn-secondary{border-radius:var(--radius-sm);font-size:var(--text-base);cursor:pointer;transition:opacity var(--duration-fast) var(--ease);padding:.75rem 1.75rem;font-family:inherit;font-weight:500}.btn-primary:disabled,.btn-secondary:disabled{opacity:.3;cursor:default}.btn-primary{background:var(--bg-inverse);color:var(--text-inverse);border:none}.btn-primary:hover{opacity:.85}.btn-secondary{color:var(--text-primary);border:1px solid var(--text-primary);background:0 0}.btn-secondary:hover{opacity:.7}.btn-danger{border-radius:var(--radius-sm);font-size:var(--text-base);cursor:pointer;transition:opacity var(--duration-fast) var(--ease);background:var(--danger);color:var(--text-primary);border:none;padding:.75rem 1.75rem;font-family:inherit;font-weight:500}.btn-danger:hover{opacity:.85}.btn-danger:disabled{opacity:.3;cursor:default}.btn-tertiary{font-size:var(--text-base);cursor:pointer;text-underline-offset:3px;color:var(--text-primary);transition:opacity var(--duration-fast) var(--ease);background:0 0;border:none;padding:0;font-family:inherit;font-weight:500;text-decoration:underline}.btn-tertiary:hover{opacity:.65}.btn-tertiary:disabled{opacity:.3;cursor:default}.btn-tertiary.on-light{color:var(--text-inverse)}.payment-section{margin:var(--space-sm) 0}.payment-section label:first-child{margin-bottom:var(--space-xs);display:block}.saved-cards{gap:var(--space-xs);margin-bottom:var(--space-sm);flex-direction:column;display:flex}.card-option{align-items:center;gap:var(--space-xs);cursor:pointer;font-size:var(--text-sm);display:flex}.card-option input[type=radio]{margin:0}.card-label{font-family:var(--font-mono,monospace)}.bookings-panel{margin-top:var(--space-2xl)}.bookings-header{margin-bottom:var(--space-lg);justify-content:space-between;align-items:center;display:flex}.book-another{text-align:center}.book-another-short{display:none}@media (max-width:640px){.book-another-full{display:none}.book-another-short{display:inline}}.bookings-panel h1{font-size:var(--text-2xl);color:var(--text-primary);margin-bottom:0;font-weight:700}.booking-item{padding:var(--space-sm) 0;border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;display:flex}.booking-item:last-child{border-bottom:none}.booking-item .info{font-size:var(--text-base);flex-direction:column;gap:2px;display:flex}.booking-item .info .info-date{font-size:var(--text-base)}.booking-item .info .info-detail,.booking-item .info .sub,.bookings-panel .empty{color:var(--text-muted);font-size:var(--text-sm)}.bookings-panel .empty a{color:var(--text-primary);text-decoration:underline}.badge{font-size:var(--text-xs);border-radius:var(--radius-sm);vertical-align:middle;letter-spacing:.04em;margin-left:4px;padding:1px 6px;font-weight:600;display:inline-block}.badge-type{background:var(--bg-elevated);color:var(--text-secondary)}.badge-private{background:var(--danger-light);color:var(--danger)}.badge-gym{background:var(--bg-elevated);color:var(--available)}.badge-waiver{background:var(--warning-light);color:var(--warning-dark)}.gym-discount-note{font-size:var(--text-sm);color:var(--available);margin:var(--space-xs) 0}.booking-actions{gap:var(--space-md);align-items:center;display:flex}.cancel-btn{color:var(--danger);border:1px solid var(--danger);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:all var(--duration-fast) var(--ease);background:0 0;padding:4px 10px;font-weight:500}.cancel-btn:hover{background:var(--danger);color:var(--text-primary)}.reschedule-btn{color:var(--text-secondary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;white-space:nowrap;transition:all var(--duration-fast) var(--ease);background:0 0;padding:4px 10px;font-weight:500}.reschedule-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--text-primary)}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);background:var(--gray-1000);width:max-content;max-width:240px;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);white-space:normal;text-align:left;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) var(--ease);z-index:20;padding:6px 10px;font-weight:400;line-height:1.4;position:absolute;bottom:calc(100% + 6px);right:0}[data-tooltip]:hover:after{opacity:1}[data-tooltip]:focus-visible:after{opacity:1}.empty-state{text-align:center;color:var(--text-muted);padding:var(--space-2xl);font-size:var(--text-base)}.toast{bottom:var(--space-xl);background:var(--bg-inverse);width:-moz-fit-content;width:fit-content;color:var(--text-inverse);padding:var(--space-md) var(--space-xl);border-radius:var(--radius-sm);font-size:var(--text-base);transition:transform var(--duration-base) var(--ease);z-index:1400;letter-spacing:.01em;text-align:center;max-width:min(92vw,32rem);box-shadow:var(--shadow-lg);margin-inline-start:auto;margin-inline-end:auto;line-height:1.4;position:fixed;left:0;right:0;transform:translateY(100px)}.toast.show{transform:translateY(0)}.auth-gate{justify-content:center;align-items:center;min-height:60vh;display:flex}.auth-gate-box{text-align:center;background:var(--bg-surface);border-radius:var(--radius-md);padding:var(--space-3xl) var(--space-2xl);border:1px solid var(--border);max-width:380px}.auth-gate-box h2{font-size:var(--text-lg);margin-bottom:var(--space-sm);letter-spacing:-.02em;font-weight:500}.auth-gate-box p{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--space-xl);line-height:1.5}.auth-gate-box .btn-primary{display:inline-block}.admin-nav{gap:var(--space-sm);margin-bottom:var(--space-xl);display:flex}.admin-nav a{border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-muted);background:var(--bg-surface);border:1px solid var(--border);transition:all var(--duration-fast) var(--ease);letter-spacing:.01em;padding:5px 14px;text-decoration:none}.admin-nav a:hover{border-color:var(--bg-inverse);color:var(--text-primary)}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.card h2{font-size:var(--text-sm);margin-bottom:var(--space-md);color:var(--text-muted);font-weight:500}.et-list{gap:var(--space-sm);flex-direction:column;display:flex}.admin-scroll-list{overscroll-behavior:contain;max-height:max(24rem,min(52vh,30rem));padding:var(--space-sm);border:1px solid var(--border);border-radius:var(--radius-md);background:color-mix(in srgb, var(--bg-elevated) 42%, transparent);scrollbar-gutter:stable;overflow-y:auto}.et-item{justify-content:space-between;align-items:center;gap:var(--space-md);min-height:5rem;padding:var(--space-md);background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--border) 55%, transparent);border-radius:var(--radius-sm);transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);display:flex;box-shadow:inset 0 1px #ffffff06}.et-item:hover{border-color:color-mix(in srgb, var(--text-muted) 45%, var(--border));background:color-mix(in srgb, var(--bg-elevated) 82%, var(--bg-hover))}.et-item.inactive{opacity:.52}.et-item .et-info{flex:1;min-width:0}.et-item .et-name{align-items:center;gap:var(--space-xs);min-width:0;color:var(--text-primary);font-weight:700;font-size:var(--text-lg);line-height:1.2;display:flex}.et-item .et-name .color-dot{width:.75rem;height:.75rem;margin-right:var(--space-xs);box-shadow:0 0 0 2px color-mix(in srgb, currentColor 8%, transparent);flex:none}.et-pill,.et-flag{border:1px solid var(--border);border-radius:var(--radius-pill);min-height:1.25rem;color:var(--text-muted);font-size:var(--text-xs);white-space:nowrap;align-items:center;padding:2px 7px;font-weight:600;line-height:1;display:inline-flex}.et-pill{margin-left:var(--space-xs)}.et-pill.danger,.et-flag.danger{border-color:color-mix(in srgb, var(--danger) 55%, var(--border));color:var(--danger)}.et-pill.muted{border-color:color-mix(in srgb, var(--border) 70%, transparent);color:var(--text-muted)}.et-flag{margin-left:var(--space-xs);vertical-align:middle}.pass-status-pill{margin-left:var(--space-xs);border-radius:var(--radius-sm);font-size:var(--text-xs);vertical-align:middle;border:1px solid;padding:1px 8px;font-weight:500;display:inline-block}.pass-status-pill-active{background:var(--available-light);border-color:var(--available);color:#3a6a52}.pass-status-pill-cancelled{background:var(--warning-light);border-color:var(--warning-dark);color:var(--warning-dark)}.et-item .et-details{color:var(--text-muted);font-size:var(--text-sm);margin-top:4px;line-height:1.4}.et-item .et-description{color:var(--text-secondary);max-width:62ch}.et-separator{color:var(--text-muted);margin:0 .35rem;display:inline-block}.et-item .et-actions{align-items:center;gap:var(--space-sm);flex:none;margin-left:auto;display:flex}.et-item .et-actions button{border-radius:var(--radius-sm);min-height:2rem;font-size:var(--text-sm);cursor:pointer;transition:all var(--duration-fast) var(--ease);justify-content:center;align-items:center;padding:4px 12px;font-family:inherit;font-weight:500;display:inline-flex}@media (max-width:640px){.admin-card.card{padding:var(--space-md)}.admin-scroll-list{overscroll-behavior:auto;scrollbar-gutter:auto;background:0 0;border:0;border-radius:0;max-height:none;padding:0;overflow:visible}.admin-scroll-list.et-list{gap:var(--space-md)}.et-item{min-height:0;padding:var(--space-md);align-items:flex-start;gap:var(--space-sm);grid-template-columns:minmax(0,1fr);display:grid}.et-item.has-media{column-gap:var(--space-md);grid-template-columns:minmax(5.75rem,32%) minmax(0,1fr)}.et-item.has-media>img.admin-thumb{aspect-ratio:4/3;grid-area:1/1;align-self:start;width:100%;max-width:7rem;height:auto;transform:none}.et-item .et-info{grid-column:1/-1}.et-item.has-media .et-info{grid-area:1/2}.et-item .et-name{font-size:var(--text-base);flex-wrap:wrap;align-items:baseline;line-height:1.18}.et-item .et-name .color-dot{margin-right:0}.et-item .et-details{overflow-wrap:anywhere}.et-item .et-actions{width:100%;padding-top:var(--space-xs);flex-wrap:wrap;grid-column:1/-1;justify-content:flex-start;margin-left:0}.et-item .et-actions button{flex:8rem;min-height:2.75rem}.et-item>.btn-primary-sm,.et-item>.btn-secondary-sm,.et-item>.btn-danger-sm{justify-self:start;min-height:2.75rem}}.sched-grid{gap:var(--space-xs);flex-direction:column;display:flex}.sched-row{align-items:center;gap:var(--space-md);padding:var(--space-sm) 0;display:flex}.sched-row .day-label{width:100px;font-weight:500;font-size:var(--text-base)}.sched-row input[type=time]{border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 8px;font-family:inherit}input[type=time],input[type=date]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.sched-row .closed-label{color:var(--text-muted);font-size:var(--text-sm)}.sched-row input[type=checkbox]{margin:0}.form-grid{gap:var(--space-md);grid-template-columns:1fr 1fr;display:grid}.form-grid .full-width{grid-column:1/-1}.form-grid .full-width>label.checkbox-label{align-items:flex-start;gap:var(--space-sm);width:100%;font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;margin-bottom:0;font-weight:400;display:flex}.form-grid .full-width>label.checkbox-label input[type=checkbox]{flex-shrink:0;margin-top:2px}.form-grid label{font-size:var(--text-xs);color:var(--text-muted);margin-bottom:3px;font-weight:500;display:block}.form-grid input:not([type=checkbox]),.form-grid select{width:100%;padding:var(--space-sm) var(--space-3);border:1px solid var(--gray-500);border-radius:var(--radius-input);background:var(--bg-surface);transition:border-color var(--duration-fast) var(--ease), background var(--duration-fast) var(--ease);font-family:inherit}.form-grid select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none' stroke='%23888888' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 6l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right var(--space-md) center;background-size:16px;padding-right:2.5rem}.form-grid input:not([type=checkbox]):focus,.form-grid select:focus{box-shadow:var(--focus-ring);outline:none}.form-grid input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.form-grid input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.form-grid input[type=number]{-moz-appearance:textfield}.color-picker-wrap{display:inline-block;position:relative}.color-picker-btn{align-items:center;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);background:var(--bg-surface);border:1px solid var(--gray-500);border-radius:var(--radius-input);cursor:pointer;height:38px;display:flex}.color-picker-btn:hover{border-color:var(--text-muted)}.color-swatch{border-radius:50%;flex-shrink:0;width:20px;height:20px;display:inline-block}.color-chevron{color:var(--text-muted);font-size:12px}.color-dropdown{z-index:50;padding:var(--space-sm);background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);grid-template-columns:repeat(5,28px);gap:6px;display:grid;position:absolute;top:calc(100% + 4px);left:0;box-shadow:0 4px 16px #0006}.color-option{cursor:pointer;border:2px solid #0000;border-radius:50%;width:28px;height:28px;transition:transform .1s,border-color .1s}.color-option:hover{transform:scale(1.15)}.color-option.selected{border-color:#fafafa}.user-search{margin-bottom:var(--space-md)}.user-search input{width:100%;padding:var(--space-sm) var(--space-3);border:1px solid var(--gray-500);border-radius:var(--radius-input);background:var(--bg-surface);color:var(--text-primary);font-family:inherit}.user-search input:focus{box-shadow:var(--focus-ring);outline:none}.user-item{padding:var(--space-md);background:var(--bg-elevated);border-radius:var(--radius-sm);justify-content:space-between;align-items:center;display:flex}.user-item .user-info{flex:1;min-width:0}.user-item .user-name{font-weight:600;font-size:var(--text-base);overflow-wrap:anywhere}.user-item .user-details{font-size:var(--text-sm);color:var(--text-muted);overflow-wrap:anywhere;margin-top:2px}.user-item .user-actions{gap:var(--space-sm);display:flex}.user-item-link{color:inherit;transition:background var(--duration-fast) var(--ease);text-decoration:none}.user-item-link:hover{background:var(--off-white)}.user-item .user-arrow{color:var(--text-muted);font-size:var(--text-lg)}.role-badge{font-size:var(--text-xs);border-radius:var(--radius-sm);letter-spacing:.04em;margin-left:4px;padding:1px 6px;font-weight:600;display:inline-block}.role-admin{background:var(--danger-light);color:var(--danger)}.role-staff{background:var(--info-light);color:var(--info)}.role-customer{background:var(--bg-elevated);color:var(--text-muted);border:1px solid var(--border)}.waiver-container{max-width:780px;padding:var(--space-xl) var(--gutter);margin:0 auto}.waiver-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-2xl)}.waiver-card h2{font-size:var(--text-xl);letter-spacing:-.02em;margin-bottom:var(--space-sm);font-weight:500}.waiver-meta{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--space-xl)}.waiver-text{background:var(--bg-elevated);border-radius:var(--radius-sm);padding:var(--space-lg);margin-bottom:var(--space-xl);font-family:inherit;font-size:var(--text-sm);color:var(--text-secondary);max-height:300px;line-height:1.7;overflow-y:auto}.waiver-text h3{font-size:var(--text-base);margin-bottom:var(--space-sm);font-weight:600}.waiver-text p{margin-bottom:var(--space-md)}.waiver-text ul{margin:0 0 var(--space-md) var(--space-lg)}.waiver-text li{margin-bottom:var(--space-xs)}.waiver-btn{border-radius:var(--radius-sm);width:100%;font-size:var(--text-base);cursor:pointer;background:var(--bg-inverse);color:var(--text-inverse);transition:opacity var(--duration-fast) var(--ease);border:none;padding:.7rem;font-family:inherit;font-weight:500}.waiver-btn:hover{opacity:.7}.waiver-btn:disabled{opacity:.3;cursor:not-allowed}.waiver-done{text-align:center;padding:var(--space-2xl)}.waiver-done h2{margin-bottom:var(--space-sm)}.waiver-done p{color:var(--text-muted);margin-bottom:var(--space-xl)}.waiver-done a{background:var(--bg-inverse);color:var(--text-inverse);border-radius:var(--radius-sm);font-weight:500;font-size:var(--text-base);padding:.6rem 2rem;text-decoration:none;display:inline-block}.waiver-done a:hover{opacity:.7}.waiver-error{text-align:center;color:var(--danger);padding:var(--space-2xl)}.checkin-section{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-lg);margin-bottom:var(--space-xl)}.checkin-header{margin-bottom:var(--space-md)}.checkin-header h2{font-size:var(--text-lg);letter-spacing:-.02em;margin-bottom:2px;font-weight:600}.checkin-meta{font-size:var(--text-sm);color:var(--text-muted)}.checkin-list{gap:var(--space-sm);flex-direction:column;display:flex}.checkin-item{gap:var(--space-sm);padding:var(--space-md);background:var(--bg-elevated);border-radius:var(--radius-sm);border-left:3px solid var(--warning);flex-direction:column;display:flex}.checkin-item.checked-in{border-left-color:var(--available);opacity:.7}.checkin-header-row{justify-content:space-between;align-items:flex-start;gap:var(--space-sm);display:flex}.checkin-info{flex:1}.checkin-info strong{font-size:var(--text-base)}.attendee-list{border-top:1px solid var(--border);padding:0;padding-top:var(--space-sm);flex-direction:column;gap:4px;margin:0;list-style:none;display:flex}.attendee-row{justify-content:space-between;align-items:center;gap:var(--space-sm);font-size:var(--text-sm);display:flex}.attendee-row.attendee-in .attendee-name{color:var(--text-muted)}.attendee-name{align-items:center;gap:var(--space-xs);color:var(--text-primary);display:flex}.attendee-status{font-size:var(--text-xs);color:var(--available);letter-spacing:.04em;font-weight:600}.checkin-btn-sm{background:var(--available);color:var(--text-inverse);border-radius:var(--radius-sm);min-width:44px;min-height:44px;font-size:var(--text-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--ease);border:none;padding:10px 16px;font-family:inherit;font-weight:600}.checkin-btn-sm:hover{opacity:.8}.checkin-details{font-size:var(--text-sm);color:var(--text-muted);margin-top:2px;display:block}.checkin-notes{font-size:var(--text-sm);color:var(--text-muted);margin-top:2px;font-style:italic}.checkin-actions{gap:var(--space-sm);flex-shrink:0;align-items:center;display:flex}.checkin-btn{background:var(--available);color:var(--text-inverse);border-radius:var(--radius-sm);font-size:var(--text-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--ease);border:none;padding:6px 16px;font-family:inherit;font-weight:600}.checkin-btn:hover{opacity:.8}.checked-in-badge{font-size:var(--text-xs);color:var(--available);letter-spacing:.04em;font-weight:600}.cancel-btn-sm{color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:var(--text-xs);cursor:pointer;transition:all var(--duration-fast) var(--ease);background:0 0;padding:4px 10px;font-family:inherit}.cancel-btn-sm:hover{color:var(--danger);border-color:var(--danger)}.new-booking-section{margin-bottom:var(--space-xl)}.section-header{margin-bottom:var(--space-md);justify-content:space-between;align-items:center;display:flex}.section-header h2{font-size:var(--text-sm);color:var(--text-muted);font-weight:500}.btn-primary-sm,.btn-secondary-sm,.btn-danger-sm{padding:var(--space-xs) var(--space-md);font-size:var(--text-sm);border-radius:var(--radius-sm);cursor:pointer;transition:opacity var(--duration-fast) var(--ease);border:1px solid;font-family:inherit;font-weight:500;text-decoration:none}.btn-primary-sm:disabled,.btn-secondary-sm:disabled,.btn-danger-sm:disabled{opacity:.3;cursor:default}.btn-primary-sm{background:var(--bg-inverse);color:var(--text-inverse);border-color:var(--bg-inverse)}.btn-primary-sm:hover:not(:disabled){opacity:.85}.btn-secondary-sm{color:var(--text-primary);border-color:var(--border);background:0 0}.btn-secondary-sm:hover:not(:disabled){border-color:var(--text-primary)}.btn-danger-sm{color:var(--danger);border-color:var(--danger);background:0 0}.btn-danger-sm:hover:not(:disabled){background:var(--danger);color:var(--text-primary)}.card>.btn-primary-sm,.card>.btn-secondary-sm,.card>.btn-danger-sm{margin-top:var(--space-md)}.btn-new-booking{width:100%;padding:var(--space-md);background:var(--bg-surface);border:1px dashed var(--border);border-radius:var(--radius-md);font-size:var(--text-base);color:var(--text-primary);cursor:pointer;transition:all var(--duration-fast) var(--ease);font-family:inherit;font-weight:500}.btn-new-booking:hover{border-color:var(--bg-inverse);color:var(--text-primary)}.other-bookings{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:var(--space-lg)}.other-bookings h2{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-md);font-weight:500}.other-bookings .checkin-item{margin-bottom:var(--space-sm)}.page-title{font-size:var(--text-2xl);letter-spacing:-.02em;margin-bottom:var(--space-xs);font-weight:500}.page-subtitle{color:var(--text-muted);font-size:var(--text-base);margin-bottom:var(--space-xl)}.pass-grid{gap:var(--space-md);margin-bottom:var(--space-2xl);grid-template-columns:repeat(auto-fill,minmax(240px,1fr));display:grid}.pass-card{background:var(--bg-surface);border:1px solid var(--border);border-radius:var(--radius-xl);padding:var(--space-xl);text-align:center;color:var(--text-primary);cursor:pointer;transition:box-shadow var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);flex-direction:column;text-decoration:none;display:flex}.pass-card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.pass-card[aria-disabled=true]{cursor:default}.pass-card[aria-disabled=true]:hover{box-shadow:none;transform:none}.pass-card h3{font-size:var(--text-lg);letter-spacing:-.02em;margin-bottom:var(--space-sm);font-weight:600}.pass-price{font-size:var(--text-2xl);margin-bottom:var(--space-xs);font-weight:600}.pass-detail{font-size:var(--text-sm);color:var(--text-muted);margin-bottom:var(--space-xs)}.pass-savings{font-size:var(--text-sm);color:var(--available);margin-bottom:var(--space-lg);font-weight:500}.pass-buy-btn{background:var(--bg-inverse);width:100%;color:var(--text-inverse);border-radius:var(--radius-sm);font-size:var(--text-base);text-align:center;cursor:pointer;transition:opacity var(--duration-fast) var(--ease);border:none;margin-top:auto;padding:.6rem;font-family:inherit;font-weight:500;display:block}.pass-card:hover .pass-buy-btn{opacity:.85}.pass-buy-btn[aria-disabled=true]{opacity:.3}@media (max-width:750px){.modal{padding:var(--space-md)}.pos-customer-result,.pos-customer-selected,.pos-customer-conflict{flex-direction:column;align-items:flex-start}.pos-customer-side{justify-content:space-between;width:100%}}body.has-app-footer #sentry-feedback{--actor-inset:auto 0 calc(5.5rem + env(safe-area-inset-bottom)) auto}.confirm-message.svelte-mrlnh3{color:var(--text-secondary);font-size:var(--text-base);margin-top:var(--space-sm);line-height:1.5}.confirm-input.svelte-mrlnh3{gap:var(--space-xs);margin-top:var(--space-md);display:grid}.confirm-input.svelte-mrlnh3 span:where(.svelte-mrlnh3){color:var(--text-primary);font-size:var(--text-sm);font-weight:600}.confirm-input.svelte-mrlnh3 textarea:where(.svelte-mrlnh3){resize:vertical;min-height:5.5rem}.confirm-input.svelte-mrlnh3 small:where(.svelte-mrlnh3){color:var(--text-secondary);font-size:var(--text-xs)}.modal-actions.choice-actions.svelte-mrlnh3{flex-direction:column-reverse}.choice-actions.svelte-mrlnh3 .alternate-action:where(.svelte-mrlnh3){border-color:var(--danger);color:var(--danger)}
