@import"https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&family=Playfair+Display:wght@700&display=swap";@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";*{margin:0;padding:0;box-sizing:border-box}body{font-family:Poppins,sans-serif;background:#f8f8f8;color:#2d3436;line-height:1.6}.app{min-height:100vh;display:flex;flex-direction:column}.navbar{background:#1D3557;padding:0 2rem;height:64px;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 8px #1d355733;position:sticky;top:0;z-index:100}.app-top-nav{background:#1D3557;color:#fff;padding:.9rem 1.25rem;display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.9rem;position:sticky;top:0;z-index:120}.app-top-brand-wrap{min-width:max-content}.app-top-brand{color:#ffb703;text-decoration:none;font-size:1.35rem;font-weight:700;display:inline-flex;align-items:center;gap:.45rem;line-height:1}.app-top-brand-logo{width:34px;height:34px;border-radius:8px;object-fit:cover}.app-top-links{display:flex;align-items:center;justify-content:flex-end;gap:.8rem;min-width:0;flex-wrap:nowrap}.app-top-links a,.app-bottom-info-links a{color:#fff;text-decoration:none;font-weight:500;font-size:.93rem}.app-top-signup-link{color:#ffb703!important}.app-top-actions{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;min-width:max-content}.app-top-user-name{color:#fff;font-size:.9rem;opacity:.92}.app-top-logout-btn{background:transparent;border:1px solid rgba(255,255,255,.7);color:#fff;padding:.33rem .6rem;border-radius:7px;cursor:pointer}.app-main{min-height:calc(100vh - 72px)}.app-main-with-nav{padding:1.25rem}.app-bottom-info{background:#1D3557;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem}.app-bottom-info-links{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.app-bottom-signup-link{color:#ffb703!important}.app-bottom-logout-btn{border:1px solid rgba(255,255,255,.65);background:transparent;color:#fff;border-radius:7px;padding:.32rem .58rem;cursor:pointer;font-size:.88rem}.nav-logo{display:flex;align-items:center;gap:.5rem;font-size:1.5rem;font-weight:700;color:#ffb703;text-decoration:none;letter-spacing:-.5px;margin-bottom:1rem}.nav-logo img{height:36px;width:36px;border-radius:8px}.nav-links{display:flex;align-items:center}.nav-links a{text-decoration:none;color:#fffc;font-weight:500;font-size:.9rem;transition:color .2s}.nav-links a:hover{color:#ffb703}.nav-btn{padding:.4rem 1rem;border-radius:8px;font-size:.9rem;cursor:pointer;border:none;text-decoration:none;font-weight:500}.primary-btn{background:#FFB703;color:#1d3557!important;font-weight:600}.primary-btn:hover{background:#e6a503}.logout-btn{background:transparent;color:#ffffffb3;font-family:Poppins,sans-serif}.logout-btn:hover{color:#e63946}.main-content{flex:1}.hero{background:linear-gradient(135deg,#1D3557 0%,#06D6A0 50%,#FFB703 100%);padding:5rem 2rem;text-align:center;color:#fff;position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");opacity:.3}.hero-content{position:relative;z-index:1}.hero h1{font-size:3rem;font-weight:700;margin-bottom:1rem;letter-spacing:-1px;font-family:Playfair Display,serif;text-shadow:0 2px 4px rgba(0,0,0,.2)}.hero p{font-size:1.2rem;opacity:.95;max-width:600px;margin:0 auto 2rem}.hero-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:10px;font-weight:600;font-size:.95rem;cursor:pointer;border:none;text-decoration:none;transition:all .2s;font-family:Poppins,sans-serif}.btn-primary{background:#E63946;color:#fff}.btn-primary:hover{background:#c5303c;transform:translateY(-1px)}.btn-secondary{background:white;color:#1d3557;border:2px solid #1D3557}.btn-secondary:hover{background:#f0f4f8;transform:translateY(-1px)}.btn-danger{background:#E63946;color:#fff}.btn-danger:hover{background:#c5303c}.btn-sm{padding:.5rem 1rem;font-size:.85rem;width:100%;text-align:center;margin-top:.75rem}.btn-lg{padding:1rem 2rem;font-size:1rem;width:100%}.section{padding:3rem 2rem;max-width:1200px;margin:0 auto}.section h2{font-size:1.8rem;margin-bottom:1.5rem;color:#1d3557;font-family:Playfair Display,serif}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem;margin-bottom:1.5rem}.card{background:white;border-radius:16px;overflow:hidden;box-shadow:0 2px 12px #1d355714;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #1d355724}.card-img{width:100%;height:200px;object-fit:cover}.guide-card .card-img{height:200px;width:200px;border-radius:50%;margin:1.5rem auto 0;display:block;border:3px solid #FFB703}.card-body h3{font-size:1.1rem;margin-bottom:.25rem;color:#1d3557}.card-location{color:#636e72;font-size:.85rem;margin-bottom:.5rem}.card-year{color:#b2bec3;font-size:.8rem}.card-bio{font-size:.85rem;color:#636e72;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem}.rating{color:#ffb703;font-weight:600}.price{color:#e63946;font-weight:700;font-size:1.1rem}.car-type{background:#e8f4f8;color:#1d3557;padding:.2rem .6rem;border-radius:6px;font-size:.8rem;font-weight:500}.car-details{display:flex;gap:1rem;font-size:.85rem;color:#636e72;margin-bottom:.5rem}.tags{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.5rem}.tag{background:#FFF3CD;color:#856404;padding:.15rem .5rem;border-radius:12px;font-size:.75rem;font-weight:500}.tag-lang{background:#e8f4f8;color:#1d3557}.profile-badge-inline{display:inline-flex;align-items:center;padding:.1rem .45rem;border-radius:999px;border:1px solid #dbe4f0;background:#f8fbff;color:#355070;font-size:.68rem;font-weight:600;line-height:1.4}.view-all{display:inline-block;color:#e63946;text-decoration:none;font-weight:600;font-size:.95rem}.view-all:hover{text-decoration:underline}.page-container{max-width:1200px;margin:0 auto;padding:2rem}.page-container h1{font-size:2rem;margin-bottom:.5rem;color:#1d3557;font-family:Playfair Display,serif}.page-subtitle{color:#636e72;margin-bottom:1.5rem}.filter-bar{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2rem;background:white;padding:1rem;border-radius:12px;box-shadow:0 2px 8px #1d35570f}.filter-bar input,.filter-bar select{flex:1;min-width:150px;padding:.6rem .75rem;border:1px solid #dfe6e9;border-radius:8px;font-size:.9rem;font-family:Poppins,sans-serif;outline:none}.filter-bar input:focus,.filter-bar select:focus{border-color:#06d6a0;box-shadow:0 0 0 3px #06d6a01a}.auth-page{display:flex;justify-content:center;align-items:center;min-height:calc(100vh - 128px);padding:2rem}.auth-card{background:white;padding:2.5rem;border-radius:16px;box-shadow:0 4px 16px #1d35571a;width:100%;max-width:420px}.auth-card h1{font-size:1.8rem;margin-bottom:.25rem;color:#1d3557;font-family:Playfair Display,serif}.auth-card>p{color:#636e72;margin-bottom:1.5rem}.form-group{margin-bottom:1.25rem}.form-group label{display:block;font-weight:500;font-size:.9rem;margin-bottom:.4rem;color:#1d3557}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.7rem .75rem;border:1px solid #dfe6e9;border-radius:8px;font-size:.95rem;font-family:Poppins,sans-serif;outline:none;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus{border-color:#06d6a0;box-shadow:0 0 0 3px #06d6a01a}.auth-switch{text-align:center;margin-top:1.5rem;color:#636e72;font-size:.9rem}.auth-switch a{color:#e63946;text-decoration:none;font-weight:600}.error-msg{background:#ffeef0;color:#e63946;padding:.75rem 1rem;border-radius:8px;margin-bottom:1rem;font-size:.9rem}.success-msg{background:#d1f2eb;color:#06d6a0;padding:1.5rem;border-radius:12px;text-align:center;font-weight:600;font-size:1.1rem}.booking-page{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:start}.booking-item{background:white;padding:1.5rem;border-radius:16px;box-shadow:0 2px 12px #1d355714;text-align:center}.booking-img{width:100%;max-width:300px;height:200px;object-fit:cover;border-radius:12px;margin-bottom:1rem}.booking-form-container{background:white;padding:1.5rem;border-radius:16px;box-shadow:0 2px 12px #1d355714}.booking-form-container h2{margin-bottom:1.5rem;color:#1d3557}.total-price{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:linear-gradient(135deg,#FFF3CD,#FFE699);border-radius:10px;margin-bottom:1rem;font-size:1.1rem}.total-price strong{font-size:1.3rem;color:#e63946}.profile-header{display:flex;align-items:center;gap:1.5rem;margin-bottom:2rem}.profile-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(20,41,66,.75),rgba(29,53,87,.5));border-radius:16px;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 26px #1d35573d;margin-bottom:1rem;min-height:230px}.profile-hero-slides{position:absolute;top:0;right:0;bottom:0;left:0}.profile-hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat;opacity:0;transition:opacity 1.2s ease-in-out;transform:scale(1.04)}.profile-hero-slide.active{opacity:1;animation:profileHeroPan 10s ease-in-out infinite alternate}.profile-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(120deg,rgba(17,34,55,.82),rgba(28,51,74,.58))}.profile-hero-guide:before{background:linear-gradient(120deg,rgba(18,47,67,.82),rgba(29,53,87,.58))}.profile-hero-content{position:relative;z-index:2;color:#fff;padding:1.2rem 1.4rem}.profile-hero-content h2{margin:0 0 .35rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}.profile-hero-content p{margin:0 0 .7rem;color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}.profile-hero-chip{display:inline-flex;align-items:center;padding:.3rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);color:#fff;font-size:.78rem;font-weight:600}.profile-hero-dots{margin-top:.7rem;display:inline-flex;align-items:center;gap:.35rem}.profile-hero-dot{width:7px;height:7px;border-radius:999px;background:rgba(255,255,255,.5);transition:transform .2s ease,background .2s ease}.profile-hero-dot.active{background:#ffffff;transform:scale(1.28)}@keyframes profileHeroPan{0%{background-position:center 46%}to{background-position:center 56%}}.profile-avatar{width:80px;height:80px;background:linear-gradient(135deg,#1D3557,#06D6A0);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:2rem;color:#fff;font-weight:700}.profile-avatar-wrapper{position:relative;width:80px;height:80px;border-radius:50%;overflow:hidden;flex-shrink:0}.profile-avatar-wrapper .profile-avatar{width:100%;height:100%}.profile-avatar-img{width:80px;height:80px;border-radius:50%;object-fit:cover}.profile-avatar-overlay{position:absolute;bottom:0;left:0;right:0;background:rgba(0,0,0,.6);color:#fff;font-size:.65rem;text-align:center;padding:4px 0;opacity:0;transition:opacity .2s}.profile-avatar-wrapper:hover .profile-avatar-overlay{opacity:1}.bookings-list{display:flex;flex-direction:column;gap:1rem}.booking-card{background:white;padding:1.25rem;border-radius:12px;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 8px #1d35570f}.booking-info h3{font-size:1rem;margin-bottom:.25rem;color:#1d3557}.booking-info p{font-size:.85rem;color:#636e72}.booking-notes{font-style:italic;margin-top:.25rem}.booking-right{display:flex;align-items:center;gap:1rem}.status-badge{padding:.3rem .75rem;border-radius:20px;font-size:.8rem;font-weight:600;text-transform:capitalize}.status-pending{background:#FFF3CD;color:#856404}.status-confirmed{background:#d1f2eb;color:#0a6b52}.status-cancelled{background:#fce4e6;color:#e63946}.status-completed{background:#d6eaf8;color:#2e86c1}.booking-price{font-weight:700;color:#e63946;font-size:1.1rem}.loading{text-align:center;padding:3rem;color:#636e72;font-size:1.1rem}.empty-state{text-align:center;padding:3rem;color:#b2bec3;font-size:1.1rem}.map-section{padding:3rem 2rem;max-width:1200px;margin:0 auto}.destinations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.destination-card{background:white;padding:1.5rem;border-radius:12px;text-align:center;box-shadow:0 2px 8px #1d35570f;transition:transform .2s}.destination-card:hover{transform:translateY(-2px)}.destination-icon{font-size:2.5rem;margin-bottom:.5rem}.destination-card h3{font-size:.95rem;margin-bottom:.25rem;color:#1d3557}.destination-card p{font-size:.8rem;color:#b2bec3}.footer{background:#1D3557;color:#ffffffb3;text-align:center;padding:1.5rem;font-size:.9rem}.hamburger{display:none;flex-direction:column;justify-content:center;gap:5px;background:none;border:none;cursor:pointer;padding:6px;z-index:1001}.hamburger span{display:block;width:24px;height:2.5px;background:white;border-radius:2px;transition:all .3s ease}.hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.active span:nth-child(2){opacity:0}.hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.nav-overlay{display:none}@media (max-width: 768px){.app-top-nav{grid-template-columns:auto 1fr;align-items:center;gap:.6rem;padding:.7rem .65rem}.app-top-brand-wrap{display:flex;align-items:center}.app-top-brand{font-size:1.15rem}.app-top-brand-logo{width:30px;height:30px}.app-top-links{justify-content:flex-end;flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding-bottom:0}.app-top-links::-webkit-scrollbar{display:none}.app-top-links a{white-space:nowrap;font-size:.9rem}.app-main-with-nav{padding:0}.app-bottom-info{justify-content:flex-start;gap:.8rem;flex-wrap:wrap;box-shadow:none}.app-bottom-info-links{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;white-space:nowrap;flex-wrap:nowrap;gap:.8rem;max-width:100%}.app-bottom-info-links::-webkit-scrollbar{display:none}.app-bottom-info-links a,.app-bottom-logout-btn{white-space:nowrap}.page-container.dashboard-page{max-width:none;width:100%;padding:.35rem .3rem .9rem;margin:0}.dashboard-section,.dashboard-hero,.dashboard-booking-card,.accordion-section,.booking-chat-panel{margin-left:0;margin-right:0}.hamburger{display:flex}.nav-overlay{display:block;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.5);z-index:999}.nav-links{position:fixed;top:0;right:-280px;width:280px;height:100vh;background:#1D3557;flex-direction:column;padding:5rem 2rem 2rem;gap:.5rem;transition:right .3s ease;z-index:1000;box-shadow:-4px 0 20px #0000004d;overflow-y:auto}.nav-links.open{right:0}.nav-links a{font-size:1.05rem;padding:.75rem 0;border-bottom:1px solid rgba(255,255,255,.1);width:100%}.nav-links .nav-btn{text-align:center;margin-top:.5rem}.nav-links .primary-btn{margin-top:.5rem}.hero h1{font-size:1.75rem}.hero p{font-size:.95rem}.hero-buttons{flex-direction:column;align-items:center;gap:.75rem}.hero-buttons .btn{width:80%;text-align:center}.card-grid,.booking-page{grid-template-columns:1fr}.navbar{padding:0 1rem}.page-container{padding:1.5rem 1rem}.page-container h1{font-size:1.5rem}.type-filters{flex-wrap:wrap;gap:.5rem}.type-filter-btn{font-size:.8rem;padding:.4rem .8rem}.section h2{font-size:1.3rem}.booking-card{flex-direction:column;align-items:flex-start;gap:.75rem}.booking-right{width:100%;justify-content:space-between}.auth-container{margin:1rem;padding:1.5rem}.profile-header{flex-direction:column;text-align:center}.footer{padding:1.5rem 1rem;font-size:.85rem}}.payment-note{text-align:center;font-size:.85rem;color:#888;margin-top:.5rem}.payment-result{max-width:500px;margin:4rem auto;text-align:center;padding:3rem 2rem;background:white;border-radius:16px;box-shadow:0 2px 12px #1d35571a}.payment-result h2{margin:1rem 0 .5rem;font-size:1.5rem;color:#1d3557}.payment-result p{color:#666;margin-bottom:1.5rem}.success-icon{width:70px;height:70px;margin:0 auto;border-radius:50%;background:#06D6A0;color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center}.error-icon{width:70px;height:70px;margin:0 auto;border-radius:50%;background:#E63946;color:#fff;font-size:2rem;display:flex;align-items:center;justify-content:center}.payment-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.payment-confirming{padding:2rem 0}.spinner{width:40px;height:40px;border:4px solid #eee;border-top-color:#e63946;border-radius:50%;margin:0 auto 1rem;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.booking-status{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:500;text-transform:capitalize}.booking-status.paid{background:#d1f2eb;color:#0a6b52}.booking-status.unpaid{background:#FFF3CD;color:#856404}.booking-status.pending{background:#e2e3e5;color:#383d41}.type-filters{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:2rem}.type-filter-btn{padding:.5rem 1rem;border:1px solid #dfe6e9;border-radius:20px;background:white;font-size:.85rem;font-family:Poppins,sans-serif;cursor:pointer;transition:all .2s;font-weight:500;color:#636e72}.type-filter-btn:hover{border-color:#e63946;color:#e63946}.type-filter-btn.active{background:#E63946;color:#fff;border-color:#e63946}.itinerary-list{display:flex;flex-direction:column;gap:1rem}.itinerary-card{background:white;border-radius:16px;padding:1.5rem;display:flex;gap:1.25rem;box-shadow:0 2px 12px #1d355714;transition:transform .2s,box-shadow .2s}.itinerary-card:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1d35571f}.itinerary-image{width:100px;height:100px;object-fit:cover;border-radius:14px;flex-shrink:0}.itinerary-icon{font-size:2.5rem;flex-shrink:0;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#FFF3CD,#FFE699);border-radius:14px}.itinerary-content{flex:1}.itinerary-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:.5rem;gap:1rem}.itinerary-header h3{font-size:1.15rem;margin:0;color:#1d3557}.itinerary-meta{display:flex;gap:.5rem;align-items:center;flex-shrink:0}.itinerary-type-badge{background:#e8f4f8;padding:.2rem .6rem;border-radius:6px;font-size:.75rem;font-weight:600;color:#1d3557}.itinerary-days{color:#e63946;font-weight:700;font-size:.85rem;white-space:nowrap}.itinerary-desc{color:#636e72;font-size:.9rem;line-height:1.6}.experience-card{display:flex;flex-direction:column}.experience-image{width:100%;height:200px;object-fit:cover;border-radius:12px 12px 0 0}.experience-icon-large{font-size:3rem;text-align:center;padding:2rem 1rem 1rem;background:linear-gradient(135deg,#06D6A0 0%,#04b386 100%)}.experience-category-badge{display:inline-block;background:#1D3557;color:#fff;padding:.15rem .6rem;border-radius:12px;font-size:.7rem;font-weight:600;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:.5px}.review-section{margin-top:1rem;padding-top:1rem;border-top:1px solid #eee}.review-section h4{font-size:.95rem;margin-bottom:.75rem;color:#1d3557}.reviews-list{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem}.review-item{background:#f8f9fa;padding:.75rem;border-radius:10px}.review-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.25rem}.review-author{font-weight:600;font-size:.85rem;color:#1d3557}.review-stars{color:#ffb703;font-size:.9rem}.review-comment{font-size:.85rem;color:#636e72;margin-bottom:.25rem}.review-date{font-size:.75rem;color:#b2bec3}.review-loading,.review-empty{font-size:.85rem;color:#b2bec3;margin-bottom:.75rem}.review-form{margin-top:.75rem}.review-form-row{display:flex;gap:.5rem;align-items:center}.review-form-row select{padding:.4rem;border:1px solid #dfe6e9;border-radius:6px;font-size:.8rem;font-family:Poppins,sans-serif;min-width:100px}.review-form-row input{flex:1;padding:.4rem .6rem;border:1px solid #dfe6e9;border-radius:6px;font-size:.85rem;font-family:Poppins,sans-serif;outline:none}.review-form-row input:focus{border-color:#06d6a0}.btn-review{padding:.4rem .8rem!important;font-size:.8rem!important;margin-top:0!important;width:auto!important}.review-login-prompt{font-size:.85rem;color:#b2bec3;font-style:italic;margin-top:.5rem}@media (max-width: 768px){.itinerary-card,.itinerary-header,.review-form-row{flex-direction:column}.review-form-row select,.review-form-row input{width:100%}}.splash-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1D3557 0%,#264653 40%,#2A9D8F 100%);display:flex;align-items:center;justify-content:center;z-index:9999;transition:opacity .6s ease}.splash-pattern{position:absolute;top:0;left:0;width:100%;height:100%;background-image:radial-gradient(circle at 20% 30%,rgba(255,183,3,.08) 0%,transparent 50%),radial-gradient(circle at 80% 70%,rgba(255,183,3,.06) 0%,transparent 50%),radial-gradient(circle at 50% 50%,rgba(255,255,255,.03) 0%,transparent 60%);pointer-events:none}.splash-content{text-align:center;animation:splashFadeIn 1s ease-out;z-index:1}.splash-logo{width:100px;height:100px;border-radius:24px;animation:splashPulse 2s ease-in-out infinite;box-shadow:0 8px 32px #0000004d}.splash-title{font-family:Playfair Display,serif;font-size:3rem;color:#ffb703;margin-top:1rem;letter-spacing:2px}.splash-welcome{font-size:1.5rem;color:#fffffff2;margin-top:.75rem;font-weight:300;font-style:italic}.splash-subtitle{color:#fff9;font-size:.95rem;margin-top:.5rem}.splash-adinkra{display:flex;gap:1rem;justify-content:center;margin-top:2rem;font-size:1.2rem;color:#ffb70380;animation:splashFadeIn 2s ease-out}@keyframes splashFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes splashPulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.onboarding{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,var(--slide-color) 0%,#0d1b2a 100%);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9998;padding:2rem;transition:background .5s ease;overflow:hidden}.onboarding-skip{position:absolute;top:1.5rem;right:1.5rem;background:rgba(255,255,255,.15);border:none;color:#fff;font-size:.9rem;padding:.5rem 1.25rem;border-radius:20px;cursor:pointer;z-index:10;transition:background .2s}.onboarding-skip:hover{background:rgba(255,255,255,.25)}.onboarding-slide{display:flex;flex-direction:column;align-items:center;text-align:center;max-width:400px;transition:opacity .25s ease,transform .25s ease}.onboarding-slide.slide-left{opacity:0;transform:translate(-40px)}.onboarding-slide.slide-right{opacity:0;transform:translate(40px)}.onboarding-slide.slide-in-right{animation:slideInRight .3s ease-out forwards}.onboarding-slide.slide-in-left{animation:slideInLeft .3s ease-out forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}.onboarding-image-wrapper{width:220px;height:220px;border-radius:50%;overflow:hidden;margin-bottom:2rem;box-shadow:0 12px 40px #0000004d;border:4px solid rgba(255,255,255,.15)}.onboarding-image{width:100%;height:100%;object-fit:cover}.onboarding-title{font-family:Playfair Display,serif;font-size:1.8rem;color:#fff;margin-bottom:.75rem}.onboarding-desc{color:#fffc;font-size:1rem;line-height:1.6;max-width:320px}.onboarding-dots{display:flex;gap:.5rem;margin-top:2.5rem}.onboarding-dot{width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,.3);cursor:pointer;transition:all .3s ease}.onboarding-dot.active{background:#FFB703;width:28px;border-radius:5px}.onboarding-actions{display:flex;gap:1rem;margin-top:2rem;width:100%;max-width:400px;justify-content:center}.onboarding-btn{padding:.85rem 2rem;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;border:none;transition:all .2s ease;min-width:120px}.onboarding-btn-next,.onboarding-btn-start{background:#FFB703;color:#1d3557;flex:1}.onboarding-btn-next:hover,.onboarding-btn-start:hover{background:#FFC733;transform:translateY(-1px)}.onboarding-btn-back{background:rgba(255,255,255,.15);color:#fff}.onboarding-btn-back:hover{background:rgba(255,255,255,.25)}.install-prompt{position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%);background:#1D3557;color:#fff;border-radius:16px;padding:1rem 1.25rem;box-shadow:0 8px 32px #0000004d;z-index:9000;display:flex;flex-direction:column;gap:.75rem;max-width:380px;width:calc(100% - 2rem);animation:installSlideUp .4s ease-out}@keyframes installSlideUp{0%{opacity:0;transform:translate(-50%) translateY(40px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.install-prompt-content{display:flex;align-items:center;gap:.75rem}.install-prompt-icon{width:40px;height:40px;border-radius:10px;flex-shrink:0}.install-prompt-text strong{display:block;font-size:.95rem}.install-prompt-text p{font-size:.8rem;color:#ffffffb3;margin-top:.15rem}.install-prompt-actions{display:flex;gap:.5rem}.install-prompt-btn{flex:1;padding:.6rem;border-radius:8px;border:none;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s}.install-btn{background:#FFB703;color:#1d3557}.install-btn:hover{background:#FFC733}.dismiss-btn{background:rgba(255,255,255,.1);color:#fffc}.dismiss-btn:hover{background:rgba(255,255,255,.2)}.role-selection{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#1D3557 0%,#264653 50%,#2A9D8F 100%);display:flex;align-items:center;justify-content:center;z-index:9997;padding:2rem;overflow-y:auto}.role-selection-content{text-align:center;max-width:600px;width:100%;animation:splashFadeIn .6s ease-out}.role-selection-title{font-family:Playfair Display,serif;font-size:2.5rem;color:#ffb703;margin-bottom:.5rem}.role-selection-subtitle{color:#ffffffd9;font-size:1.15rem;margin-bottom:2.5rem}.role-cards{display:flex;gap:1.5rem;justify-content:center;flex-wrap:wrap}.role-card{background:rgba(255,255,255,.08);border:2px solid rgba(255,183,3,.3);border-radius:20px;padding:2rem 1.5rem;width:250px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:.75rem;text-align:center;color:#fff}.role-card:hover{background:rgba(255,183,3,.12);border-color:#ffb703;transform:translateY(-4px);box-shadow:0 12px 40px #0000004d}.role-card-guide{border-color:#2a9d8f66}.role-card-guide:hover{border-color:#2a9d8f;background:rgba(42,157,143,.12)}.role-card-icon{margin-bottom:.5rem}.role-card-title{font-family:Playfair Display,serif;font-size:1.4rem;color:#fff;margin:0}.role-card-desc{color:#ffffffb3;font-size:.9rem;line-height:1.5;margin:0}.role-card-arrow{font-size:.9rem;font-weight:600;color:#ffb703;margin-top:.5rem}.role-card-guide .role-card-arrow{color:#2a9d8f}.role-selection-note{color:#fff6;font-size:.85rem;margin-top:2rem}.signup-card{max-width:480px}.role-toggle{display:flex;background:rgba(0,0,0,.05);border-radius:12px;padding:4px;margin-bottom:1.5rem;border:1px solid #e2e8f0}.role-toggle-btn{flex:1;padding:.65rem 1rem;border:none;border-radius:10px;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s;background:transparent;color:#64748b}.role-toggle-btn.active{background:#1D3557;color:#fff;box-shadow:0 2px 8px #1d355733}.guide-field{background:rgba(42,157,143,.05);border:1px solid rgba(42,157,143,.2);border-radius:12px;padding:1rem;margin-left:-.5rem;margin-right:-.5rem}.field-hint{display:block;font-size:.78rem;color:#94a3b8;margin-top:.35rem}.auth-card select{width:100%;padding:.75rem;border-radius:8px;border:1px solid #e2e8f0;font-size:.95rem;background:white;color:#1d3557;-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.guide-signup-card{max-width:520px}.signup-step-indicator{display:flex;align-items:center;justify-content:center;gap:0;margin-bottom:1.5rem}.step-dot{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:700;background:#e2e8f0;color:#94a3b8;transition:all .3s}.step-dot.active{background:#1D3557;color:#fff}.step-dot.completed{background:#2A9D8F;color:#fff}.step-line{width:60px;height:3px;background:#e2e8f0;margin:0 .5rem}.auth-card textarea{width:100%;padding:.75rem;border-radius:8px;border:1px solid #e2e8f0;font-size:.95rem;font-family:inherit;resize:vertical;min-height:80px}.auth-card textarea:focus{outline:none;border-color:#1d3557}.chip-grid{display:flex;flex-wrap:wrap;gap:.5rem}.chip{padding:.4rem .85rem;border-radius:20px;border:1px solid #e2e8f0;background:white;color:#64748b;font-size:.85rem;cursor:pointer;transition:all .2s}.chip:hover{border-color:#1d3557;color:#1d3557}.chip-active{background:#1D3557;color:#fff;border-color:#1d3557}.chip-active:hover{background:#264653;color:#fff}.form-row{display:flex;gap:1rem}.form-row .form-group{flex:1}@media (max-width: 768px){.splash-logo{width:80px;height:80px}.splash-title{font-size:2.2rem}.splash-welcome{font-size:1.2rem}.onboarding-image-wrapper{width:180px;height:180px}.onboarding-title{font-size:1.5rem}.onboarding-desc{font-size:.9rem}.onboarding,.role-selection{padding:1.5rem}.role-selection-title{font-size:1.8rem}.role-cards{flex-direction:column;align-items:center}.role-card{width:100%;max-width:320px}.form-row{flex-direction:column;gap:0}}.tracker-page{max-width:1200px;margin:0 auto;padding:2rem 1rem}.tracker-header{text-align:center;margin-bottom:1.5rem}.tracker-header h1{font-size:2rem;color:#1d3557;margin-bottom:.25rem}.tracker-header p{color:#636e72;font-size:1rem}.tracker-stats{display:flex;justify-content:center;gap:2rem;margin-bottom:1.5rem}.tracker-stat{text-align:center;background:white;padding:1rem 1.5rem;border-radius:12px;box-shadow:0 2px 8px #0000000f;min-width:100px}.stat-number{display:block;font-size:1.8rem;font-weight:700;color:#1d3557}.stat-number.tourist-color{color:#e76f51}.stat-number.guide-color{color:#2a9d8f}.stat-label{font-size:.8rem;color:#636e72;text-transform:uppercase;letter-spacing:.5px}.tracker-error{background:#fee;color:#c0392b;padding:.75rem 1rem;border-radius:8px;text-align:center;margin-bottom:1rem}.tracker-layout{display:flex;gap:1rem;min-height:500px}.tracker-map-container{flex:1;background:white;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000000f;min-height:500px}.tracker-map{width:100%;height:500px}.tracker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-height:400px;color:#636e72}.tracker-empty-icon{font-size:3rem;margin-bottom:1rem}.tracker-sidebar{width:280px;background:white;border-radius:12px;box-shadow:0 2px 8px #0000000f;padding:1rem;overflow-y:auto;max-height:540px}.tracker-sidebar h3{color:#1d3557;margin-bottom:.75rem;font-size:1rem}.tracker-user-list{display:flex;flex-direction:column;gap:.5rem}.tracker-user-item{display:flex;align-items:center;gap:.6rem;padding:.6rem;border-radius:8px;cursor:pointer;transition:background .2s}.tracker-user-item:hover,.tracker-user-item.active{background:#f0f4f8}.tracker-user-avatar{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.9rem;color:#fff;flex-shrink:0}.tracker-user-avatar.tourist{background:#E76F51}.tracker-user-avatar.guide{background:#2A9D8F}.tracker-user-info{display:flex;flex-direction:column;flex:1;min-width:0}.tracker-user-name{font-weight:600;font-size:.85rem;color:#1d3557;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tracker-user-role{font-size:.7rem;text-transform:uppercase;letter-spacing:.5px}.tracker-user-role.tourist{color:#e76f51}.tracker-user-role.guide{color:#2a9d8f}.tracker-user-time{font-size:.7rem;color:#94a3b8;white-space:nowrap}.tracker-marker-wrapper{background:none!important;border:none!important}.tracker-marker{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:.85rem;box-shadow:0 2px 8px #0000004d;position:relative}.tracker-marker:after{content:"";position:absolute;bottom:-6px;left:50%;transform:translate(-50%);width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent}.tourist-marker{background:#E76F51}.tourist-marker:after{border-top:6px solid #E76F51}.guide-marker{background:#2A9D8F}.guide-marker:after{border-top:6px solid #2A9D8F}.marker-initial{line-height:1}.tracker-popup{text-align:center;padding:.25rem}.tracker-popup strong{display:block;font-size:.9rem;color:#1d3557;margin-bottom:.25rem}.tracker-role-badge{display:inline-block;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-bottom:.25rem}.tracker-role-badge.tourist{background:#fde8e3;color:#e76f51}.tracker-role-badge.guide{background:#d7f0ed;color:#2a9d8f}.tracker-time{display:block;font-size:.7rem;color:#94a3b8}@media (max-width: 768px){.tracker-layout{flex-direction:column}.tracker-sidebar{width:100%;max-height:250px}.tracker-stats{gap:.75rem}.tracker-stat{padding:.75rem;min-width:80px}.stat-number{font-size:1.4rem}.tracker-header h1{font-size:1.5rem}}.admin-layout{display:flex;min-height:100vh;background:#f0f2f5}.admin-topbar{position:fixed;top:0;left:0;right:0;height:56px;background:#1a1a2e;display:flex;align-items:center;justify-content:space-between;padding:0 1.5rem;z-index:1001;box-shadow:0 2px 8px #0003}.admin-topbar-title{color:#ffb703;font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:.5rem}.admin-topbar-actions{display:flex;align-items:center;gap:1rem}.admin-topbar-actions a{color:#ccc;text-decoration:none;font-size:.9rem;transition:color .2s}.admin-topbar-actions a:hover{color:#ffb703}.admin-sidebar{position:fixed;top:56px;left:0;bottom:0;width:240px;background:#16213e;padding:1rem 0;overflow-y:auto;z-index:1000;transition:transform .3s}.admin-sidebar-nav{list-style:none;padding:0;margin:0}.admin-sidebar-nav li a{display:flex;align-items:center;gap:.75rem;padding:.85rem 1.5rem;color:#a0aec0;text-decoration:none;font-size:.95rem;transition:all .2s;border-left:3px solid transparent}.admin-sidebar-nav li a:hover{background:rgba(255,183,3,.08);color:#ffb703}.admin-sidebar-nav li a.active{background:rgba(255,183,3,.12);color:#ffb703;border-left-color:#ffb703;font-weight:600}.admin-sidebar-nav li a .admin-nav-icon{font-size:1.1rem;width:24px;text-align:center}.admin-content{margin-left:240px;margin-top:56px;padding:2rem;flex:1;min-height:calc(100vh - 56px)}.admin-page-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.admin-page-header h1{font-size:1.6rem;color:#1a1a2e;font-weight:700;margin:0}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.25rem;margin-bottom:2rem}.admin-stat-card{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;transition:transform .2s,box-shadow .2s}.admin-stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001a}.admin-stat-label{color:#718096;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem}.admin-stat-value{font-size:2rem;font-weight:700;color:#1a1a2e}.admin-stat-card.revenue .admin-stat-value{color:#28a745}.admin-card{background:white;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #0000000f;margin-bottom:1.5rem}.admin-card h2{font-size:1.2rem;color:#1a1a2e;margin:0 0 1rem;font-weight:600}.admin-table-wrapper{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;font-size:.9rem}.admin-table th{background:#f7fafc;padding:.75rem 1rem;text-align:left;font-weight:600;color:#4a5568;border-bottom:2px solid #e2e8f0;white-space:nowrap}.admin-table td{padding:.75rem 1rem;border-bottom:1px solid #edf2f7;color:#2d3748;vertical-align:middle}.admin-table tr:hover{background:#f7fafc}.admin-table input[type=text],.admin-table input[type=number],.admin-table input[type=email],.admin-table select{padding:.4rem .6rem;border:1px solid #cbd5e0;border-radius:6px;font-size:.85rem;background:white;width:100%;max-width:180px}.admin-table input:focus,.admin-table select:focus{outline:none;border-color:#ffb703;box-shadow:0 0 0 2px #ffb70333}.admin-badge{display:inline-block;padding:.25rem .6rem;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:capitalize}.admin-badge.tourist{background:#ebf8ff;color:#2b6cb0}.admin-badge.guide{background:#f0fff4;color:#276749}.admin-badge.admin{background:#fef5e7;color:#c05621}.admin-badge.pending{background:#fefcbf;color:#975a16}.admin-badge.confirmed{background:#c6f6d5;color:#276749}.admin-badge.completed{background:#bee3f8;color:#2a4365}.admin-badge.cancelled{background:#fed7d7;color:#9b2c2c}.admin-badge.paid{background:#c6f6d5;color:#276749}.admin-badge.unpaid{background:#fed7d7;color:#9b2c2c}.admin-badge.refunded{background:#fefcbf;color:#975a16}.admin-badge.verified{background:#c6f6d5;color:#276749}.admin-badge.unverified{background:#fed7d7;color:#9b2c2c}.admin-btn{padding:.4rem .85rem;border:none;border-radius:6px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:.3rem}.admin-btn-primary{background:#FFB703;color:#1a1a2e}.admin-btn-primary:hover{background:#e5a503}.admin-btn-success{background:#28a745;color:#fff}.admin-btn-success:hover{background:#218838}.admin-btn-danger{background:#dc3545;color:#fff}.admin-btn-danger:hover{background:#c82333}.admin-btn-warning{background:#e67e22;color:#fff}.admin-btn-warning:hover{background:#d35400}.admin-select-inline{padding:.3rem .5rem;border:1px solid #ddd;border-radius:4px;background:white;font-size:.85rem}.admin-btn-secondary{background:#e2e8f0;color:#4a5568}.admin-btn-secondary:hover{background:#cbd5e0}.admin-btn-sm{padding:.3rem .6rem;font-size:.75rem}.admin-actions{display:flex;gap:.5rem;white-space:nowrap}.admin-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.admin-modal{background:white;border-radius:16px;padding:2rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.admin-modal h2{font-size:1.3rem;color:#1a1a2e;margin:0 0 1.5rem}.admin-form-group{margin-bottom:1rem}.admin-form-group label{display:block;font-size:.85rem;font-weight:600;color:#4a5568;margin-bottom:.35rem}.admin-form-group input,.admin-form-group select,.admin-form-group textarea{width:100%;padding:.6rem .85rem;border:1px solid #cbd5e0;border-radius:8px;font-size:.9rem;background:white;transition:border-color .2s;box-sizing:border-box}.admin-form-group input:focus,.admin-form-group select:focus,.admin-form-group textarea:focus{outline:none;border-color:#ffb703;box-shadow:0 0 0 3px #ffb70326}.admin-form-group textarea{min-height:80px;resize:vertical}.admin-form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.admin-form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1rem;border-top:1px solid #edf2f7}.admin-checkbox{display:flex;align-items:center;gap:.5rem;cursor:pointer}.admin-checkbox input[type=checkbox]{width:18px;height:18px;accent-color:#FFB703}.admin-loading{display:flex;align-items:center;justify-content:center;padding:3rem;color:#718096;font-size:1rem}.admin-error{background:#fff5f5;border:1px solid #fed7d7;color:#9b2c2c;padding:1rem;border-radius:8px;margin-bottom:1rem}.admin-empty{text-align:center;padding:3rem;color:#a0aec0}.admin-nav-btn{background:#FFB703!important;color:#1a1a2e!important;font-weight:600!important;border-radius:6px!important}.admin-sidebar-toggle{display:none;background:none;border:none;color:#fff;font-size:1.5rem;cursor:pointer;padding:.25rem}.admin-sidebar-overlay{display:none}.admin-stars{color:#ffb703;letter-spacing:1px}.admin-truncate{max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 768px){.admin-sidebar{transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-sidebar-overlay{display:block;position:fixed;top:56px;left:0;right:0;bottom:0;background:rgba(0,0,0,.5);z-index:999}.admin-sidebar-toggle{display:block}.admin-content{margin-left:0;padding:1rem}.admin-stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.admin-stat-card{padding:1rem}.admin-stat-value{font-size:1.5rem}.admin-page-header{flex-direction:column;align-items:flex-start;gap:.75rem}.admin-form-row{grid-template-columns:1fr}.admin-modal{padding:1.25rem;margin:.5rem}.admin-table{font-size:.8rem}.admin-table th,.admin-table td{padding:.5rem .6rem}}.pending-guides-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.25rem}.pending-guide-card{background:white;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #1d355714;border:1px solid #eee}.pending-guide-header{display:flex;gap:1rem;align-items:center;margin-bottom:.75rem}.pending-guide-avatar{width:60px;height:60px;border-radius:50%;overflow:hidden;flex-shrink:0;background:linear-gradient(135deg,#1D3557,#06D6A0);display:flex;align-items:center;justify-content:center}.pending-guide-avatar img{width:100%;height:100%;object-fit:cover}.pending-guide-avatar span{color:#fff;font-size:1.4rem;font-weight:700}.pending-guide-info h4{font-size:1rem;color:#1d3557;margin-bottom:.15rem}.pending-guide-location{font-size:.85rem;color:#636e72}.pending-guide-gta{font-size:.8rem;color:#856404;font-weight:500}.driver-guide-badge{display:inline-block;background:#06D6A0;color:#fff;padding:.15rem .5rem;border-radius:10px;font-size:.7rem;font-weight:600;text-transform:uppercase}.pending-guide-bio{font-size:.85rem;color:#636e72;margin-bottom:.75rem;line-height:1.5}.pending-guide-details{margin-bottom:.75rem}.pending-guide-tags{margin-bottom:.5rem}.pending-guide-tags strong{font-size:.8rem;color:#1d3557;display:block;margin-bottom:.25rem}.tag-chips{display:flex;flex-wrap:wrap;gap:.3rem}.pending-guide-meta{display:flex;gap:1rem;font-size:.85rem;color:#1d3557;font-weight:500;margin-top:.5rem}.driver-guide-info{background:#f0f8ff;border-radius:8px;padding:.75rem;margin-bottom:.75rem;border:1px solid #d6eaf8}.driver-guide-info h5{font-size:.85rem;color:#1d3557;margin-bottom:.5rem}.driver-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:.3rem;font-size:.8rem;color:#636e72}.driver-detail-grid strong{color:#1d3557}.pending-guide-actions{display:flex;gap:.75rem;margin-top:.75rem}.pending-guide-actions .admin-btn{flex:1;text-align:center;padding:.5rem}.admin-images-section{margin-bottom:1rem}@media (max-width: 768px){.pending-guides-cards,.driver-detail-grid{grid-template-columns:1fr}}.tour-packages-page{max-width:1200px;margin:0 auto;padding:0 1rem 3rem}.tour-packages-hero{text-align:center;padding:2.5rem 1rem 1.5rem}.tour-packages-hero h1{font-family:Playfair Display,serif;font-size:2.2rem;color:#1a3a4a;margin-bottom:.5rem}.tour-packages-hero p{color:#636e72;font-size:1.05rem}.tour-packages-filters{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:center;margin-bottom:2rem;padding:0 1rem}.tour-filter-btn{padding:.5rem 1.2rem;border:2px solid #dfe6e9;border-radius:25px;background:#fff;cursor:pointer;font-size:.9rem;color:#636e72;transition:all .2s;font-family:inherit}.tour-filter-btn:hover{border-color:#f0a500;color:#f0a500}.tour-filter-btn.active{background:#f0a500;border-color:#f0a500;color:#fff;font-weight:600}.tour-packages-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.tour-package-card{display:block;text-decoration:none;color:inherit;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 2px 12px #00000014;transition:transform .2s,box-shadow .2s}.tour-package-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px #0000001f}.tour-package-image{position:relative;height:200px;overflow:hidden}.tour-package-image img{width:100%;height:100%;object-fit:cover}.tour-package-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#dfe6e9,#b2bec3);display:flex;align-items:center;justify-content:center;color:#636e72;font-size:.9rem}.tour-featured-badge{position:absolute;top:12px;left:12px;background:#f0a500;color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem;font-weight:600}.tour-difficulty-badge{position:absolute;top:12px;right:12px;background:rgba(0,0,0,.6);color:#fff;padding:.25rem .75rem;border-radius:20px;font-size:.75rem}.tour-package-info{padding:1.25rem}.tour-package-info h3{font-size:1.15rem;color:#1a3a4a;margin-bottom:.3rem}.tour-package-location{color:#636e72;font-size:.85rem;margin-bottom:.5rem}.tour-package-desc{color:#636e72;font-size:.9rem;line-height:1.5;margin-bottom:.75rem}.tour-package-meta{display:flex;gap:.75rem;margin-bottom:.75rem}.tour-package-duration,.tour-package-category{font-size:.8rem;padding:.2rem .6rem;border-radius:12px;background:#f8f9fa;color:#636e72}.tour-package-price{font-size:1.3rem;font-weight:700;color:#f0a500}.tour-package-price .per-person{font-size:.8rem;font-weight:400;color:#636e72;margin-left:.3rem}.tour-detail-page{max-width:1200px;margin:0 auto;padding:1rem 1rem 3rem}.tour-detail-gallery{margin-bottom:2rem}.tour-detail-main-image{border-radius:12px;overflow:hidden;height:400px;margin-bottom:.75rem}.tour-detail-main-image img{width:100%;height:100%;object-fit:cover}.tour-detail-thumbnails{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.5rem}.tour-thumbnail{width:80px;height:55px;border-radius:8px;overflow:hidden;cursor:pointer;border:2px solid transparent;flex-shrink:0;transition:border-color .2s}.tour-thumbnail.active{border-color:#f0a500}.tour-thumbnail img{width:100%;height:100%;object-fit:cover}.tour-detail-content{display:grid;grid-template-columns:1fr 350px;gap:2rem;align-items:start}.tour-detail-badges{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:.75rem}.tour-badge{padding:.3rem .85rem;border-radius:20px;font-size:.8rem;font-weight:600}.tour-badge.category{background:#e8f5e9;color:#2e7d32}.tour-badge.difficulty{background:#fff3e0;color:#e65100}.tour-badge.featured{background:#f0a500;color:#fff}.tour-detail-main h1{font-family:Playfair Display,serif;font-size:2rem;color:#1a3a4a;margin-bottom:.5rem}.tour-detail-location{color:#636e72;font-size:1rem;margin-bottom:1.25rem}.tour-detail-highlights{display:flex;gap:1.5rem;margin-bottom:1.5rem;padding:1rem;background:#f8f9fa;border-radius:10px}.tour-highlight strong{display:block;font-size:.8rem;color:#636e72;margin-bottom:.2rem}.tour-highlight span{font-size:1rem;font-weight:600;color:#1a3a4a}.tour-detail-description{margin-bottom:2rem}.tour-detail-description h2,.tour-detail-itinerary h2{font-size:1.3rem;color:#1a3a4a;margin-bottom:1rem}.tour-detail-description p{color:#555;line-height:1.7}.tour-itinerary-timeline{position:relative}.tour-itinerary-day{display:flex;gap:1rem;margin-bottom:1.25rem}.tour-day-marker{display:flex;flex-direction:column;align-items:center;min-width:60px}.tour-day-number{background:#1a3a4a;color:#fff;padding:.3rem .6rem;border-radius:8px;font-size:.75rem;font-weight:600;white-space:nowrap}.tour-day-line{width:2px;flex:1;background:#dfe6e9;margin-top:.5rem}.tour-day-content{flex:1;padding-bottom:1rem}.tour-day-content h3{font-size:1rem;color:#1a3a4a;margin-bottom:.3rem}.tour-day-content p{color:#636e72;font-size:.9rem;line-height:1.5}.tour-booking-card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;padding:1.5rem;position:sticky;top:80px;box-shadow:0 4px 16px #0000000f}.tour-booking-price{text-align:center;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #eee}.tour-price-amount{font-size:1.8rem;font-weight:700;color:#f0a500;display:block}.tour-price-unit{font-size:.85rem;color:#636e72}.tour-btn-primary{width:100%;padding:.85rem;border:none;border-radius:8px;background:#f0a500;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;font-family:inherit;transition:background .2s}.tour-btn-primary:hover{background:#d4920a}.tour-btn-primary:disabled{background:#ccc;cursor:not-allowed}.tour-btn-secondary{width:100%;padding:.75rem;border:2px solid #dfe6e9;border-radius:8px;background:transparent;color:#636e72;font-size:.9rem;cursor:pointer;font-family:inherit;margin-top:.5rem}.tour-booking-form label{display:block;font-size:.85rem;font-weight:600;color:#1a3a4a;margin-bottom:.75rem}.tour-booking-form input{width:100%;padding:.65rem;border:1px solid #dfe6e9;border-radius:8px;font-size:.95rem;margin-top:.3rem;font-family:inherit}.tour-booking-total{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-top:1px solid #eee;margin:.75rem 0;font-size:1.1rem}.tour-booking-error{background:#ffe5e5;color:#c0392b;padding:.5rem .75rem;border-radius:8px;font-size:.85rem;margin-bottom:.75rem}.tour-booking-success{text-align:center}.tour-booking-success h3{color:#27ae60;margin-bottom:.5rem}.tour-booking-success p{color:#636e72;font-size:.9rem;margin-bottom:1rem}.empty-state{text-align:center;padding:3rem 1rem;color:#636e72}.empty-state h3{color:#1a3a4a;margin-bottom:.5rem}@media (max-width: 768px){.tour-packages-grid,.tour-detail-content{grid-template-columns:1fr}.tour-detail-main-image{height:250px}.tour-booking-card{position:static}.tour-packages-hero h1{font-size:1.6rem}.tour-detail-main h1{font-size:1.5rem}.tour-detail-highlights{flex-direction:column;gap:.75rem}}.chat-fab{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:linear-gradient(135deg,#1D3557,#457B9D);color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 20px #1d355766;z-index:1000;transition:transform .2s,box-shadow .2s}.chat-fab:hover{transform:scale(1.1);box-shadow:0 6px 28px #1d355780}.chat-fab-badge{position:absolute;top:-4px;right:-4px;background:#E63946;color:#fff;font-size:.7rem;font-weight:700;width:20px;height:20px;border-radius:50%;display:flex;align-items:center;justify-content:center}.chat-widget{position:fixed;bottom:24px;right:24px;width:380px;height:520px;background:white;border-radius:16px;box-shadow:0 8px 40px #0003;z-index:1001;display:flex;flex-direction:column;overflow:hidden;animation:chatSlideUp .3s ease-out}@keyframes chatSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-header{background:linear-gradient(135deg,#1D3557,#457B9D);color:#fff;padding:14px 16px;display:flex;align-items:center;justify-content:space-between}.chat-header-info{display:flex;align-items:center;gap:10px}.chat-avatar{width:36px;height:36px;border-radius:50%;background:#FFB703;color:#1d3557;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1rem}.chat-header-title{font-weight:600;font-size:.95rem}.chat-header-status{font-size:.75rem;opacity:.85}.chat-header-actions{display:flex;gap:4px}.chat-minimize-btn,.chat-close-btn{background:none;border:none;color:#fff;cursor:pointer;padding:4px;border-radius:6px;opacity:.8;transition:opacity .2s}.chat-minimize-btn:hover,.chat-close-btn:hover{opacity:1;background:rgba(255,255,255,.15)}.chat-messages{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px;background:#f0f2f5}.chat-msg{display:flex;gap:8px;max-width:85%}.chat-msg-user{align-self:flex-end;flex-direction:row-reverse}.chat-msg-bot{align-self:flex-start}.chat-msg-avatar{width:28px;height:28px;min-width:28px;border-radius:50%;background:#1D3557;color:#fff;display:flex;align-items:center;justify-content:center;font-size:.7rem;font-weight:700}.chat-msg-bubble{padding:10px 14px;border-radius:16px;font-size:.87rem;line-height:1.5;word-wrap:break-word}.user-bubble{background:#1D3557;color:#fff;border-bottom-right-radius:4px}.bot-bubble{background:white;color:#2d3436;border-bottom-left-radius:4px;box-shadow:0 1px 3px #00000014}.agent-bubble{background:#d4edda;color:#155724;border-bottom-left-radius:4px;box-shadow:0 1px 3px #00000014}.chat-msg-time{font-size:.65rem;opacity:.6;margin-top:4px;display:flex;align-items:center;gap:6px}.agent-label{font-size:.65rem;background:#28a745;color:#fff;padding:1px 6px;border-radius:8px;font-weight:600}.chat-typing{display:flex;gap:4px;padding:4px 0}.chat-typing span{width:8px;height:8px;border-radius:50%;background:#aaa;animation:chatTyping 1.4s ease-in-out infinite}.chat-typing span:nth-child(2){animation-delay:.2s}.chat-typing span:nth-child(3){animation-delay:.4s}@keyframes chatTyping{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.chat-agent-notice{text-align:center;font-size:.78rem;color:#28a745;background:#d4edda;padding:8px 12px;border-radius:8px;margin:4px 0}.chat-input-area{display:flex;padding:10px 12px;border-top:1px solid #eee;background:white;gap:8px}.chat-input{flex:1;border:1px solid #ddd;border-radius:24px;padding:10px 16px;font-size:.87rem;outline:none;transition:border-color .2s;font-family:Poppins,sans-serif}.chat-input:focus{border-color:#457b9d}.chat-send-btn{width:40px;height:40px;border-radius:50%;background:#1D3557;color:#fff;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s}.chat-send-btn:hover:not(:disabled){background:#457B9D}.chat-send-btn:disabled{opacity:.4;cursor:not-allowed}.chat-footer-links{padding:4px 12px 10px;text-align:center;background:white}.chat-link-btn{background:none;border:none;color:#457b9d;font-size:.78rem;cursor:pointer;text-decoration:underline;font-family:Poppins,sans-serif}.chat-link-btn:hover{color:#1d3557}@media (max-width: 480px){.chat-widget{bottom:0;right:0;width:100%;height:100%;border-radius:0}.chat-fab{bottom:16px;right:16px;width:54px;height:54px}}.admin-chat-container{padding:1.5rem}.admin-chat-container h2{margin-bottom:1rem;color:#1d3557}.admin-chat-layout{display:flex;gap:1rem;height:calc(100vh - 180px);min-height:400px}.admin-chat-sidebar{width:300px;min-width:260px;background:white;border-radius:12px;border:1px solid #e0e0e0;overflow-y:auto;padding:.75rem}.admin-chat-section-title{font-size:.8rem;font-weight:600;color:#666;text-transform:uppercase;padding:.5rem .5rem .25rem;display:flex;align-items:center;gap:6px}.pulse-dot{width:8px;height:8px;border-radius:50%;background:#E63946;animation:pulseDot 1.5s ease-in-out infinite}@keyframes pulseDot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.admin-chat-session-card{padding:.75rem;border-radius:10px;cursor:pointer;transition:background .2s;margin-bottom:.25rem;border:2px solid transparent}.admin-chat-session-card:hover{background:#f0f2f5}.admin-chat-session-card.selected{background:#e8f4f8;border-color:#457b9d}.admin-chat-session-card.bot-session{opacity:.7}.admin-chat-session-name{font-weight:600;font-size:.9rem;color:#1d3557}.admin-chat-session-email{font-size:.75rem;color:#888}.admin-chat-session-preview{font-size:.8rem;color:#555;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-chat-session-meta{display:flex;justify-content:space-between;font-size:.7rem;color:#999;margin-top:4px}.admin-chat-empty{text-align:center;padding:2rem 1rem;color:#888}.admin-chat-main{flex:1;background:white;border-radius:12px;border:1px solid #e0e0e0;display:flex;flex-direction:column;overflow:hidden}.admin-chat-messages{flex:1;overflow-y:auto;padding:1rem;display:flex;flex-direction:column;gap:.75rem;background:#f8f9fa}.admin-chat-msg{max-width:70%;padding:10px 14px;border-radius:12px;font-size:.87rem;line-height:1.5}.admin-chat-msg.from-user{align-self:flex-start;background:#e3f2fd;border:1px solid #bbdefb}.admin-chat-msg.from-agent{align-self:flex-end;background:#d4edda;border:1px solid #c3e6cb}.admin-chat-msg.from-bot{align-self:flex-start;background:white;border:1px solid #e0e0e0}.admin-chat-msg-label{font-size:.7rem;font-weight:600;color:#666;margin-bottom:2px;text-transform:uppercase}.admin-chat-msg-text{color:#2d3436;word-wrap:break-word;white-space:pre-wrap}.admin-chat-msg-time{font-size:.65rem;color:#999;margin-top:4px;text-align:right}.admin-chat-reply-form{display:flex;padding:12px;border-top:1px solid #e0e0e0;gap:8px;background:white}.admin-chat-reply-input{flex:1;border:1px solid #ddd;border-radius:8px;padding:10px 14px;font-size:.87rem;outline:none;font-family:Poppins,sans-serif}.admin-chat-reply-input:focus{border-color:#457b9d}.admin-chat-reply-btn{padding:10px 20px;background:#1D3557;color:#fff;border:none;border-radius:8px;font-weight:600;cursor:pointer;font-family:Poppins,sans-serif;transition:background .2s}.admin-chat-reply-btn:hover:not(:disabled){background:#457B9D}.admin-chat-reply-btn:disabled{opacity:.5;cursor:not-allowed}.admin-chat-placeholder{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#888}.admin-chat-placeholder h3{color:#1d3557;margin-bottom:.5rem}@media (max-width: 768px){.admin-chat-layout{flex-direction:column;height:auto}.admin-chat-sidebar{width:100%;max-height:200px}.admin-chat-main{min-height:400px}}.dashboard-page{max-width:1100px;margin:0 auto;padding:1rem;position:relative}.boost-fab{position:fixed;right:1rem;bottom:1rem;z-index:120;border:none;border-radius:999px;padding:.65rem .9rem;background:#E63946;color:#fff;font-weight:700;font-size:.86rem;display:inline-flex;align-items:center;gap:.4rem;box-shadow:0 10px 24px #e639465c;cursor:pointer}.boost-fab:hover{background:#cc2f3b}.boost-fab-icon{font-size:1rem;line-height:1}.dashboard-hero{background:linear-gradient(135deg,#1D3557,#457B9D);color:#fff;border-radius:16px;padding:2rem;margin-bottom:1.5rem;text-align:center}.dashboard-hero h1{font-size:1.8rem;margin-bottom:.5rem}.dashboard-hero p{opacity:.9;font-size:1.05rem;margin-bottom:1rem}.guide-hero{background-image:linear-gradient(120deg,rgba(16,33,52,.9),rgba(23,46,72,.76)),url(/images/onboarding/experiences.png);background-size:cover;background-position:center;background-repeat:no-repeat;border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 26px #1d355747}.guide-hero h1,.guide-hero p,.guide-hero .status-badge{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.35)}.tourist-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,rgba(17,34,55,.32),rgba(28,51,74,.18));border:1px solid rgba(255,255,255,.2);box-shadow:0 12px 26px #1d35573d;min-height:280px}.tourist-hero-slides{position:absolute;top:0;right:0;bottom:0;left:0}.tourist-hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;background-size:cover;background-position:center;background-repeat:no-repeat;filter:brightness(1.08) contrast(1.05) saturate(1.07);opacity:0;transition:opacity 1.2s ease-in-out;transform:scale(1.04)}.tourist-hero-slide.active{opacity:1;animation:touristHeroPan 10s ease-in-out infinite alternate}.tourist-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,rgba(17,34,55,.22),rgba(28,51,74,.12));z-index:1}.tourist-hero-content{position:relative;z-index:2;display:inline-flex;flex-direction:column;align-items:center;gap:.45rem}.tourist-hero h1,.tourist-hero p{color:#fff;text-shadow:0 2px 8px rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.42);background:rgba(13,28,44,.34);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:10px;padding:.32rem .65rem}.tourist-hero h1{-webkit-text-stroke:.3px rgba(8,18,30,.9)}.tourist-hero p{max-width:730px}.tourist-hero-chip{display:inline-flex;align-items:center;padding:.32rem .75rem;border-radius:999px;border:1px solid rgba(255,255,255,.5);background:rgba(13,28,44,.4);color:#fff;font-size:.78rem;font-weight:600;letter-spacing:.015em;text-shadow:0 1px 4px rgba(0,0,0,.45)}.tourist-hero-dots{margin-top:.65rem;display:inline-flex;align-items:center;gap:.35rem}.tourist-hero-dot{width:7px;height:7px;border-radius:999px;background:rgba(255,255,255,.45);transition:transform .2s ease,background .2s ease}.tourist-hero-dot.active{background:#ffffff;transform:scale(1.3)}@keyframes touristHeroPan{0%{background-position:center 48%}to{background-position:center 58%}}.dashboard-search{display:flex;max-width:500px;margin:0 auto;gap:.5rem}.dashboard-search input{flex:1;padding:.75rem 1rem;border:none;border-radius:8px;font-size:1rem}.dashboard-search .btn{white-space:nowrap}.dashboard-alert{padding:.75rem 1rem;border-radius:8px;margin-top:1rem;font-size:.95rem}.dashboard-alert.warning{background:rgba(255,193,7,.2);border:1px solid rgba(255,193,7,.5)}.dashboard-quick-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.quick-action-card{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1.25rem;background:white;border-radius:12px;box-shadow:0 2px 8px #00000014;text-decoration:none;color:#1d3557;font-weight:600;transition:transform .2s,box-shadow .2s}.quick-action-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.quick-action-icon{font-size:1.8rem}.dashboard-section{margin-bottom:2rem}.booking-chat-panel{background:#ffffff;border:1px solid rgba(29,53,87,.1);border-radius:14px;box-shadow:0 6px 16px #1d355714;padding:.8rem}.booking-chat-layout{display:grid;grid-template-columns:250px 1fr;gap:.8rem}.booking-chat-sessions{display:flex;flex-direction:column;gap:.45rem;max-height:420px;overflow-y:auto}.booking-chat-session{border:1px solid rgba(29,53,87,.14);background:#f8fbff;border-radius:10px;padding:.55rem;text-align:left;cursor:pointer;display:flex;flex-direction:column;gap:.2rem}.booking-chat-session.active{border-color:#1d3557;background:#edf4ff}.booking-chat-session span,.booking-chat-session small{color:#5f6f83;font-size:.78rem}.booking-chat-main{border:1px solid rgba(29,53,87,.1);border-radius:12px;overflow:hidden;background:#fbfdff;display:flex;flex-direction:column}.booking-chat-header{padding:.65rem .8rem;border-bottom:1px solid rgba(29,53,87,.1);display:flex;justify-content:space-between;gap:.6rem;align-items:center}.booking-chat-header span{color:#5f6f83;font-size:.8rem}.booking-chat-messages{padding:.75rem;height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:.45rem}.booking-chat-bubble{max-width:80%;padding:.5rem .65rem;border-radius:10px}.booking-chat-bubble p{margin:0;color:#1d3557}.booking-chat-bubble small{display:block;margin-top:.2rem;color:#6b7280;font-size:.72rem}.booking-chat-bubble.mine{align-self:flex-end;background:#e9f2ff;border:1px solid rgba(69,123,157,.25)}.booking-chat-bubble.theirs{align-self:flex-start;background:#ffffff;border:1px solid rgba(29,53,87,.14)}.booking-chat-form{display:grid;grid-template-columns:1fr auto;gap:.55rem;padding:.7rem;border-top:1px solid rgba(29,53,87,.1)}.booking-chat-form input{border:1px solid rgba(29,53,87,.2);border-radius:8px;padding:.55rem .65rem}.accordion-section{background:#ffffff;border:1px solid rgba(29,53,87,.12);border-radius:14px;margin-bottom:.85rem;overflow:hidden;box-shadow:0 4px 14px #1d35570f}.accordion-toggle{width:100%;background:#fff;border:none;padding:.95rem 1rem;display:flex;align-items:center;justify-content:space-between;cursor:pointer;text-align:left}.accordion-title-wrap{display:flex;flex-direction:column;gap:.2rem}.accordion-title-wrap h2{margin:0;font-size:1.02rem;color:#1d3557}.accordion-subtitle{font-size:.78rem;color:#6b7280}.accordion-icon{color:#1d3557;font-size:1.1rem;font-weight:700;line-height:1}.accordion-content{border-top:1px solid rgba(29,53,87,.1);padding:.95rem;background:#fbfcff}.accordion-content .driver-info-card{box-shadow:none;border:1px solid rgba(29,53,87,.08)}.boost-slider-window{overflow:hidden;border-radius:12px;border:1px solid rgba(29,53,87,.12);margin-bottom:.4rem;background:#f6f9ff}.boost-slider-track{display:flex;width:max-content;gap:.65rem;padding:.7rem;animation:boostSlide 24s linear infinite}.boost-slider-window:hover .boost-slider-track{animation-play-state:paused}.boost-slide-card{min-width:190px;max-width:190px;display:flex;flex-direction:column;gap:.2rem;border:1px solid rgba(29,53,87,.2);border-radius:10px;background:#fff;color:#1d3557;padding:.7rem;text-align:left;cursor:pointer}.boost-slide-card.active{border-color:#e63946;box-shadow:0 0 0 2px #e6394626}.boost-slide-title{font-weight:700;font-size:.88rem}.boost-slide-meta{font-size:.78rem;color:#5f6f83}@keyframes boostSlide{0%{transform:translate(0)}to{transform:translate(-50%)}}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.section-header h2{font-size:1.3rem;color:#1d3557}.see-all-link{color:#457b9d;text-decoration:none;font-weight:600;font-size:.9rem}.see-all-link:hover{text-decoration:underline}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1rem}.dashboard-card{background:white;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;text-decoration:none;color:inherit;transition:transform .2s,box-shadow .2s}.dashboard-card:hover{transform:translateY(-3px);box-shadow:0 4px 16px #0000001f}.dashboard-card-image{height:160px;overflow:hidden;background:#e9ecef;display:flex;align-items:center;justify-content:center}.dashboard-card-image img{width:100%;height:100%;object-fit:cover}.guide-card-avatar{width:80px;height:80px;border-radius:50%;background:#457B9D;color:#fff;display:flex;align-items:center;justify-content:center;font-size:2rem;font-weight:700}.dashboard-card-body{padding:1rem}.dashboard-card-body h3{font-size:1.05rem;margin-bottom:.25rem;color:#1d3557}.card-category{display:inline-block;background:#e8f4f8;color:#457b9d;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:uppercase;margin-bottom:.35rem}.card-location{font-size:.85rem;color:#666;margin-bottom:.5rem}.card-footer{display:flex;justify-content:space-between;align-items:center;font-size:.85rem}.card-duration{color:#888}.card-price{font-weight:700;color:#e67e22}.guide-rating{color:#f39c12}.dashboard-bookings-list{display:flex;flex-direction:column;gap:.75rem}.dashboard-booking-card{display:flex;justify-content:space-between;align-items:center;background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%);padding:1rem 1.25rem;border-radius:14px;border:1px solid rgba(29,53,87,.08);box-shadow:0 8px 22px #1d355714}.guide-list-card{align-items:center}.guide-list-info{display:flex;align-items:center;gap:.8rem;min-width:0}.guide-list-photo{width:92px;height:92px;border-radius:50%;object-fit:cover;object-position:center top;border:2px solid rgba(29,53,87,.16);flex-shrink:0}.guide-list-details h4{margin:0 0 .2rem;color:#1d3557}.guide-list-details p{margin:0;color:#5f6f83;font-size:.85rem}.activity-list-card{align-items:stretch;flex-direction:column;gap:.55rem}.activity-list-details h4{margin:0 0 .15rem;color:#1d3557}.activity-list-details p{margin:0;color:#5f6f83;font-size:.84rem}.activity-hero-bar{width:100%;min-height:120px;border-radius:12px;background-size:cover;background-position:center;background-repeat:no-repeat;position:relative;overflow:hidden;border:1px solid rgba(29,53,87,.12);display:flex;align-items:flex-end}.activity-hero-image{width:100%;height:100%;min-height:120px;object-fit:cover;display:block}.activity-hero-bar:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,rgba(15,31,49,.18) 30%,rgba(15,31,49,.62) 100%)}.activity-hero-bar h4{position:relative;z-index:1;margin:0;color:#fff;width:100%;padding:.55rem .65rem;font-size:.98rem;line-height:1.3;text-shadow:0 2px 8px rgba(0,0,0,.5)}.activity-list-card .booking-card-status{width:100%;align-items:flex-start}.guide-chat-btn{min-width:138px}.guide-chat-btn:disabled{opacity:.6;cursor:not-allowed}.guide-inline-chat-box{margin-top:.9rem;border:1px solid rgba(29,53,87,.14);border-radius:14px;background:#fff;box-shadow:0 10px 24px #1d35571a;padding:.75rem}.location-permission-banner{position:sticky;top:0;z-index:80;margin:0 auto;width:min(980px,calc(100% - 1.5rem));background:#fff;border:1px solid rgba(29,53,87,.16);border-radius:12px;box-shadow:0 10px 24px #1d35571f;padding:.85rem 1rem;display:flex;gap:.9rem;align-items:center;justify-content:space-between}.location-permission-content h4{margin:0 0 .2rem;color:#1d3557}.location-permission-content p{margin:0;color:#5f6f83;font-size:.88rem}.location-permission-error{color:#e63946!important;margin-top:.3rem!important}.location-permission-actions{display:flex;gap:.45rem;flex-wrap:wrap;justify-content:flex-end}.btn-ghost{background:transparent;border:1px solid rgba(29,53,87,.2);color:#1d3557}@media (max-width: 768px){.location-permission-banner{width:calc(100% - 1rem);border-radius:10px;padding:.7rem .75rem;flex-direction:column;align-items:flex-start}.location-permission-actions{width:100%;justify-content:flex-start}}.guide-inline-chat-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.guide-inline-chat-head h3{margin:0;font-size:.98rem;color:#1d3557}.guide-inline-chat-head button{border:1px solid rgba(29,53,87,.2);background:#f7faff;color:#1d3557;border-radius:8px;padding:.2rem .45rem;cursor:pointer}.dashboard-booking-card.past{opacity:.78;box-shadow:0 3px 10px #1d35570f}.tip-booking-card{border-left:4px solid #06D6A0}.booking-card-info h4{margin-bottom:.15rem;color:#1d3557}.booking-card-info p{font-size:.85rem;color:#666;margin:0}.booking-type-badge{display:inline-block;background:#e8f4f8;color:#457b9d;padding:.1rem .4rem;border-radius:4px;font-size:.7rem;font-weight:600;text-transform:uppercase;margin-bottom:.3rem}.booking-card-status{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:.3rem}.booking-price{font-weight:600;color:#1d3557}.booking-price-tip{color:#06d6a0;font-weight:700}.booking-price-receivable{color:#1d3557;font-weight:700}.status-badge{display:inline-block;padding:.15rem .5rem;border-radius:4px;font-size:.75rem;font-weight:600;text-transform:capitalize}.status-pending{background:#fff3cd;color:#856404}.status-confirmed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.payment-badge{font-size:.7rem;padding:.1rem .4rem;border-radius:3px}.payment-paid{background:#d4edda;color:#155724}.payment-unpaid{background:#fff3cd;color:#856404}.guide-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.stat-card{background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);border-radius:14px;padding:1.25rem;text-align:center;border-top:4px solid #1D3557;border:1px solid rgba(29,53,87,.08);box-shadow:0 10px 24px #1d35571a;transition:transform .2s ease,box-shadow .2s ease}.stat-card:hover{transform:translateY(-2px);box-shadow:0 14px 28px #1d355724}.stat-card-base{border-top-color:#1d3557}.stat-card-tips{border-top-color:#06d6a0}.stat-card-receivable{border-top-color:#ffb703}.stat-card-bookings{border-top-color:#e63946}.stat-card-rating{border-top-color:#118ab2}.stat-value{display:block;font-size:1.55rem;font-weight:700;color:#1d3557;margin-bottom:.25rem;letter-spacing:-.015em}.stat-label{font-size:.85rem;color:#888}.stat-label-icon{display:flex;align-items:center;justify-content:center;gap:.4rem}.tip-history-stats{margin-bottom:1rem}.driver-info-card{background:white;border-radius:12px;padding:1.25rem;box-shadow:0 2px 8px #00000014}.driver-info-row{display:flex;justify-content:space-between;padding:.5rem 0;border-bottom:1px solid #f0f0f0}.driver-info-row:last-child{border-bottom:none}.expired-text{color:#dc3545;font-weight:600}.empty-state{text-align:center;padding:2rem;color:#888;background:#f8f9fa;border-radius:12px}.reviews-list{display:flex;flex-direction:column;gap:.75rem}.review-card{background:white;border-radius:10px;padding:1rem;box-shadow:0 2px 6px #0000000f}.review-header{display:flex;justify-content:space-between;margin-bottom:.5rem}.review-rating{color:#f39c12}.review-comment{font-size:.9rem;color:#555;margin-bottom:.25rem}.review-date{font-size:.8rem;color:#aaa}.doc-renewal-icon,.verification-pending-icon,.onboarding-icon{font-size:3rem;margin-bottom:1rem}.expired-doc-section{background:#fff8f0;border:1px solid #ffe0c0;border-radius:10px;padding:1rem;margin-bottom:1rem}.expired-doc-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.5rem}.expired-badge{background:#dc3545;color:#fff;padding:.15rem .5rem;border-radius:4px;font-size:.7rem;font-weight:700}.expired-date{font-size:.85rem;color:#888;margin-bottom:.75rem}.verification-message{font-size:1.1rem;margin-bottom:.5rem}.verification-checklist{text-align:left;background:#f0f7ff;border-radius:10px;padding:1.25rem;margin:1.5rem 0}.verification-checklist h3{margin-bottom:.75rem;color:#1d3557}.verification-checklist ul{list-style:none;padding:0}.verification-checklist li{padding:.4rem 0 .4rem 1.5rem;position:relative;color:#555}.verification-checklist li:before{content:"✓";position:absolute;left:0;color:#457b9d;font-weight:700}.verification-actions{display:flex;gap:1rem;justify-content:center;margin-top:1.5rem}.btn-outline{background:transparent;border:2px solid #457B9D;color:#457b9d}.btn-outline:hover{background:#457B9D;color:#fff}.onboarding-steps{text-align:left;margin:1.5rem 0}.onboarding-step{display:flex;gap:1rem;align-items:flex-start;padding:.75rem 0}.step-number{width:32px;height:32px;border-radius:50%;background:#457B9D;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}.onboarding-step p{font-size:.85rem;color:#888;margin:.15rem 0 0}@media (max-width: 768px){.tourist-hero{min-height:230px}.dashboard-quick-actions,.guide-stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-grid{grid-template-columns:1fr}.dashboard-booking-card{flex-direction:column;align-items:flex-start;gap:.75rem}.guide-list-card{flex-direction:row;align-items:center}.activity-list-card{flex-direction:column;align-items:stretch}.guide-list-photo{width:74px;height:74px}.activity-hero-bar{min-height:102px}.guide-inline-chat-box{padding:.6rem;border-radius:12px}.guide-chat-btn{min-width:126px}.booking-card-status{align-items:flex-start;flex-direction:row;gap:.5rem}.dashboard-search,.verification-actions{flex-direction:column}.dashboard-hero h1{font-size:1.4rem}.stat-value{font-size:1.2rem}.dashboard-page{padding:.75rem}.boost-fab{right:.75rem;bottom:.75rem;padding:.58rem .8rem;font-size:.8rem}.dashboard-hero{border-radius:12px;padding:1.2rem .9rem;margin-bottom:1rem}.accordion-toggle{padding:.85rem .9rem}.accordion-title-wrap h2{font-size:.96rem}.accordion-content{padding:.75rem}.accordion-content form{grid-template-columns:1fr!important}.boost-slide-card{min-width:160px;max-width:160px}.dashboard-booking-card{padding:.8rem;border-radius:10px}.booking-chat-layout{grid-template-columns:1fr}.booking-chat-messages{height:230px}.driver-info-row{flex-direction:column;align-items:flex-start;gap:.2rem}}:root{--color-primary: #2A9D8F;--color-primary-dark: #1f7a6e;--color-primary-light: #e6f7f5;--color-dark: #1D3557;--color-dark-2: #243b55;--color-accent: #E76F51;--color-accent-light: #fdf0ed;--color-bg: #F0F4F8;--color-surface: #FFFFFF;--color-surface-2: #F8FAFC;--color-text: #1E293B;--color-text-2: #475569;--color-muted: #94A3B8;--color-border: #E2E8F0;--color-success: #16a34a;--color-success-bg: #f0fdf4;--color-warning: #d97706;--color-warning-bg: #fffbeb;--color-error: #dc2626;--color-error-bg: #fef2f2;--radius-xs: 6px;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--shadow-xs: 0 1px 2px rgba(0,0,0,.05);--shadow-sm: 0 1px 4px rgba(0,0,0,.06), 0 2px 8px rgba(0,0,0,.04);--shadow-md: 0 4px 16px rgba(0,0,0,.08), 0 1px 4px rgba(0,0,0,.04);--shadow-lg: 0 8px 32px rgba(0,0,0,.12), 0 2px 8px rgba(0,0,0,.06);--shadow-xl: 0 20px 48px rgba(0,0,0,.16);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--transition: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .35s cubic-bezier(.4, 0, .2, 1);--bottom-nav-height: 64px;--top-nav-height: 60px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-sans);font-size:1rem;line-height:1.6;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding-bottom:var(--bottom-nav-height)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:var(--font-sans);cursor:pointer}input,select,textarea{font-family:var(--font-sans)}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--color-dark);line-height:1.3;font-weight:700;letter-spacing:-.02em}h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:800}h2{font-size:clamp(1.35rem,3vw,1.875rem)}h3{font-size:1.25rem}h4{font-size:1.1rem}p{color:var(--color-text-2);line-height:1.7}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.5rem;font-size:.9375rem;font-weight:600;border-radius:var(--radius-full);border:2px solid transparent;transition:all var(--transition);white-space:nowrap;cursor:pointer;outline:none;text-decoration:none}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.btn-primary{background:var(--color-primary);color:#fff;border-color:var(--color-primary);box-shadow:0 2px 12px #2a9d8f4d}.btn-primary:hover:not(:disabled){background:var(--color-primary-dark);border-color:var(--color-primary-dark);box-shadow:0 4px 20px #2a9d8f73;transform:translateY(-1px)}.btn-accent{background:var(--color-accent);color:#fff;border-color:var(--color-accent);box-shadow:0 2px 12px #e76f514d}.btn-accent:hover:not(:disabled){background:#d4633e;border-color:#d4633e;box-shadow:0 4px 20px #e76f5166;transform:translateY(-1px)}.btn-dark{background:var(--color-dark);color:#fff;border-color:var(--color-dark)}.btn-dark:hover:not(:disabled){background:var(--color-dark-2);transform:translateY(-1px)}.btn-outline{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline:hover:not(:disabled){background:var(--color-primary-light)}.btn-ghost{background:transparent;color:var(--color-text-2);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--color-surface-2);color:var(--color-text)}.btn-sm{padding:.45rem 1rem;font-size:.8125rem}.btn-lg{padding:.875rem 2rem;font-size:1rem}.btn-block{width:100%}.btn-danger{background:var(--color-error-bg);color:var(--color-error);border-color:transparent}.btn-danger:hover:not(:disabled){background:var(--color-error);color:#fff}.card{background:var(--color-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden;transition:all var(--transition);border:1px solid rgba(255,255,255,.8)}.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-3px)}.card-body{padding:1.25rem}.card-image{width:100%;aspect-ratio:16 / 10;object-fit:cover}.form-field{position:relative;margin-bottom:1.25rem}.form-label{display:block;font-size:.875rem;font-weight:600;color:var(--color-text);margin-bottom:.4rem;letter-spacing:.01em}.form-input{width:100%;padding:.75rem 1rem;font-size:.9375rem;color:var(--color-text);background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-sm);transition:all var(--transition);outline:none}.form-input::placeholder{color:var(--color-muted)}.form-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #2a9d8f1f}.form-input.error{border-color:var(--color-error);box-shadow:0 0 0 3px #dc26261a}.form-error{font-size:.8rem;color:var(--color-error);margin-top:.35rem;display:flex;align-items:center;gap:.25rem}.form-hint{font-size:.8rem;color:var(--color-muted);margin-top:.35rem}.badge{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .65rem;font-size:.75rem;font-weight:600;border-radius:var(--radius-full);white-space:nowrap}.badge-primary{background:var(--color-primary-light);color:var(--color-primary-dark)}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:var(--color-warning-bg);color:var(--color-warning)}.badge-error{background:var(--color-error-bg);color:var(--color-error)}.badge-dark{background:var(--color-dark);color:#fff}.badge-accent{background:var(--color-accent-light);color:var(--color-accent)}.app-top-nav{position:fixed;top:0;left:0;right:0;height:var(--top-nav-height);display:flex;align-items:center;justify-content:space-between;padding:0 1.25rem;background:rgba(255,255,255,.88);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.6);box-shadow:0 1px 12px #0000000f;z-index:900}.app-top-brand-wrap{display:flex;align-items:center}.app-top-brand{display:flex;align-items:center;gap:.5rem;font-weight:800;font-size:1.25rem;color:var(--color-dark);letter-spacing:-.03em}.app-top-brand-logo{width:32px;height:32px;border-radius:var(--radius-sm);object-fit:cover}.app-top-links{display:flex;align-items:center;gap:.25rem}.app-top-links a{padding:.4rem .85rem;font-size:.875rem;font-weight:500;color:var(--color-text-2);border-radius:var(--radius-full);transition:all var(--transition)}.app-top-links a:hover{background:var(--color-surface-2);color:var(--color-text)}.app-main-with-nav{padding-top:calc(var(--top-nav-height) + 1rem)}.bottom-tab-bar{position:fixed;bottom:0;left:0;right:0;height:var(--bottom-nav-height);background:rgba(255,255,255,.95);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid rgba(226,232,240,.8);box-shadow:0 -4px 20px #00000012;display:flex;align-items:stretch;z-index:900;padding:0 .25rem;padding-bottom:env(safe-area-inset-bottom,0px)}.bottom-tab-item{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;text-decoration:none;color:var(--color-muted);font-size:.7rem;font-weight:500;transition:all var(--transition);border-radius:var(--radius-sm);padding:.4rem;position:relative;cursor:pointer;background:none;border:none}.bottom-tab-item:active{transform:scale(.92)}.bottom-tab-item.active{color:var(--color-primary)}.bottom-tab-item.active .bottom-tab-icon{background:var(--color-primary-light)}.bottom-tab-icon{width:34px;height:34px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:1.1rem;transition:all var(--transition)}.bottom-tab-label{font-size:.65rem;font-weight:600;letter-spacing:.01em}.page-container{max-width:1200px;margin:0 auto;padding:1.5rem 1rem 2rem}.page-header{margin-bottom:1.75rem}.page-title{font-size:clamp(1.4rem,3vw,1.875rem);font-weight:800;color:var(--color-dark);letter-spacing:-.03em;margin-bottom:.35rem}.page-subtitle{font-size:.9375rem;color:var(--color-muted);line-height:1.5}.grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.25rem}.grid-cards-sm{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:1rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin-bottom:1.75rem}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);border:1px solid var(--color-border);transition:all var(--transition)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.stat-card-icon{width:44px;height:44px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:1.3rem;margin-bottom:.875rem}.stat-card-value{font-size:1.75rem;font-weight:800;color:var(--color-dark);line-height:1.1;letter-spacing:-.03em}.stat-card-label{font-size:.8125rem;color:var(--color-muted);font-weight:500;margin-top:.25rem}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem}.section-title{font-size:1.1rem;font-weight:700;color:var(--color-dark);letter-spacing:-.02em}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:4rem 2rem;color:var(--color-muted)}.empty-state-icon{font-size:3.5rem;margin-bottom:1rem;opacity:.7}.empty-state-title{font-size:1.1rem;font-weight:700;color:var(--color-text-2);margin-bottom:.5rem}.empty-state-text{font-size:.9rem;color:var(--color-muted);max-width:300px;line-height:1.6}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}.skeleton{background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 50%,#e2e8f0 75%);background-size:800px 100%;animation:shimmer 1.4s ease-in-out infinite;border-radius:var(--radius-sm)}.skeleton-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.skeleton-img{width:100%;aspect-ratio:16 / 10}.skeleton-line{height:14px;margin-bottom:8px}.skeleton-line-sm{height:11px;width:65%}.toast-container{position:fixed;top:calc(var(--top-nav-height) + .75rem);right:1rem;z-index:9999;display:flex;flex-direction:column;gap:.6rem;pointer-events:none;max-width:360px;width:calc(100vw - 2rem)}.toast{display:flex;align-items:flex-start;gap:.75rem;padding:1rem 1.1rem;background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--color-border);animation:toastIn .3s cubic-bezier(.34,1.56,.64,1) forwards;pointer-events:all;cursor:pointer}.toast.removing{animation:toastOut .25s ease-in forwards}@keyframes toastIn{0%{opacity:0;transform:translate(100%) scale(.9)}to{opacity:1;transform:translate(0) scale(1)}}@keyframes toastOut{0%{opacity:1;transform:translate(0) scale(1)}to{opacity:0;transform:translate(100%) scale(.9)}}.toast-icon{font-size:1.2rem;flex-shrink:0;margin-top:1px}.toast-body{flex:1}.toast-title{font-size:.875rem;font-weight:700;color:var(--color-text);line-height:1.3}.toast-message{font-size:.8125rem;color:var(--color-text-2);margin-top:2px;line-height:1.4}.toast-success{border-left:4px solid var(--color-success)}.toast-error{border-left:4px solid var(--color-error)}.toast-warning{border-left:4px solid var(--color-warning)}.toast-info{border-left:4px solid var(--color-primary)}.filter-tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:1.25rem}.filter-tab{padding:.45rem 1.1rem;font-size:.8125rem;font-weight:600;border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-2);cursor:pointer;transition:all var(--transition)}.filter-tab:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-tab.active{background:var(--color-primary);border-color:var(--color-primary);color:#fff;box-shadow:0 2px 8px #2a9d8f4d}.search-bar{display:flex;align-items:center;gap:.75rem;background:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-full);padding:.6rem 1rem;transition:all var(--transition);box-shadow:var(--shadow-xs)}.search-bar:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px #2a9d8f1f}.search-bar input{flex:1;border:none;outline:none;font-size:.9375rem;color:var(--color-text);background:transparent}.search-bar input::placeholder{color:var(--color-muted)}.hero-banner{background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-primary) 100%);border-radius:var(--radius-xl);padding:2.5rem 2rem;color:#fff;margin-bottom:1.75rem;position:relative;overflow:hidden}.hero-banner:before{content:"";position:absolute;top:-50%;right:-20%;width:60%;aspect-ratio:1;background:rgba(255,255,255,.06);border-radius:50%}.hero-banner:after{content:"";position:absolute;bottom:-40%;left:-10%;width:50%;aspect-ratio:1;background:rgba(255,255,255,.04);border-radius:50%}.hero-banner-content{position:relative;z-index:1}.hero-banner h2{color:#fff;font-size:clamp(1.3rem,3vw,1.875rem);margin-bottom:.5rem}.hero-banner p{color:#fffc;font-size:.9375rem;margin-bottom:1.25rem}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-primary) 100%);padding:1.5rem}.auth-card{background:var(--color-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:100%;max-width:440px;overflow:hidden}.auth-card-header{background:linear-gradient(135deg,var(--color-dark) 0%,var(--color-primary) 100%);padding:2rem 2rem 1.5rem;text-align:center;color:#fff}.auth-card-header img{width:60px;height:60px;border-radius:var(--radius-md);margin:0 auto .75rem;border:3px solid rgba(255,255,255,.25)}.auth-card-header h1{color:#fff;font-size:1.5rem;margin-bottom:.25rem}.auth-card-header p{color:#ffffffbf;font-size:.875rem}.auth-card-body{padding:2rem}.list-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.25rem;background:var(--color-surface);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition);margin-bottom:.75rem}.list-item:hover{box-shadow:var(--shadow-sm);border-color:var(--color-primary-light)}.status-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .7rem;border-radius:var(--radius-full);font-size:.75rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.status-pending{background:var(--color-warning-bg);color:var(--color-warning)}.status-confirmed,.status-active,.status-paid{background:var(--color-success-bg);color:var(--color-success)}.status-cancelled,.status-rejected,.status-expired{background:var(--color-error-bg);color:var(--color-error)}.status-completed{background:var(--color-primary-light);color:var(--color-primary-dark)}.divider{height:1px;background:var(--color-border);margin:1.5rem 0}.divider-text{display:flex;align-items:center;gap:1rem;color:var(--color-muted);font-size:.8125rem;font-weight:500;margin:1.5rem 0}.divider-text:before,.divider-text:after{content:"";flex:1;height:1px;background:var(--color-border)}@keyframes pageIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.page-fade-in{animation:pageIn .35s ease-out forwards}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--color-muted)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.chip-grid{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.25rem}.chip{padding:.35rem .9rem;font-size:.8125rem;font-weight:500;border-radius:var(--radius-full);border:2px solid var(--color-border);background:var(--color-surface);color:var(--color-text-2);cursor:pointer;transition:all var(--transition);white-space:nowrap}.chip:hover{border-color:var(--color-primary);color:var(--color-primary);background:var(--color-primary-light)}.chip-active{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.auth-card{max-height:calc(100vh - 3rem);overflow-y:auto;overflow-x:hidden}@media (max-width: 768px){.app-top-links{display:none}.page-container{padding:1rem .875rem 1.5rem}.grid-cards{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.hero-banner{padding:1.75rem 1.25rem;border-radius:var(--radius-lg)}.auth-card-body{padding:1.5rem}}@media (max-width: 480px){.stats-grid{grid-template-columns:repeat(2,1fr);gap:.75rem}.filter-tabs{gap:.3rem}.filter-tab{padding:.35rem .8rem;font-size:.75rem}.toast-container{right:.5rem;width:calc(100vw - 1rem)}}.splash-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,#0B3C5D 0%,#1CA7EC 100%);display:flex;align-items:center;justify-content:center;z-index:9999;opacity:1;transition:opacity .5s ease-in-out}.splash-screen.fade-out{opacity:0}.splash-content{text-align:center;animation:fadeIn 1s ease-out;color:#fff}.logo-container{margin-bottom:2rem}.app-logo{width:120px;height:120px;border-radius:20px;box-shadow:0 10px 30px #0000004d;animation:pulse 2s ease-in-out infinite}.app-title{font-family:Montserrat,Poppins,sans-serif;font-size:3.5rem;font-weight:700;margin:0 0 1rem;letter-spacing:2px;text-shadow:0 4px 8px rgba(0,0,0,.3)}.app-slogan{font-family:Poppins,Montserrat,sans-serif;font-size:1.8rem;font-weight:300;margin:0;opacity:.9;letter-spacing:1px;text-shadow:0 2px 4px rgba(0,0,0,.3)}@keyframes fadeIn{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.tour-templates{padding:2rem;background:#f8f9fa;min-height:100vh}.templates-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;flex-wrap:wrap;gap:1rem}.templates-header h2{font-family:Montserrat,Poppins,sans-serif;font-size:2rem;color:#1d3557;margin:0 0 .5rem}.templates-header p{color:#666;margin:0}.btn-primary{background:linear-gradient(135deg,#2A9D8F 0%,#1D3557 100%);color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-family:Poppins,sans-serif;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #2a9d8f4d}.templates-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.templates-stats .stat-card{background:white;padding:1.5rem;border-radius:16px;box-shadow:0 4px 12px #0000001a;text-align:center}.templates-stats .stat-card h3{font-size:2rem;font-weight:700;color:#2a9d8f;margin:0 0 .5rem}.templates-stats .stat-card p{color:#666;margin:0;font-family:Poppins,sans-serif}.templates-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:2rem}.template-card{background:white;border-radius:16px;overflow:hidden;box-shadow:0 4px 12px #0000001a;transition:transform .3s ease}.template-card:hover{transform:translateY(-4px)}.template-image{position:relative;height:200px;overflow:hidden}.template-image img{width:100%;height:100%;object-fit:cover}.template-badge{position:absolute;top:1rem;left:1rem;background:rgba(42,157,143,.9);color:#fff;padding:.3rem .8rem;border-radius:20px;font-family:Poppins,sans-serif;font-size:.8rem;font-weight:600}.template-public{position:absolute;top:1rem;right:1rem;background:rgba(29,53,87,.9);color:#fff;padding:.3rem .8rem;border-radius:20px;font-family:Poppins,sans-serif;font-size:.8rem;font-weight:600}.template-content{padding:1.5rem}.template-content h3{font-family:Montserrat,Poppins,sans-serif;font-size:1.3rem;color:#1d3557;margin:0 0 1rem}.template-content p{color:#666;line-height:1.6;margin:0 0 1.5rem;font-family:Poppins,sans-serif}.template-details{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin-bottom:1.5rem}.detail-item{display:flex;align-items:center;gap:.5rem;font-family:Poppins,sans-serif;font-size:.9rem;color:#666}.detail-icon{font-size:1rem}.template-actions{display:flex;gap:.5rem;flex-wrap:wrap}.template-actions button{padding:.5rem 1rem;border:none;border-radius:6px;font-family:Poppins,sans-serif;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-edit{background:#2196F3;color:#fff}.btn-edit:hover{background:#1976D2}.btn-duplicate{background:#FFC107;color:#333}.btn-duplicate:hover{background:#FFA000}.btn-toggle{background:#9C27B0;color:#fff}.btn-toggle:hover{background:#7B1FA2}.btn-delete{background:#f44336;color:#fff}.btn-delete:hover{background:#d32f2f}.template-form-container{max-width:800px;margin:0 auto;background:white;border-radius:16px;box-shadow:0 4px 12px #0000001a;overflow:hidden}.form-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:linear-gradient(135deg,#2A9D8F 0%,#1D3557 100%);color:#fff}.form-header h2{font-family:Montserrat,Poppins,sans-serif;font-size:1.5rem;margin:0}.btn-close{background:rgba(255,255,255,.2);border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:1.2rem;cursor:pointer;transition:background .3s ease}.btn-close:hover{background:rgba(255,255,255,.3)}.template-form{padding:2rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem;margin-bottom:1.5rem}.form-group{display:flex;flex-direction:column}.form-group label{font-family:Poppins,sans-serif;font-weight:600;color:#1d3557;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-family:Poppins,sans-serif;font-size:1rem;transition:border-color .3s ease}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#2a9d8f}.form-group textarea{resize:vertical}.form-group input[type=checkbox]{width:auto;margin-right:.5rem}.form-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:2rem;border-top:1px solid #e9ecef}.btn-secondary{background:#6c757d;color:#fff;border:none;padding:.75rem 1.5rem;border-radius:8px;font-family:Poppins,sans-serif;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-secondary:hover{background:#5a6268}.empty-state{text-align:center;padding:4rem 2rem;background:white;border-radius:16px;box-shadow:0 4px 12px #0000001a}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{font-family:Montserrat,Poppins,sans-serif;font-size:1.5rem;color:#1d3557;margin:0 0 1rem}.empty-state p{color:#666;margin:0 0 2rem;font-family:Poppins,sans-serif}@media (max-width: 768px){.tour-templates{padding:1rem}.templates-header{flex-direction:column;align-items:flex-start}.templates-stats,.templates-grid,.template-details{grid-template-columns:1fr}.template-actions{flex-direction:column}.template-actions button{width:100%}.form-grid{grid-template-columns:1fr}.form-actions{flex-direction:column}.form-actions button{width:100%}}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:1100;padding:1rem}.modal-card{background:#fff;border-radius:16px;padding:2rem;width:100%;max-width:440px;box-shadow:0 20px 60px #0003}.modal-card h2{margin:0 0 1.25rem;font-size:1.25rem;color:#1d3557}.modal-card label{display:block;margin-bottom:1rem;font-size:.9rem;font-weight:500;color:#374151}.modal-card label input,.modal-card label select{display:block;width:100%;margin-top:.35rem;padding:.55rem .75rem;border:1px solid #d1d5db;border-radius:8px;font-size:.95rem;box-sizing:border-box}.modal-card .modal-total{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-top:1px solid #e5e7eb;margin:.5rem 0 1rem;font-weight:600;color:#1d3557}.modal-card .modal-actions{display:flex;gap:.75rem;flex-direction:column}.modal-error{color:#dc2626;font-size:.875rem;margin-bottom:.75rem}@media (max-width: 480px){.modal-card{padding:1.25rem}}
