:root{--cream:#f4e9b5;--paper:#fffaf0;--forest:#173f34;--green:#416b5a;--coral:#ef765a;--sun:#f3c84f;--ink:#173f34;--line:#173f342e;--muted:#64716b;--shadow:0 30px 80px #153a3033}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);margin:0;font-family:DM Sans,sans-serif;overflow-x:hidden}body.modal-active{overflow:hidden}button,input,select,textarea{font:inherit}button,a{color:inherit}button{cursor:pointer}a{text-decoration:none}.site-header{z-index:50;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4e9b5f0;align-items:center;gap:28px;height:82px;padding:10px clamp(20px,5vw,76px);display:flex;position:sticky;top:0}.brand{align-items:center;width:118px;height:62px;display:flex;overflow:hidden}.brand img{object-fit:contain;width:100%;height:100%;transform:scale(1.45)}.nav-links{align-items:center;gap:30px;margin-left:auto;display:flex}.nav-links a,.nav-text-button{background:0 0;border:0;padding:8px 0;font-size:.84rem;font-weight:700}.nav-links a:hover,.nav-text-button:hover{color:var(--coral)}.pill-button{border:1px solid var(--forest);color:var(--forest);background:0 0;border-radius:999px;justify-content:center;align-items:center;gap:28px;padding:13px 20px;font-size:.88rem;font-weight:800;transition:transform .2s,box-shadow .2s;display:inline-flex}.pill-button:hover{transform:translateY(-2px);box-shadow:0 8px 18px #173f3429}.pill-button:disabled{opacity:.6;cursor:wait;transform:none}.header-book{background:var(--forest);color:var(--cream);min-width:156px}.menu-button{background:0 0;border:0;width:44px;height:44px;padding:11px;display:none}.menu-button span{background:var(--forest);height:2px;margin:6px 0;display:block}.hero{background:var(--cream);grid-template-columns:.82fr 1.18fr;min-height:calc(100vh - 82px);display:grid}.hero-copy{flex-direction:column;justify-content:center;padding:70px 5vw 52px 7vw;display:flex}.eyebrow{letter-spacing:.16em;text-transform:uppercase;align-items:center;gap:10px;margin:0 0 22px;font-size:.71rem;font-weight:800;display:flex}.eyebrow i{background:currentColor;width:25px;height:2px;display:block}.eyebrow.light{color:var(--cream)}.hero h1,.intro-grid h2,.court-copy h2,.how-heading h2,.visit-copy h2,.faq-section h2,.final-cta h2,.booking-heading h2,.status-modal h2{letter-spacing:-.055em;margin:0;font:700 clamp(3.3rem,6.6vw,7.4rem)/.87 Playfair Display,serif}.hero h1 em,.court-copy h2 em,.visit-copy h2 em,.final-cta h2 em{color:var(--coral);display:block}.hero-lead{color:#354f47;max-width:580px;margin:28px 0 0;font-size:1.05rem;line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:24px;margin-top:32px;display:flex}.coral-button{background:var(--coral);border-color:var(--coral)}.underlined-link{border-bottom:1px solid var(--forest);padding-bottom:4px;font-size:.87rem;font-weight:800}.hero-proof{border-top:1px solid var(--line);gap:0;margin-top:50px;padding-top:20px;display:flex}.hero-proof div{min-width:30%;padding-right:18px}.hero-proof div+div{border-left:1px solid var(--line);padding-left:18px}.hero-proof strong,.hero-proof span{display:block}.hero-proof strong{font:700 1.15rem Playfair Display,serif}.hero-proof span{color:var(--muted);margin-top:4px;font-size:.7rem}.hero-visual{min-height:620px;position:relative;overflow:hidden}.hero-photo{border:3px solid var(--forest);background:linear-gradient(90deg,#173f3405,#0000),url(/pickle-court-hero.png) 50%/cover no-repeat;border-radius:230px 0 0 24px;position:absolute;inset:22px 22px 22px 0}.hero-sticker{border:4px solid var(--forest);background:var(--sun);text-align:center;width:150px;height:150px;box-shadow:8px 10px 0 var(--forest);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;top:12%;left:2%;transform:rotate(-8deg)}.hero-sticker .sticker-ball{color:var(--forest);font-size:2rem;line-height:.6}.hero-sticker strong{font:700 1.55rem/.82 Playfair Display,serif}.hero-sticker small{letter-spacing:.1em;margin-top:8px;font-size:.52rem;font-weight:800}.hero-note{background:#fffaf0eb;border-radius:999px;padding:11px 15px;font-size:.72rem;font-weight:800;position:absolute;bottom:43px;right:42px}.ticker{background:var(--forest);color:var(--cream);border-block:1px solid var(--forest);overflow:hidden}.ticker div{letter-spacing:.15em;justify-content:space-around;gap:30px;width:max-content;min-width:100%;padding:16px 30px;font-size:.76rem;font-weight:800;display:flex}.ticker b{color:var(--coral)}.intro-section{padding:105px 7vw 62px}.intro-grid{grid-template-columns:1.15fr .85fr;align-items:end;gap:11vw;display:grid}.intro-grid h2{font-size:clamp(3.3rem,6vw,6rem)}.intro-grid p{max-width:540px;color:var(--muted);margin:0;font-size:1.05rem;line-height:1.75}.service-grid{grid-template-columns:repeat(3,1fr);gap:14px;padding:0 7vw 110px;display:grid}.service-card{border:2px solid var(--forest);border-radius:18px;flex-direction:column;min-height:540px;padding:30px;display:flex;overflow:hidden}.service-card.coral{background:var(--coral)}.service-card.sun{background:var(--sun)}.service-card.forest{background:var(--forest);color:var(--cream)}.service-top{justify-content:space-between;align-items:center;font-size:.75rem;font-weight:800;display:flex}.service-icon{justify-content:center;align-items:center;height:136px;margin:30px 0 6px;font:700 5rem Playfair Display,serif;display:flex}.service-card>p{text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:.72rem;font-weight:700}.service-card h3{letter-spacing:-.04em;margin:0 0 14px;font:700 clamp(2.4rem,4vw,4rem)/.95 Playfair Display,serif}.service-card .service-copy{text-transform:none;letter-spacing:0;max-width:400px;font-size:.88rem;font-weight:400;line-height:1.55}.service-bottom{border-top:1px solid;justify-content:space-between;align-items:center;gap:16px;margin-top:auto;padding-top:22px;display:flex}.service-bottom strong{font-size:.95rem}.service-bottom strong small{font-weight:500}.service-bottom button{background:0 0;border:0;padding:0;font-weight:800}.courts-section{background:var(--forest);min-height:800px;color:var(--cream);grid-template-columns:1fr 1fr;display:grid}.court-graphic{background:var(--coral);place-items:center;min-height:700px;display:grid;position:relative;overflow:hidden}.court-lines{aspect-ratio:.72;border:6px solid var(--forest);width:70%;position:relative;transform:perspective(500px)rotateX(12deg)rotate(-3deg)}.court-lines:before,.court-lines:after,.court-lines span,.court-lines i{content:"";background:var(--forest);position:absolute}.court-lines:before{width:6px;height:100%;left:50%}.court-lines:after{width:100%;height:6px;top:50%}.court-lines span{width:100%;height:6px;top:22%}.court-lines i{width:100%;height:6px;bottom:22%}.floating-ball{color:var(--sun);text-shadow:9px 9px 0 var(--forest);font-size:9rem;line-height:1;position:absolute;top:13%;right:10%}.court-badge{border:4px solid var(--forest);background:var(--cream);width:155px;height:155px;color:var(--forest);text-align:center;border-radius:50%;align-content:center;place-items:center;font-size:.82rem;display:grid;position:absolute;bottom:8%;left:8%;transform:rotate(7deg)}.court-badge strong{font:700 1.2rem Playfair Display,serif}.court-copy{flex-direction:column;justify-content:center;padding:85px 8vw 85px 7vw;display:flex}.court-copy h2{font-size:clamp(3.3rem,5.3vw,6rem)}.court-copy>p:not(.eyebrow){color:#dce4da;max-width:560px;margin:30px 0;line-height:1.75}.court-copy ul{margin:4px 0 34px;padding:0;list-style:none}.court-copy li{border-bottom:1px solid #f4e9b540;gap:18px;padding:14px 0;font-size:.88rem;display:flex}.court-copy li span{color:var(--coral);font-weight:800}.cream-button{background:var(--cream);width:fit-content;color:var(--forest)}.how-section{background:var(--cream);grid-template-columns:.85fr 1.15fr;gap:10vw;padding:110px 7vw;display:grid}.how-heading h2{font-size:clamp(3.2rem,5vw,5.4rem)}.steps article{border-top:1px solid var(--line);grid-template-columns:70px 1fr;gap:22px;padding:28px 0;display:grid}.steps article:last-child{border-bottom:1px solid var(--line)}.steps article>span{background:var(--coral);border-radius:50%;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.steps h3{margin:0 0 6px;font:700 1.5rem Playfair Display,serif}.steps p{color:var(--muted);margin:0;line-height:1.6}.quote-section{background:var(--sun);text-align:center;align-content:center;place-items:center;min-height:560px;padding:100px 12vw;display:grid}.quote-mark{color:var(--coral);font:700 7rem/.7 Playfair Display,serif}.quote-section blockquote{letter-spacing:-.04em;max-width:980px;margin:30px auto;font:700 clamp(2.6rem,5vw,5.2rem)/1 Playfair Display,serif}.quote-section p{letter-spacing:.14em;font-size:.7rem;font-weight:800}.visit-section{padding:110px 7vw}.visit-copy{grid-template-columns:.7fr 1.3fr;align-items:start;display:grid}.visit-copy h2{font-size:clamp(3.5rem,7vw,7.2rem)}.visit-details{border-block:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:0;margin-top:80px;display:grid}.visit-details article{flex-direction:column;min-height:230px;padding:28px;display:flex}.visit-details article+article{border-left:1px solid var(--line)}.visit-details span,.footer-contact span{letter-spacing:.15em;font-size:.65rem;font-weight:800}.visit-details strong{margin:28px 0;font:700 1.5rem/1.3 Playfair Display,serif}.visit-details a,.visit-details button{background:0 0;border:0;border-bottom:1px solid;width:fit-content;margin-top:auto;padding:0 0 4px;font-size:.8rem;font-weight:800}.faq-section{background:var(--cream);grid-template-columns:.65fr 1.35fr;gap:8vw;padding:110px 7vw;display:grid}.faq-section h2{font-size:clamp(3.5rem,6vw,6rem)}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font:700 1.3rem Playfair Display,serif;list-style:none;display:flex}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:400 1.4rem DM Sans,sans-serif}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{max-width:680px;color:var(--muted);margin:-8px 0 28px;line-height:1.7}.final-cta{background:var(--forest);min-height:650px;color:var(--cream);text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:95px 24px;display:flex;position:relative;overflow:hidden}.final-cta h2{z-index:1;font-size:clamp(4rem,8vw,8.5rem);position:relative}.final-cta .pill-button{z-index:2;margin-top:36px;position:relative}.cta-ball{color:var(--coral);opacity:.9;text-shadow:22px 22px 0 var(--sun);font-size:27rem;line-height:1;position:absolute;bottom:-25%;left:-4%}footer{background:var(--cream);grid-template-columns:1.4fr .7fr .9fr;gap:6vw;padding:58px 7vw 24px;display:grid}.footer-brand img{object-fit:contain;width:150px;height:92px}.footer-brand p{color:var(--muted);margin:16px 0 0;font-size:.84rem;line-height:1.6}.footer-links,.footer-contact{flex-direction:column;align-items:flex-start;gap:13px;display:flex}.footer-links a,.footer-links button{background:0 0;border:0;padding:0;font-size:.83rem;font-weight:700}.footer-contact a{font:700 1.15rem Playfair Display,serif}.footer-contact span{margin-bottom:12px}.footer-bottom{border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;align-items:center;margin-top:38px;padding-top:20px;font-size:.7rem;display:flex}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d2720d1;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.booking-modal,.status-modal{background:var(--paper);width:min(1180px,100%);max-height:calc(100vh - 36px);box-shadow:var(--shadow);border-radius:22px;position:relative;overflow-y:auto}.close-button{z-index:2;border:1px solid var(--line);background:var(--paper);border-radius:50%;width:42px;height:42px;font-size:1.8rem;line-height:1;position:absolute;top:16px;right:20px}.booking-heading{border-bottom:1px solid var(--line);padding:40px 48px 26px}.booking-heading h2{margin-bottom:18px;font-size:clamp(2.7rem,5vw,5rem)}.booking-heading>p:last-child{color:var(--muted)}.booking-form{grid-template-columns:minmax(0,1fr) 310px;display:grid}.form-main{padding:10px 48px 50px}.booking-form fieldset{border:0;border-bottom:1px solid var(--line);margin:0;padding:30px 0}.booking-form legend{letter-spacing:.13em;text-transform:uppercase;font-size:.69rem;font-weight:800}.choice-grid{gap:10px;margin-top:18px;display:grid}.choice-grid.three{grid-template-columns:repeat(3,1fr)}.choice{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;justify-content:center;min-height:88px;padding:15px;display:flex}.choice.active{border-color:var(--coral);box-shadow:inset 0 0 0 1px var(--coral);background:#fff3ed}.choice input{opacity:0;pointer-events:none;position:absolute}.choice strong{font-size:.9rem}.choice small{color:var(--muted);margin-top:5px}.field-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px;display:grid}.field-grid label,.status-modal label{flex-direction:column;gap:8px;font-size:.72rem;font-weight:800;display:flex}.field-grid input,.field-grid select,.field-grid textarea,.status-modal input{border:1px solid var(--line);width:100%;min-height:48px;color:var(--forest);background:#fff;border-radius:9px;outline:none;padding:12px}.field-grid input:focus,.field-grid select:focus,.field-grid textarea:focus,.status-modal input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ef765a1f}.field-grid textarea{resize:vertical}.full-field{grid-column:1/-1}.availability-note{color:#456157;background:#eef5f1;border-radius:8px;margin:14px 0 0;padding:10px 12px;font-size:.72rem;line-height:1.45}.availability-note.unavailable{color:#8a2f1f;background:#ffe3db}.booking-summary{background:var(--cream);height:fit-content;min-height:100%;padding:36px 28px;position:sticky;top:0}.booking-summary>span{letter-spacing:.15em;font-size:.65rem;font-weight:800}.booking-summary>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:17px 0;display:flex}.booking-summary small{color:var(--muted)}.booking-summary strong{text-align:right;max-width:155px;font-size:.85rem}.booking-summary .summary-total{align-items:flex-end;margin-top:8px}.booking-summary .summary-total strong{font:700 2rem Playfair Display,serif}.booking-summary>p{color:var(--muted);margin:20px 0;font-size:.73rem;line-height:1.55}.wide{width:100%}.dark-button{background:var(--forest);color:var(--cream)}.form-alert{border-radius:8px;margin:14px 0;padding:12px;font-size:.78rem;line-height:1.45}.form-alert.error{color:#8a2f1f;background:#ffe3db}.booking-success{text-align:center;max-width:680px;margin:0 auto;padding:65px 48px 75px}.success-check{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:70px;height:70px;margin:0 auto 24px;font-size:2rem;display:grid}.booking-success .eyebrow{justify-content:center}.booking-success h3{margin:0 auto 24px;font:700 clamp(2.1rem,4vw,3.8rem)/1 Playfair Display,serif}.reference-box{border:2px dashed var(--coral);background:#fff3ed;width:min(420px,100%);margin:26px auto;padding:20px}.reference-box span,.reference-box strong{display:block}.reference-box span{letter-spacing:.12em;text-transform:uppercase;font-size:.66rem;font-weight:800}.reference-box strong{letter-spacing:.05em;margin-top:7px;font-size:1.55rem}.booking-success>p:not(.eyebrow){color:var(--muted);line-height:1.65}.success-actions{justify-content:center;align-items:center;gap:20px;margin-top:28px;display:flex}.text-button{background:0 0;border:0;border-bottom:1px solid;padding:4px 0;font-weight:800}.status-modal{width:min(560px,100%);padding:48px}.status-modal h2{font-size:clamp(2.8rem,6vw,4.7rem)}.status-modal>p:not(.eyebrow){color:var(--muted)}.status-modal form{gap:16px;margin-top:28px;display:grid}.status-result{border:1px solid var(--line);background:var(--cream);border-radius:14px;margin-top:24px;overflow:hidden}.status-result>div{background:var(--forest);color:var(--cream);justify-content:space-between;align-items:center;padding:18px;display:flex}.status-result>div span{background:var(--coral);color:var(--forest);text-transform:uppercase;border-radius:999px;padding:5px 9px;font-size:.67rem;font-weight:800}.status-result dl{margin:0;padding:8px 18px 18px}.status-result dl div{border-bottom:1px solid var(--line);justify-content:space-between;gap:18px;padding:12px 0;display:flex}.status-result dt{color:var(--muted);font-size:.75rem}.status-result dd{text-align:right;margin:0;font-size:.78rem;font-weight:700}@media (max-width:1050px){.nav-links{gap:18px}.hero{grid-template-columns:1fr}.hero-copy{padding:80px 7vw 60px}.hero-visual{min-height:650px}.hero-photo{border-radius:220px 220px 24px 24px;inset:0 22px 22px}.service-grid{grid-template-columns:1fr}.service-card{min-height:420px}.courts-section{grid-template-columns:1fr}.court-graphic{min-height:650px}.how-section,.faq-section{grid-template-columns:1fr}.visit-copy{grid-template-columns:1fr;gap:30px}}@media (max-width:780px){.site-header{height:70px;padding:8px 18px}.brand{width:96px;height:52px}.header-book{display:none}.menu-button{margin-left:auto;display:block}.nav-links{background:var(--cream);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;margin:0;padding:18px;display:none;position:absolute;top:70px;left:0;right:0;box-shadow:0 18px 30px #173f3426}.nav-links.open{display:flex}.nav-links a,.nav-text-button{text-align:left;border-bottom:1px solid var(--line);padding:13px 5px}.hero{min-height:auto}.hero-copy{padding:65px 22px 48px}.hero h1{font-size:clamp(3.5rem,15vw,5.2rem)}.hero-proof{grid-template-columns:1fr 1fr;row-gap:18px;display:grid}.hero-proof div{padding:0 12px 0 0}.hero-proof div+div{padding-left:12px}.hero-proof div:nth-child(3){border-left:0;padding-left:0}.hero-visual{min-height:520px}.hero-photo{background-position:64%;border-radius:150px 150px 18px 18px;inset:0 12px 18px}.hero-sticker{width:112px;height:112px;box-shadow:5px 6px 0 var(--forest);top:7%;left:5%}.hero-sticker strong{font-size:1.15rem}.hero-note{bottom:36px;right:26px}.ticker div{justify-content:flex-start}.intro-section,.service-grid,.how-section,.visit-section,.faq-section{padding-left:22px;padding-right:22px}.intro-grid{grid-template-columns:1fr;gap:28px}.intro-grid h2,.court-copy h2,.how-heading h2,.visit-copy h2,.faq-section h2{font-size:clamp(3.2rem,14vw,5rem)}.service-grid{padding-bottom:75px}.service-card{min-height:420px;padding:24px}.service-icon{height:100px;font-size:4rem}.court-graphic{min-height:520px}.court-copy{padding:75px 22px}.how-section{gap:50px;padding-top:75px;padding-bottom:75px}.quote-section{min-height:480px;padding:70px 22px}.quote-section blockquote{font-size:clamp(2.3rem,10vw,4rem)}.visit-section{padding-top:75px;padding-bottom:75px}.visit-details{grid-template-columns:1fr;margin-top:50px}.visit-details article{min-height:210px;padding-inline:0}.visit-details article+article{border-left:0;border-top:1px solid var(--line)}.faq-section{gap:45px;padding-top:75px;padding-bottom:75px}.final-cta{min-height:540px}.final-cta h2{font-size:clamp(3.8rem,15vw,6rem)}.cta-ball{font-size:18rem}footer{grid-template-columns:1fr;padding:45px 22px 22px}.footer-bottom{flex-direction:column;grid-column:auto;align-items:flex-start;gap:12px}.booking-modal{border-radius:14px}.booking-heading{padding:45px 22px 24px}.booking-heading h2{font-size:3rem}.booking-form{grid-template-columns:1fr}.form-main{padding:0 22px 25px}.choice-grid.three,.field-grid{grid-template-columns:1fr}.full-field{grid-column:auto}.booking-summary{padding:28px 22px;position:static}.status-modal{padding:48px 24px 28px}.booking-success{padding:65px 22px}}.admin-app{color:#183e34;background:#f2f0e8;grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.admin-sidebar{z-index:30;background:var(--forest);height:100vh;color:var(--cream);flex-direction:column;padding:22px 16px 18px;display:flex;position:sticky;top:0}.admin-logo{justify-content:space-between;align-items:center;height:66px;display:flex;overflow:hidden}.admin-logo img{object-fit:contain;filter:brightness(1.07);width:104px;height:62px;transform:scale(1.45)}.admin-logo button{color:var(--cream);background:0 0;border:0;font-size:1.8rem;display:none}.admin-label{color:#f4e9b58c;letter-spacing:.17em;margin:18px 12px 12px;font-size:.58rem;font-weight:800}.admin-sidebar nav{gap:5px;display:grid}.admin-sidebar nav button{color:#dce7df;text-align:left;background:0 0;border:0;border-radius:9px;align-items:center;gap:12px;width:100%;padding:11px 12px;font-size:.78rem;font-weight:700;display:flex}.admin-sidebar nav button>span{border:1px solid #f4e9b53b;border-radius:7px;place-items:center;width:25px;height:25px;display:grid}.admin-sidebar nav button:hover,.admin-sidebar nav button.active{color:var(--cream);background:#f4e9b51c}.admin-sidebar nav button.active>span{background:var(--coral);border-color:var(--coral);color:var(--forest)}.admin-sidebar nav button i{background:var(--coral);min-width:22px;color:var(--forest);text-align:center;border-radius:999px;margin-left:auto;padding:3px 6px;font-size:.6rem;font-style:normal}.sidebar-help{background:#f4e9b50f;border:1px solid #f4e9b529;border-radius:12px;margin:auto 4px 18px;padding:17px}.sidebar-help span,.sidebar-help strong{display:block}.sidebar-help span{color:#f4e9b58c;font-size:.61rem}.sidebar-help strong{margin-top:6px;font:700 1rem/1.35 Playfair Display,serif}.sidebar-help button{border:0;border-bottom:1px solid var(--coral);color:var(--coral);background:0 0;margin-top:12px;padding:0 0 3px;font-size:.68rem;font-weight:700}.sidebar-user{border-top:1px solid #f4e9b526;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;padding-top:14px;display:grid}.sidebar-user>div{background:var(--sun);width:34px;height:34px;color:var(--forest);border-radius:50%;place-items:center;font-size:.68rem;font-weight:800;display:grid}.sidebar-user span{min-width:0}.sidebar-user strong,.sidebar-user small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.sidebar-user strong{font-size:.7rem}.sidebar-user small{color:#f4e9b580;margin-top:2px;font-size:.53rem}.sidebar-user a{font-size:.8rem}.admin-main{min-width:0}.admin-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf7d9;border-bottom:1px solid #deddd5;align-items:center;gap:18px;height:76px;padding:0 30px;display:flex}.admin-header>div:first-of-type{align-items:baseline;gap:14px;display:flex}.admin-header p{margin:0;font:700 1.05rem Playfair Display,serif}.admin-header span{color:#7d8580;font-size:.65rem}.sidebar-toggle{background:0 0;border:0;font-size:1.3rem;display:none}.admin-header-actions{align-items:center;gap:10px;margin-left:auto;display:flex}.admin-header-actions a{background:#fff;border:1px solid #d7d8d2;border-radius:999px;padding:9px 14px;font-size:.68rem;font-weight:700}.admin-header-actions button{background:#fff;border:1px solid #d7d8d2;border-radius:50%;width:36px;height:36px;font-size:1.05rem}.admin-content{padding:30px}.dashboard-alert{color:#8a2f1f;background:#ffe1d8;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:13px 16px;font-size:.76rem;display:flex}.dashboard-alert button{background:0 0;border:0;border-bottom:1px solid;padding:0;font-weight:800}.overview-hello,.manager-heading{justify-content:space-between;align-items:flex-end;gap:28px;display:flex}.admin-kicker{color:var(--coral);letter-spacing:.16em;font-size:.59rem;font-weight:800}.overview-hello h1,.manager-heading h1{letter-spacing:-.04em;margin:6px 0 7px;font:700 clamp(2.3rem,4vw,4rem)/.95 Playfair Display,serif}.overview-hello p,.manager-heading p{color:#7b847f;margin:0;font-size:.78rem}.admin-primary{background:var(--forest);min-width:150px;color:var(--cream);border:0;border-radius:999px;justify-content:space-between;align-items:center;gap:24px;padding:12px 17px;font-size:.7rem;font-weight:800;display:flex}.stats-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin:28px 0 18px;display:grid}.stats-grid article{background:#fffdf8;border:1px solid #deddd5;border-radius:13px;flex-direction:column;min-height:150px;padding:20px;display:flex;position:relative;overflow:hidden}.stats-grid article>span{color:#7f8882;font-size:.65rem}.stats-grid article>strong{letter-spacing:-.03em;margin-top:15px;font:700 clamp(1.8rem,2.6vw,2.8rem) Playfair Display,serif}.stats-grid article>small{color:#99a09c;margin-top:auto;font-size:.58rem}.stat-icon{border-radius:9px;place-items:center;width:31px;height:31px;font-size:.75rem;font-style:normal;font-weight:800;display:grid;position:absolute;top:15px;right:15px}.stat-icon.sun{background:#fff2b9}.stat-icon.coral{color:#a84632;background:#ffe1d8}.stat-icon.green{background:#d9ece3}.stat-icon.cream{background:var(--cream)}.overview-grid{grid-template-columns:1.55fr .65fr;gap:18px;display:grid}.panel{background:#fffdf8;border:1px solid #deddd5;border-radius:14px}.panel-heading{border-bottom:1px solid #e4e2da;justify-content:space-between;align-items:center;padding:21px 22px;display:flex}.panel-heading span{color:#9b9f9d;letter-spacing:.14em;font-size:.55rem;font-weight:800}.panel-heading h2{margin:5px 0 0;font:700 1.35rem Playfair Display,serif}.panel-heading button{background:0 0;border:0;border-bottom:1px solid;padding:0 0 3px;font-size:.64rem;font-weight:700}.upcoming-list>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #eceae3;grid-template-columns:92px 1fr auto 18px;align-items:center;gap:16px;width:100%;padding:15px 22px;display:grid}.upcoming-list>button:hover{background:#fbf7ec}.upcoming-list time{border-right:1px solid #e0ded6}.upcoming-list strong,.upcoming-list small{display:block}.upcoming-list time strong{font:700 1rem Playfair Display,serif}.upcoming-list small{color:#8d9591;margin-top:3px;font-size:.58rem}.status-chip{color:#59635e;text-transform:uppercase;letter-spacing:.05em;background:#e9ebe9;border-radius:999px;align-items:center;width:fit-content;padding:5px 8px;font-size:.54rem;font-weight:800;display:inline-flex}.status-chip.pending{color:#765c00;background:#fff0b9}.status-chip.confirmed{color:#275e49;background:#dcece3}.status-chip.completed{color:#465771;background:#dfe5f0}.status-chip.cancelled{color:#913e2d;background:#ffe0d8}.pulse-panel{padding-bottom:20px}.pulse-panel .panel-heading{border-bottom:0}.pulse-total{padding:15px 22px 3px}.pulse-total strong,.pulse-total span{display:block}.pulse-total strong{font:700 3.8rem/1 Playfair Display,serif}.pulse-total span{color:#929894;font-size:.65rem}.pulse-bar{background:#ebe9e1;border-radius:999px;height:8px;margin:28px 22px 16px;overflow:hidden}.pulse-bar i{border-radius:inherit;background:var(--green);height:100%;display:block}.pulse-legend{gap:8px;padding:0 22px 23px;display:grid}.pulse-legend span{color:#6f7773;align-items:center;gap:8px;font-size:.62rem;display:flex}.pulse-legend i{border-radius:50%;width:8px;height:8px}.confirmed-dot{background:var(--green)}.pending-dot{background:var(--sun)}.pulse-panel>button{background:#faf8f2;border:1px solid #dcdad2;border-radius:8px;justify-content:space-between;width:calc(100% - 44px);margin:0 22px;padding:10px 12px;font-size:.63rem;font-weight:700;display:flex}.manager-heading{padding-bottom:25px}.manager-count{text-align:right;min-width:90px}.manager-count strong,.manager-count span{display:block}.manager-count strong{font:700 2rem Playfair Display,serif}.manager-count span{color:#999e9b;text-transform:uppercase;font-size:.57rem}.booking-manager,.customer-view{padding:26px}.booking-toolbar{grid-template-columns:minmax(240px,1fr) 160px 150px auto;gap:9px;margin-bottom:17px;display:grid}.booking-toolbar input,.booking-toolbar select,.schedule-date{height:40px;color:var(--forest);background:#fff;border:1px solid #dcdad3;border-radius:8px;outline:none;padding:0 11px;font-size:.66rem}.search-field{background:#fff;border:1px solid #dcdad3;border-radius:8px;align-items:center;gap:8px;height:40px;padding:0 11px;display:flex}.search-field input{border:0;flex:1;height:auto;padding:0}.clear-filter{background:0 0;border:0;border-bottom:1px solid;font-size:.62rem;font-weight:700}.booking-table-wrap{overflow-x:auto}.booking-table{border-collapse:collapse;width:100%}.booking-table th{color:#8c938f;text-align:left;text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid #dedcd5;padding:11px 10px;font-size:.55rem}.booking-table td{cursor:pointer;border-bottom:1px solid #eeece6;padding:13px 10px;font-size:.67rem}.booking-table tr:hover td{background:#fbf8ef}.booking-table td strong,.booking-table td small{display:block}.booking-table td small{color:#8e9691;margin-top:4px;font-size:.56rem}.booking-table td>button{background:#fff;border:1px solid #dddcd5;border-radius:50%;width:28px;height:28px}.payment-dot{background:#b6bbb8;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.payment-dot.paid{background:var(--green)}.payment-dot.pending{background:var(--sun)}.payment-dot.refunded{background:#7f92b7}.booking-cards{display:none}.loading-rows{padding:15px 22px 25px}.loading-rows div{border-bottom:1px solid #eceae4;grid-template-columns:44px 1fr 90px;gap:15px;padding:15px 0;display:grid}.loading-rows i,.loading-rows span,.loading-rows b{background:linear-gradient(90deg,#eceae4,#f8f7f2,#eceae4) 0 0/200%;border-radius:999px;height:12px;animation:1.2s infinite shimmer}@keyframes shimmer{to{background-position:-200% 0}}.empty-state{color:#858d88;text-align:center;place-items:center;padding:70px 20px;display:grid}.empty-state div{background:var(--cream);border-radius:50%;place-items:center;width:56px;height:56px;font-size:1.5rem;display:grid}.empty-state h3{color:var(--forest);margin:15px 0 4px;font:700 1.25rem Playfair Display,serif}.empty-state p{margin:0;font-size:.68rem}.schedule-view{max-width:1060px;margin:0 auto}.schedule-date{min-width:170px}.schedule-groups{gap:16px;margin-top:24px;display:grid}.schedule-groups>section{background:#fffdf8;border:1px solid #deddd5;border-radius:13px;overflow:hidden}.schedule-groups>section>header{background:#faf7ed;border-bottom:1px solid #e4e2db;justify-content:space-between;padding:14px 19px;display:flex}.schedule-groups header time{font:700 1rem Playfair Display,serif}.schedule-groups header span{color:#89918c;font-size:.62rem}.schedule-groups section>div>button{text-align:left;background:0 0;border:0;border-bottom:1px solid #eceae3;grid-template-columns:72px 5px 1fr auto 60px;align-items:center;gap:16px;width:100%;padding:15px 19px;display:grid}.schedule-groups section>div>button:hover{background:#fbf8ef}.schedule-groups button time{font:700 .88rem Playfair Display,serif}.schedule-groups button small{color:#939a96;margin-top:3px;font-size:.53rem;font-weight:500;display:block}.schedule-line{background:var(--coral);border-radius:999px;height:36px}.schedule-line.court-2{background:var(--green)}.schedule-groups button>span>strong{font-size:.73rem}.schedule-groups button>b{text-align:right;font:700 .9rem Playfair Display,serif}.customer-grid{grid-template-columns:repeat(2,1fr);gap:11px;display:grid}.customer-grid article{background:#fff;border:1px solid #e3e1da;border-radius:11px;grid-template-columns:44px 1fr;gap:13px;padding:17px;display:grid}.customer-avatar{background:var(--cream);border-radius:50%;place-items:center;width:44px;height:44px;font-size:.7rem;font-weight:800;display:grid}.customer-grid h3{margin:2px 0 5px;font:700 1rem Playfair Display,serif}.customer-grid a{color:#7f8883;font-size:.57rem;line-height:1.55;display:block}.customer-grid dl{border-top:1px solid #eceae4;grid-column:1/-1;grid-template-columns:repeat(3,1fr);margin:9px 0 0;padding-top:12px;display:grid}.customer-grid dl div+div{border-left:1px solid #eceae4;padding-left:11px}.customer-grid dt{color:#9ba19e;font-size:.52rem}.customer-grid dd{margin:5px 0 0;font-size:.66rem;font-weight:700}.settings-view{max-width:1120px;margin:0 auto}.setup-live{color:#28634b;background:#e8f2ed;border:1px solid #cddcd4;border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:.62rem;font-weight:700;display:flex}.setup-live i{background:#3d8668;border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #3d866826}.settings-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.settings-grid>section{padding:23px}.settings-title{gap:13px;margin-bottom:20px;display:flex}.settings-title>span{background:var(--coral);border-radius:8px;place-items:center;width:30px;height:30px;font-size:.62rem;font-weight:800;display:grid}.settings-title h2{margin:0;font:700 1.25rem Playfair Display,serif}.settings-title p{color:#929894;margin:3px 0 0;font-size:.58rem}.court-setting{border:1px solid #e3e1da;border-radius:9px;justify-content:space-between;align-items:center;margin:9px 0;padding:12px;display:flex}.court-setting span{grid-template-columns:8px 1fr;align-items:center;gap:0 9px;font-size:.68rem;font-weight:700;display:grid}.court-setting span i{background:var(--coral);border-radius:999px;grid-row:1/3;width:8px;height:29px}.court-setting span i.court-two{background:var(--green)}.court-setting small{color:#939a96;margin-top:3px;font-size:.53rem;font-weight:500;display:block}.court-setting b{color:#32614e;text-transform:uppercase;background:#dcece3;border-radius:999px;padding:4px 7px;font-size:.5rem}.setting-list,.rate-list{margin:17px 0 0}.setting-list div,.rate-list div{border-bottom:1px solid #eceae3;justify-content:space-between;gap:18px;padding:11px 0;display:flex}.setting-list dt,.rate-list dt{color:#8d9490;font-size:.61rem}.setting-list dd,.rate-list dd{margin:0;font-size:.64rem;font-weight:700}.payment-methods{background:var(--cream);border-radius:9px;margin-top:20px;padding:15px}.payment-methods>span{letter-spacing:.08em;font-size:.57rem;font-weight:800}.payment-methods>div{gap:8px;margin:10px 0;display:flex}.payment-methods b{background:#fff;border-radius:999px;padding:6px 9px;font-size:.55rem}.payment-methods p{color:#7e857f;margin:0;font-size:.55rem;line-height:1.5}.launch-check{grid-column:1/-1}.launch-check ul{grid-template-columns:repeat(5,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.launch-check li{border:1px solid #e5e2da;border-radius:9px;gap:10px;min-height:110px;padding:13px;display:flex}.launch-check li>i{background:#f2eee4;border-radius:50%;flex:none;place-items:center;width:20px;height:20px;font-size:.6rem;font-style:normal;display:grid}.launch-check li.done>i{color:#2f6a52;background:#dcece3}.launch-check strong,.launch-check small{display:block}.launch-check strong{font-size:.61rem}.launch-check small{color:#949a96;margin-top:5px;font-size:.51rem;line-height:1.4}.drawer-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14312966;justify-content:flex-end;display:flex;position:fixed;inset:0}.booking-drawer{background:#fffdf8;width:min(465px,100%);height:100%;overflow-y:auto;box-shadow:-25px 0 60px #10312826}.booking-drawer>header{background:var(--cream);border-bottom:1px solid #e5e2db;justify-content:space-between;gap:18px;padding:26px;display:flex}.booking-drawer>header h2{margin:9px 0 4px;font:700 1.55rem Playfair Display,serif}.booking-drawer>header p{color:#89908c;margin:0;font-size:.55rem}.booking-drawer>header button{background:0 0;border:1px solid #d4d0bd;border-radius:50%;width:36px;height:36px;font-size:1.4rem}.booking-drawer form{padding:24px 26px 40px}.drawer-customer{grid-template-columns:44px 1fr;gap:13px;padding-bottom:21px;display:grid}.drawer-customer h3{margin:1px 0 4px;font:700 1.05rem Playfair Display,serif}.drawer-customer a{color:#7e8781;font-size:.6rem;line-height:1.55;display:block}.drawer-block{border-top:1px solid #e5e3dc;padding:20px 0}.drawer-block>span{color:#8b938e;letter-spacing:.14em;font-size:.54rem;font-weight:800}.drawer-block dl{margin:9px 0 0}.drawer-block dl div{justify-content:space-between;gap:18px;padding:9px 0;display:flex}.drawer-block dt{color:#868e89;font-size:.62rem}.drawer-block dd{text-align:right;margin:0;font-size:.66rem;font-weight:700;line-height:1.4}.drawer-block>p{color:#66716b;background:#f5f1e6;border-radius:8px;padding:12px;font-size:.64rem;line-height:1.55}.edit-block{grid-template-columns:1fr 1fr;gap:13px;display:grid}.edit-block>span{grid-column:1/-1}.edit-block label{gap:7px;font-size:.6rem;font-weight:700;display:grid}.edit-block label:last-child{grid-column:1/-1}.edit-block select,.edit-block textarea{width:100%;color:var(--forest);background:#fff;border:1px solid #dcdad3;border-radius:8px;padding:10px;font-size:.64rem}.edit-block textarea{resize:vertical}.drawer-save{width:100%;margin-top:15px}.save-message{color:#8c3828;background:#ffe0d8;border-radius:8px;margin-top:12px;padding:10px;font-size:.62rem}.save-message.success{color:#2e634e;background:#dcece3}.admin-locked{background:var(--cream);text-align:center;align-content:center;place-items:center;min-height:100vh;padding:30px;display:grid}.admin-locked img{width:165px;transform:scale(1.35)}.admin-locked>p{letter-spacing:.15em;margin:20px 0 8px;font-size:.65rem;font-weight:800}.admin-locked h1{max-width:620px;margin:0;font:700 clamp(2.7rem,7vw,5.2rem)/.95 Playfair Display,serif}.admin-locked span{color:#7b847f;margin:18px 0;font-size:.75rem}.admin-locked a{background:var(--forest);color:var(--cream);border-radius:999px;padding:11px 18px;font-size:.7rem;font-weight:800}.admin-locked a.back-home{color:var(--forest);background:0 0;margin-top:10px}.admin-login-page{background:radial-gradient(circle at 12% 15%, #ef765a47, transparent 24%), radial-gradient(circle at 85% 82%, #f3c84f52, transparent 28%), var(--forest);place-items:center;min-height:100vh;padding:28px;display:grid}.admin-login-card{background:var(--paper);border:1px solid #173f3429;border-radius:22px;width:min(470px,100%);padding:38px;box-shadow:0 35px 90px #03181259}.admin-login-logo{width:135px;height:76px;margin-bottom:24px;display:block;overflow:hidden}.admin-login-logo img{object-fit:contain;width:100%;height:100%;transform:scale(1.4)}.admin-login-card .admin-kicker{color:var(--coral);margin:0 0 8px}.admin-login-card h1{letter-spacing:-.04em;margin:0;font:700 clamp(2.8rem,8vw,4.5rem)/.92 Playfair Display,serif}.admin-login-card>p:not(.admin-kicker){color:var(--muted);margin:18px 0 26px;font-size:.83rem;line-height:1.65}.admin-login-form{gap:15px;display:grid}.admin-login-form label{gap:8px;font-size:.72rem;font-weight:800;display:grid}.admin-login-form input{border:1px solid var(--line);width:100%;min-height:50px;color:var(--forest);background:#fff;border-radius:9px;outline:none;padding:12px}.admin-login-form input:focus{border-color:var(--coral);box-shadow:0 0 0 3px #ef765a1f}.admin-login-form .admin-primary{width:100%;margin-top:5px}.admin-login-error{color:#8a2f1f;background:#ffe3db;border-radius:8px;padding:11px 12px;font-size:.72rem;line-height:1.45}.admin-login-back{border-bottom:1px solid;width:fit-content;margin-top:22px;padding-bottom:3px;font-size:.72rem;font-weight:800;display:block}@media (max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.overview-grid{grid-template-columns:1fr}.launch-check ul{grid-template-columns:repeat(2,1fr)}}@media (max-width:820px){.admin-app{grid-template-columns:1fr}.admin-sidebar{width:260px;transition:transform .2s;position:fixed;top:0;left:0;transform:translate(-105%);box-shadow:20px 0 50px #0c271f40}.admin-sidebar.open{transform:translate(0)}.admin-logo button,.sidebar-toggle{display:block}.admin-header{height:68px;padding:0 16px}.admin-header>div:first-of-type>span,.admin-header-actions a{display:none}.admin-content{padding:20px 14px}.overview-hello,.manager-heading{flex-direction:column;align-items:flex-start}.overview-hello .admin-primary{width:100%}.stats-grid{grid-template-columns:repeat(2,1fr);gap:9px}.stats-grid article{min-height:135px;padding:16px}.booking-manager,.customer-view{padding:17px 12px}.booking-toolbar{grid-template-columns:1fr 1fr}.search-field{grid-column:1/-1}.booking-table{display:none}.booking-cards{gap:9px;display:grid}.booking-cards>button{text-align:left;background:#fff;border:1px solid #e2e0d9;border-radius:10px;padding:14px;display:block}.booking-cards header,.booking-cards footer{justify-content:space-between;align-items:center;display:flex}.booking-cards h3{margin:15px 0 3px;font:700 1rem Playfair Display,serif}.booking-cards p{color:#8a928d;margin:0 0 15px;font-size:.58rem}.booking-cards footer{background:0 0;border-top:1px solid #eeeae2;padding:11px 0 0;font-size:.59rem}.schedule-groups section>div>button{grid-template-columns:58px 4px 1fr;gap:11px}.schedule-groups button>.status-chip,.schedule-groups button>b{display:none}.customer-grid,.settings-grid{grid-template-columns:1fr}.launch-check{grid-column:auto}.launch-check ul{grid-template-columns:1fr}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr}.stats-grid article{min-height:125px}.upcoming-list>button{grid-template-columns:72px 1fr 16px;padding-inline:14px}.upcoming-list .status-chip{display:none}.booking-toolbar{grid-template-columns:1fr}.search-field{grid-column:auto}.customer-grid dl{grid-template-columns:1fr}.customer-grid dl div+div{border-left:0;padding:8px 0 0}.edit-block{grid-template-columns:1fr}.edit-block>span,.edit-block label:last-child{grid-column:auto}}.install-shell{color:#f8f4e8;background:radial-gradient(circle at top,#243d36 0,#10231f 45%,#07110f 100%);place-items:center;min-height:100vh;padding:32px 18px;display:grid}.install-card{color:#17211e;background:#fff;border-radius:24px;width:min(720px,100%);padding:clamp(24px,5vw,48px);box-shadow:0 28px 80px #0008}.install-kicker{letter-spacing:.18em;color:#e8662d;font-size:.78rem;font-weight:900}.install-card h1{margin:.35rem 0 .75rem;font-size:clamp(2rem,5vw,3.5rem)}.install-card>p{color:#59635f;margin-bottom:1.5rem;line-height:1.65}.install-form{gap:16px;display:grid}.install-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.install-form label{gap:7px;font-size:.85rem;font-weight:800;display:grid}.install-form input{width:100%;font:inherit;background:#f9fbfa;border:1px solid #ccd4d0;border-radius:10px;padding:12px 14px}.install-form input:focus{border-color:#e8662d;outline:3px solid #e8662d33}.install-form hr{border:0;border-top:1px solid #e4e8e6;width:100%;margin:5px 0}.install-note{color:#65706b;margin-top:-10px;font-size:.8rem}.install-error{color:#9d271b;background:#fff0ed;border-radius:10px;padding:12px}.install-button{color:#fff;cursor:pointer;background:#e8662d;border:0;border-radius:12px;padding:14px 18px;font-size:1rem;font-weight:900}.install-button:disabled{opacity:.65;cursor:wait}@media (max-width:600px){.install-grid{grid-template-columns:1fr}.install-card{border-radius:18px}}
