:root{--font-display:"Instrument Serif", Georgia, serif;--font-body:"Instrument Sans", sans-serif;--radius-xs:6px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}[data-theme=dark],:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-base:#09090b;--bg-surface:#111113;--bg-card:#18181b;--bg-card-hover:#222226;--bg-input:#101012;--bg-chip:#ffffff0d;--navbar-bg:#09090be6;--modal-overlay:#0000009e;--text-main:#fafafa;--text-muted:#a1a1aa;--text-dim:#71717a;--border-subtle:#ffffff14;--border-medium:#ffffff21;--border-strong:#ffffff38;--primary:#fafafa;--primary-hover:#e4e4e7;--primary-light:#d4d4d8;--primary-surface:#fafafa14;--primary-glow:#fafafa1f;--on-primary:#09090b;--primary-gradient:linear-gradient(180deg, #fff 0%, #e4e4e7 100%);--accent-line:#fafafa59;--accent-emerald:#86c9a3;--accent-emerald-bg:#86c9a31f;--accent-amber:#e4c98a;--accent-amber-bg:#e4c98a1f;--accent-rose:#e7a8ac;--accent-rose-bg:#e7a8ac1f;--accent-cyan:#9ec4d0;--accent-cyan-bg:#9ec4d01f;--shadow-card:0 12px 32px #00000052, 0 2px 8px #00000038;--shadow-lg:0 28px 70px #0000007a;--shadow-glow:0 10px 28px #00000047;--shadow-btn:0 1px 0 #ffffff59 inset, 0 8px 20px #00000047;--page-glow-1:#ffffff09;--page-glow-2:#a1a1aa0d;--page-glow-3:#ffffff05;--bus-body-bg:#101012;--bus-body-border:#27272a;--seat-avail-bg:#141416;--seat-avail-border:#3f3f46;--seat-avail-hover:#1f1f23;--seat-booked-bg:#0c0c0e;--seat-booked-text:#52525b}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-base:#f4f4f5;--bg-surface:#fff;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#f4f4f5;--bg-chip:#f4f4f5;--navbar-bg:#ffffffeb;--modal-overlay:#18181b66;--text-main:#18181b;--text-muted:#52525b;--text-dim:#71717a;--border-subtle:#e4e4e7;--border-medium:#d4d4d8;--border-strong:#a1a1aa;--primary:#18181b;--primary-hover:#27272a;--primary-light:#3f3f46;--primary-surface:#18181b0f;--primary-glow:#18181b1a;--on-primary:#fafafa;--primary-gradient:linear-gradient(180deg, #27272a 0%, #18181b 100%);--accent-line:#18181b47;--accent-emerald:#2f6b4f;--accent-emerald-bg:#2f6b4f1a;--accent-amber:#8a5a24;--accent-amber-bg:#8a5a241a;--accent-rose:#9b3f48;--accent-rose-bg:#9b3f481a;--accent-cyan:#3d5a66;--accent-cyan-bg:#3d5a661a;--shadow-card:0 10px 28px #1c19170d, 0 1px 3px #1c19170a;--shadow-lg:0 24px 50px #1c19171f;--shadow-glow:0 8px 22px #1c191714;--shadow-btn:0 1px 0 #ffffff1f inset, 0 8px 18px #1c191729;--page-glow-1:#a1a1aa29;--page-glow-2:#71717a14;--page-glow-3:#18181b08;--bus-body-bg:#fafafa;--bus-body-border:#e4e4e7;--seat-avail-bg:#fff;--seat-avail-border:#d4d4d8;--seat-avail-hover:#f4f4f5;--seat-booked-bg:#f4f4f5;--seat-booked-text:#a1a1aa}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background-color:var(--bg-base);color:var(--text-main);font-feature-settings:"ss01", "cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.55}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(1000px 500px at 12% -8%, var(--page-glow-1), transparent 55%), radial-gradient(800px 420px at 88% 0%, var(--page-glow-2), transparent 50%), radial-gradient(900px 600px at 50% 115%, var(--page-glow-3), transparent 55%);position:fixed;inset:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text-main);font-weight:600}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit;font-size:inherit}::selection{background:var(--primary-surface);color:var(--text-main)}:focus-visible{outline:2px solid var(--primary-light);outline-offset:2px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-medium);background-clip:padding-box;border:2px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--border-strong);background-clip:padding-box;border:2px solid #0000}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes modalEnter{0%{opacity:0;transform:translateY(18px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes gradientShift{0%{background-position:0%}to{background-position:220%}}@keyframes pulseBeacon{0%{box-shadow:0 0 0 0 color-mix(in srgb, var(--accent-emerald) 50%, transparent);transform:scale(.95)}70%{transform:scale(1);box-shadow:0 0 0 9px #0000}to{transform:scale(.95);box-shadow:0 0 #0000}}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;max-width:1260px;margin:0 auto;padding:26px 24px 90px}.glass-panel{background:var(--bg-card);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:border-color .18s,box-shadow .18s,transform .18s}.btn{cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:10px 18px;font-size:.9rem;font-weight:600;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .16s,opacity .16s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.65;cursor:not-allowed;transform:none}.btn-primary{background-image:var(--primary-gradient);background-color:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-btn);border-color:#0000}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);box-shadow:var(--shadow-btn);transform:translateY(-1px)}.btn-secondary{background:var(--bg-chip);color:var(--text-main);border-color:var(--border-subtle);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-secondary:hover:not(:disabled){background:var(--bg-card-hover);border-color:var(--border-medium);transform:translateY(-1px)}.btn-outline{color:var(--primary-light);border-color:var(--border-medium);background:0 0}.btn-outline:hover{background:var(--primary-surface);border-color:var(--primary-light)}.btn-sm{border-radius:11px;padding:7px 12px;font-size:.8rem}.badge{border-radius:var(--radius-full);letter-spacing:.02em;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);align-items:center;gap:5px;padding:5px 10px;font-size:.75rem;font-weight:600;display:inline-flex}.badge-emerald{background:var(--accent-emerald-bg);color:var(--accent-emerald);border:1px solid color-mix(in srgb, var(--accent-emerald) 28%, transparent)}.badge-amber{background:var(--accent-amber-bg);color:var(--accent-amber);border:1px solid color-mix(in srgb, var(--accent-amber) 28%, transparent)}.badge-rose{background:var(--accent-rose-bg);color:var(--accent-rose);border:1px solid color-mix(in srgb, var(--accent-rose) 28%, transparent)}.badge-primary{background:var(--primary-surface);color:var(--text-main);border:1px solid var(--border-medium)}.badge-redis{background:var(--accent-rose-bg);color:var(--accent-rose);border:1px solid color-mix(in srgb, var(--accent-rose) 28%, transparent)}.navbar{z-index:100;background:var(--navbar-bg);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid var(--border-subtle);height:64px;padding:0 20px;position:sticky;top:0}.navbar-inner{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:20px;max-width:1260px;height:100%;margin:0 auto;display:grid}.brand-logo{cursor:pointer;align-items:center;gap:10px;min-width:0;display:flex}.brand-icon-box{background:var(--primary);width:32px;height:32px;color:var(--on-primary);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand-copy{min-width:0}.brand-title{font-family:var(--font-body);letter-spacing:-.03em;color:var(--text-main);font-size:.98rem;font-weight:600;line-height:1.1}.brand-subtitle{color:var(--text-dim);letter-spacing:0;white-space:nowrap;margin-top:1px;font-size:.72rem;font-weight:500;line-height:1.2}.nav-links{background:var(--bg-chip);border:1px solid var(--border-subtle);border-radius:var(--radius-full);justify-content:center;align-items:center;gap:2px;width:fit-content;min-width:0;margin:0 auto;padding:4px;display:flex}.nav-item{border-radius:var(--radius-full);height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 12px;font-size:.82rem;font-weight:500;transition:background-color .16s,color .16s;display:inline-flex}.nav-item:hover{color:var(--text-main)}.nav-item.active{color:var(--text-main);background:var(--bg-surface);border-color:var(--border-subtle);font-weight:600;box-shadow:0 1px 2px #00000014}.nav-live-dot{background:var(--accent-emerald);border-radius:50%;flex-shrink:0;width:6px;height:6px}.navbar-actions{align-items:center;gap:8px;display:flex}.theme-toggle-btn{background:var(--bg-surface);border:1px solid var(--border-subtle);width:36px;height:36px;color:var(--text-main);cursor:pointer;border-radius:10px;justify-content:center;align-items:center;padding:0;transition:border-color .16s,background-color .16s;display:flex}.theme-toggle-btn:hover{border-color:var(--border-medium);background:var(--bg-card-hover)}.hero-search-section{text-align:center;padding:52px 0 18px}.hero-eyebrow{border-radius:var(--radius-full);letter-spacing:.03em;width:fit-content;box-shadow:var(--shadow-card);margin:0 auto 16px;padding:8px 13px;font-size:.78rem;font-weight:700}.hero-headline{font-family:var(--font-display);letter-spacing:-.03em;margin-bottom:14px;font-size:clamp(2.6rem,5vw,4.2rem);font-weight:400;line-height:1.02}.hero-gradient-text{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text-main);-webkit-text-fill-color:currentColor;background:0 0;font-style:italic;font-weight:400}.hero-subheadline{color:var(--text-muted);max-width:700px;margin:0 auto 30px;font-size:1.06rem;line-height:1.75}.search-box-card{z-index:30;background:var(--bg-surface);border:1px solid var(--border-medium);box-shadow:var(--shadow-lg), inset 0 1px 0 #ffffff08;border-radius:28px;margin-bottom:20px;padding:22px;position:relative;overflow:visible}.search-box-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-line), transparent);opacity:.9;pointer-events:none;height:2px;position:absolute;top:0;left:12%;right:12%}.search-form-grid{grid-template-columns:1fr auto 1fr 1.1fr auto;align-items:center;gap:14px;display:grid}.input-field-group{text-align:left;flex-direction:column;gap:6px;display:flex}.input-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-dim);align-items:center;gap:5px;font-size:.74rem;font-weight:700;display:flex}.input-control{background:var(--bg-input);border:1px solid var(--border-subtle);width:100%;color:var(--text-main);border-radius:14px;outline:none;padding:12px 14px;font-size:.95rem;font-weight:600;transition:border-color .16s,box-shadow .16s,background-color .16s}.input-control:focus{border-color:var(--border-strong);box-shadow:0 0 0 4px var(--primary-glow);background:var(--bg-surface)}.swap-button{border-radius:var(--radius-full);background:var(--bg-chip);border:1px solid var(--border-subtle);width:44px;height:44px;color:var(--text-muted);cursor:pointer;justify-content:center;align-self:flex-end;align-items:center;margin-bottom:2px;transition:transform .22s,border-color .16s,color .16s,box-shadow .16s;display:flex}.swap-button:hover{border-color:var(--border-strong);color:var(--text-main);box-shadow:var(--shadow-card);transform:rotate(180deg)}.popular-routes-pills{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;margin-top:16px;display:flex}.popular-pill{background:var(--bg-chip);border:1px solid var(--border-subtle);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;padding:6px 12px;font-size:.78rem;font-weight:600;transition:all .16s}@keyframes dropdownPop{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes bubbleFloat{0%{opacity:0;transform:scale(.85)translateY(4px)}60%{transform:scale(1.06)translateY(-2px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes bubblePopBounce{0%{opacity:0;transform:scale(.7)translateY(8px)}50%{transform:scale(1.12)translateY(-4px)}75%{transform:scale(.96)translateY(1px)}to{opacity:1;transform:scale(1)translateY(0)}}@keyframes bubbleFloatSubtle{0%{transform:translateY(0)}50%{transform:translateY(-3px)}to{transform:translateY(0)}}.city-autocomplete-dropdown{background:var(--bg-surface);border:1px solid var(--border-medium);min-width:360px;max-width:440px;box-shadow:0 20px 45px -10px #0006, 0 0 0 1px var(--border-medium);z-index:1000;-webkit-backdrop-filter:blur(16px);border-radius:16px;animation:.16s cubic-bezier(.16,1,.3,1) forwards dropdownPop;position:absolute;top:calc(100% + 8px);left:0;overflow:hidden}.dropdown-meta-header{border-bottom:1px solid var(--border-subtle);background:var(--bg-card);justify-content:space-between;align-items:center;padding:10px 14px;display:flex}.quick-hub-chips-row{background:var(--bg-card);border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;gap:6px;padding:10px 14px;display:flex}.hub-chip-btn{border-radius:var(--radius-full);background:var(--bg-chip);border:1px solid var(--border-subtle);color:var(--text-main);cursor:pointer;align-items:center;gap:4px;padding:5px 12px;font-size:.78rem;font-weight:600;transition:all .15s;display:inline-flex}.hub-chip-btn:hover{background:var(--primary-surface);border-color:var(--primary-light);transform:translateY(-1px)}.hub-chip-btn.active{box-shadow:var(--shadow-btn);background:var(--primary)!important;color:var(--on-primary)!important;border-color:#0000!important}.city-suggestion-scroll{max-height:240px;padding:6px;overflow-y:auto}.city-suggestion-row{cursor:pointer;border-radius:10px;justify-content:space-between;align-items:center;padding:10px 12px;transition:all .14s;display:flex}.city-suggestion-row:hover,.city-suggestion-row.highlighted{background:var(--bg-chip);transform:translate(3px)}.city-suggestion-row.selected{background:var(--primary-surface);border:1px solid var(--border-medium)}.city-row-icon{background:var(--bg-chip);border:1px solid var(--border-subtle);width:32px;height:32px;color:var(--primary-light);border-radius:8px;justify-content:center;align-items:center;display:flex}.popular-pill:hover{color:var(--text-main);border-color:var(--primary);background:var(--primary-surface);transform:translateY(-1px)}.results-container{grid-template-columns:260px 1fr;gap:24px;margin-top:18px;display:grid}.filters-sidebar{background:var(--bg-card);border:1px solid var(--border-subtle);height:fit-content;box-shadow:var(--shadow-card);border-radius:20px;padding:20px;position:sticky;top:86px}.filter-group{border-bottom:1px solid var(--border-subtle);margin-bottom:20px;padding-bottom:16px}.filter-group:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.filter-title{color:var(--text-main);justify-content:space-between;align-items:center;margin-bottom:10px;font-size:.85rem;font-weight:700;display:flex}.filter-chip-grid{grid-template-columns:1fr 1fr;gap:6px;display:grid}.filter-options{flex-direction:column;gap:6px;display:flex}.filter-chip{background:var(--bg-input);border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;text-align:center;border-radius:12px;padding:9px 10px;font-size:.8rem;font-weight:600;transition:all .16s}.filter-chip:hover{border-color:var(--border-medium);color:var(--text-main);transform:translateY(-1px)}.filter-chip.active{background:var(--primary);color:var(--on-primary);box-shadow:none;border-color:#0000;font-weight:600}.trip-card{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);border-radius:22px;margin-bottom:18px;transition:border-color .2s,box-shadow .2s,transform .2s;animation:.35s both fadeUp;position:relative;overflow:hidden}.trip-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-3px)}.trip-card:before{content:"";background:linear-gradient(90deg, transparent, var(--accent-line), transparent);opacity:0;pointer-events:none;height:2px;transition:opacity .25s;position:absolute;top:0;left:10%;right:10%}.trip-card:hover:before{opacity:1}.trip-card-main{grid-template-columns:2.2fr 3fr 1.5fr;align-items:center;gap:22px;padding:24px;display:grid}.operator-info{flex-direction:column;gap:5px;display:flex}.operator-name{letter-spacing:-.02em;color:var(--text-main);font-size:1.18rem;font-weight:700}.bus-type-badge{color:var(--text-dim);font-size:.82rem;font-weight:500}.operator-rating{align-items:center;gap:8px;margin-top:4px;display:flex}.journey-timeline{text-align:center;justify-content:space-between;align-items:center;display:flex}.time-box{flex-direction:column;display:flex}.time-val{font-size:1.45rem;font-weight:600;font-family:var(--font-body);color:var(--text-main);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.place-val{color:var(--text-muted);font-size:.84rem;font-weight:600}.journey-track{flex-direction:column;flex:1;align-items:center;padding:0 16px;display:flex}.journey-duration{color:var(--text-dim);border-radius:var(--radius-full);background:var(--bg-chip);border:1px solid var(--border-subtle);margin-bottom:7px;padding:4px 9px;font-size:.74rem;font-weight:700}.track-line{background:linear-gradient(90deg, var(--border-medium), var(--primary-light), var(--border-medium));border-radius:999px;width:100%;height:2px;position:relative}.track-line:before,.track-line:after{content:"";background:var(--primary-light);width:9px;height:9px;box-shadow:0 0 0 5px var(--primary-surface);border-radius:50%;position:absolute;top:-3.5px}.track-line:before{left:0}.track-line:after{right:0}.price-booking-action{flex-direction:column;align-items:flex-end;gap:9px;display:flex}.price-label{color:var(--text-dim);font-size:.75rem}.price-number{font-size:1.7rem;font-weight:600;font-family:var(--font-body);color:var(--text-main);letter-spacing:-.03em;font-variant-numeric:tabular-nums}.trip-card-footer{background:var(--bg-chip);border-top:1px solid var(--border-subtle);color:var(--text-muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px 24px;font-size:.8rem;display:flex}.amenities-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.amenity-chip{border-radius:var(--radius-full);background:var(--bg-surface);border:1px solid var(--border-subtle);color:var(--text-muted);align-items:center;gap:4px;padding:4px 9px;font-size:.75rem;display:inline-flex}.seat-selection-drawer{border-top:1px solid var(--border-subtle);background:var(--bus-body-bg);padding:26px}.seat-legend-bar{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);border-radius:16px;flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin-bottom:22px;padding:12px 16px;font-size:.8rem;display:flex}.legend-item{align-items:center;gap:7px;font-weight:500;display:flex}.legend-swatch{border-radius:5px;width:18px;height:18px}.swatch-avail{background:var(--seat-avail-bg);border:1px solid var(--seat-avail-border)}.swatch-selected{background-image:var(--primary-gradient);border:1px solid #0000}.swatch-locked{background:var(--accent-amber-bg);border:1px dashed var(--accent-amber)}.swatch-booked{background:var(--seat-booked-bg);border:1px solid var(--border-subtle)}.swatch-female{background:var(--accent-rose-bg);border:1px solid var(--accent-rose)}.deck-box{background:var(--bg-surface);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card), inset 0 1px 0 #ffffff05;border-radius:28px;padding:22px;position:relative}.deck-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;display:flex}.driver-cabin-indicator{background:var(--bg-chip);border:1px dashed var(--border-medium);color:var(--text-dim);letter-spacing:.06em;text-transform:uppercase;border-radius:14px;justify-content:space-between;align-items:center;margin-bottom:16px;padding:10px 14px;font-size:.76rem;font-weight:700;display:flex}.seat-btn{cursor:pointer;-webkit-user-select:none;user-select:none;border:1.5px solid #0000;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;min-width:48px;transition:transform .16s,box-shadow .16s,border-color .16s,background-color .16s,opacity .16s;display:flex;position:relative}.seat-btn.type-sleeper{border-radius:15px;height:58px;padding:6px}.seat-btn.type-seater{border-radius:13px;height:50px;padding:4px}.seat-btn.type-sleeper:after{content:"";background:#ffffff26;border-radius:3px;width:6px;position:absolute;top:6px;bottom:6px;left:5px}[data-theme=light] .seat-btn.type-sleeper:after{background:#0f172a14}.seat-btn.status-available{background:var(--seat-avail-bg);border-color:var(--seat-avail-border);color:var(--text-main)}.seat-btn.status-available:hover:not(:disabled){background:var(--seat-avail-hover);border-color:var(--border-strong);box-shadow:var(--shadow-card);transform:translateY(-2px)scale(1.02)}.seat-btn.status-selected{background-image:var(--primary-gradient);background-color:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-btn);border-color:#0000;transform:scale(1.02)}.seat-btn.status-selected .seat-price-tag{color:color-mix(in srgb, var(--on-primary) 78%, transparent)}.seat-btn.status-locked_by_you{background-image:var(--primary-gradient);background-color:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-btn);border-color:#0000}.seat-btn.status-locked_by_other{background:var(--accent-amber-bg);border:1.5px dashed var(--accent-amber);color:var(--accent-amber);cursor:not-allowed;opacity:.92}.seat-btn.status-booked{background:var(--seat-booked-bg);border-color:var(--border-subtle);color:var(--seat-booked-text);cursor:not-allowed;opacity:.48}.seat-btn.status-female{border-color:color-mix(in srgb, var(--accent-rose) 55%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-rose) 22%, transparent)}.seat-btn.status-female.status-selected{border-color:#0000}.seat-number{font-size:.79rem;font-weight:700}.seat-price-tag{opacity:.75;font-size:.64rem;font-weight:600}.lock-timer-banner{background:var(--accent-amber-bg);color:var(--text-main);border:1px solid #fbbf244d;border-radius:16px;justify-content:space-between;align-items:center;margin-bottom:20px;padding:14px 18px;font-weight:600;display:flex;box-shadow:0 0 30px #fbbf2414}.lock-timer-digits{font-size:1.35rem;font-weight:600;font-family:var(--font-body);color:var(--accent-amber);letter-spacing:.04em;font-variant-numeric:tabular-nums}.modal-overlay{z-index:200;background:var(--modal-overlay);-webkit-backdrop-filter:blur(14px)saturate(130%);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-surface);border:1px solid var(--border-medium);box-shadow:var(--shadow-lg);border-radius:28px;width:100%;max-width:620px;max-height:90vh;padding:28px;animation:.28s cubic-bezier(.2,.9,.3,1.12) modalEnter;position:relative;overflow:hidden auto}.modal-card:before{content:"";background:var(--primary-gradient);opacity:.85;pointer-events:none;height:3px;position:absolute;top:0;left:0;right:0}.modal-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:13px;display:flex}.modal-title{font-family:var(--font-display);letter-spacing:-.02em;font-size:1.7rem;font-weight:400}.close-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:10px;padding:5px;transition:all .15s}.close-btn:hover{color:var(--text-main);background:var(--bg-chip)}.ticket-container{background:var(--bg-card);border:1.5px dashed var(--border-strong);box-shadow:var(--shadow-card);border-radius:24px;margin:16px 0;padding:24px;position:relative}.ticket-container:before,.ticket-container:after{content:"";background:var(--bg-surface);border:1.5px dashed var(--border-strong);border-radius:50%;width:22px;height:22px;position:absolute;top:50%;transform:translateY(-50%)}.ticket-container:before{left:-13px}.ticket-container:after{right:-13px}.ticket-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:flex-start;margin-bottom:16px;padding-bottom:14px;display:flex}.ticket-grid{grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px;display:grid}.ticket-field-label{color:var(--text-dim);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700}.ticket-field-val{color:var(--text-main);font-size:.95rem;font-weight:700;line-height:1.45}.ticket-qr-section{background:#fff;border-radius:18px;flex-direction:column;justify-content:center;align-items:center;margin-top:14px;padding:18px;display:flex;box-shadow:0 10px 24px #0f172a1a}.ticket-qr-img{width:140px;height:140px}.ticket-qr-caption{color:#0f172a;letter-spacing:.08em;text-align:center;margin-top:7px;font-size:.72rem;font-weight:700}.empty-state{text-align:center;background:var(--bg-card);border:1px dashed var(--border-medium);box-shadow:var(--shadow-card);border-radius:24px;padding:64px 22px}.empty-icon{width:54px;height:54px;color:var(--text-dim);margin:0 auto 16px}.telemetry-card{background:var(--bg-card);border:1px solid var(--border-subtle);box-shadow:var(--shadow-card);border-radius:20px;padding:20px}.live-pulse-dot{background:var(--accent-emerald);border-radius:50%;width:10px;height:10px;animation:1.8s infinite pulseBeacon;box-shadow:0 0 #34d3998c}.stop-timeline-node{align-items:flex-start;gap:12px;padding-bottom:20px;display:flex;position:relative}.stop-timeline-node:last-child{padding-bottom:0}.stop-timeline-node:before{content:"";background:var(--border-subtle);width:2px;position:absolute;top:24px;bottom:0;left:11px}.stop-timeline-node:last-child:before{display:none}@media (width<=960px){.results-container{grid-template-columns:1fr}.filters-sidebar{position:static}}@media (width<=900px){.search-form-grid{grid-template-columns:1fr}.swap-button{align-self:center;margin:0}}@media (width<=820px){.trip-card-main{grid-template-columns:1fr}.price-booking-action{align-items:stretch}.navbar{height:auto}.navbar-inner{grid-template-columns:1fr auto;row-gap:10px;height:auto;padding:10px 0}.nav-links{grid-column:1/-1;justify-content:flex-start;width:100%;overflow-x:auto}.brand-subtitle{display:none}}@media (width<=640px){.main-content{padding:20px 16px 80px}.hero-search-section{padding-top:36px}.search-box-card{border-radius:22px;padding:18px}.modal-card{border-radius:22px;padding:20px}.ticket-grid{grid-template-columns:1fr}.seat-selection-drawer{padding:18px}.deck-box{border-radius:22px;padding:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}@media print{body:before{display:none}body *{visibility:hidden}#printable-ticket,#printable-ticket *{visibility:visible}#printable-ticket{color:#111827;background:#fff;border:1px solid #d1d5db;width:100%;max-height:none;position:fixed;top:0;left:0;overflow:visible}.modal-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;padding:0}.modal-card{box-shadow:none;background:#fff;border:none;max-height:none;overflow:visible}}
