*{box-sizing:border-box;margin:0;padding:0}:root{--white:#fff;--black:#000;--header-height:64px;--footer-bg:#0e0d41}.light{--primary-color:#f0c6e2;--primary-dark:#eaa2cc;--primary-text:#c4549a;--secondary-color:#0e0d41;--accent-color:#b5a8e6;--background-color:#f9f9f9;--text-color:#222;--text-light:#555;--card-bg:#fff;--border-color:#e1e8ed;--shadow:0 2px 10px #00000014;--shadow-hover:0 5px 20px #0000001f;--header-bg:#f9f9f9f2;--gradient-start:#f0c6e2;--gradient-end:#b5a8e6;--contrast-text-color:#f0f0f0;--error-color:#dc3545;--error-bg:#dc35451a;--success-color:#28a745;--success-bg:#28a7451a;--warning-color:#ff9800;--warning-bg:#ff98001a}.dark{--primary-color:#cd65bf;--primary-dark:#dc0c5a;--primary-text:#e88ad4;--secondary-color:#eae9f1;--accent-color:#8278bf;--background-color:#1a1824;--text-color:#f0f0f0;--text-light:#b0b0b0;--card-bg:#2a2636;--border-color:#3a3546;--shadow:0 2px 10px #0000004d;--shadow-hover:0 5px 20px #0006;--header-bg:#1a1824f2;--gradient-start:#cd65bf;--gradient-end:#8278bf;--contrast-text-color:#222;--error-color:#f87171;--error-bg:#f8717126;--success-color:#4ade80;--success-bg:#4ade8026;--warning-color:#fbbf24;--warning-bg:#fbbf2426}body:not(.light):not(.dark){--primary-color:#f0c6e2;--primary-text:#c4549a;--secondary-color:#0e0d41;--accent-color:#b5a8e6;--background-color:#f9f9f9;--text-color:#222;--text-light:#555;--card-bg:#fff;--border-color:#e1e8ed;--shadow:0 2px 10px #00000014;--shadow-hover:0 5px 20px #0000001f;--header-bg:#f9f9f9f2;--gradient-start:#f0c6e2;--gradient-end:#b5a8e6;--error-color:#dc3545;--error-bg:#dc35451a;--success-color:#28a745;--success-bg:#28a7451a;--warning-color:#ff9800;--warning-bg:#ff98001a}body{color:var(--text-color);background-color:var(--background-color);font-family:Inter,Arial,sans-serif;line-height:1.6;transition:all .3s;overflow-x:hidden}.container{max-width:1200px;margin:0 auto;padding:0 20px}.header{height:var(--header-height);background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:1000;box-shadow:var(--shadow);transition:all .3s;position:fixed;top:0;left:0;right:0;overflow:visible}.navbar{align-items:center;height:100%;display:flex}.nav-container{justify-content:space-between;align-items:center;width:100%;max-width:1200px;margin:0 auto;padding:0 20px;display:flex}.nav-logo h2{background:linear-gradient(45deg,var(--primary-text),var(--secondary-color));-webkit-text-fill-color:transparent;letter-spacing:1px;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700}.nav-menu{align-items:center;gap:8px;list-style:none;display:flex}.nav-controls{align-items:center;gap:16px;display:flex}.theme-toggle{border:2px solid var(--primary-color);color:var(--primary-text);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:8px;padding:8px 16px;font-size:.85rem;font-weight:500;transition:all .3s;display:flex}.theme-toggle:hover{background:var(--primary-color);color:var(--white);transform:translateY(-2px)}.theme-icon{font-size:1rem}.nav-link{color:var(--text-color);white-space:nowrap;border-radius:8px;padding:8px 12px;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .3s}.nav-link:hover{color:var(--white);background:linear-gradient(45deg,var(--primary-color),var(--accent-color));transform:translateY(-2px)}.nav-link.active{background:linear-gradient(45deg,var(--primary-color),var(--accent-color));color:var(--white);font-weight:600}.mobile-nav-toggle{color:var(--text-color);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:8px;font-size:1.5rem;transition:background-color .3s;display:none}.mobile-nav-toggle:hover{background-color:var(--border-color)}main{padding-top:var(--header-height)}.mobile-hero-cta{z-index:1001;display:none;position:fixed;bottom:20px;right:20px}.mobile-hero-cta .btn{padding:12px 20px;font-size:.9rem;box-shadow:0 4px 16px #0003}.hero{height:calc(100vh - var(--header-height));background:linear-gradient(135deg,var(--gradient-start)0%,var(--gradient-end)100%);color:var(--white);text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-with-image{background:0 0}.hero-image-background{z-index:0;background-position:50%;background-repeat:no-repeat;background-size:cover;position:absolute;inset:0}.hero-overlay{z-index:1;background:#0003;position:absolute;inset:0}.hero-background{background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 100 100\"><circle cx=\"20\" cy=\"20\" r=\"2\" fill=\"rgba(255,255,255,0.1)\"/><circle cx=\"80\" cy=\"40\" r=\"1.5\" fill=\"rgba(255,255,255,0.1)\"/><circle cx=\"40\" cy=\"70\" r=\"1\" fill=\"rgba(255,255,255,0.1)\"/><circle cx=\"70\" cy=\"80\" r=\"2.5\" fill=\"rgba(255,255,255,0.1)\"/></svg>");animation:20s ease-in-out infinite float;position:absolute;inset:0}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.hero-content{z-index:10;background:#0003;border-radius:16px;max-width:800px;padding:32px 20px;position:relative}@media (prefers-contrast:more){.hero-content,.activities-hero .hero-content{background:#0009}}@media (prefers-contrast:no-preference){.hero-content,.activities-hero .hero-content{background:0 0}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:0s!important;animation-duration:0s!important;transform:none!important}.btn-primary:hover,.btn-secondary:hover,.theme-toggle:hover,.nav-link:hover,.feature-card:hover,.food-item:hover{transform:none!important}.hero-background{animation:none!important}}.activities-hero{height:40vh;min-height:250px}.activities-hero .hero-image-background{background-position:50% 60%}.activities-hero .hero-overlay{background:#0000004d}.activities-hero .hero-title{font-size:clamp(1.75rem,4vw,2.5rem)}.activities-hero .hero-subtitle{font-size:clamp(.9rem,2vw,1.1rem)}.hero-title{text-shadow:0 2px 4px #0000004d;padding-bottom:16px;font-size:clamp(2rem,5vw,3.5rem);font-weight:700}.hero-subtitle{opacity:.9;padding-bottom:32px;font-size:clamp(1rem,2.5vw,1.25rem)}.hero-buttons{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.page-header{background:var(--background-color);color:var(--text-color);text-align:center;border-bottom:1px solid var(--border-color);padding:32px 0 24px}.page-header h1{color:var(--secondary-color);padding-bottom:1rem;font-size:clamp(2rem,4vw,3rem);font-weight:700}.page-header p{opacity:.8;color:var(--text-light);font-size:clamp(1rem,2vw,1.2rem)}.page-sub-header{padding:24px 0 20px}.page-sub-header h2{padding-bottom:8px;font-size:clamp(2rem,4vw,3rem);font-weight:500}.btn{cursor:pointer;text-align:center;border:none;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s;display:inline-block;position:relative;overflow:hidden}.btn-primary{background:var(--primary-color);color:var(--secondary-color);box-shadow:var(--shadow);border:1px solid var(--primary-dark)}.dark .btn-primary{color:#1a1824;background:#d4a5c9;border:none}.dark .btn-primary:hover{background:#e0b7d4}.dark .btn-outline{border-color:var(--border-color);color:var(--text-color)}.dark .btn-outline:hover{background:var(--border-color);color:var(--text-color)}.btn-primary:hover{background:var(--primary-dark);box-shadow:var(--shadow-hover);transform:translateY(-2px)}.btn-secondary{color:var(--white);border:2px solid var(--white);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:0 0}.btn-secondary:hover{background:var(--white);color:var(--primary-text);box-shadow:var(--shadow);transform:translateY(-3px)}.btn-outline{color:var(--secondary-color);border:2px solid var(--border-color);background:0 0}.btn-outline:hover{background:var(--secondary-color);color:var(--white);border-color:var(--secondary-color);box-shadow:var(--shadow);transform:translateY(-2px)}.btn-danger{background:var(--error-color);color:var(--white)}.btn-danger:hover{box-shadow:var(--shadow);background:#c82333;transform:translateY(-2px)}section{padding:80px 0}.section-title{text-align:center;color:var(--secondary-color);padding-bottom:48px;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.subsection-title{text-align:center;color:var(--secondary-color);padding-bottom:32px;font-size:clamp(1.5rem,3vw,2rem);font-weight:600}.features{background:var(--background-color);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color)}.features-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:32px;display:grid}.feature-card,.food-card,.hours-card,.pricing-card,.events-card{background:var(--card-bg);box-shadow:var(--shadow);border:1px solid var(--border-color);border-radius:16px;padding:32px;transition:transform .3s,box-shadow .3s}.feature-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-3px)}.food-card h4,.hours-card h4,.events-card h4{color:var(--secondary-color);text-align:center;border-bottom:2px solid var(--primary-color);margin-bottom:16px;padding-bottom:16px;font-size:1.3rem;font-weight:600}.pricing-card h4{color:var(--secondary-color);text-align:center;font-size:1.3rem;font-weight:600}.feature-card{text-align:center}.feature-icon{padding-bottom:16px;font-size:3rem}.feature-card h3{color:var(--secondary-color);padding-bottom:16px;font-size:1.5rem;font-weight:600}.feature-card p{color:var(--text-light);padding-bottom:16px;line-height:1.6}.events{background:var(--background-color)}.events-content{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;display:grid}.events-text h2{color:var(--secondary-color);padding-bottom:1.5rem;font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700}.events-text p{color:var(--text-light);padding-bottom:2rem;font-size:1.1rem;line-height:1.7}.events-list{padding-bottom:2rem;list-style:none}.events-list li{color:var(--text-color);padding:.5rem 0 .5rem 1.5rem;position:relative}.events-list li:before{content:"✓";color:var(--primary-text);font-weight:700;position:absolute;left:0}.events-image{box-shadow:var(--shadow);border-radius:8px;max-height:400px;transition:box-shadow .3s;overflow:hidden}.events-image:hover{box-shadow:var(--shadow-hover)}.events-image img{object-fit:cover;width:100%;height:100%;max-height:400px;display:block}.food-section{background:var(--background-color);padding:80px 0}.food-grid,.hours-grid,.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;display:grid}.food-item,.hours-item,.price-item,.events-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 0;display:flex}.food-item:last-child,.hours-item:last-child,.price-item:last-child{border-bottom:none}.food-name{color:var(--text-color);font-weight:500}.food-price{color:var(--primary-text);font-size:1.2rem;font-weight:600}.hours-prices-section{background:var(--background-color)}.hours-section,.pricing-section-content{padding-bottom:64px}.events-card{width:45%}.special-card{background:linear-gradient(135deg,var(--primary-color),var(--accent-color));color:var(--white);border:2px solid var(--primary-color)}.special-card h4{color:var(--white);border-bottom:2px solid #ffffff4d}.special-dates{text-align:center;background:#fff3;border-radius:16px;margin-bottom:16px;padding:8px 16px;font-weight:600}.special-hours{text-align:center;background:#ffffff26;border-radius:8px;margin-top:16px;padding:12px;font-size:.9rem}.special-info{flex-direction:column;flex-grow:1;line-height:1.6;display:flex}.special-details{flex-grow:1}.special-disclaimer{border-top:1px solid var(--border-color);text-align:center;padding-top:16px}.special-info p{margin-bottom:8px;font-size:.9rem}.special-info strong{color:var(--secondary-color)}.special-info em{color:var(--text-light);font-size:.85rem}.seasonal-container{flex-direction:column;align-items:center;display:flex}.seasonal-special-card{background:var(--card-bg);border:1px solid var(--border-color);flex-direction:column;max-width:400px;display:flex;position:relative}.special-card-title{text-align:center;color:var(--secondary-color);margin:0 0 8px;font-size:1.4rem}.specials-grid{grid-template-columns:repeat(auto-fit,minmax(320px,400px));justify-content:center;gap:32px;width:100%;display:grid}@media (max-width:768px){.specials-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}}.seasonal-pricing{border-bottom:1px solid var(--border-color);justify-content:space-around;margin-bottom:16px;padding:24px 0;display:flex}.seasonal-price-item{text-align:center;flex:1}.seasonal-price-desc{color:var(--text-light);margin-bottom:8px;font-size:.9rem;font-weight:500;display:block}.seasonal-price{color:var(--primary-text);text-align:center;font-size:2rem;font-weight:700;line-height:1;display:block}.events-item-subtitle{justify-content:center;font-weight:600}.price-item-col{flex-direction:column;display:flex}.events-item-bottom{border-bottom:none;padding:8px 0}.hours-item.today,.price-item.special{background:linear-gradient(45deg,var(--primary-color),var(--accent-color));color:var(--white);border:none;border-radius:8px;margin:8px -16px;padding:16px}.day,.price-desc{color:var(--text-color);font-weight:500}.hours-item.today .day,.price-item.special .price-desc{color:var(--white);font-weight:700}.time,.price{color:var(--primary-text);white-space:pre-line;font-weight:600}.hours-item.today .time,.price-item.special .price{color:var(--white);font-weight:700}.price{font-size:1.2rem}.contact{background:var(--background-color)}.map-container{width:100%;max-width:1000px;box-shadow:var(--shadow);border-radius:16px;margin:0 auto;overflow:hidden}.map-container iframe{width:100%;display:block}.contact-grid{grid-template-columns:1fr 1fr;gap:4rem;display:grid}.contact-info-only{grid-template-columns:1fr 1fr;gap:3rem;max-width:800px;margin:0 auto}.contact-info h3,.contact-form h3{color:var(--secondary-color);padding-bottom:2rem;font-size:1.5rem;font-weight:600}.contact-item{color:var(--text-light);padding-bottom:1.5rem;line-height:1.6}.contact-item strong{color:var(--text-color)}.contact-item a{color:var(--primary-text);text-decoration:none}.contact-item a:hover{text-decoration:underline}.contact-form form{flex-direction:column;gap:1rem;display:flex}.contact-form input,.contact-form textarea,.contact-form select{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);border-radius:8px;padding:16px;font-family:inherit;font-size:1rem;transition:border-color .3s}.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{border-color:var(--primary-color);outline:none}.contact-form textarea{resize:vertical;min-height:120px}.required{color:var(--error-color);margin-left:2px}.footer{background:var(--footer-bg);color:var(--white);padding:48px 0 16px}.footer-content{flex-wrap:nowrap;justify-content:space-between;align-items:flex-start;gap:32px;padding-bottom:32px;display:flex}.footer-logo h3{color:var(--primary-text);padding-bottom:8px;font-size:1.5rem}.footer-logo p{opacity:.8}.footer-links h4{padding-bottom:16px;font-size:1.1rem}.footer-links ul{list-style:none}.footer-links li{padding-bottom:8px}.footer-links a{color:#fffc;text-decoration:none;transition:color .3s}.footer-links a:hover{color:var(--primary-text)}.footer-bottom{text-align:right;color:#fff9;border-top:1px solid #ffffff1a;padding-top:32px}@media (max-width:1024px){.nav-link{padding:8px 12px;font-size:.8rem}.nav-menu{gap:4px}.theme-toggle{padding:8px 12px;font-size:.8rem}}@media (max-width:768px){:root{--header-height:60px}.container{padding:0 16px}.winter-specials-grid{grid-template-columns:1fr;max-width:400px;margin:0 auto}.nav-container{padding:0 16px}.navbar{padding:8px 0}.mobile-nav-toggle{display:block}.theme-toggle span:last-child{display:none}.nav-menu{background:var(--header-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid var(--border-color);z-index:999;flex-direction:column;gap:0;max-height:0;padding:0;transition:max-height .3s,padding .3s;position:absolute;top:calc(100% - 1px);left:0;right:0;overflow:hidden;box-shadow:0 4px 20px #00000026}.nav-menu.nav-menu-open{max-height:min-content;padding:16px 0}.nav-menu li{text-align:center;width:100%}.nav-link{border-radius:0;width:100%;margin:0;padding:16px 20px;font-size:1rem;display:block}.hero{height:calc(100vh - var(--header-height));min-height:400px;padding:32px 0}.hero-content{padding:0 16px}.hero-title{padding-bottom:12px;font-size:clamp(1.75rem,8vw,2.5rem)}.hero-subtitle{padding-bottom:24px;font-size:clamp(.9rem,4vw,1.1rem)}.hero-buttons{gap:12px}.hero-buttons .btn{padding:12px 24px;font-size:.9rem}.mobile-hero-cta{display:none}.page-header{padding:24px 0 20px}.page-header h1{padding-bottom:8px;font-size:clamp(1.75rem,6vw,2.5rem)}.page-header p{font-size:clamp(.9rem,3vw,1.1rem)}section{padding:48px 0}.events-content,.contact-grid{grid-template-columns:1fr;gap:32px}.footer-content{justify-content:space-between;gap:24px}.features-grid,.food-grid{grid-template-columns:1fr}.hours-item,.price-item,.events-item,.food-item{flex-direction:column;align-items:flex-start;gap:8px}.hours-item.today{margin:8px 0}.events-text h2{white-space:normal}}@media (max-width:480px){.container,.nav-container{padding:0 12px}.feature-card,.hours-card,.pricing-card,.events-card,.food-card{padding:24px}.hero{min-height:350px;padding:24px 0}.hero-content{padding:0 12px}.activities-hero{max-height:350px}.hero-title{padding-bottom:8px;font-size:clamp(1.5rem,9vw,2.2rem)}.hero-subtitle{padding-bottom:20px;font-size:clamp(.85rem,4.5vw,1rem)}.hero-buttons{flex-direction:column;align-items:center;gap:8px}.hero-buttons .btn{min-width:160px;padding:12px 28px;font-size:.9rem}.page-header{padding:20px 0 16px}.nav-menu{padding:0}.nav-link{padding:16px 20px}}@media (max-width:400px){.footer-content{text-align:center;flex-direction:column;align-items:center;gap:24px}}.flex-box{gap:8px;display:flex}.flex-column{flex-direction:column;display:flex}.leagues-info{background:var(--card-bg);padding:60px 0}.info-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;padding-top:2rem;display:grid}.info-card{text-align:center;background:var(--background-color);box-shadow:var(--shadow);border-radius:16px;padding:2rem 1.5rem;transition:transform .3s,box-shadow .3s}.info-card:hover{box-shadow:var(--shadow-hover);transform:translateY(-5px)}.info-icon{padding-bottom:1rem;font-size:3rem}.info-card h3{color:var(--primary-text);padding-bottom:1rem;font-size:1.5rem}.section-header{text-align:center;padding-bottom:3rem}.section-header h2{color:var(--secondary-color);padding-bottom:1rem;font-size:2.5rem}.section-header p{color:var(--text-light);max-width:600px;margin:0 auto;font-size:1.1rem}.league-category,.league-category:first-child{margin-top:0}.category-title{color:var(--secondary-color);padding-bottom:.5rem;font-size:1.8rem;font-weight:600}.sticky-header{top:calc(var(--header-height) + 70px);background:var(--background-color);border-bottom:2px solid var(--primary-color);z-index:98;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);margin-bottom:0;padding:.5rem 0 2rem;font-size:1.4rem;transition:all .3s;position:sticky}.leagues-section{padding:60px 0 80px}.filter-section{background:var(--card-bg);border-top:1px solid var(--border-color);border-bottom:1px solid var(--border-color);top:var(--header-height);z-index:99;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:16px 0;transition:all .3s;position:sticky}.day-filter-tabs{flex-wrap:wrap;justify-content:center;gap:.5rem;transition:all .3s;display:flex}.desktop-only{display:flex}.mobile-only{display:none}.day-filter-dropdown{width:100%;max-width:300px;margin:0 auto;position:relative}.dropdown-toggle{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));border:2px solid var(--primary-color);width:100%;color:var(--contrast-text-color);cursor:pointer;letter-spacing:.5px;text-transform:uppercase;border-radius:16px;justify-content:space-between;align-items:center;padding:12px 16px;font-size:1rem;font-weight:600;transition:all .3s;display:flex}.dropdown-toggle:hover{box-shadow:var(--shadow-hover);transform:translateY(-2px)}.dropdown-arrow{font-size:.8rem;transition:transform .3s}.dropdown-menu{background:var(--card-bg);border:2px solid var(--border-color);box-shadow:var(--shadow-hover);z-index:100;border-radius:16px;max-height:400px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:hidden auto}.dropdown-item{background:var(--background-color);border:none;border-bottom:1px solid var(--border-color);width:100%;color:var(--text-color);cursor:pointer;text-align:left;text-transform:uppercase;letter-spacing:.5px;padding:16px;font-size:.95rem;font-weight:600;transition:all .2s}.dropdown-item:last-child{border-bottom:none}.dropdown-item:hover{background:#f0c6e21a}.dropdown-item.active{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--contrast-text-color);font-weight:700}.filter-tab{border:2px solid var(--border-color);background:var(--background-color);color:var(--text-color);cursor:pointer;text-transform:uppercase;letter-spacing:.5px;border-radius:16px;min-width:60px;padding:8px 16px;font-size:.85rem;font-weight:600;transition:all .3s}.filter-tab:hover{border-color:var(--primary-color);background:#f0c6e21a;transform:translateY(-2px)}.filter-tab.active{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));border-color:var(--primary-color);color:var(--black);box-shadow:var(--shadow-hover)}.no-leagues-message{text-align:center;padding:80px 20px}.no-leagues-content{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;max-width:500px;margin:0 auto;padding:3rem 2rem}.no-leagues-icon{opacity:.7;padding-bottom:1.5rem;font-size:4rem}.no-leagues-content h3{color:var(--secondary-color);padding-bottom:1rem;font-size:1.8rem;font-weight:600}.no-leagues-content p{color:var(--text-light);padding-bottom:2rem;font-size:1.1rem;line-height:1.6}.no-leagues-content .btn{padding-top:1rem}.leagues-grid{grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:2rem;padding:2rem 0;display:grid}.league-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;transition:transform .3s,box-shadow .3s;overflow:hidden}.league-card:hover{transform:translateY(-5px)}.league-header{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--black);padding:1.5rem}.league-name{color:var(--black);padding-bottom:.5rem;font-size:1.5rem;font-weight:700}.league-badges{flex-wrap:wrap;gap:.5rem;display:flex}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:16px;padding:.3rem .8rem;font-size:.8rem;font-weight:600}.badge.usbc{color:var(--black);background:#ffffffe6;border:1px solid #ffffff4d}.badge.handicap{color:var(--black);background:#8bc34ae6;border:1px solid #8bc34a4d}.badge.scratch{color:var(--black);background:#ff9800e6;border:1px solid #ff98004d}.league-body{padding:1.5rem}.league-description{color:var(--text-light);padding-bottom:1.5rem;font-style:italic}.league-details{flex-direction:column;gap:2rem;display:flex}.detail-section h4{color:var(--secondary-color);padding-bottom:.5rem;font-size:1.1rem;font-weight:600}.detail-grid{gap:.25rem;display:grid}.detail-item{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:.3rem 0;display:flex}.detail-item:last-child{border-bottom:none}.detail-label{color:var(--text-light);font-weight:500}.detail-value{color:var(--text-color);font-weight:600}.spots-info{align-items:center;gap:.8rem;padding-top:.5rem;display:flex}.spots-indicator{border-radius:8px;flex-direction:column;align-items:center;min-width:80px;padding:1rem;display:flex}.spots-indicator.plenty{background:#4caf501a;border:2px solid #4caf504d}.spots-indicator.moderate{background:#ff98001a;border:2px solid #ff98004d}.spots-indicator.limited{background:#f443361a;border:2px solid #f443364d}.spots-indicator.full{background:#9e9e9e1a;border:2px solid #9e9e9e4d}.spots-number{color:var(--secondary-color);font-size:1.8rem;font-weight:700}.spots-text{color:var(--text-light);text-transform:uppercase;letter-spacing:.5px;font-size:.8rem}.spots-total{color:var(--text-light);padding-bottom:.3rem;font-size:.9rem}.spots-details{flex-direction:column;align-items:flex-start;display:flex}.last-updated{color:var(--text-light);opacity:.8;font-size:.8rem;font-style:italic}.additional-details{background:linear-gradient(135deg,#f0c6e21a,#b5a8e61a);border:2px solid #f0c6e24d;border-radius:16px;padding:1rem}.additional-details h4{color:var(--primary-text);padding-bottom:1rem;font-size:1.2rem}.features-list{flex-direction:column;gap:.6rem;display:flex}.feature-item{color:var(--text-color);font-size:.95rem;line-height:1.5}.league-footer{background:var(--background-color);border-top:1px solid var(--border-color);gap:1rem;padding:1.5rem;display:flex}.leagues-cta{background:var(--card-bg);text-align:center;padding:80px 0}.cta-content h2{color:var(--secondary-color);padding-bottom:1rem;font-size:2.2rem}.cta-content p{color:var(--text-light);max-width:600px;margin:0 auto 2rem;font-size:1.1rem}.cta-buttons{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}@media (max-width:768px){.desktop-only{display:none!important}.mobile-only{display:block}.leagues-grid{grid-template-columns:1fr}.league-footer{flex-direction:column}.info-cards{grid-template-columns:1fr;gap:1.5rem}.cta-buttons{flex-direction:column;align-items:center}.detail-item{flex-direction:column;align-items:flex-start;gap:.3rem}.spots-info{flex-wrap:wrap;justify-content:center}.sticky-header{padding:.8rem 0;font-size:1.5rem}.filter-section{padding:20px 0}.day-filter-tabs{gap:.5rem}.filter-tab{padding:12px 20px;font-size:.85rem}.no-leagues-message{padding:60px 16px}.no-leagues-content{padding:2rem 1.5rem}.no-leagues-content h3{font-size:1.5rem}.no-leagues-icon{font-size:3rem}}.floating-contact{z-index:1000;position:fixed;bottom:20px;left:20px}.floating-contact-content{position:relative}.contact-header{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--black);text-align:center;letter-spacing:.5px;border-radius:16px 16px 0 0;padding:8px 12px;font-size:.85rem;font-weight:600}.contact-buttons{background:var(--card-bg);box-shadow:var(--shadow-hover);border:1px solid var(--border-color);border-top:none;border-radius:0 0 16px 16px;flex-direction:column;gap:8px;padding:12px;display:flex}.contact-btn{border:1px solid var(--border-color);border-radius:8px;justify-content:center;align-items:center;gap:8px;min-width:100px;padding:12px 16px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .3s;display:flex}.contact-btn:hover{box-shadow:var(--shadow);transform:translate(4px)}.email-btn{background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--contrast-text-color);border-color:var(--primary-color)}.phone-btn{background:var(--background-color);color:var(--text-color)}.phone-btn:hover{background:var(--primary-color);color:var(--contrast-text-color)}.contact-icon{font-size:1rem}.line-item{justify-content:space-between;align-items:center;padding:.3rem 0;display:flex}@media (max-width:768px){.floating-contact{bottom:20px;left:16px}.contact-header{padding:8px 12px;font-size:.8rem}.contact-buttons{padding:12px}.contact-btn{min-width:80px;padding:12px;font-size:.85rem}.cta-buttons{flex-direction:column;align-items:center}.leagues-section .container,.leagues-info .container,.leagues-cta .container{padding-left:120px;padding-right:120px}.leagues-grid{grid-template-columns:1fr}.league-footer{flex-direction:column}.info-cards{grid-template-columns:1fr;gap:1.5rem}.detail-item{flex-direction:column;align-items:flex-start;gap:.3rem}.spots-info{flex-wrap:wrap;justify-content:center}}@media (max-width:480px){.leagues-section .container,.leagues-info .container,.leagues-cta .container{padding-left:100px;padding-right:100px}}@media (max-width:360px){.leagues-section .container,.leagues-info .container,.leagues-cta .container{padding-left:90px;padding-right:90px}}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-start{align-items:flex-start}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-24{gap:24px}.gap-32{gap:32px}.p-8{padding:8px}.p-12{padding:12px}.p-16{padding:16px}.p-24{padding:24px}.p-32{padding:32px}.py-16{padding-top:16px;padding-bottom:16px}.py-32{padding-top:32px;padding-bottom:32px}.px-16{padding-left:16px;padding-right:16px}.px-20{padding-left:20px;padding-right:20px}.text-center{text-align:center}.text-left{text-align:left}.text-light{color:var(--text-light)}.w-full{width:100%}.link-reset{color:inherit;text-decoration:none}.ml-16{margin-left:16px}.mt-16{margin-top:16px}.mt-20{margin-top:20px}.mt-24{margin-top:24px}.mt-32{margin-top:32px}.mt-48{margin-top:48px}.flex-1{flex:1}.overflow-x-auto{overflow-x:auto}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{background:var(--primary-color);color:var(--contrast-text-color);z-index:100;padding:8px 16px;transition:top .2s;position:absolute;top:-40px;left:0}.skip-link:focus{top:0}.admin-loading{text-align:center;color:var(--text-light);padding:4rem 2rem}.admin-back-link{color:var(--text-light);margin-bottom:8px;font-size:.9rem;text-decoration:none;transition:color .2s;display:inline-block}.admin-back-link:hover{color:var(--primary-text)}.admin-section{padding:2rem 0 4rem}.admin-toolbar{margin-bottom:2rem}.admin-alert{border-radius:8px;margin-bottom:1.5rem;padding:12px 16px;font-size:.95rem}.admin-alert-error{background:var(--error-bg);color:var(--error-color);border:1px solid var(--error-color)}.admin-alert-success{background:var(--success-bg);color:var(--success-color);border:1px solid var(--success-color)}.admin-list{flex-direction:column;gap:1rem;display:flex}.admin-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;padding:1.5rem;transition:border-color .2s}.admin-card:hover{border-color:var(--primary-color)}.admin-card-content{margin-bottom:1rem}.admin-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.5rem;display:flex}.admin-card-title{color:var(--text-color);margin:0;font-size:1.25rem;font-weight:600}.admin-card-subtitle{color:var(--text-light);margin:0 0 .5rem;font-size:.95rem}.admin-card-meta{color:var(--text-light);margin:0;font-size:.875rem}.admin-card-actions{border-top:1px solid var(--border-color);gap:.5rem;padding-top:1rem;display:flex}.status-toggle{border:1px solid var(--border-color);background:var(--card-bg);cursor:pointer;color:var(--text-light);border-radius:16px;align-items:center;padding:8px 12px;font-size:.8rem;font-weight:500;transition:all .2s;display:inline-flex}.status-toggle:hover:not(:disabled){border-color:var(--primary-color)}.status-toggle.active{background:var(--success-bg);border-color:var(--success-color);color:var(--success-color)}.status-toggle:disabled{opacity:.6;cursor:not-allowed}.status-toggle-label{text-transform:uppercase;letter-spacing:.5px}.admin-btn{border:1px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:8px;padding:8px 16px;font-size:.875rem;transition:all .2s}.admin-btn:hover:not(:disabled){border-color:var(--primary-color);color:var(--primary-text)}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-secondary{background:0 0}.admin-btn-danger{border-color:var(--error-color);color:var(--error-color)}.admin-btn-danger:hover:not(:disabled){border-color:var(--error-color);background:var(--error-bg)}.admin-btn-icon{border:1px solid var(--border-color);width:36px;height:36px;color:var(--text-light);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:1.25rem;transition:all .2s;display:flex}.admin-btn-icon:hover{border-color:var(--error-color);color:var(--error-color)}.admin-empty{text-align:center;color:var(--text-light);padding:3rem 1rem}.admin-empty p{margin:0}.admin-empty-hint{opacity:.7;font-size:.9rem;margin-top:.5rem!important}.admin-form-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:16px;max-width:600px;padding:2rem}.admin-form-title{color:var(--text-color);margin:0 0 2rem;font-size:1.5rem;font-weight:600}.admin-form-group{margin-bottom:1.5rem}.admin-label{color:var(--text-color);margin-bottom:.5rem;font-size:.875rem;font-weight:500;display:block}.admin-input{border:1px solid var(--border-color);background:var(--background-color);width:100%;color:var(--text-color);border-radius:8px;padding:12px 16px;font-size:1rem;transition:border-color .2s}.admin-input:focus{border-color:var(--primary-color);outline:none}.admin-input::placeholder{color:var(--text-light);opacity:.6}.admin-input-short{flex-shrink:0;width:100px}.admin-textarea{resize:vertical;min-height:100px;font-family:inherit}.admin-hint{color:var(--text-light);margin-top:.5rem;font-size:.8rem;display:block}.admin-price-list{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.admin-price-row{align-items:center;gap:.75rem;display:flex}.admin-price-row .admin-input:first-child{flex:1}.admin-toggle-label{cursor:pointer;align-items:center;gap:.75rem;font-size:.95rem;display:flex}.admin-toggle-label input[type=checkbox]{cursor:pointer;width:18px;height:18px}.admin-form-actions{border-top:1px solid var(--border-color);gap:1rem;margin-top:2rem;padding-top:1.5rem;display:flex}.admin-dashboard-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem;display:grid}.admin-dashboard-card{cursor:pointer;height:100%}.settings-grid{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));gap:32px;display:grid}.settings-card{background:var(--card-bg);box-shadow:var(--shadow);border-radius:16px;flex-direction:column;padding:32px;display:flex}.settings-card h3{color:var(--secondary-color);border-bottom:1px solid var(--border-color);margin-bottom:24px;padding-bottom:16px;font-size:1.25rem;font-weight:600}.settings-card-footer{border-top:1px solid var(--border-color);justify-content:flex-end;margin-top:24px;padding-top:24px;display:flex}.hours-row{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:12px 0;display:flex}.hours-row:last-of-type{border-bottom:none}.hours-day{width:100px;color:var(--text-color);font-weight:500}.hours-input{border:1px solid var(--border-color);background:var(--background-color);color:var(--text-color);border-radius:8px;padding:10px 12px;font-size:.95rem;transition:border-color .2s}.hours-input:focus{border-color:var(--primary-color);outline:none}.hours-input-sm{width:140px;padding:8px;font-size:.85rem}.hours-input:disabled,.input-disabled{opacity:.4;cursor:not-allowed}.checkbox-label{color:var(--text-light);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:.9rem;display:flex}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-text);cursor:pointer}.holiday-table{border-collapse:collapse;width:100%}.holiday-table th{text-align:center;text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);padding:16px 12px;font-size:.85rem;font-weight:600}.holiday-table th:first-child{text-align:left}.holiday-table thead tr{border-bottom:2px solid var(--border-color)}.holiday-table tbody tr{border-bottom:1px solid var(--border-color);transition:background-color .2s}.holiday-table tbody tr:hover{background:#00000005}.dark .holiday-table tbody tr:hover{background:#ffffff05}.holiday-table tbody tr:last-child{border-bottom:none}.holiday-table td{vertical-align:middle;padding:16px 12px}.holiday-name{color:var(--text-color);font-weight:500}.holiday-cell{text-align:center}.holiday-controls{flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;display:flex}@media (max-width:768px){.admin-card-header{flex-direction:column;gap:.75rem}.admin-card-actions{flex-wrap:wrap}.admin-form-card{padding:1.5rem}.admin-price-row{flex-wrap:wrap}.admin-price-row .admin-input:first-child{width:100%}.admin-input-short{width:80px}.admin-form-actions{flex-direction:column}.admin-form-actions .btn{width:100%}}.cancel-options{text-align:center;width:100%}.cancel-options-title{color:var(--text-color);margin-bottom:16px;font-size:1rem;font-weight:600}.cancel-options-buttons{flex-direction:column;align-items:center;gap:12px;display:flex}.cancel-options-buttons .btn{width:100%;max-width:320px}.btn-text{color:var(--text-light);cursor:pointer;background:0 0;border:none;padding:8px 16px;font-size:.875rem;transition:color .2s}.btn-text:hover{color:var(--text-color)}.btn-text:disabled{opacity:.5;cursor:not-allowed}.btn-danger-sm{color:#fff;cursor:pointer;background:#dc3545;border:none;border-radius:8px;padding:8px 16px;font-size:.875rem;font-weight:500;transition:background .2s}.btn-danger-sm:hover:not(:disabled){background:#c82333}.btn-danger-sm:disabled{opacity:.5;cursor:not-allowed}.btn-outline-danger{color:#dc3545;cursor:pointer;background:0 0;border:1px solid #dc3545;border-radius:8px;padding:12px 24px;font-size:1rem;font-weight:500;transition:all .2s}.btn-outline-danger:hover:not(:disabled){color:#fff;background:#dc3545}.btn-outline-danger:disabled{opacity:.5;cursor:not-allowed}.admin-header{background:var(--card-bg);border-bottom:1px solid var(--border-color);padding:8px 0}.admin-header-sticky{top:var(--header-height);z-index:10;position:sticky}.admin-header-content{justify-content:space-between;align-items:center;gap:16px;display:flex}.admin-header-title{color:var(--secondary-color);margin:0;font-size:1.25rem;font-weight:600}.admin-header-nav{align-items:center;gap:4px;display:flex}.admin-header-link{color:var(--text-light);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:6px 12px;font-size:.8rem;font-weight:500;text-decoration:none;transition:color .2s}.admin-header-link:hover,.admin-header-link.active{color:var(--text-color)}.admin-header-link.active{background:var(--background-color)}.admin-header-signout{color:var(--text-light);opacity:.7}.dashboard-content>.container{flex-direction:column;gap:28px;display:flex}.dashboard-content{padding:16px 0 24px}.dashboard-section{flex-direction:column;gap:12px;padding:0;display:flex}.dashboard-section-title{color:var(--secondary-color);font-size:1.1rem;font-weight:600}.dashboard-section .section-header{justify-content:space-between;align-items:center;display:flex}.dashboard-section .section-header h2{padding-bottom:0;font-size:1.1rem}.section-link{color:var(--primary-text);font-size:.875rem;font-weight:500;text-decoration:none}.section-link:hover{text-decoration:underline}.metrics-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.metric-card{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;border-radius:12px;padding:12px}.metric-value{color:var(--secondary-color);font-size:2rem;font-weight:600;line-height:1.2}.metric-label{color:var(--text-light);margin-top:8px;font-size:.875rem}.metric-subtext{color:var(--text-light);opacity:.8;margin-top:8px;font-size:.8rem}.lane-pairs-grid{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.lane-pair{gap:4px;display:flex}.lane-card{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;border-radius:8px;flex:1;padding:8px 10px}.lane-card-available{border-top:2px solid var(--success-color)}.lane-card-in_use{border-top:2px solid var(--primary-text);background:#c4549a14}.lane-card-buffer{border-top:2px solid var(--warning-color);opacity:.7}.lane-card-booked_later{border-top:2px solid var(--accent-color)}.lane-number{color:var(--secondary-color);font-size:1.25rem;font-weight:700;line-height:1}.lane-info{color:var(--text-light);white-space:nowrap;text-overflow:ellipsis;margin-top:4px;font-size:.65rem;overflow:hidden}.upcoming-list{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}.upcoming-item{border-bottom:1px solid var(--border-color);align-items:center;gap:20px;padding:16px 20px;transition:background .2s;display:flex}.upcoming-item:last-child{border-bottom:none}.upcoming-item:hover{background:var(--background-color)}.upcoming-time{color:var(--primary-text);min-width:80px;font-size:1rem;font-weight:600}.upcoming-details{flex:1;min-width:0}.upcoming-name{color:var(--text-color);white-space:nowrap;text-overflow:ellipsis;font-weight:500;overflow:hidden}.upcoming-meta{color:var(--text-light);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;font-size:.8rem;display:flex}.upcoming-duration{color:var(--text-light);white-space:nowrap;font-size:.8rem}.booking-type-badge{background:var(--accent-color);color:var(--contrast-text-color);text-transform:capitalize;border-radius:4px;padding:2px 6px;font-size:.7rem}.large-parties-list{flex-direction:column;gap:12px;display:flex}.large-party-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;align-items:center;gap:16px;padding:16px 20px;display:flex}.large-party-icon{background:var(--warning-bg);border-radius:10px;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;display:flex}.large-party-details{flex:1;min-width:0}.large-party-name{color:var(--text-color);font-weight:500}.large-party-meta{color:var(--text-light);margin-top:2px;font-size:.8rem}.large-party-stats{gap:8px;display:flex}.stat-badge{background:var(--background-color);border:1px solid var(--border-color);color:var(--text-color);border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:500}@media (max-width:1024px){.metrics-grid{grid-template-columns:repeat(2,1fr)}.lane-pairs-grid{grid-template-columns:repeat(4,1fr)}}@media (max-width:768px){.admin-header-content{flex-wrap:wrap;gap:8px}.admin-header-title{font-size:1rem}.admin-header-nav{gap:2px}.admin-header-link{padding:4px 8px;font-size:.75rem}.metrics-grid,.lane-pairs-grid{grid-template-columns:repeat(2,1fr)}.upcoming-item{flex-direction:column;align-items:flex-start;gap:8px}.upcoming-time{min-width:auto}.upcoming-duration{display:none}.large-party-item{flex-wrap:wrap}.large-party-stats{width:100%;margin-top:8px}}@media (max-width:480px){.metrics-grid{grid-template-columns:1fr 1fr;gap:8px}.metric-card{padding:10px}.metric-value{font-size:1.5rem}.lane-pairs-grid{grid-template-columns:1fr 1fr;gap:8px}.lane-card{min-height:70px;padding:6px}}.admin-content{min-height:calc(100vh - 180px);padding:48px 0 80px}.admin-content .admin-toolbar{justify-content:space-between;align-items:center;gap:24px;margin-bottom:32px;display:flex}.admin-content .admin-description{color:var(--text-light);margin:0;font-size:.9rem;line-height:1.5}.admin-content .admin-empty{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;color:var(--text-light);border-radius:12px;padding:64px 32px}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border-radius:16px;width:100%;max-width:480px;max-height:90vh;padding:32px;overflow-y:auto}.modal-content h2{color:var(--secondary-color);margin:0 0 24px;font-size:1.25rem}.modal-actions{gap:12px;margin-top:32px;display:flex}.form-group{margin-bottom:20px}.form-group label{color:var(--text-color);margin-bottom:8px;font-size:.9rem;font-weight:500;display:block}.form-group input,.form-group textarea,.form-group select{border:1px solid var(--border-color);background:var(--background-color);width:100%;color:var(--text-color);border-radius:8px;padding:12px;font-size:.95rem}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary-color);outline:none}.form-group textarea{resize:vertical;min-height:80px}.form-error{background:var(--error-bg);border:1px solid var(--error-color);color:var(--error-color);border-radius:8px;margin-bottom:20px;padding:12px;font-size:.9rem}.admin-table-wrapper{overflow-x:auto}.admin-table{border-collapse:collapse;background:var(--card-bg);border-radius:8px;width:100%;overflow:hidden}.admin-table th,.admin-table td{text-align:left;border-bottom:1px solid var(--border-color);padding:12px 16px}.admin-table th{background:var(--background-color);color:var(--text-light);font-size:.85rem;font-weight:600}.admin-table td{font-size:.9rem}.admin-table .inactive-row{opacity:.5}.status-badge{border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:500;display:inline-block}.status-badge.active{background:var(--success-bg);color:var(--success-color)}.status-badge.inactive{background:var(--background-color);color:var(--text-light)}.btn-link{color:var(--primary-text);cursor:pointer;background:0 0;border:none;padding:4px 8px;font-size:.85rem}.btn-link:hover{text-decoration:underline}.btn-link-danger{color:var(--error-color)}.day-picker,.lane-picker{flex-wrap:wrap;gap:8px;display:flex}.day-btn,.lane-btn{border:1px solid var(--border-color);background:var(--background-color);cursor:pointer;min-width:48px;height:40px;color:var(--text-color);border-radius:8px;padding:0 12px;font-size:.85rem;font-weight:500;transition:all .2s}.day-btn:hover,.lane-btn:hover{border-color:var(--primary-color);background:var(--card-bg)}.day-btn.selected,.lane-btn.selected{background:var(--primary-color);border-color:var(--primary-color);color:var(--contrast-text-color)}.lane-mode-picker{gap:24px;display:flex}.lane-mode-picker label{cursor:pointer;align-items:center;gap:8px;font-size:.9rem;display:flex}.lane-mode-picker input[type=radio]{width:18px;height:18px;accent-color:var(--primary-color)}.form-row{gap:16px;display:flex}.form-row .form-group{flex:1}.checkbox-label{cursor:pointer;align-items:center;gap:8px;font-size:.9rem;display:flex}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary-color)}@media (max-width:768px){.admin-content .admin-toolbar{flex-direction:column;align-items:stretch}.form-row{flex-direction:column;gap:0}}
.reservation-section{padding:48px 0 80px}.progress-bar{justify-content:center;align-items:center;gap:8px;padding-bottom:32px;display:flex}.progress-step{flex-direction:column;align-items:center;gap:8px;display:flex}.step-circle{background:var(--border-color);width:36px;height:36px;color:var(--text-light);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:600;transition:all .3s;display:flex}.progress-step.active .step-circle,.progress-step.completed .step-circle{background:var(--primary-color);color:var(--secondary-color)}.dark .progress-step.active .step-circle,.dark .progress-step.completed .step-circle{color:#1a1824;background:#d4a5c9}.step-label{color:var(--text-light);font-size:.8rem;font-weight:500}.progress-step.active .step-label{color:var(--text-color)}.progress-line{background:var(--border-color);width:60px;height:2px}.booking-card{background:var(--card-bg);border:1px solid var(--border-color);box-shadow:var(--shadow);border-radius:16px;max-width:800px;margin:0 auto;padding:32px}.step-content h2{color:var(--secondary-color);padding-bottom:8px;font-size:1.5rem;font-weight:600}.step-description{color:var(--text-light);padding-bottom:24px}.back-link{color:var(--primary-color);cursor:pointer;background:0 0;border:none;padding:0 0 16px;font-size:.9rem;display:block}.back-link:hover{text-decoration:underline}.date-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:12px;display:grid}.date-card{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;padding:16px 8px;transition:all .2s;display:flex}.date-card:hover{border-color:var(--primary-color);transform:translateY(-2px)}.date-card.selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--secondary-color)}.dark .date-card.selected{color:#1a1824;background:#d4a5c9;border-color:#d4a5c9}.date-card.disabled{cursor:not-allowed;border-style:dashed}.date-card.disabled .day-name,.date-card.disabled .day-num,.date-card.disabled .month{color:var(--text-light)}.date-card.disabled:hover{border-color:var(--border-color);transform:none}.closed-badge{color:var(--text-light);height:16px;font-size:.65rem;font-weight:500;line-height:16px}.date-card .badge-placeholder{height:16px}.day-name{text-transform:uppercase;opacity:.7;font-size:.7rem;font-weight:500}.day-num{font-size:1.5rem;font-weight:700;line-height:1.2}.month{opacity:.7;font-size:.7rem}.selection-group{padding-bottom:24px}.selection-group h3{color:var(--secondary-color);padding-bottom:8px;font-size:1rem;font-weight:600}.pricing-note{color:var(--text-light);margin:0;padding-bottom:12px;font-size:.85rem}.time-grid{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.time-slot{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:12px 8px;transition:all .2s;display:flex;position:relative}.time-slot:hover{border-color:var(--primary-color)}.time-slot.selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--secondary-color)}.dark .time-slot.selected{color:#1a1824;background:#d4a5c9;border-color:#d4a5c9}.time-slot.peak{border-color:var(--border-color)}.time-slot.peak.selected{background:var(--primary-color);border-color:var(--primary-color)}.dark .time-slot.peak.selected{background:#d4a5c9;border-color:#d4a5c9}.slot-time{font-size:.95rem;font-weight:600}.peak-tag{color:#333;background:#f5a623;border-radius:8px;padding:2px 6px;font-size:.6rem;font-weight:600;position:absolute;top:-8px;right:-8px}.duration-grid{flex-wrap:wrap;gap:8px;display:flex}.duration-option{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;padding:12px 20px;transition:all .2s;display:flex}.duration-option:hover:not(.disabled){border-color:var(--primary-color)}.duration-option.selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--secondary-color)}.dark .duration-option.selected{color:#1a1824;background:#d4a5c9;border-color:#d4a5c9}.duration-option.disabled{opacity:.4;cursor:not-allowed}.duration-label{font-weight:600}.duration-price{opacity:.8;font-size:.8rem}.party-grid{flex-wrap:wrap;gap:8px;display:flex}.party-option{border:2px solid var(--border-color);background:var(--card-bg);cursor:pointer;width:48px;height:48px;color:var(--text-color);border-radius:50%;font-size:1.1rem;font-weight:600;transition:all .2s}.party-option:hover{border-color:var(--primary-color)}.party-option.selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--secondary-color)}.dark .party-option.selected{color:#1a1824;background:#d4a5c9;border-color:#d4a5c9}.selection-hint{color:var(--text-light);margin-bottom:12px;font-size:.85rem}.lane-grid{flex-wrap:wrap;gap:8px;display:flex}.lane-option{border:2px solid var(--border-color);background:var(--card-bg);cursor:pointer;color:var(--text-color);border-radius:8px;padding:12px 20px;font-size:.95rem;font-weight:600;transition:all .2s}.lane-option:hover{border-color:var(--primary-color)}.lane-option.selected{border-color:var(--primary-color);background:var(--primary-color);color:var(--secondary-color)}.dark .lane-option.selected{color:#1a1824;background:#d4a5c9;border-color:#d4a5c9}.separated-lanes-warning{background:#ffc1071a;border:1px solid #ffc10766;border-radius:16px;gap:16px;margin-bottom:20px;padding:16px;display:flex}.separated-lanes-warning .warning-icon{flex-shrink:0;font-size:1.5rem}.separated-lanes-warning .warning-content h4{color:#d4a439;margin:0 0 8px;font-size:1rem}.separated-lanes-warning .warning-content p{color:var(--text-color);margin:0 0 12px;font-size:.9rem}.accept-checkbox{cursor:pointer;color:var(--text-color);align-items:flex-start;gap:8px;font-size:.9rem;display:flex}.accept-checkbox input[type=checkbox]{cursor:pointer;width:18px;height:18px;accent-color:var(--primary-color);flex-shrink:0;margin-top:2px}.price-summary{background:var(--background-color);border:1px solid var(--border-color);border-radius:16px;padding:20px}.price-breakdown{justify-content:space-between;align-items:center;padding-bottom:12px;font-size:.95rem;display:flex}.price-note{color:var(--text-light);margin:0;padding-bottom:16px;font-size:.85rem}.continue-btn{width:100%}.booking-form{flex-direction:column;gap:20px;display:flex}.form-field label{color:var(--text-color);padding-bottom:8px;font-weight:500;display:block}.form-field input{border:2px solid var(--border-color);background:var(--card-bg);width:100%;color:var(--text-color);border-radius:8px;padding:12px 16px;font-size:1rem;transition:border-color .2s}.form-field input:focus{border-color:var(--primary-color);outline:none}.form-field input::placeholder{color:var(--text-light)}.mini-summary{background:var(--background-color);border:1px solid var(--border-color);text-align:center;border-radius:8px;flex-direction:column;gap:4px;padding:16px;display:flex}.mini-total{color:var(--primary-color);padding-top:8px;font-weight:600}.terms-box{background:var(--background-color);border:1px solid var(--border-color);color:var(--text-light);border-radius:8px;padding:16px;font-size:.85rem}.terms-box p{line-height:1.5}.submit-btn{width:100%;padding:16px;font-size:1.1rem}.loading-state{text-align:center;color:var(--text-light);padding:48px}.spinner{border:3px solid var(--border-color);border-top:3px solid var(--primary-color);border-radius:50%;width:40px;height:40px;margin:0 auto 16px;animation:1s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.error-message,.closed-message{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;border-radius:16px;padding:32px}.error-message{border-color:#dc3545}.error-message p{color:#dc3545;padding-bottom:16px}.closed-message p{color:var(--text-light);padding-bottom:16px}.cancelled-message{background:#ffc1071a;border:1px solid #ffc10766;border-radius:8px;margin-bottom:20px;padding:16px 20px}.cancelled-message p{color:var(--text-color);margin:0;font-size:.95rem}.success-card{background:var(--card-bg);border:1px solid var(--border-color);text-align:center;max-width:500px;box-shadow:var(--shadow);border-radius:16px;margin:0 auto;padding:40px 32px}.success-icon{padding-bottom:16px;font-size:4rem}.success-card h2{color:var(--secondary-color);padding-bottom:8px}.success-text{color:var(--text-light);padding-bottom:24px}.booking-summary-card{background:var(--background-color);border:1px solid var(--border-color);text-align:left;border-radius:16px;padding:24px}.booking-summary-card h3{color:var(--secondary-color);border-bottom:1px solid var(--border-color);padding-bottom:16px;font-size:1rem}.summary-grid{grid-template-columns:1fr 1fr;gap:16px;padding:16px 0;display:grid}.summary-item{flex-direction:column;gap:4px;display:flex}.summary-label{color:var(--text-light);font-size:.8rem}.summary-value{color:var(--text-color);font-weight:600}.summary-total{border-top:1px solid var(--border-color);justify-content:space-between;padding-top:16px;font-size:1.1rem;display:flex}.summary-total strong{color:var(--primary-color)}.next-steps{color:var(--text-light);padding:24px 0;font-size:.9rem;line-height:1.6}@media (max-width:600px){.booking-card{padding:24px 16px}.progress-bar{gap:4px}.step-label{display:none}.progress-line{width:40px}.date-grid{grid-template-columns:repeat(5,1fr);gap:8px}.date-card{padding:12px 4px}.day-num{font-size:1.25rem}.time-grid{grid-template-columns:repeat(3,1fr)}.summary-grid{grid-template-columns:1fr;gap:12px}}
.admin-calendar-section{padding:32px 0 80px}.calendar-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:0 0 24px;display:flex}.date-nav{gap:8px;display:flex}.nav-btn,.today-btn{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);cursor:pointer;border-radius:8px;padding:10px 16px;font-weight:600;transition:all .2s}.nav-btn:hover,.today-btn:hover{border-color:var(--primary-color);background:linear-gradient(135deg,var(--gradient-start),var(--gradient-end));color:var(--contrast-text-color)}.current-date{color:var(--secondary-color);font-size:1.25rem;font-weight:600}.date-picker{border:2px solid var(--border-color);background:var(--card-bg);color:var(--text-color);border-radius:8px;padding:10px 16px;font-size:1rem}.calendar-legend{background:var(--card-bg);border:1px solid var(--border-color);border-radius:8px;flex-wrap:wrap;gap:20px;margin:0 0 12px;padding:16px 20px;display:flex}.lane-info-note{background:var(--background-color);border:1px solid var(--border-color);color:var(--text-light);border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;margin:0 0 20px;padding:10px 16px;font-size:.85rem;display:flex}.lane-info-note strong{color:var(--text-color)}.lane-info-note .separator{color:var(--border-color);margin:0 4px}.legend-item{color:var(--text-color);align-items:center;gap:8px;font-size:.9rem;display:flex}.legend-color{border:2px solid;border-radius:6px;width:24px;height:24px}.legend-color.confirmed{background:#28a74540;border-color:#28a745}.legend-color.pending{background:#ffc10740;border-color:#ffc107}.legend-color.drag{background:#667eea40;border-color:#667eea}.calendar-wrapper{border:1px solid var(--border-color);background:var(--card-bg);border-radius:12px;position:relative;overflow-x:auto}.current-time-indicator{z-index:20;pointer-events:none;background:#4a90d9;width:2px;position:absolute;top:0;bottom:0}.current-time-indicator:before{content:"";background:#4a90d9;border-radius:50%;width:10px;height:10px;position:absolute;top:0;left:-4px}.calendar-grid{flex-direction:column;min-width:max-content;display:flex}.grid-header{background:var(--background-color);border-bottom:2px solid var(--border-color);z-index:10;display:flex;position:sticky;top:0}.lane-header,.lane-label{width:80px;min-width:80px;color:var(--secondary-color);background:var(--background-color);border-right:2px solid var(--border-color);z-index:5;padding:12px 8px;font-size:.85rem;font-weight:600;position:sticky;left:0}.time-header{width:30px;min-width:30px;color:var(--text-light);text-align:center;border-right:1px solid var(--border-color);white-space:nowrap;padding:8px 2px;font-size:.6rem}.time-header.hour-mark{border-left:2px solid var(--text-light)}.lane-row{border-bottom:1px solid var(--border-color);display:flex}.lane-row:last-child{border-bottom:none}.lane-label{align-items:center;display:flex}.grid-cell{border-right:1px solid var(--border-color);cursor:pointer;width:30px;min-width:30px;height:44px;transition:background .1s}.grid-cell.hour-mark{border-left:2px solid var(--text-light)}.grid-cell:hover:not(.booked){background:#667eea26}.grid-cell.drag-selected{background:#667eea4d!important}.grid-cell.booked{cursor:pointer;z-index:2;border-radius:4px}.grid-cell.booked.confirmed{background:#28a74540;border:2px solid #28a745}.grid-cell.booked.pending{background:#ffc10740;border:2px solid #ffc107}.booking-content{flex-direction:column;justify-content:center;height:100%;padding:4px 8px;display:flex;position:relative;overflow:visible}.booking-name{white-space:nowrap;text-overflow:ellipsis;color:#fff;font-size:.75rem;font-weight:600;overflow:hidden}.booking-time{color:#ffffffd9;font-size:.65rem}.booking-tooltip{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-color);white-space:nowrap;box-shadow:var(--shadow-hover);z-index:100;pointer-events:none;border-radius:8px;margin-bottom:6px;padding:10px 12px;font-size:.8rem;display:none;position:absolute;bottom:100%;left:50%;transform:translate(-50%)}.booking-tooltip:after{content:"";border:6px solid #0000;border-top-color:var(--border-color);position:absolute;top:100%;left:50%;transform:translate(-50%)}.grid-cell.booked:hover .booking-tooltip{display:block}.grid-cell.tooltip-below .booking-tooltip{margin-top:6px;margin-bottom:0;top:100%;bottom:auto}.grid-cell.tooltip-below .booking-tooltip:after{border-top-color:#0000;border-bottom-color:var(--border-color);top:auto;bottom:100%}.calendar-tips{background:var(--card-bg);border:1px solid var(--border-color);color:var(--text-light);border-radius:8px;margin-top:20px;padding:16px 20px;font-size:.9rem}.modal-overlay{z-index:1000;overscroll-behavior:contain;background:#0009;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0;overflow:hidden}.modal-content{background:var(--card-bg);overscroll-behavior:contain;border:1px solid var(--border-color);width:100%;max-width:700px;max-height:90vh;box-shadow:var(--shadow-hover);border-radius:16px;overflow-y:auto}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.modal-header h3{color:var(--secondary-color);margin:0;font-size:1.25rem;font-weight:600}.modal-close{cursor:pointer;color:var(--text-light);background:0 0;border:none;padding:0;font-size:2rem;line-height:1}.modal-close:hover{color:var(--text-color)}.modal-body{padding:24px}.modal-two-column{grid-template-rows:auto auto;grid-template-columns:1fr 1.5fr;align-items:start;gap:16px 24px;display:grid}.modal-left-column{grid-area:1/1}.modal-secondary-fields{flex-direction:column;grid-area:2/1;gap:16px;display:flex}.modal-secondary-fields .modal-form-group{margin-bottom:0}.modal-right-column{flex-direction:column;grid-area:1/2/3;display:flex}.slot-info{background:var(--background-color);border:1px solid var(--border-color);border-radius:8px;margin:0;padding:16px;font-size:.95rem}.slot-info div{color:var(--text-color);padding:4px 0}.slot-info div:first-child{padding-top:0}.slot-info div:last-child{padding-bottom:0}.modal-error{color:#dc3545;background:#dc35451a;border:1px solid #dc354533;border-radius:8px;margin:0 0 20px;padding:12px 16px}.modal-form-group{margin:0 0 20px}.modal-form-group:last-child{margin-bottom:0}.modal-form-group label{color:var(--text-color);margin-bottom:8px;font-weight:500;display:block}.modal-form-group input,.modal-form-group select,.modal-form-group textarea{border:2px solid var(--border-color);background:var(--background-color);width:100%;color:var(--text-color);border-radius:8px;padding:12px 14px;font-size:1rem;transition:border-color .2s}.modal-form-group input::placeholder,.modal-form-group textarea::placeholder{color:var(--text-light);opacity:.7}.modal-form-group input:focus,.modal-form-group select:focus,.modal-form-group textarea:focus{border-color:var(--primary-color);outline:none}.modal-form-group input:disabled{opacity:.6;cursor:not-allowed}.modal-form-group textarea{resize:vertical;min-height:80px}.checkbox-label{cursor:pointer;align-items:center;gap:12px;padding:12px 0;font-weight:500;display:inline-flex}.modal-form-group:has(.checkbox-label){border-bottom:1px solid var(--border-color);margin-bottom:24px;padding-bottom:16px}.helper-text{color:var(--text-light);margin:4px 0 0;font-size:.85rem;font-style:italic}.checkbox-label input[type=checkbox]{cursor:pointer;width:20px;height:20px;accent-color:var(--primary-color);flex-shrink:0}.modal-footer{border-top:1px solid var(--border-color);background:var(--background-color);border-radius:0 0 16px 16px;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.modal-actions{gap:12px;margin-left:auto;display:flex}.btn-danger-sm{color:#dc3545;cursor:pointer;background:0 0;border:1px solid #dc3545;border-radius:8px;padding:8px 16px;font-size:.9rem;font-weight:500;transition:all .2s}.btn-danger-sm:hover:not(:disabled){background:#dc35451a}.btn-danger-sm:disabled{opacity:.5;cursor:not-allowed}@media (max-width:768px){.calendar-controls{flex-direction:column;align-items:stretch}.date-nav{justify-content:center}.current-date{text-align:center}.modal-two-column{flex-direction:column;gap:0;display:flex}.modal-left-column{order:1}.modal-left-column .slot-info{margin-bottom:20px}.modal-right-column{order:2}.modal-secondary-fields{order:3;margin-top:0}.modal-footer{flex-direction:column;gap:12px}.modal-footer .btn-danger-sm{width:100%}.modal-actions{width:100%;margin-left:0}.modal-actions button{flex:1}}
@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.2a48534a.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.18a48cbc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.7a40eb73.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.c995e352.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.76dcb0b2.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.7cd81963.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.3a6ba036.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_394d8b56-module__gDtpIG__className{font-family:Inter,Inter Fallback;font-style:normal}
