:root{--gold-50:#fffdf5;--gold-100:#fef8e2;--gold-200:#fdf0c3;--gold-300:#f9e292;--gold-400:#f3ce52;--gold-500:#d4af37;--gold-600:#b8860b;--gold-700:#996515;--gold-800:#7a4f0c;--gold-900:#5c3806;--gradient-gold:linear-gradient(180deg, #e0bb45 0%, #d4af37 100%);--gradient-gold-hover:linear-gradient(180deg, #d6ae33 0%, #c9a227 100%);--bg-page:#f6f6f3;--bg-card:#fff;--text-dark:#0f172a;--text-slate:#334155;--text-muted:#64748b;--border-light:#e2e8f0;--border-gold:#d4af3759;--font-heading:"Outfit", sans-serif;--font-body:"Plus Jakarta Sans", sans-serif}*{box-sizing:border-box}html,body,#root{min-width:320px;min-height:100%;margin:0}body{font-family:var(--font-body);background:var(--bg-page);color:var(--text-dark);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(900px 440px at 0 0,#d4af371c,#0000 70%),radial-gradient(820px 440px at 100% 0,#1e40af0f,#0000 70%),linear-gradient(#fbfaf6 0%,#f3f4f6 100%);position:fixed;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);letter-spacing:-.02em}button,input,textarea,select{font-family:var(--font-body)}button{cursor:pointer}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.header{z-index:1000;background:#fffffff5;border-bottom:1px solid #d4af374d;width:100%;height:72px;transition:all .3s;position:sticky;top:0;box-shadow:0 2px 8px #0f172a14}.header-container{justify-content:space-between;align-items:center;width:min(1240px,100% - 48px);height:100%;margin:0 auto;display:flex}.logo{letter-spacing:-.5px;align-items:center;gap:12px;font-size:26px;font-weight:800;text-decoration:none;display:flex}.logo-bus-icon{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 2px 8px #0f172a14}.logo:hover .logo-bus-icon{box-shadow:0 2px 8px #0f172a14}.logo-text{align-items:center;display:inline-flex}.logo-text-gold{color:var(--gold-600,#b8860b);font-weight:900;font-family:var(--font-heading)}.logo-text-dark{color:#0f172a;font-weight:800;font-family:var(--font-heading)}.logo-ai-badge{letter-spacing:.8px;color:#996515;text-transform:uppercase;background:#d4af371f;border:1px solid #d4af3773;border-radius:20px;align-items:center;gap:4px;margin-left:10px;padding:3px 8px;font-size:9.5px;font-weight:800;display:inline-flex}.ai-sparkle{color:#d4af37}.header-nav{align-items:center;gap:26px;display:flex}.my-bookings-link,.nav-link-item{color:#334155;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.my-bookings-link:hover,.nav-link-item:hover{color:#996515;background:#d4af3714}.nav-link-gds{color:#713f12;background:var(--gold-50,#fffdf5);border:1px solid var(--gold-300,#fcd34d);border-radius:20px;align-items:center;gap:7px;padding:6px 14px;font-size:13.5px;font-weight:700;text-decoration:none;transition:all .2s;display:inline-flex;box-shadow:0 1px 2px #0f172a0f}.nav-link-gds:hover{background:var(--gold-100,#fef3c7);border-color:var(--gold-500,#d4af37);box-shadow:0 2px 8px #0f172a14}.gds-dot{background:#10b981;border-radius:50%;width:7px;height:7px;box-shadow:0 0 6px #10b981}.guest-badge-count{color:#fff;background:linear-gradient(135deg,#d4af37,#b8860b);border-radius:50%;justify-content:center;align-items:center;width:19px;height:19px;font-size:11px;font-weight:800;line-height:1;display:inline-flex;box-shadow:0 1px 2px #0f172a0f}.user-logged-nav{align-items:center;gap:16px;display:flex}.logged-in-mobile{color:#334155;background:#d4af3714;border:1px solid #d4af3740;border-radius:20px;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:600;display:flex}.user-icon{color:#d4af37;width:17px;height:17px}.login-button{color:#0f172a;cursor:pointer;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;border-radius:24px;justify-content:center;align-items:center;padding:9px 24px;font-size:14.5px;font-weight:700;text-decoration:none;transition:all .25s;display:inline-flex;box-shadow:0 2px 8px #0f172a14}.login-button:hover{background:linear-gradient(#d6ae33 0%,#c9a227 100%);box-shadow:0 2px 8px #0f172a14}.logout-button{color:#854d0e;cursor:pointer;background:0 0;border:1.5px solid #d4af3780;border-radius:20px;justify-content:center;align-items:center;padding:7px 18px;font-size:13.5px;font-weight:600;transition:all .2s;display:inline-flex}.logout-button:hover{color:#713f12;background:#d4af371f;border-color:#d4af37}@media (width<=680px){.header{height:62px}.header-container{width:calc(100% - 24px)}.logo{gap:8px;font-size:21px}.logo-bus-icon{width:32px;height:32px}.logo-ai-badge{display:none}.my-bookings-link{padding:4px 8px;font-size:13px}.logged-in-mobile{display:none}.login-button{white-space:nowrap;padding:7px 14px;font-size:13px}.header-nav{gap:6px}.my-bookings-link,.nav-link-item{white-space:nowrap;padding:6px;font-size:13px}}@media (width<=400px){.header-nav .nav-link-item[href=\/pnr-status]{display:none}}.app-footer{color:#64748b;background:#f8fafc;border-top:1px solid #e2e8f0;padding:56px 24px 28px;font-size:14px}.footer-container{max-width:1200px;margin:0 auto}.footer-grid{border-bottom:1px solid #e2e8f0;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:40px;padding-bottom:36px;display:grid}.brand-col{flex-direction:column;display:flex}.footer-logo{letter-spacing:-.5px;align-items:center;gap:8px;width:fit-content;margin-bottom:12px;font-size:26px;font-weight:800;text-decoration:none;display:inline-flex}.footer-logo .logo-gold{color:var(--gold-500,#d4af37)}.footer-logo .logo-dark,.footer-logo .logo-white{color:#0f172a}.footer-tagline{color:#64748b;max-width:320px;margin:0 0 20px;font-size:13.5px;line-height:1.6}.trust-badges-row{flex-direction:column;gap:8px;display:flex}.trust-badge{color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:6px;width:fit-content;padding:6px 12px;font-size:12px;font-weight:600;box-shadow:0 1px 2px #0000000a}.footer-col-title{color:#0f172a;letter-spacing:.4px;text-transform:uppercase;margin:0 0 18px;font-size:14px;font-weight:700}.footer-links-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.footer-links-list li a,.footer-link-btn{color:#475569;cursor:pointer;text-align:left;background:0 0;border:none;padding:0;font-family:inherit;font-size:13.5px;text-decoration:none;transition:color .15s,transform .15s;display:inline-block}.footer-links-list li a:hover,.footer-link-btn:hover{color:var(--gold-600,#b8860b);transform:translate(3px)}.support-desc{color:#64748b;margin:0 0 16px;font-size:13px;line-height:1.4}.contact-item{align-items:center;gap:12px;margin-bottom:14px;display:flex}.contact-icon{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:16px;display:flex;box-shadow:0 1px 2px #0000000a}.contact-label{color:#64748b;text-transform:uppercase;letter-spacing:.3px;font-size:11px;font-weight:600;display:block}.contact-val{color:#0f172a;font-size:14px;font-weight:700;display:block}.footer-bottom-bar{color:#64748b;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:24px;font-size:13px;display:flex}.copyright-text{margin:0}.footer-bottom-links{align-items:center;gap:8px;display:flex}.dot-sep{color:#cbd5e1}@media (width<=900px){.footer-grid{grid-template-columns:repeat(2,1fr);gap:32px}}@media (width<=600px){.app-footer{padding:40px 16px 24px}.footer-grid{grid-template-columns:1fr;gap:28px;padding-bottom:28px}.footer-bottom-bar{flex-direction:column;align-items:flex-start;gap:8px}}.location-input{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.location-input label{letter-spacing:.8px;color:#854d0e;text-transform:uppercase;font-size:11.5px;font-weight:800}.location-input-wrapper{align-items:center;display:flex;position:relative}.input-location-icon{color:#d4af37;pointer-events:none;width:18px;height:18px;transition:all .2s;position:absolute;left:14px}.location-input input{color:#0f172a;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;outline:none;width:100%;height:50px;padding:0 14px 0 42px;font-size:15px;font-weight:600;transition:all .2s}.location-input input::placeholder{color:#94a3b8;font-weight:400}.location-input input:focus{border-color:#d4af37;box-shadow:0 0 0 3px #d4af3738}.city-suggestions{z-index:100;background:#fff;border:1.5px solid #d4af3759;border-radius:12px;max-height:240px;padding:6px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a14}.city-suggestions button.suggestion-item{color:#0f172a;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:10px 14px;font-size:14px;font-weight:600;transition:all .15s;display:flex}.suggestion-left{align-items:center;gap:10px;display:flex}.suggestion-pin{color:#d4af37;width:15px;height:15px;transition:transform .15s}.city-suggestions button.suggestion-item:hover:not(:disabled){color:#854d0e;background:#fef8e2}.city-suggestions button.suggestion-item:hover:not(:disabled) .suggestion-pin{color:#b8860b}.city-suggestions button.suggestion-item.disabled-city{opacity:.45;cursor:not-allowed;color:#94a3b8;background:#f8fafc}.disabled-tag{color:#64748b;letter-spacing:.3px;background:#e2e8f0;border-radius:4px;padding:2px 7px;font-size:10.5px;font-weight:600}.date-input-group{flex-direction:column;gap:6px;width:100%;display:flex}.date-input-group label{letter-spacing:.8px;color:#854d0e;text-transform:uppercase;font-size:11.5px;font-weight:800}.date-input-row{align-items:center;gap:8px;width:100%;display:flex}.date-input-wrapper{cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;flex:1.2;justify-content:space-between;align-items:center;min-width:130px;height:50px;padding:0 12px 0 38px;transition:all .2s;display:flex;position:relative}.date-input-wrapper:hover{border-color:#d4af37}.date-input-wrapper.active-focus{border-color:#d4af37;box-shadow:0 0 0 3px #d4af3738}.date-input-wrapper .input-icon{color:#d4af37;pointer-events:none;width:17px;height:17px;position:absolute;left:12px}.custom-date-text{color:#0f172a;white-space:nowrap;pointer-events:none;font-size:14px;font-weight:700}.custom-date-text.placeholder{color:#94a3b8;font-weight:400}.calendar-chevron{color:#64748b;pointer-events:none;flex-shrink:0;width:16px;height:16px;transition:transform .2s}.calendar-chevron.open{color:#d4af37;transform:rotate(180deg)}.custom-calendar-dropdown{z-index:1000;background:#fff;border:1.5px solid #d4af3759;border-radius:14px;width:300px;max-width:calc(100vw - 36px);padding:18px;animation:.18s ease-out calendarFadeIn;position:absolute;top:calc(100% + 8px);left:0;box-shadow:0 8px 24px #0f172a14}@keyframes calendarFadeIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.calendar-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.calendar-month-title{color:#0f172a;font-size:15px;font-weight:800}.calendar-nav-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;justify-content:center;align-items:center;width:30px;height:30px;font-size:18px;line-height:1;transition:all .15s;display:flex}.calendar-nav-btn:hover:not(:disabled){color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-color:#d4af37}.calendar-nav-btn:disabled{opacity:.3;cursor:not-allowed;background:#f8fafc;border-color:#f1f5f9}.calendar-days-header{text-align:center;grid-template-columns:repeat(7,1fr);gap:2px;margin-bottom:8px;display:grid}.day-name{color:#854d0e;text-transform:uppercase;font-size:11px;font-weight:800}.calendar-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.calendar-cell{justify-content:center;align-items:center;height:34px;display:flex}.calendar-cell.day-btn{color:#1e293b;cursor:pointer;background:0 0;border:none;border-radius:8px;font-size:13.5px;font-weight:600;transition:all .15s}.calendar-cell.day-btn:hover:not(.disabled):not(.selected){color:#854d0e;background:#fef8e2}.calendar-cell.day-btn.disabled{color:#cbd5e1;opacity:.4;cursor:not-allowed;pointer-events:none;background:0 0}.calendar-cell.day-btn.is-today:not(.selected){color:#854d0e;border:1.5px solid #d4af37;font-weight:800}.calendar-cell.day-btn.selected{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);font-weight:800;box-shadow:0 1px 2px #0f172a0f}.date-shortcuts{flex-shrink:0;align-items:center;gap:6px;display:flex}.date-shortcut-btn{color:#475569;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #e2e8f0;border-radius:10px;height:50px;padding:0 14px;font-size:13px;font-weight:700;transition:all .2s}.date-shortcut-btn:hover{color:#854d0e;background:#fef8e2;border-color:#d4af3780}.date-shortcut-btn.active{color:#854d0e;background:#fef8e2;border-color:#d4af37;font-weight:800}@media (width<=480px){.date-input-wrapper{height:48px;padding:0 8px 0 34px}.date-input-wrapper .input-icon{left:10px}.custom-date-text{font-size:13px}.date-shortcut-btn{height:48px;padding:0 10px;font-size:12px}}.search-box{z-index:10;background:#fff;border:1.5px solid #d4af3766;border-radius:20px;width:100%;padding:20px 26px;transition:all .3s;position:relative;box-shadow:0 8px 24px #0f172a14}.search-box:hover{border-color:#d4af37;box-shadow:0 8px 24px #0f172a14}.search-box-main{align-items:flex-end;gap:16px;display:flex}.search-route-group{flex:2.2;align-items:flex-end;gap:10px;min-width:0;display:flex}.swap-button-wrapper{flex-shrink:0;justify-content:center;align-items:center;height:48px;margin-top:20px;display:flex}.swap-button{color:#b8860b;cursor:pointer;background:#fffdf5;border:1.5px solid #d4af3780;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;min-width:40px;height:40px;transition:all .3s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 1px 2px #0f172a0f}.swap-button svg{width:17px;height:17px;transition:transform .3s}.swap-button:hover{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-color:#d4af37;transform:rotate(180deg)scale(1.08);box-shadow:0 2px 8px #0f172a14}.swap-button:active{transform:rotate(180deg)scale(.95)}.search-date-group{flex:1.4;min-width:0}.search-action-group{flex-shrink:0}.search-button{color:#0f172a;letter-spacing:.3px;cursor:pointer;white-space:nowrap;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;height:50px;padding:0 30px;font-size:15px;font-weight:800;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 2px 8px #0f172a14}.search-button .search-icon{color:#0f172a;width:18px;height:18px}.search-button:hover{background:linear-gradient(#d6ae33 0%,#c9a227 100%);box-shadow:0 8px 24px #0f172a14}.search-button:active{transform:translateY(0)}.search-error{color:#854d0e;background:#fef8e2;border:1px solid #d4af3780;border-radius:8px;margin:14px 0 0;padding:10px 16px;font-size:13px;font-weight:600}@media (width<=860px){.search-box{border-radius:16px;padding:16px;box-shadow:0 8px 24px #0f172a14}.search-box-main{flex-direction:column;align-items:stretch;gap:14px}.search-route-group{background:#fffdf5;border:1.5px solid #d4af3759;border-radius:14px;flex-direction:column;align-items:stretch;gap:0;width:100%;padding:14px;position:relative}.swap-button-wrapper{z-index:5;justify-content:center;align-items:center;width:100%;height:34px;margin:-6px 0;display:flex;position:relative}.swap-button-wrapper:before{content:"";z-index:1;background:#d4af374d;height:1px;position:absolute;top:50%;left:0;right:0}.swap-button{z-index:2;background:#fff;border:1.5px solid #d4af37;width:36px;min-width:36px;height:36px;margin:0;position:relative;box-shadow:0 1px 2px #0f172a0f}.search-date-group,.search-action-group{width:100%}.search-button{border-radius:12px;width:100%;height:50px;font-size:16px}}.offers-section{background:#fff;padding:105px 24px 60px}.offers-container{width:min(1200px,100%);margin:0 auto}.offers-header{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.offers-header h2{color:#111827;margin:0 0 6px;font-size:26px;font-weight:800}.offers-header .text-red,.offers-header .text-gold{color:var(--gold-600,#b8860b)}.offers-subtitle{color:#64748b;margin:0;font-size:15px}.view-all-offers-btn{color:#854d0e;cursor:pointer;white-space:nowrap;background:#fffdf5;border:1.5px solid #d4af37;border-radius:9999px;justify-content:center;align-items:center;height:40px;padding:0 22px;font-size:13.5px;font-weight:700;transition:all .25s;display:inline-flex}.view-all-offers-btn:hover{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);box-shadow:0 2px 8px #0f172a14}.offers-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.offer-card{border-radius:16px;justify-content:space-between;min-height:200px;padding:24px;transition:transform .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}.clickable-card{cursor:pointer;-webkit-user-select:none;user-select:none}.clickable-card:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.clickable-card:hover{box-shadow:0 12px 28px #00000014}.card-red,.card-gold{background:#fffdf5;border:1.5px solid #d4af3759}.card-blue{background:#f0f7ff;border:1px solid #dbeafe}.card-green{background:#f0fdf4;border:1px solid #dcfce7}.card-content{z-index:2;flex-direction:column;flex:1;display:flex}.card-badge{border-radius:10px;justify-content:center;align-items:center;width:36px;height:36px;margin-bottom:14px;display:flex}.card-badge svg{width:20px;height:20px}.badge-red,.badge-gold{color:#854d0e;background:#fef8e2}.badge-blue{color:#2563eb;background:#dbeafe}.badge-green{color:#16a34a;background:#dcfce7}.badge-orange{color:#ea580c;background:#ffedd5}.card-content h3{color:#111827;margin:0 0 6px;font-size:18px;font-weight:700}.card-content p{color:#6b7280;margin:0 0 16px;font-size:13px;line-height:1.4}.code-box{color:#4b5563;background:#fff;border:1.5px dashed #d4af3799;border-radius:8px;justify-content:space-between;align-items:center;max-width:230px;margin-bottom:16px;padding:6px 12px;font-size:12px;display:flex}.code-box strong{color:#854d0e;font-weight:800}.copy-btn{color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px 6px;transition:all .15s;display:inline-flex}.copy-btn:hover{color:#111827;background:#f1f5f9}.copy-btn svg{width:14px;height:14px}.action-btn{cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;width:fit-content;margin-top:auto;padding:10px 18px;font-size:13px;font-weight:600;line-height:1.2;transition:all .2s;display:inline-flex}.btn-solid-red,.btn-solid-gold{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;font-weight:800;box-shadow:0 2px 8px #0f172a14}.btn-solid-red:hover,.btn-solid-gold:hover{background:linear-gradient(#d6ae33 0%,#c9a227 100%);box-shadow:0 2px 8px #0f172a14}.btn-outline-blue{color:#2563eb;background:#fff;border:1.5px solid #bfdbfe}.btn-outline-blue:hover{color:#fff;background:#2563eb;box-shadow:0 4px 12px #2563eb40}.btn-solid-blue{color:#fff;background:#2563eb;border:none}.btn-solid-blue:hover{background:#1d4ed8;box-shadow:0 4px 12px #2563eb40}.btn-outline-green{color:#16a34a;background:#fff;border:1.5px solid #bbf7d0}.btn-outline-green:hover{color:#fff;background:#16a34a;box-shadow:0 4px 12px #16a34a40}.btn-solid-green{color:#fff;background:#16a34a;border:none}.btn-solid-green:hover{background:#15803d;box-shadow:0 4px 12px #16a34a40}.btn-outline-gray{color:#4b5563;background:#fff;border:1.5px solid #d1d5db}.btn-outline-gray:hover{color:#111827;background:#f3f4f6}.card-graphic{opacity:.15;pointer-events:none;z-index:1;font-size:48px;font-weight:900;position:absolute;bottom:12px;right:16px}.graphic-red,.graphic-gold{color:#d4af37}.graphic-blue{color:#2563eb}.graphic-green{color:#16a34a}.modal-backdrop{z-index:1000;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;animation:.2s ease-out fadeIn;display:flex;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.modal-container{background:#fff;border:1px solid #e2e8f0;border-radius:20px;flex-direction:column;width:min(720px,100%);max-height:88vh;animation:.25s cubic-bezier(.16,1,.3,1) modalScaleUp;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.modal-header{background:#fafafa;border-bottom:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 24px;display:flex}.modal-title-group{align-items:center;gap:14px;display:flex}.modal-badge-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.modal-title-group h3{color:#0f172a;margin:0 0 3px;font-size:19px;font-weight:800}.modal-title-group p{color:#64748b;margin:0;font-size:13px}.modal-close-btn{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:15px;font-weight:700;transition:all .15s;display:inline-flex}.modal-close-btn:hover{background:var(--gold-50,#fffdf5);color:var(--gold-800,#854d0e);border-color:var(--gold-300,#fcd34d);transform:rotate(90deg)}.modal-tabs{scrollbar-width:none;-ms-overflow-style:none;background:#fff;border-bottom:1px solid #f1f5f9;flex-shrink:0;align-items:center;gap:10px;padding:14px 24px;display:flex;overflow:auto hidden}.modal-tabs::-webkit-scrollbar{display:none}.tab-btn{color:#64748b;cursor:pointer;white-space:nowrap;box-sizing:border-box;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:9999px;flex-shrink:0;justify-content:center;align-items:center;height:38px;padding:0 18px;font-size:13px;font-weight:600;line-height:1;transition:all .2s cubic-bezier(.16,1,.3,1);display:inline-flex}.tab-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.tab-btn.active{color:#fff;background:#0f172a;border-color:#0f172a;box-shadow:0 2px 8px #0f172a33}.modal-body-scroll{flex:1;min-height:0;padding:20px 24px;overflow-y:auto}.modal-footer{background:#f8fafc;border-top:1px solid #f1f5f9;flex-shrink:0;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.footer-note{color:#64748b;margin:0;font-size:12px}.offers-modal-list{flex-direction:column;gap:16px;display:flex}.offer-modal-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;transition:all .2s}.offer-modal-card:hover{border-color:#cbd5e1;box-shadow:0 4px 16px #0000000a}.offer-card-top{gap:14px;display:flex}.offer-icon-box{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.offer-icon-box svg{width:22px;height:22px}.offer-info{flex:1}.offer-title-row{align-items:center;gap:10px;margin-bottom:4px;display:flex}.offer-title-row h4{color:#0f172a;margin:0;font-size:16px;font-weight:700}.offer-tag-pill{background:var(--gold-100,#fef3c7);color:var(--gold-800,#854d0e);text-transform:uppercase;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.offer-desc{color:#475569;margin:0 0 6px;font-size:13px}.offer-meta{color:#94a3b8;flex-wrap:wrap;gap:12px;font-size:12px;display:flex}.offer-card-bottom{border-top:1px dashed #e2e8f0;justify-content:space-between;align-items:center;margin-top:14px;padding-top:12px;display:flex}.coupon-code-pill{background:#fffdf5;border:1.5px dashed #d4af3799;border-radius:8px;align-items:center;gap:10px;padding:5px 12px;display:inline-flex}.code-text{color:#854d0e;letter-spacing:.6px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;font-weight:800}.modal-copy-btn{color:#854d0e;cursor:pointer;background:#fff;border:1px solid #d4af3780;border-radius:6px;align-items:center;gap:5px;padding:4px 10px;font-size:12px;font-weight:700;line-height:1;transition:all .15s;display:inline-flex}.modal-copy-btn:hover{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%)}.modal-copy-btn.copied{color:#fff;background:#16a34a;border-color:#16a34a}.modal-copy-btn svg{width:13px;height:13px}.terms-toggle-btn{color:#2563eb;cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:6px 8px;font-size:12px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.terms-toggle-btn:hover{color:#1d4ed8;background:#eff6ff}.offer-terms-list{color:#64748b;background:#f8fafc;border-radius:8px;margin:10px 0 0;padding:10px 14px 10px 28px;font-size:12px}.offer-terms-list li{margin-bottom:4px}.location-detector-bar{background:#eff6ff;border-bottom:1px solid #dbeafe;flex-shrink:0;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.location-info{align-items:center;gap:12px;display:flex}.pulse-indicator{background:#10b981;border-radius:50%;flex-shrink:0;width:10px;height:10px;box-shadow:0 0 #10b981b3}.location-label{color:#2563eb;letter-spacing:.5px;font-size:10px;font-weight:800;display:block}.location-name{color:#0f172a;font-size:14px}.refresh-location-btn{color:#1d4ed8;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #bfdbfe;border-radius:8px;align-items:center;gap:6px;padding:6px 12px;font-size:12px;font-weight:600;transition:all .15s;display:inline-flex}.refresh-location-btn:hover{color:#fff;background:#2563eb}.refresh-location-btn svg{width:14px;height:14px}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.nearby-buses-list{flex-direction:column;gap:16px;display:flex}.nearby-bus-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:16px 18px;transition:all .2s}.nearby-bus-card:hover{border-color:#93c5fd;box-shadow:0 8px 24px #2563eb14}.bus-card-top-row{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.bus-title{color:#0f172a;margin:0 0 2px;font-size:16px;font-weight:800}.bus-type-sub{color:#64748b;font-size:12px}.bus-price-tag{text-align:right}.fare-label{color:#94a3b8;text-transform:uppercase;font-size:10px;display:block}.fare-amount{color:var(--gold-700,#9a7b1c);font-size:18px;font-weight:800}.bus-route-highlight{background:#f8fafc;border-radius:10px;align-items:center;gap:14px;margin-bottom:10px;padding:10px 14px;display:flex}.route-point{align-items:center;gap:8px;display:flex}.dot-green{background:#10b981;border-radius:50%;width:8px;height:8px}.dot-red{background:var(--gold-600,#b8860b);border-radius:50%;width:8px;height:8px}.time-sub{color:#64748b;font-size:11px;display:block}.route-arrow{color:#94a3b8;font-weight:700}.bus-boarding-info{color:#475569;align-items:center;gap:6px;margin-bottom:10px;font-size:12px;display:flex}.bus-amenities-row{flex-wrap:wrap;gap:6px;margin-bottom:14px;display:flex}.amenity-chip{color:#475569;background:#f1f5f9;border-radius:6px;padding:2px 8px;font-size:11px}.nearby-card-footer{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-top:12px;display:flex}.bus-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.depart-badge{color:#1d4ed8;background:#eff6ff;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700}.seats-badge{color:#b45309;background:#fef3c7;border-radius:6px;padding:3px 8px;font-size:11px;font-weight:600}.rating-pill{color:#fff;background:#16a34a;border-radius:6px;padding:3px 7px;font-size:11px;font-weight:700}.eco-stats-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:24px;display:grid}.eco-stat-card{text-align:center;background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:14px;display:flex}.eco-stat-icon{margin-bottom:2px;font-size:24px}.eco-stat-number{color:#15803d;font-size:17px;font-weight:800}.eco-stat-label{color:#4b5563;font-size:11px;line-height:1.3}.carbon-calculator-card{background:#fafafa;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:24px;padding:20px}.calc-header{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.calc-title{color:#0f172a;margin:0 0 4px;font-size:16px;font-weight:800}.calc-subtitle{color:#64748b;margin:0;font-size:13px}.distance-badge{color:#fff;background:#16a34a;border-radius:20px;padding:5px 12px;font-size:14px;font-weight:800}.slider-wrapper{margin-bottom:20px}.distance-slider{cursor:pointer;accent-color:#16a34a;background:#cbd5e1;border-radius:3px;outline:none;width:100%;height:6px}.slider-labels{color:#94a3b8;justify-content:space-between;margin-top:6px;font-size:11px;display:flex}.calc-results-comparison{grid-template-columns:1fr auto 1fr 1.3fr;align-items:center;gap:12px;display:grid}.comparison-box{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;padding:12px;display:flex}.box-title{color:#64748b;text-transform:uppercase;margin-bottom:4px;font-size:11px;font-weight:700}.emission-val{color:#0f172a;font-size:18px;font-weight:800}.emission-val.green-text{color:#16a34a}.emission-val.hero-green{color:#15803d;font-size:20px}.emission-desc{color:#94a3b8;margin-top:2px;font-size:11px}.comparison-divider{color:#94a3b8;font-size:13px;font-weight:800}.saved-box{background:#f0fdf4;border:1.5px solid #86efac}.eco-commitments-section h4{color:#0f172a;margin:0 0 12px;font-size:15px;font-weight:800}.commitments-list{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.commitment-item{background:#fff;border:1px solid #f1f5f9;border-radius:10px;gap:10px;padding:12px;display:flex}.commit-icon{font-size:20px}.commitment-item strong{color:#0f172a;margin-bottom:2px;font-size:13px;display:block}.commitment-item p{color:#64748b;margin:0;font-size:11px;line-height:1.3}.offers-toast-notification{color:#fff;z-index:1200;background:#0f172a;border-radius:30px;align-items:center;gap:8px;padding:12px 24px;font-size:13px;font-weight:600;animation:.3s cubic-bezier(.16,1,.3,1) toastSlideUp;display:flex;position:fixed;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 25px #00000040}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@media (width<=900px){.offers-grid{grid-template-columns:1fr}.offers-header{flex-direction:column;align-items:flex-start;gap:12px}.eco-stats-grid{grid-template-columns:repeat(2,1fr)}.calc-results-comparison{grid-template-columns:1fr;gap:8px}.comparison-divider{display:none}.commitments-list{grid-template-columns:1fr}}@media (width<=640px){.modal-backdrop{align-items:flex-end;padding:0}.modal-container{border-bottom:none;border-radius:24px 24px 0 0;width:100%;max-height:90vh;animation:.28s cubic-bezier(.16,1,.3,1) modalSlideUpMobile}@keyframes modalSlideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-container:before{content:"";background:#cbd5e1;border-radius:2px;flex-shrink:0;width:40px;height:4px;margin:8px auto 0;display:block}.modal-header{padding:14px 18px}.modal-title-group h3{font-size:16.5px}.modal-title-group p{font-size:12px}.modal-tabs{gap:8px;padding:10px 16px}.tab-btn{height:34px;padding:0 14px;font-size:12px}.modal-body-scroll{padding:16px}.modal-footer{flex-direction:column;align-items:stretch;gap:10px;padding:12px 16px}.modal-footer .action-btn{text-align:center;width:100%}}@media (width<=768px){.offers-section{padding:60px 16px 40px}.offers-header{flex-direction:column;align-items:flex-start;gap:12px;margin-bottom:20px}.offers-header h2{font-size:22px;line-height:1.2}.offers-subtitle{font-size:13px}.view-all-offers-btn{height:34px;padding:0 16px;font-size:12px}}.home-page{min-height:calc(100vh - 72px)}.hero-section{background-position:50% 30%;background-repeat:no-repeat;background-size:cover;flex-direction:column;min-height:560px;display:flex;position:relative}.hero-overlay{background:linear-gradient(#090d16b8 0%,#090d1673 50%,#faf9f5fa 100%);flex:1;align-items:center;padding:56px 24px 70px;display:flex}.hero-container{flex-direction:column;gap:20px;width:min(1240px,100%);margin:0 auto;display:flex}.hero-left-content{max-width:660px}.hero-eyebrow{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;display:flex}.eyebrow-ai-pill{color:#ffe259;letter-spacing:1px;text-transform:uppercase;background:linear-gradient(135deg,#d4af3740 0%,#d4af371a 100%);border:1px solid #d4af3799;border-radius:20px;align-items:center;gap:6px;padding:5px 12px;font-size:11px;font-weight:800;display:inline-flex;box-shadow:0 1px 2px #0f172a0f}.ai-sparkle-icon{color:#ffe259}.eyebrow-line{background:linear-gradient(90deg,#ffe259,#d4af37);border-radius:2px;width:32px;height:2px}.eyebrow-sub{letter-spacing:1px;color:#e2e8f0;text-shadow:0 1px 3px #000000b3;font-size:11px;font-weight:700}.hero-title{letter-spacing:-1.8px;color:#fff;text-shadow:0 2px 12px #000000bf;font-size:52px;font-weight:900;line-height:1.08;font-family:var(--font-heading);margin:0 0 12px}.hero-title .text-gold{color:var(--gold-400,#f3ce52)}.hero-subtitle{color:#e2e8f0;text-shadow:0 1px 4px #000000b3;max-width:580px;margin:0 0 18px;font-size:16px;font-weight:500;line-height:1.5}.search-box-hero-wrapper{z-index:50;width:100%;margin-top:18px;position:relative}.hero-ai-features-strip{flex-wrap:wrap;align-items:center;gap:16px;margin-top:12px;display:flex}.ai-feature-pill{color:#1e293b;background:#ffffffeb;border:1px solid #d4af3759;border-radius:30px;align-items:center;gap:8px;padding:8px 16px;font-size:12.5px;font-weight:700;transition:all .25s;display:inline-flex;box-shadow:0 2px 8px #0000000a}.ai-feature-pill:hover{background:#fffdf5;border-color:#d4af37;box-shadow:0 2px 8px #0f172a14}.ai-feature-pill .feature-icon{color:#d4af37}@media (width<=1024px){.hero-section{min-height:auto}.hero-title{font-size:42px}}@media (width<=768px){.hero-section{min-height:auto}.hero-overlay{padding:36px 16px 40px}.hero-title{letter-spacing:-1px;font-size:34px}.hero-subtitle{margin-bottom:12px;font-size:14px}.hero-ai-features-strip{gap:8px}.ai-feature-pill{padding:6px 12px;font-size:11.5px}}.filter-panel{background:#fff;border:1px solid #eaedf0;border-radius:16px;flex-shrink:0;width:270px;height:fit-content;padding:20px;box-shadow:0 4px 16px #00000008}.filter-panel-header{border-bottom:1px solid #f0f2f5;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:14px;display:flex}.filter-panel-header h2{color:#111827;margin:0;font-size:18px;font-weight:800}.clear-all-btn{color:var(--gold-700,#9a7b1c);cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:700;transition:opacity .15s}.clear-all-btn:hover{text-decoration:underline}.filter-section{border-bottom:1px solid #f0f2f5;flex-direction:column;gap:10px;margin-bottom:16px;padding-bottom:16px;display:flex}.filter-section.border-none{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter-section h3{color:#111827;letter-spacing:.2px;margin:0 0 4px;font-size:13px;font-weight:700}.checkbox-label{color:#4b5563;cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;font-size:13px;transition:color .15s;display:flex}.checkbox-label input[type=checkbox]{width:16px;height:16px;accent-color:var(--gold-500,#d4af37);cursor:pointer;border-radius:4px;margin:0}.checkbox-label:hover{color:#111827}.checkbox-label.active span{color:#111827;font-weight:600}.price-slider-wrapper{flex-direction:column;gap:10px;margin-top:6px;display:flex}.red-range-input{background:var(--gold-100,#fef3c7);width:100%;height:4px;accent-color:var(--gold-500,#d4af37);cursor:pointer;border-radius:4px;outline:none}.price-range-labels{color:#6b7280;justify-content:space-between;font-size:12px;font-weight:600;display:flex}.current-max-price{color:#111827;font-weight:700}@media (width<=900px){.filter-panel{width:100%}}.sort-control-wrapper{justify-content:flex-end;align-items:center;gap:10px;margin-bottom:16px;display:flex}.sort-label{color:#6b7280;font-size:13px;font-weight:600}.sort-select-container{align-items:center;display:inline-flex;position:relative}.sort-select{appearance:none;color:#111827;cursor:pointer;background:#fff;border:1px solid #eaedf0;border-radius:8px;padding:8px 36px 8px 14px;font-size:13px;font-weight:600;transition:all .15s;box-shadow:0 2px 6px #00000005}.sort-select:hover{border-color:#d1d5db}.sort-select:focus{border-color:var(--gold-500,#d4af37);outline:none;box-shadow:0 0 0 3px #d4af372e}.sort-chevron{color:#6b7280;pointer-events:none;width:14px;height:14px;position:absolute;right:12px}.boarding-modal-backdrop{z-index:1200;background-color:#0f172aa6;justify-content:center;align-items:center;padding:16px;animation:.2s cubic-bezier(.16,1,.3,1) forwards modalFadeIn;display:flex;position:fixed;inset:0}@keyframes modalFadeIn{0%{opacity:0}to{opacity:1}}.boarding-modal-sheet{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:560px;max-height:calc(100vh - 40px);animation:.25s cubic-bezier(.16,1,.3,1) forwards modalPopIn;display:flex;overflow:hidden;box-shadow:0 24px 50px -12px #0f172a52,0 0 0 1px #e2e8f0cc}@keyframes modalPopIn{0%{opacity:0;transform:scale(.96)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.boarding-modal-grab-bar{display:none}.boarding-modal-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px 14px;display:flex}.header-info-group{flex-direction:column;gap:3px;display:flex}.boarding-modal-tag{color:var(--gold-700,#9a7b1c);text-transform:uppercase;letter-spacing:.4px;align-items:center;gap:5px;font-size:12px;font-weight:700;display:inline-flex}.boarding-modal-headline{color:#0f172a;margin:0;font-size:18px;font-weight:800;line-height:1.25}.boarding-modal-close-icon{color:#64748b;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;transition:all .15s;display:flex}.boarding-modal-close-icon:hover{color:#0f172a;background:#e2e8f0}.boarding-modal-body{flex-direction:column;gap:16px;max-height:calc(85vh - 140px);padding:16px 22px;display:flex;overflow-y:auto}.boarding-points-list-container{flex-direction:column;gap:8px;display:flex}.points-list-label{color:#64748b;text-transform:uppercase;letter-spacing:.3px;font-size:12px;font-weight:700}.boarding-points-cards-list{flex-direction:column;gap:7px;max-height:190px;padding-right:4px;display:flex;overflow-y:auto}.boarding-points-cards-list::-webkit-scrollbar{width:5px}.boarding-points-cards-list::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}.boarding-point-card{cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;align-items:center;gap:12px;padding:10px 14px;transition:all .18s;display:flex}.boarding-point-card:hover{border-color:var(--gold-300,#fcd34d);background:var(--gold-50,#fffdf5)}.boarding-point-card.selected{border-color:var(--gold-500,#d4af37);background:var(--gold-50,#fffdf5);box-shadow:0 1px 2px #0f172a0f}.point-card-radio{flex-shrink:0}.radio-outer{border:2px solid #cbd5e1;border-radius:50%;justify-content:center;align-items:center;width:18px;height:18px;transition:all .15s;display:flex}.radio-outer.checked{border-color:var(--gold-500,#d4af37);background:#fff}.radio-inner{background:var(--gold-500,#d4af37);border-radius:50%;width:9px;height:9px}.point-card-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.point-name-row{justify-content:space-between;align-items:center;gap:8px;display:flex}.point-title{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:700;overflow:hidden}.point-time-badge{color:var(--gold-800,#854d0e);background:var(--gold-100,#fef3c7);white-space:nowrap;border-radius:6px;padding:1px 7px;font-size:11px;font-weight:700}.point-area-tag{color:#475569;font-size:11.5px;font-weight:600}.point-landmark-snippet{color:#64748b;white-space:nowrap;text-overflow:ellipsis;font-size:11.5px;overflow:hidden}.selected-badge{color:var(--gold-800,#854d0e);border:1px solid var(--gold-300,#fcd34d);white-space:nowrap;background:#fff;border-radius:6px;padding:2px 7px;font-size:10.5px;font-weight:700}.boarding-active-map-section{flex-direction:column;gap:8px;padding-top:4px;display:flex}.map-header-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.map-title-label{color:#475569;font-size:12px}.map-title-label strong{color:#0f172a}.directions-link-btn{color:var(--gold-700,#9a7b1c);background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:12px;font-weight:700;text-decoration:none;transition:all .15s;display:inline-flex}.directions-link-btn:hover{background:var(--gold-100,#fef3c7);color:var(--gold-800,#854d0e)}.boarding-map-wrapper{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;width:100%;height:170px;position:relative;overflow:hidden}.boarding-map-frame{border:none;width:100%;height:100%;display:block}.boarding-marker-badge{color:#0f172a;pointer-events:none;white-space:nowrap;text-overflow:ellipsis;background:#fffffff2;border:1px solid #e2e8f0;border-radius:20px;align-items:center;gap:6px;max-width:calc(100% - 16px);padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex;position:absolute;top:8px;left:8px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.pulse-dot{background-color:var(--gold-500,#d4af37);border-radius:50%;flex-shrink:0;width:8px;height:8px;box-shadow:0 0 #d4af37b3}.boarding-landmark-box{border:1px solid #e2e8f0;border-left:3.5px solid var(--gold-500,#d4af37);background:#f8fafc;border-radius:10px;flex-direction:column;gap:4px;padding:8px 12px;display:flex}.landmark-item{align-items:baseline;gap:6px;font-size:12.5px;display:flex}.landmark-label{color:#64748b;text-transform:uppercase;letter-spacing:.2px;flex-shrink:0;min-width:65px;font-size:11px;font-weight:700}.landmark-value{color:#0f172a;font-weight:700;line-height:1.3}.address-item{font-size:12px}.address-value{color:#475569;line-height:1.3}.boarding-modal-actions{background:#fff;border-top:1px solid #f1f5f9;align-items:center;gap:10px;padding:14px 22px 18px;display:flex}.boarding-btn-confirm{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;border:none;border-radius:10px;flex:1;justify-content:center;align-items:center;padding:11px 18px;font-size:14px;font-weight:800;transition:all .2s;display:inline-flex;overflow:hidden;box-shadow:0 2px 8px #0f172a14}.boarding-btn-confirm:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%));box-shadow:0 2px 8px #0f172a14}.boarding-btn-close{color:#334155;cursor:pointer;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;padding:11px 18px;font-size:14px;font-weight:600;transition:all .15s}.boarding-btn-close:hover{color:#0f172a;background:#e2e8f0}@media (width<=640px){.boarding-modal-backdrop{align-items:flex-end;padding:0}.boarding-modal-sheet{border-radius:22px 22px 0 0;max-width:100%;animation:.26s cubic-bezier(.16,1,.3,1) forwards sheetSlideUp}@keyframes sheetSlideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.boarding-modal-grab-bar{background:#cbd5e1;border-radius:3px;width:40px;height:4px;margin:10px auto 0;display:block}.boarding-modal-header{padding:12px 16px 10px}.boarding-modal-headline{font-size:16px}.boarding-modal-body{gap:12px;padding:12px 16px}.boarding-points-cards-list{max-height:150px}.boarding-map-wrapper{height:140px}.boarding-modal-actions{padding:12px 16px 18px}}.bus-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;margin-bottom:14px;padding:20px 24px;transition:transform .15s,box-shadow .15s,border-color .15s;position:relative;box-shadow:0 2px 12px #0000000a}.bus-card:hover{border-color:#cbd5e1;box-shadow:0 8px 24px #00000014}.bus-card-content{justify-content:space-between;align-items:center;gap:24px;display:flex;position:relative}.bus-operator-section{flex-direction:column;flex-shrink:0;gap:4px;width:180px;display:flex}.operator-name{color:#0f172a;margin:0;font-size:17.5px;font-weight:800;line-height:1.25}.bus-type-text{color:#64748b;font-size:12.5px;font-weight:500}.rating-badge{background:#fef3c7;border:1px solid #fde68a;border-radius:6px;align-items:center;gap:4px;width:fit-content;margin-top:6px;padding:2px 8px;display:inline-flex}.star-icon{color:#d97706;font-size:12px}.rating-score{color:#92400e;font-size:12.5px;font-weight:700}.reviews-count{color:#b45309;font-size:11px}.bus-middle-section{flex-direction:column;flex:1;gap:12px;min-width:0;display:flex}.bus-timing-row{justify-content:space-between;align-items:center;gap:16px;display:flex}.time-block.arrival{align-items:flex-end}.time-val{color:#0f172a;font-feature-settings:"tnum";font-size:19px;font-weight:800;line-height:1.1}.city-name{color:#64748b;margin-top:2px;font-size:13px;font-weight:600}.duration-line-container{flex-direction:column;flex:1;align-items:center;gap:4px;max-width:140px;display:flex}.duration-label{color:#94a3b8;letter-spacing:.2px;font-size:11.5px;font-weight:600}.line-with-dots{align-items:center;width:100%;display:flex;position:relative}.line-with-dots .line{background:#cbd5e1;flex:1;height:2px}.line-with-dots .dot{background:#94a3b8;border-radius:50%;width:6px;height:6px}.bus-boarding-compact-row{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:6px 12px;transition:all .15s;display:flex}.bus-boarding-compact-row:hover{background:#f1f5f9;border-color:#94a3b8}.boarding-compact-info{flex:1;align-items:center;gap:6px;min-width:0;display:flex}.compact-pin{flex-shrink:0;font-size:13px}.compact-label{color:#475569;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.points-count{color:#0f172a;font-weight:700}.selected-point-name{color:#854d0e;font-weight:700}.compact-select-point-btn{color:#854d0e;cursor:pointer;white-space:nowrap;background:#fffdf5;border:1px solid #d4af3780;border-radius:6px;flex-shrink:0;padding:4px 10px;font-size:11.5px;font-weight:700;transition:all .15s;box-shadow:0 1px 2px #0f172a0f}.compact-select-point-btn:hover{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-color:#d4af37;box-shadow:0 2px 8px #0f172a14}.amenities-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.amenity-item{color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;align-items:center;gap:4px;padding:3px 8px;font-size:11.5px;font-weight:500;display:inline-flex}.amenity-svg{color:#64748b;width:13px;height:13px}.bus-price-section{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:8px;display:flex}.price-container{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.price-label{color:#64748b;letter-spacing:.2px;font-size:11px;font-weight:600}.price-amount{font-feature-settings:"tnum";align-items:baseline;line-height:1;display:flex}.price-currency{color:#b8860b;margin-right:2px;font-size:16px;font-weight:800}.price-val{color:#0f172a;font-size:26px;font-weight:900;font-family:var(--font-heading);letter-spacing:-.4px}.compact-select-seats-btn{color:#0f172a;cursor:pointer;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;border-radius:10px;justify-content:center;align-items:center;gap:8px;width:150px;padding:11px 20px;font-size:14px;font-weight:800;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:inline-flex;box-shadow:0 2px 8px #0f172a14}.compact-select-seats-btn:hover{background:linear-gradient(#d6ae33 0%,#c9a227 100%);box-shadow:0 2px 8px #0f172a14}.compact-select-seats-btn .arrow-icon{font-size:15px;line-height:1;transition:transform .15s}.compact-select-seats-btn:hover .arrow-icon{transform:translate(3px)}.live-bus-badge{color:#047857;white-space:nowrap;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:999px;align-items:center;gap:6px;width:fit-content;margin-top:6px;padding:2px 9px;font-size:11.5px;font-weight:700;display:inline-flex}.live-bus-dot{background:#10b981;border-radius:50%;width:6px;height:6px}.seats-left-text{color:#64748b;font-size:12px;font-weight:600}.seats-left-text.few{color:#c2410c}.amenities-row:empty{display:none}@media (width<=960px){.bus-card-content{flex-wrap:wrap;gap:14px}.bus-operator-section{flex-direction:row;justify-content:space-between;align-items:center;width:100%}.bus-middle-section{width:100%}.bus-price-section{border-top:1px solid #f1f5f9;flex-direction:row;justify-content:space-between;align-items:center;width:100%;padding-top:12px}}@media (width<=640px){.bus-card{border-radius:14px;margin-bottom:12px;padding:14px}.bus-card-content{gap:10px}.bus-operator-section .operator-name{font-size:15.5px}.bus-operator-section .bus-type-text{font-size:11.5px}.bus-operator-section{flex-wrap:wrap;justify-content:flex-start;gap:4px 10px}.bus-operator-section .operator-name{flex:100%}.rating-badge,.live-bus-badge{margin-top:0;margin-left:auto}.rating-badge{padding:2px 6px}.price-container{align-items:flex-start}.time-val{font-size:17px}.city-name{font-size:12px}.duration-line-container{max-width:100px}.duration-label{font-size:10.5px}.amenities-row{gap:6px}.amenity-item{padding:2px 6px;font-size:11px}.price-val{font-size:21px}.compact-select-seats-btn{white-space:nowrap;width:auto;min-width:132px;height:44px;padding:0 12px;font-size:13px}.bus-boarding-compact-row{flex-wrap:wrap;gap:6px;padding:5px 8px}.compact-label{font-size:11px}.compact-select-point-btn{padding:3px 8px;font-size:10.5px}}.bus-list{flex-direction:column;gap:14px;margin-top:24px;display:flex}.bus-list-empty{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:10px;margin-top:24px;padding:48px 24px}.bus-list-empty h2{color:#171717;margin:0;font-size:20px}.bus-list-empty p{color:#6b7280;margin:8px 0 0;font-size:14px}.search-results-page{min-height:calc(100vh - 68px);padding:24px 0 60px}.search-results-container{width:min(1400px,100% - 40px);margin:0 auto}.desktop-results-header-bar{justify-content:space-between;align-items:flex-end;margin-bottom:16px;display:flex}.header-text-block .page-title{color:#111827;letter-spacing:-.8px;margin:0;font-size:30px;font-weight:900;line-height:1.1}.results-count-text{color:#6b7280;margin:6px 0 0;font-size:14px;font-weight:500}.desktop-search-bar-wrapper{margin-bottom:24px}.mobile-route-summary-bar,.mobile-search-dropdown-wrapper,.mobile-quick-chips-bar,.filter-mobile-backdrop,.filter-mobile-drawer{display:none}.search-results-layout{align-items:flex-start;gap:28px;display:flex}.desktop-filter-sidebar{flex-shrink:0;width:270px}.results-content-area{flex:1;min-width:0}.desktop-sort-wrapper{margin-bottom:16px}.no-buses-card{text-align:center;background:#fff;border:1px solid #eaedf0;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:60px 24px;display:flex;box-shadow:0 4px 16px #00000008}.no-buses-icon{font-size:48px;line-height:1}.no-buses-card h2{color:#111827;margin:0;font-size:22px;font-weight:800}.no-buses-card p{color:#6b7280;max-width:380px;margin:0 0 12px;font-size:14px}@media (width<=860px){.search-results-page{padding:12px 0 40px}.search-results-container{width:calc(100% - 24px)}.desktop-results-header-bar,.desktop-search-bar-wrapper,.desktop-filter-sidebar,.desktop-sort-wrapper{display:none}.mobile-route-summary-bar{z-index:40;background:#fff;border:1px solid #e2e8f0;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding:10px 14px;display:flex;position:sticky;top:66px;box-shadow:0 2px 8px #0000000a}.mobile-back-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:16px;font-weight:700;display:flex}.mobile-route-info{cursor:pointer;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.mobile-cities{color:#0f172a;align-items:center;gap:6px;font-size:14.5px;line-height:1.2;display:flex}.mobile-cities strong{white-space:nowrap;text-overflow:ellipsis;font-weight:800;overflow:hidden}.mobile-cities .route-arrow{color:#d4af37;flex-shrink:0;font-size:13px}.mobile-date-count{color:#64748b;align-items:center;gap:5px;font-size:11.5px;font-weight:500;display:flex}.dot-sep{color:#cbd5e1}.mobile-modify-toggle-btn{color:#854d0e;cursor:pointer;white-space:nowrap;background:#fffdf5;border:1.5px solid #d4af3773;border-radius:20px;flex-shrink:0;padding:5px 12px;font-size:12px;font-weight:700;transition:all .15s}.mobile-modify-toggle-btn.open{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-color:#d4af37}.mobile-search-dropdown-wrapper{margin-bottom:12px;animation:.22s ease-out slideDownSearch;display:block}@keyframes slideDownSearch{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.mobile-quick-chips-bar{scrollbar-width:none;-webkit-overflow-scrolling:touch;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:8px;display:flex;overflow-x:auto}.mobile-quick-chips-bar::-webkit-scrollbar{display:none}.quick-chip{color:#334155;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:20px;flex-shrink:0;align-items:center;gap:4px;padding:6px 12px;font-size:12.5px;font-weight:600;transition:all .15s;display:inline-flex}.quick-chip:hover{border-color:#94a3b8}.quick-chip.active{color:#854d0e;background:#fef8e2;border-color:#d4af37;font-weight:700}.quick-chip.filter-main-chip{color:#fff;background:#0f172a;border-color:#0f172a}.quick-chip.filter-main-chip.active{color:#0f172a;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border-color:#d4af37}.quick-chip.sort-chip{color:#0f172a;background:#f8fafc;border-color:#e2e8f0;font-weight:700}.filter-mobile-backdrop{z-index:1000;background:#00000080;animation:.2s ease-out fadeInBackdrop;display:block;position:fixed;inset:0}@keyframes fadeInBackdrop{0%{opacity:0}to{opacity:1}}.filter-mobile-drawer{z-index:1001;background:#fff;border-radius:22px 22px 0 0;flex-direction:column;max-height:82vh;animation:.25s cubic-bezier(.16,1,.3,1) slideUpDrawer;display:flex;position:fixed;bottom:0;left:0;right:0;overflow:hidden;box-shadow:0 -8px 32px #0003}@keyframes slideUpDrawer{0%{transform:translateY(100%)}to{transform:translateY(0)}}.drawer-grab-bar{background:#cbd5e1;border-radius:2px;width:38px;height:4px;margin:8px auto 4px}.drawer-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.drawer-header h3{color:#0f172a;margin:0;font-size:17px;font-weight:800}.drawer-close-btn{color:#475569;cursor:pointer;background:#f1f5f9;border:none;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:flex}.drawer-body{flex:1;padding:14px 18px;overflow-y:auto}.drawer-body .filter-panel{box-shadow:none;border:none;width:100%;padding:0}.drawer-footer{background:#fff;border-top:1px solid #f1f5f9;padding:12px 18px}.drawer-apply-btn{color:#0f172a;cursor:pointer;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;border-radius:10px;width:100%;height:48px;font-size:15px;font-weight:800;box-shadow:0 2px 8px #0f172a14}.search-results-layout{flex-direction:column;gap:12px}.results-content-area{width:100%}}.booking-stepper-container{justify-content:center;margin-bottom:24px;display:flex}.booking-stepper{background:0 0;align-items:center;gap:8px;display:flex}.stepper-item-wrapper{align-items:center;gap:8px;display:flex}.stepper-item{-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.step-circle{color:#6b7280;background:#f0f2f5;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:14px;font-weight:700;transition:all .2s;display:flex}.stepper-item.active .step-circle{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;box-shadow:0 2px 8px #0f172a14}.stepper-item.completed .step-circle{color:#fff;background:#10b981}.step-label{color:#6b7280;white-space:nowrap;font-size:14px;font-weight:600}.stepper-item.active .step-label{color:var(--gold-700,#9a7b1c);font-weight:700}.stepper-line{background:#e5e7eb;border-radius:2px;width:48px;height:2px}@media (width<=800px){.step-label{display:none}.stepper-line{width:24px}.stepper-item.active .step-label{font-size:12px;display:inline-block}}.trip-summary-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px;padding:16px 24px;display:flex;box-shadow:0 4px 16px #00000008}.trip-bus-identity{align-items:center;gap:14px;min-width:200px;display:flex}.bus-name-block{flex-direction:column;display:flex}.trip-operator-name{color:#0f172a;margin:0;font-size:17.5px;font-weight:800;line-height:1.2}.trip-bus-type{color:#64748b;margin-top:2px;font-size:12.5px;font-weight:500}.trip-route-timeline{flex:1;justify-content:center;align-items:center;gap:20px;max-width:360px;display:flex}.trip-time-block{flex-direction:column;display:flex}.trip-time-block.arrival{align-items:flex-end}.time-text{color:#0f172a;font-feature-settings:"tnum";font-size:18px;font-weight:800;line-height:1.1}.city-text{color:#64748b;margin-top:2px;font-size:12.5px;font-weight:600}.trip-duration-line{flex-direction:column;flex:1;align-items:center;gap:4px;max-width:120px;display:flex}.duration-text{color:#94a3b8;font-size:11.5px;font-weight:600}.timeline-bar{align-items:center;width:100%;display:flex;position:relative}.timeline-fill{background:#cbd5e1;flex:1;height:2px}.timeline-dot{background:#6b7280;border-radius:50%;width:6px;height:6px}.trip-date-block{color:#334155;white-space:nowrap;border-left:1px solid #e5e7eb;border-right:1px solid #e5e7eb;padding:0 16px;font-size:14px;font-weight:700}.trip-price-block{flex-direction:column;align-items:flex-end;display:flex}.seat-price-val{color:var(--gold-700,#9a7b1c);font-size:22px;font-weight:900;line-height:1}.per-seat-lbl{color:#94a3b8;margin-top:2px;font-size:11.5px;font-weight:500}@media (width<=900px){.trip-summary-card{flex-wrap:wrap;gap:14px;padding:14px 18px}.trip-date-block{border:none;padding:0}}@media (width<=640px){.trip-summary-card{border-radius:14px;flex-direction:column;align-items:stretch;gap:12px;padding:14px}.trip-bus-identity{justify-content:space-between;min-width:0}.trip-route-timeline{justify-content:space-between;max-width:100%}.trip-date-block{border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;padding-top:8px;display:flex}.trip-price-block{border-top:1px solid #f1f5f9;flex-direction:row;justify-content:space-between;align-items:baseline;padding-top:8px}}.seat-legend-bar{background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;width:100%;margin-top:16px;padding:10px 18px;display:flex}.legend-item{align-items:center;gap:8px;display:flex}.legend-sample{border-radius:4px;flex-shrink:0;width:18px;height:18px}.legend-sample.available{background:#fff;border:1.5px solid #d1d5db}.legend-sample.selected{background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:1px solid #854d0e}.legend-sample.booked-male{background:#e0f2fe;border:1px solid #7dd3fc}.legend-sample.booked-female{background:#fce7f3;border:1px solid #f472b6}.legend-sample.blocked{background:#f1f5f9;border:1px solid #cbd5e1}.legend-text{color:#475569;font-size:12.5px;font-weight:600}.seat-layout-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;flex-direction:column;align-items:center;padding:24px;display:flex;box-shadow:0 4px 16px #00000008}.gender-warning-banner{color:#1e40af;background:#eff6ff;border:1px solid #93c5fd;border-radius:8px;justify-content:space-between;align-items:center;width:100%;margin-bottom:16px;padding:10px 14px;font-size:12.5px;font-weight:600;line-height:1.4;animation:.2s ease-in fadeIn;display:flex}.dismiss-warning-btn{color:#1e40af;cursor:pointer;background:0 0;border:none;margin-left:10px;padding:0 4px;font-size:18px;font-weight:700}.overall-driver-bar{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-bottom:16px;font-size:13px;font-weight:600;display:flex}.driver-steer-icon{font-size:14px;font-weight:800}.decks-side-by-side-row{justify-content:center;align-items:flex-start;gap:32px;width:100%;display:flex}.bus-deck-column{flex-direction:column;flex:1;align-items:center;min-width:0;max-width:380px;display:flex}.deck-title-lbl{color:#1e293b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:13.5px;font-weight:700}.bus-body-frame{background:#fff;border:2px solid #cbd5e1;border-radius:28px 28px 14px 14px;width:100%;padding:20px 16px;position:relative}.bus-interior-grid{flex-direction:column;gap:10px;display:flex;position:relative}.bus-interior-row{justify-content:space-between;align-items:center;display:flex;position:relative}.berth-group{align-items:center;gap:8px;display:flex}.aisle-gap{flex-shrink:0;width:28px}.seat-element{cursor:pointer;-webkit-user-select:none;user-select:none;background:#fff;border:1.5px solid #cbd5e1;border-radius:8px;justify-content:center;align-items:center;transition:all .15s;display:inline-flex}.seat-element.sleeper-berth{width:58px;height:38px}.seat-element.seater-berth,.seat-element.semi_sleeper-berth{width:42px;height:42px}.seat-code-label{color:#334155;font-size:13px;font-weight:700;line-height:1}.seat-element.available:hover{background:#fef8e2;border-color:#d4af37}.seat-element.available:hover .seat-code-label{color:#854d0e}.seat-element.selected{box-shadow:0 2px 8px #0f172a14;background:linear-gradient(#e0bb45 0%,#d4af37 100%)!important;border-color:#854d0e!important}.seat-element.selected .seat-code-label{font-weight:800;color:#0f172a!important}.seat-element.booked-male{cursor:not-allowed;background:#e0f2fe;border-color:#7dd3fc}.seat-element.booked-male .seat-code-label{color:#0284c7}.seat-element.booked-female{cursor:not-allowed;background:#fce7f3;border-color:#f472b6}.seat-element.booked-female .seat-code-label{color:#db2777}.seat-element.blocked{cursor:not-allowed;background:#f1f5f9;border-color:#cbd5e1}.seat-element.blocked .seat-code-label{color:#94a3b8;font-size:15px}.overall-exit-bar{color:#94a3b8;letter-spacing:.5px;justify-content:center;margin-top:18px;margin-bottom:20px;font-size:11px;font-weight:700;display:flex}.mobile-deck-switcher-tabs{display:none}@media (width<=900px){.decks-side-by-side-row{flex-direction:column;align-items:center;gap:24px}.bus-deck-column{width:100%;max-width:400px}}@media (width<=768px){.mobile-deck-switcher-tabs{background:#f1f5f9;border-radius:10px;gap:4px;width:100%;max-width:320px;margin-bottom:16px;padding:4px;display:flex}.deck-tab-btn{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;height:38px;font-size:13.5px;font-weight:700;transition:all .15s}.deck-tab-btn.active{color:#854d0e;background:#fff;box-shadow:0 1px 2px #0f172a0f}.decks-side-by-side-row.show-lower-on-mobile .bus-deck-column:nth-child(2),.decks-side-by-side-row.show-upper-on-mobile .bus-deck-column:first-child{display:none}.seat-layout-card,.bus-body-frame{padding:16px 12px}.seat-element.sleeper-berth{width:54px;height:38px}.seat-element.seater-berth{width:38px;height:38px}.seat-code-label{font-size:12px}}@media (width<=480px){.seat-layout-card,.bus-body-frame{padding:14px 8px}.seat-element.sleeper-berth{width:50px;height:36px}.seat-element.seater-berth{width:36px;height:36px}.seat-code-label{font-size:11.5px}.aisle-gap{width:20px}}.live-seat-card{--live-cell:46px;--live-gap:8px;align-items:stretch}.live-map-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.live-map-title-block{flex-direction:column;gap:2px;min-width:0;display:flex}.live-map-title{color:#111827;margin:0;font-size:18px;font-weight:800}.live-map-sub{color:#64748b;font-size:13px;font-weight:500}.live-chart-pill{color:#854d0e;white-space:nowrap;background:#fffdf5;border:1.5px solid #d4af3780;border-radius:999px;align-items:center;gap:7px;padding:5px 12px;font-size:12px;font-weight:800;display:inline-flex}.live-dot{background:#d4af37;border-radius:50%;width:8px;height:8px;box-shadow:0 0 #d4af378c}.live-single-deck{justify-content:center;width:100%;display:flex}.live-decks-row{gap:28px}.live-seat-card .bus-deck-column{flex:0 auto;max-width:100%}.live-bus-frame{-webkit-overflow-scrolling:touch;width:auto;max-width:100%;padding:14px 16px 18px;overflow-x:auto}.live-front-row{border-bottom:1.5px dashed #e2e8f0;justify-content:flex-end;margin-bottom:14px;padding-bottom:12px;display:flex}.live-steering,.live-front-spacer{width:30px;height:30px}.live-steering{color:#94a3b8;display:inline-flex}.live-steering svg{width:100%;height:100%}.live-seat-grid{gap:var(--live-gap);justify-content:center;display:grid}.seat-element.live-seat{flex-direction:column;justify-content:center;align-items:center;gap:2px;width:100%;min-width:0;height:100%;padding:0;font-family:inherit;display:flex;position:relative}.seat-element.live-seat:focus-visible{outline-offset:2px;outline:2px solid #2563eb}.seat-element.live-seater:after,.seat-element.live-semi_sleeper:after{content:"";opacity:.22;background:currentColor;border-radius:2px;height:3px;position:absolute;bottom:4px;left:7px;right:7px}.seat-element.live-seat{color:#64748b}.live-pillow{opacity:.35;border:1.5px solid;border-radius:4px;width:56%;height:7px;position:absolute;top:6px;left:50%;transform:translate(-50%)}.live-seat-fare{color:#64748b;font-size:10.5px;font-weight:600;line-height:1}.seat-element.live-seat.selected{box-shadow:0 2px 8px #0f172a14;color:#0f172a!important;background:linear-gradient(#e0bb45 0%,#d4af37 100%)!important;border-color:#854d0e!important}.seat-element.live-seat.selected .live-seat-fare{font-weight:800;color:#0f172a!important}.seat-element.live-seat.available:hover .live-seat-fare{color:#854d0e}.seat-element.live-booked{cursor:not-allowed;color:#b6c0cc;background:#eef1f5;border-color:#dde3ea}.seat-element.live-booked .seat-code-label{color:#a3aebb;text-decoration:line-through}.seat-element.live-ladies{background:#fff7fb;border-color:#f472b6}.seat-element.live-ladies .seat-code-label{color:#be185d}.seat-element.live-gents{background:#f5f9ff;border-color:#60a5fa}.seat-element.live-gents .seat-code-label{color:#1d4ed8}.seat-element.live-seat.booked-male,.seat-element.live-seat.booked-female{color:#0000}.live-legend{margin-top:20px}.legend-sample.live-booked{background:#eef1f5;border:1px solid #dde3ea}.legend-sample.live-ladies{background:#fff7fb;border:1.5px solid #f472b6}.legend-sample.live-gents{background:#f5f9ff;border:1.5px solid #60a5fa}@media (width<=768px){.live-seat-card{--live-cell:44px}.live-seat-card .mobile-deck-switcher-tabs{align-self:center}.live-map-title{font-size:16.5px}}@media (width<=400px){.live-seat-card{--live-gap:7px}.live-bus-frame{padding:12px 10px 14px}}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}.selection-summary-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;padding:24px;position:sticky;top:24px;box-shadow:0 4px 16px #00000008}.selection-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.selection-title{color:#111827;margin:0;font-size:20px;font-weight:800}.clear-selection-btn{color:#854d0e;cursor:pointer;background:0 0;border:none;padding:0;font-size:13px;font-weight:700}.clear-selection-btn:hover{color:#b8860b;text-decoration:underline}.selection-body{flex-direction:column;display:flex}.selection-row{justify-content:space-between;align-items:flex-start;margin-bottom:16px;display:flex}.row-label{color:#6b7280;font-size:14px;font-weight:500}.seat-value-block{flex-direction:column;align-items:flex-end;display:flex}.seat-numbers{color:#111827;font-size:18px;font-weight:800}.deck-sublabel{color:#6b7280;margin-top:2px;font-size:12px;font-weight:500}.price-val{color:#111827;font-size:16px;font-weight:700}.selection-divider{background:#f0f2f5;height:1px;margin:8px 0 20px}.total-amount-row{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.total-price-val{color:#0f172a;font-size:28px;font-weight:900;font-family:var(--font-heading)}.proceed-btn{color:#0f172a;cursor:pointer;background:linear-gradient(#e0bb45 0%,#d4af37 100%);border:none;border-radius:12px;justify-content:center;align-items:center;gap:10px;width:100%;margin-bottom:20px;padding:14px 20px;font-size:15px;font-weight:800;transition:all .25s cubic-bezier(.34,1.56,.64,1);display:flex;box-shadow:0 2px 8px #0f172a14}.proceed-btn:hover:not(:disabled){background:linear-gradient(#d6ae33 0%,#c9a227 100%);box-shadow:0 2px 8px #0f172a14}.proceed-btn:disabled{color:#9ca3af;box-shadow:none;cursor:not-allowed;background:#f3f4f6}.selection-tip-box{background:#f9fafb;border:1px solid #f3f4f6;border-radius:10px;align-items:center;gap:10px;padding:12px 14px;display:flex}.tip-icon{font-size:16px}.tip-text{color:#4b5563;font-size:12px;font-weight:500;line-height:1.4}.journey-points-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;flex-direction:column;gap:14px;padding:20px 24px;display:flex;box-shadow:0 4px 16px #00000008}.journey-points-title{color:#111827;margin:0;font-size:16px;font-weight:800}.journey-point-field{flex-direction:column;gap:6px;min-width:0;display:flex}.journey-point-field label{color:#6b7280;font-size:12.5px;font-weight:600}.journey-select-wrap{position:relative}.journey-select-wrap select{color:#111827;appearance:none;cursor:pointer;text-overflow:ellipsis;background:#fff;border:1.5px solid #d8dee6;border-radius:10px;width:100%;height:46px;padding:0 38px 0 14px;font-size:14px;font-weight:600;transition:border-color .15s,box-shadow .15s}.journey-select-wrap select:hover{border-color:#b8c2cf}.journey-select-wrap select:focus-visible{border-color:var(--gold-500,#d4af37);outline:none;box-shadow:0 0 0 3px #d4af3733}.journey-select-caret{color:#6b7280;pointer-events:none;font-size:13px;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.journey-point-hint{color:#64748b;font-size:12px}@media (width>=600px) and (width<=1024px){.journey-points-card{grid-template-columns:1fr 1fr;column-gap:16px;display:grid}.journey-points-title{grid-column:1/-1}}@media (width<=640px){.journey-points-card{padding:16px}}.seat-selection-page{min-height:calc(100vh - 70px);padding:24px 20px 48px}.seat-selection-container{max-width:1240px;margin:0 auto}.back-button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;margin-bottom:20px;padding:8px 16px;font-size:14px;font-weight:600;transition:all .2s;display:inline-flex}.back-button:hover{color:#0f172a;background-color:#f1f5f9}.not-found-card{text-align:center;background:#fff;border:1px solid #eaedf0;border-radius:16px;padding:40px;box-shadow:0 4px 16px #00000008}.not-found-card h1{color:#1e293b;margin-bottom:8px;font-size:22px}.not-found-card p{color:#64748b;font-size:14px}.seat-selection-grid{align-items:flex-start;gap:28px;margin-top:24px;display:flex}.seat-map-column{flex:1;min-width:0}.selection-card-column{flex-direction:column;flex-shrink:0;gap:16px;width:340px;display:flex;position:sticky;top:90px}@media (width<=1024px){.seat-selection-grid{flex-direction:column;gap:24px}.selection-card-column{width:100%;position:static}}.mobile-seat-sticky-bar{display:none}@media (width<=900px){.seat-selection-page{padding-bottom:90px}.mobile-seat-sticky-bar{z-index:99;background:#fff;border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;padding:12px 20px;animation:.25s ease-out slideUpBottomBar;display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 20px #0000001a}@keyframes slideUpBottomBar{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-sticky-left{flex-direction:column;gap:2px;display:flex}.mobile-seat-count-label{color:#64748b;font-size:11.5px;font-weight:600}.mobile-seat-total-price{color:var(--gold-700,#9a7b1c);font-size:20px;font-weight:800}.mobile-sticky-continue-btn{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:10px;padding:10px 22px;font-size:14.5px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14}.mobile-sticky-continue-btn:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%));box-shadow:0 2px 8px #0f172a14}.mobile-sticky-continue-btn:disabled{color:#9ca3af;box-shadow:none;cursor:not-allowed;background:#e5e7eb}.mobile-sticky-left{min-width:0;margin-right:12px}.mobile-seat-count-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.mobile-sticky-continue-btn{flex-shrink:0}}@media (width<=640px){.seat-selection-page{padding:16px 12px 90px}}.traveller-details-page{min-height:calc(100vh - 72px);padding:28px 24px 56px}.traveller-details-container{max-width:1180px;margin:0 auto}.subtle-back-link{color:#475569;cursor:pointer;letter-spacing:-.1px;align-items:center;gap:6px;margin-bottom:14px;font-size:13.5px;font-weight:600;transition:color .15s;display:inline-flex;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:0!important}.traveller-heading-block{margin-bottom:24px}.traveller-details-grid{grid-template-columns:1fr 370px;align-items:start;gap:28px;display:grid}.traveller-forms-column{min-width:0}.trip-summary-column{position:sticky;top:90px}.passenger-cards-list{flex-direction:column;gap:20px;margin-bottom:20px;display:flex}.passenger-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px;box-shadow:0 2px 8px #0f172a08}.passenger-card-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;display:flex}.passenger-title{color:#0f172a;letter-spacing:-.2px;margin:0;font-size:16.5px;font-weight:700}.passenger-seat-badge{background:var(--gold-50,#fffdf5);color:var(--gold-800,#854d0e);border:1px solid var(--gold-200,#fde68a);letter-spacing:.2px;border-radius:6px;padding:4px 12px;font-size:12.5px;font-weight:700}.card-form-body{flex-direction:column;gap:8px;display:flex}.form-group{flex-direction:column;gap:4px;display:flex}.form-group.full-width{width:100%}.form-group label{color:#334155;letter-spacing:-.1px;font-size:13px;font-weight:600}.form-group input[type=text],.form-group input[type=number],.form-group input[type=email],.form-group input[type=tel]{color:#0f172a;box-sizing:border-box;background:#fff;border:1px solid #d9dee7;border-radius:8px;outline:none;width:100%;height:46px;padding:0 14px;font-size:14px;transition:all .15s}.form-group input:focus{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af3729}.input-error,.form-group input.input-error{background-color:#fffbeb!important;border-color:#f59e0b!important}.field-error-text{color:#d97706;margin-top:3px;font-size:12px;font-weight:600;display:block}.form-grid-row{grid-template-columns:.75fr 1.25fr;gap:18px;display:grid}.gender-segmented-control{box-sizing:border-box;background:#f1f5f9;border-radius:8px;gap:3px;height:46px;padding:3px;display:flex}.gender-tab-btn{color:#475569;cursor:pointer;border-radius:6px;flex:1;height:100%;font-size:13px;font-weight:600;transition:all .15s;background:0 0!important;border:1px solid #0000!important;outline:none!important}.gender-tab-btn.selected{font-weight:700;box-shadow:0 1px 2px #0f172a0f;border:1px solid var(--gold-500,#d4af37)!important;color:var(--gold-800,#854d0e)!important;background:#fff!important}.gender-tab-btn:hover:not(.selected){color:#0f172a}.gender-tab-btn:disabled{color:#cbd5e1;cursor:not-allowed}.contact-email-group{margin-top:16px}.contact-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px;box-shadow:0 2px 8px #0f172a08}.contact-card-title{color:#0f172a;letter-spacing:-.2px;margin:0 0 4px;font-size:16.5px;font-weight:700}.contact-card-subtext{color:#64748b;margin:0 0 18px;font-size:13px;font-weight:500}.mobile-prefix-input-wrapper{box-sizing:border-box;background:#fff;border:1px solid #d9dee7;border-radius:8px;align-items:center;width:100%;height:46px;padding:0 14px;transition:all .15s;display:flex}.mobile-prefix-input-wrapper:focus-within{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af3729}.country-prefix{color:#0f172a;font-size:14px;font-weight:700}.input-divider{background:#cbd5e1;flex-shrink:0;width:1px;height:20px;margin:0 12px}.mobile-prefix-input-wrapper input{flex:1;font-size:14px;height:100%!important;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:0!important}.sidebar-trip-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;padding:24px;display:flex;box-shadow:0 4px 20px -2px #0f172a0a}.summary-card-title{color:#0f172a;letter-spacing:-.3px;margin:0 0 18px;font-size:19px;font-weight:800}.summary-bus-header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px;display:flex}.bus-text-info{flex-direction:column;min-width:0;display:flex}.summary-operator-name{color:#0f172a;font-size:16px;font-weight:800;line-height:1.25}.summary-bus-type{color:#64748b;margin-top:2px;font-size:12.5px;font-weight:500}.summary-bus-thumb-box{background:#fff;border:1px solid #eaedf0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:80px;height:46px;padding:3px;display:flex;overflow:hidden}.summary-bus-img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.summary-timeline-row{border-top:1px solid #f1f5f9;border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;margin-bottom:16px;padding:14px 0;display:flex}.time-block{flex-direction:column;display:flex}.time-val{color:#0f172a;letter-spacing:-.2px;font-size:16.5px;font-weight:800}.city-lbl{color:#64748b;font-size:12.5px;font-weight:500}.duration-line-block{flex-direction:column;flex:1;align-items:center;gap:4px;max-width:110px;display:flex}.duration-lbl{color:#64748b;font-size:11.5px;font-weight:600}.line-dots-bar{align-items:center;width:100%;display:flex}.line-dot{background:#94a3b8;border-radius:50%;width:5px;height:5px}.line-fill{background:#cbd5e1;flex:1;height:1.5px}.summary-date-seats-row{justify-content:space-between;margin-bottom:16px;display:flex}.date-block,.seats-count-block{flex-direction:column;display:flex}.summary-points-block{border-top:1px dashed #e2e8f0;border-bottom:1px dashed #e2e8f0;flex-direction:column;gap:10px;margin-bottom:16px;padding:12px 0;display:flex}.summary-point-row{flex-direction:column;min-width:0;display:flex}.summary-point-row .meta-val{overflow-wrap:anywhere}.meta-lbl{color:#64748b;margin-bottom:2px;font-size:11.5px;font-weight:500}.meta-val{color:#0f172a;font-size:13.5px;font-weight:700}.selected-seats-highlight-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:4px;margin-bottom:18px;padding:12px 14px;display:flex}.box-lbl{color:#64748b;letter-spacing:.1px;font-size:11.5px;font-weight:600}.box-seats-list{color:#0f172a;letter-spacing:.4px;font-size:17px;font-weight:800}.summary-total-fare-row{justify-content:space-between;align-items:center;margin-bottom:18px;padding-top:4px;display:flex}.total-fare-lbl{color:#0f172a;font-size:15.5px;font-weight:700}.total-fare-val{color:var(--gold-700,#9a7b1c);letter-spacing:-.4px;font-size:26px;font-weight:900}.summary-error-text{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:14px;padding:8px 12px;font-size:12.5px;font-weight:600}.continue-review-cta{cursor:pointer;letter-spacing:.1px;border-radius:8px;justify-content:center;align-items:center;gap:8px;width:100%;height:48px;font-size:15px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%))!important;color:#1a1608!important;border:none!important;outline:none!important}.continue-review-cta:hover{box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))!important}.continue-review-cta:active{transform:translateY(1px)}.cta-arrow{font-size:16px;transition:transform .15s}.continue-review-cta:hover .cta-arrow{transform:translate(3px)}.seats-reserved-timer-badge{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:12px;font-weight:500;display:flex}.timer-counter{color:var(--gold-700,#9a7b1c);font-weight:700}@media (width<=900px){.traveller-details-grid{grid-template-columns:1fr;gap:24px}.trip-summary-column{position:static}}@media (width<=640px){.traveller-details-page{padding:16px 12px 36px}.form-grid-row{grid-template-columns:1fr;gap:14px}.passenger-card,.contact-info-card,.sidebar-trip-summary-card{padding:16px}.form-group input,.contact-input-wrapper input{min-height:46px;font-size:16px!important}.continue-review-cta{width:100%;min-height:48px;font-size:15px}}.rzp-overlay{z-index:9999;background:#090d16c7;justify-content:center;align-items:center;padding:16px;animation:.2s ease-out rzpFadeIn;display:flex;position:fixed;inset:0}@keyframes rzpFadeIn{0%{opacity:0}to{opacity:1}}.rzp-container{background:#fff;border-radius:16px;flex-direction:column;width:100%;max-width:620px;animation:.25s cubic-bezier(.16,1,.3,1) rzpSlideUp;display:flex;overflow:hidden;box-shadow:0 8px 24px #0f172a14}@keyframes rzpSlideUp{0%{opacity:0;transform:translateY(20px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.rzp-header{color:#fff;background:linear-gradient(135deg,#0c1322 0%,#172033 100%);border-bottom:2px solid #d4af37;padding:18px 22px}.rzp-brand-row{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.rzp-merchant-info{align-items:center;gap:10px;display:flex}.rzp-logo-badge{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;border-radius:8px;justify-content:center;align-items:center;width:34px;height:34px;display:flex;box-shadow:0 1px 2px #0f172a0f}.rzp-sparkle{color:#1a1608}.rzp-merchant-name{letter-spacing:-.2px;color:#fff;font-size:15px;font-weight:800;font-family:var(--font-heading,"Outfit", sans-serif);margin:0}.rzp-order-id{color:#94a3b8;letter-spacing:.3px;font-size:11.5px}.rzp-close-btn{color:#cbd5e1;cursor:pointer;background:#ffffff14;border:1px solid #ffffff1f;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;transition:all .15s;display:flex}.rzp-close-btn:hover{color:#fff;background:#fff3}.rzp-amount-row{justify-content:space-between;align-items:flex-end;display:flex}.rzp-amount-block{flex-direction:column;display:flex}.rzp-amount-label{color:#d4af37;letter-spacing:.8px;font-size:10.5px;font-weight:700}.rzp-amount-val{color:#fff;font-size:26px;font-weight:900;font-family:var(--font-heading,"Outfit", sans-serif);line-height:1.1}.rzp-currency{color:#fde68a;margin-right:2px;font-size:20px}.rzp-countdown-badge{color:#fde68a;background:#d4af3726;border:1px solid #d4af3759;border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:11.5px;font-weight:600;display:inline-flex}.rzp-main-layout{grid-template-columns:170px 1fr;min-height:340px;display:grid}.rzp-method-sidebar{background:#f8fafc;border-right:1px solid #e2e8f0;flex-direction:column;gap:6px;padding:12px 8px;display:flex}.rzp-tab-btn{color:#475569;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:11px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex;position:relative}.rzp-tab-btn:hover{color:#0f172a;background:#e2e8f0}.rzp-tab-btn.active{color:var(--gold-800,#854d0e);border-left:3px solid var(--gold-500,#d4af37);background:#fff;font-weight:700;box-shadow:0 2px 8px #0000000f}.rzp-popular-badge{background:var(--gold-100,#fef3c7);color:var(--gold-800,#854d0e);border-radius:4px;margin-left:auto;padding:2px 5px;font-size:9px;font-weight:800}.rzp-method-content{flex-direction:column;justify-content:space-between;padding:20px 22px;display:flex}.rzp-upi-view{flex-direction:column;gap:14px;display:flex}.rzp-qr-box{background:var(--gold-50,#fffdf5);border:1px dashed var(--gold-400,#f3ce52);border-radius:12px;align-items:center;gap:16px;padding:14px;display:flex}.rzp-qr-code-graphic{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:100px;height:100px;padding:6px;display:flex;position:relative}.rzp-mock-qr{color:#0f172a;width:100%;height:100%}.rzp-qr-center-logo{background:var(--gold-500,#d4af37);color:#1a1608;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:13px;font-weight:900;display:flex;position:absolute;box-shadow:0 0 0 2px #fff}.rzp-qr-text{flex-direction:column;gap:3px;display:flex}.rzp-qr-text strong{color:#0f172a;font-size:13.5px;font-weight:700}.rzp-qr-text span{color:#64748b;font-size:11.5px;line-height:1.4}.rzp-divider-or{text-align:center;color:#94a3b8;letter-spacing:.5px;align-items:center;font-size:10.5px;font-weight:700;display:flex}.rzp-divider-or:before,.rzp-divider-or:after{content:"";border-bottom:1px solid #e2e8f0;flex:1}.rzp-divider-or span{padding:0 10px}.rzp-input-field input{box-sizing:border-box;border:1.5px solid #cbd5e1;border-radius:8px;outline:none;width:100%;height:42px;padding:0 12px;font-size:13.5px;transition:all .15s}.rzp-input-field input:focus{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af372e}.rzp-card-view{flex-direction:column;gap:12px;display:flex}.rzp-field-group{flex-direction:column;gap:4px;display:flex}.rzp-field-group label{color:#475569;text-transform:uppercase;letter-spacing:.3px;font-size:11.5px;font-weight:700}.rzp-field-group input{box-sizing:border-box;border:1.5px solid #cbd5e1;border-radius:8px;outline:none;height:40px;padding:0 12px;font-size:13.5px}.rzp-field-group input:focus{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af372e}.rzp-card-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.rzp-card-badges{color:#64748b;gap:8px;margin-top:4px;font-size:11px;display:flex}.rzp-sub-label{color:#475569;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.rzp-banks-grid{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.rzp-bank-card{cursor:pointer;color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;align-items:center;gap:8px;padding:8px 10px;font-size:12.5px;font-weight:600;transition:all .15s;display:flex}.rzp-bank-card:hover{border-color:var(--gold-400,#f3ce52);background:var(--gold-50,#fffdf5)}.rzp-bank-card.selected{border-color:var(--gold-500,#d4af37);background:var(--gold-50,#fffdf5);color:var(--gold-800,#854d0e);font-weight:700}.rzp-wallets-list{flex-direction:column;gap:7px;display:flex}.rzp-wallet-card{cursor:pointer;color:#1e293b;background:#fff;border:1.5px solid #e2e8f0;border-radius:8px;align-items:center;gap:10px;padding:8px 12px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.rzp-wallet-card:hover{border-color:var(--gold-400,#f3ce52);background:var(--gold-50,#fffdf5)}.rzp-wallet-card.selected{border-color:var(--gold-500,#d4af37);background:var(--gold-50,#fffdf5);color:var(--gold-800,#854d0e);font-weight:700}.rzp-journey-badge{color:#475569;background:#f1f5f9;border-radius:6px;justify-content:center;align-items:center;gap:8px;margin:16px 0 12px;padding:6px 12px;font-size:11.5px;font-weight:600;display:flex}.rzp-dot-sep{color:#94a3b8}.rzp-action-row{flex-direction:column;gap:8px;display:flex}.rzp-pay-cta{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;height:46px;font-size:14.5px;font-weight:800;transition:all .2s;display:flex;box-shadow:0 2px 8px #0f172a14}.rzp-pay-cta:hover:not(:disabled){background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%));box-shadow:0 2px 8px #0f172a14}.rzp-fail-sim-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;padding:2px 0;font-size:11.5px;text-decoration:underline;transition:color .15s}.rzp-fail-sim-btn:hover{color:#64748b}.rzp-state-screen{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:320px;padding:48px 24px;display:flex}.rzp-spinner{border:4px solid #f1f5f9;border-top-color:var(--gold-500,#d4af37);border-radius:50%;width:48px;height:48px;margin-bottom:18px;animation:.8s linear infinite rzpSpin}@keyframes rzpSpin{to{transform:rotate(360deg)}}.rzp-state-title{color:#0f172a;font-size:18px;font-weight:800;font-family:var(--font-heading,"Outfit", sans-serif);margin:0 0 6px}.rzp-state-desc{color:#64748b;max-width:380px;margin:0 0 16px;font-size:13px;line-height:1.5}.rzp-security-tag{color:#059669;background:#ecfdf5;border-radius:20px;align-items:center;gap:6px;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.rzp-success-circle{color:#10b981;margin-bottom:12px;animation:.3s cubic-bezier(.175,.885,.32,1.275) rzpPop}.rzp-failed-circle{color:#f59e0b;margin-bottom:12px}.rzp-confirming-msg{color:var(--gold-800,#854d0e);background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;font-weight:700;display:inline-flex}.spin-icon{animation:1s linear infinite rzpSpin}.rzp-retry-btn{background:var(--gold-500,#d4af37);color:#1a1608;cursor:pointer;border:none;border-radius:8px;padding:8px 20px;font-size:13.5px;font-weight:700}.rzp-footer{background:#f8fafc;border-top:1px solid #e2e8f0;justify-content:center;align-items:center;padding:10px 18px;display:flex}.rzp-footer-trust{color:#64748b;align-items:center;gap:6px;font-size:11px;display:flex}.rzp-shield-gold{color:var(--gold-600,#b8860b)}@media (width<=600px){.rzp-main-layout{grid-template-columns:1fr}.rzp-method-sidebar{border-bottom:1px solid #e2e8f0;border-right:none;flex-direction:row;overflow-x:auto}.rzp-tab-btn{white-space:nowrap}}.booking-confirmation-page{min-height:calc(100vh - 72px);padding:28px 20px 56px}.booking-confirmation-container{max-width:920px;margin:0 auto}.top-nav-timer-bar{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.subtle-back-link{color:#475569;cursor:pointer;letter-spacing:-.1px;align-items:center;gap:6px;font-size:13.5px;font-weight:600;transition:color .15s;display:inline-flex;box-shadow:none!important;background:0 0!important;border:none!important;outline:none!important;padding:0!important}.subtle-back-link:hover{color:var(--gold-600,#b8860b)!important}.seat-lock-strip{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);color:var(--gold-900,#713f12);border-radius:8px;align-items:center;gap:6px;padding:7px 16px;font-size:13.5px;font-weight:500;display:inline-flex}.lock-clock-icon{font-size:14px}.timer-val{color:var(--gold-700,#9a7b1c);font-weight:700}.top-bar-spacer{width:100px}.confirmation-header{text-align:center;margin-bottom:28px}.page-title{color:#0f172a;letter-spacing:-.4px;margin:0 0 6px;font-size:30px;font-weight:800;line-height:1.2}.page-subtext{color:#64748b;margin:0;font-size:14px;font-weight:500}.main-review-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px 32px;box-shadow:0 4px 20px -2px #0f172a0a}.review-section{flex-direction:column;display:flex}.section-title{color:#0f172a;letter-spacing:-.2px;margin:0 0 16px;font-size:17px;font-weight:800}.section-divider{background:#f1f5f9;height:1px;margin:22px 0}.total-amount-tinted-box{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);border-radius:12px;justify-content:space-between;align-items:center;margin-top:24px;padding:18px 24px;display:flex}.total-amount-label{color:#0f172a;letter-spacing:-.2px;font-size:17px;font-weight:800}.total-amount-val{color:var(--gold-700,#9a7b1c);letter-spacing:-.4px;font-size:26px;font-weight:900}.secondary-edit-btn{cursor:pointer;border-radius:8px;width:180px;height:48px;font-size:15px;font-weight:700;transition:all .15s;color:#0f172a!important;background:#fff!important;border:1px solid #d9dee7!important;outline:none!important}.secondary-edit-btn:hover{background:#f8fafc!important;border-color:#cbd5e1!important}.primary-confirm-btn{cursor:pointer;border-radius:8px;width:240px;height:48px;font-size:15px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%))!important;color:#1a1608!important;border:none!important;outline:none!important}.primary-confirm-btn:hover{box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))!important}.primary-confirm-btn:active{transform:translateY(1px)}.seats-reserved-footer-note{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-top:14px;font-size:12.5px;font-weight:500;display:flex}.lock-icon{font-size:13px}@media (width<=768px){.top-nav-timer-bar{flex-direction:column;align-items:flex-start;gap:12px}.top-bar-spacer{display:none}.main-review-card{padding:20px 18px}.info-row{grid-template-columns:130px 1fr;gap:12px}}@media (width<=600px){.booking-confirmation-page{padding:16px 12px 36px}.page-title{font-size:24px}.info-row{grid-template-columns:1fr;gap:2px}.info-value{margin-bottom:6px}.action-buttons-row{flex-direction:column;width:100%}.secondary-edit-btn,.primary-confirm-btn{width:100%}.total-amount-tinted-box{padding:14px 16px}.total-amount-val{font-size:22px}}.guest-booking-banner{background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:14px;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;padding:14px 20px;display:flex;box-shadow:0 2px 8px #2563eb0d}.guest-banner-left{align-items:center;gap:14px;display:flex}.guest-banner-icon{flex-shrink:0;font-size:26px}.guest-banner-text strong{color:#1e3a8a;margin-bottom:2px;font-size:14.5px;font-weight:700;display:block}.guest-banner-text p{color:#3b82f6;margin:0;font-size:13px}.guest-login-cta-btn{color:#2563eb;cursor:pointer;white-space:nowrap;background:#fff;border:1.5px solid #2563eb;border-radius:8px;flex-shrink:0;padding:8px 18px;font-size:13px;font-weight:700;transition:all .15s}.guest-login-cta-btn:hover{color:#fff;background:#2563eb}@media (width<=640px){.guest-booking-banner{flex-direction:column;align-items:flex-start;gap:12px;padding:14px 16px}.guest-login-cta-btn{text-align:center;width:100%;padding:10px}}.policy-table{border:1px solid #e2e8f0;border-radius:10px;overflow:hidden}.policy-row{color:#334155;border-top:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:16px;padding:10px 14px;font-size:13.5px;display:flex}.policy-row strong{color:#0f172a;text-align:right;white-space:nowrap;font-weight:700}.policy-row.policy-head{color:#64748b;background:#f8fafc;border-top:none;font-size:12px;font-weight:600}.policy-note{color:#64748b;margin:10px 0 0;font-size:12.5px}.total-tax-note{color:#64748b;font-size:12.5px;font-weight:500}.booking-success-page{min-height:calc(100vh - 72px);padding:28px 20px 56px}.booking-success-container{max-width:920px;margin:0 auto}.success-header-area{text-align:center;flex-direction:column;align-items:center;margin-bottom:28px;display:flex}.success-check-circle{color:#fff;background:#16a34a;border-radius:50%;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:16px;display:flex;box-shadow:0 4px 14px #16a34a40}.check-svg{width:28px;height:28px}.success-title{color:#0f172a;letter-spacing:-.4px;margin:0 0 6px;font-size:30px;font-weight:800;line-height:1.2}.success-subtitle{color:#64748b;margin:0 0 16px;font-size:14px;font-weight:500}.booking-id-pill-box{color:#065f46;background:#e6f4ea;border:1px solid #a7f3d0;border-radius:8px;align-items:center;gap:8px;padding:8px 18px;font-size:14px;display:inline-flex}.booking-id-pill-box .id-label{color:#4b5563;font-size:inherit;letter-spacing:normal;font-weight:500}.booking-id-pill-box .id-val{color:#0f172a;font-size:inherit;letter-spacing:.5px;font-family:inherit;font-weight:800}.copy-id-btn{cursor:pointer;color:#4b5563;align-items:center;margin-left:4px;padding:2px;transition:color .15s;display:flex;background:0 0!important;border:none!important;outline:none!important}.copy-id-btn:hover{color:#0f172a}.copy-icon{width:16px;height:16px}.copied-text{color:#16a34a;font-size:12px;font-weight:700}.main-success-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:28px 32px;box-shadow:0 4px 20px -2px #0f172a0a}.section-heading{color:#0f172a;letter-spacing:-.2px;margin:0 0 16px;font-size:17px;font-weight:800}.grid-info-rows{flex-direction:column;gap:12px;display:flex}.info-row{grid-template-columns:160px 1fr;align-items:baseline;gap:16px;display:grid}.info-row.align-center{align-items:center}.info-label{color:#64748b;font-size:13.5px;font-weight:500}.info-value{color:#0f172a;font-size:14px;font-weight:700}.info-value.price-highlight{color:var(--gold-700,#9a7b1c);letter-spacing:-.4px;font-size:26px;font-weight:900}.payment-status-badge{color:#15803d;background:#dcfce7;border-radius:6px;width:fit-content;padding:4px 12px;font-size:13px;font-weight:700;display:inline-block}.meta-date-inline{color:#64748b;margin-left:2px;font-size:13px;font-weight:500}.card-divider{background:#f1f5f9;height:1px;margin:22px 0}.passenger-rows-list{flex-direction:column;gap:10px;margin-bottom:16px;display:flex}.passenger-item-row{background:#f8fafc;border:1px solid #edf2f7;border-radius:10px;justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.passenger-item-left{flex-direction:column;gap:2px;display:flex}.passenger-num-title{color:#0f172a;font-size:14px;font-weight:700}.passenger-seat-badge{color:#64748b;font-size:12.5px;font-weight:500}.passenger-item-right{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.passenger-name-val{color:#0f172a;text-align:right;font-size:14px;font-weight:700}.passenger-meta-val{color:#64748b;text-align:right;font-size:12.5px;font-weight:500}.contact-mobile-block{margin-top:14px}.action-buttons-row{justify-content:center;align-items:center;gap:14px;margin-top:28px;display:flex}.primary-view-details-btn{cursor:pointer;border-radius:8px;width:240px;height:48px;font-size:15px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%))!important;color:#1a1608!important;border:none!important;outline:none!important}.primary-view-details-btn:hover{box-shadow:0 2px 8px #0f172a14;background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))!important}.primary-view-details-btn:active{transform:translateY(1px)}.secondary-home-btn{cursor:pointer;border-radius:8px;width:240px;height:48px;font-size:15px;font-weight:700;transition:all .15s;color:#0f172a!important;background:#fff!important;border:1px solid #d9dee7!important;outline:none!important}.secondary-home-btn:hover{background:#f8fafc!important;border-color:#cbd5e1!important}.safe-travels-footer-text{text-align:center;color:#64748b;margin-top:20px;font-size:13px;font-weight:500}.not-found-card{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;max-width:500px;margin:40px auto 0;padding:32px}@media (width<=768px){.main-success-card{padding:20px 18px}.info-row{grid-template-columns:130px 1fr;gap:12px}.primary-view-details-btn,.secondary-home-btn{width:200px}}@media (width<=600px){.booking-success-page{padding:16px 12px 36px}.success-title{font-size:24px}.info-row{grid-template-columns:1fr;gap:2px}.info-value{margin-bottom:6px}.action-buttons-row{flex-direction:column;width:100%}.primary-view-details-btn,.secondary-home-btn,.print-ticket-btn{width:100%}}.guest-success-card{background:#eff6ff;border:1.5px solid #bfdbfe;border-radius:16px;margin-bottom:24px;padding:20px 24px;box-shadow:0 4px 16px #2563eb0f}.guest-success-top{border-bottom:1px dashed #bfdbfe;align-items:flex-start;gap:16px;margin-bottom:16px;padding-bottom:16px;display:flex}.guest-icon-badge{flex-shrink:0;font-size:32px}.guest-badge-text h3{color:#1e3a8a;margin:0 0 4px;font-size:16px;font-weight:800}.guest-badge-text p{color:#3b82f6;margin:0;font-size:13.5px;line-height:1.4}.guest-sync-prompt{justify-content:space-between;align-items:center;gap:16px;display:flex}.prompt-text{color:#1e40af;align-items:center;gap:10px;font-size:13px;display:flex}.prompt-lock-icon{flex-shrink:0;font-size:18px}.guest-login-now-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:none;border-radius:10px;flex-shrink:0;padding:10px 20px;font-size:13.5px;font-weight:700;transition:all .15s;box-shadow:0 4px 12px #2563eb40}.guest-login-now-btn:hover{background:#1d4ed8}.print-ticket-btn{color:#334155;cursor:pointer;background:#f8fafc;border:1.5px solid #cbd5e1;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;transition:all .15s;display:inline-flex}.print-ticket-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#94a3b8}@media (width<=768px){.guest-sync-prompt{flex-direction:column;align-items:flex-start}.guest-login-now-btn{text-align:center;width:100%}}.my-bookings-page{min-height:100vh;padding:40px 20px 80px}.my-bookings-container{max-width:900px;margin:0 auto}.back-button{color:#374151;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;margin-bottom:16px;padding:8px 0;font-size:14px;font-weight:600;transition:color .15s;display:inline-flex}.my-bookings-header-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.my-bookings-header-row h1{color:#111827;letter-spacing:-.5px;margin:0;font-size:28px;font-weight:800}.user-indicator-badge{color:#4b5563;background:#fff;border:1px solid #e5e7eb;border-radius:20px;padding:6px 14px;font-size:13px;font-weight:600}.guest-login-lock-banner{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border:1.5px solid #93c5fd;border-radius:16px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;padding:22px 24px;display:flex;box-shadow:0 4px 16px #2563eb14}.lock-banner-content{align-items:center;gap:16px;display:flex}.lock-icon-circle{background:#fff;border:1.5px solid #bfdbfe;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:24px;display:flex;box-shadow:0 4px 10px #2563eb1a}.lock-banner-content h2{color:#1e3a8a;margin:0 0 4px;font-size:18px;font-weight:800}.lock-banner-content p{color:#2563eb;max-width:520px;margin:0;font-size:13.5px;line-height:1.4}.primary-login-unlock-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#2563eb;border:none;border-radius:10px;flex-shrink:0;padding:12px 22px;font-size:14px;font-weight:700;transition:all .15s;box-shadow:0 4px 14px #2563eb40}.primary-login-unlock-btn:hover{background:#1d4ed8;box-shadow:0 6px 18px #2563eb59}.empty-bookings-simple{text-align:center;background:#fff;border:1px solid #e2e8f0;border-radius:14px;max-width:440px;margin:40px auto;padding:36px 24px;box-shadow:0 4px 16px #00000008}.simple-login-msg{color:#1e293b;margin:0 0 16px;font-size:15.5px;font-weight:600}.simple-login-btn{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;padding:10px 28px;font-size:14px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14}.simple-login-btn:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}.empty-bookings{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:16px;flex-direction:column;align-items:center;padding:60px 24px;display:flex;box-shadow:0 4px 16px #00000008}.empty-icon-wrap{margin-bottom:12px;font-size:48px}.empty-bookings h2{color:#111827;margin:0 0 8px;font-size:22px;font-weight:800}.empty-bookings p{color:#6b7280;max-width:420px;margin:0 0 24px;font-size:14px;line-height:1.5}.search-buses-button{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:10px;padding:12px 24px;font-size:14px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14}.search-buses-button:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}.bookings-list{flex-direction:column;gap:20px;display:flex}.booking-card{background:#fff;border:1px solid #eaedf0;border-radius:16px;padding:24px;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 16px #00000008}.booking-card:hover{box-shadow:0 8px 24px #0000000f}.booking-card.guest-card{background:#fafcff;border:1.5px solid #bfdbfe}.booking-card-header{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:16px;display:flex}.operator-guest-tag{align-items:center;gap:10px;margin-bottom:4px;display:flex}.operator-guest-tag h2{color:#111827;margin:0;font-size:18px;font-weight:800}.guest-local-pill{color:#2563eb;background:#eff6ff;border:1px solid #dbeafe;border-radius:6px;padding:2px 8px;font-size:11px;font-weight:700}.booking-card-header p{color:#64748b;margin:0;font-size:13px}.booking-status{color:#15803d;letter-spacing:.2px;background:#dcfce7;border-radius:20px;padding:4px 12px;font-size:12px;font-weight:700}.booking-status.cancelled{color:#64748b;background:#f1f5f9}.booking-route{border-bottom:1px solid #f1f5f9;align-items:center;gap:24px;padding:18px 0;display:flex}.booking-route>div{flex-direction:column;gap:2px;display:flex}.booking-route strong{color:#111827;font-size:18px;font-weight:800}.booking-route span{color:#64748b;font-size:13px}.booking-details{grid-template-columns:repeat(4,1fr);gap:14px;padding-top:16px;display:grid}.booking-details>div{flex-direction:column;gap:3px;display:flex}.booking-details span{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:600}.booking-details strong{color:#0f172a;font-size:14px;font-weight:700}.booking-card-actions{border-top:1px solid #f1f5f9;justify-content:flex-end;align-items:center;gap:12px;margin-top:18px;padding-top:16px;display:flex}.view-details-button{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;padding:10px 20px;font-size:13.5px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14}.view-details-button:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}.login-for-ticket-btn{color:#fff;cursor:pointer;background:#2563eb;border:none;border-radius:8px;padding:10px 20px;font-size:13.5px;font-weight:700;transition:all .15s;box-shadow:0 4px 12px #2563eb33}.login-for-ticket-btn:hover{background:#1d4ed8}.cancel-booking-button{color:#475569;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:9px 16px;font-size:13.5px;font-weight:600;transition:all .15s}.cancel-booking-button:hover{color:#0f172a;background:#f8fafc}@media (width<=768px){.my-bookings-page{padding:24px 16px 60px}.my-bookings-header-row h1{font-size:24px}.guest-login-lock-banner{flex-direction:column;align-items:flex-start;padding:18px}.primary-login-unlock-btn{text-align:center;width:100%}.booking-card{padding:18px 16px}.booking-details{grid-template-columns:repeat(2,1fr);gap:12px}.booking-card-actions{flex-direction:column;width:100%}.view-details-button,.login-for-ticket-btn,.cancel-booking-button{text-align:center;width:100%}}.booking-status.pending{color:#92400e;background:#fef3c7}.booking-details strong{overflow-wrap:anywhere}.login-page{box-sizing:border-box;flex-direction:column;justify-content:center;align-items:center;min-height:calc(100vh - 72px);padding:24px 16px 40px;display:flex}.login-container{box-sizing:border-box;flex-direction:column;width:100%;max-width:420px;display:flex}.back-button{color:#0f172a;cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;margin-bottom:16px;padding:0;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.back-button:hover{color:var(--gold-600,#b8860b)}.login-card{box-sizing:border-box;background:#fff;border:1px solid #e5e7eb;border-radius:12px;width:100%;padding:32px;box-shadow:0 4px 16px #0f172a0a}.login-title{color:#0f172a;margin:0 0 6px;font-size:28px;font-weight:700;line-height:1.2}.login-subtitle{color:#64748b;margin:0 0 28px;font-size:14px;font-weight:400;line-height:1.4}.form-group{flex-direction:column;margin-bottom:0;display:flex}.form-group label{color:#0f172a;margin-bottom:8px;font-size:14px;font-weight:600}.mobile-input-wrapper{box-sizing:border-box;background:#fff;border:1px solid #d7dde6;border-radius:8px;align-items:center;height:48px;transition:border-color .15s,box-shadow .15s;display:flex;overflow:hidden}.mobile-input-wrapper:focus-within{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af372e}.country-code{color:#0f172a;-webkit-user-select:none;user-select:none;background:#f8fafc;border-right:1px solid #e5e7eb;flex:0 0 54px;justify-content:center;align-items:center;height:100%;font-size:14px;font-weight:600;display:flex}.mobile-input-wrapper input{color:#0f172a;box-sizing:border-box;background:0 0;border:none;outline:none;flex:1;min-width:0;height:100%;padding:0 14px;font-size:15px}.mobile-input-wrapper input::placeholder{color:#94a3b8}.otp-input-wrapper input{color:#0f172a;box-sizing:border-box;border:1px solid #d7dde6;border-radius:8px;outline:none;width:100%;height:48px;padding:0 14px;font-size:15px;transition:border-color .15s,box-shadow .15s}.otp-input-wrapper input:focus{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af372e}.otp-input-wrapper input::placeholder{color:#94a3b8}.login-error{color:#d97706;margin:8px 0 0;font-size:13px;font-weight:600}.login-submit-button{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;width:100%;height:48px;margin-top:18px;font-size:15px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #0f172a14}.login-submit-button:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}.resend-otp-container{color:#64748b;justify-content:center;align-items:center;gap:6px;margin-top:20px;font-size:13.5px;display:flex}.resend-timer{color:#94a3b8;font-weight:600}.resend-otp-button{color:var(--gold-700,#9a7b1c);cursor:pointer;background:0 0;border:none;padding:0;font-size:13.5px;font-weight:700}.resend-otp-button:hover{text-decoration:underline}.change-number-button{color:#64748b;cursor:pointer;background:0 0;border:none;width:100%;margin-top:12px;padding:8px;font-size:13.5px;font-weight:500}.change-number-button:hover{color:#0f172a}@media (width<=480px){.login-page{padding:20px 16px 32px}.login-card{padding:20px}.login-title{font-size:24px}.login-subtitle{margin-bottom:24px;font-size:14px}.form-group label{font-size:13px}.country-code{flex:0 0 50px;font-size:13.5px}.mobile-input-wrapper input{font-size:15px}.resend-otp-container{flex-direction:column;gap:4px}}.booking-details-page{min-height:calc(100vh - 72px);padding:40px 20px 60px}.booking-details-container{width:100%;max-width:1000px;margin:0 auto}.subtle-back-btn{color:#64748b;cursor:pointer;background:0 0;border:none;align-items:center;margin-bottom:16px;padding:0;font-size:14px;font-weight:500;transition:color .15s;display:inline-flex}.subtle-back-btn:hover{color:#0f172a}.booking-details-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.title-id-block{flex-direction:column;gap:4px;display:flex}.page-title{color:#0f172a;margin:0;font-size:30px;font-weight:700;line-height:1.2}.booking-id-subtext{color:#64748b;font-size:14px;font-weight:500}.booking-id-subtext .id-val{color:#0f172a;font-weight:700}.status-pill-badge{white-space:nowrap;border-radius:9999px;padding:6px 16px;font-size:13px;font-weight:600}.status-pill-badge.confirmed{color:#22c55e;background:#dcfce7}.status-pill-badge.cancelled{color:#64748b;background:#f1f5f9}.booking-details-main-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:32px 36px;box-shadow:0 1px 3px #0000000a}.card-section{flex-direction:column;display:flex}.section-title{color:#0f172a;margin:0 0 20px;font-size:18px;font-weight:600}.details-two-col-grid{grid-template-columns:repeat(2,1fr);gap:20px 48px;display:grid}.grid-cell{flex-direction:column;gap:4px;display:flex}.cell-label{color:#64748b;font-size:14px;font-weight:500}.cell-value{color:#0f172a;word-break:break-word;font-size:15px;font-weight:600}.details-card-divider{border:none;border-top:1px solid #e5e7eb;margin:24px 0}.passenger-cards-stack{flex-direction:column;gap:10px;display:flex}.passenger-row-card{background:#f8fafc;border-radius:8px;justify-content:space-between;align-items:center;padding:14px 20px;display:flex}.p-left-info{flex-direction:column;gap:2px;display:flex}.p-title{color:#0f172a;font-size:14px;font-weight:600}.p-seat-sub{color:#64748b;font-size:13px;font-weight:400}.p-right-info{flex-direction:column;align-items:flex-end;gap:2px;display:flex}.p-name{color:#0f172a;font-size:15px;font-weight:600}.p-meta{color:#64748b;font-size:13px}.contact-mobile-row{align-items:center;gap:48px;margin-top:16px;display:flex}.total-amount-pink-box{background:#fef2f2;border-radius:12px;justify-content:space-between;align-items:center;margin-top:28px;padding:18px 24px;display:flex}.total-label{color:#0f172a;font-size:18px;font-weight:600}.total-val{color:var(--gold-700,#9a7b1c);font-size:26px;font-weight:800}.booking-details-actions-row{gap:12px;margin-top:20px;display:flex}.btn-secondary-outline{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:8px;flex:1;justify-content:center;align-items:center;height:48px;font-size:15px;font-weight:600;transition:all .15s;display:inline-flex}.btn-secondary-outline:hover{background:#f8fafc;border-color:#cbd5e1}.btn-primary-red{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;flex:1;justify-content:center;align-items:center;height:48px;font-size:15px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #0f172a14}.btn-primary-red:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%));box-shadow:0 2px 8px #0f172a14}.booking-not-found-card{text-align:center;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:48px 24px;box-shadow:0 1px 3px #0000000a}.booking-not-found-card h1{color:#0f172a;margin:0 0 8px;font-size:24px}.booking-not-found-card p{color:#64748b;margin:0 0 24px;font-size:14px}.booking-not-found-card button{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;border:none;border-radius:8px;height:44px;padding:0 24px;font-size:14px;font-weight:800;transition:all .2s;box-shadow:0 2px 8px #0f172a14}.booking-not-found-card button:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}@media (width<=768px){.booking-details-page{padding:24px 16px 40px}.booking-details-main-card{padding:24px 20px}.page-title{font-size:24px}.details-two-col-grid{grid-template-columns:1fr;gap:16px}.contact-mobile-row{flex-direction:column;align-items:flex-start;gap:4px}.booking-details-actions-row{flex-direction:column;gap:12px}.btn-secondary-outline,.btn-primary-red{width:100%}}.status-pill-badge.confirmed{color:#15803d}.status-pill-badge.cancelled{color:#64748b}.status-pill-badge.pending{color:#92400e;background:#fef3c7}.ticket-code{font-variant-numeric:tabular-nums;letter-spacing:.3px;overflow-wrap:anywhere}.refund-summary-box{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;margin-top:14px;padding:14px 18px}.refund-line{color:#4b5563;justify-content:space-between;align-items:center;gap:16px;padding:6px 0;font-size:14px;display:flex}.refund-line strong{color:#111827;white-space:nowrap;font-weight:700}.refund-line.refund-total{color:#111827;border-top:1px dashed #d1d5db;margin-top:4px;padding-top:12px;font-weight:600}.refund-line.refund-total strong{color:#15803d;font-size:17px}.cancel-error-banner{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin-top:16px;padding:12px 16px;font-size:14px;font-weight:600}.cancel-quote-card{border:1px solid var(--gold-200,#fde68a);background:#fff;border-radius:12px;margin-top:16px;padding:20px 24px;box-shadow:0 4px 16px #0000000a}.cancel-quote-title{color:#111827;margin:0 0 8px;font-size:17px;font-weight:800}.cancel-quote-actions{gap:12px;margin-top:16px;display:flex}@media (width<=640px){.cancel-quote-card{padding:16px}.cancel-quote-actions{flex-direction:column-reverse}}.payment-page{min-height:calc(100vh - 140px);padding:32px 20px 60px}.payment-container{max-width:1040px;margin:0 auto}.payment-top-bar{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.payment-back-btn{color:#475569;cursor:pointer;background:0 0;border:none;align-items:center;gap:8px;padding:0;font-size:14px;font-weight:600;transition:color .15s;display:inline-flex}.payment-back-btn:hover{color:var(--gold-600,#b8860b)}.payment-timer-badge{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);color:var(--gold-900,#713f12);border-radius:20px;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;display:inline-flex}.payment-grid{grid-template-columns:340px 1fr;align-items:start;gap:28px;display:grid}.payment-summary-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-shadow:0 4px 16px #0f172a0a}.summary-header{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;display:flex}.summary-bus-icon{background:var(--gold-50,#fffdf5);width:40px;height:40px;color:var(--gold-700,#9a7b1c);border:1px solid var(--gold-200,#fde68a);border-radius:10px;justify-content:center;align-items:center;display:flex}.summary-title{color:#0f172a;font-size:17px;font-weight:800;font-family:var(--font-heading,"Outfit", sans-serif);margin:0}.summary-sub{color:#64748b;font-size:12px}.summary-route{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 16px;display:flex}.route-lbl{color:#94a3b8;text-transform:uppercase;font-size:10.5px;font-weight:700;display:block}.summary-route strong{color:#0f172a;font-size:14.5px}.route-arrow{color:var(--gold-600,#b8860b);font-size:16px;font-weight:800}.summary-details-list{flex-direction:column;gap:10px;margin-bottom:18px;display:flex}.summary-line{color:#475569;justify-content:space-between;align-items:center;font-size:13.5px;display:flex}.summary-line strong{color:#0f172a}.summary-seats-val{color:var(--gold-800,#854d0e)!important}.summary-total-box{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:18px;padding:14px 18px;display:flex}.summary-total-box span{color:#475569;font-size:13px;font-weight:700}.summary-total-box strong{color:var(--gold-700,#9a7b1c);font-size:22px;font-weight:900;font-family:var(--font-heading,"Outfit", sans-serif)}.summary-trust-badges{color:#64748b;flex-direction:column;gap:8px;font-size:11.5px;display:flex}.rzp-standalone-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #0000000d}.rzp-secure-badge{color:#fff;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:20px;align-items:center;gap:5px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-flex}.payment-loading{text-align:center;padding:80px 20px}@media (width<=900px){.payment-grid{grid-template-columns:1fr}}.pnr-page{min-height:calc(100vh - 140px);padding:36px 20px 80px}.pnr-container{max-width:940px;margin:0 auto}.pnr-hero-card{color:#fff;background:linear-gradient(135deg,#0c1322 0%,#162035 100%);border:1px solid #d4af3740;border-radius:20px;margin-bottom:28px;padding:36px 32px;position:relative;overflow:hidden;box-shadow:0 10px 30px #0c132240}.pnr-badge{color:#fde68a;letter-spacing:.5px;background:#d4af3726;border:1px solid #d4af3759;border-radius:20px;align-items:center;gap:6px;margin-bottom:14px;padding:5px 12px;font-size:11px;font-weight:700;display:inline-flex}.pnr-sparkle{color:#fcd34d}.pnr-title{color:#fff;font-size:28px;font-weight:800;font-family:var(--font-heading,"Outfit", sans-serif);letter-spacing:-.5px;margin:0 0 8px}.pnr-subtitle{color:#94a3b8;max-width:600px;margin:0 0 24px;font-size:14px;line-height:1.5}.pnr-search-bar{background:#ffffff0f;border:1px solid #ffffff1f;border-radius:14px;grid-template-columns:1fr 1fr auto;align-items:flex-end;gap:14px;padding:14px;display:grid}.pnr-input-wrap{flex-direction:column;gap:6px;display:flex}.pnr-input-wrap label{color:#d4af37;letter-spacing:.6px;font-size:10.5px;font-weight:700}.pnr-input-wrap input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:8px;outline:none;height:44px;padding:0 14px;font-size:14px;font-weight:600}.pnr-input-wrap input:focus{border-color:var(--gold-500,#d4af37);box-shadow:0 0 0 3px #d4af3740}.pnr-submit-btn{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;align-items:center;gap:8px;height:44px;padding:0 24px;font-size:14px;font-weight:800;transition:all .2s;display:inline-flex;box-shadow:0 2px 8px #0f172a14}.pnr-submit-btn:hover{background:var(--gradient-gold-hover,linear-gradient(180deg, #d6ae33 0%, #c9a227 100%))}.pnr-quick-tests{color:#94a3b8;flex-wrap:wrap;align-items:center;gap:10px;margin-top:18px;font-size:12px;display:flex}.pnr-pill-btn{color:#fde68a;cursor:pointer;background:#d4af371f;border:1px solid #d4af374d;border-radius:20px;padding:4px 12px;font-size:11.5px;font-weight:600;transition:all .15s}.pnr-pill-btn:hover{color:#fff;background:#d4af3740}.pnr-alert-error{color:#92400e;background:#fffbeb;border:1px solid #fde68a;border-radius:12px;align-items:center;gap:10px;margin-bottom:24px;padding:14px 18px;font-size:13.5px;font-weight:600;display:flex}.pnr-actions-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pnr-status-tag{align-items:center;gap:8px;display:flex}.badge-confirmed{color:#059669;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:20px;align-items:center;gap:5px;padding:5px 12px;font-size:12px;font-weight:700;display:inline-flex}.badge-cancelled{color:#64748b;background:#f1f5f9;border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.badge-gds{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);color:var(--gold-800,#854d0e);border-radius:20px;padding:5px 12px;font-size:12px;font-weight:700}.pnr-btn-group{align-items:center;gap:10px;display:flex}.pnr-action-btn{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:700;transition:all .15s;display:inline-flex}.pnr-action-btn:hover{border-color:var(--gold-500,#d4af37);color:var(--gold-800,#854d0e);background:var(--gold-50,#fffdf5)}.pnr-ticket-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden;box-shadow:0 6px 24px #0000000f}.ticket-top-banner{border-bottom:3px solid var(--gold-500,#d4af37);color:#fff;background:linear-gradient(135deg,#090d16 0%,#172033 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px 28px;display:flex}.ticket-brand{align-items:center;gap:12px;display:flex}.ticket-logo-box{background:var(--gradient-gold,linear-gradient(180deg, #e0bb45 0%, #d4af37 100%));color:#1a1608;border-radius:10px;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.ticket-brand-name{letter-spacing:.5px;color:#fff;font-size:16px;font-weight:900;font-family:var(--font-heading,"Outfit", sans-serif);margin:0}.ticket-subtitle{color:#cbd5e1;font-size:12px}.ticket-identifiers{gap:24px;display:flex}.identifier-block{flex-direction:column;display:flex}.id-label{color:var(--gold-400,#f3ce52);letter-spacing:.5px;font-size:10px;font-weight:700}.id-val{color:#fff;font-family:monospace;font-size:16px}.pnr-code{color:#fde68a;font-weight:800}.ticket-main-grid{flex-direction:column;gap:24px;padding:28px;display:flex}.ticket-route-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.route-endpoint{flex-direction:column;gap:3px;display:flex}.endpoint-lbl{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.endpoint-city{color:#0f172a;font-size:24px;font-weight:800;font-family:var(--font-heading,"Outfit", sans-serif);margin:0}.endpoint-time{color:#475569;align-items:center;gap:5px;font-size:12.5px;font-weight:600;display:inline-flex}.route-arrow-connector{flex:1;align-items:center;gap:8px;max-width:220px;margin:0 20px;display:flex}.connector-line{background:#cbd5e1;flex:1;height:2px}.connector-bus{font-size:20px}.ticket-meta-strip{background:var(--gold-50,#fffdf5);border:1px solid var(--gold-200,#fde68a);border-radius:12px;grid-template-columns:repeat(4,1fr);gap:16px;padding:16px 20px;display:grid}.meta-lbl{color:#64748b;text-transform:uppercase;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.ticket-meta-strip strong{color:#0f172a;font-size:15px}.gold-fare{color:var(--gold-700,#9a7b1c)!important;font-size:18px!important;font-weight:900!important}.ticket-pickup-card{border:1px solid #e2e8f0;border-left:4px solid var(--gold-500,#d4af37);background:#f8fafc;border-radius:12px;padding:16px 20px}.pickup-title-row{color:#0f172a;align-items:center;gap:8px;margin-bottom:10px;font-size:15px;display:flex}.pin-gold{color:var(--gold-600,#b8860b)}.pickup-info-grid{grid-template-columns:1.5fr 1fr 1fr;gap:16px;display:grid}.pickup-lbl{color:#64748b;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.pickup-info-grid p{color:#334155;margin:0;font-size:13px;line-height:1.4}.phone-val{align-items:center;gap:5px;font-weight:700;display:flex;color:#0f172a!important}.ticket-passengers-section{flex-direction:column;gap:10px;display:flex}.passengers-title{color:#0f172a;margin:0;font-size:15px;font-weight:700}.passengers-table{border-collapse:collapse;width:100%;font-size:13.5px}.passengers-table th{text-align:left;color:#475569;text-transform:uppercase;background:#f1f5f9;padding:10px 14px;font-size:11.5px;font-weight:700}.passengers-table td{color:#334155;border-bottom:1px solid #f1f5f9;padding:12px 14px}.seat-badge-gold{background:var(--gold-100,#fef3c7);color:var(--gold-900,#713f12);border:1px solid var(--gold-300,#fcd34d);border-radius:6px;padding:2px 10px;font-weight:800;display:inline-block}.ticket-footer-row{border-top:1px dashed #cbd5e1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;padding-top:16px;display:flex}.ticket-contact-block{color:#475569;flex-direction:column;gap:3px;font-size:13px;display:flex}.block-lbl{color:#94a3b8;text-transform:uppercase;font-size:11px;font-weight:700}.ticket-contact-block strong{color:#0f172a;font-size:14px}.ticket-qr-block{align-items:center;gap:14px;display:flex}.qr-box{background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:6px;display:flex}.qr-note{flex-direction:column;gap:2px;display:flex}.qr-note strong{color:#0f172a;font-size:13.5px}.qr-note span{color:#64748b;max-width:220px;font-size:11.5px}.ticket-terms{color:#94a3b8;border-top:1px solid #f1f5f9;padding-top:12px;font-size:11.5px;line-height:1.4}@media print{body{background:#fff!important}.no-print,header,footer{display:none!important}.pnr-page{padding:0!important}.pnr-ticket-card{box-shadow:none!important;border:2px solid #000!important}}@media (width<=768px){.pnr-search-bar{grid-template-columns:1fr}.ticket-meta-strip{grid-template-columns:1fr 1fr}.pickup-info-grid{grid-template-columns:1fr}.ticket-route-box{text-align:center;flex-direction:column;gap:14px}.route-arrow-connector{margin:0 auto}}
