:root{--text:#475569;--text-h:#0f172a;--text-muted:#64748b;--bg:#f8fafc;--surface:#fff;--surface-muted:#f1f5f9;--border:#e2e8f0;--primary:#2563eb;--primary-dark:#1d4ed8;--primary-bg:#2563eb1a;--primary-ring:#2563eb2e;--success:#15803d;--success-bg:#15803d1a;--danger:#b91c1c;--danger-bg:#b91c1c14;--danger-border:#b91c1c33;--shadow:0 10px 30px #0f172a14;--sans:"Plus Jakarta Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--heading:"Plus Jakarta Sans", "Segoe UI", system-ui, -apple-system, sans-serif;--mono:ui-monospace, "Cascadia Code", Consolas, monospace;font:16px/1.5 var(--sans);color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}#root{min-height:100svh}h1,h2,h3{font-family:var(--heading);color:var(--text-h);font-weight:600}button,input{font:inherit}.auth-loading{min-height:100svh;color:var(--text-muted);place-items:center;gap:12px;display:grid}.auth-loading__spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:36px;height:36px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.admin-layout{background:var(--bg);grid-template-columns:272px 1fr;min-height:100svh;display:grid}.admin-sidebar{color:#cbd5e1;background:linear-gradient(#0f172a 0%,#111827 100%);border-right:1px solid #ffffff0f;height:100svh;position:sticky;top:0}.admin-sidebar__inner{flex-direction:column;height:100%;padding:20px 16px;display:flex}.admin-sidebar__brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;margin-bottom:20px;padding:8px 10px 24px;display:flex}.admin-sidebar__logo{color:#fff;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-radius:12px;flex-shrink:0;place-items:center;width:42px;height:42px;font-size:15px;font-weight:700;display:grid;box-shadow:0 8px 20px #2563eb59}.admin-sidebar__brand-text strong{color:#f8fafc;letter-spacing:-.01em;font-size:16px;font-weight:600;display:block}.admin-sidebar__brand-text span{color:#94a3b8;margin-top:2px;font-size:12px;display:block}.admin-sidebar__nav{flex:1;min-height:0;overflow-y:auto}.admin-sidebar__section-label{color:#64748b;text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;padding:0 12px;font-size:11px;font-weight:600}.admin-sidebar__nav-list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.admin-sidebar__link{color:#94a3b8;border:1px solid #0000;border-radius:10px;align-items:center;gap:12px;width:100%;padding:11px 12px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s,border-color .15s;display:flex}.admin-sidebar__link:hover{color:#e2e8f0;background:#ffffff0f}.admin-sidebar__link--active{color:#f8fafc;background:#2563eb2e;border-color:#3b82f659;box-shadow:inset 3px 0 #3b82f6}.admin-sidebar__link--disabled{opacity:.45;cursor:not-allowed;pointer-events:none}.admin-sidebar__icon{flex-shrink:0;place-items:center;width:20px;height:20px;display:grid}.admin-sidebar__icon svg{width:18px;height:18px}.admin-sidebar__link-text{text-align:left;flex:1;min-width:0}.admin-sidebar__badge{color:#94a3b8;text-transform:uppercase;letter-spacing:.04em;background:#ffffff14;border-radius:999px;padding:2px 7px;font-size:10px;font-weight:600}.admin-sidebar__footer{border-top:1px solid #ffffff14;gap:10px;margin-top:auto;padding-top:16px;display:grid}.admin-sidebar__profile{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:12px;align-items:center;gap:12px;padding:12px;display:flex}.admin-sidebar__avatar{color:#bfdbfe;background:#2563eb40;border:2px solid #3b82f666;border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:13px;font-weight:700;display:grid}.admin-sidebar__profile-info{text-align:left;min-width:0}.admin-sidebar__profile-info strong{color:#f1f5f9;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;display:block;overflow:hidden}.admin-sidebar__profile-info span{color:#94a3b8;white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:11px;display:block;overflow:hidden}.admin-sidebar__profile-info em{color:#64748b;white-space:nowrap;text-overflow:ellipsis;margin-top:3px;font-size:11px;font-style:normal;display:block;overflow:hidden}.admin-sidebar__logout{color:#e2e8f0;width:100%;font:inherit;cursor:pointer;background:#ffffff08;border:1px solid #ffffff1a;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:500;transition:background .15s,border-color .15s,color .15s;display:flex}.admin-sidebar__logout:hover{color:#fca5a5;background:#ef44441f;border-color:#ef44444d}.admin-main{flex-direction:column;min-width:0;display:flex}.admin-header{justify-content:space-between;align-items:flex-start;gap:16px;padding:28px 32px 0;display:flex}.admin-header__eyebrow{color:var(--text-muted);margin:0 0 4px;font-size:14px}.admin-header h1{letter-spacing:-.02em;margin:0;font-size:28px}.admin-header__meta{color:var(--text-muted);flex-direction:column;align-items:flex-end;gap:6px;font-size:14px;display:flex}.status-pill{background:var(--surface-muted);color:var(--text);border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.status-pill--active{background:var(--success-bg);color:var(--success)}.admin-content{padding:24px 32px 32px}@media (width<=900px){.admin-layout{grid-template-columns:1fr}.admin-sidebar{height:auto;position:relative}.admin-sidebar__inner{padding-bottom:16px}.admin-sidebar__nav-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.admin-sidebar__link{flex-direction:column;align-items:flex-start;gap:8px;min-height:84px;padding:12px}.admin-sidebar__link--active{box-shadow:inset 0 3px #3b82f6}.admin-sidebar__badge{align-self:flex-start}.admin-header{flex-direction:column;padding-inline:20px}.admin-header__meta{align-items:flex-start}.admin-content{padding-inline:20px}}@media (width<=520px){.admin-sidebar__nav-list{grid-template-columns:1fr}.admin-sidebar__link{flex-direction:row;align-items:center;min-height:auto}.admin-sidebar__link--active{box-shadow:inset 3px 0 #3b82f6}}.dashboard{gap:20px;display:grid}.dashboard__toolbar{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.dashboard__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.dashboard__title{letter-spacing:-.02em;margin:0;font-size:22px}.dashboard__actions{flex-wrap:wrap;gap:10px;display:flex}.dashboard__kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;display:grid}.kpi-card{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:14px;padding:20px;transition:box-shadow .2s,transform .2s}.kpi-card:hover{box-shadow:var(--shadow);transform:translateY(-1px)}.kpi-card__top{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:10px;display:flex}.kpi-card__label{color:var(--text-muted);margin:0;font-size:13px;font-weight:500}.kpi-card__badge{white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:600}.kpi-card__badge--up{background:var(--success-bg);color:var(--success)}.kpi-card__badge--down{background:var(--danger-bg);color:var(--danger)}.kpi-card__value{color:var(--text-h);letter-spacing:-.03em;margin:0;font-size:30px;font-weight:700;line-height:1.1}.kpi-card__hint{color:var(--text-muted);margin:8px 0 0;font-size:12px}.insight-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.insight-card{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:12px;align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.insight-card--info{background:linear-gradient(135deg, #2563eb0f, var(--surface));border-color:#2563eb40}.insight-card--success{background:linear-gradient(135deg, #16a34a0f, var(--surface));border-color:#16a34a40}.insight-card--warning{background:linear-gradient(135deg, #f59e0b14, var(--surface));border-color:#f59e0b4d}.insight-card__icon{background:var(--surface-muted);border-radius:10px;flex-shrink:0;place-items:center;width:34px;height:34px;font-size:15px;display:grid}.insight-card h3{margin:0 0 4px;font-size:14px;font-weight:600}.insight-card p{color:var(--text);margin:0;font-size:13px;line-height:1.5}.dashboard__charts{gap:16px;display:grid}.dashboard__charts--main{grid-template-columns:1.6fr 1fr}.dashboard__charts--secondary{grid-template-columns:1fr 1fr}.dashboard-panel{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:14px;padding:20px}.dashboard-panel--wide{min-width:0}.dashboard-panel--table{padding-bottom:12px}.dashboard-panel__header{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.dashboard-panel__header h2{margin:0 0 4px;font-size:16px}.dashboard-panel__header p{color:var(--text-muted);margin:0;font-size:13px}.dashboard-panel__tag{background:var(--primary-bg);color:var(--primary-dark);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;padding:4px 10px;font-size:11px;font-weight:600}.chart-wrap{width:100%;min-height:240px}.chart-tooltip{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);border-radius:10px;padding:10px 12px;font-size:12px}.chart-tooltip__title{color:var(--text-h);margin:0 0 6px;font-weight:600}.chart-tooltip p{color:var(--text);margin:2px 0}.fleet-chart{gap:8px;display:grid}.fleet-chart__donut{position:relative}.fleet-chart__center{text-align:center;pointer-events:none;place-content:center;display:grid;position:absolute;inset:0}.fleet-chart__center strong{color:var(--text-h);font-size:28px;line-height:1}.fleet-chart__center span{color:var(--text-muted);font-size:12px}.fleet-chart__legend{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fleet-chart__legend li{color:var(--text);grid-template-columns:10px 1fr auto auto;align-items:center;gap:10px;font-size:13px;display:grid}.fleet-chart__dot{border-radius:50%;width:10px;height:10px}.fleet-chart__legend strong{color:var(--text-h);font-size:14px}.fleet-chart__legend em{color:var(--text-muted);font-size:12px;font-style:normal}.btn-export{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.btn-export--secondary{background:var(--surface);color:var(--text-h);border:1px solid var(--border)}.btn-export--secondary:hover{background:var(--surface-muted)}.bookings-table-wrap{gap:12px;display:grid}.bookings-table__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.bookings-table__toolbar p{color:var(--text-muted);margin:0;font-size:13px}.bookings-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.bookings-table{border-collapse:collapse;width:100%;font-size:13px}.bookings-table th,.bookings-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.bookings-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.bookings-table tbody tr:hover{background:#2563eb08}.bookings-table tbody tr:last-child td{border-bottom:none}.bookings-table__id{font-family:var(--mono,monospace);color:var(--primary-dark);font-weight:600}.bookings-table__time{color:var(--text-muted)}.status-tag--confirmed{background:var(--success-bg);color:var(--success)}.status-tag--cancelled{background:var(--danger-bg);color:var(--danger)}@media (width<=1200px){.dashboard__kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard__charts--main,.dashboard__charts--secondary,.insight-grid{grid-template-columns:1fr}}@media (width<=700px){.dashboard__toolbar{flex-direction:column;align-items:flex-start}.dashboard__kpis{grid-template-columns:1fr}.dashboard__actions{width:100%}.dashboard__actions .btn-export{flex:1}}.bus-admins-page{gap:16px;display:grid}.bus-admins-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.bus-admins-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.bus-admins-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.bus-admins-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.bus-admins-page__filters,.bus-admins-page__actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.bus-admins-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.bus-admins-filter{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:10px;align-items:center;gap:8px;padding:8px 10px;font-size:13px;display:inline-flex}.bus-admins-filter input{width:16px;height:16px}.bus-admins-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.bus-admins-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.bus-admins-table-wrap{gap:12px;display:grid}.bus-admins-table__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bus-admins-table__left{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.bus-admins-table__count{color:var(--text-muted);margin:0;font-size:13px}.bus-admins-table__search{align-items:center;gap:10px;display:flex}.bus-admins-table__search-label{color:var(--text-muted);font-size:13px;font-weight:600}.bus-admins-table__search input{border:1px solid var(--border);background:var(--bg);width:min(420px,70vw);color:var(--text-h);font:inherit;border-radius:10px;padding:10px 12px}.btn-export{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;transition:opacity .15s}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;transition:opacity .15s}.bus-admin-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.bus-admin-form__field{text-align:left;gap:6px;display:grid}.bus-admin-form__field--full{grid-column:1/-1}.bus-admin-form__field span{color:var(--text-h);font-size:13px;font-weight:600}.bus-admin-form__field input,.bus-admin-form__field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.bus-admin-form__field input:focus,.bus-admin-form__field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.bus-admin-form__checkbox{color:var(--text-h);cursor:pointer;grid-column:1/-1;align-items:center;gap:10px;font-size:14px;display:flex}.bus-admin-form__checkbox input{width:16px;height:16px}.bus-admin-form__error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:14px}.bus-admins-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.bus-admins-table{border-collapse:collapse;width:100%;font-size:13px}.bus-admins-table th,.bus-admins-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.bus-admins-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.bus-admins-table tbody tr:last-child td{border-bottom:none}.bus-admins-table__empty{text-align:center;color:var(--text-muted);padding:28px 14px!important}.bus-admins-page__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bus-admins-page__pagination p{color:var(--text-muted);margin:0;font-size:13px}.bus-admins-page__pagination-actions{gap:10px;display:flex}.bus-admins-table__id{font-family:var(--mono,monospace);color:var(--primary-dark);font-weight:600}.status-tag--verified{background:var(--success-bg);color:var(--success);border:1px solid #15803d33}.status-tag--unverified{color:#b45309;background:#f59e0b1f;border:1px solid #f59e0b38}@media (width<=700px){.bus-admins-page__actions{flex-direction:column;align-items:stretch;width:100%}.bus-admins-page__filters{width:100%}.bus-admins-filter{flex:1;justify-content:center}.bus-admin-form__grid{grid-template-columns:1fr}.modal-panel__actions{flex-direction:column-reverse}.modal-panel__actions .btn-primary,.modal-panel__actions .btn-secondary{width:100%}}.route-overview__timetable{border-top:1px solid var(--border);gap:16px;padding-top:4px;display:grid}.route-overview__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.route-overview__toolbar-title{color:var(--text-h);margin:0;font-size:15px;font-weight:700}.route-overview__toolbar-meta{color:var(--text-muted);margin:2px 0 0;font-size:12px}.route-overview__add-btn{border:1px solid var(--border);background:var(--surface);height:34px;color:var(--primary-dark);cursor:pointer;border-radius:10px;align-items:center;gap:6px;padding:0 12px;font-size:13px;font-weight:600;transition:background .15s,border-color .15s,box-shadow .15s;display:inline-flex}.route-overview__add-btn:hover{background:var(--primary-bg);box-shadow:0 0 0 3px var(--primary-ring);border-color:#2563eb59}.route-overview__add-btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}.route-overview__table-wrap{border:1px solid var(--border);border-radius:12px;overflow:hidden}.route-overview__table{width:100%}.route-overview__table .MuiTableCell-head{color:var(--text-muted);border-bottom:1px solid var(--border);background:#f8fafcf2;padding:10px 12px;font-size:12px;font-weight:700}.route-overview__table .MuiTableCell-body{color:var(--text-h);border-bottom:1px solid var(--border);padding:10px 12px;font-size:13px}.route-overview__table .MuiTableRow-root:last-child .MuiTableCell-body{border-bottom:none}.route-overview__stop-name{font-weight:600}.route-overview__type{border-radius:999px;align-items:center;height:22px;padding:0 8px;font-size:11px;font-weight:600;display:inline-flex}.route-overview__type--halt{color:#15803d;background:#16a34a1f}.route-overview__type--pass{color:#475569;background:#94a3b829}.route-overview__edit-btn{opacity:.55;width:32px!important;height:32px!important;color:var(--text-muted)!important;transition:opacity .15s,background .15s,color .15s!important}.route-overview__row:hover .route-overview__edit-btn,.route-overview__edit-btn:focus-visible{opacity:1;color:var(--primary-dark)!important;background:var(--primary-bg)!important}.route-overview__empty{border:1px dashed var(--border);background:#f8fafccc;border-radius:12px;padding:18px 16px}.route-overview__empty p{color:var(--text-muted);margin:0;font-size:13px}@media (width<=720px){.route-overview__toolbar{flex-direction:column;align-items:flex-start}}.bus-detail-page{gap:20px;display:grid}.bus-detail-loading,.bus-detail-error{min-height:320px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.bus-detail-error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;min-height:auto;padding:16px}.bus-detail-hero{border:1px solid var(--border);background:linear-gradient(135deg, #2563eb14, transparent 55%), var(--surface);box-shadow:var(--shadow);text-align:left;border-radius:18px;gap:18px;padding:24px;display:grid}.bus-detail-back{color:var(--primary-dark);margin-bottom:12px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.bus-detail-back:hover{text-decoration:underline}.bus-detail-hero__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 6px;font-size:13px}.bus-detail-hero__title-row{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.bus-detail-hero h1{letter-spacing:-.03em;margin:0;font-size:30px}.bus-detail-hero__reg{font-family:var(--mono,monospace);color:var(--primary-dark);margin:6px 0 0;font-weight:700}.bus-detail-hero__stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.bus-detail-hero__stats div{border:1px solid var(--border);background:#ffffffb3;border-radius:12px;padding:14px 16px}.bus-detail-hero__stats span{color:var(--text-muted);margin-bottom:4px;font-size:12px;display:block}.bus-detail-hero__stats strong{color:var(--text-h);font-size:18px}.bus-detail-layout{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.bus-detail-sidebar{gap:16px;display:grid}.bus-detail-main{min-width:0}.bus-detail-card{border:1px solid var(--border);background:var(--surface);text-align:left;border-radius:16px;padding:22px}.bus-detail-card h2{margin:0 0 16px;font-size:18px}.bus-detail-card__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.bus-detail-card__header h2{margin:0}.bus-detail-card__header span{color:var(--text-muted);font-size:13px}.bus-detail-owner{align-items:flex-start;gap:14px;display:flex}.bus-detail-owner__avatar{background:var(--primary-bg);width:52px;height:52px;color:var(--primary-dark);border-radius:14px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.bus-detail-owner strong{color:var(--text-h);font-size:16px;display:block}.bus-detail-owner p{color:var(--text-muted);margin:4px 0 0;font-size:14px}.bus-detail-list{gap:12px;margin:0;display:grid}.bus-detail-list--cols{grid-template-columns:repeat(2,minmax(0,1fr))}.bus-detail-item dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;margin:0;font-size:12px;font-weight:600}.bus-detail-item dd{color:var(--text-h);margin:4px 0 0;font-size:15px;font-weight:500}.bus-detail-badge{border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;display:inline-flex}.bus-detail-badge--active,.bus-detail-badge--verified{background:var(--success-bg);color:var(--success)}.bus-detail-badge--inactive,.bus-detail-badge--pending{color:#b45309;background:#f59e0b1f}.bus-detail-card--compact h2{margin-bottom:12px}.bus-detail-card--empty-route{text-align:center;place-content:center;min-height:280px;display:grid}.bus-doc-list{gap:8px;display:grid}.bus-doc-row{border:1px solid var(--border);background:var(--bg);border-radius:10px;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.bus-doc-card{border:1px solid var(--border);background:var(--bg);border-radius:12px;justify-content:space-between;align-items:flex-start;gap:12px;padding:16px;display:flex}.bus-doc-card strong{color:var(--text-h);display:block}.bus-doc-card p{color:var(--text);margin:4px 0 0;font-size:14px}.bus-doc-card__meta{color:var(--text-muted)!important;font-size:12px!important}.bus-doc-card a{color:var(--primary-dark);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.bus-doc-card a:hover{text-decoration:underline}.bus-detail-empty{color:var(--text-muted);margin:0;font-size:14px}.bus-doc-row strong{color:var(--text-h);font-size:14px;display:block}.bus-doc-row p{color:var(--text);margin:2px 0 0;font-size:13px}.bus-doc-row a{color:var(--primary-dark);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.bus-doc-row a:hover{text-decoration:underline}@media (width<=1100px){.bus-detail-layout{grid-template-columns:1fr}.bus-detail-main{order:-1}}.bus-detail-assign{text-align:left;gap:6px;margin-top:14px;display:grid}.bus-detail-assign span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:600}.bus-detail-assign select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;border-radius:10px;padding:10px 12px}.bus-detail-assign__success,.bus-detail-assign__error{margin:10px 0 0;font-size:13px}.bus-detail-assign__success{color:var(--success)}.bus-detail-assign__error{color:var(--danger)}@media (width<=900px){.bus-detail-hero__stats,.bus-detail-list--cols{grid-template-columns:1fr}}.buses-page{gap:16px;display:grid}.buses-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.buses-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.buses-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.buses-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.buses-page__add-link{align-items:center;text-decoration:none;display:inline-flex}.buses-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.buses-page__filters{grid-template-columns:1.4fr 1fr;gap:14px;display:grid}.buses-page__search,.buses-page__owner-filter{text-align:left;gap:6px;display:grid}.buses-page__search span,.buses-page__owner-filter span{color:var(--text-h);font-size:13px;font-weight:600}.buses-page__search input,.buses-page__owner-filter select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.buses-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.buses-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.buses-page__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.buses-page__pagination p{color:var(--text-muted);margin:0;font-size:13px}.buses-page__pagination-actions{gap:10px;display:flex}.buses-table-wrap{gap:12px;display:grid}.buses-table__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.buses-table__count{color:var(--text-muted);margin:0;font-size:13px}.buses-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.buses-table{border-collapse:collapse;width:100%;font-size:13px}.buses-table th,.buses-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.buses-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.buses-table tbody tr:last-child td{border-bottom:none}.buses-table__row:hover{background:#2563eb0a}.buses-table__link{color:inherit;font-weight:inherit;text-decoration:none}.buses-table__link:hover{color:var(--primary-dark);text-decoration:underline}.buses-table__name{color:var(--text-h);font-weight:600}.buses-table__reg{font-family:var(--mono,monospace);color:var(--primary-dark);font-weight:600}.buses-table__owner{color:var(--text-h);font-weight:500;display:block}.buses-table__company{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.buses-table__time{color:var(--text-muted)}.buses-table__empty{text-align:center;color:var(--text-muted);padding:28px 14px!important}.status-tag{border-radius:999px;padding:3px 10px;font-size:11px;font-weight:700;display:inline-flex}.status-tag--active{background:var(--success-bg);color:var(--success);border:1px solid #15803d33}.status-tag--inactive{color:#b45309;background:#f59e0b1f;border:1px solid #f59e0b38}@media (width<=700px){.buses-page__filters{grid-template-columns:1fr}}.cities-page{gap:16px;display:grid}.cities-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.cities-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.cities-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.cities-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.cities-page__filters{grid-template-columns:1.4fr 1fr;gap:14px;display:grid}.cities-page__search,.cities-page__state-filter{text-align:left;gap:6px;display:grid}.cities-page__search span,.cities-page__state-filter span{color:var(--text-h);font-size:13px;font-weight:600}.cities-page__search input,.cities-page__state-filter select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.cities-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.cities-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.cities-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.cities-page__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.cities-page__pagination p{color:var(--text-muted);margin:0;font-size:13px}.cities-page__pagination-actions{gap:10px;display:flex}.cities-table-wrap{gap:12px;display:grid}.cities-table__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.cities-table__count{color:var(--text-muted);margin:0;font-size:13px}.cities-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.cities-table{border-collapse:collapse;width:100%;font-size:13px}.cities-table th,.cities-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.cities-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.cities-table tbody tr:last-child td{border-bottom:none}.cities-table__name{color:var(--text-h);font-weight:600}.cities-table__time{color:var(--text-muted)}.cities-table__empty{text-align:center;color:var(--text-muted);padding:28px 14px!important}.btn-export,.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700;transition:opacity .15s}.btn-export:hover,.btn-primary:hover:not(:disabled){opacity:.92}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-h);font:inherit;cursor:pointer;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600}.city-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.city-form__field{text-align:left;gap:6px;display:grid}.city-form__field span{color:var(--text-h);font-size:13px;font-weight:600}.city-form__field input,.city-form__field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.city-form__field input:focus,.city-form__field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.city-form__error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:14px}@media (width<=700px){.cities-page__filters,.city-form__grid{grid-template-columns:1fr}.modal-panel__actions{flex-direction:column-reverse}.modal-panel__actions .btn-primary,.modal-panel__actions .btn-secondary{width:100%}}.bus-schedules-page{gap:16px;display:grid}.bus-schedules-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.bus-schedules-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.bus-schedules-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.bus-schedules-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.bus-schedules-page__filters{grid-template-columns:1.4fr 1fr;gap:14px;display:grid}.bus-schedules-page__search,.bus-schedules-page__status-filter{text-align:left;gap:6px;display:grid}.bus-schedules-page__search span,.bus-schedules-page__status-filter span{color:var(--text-h);font-size:13px;font-weight:600}.bus-schedules-page__search input,.bus-schedules-page__status-filter select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.bus-schedules-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.bus-schedules-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.bus-schedules-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.bus-schedules-page__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bus-schedules-page__pagination p{color:var(--text-muted);margin:0;font-size:13px}.bus-schedules-page__pagination-actions{gap:10px;display:flex}.bus-schedules-table-wrap{gap:12px;display:grid}.bus-schedules-table__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.bus-schedules-table__count{color:var(--text-muted);margin:0;font-size:13px}.bus-schedules-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.bus-schedules-table{border-collapse:collapse;width:100%;font-size:13px}.bus-schedules-table th,.bus-schedules-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;padding:12px 14px}.bus-schedules-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.bus-schedules-table tbody tr:last-child td{border-bottom:none}.bus-schedules-table__name{color:var(--text-h);font-weight:600}.bus-schedules-table__link{color:var(--primary);font-weight:600;text-decoration:none}.bus-schedules-table__link:hover{text-decoration:underline}.bus-schedules-table__action-link{color:var(--primary);white-space:nowrap;font-size:13px;font-weight:600;text-decoration:none}.bus-schedules-table__action-link:hover{text-decoration:underline}.bus-schedules-table__time{color:var(--text-muted)}.bus-schedules-table__rejection{text-overflow:ellipsis;max-width:180px;color:var(--danger);white-space:nowrap;margin-top:4px;font-size:11px;display:block;overflow:hidden}.bus-schedules-table__empty{text-align:center;color:var(--text-muted);padding:28px 14px!important}.status-tag--approved{color:#15803d;background:#15803d1f}.status-tag--rejected{color:#b91c1c;background:#b91c1c1f}.status-tag--bookable{color:#15803d;background:#15803d1f}.status-tag--inactive{background:var(--surface-muted);color:var(--text-muted)}.btn-export,.btn-primary,.btn-secondary{font:inherit;cursor:pointer;white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600}.btn-secondary:disabled,.btn-primary:disabled{opacity:.7;cursor:not-allowed}.bus-schedule-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.bus-schedule-form__field{text-align:left;gap:6px;display:grid}.bus-schedule-form__field--full{grid-column:1/-1}.bus-schedule-form__field span{color:var(--text-h);font-size:13px;font-weight:600}.bus-schedule-form__field input,.bus-schedule-form__field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.bus-schedule-form__field input:focus,.bus-schedule-form__field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.bus-schedule-form__error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:14px}@media (width<=700px){.bus-schedules-page__filters,.bus-schedule-form__grid{grid-template-columns:1fr}.modal-panel__actions{flex-direction:column-reverse}.modal-panel__actions .btn-primary,.modal-panel__actions .btn-secondary{width:100%}}.schedule-pricing-page{gap:16px;display:grid}.schedule-pricing-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.schedule-pricing-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.schedule-pricing-page__back{color:var(--primary);margin-bottom:8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.schedule-pricing-page__back:hover{text-decoration:underline}.schedule-pricing-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.schedule-pricing-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.schedule-pricing-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.schedule-pricing-page__form{gap:16px;display:grid}.schedule-pricing-page__toolbar{border:1px solid var(--border);background:var(--surface);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;padding:14px 16px;display:flex}.schedule-pricing-page__field{text-align:left;gap:6px;min-width:180px;display:grid}.schedule-pricing-page__field span{color:var(--text-h);font-size:13px;font-weight:600}.schedule-pricing-page__field input,.schedule-pricing-page__field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.schedule-pricing-page__stats{color:var(--text-muted);flex-wrap:wrap;gap:12px;font-size:13px;display:flex}.schedule-pricing-page__stats span{background:var(--surface-muted);border-radius:999px;padding:6px 10px}.schedule-pricing-page__lock-badge{font-weight:700;color:var(--primary)!important;background:#2563eb1f!important}.segment-matrix-wrap--locked .segment-matrix__cell{background:var(--surface-muted)}.segment-matrix__value{min-width:72px;color:var(--text-h);font-weight:600;display:inline-block}.schedule-pricing-page__pattern{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;padding:16px}.schedule-pricing-page__pattern h3{margin:0 0 4px;font-size:15px}.schedule-pricing-page__pattern p{color:var(--text-muted);margin:0 0 12px;font-size:13px}.schedule-pricing-page__pattern-fields{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.schedule-pricing-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.schedule-pricing-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.schedule-pricing-page__actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:12px;display:flex}.schedule-pricing-page__progress{color:var(--text-muted);margin:0;font-size:13px}.segment-matrix-wrap{gap:10px;display:grid}.segment-matrix__hint{color:var(--text-muted);margin:0;font-size:13px}.segment-matrix__empty{border:1px dashed var(--border);color:var(--text-muted);text-align:center;border-radius:12px;margin:0;padding:20px}.segment-matrix__scroll{border:1px solid var(--border);border-radius:12px;max-height:70vh;overflow:auto}.segment-matrix{border-collapse:collapse;width:100%;font-size:13px}.segment-matrix th,.segment-matrix td{border:1px solid var(--border);text-align:center;vertical-align:middle;padding:10px 12px}.segment-matrix__corner,.segment-matrix__row-head{z-index:2;background:var(--surface-muted);text-align:left;min-width:140px;color:var(--text-h);font-weight:600;position:sticky;left:0}.segment-matrix thead th{z-index:1;background:var(--surface-muted);color:var(--text-muted);min-width:110px;font-size:11px;font-weight:600;position:sticky;top:0}.segment-matrix__corner{z-index:3}.segment-matrix__col-head,.segment-matrix__row-head{line-height:1.35}.segment-matrix__stop-order{background:var(--primary);color:#fff;vertical-align:middle;border-radius:999px;justify-content:center;align-items:center;width:20px;height:20px;margin-right:6px;font-size:10px;font-weight:700;display:inline-flex}.segment-matrix__cell--empty{background:var(--surface-muted);color:var(--text-muted)}.segment-matrix__input-label{display:block}.segment-matrix__input{border:1px solid var(--border);background:var(--bg);width:100%;min-width:88px;color:var(--text-h);font:inherit;text-align:center;box-sizing:border-box;border-radius:8px;padding:8px 10px}.segment-matrix__input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.btn-primary,.btn-secondary{font:inherit;cursor:pointer;white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border:none;font-weight:700}.btn-primary:disabled,.btn-secondary:disabled{opacity:.7;cursor:not-allowed}.route-stops-list{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:16px}.route-stops-list h3{margin:0 0 12px;font-size:15px}.route-stops-list--empty p{color:var(--text-muted);margin:0;font-size:13px}.route-stops-list__scroll{overflow-x:auto}.route-stops-list__table{border-collapse:collapse;width:100%;font-size:13px}.route-stops-list__table th,.route-stops-list__table td{border-bottom:1px solid var(--border);text-align:left;padding:10px 12px}.route-stops-list__table th{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.route-stops-list__table tbody tr:last-child td{border-bottom:none}@media (width<=700px){.schedule-pricing-page__pattern-fields{flex-direction:column;align-items:stretch}.schedule-pricing-page__field{min-width:0}}.booking-search-page{gap:20px;display:grid}.booking-search-page__hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.booking-search-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.booking-search-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.booking-search-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.booking-search-form{border:1px solid var(--border);background:var(--surface);border-radius:14px;gap:16px;padding:18px;display:grid}.booking-search-form__grid{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) minmax(180px,220px);align-items:end;gap:14px;display:grid}.booking-search-form__city{min-width:0}.booking-search-form__swap{border:1px solid var(--border);background:var(--surface-muted);width:42px;height:42px;color:var(--text-h);cursor:pointer;border-radius:999px;margin-bottom:2px;font-size:18px}.booking-search-form__swap:hover:not(:disabled){background:var(--primary-bg);border-color:#2563eb40}.booking-search-form__swap:disabled{opacity:.6;cursor:not-allowed}.booking-search-form__date{text-align:left;gap:6px;display:grid}.booking-search-form__date span{color:var(--text-h);font-size:13px;font-weight:600}.booking-search-form__date input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:15px 12px}.booking-search-form__date input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.booking-search-form__submit{justify-self:start}.booking-search-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.booking-search-page__success{background:var(--success-bg);color:var(--success);border:1px solid #15803d40;border-radius:10px;padding:12px 14px;font-size:14px}.booking-search-page__loading{min-height:180px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.available-buses-list{gap:16px;display:grid}.available-buses-list__summary h2{margin:0 0 4px;font-size:20px}.available-buses-list__summary p{color:var(--text-muted);margin:0;font-size:13px}.available-buses-list__cards{gap:14px;display:grid}.available-bus-card{border:1px solid var(--border);background:var(--surface);border-radius:14px;justify-content:space-between;gap:16px;padding:18px;display:flex}.available-bus-card__main{flex:1;gap:14px;min-width:0;display:grid}.available-bus-card__header{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.available-bus-card__name{margin:0 0 4px;font-size:18px}.available-bus-card__meta{color:var(--text-muted);margin:0;font-size:13px}.available-bus-card__price{text-align:right;white-space:nowrap}.available-bus-card__price span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;display:block}.available-bus-card__price strong{color:var(--text-h);font-size:22px}.available-bus-card__timeline{grid-template-columns:minmax(0,1fr) 88px minmax(0,1fr);align-items:start;gap:10px;max-width:480px;display:grid}.available-bus-card__timeline-point--end{text-align:right}.available-bus-card__time{color:var(--text-h);font-size:18px;font-weight:700;line-height:1.2;display:block}.available-bus-card__stop{color:var(--text-muted);margin-top:4px;font-size:13px;line-height:1.3;display:block}.available-bus-card__duration{flex-direction:column;justify-content:flex-start;align-items:center;gap:6px;min-height:100%;padding-top:3px;display:flex}.available-bus-card__arrow{width:100%;color:var(--text-muted);justify-content:center;align-items:center;font-size:22px;line-height:1;display:flex}.available-bus-card__journey-time{max-width:88px;color:var(--primary);text-align:center;font-size:11px;font-weight:600;line-height:1.35}.available-bus-card__details{color:var(--text-muted);flex-wrap:wrap;gap:10px;font-size:12px;display:flex}.available-bus-card__details span{background:var(--surface-muted);border-radius:999px;padding:4px 10px}.available-bus-card__prices{flex-wrap:wrap;gap:8px;display:flex}.available-bus-card__price-tag{color:var(--success);background:#15803d1a;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600}.available-bus-card__action{align-items:center;display:flex}.available-buses-empty{border:1px dashed var(--border);text-align:center;color:var(--text-muted);border-radius:14px;padding:28px}.available-buses-empty p{color:var(--text-h);margin:0 0 6px;font-weight:600}.available-buses-empty span{font-size:13px}.btn-primary{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;white-space:nowrap;border:none;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:700}.btn-primary:hover:not(:disabled){opacity:.92}.btn-primary:disabled{opacity:.7;cursor:not-allowed}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-h);font:inherit;cursor:pointer;white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600}@media (width<=900px){.booking-search-form__grid{grid-template-columns:1fr}.booking-search-form__swap{justify-self:center;margin-bottom:0}.available-bus-card{flex-direction:column}.available-bus-card__action{justify-content:flex-end}}.modal-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a8c;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.modal-panel{border:1px solid var(--border);background:var(--surface);width:min(100%,560px);max-height:min(90svh,720px);box-shadow:var(--shadow);border-radius:16px;padding:24px;overflow-y:auto}.modal-panel__header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.modal-panel__header h2{margin:0 0 4px;font-size:20px}.modal-panel__header p{color:var(--text-muted);margin:0;font-size:13px}.modal-panel__close{border:1px solid var(--border);background:var(--surface);width:36px;height:36px;color:var(--text-h);cursor:pointer;border-radius:10px;font-size:22px;line-height:1}.modal-panel__close:hover:not(:disabled){background:var(--surface-muted)}.modal-panel__actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.book-ticket-summary{border:1px solid var(--border);background:var(--surface-muted);border-radius:12px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px;padding:14px;display:grid}.book-ticket-summary span{color:var(--text-h);font-weight:700;display:block}.book-ticket-summary small{color:var(--text-muted);margin-top:4px;font-size:12px;display:block}.book-ticket-form__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.book-ticket-form__field{text-align:left;gap:6px;display:grid}.book-ticket-form__field--full{grid-column:1/-1}.book-ticket-form__field span{color:var(--text-h);font-size:13px;font-weight:600}.book-ticket-form__field input,.book-ticket-form__field select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.book-ticket-form__field input:focus,.book-ticket-form__field select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.book-ticket-form__error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:14px}.book-ticket-form__estimate{color:var(--text-h);margin:14px 0 0;font-size:14px;font-weight:600}@media (width<=700px){.book-ticket-summary,.book-ticket-form__grid{grid-template-columns:1fr}.modal-panel__actions{flex-direction:column-reverse}.modal-panel__actions .btn-primary,.modal-panel__actions .btn-secondary{width:100%}}.bookings-list-page{gap:16px;display:grid}.bookings-list-page__header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.bookings-list-page__eyebrow{color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 4px;font-size:13px}.bookings-list-page__title{letter-spacing:-.02em;margin:0;font-size:22px}.bookings-list-page__subtitle{color:var(--text-muted);margin:6px 0 0;font-size:13px;line-height:1.6}.bookings-list-page__filters{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.bookings-list-page__filter{text-align:left;gap:6px;display:grid}.bookings-list-page__filter span{color:var(--text-h);font-size:13px;font-weight:600}.bookings-list-page__filter input,.bookings-list-page__filter select{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:10px 12px}.bookings-list-page__loading{min-height:240px;color:var(--text-muted);place-items:center;gap:12px;display:grid}.bookings-list-page__error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:12px;padding:14px 16px}.bookings-list-page__pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.bookings-list-page__pagination p{color:var(--text-muted);margin:0;font-size:13px}.bookings-list-page__pagination-actions{gap:10px;display:flex}.bookings-admin-table-wrap{gap:12px;display:grid}.bookings-admin-table__toolbar{justify-content:space-between;align-items:center;gap:12px;display:flex}.bookings-admin-table__count{color:var(--text-muted);margin:0;font-size:13px}.bookings-admin-table__scroll{border:1px solid var(--border);border-radius:10px;overflow-x:auto}.bookings-admin-table{border-collapse:collapse;width:100%;font-size:13px}.bookings-admin-table th,.bookings-admin-table td{text-align:left;border-bottom:1px solid var(--border);white-space:nowrap;vertical-align:top;padding:12px 14px}.bookings-admin-table th{background:var(--surface-muted);color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:600}.bookings-admin-table tbody tr:last-child td{border-bottom:none}.bookings-admin-table__reference{color:var(--text-h);font-weight:700}.bookings-admin-table__link{color:var(--primary);font-weight:700;text-decoration:none}.bookings-admin-table__link:hover{text-decoration:underline}.bookings-admin-table__name{color:var(--text-h);font-weight:600;display:block}.bookings-admin-table__sub{color:var(--text-muted);margin-top:2px;font-size:12px;display:block}.bookings-admin-table__amount{color:var(--text-h);font-weight:700}.bookings-admin-table__time{color:var(--text-muted)}.bookings-admin-table__empty{text-align:center;color:var(--text-muted);padding:28px 14px!important}.status-tag{letter-spacing:.02em;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:700;display:inline-flex}.status-tag--confirmed{color:#15803d;background:#15803d1f}.status-tag--pending{color:#b45309;background:#d977061f}.status-tag--cancelled{color:#b91c1c;background:#b91c1c1f}.btn-export,.btn-secondary{font:inherit;cursor:pointer;white-space:nowrap;border-radius:10px;padding:10px 14px;font-size:13px;font-weight:600}.btn-export{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;border:none;font-weight:700}.btn-export:hover{opacity:.92}.btn-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-h)}.btn-secondary:hover:not(:disabled){background:var(--surface-muted)}.btn-secondary:disabled{opacity:.7;cursor:not-allowed}@media (width<=900px){.bookings-list-page__filters{grid-template-columns:1fr}}.booking-detail-page{gap:10px;display:grid}.booking-detail-loading,.booking-detail-error{min-height:180px;color:var(--text-muted);place-items:center;gap:8px;display:grid}.booking-detail-error{color:var(--danger);background:#b91c1c14;border:1px solid #b91c1c40;border-radius:10px;place-items:start;padding:10px 12px}.booking-detail-top{border:1px solid var(--border);background:var(--surface);border-radius:12px;gap:8px;padding:12px 14px;display:grid}.booking-detail-back{color:var(--text-muted);font-size:12px;font-weight:600;text-decoration:none}.booking-detail-back:hover{color:var(--text-h)}.booking-detail-top__row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.booking-detail-top__title h1{letter-spacing:-.02em;margin:0;font-size:20px}.booking-detail-top__meta{color:var(--text-muted);margin:2px 0 0;font-size:12px}.booking-detail-top__actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.booking-detail-chips{flex-wrap:wrap;gap:6px;display:flex}.booking-detail-chips span{border:1px solid var(--border);background:var(--surface-muted);border-radius:8px;gap:1px;padding:6px 10px;display:inline-grid}.booking-detail-chips small{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:10px}.booking-detail-chips strong{color:var(--text-h);font-size:13px}.booking-detail-journey{border:1px solid var(--border);background:var(--surface);border-radius:12px;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;padding:10px 12px;display:grid}.booking-detail-journey__point{gap:1px;display:grid}.booking-detail-journey__point--end{text-align:right}.booking-detail-journey__time{color:var(--text-h);font-size:16px;font-weight:700;line-height:1.2}.booking-detail-journey__stop{color:var(--text-h);font-size:13px;font-weight:600}.booking-detail-journey__label{color:var(--text-muted);font-size:11px}.booking-detail-journey__mid{justify-items:center;gap:2px;min-width:88px;display:grid}.booking-detail-journey__arrow{color:var(--text-muted);font-size:14px;line-height:1}.booking-detail-journey__duration{color:var(--primary);white-space:nowrap;font-size:11px;font-weight:600}.booking-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.booking-detail-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:10px 12px}.booking-detail-card h2{color:var(--text-h);margin:0 0 8px;font-size:13px}.booking-detail-list{gap:6px;margin:0;display:grid}.booking-detail-list--compact{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 10px}.booking-detail-item dt{color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin:0;font-size:10px;font-weight:600}.booking-detail-item dd{color:var(--text-h);margin:1px 0 0;font-size:13px;font-weight:600;line-height:1.3}.booking-detail-ticket-btn{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;white-space:nowrap;cursor:pointer;border:none;border-radius:8px;align-items:center;padding:7px 10px;font-size:12px;font-weight:700;text-decoration:none;display:inline-flex}.booking-detail-ticket-btn:hover{opacity:.92}@media (width<=900px){.booking-detail-grid,.booking-detail-journey{grid-template-columns:1fr}.booking-detail-journey__point--end{text-align:left}.booking-detail-journey__mid{grid-template-columns:auto 1fr;place-items:center start}}@media (width<=560px){.booking-detail-list--compact{grid-template-columns:1fr}}.bookings-layout{gap:20px;display:grid}.bookings-layout__tabs{border:1px solid var(--border);background:var(--surface-muted);isolation:isolate;border-radius:10px;flex-wrap:wrap;gap:2px;width:fit-content;padding:3px;display:flex;position:relative}.bookings-layout__indicator{background:var(--surface);pointer-events:none;z-index:0;border-radius:7px;height:calc(100% - 6px);transition:transform .28s cubic-bezier(.4,0,.2,1),width .28s cubic-bezier(.4,0,.2,1);position:absolute;top:3px;left:0;box-shadow:0 1px 2px #0f172a0f}.bookings-layout__tab{z-index:1;color:var(--text-muted);white-space:nowrap;border-radius:7px;padding:9px 16px;font-size:13px;font-weight:600;text-decoration:none;transition:color .2s;position:relative}.bookings-layout__tab:hover,.bookings-layout__tab--active{color:var(--text-h)}.bookings-layout__content{min-width:0;animation:.24s ease-out both bookings-content-in}@keyframes bookings-content-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.bookings-layout__indicator{transition:none}.bookings-layout__content{animation:none}}.site{--ink:#101828;--muted:#667085;--green:#0b7a52;--green-deep:#075c3e;--mint:#e7f8ef;--mint-strong:#d7f3e4;--line:#10182814;--bg:#faf8ff;--card:#fff;--shadow:0 16px 40px #1018280f;min-height:100svh;color:var(--ink);background:var(--bg);font-family:Plus Jakarta Sans,Segoe UI,system-ui,sans-serif}.site *{box-sizing:border-box}.site a{color:inherit;text-decoration:none}.site h1,.site h2,.site h3,.site h4,.site p{margin:0}.site img{max-width:100%;display:block}.site-wrap{width:min(1180px,100% - 40px);margin:0 auto}.site-header{z-index:30;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;border-bottom:1px solid #1018280d;position:sticky;top:0}.site-header__bar{align-items:center;gap:20px;width:min(1180px,100% - 40px);min-height:72px;margin:0 auto;display:flex}.site-logo{color:var(--green);flex-shrink:0;align-items:center;gap:8px;display:inline-flex}.site-logo svg{width:26px;height:26px}.site-logo strong{letter-spacing:-.04em;font-size:20px}.site-nav{flex:1;justify-content:center;align-items:center;gap:4px;min-width:0;display:flex}.site-nav a,.site-drawer a{color:#344054;white-space:nowrap;border-radius:999px;justify-content:center;align-items:center;height:36px;padding:0 12px;font-size:13.5px;font-weight:600;line-height:1;display:inline-flex}.site-nav a.is-active,.site-nav a.is-active:hover{background:var(--mint-strong);color:var(--green-deep)}.site-nav a:hover,.site-drawer a:hover{background:#f4f6f8}.site-header__tools{flex-shrink:0;align-items:center;gap:8px;margin-left:auto;display:flex}.site-status,.site-helpline{white-space:nowrap;border-radius:999px;align-items:center;gap:8px;height:40px;font-size:13px;font-weight:650;display:inline-flex}.site-status{color:#344054;background:#f3f5f8;padding:0 14px}.site-status i{background:#12b76a;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 4px #12b76a26}.site-helpline{color:var(--green-deep);background:#f7fdf9;border:1.5px solid #b7ebcf;padding:0 14px 0 12px}.site-helpline svg{flex-shrink:0;width:18px;height:18px}.site-helpline__text{letter-spacing:.01em;flex-direction:column;align-items:flex-start;gap:1px;font-size:12px;font-weight:750;line-height:1.1;display:flex}.site-helpline__text small{letter-spacing:.04em;text-transform:uppercase;color:#3d8f68;font-size:10px;font-weight:700}.site-menu{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:40px;height:40px;padding:0;display:none}.site-menu span{background:var(--ink);border-radius:2px;width:16px;height:2px;margin:0;display:block}.site-drawer{display:none}.site-hero{background:radial-gradient(520px 280px at 18% 18%, #b7ebcf8c, transparent 70%), linear-gradient(180deg, #f7fffb 0%, var(--bg) 72%);padding:28px 0 72px}.site-hero__grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:36px;display:grid}.site-badge,.site-kicker{color:var(--green);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:8px;margin:0 0 16px;font-size:12px;font-weight:750;display:inline-flex}.site-badge{background:var(--mint);letter-spacing:.02em;text-transform:none;border-radius:999px;padding:7px 12px;font-size:13px}.site-badge svg{width:16px;height:16px}.site-badge--caps{letter-spacing:.08em;text-transform:uppercase;font-size:11px}.site-hero h1{letter-spacing:-.045em;color:var(--ink);font-size:clamp(40px,4.6vw,60px);font-weight:800;line-height:1.02}.site-hero h1 span{display:block}.site-hero h1 em{color:var(--green);text-underline-offset:6px;font-style:normal;text-decoration:underline;text-decoration-thickness:3px}.site-lede{color:#475467;max-width:540px;margin-top:18px;font-size:16.5px;line-height:1.6}.site-checks{color:#344054;flex-wrap:wrap;gap:10px 18px;margin:22px 0 0;padding:0;font-size:14px;font-weight:650;list-style:none;display:flex}.site-checks li{align-items:center;gap:8px;display:inline-flex}.site-checks svg{width:16px;height:16px;color:var(--green)}.site-hero__photo{border-radius:28px;min-height:320px;margin:0;position:relative;overflow:hidden;box-shadow:0 24px 50px #1018281f}.site-hero__photo img{object-fit:cover;object-position:center 42%;width:100%;height:360px}.site-hero__fleet,.site-hero__gps{border-radius:16px;align-items:center;gap:10px;display:flex;position:absolute;bottom:16px}.site-hero__fleet{max-width:calc(100% - 150px);color:var(--ink);background:#fffffff0;padding:10px 14px;font-weight:750;left:16px}.site-hero__fleet span:first-child{background:var(--mint);width:36px;height:36px;color:var(--green);border-radius:12px;place-items:center;display:grid}.site-hero__fleet small{color:var(--green);letter-spacing:.08em;font-size:10px;font-weight:800;display:block}.site-hero__gps{color:var(--green-deep);background:#d9fbe8;padding:8px 12px;font-size:13px;font-weight:750;right:16px}.site-hero__gps:before{content:"";background:#12b76a;border-radius:50%;width:8px;height:8px}.site-features{box-shadow:var(--shadow);background:#fff;border-radius:28px;grid-template-columns:repeat(3,1fr);margin-top:28px;display:grid;overflow:hidden}.site-features article{padding:28px 26px 30px}.site-features article+article{border-left:1px solid #eef2f6}.site-features span,.site-standards span,.site-steps span,.site-desk>span{background:var(--mint);width:48px;height:48px;color:var(--green);border-radius:16px;place-items:center;display:grid}.site-features h2,.site-standards h3,.site-steps h3,.site-panel h3,.site-desk h3{letter-spacing:-.03em;margin-top:16px;font-size:18px;font-weight:750}.site-features p,.site-standards p,.site-steps p,.site-route__body p,.site-panel p,.site-desk p,.site-tracking>div>p{color:var(--muted);margin-top:8px;font-size:14.5px;line-height:1.6}.site-section{padding:28px 0 64px}.site-section__head h2{letter-spacing:-.04em;font-size:clamp(30px,3.4vw,42px);font-weight:800;line-height:1.12}.site-section__head p:last-child{max-width:640px;color:var(--muted);margin-top:10px;font-size:16px;line-height:1.6}.site-section__head--split{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.site-section__head--center{text-align:center;margin-bottom:36px}.site-section__head--center p:last-child,.site-section__head--center .site-kicker{margin-left:auto;margin-right:auto}.site-chip{color:#344054;background:#f4f1fb;border-radius:999px;flex-shrink:0;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.site-chip svg{width:16px;height:16px;color:var(--green)}.site-routes{grid-template-columns:repeat(3,1fr);gap:18px;display:grid}.site-route{box-shadow:var(--shadow);background:#fff;border-radius:24px;overflow:hidden}.site-route__media{height:188px;position:relative}.site-route__media img{object-fit:cover;width:100%;height:100%}.site-route__badge{border-radius:999px;padding:6px 10px;font-size:12px;font-weight:750;position:absolute;top:14px;left:14px}.site-route__badge--mint{color:#075c3e;background:#b6f3d0}.site-route__badge--soft{color:#344054;background:#ffffffeb}.site-route__body{padding:18px 18px 16px}.site-route__body h3{letter-spacing:-.03em;font-size:20px}.site-route__body h4{letter-spacing:-.02em;margin-top:14px;font-size:16px}.site-route__body ul{border-top:1px solid #eef2f6;gap:8px;margin:14px 0 0;padding:14px 0 0;list-style:none;display:grid}.site-route__body li{color:#475467;align-items:flex-start;gap:8px;font-size:13.5px;font-weight:600;display:flex}.site-route__body li svg{width:16px;height:16px;color:var(--green);flex-shrink:0;margin-top:1px}.site-route__chips{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.site-route__chips span,.site-operators li{color:#475467;background:#f4f6f8;border-radius:999px;align-items:center;gap:6px;padding:7px 10px;font-size:12px;font-weight:700;display:inline-flex}.site-route__chips svg{width:14px;height:14px;color:var(--green)}.site-section--standards{padding-top:20px}.site-standards{grid-template-columns:repeat(4,1fr);gap:16px;display:grid}.site-standards article,.site-steps li{box-shadow:var(--shadow);background:#fff;border-radius:24px;padding:22px 20px 24px}.site-steps{grid-template-columns:repeat(3,1fr);gap:18px;margin:0;padding:0;list-style:none;display:grid;position:relative}.site-steps:before{content:"";border-top:2px dashed #d7e7de;position:absolute;top:46px;left:18%;right:18%}.site-steps li{text-align:center;box-shadow:none;background:0 0;padding-top:0;position:relative}.site-steps span{background:#fff;border:1.5px solid #cfeedd;border-radius:22px;width:72px;height:72px;margin:0 auto;box-shadow:0 8px 20px #1018280a}.site-steps small{color:var(--green);letter-spacing:.12em;text-transform:uppercase;margin-top:16px;font-size:12px;font-weight:800;display:block}.site-split{grid-template-columns:1.15fr .85fr;gap:18px;margin-top:36px;display:grid}.site-panel{border-radius:28px;padding:28px}.site-panel--green{color:#fff;background:linear-gradient(160deg,#14915f 0%,#0a6a45 100%)}.site-panel--green p,.site-panel--soft p{color:inherit;opacity:.92}.site-panel__label{letter-spacing:.08em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;margin:0 0 14px;padding:6px 10px;font-size:11px;font-weight:800;display:inline-flex}.site-panel--green .site-panel__label{background:#ffffff29}.site-panel--soft{background:#f3f1fb}.site-panel--soft .site-panel__label{color:var(--green-deep);background:#dff6ea}.site-panel h3{letter-spacing:-.04em;margin-top:0;font-size:28px}.site-panel div{flex-wrap:wrap;align-items:center;gap:12px;margin-top:22px;display:flex}.site-panel div span{border-radius:999px;align-items:center;gap:8px;padding:8px 12px;font-size:13px;font-weight:750;display:inline-flex}.site-panel--green div span{color:var(--green-deep);background:#fff}.site-panel--green div em,.site-panel--soft div em{font-size:13px;font-style:normal;font-weight:650}.site-panel--soft div span{background:var(--green-deep);color:#fff}.site-panel svg{width:16px;height:16px}.site-section--operators{padding-top:12px}.site-operators{flex-wrap:wrap;justify-content:center;gap:12px;margin:0;padding:0;list-style:none;display:flex}.site-operators li.is-highlight{color:var(--green-deep);background:#e7f8ef}.site-rating{color:#475467;background:#f4f1fb;border-radius:999px;align-items:center;gap:10px;width:fit-content;margin:22px auto 0;padding:10px 16px;font-size:14px;font-weight:650;display:flex}.site-rating span{color:#12b76a;letter-spacing:2px}.site-rating i{background:#98a2b3;border-radius:50%;width:4px;height:4px}.site-tracking{background:#eef2fb;border-radius:32px;grid-template-columns:1.35fr .75fr;align-items:center;gap:28px;padding:36px;display:grid}.site-tracking h2{letter-spacing:-.045em;max-width:620px;font-size:clamp(30px,3.2vw,42px);line-height:1.12}.site-tracking__actions{flex-wrap:wrap;gap:12px;margin-top:22px;display:flex}.site-btn{border-radius:16px;align-items:center;gap:10px;min-height:58px;padding:10px 16px;font-weight:750;display:inline-flex}.site-btn small{letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800;display:block}.site-btn--dark{color:#fff;background:#101828}.site-btn--dark small{color:#98a2b3}.site-btn--light{color:var(--ink);background:#fff;box-shadow:0 8px 20px #1018280d}.site-btn--light small,.site-btn--light svg{color:var(--green)}.site-desk{box-shadow:var(--shadow);background:#fff;border-radius:22px;gap:14px;padding:22px;display:flex}.site-desk h3{margin-top:0}.site-desk strong{color:var(--green);align-items:center;gap:6px;margin-top:12px;font-size:13px;display:inline-flex}.site-desk strong svg{width:16px;height:16px}.site-footer{background:#fff;border-top:1px solid #eef2f6;padding:42px 0 22px}.site-footer__grid{grid-template-columns:1.3fr repeat(4,1fr);gap:28px;display:grid}.site-footer__grid p{max-width:280px;color:var(--muted);margin-top:14px;font-size:14px;line-height:1.6}.site-credit{font-size:12px}.site-footer h2{letter-spacing:.12em;text-transform:uppercase;color:#98a2b3;font-size:12px}.site-footer ul{color:#344054;gap:8px;margin:14px 0 0;padding:0;font-size:14px;font-weight:600;list-style:none;display:grid}.site-footer a:hover{color:var(--green)}.site-footer__icons{gap:8px;margin-top:18px;display:flex}.site-footer__icons a{color:#475467;background:#f4f6f8;border-radius:12px;place-items:center;width:36px;height:36px;display:grid}.site-footer__icons svg{width:16px;height:16px}.site-footer__bar{color:#98a2b3;border-top:1px solid #eef2f6;justify-content:space-between;gap:16px;margin-top:28px;padding-top:16px;font-size:13px;display:flex}.site-footer__bar p{align-items:center;gap:10px;margin:0;display:flex}.site-footer__bar span{background:#d0d5dd;border-radius:50%;width:4px;height:4px}.site :focus-visible{outline-offset:2px;outline:3px solid #0b7a5259}@media (width<=1280px){.site-status{display:none}}@media (width<=1080px){.site-nav{display:none}.site-menu{display:inline-flex}.site-drawer{background:0 0;width:min(1180px,100% - 40px);margin:0 auto;padding:4px 0 16px;display:grid}.site-drawer a{white-space:normal;justify-content:flex-start;height:44px;padding:0 12px}.site-hero__grid,.site-routes,.site-standards,.site-split,.site-tracking,.site-footer__grid,.site-standards,.site-footer__grid{grid-template-columns:1fr 1fr}.site-steps:before{display:none}}@media (width<=760px){.site-helpline span{display:none}.site-helpline{justify-content:center;width:40px;height:40px;padding:0}.site-hero__grid,.site-features,.site-routes,.site-standards,.site-steps,.site-split,.site-tracking,.site-footer__grid{grid-template-columns:1fr}.site-features article+article{border-top:1px solid #eef2f6;border-left:0}.site-section__head--split,.site-footer__bar{display:grid}.site-hero__photo img{height:220px}.site-hero__fleet{max-width:calc(100% - 120px)}.site-hero__gps{bottom:18px}.site-panel h3,.site-tracking h2{font-size:28px}}.login-page{background:radial-gradient(circle at top left, #2563eb1f, transparent 40%), radial-gradient(circle at bottom right, #0ea5e91a, transparent 35%), var(--bg);place-items:center;min-height:100svh;padding:24px;display:grid}.login-page__panel{border:1px solid var(--border);background:var(--surface);width:min(100%,420px);box-shadow:var(--shadow);border-radius:16px;padding:32px}.login-page__home{color:var(--text-muted);margin-bottom:18px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.login-page__home:hover{color:var(--primary)}.login-page__brand{align-items:center;gap:16px;margin-bottom:28px;display:flex}.login-page__logo{color:#fff;background:linear-gradient(135deg, var(--primary), var(--primary-dark));border-radius:14px;place-items:center;width:52px;height:52px;font-size:18px;font-weight:700;display:grid}.login-page__brand h1{letter-spacing:-.02em;margin:0 0 4px;font-size:24px}.login-page__brand p{color:var(--text-muted);margin:0;font-size:14px}.login-form{gap:16px;display:grid}.login-form__field{text-align:left;gap:8px;display:grid}.login-form__field span{color:var(--text-h);font-size:14px;font-weight:500}.login-form__field input{border:1px solid var(--border);background:var(--bg);width:100%;color:var(--text-h);font:inherit;box-sizing:border-box;border-radius:10px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.login-form__field input:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-ring);outline:none}.login-form__field input:disabled{opacity:.7;cursor:not-allowed}.login-form__error{background:var(--danger-bg);border:1px solid var(--danger-border);color:var(--danger);text-align:left;border-radius:10px;padding:12px 14px;font-size:14px}.login-form__submit{background:linear-gradient(135deg, var(--primary), var(--primary-dark));color:#fff;font:inherit;cursor:pointer;border:none;border-radius:10px;margin-top:4px;padding:12px 16px;font-weight:600;transition:opacity .15s,transform .15s}.login-form__submit:hover:not(:disabled){opacity:.95}.login-form__submit:active:not(:disabled){transform:translateY(1px)}.login-form__submit:disabled{opacity:.7;cursor:not-allowed}.policy-home{color:#344054;background:#f3f5f8;border-radius:999px;align-items:center;height:40px;margin-left:auto;padding:0 14px;font-size:14px;font-weight:700;display:inline-flex}.policy-main{padding:36px 0 72px}.policy-doc{width:min(860px,100% - 40px);margin:0 auto}.policy-doc h1{letter-spacing:-.04em;margin:0;font-size:clamp(32px,4vw,46px);font-weight:800;line-height:1.12}.policy-switch{flex-wrap:wrap;gap:8px;margin:22px 0 8px;display:flex}.policy-switch a{color:#344054;background:#fff;border-radius:999px;align-items:center;height:36px;padding:0 12px;font-size:13px;font-weight:700;display:inline-flex;box-shadow:0 8px 20px #1018280a}.policy-switch a.is-current{background:var(--mint-strong);color:var(--green-deep)}.policy-doc h2{letter-spacing:-.03em;margin:28px 0 10px;font-size:20px;font-weight:800}.policy-doc p,.policy-doc li{color:#344054;font-size:15.5px;line-height:1.7}.policy-doc p{margin:12px 0}.policy-doc a{color:var(--green-deep);text-underline-offset:2px;text-decoration:underline}.policy-doc ul{margin:8px 0 16px;padding-left:22px}.policy-doc li+li{margin-top:8px}.policy-part{border-top:1px solid var(--line);margin:40px 0 8px;padding-top:28px}.policy-part p{color:var(--green);letter-spacing:.14em;margin:0 0 6px;font-size:12px;font-weight:800}.policy-part h2{margin:0;font-size:clamp(22px,3vw,28px)}.policy-table-wrap{border:1px solid var(--line);background:#fff;border-radius:16px;margin:16px 0 20px;overflow-x:auto}.policy-doc table{border-collapse:collapse;width:100%;min-width:640px}.policy-doc th,.policy-doc td{text-align:left;vertical-align:top;border-bottom:1px solid #eef2f6;padding:12px 14px;font-size:14px;line-height:1.5}.policy-doc th{color:var(--green-deep);background:#f4fbf7;font-weight:800}.policy-doc tr:last-child td{border-bottom:0}
