@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#181a0f;--green:#FFD300;--muted:#657674;--line:#dce4e1;--bg:#f3f6f4}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px 'DM Sans',Arial,sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer;border:0}button:focus-visible,a:focus-visible{outline:3px solid #3d8a71;outline-offset:4px}button:disabled{cursor:default;opacity:.6}.sidebar{position:fixed;inset:0 auto 0 0;width:250px;background:var(--ink);color:white;padding:36px 22px;display:flex;flex-direction:column}.brand{display:flex;gap:12px;align-items:center;color:white;text-decoration:none;font-weight:700;font-size:19px}.brand-icon{font:bold 30px Manrope,Arial;background:var(--green);color:var(--ink);padding:6px 11px;border-radius:13px}.brand small{display:block;font-size:11px;letter-spacing:2px;margin-top:8px;color:#a4b7b1}.sidebar nav{margin-top:62px;display:grid;gap:10px}.sidebar nav button{background:transparent;color:#bdcbc7;text-align:left;padding:15px 14px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.4}.sidebar nav button.active{background:#303128;color:var(--green)}nav span{float:right}.side-bottom{margin-top:auto;border-top:1px solid #36504b;padding-top:30px}.tag{font-size:11px;letter-spacing:1.5px;color:var(--green)}.side-bottom p{font:600 23px/1.4 Manrope,Arial}.side-bottom small{font-size:12px;line-height:1.6;color:#a4b7b1}.workspace{margin-left:250px}header{height:88px;border-bottom:1px solid var(--line);padding:0 44px;display:flex;gap:18px;align-items:center;background:white}.location{margin-right:auto;font-size:14px;font-weight:600}.location span{color:#afbab4;margin:0 10px}.avatar{border-radius:50%;background:#e9eddf;padding:12px;font-size:13px;font-weight:bold}.outline{border:1px solid var(--line);background:white;padding:10px 16px;border-radius:8px;font-size:14px;color:var(--ink)}.demo-strip{padding:11px 44px;background:#FFD300;font-size:11px;letter-spacing:1px;font-weight:700}.demo-strip span{font-size:12px;letter-spacing:0;font-weight:400;margin-left:14px}main{padding:36px 44px;max-width:1500px;margin:auto;min-height:75vh}h1,h2,h3{font-family:Manrope,Arial,sans-serif}h1{font-size:36px;line-height:1.25;letter-spacing:-1px;margin:9px 0 12px}h2{font-size:23px;margin:0 0 16px}h3{font-size:20px;margin:8px 0}.eyebrow{font-size:12px;letter-spacing:1.8px;font-weight:700;color:#65766c}.muted{color:var(--muted);line-height:1.6}.heading{display:flex;justify-content:space-between;align-items:center;gap:22px;margin-bottom:24px}.heading p{margin:0}.primary{background:var(--ink);color:white;padding:13px 18px;font-size:14px;font-weight:600;border-radius:9px}.primary.lime{background:var(--green);color:var(--ink)}.search-panel{background:var(--ink);color:white;padding:25px;border-radius:16px;margin-bottom:28px;display:flex;gap:24px;align-items:center;justify-content:space-between}.search-panel strong{font:600 20px Manrope,Arial}.search-panel p{font-size:14px;color:#c6d3cf;margin:8px 0 0}.search-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end}.search-controls label{font-size:12px;color:#c6d3cf}.search-controls input{margin-top:6px;padding:10px;border:1px solid #527068;background:#303128;color:white;color-scheme:dark;border-radius:6px;width:150px;font-size:14px}.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-bottom:23px}.toolbar label{font-size:12px;color:var(--muted);font-weight:600}.toolbar select{display:block;margin-top:7px;min-width:135px;padding:11px;border:1px solid var(--line);background:white;border-radius:8px;color:var(--ink);font-size:14px}.toggle{display:flex;align-items:center;gap:8px;font-size:14px!important;min-height:44px;margin-left:auto}.toggle input{accent-color:var(--ink);width:17px;height:17px}.results-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;font-size:14px}.results-head strong{font-size:16px}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.card{background:white;border:1px solid var(--line);border-radius:15px;padding:23px;position:relative;display:flex;flex-direction:column;gap:14px}.card-top{display:flex;justify-content:space-between;gap:8px;align-items:center}.badge{display:inline-block;padding:6px 9px;border-radius:5px;font-size:12px;font-weight:700;background:#edf2ee;color:#516559}.badge.compatible{background:#FFD300;color:#375423}.badge.battle{background:#e5eafb;color:#495da1}.card .place{font-size:13px;color:var(--muted);margin:0}.time{font:700 25px Manrope,Arial;letter-spacing:-.5px}.date{font-size:13px;color:var(--muted);margin-bottom:5px}.meta{display:flex;flex-wrap:wrap;gap:10px;font-size:13px;color:var(--muted);padding-bottom:14px;border-bottom:1px solid var(--line)}.players{display:flex;gap:7px}.player{border-radius:50%;width:34px;height:34px;background:#edf1ee;display:grid;place-items:center;font-size:11px;font-weight:bold;color:#597163}.player.free{border:1px dashed #c3cec7;background:white;color:#89968f;font-size:20px}.seats{display:flex;justify-content:space-between;align-items:center;font-size:13px}.seats strong{font-size:15px}.card-bottom{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:auto}.price{font-size:20px;font-weight:700}.price small{display:block;font-size:11px;font-weight:400;color:var(--muted)}.card-bottom button{padding:11px 14px}.reason{font-size:12px;color:#65766c;min-height:17px}.empty{background:white;border:1px dashed #becdc3;border-radius:14px;text-align:center;padding:50px 20px}.empty h3{margin-bottom:12px}.form-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:24px;align-items:start}.panel{padding:28px;background:white;border:1px solid var(--line);border-radius:15px;margin-bottom:22px}.panel p{font-size:14px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field{display:block;font-size:14px;font-weight:600}.field input,.field select{display:block;margin-top:8px;width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;background:white;color:var(--ink)}.field small{display:block;font-size:12px;color:var(--muted);line-height:1.5;margin-top:7px;font-weight:400}.days{display:flex;gap:7px;flex-wrap:wrap;margin:12px 0 23px}.days label{cursor:pointer}.days input{position:absolute;opacity:0}.days span{display:block;padding:10px 12px;background:#f0f4f1;border:1px solid var(--line);border-radius:7px;font-size:14px}.days input:checked+span{background:var(--ink);color:var(--green)}.days input:focus-visible+span{outline:3px solid #3d8a71}.radio-option{display:flex;gap:12px;align-items:start;border:1px solid var(--line);padding:15px;border-radius:9px;margin:10px 0;font-size:14px;cursor:pointer}.radio-option input{margin-top:4px;accent-color:var(--ink)}.radio-option small{display:block;line-height:1.5;color:var(--muted);margin-top:5px;font-size:12px}.note{background:#eef5e4;border-radius:9px;padding:17px;font-size:14px;line-height:1.6}.stat{font:700 42px Manrope,Arial;margin:10px 0}.stack{display:grid;gap:14px}.list-row{background:#f7f9f7;padding:15px;border-radius:9px;border:1px solid var(--line);display:flex;justify-content:space-between;gap:14px;align-items:center}.list-row p{margin:4px 0;font-size:13px;color:var(--muted)}footer{display:flex;align-items:center;justify-content:space-between;margin:0 44px;padding:24px 0;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.text-button{background:transparent;color:var(--muted);font-size:12px;text-decoration:underline}dialog{width:min(650px,94vw);border:0;border-radius:16px;padding:28px;color:var(--ink);max-height:85vh}dialog::backdrop{background:#181a0f80}.dialog-head{display:flex;justify-content:space-between;gap:20px}.dialog-head h2{margin:10px 0}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);background:var(--ink);color:white;border-radius:10px;padding:14px 22px;max-width:90vw;font-size:14px;box-shadow:0 8px 24px #0002;display:none;z-index:5}.subtle{font-size:12px;color:var(--muted)}.info-title{display:flex;justify-content:space-between;align-items:center}.info-title .tag{color:#597163}.full-width{width:100%;margin-top:18px}
@media(min-width:1600px){main{padding-top:48px}.grid{gap:24px}.card{padding:28px}}@media(max-width:1250px){.sidebar{width:220px}.workspace{margin-left:220px}main{padding:30px}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.search-panel{align-items:start;flex-direction:column}.form-layout{grid-template-columns:1fr}header,.demo-strip{padding-left:30px;padding-right:30px}}@media(max-width:760px){.sidebar{position:static;width:auto;padding:18px 18px 12px}.brand{font-size:17px}.brand small{display:none}.brand-icon{font-size:22px}.sidebar nav{margin-top:18px;display:flex;gap:5px;overflow-x:auto}.sidebar nav button{padding:10px;white-space:nowrap;font-size:12px}.side-bottom{display:none}.workspace{margin:0}header{height:66px;padding:0 18px}.location{font-size:12px}.avatar{display:none}.demo-strip{padding:12px 18px;line-height:1.5}.demo-strip span{display:block;margin:4px 0 0}main{padding:26px 18px}h1{font-size:28px}.heading{align-items:start;flex-direction:column}.grid{grid-template-columns:1fr}.toolbar select{min-width:100px}.toggle{margin-left:0}.search-panel{padding:20px}.search-controls{gap:12px}.search-controls input{width:125px}.form-grid{grid-template-columns:1fr}.panel{padding:21px}.results-head{gap:16px;align-items:start}.results-head span{font-size:12px}footer{margin:0 18px}.list-row{align-items:start;flex-wrap:wrap}.card{padding:22px}}
.search-mode{flex:1}.search-switch{display:flex;align-items:center;gap:12px;cursor:pointer;position:relative}.search-switch input{position:absolute;width:1px;height:1px;opacity:0}.switch-track{width:46px;height:26px;background:#60736d;border:1px solid #81978e;border-radius:20px;position:relative;flex-shrink:0;transition:background .15s}.switch-track:after{content:'';position:absolute;left:3px;top:3px;width:18px;height:18px;border-radius:50%;background:white;transition:transform .15s}.search-switch input:checked+.switch-track{background:var(--green);border-color:var(--green)}.search-switch input:checked+.switch-track:after{transform:translateX(20px);background:var(--ink)}.search-switch input:focus-visible+.switch-track{outline:3px solid white;outline-offset:4px}.search-panel p.search-notice{font-size:12px;color:#afc3b5;margin-top:10px}
[hidden]{display:none!important}.link-button{text-decoration:none;display:inline-block;text-align:center}.pending-actions{padding:15px;border:1px solid #d6e6c0;background:#f3f8eb;border-radius:10px;display:grid;gap:9px}.pending-actions p{margin:0 0 5px;font-size:13px;line-height:1.5}.report-button{background:transparent;color:#64766b;font-size:12px;text-decoration:underline;padding:8px 0;line-height:1.5;text-align:left}.row-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.club-row{align-items:flex-start;flex-direction:column}.review-item{padding:20px;background:#f4f8ed;border:1px solid #d6e6c0;border-radius:10px}.review-item p{font-size:14px;line-height:1.6;color:var(--muted)}#registrationDialogBody h2{margin-top:18px}.card-bottom .primary{line-height:1.5}.card .reason{line-height:1.5}.card .note{font-size:13px}
.request-heading{display:flex;justify-content:space-between;gap:16px;align-items:start}.request-heading h3{margin-bottom:16px}.deadline-pill{background:#181a0f;color:#FFD300;padding:10px 12px;border-radius:8px;font-size:13px;white-space:nowrap}.request-details{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:8px 0 22px}.request-details div{min-width:0}.request-details dt{color:var(--muted);font-size:12px;margin-bottom:6px}.request-details dd{margin:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.confirmation-check{display:flex;align-items:start;gap:10px;font-size:14px;line-height:1.6;margin-bottom:14px}.confirmation-check input{margin-top:5px;accent-color:var(--ink);width:18px;height:18px;flex-shrink:0}.pending-badge{background:#FFD300;color:#795e12}.denied-badge{background:#f5e6e4;color:#8f4c42}.status-note{background:#f2f3ef}.request-card{gap:12px}.request-card .muted{font-size:14px}.notification-item{border:1px solid var(--line);padding:18px;border-radius:10px;background:#fafcf9}.notification-item.unread{border-left:4px solid #6c8e21;background:#f3f8eb}.notification-item p{font-size:14px;line-height:1.6;margin:8px 0}.notification-item small{font-size:12px;color:var(--muted);margin-right:18px}.field textarea{display:block;margin-top:8px;width:100%;padding:12px;border:1px solid var(--line);border-radius:7px;font:inherit;color:var(--ink)}#denialDialogBody h2{margin-top:20px}.confirm-request-form{border-top:1px solid #d6e6c0;padding-top:18px}
@media(max-width:760px){.request-heading{flex-direction:column}.request-details{grid-template-columns:1fr 1fr}.deadline-pill{margin-bottom:14px}.request-details dd{font-size:13px}}
.card.gender-male,.club-row.gender-male{border-top:5px solid #70b9eb}.card.gender-female,.club-row.gender-female{border-top:5px solid #ec91b8}.card.gender-mixed,.club-row.gender-mixed{border-top:5px solid #FFD300}.card.gender-none,.club-row.gender-none{border-top:5px solid white}.slot-detail{margin:0;font-size:13px;font-weight:600;line-height:1.5;border-radius:6px;padding:9px 11px;background:#f5f7f5}.gender-male .slot-detail{background:#eaf5fc;color:#245b80}.gender-female .slot-detail{background:#fbeef4;color:#874561}.gender-mixed .slot-detail{background:#fff8da;color:#756220}.profile-gender-prompt{margin-bottom:20px}.seats{gap:12px}.seats strong{text-align:right;line-height:1.5}
/* Keep the original typefaces; give match times and time controls more room. */
.time{font-family:Manrope,Arial,sans-serif;font-size:25px;font-weight:700;line-height:1.5;letter-spacing:0;font-variant-numeric:tabular-nums;display:flex;align-items:baseline;flex-wrap:wrap;column-gap:12px;row-gap:4px}.time .subtle{letter-spacing:normal;font-family:'DM Sans',Arial,sans-serif;font-size:13px;white-space:nowrap}.field input[type=time],.search-controls input[type=time],.search-controls input[type=date]{font-family:'DM Sans',Arial,sans-serif;font-size:16px;letter-spacing:normal;line-height:1.5;font-variant-numeric:tabular-nums;min-width:0}.search-panel{align-items:stretch;flex-direction:column;gap:22px}.search-controls{display:grid;width:100%;gap:20px}.search-controls label{display:block;font-size:14px;line-height:1.5}.search-controls input,.search-controls select{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid #527068;background:#303128;color:white;color-scheme:dark;border-radius:7px;font-size:16px;min-height:48px;min-width:0}.search-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;max-width:780px}.search-localization{border-top:1px solid #3c5550;padding-top:20px}.search-controls .keep-location{display:flex;gap:12px;align-items:flex-start;font-size:15px;color:white}.search-controls .keep-location input{width:18px;height:18px;min-height:0;flex-shrink:0;margin:4px 0 0;padding:0;accent-color:var(--green)}.keep-location small{display:block;font-size:13px;color:#bdcfca;margin-top:3px}.search-location-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:18px;max-width:780px}.search-location-fields p{grid-column:1/-1;font-size:12px}.search-form-footer{display:flex;align-items:center;justify-content:space-between;gap:20px}.fixed-gender{font-size:13px;color:#bdcfca}.search-panel .fixed-gender strong{font-family:'DM Sans',Arial,sans-serif;font-size:14px;color:white}.card .date{line-height:1.5}.card{gap:16px}
@media(max-width:760px){.search-fields{grid-template-columns:1fr 1fr;gap:16px}.search-fields>label:first-child{grid-column:1/-1}.search-location-fields{grid-template-columns:1fr;gap:16px}.search-form-footer{align-items:flex-start;flex-direction:column}.search-form-footer .primary{width:100%}.search-controls input[type=time]{padding:10px;font-size:16px}.time{font-size:25px}}
@media(max-width:360px){.search-fields{grid-template-columns:1fr}.search-fields>label:first-child{grid-column:auto}}

/* Country and provincial capital selection */
.geo-attribution{display:block;font-size:11px;line-height:1.6;margin-top:8px;color:var(--muted)}.geo-attribution a{color:inherit}header .location{max-width:70%;line-height:1.5}.search-location-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.search-location-fields label{min-width:0}.search-location-fields select{width:100%;text-overflow:ellipsis}.search-location-fields small{font-size:12px;line-height:1.5;font-weight:400;color:var(--muted)}.search-location-fields p{grid-column:1/-1}@media(max-width:900px){.search-location-fields{grid-template-columns:1fr}.location{font-size:13px}}

/* Daily-search dates and unrestricted start times */
.search-period{border:1px solid #58706a;border-radius:12px;margin:0;padding:18px;min-width:0}.search-period legend{padding:0 8px;font-size:16px;font-weight:600;color:white}.period-choices{display:flex;flex-wrap:wrap;gap:12px}.search-controls .period-choices label,.search-controls .all-times{display:flex;align-items:center;gap:10px;font-size:16px;color:white}.period-choices label{padding:10px 14px;border:1px solid #58706a;border-radius:8px;cursor:pointer}.period-choices label:has(input:checked){border-color:var(--green);background:#303128}.search-controls .period-choices input,.search-controls .all-times input{width:18px;height:18px;min-height:0;margin:0;padding:0;accent-color:var(--green);flex-shrink:0}.search-controls .period-dates,.search-controls .period-times{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:18px;max-width:620px}.search-controls .period-dates[data-period=single]{grid-template-columns:minmax(0,1fr);max-width:300px}.period-dates p{grid-column:1/-1;margin:0;font-size:14px}.period-all-note{font-size:14px!important;margin-top:14px!important}.search-period .all-times{cursor:pointer}.search-controls .period-dates>label:first-child{grid-column:auto}@media(max-width:520px){.period-choices{flex-direction:column}.search-controls .period-dates,.search-controls .period-times{grid-template-columns:1fr}}

/* Compact applied-search summary, with one action to reopen the form */
.search-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.search-panel-heading .outline{flex-shrink:0;color:white;border-color:#78938b;background:transparent}.search-panel-heading .outline:hover{background:#303128}.search-summary{display:grid;gap:6px;margin-top:12px;font-size:15px;line-height:1.5;color:#d9e8e2}.search-summary span:first-child{font-weight:600;color:white}.search-panel.search-collapsed{gap:0;padding:18px 24px}.search-collapsed .search-mode{max-width:none;width:100%}.search-collapsed .search-notice{margin-top:8px;font-size:13px}#searchResults{scroll-margin-top:24px}@media(max-width:520px){.search-panel-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.search-panel.search-collapsed{padding:18px}.search-summary{font-size:14px}.search-panel-heading .outline{padding:9px 12px;font-size:14px}}

/* Separate the player's seat confirmation from four-player match completion */
.match-completion{border:1px solid var(--line);border-radius:12px;padding:16px;background:#f3f6f4;line-height:1.5}.match-completion>strong{display:block;font-size:15px}.completion-count{font:700 23px/1.5 Manrope,Arial,sans-serif;margin-top:6px}.match-completion p{font-size:14px;margin:10px 0;color:var(--ink)}.match-completion small{font-size:12px;color:var(--muted);display:block}.match-completion.complete{background:#edf8d7;border-color:#b7ce8a}.match-completion.unavailable{background:#f8e8e4;border-color:#e0b6a9}.completion-progress{display:flex;gap:6px;margin-top:12px}.completion-progress span{height:7px;flex:1;border-radius:8px;background:#dce4e1}.completion-progress .occupied{background:#365a4d}.match-completion .completion-genders{font-weight:600;margin-top:4px}

/* Daily packages: closed tabs reveal counts; opening reveals that day's matches */
.day-packages{display:grid;gap:24px;margin-top:8px}.day-package{border:1px solid #cbd8d2;border-radius:14px;background:white;box-shadow:0 5px 0 -1px #e5ede8,0 6px 0 0 #cbd8d2,0 10px 0 -1px #eff3f0,0 11px 0 0 #dce4e1}.day-package>summary{display:flex;align-items:center;gap:20px;justify-content:space-between;list-style:none;cursor:pointer;padding:20px 24px;border-radius:14px;line-height:1.5}.day-package>summary::-webkit-details-marker{display:none}.day-package>summary:focus-visible{outline:3px solid #3d8a71;outline-offset:4px}.day-tab-date{flex:1;min-width:0}.day-tab-date time{display:block;font:700 18px/1.5 Manrope,Arial,sans-serif;letter-spacing:0}.day-tab-date small{display:block;font-size:13px;color:#46624b;margin-top:4px}.day-tab-count{font-size:15px;font-weight:600;padding:7px 13px;background:#edf3ef;border-radius:8px;white-space:nowrap}.day-tab-action{font-size:14px;font-weight:600;color:#46624b}.package-close-label{display:none}.day-package[open]{box-shadow:none}.day-package[open]>summary{background:#edf3ef;border-radius:14px 14px 0 0;border-bottom:1px solid #cbd8d2}.day-package[open] .package-open-label{display:none}.day-package[open] .package-close-label{display:inline}.day-package-content{padding:24px}.match-day-label{display:block;font:700 18px/1.5 Manrope,Arial,sans-serif;color:var(--ink);letter-spacing:0;margin-bottom:8px}.last-seat-label{display:inline-block;background:#FFD300;color:#36533f;padding:5px 9px;border-radius:6px;font-size:13px;font-weight:600;margin-bottom:8px}.card.last-seat{animation:last-seat-frame 4s ease-in-out infinite;box-shadow:0 0 0 2px rgba(105,151,43,.15)}@keyframes last-seat-frame{0%,100%{box-shadow:0 0 0 2px rgba(105,151,43,.13),0 0 0 rgba(105,151,43,0)}50%{box-shadow:0 0 0 3px rgba(105,151,43,.7),0 0 20px rgba(105,151,43,.13)}}@media(prefers-reduced-motion:reduce){.card.last-seat{animation:none;box-shadow:0 0 0 3px rgba(105,151,43,.6)}}@media(max-width:620px){.day-package>summary{padding:17px;gap:10px;flex-wrap:wrap}.day-tab-date{flex-basis:100%}.day-tab-action{margin-left:auto}.day-tab-date time,.match-day-label{font-size:17px}.day-package-content{padding:16px}.day-tab-count{font-size:14px}}

/* Battlepadel palette: yellow, charcoal and neutral surfaces; preserve gender accents. */
:root{--ink:#181a0f;--green:#FFD300;--muted:#696a63;--line:#dfdfd9;--bg:#f5f5f2}.brand{font-size:18px;line-height:1.4;letter-spacing:.2px}.brand-icon{font-size:22px;padding:10px 8px}.badge.compatible{color:#514000}.search-period,.period-choices label,.search-controls input,.search-controls select{border-color:#717369}.note,.review-item{background:#fff9e4}.badge.tournament{display:inline-flex;align-items:center;gap:8px;background:#FFD300;color:#554100;font-size:14px}.tournament-crown{display:inline-block;font-size:24px;line-height:1;animation:crown-pulse 3.5s ease-in-out infinite;color:#8a6500}.circuit-note{margin:0;font-size:14px;line-height:1.6;overflow-wrap:anywhere;white-space:pre-line}.circuit-note strong{display:block;color:var(--muted);font-size:13px}.tournament-capacity{font-weight:700;font-size:16px}.tournament-notes{grid-column:1/-1}.tournament-progress{width:100%;height:10px;accent-color:#FFD300}.match-completion.complete{background:#FFD300;border-color:#FFD300}.completion-progress .occupied{background:#FFD300}.card.last-seat{animation:last-seat-brand 4s ease-in-out infinite}@keyframes last-seat-brand{0%,100%{box-shadow:0 0 0 2px #FFD30026}50%{box-shadow:0 0 0 3px #FFD300a8,0 0 20px #FFD30033}}@keyframes crown-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.35;transform:scale(1.12)}}@media(prefers-reduced-motion:reduce){.tournament-crown,.card.last-seat{animation:none}.card.last-seat{box-shadow:0 0 0 3px #FFD30099}}

.event-fields{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}.event-summary{padding:14px;border:1px solid #FFD300;background:#fff9e5;border-radius:9px;line-height:1.5}.event-summary>strong{font-size:16px}.event-summary p{font-size:14px;margin:6px 0}.event-counts{display:grid;gap:7px;font-size:14px}.event-counts b{font-size:18px}.participation-actions{display:grid;gap:12px;width:100%}.card:has(.participation-actions) .card-bottom{flex-direction:column;align-items:stretch}.participation-actions select{font-size:14px}.participation-badge{background:#FFD300;color:#554100}.event-roster{width:100%;border-top:1px solid var(--line);padding-top:16px}.event-roster summary{cursor:pointer;font-weight:700;font-size:15px;line-height:1.5}.roster-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.participant-list h4,.manual-participant-form h4{font-size:16px;margin:20px 0 12px}.participant-list ul{padding:0;list-style:none}.participant-list li{padding:12px;background:white;border:1px solid var(--line);border-radius:8px;margin-bottom:8px;overflow-wrap:anywhere}.participant-list li span{display:block;font-size:14px;line-height:1.6;color:var(--muted);margin-top:4px}.manual-participant-form{padding:18px;background:white;border-radius:10px;margin-top:20px}.manual-participant-form button{margin-top:18px}.club-row .badge{margin-top:12px}@media(max-width:760px){.roster-grid{grid-template-columns:1fr}.card-bottom:has(.participation-actions){align-items:stretch}}

.level-legend{margin-top:22px;border:1px solid var(--line);border-radius:10px;background:white;padding:16px;font-size:14px;line-height:1.6}.level-legend summary{cursor:pointer;font-weight:700;font-size:15px}.level-legend dl{margin:12px 0 0}.level-legend dl>div{display:grid;grid-template-columns:100px 1fr;gap:16px;padding:7px 0;border-bottom:1px solid var(--line)}.level-legend dd{margin:0}.level-warning{display:flex;align-items:flex-start;gap:12px;border:1px solid #e5a8a8;background:#fff1f1;color:#842121;padding:13px;border-radius:8px;font-size:14px;line-height:1.5}.level-warning small{display:block;font-size:13px;margin-top:4px}.level-red-light{width:12px;height:12px;background:#d71920;border-radius:50%;box-shadow:0 0 7px #d7192055;flex-shrink:0;margin-top:4px}.battle-specific-check,.level-field-note{grid-column:1/-1}.battle-specific-check small{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:6px}.poster-upload-field{margin-top:24px}.poster-preview{display:grid;gap:8px;text-align:left;background:#f5f5f2;padding:10px;border:1px solid var(--line);border-radius:9px;max-width:100%;color:var(--ink)}.poster-preview img{display:block;width:100%;max-height:230px;object-fit:contain}.poster-preview span{font-size:14px;font-weight:600}.poster-center-form{width:100%;border-top:1px solid var(--line);padding-top:18px;display:grid;gap:12px}.poster-center-form small{font-size:13px;color:var(--muted)}.poster-dialog{width:min(900px,95vw)}.poster-dialog>img{display:block;max-width:100%;max-height:70vh;object-fit:contain;margin:20px auto 0}

/* Search categories and daily type packages */
.card.tournament-card{background:#eff8ff}.day-package.tournament-package{background:#f1f8ff;border-color:#c5dce9}.tournament-package[open]>summary{background:#e5f2fc;border-color:#c5dce9}.day-type-label{display:block;font-size:16px;margin-top:5px;color:var(--ink)}.daily-type-groups{display:grid;gap:30px}.type-section-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:16px}.type-section-heading time{font:700 16px/1.5 Manrope,Arial,sans-serif}.type-section-heading h2{margin:6px 0 0;font-size:21px}.search-categories p{font-size:14px;line-height:1.6;margin:14px 0 0!important;color:#dce1d7}.search-categories .period-choices label{cursor:pointer}.availability-days{gap:10px}.availability-days label{flex:1 1 75px;max-width:120px}.availability-days label>span{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;min-height:110px;background:#fff5f5;border:1px solid #e9bebe;color:var(--ink);padding:12px 8px}.availability-days input:checked+span{background:#edfbef;color:var(--ink);border:2px solid #3c9b50;padding:11px 7px}.availability-days i{font-style:normal;font-size:25px;font-weight:800;line-height:1.3}.availability-days .day-no{color:#bf2323}.availability-days .day-yes{display:none;color:#14772c}.availability-days input:checked+span .day-yes{display:block}.availability-days input:checked+span .day-no{display:none}.availability-days small{font-size:12px;line-height:1.3;text-align:center}.availability-days b{font-size:15px}.availability-days input:focus-visible+span{outline:3px solid #497bba;outline-offset:3px}@media(max-width:520px){.type-section-heading{align-items:flex-start;flex-direction:column;gap:12px}.availability-days label{flex:1 1 75px;max-width:calc(33.333% - 7px)}}

/* One shared day heading; matches on the left and tournaments on the right. */
.shared-date-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px;padding:16px 20px;background:white;border:1px solid var(--line);border-radius:12px}.shared-date-heading>time{font:700 19px/1.5 Manrope,Arial,sans-serif}.shared-date-counts{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.tournament-count{background:#e6f3ff;color:#244c67}.date-columns-scroll{overflow-x:auto;padding:4px 4px 18px;max-width:100%}.date-columns-scroll:focus-visible{outline:3px solid #497bba;outline-offset:3px}.date-type-columns{display:grid;grid-template-columns:repeat(2,minmax(300px,1fr));gap:24px;align-items:start}.date-type-columns.single-category{grid-template-columns:minmax(0,1fr)}.date-type-column{min-width:0;padding:18px;background:#f8f9f7;border:1px solid var(--line);border-radius:13px}.date-type-column.tournament-column{background:#eaf5ff;border-color:#c4dce9}.date-type-column>h2{font-size:20px;line-height:1.5;margin:0 0 16px}.date-type-column .grid{grid-template-columns:minmax(0,1fr);gap:18px}.date-column-empty{padding:20px 12px;color:var(--muted);font-size:14px;line-height:1.6;border:1px dashed var(--line);border-radius:9px;background:white;margin:0}.shared-date-package .day-package-content{padding:18px}.shared-date-package>summary{flex-wrap:wrap}.shared-date-package .day-tab-date{min-width:180px}@media(max-width:760px){.shared-date-heading{align-items:flex-start;flex-direction:column;padding:16px}.date-type-columns{gap:14px;grid-template-columns:repeat(2,minmax(290px,1fr))}.date-type-columns.single-category{grid-template-columns:minmax(0,1fr)}.date-type-column{padding:12px}.shared-date-package .day-package-content{padding:10px}.shared-date-counts .day-tab-count{font-size:14px;padding:7px 10px}.shared-date-package>summary .shared-date-counts{flex:1 1 auto}}

.record-day-package>summary{border-left:5px solid #FFD300;padding-left:20px}.record-day-package .day-tab-date time{font-size:21px;letter-spacing:.3px}.record-day-package .closed-summary-list{flex-basis:100%;display:flex;gap:10px;flex-wrap:wrap}.record-state-badge{display:inline-block;padding:8px 11px;border:1px solid;border-radius:8px;font-size:14px;font-weight:700;line-height:1.5}.state-complete{background:#e7f7e9;border-color:#82b68a;color:#205b2c}.state-cancelled{background:#fff0f0;border-color:#dfa5a5;color:#8c2626}.state-past{background:#eeeeef;border-color:#bbbcc2;color:#494b53}.state-partial{background:#FFD300;border-color:#FFD300;color:#70530b}.summary-closed-count{display:block;margin-top:4px;font-size:13px;color:#205b2c}.closed-summary-item{display:grid;gap:3px;padding:10px 13px;border:1px solid;border-radius:8px;line-height:1.5;font-size:13px;max-width:100%;overflow-wrap:anywhere}.closed-summary-item b{font-size:14px}.closed-record-card{box-shadow:inset 0 0 0 1px #adc4ae}.club-row .record-state-badge{margin-top:12px}.record-packages .club-row{width:100%;min-width:0}.record-packages .club-row .row-actions{width:100%}.record-packages .club-row .outline{font-size:13px;white-space:normal;text-align:left}.record-packages .club-row .match-day-label{margin-bottom:10px}.record-packages .club-row .poster-center-form input{max-width:100%}@media(max-width:620px){.record-day-package .day-tab-date time{font-size:19px}.closed-summary-item{width:100%}}

.request-card .badge.compatible,.request-card .match-completion.complete,.request-confirmed .note:not(.status-note){background:#e7f7e9;border-color:#82b68a;color:#205b2c}.request-card .status-note{background:#fff0f0;color:#8c2626}.requests-history{margin-top:28px}.requests-history>summary{cursor:pointer;padding:18px;border:1px solid var(--line);border-radius:10px;background:#eee;font-weight:700}
.participation-folder{margin-bottom:24px;border:1px solid var(--line);border-radius:12px;background:white}.participation-folder>summary{cursor:pointer;padding:20px;font-size:18px;font-weight:700;display:flex;align-items:center;justify-content:space-between;gap:12px}.folder-missing>summary{background:#FFD300;border-radius:12px}.folder-closed>summary{background:#e7f7e9;border-radius:12px}.folder-content{padding:0 20px 20px}.participation-folder .day-package{margin-top:12px}
.center-management{width:100%;border-top:1px solid var(--line);padding-top:16px;margin-top:10px}.center-management>summary,.holder-withdrawal>summary{cursor:pointer;font-weight:700;line-height:1.5;padding:10px 0}.center-management form,.holder-withdrawal form{display:grid;gap:12px;padding:14px 0}.holder-entry{padding:14px 0;border-bottom:1px solid var(--line)}.reserve-note,.reserve-badge{background:#e9e8ff!important;color:#433778!important;padding:12px;border-radius:8px;line-height:1.5}.folder-reserves>summary{background:#e9e8ff;border-radius:12px}.withdrawal-alert{padding:12px;background:#FFD300;color:#6d5000;border-radius:8px;line-height:1.5}.battle-court-note{font-weight:700;font-size:16px;line-height:1.5}.event-enrolment{padding:14px;border:1px solid var(--line);border-radius:10px}.event-enrolment.confirmed{background:#e7f7e9;color:#205b2c}.event-enrolment.pending{background:#FFD300}.event-enrolment p{font-size:14px;line-height:1.5;margin-bottom:0}.reserve-button{width:100%}.card-bottom:has(.reserve-button){flex-wrap:wrap}.center-management .field input{max-width:100%}

.external-seat{border:1px solid #d4dde2;border-radius:12px;padding:16px;margin:16px 0}.external-seat legend{font-weight:700;padding:0 6px}.external-field .confirmation-check{font-size:12px;margin:7px 0 0}.external-field .field{margin:0}#externalBookingDialog{width:min(760px,94vw);max-height:88vh;overflow:auto}#externalBookingSubmit{margin:8px 0}


/* Center cards keep game management above independent event management. */
.center-activity-card.list-row{display:block;padding:0;overflow:hidden;border:1px solid #ccd9df;border-radius:16px;background:white}
.center-card-header{padding:22px 22px 16px}.center-card-badges{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:14px}
.center-card-header h3{margin:8px 0}.center-card-meta{font-size:14px;margin:6px 0;color:#52616a}
.center-card-header .record-state-badge{margin-top:0}.center-card-header .poster-center-form{margin-top:14px}
.center-activity-card .center-resource{margin:0 14px 16px;padding:20px;border:1px solid #cddae2;border-radius:12px;background:#fff}
.center-tournament-card .center-play-resource{background:#eef7fd;border-color:#bed8ea}
.center-activity-card .center-event-resource{background:#fff8e9;border:2px solid #FFD300;margin-top:24px}
.center-resource-heading{border-bottom:1px solid #d6dfe4;padding-bottom:12px;margin-bottom:16px}
.center-resource-heading .eyebrow{font-size:14px;letter-spacing:1px;color:#345a73}
.center-event-resource .eyebrow{color:#735719}.center-resource-heading h3{font-size:21px;margin:7px 0}
.center-resource-heading p{font-size:14px;line-height:1.5;margin:6px 0;color:#54606a}
.center-seat-status{background:white;padding:16px;border:1px solid #d2dce2;border-radius:10px;margin:12px 0 18px}
.center-seat-count{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.center-seat-count strong{font-size:20px;line-height:1.4}
.center-missing,.center-complete{padding:6px 10px;border-radius:6px;font-size:14px;font-weight:700}
.center-missing{background:#f3f5f7;color:#354853}.center-complete{background:#e2f2df;color:#295132}
.center-four-seats{display:flex;gap:8px;margin-top:18px}.center-four-seats>span{flex:1;height:16px;border-radius:5px}
.center-seat-status .seat-male{background:#70b9ee}.center-seat-status .seat-female{background:#efa1c1}.center-seat-status .seat-none{background:#FFD300}
.center-four-seats>span.empty{padding:0;background:#f2f4f6;border:1px dashed #a9b7c0;border-radius:5px}
.center-tournament-track{display:flex;height:16px;margin-top:18px;border-radius:6px;overflow:hidden;background:#e7ecef}
.center-tournament-track>span{display:block;height:100%}
.center-seat-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:12px;font-size:14px;line-height:1.4}
.center-seat-legend>span{display:flex;align-items:center;gap:7px}.center-seat-legend i{display:inline-block;width:12px;height:12px;border-radius:3px}
.center-seat-status .subtle{margin:10px 0 0;font-size:14px}
.center-action-group{margin:18px 0}.center-action-group h4{font-size:14px;margin:0 0 10px}
.center-activity-card .row-actions{display:flex;flex-wrap:wrap;gap:9px}
.center-activity-card .center-management{padding:14px 0;border-top:1px solid #d5dde2;margin:0}
.center-activity-card .center-management summary{font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.center-activity-card .center-management form{margin-top:16px}
.center-event-status{display:flex;flex-direction:column;gap:10px;background:white;padding:16px;border:1px solid #FFD300;border-radius:10px;margin-bottom:18px}
.center-event-status strong{font-size:19px;line-height:1.4}.center-event-status span{font-size:15px;color:#675324}
.center-guard-note{margin:0 22px 18px;font-size:14px;line-height:1.5;padding:12px;border:1px solid #FFD300;border-radius:8px;background:#fff8df}
.center-card-footer{padding:16px 22px 22px;border-top:1px solid #dae1e5}.center-card-footer .outline{border-color:#dcbcb3}
.center-activity-card .participant-list li{overflow-wrap:anywhere}
@media(max-width:620px){.center-card-header{padding:18px 16px 14px}.center-activity-card .center-resource{padding:15px;margin-left:10px;margin-right:10px}.center-resource-heading h3{font-size:19px}.center-seat-count strong{font-size:18px}.center-activity-card .row-actions button{flex:1 1 170px;min-width:0}.center-activity-card .form-grid{grid-template-columns:1fr}.center-event-status strong{font-size:17px}.center-card-footer{padding:16px}.center-guard-note{margin-left:16px;margin-right:16px}}
