:root,:host{--fa-font-solid: normal 900 1em/1 "Font Awesome 6 Free";--fa-font-regular: normal 400 1em/1 "Font Awesome 6 Free";--fa-font-light: normal 300 1em/1 "Font Awesome 6 Pro";--fa-font-thin: normal 100 1em/1 "Font Awesome 6 Pro";--fa-font-duotone: normal 900 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-regular: normal 400 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-light: normal 300 1em/1 "Font Awesome 6 Duotone";--fa-font-duotone-thin: normal 100 1em/1 "Font Awesome 6 Duotone";--fa-font-brands: normal 400 1em/1 "Font Awesome 6 Brands";--fa-font-sharp-solid: normal 900 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-regular: normal 400 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-light: normal 300 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-thin: normal 100 1em/1 "Font Awesome 6 Sharp";--fa-font-sharp-duotone-solid: normal 900 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-regular: normal 400 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-light: normal 300 1em/1 "Font Awesome 6 Sharp Duotone";--fa-font-sharp-duotone-thin: normal 100 1em/1 "Font Awesome 6 Sharp Duotone"}svg.svg-inline--fa:not(:root),svg.svg-inline--fa:not(:host){overflow:visible;box-sizing:content-box}.svg-inline--fa{display:var(--fa-display, inline-block);height:1em;overflow:visible;vertical-align:-.125em}.svg-inline--fa.fa-2xs{vertical-align:.1em}.svg-inline--fa.fa-xs{vertical-align:0em}.svg-inline--fa.fa-sm{vertical-align:-.07143em}.svg-inline--fa.fa-lg{vertical-align:-.2em}.svg-inline--fa.fa-xl{vertical-align:-.25em}.svg-inline--fa.fa-2xl{vertical-align:-.3125em}.svg-inline--fa.fa-pull-left{margin-right:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-pull-right{margin-left:var(--fa-pull-margin, .3em);width:auto}.svg-inline--fa.fa-li{width:var(--fa-li-width, 2em);top:.25em}.svg-inline--fa.fa-fw{width:var(--fa-fw-width, 1.25em)}.fa-layers svg.svg-inline--fa{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0}.fa-layers-counter,.fa-layers-text{display:inline-block;position:absolute;text-align:center}.fa-layers{display:inline-block;height:1em;position:relative;text-align:center;vertical-align:-.125em;width:1em}.fa-layers svg.svg-inline--fa{transform-origin:center center}.fa-layers-text{left:50%;top:50%;transform:translate(-50%,-50%);transform-origin:center center}.fa-layers-counter{background-color:var(--fa-counter-background-color, #ff253a);border-radius:var(--fa-counter-border-radius, 1em);box-sizing:border-box;color:var(--fa-inverse, #fff);line-height:var(--fa-counter-line-height, 1);max-width:var(--fa-counter-max-width, 5em);min-width:var(--fa-counter-min-width, 1.5em);overflow:hidden;padding:var(--fa-counter-padding, .25em .5em);right:var(--fa-right, 0);text-overflow:ellipsis;top:var(--fa-top, 0);transform:scale(var(--fa-counter-scale, .25));transform-origin:top right}.fa-layers-bottom-right{bottom:var(--fa-bottom, 0);right:var(--fa-right, 0);top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom right}.fa-layers-bottom-left{bottom:var(--fa-bottom, 0);left:var(--fa-left, 0);right:auto;top:auto;transform:scale(var(--fa-layers-scale, .25));transform-origin:bottom left}.fa-layers-top-right{top:var(--fa-top, 0);right:var(--fa-right, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top right}.fa-layers-top-left{left:var(--fa-left, 0);right:auto;top:var(--fa-top, 0);transform:scale(var(--fa-layers-scale, .25));transform-origin:top left}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-2xs{font-size:.625em;line-height:.1em;vertical-align:.225em}.fa-xs{font-size:.75em;line-height:.08333em;vertical-align:.125em}.fa-sm{font-size:.875em;line-height:.07143em;vertical-align:.05357em}.fa-lg{font-size:1.25em;line-height:.05em;vertical-align:-.075em}.fa-xl{font-size:1.5em;line-height:.04167em;vertical-align:-.125em}.fa-2xl{font-size:2em;line-height:.03125em;vertical-align:-.1875em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:var(--fa-li-margin, 2.5em);padding-left:0}.fa-ul>li{position:relative}.fa-li{left:calc(-1 * var(--fa-li-width, 2em));position:absolute;text-align:center;width:var(--fa-li-width, 2em);line-height:inherit}.fa-border{border-color:var(--fa-border-color, #eee);border-radius:var(--fa-border-radius, .1em);border-style:var(--fa-border-style, solid);border-width:var(--fa-border-width, .08em);padding:var(--fa-border-padding, .2em .25em .15em)}.fa-pull-left{float:left;margin-right:var(--fa-pull-margin, .3em)}.fa-pull-right{float:right;margin-left:var(--fa-pull-margin, .3em)}.fa-beat{animation-name:fa-beat;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-bounce{animation-name:fa-bounce;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.28, .84, .42, 1))}.fa-fade{animation-name:fa-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-beat-fade{animation-name:fa-beat-fade;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, cubic-bezier(.4, 0, .6, 1))}.fa-flip{animation-name:fa-flip;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, ease-in-out)}.fa-shake{animation-name:fa-shake;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin{animation-name:fa-spin;animation-delay:var(--fa-animation-delay, 0s);animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 2s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, linear)}.fa-spin-reverse{--fa-animation-direction: reverse}.fa-pulse,.fa-spin-pulse{animation-name:fa-spin;animation-direction:var(--fa-animation-direction, normal);animation-duration:var(--fa-animation-duration, 1s);animation-iteration-count:var(--fa-animation-iteration-count, infinite);animation-timing-function:var(--fa-animation-timing, steps(8))}@media(prefers-reduced-motion:reduce){.fa-beat,.fa-bounce,.fa-fade,.fa-beat-fade,.fa-flip,.fa-pulse,.fa-shake,.fa-spin,.fa-spin-pulse{animation-delay:-1ms;animation-duration:1ms;animation-iteration-count:1;transition-delay:0s;transition-duration:0s}}@keyframes fa-beat{0%,90%{transform:scale(1)}45%{transform:scale(var(--fa-beat-scale, 1.25))}}@keyframes fa-bounce{0%{transform:scale(1) translateY(0)}10%{transform:scale(var(--fa-bounce-start-scale-x, 1.1),var(--fa-bounce-start-scale-y, .9)) translateY(0)}30%{transform:scale(var(--fa-bounce-jump-scale-x, .9),var(--fa-bounce-jump-scale-y, 1.1)) translateY(var(--fa-bounce-height, -.5em))}50%{transform:scale(var(--fa-bounce-land-scale-x, 1.05),var(--fa-bounce-land-scale-y, .95)) translateY(0)}57%{transform:scale(1) translateY(var(--fa-bounce-rebound, -.125em))}64%{transform:scale(1) translateY(0)}to{transform:scale(1) translateY(0)}}@keyframes fa-fade{50%{opacity:var(--fa-fade-opacity, .4)}}@keyframes fa-beat-fade{0%,to{opacity:var(--fa-beat-fade-opacity, .4);transform:scale(1)}50%{opacity:1;transform:scale(var(--fa-beat-fade-scale, 1.125))}}@keyframes fa-flip{50%{transform:rotate3d(var(--fa-flip-x, 0),var(--fa-flip-y, 1),var(--fa-flip-z, 0),var(--fa-flip-angle, -180deg))}}@keyframes fa-shake{0%{transform:rotate(-15deg)}4%{transform:rotate(15deg)}8%,24%{transform:rotate(-18deg)}12%,28%{transform:rotate(18deg)}16%{transform:rotate(-22deg)}20%{transform:rotate(22deg)}32%{transform:rotate(-12deg)}36%{transform:rotate(12deg)}40%,to{transform:rotate(0)}}@keyframes fa-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.fa-rotate-90{transform:rotate(90deg)}.fa-rotate-180{transform:rotate(180deg)}.fa-rotate-270{transform:rotate(270deg)}.fa-flip-horizontal{transform:scaleX(-1)}.fa-flip-vertical{transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{transform:scale(-1)}.fa-rotate-by{transform:rotate(var(--fa-rotate-angle, 0))}.fa-stack{display:inline-block;vertical-align:middle;height:2em;position:relative;width:2.5em}.fa-stack-1x,.fa-stack-2x{bottom:0;left:0;margin:auto;position:absolute;right:0;top:0;z-index:var(--fa-stack-z-index, auto)}.svg-inline--fa.fa-stack-1x{height:1em;width:1.25em}.svg-inline--fa.fa-stack-2x{height:2em;width:2.5em}.fa-inverse{color:var(--fa-inverse, #fff)}.sr-only,.fa-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.sr-only-focusable:not(:focus),.fa-sr-only-focusable:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.svg-inline--fa .fa-primary{fill:var(--fa-primary-color, currentColor);opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa .fa-secondary{fill:var(--fa-secondary-color, currentColor);opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-primary{opacity:var(--fa-secondary-opacity, .4)}.svg-inline--fa.fa-swap-opacity .fa-secondary{opacity:var(--fa-primary-opacity, 1)}.svg-inline--fa mask .fa-primary,.svg-inline--fa mask .fa-secondary{fill:#000}:root{--ak-sidebar-bg:#0f172a;--ak-sidebar-hover:#1e293b;--ak-sidebar-active:#0284c7;--ak-brand:#0284c7;--ak-border:#e2e8f0;--ak-bg-light:#f8fafc;--ak-text-main:#0f172a;--ak-text-muted:#64748b}*{box-sizing:border-box}body{margin:0;font-family:Inter,sans-serif;background:var(--ak-bg-light);color:var(--ak-text-main);overflow-x:hidden}.font-mono{font-family:JetBrains Mono,monospace}#app-container{display:flex;height:100vh;overflow:hidden}#sidebar{width:260px;min-width:260px;background:var(--ak-sidebar-bg);color:#94a3b8;display:flex;flex-direction:column;border-right:1px solid rgba(255,255,255,.08);z-index:1000}.sidebar-brand{height:60px;padding:0 1.1rem;display:flex;align-items:center;gap:.65rem;color:#fff;text-decoration:none;font-size:1rem;font-weight:700;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand img{width:34px;height:34px;object-fit:contain;border-radius:6px}.sidebar-nav{flex:1;overflow-y:auto;padding:.75rem .5rem}.nav-category{font-size:.67rem;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:#475569;padding:.8rem .75rem .3rem}.sidebar-link{display:flex;align-items:center;gap:.7rem;padding:.55rem .75rem;border-radius:6px;color:#94a3b8;text-decoration:none;font-size:.84rem;font-weight:500;margin-bottom:2px;transition:.15s}.sidebar-link:hover{background:var(--ak-sidebar-hover);color:#f1f5f9}.sidebar-link i{font-size:1rem}.sidebar-foot{padding:1rem;border-top:1px solid rgba(255,255,255,.08);background:#090d16}.logout-link{display:block;color:#94a3b8;text-decoration:none;font-size:.8rem;margin-top:.65rem}.logout-link:hover{color:#fff}#content-area{flex:1;display:flex;flex-direction:column;height:100vh;overflow:hidden}.top-header{height:60px;background:#fff;border-bottom:1px solid var(--ak-border);padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between}.main-body{flex:1;overflow-y:auto;padding:1.5rem}.ak-card{background:#fff;border:1px solid var(--ak-border);border-radius:8px;box-shadow:0 1px 3px #00000005;margin-bottom:1.25rem}.table th{font-size:.72rem;text-transform:uppercase;letter-spacing:.45px;color:var(--ak-text-muted);background:#f8fafc;border-bottom:2px solid var(--ak-border)}.table td{vertical-align:middle}.metric{border-left:3px solid var(--ak-brand)}.metric .value{font-size:1.45rem;font-weight:700}.bus-grid{background:#f1f5f9;border:2px dashed #cbd5e1;border-radius:10px;padding:1rem;display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:290px;margin:auto}.seat{height:42px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:700;cursor:pointer;border:1px solid #cbd5e1;background:#fff}.seat.sold{background:#cbd5e1;color:#64748b;cursor:not-allowed}.seat.selected{background:#0284c7;color:#fff;border-color:#0369a1}.seat.held{background:#fef08a;color:#854d0e;border-color:#facc15}.seat.aisle{visibility:hidden}.page-title{font-weight:700}.small-label{font-size:.72rem;text-transform:uppercase;color:#64748b;font-weight:700}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.sticky-panel{position:sticky;top:0}.action-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:.75rem}@media(max-width:900px){#sidebar{width:220px;min-width:220px}.main-body{padding:1rem}.top-header{padding:0 1rem}}@media(max-width:720px){#sidebar{display:none}.top-header{height:auto;min-height:60px}.main-body{padding:.75rem}.bus-grid{max-width:250px}}html[data-bs-theme=dark]{--ak-border:#334155;--ak-bg-light:#111827;--ak-text-main:#e2e8f0;--ak-text-muted:#94a3b8}html[data-bs-theme=dark] .ak-card,html[data-bs-theme=dark] .top-header{background:#1e293b;color:#e2e8f0}html[data-bs-theme=dark] .table th{background:#172033;color:#cbd5e1}html[data-bs-theme=dark] .small-label{color:#94a3b8}body.auth-page{min-height:100vh;min-height:100dvh;display:grid;place-items:center;padding:1.25rem;background:radial-gradient(ellipse at top,#e0f2fe,#f8fafc 48%,#eef2f7);color:#0f172a;overflow:auto}.auth-card{width:min(100%,440px);padding:2.25rem;background:#fff;border:1px solid #e2e8f0;border-radius:18px;box-shadow:0 20px 60px #0f172a1f}.auth-card.schema-notice{width:min(100%,640px)}.login-logo{display:block;width:190px;max-width:70%;height:88px;object-fit:contain;margin:0 auto 1.5rem}.auth-card h1{margin:0 0 .55rem;text-align:center;font-size:1.55rem;line-height:1.25;font-weight:750;letter-spacing:-.025em}.auth-card>p{margin:.6rem 0 1.1rem;color:#64748b;font-size:.94rem;line-height:1.6}.auth-card>p.auth-subtitle{text-align:center;margin-top:0;margin-bottom:1.5rem}.auth-card label{display:grid;gap:.45rem;color:#334155;font-size:.86rem;font-weight:600}.auth-card input[type=email],.auth-card input[type=password]{width:100%;height:46px;padding:0 .8rem;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font:inherit;font-weight:400;outline:none;transition:border-color .15s,box-shadow .15s}.auth-card input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c724}.auth-card .stack{display:grid;gap:1rem}.auth-card .btn.primary{display:inline-flex;min-height:46px;align-items:center;justify-content:center;padding:.7rem 1rem;border:0;border-radius:8px;background:#0369a1;color:#fff;text-decoration:none;font:inherit;font-weight:650;cursor:pointer;transition:background .15s,transform .15s}.auth-card .btn.primary:hover{background:#075985;transform:translateY(-1px)}.auth-card .alert.danger{padding:.7rem .85rem;border:1px solid #fecaca;border-radius:8px;background:#fef2f2;color:#b91c1c;font-size:.88rem}.schema-kicker{display:flex;align-items:center;gap:.5rem;margin-bottom:.65rem;color:#0369a1;font-size:.75rem;font-weight:750;letter-spacing:.08em;text-transform:uppercase}.schema-kicker:before{content:"";width:8px;height:8px;border-radius:50%;background:#f59e0b;box-shadow:0 0 0 4px #fef3c7}.schema-notice h1{text-align:left}.schema-notice .schema-copy{margin:.75rem 0 1.25rem}.schema-missing{display:flex;flex-wrap:wrap;gap:.55rem;margin:0 0 1.25rem;padding:0;list-style:none}.schema-missing li{padding:.4rem .65rem;border:1px solid #fed7aa;border-radius:7px;background:#fff7ed;color:#9a3412;font:600 .82rem JetBrains Mono,monospace}.schema-footnote{padding-top:1rem;border-top:1px solid #e2e8f0;color:#64748b!important;font-size:.84rem!important}.schema-notice .btn{width:100%;margin-top:.25rem}@media(max-width:520px){body.auth-page{padding:1rem}.auth-card{padding:1.5rem;border-radius:14px}.login-logo{height:72px;width:165px;margin-bottom:1.15rem}.auth-card h1{font-size:1.35rem}}.runtime-indicator{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;color:#15803d;white-space:nowrap}.runtime-offline{color:#b91c1c}.runtime-loading{color:#64748b}.runtime-realtime{color:#0369a1}body:not(.auth-page){overflow-x:hidden;overflow-y:auto}#app-container{height:auto;min-height:100vh;overflow:visible;align-items:stretch}#sidebar{height:auto;min-height:100vh;flex:0 0 260px;overflow:visible}.sidebar-nav{flex:0 0 auto;overflow:visible}#content-area{height:auto;min-height:100vh;min-width:0;overflow:visible}.main-body{flex:1 0 auto;overflow:visible}.top-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:.75rem;flex-wrap:wrap}.top-user{max-width:14rem;overflow:hidden;color:#334155;font-size:.82rem;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.top-logout{display:inline-flex;align-items:center;gap:.4rem;white-space:nowrap}@media(max-width:900px){#sidebar{flex-basis:220px}}@media(max-width:720px){#sidebar{display:none}.top-header-actions{gap:.45rem}.top-user{max-width:8rem}}.sidebar-brand{height:90px;min-height:90px;justify-content:center;padding:.75rem 1rem}.sidebar-brand img{width:min(190px,100%);height:64px;object-fit:contain;border-radius:0}:root{--ak-sidebar-bg:#101a2b;--ak-sidebar-hover:#1c2a40;--ak-sidebar-active:#163e69;--ak-brand:#b51f31;--ak-border:#e3e8ef;--ak-bg-light:#f4f6f9;--ak-text-main:#172235;--ak-text-muted:#657187}#sidebar{flex:0 0 260px;width:260px;min-width:260px;background:var(--ak-sidebar-bg)}.sidebar-brand{background:#101a2b;border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-nav{padding:.65rem .6rem 1.2rem}.nav-group{margin:.18rem 0 .42rem}.nav-group-heading{display:flex;align-items:center;gap:.65rem;min-height:38px;padding:.5rem .65rem;color:#aab7ca;font-size:.76rem;font-weight:750;letter-spacing:.04em;list-style:none;cursor:pointer;border-radius:7px;transition:background .15s,color .15s}.nav-group-heading::-webkit-details-marker{display:none}.nav-group-heading:hover,.nav-group[open]>.nav-group-heading{color:#fff;background:#ffffff0e}.nav-group-heading>i:first-child{width:1.1rem;text-align:center;color:#8ea1bb;font-size:.85rem}.nav-chevron{margin-left:auto;font-size:.68rem;transition:transform .15s}.nav-group[open]>.nav-group-heading>.nav-chevron,.nav-subgroup[open]>.nav-group-heading>.nav-chevron{transform:rotate(180deg)}.nav-group-items{padding:.22rem 0 .34rem .4rem}.sidebar-link{gap:.62rem;min-height:34px;padding:.43rem .65rem;margin:.1rem 0;color:#b2bfd1;font-size:.79rem;border-radius:7px}.sidebar-link i{width:1.05rem;text-align:center;color:#8193ad;font-size:.8rem}.sidebar-link:hover{background:var(--ak-sidebar-hover);color:#fff}.sidebar-link:hover i,.sidebar-link.active i{color:#fff}.sidebar-link.active{background:var(--ak-sidebar-active);color:#fff;font-weight:650;box-shadow:inset 3px 0 #d74655}.top-header{min-height:72px;height:auto;gap:1rem;padding:.7rem 1.35rem}.top-header-actions{gap:.55rem}.top-header-actions>#runtime-app{min-width:45px}.top-header-actions .badge{padding:.48rem .65rem;font-size:.68rem;letter-spacing:.02em}.top-user{display:flex;flex-direction:column;gap:.1rem;max-width:12rem;color:#26354a;font-size:.78rem;line-height:1.2}.top-user small{color:#79869a;font-size:.66rem;font-weight:550}.top-logout{border-color:#e8d6d8;font-size:.78rem}.main-body{padding:1.4rem clamp(1rem,2.2vw,2rem)}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:0 0 1.25rem}.page-heading .page-title{margin-top:.18rem;color:#1b2b43;font-weight:750;letter-spacing:-.025em}.record-count{display:inline-flex;align-items:center;gap:.45rem;padding:.48rem .7rem;border:1px solid var(--ak-border);border-radius:999px;background:#fff;color:#536178;font-size:.75rem;font-weight:650;white-space:nowrap}.records-card{overflow:hidden;border-radius:12px;box-shadow:0 4px 18px #13253f0b}.records-toolbar,.records-footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.85rem 1rem}.records-toolbar{border-bottom:1px solid var(--ak-border)}.records-search{position:relative;display:block;width:min(100%,360px)}.records-search>i{position:absolute;top:50%;left:.75rem;transform:translateY(-50%);color:#8995a8;font-size:.82rem}.records-search input{height:38px;padding-left:2.25rem;border-color:#e0e5ed;border-radius:8px;font-size:.84rem}.records-table{--bs-table-hover-bg:#f6f8fb}.records-table th{padding:.8rem .9rem;background:#f8f9fb;color:#6f7b8e;font-size:.67rem;font-weight:750;letter-spacing:.055em;white-space:nowrap}.records-table td{max-width:24rem;padding:.72rem .9rem;color:#2f3d51;font-size:.82rem}.records-table td>span:not(.status-badge){display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.records-footer{border-top:1px solid var(--ak-border)}.records-footer .pagination{gap:.2rem}.status-badge{display:inline-flex;align-items:center;gap:.34rem;max-width:100%;padding:.31rem .53rem;border:1px solid transparent;border-radius:999px;font-size:.68rem;font-weight:700;line-height:1.2;white-space:nowrap}.status-badge i{font-size:.68rem}.status-success{background:#eaf7ef;border-color:#d2efdd;color:#167442}.status-warning{background:#fff6df;border-color:#f5e5b7;color:#885e00}.status-primary{background:#e9f1ff;border-color:#d5e3ff;color:#2458a5}.status-info{background:#e8f6f8;border-color:#cdecef;color:#177481}.status-danger{background:#fff0f0;border-color:#f6d8da;color:#a52432}.status-secondary{background:#f0f2f5;border-color:#e1e5ea;color:#596579}.empty-state{display:flex;min-height:200px;flex-direction:column;align-items:center;justify-content:center;gap:.4rem;padding:1.5rem;color:#58667a;text-align:center}.empty-state>strong{color:#354257;font-size:.92rem}.empty-state>span:last-child{font-size:.8rem}.empty-state-icon{display:grid;width:46px;height:46px;place-items:center;margin-bottom:.35rem;border-radius:50%;background:#edf3fa;color:#47719f;font-size:1.1rem}.error-state{max-width:620px;margin:clamp(2rem,10vh,7rem) auto;padding:2.2rem!important;text-align:center}.error-state .empty-state-icon{margin:0 auto 1rem;background:#fff0f0}.mobile-nav-toggle{display:none;width:38px;height:38px;align-items:center;justify-content:center;border:1px solid #e0e5ed;border-radius:8px;background:#fff;color:#34445c}.mobile-nav-panel{width:min(88vw,330px)!important;background:#101a2b;color:#fff}.mobile-nav-panel .offcanvas-header{border-bottom:1px solid rgba(255,255,255,.1)}.mobile-nav-panel .offcanvas-body{padding:.6rem}.mobile-nav-brand img{display:block;width:160px;height:52px;object-fit:contain}.mobile-nav-panel .sidebar-nav{overflow:visible}.records-pagination-hidden{display:none!important}.auto-table-toolbar,.auto-table-footer{margin:0 0 .5rem;border:0;padding:.45rem 0}.operation-stepper{display:flex;align-items:center;gap:0;margin:0 0 1.15rem;padding:0;list-style:none}.operation-stepper li{position:relative;display:flex;align-items:center;gap:.45rem;flex:1;color:#8a95a7;font-size:.74rem}.operation-stepper li:not(:last-child):after{content:"";height:1px;flex:1;margin:0 .55rem;background:#dce2eb}.operation-stepper li>span{display:grid;width:25px;height:25px;flex:0 0 25px;place-items:center;border:1px solid #d7deea;border-radius:50%;background:#fff;font-size:.68rem;font-weight:750}.operation-stepper li>strong{font-weight:650}.operation-stepper .step-active{color:#234d79}.operation-stepper .step-active>span{border-color:#234d79;background:#234d79;color:#fff}.operation-stepper .step-complete{color:#278454}.operation-stepper .step-complete>span{border-color:#b7e1c8;background:#eaf7ef;color:#167442}.operation-stepper .step-complete>span:before{content:"✓";font-size:.72rem}.operation-stepper .step-complete>span{font-size:0}.seat.seat-held{border-color:#f0cb70;background:#fff6dd;color:#885e00;cursor:not-allowed}.seat.seat-sold{border-color:#cbd2dc;background:#e4e8ee;color:#697588;cursor:not-allowed}.seat.seat-blocked{border-color:#d6d9df;background:#f2f3f5;color:#9299a5;cursor:not-allowed}.seat-legend{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;margin-top:1rem}.seat-legend .status-badge{font-size:.62rem}.trip-actions{display:flex;flex-wrap:wrap;gap:.3rem;min-width:150px}.trip-actions .btn{font-size:.69rem}.audit-action{display:inline-flex;align-items:center;gap:.4rem;color:#364961;font-size:.75rem;font-weight:700}.audit-payload summary{color:#2458a5;font-size:.76rem;font-weight:650;cursor:pointer}.audit-diff{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;min-width:300px;margin-top:.55rem}.audit-diff>div{min-width:0;padding:.55rem;border:1px solid #e6eaf0;border-radius:7px;background:#fafbfd}.audit-diff strong{display:block;margin-bottom:.3rem;color:#66748a;font-size:.67rem;text-transform:uppercase}.audit-diff pre,.audit-context{max-height:220px;margin:0;overflow:auto;color:#39475d;font-size:.68rem;white-space:pre-wrap;overflow-wrap:anywhere}.audit-hash{font-size:.68rem}@media(max-width:720px){#sidebar{display:none}.mobile-nav-toggle{display:inline-flex}.top-header{align-items:flex-start;flex-direction:column;padding:.8rem 1rem}.top-header-actions{width:100%;justify-content:flex-start}.top-user{max-width:9rem}.main-body{padding:.9rem .7rem}.records-toolbar,.records-footer{align-items:flex-start;flex-direction:column}.records-footer{gap:.5rem}.records-search{width:100%}.page-heading{align-items:flex-start}.record-count{font-size:.68rem}}@media(max-width:520px){.operation-stepper{align-items:flex-start;flex-direction:column;gap:.55rem}.operation-stepper li{flex:none}.operation-stepper li:not(:last-child):after{display:none}.seat-legend{gap:.25rem}.seat-legend .status-badge{padding:.25rem .38rem}.audit-diff{grid-template-columns:1fr;min-width:230px}}@media print{#sidebar,.top-header,.records-toolbar,.records-footer,.mobile-nav-toggle{display:none!important}#app-container,#content-area,.main-body{display:block!important;min-height:0!important;height:auto!important;padding:0!important;overflow:visible!important}.ak-card{box-shadow:none!important}}.entity-row-actions .btn-outline-warning{color:#845300;border-color:#b4821f}.entity-row-actions .btn-outline-warning:hover{color:#fff;background:#845300}.is-processing{pointer-events:none;opacity:.65}.is-processing:before{content:"";display:inline-block;width:.8em;height:.8em;margin-right:.4em;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:ak-action-spin .7s linear infinite}@keyframes ak-action-spin{to{transform:rotate(360deg)}}.ticket-sale-stack,.ticket-sale-stack form{display:flex;flex-direction:column;gap:1.25rem}.vehicle-map-wrap{overflow-x:auto;padding:.6rem 0}.vehicle-map{display:block;max-width:100%;height:auto;margin:auto}.svg-seat{cursor:pointer;outline:none}.svg-seat:focus .seat-surface,.svg-seat:active .seat-surface,.svg-seat.is-selected .seat-surface{stroke:#083d91;stroke-width:1;vector-effect:non-scaling-stroke}.svg-seat.is-selected-available .seat-surface{fill:#dbeeff}.svg-seat.is-selected text{fill:#163e69}.svg-seat.is-unavailable{cursor:not-allowed;opacity:.65}.sale-summary-grid{display:grid;grid-template-columns:1fr 1.6fr;gap:.55rem 1rem;margin:0}.sale-summary-grid dt{color:#64748b;font-weight:500}.sale-summary-grid dd{margin:0;overflow-wrap:anywhere}.btn.action-with-label{min-height:36px;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;vertical-align:middle;white-space:normal}.btn.action-with-label>i.fa-solid,.btn.action-with-label>i.fa-regular,.btn.action-with-label>i.fas,.btn.action-with-label>i.far,.btn.action-with-label>svg.svg-inline--fa{display:none}.btn.action-with-label:before{content:attr(data-action-glyph);font-family:"Font Awesome 6 Free";font-weight:900;font-size:15px;line-height:1;flex-shrink:0}.btn.action-with-label:focus-visible{outline:3px solid #83b7ff;outline-offset:2px}.btn.action-search-only{font-size:0!important;width:38px;min-width:38px;max-width:38px;min-height:36px;padding:0!important;flex:0 0 38px;display:inline-flex;align-items:center;justify-content:center;gap:0!important}.btn.action-search-only>*{display:none!important}.btn.action-search-only:before{content:"";font-family:"Font Awesome 6 Free";font-weight:900;font-size:15px;line-height:1}.btn.action-search-only:focus-visible{outline:3px solid #83b7ff;outline-offset:2px}.entity-row-actions{flex-wrap:wrap!important;gap:.35rem}@media print{body:has(.manifest-document) #sidebar,body:has(.manifest-document) .top-header,body:has(.manifest-document) .page-heading,body:has(.manifest-document) .manifest-selector,body:has(.manifest-document) .manifest-exclusions,body:has(.manifest-document) .modal{display:none!important}body:has(.manifest-document) #content-area{margin:0!important;width:100%!important}.manifest-document .ak-card{box-shadow:none;border:0;padding:0!important}.manifest-document table{font-size:10pt}.manifest-document tr{break-inside:avoid}.manifest-document thead{display:table-header-group}}.status-seat-selected{background:#dbeeff;border-color:#083d91;color:#163e69}.seat-hover-card{position:fixed;z-index:1090;width:300px;max-width:calc(100vw - 16px);padding:12px 14px;background:#fff;border:1px solid #cbd5e1;border-radius:8px;box-shadow:0 8px 24px #0f172a29;font-size:.875rem;overflow-wrap:anywhere;pointer-events:none}.svg-seat.is-driver{cursor:default}.driver-icon{width:18px!important;height:20px!important;color:#596579}[data-person-lookup-status]:empty,[data-passenger-lookup-status]:empty,[data-shipment-lookup-status]:empty,[data-identity-status]:empty{display:none}.btn.action-search-only{--bs-btn-color: #fff;--bs-btn-bg: #0d6efd;--bs-btn-border-color: #0d6efd;--bs-btn-hover-color: #fff;--bs-btn-hover-bg: #0b5ed7;--bs-btn-hover-border-color: #0a58ca;--bs-btn-active-color: #fff;--bs-btn-active-bg: #0a58ca;--bs-btn-active-border-color: #0a53be;--bs-btn-disabled-color: #fff;--bs-btn-disabled-bg: #0d6efd;--bs-btn-disabled-border-color: #0d6efd;border-radius:var(--bs-border-radius, .375rem)!important}.input-group>.btn.action-search-only{margin-left:.5rem!important}.input-group:has(>.btn.action-search-only)>.form-control{border-radius:var(--bs-border-radius, .375rem)!important;min-width:0}.dashboard-chart{position:relative;height:290px}.top-header{gap:.75rem;flex-wrap:wrap}.top-header-actions{flex-wrap:wrap}@media(max-width:900px){.header-quick-actions{order:3;width:100%}.top-header-actions{gap:.5rem}}@media(min-width:1100px){.top-header{flex-wrap:nowrap}.header-quick-action{padding:.4rem;font-size:.75rem}.top-header-actions{gap:.4rem;flex-wrap:nowrap}.environment-status{font-size:.75rem}}.settings-conditional{display:grid;grid-template-rows:0fr;opacity:0;visibility:hidden;transition:grid-template-rows .22s ease,opacity .22s ease,visibility .22s}.settings-conditional.is-open{grid-template-rows:1fr;opacity:1;visibility:visible}.settings-conditional-content{min-height:0;overflow:hidden}.settings-conditional fieldset{min-width:0}@media(prefers-reduced-motion:reduce){.settings-conditional{transition:none}}.nav-group[open]>.nav-group-items{background:#142d54;border-radius:0 0 .5rem .5rem;padding:.35rem .25rem}.institutional-signature-preview{max-width:180px;max-height:100px;object-fit:contain;background:#fff;border:1px solid #dee2e6;border-radius:.35rem;padding:.4rem}.company-file-preview{max-width:240px;max-height:100px;object-fit:contain;background:#eef2f6;border:1px solid #dbe2ea;border-radius:8px;padding:8px}.company-favicon-preview{width:56px;height:56px}[data-secret-action]{flex:0 0 38px;width:38px;padding:.375rem .5rem}.layout-setup{background:#f5f8fc;border:1px solid #dce5ef;border-radius:10px;padding:16px}.layout-setup summary{font-weight:600;color:#183e69}.layout-editor .form-text{font-size:.8rem}.layout-properties{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.layout-properties label{display:block;margin-bottom:10px;width:100%}.layout-editor input[type=range]{accent-color:#0d6efd}.layout-editor .form-label{font-weight:500}.seat.sold,.seat.seat-sold{background:#fde8ea;border-color:#e8a5ad;color:#b42332;cursor:pointer}.ticket-action-bar{display:flex;justify-content:space-between;align-items:center;gap:1rem;flex-wrap:wrap}.ticket-header-actions .ak-card{margin:0}.seat-legend .status-danger{background:#fde8ea;border-color:#e8a5ad;color:#b42332}.ticket-cpe-frame{width:100%;height:72vh;border:0;display:block}.ticket-row-actions .dropdown-item{white-space:nowrap}.counter-vertical{display:grid;grid-template-columns:minmax(260px,1fr) minmax(350px,1.2fr);gap:16px;align-items:start}.counter-vertical .counter-filters{grid-column:1;grid-row:1}.counter-vertical #ticketSaleForm{grid-column:2;grid-row:1}.counter-vertical .counter-filters .col-md-6{width:100%}@media(max-width:991px){.counter-vertical{display:block}.counter-vertical .counter-filters{margin-bottom:16px}}.counter-filters form{flex-direction:row;gap:0}.operational-trips-table{font-size:.8125rem}.operational-trips-table>thead>tr>th,.operational-trips-table>tbody>tr>td{padding:.35rem .5rem}.counter-filters [data-assign-trip]{white-space:normal}.counter-seat-panel .vehicle-map-wrap{padding-top:0}.nav-group-heading:focus-visible,.sidebar-link:focus-visible{outline:2px solid #88bcff;outline-offset:2px}.floating-table-dropdown{z-index:1085;max-height:calc(100vh - 16px);overflow-y:auto;box-shadow:0 8px 24px #0f172a26}.seat-state-key[data-v-b759b88f]{display:inline-flex;align-items:center;gap:.3rem;font-size:.75rem;padding:.25rem .45rem;white-space:nowrap;color:#334155}.seat-state-dot[data-v-b759b88f]{display:inline-block;width:13px;height:13px;border:1px solid #87b0cd;border-radius:3px}.seat-state-available[data-v-b759b88f]{background:#fff}.seat-state-held[data-v-b759b88f]{background:#fd7e14;border-color:#d66204}.seat-state-blocked[data-v-b759b88f]{background:#adb5bd;border-color:#6c757d}.seat-sales-summary[data-v-b759b88f]{margin-top:.75rem;text-align:center}.seat-sales-heading[data-v-b759b88f]{font-size:.8rem;font-weight:600;margin-bottom:.5rem}.seat-sales-list[data-v-b759b88f]{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1rem;padding:0;margin:0;list-style:none;font-size:.8rem}.seat-sales-list li[data-v-b759b88f]{display:inline-flex;align-items:center;gap:.4rem}.seller-seat-swatch[data-v-b759b88f]{width:18px;height:18px;border:1px solid #87b0cd;border-bottom:4px solid;border-radius:4px;flex-shrink:0}.operational-modal-backdrop[data-v-5d67d919]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;z-index:2000;display:grid;place-items:center;padding:1rem}.operational-modal[data-v-5d67d919]{width:min(680px,100%);max-height:90vh;overflow:auto}.schedule-overlay[data-v-5d618e64]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1060;background:#0f172a80;display:flex;align-items:center;justify-content:center;padding:1rem}.schedule-dialog[data-v-5d618e64]{width:min(100%,720px);max-height:calc(100dvh - 2rem);overflow:auto;border-radius:20px;background:#fff;padding:1.75rem;box-shadow:0 24px 80px #0f172a33}.day-chip[data-v-5d618e64],.time-chip[data-v-5d618e64]{border:1px solid transparent;background:#f1f5f9;color:#475569;transition:background .15s,color .15s;border-radius:12px}.day-chip[data-v-5d618e64]{width:42px;height:42px;border-radius:50%;font-weight:600}.time-chip[data-v-5d618e64]{padding:.65rem .4rem;font-size:.82rem;white-space:nowrap}.day-chip.active[data-v-5d618e64],.time-chip.active[data-v-5d618e64]{background:#0d6efd;color:#fff}.day-chip[data-v-5d618e64]:hover,.time-chip[data-v-5d618e64]:hover{border-color:#0d6efd}.day-chip[data-v-5d618e64]:focus-visible,.time-chip[data-v-5d618e64]:focus-visible{outline:3px solid #93c5fd;outline-offset:2px}.interval-bar[data-v-5d618e64]{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:.6rem;align-items:end}.time-grid[data-v-5d618e64]{display:grid;grid-template-columns:repeat(auto-fit,minmax(94px,1fr));gap:.5rem;max-height:280px;overflow:auto;padding:3px}.schedule-fade-enter-active[data-v-5d618e64],.schedule-fade-leave-active[data-v-5d618e64]{transition:opacity .15s}.schedule-fade-enter-from[data-v-5d618e64],.schedule-fade-leave-to[data-v-5d618e64]{opacity:0}@media(max-width:575px){.interval-bar[data-v-5d618e64]{grid-template-columns:1fr 1fr}.schedule-dialog[data-v-5d618e64]{padding:1.1rem}.day-chip[data-v-5d618e64]{width:36px;height:36px}}@media(prefers-reduced-motion:reduce){.schedule-fade-enter-active[data-v-5d618e64],.schedule-fade-leave-active[data-v-5d618e64],.day-chip[data-v-5d618e64],.time-chip[data-v-5d618e64]{transition:none}}.trip-batch-overlay[data-v-57118ed3]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1060;display:flex;align-items:center;justify-content:center;padding:1rem;background:#0f172a80}.trip-batch-dialog[data-v-57118ed3]{background:#fff;border-radius:20px;padding:1.75rem;width:min(100%,780px);max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 24px 80px #0f172a33}.schedule-grid[data-v-57118ed3]{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.6rem;max-height:270px;overflow:auto;padding:3px}.schedule-option[data-v-57118ed3]{display:flex;gap:.65rem;padding:.8rem;border:1px solid #e2e8f0;background:#f8fafc;border-radius:12px;cursor:pointer;color:#475569}.schedule-option.selected[data-v-57118ed3]{background:#eff6ff;border-color:#0d6efd;color:#123e6b}.schedule-option[data-v-57118ed3]:focus-within{outline:3px solid #93c5fd;outline-offset:1px}.trip-batch-fade-enter-active[data-v-57118ed3],.trip-batch-fade-leave-active[data-v-57118ed3]{transition:opacity .15s}.trip-batch-fade-enter-from[data-v-57118ed3],.trip-batch-fade-leave-to[data-v-57118ed3]{opacity:0}@media(max-width:575px){.trip-batch-dialog[data-v-57118ed3]{padding:1.1rem}.schedule-grid[data-v-57118ed3]{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){.trip-batch-fade-enter-active[data-v-57118ed3],.trip-batch-fade-leave-active[data-v-57118ed3]{transition:none}}.dispatch-overlay[data-v-dd8b61cf]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1070;background:#0f172a80;display:flex;align-items:center;justify-content:center;padding:1rem}.dispatch-dialog[data-v-dd8b61cf]{background:#fff;border-radius:18px;width:min(850px,100%);padding:1.5rem;max-height:calc(100dvh - 2rem);overflow:auto;box-shadow:0 24px 80px #0f172a33}.search-results[data-v-dd8b61cf]{padding:.5rem;margin-top:.3rem;border:1px solid #dbe4ed;border-radius:10px;max-height:210px;overflow:auto}.search-results button[data-v-dd8b61cf]{display:block;width:100%;background:#fff;border:0;text-align:left;padding:.5rem;color:#123e6b}.search-results button[data-v-dd8b61cf]:hover,.search-results button[data-v-dd8b61cf]:focus{background:#eff6ff}.new-fields[data-v-dd8b61cf]{background:#f8fafc;padding:.8rem;border-radius:10px}.assignment-backdrop[data-v-e437488c]{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a77;z-index:1060;display:flex;align-items:center;justify-content:center;padding:20px}.assignment-dialog[data-v-e437488c]{width:640px;max-width:100%;max-height:90vh;overflow:auto;background:#fff;border-radius:14px;padding:24px}
