:root{--color-primary: #1565c0;--color-primary-dark: #0d47a1;--color-accent: #ff8f00;--color-accent-dark: #e65100;--color-background: #f5f7fa;--color-surface: #ffffff;--color-text-primary: #1a1a1a;--color-text-secondary: #6b7280;--color-text-on-primary: #ffffff;--color-text-on-accent: #1a1a1a;--color-error: #d32f2f;--color-link: #1565c0;--color-divider: #eeeeee;--color-draft-bg: #fff8e1;--color-draft-text: #8a6500;--color-seat-available: #e8f7e8;--color-seat-held: #fff3cd;--color-seat-unavailable: #f0f0f0;--color-seat-selected: #cfe8ff;--color-seat-selected-border: #4a90d9;--color-success-bg: #e8f7e8;--color-success-text: #2e7d32;--space-xs: 4px;--space-sm: 8px;--space-md: 12px;--space-lg: 16px;--space-xl: 24px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 10px;--font-size-title: 1.25rem;--font-size-header: 1.125rem;--font-size-body: 1rem;--font-size-small: .85rem;--breakpoint-tablet: 640px}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--color-background);color:var(--color-text-primary);line-height:1.5}#root{display:flex;flex-direction:column;min-height:100vh;max-width:900px;margin:0 auto;padding:var(--space-lg)}#root>main{flex:1 0 auto}@media (max-width: 480px){#root{padding:var(--space-md)}}h1,h2,h3{margin:0 0 var(--space-md)}a{color:var(--color-link)}.hidden{display:none!important}.hint{color:var(--color-text-secondary);font-size:var(--font-size-small);margin:0 0 var(--space-sm)}.app-header{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;background:var(--color-primary);color:var(--color-text-on-primary);padding:calc(var(--space-xl) + var(--space-sm)) var(--space-lg);margin:calc(-1 * var(--space-lg)) calc(-1 * var(--space-lg)) var(--space-lg);border-radius:0 0 var(--radius-lg) var(--radius-lg)}@media (max-width: 480px){.app-header{margin:calc(-1 * var(--space-md)) calc(-1 * var(--space-md)) var(--space-md);padding:calc(var(--space-lg) + var(--space-xs)) var(--space-md)}}.app-header-brand{display:flex;align-items:center;gap:var(--space-sm);min-width:0}.app-header-logo{display:block;height:8.5rem;width:auto;flex-shrink:0}@media (max-width: 480px){.app-header-logo{height:6rem}}.app-header h1{font-size:var(--font-size-title);margin:0}.app-header a{color:var(--color-text-on-primary)}.language-switcher{display:flex;align-items:center;gap:var(--space-xs);font-size:var(--font-size-small)}.language-switcher button{background:none;border:none;color:inherit;opacity:.75;cursor:pointer;padding:2px;font-size:inherit}.language-switcher button:hover{opacity:.9}.language-switcher button.active{opacity:1;font-weight:700;text-decoration:underline}.language-switcher-divider{opacity:.6}.app-footer{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);background:var(--color-primary);color:var(--color-text-on-primary);padding:var(--space-lg);margin:var(--space-lg) calc(-1 * var(--space-lg)) calc(-1 * var(--space-lg));border-radius:var(--radius-lg) var(--radius-lg) 0 0}.app-footer p{margin:0;font-size:var(--font-size-small)}.app-footer a{color:var(--color-text-on-primary)}@media (max-width: 480px){.app-footer{margin:var(--space-md) calc(-1 * var(--space-md)) calc(-1 * var(--space-md));padding:var(--space-md)}}.footer-columns{display:flex;gap:var(--space-xl);flex-wrap:wrap;justify-content:center}.footer-column{display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);min-width:120px}@media (max-width: 480px){.footer-columns{gap:var(--space-sm)}.footer-column{min-width:90px;gap:var(--space-xs);font-size:var(--font-size-small)}}.header-session{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap;margin-inline-start:auto;align-self:flex-start}.header-session .session-email{font-size:var(--font-size-small);opacity:.9}.header-menu{position:relative}.header-menu-toggle{position:relative;background:none;border:none;color:inherit;font-size:1.5rem;line-height:1;padding:var(--space-sm);border-radius:var(--radius-sm);cursor:pointer}.header-menu-toggle:hover{background:#ffffff26}.menu-badge{position:absolute;top:2px;inset-inline-end:2px;width:9px;height:9px;border-radius:50%;background:var(--color-accent);border:1.5px solid var(--color-primary)}.header-bell{position:relative;background:none;border:none;color:inherit;font-size:1.25rem;line-height:1;padding:var(--space-sm);border-radius:var(--radius-sm);cursor:pointer}.header-bell:hover{background:#ffffff26}.header-bell-badge{position:absolute;top:0;inset-inline-end:0;background:var(--color-accent);color:var(--color-text-on-accent);border:1.5px solid var(--color-primary);border-radius:999px;min-width:16px;padding:0 4px;font-size:.65rem;font-weight:700;line-height:1.4;text-align:center}.menu-item-badge{float:inline-end;background:var(--color-accent);color:var(--color-text-on-accent);border-radius:999px;padding:1px 7px;font-size:.7rem;font-weight:700;margin-inline-start:var(--space-sm)}.header-menu-dropdown{position:absolute;top:calc(100% + var(--space-xs));inset-inline-end:0;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 4px 16px #0003;min-width:200px;overflow:hidden;z-index:50}.header-menu-item{display:block;width:100%;text-align:start;padding:var(--space-md) var(--space-lg);background:var(--color-surface);color:var(--color-text-primary);border:none;font-size:var(--font-size-body);cursor:pointer}.header-menu-item:hover{background:var(--color-background)}.header-menu-item.active{color:var(--color-primary);font-weight:600}.menu-bar-group{position:relative}.menu-bar-dropdown{position:absolute;top:calc(100% + var(--space-xs));inset-inline-start:0;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 4px 16px #0003;min-width:180px;overflow:hidden;z-index:50}.autocomplete-wrapper{position:relative}.autocomplete-list{position:absolute;top:calc(100% + var(--space-xs));inset-inline:0;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 4px 16px #0003;max-height:220px;overflow-y:auto;z-index:50}.card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-lg);margin-bottom:var(--space-lg)}.home-promo-image-frame{aspect-ratio:2 / 3;overflow:hidden;border-radius:var(--radius-md)}.home-promo-image{display:block;width:100%;height:100%;object-fit:cover}.auth-forms{display:flex;gap:var(--space-lg);flex-wrap:wrap}.auth-forms .card{flex:1;min-width:260px}.auth-page{max-width:480px;margin:var(--space-xl) auto 0}label{display:block;margin-bottom:var(--space-sm);font-size:var(--font-size-small);color:var(--color-text-secondary)}.field-input,input[type],select,textarea{display:block;width:100%;padding:10px 12px;margin-top:var(--space-xs);border:1px solid var(--color-divider);border-radius:var(--radius-sm);font-size:var(--font-size-body);color:var(--color-text-primary);background:var(--color-surface);transition:border-color .12s ease}input[type]:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-primary);border-width:2px;padding:9px 11px}.field-error{color:var(--color-error);font-size:var(--font-size-small);font-weight:600;margin:0 0 var(--space-sm)}.success-banner{background:var(--color-success-bg);color:var(--color-success-text);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);font-weight:600;margin:0 0 var(--space-sm)}.captcha-image-row{display:flex;align-items:center;gap:var(--space-sm);margin-top:var(--space-xs)}.captcha-image{width:160px;height:60px;border:1px solid var(--color-divider);border-radius:var(--radius-sm)}.captcha-image-loading{background:var(--color-divider)}.checkbox-label{display:flex;align-items:center;gap:var(--space-sm)}.checkbox-label input[type=checkbox],.checkbox-label input[type=radio]{width:auto;margin:0;accent-color:var(--color-accent)}.search-bar{display:flex;align-items:flex-end;gap:var(--space-sm);flex-wrap:wrap}.search-bar .field-label-text{font-weight:700;color:var(--color-text-primary)}.date-field-placeholder{display:none}.search-bar-field{flex:1 1 160px;min-width:140px}.search-bar-field-date{flex:0 0 150px;min-width:0}.search-bar-field-seats{flex:0 0 72px;min-width:0}.search-bar-field-seats input{text-align:center}.search-bar-swap,.search-bar-submit,.search-bar-clear{flex:0 0 auto;margin-bottom:var(--space-sm)}@media (max-width: 640px){.search-bar{flex-direction:column;align-items:stretch}.search-bar-field{flex-basis:auto;min-width:0}.search-bar-field-date,.search-bar-field-seats{flex-basis:auto}.search-bar .field-label-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.date-field-wrapper{position:relative}.date-field-placeholder{display:block;position:absolute;inset-inline-start:10px;top:-8px;background:var(--color-surface);padding:0 4px;color:var(--color-text-secondary);font-size:.7rem;pointer-events:none}.date-field-format-hint{position:absolute;inset-inline-start:12px;top:50%;transform:translateY(-50%);color:var(--color-text-secondary);font-size:var(--font-size-body);pointer-events:none}.search-bar-swap.btn-icon{align-self:flex-end;width:28px;height:28px;margin-block:-14px;margin-inline:0 var(--space-md);z-index:1}.search-bar-submit,.search-bar-clear{width:100%;margin-bottom:0}}.btn{display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:10px 20px;min-height:44px;border:none;border-radius:var(--radius-md);font-size:var(--font-size-body);font-weight:600;text-transform:uppercase;letter-spacing:.02em;transition:transform 80ms ease,box-shadow .12s ease,filter .12s ease}.btn:active{transform:scale(.97);filter:brightness(.95)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-primary{background:var(--color-accent);color:var(--color-text-on-accent)}.btn-secondary{background:var(--color-surface);color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-header{background:var(--color-primary);color:var(--color-text-on-primary)}.btn-compact{padding:6px 12px;min-height:32px;font-size:var(--font-size-small)}.btn-icon{width:40px;height:40px;min-height:0;padding:0;border-radius:50%;background:var(--color-surface);color:var(--color-primary);border:1.5px solid var(--color-primary);font-size:1.1rem}.tabs{display:flex;gap:var(--space-lg);margin-bottom:var(--space-lg);flex-wrap:wrap;border-bottom:1px solid var(--color-divider)}.tab-button{cursor:pointer;background:none;color:var(--color-text-secondary);border:none;border-bottom:3px solid transparent;margin-bottom:-1px;padding:var(--space-sm) var(--space-xs);font-size:var(--font-size-small);font-weight:600}.tab-button:hover{color:var(--color-primary)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.tab-button:disabled{cursor:not-allowed;color:var(--color-text-secondary);opacity:.5}.tab-button:disabled:hover{color:var(--color-text-secondary)}.row-card{display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);flex-wrap:wrap;padding:var(--space-md);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);margin-bottom:var(--space-sm);transition:background .12s ease,border-color .12s ease}.row-card:hover:not(.search-result-row-active):not(.search-result-row-soldout):not(.check-in-open){background:var(--color-background);border-color:var(--color-primary);cursor:pointer}.row-actions{display:flex;gap:var(--space-xs);flex-wrap:wrap}.section-divider{border:none;border-top:1px solid var(--color-divider);margin:var(--space-md) 0}.ticket-group-card{background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-sm);margin-bottom:var(--space-sm)}.ticket-group-card--multi{border-color:var(--color-primary);border-width:2px}.ticket-group-badge{display:inline-block;align-self:flex-start;font-size:var(--font-size-small);font-weight:600;padding:3px 10px;border-radius:999px;background:var(--color-primary);color:var(--color-text-on-primary)}.ticket-box{display:flex;align-items:flex-start;gap:var(--space-lg);background:var(--color-background);border:1px dashed var(--color-divider);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md)}.ticket-box:not(:last-child){margin-bottom:var(--space-sm)}.ticket-qr{flex-shrink:0}.ticket-columns{flex:1;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xs) var(--space-lg);line-height:1.3}.ticket-field-label{display:block;color:var(--color-text-secondary);font-size:var(--font-size-small)}@media (max-width: 480px){.ticket-box{flex-direction:column;align-items:center}.ticket-columns{grid-template-columns:1fr}}.ticket-columns.ticket-columns-compact{grid-template-columns:repeat(3,1fr)}@media (max-width: 480px){.ticket-columns.ticket-columns-compact{grid-template-columns:1fr}}.search-result-row{align-items:center;transition:background .12s ease,border-color .12s ease}.search-result-row:hover:not(.search-result-row-active):not(.search-result-row-soldout){background:var(--color-background);border-color:var(--color-primary);cursor:pointer}.search-result-row-active{background:var(--color-seat-selected);border-color:var(--color-seat-selected-border);border-width:2px}.search-result-row-soldout{background:#fdecea;border-color:var(--color-error)}.sold-out-banner{flex:1 0 100%;order:-1;font-weight:700;font-size:var(--font-size-small);text-transform:uppercase;letter-spacing:.02em;color:var(--color-error)}.sold-out-badge{font-weight:700;color:var(--color-error)}.search-result-price-title{font-size:var(--font-size-small);font-weight:700;text-transform:uppercase;letter-spacing:.02em;color:var(--color-text-secondary)}.search-result-company,.search-result-trip,.search-result-price{display:flex;flex-direction:column;gap:var(--space-xs)}.search-result-company{flex:1 1 160px}.search-result-trip{flex:2 1 240px}.search-result-price{flex:0 0 auto;align-items:flex-end;text-align:end}@media (max-width: 640px){.search-result-row{flex-direction:column;align-items:stretch}.search-result-company,.search-result-trip,.search-result-price{flex:0 1 auto}.search-result-price{align-items:flex-start;text-align:start}}.conversation-card{flex-direction:column;align-items:stretch}.conversation-card.unread{border-left:4px solid var(--color-accent)}.conversation-card.unread>strong{color:var(--color-primary)}.conversation-message{margin-top:var(--space-sm)}.conversation-message.unread .hint{font-weight:700;color:var(--color-text-primary)}.conversation-reply-form{margin-top:var(--space-md)}.inline-edit-form{display:flex;align-items:flex-end;gap:var(--space-md);flex-wrap:wrap;width:100%}.inline-edit-form label{margin-bottom:0;min-width:140px}.schedule-draft{flex-direction:column;align-items:stretch;background:var(--color-draft-bg);border:2px dashed var(--color-accent-dark)}.payment-info-callout{background:var(--color-draft-bg);border:1px solid var(--color-accent-dark);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-md);color:var(--color-draft-text)}.draft-label{font-weight:600;color:var(--color-draft-text);margin-bottom:var(--space-xs)}.section-heading{font-size:var(--font-size-small);color:var(--color-text-secondary);margin:var(--space-lg) 0 var(--space-xs)}.status-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--color-background);color:var(--color-text-secondary)}.fare-type-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--color-accent);color:#fff}.payment-status-badge{display:inline-block;font-size:.7rem;font-weight:600;padding:3px 10px;border-radius:999px}.payment-status-badge--pending{background:var(--color-accent);color:#fff}.payment-status-badge--paid{background:var(--color-success-bg);color:var(--color-success-text)}.payment-proof-thumbnail{display:block;max-width:240px;max-height:240px;margin-top:var(--space-sm);border:1px solid var(--color-divider);border-radius:4px}.payment-proof-thumbnail-button{display:inline-block;padding:0;border:none;background:none;cursor:zoom-in}.payment-proof-enlarged{display:block;max-width:100%;max-height:80vh;border-radius:4px}.status-link{cursor:pointer;background:var(--color-background);color:var(--color-text-primary);border:1px solid var(--color-divider);border-radius:999px;font-size:var(--font-size-small);padding:6px 14px}.status-link:hover{background:var(--color-divider)}.status-link-active,.status-link-active:hover{background:var(--color-seat-selected);border-color:var(--color-seat-selected-border);color:var(--color-text-primary);font-weight:700}.info-pill{display:inline-block;background:var(--color-seat-selected);color:var(--color-primary-dark);border-radius:999px;padding:6px 14px;font-weight:600;font-size:var(--font-size-small)}.error-banner{background:#fdecea;border:1px solid var(--color-error);color:var(--color-error);padding:var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-lg)}.pending-banner{background:var(--color-seat-held);border:1px solid var(--color-accent-dark);color:var(--color-draft-text);padding:var(--space-md);border-radius:var(--radius-sm);margin-bottom:var(--space-lg)}.cross-link-banner{font-size:var(--font-size-small);color:var(--color-text-secondary)}.cross-link-banner a{font-weight:600}.tooltip-wrapper{position:relative;display:inline-block}.tooltip-bubble{position:absolute;inset-inline-start:0;bottom:100%;margin-bottom:var(--space-sm);background:var(--color-text-primary);color:var(--color-text-on-primary);padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);font-size:var(--font-size-small);line-height:1.4;width:240px;box-shadow:0 4px 12px #0003;z-index:20;animation:tooltip-fade-in .15s ease-out}.tooltip-bubble:after{content:"";position:absolute;top:100%;inset-inline-start:var(--space-lg);border:6px solid transparent;border-top-color:var(--color-text-primary)}@keyframes tooltip-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;padding:var(--space-lg);z-index:100}.modal-card{position:relative;background:var(--color-background);border-radius:var(--radius-lg);padding:var(--space-xl);max-width:640px;width:100%;max-height:90vh;overflow-y:auto}.modal-card--wide{max-width:1100px}.modal-card--tall{min-height:min(640px,90vh)}.multi-select{position:relative;min-width:240px}.multi-select-toggle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);width:100%;text-align:start;background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-sm) var(--space-md);cursor:pointer}.multi-select-panel{position:absolute;top:calc(100% + var(--space-xs));inset-inline-start:0;width:max(100%,360px);max-width:90vw;background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);box-shadow:0 4px 16px #0003;padding:var(--space-sm) var(--space-md);z-index:50}.multi-select-options{max-height:220px;overflow-y:auto}.multi-select-option{width:100%;padding:var(--space-xs) 0}.modal-reason{background:var(--color-primary);color:var(--color-text-on-primary);font-weight:600;padding:var(--space-md) var(--space-xl);margin:calc(-1 * var(--space-xl)) calc(-1 * var(--space-xl)) var(--space-lg);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.modal-card:has(.modal-reason) .modal-close{color:var(--color-text-on-primary)}.modal-close{position:absolute;top:var(--space-md);inset-inline-end:var(--space-md);background:transparent;color:var(--color-text-primary);border:none;font-size:1.4rem;line-height:1;padding:4px 8px;cursor:pointer}.schedule-detail-header h2{margin-bottom:var(--space-xs)}.schedule-detail-trip{display:flex;align-items:baseline;gap:var(--space-sm);flex-wrap:wrap;margin-bottom:var(--space-xs)}.schedule-detail-trip .hint{margin:0}.schedule-detail-header>p.hint{margin-bottom:var(--space-lg)}.schedule-detail-notes{background:var(--color-seat-selected);border:1px solid var(--color-seat-selected-border);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);margin-bottom:var(--space-lg)}.schedule-detail-notes-title{margin:0 0 var(--space-sm);font-size:var(--font-size-small);font-weight:700;text-transform:uppercase;letter-spacing:.03em;color:var(--color-primary-dark)}.schedule-detail-notes p{margin:0 0 var(--space-xs);color:var(--color-text-primary)}.schedule-detail-notes p:last-child{margin-bottom:0}.schedule-detail-notes strong{color:var(--color-primary-dark)}.schedule-detail-footer{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;margin-top:var(--space-lg);padding-top:var(--space-lg);border-top:1px solid var(--color-divider)}.schedule-detail-total{font-weight:600}.fare-options{display:flex;gap:var(--space-sm);flex-wrap:wrap;margin:0 0 var(--space-lg)}.fare-option{flex:1 1 220px;display:flex;align-items:center;gap:var(--space-sm);padding:var(--space-md);margin-bottom:0;background:var(--color-surface);border:1.5px solid var(--color-divider);border-radius:var(--radius-md);cursor:pointer;transition:border-color .12s ease,background .12s ease}.fare-option:hover{border-color:var(--color-primary)}.fare-option.selected{background:var(--color-seat-selected);border-color:var(--color-seat-selected-border)}.fare-option input[type=radio]{width:auto;margin:0;flex:0 0 auto;accent-color:var(--color-primary)}.fare-option-body{display:flex;flex-direction:column;flex:1}.fare-option-name{font-weight:600;color:var(--color-text-primary)}.fare-option-desc{font-size:var(--font-size-small);color:var(--color-text-secondary)}.fare-option-price{font-weight:700;color:var(--color-primary);white-space:nowrap}.seat-legend{display:flex;gap:var(--space-md);flex-wrap:wrap;margin:0 0 var(--space-sm);font-size:var(--font-size-small);color:var(--color-text-secondary)}.seat-legend-item{display:flex;align-items:center;gap:var(--space-xs)}.seat-legend-swatch{width:14px;height:14px;border-radius:var(--radius-sm);border:1px solid var(--color-divider);display:inline-block}.seat-legend-swatch.AVAILABLE{background:var(--color-seat-available)}.seat-legend-swatch.HELD{background:var(--color-seat-held)}.seat-legend-swatch.BOOKED{background:var(--color-seat-unavailable)}.seat-legend-swatch.selected{background:var(--color-seat-selected);border-color:var(--color-seat-selected-border)}.seat-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:var(--space-sm);margin:var(--space-lg) 0}@media (max-width: 480px){.seat-grid{grid-template-columns:repeat(5,1fr)}}.seat{padding:10px 4px;text-align:center;border-radius:var(--radius-sm);border:1px solid var(--color-divider);cursor:pointer;font-size:var(--font-size-small);transition:transform 80ms ease}.seat:active{transform:scale(.95)}.seat.AVAILABLE{background:var(--color-seat-available)}.seat.HELD{background:var(--color-seat-held);cursor:not-allowed}.seat.BOOKED{background:var(--color-seat-unavailable);color:var(--color-text-secondary);cursor:not-allowed}.seat.selected{background:var(--color-seat-selected);border-color:var(--color-seat-selected-border);border-width:2px}.card-banner{background:var(--color-primary);color:var(--color-text-on-primary);font-weight:600;padding:var(--space-md) var(--space-lg);margin:calc(-1 * var(--space-lg)) calc(-1 * var(--space-lg)) var(--space-lg);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.highlight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md);margin:0;padding:0;list-style:none}.highlight-item{border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-md);color:var(--color-text-secondary)}.highlight-item strong{display:block;color:var(--color-text-primary);margin-bottom:var(--space-xs)}.highlight-item--clickable{cursor:pointer;transition:background .12s ease,border-color .12s ease}.highlight-item--clickable:hover,.highlight-item--clickable:focus-visible{background:var(--color-background);border-color:var(--color-primary)}.offer-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--space-sm);margin:0 0 var(--space-sm)}.offer-box{display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-xs);padding:var(--space-sm);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-md);font-size:var(--font-size-small)}.offer-box .row-actions{justify-content:flex-end}.offer-owner{color:var(--color-primary-dark);font-weight:600}.offer-owner-email{color:var(--color-text-secondary);font-weight:400}@media (max-width: 640px){.auth-forms{gap:var(--space-sm)}.auth-forms .card{min-width:0;flex:1 0 100%;padding:var(--space-sm)}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:var(--space-md)}.stat-tile{border:1px solid var(--color-divider);border-radius:var(--radius-md);padding:var(--space-md);text-align:center}.stat-tile .value{font-size:1.3rem;font-weight:700;color:var(--color-primary)}.stat-tile .label{font-size:var(--font-size-small);color:var(--color-text-secondary)}.pagination-bar{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);flex-wrap:wrap;padding:var(--space-md);margin-top:var(--space-sm);margin-bottom:var(--space-lg);background:var(--color-surface);border:1px solid var(--color-divider);border-radius:var(--radius-lg)}.pagination-info{font-size:var(--font-size-small);color:var(--color-text-secondary)}.pagination-controls{display:flex;align-items:center;gap:var(--space-sm);flex-wrap:wrap}.pagination-page{font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap}.pagination-pagesize{display:flex;align-items:center;gap:var(--space-xs);margin-bottom:0;font-size:var(--font-size-small);color:var(--color-text-secondary);white-space:nowrap}.pagination-pagesize select{display:inline-block;width:auto;margin-top:0;padding:4px 8px}@media (max-width: 480px){.pagination-bar{justify-content:center;text-align:center}}.seats-sold-full{display:inline-block;background:var(--color-seat-held);color:var(--color-accent-dark);font-weight:600;padding:4px 10px;border-radius:var(--radius-sm);margin:0 0 var(--space-sm)}.row-card.check-in-open{border-left:4px solid var(--color-primary-dark);background:var(--color-primary);color:var(--color-text-on-primary)}.row-card.check-in-open .hint{color:var(--color-text-on-primary);opacity:.85}.btn.btn-check-in-current{background:var(--color-surface);color:var(--color-primary);font-weight:700;border:none}.schedule-table,.bus-table,.route-table{width:100%;border-collapse:collapse;margin-bottom:var(--space-md)}.schedule-table th,.bus-table th,.route-table th{text-align:left;font-size:var(--font-size-small);font-weight:600;color:var(--color-text-secondary);padding:0;border-bottom:2px solid var(--color-divider)}.schedule-table th.static-header{padding:var(--space-sm) var(--space-md)}.schedule-table .sort-header-button,.bus-table .sort-header-button,.route-table .sort-header-button{display:flex;align-items:center;gap:var(--space-xs);width:100%;padding:var(--space-sm) var(--space-md);border:none;background:none;font:inherit;font-weight:600;color:inherit;text-align:left;cursor:pointer}.schedule-table .sort-header-button:hover,.bus-table .sort-header-button:hover,.route-table .sort-header-button:hover,.schedule-table .sort-header-button:focus-visible,.bus-table .sort-header-button:focus-visible,.route-table .sort-header-button:focus-visible{color:var(--color-primary)}.schedule-table td,.bus-table td,.route-table td{padding:var(--space-sm) var(--space-md);border-bottom:2px solid var(--color-divider);vertical-align:middle}.schedule-table tbody tr,.bus-table tbody tr,.route-table tbody tr{cursor:pointer;transition:background .12s ease}.schedule-table tbody tr:hover:not(.check-in-open),.bus-table tbody tr:hover,.route-table tbody tr:hover{background:var(--color-background)}.schedule-table tbody tr.check-in-open,.schedule-table tbody tr.check-in-open:hover{background:var(--color-primary);color:var(--color-text-on-primary)}.schedule-table tbody tr.schedule-summary-row,.schedule-table tbody tr.schedule-summary-row:hover{background:var(--color-seat-selected)}@media (max-width: 640px){.schedule-table thead,.bus-table thead,.route-table thead{display:none}.schedule-table,.schedule-table tbody,.schedule-table tr,.schedule-table td,.bus-table,.bus-table tbody,.bus-table tr,.bus-table td,.route-table,.route-table tbody,.route-table tr,.route-table td{display:block;width:100%}.schedule-table tr,.bus-table tr,.route-table tr{margin-bottom:var(--space-sm);border:1px solid var(--color-divider);border-radius:var(--radius-lg);padding:var(--space-sm) var(--space-md)}.schedule-table td,.bus-table td,.route-table td{border-bottom:none;padding:var(--space-xs) 0}.schedule-table td:before,.bus-table td:before,.route-table td:before{content:attr(data-label);display:block;font-weight:600;font-size:var(--font-size-small);color:var(--color-text-secondary)}}.empty-state{color:var(--color-text-secondary);padding:var(--space-lg);text-align:center}.spinner{width:22px;height:22px;border:3px solid var(--color-divider);border-top-color:var(--color-accent);border-radius:50%;animation:spin .7s linear infinite;margin:var(--space-md) auto}@keyframes spin{to{transform:rotate(360deg)}}.wip-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--space-md);background:var(--color-background)}.wip-page img{max-width:100%;max-height:100vh;height:auto}.rich-text h3,.rich-text h4,.rich-text h5{margin:var(--space-md) 0 var(--space-xs);line-height:1.3}.rich-text h3{font-size:1.5rem}.rich-text h4{font-size:1.25rem}.rich-text h5{font-size:1.1rem}.rich-text p{margin:0 0 var(--space-sm)}.rich-text ul,.rich-text ol{margin:0 0 var(--space-sm);padding-inline-start:var(--space-xl)}.rich-text hr{border:none;border-top:1px solid var(--color-divider);margin:var(--space-md) 0}.app-header--corner-session{position:relative}.app-header--corner-session .header-session{position:absolute;top:var(--space-sm);inset-inline-end:var(--space-md);max-width:calc(100% - 2 * var(--space-md));justify-content:flex-end;margin-inline-start:0;z-index:2}@media (max-width: 480px){.app-header--corner-session{padding-top:calc(var(--space-lg) + 2rem)}}@font-face{font-family:Noto Nastaliq Urdu;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/NotoNastaliqUrdu-BVDOj1dq.woff2) format("woff2");unicode-range:U+0600-06FF,U+0750-077F,U+0870-088E,U+0890-0891,U+0897-08E1,U+08E3-08FF,U+200C-200E,U+2010-2011,U+204F,U+2E41,U+FB50-FDFF,U+FE70-FE74,U+FE76-FEFC,U+102E0-102FB,U+10E60-10E7E,U+10EC2-10EC4,U+10EFC-10EFF,U+1EE00-1EE03,U+1EE05-1EE1F,U+1EE21-1EE22,U+1EE24,U+1EE27,U+1EE29-1EE32,U+1EE34-1EE37,U+1EE39,U+1EE3B,U+1EE42,U+1EE47,U+1EE49,U+1EE4B,U+1EE4D-1EE4F,U+1EE51-1EE52,U+1EE54,U+1EE57,U+1EE59,U+1EE5B,U+1EE5D,U+1EE5F,U+1EE61-1EE62,U+1EE64,U+1EE67-1EE6A,U+1EE6C-1EE72,U+1EE74-1EE77,U+1EE79-1EE7C,U+1EE7E,U+1EE80-1EE89,U+1EE8B-1EE9B,U+1EEA1-1EEA3,U+1EEA5-1EEA9,U+1EEAB-1EEBB,U+1EEF0-1EEF1}:lang(ur){font-family:Noto Nastaliq Urdu,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}.passenger-header{padding-left:var(--space-xs)}.passenger-header .app-header-logo{height:9.5rem}.passenger-header{position:relative}.passenger-header .header-session{position:absolute;top:var(--space-sm);inset-inline-end:var(--space-md);max-width:calc(100% - 2 * var(--space-md));justify-content:flex-end;margin-inline-start:0;z-index:2}@media (max-width: 480px){.passenger-header{padding-top:calc(var(--space-lg) + 2rem)}}@media (max-width: 480px){.passenger-header .app-header-logo{height:6.5rem}}
