:root{color-scheme:light;--ink:#18382d;--muted:#64786f;--paper:#f6f7f1;--line:#dfe6dc;--green:#184d39;--lime:#e0f17b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:15px}header{height:90px;display:flex;align-items:center;justify-content:space-between;max-width:1300px;margin:auto;padding:0 44px;border-bottom:1px solid var(--line)}.brand{color:var(--ink);text-decoration:none;display:flex;align-items:center;font-size:23px;font-weight:850;letter-spacing:1px;gap:11px}.mark{font-size:38px;font-weight:400}.brand small{font-size:10px;font-weight:600;letter-spacing:2px;border-left:1px solid #bbcabc;padding-left:12px;margin-left:6px}.private{font-size:12px;color:var(--muted)}main{max-width:1300px;margin:auto;padding:0 44px}.intro{padding:66px 0 48px;display:grid;grid-template-columns:1.5fr 1fr;gap:70px;align-items:center}.eyebrow{font-size:11px;letter-spacing:2px;font-weight:750;margin:0 0 18px}h1{font-size:50px;line-height:1.1;letter-spacing:-2px;margin:0 0 20px;font-weight:650}h1 span{color:#72856d}.lede{line-height:1.65;max-width:510px;color:var(--muted);margin:0}.intro aside{border:1px solid var(--line);padding:25px 28px;border-radius:12px;background:#edf1e6}.intro aside p{font-size:13px;line-height:1.6;color:var(--muted);margin-bottom:0}.live-dot{display:inline-block;width:8px;height:8px;background:#6d9b48;border-radius:50%;margin-right:9px}.workspace{display:grid;grid-template-columns:350px 1fr;gap:36px;align-items:start}.form-card{background:white;border:1px solid var(--line);border-radius:16px;padding:25px}.section-top{display:flex;align-items:center;gap:11px;margin-bottom:24px}h2{font-size:19px;font-weight:650;letter-spacing:-.5px;margin:0}.number{font-size:10px;border:1px solid #cfdbca;border-radius:50%;width:25px;height:25px;display:grid;place-content:center;color:var(--muted)}form>label,.form-grid label{font-size:12px;font-weight:650;display:block;margin-bottom:19px}.form-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:12px}input:not([type=radio]),select{width:100%;border:1px solid #d5dfd2;border-radius:7px;padding:11px 10px;color:var(--ink);background:white;font:inherit;font-size:14px;margin-top:8px;min-width:0}input:focus,select:focus{outline:2px solid #b7cf94;outline-offset:1px}fieldset{padding:0;border:0;margin:0 0 18px}legend{font-size:12px;font-weight:650;margin-bottom:8px}.radio{border:1px solid var(--line);display:flex;align-items:center;padding:12px;border-radius:8px;gap:10px;margin-bottom:8px;cursor:pointer}.radio:has(:checked){background:#f4f8e9;border-color:#90aa6b}.radio input{accent-color:var(--green);margin:0}.radio b{font-size:13px}.radio small{display:block;color:var(--muted);font-size:11px;margin-top:3px}.money-input{position:relative}.money-input span{position:absolute;right:13px;top:20px;color:var(--muted)}.money-input input{padding-right:30px}.hint{font-size:11px;line-height:1.6;color:var(--muted)}button{cursor:pointer;font:inherit;border:0}.primary{background:var(--green);color:white;padding:14px 11px;font-size:12px;font-weight:650;border-radius:8px;width:100%;margin-top:6px}.primary:hover{background:#28644b}button:disabled{opacity:.5;cursor:wait}.text-button{background:transparent;color:var(--green);padding:9px;font-size:12px}#form-error{font-size:12px;color:#a03924;line-height:1.5;margin-bottom:0}.queue>.section-top{margin:0 0 18px;padding-top:6px}.count{margin-left:auto;background:#e7eddf;border-radius:20px;padding:4px 9px;font-size:11px}.tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:20px}.tabs button{padding:0 0 13px;background:transparent;color:var(--muted);font-size:12px}.tabs .selected{color:var(--ink);font-weight:650;border-bottom:2px solid var(--green)}.empty{border:1px dashed #cbd8c6;border-radius:14px;min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:30px;color:var(--muted)}.empty .ball{font-size:30px;color:#8fa277;margin-bottom:12px}.empty strong{font-size:17px;font-weight:550;color:var(--ink)}.empty p{font-size:13px;line-height:1.6;max-width:300px}.job{background:white;border:1px solid var(--line);border-radius:12px;margin-bottom:13px;padding:21px}.job-top{display:flex;justify-content:space-between;align-items:start;gap:12px}.job h3{font-size:19px;font-weight:650;margin:0 0 7px;letter-spacing:-.4px}.sub{font-size:12px;color:var(--muted)}.badge{font-size:10px;padding:6px 9px;border-radius:6px;background:#edf2e5;color:#46613b;max-width:220px;line-height:1.4}.badge.reserved,.badge.confirmed{background:#fff0cf;color:#886322}.badge.error,.badge.needs_review,.badge.auth_required,.badge.card_unavailable,.badge.blocked{background:#f8e7df;color:#9e4a2d}.badge.paid{background:#def0e2;color:#25623b}.detail{font-size:12px;line-height:1.6;color:var(--muted);padding-top:13px;margin:0}.job-actions{border-top:1px solid #edf0e8;margin-top:15px;padding-top:10px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.job-actions button{background:transparent;font-size:11px;color:var(--muted);padding:5px 0}.job-actions a{font-size:12px;font-weight:600;color:var(--green);margin-right:auto}.notes{margin:54px 0 35px;border-top:1px solid var(--line);padding-top:30px;display:grid;grid-template-columns:repeat(3,1fr);gap:38px}.notes span{font-size:9px;letter-spacing:1.4px;color:#7c8b76}.notes h3{font-size:15px;margin:12px 0 9px;font-weight:600}.notes p{font-size:12px;color:var(--muted);line-height:1.7;margin:0}footer{display:flex;justify-content:space-between;font-size:10px;color:#7f8c7b;border-top:1px solid var(--line);padding:18px 0 30px;gap:10px}dialog{border:1px solid var(--line);border-radius:12px;color:var(--ink);padding:25px;max-width:650px;width:90%}dialog::backdrop{background:#16332466}.history-row{padding:12px 0;border-top:1px solid var(--line);font-size:12px;line-height:1.6}.history-row small{color:var(--muted)}@media(max-width:900px){header{padding:0 22px}.intro{gap:25px;grid-template-columns:1fr}.intro aside{padding:20px}.workspace{grid-template-columns:310px 1fr;gap:20px}main{padding:0 22px}h1{font-size:43px}}@media(max-width:680px){header{height:72px}.private{display:none}.intro{padding:35px 0 30px}h1{font-size:40px}.workspace{grid-template-columns:1fr}.form-card{padding:22px}.queue{margin-top:15px}.notes{grid-template-columns:1fr;gap:24px}.job-top{flex-direction:column}footer{flex-direction:column}.brand small{font-size:9px}}

.header-actions{display:flex;align-items:center;gap:12px}.account{margin-top:45px;border-top:1px solid var(--line);padding-top:30px}.account-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:12px;color:var(--muted)}.account-toolbar p{margin:0}.account-toolbar label{display:flex;align-items:center;gap:8px;white-space:nowrap}.account-toolbar input[type=checkbox]{width:auto;margin:0;accent-color:var(--green)}.booking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:18px}.booking-grid .job{margin:0}.booking-grid .job-top{flex-wrap:wrap}.login-main{max-width:540px;margin:70px auto}.login-main h1{font-size:34px;margin-top:18px}.login-main form{margin-top:24px}#login-error,#access-result{font-size:13px;line-height:1.6}#access-form label{display:block;font-size:12px;font-weight:600;margin:18px 0}#access-dialog p{line-height:1.6}#access-dialog a{color:var(--green)}@media(max-width:680px){.booking-grid{grid-template-columns:1fr}.account-toolbar{align-items:start;flex-direction:column}.header-actions{gap:0}.header-actions .text-button{font-size:10px;padding-right:0}.brand{font-size:19px}.brand small{display:none}.login-main{margin:35px auto}}

.mate-options{display:flex;flex-wrap:wrap;gap:7px}.mate-options label{display:flex;align-items:center;gap:5px;border:1px solid var(--line);border-radius:7px;padding:8px;font-size:12px;cursor:pointer}.mate-options label:has(:checked){background:#f4f8e9;border-color:#90aa6b}.mate-options input[type=checkbox]{width:auto;margin:0;accent-color:var(--green)}.mate-options label:has(:disabled){opacity:.5}.add-mate{display:flex;align-items:center;gap:6px;margin-top:7px}.add-mate input{font-size:12px!important}.add-mate button{background:transparent;color:var(--green);font-size:11px;margin-top:8px}.mates .hint{margin-bottom:0}

.header-actions a.text-button,.manage-mates{color:var(--green);text-decoration:none;font-size:12px}.manage-mates{display:inline-block;margin-top:8px;text-decoration:underline}.admin-main{padding-top:44px;padding-bottom:50px}.admin-main>.lede{margin-bottom:32px}.admin-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:start}.admin-add{display:flex;gap:12px;align-items:end;margin:22px 0}.admin-add label{flex:1;margin-bottom:0}.admin-add .primary{width:auto;margin:0 0 1px;padding:13px 18px}.admin-mate-row{display:flex;align-items:end;gap:7px;border-top:1px solid var(--line);padding:13px 0}.admin-mate-row label{flex:1;margin:0;min-width:0}.admin-mate-row .text-button{padding:11px 5px;white-space:nowrap}.admin-mate-row .remove-mate{color:#9e4a2d}.password-card form{margin-top:25px}.admin-mate-row input{font-size:13px}#admin-error{color:#a03924;font-size:13px}@media(max-width:850px){.admin-grid{grid-template-columns:1fr}.admin-main{padding-top:30px}.header-actions a.text-button{font-size:11px}}@media(max-width:450px){.admin-mate-row{flex-wrap:wrap}.admin-mate-row label{flex-basis:100%}.admin-add{align-items:stretch;flex-direction:column}.admin-add .primary{width:100%}}

.player-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.player-badge{background:#edf2e5;color:#36563f;border:1px solid #dce7d3;border-radius:20px;padding:5px 9px;font-size:11px}.special-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:22px}.special-actions .primary{width:auto;margin:0}#special-dialog p{line-height:1.6}
.session-callout{border:1px solid var(--line);padding:22px;border-radius:12px;margin-bottom:25px;background:#edf1e6}.session-callout p{font-size:13px;line-height:1.6;color:var(--muted)}.session-steps{font-size:13px;line-height:1.7;padding-left:18px}.session-steps li{margin-bottom:12px}.session-button{display:block;text-align:center;text-decoration:none;margin-bottom:10px}

/* Constrain native iOS date controls and avoid intrinsic input overlap. */
.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.form-grid>label{min-width:0;max-width:100%}
.form-grid input[type=date]{display:block;width:100%;max-width:100%;min-width:0;min-inline-size:0;box-sizing:border-box;-webkit-appearance:none;appearance:none;overflow:hidden}
@media(max-width:480px){.form-grid{grid-template-columns:minmax(0,1fr);gap:0}.form-grid input,.form-grid select{font-size:16px}}

/* Reversible Padel edition: decorative art stays clear of controls. */
.art-defs{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}
.intro{padding:42px 0 34px;gap:38px;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr)}
.hero-copy{position:relative;padding:16px 115px 16px 0;min-width:0}
.hero-copy .eyebrow{margin-bottom:14px}
.hero-copy h1{font-size:43px;letter-spacing:-1.7px;margin-bottom:12px;line-height:1.12}
.hero-copy .lede{font-size:14px}
.hero-ball{position:absolute;right:0;top:30px;width:88px;height:88px;border-radius:50%;background:radial-gradient(circle at 31% 25%,#f2ffae 0,#dcea62 42%,#a7c146 78%,#8ba23c 100%);box-shadow:inset -5px -6px 12px #667d2726,5px 18px 18px -13px #344a3a70;transform:rotate(-20deg)}
.hero-ball svg{width:100%;height:100%;border-radius:50%;overflow:hidden}
.hero-ball path{fill:none;stroke:#f9fbd3;stroke-width:3;opacity:.9}
.intro aside{padding:20px 22px}.intro aside strong{font-size:14px}.intro aside p{font-size:12px;margin-top:9px}
.queue{position:relative;min-width:0}.empty{position:relative;isolation:isolate;overflow:hidden;min-height:300px;background:#f0f3e9;padding:26px}
.empty::before{content:"";position:absolute;z-index:-1;inset:20px;border:1px solid #dce4d2;border-radius:2px;background:linear-gradient(90deg,transparent calc(50% - .5px),#dce4d2 calc(50% - .5px),#dce4d2 calc(50% + .5px),transparent calc(50% + .5px)),linear-gradient(transparent calc(50% - .5px),#dce4d2 calc(50% - .5px),#dce4d2 calc(50% + .5px),transparent calc(50% + .5px));opacity:.65}
.empty strong,.empty p{background:#f0f3e9dd;padding:3px 10px;border-radius:8px}.empty p{margin:7px 0 0;font-size:12px}
.racket-art{width:180px;height:142px;position:relative;margin:0 0 14px;filter:drop-shadow(1px 5px 3px #18382d14)}
.racket{position:absolute;width:64px;height:126px;top:0}.racket-left{left:32px;transform:rotate(-29deg)}.racket-right{right:32px;transform:rotate(29deg)}
.mini-padel-ball{position:absolute;bottom:3px;left:122px;width:24px;height:24px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#f0faa4,#b7ce51);box-shadow:1px 4px 4px #18382d20;overflow:hidden}
.mini-padel-ball::after{content:"";position:absolute;width:27px;height:23px;border:1.5px solid #faffd8;border-radius:50%;top:8px;left:-11px;transform:rotate(25deg)}
.badge{display:inline-flex;align-items:center;gap:6px}.badge::before{content:"";flex:none;width:7px;height:7px;border-radius:50%;background:#bed16e;box-shadow:inset -1px -1px 0 #184d3920}.badge.error::before,.badge.needs_review::before,.badge.auth_required::before,.badge.card_unavailable::before,.badge.blocked::before{background:#c38060}.badge.expired::before{background:#a9b2a2}
.account{margin-top:34px}.account>.section-top{margin-bottom:15px}footer{margin-top:34px}
@media(max-width:1050px){.hero-copy h1{font-size:36px}.hero-copy{padding-right:90px}.hero-ball{width:70px;height:70px}}
@media(max-width:900px){.intro{grid-template-columns:minmax(0,1fr);gap:12px;padding:28px 0}.hero-copy{padding-right:108px}.hero-copy h1{font-size:40px}.hero-ball{right:14px;top:15px;width:80px;height:80px}.intro aside{padding:15px 18px}}
@media(max-width:480px){.intro{padding:20px 0 24px}.hero-copy{padding:14px 80px 14px 0}.hero-copy h1{font-size:32px;letter-spacing:-1px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.8px;margin-bottom:10px}.hero-copy .lede{font-size:12px;line-height:1.5;max-width:205px}.hero-ball{width:62px;height:62px;right:0;top:27px}.intro aside strong{font-size:12px}.intro aside p{font-size:11px}.empty{min-height:280px}.account-toolbar p{font-size:11px}footer{line-height:1.6}}

.check-line{display:flex;align-items:center;gap:9px;font-size:13px;font-weight:650;cursor:pointer}.check-line input[type=checkbox]{width:auto;margin:0;accent-color:var(--green)}.series-choice{border:1px solid var(--line);border-radius:9px;padding:13px;margin:0 0 19px;background:#f6f8ef}#series-options>label{display:block;font-size:12px;font-weight:650;margin-top:15px}#series-options[hidden]{display:none}.series-section{scroll-margin-top:25px;margin-top:34px;border-top:1px solid var(--line);padding-top:25px}.series-section>.section-top{margin-bottom:12px}.series-section .booking-grid{margin-top:0}.series-section h3{font-size:17px}.job-actions .cancel-booking{color:#9e4a2d;margin-left:auto;font-weight:600}.danger{background:#944a34}.danger:hover{background:#7b3d2b}#cancel-booking-dialog p,#stop-series-dialog p{font-size:14px;line-height:1.7}#cancel-booking-result,#series-error{font-size:13px;color:var(--green)}@media(max-width:480px){.series-choice input[type=date]{max-width:100%;min-width:0;-webkit-appearance:none;appearance:none}.series-section .job h3{font-size:16px}.header-actions{flex-wrap:wrap;justify-content:flex-end;max-width:210px}.special-actions{flex-wrap:wrap}.special-actions .primary{width:100%}}

.quick-filters{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:14px 0 18px;min-width:0}.quick-filters button{font:inherit;font-size:12px;font-weight:600;cursor:pointer;min-height:38px;white-space:nowrap}.filter-player{border:1px solid #d3ddcc;border-radius:22px;padding:7px 13px;background:#f4f6ef;color:var(--green)}.filter-player:hover{background:#e5eddb}.filter-player[aria-pressed="true"]{background:var(--green);border-color:var(--green);color:#fff}.filter-modes{display:inline-flex;flex-shrink:0;padding:3px;border:1px solid #d3ddcc;border-radius:24px;background:#edf2e5;margin-left:auto;gap:2px}.filter-modes button{border:0;border-radius:20px;background:transparent;color:var(--muted);padding:5px 10px;min-height:32px}.filter-modes button[aria-pressed="true"]{background:#fff;color:var(--green);box-shadow:0 1px 3px #163c2920}.quick-filters button:focus-visible{outline:2px solid var(--green);outline-offset:3px}.price-choice{margin:16px 0}.price-choice .check-line{margin:0}.price-choice #price-limit-field{display:block;margin-top:12px;font-size:12px;font-weight:650}#price-limit-field[hidden]{display:none}.list-summary{font-size:11px;color:var(--muted);margin:0 0 14px}.list-pagination{display:flex;justify-content:center}.more-button{background:#edf2e5;color:var(--green);border:1px solid #cbd8c6;border-radius:8px;font-size:12px;font-weight:650;padding:12px 28px;min-height:44px;margin:5px 0 0}.more-button:hover{background:#e2ebd5}.more-button[hidden]{display:none}@media(max-width:420px){.quick-filters{gap:6px}.quick-filters button{min-height:40px}.filter-modes{margin-left:0}.list-pagination .more-button{width:100%}}

.capability-main{max-width:660px;padding-top:55px;padding-bottom:55px}.capability-main h1,.player-main h1{font-size:38px}.capability-main .form-card h2{margin-bottom:20px}.capability-main [hidden]{display:none}.capability-action{display:block;text-decoration:none;text-align:center;margin-top:18px}.player-main{padding-top:45px}.player-section{border-top:1px solid var(--line);margin-top:32px;padding-top:24px}.player-section .section-top{margin-bottom:12px}.player-section .list-pagination{margin-top:16px}.cancellation-requested{background:#fff2d6;color:#805723;border:1px solid #eed6a7;display:inline-block;margin:8px 0}.request-detail{font-size:12px;color:#805723}.player-share{flex-basis:100%;display:flex;align-items:center;gap:8px;flex-wrap:wrap}.player-share input{flex:1;min-width:150px;margin:0;font-size:11px;background:#f5f7f1}.player-share button,.player-share a{font-size:11px;padding:9px 5px;color:var(--green);text-decoration:none;background:transparent}.admin-mate-row{flex-wrap:wrap}.admin-mate-row>.player-share{margin-top:6px}.request-handled{font-size:11px;color:#805723}#reserve-error,#request-error,#player-error{color:#a03924;font-size:13px;line-height:1.6}@media(max-width:480px){.capability-main,.player-main{padding-top:28px}.capability-main h1,.player-main h1{font-size:30px}.player-share input{flex-basis:100%}.player-main header .private{display:none}} 
