@font-face{font-family:Emilio Test;src:url(/fonts/EmilioTest-Thin.otf)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Playfair Medium;src:url(/fonts/PlayfairDisplay-Medium.ttf)format("woff2");font-weight:500;font-style:normal;font-display:swap}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent;margin:0;padding:0}body{color:#333;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;line-height:1.5}.mobile-container{background-color:#fff;width:100%;max-width:450px;min-height:100vh;margin:0 auto;padding-bottom:30px;position:relative;overflow:hidden}@media (min-width:768px){body{background-color:#fff}.mobile-container{width:100%;max-width:600px;margin:40px auto}}.main-container{padding:0 15px}.logo-container{justify-content:center;align-items:center;gap:28px;margin-top:50px;display:flex}.wf-logo{object-fit:contain;width:190px;height:58px}.page-title{color:#000;text-align:center;margin:35px 0 25px;font-family:Emilio Test;font-size:28px;font-weight:600}.date-row{-webkit-overflow-scrolling:auto;gap:10px;margin-bottom:20px;padding-bottom:0;display:flex;overflow-x:visible}.date-option{text-align:center;cursor:pointer;color:#676257;background-color:#fff;border:1px solid #ddd;border-radius:10px;flex:1 1 0;min-width:0;height:60px;padding:6px 0}.date-option.selected{color:#fff;background-color:#4d5e28;border-color:#4d5e28}.date-day,.date-number{font-size:18px;font-weight:600;line-height:24px}.tab-section{box-sizing:border-box;border-bottom:1px solid #eee;width:100%;margin:0 0 20px;padding:0;display:flex}.tab{text-align:center;cursor:pointer;color:#6c7275;box-sizing:border-box;max-width:50%;letter-spacing:-2%;background:0 0;flex:0 0 50%;padding:12px 16px;font-size:16px;font-weight:600;position:relative}.tab:hover{color:#4d5e28}.tab.selected{color:#414042}.tab.selected:after{content:"";background:#4d5e28;border-radius:3px;width:100%;height:2px;transition:all .15s;position:absolute;bottom:-1px;left:0}@media (max-width:767px){.tab-section{box-sizing:border-box;width:calc(100% + 30px);margin-left:-15px;padding:0}.tab{text-align:center;padding:12px 0}.tab.selected:after{left:0;right:0}}.court-card{background:#fff;border:1px solid #cfcab9;border-radius:12px;padding:16px}.court-top{align-items:center;gap:14px;padding-bottom:8px;display:flex}.court-image-figure{background:#e66f56 50%/48px 48px no-repeat;border-radius:10px;flex-shrink:0;width:80px;height:80px}.court-meta{flex-direction:column;justify-content:center;gap:4px;display:flex}.court-label{color:#414042;letter-spacing:-2%;font-size:16px;font-weight:600;line-height:24px}.court-type{color:#666;font-size:14px}.court-duration{color:#333;margin-top:6px;font-size:15px}.court-available-slots{color:#90b02c;text-align:center;border:1px solid #90b02c;border-radius:15px;margin-top:4px;padding:1.5px 15px;font-size:12px;font-weight:600;line-height:20px}.court-divider{border:none;border-top:1px solid #f3f1ec;margin:12px 0}.new-time-row{box-sizing:border-box;grid-template-columns:repeat(4,1fr);justify-content:start;align-items:start;gap:9px 6px;padding:6px 0;display:grid}.time-slot{appearance:none;color:#333;cursor:pointer;text-align:center;box-sizing:border-box;width:min(120px,100%);letter-spacing:-2%;background:#fff;border:1px solid #cfcab9;border-radius:24px;justify-self:center;padding:4.5px 0;font-size:12px}@media (max-width:360px){.time-slot{width:min(100px,100%);padding:4px 6px;font-size:10px}}@media (min-width:768px){.new-time-row{grid-template-columns:repeat(5,1fr)}.time-slot{width:min(130px,100%)}}@media (min-width:1200px){.new-time-row{grid-template-columns:repeat(6,1fr)}.time-slot{width:min(140px,100%)}}.time-slot.selected{color:#fff;background:#4d5e28;border-color:#4d5e28}.booking-details{margin:15px 0}.booking-summary{color:#414042;text-align:center;white-space:normal;word-break:break-word;border-top:1px solid #f3f1ec;padding:20px 0 10px;font-size:16px;font-weight:700;line-height:1.15}.booking-summary-date{display:block}.booking-summary-time{margin-top:6px;display:block}@media (min-width:768px){.booking-summary{color:#1c3c28;text-align:left;white-space:nowrap;text-overflow:ellipsis;text-align:center;border:none;width:100%;margin-top:15px;padding:0;font-size:14px;font-weight:600;display:inline-block;overflow:hidden}.booking-summary-date,.booking-summary-time{display:inline}.booking-summary-time:before{content:" - ";color:inherit;margin:0 6px;display:inline}}.book-container{justify-content:center;margin-top:16px;display:flex}.tab-content{padding:0}.input-group label{color:#676257;margin-top:8px;margin-bottom:6px;font-size:12px;font-weight:500;line-height:20px;display:block}.input-group label.required:after{content:" *";color:#d34b4b;margin-left:3px;font-size:1em;font-weight:700;line-height:1}.input-field,.select-field{color:#676257;width:100%;box-shadow:none;appearance:none;box-sizing:border-box;background-color:#fff;border:1px solid #cfcab9;border-radius:6px;outline:none;padding:16px 12px;font-size:18px;transition:border-color .12s,box-shadow .12s}.input-field::placeholder,.select-field::placeholder{color:#41404261;opacity:1;font-size:18px;line-height:24px}.input-field:focus,.select-field:focus{border-color:#d0c8b7;box-shadow:0 0 0 6px #d4e0c72e}.select-field{background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 20 20'><path fill='%23666' d='M5 7l5 5 5-5z'/></svg>");background-position:right 16px center;background-repeat:no-repeat;background-size:18px;padding-right:48px}.select-field option[disabled][selected]{color:#cfcfcf}.book-button{box-sizing:border-box;border:none;border-radius:28px;width:100%;padding:18px 36px;font-size:18px;font-weight:600;transition:background .18s,transform 80ms,opacity .12s}.book-button.disabled,.book-button:disabled{color:#fff;cursor:not-allowed;opacity:.85;box-shadow:none;background:linear-gradient(#d9d7d6,#cfcfcf);transform:none}.book-button.active,.book-button:not(:disabled){color:#fff;cursor:pointer;background:linear-gradient(#4d5e28,#3b4a20);box-shadow:0 6px 14px #4d5e2824}.book-button:not(:disabled):active{transform:translateY(1px)}@media (max-width:360px){.input-field,.select-field{padding:16px 14px;font-size:18px;line-height:24px}.input-field::placeholder,.select-field::placeholder{font-size:18px}}.event-card{background-color:#fff;border:1px solid #ddd;border-radius:12px;margin-bottom:15px;overflow:hidden}.event-card-header{cursor:pointer;padding:15px}.event-image{border-radius:6px;width:100%}.detail-row{align-items:center;margin-bottom:4px;display:flex}.long-detail-row{flex-direction:row;align-items:flex-start;display:flex}.detail-icon{vertical-align:middle;width:18px;height:18px}.detail-text{color:#898e9e;letter-spacing:-.24px;margin-left:4px;font-size:15px;line-height:20px}.event-time-text{margin-right:12px}.event-title{margin-top:4px;margin-bottom:4px;font-size:20px;font-weight:700}.event-short-desc{color:#898e9e;margin-bottom:20px;font-size:14px;line-height:1.4}.event-availability{color:#6c7275;background:0 0;border:1px solid #0000;border-radius:14px;margin-top:8px;padding:2px 12px;font-size:12px;font-weight:500;display:inline-block}.event-availability.more-than-half{color:#90b02c;border-color:#90b02c}.event-availability.less-than-half{color:#a86f00;border-color:#a86f00}.event-availability.full{color:#d34b4b;border-color:#d34b4b}.event-card-details{background-color:#fff;padding:0 15px 15px;display:none}.event-card.expanded .event-card-details{display:block}.success-message{z-index:1000;opacity:0;pointer-events:none;background-color:#000c;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:fixed;top:0;left:0}.success-message.visible{opacity:1;pointer-events:auto}.success-content{text-align:center;background-color:#fff;border-radius:6px;width:85%;max-width:350px;padding:30px}.book-success-icon{width:100px;height:100px;margin-bottom:5px}.spots-reserved{color:#414042;margin-bottom:8px;font-family:Playfair Medium;font-size:26px;line-height:100%}.spots-reserved-time{color:#4e5e28;margin-bottom:16px;font-size:16px;font-weight:600}.check-email-booked-court{color:#414042;margin-bottom:24px;font-size:14px;line-height:21px}.action-button{color:#fff;cursor:pointer;background-color:#4d5e28;border:none;border-radius:8px;width:100%;margin-top:20px;padding:14px;font-size:16px;font-weight:500;transition:all .2s}.bottom-logo-section{justify-content:center;align-items:center;padding:32px 0;display:flex}.bottom-logo{border-radius:4px;justify-content:center;align-items:center;width:100px;height:40px;font-size:12px;font-weight:600;display:flex}.tps-logo{height:58px}.ptp-logo{height:75px}.day-indicator{color:#4d5e28;margin-bottom:15px;font-size:18px;font-weight:500}.day-events{display:none}.day-events.active{display:block}.day-events-empty{flex-direction:column;justify-content:center;align-items:center;min-height:400px;padding:35px;display:flex}.no-events{color:#000;text-align:center;margin-bottom:11px;font-family:Emilio Test;font-size:28px;font-weight:100}.no-events-desc{color:#676257;text-align:center;font-size:16px;line-height:25px}@media (min-width:768px){.time-row{flex-wrap:wrap;gap:10px}.time-slot{padding:4px 5px;font-size:14px}.court-image{height:100px}.event-card-header{padding:18px}.event-image{border-radius:6px;height:200px}.event-title{margin-top:4px;margin-bottom:4px;font-size:20px;font-weight:700}.event-short-desc{color:#898e9e;margin-bottom:20px;font-size:15px}}.join-event-btn{box-sizing:border-box;border:none;border-radius:28px;width:100%;padding:18px 36px;font-size:18px;font-weight:600;transition:background .18s,transform 80ms,opacity .12s}.join-event-btn.disabled,.join-event-btn:disabled{color:#fff;cursor:not-allowed;opacity:.85;box-shadow:none;background:linear-gradient(#e0dfdf,#d6d5d5)}.join-event-btn.active,.join-event-btn:not(:disabled){color:#fff;cursor:pointer;background:linear-gradient(#4d5e28,#3b4a20);box-shadow:0 6px 14px #4d5e281f}.join-event-btn:not(:disabled):active{transform:translateY(1px)}.success-ok-btn{box-sizing:border-box;color:#fff;background-color:#4e5e28;border:none;border-radius:28px;width:100%;padding:18px 36px;font-family:Inter;font-size:18px;font-weight:500;line-height:24px}.loading-spinner{border:3px solid #fff;border-top-color:#0000;border-radius:50%;width:20px;height:20px;margin:0 auto;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
