@charset "UTF-8";*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Poppins,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%;min-height:100vh}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-Bold.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:600;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:500;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:400;font-style:normal}:root{--lime-green: #CCFF00;--dark-gray: #343434;--light-gray: #F5F5F5;--white: #FFFFFF;--black: #1A1A1A}.mobile-only{display:none}@media(max-width:768px){.desktop-only{display:none}.mobile-only{display:inline}}*{font-family:Gilroy,sans-serif}.semi-bold{font-weight:600}.app{width:100%;min-height:100vh}.hero{min-height:100vh;background-image:url(/assets/hero-480.webp);background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;padding:0;display:flex;flex-direction:column}@media(min-width:481px){.hero{background-image:url(/assets/hero-768.webp)}}@media(min-width:769px){.hero{background-image:url(/assets/hero-1280.webp)}}@media(min-width:1024px){.hero{background-image:url(/assets/hero-1920.webp);background-attachment:fixed}}.hero:before{content:"";position:absolute;inset:0;background:#00000059;z-index:1}.header{position:absolute;top:0;left:0;right:0;z-index:100}.nav{position:relative;z-index:10;display:flex;justify-content:space-between;align-items:flex-start;padding:2rem 14rem;width:100%}.logo{display:flex;flex-direction:column;margin-left:-6rem}.logo-svg{height:86px;width:auto}.nav-links{display:flex;gap:3rem;list-style:none;margin:0;padding:0;padding-top:.5rem;margin-right:-6rem}.nav-links a{color:var(--white);text-decoration:none;font-size:1rem;font-weight:400;transition:color .3s}.nav-links a:hover{color:var(--lime-green)}.hamburger{display:none;flex-direction:column;justify-content:space-between;width:30px;height:21px;background:transparent;border:none;cursor:pointer;padding:0;z-index:100}.hamburger span{display:block;width:100%;height:3px;background:#d9ff00;border-radius:2px;transition:all .3s ease}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(6px,6px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(6px,-6px)}.menu-overlay{display:none}.hero-content{position:relative;z-index:10;max-width:800px;margin:0 auto;text-align:center;padding:2rem;flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;padding-bottom:0}.intro-offer-banner{display:flex;align-items:center;justify-content:center;gap:.75rem;background:#343434;padding:.75rem 1.5rem;border-radius:8px;margin-bottom:1.5rem;transition:opacity .3s ease-in-out;opacity:1;min-height:44px}.intro-offer-banner.fading{opacity:0}.intro-offer-discount{font-size:1.1rem;font-weight:400;color:#fff}.intro-offer-text{font-size:1rem;font-weight:400;color:#fff}.hero-subtitle{font-family:Barlow Condensed,sans-serif;color:#d9ff00;font-size:20px;letter-spacing:2px;margin-top:160px;margin-bottom:1.5rem;font-weight:700;line-height:1.4}.hero-title{color:#fff;font-size:60px;font-weight:700;margin-bottom:2.5rem;line-height:1.15;white-space:nowrap;transition:opacity .3s ease-in-out;opacity:1}.hero-title.fading{opacity:0}.hero-title .hero-link{color:#d9ff00;text-decoration:none;transition:all .2s ease}.hero-title .hero-link:hover{text-decoration:underline}.hero-cta-group{display:flex;flex-direction:column;align-items:center;gap:1.5rem;margin-bottom:2.5rem}.hero-cta{display:inline-flex;align-items:center;gap:.5rem;background:#d9ff00;color:#343434;padding:16px 40px;border-radius:8px;font-size:20px;font-weight:700;text-decoration:none;transition:transform .2s}.hero-cta:hover{transform:translateY(-2px)}.hero-cta-secondary{display:inline-flex;align-items:center;gap:.5rem;background:#343434;color:#fff;padding:12px 24px;border-radius:8px;font-size:1rem;font-weight:500;text-decoration:none;transition:opacity .2s}.hero-cta-secondary span:last-child{color:#d9ff00}.hero-cta-secondary:hover{opacity:.8}.hero-video-link{display:flex;align-items:center;gap:.75rem;color:var(--white);font-size:.95rem;cursor:pointer;transition:opacity .3s}.hero-video-link:hover{opacity:.8}.play-icon{flex-shrink:0}.scroll-indicator{cursor:pointer;padding:.5rem;border:2px solid rgba(255,255,255,.5);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:border-color .3s;min-width:44px;min-height:44px}.scroll-indicator:hover{border-color:var(--white)}.scroll-to-top{display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin:0 auto;padding:.5rem;border:2px solid rgba(255,255,255,.5);border-radius:50%;background:var(--dark-gray);cursor:pointer;transition:border-color .3s;position:relative;top:-24px;z-index:10}.scroll-to-top:hover{border-color:var(--lime-green)}.features-banner{background:#d9ff00;display:flex;flex-direction:column}.features-content{display:flex;flex-wrap:wrap;justify-content:center;gap:3rem 4rem;padding:4rem 2rem;text-align:center;max-width:1400px;margin:0 auto}.features-banner .feature{flex:1;min-width:200px;max-width:280px}.features-banner .feature h2{font-size:48px;color:#343434;margin:0 0 .5rem;font-weight:700}.features-banner .feature p{color:#343434;font-size:16px;font-weight:600;line-height:1.4;margin:0}.features-bottom-bar{height:30px;background:#343434}.hero-bottom-bar{height:30px;background:#cf0}.why-choose{position:relative;padding:5rem 4rem 8rem 8rem;background:var(--light-gray);min-height:700px;max-width:1400px;margin:0 auto;overflow:visible}.why-content{max-width:400px;padding-top:2rem;position:relative;z-index:3}.why-content h2{font-size:48px;color:#343434;margin-bottom:1rem;font-weight:700}.why-content .why-subtitle{font-size:16px;font-weight:600;color:#343434;line-height:1.7}.why-images{position:absolute;inset:0;pointer-events:none}.why-img-1{position:absolute;left:8rem;bottom:-180px;width:380px;border-radius:12px;z-index:10;pointer-events:auto}.why-img-2{position:absolute;right:10%;top:5rem;width:380px;border-radius:12px;z-index:1;pointer-events:auto}.feature-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:3rem;padding:21rem 4rem 5rem;background:var(--white);max-width:1200px;margin:0 auto}.card{display:flex;align-items:flex-start;gap:1rem;text-align:left}.card-icon{flex-shrink:0}.card-icon img{width:48px;height:48px}.card-content{flex:1}.card h3{font-size:20px;color:#343434;margin-bottom:.5rem;font-weight:700;white-space:nowrap}.card p{color:#343434;line-height:1.5;font-size:16px;font-weight:600}.secure-carpark{background:#343434;padding:5rem 4rem 4rem;scroll-margin-top:80px;border-bottom:30px solid #ffffff}.secure-carpark-container{max-width:900px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:2rem}.secure-carpark-header{width:100%;text-align:center;color:#fff;margin-bottom:1rem}.secure-carpark-header h2{font-size:48px;color:#d9ff00;margin-bottom:.5rem;font-weight:700}.secure-carpark-header .secure-carpark-subtitle{font-size:20px;color:#fff;font-weight:600;margin-bottom:0}.secure-carpark-image{width:100%;max-width:800px}.secure-carpark-image img{width:100%;height:auto;border-radius:12px;box-shadow:0 8px 32px #0000004d;transition:transform .3s ease}.secure-carpark-image img:hover{transform:scale(1.03)}.secure-carpark-content{color:#fff;text-align:center}.secure-carpark-content h2,.secure-carpark-content .secure-carpark-subtitle{display:none}.secure-carpark-content h2{font-size:48px;color:#d9ff00;margin-bottom:1rem;font-weight:700}.secure-carpark-subtitle{font-size:20px;color:#fff;margin-bottom:2rem;font-weight:600}.secure-carpark-features{display:inline-block;text-align:left;list-style:none;padding:0;margin:0 0 1rem}.secure-carpark-features li{font-size:18px;color:#fff;padding:.4rem 0 .4rem 2rem;position:relative;font-weight:500}.secure-carpark-features li:before{content:"✓";position:absolute;left:0;top:.4rem;color:#d9ff00;font-weight:700;font-size:18px;line-height:1}.secure-carpark-tagline{font-size:18px;color:#d9ff00;font-style:italic;font-weight:600;margin-top:.75rem}.pricing-section{background:var(--dark-gray);padding:5rem 4rem 3rem;text-align:center}.pricing-section h2{font-size:48px;color:#d9ff00;margin-bottom:1rem;font-weight:700}.pricing-subtitle{font-size:16px;font-weight:600;color:#fff;margin-bottom:3rem;line-height:1.6}.pricing-cards{display:flex;flex-wrap:wrap;justify-content:center;gap:2rem;max-width:1200px;margin:0 auto}.pricing-card{background:var(--white);border-radius:12px;padding:2.5rem 3rem;flex:1;max-width:400px;text-align:center;display:flex;flex-direction:column;align-items:center;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;cursor:pointer}.pricing-card:hover{transform:scale(1.05) translateY(-5px);box-shadow:0 15px 35px #0000001f}.pricing-label{color:#5c7300;font-size:16px;font-weight:700;letter-spacing:1px;align-self:flex-start}.pricing-from{font-size:16px;font-weight:600;color:#343434;margin:1rem 0 .25rem;align-self:flex-start}.pricing-amount{margin:0 0 .5rem;display:flex;align-items:baseline;align-self:flex-start}.pricing-amount .currency{font-size:1.5rem;color:var(--black);font-weight:700}.pricing-amount .price{font-size:4rem;color:var(--black);font-weight:700;line-height:1}.pricing-amount .period{font-size:1rem;color:var(--dark-gray);margin-left:.5rem}.pricing-note{color:var(--dark-gray);font-size:.9rem;margin-bottom:2rem;align-self:flex-start}.pricing-features{list-style:none;padding:0;margin:0 0 2rem;text-align:left;width:100%}.pricing-features li{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 0;color:var(--black);font-size:.95rem}.pricing-features .check{color:var(--lime-green);font-weight:700;font-size:1.1rem}.pricing-btn{background:#d9ff00;border:none;border-radius:8px;padding:1rem 2.5rem;font-size:1rem;font-weight:600;color:#343434;cursor:pointer;display:inline-flex;align-items:center;gap:.75rem;transition:transform .2s;text-decoration:none}.pricing-btn:hover{transform:translateY(-2px)}.pricing-btn span{font-size:1.2rem}.pricing-btn-center{margin-top:2rem;margin-bottom:0}.pricing-btn-center,.pricing-btn{font-weight:700;font-size:20px}.pricing-save{color:#d9ff00;font-size:20px;font-weight:700;margin-top:auto;background:#5a5a5a;padding:1.5rem;margin:0 -3rem -2.5rem;border-radius:0 0 12px 12px;width:calc(100% + 6rem)}.pricing-early-note{color:#a0a0a0;font-size:14px;margin-top:1rem;text-align:center}.pricing-unified-card{background:var(--white);border-radius:16px;padding:2.5rem 3rem;max-width:900px;margin:0 auto;text-align:center}.pricing-save-unified{color:#d9ff00;font-size:18px;font-weight:700;background:#5a5a5a;padding:1.25rem;margin:1.5rem -3rem -2.5rem;border-radius:0 0 16px 16px}.pricing-hero-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#d9ff00;color:#343434;font-size:10px;font-weight:700;padding:4px 12px;border-radius:20px;white-space:nowrap}.pricing-hero-layout{display:flex;align-items:center;justify-content:center;gap:2rem;margin-bottom:2rem}.pricing-side-option{flex:1;max-width:200px;padding:1.5rem;background:#f5f5f5;border-radius:12px;text-align:center;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.pricing-side-option:hover{transform:scale(1.08);box-shadow:0 8px 25px #00000026}.pricing-side-label{display:block;color:#5c7300;font-size:12px;font-weight:700;letter-spacing:1px;margin-bottom:.5rem}.pricing-side-price{display:flex;flex-direction:column;align-items:center}.pricing-side-from{font-size:11px;color:#666}.pricing-side-amount{font-size:1.75rem;font-weight:700;color:#343434}.pricing-side-amount .currency{font-size:.9rem;vertical-align:top}.pricing-center-hero{flex:1.5;max-width:320px;padding:2rem 2.5rem;background:linear-gradient(135deg,#f8fff0,#e8ffb8);border-radius:16px;border:3px solid #D9FF00;box-shadow:0 8px 30px #d9ff0040;text-align:center;transition:transform .3s ease,box-shadow .3s ease;cursor:pointer}.pricing-center-hero:hover{transform:scale(1.08);box-shadow:0 12px 40px #d9ff0066;position:relative}.pricing-hero-badge{top:-14px}.pricing-hero-label{display:block;color:#5c7300;font-size:16px;font-weight:700;letter-spacing:1px;margin-bottom:.5rem}.pricing-hero-price{display:flex;flex-direction:column;align-items:center}.pricing-hero-from{font-size:14px;color:#666;font-weight:600}.pricing-hero-amount{display:flex;align-items:baseline}.pricing-hero-amount .currency{font-size:1.5rem;font-weight:700;color:#343434}.pricing-hero-amount .price{font-size:4rem;font-weight:700;color:#343434;line-height:1}.pricing-features-row{list-style:none;padding:0;margin:0 0 1rem;display:flex;justify-content:center;flex-wrap:wrap;gap:.75rem 1.5rem}.pricing-features-row li{display:flex;align-items:center;gap:.4rem;color:#343434;font-size:.85rem}.pricing-features-row .check{color:#5c7300;font-weight:700}@media(max-width:768px){.pricing-unified-card{padding:1.5rem;margin:0 1rem}.pricing-save-unified{margin:1.5rem -1.5rem -1.5rem;font-size:14px}.pricing-hero-layout{flex-direction:column;gap:1rem}.pricing-side-option,.pricing-center-hero{max-width:100%;width:100%}.pricing-features-row{flex-direction:column;align-items:center}.pricing-features-row .feature-1{order:1}.pricing-features-row .feature-3{order:2}.pricing-features-row .feature-2{order:3}.pricing-features-row .feature-4{order:4}}.support-section{display:flex;background:var(--lime-green);padding:5rem 12rem;gap:6rem;align-items:flex-start;justify-content:center}.support-content{flex:0 0 400px}.support-content h2{font-size:36px;color:#343434;margin-bottom:1rem;line-height:1.3;font-weight:700}.support-subtitle{font-size:16px;font-weight:600;color:#343434;line-height:1.6;margin-bottom:2rem}.support-note{color:var(--black);margin-bottom:2.5rem;opacity:.8}.support-features{display:flex;flex-direction:column;gap:2rem}.support-item{display:flex;gap:1.5rem;align-items:flex-start}.check-icon{background:var(--white);width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--dark-gray);font-weight:700;flex-shrink:0}.support-item h3{font-size:1.3rem;color:var(--black);margin:0 0 .5rem}.support-item p{color:var(--black);margin:0;opacity:.8}.faq-box{flex:0 0 480px;background:var(--dark-gray);padding:2rem;border-radius:12px;color:var(--white)}.faq-box h3{font-size:1.2rem;margin-bottom:1rem;font-weight:600}.faq-box>p{opacity:.7;line-height:1.6;margin-bottom:1.5rem;font-size:.9rem}.faq-item{border-top:1px solid rgba(204,255,0,.3)}.faq-question{padding:1.25rem 0;cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:.95rem}.faq-arrow{font-size:1.25rem;color:var(--lime-green);transition:transform .3s ease}.faq-item.open .faq-arrow{transform:rotate(90deg)}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease}.faq-item.open .faq-answer{max-height:200px;padding-bottom:1rem}.faq-answer p{color:#999;font-size:.9rem;line-height:1.6;margin:0}.faq-view-all{display:inline-block;margin-top:1.5rem;color:var(--lime-green);text-decoration:none;font-weight:500;font-size:.95rem;transition:opacity .2s}.faq-view-all:hover{opacity:.8;text-decoration:underline}.how-it-works{text-align:center;padding:5rem 4rem;background:var(--white)}.how-it-works h2{font-size:48px;color:#343434;margin-bottom:1rem;font-weight:700}.how-it-works-subtitle{color:#343434;margin-bottom:3rem;font-size:16px;font-weight:600;line-height:1.6}.steps-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1100px;margin:0 auto;align-items:start}.step-card h3{font-size:24px;font-weight:700;color:#343434;margin:1.5rem 0 .75rem}.step-card p{font-size:16px;font-weight:600;color:#343434;line-height:1.5;margin:0;padding:0 1rem}.step-card{text-align:center}.step-card-image{width:100%}.step-card-image img{width:100%;height:auto;display:block}.subscribe{padding:5rem 4rem;background:var(--white)}.subscribe-layout{display:flex;align-items:flex-start;gap:4rem;max-width:1000px;margin:0 auto}.subscribe-icon{width:140px;height:auto;flex-shrink:0}.subscribe-content{flex:1;text-align:center}.subscribe-content h2{font-size:36px;color:#343434;margin-bottom:1rem;font-weight:700}.subscribe-subtitle{font-size:16px;font-weight:600;color:#343434;margin-bottom:2rem;line-height:1.6}.subscribe-content>p{color:var(--dark-gray);margin-bottom:2rem}.subscribe-form{max-width:400px;margin:0 auto 1.5rem}.subscribe-form input{width:100%;padding:1.2rem 1.5rem;border:2px solid #E0E0E0;border-radius:8px;font-size:1rem;margin-bottom:1rem;outline:none;transition:border-color .3s;box-sizing:border-box}.subscribe-form input:focus{border-color:var(--lime-green)}.subscribe-form button{width:100%;padding:1.2rem;background:var(--lime-green);border:none;border-radius:8px;font-size:1rem;font-weight:700;color:var(--black);cursor:pointer;transition:transform .2s}.subscribe-form button:hover:not(:disabled){transform:translateY(-2px)}.subscribe-form button:disabled{background:#666;cursor:not-allowed;opacity:.6}.privacy-note{font-size:.85rem;color:var(--dark-gray)}.subscribe-content .hero-cta{margin-bottom:2rem}.subscribe-success{color:#22c55e;font-weight:500;margin-top:1rem}.subscribe-error{color:#ef4444;font-weight:500;margin-top:1rem}.footer{background:var(--dark-gray);color:var(--white);padding:4rem 8rem 2rem}.footer-top{text-align:center;margin-bottom:3rem}.footer-top h2{font-size:2.5rem;color:var(--lime-green);font-weight:700;font-style:italic}.footer-links{display:grid;grid-template-columns:repeat(5,1fr);gap:2rem;margin-bottom:3rem;max-width:1000px;margin-left:auto;margin-right:auto}.footer-links-simple{display:flex;justify-content:center;flex-wrap:wrap;gap:2rem}.footer-links-simple a{color:var(--white);text-decoration:none;font-size:14px;transition:opacity .2s;padding:.5rem;min-height:44px;display:flex;align-items:center}.footer-links-simple a:hover{opacity:.7}.footer-contact{display:flex;justify-content:center;gap:2rem;margin-bottom:2rem}.footer-contact a{color:#d9ff00;text-decoration:none;font-size:14px;transition:opacity .2s;padding:.5rem;min-height:44px;display:flex;align-items:center}.footer-contact a:hover{opacity:.7}.footer-column h4{color:#999;font-size:.8rem;font-weight:400;margin-bottom:1.5rem;text-transform:capitalize}.footer-arrow{display:none}.footer-links-content a{display:block;color:var(--white);text-decoration:none;margin-bottom:.75rem;font-size:.95rem;transition:color .3s}.footer-links-content a:hover{color:var(--lime-green)}.contact-email,.contact-phone{color:var(--lime-green)!important;font-weight:600}.social-links{display:flex;gap:1rem;margin-bottom:2rem;max-width:1000px;margin-left:auto;margin-right:auto}.social-links a{color:var(--lime-green);transition:opacity .3s;display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}.social-links a:hover{opacity:.7}.footer-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:1px solid rgba(255,255,255,.1);max-width:1000px;margin:0 auto}.footer-legal p{color:#b3b3b3;font-size:.85rem;margin:0}.footer-logo-img{height:50px;width:auto}@media(max-width:1024px){.header{position:fixed;background:var(--dark-gray)}.hero{padding-top:80px}.hero-subtitle{font-size:18px;margin-top:120px}#how-it-works,#pricing,#subscribe,#contact,#secure-carpark{scroll-margin-top:80px}.nav{padding:1.5rem 2rem;position:relative}.logo{margin-left:0}.hamburger{display:flex}.menu-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:98}.menu-overlay.open{display:block}.nav-links{display:none;position:fixed;top:80px;left:0;right:0;background:var(--dark-gray);flex-direction:column;padding:0;gap:0;margin-right:0;z-index:99;align-items:center;justify-content:flex-start;box-shadow:0 4px 20px #0000004d;border-top:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links li{text-align:center;list-style:none;width:100%;border-bottom:1px solid rgba(255,255,255,.1)}.nav-links li:last-child{border-bottom:none}.nav-links a{font-size:1.1rem;padding:1.25rem;display:block;color:var(--white);text-decoration:none;transition:background .2s}.nav-links a:hover{background:#ffffff0d}.nav-links a:active{color:var(--lime-green)}.hamburger{z-index:100}.why-choose{padding:5rem 4rem 8rem;min-height:auto}.why-images{position:relative;display:flex;gap:1rem;min-height:auto;margin-top:2rem}.why-img-1,.why-img-2{position:relative;inset:auto;width:50%}.support-section{flex-direction:column;padding:5rem 4rem}.support-content{flex:none;max-width:100%}.faq-box{flex:none;width:100%}.features-content{flex-direction:column;gap:2rem;padding:3rem 2rem}.features-banner .feature{flex:none;width:100%}.steps-cards{grid-template-columns:1fr;gap:2rem}.step-card{max-width:75%;margin:0 auto}.step-card h3{font-size:24px}.step-card p{font-size:16px}.feature-cards{grid-template-columns:1fr;padding:3rem 4rem;gap:2rem}.pricing-cards{flex-direction:column;align-items:center}.pricing-card{max-width:500px;width:100%}.subscribe-layout{flex-direction:column;align-items:center;text-align:center}.subscribe-icon{width:100px}.footer{padding:4rem 4rem 2rem}.footer-links{display:flex;flex-direction:column;gap:0;max-width:100%}.footer-column{border-bottom:1px solid rgba(255,255,255,.1)}.footer-column h4{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:1rem 0;margin-bottom:0}.footer-arrow{display:inline-block;color:var(--lime-green);font-size:1.25rem;transition:transform .3s ease}.footer-column.open .footer-arrow{transform:rotate(90deg)}.footer-links-content{max-height:0;overflow:hidden;transition:max-height .3s ease;text-align:left}.footer-column.contact-column .footer-links-content{text-align:center}.footer-column.open .footer-links-content{max-height:200px;padding-bottom:1rem}.footer-bottom,.social-links{max-width:100%}.hero-title{font-size:2.5rem}.secure-carpark{padding:4rem 2rem 3rem}.secure-carpark-container{flex-direction:column;gap:2rem}.secure-carpark-header{display:block;text-align:center;color:#fff}.secure-carpark-header h2{font-size:36px;color:#d9ff00;margin-bottom:.5rem;font-weight:700}.secure-carpark-header .secure-carpark-subtitle{font-size:18px;color:#fff;font-weight:600;margin-bottom:0}.secure-carpark-image{max-width:85%;order:2}.secure-carpark-content{display:block;order:3;color:#fff}.secure-carpark-content h2,.secure-carpark-content .secure-carpark-subtitle{display:none}.secure-carpark-features{text-align:left;max-width:280px;margin:0 auto 1.5rem}.secure-carpark-features li{padding:.75rem 0 .75rem 2rem}.secure-carpark-features li:before{top:.75rem}.secure-carpark-tagline{text-align:center;margin-top:1rem}}@media(max-width:768px){.header{position:fixed;background:var(--dark-gray)}.hero{padding-top:70px}#how-it-works,#pricing,#subscribe,#contact,#secure-carpark{scroll-margin-top:70px}.nav{padding:1rem 1.5rem;position:relative}.hamburger{display:flex}.menu-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:98}.menu-overlay.open{display:block}.nav-links{display:none;position:fixed;top:62px;left:0;right:0;background:var(--dark-gray);flex-direction:column;padding:0;gap:0;z-index:99;align-items:center;justify-content:flex-start;box-shadow:0 4px 20px #0000004d;border-top:1px solid rgba(255,255,255,.1)}.nav-links.open{display:flex}.nav-links li{text-align:center;list-style:none;width:100%;border-bottom:1px solid rgba(255,255,255,.1)}.nav-links li:last-child{border-bottom:none}.nav-links a{font-size:1.1rem;padding:1.25rem;display:block;color:var(--white);text-decoration:none;transition:background .2s}.nav-links a:hover{background:#ffffff0d}.nav-links a:active{color:var(--lime-green)}.hamburger{z-index:100}.hero-content{padding:2rem 1.5rem;width:100%;box-sizing:border-box}.hero-title{font-size:2rem;white-space:normal}.hero-subtitle{font-size:.85rem;margin-top:80px;letter-spacing:.5px;line-height:1.5}.features-content{flex-direction:column;padding:2rem 1.5rem;gap:2rem}.features-banner .feature{flex:none;width:100%}.features-banner .feature h2{font-size:2.5rem}.how-it-works{padding:3rem 1.5rem}.how-it-works h2{font-size:2rem}.steps-cards{grid-template-columns:1fr;gap:1.5rem}.why-choose{padding:3rem 1.5rem 4rem}.why-content h2{font-size:36px}.why-images{flex-direction:column}.why-img-1,.why-img-2{width:100%;max-width:300px;margin:0 auto}.feature-cards{grid-template-columns:1fr;padding:3rem 1.5rem;gap:2rem}.pricing-section{padding:3rem 1.5rem}.pricing-section h2{font-size:2rem}.pricing-card{padding:2rem}.pricing-save{margin:0 -2rem -2rem;width:calc(100% + 4rem)}.pricing-amount .price{font-size:3rem}.support-section{padding:3rem 1.5rem;gap:2rem}.support-content h2{font-size:2rem}.faq-box{padding:1.5rem}.subscribe{padding:3rem 1.5rem}.subscribe-content h2{font-size:2rem}.subscribe-form{max-width:100%}.footer{padding:3rem 1.5rem 2rem}.footer-top h2{font-size:2rem}.footer-links{display:flex;flex-direction:column;gap:0}.footer-column{border-bottom:1px solid rgba(255,255,255,.1)}.footer-column h4{display:flex;justify-content:space-between;align-items:center;cursor:pointer;padding:1rem 0;margin-bottom:0}.footer-arrow{display:inline-block;color:var(--lime-green);font-size:1.25rem;transition:transform .3s ease}.footer-column.open .footer-arrow{transform:rotate(90deg)}.footer-links-content{max-height:0;overflow:hidden;transition:max-height .3s ease;text-align:left}.footer-column.contact-column .footer-links-content{text-align:center}.footer-column.open .footer-links-content{max-height:200px;padding-bottom:1rem}.footer-bottom{flex-direction:column;gap:1.5rem;text-align:center}.social-links{justify-content:center}.intro-offer-banner{flex-direction:row;justify-content:center;gap:.5rem;text-align:center}.logo-svg{height:60px}.secure-carpark{padding:3rem 1.5rem 2.5rem}.secure-carpark-container{flex-direction:column;gap:1.5rem}.secure-carpark-header{display:block;text-align:center;color:#fff}.secure-carpark-header h2{font-size:32px;color:#d9ff00;margin-bottom:.5rem;font-weight:700}.secure-carpark-header .secure-carpark-subtitle{font-size:16px;color:#fff;font-weight:600;margin-bottom:0}.secure-carpark-image{max-width:95%;order:2}.secure-carpark-content{display:block;order:3;color:#fff}.secure-carpark-content h2,.secure-carpark-content .secure-carpark-subtitle{display:none}.secure-carpark-features{max-width:280px;margin:0 auto 1.5rem}.secure-carpark-features li{font-size:16px;padding:.75rem 0 .75rem 1.75rem}.secure-carpark-features li:before{top:.75rem}.secure-carpark-tagline{text-align:center;font-size:16px;margin-top:1rem}}@media(max-width:480px){.hero-title{font-size:1.75rem}.hero-subtitle{font-size:.75rem}.features-banner .feature{flex:1 1 100%}.features-banner .feature h2{font-size:1.75rem}.footer-links{grid-template-columns:1fr;text-align:center}.footer-column{margin-bottom:1rem}.pricing-amount .price{font-size:2.5rem}.secure-carpark{padding:2.5rem 1rem 2rem}.secure-carpark-header h2{font-size:28px}.secure-carpark-header .secure-carpark-subtitle{font-size:15px}.secure-carpark-image{max-width:100%}.secure-carpark-features li{font-size:15px;padding:.5rem 0 .5rem 1.5rem}.secure-carpark-features li:before{top:.5rem}.secure-carpark-tagline{font-size:15px}}.testimonials-section{background:var(--dark-gray);padding:5rem 4rem;text-align:center;position:relative;overflow:hidden}.testimonials-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(204,255,0,.03) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(204,255,0,.03) 0%,transparent 50%);pointer-events:none}.testimonials-section h2{font-size:48px;color:#d9ff00;margin-bottom:2.5rem;font-weight:700;position:relative}.testimonials-section .section-subtitle{font-size:16px;font-weight:600;color:#fff;margin-bottom:3rem;line-height:1.6;opacity:.9}.testimonials-carousel{display:flex;align-items:center;justify-content:center;gap:2rem;max-width:1000px;margin:0 auto;position:relative}.carousel-nav{background:transparent;border:2px solid var(--lime-green);border-radius:50%;width:56px;height:56px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--lime-green);transition:all .3s cubic-bezier(.34,1.56,.64,1);flex-shrink:0}.carousel-nav:hover{background:var(--lime-green);color:var(--dark-gray);transform:scale(1.1)}.carousel-nav:active{transform:scale(.95)}.testimonial-card{background:var(--white);border-radius:16px;padding:3rem;max-width:650px;width:100%;text-align:left;position:relative;transition:all .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 20px 60px #0000004d}.testimonial-card.transitioning{opacity:0;transform:scale(.95) translateY(10px)}.testimonial-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;position:relative;z-index:1}.testimonial-stars{display:flex;gap:.35rem}.testimonial-stars .star{font-size:1.75rem;color:#e8e8e8;transition:all .2s ease}.testimonial-stars .star.filled{color:gold;text-shadow:0 2px 8px rgba(255,215,0,.4)}.testimonial-quote-icon{color:var(--lime-green);display:flex;align-items:center;justify-content:center}.testimonial-quote-icon svg{filter:drop-shadow(0 2px 4px rgba(204,255,0,.3))}.testimonial-source-badge{font-size:.7rem;font-weight:700;color:#fff;padding:.35rem .75rem;border-radius:20px;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 8px #00000026}.testimonial-text{font-size:1.25rem;line-height:1.7;color:#343434;margin:0 0 2rem;font-weight:500;position:relative;z-index:1}.testimonial-footer{display:flex;align-items:center;gap:1rem;padding-top:1.5rem;border-top:1px solid rgba(52,52,52,.1)}.testimonial-author{font-weight:700;color:#343434;font-size:1.1rem}.testimonial-date{color:#888;font-size:.9rem;font-weight:500}.testimonial-date:before{content:"•";margin-right:1rem;color:#ccc}.testimonial-dots{display:flex;justify-content:center;gap:.5rem;margin-top:2.5rem}.testimonial-dots .dot{width:10px;height:10px;border-radius:50%;border:none;background:#ffffff40;cursor:pointer;transition:all .3s cubic-bezier(.34,1.56,.64,1);padding:0}.testimonial-dots .dot:hover{background:#ffffff80;transform:scale(1.2)}.testimonial-dots .dot.active{background:var(--lime-green);width:32px;border-radius:5px;box-shadow:0 0 12px #ccff0080}.testimonials-press{margin-top:2rem;font-size:20px;color:#fffc;display:flex;align-items:center;justify-content:center;gap:.4rem}.testimonials-press .press-icon{color:#fffc;flex-shrink:0}.testimonials-press .press-link{color:var(--lime-green);text-decoration:none;font-weight:600;transition:all .2s ease;background:none;border:none;font-size:inherit;font-family:inherit;cursor:pointer;padding:0}.testimonials-press .press-link:hover{text-decoration:underline;color:#fff}.press-link-papers .papers-mobile{display:none}.press-link-papers .papers-desktop{display:inline}.press-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeIn .2s ease}.press-modal{position:relative;max-width:90vw;max-height:90vh;background:#fff;border-radius:8px;overflow:hidden;animation:scaleIn .3s ease}@keyframes scaleIn{0%{transform:scale(.9);opacity:0}to{transform:scale(1);opacity:1}}.press-modal-close{position:absolute;top:10px;right:10px;width:36px;height:36px;background:#000000b3;color:#fff;border:none;border-radius:50%;font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:10}.press-modal-close:hover{background:#000000e6;transform:scale(1.1)}.press-modal-image{display:block;max-width:100%;max-height:85vh;object-fit:contain}.press-modal-pdf{width:80vw;height:85vh;border:none}@media(max-width:1024px){.testimonials-section{padding:4rem 3rem}.testimonials-section h2{font-size:36px}.testimonial-card{padding:2.5rem;max-width:550px}.testimonial-text{font-size:1.125rem}.carousel-nav{width:48px;height:48px}}@media(max-width:768px){.testimonials-section{padding:3rem 1.5rem}.testimonials-section h2{font-size:28px;margin-bottom:1.5rem}.testimonials-carousel{flex-direction:column;gap:0}.carousel-nav{display:none}.testimonial-card{padding:2rem 1.5rem;border-radius:12px;box-shadow:0 10px 40px #00000040}.testimonial-card:before{font-size:80px;top:-10px;left:15px}.testimonial-text{font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.testimonial-stars .star{font-size:1.4rem}.testimonial-footer{flex-direction:column;align-items:flex-start;gap:.35rem;padding-top:1rem}.testimonial-date:before{display:none}.testimonial-author{font-size:1rem}.testimonial-dots{margin-top:1.5rem}.testimonial-dots .dot{width:8px;height:8px}.testimonial-dots .dot.active{width:24px}.press-link-papers .papers-desktop{display:none}.press-link-papers .papers-mobile{display:inline}.testimonials-press-featured{flex-direction:column;gap:.25rem}}@media(max-width:375px){.testimonials-section{padding:2.5rem 1rem}.testimonial-card{padding:1.5rem 1.25rem}.testimonial-text{font-size:.95rem}}.promotions-section{background:var(--dark-gray);padding:6rem 4rem 8rem;text-align:center;position:relative;overflow:hidden}.promotions-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(204,255,0,.03) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(204,255,0,.03) 0%,transparent 50%);pointer-events:none}.promotions-section h2{font-size:48px;color:#d9ff00;margin-bottom:1rem;font-weight:700;position:relative}.promotions-section .section-subtitle{font-size:18px;font-weight:500;color:#d9ff00;margin-bottom:2.5rem;line-height:1.6;opacity:.9;max-width:600px;margin-left:auto;margin-right:auto;white-space:pre-line}.promo-card{background:var(--white);border-radius:16px;padding:3rem;max-width:600px;width:100%;margin:0 auto;text-align:center;position:relative;box-shadow:0 20px 60px #0000004d}.promo-card-header{margin-bottom:1.5rem}.promo-discount-badge{display:inline-block;background:var(--lime-green);color:var(--dark-gray);font-size:1.5rem;font-weight:800;padding:.5rem 1.5rem;border-radius:30px;margin-bottom:1rem}.promo-card-title{font-size:1.75rem;font-weight:700;color:#343434;margin:0 0 .5rem}.promo-card-message{font-size:1.1rem;line-height:1.6;color:#555;margin:0 0 1.5rem;white-space:pre-line}.promo-code-box{background:#f5f5f5;border:2px dashed var(--lime-green);border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.promo-code-label{font-size:.85rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:1px;margin-bottom:.5rem}.promo-code-value{font-size:1.5rem;font-weight:800;color:var(--dark-gray);letter-spacing:2px;font-family:monospace;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:.5rem}.promo-code-value:hover{color:var(--lime-green)}.promo-code-copy-icon{font-size:1.25rem;opacity:.6}.promo-code-copied{font-size:.85rem;color:#16a34a;margin-top:.5rem;font-weight:600}.promo-dates{font-size:.9rem;color:#888;margin-top:1rem}.promo-cta-hint{margin-top:1.5rem;font-size:.95rem;color:#666}.promo-cta-hint a{color:var(--dark-gray);font-weight:600;text-decoration:underline}.promo-cta-hint a:hover{color:var(--lime-green)}.promotions-bottom-bar{height:80px;background:#343434}@media(max-width:1024px){.promotions-section{padding:5rem 3rem 10rem}.promotions-section h2{font-size:36px}.promo-card{padding:2.5rem;max-width:500px}}@media(max-width:768px){.promotions-section{padding:4rem 1.5rem 8rem}.promotions-section h2{font-size:28px;margin-bottom:.75rem}.promotions-section .section-subtitle{font-size:16px;margin-bottom:2rem}.promo-card{padding:2rem 1.5rem;border-radius:12px}.promo-discount-badge{font-size:1.25rem;padding:.4rem 1.25rem}.promo-card-title{font-size:1.5rem}.promo-card-message{font-size:1rem}.promo-code-value{font-size:1.25rem}.promo-code-box{padding:1.25rem}}@media(max-width:375px){.promotions-section{padding:3rem 1rem 6rem}.promo-card{padding:1.5rem 1.25rem}.promo-code-value{font-size:1.1rem;letter-spacing:1px}}.promo-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:9999;padding:1rem;animation:fadeIn .3s ease-out}.promo-modal-overlay.closing{animation:fadeOut .3s ease-out}.promo-modal{position:relative;border-radius:12px;padding:2rem;max-width:500px;width:100%;max-height:85vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d;animation:slideUp .3s ease-out}.promo-modal.closing{animation:slideDown .3s ease-out}.promo-modal-close{position:absolute;top:.75rem;right:.75rem;background:none;border:none;font-size:1.5rem;cursor:pointer;opacity:.7;transition:opacity .2s;padding:.25rem .5rem;line-height:1}.promo-modal-close:hover{opacity:1}.promo-modal-content{text-align:left}.promo-modal-title{font-size:1.75rem;font-weight:700;margin:0 0 1rem;line-height:1.2;text-align:center}.promo-modal-message{font-size:1.1rem;line-height:1.6;margin:0 0 1rem;opacity:.95}.promo-modal-dates{font-size:.9rem;opacity:.8;margin:0 0 1.5rem}.promo-modal-code{background-color:#ffffff26;padding:.75rem 1rem;border-radius:6px;margin:1rem 0 1.5rem;border:2px dashed rgba(255,255,255,.3);text-align:center}.promo-modal-code-label{font-size:.75rem;opacity:.8;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:1px}.promo-modal-code-value{font-size:1.25rem;font-weight:700;letter-spacing:1px}.promo-modal-button{display:block;margin:0 auto;padding:.875rem 2rem;font-size:1.1rem;font-weight:600;border:none;border-radius:8px;cursor:pointer;transition:transform .2s,box-shadow .2s}.promo-modal-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0003}.promo-modal-button:active{transform:translateY(0)}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes slideDown{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(30px) scale(.95)}}@media(max-width:768px){.promo-modal{max-width:90%;padding:1.75rem}.promo-modal-title{font-size:1.5rem}.promo-modal-message{font-size:1rem}.promo-modal-button{padding:.75rem 1.75rem;font-size:1rem}}@media(max-width:480px){.promo-modal-overlay{padding:.75rem;align-items:flex-start;padding-top:5vh}.promo-modal{max-width:100%;max-height:90vh;padding:1.5rem;border-radius:10px}.promo-modal-close{top:.5rem;right:.5rem;font-size:1.25rem}.promo-modal-title{font-size:1.35rem;margin-bottom:.75rem}.promo-modal-message{font-size:.95rem;line-height:1.5}.promo-modal-dates{font-size:.85rem}.promo-modal-button{width:100%;padding:.875rem 1.5rem;font-size:1rem}}:root{--PhoneInput-color--focus: #03b2cb;--PhoneInputInternationalIconPhone-opacity: .8;--PhoneInputInternationalIconGlobe-opacity: .65;--PhoneInputCountrySelect-marginRight: .35em;--PhoneInputCountrySelectArrow-width: .3em;--PhoneInputCountrySelectArrow-marginLeft: var(--PhoneInputCountrySelect-marginRight);--PhoneInputCountrySelectArrow-borderWidth: 1px;--PhoneInputCountrySelectArrow-opacity: .45;--PhoneInputCountrySelectArrow-color: currentColor;--PhoneInputCountrySelectArrow-color--focus: var(--PhoneInput-color--focus);--PhoneInputCountrySelectArrow-transform: rotate(45deg);--PhoneInputCountryFlag-aspectRatio: 1.5;--PhoneInputCountryFlag-height: 1em;--PhoneInputCountryFlag-borderWidth: 1px;--PhoneInputCountryFlag-borderColor: rgba(0,0,0,.5);--PhoneInputCountryFlag-borderColor--focus: var(--PhoneInput-color--focus);--PhoneInputCountryFlag-backgroundColor--loading: rgba(0,0,0,.1)}.PhoneInput{display:flex;align-items:center}.PhoneInputInput{flex:1;min-width:0}.PhoneInputCountryIcon{width:calc(var(--PhoneInputCountryFlag-height) * var(--PhoneInputCountryFlag-aspectRatio));height:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--square{width:var(--PhoneInputCountryFlag-height)}.PhoneInputCountryIcon--border{background-color:var(--PhoneInputCountryFlag-backgroundColor--loading);box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor)}.PhoneInputCountryIconImg{display:block;width:100%;height:100%}.PhoneInputInternationalIconPhone{opacity:var(--PhoneInputInternationalIconPhone-opacity)}.PhoneInputInternationalIconGlobe{opacity:var(--PhoneInputInternationalIconGlobe-opacity)}.PhoneInputCountry{position:relative;align-self:stretch;display:flex;align-items:center;margin-right:var(--PhoneInputCountrySelect-marginRight)}.PhoneInputCountrySelect{position:absolute;top:0;left:0;height:100%;width:100%;z-index:1;border:0;opacity:0;cursor:pointer}.PhoneInputCountrySelect[disabled],.PhoneInputCountrySelect[readonly]{cursor:default}.PhoneInputCountrySelectArrow{display:block;content:"";width:var(--PhoneInputCountrySelectArrow-width);height:var(--PhoneInputCountrySelectArrow-width);margin-left:var(--PhoneInputCountrySelectArrow-marginLeft);border-style:solid;border-color:var(--PhoneInputCountrySelectArrow-color);border-top-width:0;border-bottom-width:var(--PhoneInputCountrySelectArrow-borderWidth);border-left-width:0;border-right-width:var(--PhoneInputCountrySelectArrow-borderWidth);transform:var(--PhoneInputCountrySelectArrow-transform);opacity:var(--PhoneInputCountrySelectArrow-opacity)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon+.PhoneInputCountrySelectArrow{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon--border{box-shadow:0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus),inset 0 0 0 var(--PhoneInputCountryFlag-borderWidth) var(--PhoneInputCountryFlag-borderColor--focus)}.PhoneInputCountrySelect:focus+.PhoneInputCountryIcon .PhoneInputInternationalIconGlobe{opacity:1;color:var(--PhoneInputCountrySelectArrow-color--focus)}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow,.react-datepicker__navigation-icon:before{border-color:#ccc;border-style:solid;border-width:3px 3px 0 0;content:"";display:block;height:9px;position:absolute;top:6px;width:9px}.react-datepicker-wrapper{display:inline-block;padding:0;border:0}.react-datepicker{font-family:Helvetica Neue,helvetica,arial,sans-serif;font-size:.8rem;background-color:#fff;color:#000;border:1px solid #aeaeae;border-radius:.3rem;display:inline-block;position:relative;line-height:initial}.react-datepicker--time-only .react-datepicker__time-container{border-left:0}.react-datepicker--time-only .react-datepicker__time,.react-datepicker--time-only .react-datepicker__time-box{border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker-popper{z-index:1;line-height:0}.react-datepicker-popper .react-datepicker__triangle{stroke:#aeaeae}.react-datepicker-popper[data-placement^=bottom] .react-datepicker__triangle{fill:#f0f0f0;color:#f0f0f0}.react-datepicker-popper[data-placement^=top] .react-datepicker__triangle{fill:#fff;color:#fff}.react-datepicker__header{text-align:center;background-color:#f0f0f0;border-bottom:1px solid #aeaeae;border-top-left-radius:.3rem;padding:8px 0;position:relative}.react-datepicker__header--time{padding-bottom:8px;padding-left:5px;padding-right:5px}.react-datepicker__header--time:not(.react-datepicker__header--time--only){border-top-left-radius:0}.react-datepicker__header:not(.react-datepicker__header--has-time-select){border-top-right-radius:.3rem}.react-datepicker__year-dropdown-container--select,.react-datepicker__month-dropdown-container--select,.react-datepicker__month-year-dropdown-container--select,.react-datepicker__year-dropdown-container--scroll,.react-datepicker__month-dropdown-container--scroll,.react-datepicker__month-year-dropdown-container--scroll{display:inline-block;margin:0 15px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{margin-top:0;color:#000;font-weight:700;font-size:.944rem}.react-datepicker-time__header{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.react-datepicker__navigation{align-items:center;background:none;display:flex;justify-content:center;text-align:center;cursor:pointer;position:absolute;top:2px;padding:0;border:none;z-index:1;height:32px;width:32px;text-indent:-999em;overflow:hidden}.react-datepicker__navigation--previous{left:2px}.react-datepicker__navigation--next{right:2px}.react-datepicker__navigation--next--with-time:not(.react-datepicker__navigation--next--with-today-button){right:85px}.react-datepicker__navigation--years{position:relative;top:0;display:block;margin-left:auto;margin-right:auto}.react-datepicker__navigation--years-previous{top:4px}.react-datepicker__navigation--years-upcoming{top:-4px}.react-datepicker__navigation:hover *:before{border-color:#a6a6a6}.react-datepicker__navigation-icon{position:relative;top:-1px;font-size:20px;width:0}.react-datepicker__navigation-icon--next{left:-2px}.react-datepicker__navigation-icon--next:before{transform:rotate(45deg);left:-7px}.react-datepicker__navigation-icon--previous{right:-2px}.react-datepicker__navigation-icon--previous:before{transform:rotate(225deg);right:-7px}.react-datepicker__month-container{float:left}.react-datepicker__year{margin:.4rem;text-align:center}.react-datepicker__year-wrapper{display:flex;flex-wrap:wrap;max-width:180px}.react-datepicker__year .react-datepicker__year-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__month{margin:.4rem;text-align:center}.react-datepicker__month .react-datepicker__month-text,.react-datepicker__month .react-datepicker__quarter-text{display:inline-block;width:4rem;margin:2px}.react-datepicker__input-time-container{clear:both;width:100%;float:left;margin:5px 0 10px 15px;text-align:left}.react-datepicker__input-time-container .react-datepicker-time__caption,.react-datepicker__input-time-container .react-datepicker-time__input-container{display:inline-block}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input{display:inline-block;margin-left:10px}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input{width:auto}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-inner-spin-button,.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__input input[type=time]{-moz-appearance:textfield}.react-datepicker__input-time-container .react-datepicker-time__input-container .react-datepicker-time__delimiter{margin-left:5px;display:inline-block}.react-datepicker__time-container{float:right;border-left:1px solid #aeaeae;width:85px}.react-datepicker__time-container--with-today-button{display:inline;border:1px solid #aeaeae;border-radius:.3rem;position:absolute;right:-87px;top:0}.react-datepicker__time-container .react-datepicker__time{position:relative;background:#fff;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box{width:85px;overflow-x:hidden;margin:0 auto;text-align:center;border-bottom-right-radius:.3rem}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list{list-style:none;margin:0;height:calc(195px + .85rem);overflow-y:scroll;padding-right:0;padding-left:0;width:100%;box-sizing:content-box}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item{height:30px;padding:5px 10px;white-space:nowrap}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item:hover{cursor:pointer;background-color:#f0f0f0}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected{background-color:#216ba5;color:#fff;font-weight:700}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--selected:hover{background-color:#216ba5}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled{color:#ccc}.react-datepicker__time-container .react-datepicker__time .react-datepicker__time-box ul.react-datepicker__time-list li.react-datepicker__time-list-item--disabled:hover{cursor:default;background-color:transparent}.react-datepicker__week-number{color:#ccc;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__week-number.react-datepicker__week-number--clickable{cursor:pointer}.react-datepicker__week-number.react-datepicker__week-number--clickable:not(.react-datepicker__week-number--selected,.react-datepicker__week-number--keyboard-selected):hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__week-number--selected{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__week-number--selected:hover{background-color:#1d5d90}.react-datepicker__week-number--keyboard-selected{border-radius:.3rem;background-color:#2a87d0;color:#fff}.react-datepicker__week-number--keyboard-selected:hover{background-color:#1d5d90}.react-datepicker__day-names{white-space:nowrap;margin-bottom:-8px}.react-datepicker__week{white-space:nowrap}.react-datepicker__day-name,.react-datepicker__day,.react-datepicker__time-name{color:#000;display:inline-block;width:1.7rem;line-height:1.7rem;text-align:center;margin:.166rem}.react-datepicker__day,.react-datepicker__month-text,.react-datepicker__quarter-text,.react-datepicker__year-text{cursor:pointer}.react-datepicker__day:hover,.react-datepicker__month-text:hover,.react-datepicker__quarter-text:hover,.react-datepicker__year-text:hover{border-radius:.3rem;background-color:#f0f0f0}.react-datepicker__day--today,.react-datepicker__month-text--today,.react-datepicker__quarter-text--today,.react-datepicker__year-text--today{font-weight:700}.react-datepicker__day--highlighted,.react-datepicker__month-text--highlighted,.react-datepicker__quarter-text--highlighted,.react-datepicker__year-text--highlighted{border-radius:.3rem;background-color:#3dcc4a;color:#fff}.react-datepicker__day--highlighted:hover,.react-datepicker__month-text--highlighted:hover,.react-datepicker__quarter-text--highlighted:hover,.react-datepicker__year-text--highlighted:hover{background-color:#32be3f}.react-datepicker__day--highlighted-custom-1,.react-datepicker__month-text--highlighted-custom-1,.react-datepicker__quarter-text--highlighted-custom-1,.react-datepicker__year-text--highlighted-custom-1{color:#f0f}.react-datepicker__day--highlighted-custom-2,.react-datepicker__month-text--highlighted-custom-2,.react-datepicker__quarter-text--highlighted-custom-2,.react-datepicker__year-text--highlighted-custom-2{color:green}.react-datepicker__day--holidays,.react-datepicker__month-text--holidays,.react-datepicker__quarter-text--holidays,.react-datepicker__year-text--holidays{position:relative;border-radius:.3rem;background-color:#ff6803;color:#fff}.react-datepicker__day--holidays .overlay,.react-datepicker__month-text--holidays .overlay,.react-datepicker__quarter-text--holidays .overlay,.react-datepicker__year-text--holidays .overlay{position:absolute;bottom:100%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__day--holidays:hover,.react-datepicker__month-text--holidays:hover,.react-datepicker__quarter-text--holidays:hover,.react-datepicker__year-text--holidays:hover{background-color:#cf5300}.react-datepicker__day--holidays:hover .overlay,.react-datepicker__month-text--holidays:hover .overlay,.react-datepicker__quarter-text--holidays:hover .overlay,.react-datepicker__year-text--holidays:hover .overlay{visibility:visible;opacity:1}.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range,.react-datepicker__month-text--selected,.react-datepicker__month-text--in-selecting-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--selected,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--selected,.react-datepicker__year-text--in-selecting-range,.react-datepicker__year-text--in-range{border-radius:.3rem;background-color:#216ba5;color:#fff}.react-datepicker__day--selected:hover,.react-datepicker__day--in-selecting-range:hover,.react-datepicker__day--in-range:hover,.react-datepicker__month-text--selected:hover,.react-datepicker__month-text--in-selecting-range:hover,.react-datepicker__month-text--in-range:hover,.react-datepicker__quarter-text--selected:hover,.react-datepicker__quarter-text--in-selecting-range:hover,.react-datepicker__quarter-text--in-range:hover,.react-datepicker__year-text--selected:hover,.react-datepicker__year-text--in-selecting-range:hover,.react-datepicker__year-text--in-range:hover{background-color:#1d5d90}.react-datepicker__day--keyboard-selected,.react-datepicker__month-text--keyboard-selected,.react-datepicker__quarter-text--keyboard-selected,.react-datepicker__year-text--keyboard-selected{border-radius:.3rem;background-color:#bad9f1;color:#000}.react-datepicker__day--keyboard-selected:hover,.react-datepicker__month-text--keyboard-selected:hover,.react-datepicker__quarter-text--keyboard-selected:hover,.react-datepicker__year-text--keyboard-selected:hover{background-color:#1d5d90}.react-datepicker__day--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__month-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__quarter-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range),.react-datepicker__year-text--in-selecting-range:not(.react-datepicker__day--in-range,.react-datepicker__month-text--in-range,.react-datepicker__quarter-text--in-range,.react-datepicker__year-text--in-range){background-color:#216ba580}.react-datepicker__month--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__day--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__month-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__quarter-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__month--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range),.react-datepicker__year--selecting-range .react-datepicker__year-text--in-range:not(.react-datepicker__day--in-selecting-range,.react-datepicker__month-text--in-selecting-range,.react-datepicker__quarter-text--in-selecting-range,.react-datepicker__year-text--in-selecting-range){background-color:#f0f0f0;color:#000}.react-datepicker__day--disabled,.react-datepicker__month-text--disabled,.react-datepicker__quarter-text--disabled,.react-datepicker__year-text--disabled{cursor:default;color:#ccc}.react-datepicker__day--disabled:hover,.react-datepicker__month-text--disabled:hover,.react-datepicker__quarter-text--disabled:hover,.react-datepicker__year-text--disabled:hover{background-color:transparent}.react-datepicker__day--disabled .overlay,.react-datepicker__month-text--disabled .overlay,.react-datepicker__quarter-text--disabled .overlay,.react-datepicker__year-text--disabled .overlay{position:absolute;bottom:70%;left:50%;transform:translate(-50%);background-color:#333;color:#fff;padding:4px;border-radius:4px;white-space:nowrap;visibility:hidden;opacity:0;transition:visibility 0s,opacity .3s ease-in-out}.react-datepicker__input-container{position:relative;display:inline-block;width:100%}.react-datepicker__input-container .react-datepicker__calendar-icon{position:absolute;padding:.5rem;box-sizing:content-box}.react-datepicker__view-calendar-icon input{padding:6px 10px 5px 25px}.react-datepicker__year-read-view,.react-datepicker__month-read-view,.react-datepicker__month-year-read-view{border:1px solid transparent;border-radius:.3rem;position:relative}.react-datepicker__year-read-view:hover,.react-datepicker__month-read-view:hover,.react-datepicker__month-year-read-view:hover{cursor:pointer}.react-datepicker__year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__year-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view:hover .react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__year-read-view--down-arrow,.react-datepicker__month-year-read-view:hover .react-datepicker__month-read-view--down-arrow{border-top-color:#b3b3b3}.react-datepicker__year-read-view--down-arrow,.react-datepicker__month-read-view--down-arrow,.react-datepicker__month-year-read-view--down-arrow{transform:rotate(135deg);right:-16px;top:0}.react-datepicker__year-dropdown,.react-datepicker__month-dropdown,.react-datepicker__month-year-dropdown{background-color:#f0f0f0;position:absolute;width:50%;left:25%;top:30px;z-index:1;text-align:center;border-radius:.3rem;border:1px solid #aeaeae}.react-datepicker__year-dropdown:hover,.react-datepicker__month-dropdown:hover,.react-datepicker__month-year-dropdown:hover{cursor:pointer}.react-datepicker__year-dropdown--scrollable,.react-datepicker__month-dropdown--scrollable,.react-datepicker__month-year-dropdown--scrollable{height:150px;overflow-y:scroll}.react-datepicker__year-option,.react-datepicker__month-option,.react-datepicker__month-year-option{line-height:20px;width:100%;display:block;margin-left:auto;margin-right:auto}.react-datepicker__year-option:first-of-type,.react-datepicker__month-option:first-of-type,.react-datepicker__month-year-option:first-of-type{border-top-left-radius:.3rem;border-top-right-radius:.3rem}.react-datepicker__year-option:last-of-type,.react-datepicker__month-option:last-of-type,.react-datepicker__month-year-option:last-of-type{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;border-bottom-left-radius:.3rem;border-bottom-right-radius:.3rem}.react-datepicker__year-option:hover,.react-datepicker__month-option:hover,.react-datepicker__month-year-option:hover{background-color:#ccc}.react-datepicker__year-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-option:hover .react-datepicker__navigation--years-upcoming,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-upcoming{border-bottom-color:#b3b3b3}.react-datepicker__year-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-option:hover .react-datepicker__navigation--years-previous,.react-datepicker__month-year-option:hover .react-datepicker__navigation--years-previous{border-top-color:#b3b3b3}.react-datepicker__year-option--selected,.react-datepicker__month-option--selected,.react-datepicker__month-year-option--selected{position:absolute;left:15px}.react-datepicker__close-icon{cursor:pointer;background-color:transparent;border:0;outline:0;padding:0 6px 0 0;position:absolute;top:0;right:0;height:100%;display:table-cell;vertical-align:middle}.react-datepicker__close-icon:after{cursor:pointer;background-color:#216ba5;color:#fff;border-radius:50%;height:16px;width:16px;padding:2px;font-size:12px;line-height:1;text-align:center;display:table-cell;vertical-align:middle;content:"×"}.react-datepicker__close-icon--disabled{cursor:default}.react-datepicker__close-icon--disabled:after{cursor:default;background-color:#ccc}.react-datepicker__today-button{background:#f0f0f0;border-top:1px solid #aeaeae;cursor:pointer;text-align:center;font-weight:700;padding:5px 0;clear:left}.react-datepicker__portal{position:fixed;width:100vw;height:100vh;background-color:#000c;left:0;top:0;justify-content:center;align-items:center;display:flex;z-index:2147483647}.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:3rem;line-height:3rem}@media(max-width:400px),(max-height:550px){.react-datepicker__portal .react-datepicker__day-name,.react-datepicker__portal .react-datepicker__day,.react-datepicker__portal .react-datepicker__time-name{width:2rem;line-height:2rem}}.react-datepicker__portal .react-datepicker__current-month,.react-datepicker__portal .react-datepicker-time__header{font-size:1.44rem}.react-datepicker__children-container{width:13.8rem;margin:.4rem;padding-right:.2rem;padding-left:.2rem;height:auto}.react-datepicker__aria-live{position:absolute;clip-path:circle(0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;width:1px;white-space:nowrap}.react-datepicker__calendar-icon{width:1em;height:1em;vertical-align:-.125em}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-Bold.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:600;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:500;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:400;font-style:normal}.bookings-page{min-height:100vh;background:#343434;display:flex;flex-direction:column;font-family:Gilroy,sans-serif}.bookings-nav{background:#2a2a2a;padding:2rem 4rem;display:flex;justify-content:center;align-items:center}.bookings-nav .logo{display:flex;justify-content:center;align-items:center;margin:0;width:100%;text-align:center}.bookings-nav .logo-svg{height:80px;width:auto}.bookings-container{flex:1;max-width:600px;margin:0 auto;padding:3rem 2rem;width:100%}.bookings-container h1{font-size:2.5rem;color:#d9ff00;font-weight:700;font-style:italic;margin-bottom:.5rem;text-align:center;font-family:Gilroy,sans-serif}.bookings-subtitle{color:#fff;text-align:center;margin-bottom:2rem;font-weight:500;opacity:.8}.bookings-form{background:#2a2a2a;border-radius:12px;padding:2.5rem;box-shadow:0 4px 20px #0000004d}.bookings-page .form-group label{font-size:.9rem;font-weight:600;color:#ccc;margin-bottom:.5rem}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23D9FF00' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.address-select{width:100%;padding:.875rem 2.5rem .875rem 1rem;border:2px solid #D9FF00;border-radius:8px;font-size:1rem;color:#fff;background:#343434;font-family:Gilroy,sans-serif;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23D9FF00' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;cursor:pointer}.bookings-footer{background:#2a2a2a;padding:1.5rem;text-align:center}.bookings-footer p{color:#888;font-size:.85rem;margin:0}@media(max-width:768px){.bookings-nav{padding:1rem 1.5rem}.bookings-nav .logo-svg{height:50px}.bookings-container{padding:2rem 1rem}.bookings-container h1{font-size:2rem}.bookings-form{padding:1.5rem}.form-row{grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}.package-options,.duration-options{grid-template-columns:1fr}.progress-steps{gap:.25rem}.step-label{font-size:.65rem}.step-number{width:28px;height:28px;font-size:.75rem}.form-actions{flex-direction:column}.back-btn{order:2}.next-btn,.submit-btn{order:1}}.welcome-modal p{font-size:1rem;color:#b0b0b0;line-height:1.6;margin:0 0 1rem}.mobile-time-picker-container{position:relative;width:100%}.mobile-time-input{width:100%;padding:12px 16px;font-size:16px;border:1px solid #ccc;border-radius:8px;background-color:#fff;cursor:pointer;-webkit-appearance:none;appearance:none}.mobile-time-input:focus{outline:none;border-color:#c8ff00;box-shadow:0 0 0 2px #c8ff0033}.time-picker-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:flex-end;justify-content:center;z-index:10000;animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.time-picker-modal{background-color:#fff;border-radius:16px 16px 0 0;width:100%;max-width:500px;max-height:80vh;animation:slideUp .3s ease-out;padding-bottom:env(safe-area-inset-bottom,0)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.time-picker-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee}.time-picker-title{font-size:17px;font-weight:600;color:#333}.time-picker-cancel,.time-picker-confirm{background:none;border:none;font-size:16px;padding:8px 4px;cursor:pointer;font-weight:500}.time-picker-cancel{color:#666}.time-picker-confirm{color:#4caf50;font-weight:600}.time-picker-wheels{display:flex;justify-content:center;align-items:center;padding:20px;gap:10px}.wheel-column{display:flex;flex-direction:column;align-items:center;flex:1;max-width:100px}.wheel-label{font-size:12px;color:#888;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.wheel-scroll{height:220px;overflow-y:scroll;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;position:relative;width:100%;background:linear-gradient(to bottom,#fff,#fff0 30% 70%,#fff)}.wheel-scroll::-webkit-scrollbar{display:none}.wheel-scroll{-ms-overflow-style:none;scrollbar-width:none}.wheel-padding{height:88px;flex-shrink:0}.wheel-item{height:44px;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:400;color:#999;scroll-snap-align:center;cursor:pointer;transition:all .15s ease;-webkit-user-select:none;user-select:none}.wheel-item.selected{font-size:28px;font-weight:600;color:#333}.wheel-item:active{background-color:#c8ff001a}.wheel-scroll:before{content:"";position:absolute;top:50%;left:0;right:0;height:44px;transform:translateY(-50%);background-color:#c8ff0026;border-top:2px solid #c8ff00;border-bottom:2px solid #c8ff00;pointer-events:none;z-index:1}.wheel-separator{font-size:32px;font-weight:600;color:#333;margin:0 5px;padding-top:20px}.time-picker-preview{text-align:center;padding:16px 20px;font-size:16px;color:#666;border-top:1px solid #eee}.time-picker-preview strong{color:#333;font-size:20px}@media(min-width:481px)and (max-width:768px){.time-picker-modal{border-radius:16px;margin:20px;max-height:70vh}.time-picker-overlay{align-items:center}}@supports (padding-bottom: env(safe-area-inset-bottom)){.time-picker-modal{padding-bottom:calc(env(safe-area-inset-bottom) + 10px)}}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-Bold.otf) format("opentype");font-weight:700;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:600;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:500;font-style:normal}@font-face{font-family:Gilroy;src:url(/Gilroy/Radomir%20Tinkov%20-%20Gilroy-SemiBold.otf) format("opentype");font-weight:400;font-style:normal}.bookings-new-page{min-height:100vh;background:#343434;display:flex;flex-direction:column;font-family:Gilroy,sans-serif}.bookings-new-nav{background:#2a2a2a;padding:2rem 4rem;display:flex;justify-content:center;align-items:center}.bookings-new-nav .logo{display:flex;justify-content:center;align-items:center;margin:0;width:100%;text-align:center}.bookings-new-nav .logo-svg{height:80px;width:auto}.bookings-new-container{flex:1;max-width:600px;margin:0 auto;padding:3rem 2rem;width:100%}.bookings-new-container h1{font-size:2.5rem;color:#d9ff00;font-weight:700;font-style:italic;margin-bottom:.5rem;text-align:center;font-family:Gilroy,sans-serif}.bookings-new-subtitle{color:#fff;text-align:center;margin-bottom:2rem;font-weight:500;opacity:.8}.progress-bar{margin-bottom:2rem}.progress-steps{display:flex;justify-content:space-between}.progress-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative}.progress-step:after{content:"";position:absolute;top:15px;left:50%;width:100%;height:2px;background:#555;z-index:0}.progress-step:last-child:after{display:none}.progress-step.active:after,.progress-step.completed:after{background:#d9ff00}.step-number{width:32px;height:32px;border-radius:50%;background:#555;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.85rem;position:relative;z-index:1;transition:all .3s}.progress-step.active .step-number,.progress-step.completed .step-number{background:#d9ff00;color:#343434}.step-label{font-size:.75rem;color:#fff;margin-top:.5rem;text-transform:uppercase;letter-spacing:.5px;opacity:.7}.progress-step.active .step-label{color:#d9ff00;font-weight:600;opacity:1}.bookings-new-form{background:#2a2a2a;border-radius:12px;padding:2.5rem;box-shadow:0 4px 20px #0000004d}.form-section{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-section h2{font-size:1.25rem;color:#fff;font-weight:600;margin-bottom:1.5rem;padding-bottom:.75rem;border-bottom:2px solid #D9FF00;font-family:Gilroy,sans-serif}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-group.fade-in{animation:fadeIn .3s ease}.bookings-new-page .form-group label{font-size:.9rem;font-weight:600;color:#ccc;margin-bottom:.5rem}.form-group input,.form-group select{padding:.875rem 1rem;border:2px solid #555555;border-radius:8px;font-size:1rem;color:#fff;background:#343434;transition:border-color .3s;width:100%;font-family:Gilroy,sans-serif}.form-group select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23D9FF00' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.form-group select:hover{border-color:#d9ff00}.form-group input:focus,.form-group select:focus{outline:none;border-color:#d9ff00}.form-group input::placeholder{color:#888}.phone-input{display:flex;align-items:center;background:#343434;border:2px solid #555555;border-radius:8px;transition:border-color .3s}.phone-input:focus-within{border-color:#d9ff00}.phone-input .PhoneInputCountry{padding:.875rem .75rem;background:#3a3a3a;border-right:1px solid #555555;border-radius:6px 0 0 6px}.phone-input .PhoneInputCountryIcon{width:24px;height:18px;border-radius:2px;overflow:hidden}.phone-input .PhoneInputCountrySelectArrow{color:#d9ff00;margin-left:.5rem}.phone-input .PhoneInputInput{flex:1;padding:.875rem 1rem;background:transparent;border:none;outline:none;color:#fff;font-size:1rem;font-family:Gilroy,sans-serif}.phone-input .PhoneInputInput::placeholder{color:#888}.phone-input.invalid{border-color:#f44}.required{color:#f44;font-weight:600;margin-left:2px}.input-error{border-color:#f44!important}.input-error:focus{border-color:#f44!important;box-shadow:0 0 0 2px #f443}.field-error{color:#f44;font-size:.85rem;margin-top:.5rem;display:block}.date-info{color:#d9ff00;font-size:.85rem;margin-top:.5rem;margin-bottom:0}.label-with-help{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem}.label-with-help label{margin-bottom:0}.help-icon-wrapper{position:relative}.help-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#555;color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s}.help-icon:hover{background:#d9ff00;color:#1a1a1a}.help-tooltip{position:absolute;right:0;top:100%;margin-top:.5rem;width:280px;padding:.75rem 1rem;background:#2a2a2a;border:1px solid #555555;border-radius:8px;font-size:.85rem;color:#ccc;line-height:1.5;z-index:100;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;box-shadow:0 4px 12px #0000004d}.help-tooltip a{color:#d9ff00;text-decoration:none}.help-tooltip a:hover{text-decoration:underline}.help-icon-wrapper:hover .help-tooltip{opacity:1;visibility:visible}.PhoneInputCountrySelect{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.PhoneInputCountrySelect option{background:#343434;color:#fff;padding:.5rem}.registration-input-group{display:flex;gap:.75rem}.registration-input-group input{flex:1}.validate-btn{padding:.875rem 1.25rem;background:#d9ff00;color:#343434;border:none;border-radius:8px;font-family:Gilroy,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.validate-btn:hover:not(:disabled){background:#c4e600;transform:translateY(-1px)}.validate-btn:disabled{opacity:.5;cursor:not-allowed}.dvla-success{display:block;color:#22c55e;font-size:.85rem;margin-top:.5rem;font-weight:500}.dvla-error{display:block;color:#ff6b6b;font-size:.85rem;margin-top:.5rem;font-weight:500}.postcode-lookup-row{display:flex;gap:.75rem}.postcode-lookup-row input{flex:1}.find-address-btn{padding:.875rem 1.25rem;background:#d9ff00;color:#343434;border:none;border-radius:8px;font-family:Gilroy,sans-serif;font-size:.95rem;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.find-address-btn:hover:not(:disabled){background:#c4e600;transform:translateY(-1px)}.find-address-btn:disabled{opacity:.5;cursor:not-allowed}.address-select{width:100%;padding:.875rem 2.5rem .875rem 1rem;border:2px solid #D9FF00;border-radius:8px;font-size:1rem;color:#fff;background:#343434;font-family:Gilroy,sans-serif;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23D9FF00' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;cursor:pointer}.address-select:hover{border-color:#c4e600}.address-select:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 3px #d9ff0033}.address-select option{padding:.5rem;background:#343434;color:#fff}.error-text{display:block;color:#ff6b6b;font-size:.85rem;margin-top:.5rem;font-weight:500}.manual-entry-link{background:none;border:none;color:#d9ff00;font-size:.85rem;font-weight:500;cursor:pointer;text-decoration:underline;padding:0;font-family:Gilroy,sans-serif;display:block}.manual-entry-link:hover{color:#fff}.manual-entry-header{margin-bottom:1.5rem}.back-to-lookup-link{background:none;border:none;color:#d9ff00;font-size:.9rem;font-weight:500;cursor:pointer;padding:0;font-family:Gilroy,sans-serif;display:flex;align-items:center;gap:.25rem}.back-to-lookup-link:hover{color:#fff}.readonly-input{background:#3a3a3a!important;border-color:#22c55e!important;cursor:default}.form-group select option{padding:.5rem;background:#343434;color:#fff}.date-picker-input{width:100%;padding:.875rem 1rem;border:2px solid #555555;border-radius:8px;font-size:1rem;color:#fff;background:#343434;transition:border-color .3s;font-family:Gilroy,sans-serif}.date-picker-input:focus{outline:none;border-color:#d9ff00}.react-datepicker-wrapper{width:100%}.react-datepicker{font-family:Gilroy,sans-serif;border:2px solid #555555;border-radius:8px;box-shadow:0 4px 20px #0000004d;background:#343434}.react-datepicker__header{background:#2a2a2a;border-bottom:none;border-radius:6px 6px 0 0;padding-top:1rem}.react-datepicker__current-month,.react-datepicker__current-month--hasYearDropdown,.react-datepicker__current-month--hasMonthDropdown{color:#d9ff00!important;font-weight:600}.react-datepicker__day-names{background:#343434!important;padding:.5rem 0}.react-datepicker__day-name{color:#d9ff00!important;font-weight:900}.react-datepicker__month{background:#343434}.react-datepicker__day{border-radius:50%;transition:all .2s;color:#fff}.react-datepicker__day:hover{background:#d9ff004d;border-radius:50%}.react-datepicker__day--selected,.react-datepicker__day--keyboard-selected{background:#d9ff00!important;color:#343434!important;font-weight:600}.react-datepicker__day--disabled{color:#666}.react-datepicker__navigation-icon:before{border-color:#d9ff00}.react-datepicker__triangle{display:none}.fixed-height-calendar .react-datepicker__month{min-height:200px}.fixed-height-calendar .react-datepicker__month-container{min-height:280px}.flight-slots{display:flex;flex-direction:column;gap:.75rem}.flight-slot{cursor:pointer}.flight-slot input{display:none}.slot-card{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border:2px solid #555555;border-radius:8px;transition:all .3s;background:#343434}.flight-slot input:checked+.slot-card{border-color:#d9ff00;background:#d9ff001a}.slot-time{font-weight:700;font-size:1.1rem;color:#fff}.slot-label{color:#bbb;font-size:.9rem;font-weight:500}.section-subtitle{font-size:1.1rem;color:#d9ff00;margin:1.5rem 0 1rem;font-weight:600;font-family:Gilroy,sans-serif}.section-subtitle:first-of-type{margin-top:0}.section-info{color:#d9ff00;font-size:.95rem;margin:-.5rem 0 1.5rem;font-weight:500;font-family:Gilroy,sans-serif}.return-flight-info{color:#bbb;font-size:.9rem;margin:-.5rem 0 1rem;font-style:italic}.no-flights-message{color:#ff6b6b;font-size:.9rem;padding:1rem;background:#ff6b6b1a;border-radius:8px;text-align:center}.blocked-date-message{background:#fff8e1;border:1px solid #ffc107;border-left:4px solid #ff9800;border-radius:8px;padding:12px 16px;margin-top:10px}.blocked-date-message p{margin:0;color:#e65100;font-size:.95rem;font-weight:500}.loading-message{color:#d9ff00;font-size:.9rem;padding:1rem;background:#d9ff001a;border-radius:8px;text-align:center}.fully-booked-banner{display:flex;gap:1rem;padding:1.25rem;background:#ff9f4026;border:1px solid rgba(255,159,64,.4);border-radius:12px;color:#ffb366}.fully-booked-banner svg{flex-shrink:0;margin-top:2px}.fully-booked-content{display:flex;flex-direction:column;gap:.5rem}.fully-booked-content strong{font-size:1rem;color:#ffcc80}.fully-booked-content p{font-size:.9rem;line-height:1.5;margin:0;color:#ccc}.fully-booked-content .contact-details{display:flex;flex-wrap:wrap;gap:.5rem 1.5rem;margin-top:.25rem}.fully-booked-content .contact-link{color:#d9ff00;text-decoration:none;font-weight:500;font-size:.9rem}.fully-booked-content .contact-link:hover{text-decoration:underline}.dropoff-slots{display:flex;flex-direction:column;gap:.75rem}.dropoff-slot{cursor:pointer}.dropoff-slot input{display:none}.dropoff-slot input:checked+.slot-card{border-color:#d9ff00;background:#d9ff001a}.slot-info{display:flex;justify-content:space-between;align-items:center;flex:1;gap:1rem}.slot-info .slot-time{flex:1}.slot-info .slot-label{flex:1;text-align:center}.slot-card.last-slot{border-color:#ff9500}.last-slot-badge{padding:.3rem .5rem;background:#ff9500;color:#1a1a1a;font-size:.65rem;font-weight:600;border-radius:3px;text-transform:uppercase;letter-spacing:.3px;text-align:center;white-space:nowrap;flex-shrink:0;margin-left:1rem}@media(max-width:480px){.slot-card.last-slot{flex-direction:column}.slot-card.last-slot .slot-info{width:100%}.last-slot-badge{margin-top:.5rem;margin-left:0}}.dropoff-slot input:checked+.slot-card.last-slot{border-color:#d9ff00;background:#d9ff001a}.pickup-times{display:flex;flex-direction:column;gap:.75rem}.pickup-time{cursor:pointer}.pickup-time input{display:none}.time-card{padding:1rem 1.25rem;border:2px solid #555555;border-radius:8px;transition:all .3s;text-align:center;background:#343434}.pickup-time input:checked+.time-card{border-color:#d9ff00;background:#d9ff001a}.time-card span{font-weight:500;color:#fff}.package-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}.package-option{cursor:pointer}.package-option input{display:none}.package-card{display:flex;flex-direction:column;padding:1.5rem;border:2px solid #555555;border-radius:8px;transition:all .3s;height:100%;background:#343434}.package-option input:checked+.package-card{border-color:#d9ff00;background:#d9ff001a}.package-label{font-size:.75rem;font-weight:600;color:#d9ff00;letter-spacing:1px;margin-bottom:.5rem}.package-price{font-size:2.5rem;font-weight:700;color:#fff;line-height:1}.package-period{font-size:.9rem;color:#bbb;margin-bottom:1rem}.package-features{list-style:none;padding:0;margin:0}.package-features li{font-size:.85rem;color:#bbb;padding:.35rem 0 .35rem 1.25rem;position:relative}.package-features li:before{content:"✓";position:absolute;left:0;color:#d9ff00;font-weight:700}.booking-summary{background:#343434;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem;border:1px solid #555555}.booking-summary h3{font-size:1rem;color:#fff;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid #555555;font-family:Gilroy,sans-serif}.summary-item{display:flex;justify-content:space-between;padding:.5rem 0;font-size:.9rem;gap:1rem}.summary-item span:first-child{color:#bbb;flex-shrink:0}.summary-item span:last-child{color:#fff;font-weight:500;text-align:right;word-break:break-word}.summary-item.total{border-top:2px solid #D9FF00;margin-top:.5rem;padding-top:1rem;font-size:1.1rem}.summary-item.total span:last-child{font-weight:700;color:#d9ff00}.summary-item.subtotal{border-top:1px solid #555555;margin-top:.5rem;padding-top:.75rem}.summary-item.discount span:last-child{color:#4caf50}.discount-amount{color:#4caf50!important}.promo-code-section{background:#343434;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #555555}.promo-code-section h4{font-size:.95rem;color:#fff;margin:0 0 1rem;font-family:Gilroy,sans-serif}.promo-code-input{display:flex;gap:.75rem}.promo-code-input input{flex:1;padding:.75rem 1rem;border:1px solid #555555;border-radius:6px;background:#2a2a2a;color:#fff;font-size:.9rem;font-family:Gilroy,sans-serif;text-transform:uppercase}.promo-code-input input::placeholder{text-transform:none;color:#888}.promo-code-input input:focus{outline:none;border-color:#d9ff00}.promo-apply-btn{padding:.75rem 1.5rem;background:#d9ff00;color:#1a1a1a;border:none;border-radius:6px;font-weight:600;font-family:Gilroy,sans-serif;cursor:pointer;transition:background .2s,opacity .2s}.promo-apply-btn:hover:not(:disabled){background:#c4e600}.promo-apply-btn:disabled{opacity:.5;cursor:not-allowed}.promo-code-applied{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.promo-badge{background:#d9ff00;color:#1a1a1a;padding:.4rem .75rem;border-radius:4px;font-weight:600;font-size:.85rem;font-family:Gilroy,sans-serif}.promo-success{color:#d9ff00!important;font-size:1rem;font-weight:600}.promo-remove{background:transparent;border:1px solid #666666;color:#bbb;padding:.35rem .75rem;border-radius:4px;font-size:.85rem;cursor:pointer;transition:all .2s;margin-left:auto}.promo-remove:hover{border-color:#f55;color:#f55}.promo-error{color:#f55;font-size:.85rem;margin:.75rem 0 0}.stripe-payment-container{background:#2a2a2a;border:1px solid #555555;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.stripe-payment-container .booking-reference{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#343434;border-radius:8px;margin-bottom:1.5rem}.stripe-payment-container .booking-reference span{color:#bbb;font-size:.9rem}.stripe-payment-container .booking-reference strong{color:#d9ff00;font-family:Gilroy,monospace;font-size:1.1rem;letter-spacing:1px}.stripe-form{display:flex;flex-direction:column;gap:1.5rem}.stripe-error{background:#ff6b6b1a;border:1px solid #ff6b6b;color:#ff6b6b;padding:1rem;border-radius:8px;font-size:.9rem}.stripe-pay-btn{width:100%;padding:1rem 2rem;background:#d9ff00;color:#000;border:none;border-radius:8px;font-family:Gilroy,sans-serif;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s ease}.stripe-pay-btn:hover:not(:disabled){background:#c4e600;transform:translateY(-2px)}.stripe-pay-btn:disabled{opacity:.6;cursor:not-allowed}.stripe-security-note{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-top:1rem;color:#888;font-size:.85rem}.stripe-security-note svg{color:#22c55e}.stripe-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem;gap:1rem}.stripe-loading .spinner{width:40px;height:40px;border:3px solid #555555;border-top-color:#d9ff00;border-radius:50%;animation:spin 1s linear infinite}.stripe-loading p{color:#bbb;font-size:.95rem}.stripe-error-container{text-align:center;padding:2rem}.stripe-error-container .error-message{color:#ff6b6b;margin-bottom:1rem}.stripe-error-container .retry-btn{padding:.75rem 1.5rem;background:#343434;color:#fff;border:1px solid #555555;border-radius:8px;cursor:pointer;transition:all .2s ease}.stripe-error-container .retry-btn:hover{background:#444;border-color:#d9ff00}.stripe-payment-container.free-booking{text-align:center}.free-booking-summary{padding:1.5rem;background:#343434;border-radius:8px;margin-bottom:1.5rem}.free-booking-badge{display:inline-block;background:#22c55e;color:#000;padding:.25rem .75rem;border-radius:20px;font-size:.85rem;font-weight:700;margin-bottom:.75rem}.free-booking-summary h3{color:#d9ff00;margin:0 0 1rem;font-size:1.25rem}.price-breakdown{text-align:left;max-width:280px;margin:0 auto}.price-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #444}.price-row:last-child{border-bottom:none;padding-top:.75rem;margin-top:.25rem;border-top:2px solid #555}.price-row.original span:first-child,.price-row.discount span:first-child{color:#999}.price-row .strikethrough{text-decoration:line-through;color:#888}.price-row .discount-amount{color:#22c55e;font-weight:600}.price-row.total span{font-weight:700;font-size:1.1rem}.price-row .free-amount{color:#d9ff00}.free-booking-btn{background:#22c55e!important;color:#fff!important}.free-booking-btn:hover:not(:disabled){background:#1ea550!important}.payment-success{text-align:center;padding:2rem;background:#2a2a2a;border-radius:12px;margin-bottom:1.5rem}.payment-success .success-icon{width:60px;height:60px;background:#22c55e;color:#fff;font-size:2rem;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 1rem}.payment-success h3{color:#22c55e;margin-bottom:1rem;font-family:Gilroy,sans-serif}.payment-success p{color:#bbb;margin-bottom:.5rem}.payment-success .spam-notice{font-size:.85rem;color:#888;font-style:italic;margin-top:.25rem}.booking-reference-display{font-family:Gilroy,monospace;font-size:1.5rem;font-weight:700;color:#d9ff00;background:#343434;padding:1rem 2rem;border-radius:8px;margin:1rem 0;letter-spacing:2px}.terms-required{text-align:center;padding:2rem;background:#343434;border-radius:8px;margin-bottom:1.5rem}.terms-required p{color:#bbb;margin:0}.stripe-placeholder{background:#3a3a3a;border:2px dashed #555555;border-radius:8px;padding:2rem;text-align:center;margin-bottom:1.5rem}.stripe-placeholder p{color:#bbb;margin:0}.stripe-placeholder .stripe-note{font-size:.85rem;margin-top:.5rem;opacity:.7}.checkbox-label{display:flex;align-items:flex-start;gap:.75rem;cursor:pointer}.checkbox-label input{margin-top:.25rem;width:18px;height:18px;accent-color:#D9FF00}.checkbox-label span{font-size:.9rem;color:#bbb;line-height:1.5}.checkbox-label a{color:#d9ff00;font-weight:500}.checkbox-label a:hover{color:#fff}.checkbox-label.disabled{opacity:.5;cursor:not-allowed}.checkbox-label.disabled input{cursor:not-allowed}.field-hint{font-size:.85rem;color:#666;margin-top:.25rem;margin-bottom:0}.checkbox-group .field-hint{font-size:.85rem;color:#ff9800;margin-top:.5rem;margin-left:0}.form-actions{display:flex;gap:1rem;margin-top:1.5rem}.back-btn{flex:0 0 auto;padding:1rem 1.5rem;background:transparent;border:2px solid #555555;border-radius:8px;font-size:1rem;font-weight:600;color:#fff;cursor:pointer;transition:all .2s;font-family:Gilroy,sans-serif}.back-btn:hover{border-color:#d9ff00;color:#d9ff00}.next-btn,.submit-btn{flex:1;padding:1rem 1.5rem;background:#d9ff00;border:none;border-radius:8px;font-size:1rem;font-weight:700;color:#343434;cursor:pointer;transition:all .2s;font-family:Gilroy,sans-serif}.next-btn:hover:not(:disabled),.submit-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 15px #d9ff004d}.next-btn:disabled,.submit-btn:disabled{opacity:.5;cursor:not-allowed}.bookings-new-footer{background:#2a2a2a;padding:1.5rem;text-align:center}.footer-logo-small{height:35px;width:auto;margin-bottom:1rem}.bookings-new-footer p{color:#888;font-size:.85rem;margin:0}.duration-options{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.duration-option{cursor:pointer}.duration-option input{display:none}.duration-card{display:flex;flex-direction:column;align-items:center;padding:1.5rem 1rem;border:2px solid #555555;border-radius:8px;transition:all .3s;background:#343434;text-align:center}.duration-option input:checked+.duration-card,.duration-card.selected{border-color:#d9ff00;background:#d9ff001a}.duration-label{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:.5rem}.duration-date{font-size:.85rem;color:#bbb;margin-bottom:.75rem}.duration-price{font-size:1.1rem;font-weight:600;color:#d9ff00}.duration-price.loading{color:#888;font-style:italic}.return-date-hint{font-size:.9rem;color:#aaa;margin-bottom:1rem}.return-date-picker{display:flex;flex-direction:column;gap:1rem}.return-date-input{width:100%;padding:1rem;font-size:1.1rem;background:#2a2a2a;border:2px solid #444444;border-radius:8px;color:#fff;cursor:pointer;transition:border-color .2s ease}.return-date-input:hover{border-color:#666}.return-date-input:focus{outline:none;border-color:#d9ff00}.return-date-input::-webkit-calendar-picker-indicator{filter:invert(1);cursor:pointer}.return-date-summary{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;background:#d9ff001a;border:2px solid #D9FF00;border-radius:8px;text-align:center}.return-date-formatted{font-size:1.1rem;font-weight:600;color:#fff}.trip-duration-display{font-size:.9rem;color:#aaa}.return-date-price{font-size:1.25rem;font-weight:700;color:#d9ff00;margin-top:.5rem}.return-date-price.loading{color:#888;font-style:italic;font-weight:400}.package-summary{margin-bottom:1.5rem}.package-summary .package-card{text-align:center;padding:2rem;margin-bottom:1.5rem}.package-summary .package-card.selected{border-color:#d9ff00;background:#d9ff001a}.package-summary .package-label{display:block;margin-bottom:.5rem}.package-summary .package-price{display:block}.package-summary .package-period{display:block;margin-bottom:.5rem}.price-badge{display:inline-block;padding:.35rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.price-badge.early{background:#22c55e;color:#fff}.price-badge.standard{background:#3b82f6;color:#fff}.price-badge.late{background:#f59e0b;color:#343434}.price-tier-info{color:#888;font-size:.85rem;margin:.5rem 0 1rem}.pricing-tiers-info{background:#343434;border-radius:8px;padding:1.25rem;border:1px solid #555555}.pricing-tiers-info h4{font-size:.85rem;color:#bbb;font-weight:500;margin:0 0 1rem;text-align:center}.tier-list{display:flex;flex-direction:column;gap:.5rem}.tier{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-radius:6px;background:#2a2a2a}.tier.active{background:#d9ff0026;border:1px solid #D9FF00}.tier-label{font-size:.85rem;color:#bbb}.tier.active .tier-label{color:#fff;font-weight:500}.tier-price{font-size:.9rem;font-weight:600;color:#888}.tier.active .tier-price{color:#d9ff00}@media(max-width:768px){.bookings-new-nav{padding:1rem 1.5rem}.bookings-new-nav .logo-svg{height:50px}.bookings-new-container{padding:2rem 1rem}.bookings-new-container h1{font-size:2rem}.bookings-new-form{padding:1.5rem}.form-row{grid-template-columns:1fr;gap:1.5rem;margin-bottom:1.5rem}.package-options,.duration-options{grid-template-columns:1fr}.progress-steps{gap:.25rem}.step-label{font-size:.65rem}.step-number{width:28px;height:28px;font-size:.75rem}.form-actions{flex-direction:column}.back-btn{order:2}.next-btn,.submit-btn{order:1}}.welcome-modal-overlay{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.welcome-modal{background:#2a2a2a;border-radius:16px;padding:2.5rem;max-width:480px;width:100%;text-align:center;box-shadow:0 20px 60px #00000080;animation:modalFadeIn .3s ease-out}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.welcome-modal-icon{margin-bottom:1.5rem}.welcome-modal-icon img{width:64px;height:64px;object-fit:contain}.welcome-modal h2{font-size:1.75rem;color:#fff;margin:0 0 1.25rem;font-weight:700}.welcome-modal p{font-size:1rem;color:#b0b0b0;line-height:1.6;margin:0 0 1rem;text-align:left}.welcome-modal p:last-of-type{margin-bottom:1.5rem}.welcome-modal-options-intro{margin-bottom:.5rem!important}.welcome-modal-options{margin:0 0 1rem;padding-left:1.5rem;color:#b0b0b0;font-size:1rem;line-height:1.8;text-align:left}.welcome-modal-options li{margin-bottom:.25rem}.welcome-modal-contact{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1.5rem}.welcome-modal-contact .contact-link{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;color:#d9ff00;text-decoration:none;font-size:1rem;font-weight:600;transition:color .2s}.welcome-modal-contact .contact-link:hover{color:#e8ff4d}.welcome-modal-contact .contact-link svg{flex-shrink:0}.welcome-modal-actions{display:flex;flex-direction:column;gap:.75rem}.welcome-modal-btn{background:#d9ff00;color:#1a1a1a;border:none;padding:1rem 2.5rem;font-size:1.1rem;font-weight:700;border-radius:8px;cursor:pointer;transition:all .2s;font-family:Gilroy,sans-serif}.welcome-modal-btn:hover{background:#e8ff4d;transform:translateY(-2px)}.welcome-modal-back-btn{background:transparent;color:#999;border:none;padding:.75rem 1.5rem;font-size:.95rem;font-weight:500;cursor:pointer;transition:color .2s;font-family:Gilroy,sans-serif}.welcome-modal-back-btn:hover{color:#fff}@media(max-width:480px){.welcome-modal{padding:1.5rem}.welcome-modal h2{font-size:1.5rem}.welcome-modal p{font-size:.95rem}.welcome-modal-btn{width:100%;padding:1rem}}.time-override-link{background:none;border:none;color:#d9ff00;font-size:.85rem;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:2px}.time-override-link:hover{color:#fff}.time-override-form{background:#343434;padding:1rem;border-radius:8px;border:1px solid #555555}.time-override-hint{font-size:.85rem;color:#999;margin-bottom:.75rem}.time-override-input-row{display:flex;gap:.5rem;align-items:flex-start}.time-override-input-row input{flex:1;max-width:120px}.time-override-btn{background:#d9ff00;color:#343434;border:none;padding:.75rem 1rem;border-radius:6px;font-weight:600;cursor:pointer;transition:all .3s}.time-override-btn:hover:not(:disabled){background:#fff}.time-override-btn:disabled{opacity:.5;cursor:not-allowed}.time-override-cancel{background:transparent;color:#999;border:1px solid #555555;padding:.75rem 1rem;border-radius:6px;cursor:pointer;transition:all .3s}.time-override-cancel:hover{color:#fff;border-color:#fff}.time-override-success{display:block;margin-top:.5rem;color:#4caf50;font-size:.85rem}.manual-entry-form{background:#343434;padding:1.5rem;border-radius:8px;border:1px solid #555555}.manual-entry-form .manual-entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.manual-entry-form h4{margin:0;color:#d9ff00;font-weight:600}.manual-entry-form .back-to-lookup-link{background:none;border:none;color:#999;font-size:.85rem;cursor:pointer;padding:0;text-decoration:none}.manual-entry-form .back-to-lookup-link:hover{color:#d9ff00}.manual-entry-note{font-size:.85rem;color:#999;margin-top:1rem;padding:.75rem;background:#d9ff001a;border-radius:6px;border-left:3px solid #D9FF00}@media(max-width:480px){.time-override-input-row{flex-direction:column}.time-override-input-row input{max-width:none;width:100%}.manual-entry-form .manual-entry-header{flex-direction:column;align-items:flex-start;gap:.5rem}}.heard-about-us-section{background:#343434;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #555555}.heard-about-us-section h4{font-size:.95rem;color:#fff;margin:0 0 1rem;font-family:Gilroy,sans-serif}.heard-about-us-section h4 .required{color:#d9ff00}.heard-about-us-select select{width:100%;padding:.75rem 1rem;border:1px solid #555555;border-radius:6px;background:#2a2a2a;color:#fff;font-size:.9rem;font-family:Gilroy,sans-serif;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23999999' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center}.heard-about-us-select select:focus{outline:none;border-color:#d9ff00}.heard-about-us-detail{margin-top:.75rem}.heard-about-us-detail input{width:100%;padding:.75rem 1rem;border:1px solid #555555;border-radius:6px;background:#2a2a2a;color:#fff;font-size:.9rem;font-family:Gilroy,sans-serif;box-sizing:border-box}.heard-about-us-detail input:focus{outline:none;border-color:#d9ff00}.heard-about-us-detail input::placeholder{color:#888}.heard-about-us-submit{margin-top:1rem;width:100%;padding:.875rem 1.5rem;background:#d9ff00;border:none;border-radius:6px;font-size:.95rem;font-weight:600;color:#343434;cursor:pointer;transition:all .2s;font-family:Gilroy,sans-serif}.heard-about-us-submit:hover:not(:disabled){background:#e5ff33;transform:translateY(-1px)}.heard-about-us-submit:disabled{background:#555;color:#888;cursor:not-allowed}.heard-about-us-loading{background:#343434;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem;border:1px solid #555555;text-align:center}.heard-about-us-loading p{color:#999;margin:0}.same-day-notice{background:#3a2a1a;border:1px solid #d4a03a;border-radius:8px;padding:1rem 1.25rem;color:#f0d080}.same-day-notice strong{display:block;margin-bottom:.5rem;color:#f0d080}.same-day-notice p{margin:0;font-size:.9rem;color:#ccaa60}.same-day-notice a{color:#d9ff00;text-decoration:none}.same-day-notice a:hover{text-decoration:underline}.legal-page{min-height:100vh;background:var(--light-gray);display:flex;flex-direction:column}.legal-nav{background:var(--dark-gray);padding:2rem 4rem;display:flex;justify-content:center;align-items:center}.legal-nav .logo{display:flex;justify-content:center;align-items:center;margin:0;width:100%;text-align:center}.legal-nav .logo-svg{height:80px;width:auto}.legal-container{flex:1;max-width:800px;margin:0 auto;padding:3rem 2rem;width:100%}.legal-container h1{font-size:2.5rem;color:var(--black);font-weight:700;font-style:italic;margin-bottom:.5rem;text-align:center}.legal-subtitle{color:var(--dark-gray);text-align:center;margin-bottom:2rem;font-weight:500}.legal-content{background:var(--white);border-radius:16px;padding:3rem;box-shadow:0 2px 8px #0000000d}.legal-content h2{font-size:1.5rem;color:var(--black);font-weight:700;margin:2rem 0 1rem}.legal-content h2:first-child{margin-top:0}.legal-content h3{font-size:1.15rem;color:var(--black);font-weight:600;margin:1.5rem 0 .75rem}.legal-content p{color:var(--dark-gray);line-height:1.7;margin-bottom:1rem}.legal-content ul,.legal-content ol{color:var(--dark-gray);line-height:1.7;margin-bottom:1rem;padding-left:1.5rem}.legal-content li{margin-bottom:.5rem}.legal-content a{color:var(--lime-green);text-decoration:none}.legal-content a:hover{text-decoration:underline}.legal-content table{width:100%;border-collapse:collapse;margin:1.5rem 0}.legal-content th,.legal-content td{border:1px solid #e0e0e0;padding:.75rem 1rem;text-align:left}.legal-content th{background:var(--light-gray);font-weight:600;color:var(--black)}.legal-content td{color:var(--dark-gray)}.legal-back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--dark-gray);text-decoration:none;margin-bottom:2rem;font-weight:500;transition:color .2s;background:none;border:none;padding:0;font-size:1rem;cursor:pointer;font-family:inherit}.legal-back-link:hover{color:var(--black)}.legal-footer{text-align:center;margin-top:2rem;padding-top:2rem;border-top:1px solid #e0e0e0;color:var(--dark-gray);font-size:.9rem}@media(max-width:768px){.legal-nav{padding:1.5rem 1rem}.legal-nav .logo-svg{height:60px}.legal-container{padding:2rem 1rem}.legal-container h1{font-size:1.75rem}.legal-content{padding:1.5rem;border-radius:12px}.legal-content h2{font-size:1.25rem}.legal-content h3{font-size:1.1rem}.legal-content table{font-size:.85rem}.legal-content th,.legal-content td{padding:.5rem}}.faq-container{max-width:900px}.faq-content{padding:2rem 3rem}.faq-intro{margin-bottom:1rem;line-height:1.7}.faq-contact{background:var(--light-gray);padding:1rem 1.5rem;border-radius:8px;margin-bottom:2rem}.faq-sections{margin-top:2rem}.faq-section{border:1px solid #e0e0e0;border-radius:8px;margin-bottom:1rem;overflow:hidden}.faq-section-header{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;background:var(--light-gray);cursor:pointer;transition:background .2s}.faq-section-header:hover{background:#e8e8e8}.faq-section-header h2{font-size:1.1rem;margin:0;color:var(--black);font-weight:600}.faq-section-arrow{font-size:1.5rem;color:var(--dark-gray);transition:transform .3s}.faq-section.open .faq-section-arrow{transform:rotate(90deg)}.faq-section-content{max-height:0;overflow:hidden;transition:max-height .3s ease-out}.faq-section.open .faq-section-content{max-height:2000px}.faq-section-content .faq-item{border-top:1px solid #e0e0e0}.faq-section-content .faq-question{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;cursor:pointer;transition:background .2s}.faq-section-content .faq-question:hover{background:#fafafa}.faq-section-content .faq-question span:first-child{font-weight:500;color:var(--black);padding-right:1rem}.faq-section-content .faq-arrow{font-size:1.25rem;color:var(--dark-gray);transition:transform .3s;flex-shrink:0}.faq-section-content .faq-item.open .faq-arrow{transform:rotate(90deg)}.faq-section-content .faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease-out;background:#fafafa}.faq-section-content .faq-item.open .faq-answer{max-height:500px}.faq-section-content .faq-answer p{padding:1rem 1.5rem;margin:0;color:var(--dark-gray);line-height:1.7}.faq-still-questions{margin-top:3rem;padding:2rem;background:var(--dark-gray);border-radius:12px;color:var(--white)}.faq-still-questions h2{color:var(--lime-green);margin:0 0 1rem}.faq-still-questions p{color:var(--white);margin-bottom:1.5rem}.faq-contact-details{background:#ffffff1a;padding:1.5rem;border-radius:8px}.faq-contact-details p{margin:.5rem 0;color:var(--white)}@media(max-width:768px){.faq-content{padding:1.5rem}.faq-section-header{padding:1rem}.faq-section-header h2{font-size:1rem}.faq-section-content .faq-question,.faq-section-content .faq-answer p{padding:1rem}.faq-still-questions{padding:1.5rem}}.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1a1a2e,#16213e);padding:20px}.login-card{border-radius:16px;overflow:hidden;width:100%;max-width:400px;box-shadow:0 20px 60px #0000004d}.login-header{background:#1a1a2e;padding:30px 40px;text-align:center}.login-body{background:#fff;padding:30px 40px 40px}.login-logo{display:block;text-decoration:none;margin-bottom:16px}.login-logo img{height:50px;width:auto;transition:opacity .2s ease}.login-logo:hover img{opacity:.8}.login-header h1{font-size:20px;font-weight:600;color:#fff;margin:0}.login-instructions{font-size:14px;color:#666;text-align:center;margin:0 0 24px;line-height:1.5}.login-instructions strong{color:#1a1a2e;word-break:break-all}.login-field{margin-bottom:20px}.login-field label{display:block;font-size:14px;font-weight:600;color:#333;margin-bottom:8px}.login-field input{width:100%;padding:14px 16px;font-size:16px;border:2px solid #e0e0e0;border-radius:8px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.login-field input:focus{border-color:#f7b32b}.login-field input:disabled{background:#f5f5f5;cursor:not-allowed}.login-field input.code-input{font-size:28px;font-weight:700;letter-spacing:8px;text-align:center;font-family:Courier New,monospace}.login-error{background:#fff5f5;border:1px solid #feb2b2;color:#c53030;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:20px;text-align:center}.login-message{background:#f0fff4;border:1px solid #9ae6b4;color:#276749;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:20px;text-align:center}.login-button{width:100%;padding:14px 24px;font-size:16px;font-weight:600;color:#1a1a2e;background:#f7b32b;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.login-button:hover:not(:disabled){background:#e5a320;transform:translateY(-1px)}.login-button:disabled{background:#ccc;color:#666;cursor:not-allowed;transform:none}.login-back{width:100%;padding:12px 24px;font-size:14px;font-weight:500;color:#666;background:transparent;border:none;cursor:pointer;margin-top:12px;transition:color .2s ease}.login-back:hover:not(:disabled){color:#1a1a2e;text-decoration:underline}.login-back:disabled{cursor:not-allowed}@media(max-width:480px){.login-header{padding:24px 20px}.login-body{padding:24px 20px 30px}.login-field input.code-input{font-size:24px;letter-spacing:6px}}.manual-booking{max-width:800px}.manual-booking-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1.5rem}.manual-booking-header h2{font-size:1.5rem;color:#1a1a2e;margin:0 0 .5rem}.manual-booking-header .manual-booking-description{color:#666;margin-bottom:0}.manual-booking h2{font-size:1.5rem;color:#1a1a2e;margin:0 0 .5rem}.manual-booking-description{color:#666;margin-bottom:1.5rem}.manual-booking-success{background:#d4edda;color:#155724;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #c3e6cb}.manual-booking-error{background:#f8d7da;color:#721c24;padding:1rem;border-radius:8px;margin-bottom:1.5rem;border:1px solid #f5c6cb}.manual-booking-form{display:flex;flex-direction:column;gap:1.5rem}.manual-booking-section{background:#f8f9fa;border-radius:8px;padding:1.5rem;border:1px solid #e0e0e0}.manual-booking-section h3{font-size:1.1rem;color:#1a1a2e;margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid #f7b32b}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1rem}.form-row:last-child{margin-bottom:0}.form-group{display:flex;flex-direction:column;margin-bottom:1rem}.form-group:last-child{margin-bottom:0}.form-group label{font-size:.9rem;font-weight:500;color:#333;margin-bottom:.5rem}.required{color:#dc3545;font-weight:600}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:1px solid #ccc;border-radius:6px;font-size:.95rem;color:#333;background:#fff;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.form-group select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;padding-right:2.5rem;cursor:pointer}.form-group textarea{resize:vertical;min-height:80px}.readonly-input{background:#e9ecef!important;cursor:default}.input-with-button{display:flex;gap:.75rem}.input-with-button input{flex:1}.lookup-btn{padding:.75rem 1.25rem;background:#f7b32b;color:#1a1a2e;border:none;border-radius:6px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s;white-space:nowrap}.lookup-btn:hover:not(:disabled){background:#e5a320}.lookup-btn:disabled{opacity:.5;cursor:not-allowed}.field-success{color:#28a745;font-size:.85rem;margin-top:.5rem}.field-error{color:#dc3545;font-size:.85rem;margin-top:.5rem}.date-picker-input{width:100%;padding:.75rem;border:1px solid #ccc;border-radius:6px;font-size:.95rem;color:#333;background:#fff}.date-picker-input:focus{outline:none;border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.manual-booking .react-datepicker-wrapper{width:100%}.manual-booking .react-datepicker{font-family:inherit;border:2px solid #f7b32b;border-radius:8px;box-shadow:0 4px 20px #00000026;background:#fff}.manual-booking .react-datepicker__header{background:#1a1a2e;border-bottom:none;border-radius:6px 6px 0 0;padding-top:1rem}.manual-booking .react-datepicker__current-month,.manual-booking .react-datepicker__current-month--hasYearDropdown,.manual-booking .react-datepicker__current-month--hasMonthDropdown{color:#f7b32b!important;font-weight:600}.manual-booking .react-datepicker__day-names{background:#1a1a2e!important;padding:.5rem 0}.manual-booking .react-datepicker__day-name{color:#f7b32b!important;font-weight:600}.manual-booking .react-datepicker__month{background:#fff}.manual-booking .react-datepicker__day{border-radius:50%;transition:all .2s;color:#333}.manual-booking .react-datepicker__day:hover{background:#f7b32b4d;border-radius:50%}.manual-booking .react-datepicker__day--selected,.manual-booking .react-datepicker__day--keyboard-selected{background:#f7b32b!important;color:#1a1a2e!important;font-weight:600}.manual-booking .react-datepicker__day--disabled{color:#ccc}.manual-booking .react-datepicker__navigation-icon:before{border-color:#f7b32b}.manual-booking .react-datepicker__triangle{display:none}.manual-booking .react-datepicker--time-only{border:2px solid #f7b32b;border-radius:8px}.manual-booking .react-datepicker--time-only .react-datepicker__header{background:#1a1a2e;border-radius:6px 6px 0 0}.manual-booking .react-datepicker-time__header{color:#f7b32b!important;font-weight:600}.manual-booking .react-datepicker__time-container{border-left:none}.manual-booking .react-datepicker__time-box{width:100%!important}.manual-booking .react-datepicker__time-list{height:200px!important}.manual-booking .react-datepicker__time-list-item{padding:8px 12px!important;color:#333;transition:all .2s}.manual-booking .react-datepicker__time-list-item:hover{background:#f7b32b4d!important;color:#1a1a2e!important}.manual-booking .react-datepicker__time-list-item--selected{background:#f7b32b!important;color:#1a1a2e!important;font-weight:600}.preview-section{background:#fff3cd;border-color:#ffeeba}.preview-section h3{border-bottom-color:#f7b32b}.email-preview{background:#fff;border:1px solid #ddd;border-radius:6px;padding:1rem;font-size:.9rem;color:#333}.email-preview p{margin:.5rem 0}.email-preview hr{border:none;border-top:1px solid #ddd;margin:1rem 0}.email-preview ul{margin:.5rem 0;padding-left:1.5rem}.email-preview li{margin:.25rem 0}.email-preview a{color:#007bff;word-break:break-all}.form-actions{display:flex;justify-content:flex-end;padding-top:1rem}.submit-btn{padding:1rem 2rem;background:#28a745;color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s}.submit-btn:hover:not(:disabled){background:#218838}.submit-btn:disabled{opacity:.5;cursor:not-allowed}.checkbox-group{margin-bottom:1.5rem}.checkbox-label{display:flex;align-items:center;gap:.75rem;cursor:pointer;font-weight:400!important}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#f7b32b;cursor:pointer}.checkbox-label span{color:#666;font-size:.9rem}.flight-selection-group{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1rem;margin-bottom:1rem}.flight-selection-group h4{font-size:.95rem;color:#1a1a2e;margin:0 0 1rem;font-weight:600}.loading-text{color:#666;font-style:italic;font-size:.9rem;margin:0}.hint-text{color:#888;font-size:.9rem;margin:0}.warning-text{color:#dc3545;font-size:.9rem;margin:0}.flight-summary{background:#e8f5e9;border:1px solid #c8e6c9;border-radius:8px;padding:1rem;margin-top:1rem}.flight-summary h4{font-size:.95rem;color:#2e7d32;margin:0 0 .75rem;font-weight:600}.summary-row{display:flex;margin-bottom:.5rem;font-size:.9rem}.summary-row:last-child{margin-bottom:0}.summary-label{font-weight:600;color:#333;min-width:100px}.summary-value{color:#555}.pricing-info-banner{display:flex;align-items:center;gap:1rem;background:#e8f4fd;border:1px solid #b8daff;border-radius:6px;padding:.75rem 1rem;margin-bottom:1rem;color:#004085}.pricing-info-banner .trip-duration{font-size:.95rem}.pricing-info-banner .calculated-price{margin-left:auto;font-size:.95rem}.pricing-info-banner .calculated-price strong{color:#155724;font-size:1.1rem}.price-override-note{font-size:.8rem;color:#856404;margin-top:.25rem;font-style:italic}.manual-booking .promo-success{font-size:.85rem;color:#1a1a2e!important;font-weight:600;margin-top:.25rem}.manual-booking .promo-success .discount-applied{font-weight:700}.manual-booking .promo-error{font-size:.85rem;color:#721c24!important;margin-top:.25rem}.manual-booking .promo-warning{font-size:.85rem;color:#856404!important;background-color:#fff3cd;border:1px solid #ffc107;border-radius:4px;padding:.5rem;margin-top:.25rem}.free-booking-note{font-size:.85rem;color:#155724;font-weight:600;margin-top:.25rem}.slot-info{font-size:.9rem;color:#155724;margin-top:.5rem;margin-bottom:0;padding:.5rem .75rem;background:#28a7451a;border-radius:4px;border-left:3px solid #28a745}.slot-info strong{color:#28a745;font-weight:700}.trip-details-section{background:#f8f9fa}.trip-details-section>h3{margin-bottom:1.5rem}.flight-subsection{background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.flight-subsection:last-child{margin-bottom:0}.flight-subsection-title{font-size:1rem;color:#28a745;margin:0 0 1rem;font-weight:600}.manual-booking .mobile-time-picker-container input{padding:.75rem;border:1px solid #ccc;border-radius:6px;font-size:.95rem;color:#333;background:#fff;transition:border-color .2s,box-shadow .2s;width:100%}.manual-booking .mobile-time-picker-container input:focus{outline:none;border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.manual-booking .time-picker-modal{border-radius:16px 16px 0 0}.manual-booking .time-picker-header{background:#1a1a2e;border-radius:16px 16px 0 0}.manual-booking .time-picker-title{color:#f7b32b}.manual-booking .time-picker-cancel{color:#ccc}.manual-booking .time-picker-confirm{color:#f7b32b}.manual-booking .wheel-scroll:before{background-color:#f7b32b26;border-color:#f7b32b}.manual-booking .wheel-item.selected{color:#1a1a2e}@media(max-width:768px){.form-row{grid-template-columns:1fr}.input-with-button{flex-direction:column}.lookup-btn{width:100%}.summary-row{flex-direction:column;gap:.25rem}.summary-label{min-width:auto}}.booking-calendar{background:#1e1e1e;border-radius:12px;padding:20px}.calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.calendar-nav{display:flex;align-items:center;gap:15px}.booking-calendar .calendar-title{font-size:1.5rem;font-weight:700;color:#d9ff00;margin:0;min-width:220px;text-align:center;text-transform:uppercase;letter-spacing:1px}.calendar-nav-btn{background:#2a2a2a;border:1px solid #444;color:#fff;width:40px;height:40px;border-radius:8px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.calendar-nav-btn:hover{background:#3a3a3a;border-color:#d9ff00}.calendar-actions{display:flex;gap:10px}.calendar-today-btn,.calendar-refresh-btn{background:#2a2a2a;border:1px solid #444;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s}.calendar-today-btn:hover,.calendar-refresh-btn:hover{background:#3a3a3a;border-color:#d9ff00}.calendar-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.calendar-error{background:#ff6b6b1a;border:1px solid #ff6b6b;color:#ff6b6b;padding:10px 15px;border-radius:8px;margin-bottom:15px}.calendar-grid{background:#252525;border-radius:10px;overflow:hidden}.calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#1a1a2e;border-bottom:1px solid #333}.calendar-weekday{padding:12px;text-align:center;font-weight:600;color:#d9ff00;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.calendar-weeks{display:flex;flex-direction:column}.calendar-week{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #333}.calendar-week:last-child{border-bottom:none}.calendar-day{min-height:90px;padding:8px;border-right:1px solid #333;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;position:relative}.calendar-day:last-child{border-right:none}.calendar-day:hover:not(.empty){background:#2a2a2a}.calendar-day.empty{background:#1a1a1a;cursor:default}.calendar-day.today{background:#d9ff001a}.calendar-day.today .day-number{background:#d9ff00;color:#1a1a2e;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:700}.calendar-day.selected{background:#d9ff0026;box-shadow:inset 0 0 0 2px #d9ff00}.calendar-day.has-bookings{background:#d9ff000d}.day-number{font-size:.95rem;font-weight:500;color:#fff;margin-bottom:6px}.day-badges{display:flex;flex-direction:column;gap:4px;margin-top:auto}.badge{font-size:1rem;padding:4px 8px;border-radius:4px;display:flex;align-items:center;gap:6px;white-space:nowrap}.badge.dropoff{background:#4a90e233;color:#4a90e2;border:1px solid rgba(74,144,226,.3)}.badge.pickup{background:#50c87833;color:#50c878;border:1px solid rgba(80,200,120,.3)}.calendar-detail-panel{margin-top:20px;background:#252525;border-radius:10px;border:1px solid #444;overflow:hidden}.detail-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#1a1a2e;border-bottom:1px solid #444}.detail-header h3{margin:0;color:#fff;font-size:1.1rem;font-weight:600}.detail-close{background:none;border:none;color:#888;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.detail-close:hover{color:#fff}.detail-content{padding:20px}.detail-section-title{margin:0 0 15px;font-size:1.3rem;font-weight:600;padding-bottom:10px;border-bottom:2px solid}.booking-header-row{display:flex;align-items:center;gap:15px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #3a3a3a}.booking-time{font-size:1.1rem;font-weight:700;color:#d9ff00;font-family:monospace;min-width:110px}.booking-calendar .booking-ref{font-size:.9rem;font-weight:700;color:#1a1a2e;font-family:monospace;background:#fff;padding:8px 12px;border-radius:8px;border:1px solid #444}.booking-details-row{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:8px;color:#fff;font-size:.9rem}.booking-details-row span{color:#888}.booking-calendar .detail-label{display:none}.booking-calendar .detail-value{color:#fff;font-size:.95rem}.booking-calendar .phone-link{color:#fff;text-decoration:none}.booking-calendar .phone-link:hover{text-decoration:underline}.booking-calendar .reg-plate{font-family:monospace;font-weight:600;letter-spacing:1px;color:#fff}.no-bookings{color:#666;text-align:center;padding:30px;font-style:italic}@media(max-width:768px){.calendar-header{flex-direction:column;align-items:stretch}.calendar-nav,.calendar-actions{justify-content:center}.calendar-day{min-height:70px;padding:5px}.day-number{font-size:.85rem}.badge{font-size:.65rem;padding:2px 4px}.detail-booking{grid-template-columns:1fr;gap:8px}.booking-time{font-size:.9rem}.booking-ref{text-align:left}}@media(max-width:480px){.calendar-weekday{padding:8px 4px;font-size:.7rem}.calendar-day{min-height:55px}.day-badges{flex-direction:row;flex-wrap:wrap;gap:2px}.badge{font-size:.6rem}}.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform .3s ease-out,opacity .3s ease-in;-moz-transition:-moz-transform .3s ease-out,opacity .3s ease-in;-o-transition:-o-transform .3s ease-out,opacity .3s ease-in;transition:transform .3s ease-out,opacity .3s ease-in}.leaflet-cluster-spider-leg{-webkit-transition:-webkit-stroke-dashoffset .3s ease-out,-webkit-stroke-opacity .3s ease-in;-moz-transition:-moz-stroke-dashoffset .3s ease-out,-moz-stroke-opacity .3s ease-in;-o-transition:-o-stroke-dashoffset .3s ease-out,-o-stroke-opacity .3s ease-in;transition:stroke-dashoffset .3s ease-out,stroke-opacity .3s ease-in}.marker-cluster-small{background-color:#b5e28c99}.marker-cluster-small div{background-color:#6ecc3999}.marker-cluster-medium{background-color:#f1d35799}.marker-cluster-medium div{background-color:#f0c20c99}.marker-cluster-large{background-color:#fd9c7399}.marker-cluster-large div{background-color:#f1801799}.leaflet-oldie .marker-cluster-small{background-color:#b5e28c}.leaflet-oldie .marker-cluster-small div{background-color:#6ecc39}.leaflet-oldie .marker-cluster-medium{background-color:#f1d357}.leaflet-oldie .marker-cluster-medium div{background-color:#f0c20c}.leaflet-oldie .marker-cluster-large{background-color:#fd9c73}.leaflet-oldie .marker-cluster-large div{background-color:#f18017}.marker-cluster{background-clip:padding-box;border-radius:20px}.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px Helvetica Neue,Arial,Helvetica,sans-serif}.marker-cluster span{line-height:30px}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.roster-calendar{background:#1e1e1e;border-radius:12px;padding:20px}.roster-calendar-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.roster-calendar .calendar-nav{display:flex;align-items:center;gap:15px}.roster-calendar .calendar-title{font-size:1.5rem;font-weight:700;color:#d9ff00;margin:0;min-width:220px;text-align:center;text-transform:uppercase;letter-spacing:1px}.roster-calendar .calendar-nav-btn{background:#2a2a2a;border:1px solid #444;color:#fff;width:40px;height:40px;border-radius:8px;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;transition:all .2s}.roster-calendar .calendar-nav-btn:hover{background:#3a3a3a;border-color:#d9ff00}.roster-calendar .calendar-actions{display:flex;gap:10px}.roster-calendar .calendar-today-btn,.roster-calendar .calendar-refresh-btn{background:#2a2a2a;border:1px solid #444;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;transition:all .2s}.roster-calendar .calendar-today-btn:hover,.roster-calendar .calendar-refresh-btn:hover{background:#3a3a3a;border-color:#d9ff00}.roster-calendar .calendar-refresh-btn:disabled{opacity:.5;cursor:not-allowed}.roster-add-btn{background:#d9ff00;border:none;color:#1a1a2e;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s}.roster-add-btn:hover{background:#c4e600}.roster-add-btn-small{background:#d9ff00;border:none;color:#1a1a2e;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.roster-add-btn-small:hover{background:#c4e600}.roster-error{background:#ff6b6b1a;border:1px solid #ff6b6b;color:#ff6b6b;padding:10px 15px;border-radius:8px;margin-bottom:15px}.roster-success{background:#50c8781a;border:1px solid #50c878;color:#50c878;padding:10px 15px;border-radius:8px;margin-bottom:15px}.roster-calendar .calendar-grid{background:#252525;border-radius:10px;overflow:hidden}.roster-calendar .calendar-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#1a1a2e;border-bottom:1px solid #333}.roster-calendar .calendar-weekday{padding:12px;text-align:center;font-weight:600;color:#d9ff00;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px}.roster-calendar .calendar-weeks{display:flex;flex-direction:column}.roster-calendar .calendar-week{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid #333}.roster-calendar .calendar-week:last-child{border-bottom:none}.roster-calendar .calendar-day{min-height:110px;padding:8px;border-right:1px solid #333;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;position:relative}.roster-calendar .calendar-day:last-child{border-right:none}.roster-calendar .calendar-day:hover:not(.empty){background:#2a2a2a}.roster-calendar .calendar-day.empty{background:#1a1a1a;cursor:default}.roster-calendar .calendar-day.today{background:#d9ff001a}.roster-calendar .calendar-day.today .day-number{background:#d9ff00;color:#1a1a2e;border-radius:50%;width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-weight:700}.roster-calendar .calendar-day.selected{background:#d9ff0026;box-shadow:inset 0 0 0 2px #d9ff00}.roster-calendar .calendar-day.has-content{background:#d9ff000d}.roster-calendar .day-number{font-size:.95rem;font-weight:500;color:#fff;margin-bottom:6px}.roster-calendar .day-content{display:flex;flex-direction:column;gap:4px;margin-top:auto}.day-badge{padding:3px 6px;border-radius:4px;font-size:.75rem;font-weight:500;display:flex;align-items:center;gap:4px}.badge-dropoff{background:#4a90e233;color:#4a90e2;border:1px solid rgba(74,144,226,.3)}.badge-pickup{background:#50c87833;color:#50c878;border:1px solid rgba(80,200,120,.3)}.day-shifts-indicator{background:#9b59b633;color:#9b59b6;border:1px solid rgba(155,89,182,.3);padding:3px 6px;border-radius:4px;font-size:.7rem;font-weight:500}.shifts-count{font-weight:600}.roster-detail-panel{margin-top:20px;background:#252525;border-radius:10px;border:1px solid #444;overflow:hidden}.roster-detail-panel .detail-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#1a1a2e;border-bottom:1px solid #444}.roster-detail-panel .detail-header h3{margin:0;color:#fff;font-size:1.1rem;font-weight:600}.detail-header-actions{display:flex;align-items:center;gap:10px}.roster-detail-panel .detail-close{background:none;border:none;color:#888;font-size:1.5rem;cursor:pointer;padding:0;line-height:1;transition:color .2s}.roster-detail-panel .detail-close:hover{color:#fff}.roster-detail-panel .detail-content{padding:20px}.no-content{color:#666;text-align:center;padding:30px;font-style:italic}.detail-section{margin-bottom:25px}.detail-section:last-child{margin-bottom:0}.detail-section-title{margin:0 0 15px;font-size:1.1rem;font-weight:600;padding-bottom:10px;border-bottom:2px solid}.detail-section-title.dropoff{color:#4a90e2;border-color:#4a90e2}.detail-section-title.pickup{color:#50c878;border-color:#50c878}.detail-section-title.shifts{color:#9b59b6;border-color:#9b59b6}.detail-bookings{display:flex;flex-direction:column;gap:12px}.detail-booking-card{background:#2a2a2a;border-radius:10px;padding:15px;border-left:3px solid #D9FF00}.booking-header-row{display:flex;align-items:center;gap:15px;margin-bottom:12px;padding-bottom:10px;border-bottom:1px solid #3a3a3a;flex-wrap:wrap}.booking-time{font-size:1.1rem;font-weight:700;color:#d9ff00;font-family:monospace;min-width:60px}.booking-flight{display:flex;align-items:center;gap:6px;color:#ccc;font-size:.9rem}.booking-flight .airline-name{color:#d9ff00;font-weight:500}.booking-flight .flight-number{color:#fff;font-family:monospace}.booking-destination{color:#fff;font-size:.95rem;flex:1}.flight-time-info{margin-left:10px;color:#d9ff00;font-weight:500;font-size:.9rem}.booking-ref{font-size:.9rem;font-weight:700;color:#1a1a2e;font-family:monospace;background:#fff;padding:6px 10px;border-radius:6px}.booking-details-row{display:flex;flex-wrap:wrap;gap:8px 12px;color:#fff;font-size:.9rem}.booking-details-row span{color:#555}.phone-link{color:#fff;text-decoration:none}.phone-link:hover{text-decoration:underline}.reg-plate{font-family:monospace;font-weight:600;letter-spacing:1px;color:#fff!important}.shift-list{display:flex;flex-direction:column;gap:12px}.shift-card{background:#2a2a2a;border-radius:10px;padding:15px;border-left:4px solid #9b59b6}.shift-card-header{display:flex;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap}.shift-time-range{display:flex;align-items:center;gap:4px;background:#1a1a2e;padding:6px 10px;border-radius:6px}.shift-time{font-family:monospace;font-size:1rem;font-weight:700;color:#d9ff00}.shift-time-separator{color:#d9ff00}.shift-type-badge{padding:4px 10px;border-radius:4px;font-size:.85rem;font-weight:600;color:#fff}.shift-status-badge{padding:4px 10px;border-radius:4px;font-size:.8rem;font-weight:500;background:transparent;border:1px solid}.shift-card-body{display:flex;flex-direction:column;gap:8px}.shift-staff{display:flex;align-items:center;gap:8px}.shift-staff-initials{background:#d9ff00;color:#1a1a2e;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.85rem}.shift-staff-name{color:#fff;font-weight:500}.shift-unassigned{color:#888;font-style:italic}.shift-bookings-list{margin-top:4px;display:flex;flex-direction:column;gap:4px}.shift-booking-info{background:#1a1a2e;border-radius:6px;padding:8px 10px;border-left:3px solid #444}.shift-booking-info:nth-child(odd){border-left-color:#4a90e2}.shift-booking-info:nth-child(2n){border-left-color:#50c878}.shift-no-bookings{font-size:.8rem;color:#666;font-style:italic;margin-top:4px}.shift-booking-header{display:flex;align-items:center;gap:10px;margin-bottom:6px}.shift-booking-type{font-size:.8rem;font-weight:600;padding:3px 8px;border-radius:4px}.shift-booking-type.dropoff{background:#4a90e233;color:#4a90e2}.shift-booking-type.pickup{background:#50c87833;color:#50c878}.shift-booking-ref{font-family:monospace;color:#d9ff00;font-weight:600;font-size:.9rem}.shift-booking-details{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.85rem;color:#ccc}.shift-booking-customer{color:#fff;font-weight:500}.shift-booking-time{color:#d9ff00;font-family:monospace}.shift-booking-flight{color:#fff;font-family:monospace}.shift-booking-dest{color:#fff}.shift-notes{color:#aaa;font-size:.9rem;padding:8px;background:#1a1a2e;border-radius:6px;margin-top:4px}.shift-card-actions{display:flex;gap:10px;margin-top:12px;padding-top:12px;border-top:1px solid #3a3a3a}.shift-edit-btn{background:#2a2a2a;border:1px solid #4a90e2;color:#4a90e2;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.shift-edit-btn:hover{background:#4a90e2;color:#fff}.shift-delete-btn{background:#2a2a2a;border:1px solid #e74c3c;color:#e74c3c;padding:6px 14px;border-radius:6px;cursor:pointer;font-size:.85rem;transition:all .2s}.shift-delete-btn:hover{background:#e74c3c;color:#fff}.roster-calendar .modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.roster-calendar .modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 50px #0000004d;max-height:90vh;overflow-y:auto;color:#333;max-width:500px;width:100%}.roster-calendar .modal-content-wide{max-width:700px}.roster-calendar .modal-content h3{margin:0;padding:24px 24px 16px;font-size:20px;font-weight:600;color:#1a1a2e;border-bottom:1px solid #eee}.roster-calendar .modal-form{padding:24px}.roster-calendar .modal-section-title{margin:0 0 16px;font-size:14px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.roster-calendar .modal-form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:20px}.roster-calendar .modal-form-group{display:flex;flex-direction:column}.roster-calendar .modal-form-group label{display:block;font-weight:500;margin-bottom:8px;color:#333;font-size:14px}.roster-calendar .modal-form-group input,.roster-calendar .modal-form-group select,.roster-calendar .modal-form-group textarea{width:100%;padding:12px 14px;border:1px solid #e0e0e0;border-radius:8px;font-size:15px;background:#f8f9fa;color:#333;transition:all .2s ease}.roster-calendar .modal-form-group select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:36px;cursor:pointer}.roster-calendar .modal-form-group input:hover,.roster-calendar .modal-form-group select:hover,.roster-calendar .modal-form-group textarea:hover{border-color:#ccc;background:#fff}.roster-calendar .modal-form-group input:focus,.roster-calendar .modal-form-group select:focus,.roster-calendar .modal-form-group textarea:focus{outline:none;border-color:#f7b32b;background:#fff;box-shadow:0 0 0 3px #f7b32b26}.roster-calendar .modal-form-group textarea{resize:vertical;min-height:80px}.roster-calendar .modal-actions{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #eee;background:#fafafa;border-radius:0 0 12px 12px}.roster-calendar .modal-btn{padding:12px 24px;border-radius:8px;cursor:pointer;font-size:15px;font-weight:500;transition:all .2s;border:none}.roster-calendar .modal-btn-secondary{background:#fff;border:1px solid #ddd;color:#666}.roster-calendar .modal-btn-secondary:hover:not(:disabled){background:#f5f5f5;border-color:#ccc}.roster-calendar .modal-btn-primary{background:#f7b32b;color:#1a1a2e;font-weight:600}.roster-calendar .modal-btn-primary:hover:not(:disabled){background:#e5a320}.roster-calendar .modal-btn:disabled{opacity:.5;cursor:not-allowed}.roster-calendar .modal-delete-btn{background:#e74c3c;border:none;color:#fff;padding:12px 24px;border-radius:8px;cursor:pointer;font-size:1rem;font-weight:600;transition:all .2s}.roster-calendar .modal-delete-btn:hover:not(:disabled){background:#c0392b}.roster-calendar .modal-delete-btn:disabled{opacity:.5;cursor:not-allowed}.roster-calendar .delete-modal{max-width:450px;width:100%}.roster-calendar .delete-modal h3{margin:0;padding:24px;font-size:20px;font-weight:600;color:#1a1a2e}.roster-calendar .delete-modal p{padding:0 24px 24px;margin:0;color:#666;line-height:1.6;font-size:1rem}.roster-calendar .delete-modal strong{color:#333}@media(max-width:1024px){.roster-calendar .modal-content-wide{max-width:90vw}}@media(max-width:768px){.roster-calendar-header{flex-direction:column;align-items:stretch}.roster-calendar .calendar-nav{justify-content:center}.roster-calendar .calendar-actions{justify-content:center;flex-wrap:wrap}.roster-calendar .calendar-day{min-height:90px;padding:5px}.roster-calendar .day-number{font-size:.85rem}.day-badge{font-size:.65rem;padding:2px 4px}.shift-card-header{flex-direction:column;align-items:flex-start}.booking-header-row{flex-direction:column;align-items:flex-start;gap:8px}.roster-calendar .modal-form-row{grid-template-columns:1fr}.roster-calendar .modal-content-wide{max-width:95vw}.roster-calendar .modal-overlay{padding:10px}.roster-calendar .modal-form{padding:16px}.roster-calendar .modal-content h3{padding:16px;font-size:18px}.roster-calendar .modal-form-group input,.roster-calendar .modal-form-group select,.roster-calendar .modal-form-group textarea{padding:14px 12px;font-size:16px}.roster-calendar .modal-actions{padding:16px;gap:10px}.roster-calendar .modal-btn{padding:14px 20px;font-size:16px}}@media(max-width:480px){.roster-calendar .calendar-weekday{padding:8px 4px;font-size:.7rem}.roster-calendar .calendar-day{min-height:70px}.day-badge,.day-shifts-indicator{font-size:.6rem;padding:2px 3px}.roster-calendar .modal-form{padding:12px}.roster-calendar .modal-actions{padding:12px;flex-direction:column}.roster-calendar .modal-btn{width:100%;justify-content:center}.roster-calendar .modal-content h3{padding:12px}}.booking-checkboxes{background:#1a1a1a;border:1px solid #333;border-radius:8px;padding:12px;max-height:200px;overflow-y:auto}.booking-checkboxes.loading,.booking-checkboxes.empty{color:#888;font-style:italic;text-align:center;padding:20px}.booking-group{margin-bottom:12px}.booking-group:last-child{margin-bottom:0}.booking-group-label{font-size:.85rem;font-weight:600;color:#d9ff00;margin-bottom:8px;padding-bottom:4px;border-bottom:1px solid #333}.booking-checkbox{display:flex;align-items:center;gap:10px;padding:8px 10px;margin:4px 0;background:#252525;border-radius:6px;cursor:pointer;transition:background .2s}.booking-checkbox:hover{background:#333}.booking-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#D9FF00;cursor:pointer}.booking-info{display:flex;align-items:center;gap:12px;flex:1;font-size:.9rem}.booking-time{font-weight:600;color:#d9ff00;min-width:50px}.booking-ref{color:#aaa;font-family:monospace;font-size:.85rem}.booking-customer{color:#fff;flex:1}.shift-overnight-badge{background:#2c3e50;color:#f0d080;padding:4px 8px;border-radius:4px;font-size:.75rem;border:1px solid #4a4a3a}.day-shift-badge{display:flex;align-items:center;gap:4px;background:#3a3a5a;border-radius:4px;padding:2px 6px;font-size:.7rem;color:#fff;margin-top:2px}.day-shift-badge.overnight{background:linear-gradient(90deg,#3a3a5a,#2c3e50);border:1px solid #f0d080}.day-shift-badge.overnight-end{background:linear-gradient(90deg,#2c3e50,#3a3a5a);border:1px solid #f0d080}.shift-time-mini{font-family:monospace;font-size:.65rem;color:#d9ff00}.shift-initials{background:#d9ff00;color:#1a1a2e;padding:1px 4px;border-radius:3px;font-weight:600;font-size:.6rem}.shift-unassigned-mini{background:#666;color:#fff;padding:1px 4px;border-radius:3px;font-size:.6rem}.weekly-hours-section{background:#2a2a2a;border-radius:12px;padding:16px;margin-top:20px;border:1px solid #3a3a3a}.weekly-hours-title{color:#d9ff00;font-size:1.1rem;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.weekly-hours-title .week-range{font-size:.85rem;color:#888;font-weight:400}.weekly-hours-grid{display:flex;flex-wrap:wrap;gap:12px}.weekly-hours-card{background:#1e1e1e;border:1px solid #444;border-radius:8px;padding:12px 16px;min-width:140px;display:flex;flex-direction:column;gap:4px}.weekly-hours-card.own-hours{border-color:#d9ff00;background:linear-gradient(135deg,#1e1e1e,#2a2a1e)}.weekly-hours-card .employee-name{color:#fff;font-weight:600;font-size:.9rem}.weekly-hours-card .hours-summary{display:flex;align-items:baseline;gap:6px}.weekly-hours-card .total-hours{color:#d9ff00;font-size:1.3rem;font-weight:700}.weekly-hours-card .shift-count{color:#888;font-size:.8rem}.weekly-hours-loading{color:#888;font-style:italic;padding:10px}.no-hours{color:#666;font-style:italic;padding:10px}.calendar-day.blocked{background:linear-gradient(135deg,#2a1a1a,#3a2020)!important;border-color:#e74c3c!important}.calendar-day.blocked:hover{background:linear-gradient(135deg,#3a2020,#4a2a2a)!important}.calendar-day.blocked .day-number{color:#ff6b6b}.day-badge.badge-blocked{background:#e74c3c;color:#fff;font-size:.65rem;padding:2px 4px;border-radius:3px;white-space:nowrap}.blocked-time-slots-detail{margin-bottom:12px}.blocked-time-slots-label{color:#888;font-size:.85rem;margin-bottom:8px}.blocked-time-slot-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#1e1e1e;border-radius:6px;margin-bottom:6px;flex-wrap:wrap}.blocked-time-slot-row .slot-time-range{font-family:monospace;font-size:1rem;font-weight:600;color:#ff6b6b;min-width:110px}.blocked-time-slot-row .slot-block-types{background:#3a2020;color:#faa;padding:3px 8px;border-radius:4px;font-size:.8rem}.blocked-time-slot-row .slot-reason{color:#888;font-size:.85rem;font-style:italic}.blocked-dates-btn{background:#e74c3c;border:none;color:#fff;padding:8px 16px;border-radius:8px;cursor:pointer;font-size:.9rem;font-weight:600;transition:all .2s;display:flex;align-items:center;gap:6px}.blocked-dates-btn:hover{background:#c0392b}.blocked-dates-section{background:#2a1a1a;border:1px solid #e74c3c;border-radius:8px;padding:15px;margin-bottom:20px}.blocked-dates-section h4{color:#e74c3c;margin:0 0 10px;font-size:1rem;display:flex;align-items:center;gap:8px}.blocked-date-info{display:flex;flex-direction:column;gap:8px}.blocked-date-type{display:flex;gap:10px;flex-wrap:wrap}.blocked-type-badge{background:#3a2020;color:#ff6b6b;padding:4px 8px;border-radius:4px;font-size:.8rem}.blocked-date-reason{color:#888;font-style:italic;font-size:.9rem}.blocked-date-actions{display:flex;gap:10px;margin-top:10px}.blocked-date-edit-btn{background:#444;border:none;color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.blocked-date-edit-btn:hover{background:#555}.blocked-date-delete-btn{background:#e74c3c;border:none;color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.blocked-date-delete-btn:hover{background:#c0392b}.blocked-date-form{display:flex;flex-direction:column;gap:15px}.blocked-date-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px}.blocked-date-form .checkbox-group{display:flex;gap:20px}.blocked-date-form .checkbox-label{display:flex;align-items:flex-start;gap:8px;color:#ccc;cursor:pointer}.blocked-date-form .checkbox-label input[type=checkbox]{width:18px;height:18px;margin-top:2px;flex-shrink:0;accent-color:#D9FF00}.blocked-date-warning{background:#fff8e1;border:1px solid #ffc107;border-left:4px solid #ff9800;border-radius:8px;padding:12px 16px;margin-top:8px}.blocked-date-warning strong{color:#e65100;font-size:.95rem;display:block;margin-bottom:6px}.blocked-date-warning p{margin:0 0 6px;color:#5d4037;font-size:.9rem;line-height:1.4}.blocked-date-warning p:last-child{margin-bottom:0}.blocked-date-warning .warning-note{font-style:italic;color:#795548;font-size:.85rem}.time-slots-section{margin-top:20px;padding-top:20px;border-top:1px solid #333}.time-slots-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.time-slots-header h4{margin:0;color:#333;font-size:1rem;font-weight:600}.time-slot-add-btn{background:#d9ff00;border:none;color:#1a1a2e;padding:8px 14px;border-radius:6px;cursor:pointer;font-size:.85rem;font-weight:600;transition:all .2s}.time-slot-add-btn:hover{background:#c5e600}.time-slots-section p.time-slots-description{color:#333!important;font-size:.85rem;margin:0 0 15px;line-height:1.4}.time-slots-info{font-size:.8rem;color:#d9ff00;font-weight:400}.time-slots-note{color:#d9ff00;font-size:.8rem;font-style:italic;margin:8px 0 0}.time-slot-form{background:#252525;border:1px solid #3a3a3a;border-radius:8px;padding:16px;margin-bottom:15px}.time-slot-form-label{display:block;color:#ccc;font-size:.9rem;font-weight:500;margin-bottom:10px}.time-slot-time-row{display:flex;align-items:center;gap:12px;margin-bottom:20px}.time-slot-time-row .time-input{flex:1;max-width:120px;padding:12px 14px;font-size:1.1rem;font-family:monospace;text-align:center;background:#1a1a1a;border:1px solid #444;border-radius:8px;color:#fff}.time-slot-time-row .time-input:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 2px #d9ff0033}.time-slot-time-row .time-separator{color:#888;font-size:1rem;font-weight:500}.time-slot-block-options{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.time-slot-block-options .block-option{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#1a1a1a;border:2px solid #333;border-radius:8px;cursor:pointer;transition:all .2s;flex:1;min-width:100px}.time-slot-block-options .block-option:hover{border-color:#555}.time-slot-block-options .block-option.selected{border-color:#d9ff00;background:#d9ff001a}.time-slot-block-options .block-option input[type=radio]{display:none}.time-slot-block-options .option-icon{font-size:1.1rem}.time-slot-block-options .option-text{color:#ccc;font-size:.85rem;font-weight:500}.time-slot-block-options .block-option.selected .option-text{color:#d9ff00}.time-slot-preview{background:#1a1a1a;border:1px solid #444;border-radius:6px;padding:10px 14px;margin-bottom:12px;color:#aaa;font-size:.9rem}.time-slot-preview strong{color:#d9ff00}.time-slot-form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:12px}.time-slot-form-row:last-child{margin-bottom:0}.time-slot-form .checkbox-group{display:flex;gap:20px;grid-column:span 2}.time-slot-form-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:15px;padding-top:12px;border-top:1px solid #3a3a3a}.time-slots-list{display:flex;flex-direction:column;gap:10px}.time-slot-item{background:#252525;border:1px solid #3a3a3a;border-radius:8px;padding:12px 15px;display:grid;grid-template-columns:auto 1fr auto auto;align-items:center;gap:15px}.time-slot-time{font-family:monospace;font-size:1rem;font-weight:600;color:#d9ff00;min-width:120px}.time-slot-blocks{display:flex;gap:8px;flex-wrap:wrap}.block-badge{padding:4px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.block-badge.dropoff{background:#3a2020;color:#ff6b6b}.block-badge.pickup{background:#203a3a;color:#6bffff}.time-slot-reason{color:#888;font-size:.85rem;font-style:italic;flex:1}.time-slot-actions{display:flex;gap:8px}.time-slot-edit-btn{background:#444;border:none;color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.time-slot-edit-btn:hover{background:#555}.time-slot-delete-btn{background:#e74c3c;border:none;color:#fff;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.time-slot-delete-btn:hover{background:#c0392b}.time-slots-loading{color:#888;font-style:italic;padding:10px;text-align:center}.time-slots-empty{color:#666;font-style:italic;padding:15px;text-align:center;background:#1e1e1e;border-radius:6px}@media(max-width:768px){.time-slot-item{grid-template-columns:1fr;gap:10px}.time-slot-time{min-width:auto}.time-slot-actions{justify-content:flex-end}.time-slot-form-row{grid-template-columns:1fr}.time-slot-form .checkbox-group{grid-column:span 1}}.duplicate-shift-section{margin-top:20px;padding:15px;background:#252525;border-radius:8px;border:1px solid #3a3a3a}.duplicate-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.95rem;color:#fff}.duplicate-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#D9FF00}.additional-staff-section{margin-top:15px}.additional-staff-section>label{display:block;color:#aaa;font-size:.85rem;margin-bottom:10px}.additional-staff-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px}.additional-staff-checkbox{display:flex;align-items:center;gap:8px;padding:10px 12px;background:#1e1e1e;border:1px solid #3a3a3a;border-radius:6px;cursor:pointer;transition:all .2s}.additional-staff-checkbox:hover:not(.disabled){border-color:#d9ff00;background:#2a2a2a}.additional-staff-checkbox.selected{border-color:#d9ff00;background:#2a3020}.additional-staff-checkbox.disabled{opacity:.5;cursor:not-allowed}.additional-staff-checkbox input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#D9FF00;flex-shrink:0}.additional-staff-checkbox .staff-name{color:#fff;font-size:.9rem}.duplicate-summary{margin-top:12px;padding:8px 12px;background:#1a2818;border:1px solid #D9FF00;border-radius:6px;color:#d9ff00;font-size:.85rem;font-weight:500}.shifts-section-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:15px}.shifts-section-header .detail-section-title{margin-bottom:0}.bulk-actions-bar{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#252525;border:1px solid #D9FF00;border-radius:6px}.bulk-selection-count{color:#d9ff00;font-size:.85rem;font-weight:500}.bulk-edit-btn{background:#d9ff00;border:none;color:#1a1a2e;padding:6px 12px;border-radius:4px;cursor:pointer;font-size:.8rem;font-weight:600;transition:all .2s}.bulk-edit-btn:hover{background:#c4e600}.bulk-clear-btn{background:transparent;border:1px solid #666;color:#aaa;padding:5px 10px;border-radius:4px;cursor:pointer;font-size:.8rem;transition:all .2s}.bulk-clear-btn:hover{border-color:#999;color:#fff}.shift-card{position:relative}.shift-card.selected{border-color:#d9ff00!important;background:#252520!important}.shift-select-checkbox{position:absolute;top:10px;right:10px;z-index:1}.shift-select-checkbox input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#D9FF00}.bulk-delete-warning{padding:20px;background:#3d1f1f;border:1px solid #e74c3c;border-radius:8px;text-align:center}.bulk-delete-warning p{margin:0 0 10px;color:#ff6b6b}.bulk-delete-warning p:last-child{margin-bottom:0;color:#aaa;font-size:.9rem}.modal-btn-danger{background:#e74c3c!important;color:#fff!important}.modal-btn-danger:hover{background:#c0392b!important}.modal-error{background:#e74c3c;border:1px solid #c0392b;border-radius:6px;padding:12px 16px;margin-bottom:15px;color:#fff;font-size:.9rem;font-weight:500}.payroll-container{padding:20px;background:#fff;border-radius:8px}.payroll-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.payroll-header h2{margin:0;font-size:1.5rem;color:#333}.payroll-controls{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.payroll-date-selector{display:flex;gap:10px}.payroll-select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.payroll-select:focus{outline:none;border-color:#4a90e2}.payroll-actions{display:flex;gap:10px}.payroll-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.payroll-btn.refresh{background:#f5f5f5;color:#333}.payroll-btn.refresh:hover{background:#e0e0e0}.payroll-btn.csv{background:#27ae60;color:#fff}.payroll-btn.csv:hover{background:#219a52}.payroll-btn.pdf{background:#e74c3c;color:#fff}.payroll-btn.pdf:hover{background:#c0392b}.payroll-btn:disabled{opacity:.5;cursor:not-allowed}.payroll-error{background:#fce4e4;border:1px solid #e74c3c;color:#c0392b;padding:12px 16px;border-radius:6px;margin-bottom:20px}.payroll-loading{text-align:center;padding:40px;color:#888}.payroll-summary{display:flex;gap:30px;padding:15px 20px;background:#f8f9fa;border-radius:8px;margin-bottom:20px;flex-wrap:wrap}.payroll-summary-item{display:flex;align-items:center;gap:8px}.payroll-summary-item .label{color:#666;font-size:14px}.payroll-summary-item .value{font-size:18px;font-weight:600;color:#333}.payroll-table-container{overflow-x:auto}.payroll-table{width:100%;border-collapse:collapse}.payroll-table th,.payroll-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #eee}.payroll-table th{background:#f5f5f5;font-weight:600;color:#333;font-size:14px}.payroll-table .col-expand{width:40px;text-align:center}.payroll-table .col-name{min-width:200px}.payroll-table .col-shifts,.payroll-table .col-hours{width:100px;text-align:center}.payroll-table .col-actions{width:80px;text-align:center}.payroll-row:hover{background:#fafafa}.expand-btn{background:none;border:none;cursor:pointer;font-size:12px;color:#666;padding:5px;transition:transform .2s}.expand-btn.expanded{transform:rotate(90deg)}.payroll-btn-small{padding:4px 10px;font-size:12px;border:none;border-radius:4px;cursor:pointer}.payroll-btn-small.pdf{background:#e74c3c;color:#fff}.payroll-btn-small.pdf:hover{background:#c0392b}.payroll-details-row{background:#f9f9f9}.payroll-details{padding:10px 20px 20px 50px}.payroll-shifts-table{width:100%;border-collapse:collapse;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 1px 3px #0000001a}.payroll-shifts-table th,.payroll-shifts-table td{padding:10px 15px;text-align:left;border-bottom:1px solid #eee}.payroll-shifts-table th{background:#f0f0f0;font-size:13px;font-weight:600}.payroll-shifts-table td{font-size:14px}.shifts-list{display:flex;flex-direction:column;gap:5px}.payroll-shift-time{background:#e8f4fd;padding:4px 8px;border-radius:4px;font-size:13px;display:inline-block}.hours-cell{font-weight:600;text-align:center}.actions-cell{display:flex;flex-direction:column;gap:5px;align-items:flex-start}.shift-actions{display:flex;gap:5px}.action-btn{background:none;border:1px solid #ddd;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:14px;transition:all .2s}.action-btn.edit:hover{background:#e8f4fd;border-color:#4a90e2}.action-btn.delete:hover{background:#fce4e4;border-color:#e74c3c}.payroll-empty{text-align:center;padding:40px;color:#888;font-style:italic}.payroll-modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.payroll-modal{background:#fff;padding:25px;border-radius:12px;width:100%;max-width:400px;box-shadow:0 10px 40px #0003}.payroll-modal h3{margin:0 0 10px;font-size:1.3rem;color:#333}.modal-subtitle{margin:0 0 20px;color:#666;font-size:14px}.modal-shift-info{background:#f5f5f5;padding:12px 15px;border-radius:6px;margin:15px 0;font-size:14px;line-height:1.6}.modal-form{margin-bottom:20px}.form-row{margin-bottom:15px}.form-row label{display:block;margin-bottom:5px;font-weight:500;color:#333;font-size:14px}.form-row input[type=time]{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px}.form-row input[type=time]:focus{outline:none;border-color:#4a90e2}.form-row .time-input{width:100%;padding:10px 12px;border:1px solid #ddd;border-radius:6px;font-size:16px;font-family:monospace}.form-row .time-input:focus{outline:none;border-color:#4a90e2}.form-info{font-size:13px;color:#666;padding:8px 12px;background:#f5f5f5;border-radius:6px;margin-top:10px}.form-info.overnight-info{background:#fff3cd;color:#856404}.modal-actions{display:flex;gap:10px;justify-content:flex-end}.payroll-btn.cancel{background:#f5f5f5;color:#333}.payroll-btn.cancel:hover{background:#e0e0e0}.payroll-btn.save{background:#4a90e2;color:#fff}.payroll-btn.save:hover{background:#3a7bc8}.payroll-btn.delete{background:#e74c3c;color:#fff}.payroll-btn.delete:hover{background:#c0392b}@media(max-width:768px){.payroll-header{flex-direction:column;align-items:flex-start}.payroll-controls{flex-direction:column;align-items:flex-start;width:100%}.payroll-date-selector{width:100%}.payroll-select{flex:1}.payroll-actions{width:100%;flex-wrap:wrap}.payroll-actions .payroll-btn{flex:1}.payroll-summary{flex-direction:column;gap:10px}.payroll-table .col-name{min-width:120px}.payroll-details{padding:10px}}.admin-layout{min-height:100vh;background:#f5f7fa;display:flex;flex-direction:column}.admin-header{background:#1a1a2e;color:#fff;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.admin-header-left{display:flex;align-items:center;gap:12px}.sidebar-toggle{background:transparent;border:none;color:#fff;font-size:20px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s}.sidebar-toggle:hover{background:#ffffff1a}.admin-logo{height:36px;width:auto}.admin-header h1{font-size:18px;font-weight:600;margin:0}.admin-header-right{display:flex;align-items:center;gap:16px}.admin-user{font-size:14px;color:#ccc}.admin-logout{padding:8px 16px;font-size:14px;font-weight:500;color:#1a1a2e;background:#f7b32b;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.admin-logout:hover{background:#e5a320}.admin-body{display:flex;flex:1;overflow:hidden}.admin-sidebar{width:240px;background:#fff;border-right:1px solid #e0e0e0;overflow-y:auto;flex-shrink:0;transition:width .3s ease}.sidebar-collapsed .admin-sidebar{width:60px}.admin-sidebar-nav{padding:12px 0}.nav-category{margin-bottom:4px}.nav-category-header{display:flex;align-items:center;width:100%;padding:10px 16px;border:none;background:transparent;cursor:pointer;text-align:left;font-size:13px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px;transition:background .2s}.nav-category-header:hover{background:#f5f7fa}.nav-category-header.expanded{color:#1a1a2e}.nav-category-icon{font-size:16px;margin-right:10px;flex-shrink:0}.sidebar-collapsed .nav-category-icon{margin-right:0}.nav-category-label{flex:1}.nav-category-arrow{font-size:10px;color:#999;transition:transform .2s}.nav-category-items{padding:4px 0 8px}.nav-item{display:block;width:100%;padding:10px 16px 10px 46px;border:none;background:transparent;text-align:left;font-size:14px;color:#444;cursor:pointer;transition:all .2s}.nav-item:hover{background:#f5f7fa;color:#1a1a2e}.nav-item.active{background:#fff3d9;color:#1a1a2e;font-weight:500;border-left:3px solid #f7b32b;padding-left:43px}.admin-main{flex:1;overflow-y:auto;padding:24px;max-width:100%}.admin-content{padding:24px;max-width:1400px;margin:0 auto}.admin-nav{display:none}@media(max-width:768px){.admin-sidebar{position:fixed;left:0;top:60px;bottom:0;z-index:99;transform:translate(0)}.sidebar-collapsed .admin-sidebar{transform:translate(-100%);width:240px}.admin-main{padding:16px}.admin-header h1{font-size:16px}.admin-user{display:none}}.admin-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #00000014}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:1rem}.audit-logs-actions{display:flex;align-items:center;gap:12px}.auto-refresh-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.auto-refresh-toggle .toggle-label{font-size:13px;color:#666;font-weight:500}.toggle-switch{position:relative;width:40px;height:22px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;inset:0;background-color:#ccc;transition:.3s;border-radius:22px}.toggle-slider:before{position:absolute;content:"";height:16px;width:16px;left:3px;bottom:3px;background-color:#fff;transition:.3s;border-radius:50%;box-shadow:0 1px 3px #0003}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,#667eea,#764ba2)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(18px)}.toggle-switch input:focus+.toggle-slider{box-shadow:0 0 0 2px #667eea4d}.admin-section h2{font-size:18px;font-weight:600;color:#1a1a2e;margin:0}.filter-badge{font-size:11px;font-weight:500;background:#e0f2fe;color:#0369a1;padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle}.admin-refresh{padding:8px 16px;font-size:13px;font-weight:500;color:#1a1a2e;background:#f0f0f0;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.admin-refresh:hover:not(:disabled){background:#e0e0e0}.admin-refresh:disabled{cursor:not-allowed;opacity:.6}.admin-error{background:#fff5f5;border:1px solid #feb2b2;color:#c53030;padding:12px 16px;border-radius:8px;margin-bottom:20px}.admin-success{background:#f0fff4;border:1px solid #9ae6b4;color:#276749;padding:12px 16px;border-radius:8px;margin-bottom:20px}.admin-empty{color:#666;text-align:center;padding:40px}.admin-coming-soon{color:#999;text-align:center;padding:60px;font-style:italic}.admin-subtitle{color:#666;margin-bottom:20px}.admin-no-data{color:#999;text-align:center;padding:40px;font-style:italic}.admin-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f5f7fa;gap:16px}.admin-loading p{color:#666}.admin-loading-inline{display:flex;align-items:center;justify-content:center;gap:12px;padding:40px;color:#666}.spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#f7b32b;border-radius:50%;animation:spin .8s linear infinite}.spinner-small{width:20px;height:20px;border:3px solid #e0e0e0;border-top-color:#f7b32b;border-radius:50%;animation:spin .8s linear infinite}.admin-table-container{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th{text-align:left;padding:12px 16px;background:#f8f9fa;color:#666;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid #e0e0e0}.admin-table td{padding:14px 16px;border-bottom:1px solid #f0f0f0;color:#333;vertical-align:top}.admin-table tr:hover{background:#fafafa}.admin-table .booking-ref{font-family:Courier New,monospace;font-weight:600;color:#1a1a2e}.admin-table .small-text{font-size:12px;color:#888}.status-badge{display:inline-block;padding:4px 10px;font-size:11px;font-weight:600;text-transform:uppercase;border-radius:12px;width:fit-content}.status-pending{background:#fff3cd;color:#856404}.status-confirmed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.status-completed{background:#cce5ff;color:#004085}.booking-source-badge{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;text-transform:uppercase;border-radius:4px;margin-left:8px}.booking-source-badge.manual{background:#e0d4f7;color:#5e35b1}.source-badge{display:inline-block;padding:4px 10px;font-size:11px;font-weight:600;border-radius:12px}.source-badge.manual{background:#e0d4f7;color:#5e35b1}.source-badge.admin{background:#fff3cd;color:#856404}.source-badge.phone{background:#d1ecf1;color:#0c5460}.source-badge.online{background:#d4edda;color:#155724}.status-refunded{background:#e2e3e5;color:#383d41}.payment-succeeded{background:#d4edda;color:#155724}.payment-pending{background:#fff3cd;color:#856404}.payment-failed{background:#f8d7da;color:#721c24}.admin-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:center;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.admin-search{flex:1;min-width:250px;position:relative}.admin-search-input{width:100%;padding:10px 40px 10px 14px;font-size:14px;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.admin-search-input:focus{border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.admin-search-input::placeholder{color:#999}.admin-search-clear{position:absolute;right:10px;top:50%;transform:translateY(-50%);background:none;border:none;font-size:20px;color:#999;cursor:pointer;padding:0 5px;line-height:1}.admin-search-clear:hover{color:#666}.admin-filter-group{display:flex;align-items:center;gap:8px}.admin-filter-group label{font-size:14px;color:#666;font-weight:500}.admin-filter-select{padding:10px 14px;font-size:14px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;outline:none;min-width:150px}.admin-filter-select:focus{border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.admin-sort-btn{background:none;border:1px solid #555;color:#ccc;padding:6px 12px;border-radius:6px;cursor:pointer;font-size:13px;transition:all .2s}.admin-sort-btn:hover{border-color:#f7b32b;color:#f7b32b}.admin-filter-count{font-size:13px;color:#888;margin-left:auto}.admin-filter{padding:10px 14px;font-size:14px;border:1px solid #ddd;border-radius:8px;background:#fff;cursor:pointer;outline:none;min-width:120px}.admin-filter:focus{border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.admin-checkbox-label{display:flex;align-items:center;gap:6px;font-size:14px;color:#555;cursor:pointer;white-space:nowrap}.admin-checkbox-label input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#f7b32b}.actions-cell{white-space:nowrap}.action-btn{padding:6px 12px;font-size:12px;font-weight:500;border:none;border-radius:4px;cursor:pointer;transition:all .2s ease;margin-right:6px}.action-btn:last-child{margin-right:0}.action-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-btn{background:#fff5f5;color:#c53030;border:1px solid #feb2b2}.cancel-btn:hover:not(:disabled){background:#fed7d7}.refund-btn{background:#ebf8ff;color:#2b6cb0;border:1px solid #90cdf4}.refund-btn:hover:not(:disabled){background:#bee3f8}.paid-btn{background:#c6f6d5;color:#22543d;border:1px solid #68d391}.paid-btn:hover:not(:disabled){background:#9ae6b4}.delete-btn{background:#1a1a1a;color:#ff6b6b;border:1px solid #ff6b6b}.delete-btn:hover:not(:disabled){background:#ff6b6b;color:#fff}.email-btn{background:#f0fff4;color:#276749;border:1px solid #9ae6b4}.email-btn:hover:not(:disabled){background:#c6f6d5}.email-btn.sent-status{background:#e2e8f0;color:#4a5568;border:1px solid #cbd5e0;opacity:.8;cursor:default}.email-btn.sent-status:not(.sent-status){background:#fff5f5;color:#c53030;border:1px solid #feb2b2}.edit-btn{background:#faf5ff;color:#6b46c1;border:1px solid #d6bcfa}.edit-btn:hover:not(:disabled){background:#e9d8fd}.bookings-by-status{display:flex;flex-direction:column;gap:20px}.status-section{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f}.status-section-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#f8f9fa;cursor:pointer;border-left:4px solid #ccc;transition:background .2s ease}.status-section-header:hover{background:#f0f2f5}.status-section-title{display:flex;align-items:center;gap:12px}.status-section-indicator{width:12px;height:12px;border-radius:50%}.status-section-title h3{margin:0;font-size:16px;font-weight:600;color:#1a1a2e}.status-section-count{background:#e0e0e0;color:#555;padding:2px 10px;border-radius:12px;font-size:13px;font-weight:500}.status-section-confirmed .status-section-count{background:#d4edda;color:#155724}.status-section-completed .status-section-count{background:#e2e3e5;color:#383d41}.status-section-pending .status-section-count{background:#fff3cd;color:#856404}.status-section-cancelled .status-section-count{background:#f8d7da;color:#721c24}.status-section-toggle{font-size:20px;font-weight:600;color:#888;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease}.status-section-toggle.collapsed{color:#666}.status-section .booking-accordion{padding:16px;border-top:1px solid #e0e0e0}.booking-accordion{display:flex;flex-direction:column;gap:12px}.booking-card{background:#fff;border-radius:8px;border:1px solid #e0e0e0;overflow:hidden;transition:box-shadow .2s ease}.booking-card:hover{box-shadow:0 2px 8px #00000014}.booking-card.expanded{box-shadow:0 4px 12px #0000001a}.booking-card.booking-status-confirmed{border-left:4px solid #28a745}.booking-card.booking-status-pending{border-left:4px solid #ffc107}.booking-card.booking-status-cancelled{border-left:4px solid #dc3545}.booking-card.booking-status-refunded{border-left:4px solid #6c757d}.booking-card-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;cursor:pointer;background:#fafafa;transition:background .2s ease}.booking-card-header:hover{background:#f5f5f5}.booking-card.expanded .booking-card-header{border-bottom:1px solid #e0e0e0}.booking-header-main{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.booking-ref{font-family:Courier New,monospace;font-weight:700;font-size:15px;color:#1a1a2e;min-width:120px}.booking-name{font-weight:500;color:#333;min-width:150px}.booking-card-header.booking-header-stacked{display:block}.booking-header-info{display:flex;flex-direction:column;gap:.25rem}.booking-header-top{display:flex;align-items:center;gap:.75rem}.booking-ref-large{font-family:Courier New,monospace;font-weight:700;font-size:1.125rem;color:#1a1a2e;white-space:nowrap}.booking-customer-name{font-size:.875rem;color:#666;white-space:nowrap}.booking-card-header.subscriber-header{display:flex;justify-content:space-between;align-items:center;gap:1rem}.subscriber-info{display:flex;flex-direction:column;gap:.25rem}.subscriber-name{font-weight:600;color:#1a1a2e;font-size:.9375rem;white-space:nowrap}.subscriber-email{color:#666;font-size:.875rem}.section-header-with-action{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.section-header-with-action h4{margin:0}.promo-buttons{display:flex;gap:.5rem}.section-empty{color:#999;font-size:.875rem;font-style:italic;margin:0}.subscriber-unsubscribed-notice{background:#fed7d7;color:#c53030;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;text-align:center}.success-banner{background:#c6f6d5;color:#22543d;padding:.75rem 1rem;border-radius:6px;font-size:.875rem;margin-bottom:1rem;text-align:center;font-weight:500}.modal-btn-success{background:#38a169;color:#fff}.modal-btn-success:hover{background:#2f855a}.booking-date{color:#666;font-size:14px;min-width:140px}.booking-expand-icon{font-size:20px;font-weight:300;color:#888;width:24px;text-align:center}.booking-card-body{padding:20px;display:flex;flex-direction:column;gap:20px;background:#fff}.booking-section{background:#f8f9fa;border-radius:8px;padding:16px 20px}.booking-section h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#1a1a2e;text-transform:uppercase;letter-spacing:.5px}.booking-section-content{display:flex;flex-direction:column;gap:10px}.booking-detail-row{display:flex;flex-wrap:wrap;gap:24px 40px}.booking-detail{display:flex;flex-direction:column;gap:4px;min-width:150px}.detail-label{font-size:12px;color:#888;font-weight:500;text-transform:uppercase;letter-spacing:.3px}.detail-value{font-size:14px;color:#333}.billing-address-detail{min-width:200px;flex:1}.billing-address{line-height:1.5;white-space:pre-line}.booking-actions-section{background:#fff;border:1px solid #e0e0e0}.booking-actions{display:flex;flex-wrap:wrap;gap:10px}.booking-actions .action-btn{margin-right:0}.reminder-status-indicator{display:flex;flex-direction:column;align-items:center;padding:8px 16px;border-radius:8px;background:#f8fafc;border:1px solid #e2e8f0}.reminder-label{font-size:10px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.reminder-badge{font-size:13px;font-weight:500;padding:4px 12px;border-radius:6px}.reminder-badge.sent{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.reminder-badge.pending{background:#fefce8;color:#854d0e;border:1px solid #fef08a}.vehicle-reg{font-family:Courier New,monospace;font-weight:600;background:#f7fafc;padding:2px 6px;border-radius:4px;border:1px solid #e2e8f0}.airline-name{color:#666;margin-right:6px}.flight-number{font-family:Courier New,monospace;color:#4a5568}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal-content{background:#fff;border-radius:12px;padding:24px;max-width:450px;width:100%;box-shadow:0 20px 50px #0000004d;color:#333;max-height:calc(100vh - 40px);overflow-y:auto}.modal-content h3{margin:0 0 12px;font-size:20px;color:#1a1a2e}.modal-content>p{color:#666;margin:0 0 20px}.modal-booking-info{background:#f8f9fa;border-radius:8px;padding:16px;margin-bottom:24px}.modal-booking-info p{margin:0 0 8px;font-size:14px;color:#333}.modal-booking-info p:last-child{margin-bottom:0}.modal-warning{color:#856404;background:#fff3cd;padding:12px;border-radius:6px;font-size:14px;margin:16px 0}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.modal-btn{padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.modal-btn:disabled{opacity:.6;cursor:not-allowed}.modal-btn-secondary{background:#f0f0f0;color:#333}.modal-btn-secondary:hover:not(:disabled){background:#e0e0e0}.modal-btn-danger{background:#c53030;color:#fff}.modal-btn-danger:hover:not(:disabled){background:#9b2c2c}.modal-btn-primary{background:#f7b32b;color:#1a1a2e}.modal-btn-primary:hover:not(:disabled){background:#e5a320}.modal-form{margin:16px 0}.modal-form-group{margin-bottom:16px}.modal-form-group:last-child{margin-bottom:0}.modal-form-group label{display:block;font-weight:500;margin-bottom:6px;color:#333}.modal-form-group input,.modal-form-group select{width:100%;padding:12px 14px;border:1px solid #e0e0e0;border-radius:8px;font-size:15px;box-sizing:border-box;background:#fafafa;color:#1a1a2e;transition:all .2s ease}.modal-form-group select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%23666' d='M6 8L0 0h12z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 14px center;padding-right:40px;cursor:pointer}.modal-form-group input:hover,.modal-form-group select:hover{border-color:#ccc;background-color:#fff}.modal-form-group input:focus,.modal-form-group select:focus{outline:none;border-color:#f7b32b;background-color:#fff;box-shadow:0 0 0 3px #f7b32b26}.modal-form-hint{font-size:12px;color:#666;margin-top:6px;margin-bottom:0}.modal-form-group input[type=date],.modal-form-group input[type=time]{appearance:none;-webkit-appearance:none;cursor:pointer}.modal-form-group input[type=date]::-webkit-calendar-picker-indicator,.modal-form-group input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;transition:opacity .2s ease}.modal-form-group input[type=date]:hover::-webkit-calendar-picker-indicator,.modal-form-group input[type=time]:hover::-webkit-calendar-picker-indicator{opacity:1}.payment-refunded{background:#e2e3e5;color:#383d41}.payment-partially_refunded{background:#fff3cd;color:#856404}.modal-content-wide{max-width:700px}.view-inspection-btn{background:#17a2b8!important;color:#fff!important}.view-inspection-btn:hover{background:#138496!important}.inspection-loading{display:flex;flex-direction:column;align-items:center;padding:32px;gap:12px}.inspection-loading p{color:#666;margin:0}.inspection-details{margin-top:16px}.inspection-section{margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #e0e0e0}.inspection-section:last-child{border-bottom:none;margin-bottom:0}.inspection-section h4{font-size:14px;font-weight:600;color:#1a1a2e;margin:0 0 12px}.inspection-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.inspection-item{display:flex;flex-direction:column;gap:4px}.inspection-label{font-size:12px;color:#666;font-weight:500}.inspection-value{font-size:14px;color:#1a1a2e}.inspection-notes{background:#f8f9fa;padding:12px;border-radius:6px;font-size:14px;line-height:1.5;margin:0;white-space:pre-wrap}.inspection-declined{background:#fff3cd;padding:16px;border-radius:8px;border:1px solid #ffc107}.inspection-declined h4{color:#856404}.inspection-declined p{margin:8px 0 0;color:#856404}.inspection-acknowledged{background:#d4edda;padding:12px;border-radius:6px;color:#155724;margin:0;font-size:14px}.inspection-photos{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.inspection-photo{display:flex;flex-direction:column;gap:6px}.inspection-photo .photo-label{font-size:12px;color:#666;font-weight:500}.inspection-photo img{width:100%;height:120px;object-fit:cover;border-radius:6px;border:1px solid #e0e0e0;cursor:pointer;transition:transform .2s}.inspection-photo img:hover{transform:scale(1.02)}.inspection-signature{background:#f8f9fa;padding:12px;border-radius:6px;display:inline-block}.inspection-signature img{max-width:300px;max-height:100px}.inspection-empty{text-align:center;padding:32px;background:#f8f9fa;border-radius:8px;margin-top:16px}.inspection-empty p{margin:0;color:#666}.inspection-empty-hint{font-size:13px;margin-top:8px!important;color:#999!important}@media(max-width:600px){.inspection-grid{grid-template-columns:1fr}.inspection-photos{grid-template-columns:repeat(2,1fr)}}.modal-section-title{font-size:14px;font-weight:600;color:#1a1a2e;margin:16px 0 8px;padding-bottom:4px;border-bottom:1px solid #e0e0e0}.modal-section-title:first-of-type{margin-top:0}.modal-form-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:16px}@media(max-width:600px){.modal-form-row{grid-template-columns:1fr}}@media(max-width:768px){.admin-header{flex-direction:column;gap:12px;padding:16px}.admin-header-left,.admin-header-right{width:100%;justify-content:center}.admin-nav{overflow-x:auto;padding:0 16px}.admin-nav-item{padding:12px 16px;white-space:nowrap}.admin-content,.admin-section{padding:16px}.admin-table th,.admin-table td{padding:10px 12px}.admin-filters{flex-direction:column;align-items:stretch}.admin-search{min-width:100%}.admin-filter-group{justify-content:space-between}.admin-filter-select{flex:1}.admin-filter-count{text-align:center;margin-left:0}.modal-actions{flex-direction:column}.modal-btn{width:100%}.action-btn{padding:8px 10px;margin-bottom:4px;display:block;width:100%;margin-right:0}.actions-cell{white-space:normal}.booking-header-main{flex-direction:column;align-items:flex-start;gap:8px}.booking-ref,.booking-name,.booking-date{min-width:auto}.booking-card-header{padding:14px 16px}.booking-card-body{padding:16px;gap:16px}.booking-section{padding:14px 16px}.booking-detail-row{flex-direction:column;gap:12px}.booking-detail{min-width:auto}.booking-actions{flex-direction:column}.booking-actions .action-btn{width:100%}}.subscribers-table-container{overflow-x:auto;margin-top:20px}.subscribers-table{width:100%;border-collapse:collapse;font-size:14px}.subscribers-table th,.subscribers-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #e2e8f0}.subscribers-table th{background:#f7fafc;font-weight:600;color:#4a5568;text-transform:uppercase;font-size:11px;letter-spacing:.5px}.subscribers-table tbody tr:hover{background:#f7fafc}.subscribers-table tbody tr.unsubscribed{opacity:.6;background:#fafafa}.promo-code-display{font-family:monospace;background:#edf2f7;padding:4px 8px;border-radius:4px;font-weight:600;color:#2d3748}.no-code{color:#a0aec0;font-style:italic}.discount-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:600;background:#e0f0ff;color:#2b6cb0}.discount-badge.free{background:#c6f6d5;color:#22543d}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:12px;font-weight:500}.status-badge.pending{background:#feebc8;color:#c05621}.status-badge.sent{background:#bee3f8;color:#2b6cb0}.status-badge.used{background:#c6f6d5;color:#276749}.status-badge.expired,.status-badge.unsubscribed{background:#fed7d7;color:#c53030}.promo-btn{background:#ebf8ff;color:#2b6cb0;border:1px solid #90cdf4}.promo-btn:hover:not(:disabled){background:#bee3f8}.promo-btn.free{background:#c6f6d5;color:#22543d;border:1px solid #68d391}.promo-btn.free:hover:not(:disabled){background:#9ae6b4}.promo-btn.founder{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.promo-btn.founder:hover:not(:disabled){background:#fde68a}.promo-btn.sent{background:#e2e8f0;color:#718096;border:1px solid #cbd5e0;cursor:not-allowed}.promo-btn.disabled{background:#e2e8f0;color:#a0aec0;border:1px solid #cbd5e0;cursor:not-allowed;opacity:.7}.promo-btn.disabled:hover{background:#e2e8f0}.subscribers-summary{margin-top:20px;padding:15px;background:#f7fafc;border-radius:6px;color:#718096;font-size:14px}@media(max-width:768px){.subscribers-table th,.subscribers-table td{padding:8px 10px;font-size:12px}.subscribers-table .actions-cell{display:flex;flex-direction:column;gap:4px}.subscribers-table .action-btn{width:100%;padding:6px 8px;font-size:11px}}.pricing-settings-form{max-width:800px}.admin-pricing-section{background:#fff;border-radius:10px;padding:24px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.admin-pricing-section h3{margin:0 0 8px;font-size:18px;font-weight:600;color:#1a1a2e}.pricing-hint{margin:0 0 20px;font-size:14px;color:#666}.pricing-inputs{display:flex;gap:24px;flex-wrap:wrap}.pricing-inputs.pricing-inputs-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.pricing-input-group{flex:1;min-width:120px}.pricing-input-group.pricing-input-small{flex:0 0 160px;min-width:160px}.pricing-input-group.pricing-input-highlight{background:#f0f7ff;padding:12px;border-radius:8px;border:1px solid #cce0ff}.pricing-input-hint{display:block;margin-top:6px;font-size:12px;color:#888}.pricing-input-group label{display:block;margin-bottom:8px;font-size:14px;font-weight:500;color:#333}.price-input-wrapper{display:flex;align-items:center;background:#f5f7fa;border:1px solid #ddd;border-radius:8px;overflow:hidden}.price-input-wrapper:focus-within{border-color:#1a1a2e;box-shadow:0 0 0 2px #1a1a2e1a}.currency-symbol{padding:12px 16px;background:#e9ecef;font-size:16px;font-weight:600;color:#333;border-right:1px solid #ddd}.price-input-wrapper input{flex:1;padding:12px 16px;border:none;background:transparent;font-size:18px;font-weight:600;color:#1a1a2e}.price-input-wrapper input:focus{outline:none}.pricing-preview{background:#fff;border-radius:10px;padding:24px;margin-bottom:20px;box-shadow:0 1px 3px #0000001a}.pricing-preview h3{margin:0 0 16px;font-size:18px;font-weight:600;color:#1a1a2e}.pricing-preview-table{width:100%;border-collapse:collapse}.pricing-preview-table th,.pricing-preview-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}.pricing-preview-table th{background:#f5f7fa;font-size:13px;font-weight:600;color:#666;text-transform:uppercase}.pricing-preview-table td{font-size:16px;font-weight:500;color:#333}.pricing-preview-table td:first-child{font-weight:600;color:#1a1a2e}.pricing-actions{padding-top:10px}.pricing-save-btn{padding:14px 32px;font-size:16px;font-weight:600;color:#1a1a2e;background:#d9ff00;border:none;border-radius:8px;cursor:pointer;transition:all .2s}.pricing-save-btn:hover{background:#c4e600}.pricing-save-btn:disabled{opacity:.6;cursor:not-allowed}@media(max-width:1024px){.pricing-inputs.pricing-inputs-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.pricing-inputs{flex-direction:column;gap:16px}.pricing-inputs.pricing-inputs-grid{grid-template-columns:1fr}.pricing-input-group{min-width:100%}.pricing-preview-table{font-size:14px}.pricing-preview-table th,.pricing-preview-table td{padding:10px 12px}}.users-table .toggle-btn{padding:4px 12px;font-size:12px;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .2s ease}.toggle-btn.toggle-on{background:#c6f6d5;color:#22543d}.toggle-btn.toggle-on:hover{background:#9ae6b4}.toggle-btn.toggle-off{background:#f0f0f0;color:#888}.toggle-btn.toggle-off:hover{background:#e0e0e0}.user-inactive{opacity:.5}.user-form{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.user-form-row{display:flex;gap:12px}.user-form-row .user-form-field{flex:1}.user-form-field label{display:block;font-size:13px;font-weight:500;color:#555;margin-bottom:6px}.user-form-field input[type=text],.user-form-field input[type=email]{width:100%;padding:10px 12px;font-size:14px;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .2s ease;box-sizing:border-box}.user-form-field input:focus{border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.user-form-toggles{display:flex;gap:24px;padding-top:4px}@media(max-width:768px){.user-form-row{flex-direction:column}.users-table th:nth-child(6),.users-table td:nth-child(6){display:none}}.flights-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.flights-header h2{margin:0;font-size:1.5rem;color:#fff}.flights-header-actions{display:flex;gap:.75rem}.flights-header-actions button{padding:.6rem 1.2rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.flights-header-actions .btn-secondary{background:#2a2a2a;border:1px solid #444;color:#fff}.flights-header-actions .btn-secondary:hover{background:#3a3a3a;border-color:#555}.flights-header-actions .btn-primary{background:#d9ff00;border:none;color:#000}.flights-header-actions .btn-primary:hover{background:#c4e600}.flights-header-actions .btn-primary:disabled,.flights-header-actions .btn-secondary:disabled{opacity:.6;cursor:not-allowed}.flights-message{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:500}.flights-message.success{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.flights-message.warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.flights-subtabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#1a1a1a;padding:.5rem;border-radius:12px;width:fit-content}.flights-subtab{padding:.75rem 1.5rem;background:transparent;border:none;color:#888;font-size:.95rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s ease}.flights-subtab:hover{color:#fff;background:#2a2a2a}.flights-subtab.active{color:#000;background:#d9ff00}.flights-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap;align-items:center;background:#1a1a1a;padding:1rem;border-radius:12px}.flight-filter-group{display:flex;align-items:center;gap:.5rem}.flight-filter-group label{color:#888;font-size:.875rem;font-weight:500}.flight-filter-group select{background:#2a2a2a;border:1px solid #444;color:#fff;padding:.6rem 2rem .6rem 1rem;border-radius:8px;min-width:160px;font-size:.875rem;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .75rem center;transition:all .2s ease}.flight-filter-group select:hover{border-color:#666}.flight-filter-group select:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 2px #d9ff0033}.flight-number-input{background:#2a2a2a;border:1px solid #444;color:#fff;padding:.6rem 1rem;border-radius:8px;font-size:.875rem;width:120px;transition:all .2s ease}.flight-number-input::placeholder{color:#666}.flight-number-input:hover{border-color:#666}.flight-number-input:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 2px #d9ff0033}.flight-date-input{background:#2a2a2a;border:1px solid #444;color:#fff;padding:.6rem 1rem;border-radius:8px;font-size:.875rem;transition:all .2s ease;color-scheme:dark}.flight-date-input:hover{border-color:#666}.flight-date-input:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 2px #d9ff0033}.lead-search-group{position:relative;flex:1;max-width:300px}.lead-search-input{width:100%!important;padding-right:2.5rem!important}.lead-search-clear{position:absolute;right:.5rem;top:50%;transform:translateY(-50%);background:none;border:none;color:#888;font-size:1.25rem;cursor:pointer;padding:.25rem .5rem;line-height:1;transition:color .2s ease}.lead-search-clear:hover{color:#d9ff00}.clear-dates-btn{padding:.6rem 1rem!important;font-size:.875rem!important}.leads-filter-count{margin-left:auto;color:#888;font-size:.875rem;font-weight:500;white-space:nowrap}.leads-date-picker .react-datepicker-wrapper{width:auto}.leads-date-picker .react-datepicker__input-container input{background:#2a2a2a;border:1px solid #444;color:#fff;padding:.6rem 1rem;border-radius:8px;font-size:.875rem;width:130px;transition:all .2s ease}.leads-date-picker .react-datepicker__input-container input::placeholder{color:#666}.leads-date-picker .react-datepicker__input-container input:hover{border-color:#666}.leads-date-picker .react-datepicker__input-container input:focus{outline:none;border-color:#d9ff00;box-shadow:0 0 0 2px #d9ff0033}.leads-date-picker .react-datepicker{background:#1a1a1a;border:1px solid #444;border-radius:8px;font-family:inherit}.leads-date-picker .react-datepicker__header{background:#2a2a2a;border-bottom:1px solid #444}.leads-date-picker .react-datepicker__current-month{color:#d9ff00;font-weight:600}.leads-date-picker .react-datepicker__day-name{color:#888}.leads-date-picker .react-datepicker__day{color:#fff;border-radius:4px}.leads-date-picker .react-datepicker__day:hover{background:#3a3a3a}.leads-date-picker .react-datepicker__day--selected{background:#d9ff00!important;color:#000!important}.leads-date-picker .react-datepicker__day--keyboard-selected{background:#d9ff004d}.leads-date-picker .react-datepicker__day--outside-month{color:#555}.leads-date-picker .react-datepicker__navigation-icon:before{border-color:#888}.leads-date-picker .react-datepicker__navigation:hover *:before{border-color:#d9ff00}.leads-date-picker .react-datepicker__close-icon:after{background-color:#666;font-size:14px}.leads-date-picker .react-datepicker__close-icon:hover:after{background-color:#d9ff00}.sort-toggle-btn{padding:.6rem 1rem;background:#2a2a2a;border:1px solid #444;color:#fff;border-radius:8px;cursor:pointer;font-size:.875rem;font-weight:500;transition:all .2s ease;margin-left:auto}.sort-toggle-btn:hover{border-color:#d9ff00;color:#d9ff00;background:#333}.flights-table-wrapper{overflow-x:auto}.flights-table{width:100%;border-collapse:collapse;font-size:.875rem}.flights-table th,.flights-table td{padding:.75rem;text-align:left;border-bottom:1px solid #333}.flights-table th{background:#1a1a1a;color:#888;font-weight:500;text-transform:uppercase;font-size:.75rem;letter-spacing:.05em}.flights-table td{color:#fff}.flights-table tbody tr:hover{background:#d9ff000d}.flights-table tbody tr.editing{background:#d9ff001a}.flight-edit-input{background:#0a0a0a;border:1px solid #444;color:#fff;padding:.4rem .5rem;border-radius:4px;width:100%;font-size:.875rem}.flight-edit-input.small{max-width:80px}.flight-edit-input.tiny{max-width:50px}.flight-edit-input.time-24h{max-width:70px;text-align:center;font-family:monospace}.flight-edit-input:focus{border-color:#d9ff00;outline:none}.flight-actions{display:flex;gap:.5rem}.btn-edit{padding:.4rem .75rem;background:#333;border:none;color:#fff;border-radius:4px;cursor:pointer;font-size:.75rem;transition:background .2s ease}.btn-edit:hover{background:#444}.btn-save{padding:.4rem .75rem;background:#22c55e;border:none;color:#fff;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-save:hover{background:#16a34a}.btn-save:disabled{opacity:.5;cursor:not-allowed}.btn-cancel{padding:.4rem .75rem;background:#dc2626;border:none;color:#fff;border-radius:4px;cursor:pointer;font-size:.875rem}.btn-cancel:hover{background:#b91c1c}.capacity-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.capacity-badge.tier-0{background:#7f1d1d;color:#fca5a5}.capacity-badge.tier-2{background:#713f12;color:#fcd34d}.capacity-badge.tier-4{background:#365314;color:#a3e635}.capacity-badge.tier-6{background:#14532d;color:#4ade80}.capacity-badge.tier-8{background:#064e3b;color:#34d399}.slots-display{font-family:monospace;color:#888}.no-data{text-align:center;color:#666;padding:2rem}.loading-text{text-align:center;color:#888;padding:2rem}.flights-by-month{display:flex;flex-direction:column;gap:1rem}.flight-month-section{background:#1a1a1a;border-radius:8px;overflow:hidden}.flight-month-header{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;background:#222;cursor:pointer;transition:background .2s ease}.flight-month-header:hover{background:#2a2a2a}.flight-month-header .collapse-icon{color:#d9ff00;font-size:.75rem;width:1rem}.flight-month-header .month-label{font-weight:600;color:#fff;font-size:1rem}.flight-month-header .flight-count{color:#888;font-size:.875rem;margin-left:auto}.flight-month-section .flights-table-wrapper{padding:0}.flight-month-section .flights-table{margin:0}.btn-delete{padding:.4rem .75rem;background:#7f1d1d;border:none;color:#fca5a5;border-radius:4px;cursor:pointer;font-size:.75rem;transition:background .2s ease}.btn-delete:hover{background:#991b1b}.add-flight-modal{max-width:500px}.add-flight-form{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.add-flight-form .form-row{display:flex;flex-direction:column;gap:6px}.add-flight-form label{font-size:13px;font-weight:500;color:#555}.add-flight-form input,.add-flight-form select{width:100%;padding:10px 12px;font-size:14px;border:1px solid #ddd;border-radius:8px;outline:none;transition:border-color .2s ease;box-sizing:border-box;background:#fff;color:#333}.add-flight-form input:focus,.add-flight-form select:focus{border-color:#f7b32b;box-shadow:0 0 0 3px #f7b32b26}.add-flight-form input::placeholder{color:#999}.warning-text{color:#fca5a5;font-size:.875rem;margin-top:.5rem}@media(max-width:768px){.flights-header{flex-direction:column;gap:1rem;align-items:flex-start}.flights-filters{flex-direction:column;align-items:flex-start}.flight-filter-group{width:100%}.flight-filter-group select{flex:1}}.reports-description{color:#666;margin-bottom:1.5rem;font-size:14px}.booking-map-container{background:#fff;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000001a}.map-count{margin-top:.75rem;font-size:13px;color:#666;text-align:right}.map-empty{background:#fff;border-radius:8px;padding:3rem;text-align:center;color:#888;border:1px dashed #ddd}.map-popup{font-size:13px;line-height:1.4}.map-popup strong{color:#1a1a2e;font-size:14px}.map-popup p{margin:4px 0;color:#444}.map-popup .popup-location{color:#666;font-size:12px}.map-popup .popup-date{color:#888;font-size:12px}.map-popup .popup-status{display:inline-block;padding:2px 8px;border-radius:4px;font-size:11px;font-weight:500;text-transform:capitalize;margin-top:6px}.map-popup .status-confirmed{background:#e3f2fd;color:#1565c0}.map-popup .status-completed{background:#e8f5e9;color:#2e7d32}.map-popup .status-cancelled{background:#ffebee;color:#c62828}.map-popup .status-pending{background:#fff3e0;color:#e65100}.map-type-tabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.map-type-tab{padding:.75rem 1.5rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;font-weight:500;color:#666;transition:all .2s ease}.map-type-tab:hover{background:#e9ecef}.map-type-tab.active{background:#1a3d5c;color:#fff;border-color:#1a3d5c}.skipped-bookings{margin-top:1rem;padding:1rem;background:#fff8e1;border:1px solid #ffcc80;border-radius:6px;font-size:13px}.skipped-summary{margin:0 0 .5rem;color:#e65100;font-weight:500}.skipped-list{margin:0;padding-left:1.25rem;color:#666}.skipped-list li{margin:.25rem 0}.recent-bookings-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;margin-bottom:24px}.recent-bookings-title{margin:0 0 16px;font-size:16px;font-weight:600;color:#1a1a2e}.recent-bookings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.recent-booking-card{background:#f8f9fa;border:1px solid #e5e7eb;border-radius:8px;padding:12px;cursor:pointer;transition:all .2s ease;border-left:4px solid #6b7280}.recent-booking-card:hover{background:#f0f0f0;transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.recent-booking-card.booking-status-confirmed{border-left-color:#22c55e}.recent-booking-card.booking-status-pending{border-left-color:#f59e0b}.recent-booking-card.booking-status-completed{border-left-color:#3b82f6}.recent-booking-card.booking-status-cancelled{border-left-color:#ef4444}.recent-booking-card.booking-status-refunded{border-left-color:#8b5cf6}.recent-booking-ref{font-size:13px;font-weight:600;color:#1a1a2e;margin-bottom:4px}.recent-booking-name{font-size:12px;color:#555;margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recent-booking-date{font-size:12px;color:#888;margin-bottom:6px}.recent-booking-status{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px;padding:2px 6px;border-radius:4px;display:inline-block}.recent-booking-status.status-confirmed{background:#dcfce7;color:#166534}.recent-booking-status.status-pending{background:#fef3c7;color:#92400e}.recent-booking-status.status-completed{background:#dbeafe;color:#1e40af}.recent-booking-status.status-cancelled{background:#fee2e2;color:#991b1b}.recent-booking-status.status-refunded{background:#ede9fe;color:#5b21b6}@media(max-width:768px){.recent-bookings-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.recent-bookings-grid{grid-template-columns:1fr}}.messages-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.messages-header h2{margin:0;font-size:1.5rem;color:#fff}.messages-header-actions{display:flex;gap:.75rem}.messages-header-actions button{padding:.6rem 1.2rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.5rem}.messages-header-actions .btn-secondary{background:#2a2a2a;border:1px solid #444;color:#fff}.messages-header-actions .btn-secondary:hover{background:#3a3a3a;border-color:#555}.messages-header-actions .btn-primary{background:#d9ff00;border:none;color:#000}.messages-header-actions .btn-primary:hover{background:#c4e600}.messages-message{padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-weight:500}.messages-message.success{background:#22c55e26;color:#22c55e;border:1px solid rgba(34,197,94,.3)}.messages-message.warning{background:#f59e0b26;color:#f59e0b;border:1px solid rgba(245,158,11,.3)}.sms-stats-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;margin-bottom:1.5rem}.sms-stat-card{background:#1a1a1a;border-radius:12px;padding:1.25rem;text-align:center;border:1px solid #333}.sms-stat-value{font-size:1.75rem;font-weight:600;color:#d9ff00;margin-bottom:.25rem}.sms-stat-label{font-size:.85rem;color:#888;text-transform:uppercase;letter-spacing:.5px}.messages-subtabs{display:flex;gap:.5rem;margin-bottom:1.5rem;background:#1a1a1a;padding:.5rem;border-radius:12px;width:fit-content}.messages-subtab{padding:.75rem 1.5rem;background:transparent;border:none;color:#888;font-size:.95rem;font-weight:500;cursor:pointer;border-radius:8px;transition:all .2s ease}.messages-subtab:hover{color:#fff;background:#ffffff0d}.messages-subtab.active{background:#d9ff00;color:#000}.messages-filters{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.messages-filter-group{display:flex;align-items:center;gap:.5rem}.messages-filter-group label{color:#888;font-size:.9rem}.messages-filter-group select{padding:.5rem 1rem;border-radius:8px;border:1px solid #444;background:#2a2a2a;color:#fff;font-size:.9rem}.direction-badge{display:inline-block;padding:.25rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600}.direction-badge.inbound{background:#3b82f633;color:#60a5fa}.direction-badge.outbound{background:#22c55e33;color:#22c55e}.message-content{cursor:pointer;max-width:300px}.message-content:hover{color:#1a1a2e;text-decoration:underline}.unread-badge{background:#ef4444;color:#fff;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600;margin-left:.5rem}.conversations-container{display:grid;grid-template-columns:320px 1fr;gap:0;height:calc(100vh - 380px);min-height:500px;background:#1a1a1a;border-radius:12px;overflow:hidden;border:1px solid #333}.thread-list{background:#111;border-right:1px solid #333;display:flex;flex-direction:column;overflow:hidden}.thread-list-header{display:flex;justify-content:space-between;align-items:center;padding:1rem;border-bottom:1px solid #333}.thread-list-title{display:flex;align-items:center;gap:.5rem}.thread-list-title input[type=checkbox]{width:16px;height:16px;cursor:pointer}.thread-list-header h4{margin:0;font-size:.9rem;font-weight:600;color:#fff}.thread-list-actions{display:flex;align-items:center;gap:.5rem}.thread-list-header .btn-icon{background:transparent;border:none;color:#888;cursor:pointer;font-size:1rem;padding:.25rem;transition:color .2s}.thread-list-header .btn-icon:hover{color:#fff}.thread-list-header .btn-icon.danger{color:#e74c3c}.thread-list-header .btn-icon.danger:hover{color:#ff6b6b}.thread-loading,.no-threads{padding:2rem;text-align:center;color:#666;font-size:.875rem}.thread-items{flex:1;overflow-y:auto}.thread-item{display:flex;align-items:flex-start;gap:.75rem;padding:.875rem 1rem;cursor:pointer;border-bottom:1px solid #222;transition:background .15s}.thread-item:hover{background:#1a1a1a}.thread-item.selected{background:#252525;border-left:3px solid #D9FF00}.thread-item.unread{background:#d9ff000d}.thread-item.checked{background:#d9ff001a}.thread-checkbox{width:16px;height:16px;cursor:pointer;flex-shrink:0;margin-top:.75rem}.thread-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem;color:#fff;flex-shrink:0}.thread-info{flex:1;min-width:0;overflow:hidden}.thread-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.thread-name{font-weight:600;font-size:.875rem;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.thread-time{font-size:.7rem;color:#666;white-space:nowrap;margin-left:.5rem}.thread-preview{font-size:.8rem;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-arrow{color:#666}.thread-phone{font-size:.7rem;color:#555;margin-top:.2rem}.thread-unread-badge{background:#d9ff00;color:#000;min-width:20px;height:20px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700;flex-shrink:0}.conversation-panel{display:flex;flex-direction:column;background:#1a1a1a;overflow:hidden}.no-conversation-selected{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#555}.empty-state-icon{font-size:3rem;margin-bottom:1rem;opacity:.5}.no-conversation-selected p{font-size:.9rem}.conversation-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;background:#111;border-bottom:1px solid #333}.conversation-contact{display:flex;align-items:center;gap:.75rem}.contact-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#7c3aed,#a855f7);display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;color:#fff}.contact-info{display:flex;flex-direction:column}.contact-name{font-weight:600;font-size:.9rem;color:#fff}.contact-phone{font-size:.75rem;color:#888}.conversation-actions .btn-icon{background:transparent;border:none;color:#888;cursor:pointer;font-size:1rem;padding:.5rem;border-radius:6px;transition:all .2s}.conversation-actions .btn-icon:hover{background:#333;color:#fff}.conversation-actions .btn-icon.danger{color:#e74c3c}.conversation-actions .btn-icon.danger:hover{background:#e74c3c33;color:#ff6b6b}.conversation-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.5rem}.conversation-loading,.no-messages{text-align:center;color:#666;padding:2rem;font-size:.875rem}.message-date-divider{text-align:center;color:#666;font-size:.7rem;padding:.75rem 0;position:relative}.message-date-divider:before,.message-date-divider:after{content:"";position:absolute;top:50%;width:30%;height:1px;background:#333}.message-date-divider:before{left:5%}.message-date-divider:after{right:5%}.message-bubble{max-width:75%;padding:.75rem 1rem;border-radius:16px;position:relative;word-wrap:break-word}.message-bubble.inbound{background:#2a2a2a;color:#fff;align-self:flex-start;border-bottom-left-radius:4px}.message-bubble.outbound{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;align-self:flex-end;border-bottom-right-radius:4px}.message-bubble .message-content{font-size:.875rem;line-height:1.5;max-width:none;cursor:default}.message-bubble .message-content:hover{text-decoration:none;color:inherit}.message-meta{display:flex;align-items:center;gap:.5rem;margin-top:.35rem;font-size:.65rem;opacity:.7}.message-time{color:inherit}.message-status{font-size:.7rem}.message-status.delivered{color:#22c55e}.message-status.sent{color:#60a5fa}.message-status.failed{color:#ef4444}.message-booking{cursor:help}.conversation-reply{display:flex;gap:.75rem;padding:1rem;background:#111;border-top:1px solid #333}.conversation-reply textarea{flex:1;background:#222;border:1px solid #333;border-radius:12px;padding:.75rem 1rem;color:#fff;font-size:.875rem;resize:none;font-family:inherit;transition:border-color .2s}.conversation-reply textarea:focus{outline:none;border-color:#7c3aed}.conversation-reply textarea::placeholder{color:#666}.btn-send{background:#d9ff00;color:#000;border:none;border-radius:12px;padding:0 1.5rem;font-weight:600;font-size:.875rem;cursor:pointer;transition:all .2s}.btn-send:hover:not(:disabled){background:#c4e600}.btn-send:disabled{opacity:.5;cursor:not-allowed}@media(max-width:900px){.conversations-container{grid-template-columns:1fr;height:auto}.thread-list{max-height:300px;border-right:none;border-bottom:1px solid #333}.conversation-panel{min-height:400px}}.templates-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.templates-header .btn-primary{padding:.6rem 1.2rem;background:#d9ff00;border:none;color:#000;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease}.templates-header .btn-primary:hover{background:#c4e600}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin-bottom:2rem}.template-card{background:#1a1a1a;border-radius:12px;padding:1.25rem;border:1px solid #333;transition:all .2s ease}.template-card:hover{border-color:#555}.template-card.inactive{opacity:.6}.template-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.75rem}.template-header h4{margin:0;color:#fff;font-size:1rem}.template-badges{display:flex;gap:.5rem}.template-badges .badge{padding:.2rem .5rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase}.template-badges .badge.automated{background:#d9ff0033;color:#d9ff00}.template-badges .badge.inactive{background:#9ca3af33;color:#9ca3af}.template-description{color:#888;font-size:.85rem;margin-bottom:.75rem}.template-content{background:#0a0a0a;border-radius:8px;padding:.75rem;margin-bottom:.75rem}.template-content pre{margin:0;font-size:.85rem;color:#ccc;white-space:pre-wrap;word-break:break-word;font-family:inherit}.template-trigger{font-size:.8rem;color:#666;margin-bottom:.75rem}.template-trigger code{background:#d9ff001a;color:#d9ff00;padding:.1rem .4rem;border-radius:4px}.template-actions{display:flex;gap:.5rem}.template-actions .btn-sm{padding:.4rem .8rem;font-size:.8rem}.template-variables-ref{background:#1a1a1a;border-radius:12px;padding:1.25rem;border:1px solid #333}.template-variables-ref h4{margin:0 0 1rem;color:#fff;font-size:.95rem}.variables-list{display:flex;flex-wrap:wrap;gap:.5rem}.variables-list code{background:#0a0a0a;color:#d9ff00;padding:.3rem .6rem;border-radius:4px;font-size:.8rem}.drafts-section{margin-top:1rem}.drafts-list{display:grid;gap:1rem}.draft-card{background:#1a1a1a;border-radius:12px;padding:1.25rem;border:1px solid #333;transition:all .2s ease}.draft-card:hover{border-color:#555}.draft-header{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-bottom:.75rem}.draft-phone{font-weight:600;color:#fff}.draft-booking{background:#d9ff001a;color:#d9ff00;padding:.2rem .5rem;border-radius:4px;font-size:.8rem}.draft-date{color:#666;font-size:.8rem;margin-left:auto}.draft-content{background:#0a0a0a;border-radius:8px;padding:.75rem;margin-bottom:.75rem;color:#ccc;font-size:.9rem;line-height:1.5;white-space:pre-wrap;word-break:break-word}.draft-actions{display:flex;gap:.5rem}.draft-count{font-size:.75rem;color:#888;margin-left:.25rem}@media(max-width:768px){.sms-stats-grid{grid-template-columns:repeat(3,1fr)}.messages-subtabs{width:100%;overflow-x:auto}.messages-filters{flex-direction:column}.templates-grid{grid-template-columns:1fr}}@media(max-width:480px){.sms-stats-grid{grid-template-columns:repeat(2,1fr)}}.booking-search-container{position:relative}.booking-search-container input{width:100%;padding:.6rem .75rem;border-radius:8px;border:1px solid #444;background:#2a2a2a;color:#fff;font-size:.9rem}.booking-search-container .search-spinner{position:absolute;right:10px;top:50%;transform:translateY(-50%);color:#888}.booking-search-results{position:absolute;top:100%;left:0;right:0;background:#2a2a2a;border:1px solid #444;border-radius:8px;margin-top:4px;max-height:200px;overflow-y:auto;z-index:100;box-shadow:0 4px 12px #0000004d}.booking-search-result{display:flex;flex-direction:column;padding:.75rem;cursor:pointer;border-bottom:1px solid #333;transition:background .2s ease}.booking-search-result:last-child{border-bottom:none}.booking-search-result:hover{background:#3a3a3a}.booking-search-result strong{color:#d9ff00;font-size:.9rem}.booking-search-result span{color:#fff;font-size:.85rem}.booking-search-result small{color:#888;font-size:.8rem}.selected-booking-chip{display:flex;align-items:center;justify-content:space-between;background:#2a2a2a;border:1px solid #D9FF00;border-radius:8px;padding:.6rem .75rem}.selected-booking-chip span{color:#fff;font-size:.9rem}.selected-booking-chip strong{color:#d9ff00}.selected-booking-chip .chip-remove{background:none;border:none;color:#888;font-size:1.25rem;cursor:pointer;padding:0 .25rem;line-height:1;transition:color .2s ease}.selected-booking-chip .chip-remove:hover{color:#ff6b6b}.reports-subtabs{display:flex;gap:8px;margin-bottom:24px;border-bottom:2px solid #e5e7eb;padding-bottom:8px}.reports-subtab{padding:10px 20px;font-size:14px;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:6px 6px 0 0;cursor:pointer;transition:all .2s}.reports-subtab:hover{color:#f7b32b;background:#f7b32b1a}.reports-subtab.active{color:#1a1a2e;background:#f7b32b;font-weight:600}.stats-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stats-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.stats-card-value{font-size:36px;font-weight:700;color:#1a1a2e;line-height:1;margin-bottom:8px}.stats-card-label{font-size:14px;color:#6b7280;font-weight:500}.stats-card-change{font-size:12px;font-weight:600;margin-top:8px;padding:4px 8px;border-radius:4px;display:inline-block}.stats-card-change.positive{background:#dcfce7;color:#16a34a}.stats-card-change.negative{background:#fee2e2;color:#dc2626}.stats-card.revenue-card{border-left:4px solid #22c55e}.stats-card.revenue-card .stats-card-value{color:#16a34a}.stats-card-subtext{font-size:11px;color:#9ca3af;margin-top:8px}.reports-section-header{display:flex;justify-content:flex-end;margin-bottom:16px}.refresh-page-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;font-size:14px;font-weight:500;color:#1a1a2e;background:#fff;border:1px solid #e5e7eb;border-radius:8px;cursor:pointer;transition:all .2s ease}.refresh-page-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.refresh-page-btn:disabled{opacity:.6;cursor:not-allowed}.status-breakdown{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.status-breakdown h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.status-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px}.status-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;background:#f9fafb}.status-dot{width:12px;height:12px;border-radius:50%}.status-item.status-confirmed .status-dot{background:#22c55e}.status-item.status-completed .status-dot{background:#3b82f6}.status-item.status-pending .status-dot{background:#f59e0b}.status-item.status-cancelled .status-dot{background:#ef4444}.status-label{flex:1;font-size:14px;color:#374151;font-weight:500}.status-count{font-size:18px;font-weight:700;color:#1a1a2e}.fun-facts-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.fun-facts-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.fun-facts-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:1200px){.fun-facts-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.fun-facts-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.fun-facts-grid{grid-template-columns:1fr}}.fun-fact-card{display:flex;align-items:flex-start;gap:10px;padding:12px;border-radius:8px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0}.fun-fact-icon{font-size:28px;line-height:1}.fun-fact-content{display:flex;flex-direction:column;gap:4px}.fun-fact-label{font-size:12px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.fun-fact-value{font-size:18px;font-weight:700;color:#1a1a2e}.fun-fact-detail{font-size:13px;color:#6b7280}.milestones-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.milestones-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.milestones-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:1200px){.milestones-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.milestones-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.milestones-grid{grid-template-columns:1fr}}.milestone-card{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:10px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;transition:transform .2s,box-shadow .2s}.milestone-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.milestone-card.milestone-first{background:linear-gradient(135deg,#fef3c7,#fde68a);border:2px solid #f59e0b;box-shadow:0 0 0 3px #f59e0b26}.milestone-card.milestone-century{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border:2px solid #8b5cf6;box-shadow:0 0 0 3px #8b5cf626}.milestone-badge{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#1a1a2e,#2d2d4a);color:#fff;flex-shrink:0}.milestone-first .milestone-badge{background:linear-gradient(135deg,#f59e0b,#d97706)}.milestone-century .milestone-badge{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.milestone-number{font-size:14px;font-weight:800;line-height:1}.milestone-label{font-size:8px;text-transform:uppercase;letter-spacing:.5px;opacity:.9;margin-top:2px}.milestone-details{display:flex;flex-direction:column;gap:4px;min-width:0}.milestone-customer{font-size:14px;font-weight:600;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.milestone-first .milestone-customer{color:#92400e}.milestone-century .milestone-customer{color:#6d28d9}.milestone-datetime{font-size:11px;color:#64748b}.trip-insights-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.trip-insights-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.trip-insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.trip-insight-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:8px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border:1px solid #bbf7d0}.trip-insight-icon{font-size:28px;line-height:1}.trip-insight-content{display:flex;flex-direction:column;gap:4px}.trip-insight-label{font-size:12px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.trip-insight-value{font-size:18px;font-weight:700;color:#166534}.trip-insight-detail{font-size:13px;color:#6b7280}.trip-insight-busiest-section{margin-top:8px;display:flex;flex-direction:column;gap:2px}.trip-insight-busiest-label{font-size:12px;color:#374151;font-weight:600;margin-bottom:2px}.trip-insight-busiest{font-size:12px;color:#166534;font-weight:500;padding-left:8px}.booking-days-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.booking-days-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 4px}.booking-days-section .section-subtitle{font-size:13px;color:#6b7280;margin:0 0 20px}.day-of-week-chart{display:flex;justify-content:space-between;align-items:flex-end;gap:8px;height:180px;padding-top:20px}.day-bar-container{display:flex;flex-direction:column;align-items:center;flex:1;height:100%}.day-label{font-size:12px;font-weight:600;color:#475569;margin-bottom:8px;order:1}.day-bar-wrapper{flex:1;width:100%;max-width:50px;background:#f1f5f9;border-radius:6px 6px 0 0;display:flex;align-items:flex-end;overflow:hidden;order:2}.day-bar{width:100%;border-radius:6px 6px 0 0;transition:height .3s ease;min-height:4px}.day-count{font-size:14px;font-weight:700;color:#1a1a2e;margin-top:8px;order:3}.day-percent{font-size:11px;color:#6b7280;order:4}@media(max-width:600px){.day-of-week-chart{gap:4px;height:150px}.day-bar-wrapper{max-width:40px}.day-label{font-size:10px}.day-count{font-size:12px}.day-percent{font-size:10px}}.booking-targets-section{background:#fff;border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.booking-targets-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.booking-targets-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1200px){.booking-targets-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.booking-targets-grid{grid-template-columns:1fr}}.booking-target-card{display:flex;align-items:flex-start;gap:12px;padding:16px;border-radius:8px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0}.booking-target-icon{font-size:28px;line-height:1}.booking-target-content{display:flex;flex-direction:column;gap:6px;flex:1}.booking-target-label{font-size:12px;font-weight:500;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.booking-target-value{font-size:16px;font-weight:600;color:#1a1a2e}.booking-target-milestones{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.booking-target-milestones .milestone{display:inline-flex;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;border-radius:12px;background:#f1f5f9;color:#94a3b8;border:1px solid #e2e8f0}.booking-target-milestones .milestone.achieved{background:#dcfce7;color:#16a34a;border-color:#86efac}.booking-target-milestones .milestone.achieved:before{content:"✓ "}.chart-controls{display:flex;align-items:center;gap:12px;margin-bottom:16px}.chart-controls label{font-size:14px;font-weight:500;color:#374151}.chart-controls select{padding:8px 12px;font-size:14px;border:1px solid #d1d5db;border-radius:6px;background:#fff;color:#1a1a2e;cursor:pointer}.refresh-stats-btn{margin-left:auto;padding:8px 16px;font-size:13px;font-weight:500;color:#374151;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;transition:all .2s}.refresh-stats-btn:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.refresh-stats-btn:disabled{opacity:.6;cursor:not-allowed}.booking-chart{background:#fff;border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.booking-chart h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.chart-container{min-height:200px}.weekly-chart-container,.daily-chart-container{width:100%}.chart-navigation{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding:8px 0}.nav-btn{padding:8px 16px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:13px;color:#374151;transition:all .2s}.nav-btn:hover:not(:disabled){background:#e5e7eb;border-color:#9ca3af}.nav-btn:disabled{opacity:.5;cursor:not-allowed}.nav-info{font-size:13px;color:#6b7280}.daily-month-container{margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.daily-month-header{display:flex;align-items:center;padding:12px 16px;background:#f9fafb;cursor:pointer;transition:background .2s}.daily-month-header:hover{background:#f3f4f6}.expand-icon{margin-right:12px;color:#6b7280;font-size:12px}.daily-month-header .month-name{font-weight:600;color:#111827;flex:1}.daily-month-header .month-total{font-size:13px;color:#6b7280;background:#e5e7eb;padding:4px 10px;border-radius:12px}.daily-bars{padding:16px;background:#fff}.leads-month-container{margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.leads-month-header{display:flex;align-items:center;padding:12px 16px;background:#f9fafb;cursor:pointer;transition:background .2s}.leads-month-header:hover{background:#f3f4f6}.leads-month-header .expand-icon{margin-right:12px;color:#6b7280;font-size:12px}.leads-month-header .month-name{font-weight:600;color:#111827;flex:1}.leads-month-header .month-total{font-size:13px;color:#6b7280;background:#e5e7eb;padding:4px 10px;border-radius:12px}.leads-month-content{padding:12px;background:#fff;display:flex;flex-direction:column;gap:8px}.subscribers-month-container{margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.subscribers-month-header{display:flex;align-items:center;padding:12px 16px;background:#f9fafb;cursor:pointer;transition:background .2s}.subscribers-month-header:hover{background:#f3f4f6}.subscribers-month-header .expand-icon{margin-right:12px;color:#6b7280;font-size:12px}.subscribers-month-header .month-name{font-weight:600;color:#111827;flex:1}.subscribers-month-header .month-total{font-size:13px;color:#6b7280;background:#e5e7eb;padding:4px 10px;border-radius:12px}.subscribers-month-content{padding:12px;background:#fff;display:flex;flex-direction:column;gap:8px}.daily-table-containers{display:flex;flex-direction:column;gap:12px}.daily-table-month{border:1px solid #e5e7eb;border-radius:8px;overflow:hidden}.daily-table-month-header{display:flex;align-items:center;padding:12px 16px;background:#f9fafb;cursor:pointer;transition:background .2s}.daily-table-month-header:hover{background:#f3f4f6}.daily-table-month-header .expand-icon{margin-right:12px;color:#6b7280;font-size:12px}.daily-table-month-header .month-name{font-weight:600;color:#111827;flex:1}.daily-table-month-header .month-total{font-size:13px;color:#6b7280;background:#e5e7eb;padding:4px 10px;border-radius:12px}.daily-table-month .stats-table-wrapper{border-top:1px solid #e5e7eb}.stacked-bar-chart{display:flex;align-items:flex-end;gap:8px;height:200px;padding-bottom:40px;overflow-x:auto}.bar-column{display:flex;flex-direction:column;align-items:center;min-width:50px;flex:1}.bar-stack{display:flex;flex-direction:column-reverse;width:100%;max-width:40px;border-radius:4px 4px 0 0;overflow:hidden}.bar-segment{width:100%;min-height:2px;transition:height .3s ease}.bar-confirmed{background:#22c55e}.bar-completed{background:#3b82f6}.bar-pending{background:#f59e0b}.bar-cancelled{background:#ef4444}.bar-label{font-size:10px;color:#6b7280;margin-top:8px;text-align:center;white-space:nowrap}.bar-total{font-size:11px;font-weight:600;color:#374151;margin-top:2px}.line-chart{display:flex;height:200px}.chart-y-axis{display:flex;flex-direction:column;justify-content:space-between;padding-right:10px;font-size:11px;color:#6b7280;min-width:40px;text-align:right}.chart-area{flex:1;background:#f9fafb;border-radius:8px;padding:10px}.chart-area svg{width:100%;height:100%}.chart-legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.legend-item{display:flex;align-items:center;gap:6px;font-size:13px;color:#374151}.legend-color{width:12px;height:12px;border-radius:2px}.legend-confirmed{background:#22c55e}.legend-completed{background:#3b82f6}.legend-pending{background:#f59e0b}.legend-cancelled{background:#ef4444}.stats-table-section{background:#fff;border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.stats-table-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.stats-table-wrapper{overflow-x:auto}.stats-table{width:100%;border-collapse:collapse;font-size:14px}.stats-table th,.stats-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e5e7eb}.stats-table th{font-weight:600;color:#374151;background:#f9fafb}.stats-table td{color:#1a1a2e}.stats-table tbody tr:hover{background:#f9fafb}.stats-table .status-col{text-align:center;min-width:80px}.stats-table .status-col.confirmed{color:#16a34a}.stats-table .status-col.completed{color:#2563eb}.stats-table .status-col.pending{color:#d97706}.stats-table .status-col.cancelled{color:#dc2626}.stats-table th.status-col.confirmed{background:#dcfce7}.stats-table th.status-col.completed{background:#dbeafe}.stats-table th.status-col.pending{background:#fef3c7}.stats-table th.status-col.cancelled{background:#fee2e2}.occupancy-report-section{margin-top:20px}.occupancy-report-section h3{margin-bottom:8px;color:#1f2937}.occupancy-summary{display:flex;gap:20px;margin:20px 0;flex-wrap:wrap}.occupancy-stat{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:16px 24px;text-align:center;min-width:120px}.occupancy-stat-value{display:block;font-size:28px;font-weight:700;color:#1f2937}.occupancy-stat-label{display:block;font-size:12px;color:#64748b;margin-top:4px;text-transform:uppercase;letter-spacing:.5px}.occupancy-chart-container{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:24px;margin:20px 0;box-shadow:0 1px 3px #0000000d}.occupancy-chart-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.occupancy-chart-container h4{margin:0;color:#1e293b;font-size:18px;font-weight:600}.occupancy-chart-controls{display:flex;align-items:center;gap:16px}.occupancy-nav-buttons{display:flex;gap:4px}.occupancy-nav-btn{padding:6px 12px;border:1px solid #e2e8f0;background:#fff;border-radius:6px;font-size:13px;font-weight:500;color:#475569;cursor:pointer;transition:all .15s ease}.occupancy-nav-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#1e293b}.occupancy-nav-btn:disabled{opacity:.5;cursor:not-allowed}.occupancy-nav-btn.today-btn{background:#3b82f6;border-color:#3b82f6;color:#fff}.occupancy-nav-btn.today-btn:hover:not(:disabled){background:#2563eb;border-color:#2563eb}.occupancy-nav-btn.today-btn:disabled{background:#93c5fd;border-color:#93c5fd}.occupancy-capacity-badge{background:#f1f5f9;color:#475569;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:500}.occupancy-chart-wrapper{display:flex;gap:8px}.occupancy-y-axis{display:flex;flex-direction:column;justify-content:space-between;height:280px;padding-right:8px;border-right:1px solid #e2e8f0}.y-axis-label{font-size:11px;color:#94a3b8;font-weight:500;text-align:right;min-width:40px}.occupancy-chart-area{flex:1;position:relative;height:280px;overflow-x:auto}.occupancy-gridlines{position:absolute;inset:0 0 50px;pointer-events:none}.gridline{position:absolute;left:0;right:0;height:1px;background:#f1f5f9}.occupancy-chart{display:flex;align-items:flex-end;gap:6px;height:230px;padding:0 8px}.occupancy-bar-wrapper{display:flex;flex-direction:column;align-items:center;min-width:42px;height:100%;justify-content:flex-end;position:relative;cursor:pointer}.occupancy-tooltip{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);background:#1e293b;color:#fff;padding:12px 16px;border-radius:8px;font-size:12px;white-space:nowrap;opacity:0;visibility:hidden;transition:all .2s ease;z-index:100;box-shadow:0 4px 12px #00000026}.occupancy-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1e293b}.occupancy-bar-wrapper:hover .occupancy-tooltip{opacity:1;visibility:visible}.tooltip-date{font-weight:600;margin-bottom:8px;color:#f1f5f9;font-size:13px}.tooltip-stats{display:flex;flex-direction:column;gap:4px}.tooltip-occupied{color:#fbbf24}.tooltip-available{color:#4ade80}.tooltip-percent{color:#94a3b8;font-size:11px;margin-top:4px;padding-top:6px;border-top:1px solid #334155}.occupancy-bar{width:32px;min-height:6px;border-radius:6px 6px 0 0;transition:all .2s ease;position:relative;display:flex;align-items:flex-start;justify-content:center}.occupancy-bar.low{background:linear-gradient(to top,#16a34a,#22c55e)}.occupancy-bar.medium{background:linear-gradient(to top,#d97706,#f59e0b)}.occupancy-bar.high{background:linear-gradient(to top,#dc2626,#ef4444)}.occupancy-bar.current{box-shadow:0 0 0 3px #3b82f666;border:2px solid #3b82f6}.occupancy-bar.past{opacity:.5}.occupancy-bar-content{display:flex;flex-direction:column;align-items:center;gap:2px;transform:translateY(-24px)}.occupancy-bar-percent{font-size:10px;font-weight:700;color:#1e293b;white-space:nowrap}.occupancy-bar-cars{font-size:9px;font-weight:600;color:#64748b;background:#f1f5f9;padding:1px 5px;border-radius:4px}.occupancy-bar-labels{display:flex;flex-direction:column;align-items:center;margin-top:8px;gap:2px}.bar-label-day{font-size:10px;font-weight:600;color:#475569;text-transform:uppercase;letter-spacing:.3px}.bar-label-date{font-size:10px;color:#94a3b8;white-space:nowrap}.occupancy-bar-wrapper:hover .occupancy-bar{transform:scaleY(1.02);filter:brightness(1.05)}.occupancy-legend{display:flex;gap:24px;margin-top:20px;padding-top:16px;border-top:1px solid #f1f5f9;justify-content:center;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569;font-weight:500}.legend-color{width:16px;height:16px;border-radius:4px}.legend-color.low{background:linear-gradient(135deg,#16a34a,#22c55e)}.legend-color.medium{background:linear-gradient(135deg,#d97706,#f59e0b)}.legend-color.high{background:linear-gradient(135deg,#dc2626,#ef4444)}.legend-color.current{background:#3b82f6;box-shadow:0 0 0 3px #3b82f64d}.occupancy-table-container{margin-top:24px}.occupancy-table-container h4{margin:0 0 16px;color:#374151;font-size:18px;font-weight:600}.occupancy-month-group{margin-bottom:12px;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;background:#fff}.occupancy-month-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:#f9fafb;cursor:pointer;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;transition:background .2s ease}.occupancy-month-header:hover{background:#f3f4f6}.occupancy-month-group[open] .occupancy-month-header{border-bottom:1px solid #e5e7eb}.occupancy-month-group:not([open]) .occupancy-month-header{border-bottom:none}.month-title{font-size:15px}.month-stats{display:flex;gap:16px;align-items:center}.month-days{font-size:13px;color:#6b7280;font-weight:500}.month-avg{font-size:13px;font-weight:600;padding:4px 10px;border-radius:12px}.month-avg.low{background:#dcfce7;color:#166534}.month-avg.medium{background:#fef3c7;color:#92400e}.month-avg.high{background:#fee2e2;color:#991b1b}.occupancy-table-wrapper{overflow-x:auto}.occupancy-table{width:100%;border-collapse:collapse;font-size:14px}.occupancy-table thead{background:#f9fafb}.occupancy-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:2px solid #e5e7eb;white-space:nowrap}.occupancy-table td{padding:12px 16px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.occupancy-table tbody tr:hover{background:#f9fafb}.occupancy-table .date-cell{min-width:120px;font-weight:500;color:#1f2937}.occupancy-table .number-cell{min-width:100px;text-align:center;font-weight:600;font-size:15px;color:#374151}.occupancy-table .util-cell{min-width:100px;text-align:center}.occupancy-table .status-cell{min-width:90px;text-align:center}.occupancy-percent{display:inline-block;padding:4px 12px;border-radius:16px;font-weight:600;font-size:13px;min-width:60px;text-align:center}.occupancy-percent.low{background:#dcfce7;color:#166534}.occupancy-percent.medium{background:#fef3c7;color:#92400e}.occupancy-percent.high{background:#fee2e2;color:#991b1b}.highlight-row{background:#eff6ff!important}.highlight-row:hover{background:#dbeafe!important}.past-row,.past-row .date-cell,.past-row .number-cell{color:#9ca3af}.status-badge{display:inline-block;padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.current{background:#3b82f6;color:#fff}.status-badge.past{background:#e5e7eb;color:#6b7280}.status-badge.future{background:#ecfdf5;color:#059669}@media(max-width:768px){.stats-summary-cards{grid-template-columns:1fr}.status-breakdown-grid{grid-template-columns:repeat(2,1fr)}.stacked-bar-chart{padding-bottom:60px}.bar-label{transform:rotate(-45deg);transform-origin:top center}.occupancy-summary{flex-direction:column}.occupancy-stat{width:100%}.occupancy-chart{height:150px}.occupancy-bar{width:18px}.occupancy-bar-wrapper{min-width:22px}}.popular-report-section{padding:0}.popular-charts-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:20px}.popular-chart-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.popular-chart-container h4{margin:0 0 4px;color:#1a1a2e;font-size:16px;font-weight:600}.chart-subtitle{color:#6b7280;font-size:12px;margin:0 0 16px}.popular-bar-chart{display:flex;flex-direction:column;gap:8px}.popular-bar-row{display:flex;align-items:center;gap:12px}.popular-bar-label{display:flex;align-items:center;gap:8px;min-width:180px;flex-shrink:0}.popular-rank{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;background:#f3f4f6;border-radius:50%;font-size:12px;font-weight:600;color:#374151}.popular-name{font-size:14px;font-weight:500;color:#1a1a2e;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.popular-code{font-size:12px;color:#6b7280}.popular-bar-container{flex:1;display:flex;align-items:center;gap:8px;height:28px;background:#f3f4f6;border-radius:4px;overflow:hidden;position:relative}.popular-bar{height:100%;min-width:4px;border-radius:4px;transition:width .3s ease}.popular-bar-airline{background:linear-gradient(90deg,#f7b32b,#f59e0b)}.popular-bar-destination{background:linear-gradient(90deg,#3b82f6,#1d4ed8)}.popular-bar-route{background:linear-gradient(90deg,#10b981,#059669)}.popular-chart-full-width{grid-column:1 / -1;margin-top:24px}.popular-bar-label-wide{min-width:280px}.popular-bar-label-wide .popular-name{max-width:220px}.popular-bar-value{font-size:12px;font-weight:600;color:#374151;padding-right:8px;white-space:nowrap}.popular-report-section .no-data{color:#6b7280;font-style:italic;text-align:center;padding:20px}@media(max-width:1024px){.popular-charts-grid{grid-template-columns:1fr}}@media(max-width:768px){.popular-bar-label{min-width:140px}.popular-name{max-width:90px}}.qa-latest-run{margin-bottom:32px}.qa-latest-run h3,.qa-history h3,.qa-schedule-info h3,.qa-latest-run h4,.qa-history h4,.qa-schedule-info h4{font-size:18px;font-weight:600;margin-bottom:16px;color:#111827}.qa-run-details{background:#f9fafb;border-radius:8px;padding:16px;margin-top:16px}.qa-run-details p{margin:8px 0;color:#374151;font-size:14px}.qa-run-details strong{color:#111827}.qa-db-health{background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:8px;padding:20px;margin-bottom:32px;border:1px solid #bbf7d0}.qa-db-health-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.qa-db-health h4{margin:0;color:#166534}.admin-refresh-small{padding:4px 10px;font-size:12px;background:#fff;border:1px solid #d1d5db;border-radius:4px;cursor:pointer}.admin-refresh-small:hover{background:#f3f4f6}.qa-history{margin-bottom:32px}.qa-history .admin-table{font-size:13px}.qa-history .admin-table th{padding:10px 12px}.qa-history .admin-table td{padding:8px 12px}.qa-history .row-warning{background-color:#fef2f2}.qa-schedule-info{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border-radius:8px;padding:20px;border:1px solid #bae6fd}.qa-schedule-info h3{color:#0369a1}.qa-schedule-info p{color:#0c4a6e;margin:8px 0}.qa-schedule-info ul{margin:12px 0;padding-left:20px}.qa-schedule-info li{color:#0c4a6e;margin:4px 0}.qa-subtabs{display:flex;gap:.5rem;margin-bottom:1.5rem}.qa-subtab{padding:.75rem 1.5rem;background:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;cursor:pointer;font-weight:500;color:#666;transition:all .2s ease}.qa-subtab:hover{background:#e9ecef}.qa-subtab.active{background:#1a3d5c;color:#fff;border-color:#1a3d5c}.qa-logs-filters{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px;padding:20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d}.qa-logs-filters .admin-filter-input,.qa-logs-filters .admin-filter-select{min-width:160px;flex:1;max-width:220px;padding:10px 14px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;background:#fff;transition:all .2s ease;box-shadow:0 1px 2px #0000000a}.qa-logs-filters .admin-filter-input:focus,.qa-logs-filters .admin-filter-select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626}.qa-logs-filters .admin-filter-input::placeholder{color:#9ca3af}.qa-logs-filters .admin-filter-input.datetime-uk{min-width:180px;max-width:200px}.qa-logs-filters .admin-btn{padding:10px 20px;background:#f7b32b;color:#1a1a2e;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.qa-logs-filters .admin-btn:hover{background:#e5a320;transform:translateY(-1px)}.qa-logs-count{color:#64748b;font-size:14px;margin-bottom:12px;font-weight:500}.qa-logs-table{font-size:13px}.qa-logs-table th,.qa-logs-table td{padding:10px 12px;vertical-align:top}.qa-log-row{cursor:pointer;transition:background .15s}.qa-log-row:hover{background:#f3f4f6}.qa-session-cell{font-family:monospace;font-size:11px;color:#6b7280}.qa-message-cell{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qa-event-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:500;background:#e0e7ff;color:#3730a3}.qa-severity-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:11px;font-weight:600;text-transform:uppercase}.qa-severity-badge.qa-severity-info{background:#dbeafe;color:#1e40af}.qa-severity-badge.qa-severity-warning{background:#fef3c7;color:#92400e}.qa-severity-badge.qa-severity-error{background:#fee2e2;color:#991b1b}.qa-severity-badge.qa-severity-critical{background:#7f1d1d;color:#fff}.qa-log-row.qa-severity-error{background:#fef2f2}.qa-log-row.qa-severity-critical{background:#fee2e2}.qa-log-row.qa-severity-warning{background:#fffbeb}.qa-log-expanded{background:#f9fafb}.qa-log-details{padding:15px;font-size:13px}.qa-log-details pre{background:#1e293b;color:#e2e8f0;padding:12px;border-radius:6px;overflow-x:auto;font-size:12px;margin:10px 0;max-height:300px;overflow-y:auto}.qa-log-details p{margin:8px 0}.qa-stack-trace{max-height:200px;font-size:11px!important;white-space:pre-wrap;word-break:break-all}.qa-logs-pagination{display:flex;align-items:center;justify-content:center;gap:12px;margin-top:24px;padding:16px 20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.qa-logs-pagination span{color:#475569;font-size:14px;font-weight:500}.qa-logs-pagination .admin-btn{padding:10px 20px;background:#1a3d5c;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.qa-logs-pagination .admin-btn:hover:not(:disabled){background:#0f2942;transform:translateY(-1px)}.qa-logs-pagination .admin-btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;transform:none}.sql-session-info{display:flex;align-items:center;gap:16px;padding:12px 16px;background:linear-gradient(135deg,#f0fdf4,#dcfce7);border-radius:10px;border:1px solid #bbf7d0}.sql-session-active{background:#166534;color:#fff;padding:6px 14px;border-radius:20px;font-size:13px;font-weight:600;letter-spacing:.3px}.sql-session-expires{color:#166534;font-size:14px;font-weight:500}.sql-session-info .admin-btn-danger{padding:8px 18px;border-radius:8px;font-size:14px;font-weight:600}.sql-locked{text-align:center;padding:60px 20px;background:#f9fafb;border-radius:12px;margin-top:20px}.sql-locked-icon{font-size:48px;margin-bottom:16px}.sql-locked h4{font-size:20px;color:#111827;margin-bottom:8px}.sql-locked p{color:#6b7280;margin-bottom:20px}.sql-interface{margin-top:20px}.sql-editor{margin-bottom:20px}.sql-textarea{width:100%;min-height:300px;padding:20px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:18px;line-height:1.6;background:#1e293b;color:#e2e8f0;border:1px solid #334155;border-radius:10px;resize:vertical}.sql-textarea::placeholder{color:#64748b}.sql-textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.sql-editor-actions{display:flex;gap:12px;margin-top:16px}.sql-run-btn{padding:1rem 2rem;background:#28a745;color:#fff;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .2s}.sql-run-btn:hover:not(:disabled){background:#218838}.sql-run-btn:disabled{opacity:.5;cursor:not-allowed}.sql-clear-btn{padding:1rem 1.75rem;background:#f7b32b;color:#1a1a2e;border:none;border-radius:8px;font-size:1.1rem;font-weight:600;cursor:pointer;transition:background .2s}.sql-clear-btn:hover{background:#e5a320}.sql-error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px}.sql-results{margin-bottom:20px}.sql-results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.sql-results-meta{color:#6b7280;font-size:13px}.sql-export-buttons{display:flex;gap:8px}.sql-export-btn{padding:4px 12px;font-size:12px;font-weight:500;border:1px solid #d1d5db;border-radius:4px;background:#fff;color:#374151;cursor:pointer;transition:all .15s ease}.sql-export-btn:hover{background:#f3f4f6;border-color:#9ca3af}.sql-results-table-wrapper{overflow-x:auto;border:1px solid #e5e7eb;border-radius:8px}.sql-results-table{width:100%;border-collapse:collapse;font-size:13px}.sql-results-table th{background:#f9fafb;padding:10px 12px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;white-space:nowrap}.sql-results-table td{padding:8px 12px;border-bottom:1px solid #f3f4f6;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sql-results-table tr:hover td{background:#f9fafb}.sql-null{color:#9ca3af;font-style:italic}.sql-history{margin-top:30px;padding:16px;background:#f9fafb;border-radius:8px}.sql-history h4{font-size:14px;color:#374151;margin-bottom:12px}.sql-history ul{list-style:none;padding:0;margin:0}.sql-history li{padding:8px 12px;margin-bottom:6px;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:border-color .15s}.sql-history li:hover{border-color:#3b82f6}.sql-history code{font-family:Monaco,Menlo,monospace;font-size:12px;color:#1e293b}.sql-history-meta{color:#9ca3af;font-size:11px}.sql-security-notice{margin-top:20px;padding:12px 16px;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;font-size:12px;color:#92400e}.sql-templates{margin-top:24px;padding:20px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:12px;border:1px solid #e2e8f0}.sql-templates h4{font-size:16px;font-weight:600;color:#1e293b;margin-bottom:16px}.sql-templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.sql-template-category{background:#fff;border-radius:10px;border:1px solid #e2e8f0;overflow:hidden;transition:box-shadow .2s}.sql-template-category:hover{box-shadow:0 4px 12px #00000014}.sql-template-category-header{display:flex;align-items:center;gap:10px;padding:14px 16px;background:linear-gradient(135deg,#1e293b,#334155);color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s}.sql-template-category-header:hover{background:linear-gradient(135deg,#334155,#475569)}.sql-template-category-header.expanded{background:linear-gradient(135deg,#3b82f6,#2563eb)}.sql-template-category-icon{font-size:10px;width:16px;text-align:center}.sql-template-category-name{flex:1;font-weight:600;font-size:14px}.sql-template-count{background:#fff3;padding:2px 8px;border-radius:10px;font-size:12px;font-weight:500}.sql-template-list{padding:8px;max-height:300px;overflow-y:auto}.sql-template-item{padding:12px 14px;border-radius:8px;cursor:pointer;transition:all .15s;border:1px solid transparent;margin-bottom:6px}.sql-template-item:last-child{margin-bottom:0}.sql-template-item:hover{background:#f0f9ff;border-color:#3b82f6}.sql-template-name{font-weight:600;font-size:13px;color:#1e293b;margin-bottom:4px}.sql-template-note{font-size:11px;color:#64748b;font-style:italic}.sql-pin-modal{max-width:420px;border-radius:16px;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.sql-pin-modal .admin-modal-header{background:linear-gradient(135deg,#1e293b,#334155);padding:24px;border-bottom:none}.sql-pin-modal .admin-modal-header h3{color:#fff;font-size:18px;font-weight:600;display:flex;align-items:center;gap:10px}.sql-pin-modal .admin-modal-close{color:#94a3b8;font-size:24px;background:none;border:none;cursor:pointer;padding:0;line-height:1}.sql-pin-modal .admin-modal-close:hover{color:#fff}.sql-pin-modal .admin-modal-body{padding:28px 24px;text-align:center}.sql-pin-modal .admin-modal-body>p:first-child{font-size:15px;color:#374151;margin-bottom:8px}.sql-pin-notice{color:#6b7280;font-size:13px;margin-bottom:20px;display:flex;align-items:center;justify-content:center;gap:6px}.sql-pin-notice:before{content:"⏱"}.sql-pin-input{width:100%;padding:16px 20px;font-size:20px;text-align:center;letter-spacing:6px;border:2px solid #e5e7eb;border-radius:12px;background:#f9fafb;transition:all .2s}.sql-pin-input:focus{outline:none;border-color:#3b82f6;background:#fff;box-shadow:0 0 0 4px #3b82f61a}.sql-pin-input::placeholder{letter-spacing:normal;color:#9ca3af}.sql-pin-error{color:#dc2626;font-size:13px;margin-top:12px;background:#fef2f2;padding:8px 12px;border-radius:6px;text-align:center}.sql-pin-modal .admin-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;border-top:none}.sql-pin-modal .admin-modal-footer .admin-btn{flex:1;padding:14px 20px;font-size:15px;font-weight:500;border-radius:10px;border:none;cursor:pointer;transition:all .2s}.sql-pin-modal .admin-modal-footer .admin-btn:not(.admin-btn-primary){background:#f3f4f6;color:#374151}.sql-pin-modal .admin-modal-footer .admin-btn:not(.admin-btn-primary):hover{background:#e5e7eb}.sql-pin-modal .admin-modal-footer .admin-btn-primary{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;box-shadow:0 4px 14px #3b82f659}.sql-pin-modal .admin-modal-footer .admin-btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #3b82f666}.sql-confirm-modal{max-width:520px;border-radius:16px;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}.sql-confirm-modal .admin-modal-header{background:linear-gradient(135deg,#dc2626,#b91c1c);padding:24px;border-bottom:none}.sql-confirm-modal .admin-modal-header h3{color:#fff;font-size:18px;font-weight:600}.sql-confirm-modal .admin-modal-body{padding:24px}.sql-confirm-modal .admin-modal-body p{font-size:15px;color:#374151;margin-bottom:12px}.sql-confirm-warning{color:#dc2626;font-weight:600;background:#fef2f2;padding:10px 14px;border-radius:8px;border-left:4px solid #dc2626}.sql-confirm-query{background:#1e293b;padding:16px;border-radius:10px;margin-top:16px;overflow-x:auto}.sql-confirm-query code{color:#e2e8f0;font-family:Monaco,Menlo,monospace;font-size:13px;white-space:pre-wrap;word-break:break-all}.sql-confirm-modal .admin-modal-footer{padding:16px 24px 24px;display:flex;gap:12px;border-top:none}.sql-confirm-modal .admin-modal-footer .admin-btn{flex:1;padding:14px 20px;font-size:15px;font-weight:500;border-radius:10px;border:none;cursor:pointer;transition:all .2s}.sql-confirm-modal .admin-modal-footer .admin-btn:not(.admin-btn-danger){background:#f3f4f6;color:#374151}.sql-confirm-modal .admin-modal-footer .admin-btn:not(.admin-btn-danger):hover{background:#e5e7eb}.admin-btn-danger{background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;box-shadow:0 4px 14px #dc262659}.admin-btn-danger:hover{transform:translateY(-1px);box-shadow:0 6px 20px #dc262666}.admin-empty{color:#6b7280;font-style:italic;text-align:center;padding:20px}.star-rating{color:#f7b32b;font-size:16px;letter-spacing:2px}.star-rating .star.empty{color:#d1d5db}.no-rating{color:#9ca3af;font-style:italic;font-size:13px}.review-cell{max-width:300px;color:#4b5563;font-size:13px}.row-featured{background-color:#fffbeb;border-left:3px solid #f7b32b}.star-selector{display:flex;align-items:center;gap:4px}.star-btn{background:none;border:none;font-size:28px;cursor:pointer;color:#d1d5db;padding:0;transition:color .2s}.star-btn:hover,.star-btn.selected{color:#f7b32b}.clear-rating-btn{margin-left:8px;padding:4px 8px;font-size:12px;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;cursor:pointer}.clear-rating-btn:hover{background:#e5e7eb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkbox-label{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;flex-shrink:0;cursor:pointer}.checkbox-group{display:flex;flex-direction:column;gap:12px}.checkbox-group .checkbox-label{display:inline-flex;align-items:center;gap:8px}.actions-cell{display:flex;gap:6px;flex-wrap:wrap}.admin-header-actions{display:flex;gap:8px;align-items:center}.admin-btn-primary{background:#f7b32b;color:#1a1a2e;border:none;padding:8px 16px;border-radius:6px;font-weight:500;cursor:pointer}.admin-btn-primary:hover{background:#e5a326}.marketing-sources-section{margin-top:1rem}.marketing-total-summary{margin:1.5rem 0}.marketing-monthly-table{margin:1rem 0;overflow-x:auto}.marketing-monthly-table .admin-table th,.marketing-monthly-table .admin-table td{text-align:center;padding:8px 12px}.marketing-monthly-table .admin-table th:first-child,.marketing-monthly-table .admin-table td:first-child{text-align:left}.view-other-details{background:#4a4a6a;color:#f7b32b;border:none;border-radius:50%;width:18px;height:18px;font-size:11px;cursor:pointer;margin-left:4px;vertical-align:middle}.view-other-details:hover{background:#5a5a7a}.marketing-source-totals{display:flex;flex-direction:column;gap:.75rem;margin-top:1rem}.source-total-item{display:flex;align-items:center;gap:1rem;position:relative;padding:.75rem;background:#2a2a4a;border-radius:6px}.source-total-item .source-name{width:140px;font-weight:600;text-transform:capitalize;position:relative;z-index:1;color:#fff}.source-total-item .source-count{width:50px;text-align:right;font-weight:600;color:#f7b32b;position:relative;z-index:1}.source-total-item .source-percentage{width:60px;text-align:right;font-weight:500;color:#94a3b8;position:relative;z-index:1;font-size:.9em}.source-total-item .source-bar{position:absolute;left:0;top:0;bottom:0;background:#f7b32b26;border-radius:6px;z-index:0}.no-data{color:#888;font-style:italic;padding:1rem 0}.marketing-percentage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-top:1rem;margin-bottom:1.5rem}.percentage-card{background:linear-gradient(135deg,#2a2a4a,#1a1a3a);border-radius:12px;padding:1.25rem;text-align:center;border:1px solid #3a3a5a;transition:transform .2s ease,box-shadow .2s ease}.percentage-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000004d}.percentage-value{font-size:1.75rem;font-weight:700;color:#f7b32b;line-height:1;margin-bottom:.5rem}.percentage-label{font-size:.875rem;font-weight:600;color:#fff;margin-bottom:.25rem;text-transform:capitalize}.percentage-count{font-size:.75rem;color:#94a3b8}.marketing-other-modal{max-width:600px;max-height:70vh;display:flex;flex-direction:column}.marketing-other-modal-body{overflow-y:auto;max-height:55vh}.marketing-other-modal-body table{font-size:.85rem}.marketing-other-modal-body td{padding:8px 10px}.admin-promotions-section{padding:0}.admin-promotions-section .btn-primary,.create-promotion-form .btn-primary{background:#d9ff00;border:none;color:#000;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s ease}.admin-promotions-section .btn-primary:hover,.create-promotion-form .btn-primary:hover{background:#c4e600}.admin-promotions-section .btn-primary:disabled,.create-promotion-form .btn-primary:disabled{opacity:.6;cursor:not-allowed}.admin-promotions-section .btn-secondary,.create-promotion-form .btn-secondary{background:#2a2a2a;border:1px solid #444;color:#fff;padding:10px 20px;border-radius:6px;font-weight:500;cursor:pointer;transition:background .2s ease}.admin-promotions-section .btn-secondary:hover,.create-promotion-form .btn-secondary:hover{background:#3a3a3a;border-color:#555}.promotion-card{transition:box-shadow .2s ease}.promotion-card:hover{box-shadow:0 2px 8px #0000001a}.promotion-header:hover{background:#f0f0f0!important}.promo-codes-table .admin-table{margin:0}.promo-codes-table th{background:#f5f5f5;font-weight:600;text-align:left;padding:10px 12px}.promo-codes-table td{padding:10px 12px;vertical-align:middle}.error-banner{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.financial-filters{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;margin-bottom:24px;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb}.financial-filters .filter-group{display:flex;flex-direction:column;gap:6px}.financial-filters .filter-group label{font-size:13px;font-weight:500;color:#374151}.financial-filters .filter-group input,.financial-filters .filter-group select{padding:8px 12px;font-size:14px;border:1px solid #e5e7eb;border-radius:6px;background:#fff;min-width:140px}.financial-filters .filter-group input:focus,.financial-filters .filter-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.filter-apply-btn{padding:8px 16px;font-size:14px;font-weight:500;color:#fff;background:#3b82f6;border:none;border-radius:6px;cursor:pointer;transition:background .2s}.filter-apply-btn:hover:not(:disabled){background:#2563eb}.filter-apply-btn:disabled{opacity:.6;cursor:not-allowed}.export-csv-btn{padding:8px 16px;font-size:14px;font-weight:500;color:#374151;background:#fff;border:1px solid #e5e7eb;border-radius:6px;cursor:pointer;transition:all .2s}.export-csv-btn:hover:not(:disabled){background:#f9fafb;border-color:#d1d5db}.export-csv-btn:disabled{opacity:.6;cursor:not-allowed}.financial-fun-facts,.financial-summary{margin-bottom:24px}.financial-fun-facts h3,.financial-summary h3,.financial-monthly-breakdown h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.financial-fun-facts .fun-fact-card,.fun-facts-section .fun-fact-card{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff!important}.financial-fun-facts .fun-fact-card .stats-card-value,.fun-facts-section .fun-fact-card .stats-card-value{color:#fff}.financial-fun-facts .fun-fact-card .stats-card-label,.fun-facts-section .fun-fact-card .stats-card-label{color:#ffffffe6}.financial-fun-facts .fun-fact-card .fun-fact-label,.fun-facts-section .fun-fact-card .fun-fact-label{color:#fffffff2}.financial-fun-facts .fun-fact-card .fun-fact-value,.fun-facts-section .fun-fact-card .fun-fact-value{color:#fff}.financial-fun-facts .fun-fact-card .fun-fact-detail,.fun-facts-section .fun-fact-card .fun-fact-detail{font-size:13px;color:#fffffff2;margin-top:4px;font-weight:500}.fun-fact-change{font-size:11px;font-weight:600;margin-top:4px}.revenue-milestones-section{margin-bottom:24px}.revenue-milestones-section h3{font-size:16px;font-weight:600;color:#1a1a2e;margin:0 0 16px}.revenue-milestones-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.revenue-milestone-card{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;padding:16px;text-align:center;transition:all .3s ease}.revenue-milestone-card.achieved{background:linear-gradient(135deg,#d4edda,#c3e6cb);border-color:#28a745}.revenue-milestone-card.achieved.significant{background:linear-gradient(135deg,#fff3cd,#ffeeba);border-color:#ffc107}.revenue-milestone-card.achieved.major{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#667eea}.revenue-milestone-card.pending{opacity:.6;border-style:dashed}.milestone-amount{font-size:18px;font-weight:700;color:#1a1a2e;margin-bottom:4px}.revenue-milestone-card.achieved.major .milestone-amount{color:#fff}.milestone-date{font-size:12px;color:#28a745;font-weight:500}.revenue-milestone-card.achieved.significant .milestone-date{color:#856404}.revenue-milestone-card.achieved.major .milestone-date{color:#ffffffe6}.milestone-pending{font-size:11px;color:#6c757d;font-style:italic}.fun-fact-vertical{display:flex;flex-direction:column;align-items:center;text-align:center;padding:20px 24px}.fun-fact-vertical .stats-card-label{font-size:13px;font-weight:600;margin-bottom:8px;order:1}.fun-fact-vertical .stats-card-value{font-size:32px;font-weight:700;margin-bottom:8px;order:2}.fun-fact-vertical .fun-fact-detail{font-size:14px;margin-top:0;margin-bottom:6px;order:3}.fun-fact-vertical .fun-fact-change{font-size:13px;margin-top:0;order:4}.financial-monthly-breakdown{margin-top:24px}.financial-month-container{background:#fff;border-radius:12px;margin-bottom:12px;box-shadow:0 2px 8px #0000000f;border:1px solid #e5e7eb;overflow:hidden}.financial-month-header{display:flex;align-items:center;gap:16px;padding:16px 20px;cursor:pointer;transition:background .2s;background:#f9fafb}.financial-month-header:hover{background:#f3f4f6}.financial-month-header .expand-icon{font-size:10px;color:#6b7280;width:16px}.financial-month-header .month-label{font-size:16px;font-weight:600;color:#1a1a2e;flex:1}.financial-month-header .month-count{font-size:14px;color:#6b7280}.financial-month-header .month-gross{font-size:14px;color:#374151;font-weight:500}.financial-month-header .month-net{font-size:14px;color:#22c55e;font-weight:600}.financial-month-header .month-discount{font-size:14px;color:#f59e0b;font-weight:500}.financial-month-header .month-refunds{font-size:14px;color:#ef4444;font-weight:500}.financial-month-header .month-revenue{font-size:14px;color:#22c55e;font-weight:600}.financial-month-bookings{padding:0}.financial-table{margin:0!important;border-radius:0!important}.financial-table th{background:#f5f5f5;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:10px 12px}.financial-table td{font-size:13px;padding:10px 12px;vertical-align:middle}.financial-table-compact{table-layout:fixed}.financial-table-compact th,.financial-table-compact td{padding:6px 8px;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.edit-btn-inline{background:#f59e0b;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:10px;margin-left:4px;padding:2px 5px;vertical-align:middle;transition:background .2s}.edit-btn-inline:hover{background:#d97706}.needs-override{background:#fef3c7!important}.needs-override:hover{background:#fde68a!important}.override-indicator{color:#059669;font-weight:700;margin-left:4px}.financial-edit-input{width:60px;padding:2px 4px;font-size:12px;border:1px solid #d1d5db;border-radius:3px}.financial-edit-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633}.edit-actions{display:flex;gap:4px}.save-btn-inline{background:#22c55e;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;padding:2px 6px}.save-btn-inline:hover{background:#16a34a}.save-btn-inline:disabled{background:#9ca3af;cursor:not-allowed}.cancel-btn-inline{background:#ef4444;border:none;border-radius:3px;color:#fff;cursor:pointer;font-size:12px;padding:2px 6px}.cancel-btn-inline:hover{background:#dc2626}.date-picker-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:8px 10px;cursor:pointer;font-size:16px;line-height:1;transition:background .2s}.date-picker-btn:hover{background:#e5e7eb}.period-selector{display:flex;gap:.5rem}.period-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;padding:.5rem 1rem;cursor:pointer;font-size:.875rem;transition:all .2s}.period-btn:hover{background:#e5e7eb}.period-btn.active{background:#3b82f6;color:#fff;border-color:#3b82f6}.session-funnel-summary{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.session-funnel-summary h3{margin:0 0 1rem;font-size:1.1rem;color:#334155}.funnel-cards{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.funnel-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;flex:1;min-width:140px;position:relative}.funnel-card-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.5rem}.funnel-step{background:#3b82f6;color:#fff;width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:600}.funnel-label{font-size:.8rem;color:#64748b;font-weight:500}.funnel-card-value{font-size:1.75rem;font-weight:700;color:#1e293b;margin-bottom:.25rem}.funnel-card-meta{display:flex;flex-direction:column;gap:.25rem;font-size:.75rem}.conversion-rate{font-weight:600}.conversion-rate.good{color:#22c55e}.conversion-rate.medium{color:#f59e0b}.conversion-rate.poor{color:#ef4444}.drop-off{color:#94a3b8}.overall-conversion{padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.9rem;color:#475569}.conversion-label{color:#94a3b8;margin-left:.5rem;font-size:.8rem}.session-period-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem}.session-period-table h3{margin:0 0 1rem;font-size:1.1rem;color:#334155}.session-period-table td:not(:first-child){text-align:center}.session-period-table th:not(:first-child){text-align:center}.manual-booking-cell,.free-booking-cell{color:#6b7280;font-style:italic}.manual-bookings-note{margin-top:12px;font-size:12px;color:#6b7280;font-style:italic}.abandoned-carts-summary{margin-bottom:1.5rem}.abandoned-analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}.abandoned-analytics-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:1rem}.abandoned-analytics-card h4{margin:0 0 1rem;font-size:.95rem;color:#334155}.abandoned-analytics-card .admin-table.compact{font-size:.85rem}.abandoned-analytics-card .admin-table.compact th,.abandoned-analytics-card .admin-table.compact td{padding:.5rem .75rem}.abandoned-period-table,.abandoned-recent-table{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.5rem;margin-top:1.5rem}.abandoned-period-table h3,.abandoned-recent-table h3{margin:0 0 1rem;font-size:1.1rem;color:#334155}.abandoned-period-table td:last-child{text-align:center}.abandoned-period-table th:last-child{text-align:center}.forecast-header{display:flex;justify-content:flex-end;margin-bottom:1rem}.forecast-info{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);border:1px solid #bae6fd;border-radius:8px;padding:1rem;margin-bottom:1.5rem}.forecast-info p{margin:0;color:#0369a1;font-size:.9rem}.forecast-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.5rem;margin-bottom:1.5rem}@media(max-width:1200px){.forecast-grid{grid-template-columns:1fr}}.forecast-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem}.forecast-card h4{margin:0 0 .25rem;font-size:1rem;color:#1e293b}.forecast-subtitle{margin:0 0 1rem;font-size:.8rem;color:#64748b}.forecast-table{width:100%;border-collapse:collapse;font-size:.85rem}.forecast-table th,.forecast-table td{padding:.5rem .75rem;text-align:left;border-bottom:1px solid #e2e8f0}.forecast-table th{background:#f8fafc;font-weight:600;color:#475569;font-size:.75rem;text-transform:uppercase}.forecast-table.compact th,.forecast-table.compact td{padding:.4rem .5rem}.forecast-table tr.row-highlight{background:#f0fdf4}.demand-score{display:inline-block;padding:2px 8px;border-radius:12px;font-weight:600;font-size:.8rem}.demand-score.high_demand{background:#dcfce7;color:#166534}.demand-score.moderate{background:#fef3c7;color:#92400e}.demand-score.low{background:#f1f5f9;color:#64748b}.opportunity-score{display:inline-block;padding:2px 8px;border-radius:12px;background:#fef3c7;color:#92400e;font-weight:600;font-size:.8rem}.dow-chart{display:flex;flex-direction:column;gap:.5rem}.dow-bar-container{display:flex;align-items:center;gap:.5rem}.dow-label{width:35px;font-size:.8rem;font-weight:600;color:#475569}.dow-bar-wrapper{flex:1;height:20px;background:#f1f5f9;border-radius:4px;overflow:hidden}.dow-bar{height:100%;background:linear-gradient(90deg,#3b82f6,#60a5fa);border-radius:4px;transition:width .3s ease}.dow-bar.pickup{background:linear-gradient(90deg,#22c55e,#4ade80)}.dow-value{font-size:.75rem;color:#64748b;min-width:70px;text-align:right}.seasonality-chart{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}@media(max-width:600px){.seasonality-chart{grid-template-columns:repeat(3,1fr)}}.season-bar-container{display:flex;flex-direction:column;align-items:center;gap:.25rem}.season-label{font-size:.75rem;font-weight:600;color:#475569}.season-bar-wrapper{width:100%;height:60px;background:#f1f5f9;border-radius:4px;display:flex;align-items:flex-end;overflow:hidden}.season-bar{width:100%;background:linear-gradient(180deg,#22c55e,#16a34a);border-radius:4px 4px 0 0;transition:height .3s ease}.season-bar.travel{background:linear-gradient(180deg,#f59e0b,#d97706)}.season-bar.booking{background:linear-gradient(180deg,#3b82f6,#2563eb)}.season-value{font-size:.7rem;color:#64748b}.combined-seasonality-chart{display:flex;flex-direction:column;gap:.25rem}.combined-month-row{display:flex;align-items:center;gap:.5rem}.combined-month-label{font-size:.7rem;font-weight:600;color:#475569;width:28px;flex-shrink:0}.combined-bars{flex:1;display:flex;flex-direction:column;gap:1px}.combined-bar-wrapper{display:flex;align-items:center;gap:.35rem;height:10px}.combined-bar{height:100%;border-radius:2px;transition:width .3s ease;min-width:2px}.combined-bar.travel{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.combined-bar.booking{background:linear-gradient(90deg,#22c55e,#4ade80)}.combined-bar.abandoned{background:linear-gradient(90deg,#ef4444,#f87171)}.combined-bar-value{font-size:.65rem;color:#64748b;min-width:20px}.combined-legend{display:flex;gap:1rem;margin-top:.75rem;padding-top:.5rem;border-top:1px solid #e2e8f0}.legend-item{display:flex;align-items:center;gap:.375rem;font-size:.7rem;color:#64748b}.legend-color{width:12px;height:8px;border-radius:2px}.legend-color.travel{background:#3b82f6}.legend-color.booking{background:#22c55e}.legend-color.abandoned{background:#ef4444}.monthly-patterns-chart{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.25rem;padding:.5rem 0;overflow-x:auto}.monthly-column{display:flex;flex-direction:column;align-items:center;flex:1;min-width:50px}.monthly-bars{width:100%;height:100px;display:flex;justify-content:center}.monthly-bar-group{display:flex;align-items:flex-end;gap:2px;height:100%}.monthly-bar{width:10px;border-radius:2px 2px 0 0;transition:height .3s ease;min-height:2px;cursor:pointer}.monthly-bar.booking{background:linear-gradient(180deg,#22c55e,#16a34a)}.monthly-bar.travel{background:linear-gradient(180deg,#3b82f6,#2563eb)}.monthly-bar.abandoned{background:linear-gradient(180deg,#ef4444,#dc2626)}.monthly-bar:hover{opacity:.8}.monthly-label{font-size:.65rem;font-weight:600;color:#475569;margin-top:.35rem;text-align:center}.monthly-patterns-chart .combined-legend{width:100%;justify-content:center;align-items:flex-start}.forecast-card.wide{grid-column:span 2}@media(max-width:800px){.forecast-card.wide{grid-column:span 1}}.forecast-section{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:1.25rem;margin-bottom:1.5rem}.forecast-section h4{margin:0 0 .25rem;font-size:1rem;color:#1e293b}.upcoming-demand-grid{display:flex;flex-wrap:wrap;gap:.75rem}.upcoming-demand-card{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:8px;padding:.75rem 1rem;min-width:100px;text-align:center}.upcoming-date{font-weight:700;font-size:.9rem;color:#92400e}.upcoming-day{font-size:.75rem;color:#b45309}.upcoming-searches{margin-top:.25rem;font-size:.8rem;font-weight:600;color:#78350f}.departure-time-chart{display:flex;flex-direction:column;gap:.35rem;max-height:300px;overflow-y:auto}.time-bar-container{display:flex;align-items:center;gap:.5rem}.time-label{width:45px;font-size:.75rem;font-weight:600;color:#475569}.time-bar-wrapper{flex:1;height:16px;background:#f1f5f9;border-radius:4px;overflow:hidden}.time-bar{height:100%;background:linear-gradient(90deg,#8b5cf6,#a78bfa);border-radius:4px;transition:width .3s ease}.time-bar.arrival{background:linear-gradient(90deg,#10b981,#34d399)}.time-value{font-size:.75rem;color:#64748b;min-width:30px;text-align:right}.predicted-dates-grid{display:flex;flex-wrap:wrap;gap:.75rem}.predicted-date-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:.75rem 1rem;min-width:110px;text-align:center}.predicted-date-card.high{background:linear-gradient(135deg,#dcfce7,#bbf7d0);border-color:#22c55e}.predicted-date-card.medium{background:linear-gradient(135deg,#fef3c7,#fde68a);border-color:#f59e0b}.predicted-date-card.low{background:#f8fafc;border-color:#e2e8f0}.predicted-date{font-weight:700;font-size:.95rem;color:#1e293b}.predicted-day{font-size:.75rem;color:#64748b}.predicted-score{margin-top:.25rem;font-size:.8rem;font-weight:600;color:#475569}.predicted-searches{margin-top:.25rem;font-size:.7rem;color:#22c55e;font-weight:500}.forecast-section.full-width{grid-column:1 / -1;margin-bottom:1.5rem}.forecast-table.multi-model{font-size:.85rem}.forecast-table.multi-model th{font-size:.7rem;padding:.5rem}.forecast-table.multi-model td{padding:.5rem}.model-score{display:inline-block;padding:2px 6px;border-radius:4px;font-weight:600;font-size:.8rem;min-width:35px;text-align:center}.model-score.balanced{background:#e0f2fe;color:#0369a1}.model-score.balanced.high_demand{background:#dcfce7;color:#166534}.model-score.balanced.moderate{background:#fef3c7;color:#92400e}.model-score.balanced.low{background:#f1f5f9;color:#64748b}.model-score.momentum{background:#fce7f3;color:#9d174d}.model-score.momentum.higher{background:#f472b6;color:#fff}.model-score.established{background:#e0e7ff;color:#3730a3}.model-score.established.higher{background:#818cf8;color:#fff}.confidence-badge{font-size:.9rem}.confidence-badge.high{color:#22c55e}.confidence-badge.medium{color:#f59e0b}.confidence-badge.low{color:#ef4444}.trend-badge{font-size:.9rem}.trend-badge.rising{color:#22c55e}.trend-badge.stable{color:#3b82f6}.trend-badge.neutral{color:#94a3b8}.model-legend{display:flex;flex-wrap:wrap;gap:1.5rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0;font-size:.75rem;color:#64748b}.model-legend span{display:inline-block}.emp-payroll-container{background:#fff;border-radius:12px;margin-top:20px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.emp-payroll-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;background:#f8f9fa;cursor:pointer;transition:background .2s}.emp-payroll-header:hover{background:#f0f1f2}.emp-payroll-title{display:flex;align-items:center;gap:10px}.emp-payroll-title h3{margin:0;font-size:1.1rem;color:#333}.emp-payroll-expand{font-size:12px;color:#666;transition:transform .2s}.emp-payroll-expand.expanded{transform:rotate(90deg)}.emp-payroll-quick-summary{display:flex;align-items:center;gap:15px;color:#666;font-size:14px}.emp-payroll-hours{font-weight:600;color:#333;background:#e8f5e9;padding:4px 10px;border-radius:12px}.emp-payroll-content{padding:20px;border-top:1px solid #eee}.emp-payroll-controls{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;flex-wrap:wrap;gap:15px}.emp-payroll-date-selector{display:flex;gap:10px}.emp-payroll-select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:14px;background:#fff;cursor:pointer}.emp-payroll-select:focus{outline:none;border-color:#4a90e2}.emp-payroll-btn{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.emp-payroll-btn.pdf{background:#e74c3c;color:#fff}.emp-payroll-btn.pdf:hover{background:#c0392b}.emp-payroll-btn.pdf.not-yet{background:#999;cursor:pointer}.emp-payroll-btn.pdf.not-yet:hover{background:#888}.emp-payroll-btn:disabled{opacity:.5;cursor:not-allowed}.emp-payroll-download{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.emp-payroll-download-note{font-size:12px;color:#888;font-style:italic}.emp-payroll-error{background:#fce4e4;border:1px solid #e74c3c;color:#c0392b;padding:10px 15px;border-radius:6px;margin-bottom:15px;font-size:14px}.emp-payroll-warning{background:#fff3cd;border:1px solid #ffc107;color:#856404;padding:12px 15px;border-radius:6px;margin-bottom:15px;font-size:14px;text-align:center}.emp-payroll-loading{text-align:center;padding:20px;color:#888}.emp-payroll-summary{display:flex;gap:30px;margin-bottom:20px}.emp-payroll-summary-item{display:flex;flex-direction:column;gap:4px}.emp-payroll-summary-item .label{color:#888;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.emp-payroll-summary-item .value{font-size:1.5rem;font-weight:600;color:#333}.emp-payroll-shifts{overflow-x:auto}.emp-payroll-table{width:100%;border-collapse:collapse}.emp-payroll-table th,.emp-payroll-table td{padding:12px 15px;text-align:left;border-bottom:1px solid #eee}.emp-payroll-table th{background:#f5f5f5;font-weight:600;color:#333;font-size:13px}.emp-payroll-table td{font-size:14px}.emp-payroll-table .date-cell{white-space:nowrap}.emp-payroll-table .shifts-cell{display:flex;flex-wrap:wrap;gap:5px}.emp-payroll-table .shift-badge{background:#e8f4fd;padding:4px 8px;border-radius:4px;font-size:13px;white-space:nowrap}.emp-payroll-table .hours-cell{font-weight:600;text-align:center}.emp-payroll-empty{text-align:center;padding:30px;color:#888;font-style:italic}@media(max-width:768px){.emp-payroll-header{flex-direction:column;align-items:flex-start;gap:10px}.emp-payroll-quick-summary{width:100%;justify-content:space-between}.emp-payroll-controls{flex-direction:column;align-items:stretch}.emp-payroll-date-selector{width:100%}.emp-payroll-select{flex:1}.emp-payroll-btn{width:100%}.emp-payroll-summary{flex-direction:row;justify-content:space-around}.emp-payroll-summary-item{align-items:center}.emp-payroll-table .shifts-cell{flex-direction:column}}.employee-container{min-height:100vh;background:#1a1a1a}.employee-header{background:#1a1a2e;color:#fff;padding:16px 24px;display:flex;justify-content:space-between;align-items:center}.employee-header-left{display:flex;align-items:center;gap:16px}.employee-logo{height:40px;width:auto}.employee-header h1{font-size:20px;font-weight:600;margin:0}.employee-header-right{display:flex;align-items:center;gap:16px}.employee-user{font-size:14px;color:#ccc}.employee-logout{padding:8px 16px;font-size:14px;font-weight:500;color:#1a1a2e;background:#f7b32b;border:none;border-radius:6px;cursor:pointer;transition:background .2s ease}.employee-logout:hover{background:#e5a320}.employee-content{padding:24px;max-width:1400px;margin:0 auto}.employee-error{background:#4a1c1c;border:1px solid #e53e3e;color:#fc8181;padding:12px 16px;border-radius:8px;margin-bottom:16px}.employee-success{background:#1c4a2e;border:1px solid #38a169;color:#68d391;padding:12px 16px;border-radius:8px;margin-bottom:16px;text-align:center;font-weight:500}.employee-loading{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1a1a1a;gap:16px}.employee-loading p{color:#999}.spinner{width:40px;height:40px;border:4px solid #333;border-top-color:#d9ff00;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-actions-row{display:flex;gap:8px;margin-top:8px;flex-wrap:wrap}.inspection-btn{padding:6px 14px;font-size:12px;font-weight:600;border:1px solid #4a90e2;background:#4a90e226;color:#6cb3ff;border-radius:6px;cursor:pointer;transition:all .2s ease}.inspection-btn:hover{background:#4a90e24d}.inspection-btn.inspection-done{border-color:#48bb78;background:#48bb7826;color:#68d391}.inspection-btn.inspection-done:hover{background:#48bb784d}.complete-btn{padding:6px 14px;font-size:12px;font-weight:600;border:1px solid #D9FF00;background:#d9ff001a;color:#d9ff00;border-radius:6px;cursor:pointer;transition:all .2s ease}.complete-btn:hover{background:#d9ff0040}.complete-btn-disabled,.complete-btn:disabled{border-color:#888;background:#88888826;color:#999;cursor:not-allowed}.complete-btn-disabled:hover,.complete-btn:disabled:hover{background:#88888826}.decline-checkbox{display:flex;align-items:center;gap:6px;font-size:11px;color:#f5a623;cursor:pointer;padding:4px 8px;border:1px solid #f5a623;border-radius:6px;background:#f5a6231a;transition:all .2s ease}.decline-checkbox:hover{background:#f5a62333}.decline-checkbox input[type=checkbox]{accent-color:#f5a623;width:14px;height:14px;cursor:pointer}.decline-checkbox span{white-space:nowrap}.inspection-declined-checkbox{margin:16px 0;padding:12px 16px;background:#f5a6231a;border:1px solid #f5a623;border-radius:8px}.inspection-declined-checkbox .declined-label{display:flex;align-items:center;gap:10px;font-size:14px;font-weight:600;color:#f5a623;cursor:pointer}.inspection-declined-checkbox .declined-label input[type=checkbox]{accent-color:#f5a623;width:18px;height:18px;cursor:pointer}.inspection-declined-checkbox .declined-note{margin:8px 0 0 28px;font-size:12px;color:#999;font-style:italic}.completed-badge{display:inline-block;padding:6px 14px;font-size:12px;font-weight:600;background:#48bb7826;color:#68d391;border-radius:6px;border:1px solid #48bb78}.modal-overlay{position:fixed;inset:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.employee-container .modal-content{background:#2a2a2a;border-radius:12px;padding:24px;max-width:500px;width:100%;box-shadow:0 20px 50px #00000080;color:#e0e0e0}.employee-container .modal-content h3{margin:0 0 16px;font-size:20px;color:#d9ff00}.employee-container .modal-content p{color:#ccc;margin:0 0 12px}.employee-container .modal-subtext{font-size:14px;color:#999!important}.employee-container .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.employee-container .modal-btn{padding:10px 20px;font-size:14px;font-weight:500;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.employee-container .modal-btn:disabled{opacity:.6;cursor:not-allowed}.employee-container .modal-btn-secondary{background:#444;color:#ccc}.employee-container .modal-btn-secondary:hover:not(:disabled){background:#555}.employee-container .modal-btn-primary{background:#d9ff00;color:#1a1a2e;font-weight:600}.employee-container .modal-btn-primary:hover:not(:disabled){background:#c4e600}.employee-container .modal-btn-success{background:#38a169;color:#fff;font-weight:600}.employee-container .modal-btn-success:hover:not(:disabled){background:#2f855a}.employee-container .modal-btn-danger{background:#e53e3e;color:#fff;font-weight:600}.employee-container .modal-btn-danger:hover:not(:disabled){background:#c53030}.inspection-modal{max-width:700px;max-height:calc(100vh - 40px);overflow-y:auto;display:flex;flex-direction:column;position:relative}.saving-overlay{position:absolute;inset:0;background:#1a1a2ef2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:100;border-radius:12px}.saving-overlay p{color:#fff;font-size:18px;font-weight:600;margin:16px 0 8px}.saving-overlay .saving-subtext{color:#999;font-size:14px;font-weight:400;margin:0}.saving-spinner{width:48px;height:48px;border:4px solid #333;border-top:4px solid #f7b32b;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.draft-modal{max-width:400px}.draft-info{background:#333;padding:16px;border-radius:8px;margin:16px 0}.draft-info p{margin:8px 0;color:#ccc;font-size:14px}.draft-info p strong{color:#fff}.draft-time{color:#888!important;font-size:12px!important;margin-top:12px!important}.inspection-booking-info{display:flex;gap:16px;align-items:center;background:#333;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:14px;color:#ccc;flex-wrap:wrap}.inspection-ref{font-family:Courier New,monospace;font-weight:700;color:#d9ff00}.inspection-form{display:flex;flex-direction:column;gap:16px}.inspection-field label{display:block;font-size:13px;font-weight:500;color:#aaa;margin-bottom:6px}.inspection-field textarea{width:100%;padding:10px 12px;font-size:14px;font-family:inherit;border:1px solid #444;border-radius:8px;background:#333;color:#e0e0e0;outline:none;resize:vertical;box-sizing:border-box}.inspection-field textarea:focus{border-color:#d9ff00}.photo-input-hidden{display:none}.photo-slots-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:8px}.photo-slot{display:flex;flex-direction:column;gap:6px}.photo-slot-label{font-size:12px;font-weight:600;color:#ccc;text-transform:uppercase;letter-spacing:.5px}.photo-slot-label .required{color:#ff6b6b}.photo-slot-label .optional{font-weight:400;font-size:10px;color:#777;text-transform:none}.photo-slot-capture{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;aspect-ratio:4 / 3;background:#333;border:2px dashed #555;border-radius:8px;cursor:pointer;transition:all .2s ease;color:#888;font-size:12px}.photo-slot-capture:hover,.photo-slot-capture:active{border-color:#d9ff00;color:#d9ff00}.photo-slot-options{display:flex;gap:8px;aspect-ratio:4 / 3}.photo-slot-options .photo-slot-capture{flex:1;aspect-ratio:unset}.photo-slot-upload{background:#2a2a3a}.photo-slot-icon{font-size:28px}.photo-slot-preview{position:relative;aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;border:2px solid #48bb78}.photo-slot-preview img{width:100%;height:100%;object-fit:cover}.photo-slot-actions{position:absolute;bottom:0;left:0;right:0;display:flex;background:#000000bf}.photo-slot-rotate{flex:0 0 auto;padding:6px 10px;font-size:16px;font-weight:600;background:transparent;color:#d9ff00;border:none;cursor:pointer;transition:background .2s ease}.photo-slot-rotate:hover{background:#d9ff0033}.photo-slot-rotate:active{background:#d9ff004d}.photo-slot-retake{flex:1;padding:6px;font-size:11px;font-weight:600;text-transform:uppercase;background:transparent;color:#fc8181;border:none;cursor:pointer;transition:background .2s ease}.photo-slot-retake:hover{background:#e53e3ee6;color:#fff}.dropoff-inspection-summary{margin:16px 0;padding:16px;background:#2a2a3e;border-radius:8px;border:1px solid #444}.dropoff-inspection-summary h4{margin:0 0 12px;font-size:14px;font-weight:600;color:#f7b32b}.dropoff-summary-date{font-size:12px;color:#888;margin-bottom:12px}.dropoff-summary-notes{margin-bottom:12px}.dropoff-summary-notes strong{display:block;font-size:12px;color:#aaa;margin-bottom:4px}.dropoff-summary-notes p{font-size:13px;color:#ddd;margin:0;padding:8px;background:#1a1a2e;border-radius:4px}.dropoff-summary-photos strong{display:block;font-size:12px;color:#aaa;margin-bottom:8px}.dropoff-photos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:8px}.dropoff-photo-item{text-align:center}.dropoff-photo-thumb{width:100%;height:60px;object-fit:cover;border-radius:4px;cursor:pointer;border:1px solid #444;transition:border-color .2s ease}.dropoff-photo-thumb:hover{border-color:#f7b32b}.dropoff-photo-label{display:block;font-size:10px;color:#888;margin-top:4px;text-transform:capitalize}.dropoff-summary-empty{font-size:13px;color:#888;font-style:italic;margin:0}.dropoff-inspection-missing{border-color:#640;background:#2a2a20}.dropoff-inspection-missing p{font-size:13px;color:#c90;margin:0}.inspection-acknowledgement{margin-top:20px;padding:16px;background:#333;border-radius:8px;border:1px solid #444}.inspection-acknowledgement h4{margin:0 0 8px;font-size:14px;font-weight:600;color:#d9ff00}.acknowledgement-text{font-size:13px;color:#aaa!important;margin:0 0 14px!important;line-height:1.4}.acknowledgement-fields{display:flex;gap:12px}.acknowledgement-fields .inspection-field{flex:1}.acknowledgement-input{width:100%;padding:10px 12px;font-size:14px;font-family:inherit;border:1px solid #444;border-radius:8px;background:#2a2a2a;color:#e0e0e0;outline:none;box-sizing:border-box}.acknowledgement-input:focus{border-color:#d9ff00}.mileage-input{width:100%;max-width:200px;padding:10px 12px;font-size:16px;font-family:inherit;border:1px solid #444;border-radius:8px;background:#2a2a2a;color:#e0e0e0;outline:none;box-sizing:border-box}.mileage-input:focus{border-color:#d9ff00}.mileage-readonly{background:#1a1a2e;color:#888;cursor:not-allowed;border-color:#333}.mileage-input::placeholder{color:#666}.mileage-input::-webkit-outer-spin-button,.mileage-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.mileage-input[type=number]{-moz-appearance:textfield}.vehicle-inspection-checkbox{margin-bottom:16px;padding:12px;background:#2a2a2a;border-radius:8px;border:1px solid #444}.checkbox-label-inline{display:flex;align-items:center;gap:8px;font-size:14px;color:#ccc;cursor:pointer}.checkbox-label-inline input[type=checkbox]{width:20px;height:20px;accent-color:#D9FF00;cursor:pointer}.view-document-link{background:none;border:none;color:#d9ff00;text-decoration:underline;cursor:pointer;font-size:14px;padding:0}.view-document-link:hover{color:#c4e600}.signature-field{margin-top:16px}.signature-pad-container{display:flex;flex-direction:column;gap:8px}.signature-pad-canvas{width:100%;height:150px;border:2px solid #444;border-radius:8px;background:#fff;cursor:crosshair;touch-action:none}.signature-pad-canvas.disabled{opacity:.5;cursor:not-allowed}.signature-pad-actions{display:flex;justify-content:space-between;align-items:center}.signature-pad-hint{font-size:12px;color:#888}.signature-pad-clear{padding:6px 14px;font-size:12px;font-weight:600;background:#444;color:#ccc;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.signature-pad-clear:hover:not(:disabled){background:#555;color:#fff}.signature-pad-clear:disabled{opacity:.5;cursor:not-allowed}.inspection-document-header{display:flex;align-items:center;gap:16px;margin-bottom:20px}.inspection-document-header h3{margin:0;flex:1}.back-to-form-btn{padding:8px 16px;font-size:14px;font-weight:500;background:#444;color:#ccc;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease}.back-to-form-btn:hover{background:#555;color:#fff}.inspection-document-content{max-height:60vh;overflow-y:auto;padding:20px;background:#fff;color:#333;border-radius:8px;font-size:14px;line-height:1.6}.inspection-document-content .document-logo{text-align:center;margin-bottom:20px}.inspection-document-content .document-logo img{height:40px;filter:brightness(0)}.inspection-document-content h2{font-size:18px;font-weight:600;margin:0 0 16px;color:#333;text-align:center}.inspection-document-content .document-intro{margin-bottom:20px;font-style:italic;color:#333}.inspection-document-content h4{font-size:14px;font-weight:600;margin:20px 0 8px;color:#333}.inspection-document-content p{margin:0 0 8px;color:#333;font-weight:400}.inspection-document-content ul{margin:0 0 8px;padding-left:20px}.inspection-document-content li{margin-bottom:4px;color:#333;font-weight:400}.inspection-document-content .document-footer{margin-top:24px;padding-top:16px;border-top:1px solid #ddd;font-size:13px}.inspection-document-content .document-footer p{margin:4px 0}.image-viewer-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:2000;padding:20px;cursor:pointer;-webkit-tap-highlight-color:transparent}.image-viewer-close{position:absolute;top:20px;right:20px;width:48px;height:48px;background:#ffffff1a;border:2px solid rgba(255,255,255,.3);border-radius:50%;color:#fff;font-size:32px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;z-index:2001}.image-viewer-close:hover,.image-viewer-close:active{background:#fff3;border-color:#ffffff80}.image-viewer-label{position:absolute;top:24px;left:50%;transform:translate(-50%);background:#000000b3;padding:8px 20px;border-radius:20px;color:#d9ff00;font-size:14px;font-weight:600;text-transform:uppercase;letter-spacing:1px;z-index:2001}.image-viewer-img{max-width:100%;max-height:85vh;object-fit:contain;border-radius:8px;cursor:default;box-shadow:0 20px 60px #00000080}.photo-slot-img-clickable{cursor:pointer;transition:transform .2s ease,opacity .2s ease}.photo-slot-img-clickable:hover{opacity:.9}.photo-slot-img-clickable:active{transform:scale(.98)}.photo-slot-preview:after{content:"Tap to expand";position:absolute;top:6px;right:6px;background:#000000b3;color:#d9ff00;font-size:9px;font-weight:600;text-transform:uppercase;padding:3px 6px;border-radius:4px;opacity:.8;pointer-events:none}@media(max-width:768px){.employee-header{flex-direction:column;gap:12px;padding:16px}.employee-header-left,.employee-header-right{width:100%;justify-content:center}.employee-content{padding:16px}.modal-content{max-width:100%}.modal-actions{flex-direction:column}.modal-btn{width:100%}.booking-actions-row{flex-direction:column}.photo-slots-grid{grid-template-columns:repeat(2,1fr)}.acknowledgement-fields{flex-direction:column}.image-viewer-close{width:56px;height:56px;font-size:36px;top:16px;right:16px}.image-viewer-label{top:80px;font-size:12px}.image-viewer-img{max-height:75vh}}.camera-modal-overlay{position:fixed;inset:0;background:#000000f2;z-index:9999;display:flex;flex-direction:column;align-items:center;justify-content:center}.camera-modal{width:100%;max-width:600px;display:flex;flex-direction:column;height:100%;max-height:100vh}.camera-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#1a1a2e;color:#fff;font-size:16px;font-weight:600}.camera-close{background:none;border:none;color:#fff;font-size:28px;cursor:pointer;padding:0;line-height:1}.camera-viewfinder{flex:1;display:flex;align-items:center;justify-content:center;background:#000;overflow:hidden}.camera-video{width:100%;height:100%;object-fit:cover}.camera-controls{padding:24px;background:#1a1a2e;display:flex;justify-content:center;align-items:center}.camera-capture-btn{width:72px;height:72px;border-radius:50%;background:#fff;border:4px solid #D9FF00;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .1s}.camera-capture-btn:active{transform:scale(.95)}.camera-capture-icon{width:56px;height:56px;border-radius:50%;background:#d9ff00}button.photo-slot-capture{width:100%;border:2px dashed #555;background:#2a2a2a;cursor:pointer}
