.booking-confirmation-skeleton{background:linear-gradient(90deg, var(--surface-raised) 0 40%, var(--surface-sunken) 50%, var(--surface-raised) 60% 100%);background-size:200% 100%;border-radius:5px;height:42px;margin-top:14px;animation:1.4s linear infinite booking-confirmation-shimmer;display:block}@media (prefers-reduced-motion:reduce){.booking-confirmation-skeleton{animation:none}}@keyframes booking-confirmation-shimmer{to{background-position:-200% 0}}.booking-confirmation-actions{justify-items:start;gap:8px;display:grid}.booking-confirmation-charge{align-items:center;gap:6px;min-height:40px;padding:8px 16px;font-size:13px;display:inline-flex}.booking-confirmation-charge-hint{color:var(--muted);font-size:12px;line-height:1.4}
.booking-inspector.inspector-v2{overscroll-behavior:contain;flex-direction:column;gap:0;max-height:calc(100vh - 24px);padding:18px 20px 16px;display:flex;top:12px;overflow-y:auto}.inspector-v2 .inspector-heading{align-items:flex-start}.inspector-v2 .inspector-heading h2{font:400 16px / 1.3 var(--font-body);color:var(--muted);letter-spacing:0}.inspector-v2 .inspector-heading p{font:400 30px / 1.1 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;color:var(--accent);white-space:nowrap;margin-top:6px}.inspector-v2 .inspector-heading .icon-button{margin:-8px -10px 0 0}.booking-inspector.inspector-v2>.tag{align-self:flex-start;margin-top:12px}.inspector-v2 .inspector-details{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:18px 0 0;padding-top:14px;display:grid}.inspector-v2 .inspector-details>div,.inspector-v2 .inspector-details>div:last-child{border:0;min-width:0;padding:0}.inspector-v2 .inspector-details dt{color:var(--muted);font-size:12px}.inspector-v2 .inspector-details dd{overflow-wrap:anywhere;margin-top:2px;font-size:14px}.inspector-v2 .inspector-value{border-top:1px solid var(--line);margin-top:16px;padding-top:14px}.inspector-v2 .inspector-value dt{color:var(--muted);font-size:12px}.inspector-v2 .inspector-value dd{margin:2px 0 0}.inspector-v2 .inspector-value .numeral{font:400 28px / 1.2 var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.01em;color:var(--ink);display:block}.inspector-v2 .inspector-value dd:last-child{color:var(--muted);margin-top:4px;font-size:13px}.inspector-v2 .manual-receipt-dialog{border-top:0;margin-top:14px;padding-top:0}.inspector-v2 .manual-receipt-dialog>summary{background:var(--action);min-height:42px;color:var(--surface);border-radius:5px;justify-content:center;align-items:center;padding:10px 16px;list-style:none;display:flex}.inspector-v2 .manual-receipt-dialog>summary::-webkit-details-marker{display:none}.inspector-v2 .manual-receipt-dialog>summary:hover{background:var(--action-hover)}.inspector-v2 .manual-receipt-dialog[open]>summary{background:var(--surface-raised);color:var(--ink);border:1px solid var(--line)}.inspector-v2 .inspector-skeleton{background:var(--surface-raised);border-radius:5px;height:42px;margin-top:14px}.inspector-v2 .inspector-attendance{margin:14px 0 0;padding-top:4px}.inspector-v2 .inspector-attendance>summary{color:var(--accent);min-height:40px;font-size:13px}.inspector-v2 .occupancy-panel{border-bottom:0;margin-block:14px 0;padding-block:14px 0}.inspector-v2 .inspector-action{background:0 0;border:0;align-self:flex-start;width:auto;min-height:0;margin-top:16px;padding:0;font-size:13px}.inspector-v2 .inspector-action:hover{color:var(--action);background:0 0}@media (max-width:1179px){.booking-inspector.inspector-v2{z-index:25;width:min(360px,100%);max-height:none;box-shadow:-12px 0 40px var(--shadow-strong);padding-top:calc(18px + env(safe-area-inset-top,0px));padding-bottom:calc(16px + env(safe-area-inset-bottom,0px));border-width:0 0 0 1px;border-radius:0;order:0;animation:.2s cubic-bezier(.16,1,.3,1) inspector-slide;position:fixed;inset:0 0 0 auto}.inspector-v2 .inspector-details{grid-template-columns:repeat(2,minmax(0,1fr));margin-block:18px 0}.inspector-v2 .inspector-details>div:last-child{border-bottom:0}}@media (max-width:680px){.booking-inspector.inspector-v2{width:100%;max-height:82vh;box-shadow:0 -12px 40px var(--shadow-strong);padding:16px 18px calc(16px + env(safe-area-inset-bottom,0px));border-width:1px 0 0;border-radius:12px 12px 0 0;animation-name:inspector-rise;inset:auto 0 0}.inspector-v2 .inspector-heading p{font-size:26px}}@keyframes inspector-slide{0%{opacity:0;transform:translate(24px)}}@keyframes inspector-rise{0%{opacity:0;transform:translateY(24px)}}@media (prefers-reduced-motion:reduce){.booking-inspector.inspector-v2{animation:none}}.inspector-players ol{gap:4px;margin:4px 0 0;padding-left:18px;display:grid}.inspector-players li.is-booker{font-weight:600}.inspector-booker-tag{background:var(--accent-soft);color:var(--accent);font:700 10px / 1.6 var(--font-action);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-left:8px;padding:1px 8px}.inspector-v2 .inspector-edit{margin:14px 0 0;padding-top:4px}.inspector-v2 .inspector-edit>summary{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:52px;color:var(--ink);cursor:pointer;grid-template-columns:34px minmax(0,1fr) 16px;align-items:center;gap:12px;padding:8px 12px;list-style:none;transition:background .15s,border-color .15s;display:grid}.inspector-v2 .inspector-edit>summary::-webkit-details-marker{display:none}.inspector-v2 .inspector-edit>summary::marker{content:""}.inspector-v2 .inspector-edit>summary:hover{border-color:var(--border-strong);background:var(--accent-soft)}.inspector-v2 .inspector-edit>summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.inspector-v2 .inspector-edit[open]>summary{border-color:var(--accent)}.inspector-edit-icon{background:var(--accent-soft);width:34px;height:34px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.inspector-edit-text{gap:1px;min-width:0;display:grid}.inspector-edit-text strong{font-size:14px;font-weight:600}.inspector-edit-text small{color:var(--muted);font-size:12px}.inspector-edit-chevron{color:var(--muted);transition:transform .2s}.inspector-v2 .inspector-edit[open] .inspector-edit-chevron{transform:rotate(180deg)}@media (prefers-reduced-motion:reduce){.inspector-v2 .inspector-edit>summary,.inspector-edit-chevron{transition:none}}.players-editor{gap:10px;padding-top:6px;display:grid}.players-editor>h3{font:700 11px / 1.3 var(--font-action);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0}.players-editor>ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.players-editor>ul>li{border:1px solid var(--line);border-radius:6px;justify-content:space-between;align-items:center;gap:8px;min-height:44px;padding:0 4px 0 10px;font-size:14px;display:flex}.players-editor .text-button{min-height:40px;color:var(--danger);align-items:center;gap:5px;font-size:13px;display:inline-flex}.players-editor-add{gap:8px;display:grid}.players-editor-add>button{justify-content:center;align-items:center;gap:6px;min-height:44px;display:inline-flex}.players-editor-empty,.players-editor-note{color:var(--muted);margin:0;font-size:12px}
.booking-release-panel{border:1px solid var(--line);background:var(--surface);overflow-wrap:anywhere;border-radius:12px;gap:24px;margin-block:24px;padding:24px;display:grid}.booking-release-panel :is(h3,h4,p){margin:0}.booking-release-heading{border-bottom:1px solid var(--line);grid-template-columns:38px minmax(0,1fr) auto;align-items:start;gap:12px;padding-bottom:16px;display:grid}.booking-release-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:50%;place-items:center;display:grid}.booking-release-heading>div{min-width:0}.booking-release-who{color:var(--ink);overflow-wrap:anywhere;margin-top:6px;font-size:15px}.booking-release-when{color:var(--muted);margin-top:2px;font-size:13px}.booking-release-close{align-self:start}.booking-release-panel form,.booking-release-panel fieldset,.booking-release-review{gap:16px;min-width:0;display:grid}.booking-release-panel fieldset{border:0;margin:0;padding:0}.booking-release-panel legend{margin-bottom:12px;padding:0;font-weight:600}.booking-release-choices{gap:8px;display:grid}.booking-release-choice{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);cursor:pointer;grid-template-columns:18px 32px minmax(0,1fr);align-items:center;gap:12px;min-height:56px;padding:10px 14px;display:grid}.booking-release-choice:hover{border-color:var(--border-strong)}.booking-release-choice:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.booking-release-choice:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.booking-release-choice-icon{background:var(--surface-raised);width:32px;height:32px;color:var(--accent);border-radius:8px;place-items:center;display:grid}.booking-release-choice-text{gap:2px;min-width:0;display:grid}.booking-release-choice-text strong{font-size:14px;font-weight:600}.booking-release-choice-text small{color:var(--muted);font-size:12px}.booking-release-choice input{width:18px;min-width:18px;height:18px;accent-color:var(--accent);margin:0}.booking-release-fields{grid-template-columns:repeat(auto-fit,minmax(min(100%,24ch),1fr));gap:16px;display:grid}.booking-release-panel label:not(.booking-release-choice){gap:8px;min-width:0;display:grid}.booking-release-panel :is(input,select,textarea){min-width:0;max-width:100%}.booking-release-panel textarea{resize:vertical}.booking-release-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,20ch),1fr));gap:16px 24px;margin:0;display:grid}.booking-release-summary dt{color:var(--muted);font-size:13px}.booking-release-summary dd{margin:4px 0 0}.booking-release-effects{margin:0;padding:0;list-style:none}.booking-release-effects>li{border-top:1px solid var(--line);gap:8px;padding-block:16px;display:grid}.booking-release-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.booking-release-panel :is(button,select,textarea){min-height:44px}.booking-release-panel :is(button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.booking-release-panel p{max-width:65ch}@media (max-width:680px){.booking-release-panel{padding:20px 16px}.booking-release-actions button{width:100%}.booking-release-choices{flex-direction:column;gap:8px}}
.booking-refund-status{border-top:1px solid var(--line);overflow-wrap:anywhere;gap:16px;min-width:0;padding-block:20px;display:grid}.booking-refund-status h5{color:var(--ink);font:inherit;margin:0;font-size:17px}.booking-refund-status-label{color:var(--accent);font-weight:600}.booking-refund-facts{flex-wrap:wrap;gap:12px 28px;margin:0;display:flex}.booking-refund-facts>div{min-width:0}.booking-refund-facts dt{color:var(--muted);font-size:13px}.booking-refund-facts dd{font-variant-numeric:tabular-nums;margin:4px 0 0}.booking-refund-confirmation{justify-items:start;gap:12px;display:grid}.booking-release-panel .booking-refund-status .booking-refund-check{cursor:pointer;align-items:start;gap:10px;min-height:44px;display:flex}.booking-refund-check input{width:18px;min-width:18px;height:18px;accent-color:var(--accent);margin:3px 0 0}.booking-refund-actions{flex-wrap:wrap;gap:12px;display:flex}.booking-refund-status :is(button,summary){min-height:44px}.booking-refund-status :is(button,input,summary,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.booking-refund-history summary{cursor:pointer;align-content:center;display:list-item}.booking-refund-history ol{margin:12px 0 0;padding-inline-start:24px}.booking-refund-history li{padding:0 0 16px 4px}.booking-refund-history time{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:4px;font-size:13px;display:block}.booking-refund-history p{margin-top:8px}@media (max-width:680px){.booking-refund-actions,.booking-refund-confirmation{justify-items:stretch;display:grid}.booking-refund-actions button,.booking-refund-confirmation button{width:100%}.booking-refund-facts{gap:12px 20px}}
.day-lanes{gap:0;padding:0 18px 4px;display:grid}.day-lanes-head,.day-lanes-row{grid-template-columns:168px minmax(0,1fr);align-items:stretch;display:grid}.day-lanes-head{border-bottom:1px solid var(--line);height:26px}.day-lanes-ticks{color:var(--muted);font-variant-numeric:tabular-nums;font-size:11px;position:relative}.day-lanes-ticks>span{position:absolute;top:6px;transform:translate(-50%)}.day-lanes-now{background:var(--action);color:var(--surface);font:700 9px / 1.3 var(--font-action);letter-spacing:.06em;text-transform:uppercase;border-radius:3px;padding:2px 6px;font-style:normal;position:absolute;top:3px;transform:translate(-50%)}.day-lanes-row{border-bottom:1px solid var(--line)}.day-lanes-row:last-of-type{border-bottom:0}.day-lanes-court{border-right:1px solid var(--line);flex-direction:column;justify-content:center;gap:1px;min-width:0;padding:8px 12px 8px 0;display:flex}.day-lanes-court strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;line-height:1.25;overflow:hidden}.day-lanes-court small{color:var(--muted);font-size:11px}.day-lane{background-image:repeating-linear-gradient(to right, var(--line) 0 1px, transparent 1px calc(100% / var(--lane-hours,17)));min-height:52px;position:relative}.day-lane-open{background:var(--surface);pointer-events:none;position:absolute;top:0;bottom:0}.day-lane-free{min-height:0;color:var(--accent);opacity:0;cursor:pointer;background:0 0;border:1px dashed #0000;border-radius:4px;place-items:center;margin:0;padding:0;display:grid;position:absolute;top:6px;bottom:6px}.day-lane:hover .day-lane-free{opacity:.55;border-color:var(--accent-tint)}.day-lane-free:hover,.day-lane-free:focus-visible{opacity:1;background:var(--accent-soft);border-color:var(--accent)}.day-lane-block{cursor:pointer;text-align:left;border:1px solid;border-radius:4px;align-items:center;gap:8px;min-width:0;min-height:0;margin:0;padding:0 10px;font-size:12px;line-height:1.2;display:flex;position:absolute;top:6px;bottom:6px;overflow:hidden}.day-lane-block>*{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.day-lane-block strong{flex:0 auto;min-width:0;font-weight:400}.day-lane-block small{font-size:11px}.day-lane-time{font-variant-numeric:tabular-nums;font-size:11px}.day-lane-block.booking{background:var(--booking-bg);border-color:var(--booking-line);color:var(--booking-ink)}.day-lane-block.lesson{background:var(--lesson-bg);border-color:var(--lesson-line);color:var(--lesson-ink)}.day-lane-block.maintenance,.day-lane-block.block{background:var(--closure-bg);border-color:var(--closure-line);color:var(--closure-ink)}.day-lane-block.event{background:var(--accent-soft);border-color:var(--booking-line);color:var(--booking-ink)}.day-lane-block.is-held{border-style:dashed}.day-lane-block:hover{filter:brightness(.96)}.day-lane-block.is-selected{box-shadow:inset 0 0 0 1px var(--accent)}.day-lane-now{background:var(--action);pointer-events:none;width:2px;margin-left:-1px;position:absolute;top:0;bottom:0}.day-lanes-foot{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 0 8px;font-size:11px;display:flex}@media (max-width:680px){.day-lanes{overscroll-behavior-x:contain;padding:0 12px 4px;overflow-x:auto}.day-lanes-head,.day-lanes-row{min-width:calc(96px + 48px * var(--lane-hours,17));grid-template-columns:96px minmax(0,1fr)}.day-lanes-court,.day-lanes-head>:first-child{z-index:1;background:var(--surface);position:sticky;left:0}.day-lane-block{padding:0 6px}.day-lane-block strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.day-lane-block small,.day-lane-time{display:none}}.day-lane-block{container-type:inline-size}.day-lane-code{font:700 10px / 1 var(--font-action);letter-spacing:.08em;display:none}@container (max-width:96px){.day-lane-block>:not(.day-lane-code){display:none}.day-lane-code{margin:auto;display:block}}.day-lane-block[data-member]{box-shadow:inset 3px 0 0 var(--accent)}
