:root{--bb-navy: #0b3d6e;--bb-blue: #155eae;--bb-cta: #0f7a4a;--bb-primary: var(--bb-navy);--bb-primary-hover: #082f55;--bb-secondary: var(--bb-blue);--bb-secondary-hover: #114e92;--bb-accent: var(--bb-cta);--bb-accent-hover: #0c6840;--bb-bg: #f4f7fb;--bb-background: var(--bb-bg);--bb-surface: #ffffff;--bb-card: var(--bb-surface);--bb-text: #122033;--bb-text-primary: var(--bb-text);--bb-muted: #5c6b7a;--bb-text-secondary: var(--bb-muted);--bb-line: #d7e0ea;--bb-border: var(--bb-line);--bb-success: #087443;--bb-success-bg: #e7f6ee;--bb-warning: #b54708;--bb-warn: var(--bb-warning);--bb-warning-bg: #fff6eb;--bb-danger: #b42318;--bb-error: var(--bb-danger);--bb-danger-bg: #fdeceb;--bb-info: #175cd3;--bb-info-bg: #e8f1fb;--bb-focus: var(--bb-info);--bb-on-primary: #ffffff;--bb-on-primary-muted: #d7e6f7;--bb-neutral-bg: #eef2f6;--bb-hover-surface: #f7fafc;--bb-canvas: #eef3f8;--bb-taken: #d9e1ea;--bb-error-hover: #912018;--bb-danger-border: #f4c0bb;--bb-success-border: #b7e4c9;--bb-warning-border: #f5d3a8;--bb-info-border: #c5daf3;--bb-border-strong: #8bb2d9;--bb-space-1: .25rem;--bb-space-2: .5rem;--bb-space-3: .75rem;--bb-space-4: 1rem;--bb-space-5: 1.25rem;--bb-space-6: 1.5rem;--bb-space-8: 2rem;--bb-radius-xs: 8px;--bb-radius-sm: 10px;--bb-radius: 14px;--bb-radius-pill: 999px;--bb-shadow-sm: 0 1px 2px rgba(18, 32, 51, .05);--bb-shadow: 0 1px 2px rgba(18, 32, 51, .04), 0 10px 28px rgba(18, 32, 51, .06);--bb-shadow-focus: 0 0 0 3px rgba(21, 94, 174, .16);--bb-shadow-focus-error: 0 0 0 3px rgba(180, 35, 24, .16);--bb-skeleton-from: #e7eef5;--bb-skeleton-to: #f8fafc;--bb-font: "Segoe UI", system-ui, sans-serif;--bb-display: clamp(2.1rem, 5vw, 3.25rem);--bb-h1: clamp(1.7rem, 3vw, 2.15rem);--bb-h2: 1.25rem;--bb-h3: 1.05rem;--bb-body: 1rem;--bb-small: .875rem;--bb-caption: .75rem;--bb-label: .8125rem;--bb-button: .9375rem;font-family:var(--bb-font);font-size:var(--bb-body);line-height:1.5;color:var(--bb-text-primary);background:var(--bb-background)}*{box-sizing:border-box}html,body{margin:0;min-height:100%}a{color:var(--bb-secondary);text-decoration:none}a:hover{color:var(--bb-secondary-hover)}h1,h2,h3{margin:0 0 .4rem;font-weight:700;letter-spacing:-.02em;line-height:1.2;overflow-wrap:break-word}h1{font-size:var(--bb-h1)}h2{font-size:var(--bb-h2)}h3{font-size:var(--bb-h3)}p{margin:0 0 .6rem}.shell{min-height:100vh;display:flex;flex-direction:column}.progress{position:sticky;top:0;height:3px;background:var(--bb-cta);z-index:20}.topbar{display:flex;align-items:center;justify-content:space-between;gap:var(--bb-space-4);padding:.9rem 1.1rem;background:var(--bb-primary);color:var(--bb-on-primary);flex-wrap:wrap}.brand,.brand:hover{color:var(--bb-on-primary);font-weight:800;letter-spacing:.08em}.nav{display:flex;gap:var(--bb-space-4);align-items:center}.nav a,.nav-user,.link-button{color:var(--bb-on-primary-muted);background:none;border:0;cursor:pointer;font:inherit}.nav a.active,.nav a.active:hover{color:var(--bb-on-primary);font-weight:700}.menu-toggle{display:none}.main{flex:1;width:min(1080px,100% - 2rem);margin:1.25rem auto 2rem;min-width:0}.footer{padding:1rem;text-align:center;color:var(--bb-muted);border-top:1px solid var(--bb-line)}.hero{display:grid;gap:1.25rem}.hero-copy h1{font-size:var(--bb-display);line-height:1.08}.lede,.muted,.eyebrow{color:var(--bb-text-secondary)}.lede{font-size:1.05rem;line-height:1.55}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:var(--bb-caption);font-weight:700}.card,.search-card,.auth-card{background:var(--bb-surface);border:1px solid var(--bb-border);border-radius:var(--bb-radius);box-shadow:var(--bb-shadow);padding:var(--bb-space-5)}.search-card,.auth-card,.page{display:grid;gap:var(--bb-space-4)}.page-head{display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;flex-wrap:wrap}.auth-page{display:grid;place-items:start center;padding-top:1rem}.auth-card{width:min(420px,100%)}.field{display:grid;gap:var(--bb-space-1);position:relative}.field span{font-size:var(--bb-label);font-weight:600;letter-spacing:.01em}input,select,textarea{width:100%;border:1px solid var(--bb-border);border-radius:var(--bb-radius-sm);padding:.7rem .8rem;min-height:44px;font:inherit;color:var(--bb-text-primary);background:var(--bb-surface);transition:border-color .15s ease,box-shadow .15s ease}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--bb-secondary);box-shadow:var(--bb-shadow-focus)}input.ng-invalid.ng-touched,select.ng-invalid.ng-touched,textarea.ng-invalid.ng-touched{border-color:var(--bb-error)}input.ng-invalid.ng-touched:focus,select.ng-invalid.ng-touched:focus,textarea.ng-invalid.ng-touched:focus{box-shadow:var(--bb-shadow-focus-error)}.field-error{color:var(--bb-error);margin:0;font-size:var(--bb-small)}.picker-menu{position:absolute;z-index:30;top:calc(100% + 4px);left:0;right:0;background:var(--bb-surface);border:1px solid var(--bb-border);border-radius:var(--bb-radius-sm);max-height:min(240px,100dvh - 8rem);overflow:auto;box-shadow:var(--bb-shadow)}.picker-item{width:100%;text-align:left;border:0;background:var(--bb-surface);padding:.7rem .8rem;display:grid;cursor:pointer;font:inherit;color:var(--bb-text-primary)}.picker-item:hover{background:var(--bb-hover-surface)}.btn,.btn-small{display:inline-flex;justify-content:center;align-items:center;gap:var(--bb-space-1);border:1px solid var(--bb-border);background:var(--bb-surface);color:var(--bb-text-primary);border-radius:var(--bb-radius-sm);padding:.7rem var(--bb-space-4);min-height:44px;font:inherit;font-size:var(--bb-button);font-weight:700;line-height:1.2;cursor:pointer;text-decoration:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.btn:hover{background:var(--bb-hover-surface);border-color:var(--bb-border-strong);color:var(--bb-text-primary)}.btn-small{min-height:36px;padding:.4rem .8rem;font-size:var(--bb-small)}.btn-primary,.btn-primary:hover{color:var(--bb-on-primary)}.btn-primary{background:var(--bb-accent);border-color:var(--bb-accent)}.btn-primary:hover{background:var(--bb-accent-hover);border-color:var(--bb-accent-hover)}.btn-danger,.btn-danger:hover{color:var(--bb-on-primary)}.btn-danger{background:var(--bb-error);border-color:var(--bb-error)}.btn-danger:hover{background:var(--bb-error-hover);border-color:var(--bb-error-hover)}.btn-ghost{background:transparent;color:var(--bb-on-primary);border-color:transparent}.page .btn-ghost{color:var(--bb-secondary)}.page .btn-ghost:hover{background:var(--bb-info-bg);color:var(--bb-secondary-hover)}.btn-block{width:100%}.btn:disabled,.btn:disabled:hover,.btn:disabled:active{opacity:.55;cursor:not-allowed;box-shadow:none;transform:none}.btn:disabled:hover,.btn:disabled:active{background:var(--bb-surface);border-color:var(--bb-border);color:var(--bb-text-primary)}.btn-primary:disabled,.btn-primary:disabled:hover,.btn-primary:disabled:active{background:var(--bb-accent);border-color:var(--bb-accent);color:var(--bb-on-primary)}.btn-danger:disabled,.btn-danger:disabled:hover,.btn-danger:disabled:active{background:var(--bb-error);border-color:var(--bb-error);color:var(--bb-on-primary)}.btn-ghost:disabled,.btn-ghost:disabled:hover,.btn-ghost:disabled:active{background:transparent;border-color:transparent;color:var(--bb-on-primary)}.page .btn-ghost:disabled,.page .btn-ghost:disabled:hover,.page .btn-ghost:disabled:active{color:var(--bb-secondary)}:focus-visible{outline:3px solid var(--bb-focus);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:none}.trip-list,.stack{display:grid;gap:var(--bb-space-4)}.booking-row{display:grid;gap:1rem;color:inherit}.booking-meta{display:grid;gap:.4rem;justify-items:start}.duration{color:var(--bb-muted);font-size:.85rem}.fare{font-size:1.3rem;font-weight:800}.operator{font-weight:700;color:var(--bb-navy);margin-bottom:.2rem}.booking-row-main{color:inherit;display:grid;gap:.2rem}.plain-list{margin:0;padding-left:1.1rem}.back{color:var(--bb-muted)}.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:var(--bb-radius-pill);font-size:var(--bb-caption);font-weight:700;letter-spacing:.02em;background:var(--bb-neutral-bg);color:var(--bb-text-primary)}.badge[data-tone=success]{background:var(--bb-success-bg);color:var(--bb-success)}.badge[data-tone=warn]{background:var(--bb-warning-bg);color:var(--bb-warning)}.badge[data-tone=danger]{background:var(--bb-danger-bg);color:var(--bb-error)}.badge[data-tone=info]{background:var(--bb-info-bg);color:var(--bb-info)}app-empty-state .empty{display:grid;justify-items:center;gap:var(--bb-space-3);background:var(--bb-surface);border:1px dashed var(--bb-border);border-radius:var(--bb-radius);padding:var(--bb-space-8) var(--bb-space-5);text-align:center}app-empty-state .empty h2{margin-bottom:0}app-empty-state .empty p{max-width:36rem;color:var(--bb-text-secondary);margin-bottom:0}.empty-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--bb-space-2)}.operator-alert{display:grid;gap:var(--bb-space-1);border:1px solid transparent;border-radius:var(--bb-radius-sm);padding:var(--bb-space-3) var(--bb-space-4);font-weight:600}.skeleton{min-height:96px;border-radius:var(--bb-radius);border:0;background:linear-gradient(90deg,var(--bb-skeleton-from),var(--bb-skeleton-to),var(--bb-skeleton-from));background-size:200% 100%;animation:pulse 1.2s infinite}@keyframes pulse{to{background-position:-200% 0}}@media(prefers-reduced-motion:reduce){.skeleton{animation:none}.btn,input,select,textarea{transition:none}}.operator-shell{background:var(--bb-canvas)}.operator-topbar{background:var(--bb-primary-hover)}.operator-topbar .brand span,.operator-sidebar .brand span{margin-left:.35rem;color:var(--bb-on-primary-muted);font-size:.72rem;letter-spacing:.04em}.operator-app{flex:1;display:grid;grid-template-columns:248px minmax(0,1fr);min-height:0}.operator-sidebar{display:flex;flex-direction:column;gap:.35rem;background:var(--bb-primary);color:var(--bb-on-primary);padding:1.1rem .85rem 1.25rem;min-height:100vh;max-height:100vh;overflow:auto;position:sticky;top:0}.operator-sidebar .brand{padding:.2rem .55rem .7rem}.operator-app .operator-nav{display:flex;flex-direction:column;align-items:stretch;gap:.15rem;margin:.35rem 0 0;width:100%}.operator-app .operator-nav a,.operator-app .operator-nav .link-button{display:flex;align-items:center;width:100%;text-align:left;padding:.55rem .75rem;border-radius:10px}.operator-app .operator-nav a.active{background:#ffffff1f}.operator-app .operator-nav a[href="/profile"]{margin-top:.85rem;border-top:1px solid rgba(255,255,255,.14);border-radius:0 0 10px 10px;padding-top:.9rem}.operator-app .operator-nav .nav-user{padding:.7rem .75rem .15rem}.operator-workspace{display:flex;flex-direction:column;min-width:0;background:var(--bb-canvas)}.operator-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;width:min(1180px,100% - 2rem);margin:0 auto;padding:1rem 0 .15rem}.operator-header .operator-identity{color:var(--bb-text-primary);margin-right:0;min-width:0}.operator-header .operator-identity strong{overflow-wrap:anywhere}.operator-identity{display:flex;align-items:center;gap:.65rem}.operator-switcher-inline{display:grid;gap:.25rem;font-size:var(--bb-caption);font-weight:700;color:var(--bb-text-secondary)}.operator-switcher-inline select{width:min(280px,100%)}.operator-main{flex:1;width:min(1180px,100% - 2rem);margin:.75rem auto 2rem;min-width:0}.operator-access-main{width:min(900px,100% - 2rem);padding-top:2rem}.operator-access-nav{margin-left:auto}.operator-page{min-width:0}.operator-page-actions,.operator-badge-row{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.operator-alert-danger{color:var(--bb-error);background:var(--bb-danger-bg);border-color:var(--bb-danger-border)}.operator-alert-success{color:var(--bb-success);background:var(--bb-success-bg);border-color:var(--bb-success-border)}.operator-alert-info{color:var(--bb-info);background:var(--bb-info-bg);border-color:var(--bb-info-border)}.operator-alert-warn{color:var(--bb-warning);background:var(--bb-warning-bg);border-color:var(--bb-warning-border)}.operator-alert-list{display:grid;gap:.75rem;margin:0;padding:0;list-style:none}.operator-alert-item{display:grid;gap:.45rem;align-content:start}.operator-alert-item p{margin:0;font-weight:500}.operator-form{display:grid;gap:1.25rem}.operator-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.operator-filter-bar{display:grid;grid-template-columns:minmax(220px,2fr) minmax(180px,1fr);gap:1rem;align-items:end}.operator-filter-bar .field-hint{grid-column:1/-1;margin:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.operator-table-wrap{border:1px solid var(--bb-border);border-radius:var(--bb-radius);background:var(--bb-surface);overflow-x:auto}.operator-data-table{width:100%;border-collapse:collapse}.operator-data-table th,.operator-data-table td{text-align:left;padding:.8rem .85rem;border-top:1px solid var(--bb-line);vertical-align:top}.operator-data-table thead th{color:var(--bb-text-secondary);font-size:var(--bb-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--bb-canvas);border-top:0}.operator-data-table tbody tr:hover{background:var(--bb-hover-surface)}.operator-data-table tbody th{font-weight:700}.operator-data-table small{display:block;color:var(--bb-muted);font-weight:500}.operator-filter-bar-trips{grid-template-columns:minmax(200px,2fr) minmax(160px,.9fr) minmax(170px,.9fr)}.operator-filter-bar-ops{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.operator-action-card{display:grid;gap:1rem}.field-hint{color:var(--bb-muted);line-height:1.35}.operator-form input.ng-invalid.ng-touched,.operator-form select.ng-invalid.ng-touched,.operator-form textarea.ng-invalid.ng-touched{border-color:var(--bb-error)}.operator-dialog-backdrop{position:fixed;inset:0;z-index:40;display:grid;justify-items:center;align-items:safe center;padding:1rem;overflow:auto;background:#082f5594}.operator-dialog{display:grid;gap:1.25rem;width:min(480px,100%);min-height:0;margin-block:auto;max-height:calc(100vh - 2rem);max-height:calc(100dvh - 2rem);overflow:auto}.operator-selector-grid,.operator-card-grid,.operator-metric-grid,.operator-content-grid{display:grid;gap:1rem}.operator-selector-card{display:flex;align-items:center;justify-content:space-between;gap:1rem;width:100%;text-align:left;color:var(--bb-text);cursor:pointer}.operator-selector-card:hover,.operator-resource-card:hover{border-color:var(--bb-border-strong)}.operator-selector-card span,.operator-resource-card span{display:grid;gap:.25rem;min-width:0}.operator-selector-card small,.operator-resource-card small,.operator-trip-times small,.operator-stop-list small,.operator-seat-card small{color:var(--bb-muted)}.operator-metric-card{display:grid;gap:.55rem;align-content:start}.operator-metric-card>span{font-size:var(--bb-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.operator-metric-card>strong{color:var(--bb-navy);font-size:2.15rem;line-height:1;letter-spacing:-.03em}.operator-metric-card>a{font-weight:700}.operator-metric-card code{font-size:.75rem;overflow-wrap:anywhere}.operator-large-skeleton{min-height:260px}.operator-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:.85rem}.operator-resource-card{display:grid;gap:.85rem;color:var(--bb-text);min-width:0;transition:border-color .15s ease,box-shadow .15s ease}.operator-resource-card:hover{box-shadow:var(--bb-shadow)}.operator-detail-list{display:grid;gap:0;margin:.8rem 0 0}.operator-detail-list>div{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:1rem;padding:.65rem 0;border-top:1px solid var(--bb-line)}.operator-detail-list dt{color:var(--bb-muted)}.operator-detail-list dd{margin:0;font-weight:600;overflow-wrap:anywhere}.operator-detail-list dd>small{display:block;margin-top:.2rem;color:var(--bb-muted)}.operator-detail-list-compact>div{grid-template-columns:1fr;gap:.2rem}.operator-trip-row,.operator-booking-row{display:grid;gap:1rem;color:var(--bb-text);min-width:0}.operator-trip-times{display:grid;grid-template-columns:repeat(2,minmax(150px,1fr));gap:.8rem 1rem}.operator-trip-times>span{display:grid;gap:.2rem}.operator-stop-list{display:grid;gap:0;margin:0;padding:0;list-style:none;counter-reset:stops}.operator-stop-list>li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem 1rem;border-top:1px solid var(--bb-line);padding:.85rem 0;counter-increment:stops}.operator-stop-list>li>div{display:grid;gap:.2rem}.operator-stop-list>li>div strong:before{content:counter(stops) ". ";color:var(--bb-muted)}.operator-stop-list .plain-list{grid-column:1/-1}.operator-seat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:.75rem}.operator-seat-card{display:grid;gap:.35rem;border:1px solid var(--bb-border);border-radius:var(--bb-radius-sm);padding:.75rem}.operator-seat-card-blocked{border-color:var(--bb-danger-border);background:var(--bb-danger-bg)}.operator-inventory-deck{display:grid;gap:1.15rem}.operator-inventory-row{display:grid;gap:.75rem}.operator-inventory-row>h3{margin:0;font-size:.95rem;color:var(--bb-muted)}.operator-manifest{display:grid}.operator-manifest article{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(100px,.7fr) auto;gap:1rem;align-items:center;border-top:1px solid var(--bb-line);padding:.85rem 0}.operator-manifest article>div{display:grid;gap:.2rem}.operator-page code{overflow-wrap:anywhere}.operator-nested-card,.operator-stop-editor{display:grid;gap:1rem}.operator-journey{display:grid;gap:0;margin:0;padding:0;list-style:none}.operator-journey-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.9rem;position:relative;padding-bottom:1.15rem}.operator-journey-item:not(.operator-journey-item-last):before{content:"";position:absolute;left:.95rem;top:2.1rem;bottom:0;width:2px;background:var(--bb-line)}.operator-journey-index{width:2rem;height:2rem;border-radius:999px;display:grid;place-items:center;background:var(--bb-navy);color:var(--bb-on-primary);font-size:.82rem;font-weight:700;position:relative;z-index:1}.operator-journey-item>div{display:grid;gap:.3rem;min-width:0}.operator-point-list{display:grid;gap:.65rem;margin:.75rem 0 0;padding:0;list-style:none}.operator-point-list>li{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;border-top:1px solid var(--bb-line);padding-top:.65rem}.operator-point-list>li>span{display:grid;gap:.15rem}@media(min-width:800px){.hero{grid-template-columns:1fr 1.1fr;align-items:center}.booking-row{grid-template-columns:1fr auto;align-items:center}.operator-selector-grid,.operator-card-grid,.operator-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operator-content-grid{grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr)}.operator-trip-row,.operator-booking-row{grid-template-columns:minmax(0,1fr) minmax(360px,auto);align-items:center}}@media(min-width:1100px){.operator-metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.operator-selector-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:900px){.menu-toggle{display:inline-flex;color:var(--bb-on-primary);background:transparent;border:1px solid color-mix(in srgb,var(--bb-on-primary) 45%,transparent);border-radius:var(--bb-radius-pill);padding:.4rem .8rem}.nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bb-navy);flex-direction:column;align-items:flex-start;padding:1rem}.nav.open{display:flex}.topbar,.customer-topbar:has(.nav.open){position:sticky;top:0;z-index:30}.operator-access-nav{display:flex;position:static;flex-direction:row;align-items:center;padding:0;background:transparent}.operator-app{grid-template-columns:1fr}.operator-sidebar{min-height:0;max-height:none;overflow:visible;position:sticky;z-index:12;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between}.operator-sidebar:has(.operator-nav.open){z-index:30}.operator-app .operator-nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--bb-primary);padding:.75rem;margin:0}.operator-app .operator-nav.open{display:flex}}@media print{@page{size:A4;margin:12mm}.progress,.topbar,.footer,.ticket-toolbar{display:none!important}.shell,.main{display:block;width:100%;max-width:none;margin:0;min-height:0}.page{gap:0}}@media(max-width:640px){.operator-identity{order:3;width:100%}.operator-trip-times{grid-template-columns:1fr}.operator-detail-list>div{grid-template-columns:1fr;gap:.2rem}.operator-form-grid,.operator-filter-bar,.operator-filter-bar-trips{grid-template-columns:1fr}.operator-manifest article{grid-template-columns:1fr auto}.operator-manifest article>div:first-child{grid-column:1/-1}.operator-access-nav .nav-user{display:none}}.card app-empty-state .empty{background:transparent;border:0;padding:var(--bb-space-4) 0}.customer-topbar{position:sticky;top:0;z-index:10}.customer-footer{display:grid;gap:var(--bb-space-2);justify-items:center}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--bb-space-4)}.customer-topbar .nav a:hover,.customer-topbar .link-button:hover{color:var(--bb-on-primary)}.home-page{gap:var(--bb-space-6)}.search-places{display:grid;gap:var(--bb-space-3)}.swap-button{justify-self:start}.home-points{display:grid;gap:var(--bb-space-4)}.recent-list{display:flex;flex-wrap:wrap;gap:var(--bb-space-2)}.recent-list .btn{display:grid;justify-items:start;gap:.1rem;height:auto}.recent-list small{color:var(--bb-text-secondary);font-weight:600}.results-toolbar{display:grid;gap:var(--bb-space-3);align-items:end}.journey-card{display:grid;gap:var(--bb-space-4);transition:border-color .15s ease,box-shadow .15s ease}.journey-card:hover{border-color:var(--bb-border-strong)}.journey-main,.journey-side{display:grid;gap:var(--bb-space-2);align-content:start}.journey-side{justify-items:start}.journey-times{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:var(--bb-space-3);align-items:center}.journey-clock{display:block;font-size:1.35rem;letter-spacing:-.03em}.journey-times .duration{justify-self:center;padding:.2rem .55rem;border-radius:var(--bb-radius-pill);background:var(--bb-canvas);font-weight:700;white-space:nowrap}.place{display:block;margin-top:.15rem;font-size:var(--bb-small);font-weight:800;letter-spacing:.04em;text-transform:uppercase}.results-page .skeleton.card{min-height:148px}.journey-points{display:grid;gap:var(--bb-space-4)}.journey-points h2,.journey-points h3{margin:0;font-size:var(--bb-caption);letter-spacing:.08em;text-transform:uppercase;color:var(--bb-text-secondary)}.point-timeline{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.point-timeline li{display:grid;gap:.1rem;position:relative;padding-left:1rem}.point-timeline li:before{content:"";position:absolute;left:0;top:.45rem;width:.45rem;height:.45rem;border-radius:var(--bb-radius-pill);background:var(--bb-accent)}.point-timeline small{color:var(--bb-text-secondary)}@media(min-width:800px){.home-points{grid-template-columns:repeat(3,minmax(0,1fr))}.results-toolbar{grid-template-columns:1.2fr 1fr 1fr}.results-page .journey-card{grid-template-columns:minmax(0,1fr) 180px;align-items:start}.results-page .journey-points{grid-column:1/-1;grid-template-columns:1fr 1fr}.results-page .journey-side{justify-items:end;text-align:right}}@media(max-width:640px){.journey-times{grid-template-columns:1fr}.journey-side{justify-items:stretch}.journey-side .btn{width:100%}}@media(prefers-reduced-motion:reduce){.journey-card,.operator-resource-card{transition:none}}.profile-page{width:min(640px,100%)}.profile-card{display:grid;gap:var(--bb-space-4)}.profile-name{margin:0;font-size:var(--bb-h2);font-weight:800;letter-spacing:-.03em}.profile-details{display:grid;gap:0;margin:0}.profile-details>div{display:grid;gap:.15rem;padding:.7rem 0;border-top:1px solid var(--bb-border)}.profile-details dt{color:var(--bb-text-secondary);font-size:var(--bb-caption);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.profile-details dd{margin:0;font-weight:700}
