body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}.app,body{background-color:#0a1a0f}.app{min-height:100vh;padding-bottom:80px}.app.admin-app{padding-bottom:0}:root{--primary-green:#22c55e;--dark-bg:#0a1a0f;--card-bg:#1a2e1f;--border-color:#2a4a2f;--text-primary:#fff;--text-secondary:#a0a0a0}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#ffffff0d}::-webkit-scrollbar-thumb{background:#22c55e;background:var(--primary-green);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#16a34a}.admin-header-bar{background-color:#0a1a0f;border-bottom:1px solid #2a4a2f;padding:16px 24px;position:sticky;top:0;z-index:100}.admin-header-content{align-items:center;display:flex;gap:16px;justify-content:space-between;margin:0 auto;max-width:1400px}.admin-header-bar h1{color:#fff;font-size:24px;font-weight:700}.back-to-home-btn{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .3s ease}.back-to-home-btn:hover{background-color:#16a34a}.admin-header-actions{align-items:center;display:flex;gap:10px}.logout-btn{background-color:initial;border:1px solid #2a4a2f;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px;transition:all .3s ease}.logout-btn:hover{background-color:#ef44441f;border-color:#ef4444;color:#fecaca}.admin-footer-nav{background-color:#0a1a0f;border-top:1px solid #2a4a2f;display:flex;justify-content:center;padding:20px}.admin-nav-btn{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:700;padding:12px 24px;transition:all .3s ease}.admin-nav-btn:hover{background-color:#16a34a}@media (max-width:640px){.admin-header-content{align-items:flex-start;flex-direction:column}.admin-header-actions{width:100%}.back-to-home-btn,.logout-btn{flex:1 1}}.header{align-items:center;background-color:#0a1a0f;border-bottom:1px solid #ffffff0d;display:flex;justify-content:space-between;padding:16px 24px;position:sticky;top:0;z-index:100}.header-left{flex:1 1}.logo{color:#fff;font-size:24px;font-weight:700}.logo-green{color:#22c55e}.header-right{align-items:center;display:flex;gap:16px}.location-selector{position:relative}.location-btn{align-items:center;background:#0000;border:1px solid #2a4a2f;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px;padding:8px 12px;transition:all .3s ease}.location-btn:hover{border-color:#22c55e;color:#22c55e}.location-dropdown{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:6px;margin-top:8px;min-width:150px;position:absolute;right:0;top:100%;z-index:10}.location-option{border-bottom:1px solid #ffffff0d;color:#fff;cursor:pointer;padding:12px 16px;transition:all .2s ease}.location-option:last-child{border-bottom:none}.location-option:hover{background-color:#22c55e1a;color:#22c55e}.notification-btn{align-items:center;background:#0000;border:1px solid #2a4a2f;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;transition:all .3s ease;width:40px}.notification-btn:hover{border-color:#22c55e;color:#22c55e}.search-bar-container{background-color:#0a1a0f;padding:16px 24px}.search-bar{align-items:center;background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:12px;display:flex;gap:12px;padding:12px 16px;transition:all .3s ease}.search-bar:focus-within{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a}.search-icon{color:#a0a0a0;font-size:18px}.search-input{background:#0000;border:none;color:#fff;flex:1 1;font-size:14px;outline:none}.search-input::placeholder{color:#a0a0a0}.search-input:-webkit-autofill,.search-input:-webkit-autofill:focus,.search-input:-webkit-autofill:hover{-webkit-text-fill-color:#fff!important;-webkit-box-shadow:inset 0 0 0 1000px #1a2e1f!important}.sports-selector{background-color:#0a1a0f;padding:24px}.sports-selector h3{color:#fff;font-size:18px;font-weight:700;margin-bottom:16px}.sports-grid{display:flex;gap:16px;justify-content:flex-start}.sport-btn{align-items:center;background-color:#1a2e1f;border:2px solid #2a4a2f;border-radius:12px;color:#fff;cursor:pointer;display:flex;flex-direction:column;font-size:14px;font-weight:600;gap:8px;justify-content:center;min-width:100px;padding:16px 20px;transition:all .3s ease}.sport-btn:hover{background-color:#22c55e1a;border-color:#22c55e}.sport-btn.active{background-color:#22c55e;border-color:#22c55e;color:#fff}.sport-icon{align-items:center;display:flex;font-size:32px;justify-content:center}.featured-venues{background-color:#0a1a0f;padding:24px}.featured-venues h3{color:#fff;font-size:18px;font-weight:700;margin-bottom:16px}.no-venues-message{min-height:300px}.carousel,.carousel-container,.venue-card{position:relative}.venue-card{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:16px;overflow:hidden;transition:all .3s ease}.venue-card:hover{border-color:#22c55e;box-shadow:0 0 20px #22c55e1a}.badge{background-color:#22c55e;border-radius:20px;color:#fff;font-size:12px;font-weight:700;left:12px;padding:4px 12px;position:absolute;top:12px;z-index:10}.venue-image{background:linear-gradient(135deg,#1a2e1f,#0a1a0f);height:300px;overflow:hidden;position:relative;width:100%}.venue-image img{height:100%;object-fit:cover;width:100%}.like-btn{align-items:center;background-color:#0006;border:1px solid #fff3;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:20px;height:40px;justify-content:center;position:absolute;right:12px;top:12px;transition:all .3s ease;width:40px;z-index:10}.like-btn:hover{background-color:#22c55e33;border-color:#22c55e;color:#22c55e}.venue-details{padding:20px}.venue-details h4{color:#fff;font-size:18px;font-weight:700;margin:0 0 8px}.location{color:#a0a0a0;font-size:13px;line-height:1.4;margin:0 0 12px}.venue-description{color:#d9f4df;font-size:13px;line-height:1.45;margin:0 0 14px}.venue-meta{justify-content:space-between;margin-bottom:12px}.rating,.venue-meta{align-items:center;display:flex}.rating{font-size:14px;font-weight:600;gap:6px}.rating,.rating svg{color:#22c55e}.price{color:#fff;font-size:14px;font-weight:700}.price span{color:#a0a0a0;font-size:12px;font-weight:400}.sports-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.sport-tag{background-color:#22c55e26;border-radius:12px;color:#22c55e;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px}.venue-actions{display:flex;gap:12px}.book-btn{background-color:#22c55e;border:none;border-radius:8px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:12px;transition:all .3s ease}.book-btn:hover{background-color:#16a34a}.gallery-btn{align-items:center;background-color:initial;border:1px solid #2a4a2f;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:6px;justify-content:center;padding:12px 16px;transition:all .3s ease}.gallery-btn:hover{border-color:#22c55e;color:#22c55e}.carousel-controls{gap:16px;margin-top:16px}.carousel-controls,.nav-btn{align-items:center;display:flex;justify-content:center}.nav-btn{background-color:initial;border:1px solid #2a4a2f;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;height:40px;transition:all .3s ease;width:40px}.nav-btn:hover{border-color:#22c55e;color:#22c55e}.dots{display:flex;gap:8px}.dot{background-color:#2a4a2f;border-radius:50%;cursor:pointer;height:8px;transition:all .3s ease;width:8px}.dot.active{background-color:#22c55e;border-radius:4px;width:24px}.dot:hover{background-color:#22c55e99}.venues-list{background-color:#0a1a0f;padding:24px}.venues-list h2{color:#fff;font-size:20px;font-weight:700;margin-bottom:20px}.venues-container{display:flex;flex-direction:column;gap:16px}.no-venues-message{align-items:center;color:#a0a0a0;font-size:16px;justify-content:center;min-height:400px;padding:24px;text-align:center}.no-venues-message,.venue-item{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:12px;display:flex}.venue-item{gap:16px;padding:16px;transition:all .3s ease}.venue-item:hover{border-color:#22c55e;box-shadow:0 0 15px #22c55e1a}.venue-image-small{border-radius:8px;flex-shrink:0;height:100px;overflow:hidden;position:relative;width:100px}.venue-image-small img{height:100%;object-fit:cover;width:100%}.venue-badge{background-color:#22c55e;border-radius:4px;color:#fff;font-size:11px;font-weight:700;left:6px;padding:3px 8px;position:absolute;top:6px}.venue-info{flex:1 1}.venue-info h3{color:#fff;font-size:16px;font-weight:700;margin:0 0 6px}.venue-location{align-items:flex-start;display:flex;font-size:13px;gap:6px;line-height:1.3;margin-bottom:10px}.venue-location svg{flex-shrink:0;margin-top:2px}.venue-description-small{color:#d9f4df;font-size:12px;line-height:1.4;margin:0 0 10px}.venue-bottom{justify-content:space-between;margin-bottom:10px}.venue-bottom,.venue-rating{align-items:center;display:flex}.venue-rating{font-size:13px;gap:4px}.venue-rating svg{color:#22c55e}.venue-price{color:#fff;font-size:14px;font-weight:700}.venue-price span{color:#a0a0a0;font-size:11px;font-weight:400}.venue-sports{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:0}.venue-sport-tag{background-color:#22c55e26;border-radius:10px;color:#22c55e;display:inline-block;font-size:11px;font-weight:500;padding:3px 8px}.venue-actions-small{align-items:center;display:flex}.book-btn-small{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:700;padding:10px 20px;transition:all .3s ease;white-space:nowrap}.book-btn-small:hover{background-color:#16a34a}@media (max-width:640px){.venue-item{flex-direction:column}.venue-image-small{height:150px;width:100%}}.bottom-navigation{background-color:#0a1a0f;border-top:1px solid #2a4a2f;bottom:0;height:80px;justify-content:space-around;left:0;position:fixed;right:0;z-index:1000}.bottom-navigation,.nav-item{align-items:center;display:flex}.nav-item{background:#0000;border:none;color:#a0a0a0;cursor:pointer;flex:1 1;flex-direction:column;font-size:12px;font-weight:600;gap:6px;height:100%;justify-content:center;transition:all .3s ease}.nav-item svg{font-size:24px}.nav-item.active,.nav-item.active svg,.nav-item:hover{color:#22c55e}.admin-panel{background-color:#0a1a0f;min-height:100vh;padding:24px 24px 100px}.admin-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:32px}.admin-header h1{color:#fff;font-size:28px;font-weight:700}.admin-header p{color:#a0a0a0;font-size:14px;margin-top:6px}.admin-tabs{display:flex;gap:10px;margin-bottom:28px}.admin-tabs button{align-items:center;background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;color:#a0a0a0;cursor:pointer;display:inline-flex;font-size:14px;font-weight:800;gap:8px;padding:11px 16px}.admin-tabs button.active{background-color:#22c55e;border-color:#22c55e;color:#fff}.admin-tabs span{background-color:#0a1a0f42;border-radius:999px;display:grid;font-size:12px;height:22px;min-width:22px;place-items:center}.add-btn{align-items:center;background-color:#22c55e;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:8px;padding:12px 24px;transition:all .3s ease}.add-btn:hover{background-color:#16a34a;transform:translateY(-2px)}.form-container{align-items:center;background-color:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:20px;position:fixed;right:0;top:0;z-index:1001}.form-content{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:16px;max-height:90vh;max-width:600px;overflow-y:auto;padding:32px;position:relative;width:100%}.close-form{background:#0000;border:none;color:#a0a0a0;cursor:pointer;font-size:24px;position:absolute;right:16px;top:16px;transition:all .3s ease}.close-form:hover{color:#22c55e}.form-content h2{color:#fff;font-size:22px;font-weight:700;margin-bottom:24px}.form-content form{gap:20px}.form-content form,.form-group{display:flex;flex-direction:column}.form-group{gap:8px}.form-group label{font-weight:600}.form-group input,.form-group select,.form-group textarea{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;color:#fff;font-family:inherit;font-size:14px;padding:12px;transition:all .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a;outline:none}.form-group textarea{min-height:80px;resize:vertical}.file-upload{align-items:center;background-color:#22c55e1f;border:1px dashed #22c55e;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:8px;justify-content:center;padding:12px 16px;width:fit-content}.file-upload input{display:none}.image-preview{aspect-ratio:4/3;background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:8px;overflow:hidden;width:180px}.gallery-preview-item img,.image-preview img,.venue-thumb{height:100%;object-fit:cover;width:100%}.gallery-preview{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(92px,1fr))}.gallery-preview-item{aspect-ratio:1;background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:8px;overflow:hidden;position:relative}.gallery-preview-item button{align-items:center;background-color:#0a1a0fd1;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;height:26px;justify-content:center;position:absolute;right:6px;top:6px;width:26px}.form-row{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.sports-checkbox-group{display:flex;flex-wrap:wrap;gap:16px}.checkbox-label{align-items:center;color:#fff;cursor:pointer;display:flex;font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{accent-color:#22c55e;cursor:pointer;height:18px;width:18px}.feature-toggle{align-items:center;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:700;gap:10px}.feature-toggle input{accent-color:#22c55e;height:18px;width:18px}.form-actions{display:flex;gap:12px;margin-top:12px}.submit-btn{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:700;padding:12px;transition:all .3s ease}.submit-btn:hover{background-color:#16a34a}.cancel-btn{background-color:initial;border:1px solid #2a4a2f;border-radius:6px;color:#a0a0a0;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px;transition:all .3s ease}.cancel-btn:hover{border-color:#22c55e;color:#22c55e}.venues-table{margin-top:40px}.venues-table h2{color:#fff;font-size:22px;font-weight:700;margin-bottom:16px}.table-wrapper{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:12px;overflow-x:auto}table{border-collapse:collapse;width:100%}thead{background-color:#22c55e1a;border-bottom:1px solid #2a4a2f}th{color:#22c55e;font-size:13px;font-weight:700;letter-spacing:0;text-align:left;text-transform:uppercase}td,th{padding:16px;vertical-align:middle}td{border-bottom:1px solid #2a4a2f80;color:#fff;font-size:14px}tbody tr:hover{background-color:#22c55e0d}tbody tr:last-child td{border-bottom:none}.venue-name{color:#22c55e;font-weight:600}.venue-thumb{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;display:block;height:48px;width:64px}.venue-location{color:#a0a0a0;font-size:12px;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.venue-price,.venue-rating{color:#22c55e;font-weight:600}.venue-sports{font-size:13px}.badge-tag{background-color:#22c55e;border-radius:4px;color:#fff;display:inline-block;font-size:11px;font-weight:700;padding:4px 8px}.badge-none{color:#a0a0a0}.actions{gap:8px}.delete-btn,.edit-btn{align-items:center;background:#0000;border:1px solid #2a4a2f;border-radius:6px;color:#a0a0a0;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .3s ease;width:36px}.edit-btn:hover{background-color:#22c55e1a;border-color:#22c55e;color:#22c55e}.delete-btn:hover{background-color:#ef44441a;border-color:#ef4444;color:#ef4444}.empty-state{color:#a0a0a0;padding:48px 24px;text-align:center}.empty-state p{font-size:16px}.bookings-admin{margin-top:28px}.booking-stats-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px}.booking-stat{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:18px}.booking-request-grid span,.booking-stat span{color:#a0a0a0;display:block;font-size:12px;margin-bottom:6px}.booking-stat strong{color:#22c55e;font-size:26px}.bookings-toolbar{align-items:center;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.bookings-toolbar h2{color:#fff;font-size:22px}.booking-request-actions select,.bookings-toolbar select{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;color:#fff;font:inherit;padding:10px 12px}.booking-request-list{grid-gap:14px;display:grid;gap:14px}.booking-request-card{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:18px}.booking-request-main{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.booking-id{color:#22c55e;font-size:12px;font-weight:800}.booking-request-main h3{color:#fff;font-size:18px;margin:4px 0}.booking-request-main p{color:#a0a0a0;font-size:13px;line-height:1.4}.booking-status{border-radius:999px;font-weight:800;padding:6px 10px}.booking-status.new{background-color:#22c55e29;color:#22c55e}.booking-status.contacted{background-color:#3b82f629;color:#93c5fd}.booking-status.confirmed{background-color:#14b8a629;color:#5eead4}.booking-status.cancelled{background-color:#ef444429;color:#fecaca}.booking-request-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.booking-request-grid strong{color:#fff;font-size:14px}.booking-request-actions{display:flex;flex-wrap:wrap;gap:10px}.booking-request-actions a,.delete-booking-btn{align-items:center;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:800;gap:8px;padding:10px 14px;text-decoration:none}.booking-request-actions a{background-color:#22c55e;color:#fff}.delete-booking-btn{background-color:initial;border:1px solid #ef44448c;color:#fecaca}@media (max-width:768px){.admin-panel{padding:16px}.admin-header{align-items:stretch;flex-direction:column}.add-btn{justify-content:center}.form-container{padding:16px}.form-content{padding:20px}.form-row{grid-template-columns:1fr}.table-wrapper{font-size:12px}td,th{padding:12px 8px}.venue-location{max-width:100px}.actions{gap:4px}.booking-request-grid,.booking-stats-grid{grid-template-columns:1fr}.booking-request-main,.bookings-toolbar{align-items:stretch;flex-direction:column}.delete-btn,.edit-btn{font-size:14px;height:32px;width:32px}}.admin-login-page{background-color:#0a1a0f;display:grid;min-height:100vh;padding:24px;place-items:center}.admin-login-panel{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:32px;width:min(100%,420px)}.admin-login-icon{background-color:#22c55e24;border-radius:8px;color:#22c55e;display:grid;font-size:24px;height:48px;margin-bottom:18px;place-items:center;width:48px}.admin-login-panel h1{color:#fff;font-size:28px;margin-bottom:8px}.admin-login-panel p{color:#a0a0a0;font-size:14px;line-height:1.5;margin-bottom:24px}.admin-login-field,.admin-login-form{display:flex;flex-direction:column}.admin-login-form{gap:18px}.admin-login-field{gap:8px}.admin-login-field label{color:#fff;font-size:14px;font-weight:700}.admin-login-field input{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;color:#fff;font:inherit;padding:12px;width:100%}.admin-login-field input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a;outline:none}.admin-login-error{background-color:#ef44441f;border:1px solid #ef444480;border-radius:6px;color:#fecaca;font-size:13px;padding:10px 12px}.admin-login-btn{align-items:center;background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:8px;justify-content:center;padding:12px 16px;width:100%}.admin-login-btn:hover{background-color:#16a34a}.booking-page{background-color:#07180d;color:#fff;min-height:100vh;padding:0 24px 32px}.booking-topbar{align-items:center;background-color:#07180d;border-bottom:1px solid #183621;display:grid;grid-template-columns:48px 1fr 48px;min-height:64px;position:sticky;top:0;z-index:20}.booking-topbar h1{font-size:18px;text-align:center}.booking-back-btn{background-color:#22c55e24;border:1px solid #176a35;border-radius:50%;color:#22c55e;cursor:pointer;display:grid;font-size:20px;height:40px;place-items:center;width:40px}.booking-controls,.booking-section,.booking-summary,.booking-venue-card{margin-top:22px}.booking-section h2,.booking-summary h2{font-size:15px;margin-bottom:12px}.booking-photo-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.booking-photo{background-color:#102217;border-radius:8px;height:150px;overflow:hidden;position:relative}.booking-photo:first-child{height:180px}.booking-photo img{height:100%;object-fit:cover;width:100%}.booking-photo span{background-color:#07180dd1;border-radius:999px;bottom:8px;color:#fff;display:grid;font-size:12px;font-weight:800;height:28px;min-width:34px;padding:0 8px;place-items:center;position:absolute;right:8px}.booking-summary,.booking-venue-card{background-color:#0d1e14;border:1px solid #183621;border-radius:8px;padding:18px}.booking-venue-card{display:flex;gap:18px;justify-content:space-between}.booking-venue-card h2{font-size:20px;margin-bottom:8px}.booking-location,.booking-meta,.booking-meta span,.booking-sports{align-items:center;display:flex}.booking-location{color:#c7d7cc;font-size:13px;gap:6px;margin-bottom:10px}.booking-venue-card p{color:#d9f4df;font-size:13px;line-height:1.5;margin-bottom:12px}.booking-meta{gap:18px}.booking-meta span{color:#22c55e;font-size:14px;font-weight:700;gap:5px}.booking-meta strong{color:#fff;font-size:22px}.booking-meta small{color:#a0a0a0;font-size:12px;font-weight:500}.booking-sports{align-content:flex-start;flex-wrap:wrap;gap:8px;justify-content:flex-end;min-width:160px}.booking-sports span{background-color:#22c55e26;border:1px solid #22c55e73;border-radius:999px;color:#22c55e;font-size:12px;font-weight:800;padding:6px 10px}.booking-controls{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr))}.booking-field{display:flex;flex-direction:column;gap:8px}.booking-field label{font-size:14px;font-weight:800}.booking-field select{background-color:#0d1e14;border:1px solid #176a35;border-radius:8px;color:#fff;cursor:pointer;font:inherit;font-weight:700;padding:13px 14px;width:100%}.booking-field select:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f;outline:none}.booking-summary{display:flex;flex-direction:column;gap:14px}.booking-summary div{color:#c7d7cc;display:flex;font-size:14px;gap:16px;justify-content:space-between}.booking-summary strong{color:#fff;text-align:right}.booking-total{border-top:1px solid #183621;padding-top:14px}.booking-total strong{color:#22c55e;font-size:18px}.booking-submit{align-items:center;background-color:#22c55e;border:none;border-radius:999px;box-shadow:0 12px 28px #22c55e3d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:800;justify-content:center;margin-top:18px;min-height:56px;text-decoration:none;width:100%}.booking-submit:hover{background-color:#16a34a}.booking-empty{color:#a0a0a0;display:grid;min-height:280px;place-items:center}@media (max-width:760px){.booking-page{padding:0 14px 28px}.booking-controls,.booking-photo-grid{grid-template-columns:1fr}.booking-photo,.booking-photo:first-child{height:190px}.booking-venue-card{flex-direction:column}.booking-sports{justify-content:flex-start}}.details-page{background-color:#07180d;color:#fff;min-height:100vh;padding:0 24px 32px}.details-topbar{align-items:center;background-color:#07180d;border-bottom:1px solid #183621;display:grid;grid-template-columns:48px 1fr 48px;min-height:64px;position:sticky;top:0;z-index:20}.details-topbar h1{font-size:18px;text-align:center}.details-back-btn{background-color:#22c55e24;border:1px solid #176a35;border-radius:50%;color:#22c55e;cursor:pointer;display:grid;font-size:20px;height:40px;place-items:center;width:40px}.customer-details-form,.details-summary-card{margin:24px auto 0;max-width:980px}.details-summary-card{background-color:#0d1e14;border:1px solid #183621;border-radius:12px;padding:18px}.details-summary-card span{color:#c7d7cc;display:block;font-size:14px;margin-bottom:8px}.details-summary-card h2{color:#fff;font-size:18px;margin-bottom:4px}.details-summary-card strong{color:#22c55e;font-size:14px}.customer-details-form{display:flex;flex-direction:column;gap:16px}.customer-details-form h2{font-size:15px}.customer-field{display:flex;flex-direction:column;gap:8px}.customer-field label{color:#c7d7cc;font-size:14px;font-weight:800}.customer-field input{background-color:#0d1e14;border:1px solid #176a35;border-radius:12px;color:#fff;font:inherit;font-size:16px;padding:15px;width:100%}.customer-field input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1f;outline:none}.customer-details-form p{color:#c7d7cc;font-size:14px;line-height:1.5}.customer-error{background-color:#ef44441f;border:1px solid #ef444480;border-radius:8px;color:#fecaca;font-size:13px;padding:10px 12px}.details-submit{align-items:center;background-color:#22c55e;border:none;border-radius:999px;box-shadow:0 12px 28px #22c55e3d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:800;justify-content:center;min-height:56px;width:100%}.details-submit:hover{background-color:#16a34a}.details-empty{color:#a0a0a0;display:grid;min-height:280px;place-items:center}@media (max-width:640px){.details-page{padding:0 14px 28px}}.details-auth-loading{color:#c7d7cc;font-size:14px;padding:40px 24px;text-align:center}.details-auth-prompt{align-items:center;display:flex;flex-direction:column;gap:14px;padding:12px 0;text-align:center}.details-auth-icon{background-color:#22c55e1f;border:1px solid #176a35;border-radius:50%;color:#22c55e;display:grid;height:64px;place-items:center;width:64px}.details-auth-prompt h2{color:#fff;font-size:18px}.details-auth-prompt p{color:#c7d7cc;font-size:14px;line-height:1.6;max-width:320px}.details-auth-prompt .details-submit{max-width:340px;width:100%}.details-signup-link{background:none;border:none;color:#22c55e;cursor:pointer;font-size:14px;padding:4px;text-decoration:underline;text-underline-offset:3px}.details-signup-link:hover{color:#16a34a}.details-user-card{align-items:center;background-color:#0d1e14;border:1px solid #176a35;border-radius:12px;display:flex;gap:14px;padding:16px}.details-user-avatar{background-color:#22c55e24;border:1px solid #176a35;border-radius:50%;color:#22c55e;display:grid;flex-shrink:0;height:44px;place-items:center;width:44px}.details-user-info{display:flex;flex-direction:column;gap:3px}.details-user-info strong{color:#fff;font-size:16px}.details-user-info span{color:#c7d7cc;font-size:13px}.bookings-container{background-color:#0a1a0f;color:#fff;min-height:100vh;padding:20px 20px 100px}.bookings-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:30px}.bookings-header h2{font-size:28px;margin:0}.bookings-back-btn{background:none;border:1px solid #2a4a2f;border-radius:6px;color:#22c55e;cursor:pointer;font-size:14px;font-weight:600;padding:8px 16px}.bookings-back-btn:hover{background-color:#22c55e1a}.bookings-signin-prompt{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:60vh;text-align:center}.bookings-signin-prompt h2{font-size:24px;margin-bottom:16px}.bookings-signin-prompt p{color:#a0a0a0;font-size:16px;margin-bottom:20px}.bookings-signin-btn{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;margin-top:20px;padding:12px 32px}.bookings-signin-btn:hover{background-color:#16a34a}.bookings-empty,.bookings-loading{align-items:center;color:#a0a0a0;display:flex;flex-direction:column;justify-content:center;min-height:40vh}.bookings-empty-hint{font-size:14px;margin-top:10px}.bookings-error{background-color:#ef44441f;border:1px solid #ef444480;border-radius:6px;color:#fecaca;font-size:14px;margin-bottom:20px;padding:12px;text-align:center}.bookings-list{display:flex;flex-direction:column;gap:16px}.booking-card{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:20px}.booking-header{align-items:start;display:flex;justify-content:space-between;margin-bottom:16px}.booking-header h3{font-size:18px;margin:0}.booking-status{border-radius:4px;font-size:12px;font-weight:600;padding:6px 12px;text-transform:uppercase}.booking-status.confirmed,.booking-status.new{background-color:#22c55e33;color:#86efac}.booking-status.pending{background-color:#3b82f633;color:#93c5fd}.booking-status.cancelled{background-color:#ef444433;color:#fca5a5}.booking-details{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin-bottom:16px}.booking-detail-item{display:flex;flex-direction:column}.booking-detail-item label{color:#a0a0a0;font-size:12px;font-weight:600;margin-bottom:4px;text-transform:uppercase}.booking-detail-item span{color:#fff;font-size:14px}.booking-amount{color:#22c55e;font-size:16px!important;font-weight:700}.booking-footer{border-top:1px solid #2a4a2f;color:#a0a0a0;font-size:12px;padding-top:12px}@media (max-width:640px){.bookings-header{align-items:flex-start;flex-direction:column;gap:16px}.booking-details{grid-template-columns:1fr}}.auth-modal{align-items:center;background:#0a1a0fe6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.auth-container{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:32px;position:relative;width:min(100%,420px)}.auth-container h2{color:#fff;font-size:28px;margin-bottom:8px;text-align:center}.form-group{margin-bottom:18px}.form-group label{color:#fff;display:block;font-size:14px;font-weight:700;margin-bottom:8px}.form-group input{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;color:#fff;font:inherit;padding:12px;width:100%}.form-group input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a;outline:none}button[type=submit]{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;margin-bottom:1rem;padding:12px 16px;width:100%}button[type=submit]:hover{background-color:#16a34a}button[type=submit]:disabled{background:#2a4a2f;cursor:not-allowed}.link-button{background:none;border:none;color:#22c55e;cursor:pointer;text-decoration:underline}.profile-modal{align-items:center;background:#0a1a0fe6;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.profile-container{background-color:#1a2e1f;border:1px solid #2a4a2f;border-radius:8px;padding:32px;position:relative;width:min(100%,420px)}.profile-container h2{color:#fff;font-size:28px;margin-bottom:8px;text-align:center}.profile-details{margin-bottom:2rem}.detail-item{display:flex;justify-content:space-between;margin-bottom:1rem}.detail-item label{color:#fff;font-size:14px;font-weight:700}.detail-item span{color:#a0a0a0;font-size:14px}.profile-actions{display:flex;flex-direction:column;gap:1rem}.profile-actions button{border:none;border-radius:6px;cursor:pointer;font-size:15px;font-weight:700;padding:12px 16px}.profile-actions button:first-child{background-color:#22c55e;color:#fff}.profile-actions button:first-child:hover{background-color:#16a34a}.profile-actions button:last-child{background-color:#dc3545;color:#fff}.profile-actions button:last-child:hover{background-color:#c82333}.reset-form{margin-top:1rem}.reset-form .form-group{margin-bottom:18px}.reset-form .form-group label{color:#fff;display:block;font-size:14px;font-weight:700;margin-bottom:8px}.reset-form .form-group input{background-color:#0a1a0f;border:1px solid #2a4a2f;border-radius:6px;color:#fff;font:inherit;padding:12px;width:100%}.reset-form .form-group input:focus{border-color:#22c55e;box-shadow:0 0 0 3px #22c55e1a;outline:none}.reset-form button[type=submit]{background-color:#22c55e;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;margin-bottom:1rem;padding:12px 16px;width:100%}.reset-form button[type=submit]:hover{background-color:#16a34a}.reset-form button[type=submit]:disabled{background:#2a4a2f;cursor:not-allowed}.reset-form button[type=button]{background-color:#6c757d;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:15px;font-weight:700;padding:12px 16px;width:100%}.reset-form button[type=button]:hover{background-color:#5a6268}.success-message{background-color:#22c55e1f;border:1px solid #22c55e80;border-radius:6px;color:#d1fae5}.error-message,.success-message{font-size:13px;margin-bottom:1rem;padding:10px 12px;text-align:center}.error-message{background-color:#ef44441f;border:1px solid #ef444480;border-radius:6px;color:#fecaca}.close-button{background:none;border:none;color:#a0a0a0;cursor:pointer;font-size:1.5rem;position:absolute;right:10px;top:10px}
/*# sourceMappingURL=main.22cedaa8.css.map*/