body{font-family:Comic Sans MS,Trebuchet MS,Lucida Grande,Lucida Sans Unicode,Lucida Sans,Tahoma,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--green:#2e7d32;--green-hover:#1b5e20;--green-dark:#1b5e20;--green-light:#4caf50;--green-pale:#e8f5e9;--dark-gray:#263238;--gray:#546e7a;--light-gray:#cfd8dc;--white:#fff;--gradient-1:linear-gradient(135deg,#2e7d32,#4caf50);--gradient-2:linear-gradient(135deg,#1b5e20,#2e7d32);--gradient-soft:linear-gradient(135deg,#fafafa,#e8f5e9)}*{box-sizing:border-box;margin:0;padding:0}*,body{font-family:Segoe UI,Roboto,Noto Sans JP,Arial,sans-serif}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(135deg,#fafafa,#e8f5e9);background:var(--gradient-soft);color:#263238;color:var(--dark-gray);font-weight:400;line-height:1.6}.App{display:flex;flex-direction:column;min-height:100vh}.main-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#2e7d32;background:var(--green);border-bottom:1px solid #1b5e20;border-bottom:1px solid var(--green-dark);box-shadow:0 2px 10px #0000001a;position:sticky;top:0;z-index:100}.header-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:16px 24px}.logo-section{align-items:center;cursor:pointer;display:flex;gap:12px}.site-title{color:#fff;font-size:24px;font-weight:700}.hero{align-items:center;color:#fff;display:flex;justify-content:center;min-height:350px;overflow:hidden;position:relative;text-align:center}.background-slider{height:100%;top:0;z-index:-2}.slider-track{animation:slideAnimation 30s linear infinite;width:500%}.slide{background-color:#000;background-position:50%;background-repeat:no-repeat;background-size:cover;height:100%;width:20%}@media (min-width:1024px){.slide{background-size:contain}.hero{min-height:45vh}}@media (max-width:1023px) and (min-width:768px){.slide{background-size:cover}.hero{min-height:35vh}}@media (max-width:767px){.slide{background-size:cover}.hero{min-height:30vh}}.hero-overlay{background:#0006;z-index:-1}@keyframes slideAnimation{0%{transform:translateX(0)}to{transform:translateX(-80%)}}.hero-content{margin:0 auto;max-width:1200px;padding:4rem 2rem;z-index:1}.hero-content h2{animation:fadeInUp 1s ease-out;font-size:3.5rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000004d}.hero-content p{animation:fadeInUp 1s ease-out .2s both;font-size:1.3rem;margin-bottom:2rem;text-shadow:1px 1px 2px #0000004d}.hero-description{animation:fadeInUp 1s ease-out .4s both;opacity:.95}.hero-features{animation:fadeInUp 1s ease-out .6s both;display:flex;flex-wrap:wrap;gap:2rem;justify-content:center;margin:2rem 0}.feature{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border-radius:15px;display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.5rem;transition:transform .3s ease,background .3s ease}.feature:hover{background:#fff3;transform:translateY(-5px)}.feature-text{font-size:1.1rem}.feature-description{opacity:.9}.feature-icon{font-size:2rem}.hero-buttons{flex-wrap:wrap;gap:2rem;justify-content:center}.cta-button{background:#2e8b8b;border:none;border-radius:50px;color:#fff;cursor:pointer;font-size:1.1rem;min-width:150px;padding:1rem 2rem;transition:all .3s ease}.cta-button:hover{box-shadow:0 5px 15px #0000004d;transform:translateY(-3px)}.car-button{background:linear-gradient(135deg,#4ecdc4,#44a08d)}.car-button:hover{background:linear-gradient(135deg,#2e8b8b,#1c5a5a)}.motorcycle-button{background:linear-gradient(135deg,#5dade2,#3b82c7)}.motorcycle-button:hover{background:linear-gradient(135deg,#2e86ab,#1b4965)}.vehicles-section{min-height:60vh;padding:4rem 0}.vehicles-section h2{color:#333;font-size:2.5rem;margin-bottom:3rem;text-align:center}.no-vehicles-container{align-items:center;display:flex;justify-content:center;min-height:400px;padding:2rem}.no-vehicles-card{animation:fadeInUp .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;max-width:500px;padding:3rem;text-align:center}.no-vehicles-icon{animation:bounce 2s infinite;font-size:4rem;margin-bottom:1.5rem}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.no-vehicles-title{color:#333;font-size:1.8rem;margin-bottom:1rem}.no-vehicles-message{font-size:1.1rem;line-height:1.6;margin-bottom:.5rem}.no-vehicles-sub-message{color:#888;font-size:1rem;margin-bottom:2rem}.no-vehicles-contact{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:15px;margin-top:2rem;padding:1.5rem}.no-vehicles-contact p{color:#495057;font-size:1rem;margin:.5rem 0}.no-vehicles-contact p:first-child{color:#2e8b8b;font-weight:700}.filters{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;display:flex;gap:2rem;margin-bottom:2rem;padding:1rem}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{color:#fff;font-weight:600;letter-spacing:-.5px}.header-nav{gap:24px}.header-nav,.user-menu{align-items:center;display:flex}.user-menu{flex-wrap:nowrap;gap:16px;min-width:0}.mypage-link{background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;color:#fff;font-size:13px;font-weight:500;padding:8px 16px;text-decoration:none;transition:all .3s ease;white-space:nowrap}.selected-vehicle-info h3{margin-bottom:1rem}.vehicle-summary{align-items:center;gap:1rem}.vehicle-summary img{border-radius:10px;height:80px;object-fit:cover;width:100px}.vehicle-details h4{font-size:1.2rem;margin-bottom:.5rem}.daily-price{font-size:1.1rem;font-weight:700}.reservation-form{padding:2rem}.reservation-form h3{border-bottom:2px solid #ff9a9e;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem}.form-group label{color:#333}.required{color:#e74c3c}.form-group input,.form-group select,.form-group textarea{border:2px solid #ddd;font-size:1rem;padding:.8rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#4ecdc4}.form-group input.error,.form-group select.error,.form-group textarea.error{border-color:#e74c3c}.error-message{color:#e74c3c;display:block;font-size:.9rem;margin-top:.5rem}.price-summary{background:#f8f9fa;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.price-placeholder{background:#fff;border:2px dashed #ddd;border-radius:8px;color:#666;font-style:italic;margin:1rem 0;padding:2rem;text-align:center}.price-placeholder p{font-size:1rem;margin:0}.price-breakdown{display:flex;flex-direction:column;gap:.5rem}.price-item{display:flex;justify-content:space-between;padding:.5rem 0}.price-item.subtotal{border-bottom:1px solid #eee;color:#666;font-size:.95rem;padding-bottom:.5rem}.price-item.total{background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-radius:10px;border-top:2px solid #ff9a9e;box-shadow:0 2px 10px #0000001a;color:#333;font-size:1.3rem;font-weight:700;margin-top:1rem;padding:1.2rem}.total-amount{color:#2e8b8b!important;font-weight:700;text-shadow:1px 1px 2px #0000001a}.cancel-button,.submit-button{border:none;border-radius:30px;cursor:pointer;font-size:1.1rem;padding:1rem 2.5rem;transition:all .3s ease}.cancel-button{background:#6c757d}.cancel-button:hover{background:#5a6268}.submit-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);box-shadow:0 4px 15px #4ecdc433;color:#fff;font-weight:600;min-width:200px}.submit-button:hover{background:linear-gradient(135deg,#44a08d,#2e8b8b);box-shadow:0 6px 20px #4ecdc44d;transform:translateY(-3px)}.contact-section{padding:4rem 0}.contact-section h2{color:#333;font-size:2.5rem;margin-bottom:3rem;text-align:center}.contact-info{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));justify-items:center;margin:0 auto;max-width:1200px;padding:0 1rem}.contact-card{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem;text-align:center}.contact-card h3{color:#2e8b8b;margin-bottom:1rem}.contact-card p{color:#666;margin-bottom:.5rem}.contact-card a{color:#2e8b8b;text-decoration:none;transition:color .3s ease}.contact-card a:hover{color:#5a6fd8;text-decoration:underline}@media screen and (max-width:480px){.contact-info{align-items:center!important;display:flex!important;flex-direction:column!important;gap:1.5rem!important;padding:0 1rem!important;width:100%!important}.contact-card{box-sizing:border-box!important;margin:0 auto!important;max-width:320px!important;padding:1.5rem!important;width:100%!important}.contact-section{padding:2rem 0!important;width:100%!important}.contact-section h2{font-size:2rem!important;margin-bottom:2rem!important;padding:0 1rem!important;text-align:center!important}}@media screen and (max-width:430px) and (min-width:391px){.contact-card{max-width:350px!important}}@media screen and (max-width:390px) and (min-width:376px){.contact-card{max-width:330px!important}}@media screen and (max-width:375px){.contact-info{padding:0 .5rem!important}.contact-card{max-width:300px!important;padding:1rem!important}.contact-section h2{font-size:1.8rem!important}}@media screen and (max-width:768px) and (min-width:481px){.contact-info{grid-template-columns:1fr;max-width:600px;padding:0 2rem}.contact-card{max-width:400px}}.member-login-button,.member-profile-button{background:linear-gradient(135deg,#4ecdc4,#44a08d)!important;border:none!important;border-radius:25px!important;color:#fff!important;cursor:pointer!important;font-size:.9rem!important;padding:.5rem 1rem!important;transition:all .3s ease!important}.member-login-button:hover,.member-profile-button:hover{background:linear-gradient(135deg,#5a6fd8,#6a4190)!important;transform:translateY(-2px)!important}.member-login-container{align-items:center;background:linear-gradient(135deg,#4ecdc4,#44a08d);display:flex;justify-content:center;min-height:80vh;padding:2rem}.member-login-container .login-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-width:450px;padding:3rem;width:100%}.registration-prompt{background:#f8f9fa;border-radius:10px;margin:2rem 0;padding:1.5rem;text-align:center}.register-button{background:linear-gradient(135deg,#28a745,#218838);border:none;border-radius:30px;box-shadow:0 4px 15px #28a74533;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;margin-top:.5rem;min-width:200px;padding:1rem 2.5rem;transition:all .3s ease}.register-button:hover{background:linear-gradient(135deg,#218838,#1e7e34);box-shadow:0 6px 20px #28a7454d;transform:translateY(-3px)}.forgot-password-link{background:none;border:none;color:#2e8b8b;cursor:pointer;font-size:.9rem;text-decoration:underline}.demo-info{background:#e9ecef;border-radius:10px;margin-top:2rem;padding:1rem;text-align:center}.member-registration-container{align-items:center;background:linear-gradient(135deg,#4ecdc4,#44a08d);display:flex;justify-content:center;min-height:100vh;padding:2rem}.registration-card{background:#fff;border-radius:20px;box-shadow:0 20px 60px #0003;max-height:90vh;max-width:800px;overflow-y:auto;padding:2rem;width:100%}.registration-header{border-bottom:2px solid #e9ecef;margin-bottom:2rem;padding-bottom:1rem;text-align:center}.registration-header h2{color:#333;margin-bottom:1rem}.step-indicator{margin-top:1rem}.step-indicator span{color:#666;display:block;font-size:.9rem;margin-bottom:.5rem}.progress-bar{background:#e9ecef;border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(135deg,#4ecdc4,#44a08d);height:100%;transition:width .3s ease}.registration-step h3{border-bottom:1px solid #e9ecef;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem}.license-upload-section{margin:2rem 0}.upload-group{margin-bottom:2rem}.upload-area{border:2px dashed #e9ecef;border-radius:10px;padding:2rem;text-align:center;transition:border-color .3s ease}.upload-area:hover{border-color:#4ecdc4}.file-input{display:none}.upload-button{background:#4ecdc4;border-radius:25px;font-size:1rem;padding:1rem 2rem;transition:all .3s ease}.upload-button:hover{background:#5a6fd8;transform:translateY(-2px)}.image-preview{margin-top:1rem}.preview-image{border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:.5rem;max-height:150px;max-width:200px}.license-notice{background:#fff3cd;border:1px solid #ffeaa7;border-radius:10px;margin-top:1rem;padding:1rem}.license-notice p{color:#856404;font-weight:700;margin:0 0 .5rem}.license-notice ul{color:#856404;margin:0;padding-left:1.5rem}.registration-summary{background:#f8f9fa;border-radius:10px;margin-bottom:2rem;padding:1.5rem}.summary-section{border-bottom:1px solid #e9ecef;margin-bottom:1rem;padding-bottom:.5rem}.summary-section:last-child{border-bottom:none}.summary-section h5{color:#333;margin-bottom:.5rem}.preferences-section,.terms-section{background:#f8f9fa;border-radius:10px;margin:2rem 0;padding:1.5rem}.terms-section.required{border:2px solid #ff9a9e}.next-button,.previous-button{background:#4ecdc4;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:1rem;padding:.8rem 2rem;transition:all .3s ease}.previous-button{background:#6c757d}.previous-button:hover{background:#5a6268}.next-button:hover{background:#5a6fd8;transform:translateY(-2px)}.member-mypage{background:#f8f9fa;min-height:100vh}.mypage-header{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff;padding:2rem 0}.mypage-header,.mypage-header .container{align-items:center;display:flex;justify-content:space-between}.mypage-header .container{margin:0 auto;max-width:1200px;padding:0 20px;width:100%}.member-welcome h2{font-size:2rem;margin:0}.member-welcome p{margin:.5rem 0 0;opacity:.9}.mypage-nav{background:#fff;border-bottom:1px solid #e9ecef;padding:0}.mypage-tabs{display:flex;margin:0 auto;max-width:1200px;padding:0 20px}.mypage-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.mypage-tab:hover{background:#f8f9fa;color:#333}.mypage-tab.active{background:#f8f9fa;border-bottom-color:#ff9a9e;color:#2e8b8b}.mypage-content{padding:2rem 0}.profile-content{max-width:800px}.profile-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.edit-button,.save-button{background:#4ecdc4}.cancel-edit-button,.edit-button,.save-button{border:none;border-radius:25px;color:#fff;cursor:pointer;padding:.7rem 1.5rem;transition:all .3s ease}.cancel-edit-button{background:#6c757d;margin-left:.5rem}.profile-sections{grid-gap:2rem;display:grid;gap:2rem}.profile-section{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000001a;padding:2rem}.profile-section h4{border-bottom:1px solid #e9ecef;color:#333;margin-bottom:1rem;padding-bottom:.5rem}.reservations-content h3{color:#333;margin-bottom:2rem}.reservation-card{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000001a;margin-bottom:1rem;padding:1.5rem}.reservation-card .reservation-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:1rem;padding-bottom:.5rem}.reservation-card h4{color:#333;margin:0}.points-content{max-width:600px}.membership-card{background:linear-gradient(135deg,#4ecdc4,#44a08d);border-radius:20px;color:#fff;margin-bottom:2rem;padding:2rem}.membership-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.member-number{opacity:.9}.points-balance{text-align:center}.points-number{display:block;font-size:3rem;font-weight:700}.points-label{font-size:1.2rem;opacity:.9}.membership-benefits{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:2rem}.membership-benefits h4{color:#333;margin-bottom:1rem}.membership-benefits ul{margin:0;padding-left:1.5rem}.membership-benefits li{color:#666;margin-bottom:.5rem}.points-history{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000001a;padding:2rem}.transaction-item{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:1rem 0}.transaction-item:last-child{border-bottom:none}.transaction-date{color:#666;font-size:.9rem}.transaction-description{color:#333;flex:1 1;margin:0 1rem}.transaction-points.positive{color:#28a745;font-weight:700}.license-content{max-width:800px}.license-info{background:#fff;border-radius:15px;box-shadow:0 2px 10px #0000001a;padding:2rem}.license-section{border-bottom:1px solid #e9ecef;margin-bottom:2rem;padding-bottom:1rem}.license-section h4{color:#333;margin-bottom:1rem}.license-status{font-weight:700}.license-images{margin:2rem 0}.license-image-section{margin-bottom:2rem}.license-image-section h4{color:#333;margin-bottom:1rem}.license-image{border-radius:10px;box-shadow:0 2px 10px #0000001a;cursor:pointer;max-width:300px;transition:transform .3s ease}.license-image:hover{transform:scale(1.05)}.license-status-info{margin-top:2rem}.status-message{border-radius:10px;margin-bottom:1rem;padding:1rem}.status-message.warning{background:#fff3cd;border:1px solid #ffeaa7;color:#856404}.status-message.success{background:#d4edda;border:1px solid #c3e6cb;color:#155724}.status-message.error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.reupload-button{background:#dc3545;border:none;border-radius:25px;color:#fff;cursor:pointer;margin-top:1rem;padding:.7rem 1.5rem;transition:all .3s ease}.reupload-button:hover{background:#c82333;transform:translateY(-2px)}.member-management{max-width:1200px}.member-stats{color:#666;display:flex;font-size:.9rem;gap:2rem}.member-filters{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:1rem}.filter-row{display:flex;gap:2rem}.search-input{border:2px solid #e9ecef;border-radius:8px;font-size:1rem;padding:.7rem;width:300px}.search-input:focus{border-color:#4ecdc4;outline:none}.members-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.member-admin-card{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem}.member-admin-card.inactive{background:#f8f9fa;opacity:.7}.member-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.5rem}.member-info h4{color:#333;margin:0}.member-number{color:#666;font-size:.9rem}.member-status-actions{align-items:center;display:flex;gap:1rem}.status-badge{font-weight:700;padding:.3rem .8rem}.status-badge.active{background:#d4edda;color:#155724}.status-badge.inactive{background:#f8d7da;color:#721c24}.status-toggle{border:none;border-radius:20px;cursor:pointer;font-size:.8rem;padding:.5rem 1rem;transition:all .3s ease}.status-toggle.activate{background:#28a745;color:#fff}.status-toggle.deactivate{background:#dc3545;color:#fff}.member-details{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.detail-section h5{font-size:1rem}.detail-section a{color:#2e8b8b;text-decoration:none}.detail-section a:hover{text-decoration:underline}.member-actions{display:flex;flex-wrap:wrap;gap:1rem}.member-actions button{border:none;border-radius:25px;cursor:pointer;font-size:.9rem;padding:.7rem 1.5rem;transition:all .3s ease}.approve-button{background:#28a745;color:#fff}.reject-button{background:#dc3545;color:#fff}.member-extended-details{background:#f8f9fa;border-radius:10px;border-top:3px solid #ff9a9e;margin-top:1.5rem;padding:1.5rem}.license-images-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:1rem}.license-image-section h6{color:#333;font-size:.9rem;margin-bottom:.5rem}.license-images .license-image{height:120px;max-width:200px;object-fit:cover}.image-note{color:#666;font-size:.8rem;margin-top:.5rem;text-align:center}.member-dates{border-top:1px solid #e9ecef;color:#666;font-size:.9rem;margin-top:1rem;padding-top:1rem}.no-members{color:#666;padding:3rem;text-align:center}.admin-button{background:linear-gradient(135deg,#5dade2,#3b82c7)!important;border:none!important;border-radius:25px!important;color:#fff!important;cursor:pointer!important;font-size:.9rem!important;padding:.5rem 1rem!important;transition:all .3s ease!important}.admin-button:hover{background:linear-gradient(135deg,#2e86ab,#1b4965)!important;transform:translateY(-2px)!important}.admin-login-container{align-items:center;background:linear-gradient(135deg,#4ecdc4,#44a08d);display:flex;justify-content:center;min-height:80vh;padding:2rem}.admin-login-card{border-radius:20px;box-shadow:0 20px 60px #0003;padding:3rem}.login-header{margin-bottom:2rem}.login-header h2{margin-bottom:.5rem}.login-header p{font-size:.9rem}.login-form .form-group{margin-bottom:1.5rem}.login-form input{border:2px solid #e9ecef;border-radius:10px;font-size:1rem;padding:1rem;transition:border-color .3s ease;width:100%}.login-form input:focus{border-color:#4ecdc4;outline:none}.login-button{background:linear-gradient(135deg,#4ecdc4,#44a08d);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;margin-top:1rem;padding:1rem;transition:all .3s ease;width:100%}.login-button:hover{box-shadow:0 5px 15px #0003;transform:translateY(-2px)}.login-info{background:#f8f9fa;border-radius:10px;margin-top:2rem;padding:1rem;text-align:center}.login-info p{color:#666;margin:.3rem 0}.admin-dashboard{background:#f8f9fa;min-height:100vh}.admin-header{background:linear-gradient(135deg,#4ecdc4,#44a08d);box-shadow:0 2px 10px #0000001a;color:#fff;padding:1.5rem 0}.admin-header-content{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:1200px;padding:0 20px}.admin-header h1{font-size:1.8rem}.admin-header-actions{align-items:center;display:flex;gap:1rem}.admin-user{background:#fff3;font-size:.9rem}.logout-button{background:#dc3545;border:none;border-radius:20px;color:#fff;cursor:pointer;padding:.7rem 1.5rem;transition:all .3s ease}.logout-button:hover{background:#c82333;transform:translateY(-2px)}.admin-nav{background:#fff;border-bottom:1px solid #e9ecef;padding:0}.admin-tabs{display:flex;margin:0 auto;max-width:1200px;padding:0 20px}.admin-tab{align-items:center;background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;display:flex;gap:.5rem;padding:1rem 2rem;transition:all .3s ease}.admin-tab:hover{background:#f8f9fa;color:#333}.admin-tab.active{background:#f8f9fa;border-bottom-color:#ff9a9e;color:#2e8b8b}.tab-icon{font-size:1.2rem}.tab-name{font-weight:600}.admin-content{min-height:calc(100vh - 200px);padding:2rem 0}.management-header{align-items:center;border-bottom:2px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.management-header h2{color:#333;margin:0}.add-button{background:#28a745;border:none;border-radius:25px;color:#fff;cursor:pointer;font-size:.9rem;padding:.7rem 1.5rem;transition:all .3s ease}.add-button:hover:not(:disabled){background:#218838;transform:translateY(-2px)}.add-button:disabled{background:#6c757d;cursor:not-allowed}.vehicle-form-container{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;margin-bottom:2rem;padding:2rem}.vehicle-form h3{border-bottom:2px solid #ff9a9e;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem}.form-section{background:#f8f9fa;border-radius:10px;margin:2rem 0;padding:1.5rem}.form-section h4{color:#333}.checkbox-label{font-weight:600;gap:.5rem}.vehicle-admin-card{border-radius:15px;box-shadow:0 5px 20px #0000001a;transition:transform .3s ease}.vehicle-admin-card:hover{transform:translateY(-3px)}.vehicle-admin-card.unavailable{background:#f8f9fa;opacity:.7}.vehicle-admin-header{border-bottom:1px solid #e9ecef;padding-bottom:.5rem}.vehicle-admin-header h3{color:#333}.vehicle-actions{display:flex;gap:.5rem}.vehicle-actions button{border:none;border-radius:50%;cursor:pointer;font-size:1rem;height:35px;transition:all .3s ease;width:35px}.availability-toggle.available{background:#28a745}.availability-toggle.unavailable{background:#dc3545}.edit-button{background:#4ecdc4;color:#fff}.delete-button{background:#dc3545;color:#fff}.vehicle-actions button:hover:not(:disabled){transform:scale(1.1)}.vehicle-actions button:disabled{cursor:not-allowed;opacity:.5}.vehicle-admin-info p{color:#666;margin:.5rem 0}.status.available{color:#28a745;font-weight:700}.status.unavailable{color:#dc3545;font-weight:700}.reservation-stats{color:#666;display:flex;font-size:.9rem;gap:2rem}.reservation-filters{background:#fff;border-radius:10px;box-shadow:0 2px 10px #0000001a;margin-bottom:2rem;padding:1rem}.reservations-grid{grid-gap:1.5rem;display:grid;gap:1.5rem}.reservation-admin-card{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem}.reservation-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;margin-bottom:1.5rem;padding-bottom:.5rem}.reservation-id{color:#333;font-weight:700}.reservation-status{border-radius:20px;color:#fff;font-size:.9rem;font-weight:700;padding:.5rem 1rem}.reservation-details{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:1.5rem}.customer-info h4,.payment-info h4,.reservation-notes h4,.vehicle-info h4{color:#333;font-size:1rem;margin-bottom:.5rem}.customer-info p,.payment-info p,.vehicle-info p{color:#666;margin:.3rem 0}.customer-info a,.vehicle-info a{color:#2e8b8b;text-decoration:none}.customer-info a:hover,.vehicle-info a:hover{text-decoration:underline}.reservation-dates{border-top:1px solid #e9ecef;color:#666;font-size:.9rem;margin-top:1rem;padding-top:1rem}.reservation-actions{display:flex;flex-wrap:wrap;gap:1rem}.reservation-actions button{border:none;border-radius:25px;cursor:pointer;font-size:.9rem;padding:.7rem 1.5rem;transition:all .3s ease}.details-button{background:#6c757d;color:#fff}.complete-button{background:#28a745;color:#fff}.cancel-button{background:#dc3545;color:#fff}.restore-button{background:#4ecdc4;color:#fff}.reservation-actions button:hover{opacity:.9;transform:translateY(-2px)}.reservation-extended-details{background:#f8f9fa;border-radius:10px;border-top:3px solid #ff9a9e;margin-top:1.5rem;padding:1.5rem}.details-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:1rem}.detail-section h5{color:#333;font-size:.9rem;margin-bottom:.5rem}.detail-section p{color:#666;font-size:.9rem;margin:.3rem 0}.no-reservations{color:#666;padding:3rem;text-align:center}.hamster-bike-spinner{height:120px;margin:30px auto;overflow:visible;position:relative;width:200px}.hamster-bike-spinner:before{background:radial-gradient(ellipse at 70% 30%,#f4a261,#e76f51),radial-gradient(ellipse at 30% 70%,#ffb997,#f4a261);border-radius:50% 50% 45% 55%;box-shadow:inset -3px -2px 4px #0000001a,0 2px 4px #0003;height:25px;left:45px;top:25px;width:35px;z-index:10}.hamster-bike-spinner:after,.hamster-bike-spinner:before{animation:hamsterRide 3s ease-in-out infinite;content:"";position:absolute}.hamster-bike-spinner:after{background:#e76f51;border-radius:50% 50% 0 0;box-shadow:6px 0 0 #e76f51,2px -2px 0 1px #333;height:8px;left:50px;top:22px;width:8px;z-index:11}.hamster-bike-frame{height:40px;left:20px;position:absolute;top:40px;width:80px;z-index:5}.hamster-bike-frame:before{background:linear-gradient(135deg,#2c3e50,#34495e,#2c3e50);border-radius:4px;box-shadow:inset 0 2px 4px #fff3,0 2px 4px #0000004d;content:"";height:8px;left:10px;position:absolute;top:15px;width:60px}.hamster-bike-frame:after{background:linear-gradient(90deg,#34495e,#2c3e50);border-radius:2px;box-shadow:0 1px 2px #0000004d;content:"";height:3px;left:50px;position:absolute;top:8px;width:25px}.front-wheel{border:3px solid #0f0f0f;border-radius:50%;box-shadow:inset 0 0 10px #0009,0 2px 6px #0006;height:30px;left:60px;top:45px;width:30px}.front-wheel,.rear-wheel{animation:wheelSpin .6s linear infinite;background:radial-gradient(circle at center,#1a1a1a 40%,#333 50%,#1a1a1a 60%),conic-gradient(from 0deg,#444 0deg,#222 45deg,#444 90deg,#222 135deg,#444 180deg,#222 225deg,#444 270deg,#222 315deg);position:absolute;z-index:3}.rear-wheel{border:4px solid #0f0f0f;border-radius:50%;box-shadow:inset 0 0 12px #0009,0 3px 8px #0006;height:35px;left:15px;top:42px;width:35px}@keyframes hamsterRide{0%{transform:translateX(-100px) scaleX(1)}25%{transform:translateX(50px) scaleX(1) rotate(2deg)}50%{transform:translateX(200px) scaleX(-1) rotate(-2deg)}75%{transform:translateX(50px) scaleX(-1) rotate(2deg)}to{transform:translateX(-100px) scaleX(1)}}.hamster-bike-spinner .exhaust{animation:exhaust 1s ease-out infinite;background:#64646499;border-radius:50%;height:8px;left:10px;position:absolute;top:55px;width:4px;z-index:2}@keyframes exhaust{0%{opacity:.8;transform:scale(1) translateX(0)}to{opacity:0;transform:scale(2) translateX(-20px)}}.hamster-bike-spinner.small{height:90px;margin:20px auto;width:150px}.hamster-bike-spinner.small:before{height:20px;left:36px;top:20px;width:28px}.hamster-bike-spinner.small:after{height:6px;left:40px;top:18px;width:6px}.hamster-bike-spinner.large{height:150px;margin:40px auto;width:250px}.hamster-bike-spinner.large:before{height:30px;left:54px;top:30px;width:42px}.hamster-bike-spinner.large:after{height:10px;left:60px;top:26px;width:10px}.analytics-section h2{color:#333;margin-bottom:2rem}.stats-grid{grid-gap:1.5rem;gap:1.5rem}.stat-card{border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem;text-align:center}.stat-card h3{color:#666;font-size:.9rem;letter-spacing:1px;margin-bottom:1rem;text-transform:uppercase}.stat-number{color:#2e8b8b;font-size:2.5rem}.site-settings-management{background:#fff;border-radius:15px;box-shadow:0 5px 20px #0000001a;padding:2rem}.settings-header{align-items:center;border-bottom:2px solid #f8f9fa;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.settings-header h2{color:#333;margin:0}.settings-actions{display:flex;gap:1rem}.settings-actions button{border:none;border-radius:25px;cursor:pointer;font-size:.9rem;padding:.7rem 1.5rem;transition:all .3s ease}.save-button{background:#28a745;color:#fff}.reset-button{background:#dc3545;color:#fff}.settings-actions button:hover{opacity:.9;transform:translateY(-2px)}.settings-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.tab-button{background:#fff;border:2px solid #ff9a9e;border-radius:25px;color:#2e8b8b;cursor:pointer;font-size:.9rem;padding:.7rem 1.5rem;transition:all .3s ease}.tab-button.active,.tab-button:hover{background:#4ecdc4;color:#fff}.settings-content{min-height:400px}.section h3{border-bottom:2px solid #f8f9fa;color:#333;margin-bottom:1.5rem;padding-bottom:.5rem}.form-group label{color:#555;font-weight:600}.form-group input,.form-group textarea{border:2px solid #e9ecef;border-radius:8px;font-size:1rem;padding:.8rem;transition:border-color .3s ease;width:100%}.form-group input:focus,.form-group textarea:focus{border-color:#4ecdc4;outline:none}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.feature-item{background:#f8f9fa;border-radius:10px;margin-bottom:1rem;padding:1.5rem}.feature-item h4{color:#2e8b8b;margin-bottom:1rem}.hero-description{font-size:1.1rem;margin-top:1rem;opacity:.9}.feature-text{display:block;font-weight:700;margin-bottom:.3rem}.feature-description{font-size:.9rem;opacity:.8}.admin-menu-button{background:#ffffff4d!important;border:1px solid #ffffff80!important}.admin-menu-button:hover{background:#fff6!important}.vehicle-selection{animation:fadeInUp 1s ease-out .8s both;margin-top:3rem;text-align:center}.selection-title{color:#fff;font-size:2rem;font-weight:300;margin-bottom:2rem;text-shadow:2px 2px 4px #0000004d}.vehicle-tiles{margin:0 auto;max-width:1000px;padding:0 2rem}.vehicle-tile{align-items:center;animation:slideInFromBottom .6s ease-out both;background:#fffffff2;border-radius:20px;box-shadow:0 10px 30px #0003;gap:2rem;padding:2.5rem;position:relative;transition:all .4s ease}.vehicle-tile:nth-child(2){animation-delay:.2s}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(50px)}to{opacity:1;transform:translateY(0)}}.vehicle-tile:before{background:linear-gradient(135deg,#4ecdc4,#44a08d);content:"";height:5px;left:0;position:absolute;right:0;top:0}.vehicle-tile:hover{box-shadow:0 20px 40px #0000004d}.car-tile:hover{background:linear-gradient(135deg,#4ecdc4,#44a08d);color:#fff}.motorcycle-tile:hover{background:linear-gradient(135deg,#5dade2,#3b82c7);color:#fff}.tile-icon{flex-shrink:0;font-size:4rem}.mypage-link:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.welcome-text{align-items:flex-end;color:#fff;display:flex;flex-direction:column;flex-shrink:1;line-height:1.2;max-width:150px;min-width:0}.welcome-text .greeting{font-size:10px;font-weight:400;opacity:.9;white-space:nowrap}.welcome-text .username{font-size:13px;font-weight:600;margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{background:#ffffff26;border:1px solid #ffffff4d;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:13px;font-weight:500;padding:8px 16px;transition:all .3s ease;white-space:nowrap}.logout-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.auth-buttons{align-items:center;display:flex;gap:16px}.login-btn,.register-btn{align-items:center;background:#ffffff26;border:1px solid #ffffff4d;border-radius:8px;box-sizing:border-box;color:#fff;display:inline-flex;font-size:14px;font-weight:600;height:44px;justify-content:center;min-width:110px;padding:12px 24px;text-align:center;text-decoration:none;transition:all .3s ease;width:110px}.login-btn:hover,.register-btn:hover{background:#ffffff40;border-color:#ffffff80;transform:translateY(-1px)}.main-footer{background:#fff;background:var(--white);border-top:1px solid #cfd8dc;border-top:1px solid var(--light-gray);margin-top:auto;padding:32px 0}.footer-container{margin:0 auto;max-width:1200px;padding:0 24px;text-align:center}.footer-container p{color:#546e7a;color:var(--gray);font-size:14px;margin-bottom:16px}.footer-links{display:flex;flex-wrap:wrap;gap:24px;justify-content:center}.footer-links a{color:#546e7a;color:var(--gray);font-size:14px;text-decoration:none;transition:color .2s}.footer-links a:hover{color:#263238;color:var(--dark-gray)}@media (max-width:1024px){.header-container{padding:14px 20px}.user-menu{gap:12px}.logout-btn,.mypage-link{font-size:12px;padding:7px 14px}.welcome-text{max-width:120px}.welcome-text .greeting{font-size:9px}.welcome-text .username{font-size:12px}.hero{min-height:500px}.hero-content{padding:3rem 1rem}.hero-content h2{font-size:2rem}.hero-content p{font-size:1.1rem}.slider-track{animation:slideAnimation 30s linear infinite}.hero-features{gap:1rem}.vehicle-grid{gap:1rem;grid-template-columns:1fr}.filters{flex-direction:column;gap:1rem}.form-row{grid-template-columns:1fr}.vehicle-summary{flex-direction:column;text-align:center}.form-actions{flex-direction:column;gap:1rem}.contact-info{grid-template-columns:1fr}.dashboard-tabs{flex-wrap:wrap;gap:.5rem}.dashboard-tabs button{font-size:.8rem;padding:.5rem .8rem}.vehicle-tiles{gap:1.5rem;grid-template-columns:1fr;padding:0 1rem}.vehicle-tile{gap:1.5rem;padding:2rem}.tile-icon{font-size:3rem}.selection-title{font-size:1.5rem}.page-header{align-items:flex-start;flex-direction:column;gap:1rem}}@media (max-width:768px){.header-container{flex-wrap:nowrap;justify-content:space-between;padding:12px 16px}.site-title{font-size:18px}.user-menu{gap:10px}.logout-btn,.mypage-link{font-size:11px;padding:6px 12px}.welcome-text{max-width:100px}.welcome-text .greeting{font-size:8px}.welcome-text .username{font-size:11px}.auth-buttons{gap:10px}.login-btn,.register-btn{font-size:12px;height:36px;min-width:90px;padding:8px 16px;width:90px}.footer-links{flex-direction:column;gap:8px}}@media (max-width:480px){.header-container{padding:10px 12px}.logo-section{gap:8px}.site-title{font-size:16px}.user-menu{gap:8px}.logout-btn,.mypage-link{font-size:10px;padding:5px 10px}.welcome-text{align-items:center;max-width:80px}.welcome-text .greeting{font-size:7px}.welcome-text .username{font-size:10px}.auth-buttons{gap:8px}.login-btn,.register-btn{font-size:11px;height:32px;min-width:80px;padding:6px 12px;width:80px}}@media (max-width:360px){.header-container{padding:8px 10px}.site-title{font-size:14px}.user-menu{gap:6px}.logout-btn,.mypage-link{font-size:9px;padding:4px 8px}.welcome-text{max-width:70px}.welcome-text .greeting{font-size:6px}.welcome-text .username{font-size:9px}.auth-buttons{gap:6px}.login-btn,.register-btn{font-size:10px;height:28px;min-width:70px;padding:5px 10px;width:70px}}.admin-indicator{align-items:center;display:flex;justify-content:flex-end;padding:0 20px}.admin-badge{background:#667eea;border-radius:8px;color:#fff;font-size:12px;font-weight:600;letter-spacing:.5px;padding:8px 16px;text-transform:uppercase}.info-site-nav{gap:20px;padding:0 20px}.info-site-nav,.nav-menu{align-items:center;display:flex}.nav-menu{gap:15px}.nav-link{border-radius:6px;color:#fff;font-size:14px;font-weight:500;padding:8px 16px;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{background-color:#ffffff1a;color:#fff;transform:translateY(-1px)}.nav-link:active{transform:translateY(0)}.site-mode-indicator{background:#ffffff1a;border-left:3px solid #ffffff4d;border-radius:4px;color:#fffc;font-size:12px;font-weight:400;padding:4px 8px}@media (max-width:768px){.info-site-nav{align-items:flex-end;flex-direction:column;gap:10px;padding:10px}.nav-menu{gap:10px}.nav-link{font-size:12px;padding:6px 12px}.site-mode-indicator{font-size:10px;padding:2px 6px}}@media (max-width:480px){.nav-menu{flex-direction:column;gap:5px;width:100%}.nav-link{padding:8px;text-align:center;width:100%}}.car-wheel-spinner{animation:wheelSpin 1s linear infinite;background-image:url(../../static/media/wheel-spinner.927d52be2dbe058b118e.svg);background-position:50%;background-repeat:no-repeat;background-size:contain;display:inline-block;height:200px;margin:40px auto;width:200px}.car-wheel-spinner.small{height:100px;margin:20px auto;width:100px}.car-wheel-spinner.large{height:300px;margin:50px auto;width:300px}.car-wheel-spinner.loading-spinner{height:200px;width:200px}@keyframes wheelSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;padding:40px;text-align:center}.loading-container p{font-size:24px;font-weight:600;letter-spacing:.5px;margin-top:30px}@media (max-width:768px){.wheel-spinner{height:50px!important;width:50px!important}.loading-message{font-size:.9rem}}.wheel-spinner.fast{animation:spin 1s linear infinite}.wheel-spinner.slow{animation:spin 3s linear infinite}.loading-container.with-background{background:linear-gradient(135deg,#e8f5e9,#f1f8e9);border-radius:15px;box-shadow:0 4px 12px #43a0471a;padding:30px}:root{--gradient-primary:linear-gradient(135deg,#2e7d32,#4caf50);--gradient-accent:linear-gradient(135deg,#1b5e20,#2e7d32);--primary-green:#2e7d32;--primary-green-dark:#1b5e20;--accent-green:#4caf50;--mint-green:#e8f5e9;--medium-gray:#546e7a;--extra-light-gray:#fafafa;--shadow-soft:0 5px 20px #2e7d321a;--shadow-medium:0 10px 30px #2e7d3233;--shadow-strong:0 20px 60px #2e7d324d}.home-container{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffd9}.home-page{background:var(--gradient-soft);font-family:Inter,Segoe UI,Tahoma,Geneva,Verdana,sans-serif;min-height:100vh;overflow-x:hidden;width:100%}.hero-section{align-items:center;background:linear-gradient(135deg,#2e7d32,#4caf50);background:var(--gradient-primary);display:flex;height:60vh;justify-content:center;overflow:hidden;position:relative;text-align:center;z-index:0}.background-slider{height:50%;left:0;overflow:hidden;position:absolute;top:50%;transform:translateY(-50%);width:100%;z-index:1}.slider-track{animation:slideShow 24s linear infinite;box-shadow:0 10px 30px #0000004d;display:flex;height:100%;width:800%;will-change:transform}.background-image{background-attachment:scroll;background-position:50%;background-repeat:no-repeat;background-size:cover;border-left:1px solid #ffffff1a;border-right:1px solid #ffffff1a;flex-shrink:0;height:100%;width:12.5%}@keyframes slideShow{0%{transform:translateX(0)}50%{transform:translateX(-25%)}to{transform:translateX(-50%)}}.hero-overlay{background:linear-gradient(180deg,#00000080,#0000 25%,#0000 75%,#00000080);height:100%;left:0;pointer-events:none;position:absolute;top:0;width:100%;z-index:2}.hero-content{color:#fff;max-width:800px;padding:0 2rem;position:relative;text-shadow:0 2px 8px #0000004d;z-index:3}.hero-title{animation:fadeInUp 1s ease-out;-webkit-background-clip:text;background-clip:text;color:#fff;font-size:4rem;font-weight:700;letter-spacing:-.02em;line-height:1.1;margin-bottom:1.5rem;text-shadow:0 4px 20px #4caf504d}.hero-subtitle{animation:fadeInUp 1s ease-out .3s both;color:#fff;font-size:1.5rem;font-weight:300;line-height:1.6;margin-bottom:2rem;opacity:.95}.selection-container{background:#fff;border-radius:30px 30px 0 0;box-shadow:0 -10px 50px #4caf501a;margin:-50px auto 0;max-width:1200px;padding:4rem 2rem;position:relative;z-index:4}.selection-title{color:#2d3748;font-size:2.5rem;font-weight:600;margin-bottom:3rem;position:relative;text-align:center}.selection-title:after{background:linear-gradient(135deg,#2e7d32,#4caf50);background:var(--gradient-primary);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.announcements-section{background:linear-gradient(135deg,#f9fafb,#e8f5e8);border-left:5px solid #2e7d32;border-left:5px solid var(--primary-green);border-radius:20px;box-shadow:0 5px 20px #2e7d321a;box-shadow:var(--shadow-soft);margin-bottom:3rem;padding:2.5rem}.announcements-title{color:#1b5e20;color:var(--primary-green-dark);font-size:1.5rem;font-weight:600;margin-bottom:1rem}.announcements-list{display:flex;flex-direction:column;gap:.75rem}.announcement-item{align-items:center;background:#fff;border:1px solid #4caf501a;border-radius:12px;box-shadow:0 2px 8px #4caf501a;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.announcement-item:hover{border-color:#4caf50;border-color:var(--accent-green);box-shadow:0 10px 30px #2e7d3233;box-shadow:var(--shadow-medium);transform:translateY(-2px)}.announcement-date{color:#546e7a;color:var(--medium-gray);font-size:.875rem;min-width:80px}.announcement-title{color:#2d3748;flex:1 1;font-weight:500}.vehicle-tiles{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));margin-top:2rem}.vehicle-tile{aspect-ratio:1;background:#fff;border:1px solid #4caf501a;border-radius:12px;box-shadow:0 5px 20px #2e7d321a;box-shadow:var(--shadow-soft);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.vehicle-tile:hover{border-color:#4caf50;border-color:var(--accent-green);box-shadow:0 20px 60px #2e7d324d;box-shadow:var(--shadow-strong);transform:translateY(-10px) scale(1.02)}.tile-image{height:250px}.tile-image,.tile-image-large{overflow:hidden;position:relative}.tile-image-large{flex:1 1;min-height:250px}.tile-img{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.vehicle-tile:hover .tile-img{transform:scale(1.1)}.tile-text-section{align-items:center;background:#fff;display:flex;flex:0 0 auto;justify-content:center;min-height:80px;padding:1.5rem;transition:background .3s ease}.vehicle-tile:hover .tile-text-section{background:var(--green-pale)}.tile-title-large{color:var(--green);font-family:Arial,sans-serif;font-size:2.5rem;font-weight:900;letter-spacing:.15em;margin:0;text-align:center;text-transform:uppercase;transition:color .3s ease,transform .3s ease}.vehicle-tile:hover .tile-title-large{color:var(--green-dark);transform:scale(1.05)}.tile-content{padding:2rem}.tile-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#2e7d32,#4caf50);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:#2d3748;font-size:2rem;font-weight:700;margin-bottom:1rem}.tile-description{color:#546e7a;color:var(--medium-gray);font-size:1.1rem;line-height:1.6;margin-bottom:1.5rem;white-space:pre-line}.tile-features{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.feature{align-items:center;background:#e8f5e9;background:var(--mint-green);border-radius:20px;color:#1b5e20;color:var(--primary-green-dark);display:inline-flex;font-size:.875rem;font-weight:500;gap:.25rem;padding:.5rem 1rem}.tile-button{background:linear-gradient(135deg,#2e7d32,#4caf50);background:var(--gradient-primary);border:none;border-radius:25px;box-shadow:0 5px 20px #2e7d321a;box-shadow:var(--shadow-soft);color:#fff;cursor:pointer;font-size:.875rem;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease;width:100%}.tile-button:hover{background:linear-gradient(135deg,#1b5e20,#2e7d32);background:var(--gradient-accent);box-shadow:0 10px 30px #2e7d3233;box-shadow:var(--shadow-medium);transform:translateY(-2px)}.info-section{background:#fafafa;background:var(--extra-light-gray);padding:4rem 2rem}.info-cards{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:0 auto;max-width:1200px}.info-card{border:1px solid #4caf501a;box-shadow:0 5px 20px #2e7d321a;box-shadow:var(--shadow-soft);padding:2.5rem;text-align:center}.info-card:hover{border-color:#4caf50;border-color:var(--accent-green);box-shadow:0 10px 30px #2e7d3233;box-shadow:var(--shadow-medium)}.info-icon{margin-bottom:1.5rem}.info-card h4{color:#1b5e20;color:var(--primary-green-dark);font-size:1.3rem;font-weight:600;margin-bottom:.75rem}.info-card p{color:#546e7a;color:var(--medium-gray);line-height:1.6}@media (max-width:768px){.hero-title{font-size:2.5rem}.hero-subtitle{font-size:1.2rem}.selection-container{border-radius:20px 20px 0 0;margin-top:-30px;padding:3rem 1rem}.selection-title{font-size:2rem}.vehicle-tiles{gap:1.5rem;grid-template-columns:1fr}.tile-content{padding:1.5rem}.tile-title{font-size:1.5rem}.tile-image-large{min-height:200px}.tile-title-large{font-size:2rem;letter-spacing:.1em}.tile-text-section{min-height:60px;padding:1rem}.info-cards{gap:1.5rem;grid-template-columns:1fr}.announcements-section{border-radius:15px;padding:1.5rem}.info-card{padding:2rem}.contact-section{padding:0 1rem}.contact-info-grid{gap:1rem;grid-template-columns:1fr}.contact-section-title{font-size:1.5rem}}.contact-section{margin-top:4rem;padding:0 2rem}.contact-section-title{color:#2d3436;font-size:2rem;font-weight:700;margin-bottom:2rem;text-align:center}.contact-info-grid{margin:0 auto}.contact-info-grid .info-card{background:#fff;border-radius:20px;box-shadow:0 10px 40px #0000001a;color:#333!important;padding:2rem;text-align:center;transition:transform .3s ease,box-shadow .3s ease}.contact-info-grid .info-card h3,.contact-info-grid .info-card p,.contact-info-grid .info-card span{color:#333!important}.info-card:hover{box-shadow:0 20px 60px #00000026}.phone-card{background:linear-gradient(135deg,#fff,#f8f9fa);border:2px solid #0000;cursor:pointer;transition:all .3s ease}.phone-card:hover{background:linear-gradient(135deg,#f8f9fa,#e8f5e9);border-color:#43a047;box-shadow:0 25px 70px #43a04733;transform:translateY(-8px)}.location-card{position:relative}.info-icon{display:block;margin-bottom:1rem}.info-details h3{color:#2d3436!important;font-size:1.2rem;font-weight:600}.contact-value{color:#2d3436;font-size:1.1rem;font-weight:600;line-height:1.4;margin-bottom:.5rem}.phone-number{color:#43a047!important;font-size:1.3rem!important;font-weight:700!important;margin-bottom:.8rem!important}.contact-hours{color:#636e72;margin-bottom:.3rem}.address-text{margin-bottom:1rem}.click-hint{color:#43a047;font-size:.8rem;font-weight:600;margin-top:.5rem}.map-actions{gap:.5rem;justify-content:center}.map-button{align-items:center;background:linear-gradient(135deg,#43a047,#66bb6a);border-radius:8px;display:flex;font-size:.85rem;font-weight:600;gap:.4rem;padding:.6rem 1rem;white-space:nowrap}.map-button:hover{background:linear-gradient(135deg,#388e3c,#43a047);box-shadow:0 5px 15px #43a04766}.route-button{background:linear-gradient(135deg,#2196f3,#42a5f5)}.route-button:hover{background:linear-gradient(135deg,#1976d2,#2196f3);box-shadow:0 5px 15px #2196f366}@media (max-width:480px){.hero-section{height:70vh}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.selection-container{padding:2rem 1rem}.tile-content{padding:1rem}.tile-image-large{min-height:150px}.tile-title-large{font-size:1.8rem;letter-spacing:.08em}.tile-text-section{min-height:50px;padding:.8rem}.announcement-item{align-items:flex-start;flex-direction:column;gap:.5rem}.announcement-date{min-width:auto}.info-card{padding:1.5rem}}.webike-banner-section{align-items:center;background-color:#f8f9fa;display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.webike-banner-section h2{color:#333;font-size:28px;font-weight:700;margin-bottom:25px;text-align:center}.webike-banner-container{background-color:#fff;border-radius:10px;box-shadow:0 4px 6px #0000001a;max-width:100%;overflow:hidden;width:540px}.webike-banner-container iframe{border:none;display:block;width:100%}@media (max-width:576px){.webike-banner-section{padding:20px 10px}.webike-banner-section h2{font-size:22px;margin-bottom:20px}.webike-banner-container{box-shadow:0 2px 4px #0000001a;width:100%}}.camping-card{background:linear-gradient(135deg,#667eea,#764ba2);cursor:pointer;transition:all .3s ease}.camping-card:hover{box-shadow:0 15px 30px #667eea4d;transform:translateY(-5px)}.camping-card .info-icon{font-size:3rem}.camping-card .info-details h3{color:#fff}.camping-card .info-details p,.camping-card .info-details span{color:#ffffffe6}.camping-card .click-hint{color:#fffc;font-size:.9rem;margin-top:10px}.spaciva-card{background:linear-gradient(135deg,#ff6b9d,#c44569);cursor:pointer;transition:all .3s ease}.spaciva-card:hover{box-shadow:0 15px 30px #ff6b9d4d;transform:translateY(-5px)}.spaciva-card .info-icon{font-size:3rem}.spaciva-card .info-details h3{color:#fff}.spaciva-card .info-details p,.spaciva-card .info-details span{color:#ffffffe6}.spaciva-card .click-hint{color:#fffc;font-size:.9rem;margin-top:10px}.vehicle-list-container{background:var(--gradient-soft);min-height:calc(100vh - 200px);padding:3rem 2rem}.vehicle-list-header{animation:fadeInDown .6s ease;margin-bottom:3rem;text-align:center}.vehicle-list-header h1{-webkit-text-fill-color:#0000;background:var(--gradient-2);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:800;margin-bottom:.5rem}.vehicle-list-header p{color:var(--gray);font-size:1.125rem;font-weight:500}.vehicles-grid{grid-gap:2rem;gap:2rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));margin:0 auto;max-width:1400px}.vehicle-card{animation:fadeInUp .6s ease;background:#fff;border-radius:20px;box-shadow:0 10px 40px #00000014;overflow:hidden;transition:all .4s cubic-bezier(.175,.885,.32,1.275)}.vehicle-card:hover{box-shadow:0 20px 60px #00000026;transform:translateY(-10px) scale(1.02)}.vehicle-image-container{background:var(--gradient-1);height:220px;overflow:hidden;position:relative}.vehicle-image{height:100%;object-fit:cover;transition:transform .6s ease;width:100%}.vehicle-card:hover .vehicle-image{transform:scale(1.1)}.vehicle-badge{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;color:var(--green);font-weight:700;left:1rem;letter-spacing:1px;text-transform:uppercase}.available-badge,.vehicle-badge{border-radius:50px;font-size:.75rem;padding:.5rem 1rem;position:absolute;top:1rem}.available-badge{animation:pulse 2s infinite;background:var(--green-light);color:#fff;font-weight:600;right:1rem}.vehicle-details{padding:1.5rem}.vehicle-details h3{color:#1e293b;font-size:1.5rem;font-weight:700;margin-bottom:1rem}.vehicle-features{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.feature-tag{background:#f1f5f9;border-radius:50px;color:#475569;font-size:.8rem;font-weight:500;padding:.375rem .875rem}.vehicle-pricing{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;padding-top:1rem}.price-display{display:flex;flex-direction:column}.price-amount{color:var(--green);font-size:1.75rem;font-weight:800}.price-period{color:#94a3b8;font-size:.875rem}.modern-book-btn{background:linear-gradient(135deg,#43a047,#66bb6a);border:none;border-radius:50px;box-shadow:0 4px 15px #43a0474d;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:.875rem 2rem;transition:all .3s ease}.modern-book-btn:hover{box-shadow:0 8px 25px #43a04766;transform:translateY(-2px)}.modern-book-btn:disabled{cursor:not-allowed;opacity:.5}.vehicle-comment{background:#fffffff2;border-left:3px solid #4caf50;border-radius:8px;margin-top:12px;padding:10px}.vehicle-comment p{color:#555;font-size:14px;line-height:1.4;margin:0}.modern-modal-overlay{align-items:center;animation:fadeIn .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#000000b3;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modern-modal{animation:slideUp .4s cubic-bezier(.175,.885,.32,1.275);background:#fff;border-radius:24px;box-shadow:0 25px 100px #0000004d;max-width:900px;width:100%}.modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:2rem 2rem 1rem}.modal-header h2{color:#1e293b;font-size:1.75rem;font-weight:700}.close-btn{background:#f1f5f9;border:none;border-radius:50%;color:#64748b;cursor:pointer;font-size:1.5rem;height:40px;transition:all .3s ease;width:40px}.close-btn:hover{background:#e2e8f0;transform:rotate(90deg)}.booking-content{padding:2rem}.vehicle-summary{background:linear-gradient(135deg,#f3f4f6,#e5e7eb);border-radius:16px;display:flex;gap:1.5rem;margin-bottom:2rem;padding:1.5rem}.summary-image{border-radius:12px;height:100px;object-fit:cover;width:150px}.summary-details h3{color:#1e293b;font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.summary-details p{color:#64748b;font-size:.9rem}.form-section{margin-bottom:2rem}.form-section h4{color:#1e293b;font-size:1.125rem;font-weight:600;margin-bottom:1rem}.plan-options{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.plan-card{border:2px solid #e2e8f0;border-radius:12px;cursor:pointer;padding:1rem;position:relative;text-align:center;transition:all .3s ease}.plan-card:hover{background:#f1f8e9;border-color:#43a047}.plan-card.selected{background:linear-gradient(135deg,#43a047,#66bb6a);border-color:#43a047;color:#fff}.plan-name{font-weight:600;margin-bottom:.25rem}.plan-discount{background:#fff;border-radius:6px;box-shadow:0 2px 8px #0000001a;color:#10b981;font-size:.75rem;font-weight:700;padding:.25rem .5rem;position:absolute;right:10px;top:-10px}.plan-card.selected .plan-discount{color:var(--green)}.date-inputs{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.date-input-group,.duration-input-group{display:flex;flex-direction:column}.date-input-group label,.duration-input-group label{color:#64748b;font-size:.875rem;font-weight:500;margin-bottom:.5rem}.modern-date-input{border:2px solid #e2e8f0;border-radius:10px;font-size:.9rem;padding:.75rem;transition:all .3s ease}.modern-date-input:focus{border-color:#43a047;box-shadow:0 0 0 3px #43a0471a;outline:none}.duration-selector{align-items:center;border:2px solid #e2e8f0;border-radius:10px;display:flex;gap:1rem;padding:.75rem}.duration-selector button{background:#43a047;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:1.25rem;height:32px;transition:all .3s ease;width:32px}.duration-selector button:hover{background:#388e3c;transform:scale(1.1)}.duration-selector span{color:#1e293b;flex:1 1;font-weight:600;text-align:center}.insurance-options{display:flex;flex-direction:column;gap:1rem}.insurance-item,.toggle-label{position:relative}.toggle-label{align-items:center;background:#f8faff;border-radius:12px;cursor:pointer;display:flex;padding:1rem;transition:all .3s ease}.toggle-label:hover{background:#eff4ff}.toggle-label input[type=checkbox]{opacity:0;position:absolute}.toggle-slider{background:#cbd5e1;border-radius:50px;height:24px;margin-right:1rem;position:relative;transition:all .3s ease;width:48px}.toggle-slider:after{background:#fff;border-radius:50%;content:"";height:18px;left:3px;position:absolute;top:3px;transition:all .3s ease;width:18px}.toggle-label input[type=checkbox]:checked+.toggle-slider{background:#43a047}.toggle-label input[type=checkbox]:checked+.toggle-slider:after{transform:translateX(24px)}.toggle-label input[type=checkbox]:disabled+.toggle-slider{opacity:.5}.insurance-info{align-items:center;display:flex;flex:1 1;justify-content:space-between}.insurance-name{color:#1e293b;font-weight:600}.insurance-price{color:var(--green);font-weight:700}.price-breakdown{background:linear-gradient(135deg,#f8faff,#eff4ff);border-radius:16px;margin-top:2rem;padding:1.5rem}.price-row{align-items:center;color:#64748b;display:flex;justify-content:space-between;padding:.75rem 0}.price-row.total{border-top:2px solid #e2e8f0;color:#1e293b;font-size:1.125rem;font-weight:700;margin-top:.75rem;padding-top:1rem}.total-amount{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#43a047,#66bb6a);-webkit-background-clip:text;background-clip:text;font-size:1.5rem}.modal-actions button{border-radius:12px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:1rem;transition:all .3s ease}.cancel-btn{background:#f1f5f9;border:none;color:#64748b}.cancel-btn:hover{background:#e2e8f0;color:#475569}.confirm-btn{background:linear-gradient(135deg,#43a047,#66bb6a);border:none;box-shadow:0 4px 15px #43a0474d;color:#fff}.confirm-btn:hover{box-shadow:0 8px 25px #43a04766;transform:translateY(-2px)}.success-animation{animation:zoomIn .5s ease;padding:4rem 2rem;text-align:center}.success-icon{align-items:center;animation:rotateIn .6s ease;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;color:#fff;display:flex;font-size:3rem;height:80px;justify-content:center;margin:0 auto 1.5rem;width:80px}.success-animation h2{color:#1e293b;font-size:2rem;font-weight:700;margin-bottom:.5rem}.success-animation p{color:#64748b;font-size:1.125rem}.points-earned{align-items:center;animation:bounce .6s ease;background:linear-gradient(135deg,#fff3e0,#ffe0b2);border:2px solid #ff9800;border-radius:15px;display:flex;gap:.75rem;justify-content:center;margin:1.5rem auto 0;max-width:300px;padding:1rem 2rem}.points-icon{font-size:2rem}.points-text{color:#e65100;font-size:1.125rem;font-weight:700}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes zoomIn{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}@keyframes rotateIn{0%{transform:rotate(-180deg) scale(0)}to{transform:rotate(0) scale(1)}}@media (max-width:768px){.vehicles-grid{grid-template-columns:1fr}.vehicle-list-header h1{font-size:2rem}.plan-options{grid-template-columns:1fr 1fr}.date-inputs{grid-template-columns:1fr}.modal-header{padding:1.5rem 1.5rem 1rem}.booking-content{padding:1.5rem}.vehicle-summary{flex-direction:column;text-align:center}.summary-image{height:150px;width:100%}}.member-only-notice{background:#f8f9fa;border:2px solid #e9ecef;border-radius:8px;margin-top:1rem;padding:1rem;text-align:center}.login-required{color:#6c757d;font-size:.9rem;font-weight:500;margin-bottom:.5rem}.price-only{color:var(--green);font-size:1.1rem;font-weight:600;margin:0}.login-required-section{align-items:center;display:flex;flex:1 1;flex-direction:column;gap:.75rem}.login-message{color:#6c757d;font-size:.9rem;font-weight:500;margin:0;text-align:center}.login-btn{background:#43a047;font-size:.95rem;max-width:200px;padding:.75rem 1.5rem}.login-btn:hover{background:#388e3c}.discount-badge{animation:pulse 2s infinite;background:linear-gradient(135deg,#ff6b6b,#ee5a24);border-radius:15px;color:#fff;font-size:.8rem;font-weight:600;margin-top:8px;padding:4px 12px;text-align:center}@keyframes pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.simple-insurance-toggle{background:#f8f9fa;border:2px solid #e9ecef;border-radius:12px;padding:20px;transition:all .3s ease}.simple-insurance-toggle:hover{background:#f1f8e9;border-color:#43a047}.insurance-description{color:#666;display:block;font-size:.85rem;font-style:italic;margin-top:4px}.insurance-discount{font-size:.9rem}.insurance-discount,.price-row.discount{color:#d32f2f;font-weight:600}.price-row.discount span:last-child{color:#d32f2f}.sticky-estimate{background:linear-gradient(135deg,#43a047,#66bb6a);border-radius:15px;box-shadow:0 8px 32px #43a0474d;color:#fff;margin-bottom:20px;padding:20px;position:sticky;top:20px;z-index:100}.sticky-estimate h3{font-size:1.5rem;font-weight:700;margin:0 0 10px}.estimate-notice{background:#ffffff26;border-left:4px solid #ffffff80;border-radius:8px;font-size:.9rem;line-height:1.4;margin:0;padding:12px}.modern-modal{max-height:90vh;overflow-y:auto;scrollbar-color:#43a047 #f1f1f1;scrollbar-width:thin}.modern-modal::-webkit-scrollbar{width:6px}.modern-modal::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.modern-modal::-webkit-scrollbar-thumb{background:#43a047;border-radius:10px}.modern-modal::-webkit-scrollbar-thumb:hover{background:#388e3c}@media (max-width:768px){.sticky-estimate{margin:20px 0;position:relative;top:auto}.discount-badge{font-size:.75rem;padding:3px 10px}.estimate-notice{font-size:.85rem;padding:10px}}.vehicle-list-page{margin:0 auto;max-width:1200px;min-height:calc(100vh - 200px);padding:20px}.page-header{border-bottom:2px solid #e8f5e8;border-bottom:2px solid var(--green-light,#e8f5e8);margin-bottom:30px;padding-bottom:20px;text-align:center}.page-header h1{color:#2d5016;color:var(--green-dark,#2d5016);font-size:2.5rem;font-weight:700;margin-bottom:10px}.page-description{color:#666;font-size:1.1rem;line-height:1.6;margin:0 auto;max-width:600px}.error-container,.loading-container{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:400px;text-align:center}.loading-container p{color:#666;font-size:1.1rem}.error-container{color:#666}.error-message{background:#fff;border:1px solid #ffebee;border-radius:10px;box-shadow:0 4px 6px #0000001a;max-width:500px;padding:30px}.error-message h3{color:#d32f2f;font-size:1.5rem;margin-bottom:15px}.error-message p{line-height:1.6;margin-bottom:20px}.retry-button{background:#4caf50;background:var(--green,#4caf50);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:1rem;padding:12px 24px;transition:background-color .3s ease}.retry-button:hover{background:#45a049;background:var(--green-hover,#45a049)}@media (max-width:768px){.vehicle-list-page{padding:15px}.page-header h1{font-size:2rem}.page-description{font-size:1rem}}.admin-login-wrapper{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);display:flex;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;justify-content:center;min-height:100vh;padding:20px}.admin-login-card{background:#fff;border-radius:16px;box-shadow:0 20px 40px #0000001a;max-width:400px;overflow:hidden;padding:40px;position:relative;width:100%}.admin-login-card:before{background:linear-gradient(90deg,#667eea,#764ba2);content:"";height:4px;left:0;position:absolute;right:0;top:0}.login-header{margin-bottom:30px;text-align:center}.admin-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;box-shadow:0 8px 20px #667eea4d;color:#fff;display:inline-flex;height:80px;justify-content:center;margin-bottom:20px;width:80px}.login-header h2{color:#333;font-size:24px;font-weight:600;margin:0 0 8px}.login-header p{color:#666;font-size:14px;margin:0}.error-alert{align-items:center;background:#fee;border:1px solid #fcc;border-radius:8px;color:#c33;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.error-icon{font-size:16px}.input-group,.login-form{margin-bottom:20px}.input-group label{color:#555;display:block;font-size:14px;font-weight:500;margin-bottom:6px}.input-group input{border:2px solid #e1e5e9;border-radius:8px;box-sizing:border-box;font-size:16px;padding:12px 16px;transition:all .3s ease;width:100%}.input-group input:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.input-group input::placeholder{color:#aaa}.login-btn{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:14px 20px;transition:all .3s ease;width:100%}.login-btn:hover:not(:disabled){box-shadow:0 8px 20px #667eea4d;transform:translateY(-1px)}.login-btn:disabled{cursor:not-allowed;opacity:.7;transform:none}.spinner{animation:spin 1s linear infinite;border:2px solid #0000;border-radius:50%;border-top-color:currentcolor;height:16px;width:16px}.back-btn{background:#0000;border:2px solid #e1e5e9;color:#666;font-size:14px;padding:12px 20px;width:100%}.back-btn:hover{background:#f8f9fa;border-color:#ccc;color:#333}@media (max-width:480px){.admin-login-wrapper{padding:10px}.admin-login-card{padding:30px 20px}.admin-icon{height:60px;width:60px}.login-header h2{font-size:20px}}.auth-loading{align-items:center;background:linear-gradient(135deg,#f0f8f0,#e8f5e8);display:flex;flex-direction:column;height:100vh;justify-content:center;text-align:center}.auth-spinner{animation:spin 1s linear infinite;border:4px solid #e0e0e0;border-radius:50%;border-top-color:#43a047;height:50px;margin-bottom:20px;width:50px}.auth-loading h2{color:#43a047;font-size:24px;font-weight:600;margin-bottom:10px}.auth-loading p{color:#666;font-size:16px;margin:0}.announcements-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.create-announcement-btn{background:var(--gradient-2);border:none;border-radius:8px;box-shadow:0 2px 10px #43a0474d;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:12px 24px;transition:all .3s ease}.create-announcement-btn:hover{box-shadow:0 4px 15px #43a04766;transform:translateY(-2px)}.announcement-form{background:var(--green-pale);border:1px solid #43a04733;border-radius:12px;margin-bottom:30px;padding:25px}.announcement-form h4{color:var(--dark-gray);font-size:18px;font-weight:600;margin-bottom:20px}.checkbox-label{align-items:center;color:var(--dark-gray);cursor:pointer;display:flex;font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{cursor:pointer;margin:0}.form-buttons{display:flex;gap:12px;margin-top:20px}.form-buttons .save-button{background:var(--green);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .3s}.form-buttons .save-button:hover{background:var(--green-hover)}.form-buttons .cancel-button{background:var(--gray);border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .3s}.form-buttons .cancel-button:hover{background:#37474f}.announcements-list-admin{margin-top:30px}.announcements-list-admin h4{color:var(--dark-gray);font-size:16px;font-weight:600;margin-bottom:15px}.no-announcements{background:var(--green-pale);border-radius:8px;color:var(--gray);font-style:italic;padding:40px 20px;text-align:center}.announcements-table{display:flex;flex-direction:column;gap:15px}.announcement-row{align-items:flex-start;background:#fff;border:1px solid var(--light-gray);border-radius:10px;display:flex;justify-content:space-between;padding:20px;transition:all .3s ease}.announcement-row:hover{border-color:var(--green);box-shadow:0 3px 10px #43a0471a}.announcement-info{flex:1 1;margin-right:20px}.announcement-header-info{align-items:center;display:flex;gap:12px;margin-bottom:10px}.announcement-row .announcement-date{background:var(--green-pale);color:var(--green-dark)}.announcement-row .announcement-date,.announcement-status{border-radius:15px;font-size:12px;font-weight:500;padding:4px 12px}.announcement-status{text-transform:uppercase}.announcement-status.published{background:#4caf50;color:#fff}.announcement-status.draft{background:#ff9800;color:#fff}.announcement-row .announcement-title{color:var(--dark-gray);font-size:16px;font-weight:600;margin-bottom:8px}.announcement-preview{color:var(--gray);font-size:14px;line-height:1.5}.announcement-actions{display:flex;flex-direction:column;flex-shrink:0;gap:8px}.delete-btn,.edit-btn{border:none;border-radius:5px;cursor:pointer;font-size:12px;min-width:70px;padding:6px 12px;transition:all .3s ease}.edit-btn{background:#2196f3}.edit-btn:hover{background:#1976d2}.delete-btn{background:#f44336}.delete-btn:hover{background:#d32f2f}@media (max-width:768px){.announcement-row{flex-direction:column;gap:15px}.announcement-info{margin-right:0}.announcement-actions{flex-direction:row;justify-content:flex-start}.announcements-header{align-items:flex-start;flex-direction:column;gap:10px}}.sync-status{gap:1rem;margin-right:1rem}.sync-btn,.sync-status{align-items:center;display:flex}.sync-btn{background:var(--green-light);border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:500;gap:.5rem;padding:.5rem 1rem}.sync-btn:hover:not(:disabled){background:var(--green)}.sync-btn:disabled{cursor:not-allowed;opacity:.6}.sync-indicator.syncing{color:#3b82f6;font-weight:500}.icon-management{border:1px solid var(--light-gray);border-radius:8px;margin-top:10px;padding:20px}.current-icon-preview h4{color:var(--dark-gray);margin-bottom:10px}.icon-preview{align-items:center;background:var(--extra-light-gray);border-radius:8px;display:flex;margin-bottom:20px;padding:15px}.icon-upload-controls{border-top:1px solid var(--light-gray);padding-top:15px}.icon-buttons{display:flex;gap:10px;margin-bottom:10px}.upload-button{background:var(--green-light);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-block;font-size:14px;padding:10px 20px;text-decoration:none}.upload-button:hover{background:var(--green)}.reset-icon-button{background:var(--gray);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:10px 20px}.reset-icon-button:hover{background:var(--dark-gray)}.upload-info{color:var(--gray);font-size:12px;line-height:1.4;margin-top:10px}.hero-image-management{border:1px solid var(--light-gray);border-radius:8px;margin-top:10px;padding:20px}.current-images h4{color:var(--dark-gray);margin-bottom:15px}.image-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));margin-bottom:20px}.hero-image-item{border-radius:8px;box-shadow:0 2px 8px #0000001a;overflow:hidden;position:relative}.remove-image-button{align-items:center;background:#ffffffe6;border:none;border-radius:50%;cursor:pointer;display:flex;font-size:12px;height:24px;justify-content:center;position:absolute;right:5px;top:5px;width:24px}.remove-image-button:hover{background:#fff}.default-images-note{background:var(--extra-light-gray);border-radius:8px;color:var(--gray);font-style:italic;margin-bottom:20px;padding:20px;text-align:center}.hero-upload-controls{border-top:1px solid var(--light-gray);padding-top:15px}.hero-buttons{display:flex;gap:10px;margin-bottom:10px}.admin-dashboard{background:var(--extra-light-gray);display:flex;font-family:Segoe UI,Roboto,Noto Sans JP,Arial,sans-serif;height:100vh;max-height:100vh;overflow:hidden}.admin-sidebar{background:#1b5e20;box-shadow:4px 0 20px #0000001a;color:#fff!important;display:flex;flex-direction:column;min-width:220px;overflow-y:auto;width:220px}.admin-logo{border-bottom:1px solid #ffffff1a;flex-shrink:0;padding:1.5rem;text-align:center}.logo-icon{font-size:3rem;margin-bottom:1rem}.admin-logo h2{font-size:1.5rem;font-weight:600;margin:0}.admin-nav{flex:1 1;overflow-y:auto;padding:1rem 0}.admin-nav button{align-items:center;background:none;border:none;color:#fff!important;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:1rem;padding:.75rem 1.5rem;text-align:left;width:100%}.admin-nav button:hover{background:#ffffff26;color:#fff!important;padding-left:2.5rem}.admin-nav button.active{background:#fff3;border-left:4px solid #fff;color:#fff!important;font-weight:600}.nav-icon{font-size:1.2rem}.admin-logout-btn{background:#fff3;border:1px solid #fff;border-radius:8px;color:#fff;cursor:pointer;flex-shrink:0;font-size:.9rem;font-weight:600;margin:1rem;padding:.75rem}.admin-logout-btn:hover{background:#fff;color:#667eea}.admin-main{display:flex;flex:1 1;flex-direction:column;min-width:0;overflow:hidden}.admin-header{align-items:center;background:#fff;border:1px solid #e0e0e0;color:#333;display:flex;flex-shrink:0;justify-content:space-between;padding:1rem 1.5rem}.admin-header h1{color:#2d3436;font-size:1.75rem;margin:0}.admin-header-info{align-items:center;display:flex;gap:2rem}.admin-date{color:#636e72;font-size:.9rem}.admin-user{background:#f5f6fa;border-radius:20px;color:#2d3436;font-weight:500;padding:.5rem 1rem}.admin-content{flex:1 1;max-height:calc(100vh - 70px);overflow-y:auto;padding:1rem 1.5rem}.stats-grid{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1.5rem}.stat-card{align-items:center;background:#fff;border:1px solid #e0e0e0;border-radius:12px;color:#333;display:flex;gap:1rem;padding:1rem;transition:transform .3s}.stat-card:hover{box-shadow:0 5px 20px #0000001a}.stat-icon{-webkit-text-fill-color:#0000;background:#667eea;-webkit-background-clip:text;font-size:2.5rem}.stat-details h3{color:#636e72;font-size:.9rem;margin:0 0 .5rem;text-transform:uppercase}.stat-number{color:#2d3436;font-size:2rem;font-weight:700;margin:0}.stat-label{color:#b2bec3;font-size:.8rem}.recent-activities{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem}.recent-activities h2{color:#2d3436;font-size:1.25rem;margin-bottom:1rem}.activity-list{display:flex;flex-direction:column;gap:1rem}.activity-item{align-items:center;background:#f5f6fa;border-radius:8px;display:flex;justify-content:space-between;padding:1rem;transition:background .3s}.activity-item:hover{background:#e8eaef}.activity-title{color:#2d3436;font-weight:600;margin:0 0 .25rem}.activity-details{color:#636e72;font-size:.85rem;margin:0}.activity-status{border-radius:20px;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.status-confirmed{background:#00b894;color:#fff}.status-active{background:#0984e3;color:#fff}.status-cancelled{background:#d63031;color:#fff}.status-completed{background:#00b894;color:#fff}.status-pending{background:#fdcb6e;color:#2d3436}.stat-card.confirmed{background:#00b8941a 0,#00b8940d 100%);border-left:4px solid #00b894}.stat-card.cancelled{background:#d630311a 0,#d630310d 100%);border-left:4px solid #d63031}.stat-card.active{background:#0984e31a 0,#0984e30d 100%);border-left:4px solid #0984e3}.stat-card.completed{background:#6c5ce71a 0,#6c5ce70d 100%);border-left:4px solid #6c5ce7}.stat-card.revenue{background:#00b8941a 0,#00b8940d 100%);border-left:4px solid #00b894}.stat-card.cancelled-revenue{background:#d630311a 0,#d630310d 100%);border-left:4px solid #d63031}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.section-header h2{color:#2d3436;font-size:1.5rem;margin:0}.filter-buttons{display:flex;gap:.5rem}.filter-btn{background:#fff;border:1px solid #dfe6e9;border-radius:8px;color:#636e72;cursor:pointer;padding:.5rem 1rem}.filter-btn:hover{border-color:#667eea;color:#667eea}.filter-btn.active{background:#667eea;border:none;color:#fff}.bookings-table{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden}.bookings-table table{border-collapse:collapse;width:100%}.bookings-table th{background:#f5f6fa;color:#2d3436;font-size:.8rem;font-weight:600;padding:.75rem;text-align:left;text-transform:uppercase}.bookings-table td{border-top:1px solid #f5f6fa;color:#636e72;font-size:.9rem;padding:.75rem}.bookings-table tr:hover{background:#fafbfc}.status-badge{border-radius:20px;display:inline-block;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.action-buttons{display:flex;gap:.5rem}.action-btn{font-size:.85rem;font-weight:600;padding:.375rem .75rem}.action-btn.confirm{background:#00b894;color:#fff}.action-btn.confirm:hover{background:#00a884}.action-btn.cancel{background:#d63031;color:#fff}.action-btn.cancel:hover{background:#c62828}.action-btn.handover{background:#fd79a8 0,#fdcb6e 100%);color:#fff;font-weight:600;overflow:hidden;position:relative}.action-btn.handover:hover{box-shadow:0 6px 20px #fd79a84d;transform:translateY(-2px)}.action-btn.handover:before{background:linear-gradient(45deg,#0000,#fff3,#0000);content:"";height:200%;left:-50%;opacity:0;position:absolute;top:-50%;transform:rotate(45deg);transition:all .6s;width:200%}.action-btn.handover:hover:before{animation:shimmer .6s ease-out}.add-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:600;padding:.75rem 1.5rem}.add-btn:hover{box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.vehicles-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.vehicle-admin-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem}.vehicle-admin-card:hover{box-shadow:0 5px 20px #0000001a}.vehicle-admin-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.vehicle-admin-header h3{color:#2d3436;font-size:1.25rem;margin:0}.availability-badge{border-radius:20px;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.availability-badge.available{background:#00b894;color:#fff}.availability-badge.unavailable{background:#d63031;color:#fff}.vehicle-admin-details{margin-bottom:1rem}.vehicle-admin-details p{color:#636e72;font-size:.9rem;margin:.5rem 0}.vehicle-admin-details strong{color:#2d3436}.vehicle-admin-actions{border-top:1px solid #f5f6fa;display:flex;gap:.5rem;padding-top:1rem}.delete-btn,.edit-btn,.toggle-btn{border:none;border-radius:6px;cursor:pointer;flex:1 1;font-size:.85rem;font-weight:600;padding:.5rem}.edit-btn{background:#0984e3;color:#fff}.edit-btn:hover{background:#0874d3}.toggle-btn.disable{background:#fdcb6e;color:#fff}.toggle-btn.enable{background:#00b894;color:#fff}.delete-btn{background:#d63031;color:#fff}.delete-btn:hover{background:#c62828}.search-bar{position:relative}.search-bar input{border:1px solid #dfe6e9;border-radius:8px;font-size:.9rem;padding:.75rem 1rem;width:300px}.search-bar input:focus{border-color:#667eea;outline:none}.users-table{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden}.users-table table{border-collapse:collapse;width:100%}.users-table th{background:#f5f6fa;color:#2d3436;font-size:.8rem;font-weight:600;padding:.75rem;text-align:left;text-transform:uppercase}.users-table td{border-top:1px solid #f5f6fa;color:#636e72;font-size:.9rem;padding:.75rem}.users-table tr:hover{background:#fafbfc}.analytics-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.analytics-header h2{color:#2d3436;font-size:1.5rem;margin:0}.date-range-selector{display:flex;gap:.5rem}.range-btn{background:#fff;border:1px solid #dfe6e9;border-radius:8px;color:#636e72;cursor:pointer;padding:.5rem 1rem}.range-btn:hover{border-color:#667eea;color:#667eea}.range-btn.active{background:#667eea;border:none;color:#fff}.analytics-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.analytics-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem}.analytics-card h3{color:#2d3436;font-size:1.125rem;margin-bottom:1.5rem}.chart-placeholder{align-items:flex-end;background:#f5f6fa;border-radius:8px;display:flex;height:200px;justify-content:space-around;padding:1rem}.chart-bar{background:#667eea;width:40px}.popularity-list{display:flex;flex-direction:column;gap:1rem}.popularity-item{gap:1rem}.popularity-item,.rank{align-items:center;display:flex}.rank{background:#667eea;border-radius:50%;color:#fff;font-size:.9rem;font-weight:600;height:30px;justify-content:center;width:30px}.vehicle-name{color:#2d3436;flex:1 1;font-weight:500}.popularity-bar{background:#f5f6fa;border-radius:4px;flex:2 1;height:8px;overflow:hidden}.popularity-fill{background:#667eea;height:100%;transition:width .5s ease}.booking-stats{display:flex;flex-direction:column;gap:1rem}.stat-row{background:#f5f6fa;border-radius:8px;display:flex;justify-content:space-between;padding:1rem}.stat-row span:first-child{color:#636e72;font-weight:500}.stat-value{color:#2d3436;font-size:1.25rem;font-weight:700}.modal-overlay{align-items:center;animation:fadeIn .3s;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal-content{animation:slideUp .3s;background:#fff;border-radius:12px;max-height:90vh;max-width:500px;overflow-y:auto;padding:1.5rem;width:90%}.modal-content h2{color:#2d3436}.form-group,.modal-content h2{margin-bottom:1.5rem}.form-group label{color:#2d3436;display:block;font-weight:500;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:1px solid #dfe6e9;border-radius:8px;font-size:.9rem;padding:.75rem;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;outline:none}.form-group textarea{min-height:100px;resize:vertical}.modal-actions{display:flex;gap:1rem;margin-top:2rem}.cancel-btn,.save-btn{border:none;border-radius:8px;cursor:pointer;flex:1 1;font-size:1rem;font-weight:600;padding:.875rem}.save-btn{background:#667eea;color:#fff}.save-btn:hover{box-shadow:0 5px 15px #667eea4d;transform:translateY(-2px)}.cancel-btn{background:#f5f6fa;color:#636e72}.cancel-btn:hover{background:#e8eaef}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.admin-sidebar{width:80px}.admin-logo h2,.admin-nav button span:not(.nav-icon){display:none}.admin-nav button{justify-content:center;padding:1rem}.admin-nav button.active{border-bottom:3px solid #fff;border-left:none}}@media (max-width:768px){.admin-dashboard{flex-direction:column}.admin-sidebar{-webkit-overflow-scrolling:touch;align-items:center;flex-direction:row;justify-content:flex-start;overflow-x:auto;padding:1rem;width:100%}.admin-logo{border:none;flex-shrink:0;margin-right:1rem;padding:0}.admin-logo h2{font-size:1.2rem;white-space:nowrap}.admin-nav{-webkit-overflow-scrolling:touch;-ms-overflow-style:none;display:flex;flex-direction:row;gap:.25rem;overflow-x:auto;padding:0;scrollbar-width:none}.admin-nav::-webkit-scrollbar{display:none}.admin-nav button{border-radius:20px;flex-shrink:0;font-size:.85rem;margin:0 .125rem;min-width:fit-content;padding:.75rem 1rem;width:auto}.admin-nav button span:not(.nav-icon){display:none}.admin-nav button .nav-icon{font-size:1.2rem}.admin-logout-btn{flex-shrink:0;font-size:.85rem;margin:0 0 0 auto;padding:.75rem 1rem}.admin-header{align-items:flex-start;flex-direction:column;gap:1rem;padding:1rem}.admin-header h1{font-size:1.5rem}.admin-header-info{gap:1rem}.admin-content{padding:1rem}.stats-grid{gap:1rem;grid-template-columns:1fr}.stat-card{padding:1rem}.vehicles-grid{gap:1rem;grid-template-columns:1fr}.vehicle-admin-card{padding:1rem}.analytics-cards{grid-template-columns:1fr}.bookings-table,.users-table{-webkit-overflow-scrolling:touch;overflow-x:auto}.bookings-table table,.users-table table{min-width:600px}.bookings-table td,.bookings-table th,.users-table td,.users-table th{font-size:.85rem;padding:.75rem .5rem}.settings-grid{gap:1rem;grid-template-columns:1fr}.settings-card{padding:1.5rem}.content-editor{padding:1rem}.editor-section{margin-bottom:1.5rem;padding-bottom:1rem}.info-card-editor{padding:1rem}.form-actions{flex-direction:column}.form-actions .save-btn{margin-bottom:.5rem;width:100%}.modal-content{margin:1rem;max-width:none;padding:1.5rem;width:calc(100% - 2rem)}.modal-header{padding:1rem 1rem .5rem}.modal-actions{flex-direction:column;gap:.75rem}.modal-actions button{width:100%}.design-modal{margin:1rem;max-height:calc(100vh - 2rem);width:calc(100% - 2rem)}.design-sections{gap:1rem;grid-template-columns:1fr}.color-section,.preset-section,.preview-section{grid-column:1;padding:1rem}.color-input-wrapper{flex-direction:column;gap:.5rem}.color-picker,.color-text{width:100%}.preset-btn{padding:.75rem}.theme-presets{gap:.75rem}}.success-toast{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#10b981 0,#059669 100%);border:1px solid #fff3;border-radius:12px;box-shadow:0 8px 32px #10b9814d;color:#fff;display:flex;font-weight:600;gap:.75rem;max-width:90vw;min-width:300px;opacity:0;padding:1rem 1.5rem;position:fixed;right:20px;top:20px;transform:translateX(400px);transition:all .4s cubic-bezier(.175,.885,.32,1.275);z-index:10001}.success-toast.show{opacity:1;transform:translateX(0)}.success-toast.hide{opacity:0;transform:translateX(400px)}.success-toast .toast-icon{animation:successBounce .6s ease;font-size:1.5rem}.success-toast .toast-message{flex:1 1;font-size:1rem}.success-toast .toast-close{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;margin-left:.5rem;opacity:.8;padding:0;transition:opacity .2s ease}.success-toast .toast-close:hover{opacity:1}@keyframes successBounce{0%,20%,60%,to{transform:translateY(0)}40%{transform:translateY(-10px)}}@media (max-width:768px){.success-toast{font-size:.9rem;left:10px;max-width:calc(100vw - 20px);min-width:auto;padding:1rem 1.5rem;right:10px;top:10px;transform:translateY(-100px)}.success-toast.show{transform:translateY(0)}.success-toast.hide{transform:translateY(-100px)}}.user-stats-summary{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:1rem}.user-stat-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem;text-align:center;transition:transform .3s ease}.user-stat-card .stat-number{color:#667eea;display:block;font-size:2rem;font-weight:700;margin-bottom:.5rem}.user-stat-card .stat-label{color:#636e72;font-size:.9rem;font-weight:500}.users-table-container{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000014;overflow:hidden}.table-controls{background:#f8f9fa;border-bottom:1px solid #e9ecef;gap:1rem;justify-content:space-between;padding:1.5rem}.search-bar,.table-controls{align-items:center;display:flex}.search-bar{gap:.5rem}.search-btn{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;padding:.75rem;transition:all .3s ease}.search-btn:hover{background:#5a67d8}.filter-options{align-items:center;display:flex;gap:1rem}.filter-select{background:#fff;border:1px solid #dfe6e9;border-radius:6px;padding:.75rem}.export-btn{background:#00b894;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.export-btn:hover{background:#00a085}.user-info{gap:1rem}.user-avatar,.user-info{align-items:center;display:flex}.user-avatar{background:#667eea;border-radius:50%;color:#fff;font-size:1.2rem;font-weight:600;height:40px;justify-content:center;width:40px}.user-details{display:flex;flex-direction:column}.user-name{color:#2d3436;font-weight:600}.user-kana{color:#636e72;font-size:.8rem}.points-display{background:#fdcb6e 0,#e17055 100%);border-radius:20px;color:#fff;font-size:.8rem;font-weight:600;padding:.25rem .75rem}.status-vip{background:#fd79a8 0,#fdcb6e 100%);color:#fff}.status-premium{background:#a29bfe 0,#6c5ce7 100%);color:#fff}.status-regular{background:#dfe6e9;color:#636e72}.user-actions{display:flex;gap:.5rem}.action-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .3s ease;width:32px}.action-btn.view{background:#74b9ff;color:#fff}.action-btn.edit{background:#fdcb6e;color:#fff}.action-btn.message{background:#00b894;color:#fff}.action-btn.delete{background:#d63031;color:#fff}.action-btn.delete:hover{background:#c62828}.member-number{background:#667eea1a;border-radius:4px;color:#667eea;font-family:monospace;font-size:12px;font-weight:600;letter-spacing:.5px;padding:4px 8px}.action-btn:hover{transform:scale(1.1)}.settings-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.settings-card{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.5rem;transition:transform .3s ease}.settings-card h3{color:#2d3436;font-size:1.25rem;margin-bottom:1rem}.design-btn,.save-settings-btn{background:#667eea;border:none;border-radius:10px;color:#fff;cursor:pointer;font-weight:600;padding:1rem;transition:all .3s ease;width:100%}.design-btn:hover,.save-settings-btn:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}.setting-item{margin-bottom:1.5rem}.setting-item label{color:#2d3436;display:block;font-weight:600;margin-bottom:.5rem}.setting-item input,.setting-item select{border:2px solid #e9ecef;border-radius:8px;font-size:.9rem;padding:.75rem;transition:border-color .3s ease;width:100%}.setting-item input:focus,.setting-item select:focus{border-color:#667eea;outline:none}.setting-item small{color:#636e72;display:block;font-size:.8rem;margin-top:.5rem}.checkbox-group{display:flex;flex-direction:column;gap:.5rem}.checkbox-group label{align-items:center;display:flex;font-weight:400;gap:.5rem;margin-bottom:0}.setting-actions{display:flex;flex-direction:column;gap:1rem}.danger-btn{background:#d63031 0,#e84393 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem;transition:all .3s ease}.danger-btn:hover{box-shadow:0 8px 25px #d630314d;transform:translateY(-2px)}.backup-btn{background:#00b894 0,#00cec9 100%);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem;transition:all .3s ease}.backup-btn:hover{box-shadow:0 8px 25px #00b8944d;transform:translateY(-2px)}.design-modal{max-height:90vh;max-width:900px;width:95%}.design-sections{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:1rem}.color-section,.preset-section,.preview-section{background:#f8f9fa;border-radius:12px;padding:1.5rem}.color-section{grid-column:1/2}.preset-section{grid-column:2/2}.preview-section{grid-column:1/-1}.color-inputs{display:flex;flex-direction:column;gap:1rem}.color-input-group label{color:#2d3436;font-weight:600;margin-bottom:.5rem}.color-input-wrapper{align-items:center;display:flex;gap:.5rem}.color-picker{cursor:pointer;height:40px;width:50px}.color-picker,.color-text{border:2px solid #e9ecef;border-radius:8px}.color-text{flex:1 1;font-family:monospace;padding:.75rem}.theme-presets{display:flex;flex-direction:column;gap:1rem}.preset-btn{align-items:center;background:#fff;border:2px solid #e9ecef;border-radius:10px;cursor:pointer;display:flex;gap:1rem;padding:1rem;transition:all .3s ease}.preset-btn:hover{background:#f8f9fa;border-color:#667eea}.preset-colors{display:flex;gap:.25rem}.preset-colors span{border-radius:50%;height:20px;width:20px}.design-preview{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.preview-header{color:#fff;gap:1rem;padding:1rem}.preview-header,.preview-logo{align-items:center;display:flex}.preview-logo{background:#fff3;border-radius:10px;font-size:1.2rem;font-weight:600;height:40px;justify-content:center;width:40px}.preview-content{padding:1.5rem}.preview-button{border-radius:25px;color:#fff;display:inline-block;font-weight:600;margin-bottom:1.5rem;padding:.75rem 2rem}.preview-card{background:#fff;border-radius:12px;border-top:4px solid;box-shadow:0 2px 10px #0000001a;padding:1.5rem}.preview-card h4{font-size:1.1rem;margin:0 0 .5rem}.preview-card p{color:#636e72;margin:0}.design-actions{border-top:1px solid #e9ecef;padding-top:2rem}.content-editor{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:1.5rem}.content-editor h2{color:#2d3436;font-size:1.75rem;margin-bottom:1rem}.editor-section{border-bottom:1px solid #e9ecef;margin-bottom:2.5rem;padding-bottom:2rem}.editor-section:last-of-type{border-bottom:none}.editor-section h3{align-items:center;color:#2d3436;display:flex;font-size:1.25rem;gap:.5rem;margin-bottom:1.5rem}.info-card-editor{background:#f8f9fa;border-radius:12px;margin-bottom:1.5rem;padding:1.5rem}.info-card-editor h4{color:#667eea;font-size:1.1rem;margin-bottom:1rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.form-actions .save-btn{background:#667eea;border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:1.1rem;font-weight:600;padding:1rem 1.5rem;transition:all .3s ease}.form-actions .save-btn:hover{box-shadow:0 8px 25px #667eea4d;transform:translateY(-2px)}@media (max-width:768px){.design-sections{grid-template-columns:1fr}.color-section,.preset-section,.preview-section{grid-column:1}.design-modal{margin:1rem;width:95%}}.stat-card.clickable{cursor:pointer;position:relative;transition:all .3s ease}.stat-card.clickable:hover{box-shadow:0 8px 25px #00000026;transform:translateY(-4px)}.card-arrow{color:#0000004d;font-size:16px;position:absolute;right:20px;top:50%;transform:translateY(-50%);transition:all .3s ease}.stat-card.clickable:hover .card-arrow{color:#0009;transform:translateY(-50%) translateX(5px)}.details-section{max-width:1200px}.details-header{border-bottom:2px solid #e9ecef;margin-bottom:30px;padding:20px 0}.back-to-overview-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;margin-bottom:15px;padding:12px 24px;transition:all .3s ease}.back-to-overview-btn:hover{box-shadow:0 6px 20px #667eea4d;transform:translateY(-2px)}.details-subtitle{color:#636e72;font-size:16px;margin:10px 0 0}.monthly-chart{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;margin-bottom:30px;padding:30px}.chart-container{overflow-x:auto;padding-bottom:10px;width:100%}.chart-bars{align-items:flex-end;display:flex;gap:8px;justify-content:space-between;min-height:250px;min-width:800px;padding:20px 0}.chart-bar-group{align-items:center;display:flex;flex:1 1;flex-direction:column}.chart-bar{align-items:flex-end;border-radius:4px 4px 0 0;display:flex;justify-content:center;max-width:50px;min-height:10px;padding:5px;position:relative;transition:all .3s ease;width:100%}.chart-bar:hover{opacity:.8;transform:scale(1.05)}.chart-bar.confirmed{background:linear-gradient(0deg,#00b894 0,#55efc4)}.chart-bar.cancelled{background:linear-gradient(0deg,#d63031 0,#fd79a8)}.chart-bar.active{background:linear-gradient(0deg,#0984e3 0,#74b9ff)}.chart-bar.completed{background:linear-gradient(0deg,#6c5ce7 0,#a29bfe)}.chart-bar.revenue{background:linear-gradient(0deg,#00b894 0,#55efc4)}.chart-bar.cancelled-revenue{background:linear-gradient(0deg,#d63031 0,#fd79a8)}.bar-value{color:#fff;text-orientation:mixed;text-shadow:0 1px 2px #0000004d;writing-mode:vertical-rl}.bar-value,.chart-label{font-size:12px;font-weight:600}.chart-label{color:#636e72;margin-top:10px;text-align:center}.details-summary{margin-bottom:30px}.summary-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.summary-card{background:#fff;border-left:4px solid #667eea;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:24px;text-align:center}.summary-card h3{color:#636e72;font-size:14px;letter-spacing:.5px;margin-bottom:10px;text-transform:uppercase}.summary-number{color:#2d3436;font-size:24px;font-weight:700;margin:0}.details-table{background:#fff;border-radius:12px;box-shadow:0 4px 20px #0000001a;padding:30px}.details-table h3{color:#2d3436;margin-bottom:20px}.details-table table{border-collapse:collapse;width:100%}.details-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#636e72;font-weight:600;padding:15px;text-align:left}.details-table td{border-bottom:1px solid #e9ecef;padding:15px}.details-table .positive{color:#00b894;font-weight:600}.details-table .negative{color:#d63031;font-weight:600}@media (max-width:768px){.chart-bars{min-width:600px}.summary-grid{grid-template-columns:1fr 1fr}.bar-value{font-size:10px}.details-table{overflow-x:auto}}.postal-code-field{align-items:center;display:flex;gap:.5rem}.postal-code-field input{flex:1 1}.address-search-btn{background:#667eea;border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;min-width:100px;padding:.75rem 1rem;transition:all .3s ease;white-space:nowrap}.address-search-btn:hover:not(:disabled){background:#5a67d8 0,#6b46c1 100%);box-shadow:0 4px 15px #667eea4d;transform:translateY(-2px)}.address-search-btn:disabled{background:#ccc;box-shadow:none;cursor:not-allowed;transform:none}.form-group small{color:#666;display:block;font-size:.85rem;font-style:italic;margin-top:.25rem}.form-group input.loading,.form-group select.loading{animation:loading-shimmer 1.5s infinite;background:linear-gradient(90deg,#f0f0f0 25%,#e0e0e0 50%,#f0f0f0 75%);background-size:200% 100%}.vehicle-category{margin-bottom:30px}.category-title{align-items:center;background:linear-gradient(135deg,#e8f5e8,#f1f8e9);border:2px solid #e8f5e8;border-left:5px solid #43a047;border-radius:12px;color:#2e7d32;display:flex;font-size:1.4rem;font-weight:600;gap:8px;margin-bottom:15px;padding:12px 20px}.category-title:hover{background:linear-gradient(135deg,#e1f5e1,#eaf7eb);border-color:#c8e6c9;transform:translateY(-1px);transition:all .3s ease}.no-vehicles-message{background:#f9f9f9;border:2px dashed #ddd;border-radius:8px;color:#666;font-style:italic;margin-top:10px;padding:40px 20px;text-align:center}.no-vehicles-message p{font-size:1.1rem;margin:0}.tile-text-section{border-top:1px solid #e0e0e0;margin-top:30px;padding-top:20px}.tile-text-section h4{align-items:center;color:#2e7d32;display:flex;font-size:1.1rem;gap:8px;margin-bottom:15px}.tile-text-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:25px}.tile-text-grid .form-group{margin-bottom:0}.tile-text-grid .form-group label{color:#555;font-size:.9rem;font-weight:500}.tile-text-grid .form-group input{border:1px solid #ddd;border-radius:6px;font-size:.9rem;padding:8px 12px;transition:border-color .2s ease}.tile-text-grid .form-group input:focus{border-color:#43a047;box-shadow:0 0 0 2px #43a0471a;outline:none}.tile-text-grid .form-group input::placeholder{color:#999;font-style:italic}.deleted-vehicles-management{margin:0 auto;max-width:1200px;padding:20px}.deleted-vehicles-management .header{margin-bottom:30px;text-align:center}.deleted-vehicles-management h2{color:#666;font-size:28px;margin-bottom:8px}.deleted-vehicles-management .subtitle{color:#888;font-size:16px;margin-bottom:20px}.deleted-vehicles-management .stats{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:10px;display:flex;gap:20px;justify-content:center;padding:15px}.deleted-vehicles-management .count{color:#666;font-size:16px;font-weight:600}.deleted-vehicles-management .refresh-btn{background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px;transition:background-color .2s}.deleted-vehicles-management .refresh-btn:hover{background:#0056b3}.deleted-vehicles-management .refresh-btn:disabled{background:#ccc;cursor:not-allowed}.deleted-vehicles-management .empty-state{color:#666;padding:60px 20px;text-align:center}.deleted-vehicles-management .empty-icon{font-size:64px;margin-bottom:20px}.deleted-vehicles-management .empty-state h3{color:#333;font-size:24px;margin-bottom:10px}.deleted-vehicles-management .empty-state p{color:#888;font-size:16px}.deleted-vehicles-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));margin-top:20px}.deleted-vehicle-card{background:#fff;border:2px solid #ffebee;border-radius:12px;box-shadow:0 4px 6px #0000001a;overflow:hidden;transition:transform .2s,box-shadow .2s}.deleted-vehicle-card:hover{box-shadow:0 6px 12px #00000026;transform:translateY(-2px)}.deleted-vehicle-card .vehicle-image{height:200px;overflow:hidden;position:relative}.deleted-vehicle-card .vehicle-image img{filter:grayscale(50%) opacity(.8);height:100%;object-fit:cover;width:100%}.deleted-vehicle-card .no-image{align-items:center;background:#f5f5f5;color:#999;display:flex;filter:grayscale(50%) opacity(.8);font-size:18px;height:100%;justify-content:center;width:100%}.deleted-badge{background:#ff4757;border-radius:4px;box-shadow:0 2px 4px #0003;color:#fff;font-size:12px;font-weight:600;padding:4px 8px;position:absolute;right:10px;top:10px}.deleted-vehicle-card .vehicle-info{padding:16px}.deleted-vehicle-card .vehicle-name{color:#333;font-size:18px;font-weight:600;margin-bottom:8px;opacity:.7;text-decoration:line-through}.deleted-vehicle-card .vehicle-details{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.deleted-vehicle-card .vehicle-type{background:#e9ecef;border-radius:4px;color:#666;font-size:14px;padding:4px 8px}.deleted-vehicle-card .vehicle-price{color:#999;font-size:16px;font-weight:600}.deleted-vehicle-card .vehicle-meta{border-top:1px solid #eee;color:#888;font-size:12px;margin-top:8px;padding-top:8px}.deleted-vehicle-card .action-buttons{background:#f8f9fa;display:flex;gap:8px;padding:16px}.deleted-vehicle-card .restore-btn{background:#28a745;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 16px;transition:background-color .2s}.deleted-vehicle-card .restore-btn:hover{background:#218838}.deleted-vehicle-card .permanent-delete-btn{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:10px 16px;transition:background-color .2s}.deleted-vehicle-card .permanent-delete-btn:hover{background:#c82333}.deleted-vehicle-card .action-buttons button:disabled{background:#6c757d;cursor:not-allowed}@media (max-width:768px){.deleted-vehicles-grid{gap:15px;grid-template-columns:1fr}.deleted-vehicles-management{padding:15px}.deleted-vehicles-management .stats{flex-direction:column;gap:10px}.deleted-vehicle-card .action-buttons{flex-direction:column}}.deleted-vehicles-management .loading-container{padding:60px 20px;text-align:center}.deleted-vehicles-management .loading-spinner{margin:0 auto 30px}.deleted-vehicles-management .loading-spinner:after{content:"🗑️"!important;font-size:18px!important}.terms-container{background:linear-gradient(135deg,#f8f9fa,#e9ecef);min-height:calc(100vh - 160px);padding:2rem}.terms-header{margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:800px;text-align:center}.terms-header h1{color:#2d3436;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.last-updated{color:#74b9ff}.back-btn{background:linear-gradient(135deg,#667eea,#764ba2)}.back-btn:hover{box-shadow:0 4px 15px #667eea4d}.terms-content{margin:0 auto;max-width:1000px}.terms-intro{background:#fff;border-left:4px solid #43a047;border-radius:20px;box-shadow:0 10px 40px #0000001a;margin-bottom:2rem;padding:2rem}.terms-intro p{color:#636e72;font-size:1.1rem;line-height:1.7;margin:0}.terms-sections{display:flex;flex-direction:column;gap:1.5rem}.terms-section{background:#fff;border-left:4px solid #74b9ff;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem;transition:all .3s ease}.terms-section:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.terms-section h2{border-bottom:2px solid #e9ecef;color:#2d3436;font-size:1.3rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem}.terms-text{color:#555;line-height:1.8}.terms-text p{font-size:.95rem;margin-bottom:.8rem}.terms-text p:last-child{margin-bottom:0}.terms-footer{border-top:2px solid #e9ecef;margin-top:3rem;padding:2rem 0}.terms-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-primary{background:linear-gradient(135deg,#43a047,#66bb6a)}.btn-primary:hover{background:linear-gradient(135deg,#388e3c,#5a9f5d);box-shadow:0 5px 20px #43a0474d}@media (max-width:768px){.terms-container{padding:1rem}.terms-header h1{font-size:2rem}.contact-info,.terms-intro,.terms-section{padding:1.5rem}.terms-section h2{font-size:1.1rem}.terms-text p{font-size:.9rem}.terms-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media print{.terms-container{background:#fff;padding:0}.back-btn,.terms-actions{display:none}.contact-info,.terms-intro,.terms-section{border:1px solid #ddd;box-shadow:none;break-inside:avoid;margin-bottom:1rem;page-break-inside:avoid}.terms-header h1,.terms-section h2{color:#000}}.privacy-container{background:linear-gradient(135deg,#f0f8ff,#e6f3ff);min-height:calc(100vh - 160px);padding:2rem}.loading-spinner{align-items:center;display:flex;flex-direction:column;justify-content:center;min-height:300px;text-align:center}.loading-spinner .spinner{animation:spin 1s linear infinite;font-size:3rem;margin-bottom:1rem}.loading-spinner p{color:#636e72;font-size:1.1rem}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.privacy-header{margin-bottom:3rem;margin-left:auto;margin-right:auto;max-width:800px;text-align:center}.privacy-header h1{color:#2d3436;font-size:2.5rem;font-weight:700;margin-bottom:1rem}.last-updated{color:#6c5ce7;font-size:1rem;font-weight:500;margin-bottom:2rem}.back-btn{background:linear-gradient(135deg,#6c5ce7,#a29bfe);border:none;border-radius:8px;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .3s ease}.back-btn:hover{box-shadow:0 4px 15px #6c5ce74d;transform:translateY(-2px)}.privacy-content{margin:0 auto;max-width:1000px}.privacy-intro{background:#fff;border-left:4px solid #6c5ce7;border-radius:20px;box-shadow:0 10px 40px #0000001a;margin-bottom:2rem;padding:2rem}.privacy-intro p{color:#636e72;font-size:1.1rem;line-height:1.7;margin:0}.privacy-sections{display:flex;flex-direction:column;gap:1.5rem}.privacy-section{background:#fff;border-left:4px solid #a29bfe;border-radius:16px;box-shadow:0 4px 20px #00000014;padding:2rem;transition:all .3s ease}.privacy-section:hover{box-shadow:0 8px 30px #0000001f;transform:translateY(-2px)}.privacy-section h2{border-bottom:2px solid #e9ecef;color:#2d3436;font-size:1.3rem;font-weight:700;margin-bottom:1rem;padding-bottom:.5rem}.privacy-text{color:#555;line-height:1.8}.privacy-text p{font-size:.95rem;margin-bottom:.8rem}.privacy-text p:last-child{margin-bottom:0}.privacy-footer{border-top:2px solid #e9ecef;margin-top:3rem;padding:2rem 0}.contact-info{background:#fff;border-left:4px solid #fd79a8;border-radius:16px;box-shadow:0 4px 20px #00000014;margin-bottom:2rem;padding:2rem}.contact-info h3{color:#2d3436;font-size:1.2rem;font-weight:600;margin-bottom:1rem}.contact-info p{color:#636e72;font-size:.95rem;line-height:1.6;margin:0}.privacy-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}.btn-primary,.btn-secondary{border:none;border-radius:12px;cursor:pointer;font-size:1rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.btn-primary{background:linear-gradient(135deg,#6c5ce7,#a29bfe);color:#fff}.btn-primary:hover{background:linear-gradient(135deg,#5b4bd5,#9085e8);box-shadow:0 5px 20px #6c5ce74d;transform:translateY(-2px)}.btn-secondary{background:#fff;border:2px solid #ddd;color:#636e72}.btn-secondary:hover{background:#f8f9fa;border-color:#adb5bd;transform:translateY(-2px)}@media (max-width:768px){.privacy-container{padding:1rem}.privacy-header h1{font-size:2rem}.contact-info,.privacy-intro,.privacy-section{padding:1.5rem}.privacy-section h2{font-size:1.1rem}.privacy-text p{font-size:.9rem}.privacy-actions{flex-direction:column}.btn-primary,.btn-secondary{width:100%}}@media print{.privacy-container{background:#fff;padding:0}.back-btn,.privacy-actions{display:none}.contact-info,.privacy-intro,.privacy-section{border:1px solid #ddd;box-shadow:none;break-inside:avoid;margin-bottom:1rem;page-break-inside:avoid}.privacy-header h1,.privacy-section h2{color:#000}}.announcement-detail-page{background:var(--extra-light-gray);min-height:calc(100vh - 160px);padding:40px 20px}.announcement-container{margin:0 auto;max-width:800px}.announcement-header{margin-bottom:30px}.back-button{align-items:center;background:var(--green);border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.back-button:hover{background:var(--green-hover);box-shadow:0 5px 15px #43a0474d;transform:translateY(-2px)}.back-button.primary{background:var(--gradient-2);border-radius:30px;box-shadow:0 4px 15px #43a0474d;font-size:16px;font-weight:600;padding:15px 40px}.loading-message{color:var(--gray);font-size:18px;padding:60px 20px;text-align:center}.not-found-message{background:#fff;border-radius:15px;box-shadow:0 5px 20px #43a0471a;padding:60px 20px;text-align:center}.not-found-message h2{color:var(--dark-gray);font-size:24px;margin-bottom:15px}.not-found-message p{color:var(--gray);font-size:16px;line-height:1.6;margin-bottom:30px}.announcement-content{background:#fff;border:1px solid #43a0471a;border-radius:15px;box-shadow:0 5px 20px #43a0471a;margin-bottom:30px;padding:40px}.announcement-meta{align-items:center;border-bottom:1px solid var(--light-gray);display:flex;gap:15px;margin-bottom:25px;padding-bottom:20px}.announcement-date{background:var(--green-pale);color:var(--green-dark)}.announcement-category,.announcement-date{border-radius:20px;font-size:14px;font-weight:500;padding:6px 16px}.announcement-category{background:var(--gradient-2);color:#fff}.announcement-title{color:var(--dark-gray);font-size:28px;font-weight:700;line-height:1.4;margin-bottom:30px}.announcement-body{color:var(--dark-gray);font-size:16px;line-height:1.8}.announcement-body p{margin-bottom:20px}.announcement-body p:last-child{margin-bottom:0}.announcement-footer{text-align:center}@media (max-width:768px){.announcement-detail-page{padding:20px 15px}.announcement-content{padding:25px 20px}.announcement-title{font-size:22px}.announcement-meta{align-items:flex-start;flex-direction:column;gap:10px}.back-button.primary{font-size:14px;padding:12px 30px}}.camping-space-page{background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh}.camping-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;color:#fff;padding:80px 20px 40px;text-align:center}.header-content h1{font-size:4rem;font-weight:700;letter-spacing:.2rem;margin-bottom:2rem;text-shadow:2px 2px 4px #0000004d}.header-image{border-radius:20px;box-shadow:0 20px 40px #0000004d;margin:0 auto;max-width:1200px;overflow:hidden}.header-image img{display:block;height:400px;object-fit:cover;width:100%}.camping-container{margin:-20px auto 0;max-width:1200px;padding:0 20px 40px}.camping-container section{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000001a;margin-bottom:2rem;padding:3rem}.camping-container h2{color:#333;font-size:2rem;margin-bottom:2rem;padding-bottom:1rem;position:relative;text-align:center}.camping-container h2:after{background:linear-gradient(135deg,#667eea,#764ba2);bottom:0;content:"";height:3px;left:50%;position:absolute;transform:translateX(-50%);width:60px}.intro-section p{color:#666;font-size:1.1rem}.facilities-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-top:2rem}.facility-card{background:#f8f9fa;border-radius:15px;padding:1.5rem;text-align:center;transition:transform .3s ease}.facility-card:hover{transform:translateY(-5px)}.facility-icon{font-size:3rem;margin-bottom:1rem}.facility-card h3{color:#333;font-size:1.2rem;margin-bottom:.5rem}.facility-card p{color:#666;font-size:.9rem}.pricing-cards{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.pricing-single{display:flex;justify-content:center;margin-top:2rem}.pricing-single .pricing-card{max-width:400px;width:100%}.pricing-card{background:#fff;border:2px solid #e0e0e0;border-radius:20px;padding:2rem;transition:transform .3s ease,box-shadow .3s ease}.pricing-card:hover{box-shadow:0 15px 30px #00000026;transform:translateY(-5px)}.pricing-card.featured{border-color:#667eea}.featured-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;font-size:.85rem;padding:5px 15px;right:20px;top:-10px}.pricing-card h3{font-size:1.5rem;margin-bottom:1rem}.price{color:#667eea;font-size:2.5rem}.price-description,.price-period{font-size:.9rem;margin-bottom:1rem}.price-description{background:#f8f9fa;border-left:3px solid #667eea;border-radius:8px;color:#666;line-height:1.4;padding:.8rem}.power-pricing{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-radius:8px;color:#333;font-size:1rem;font-weight:700;margin-bottom:1.5rem;padding:.5rem;text-align:center}.pricing-card li{padding:.5rem 0 .5rem 1.5rem}.pricing-card li:before{color:#667eea}.rules-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:2rem}.rule-item{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;padding:1rem}.rule-icon{font-size:1.5rem;margin-right:1rem}.rule-item p{color:#666;flex:1 1;margin:0}.info-card{background:#fff;color:#333}.info-card h3,.info-card p,.info-card span{color:#333!important}.info-card:hover{box-shadow:0 12px 30px #0000001f}.phone-card{background:linear-gradient(135deg,#43a047,#66bb6a);color:#fff}.phone-card .click-hint,.phone-card .contact-hours,.phone-card .contact-value,.phone-card .info-details h3{color:#fff!important}.location-card{background:#fff}.info-details h3{color:#333!important}.map-button{background:linear-gradient(135deg,#667eea,#764ba2)}.nearby-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin-top:2rem}.nearby-item{background:#f8f9fa;border-radius:15px;padding:1.5rem;text-align:center}.nearby-icon{display:block;font-size:2.5rem;margin-bottom:1rem}.nearby-item h4{color:#333;font-size:1.1rem;margin:.5rem 0}.nearby-item p{color:#999;font-size:.9rem;margin:0}@media (max-width:768px){.header-content h1{font-size:2.5rem;letter-spacing:.1rem}.header-image img{height:250px}.camping-container section{padding:2rem 1.5rem}.facilities-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.pricing-card.featured{transform:scale(1)}.rules-grid{grid-template-columns:1fr}}.spaciva-page{min-height:100vh;overflow-x:hidden;position:relative}.spaciva-background{background-position:50%;background-repeat:repeat-y;background-size:cover;height:100%;left:0;position:fixed;top:0;width:100%;z-index:-2}.spaciva-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;box-shadow:0 4px 20px #0000001a;padding:100px 20px 60px;position:relative;text-align:center;z-index:1}.spaciva-logo{filter:drop-shadow(2px 2px 4px rgba(0,0,0,.1));height:auto;margin-bottom:1rem;max-width:600px;width:100%}.spaciva-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b9d,#c44569);-webkit-background-clip:text;background-clip:text;font-size:4.5rem;font-weight:700;letter-spacing:.3rem;margin-bottom:1rem;text-shadow:2px 2px 4px #0000001a}.spaciva-subtitle{color:#666;font-size:1.3rem;font-weight:300;letter-spacing:.1rem}.spaciva-container{margin:0 auto;max-width:1200px;padding:40px 20px;position:relative;z-index:1}.spaciva-container .contact-section,.spaciva-container section{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border:1px solid #fff3;border-radius:25px;box-shadow:0 15px 35px #0000001a;margin-bottom:2rem;padding:3rem}.spaciva-container .contact-section-title,.spaciva-container h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b9d,#c44569);-webkit-background-clip:text;background-clip:text;font-size:2.2rem;margin-bottom:2rem;padding-bottom:1rem;position:relative;text-align:center}.spaciva-container .contact-section-title:after,.spaciva-container h2:after{background:linear-gradient(135deg,#ff6b9d,#c44569);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.intro-section{text-align:center}.intro-section p{color:#555;font-size:1.2rem;line-height:1.8;margin:0 auto;max-width:800px}.services-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-top:2rem}.service-card{background:linear-gradient(135deg,#ff6b9d1a,#c445691a);border:2px solid #ff6b9d33;border-radius:20px;overflow:hidden;padding:2rem;position:relative;text-align:center;transition:all .3s ease}.service-card:before{background:linear-gradient(45deg,#0000,#ffffff4d,#0000);content:"";height:200%;left:-50%;opacity:0;position:absolute;top:-50%;transform:rotate(45deg);transition:all .6s ease;width:200%}.service-card:hover:before{animation:shimmer .6s ease;opacity:1}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg)}to{transform:translateX(100%) translateY(100%) rotate(45deg)}}.service-card:hover{border-color:#ff6b9d80;box-shadow:0 20px 40px #ff6b9d4d;transform:translateY(-10px)}.service-icon{display:block;font-size:3.5rem;margin-bottom:1.5rem}.service-card h3{color:#333;font-size:1.4rem;margin-bottom:1rem;position:relative;z-index:1}.service-card p{color:#666;font-size:1rem;line-height:1.6;position:relative;z-index:1}.pricing-cards{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));margin-top:2rem}.pricing-card{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:2px solid #ff6b9d33;border-radius:25px;padding:2.5rem;position:relative;text-align:center;transition:all .3s ease}.pricing-card:hover{border-color:#ff6b9d66;box-shadow:0 20px 40px #ff6b9d33;transform:translateY(-8px)}.pricing-card.featured{background:linear-gradient(135deg,#ff6b9d1a,#c445691a);border-color:#ff6b9d;transform:scale(1.05)}.featured-badge{background:linear-gradient(135deg,#ff6b9d,#c44569);border-radius:25px;box-shadow:0 4px 15px #ff6b9d4d;color:#fff;font-size:.9rem;font-weight:700;padding:8px 20px;position:absolute;right:25px;top:-12px}.pricing-card h3{color:#333;font-size:1.6rem;margin-bottom:1.5rem}.price{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#ff6b9d,#c44569);-webkit-background-clip:text;background-clip:text;font-size:3rem;font-weight:700;margin:1rem 0 .5rem}.price-period{color:#999;font-size:1rem;margin-bottom:2rem}.pricing-card ul{list-style:none;padding:0;text-align:left}.pricing-card li{border-bottom:1px solid #ff6b9d1a;color:#666;padding:.8rem 0 .8rem 2rem;position:relative}.pricing-card li:last-child{border-bottom:none}.pricing-card li:before{color:#ff6b9d;content:"✓";font-size:1.2rem;font-weight:700;left:0;position:absolute}.pricing-note{background:linear-gradient(135deg,#ff6b9d1a,#c445691a);border:2px solid #ff6b9d33;border-radius:15px;margin-top:2rem;padding:1.5rem;text-align:center}.pricing-note p{color:#ff6b9d;font-size:1.1rem;font-weight:600;margin:0}.contact-info-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin:2rem auto 0;max-width:1200px}.info-card{align-items:flex-start;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#ffffffe6;border:1px solid #ff6b9d33;border-radius:20px;box-shadow:0 8px 20px #00000014;cursor:pointer;display:flex;gap:1.5rem;padding:2rem;transition:all .3s ease}.info-card:hover{box-shadow:0 12px 30px #ff6b9d26;transform:translateY(-5px)}.line-card{background:linear-gradient(135deg,#00c851,#00a841);color:#fff}.line-card .click-hint,.line-card .contact-hours,.line-card .contact-value,.line-card .info-details h3{color:#fff!important}.instagram-card{background:linear-gradient(135deg,#f09433,#e6683c 25%,#dc2743 50%,#cc2366 75%,#bc1888);color:#fff}.instagram-card .click-hint,.instagram-card .contact-hours,.instagram-card .contact-value,.instagram-card .info-details h3{color:#fff!important}.location-card{background:#fffffff2}.info-icon{flex-shrink:0;font-size:3rem;line-height:1}.info-details{flex:1 1;min-width:0}.info-details h3{color:#333;font-size:1.3rem;font-weight:700;margin-bottom:1rem}.contact-value{color:#444;font-size:1.2rem;font-weight:700;margin:.5rem 0}.phone-number{font-size:1.5rem}.address-text{line-height:1.6}.contact-hours{display:block;font-size:.9rem;margin:.3rem 0;opacity:.9}.click-hint{font-size:.9rem;margin-top:1rem;opacity:.8}.map-actions{display:flex;flex-wrap:wrap;gap:.8rem;margin-top:1rem}.map-button{background:linear-gradient(135deg,#ff6b9d,#c44569);border:none;border-radius:20px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:700;padding:10px 20px;transition:all .3s ease}.route-button{background:linear-gradient(135deg,#43a047,#66bb6a)}.map-button:hover{box-shadow:0 5px 15px #0003;transform:translateY(-2px)}@media (max-width:768px){.spaciva-logo{max-width:350px}.spaciva-title{font-size:3rem;letter-spacing:.2rem}.spaciva-subtitle{font-size:1.1rem}.spaciva-container .contact-section,.spaciva-container section{padding:2rem 1.5rem}.services-grid{gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.pricing-card.featured{transform:scale(1)}.pricing-cards{grid-template-columns:1fr}}
/*# sourceMappingURL=main.7ccecfe7.css.map*/