:root {--primary: #0066FF;--primary-dark: #0052CC;--primary-light: #E6F0FF;--secondary: #6366F1;--accent: #F59E0B;--success: #10B981;--success-light: #D1FAE5;--danger: #EF4444;--danger-light: #FEE2E2;--warning: #F59E0B;--warning-light: #FEF3C7;--bg-body: #F8FAFC;--bg-primary: #FFFFFF;--bg-secondary: #F1F5F9;--bg-tertiary: #E2E8F0;--bg-dark: #0F172A;--text-primary: #0F172A;--text-secondary: #475569;--text-muted: #94A3B8;--text-white: #FFFFFF;--border: #E2E8F0;--border-light: #F1F5F9;--gradient-primary: linear-gradient(135deg, #0066FF 0%, #6366F1 100%);--gradient-hero: linear-gradient(135deg, #0F172A 0%, #1E3A5F 50%, #0F172A 100%);--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);--shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);--shadow-md: 0 10px 15px -3px rgba(0, 0, 0, 0.1);--shadow-lg: 0 20px 25px -5px rgba(0, 0, 0, 0.1);--shadow-xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);--radius-sm: 4px;--radius: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-full: 9999px;--transition: all 0.2s ease;}
*, *::before, *::after {transition: background-color 0.15s ease, border-color 0.15s ease, color 0.15s ease;}
[data-theme="dark"] {--bg-body: #0F172A;--bg-primary: #1E293B;--bg-secondary: #334155;--bg-tertiary: #475569;--text-primary: #F8FAFC;--text-secondary: #CBD5E1;--text-muted: #94A3B8;--border: #334155;--border-light: #475569;--primary-light: rgba(0, 102, 255, 0.2);--success-light: rgba(16, 185, 129, 0.2);--danger-light: rgba(239, 68, 68, 0.2);--warning-light: rgba(245, 158, 11, 0.2);}
*, *::before, *::after {margin: 0;padding: 0;box-sizing: border-box;}
html {scroll-behavior: smooth;-webkit-font-smoothing: antialiased;}
body {font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;background-color: var(--bg-body);color: var(--text-primary);line-height: 1.6;min-height: 100vh;overflow-x: hidden;}
a {color: inherit;text-decoration: none;transition: var(--transition);}
img {max-width: 100%;height: auto;display: block;}
.container {width: 100%;max-width: 1280px;margin: 0 auto;padding: 0 1rem;}
@media (min-width: 768px) {.container {padding: 0 1.5rem;}}
@media (min-width: 1024px) {.container {padding: 0 2rem;}}
.btn {display: inline-flex;align-items: center;justify-content: center;gap: 0.375rem;padding: 0.5rem 1rem;font-size: 0.8125rem;font-weight: 500;border-radius: var(--radius-sm);border: none;cursor: pointer;transition: var(--transition);white-space: nowrap;text-decoration: none;font-family: inherit;}
.btn-primary {background: var(--primary);color: var(--text-white);}
.btn-primary:hover {background: var(--primary-dark);transform: translateY(-2px);box-shadow: 0 4px 12px rgba(0, 102, 255, 0.4);}
.btn-secondary {background: var(--bg-secondary);color: var(--text-primary);border: 1px solid var(--border);}
.btn-secondary:hover {border-color: var(--primary);color: var(--primary);}
.btn-outline {background: transparent;color: var(--text-primary);border: 2px solid var(--border);}
.btn-outline:hover {background: var(--bg-secondary);border-color: var(--primary);color: var(--primary);}
.btn-outline-white {background: transparent;color: var(--text-white);border: 2px solid rgba(255,255,255,0.3);}
.btn-outline-white:hover {background: rgba(255,255,255,0.1);border-color: var(--text-white);}
.btn-white {background: var(--text-white);color: var(--primary);}
.btn-white:hover {background: var(--bg-secondary);}
.btn-success {background: var(--success);color: var(--text-white);}
.btn-success:hover {background: #059669;}
.btn-danger {background: var(--danger);color: var(--text-white);}
.btn-danger:hover {background: #DC2626;}
.btn-lg {padding: 0.625rem 1.25rem;font-size: 0.875rem;}
.btn-sm {padding: 0.375rem 0.75rem;font-size: 0.75rem;}
.btn-xl {padding: 0.75rem 1.5rem;font-size: 0.9375rem;}
.btn-block {width: 100%;}
.form-group {margin-bottom: 1rem;}
.form-label {display: block;font-size: 0.75rem;font-weight: 600;margin-bottom: 0.375rem;color: var(--text-secondary);}
.form-control {width: 100%;padding: 0.5rem 0.75rem;font-size: 0.8125rem;font-family: inherit;border: 1px solid var(--border);border-radius: var(--radius-sm);background-color: var(--bg-primary);color: var(--text-primary);transition: var(--transition);}
.form-control:focus {outline: none;border-color: var(--primary);box-shadow: 0 0 0 3px var(--primary-light);}
.form-control::placeholder {color: var(--text-muted);}
select.form-control {appearance: none;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%2394A3B8' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");background-position: right 1rem center;background-repeat: no-repeat;background-size: 1rem;padding-right: 2.5rem;cursor: pointer;}
[data-theme="dark"] select.form-control {background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='%23CBD5E1' viewBox='0 0 16 16'%3E%3Cpath d='M8 11L3 6h10l-5 5z'/%3E%3C/svg%3E");}
textarea.form-control {min-height: 120px;resize: vertical;}
.card {background: var(--bg-primary);border-radius: var(--radius-lg);box-shadow: var(--shadow);border: 1px solid var(--border-light);overflow: hidden;transition: var(--transition);}
.card:hover {box-shadow: var(--shadow-md);}
[data-theme="dark"] .card {border-color: var(--border);}
.card-header {padding: 1.25rem 1.5rem;border-bottom: 1px solid var(--border);font-weight: 600;}
.card-body {padding: 1.5rem;}
.badge {display: inline-flex;align-items: center;padding: 0.375rem 0.75rem;font-size: 0.75rem;font-weight: 600;border-radius: var(--radius-full);}
.badge-primary {background: var(--primary-light);color: var(--primary);}
.badge-success, .badge-completed {background: var(--success-light);color: var(--success);}
.badge-danger, .badge-cancelled {background: var(--danger-light);color: var(--danger);}
.badge-warning, .badge-pending {background: var(--warning-light);color: var(--warning);}
.badge-secondary, .badge-assigned, .badge-confirmed, .badge-in_progress {background: var(--bg-tertiary);color: var(--text-secondary);}
[data-theme="dark"] .badge-success, [data-theme="dark"] .badge-completed {background: rgba(16, 185, 129, 0.2);color: #6EE7B7;}
[data-theme="dark"] .badge-danger, [data-theme="dark"] .badge-cancelled {background: rgba(239, 68, 68, 0.2);color: #FCA5A5;}
[data-theme="dark"] .badge-warning, [data-theme="dark"] .badge-pending {background: rgba(245, 158, 11, 0.2);color: #FCD34D;}
[data-theme="dark"] .badge-primary {background: rgba(0, 102, 255, 0.2);color: #93C5FD;}
[data-theme="dark"] .badge-secondary, [data-theme="dark"] .badge-assigned, [data-theme="dark"] .badge-confirmed, [data-theme="dark"] .badge-in_progress {background: var(--bg-tertiary);color: var(--text-secondary);}
.alert {padding: 1rem 1.25rem;border-radius: var(--radius);margin-bottom: 1.25rem;border-left: 4px solid;}
.alert-success {background: var(--success-light);color: #065F46;border-color: var(--success);}
.alert-danger {background: var(--danger-light);color: #991B1B;border-color: var(--danger);}
.alert-warning {background: var(--warning-light);color: #92400E;border-color: var(--warning);}
.alert-info {background: var(--primary-light);color: #1E40AF;border-color: var(--primary);}
[data-theme="dark"] .alert-success {background: rgba(16, 185, 129, 0.15);color: #6EE7B7;border-color: var(--success);}
[data-theme="dark"] .alert-danger {background: rgba(239, 68, 68, 0.15);color: #FCA5A5;border-color: var(--danger);}
[data-theme="dark"] .alert-warning {background: rgba(245, 158, 11, 0.15);color: #FCD34D;border-color: var(--warning);}
[data-theme="dark"] .alert-info {background: rgba(0, 102, 255, 0.15);color: #93C5FD;border-color: var(--primary);}
.header {background: var(--bg-primary);border-bottom: 1px solid var(--border);position: sticky;top: 0;z-index: 1000;}
.header-inner {display: flex;align-items: center;justify-content: space-between;padding: 0.875rem 0;gap: 1rem;}
.logo {font-size: 1.25rem;font-weight: 800;color: var(--primary);display: flex;align-items: center;gap: 0.5rem;}
@media (min-width: 768px) {.logo {font-size: 1.5rem;}}
.nav {display: none;position: fixed;top: 0;left: 0;right: 0;bottom: 0;background: var(--bg-primary);flex-direction: column;padding: 5rem 1.5rem 1.5rem;z-index: 999;}
.nav.active {display: flex;}
.nav a {color: var(--text-secondary);font-weight: 500;padding: 1rem;border-radius: var(--radius);transition: var(--transition);font-size: 1.125rem;}
.nav a:hover, .nav a.active {color: var(--primary);background: var(--primary-light);}
@media (min-width: 1024px) {.nav {display: flex;position: static;flex-direction: row;padding: 0;background: transparent;gap: 0.25rem;}.nav a {padding: 0.5rem 1rem;font-size: 0.9375rem;}}
.header-actions {display: flex;align-items: center;gap: 0.5rem;}
.header-switchers {display: none;}
@media (min-width: 768px) {.header-switchers {display: flex;align-items: center;gap: 0.5rem;}}
.header-buttons {display: none;}
@media (min-width: 768px) {.header-buttons {display: flex;align-items: center;gap: 0.5rem;}}
.mobile-menu-btn {display: flex;align-items: center;justify-content: center;width: 44px;height: 44px;background: var(--bg-secondary);border: 1px solid var(--border);border-radius: var(--radius);cursor: pointer;z-index: 1001;}
.hamburger {display: flex;flex-direction: column;gap: 4px;}
.hamburger span {display: block;width: 20px;height: 2px;background: var(--text-primary);transition: var(--transition);}
.mobile-menu-btn.active .hamburger span:nth-child(1) {transform: rotate(45deg) translate(4px, 4px);}
.mobile-menu-btn.active .hamburger span:nth-child(2) {opacity: 0;}
.mobile-menu-btn.active .hamburger span:nth-child(3) {transform: rotate(-45deg) translate(4px, -4px);}
@media (min-width: 1024px) {.mobile-menu-btn {display: none;}}
.lang-dropdown, .currency-dropdown {position: relative;}
.dropdown-toggle {display: flex;align-items: center;gap: 0.375rem;padding: 0.5rem 0.75rem;background: var(--bg-secondary);border: 1px solid var(--border);border-radius: var(--radius);cursor: pointer;font-size: 0.8125rem;font-weight: 600;color: var(--text-primary);transition: var(--transition);}
.dropdown-toggle:hover {border-color: var(--primary);}
.dropdown-menu {position: absolute;top: calc(100% + 0.5rem);right: 0;min-width: 140px;background: var(--bg-primary);border: 1px solid var(--border);border-radius: var(--radius);box-shadow: var(--shadow-lg);opacity: 0;visibility: hidden;transform: translateY(-10px);transition: var(--transition);z-index: 100;}
.lang-dropdown:hover .dropdown-menu, .currency-dropdown:hover .dropdown-menu, .lang-dropdown.open .dropdown-menu, .currency-dropdown.open .dropdown-menu {opacity: 1;visibility: visible;transform: translateY(0);}
.dropdown-item {display: block;width: 100%;padding: 0.625rem 1rem;background: none;border: none;cursor: pointer;font-size: 0.875rem;color: var(--text-primary);text-align: left;transition: var(--transition);}
.dropdown-item:hover {background: var(--bg-secondary);}
.dropdown-item.active {background: var(--primary-light);color: var(--primary);}
.theme-switcher {display: flex;align-items: center;}
.theme-toggle {position: relative;width: 44px;height: 44px;cursor: pointer;display: flex;align-items: center;justify-content: center;background: var(--bg-secondary);border: 1px solid var(--border);border-radius: var(--radius);transition: var(--transition);}
.theme-toggle:hover {background: var(--bg-tertiary);border-color: var(--primary);}
.theme-toggle input {opacity: 0;width: 0;height: 0;position: absolute;}
.toggle-slider {display: flex;align-items: center;justify-content: center;}
.toggle-slider svg {width: 20px;height: 20px;color: var(--text-primary);transition: var(--transition);}
.toggle-slider .sun-icon {display: block;color: #F59E0B;}
.toggle-slider .moon-icon {display: none;color: #6366F1;}
[data-theme="dark"] .toggle-slider .sun-icon {display: none;}
[data-theme="dark"] .toggle-slider .moon-icon {display: block;}
.hero {position: relative;background: var(--gradient-hero);color: var(--text-white);padding: 3rem 0 6rem;overflow: hidden;}
@media (min-width: 768px) {.hero {padding: 4rem 0 8rem;}}
@media (min-width: 1024px) {.hero {padding: 5rem 0 10rem;}}
.hero-content {position: relative;z-index: 1;text-align: center;max-width: 800px;margin: 0 auto;}
.hero-badge {display: inline-flex;align-items: center;gap: 0.5rem;padding: 0.5rem 1rem;background: rgba(255, 255, 255, 0.1);border: 1px solid rgba(255, 255, 255, 0.2);border-radius: var(--radius-full);font-size: 0.875rem;font-weight: 500;margin-bottom: 1.5rem;}
.hero-title {font-size: 1.75rem;font-weight: 800;line-height: 1.2;margin-bottom: 1rem;}
@media (min-width: 768px) {.hero-title {font-size: 2.5rem;}}
@media (min-width: 1024px) {.hero-title {font-size: 3.25rem;}}
.hero-title .highlight {color: #60A5FA;}
.hero-subtitle {font-size: 1rem;color: rgba(255, 255, 255, 0.8);margin-bottom: 2rem;line-height: 1.7;}
@media (min-width: 768px) {.hero-subtitle {font-size: 1.125rem;}}
.hero-buttons {display: flex;flex-direction: column;gap: 0.75rem;align-items: center;}
@media (min-width: 480px) {.hero-buttons {flex-direction: row;justify-content: center;}}
.hero-stats {display: grid;grid-template-columns: repeat(3, 1fr);gap: 1rem;margin-top: 3rem;padding-top: 2rem;border-top: 1px solid rgba(255, 255, 255, 0.1);}
@media (min-width: 768px) {.hero-stats {gap: 2rem;margin-top: 4rem;}}
.hero-stat {text-align: center;}
.stat-number {font-size: 1.5rem;font-weight: 700;margin-bottom: 0.25rem;}
@media (min-width: 768px) {.stat-number {font-size: 2rem;}}
.stat-label {font-size: 0.75rem;color: rgba(255, 255, 255, 0.6);}
@media (min-width: 768px) {.stat-label {font-size: 0.875rem;}}
.hero-curve {position: absolute;bottom: -1px;left: 0;right: 0;height: 60px;}
@media (min-width: 768px) {.hero-curve {height: 100px;}}
.hero-curve svg {width: 100%;height: 100%;}
.booking-section {position: relative;z-index: 10;margin-top: -3rem;padding-bottom: 3rem;}
@media (min-width: 768px) {.booking-section {margin-top: -5rem;padding-bottom: 4rem;}}
.booking-card {background: var(--bg-primary);border-radius: var(--radius-lg);padding: 1.5rem;box-shadow: var(--shadow-xl);border: 1px solid var(--border-light);}
@media (min-width: 768px) {.booking-card {padding: 2rem;border-radius: var(--radius-xl);}}
.booking-header {text-align: center;margin-bottom: 1.5rem;}
.booking-title {font-size: 1.25rem;font-weight: 700;margin-bottom: 0.5rem;}
@media (min-width: 768px) {.booking-title {font-size: 1.5rem;}}
.booking-subtitle {color: var(--text-muted);font-size: 0.9375rem;}
.form-grid {display: grid;grid-template-columns: 1fr;gap: 1rem;margin-bottom: 1rem;}
@media (min-width: 768px) {.form-grid {grid-template-columns: repeat(2, 1fr);gap: 1.25rem;}}
.form-grid-4 {display: grid;grid-template-columns: 1fr;gap: 1rem;margin-bottom: 1.5rem;}
@media (min-width: 480px) {.form-grid-4 {grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1024px) {.form-grid-4 {grid-template-columns: repeat(4, 1fr);}}
.booking-submit {margin-top: 0.5rem;}
.section {padding: 3rem 0;}
@media (min-width: 768px) {.section {padding: 4rem 0;}}
@media (min-width: 1024px) {.section {padding: 5rem 0;}}
.section-header {text-align: center;max-width: 600px;margin: 0 auto 2rem;}
@media (min-width: 768px) {.section-header {margin-bottom: 3rem;}}
.section-badge {display: inline-flex;padding: 0.375rem 0.875rem;background: var(--primary-light);color: var(--primary);font-size: 0.75rem;font-weight: 600;border-radius: var(--radius-full);margin-bottom: 1rem;text-transform: uppercase;letter-spacing: 0.05em;}
.section-title {font-size: 1.5rem;font-weight: 800;margin-bottom: 0.75rem;}
@media (min-width: 768px) {.section-title {font-size: 2rem;}}
@media (min-width: 1024px) {.section-title {font-size: 2.25rem;}}
.section-subtitle {font-size: 1rem;color: var(--text-muted);line-height: 1.7;}
.vehicle-grid {display: grid;grid-template-columns: 1fr;gap: 1.5rem;}
@media (min-width: 640px) {.vehicle-grid {grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1024px) {.vehicle-grid {grid-template-columns: repeat(4, 1fr);}}
.vehicle-card {background: var(--bg-primary);border-radius: var(--radius-lg);padding: 1.5rem;border: 2px solid var(--border);transition: var(--transition);position: relative;}
.vehicle-card:hover {border-color: var(--primary);box-shadow: var(--shadow-lg);transform: translateY(-4px);}
[data-theme="dark"] .vehicle-card {border-color: var(--border);}
.vehicle-badge {position: absolute;top: 1rem;right: 1rem;padding: 0.25rem 0.625rem;background: var(--primary);color: var(--text-white);font-size: 0.6875rem;font-weight: 600;border-radius: var(--radius-full);text-transform: uppercase;}
.vehicle-image {height: 120px;display: flex;align-items: center;justify-content: center;margin-bottom: 1rem;background: var(--bg-secondary);border-radius: var(--radius);}
.vehicle-placeholder {font-size: 3rem;opacity: 0.3;}
.vehicle-content {text-align: center;}
.vehicle-name {font-size: 1.125rem;font-weight: 700;margin-bottom: 0.75rem;}
.vehicle-features {display: flex;justify-content: center;gap: 1rem;margin-bottom: 1rem;font-size: 0.875rem;color: var(--text-muted);}
.vehicle-price {font-size: 1.5rem;font-weight: 800;color: var(--primary);margin-bottom: 1rem;}
.vehicle-price .price-unit {font-size: 0.875rem;font-weight: 400;color: var(--text-muted);}
.features-grid {display: grid;grid-template-columns: 1fr;gap: 1.5rem;}
@media (min-width: 640px) {.features-grid {grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1024px) {.features-grid {grid-template-columns: repeat(3, 1fr);}}
.feature-card {background: var(--bg-primary);border-radius: var(--radius-lg);padding: 2rem 1.5rem;border: 1px solid var(--border-light);text-align: center;transition: var(--transition);}
.feature-card:hover {box-shadow: var(--shadow-md);transform: translateY(-4px);}
[data-theme="dark"] .feature-card {border-color: var(--border);}
.feature-icon-wrapper {width: 64px;height: 64px;margin: 0 auto 1.25rem;background: var(--gradient-primary);border-radius: var(--radius-lg);display: flex;align-items: center;justify-content: center;}
.feature-icon-wrapper svg {width: 28px;height: 28px;color: var(--text-white);}
.feature-title {font-size: 1.125rem;font-weight: 700;margin-bottom: 0.5rem;}
.feature-description {color: var(--text-muted);font-size: 0.9375rem;line-height: 1.6;}
.section-trust {background: var(--bg-secondary);}
.trust-grid {display: grid;grid-template-columns: repeat(2, 1fr);gap: 1.5rem;}
@media (min-width: 768px) {.trust-grid {grid-template-columns: repeat(4, 1fr);}}
.trust-item {background: var(--bg-primary);border-radius: var(--radius-lg);padding: 1.5rem;text-align: center;border: 1px solid var(--border-light);}
[data-theme="dark"] .trust-item {border-color: var(--border);}
.trust-icon {width: 48px;height: 48px;margin: 0 auto 1rem;background: var(--primary-light);border-radius: var(--radius);display: flex;align-items: center;justify-content: center;}
.trust-icon svg {width: 24px;height: 24px;color: var(--primary);}
.trust-number {font-size: 1.5rem;font-weight: 800;color: var(--primary);margin-bottom: 0.25rem;}
.trust-label {font-size: 0.8125rem;color: var(--text-muted);}
.section-tracking {background: var(--bg-secondary);padding: 3rem 0;}
.tracking-card {background: var(--bg-primary);border-radius: var(--radius-xl);padding: 2rem;box-shadow: var(--shadow);border: 1px solid var(--border-light);max-width: 800px;margin: 0 auto;}
[data-theme="dark"] .tracking-card {border-color: var(--border);}
.tracking-header {text-align: center;margin-bottom: 1.5rem;}
.tracking-icon {width: 56px;height: 56px;margin: 0 auto 1rem;background: var(--primary-light);border-radius: var(--radius-full);display: flex;align-items: center;justify-content: center;}
.tracking-icon svg {width: 28px;height: 28px;color: var(--primary);}
.tracking-title {font-size: 1.5rem;font-weight: 700;margin-bottom: 0.5rem;color: var(--text-primary);}
.tracking-subtitle {font-size: 0.9375rem;color: var(--text-muted);}
.tracking-inputs {display: grid;grid-template-columns: 1fr;gap: 1rem;align-items: end;}
@media (min-width: 640px) {.tracking-inputs {grid-template-columns: 1fr 1fr auto;}}
.tracking-btn {height: 42px;}
@media (max-width: 639px) {.tracking-btn {width: 100%;}}
.section-cta {background: var(--gradient-hero);color: var(--text-white);text-align: center;}
.cta-content {max-width: 600px;margin: 0 auto;}
.cta-title {font-size: 1.75rem;font-weight: 800;margin-bottom: 1rem;}
@media (min-width: 768px) {.cta-title {font-size: 2.25rem;}}
.cta-subtitle {font-size: 1rem;color: rgba(255, 255, 255, 0.8);margin-bottom: 2rem;line-height: 1.7;}
.cta-buttons {display: flex;flex-direction: column;gap: 0.75rem;align-items: center;}
@media (min-width: 480px) {.cta-buttons {flex-direction: row;justify-content: center;}}
.footer {background: var(--bg-dark);color: var(--text-white);padding: 3rem 0 1.5rem;}
@media (min-width: 768px) {.footer {padding: 4rem 0 2rem;}}
.footer-main {display: grid;grid-template-columns: 1fr;gap: 2rem;margin-bottom: 2rem;}
@media (min-width: 640px) {.footer-main {grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1024px) {.footer-main {grid-template-columns: 2fr 1fr 1fr 1fr;gap: 3rem;}}
.footer-brand {max-width: 280px;}
.footer-logo {display: inline-block;font-size: 1.5rem;font-weight: 800;color: var(--primary);margin-bottom: 1rem;}
.footer-tagline {color: rgba(255, 255, 255, 0.6);font-size: 0.9375rem;line-height: 1.7;margin-bottom: 1.5rem;}
.footer-social {display: flex;gap: 0.75rem;}
.social-link {width: 40px;height: 40px;background: rgba(255, 255, 255, 0.1);border-radius: var(--radius);display: flex;align-items: center;justify-content: center;color: var(--text-white);transition: var(--transition);}
.social-link:hover {background: var(--primary);}
.social-link svg {width: 18px;height: 18px;}
.footer-title {font-size: 1rem;font-weight: 700;margin-bottom: 1rem;color: var(--text-white);}
.footer-links {list-style: none;}
.footer-links li {margin-bottom: 0.625rem;}
.footer-links a {color: rgba(255, 255, 255, 0.6);font-size: 0.9375rem;transition: var(--transition);}
.footer-links a:hover {color: var(--primary);}
.footer-contact {list-style: none;}
.footer-contact li {display: flex;align-items: center;gap: 0.75rem;margin-bottom: 0.75rem;color: rgba(255, 255, 255, 0.6);font-size: 0.9375rem;}
.footer-contact li a {color: rgba(255, 255, 255, 0.6);}
.footer-contact li a:hover {color: var(--primary);}
.contact-icon {width: 20px;text-align: center;}
.footer-bottom {padding-top: 1.5rem;border-top: 1px solid rgba(255, 255, 255, 0.1);display: flex;flex-direction: column;gap: 1rem;text-align: center;}
@media (min-width: 768px) {.footer-bottom {flex-direction: row;justify-content: space-between;align-items: center;text-align: left;}}
.footer-bottom-left p {color: rgba(255, 255, 255, 0.5);font-size: 0.875rem;}
.footer-bottom-right {display: flex;gap: 1rem;flex-wrap: wrap;justify-content: center;}
@media (min-width: 768px) {.footer-bottom-right {justify-content: flex-end;}}
.footer-bottom-right a {color: rgba(255, 255, 255, 0.5);font-size: 0.875rem;}
.footer-bottom-right a:hover {color: var(--primary);}
.footer-bottom-right .separator {color: rgba(255, 255, 255, 0.3);}
.table-container {overflow-x: auto;border-radius: var(--radius);border: 1px solid var(--border);}
table {width: 100%;border-collapse: collapse;min-width: 600px;}
th, td {padding: 1rem;text-align: left;border-bottom: 1px solid var(--border);}
th {font-weight: 600;font-size: 0.8125rem;text-transform: uppercase;letter-spacing: 0.05em;color: var(--text-muted);background: var(--bg-secondary);}
.table {width: 100%;border-collapse: collapse;}
.table th {background-color: var(--bg-secondary);padding: 0.875rem 1rem;text-align: left;font-size: 0.75rem;font-weight: 600;text-transform: uppercase;letter-spacing: 0.05em;color: var(--text-muted);white-space: nowrap;}
.table td {padding: 0.875rem 1rem;border-bottom: 1px solid var(--border);font-size: 0.875rem;}
.table tr:last-child td {border-bottom: none;}
.table tr:hover {background-color: var(--bg-secondary);}
.table-responsive {overflow-x: auto;-webkit-overflow-scrolling: touch;}
.auth-page {min-height: 100vh;display: flex;background: var(--gradient-hero);}
.auth-container {display: flex;align-items: center;justify-content: center;width: 100%;padding: 1.5rem;}
.auth-card {width: 100%;max-width: 420px;background: var(--bg-primary);border-radius: var(--radius-xl);padding: 2rem;box-shadow: var(--shadow-xl);}
@media (min-width: 768px) {.auth-card {padding: 2.5rem;}}
[data-theme="dark"] .auth-card {border: 1px solid var(--border);}
.auth-logo {text-align: center;margin-bottom: 1.5rem;}
.auth-title {text-align: center;font-size: 1.5rem;font-weight: 800;margin-bottom: 0.5rem;}
.auth-subtitle {text-align: center;color: var(--text-muted);margin-bottom: 1.5rem;}
.auth-footer {text-align: center;margin-top: 1.5rem;font-size: 0.9375rem;color: var(--text-muted);}
.auth-footer a {color: var(--primary);font-weight: 600;}
.text-success {color: var(--success);}
.text-danger {color: var(--danger);}
.text-warning {color: var(--warning);}
.text-muted {color: var(--text-muted);}
.text-center {text-align: center;}
.text-right {text-align: right;}
.mb-0 {margin-bottom: 0;}
.mb-1 {margin-bottom: 0.5rem;}
.mb-2 {margin-bottom: 1rem;}
.mb-3 {margin-bottom: 1.5rem;}
.mb-4 {margin-bottom: 2rem;}
.mt-1 {margin-top: 0.5rem;}
.mt-2 {margin-top: 1rem;}
.mt-3 {margin-top: 1.5rem;}
.mt-4 {margin-top: 2rem;}
.d-flex {display: flex;}
.align-center {align-items: center;}
.justify-between {justify-content: space-between;}
.justify-center {justify-content: center;}
.gap-1 {gap: 0.5rem;}
.gap-2 {gap: 1rem;}
.hidden {display: none;}
.pagination {display: flex;list-style: none;gap: 0.375rem;justify-content: center;margin-top: 2rem;}
.pagination li a {display: flex;align-items: center;justify-content: center;min-width: 40px;height: 40px;padding: 0 0.75rem;border-radius: var(--radius);background: var(--bg-primary);color: var(--text-secondary);border: 1px solid var(--border);font-weight: 500;}
.pagination li a:hover, .pagination li.active a {background: var(--primary);color: var(--text-white);border-color: var(--primary);}
.loading-spinner {display: inline-block;width: 20px;height: 20px;border: 2px solid var(--border);border-radius: 50%;border-top-color: var(--primary);animation: spin 0.8s linear infinite;}
@keyframes spin {to {transform: rotate(360deg);}}
.animate-in {animation: fadeInUp 0.5s ease forwards;}
@keyframes fadeInUp {from {opacity: 0;transform: translateY(20px);}to {opacity: 1;transform: translateY(0);}}
.grid {display: grid;gap: 1.5rem;}
.grid-2 {grid-template-columns: 1fr;}
.grid-3 {grid-template-columns: 1fr;}
.grid-4 {grid-template-columns: 1fr;}
@media (min-width: 640px) {.grid-2 {grid-template-columns: repeat(2, 1fr);}.grid-3 {grid-template-columns: repeat(2, 1fr);}.grid-4 {grid-template-columns: repeat(2, 1fr);}}
@media (min-width: 1024px) {.grid-3 {grid-template-columns: repeat(3, 1fr);}.grid-4 {grid-template-columns: repeat(4, 1fr);}}
.filter-form {display: flex;align-items: center;gap: 0.75rem;flex-wrap: wrap;}
.stat-value {font-size: 1.75rem;font-weight: 700;color: var(--text-primary);margin-bottom: 0.25rem;}
.stat-card {background-color: var(--bg-primary);border-radius: var(--radius-lg);padding: 1.25rem;box-shadow: var(--shadow);}
[data-theme="dark"] .stat-card {border: 1px solid var(--border);}
.stats-grid {display: grid;grid-template-columns: repeat(4, 1fr);gap: 1.5rem;margin-bottom: 1.5rem;}
@media (max-width: 1200px) {.stats-grid {grid-template-columns: repeat(2, 1fr);}}
@media (max-width: 640px) {.stats-grid {grid-template-columns: 1fr;}}
.empty-state {text-align: center;padding: 3rem 1rem;}
.empty-state h3 {font-weight: 600;margin-bottom: 0.5rem;}
.empty-state p {color: var(--text-muted);margin-bottom: 1.5rem;}
.trip-type-toggle {display: flex;gap: 0.5rem;margin-bottom: 1.25rem;}
.trip-btn {flex: 1;padding: 0.75rem 1rem;border: 2px solid var(--border);border-radius: var(--radius);background: var(--bg-secondary);cursor: pointer;font-size: 0.875rem;font-weight: 600;color: var(--text-secondary);transition: var(--transition);}
.trip-btn:hover {border-color: var(--primary);color: var(--primary);}
.trip-btn.active {border-color: var(--primary);background: var(--primary);color: white;}
.add-stop-button {display: flex;align-items: center;justify-content: center;gap: 0.5rem;width: 100%;padding: 0.625rem;border: 2px dashed var(--border);border-radius: var(--radius);background: transparent;color: var(--text-muted);cursor: pointer;font-size: 0.8125rem;font-weight: 500;transition: var(--transition);margin-bottom: 1rem;}
.add-stop-button:hover {border-color: var(--primary);color: var(--primary);background: var(--primary-light);}
.stop-row {margin-bottom: 1rem;animation: fadeInUp 0.3s ease;}
.stop-group {margin-bottom: 0 !important;}
.stop-input-wrapper {display: flex;gap: 0.5rem;align-items: center;}
.stop-input-wrapper .form-control {flex: 1;}
.remove-stop-btn {width: 36px;height: 36px;display: flex;align-items: center;justify-content: center;background: var(--danger-light);border: none;border-radius: var(--radius);color: var(--danger);cursor: pointer;transition: var(--transition);flex-shrink: 0;}
.remove-stop-btn:hover {background: var(--danger);color: white;}
.wait-time-row {display: flex;align-items: center;gap: 0.5rem;margin-top: 0.5rem;padding-left: 0.5rem;}
.wait-time-row label {font-size: 0.75rem;color: var(--text-muted);white-space: nowrap;}
.wait-inputs {display: flex;align-items: center;gap: 0.25rem;}
.wait-input {width: 50px;padding: 0.375rem 0.5rem;border: 1px solid var(--border);border-radius: var(--radius-sm);font-size: 0.75rem;background: var(--bg-primary);color: var(--text-primary);text-align: center;}
.wait-inputs span {font-size: 0.6875rem;color: var(--text-muted);}
.return-fields {margin-bottom: 1rem;}
.return-divider {display: flex;align-items: center;gap: 1rem;margin-bottom: 1rem;}
.return-divider::before, .return-divider::after {content: "";flex: 1;height: 1px;background: var(--border);}
.return-divider span {font-size: 0.8125rem;font-weight: 600;color: var(--primary);white-space: nowrap;}
@media (min-width: 1024px) {.nav a {padding: 0.5rem 0.75rem;font-size: 0.8125rem;}}
.header-buttons {display: flex;flex-direction: column;gap: 0.375rem;}
@media (min-width: 768px) {.header-buttons {display: flex;flex-direction: column;gap: 0.375rem;}}
@media (min-width: 1200px) {.header-buttons {flex-direction: row;gap: 0.5rem;}}
.theme-toggle {width: 36px;height: 36px;}
.theme-toggle .toggle-slider svg {width: 18px;height: 18px;}
.dropdown-toggle {height: 36px;padding: 0.375rem 0.625rem;display: flex;align-items: center;gap: 0.375rem;}
.dropdown-toggle .flag {font-size: 1.125rem;line-height: 1;}
.dropdown-toggle .symbol {font-size: 1rem;font-weight: 700;}
.dropdown-toggle .code {font-size: 0.6875rem;}
.flag-icon {width: 20px !important;height: 14px !important;object-fit: cover;border-radius: 2px;box-shadow: 0 0 0 1px rgba(0,0,0,0.1);flex-shrink: 0;}
.dropdown-toggle .flag-icon {width: 20px !important;height: 14px !important;}
.dropdown-item {display: flex;align-items: center;gap: 0.5rem;padding: 0.5rem 0.75rem;}
.dropdown-item .flag {font-size: 1.125rem;line-height: 1;}
.dropdown-item .flag-icon {width: 18px !important;height: 13px !important;}
.dropdown-item .symbol {font-size: 1rem;font-weight: 700;width: 1.25rem;text-align: center;}
.header-switchers {gap: 0.375rem;}
@media (max-width: 1023px) {.header-switchers {display: none;}}
@media (min-width: 1024px) {.header-switchers {display: flex;}}
