body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}body,html{overflow-x:hidden}*,:after,:before{box-sizing:border-box}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.login-container{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;display:flex;flex-direction:column;margin:40px auto;max-width:350px;padding:2rem 2.5rem}.login-container h2{color:#2d3a4b;margin-bottom:1.5rem}.login-container input{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-bottom:1rem;padding:.7rem;transition:border .2s;width:100%}.login-container input:focus{border:1.5px solid #2563eb;outline:none}.login-container button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.7rem;transition:background .2s;width:100%}.login-container button:hover{background:#1e40af}.login-container .error{color:#dc2626;font-size:.98rem;margin-bottom:1rem}.login-container .forgot-password-btn{background:#0000;color:#2563eb;font-size:.9rem;font-weight:500;margin-top:.75rem}.login-container .forgot-password-btn:hover{background:#0000;color:#1e40af;text-decoration:underline}.login-container .cancel-btn{background:#6b7280;margin-top:.5rem}.login-container .cancel-btn:hover{background:#4b5563}.login-container .checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:1rem;width:100%}.login-container .checkbox-label input[type=checkbox]{accent-color:#2563eb;cursor:pointer;height:18px;margin:0;width:18px}.change-password-info,.forgot-password-info,.verification-info{color:#4b5563;font-size:.9rem;line-height:1.4;margin-bottom:1rem;text-align:center}.verification-info strong{color:#1e40af}.login-container button:disabled{background:#9ca3af}.password-requirements{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;margin-bottom:1rem;padding:.75rem;text-align:left;width:100%}.password-requirements .requirements-title{color:#374151;font-size:.85rem;font-weight:600;margin:0 0 .5rem}.password-requirements ul{list-style:none;margin:0;padding:0}.password-requirements li{align-items:center;display:flex;font-size:.8rem;gap:.25rem;padding:.15rem 0}.password-requirements li.valid{color:#059669}.password-requirements li.invalid{color:#dc2626}.form-row-inline{display:flex;gap:.5rem;margin-bottom:1rem;width:100%}.form-row-inline input,.form-row-inline select{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:1rem;padding:.7rem}.form-row-inline .city-input{flex:2 1;min-width:0}.form-row-inline .state-select{background:#fff;cursor:pointer;flex:0 0 70px;min-width:70px}.form-row-inline .zip-input{flex:1 1;max-width:80px;min-width:0}.form-row-inline input:focus,.form-row-inline select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.profile-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.profile-modal{background:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;max-height:90vh;max-width:500px;overflow-y:auto;padding:1.5rem 2rem;width:90%}.profile-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.75rem}.profile-header h2{color:#2d3a4b;margin:0}.profile-header .close-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.profile-header .close-btn:hover{color:#374151}.profile-info{background:#f3f4f6;border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.profile-info p{color:#4b5563;margin:0}.profile-form .form-row{display:flex;gap:1rem;margin-bottom:1rem}.profile-form .form-row label{color:#374151;display:flex;flex:1 1;flex-direction:column;font-size:.9rem}.profile-form .form-row input,.profile-form .form-row select{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-top:.25rem;padding:.6rem}.profile-form .form-row select{background:#fff;cursor:pointer}.profile-form .form-row input:focus,.profile-form .form-row select:focus{border-color:#2563eb;outline:none}.profile-form .city-state-zip-row{display:flex;gap:.75rem}.profile-form .city-state-zip-row .city-label{flex:2 1}.profile-form .city-state-zip-row .state-label{flex:0 0 90px}.profile-form .city-state-zip-row .zip-label{flex:1 1;max-width:100px}.profile-form .form-actions{border-top:1px solid #e5e7eb;display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1rem}.profile-form .checkbox-row{justify-content:flex-start;margin-bottom:0}.profile-form .checkbox-row .checkbox-label{align-items:center;color:#374151;cursor:pointer;display:flex;flex:none;flex-direction:row!important;font-size:.95rem;gap:.5rem}.profile-form .checkbox-label input[type=checkbox]{accent-color:#2563eb;cursor:pointer;height:18px;margin:0;width:18px}.profile-form .checkbox-label span{line-height:1.4}.profile-form .cancel-btn{background:#e5e7eb;border:none;border-radius:6px;color:#374151;cursor:pointer;font-weight:500;padding:.6rem 1.2rem}.profile-form .cancel-btn:hover{background:#d1d5db}.profile-form .save-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.6rem 1.2rem}.profile-form .save-btn:hover{background:#1d4ed8}.profile-modal .success{background:#d1fae5;color:#065f46}.profile-modal .error,.profile-modal .success{border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.profile-modal .error{background:#fee2e2;color:#dc2626}.user-bar .profile-btn{background:#0000;border:none;border-radius:6px;color:#fffc;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem;transition:all .2s}.user-bar .profile-btn:hover{background:#ffffff1a;color:#fff}.login-container .contact-btn{background:#0000;border:1px solid #ffffff4d;color:#fffc;margin-top:.5rem}.login-container .contact-btn:hover{background:#ffffff1a;border-color:#ffffff80;color:#fff}.contact-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0009;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.contact-modal{max-height:90vh;overflow-y:auto}.contact-modal .form-group input,.contact-modal .form-group textarea{box-sizing:border-box;width:100%}.login-container .terms-checkbox{flex-wrap:wrap}.login-container .terms-link{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.9rem;font-weight:500;padding:0;text-decoration:underline;width:auto}.login-container .terms-link:hover{background:none;color:#1e40af}.terms-modal{display:flex;flex-direction:column;max-height:80vh;max-width:700px;width:90%}.terms-modal h2{border-bottom:1px solid #ffffff1a;color:#1e3a5f;margin-bottom:1rem;padding-bottom:.5rem}.terms-content{background:#0003;border-radius:8px;flex:1 1;margin-bottom:1rem;max-height:50vh;overflow-y:auto;padding:1rem}.terms-content pre{word-wrap:break-word;color:#e0e0e0;font-family:inherit;font-size:.9rem;line-height:1.6;margin:0;white-space:pre-wrap}.terms-modal .modal-actions{display:flex;justify-content:center;padding-top:.5rem}.terms-modal .modal-actions button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;min-width:120px;padding:.6rem 1.5rem;transition:background .2s}.terms-modal .modal-actions button:hover{background:#1e40af}@media (max-width:600px){.login-container{box-sizing:border-box;margin:20px 1rem;max-width:100%;padding:1.5rem}.profile-modal{margin:.5rem;padding:1rem;width:95%}.profile-section{padding:.75rem}.profile-section h3{font-size:1rem}.terms-modal{padding:1rem;width:95%}.terms-content{font-size:.85rem;padding:.75rem}}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}.centered-page{align-items:center;background:linear-gradient(135deg,#1e3a5f,#2d5a87);box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;padding-left:1rem;padding-right:1rem;padding-top:2rem}.title{align-items:baseline;color:#fff;display:flex;flex-wrap:wrap;font-size:2.8rem;font-weight:800;gap:0;justify-content:center;letter-spacing:1px;margin-bottom:1.5rem;text-shadow:2px 2px 8px #0000004d}.title-the{color:#ffffffe6;font-size:2.2rem;font-weight:400;margin-right:.3rem}.title-turf{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4ade80,#22c55e);-webkit-background-clip:text;background-clip:text;font-weight:900}.title-at-gsc{color:#ffffffd9;font-size:1.8rem;font-weight:500;margin-left:.5rem;margin-right:.3rem}.title-scheduler{color:#ffffffd9;font-size:1.6rem;font-weight:400;letter-spacing:3px;margin-left:.75rem;text-transform:uppercase}.user-bar{align-items:center;box-sizing:border-box;display:flex;gap:.5rem;justify-content:space-between;margin-bottom:1.5rem;max-width:900px;padding:.6rem .75rem;position:relative;width:calc(100% - 2rem);z-index:100}.user-bar.glass{backdrop-filter:blur(20px) saturate(150%);-webkit-backdrop-filter:blur(20px) saturate(150%);background:#1e3a5f80;border:none;border-radius:16px;box-shadow:inset 0 0 0 .5px #ffffff14}.user-bar-left{align-items:center;display:flex;flex:1 1;gap:.75rem}.user-bar-left .user-welcome{margin:0;white-space:nowrap}.glass-btn{align-items:center;background:#0000;border:none;border-radius:10px;color:#ffffffd9;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.4rem;letter-spacing:.01em;padding:.5rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.glass-btn:hover{background:#ffffff26;color:#fff}.glass-btn:active{transform:scale(.96)}.glass-btn.logout{color:#ff8282e6}.glass-btn.logout:hover{background:#ef444433;color:#f99}.quick-access{background:#ffffff0f;border-radius:10px;display:flex;gap:.25rem;padding:.25rem}.quick-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#fff9;cursor:pointer;display:flex;font-size:.8rem;font-weight:500;gap:.35rem;letter-spacing:.01em;padding:.4rem .85rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.quick-btn:hover{color:#ffffffe6}.quick-btn:active{transform:scale(.96)}.quick-btn.active{background:#ffffff2e;box-shadow:0 2px 8px #0000001f;color:#fff}.admin-menu-wrapper{position:relative}.admin-menu-btn{align-items:center;background:#0000;border:none;border-radius:10px;color:#ffffffd9;cursor:pointer;display:flex;font-size:.85rem;font-weight:500;gap:.4rem;letter-spacing:.01em;padding:.5rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1)}.admin-menu-btn:hover{background:#ffffff26;color:#fff}.admin-menu-btn:active{transform:scale(.96)}.admin-menu-btn .menu-icon{font-size:1.1rem}.admin-menu-dropdown-list{left:0;min-width:180px;position:absolute;top:calc(100% + .5rem);z-index:1000}.admin-menu-dropdown-list.glass-dropdown{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);background:#fff;border:1px solid #c8c8c880;border-radius:12px;box-shadow:0 8px 32px #0003}.admin-menu-dropdown-list button{background:#0000;border:none;color:#1f2937;cursor:pointer;display:block;font-size:.9rem;padding:.75rem 1rem;text-align:left;transition:background .15s;width:100%}.admin-menu-dropdown-list button:hover{background:#3b82f61a}.admin-menu-dropdown-list button.active{background:#3b82f633;color:#2563eb;font-weight:500}.user-welcome{color:#fff;font-size:1.1rem;font-weight:500;margin:0;text-shadow:0 1px 2px #0000001a}.user-bar-actions{align-items:center;display:flex;gap:.5rem}.user-bar p{color:#fff;font-size:1.1rem;font-weight:500;margin:0}.logout-btn{background:#0000;border:none;border-radius:6px;color:#fffc;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem;transition:all .2s}.logout-btn:hover{background:#ffffff1a;color:#fff}.link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:1rem;margin-top:1rem;text-decoration:underline}.link-btn:hover{color:#1e40af}.forgot-password-btn{background:#0000!important;color:#6b7280!important;font-size:.9rem!important;margin-top:.5rem;text-decoration:none}.forgot-password-btn:hover{background:#0000!important;color:#374151!important;text-decoration:underline}.change-password-info,.forgot-password-info{color:#4b5563;font-size:.9rem;line-height:1.4;margin-bottom:1rem;text-align:center}.login-container .success{background:#d1fae5;border-radius:6px;color:#059669;font-size:.95rem;margin-bottom:1rem;padding:.75rem;text-align:center}.login-container button:disabled{background:#9ca3af!important;cursor:not-allowed}.app-footer{align-items:center;color:#ffffff80;display:flex;font-size:.85rem;justify-content:center;margin-top:2rem;padding:2rem 1rem}@media (max-width:768px){.user-bar{flex-wrap:wrap;gap:.4rem;padding:.5rem}.user-bar-left{flex-wrap:wrap;gap:.5rem}.user-bar-left .user-welcome{margin-bottom:.25rem;order:-1;width:100%}.quick-access{padding:.2rem}.quick-btn{font-size:.75rem;padding:.35rem .6rem}.admin-menu-btn,.glass-btn{font-size:.8rem;padding:.4rem .75rem}}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.contact-modal{background:linear-gradient(135deg,#1e3a5f,#2d5a87);border:1px solid #ffffff1a;border-radius:16px;box-shadow:0 20px 60px #0006;max-width:500px;padding:2rem;width:90%}.contact-modal h2{color:#fff;font-size:1.5rem;margin:0 0 .5rem;text-align:center}.contact-modal .contact-subtitle{color:#ffffffb3;font-size:.95rem;margin-bottom:1.5rem;text-align:center}.contact-modal .form-row{display:flex;gap:1rem}.contact-modal .form-row>.form-group{flex:1 1}.contact-modal .form-group{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem}.contact-modal .form-group label{color:#ffffffd9;font-size:.9rem;font-weight:500}.contact-modal .form-group input,.contact-modal .form-group textarea{background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;font-size:.95rem;padding:.75rem 1rem;transition:all .2s ease}.contact-modal .form-group input:focus,.contact-modal .form-group textarea:focus{background:#ffffff26;border-color:#4ade8080;outline:none}.contact-modal .form-group input::placeholder,.contact-modal .form-group textarea::placeholder{color:#fff6}.contact-modal .form-group textarea{font-family:inherit;min-height:100px;resize:vertical}.contact-modal .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.contact-modal .modal-actions button{border-radius:8px;cursor:pointer;font-size:.95rem;font-weight:500;padding:.75rem 1.5rem;transition:all .2s ease}.contact-modal .modal-actions .cancel-btn{background:#0000;border:1px solid #ffffff4d;color:#fffc}.contact-modal .modal-actions .cancel-btn:hover{background:#ffffff1a;border-color:#ffffff80}.contact-modal .modal-actions .submit-btn{background:linear-gradient(135deg,#4ade80,#22c55e);border:none;color:#1e3a5f;font-weight:600}.contact-modal .modal-actions .submit-btn:hover{box-shadow:0 4px 12px #4ade804d;transform:translateY(-1px)}.contact-modal .modal-actions .submit-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.contact-modal .success{background:#4ade8033;border:1px solid #4ade8066;border-radius:8px;color:#4ade80}.contact-modal .error,.contact-modal .success{margin-bottom:1rem;padding:.75rem 1rem;text-align:center}.contact-modal .error{background:#ef444433;border:1px solid #ef444466;border-radius:8px;color:#f99}.schedule-container{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:100%;padding:2rem 2.5rem;position:relative;width:900px;z-index:1}.schedule-container h2{color:#2d3a4b;margin-bottom:1.5rem}.schedule-container label{display:block;font-weight:500;margin-bottom:1rem}.schedule-container input[type=date]{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.9rem;height:37px;margin-left:0;padding:.4rem .7rem}.date-selector-row{align-items:center;display:flex;flex-wrap:wrap;gap:1.5rem;margin-bottom:1rem}.date-selector-row>label:first-child{align-items:center;display:flex;font-size:.9rem;gap:.5rem;margin-bottom:0}.date-selector-row .show-all-slots-toggle{margin-bottom:0}.legend{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex-wrap:wrap;gap:1rem;margin-top:1rem;padding:.75rem 1rem}.legend-item{align-items:center;color:#4b5563;display:flex;font-size:.85rem;gap:.4rem}.legend-color{border:1px solid #d1d5db;border-radius:4px;height:20px;width:20px}.legend-color.available{background:#f3f4f6;border-color:#3b82f6}.legend-color.pending{background:#3b82f6;border-color:#2563eb}.legend-color.partial{background:#a78bfa;border-color:#7c3aed}.legend-color.booked{background:#9ca3af;border-color:#6b7280}.legend-color.conflict{background:#ef4444;border-color:#dc2626}.legend-color.blackout{background:#1f2937;border-color:#111827}.timeslots{margin-top:.5rem}.show-all-slots-toggle{align-items:center;background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;color:#4b5563;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:.5rem;height:37px;margin:0;padding:.4rem .75rem;transition:background .2s,border-color .2s}.show-all-slots-toggle:hover{background:#e5e7eb;border-color:#9ca3af}.show-all-slots-toggle input[type=checkbox]{cursor:pointer;height:16px;width:16px}.invalid-date-message{background:#f3f4f6;border:1px dashed #9ca3af;border-radius:8px;color:#6b7280;font-size:1rem;margin-top:1rem;padding:1.5rem 2rem;text-align:center}.timeslot-grid{grid-gap:6px;background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(5,1fr);margin-top:1rem;padding:8px}.timeslot-btn{-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#22223b;cursor:pointer;font-size:.9rem;font-weight:500;padding:.6rem .4rem;text-align:center;transition:all .15s ease}@media (hover:hover){.timeslot-btn:hover:not(.past):not(.blackout):not(.booked){background:#e0e7ff;border-color:#6366f1;box-shadow:inset 0 2px 4px #0000001a;transform:translateY(1px)}}.timeslot-btn.selected{background:#2563eb;border-color:#1e40af;box-shadow:0 2px 4px #2563eb4d;color:#fff}.timeslot-btn.pending{background:#3b82f6;border-color:#2563eb;color:#fff}.timeslot-btn.booked{background:#9ca3af;border-color:#6b7280;color:#fff}.timeslot-btn.past{background:#e5e7eb;border-color:#d1d5db;color:#9ca3af;cursor:not-allowed}.timeslot-btn.conflict{background:#ef4444;border-color:#dc2626;color:#fff}.timeslot-btn.partial{background:#a78bfa;border-color:#7c3aed;color:#4c1d95}.timeslot-btn.blackout{background:#1f2937;border-color:#111827;color:#9ca3af;cursor:not-allowed}.min-slots-warning{background:#fef3c7;border:1px solid #f59e0b;border-radius:8px;color:#92400e;font-size:.9rem;font-weight:500;margin-top:1rem;padding:.75rem 1rem}.min-slots-warning.error{background:#fee2e2;border-color:#ef4444;color:#dc2626}.booking-form{background:#f3f4f6;border-radius:8px;margin-top:2rem;padding:1rem}.booking-form select{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-left:.5rem;max-width:200px;padding:.4rem .7rem}.admin-booking-row{align-items:center;display:flex;gap:1.5rem;margin-bottom:.5rem}.admin-booking-row .checkbox-label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.4rem;white-space:nowrap}.admin-booking-row .checkbox-label input[type=checkbox]{cursor:pointer;height:16px;width:16px}.custom-rate-input{margin-bottom:.5rem}.custom-rate-input input[type=text]{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-left:.5rem;padding:.4rem .7rem;width:80px}.booking-form button{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;display:block;font-size:1rem;margin-top:1rem;padding:.6rem 1.5rem}.booking-form button:hover{background:#1e40af}.recurring-options{border-top:1px solid #e5e7eb;margin-top:1rem;padding-top:1rem}.recurring-settings{background:#fff;border:1px solid #e5e7eb;border-radius:6px;display:flex;flex-wrap:wrap;gap:1rem;margin-top:.75rem;padding:.75rem}.recurring-settings label{align-items:center;display:flex;gap:.5rem;margin-bottom:0}.recurring-settings input[type=date],.recurring-settings select{border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;padding:.4rem .7rem}.price-display{background:linear-gradient(135deg,#ecfdf5,#f0fdf4);border:1px solid #86efac;border-radius:8px;margin:.5rem 0 1rem;padding:1rem}.price-info,.price-total{align-items:center;display:flex;gap:.5rem}.price-total{border-top:1px dashed #86efac;margin-top:.5rem;padding-top:.5rem}.price-label{color:#166534;font-weight:500}.price-amount{color:#15803d;font-size:1.1rem;font-weight:700}.price-duration{color:#4ade80;font-size:.9rem}.price-rule-name{color:#16a34a;font-size:.85rem;font-style:italic}.price-breakdown{margin-bottom:.75rem}.price-breakdown .price-label{display:block;margin-bottom:.5rem}.price-breakdown-item{align-items:center;background:#ffffff80;border-radius:4px;display:flex;font-size:.9rem;justify-content:space-between;margin-bottom:.25rem;padding:.35rem .5rem}.breakdown-name{color:#166534;flex:1 1}.breakdown-rate{color:#4b5563;margin:0 1rem}.breakdown-subtotal{color:#15803d;font-weight:600}.recurring-price-summary{background:linear-gradient(135deg,#eff6ff,#dbeafe);border:2px solid #3b82f6;border-radius:8px;margin-top:1rem;padding:1rem}.recurring-price-total{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem}.recurring-price-total .price-label{color:#1e40af}.recurring-price-total .price-amount{color:#1d4ed8;font-size:1.25rem}.recurring-price-total .price-duration{color:#60a5fa}.error,.success{margin-top:1rem}@media (max-width:640px){.schedule-container{margin:.5rem;max-width:100%;padding:1rem;width:auto}.date-selector-row{align-items:flex-start;flex-direction:column;gap:.75rem}.timeslot-grid{gap:4px;grid-template-columns:repeat(3,1fr);padding:6px}.timeslot-btn{font-size:.8rem;padding:.5rem .25rem}.legend{font-size:.8rem;gap:.5rem}.legend-item{gap:.3rem}.booking-options label{font-size:.9rem;padding:.6rem}.schedule-container h2{font-size:1.25rem}}@media (min-width:641px) and (max-width:900px){.schedule-container{margin:1rem;width:auto}.timeslot-grid{grid-template-columns:repeat(4,1fr)}}.my-bookings-container{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:700px;padding:2rem 2.5rem;position:relative;z-index:1}.my-bookings-container h2{color:#2d3a4b;margin-bottom:1rem}.bookings-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:.5rem;margin-bottom:1.5rem;padding-bottom:0}.tab-btn{align-items:center;background:#0000;border:none;border-bottom:2px solid #0000;color:#6b7280;cursor:pointer;display:flex;font-size:.95rem;gap:.5rem;margin-bottom:-2px;padding:.75rem 1rem;transition:all .2s}.tab-btn:hover{color:#374151}.tab-btn.active{border-bottom-color:#2563eb;color:#2563eb;font-weight:600}.tab-count{background:#e5e7eb;border-radius:10px;color:#374151;font-size:.8rem;font-weight:500;padding:.15rem .5rem}.tab-btn.active .tab-count{background:#dbeafe;color:#2563eb}.tab-count.pending{background:#dbeafe;color:#3b82f6}.tab-count.approved{background:#dcfce7;color:#16a34a}.tab-count.rejected{background:#fee2e2;color:#dc2626}.no-bookings{padding:2rem 0}.bookings-table{border-collapse:collapse;width:100%}.bookings-table td,.bookings-table th{border-bottom:1px solid #e5e7eb;padding:.7rem;text-align:left}.bookings-table th{background:#f3f4f6;font-weight:600}.cancel-btn{background:#0000;border:1px solid #d1d5db;border-radius:4px;color:#6b7280;cursor:pointer;font-size:.9rem;padding:.4rem .8rem;transition:all .2s}.cancel-btn:hover{background:#fee2e2;border-color:#fca5a5;color:#dc2626}.contact-admin-note{color:#6b7280;font-size:.8rem;font-style:italic}.admin-booked-indicator{color:#7c3aed;display:inline-block;font-size:.75rem;font-weight:500;margin-left:.5rem}.time-slot-cell{min-width:140px}.time-slot-date{color:#1f2937;font-weight:600;margin-bottom:.25rem}.slot-count-badge{color:#6b7280;font-size:.85rem;font-weight:400;margin-left:.35rem}.time-slot-range{color:#6b7280;font-size:.9rem}@media (max-width:768px){.my-bookings-container{box-sizing:border-box;margin:.5rem;max-width:100%;padding:1rem}.bookings-tabs{flex-wrap:wrap;gap:.25rem}.tab-btn{font-size:.85rem;padding:.5rem .75rem}.bookings-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.bookings-table td,.bookings-table th{font-size:.85rem;padding:.5rem .4rem;white-space:nowrap}.time-slot-cell{min-width:100px}.cancel-btn{font-size:.8rem;padding:.3rem .5rem}}.public-calendar{background:#fff;border:1px solid #dadce0;border-radius:8px;box-sizing:border-box;font-family:Roboto,Segoe UI,Arial,sans-serif;overflow:hidden;width:100%}.public-calendar .calendar-error,.public-calendar .calendar-loading{color:#5f6368;font-size:1rem;padding:3rem;text-align:center}.public-calendar .calendar-error{color:#d93025}.calendar-header{align-items:center;background:#fff;border-bottom:1px solid #dadce0;display:flex;justify-content:space-between;padding:.75rem 1rem}.calendar-nav{gap:.5rem}.calendar-today-btn{background:#fff;border:1px solid #dadce0;border-radius:4px;color:#3c4043;cursor:pointer;font-size:.875rem;font-weight:500;padding:.5rem 1rem;transition:background .2s,border-color .2s}.calendar-today-btn:hover{background:#f1f3f4;border-color:#c6c6c6}.calendar-nav-btn{align-items:center;background:none;border:none;border-radius:50%;color:#5f6368;display:flex;font-size:1.25rem;height:32px;justify-content:center;transition:background .2s;width:32px}.calendar-nav-btn:hover{background:#f1f3f4}.calendar-title{color:#3c4043;font-size:1.375rem;font-weight:400;margin:0 .75rem}.calendar-actions{align-items:center;display:flex;gap:.5rem}.calendar-view-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%235f6368' d='m3 4.5 3 3 3-3z'/%3E%3C/svg%3E");background-position:right .5rem center;background-repeat:no-repeat;border:1px solid #dadce0;border-radius:4px;color:#3c4043;cursor:pointer;font-size:.875rem;padding:.5rem 2rem .5rem .75rem}.calendar-view-select:hover{background-color:#f1f3f4}.public-calendar .calendar-grid{background:#fff;display:block;width:100%}.public-calendar .calendar-weekdays{border-bottom:1px solid #dadce0;display:grid!important;grid-template-columns:repeat(7,1fr)!important;width:100%}.public-calendar .calendar-weekday{box-sizing:border-box;color:#70757a;font-size:.6875rem;font-weight:500;letter-spacing:.05em;padding:.5rem;text-align:center}.public-calendar .calendar-days{display:grid!important;grid-template-columns:repeat(7,1fr)!important;width:100%}.public-calendar .calendar-day{background:#fff;border-bottom:1px solid #dadce0;border-right:1px solid #dadce0;box-sizing:border-box;min-height:100px;overflow:hidden;padding:.25rem}.public-calendar .calendar-day:nth-child(7n){border-right:none}.public-calendar .calendar-day.other-month{background:#f8f9fa}.public-calendar .calendar-day.other-month .day-number{color:#b0b3b8}.public-calendar .calendar-day.today{background:#e8f0fe}.public-calendar .day-number{box-sizing:border-box;color:#70757a;display:block;font-size:.75rem;padding:.25rem .5rem;text-align:right;width:100%}.public-calendar .day-number.today-number{align-items:center;background:#1a73e8;border-radius:50%;color:#fff;display:inline-flex;float:right;font-weight:500;height:24px;justify-content:center;margin-left:auto;padding:0;width:24px}.public-calendar .day-bookings{clear:both;display:flex;flex-direction:column;gap:2px;padding:0 2px}.public-calendar .booking-pill{border-radius:3px;color:#fff;cursor:default;display:flex;font-size:.6875rem;gap:4px;overflow:hidden;padding:2px 4px;text-overflow:ellipsis;white-space:nowrap}.public-calendar .booking-time{font-weight:500}.public-calendar .booking-resource{opacity:.9;overflow:hidden;text-overflow:ellipsis}.public-calendar .more-bookings{color:#1a73e8;cursor:pointer;font-size:.6875rem;font-weight:500;padding:2px 4px}.public-calendar .more-bookings:hover{text-decoration:underline}.public-calendar .calendar-legend{background:#f8f9fa;border-top:1px solid #dadce0;display:flex;gap:1.5rem;justify-content:center;padding:.75rem 1rem}.public-calendar .legend-item{align-items:center;color:#5f6368;display:flex;font-size:.75rem;gap:.5rem}.public-calendar .legend-color{border-radius:2px;height:12px;width:12px}.public-calendar .calendar-footer-info{background:#f8f9fa;color:#70757a;display:flex;font-size:.75rem;justify-content:space-between;padding:.5rem 1rem}.calendar-timezone{font-style:italic}@media (max-width:768px){.public-calendar{-webkit-overflow-scrolling:touch;overflow-x:auto}.public-calendar .calendar-grid{min-width:600px}.calendar-header{flex-direction:column;gap:.75rem;min-width:600px}.calendar-title{font-size:1.125rem}.public-calendar .calendar-day{min-height:80px}.public-calendar .booking-pill{font-size:.625rem;padding:2px 4px}.public-calendar .booking-resource{display:none}.public-calendar .calendar-legend{flex-wrap:wrap;gap:.75rem;min-width:600px}.public-calendar .calendar-footer-info{min-width:600px}}@media (max-width:480px){.calendar-header,.public-calendar .calendar-footer-info,.public-calendar .calendar-grid,.public-calendar .calendar-legend{min-width:550px}.public-calendar .calendar-day{min-height:70px;padding:2px}.public-calendar .day-number{font-size:.6875rem;padding:2px 4px}.public-calendar .day-number.today-number{font-size:.625rem;height:20px;width:20px}.public-calendar .booking-pill,.public-calendar .calendar-weekday{font-size:.625rem}}.day-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.day-modal{animation:modalSlideIn .2s ease-out;background:#fff;border-radius:8px;box-shadow:0 4px 24px #00000026;display:flex;flex-direction:column;max-height:80vh;max-width:400px;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.day-modal-header{align-items:center;border-bottom:1px solid #dadce0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.day-modal-header h3{color:#3c4043;font-size:1rem;font-weight:500;margin:0}.day-modal-close{align-items:center;background:none;border:none;border-radius:50%;color:#5f6368;cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:background .2s;width:32px}.day-modal-close:hover{background:#f1f3f4}.day-modal-content{display:flex;flex-direction:column;gap:.5rem;overflow-y:auto;padding:.75rem}.modal-booking-item{align-items:center;background:#f8f9fa;border-left:4px solid;border-radius:6px;display:flex;justify-content:space-between;padding:.75rem}.modal-booking-time{color:#3c4043;font-size:.875rem;font-weight:500}.modal-booking-resource{border-radius:4px;color:#fff;font-size:.75rem;font-weight:500;padding:.25rem .5rem}.admin-bookings-container{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:1200px;padding:2rem 2.5rem;position:relative;z-index:1}.admin-bookings-container h2{align-items:center;color:#2d3a4b;display:flex;gap:1rem;margin-bottom:1.5rem}.pending-badge{background:#3b82f6;border-radius:4px;color:#fff;font-size:.8rem;font-weight:500;padding:.2rem .6rem}.admin-filters{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.search-box{flex-shrink:0}.search-box input{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:.95rem;max-width:100%;padding:.5rem 1rem;width:280px}.search-box input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.date-filters{align-items:center;display:flex;gap:.75rem}.date-filters label{align-items:center;color:#4b5563;display:flex;font-size:.9rem;gap:.5rem}.date-filters input[type=date]{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.4rem .6rem}.clear-dates-btn{background:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.clear-dates-btn:hover{background:#4b5563}.filter-tabs{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.filter-tabs-left{display:flex;gap:.5rem}.trash-btn{background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;cursor:pointer;font-size:1.1rem;padding:.4rem .6rem;transition:all .2s}.trash-btn:hover{background:#fecaca;border-color:#f87171}.filter-tab{background:#0000;border:none;border-radius:4px 4px 0 0;color:#6b7280;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;transition:all .2s}@media (hover:hover){.filter-tab:hover:not(.active){background:#f3f4f6;color:#2d3a4b}}.filter-tab.active{background:#3b82f6;color:#fff}.bulk-actions{align-items:center;background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;padding:.75rem 1rem}.bulk-actions span{color:#0369a1;font-weight:600;margin-right:.5rem}.bulk-approve-btn{background:#22c55e;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.bulk-approve-btn:hover{background:#16a34a}.bulk-reject-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.bulk-reject-btn:hover{background:#dc2626}.bulk-delete-btn{background:#7c3aed;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.bulk-delete-btn:hover{background:#6d28d9}.bulk-clear-btn{background:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.bulk-clear-btn:hover{background:#4b5563}.admin-bookings-table{border-collapse:collapse;font-size:.875rem;width:100%}.admin-bookings-table td,.admin-bookings-table th{border-bottom:1px solid #e5e7eb;padding:.75rem .5rem;text-align:left;vertical-align:top}.admin-bookings-table td:first-child,.admin-bookings-table th:first-child{padding-right:0;width:30px}.admin-bookings-table th{background:#f3f4f6;color:#374151;font-weight:600}.admin-bookings-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.admin-bookings-table th.sortable:hover{background:#e5e7eb}.booking-row.status-pending{background:#eff6ff}.booking-row.conflict{background:#fee2e2!important;border-left:4px solid #ef4444}.booking-row.status-rejected{background:#fef2f2}.user-info{display:flex;flex-direction:column;gap:2px}.user-info .user-info-header{align-items:center;display:flex;gap:.5rem}.user-info small{color:#6b7280;font-size:.8rem}.more-info-btn{background:none;border:none;color:#3b82f6;cursor:pointer;display:block;font-size:.75rem;padding:0;text-align:left;text-decoration:underline}.more-info-btn:hover{color:#2563eb}.user-info-expanded{border-left:2px solid #e5e7eb;display:flex;flex-direction:column;gap:2px;margin-top:4px;padding:4px 0 4px 8px}.user-info .booked-by-admin{background:#f3e8ff;border-radius:4px;color:#7c3aed;font-size:.75rem;font-weight:500;margin-top:4px;padding:2px 6px}.time-slot-cell{font-size:.875rem;white-space:nowrap}.time-slot-cell .date-line{color:#374151;font-weight:500}.time-slot-cell .time-line{color:#6b7280}.time-slot-cell .status-line{align-items:center;display:flex;gap:.5rem;margin-top:4px}.admin-notes-preview,.reminder-sent-badge{cursor:help;display:inline-block}.reminder-sent-badge{font-size:.85rem;opacity:.8}.reminder-sent-badge:hover{opacity:1}.requested-cell{font-size:.875rem;white-space:nowrap}.requested-cell .requested-date{color:#374151}.requested-cell .requested-time{color:#6b7280}.admin-bookings-table th.actions-header{text-align:center}.admin-bookings-table td:last-child{vertical-align:middle}.actions-cell{align-items:center;display:flex;flex-wrap:wrap;gap:.25rem;justify-content:center}.approve-btn{background:#22c55e;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.8rem;max-width:60px;min-width:60px;padding:.35rem 0;text-align:center;transition:background .2s;width:60px}.approve-btn:hover:not(:disabled){background:#16a34a}.approve-btn:disabled{background:#9ca3af;cursor:not-allowed;opacity:.6}.reject-btn{background:#ef4444;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.8rem;max-width:60px;min-width:60px;padding:.35rem 0;text-align:center;transition:background .2s;width:60px}.reject-btn:hover{background:#dc2626}.delete-btn{background:#7c3aed;flex-shrink:0;font-size:.8rem;max-width:60px;min-width:60px;padding:.35rem 0;text-align:center;transition:background .2s;width:60px}.delete-btn:hover{background:#6d28d9}.remind-btn{background:#0891b2;border:none;border-radius:4px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.8rem;max-width:60px;min-width:60px;padding:.35rem 0;text-align:center;transition:background .2s;width:60px}.remind-btn:hover{background:#0e7490}.no-bookings{color:#6b7280;padding:2rem;text-align:center}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;max-width:450px;padding:1.5rem 2rem;width:90%}.modal h3{color:#2d3a4b;margin:0 0 1rem}.modal p{color:#6b7280;margin-bottom:1rem}.modal textarea{border:1px solid #d1d5db;border-radius:6px;font-family:inherit;font-size:.95rem;padding:.75rem;resize:vertical;width:100%}.modal textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f633;outline:none}.modal-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1.25rem}.modal-cancel{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem 1rem}.modal-cancel:hover{background:#4b5563}.modal-approve{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem 1rem}.modal-approve:hover{background:#16a34a}.modal-reject{background:#ef4444;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem 1rem}.modal-reject:hover{background:#dc2626}@media (max-width:800px){.admin-bookings-container{box-sizing:border-box;margin:.5rem;max-width:100%;padding:1rem}.admin-filters{align-items:stretch;flex-direction:column}.search-box input{width:100%}.date-filters{flex-wrap:wrap}.admin-bookings-table{-webkit-overflow-scrolling:touch;display:block;font-size:.8rem;overflow-x:auto}.admin-bookings-table td,.admin-bookings-table th{padding:.5rem .25rem;white-space:nowrap}.actions-cell{flex-direction:column;gap:.25rem}.bulk-actions{align-items:stretch;flex-direction:column}.filter-tabs,.filter-tabs-left{flex-wrap:wrap}.filter-tab{font-size:.85rem;padding:.4rem .75rem}}.admin-calendar-section{margin-bottom:2rem}.admin-calendar-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.admin-calendar-header h3{color:#2d3a4b;font-size:1.1rem;margin:0}.toggle-calendar-btn{background:#f1f5f9;border:1px solid #d1d5db;border-radius:6px;color:#4b5563;cursor:pointer;font-size:.875rem;padding:.5rem 1rem;transition:background .2s}.toggle-calendar-btn:hover{background:#e2e8f0}.admin-calendar{margin-bottom:1rem}.admin-calendar .calendar-day{transition:background .15s}.admin-calendar .calendar-day:hover{background:#f8fafc}@media (max-width:768px){.admin-calendar-section{-webkit-overflow-scrolling:touch;overflow-x:auto}.admin-calendar,.admin-calendar-header{min-width:600px}}.admin-analytics,.admin-audit-log,.admin-blackouts,.admin-customers,.admin-pricing{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:700px;padding:2rem;position:relative;z-index:1}.admin-analytics h2,.admin-audit-log h2,.admin-blackouts h2,.admin-customers h2,.admin-pricing h2{color:#2d3a4b;margin:0 0 1.5rem}.analytics-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.analytics-header h2{margin:0}.export-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:background .2s}.export-btn:hover{background:#047857}.section-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.section-header h2{margin:0}.add-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem}.add-btn:hover{background:#1e40af}.blackout-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.blackout-form h3{color:#374151;margin:0 0 1rem}.form-row{margin-bottom:1rem}.form-row.two-col{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-row label{color:#4b5563;display:flex;flex-direction:column;font-size:.9rem;font-weight:500}.form-row input,.form-row textarea{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-top:.4rem;padding:.5rem .75rem}.form-row small{color:#9ca3af;font-size:.8rem;margin-top:.25rem}.form-actions{gap:.75rem;margin-top:1rem}.form-actions button{border-radius:6px;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem}.form-actions button[type=submit]{background:#22c55e;border:none;color:#fff}.form-actions button[type=submit]:hover{background:#16a34a}.form-actions .cancel-btn{background:#f3f4f6;border:1px solid #d1d5db;color:#374151}.admin-audit-log table,.admin-blackouts table,.org-table{border-collapse:collapse;font-size:.95rem;width:100%}.admin-audit-log td,.admin-audit-log th,.admin-blackouts td,.admin-blackouts th,.org-table td,.org-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.admin-audit-log th,.admin-blackouts th,.org-table th{background:#f9fafb;color:#374151;font-weight:600}.actions{display:flex;gap:.5rem}.edit-btn{background:#3b82f6}.delete-btn,.edit-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.4rem .8rem}.delete-btn{background:#ef4444}.no-data{color:#9ca3af;padding:2rem;text-align:center}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(4,1fr);margin-bottom:2rem}.stat-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.25rem;text-align:center}.stat-value{color:#1f2937;display:block;font-size:2rem;font-weight:700}.stat-label{color:#6b7280;display:block;font-size:.85rem;margin-top:.25rem}.stat-card.approved{border-left:4px solid #22c55e}.stat-card.pending{border-left:4px solid #3b82f6}.stat-card.rejected{border-left:4px solid #ef4444}.stat-card.total{border-left:4px solid #8b5cf6}.stat-card.revenue{border-left:4px solid #10b981}.stat-card.potential-sales{border-left:4px solid #f59e0b}.stat-card.customers{border-left:4px solid #6366f1}.stat-card.new-customers{border-left:4px solid #f59e0b}.stat-card.active-customers{border-left:4px solid #14b8a6}.stat-subtitle{color:#9ca3af;font-size:.7rem;margin-top:2px}.analytics-sections{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:1fr 1fr}.analytics-section{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;overflow:hidden;padding:1.25rem}.analytics-section.full-width{grid-column:1/-1;margin-top:1rem}.analytics-section h3{color:#374151;font-size:1rem;margin:0 0 1rem}.org-table{table-layout:fixed}.org-table td:first-child{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.org-table td:last-child{text-align:right;width:70px}.org-table th:last-child{text-align:right}.bar-chart{display:flex;flex-direction:column;gap:.5rem}.bar-row{align-items:center;display:flex;gap:.75rem}.bar-label{color:#4b5563;font-size:.85rem;text-transform:capitalize;width:80px}.bar-container{align-items:center;display:flex;flex:1 1;gap:.5rem}.bar{background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:4px;height:20px;min-width:4px}.bar.revenue-bar{background:linear-gradient(90deg,#10b981,#059669)}.bar-value{color:#6b7280;font-size:.85rem;font-weight:500}.horizontal-scroll{flex-direction:row;overflow-x:auto;padding-bottom:.5rem}.hour-bar{align-items:center;display:flex;flex-direction:column;height:100px;justify-content:flex-end;min-width:40px}.hour-bar-fill{background:linear-gradient(180deg,#3b82f6,#8b5cf6);border-radius:4px 4px 0 0;min-height:4px;width:24px}.hour-label{color:#6b7280;font-size:.7rem;margin-top:.25rem}.hour-value{color:#9ca3af;font-size:.7rem}.activity-chart{align-items:flex-end;display:flex;gap:.5rem;height:120px;justify-content:space-around;padding-top:1rem}.activity-bar{align-items:center;gap:.25rem}.activity-bar,.activity-stack{display:flex;flex-direction:column}.activity-stack{border-radius:4px 4px 0 0;overflow:hidden;width:30px}.approved-part{background:#22c55e}.rejected-part{background:#ef4444}.pending-part{background:#3b82f6}.date-label{color:#6b7280;font-size:.65rem;text-align:center}.log-description{color:#6b7280;margin-bottom:1rem}.action-badge{border-radius:4px;color:#fff;display:inline-block;font-size:.8rem;font-weight:500;padding:.2rem .6rem;text-transform:uppercase}.details-cell code{background:#f3f4f6;border-radius:4px;font-size:.75rem;padding:.2rem .4rem;word-break:break-all}.pagination{align-items:center;display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.pagination button{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;padding:.5rem 1rem}.pagination button:disabled{cursor:not-allowed;opacity:.5}.pagination span{color:#6b7280;font-size:.9rem}.success{background:#f0fdf4;color:#16a34a}.error,.success{border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem}.error{background:#fef2f2;color:#dc2626}.admin-tabs{border-bottom:2px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:.5rem;margin:0 auto 1rem;max-width:700px;padding-bottom:.5rem}.admin-tab{background:#0000;border:none;border-radius:6px;color:#fffc;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem;transition:all .2s}.admin-tab:hover{background:#ffffff1a;color:#fff}.admin-tab.active{background:#2563eb;color:#fff}@media (max-width:768px){.admin-analytics,.admin-audit-log,.admin-blackouts,.admin-customers,.admin-pricing,.admin-section{box-sizing:border-box;margin:1rem;max-width:100%;overflow-x:auto;padding:1rem}.admin-tabs{flex-wrap:wrap;gap:.25rem;margin-left:1rem;margin-right:1rem;max-width:100%}.admin-tab{font-size:.8rem;padding:.4rem .8rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.analytics-sections,.form-row.two-col{grid-template-columns:1fr}.audit-table,.blackouts-list,.customers-table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.admin-audit-log{overflow-x:auto!important}.admin-audit-log table{min-width:700px}.customers-table td,.customers-table th{padding:.5rem;white-space:nowrap}.customers-search{align-items:stretch;flex-direction:column;gap:.5rem}.customers-search input{max-width:100%}.pricing-form .form-row{display:flex;flex-direction:column;gap:.75rem}.pricing-form .form-row>label{width:100%}.pricing-form .form-row.three-col{grid-template-columns:1fr}.pricing-form .recurring-checkbox{margin-top:.5rem;width:100%}.price-input-wrapper{align-items:center;display:flex;width:100%}.price-input-wrapper .currency-symbol{flex-shrink:0;padding:.5rem .6rem}.price-input-wrapper input{flex:1 1;min-width:0;width:100%}.pricing-inputs-section{padding:.75rem}.pricing-form-container{padding:1rem}.pricing-header{align-items:flex-start;flex-direction:column;gap:.75rem}.pricing-rules-list{-webkit-overflow-scrolling:touch;overflow-x:auto}.pricing-table{min-width:700px}.pricing-table td,.pricing-table th{padding:.5rem;white-space:nowrap}}.customers-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1.5rem}.customers-header h2{margin:0}.add-customer-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem}.add-customer-btn:hover{background:#1e40af}.customer-form-container{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.customer-form-container h3{color:#374151;margin:0 0 1rem}.customer-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.customer-form label{color:#374151;display:flex;flex-direction:column;font-size:.9rem}.customer-form input{border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;margin-top:.3rem;padding:.5rem}.customer-form .form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:1rem}.customer-form .cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#6b7280;cursor:pointer;padding:.5rem 1rem}.customer-form .save-btn{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.5rem 1rem}.customer-form .save-btn:hover{background:#16a34a}.customers-search{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.customers-search input{border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;max-width:300px;padding:.5rem .75rem;width:100%}.customers-search .trash-btn{align-items:center;background:#fee2e2;border:1px solid #fca5a5;border-radius:6px;cursor:pointer;display:flex;font-size:1rem;gap:.25rem;padding:.4rem .75rem;transition:all .2s}.customers-search .trash-btn:hover{background:#fecaca;border-color:#f87171}.customers-search .trash-btn .trash-count{align-items:center;background:#ef4444;border-radius:50%;color:#fff;display:inline-flex;font-size:.75rem;font-weight:600;height:20px;justify-content:center;min-width:20px}.customers-table{border-collapse:collapse;width:100%}.customers-table td,.customers-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.customers-table th{background:#f9fafb;color:#374151;font-weight:600}.customers-table tr.selected{background:#eff6ff}.customers-table td:nth-child(3),.customers-table th:nth-child(3){max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.customers-table th:last-child{text-align:center}.customers-table td:last-child{text-align:center;white-space:nowrap}.customers-table .edit-btn,.customers-table .view-btn{border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;margin-right:.5rem;padding:.35rem 0;text-align:center;transition:background .2s;width:60px}.customers-table .view-btn{background:#6b7280}.customers-table .view-btn:hover{background:#4b5563}.customers-table .edit-btn{background:#3b82f6}.customers-table .edit-btn:hover{background:#2563eb}@media (max-width:768px){.customers-table td:last-child{white-space:normal}.customers-table .edit-btn,.customers-table .view-btn{display:block;margin-bottom:.25rem;margin-right:0;width:100%}.customers-table .delete-btn{margin-bottom:0}.customers-table td:nth-child(2),.customers-table th:nth-child(2){max-width:none}}.customers-table .valid-indicator{color:#059669;font-weight:600;text-align:center}.customers-table .invalid-indicator{color:#dc2626;font-weight:600;text-align:center}.status-enabled{color:#059669;font-weight:600}.status-disabled{color:#dc2626;font-weight:600}.customer-note{background:#fef3c7;border-radius:6px;color:#92400e;font-size:.9rem;margin-top:1.5rem;padding:1rem}.customer-view-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.customer-view-modal{background:#fff;border-radius:12px;box-shadow:0 4px 24px #0003;max-height:90vh;max-width:500px;overflow-y:auto;width:90%}.customer-view-header{align-items:center;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:1rem 1.5rem}.customer-view-header h3{color:#1f2937;margin:0}.customer-view-header .close-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:1.5rem;line-height:1;padding:0}.customer-view-header .close-btn:hover{color:#1f2937}.customer-view-content{padding:1.5rem}.customer-view-content .detail-row{border-bottom:1px solid #f3f4f6;display:flex;padding:.75rem 0}.customer-view-content .detail-row:last-child{border-bottom:none}.customer-view-content .detail-label{color:#374151;flex-shrink:0;font-weight:600;width:120px}.customer-view-content .detail-value{color:#1f2937}.customer-view-actions{border-top:1px solid #e5e7eb;padding:1rem 1.5rem;text-align:right}.customer-view-actions .close-modal-btn{background:#3b82f6;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.5rem 1.5rem}.customer-view-actions .close-modal-btn:hover{background:#2563eb}.pricing-header{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.pricing-header h2{margin:0 1rem 0 0}.pricing-form-container{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.pricing-form-container h3{color:#374151;margin:0 0 1rem}.pricing-form .form-row{display:flex;gap:1rem;margin-bottom:1rem}.pricing-form .form-row label{color:#374151;display:flex;flex:1 1;flex-direction:column;font-size:.9rem}.pricing-form .form-row input,.pricing-form .form-row select{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;margin-top:.25rem;padding:.6rem}.pricing-form .form-hint{color:#6b7280;font-size:.85rem;margin-bottom:1rem}.pricing-form .form-actions{display:flex;gap:.75rem;justify-content:flex-end}.pricing-rules-list{margin-top:1.5rem}.pricing-group{margin-bottom:2rem}.pricing-group h3{border-bottom:2px solid #e5e7eb;color:#1f2937;margin:0 0 .75rem;padding-bottom:.5rem}.pricing-group .no-rules{color:#6b7280;font-style:italic;margin:.5rem 0}.pricing-table{border-collapse:collapse;font-size:.95rem;width:100%}.pricing-table td,.pricing-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.pricing-table td:nth-child(3),.pricing-table th:nth-child(3){min-width:120px;white-space:nowrap}.pricing-table th{background:#f9fafb;color:#374151;font-weight:600}.pricing-table .price-cell{color:#059669;font-weight:600}.pricing-table .priority-cell,.pricing-table th:nth-child(4){text-align:center}.pricing-table .delete-btn,.pricing-table .edit-btn{border:none;border-radius:4px;cursor:pointer;font-size:.85rem;margin-right:.5rem;min-width:60px;padding:.35rem .75rem;text-align:center}.pricing-table .edit-btn{background:#3b82f6;color:#fff}.pricing-table .edit-btn:hover{background:#2563eb}.pricing-table .delete-btn{background:#ef4444;color:#fff}.pricing-table .delete-btn:hover{background:#dc2626}.recurring-checkbox{align-items:center;align-self:flex-end;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding-bottom:.5rem;white-space:nowrap}.recurring-checkbox input[type=checkbox]{cursor:pointer;height:18px;width:18px}.pricing-inputs-section{background:#f1f5f9;border-radius:8px;margin:1rem 0;padding:1rem}.pricing-inputs-section h4{color:#1f2937;font-size:1rem;margin:0 0 .75rem}.pricing-form .form-row.three-col{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,1fr)}.pricing-form .form-row.three-col>label{min-width:0;overflow:hidden}.price-input-wrapper{align-items:stretch;display:flex;margin-top:.25rem;max-width:100%}.price-input-wrapper .currency-symbol{align-items:center;background:#e5e7eb;border:1px solid #d1d5db;border-radius:6px 0 0 6px;border-right:none;color:#374151;display:flex;flex-shrink:0;font-weight:500;padding:.6rem .75rem}.price-input-wrapper input{border-radius:0 6px 6px 0!important;flex:1 1;margin-top:0!important;min-width:0;padding:.6rem .75rem!important;width:100%}.admin-invoices{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:900px;padding:2rem;position:relative;z-index:1}.admin-invoices .table-scroll-wrapper{overflow-x:auto;width:100%}.invoices-header{justify-content:space-between}.invoice-search-filters,.invoices-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.invoice-search-filters .search-box{flex:1 1;max-width:400px;min-width:250px}.invoice-search-filters .search-box input{border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;padding:.6rem 1rem;width:100%}.invoice-search-filters .date-filters{align-items:center;display:flex;gap:.75rem}.invoice-search-filters .date-filters .date-type-select{background:#fff;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.9rem;padding:.5rem}.invoice-search-filters .date-filters label{align-items:center;color:#4b5563;display:flex;font-size:.9rem;gap:.5rem}.invoice-search-filters .date-filters input[type=date]{border:1px solid #d1d5db;border-radius:6px;padding:.5rem}.export-csv-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:.5rem 1rem;transition:background .2s;white-space:nowrap}.export-csv-btn:hover{background:#047857}.invoice-view-tabs{border-bottom:2px solid #e5e7eb;display:flex;gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem}.invoice-tab{background:#0000;border:none;border-radius:4px 4px 0 0;color:#6b7280;cursor:pointer;font-size:.95rem;padding:.5rem 1rem;transition:all .2s}@media (hover:hover){.invoice-tab:hover:not(.active){background:#f3f4f6;color:#2d3a4b}}.invoice-tab.active{background:#3b82f6;color:#fff}.booking-status-filters{display:flex;gap:.75rem;margin-bottom:1rem}.booking-status-filters select{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.5rem .75rem}.view-toggle{display:flex;gap:.5rem}.view-toggle button{background:#fff;border:1px solid #d1d5db;border-radius:6px;cursor:pointer;font-size:.9rem;padding:.5rem 1rem;transition:all .2s}.view-toggle button.active{background:#2563eb;border-color:#2563eb;color:#fff}@media (hover:hover){.view-toggle button:hover:not(.active){background:#f3f4f6}}.generate-invoice-section{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-bottom:1rem;padding:1rem}.generate-invoice-section h4{color:#1e40af;margin:0 0 .75rem}.invoice-options{align-items:flex-end;display:flex;flex-wrap:wrap;gap:1rem}.invoice-options label{color:#374151;display:flex;flex-direction:column;font-size:.85rem;gap:.25rem}.invoice-options input{border:1px solid #d1d5db;border-radius:4px;font-size:.9rem;padding:.4rem .6rem}.generate-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:.5rem 1rem}.generate-btn:hover{background:#1e40af}.admin-invoices .admin-filters{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.admin-invoices .admin-filters .search-box input{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;min-width:220px;padding:.5rem .75rem}.admin-invoices .admin-filters .date-filters{align-items:center;display:flex;gap:.5rem}.admin-invoices .admin-filters .date-filters label{align-items:center;display:flex;font-size:.85rem;gap:.25rem}.admin-invoices .admin-filters .date-filters input{border:1px solid #d1d5db;border-radius:4px;font-size:.85rem;padding:.4rem}.admin-invoices .admin-filters select{border:1px solid #d1d5db;border-radius:6px;font-size:.9rem;padding:.5rem}.admin-invoices .admin-bookings-table{border-collapse:collapse;font-size:.9rem;min-width:600px;width:100%}.admin-invoices .admin-bookings-table td,.admin-invoices .admin-bookings-table th{border-bottom:1px solid #e5e7eb;padding:.6rem .5rem;text-align:left}.admin-invoices .admin-bookings-table th{background:#f9fafb;color:#374151;font-weight:600}.admin-invoices .time-slot-cell .date-line{font-weight:500}.admin-invoices .time-slot-cell .time-line{color:#6b7280;font-size:.85rem}.admin-invoices .admin-bookings-table tr.selected{background:#eff6ff}.admin-invoices .user-info-cell{position:relative}.admin-invoices .user-name{font-weight:500}.admin-invoices .more-info-btn{background:none;border:none;color:#3b82f6;cursor:pointer;display:block;font-size:.75rem;padding:0;text-align:left;text-decoration:underline}.admin-invoices .user-info-expanded{color:#6b7280;font-size:.8rem;margin-top:.25rem}.admin-invoices .link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:inherit;padding:0;text-decoration:underline}.admin-invoices .link-btn:hover{color:#1e40af}.invoices-header h2{color:#2d3a4b;margin:0}.header-actions{align-items:center;display:flex;gap:1rem}.header-actions select{border:1px solid #d1d5db;border-radius:6px;font-size:.95rem;padding:.5rem 1rem}.back-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.6rem 1.2rem}.back-btn:hover{background:#4b5563}.detail-top-actions{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.download-btn{background:#059669;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem}.download-btn:hover{background:#047857}.invoices-table{border-collapse:collapse;font-size:.95rem;width:100%}.invoices-table td,.invoices-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left;vertical-align:top}.invoices-table th{background:#f9fafb;color:#374151;font-weight:600}.invoices-table .user-info-cell{display:flex;flex-direction:column;gap:.25rem}.invoices-table .user-name{font-weight:500}.invoices-table .more-info-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-size:.8rem;padding:0;text-decoration:underline}.invoices-table .more-info-btn:hover{color:#1e40af}.invoices-table .user-info-expanded{background:#f8fafc;border-radius:4px;display:flex;flex-direction:column;font-size:.85rem;gap:.15rem;margin-top:.25rem;padding:.5rem}.invoices-table .user-info-expanded small{color:#4b5563}.invoices-table .balance-cell{font-weight:500}.invoices-table .balance-cell.balance-due{color:#dc2626;font-weight:600}.invoices-table .status-below-balance{margin-top:.5rem}.invoices-table .balance-due{color:#dc2626;font-weight:600}.invoices-table .stacked-actions{display:flex;flex-direction:column;gap:.35rem;min-width:100px}.invoices-table .action-btn{border:none;border-radius:4px;cursor:pointer;display:block;font-size:.85rem;margin:0;padding:.4rem .6rem;text-align:center;width:100%}.invoices-table .action-btn.send-btn{background:#2563eb;color:#fff}.invoices-table .action-btn.send-btn:hover{background:#1e40af}.invoices-table .action-btn.resend-btn{background:#8b5cf6;color:#fff}.invoices-table .action-btn.resend-btn:hover{background:#7c3aed}.invoices-table .action-btn.mark-sent-btn{background:#6b7280;color:#fff}.invoices-table .action-btn.mark-sent-btn:hover{background:#4b5563}.invoices-table .action-btn.payment-btn{background:#22c55e;color:#fff}.invoices-table .action-btn.payment-btn:hover{background:#16a34a}.invoices-table .link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-weight:500;padding:0;text-decoration:underline}.invoices-table .link-btn:hover{color:#1e40af}.send-btn{background:#2563eb;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-right:.5rem;padding:.35rem .75rem}.send-btn:hover{background:#1e40af}.resend-btn{background:#8b5cf6;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-right:.5rem;padding:.35rem .75rem}.resend-btn:hover{background:#7c3aed}.mark-sent-btn{background:#6b7280;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;margin-right:.5rem;padding:.35rem .75rem}.mark-sent-btn:hover{background:#4b5563}.payment-btn{background:#22c55e;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;padding:.35rem .75rem}.payment-btn:hover{background:#16a34a}.create-invoice{max-width:800px}.create-invoice h3{color:#1f2937;margin:0 0 1.5rem}.form-section{margin-bottom:1.5rem}.form-section label{color:#374151;display:flex;flex-direction:column;font-weight:500;gap:.25rem}.form-section input,.form-section select,.form-section textarea{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:.6rem}.form-section h4{color:#1f2937;margin:0 0 .75rem}.select-all-row{background:#f3f4f6;border-radius:6px;margin-bottom:1rem;padding:.75rem}.select-all-row label{align-items:center;cursor:pointer;display:flex;font-weight:500;gap:.5rem}.bookings-selection{border:1px solid #e5e7eb;border-radius:6px;max-height:300px;overflow-y:auto;padding:1rem}.booking-date-group{margin-bottom:1rem}.booking-date-group:last-child{margin-bottom:0}.booking-date-group h5{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.9rem;margin:0 0 .5rem;padding-bottom:.25rem}.booking-checkbox{align-items:center;cursor:pointer;display:flex;gap:.5rem;padding:.35rem 0}.booking-checkbox:hover{background:#f9fafb}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.create-btn{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.75rem 1.5rem}.create-btn:hover{background:#16a34a}.create-btn:disabled{background:#9ca3af;cursor:not-allowed}.invoice-detail{max-width:800px}.invoice-header-info{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.invoice-header-info h3{color:#1f2937;font-size:1.5rem;margin:0}.invoice-header-info p{color:#6b7280;margin:.25rem 0 0}.invoice-status-section{align-items:flex-end;display:flex;flex-direction:column;gap:.75rem}.status-actions{display:flex;gap:.5rem}.customer-info{background:#f9fafb;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.customer-info h4{color:#6b7280;font-size:.85rem;margin:0 0 .5rem;text-transform:uppercase}.customer-info p{color:#374151;margin:.25rem 0}.invoice-items-table{border-collapse:collapse;margin-bottom:1.5rem;width:100%}.invoice-items-table td,.invoice-items-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.invoice-items-table th{background:#f9fafb;color:#374151;font-weight:600}.invoice-items-table tfoot td{border-bottom:none;padding:.5rem .75rem}.invoice-items-table .text-right{text-align:right}.invoice-items-table .total-row td{border-top:2px solid #e5e7eb;padding-top:.75rem}.invoice-items-table .balance-row td{color:#dc2626;font-size:1.1rem}.line-note-row td{background:#fafafa;border-bottom:1px solid #e5e7eb;padding:0 .75rem .75rem!important}.line-note-display{align-items:center;display:flex;gap:.5rem}.line-note-text{color:#059669;font-size:.85rem;font-style:italic;margin:0}.line-note-edit textarea{border:1px solid #d1d5db;border-radius:4px;font-size:.85rem;padding:.5rem;resize:vertical;width:100%}.line-note-actions{display:flex;gap:.5rem;margin-top:.5rem}.edit-note-btn{background:none;border:none;color:#6b7280;cursor:pointer;font-size:.75rem;padding:0}.edit-note-btn:hover{color:#2563eb;text-decoration:underline}.save-btn-small{background:#22c55e;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.8rem;padding:.25rem .75rem}.save-btn-small:hover{background:#16a34a}.cancel-btn-small{background:#e5e7eb;border:none;border-radius:4px;color:#374151;cursor:pointer;font-size:.8rem;padding:.25rem .75rem}.cancel-btn-small:hover{background:#d1d5db}.invoice-notes{word-wrap:break-word;background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;box-sizing:border-box;margin-bottom:1.5rem;overflow-wrap:break-word;padding:1rem;text-align:left;width:100%}.invoice-notes h4{color:#92400e;margin:0 0 .5rem;text-align:left}.invoice-notes p{word-wrap:break-word;color:#78350f;margin:0;overflow-wrap:break-word}.invoice-notes .no-notes{color:#9ca3af;font-style:italic}.notes-edit,.notes-edit textarea{box-sizing:border-box;width:100%}.notes-edit textarea{border:1px solid #d1d5db;border-radius:4px;font-size:.9rem;margin-bottom:.5rem;padding:.5rem;resize:vertical}.notes-display{align-items:flex-start;display:flex;gap:1rem;justify-content:space-between}.notes-display p{flex:1 1;text-align:left}.notes-actions{display:flex;gap:.5rem}.admin-notes-section{word-wrap:break-word;background:#fef2f2;border:1px solid #fca5a5;border-radius:6px;box-sizing:border-box;margin-bottom:1.5rem;overflow-wrap:break-word;padding:1rem;text-align:left;width:100%}.admin-notes-section h4{color:#991b1b;margin:0 0 .5rem;text-align:left}.admin-notes-section p{word-wrap:break-word;color:#7f1d1d;margin:0;overflow-wrap:break-word;text-align:left}.admin-notes-section .no-notes{color:#9ca3af;font-style:italic}.admin-notes-section textarea{border:1px solid #fca5a5;border-radius:4px;font-size:.9rem;margin-bottom:.5rem;padding:.5rem;resize:vertical;width:100%}.payments-section{margin-top:2rem}.payments-section h4{color:#1f2937;margin:0 0 1rem}.payments-table{border-collapse:collapse;font-size:.9rem;width:100%}.payments-table td,.payments-table th{border-bottom:1px solid #e5e7eb;padding:.6rem;text-align:left}.payments-table th{background:#ecfdf5;color:#065f46}.admin-invoices .modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.admin-invoices .modal{background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;padding:2rem;width:90%}.admin-invoices .modal h3{margin:0 0 1.5rem}.admin-invoices .modal .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.admin-invoices .modal label{color:#374151;display:flex;flex-direction:column;font-size:.9rem;gap:.25rem}.admin-invoices .modal input,.admin-invoices .modal select,.admin-invoices .modal textarea{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;padding:.6rem}.admin-invoices .modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:1.5rem}.admin-invoices .modal-cancel{background:#6b7280}.admin-invoices .modal-cancel,.admin-invoices .modal-confirm{border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.6rem 1.2rem}.admin-invoices .modal-confirm{background:#22c55e}.admin-invoices .modal-confirm:hover{background:#16a34a}.no-invoices{color:#6b7280;padding:2rem;text-align:center}@media (max-width:768px){.admin-invoices{box-sizing:border-box;margin:1rem;max-width:100%;padding:1rem}.invoice-search-filters{align-items:stretch;flex-direction:column}.invoice-search-filters .search-box{max-width:none;min-width:auto}.invoice-search-filters .date-filters,.invoice-view-tabs{flex-wrap:wrap}.invoice-tab{flex:1 1;min-width:100px;text-align:center}.booking-status-filters{flex-wrap:wrap}.booking-status-filters select{flex:1 1;min-width:120px}.admin-invoices .admin-bookings-table{-webkit-overflow-scrolling:touch;display:block;font-size:.8rem;overflow-x:auto}.admin-invoices .admin-bookings-table td,.admin-invoices .admin-bookings-table th{padding:.5rem .25rem;white-space:nowrap}.invoice-items-table,.invoices-table,.payments-table,.terms-table{-webkit-overflow-scrolling:touch;display:block;font-size:.8rem;overflow-x:auto}.invoice-items-table td,.invoice-items-table th,.invoices-table td,.invoices-table th,.payments-table td,.payments-table th,.terms-table td,.terms-table th{padding:.5rem .25rem;white-space:nowrap}.generate-invoice-section{flex-direction:column}.invoice-options{flex-wrap:wrap}}.my-invoices{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:900px;padding:2rem}.my-invoices h2{color:#2d3a4b;margin:0 0 1.5rem}.my-invoices .invoices-table{border-collapse:collapse;font-size:.95rem;width:100%}.my-invoices .invoices-table td,.my-invoices .invoices-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.my-invoices .invoices-table th{background:#f9fafb;color:#374151;font-weight:600}.my-invoices .invoices-table .balance-due{color:#dc2626;font-weight:600}.my-invoices .invoices-table .link-btn{background:none;border:none;color:#2563eb;cursor:pointer;font-weight:500;padding:0;text-decoration:underline}.my-invoices .invoices-table .link-btn:hover{color:#1e40af}.my-invoices .invoices-header{margin-bottom:1.5rem}.my-invoices .back-btn{background:#6b7280;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.6rem 1.2rem}.my-invoices .back-btn:hover{background:#4b5563}.my-invoices .invoice-header-info{align-items:flex-start;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.my-invoices .invoice-header-info h3{color:#1f2937;font-size:1.5rem;margin:0}.my-invoices .invoice-header-info p{color:#6b7280;margin:.25rem 0 0}.my-invoices h4{color:#1f2937;margin:1.5rem 0 .75rem}.my-invoices .invoice-items-table{border-collapse:collapse;margin-bottom:1.5rem;width:100%}.my-invoices .invoice-items-table td,.my-invoices .invoice-items-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.my-invoices .invoice-items-table th{background:#f9fafb;color:#374151;font-weight:600}.my-invoices .invoice-items-table tfoot td{border-bottom:none;padding:.5rem .75rem}.my-invoices .invoice-items-table .text-right{text-align:right}.my-invoices .invoice-items-table .total-row td{border-top:2px solid #e5e7eb;padding-top:.75rem}.my-invoices .invoice-items-table .balance-row td{color:#dc2626;font-size:1.1rem}.my-invoices .invoice-notes{background:#fffbeb;border:1px solid #fcd34d;border-radius:6px;margin-bottom:1.5rem;padding:1rem}.my-invoices .invoice-notes h4{color:#92400e;margin:0 0 .5rem}.my-invoices .invoice-notes p{color:#78350f;margin:0}.my-invoices .payments-section{margin-top:2rem}.my-invoices .payments-table{border-collapse:collapse;font-size:.9rem;width:100%}.my-invoices .payments-table td,.my-invoices .payments-table th{border-bottom:1px solid #e5e7eb;padding:.6rem;text-align:left}.my-invoices .payments-table th{background:#ecfdf5;color:#065f46}.my-invoices .no-invoices{color:#6b7280;padding:2rem;text-align:center}@media (max-width:768px){.my-invoices{box-sizing:border-box;margin:1rem;max-width:100%;padding:1rem}.my-invoices .invoice-items-table,.my-invoices .invoices-table,.my-invoices .payments-table{-webkit-overflow-scrolling:touch;display:block;font-size:.85rem;overflow-x:auto}.my-invoices .invoice-items-table td,.my-invoices .invoice-items-table th,.my-invoices .invoices-table td,.my-invoices .invoices-table th{padding:.5rem;white-space:nowrap}.my-invoices .invoice-header-info{flex-direction:column;gap:.5rem}.my-invoices .back-btn{font-size:.85rem;padding:.5rem .75rem}}.admin-section{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:700px;padding:2rem;position:relative;z-index:1}.admin-section h3{color:#2d3a4b;font-size:1.4rem;margin:0 0 1.5rem}.settings-group{background:#f9fafb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.settings-group h4{color:#374151;margin:0 0 .5rem}.settings-description{color:#6b7280;font-size:.9rem;margin-bottom:1rem}.settings-row{align-items:center;display:flex;gap:1rem;margin-bottom:1rem}.settings-row label{color:#374151;font-weight:500;min-width:150px}.timezone-select{border:1px solid #d1d5db;border-radius:6px;font-size:1rem;min-width:200px;padding:.6rem 1rem}.timezone-select:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb33;outline:none}.timezone-preview{background:#fff;border:1px solid #e5e7eb;border-radius:4px;color:#6b7280;font-size:.9rem;margin:1rem 0;padding:.75rem}.save-settings-btn{background:#2563eb;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:.7rem 1.5rem}.save-settings-btn:hover{background:#1d4ed8}.save-settings-btn:disabled{background:#93c5fd;cursor:not-allowed}.admin-calendar-container{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:1rem auto 2rem;max-width:700px;padding:1.5rem}.calendar-nav{align-items:center;display:flex;gap:1.5rem;justify-content:center;margin-bottom:1rem}.calendar-nav h3{color:#2d3a4b;margin:0;min-width:180px;text-align:center}.calendar-nav-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:1rem;padding:.4rem .8rem}.calendar-nav-btn:hover{background:#e5e7eb}.calendar-legend{border-bottom:1px solid #e5e7eb;display:flex;flex-wrap:wrap;gap:1rem;justify-content:center;margin-bottom:1rem;padding-bottom:1rem}.calendar-legend .legend-item{align-items:center;color:#6b7280;display:flex;font-size:.8rem;gap:.4rem}.calendar-legend .legend-color{border:1px solid #d1d5db;border-radius:4px;height:16px;width:16px}.calendar-grid{grid-gap:4px;display:grid;gap:4px;grid-template-columns:repeat(7,1fr)}.calendar-header-cell{color:#6b7280;font-size:.75rem;font-weight:600;padding:.5rem 0;text-align:center;text-transform:uppercase}.calendar-day{align-items:center;aspect-ratio:1;border:1px solid #e5e7eb;border-radius:6px;cursor:default;display:flex;flex-direction:column;justify-content:center;min-height:50px;position:relative;transition:transform .15s ease,box-shadow .15s ease}.calendar-day.clickable{cursor:pointer}.calendar-day.clickable:hover{box-shadow:0 4px 12px #00000026;transform:scale(1.05);z-index:1}.calendar-day.clickable:active{transform:scale(.98)}.calendar-day.empty{background:#0000;border-color:#0000}.calendar-day.empty.clickable:hover{box-shadow:none;transform:none}.calendar-day.today{border:2px solid #2563eb}.calendar-day .day-number{color:#374151;font-size:.9rem;font-weight:600}.calendar-day .occupancy-label{color:#374151;font-size:.65rem;font-weight:500}.calendar-loading{color:#6b7280;padding:2rem;text-align:center}.payment-terms-section{background:#fff;border-radius:12px;box-shadow:0 2px 16px #00000014;margin:2rem auto;max-width:800px;padding:2rem}.payment-terms-section h3{color:#2d3a4b;font-size:1.25rem;margin:0 0 .5rem}.payment-terms-section .settings-description{color:#6b7280;font-size:.9rem;line-height:1.5;margin-bottom:1.5rem}.term-form{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.term-form .form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.term-form label{color:#4b5563;display:flex;flex-direction:column;font-size:.9rem;font-weight:500}.term-form input[type=date],.term-form input[type=number],.term-form input[type=text],.term-form select,.term-form textarea{border:1px solid #d1d5db;border-radius:6px;box-sizing:border-box;font-size:1rem;margin-top:.4rem;padding:.5rem .75rem;width:100%}.term-form textarea{min-height:60px;resize:vertical}.term-form .checkbox-label{align-items:center;cursor:pointer;display:flex;flex-direction:row;gap:8px;margin-top:12px}.term-form .checkbox-label input[type=checkbox]{height:18px;margin:0;width:18px}.installments-header{border-bottom:1px solid #e5e7eb;margin-bottom:1rem;margin-top:1.5rem;padding-bottom:.5rem}.installments-header h4{align-items:center;color:#374151;display:flex;font-size:1rem;gap:8px;margin:0}.installments-header .hint{color:#9ca3af;font-size:.85rem;font-weight:400}.installment-row{grid-gap:12px;align-items:end;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:grid;gap:12px;grid-template-columns:80px 1fr auto auto auto;margin-bottom:.75rem;padding:1rem}.installment-row label{color:#6b7280;display:flex;flex-direction:column;font-size:.85rem;font-weight:500}.installment-row input,.installment-row select{border:1px solid #d1d5db;border-radius:5px;font-size:.9rem;margin-top:.3rem;padding:.4rem .6rem}.installment-row .days-input,.installment-row .percent-input{width:70px}.installment-row .date-input{width:130px}.installment-row .refundable-label{align-items:center;display:flex;flex-direction:row;font-size:.85rem;gap:6px;padding-bottom:.4rem;white-space:nowrap}.installment-row .refundable-label input[type=checkbox]{height:16px;margin:0;width:16px}.remove-installment-btn{background:#fee2e2;border:none;border-radius:5px;color:#dc2626;cursor:pointer;font-size:.9rem;margin-bottom:.4rem;padding:6px 10px;transition:background .2s}.remove-installment-btn:hover{background:#fecaca}.add-installment-btn{background:#dbeafe;border:none;border-radius:6px;color:#2563eb;cursor:pointer;font-size:.9rem;font-weight:500;margin-bottom:1rem;padding:.5rem 1rem;transition:background .2s}.add-installment-btn:hover{background:#bfdbfe}.term-form-actions{border-top:1px solid #e5e7eb;display:flex;gap:.75rem;margin-top:1rem;padding-top:1rem}.term-form-actions .save-btn{background:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:500;padding:.6rem 1.2rem;transition:background .2s}.term-form-actions .save-btn:hover{background:#16a34a}.term-form-actions .cancel-btn{background:#f3f4f6;border:1px solid #d1d5db;border-radius:6px;color:#374151;cursor:pointer;font-size:.95rem;padding:.6rem 1.2rem;transition:background .2s}.term-form-actions .cancel-btn:hover{background:#e5e7eb}.existing-terms-section{margin-top:2rem}.existing-terms-section h3{color:#374151;font-size:1.1rem;margin:0 0 1rem}.terms-table{border-collapse:collapse;font-size:.95rem;width:100%}.terms-table td,.terms-table th{border-bottom:1px solid #e5e7eb;padding:.75rem;text-align:left}.terms-table th{background:#f9fafb;color:#374151;font-size:.85rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.terms-table .term-name{color:#1f2937;font-weight:600}.terms-table .term-description{color:#6b7280;font-size:.85rem;margin-top:2px}.terms-table .installment-detail{color:#4b5563;font-size:.85rem;line-height:1.4}.terms-table .non-refundable{color:#dc2626;font-size:.8rem}.terms-table .default-badge{color:#059669;font-weight:600}.terms-table .actions{display:flex;gap:.5rem}@media (max-width:768px){.payment-terms-section{margin:1rem;padding:1rem}.term-form .form-row{grid-template-columns:1fr}.installment-row{gap:8px;grid-template-columns:1fr 1fr}.installment-row label{font-size:.8rem}.terms-table{font-size:.85rem}.terms-table td,.terms-table th{padding:.5rem}}.gsc-header{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:2rem 3rem 1.5rem}.gsc-logo img{display:block;height:120px;width:auto}.gsc-nav{display:flex;gap:2.5rem}.gsc-nav-link{background:none;border:none;border-bottom:2px solid #0000;color:#27304b;cursor:pointer;font-family:Georgia,serif;font-size:1.2rem;font-weight:400;letter-spacing:.15em;padding:0 0 .5rem;transition:border-color .2s,color .2s}.gsc-nav-link.active,.gsc-nav-link:focus{border-bottom:2px solid #27304b;color:#27304b}.gsc-nav-link:hover{color:#1e293b}.gsc-phone{color:#27304b;font-family:Georgia,serif;font-size:1.5rem;font-weight:400}.gsc-phone a{color:#27304b;text-decoration:none;transition:color .2s}.gsc-phone a:hover{color:#1e293b}.gsc-book-btn{background:none;border:none;border-bottom:2px solid #0000;color:#27304b;cursor:pointer;font-family:Georgia,serif;font-size:1.2rem;font-weight:400;letter-spacing:.15em;margin-right:2.5rem;padding:0 0 .5rem;transition:border-color .2s,color .2s}.gsc-book-btn.active,.gsc-book-btn:focus{border-bottom:2px solid #27304b;color:#27304b}.gsc-book-btn:hover{color:#1e293b}@media (max-width:900px){.gsc-header{flex-direction:column;gap:1.5rem;padding:1.5rem 1rem 1rem}.gsc-nav{gap:1.5rem}.gsc-logo img{height:48px}.gsc-phone{font-size:1.1rem}}.gsc-welcome-section{background:#2d3a59;color:#fff;padding:2.5rem 0;text-align:center}.gsc-welcome-card{background:none;margin:0 auto;max-width:700px;padding:2rem 2rem 2.5rem}.gsc-welcome-card h2{font-family:Segoe UI,system-ui,sans-serif;font-size:1.3rem;font-weight:600;letter-spacing:.12em;margin-bottom:1.2rem}.gsc-welcome-card p{color:#e2e8f0;font-size:1.05rem;margin-bottom:2rem}.gsc-welcome-btn{background:#fff;border:none;border-radius:0;box-shadow:none;color:#2d3a59;cursor:pointer;display:inline-block;font-family:Segoe UI,system-ui,sans-serif;font-size:1rem;font-weight:600;letter-spacing:.12em;padding:.8rem 2.2rem;text-decoration:none;transition:background .2s,color .2s}.gsc-welcome-btn:hover{background:#e5e7eb;color:#1e293b}.gsc-offer-section{background:#f3f4f6;padding:2.5rem 0}.gsc-offer-title{font-family:Segoe UI,system-ui,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.12em;margin:0 auto 2rem;max-width:1100px;padding:0 2rem}.gsc-offer-list{margin:0 auto;max-width:1100px;padding:0 2rem}.gsc-offer-row{align-items:center;display:flex;gap:2.5rem;margin-bottom:2.5rem}.gsc-offer-row.reverse{flex-direction:row-reverse}.gsc-offer-img{background:#fff;border-radius:0;box-shadow:0 2px 8px #00000014;height:180px;object-fit:cover;width:260px}.gsc-offer-text{flex:1 1}.gsc-offer-text h3{color:#2d3a59;font-size:1.15rem;margin-bottom:.5rem}.gsc-offer-text p{color:#27304b;font-size:1rem;margin-bottom:.5rem}@media (max-width:900px){.gsc-offer-row,.gsc-offer-row.reverse{align-items:stretch;flex-direction:column!important;gap:1.5rem}.gsc-offer-img{height:180px;margin-bottom:1rem;width:100%}}.gsc-gallery-section{background:#2d3a59;color:#fff;padding:2.5rem 0}.gsc-gallery-title{font-family:Segoe UI,system-ui,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.12em;margin:0 auto 2rem;max-width:1100px;padding:0 2rem}.gsc-gallery-main{display:flex;gap:1.5rem;margin:0 auto 1.5rem;max-width:1100px;padding:0 2rem}.gsc-gallery-img{background:#fff;border-radius:0;box-shadow:0 2px 8px #00000014;height:180px;max-width:260px;object-fit:cover;width:100%}.gsc-gallery-thumbs{align-items:center;display:flex;gap:.5rem;justify-content:center;margin:1.5rem auto 0;max-width:1100px;padding:0 2rem}.gsc-gallery-thumb{background:#fff;border-radius:0;box-shadow:0 2px 8px #00000014;cursor:pointer;height:40px;object-fit:cover;opacity:.8;transition:opacity .2s;width:60px}.gsc-gallery-thumb:hover{opacity:1}.gsc-explore-section{margin:2.5rem auto 0;max-width:1100px;padding:0 2rem 2.5rem}.gsc-explore-title{color:#27304b;font-family:Segoe UI,system-ui,sans-serif;font-size:1.35rem;font-weight:600;letter-spacing:.12em;margin-bottom:.5rem}.gsc-explore-desc{color:#3b4252;font-size:1rem;margin-bottom:1.5rem}.gsc-explore-video-wrapper{align-items:center;background:none;border-radius:0;box-sizing:border-box;display:flex;justify-content:center;margin:2rem auto 0;max-width:1112px;padding:0}.gsc-explore-video-wrapper iframe{background:#0000;border-radius:0;display:block;height:620px;width:1112px}.gsc-about-section{background:#2d3a59;color:#fff;margin-top:2.5rem;padding:2.5rem 0}.gsc-about-title{font-family:Segoe UI,system-ui,sans-serif;font-size:1.1rem;font-weight:600;letter-spacing:.12em;margin:0 auto 2rem;max-width:1100px;padding:0 2rem}.gsc-about-content{align-items:flex-start;display:flex;gap:2.5rem;margin:0 auto;max-width:1100px;padding:0 2rem}.gsc-about-img{background:#fff;border-radius:0;box-shadow:0 2px 8px #00000014;height:180px;object-fit:cover;width:260px}.gsc-about-text{flex:1 1}.gsc-about-text h3{color:#fff;font-size:1.15rem;margin-bottom:.5rem}.gsc-about-text p{color:#e2e8f0;font-size:1rem;margin-bottom:1rem}.gsc-about-list{color:#fff;font-size:1rem;margin:0;padding-left:1.2rem}.gsc-about-list li{margin-bottom:.3rem}@media (max-width:900px){.gsc-about-content{align-items:stretch;flex-direction:column;gap:1.5rem}.gsc-about-img{height:180px;margin-bottom:1rem;width:100%}}.gsc-landing-root{background:#fff;font-family:Georgia,Times New Roman,Times,serif;min-height:100vh}.gsc-hero-main{align-items:flex-start;display:flex;justify-content:center;margin-bottom:3rem;padding:2rem 0 0}.gsc-hero-card{background:#2d3a59;border-radius:0;box-shadow:none;color:#fff;margin:0 auto;max-width:1100px;padding:3rem 2rem 1.5rem;text-align:center;width:90vw}.gsc-hero-title{font-family:Georgia,serif;font-size:2.5rem;font-weight:400;line-height:1.25;margin-bottom:1.5rem}.gsc-hero-desc{color:#cbd2e1;margin-bottom:2.5rem}.gsc-hero-btn,.gsc-hero-desc{font-family:Segoe UI,system-ui,sans-serif;font-size:1.15rem}.gsc-hero-btn{background:#fff;border:none;border-radius:0;box-shadow:none;color:#2d3a59;cursor:pointer;font-weight:600;letter-spacing:.12em;padding:1rem 2.5rem;transition:background .2s,color .2s}.gsc-hero-btn:hover{background:#e5e7eb;color:#1e293b}.hero-section{align-items:center;display:flex;gap:3rem;justify-content:space-between;margin:0 auto;max-width:1400px;min-height:80vh;padding:2rem 5%}.hero-content{flex:1 1;max-width:600px}.hero-title{font-size:4rem;font-weight:800;line-height:1.1;margin-bottom:1.5rem}.hero-title .title-the{color:#94a3b8;display:block;font-size:2rem;font-weight:400;letter-spacing:.2em;text-transform:uppercase}.hero-title .title-turf{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#22c55e,#16a34a);-webkit-background-clip:text;background-clip:text;display:block;font-size:5rem}.hero-title .title-at{color:#e2e8f0;display:block;font-size:2.5rem}.hero-subtitle{color:#94a3b8;font-size:1.25rem;line-height:1.6;margin-bottom:2rem}.hero-buttons{display:flex;gap:1rem}.btn-primary{background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:transform .2s,box-shadow .2s}.btn-primary:hover{box-shadow:0 8px 25px #22c55e4d;transform:translateY(-2px)}.btn-secondary{background:#0000;border:2px solid #475569;border-radius:8px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 2rem;transition:border-color .2s,background .2s}.btn-secondary:hover{background:#22c55e1a;border-color:#22c55e}.btn-large{font-size:1.25rem;padding:1.25rem 3rem}.hero-image{align-items:center;display:flex;flex:1 1;justify-content:center}.turf-graphic{background:linear-gradient(135deg,#15803d,#166534);border-radius:12px;box-shadow:0 20px 60px #0006;height:280px;overflow:hidden;position:relative;width:400px}.field-lines{border:3px solid #fff6;border-radius:4px;inset:20px;position:absolute}.field-lines:before{background:#fff6;bottom:0;content:"";left:50%;position:absolute;top:0;transform:translateX(-50%);width:3px}.field-lines:after{border:3px solid #fff6;border-radius:50%;content:"";height:80px;left:50%;position:absolute;top:50%;transform:translate(-50%,-50%);width:80px}.features-section{background:#1e293b;padding:5rem 5%}.features-section h2{color:#f1f5f9;font-size:2.5rem;margin-bottom:3rem;text-align:center}.features-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin:0 auto;max-width:1200px}.feature-card{background:linear-gradient(135deg,#334155,#1e293b);border:1px solid #475569;border-radius:12px;padding:2rem;text-align:center;transition:transform .2s,box-shadow .2s}.feature-card:hover{box-shadow:0 10px 40px #0000004d;transform:translateY(-5px)}.feature-icon{font-size:3rem;margin-bottom:1rem}.feature-card h3{color:#f1f5f9;font-size:1.25rem;margin-bottom:.75rem}.feature-card p{color:#94a3b8;line-height:1.6}.about-section{background:linear-gradient(135deg,#0f172a,#1e293b);padding:5rem 5%}.about-content{margin:0 auto;max-width:800px;text-align:center}.about-content h2{color:#f1f5f9;font-size:2.5rem;margin-bottom:2rem}.about-content p{color:#94a3b8;font-size:1.1rem;line-height:1.8;margin-bottom:1.5rem}.offerings-section{background:#1e293b;padding:5rem 5%}.offerings-section h2{color:#f1f5f9;font-size:2.5rem;margin-bottom:3rem;text-align:center}.offerings-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin:0 auto;max-width:1000px}.offering-item{background:#33415580;border:1px solid #475569;border-radius:10px;padding:1.5rem;text-align:center;transition:border-color .2s}.offering-item:hover{border-color:#22c55e}.offering-item h3{color:#f1f5f9;font-size:1.1rem;margin-bottom:.5rem}.offering-item p{color:#94a3b8;font-size:.9rem}.cta-section{background:linear-gradient(135deg,#15803d,#166534);padding:5rem 5%;text-align:center}.cta-section h2{font-size:2.5rem;margin-bottom:1rem}.cta-section p{font-size:1.1rem;margin-bottom:2rem;opacity:.9}.cta-section .btn-primary{background:#fff;color:#15803d}.cta-section .btn-primary:hover{box-shadow:0 8px 25px #0000004d}.landing-footer{background:#0f172a;padding:3rem 5% 1rem}.footer-content{align-items:flex-start;border-bottom:1px solid #334155;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding-bottom:2rem}.footer-brand{flex:1 1}.footer-title{color:#22c55e;font-size:1.5rem;font-weight:700}.footer-brand p{color:#94a3b8;margin-top:.5rem}.footer-links{display:flex;gap:4rem}.footer-column h4{color:#f1f5f9;font-size:1rem;margin-bottom:1rem}.footer-column p{color:#94a3b8;font-size:.9rem;margin-bottom:.5rem}.footer-column button{background:none;border:none;color:#94a3b8;cursor:pointer;display:block;font-size:.9rem;padding:.25rem 0;text-align:left;transition:color .2s}.footer-column button:hover{color:#22c55e}.footer-bottom{padding-top:1.5rem;text-align:center}.footer-bottom p{color:#64748b;font-size:.85rem}@media (max-width:900px){.hero-section{flex-direction:column;padding-top:4rem;text-align:center}.hero-title{font-size:3rem}.hero-title .title-turf{font-size:4rem}.hero-title .title-at{font-size:2rem}.hero-buttons{justify-content:center}.hero-image{display:none}.footer-content{flex-direction:column;gap:2rem;text-align:center}.footer-links{gap:3rem;justify-content:center}.footer-column button{text-align:center}}@media (max-width:600px){.hero-title{font-size:2.5rem}.hero-title .title-turf{font-size:3rem}.hero-buttons{flex-direction:column}.about-content h2,.cta-section h2,.features-section h2,.offerings-section h2{font-size:2rem}.footer-links{flex-direction:column;gap:2rem}}.waiver-page{background:#f3f4f6;font-family:Segoe UI,system-ui,sans-serif;min-height:100vh;padding:2rem 1rem}.waiver-container{background:#fff;border-radius:8px;box-shadow:0 2px 12px #0000001a;margin:0 auto;max-width:900px;padding:2.5rem}.waiver-title{color:#2d3a59;font-size:2rem;font-weight:600;margin-bottom:1.5rem;text-align:center}.waiver-text-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:6px;margin-bottom:2rem;max-height:400px;overflow-y:auto;padding:1.5rem}.waiver-text{word-wrap:break-word;color:#374151;font-family:Segoe UI,system-ui,sans-serif;font-size:.95rem;line-height:1.6;margin:0;white-space:pre-wrap}.waiver-form{border-top:2px solid #2d3a59;padding-top:2rem}.waiver-form h2{color:#2d3a59;font-size:1.5rem;text-align:center}.waiver-form h2,.waiver-section{margin-bottom:1.5rem}.waiver-section h3{border-bottom:1px solid #e5e7eb;color:#2d3a59;font-size:1.1rem;margin-bottom:.75rem;padding-bottom:.5rem}.waiver-row{display:flex;flex-wrap:wrap;gap:1rem}.waiver-field{flex:1 1;margin-bottom:1rem;min-width:200px}.waiver-field.small{flex:0.5 1;min-width:100px}.waiver-field.full-width{flex:100% 1;min-width:100%}.waiver-field label{color:#4b5563;display:block;font-size:.9rem;font-weight:500;margin-bottom:.4rem}.waiver-field input{border:1px solid #d1d5db;border-radius:4px;box-sizing:border-box;font-size:1rem;padding:.7rem .9rem;transition:border-color .2s,box-shadow .2s;width:100%}.waiver-field input:focus{border-color:#2d3a59;box-shadow:0 0 0 3px #2d3a591a;outline:none}.consent-section{background:#f0f9ff;border:1px solid #bae6fd;border-radius:6px;padding:1.25rem}.waiver-checkbox-label{align-items:flex-start;color:#374151;cursor:pointer;display:flex;font-size:.95rem;gap:.75rem;line-height:1.5}.waiver-checkbox-label input[type=checkbox]{accent-color:#2d3a59;cursor:pointer;height:20px;margin-top:2px;width:20px}.signature-section{background:#fefce8;border:1px solid #fde047;border-radius:6px;padding:1.25rem}.signature-note{color:#713f12;font-size:.9rem;font-style:italic;margin-bottom:1rem}.signature-input{background:#fff;border:2px dashed #d1d5db!important;font-family:Brush Script MT,Segoe Script,cursive;font-size:1.5rem!important;padding:1rem!important}.signature-input:focus{border-color:#2d3a59!important;border-style:solid!important}.waiver-error{background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:#dc2626;font-size:.95rem;margin-bottom:1.5rem;padding:1rem}.waiver-actions{border-top:1px solid #e5e7eb;display:flex;gap:1rem;justify-content:center;margin-top:2rem;padding-top:1.5rem}.waiver-btn{border:none;border-radius:4px;cursor:pointer;font-size:1rem;font-weight:600;padding:.9rem 2rem;transition:background .2s,transform .2s}.waiver-btn.primary{background:#2d3a59;color:#fff}.waiver-btn.primary:hover:not(:disabled){background:#1e293b;transform:translateY(-1px)}.waiver-btn.primary:disabled{background:#9ca3af;cursor:not-allowed}.waiver-btn.secondary{background:#e5e7eb;color:#374151}.waiver-btn.secondary:hover{background:#d1d5db}.waiver-success{padding:3rem 2rem;text-align:center}.waiver-success h2{color:#16a34a;font-size:1.75rem;margin-bottom:1rem}.waiver-success p{color:#4b5563;font-size:1.1rem;margin-bottom:2rem}@media (max-width:600px){.waiver-container{padding:1.5rem}.waiver-title{font-size:1.5rem}.waiver-row{flex-direction:column;gap:0}.waiver-field,.waiver-field.small{min-width:100%}.waiver-actions{flex-direction:column}.waiver-btn{width:100%}}.facility-rental-root{background:#fff;display:flex;flex-direction:column;min-height:100vh}.facility-rental-content{flex:1 1;margin:0 auto;max-width:1100px;padding:2rem 1rem 3rem}.facility-rental-title{border-bottom:1px solid #e5e7eb;color:#6b7280;font-size:.95rem;font-weight:400;letter-spacing:.2em;margin-bottom:2rem;padding-bottom:.5rem;text-transform:uppercase}.book-spot-section{display:flex;justify-content:center;margin-bottom:2.5rem}.book-spot-card{background:#f9fafb;border:1px solid #e5e7eb;border-radius:12px;max-width:500px;padding:2rem 3rem;text-align:center;width:100%}.book-spot-card h2{color:#27304b;font-family:Georgia,serif;font-size:1.5rem;margin-bottom:.75rem}.book-spot-message{color:#4b5563;font-size:1rem;line-height:1.6;margin-bottom:1.5rem}.book-spot-actions{display:flex;gap:1rem;justify-content:center}.book-action-btn{border-radius:6px;cursor:pointer;font-family:Georgia,serif;font-size:1rem;font-weight:600;padding:.75rem 2rem;transition:background .2s,color .2s,border-color .2s}.book-action-btn.register-btn{background:#27304b;border:2px solid #27304b;color:#fff}.book-action-btn.register-btn:hover{background:#1e293b;border-color:#1e293b}.book-action-btn.login-btn{background:#fff;border:2px solid #27304b;color:#27304b}.book-action-btn.login-btn:hover{background:#f1f5f9}.calendar-section{-webkit-overflow-scrolling:touch;align-items:center;display:flex;flex-direction:column;margin-bottom:3rem;overflow-x:auto;width:100%}.calendar-section-title{color:#27304b;font-family:Georgia,serif;font-size:1.1rem;font-weight:400;letter-spacing:.18em;margin-bottom:1.5rem;text-align:center;text-transform:uppercase}.calendar-section>.public-calendar{max-width:900px;min-width:0;width:100%}.calendar-section iframe{border-radius:6px;box-shadow:0 2px 12px #00000014;max-width:100%}.calendar-footer{align-items:flex-end;color:#6b7280;display:flex;font-size:.85rem;justify-content:space-between;margin-top:.5rem;max-width:100%;width:900px}.calendar-info{text-align:left}.calendar-info a{color:#2563eb;text-decoration:none}.calendar-info a:hover{text-decoration:underline}.google-calendar-link{align-items:center;color:#4b5563;display:flex;text-decoration:none}.google-calendar-link:hover{color:#2563eb}.batting-cage-section{margin-bottom:3rem}.batting-cage-title{color:#27304b;font-family:Georgia,serif;font-size:1.1rem;font-weight:400;letter-spacing:.18em;margin-bottom:1.5rem;text-transform:uppercase}.batting-cage-content{align-items:flex-start;display:flex;gap:2.5rem}.batting-cage-img{border-radius:8px;max-width:100%;object-fit:cover;width:340px}.batting-cage-info{flex:1 1;text-align:center}.batting-cage-info h3{color:#27304b;font-family:Georgia,serif;font-size:1.3rem;margin-bottom:.75rem}.batting-cage-info p{color:#4b5563;font-size:.98rem;line-height:1.6;margin-bottom:.75rem}.batting-cage-info .available-label,.batting-cage-info .sport-label{color:#27304b;font-weight:500;margin-bottom:.25rem;margin-top:1rem}.batting-cage-info ul{color:#4b5563;list-style:disc inside;margin-bottom:.5rem;padding:0}.batting-cage-info li{margin-bottom:.25rem}.facility-rental-footer{align-items:center;background:#27304b;color:#fff;display:flex;flex-direction:column;margin-top:auto;padding:2rem 1rem 1rem}.footer-social a{display:inline-block;margin-bottom:1rem}.footer-social svg{fill:#fff;transition:fill .2s}.footer-social a:hover svg{fill:#60a5fa}.footer-bottom{color:#d1d5db;display:flex;font-size:.75rem;justify-content:space-between;margin-bottom:1rem;max-width:1000px;width:100%}.footer-powered{color:#9ca3af}.footer-nav{display:flex;gap:2rem}.footer-nav button{background:none;border:none;color:#93c5fd;cursor:pointer;font-family:Georgia,serif;font-size:.95rem;transition:color .2s}.footer-nav button:hover{color:#fff;text-decoration:underline}@media (max-width:900px){.batting-cage-content,.book-spot-section{align-items:center;flex-direction:column}.calendar-footer,.footer-bottom{align-items:center;flex-direction:column;gap:.5rem}.footer-bottom{text-align:center}}@media (max-width:600px){.facility-rental-content{padding:1rem .75rem 2rem}.book-spot-card{padding:1.5rem 1rem}.book-spot-card h2{font-size:1.25rem}.book-spot-actions{flex-direction:column;gap:.75rem}.book-action-btn{padding:.65rem 1.5rem;width:100%}.batting-cage-img{max-width:300px;width:100%}.footer-nav{flex-direction:column;gap:.75rem;text-align:center}.calendar-section-title{font-size:.95rem}}
/*# sourceMappingURL=main.3d140122.css.map*/