*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button{font-family:inherit;font-size:inherit;line-height:inherit;border:none;background:none;cursor:pointer;padding:0}input,textarea,select{font-family:inherit;font-size:inherit;line-height:inherit}a{color:inherit;text-decoration:none}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-bold);line-height:var(--line-height-tight);margin:0}*:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}*:focus:not(:focus-visible){outline:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:root{--color-black: #000000;--color-white: #FFFFFF;--color-dark-gray: #333333;--color-medium-gray: #666666;--color-light-gray: #E5E5E5;--color-bg-light: #F5F5F5;--color-dark-green: #1B5E20;--color-green: #4CAF50;--color-red: #DC3545;--color-blue: #2196F3;--color-light-blue: #B3E5FC;--color-purple: #9C27B0;--color-pink: #E91E63;--input-bg: #E3F2FD;--input-border: #CCCCCC;--input-border-focus: #2196F3;--bg-primary: #FFFFFF;--bg-secondary: #F5F5F5;--bg-header: #000000;--bg-footer: #0D3D10;--bg-button-primary: #333333;--bg-button-hover: #555555;--bg-success: #E8F5E9;--text-primary: #000000;--text-secondary: #666666;--text-white: #FFFFFF;--text-link: #2196F3;--text-success: #2E7D32;--text-error: #DC3545;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--line-height-tight: 1.2;--line-height-normal: 1.5;--line-height-relaxed: 1.75;--spacing-0: 0;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--spacing-16: 4rem;--spacing-20: 5rem;--border-width: 1px;--border-color: var(--input-border);--radius-sm: .125rem;--radius-md: .125rem;--radius-lg: .125rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-modal: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--breakpoint-sm: 640px;--breakpoint-md: 768px;--breakpoint-lg: 1024px;--breakpoint-xl: 1280px;--breakpoint-2xl: 1536px;--container-max-width: 1280px;--container-padding: var(--spacing-4);--header-height: 100px;--footer-padding: var(--spacing-12) var(--spacing-8);--transition-fast: .15s ease-in-out;--transition-base: .3s ease-in-out;--transition-slow: .5s ease-in-out;--z-dropdown: 100;--z-sticky: 200;--z-modal-backdrop: 900;--z-modal: 1000;--z-tooltip: 1100}@media (max-width: 640px){:root{--container-padding: var(--spacing-3);--header-height: 80px;--footer-padding: var(--spacing-8) var(--spacing-4)}}@media (min-width: 641px) and (max-width: 768px){:root{--container-padding: var(--spacing-4)}}body{margin:0;font-family:var(--font-family);font-size:var(--font-size-base);font-weight:var(--font-weight-normal);line-height:var(--line-height-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}.topbar{background-color:var(--bg-header);color:var(--text-white);padding:var(--spacing-4);font-size:var(--font-size-sm)}.topbar-content{max-width:var(--container-max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.topbar-right{display:flex;gap:var(--spacing-6);align-items:center}.topbar-link,.topbar-info{display:flex;align-items:center;gap:var(--spacing-2);color:var(--text-white);transition:opacity var(--transition-fast)}.topbar-link:hover{opacity:.8}.topbar-icon{width:18px;height:18px;flex-shrink:0}.topbar-icon--envelope{stroke:var(--color-red)}.topbar-icon--user{fill:var(--color-red)}@media (max-width: 768px){.topbar{padding:var(--spacing-2);font-size:var(--font-size-xs)}.topbar-content{flex-wrap:wrap;gap:var(--spacing-2)}.topbar-right{gap:var(--spacing-3)}}@media (max-width: 640px){.topbar{display:none}}.logo{display:flex;align-items:center}.logo-image{width:auto;height:auto;object-fit:contain}.logo--header .logo-image{height:40px}.logo--footer .logo-image{height:60px}@media (max-width: 768px){.logo--header .logo-image{height:32px}.logo--footer .logo-image{height:48px}}.navbar{background-color:var(--bg-header);color:var(--text-white);border-bottom:1px solid rgba(255,255,255,.1)}.navbar-content{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-4);display:flex;justify-content:space-between;align-items:center}.navbar-nav{display:flex;gap:var(--spacing-6);align-items:center;list-style:none}.navbar-link{color:var(--text-white);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:opacity var(--transition-fast);background:none;border:none;cursor:pointer;text-decoration:none}.navbar-link:hover{opacity:.8}.navbar-link--button{font-family:inherit;padding:0;margin:0;display:inline}.dropdown-icon{font-size:var(--font-size-xs);margin-left:var(--spacing-1)}.navbar-dropdown{position:relative}.navbar-dropdown-menu{position:absolute;top:100%;left:0;margin-top:var(--spacing-2);background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);list-style:none;padding:var(--spacing-2) 0;min-width:200px;z-index:1000;display:flex;flex-direction:column}.navbar-dropdown-link{display:block;padding:var(--spacing-3) var(--spacing-4);color:var(--text-primary);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);text-decoration:none;transition:background-color var(--transition-fast)}.navbar-dropdown-link:hover{background-color:var(--bg-secondary);color:var(--text-primary)}.navbar-mobile-toggle{display:none;color:var(--text-white);font-size:var(--font-size-2xl);background:none;border:none;cursor:pointer}.navbar-nav--mobile{display:none;flex-direction:column;padding:var(--spacing-4);gap:var(--spacing-4)}@media (max-width: 768px){.navbar-mobile-toggle{display:block}.navbar-nav:not(.navbar-nav--mobile){display:none}.navbar-nav--mobile{display:flex}}@media (max-width: 640px){.navbar-content,.navbar-nav--mobile{padding:var(--spacing-3)}}.header{background-color:var(--bg-header);position:sticky;top:0;z-index:var(--z-sticky);box-shadow:var(--shadow-sm)}.footer{background-color:var(--bg-footer);color:var(--text-white)}.footer-main{padding:var(--footer-padding)}.footer-content{max-width:var(--container-max-width);margin:0 auto;display:grid;grid-template-columns:2fr 1.5fr 1fr;gap:var(--spacing-8)}.footer-locations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-6);grid-column:3;grid-row:1 / span 2}.footer-section--logo{grid-column:1}.footer-section--contact{grid-column:2}.footer-section{display:flex;flex-direction:column;gap:var(--spacing-4)}.footer-mission{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:#ffffffe6}.footer-social{display:flex;gap:var(--spacing-3);flex-wrap:wrap}.social-icon{width:40px;height:40px;border-radius:var(--radius-full);border:2px solid var(--text-white);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);transition:background-color var(--transition-fast)}.social-icon:hover{background-color:#ffffff1a}.footer-section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);margin-bottom:var(--spacing-2)}.footer-address,.footer-hours{font-size:var(--font-size-sm);line-height:var(--line-height-relaxed);color:#ffffffe6}.footer-hours{margin-top:var(--spacing-2)}.footer-contact-info{display:flex;flex-direction:column;gap:var(--spacing-4)}.footer-contact-item{display:flex;flex-direction:column;gap:var(--spacing-2)}.footer-contact-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#fffffff2;margin:0}.footer-contact-value{font-size:var(--font-size-sm);color:#ffffffe6;text-decoration:none;transition:color var(--transition-fast);line-height:var(--line-height-relaxed)}.footer-contact-value:hover{color:var(--text-white);text-decoration:underline}.footer-section--location{min-width:0}.footer-bottom{background-color:transparent;padding:var(--spacing-4) var(--spacing-8);border-top:1px solid rgba(255,255,255,.1)}.footer-bottom-content{max-width:var(--container-max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center}.footer-copyright{font-size:var(--font-size-sm);color:#fffc}.footer-nav{display:flex;gap:var(--spacing-4)}.footer-nav-link{font-size:var(--font-size-sm);color:var(--text-white);transition:opacity var(--transition-fast)}.footer-nav-link:hover{opacity:.8}@media (max-width: 1200px){.footer-content{grid-template-columns:2fr 1.5fr;gap:var(--spacing-6)}.footer-locations-grid{grid-column:1 / -1;grid-row:auto;grid-template-columns:repeat(3,1fr)}}@media (max-width: 1024px){.footer-content{grid-template-columns:1fr 1fr;gap:var(--spacing-6)}.footer-locations-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.footer-content{grid-template-columns:1fr;gap:var(--spacing-8)}.footer-locations-grid{grid-column:1;grid-template-columns:1fr}.footer-bottom-content{flex-direction:column;gap:var(--spacing-4);text-align:center}.footer-nav{flex-wrap:wrap;justify-content:center}}@media (max-width: 640px){.footer-main{padding:var(--spacing-8) var(--spacing-4)}.footer-bottom{padding:var(--spacing-3) var(--spacing-4)}.footer-bottom-content{gap:var(--spacing-3)}.social-icon{width:36px;height:36px;font-size:var(--font-size-lg)}}.floating-buttons{position:fixed;bottom:var(--spacing-6);right:var(--spacing-6);display:flex;flex-direction:column;gap:var(--spacing-3);z-index:var(--z-sticky);opacity:0;visibility:hidden;transition:opacity var(--transition-base),visibility var(--transition-base)}.floating-buttons.visible{opacity:1;visibility:visible}.floating-btn{width:50px;height:50px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-xl);box-shadow:var(--shadow-lg);transition:transform var(--transition-fast),box-shadow var(--transition-fast);cursor:pointer}.floating-btn:hover{transform:scale(1.1);box-shadow:var(--shadow-modal)}.floating-btn--chat{background-color:var(--color-blue);color:var(--text-white)}.floating-btn--scroll{background-color:var(--color-red);color:var(--text-white)}@media (max-width: 640px){.floating-buttons{bottom:var(--spacing-4);right:var(--spacing-4)}.floating-btn{width:44px;height:44px;font-size:var(--font-size-lg)}}.toast{display:flex;align-items:center;justify-content:space-between;min-width:300px;max-width:500px;padding:1rem 1.25rem;border-radius:var(--radius-md);box-shadow:0 4px 12px #00000026;background-color:var(--color-white);border-left:4px solid;animation:slideIn .3s ease-out;position:relative;margin-bottom:.75rem}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-content{display:flex;align-items:center;gap:.75rem;flex:1}.toast-icon-wrapper{display:flex;align-items:center;justify-content:center;flex-shrink:0}.toast-icon{width:20px;height:20px;flex-shrink:0}.toast-message{margin:0;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);line-height:1.5}.toast-close{background:none;border:none;cursor:pointer;padding:.25rem;display:flex;align-items:center;justify-content:center;margin-left:.75rem;opacity:.6;transition:opacity var(--transition-fast);flex-shrink:0}.toast-close:hover{opacity:1}.toast-close svg{width:16px;height:16px}.toast--success{border-left-color:var(--color-green);background-color:#f0fdf4}.toast--success .toast-icon{color:var(--color-green)}.toast--error{border-left-color:var(--color-red);background-color:#fef2f2}.toast--error .toast-icon{color:var(--color-red)}.toast--warning{border-left-color:#f59e0b;background-color:#fffbeb}.toast--warning .toast-icon{color:#f59e0b}.toast--info{border-left-color:var(--color-blue);background-color:var(--input-bg)}.toast--info .toast-icon{color:var(--color-blue)}.toast-container{position:fixed;top:80px;right:1.5rem;z-index:9999;display:flex;flex-direction:column}@media (max-width: 640px){.toast-container{right:1rem;left:1rem}.toast{min-width:auto;max-width:100%}}.input-group{display:flex;flex-direction:column;gap:.5rem}.input-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.input-required{color:var(--color-red);margin-left:var(--spacing-1)}.input-field{width:100%;height:48px;padding:0 1rem;font-size:var(--font-size-base);background-color:var(--color-white);border:1px solid var(--input-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast),background-color var(--transition-fast)}.input-field--filled{background-color:var(--input-bg)}.input-field:focus{outline:none;border-color:var(--input-border-focus);background-color:var(--input-bg)}.input-field:hover:not(:disabled){border-color:var(--color-medium-gray)}.input-field:disabled{opacity:.6;cursor:not-allowed}.input-group--error .input-field{border-color:var(--color-red)}.input-group--error .input-field:focus{border-color:var(--color-red)}.input-error{font-size:var(--font-size-sm);color:var(--color-red);margin-top:calc(var(--spacing-1) * -1)}.input-group--half{width:48%}.select-field{appearance:none;cursor:pointer;padding-right:2.5rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23666666' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:calc(100% - 1rem) center;background-size:10px 6px}.select-field:focus{outline:none}.select-field option{color:var(--text-primary)}@media (max-width: 640px){.input-field{padding:var(--spacing-2);font-size:var(--font-size-sm)}}.btn{font-weight:var(--font-weight-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;text-transform:uppercase;letter-spacing:.5px}.btn--primary{background-color:var(--bg-button-primary);color:var(--text-white)}.btn--primary:hover:not(.btn--disabled){background-color:var(--bg-button-hover)}.btn--secondary{background-color:var(--color-blue);color:var(--text-white)}.btn--secondary:hover:not(.btn--disabled){background-color:#1976d2}.btn--outline{background-color:transparent;color:var(--bg-button-primary);border:2px solid var(--bg-button-primary)}.btn--outline:hover:not(.btn--disabled){background-color:var(--bg-button-primary);color:var(--text-white)}.btn--danger{background-color:var(--color-red);color:var(--text-white)}.btn--danger:hover:not(.btn--disabled){background-color:#b22432}.btn--social{background-color:var(--color-white);color:var(--text-primary);border:1px solid var(--input-border);text-transform:none;font-weight:var(--font-weight-normal)}.btn--social:hover:not(.btn--disabled){background-color:var(--bg-secondary)}.btn--sm{padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm)}.btn--md{height:48px;padding:0 var(--spacing-6);font-size:var(--font-size-base)}.btn--lg{padding:var(--spacing-4) var(--spacing-8);font-size:var(--font-size-lg)}.btn--disabled{opacity:.6;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--color-blue);outline-offset:2px}.auth-form{width:100%;max-width:388px;margin:0;background-color:transparent;padding:0}.auth-title{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;margin-bottom:2rem;text-align:left;letter-spacing:.02em}.auth-form-form{display:flex;flex-direction:column;gap:1.5rem}.auth-form-row{display:flex;gap:1rem;width:100%}.auth-form-links{display:flex;justify-content:flex-end;margin-top:.5rem}.auth-form-links-row{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;margin-top:1rem}.auth-form-link{color:var(--color-green);font-size:var(--font-size-sm);transition:opacity var(--transition-fast)}.auth-form-link:hover{opacity:.8;text-decoration:underline}.auth-form-link--primary{color:var(--text-link);font-weight:var(--font-weight-semibold)}.auth-form-divider-inline{color:var(--text-secondary);font-size:var(--font-size-sm)}.auth-submit-btn{width:50%;margin-top:0;height:56px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.auth-submit-btn--full{width:100%}.auth-social-btn{width:75%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-2)}.social-icon{font-size:var(--font-size-xl)}.google-icon{width:20px;height:20px;display:inline-block}.auth-form-divider{position:relative;text-align:center;margin:var(--spacing-4) 0}.auth-form-divider:before,.auth-form-divider:after{content:"";position:absolute;top:50%;width:45%;height:1px;background-color:var(--input-border)}.auth-form-divider:before{left:0}.auth-form-divider:after{right:0}.auth-form-divider span{background-color:var(--bg-primary);padding:0 var(--spacing-2);color:var(--text-secondary);font-size:var(--font-size-sm)}.auth-form-footer{text-align:left;margin-top:.5rem;font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;align-items:center;gap:.5rem}.auth-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);text-align:left;margin-bottom:var(--spacing-4);margin-top:-1rem}.checkbox-group{display:flex;flex-direction:column;gap:var(--spacing-1)}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);cursor:pointer}.checkbox-input{width:18px;height:18px;cursor:pointer;accent-color:var(--color-blue)}.checkbox-error{font-size:var(--font-size-xs);color:var(--color-red);margin-left:calc(18px + var(--spacing-2))}.terms-link{color:var(--color-red);text-decoration:underline;font-weight:var(--font-weight-semibold)}.terms-link:hover{opacity:.8}.auth-email-display{display:flex;align-items:center;gap:var(--spacing-2);color:var(--text-secondary);font-size:var(--font-size-base);margin-bottom:var(--spacing-6);padding:var(--spacing-3);background-color:var(--bg-secondary);border-radius:var(--radius-md)}.auth-email-display svg{color:var(--color-green);flex-shrink:0}.auth-email-display span{color:var(--color-green);font-weight:var(--font-weight-medium)}.auth-otp-section{display:flex;flex-direction:column;gap:var(--spacing-3);margin-bottom:var(--spacing-4)}.auth-otp-container{display:flex;gap:var(--spacing-3);justify-content:center;width:100%}.auth-otp-input{width:56px;height:56px;text-align:center;font-size:1.5rem;font-weight:var(--font-weight-semibold);color:var(--color-green);background-color:var(--color-white);border:2px solid var(--color-green);border-radius:8px;transition:all var(--transition-fast);outline:none;-webkit-appearance:none;appearance:none}.auth-otp-input:focus{border-color:var(--color-green);border-width:2px;box-shadow:0 0 0 3px #0291421a;background-color:var(--color-white)}.auth-otp-input:disabled{opacity:.6;cursor:not-allowed}.auth-otp-input--error{border-color:var(--color-red);background-color:#dc26260d}.auth-otp-input--error:focus{border-color:var(--color-red);box-shadow:0 0 0 3px #dc26261a}.auth-resend-section{display:flex;align-items:center;justify-content:space-between;margin-top:var(--spacing-2);margin-bottom:var(--spacing-4)}.auth-resend-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.auth-resend-btn{display:flex;align-items:center;gap:var(--spacing-2);background:none;border:none;color:var(--color-green);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;padding:var(--spacing-2);transition:opacity var(--transition-fast)}.auth-resend-btn:hover:not(:disabled){opacity:.8;text-decoration:underline}.auth-resend-btn:disabled{opacity:.5;cursor:not-allowed}.auth-resend-icon--spinning{animation:spin 1s linear infinite}@media (max-width: 768px){.auth-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-6)}.auth-otp-input{width:48px;height:48px;font-size:1.25rem}}@media (max-width: 640px){.auth-title{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-4)}.auth-form-form{gap:var(--spacing-4)}.auth-otp-input{width:44px;height:44px;font-size:1.125rem}.auth-otp-container{gap:var(--spacing-2)}.auth-resend-section{flex-direction:column;align-items:flex-start;gap:var(--spacing-2)}}.auth-page{min-height:calc(100vh - var(--header-height));background-color:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding)}.auth-page-container{max-width:var(--container-max-width);margin:0 auto;display:grid;grid-template-columns:45% 55%;gap:var(--spacing-12);align-items:start}.auth-page-left{display:flex;align-items:center;min-height:600px}.auth-page-right{display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);min-height:600px}.auth-page-image{max-width:80%;height:auto;object-fit:contain;border-radius:var(--radius-lg);box-shadow:0 10px 30px #00000026}@media (max-width: 1024px){.auth-page-container{grid-template-columns:1fr;max-width:600px}.auth-page-right{display:none}}@media (max-width: 768px){.auth-page{padding:var(--spacing-6) var(--container-padding)}.auth-page-left{min-height:auto}}@media (max-width: 640px){.auth-page{padding:var(--spacing-4) var(--container-padding)}}.profile-layout{width:100%;min-height:calc(100vh - 200px);padding:var(--spacing-6) var(--spacing-4);background-color:var(--bg-primary)}.profile-layout__inner{max-width:1200px;margin:0 auto}.profile-layout__tabs{display:flex;gap:var(--spacing-2);border-bottom:2px solid var(--color-light-gray);margin-bottom:var(--spacing-6);flex-wrap:wrap}.profile-layout__tab{padding:var(--spacing-3) var(--spacing-5);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-decoration:none;text-transform:uppercase;letter-spacing:.5px;border-bottom:3px solid transparent;margin-bottom:-2px;transition:all var(--transition-fast);position:relative}.profile-layout__tab:hover{color:var(--text-primary)}.profile-layout__tab--active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-weight-semibold)}.profile-layout__content{width:100%}@media (max-width: 768px){.profile-layout{padding:var(--spacing-4) var(--spacing-3)}.profile-layout__tabs{gap:var(--spacing-1);margin-bottom:var(--spacing-4)}.profile-layout__tab{padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm)}}@media (max-width: 640px){.profile-layout__tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.profile-layout__tabs::-webkit-scrollbar{display:none}.profile-layout__tab{white-space:nowrap;flex-shrink:0}}.change-password-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.change-password-page__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0}.change-password-page__form-wrapper{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:0 2px 8px #00000014;max-width:600px}@media (max-width: 768px){.change-password-page__form-wrapper{padding:var(--spacing-4)}}.alert{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4);border-radius:var(--radius-md);gap:var(--spacing-3)}.alert-message{flex:1;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.alert-close{font-size:var(--font-size-2xl);line-height:1;opacity:.7;transition:opacity var(--transition-fast)}.alert-close:hover{opacity:1}.alert--success{background-color:var(--bg-success);color:var(--text-success);border:1px solid var(--color-green)}.alert--error{background-color:#ffebee;color:var(--color-red);border:1px solid var(--color-red)}.alert--info{background-color:#e3f2fd;color:#1976d2;border:1px solid #2196F3}.alert--warning{background-color:#fff3e0;color:#f57c00;border:1px solid #FF9800}@media (max-width: 640px){.alert{padding:var(--spacing-3);flex-direction:column;align-items:flex-start;gap:var(--spacing-2)}.alert-close{align-self:flex-end}}.datepicker-wrapper{display:flex;flex-direction:column;gap:var(--spacing-2);width:100%}.datepicker-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);display:block}.datepicker-required{color:var(--color-red);margin-left:2px}.datepicker-input-wrapper{position:relative;width:100%}.datepicker-input{width:100%;padding:var(--spacing-3) var(--spacing-4);padding-right:40px;font-size:var(--font-size-base);border:1px solid var(--input-border);border-radius:var(--radius-md);background-color:var(--input-background);color:var(--text-primary);cursor:pointer;transition:border-color var(--transition-fast)}.datepicker-input:focus{outline:none;border-color:var(--bg-button-primary)}.datepicker-input--error{border-color:var(--color-red)}.datepicker-input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.datepicker-icon{position:absolute;right:var(--spacing-3);top:50%;transform:translateY(-50%);background:none;border:none;font-size:var(--font-size-lg);cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;opacity:.6;transition:opacity var(--transition-fast)}.datepicker-icon:hover:not(:disabled){opacity:1}.datepicker-icon:disabled{cursor:not-allowed;opacity:.3}.datepicker-dropdown{position:absolute;top:calc(100% + var(--spacing-2));left:0;z-index:var(--z-modal, 1000);background:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-4);min-width:300px;animation:slideDown .2s ease-out}.datepicker-calendar{width:100%}.datepicker-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-4)}.datepicker-month-year{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.datepicker-nav{background:none;border:none;font-size:var(--font-size-lg);color:var(--text-secondary);cursor:pointer;padding:var(--spacing-2);display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast);border-radius:var(--radius-sm)}.datepicker-nav:hover{color:var(--text-primary);background-color:var(--bg-secondary)}.datepicker-weekdays{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-1);margin-bottom:var(--spacing-2)}.datepicker-weekday{text-align:center;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);padding:var(--spacing-2)}.datepicker-days{display:grid;grid-template-columns:repeat(7,1fr);gap:var(--spacing-1)}.datepicker-day{aspect-ratio:1;border:none;background:none;font-size:var(--font-size-sm);color:var(--text-primary);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;padding:0}.datepicker-day:hover:not(.datepicker-day--disabled){background-color:var(--bg-secondary)}.datepicker-day--selected{background-color:var(--bg-button-primary);color:var(--text-white);font-weight:var(--font-weight-semibold)}.datepicker-day--selected:hover{background-color:var(--bg-button-hover)}.datepicker-day--today{border:2px solid var(--bg-button-primary);font-weight:var(--font-weight-semibold)}.datepicker-day--today.datepicker-day--selected{border-color:var(--text-white)}.datepicker-day--disabled{color:var(--text-secondary);opacity:.4;cursor:not-allowed}.datepicker-day--disabled:hover{background:none}.datepicker-day--empty{cursor:default}.datepicker-day--empty:hover{background:none}.datepicker-error{font-size:var(--font-size-sm);color:var(--color-red);margin-top:var(--spacing-1);display:block}.datepicker-wrapper--error .datepicker-input{border-color:var(--color-red)}@media (max-width: 768px){.datepicker-dropdown{left:50%;transform:translate(-50%);min-width:280px;max-width:calc(100vw - var(--spacing-8))}.datepicker-calendar{font-size:var(--font-size-sm)}.datepicker-day,.datepicker-weekday{font-size:var(--font-size-xs);padding:var(--spacing-1)}.datepicker-month-year{font-size:var(--font-size-sm)}}@media (max-width: 640px){.datepicker-dropdown{min-width:260px;padding:var(--spacing-3)}.datepicker-header{margin-bottom:var(--spacing-3)}.datepicker-nav{padding:var(--spacing-1);font-size:var(--font-size-base)}}.booking-form{width:100%;max-width:388px;margin:0;background-color:transparent;padding:0}.booking-form-title{font-size:2.5rem;font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;margin-bottom:1rem;text-align:left;letter-spacing:.02em}.booking-tabs{display:flex;gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.booking-tab{padding:var(--spacing-3) var(--spacing-2);background:transparent;border:none;font-size:.875rem;font-weight:var(--font-weight-bold);color:var(--text-secondary);cursor:pointer;transition:color .2s;position:relative;text-transform:uppercase}.booking-tab:after{content:"";position:absolute;bottom:0;left:0;right:0;height:2px;background:transparent;transition:background .2s}.booking-tab:hover,.booking-tab.active{color:var(--text-primary)}.booking-tab.active:after{background:var(--color-red)}.booking-form-form{display:flex;flex-direction:column;gap:1.5rem}.booking-submit-btn{width:50%;margin-top:0;margin-left:auto;height:56px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);background-color:var(--color-red);color:var(--text-white)}.booking-submit-btn:hover:not(.btn--disabled){background-color:#c82333}@media (max-width: 768px){.booking-form-title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-6)}}@media (max-width: 640px){.booking-form-title{font-size:var(--font-size-2xl);margin-bottom:var(--spacing-4)}.booking-form-form{gap:var(--spacing-4)}}.testimonials-section{padding:var(--spacing-8) 0;background-color:var(--bg-secondary)}.testimonials-title{font-size:2rem;font-weight:var(--font-weight-bold);color:var(--color-dark-gray);text-align:left;margin-bottom:var(--spacing-5)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-5)}.testimonial-card{background:var(--bg-secondary);border-radius:var(--radius-md);border:none;padding:var(--spacing-5);box-shadow:none;text-align:center}.testimonial-avatar{width:96px;height:96px;border-radius:var(--radius-md);background-color:#f3f3f3;margin:0 auto var(--spacing-4);background-repeat:no-repeat;background-position:center;background-size:70%}.testimonial-avatar--male{background-image:url(/images/icons/male-user-icon.png)}.testimonial-avatar--female{background-image:url(/images/icons/female-user-icon.png)}.testimonial-quote{font-size:.875rem;color:var(--color-medium-gray);line-height:1.6;margin-bottom:var(--spacing-3);font-style:italic}.testimonial-author{font-size:1rem;font-weight:var(--font-weight-semibold);color:var(--color-dark-gray);margin-bottom:var(--spacing-2)}.testimonial-role{font-size:.875rem;color:var(--color-red)}@media (max-width: 640px){.testimonials-title{font-size:1.5rem;margin-bottom:var(--spacing-4)}.testimonials-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.testimonial-card{padding:var(--spacing-4)}}.home-page{min-height:calc(100vh - var(--header-height));background-color:var(--bg-secondary)}.home-hero{padding:var(--spacing-8) var(--container-padding)}.home-hero-container{max-width:var(--container-max-width);margin:0 auto;display:grid;grid-template-columns:45% 55%;gap:var(--spacing-12);align-items:start}.home-hero-left{display:flex;align-items:center;min-height:600px}.home-hero-right{display:flex;align-items:center;justify-content:center;padding:var(--spacing-4);min-height:600px}.home-hero-image{max-width:80%;height:auto;object-fit:contain;border-radius:var(--radius-lg);box-shadow:0 10px 30px #00000026}.home-content{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-8) var(--container-padding)}@media (max-width: 1024px){.home-hero-container{grid-template-columns:1fr;max-width:600px}.home-hero-right{display:none}}@media (max-width: 768px){.home-hero{padding:var(--spacing-6) var(--container-padding)}.home-hero-left{min-height:auto}.home-content{padding:var(--spacing-6) var(--container-padding)}}@media (max-width: 640px){.home-hero,.home-content{padding:var(--spacing-4) var(--container-padding)}}.available-trips{max-width:var(--container-max-width);margin:0 auto;padding:var(--spacing-8) var(--container-padding) var(--spacing-12)}.available-trips__header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-6);margin-bottom:var(--spacing-8)}.available-trips__meta-label{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-2)}.available-trips__leg{display:inline-flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;padding:calc(var(--spacing-1) / 2) var(--spacing-2);border-radius:999px;margin-bottom:var(--spacing-2)}.available-trips__leg--outbound{background:#1c9c461a;color:#1c9c46}.available-trips__leg--return{background:#d930251a;color:#d93025}.available-trips__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--spacing-2);text-transform:uppercase}.available-trips__direction{font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:var(--spacing-1)}.available-trips__summary{background:var(--color-white);border:1px dashed var(--color-light-gray);border-radius:var(--radius-md);padding:var(--spacing-4);flex:0 0 320px}.available-trips__summary-label{font-size:var(--font-size-xs);text-transform:uppercase;color:var(--text-secondary);letter-spacing:.1em;margin-bottom:var(--spacing-1)}.available-trips__summary-route{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin-bottom:var(--spacing-1)}.available-trips__summary-details{font-size:var(--font-size-sm);color:var(--text-secondary)}.available-trips__subtitle{font-size:var(--font-size-base);color:#1c9c46;text-transform:uppercase;margin-bottom:var(--spacing-2);font-weight:var(--font-weight-semibold)}.available-trips__date{font-size:var(--font-size-base);color:var(--text-secondary)}.available-trips__date span{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.available-trips__table{display:flex;flex-direction:column;gap:var(--spacing-6)}.trip-slot{border:none;border-radius:var(--radius-md);background:transparent;box-shadow:none}.trip-slot__time{background:#f4f4f4;padding:var(--spacing-3) var(--spacing-4);font-weight:var(--font-weight-semibold);color:#1c9c46;border-bottom:1px solid var(--color-light-gray)}.trip-slot__rows{display:flex;flex-direction:column;background:var(--color-white);padding:0 var(--spacing-4)}.trip-row{display:grid;grid-template-columns:repeat(5,1fr);align-items:center;padding:var(--spacing-4) 0;border-top:1px solid var(--color-light-gray);column-gap:var(--spacing-4)}.trip-row:first-of-type{border-top:none}.trip-row__vehicle-name,.trip-row__time,.trip-row__availability,.trip-row__price,.trip-row__action{padding:0 var(--spacing-4)}.trip-row__vehicle-label{font-weight:var(--font-weight-semibold);color:#4a4a4a;font-size:var(--font-size-base)}.trip-row__time{display:flex;flex-direction:column;gap:calc(var(--spacing-1) / 2)}.trip-row__label{display:block;font-size:var(--font-size-sm);color:#6b6b6b;font-weight:var(--font-weight-semibold);margin-bottom:calc(var(--spacing-1) / 2)}.trip-row__value{display:block;font-size:var(--font-size-sm);color:#6b6b6b}.trip-row__value--bold{font-weight:var(--font-weight-semibold);color:#4a4a4a;font-size:var(--font-size-base)}.trip-row__value--available{color:#1c9c46}.trip-row__value--full{color:#d93025}.trip-row__vehicle-name{text-align:left}.trip-row__action{text-align:center}.trip-row__cta{min-width:120px;height:36px;padding:0 var(--spacing-4);font-size:var(--font-size-sm);background-color:#1c9c46;color:var(--text-white);border:none;border-radius:var(--radius-md)}.trip-row__cta:hover:not(.btn--disabled){background-color:#157533}.trip-row__status{font-weight:var(--font-weight-semibold);color:#d93025;text-transform:uppercase;font-size:var(--font-size-sm)}.available-trips__note{margin-top:var(--spacing-8);font-size:var(--font-size-sm);color:var(--text-secondary);background:var(--bg-secondary);padding:var(--spacing-4);border-radius:var(--radius-md)}@media (max-width: 1024px){.trip-row{grid-template-columns:repeat(2,1fr);row-gap:var(--spacing-3)}.trip-row__action{text-align:left}}@media (max-width: 640px){.available-trips__header{flex-direction:column;align-items:flex-start}.available-trips__summary{width:100%}.trip-row{grid-template-columns:1fr}.trip-row__action{text-align:left}}.seat-selection-page{min-height:calc(100vh - var(--header-height));background-color:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding)}.seat-selection-page__inner{max-width:588px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-6)}.seat-selection-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center;display:flex;gap:var(--spacing-3);align-items:center;justify-content:center;flex-wrap:wrap}.seat-selection-title__leg{font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;font-weight:var(--font-weight-semibold);padding:calc(var(--spacing-1) / 2) var(--spacing-2);border-radius:999px}.seat-selection-title__leg--outbound{background:#1c9c461f;color:#1c9c46}.seat-selection-title__leg--return{background:#d930251f;color:#d93025}.seat-card{width:100%;background-color:var(--color-white);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);padding:var(--spacing-8) var(--spacing-8) var(--spacing-10);display:flex;flex-direction:column;gap:var(--spacing-6)}.seat-card__header{text-align:center;display:flex;flex-direction:column;gap:var(--spacing-3)}.seat-card__route-block{background-color:#f1f3f7;padding:var(--spacing-4) var(--spacing-8);margin-left:calc(-1 * var(--spacing-8));margin-right:calc(-1 * var(--spacing-8));width:calc(100% + 2 * var(--spacing-8));display:flex;flex-direction:column;gap:var(--spacing-2);align-items:center}.seat-card__route{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.seat-card__vehicle{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.04em}.seat-card__vehicle--prestige{color:#1c9c46}.seat-card__vehicle--hiace{color:#2f55d4}.seat-card__datetime{font-size:var(--font-size-base);color:var(--text-secondary)}.seat-card__total{display:flex;justify-content:center;gap:var(--spacing-2);background-color:#f1f3f7;padding:var(--spacing-3) var(--spacing-8);margin-left:calc(-1 * var(--spacing-8));margin-right:calc(-1 * var(--spacing-8));width:calc(100% + 2 * var(--spacing-8));flex-direction:column;align-items:center;text-align:center}.seat-card__total-label{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.seat-card__total-value{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-semibold)}.seat-card__status{margin:var(--spacing-3) 0;padding:var(--spacing-3) var(--spacing-4);border-radius:var(--radius-lg);background:#f0f4ff;color:#1e3a8a;font-size:var(--font-size-sm)}.seat-card__status--error{background:#fff0f0;color:#c53030;border:1px solid #f5b7b1}.seat-card__legend{display:flex;justify-content:center;margin-top:var(--spacing-2)}.seat-legend{display:inline-flex;border-radius:0;overflow:hidden;border:1px solid rgba(0,0,0,.08);box-shadow:inset 0 1px #ffffff40}.seat-legend__segment{display:inline-flex;align-items:center;justify-content:center;padding:.25rem .52rem;min-width:58px;font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.08em;color:var(--text-white)}.seat-legend__segment--booked{background-color:#d93025}.seat-legend__segment--available{background-color:#6b6b6b}.seat-legend__segment--selected{background-color:#1c9c46}.seat-card__grid-wrapper{display:flex;justify-content:center;width:100%}.seat-grid{display:grid;gap:var(--spacing-3);justify-items:center;padding:var(--spacing-3);border:1px solid #dfe3ea;border-radius:var(--radius-xl);background:linear-gradient(180deg,#fafafb,#f4f6f9);width:100%;max-width:322px}.seat-grid--prestige-sienna{grid-template-columns:repeat(2,minmax(48px,1fr))}.seat-grid--toyota-hiace{grid-template-columns:repeat(3,minmax(48px,1fr));max-width:360px}.seat{width:78px;height:78px;border:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-1);background-color:var(--color-white);transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);cursor:pointer;position:relative;padding:var(--spacing-2)}.seat--available:hover{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.seat--booked,.seat--driver,.seat--empty{cursor:default}.seat--selected{box-shadow:0 8px 16px #1c9c462e}.seat--driver{background-color:#f6faff;font-weight:var(--font-weight-medium);color:#1c72cc}.seat--empty{background:transparent;border:none;pointer-events:none}.seat-icon{width:62px;height:62px;display:block;--seat-icon-base: #f4f6f8;--seat-icon-highlight: #d1d5db;--seat-icon-shadow: #c2c7ce;--seat-icon-accent: #ebedf0;--seat-icon-detail: #c9ced6}.seat-icon path{transition:fill var(--transition-fast)}.seat-icon--booked{--seat-icon-highlight: #d93025;--seat-icon-shadow: #f3b5b0;--seat-icon-accent: #fce0dd;--seat-icon-detail: #e06b63}.seat-icon--available{--seat-icon-highlight: #bfc3c9;--seat-icon-shadow: #dfe3e8;--seat-icon-accent: #f0f2f5;--seat-icon-detail: #adb3bb}.seat-icon--selected{--seat-icon-highlight: #1c9c46;--seat-icon-shadow: #a6e5ba;--seat-icon-accent: #d4f4df;--seat-icon-detail: #4abf73}.seat__number{position:absolute;bottom:6px;left:50%;transform:translate(-50%);font-size:.625rem;font-weight:var(--font-weight-semibold);color:var(--text-secondary);letter-spacing:.04em}.seat--selected .seat__number{color:#1c9c46}.seat--booked .seat__number{color:#d93025}.seat__driver-icon{width:36px;height:36px;object-fit:contain}.seat-card__terms{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--text-secondary);align-self:flex-start;margin-left:calc(var(--spacing-8) + 1px)}.seat-card__terms a,.seat-card__terms-link{color:var(--color-green);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.seat-card__terms a:hover,.seat-card__terms-link:hover{color:var(--color-dark-green);text-decoration:underline}.seat-card__cta{align-self:center;width:200px}.seat-card__terms-link{color:var(--color-green);text-decoration:none;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.seat-card__terms-link:hover{color:var(--color-dark-green);text-decoration:underline}.seat-card__helper{text-align:center;font-size:var(--font-size-sm);color:var(--text-secondary);margin-top:calc(var(--spacing-2) * -1)}@media (max-width: 768px){.seat-card{padding:var(--spacing-6)}.seat-grid--toyota-hiace{grid-template-columns:repeat(3,minmax(40px,1fr))}.seat{width:62px;height:62px}}@media (max-width: 480px){.seat-selection-page{padding:var(--spacing-6) var(--container-padding)}.seat-grid--toyota-hiace{grid-template-columns:repeat(4,minmax(36px,1fr))}}.passenger-details{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12)}.passenger-details__inner{max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-6)}.passenger-details__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.passenger-details__content{display:grid;grid-template-columns:48% 52%;gap:var(--spacing-12);align-items:start}.passenger-details__left{display:flex;flex-direction:column}.passenger-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--spacing-6);display:flex;flex-direction:column;gap:var(--spacing-6)}.passenger-card__summary{display:flex;flex-direction:column;gap:var(--spacing-3)}.passenger-card__segment{border:1px solid #ecedf0;border-radius:var(--radius-lg);padding:var(--spacing-4);background:#f9fafc;display:flex;flex-direction:column;gap:var(--spacing-2)}.passenger-card__segment-header{display:flex;justify-content:space-between;font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.passenger-card__segment-trip{color:#1c9c46;font-weight:var(--font-weight-semibold)}.passenger-card__segment-route{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.passenger-card__segment-meta{font-size:var(--font-size-sm);color:var(--text-secondary)}.passenger-card__row{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4) var(--spacing-5);font-size:var(--font-size-sm);color:var(--text-secondary);border-radius:var(--radius-lg);background-color:var(--color-white);border:1px solid transparent}.passenger-card__row--highlight{background-color:#f6f7f9;border-color:#ecedf0}.passenger-card__row--plain{background-color:transparent;border:none;padding-left:var(--spacing-5);padding-right:var(--spacing-5);margin:0 var(--spacing-2)}.passenger-card__row--total{margin-top:var(--spacing-2)}.passenger-card__label{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.passenger-card__value{color:var(--text-secondary)}.passenger-card__value--amount{color:var(--color-red);font-weight:var(--font-weight-semibold)}.passenger-card__divider{border-top:1px solid var(--color-light-gray);margin:0 var(--spacing-4)}.passenger-form__sections{display:flex;flex-direction:column;gap:var(--spacing-5)}.passenger-form__section{display:flex;flex-direction:column;gap:var(--spacing-3)}.passenger-form__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.passenger-form__seat-block{border:1px solid #ecedf0;border-radius:var(--radius-lg);padding:var(--spacing-4);background:#fdfdfd;display:flex;flex-direction:column;gap:var(--spacing-3)}.passenger-form__seat-heading{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-secondary);letter-spacing:.08em;text-transform:uppercase}.passenger-form__error{background:#fff0f0;color:#c53030;border:1px solid #f5b7b1;border-radius:var(--radius-lg);padding:var(--spacing-3) var(--spacing-4);margin-top:var(--spacing-2)}.passenger-form__grid{display:flex;flex-wrap:wrap;gap:var(--spacing-4)}.passenger-form__cta{align-self:flex-end;width:220px}.passenger-otp{margin-top:var(--spacing-6);padding:var(--spacing-5);border-radius:var(--radius-lg);border:1px dashed var(--color-border);background:#f9fafc;display:flex;flex-direction:column;gap:var(--spacing-4)}.passenger-otp__header h3{margin:0 0 var(--spacing-1);font-size:var(--font-size-lg);color:var(--text-primary)}.passenger-otp__header p{margin:0;font-size:var(--font-size-sm);color:var(--text-secondary)}.passenger-otp__hint{margin-top:var(--spacing-2);font-size:var(--font-size-xs);color:var(--color-red)}.passenger-otp__cta{align-self:flex-start}.passenger-details__image-wrapper{display:flex;justify-content:center;align-items:center}.passenger-details__image{width:100%;max-width:360px;object-fit:contain}@media (max-width: 992px){.passenger-details__content{grid-template-columns:1fr;max-width:600px;margin:0 auto}.passenger-details__image-wrapper{order:-1;width:100%;justify-content:center}.passenger-details__image{max-width:280px}.passenger-form__cta{align-self:stretch;width:100%}}.make-payment{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12)}.make-payment__inner{max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-6)}.make-payment__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);letter-spacing:1px;text-transform:uppercase;color:var(--text-primary)}.make-payment__content{width:100%;max-width:720px;display:flex;flex-direction:column;gap:var(--spacing-6)}.make-payment__stack{display:flex;flex-direction:column;gap:var(--spacing-4)}.make-payment__banner-card{background:var(--color-white);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:var(--spacing-2);display:flex;justify-content:center}.make-payment__banner-image{width:100%;border-radius:var(--radius-lg);object-fit:cover}.make-payment__block{padding:var(--spacing-5) var(--spacing-6);border-radius:var(--radius-lg);border:1px solid transparent;background:transparent}.make-payment__block--muted{background:#f1f3f5;border-color:#dde2ea}.make-payment__route{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center}.make-payment__vehicle{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#1c9c46;text-transform:uppercase;letter-spacing:.5px;text-align:center;display:block;margin-top:var(--spacing-2)}.make-payment__datetime{text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm)}.make-payment__row{display:flex;gap:var(--spacing-4);color:var(--text-primary);font-size:var(--font-size-sm);justify-content:center;align-items:center;text-align:center}.make-payment__row--stacked{flex-direction:column;gap:var(--spacing-2)}.make-payment__label{font-weight:var(--font-weight-medium);text-transform:capitalize;color:var(--text-secondary)}.make-payment__value{flex:1}.make-payment__value--passenger:before{content:"•";color:var(--text-secondary);margin-right:var(--spacing-2)}.make-payment__value--amount{color:var(--color-red);font-weight:var(--font-weight-semibold)}.make-payment__row--passengers{align-items:flex-start}.make-payment__passenger-list{list-style:none;margin:0;padding:0;width:100%;display:flex;flex-direction:column;gap:var(--spacing-2)}.make-payment__passenger-list-item{display:flex;flex-direction:column;gap:2px;color:var(--text-primary)}.make-payment__contact-info{width:100%;margin-top:var(--spacing-3);display:flex;flex-direction:column;gap:4px;color:var(--text-secondary);text-align:left}.make-payment__block--actions{display:flex;flex-direction:column;gap:var(--spacing-5)}.make-payment__method-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-align:center}.make-payment__select .input-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.make-payment__select .input-field{height:52px;background-color:var(--color-white);border-radius:var(--radius-md);width:65%;margin:0 auto;color:var(--text-primary);text-align:center}.make-payment__error{background:#fff0f0;color:#c53030;border:1px solid #f5b7b1;border-radius:var(--radius-lg);padding:var(--spacing-3) var(--spacing-4);text-align:center}.make-payment__actions{display:flex;gap:var(--spacing-4);justify-content:center}.make-payment__action{height:44px;font-size:var(--font-size-sm);padding:0 var(--spacing-6);min-width:180px}.make-payment__action--start{color:var(--color-red);border-color:var(--color-red)}.make-payment__action--start:hover:not(.btn--disabled){background-color:var(--color-red);color:var(--text-white)}.make-payment__action--submit{background-color:#1c9c46;color:var(--text-white);border:none}.make-payment__action--submit:hover:not(.btn--disabled){background-color:#16863a}@media (max-width: 640px){.make-payment__block{padding:var(--spacing-5)}.make-payment__select .input-field{width:100%}.make-payment__content{max-width:100%}.make-payment__actions{flex-direction:column}.make-payment__action{width:100%;min-width:0}}.booking-confirmation{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12);min-height:calc(100vh - var(--header-height) - var(--footer-height))}.booking-confirmation__inner{max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-6)}.booking-confirmation__success-header{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-4);text-align:center;margin-bottom:var(--spacing-2)}.booking-confirmation__success-icon{display:flex;align-items:center;justify-content:center;animation:scaleIn .5s ease-out}@keyframes scaleIn{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}.booking-confirmation__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0}.booking-confirmation__subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin:0}.booking-confirmation__card{width:100%;max-width:720px;background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-6);display:flex;flex-direction:column;gap:var(--spacing-4)}.booking-confirmation__card--muted{background:#f3f3f3;border:1px solid #dde2ea}.booking-confirmation__card-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0;padding-bottom:var(--spacing-2);border-bottom:1px solid var(--color-light-gray)}.booking-confirmation__reference-card{text-align:center}.booking-confirmation__reference-wrapper{display:flex;align-items:center;justify-content:center;gap:var(--spacing-4);flex-wrap:wrap}.booking-confirmation__reference{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);letter-spacing:2px;font-family:Courier New,monospace}.booking-confirmation__copy-btn{min-width:120px;height:44px;font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-2)}.booking-confirmation__trip-details-list{display:flex;flex-direction:column;gap:var(--spacing-3);padding-left:var(--spacing-5)}.booking-confirmation__trip-detail-item{font-size:var(--font-size-base);color:var(--text-primary);line-height:1.6}.booking-confirmation__info-list{display:flex;flex-direction:column;gap:var(--spacing-4)}.booking-confirmation__info-item{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-3) 0;border-bottom:1px solid var(--color-light-gray)}.booking-confirmation__info-item:last-child{border-bottom:none}.booking-confirmation__info-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:capitalize;min-width:140px}.booking-confirmation__info-value{font-size:var(--font-size-base);color:var(--text-primary);text-align:right;flex:1}.booking-confirmation__info-value--amount{color:var(--color-red);font-weight:var(--font-weight-semibold)}.booking-confirmation__info-item--column{flex-direction:column;align-items:flex-start}.booking-confirmation__info-value--stacked{text-align:left;width:100%}.booking-confirmation__passenger-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.booking-confirmation__ticket-wrapper{display:flex;flex-direction:column;gap:var(--spacing-4)}.booking-confirmation__ticket-preview{text-align:center;padding:var(--spacing-6);background:var(--bg-secondary);border-radius:var(--radius-md);border:2px dashed var(--color-light-gray)}.booking-confirmation__ticket-note{font-size:var(--font-size-base);color:var(--text-primary);text-align:center;margin:0 0 var(--spacing-2) 0;line-height:1.6}.booking-confirmation__ticket-note--small{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.booking-confirmation__ticket-note strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.booking-confirmation__next-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-3);padding-left:var(--spacing-5)}.booking-confirmation__next-step{font-size:var(--font-size-base);color:var(--text-primary);line-height:1.6;position:relative;padding-left:var(--spacing-6)}.booking-confirmation__next-step:before{content:"•";position:absolute;left:0;color:var(--bg-button-primary);font-size:var(--font-size-xl);font-weight:var(--font-weight-bold)}.booking-confirmation__next-step strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}.booking-confirmation__actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap;width:100%;max-width:720px}.booking-confirmation__action-btn{min-width:180px;height:48px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.booking-confirmation__help{text-align:center;margin-top:var(--spacing-2)}.booking-confirmation__help-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.booking-confirmation__help-link{color:var(--bg-button-primary);text-decoration:underline;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.booking-confirmation__help-link:hover{color:var(--bg-button-hover)}@media (max-width: 768px){.booking-confirmation{padding:var(--spacing-6) var(--container-padding) var(--spacing-8)}.booking-confirmation__title{font-size:var(--font-size-2xl)}.booking-confirmation__card{padding:var(--spacing-5)}.booking-confirmation__reference{font-size:var(--font-size-xl)}.booking-confirmation__reference-wrapper{flex-direction:column}.booking-confirmation__copy-btn{width:100%}.booking-confirmation__info-item{flex-direction:column;gap:var(--spacing-2)}.booking-confirmation__info-label{min-width:auto}.booking-confirmation__info-value{text-align:left}.booking-confirmation__actions{flex-direction:column}.booking-confirmation__action-btn{width:100%;min-width:0}}@media (max-width: 640px){.booking-confirmation__title{font-size:var(--font-size-xl)}.booking-confirmation__subtitle{font-size:var(--font-size-sm)}.booking-confirmation__reference{font-size:var(--font-size-lg);letter-spacing:1px}.booking-confirmation__trip-details-list,.booking-confirmation__next-steps{padding-left:var(--spacing-3)}.booking-confirmation__qr-placeholder{width:160px;height:160px}}.ticket{width:100%;max-width:800px;margin:0 auto;background:var(--color-white);border:2px solid var(--color-light-gray);border-radius:var(--radius-lg);padding:var(--spacing-8);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;color:var(--text-primary);box-shadow:var(--shadow-lg)}.ticket__header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-6);flex-wrap:wrap;gap:var(--spacing-4)}.ticket__logo{flex:1;min-width:200px}.ticket__logo-text{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-red);margin:0 0 var(--spacing-1) 0;letter-spacing:2px}.ticket__logo-tagline{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;text-transform:uppercase;letter-spacing:1px}.ticket__reference{display:flex;flex-direction:column;align-items:flex-end;text-align:right}.ticket__reference-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-1)}.ticket__reference-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);font-family:Courier New,monospace;letter-spacing:2px}.ticket__divider{height:2px;background:linear-gradient(to right,transparent,var(--color-light-gray),transparent);margin:var(--spacing-6) 0}.ticket__body{display:flex;flex-direction:column;gap:var(--spacing-6)}.ticket__section{display:flex;flex-direction:column;gap:var(--spacing-4)}.ticket__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-2) 0;text-transform:uppercase;letter-spacing:1px;border-bottom:2px solid var(--color-light-gray);padding-bottom:var(--spacing-2)}.ticket__info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-4)}.ticket__info-item{display:flex;flex-direction:column;gap:var(--spacing-1)}.ticket__info-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.ticket__info-value{font-size:var(--font-size-base);color:var(--text-primary);font-weight:var(--font-weight-medium)}.ticket__info-value--amount{color:var(--color-red);font-weight:var(--font-weight-bold);font-size:var(--font-size-lg)}.ticket__info-item--full{grid-column:1 / -1}.ticket__info-value--stacked{width:100%;text-align:left}.ticket__passenger-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-1)}.ticket__footer{margin-top:var(--spacing-6);padding-top:var(--spacing-6);border-top:2px solid var(--color-light-gray)}.ticket__instructions{margin-bottom:var(--spacing-6)}.ticket__instructions-title{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-3) 0}.ticket__instructions-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.ticket__instructions-list li{font-size:var(--font-size-sm);color:var(--text-secondary);padding-left:var(--spacing-5);position:relative;line-height:1.6}.ticket__instructions-list li:before{content:"•";position:absolute;left:0;color:var(--bg-button-primary);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.ticket__contact{margin-top:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-light-gray)}.ticket__contact-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;text-align:center}.ticket__barcode{display:flex;justify-content:center;align-items:center;gap:2px;margin:var(--spacing-8) 0 var(--spacing-2) 0;padding:var(--spacing-4);background:var(--bg-secondary);border-radius:var(--radius-sm)}.ticket__barcode-line{width:3px;height:60px;background:var(--text-primary);border-radius:1px}.ticket__barcode-line:nth-child(odd){height:50px}.ticket__barcode-line:nth-child(2n){height:70px}.ticket__barcode-text{text-align:center;font-family:Courier New,monospace;font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:4px;color:var(--text-primary);margin:var(--spacing-2) 0 0 0}@media print{.ticket{max-width:100%;border:none;box-shadow:none;padding:var(--spacing-6);page-break-inside:avoid}.ticket__header,.ticket__body,.ticket__footer,.ticket__barcode{page-break-inside:avoid}}@media (max-width: 768px){.ticket{padding:var(--spacing-6)}.ticket__header{flex-direction:column;align-items:flex-start}.ticket__reference{align-items:flex-start;text-align:left}.ticket__info-grid{grid-template-columns:1fr}.ticket__logo-text{font-size:var(--font-size-2xl)}}.ticket-view-page{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12);min-height:calc(100vh - var(--header-height) - var(--footer-height))}.ticket-view-page__inner{max-width:var(--container-max-width);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-6)}.ticket-view-page__header{text-align:center;margin-bottom:var(--spacing-4)}.ticket-view-page__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--spacing-2) 0}.ticket-view-page__subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin:0}.ticket-view-page__ticket-container{width:100%;display:flex;justify-content:center;padding:var(--spacing-6);background:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.ticket-view-page__ticket{width:100%;max-width:800px}.ticket-view-page__actions{display:flex;gap:var(--spacing-4);justify-content:center;flex-wrap:wrap;width:100%;max-width:800px}.ticket-view-page__action-btn{min-width:180px;height:48px;font-size:var(--font-size-base);font-weight:var(--font-weight-semibold)}.ticket-view-page__help{text-align:center;margin-top:var(--spacing-2)}.ticket-view-page__help-text{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.ticket-view-page__help-link{color:var(--bg-button-primary);text-decoration:underline;font-weight:var(--font-weight-medium);transition:color var(--transition-fast)}.ticket-view-page__help-link:hover{color:var(--bg-button-hover)}@media (max-width: 768px){.ticket-view-page{padding:var(--spacing-6) var(--container-padding) var(--spacing-8)}.ticket-view-page__title{font-size:var(--font-size-2xl)}.ticket-view-page__ticket-container{padding:var(--spacing-4)}.ticket-view-page__actions{flex-direction:column}.ticket-view-page__action-btn{width:100%;min-width:0}}@media (max-width: 640px){.ticket-view-page__title{font-size:var(--font-size-xl)}.ticket-view-page__subtitle{font-size:var(--font-size-sm)}.ticket-view-page__ticket-container{padding:var(--spacing-3)}}@media print{.ticket-view-page{background:#fff;padding:0}.ticket-view-page__header,.ticket-view-page__actions,.ticket-view-page__help{display:none}.ticket-view-page__ticket-container{background:transparent;box-shadow:none;padding:0}}.modal-backdrop{position:fixed;inset:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:var(--spacing-4);animation:fadeIn .2s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-container{background:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-modal);max-height:90vh;width:100%;display:flex;flex-direction:column;z-index:var(--z-modal);animation:slideUp .3s ease-out;overflow:hidden}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-container--sm{max-width:400px}.modal-container--md{max-width:600px}.modal-container--lg{max-width:800px}.modal-container--xl{max-width:1000px}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-5);border-bottom:1px solid var(--color-light-gray)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.modal-close{background:none;border:none;font-size:var(--font-size-3xl);line-height:1;color:var(--text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.modal-close:hover{color:var(--text-primary)}.modal-content{padding:var(--spacing-5);overflow-y:auto;flex:1}@media (max-width: 640px){.modal-backdrop{padding:0}.modal-container{max-height:100vh;border-radius:0;max-width:100%}.modal-header{padding:var(--spacing-4)}.modal-title{font-size:var(--font-size-lg)}.modal-content{padding:var(--spacing-4)}}.reschedule-modal{display:flex;flex-direction:column;gap:var(--spacing-5)}.reschedule-modal__section{display:flex;flex-direction:column;gap:var(--spacing-4)}.reschedule-modal__section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-2)}.reschedule-modal__loading{padding:var(--spacing-6);text-align:center;color:var(--text-secondary);font-size:var(--font-size-sm)}.reschedule-modal__notice{margin-top:var(--spacing-2)}.reschedule-modal__footer{display:flex;justify-content:flex-end;gap:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-light-gray);margin-top:var(--spacing-2)}.trip-row--selected{background-color:#e8f5e9;border:2px solid #1c9c46}.trip-row--selected .trip-row__vehicle-label{color:#1c9c46;font-weight:var(--font-weight-semibold)}.trip-row{cursor:pointer;transition:background-color var(--transition-fast)}.trip-row:hover:not(.trip-row--selected){background-color:#f9f9f9}.trip-row__radio{cursor:pointer;width:20px;height:20px;accent-color:#1c9c46}.trip-row__action{display:flex;align-items:center;justify-content:center}@media (max-width: 640px){.reschedule-modal__footer{flex-direction:column}.reschedule-modal__footer .btn{width:100%}}.rich-text-editor{display:flex;flex-direction:column;gap:var(--spacing-2)}.rich-text-editor-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary)}.rich-text-editor-wrapper{background-color:var(--color-white);border:1px solid var(--input-border);border-radius:var(--radius-md);overflow:hidden;transition:border-color var(--transition-fast)}.rich-text-editor-wrapper:focus-within{border-color:var(--input-border-focus)}.rich-text-editor--error .rich-text-editor-wrapper{border-color:var(--color-red)}.rich-text-editor-textarea{width:100%;min-height:200px;padding:var(--spacing-4);font-size:var(--font-size-base);font-family:var(--font-family);line-height:1.6;color:var(--text-primary);background-color:var(--color-white);border:none;outline:none;resize:vertical;transition:background-color var(--transition-fast)}.rich-text-editor-textarea::placeholder{color:var(--text-secondary);font-style:normal}.rich-text-editor-textarea:focus{background-color:var(--input-bg)}.rich-text-editor-textarea:disabled{opacity:.6;cursor:not-allowed;background-color:var(--bg-secondary)}.rich-text-editor-error{font-size:var(--font-size-sm);color:var(--color-red);margin-top:calc(var(--spacing-1) * -1)}@media (max-width: 640px){.rich-text-editor-textarea{min-height:150px;padding:var(--spacing-3);font-size:var(--font-size-sm)}}.cancel-reason-modal{display:flex;flex-direction:column;gap:var(--spacing-6)}.cancel-reason-modal__warning{margin-bottom:var(--spacing-2)}.cancel-reason-modal__section{display:flex;flex-direction:column;gap:var(--spacing-4)}.cancel-reason-modal__error{margin-top:var(--spacing-2)}.cancel-reason-modal__footer{display:flex;justify-content:flex-end;gap:var(--spacing-4);padding-top:var(--spacing-4);border-top:1px solid var(--color-light-gray);margin-top:var(--spacing-2)}@media (max-width: 640px){.cancel-reason-modal__footer{flex-direction:column-reverse}.cancel-reason-modal__footer .btn{width:100%}}.manage-booking{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12)}.manage-booking__inner{max-width:var(--container-max-width);margin:0 auto}.manage-booking__hero{display:grid;grid-template-columns:48% 52%;align-items:start;gap:var(--spacing-12)}.manage-booking__content{display:flex;flex-direction:column;gap:var(--spacing-5)}.manage-booking__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:1px;color:var(--text-primary)}.manage-booking__subtitle{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);letter-spacing:1px;text-transform:uppercase;color:var(--text-secondary)}.manage-booking__container{background:var(--color-white);box-shadow:var(--shadow-md);border-radius:0;padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-4);max-width:588px;width:100%}.manage-booking__card{background:#f3f3f3;border-radius:0;padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-4);width:100%}.manage-booking__search-btn{align-self:flex-end;margin-top:var(--spacing-2);background-color:var(--color-red);border:none;color:var(--text-white);padding:0 var(--spacing-5);min-width:160px}.manage-booking__search-btn:hover:not(.btn--disabled){background-color:#b22432}.manage-booking__results{font-size:var(--font-size-sm);color:var(--text-secondary);display:flex;flex-direction:column;gap:var(--spacing-1);text-align:left;padding-left:var(--spacing-5)}.manage-booking__results-label{font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.75px}.manage-booking__results-value{font-weight:var(--font-weight-semibold);color:var(--color-red)}.manage-booking__error{background-color:#fee;border:1px solid #fcc;color:#c33;padding:var(--spacing-3);border-radius:var(--radius-md);margin-top:var(--spacing-4);font-size:var(--font-size-sm)}.manage-booking__details{display:flex;flex-direction:column;gap:var(--spacing-4);margin-top:var(--spacing-4);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.manage-booking__trip-details-card{background:#f3f3f3;border-radius:0;padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-4)}.manage-booking__trip-details-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-2)}.manage-booking__trip-details-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.manage-booking__trip-detail-item{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--text-primary);line-height:1.5}.manage-booking__amount-luggage-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4);margin-top:var(--spacing-2);padding-left:var(--spacing-5)}.manage-booking__amount-luggage-item{display:flex;flex-direction:column;gap:var(--spacing-1)}.manage-booking__amount-luggage-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.manage-booking__amount-luggage-value{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--text-primary)}.manage-booking__status-card{background:#f3f3f3;border-radius:0;padding:var(--spacing-5);display:flex;flex-direction:column;gap:var(--spacing-4)}.manage-booking__status-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-4)}.manage-booking__status-item{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-3)}.manage-booking__status-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.manage-booking__badge{display:inline-block;padding:var(--spacing-1) var(--spacing-3);border-radius:9999px;font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);text-transform:capitalize;color:var(--color-white);letter-spacing:.5px;white-space:nowrap}.manage-booking__badge--cancelled{background-color:#666}.manage-booking__badge--pending{background-color:#f59e0b}.manage-booking__badge--confirmed{background-color:#10b981}.manage-booking__badge--in-progress{background-color:#3b82f6}.manage-booking__badge--completed{background-color:#059669}.manage-booking__badge--default{background-color:#6b7280}.manage-booking__notes-section{display:flex;flex-direction:column;gap:var(--spacing-3);padding-left:var(--spacing-5)}.manage-booking__notes-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-2)}.manage-booking__note{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0;line-height:1.5}.manage-booking__actions{display:flex;gap:var(--spacing-4);padding-left:var(--spacing-5);margin-top:var(--spacing-4);flex-wrap:wrap}.manage-booking__action-btn{min-width:160px;padding:var(--spacing-3) var(--spacing-5)}.manage-booking__image{width:360px;height:auto;object-fit:contain}.manage-booking__image-wrapper{display:flex;justify-content:center;align-items:flex-start}.manage-booking__card .input-group{width:100%;max-width:none}@media (max-width: 992px){.manage-booking__hero{grid-template-columns:1fr;gap:var(--spacing-10)}.manage-booking__content{align-items:center;text-align:center}.manage-booking__container{align-items:stretch;width:100%;max-width:616px}.manage-booking__card{width:100%}.manage-booking__card .input-group{width:100%;max-width:none}.manage-booking__search-btn{align-self:center}}@media (max-width: 640px){.manage-booking{padding:var(--spacing-6) var(--spacing-4) var(--spacing-10)}.manage-booking__image{width:260px}.manage-booking__container{padding:var(--spacing-4);max-width:100%}.manage-booking__amount-luggage-section,.manage-booking__status-section{grid-template-columns:1fr;gap:var(--spacing-3)}.manage-booking__status-item{flex-wrap:wrap;gap:var(--spacing-2)}.manage-booking__badge{font-size:var(--font-size-xs);padding:var(--spacing-1) var(--spacing-2)}.manage-booking__title{font-size:var(--font-size-xl)}.manage-booking__trip-detail-item,.manage-booking__amount-luggage-value,.manage-booking__amount-luggage-label{font-size:var(--font-size-sm)}}.contact-us{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12)}.contact-us__inner{max-width:var(--container-max-width);margin:0 auto}.contact-us__hero{display:grid;grid-template-columns:48% 52%;align-items:start;gap:var(--spacing-12)}.contact-us__content{display:flex;flex-direction:column;gap:var(--spacing-5)}.contact-us__breadcrumb{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-2)}.contact-us__breadcrumb-link{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}.contact-us__breadcrumb-link:hover{color:var(--color-blue);text-decoration:underline}.contact-us__breadcrumb-separator{color:var(--text-secondary)}.contact-us__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:1px;color:var(--text-primary);margin-bottom:var(--spacing-4)}.contact-us__text-content{display:flex;flex-direction:column;gap:var(--spacing-4)}.contact-us__greeting{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary);margin:0}.contact-us__paragraph{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);color:var(--text-primary);line-height:1.6;margin:0}.contact-us__paragraph strong{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.contact-us__support-btn{align-self:flex-start;margin-top:var(--spacing-2);background-color:var(--color-red);border:none;color:var(--text-white);padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;min-width:200px}.contact-us__support-btn:hover:not(:disabled){background-color:#b22432}.contact-us__map-wrapper{width:100%;height:450px;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-md)}.contact-us__map{width:100%;height:100%;border:0}@media (max-width: 992px){.contact-us__hero{grid-template-columns:1fr;gap:var(--spacing-10)}.contact-us__content{align-items:flex-start}.contact-us__map-wrapper{height:400px}}@media (max-width: 640px){.contact-us{padding:var(--spacing-6) var(--spacing-4) var(--spacing-10)}.contact-us__title{font-size:var(--font-size-xl)}.contact-us__greeting,.contact-us__paragraph{font-size:var(--font-size-sm)}.contact-us__support-btn{width:100%;min-width:auto}.contact-us__map-wrapper{height:300px}.contact-us__breadcrumb{font-size:var(--font-size-xs);flex-wrap:wrap}}.contact-us__contact-section{margin-top:var(--spacing-8);padding:var(--spacing-8) 0;background:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:0 2px 8px #0000000d}.contact-us__contact-inner{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.contact-us__section-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);text-transform:uppercase;letter-spacing:1px;color:var(--color-green);margin-bottom:var(--spacing-4);text-align:center;position:relative;padding-bottom:var(--spacing-4)}.contact-us__section-title:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:80px;height:3px;background:var(--color-green);border-radius:2px}.contact-us__contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8);max-width:800px;margin:0 auto}.contact-us__contact-item{display:flex;flex-direction:column;gap:var(--spacing-3)}.contact-us__contact-label{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.contact-us__contact-values{display:flex;flex-direction:column;gap:var(--spacing-2)}.contact-us__contact-link{font-size:var(--font-size-base);color:var(--color-green);text-decoration:none;transition:color var(--transition-fast)}.contact-us__contact-link:hover{color:var(--color-dark-green);text-decoration:underline}.contact-us__locations-section{margin-top:var(--spacing-6);padding:var(--spacing-10) var(--container-padding);background:linear-gradient(135deg,#f8f9fa,#e9ecef);border-top:4px solid var(--color-green);border-bottom:4px solid var(--color-green)}.contact-us__locations-inner{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--container-padding)}.contact-us__locations-subtitle{font-size:var(--font-size-base);color:var(--text-secondary);text-align:center;margin-bottom:var(--spacing-8);line-height:1.6}.contact-us__terminals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-6)}.contact-us__terminal-card{background:var(--bg-primary);padding:var(--spacing-6);border-radius:var(--radius-md);box-shadow:0 2px 8px #0000001a;border:1px solid rgba(0,0,0,.05);transition:transform var(--transition-fast),box-shadow var(--transition-fast);min-height:180px;display:flex;flex-direction:column}.contact-us__terminal-card:hover{transform:translateY(-4px);box-shadow:0 4px 16px #00000026;border-color:var(--color-green)}.contact-us__terminal-name{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-green);margin:0 0 var(--spacing-2) 0;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--color-green);padding-bottom:var(--spacing-2);display:inline-block;width:100%}.contact-us__terminal-city{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin:0 0 var(--spacing-3) 0}.contact-us__terminal-address{font-size:var(--font-size-sm);color:var(--text-primary);line-height:1.6;margin:0}@media (max-width: 992px){.contact-us__contact-grid{grid-template-columns:1fr;gap:var(--spacing-6)}.contact-us__terminals-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.contact-us__contact-section,.contact-us__locations-section{margin-top:var(--spacing-8);padding:var(--spacing-6) 0}.contact-us__section-title{font-size:var(--font-size-lg);margin-bottom:var(--spacing-4)}.contact-us__locations-subtitle{font-size:var(--font-size-sm);margin-bottom:var(--spacing-6)}.contact-us__terminals-grid{grid-template-columns:1fr;gap:var(--spacing-4)}.contact-us__terminal-card{padding:var(--spacing-4)}.contact-us__terminal-name{font-size:var(--font-size-base)}.contact-us__terminal-address{font-size:var(--font-size-xs)}}.file-upload{display:flex;flex-direction:column;gap:var(--spacing-2)}.file-upload-header{display:flex;align-items:center;gap:var(--spacing-2)}.file-upload-link{background:none;border:none;color:var(--text-link);font-size:var(--font-size-base);cursor:pointer;padding:0;display:flex;align-items:center;gap:var(--spacing-1);text-decoration:none;transition:color var(--transition-fast)}.file-upload-link:hover{color:var(--color-blue);text-decoration:underline}.file-upload-icon{font-size:var(--font-size-lg)}.file-upload-size{font-size:var(--font-size-sm);color:var(--text-secondary)}.file-upload-input{display:none}.file-upload-list{display:flex;flex-direction:column;gap:var(--spacing-2);margin-top:var(--spacing-2)}.file-upload-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-2) var(--spacing-3);background-color:var(--bg-secondary);border-radius:var(--radius-md);font-size:var(--font-size-sm)}.file-upload-item-name{flex:1;color:var(--text-primary);word-break:break-word}.file-upload-item-size{color:var(--text-secondary);font-size:var(--font-size-xs)}.file-upload-remove{background:none;border:none;color:var(--color-red);font-size:var(--font-size-xl);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-full);transition:background-color var(--transition-fast)}.file-upload-remove:hover{background-color:#dc35451a}.file-upload-error{font-size:var(--font-size-sm);color:var(--color-red);margin-top:calc(var(--spacing-1) * -1)}.captcha-verification{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-5);background-color:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--input-border)}.captcha-verification-header{margin-bottom:var(--spacing-2)}.captcha-verification-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.captcha-verification-tabs{display:flex;gap:var(--spacing-2);border-bottom:2px solid var(--input-border);margin-bottom:var(--spacing-4)}.captcha-tab{background:none;border:none;padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:color var(--transition-fast),border-color var(--transition-fast)}.captcha-tab:hover:not(:disabled){color:var(--text-primary)}.captcha-tab--active{color:var(--text-primary);border-bottom-color:var(--color-blue)}.captcha-tab:disabled{opacity:.5;cursor:not-allowed}.captcha-verification-content{display:flex;flex-direction:column;gap:var(--spacing-4)}.captcha-image-wrapper{display:flex;justify-content:center;align-items:center;padding:var(--spacing-4);background-color:var(--color-white);border-radius:var(--radius-md);border:1px solid var(--input-border)}.captcha-image-container{position:relative;display:flex;align-items:center;gap:var(--spacing-3)}.captcha-image-display{font-size:4rem;line-height:1;padding:var(--spacing-4);background:linear-gradient(135deg,#667eea,#764ba2);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;min-width:120px;min-height:120px;filter:blur(2px) contrast(1.2);-webkit-user-select:none;user-select:none}.captcha-refresh-btn{background:none;border:none;font-size:var(--font-size-xl);cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-full);transition:background-color var(--transition-fast);display:flex;align-items:center;justify-content:center;width:40px;height:40px}.captcha-refresh-btn:hover{background-color:var(--bg-secondary)}.captcha-prompt{font-size:var(--font-size-sm);color:var(--text-primary);text-align:center;margin:0}.captcha-options{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-3)}.captcha-option{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);background-color:var(--color-white);border:1px solid var(--input-border);border-radius:var(--radius-md);cursor:pointer;transition:border-color var(--transition-fast),background-color var(--transition-fast)}.captcha-option:hover{border-color:var(--input-border-focus);background-color:var(--bg-secondary)}.captcha-radio{width:18px;height:18px;cursor:pointer;accent-color:var(--color-blue)}.captcha-option-label{font-size:var(--font-size-base);color:var(--text-primary);cursor:pointer;flex:1}.captcha-option input:checked+.captcha-option-label{font-weight:var(--font-weight-semibold);color:var(--color-blue)}.captcha-error{font-size:var(--font-size-sm);color:var(--color-red);margin-top:calc(var(--spacing-1) * -1)}@media (max-width: 640px){.captcha-options{grid-template-columns:1fr}.captcha-image-display{font-size:3rem;min-width:100px;min-height:100px}}.submit-ticket{background:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12);min-height:calc(100vh - 200px)}.submit-ticket__inner{max-width:var(--container-max-width);margin:0 auto}.submit-ticket__breadcrumb{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-4)}.submit-ticket__breadcrumb-link{color:var(--text-link);text-decoration:none;transition:color var(--transition-fast)}.submit-ticket__breadcrumb-link:hover{color:var(--color-blue);text-decoration:underline}.submit-ticket__breadcrumb-separator{color:var(--text-secondary)}.submit-ticket__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:1px;color:var(--text-primary);margin-bottom:var(--spacing-8)}.submit-ticket__form{display:flex;flex-direction:column;gap:var(--spacing-8)}.submit-ticket__form-section{display:flex;flex-direction:column;gap:var(--spacing-5);padding:var(--spacing-6);background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.submit-ticket__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 var(--spacing-2) 0;padding-bottom:var(--spacing-3);border-bottom:2px solid var(--bg-secondary)}.submit-ticket__form-row{display:flex;gap:var(--spacing-4);width:100%}.submit-ticket__form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-4);padding-top:var(--spacing-4)}@media (max-width: 992px){.submit-ticket__form-row{flex-direction:column;gap:0}.submit-ticket__form-row .input-group--half{width:100%}}@media (max-width: 640px){.submit-ticket{padding:var(--spacing-6) var(--spacing-4) var(--spacing-10)}.submit-ticket__title{font-size:var(--font-size-xl);margin-bottom:var(--spacing-6)}.submit-ticket__form{gap:var(--spacing-6)}.submit-ticket__form-section{padding:var(--spacing-4);gap:var(--spacing-4)}.submit-ticket__section-title{font-size:var(--font-size-base)}.submit-ticket__form-actions{flex-direction:column}.submit-ticket__form-actions .btn{width:100%}.submit-ticket__breadcrumb{font-size:var(--font-size-xs);flex-wrap:wrap}}.about-us-page{background-color:var(--bg-secondary)}.about-us-hero{position:relative;width:100%;min-height:600px;background-image:url(/images/about-us-hero-image.jpg);background-size:cover;background-position:center;background-repeat:no-repeat;display:flex;align-items:center;justify-content:center}.about-us-hero-overlay{position:absolute;inset:0;background:#0006;display:flex;align-items:center;justify-content:center}.about-us-hero-content{position:relative;z-index:1;text-align:center;color:var(--color-white);max-width:900px;padding:var(--spacing-8) var(--container-padding);display:flex;flex-direction:column;gap:var(--spacing-5);align-items:center}.about-us-hero-title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-white);text-transform:uppercase;letter-spacing:2px;margin:0;line-height:1.2}.about-us-hero-subtitle{font-size:var(--font-size-lg);color:var(--color-white);line-height:1.6;margin:0;max-width:800px}.about-us-hero-service-type{font-size:var(--font-size-base);color:var(--color-white);margin:0}.about-us-hero-buttons{display:flex;gap:var(--spacing-4);margin-top:var(--spacing-2);flex-wrap:wrap;justify-content:center}.about-us-hero-btn{padding:var(--spacing-3) var(--spacing-8);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:1px;text-decoration:none;border-radius:var(--radius-md);transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;min-width:160px}.about-us-hero-btn--primary{background-color:var(--color-red);color:var(--color-white);border:2px solid var(--color-red)}.about-us-hero-btn--primary:hover{background-color:#b22432;border-color:#b22432;transform:translateY(-2px);box-shadow:var(--shadow-md)}.about-us-hero-btn--outline{background-color:transparent;color:var(--color-white);border:2px solid var(--color-white)}.about-us-hero-btn--outline:hover{background-color:#ffffff1a;transform:translateY(-2px);box-shadow:var(--shadow-md)}.about-us-section{padding:var(--spacing-12) var(--container-padding);background-color:var(--bg-secondary)}.about-us-inner{max-width:var(--container-max-width);margin:0 auto}.about-us-content{display:grid;grid-template-columns:60% 40%;gap:var(--spacing-12);align-items:start}.about-us-main{display:flex;flex-direction:column;gap:var(--spacing-6)}.about-us-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0}.about-us-text{display:flex;flex-direction:column;gap:var(--spacing-5)}.about-us-paragraph{font-size:var(--font-size-base);line-height:1.8;color:var(--text-primary);margin:0}.about-us-sidebar{display:flex;flex-direction:column;gap:var(--spacing-6)}.about-us-info-card{display:flex;flex-direction:column;gap:var(--spacing-3);padding:var(--spacing-5);background-color:var(--color-white);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.about-us-info-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;margin:0}.about-us-info-text{font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);margin:0}.our-services-section{padding:var(--spacing-12) var(--container-padding);background-color:var(--color-white)}.our-services-inner{max-width:var(--container-max-width);margin:0 auto}.our-services-header{text-align:center;margin-bottom:var(--spacing-10)}.our-services-title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:1px;margin:0 0 var(--spacing-3) 0}.our-services-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0}.our-services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-8)}.service-card{display:flex;flex-direction:column;gap:var(--spacing-4);padding:var(--spacing-6);background-color:var(--bg-secondary);border-radius:var(--radius-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.service-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.service-icon-wrapper{display:flex;align-items:center;justify-content:flex-start;margin-bottom:var(--spacing-2)}.service-icon{width:64px;height:64px;object-fit:contain}.service-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.service-description{font-size:var(--font-size-base);line-height:1.7;color:var(--text-primary);margin:0}@media (max-width: 992px){.about-us-content{grid-template-columns:1fr;gap:var(--spacing-8)}.our-services-grid{grid-template-columns:1fr;gap:var(--spacing-6)}}@media (max-width: 768px){.about-us-hero{min-height:500px}.about-us-hero-content{padding:var(--spacing-6) var(--container-padding);gap:var(--spacing-4)}.about-us-hero-title{font-size:var(--font-size-3xl)}.about-us-hero-subtitle{font-size:var(--font-size-base)}.about-us-section,.our-services-section{padding:var(--spacing-8) var(--container-padding)}.about-us-title,.our-services-title{font-size:var(--font-size-2xl)}.our-services-header{margin-bottom:var(--spacing-6)}}@media (max-width: 640px){.about-us-hero{min-height:400px}.about-us-hero-content{padding:var(--spacing-4) var(--container-padding);gap:var(--spacing-3)}.about-us-hero-title{font-size:var(--font-size-2xl);letter-spacing:1px}.about-us-hero-subtitle,.about-us-hero-service-type{font-size:var(--font-size-sm)}.about-us-hero-buttons{flex-direction:column;width:100%;gap:var(--spacing-3)}.about-us-hero-btn{width:100%;min-width:auto}.about-us-section,.our-services-section{padding:var(--spacing-6) var(--container-padding)}.about-us-content{gap:var(--spacing-6)}.about-us-main,.about-us-sidebar{gap:var(--spacing-4)}.about-us-info-card,.service-card{padding:var(--spacing-4)}.service-icon{width:48px;height:48px}.about-us-title,.our-services-title{font-size:var(--font-size-xl)}.about-us-paragraph,.about-us-info-text,.service-description{font-size:var(--font-size-sm)}}.badge{display:inline-block;padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;border-radius:var(--radius-full);line-height:1.4}.badge--success{background-color:#d4edda;color:#155724}.badge--warning{background-color:#fff3cd;color:#856404}.badge--danger{background-color:#f8d7da;color:#721c24}.badge--info{background-color:#d1ecf1;color:#0c5460}.badge--primary{background-color:var(--color-primary);color:var(--color-white)}.badge--secondary{background-color:var(--color-light-gray);color:var(--text-primary)}.bookings-history{display:flex;flex-direction:column;gap:var(--spacing-6)}.bookings-history__header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-4)}.bookings-history__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0}.bookings-history__summary{display:flex;align-items:center;gap:var(--spacing-2)}.bookings-history__summary-label{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.bookings-history__summary-value{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-red)}.bookings-history__filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4);background-color:var(--color-white);padding:var(--spacing-4);border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014}.bookings-history__filter-group{display:flex;flex-direction:column}.bookings-history__section{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:0 2px 8px #00000014}.bookings-history__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-4) 0;text-transform:uppercase;letter-spacing:.5px}.bookings-history__loading,.bookings-history__empty{text-align:center;padding:var(--spacing-8);color:var(--text-secondary);font-size:var(--font-size-base)}.bookings-history__table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.bookings-history__table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.bookings-history__table thead{background-color:var(--bg-secondary)}.bookings-history__table th{padding:var(--spacing-3) var(--spacing-4);text-align:left;font-weight:var(--font-weight-semibold);color:var(--text-primary);text-transform:uppercase;font-size:var(--font-size-xs);letter-spacing:.5px;border-bottom:2px solid var(--color-light-gray)}.bookings-history__table td{padding:var(--spacing-4);border-bottom:1px solid var(--color-light-gray);color:var(--text-primary)}.bookings-history__table tbody tr:hover{background-color:var(--bg-secondary)}.bookings-history__table tbody tr:last-child td{border-bottom:none}.bookings-history__reference-link{background:none;border:none;color:var(--color-primary);text-decoration:underline;cursor:pointer;font-size:var(--font-size-sm);padding:0;font-family:inherit}.bookings-history__reference-link:hover{color:var(--color-primary-dark)}.bookings-history__amount{display:flex;flex-direction:column;gap:var(--spacing-1)}.bookings-history__payment-method{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:lowercase}.bookings-history__actions{display:flex;gap:var(--spacing-2);flex-wrap:wrap}.bookings-history__action-btn{min-width:auto}.bookings-history__notes{text-align:center;padding:var(--spacing-4);color:var(--text-secondary);font-style:italic;font-size:var(--font-size-sm)}.bookings-history__eyebrow{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin:0 0 var(--spacing-2) 0}.bookings-history__subtitle{font-size:var(--font-size-base);color:var(--text-secondary);margin:var(--spacing-2) 0 0 0}.bookings-history__filter-select{padding:var(--spacing-2) var(--spacing-3);border:1px solid var(--color-light-gray);border-radius:var(--radius-md);font-size:var(--font-size-sm);background-color:var(--color-white);color:var(--text-primary);cursor:pointer}.bookings-history__filter-select:focus{outline:none;border-color:var(--color-primary)}.bookings-history__cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-4)}.booking-card{background-color:var(--color-white);border:1px solid var(--color-light-gray);border-radius:var(--radius-lg);padding:var(--spacing-4);box-shadow:0 2px 8px #00000014;transition:box-shadow .2s ease}.booking-card:hover{box-shadow:0 4px 12px #0000001f}.booking-card__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4);padding-bottom:var(--spacing-3);border-bottom:1px solid var(--color-light-gray)}.booking-card__reference{display:flex;flex-direction:column;gap:var(--spacing-1)}.booking-card__reference-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.booking-card__reference-value{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:var(--text-primary);font-family:monospace}.booking-card__status{display:flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.booking-card__status--confirmed{background-color:#d1fae5;color:#065f46}.booking-card__status--pending{background-color:#fef3c7;color:#92400e}.booking-card__status--cancelled{background-color:#fee2e2;color:#991b1b}.booking-card__status--completed{background-color:#dbeafe;color:#1e40af}.booking-card__body{display:flex;flex-direction:column;gap:var(--spacing-3)}.booking-card__route{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary)}.booking-card__details{display:flex;flex-direction:column;gap:var(--spacing-2)}.booking-card__detail-item{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--text-secondary)}.booking-card__footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-3);border-top:1px solid var(--color-light-gray);margin-top:var(--spacing-2)}.booking-card__amount{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-primary)}.booking-card__action-button{padding:var(--spacing-2) var(--spacing-4);background-color:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .2s ease}.booking-card__action-button:hover{background-color:var(--color-primary-dark)}.bookings-history__cta-button{margin-top:var(--spacing-4);padding:var(--spacing-3) var(--spacing-6);background-color:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:background-color .2s ease}.bookings-history__cta-button:hover{background-color:var(--color-primary-dark)}.spinner{animation:spin 1s linear infinite;margin:0 auto var(--spacing-4);color:var(--color-primary)}@media (max-width: 1024px){.bookings-history__table{font-size:var(--font-size-xs)}.bookings-history__table th,.bookings-history__table td{padding:var(--spacing-2) var(--spacing-3)}}@media (max-width: 768px){.bookings-history__filters{grid-template-columns:1fr}.bookings-history__section{padding:var(--spacing-4)}.bookings-history__table-wrapper{margin:0 calc(var(--spacing-4) * -1)}.bookings-history__table{min-width:800px}.bookings-history__table th,.bookings-history__table td{padding:var(--spacing-2);font-size:var(--font-size-xs)}}@media (max-width: 640px){.bookings-history__title{font-size:var(--font-size-xl)}.bookings-history__header{flex-direction:column;align-items:flex-start}}.edit-profile-form{display:flex;flex-direction:column;gap:var(--spacing-6);padding:var(--spacing-2)}.edit-profile__section{display:flex;flex-direction:column;gap:var(--spacing-4)}.edit-profile__section-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--spacing-2);text-transform:uppercase;letter-spacing:.5px;padding-bottom:var(--spacing-2);border-bottom:2px solid var(--color-light-gray)}.edit-profile__section-title svg{color:var(--color-primary)}.edit-profile__fields{display:flex;flex-direction:column;gap:var(--spacing-4)}.edit-profile__actions{display:flex;justify-content:flex-end;gap:var(--spacing-3);padding-top:var(--spacing-4);border-top:1px solid var(--color-light-gray)}.edit-profile__cancel-btn,.edit-profile__save-btn{min-width:120px}@media (max-width: 640px){.edit-profile__actions{flex-direction:column-reverse}.edit-profile__cancel-btn,.edit-profile__save-btn{width:100%}}.profile-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.profile-page__header-section{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-4);margin-bottom:var(--spacing-2)}.profile-page__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.profile-page__edit-btn-header{flex-shrink:0}.profile-page__section{width:100%}.profile-page__header-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-8);box-shadow:0 2px 12px #0000001a;display:flex;align-items:center;gap:var(--spacing-6);flex-wrap:wrap}.profile-page__avatar-wrapper{position:relative;flex-shrink:0}.profile-page__avatar{width:120px;height:120px;border-radius:var(--radius-full);background:linear-gradient(135deg,var(--color-primary) 0%,#1c9c46 100%);display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px #4caf504d;position:relative}.profile-page__avatar-text{font-size:2.5rem;font-weight:700;color:#fff!important;text-shadow:0 2px 4px rgba(0,0,0,.3);line-height:1;-webkit-user-select:none;user-select:none;display:block;z-index:1}.profile-page__header-info{flex:1;min-width:250px}.profile-page__name{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-2) 0}.profile-page__email-section{display:flex;align-items:center;gap:var(--spacing-2);flex-wrap:wrap;margin:var(--spacing-2) 0}.profile-page__email{font-size:var(--font-size-lg);color:var(--text-secondary);margin:0}.profile-page__verification-badge{display:inline-flex;align-items:center;gap:var(--spacing-1);padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-md);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);text-transform:uppercase;letter-spacing:.5px}.profile-page__verification-badge--verified{background-color:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.profile-page__verification-badge--verified svg{color:#4caf50}.profile-page__verification-badge--unverified{background-color:#ff98001a;color:#ff9800;border:1px solid rgba(255,152,0,.3)}.profile-page__verification-badge--unverified svg{color:#ff9800}.profile-page__verify-btn{margin-top:var(--spacing-2);font-size:var(--font-size-sm)}.profile-page__member-since{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.profile-page__info-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-6)}.profile-page__info-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:0 2px 8px #00000014;border-top:4px solid var(--color-primary)}.profile-page__card-header{margin-bottom:var(--spacing-5);padding-bottom:var(--spacing-4);border-bottom:1px solid var(--color-light-gray)}.profile-page__card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;display:flex;align-items:center;gap:var(--spacing-2);text-transform:uppercase;letter-spacing:.5px}.profile-page__card-icon{color:var(--color-primary);flex-shrink:0}.profile-page__info-list{display:flex;flex-direction:column;gap:var(--spacing-4)}.profile-page__info-row{display:flex;align-items:flex-start;gap:var(--spacing-4);padding:var(--spacing-4);border-radius:var(--radius-md);transition:background-color var(--transition-fast)}.profile-page__info-row:hover{background-color:var(--bg-secondary)}.profile-page__info-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-radius:var(--radius-md);flex-shrink:0;color:var(--color-primary)}.profile-page__info-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1)}.profile-page__info-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-page__info-value{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:var(--text-primary)}.profile-page__stats-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-4) 0;text-transform:uppercase;letter-spacing:.5px}.profile-page__stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-4)}.profile-page__stat-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-6);box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:var(--spacing-4);transition:transform var(--transition-fast),box-shadow var(--transition-fast);border-left:4px solid transparent}.profile-page__stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.profile-page__stat-card--primary{border-left-color:var(--color-primary)}.profile-page__stat-card--upcoming{border-left-color:var(--color-blue)}.profile-page__stat-card--completed{border-left-color:#4caf50}.profile-page__stat-card--cancelled{border-left-color:var(--color-red)}.profile-page__stat-icon{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-radius:var(--radius-md);flex-shrink:0;color:var(--text-primary)}.profile-page__stat-card--primary .profile-page__stat-icon{color:var(--color-primary)}.profile-page__stat-card--upcoming .profile-page__stat-icon{color:var(--color-blue)}.profile-page__stat-card--completed .profile-page__stat-icon{color:#4caf50}.profile-page__stat-card--cancelled .profile-page__stat-icon{color:var(--color-red)}.profile-page__stat-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1)}.profile-page__stat-label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-page__stat-value{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}@media (max-width: 768px){.profile-page__header-card{padding:var(--spacing-5);flex-direction:column;text-align:center}.profile-page__avatar{width:100px;height:100px}.profile-page__avatar-text{font-size:var(--font-size-2xl)}.profile-page__header-info{text-align:center}.profile-page__info-section{grid-template-columns:1fr}.profile-page__info-card{padding:var(--spacing-4)}.profile-page__stats{grid-template-columns:repeat(2,1fr)}.profile-page__stat-card{flex-direction:column;text-align:center}}@media (max-width: 640px){.profile-page__title{font-size:var(--font-size-xl)}.profile-page__header-section{flex-direction:column;align-items:flex-start}.profile-page__edit-btn-header{width:100%}.profile-page__stats{grid-template-columns:1fr}.profile-page__stat-value{font-size:var(--font-size-2xl)}.profile-page__avatar{width:80px;height:80px}}.profile-page__loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-4);color:var(--text-secondary)}.profile-page__loading-icon{animation:spin 1s linear infinite;color:var(--color-primary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.profile-page__error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--spacing-4);text-align:center;color:var(--text-secondary)}.profile-page__error p{font-size:var(--font-size-lg);margin:0}.topup-form{display:flex;flex-direction:column;gap:var(--spacing-4)}.topup-form__field{display:flex;flex-direction:column;gap:var(--spacing-2)}.topup-form__label{font-size:var(--font-size-sm);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-weight-semibold);color:var(--text-secondary);margin:0}.topup-form__options{display:flex;flex-direction:column;gap:var(--spacing-3)}.topup-option{display:flex;gap:var(--spacing-3);padding:var(--spacing-3);border:1px solid var(--color-light-gray);border-radius:var(--radius-lg);cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.topup-option input{margin-top:4px}.topup-option__content{display:flex;flex-direction:column;gap:2px}.topup-option__title{font-weight:var(--font-weight-semibold);color:var(--text-primary)}.topup-option__subtitle{font-size:var(--font-size-sm);color:var(--text-secondary)}.topup-option--active{border-color:var(--color-primary);box-shadow:0 3px 12px #00000014}.topup-form__hint{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-3);font-size:var(--font-size-sm);color:var(--text-secondary)}.topup-form__hint p{margin:0 0 4px}.topup-form__hint p:last-child{margin-bottom:0}.topup-form__actions{margin-top:var(--spacing-2);display:flex;justify-content:flex-end;gap:var(--spacing-3)}.topup-form__error{color:var(--color-red);font-size:var(--font-size-xs);margin:0}@media (max-width: 640px){.topup-form__actions{flex-direction:column-reverse}}.wallet-page{display:flex;flex-direction:column;gap:var(--spacing-6)}.wallet-page__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px;margin:0}.wallet-page__section{width:100%}.wallet-page__balance-card{background:linear-gradient(135deg,#2e7d32,#1b5e20,#0d3d10);border-radius:var(--radius-lg);padding:var(--spacing-8);box-shadow:0 8px 24px #2e7d3266,0 4px 12px #0d3d104d;display:flex;flex-direction:column;gap:var(--spacing-6);position:relative;overflow:hidden}.wallet-page__balance-card:before{content:"";position:absolute;top:-50%;right:-50%;width:200%;height:200%;background:radial-gradient(circle,rgba(255,255,255,.15) 0%,transparent 70%);pointer-events:none}.wallet-page__balance-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(76,175,80,.1) 0%,transparent 100%);pointer-events:none}.wallet-page__balance-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);position:relative;z-index:1}.wallet-page__balance-info{flex:1}.wallet-page__balance-label{display:block;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);color:#fff;opacity:.95;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-2);text-shadow:0 1px 2px rgba(0,0,0,.2)}.wallet-page__balance-value{display:block;font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:#fff;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.3);letter-spacing:-.5px}.wallet-page__balance-icon{opacity:.25;flex-shrink:0;color:#fff;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.wallet-page__topup-btn{margin-top:var(--spacing-2);background-color:#fff;color:#1b5e20;border:2px solid rgba(255,255,255,.3);position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);font-weight:var(--font-weight-bold);font-size:var(--font-size-base);padding:var(--spacing-4) var(--spacing-6);box-shadow:0 4px 12px #0003,0 2px 4px #0000001a;transition:all .2s ease}.wallet-page__topup-btn:hover{background-color:#f5f5f5;color:#0d3d10;transform:translateY(-2px);box-shadow:0 6px 16px #00000040,0 4px 8px #00000026;border-color:#ffffff80}.wallet-page__topup-btn:active{transform:translateY(0);box-shadow:0 2px 8px #0003}.wallet-page__topup-icon{flex-shrink:0}.wallet-page__stats-section{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4)}.wallet-page__stat-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-5);box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:var(--spacing-4);border-left:4px solid var(--color-primary);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.wallet-page__stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.wallet-page__stat-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-radius:var(--radius-md);flex-shrink:0;color:var(--color-primary)}.wallet-page__stat-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-1)}.wallet-page__stat-label{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.wallet-page__stat-value{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary)}.wallet-page__stat-value--debit{color:var(--color-red)}.wallet-page__stat-value--credit{color:#155724}.wallet-page__section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-4);flex-wrap:wrap;gap:var(--spacing-2)}.wallet-page__section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0;text-transform:uppercase;letter-spacing:.5px}.wallet-page__section-count{font-size:var(--font-size-sm);color:var(--text-secondary);font-weight:var(--font-weight-medium)}.wallet-page__transactions{display:flex;flex-direction:column;gap:var(--spacing-3)}.wallet-page__transaction-card{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-5);box-shadow:0 2px 8px #00000014;display:flex;gap:var(--spacing-4);transition:transform var(--transition-fast),box-shadow var(--transition-fast);border-left:4px solid transparent}.wallet-page__transaction-card:hover{transform:translate(4px);box-shadow:0 4px 12px #0000001f}.wallet-page__transaction-card--credit{border-left-color:#4caf50}.wallet-page__transaction-card--debit{border-left-color:var(--color-red)}.wallet-page__transaction-icon{width:50px;height:50px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-secondary);border-radius:var(--radius-md);flex-shrink:0}.wallet-page__transaction-card--credit .wallet-page__transaction-icon{color:#4caf50;background-color:#e8f5e9}.wallet-page__transaction-card--debit .wallet-page__transaction-icon{color:var(--color-red);background-color:#ffebee}.wallet-page__transaction-content{flex:1;display:flex;flex-direction:column;gap:var(--spacing-3)}.wallet-page__transaction-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-4);flex-wrap:wrap}.wallet-page__transaction-info{flex:1;min-width:200px}.wallet-page__transaction-title{font-size:var(--font-size-base);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-1) 0}.wallet-page__transaction-date{font-size:var(--font-size-sm);color:var(--text-secondary);margin:0}.wallet-page__transaction-amount-wrapper{display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-2);flex-shrink:0}.wallet-page__transaction-amount{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold)}.wallet-page__transaction-amount--credit{color:#155724}.wallet-page__transaction-amount--debit{color:var(--color-red)}.wallet-page__transaction-badge{font-size:var(--font-size-xs)}.wallet-page__transaction-footer{display:flex;justify-content:space-between;align-items:center;padding-top:var(--spacing-3);border-top:1px solid var(--color-light-gray);flex-wrap:wrap;gap:var(--spacing-2)}.wallet-page__transaction-reference{font-size:var(--font-size-xs);color:var(--text-secondary);font-family:monospace}.wallet-page__transaction-status{font-size:var(--font-size-xs)}.wallet-page__empty{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-12);text-align:center;box-shadow:0 2px 8px #00000014}.wallet-page__empty-icon{margin-bottom:var(--spacing-4);opacity:.5;color:var(--text-secondary)}.wallet-page__empty p{font-size:var(--font-size-base);color:var(--text-secondary);margin:0}.wallet-page__empty-subtitle{font-size:var(--font-size-sm);margin-top:var(--spacing-2);opacity:.7}.wallet-page__state{min-height:320px;display:flex;align-items:center;justify-content:center}.wallet-page__loading{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-2);color:var(--text-secondary)}.wallet-page__loading--inline{padding:var(--spacing-8);background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:0 2px 8px #00000014}.wallet-page__loading-icon{color:var(--color-primary)}.wallet-page__error{background-color:var(--color-white);border-radius:var(--radius-lg);padding:var(--spacing-8);box-shadow:0 2px 8px #00000014;text-align:center;display:flex;flex-direction:column;gap:var(--spacing-4);color:var(--text-secondary)}.wallet-page__pagination{margin-top:var(--spacing-4);display:flex;justify-content:center;align-items:center;gap:var(--spacing-4);flex-wrap:wrap}.wallet-page__refresh-btn{display:inline-flex;align-items:center;gap:var(--spacing-2)}.wallet-page__refresh-btn svg{flex-shrink:0}.spinning{animation:wallet-spin 1s linear infinite}@keyframes wallet-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.wallet-page__balance-card{padding:var(--spacing-6)}.wallet-page__balance-value{font-size:var(--font-size-3xl)}.wallet-page__balance-icon{font-size:var(--font-size-4xl)}.wallet-page__stats-section{grid-template-columns:1fr}.wallet-page__stat-card{flex-direction:column;text-align:center}.wallet-page__transaction-header{flex-direction:column;align-items:flex-start}.wallet-page__transaction-amount-wrapper{align-items:flex-start;width:100%}.wallet-page__transaction-footer{flex-direction:column;align-items:flex-start}}@media (max-width: 640px){.wallet-page__title{font-size:var(--font-size-xl)}.wallet-page__balance-value{font-size:var(--font-size-2xl)}.wallet-page__balance-header{flex-direction:column}.wallet-page__balance-icon{align-self:flex-end}}.terms-page{background-color:var(--bg-secondary);padding:var(--spacing-8) var(--container-padding) var(--spacing-12);min-height:calc(100vh - var(--header-height) - var(--footer-height))}.terms-page__inner{max-width:900px;margin:0 auto}.terms-page__title{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold);color:var(--color-primary);text-align:center;margin-bottom:var(--spacing-8);text-transform:uppercase;letter-spacing:1px}.terms-toc{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);margin-bottom:var(--spacing-8);overflow:hidden}.terms-toc__header{width:100%;display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-5) var(--spacing-6);background-color:var(--bg-secondary);border:none;cursor:pointer;transition:background-color .2s;text-align:left}.terms-toc__header:hover{background-color:var(--color-light-gray)}.terms-toc__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0}.terms-toc__icon{color:var(--text-secondary);transition:transform .2s;flex-shrink:0}.terms-toc__content{padding:var(--spacing-6);border-top:1px solid var(--color-light-gray)}.terms-toc__section{margin-bottom:var(--spacing-6)}.terms-toc__section:last-child{margin-bottom:0}.terms-toc__section-title{font-size:var(--font-size-base);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-3) 0;text-transform:uppercase;letter-spacing:.5px}.terms-toc__list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.terms-toc__link{background:none;border:none;padding:var(--spacing-2) 0;text-align:left;font-size:var(--font-size-sm);color:var(--text-secondary);cursor:pointer;transition:color .2s;text-decoration:none;display:block;width:100%}.terms-toc__link:hover{color:var(--color-primary);text-decoration:underline}.terms-content{display:flex;flex-direction:column;gap:var(--spacing-10)}.terms-section{background-color:var(--color-white);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:var(--spacing-8);scroll-margin-top:var(--spacing-4)}.terms-section__title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin:0 0 var(--spacing-6) 0;padding-bottom:var(--spacing-4);border-bottom:3px solid var(--color-primary);text-transform:uppercase;letter-spacing:1px}.terms-subsection{margin-bottom:var(--spacing-6);scroll-margin-top:var(--spacing-4)}.terms-subsection:last-child{margin-bottom:0}.terms-subsection__title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--text-primary);margin:0 0 var(--spacing-3) 0;padding-top:var(--spacing-4)}.terms-subsection__text{font-size:var(--font-size-base);line-height:1.8;color:var(--text-secondary);margin:0 0 var(--spacing-4) 0}.terms-subsection__text:last-child{margin-bottom:0}.terms-subsection__text strong{color:var(--text-primary);font-weight:var(--font-weight-semibold)}@media (max-width: 768px){.terms-page{padding:var(--spacing-6) var(--container-padding) var(--spacing-8)}.terms-page__title{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-6)}.terms-section{padding:var(--spacing-6)}.terms-section__title{font-size:var(--font-size-xl)}.terms-toc__header{padding:var(--spacing-4) var(--spacing-5)}.terms-toc__content{padding:var(--spacing-4)}}@media (max-width: 640px){.terms-page__title{font-size:var(--font-size-2xl)}.terms-section{padding:var(--spacing-5)}.terms-section__title{font-size:var(--font-size-lg)}.terms-subsection__title{font-size:var(--font-size-base)}.terms-subsection__text{font-size:var(--font-size-sm)}}.app{min-height:100vh;display:flex;flex-direction:column}.app-main{flex:1}
