.ops-shell{display:grid;grid-template-columns:16rem minmax(0,1fr);gap:24px;width:min(100% - 32px,90rem);margin:24px auto 0;padding-bottom:64px;color:var(--ink)}.ops-sidebar{position:sticky;top:84px;align-self:start;display:flex;flex-direction:column;min-height:calc(100vh - 120px);padding:20px 12px 16px;background:var(--canvas-soft);border-radius:var(--r-md)}.ops-sidebar-brand{display:flex;align-items:center;gap:12px;padding:0 8px 32px}.ops-sidebar-brand>span:last-child{display:flex;flex-direction:column;gap:2px}.ops-sidebar-brand strong{font-size:1.125rem;font-weight:var(--w-heading);line-height:1.1}.ops-sidebar-brand small{color:var(--muted);font-size:.75rem;font-weight:var(--w-body)}.ops-brand-mark{display:grid;width:40px;height:40px;place-items:center;border-radius:var(--r-squircle);background:var(--primary);color:var(--on-primary);font-size:1.1rem;font-weight:var(--w-heading)}.ops-nav-label{margin:0 0 8px 12px;color:var(--muted);font-size:.75rem;font-weight:var(--w-strong)}.ops-side-nav{display:grid;gap:4px}.ops-side-link{display:flex;align-items:center;gap:10px;height:44px;padding:0 16px;border-radius:var(--r-full);background:transparent;color:var(--ink);font-size:.9375rem;font-weight:var(--w-strong);text-decoration:none}.ops-side-link:hover{background:var(--hover-wash)}.ops-side-link--active,.ops-side-link--active:hover{background:var(--primary);color:var(--on-primary)}.ops-sidebar-footer{display:flex;align-items:center;gap:8px;margin-top:auto;padding:16px 12px 0;color:var(--muted);font-size:.8125rem}.ops-live-dot{position:relative;display:inline-block;width:8px;height:8px;flex:none;border-radius:50%;background:var(--ink)}.ops-live-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:1px solid var(--ink);opacity:.25}.ops-main{min-width:0;padding:24px 0 0}.ops-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.ops-header h1{margin:8px 0 12px;font-size:clamp(2.25rem,4vw,3.5rem);line-height:1}.ops-eyebrow{margin:0;color:var(--muted);font-size:.8125rem;font-weight:var(--w-strong)}.ops-subtitle{margin:0;color:var(--muted);font-size:1.125rem;font-weight:var(--w-light)}.ops-mode-switch{display:inline-flex;flex:none;gap:4px;padding:4px;border-radius:var(--r-full);background:var(--canvas-soft)}.ops-mode-button{height:36px;border:0;border-radius:var(--r-full);padding:0 16px;background:transparent;color:var(--muted);font-size:.875rem;font-weight:var(--w-strong)}.ops-mode-button:hover{color:var(--ink)}.ops-mode-button--active{background:var(--canvas);color:var(--ink);box-shadow:var(--segment-shadow)}.ops-demo-banner,.ops-live-banner{display:flex;align-items:center;gap:12px;margin:0 0 24px;padding:12px 20px;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--muted);font-size:.875rem}.ops-demo-banner strong{color:var(--ink);font-weight:var(--w-strong)}.ops-demo-icon{display:grid;width:22px;height:22px;flex:none;place-items:center;border-radius:50%;background:var(--primary);color:var(--on-primary);font-size:.75rem;font-weight:var(--w-heading)}.ops-live-banner{color:var(--ink)}.ops-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:24px}.ops-summary-card{min-width:0;padding:20px;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--canvas)}.ops-summary-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.ops-summary-icon{display:grid;width:36px;height:36px;place-items:center;border-radius:var(--r-squircle);background:var(--canvas-soft);color:var(--ink);font-size:.95rem;font-weight:var(--w-heading)}.ops-summary-icon--amber{background:var(--primary);color:var(--on-primary)}.ops-summary-kicker{color:var(--muted);font-size:.75rem;font-weight:var(--w-strong)}.ops-summary-value{display:block;font-size:2.75rem;font-weight:var(--w-heading);font-variant-numeric:tabular-nums;line-height:1}.ops-summary-label{display:block;margin-top:8px;color:var(--muted);font-size:.875rem}.ops-runs-panel{overflow:hidden;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--canvas)}.ops-panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:24px 24px 16px}.ops-panel-heading h2{margin:0;font-size:1.5rem;line-height:1.25}.ops-panel-heading p{margin:4px 0 0;color:var(--muted);font-size:.875rem}.ops-record-count{display:inline-flex;align-items:center;height:28px;padding:0 12px;border-radius:var(--r-full);background:var(--canvas-soft);font-size:.75rem;font-weight:var(--w-strong);white-space:nowrap}.ops-filter-row{display:flex;align-items:flex-end;gap:12px;padding:0 24px 20px}.ops-date-field{width:min(100%,15rem)}.ops-clear-filter{height:48px;border:0;padding:0 4px;background:transparent;color:var(--ink);font-size:.875rem;font-weight:var(--w-strong);text-decoration:underline;text-underline-offset:3px}.ops-refreshing{margin:0 0 14px auto;color:var(--muted);font-size:.8125rem}.ops-table-wrap{overflow-x:auto;border-top:1px solid var(--hairline-soft)}.ops-table{min-width:46rem}.ops-table thead th{padding:12px 24px;color:var(--muted);font-size:.8125rem;font-weight:var(--w-strong)}.ops-table tbody th,.ops-table tbody td{padding:14px 24px;font-size:.875rem}.ops-table tbody th{min-width:13rem}.ops-train-number{display:block;font-size:.9375rem;font-weight:var(--w-heading)}.ops-train-name{display:block;margin-top:2px;color:var(--muted);font-size:.8125rem;font-weight:var(--w-body)}.ops-status,.ops-chart{display:inline-flex;align-items:center;gap:6px;height:26px;padding:0 11px;border-radius:var(--r-full);font-size:.75rem;font-weight:var(--w-strong);white-space:nowrap}.ops-status{background:var(--canvas-soft);color:var(--ink);text-transform:capitalize}.ops-status--scheduled{background:var(--canvas-soft);color:var(--ink)}.ops-status--delayed{background:var(--canvas);color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.ops-status--departed{background:var(--canvas-soft);color:var(--muted)}.ops-status--cancelled{background:var(--danger-soft);color:var(--danger)}.ops-status--cnf{background:var(--primary);color:var(--on-primary)}.ops-status--rac{background:var(--canvas-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline)}.ops-status--wl{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--hairline)}.ops-status-dot{width:6px;height:6px;border-radius:50%;background:currentColor}.ops-delay{font-size:.875rem;font-weight:var(--w-strong);white-space:nowrap}.ops-delay--none{color:var(--muted)}.ops-delay--minor{color:var(--ink)}.ops-delay--high{color:var(--danger)}.ops-delay-note{display:block;margin-top:2px;color:var(--muted);font-size:.75rem}.ops-chart--ready{background:var(--primary);color:var(--on-primary)}.ops-chart--pending{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--hairline)}.ops-state{margin:16px 24px 24px;padding:48px 24px;border-radius:var(--r-sm);background:var(--canvas-soft);color:var(--muted);text-align:center;font-size:.9375rem}.ops-error-state{margin:16px 24px 24px;padding:20px 24px;border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger);font-size:.9375rem}.ops-error-state p{margin:6px 0 14px}.ops-retry-button{height:36px;border:1px solid currentColor;border-radius:var(--r-full);padding:0 16px;background:transparent;color:var(--danger);font-size:.875rem;font-weight:var(--w-strong)}.ops-retry-button:disabled{opacity:.6;cursor:progress}.ops-table-footer{display:flex;justify-content:space-between;gap:16px;padding:14px 24px;border-top:1px solid var(--hairline-soft);color:var(--muted);font-size:.75rem}.ops-footer{padding:24px 4px 0;color:var(--faint);font-size:.75rem;text-align:right}.ops-side-nav button{width:100%;border:0;text-align:left;font:inherit;font-weight:var(--w-strong);cursor:pointer}.ops-row-actions{display:flex;align-items:center;gap:6px}.ops-row-actions button,.ops-inline-link{height:32px;border:0;border-radius:var(--r-full);padding:0 14px;background:var(--canvas-soft);color:var(--ink);font-size:.8125rem;font-weight:var(--w-strong);white-space:nowrap}.ops-row-actions button:hover:not(:disabled),.ops-inline-link:hover:not(:disabled){background:var(--hairline)}.ops-row-actions .ops-cancel-link{color:var(--danger)}.ops-row-actions button:disabled,.ops-inline-link:disabled{opacity:.4;cursor:not-allowed}.ops-success{margin:0 0 16px;padding:12px 20px;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-size:.875rem;font-weight:var(--w-strong)}.ops-refresh-button,.ops-secondary-button,.ops-danger-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border:1px solid transparent;border-radius:var(--r-full);padding:0 20px;font-size:.9375rem;font-weight:var(--w-strong);white-space:nowrap}.ops-refresh-button{background:var(--primary);color:var(--on-primary)}.ops-refresh-button:hover:not(:disabled){background:var(--primary-hover)}.ops-refresh-button:disabled{opacity:.45;cursor:progress}.ops-secondary-button{border-color:var(--hairline);background:var(--canvas);color:var(--ink)}.ops-secondary-button:hover{border-color:var(--ink)}.ops-danger-button{background:var(--danger);color:#fff}.ops-danger-button:hover:not(:disabled){filter:brightness(.92)}.ops-danger-button:disabled{opacity:.55;cursor:progress}.ops-modal-backdrop{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;overflow-y:auto;padding:16px;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.ops-modal{position:relative;width:min(100%,32rem);max-height:min(90vh,54rem);overflow-y:auto;padding:32px;border-radius:var(--r-md);background:var(--canvas);box-shadow:var(--overlay-shadow)}.ops-modal--wide{width:min(100%,62rem)}.ops-modal h2{margin:8px 0;font-size:2rem;line-height:1.13}.ops-modal .ops-subtitle{margin-bottom:16px;font-size:1rem}.ops-modal-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-size:1.25rem;line-height:1}.ops-modal-close:hover{background:var(--hairline)}.ops-action-form{display:grid;gap:16px;margin-top:20px}.ops-modal-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px;margin-top:24px}.ops-confirm-copy{margin:12px 0 20px;color:var(--muted);font-size:1rem;line-height:1.5}.ops-coaches{margin-top:16px}.ops-chart-summary{margin:0 0 16px;color:var(--muted);font-size:.875rem}.ops-coach{margin-bottom:16px;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--r-sm)}.ops-coach h3{margin:0;padding:12px 16px;background:var(--canvas-soft);font-size:.9375rem}.ops-coach-table-wrap{overflow-x:auto}.ops-coach-table{min-width:36rem}.ops-coach-table th,.ops-coach-table td{padding:10px 16px;font-size:.8125rem}.ops-toast-error{position:fixed;z-index:60;right:16px;bottom:16px;max-width:26rem;padding:14px 20px;border-radius:var(--r-sm);background:var(--canvas);color:var(--danger);box-shadow:var(--overlay-shadow);font-size:.875rem;font-weight:var(--w-strong)}.ops-analytics{min-width:0}.ops-analytics-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.ops-analytics-heading h2{margin:0;font-size:1.5rem;line-height:1.25}.ops-analytics-heading p{margin:4px 0 0;color:var(--muted);font-size:.875rem}.ops-demo-note{margin:0 0 16px;padding:12px 20px;border-radius:var(--r-sm);background:var(--canvas-soft);color:var(--muted);font-size:.875rem}.ops-loading{color:var(--muted);font-size:.875rem}.ops-report-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:16px;border-radius:var(--r-md);background:var(--canvas-soft)}.ops-report-filters .field{width:min(100%,14rem)}.ops-report-filters input{background:var(--canvas)}.ops-report-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ops-report-card{min-width:0;padding:24px;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--canvas)}.ops-report-card--wide{grid-column:span 2}.ops-report-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-bottom:16px}.ops-report-title h3{margin:0;font-size:1.25rem}.ops-report-title span{color:var(--muted);font-size:.8125rem;white-space:nowrap}.ops-chart-area{height:16rem;min-width:0}.ops-segment-chart{height:18rem;min-width:0}.ops-chart-state{display:grid;min-height:10rem;place-items:center;margin:0;border-radius:var(--r-sm);background:var(--canvas-soft);color:var(--muted);font-size:.875rem;text-align:center}.ops-report-error,.ops-pnr-error{margin:12px 0;padding:12px 20px;border-radius:var(--r-sm);background:var(--danger-soft);color:var(--danger);font-size:.875rem;font-weight:var(--w-strong)}.ops-conversion-value{display:block;margin-top:24px;font-size:clamp(3.5rem,7vw,5rem);font-weight:var(--w-heading);line-height:1;font-variant-numeric:tabular-nums}.ops-conversion-caption{margin:12px 0 0;color:var(--muted);font-size:.875rem}.recharts-default-tooltip{border:0!important;border-radius:12px!important;background:var(--canvas)!important;box-shadow:var(--overlay-shadow)}.recharts-tooltip-label{color:var(--ink);font-weight:var(--w-strong)}.ops-pnr-page{width:min(100% - 32px,58rem);margin:0 auto;padding:64px 0 96px}.ops-pnr-header{margin-bottom:32px;text-align:center}.ops-pnr-header h1{margin:12px 0;font-size:clamp(2.75rem,7vw,4.5rem);line-height:1}.ops-pnr-header .ops-subtitle{font-size:1.25rem}.ops-pnr-search,.ops-pnr-panel{margin-bottom:12px;overflow:hidden;border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--canvas)}.ops-pnr-mode{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px 0;color:var(--muted);font-size:.875rem}.ops-pnr-search>.ops-demo-banner{margin:16px 24px 0}.ops-pnr-form{display:flex;align-items:flex-start;gap:12px;padding:20px 24px 24px}.ops-pnr-form .field{flex:1}.ops-pnr-form input{font-size:1.125rem;font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.ops-pnr-form .ops-refresh-button{min-height:48px;margin-top:27px}.ops-pnr-results{display:grid;gap:12px}.ops-pnr-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 32px;margin:0;padding:4px 24px 24px}.ops-pnr-details>div{min-width:0}.ops-pnr-details dt{color:var(--muted);font-size:.8125rem;font-weight:var(--w-strong)}.ops-pnr-details dd{margin:4px 0 0;font-size:1rem;font-weight:var(--w-strong)}.ops-pnr-details dd span:not(.ops-status){color:var(--muted);font-weight:var(--w-body)}.ops-pnr-table{min-width:34rem}@media(max-width:68rem){.ops-shell{grid-template-columns:13rem minmax(0,1fr);gap:16px}.ops-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:48rem){.ops-shell{display:block;margin-top:16px}.ops-sidebar{position:static;min-height:auto;flex-direction:row;align-items:center;gap:12px;padding:8px;border-radius:var(--r-full);overflow-x:auto}.ops-sidebar-brand{padding:0 0 0 4px}.ops-brand-mark{width:36px;height:36px}.ops-sidebar-brand>span:last-child,.ops-nav-label,.ops-sidebar-footer{display:none}.ops-side-nav{display:flex;gap:4px}.ops-side-link{flex:none;height:40px}.ops-main{padding-top:24px}.ops-header{align-items:flex-start;flex-direction:column}.ops-mode-switch{align-self:stretch}.ops-mode-button{flex:1}.ops-demo-banner,.ops-live-banner{border-radius:var(--r-sm);align-items:flex-start}.ops-summary-card{padding:16px}.ops-summary-value{font-size:2rem}.ops-panel-heading,.ops-filter-row,.ops-table-footer{padding-left:16px;padding-right:16px}.ops-row-actions,.ops-analytics-heading{align-items:flex-start;flex-direction:column}.ops-analytics-heading .ops-refresh-button{align-self:stretch}.ops-report-grid{grid-template-columns:minmax(0,1fr)}.ops-report-card--wide{grid-column:auto}.ops-report-filters .field{flex:1 1 9rem}.ops-pnr-page{padding-top:40px}.ops-pnr-form{align-items:stretch;flex-direction:column}.ops-pnr-form .ops-refresh-button{margin-top:0}.ops-pnr-mode{align-items:flex-start;flex-direction:column}.ops-pnr-mode .ops-mode-switch{align-self:stretch}.ops-pnr-details{grid-template-columns:minmax(0,1fr);padding-left:16px;padding-right:16px}.ops-modal{padding:24px}}.reservations-ui .pointer-events-none{pointer-events:none}.reservations-ui .fixed{position:fixed}.reservations-ui .absolute{position:absolute}.reservations-ui .relative{position:relative}.reservations-ui .inset-0{top:0;right:0;bottom:0;left:0}.reservations-ui .left-4{left:1rem}.reservations-ui .top-1\/2{top:50%}.reservations-ui .z-50{z-index:50}.reservations-ui .mx-auto{margin-left:auto;margin-right:auto}.reservations-ui .mb-2{margin-bottom:.5rem}.reservations-ui .mb-3{margin-bottom:.75rem}.reservations-ui .mb-5{margin-bottom:1.25rem}.reservations-ui .mt-0\.5{margin-top:.125rem}.reservations-ui .mt-1{margin-top:.25rem}.reservations-ui .mt-2{margin-top:.5rem}.reservations-ui .mt-3{margin-top:.75rem}.reservations-ui .mt-4{margin-top:1rem}.reservations-ui .block{display:block}.reservations-ui .flex{display:flex}.reservations-ui .inline-flex{display:inline-flex}.reservations-ui .grid{display:grid}.reservations-ui .inline-grid{display:inline-grid}.reservations-ui .h-10{height:2.5rem}.reservations-ui .h-11{height:2.75rem}.reservations-ui .h-12{height:3rem}.reservations-ui .h-14{height:3.5rem}.reservations-ui .h-3\.5{height:.875rem}.reservations-ui .h-4{height:1rem}.reservations-ui .h-5{height:1.25rem}.reservations-ui .h-6{height:1.5rem}.reservations-ui .h-7{height:1.75rem}.reservations-ui .h-8{height:2rem}.reservations-ui .h-9{height:2.25rem}.reservations-ui .max-h-56{max-height:14rem}.reservations-ui .max-h-\[90vh\]{max-height:90vh}.reservations-ui .min-h-\[40px\]{min-height:40px}.reservations-ui .min-h-\[44px\]{min-height:44px}.reservations-ui .min-h-\[48px\]{min-height:48px}.reservations-ui .w-11{width:2.75rem}.reservations-ui .w-12{width:3rem}.reservations-ui .w-14{width:3.5rem}.reservations-ui .w-3\.5{width:.875rem}.reservations-ui .w-4{width:1rem}.reservations-ui .w-5{width:1.25rem}.reservations-ui .w-6{width:1.5rem}.reservations-ui .w-7{width:1.75rem}.reservations-ui .w-8{width:2rem}.reservations-ui .w-9{width:2.25rem}.reservations-ui .w-full{width:100%}.reservations-ui .min-w-0{min-width:0px}.reservations-ui .min-w-\[12rem\]{min-width:12rem}.reservations-ui .min-w-\[3\.25rem\]{min-width:3.25rem}.reservations-ui .max-w-4xl{max-width:56rem}.reservations-ui .max-w-5xl{max-width:64rem}.reservations-ui .max-w-lg{max-width:32rem}.reservations-ui .max-w-sm{max-width:24rem}.reservations-ui .max-w-xl{max-width:36rem}.reservations-ui .flex-1{flex:1 1 0%}.reservations-ui .flex-none{flex:none}.reservations-ui .flex-shrink-0{flex-shrink:0}.reservations-ui .-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.reservations-ui .-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.reservations-ui .transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.reservations-ui .animate-spin{animation:spin 1s linear infinite}.reservations-ui .cursor-pointer{cursor:pointer}.reservations-ui .grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.reservations-ui .grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.reservations-ui .flex-col{flex-direction:column}.reservations-ui .flex-wrap{flex-wrap:wrap}.reservations-ui .place-items-center{place-items:center}.reservations-ui .items-start{align-items:flex-start}.reservations-ui .items-end{align-items:flex-end}.reservations-ui .items-center{align-items:center}.reservations-ui .justify-end{justify-content:flex-end}.reservations-ui .justify-center{justify-content:center}.reservations-ui .justify-between{justify-content:space-between}.reservations-ui .gap-1{gap:.25rem}.reservations-ui .gap-1\.5{gap:.375rem}.reservations-ui .gap-2{gap:.5rem}.reservations-ui .gap-3{gap:.75rem}.reservations-ui .gap-4{gap:1rem}.reservations-ui .gap-6{gap:1.5rem}.reservations-ui :is(.space-y-2>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.reservations-ui :is(.space-y-3>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.reservations-ui :is(.space-y-4>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.reservations-ui :is(.space-y-5>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.reservations-ui :is(.space-y-6>:not([hidden])~:not([hidden])){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.reservations-ui .self-start{align-self:flex-start}.reservations-ui .overflow-y-auto{overflow-y:auto}.reservations-ui .truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.reservations-ui .whitespace-nowrap{white-space:nowrap}.reservations-ui .rounded-card{border-radius:24px}.reservations-ui .rounded-full{border-radius:9999px}.reservations-ui .rounded-squircle{border-radius:30%}.reservations-ui .rounded-tile{border-radius:16px}.reservations-ui .border{border-width:1px}.reservations-ui .border-2{border-width:2px}.reservations-ui .border-b{border-bottom-width:1px}.reservations-ui .border-t{border-top-width:1px}.reservations-ui .border-hairline{border-color:var(--hairline)}.reservations-ui .border-hairline-soft{border-color:var(--hairline-soft)}.reservations-ui .border-ink{border-color:var(--ink)}.reservations-ui .border-t-transparent{border-top-color:transparent}.reservations-ui .bg-\[var\(--scrim\)\]{background-color:var(--scrim)}.reservations-ui .bg-accent{background-color:var(--accent)}.reservations-ui .bg-canvas{background-color:var(--canvas)}.reservations-ui .bg-canvas-soft{background-color:var(--canvas-soft)}.reservations-ui .bg-danger{background-color:var(--danger)}.reservations-ui .bg-danger-soft{background-color:var(--danger-soft)}.reservations-ui .bg-primary{background-color:var(--primary)}.reservations-ui .p-1{padding:.25rem}.reservations-ui .p-3{padding:.75rem}.reservations-ui .p-4{padding:1rem}.reservations-ui .p-5{padding:1.25rem}.reservations-ui .p-6{padding:1.5rem}.reservations-ui .px-2{padding-left:.5rem;padding-right:.5rem}.reservations-ui .px-2\.5{padding-left:.625rem;padding-right:.625rem}.reservations-ui .px-3{padding-left:.75rem;padding-right:.75rem}.reservations-ui .px-4{padding-left:1rem;padding-right:1rem}.reservations-ui .px-5{padding-left:1.25rem;padding-right:1.25rem}.reservations-ui .px-6{padding-left:1.5rem;padding-right:1.5rem}.reservations-ui .px-8{padding-left:2rem;padding-right:2rem}.reservations-ui .py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.reservations-ui .py-16{padding-top:4rem;padding-bottom:4rem}.reservations-ui .py-3{padding-top:.75rem;padding-bottom:.75rem}.reservations-ui .pl-11{padding-left:2.75rem}.reservations-ui .pl-4{padding-left:1rem}.reservations-ui .pl-5{padding-left:1.25rem}.reservations-ui .pt-1{padding-top:.25rem}.reservations-ui .pt-2{padding-top:.5rem}.reservations-ui .pt-3{padding-top:.75rem}.reservations-ui .pt-5{padding-top:1.25rem}.reservations-ui .pt-6{padding-top:1.5rem}.reservations-ui .text-left{text-align:left}.reservations-ui .text-center{text-align:center}.reservations-ui .text-right{text-align:right}.reservations-ui .text-2xl{font-size:1.5rem;line-height:2rem}.reservations-ui .text-\[10px\]{font-size:10px}.reservations-ui .text-\[11px\]{font-size:11px}.reservations-ui .text-\[13px\]{font-size:13px}.reservations-ui .text-\[15px\]{font-size:15px}.reservations-ui .text-\[32px\]{font-size:32px}.reservations-ui .text-\[40px\]{font-size:40px}.reservations-ui .text-\[44px\]{font-size:44px}.reservations-ui .text-base{font-size:1rem;line-height:1.5rem}.reservations-ui .text-sm{font-size:.875rem;line-height:1.25rem}.reservations-ui .text-xl{font-size:1.25rem;line-height:1.75rem}.reservations-ui .text-xs{font-size:.75rem;line-height:1rem}.reservations-ui .font-heading{font-weight:650}.reservations-ui .font-light{font-weight:300}.reservations-ui .font-strong{font-weight:600}.reservations-ui .tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.reservations-ui .leading-\[1\.05\]{line-height:1.05}.reservations-ui .leading-\[1\.13\]{line-height:1.13}.reservations-ui .leading-none{line-height:1}.reservations-ui .leading-snug{line-height:1.375}.reservations-ui .leading-tight{line-height:1.25}.reservations-ui .text-accent{color:var(--accent)}.reservations-ui .text-danger{color:var(--danger)}.reservations-ui .text-ink{color:var(--ink)}.reservations-ui .text-muted{color:var(--muted)}.reservations-ui .text-on-primary{color:var(--on-primary)}.reservations-ui .text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.reservations-ui .underline{text-decoration-line:underline}.reservations-ui .underline-offset-4{text-underline-offset:4px}.reservations-ui .opacity-50{opacity:.5}.reservations-ui .opacity-70{opacity:.7}.reservations-ui .shadow-\[inset_0_0_0_1px_var\(--hairline\)\]{--tw-shadow: inset 0 0 0 1px var(--hairline);--tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.reservations-ui .shadow-\[inset_0_0_0_1px_var\(--ink\)\]{--tw-shadow: inset 0 0 0 1px var(--ink);--tw-shadow-colored: inset 0 0 0 1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.reservations-ui .shadow-\[inset_0_0_0_2px_var\(--ink\)\]{--tw-shadow: inset 0 0 0 2px var(--ink);--tw-shadow-colored: inset 0 0 0 2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.reservations-ui .shadow-overlay{--tw-shadow: var(--overlay-shadow);--tw-shadow-colored: var(--overlay-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.reservations-ui .shadow-segment{--tw-shadow: var(--segment-shadow);--tw-shadow-colored: var(--segment-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.reservations-ui .ring{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.reservations-ui .filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.reservations-ui .backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.reservations-ui .transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.reservations-ui .transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.reservations-ui .duration-500{transition-duration:.5s}.reservations-ui .ease-linear{transition-timing-function:linear}.reservations-ui{width:min(100% - 32px,64rem);margin:0 auto;padding:48px 0 96px;color:var(--ink);font-family:var(--font)}.reservations-ui *,.reservations-ui :before,.reservations-ui :after{box-sizing:border-box;border-width:0;border-style:solid;border-color:var(--hairline)}.reservations-ui h1,.reservations-ui h2,.reservations-ui h3,.reservations-ui h4,.reservations-ui p{margin:0;font-size:inherit;font-weight:inherit}.reservations-ui button,.reservations-ui input,.reservations-ui select,.reservations-ui textarea{font:inherit;color:inherit;margin:0}.reservations-ui button{cursor:pointer;background:transparent}.reservations-ui button:disabled{cursor:not-allowed;opacity:.6}.reservations-ui svg{display:inline-block;vertical-align:middle}@keyframes fadeIn{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.reservations-ui .animate-fade-in{animation:fadeIn .3s cubic-bezier(.16,1,.3,1)}.reservations-ui .hover\:border-danger:hover{border-color:var(--danger)}.reservations-ui .hover\:border-ink:hover{border-color:var(--ink)}.reservations-ui .hover\:bg-hairline:hover{background-color:var(--hairline)}.reservations-ui .hover\:bg-primary-hover:hover{background-color:var(--primary-hover)}.reservations-ui .hover\:text-danger:hover{color:var(--danger)}.reservations-ui .hover\:text-ink:hover{color:var(--ink)}.reservations-ui .hover\:brightness-95:hover{--tw-brightness: brightness(.95);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.reservations-ui .disabled\:opacity-40:disabled{opacity:.4}.reservations-ui .disabled\:hover\:bg-canvas-soft:hover:disabled{background-color:var(--canvas-soft)}@media(min-width:640px){.reservations-ui .sm\:col-span-2{grid-column:span 2 / span 2}.reservations-ui .sm\:inline-flex{display:inline-flex}.reservations-ui .sm\:w-72{width:18rem}.reservations-ui .sm\:flex-none{flex:none}.reservations-ui .sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.reservations-ui .sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.reservations-ui .sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.reservations-ui .sm\:flex-row{flex-direction:row}.reservations-ui .sm\:items-end{align-items:flex-end}.reservations-ui .sm\:items-center{align-items:center}.reservations-ui .sm\:justify-between{justify-content:space-between}.reservations-ui .sm\:self-auto{align-self:auto}.reservations-ui .sm\:p-8{padding:2rem}.reservations-ui .sm\:pt-7{padding-top:1.75rem}.reservations-ui .sm\:text-\[44px\]{font-size:44px}.reservations-ui .sm\:text-\[56px\]{font-size:56px}}@media(min-width:768px){.reservations-ui .md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.reservations-ui .md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}:root{--ink: #141414;--ink-soft: #262626;--muted: #707070;--faint: #adadad;--canvas: #ffffff;--canvas-soft: #f3f3f3;--field: #f0f0f0;--hairline-soft: #f0f0f0;--hairline: #e0e0e0;--primary: #141414;--primary-hover: #2e2e2e;--on-primary: #ffffff;--accent: #0066ff;--on-accent: #ffffff;--danger: #d92d20;--danger-soft: #fdeceb;--hover-wash: rgb(20 20 20 / .05);--scrim: rgb(20 20 20 / .42);--overlay-shadow: 0 24px 64px rgb(0 0 0 / .14), 0 2px 8px rgb(0 0 0 / .06);--segment-shadow: 0 1px 3px rgb(0 0 0 / .1);--footer-bg: #141414;--footer-ink: #ffffff;--footer-faint: #adadad;--chart-1: #141414;--chart-2: #4d4d4d;--chart-3: #808080;--chart-4: #a6a6a6;--chart-5: #c7c7c7;--font: "Saans", "Inter", -apple-system, "Helvetica Neue", Arial, sans-serif;--w-light: 300;--w-body: 450;--w-strong: 600;--w-heading: 650;--r-sm: 16px;--r-md: 24px;--r-full: 9999px;--r-squircle: 30%;--control-h: 44px;--page-w: 68rem;--bg: var(--canvas);--surface: var(--canvas);--line: var(--hairline);--brand: var(--ink);--focus: var(--ink);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--ink: #f5f5f5;--ink-soft: #e3e3e3;--muted: #a3a3a3;--faint: #6b6b6b;--canvas: #0e0e0e;--canvas-soft: #1a1a1a;--field: #212121;--hairline-soft: #1f1f1f;--hairline: #2e2e2e;--primary: #f5f5f5;--primary-hover: #d6d6d6;--on-primary: #141414;--accent: #3d8bff;--danger: #ff6b5e;--danger-soft: #2a1412;--hover-wash: rgb(255 255 255 / .06);--scrim: rgb(0 0 0 / .6);--overlay-shadow: 0 24px 64px rgb(0 0 0 / .5);--segment-shadow: 0 1px 3px rgb(0 0 0 / .5);--footer-bg: #000000;--footer-faint: #8a8a8a;--chart-1: #f5f5f5;--chart-2: #c2c2c2;--chart-3: #8f8f8f;--chart-4: #666666;--chart-5: #454545}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;font-family:var(--font);font-optical-sizing:auto;font-weight:var(--w-body);font-size:16px;line-height:1.38;background:var(--canvas);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh;display:flex;flex-direction:column}h1,h2,h3,h4{font-weight:var(--w-heading);letter-spacing:0;color:var(--ink)}h1{margin:0 0 12px;font-size:clamp(2.25rem,5vw,3.5rem);line-height:1}h2{margin:48px 0 16px;font-size:1.5rem;line-height:1.25}h3{font-size:1.25rem;line-height:1.3}a{color:var(--ink);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{text-decoration-thickness:2px}code{font-family:inherit;font-size:.75em;font-weight:var(--w-strong);font-variant-numeric:tabular-nums;background:var(--canvas-soft);color:var(--ink);border-radius:var(--r-full);padding:2px 8px;white-space:nowrap}:focus-visible{outline:2px solid var(--ink);outline-offset:2px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}::-moz-selection{background:var(--ink);color:var(--canvas)}::selection{background:var(--ink);color:var(--canvas)}.topbar{position:sticky;top:12px;z-index:40;display:flex;align-items:center;gap:16px;width:min(100% - 32px,76rem);margin:12px auto 0;padding:6px 6px 6px 8px;background:var(--canvas-soft);border-radius:var(--r-full)}.brand{display:inline-flex;align-items:center;gap:10px;flex:none;padding-right:8px;color:var(--ink);text-decoration:none;font-size:1.25rem;font-weight:var(--w-heading);line-height:1}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:var(--r-squircle);background:var(--primary);color:var(--on-primary);font-size:1.05rem;font-weight:var(--w-heading)}.topbar nav{display:flex;align-items:center;gap:8px;flex:1;min-width:0;justify-content:flex-end}.nav-links{display:flex;align-items:center;gap:2px}.nav-links a{display:inline-flex;align-items:center;height:40px;padding:0 14px;border-radius:var(--r-full);color:var(--ink);text-decoration:none;font-size:.9375rem;font-weight:var(--w-strong);white-space:nowrap}.nav-links a:hover{background:var(--hover-wash)}.nav-links a[aria-current=page]{background:var(--canvas)}.nav-cta{height:40px;flex:none}.menu-toggle{display:none}@media(max-width:70rem){.topbar nav{position:static}.menu-toggle{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 16px;border:0;border-radius:var(--r-full);background:var(--canvas);color:var(--ink);font-weight:var(--w-strong);font-size:.9375rem}.menu-toggle-bars{display:grid;gap:3px}.menu-toggle-bars span{display:block;width:14px;height:1.5px;background:currentColor;border-radius:2px}.nav-links{display:none;position:absolute;top:calc(100% + 8px);left:0;right:0;flex-direction:column;align-items:stretch;gap:2px;padding:8px;background:var(--canvas-soft);border-radius:var(--r-md)}.topbar nav.open .nav-links{display:flex}.nav-links a{height:48px;padding:0 16px;font-size:1rem}}@media(max-width:30rem){.brand-word,.menu-toggle-label{display:none}.menu-toggle{padding:0 13px}}.site-footer{margin-top:auto;padding:64px 0 32px;background:var(--footer-bg);color:var(--footer-ink);border-radius:var(--r-md) var(--r-md) 0 0}.footer-inner{display:flex;flex-wrap:wrap;justify-content:space-between;gap:48px;width:min(100% - 48px,76rem);margin:0 auto}.footer-wordmark{margin:0;font-size:clamp(3.5rem,10vw,5rem);font-weight:var(--w-heading);line-height:1}.footer-tagline{margin:12px 0 0;max-width:22rem;color:var(--footer-faint);font-size:1.25rem;font-weight:var(--w-light)}.footer-cols{display:flex;gap:64px}.footer-cols h2{margin:0 0 16px;color:var(--footer-ink);font-size:1rem;line-height:1.38;font-weight:var(--w-strong)}.footer-cols ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}.footer-cols a{color:var(--footer-faint);text-decoration:none}.footer-cols a:hover{color:var(--footer-ink)}.footer-base{width:min(100% - 48px,76rem);margin:48px auto 0;padding-top:24px;border-top:1px solid rgb(255 255 255 / .12);color:var(--footer-faint);font-size:.75rem}.page{width:min(100% - 32px,var(--page-w));margin:0 auto;padding:64px 0 96px}.page.narrow{--page-w: 36rem}.lede{margin:0 0 32px;max-width:40rem;color:var(--muted);font-size:1.25rem;font-weight:var(--w-light);line-height:1.38}.muted{color:var(--muted);font-size:.875rem}.page>p:first-child a{text-decoration:none}.hero{padding-top:48px;text-align:center}.hero h1{font-size:clamp(2.75rem,8vw,5rem)}.hero .lede{margin-left:auto;margin-right:auto}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 14px;margin-bottom:24px;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-size:.8125rem;font-weight:var(--w-strong)}button{font:inherit;cursor:pointer;color:inherit}.primary,.secondary,.soft{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--control-h);padding:0 20px;border-radius:var(--r-full);border:1px solid transparent;font-size:1rem;font-weight:var(--w-strong);line-height:1;text-decoration:none;white-space:nowrap;transition:background-color .15s ease,border-color .15s ease,color .15s ease}.primary{background:var(--primary);color:var(--on-primary)}.primary:hover:not(:disabled){background:var(--primary-hover)}.secondary{background:var(--canvas);color:var(--ink);border-color:var(--hairline)}.secondary:hover:not(:disabled){border-color:var(--ink)}.soft{background:var(--canvas-soft);color:var(--ink)}.soft:hover:not(:disabled){background:var(--hairline)}.primary:disabled,.secondary:disabled,.soft:disabled{opacity:.45;cursor:not-allowed}.link-button{background:none;border:0;padding:0;color:var(--ink);font-weight:var(--w-strong);text-decoration:underline;text-underline-offset:3px}.field{display:flex;flex-direction:column;gap:8px;position:relative;min-width:0}.field label{font-size:.8125rem;font-weight:var(--w-strong);color:var(--muted)}input,select,textarea{font:inherit;font-weight:var(--w-body);color:var(--ink);background:var(--field);border:0;border-radius:var(--r-sm);padding:12px 16px;width:100%;min-height:48px;transition:box-shadow .15s ease}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:var(--faint)}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;box-shadow:0 0 0 2px var(--ink)}input[readonly]{color:var(--muted)}input[type=checkbox],input[type=radio]{width:18px;height:18px;min-height:0;padding:0;accent-color:var(--ink)}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:40px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12' fill='none' stroke='%23808080' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center}input[type=date]{min-width:0}input[type=date]::-webkit-calendar-picker-indicator{opacity:.55;cursor:pointer}@media(prefers-color-scheme:dark){input[type=date]::-webkit-calendar-picker-indicator{filter:invert(1)}}.hint{margin:0;font-size:.8125rem;color:var(--muted)}.error{color:var(--danger)}.success{color:var(--ink);font-weight:var(--w-strong)}.search{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:end;margin:0 auto;padding:24px;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-md);text-align:left}.search .primary{grid-column:1 / -1;min-height:48px}.search .field:nth-of-type(3){grid-column:1 / -1}@media(min-width:52rem){.search{grid-template-columns:1fr auto 1fr 12rem auto;padding:16px}.search .primary,.search .field:nth-of-type(3){grid-column:auto}.search .primary{padding:0 28px}}.swap{display:grid;place-items:center;width:48px;height:48px;border:0;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-size:1.1rem}.swap:hover{background:var(--hairline)}.hero~.error{margin-top:16px;text-align:center}.autocomplete ul{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:20;margin:0;padding:6px;list-style:none;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-sm);box-shadow:var(--overlay-shadow);max-height:18rem;overflow-y:auto}.autocomplete li{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;cursor:pointer}.autocomplete li.active,.autocomplete li:hover{background:var(--canvas-soft)}.tabs{display:inline-flex;gap:4px;margin:48px 0 24px;padding:4px;background:var(--canvas-soft);border-radius:var(--r-full)}.tabs button{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 18px;background:none;border:0;border-radius:var(--r-full);color:var(--muted);font-weight:var(--w-strong)}.tabs button:hover{color:var(--ink)}.tabs button[aria-selected=true]{background:var(--canvas);color:var(--ink);box-shadow:var(--segment-shadow)}.count{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 7px;border-radius:var(--r-full);background:var(--hairline);color:var(--ink);font-size:.75rem;font-weight:var(--w-strong)}.tabs button[aria-selected=true] .count{background:var(--primary);color:var(--on-primary)}.card{background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-md);padding:24px;margin-bottom:12px}.card-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:20px}.total{font-weight:var(--w-heading)}.leg{display:grid;gap:16px}@media(min-width:40rem){.leg{grid-template-columns:1fr 1.3fr;align-items:center;gap:32px}}.leg-train{display:flex;flex-direction:column;gap:4px}.leg-train a{text-decoration:none;font-size:1.125rem;font-weight:var(--w-strong);line-height:1.3}.leg-train a:hover{text-decoration:underline}.leg-train a strong{font-weight:var(--w-heading)}.leg-times{display:flex;align-items:center;justify-content:space-between;gap:16px}.leg-times>div{display:flex;flex-direction:column;gap:2px}.leg-times>div:last-child{text-align:right}.clock{font-size:1.75rem;font-weight:var(--w-heading);line-height:1.1;font-variant-numeric:tabular-nums}.leg-duration{flex:1;text-align:center;color:var(--muted);font-size:.8125rem;font-weight:var(--w-strong)}.leg-duration:before{content:"";display:block;height:1px;background:var(--hairline);margin-bottom:8px}.badge{display:inline-grid;place-items:center;margin-left:6px;height:20px;padding:0 7px;background:var(--primary);color:var(--on-primary);border-radius:var(--r-full);font-size:.6875rem;font-weight:var(--w-strong);vertical-align:1px}.wait{display:flex;align-items:center;gap:8px;margin:20px 0;padding:10px 18px;background:var(--canvas-soft);border-radius:var(--r-full);font-size:.875rem;color:var(--muted);font-weight:var(--w-strong)}.empty{margin:0;padding:56px 24px;text-align:center;color:var(--muted);background:var(--canvas-soft);border-radius:var(--r-md);font-size:1rem}.table-wrap{overflow-x:auto;background:var(--canvas);border:1px solid var(--hairline);border-radius:var(--r-md)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{text-align:left;padding:14px 20px;border-bottom:1px solid var(--hairline-soft);white-space:nowrap}tbody th{font-weight:var(--w-strong)}thead th{font-size:.8125rem;color:var(--muted);font-weight:var(--w-strong);background:var(--canvas)}tbody tr:hover>*{background:var(--canvas-soft)}tbody tr:last-child>*{border-bottom:0}.card h2{margin-top:0}.wallet-top{display:grid;gap:12px;margin-bottom:8px}@media(min-width:44rem){.wallet-top{grid-template-columns:1fr 1.3fr;align-items:stretch}}.balance{display:flex;flex-direction:column;justify-content:space-between;gap:8px;margin:0;background:var(--canvas-soft);border-color:transparent}.balance-amount{font-size:clamp(2.5rem,6vw,3.5rem);font-weight:var(--w-heading);line-height:1;font-variant-numeric:tabular-nums}.topup{display:flex;flex-direction:column;gap:16px;margin:0}.topup h2,.topup p{margin:0}.topup .primary{align-self:flex-start}.presets{display:flex;flex-wrap:wrap;gap:8px}.presets button{height:40px;padding:0 18px;border:0;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-weight:var(--w-strong);font-variant-numeric:tabular-nums}.presets button:hover{background:var(--hairline)}.presets button[aria-pressed=true]{background:var(--primary);color:var(--on-primary)}.num{text-align:right;font-variant-numeric:tabular-nums}.credit{color:var(--ink);font-weight:var(--w-strong)}.debit{color:var(--muted)}.pager{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:16px}.pager button{height:40px;padding:0 18px;border-radius:var(--r-full);background:var(--canvas);color:var(--ink);border:1px solid var(--hairline);font-weight:var(--w-strong)}.pager button:hover:not(:disabled){border-color:var(--ink)}.pager button:disabled{opacity:.4;cursor:default}.summary{margin:0 0 24px;display:grid}.summary>div{display:flex;justify-content:space-between;gap:16px;border-bottom:1px solid var(--hairline-soft);padding:14px 0}.summary>div:first-child{padding-top:0}.summary dt{color:var(--muted)}.summary dd{margin:0;font-weight:var(--w-heading);font-variant-numeric:tabular-nums}.card>.primary{width:100%}.card>p[role=status],.card>p[role=alert]{margin:0 0 16px}.ticket .qr{display:flex;justify-content:center;margin:8px 0 24px;padding:24px;background:var(--canvas-soft);border-radius:var(--r-sm)}.ticket .qr img{background:#fff;padding:10px;border-radius:12px}.train-card-footer{margin-top:24px;padding-top:20px;border-top:1px solid var(--hairline-soft);display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.book-link{text-decoration:none}.availability-card{margin-top:20px;padding:20px;background:var(--canvas-soft);border-radius:var(--r-md);display:flex;flex-direction:column;gap:16px}.availability-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.availability-header h3{margin:0 0 2px;font-size:1.25rem}.quota-selector{display:flex;align-items:center;gap:10px}.quota-selector label{font-size:.8125rem;font-weight:var(--w-strong);color:var(--muted)}.quota-selector select{width:auto;min-height:40px;padding-top:8px;padding-bottom:8px;background-color:var(--canvas);border-radius:var(--r-full)}.availability-matrix-wrapper{overflow-x:auto;border-radius:var(--r-sm);background:var(--canvas)}.availability-table{width:100%;border-collapse:collapse}.availability-table th,.availability-table td{padding:12px 10px;text-align:center;border:0;border-bottom:1px solid var(--hairline-soft)}.availability-table thead th{font-size:.8125rem;color:var(--muted)}.availability-table tbody tr:last-child td{border-bottom:0}.availability-table tbody tr:hover>*{background:transparent}.availability-table th.class-col,.availability-table td.class-info{text-align:left;min-width:120px;padding-left:16px;font-weight:var(--w-heading)}.class-subtext{display:block;font-size:.75rem;font-weight:var(--w-body);color:var(--muted)}.empty-cell{color:var(--faint)}.cell-interactive{cursor:pointer;border-radius:14px;transition:background .15s ease}.availability-table td.cell-interactive:hover{background:var(--canvas-soft)}.availability-table td.cell-interactive.selected-cell{background:var(--canvas-soft);box-shadow:inset 0 0 0 2px var(--ink)}.status-badge,.status-text{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--r-full);font-weight:var(--w-strong);font-size:.75rem;white-space:nowrap}.badge-avl{background:var(--primary);color:var(--on-primary)}.badge-rac{background:var(--canvas-soft);color:var(--ink);box-shadow:inset 0 0 0 1px var(--hairline)}.badge-wl{background:transparent;color:var(--muted);box-shadow:inset 0 0 0 1px var(--hairline)}.cell-fare{font-size:.8125rem;color:var(--muted);margin-top:6px;font-variant-numeric:tabular-nums}.cell-action-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;padding:12px 12px 12px 20px;background:var(--canvas);border-radius:var(--r-sm)}.cell-action-bar .selected-summary{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.cell-action-bar .action-buttons{display:flex;flex-wrap:wrap;gap:8px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;padding:16px;display:flex;align-items:center;justify-content:center;background:var(--scrim);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.modal-content{width:100%;max-width:480px;overflow:hidden;background:var(--canvas);color:var(--ink);border-radius:var(--r-md);box-shadow:var(--overlay-shadow)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 24px 8px}.modal-header h2{margin:0;font-size:1.5rem}.close-btn{display:grid;place-items:center;width:36px;height:36px;background:var(--canvas-soft);border:none;border-radius:var(--r-full);color:var(--ink);font-size:1rem}.close-btn:hover{background:var(--hairline)}.modal-body{padding:16px 24px}.fare-metric{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding:12px 18px;background:var(--canvas-soft);border-radius:var(--r-full)}.fare-table{width:100%}.fare-table td{padding:12px 0;border-bottom:1px solid var(--hairline-soft)}.fare-table tr:hover>*{background:transparent}.fare-table td.amount{text-align:right;font-variant-numeric:tabular-nums}.fare-table tr.total-row td{border-bottom:none;padding-top:16px;font-size:1.25rem;font-weight:var(--w-heading)}.discount-row td{color:var(--ink);font-weight:var(--w-strong)}.modal-footer{padding:8px 24px 24px;display:flex;justify-content:flex-end}.modal-footer .primary{width:100%}.coach-layout-container{padding:20px;background:var(--canvas);border-radius:var(--r-sm)}.coach-selector h4,.coach-header h4{margin:0;font-size:1rem;font-weight:var(--w-heading)}.coach-pills{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 20px}.coach-pills .pill{height:36px;padding:0 16px;border:0;border-radius:var(--r-full);background:var(--canvas-soft);color:var(--ink);font-weight:var(--w-strong);font-size:.875rem}.coach-pills .pill:hover{background:var(--hairline)}.coach-pills .pill.active{background:var(--primary);color:var(--on-primary)}.coach-schematic{padding:20px;background:var(--canvas-soft);border-radius:var(--r-sm)}.coach-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}.legend{display:flex;gap:16px;font-size:.8125rem;color:var(--muted)}.legend-item{display:flex;align-items:center;gap:6px}.berth-indicator{width:14px;height:14px;border-radius:var(--r-squircle);display:inline-block}.berth-indicator.available{background:var(--canvas);box-shadow:inset 0 0 0 1.5px var(--ink)}.berth-indicator.booked{background:var(--hairline)}.berths-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(52px,1fr));gap:8px}.berth-cell{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;aspect-ratio:1;border-radius:var(--r-squircle);font-size:.75rem}.berth-cell.is-available{background:var(--canvas);color:var(--ink);box-shadow:inset 0 0 0 1.5px var(--ink)}.berth-cell.is-booked{background:var(--hairline);color:var(--faint)}.berth-number{font-weight:var(--w-heading);font-size:.9375rem;font-variant-numeric:tabular-nums}.berth-type{font-size:.6875rem;font-weight:var(--w-strong)}@media(max-width:40rem){.page{padding-top:40px}.card{padding:20px}.tabs{display:flex}.tabs button{flex:1;justify-content:center}th,td{padding:12px 16px}}
