:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f7fb;--card:#fff;--surface:#fff;--surface-2:#eef2f7;--border:#e2e8f0;--text:#0f172a;--muted:#64748b;--primary:#0068ff;--primary-deep:#0047b3;--primary-soft:#e8f1ff;--on-primary:#fff;--accent:#0068ff;--accent-soft:#e8f1ff;--ring:#0068ff;--danger:#dc2626;--customer:#0068ff;--driver:#16a34a;--agent:#d97706;--space-xs:4px;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:32px;--space-2xl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:14px;--elev-1:0 1px 2px #0f172a0a, 0 4px 12px #0f172a0a;--elev-2:0 4px 16px #0f172a14;--elev-3:0 12px 32px #0f172a1f;--motion:.22s ease;--safe-bottom:env(safe-area-inset-bottom,0px);--zalo-bottom-nav-height:56px;--zalo-bottom-nav-z:100;--zalo-overlay-z:200;--page-max:480px;--page-max-wide:960px;--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);--cp-muted:var(--muted);--cp-line:var(--border)}*{box-sizing:border-box}input[type=date],input[type=datetime-local],input[type=month],input[type=week],input[type=time]{cursor:pointer;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;position:relative}input[type=date]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}input[type=datetime-local]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}input[type=month]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}input[type=week]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}input[type=time]::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:auto;height:auto;margin:0;padding:0;position:absolute;inset:0}.datetime-local-24{flex-direction:column;align-items:stretch;gap:8px;width:100%;min-width:0;display:flex}.datetime-local-24-row{align-items:center;gap:6px;width:100%;min-width:0;display:flex}.datetime-local-24-date{flex:auto;min-width:0}.datetime-local-24-time-btn{border:1px solid var(--border,#e5e7eb);min-width:5.5rem;color:var(--text,#111827);font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;background:#fff;border-radius:12px;flex:none;padding:10px 12px;font-weight:700}.datetime-local-24-time-btn:disabled{opacity:.5;cursor:default}.datetime-local-24.is-open .datetime-local-24-time-btn{border-color:#93c5fd;box-shadow:0 0 0 2px #3b82f640}.time-wheel-panel{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:14px;padding:10px 12px 12px}.time-wheel-readout{font-variant-numeric:tabular-nums;color:#111827;background:#fff;border:1.5px solid #60a5fa;border-radius:10px;justify-content:center;align-items:center;gap:4px;max-width:9.5rem;margin:0 auto 8px;padding:8px 12px;font-size:18px;font-weight:700;display:flex}.time-wheel-readout-h{background:#dbeafe;border-radius:6px;padding:2px 6px}.time-wheel-drums{justify-content:center;align-items:center;gap:4px;display:flex}.time-wheel-colon{color:#6b7280;padding-bottom:4px;font-size:22px;font-weight:700;line-height:1}.time-wheel-col{flex-direction:column;align-items:center;gap:2px;display:flex}.time-wheel-caret{color:#9ca3af;cursor:pointer;background:0 0;border:none;padding:2px 10px;font-size:14px;line-height:1}.time-wheel-window{width:4.5rem;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(#0000 0%,#000 18% 82%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 18% 82%,#0000 100%)}.time-wheel-highlight{pointer-events:none;z-index:1;background:#fff;border-radius:999px;width:2.75rem;height:2.75rem;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 1px 4px #0f172a1f}.time-wheel-scroller{z-index:2;overscroll-behavior:contain;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;height:100%;position:relative;overflow-y:auto}.time-wheel-scroller::-webkit-scrollbar{display:none}.time-wheel-item{scroll-snap-align:center;font-variant-numeric:tabular-nums;color:#9ca3af;cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;font-size:17px;font-weight:600;display:flex}.time-wheel-item.is-pad{pointer-events:none}.time-wheel-item.is-active{color:#111827}.time-wheel-chip{z-index:1;position:relative}.time-wheel-done{color:#fff;width:100%;font:inherit;cursor:pointer;background:#2563eb;border:none;border-radius:10px;margin-top:10px;padding:10px 12px;font-weight:700;display:block}.customer-book-field .datetime-local-24 input,.customer-book-field .datetime-local-24 .datetime-local-24-time-btn{width:auto;font:inherit;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}.customer-book-field .datetime-local-24-date{flex:9rem;width:100%}html{-webkit-text-size-adjust:100%;height:100%;overflow:hidden}body{font-family:var(--font-be-vietnam), "Noto Sans", ui-sans-serif, system-ui, sans-serif;background:radial-gradient(900px 420px at 50% -12%, #0068ff1a, transparent 55%), var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;touch-action:manipulation;overscroll-behavior:none;height:100%;min-height:100dvh;margin:0;line-height:1.5}body:has(.zalo-app){overflow:hidden}a{color:inherit}:focus-visible{outline:2px solid var(--ring);outline-offset:2px}button,[role=button],.role-card,.btn-primary,.btn-outline,.btn-danger,.zalo-nav-item,.auth-tab,.auth-role-option,.auth-role-card{cursor:pointer}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.landing{min-height:100dvh;padding:max(20px, env(safe-area-inset-top)) 20px calc(24px + var(--safe-bottom));max-width:var(--page-max-wide);margin:0 auto}.landing-header{text-align:center;margin-bottom:28px;padding-top:12px}.landing-header h1{margin:0 0 8px;font-size:clamp(1.5rem,5vw,2rem);font-weight:700}.landing-header p{color:var(--muted);margin:0;max-width:36rem;margin-inline:auto;font-size:.9375rem}.role-grid{grid-template-columns:1fr;gap:14px;display:grid}@media (min-width:640px){.role-grid{grid-template-columns:repeat(3,1fr)}}.role-card{text-align:left;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);cursor:pointer;width:100%;box-shadow:var(--elev-1);transition:border-color var(--motion), box-shadow var(--motion), transform var(--motion);font:inherit;color:inherit;align-items:flex-start;gap:14px;padding:18px 16px;display:flex}.role-card:hover{border-color:var(--primary);box-shadow:var(--elev-2)}.role-card:active{transform:translateY(1px)}.role-dot{border-radius:50%;flex-shrink:0;width:12px;height:12px;margin-top:4px}.role-card h2{margin:0 0 4px;font-size:1.125rem;font-weight:600}.role-card p{color:var(--muted);margin:0;font-size:.8125rem}.landing-footnote{text-align:center;color:var(--muted);margin-top:24px;font-size:.75rem;font-style:italic}.app-shell{min-height:100dvh;padding:max(16px, env(safe-area-inset-top)) 16px calc(20px + var(--safe-bottom))}.role-page{max-width:var(--page-max);flex-direction:column;gap:16px;margin:0 auto;display:flex}@media (min-width:768px){.app-shell{padding-top:32px}.role-page{max-width:520px}}.role-header{border-bottom:2px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding-bottom:12px;display:flex}.role-header-label{color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin:0 0 2px;font-size:.75rem}.role-header h1{margin:0;font-size:1.375rem;font-weight:700}.link-muted{color:var(--muted);white-space:nowrap;padding:6px 0;font-size:.875rem;text-decoration:none}.link-muted:hover{color:var(--text)}.wallet-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elev-1);padding:20px}.wallet-label{color:var(--muted);margin:0;font-size:.8125rem}.wallet-drv{margin:6px 0 0;font-size:clamp(1.75rem,6vw,2rem);font-weight:700}.wallet-vnd{color:var(--muted);margin:4px 0 0;font-size:.875rem}.capabilities h2{margin:0 0 10px;font-size:1rem;font-weight:600}.capabilities ul{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.capabilities li{align-items:center;gap:10px;font-size:.9375rem;display:flex}.bullet{border-radius:50%;flex-shrink:0;width:8px;height:8px}.btn-outline{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);cursor:pointer;transition:border-color var(--motion), box-shadow var(--motion), color var(--motion);padding:14px;font-size:.9375rem;font-weight:600}.btn-outline:hover{border-color:var(--primary);color:var(--primary);box-shadow:var(--elev-1)}.footnote{color:var(--muted);text-align:center;margin:0;font-size:.75rem;font-style:italic}.loading-screen{min-height:60dvh;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--primary);border-radius:50%;width:28px;height:28px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{width:100%;max-width:var(--page-max);background:var(--bg);height:100dvh;min-height:100dvh;color:var(--text);box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);flex-direction:column;margin:0 auto;padding:0;display:flex;position:relative;overflow-x:clip}.auth-page-embedded{max-width:none;height:auto;min-height:100%;box-shadow:none;margin:0}.auth-topbar{z-index:10;width:100%;padding:max(10px, env(safe-area-inset-top)) 12px 12px;background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);flex-shrink:0;align-items:center;gap:4px;display:flex;position:sticky;top:0;box-shadow:0 8px 20px #0050c829}.auth-topbar h1{letter-spacing:-.01em;min-width:0;color:var(--on-primary);flex:1;margin:0;font-size:1.125rem;font-weight:700;line-height:1.3}.auth-topbar .auth-back-btn{cursor:pointer;width:40px;height:40px;color:var(--on-primary);transition:background var(--motion);background:0 0;border:none;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.auth-topbar .auth-back-btn:hover,.auth-topbar .auth-back-btn:active{color:var(--on-primary);background:#ffffff29}.auth-page-body{min-height:0;padding:16px 16px calc(24px + var(--safe-bottom));scrollbar-width:none;flex:1;overflow:clip auto}.auth-page-body::-webkit-scrollbar{width:0;height:0}.auth-page-head{align-items:center;gap:4px;margin-bottom:20px;display:flex}.auth-page-titles{flex:1;min-width:0}.auth-page-head h1,.auth-page-titles h1{letter-spacing:-.02em;min-width:0;color:var(--text);flex:1;margin:0;font-size:1.375rem;font-weight:650;line-height:1.3}.auth-back-btn{border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;color:var(--text);transition:color var(--motion), background var(--motion);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:0;padding:0;display:inline-flex}.auth-back-btn:hover,.auth-back-btn:active{color:var(--primary);background:var(--primary-soft)}.auth-desc{color:var(--muted);margin:0 0 16px;font-size:.875rem;line-height:1.45}.auth-form input::placeholder,.auth-form textarea::placeholder{color:#94a3b8;opacity:1}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{flex-direction:column;gap:6px;display:flex}.auth-field-label{color:var(--text);font-size:.8125rem;font-weight:600}.auth-field-hint{color:var(--muted);font-size:.75rem;line-height:1.4}.auth-form label,.auth-form .auth-field{flex-direction:column;gap:6px;font-size:.8125rem;font-weight:600;display:flex}.auth-form input,.auth-form select,.auth-form textarea{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);font:inherit;min-height:48px;transition:border-color var(--motion), box-shadow var(--motion);padding:12px 14px;font-size:.9375rem;font-weight:400;line-height:1.35}.auth-form input:focus,.auth-form select:focus,.auth-form textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 16%, transparent);outline:none}.auth-form input[aria-invalid=true]{border-color:var(--danger)}.password-field{display:block;position:relative}.password-field input{box-sizing:border-box;width:100%;padding-right:44px}.password-field-toggle{width:36px;height:36px;color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;display:inline-flex;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.password-field-toggle:hover,.password-field-toggle:active{color:var(--primary);background:var(--primary-soft)}.auth-tabs{border-radius:var(--radius-md);background:var(--surface-2);border:none;gap:4px;margin-bottom:20px;padding:4px;display:flex}.auth-tab{font:inherit;color:var(--muted);cursor:pointer;transition:color var(--motion), background var(--motion), font-weight var(--motion);background:0 0;border:none;border-radius:8px;flex:1;margin-bottom:0;padding:10px 6px;font-size:.8125rem;font-weight:550}.auth-tab:hover{color:var(--text)}.auth-tab[aria-selected=true]{color:var(--primary);background:var(--surface);box-shadow:var(--elev-1);border-bottom-color:#0000;font-weight:700}.auth-role-section{flex-direction:column;gap:10px;display:flex}.auth-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:650}.auth-role-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.auth-role-card{border:1.5px solid var(--border);border-radius:var(--radius-md);background:var(--surface);text-align:left;min-height:108px;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--motion), background var(--motion), box-shadow var(--motion);flex-direction:column;align-items:flex-start;gap:8px;padding:12px 12px 14px;display:flex;position:relative}.auth-role-card:hover{border-color:color-mix(in srgb, var(--primary) 45%, var(--border))}.auth-role-card.is-selected{border-color:var(--primary);background:var(--primary-soft);box-shadow:0 0 0 1px color-mix(in srgb, var(--primary) 20%, transparent)}.auth-role-card-icon{background:var(--surface-2);width:36px;height:36px;color:var(--primary);border-radius:10px;justify-content:center;align-items:center;display:inline-flex}.auth-role-card.is-selected .auth-role-card-icon{background:color-mix(in srgb, var(--primary) 14%, #fff)}.auth-role-card-text{flex-direction:column;gap:2px;padding-right:18px;display:flex}.auth-role-card-text strong{color:var(--text);font-size:.875rem;font-weight:700}.auth-role-card.is-selected .auth-role-card-text strong{color:var(--primary-deep)}.auth-role-card-text span{color:var(--muted);font-size:.75rem;font-weight:400;line-height:1.35}.auth-role-card-check{width:20px;height:20px;color:var(--primary);position:absolute;top:8px;right:8px}.auth-notice{border-radius:var(--radius-md);border:1px solid var(--border);background:#f8fafc;gap:10px;padding:12px 14px;display:flex}.auth-notice-icon{color:var(--primary);flex-shrink:0;margin-top:1px}.auth-notice strong{color:var(--text);margin-bottom:4px;font-size:.8125rem;font-weight:650;display:block}.auth-notice p{color:var(--muted);margin:0;font-size:.75rem;font-weight:400;line-height:1.45}.auth-ref-chip{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-deep);margin:0;padding:8px 12px;font-size:.8125rem;font-weight:500}.auth-footer-line{text-align:center;color:var(--muted);margin:4px 0 0;font-size:.875rem;font-weight:400}.auth-text-link{font:inherit;color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-weight:650}.auth-text-link:hover{text-decoration:underline}.auth-home-link{text-align:center;margin:20px 0 0}.auth-home-link a{color:var(--muted);font-size:.8125rem;text-decoration:none}.auth-home-link a:hover{color:var(--text)}.auth-demo-footnote{text-align:center;opacity:.85;margin-top:16px}.auth-register-flow{flex-direction:column;gap:14px;display:flex}.auth-step-badge{letter-spacing:.02em;text-transform:uppercase;color:var(--primary);margin:0;font-size:.75rem;font-weight:650}.auth-step-title{letter-spacing:-.02em;color:var(--text);margin:0;font-size:1.125rem;font-weight:650;line-height:1.35}.auth-step2-head{flex-direction:column;align-items:flex-start;gap:4px;display:flex}.auth-change-role{font-size:.8125rem!important;font-weight:600!important}.auth-form-section{border-top:1px solid var(--border);flex-direction:column;gap:12px;padding:14px 0 4px;display:flex}.auth-form-section:first-of-type{border-top:none;padding-top:0}.auth-form-section-title{color:var(--text);margin:0;font-size:.875rem;font-weight:700}.auth-form-section-body{flex-direction:column;gap:12px;display:flex}.auth-field-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (max-width:380px){.auth-field-row{grid-template-columns:1fr}}.auth-vehicle-owner{border:0;margin:12px 0 0;padding:0}.auth-vehicle-owner>.auth-field-label{margin-bottom:8px;display:block}.auth-vehicle-owner-options{gap:8px;display:grid}.auth-vehicle-owner-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:10px;padding:12px;display:flex}.auth-vehicle-owner-card.is-selected{background:#f0fdfa;border-color:#0d9488;box-shadow:inset 0 0 0 1px #0d9488}.auth-vehicle-owner-card input{flex-shrink:0;margin-top:3px}.auth-vehicle-owner-card strong{color:#0f172a;font-size:14px;display:block}.auth-vehicle-owner-card em{color:#64748b;margin-top:2px;font-size:12px;font-style:normal;display:block}.auth-vehicle-owner-share{color:#115e59;background:#ecfdf5;border:1px solid #99f6e4;border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.4}body.auth-flow-active .zalo-bottom-nav{display:none!important}body.auth-flow-active .zalo-app{padding-bottom:0}body.auth-flow-active .zalo-app:not(.zalo-app-fullscreen) .zalo-main{padding-bottom:calc(16px + var(--safe-bottom,0px))}.auth-result{flex-direction:column;align-items:stretch;gap:16px;padding-top:8px;display:flex}.auth-result-icon{background:var(--primary-soft);width:64px;height:64px;color:var(--primary);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;display:flex}.auth-result-title{text-align:center;letter-spacing:-.02em;margin:0;font-size:1.375rem;font-weight:650}.auth-result .auth-desc{text-align:center;margin:0}.auth-result-actions{flex-direction:column;gap:10px;margin-top:8px;display:flex}.auth-status-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface);box-shadow:var(--elev-1);padding:16px}.auth-status-dl{flex-direction:column;gap:10px;margin:0 0 12px;display:flex}.auth-status-dl>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.auth-status-dl dt{color:var(--muted);margin:0;font-size:.8125rem;font-weight:500}.auth-status-dl dd{text-align:right;margin:0;font-size:.875rem;font-weight:600}.auth-status-badge{color:#c2410c;background:#fff7ed;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:650;display:inline-flex}.auth-links{flex-wrap:wrap;gap:12px;margin-top:8px;display:flex}.auth-links a{font-size:.875rem}.auth-role-group{flex-direction:column;gap:8px;margin-bottom:4px;display:flex}.auth-role-options{flex-wrap:wrap;gap:8px;display:flex}.auth-role-option{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);cursor:pointer;transition:border-color var(--motion), background var(--motion), box-shadow var(--motion);align-items:center;gap:6px;padding:8px 12px;font-weight:500;display:flex}.auth-role-option:has(input:checked){border-color:var(--primary);background:var(--primary-soft);box-shadow:var(--elev-1)}.field-error{color:var(--danger,#dc2626);margin-top:2px;font-size:.8125rem;font-weight:500;display:block}.auth-role-pick-list{flex-direction:column;gap:10px;margin:8px 0 16px;display:flex}.auth-role-pick-card{border:1px solid var(--border);border-radius:var(--radius-lg,14px);background:var(--surface,#fff);width:100%;box-shadow:var(--elev-1);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:border-color var(--motion,.22s ease), box-shadow var(--motion,.22s ease);flex-direction:column;align-items:flex-start;gap:4px;padding:14px 16px;display:flex}.auth-role-pick-card strong{color:var(--text);font-size:1rem}.auth-role-pick-card span{color:var(--muted);font-size:.8125rem;line-height:1.4}.auth-role-pick-card:hover:not(:disabled),.auth-role-pick-card:focus-visible{border-color:var(--primary);box-shadow:var(--elev-2)}.auth-role-pick-card.is-active{border-color:var(--primary);background:var(--primary-soft,#e8f1ff)}.auth-role-pick-card:disabled{opacity:.85;cursor:default}.drv-reg-page{max-width:420px;margin:0 auto;padding:12px 16px 32px}.drv-reg-head{align-items:flex-start;gap:4px;margin-bottom:16px;display:flex}.drv-reg-back{cursor:pointer;color:#333;background:0 0;border:none;flex-shrink:0;margin-top:-2px;padding:0 6px 0 0;font-size:28px;line-height:1}.drv-reg-head-text{text-align:center;flex:1;min-width:0;padding-right:28px}.drv-reg-head-text h1{margin:0 0 6px;font-size:1.25rem;font-weight:700}.drv-reg-head-text p{color:#6b7280;margin:0;font-size:.8125rem;line-height:1.4}.drv-reg-form{flex-direction:column;gap:12px;display:flex}.drv-reg-field{color:#111;flex-direction:column;gap:4px;font-size:.8125rem;font-weight:600;display:flex}.drv-reg-form>label,.drv-reg-form .drv-reg-field{flex-direction:column;gap:4px;font-size:.8125rem;font-weight:600;display:flex}.drv-reg-required{color:#ef4444;font-weight:700}.drv-reg-form input,.drv-reg-form select,.drv-reg-form textarea{font:inherit;color:#111;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:.9375rem;font-weight:400;line-height:1.25}.drv-reg-form input::placeholder{color:#9ca3af}.drv-reg-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.drv-doc-section{margin-top:4px}.drv-doc-section h2{color:#111;margin:0 0 10px;font-size:.9375rem;font-weight:700}.drv-doc-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.drv-doc-optional-label{color:#374151;font-weight:600;margin:14px 0 8px!important}.drv-doc-optional-note{color:#64748b;font-size:12px;line-height:1.4;margin:8px 0 0!important}.drv-doc-tile{cursor:pointer;text-align:center;width:100%;min-height:132px;font:inherit;color:inherit;appearance:none;background:#f3f4f6;border:1px dashed #d1d5db;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:14px 10px;display:flex;position:relative;overflow:hidden}.drv-doc-tile:disabled{opacity:.65;cursor:not-allowed}.drv-doc-tile-wrap{text-align:center;background:#f3f4f6;border:1px dashed #d1d5db;border-radius:12px;flex-direction:column;align-items:stretch;gap:8px;min-height:132px;padding:12px 10px;display:flex;position:relative;overflow:hidden}.drv-doc-tile-wrap.has-file{background:var(--primary-soft);border-style:solid;border-color:#93c5fd}.drv-doc-tile-wrap .drv-doc-tile-preview{object-fit:contain;background:#e8edf3;border-radius:8px;width:100%;height:auto;max-height:120px}.drv-doc-tile-wrap .drv-doc-tile-title{font-size:13px}.drv-doc-tile-wrap .drv-doc-tile-hint{color:#64748b;font-size:12px}.drv-doc-tile-picker .image-source-grid{grid-template-columns:1fr 1fr}.drv-doc-tile-picker .image-source-tile-label{font-size:11px}.drv-doc-tile:active{background:#e5e7eb}.drv-doc-tile.has-file{background:var(--primary-soft);border-style:solid;border-color:#93c5fd;padding:0;display:block}.drv-doc-tile-input{opacity:0;cursor:pointer;z-index:2;width:100%;height:100%;position:absolute;inset:0}.drv-doc-tile-icon{color:#6b7280;justify-content:center;align-items:center;display:inline-flex;position:relative}.drv-doc-tile-plus{color:#fff;text-align:center;background:#6b7280;border-radius:50%;width:16px;height:16px;font-size:12px;font-weight:700;line-height:16px;position:absolute;bottom:-2px;right:-4px}.drv-doc-tile-title{color:#111;z-index:1;font-size:.875rem;font-weight:700}.drv-doc-tile-hint{color:#6b7280;z-index:1;font-size:.75rem;font-weight:400}.drv-doc-tile.has-file .drv-doc-tile-title,.drv-doc-tile.has-file .drv-doc-tile-hint{z-index:1;pointer-events:none;color:#fff;text-shadow:0 1px 2px #00000073;position:absolute;left:0;right:0}.drv-doc-tile.has-file .drv-doc-tile-title{padding:0 8px;font-size:.8125rem;bottom:22px}.drv-doc-tile.has-file .drv-doc-tile-hint{background:0 0;padding:0 8px 6px;font-size:.6875rem;bottom:6px}.drv-doc-tile.has-file:after{content:"";pointer-events:none;z-index:0;background:linear-gradient(#0000,#0000008c);height:48px;position:absolute;bottom:0;left:0;right:0}.drv-doc-tile-preview{object-fit:contain;background:#0f172a;width:100%;height:100%;position:absolute;inset:0}.drv-reg-submit{width:100%;margin-top:4px}.drv-reg-footer{justify-content:center;margin-top:16px}.landing-actions{flex-wrap:wrap;gap:12px;margin-bottom:24px;display:flex}.btn-primary{border-radius:var(--radius-md);background:var(--primary);color:var(--on-primary);text-align:center;cursor:pointer;box-shadow:var(--elev-1);transition:background var(--motion), box-shadow var(--motion), transform var(--motion);border:none;padding:14px 20px;font-weight:600;text-decoration:none;display:inline-block}.btn-primary:hover{background:var(--primary-deep);box-shadow:var(--elev-2)}.btn-primary:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.btn-primary:disabled:hover{background:var(--primary);box-shadow:none}.link-btn-block{width:100%;display:block}.error-msg{color:var(--danger);margin:0;font-size:.875rem}.success-msg{color:#15803d;margin:0;font-size:.875rem}.info-msg{color:var(--accent);margin:0;font-size:.875rem}.panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--elev-1);margin-bottom:12px;padding:16px}.panel h2{margin:0 0 10px;font-size:1rem}.inline-form{flex-wrap:wrap;gap:8px;display:flex}.inline-form input{border:1px solid var(--border);border-radius:8px;flex:1;min-width:120px;padding:10px}.wallet-card.secondary{opacity:.95}.role-sub{color:var(--muted);margin:4px 0 0;font-size:.875rem}.mono{word-break:break-all;font-family:ui-monospace,monospace;font-size:.8125rem}.muted{color:var(--muted);font-size:.875rem}.danger-zone{border-color:#fecaca}.btn-danger{border-radius:var(--radius-md);background:var(--danger);color:#fff;cursor:pointer;transition:filter var(--motion);border:none;padding:10px 16px;font-weight:600}.room-chat-shell{height:100dvh;max-height:100dvh;max-width:var(--page-max);background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 12%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%);margin:0 auto;overflow:hidden}.room-chat{--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);--cp-muted:var(--muted);--cp-line:var(--border);height:100%;min-height:0;max-height:100dvh;max-width:var(--page-max);background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%);color:var(--cp-ink);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.room-chat-header{padding:max(10px, env(safe-area-inset-top)) 12px 10px;background:linear-gradient(180deg, #0070ff 0%, var(--primary) 45%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none;flex-shrink:0;align-items:center;gap:8px;display:flex;position:relative;box-shadow:0 8px 20px #0050c82e}.room-chat-header:after{display:none}.room-rules-pin{box-sizing:border-box;background:var(--surface);border:none;border-bottom:1px solid var(--border);width:100%;box-shadow:none;color:inherit;cursor:pointer;transition:background var(--motion);border-radius:0;flex-shrink:0;align-items:center;gap:10px;margin:0;padding:10px 14px;text-decoration:none;display:flex}.room-rules-pin:active{background:var(--primary-soft)}.room-rules-pin-icon{flex-shrink:0;font-size:16px;line-height:1}.room-rules-pin-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.room-rules-pin-title{color:var(--primary);font-size:12px;font-weight:600}.room-rules-pin-preview{color:#333;white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.room-rules-pin-chevron{color:#9aa3ad;flex-shrink:0;font-size:18px}.room-agent-pins{background:var(--surface,#fff);border-bottom:1px solid var(--border,#e8ecef);flex-shrink:0;margin:0;padding:8px 12px}.room-agent-pins.is-expanded{background:#f0f2f5;padding:8px 12px 10px}.room-agent-pins-card{border:1px solid var(--border,#e0e4e8);background:#fff;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:8px 10px;display:flex}.room-agent-pins-main{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;text-decoration:none;display:flex}.room-agent-pins-icon{color:#2d7cff;flex-shrink:0}.room-agent-pins-row-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.room-agent-pins-row-body strong{color:#1a1a1a;font-size:13px;font-weight:700}.room-agent-pins-row-body span{color:#6b7280;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.room-agent-pins-more{appearance:none;border:1px solid var(--border,#d8dde3);height:30px;font:inherit;color:#374151;white-space:nowrap;cursor:pointer;background:#fff;border-radius:8px;flex-shrink:0;align-items:center;gap:5px;margin:0;padding:0 10px;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.room-agent-pins-more:active{background:#f3f4f6}.room-agent-pins-chevron{border-left:4px solid #0000;border-right:4px solid #0000;flex-shrink:0;width:0;height:0;display:inline-block}.room-agent-pins-chevron.is-down{border-top:5px solid;margin-top:2px}.room-agent-pins-chevron.is-up{border-bottom:5px solid;margin-bottom:1px}.room-agent-pins-list-head{justify-content:space-between;align-items:center;gap:12px;margin:0 0 6px;padding:2px 2px 4px;display:flex}.room-agent-pins-list-title{color:#374151;flex:1;min-width:0;font-size:13px;font-weight:600}.room-agent-pins-collapse{appearance:none;font:inherit;color:#2d7cff;white-space:nowrap;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;gap:6px;margin:0;padding:4px 2px;font-size:13px;font-weight:600;line-height:1;display:inline-flex}.room-agent-pins-collapse .room-agent-pins-chevron.is-up{border-bottom-color:#2d7cff}.room-agent-pins-list{border:1px solid var(--border,#e0e4e8);background:#fff;border-radius:10px;flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex;overflow:hidden}.room-agent-pins-list li{background:#fff;border-bottom:1px solid #eef0f3}.room-agent-pins-list li:last-child{border-bottom:none}.room-agent-pins-row{color:inherit;align-items:center;gap:10px;padding:12px;text-decoration:none;display:flex}.room-agent-pins-row:active{background:#f8fafc}.room-pin-enter-backdrop{z-index:80;box-sizing:border-box;background:#0f172a8c;justify-content:center;align-items:center;padding:20px 16px;display:flex;position:fixed;inset:0}.room-pin-enter-modal{-webkit-user-select:none;user-select:none;background:#fff;border-radius:16px;flex-direction:column;width:min(100%,400px);max-height:min(82vh,560px);padding:16px 16px 14px;display:flex;box-shadow:0 18px 48px #0f172a47}.room-pin-enter-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:#0284c7;margin:0 0 4px;font-size:11px;font-weight:700}.room-pin-enter-title{color:#0f172a;margin:0 0 6px;font-size:1.1rem;font-weight:700;line-height:1.3}.room-pin-enter-meta{color:#64748b;margin:0 0 10px;font-size:13px}.room-pin-enter-body{-webkit-overflow-scrolling:touch;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex:auto;min-height:0;margin:0 0 8px;padding:10px 12px;overflow:auto}.room-pin-enter-body p{color:#1e293b;white-space:pre-wrap;word-break:break-word;margin:0 0 .45em;font-size:14px;line-height:1.5}.room-pin-enter-body p:last-child{margin-bottom:0}.room-pin-enter-blank{min-height:.7em}.room-pin-enter-updated{color:#94a3b8;margin:0 0 12px;font-size:12px}.room-pin-enter-actions{align-items:center;gap:10px;display:flex}.room-pin-enter-link{color:#0284c7;flex:none;padding:10px 4px;font-size:14px;font-weight:600;text-decoration:none}.room-pin-enter-ok{color:#fff;cursor:pointer;background:linear-gradient(160deg,#38bdf8 0%,#0284c7 100%);border:0;border-radius:12px;flex:auto;padding:12px 14px;font-size:15px;font-weight:700}.room-pin-enter-ok:active{filter:brightness(.96)}.agent-pins-manage-list{flex-direction:column;gap:12px;margin:0 0 16px;padding:0;list-style:none;display:flex}.agent-pins-manage-empty{color:#6b7280;padding:8px 0;font-size:14px}.agent-pins-manage-item{border:1px solid var(--border,#e5e7eb);background:#fff;border-radius:10px;padding:12px}.agent-pins-manage-meta{color:#6b7280;justify-content:space-between;gap:8px;margin-bottom:8px;font-size:12px;display:flex}.agent-pins-manage-meta strong{color:#111827;font-size:13px}.agent-pins-manage-body{white-space:pre-wrap;word-break:break-word;color:#1f2937;margin:0 0 10px;font-family:inherit;font-size:14px;line-height:1.45}.agent-pins-manage-actions{flex-wrap:wrap;gap:8px;display:flex}.agent-pins-manage-item textarea,.agent-pins-manage-add textarea{box-sizing:border-box;border:1px solid var(--border,#d1d5db);width:100%;font:inherit;resize:vertical;border-radius:8px;margin-top:6px;padding:10px 12px;line-height:1.45}.agent-pins-manage-add{flex-direction:column;gap:10px;display:flex}.agent-pins-manage-add label{flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.room-guardian{background:var(--surface,#fff);border-bottom:1px solid var(--border,#e8ecef);flex-shrink:0;margin:0;padding:8px 12px 10px}.room-guardian-label{color:#5b6773;margin:0 0 6px;padding:0 2px;font-size:12px;font-weight:500;line-height:1.35}.room-guardian-card{background:#fff;border-radius:10px;overflow:hidden;box-shadow:0 1px 4px #0f28501f}.room-guardian-hero{color:#fff;background:radial-gradient(80% 120% at 70% 120%,#ffffff2e,#0000 55%),linear-gradient(135deg,#1a8cff 0%,#0068ff 55%,#0052cc 100%);justify-content:space-between;align-items:center;gap:10px;padding:12px 12px 14px;display:flex}.room-guardian-identity{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.room-guardian-avatar{object-fit:cover;background:#fff3;border:2px solid #fffffff2;border-radius:50%;flex-shrink:0;width:48px;height:48px}.room-guardian-avatar-fallback{color:#fff;justify-content:center;align-items:center;font-size:18px;font-weight:700;display:inline-flex}.room-guardian-text{flex-direction:column;gap:2px;min-width:0;display:flex}.room-guardian-job,.room-guardian-name,.room-guardian-phone{white-space:nowrap;text-overflow:ellipsis;display:block;overflow:hidden}.room-guardian-job{opacity:.92;font-size:11px;font-weight:500}.room-guardian-name{font-size:15px;font-weight:700;line-height:1.2}.room-guardian-phone{opacity:.95;font-size:13px;font-weight:500}.room-guardian-qr{background:#fff;border-radius:6px;flex-shrink:0;padding:3px;line-height:0;display:block}.room-guardian-qr img{border-radius:2px;width:64px;height:64px;display:block}.room-guardian-actions{background:#fff;border-top:1px solid #e8ecef;grid-template-columns:1fr 1fr;display:grid}.room-guardian-action{color:#1a3a5c;text-align:center;justify-content:center;align-items:center;min-height:40px;padding:8px 6px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.room-guardian-action+.room-guardian-action{border-left:1px solid #e8ecef}.room-guardian-action:active{background:#f3f6f9}.room-rules-page{--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);height:100dvh;max-width:var(--page-max,520px);background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%);flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.room-rules-page.is-shielded .room-rules-body{filter:blur(14px);-webkit-user-select:none;user-select:none}.room-rules-shield{z-index:20;color:#fff;text-align:center;background:#0f172a8c;justify-content:center;align-items:center;padding:24px;font-size:15px;display:flex;position:absolute;inset:0}.room-rules-body{background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--border);box-shadow:var(--elev-1);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;flex:1;min-width:0;margin:10px 12px 16px;padding:16px 16px 28px;overflow:hidden auto}.room-rules-body p{color:#1a1a1a;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;margin:0 0 .55em;font-size:15px;line-height:1.55}.room-rules-body .room-rules-text{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:0}.room-rules-body .room-rules-blank{margin:0 0 .35em}.room-rules-meta{color:#8a949e!important;margin-top:1.25rem!important;font-size:12px!important}.room-chat-back{width:40px;height:40px;color:var(--on-primary);transition:background var(--motion);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:28px;line-height:1;text-decoration:none;display:flex}.room-chat-back:active{background:#ffffff26}.room-chat-title-wrap{flex:1;min-width:0}.room-chat-title{color:var(--on-primary);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:17px;font-weight:600;overflow:hidden}.room-chat-subtitle{color:#ffffffe6;flex-wrap:wrap;align-items:center;gap:4px;margin:2px 0 0;font-size:12px;line-height:1.3;display:flex}.room-chat-subtitle-sep{opacity:.75}.room-chat-status-dot{background:var(--driver);vertical-align:middle;border-radius:50%;width:6px;height:6px;margin-right:4px;display:inline-block}.room-chat-status-text{color:#ffffffe6;font-size:12px}.room-chat-wallet{color:var(--on-primary);white-space:nowrap;background:#ffffff2e;border-radius:10px;flex-shrink:0;padding:4px 8px;font-size:11px;font-weight:600}.room-chat-wallet-warn{color:#fff;background:#ffc85059}.room-chat-wallet-warn-msg{color:#c0392b;margin:0 10px 4px;font-size:11px;line-height:1.35}.room-chat-avatar-dispatch{background:linear-gradient(180deg, #0ea5e9 0%, var(--primary) 100%)}.room-chat-avatar-operator{background:linear-gradient(#38bdf8 0%,#0369a1 100%)}.room-chat-avatar-room-leader{background:linear-gradient(#fbbf24 0%,#c2410c 100%)}.room-chat-avatar-admin{background:linear-gradient(#a78bfa 0%,#6d28d9 100%)}.room-chat-free-message{border-left:3px solid #0ea5e9}.room-chat-free-operator{border-left-color:#0284c7}.room-chat-free-operator .room-chat-free-role{color:#0369a1}.room-chat-free-room-leader{border-left-color:#ea580c}.room-chat-free-room-leader .room-chat-free-role{color:#c2410c}.room-chat-free-admin{border-left-color:#7c3aed}.room-chat-free-admin .room-chat-free-role{color:#6d28d9}.room-chat-free-driver{border-left-color:#059669}.room-chat-free-driver .room-chat-free-role{color:#047857}.room-chat-free-customer{border-left-color:#2563eb}.room-chat-free-customer .room-chat-free-role{color:#1d4ed8}.room-chat-free-agent{border-left-color:#d97706}.room-chat-free-agent .room-chat-free-role{color:#b45309}.room-chat-free-fleet{border-left-color:#4f46e5}.room-chat-free-fleet .room-chat-free-role{color:#4338ca}:is(.room-chat-bubble-wrap:has(.room-chat-fleet-reply),.room-chat-bubble-wrap:has(.fleet-dispatch-card-feed)){align-self:stretch;gap:0;width:100%;max-width:100%}:is(.room-chat-bubble-wrap.mine:has(.room-chat-fleet-reply),.room-chat-bubble-wrap.mine:has(.fleet-dispatch-card-feed)){flex-direction:row;align-self:stretch}:is(.room-chat-bubble-wrap:has(.room-chat-fleet-reply) .room-chat-avatar,.room-chat-bubble-wrap:has(.fleet-dispatch-card-feed) .room-chat-avatar){display:none}.room-chat-bubble.room-chat-fleet-reply{background:#fff;border-left:none;border-radius:12px;flex:auto;width:100%;max-width:100%;padding:6px 6px 8px;box-shadow:0 1px 2px #0f172a0f,0 6px 18px #0f172a0d}.room-chat-bubble:has(.fleet-dispatch-card-feed){background:#fff;border-left:none;border-radius:12px;flex:auto;width:100%;max-width:100%;padding:6px 6px 8px;box-shadow:0 1px 2px #0f172a0f,0 6px 18px #0f172a0d}.room-chat-bubble.room-chat-fleet-reply.mine{background:#fff;border-radius:12px}.room-chat-bubble.mine:has(.fleet-dispatch-card-feed){background:#fff;border-radius:12px}.fleet-reply{flex-direction:column;gap:10px;display:flex}.fleet-reply-quote{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:#f1f5f9;border:none;border-radius:10px;gap:0;margin:0;padding:0;display:flex;position:relative;overflow:hidden}.fleet-reply-quote.is-static{cursor:default}.fleet-reply-quote:not(.is-static):hover{background:#e8eef6}.fleet-reply-quote-bar{background:#2f80ed;flex:0 0 3px}.fleet-reply-quote-body{flex-direction:column;flex:1;gap:2px;min-width:0;padding:8px 10px;display:flex}.fleet-reply-quote-author{color:#2f80ed;font-size:12px;font-weight:700}.fleet-reply-quote-text{-webkit-line-clamp:2;color:#64748b;white-space:pre-wrap;-webkit-box-orient:vertical;font-size:12px;line-height:1.35;display:-webkit-box;overflow:hidden}.fleet-reply-quote-code{color:#94a3b8;font-variant-numeric:tabular-nums;margin-top:2px;font-size:11px;font-weight:600}.fleet-reply-driver{flex-direction:column;gap:8px;display:flex}.fleet-reply-driver-top{align-items:center;gap:10px;display:flex}.fleet-reply-driver-avatar{color:#fff;background:linear-gradient(160deg,#38bdf8 0%,#0284c7 100%);border-radius:12px;flex:0 0 40px;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;display:inline-flex}.fleet-reply-driver-id{flex:1;min-width:0}.fleet-reply-driver-name{color:#0f172a;margin:0;font-size:15px;font-weight:700;line-height:1.25}.fleet-reply-driver-phone{margin:2px 0 0;font-size:13px;line-height:1.3}.fleet-reply-badge{letter-spacing:.01em;border-radius:999px;flex:none;padding:4px 8px;font-size:11px;font-weight:700}.fleet-reply-badge.is-assign{color:#047857;background:#ecfdf5}.fleet-reply-badge.is-claim{color:#1d4ed8;background:#eff6ff}.fleet-reply-driver-actions{flex-direction:column;flex:none;align-items:flex-end;gap:6px;display:flex}.fleet-reply-copy-btn{flex:none;align-self:flex-end}.fleet-reply-vehicle{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fleet-reply-vehicle li{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;padding:4px 8px;font-size:12px;font-weight:600}.fleet-reply-vehicle li.is-plate{color:#b91c1c;font-variant-numeric:tabular-nums;letter-spacing:.02em;background:#fef2f2;border-color:#fecaca}.fleet-reply-pax-block{border-top:1px solid #eef2f7;padding-top:10px}.fleet-reply-pax-head{color:#64748b;text-transform:uppercase;letter-spacing:.03em;justify-content:space-between;align-items:center;margin-bottom:8px;font-size:12px;font-weight:700;display:flex}.fleet-reply-pax-n{color:#334155;text-transform:none;letter-spacing:0;background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.fleet-reply-pax-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fleet-reply-pax{background:#f8fafc;border:1px solid #eef2f7;border-radius:8px;align-items:center;gap:8px;padding:6px 8px;display:flex}.fleet-reply-pax-num{color:#0369a1;background:#e0f2fe;border:1px solid #bae6fd;border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.fleet-reply-pax-line{color:#334155;flex-wrap:wrap;flex:1;align-items:center;gap:4px 6px;min-width:0;margin:0;font-size:13px;line-height:1.35;display:flex}.fleet-reply-pax-place{color:#0f172a;font-weight:700}.fleet-reply-dot{color:#cbd5e1;font-weight:600}.fleet-reply-chip{color:#475569;background:#e2e8f0;border-radius:999px;align-items:center;padding:0 6px;font-size:11px;font-weight:600;line-height:1.5;display:inline-flex}.fleet-reply-chip.is-plate{color:#b91c1c;font-variant-numeric:tabular-nums;background:#fef2f2}.fleet-reply-pax-extra{color:#64748b;font-size:12px}.room-chat-phone-plain{color:#2f80ed;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;font-weight:600;text-decoration:none}.room-chat-phone-plain--inline{box-shadow:none;vertical-align:baseline;background:0 0;border:none;margin:0;padding:0;display:inline}.room-chat-bubble.mine .room-chat-phone-plain{color:#1d4ed8}.room-chat-phone-plain:hover{text-underline-offset:2px;text-decoration:underline}.room-chat-phone-plain:active{opacity:.8}.room-chat-jump-flash{animation:1.4s room-chat-jump-flash}@keyframes room-chat-jump-flash{0%,to{box-shadow:none}20%,60%{box-shadow:0 0 0 3px #2f80ed73}}.room-chat-free-role{font-weight:700}.room-chat-free-operator.mine{background:linear-gradient(#e0f2fe 0%,#bae6fd 100%);border-color:#0284c72e}.room-chat-free-operator.mine .room-chat-bubble-head strong{color:#0c4a6e}.room-chat-free-operator.mine .room-chat-free-role{color:#0369a1}.room-chat-free-room-leader.mine{background:linear-gradient(#ffedd5 0%,#fed7aa 100%);border-color:#ea580c33}.room-chat-free-room-leader.mine .room-chat-bubble-head strong{color:#7c2d12}.room-chat-free-room-leader.mine .room-chat-free-role{color:#c2410c}.room-chat-free-admin.mine{background:linear-gradient(#ede9fe 0%,#ddd6fe 100%);border-color:#7c3aed33}.room-chat-free-admin.mine .room-chat-bubble-head strong{color:#4c1d95}.room-chat-free-admin.mine .room-chat-free-role{color:#6d28d9}.room-chat-menu{width:44px;height:44px;color:var(--on-primary);cursor:pointer;transition:background var(--motion);background:0 0;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.room-chat-menu:active{background:#ffffff26}.room-chat-menu-icon{flex-direction:column;justify-content:center;gap:4px;width:20px;display:flex}.room-chat-menu-icon span{background:#fff;border-radius:1px;height:2px;display:block}.room-chat-menu-icon span:first-child{width:18px}.room-chat-menu-icon span:nth-child(2){width:14px;margin-left:4px}.room-chat-menu-icon span:nth-child(3){width:18px}.room-chat-menu-sheet{text-align:left;max-height:min(88dvh,100dvh - 24px)}.room-chat-menu-info{background:#f5f7fa;border-radius:12px;margin-bottom:16px;padding:4px 0}.room-chat-menu-members-link{color:inherit;border-bottom:1px solid #e8ecf0;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:14px;text-decoration:none;display:flex}.room-chat-menu-members-link:active{background:#eef2f6}.room-chat-menu-members-link span:first-child{color:var(--primary);font-weight:600}.room-chat-menu-members-link strong{color:#1a1a1a;align-items:center;gap:6px;font-weight:600;display:inline-flex}.room-chat-menu-members-chevron{color:#94a3b8;font-size:18px;line-height:1}.room-chat-menu-info-row{border-bottom:1px solid #e8ecf0;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-size:14px;display:flex}.room-chat-menu-info-row:last-child{border-bottom:none}.room-chat-menu-info-row span{color:#666;flex-shrink:0}.room-chat-menu-info-row strong{text-align:right;color:#1a1a1a}.zalo-members-page{--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);--cp-muted:var(--muted);background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 10%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%);flex-direction:column;min-height:100%;display:flex}.zalo-app-fullscreen .zalo-members-page{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;height:100%;min-height:0;max-height:100%;padding-bottom:calc(16px + var(--safe-bottom,0px));overflow:hidden auto}.zalo-app:not(.zalo-app-fullscreen) .zalo-members-page{min-height:auto;padding-bottom:8px;overflow:visible}.zalo-members-header{padding:max(8px, env(safe-area-inset-top)) 10px 10px;background:linear-gradient(180deg, #0070ff 0%, var(--primary) 45%, var(--primary-deep) 100%);color:var(--on-primary);z-index:10;border-bottom:none;align-items:center;gap:4px;display:flex;position:sticky;top:0;box-shadow:0 2px 8px #0050c81f}.zalo-members-back{width:36px;height:36px;color:var(--on-primary);transition:background var(--motion);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:26px;line-height:1;text-decoration:none;display:inline-flex}.zalo-members-back:active{background:#ffffff26}.zalo-members-header-text{flex:1;min-width:0}.zalo-members-header-text h1,.zalo-members-header>h1{color:var(--on-primary);margin:0;font-size:1.0625rem;font-weight:700;line-height:1.25}.zalo-members-header-text p{color:#ffffffe0;white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:12px;overflow:hidden}.zalo-members-header .role-header-label{letter-spacing:.04em;text-transform:uppercase;color:#ffffffd9;margin:0 0 2px;font-size:11px;font-weight:600}.zalo-members-search-wrap{top:calc(max(10px, env(safe-area-inset-top)) + 52px);z-index:9;background:0 0;border-bottom:none;margin:12px 12px 0;padding:0;position:sticky}.zalo-members-search{width:100%;font:inherit;background:#fff;border:none;border-radius:14px;padding:10px 14px;font-size:15px;box-shadow:0 6px 16px #0f376e0d}.zalo-members-count{color:var(--cp-muted,#64748b);margin:0;padding:12px 16px 6px;font-size:13px}.zalo-members-error{margin:0 16px 8px}.zalo-members-section{padding:0 12px 12px}.zalo-members-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--cp-muted,#64748b);top:calc(max(10px, env(safe-area-inset-top)) + 108px);z-index:8;background:0 0;margin:0;padding:8px 4px;font-size:12px;font-weight:700;position:sticky}.zalo-members-list{background:#fff;border:1px solid #ffffffe6;border-radius:16px;margin:0;padding:0;list-style:none;overflow:hidden;box-shadow:0 8px 22px #0f376e0d}.zalo-members-row{border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:12px 14px;display:flex}.zalo-members-row:last-child{border-bottom:none}.zalo-members-row--highlight{background:linear-gradient(90deg,#fff7ed 0%,#fff 100%)}.zalo-members-row--customer{background:linear-gradient(90deg, var(--primary-soft) 0%, #fff 100%)}.zalo-members-avatar{color:#fff;background:linear-gradient(145deg,#94a3b8,#64748b);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:17px;font-weight:700;display:inline-flex;box-shadow:0 4px 10px #0f376e1f}.zalo-members-avatar--highlight{color:#fff;background:linear-gradient(145deg,#f97316,#ea580c)}.zalo-members-avatar--customer{background:linear-gradient(145deg, #3b8cff, var(--primary-deep));color:#fff}.zalo-members-row-body{flex-direction:column;gap:3px;min-width:0;display:flex}.zalo-members-row-name{color:var(--cp-ink,#0f172a);white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:650;overflow:hidden}.zalo-members-row-phone{color:var(--cp-ink,#0f172a);font-variant-numeric:tabular-nums;letter-spacing:.02em;font-size:13px;font-weight:600}.zalo-members-row-role{color:var(--cp-muted,#64748b);font-size:12px}.zalo-members-row-role--highlight{color:#c2410c;font-weight:700}.zalo-members-row-role--customer{color:var(--primary-deep);font-weight:700}.zalo-members-section-label--customer{color:var(--primary-deep)}.zalo-members-section-hint{color:var(--cp-muted,#64748b);margin:0;padding:0 4px 8px;font-size:12px;line-height:1.4}.zalo-members-empty{padding:24px 16px}.zalo-members-loading-more{text-align:center;color:#64748b;margin:0;padding:12px 16px 20px;font-size:13px}.zalo-members-sentinel{height:1px}.room-chat-tag-free{color:#15803d!important}.room-chat-history-title{color:#1a1a1a;margin:0 0 10px;font-size:15px;font-weight:700}.room-chat-history-list{flex-direction:column;gap:8px;max-height:40dvh;margin:0 0 16px;padding:0;list-style:none;display:flex;overflow-y:auto}.room-chat-history-item{background:#fff;border:1px solid #e8ecf0;border-radius:12px;align-items:flex-start;gap:10px;padding:10px 12px;display:flex}.room-chat-history-body{flex:1;min-width:0}.room-chat-history-body p{color:#1a1a1a;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0 0 6px;font-size:14px;line-height:1.4;display:-webkit-box;overflow:hidden}.room-chat-history-meta{color:#888;font-size:11px}.room-chat-history-actions{flex-direction:column;flex-shrink:0;gap:6px;display:flex}.room-chat-history-cancel{color:#dc2626;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #dc2626;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:700}.room-chat-history-cancel:active{color:#fff;background:#dc2626}.room-chat-history-reuse{border:1px solid var(--primary);color:var(--primary);cursor:pointer;white-space:nowrap;background:#fff;border-radius:8px;flex-shrink:0;padding:8px 12px;font-size:13px;font-weight:700}.room-chat-history-reuse:active{background:var(--primary);color:#fff}.room-chat-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex-direction:column;flex:1;gap:10px;min-height:0;padding:10px 4px 20px;display:flex;overflow:hidden auto}.room-chat-history-loading{color:var(--cp-muted,#64748b);background:#0f376e14;border-radius:999px;align-self:center;padding:6px 12px;font-size:12px}.room-chat-date-divider{text-align:center;margin:4px 0 8px}.room-chat-date-divider span{color:var(--cp-muted,#64748b);background:#0f376e14;border-radius:999px;padding:4px 12px;font-size:12px;display:inline-block}.room-chat-bubble-wrap{align-self:flex-start;align-items:flex-end;gap:8px;max-width:92%;display:flex}.room-chat-bubble-wrap.align-left{flex-direction:row;align-self:flex-start}.room-chat-bubble-wrap.align-right,.room-chat-bubble-wrap.mine{flex-direction:row-reverse;align-self:flex-end}.room-chat-avatar{background:linear-gradient(145deg, #3b8cff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;width:32px;height:32px;box-shadow:0 4px 10px color-mix(in srgb, var(--primary) 20%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:700;display:flex}.room-chat-bubble{background:#fff;border:1px solid #ffffffe6;border-radius:16px 16px 16px 6px;max-width:100%;padding:8px 10px;box-shadow:0 6px 16px #0f376e0f}.room-chat-bubble.mine{border-color:color-mix(in srgb, var(--primary) 8%, transparent);background:linear-gradient(#d7eaff 0%,#c5e0ff 100%);border-radius:16px 16px 6px}.room-chat-bubble-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;font-size:12px;font-weight:700;display:flex}.room-chat-bubble-head strong{color:var(--primary);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.room-chat-bubble.mine .room-chat-bubble-head strong{color:var(--primary-deep)}.room-chat-time-inline{color:#888;flex-shrink:0;font-size:10px;font-weight:500}.room-chat-text{white-space:pre-wrap;word-break:break-word;color:#333;margin:0 0 6px;font-size:14px;line-height:1.4}.room-chat-summary{background:color-mix(in srgb, var(--primary) 5%, transparent);border-radius:8px;flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 4px;padding:5px 6px;display:flex}.room-chat-bubble.mine .room-chat-summary{background:#ffffff73}.room-chat-summary-price{color:#b45309;margin-right:2px;font-size:15px;font-weight:800;line-height:1.2}.room-chat-bubble.mine .room-chat-summary-price{color:#92400e}.room-chat-tag{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 6px;font-size:10px;font-weight:700;line-height:1.3;display:inline-flex}.room-chat-tag-payment.paid{color:#166534;background:#dcfce7}.room-chat-tag-payment.unpaid{color:#854d0e;background:#fef9c3}.room-chat-tag-fee{color:#1e40af;background:#dbeafe}.room-chat-tag-status.status-open{color:#166534;background:#dcfce7}.room-chat-tag-status.status-assigned{color:#3730a3;background:#e0e7ff}.room-chat-tag-status.status-cancelled{color:#991b1b;background:#fee2e2}.room-chat-claim-btn{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;cursor:pointer;width:100%;box-shadow:0 4px 12px color-mix(in srgb, var(--primary) 22%, transparent);border:none;border-radius:12px;margin:8px 0 0;padding:10px;font-size:14px;font-weight:700;display:block}.room-chat-claim-btn:active{opacity:.9}.room-chat-own-listing-hint{color:#64748b;margin:8px 0 0;font-size:11px;line-height:1.35}.room-chat-footer{z-index:20;border-top:1px solid var(--cp-line,#e8eef6);padding-bottom:max(6px, var(--safe-bottom));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;flex-shrink:0;box-shadow:0 -8px 24px #0f376e0f}.room-chat-compose-meta{border-bottom:1px solid var(--cp-line,#e8eef6);background:0 0;padding:4px 10px 0}.room-chat-listing-attach{padding:0 12px 6px}.room-chat-listing-attach .image-source-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.room-chat-listing-attach-hint{margin:6px 0 0;font-size:12px}.room-chat-listing-previews{flex-wrap:wrap;align-items:center;gap:8px;padding:0 12px 8px;display:flex}.room-chat-listing-preview{background:#e8edf3;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;position:relative;overflow:hidden}.room-chat-listing-preview img{object-fit:contain;width:100%;height:100%;display:block}.room-chat-listing-preview-remove{color:#fff;cursor:pointer;background:#0f172ab8;border:none;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:14px;line-height:1;display:inline-flex;position:absolute;top:2px;right:2px}.room-chat-composer .image-source-icons{flex-shrink:0;align-items:center;display:flex}.room-chat-meta-line{align-items:center;min-height:32px;padding:2px 0;display:flex}.room-chat-meta-line-pay{gap:6px}.room-chat-meta-line-fee{gap:6px;min-height:34px;padding-bottom:4px}.room-chat-meta-label{color:#666;white-space:nowrap;flex-shrink:0;font-size:12px;font-weight:700}.room-chat-price-input{width:100%;font:inherit;color:#b45309;background:0 0;border:none;outline:none;padding:4px 0;font-size:16px;font-weight:700}.room-chat-price-input::placeholder{color:#aaa;font-weight:500}.room-chat-pay-btn{min-height:28px;font:inherit;color:#555;cursor:pointer;white-space:nowrap;background:#f5f5f5;border:1px solid #ddd;border-radius:999px;flex:1;padding:4px 8px;font-size:12px;font-weight:600}.room-chat-pay-btn.active{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;border-color:#0000}.room-chat-fee-inline{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex:1;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.room-chat-fee-inline::-webkit-scrollbar{display:none}.room-chat-fee-row{align-items:center;gap:8px;display:flex}.room-chat-fee-chips{flex-wrap:wrap;flex:1;gap:6px;display:flex}.room-chat-fee-chip{color:#333;cursor:pointer;white-space:nowrap;background:#f5f5f5;border:1px solid #ccc;border-radius:14px;flex-shrink:0;min-width:32px;height:28px;padding:0 8px;font-size:12px;font-weight:600}.room-chat-fee-chip.active{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;border-color:#0000}.room-chat-fee-select{width:56px;min-height:28px;color:var(--primary);cursor:pointer;background:#f9f9f9;border:1px solid #ccc;border-radius:14px;flex-shrink:0;padding:0 4px;font-size:12px;font-weight:600}.room-chat-fee-custom-input{border:1px solid var(--primary);color:#333;background:#fff;border-radius:14px;flex:none;width:5.5rem;min-height:28px;padding:0 8px;font-size:13px;font-weight:600}.room-chat-fee-select-wrap,.room-chat-fee-custom{display:none}.room-chat-composer{background:#f3f7fc;align-items:flex-end;gap:8px;padding:8px 10px;display:flex}.room-chat-mode-tabs{background:#f3f7fc;gap:6px;padding:8px 10px 0;display:flex}.room-chat-mode-tab{border:1px solid var(--cp-line,#e8eef6);color:#475569;font:inherit;cursor:pointer;background:#fff;border-radius:999px;flex:1;padding:6px 10px;font-size:13px;font-weight:600}.room-chat-mode-tab.active{color:#fff;background:#0ea5e9;border-color:#0ea5e9}.room-chat-input-wrap{border:1px solid var(--cp-line,#e8eef6);background:#fff;border-radius:16px;flex:1;align-items:flex-end;min-width:0;min-height:40px;padding:8px 14px;display:flex;box-shadow:0 2px 8px #0f376e0a}.room-chat-input{width:100%;min-height:24px;max-height:180px;font:inherit;resize:none;color:#1a1a1a;field-sizing:content;background:0 0;border:none;border-radius:0;outline:none;padding:0;font-size:16px;line-height:1.35;overflow-y:hidden}.room-chat-mic{cursor:pointer;background:#f0f0f0;border:none;border-radius:50%;flex-shrink:0;width:44px;height:44px;font-size:20px;transition:background .15s,box-shadow .15s,transform .15s}.room-chat-mic:disabled{opacity:.45;cursor:not-allowed}.room-chat-mic.is-listening{background:#fee2e2;animation:1.4s ease-out infinite room-chat-mic-pulse;box-shadow:0 0 #ef444473}@keyframes room-chat-mic-pulse{0%{box-shadow:0 0 #ef444473}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}.room-chat-orders-btn{cursor:pointer;background:#fff;border:1px solid #e8ecf0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:relative}.room-chat-orders-btn:active{background:#e8ecf0}.room-chat-orders-icon{font-size:20px;line-height:1}.room-chat-orders-badge{color:#fff;text-align:center;background:#dc2626;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-2px;right:-2px}.room-chat-orders-sheet .room-chat-history-list{max-height:52dvh}.room-chat-send{color:#fff;cursor:not-allowed;background:#ccc;border:none;border-radius:50%;flex-shrink:0;width:44px;height:44px;font-size:18px}.room-chat-send.active{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));cursor:pointer;box-shadow:0 4px 12px color-mix(in srgb, var(--primary) 28%, transparent)}.room-chat-image-input{display:none}.room-chat-image-btn{cursor:pointer;background:#fff;border:1px solid #e8ecf0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:20px;display:inline-flex}.room-chat-image-btn.is-active{color:#0b6bcb;background:#e8f1ff;border-color:#2f86ff}.room-chat-composer-wrap{flex-direction:column;gap:0;width:100%;display:flex}.room-chat-attach-panel{background:#f4f6f8;border-top:1px solid #e8ecf0;padding:8px 10px 4px}.room-chat-attach-panel .image-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%}.image-source-file-input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.image-source-icons{flex-shrink:0;align-items:center;gap:6px;display:inline-flex}.image-source-panel{width:100%}.image-source-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;display:grid}@media (min-width:420px){.image-source-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.image-source-tile{aspect-ratio:1;color:#334155;cursor:pointer;width:100%;font:inherit;background:#e8edf3;border:none;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;margin:0;padding:8px;display:flex;position:relative;overflow:hidden}.image-source-tile:disabled{opacity:.55;cursor:not-allowed}.image-source-tile:active:not(:disabled){filter:brightness(.96)}.image-source-tile-camera{color:#0b6bcb;background:#dfe7f2}.image-source-tile-library,.image-source-tile-add{color:#0f172a;background:#e8edf3}.image-source-tile-icon{font-size:28px;line-height:1}.image-source-tile-label{text-align:center;font-size:12px;font-weight:700;line-height:1.2}.image-source-tile-preview{cursor:default;background:#0f172a;padding:0}.image-source-tile-preview img{object-fit:contain;width:100%;height:100%;display:block}.image-source-tile-remove{color:#fff;cursor:pointer;background:#0f172ab8;border:none;border-radius:999px;width:22px;height:22px;font-size:14px;line-height:1;position:absolute;top:4px;right:4px}.fleet-airport-attach{flex-direction:column;gap:8px;display:flex}.room-chat-image{object-fit:contain;background:#0f172a0a;border-radius:10px;width:auto;max-width:min(280px,75vw);height:auto;max-height:min(360px,55vh);display:block}.room-chat-image-link{display:inline-block}.room-chat-driver-card-title-row{justify-content:space-between;align-items:center;gap:8px;margin:6px 0 8px;display:flex}.room-chat-driver-card-title{color:var(--primary);margin:0;font-size:13px;font-weight:600}.room-chat-driver-card-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.room-chat-driver-revoke-btn{color:#b42318;cursor:pointer;background:#fff5f5;border:1px solid #f0c4c4;border-radius:8px;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.2}.room-chat-driver-revoke-btn:disabled{opacity:.6;cursor:not-allowed}.room-chat-driver-revoke-btn:not(:disabled):active{background:#ffe4e4}.room-chat-driver-card-revoked{background:#f4f5f7;border-color:#e5e7eb;padding:8px 12px}.room-chat-driver-card-revoked.mine{background:#eef2f7}.room-chat-driver-revoked-notice{color:#6b7280;margin:2px 0 0;font-size:12px;font-style:italic;line-height:1.35}.room-chat-bubble-head-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.room-chat-msg-revoked{opacity:.85}.room-chat-driver-copy-btn{color:var(--primary-deep);cursor:pointer;background:#eff4ff;border:1px solid #c7d7fe;border-radius:8px;flex-shrink:0;padding:4px 10px;font-size:12px;font-weight:600;line-height:1.2}.room-chat-driver-copy-btn:active{background:#dbe7ff}.room-chat-driver-card-fields{gap:6px;margin:0;font-size:13px;display:grid}.room-chat-driver-card-fields div{grid-template-columns:88px 1fr;gap:8px;display:grid}.room-chat-driver-card-fields dt{color:#64748b;margin:0;font-weight:500}.room-chat-driver-card-fields dd{color:#1a1a1a;margin:0;font-weight:600}.room-chat-driver-phone{color:var(--primary);font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap;font-weight:600;text-decoration:none}.room-chat-driver-phone:hover{text-underline-offset:2px;text-decoration:underline}.room-chat-system-wrap{justify-content:center;padding:4px 12px;display:flex}.room-chat-room-notice{text-align:center;color:#94a3b8;margin:2px 16px;padding:0;font-size:11px;font-weight:500;line-height:1.35}.room-chat-system-bubble{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:12px;max-width:92%;padding:8px 12px}.room-chat-system-bubble.complete{background:#ecfdf5;border-color:#a7f3d0}.room-chat-system-bubble.complete .room-chat-system-head strong{color:#047857}.room-chat-system-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.room-chat-system-head strong{color:#475569;font-size:12px}.room-chat-system-text{color:#334155;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.4}.room-chat-admin-wrap{align-items:flex-end;gap:10px;max-width:100%;padding:6px 12px;display:flex}.room-chat-admin-avatar{flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.room-chat-admin-avatar-ring{background:linear-gradient(145deg,#f59e0b 0%,#d97706 55%,#92400e 100%);border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;padding:2px;display:flex}.room-chat-admin-avatar-core{color:#f8fafc;letter-spacing:.02em;background:#0f172a;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;font-size:15px;font-weight:700;display:flex}.room-chat-admin-bubble{color:#f8fafc;background:#0f172a;border:1px solid #1e293b;border-radius:14px 14px 14px 4px;flex:1;min-width:0;max-width:calc(100% - 52px);padding:10px 12px}.room-chat-admin-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:4px;display:flex}.room-chat-admin-head strong{color:#fbbf24;letter-spacing:.02em;font-size:12px;font-weight:700}.room-chat-admin-head .room-chat-time-inline{color:#94a3b8}.room-chat-admin-text{color:#f1f5f9;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.45}.room-chat-admin-text .room-chat-text,.room-chat-admin-text .room-chat-text-phones{color:#f1f5f9;margin:0}.room-chat-admin-text .room-chat-text span{color:inherit}.room-chat-sheet-backdrop{z-index:var(--zalo-overlay-z);background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.zalo-app:has(.room-chat-sheet-backdrop) .zalo-main{z-index:calc(var(--zalo-bottom-nav-z) + 20);position:relative}.zalo-app:has(.room-chat-sheet-backdrop) .zalo-bottom-nav{pointer-events:none}.room-chat-sheet{width:100%;max-width:var(--page-max);max-height:min(85dvh,100dvh - 24px);padding:8px 20px max(24px, var(--safe-bottom));color:#1a1a1a;background:#fff;border-radius:16px 16px 0 0;overflow-y:auto}.zalo-profile-sheet.room-chat-sheet{padding-bottom:max(28px, calc(var(--safe-bottom) + 16px));-webkit-overflow-scrolling:touch}.room-chat-sheet-handle{background:#ccc;border-radius:2px;width:40px;height:4px;margin:8px auto 16px}.room-chat-sheet-title{text-align:center;margin:0 0 16px;font-size:18px;font-weight:700}.room-chat-info-list{margin:0 0 20px}.room-chat-info-list div{border-bottom:1px solid #eee;grid-template-columns:130px 1fr;gap:4px 12px;padding:10px 0;display:grid}.room-chat-info-list dt{color:#666;font-size:13px;font-weight:500}.room-chat-info-list dd{margin:0;font-size:14px;font-weight:600}.room-chat-sheet-close{background:var(--primary);color:#fff;cursor:pointer;border:none;border-radius:12px;flex-shrink:0;width:100%;margin-top:8px;padding:14px;font-size:16px;font-weight:700}.room-chat-toast{bottom:calc(var(--zalo-bottom-nav-height) + 44px + var(--safe-bottom));color:#fff;z-index:calc(var(--zalo-overlay-z) + 50);text-align:center;background:#000000c7;border-radius:999px;max-width:90%;padding:10px 16px;font-size:13px;position:fixed;left:50%;transform:translate(-50%)}.room-chat-demo-note{top:max(56px, calc(env(safe-area-inset-top) + 48px));color:#fff;z-index:50;white-space:nowrap;background:#0000008c;border-radius:999px;margin:0;padding:4px 10px;font-size:11px;position:fixed;left:50%;transform:translate(-50%)}.room-chat-demo-note a{color:#93c5fd}.zalo-room-avatar,.zalo-members-avatar,.zalo-profile-hero-avatar,.zalo-community-avatar,.zalo-deal-card-avatar,.zalo-notify-oa-avatar-inner,.member-profile-avatar,.room-chat-avatar,.room-chat-admin-avatar-ring,.room-chat-admin-avatar-core,.notify-avatar{border-radius:50%;overflow:hidden}.zalo-app{--zalo-bottom-nav-offset:calc(var(--zalo-bottom-nav-height) + var(--safe-bottom));width:100%;height:100dvh;min-height:100dvh;max-height:100dvh;max-width:var(--page-max);background:var(--bg);color:var(--text);box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);overscroll-behavior:none;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:clip hidden}.fleet-desktop-side{display:none}.zalo-app--fleet-desk,.zalo-app--fleet-desk.zalo-app-fullscreen{flex-direction:column;height:100dvh;min-height:100dvh;display:flex;width:100%!important;max-width:100%!important;box-shadow:none!important;border-radius:0!important}.zalo-app--fleet-desk .zalo-bottom-nav,.zalo-app--fleet-desk .fleet-desktop-side{display:none!important}.zalo-app--fleet-desk .zalo-main{flex:1;height:100%;min-height:0;overflow:hidden;max-width:none!important;padding:0!important}.zalo-main:has(>.fleet-desk){flex:1;height:100%;min-height:0;overflow:hidden;max-width:none!important;padding:0!important}.fleet-desk{color:#0f172a;background:#f1f5f9;grid-template-columns:72px minmax(0,1fr);height:100%;min-height:100dvh;display:grid}@media (min-width:900px){.fleet-desk{grid-template-columns:168px minmax(0,1fr)}}.fleet-desk-rail{color:#e2e8f0;background:#0b1220;border-right:1px solid #ffffff0f;flex-direction:column;gap:12px;padding:12px 8px;display:flex}.fleet-desk-rail-brand{flex-direction:column;gap:2px;padding:4px 6px 8px;display:flex}.fleet-desk-rail-brand strong{font-size:13px;font-weight:700}.fleet-desk-rail-brand span{color:#94a3b8;font-size:11px}.fleet-desk-rail-exit{color:#93c5fd;margin-top:6px;font-size:11px;font-weight:600;text-decoration:none}.fleet-desk-rail-exit:hover{color:#fff;text-decoration:underline}.fleet-desk-rail-nav{flex-direction:column;gap:4px;display:flex}.fleet-desk-rail-item{color:#cbd5e1;cursor:pointer;font-size:11px;font-weight:600;font:inherit;text-align:center;background:0 0;border:none;border-radius:10px;flex-direction:column;align-items:center;gap:4px;padding:10px 6px;text-decoration:none;display:flex}@media (min-width:900px){.fleet-desk-rail-item{text-align:left;flex-direction:row;justify-content:flex-start;gap:8px;padding:10px;font-size:13px}}.fleet-desk-rail-item .fleet-desk-rail-icon{flex-shrink:0;width:20px;height:20px}.fleet-desk-rail-item:hover{color:#fff;background:#ffffff0f}.fleet-desk-rail-item.is-active{color:#fff;background:#2563eb}.fleet-desk-main{flex-direction:column;gap:0;min-width:0;height:100%;min-height:0;padding:10px 12px 12px;display:flex;overflow:hidden}.fleet-desk-top{flex-shrink:0;margin-bottom:10px}.fleet-desk-search{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;padding:8px 10px;display:flex;box-shadow:0 1px 2px #0f172a0a}.fleet-desk-search .fleet-desk-search-icon{color:#94a3b8;flex-shrink:0;width:20px;height:20px}.fleet-desk-search input{min-width:0;font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:14px}.fleet-desk-search-toggle{background:#f1f5f9;border-radius:999px;gap:2px;padding:2px;display:flex}.fleet-desk-search-toggle button{color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:700}.fleet-desk-search-toggle button.is-on{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.fleet-desk-search-toggle button:disabled{opacity:.45;cursor:not-allowed}.fleet-desk-filters{flex-shrink:0;grid-template-columns:1fr;gap:10px;margin-bottom:10px;display:grid}@media (min-width:900px){.fleet-desk-filters{grid-template-columns:minmax(160px,220px) minmax(200px,1fr) minmax(220px,280px);align-items:end}}.fleet-desk-field{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:4px;padding:8px 10px;display:flex}.fleet-desk-field>span{color:#64748b;text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.fleet-desk-field select,.fleet-desk-field input[type=date]{font:inherit;color:#0f172a;background:0 0;border:none;outline:none;width:100%;font-size:14px;font-weight:600}.fleet-desk-field em{color:#64748b;font-size:12px;font-style:normal}.fleet-desk-field-date{z-index:5;position:relative;overflow:visible}.fleet-desk-field.fleet-desk-field-date{box-shadow:none;background:0 0;border:none;padding:0}.fleet-desk-datepicker{width:100%;position:relative}.fleet-desk-datepicker-trigger{background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:8px;width:100%;padding:8px;display:flex}.fleet-desk-datepicker-cal-ico{cursor:pointer;background:#006bd7;border:none;border-radius:8px;flex:none;place-items:center;width:36px;height:36px;display:grid}.fleet-desk-datepicker-bar{background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex:1;justify-content:space-between;align-items:center;gap:6px;min-width:0;min-height:36px;padding:6px 8px;display:flex}.fleet-desk-datepicker-bar-value{min-width:0;font:inherit;color:#0f172a;text-align:center;cursor:pointer;white-space:nowrap;text-overflow:ellipsis;background:0 0;border:none;flex:1;padding:0;font-size:13px;font-weight:600;overflow:hidden}.fleet-desk-datepicker-chev{color:#64748b;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:0 4px;font-size:16px;line-height:1}.fleet-desk-datepicker-pop{z-index:80;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:10px;box-shadow:0 12px 28px #0f172a24}.fleet-desk-datepicker-month-row{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.fleet-desk-datepicker-month-nav{align-items:center;gap:6px;display:flex}.fleet-desk-datepicker-month-nav strong{color:#0f172a;text-align:center;min-width:7.5rem;font-size:13px;font-weight:700}.fleet-desk-datepicker-month-nav button{color:#0f172a;cursor:pointer;background:0 0;border:none;padding:2px 4px;font-size:16px}.fleet-desk-datepicker-today{color:#fff;cursor:pointer;background:#006bd7;border:none;border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700}.fleet-desk-datepicker-weekdays{background:#f1f5f9;border-radius:4px;grid-template-columns:repeat(7,1fr);gap:0;margin-bottom:4px;padding:6px 0;display:grid}.fleet-desk-datepicker-weekdays span{text-align:center;color:#0f172a;font-size:12px;font-weight:700}.fleet-desk-datepicker-weekdays span.is-sun{color:#dc2626}.fleet-desk-datepicker-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.fleet-desk-datepicker-cell{cursor:pointer;min-height:42px;font:inherit;background:0 0;border:none;border-radius:6px;flex-direction:column;justify-content:center;align-items:center;gap:1px;padding:4px 2px;display:flex}.fleet-desk-datepicker-cell:hover{background:#eff6ff}.fleet-desk-datepicker-solar{color:#0f172a;font-size:14px;font-weight:700;line-height:1.1}.fleet-desk-datepicker-lunar{color:#006bd7;font-size:10px;font-weight:600;line-height:1.1}.fleet-desk-datepicker-cell.is-sun .fleet-desk-datepicker-solar{color:#dc2626}.fleet-desk-datepicker-cell.is-muted{opacity:.35}.fleet-desk-datepicker-cell.is-selected{background:#006bd7}.fleet-desk-datepicker-cell.is-selected .fleet-desk-datepicker-solar,.fleet-desk-datepicker-cell.is-selected .fleet-desk-datepicker-lunar{color:#fff}.fleet-desk-datepicker-collapse{color:#475569;cursor:pointer;background:0 0;border:none;width:100%;margin-top:4px;padding:4px;font-size:14px;line-height:1;display:block}.fleet-desk-date-row{align-items:center;gap:6px;display:flex}.fleet-desk-icon-btn{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;width:32px;height:32px;font-size:18px;line-height:1}.fleet-desk-error{flex-shrink:0;margin:0 0 8px}.fleet-desk-trips{z-index:2;background:#f1f5f9;flex:none;grid-template-columns:repeat(auto-fill,minmax(118px,1fr));gap:8px;max-height:min(28vh,200px);margin:0 0 4px;padding:4px 2px 10px;display:grid;position:relative;overflow:hidden auto}.fleet-desk-trips-empty{color:#64748b;grid-column:1/-1;margin:0;padding:8px 4px;font-size:13px}.fleet-desk-trip-card{color:#0f172a;cursor:pointer;text-align:left;min-height:56px;font:inherit;box-shadow:none;background:#fff;border:1px solid #e2e8f0;border-radius:8px;flex-direction:column;align-items:stretch;gap:6px;padding:8px 10px 8px 12px;display:flex;position:relative;overflow:hidden}.fleet-desk-trip-card.has-accent:before{content:"";background:#f9a8a8;border-radius:0 2px 2px 0;width:3px;position:absolute;top:8px;bottom:8px;left:0}.fleet-desk-trip-card.is-selected{z-index:1;border-width:2px;border-color:#2563eb;padding:7px 9px 7px 11px;box-shadow:0 4px 14px #2563eb2e}.fleet-desk-trip-card-top{justify-content:space-between;align-items:baseline;gap:6px;display:flex}.fleet-desk-trip-card strong{letter-spacing:-.02em;color:#0f172a;font-size:16px;font-weight:800;line-height:1.1}.fleet-desk-trip-occ{color:#334155;white-space:nowrap;font-size:12px;font-weight:600}.fleet-desk-trip-occ em{color:#2563eb;font-style:normal;font-weight:800}.fleet-desk-trip-route{color:#94a3b8;text-align:right;white-space:nowrap;text-overflow:ellipsis;font-size:10px;font-weight:500;line-height:1.2;display:block;overflow:hidden}.fleet-desk-body{z-index:1;background:#fff;flex-direction:column;flex:auto;gap:0;min-height:0;padding-top:4px;display:flex;position:relative;overflow:auto}.fleet-desk-trip-bar{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;padding:10px 12px;display:flex}.fleet-desk-trip-bar-info{flex-direction:column;gap:2px;min-width:0;display:flex}.fleet-desk-trip-bar-info strong{font-size:14px}.fleet-desk-trip-bar-info span{color:#64748b;font-size:12px}.fleet-desk-trip-actions{flex-wrap:wrap;gap:6px;display:flex}.fleet-desk-trip-actions button{color:#334155;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:700}.fleet-desk-trip-actions button.is-primary{color:#fff;background:#2563eb;border-color:#2563eb}.fleet-desk-trip-actions button:disabled{opacity:.55;cursor:not-allowed}.fleet-desk-tabs{background:#fff;border-bottom:1px solid #e2e8f0;border-radius:12px 12px 0 0;flex-shrink:0;gap:2px;margin-bottom:0;padding:0 6px;display:flex;overflow-x:auto}.fleet-desk-tabs button{color:#64748b;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;flex:none;margin-bottom:-1px;padding:12px 12px 10px;font-size:13px;font-weight:650}.fleet-desk-tabs button.is-on{color:#2563eb;border-bottom-color:#2563eb}.fleet-desk-panel{background:#fff;border:1px solid #e2e8f0;border-top:none;border-radius:0 0 12px 12px;flex:auto;min-height:0;padding:12px}.fleet-desk-empty{color:#64748b;text-align:center;margin:24px 8px;font-size:13px}.fleet-desk-seat-map{flex-direction:column;gap:16px;display:flex}.fleet-desk-seat-map.is-cabin-split{gap:8px;width:100%}.fleet-desk-cabin-heads{align-items:end;gap:10px 12px;margin-bottom:2px;display:grid}.fleet-desk-cabin-heads h4{color:#475569;text-align:center;margin:0;font-size:13px;font-weight:700}.fleet-desk-cabin-aisle-head{min-width:0}.fleet-desk-seat-grid.is-cabin-split-grid{align-items:stretch;gap:10px 12px;width:100%}.fleet-desk-seat-map.is-cabin-split .fleet-desk-seat.is-free{background:color-mix(in srgb, var(--seat-accent,#86efac) 14%, #fff);border-color:color-mix(in srgb, var(--seat-accent,#86efac) 55%, #cbd5e1);min-height:72px}.fleet-desk-seat-map.is-cabin-split .fleet-desk-seat.is-free.is-dual{background:#feeff7;border-color:#f9a8d4}.fleet-desk-seat-map.is-cabin-split .fleet-desk-seat.is-sold{min-height:160px}.fleet-desk-seat-map.is-cabin-split .fleet-desk-seat.is-blocked{min-height:72px}.fleet-desk-seat-map.is-roomy{align-items:stretch;width:100%;padding:4px 0 12px}.fleet-desk-seat-map.is-roomy .fleet-desk-deck{flex-direction:column;align-items:stretch;width:100%;display:flex}.fleet-desk-seat-map.is-roomy .fleet-desk-seat-grid{align-items:stretch;gap:12px 14px;width:100%;max-width:none;margin-inline:0}.fleet-desk-seat-map.is-roomy .fleet-desk-seat.is-free{aspect-ratio:auto;border-radius:10px;height:100%;min-height:160px;padding:14px 16px}.fleet-desk-seat-map.is-roomy .fleet-desk-seat.is-blocked{aspect-ratio:auto;height:100%;min-height:160px;font-size:16px}.fleet-desk-seat-map.is-roomy .fleet-desk-seat.is-aisle{min-height:160px}.fleet-desk-seat-map.is-roomy .fleet-desk-seat.is-sold{min-height:200px;padding:14px 16px}.fleet-desk-seat-map.is-roomy .fleet-desk-seat-code{font-size:22px}.fleet-desk-seat-map.is-roomy .fleet-desk-seat-ico{width:28px;height:28px}.fleet-desk-seat-map.is-seat-kind:not(.is-roomy) .fleet-desk-seat-grid{max-width:420px}.fleet-desk-deck h4{color:#475569;margin:0 0 8px;font-size:13px}.fleet-desk-seat-grid{align-items:start;gap:8px 6px;padding-bottom:4px;display:grid;overflow-x:auto}.fleet-desk-seat{text-align:left;min-width:0;font:inherit;cursor:pointer;color:#0f172a;background:#fff;border:1px solid #d1d5db;border-radius:6px;flex-direction:column;padding:6px 8px;display:flex}.fleet-desk-seat.is-gap,.fleet-desk-seat.is-aisle{pointer-events:none;min-height:0;box-shadow:none;background:0 0;border:none;padding:0}.fleet-desk-seat.is-blocked{color:#64748b;cursor:default;background:#e5e7eb;justify-content:center;align-items:center;min-height:52px;font-size:12px;font-weight:700}.fleet-desk-seat.is-blocked.kind-driver{background:#f1f5f9}.fleet-desk-seat-icons{align-items:center;gap:4px;display:flex}.fleet-desk-seat-ico{color:#334155;background:#f1f5f9;border-radius:50%;place-items:center;width:20px;height:20px;display:grid}.fleet-desk-seat-actions{border-top:1px dashed #e2e8f0;flex-wrap:wrap;align-items:center;gap:4px;margin-top:auto;padding-top:4px;display:flex}.fleet-desk-seat-act{color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:4px;flex-shrink:0;place-items:center;min-width:22px;height:22px;padding:0 5px;font-size:11px;font-weight:800;line-height:1;display:inline-grid}.fleet-desk-seat-act:hover{color:#fff;background:#2563eb;border-color:#2563eb}.fleet-desk-seat.is-free{background:#fff;justify-content:flex-start;gap:4px;min-height:72px}.fleet-desk-seat-code{color:var(--seat-accent,#b91c1c);font-size:14px;font-weight:800;line-height:1.1}.fleet-desk-seat.is-sold{cursor:default;background:#f5edd8;border-color:#c4b59a;gap:3px;min-height:148px;padding:8px 10px}.fleet-desk-seat-sold-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.fleet-desk-seat-sold-top-right{flex-direction:column;align-items:flex-end;gap:2px;min-width:0;display:flex}.fleet-desk-seat-agency{color:#fff;white-space:nowrap;background:#2563eb;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.fleet-desk-seat-price{color:#334155;white-space:nowrap;font-size:11px;font-weight:600}.fleet-desk-seat-contact{color:#2563eb;align-items:center;gap:4px;font-size:12px;font-weight:700;display:flex}.fleet-desk-seat-phone-ico{flex-shrink:0}.fleet-desk-seat-phone{color:#2563eb;font-size:12px;font-weight:700}.fleet-desk-seat-name-row{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.fleet-desk-seat-name{color:#0f172a;font-size:13px;font-weight:800}.fleet-desk-seat-tag{color:#e11d48;font-size:11px;font-weight:800}.fleet-desk-seat-stops{color:#475569;flex-direction:column;gap:1px;font-size:11px;line-height:1.35;display:flex}.fleet-desk-seat-stops b{color:#0f172a;font-weight:700}.fleet-desk-seat-sold-foot{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;margin-top:auto;padding-top:4px;display:flex}.fleet-desk-seat-code-ref{color:#0f172a;margin-right:auto;font-size:12px;font-weight:800}.fleet-desk-seat-call{color:#334155;background:#fff;border:1px solid #cbd5e1;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.fleet-desk-seat-tier{letter-spacing:.02em;color:#0f172a;font-size:10px;font-weight:800}.fleet-desk-seat-mock-hint{color:#94a3b8;margin-top:2px;font-size:9px}.fleet-desk-cancelled{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:16px}.fleet-desk-cancelled-toolbar{align-items:center;gap:10px;margin-bottom:12px;display:flex}.fleet-desk-cancelled-select select{appearance:none;min-width:140px;height:34px;font:inherit;color:#0f172a;cursor:pointer;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 9l6 6 6-6' stroke='%33475569' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E") right 10px center no-repeat;border:1px solid #cbd5e1;border-radius:6px;padding:0 28px 0 12px;font-size:13px;font-weight:600}.fleet-desk-cancelled-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}@media (max-width:1100px){.fleet-desk-cancelled-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:700px){.fleet-desk-cancelled-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.fleet-desk-cancelled-grid{grid-template-columns:1fr}}.fleet-desk-cancel-card{color:#0f172a;background:#f3f4f6;border:1px solid #d1d5db;border-radius:4px;flex-direction:column;gap:3px;min-height:0;padding:8px 8px 0;font-size:12px;display:flex;overflow:hidden}.fleet-desk-cancel-card-top{justify-content:space-between;align-items:flex-start;gap:6px;display:flex}.fleet-desk-cancel-seat{color:#b91c1c;font-size:15px;font-weight:800;line-height:1.1}.fleet-desk-cancel-agency{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#2563eb;border-radius:3px;flex-shrink:0;max-width:55%;padding:2px 6px;font-size:10px;font-weight:700;overflow:hidden}.fleet-desk-cancel-contact{color:#2563eb;align-items:center;gap:4px;display:flex}.fleet-desk-cancel-ico{color:#2563eb;flex-shrink:0}.fleet-desk-cancel-ico.person{color:#2563eb}.fleet-desk-cancel-phone{color:#2563eb;font-size:12px;font-weight:700}.fleet-desk-cancel-name-row{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.fleet-desk-cancel-name{color:#0f172a;font-size:13px;font-weight:800}.fleet-desk-cancel-fare{color:#334155;white-space:nowrap;margin-left:auto;font-size:11px;font-weight:600}.fleet-desk-cancel-stops{color:#475569;flex-direction:column;gap:1px;font-size:11px;line-height:1.35;display:flex}.fleet-desk-cancel-stops b{color:#0f172a;font-weight:700}.fleet-desk-cancel-agent{color:#2563eb;margin:0;font-size:11px;font-weight:600}.fleet-desk-cancel-codes{color:#64748b;word-break:break-word;margin:0;font-size:10px;line-height:1.3}.fleet-desk-cancel-foot{color:#fff;letter-spacing:.02em;text-align:center;text-transform:uppercase;background:#4b5563;margin:6px -8px 0;padding:6px 8px;font-size:11px;font-weight:800}.fleet-desk-cancelled-hint{color:#94a3b8;margin:10px 0 0;font-size:11px}.fleet-desk-ticket-overlay{z-index:120;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.fleet-desk-ticket-popup{background:#fff;border-radius:10px;flex-direction:column;width:min(920px,100%);max-height:min(92vh,900px);display:flex;overflow:hidden;box-shadow:0 20px 50px #0f172a47}.fleet-desk-ticket-popup-head{color:#fff;background:#006bd7;flex-shrink:0;padding:10px 14px;font-size:13px;line-height:1.35}.fleet-desk-ticket-popup-head strong{font-weight:800}.fleet-desk-ticket-popup-meta{color:#0f172a;border-bottom:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px 16px;padding:10px 14px;font-size:13px;display:flex}.fleet-desk-ticket-popup-seats{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fleet-desk-ticket-seat-chip{background:#f8fafc;border:1px solid #cbd5e1;border-radius:4px;justify-content:center;align-items:center;min-width:36px;padding:4px 8px;font-size:13px;font-weight:800;display:inline-flex}.fleet-desk-ticket-popup-timer b{color:#dc2626;font-weight:800}.fleet-desk-ticket-popup-tabs{background:#fff;border-bottom:1px solid #e2e8f0;flex-shrink:0;gap:0;padding:0 14px;display:flex}.fleet-desk-ticket-popup-tabs button{color:#2563eb;cursor:pointer;background:0 0;border:1px solid #0000;border-bottom:none;border-radius:6px 6px 0 0;margin-bottom:-1px;padding:10px 14px;font-size:13px;font-weight:650}.fleet-desk-ticket-popup-tabs button.is-on{color:#334155;background:#fff;border-color:#e2e8f0 #e2e8f0 #fff}.fleet-desk-ticket-popup-body{flex:auto;min-height:0;padding:14px;overflow-y:auto}.fleet-desk-ticket-popup-empty{text-align:center;color:#64748b;margin:24px 8px;font-size:13px}.fleet-desk-ticket-form{grid-template-columns:1fr 1fr;gap:10px 16px;padding-bottom:8px;display:grid}.fleet-desk-ticket-field{color:#475569;flex-direction:column;gap:4px;min-width:0;font-size:12px;display:flex}.fleet-desk-ticket-field>span{font-weight:650}.fleet-desk-ticket-field-spacer{visibility:hidden;-webkit-user-select:none;user-select:none;pointer-events:none;font-weight:650}.fleet-desk-ticket-field em{color:#dc2626;font-style:normal}.fleet-desk-ticket-field.span-2{grid-column:1/-1}.fleet-desk-ticket-field input:not([type=checkbox]):not([type=radio]),.fleet-desk-ticket-field select,.fleet-desk-ticket-field textarea{width:100%;font:inherit;color:#0f172a;background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;padding:8px 10px;font-size:13px}.fleet-desk-ticket-field input.is-readonly{color:#64748b;background:#e2e8f0}.fleet-desk-ticket-row-2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fleet-desk-ticket-input-ico{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;align-items:center;gap:0;display:flex;overflow:hidden}.fleet-desk-ticket-input-ico input{background:0 0;border:none;border-radius:0}.fleet-desk-ticket-leading{color:#64748b;padding:0 8px;font-size:12px}.fleet-desk-ticket-money{background:#f8fafc;border:1px solid #cbd5e1;border-radius:6px;align-items:stretch;display:flex;overflow:hidden}.fleet-desk-ticket-money input{background:0 0;border:none;border-radius:0}.fleet-desk-ticket-money span{color:#334155;background:#e2e8f0;place-items:center;padding:0 10px;font-weight:700;display:grid}.fleet-desk-ticket-switch-row{color:#334155;-webkit-user-select:none;user-select:none;cursor:pointer;align-self:flex-start;align-items:center;gap:8px;font-size:13px;font-weight:600;display:inline-flex}.fleet-desk-ticket-switch{cursor:pointer;background:#cbd5e1;border:none;border-radius:999px;flex-shrink:0;width:44px;height:24px;padding:0;transition:background .15s;position:relative}.fleet-desk-ticket-switch.is-on{background:#2563eb}.fleet-desk-ticket-switch-knob{background:#fff;border:1px solid #94a3b8;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0f172a1f}.fleet-desk-ticket-switch.is-on .fleet-desk-ticket-switch-knob{border-color:#fff;transform:translate(20px)}.fleet-desk-ticket-check{color:#0f172a;cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;font-weight:500;line-height:1.35;display:inline-flex}.fleet-desk-ticket-check input[type=checkbox]{accent-color:#2563eb;cursor:pointer;flex-shrink:0;width:16px;height:16px;margin:0}.fleet-desk-ticket-checks{flex-flow:wrap;align-items:center;gap:14px 28px;padding-top:2px;display:flex}.fleet-desk-ticket-field>.fleet-desk-ticket-check{min-height:36px}.fleet-desk-ticket-popup-actions{z-index:1;background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;flex-shrink:0;gap:8px;padding:12px 14px 14px;display:flex;position:relative}.fleet-desk-ticket-popup-actions button{color:#fff;cursor:pointer;border:none;border-radius:6px;padding:8px 12px;font-size:12px;font-weight:700}.fleet-desk-ticket-popup-actions button:disabled{opacity:.7;cursor:not-allowed}.fleet-desk-ticket-popup-actions .tone-red{background:#dc2626}.fleet-desk-ticket-popup-actions .tone-green{background:#16a34a}.fleet-desk-ticket-popup-actions .tone-blue{background:#2563eb}.fleet-desk-ticket-popup-actions .tone-sky{background:#0ea5e9}.fleet-desk-ticket-popup-actions .tone-navy{background:#1e3a8a}.fleet-desk-ticket-popup-actions .tone-orange{background:#ea580c}.fleet-desk-ticket-popup-actions .tone-mute{color:#334155;opacity:1;cursor:pointer;background:#e2e8f0}@media (max-width:720px){.fleet-desk-ticket-form{grid-template-columns:1fr}.fleet-desk-ticket-field.span-2{grid-column:auto}}@media (min-width:900px){.zalo-app.zalo-app--fleet-desktop{width:100%;max-width:min(100%,1280px);box-shadow:0 0 0 1px color-mix(in srgb, var(--border) 70%, transparent);grid-template-rows:1fr;grid-template-columns:240px minmax(0,1fr);display:grid}.zalo-app--fleet-desktop .zalo-bottom-nav{display:none!important}.zalo-app--fleet-desktop .zalo-main{--zalo-bottom-nav-offset:0px;grid-area:1/2;padding-bottom:0}.zalo-app--fleet-desktop .fleet-desktop-side{color:#e2e8f0;background:#0f172a;flex-direction:column;grid-area:1/1;min-height:0;padding:16px 12px;display:flex;overflow:auto}.zalo-app--fleet-desktop.zalo-app-fullscreen{max-width:min(100%,1280px)}:is(.zalo-app--fleet-desktop.zalo-app-fullscreen:has(.room-chat-sheet-backdrop),.zalo-app--fleet-desktop.zalo-app-fullscreen:has([data-room-chat])){grid-template-columns:1fr;max-width:100%}:is(.zalo-app--fleet-desktop.zalo-app-fullscreen:has(.room-chat-sheet-backdrop) .fleet-desktop-side,.zalo-app--fleet-desktop.zalo-app-fullscreen:has([data-room-chat]) .fleet-desktop-side){display:none}:is(.zalo-app--fleet-desktop.zalo-app-fullscreen:has(.room-chat-sheet-backdrop) .zalo-main,.zalo-app--fleet-desktop.zalo-app-fullscreen:has([data-room-chat]) .zalo-main){grid-column:1}}.fleet-desktop-side-brand{flex-direction:column;gap:4px;padding:4px 10px 18px;display:flex}.fleet-desktop-side-brand strong{color:#fff;font-size:1.05rem}.fleet-desktop-side-brand span{color:#94a3b8;font-size:.72rem}.fleet-desktop-side-nav{flex-direction:column;gap:4px;display:flex}.fleet-desktop-nav-item{color:#cbd5e1;border-radius:8px;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.fleet-desktop-nav-item:hover,.fleet-desktop-nav-item.active{color:#fff;background:#1e293b}.fleet-desktop-nav-icon-wrap{flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex;position:relative}.fleet-desktop-nav-icon{color:inherit;display:flex}.fleet-desktop-nav-badge{color:#fff;background:#ef4444;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.65rem;font-weight:700;display:inline-flex;position:absolute;top:-6px;right:-8px}.fleet-desktop-nav-label{flex:1;min-width:0}.fleet-desktop-nav-group{flex-direction:column;gap:2px;display:flex}.fleet-desktop-nav-sub{border-left:2px solid #334155;flex-direction:column;gap:2px;margin:0 0 4px 10px;padding:2px 0 6px 12px;display:flex}.fleet-desktop-nav-subitem{color:#94a3b8;border-radius:6px;padding:8px 10px;font-size:.84rem;font-weight:600;text-decoration:none;display:block}.fleet-desktop-nav-subitem:hover,.fleet-desktop-nav-subitem.active{color:#fff;background:#1e293b}@media (min-width:900px){.zalo-app--fleet-desktop .fleet-booking-ops-side{display:none}.zalo-app--fleet-desktop:has(.fleet-booking-ops) .zalo-main{-webkit-overflow-scrolling:touch;overflow:clip auto}.zalo-app--fleet-desktop .fleet-booking-ops{flex-direction:column;height:auto;min-height:0;display:flex}.zalo-app--fleet-desktop .fleet-booking-ops-main{width:100%}}.zalo-app-fullscreen{--zalo-bottom-nav-offset:0px;height:100dvh;min-height:0;max-height:100dvh;overflow:hidden}.zalo-app-fullscreen .zalo-main{height:100dvh;min-height:0;padding-bottom:0;overflow:hidden}:is(.zalo-app-fullscreen:has(.bus-book) .zalo-main,.zalo-app-fullscreen:has(.my-bus-trips) .zalo-main,.zalo-app-fullscreen:has(.bike-driver-shell) .zalo-main){-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow:clip auto}.zalo-main{min-height:0;padding-bottom:var(--zalo-bottom-nav-offset);scrollbar-width:none;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex:1;overflow:clip auto}.zalo-main::-webkit-scrollbar{width:0;height:0}.zalo-bottom-nav{border-top:1px solid var(--border);background:var(--surface);width:auto;max-width:none;padding-bottom:var(--safe-bottom);z-index:var(--zalo-bottom-nav-z);box-sizing:border-box;box-shadow:var(--elev-2);will-change:transform;transition:transform .22s,opacity .18s;display:flex;position:absolute;bottom:0;left:0;right:0;transform:translate(0,0)}.zalo-bottom-nav.is-collapsed{opacity:.96;pointer-events:none;transform:translateY(100%)}.zalo-nav-item{color:var(--muted);transition:color var(--motion);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px 6px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.zalo-nav-item.active .zalo-nav-icon-wrap{background:var(--primary-soft);border-radius:var(--radius-md);padding:4px 10px}.zalo-nav-icon{width:24px;height:24px;color:inherit;justify-content:center;align-items:center;line-height:1;display:inline-flex}.zalo-nav-icon svg{display:block}.zalo-nav-icon-wrap{transition:background var(--motion), border-radius var(--motion), padding var(--motion);justify-content:center;align-items:center;display:inline-flex;position:relative}.zalo-nav-badge{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:-4px;right:-10px}.zalo-notify-banner{background:var(--primary-soft);color:var(--primary-deep);border-radius:10px;margin:0 16px 12px;padding:10px 12px;font-size:13px;font-weight:600}.claim-notify-banner{left:12px;right:12px;bottom:calc(var(--zalo-bottom-nav-offset,calc(var(--zalo-bottom-nav-height,56px) + var(--safe-bottom,0px))) + 12px);z-index:calc(var(--zalo-bottom-nav-z,100) + 8);color:#fff;background:#0f172a;border-radius:14px;align-items:stretch;gap:0;transition:bottom .22s;animation:.22s both claim-notify-in;display:flex;position:absolute;overflow:hidden;box-shadow:0 10px 28px #0f172a47}@keyframes claim-notify-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.claim-notify-banner-main{min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:12px 8px 12px 12px;display:flex}.claim-notify-banner-icon{background:color-mix(in srgb, var(--primary,#2563eb) 85%, #fff);border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.claim-notify-banner-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.claim-notify-banner-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;line-height:1.25;overflow:hidden}.claim-notify-banner-copy span{color:#ffffffb8;white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.claim-notify-banner-cta{background:var(--primary,#2563eb);color:#fff;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700}.claim-notify-banner-close{color:#ffffffb3;cursor:pointer;background:0 0;border:none;border-left:1px solid #ffffff1f;flex-shrink:0;width:40px;font-size:14px}.claim-notify-banner-close:active{background:#ffffff14}.zalo-app-fullscreen .claim-notify-banner{bottom:calc(12px + var(--safe-bottom,0px))}.driver-listing-alert-banner{left:12px;right:12px;bottom:calc(var(--zalo-bottom-nav-offset,calc(var(--zalo-bottom-nav-height,56px) + var(--safe-bottom,0px))) + 12px);z-index:calc(var(--zalo-bottom-nav-z,100) + 9);color:#fff;background:linear-gradient(135deg,#0b3d2e 0%,#14532d 55%,#166534 100%);border-radius:14px;align-items:stretch;gap:0;transition:bottom .22s;animation:.22s both claim-notify-in;display:flex;position:absolute;overflow:hidden;box-shadow:0 10px 28px #14532d59}.driver-listing-alert-banner-main{min-width:0;color:inherit;text-align:left;cursor:pointer;font:inherit;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:12px 8px 12px 12px;display:flex}.driver-listing-alert-banner-icon{background:#ffffff2e;border-radius:50%;flex-shrink:0;place-items:center;width:36px;height:36px;font-size:18px;display:grid}.driver-listing-alert-banner-copy{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.driver-listing-alert-banner-copy strong{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:700;line-height:1.25;overflow:hidden}.driver-listing-alert-banner-copy span{color:#ffffffd1;text-overflow:ellipsis;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.driver-listing-alert-banner-cta{color:#14532d;white-space:nowrap;background:#fff;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700}.driver-listing-alert-banner-close{color:#ffffffbf;cursor:pointer;background:0 0;border:none;border-left:1px solid #ffffff1f;flex-shrink:0;width:40px;font-size:14px}.driver-listing-alert-banner-close:active{background:#ffffff1a}.zalo-app-fullscreen .driver-listing-alert-banner{bottom:calc(12px + var(--safe-bottom,0px))}.room-feed-claim-notice{background:color-mix(in srgb, var(--primary,#2563eb) 10%, #fff);border:1px solid color-mix(in srgb, var(--primary,#2563eb) 22%, transparent);text-align:center;border-radius:12px;flex-direction:column;align-items:center;gap:4px;margin:10px 16px;padding:8px 12px;display:flex}.room-feed-claim-notice-text{color:var(--cp-ink,#0f172a);margin:0;font-size:13px;font-weight:600;line-height:1.35}.room-feed-claim-notice-text strong{color:var(--primary-deep,#1d4ed8)}.room-feed-claim-notice-sep{color:#94a3b8;margin:0 6px;font-weight:500}.room-feed-claim-notice-time{color:#94a3b8;font-size:11px;font-weight:500}.notify-page{background:var(--bg);box-sizing:border-box;min-height:100%;padding-bottom:28px}.notify-topbar{z-index:10;background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex;position:sticky;top:0;box-shadow:0 8px 20px #0050c829}.notify-topbar-text h1{color:var(--on-primary);margin:0;font-size:20px;font-weight:700}.notify-topbar-text p{color:#ffffffe0;margin:4px 0 0;font-size:12px;line-height:1.35}.notify-topbar-badge{min-width:24px;height:24px;color:var(--primary);text-align:center;background:#fff;border-radius:999px;flex-shrink:0;padding:0 7px;font-size:12px;font-weight:800;line-height:24px}.notify-topbar-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.notify-topbar-mark-all{color:#fff;white-space:nowrap;cursor:pointer;background:#ffffff24;border:1px solid #ffffff8c;border-radius:999px;margin:0;padding:6px 10px;font-size:12px;font-weight:700;line-height:1.2}.notify-topbar-mark-all:disabled{opacity:.7;cursor:wait}.notify-topbar-mark-all:active:not(:disabled){background:#ffffff47}.notify-push-card{background:var(--primary-soft,#e8f1ff);border:1px solid color-mix(in srgb, var(--primary) 22%, transparent);border-radius:12px;align-items:center;gap:8px;margin:0 12px 8px;padding:8px 10px;display:flex}.notify-push-icon{background:#fff;border-radius:9px;flex-shrink:0;place-items:center;width:32px;height:32px;font-size:16px;display:grid;box-shadow:0 1px 3px #0f172a14}.notify-push-copy{flex:auto;min-width:0}.notify-push-copy strong{color:var(--primary-deep,#0b3d91);font-size:13px;font-weight:700;line-height:1.3;display:block}.notify-push-msg{font-weight:600;color:#b45309!important;margin:2px 0 0!important;font-size:11px!important;line-height:1.3!important}.notify-push-btn{border:1px solid color-mix(in srgb, var(--primary) 35%, transparent);min-width:44px;max-width:72px;color:var(--primary-deep,#0b3d91);white-space:nowrap;background:#fff;flex:none;font-weight:700;line-height:1.2;border-radius:999px!important;width:auto!important;padding:6px 10px!important;font-size:12px!important}.notify-push-actions{flex:none;align-items:center;gap:6px;display:flex}.notify-push-btn.is-on{background:var(--primary);border-color:var(--primary);color:#fff}.notify-push-btn:disabled{opacity:.55}.notify-list{flex-direction:column;gap:10px;margin:0;padding:12px 12px 8px;list-style:none;display:flex}.notify-card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--elev-1);overflow:hidden}.notify-card.unread{border-color:color-mix(in srgb, var(--primary) 35%, var(--border));background:linear-gradient(180deg, var(--primary-soft) 0%, var(--surface) 42%)}button.notify-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);text-align:left;cursor:pointer;width:100%;font:inherit;box-shadow:var(--elev-1);transition:border-color var(--motion), box-shadow var(--motion);gap:12px;padding:12px;display:flex}button.notify-card.unread{border-color:color-mix(in srgb, var(--primary) 35%, var(--border));background:linear-gradient(180deg, var(--primary-soft) 0%, var(--surface) 42%)}.notify-card-main{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:none;gap:12px;padding:12px 12px 8px;display:flex}.notify-card-body{flex:1;min-width:0}.notify-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.notify-card-title-wrap{flex-direction:column;align-items:flex-start;gap:4px;min-width:0;display:flex}.notify-card-title{color:#111;font-size:14px;font-weight:700;line-height:1.3}.notify-card-time{color:#9ca3af;flex-shrink:0;padding-top:2px;font-size:11px;font-weight:600}.notify-card-preview{color:#4b5563;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 0 0;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.notify-card-meta{color:#6b7280;margin:6px 0 0;font-size:11px;font-weight:600;line-height:1.35}.notify-card-foot{justify-content:space-between;align-items:center;gap:8px;padding:0 12px 10px 64px;display:flex}.notify-card-action{color:var(--primary);font-size:12px;font-weight:700}.notify-read-label{color:#9ca3af;font-size:11px;font-weight:600}.notify-mark-read{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:700}.notify-unread-dot{background:var(--primary);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.notify-kind-pill{letter-spacing:.02em;text-transform:uppercase;border-radius:999px;align-items:center;padding:2px 7px;font-size:10px;font-weight:800;display:inline-flex}.notify-kind-complete{color:#0f766e;background:#ccfbf1}.notify-kind-claim{color:var(--primary-deep);background:#dbeafe}.notify-kind-reply{color:#0369a1;background:#e0f2fe}.notify-kind-mediation{color:#b45309;background:#fef3c7}.notify-kind-admin{color:#be123c;background:#ffe4e6}.notify-avatar{color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:800;display:flex;position:relative}.notify-avatar-complete{background:#0d9488}.notify-avatar-claim{background:#2563eb}.notify-avatar-reply{background:#0284c7}.notify-avatar-mediation{background:#d97706}.notify-avatar-admin{background:linear-gradient(145deg,#e11d48,#be123c);border-radius:50%;font-size:16px}.notify-avatar-badge{box-sizing:border-box;background:#f59e0b;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;bottom:-2px;right:-2px}.notify-empty{text-align:center;color:#6b7280;margin:48px 24px}.notify-empty-icon{background:#fff;border:1px solid #e8ecf1;border-radius:18px;justify-content:center;align-items:center;width:56px;height:56px;margin-bottom:12px;font-size:24px;display:inline-flex}.notify-empty strong{color:#111;margin-bottom:6px;font-size:15px;display:block}.notify-empty p{margin:0;font-size:13px;line-height:1.45}.zalo-notify-item{text-align:left;background:#fff;border-bottom:1px solid #f3f4f6;flex-direction:column;width:100%;display:flex}.zalo-notify-item-main{text-align:left;cursor:pointer;background:0 0;border:none;gap:12px;width:100%;padding:12px 16px 8px;display:flex}.zalo-notify-item.unread{background:#f0f7ff}.zalo-notify-item-main:active{background:#e5e7eb}.zalo-notify-item.unread .zalo-notify-item-main:active{background:#dbeafe}.zalo-notify-dot{background:var(--primary);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.zalo-notify-priority{color:#b45309;font-weight:800}.zalo-notify-oa-avatar{flex-shrink:0;width:48px;height:48px;position:relative}.zalo-notify-oa-avatar-inner{color:#fff;letter-spacing:-.02em;background:linear-gradient(145deg,#e11d48,#be123c);border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:flex}.zalo-notify-oa-tick{box-sizing:border-box;background:#f59e0b;border:2px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;bottom:-1px;right:-1px}.zalo-notify-oa-name{color:#111827;font-size:14px;font-weight:700}.zalo-notify-oa-preview{color:#6b7280;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.35;display:-webkit-box;overflow:hidden}.zalo-notify-admin .zalo-notify-item-main{padding-bottom:12px}.zalo-oa-detail-page{background:#e8eef5;min-height:100%;padding-bottom:24px}.zalo-oa-detail-topbar{z-index:5;background:#fff;border-bottom:1px solid #e5e7eb;align-items:center;gap:8px;padding:10px 12px;display:flex;position:sticky;top:0}.zalo-oa-detail-topbar h1{margin:0;font-size:16px}.zalo-oa-detail-topbar-title{align-items:center;gap:10px;min-width:0;display:flex}.zalo-oa-detail-topbar-title strong{white-space:nowrap;text-overflow:ellipsis;font-size:15px;overflow:hidden}.zalo-oa-detail-avatar{width:36px;height:36px}.zalo-oa-detail-avatar .zalo-notify-oa-avatar-inner{width:36px;height:36px;font-size:14px}.zalo-oa-detail-avatar .zalo-notify-oa-tick{width:14px;height:14px}.zalo-oa-card{background:#fff;border-radius:12px;margin:12px 12px 0;overflow:hidden;box-shadow:0 1px 3px #0f172a14}.zalo-oa-card-image{object-fit:contain;background:#f3f4f6;width:100%;height:auto;max-height:min(280px,50vh);display:block}.zalo-oa-card-body{padding:14px 16px 16px}.zalo-oa-card-title{color:#111827;margin:0 0 8px;font-size:17px;font-weight:700;line-height:1.35}.zalo-oa-card-text{color:#4b5563;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.55}.zalo-oa-card-cta{background:var(--primary);text-align:center;border-radius:10px;margin-top:14px;padding:12px 14px;font-size:15px;font-weight:700;text-decoration:none;display:block;color:#fff!important}.zalo-oa-card-cta:active{opacity:.9}.zalo-oa-card-views{color:#9ca3af;margin:12px 0 0;font-size:12px}.zalo-notify-status-row{margin-top:0;padding:0 16px 10px 68px}.zalo-notify-read-label{color:#9ca3af;font-size:11px;font-weight:600}.zalo-notify-mark-read{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0;font-size:12px;font-weight:600;text-decoration:underline}.zalo-notify-mark-read:active{opacity:.7}.zalo-page-header{z-index:10;padding:max(14px, env(safe-area-inset-top)) 16px 12px;background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none;position:sticky;top:0;box-shadow:0 8px 20px #0050c829}.zalo-page-header h1{color:var(--on-primary);margin:0;font-size:20px;font-weight:700}.zalo-page-header-room{padding-bottom:10px}.operator-contacts-page .zalo-page-header{align-items:center;gap:8px;display:flex}.operator-contacts-page .zalo-page-header .room-chat-back{color:var(--on-primary);flex-shrink:0}.operator-contacts-page .zalo-page-header h1{flex:1;min-width:0}.zalo-room-search{background:#ffffff2e;border:1px solid #ffffff38;border-radius:999px;align-items:center;gap:8px;margin-top:10px;padding:8px 12px;display:flex}.zalo-room-search-wrap{margin-top:10px;position:relative}.zalo-room-search-wrap .zalo-room-search{margin-top:0}.zalo-room-search-hits{-webkit-overflow-scrolling:touch;background:#fff;border:1px solid #ffffff59;border-radius:14px;max-height:min(62vh,420px);margin-top:8px;overflow-y:auto;box-shadow:0 10px 28px #0f172a2e}.zalo-room-search-hits-empty{color:#64748b;margin:0;padding:14px 16px;font-size:13px;font-weight:600}.zalo-room-search-hits-list{margin:0;padding:4px 0}.zalo-room-search-hits-list .zalo-room-item{box-shadow:none;border-radius:0}.zalo-room-search-hits-list li+li .zalo-room-item{border-top:1px solid #eef2f7}.zalo-room-search-icon{color:#ffffffeb;font-size:16px;line-height:1}.zalo-room-search-input{color:#fff;font:inherit;background:0 0;border:none;outline:none;flex:1;font-size:15px}.zalo-room-search-input::placeholder{color:#ffffffbf}.zalo-section-label{color:#666;text-transform:uppercase;letter-spacing:.02em;margin:0;padding:12px 16px 6px;font-size:13px;font-weight:700}.zalo-discover-hint{color:#888;margin:0;padding:0 16px 8px;font-size:13px}.zalo-room-preview-tag{color:var(--primary);background:var(--primary-soft);border-radius:999px;flex-shrink:0;padding:2px 8px;font-size:11px;font-weight:700}.zalo-room-join-btn{color:var(--primary);background:var(--primary-soft);cursor:pointer;white-space:nowrap;border:none;border-radius:999px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:700;line-height:1.2}.zalo-room-join-btn:hover,.zalo-room-join-btn:active{background:color-mix(in srgb, var(--primary) 20%, transparent)}.zalo-room-join-btn:disabled{opacity:.65;cursor:wait}.zalo-room-join-toast{margin:0 16px 8px}.zalo-room-preview-join{flex-direction:column;align-items:stretch;gap:8px;margin:4px 12px 8px;display:flex}.zalo-room-preview-join .zalo-room-join-btn{align-self:flex-start}.room-chat-preview-label{color:#fef3c7;font-weight:700}.room-chat-preview-cta{padding:12px 14px max(12px, var(--safe-bottom));background:#fffbeb;border-top:1px solid #fde68a}.room-chat-preview-cta p{color:#92400e;margin:0 0 10px;font-size:13px;line-height:1.45}.room-chat-join-btn{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;cursor:pointer;width:100%;box-shadow:0 6px 16px color-mix(in srgb, var(--primary) 25%, transparent);border:none;border-radius:14px;padding:12px;font-size:15px;font-weight:700;display:block}.room-chat-join-btn:disabled{opacity:.6;cursor:default}.zalo-room-list-page{background:var(--bg);min-height:100%}.zalo-profile-page{background:var(--bg);min-height:100%;color:var(--text)}.zalo-room-list{margin:0;padding:0;list-style:none}.zalo-room-item{color:inherit;border-bottom:1px solid var(--border);background:var(--surface);transition:background var(--motion);align-items:stretch;gap:12px;padding:12px 16px;text-decoration:none;display:flex}.zalo-room-item:active{background:var(--primary-soft)}.zalo-room-alert-muted-tag{opacity:.85;flex-shrink:0;font-size:13px;line-height:1}.zalo-room-item.is-alert-muted{opacity:.92}.zalo-room-alert-menu-backdrop{z-index:1200;cursor:default;background:0 0;border:none;margin:0;padding:0;position:fixed;inset:0}.zalo-room-alert-menu{z-index:1201;background:#fff;border-radius:12px;min-width:200px;padding:6px;position:fixed;box-shadow:0 10px 28px #0f172a2e,0 0 0 1px #0f172a0f}.zalo-room-alert-menu-item{color:#0f172a;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:12px 14px;font-size:14px;font-weight:600}.zalo-room-alert-menu-item:active,.zalo-room-alert-menu-item:hover{background:#f1f5f9}.zalo-room-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:22px;font-weight:700;display:flex}.zalo-room-avatar img{object-fit:cover;width:100%;height:100%;display:block}.zalo-room-body{flex-direction:column;flex:1;justify-content:center;gap:4px;min-width:0;display:flex}.zalo-room-top{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.zalo-room-name{color:#111;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:6px;min-width:0;font-size:16px;font-weight:700;display:inline-flex;overflow:hidden}.zalo-room-time{color:#888;flex-shrink:0;font-size:12px}.zalo-room-top-meta{flex-shrink:0;align-items:center;gap:6px;display:flex}.zalo-room-pin-wrap{flex-shrink:0;position:relative}.zalo-room-pin-btn{color:#b0b8c4;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;padding:0;transition:color .15s,background .15s,transform .15s;display:inline-flex}.zalo-room-pin-btn:hover:not(:disabled){background:var(--primary-soft,#e8f1ff);color:var(--primary,#0068ff)}.zalo-room-pin-btn.is-on{color:var(--primary,#0068ff);background:var(--primary-soft,#e8f1ff)}.zalo-room-pin-btn:disabled{opacity:.55;cursor:wait}.zalo-room-pin-err{z-index:2;color:#fff;white-space:normal;pointer-events:none;background:#1a1a1a;border-radius:6px;max-width:160px;padding:4px 6px;font-size:11px;line-height:1.3;position:absolute;top:calc(100% + 2px);right:0}.zalo-room-bottom{align-items:center;gap:6px;min-width:0;display:flex}.zalo-room-preview{color:#666;text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;font-size:14px;overflow:hidden}.zalo-room-sender{color:#444;font-weight:600}.zalo-room-badge{color:#92400e;background:#fef3c7;border-radius:999px;flex-shrink:0;padding:2px 6px;font-size:10px;font-weight:700}.zalo-room-unread{background:var(--primary);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:flex}.zalo-empty{text-align:center;color:#888;padding:24px 16px;font-size:14px}.zalo-error{color:#dc2626;padding:12px 16px;font-size:14px}.zalo-profile-card{background:#f5f7fa;border-radius:12px;margin:16px;padding:16px}.zalo-profile-topbar h1{text-align:center}.zalo-profile-topbar{justify-content:center;align-items:center;display:flex;position:relative}.zalo-profile-settings-btn{width:40px;height:40px;color:var(--on-primary);transition:background var(--motion);border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.zalo-profile-settings-btn:active{background:#ffffff26}.zalo-settings-topbar{justify-content:flex-start;align-items:center;gap:4px;display:flex}.zalo-settings-topbar h1{text-align:left;flex:1;margin:0}.zalo-settings-back{width:40px;height:40px;color:var(--on-primary);transition:background var(--motion);border-radius:50%;justify-content:center;align-items:center;margin-left:-8px;font-size:32px;line-height:1;text-decoration:none;display:inline-flex}.zalo-settings-back:active{background:#ffffff26}.zalo-settings-section{margin:12px 16px 24px}.zalo-settings-card{background:#fff;border:1px solid #e8ecf4;border-radius:12px;margin:0;padding:14px}.zalo-settings-card label{color:#334155;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;font-weight:600;display:flex}.zalo-settings-card input{font:inherit;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px;font-weight:400}.zalo-settings-card .btn-primary{width:100%;margin-top:4px}.zalo-profile-danger{background:#0f172a;border:none;border-radius:12px;margin:0;padding:14px}.zalo-profile-danger .muted{color:#e2e8f0;margin:0 0 12px;font-size:13px;line-height:1.4}.zalo-profile-danger .btn-danger{width:100%}.zalo-profile-block{background:#fff;margin-bottom:8px}.zalo-profile-hero{align-items:center;gap:14px;padding:16px 16px 12px;display:flex}.zalo-profile-hero-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;font-size:24px;font-weight:700;display:flex}.zalo-profile-hero-body{flex:1;min-width:0}.zalo-profile-hero-name{color:#111;margin-bottom:2px;font-size:17px;font-weight:700;display:block}.zalo-profile-hero-sub{color:#666;margin:0;font-size:13px;line-height:1.35}.zalo-profile-hero-action{color:#555;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-right:4px;text-decoration:none;transition:background .15s,color .15s;display:inline-flex}.zalo-profile-hero-action:active,.zalo-profile-hero-action:hover{color:var(--primary);background:#f0f2f5}.zalo-account-block{padding:16px}.zalo-account-hint{color:#666;margin:0 0 14px;font-size:13px;line-height:1.45}.zalo-account-pending{background:#fff8e6;border:1px solid #f0e0b0;border-radius:10px;margin-bottom:14px;padding:12px;font-size:13px}.zalo-account-pending strong{margin-bottom:4px;display:block}.zalo-account-pending p{color:#555;margin:2px 0}.zalo-account-diff{margin:8px 0 0;padding:0;list-style:none}.zalo-account-diff li{border-top:1px solid #f0e0b0;flex-direction:column;gap:2px;padding:6px 0;font-size:12px;display:flex}.zalo-account-diff li span:first-child{color:#888}.zalo-account-dl{margin:0 0 16px}.zalo-account-dl>div{border-bottom:1px solid #f0f0f0;grid-template-columns:110px 1fr;gap:8px;padding:10px 0;font-size:14px;display:grid}.zalo-account-dl dt{color:#888;margin:0;font-weight:400}.zalo-account-dl dd{color:#111;word-break:break-word;margin:0}.zalo-account-docs{margin-bottom:16px;font-size:13px}.zalo-account-docs ul{margin:6px 0 0;padding-left:18px}.zalo-account-form{margin:0}.zalo-account-form textarea{box-sizing:border-box;width:100%;font:inherit;resize:vertical;border:1px solid #ddd;border-radius:8px;padding:10px 12px}.zalo-account-form-actions{flex-wrap:wrap;gap:10px;margin-top:8px;display:flex}.zalo-account-footer{margin:16px 0 0;font-size:13px}.drv-acc-page .zalo-profile-topbar{background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%)}.drv-acc-body{flex-direction:column;gap:12px;padding:12px 16px 28px;display:flex}.drv-acc-hero{color:#fff;background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 48%,#0ea5e9 100%);border-radius:18px;align-items:center;gap:14px;padding:16px;display:flex;box-shadow:0 10px 24px #2563eb42}.drv-acc-hero-avatar{background:#fff3;border-radius:50%;flex-shrink:0;place-items:center;width:56px;height:56px;font-size:22px;font-weight:800;display:grid}.drv-acc-hero-text{min-width:0}.drv-acc-hero-name{letter-spacing:-.02em;color:#fff;margin:0;font-size:18px;font-weight:800}.drv-acc-hero-phone{color:#ffffffe0;margin:2px 0 8px;font-size:13px}.drv-acc-status{color:#fff;background:#fff3;border-radius:999px;align-items:center;padding:4px 10px;font-size:11px;font-weight:800;display:inline-flex}.drv-acc-status--ok{color:#166534;background:#dcfce7}.drv-acc-status--warn{color:#92400e;background:#fef3c7}.drv-acc-status--bad{color:#991b1b;background:#fee2e2}.drv-acc-status--info{color:#075985;background:#e0f2fe}.drv-acc-banner{border-radius:12px;margin:0;padding:10px 12px;font-size:12px;line-height:1.45}.drv-acc-banner--info{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe}.drv-acc-banner--warn{color:#92400e;background:#fffbeb;border:1px solid #fde68a}.drv-acc-banner--muted{color:#64748b;background:#f8fafc;border:1px solid #e2e8f0}.drv-acc-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:14px;box-shadow:0 1px 2px #0f172a0a}.drv-acc-card--pending{background:linear-gradient(#fffbeb 0%,#fef3c7 100%);border-color:#fcd34d}.drv-acc-card-head{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:8px;display:flex}.drv-acc-card-head strong{color:#92400e;font-size:14px}.drv-acc-card-head span{color:#b45309;font-size:11px}.drv-acc-pending-note{color:#78350f;margin:0 0 8px;font-size:12px}.drv-acc-card-title{letter-spacing:.04em;text-transform:uppercase;color:#2563eb;margin:0 0 10px;font-size:12px;font-weight:800}.drv-acc-row{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;display:flex}.drv-acc-row:last-child{border-bottom:none;padding-bottom:0}.drv-acc-row:first-of-type{padding-top:0}.drv-acc-row-label{color:#64748b;flex-shrink:0;font-size:12px}.drv-acc-row-value{color:#0f172a;text-align:right;word-break:break-word;margin:0;font-size:14px;font-weight:700}.drv-acc-docs{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.drv-acc-docs a{color:#1d4ed8;background:#eff6ff;border-radius:12px;padding:10px 12px;font-size:13px;font-weight:700;text-decoration:none;display:block}.drv-acc-docs a:active{background:#dbeafe}.drv-acc-empty-docs{color:#94a3b8;margin:0;font-size:13px}.drv-acc-hint-inline{color:#64748b;margin:8px 0 0;font-size:12px;line-height:1.4}.drv-acc-form{flex-direction:column;gap:12px;margin:0;display:flex}.drv-acc-field{color:#334155;flex-direction:column;gap:6px;margin:0 0 10px;font-size:12px;font-weight:700;display:flex}.drv-acc-field:last-child{margin-bottom:0}.drv-acc-field input,.drv-acc-field select,.drv-acc-field textarea{box-sizing:border-box;width:100%;font:inherit;color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;padding:12px 14px;font-size:15px;font-weight:500}.drv-acc-field input:focus,.drv-acc-field select:focus,.drv-acc-field textarea:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f629}.drv-acc-field-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.drv-acc-form-actions{flex-direction:column;gap:8px;display:flex}.drv-acc-primary{color:#fff;width:100%;font:inherit;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);border:none;border-radius:14px;margin:0;padding:14px 16px;font-size:15px;font-weight:800;box-shadow:0 8px 18px #2563eb47}.drv-acc-primary:disabled{opacity:.5;box-shadow:none;cursor:not-allowed}.drv-acc-primary:active:not(:disabled){transform:scale(.98)}.drv-acc-secondary{color:#475569;width:100%;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;margin:0;padding:12px 16px;font-size:14px;font-weight:700}.drv-acc-diff{margin:0;padding:0;list-style:none}.drv-acc-diff li{border-top:1px solid #fbbf2473;flex-direction:column;gap:2px;padding:8px 0;font-size:12px;display:flex}.drv-acc-diff li span{color:#a16207}.drv-acc-diff li strong{color:#78350f;font-weight:700}.drv-acc-footer{text-align:center;margin:4px 0 0;font-size:13px}.drv-acc-footer a{color:#2563eb;font-weight:700;text-decoration:none}.zalo-wallet-row{border-top:1px solid #f0f0f0;align-items:stretch;padding:12px 0;display:flex}.agent-finance{border-top:1px solid #f0f0f0;flex-direction:column;gap:12px;padding:14px 16px 16px;display:flex}.agent-finance-wallet{background:linear-gradient(145deg, var(--primary) 0%, var(--primary-deep) 100%);color:#fff;border-radius:14px;flex-direction:column;gap:2px;padding:14px 14px 12px;display:flex}.agent-finance-wallet-top{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.agent-finance-kicker{letter-spacing:.02em;opacity:.9;font-size:12px;font-weight:600}.agent-finance-wallet .agent-finance-kicker{color:#ffffffd9}.agent-finance-link{color:#fff;opacity:.9;border-bottom:1px solid #ffffff73;font-size:12px;font-weight:600;text-decoration:none}.agent-finance-balance{letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1.15}.agent-finance-vnd{color:#fffc;font-size:13px}.agent-finance-credit{background:#f7f9fc;border:1px solid #e8ecf1;border-radius:14px;padding:12px}.agent-finance-credit-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.agent-finance-credit .agent-finance-kicker{color:#5b6472}.agent-finance-pay-btn{color:#fff;background:var(--primary);border-radius:999px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none}.agent-finance-pay-btn:active{background:var(--primary-deep)}.agent-finance-metrics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.agent-finance-metric{background:#fff;border:1px solid #eef1f5;border-radius:10px;flex-direction:column;gap:2px;min-width:0;padding:8px;display:flex}.agent-finance-metric-label{color:#8a93a0;font-size:11px;font-weight:600}.agent-finance-metric-value{color:#111;word-break:break-word;font-size:13px;font-weight:800;line-height:1.25}.agent-finance-metric-value.is-debt{color:#c2410c}.agent-finance-metric-value.is-ok{color:#0f766e}.agent-finance-metric-sub{color:#9aa3af;font-size:10px;line-height:1.3}.agent-finance-bar{margin-top:10px}.agent-finance-bar-track{background:#e5eaf0;border-radius:999px;height:6px;overflow:hidden}.agent-finance-bar-fill{background:var(--primary);border-radius:999px;height:100%;transition:width .25s}.agent-finance-bar-fill.is-high{background:#ea580c}.agent-finance-bar-caption{color:#8a93a0;margin-top:6px;font-size:11px;display:block}.zalo-agent-credit-panel{color:#444;background:#f7f9fc;border-radius:10px;margin:0 16px 12px;padding:10px 12px;font-size:13px;line-height:1.5}.zalo-agent-credit-panel p{margin:0 0 4px}.zalo-agent-credit-panel p:last-child{margin-bottom:0}.agent-recon-page h2{margin:0 0 10px;font-size:15px;font-weight:700}.agent-recon-page .zalo-profile-block{padding:14px 16px 16px}.agent-recon-page .zalo-agent-credit-panel{margin-left:0;margin-right:0}.agent-recon-page .zalo-wallet-row{margin:0 -16px}.agent-recon-page .zalo-ledger-list{padding:0}.agent-recon-page .zalo-empty,.agent-recon-page>.zalo-error,.agent-recon-page>.info-msg{margin-left:16px;margin-right:16px}.agent-recon-page .recon-topbar{color:#111;background:#fff;border-bottom:1px solid #eef1f5;align-items:center;gap:4px;display:flex}.agent-recon-page .recon-topbar h1{text-align:left;flex:1;font-size:18px}.agent-recon-page .recon-topbar .zalo-back-btn{color:#111}.recon-top{flex-direction:column;gap:10px;margin:12px 16px;display:flex}.recon-summary{background:#fff;border:1px solid #e8ecf1;border-radius:16px;padding:16px;box-shadow:0 1px 2px #1018280a}.recon-summary.is-clear{background:linear-gradient(#f0fdf9 0%,#fff 48%);border-color:#d1fae5}.recon-summary.has-debt{background:linear-gradient(#fff7ed 0%,#fff 48%);border-color:#fed7aa}.recon-summary-period{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.recon-summary-range{color:#111;font-size:13px;font-weight:700}.recon-summary-days{color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:999px;flex-shrink:0;padding:4px 8px;font-size:11px;font-weight:700}.recon-summary-label{color:#6b7280;margin:0;font-size:12px;font-weight:600}.recon-summary-value{letter-spacing:-.03em;color:#0f766e;margin:4px 0 6px;font-size:30px;font-weight:800;line-height:1.1;display:block}.recon-summary.has-debt .recon-summary-value{color:#c2410c}.recon-summary-hint{color:#6b7280;margin:0;font-size:13px;line-height:1.4}.recon-summary-cta{background:var(--primary);color:#fff;border-radius:999px;margin-top:12px;padding:9px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.recon-period{background:#fff;border:1px solid #e8ecf1;border-radius:16px;padding:14px}.recon-hero{display:none}.recon-hero-kicker{opacity:.85;margin:0 0 4px;font-size:12px;font-weight:600}.recon-hero-label{opacity:.9;margin:0;font-size:13px}.recon-hero-value{letter-spacing:-.02em;margin:4px 0 6px;font-size:28px;font-weight:800;line-height:1.15;display:block}.recon-hero-value.is-debt{color:#ffe8d6}.recon-hero-hint{opacity:.88;margin:0;font-size:13px;line-height:1.4}.recon-hero-cta{color:var(--primary);background:#fff;border-radius:999px;margin-top:12px;padding:8px 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.recon-period-label{flex-direction:column;gap:6px;font-size:13px;font-weight:600;display:flex}.recon-period-title{color:#111;margin:0;font-size:14px;font-weight:700}.recon-period-label input[type=month],.recon-period-label input[type=date]{box-sizing:border-box;background:#f9fafb;border:1px solid #d1d5db;border-radius:8px;width:100%;max-width:100%;padding:8px 10px;font-size:14px;font-weight:400}.recon-date-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.recon-preset-row{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.recon-preset-btn{color:#374151;font:inherit;cursor:pointer;background:#f9fafb;border:1px solid #e5e7eb;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.recon-preset-btn.active{border-color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--primary)}.recon-month-shortcut{margin-top:12px}.recon-period-range{color:#374151;margin:10px 0 0;font-size:13px}.recon-period-range strong{color:#111}.recon-period-note{color:#6b7280;margin:0;font-size:12px;line-height:1.4}.recon-section-title{font-size:15px;font-weight:700;margin:0 0 12px!important}.recon-flow-steps{align-items:stretch;gap:4px;margin:0;padding:0;list-style:none;display:flex}.recon-flow-steps>li:not(.recon-flow-arrow){text-align:center;background:#f7f9fc;border:1px solid #e8ecf1;border-radius:12px;flex-direction:column;flex:1;gap:2px;min-width:0;padding:10px 8px;display:flex}.recon-flow-step-label{color:#6b7280;text-transform:uppercase;letter-spacing:.03em;font-size:11px;font-weight:700}.recon-flow-steps strong{color:#111;word-break:break-word;font-size:13px;font-weight:800}.recon-flow-steps strong.is-debt{color:#c2410c}.recon-flow-steps strong.is-muted{color:#374151;font-size:11px;font-weight:700}.recon-flow-step-sub{color:#9ca3af;font-size:10px;line-height:1.3}.recon-flow-arrow{color:#9ca3af;flex-shrink:0;align-items:center;padding:0 2px;font-size:14px;display:flex}.recon-stat-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:10px;display:grid}.recon-stat{background:#f7f9fc;border:1px solid #e8ecf1;border-radius:12px;flex-direction:column;gap:4px;padding:12px;display:flex}.recon-stat span{color:#6b7280;font-size:12px;font-weight:600}.recon-stat strong{color:#111;font-size:15px;font-weight:800}.recon-stat-emphasis{background:#fff7ed;border-color:#fed7aa;grid-column:1/-1}.recon-side-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.recon-side{background:#fff;border:1px solid #eef1f5;border-radius:10px;flex-direction:column;gap:2px;padding:8px 10px;display:flex}.recon-side span{color:#9ca3af;font-size:11px}.recon-side strong{color:#111;font-size:13px;font-weight:700}.recon-stat strong.is-in,.recon-side strong.is-in,.recon-point-main strong.is-in{color:#0f766e}.recon-stat strong.is-out,.recon-side strong.is-out,.recon-point-main strong.is-out,.recon-stat strong.is-debt,.recon-side strong.is-debt{color:#c2410c}.recon-formula{color:#6b7280;margin-top:12px;font-size:12px}.recon-formula summary{cursor:pointer;color:#4b5563;font-weight:600}.recon-formula p{margin:8px 0 0}.recon-formula code{word-break:break-all;font-size:11px}.recon-tabs{background:#f0f2f5;border-radius:12px;gap:6px;margin-bottom:10px;padding:4px;display:flex}.recon-tab{font:inherit;color:#6b7280;cursor:pointer;background:0 0;border:none;border-radius:9px;flex:1;padding:9px 8px;font-size:13px;font-weight:600}.recon-tab.active{color:var(--primary);background:#fff;box-shadow:0 1px 2px #0000000f}.recon-tab-hint{color:#6b7280;margin:0 0 12px;font-size:12px;line-height:1.4}.recon-deal-list,.recon-point-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.recon-deal-item,.recon-point-item{background:#fff;border:1px solid #e8ecf1;border-radius:12px;padding:12px}.recon-deal-main,.recon-point-main{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.recon-deal-main strong{color:#111;font-size:14px}.recon-deal-fee{color:#c2410c;flex-shrink:0;font-size:13px;font-weight:700}.recon-deal-meta{color:#6b7280;flex-direction:column;gap:2px;margin-top:8px;font-size:12px;display:flex}.recon-deal-link{color:var(--primary);margin-top:8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.recon-point-kind{color:var(--primary);background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:999px;margin-bottom:4px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.recon-point-memo{color:#111;margin:0;font-size:13px;font-weight:600}.recon-point-main strong{flex-shrink:0;font-size:14px}.recon-point-meta{color:#9ca3af;justify-content:space-between;gap:8px;margin-top:8px;font-size:11px;display:flex}.agent-recon-filter label{flex-direction:column;gap:6px;padding:0;font-size:13px;font-weight:600;display:flex}.agent-recon-filter input[type=month]{border:1px solid #ddd;border-radius:8px;max-width:200px;padding:8px 10px;font-size:14px}.agent-recon-filter .muted,.agent-recon-pay .muted,.agent-recon-summary .muted{margin:8px 0 0}.agent-recon-kind{color:var(--primary);text-transform:none;font-size:11px;font-weight:700;display:inline-block}.zalo-back-btn{cursor:pointer;color:inherit;background:0 0;border:none;padding:4px 8px 4px 0;font-size:22px;line-height:1}.zalo-wallet-cell{flex-direction:column;flex:1;gap:2px;min-width:0;padding:0 16px;display:flex}.zalo-wallet-divider{background:#e8ecf0;flex-shrink:0;width:1px}.zalo-wallet-label{color:#888;font-size:12px;font-weight:600}.zalo-wallet-value{color:#111;font-size:15px;font-weight:800;line-height:1.2}.zalo-wallet-sub{color:#888;font-size:11px}.zalo-topup-cta{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;cursor:pointer;border:none;border-radius:10px;width:calc(100% - 32px);margin:0 16px 16px;padding:12px 16px;font-size:15px;font-weight:600;display:block}.zalo-topup-cta:active{opacity:.9}.zalo-topup-notice{margin:0 16px 12px}.zalo-topup-hint{color:#666;margin:0 0 16px;font-size:13px;line-height:1.45}.zalo-topup-pay{flex-direction:column;align-items:stretch;gap:10px;display:flex}.zalo-topup-pay-amount{text-align:center;margin:0;font-size:18px;font-weight:800}.zalo-topup-pay-code{text-align:center;margin:0;font-size:12px}.zalo-topup-qr-wrap{flex-direction:column;align-items:center;gap:10px;display:flex}.zalo-topup-qr-img{aspect-ratio:1;object-fit:contain;background:#fff;border:1px solid #94a3b859;border-radius:12px;width:min(260px,72vw);height:auto}.zalo-topup-qr-hint{text-align:center;margin:0;font-size:12px;line-height:1.4}.zalo-topup-countdown{text-align:center;font-variant-numeric:tabular-nums;color:var(--primary,#1a56db);margin:0;font-size:15px;font-weight:800}.zalo-topup-countdown.is-expired{color:#b45309}.zalo-topup-toast{color:#047857;text-align:center;background:#ecfdf5;border-radius:10px;margin:0;padding:8px 12px;font-size:13px;font-weight:700}.zalo-topup-payos-fallback{text-align:center;font-size:12px;text-decoration:underline;display:block}.zalo-topup-presets{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.zalo-topup-preset{cursor:pointer;text-align:left;background:#fafafa;border:1px solid #e8e8e8;border-radius:10px;flex-direction:column;gap:4px;padding:12px;display:flex}.zalo-topup-preset.active{border-color:var(--primary);background:#f0f6ff}.zalo-topup-preset strong{font-size:15px}.zalo-topup-preset span{color:#888;font-size:12px}.zalo-topup-custom{color:#666;flex-direction:column;gap:6px;margin-bottom:12px;font-size:13px;display:flex}.zalo-topup-custom input{border:1px solid #ddd;border-radius:8px;padding:10px 12px;font-size:16px}.zalo-topup-preview{color:#333;margin:0 0 14px;font-size:14px}.zalo-topup-mock-actions{flex-direction:column;gap:10px;margin-top:12px;display:flex}.zalo-topup-fail-btn{color:#c62828;cursor:pointer;background:#fff;border:1px solid #e57373;border-radius:10px;padding:12px 16px;font-size:15px;font-weight:600}.zalo-topup-preview-muted{color:#999;font-size:13px}.zalo-topup-quote{background:#f0f6ff;border-radius:10px;margin-bottom:14px;padding:12px 14px;font-size:14px;line-height:1.5}.zalo-topup-quote-sub{color:#555;margin:6px 0 0;font-size:13px}.zalo-topup-remainder{color:#888;font-size:12px}.zalo-topup-quick-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.zalo-topup-quick-btn{cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:8px 12px;font-size:13px}.zalo-topup-quick-btn:active{background:#f5f5f5}.zalo-topup-mock-page{padding-bottom:24px}.zalo-topup-mock-card{background:#fff;border-radius:12px;margin:16px;padding:20px;box-shadow:0 2px 12px #0000000f}.zalo-topup-mock-badge{color:#e65100;letter-spacing:.04em;background:#fff3e0;border-radius:6px;margin-bottom:12px;padding:4px 8px;font-size:11px;font-weight:700;display:inline-block}.zalo-topup-mock-amount{color:var(--primary);margin:8px 0 16px;font-size:28px;font-weight:700}.zalo-profile-menu{background:#fff;margin-bottom:8px}.zalo-profile-menu-item{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #f0f0f0;align-items:center;gap:14px;padding:14px 16px;text-decoration:none;display:flex}.zalo-profile-menu-item:last-child{border-bottom:none}.zalo-profile-menu-item:active{background:#f5f7fa}.zalo-profile-menu-icon{background:#f0f4ff;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;display:flex}.zalo-profile-menu-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.zalo-profile-menu-text strong{color:#111;font-size:15px;font-weight:700}.zalo-profile-menu-text span:last-child{color:#888;font-size:12px;line-height:1.35}.zalo-profile-menu-chevron{color:#ccc;flex-shrink:0;font-size:22px;font-weight:300;line-height:1}.zalo-profile-signout{color:#dc2626;width:100%;font:inherit;cursor:pointer;background:#fff;border:none;margin:0 0 16px;padding:14px 16px;font-size:15px;font-weight:600;display:block}.zalo-profile-signout:active{background:#fef2f2}.zalo-voucher-block{background:#fff;border-radius:12px;margin:0 0 16px;padding:14px 16px}.zalo-voucher-heading{color:#111;margin:0 0 12px;font-size:15px;font-weight:700}.zalo-voucher-empty{color:#888;margin:0;font-size:13px}.zalo-voucher-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.zalo-voucher-list--sheet{margin-bottom:12px}.zalo-voucher-item{border-bottom:1px solid #f0f0f0;align-items:center;gap:12px;padding:12px 0;display:flex}.zalo-voucher-item:last-child{border-bottom:none;padding-bottom:0}.zalo-voucher-item-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.zalo-voucher-item-body strong{color:#111;font-size:14px;font-weight:600}.zalo-voucher-value{color:var(--primary);font-size:15px;font-weight:700}.zalo-voucher-meta{color:#888;font-size:12px}.withdraw-status{vertical-align:middle;border-radius:6px;margin-top:4px;padding:3px 8px;font-size:12px;font-weight:700;line-height:1.3;display:inline-block}.withdraw-status--pending{color:#ad6800;background:#fff7e6}.withdraw-status--settled{color:#0f7a3f;background:#e8f8ef;box-shadow:inset 0 0 0 1px #b7e4c7}.withdraw-status--rejected{color:#b42318;background:#fdecec}.zalo-ledger-item.withdraw-item--settled{background:linear-gradient(#f3fbf6 0%,#fff 48%);border-color:#c6ebd5}.zalo-voucher-claim{background:var(--primary);color:#fff;font:inherit;cursor:pointer;border:none;border-radius:8px;flex-shrink:0;padding:8px 16px;font-size:14px;font-weight:600}.zalo-voucher-claim:disabled{opacity:.6;cursor:default}.zalo-voucher-history{border-top:1px solid #f0f0f0;margin-top:14px;padding-top:12px}.zalo-voucher-history h3{color:#666;margin:0 0 8px;font-size:13px;font-weight:600}.zalo-voucher-history ul{margin:0;padding:0;list-style:none}.zalo-voucher-history li{color:#444;justify-content:space-between;gap:8px;padding:6px 0;font-size:13px;display:flex}.zalo-offers-page{background:var(--bg);min-height:100%}.zalo-offers-page .zalo-page-header{background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none}.zalo-offers-page .zalo-page-header h1{color:var(--on-primary)}.zalo-offers-banner{margin:12px 16px 0}.zalo-offers-section{margin:12px 16px}.zalo-voucher-history-list{margin:0;padding:0;list-style:none}.zalo-voucher-history-list li{border-bottom:1px solid #f0f0f0;justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0;display:flex}.zalo-voucher-history-list li:last-child{border-bottom:none;padding-bottom:0}.zalo-voucher-history-list li>div{flex-direction:column;gap:2px;min-width:0;display:flex}.zalo-voucher-history-list strong{color:#111;font-size:14px;font-weight:600}.zalo-offers-code-form{flex-direction:column;gap:10px;display:flex}.zalo-offers-code-form input{width:100%;font:inherit;border:1px solid #e5e7eb;border-radius:10px;padding:12px 14px;font-size:15px}.zalo-trips-page{background:var(--bg);color:#111827;min-height:100%}.zalo-trip-list{padding:12px 16px calc(16px + var(--zalo-bottom-nav-height) + var(--safe-bottom));flex-direction:column;gap:12px;margin:0;list-style:none;display:flex}.zalo-trip-item{background:#fff;border:1px solid #0000;border-radius:14px;padding:14px;transition:transform .15s,box-shadow .15s,border-color .15s;box-shadow:0 4px 18px #0f172a0f}.zalo-trip-item--chat{cursor:pointer;-webkit-tap-highlight-color:transparent}.zalo-trip-item--chat:hover{border-color:color-mix(in srgb, var(--primary) 18%, transparent);box-shadow:0 8px 24px color-mix(in srgb, var(--primary) 10%, transparent)}.zalo-trip-item--chat:active{transform:scale(.985)}.zalo-trip-item--chat:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.zalo-trip-top,.zalo-trip-footer{justify-content:space-between;gap:12px;display:flex}.zalo-trip-top>div{flex-direction:column;gap:2px;min-width:0;display:flex}.zalo-trip-tags{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.zalo-trip-note{color:#475569;margin:10px 0 0;font-size:14px}.zalo-trip-pay{color:#64748b;flex-wrap:wrap;align-items:baseline;gap:6px 8px;margin:12px 0 0;font-size:13px;display:flex}.zalo-trip-pay strong{color:#0f172a;font-size:16px;font-weight:800}.zalo-trip-breakdown{gap:8px;margin:12px 0 0;display:grid}.zalo-trip-breakdown div,.customer-book-preview div{justify-content:space-between;gap:12px;display:flex}.zalo-trip-breakdown dt,.customer-book-preview span{color:#64748b;font-size:13px}.zalo-trip-breakdown dd{margin:0;font-weight:700}.zalo-trip-warning{color:#b45309;margin:8px 0 0;font-size:12px}.zalo-trip-footer{color:#64748b;border-top:1px solid #eef2f7;align-items:center;margin-top:14px;padding-top:12px;font-size:13px}.zalo-trip-driver{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.zalo-trip-chat-btn{background:linear-gradient(180deg, var(--primary) 0%, var(--primary) 100%);color:#fff;box-shadow:0 6px 14px color-mix(in srgb, var(--primary) 28%, transparent);pointer-events:none;border-radius:999px;flex-shrink:0;align-items:center;gap:4px;padding:8px 14px;font-size:13px;font-weight:700;line-height:1;display:inline-flex}.zalo-trip-chat-btn--action{pointer-events:auto;cursor:pointer;font:inherit;border:none}.zalo-trip-chat-btn--action:disabled{opacity:.7;cursor:wait}.zalo-trip-footer-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:inline-flex}.zalo-trip-chat-btn--ghost{color:#334155!important;box-shadow:none!important;background:#e2e8f0!important}.zalo-trip-chat-btn-chevron{opacity:.9;font-size:16px;line-height:1}.zalo-trip-item--chat:active .zalo-trip-chat-btn{filter:brightness(.96)}.zalo-trip-chat-disabled{color:#94a3b8;flex-shrink:0;font-size:12px;font-weight:600}.zalo-trip-chat-link{color:var(--primary);font-weight:700;text-decoration:none}.customer-fare-pin{color:#111827;background:#fff;border-bottom:1px solid #e8eef6;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.customer-fare-pin>div{flex-direction:column;gap:2px;display:flex}.customer-fare-pin-label,.customer-book-field>span{color:#64748b;font-size:12px;font-weight:700}.room-chat-footer.customer-book-dock{background:#fff;border-top:1px solid #e8eef6;padding:0;box-shadow:0 -8px 24px #0f172a0f}.customer-book-panel{padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;flex-direction:column;gap:12px;display:flex}.customer-book-panel-head{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.customer-book-panel.is-collapsed{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom,0px));gap:0}.customer-book-collapse{font:inherit;color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:none;margin-left:auto;padding:0;font-size:13px;font-weight:700}.customer-book-panel-head h2{color:#0f172a;margin:0;font-size:16px;font-weight:800}.customer-book-phone-hint{color:#64748b;margin:0;font-size:12px;font-weight:600}.customer-book-fields{flex-direction:column;gap:10px;display:flex}.customer-book-field,.customer-book-dir-rows{flex-direction:column;gap:6px;display:flex}.customer-book-dir-row{flex-wrap:nowrap;align-items:center;gap:4px;min-width:0;display:flex}.customer-book-dir-row .customer-book-chip{white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;min-width:0;max-width:none;padding:5px 6px;font-size:11px;font-weight:650;line-height:1.15;overflow:hidden}.customer-book-dir-row .customer-book-roundtrip-check{color:#334155;white-space:nowrap;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;flex:none;align-items:center;gap:3px;max-width:38%;padding:4px 5px;font-size:11px;font-weight:650;line-height:1.15;display:inline-flex}.customer-book-dir-row .customer-book-roundtrip-check.is-active{border-color:color-mix(in srgb, var(--primary) 45%, #bae6fd);background:color-mix(in srgb, var(--primary) 12%, #fff);color:var(--primary)}.customer-book-dir-row .customer-book-roundtrip-check.is-disabled{opacity:.45;cursor:not-allowed}.customer-book-dir-row .customer-book-roundtrip-check span{text-overflow:ellipsis;overflow:hidden}.customer-book-dir-row .customer-book-roundtrip-check input{height:14px;accent-color:var(--primary);cursor:pointer;flex-shrink:0;margin:0;width:14px!important}.customer-book-dir-row .customer-book-roundtrip-check input:disabled{cursor:not-allowed}.customer-book-chips{flex-wrap:wrap;gap:6px;display:flex}.customer-book-chip{color:#334155;font:inherit;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;line-height:1.2}.customer-book-chip.active{border-color:color-mix(in srgb, var(--primary) 45%, #bae6fd);background:color-mix(in srgb, var(--primary) 12%, #fff);color:var(--primary)}.customer-book-chip:disabled{opacity:.45;cursor:not-allowed}.customer-book-empty{color:#94a3b8;font-size:13px}.customer-book-field input,.customer-book-field textarea{width:100%;font:inherit;color:#111827;background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:10px 12px}.customer-book-field-note textarea{resize:vertical;min-height:72px;line-height:1.4}.customer-book-photo{margin-top:.35rem}.customer-book-photo-link{font:inherit;color:#2563eb;cursor:pointer;background:0 0;border:none;padding:0;font-size:.82rem;text-decoration:underline}.customer-book-photo-link:disabled{color:#9ca3af;cursor:default;text-decoration:none}.customer-book-photo-thumbs{flex-wrap:wrap;gap:.35rem;margin:.35rem 0 0;padding:0;list-style:none;display:flex}.customer-book-photo-thumbs li{position:relative}.customer-book-photo-thumbs img{object-fit:cover;border:1px solid #e5e7eb;border-radius:8px;width:44px;height:44px;display:block}.customer-book-photo-thumbs button{color:#6b7280;cursor:pointer;background:#fff;border:1px solid #e5e7eb;border-radius:50%;width:18px;height:18px;padding:0;font-size:12px;line-height:16px;position:absolute;top:-6px;right:-6px}.customer-book-photo-hint{color:#6b7280;margin:.3rem 0 0;font-size:.76rem}.customer-book-primary{background:var(--primary);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-radius:14px;padding:14px 16px;font-size:15px;font-weight:800}.customer-book-primary:disabled{opacity:.5;cursor:default}.customer-book-preview{background:#f8fafc;border-radius:12px;padding:12px}.customer-price-overlay{z-index:40;background:#f4f7fb;flex-direction:column;display:flex;position:absolute;inset:0}.customer-price-header{background:#fff;border-bottom:1px solid #e8eef6;flex-shrink:0;align-items:center;gap:8px;padding:10px 12px;display:flex}.customer-price-back{color:#0f172a;cursor:pointer;background:#f1f5f9;border:none;border-radius:12px;width:40px;height:40px;font-size:28px;line-height:1}.customer-price-title-wrap{min-width:0}.customer-price-title-wrap h2{color:#0f172a;margin:0;font-size:16px;font-weight:800}.customer-price-title-wrap p{color:#64748b;margin:2px 0 0;font-size:12px;font-weight:600}.customer-price-direction-note{color:#334155;white-space:pre-wrap;background:#f8fafc;border-bottom:1px solid #e2e8f0;margin:0;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.45}.customer-price-list{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:8px;min-height:0;padding:12px;display:flex;overflow-y:auto}.customer-price-promo-hint{color:#166534;background:#ecf8f1;border:1px solid #16a34a2e;border-radius:10px;margin:4px 2px 0;padding:8px 10px;font-size:12px;font-weight:600;line-height:1.4}.customer-price-trail{flex-flow:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.customer-shared-stepper{flex-shrink:0;order:0;align-items:center;gap:4px;display:inline-flex}.customer-price-trail .customer-price-amount{order:1}.customer-shared-stepper-btn{width:26px;height:26px;font:inherit;color:#334155;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:8px;justify-content:center;align-items:center;padding:0;font-size:15px;font-weight:700;line-height:1;display:inline-flex}.customer-shared-stepper-btn:disabled{opacity:.4;cursor:not-allowed}.customer-shared-stepper-btn:not(:disabled):active{background:#f1f5f9}.customer-shared-stepper-value{text-align:center;color:#334155;white-space:nowrap;min-width:4.5rem;font-size:12px;font-weight:750}.customer-price-service-note{background:linear-gradient(135deg,#fffbeb 0%,#fff7ed 100%);border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:12px;margin:0 2px;padding:12px 12px 12px 14px;box-shadow:0 1px 2px #92400e0a}.customer-price-service-note-head{align-items:center;gap:8px;margin-bottom:8px;display:flex}.customer-price-service-note-icon{color:#fff;background:#f59e0b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;font-style:italic;font-weight:800;line-height:1;display:inline-flex}.customer-price-service-note-head strong{letter-spacing:.02em;text-transform:uppercase;color:#92400e;font-size:12px;font-weight:800}.customer-price-service-note-body{flex-direction:column;gap:8px;display:flex}.customer-price-service-note-body p{color:#78350f;margin:0;font-size:13px;font-weight:500;line-height:1.5}.customer-price-row{text-align:left;width:100%;font:inherit;color:inherit;cursor:pointer;background:#fff;border:1.5px solid #0000;border-radius:16px;grid-template-columns:48px 1fr auto;align-items:center;gap:12px;padding:12px;display:grid;box-shadow:0 1px 2px #0f172a0a}.customer-price-row.active{border-color:color-mix(in srgb, var(--primary) 55%, #7dd3fc);background:color-mix(in srgb, var(--primary) 8%, #fff)}.customer-price-icon{background:#f1f5f9;border-radius:14px;place-items:center;width:48px;height:48px;font-size:24px;display:grid}.customer-price-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.customer-price-meta strong{color:#0f172a;font-size:15px;font-weight:800}.customer-price-meta span{color:#64748b;font-size:12px;font-weight:600}.customer-price-amount{color:#0f172a;flex-shrink:0;font-size:16px;font-weight:800}.customer-price-bar{padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #e8eef6;flex-shrink:0;grid-template-columns:1fr 1.2fr;align-items:center;gap:10px;display:grid;box-shadow:0 -8px 24px #0f172a0f}.customer-price-pay{flex-direction:column;gap:2px;min-width:0;display:flex}.customer-price-pay-label{letter-spacing:.02em;text-transform:uppercase;color:#94a3b8;font-size:11px;font-weight:700}.customer-price-pay strong{color:var(--primary);font-size:14px;font-weight:800}.customer-price-pay-amount{color:#0f172a;font-size:13px;font-weight:700}.customer-price-book{margin:0}.zalo-profile-sheet{max-height:85vh}.zalo-ledger-list-sheet{max-height:50vh;margin-bottom:8px;overflow-y:auto}.zalo-joined-rooms-sheet{max-height:88vh}.zalo-joined-rooms-hint{color:#666;margin:0 0 12px;font-size:13px;line-height:1.45}.zalo-joined-rooms-link{color:var(--primary);font-weight:600;text-decoration:none}.zalo-joined-rooms-list{-webkit-overflow-scrolling:touch;flex-direction:column;gap:10px;max-height:min(52vh,100dvh - 280px);margin:0 0 12px;padding:0;list-style:none;display:flex;overflow-y:auto}.zalo-joined-room-card{background:#fafbfc;border:1px solid #e8ecf0;border-radius:12px;padding:12px}.zalo-joined-room-head{margin-bottom:10px}.zalo-joined-room-name{color:#111;font-size:15px;font-weight:700;text-decoration:none;display:block}.zalo-joined-room-route{color:#888;margin-top:2px;font-size:12px;display:block}.zalo-joined-room-meta{grid-template-columns:1fr 1fr;gap:8px 12px;margin:0;display:grid}.zalo-joined-room-meta div{min-width:0}.zalo-joined-room-meta dt{color:#888;margin:0 0 2px;font-size:11px;font-weight:500}.zalo-joined-room-meta dd{color:#222;margin:0;font-size:13px;line-height:1.35}.zalo-joined-room-status{grid-column:1/-1}.zalo-joined-room-cancel{color:#b91c1c;width:100%;font:inherit;cursor:pointer;background:#fff;border:1px solid #fecaca;border-radius:10px;margin-top:10px;padding:10px 12px;font-size:14px;font-weight:600}.zalo-joined-room-cancel:disabled{opacity:.6;cursor:not-allowed}.zalo-joined-room-cancel:active:not(:disabled){background:#fef2f2}.zalo-profile-sheet-form{flex-direction:column;gap:10px;margin-bottom:12px;display:flex}.zalo-profile-sheet-form input:not([type=checkbox]):not([type=radio]){box-sizing:border-box;width:100%;max-width:100%;font:inherit;background:#fff;border:1px solid #e0e0e0;border-radius:10px;padding:12px 14px;font-size:15px}.zalo-profile-sheet-form input[type=file]{background:0 0;border:none;border-radius:0;padding:8px 0}.zalo-profile-sheet-form input[type=checkbox],.zalo-profile-sheet-form input[type=radio]{flex-shrink:0;width:auto;min-width:18px;height:18px;margin:0;padding:0}.zalo-profile-sheet-form select{box-sizing:border-box;width:100%;max-width:100%;font:inherit;background:#fff;border:1px solid #e0e0e0;border-radius:10px;padding:12px 14px;font-size:15px}.zalo-profile-sheet-form label{color:#667781;flex-direction:column;gap:6px;font-size:12px;display:flex}.zalo-profile-sheet-form label.zalo-profile-sheet-check{color:inherit;flex-direction:row;align-items:center;gap:8px;font-size:13px}.zalo-profile-referral-link{background:var(--bg);word-break:break-all;border-radius:10px;flex:1;min-width:0;margin:0;padding:10px 12px;font-size:13px}.zalo-ref-link-row{flex-direction:column;gap:10px;display:flex}.zalo-ref-link-actions{flex-wrap:wrap;gap:8px;display:flex}.zalo-ref-link-actions .btn-outline{flex:1;min-width:120px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.drv-ref-panel{flex-direction:column;gap:12px;display:flex}.drv-ref-hero{color:#fff;background:linear-gradient(135deg,#c2410c 0%,#ea580c 45%,#f59e0b 100%);border-radius:16px;align-items:flex-start;gap:12px;padding:14px;display:flex;box-shadow:0 10px 24px #ea580c47}.drv-ref-hero-icon{background:#fff3;border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.drv-ref-hero-text{min-width:0}.drv-ref-title{letter-spacing:-.02em;color:#fff;margin:0;font-size:20px;font-weight:800}.drv-ref-sub{color:#ffffffeb;margin:4px 0 0;font-size:12px;line-height:1.4}.drv-ref-code-card,.drv-ref-link-card{background:linear-gradient(145deg,#fff7ed 0%,#ffedd5 100%);border:1px solid #fed7aa;border-radius:14px;padding:12px 14px}.drv-ref-link-card{background:linear-gradient(145deg,#fffbeb 0%,#fef3c7 100%);border-color:#fdba74}.drv-ref-code-label{letter-spacing:.04em;text-transform:uppercase;color:#c2410c;margin-bottom:4px;font-size:11px;font-weight:800;display:block}.drv-ref-code-value{letter-spacing:.02em;color:#9a3412;word-break:break-all;font-size:22px;font-weight:800;display:block}.drv-ref-code-lock{color:#b45309;margin-top:4px;font-size:11px;display:block}.drv-ref-link-text{word-break:break-all;color:#7c2d12;background:#ffffffbf;border:1px solid #fb923c59;border-radius:12px;margin:0 0 10px;padding:10px 12px;font-size:13px;line-height:1.4}.drv-ref-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.drv-ref-btn{font:inherit;cursor:pointer;border:none;border-radius:12px;justify-content:center;align-items:center;gap:6px;margin:0;padding:11px 12px;font-size:13px;font-weight:800;display:inline-flex}.drv-ref-btn:disabled{opacity:.45;cursor:not-allowed}.drv-ref-btn:active:not(:disabled){transform:scale(.98)}.drv-ref-btn-primary{color:#fff;background:linear-gradient(135deg,#ea580c 0%,#c2410c 100%);box-shadow:0 6px 14px #ea580c47}.drv-ref-btn-secondary{color:#c2410c;background:#fff;border:1.5px solid #fdba74}.drv-ref-btn-block{width:100%;padding:13px 14px;font-size:14px}.drv-ref-hint{color:#78716c;margin:0;font-size:12px;line-height:1.45}.drv-ref-field{flex-direction:column;gap:6px;margin:0;display:flex}.drv-ref-field input{box-sizing:border-box;width:100%;font:inherit;color:#7c2d12;background:#fff7ed;border:1.5px solid #fed7aa;border-radius:14px;padding:13px 14px;font-size:15px}.drv-ref-field input:focus{background:#fff;border-color:#ea580c;outline:none;box-shadow:0 0 0 3px #ea580c2e}.drv-ref-panel .referral-invitees{background:#fafaf9;border:1px solid #e7e5e4;border-radius:14px;margin-top:4px;padding:12px}.drv-ref-panel .referral-invitees-title{color:#292524}.zalo-profile-name{margin:0 0 4px;font-size:18px;font-weight:700}.zalo-profile-meta{color:#666;margin:0;font-size:13px}.zalo-profile-page .wallet-card{margin-left:16px;margin-right:16px}.zalo-section-title{margin:0 0 12px;font-size:16px;font-weight:700}.zalo-ledger-section{padding:16px}.zalo-ledger-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.zalo-ledger-item{background:#fff;border:1px solid #e8ecf0;border-radius:12px;padding:12px}.zalo-ledger-main{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:4px;display:flex}.zalo-ledger-title{color:#111;margin:0;font-size:14px;font-weight:600}.zalo-ledger-amount{white-space:nowrap;flex-direction:column;align-items:flex-end;gap:2px;margin:0;font-size:15px;font-weight:800;line-height:1.15;display:flex}.zalo-ledger-amount-vnd{opacity:.88;font-size:12px;font-weight:700}.zalo-ledger-amount.credit{color:#16a34a}.zalo-ledger-amount.debit{color:#dc2626}.zalo-ledger-sub{color:#888;justify-content:space-between;gap:8px;font-size:11px;display:flex}.zalo-ledger-code{font-family:monospace}.zalo-ledger-code-ref{color:#aaa;font-family:monospace;font-size:10px}.zalo-ledger-balance{margin:4px 0 0;font-size:11px}.zalo-profile-page .panel{margin:16px}.zalo-community-page{color:#111827;padding-bottom:24px}.zalo-community-topbar{color:var(--on-primary);align-items:center;gap:8px;display:flex}.zalo-community-topbar h1{color:var(--on-primary);flex:1;margin:0}.zalo-community-back{width:36px;height:36px;color:var(--on-primary);transition:background var(--motion);border-radius:50%;justify-content:center;align-items:center;font-size:28px;line-height:1;text-decoration:none;display:inline-flex}.zalo-community-back:active{background:#ffffff26}.zalo-community-intro{color:#374151;background:#fff;border:1px solid #d1d5db;border-radius:12px;margin:0 16px 12px;padding:12px 14px;font-size:13px;line-height:1.45}.zalo-community-intro p{margin:0}.zalo-community-search{gap:8px;margin:0 16px 12px;display:flex}.zalo-community-search input{color:#111827;background:#fff;border:1px solid #9ca3af;border-radius:10px;flex:1;min-width:0;padding:10px 12px;font-size:14px}.zalo-community-search input::placeholder{color:#6b7280}.zalo-community-search button{background:var(--primary);color:#fff;border:none;border-radius:10px;padding:10px 16px;font-size:14px;font-weight:600}.zalo-community-list{flex-direction:column;gap:8px;margin:0;padding:0 16px;list-style:none;display:flex}.zalo-community-item{color:#111827;background:#fff;border:1px solid #d1d5db;border-radius:12px;align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.zalo-community-item:active{background:#f3f4f6}.zalo-community-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:18px;font-weight:700;display:flex}.zalo-community-body{flex:1;min-width:0}.zalo-community-name{color:#111827;font-size:15px;font-weight:700;display:block}.zalo-community-alias{color:#4b5563;margin-top:2px;font-size:12px;display:block}.zalo-community-stats{color:#111827;flex-wrap:wrap;align-items:baseline;gap:6px;margin-top:6px;font-size:13px;display:flex}.zalo-community-stats em{color:#4b5563;font-size:12px;font-style:normal;font-weight:600}.zalo-community-vnd{color:#374151;font-size:12px;font-weight:500}.zalo-community-meta{color:#4b5563;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin-top:4px;font-size:12px;display:flex}.zalo-community-pager{color:#111827;justify-content:center;align-items:center;gap:16px;margin:16px;display:flex}.zalo-community-pager button{color:#111827;background:#fff;border:1px solid #9ca3af;border-radius:8px;padding:8px 14px;font-size:13px;font-weight:600}.zalo-community-item .zalo-profile-menu-chevron{color:#9ca3af}.zalo-community-pager button:disabled{opacity:.45}.zalo-community-error{margin:0 16px 12px}.zalo-community-history{margin:0;padding:0 16px 16px}.zalo-community-history-title{color:#111827;margin:0 0 12px;font-size:16px;font-weight:700}.zalo-community-purchase-block{background:#fff;border:1px solid #d1d5db;border-radius:12px;flex-direction:column;gap:10px;padding:12px;display:flex}.zalo-community-purchase-block .room-chat-bubble-wrap{align-self:stretch;max-width:100%}.zalo-community-purchase-details{background:#f9fafb;border:1px solid #e5e7eb;border-radius:10px;flex-direction:column;gap:6px;padding:10px 12px;display:flex}.zalo-community-detail-row{flex-wrap:wrap;gap:6px 10px;font-size:13px;line-height:1.4;display:flex}.zalo-community-detail-label{color:#6b7280;flex-shrink:0;min-width:110px;font-weight:600}.zalo-community-detail-value{color:#111827;word-break:break-word;flex:1;min-width:0}.zalo-community-purchase-points{background:#f3f4f6;border:1px solid #e5e7eb;border-radius:10px;padding:10px 12px}.zalo-community-purchase-points-head{color:#111827;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:14px;display:flex}.zalo-community-deal-list{margin:0}.zalo-points-timeline{flex-direction:column;gap:20px;display:flex}.zalo-points-day-group{flex-direction:column;gap:10px;display:flex}.zalo-points-day-header{color:#111827;background:#f3f4f6;border-radius:8px;margin:0;padding:10px 12px;font-size:14px;font-weight:700;line-height:1.45}.zalo-points-day-arrow{color:#dc2626;font-weight:800}.zalo-points-day-header .credit{color:#16a34a}.zalo-points-day-header .debit{color:#dc2626}.zalo-points-day-cards{flex-direction:column;gap:10px;display:flex}.zalo-points-card{background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;padding:12px 14px}.zalo-points-card-head{color:#374151;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:8px;font-size:13px;display:flex}.zalo-points-value{flex-shrink:0;font-size:14px;font-weight:800}.zalo-points-value.credit{color:#16a34a}.zalo-points-value.debit{color:#dc2626}.zalo-points-card-action{color:#111827;margin:0 0 8px;font-size:14px}.zalo-points-card-action strong{font-weight:800}.zalo-points-movements{background:#fff;border:1px solid #e5e7eb;border-radius:8px;margin:0 0 8px;padding:8px 10px;list-style:none}.zalo-points-movement{justify-content:space-between;align-items:center;gap:8px;padding:4px 0;font-size:13px;display:flex}.zalo-points-movement+.zalo-points-movement{border-top:1px dashed #e5e7eb;margin-top:4px;padding-top:8px}.zalo-points-movement.credit strong{color:#16a34a}.zalo-points-movement.debit strong{color:#dc2626}.zalo-points-card-desc{color:#111827;margin:0 0 4px;font-size:14px;font-weight:500;line-height:1.45}.zalo-points-card-meta{color:#6b7280;margin:0;font-size:12px}.zalo-community-chat-timeline{flex-direction:column;gap:16px;display:flex}.zalo-community-day-group{flex-direction:column;gap:10px;display:flex}.zalo-community-day-divider{justify-content:center;align-items:center;margin:4px 0 2px;display:flex}.zalo-community-day-divider span{color:#374151;background:#e5e7eb;border-radius:999px;padding:4px 12px;font-size:12px;font-weight:700}.zalo-community-day-messages{flex-direction:column;gap:10px;display:flex}.zalo-community-purchase-bubble{padding:0 4px}.zalo-community-purchase-summary{background:#ffffff73}.zalo-community-pickup-tag{color:#374151;background:#ffffffa6;border-radius:999px;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;line-height:1.3;display:inline-flex}.room-chat-tag-status.status-completed{color:#166534;background:#dcfce7}.zalo-community-bubble-meta{color:#4b5563;margin:8px 0 0;font-size:11px;font-weight:500;line-height:1.35}.zalo-community-history-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.zalo-community-history-item{background:#fff;border:1px solid #d1d5db;border-radius:12px;padding:14px}.zalo-community-history-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.zalo-community-history-head strong{color:#111827;font-size:15px;font-weight:700;line-height:1.35}.zalo-community-role{border-radius:999px;flex-shrink:0;padding:3px 9px;font-size:11px;font-weight:700}.zalo-community-role.role-claimer{color:var(--primary-deep);background:#dbeafe}.zalo-community-role.role-seller{color:#1f2937;background:#e5e7eb}.zalo-community-history-code{color:#374151;margin:6px 0 0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600}.zalo-community-history-meta{color:#4b5563;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.zalo-community-paid{color:#166534;background:#dcfce7;border-radius:4px;padding:2px 8px;font-size:11px;font-weight:700}.zalo-community-history-drv{color:#111827;border-top:1px solid #e5e7eb;margin:10px 0 0;padding-top:10px;font-size:14px;font-weight:500}.zalo-community-history-drv strong{color:var(--primary-deep);font-weight:800}.zalo-community-load-more{width:100%;color:var(--primary-deep);background:#fff;border:1px solid #9ca3af;border-radius:10px;margin-top:12px;padding:12px;font-size:14px;font-weight:600;display:block}.zalo-profile-page .zalo-empty{color:#4b5563}.zalo-signout{width:calc(100% - 32px);margin:8px 16px 24px;display:block}.room-chat-deal-banner{background:#fff8e6;border-bottom:1px solid #f0e0b0;padding:10px 14px;font-size:13px;line-height:1.4}.customer-deal-waiting{background:linear-gradient(#eef6ff 0%,#f7fbff 100%);border-bottom:1px solid #d6e7fb;align-items:flex-start;gap:12px;padding:12px 14px;display:flex}.customer-deal-waiting--dispatch{background:linear-gradient(#fff8eb 0%,#fffdf8 100%);border-bottom-color:#f0e0b0}.customer-deal-waiting--dispatch.customer-deal-waiting--ready{background:linear-gradient(#ecfdf5 0%,#f7fefb 100%);border-bottom-color:#a7f3d0}.customer-deal-waiting-visual{flex:0 0 44px;width:44px;height:44px;margin-top:2px;position:relative}.customer-deal-waiting-ring{border:2px solid #0068ff59;border-radius:50%;animation:1.8s ease-out infinite customer-deal-wait-ping;position:absolute;inset:0}.customer-deal-waiting--dispatch .customer-deal-waiting-ring{border-color:#d9770659}.customer-deal-waiting-ring--delay{animation-delay:.9s}.customer-deal-waiting-core{color:#fff;background:#0068ff;border-radius:50%;place-items:center;font-size:11px;font-weight:800;display:grid;position:absolute;inset:10px;box-shadow:0 4px 12px #0068ff47}.customer-deal-waiting-core.is-dispatch{background:#d97706;box-shadow:0 4px 12px #d9770647}.customer-deal-waiting-core.is-dispatch.is-ready{background:#059669;font-size:16px;box-shadow:0 4px 12px #05966947}.customer-deal-waiting-phone{color:#0369a1;font-weight:800;text-decoration:none}.customer-deal-waiting-phone:hover{text-decoration:underline}.customer-deal-waiting-car{background:#fff;border-radius:3px;width:14px;height:10px;animation:1.2s ease-in-out infinite customer-deal-wait-bob;position:relative}.customer-deal-waiting-car:before,.customer-deal-waiting-car:after{content:"";background:#c7dbff;border-radius:50%;width:4px;height:4px;position:absolute;bottom:-3px}.customer-deal-waiting-car:before{left:1px}.customer-deal-waiting-car:after{right:1px}.customer-deal-waiting-copy{flex:1;min-width:0}.customer-deal-waiting-title{color:#0b3b8c;align-items:center;gap:4px;margin:0 0 4px;font-size:14px;font-weight:750;line-height:1.3;display:flex}.customer-deal-waiting--dispatch .customer-deal-waiting-title{color:#92400e}.customer-deal-waiting-text{color:#48617f;margin:0;font-size:13px;line-height:1.45}.customer-deal-waiting--dispatch .customer-deal-waiting-text{color:#8a6a3d}.customer-deal-waiting-dots{gap:3px;margin-left:2px;display:inline-flex}.customer-deal-waiting-dots i{opacity:.35;background:currentColor;border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite customer-deal-wait-dot}.customer-deal-waiting-dots i:nth-child(2){animation-delay:.2s}.customer-deal-waiting-dots i:nth-child(3){animation-delay:.4s}@keyframes customer-deal-wait-ping{0%{opacity:.85;transform:scale(.72)}to{opacity:0;transform:scale(1.35)}}@keyframes customer-deal-wait-bob{0%,to{transform:translate(-1px)}50%{transform:translate(2px)}}@keyframes customer-deal-wait-dot{0%,80%,to{opacity:.28;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.customer-deal-waiting-ring,.customer-deal-waiting-car,.customer-deal-waiting-dots i{animation:none}.customer-deal-waiting-ring--delay{opacity:.35}}.room-chat-deal-header{align-items:center;gap:8px}.room-chat-deal-header .room-chat-title-wrap{flex:1;min-width:0}.room-chat-deal-header-phone{color:#fffffff2;font:inherit;letter-spacing:.02em;font-variant-numeric:tabular-nums;background:0 0;border:none;margin-top:2px;padding:0;font-size:13px;font-weight:600;line-height:1.3;text-decoration:none;display:inline-block}.room-chat-deal-header-phone:active{opacity:.85}.room-chat-support-hotline{background:#fff7ed;border-bottom:1px solid #fed7aa;justify-content:center;align-items:center;gap:8px;padding:6px 12px;font-size:12px;line-height:1.25;display:flex}.room-chat-support-hotline-label{color:#9a3412;font-weight:650}.room-chat-support-hotline-phone{color:#c2410c;font:inherit;letter-spacing:.02em;font-variant-numeric:tabular-nums;background:0 0;border:none;padding:0;font-size:13px;font-weight:750;text-decoration:none;display:inline-block}.room-chat-support-hotline-phone:active{opacity:.85}.deal-driver-info-sheet{max-height:min(88vh,640px);overflow:auto}.deal-driver-info-hint{margin:0 16px 12px;font-size:13px;line-height:1.4}.deal-driver-info-form{gap:10px;padding:0 16px 8px;display:grid}.deal-driver-info-field{color:#334155;gap:4px;font-size:13px;font-weight:650;display:grid}.deal-driver-info-field input,.deal-driver-info-field select{min-height:42px;font:inherit;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px 12px;font-weight:500}.deal-driver-info-field input:disabled{color:#64748b;background:#f1f5f9}.deal-driver-info-error{margin:4px 16px 0;font-size:13px}.deal-driver-info-actions{gap:10px;padding:12px 16px 20px;display:flex}.deal-driver-info-actions .btn-outline,.deal-driver-info-actions .btn-primary{flex:1;min-height:44px}.zalo-deal-peer-line{font-weight:600}.zalo-deal-peer-sep{color:#999;font-weight:500}.zalo-deal-peer-phone{color:#666;font-weight:500}.room-chat-deal-report{color:#555;font:inherit;cursor:pointer;background:#fff;border:1px solid #e0e0e0;border-radius:8px;flex-shrink:0;padding:6px 10px;font-size:12px;font-weight:600}.room-chat-deal-meta{color:#444;background:#f5f7fb;border-bottom:1px solid #e8ecf4;flex-wrap:wrap;align-items:center;gap:6px;padding:8px 14px;font-size:12px;display:flex}.operator-deal-care-actions{background:#f0f7ff;border-bottom:1px solid #cfe0f5;flex-wrap:wrap;gap:8px;padding:10px 14px;display:flex}.operator-deal-care-actions .room-chat-action-btn{min-height:36px;padding:8px 16px;font-weight:700}.operator-room-board a.room-chat-bubble{color:inherit;cursor:pointer;text-decoration:none;display:block}.room-chat-deal-meta-sep{color:#bbb}.room-chat-deal-status{color:var(--primary);font-weight:700}.room-chat-deal-meta-code{color:#888;margin-left:auto;font-size:11px}.room-chat-deal-mediation{color:#92400e;background:#fffbeb;border-bottom:1px solid #fde68a;padding:8px 14px;font-size:13px}.room-chat-deal-mediation.is-cancel-request{color:#9f1239;background:#fff1f2;border-bottom-color:#fecdd3}.room-chat-deal-cancel-row{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.room-chat-deal-cancel-text{flex:140px;min-width:0;font-size:13px;line-height:1.35}.room-chat-deal-cancel-row .room-chat-action-btn{white-space:nowrap;flex:none}.room-chat-deal-customer{background:#ecfdf5;border-bottom:1px solid #bbf7d0;flex-wrap:wrap;align-items:center;gap:8px;padding:10px 14px;display:flex}.room-chat-deal-customer-label{color:#166534;font-size:12px;font-weight:700}.room-chat-deal-customer-call{color:#fff;background:#16a34a;border-radius:999px;align-items:center;gap:8px;margin-left:auto;padding:6px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.room-chat-deal-customer-call:active{opacity:.9}.room-chat-deal-customer-number{font-variant-numeric:tabular-nums;letter-spacing:.02em}.room-chat-deal-customer-action{text-transform:uppercase;border-left:1px solid #ffffff73;padding-left:8px;font-size:12px;font-weight:800}.room-chat-deal-hint{color:#333;background:#eef5ff;border-radius:8px;margin:0 12px 6px;padding:8px 10px;font-size:12px;line-height:1.45}.room-chat-deal-hint.room-chat-deal-closed{color:#475569;background:#f1f5f9;border:1px solid #e2e8f0}.room-chat-composer.is-closed{opacity:.55;pointer-events:none}.room-chat-deal-ping{color:inherit;border-top:1px solid #00000014;margin:10px 0 0;padding-top:10px;font-size:14px;line-height:1.45}.room-chat-listing-quote{border-left:3px solid #94a3b8;padding-left:10px}.room-chat-listing-quote.mine{border-left-color:#3b82f6}.room-chat-quote-label{letter-spacing:.02em;text-transform:uppercase;color:#64748b;margin:0 0 4px;font-size:11px;font-weight:600}.room-chat-listing-phone{flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin:6px 0 0;font-size:14px;font-weight:700;display:flex}.room-chat-listing-phone-label{color:#64748b;font-size:12px;font-weight:600}.room-chat-listing-phone a{color:var(--primary);text-decoration:none}.room-listing-card-copy{margin:0 0 6px}.room-listing-card-copy .room-chat-text{margin:0}.room-listing-card-copy .room-listing-card-note{color:#475569;margin-top:4px}.room-listing-card-copy .room-listing-card-note .room-chat-text{color:inherit}.room-chat-bubble.mine .room-listing-card-copy .room-listing-card-note{color:#0f172ab8}.zalo-deal-list-row{border-bottom:1px solid #eee;align-items:stretch;display:flex}.zalo-deals-page{background:var(--bg);color:var(--text);min-height:100%;padding-bottom:16px}.zalo-deal-date-filter{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--elev-1);margin:0 16px 10px;padding:10px 12px}.zalo-deal-date-label{color:#374151;margin:0 0 6px;font-size:12px;font-weight:700;display:block}.zalo-deal-date-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.zalo-deal-date-input{color:#111827;background:#f9fafb;border:1px solid #d1d5db;border-radius:10px;flex:1;min-width:9.5rem;height:40px;padding:0 10px;font-size:15px;font-weight:600}.zalo-deal-date-input:focus{border-color:var(--primary);background:#fff;outline:none}.zalo-deal-date-chip{color:#374151;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #d1d5db;border-radius:10px;height:40px;padding:0 12px;font-size:13px;font-weight:700}.zalo-deal-date-chip.active{border-color:var(--primary);color:var(--primary);background:#e8f1ff}.zalo-deal-date-hint{color:#6b7280;margin:8px 0 0;font-size:12px;line-height:1.35}.zalo-deals-error{margin:0 16px 8px}.zalo-toast{color:#fff;background:#111827;border-radius:8px;margin:0 16px 8px;padding:8px 12px;font-size:13px}.zalo-deal-tabs{background:0 0;border-bottom:none;gap:8px;padding:12px 16px;display:flex}.zalo-deal-tab{color:#4b5563;font:inherit;cursor:pointer;background:#fff;border:none;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:6px;padding:10px 12px;font-size:14px;font-weight:600;display:inline-flex;box-shadow:0 1px 2px #0000000f}.zalo-deal-tab.active{background:var(--primary);color:var(--on-primary);box-shadow:var(--elev-1)}.zalo-deal-tab-count{background:color-mix(in srgb, var(--on-primary) 22%, transparent);border-radius:999px;min-width:20px;padding:1px 6px;font-size:12px;font-weight:700;line-height:1.4}.zalo-deal-tab:not(.active) .zalo-deal-tab-count{color:#374151;background:#e5e7eb}.zalo-deal-list{flex-direction:column;gap:8px;margin:0;padding:8px 16px 16px;list-style:none;display:flex}.zalo-community-history .zalo-deal-tabs{padding:0 0 12px}.zalo-community-history .zalo-deal-list{padding:0}.zalo-community-history .zalo-community-error{margin:0 0 12px}.zalo-deal-card{border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);box-shadow:var(--elev-1);overflow:hidden}.zalo-deal-card-link{color:inherit;padding:12px 14px 8px;text-decoration:none;display:block}button.zalo-deal-card-link{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0}.zalo-deal-card-link:active{background:#f9fafb}.zalo-deal-card-body{grid-template-columns:minmax(0,1fr) minmax(6.75rem,auto);align-items:start;gap:8px 16px;display:grid}.zalo-deal-card-main{flex-direction:column;gap:8px;min-width:0;display:flex}.zalo-deal-card-aside{text-align:right;flex-direction:column;align-items:flex-end;gap:8px;min-width:0;display:flex}.zalo-deal-card-route{color:#111827;margin:0;font-size:15px;font-weight:800;line-height:1.3}.zalo-deal-card-time{color:#9ca3af;white-space:nowrap;font-size:11px;font-weight:600;line-height:1.2}.zalo-deal-card-tags{flex-flow:column;align-items:flex-end;gap:4px;display:flex}.zalo-deal-status{border-radius:999px;justify-content:center;align-items:center;padding:2px 8px;font-size:10px;font-weight:700;line-height:1.3;display:inline-flex}.zalo-deal-status.status-completed{color:#166534;background:#dcfce7}.zalo-deal-status.status-assigned,.zalo-deal-status.status-in-progress{color:var(--primary-deep);background:#dbeafe}.zalo-deal-status.status-open{color:#854d0e;background:#fef9c3}.zalo-deal-status.status-cancelled,.zalo-deal-status.status-expired{color:#6b7280;background:#f3f4f6}.zalo-deal-card-tab-tag{color:#4b5563;background:#f3f4f6;border-radius:999px;padding:2px 8px;font-size:10px;font-weight:700}.zalo-deal-card-peer{align-items:center;gap:8px;min-width:0;display:flex}.zalo-deal-card-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:700;display:inline-flex}.zalo-deal-card-peer-line{flex-wrap:wrap;align-items:center;gap:4px;min-width:0;font-size:12px;line-height:1.35;display:flex}.zalo-deal-card-peer-line strong{color:#111827;font-weight:700}.zalo-deal-card-peer-sep{color:#d1d5db}.zalo-deal-card-role{color:#374151;background:#e5e7eb;border-radius:999px;padding:1px 6px;font-size:9px;font-weight:700}.zalo-deal-card-phone{color:var(--primary);font-size:12px;font-weight:600}.zalo-deal-card-preview{color:#4b5563;-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:0;font-size:12px;line-height:1.45;display:-webkit-box;overflow:hidden}.zalo-deal-card-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;padding:0 14px 12px;display:flex}.zalo-deal-card-meta.has-actions{padding-bottom:10px}.zalo-deal-card-pricing{flex-wrap:wrap;flex:auto;justify-content:flex-start;align-items:center;gap:6px;min-width:0;display:flex}.zalo-deal-card-inline-actions{flex-wrap:nowrap;flex:none;align-items:center;gap:6px;margin-left:auto;display:inline-flex}.zalo-deal-card-inline-action{appearance:none;background:linear-gradient(135deg, #2f86ff, var(--primary-deep));color:#fff;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;margin:0;padding:5px 10px;font-size:12px;font-weight:700;line-height:1.2}.zalo-deal-card-inline-action.is-ghost{color:var(--primary-deep);background:#eff6ff}.zalo-deal-card-inline-action:active:not(:disabled){opacity:.88}.zalo-deal-card-inline-action:disabled{opacity:.55;cursor:not-allowed}.zalo-deal-card-pricing-sep{color:#d1d5db;font-weight:600;display:inline}.zalo-deal-card-price{color:#111827;font-size:14px;font-weight:800;line-height:1.25}.zalo-deal-card-fee{color:var(--accent);font-size:13px;font-weight:700;line-height:1.25}.zalo-deal-card-paid{font-size:12px;font-weight:700;line-height:1.25}.zalo-deal-card-paid.is-paid{color:#166534}.zalo-deal-card-paid.is-unpaid{color:#92400e}.zalo-deal-card-customer-call{color:#fff;background:#16a34a;border-radius:8px;justify-content:center;align-items:center;gap:8px;margin:0 12px 8px;padding:7px 10px;font-size:13px;font-weight:700;text-decoration:none;display:flex}.zalo-deal-card-customer-call:active{opacity:.9}.zalo-deal-card-customer-number{font-variant-numeric:tabular-nums;letter-spacing:.02em}.zalo-deal-card-customer-action{text-transform:uppercase;border-left:1px solid #ffffff73;padding-left:8px;font-size:11px;font-weight:800}.zalo-deal-card-action{background:var(--primary);color:#fff;width:100%;font:inherit;cursor:pointer;border:none;border-top:1px solid #e5e7eb;padding:8px 12px;font-size:13px;font-weight:700;display:block}.zalo-deal-card-action:active:not(:disabled){opacity:.9}.zalo-deal-card-action:disabled:not(.is-done){opacity:.65;cursor:wait}.zalo-deal-card-action.is-done{color:#166534;cursor:default;background:#f0fdf4}.zalo-deal-list-row .zalo-room-item{border-bottom:none;flex:1;min-width:0}.zalo-deal-list-complete{background:var(--primary);color:#fff;max-width:92px;font:inherit;text-align:center;cursor:pointer;border:none;border-radius:10px;flex-shrink:0;align-self:center;margin-right:10px;padding:8px 10px;font-size:11px;font-weight:600;line-height:1.25}.zalo-deal-list-complete:active:not(:disabled){opacity:.88}.zalo-deal-list-complete:disabled:not(.is-done){opacity:.65;cursor:wait}.zalo-deal-list-complete.is-done{color:#2e7d32;cursor:default;background:#e8f5e9}.room-chat-deal-banner .muted{color:#666}.room-chat-text-phones{white-space:pre-wrap;word-break:break-word;line-height:1.45;display:block}.room-chat-phone-message{margin:0}.room-chat-phone-btn{background:var(--primary);color:#fff;min-height:32px;font:inherit;white-space:nowrap;box-shadow:0 1px 3px color-mix(in srgb, var(--primary) 35%, transparent);border:none;border-radius:999px;justify-content:center;align-items:center;gap:6px;padding:6px 12px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.room-chat-phone-btn--card{color:#14532d;width:100%;min-width:0;min-height:36px;box-shadow:none;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:999px;flex-direction:row;justify-content:flex-start;gap:8px;padding:4px}.room-chat-phone-btn--inline{border-radius:999px;padding:8px 14px}.room-chat-phone-btn-icon{background:#fff3;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;line-height:1;display:inline-flex}.room-chat-phone-btn--card .room-chat-phone-btn-icon{color:#fff;background:#16a34a}.room-chat-phone-btn-number{letter-spacing:.02em;font-variant-numeric:tabular-nums;text-align:left;flex:1;min-width:0;font-size:14px;font-weight:700}.room-chat-phone-btn-action{color:#fff;letter-spacing:.04em;text-transform:uppercase;opacity:1;background:#16a34a;border-radius:999px;flex-shrink:0;padding:5px 11px;font-size:11px;font-weight:800}.room-chat-phone-btn:active{opacity:.88;transform:scale(.98)}.room-chat-phone-btn.inline{vertical-align:middle;min-height:28px;padding:4px 10px;font-size:13px}.room-chat-bubble.mine .room-chat-phone-btn{color:var(--primary);background:#fff;box-shadow:0 1px 4px #00000014}.room-chat-bubble.mine .room-chat-phone-btn--card{color:var(--primary-deep);border:1px solid color-mix(in srgb, var(--primary) 16%, #fff);background:#fff;box-shadow:0 1px 2px #0f376e14}.room-chat-bubble.mine .room-chat-phone-btn--card .room-chat-phone-btn-icon{color:#16a34a;background:#ecfdf5}.room-chat-bubble.mine .room-chat-phone-btn-action{color:#fff;opacity:1;background:#16a34a}.room-chat-bubble:has(.room-chat-phone-message) .room-chat-phone-message.room-chat-text{margin-bottom:0}.room-chat-fee-bar{border-bottom:none;padding:4px 0}.room-chat-compose-meta .room-chat-fee-bar{padding-bottom:4px}.room-chat-menu-desc{border-top:1px solid #eee;margin-top:8px;padding:10px 0 0}.room-chat-menu-desc span{color:#888;margin-bottom:4px;font-size:12px;display:block}.room-chat-menu-desc p{color:#333;margin:0;font-size:14px;line-height:1.45}.zalo-transfer-cta{background:#1a1a1a;margin-bottom:8px}.drv-transfer-sheet{-webkit-overflow-scrolling:touch;max-height:min(92dvh,100dvh - 24px);padding-bottom:max(16px, env(safe-area-inset-bottom,0px));overflow-y:auto}.drv-transfer-sheet .room-chat-sheet-title{display:none}.drv-xfer-hero{color:#fff;background:linear-gradient(135deg,#1d4ed8 0%,#2563eb 45%,#0ea5e9 100%);border-radius:16px;align-items:flex-start;gap:12px;margin:4px 0 16px;padding:14px;display:flex;box-shadow:0 10px 24px #2563eb47}.drv-xfer-hero-icon{color:#fff;background:#ffffff2e;border-radius:14px;flex-shrink:0;place-items:center;width:44px;height:44px;display:grid}.drv-xfer-hero-text{min-width:0}.drv-xfer-title{letter-spacing:-.02em;color:#fff;margin:0;font-size:20px;font-weight:800}.drv-xfer-sub{color:#ffffffe6;margin:4px 0 0;font-size:12px;line-height:1.4}.drv-transfer-form{flex-direction:column;gap:12px;display:flex}.drv-xfer-field{flex-direction:column;gap:6px;margin:0;display:flex}.drv-xfer-field-label{color:#334155;align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.drv-xfer-field-ico{color:#2563eb;display:inline-flex}.drv-xfer-field input{box-sizing:border-box;width:100%;font:inherit;color:#0f172a;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;padding:13px 14px;font-size:15px;transition:border-color .15s,box-shadow .15s,background .15s}.drv-xfer-field input:focus{background:#fff;border-color:#3b82f6;outline:none;box-shadow:0 0 0 3px #3b82f62e}.drv-xfer-status{color:#64748b;margin:-4px 0 0;font-size:12px}.drv-xfer-recipient{background:linear-gradient(145deg,#f0fdf4 0%,#dcfce7 100%);border:1px solid #bbf7d0;border-radius:14px;align-items:flex-start;gap:10px;padding:12px;display:flex}.drv-xfer-recipient.is-bad{background:linear-gradient(145deg,#fef2f2 0%,#fee2e2 100%);border-color:#fecaca}.drv-xfer-recipient-avatar{color:#fff;background:linear-gradient(135deg,#16a34a,#15803d);border-radius:50%;flex-shrink:0;place-items:center;width:40px;height:40px;font-size:15px;font-weight:800;display:grid}.drv-xfer-recipient.is-bad .drv-xfer-recipient-avatar{background:linear-gradient(135deg,#ef4444,#b91c1c)}.drv-xfer-recipient-text{flex-direction:column;gap:2px;min-width:0;display:flex}.drv-xfer-recipient-text strong{color:#14532d;font-size:15px}.drv-xfer-recipient.is-bad .drv-xfer-recipient-text strong{color:#7f1d1d}.drv-xfer-recipient-text span{color:#166534;font-size:12px}.drv-xfer-recipient.is-bad .drv-xfer-recipient-text span{color:#991b1b}.drv-xfer-quote{background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 100%);border:1px solid #93c5fd;border-radius:14px;padding:12px 14px}.drv-xfer-quote p{color:#1e3a8a;margin:0;font-size:14px}.drv-xfer-quote strong{color:#1d4ed8;font-weight:800}.drv-xfer-quote-sub{color:#3b82f6!important;margin-top:4px!important;font-size:12px!important}.drv-xfer-actions{flex-direction:column;gap:8px;margin-top:4px;display:flex}.drv-xfer-submit{color:#fff;width:100%;font:inherit;cursor:pointer;background:linear-gradient(135deg,#2563eb 0%,#1d4ed8 100%);border:none;border-radius:14px;margin:0;padding:14px 16px;font-size:15px;font-weight:800;box-shadow:0 8px 18px #2563eb47}.drv-xfer-submit:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.drv-xfer-submit:active:not(:disabled){transform:scale(.98)}.drv-xfer-cancel{color:#475569;width:100%;font:inherit;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;margin:0;padding:12px 16px;font-size:14px;font-weight:700}.drv-xfer-cancel:active{background:#f8fafc}.drv-transfer-sheet .room-chat-join-btn,.zalo-profile-sheet .room-chat-join-btn{margin-bottom:8px}.drv-transfer-recipient{background:#f5f9f0;border-radius:10px;flex-direction:column;gap:4px;margin-bottom:14px;padding:12px 14px;font-size:14px;display:flex}.drv-transfer-recipient strong{color:#1a1a1a;font-size:16px}.drv-transfer-recipient span{color:#666;font-size:13px}.drv-transfer-receipt{background:#f9f7f2;border-radius:12px;padding:8px 4px 4px}.drv-transfer-receipt-head{align-items:flex-start;gap:14px;margin-bottom:20px;display:flex}.drv-transfer-receipt-icon{color:#fff;background:#2e9e4b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-size:22px;font-weight:700;display:flex}.drv-transfer-receipt-brand{letter-spacing:.06em;color:#c41e3a;margin:0 0 4px;font-size:11px;font-weight:700}.drv-transfer-receipt-title{color:#111;margin:0;font-size:22px;font-weight:700}.drv-transfer-receipt-amount{color:#111;margin:8px 0 0;font-size:28px;font-weight:700}.drv-transfer-receipt-drv{color:#666;margin:4px 0 0;font-size:14px}.drv-transfer-receipt-details{flex-direction:column;gap:14px;margin:0 0 20px;display:flex}.drv-transfer-receipt-details div{flex-direction:column;gap:4px;display:flex}.drv-transfer-receipt-details dt{color:#888;margin:0;font-size:12px}.drv-transfer-receipt-details dd{color:#111;word-break:break-word;margin:0;font-size:15px;font-weight:600}.drv-transfer-receipt-done{color:#fff;cursor:pointer;background:#111;border:none;border-radius:999px;width:100%;padding:14px 20px;font-size:16px;font-weight:600}.drv-transfer-receipt-done:active{opacity:.9}.member-profile{--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);--cp-muted:var(--muted);--cp-line:var(--border);--cp-surface:var(--surface);background:radial-gradient(120% 60% at 50% -10%, color-mix(in srgb, var(--primary) 12%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%)}.member-profile-topbar{background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none;box-shadow:0 8px 20px #0050c829}.member-profile-body{flex-direction:column;gap:12px;padding:12px 14px 28px;display:flex}.member-profile-hero{background:var(--cp-surface);border:1px solid #fffc;border-radius:18px;padding:16px;position:relative;overflow:hidden;box-shadow:0 10px 28px #0f376e12}.member-profile-hero-bg{background:linear-gradient(135deg, color-mix(in srgb, var(--primary) 12%, transparent), #0ea5e914 55%, transparent), radial-gradient(80% 120% at 100% 0%, color-mix(in srgb, var(--primary) 14%, transparent), transparent 60%);pointer-events:none;height:88px;position:absolute;inset:0 0 auto}.member-profile-identity{align-items:center;gap:14px;margin-bottom:16px;display:flex;position:relative}.member-profile-avatar{color:#fff;background:linear-gradient(145deg, #3b8cff, var(--cp-blue-deep));width:64px;height:64px;box-shadow:0 8px 18px color-mix(in srgb, var(--primary) 28%, transparent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:26px;font-weight:750;display:flex}.member-profile-identity-text{flex:1;min-width:0}.member-profile-name{letter-spacing:-.02em;color:var(--cp-ink);flex-wrap:wrap;align-items:baseline;gap:6px;margin:0 0 2px;font-size:20px;font-weight:750;line-height:1.2;display:flex}.member-profile-phone{color:var(--cp-muted);margin:0;font-size:13px}.member-profile-alias{color:var(--cp-blue-deep);background:color-mix(in srgb, var(--primary) 10%, transparent);border-radius:8px;margin-top:6px;padding:3px 8px;font-size:11px;font-weight:650;display:inline-block}.member-profile-tier-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:6px;display:flex}.member-profile-tier-progress{color:var(--cp-muted);margin:6px 0 0;font-size:12px}.member-profile-tier-track{width:100%;max-width:280px;margin-top:8px}.member-profile-tier-track-note{color:var(--cp-muted,#64748b);margin:0 0 4px;font-size:11px;font-weight:650}.member-profile-tier-track-head{color:var(--cp-muted,#64748b);justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:5px;font-size:11px;font-weight:650;display:flex}.member-profile-tier-track-head span:last-child{color:var(--cp-ink,#0f172a);font-variant-numeric:tabular-nums}.member-profile-tier-bar{background:color-mix(in srgb, var(--primary) 12%, #e8eef6);border-radius:999px;height:8px;overflow:hidden}.member-profile-tier-bar-fill{border-radius:inherit;background:linear-gradient(90deg, #5aa3ff, var(--cp-blue-deep,var(--primary-deep)));min-width:0;height:100%;transition:width .35s}.member-profile-tier-track-foot{color:var(--cp-muted,#64748b);margin:5px 0 0;font-size:11px;font-weight:600}.driver-tier-badge{vertical-align:middle;color:#374151;background:#f3f4f6;border-radius:999px;align-items:center;gap:4px;padding:2px 8px 2px 4px;font-size:11px;font-weight:650;line-height:1.2;display:inline-flex}.driver-tier-badge--sm{padding:1px 6px 1px 2px;font-size:10px}.driver-tier-badge--sm svg{width:14px;height:14px}.driver-tier-badge--dong{color:#7a4a22;background:#f5ebe0}.driver-tier-badge--bac{color:#4a5a6a;background:#e8eef3}.driver-tier-badge--vang{color:#8a6a00;background:#fff4d6}.driver-tier-badge--kim_cuong{color:#1d5fad;background:#e5f2ff}.driver-tier-badge--giam_doc{color:#5b3a29;background:#efe6dc}.zalo-community-avatar{position:relative}.zalo-community-tier-dot{background:#fff;border-radius:999px;line-height:0;position:absolute;bottom:-4px;right:-4px;box-shadow:0 0 0 1px #0000000f}.zalo-community-tier-dot .driver-tier-badge{background:0 0;padding:0}.zalo-community-name .driver-tier-badge{margin-left:4px}.member-profile-status{color:#b45309;margin-top:6px;margin-left:6px;font-size:11px;font-weight:650;display:inline-block}.member-profile-wallet{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid;position:relative}.member-profile-wallet-cell{border:1px solid var(--cp-line);background:linear-gradient(#f8fbff 0%,#f1f6fc 100%);border-radius:14px;padding:12px 12px 11px}.member-profile-wallet-cell--real{background:linear-gradient(145deg,#eff6ff 0%,#dbeafe 55%,#e0f2fe 100%);border-color:#93c5fd;box-shadow:inset 0 1px #ffffffa6}.member-profile-wallet-cell--real .member-profile-wallet-label{color:#1d4ed8}.member-profile-wallet-cell--real .member-profile-wallet-value{color:#1e3a8a}.member-profile-wallet-cell--real .member-profile-wallet-sub{color:#3b82f6}.member-profile-wallet-cell--promo{background:linear-gradient(145deg,#fff7ed 0%,#ffedd5 55%,#fef3c7 100%);border-color:#fdba74;box-shadow:inset 0 1px #ffffffa6}.member-profile-wallet-cell--promo .member-profile-wallet-label{color:#c2410c}.member-profile-wallet-cell--promo .member-profile-wallet-value{color:#9a3412}.member-profile-wallet-cell--promo .member-profile-wallet-sub{color:#ea580c}.member-profile-wallet-cell--real .member-profile-wallet-value.is-debt{color:#b91c1c}.member-profile-wallet-label{letter-spacing:.02em;text-transform:uppercase;color:var(--cp-muted);margin-bottom:4px;font-size:11px;font-weight:650;display:block}.member-profile-wallet-value{letter-spacing:-.02em;color:var(--cp-ink);word-break:break-word;font-size:15px;font-weight:780;line-height:1.25;display:block}.member-profile-wallet-sub{color:var(--cp-muted);margin-top:2px;font-size:11px;display:block}.member-profile-actions{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:8px;margin-top:4px;display:grid;position:relative}.member-profile-btn{font:inherit;cursor:pointer;border:none;border-radius:12px;padding:12px 10px;font-size:14px;font-weight:700;transition:transform .15s,opacity .15s}.member-profile-btn:active{opacity:.92;transform:scale(.98)}.member-profile-btn-transfer{color:#fff;background:#111827}.member-profile-btn-topup{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep));color:#fff}.member-profile-btn-outline{color:#111827;box-shadow:none;background:#fff;border:1px solid #11182729}.wallet-ledger-hint,.fleet-ledger-hint{margin:0 0 10px;font-size:12px;line-height:1.4}.wallet-ledger-list,.fleet-ledger-list{gap:8px}.wallet-ledger-item,.fleet-ledger-item{box-shadow:none;border:none;border-left:4px solid #0000;border-radius:10px;padding:10px 12px}.wallet-ledger-item.is-credit,.fleet-ledger-item.is-credit{background:#f0fdf4;border-left-color:#16a34a}.wallet-ledger-item.is-debit,.fleet-ledger-item.is-debit{background:#fef2f2;border-left-color:#dc2626}.wallet-ledger-item .zalo-ledger-main,.fleet-ledger-item .zalo-ledger-main{align-items:center;gap:10px;margin-bottom:0}.wallet-ledger-item .zalo-ledger-title,.fleet-ledger-item .zalo-ledger-title{color:#1f2937;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.wallet-ledger-item .zalo-ledger-amount,.fleet-ledger-item .zalo-ledger-amount{font-size:14px}.wallet-ledger-item .zalo-ledger-amount.credit,.fleet-ledger-item .zalo-ledger-amount.credit{color:#15803d}.wallet-ledger-item .zalo-ledger-amount.debit,.fleet-ledger-item .zalo-ledger-amount.debit{color:#b91c1c}.wallet-ledger-item .zalo-ledger-amount-vnd,.fleet-ledger-item .zalo-ledger-amount-vnd{opacity:.9;font-size:11px;font-weight:600}.wallet-ledger-meta,.fleet-ledger-meta{color:#6b7280;justify-content:space-between;align-items:center;gap:8px;margin-top:6px;font-size:11px;display:flex}.wallet-ledger-meta time,.fleet-ledger-meta time{flex-shrink:0}.wallet-ledger-meta span,.fleet-ledger-meta span{text-align:right;min-width:0}.member-profile-notice{margin:10px 0 0;position:relative}.member-profile-menu{background:var(--cp-surface);border:1px solid #ffffffe6;border-radius:18px;overflow:hidden;box-shadow:0 8px 22px #0f376e0d}.member-profile-menu-item{text-align:left;width:100%;color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #f1f5f9;align-items:center;gap:12px;padding:14px;text-decoration:none;transition:background .15s;display:flex}.member-profile-menu-item:last-child{border-bottom:none}.member-profile-menu-item:active{background:#f8fbff}.member-profile-menu-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:42px;height:42px;display:inline-flex}.member-profile-menu-icon-rooms{color:var(--cp-blue);background:color-mix(in srgb, var(--primary) 10%, transparent)}.member-profile-menu-icon-offers{color:#0f766e;background:#0f766e1a}.member-profile-menu-icon-ref{color:#b45309;background:#b453091a}.member-profile-menu-icon-lang{color:#0369a1;background:#0369a11a}.profile-locale-options{flex-direction:column;gap:8px;padding:4px 0 12px;display:flex}.profile-locale-option{border:1px solid color-mix(in srgb, var(--cp-ink) 10%, transparent);text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:#fff;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.profile-locale-option.is-selected{border-color:color-mix(in srgb, var(--primary) 45%, transparent);background:color-mix(in srgb, var(--primary) 6%, #fff)}.profile-locale-option-main{flex-direction:column;gap:2px;min-width:0;display:flex}.profile-locale-option-main strong{color:var(--cp-ink);font-size:15px;font-weight:720}.profile-locale-option-main span{color:var(--cp-muted);font-size:12px}.profile-locale-check{background:var(--primary);color:#fff;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:14px;font-weight:700;display:inline-flex}.member-profile-menu-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.member-profile-menu-text strong{color:var(--cp-ink);font-size:15px;font-weight:720}.member-profile-menu-text span:last-child{color:var(--cp-muted);font-size:12px;line-height:1.35}.member-profile-menu-chevron{color:#cbd5e1;flex-shrink:0;font-size:22px;font-weight:300;line-height:1}.member-profile-referral-note{border:1px solid var(--cp-line);color:var(--cp-muted);text-align:center;background:#ffffffb8;border-radius:12px;margin:0 0 14px;padding:10px 14px;font-size:13px}.member-profile-referral-note strong{color:var(--cp-ink);font-weight:720}.referral-invitees{border-top:1px solid var(--cp-line,#e2e8f0);margin-top:16px;padding-top:14px}.referral-invitees-head{margin-bottom:6px}.referral-invitees-title{color:var(--cp-ink,#0f172a);margin:0;font-size:14px;font-weight:720}.referral-invitees-summary{margin:4px 0 0;font-size:12px}.referral-invitees-config{margin:0 0 10px;font-size:12px;line-height:1.4}.referral-invitees-config strong{color:var(--cp-ink,#0f172a);font-weight:650}.referral-invitees-empty{margin:8px 0 0;font-size:13px}.referral-invitees-list{flex-direction:column;gap:10px;max-height:280px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.referral-invitees-item{border-bottom:1px solid var(--cp-line,#e2e8f0);justify-content:space-between;align-items:flex-start;gap:10px;padding:8px 0;display:flex}.referral-invitees-item:last-child{border-bottom:none}.referral-invitees-main{flex:1;min-width:0}.referral-invitees-name{color:var(--cp-ink,#0f172a);margin:0;font-size:14px;font-weight:650}.referral-invitees-meta{margin:2px 0 0;font-size:12px;line-height:1.35}.referral-invitees-reward{text-align:right;flex-direction:column;flex-shrink:0;align-items:flex-end;gap:2px;max-width:42%;font-size:12px;display:flex}.referral-invitees-reward strong{color:var(--cp-ink,#0f172a);font-size:13px;font-weight:720}.referral-invitees-badge{font-size:11px;font-weight:650}.referral-invitees-badge.paid{color:#15803d}.referral-invitees-badge.pending{color:#a16207}.member-profile-signout{color:#dc2626;width:100%;font:inherit;cursor:pointer;background:#ffffffd9;border:1px solid #fecaca;border-radius:14px;margin:2px 0 0;padding:13px 14px;font-size:14px;font-weight:650;transition:background .15s;display:block}.member-profile-signout:active{background:#fef2f2}@keyframes member-profile-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.member-profile-anim{animation:.42s both member-profile-rise}.member-profile-anim-delay{animation-delay:80ms}.member-profile-anim-delay2{animation-delay:.14s}@media (prefers-reduced-motion:reduce){.member-profile-anim,.member-profile-anim-delay,.member-profile-anim-delay2{animation:none}}.member-profile-wallet-single{grid-template-columns:1fr}.member-profile-wallet-cell-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:2px;display:flex}.member-profile-wallet-link{color:#1d4ed8;font-size:12px;font-weight:650;text-decoration:none}.member-agent-credit{border:1px solid var(--cp-line);background:linear-gradient(#f8fbff 0%,#f1f6fc 100%);border-radius:14px;margin-top:10px;padding:12px;position:relative}.member-agent-credit-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.fleet-profile-actions{grid-template-columns:1fr 1fr;margin-top:14px}.member-agent-wallet-actions{grid-template-columns:1fr 1fr;margin-top:12px}.member-agent-wallet-actions.has-pay{grid-template-columns:1fr 1fr 1fr}.member-agent-wallet-actions .member-profile-btn{text-align:center;box-sizing:border-box;width:100%;text-decoration:none}.member-agent-metrics{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.member-agent-metric{flex-direction:column;gap:2px;min-width:0;display:flex}.member-agent-metric span{color:var(--cp-muted);font-size:11px;font-weight:650}.member-agent-metric strong{color:var(--cp-ink);word-break:break-word;font-size:13px;font-weight:750}.member-agent-metric strong.is-debt{color:#dc2626}.member-agent-bar{margin-top:10px}.member-agent-bar-track{background:#e2e8f0;border-radius:999px;height:6px;overflow:hidden}.member-agent-bar-fill{border-radius:inherit;background:linear-gradient(90deg, #2f86ff, var(--primary-deep));height:100%}.member-agent-bar-fill.is-high{background:linear-gradient(90deg,#f59e0b,#dc2626)}.member-agent-bar>span{color:var(--cp-muted);margin-top:6px;font-size:11px;display:block}.member-room-page{--cp-blue:var(--primary);--cp-blue-deep:var(--primary-deep);--cp-ink:var(--text);--cp-muted:var(--muted);--cp-line:var(--border);background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 14%, transparent), transparent 55%), linear-gradient(180deg, var(--bg) 0%, var(--surface-2) 100%);color:var(--cp-ink);min-height:100%;padding-bottom:8px}.member-room-header{background:linear-gradient(180deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);border-bottom:none;box-shadow:0 8px 20px #0050c829}.member-room-page .zalo-room-search{border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff2e;border:1px solid #ffffff38;margin-top:12px;padding:10px 14px}.member-room-page .zalo-room-search-wrap{margin-top:0}.member-room-page .member-room-header{padding-top:10px;padding-bottom:12px}.member-room-page .zalo-room-search-wrap .zalo-room-search{margin-top:0}.member-room-page .zalo-room-search-icon{color:#ffffffeb;opacity:1;display:inline-flex}.member-room-page .zalo-section-label{letter-spacing:.04em;text-transform:uppercase;color:var(--cp-muted);margin:14px 14px 8px;padding:0;font-size:12px;font-weight:700}.member-room-page .zalo-discover-hint{color:var(--cp-muted);margin:0 14px 10px;padding:0;font-size:13px;line-height:1.4}.member-room-page .zalo-room-list{box-shadow:none;background:0 0;border:none;border-radius:0;flex-direction:column;gap:8px;margin:0 12px 12px;padding:0;list-style:none;display:flex;overflow:visible}.member-room-page .zalo-room-item{background:#fff;border:1px solid #ffffffe6;border-radius:16px;gap:12px;padding:13px 14px;transition:background .15s,transform .15s;box-shadow:0 6px 16px #0f376e0d}.member-room-page .zalo-room-item:last-child{border-bottom:none}.member-room-page .zalo-room-item:active{background:#f8fbff}.member-room-page .zalo-room-avatar{background:linear-gradient(145deg, #3b8cff, var(--cp-blue-deep));width:48px;height:48px;box-shadow:0 6px 14px color-mix(in srgb, var(--primary) 22%, transparent);border-radius:50%;font-size:18px}.member-room-page .zalo-room-name{color:var(--cp-ink);letter-spacing:-.01em;font-size:15px;font-weight:720}.member-room-page .zalo-room-time{color:var(--cp-muted);font-size:11px;font-weight:600}.member-room-page .zalo-room-preview{color:var(--cp-muted);font-size:13px}.member-room-page .zalo-room-sender{color:#334155;font-weight:650}.member-room-page .zalo-room-preview-tag,.member-room-page .zalo-room-join-btn{color:var(--cp-blue-deep);background:color-mix(in srgb, var(--primary) 10%, transparent);border:none;border-radius:10px;padding:5px 9px;font-size:11px;font-weight:700}.member-room-page .zalo-room-join-btn{cursor:pointer}.member-room-page .zalo-room-join-btn:disabled{opacity:.65;cursor:wait}.member-room-page .zalo-room-badge{color:#b45309;background:#b453091f;border-radius:8px}.member-room-page .zalo-room-unread{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep));box-shadow:0 2px 8px color-mix(in srgb, var(--primary) 28%, transparent);border-radius:10px}.member-room-page .zalo-empty,.member-room-page .zalo-error,.member-room-page .zalo-room-join-toast,.member-room-page .info-msg{margin:12px 14px}.member-deals-page.zalo-deals-page{background:radial-gradient(120% 55% at 50% -8%, color-mix(in srgb, var(--primary) 14%, transparent), transparent 55%), linear-gradient(180deg, #f3f7fc 0%, #eef2f7 50%, #e9eef5 100%)}.member-deals-page .zalo-deal-date-filter{background:#fff;border:1px solid #ffffffe6;border-radius:16px;margin:0 12px 12px;padding:12px 14px;box-shadow:0 8px 22px #0f376e0d}.member-deals-page .zalo-deal-date-label{color:var(--cp-ink,#0f172a);letter-spacing:.02em;font-size:12px;font-weight:700}.member-deals-page .zalo-deal-date-input{background:#f8fbff;border-color:#dbe4f0;border-radius:12px;font-weight:650}.member-deals-page .zalo-deal-date-input:focus{border-color:var(--cp-blue,var(--primary));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 12%, transparent);background:#fff}.member-deals-page .zalo-deal-date-chip{color:#475569;background:#fff;border-color:#dbe4f0;border-radius:12px;font-weight:700;transition:background .15s,border-color .15s,color .15s}.member-deals-page .zalo-deal-date-chip.active{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--primary) 22%, transparent);border-color:#0000}.member-deals-page .zalo-deal-date-hint{color:var(--cp-muted,#64748b)}.member-deals-page .zalo-deal-tabs{gap:10px;padding:0 12px 12px}.member-deals-page .zalo-deal-tab{color:#475569;background:#fff;border:1px solid #ffffffe6;border-radius:14px;transition:background .15s,color .15s,box-shadow .15s;box-shadow:0 4px 14px #0f376e0d}.member-deals-page .zalo-deal-tab.active{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)));color:#fff;box-shadow:0 6px 16px color-mix(in srgb, var(--primary) 28%, transparent);border-color:#0000}.member-deals-page .zalo-deal-tab:not(.active) .zalo-deal-tab-count{color:#334155;background:#e8eef6}.member-deals-page .zalo-deal-list{gap:10px;margin:0 12px 12px;padding:0}.member-deals-page .zalo-deal-card{background:#fff;border:1px solid #ffffffe6;border-radius:16px;box-shadow:0 8px 22px #0f376e0d}.member-deals-page .zalo-deal-card-link:active{background:#f8fbff}.member-deals-page .zalo-deal-card-route{color:var(--cp-ink,#0f172a);letter-spacing:-.01em}.member-deals-page .zalo-deal-card-time{color:var(--cp-muted,#64748b)}.member-deals-page .zalo-deal-card-avatar{background:linear-gradient(145deg, #3b8cff, var(--cp-blue-deep,var(--primary-deep)));box-shadow:0 4px 10px color-mix(in srgb, var(--primary) 20%, transparent);border-radius:50%}.member-deals-page .zalo-deal-card-phone{color:var(--cp-blue,var(--primary))}.member-deals-page .zalo-deal-card-fee{color:#0f766e}.member-deals-page .zalo-deal-card-tab-tag{background:color-mix(in srgb, var(--primary) 10%, transparent);color:var(--cp-blue-deep,var(--primary-deep))}.member-deals-page .zalo-deal-card-action,.member-deals-page .zalo-deal-card-inline-action{background:linear-gradient(135deg, #2f86ff, var(--cp-blue-deep,var(--primary-deep)))}.member-deals-page .zalo-deal-card-inline-action.is-ghost{background:color-mix(in srgb, var(--primary) 12%, #fff);color:var(--cp-blue-deep,var(--primary-deep))}.member-deals-page .zalo-deal-card-action.is-done{color:#166534;background:#f0fdf4}.member-deals-page .zalo-deals-error,.member-deals-page .zalo-toast{margin-left:12px;margin-right:12px}.member-deals-page .zalo-toast{background:#0f172a;border-radius:12px}.zalo-bottom-nav{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff5;border-top-color:#e8eef6}.zalo-nav-item.active,.zalo-nav-item.active .zalo-nav-icon-wrap{color:var(--primary)}.zalo-nav-item.active .zalo-nav-icon{transform:translateY(-.5px)}.home-landing{padding:0 0 24px;animation:.32s both home-landing-in}@keyframes home-landing-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.home-topbar{min-height:52px;padding:max(14px, env(safe-area-inset-top)) 16px 14px;background:radial-gradient(120% 90% at 100% 0%, #fff3, transparent 50%), linear-gradient(165deg, #0070ff 0%, var(--primary) 55%, var(--primary-deep) 100%);color:var(--on-primary);justify-content:space-between;align-items:center;gap:12px;display:flex}.home-topbar-greet{opacity:.95;flex-direction:column;flex:1;align-items:flex-start;gap:2px;min-width:0;margin:0;font-size:15px;font-weight:500;line-height:1.25;display:flex}.home-topbar-brand{letter-spacing:-.02em;font-size:18px;font-weight:800;line-height:1.1}.home-topbar-user{opacity:.92;font-size:13px;font-weight:500}.home-topbar-user strong{font-weight:700}.home-topbar-wallet{flex-shrink:0;justify-content:center;align-items:center;display:flex}.home-topbar-wallet-amt{letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;color:#0b3d1c;background:linear-gradient(#fff7b0 0%,#ffe566 55%,#f5c842 100%);border:1px solid #ffec8cf2;border-radius:999px;justify-content:center;align-items:center;max-width:48vw;padding:7px 12px;font-size:15px;font-weight:800;line-height:1.2;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffff8c,0 2px 8px #0000001f}.home-topbar-wallet-amt.is-vnd{font-variant-numeric:tabular-nums}.home-topbar-login{color:var(--on-primary);background:#ffffff2e;border:1px solid #ffffff47;border-radius:999px;padding:6px 10px;font-size:13px;font-weight:600;text-decoration:none}.home-search-wrap{background:linear-gradient(180deg, var(--primary-deep) 0%, transparent 100%);background-repeat:no-repeat;background-size:100% 28px;margin-top:-2px;padding:12px 16px 4px}.home-search{background:var(--surface);border:1px solid var(--border);box-shadow:var(--elev-1);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;display:flex}.home-search-icon{color:var(--primary);font-size:16px;font-weight:700;line-height:1}.home-search input{font:inherit;color:var(--text);cursor:pointer;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.home-search input::placeholder{color:var(--muted)}.home-ride-vehicle{gap:8px;margin-bottom:8px;padding:0 2px;display:flex}.home-ride-vehicle button{color:#1e3a8a;cursor:pointer;background:#ffffffe0;border:1px solid #1e40af38;border-radius:999px;padding:5px 12px;font-size:12px;font-weight:600}.home-ride-vehicle button.is-active{color:var(--primary-deep,#1e40af);background:#fff;border-color:#fff;box-shadow:0 1px 4px #0f172a1f}.home-ride-vehicle button.is-soon{opacity:.72;color:#475569;cursor:not-allowed;background:#f8fafceb;border-color:#94a3b873}.home-ride-search-form{position:relative}.home-ride-search-hint{color:#334155;text-shadow:0 1px #ffffff8c;margin:6px 4px 0;font-size:12px;line-height:1.4}.home-ride-suggest-list{background:var(--surface);border:1px solid var(--border);box-shadow:var(--elev-2,0 8px 24px #0000001f);border-radius:14px;margin:8px 0 0;padding:0;list-style:none;overflow:hidden}.home-ride-suggest-list button{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:none;padding:10px 14px}.home-ride-suggest-list button span{color:var(--muted);margin-top:2px;font-size:12px;display:block}.home-ride-suggest-list li+li button{border-top:1px solid var(--border)}.home-svc-section{padding:12px 12px 0}.home-svc-status{color:var(--muted);margin:12px 4px;font-size:13px}.home-svc-status.is-error{color:var(--danger)}.home-svc-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.home-svc-card{appearance:none;border:1px solid color-mix(in srgb, var(--border) 80%, transparent);background:var(--surface);color:inherit;cursor:pointer;box-shadow:var(--elev-1);transition:transform var(--motion), box-shadow var(--motion), border-color var(--motion);border-radius:14px;flex-direction:column;align-items:center;gap:8px;padding:12px 6px 10px;text-decoration:none;display:flex}.home-svc-card:hover,.home-svc-card:active{border-color:color-mix(in srgb, var(--primary) 28%, var(--border));box-shadow:var(--elev-2);transform:translateY(-1px)}.home-svc-card-link{text-align:center}.home-svc-icon{border-radius:16px;place-items:center;width:52px;height:52px;display:grid}.home-svc-label{text-align:center;color:var(--text);max-width:100%;font-size:11px;font-weight:600;line-height:1.25}.home-svc-toast{left:50%;bottom:calc(var(--zalo-bottom-nav-offset,calc(var(--zalo-bottom-nav-height) + var(--safe-bottom))) + 20px);z-index:calc(var(--zalo-bottom-nav-z) + 5);color:#fff;box-shadow:var(--elev-3);background:#0f172ae0;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:600;transition:bottom .22s;animation:.2s both home-landing-in;position:absolute;transform:translate(-50%)}.home-banner-stack{flex-direction:column;gap:18px;padding:16px 0 8px;display:flex}.home-banner-block-title{letter-spacing:-.02em;color:var(--text);margin:0 16px 10px;font-size:16px;font-weight:800}.home-banner-scroller{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:10px;padding:0 16px 6px;display:flex;overflow-x:auto}.home-banner-scroller::-webkit-scrollbar{display:none}.home-banner-card{scroll-snap-align:start;color:inherit;flex-direction:column;flex:0 0 calc(50% - 5px);gap:8px;text-decoration:none;display:flex}.home-banner-img{aspect-ratio:1;object-fit:cover;background:#e8eef6;border-radius:14px;width:100%;display:block;box-shadow:0 4px 14px #0f376e14}.home-banner-caption{color:#1e293b;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;font-weight:600;line-height:1.35;display:-webkit-box;overflow:hidden}.home-services-page-head{align-items:center;gap:10px;display:flex}.home-services-back{width:32px;height:32px;color:var(--on-primary);background:#ffffff29;border-radius:50%;place-items:center;font-size:18px;text-decoration:none;display:grid}.home-services-page .home-svc-section{padding-top:16px}.home-seo-intro{color:#334155;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin:8px 16px 20px;padding:14px 14px 12px;font-size:13px;line-height:1.5}.home-seo-title{color:#0f172a;margin:0 0 8px;font-size:16px;font-weight:750;line-height:1.3}.home-seo-intro p{margin:0 0 8px}.home-seo-intro a{color:var(--primary,#0068ff);font-weight:600;text-decoration:none}.home-seo-intro a:hover{text-decoration:underline}.home-seo-links{flex-wrap:wrap;gap:8px 14px;display:flex;margin:10px 0 0!important}.home-services-seo-links{font-size:13px;margin:0 16px 20px!important}.seo-landing{color:#334155;max-width:720px;margin:0 auto;padding:0 16px 28px;font-size:15px;line-height:1.55}.seo-landing-hero{padding:20px 0 8px}.seo-landing-eyebrow{letter-spacing:.04em;text-transform:uppercase;color:var(--primary,#0068ff);margin:0 0 6px;font-size:12px;font-weight:700}.seo-landing-hero h1,.seo-landing-hero .seo-landing-title{color:#0f172a;margin:0 0 10px;font-size:1.55rem;font-weight:800;line-height:1.25}.seo-landing.is-compact{border-top:1px solid #e2e8f0;margin-top:12px;padding-top:8px}.service-seo-below{background:#fff;padding:8px 0 24px}.seo-landing-section h2,.seo-landing-section h3{color:#0f172a;margin:0 0 10px;font-size:1.15rem;font-weight:750}.seo-landing-cards h3,.seo-landing-cards h4{color:#0f172a;margin:0 0 4px;font-size:15px}.seo-landing-lead{color:#475569;margin:0 0 16px}.seo-landing-cta{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.seo-landing-btn{border-radius:10px;justify-content:center;align-items:center;padding:10px 14px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.seo-landing-btn.is-primary{background:var(--primary,#0068ff);color:#fff}.seo-landing-btn.is-ghost{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}.seo-landing-btn.is-text{color:#64748b;padding-left:4px;font-weight:600}.seo-landing-section{margin-top:22px;padding-top:4px}.seo-landing-section p{margin:0 0 10px}.seo-landing-cards{gap:10px;margin:0;padding:0;list-style:none;display:grid}.seo-landing-cards li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.seo-landing-cards p{color:#64748b;margin:0;font-size:13px}.seo-landing-steps{margin:0;padding-left:1.25rem}.seo-landing-steps li{margin-bottom:8px}.seo-landing-faq{margin:0}.seo-landing-faq>div{border-bottom:1px solid #e2e8f0;margin-bottom:12px;padding-bottom:10px}.seo-landing-faq dt{color:#0f172a;margin-bottom:4px;font-weight:700}.seo-landing-faq dd{color:#475569;margin:0;font-size:14px}.seo-landing-foot{border-top:1px solid #e2e8f0;margin-top:28px;padding-top:16px;font-size:14px}.seo-landing-foot a{color:var(--primary,#0068ff);font-weight:600;text-decoration:none}.seo-landing-foot-links{flex-wrap:wrap;gap:8px 14px;margin-top:10px;display:flex}.operator-room-feed-filters{background:#f5f8fc;border-bottom:1px solid #e6eef8;align-items:center;gap:8px;padding:8px 12px;display:flex}.operator-room-feed-filter{flex:1 1 0;min-width:0;margin:0;position:relative}.operator-room-feed-filter--fleet{flex:1.2 1 0}.operator-room-feed-filter--code{flex:1 1 0}.operator-room-feed-filter label{margin:0;display:block}.operator-room-feed-filter select,.operator-room-feed-filter input{color:#1a3a66;width:100%;min-height:36px;font:inherit;background:#fff;border:1px solid #d7e3f4;border-radius:10px;padding:6px 10px;font-size:13px}.operator-room-feed-filter select:focus,.operator-room-feed-filter input:focus{outline-offset:1px;border-color:var(--primary,#0b6bcb);outline:2px solid #0b6bcb47}.operator-room-feed-suggest{z-index:20;background:#fff;border:1px solid #d7e3f4;border-radius:10px;max-height:220px;margin:0;padding:4px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto;box-shadow:0 8px 20px #0f28501f}.operator-room-feed-suggest li+li{margin-top:2px}.operator-room-feed-suggest button{color:#1a3a66;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-size:13px;font-weight:600;display:block}.operator-room-feed-suggest button:hover,.operator-room-feed-suggest button:focus{background:#eaf3ff;outline:none}.operator-room-feed-filter-clear{color:#4b627c;min-height:36px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7e3f4;border-radius:10px;flex:none;padding:6px 10px;font-size:12px;font-weight:700}.operator-room-feed-filter-clear:active{background:#eef3fa}.operator-room-tools{grid-template-columns:1fr 1fr;gap:8px;padding:8px 12px 0;display:grid}.operator-room-tool{color:#1a3a66;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7e3f4;border-radius:12px;justify-content:center;align-items:center;gap:6px;padding:8px 10px;font-size:13px;font-weight:700;display:inline-flex}.operator-room-tool.active{border-color:var(--primary);color:var(--primary-deep);background:#eaf3ff}.operator-room-tool-count{background:var(--primary);color:#fff;text-align:center;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;line-height:18px}.operator-room-panel{background:#f7fbff;border:1px solid #d7e3f4;border-radius:14px;margin:10px 12px 0;padding:12px}.operator-room-panel-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.operator-room-panel-head h2{color:#12325c;margin:0;font-size:15px;font-weight:700}.operator-room-panel-close{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.operator-panel-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.operator-panel-card{color:inherit;background:#fff;border:1px solid #e2eaf4;border-radius:12px;flex-direction:column;gap:4px;padding:10px 12px;text-decoration:none;display:flex}.operator-panel-card strong{font-size:14px}.operator-panel-card span{color:#5b6b7c;font-size:12px}.operator-panel-meta{color:#7a8796!important}.operator-panel-card.is-locked{opacity:.78}.operator-post-card{background:#fff;border:1px solid #d7e3f4;border-radius:14px;flex-direction:column;gap:10px;margin:12px;padding:14px;display:flex}.operator-post-title{color:#12325c;margin:0;font-size:15px;font-weight:700}.operator-field{flex-direction:column;gap:6px;width:100%;margin:0;display:flex}.operator-field-label{color:#355074;font-size:13px;font-weight:600;display:block}.operator-field-input{box-sizing:border-box;width:100%;min-height:42px;font:inherit;color:#1a1a1a;background:#f8fbff;border:1px solid #d5deea;border-radius:12px;padding:10px 12px;font-size:15px;display:block}.operator-field-input:focus{border-color:var(--primary);background:#fff;outline:none;box-shadow:0 0 0 3px #0070ff1f}.operator-field-textarea{resize:vertical;min-height:72px;line-height:1.4}.operator-muted{color:#678;margin:0;font-size:13px}.operator-deals-page{padding-bottom:calc(var(--zalo-bottom-nav-height) + 24px)}.operator-deal-tabs{flex-wrap:nowrap;overflow-x:auto}.operator-deals-section{padding:0 12px 20px}.operator-deal-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.operator-deal-card{color:inherit;background:#fff;border:1px solid #e2eaf4;border-radius:14px;flex-direction:column;gap:6px;padding:14px;text-decoration:none;display:flex;box-shadow:0 2px 8px #0f376e0a}.operator-deal-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.operator-deal-card-route{font-size:15px;line-height:1.35}.operator-deal-card-tag{color:var(--primary-deep);background:#eaf3ff;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:11px;font-weight:700}.operator-deal-card-tag.is-complaint{color:#b45309;background:#fff1e8}.operator-deal-card-tag.is-claim{color:#0f766e;background:#e8f5ee}.operator-deal-tabs .zalo-deal-tab{white-space:nowrap;flex:auto;min-width:max-content}.operator-deal-card-link{color:inherit;flex-direction:column;gap:6px;text-decoration:none;display:flex}.operator-deal-card-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.operator-claim-history-card{gap:10px}.operator-deal-complete-bar{padding:8px 12px 4px}.operator-deal-complete-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#0f766e,#0d9488);border:none;border-radius:12px;width:100%;padding:12px 14px;font-size:14px;font-weight:700}.operator-deal-complete-btn:disabled{opacity:.7;cursor:not-allowed}.operator-deal-complete-btn.is-done{color:#0f766e;background:#e8f5ee}.operator-contacts-search{gap:8px;padding:0 12px 12px;display:flex}.operator-contacts-search .operator-field-input{flex:1}.operator-assign-search{flex-direction:column;gap:6px;margin-bottom:10px;display:flex}.operator-assign-search-hint{color:#64748b;margin:0;font-size:12px;font-weight:600}.operator-assign-list{-webkit-overflow-scrolling:touch;max-height:min(48vh,420px);overflow-y:auto}.operator-assign-sheet-backdrop.room-chat-sheet-backdrop{background:#0f172a73;justify-content:center;align-items:stretch}.operator-assign-sheet.room-chat-sheet{box-sizing:border-box;width:100%;height:100dvh;max-height:100dvh;max-width:var(--page-max);padding:max(10px, env(safe-area-inset-top,0px)) 16px max(16px, var(--safe-bottom));border-radius:0;flex-direction:column;margin:0 auto;display:flex;overflow:hidden}.operator-assign-sheet-top{border-bottom:1px solid #e2e8f0;flex:none;margin-bottom:8px;padding-bottom:4px}.operator-assign-sheet-top .room-chat-sheet-title{margin-bottom:8px}.operator-assign-sheet-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;flex:auto;min-height:0;overflow:hidden auto}.operator-assign-sheet-body .operator-assign-list,.operator-assign-sheet .operator-assign-list{margin:0;padding-bottom:12px;overflow:visible;max-height:none!important}.operator-assign-sheet-footer{border-top:1px solid #e2e8f0;flex:none;padding-top:10px}.operator-fleet-card-actions{grid-template-columns:auto 1fr 1fr;align-items:center;gap:6px;margin-top:8px;display:grid}.operator-fleet-card-btn{border-radius:8px;width:100%;min-height:34px;padding:7px 10px;font-size:.8125rem}.operator-fleet-select{color:#334155;white-space:nowrap;align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:inline-flex}.operator-fleet-self-claim-hint{margin:6px 0 0;font-size:12px}.operator-fleet-batch-bar{border-top:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;font-size:.8125rem;font-weight:600;display:flex}.operator-fleet-batch-bar .btn-primary,.operator-fleet-batch-bar .btn-outline{min-height:32px;margin-left:auto;padding:6px 10px;font-size:.8125rem}.operator-fleet-batch-bar .btn-outline{margin-left:0}.operator-contacts-section{padding:0 12px 16px}.operator-contacts-heading{color:#334155;margin:0 0 8px;font-size:14px;font-weight:700}.operator-contact-row{flex-direction:row;justify-content:space-between;align-items:center;gap:10px}.operator-users-page .zalo-page-header{align-items:center;gap:8px;display:flex}.operator-users-page .zalo-page-header .room-chat-back{color:var(--on-primary);flex-shrink:0}.operator-users-page .zalo-page-header h1{flex:1;min-width:0}.operator-users-banner{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa;border-radius:12px;margin:14px 12px 10px;padding:10px 12px;font-size:13px;line-height:1.45}.operator-users-tabs{gap:8px;padding:16px 12px 10px;display:flex}.operator-users-banner+.operator-users-tabs{padding-top:0}.operator-users-tab{color:#475569;background:#fff;border:1px solid #dbe3ec;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:6px 8px;font-size:13px;font-weight:600;display:inline-flex}.operator-users-tab.is-active{color:#fff;background:#0f172a;border-color:#0f172a}.operator-users-tab-count{color:#fff;background:#ef4444;border-radius:999px;min-width:20px;padding:0 5px;font-size:11px;line-height:18px}.operator-users-filters{gap:8px;padding:0 12px 10px;display:flex;overflow-x:auto}.operator-users-chip{color:#475569;white-space:nowrap;background:#fff;border:1px solid #dbe3ec;border-radius:999px;padding:6px 12px;font-size:12.5px}.operator-users-chip.is-active{color:#075985;background:#e0f2fe;border-color:#7dd3fc}.operator-users-row{text-align:left;background:0 0;border:0;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:0;display:flex}.operator-users-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.operator-users-status{color:#475569;background:#f1f5f9;border-radius:999px;flex:none;padding:3px 9px;font-size:11.5px;font-weight:600}.operator-users-status.is-active{color:#166534;background:#dcfce7}.operator-users-status.is-pending{color:#854d0e;background:#fef9c3}.operator-users-status.is-suspended,.operator-users-status.is-rejected{color:#991b1b;background:#fee2e2}.operator-users-request{flex-direction:column;gap:8px;display:flex}.operator-users-diff{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.operator-users-diff li{grid-template-columns:minmax(70px,32%) 1fr auto;align-items:baseline;gap:6px;font-size:12.5px;display:grid}.operator-users-diff span{color:#678}.operator-users-diff em{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-style:normal;text-decoration:line-through;overflow:hidden}.operator-users-diff b{color:#0f172a}.operator-users-note{color:#475569;margin:0;font-size:12.5px}.operator-users-actions,.operator-users-sheet-actions{flex-wrap:wrap;gap:8px;display:flex}.operator-users-sheet-actions{flex-direction:column;margin:12px 0}.member-profile-menu-badge{color:#fff;text-align:center;background:#ef4444;border-radius:999px;min-width:20px;margin-left:auto;padding:0 6px;font-size:11px;font-weight:700;line-height:20px}.operator-deal-card-meta,.operator-deal-card-peer{color:#678;font-size:12px}.operator-deal-card-preview{color:#3a4a5c;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:13px;display:-webkit-box;overflow:hidden}.operator-room-board .room-chat-header{align-items:center;gap:8px;display:flex}.operator-room-board .room-chat-header-actions{flex-shrink:0;align-items:center;gap:6px;margin-left:auto;display:flex}.operator-room-board .room-chat-header-action{color:#fff;background:#ffffff2e;border-radius:999px;flex-shrink:0;margin-left:0;padding:6px 10px;font-size:12px;font-weight:700;line-height:1;text-decoration:none}.operator-room-board .room-chat-header-action--room-info{background:#ffffff52;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex;box-shadow:0 0 0 1.5px #ffffff8c,0 2px 6px #00143c2e}.operator-room-board .room-chat-header-action--room-info:active{background:#ffffff73;transform:scale(.96)}.operator-room-board .room-chat-header-action--room-info svg{flex-shrink:0;display:block}.operator-room-info-card{background:#f3f7fc;border:1px solid #e8eef6;border-radius:14px;gap:10px;margin:12px 16px;padding:12px 14px;display:grid}.operator-room-info-avatar-row{border-bottom:1px solid #e8eef6;align-items:center;gap:14px;margin-bottom:2px;padding-bottom:4px;display:flex}.operator-room-info-avatar{background:linear-gradient(135deg, var(--primary), var(--primary-deep));color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:72px;height:72px;font-size:28px;font-weight:700;display:flex;overflow:hidden}.operator-room-info-avatar img{object-fit:cover;width:100%;height:100%;display:block}.operator-room-info-avatar-meta{flex-direction:column;align-items:flex-start;gap:6px;min-width:0;display:flex}.operator-room-info-avatar-meta>strong{color:#0f172a;text-align:left;font-size:15px;font-weight:700}.operator-room-avatar-btn{color:var(--primary,#1d4ed8);cursor:pointer;background:#fff;border:1px solid #c7d7ef;border-radius:999px;padding:6px 12px;font-size:13px;font-weight:650}.operator-room-avatar-btn:disabled{opacity:.6;cursor:not-allowed}.operator-room-members-link{color:inherit;background:#fff;border:1px solid #e8eef6;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;margin:0 16px 12px;padding:14px 16px;text-decoration:none;display:flex}.operator-room-members-link:active{background:#f8fafc}.operator-room-members-link-label{color:#64748b;margin-bottom:2px;font-size:12px;font-weight:600;display:block}.operator-room-members-link-count{color:#0f172a;font-size:16px;font-weight:700;display:block}.operator-room-members-link-chevron{color:#94a3b8;font-size:22px;font-weight:600;line-height:1}.operator-room-add-driver{background:#fff;border:1px solid #e8eef6;border-radius:14px;margin:0 16px 12px;padding:12px 14px}.operator-room-add-driver .zalo-members-section-label{z-index:auto;margin:0 0 6px;padding:0;position:static;top:auto}.operator-room-add-driver .operator-muted{margin:0 0 12px;line-height:1.45;display:block}.operator-room-add-driver-row{align-items:stretch;gap:8px;display:flex}.operator-room-add-driver-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.operator-room-add-contacts-btn{flex-shrink:0}.operator-room-add-contacts-link{color:#2563eb;font-size:13px;font-weight:600;text-decoration:none}.operator-room-add-contacts-link:hover{text-decoration:underline}.operator-room-contacts-sheet{max-height:min(78vh,640px);overflow:auto}.operator-room-add-driver-row .zalo-members-search{flex:1;margin:0}.operator-room-add-driver-row .btn-primary{white-space:nowrap;flex-shrink:0}.operator-room-add-results{margin-top:10px}.operator-room-info-card>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.operator-room-info-card span{color:#64748b;font-size:12px;font-weight:600}.operator-room-info-card strong{color:#0f172a;text-align:right;font-size:13px;font-weight:700}.operator-fares-page{padding-bottom:88px}.operator-fares-section{background:#fff;border:1px solid #e8eef6;border-radius:14px;margin:0 12px 12px;padding:12px}.operator-fares-section h2{color:#0f172a;margin:0 0 10px;font-size:14px;font-weight:800}.operator-fares-hint{color:#64748b;margin:0 0 10px;font-size:12px;line-height:1.35}.operator-fares-field{flex-direction:column;gap:4px;margin-bottom:8px;display:flex}.operator-fares-field>span{color:#64748b;font-size:11px;font-weight:650}.operator-fares-field input,.operator-fares-field textarea{width:100%;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px;font-size:13px}.operator-fares-field input:disabled,.operator-fares-field textarea:disabled{opacity:.55;background:#f8fafc}.operator-fares-check{color:#0f172a;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;font-weight:650;display:flex}.operator-fares-check input{width:16px;height:16px;accent-color:var(--primary)}.operator-fares-service{border-top:1px solid #eef2f7;margin-top:10px;padding-top:10px}.operator-fares-service h3{color:#0369a1;margin:0 0 8px;font-size:13px;font-weight:800}.operator-fares-cell{background:#f8fafc;border:1px solid #e8eef6;border-radius:12px;margin-bottom:10px;padding:10px}.operator-fares-cell.is-locked{opacity:.5}.operator-fares-cell-head{margin-bottom:4px}.operator-fares-sticky{z-index:5;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffeb;border-top:1px solid #e8eef6;gap:8px;display:flex;position:sticky;bottom:0}.operator-fares-reload,.operator-fares-save{font:inherit;cursor:pointer;border:none;border-radius:12px;flex:1;padding:12px 10px;font-size:14px;font-weight:750}.operator-fares-reload{color:#334155;background:#f1f5f9}.operator-fares-save{background:var(--primary);color:#fff}.operator-fares-reload:disabled,.operator-fares-save:disabled{opacity:.55;cursor:not-allowed}.operator-fares-actions{gap:8px;margin-top:10px;display:flex}.operator-content-tabs{background:#eef2f7;border-radius:12px;gap:6px;margin:0 12px 10px;padding:4px;display:flex}.operator-content-tab{font:inherit;color:#64748b;cursor:pointer;background:0 0;border:none;border-radius:10px;flex:1;padding:10px 8px;font-size:13px;font-weight:700}.operator-content-tab.is-active{color:#0f172a;background:#fff;box-shadow:0 1px 2px #0f172a14}.operator-room-revenue{background:#fff;border:1px solid #e8eef6;border-radius:14px;margin:0 16px 12px;padding:14px}.operator-room-revenue-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.operator-room-revenue-head h2{color:#0f172a;margin:0;font-size:15px;font-weight:800}.operator-room-revenue-balance{text-align:right;margin:0}.operator-room-revenue-balance strong{color:#0369a1;font-size:18px;font-weight:800;line-height:1.2;display:block}.operator-room-revenue-balance span{color:#64748b;font-size:11px}.operator-room-revenue-loading{color:#64748b;margin:0;font-size:13px}.operator-room-revenue-hint{color:#64748b;margin:8px 0 0;font-size:12px;line-height:1.4}.operator-room-split{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.operator-room-split-card{background:#f8fafc;border:1px solid #e8eef6;border-radius:10px;flex-direction:column;gap:4px;min-width:0;padding:10px 8px;display:flex}.operator-room-split-label{color:#64748b;font-size:10px;font-weight:700;line-height:1.3}.operator-room-split-drv{color:#0369a1;font-size:13px;font-weight:800;line-height:1.25}.operator-room-split-vnd{color:#94a3b8;font-size:10px;line-height:1.3}.operator-room-split-note{color:#94a3b8;margin:8px 0 0;font-size:11px;line-height:1.35}.operator-room-ledger-title{color:#334155;margin:14px 0 8px;font-size:13px;font-weight:700}.operator-room-ledger-empty{margin:0;padding:8px 0}.operator-room-ledger-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.operator-room-ledger-row{border-top:1px solid #eef2f7;padding:10px 0}.operator-room-ledger-row:first-child{border-top:none;padding-top:0}.operator-room-ledger-main{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.operator-room-ledger-main strong{color:#0f172a;font-size:13px}.operator-room-ledger-main time{color:#94a3b8;flex-shrink:0;font-size:11px}.operator-room-ledger-memo{color:#64748b;margin:4px 0 0;font-size:12px;line-height:1.35}.operator-room-ledger-amount{text-align:right;margin-top:4px}.operator-room-ledger-amount .credit{color:#047857;font-size:14px;font-weight:800}.operator-room-ledger-amount .debit{color:#b91c1c;font-size:14px;font-weight:800}.operator-room-ledger-more{width:100%;font:inherit;color:#0369a1;cursor:pointer;background:#f8fafc;border:1px solid #dbe4f0;border-radius:10px;margin-top:8px;padding:10px;font-size:13px;font-weight:700}.operator-room-ledger-more:disabled{opacity:.6;cursor:default}.operator-room-ledger-link{text-align:center;margin-top:12px;text-decoration:none;display:block}.operator-room-ledger-page-list{margin-top:0}.operator-member-kick-btn{color:#b91c1c;font:inherit;cursor:pointer;background:#fff5f5;border:1px solid #fecaca;border-radius:999px;flex-shrink:0;margin-left:auto;padding:6px 10px;font-size:12px;font-weight:700}.operator-member-kick-btn:disabled{opacity:.55;cursor:default}.operator-room-footer-hint{text-align:center;color:#5b6b7c;width:100%;margin:0;padding:4px 8px;font-size:13px;font-weight:600}.room-chat-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.room-chat-action-btn{color:#1f2a37;cursor:pointer;background:#fff;border:1px solid #d5dde6;border-radius:10px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:600;line-height:1;text-decoration:none;transition:background .15s,border-color .15s,opacity .15s;display:inline-flex}.room-chat-action-btn:hover:not(:disabled){background:#f1f5f9}.room-chat-action-btn:disabled{opacity:.6;cursor:not-allowed}.room-chat-action-claim{background:linear-gradient(135deg, #2f86ff, var(--primary-deep,#1666d6));color:#fff;box-shadow:0 4px 12px color-mix(in srgb, var(--primary,#2f86ff) 30%, transparent);border-color:#0000}.room-chat-action-claim:hover:not(:disabled){background:linear-gradient(135deg, #2477f0, var(--primary-deep,#1257c0))}.operator-live-dot{color:#7dffb3;font-weight:700}.operator-poster-role{opacity:.75;font-size:12px;font-weight:600}.operator-deal-chat .room-chat-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:1rem;line-height:1.25;display:-webkit-box;overflow:hidden}.operator-deal-chat .room-chat-composer{align-items:flex-end}.operator-deal-chat .room-chat-input-wrap{flex:1;min-width:0}.operator-customer-card-wrap{width:100%}.operator-customer-card{width:min(100%,430px);max-width:calc(100% - 36px)}.operator-customer-card-title{color:#0756bd;justify-content:space-between;align-items:center;gap:12px;margin:8px 0;font-weight:750;display:flex}.operator-customer-card-title button{color:#0756bd;min-height:32px;font:inherit;background:#fff;border:1px solid #b8d2f4;border-radius:9px;flex:none;padding:5px 10px;font-size:12px;font-weight:700}.operator-customer-card-details{border-top:1px solid #1e508c24;gap:0;margin:0;display:grid}.operator-customer-card-details>div{border-bottom:1px solid #1e508c1a;grid-template-columns:minmax(92px,36%) minmax(0,1fr);gap:10px;padding:7px 0;display:grid}.operator-customer-card-details dt{color:#64748b;font-size:12px}.operator-customer-card-details dd{color:#10233e;overflow-wrap:anywhere;min-width:0;margin:0;font-size:13px;font-weight:650}.operator-customer-card-details a{color:#0568d8;text-decoration:none}.operator-customer-card-note{background:#ffffffa3;border-radius:10px;margin-top:10px;padding:9px 10px}.operator-customer-card-note strong{color:#52657d;font-size:12px}.operator-customer-card-note p{white-space:pre-wrap;overflow-wrap:anywhere;margin:4px 0 0}.rating-stars-badge{color:#b45309;vertical-align:middle;align-items:center;gap:3px;margin-left:6px;font-size:12px;font-weight:700;display:inline-flex}.rating-stars-badge.is-compact{margin-left:8px;font-size:12px}.rating-stars-badge-star{color:#f59e0b}.rating-stars-badge-count{color:#78716c;font-weight:600}.trip-rating-overlay{z-index:var(--zalo-overlay-z);background:#0f172a73;justify-content:center;align-items:flex-end;padding:0;display:flex;position:fixed;inset:0}.trip-rating-sheet{width:min(480px,100%);max-height:min(92vh,720px);padding:12px 16px calc(24px + var(--safe-bottom,0px));background:#f1f5f9;border-radius:20px 20px 0 0;overflow:auto;box-shadow:0 -8px 32px #0f172a2e}.trip-rating-sheet-head{justify-content:center;align-items:center;min-height:36px;margin-bottom:8px;display:flex;position:relative}.trip-rating-close{z-index:2;color:#334155;cursor:pointer;background:#e2e8f0;border:none;border-radius:50%;width:36px;height:36px;font-size:16px;position:absolute;top:0;left:0}.trip-rating-route{color:#64748b;text-align:center;text-overflow:ellipsis;white-space:nowrap;margin:0;padding:0 40px;font-size:13px;font-weight:600;overflow:hidden}.trip-rating-eyebrow{text-align:center;color:#64748b;margin:8px 0 0;font-size:13px}.trip-rating-title{text-align:center;color:#0f172a;margin:6px 0 16px;font-size:22px;font-weight:800;line-height:1.25}.trip-rating-stars{justify-content:center;gap:10px;margin-bottom:20px;display:flex}.trip-rating-comment{margin:-8px 0 14px;display:block}.trip-rating-comment-label{color:#475569;margin-bottom:6px;font-size:13px;font-weight:650;display:block}.trip-rating-comment-input{box-sizing:border-box;resize:vertical;width:100%;min-height:72px;font:inherit;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:10px 12px;font-size:14px;line-height:1.4}.trip-rating-comment-input:focus{outline:2px solid color-mix(in srgb, var(--primary,#2563eb) 35%, transparent);border-color:var(--primary,#2563eb)}.trip-rating-comment-count{text-align:right;color:#94a3b8;margin-top:4px;font-size:11px;display:block}.trip-rating-star{color:#cbd5e1;cursor:pointer;background:0 0;border:none;padding:0;font-size:36px;line-height:1}.trip-rating-star.is-on{color:#f59e0b}.trip-rating-card{background:#fff;border-radius:14px;align-items:center;gap:12px;margin-bottom:10px;padding:14px;display:flex;box-shadow:0 1px #0f172a0a}.trip-rating-card-avatar{color:#475569;background:#e2e8f0;border-radius:50%;flex-shrink:0;place-items:center;width:48px;height:48px;font-weight:800;display:grid}.trip-rating-card-name{color:#0f172a;flex-wrap:wrap;align-items:center;margin:0;font-weight:800;display:flex}.trip-rating-card-meta,.trip-rating-card-phone{color:#64748b;margin:2px 0 0;font-size:13px}.trip-rating-pay{justify-content:space-between}.trip-rating-pay-label{color:#0f172a;margin:0;font-weight:800}.trip-rating-pay-method{color:#64748b;margin:4px 0 0;font-size:13px}.trip-rating-pay-amount{color:#0f172a;font-size:16px}.trip-rating-report{text-align:left;cursor:pointer;background:#fff;border:none;border-radius:14px;justify-content:space-between;align-items:center;gap:12px;width:100%;margin:6px 0 16px;padding:14px;display:flex}.trip-rating-report strong{color:#0f172a;display:block}.trip-rating-report-sub{color:#64748b;margin-top:2px;font-size:12px;display:block}.trip-rating-actions{grid-template-columns:1fr 1.4fr;gap:10px;display:grid}.trip-rating-btn-ghost,.trip-rating-btn-primary{cursor:pointer;border:none;border-radius:12px;padding:14px 12px;font-size:15px;font-weight:700}.trip-rating-btn-ghost{color:#334155;background:#e2e8f0}.trip-rating-btn-primary{background:var(--primary,#0068ff);color:#fff}.trip-rating-btn-primary:disabled{opacity:.55;cursor:not-allowed}.fleet-dispatch-card-feed{border:1px solid var(--fd-border,#e2e8f0);border-left:4px solid var(--fd-accent,#64748b);background:var(--fd-bg,#f8fafc);box-sizing:border-box;border-radius:10px;flex-direction:column;gap:8px;width:100%;min-width:0;margin:2px 0;padding:8px 8px 10px;display:flex}.fleet-dispatch-card-feed.tone-pickup-city{--fd-accent:#0d9488;--fd-bg:#f0fdfa;--fd-border:#99f6e4;--fd-title:#0f766e;--fd-chip-bg:#ccfbf1;--fd-chip-fg:#0f766e}.fleet-dispatch-card-feed.tone-dropoff-city{--fd-accent:#d97706;--fd-bg:#fffbeb;--fd-border:#fde68a;--fd-title:#b45309;--fd-chip-bg:#fef3c7;--fd-chip-fg:#b45309}.fleet-dispatch-card-feed.tone-pickup-airport{--fd-accent:#2563eb;--fd-bg:#eff6ff;--fd-border:#bfdbfe;--fd-title:#1d4ed8;--fd-chip-bg:#dbeafe;--fd-chip-fg:#1d4ed8}.fleet-dispatch-card-feed.tone-send-airport{--fd-accent:#e11d48;--fd-bg:#fff1f2;--fd-border:#fecdd3;--fd-title:#be123c;--fd-chip-bg:#ffe4e6;--fd-chip-fg:#be123c}.fleet-dispatch-card-feed.tone-other{--fd-accent:#64748b;--fd-bg:#f8fafc;--fd-border:#e2e8f0;--fd-title:#334155;--fd-chip-bg:#e2e8f0;--fd-chip-fg:#475569}.fleet-dispatch-card-head{flex-direction:column;gap:4px;min-width:0;display:flex}.fleet-dispatch-card-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fleet-dispatch-type{background:var(--fd-chip-bg);color:var(--fd-chip-fg);letter-spacing:.01em;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:750;display:inline-flex}.fleet-dispatch-slot{color:#475569;background:#0f172a0f;border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:650;display:inline-flex}.fleet-dispatch-title{color:var(--fd-title);word-break:break-word;margin:2px 0 0;font-size:14px;font-weight:800;line-height:1.3}.fleet-dispatch-meta,.fleet-dispatch-order-note{color:#64748b;margin:0;font-size:12px;line-height:1.35}.fleet-dispatch-meta.is-airport-time{color:var(--fd-title,#0f172a);margin-top:2px;font-size:13px;font-weight:700}.fleet-dispatch-route{color:#334155;word-break:break-word;margin:0;font-size:13px;font-weight:600;line-height:1.35}.fleet-dispatch-order-note{color:#475569;white-space:pre-wrap;word-break:break-word;background:#ffffffb3;border-radius:8px;padding:6px 8px}.fleet-dispatch-images{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.fleet-dispatch-card-feed.is-airport .fleet-dispatch-images{margin:0 0 6px}.fleet-dispatch-images.is-hero{grid-template-columns:1fr}.fleet-dispatch-images.is-hero .fleet-dispatch-image-link{aspect-ratio:auto;border-radius:12px;justify-content:center;align-items:center;max-height:min(360px,55vh);display:flex}.fleet-dispatch-images.is-hero .fleet-dispatch-image{object-fit:contain;width:100%;height:auto;max-height:min(360px,55vh)}.fleet-dispatch-image-link{aspect-ratio:auto;background:#0f172a0f;border-radius:10px;justify-content:center;align-items:center;min-height:72px;max-height:160px;display:flex;overflow:hidden}.fleet-dispatch-image{object-fit:contain;width:100%;height:auto;max-height:160px;display:block}.listing-attach-images.is-hero .fleet-dispatch-image-link{background:#f1f5f9}.fleet-dispatch-airport-chip{color:#9a3412;text-overflow:ellipsis;white-space:nowrap;background:#fff7ed;border-radius:999px;align-items:center;max-width:100%;padding:3px 8px;font-size:11px;font-weight:700;line-height:1.25;display:inline-flex;overflow:hidden}.fleet-dispatch-airport-head{gap:6px}.fleet-dispatch-route.is-airport-route{color:#0f172a;word-break:break-word;margin:0;font-size:15px;font-weight:750;line-height:1.35}.fleet-dispatch-content{flex-direction:column;gap:2px;min-width:0;margin:2px 0 0;display:flex}.fleet-dispatch-content-label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;font-size:11px;font-weight:650}.fleet-dispatch-content .fleet-dispatch-order-note{color:#0f172a;white-space:pre-wrap;word-break:break-word;margin:0;font-size:13px;line-height:1.4}.fleet-dispatch-card-tags .fleet-dispatch-status{margin:0}.fleet-dispatch-status-fee{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.fleet-dispatch-status-fee .fleet-dispatch-fee{margin:0}.fleet-dispatch-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fleet-dispatch-pax-head{color:var(--fd-title,#475569);letter-spacing:.01em;justify-content:space-between;align-items:center;gap:8px;margin:2px 0 0;font-size:12px;font-weight:700;display:flex}.fleet-dispatch-pax-empty{margin:8px 0 0;font-size:13px;line-height:1.4}.fleet-dispatch-pax-n{background:var(--fd-chip-bg,#e2e8f0);min-width:20px;height:20px;color:var(--fd-chip-fg,#334155);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.fleet-dispatch-row{background:#ffffffd1;border:1px solid #0f172a0f;border-radius:8px;align-items:center;gap:6px;padding:5px 6px;display:flex}.fleet-dispatch-row.is-select{align-items:flex-start}.fleet-dispatch-row-check{flex:none;padding-top:2px}.fleet-dispatch-row-check input{width:18px;height:18px;accent-color:var(--fd-accent)}.fleet-dispatch-qty{background:var(--fd-chip-bg);width:22px;height:22px;color:var(--fd-chip-fg);border:1px solid color-mix(in srgb, var(--fd-accent) 28%, transparent);border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;font-size:12px;font-weight:750;display:inline-flex}.fleet-dispatch-row-body{flex:1;min-width:0}.fleet-dispatch-row-main{color:#334155;flex-wrap:wrap;align-items:center;gap:4px 6px;margin:0;font-size:13px;line-height:1.35;display:flex}.fleet-dispatch-point,.fleet-dispatch-name{color:#0f172a;font-weight:700}.fleet-dispatch-sep{color:#cbd5e1;font-weight:600}.fleet-dispatch-chip{color:#475569;background:#e2e8f0;border-radius:999px;align-items:center;padding:0 6px;font-size:11px;font-weight:650;line-height:1.5;display:inline-flex}.fleet-dispatch-chip.is-plate{color:#b91c1c;font-variant-numeric:tabular-nums;background:#fef2f2}.fleet-dispatch-extra{color:#64748b;font-size:12px}.fleet-dispatch-office{color:#334155;margin:0;font-size:12px;line-height:1.35}.fleet-dispatch-office strong{color:#0f172a;word-break:break-word;font-weight:650}.fleet-dispatch-phone{color:#2f80ed;font-weight:500;text-decoration:none}.fleet-dispatch-phone:hover{text-underline-offset:2px;text-decoration:underline}.fleet-dispatch-phone:active{opacity:.75}.fleet-form-panel .auth-form,.zalo-members-page .auth-form{flex-direction:column;gap:14px;margin-top:8px;display:flex}.fleet-form-panel .auth-form label.field,.zalo-members-page .auth-form label.field,.zalo-members-page label.field{color:var(--text,#111);flex-direction:column;gap:6px;width:100%;font-size:.8125rem;font-weight:600;display:flex}.fleet-form-panel .auth-form label.field>span,.zalo-members-page label.field>span{line-height:1.35;display:block}.fleet-form-panel .auth-form input,.fleet-form-panel .auth-form select,.fleet-form-panel .auth-form textarea,.zalo-members-page .auth-form input,.zalo-members-page .auth-form select,.zalo-members-page .auth-form textarea,.zalo-members-page label.field input,.zalo-members-page label.field select,.zalo-members-page label.field textarea{box-sizing:border-box;border-radius:var(--radius-md,12px);border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);width:100%;font:inherit;min-height:48px;color:var(--text,#111);padding:12px 14px;font-size:.9375rem;font-weight:400;line-height:1.35;transition:border-color .15s,box-shadow .15s}.fleet-form-panel .auth-form textarea,.zalo-members-page label.field textarea{resize:vertical;min-height:72px}.fleet-form-panel .auth-form input:focus,.fleet-form-panel .auth-form select:focus,.fleet-form-panel .auth-form textarea:focus,.zalo-members-page .auth-form input:focus,.zalo-members-page .auth-form select:focus,.zalo-members-page .auth-form textarea:focus,.zalo-members-page label.field input:focus,.zalo-members-page label.field select:focus,.zalo-members-page label.field textarea:focus{border-color:var(--primary,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary,#2563eb) 18%, transparent);outline:none}.fleet-field-row{gap:10px;width:100%;display:grid}.fleet-field-row-phone-qty{grid-template-columns:minmax(0,7fr) minmax(0,3fr)}.fleet-field-row-half{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.fleet-field-row .field{min-width:0}.fleet-dispatch-form-page .fleet-form-panel{border-radius:10px;margin:6px 10px;padding:8px 10px}.fleet-dispatch-form-page .fleet-form-panel h2{margin:0;font-size:.875rem;font-weight:700}.fleet-dispatch-form-page .fleet-form-panel-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.fleet-dispatch-form-page .fleet-form-hint{margin:0 0 4px;font-size:.75rem}.fleet-dispatch-form-page .fleet-form-panel .auth-form .field{flex-direction:column;gap:6px;margin-bottom:4px;display:flex}.fleet-dispatch-form-page .fleet-form-panel .auth-form .field>span{color:var(--muted,#64748b);font-size:.6875rem;font-weight:600;line-height:1.2}.fleet-choice-row{flex-wrap:wrap;gap:8px;display:flex}.fleet-choice-btn{appearance:none;color:#0f172a;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:8px 12px;font-size:.8125rem;font-weight:600;line-height:1.2}.fleet-choice-btn.is-active{color:#0f766e;background:#ecfdf5;border-color:#0f766e;box-shadow:inset 0 0 0 1px #0f766e}.fleet-office-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.fleet-office-item{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.fleet-office-item.is-default{background:#f0fdfa;border-color:#99f6e4}.fleet-office-row{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.fleet-office-main{flex-direction:column;flex:auto;gap:2px;min-width:0;font-size:14px;line-height:1.35;display:flex}.fleet-office-main strong{color:#0f172a;font-size:13px}.fleet-office-badge{letter-spacing:.04em;text-transform:uppercase;color:#0f766e;background:#0f766e1a;border-radius:999px;align-self:flex-start;margin-bottom:2px;padding:2px 6px;font-size:10px;font-weight:800}.fleet-office-actions{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;align-items:center;gap:4px;display:flex}.fleet-office-btn{color:#334155;width:auto;font:inherit;white-space:nowrap;cursor:pointer;background:#f1f5f9;border:1px solid #0000;border-radius:999px;margin:0;padding:6px 10px;font-size:12px;font-weight:700;line-height:1.2}.fleet-office-btn:disabled{opacity:.55;cursor:not-allowed}.fleet-office-btn:active:not(:disabled){transform:scale(.97)}.fleet-office-btn-edit{color:#0369a1;background:#0369a11a}.fleet-office-btn-danger{color:#b91c1c;background:#b91c1c14}.fleet-office-btn-muted{color:#475569;background:#f1f5f9}.fleet-office-btn-primary{color:#fff;background:var(--primary);border-color:var(--primary)}.fleet-office-btn-add,.fleet-office-btn-save{border-radius:12px;width:100%;margin-top:4px;padding:11px 14px;font-size:14px}.fleet-office-add{padding-top:4px}@media (max-width:420px){.fleet-office-row{flex-direction:column;align-items:stretch}.fleet-office-actions{justify-content:flex-start}}.fleet-airport-price{margin:2px 0 8px;font-size:.875rem}.fleet-airport-price strong{font-variant-numeric:tabular-nums}.fleet-dispatch-form-page .fleet-form-panel .auth-form{gap:5px;margin-top:0}.fleet-dispatch-form-page .fleet-form-panel .auth-form label.field{gap:1px;font-size:.6875rem;font-weight:600;line-height:1.2}.fleet-dispatch-form-page .fleet-form-panel .auth-form label.field>span{line-height:1.2}.fleet-dispatch-form-page .fleet-form-panel .auth-form label.field input,.fleet-dispatch-form-page .fleet-form-panel .auth-form label.field select{border-radius:6px;height:32px;min-height:32px;max-height:32px;padding:4px 8px;font-size:.875rem;line-height:1.2}.fleet-dispatch-form-page .fleet-form-panel .auth-form label.field textarea.fleet-airport-note{resize:none;field-sizing:content;border-radius:6px;height:auto;min-height:56px;max-height:none;padding:8px 10px;font-size:.875rem;line-height:1.4;overflow-y:hidden}.fleet-dispatch-form-page .fleet-form-panel .auth-form input[type=number]{text-align:center;padding-inline:4px}.fleet-dispatch-form-page .fleet-form-panel .auth-form input::placeholder{color:var(--muted,#94a3b8);font-size:.8125rem}.fleet-dispatch-form-page .fleet-field-row{gap:6px}.fleet-passenger-more-link{color:var(--primary,#0b6bcb);font:inherit;cursor:pointer;text-align:left;background:0 0;border:none;align-self:flex-start;align-items:center;margin:2px 0 0;padding:0;font-size:.8125rem;font-weight:600;display:inline-flex}.fleet-passenger-more-link:active{opacity:.75}.fleet-passenger-extra{gap:inherit;border-top:1px dashed color-mix(in srgb, var(--cp-line,#e2e8f0) 90%, transparent);margin-top:2px;padding-top:6px;display:grid}.fleet-dispatch-form-page .fleet-form-actions{padding-bottom:env(safe-area-inset-bottom,0);gap:6px;margin:6px 10px 10px;display:grid}.fleet-dispatch-form-page .fleet-form-btn{border-radius:8px;width:100%;min-height:36px;padding:8px 12px;font-size:.875rem;font-weight:600}.fleet-dispatch-form-page .form-error{margin:0;font-size:.8125rem}.zalo-members-page label.field input:focus,.zalo-members-page label.field select:focus,.zalo-members-page label.field textarea:focus{border-color:var(--primary,#0b6bcb);box-shadow:0 0 0 3px color-mix(in srgb, var(--primary,#0b6bcb) 16%, transparent);outline:none}.member-profile-wallet-value.is-debt,.member-agent-metric strong.is-debt{color:#c0392b}.member-agent-metric strong.is-ok{color:#0b6bcb}.fleet-room-list-page .fleet-dispatch-strip{margin:0 12px 8px}.fleet-dispatch-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.fleet-dispatch-card{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);color:var(--text,#111);border-radius:12px;flex-direction:column;justify-content:center;gap:2px;min-height:56px;padding:12px 10px;text-decoration:none;display:flex}.fleet-dispatch-card:hover{border-color:color-mix(in srgb, var(--primary,#0b6bcb) 40%, var(--border,#e5e7eb))}.fleet-dispatch-card strong{font-size:13px;font-weight:650;line-height:1.25}.fleet-dispatch-card span{color:var(--muted,#6b7280);font-size:11px}.fleet-order-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.fleet-order-list li a,.fleet-order-list li{color:inherit;border-bottom:1px solid var(--border,#e5e7eb);flex-direction:column;gap:2px;padding:10px 0;text-decoration:none;display:flex}.fleet-order-list span{color:var(--muted,#6b7280);font-size:12px}.fleet-orders-page .fleet-orders-sub{color:#ffffffe0;margin:2px 0 0;font-size:12px;font-weight:400;line-height:1.3}.fleet-orders-page .zalo-page-header,.fleet-room-list-page .zalo-page-header{padding:max(8px, env(safe-area-inset-top)) 12px 10px;box-shadow:0 2px 8px #0050c81f}.fleet-orders-page .zalo-page-header h1,.fleet-room-list-page .zalo-page-header h1{font-size:1.0625rem;font-weight:700;line-height:1.25}.fleet-orders-create{margin:10px 12px 14px}.fleet-orders-create-title{color:var(--muted,#4b5563);letter-spacing:.01em;margin:0 0 8px;font-size:13px;font-weight:700}.fleet-orders-create-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fleet-orders-create-card{color:var(--text,#111);border:1px solid #0000;border-radius:14px;flex-direction:column;justify-content:center;gap:4px;min-height:72px;padding:14px 12px;text-decoration:none;transition:transform .12s,box-shadow .12s;display:flex;box-shadow:0 1px 2px #0f172a0a}.fleet-orders-create-card:active{transform:scale(.98)}.fleet-orders-create-card strong{font-size:14px;font-weight:700;line-height:1.25}.fleet-orders-create-card span{color:var(--muted,#6b7280);font-size:12px;line-height:1.3}.fleet-orders-create-card.tone-pickup-city{background:linear-gradient(160deg,#ecfdf5 0%,#fff 70%);border-color:#a7f3d0}.fleet-orders-create-card.tone-dropoff-city{background:linear-gradient(160deg,#fff7ed 0%,#fff 70%);border-color:#fdba74}.fleet-orders-create-card.tone-send-airport{background:linear-gradient(160deg,#eff6ff 0%,#fff 70%);border-color:#93c5fd}.fleet-orders-create-card.tone-pickup-airport{background:linear-gradient(160deg,#f5f3ff 0%,#fff 70%);border-color:#c4b5fd}.fleet-orders-period{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:8px 12px 12px;display:flex}.fleet-orders-period-tabs{border:1px solid var(--border,#e5e7eb);border-radius:10px;flex:100%;gap:0;display:flex;overflow:hidden}.fleet-orders-period-tabs button{background:var(--surface,#fff);color:var(--muted,#6b7280);cursor:pointer;white-space:nowrap;border:0;flex:1;padding:8px 10px;font-size:13px;font-weight:600}.fleet-orders-period-tabs button.is-active{background:var(--primary,#0b6bcb);color:#fff}.fleet-orders-period-field{color:var(--muted,#6b7280);flex-direction:column;gap:4px;font-size:12px;display:flex}.fleet-orders-period-field input{border:1px solid var(--border,#e5e7eb);border-radius:8px;min-height:36px;padding:6px 10px;font-size:14px}.fleet-orders-period-range{flex-wrap:wrap;flex:auto;gap:10px;display:flex}.fleet-orders-period-actions{flex-wrap:wrap;flex:none;align-self:flex-end;gap:8px;margin-left:auto;display:flex}.fleet-orders-export-pdf{appearance:none;color:#fff;cursor:pointer;white-space:nowrap;background:#0f766e;border:1px solid #0f766e;border-radius:8px;min-height:36px;margin:0;padding:0 14px;font-size:13px;font-weight:600;line-height:1}.fleet-orders-export-pdf:hover:not(:disabled){background:#0d9488;border-color:#0d9488}.fleet-orders-export-pdf:disabled{opacity:.6;cursor:not-allowed}.fleet-orders-refresh{appearance:none;border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);min-height:36px;color:var(--primary,#0b6bcb);cursor:pointer;white-space:nowrap;border-radius:8px;flex:none;align-self:flex-end;margin:0;padding:0 14px;font-size:13px;font-weight:600;line-height:1}.fleet-orders-refresh:hover{background:#eff6ff;border-color:#93c5fd}.fleet-orders-refresh:active{background:#dbeafe}.fleet-orders-type-filters{flex-wrap:wrap;flex:100%;gap:6px;display:flex}.fleet-orders-type-filters button{border:1px solid var(--border,#e5e7eb);background:var(--surface,#fff);color:var(--muted,#6b7280);cursor:pointer;border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600}.fleet-orders-type-filters button.is-active{border-color:var(--primary,#0b6bcb);color:var(--primary,#0b6bcb);background:#eff6ff}.fleet-orders-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin:0 12px 12px;display:grid}.fleet-orders-stat{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);text-align:center;border-radius:12px;flex-direction:column;gap:2px;padding:10px 8px;display:flex}.fleet-orders-stat-debt{background:#fff7f7;border-color:#fecaca;grid-column:1/-1}.fleet-orders-stat-debt .is-debt{color:#b91c1c}.fleet-orders-stat strong{color:var(--text,#111);font-size:20px;font-weight:700;line-height:1.2}.fleet-orders-stat span{color:var(--text,#374151);font-size:11px;font-weight:600}.fleet-orders-stat em{color:var(--muted,#6b7280);font-size:10px;font-style:normal;line-height:1.35}.fleet-orders-history{flex-direction:column;gap:10px;margin:0 12px 24px;padding:0;list-style:none;display:flex}.fleet-orders-history-item{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:12px;flex-direction:column;gap:8px;padding:12px;display:flex}.operator-fleet-org-card .operator-fleet-ledger-btn{color:#1d4ed8;text-align:center;cursor:pointer;background:#eff6ff;border:1px solid #dbeafe;border-radius:10px;width:100%;margin:0;padding:10px 12px;font-size:13px;font-weight:700;display:block}.operator-fleet-org-card .operator-fleet-ledger-btn:active{background:#dbeafe}.operator-fleet-wallet-summary{color:#334155;background:#f8fafc;border-radius:10px;margin:0 0 10px;padding:8px 10px;font-size:13px}.operator-fleet-wallet-summary .is-debt{color:#dc2626;font-weight:700}.fleet-orders-history-main{color:inherit;flex-direction:column;gap:4px;text-decoration:none;display:flex}.fleet-orders-history-top{justify-content:space-between;align-items:center;gap:8px;display:flex}.fleet-orders-history-top strong{font-size:15px}.fleet-orders-status{color:#4b5563;background:#f3f4f6;border-radius:999px;flex:none;padding:3px 8px;font-size:11px;font-weight:700}.fleet-orders-status.status-posted,.fleet-orders-status.status-waiting{color:#1d4ed8;background:#eff6ff}.fleet-orders-status.status-dispatching{color:#b45309;background:#fef3c7}.fleet-orders-status.status-assigned{color:#047857;background:#ecfdf5}.fleet-orders-status.status-in_progress{color:#4338ca;background:#e0e7ff}.fleet-orders-status.status-completed{color:#15803d;background:#f0fdf4}.fleet-orders-status.status-draft{color:#c2410c;background:#fff7ed}.fleet-orders-status.status-cancelled{color:#6b7280;background:#f3f4f6}.fleet-orders-history-meta{color:var(--text,#374151);margin:0;font-size:13px}.fleet-orders-volume{color:var(--primary,#0b6bcb);font-weight:700}.fleet-orders-history-by{margin:0;font-size:12px}.fleet-orders-history-driver{color:#0f4c81;margin:0;font-size:13px;font-weight:600}.fleet-orders-history-debt{margin:0;font-size:13px;font-weight:600}.fleet-orders-history-debt .is-debt{color:#b91c1c}.fleet-orders-vehicle{color:#1e3a5f;font-weight:600}.fleet-orders-copy-code{text-align:left;cursor:pointer;color:#1e3a5f;background:#f8fbff;border:1px dashed #bfdbfe;border-radius:10px;align-items:center;gap:8px;width:100%;margin:0;padding:8px 10px;display:flex}.fleet-orders-copy-code:active{background:#eff6ff}.fleet-orders-copy-label{color:var(--muted,#6b7280);flex:none;font-size:11px;font-weight:600}.fleet-orders-copy-code strong{letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13px;font-weight:700;overflow:hidden}.fleet-orders-copy-code em{color:var(--primary,#0b6bcb);flex:none;font-size:11px;font-style:normal;font-weight:700}.fleet-dispatch-detail-page .fleet-detail-card{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:14px;flex-direction:column;gap:12px;margin:12px;padding:14px;display:flex}.op-fleet-detail-page{background:#f3f5f8;min-height:100%;padding-bottom:24px}.op-fleet-detail-body{flex-direction:column;gap:10px;padding:12px;display:flex}.op-fleet-detail-card{background:#fff;border:1px solid #e6ebf2;border-radius:14px;padding:14px 14px 12px;box-shadow:0 1px 2px #0f172a0a}.op-fleet-detail-tags{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.op-fleet-detail-chip{border-radius:999px;align-items:center;padding:4px 10px;font-size:12px;font-weight:700;line-height:1.2;display:inline-flex}.op-fleet-detail-chip.is-type{color:#1d4ed8;background:#eff6ff}.op-fleet-detail-chip.is-soft{color:#475569;background:#f1f5f9}.op-fleet-detail-chip.is-status{color:#64748b;background:#f1f5f9}.op-fleet-detail-chip.is-status.status-completed{color:#047857;background:#ecfdf5}.op-fleet-detail-chip.is-status.status-assigned,.op-fleet-detail-chip.is-status.status-in_progress{color:#4338ca;background:#eef2ff}.op-fleet-detail-chip.is-status.status-waiting,.op-fleet-detail-chip.is-status.status-posted,.op-fleet-detail-chip.is-status.status-dispatching{color:#c2410c;background:#fff7ed}.op-fleet-detail-chip.is-status.status-cancelled,.op-fleet-detail-chip.is-status.status-draft{color:#64748b;background:#f1f5f9}.op-fleet-detail-title{letter-spacing:-.02em;color:#0f172a;margin:0;font-size:1.375rem;font-weight:750}.op-fleet-detail-when{color:#64748b;margin:4px 0 0;font-size:13px}.op-fleet-detail-section-title{color:#0f172a;margin:0 0 10px;font-size:13px;font-weight:700}.op-fleet-detail-meta{border-top:1px solid #eef2f7;flex-direction:column;gap:0;margin-top:12px;display:flex}.op-fleet-detail-row{border-bottom:1px solid #eef2f7;grid-template-columns:108px minmax(0,1fr);align-items:start;gap:10px;padding:10px 0;display:grid}.op-fleet-detail-row:last-child{border-bottom:none;padding-bottom:2px}.op-fleet-detail-label{color:#94a3b8;padding-top:1px;font-size:12px;font-weight:600;line-height:1.35}.op-fleet-detail-value{color:#0f172a;word-break:break-word;font-size:14px;font-weight:600;line-height:1.4}.op-fleet-detail-images-block{border-top:1px solid #eef2f7;margin-top:12px;padding-top:4px}.op-fleet-detail-pax-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.op-fleet-detail-pax-head .op-fleet-detail-section-title{margin:0}.op-fleet-detail-pax-n{color:#1d4ed8;background:#eff6ff;border-radius:999px;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 7px;font-size:12px;font-weight:750;display:inline-flex}.op-fleet-detail-pax-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.op-fleet-detail-pax-list li{background:#f8fafc;border:1px solid #eef2f7;border-radius:12px;padding:10px 12px}.op-fleet-detail-pax-main{flex-wrap:wrap;align-items:baseline;gap:6px 10px;display:flex}.op-fleet-detail-pax-main strong{color:#0f172a;font-size:14px;font-weight:700}.op-fleet-detail-pax-main span{color:#334155;font-size:13px;font-weight:600}.op-fleet-detail-pax-sub{color:#64748b;margin:4px 0 0;font-size:12px}.op-fleet-detail-empty{color:#94a3b8;margin:0;font-size:13px}.op-fleet-detail-banner{text-align:center;border-radius:12px;margin:0 12px;padding:10px 12px;font-size:13px;font-weight:650}.op-fleet-detail-banner.is-cancelled{color:#475569;background:#f1f5f9}.fleet-detail-card-head{flex-direction:column;gap:6px;display:flex}.fleet-detail-card-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fleet-detail-type{color:#1d4ed8;background:#eff6ff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.fleet-detail-status{color:#4b5563;background:#f3f4f6;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700}.fleet-detail-status.status-posted,.fleet-detail-status.status-waiting{color:#1d4ed8;background:#eff6ff}.fleet-detail-status.status-dispatching{color:#b45309;background:#fef3c7}.fleet-detail-status.status-assigned{color:#047857;background:#ecfdf5}.fleet-detail-status.status-in_progress{color:#4338ca;background:#e0e7ff}.fleet-detail-status.status-completed{color:#15803d;background:#f0fdf4}.fleet-detail-status.status-draft{color:#c2410c;background:#fff7ed}.fleet-detail-status.status-cancelled{color:#6b7280;background:#f3f4f6}.fleet-detail-volume{color:var(--text,#111);margin:0;font-size:22px;font-weight:750}.fleet-detail-when,.fleet-detail-by{color:var(--muted,#6b7280);margin:0;font-size:13px}.fleet-detail-driver{color:#0f4c81;margin:4px 0 0;font-size:14px;font-weight:650}.fleet-detail-fields{flex-direction:column;gap:8px;margin:0;display:flex}.fleet-detail-fields>div{flex-direction:column;gap:2px;display:flex}.fleet-detail-fields dt{color:var(--muted,#6b7280);text-transform:uppercase;letter-spacing:.02em;font-size:11px;font-weight:650}.fleet-detail-fields dd{color:var(--text,#111);margin:0;font-size:14px}.fleet-detail-pax-head{justify-content:space-between;align-items:center;font-size:13px;font-weight:700;display:flex}.fleet-detail-pax-n{color:#1d4ed8;background:#eff6ff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:12px;display:inline-flex}.fleet-detail-pax-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fleet-detail-pax-list li{border:1px solid var(--border,#e5e7eb);background:#f8fafc;border-radius:10px;flex-direction:column;gap:2px;padding:10px;display:flex}.fleet-detail-pax-list strong{font-size:14px}.fleet-detail-pax-list span{color:var(--muted,#6b7280);font-size:12px}.fleet-detail-banner{border-radius:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:600}.fleet-detail-banner.is-cancelled{color:#4b5563;background:#f3f4f6}.fleet-detail-banner.is-locked{color:#c2410c;background:#fff7ed}.fleet-detail-actions{flex-flow:wrap;align-items:stretch;gap:8px;margin:0 12px 24px;display:flex}.fleet-detail-actions .btn-primary,.fleet-detail-actions .btn-outline{flex:calc(50% - 4px);justify-content:center;align-items:center;width:auto;min-width:0;min-height:34px;padding:6px 10px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.fleet-detail-actions>.btn-primary:only-child{flex:100%}.fleet-detail-revoke{color:#b91c1c;border-color:#fca5a5}.fleet-room-order-actions{flex-direction:row;gap:8px;margin-top:8px;display:flex}.fleet-room-order-btn{flex:1;min-width:0;min-height:34px;padding:6px 10px;font-size:13px;font-weight:650}.fleet-menu-row{border-bottom:1px solid var(--border,#e5e7eb);color:var(--text,#111);padding:12px 0;font-weight:600;text-decoration:none;display:block}.fleet-menu-row:last-child{border-bottom:none}.zalo-members-page .panel{background:var(--surface,#fff);border:1px solid var(--border,#e5e7eb);border-radius:14px;margin:12px;padding:14px 16px}.zalo-members-page .panel h2{margin:0 0 10px;font-size:16px}.zalo-members-page .muted,.fleet-room-list-page .muted{color:var(--muted,#6b7280);font-size:13px}.fleet-jobs-panel{flex-direction:column;gap:12px;width:100%;min-width:0;display:flex}.fleet-jobs-subtabs{gap:8px;padding:0 2px;display:flex}.fleet-jobs-subtab{color:#64748b;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:6px;min-height:40px;padding:8px 12px;font-size:14px;font-weight:700;display:inline-flex}.fleet-jobs-subtab.active{border-color:color-mix(in srgb, var(--primary) 35%, #e2e8f0);background:color-mix(in srgb, var(--primary) 10%, #fff);color:var(--primary-deep,#1d4ed8)}.fleet-jobs-subtab-count{color:#334155;background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.fleet-jobs-subtab.active .fleet-jobs-subtab-count{background:color-mix(in srgb, var(--primary) 18%, #fff);color:var(--primary-deep,#1d4ed8)}.fleet-jobs-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.fleet-jobs-card{box-sizing:border-box;border:1px solid var(--fd-border,#e2e8f0);border-left:4px solid var(--fd-accent,#64748b);background:var(--fd-bg,#f8fafc);border-radius:12px;flex-direction:column;gap:10px;width:100%;padding:10px 10px 12px;display:flex}.fleet-jobs-card-room{gap:8px;padding:8px 8px 12px}.fleet-jobs-org{color:#475569;margin:0;padding:0 2px;font-size:12px;font-weight:600;line-height:1.35}.fleet-jobs-org-name{color:#0f172a;font-weight:700}.fleet-jobs-card-room .fleet-dispatch-card-feed,.fleet-jobs-summary{margin:0}.fleet-jobs-card-fallback{flex-direction:column;gap:6px;display:flex}.fleet-jobs-card.tone-pickup-city{--fd-accent:#0d9488;--fd-bg:#f0fdfa;--fd-border:#99f6e4;--fd-title:#0f766e;--fd-chip-bg:#ccfbf1;--fd-chip-fg:#0f766e}.fleet-jobs-card.tone-dropoff-city{--fd-accent:#d97706;--fd-bg:#fffbeb;--fd-border:#fde68a;--fd-title:#b45309;--fd-chip-bg:#fef3c7;--fd-chip-fg:#b45309}.fleet-jobs-card.tone-pickup-airport{--fd-accent:#2563eb;--fd-bg:#eff6ff;--fd-border:#bfdbfe;--fd-title:#1d4ed8;--fd-chip-bg:#dbeafe;--fd-chip-fg:#1d4ed8}.fleet-jobs-card.tone-send-airport{--fd-accent:#e11d48;--fd-bg:#fff1f2;--fd-border:#fecdd3;--fd-title:#be123c;--fd-chip-bg:#ffe4e6;--fd-chip-fg:#be123c}.fleet-jobs-card.tone-other{--fd-accent:#64748b;--fd-bg:#f8fafc;--fd-border:#e2e8f0;--fd-title:#334155;--fd-chip-bg:#e2e8f0;--fd-chip-fg:#475569}.fleet-jobs-card-head{flex-direction:column;gap:4px;min-width:0;display:flex}.fleet-jobs-card-tags{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fleet-jobs-type,.fleet-jobs-slot,.fleet-jobs-done-badge{border-radius:999px;align-items:center;padding:3px 8px;font-size:11px;font-weight:750;display:inline-flex}.fleet-jobs-type{background:var(--fd-chip-bg);color:var(--fd-chip-fg)}.fleet-jobs-slot{color:#475569;background:#0f172a0f;font-weight:650}.fleet-jobs-done-badge{color:#15803d;background:#dcfce7}.fleet-jobs-title{color:var(--fd-title);word-break:break-word;margin:2px 0 0;font-size:14px;font-weight:800;line-height:1.3}.fleet-jobs-route{color:#334155;word-break:break-word;margin:0;font-size:13px;font-weight:600;line-height:1.35}.fleet-jobs-meta{color:#64748b;margin:0;font-size:12px;line-height:1.35}.fleet-jobs-pax-block{flex-direction:column;gap:6px;display:flex}.fleet-jobs-pax-head{color:var(--fd-title,#475569);justify-content:space-between;align-items:center;gap:8px;font-size:12px;font-weight:700;display:flex}.fleet-jobs-pax-n{background:var(--fd-chip-bg,#e2e8f0);min-width:20px;height:20px;color:var(--fd-chip-fg,#334155);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.fleet-jobs-pax-list{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.fleet-jobs-pax{background:#ffffffd9;border:1px solid #0f172a0f;border-radius:8px;align-items:center;gap:6px;padding:6px 8px;display:flex}.fleet-jobs-qty{background:var(--fd-chip-bg);width:22px;height:22px;color:var(--fd-chip-fg);border:1px solid color-mix(in srgb, var(--fd-accent) 28%, transparent);border-radius:6px;flex:0 0 22px;justify-content:center;align-items:center;font-size:12px;font-weight:750;display:inline-flex}.fleet-jobs-pax-line{color:#334155;flex-wrap:wrap;flex:1;align-items:center;gap:4px 6px;min-width:0;margin:0;font-size:13px;line-height:1.35;display:flex}.fleet-jobs-point{color:#0f172a;font-weight:700}.fleet-jobs-sep{color:#cbd5e1;font-weight:600}.fleet-jobs-chip{color:#475569;background:#e2e8f0;border-radius:999px;align-items:center;padding:0 6px;font-size:11px;font-weight:650;line-height:1.5;display:inline-flex}.fleet-jobs-chip.is-plate{color:#b91c1c;font-variant-numeric:tabular-nums;background:#fef2f2}.fleet-jobs-extra{color:#64748b;font-size:12px}.fleet-jobs-empty-pax{color:#64748b;margin:0;font-size:13px}.fleet-jobs-complete-btn{background:var(--fd-accent,var(--primary));color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;min-height:44px;padding:10px 14px;font-size:14px;font-weight:750}.fleet-jobs-support-btn{border:1.5px solid var(--fd-accent,var(--primary));width:100%;min-height:42px;color:var(--fd-accent,var(--primary));cursor:pointer;background:#fff;border-radius:10px;margin-bottom:8px;padding:10px 14px;font-size:14px;font-weight:700}.fleet-jobs-support-btn:disabled{opacity:.65;cursor:wait}.fleet-jobs-support-error{margin:0 0 8px;font-size:13px}.fleet-jobs-complete-btn:disabled{opacity:.65;cursor:wait}.fleet-jobs-complete-btn:not(:disabled):active{filter:brightness(.95)}.a2hs-banner{background:linear-gradient(135deg,#e8f1ff 0%,#f0f7ff 100%);border:1px solid #c5dbff;border-radius:12px;align-items:stretch;gap:4px;margin:8px 12px 0;padding:0;display:flex;overflow:hidden}.a2hs-banner-main{text-align:left;cursor:pointer;min-width:0;font:inherit;color:inherit;background:0 0;border:none;flex:1;align-items:center;gap:10px;padding:10px 12px;display:flex}.a2hs-banner-main:disabled{opacity:.7;cursor:wait}.a2hs-banner-icon{color:#fff;background:#0068ff;border-radius:10px;flex-shrink:0;place-items:center;width:36px;height:36px;display:grid}.a2hs-banner-text{flex-direction:column;gap:2px;min-width:0;display:flex}.a2hs-banner-text strong{color:#0f172a;font-size:13px;font-weight:700;line-height:1.25}.a2hs-banner-text span{color:#64748b;font-size:11px;line-height:1.3}.a2hs-banner-close{color:#94a3b8;cursor:pointer;background:0 0;border:none;flex-shrink:0;width:40px;font-size:22px;line-height:1}.a2hs-banner-close:active{color:#475569}.a2hs-sheet-backdrop{z-index:calc(var(--zalo-bottom-nav-z,100) + 200);box-sizing:border-box;background:#0f172a73;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}body.a2hs-sheet-open .zalo-bottom-nav{visibility:hidden;pointer-events:none}.a2hs-sheet{width:min(420px,100%);max-height:min(85dvh,100dvh - 24px);padding:20px 18px max(20px, calc(var(--safe-bottom,0px) + 12px));background:#fff;border-radius:16px 16px 12px 12px;overflow-y:auto;box-shadow:0 12px 40px #0f172a2e}.a2hs-sheet h3{color:#0f172a;margin:0 0 12px;font-size:17px;font-weight:750}.a2hs-steps{color:#334155;margin:0 0 16px;padding-left:1.2em;font-size:14px;line-height:1.55}.a2hs-steps li+li{margin-top:8px}.a2hs-sheet-ok{color:#fff;cursor:pointer;background:#0068ff;border:none;border-radius:12px;width:100%;min-height:44px;font-size:15px;font-weight:700}.a2hs-sheet-ok:active{filter:brightness(.95)}.driver-wallet-history-page{--dwh-green:#16a34a;--dwh-green-deep:#15803d;--dwh-mint:#dcfce7;--dwh-ink:#0f172a;isolation:isolate;background:radial-gradient(90% 48% at 12% -6%,#16a34a38,#0000 58%),radial-gradient(70% 42% at 96% 4%,#22c55e24,#0000 55%),radial-gradient(55% 36% at 78% 88%,#0ea5e914,#0000 60%),linear-gradient(#eefbf3 0%,#f4f7fb 42%,#eef2f7 100%);min-width:0;max-width:100%;padding-bottom:40px;position:relative;overflow-x:hidden}.driver-wallet-history-page:before{content:"";z-index:-1;pointer-events:none;background:linear-gradient(135deg,#16a34a2e,#16a34a05 55%,#0000),radial-gradient(120% 100% at 100% 0,#4ade8029,#0000 62%);height:168px;position:absolute;inset:0 0 auto}.driver-wallet-history-filters{box-sizing:border-box;overscroll-behavior-x:contain;touch-action:pan-x;-webkit-overflow-scrolling:touch;scrollbar-width:thin;flex-wrap:nowrap;gap:8px;width:100%;min-width:0;max-width:100%;padding:4px 16px 14px;display:flex;overflow:auto hidden}.driver-wallet-history-filters::-webkit-scrollbar{height:3px}.driver-wallet-history-filters::-webkit-scrollbar-thumb{background:#16a34a59;border-radius:999px}.driver-wallet-history-chip{-webkit-backdrop-filter:blur(10px);color:#334155;cursor:pointer;white-space:nowrap;background:#ffffffb8;border:1px solid #ffffffb3;border-radius:999px;flex:none;padding:8px 14px;font-size:13px;font-weight:650;transition:background .15s,color .15s,border-color .15s,transform .12s;box-shadow:0 1px 2px #0f172a0a}.driver-wallet-history-chip:active{transform:scale(.97)}.driver-wallet-history-chip.active{background:linear-gradient(135deg, var(--dwh-green) 0%, var(--dwh-green-deep) 100%);color:#fff;border-color:#0000;box-shadow:0 6px 14px #16a34a47}.driver-wallet-history-custom{-webkit-backdrop-filter:blur(12px);background:#ffffffe0;border:1px solid #ffffffe6;border-radius:16px;gap:10px;margin:0 16px 12px;padding:12px;display:grid;box-shadow:0 8px 24px #0f37280f}.driver-wallet-history-custom label{color:#475569;gap:4px;font-size:13px;font-weight:600;display:grid}.driver-wallet-history-custom input[type=date]{background:#fff;border:1px solid #d7e0ec;border-radius:10px;min-height:40px;padding:0 10px;font-size:14px}.driver-wallet-history-totals{grid-template-columns:1fr 1fr;gap:10px;margin:0 16px 14px;display:grid}.driver-wallet-history-totals.has-profit .is-profit{grid-column:1/-1}.driver-wallet-history-total{border:1px solid #ffffffbf;border-radius:16px;gap:2px;padding:14px 12px;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 22px #0f372812}.driver-wallet-history-total:after{content:"";opacity:.35;pointer-events:none;border-radius:50%;width:72px;height:72px;position:absolute;top:-22px;right:-18px}.driver-wallet-history-total.is-credit{background:linear-gradient(145deg,#dcfce7f2 0%,#ffffffeb 55%,#fff 100%)}.driver-wallet-history-total.is-credit:after{background:radial-gradient(circle,#16a34a73,#0000 70%)}.driver-wallet-history-total.is-debit{background:linear-gradient(145deg,#fee2e2eb 0%,#ffffffeb 55%,#fff 100%)}.driver-wallet-history-total.is-debit:after{background:radial-gradient(circle,#b91c1c59,#0000 70%)}.driver-wallet-history-total.is-profit{background:linear-gradient(145deg,#e0f2fef2 0%,#fffffff0 55%,#fff 100%)}.driver-wallet-history-total.is-profit:after{background:radial-gradient(circle,#0284c766,#0000 70%)}.driver-wallet-history-total span{color:#64748b;font-size:12px;font-weight:650;position:relative}.driver-wallet-history-total strong{letter-spacing:-.02em;font-size:18px;font-weight:800;position:relative}.driver-wallet-history-total em{color:#94a3b8;font-size:12px;font-style:normal;position:relative}.driver-wallet-history-total small{color:#64748b;margin-top:2px;font-size:11px;position:relative}.driver-wallet-history-total.is-credit strong{color:var(--dwh-green-deep)}.driver-wallet-history-total.is-debit strong{color:#b91c1c}.driver-wallet-history-total.is-profit strong{color:#0369a1}.driver-wallet-history-list{gap:8px;margin:0;padding:0 16px 24px;list-style:none;display:grid}.driver-wallet-history-card{-webkit-backdrop-filter:blur(8px);background:#ffffffe6;border:1px solid #fffffff2;border-radius:14px;gap:4px;padding:11px 12px 10px 14px;display:grid;position:relative;overflow:hidden;box-shadow:0 6px 18px #0f281e0d}.driver-wallet-history-card:before{content:"";background:#cbd5e1;border-radius:0 3px 3px 0;width:3px;position:absolute;top:10px;bottom:10px;left:0}.driver-wallet-history-card.is-credit:before{background:linear-gradient(180deg, #4ade80, var(--dwh-green-deep))}.driver-wallet-history-card.is-debit:before{background:linear-gradient(#f87171,#b91c1c)}.driver-wallet-history-row1{color:#64748b;flex-wrap:wrap;align-items:baseline;gap:6px 10px;font-size:12px;display:flex}.driver-wallet-history-row1 time{white-space:nowrap;font-variant-numeric:tabular-nums;flex:none}.driver-wallet-history-amt{flex-wrap:wrap;flex:auto;align-items:baseline;gap:4px 6px;min-width:0;display:inline-flex}.driver-wallet-history-amt strong{letter-spacing:-.02em;font-size:15px;font-weight:800}.driver-wallet-history-amt.credit strong{color:var(--dwh-green-deep)}.driver-wallet-history-amt.debit strong{color:#b91c1c}.driver-wallet-history-amt span{color:#94a3b8;font-size:12px}.driver-wallet-history-code{color:var(--dwh-green-deep);cursor:pointer;white-space:nowrap;background:linear-gradient(#f0fdf4,#ecfdf5);border:1px solid #16a34a2e;border-radius:8px;flex:none;margin-left:auto;padding:2px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;font-weight:700}.driver-wallet-history-code:active{filter:brightness(.97)}.driver-wallet-history-context{color:#1e293b;margin:0;font-size:13px;font-weight:650;line-height:1.35}.driver-wallet-history-meta{color:#64748b;flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:12px;display:flex}.driver-wallet-history-status{background:#f1f5f9;border-radius:999px;padding:1px 7px;font-weight:700}.driver-wallet-history-status.status-success{background:var(--dwh-mint);color:#166534}.driver-wallet-history-status.status-pending{color:#92400e;background:#fef3c7}.driver-wallet-history-status.status-failed{color:#991b1b;background:#fee2e2}.fleet-bus-setup{max-width:min(1080px,100%);margin:0 auto;padding:12px 16px 96px}.fleet-bus-setup-top h1{margin:8px 0 4px;font-size:1.35rem}.fleet-bus-setup-sub{color:#64748b;margin:0;font-size:.9rem}.fleet-bus-setup-back{color:#0f172a;font-weight:600;text-decoration:none}.fleet-bus-setup-progress{margin:16px 0 12px}.fleet-bus-setup-progress-bar{background:#e2e8f0;border-radius:999px;height:8px;overflow:hidden}.fleet-bus-setup-progress-bar>span{background:#0ea5e9;border-radius:999px;height:100%;transition:width .25s;display:block}.fleet-bus-setup-progress p{color:#475569;margin:8px 0 0;font-size:.85rem}.fleet-bus-setup-steps{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:8px;margin:0 0 16px;padding:0;list-style:none;display:grid}.fleet-bus-setup-step{text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:flex-start;gap:8px;width:100%;padding:10px;display:flex}.fleet-bus-setup-step.is-active{border-color:#0ea5e9;box-shadow:0 0 0 2px #0ea5e926}.fleet-bus-setup-step.is-done{background:#f0fdf4;border-color:#86efac}.fleet-bus-setup-step-num{background:#f1f5f9;border-radius:999px;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.fleet-bus-setup-step.is-done .fleet-bus-setup-step-num{color:#fff;background:#22c55e}.fleet-bus-setup-step-title{color:#0f172a;font-size:.78rem;font-weight:600;line-height:1.25}.fleet-bus-setup-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px}.fleet-bus-setup-panel h2{margin:0 0 6px;font-size:1.05rem}.fleet-bus-setup-form{flex-direction:column;gap:10px;margin-top:12px;display:flex}.fleet-bus-setup-form label{flex-direction:column;gap:4px;font-size:.88rem;font-weight:600;display:flex}.fleet-bus-setup-form input:not([type=checkbox]):not([type=radio]),.fleet-bus-setup-form select,.fleet-bus-setup-form textarea{font:inherit;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;font-weight:400}.fleet-bus-setup-form input[type=checkbox],.fleet-bus-setup-form input[type=radio]{width:16px;height:16px;accent-color:var(--primary,#0068ff);flex-shrink:0;margin:3px 0 0;padding:0}.bus-search-select{position:relative}.bus-search-select-input{box-sizing:border-box;width:100%;font:inherit}.bus-search-select-list{z-index:40;background:#fff;border:1px solid #cbd5e1;border-radius:10px;max-height:280px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 10px 28px #0f172a1f}.bus-search-select-item{text-align:left;width:100%;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:8px 10px;font-weight:500;display:block}.bus-search-select-item.is-hi,.bus-search-select-item:hover{background:#f1f5f9}.bus-search-select-item.is-active{color:#0369a1;background:#e0f2fe}.bus-search-select-empty{color:#64748b;padding:10px;font-size:.88rem;font-weight:500}.bus-search-select-item.is-create{color:#0369a1;font-weight:700}.fleet-bus-setup-stop-badge{color:#0369a1;background:#e0f2fe;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:11px;font-weight:700;display:inline-block}.fleet-bus-setup-check{color:#334155;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.fleet-bus-setup-form fieldset{border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.fleet-bus-setup-pay-methods{background:linear-gradient(160deg,#eff6ff 0%,#fff 60%);border-color:#93c5fd;flex-direction:column;gap:12px;padding:14px 16px;display:flex}.fleet-bus-setup-pay-methods legend{color:#1d4ed8;padding:0 4px;font-weight:700}.fleet-bus-pay-hint{margin:0;font-size:.84rem;line-height:1.45}.fleet-bus-pay-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.fleet-bus-pay-check{cursor:pointer;background:#fff;border:1px solid #bfdbfe;border-radius:10px;padding:10px 12px;flex-direction:row!important;align-items:flex-start!important;gap:10px!important;margin:0!important;font-weight:500!important;display:flex!important}.fleet-bus-pay-check:has(input:checked){background:#f8fafc;border-color:#2563eb;box-shadow:inset 0 0 0 1px #2563eb}.fleet-bus-pay-check input[type=checkbox]{margin:2px 0 0!important}.fleet-bus-pay-check span{color:#0f172a;font-size:.86rem;font-weight:500;line-height:1.35}.fleet-bus-pay-note{flex-direction:column;gap:6px;margin:0;display:flex}.fleet-bus-pay-note>span{color:#64748b;font-size:.82rem;font-weight:600}.fleet-bus-pay-note textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:4.5rem}@media (max-width:640px){.fleet-bus-pay-options{grid-template-columns:1fr}}.fleet-bus-cancel-hours{gap:8px;margin:8px 0 12px;display:grid}.fleet-bus-cancel-hours-row{background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px 8px;padding:8px 10px;font-size:.86rem;font-weight:600;display:flex}.fleet-bus-cancel-hours-row.is-free{background:#f0fdf4;border-color:#bbf7d0}.fleet-bus-cancel-hours-lead{color:#0f172a}.fleet-bus-cancel-hours-arrow{color:#94a3b8;font-weight:700}.fleet-bus-cancel-hours-free{color:#15803d;font-size:.9rem}.fleet-bus-cancel-hours-row input{max-width:4.8rem!important}.fleet-bus-cancel-hours-row em{color:#64748b;font-size:.82rem;font-style:normal;font-weight:500}.fleet-bus-cancel-hours-row button{color:#dc2626;cursor:pointer;background:0 0;border:0;padding:4px;font-size:.82rem;font-weight:700}.fleet-bus-cancel-hours-row .fleet-bus-cancel-hours-toggle{color:#2563eb;margin-left:auto}.fleet-bus-cancel-add{color:#2563eb;cursor:pointer;background:#fff;border:1px dashed #cbd5e1;border-radius:10px;padding:8px 10px;font-size:.84rem;font-weight:700}.fleet-bus-setup-time-pick{align-items:flex-end;gap:8px;max-width:280px;display:flex}.fleet-bus-setup-time-pick label{flex:1;min-width:0}.fleet-bus-setup-time-sep{color:#334155;font-size:1.35rem;font-weight:700;line-height:2.4}.fleet-bus-setup-split{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.fleet-bus-setup-split h3{margin:0 0 6px;font-size:.9rem}@media (max-width:640px){.fleet-bus-setup-split{grid-template-columns:1fr}}.fleet-bus-setup-check{align-items:center;gap:8px;margin:4px 0;flex-direction:row!important;font-weight:400!important;display:flex!important}.fleet-bus-setup-form .fleet-bus-setup-check label,.fleet-bus-setup-form .fleet-bus-setup-catalog-main,.fleet-bus-setup-form .fleet-bus-setup-default{flex-direction:row;align-items:flex-start;gap:8px;font-weight:500;display:flex}.fleet-bus-setup-catalog{flex-direction:column;gap:8px;margin-bottom:12px;display:flex}.fleet-bus-setup-catalog h3{margin:4px 0 0;font-size:.9rem}.fleet-bus-setup-catalog-filter{max-width:360px}.fleet-bus-setup-catalog-hint{max-width:64rem;margin:0;line-height:1.45}.fleet-bus-setup-catalog-list{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin:0;padding:0;list-style:none;overflow:hidden}.fleet-bus-setup-catalog-row{border-bottom:1px solid #e2e8f0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;margin:0;padding:10px 12px;display:grid}.fleet-bus-setup-catalog-row:last-child{border-bottom:0}.fleet-bus-setup-catalog-main{min-width:0}.fleet-bus-setup-catalog-main span{flex-direction:column;gap:2px;min-width:0;display:flex}.fleet-bus-setup-catalog-main strong{font-weight:650;line-height:1.35}.fleet-bus-setup-catalog-meta{color:#64748b;font-size:.8rem;font-weight:400;line-height:1.35}.fleet-bus-setup-catalog-meta.is-inline{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.fleet-bus-setup-default{white-space:nowrap;color:#334155;align-self:center;align-items:center;gap:4px;margin:0;font-size:.8rem;display:inline-flex}.fleet-bus-setup-default-slot{width:92px}.fleet-bus-setup-catalog-row.is-stack,.fleet-bus-setup-catalog-row.is-compact{flex-direction:column;align-items:stretch;gap:6px;padding:8px 10px;display:flex}.fleet-bus-setup-catalog-row.is-editing{background:#f8fbff;border-color:#93c5fd;box-shadow:inset 3px 0 #2563eb}.fleet-bus-setup-maps-missing{color:#b45309;font-weight:600}.fleet-bus-setup-stop-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.fleet-bus-setup-stop-info{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.fleet-bus-setup-stop-head>span{flex-direction:column;gap:2px;min-width:0;display:flex}.fleet-bus-setup-stop-order{color:#64748b;margin-right:4px;font-weight:700;display:inline}.fleet-bus-setup-stop-title{flex-wrap:wrap;align-items:center;gap:6px;font-size:.9rem;font-weight:700;line-height:1.3;display:flex}.fleet-bus-setup-stop-badge{color:#0369a1;background:#e0f2fe;border-radius:999px;align-items:center;padding:1px 6px;font-size:.68rem;font-weight:600;display:inline-flex}.fleet-bus-setup-stop-badge.is-new{color:#b45309;background:#fef3c7}.fleet-bus-setup-stop-actions{flex-wrap:wrap;flex:none;align-items:center;gap:4px;display:flex}.fleet-bus-setup-btn-icon{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:6px;min-width:28px;height:28px;padding:0 6px;font-size:.85rem;font-weight:700;line-height:1}.fleet-bus-setup-btn-icon:disabled{opacity:.4;cursor:not-allowed}.fleet-bus-setup-stop-ops-label{margin:0;font-size:.75rem;font-weight:600}.fleet-bus-setup-stop-ops{grid-template-columns:minmax(0,1.4fr) 88px minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.fleet-bus-setup-stop-ops.is-compact{flex-wrap:wrap;align-items:flex-end;gap:6px 8px;display:flex}.fleet-bus-setup-stop-op{flex-direction:column;gap:2px;min-width:0;margin:0;display:flex}.fleet-bus-setup-stop-op.is-mins{flex:0 0 64px;width:64px}.fleet-bus-setup-stop-op.is-fee{flex:0 0 100px;width:100px}.fleet-bus-setup-stop-op:not(.is-mins):not(.is-fee){flex:140px;max-width:200px}.fleet-bus-setup-stop-op-lbl{color:#64748b;font-size:.68rem;font-weight:600;line-height:1.2}.fleet-bus-setup-stop-ops.is-compact select,.fleet-bus-setup-stop-ops.is-compact input:not([type=checkbox]):not([type=radio]){min-height:32px;padding:4px 8px;font-size:.82rem}.fleet-bus-setup-check.is-inline{white-space:nowrap;align-self:center;align-items:center;gap:4px;margin:0;font-size:.8rem;display:inline-flex}.fleet-bus-setup-stop-ops label{margin:0}.fleet-bus-setup-new-stop{gap:8px;margin:0;display:grid}.fleet-bus-setup-new-stop.is-compact{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;gap:8px;padding:10px 12px 12px}.fleet-bus-setup-new-stop.is-compact>legend{color:#334155;padding:0 6px;font-size:.82rem;font-weight:700}.fleet-bus-setup-new-stop.is-compact>label,.fleet-bus-setup-new-grid>label{font-size:inherit;flex-direction:column;gap:2px;margin:0;font-weight:400;display:flex}.fleet-bus-setup-new-full{flex-direction:column;gap:2px;margin:0;display:flex}.fleet-bus-setup-new-grid{grid-template-columns:1fr 1fr;gap:6px 8px;display:grid}.fleet-bus-setup-new-span2{grid-column:1/-1}.fleet-bus-setup-new-flags{flex-wrap:wrap;align-items:center;gap:8px 14px;display:flex}.fleet-bus-setup-new-stop.is-compact select,.fleet-bus-setup-new-stop.is-compact input:not([type=checkbox]):not([type=radio]){min-height:34px;padding:5px 8px;font-size:.84rem}@media (max-width:720px){.fleet-bus-setup-stop-ops{grid-template-columns:1fr 1fr}.fleet-bus-setup-new-grid{grid-template-columns:1fr}}.fleet-bus-setup-list{margin:0;padding-left:18px;font-size:.9rem}.fleet-bus-setup-list.is-routes{margin-top:8px;padding-left:0;list-style:none}.fleet-bus-setup-list.is-schedules{gap:10px;margin:8px 0 0;padding-left:0;list-style:none;display:grid}.fleet-bus-setup-schedule-row{background:#fff;border:1px solid #e2e8f0;border-radius:12px;gap:6px;padding:10px 12px;display:grid}.fleet-bus-setup-schedule-route{color:#0f172a;font-size:.86rem;font-weight:650;line-height:1.35}.fleet-bus-setup-schedule-chips{flex-wrap:wrap;gap:6px;display:flex}.fleet-bus-setup-time-chip{color:#1d4ed8;font-variant-numeric:tabular-nums;background:#eff6ff;border:1px solid #bfdbfe;border-radius:999px;align-items:center;gap:2px;padding:3px 4px 3px 8px;font-size:.8rem;font-weight:700;display:inline-flex}.fleet-bus-setup-time-chip-x{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:999px;justify-content:center;align-items:center;width:22px;height:22px;margin:0;padding:0;font-size:1rem;line-height:1;display:inline-flex}.fleet-bus-setup-time-chip-x:hover:not(:disabled){color:#b91c1c;background:#fee2e2}.fleet-bus-setup-time-chip-x:disabled{opacity:.45;cursor:not-allowed}.fleet-bus-setup-route-row{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 0;display:flex}.fleet-bus-setup-route-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:8px;display:flex}.fleet-bus-setup-pub-badge{color:#94a3b8;font-weight:500}.fleet-bus-setup-pub-badge.is-on{color:#15803d}.fleet-bus-setup-btn-publish{color:#166534!important;background:#f0fdf4!important;border-color:#86efac!important}.fleet-bus-setup-btn-pause{color:#9a3412!important;background:#fff7ed!important;border-color:#fdba74!important}.fleet-bus-setup-publish-panel{border-top:1px solid #e2e8f0;margin-top:20px;padding-top:16px}.fleet-bus-setup-publish-panel h3{margin:0 0 6px;font-size:1rem}.fleet-bus-setup-route-row p{margin:0;font-weight:600}.fleet-bus-setup-route-row small{color:#64748b;margin-top:2px;font-weight:400;display:block}.fleet-bus-setup-btn-danger{color:#b91c1c!important;background:#fff!important;border-color:#fecaca!important}.fleet-bus-setup-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.fleet-bus-setup-actions>button,.fleet-bus-setup-nav>button,.fleet-bus-setup-btn{font:inherit;color:#0f172a;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:10px;flex:none;justify-content:center;align-items:center;padding:10px 16px;font-size:.9rem;font-weight:600;line-height:1.2;display:inline-flex;width:auto!important}.fleet-bus-setup-actions>button.btn-primary,.fleet-bus-setup-actions>button.admin-btn-primary{background:var(--primary,#0068ff);color:var(--on-primary,#fff);border:none}.fleet-bus-setup-actions>button:disabled,.fleet-bus-setup-nav>button:disabled,.fleet-bus-setup-btn:disabled{opacity:.45;cursor:not-allowed}.bus-amenity-icon{color:#0f172a;place-items:center;width:28px;height:28px;display:inline-grid}.bus-amenity-icon svg{width:22px;height:22px}.bus-vehicle-gallery-wrap{gap:10px;display:grid}.bus-vehicle-gallery-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bus-vehicle-gallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0;padding:0;list-style:none;display:grid}@media (max-width:720px){.bus-vehicle-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}.bus-vehicle-gallery-item{border:1px solid var(--bus-line,#e2e8f0);cursor:grab;background:#fff;border-radius:10px;width:auto;min-width:0;position:relative;overflow:hidden}.bus-vehicle-gallery-item:active{cursor:grabbing}.bus-vehicle-gallery-item img{aspect-ratio:4/3;object-fit:cover;pointer-events:none;width:100%;height:auto;display:block}.bus-vehicle-gallery-item.is-cover{outline:2px solid #0284c7}.bus-vehicle-gallery-item.is-drop-target{outline:2px dashed #0ea5e9}.bus-vehicle-gallery-cover{color:#fff;background:#0284c7;border-radius:999px;padding:2px 6px;font-size:.65rem;font-weight:700;position:absolute;top:6px;left:6px}.bus-vehicle-gallery-actions{flex-wrap:wrap;gap:4px;padding:4px;display:flex}.bus-vehicle-gallery-actions button{padding:2px 6px;font-size:.7rem}.bus-vehicle-gallery-dropzone{border:1px dashed var(--bus-line,#cbd5e1);text-align:center;color:#64748b;background:#f8fafc;border-radius:10px;padding:12px;font-size:.85rem}.bus-vehicle-gallery-picker-backdrop{z-index:80;background:#0f172a73;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;inset:0}@media (min-width:720px){.bus-vehicle-gallery-picker-backdrop{align-items:center}}.bus-vehicle-gallery-picker{background:#fff;border-radius:14px;gap:10px;width:min(480px,100%);max-height:min(85vh,640px);padding:12px 14px 14px;display:grid;overflow:auto;box-shadow:0 16px 40px #0f172a33}.bus-vehicle-gallery-picker-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.bus-vehicle-gallery-picker-head strong{font-size:.95rem}.bus-vehicle-gallery-picker-hint{margin:0;font-size:.8rem}.bus-vehicle-gallery-picker-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.bus-vehicle-gallery-picker-item{cursor:pointer;background:#f8fafc;border:2px solid #e2e8f0;border-radius:10px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.bus-vehicle-gallery-picker-item img{object-fit:cover;width:100%;height:72px;display:block}.bus-vehicle-gallery-picker-item.is-selected{border-color:#0284c7;outline:1px solid #0284c7}.bus-vehicle-gallery-picker-item:disabled{opacity:.45;cursor:not-allowed}.bus-vehicle-gallery-picker-check{color:#fff;background:#0284c7;border-radius:999px;place-items:center;width:1.25rem;height:1.25rem;font-size:.7rem;font-weight:700;line-height:1;display:grid;position:absolute;top:4px;right:4px}.bus-vehicle-gallery-picker-foot{justify-content:flex-end;display:flex}.fleet-bus-setup-fares h3{margin:0;font-size:1rem}.fleet-bus-fare-kind{border:1px solid #e2e8f0;border-radius:12px;gap:8px;margin:0 0 10px;padding:10px 12px 12px;display:grid}.fleet-bus-fare-kind legend{padding:0 4px;font-weight:700}.fleet-bus-fare-kind .fleet-bus-setup-check{margin:0;font-weight:700}.fleet-bus-fare-hint-row{flex-wrap:wrap;align-items:flex-end;gap:8px;display:flex}.fleet-bus-fare-hint-row input{width:72px}.bus-seat-label-editor{gap:10px;display:grid}.bus-seat-label-decks{flex-wrap:wrap;align-items:flex-start;gap:16px;display:flex}.bus-seat-label-deck{flex:none;min-width:0}.bus-seat-label-deck .bus-seat-grid{width:max-content;max-width:100%}.bus-seat-label-deck h4{margin:0 0 6px;font-size:.9rem}.bus-seat-label-deck-head{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;display:flex}.bus-seat-label-deck-head h4{margin:0}.bus-seat-label-affix{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.bus-seat-label-affix .bus-seat-label-field{min-width:120px}.bus-seat-label-affix .bus-seat-label-field:nth-child(2){max-width:140px}.bus-seat-label-editor .bus-seat.is-picked{outline-offset:1px;outline:2px solid #0ea5e9;font-weight:800;transform:scale(1.04)}.bus-seat-label-field{gap:4px;font-size:.9rem;display:grid}.bus-seat-label-field input,.bus-seat-label-field select{max-width:280px}.bus-seat-label-batch{border-top:1px dashed var(--bus-line,#e2e8f0);gap:10px;margin-top:4px;padding-top:10px;display:grid}.bus-seat-label-editor .ok{color:#15803d;margin:0}.fleet-bus-setup-live-row{border-bottom:1px solid #f1f5f9;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:8px 0;display:flex}.fleet-bus-setup-nav{border-top:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;margin-top:16px;padding-top:12px;display:flex}.fleet-bus-setup-ok{color:#166534;font-weight:600}.fleet-bus-setup-inline-ok{margin:8px 0 0}.bus-book{--bus-blue:#0068ff;--bus-blue-deep:#0052cc;--bus-cta:#f5c400;--bus-cta-text:#1a1a1a;--bus-bg:#eef2f7;--bus-card:#fff;--bus-muted:#64748b;--bus-line:#e2e8f0;background:var(--bus-bg);min-height:100%;padding-bottom:calc(96px + env(safe-area-inset-bottom));color:#0f172a;box-sizing:border-box;width:100%;max-width:100%;overflow-x:clip}.bus-book.is-home{background:linear-gradient(180deg, #0068ff 0%, #0068ff 112px, var(--bus-bg) 112px)}.bus-book-hero{color:#fff;padding:10px 16px 4px}.bus-book-hero-top{align-items:center;gap:10px;display:flex}.bus-book-hero-titles{flex:1;min-width:0}.bus-book-brand{letter-spacing:.08em;text-transform:uppercase;opacity:.85;margin:0;font-size:11px;font-weight:700;line-height:1.2}.bus-book-hero-title-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bus-book-hero h1{margin:1px 0 0;font-size:1.25rem;line-height:1.2}.bus-book-hero-chip{letter-spacing:.02em;background:#ffffff38;border-radius:999px;align-items:center;margin-top:1px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-flex}.bus-book-hero-sub{opacity:.92;margin:8px 0 0;font-size:.88rem}.bus-book-back,.bus-book-link{color:inherit;font:inherit;cursor:pointer;background:0 0;border:none;padding:2px;font-weight:700;text-decoration:none}.bus-book-link{color:var(--bus-blue);font-size:.78rem}.bus-book-bar .bus-book-back,.bus-book-bar .bus-book-link{color:#fff;font-size:.78rem}.bus-book-bar .bus-book-back{padding:0;font-size:1.05rem;line-height:1}.bus-book-bar .bus-book-back.is-placeholder{visibility:hidden;pointer-events:none;width:1.2rem;min-height:1.2rem;display:inline-block}.bus-book-search-card{background:var(--bus-card);border-radius:16px;margin:8px 16px 0;padding:12px 14px;box-shadow:0 8px 22px #0f172a1a}.bus-book-route-row{border-bottom:1px solid var(--bus-line);grid-template-columns:18px 1fr 40px;align-items:stretch;gap:8px;padding-bottom:12px;display:grid}.bus-book-route-pins{flex-direction:column;align-items:center;padding-top:22px;padding-bottom:10px;display:flex}.bus-book-route-pins span{border-radius:999px;width:10px;height:10px}.bus-book-route-pins .is-origin{background:var(--bus-blue);box-shadow:0 0 0 4px #0068ff29}.bus-book-route-pins .is-dest{background:0 0;border-top:11px solid #ef4444;border-left:6px solid #0000;border-right:6px solid #0000;border-radius:0;width:0;height:0;margin-top:1px}.bus-book-route-pins i{border-left:2px dotted #cbd5e1;flex:1;width:0;margin:6px 0}.bus-book-route-fields{min-width:0}.bus-book-place{color:var(--bus-muted);flex-direction:column;gap:2px;margin:0 0 8px;font-size:.78rem;font-weight:600;display:flex}.bus-book-place:last-child{margin-bottom:0}.bus-book-search-card .bus-search-select.is-plain .bus-search-select-input{font:inherit;color:#0f172a;box-shadow:none;background:0 0;border:0;border-radius:0;outline:none;padding:2px 0 6px;font-size:1.22rem;font-weight:700}.bus-book-search-card .bus-search-select.is-plain .bus-search-select-input::placeholder{color:#94a3b8;font-weight:600}.bus-book-search-card .bus-search-select-list{z-index:50}.bus-book-swap{border:1px solid var(--bus-line);color:#475569;cursor:pointer;background:#f1f5f9;border-radius:999px;align-self:center;place-items:center;width:40px;height:40px;padding:0;display:grid}.bus-book-date-row{grid-template-columns:1fr auto;align-items:center;gap:12px;padding:14px 0 12px;display:grid}.bus-book-date{cursor:pointer;text-align:left;width:100%;font:inherit;color:inherit;background:0 0;border:0;align-items:center;gap:10px;margin:0;padding:0;display:flex;position:relative}.bus-book-date-icon{color:var(--bus-blue);flex:none;place-items:center;display:grid}.bus-book-date-text{color:var(--bus-muted);flex-direction:column;gap:2px;font-size:.78rem;font-weight:600;display:flex}.bus-book-date-text strong{color:#0f172a;font-size:1.05rem;font-weight:700}.bus-book-date input[type=date]{opacity:0;cursor:pointer;color:#0000;background:0 0;border:0;min-height:0;padding:0;position:absolute;inset:0}.bus-book-date-stack{flex-direction:column;flex:1;gap:0;min-width:0;display:flex}.bus-book-date-row.is-round{grid-template-columns:1fr auto;align-items:start}.bus-book-date.is-return{border-top:1px solid var(--bus-line);margin-top:10px;padding-top:10px}.bus-round-date-sheet{width:min(100%, var(--page-max));max-width:var(--page-max);z-index:calc(var(--zalo-bottom-nav-z,100) + 220);color:#0f172a;background:#fff;flex-direction:column;display:flex;position:fixed;top:0;bottom:0;left:50%;transform:translate(-50%)}body.bus-round-date-sheet-open .zalo-bottom-nav{visibility:hidden;pointer-events:none}.bus-round-date-sheet-head{background:var(--bus-blue,#0068ff);color:#fff;grid-template-columns:40px 1fr auto;align-items:center;gap:8px;min-height:52px;padding:8px 12px;display:grid}.bus-round-date-sheet-head h2{text-align:center;margin:0;font-size:1.05rem;font-weight:700}.bus-round-date-back{color:#fff;font:inherit;cursor:pointer;background:0 0;border:0;padding:4px;font-size:1.2rem}.bus-round-date-rt{align-items:center;gap:8px;font-size:.82rem;font-weight:650;display:inline-flex}.bus-round-date-summary{background:var(--bus-blue,#0068ff);color:#fff;grid-template-columns:1fr 1fr;gap:0;padding:0 8px 12px;display:grid}.bus-round-date-summary.is-single{grid-template-columns:1fr}.bus-round-date-sum-cell{color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:8px 10px}.bus-round-date-sum-cell span{opacity:.85;font-size:.72rem;display:block}.bus-round-date-sum-cell strong{margin-top:2px;font-size:.92rem;display:block}.bus-round-date-sum-cell.is-active{background:#ffffff29}.bus-round-date-weekdays{color:#64748b;text-align:center;border-bottom:1px solid #e2e8f0;grid-template-columns:repeat(7,1fr);gap:0;padding:8px 10px 4px;font-size:.72rem;font-weight:700;display:grid}.bus-round-date-months{-webkit-overflow-scrolling:touch;flex:1;padding:8px 10px 100px;overflow:auto}.bus-round-date-month h3{margin:14px 4px 8px;font-size:.95rem}.bus-round-date-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.bus-round-date-cell{aspect-ratio:1;font:inherit;cursor:pointer;color:#0f172a;background:0 0;border:0;border-radius:10px;place-items:center;display:grid}.bus-round-date-cell em{font-size:.95rem;font-style:normal;font-weight:700}.bus-round-date-cell.is-empty{pointer-events:none}.bus-round-date-cell:disabled{opacity:.28;cursor:not-allowed}.bus-round-date-cell.is-go,.bus-round-date-cell.is-back{color:#1a1a1a;background:#f5c400}.bus-round-date-cell.is-range{background:#fef3c7}.bus-round-date-foot{padding:12px 14px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid #e2e8f0;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -6px 18px #0f172a14}.bus-round-date-foot .bus-book-cta:disabled{color:#fff;background:#cbd5e1}.bus-book-return-pin{background:#fff;border-radius:14px;grid-template-columns:56px 1fr auto;align-items:center;gap:10px;margin:10px 12px 0;padding:10px 12px;display:grid;box-shadow:0 4px 14px #0f172a0f}.bus-book-return-pin img{object-fit:cover;background:#e2e8f0;border-radius:10px;width:56px;height:56px}.bus-book-return-pin strong{font-size:.9rem;display:block}.bus-book-return-pin .bus-leg-badge{background:var(--bus-blue);color:#fff;border-radius:6px;margin:2px 0 4px;padding:2px 7px;font-size:.68rem;font-weight:800;display:inline-block}.bus-book-return-pin span{color:#64748b;font-size:.78rem}.bus-book-bar-leg{flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;display:inline-flex}.bus-book-bar-leg .bus-leg-badge{color:#fff;background:#fff3;border-radius:6px;padding:2px 7px;font-size:.65rem;font-weight:800}.bus-book-bar-leg em{opacity:.95;font-size:.72rem;font-style:normal}.bus-book-round{color:var(--bus-muted);flex-direction:column;align-items:flex-end;gap:8px;min-width:72px;font-size:.78rem;font-weight:600;display:flex}.bus-book-switch{cursor:pointer;background:#cbd5e1;border:0;border-radius:999px;width:48px;height:28px;padding:0;position:relative}.bus-book-switch:after{content:"";background:#fff;border-radius:999px;width:22px;height:22px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0f172a33}.bus-book-switch.is-on{background:var(--bus-blue)}.bus-book-switch.is-on:after{transform:translate(20px)}.bus-book-vat-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:12px;margin-top:14px;padding:12px 14px;display:flex}.bus-book-vat-toggle-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.bus-book-vat-toggle-row strong{color:#0f172a;font-size:.95rem;display:block}.bus-book-vat-toggle-row p{color:#64748b;margin:4px 0 0;font-size:.78rem}.bus-book-vat-fields{flex-direction:column;gap:10px;display:flex}.bus-book-cta{background:var(--bus-cta);color:var(--bus-cta-text);font:inherit;cursor:pointer;border:none;border-radius:999px;padding:12px 18px;font-size:.95rem;font-weight:700}.bus-book-cta:disabled{opacity:.5;cursor:not-allowed}.bus-book-cta-block{border-radius:14px;width:100%;margin-top:2px;padding:14px 18px;font-size:1.05rem}.bus-book-field{color:var(--bus-muted);flex-direction:column;gap:4px;margin-bottom:10px;font-size:.78rem;font-weight:600;display:flex}.bus-book-field input,.bus-book-field select,.bus-book-search-input{font:inherit;color:#0f172a;border:1px solid var(--bus-line);background:#fff;border-radius:12px;padding:11px 12px;font-size:1rem;font-weight:700}.bus-book-trust{text-align:center;color:#166534;grid-template-columns:repeat(4,1fr);gap:6px;margin:16px 16px 0;padding:0;font-size:.68rem;font-weight:600;list-style:none;display:grid}.bus-book-popular{margin:14px 16px 0}.bus-book-popular h2{color:#0f172a;margin:0 0 8px;font-size:.92rem}.bus-book-popular-grid{gap:8px;display:grid}.bus-book-popular-item{text-align:left;border:1px solid var(--bus-line);cursor:pointer;background:#fff;border-radius:12px;flex-direction:column;gap:1px;width:100%;margin:0;padding:10px 12px;display:flex}.bus-book-popular-item strong{font-size:.9rem}.bus-book-popular-item span{color:var(--bus-muted);font-size:.78rem}.bus-book-results-head{z-index:20;background:var(--bus-blue);position:sticky;top:0}.bus-book-spill-banner{color:#0f172a;background:#fef3c7;border-bottom:1px solid #0000000f;margin:0;padding:8px 12px;font-size:.8rem;line-height:1.35}.bus-book-bar{background:#0068ff;background:var(--bus-blue,#0068ff);color:#fff;grid-template-columns:28px 1fr auto;align-items:center;gap:6px;padding:8px 10px;display:grid}.bus-book-bar-main{min-width:0}.bus-book-bar h1{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.92rem;font-weight:700;line-height:1.2;overflow:hidden}.bus-book-bar p{opacity:.9;text-overflow:ellipsis;white-space:nowrap;margin:1px 0 0;font-size:.68rem;line-height:1.2;overflow:hidden}.bus-book-bar-date{opacity:.95;cursor:pointer;align-items:center;gap:3px;margin-top:1px;font-size:.68rem;font-weight:600;display:inline-flex;position:relative}.bus-book-bar-date input[type=date]{opacity:0;cursor:pointer;color:#0000;background:0 0;border:0;min-height:0;padding:0;position:absolute;inset:0}.bus-vt-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;border-bottom:1px solid var(--bus-line);background:#fff;gap:0;padding:6px 4px 0;display:flex;overflow-x:auto}.bus-vt-tabs::-webkit-scrollbar{display:none}.bus-vt-tab{min-width:0;font:inherit;color:#64748b;cursor:pointer;text-align:left;background:0 0;border:0;border-bottom:2px solid #0000;flex:1 1 0;grid-template-rows:auto auto;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:1px 8px;padding:6px 12px 8px;display:grid}.bus-vt-tab-icon{color:inherit;grid-area:1/1;width:20px;height:20px}.bus-vt-tab-name{text-overflow:ellipsis;white-space:nowrap;grid-area:2/1;max-width:100%;font-size:.68rem;font-weight:600;line-height:1.15;overflow:hidden}.bus-vt-tab strong{color:#0f172a;grid-area:1/2;font-size:.9rem;font-weight:700;line-height:1.15}.bus-vt-tab em{color:#94a3b8;grid-area:2/2;font-size:.64rem;font-style:normal;line-height:1.1}.bus-vt-tab.is-active{color:var(--bus-blue);border-bottom-color:var(--bus-blue)}.bus-vt-tab.is-active strong{color:var(--bus-blue)}.bus-book-results{flex-direction:column;gap:12px;padding:12px 12px 24px;display:flex}.bus-trip-card{background:#fff;border-radius:16px;padding:14px;box-shadow:0 4px 14px #0f172a0f}.bus-trip-card-main{grid-template-columns:1fr auto;align-items:start;gap:10px;display:grid}.bus-trip-timeline{grid-template-columns:auto 14px minmax(0,1fr);align-items:center;gap:2px 8px;display:grid}.bus-trip-time{text-align:right;min-width:3.2rem;font-size:1.15rem;font-weight:700;line-height:1.2}.bus-trip-time.is-arrive{color:#64748b;font-weight:600}.bus-trip-dot{border-radius:999px;justify-self:center;width:10px;height:10px}.bus-trip-dot.is-origin{box-sizing:border-box;border:2px solid var(--bus-blue);background:#fff}.bus-trip-dot.is-dest{background:0 0;border-top:9px solid #ef4444;border-left:5px solid #0000;border-right:5px solid #0000;border-radius:0;width:0;height:0;margin-top:1px}.bus-trip-rail{border-left:2px dotted #cbd5e1;place-self:stretch center;width:0;height:100%;min-height:22px}.bus-trip-dur{color:#94a3b8;text-align:right;padding-right:2px;font-size:.72rem;font-style:normal}.bus-trip-stop{color:var(--bus-muted);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.82rem;overflow:hidden}.bus-trip-price{text-align:right;flex-direction:column;align-items:flex-end;gap:2px;display:flex}.bus-trip-price-from{color:var(--bus-muted);font-size:.72rem;font-weight:600}.bus-trip-price strong{color:#0f172a;font-size:1.08rem;line-height:1.2;display:block}.bus-trip-price-disc{align-items:center;gap:4px;display:inline-flex}.bus-trip-price s{color:#94a3b8;font-size:.78rem}.bus-trip-price b{color:#dc2626;background:#fef2f2;border-radius:999px;padding:1px 6px;font-size:.72rem;font-weight:700}.bus-trip-card-meta{border-top:1px solid var(--bus-line);justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.bus-trip-org{flex:1;align-items:center;gap:10px;min-width:0;display:flex}.bus-trip-org>div{min-width:0}.bus-trip-thumb{object-fit:cover;background:#e2e8f0;border-radius:10px;flex:none;width:44px;height:44px}.bus-trip-thumb.is-fallback{color:var(--bus-blue);background:#dbeafe;place-items:center;font-size:1rem;font-weight:700;display:grid}.bus-trip-card-meta strong{text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;display:block;overflow:hidden}.bus-trip-card-meta span{color:var(--bus-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;display:block;overflow:hidden}.bus-trip-rating{white-space:nowrap;align-items:center;gap:3px;margin-top:2px;overflow:hidden;color:#0f172a!important;font-size:.72rem!important;display:flex!important}.bus-trip-rating b{color:#0f172a;font-weight:700}.bus-trip-rating>span[aria-hidden]{color:#f59e0b;font-size:.78rem;overflow:visible;display:inline!important}.bus-trip-rating em{color:var(--bus-muted);font-style:normal;font-weight:500}.bus-trip-rating.is-empty{font-weight:500;color:var(--bus-muted)!important}.bus-trip-pick{border-radius:10px;flex:none;padding:10px 14px;font-size:.9rem;font-weight:700}.bus-book-stepper{border-bottom:1px solid var(--bus-line);background:#fff;grid-template-columns:repeat(6,minmax(0,1fr));gap:2px;padding:5px 4px 6px;display:grid}.bus-book-step{color:#94a3b8;text-align:center;flex-direction:column;align-items:center;gap:2px;min-width:0;font-size:.52rem;font-style:normal;line-height:1.15;display:flex}.bus-book-step em{text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:0 2px;font-style:normal;overflow:hidden}.bus-book-step span{background:#e2e8f0;border-radius:999px;justify-content:center;align-items:center;width:16px;height:16px;font-size:.58rem;font-style:normal;font-weight:700;display:inline-flex}.bus-book-step.is-active{color:var(--bus-blue);font-weight:700}.bus-book-step.is-active span{background:var(--bus-blue);color:#fff}.bus-book-step.is-done span{color:#fff;background:#22c55e}.bus-book-panel{padding:12px 14px 24px}.bus-seats-panel{padding-top:8px;padding-left:10px;padding-right:10px}.bus-seats-panel.has-dock{padding-bottom:calc(108px + env(safe-area-inset-bottom))}.bus-seats-panel.has-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.bus-seat-trip-hint{color:var(--bus-muted);margin:8px 0 0;font-size:.72rem;line-height:1.35}.bus-book-note,.bus-book-info-ok{color:#1e3a8a;background:#eff6ff;border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:.84rem}.bus-book-info-ok{color:#166534;background:#ecfdf5}.bus-seat-legend{color:var(--bus-muted);flex-wrap:wrap;gap:6px 10px;margin:0 0 8px;padding:0;font-size:.68rem;list-style:none;display:flex}.bus-seat-legend li{align-items:center;gap:5px;display:inline-flex}.bus-seat-legend-meta{flex-direction:column;gap:0;line-height:1.15;display:flex}.bus-seat-legend-meta b{color:#334155;text-transform:uppercase;font-size:.62rem;font-weight:700}.bus-seat-legend-meta small{color:#0f172a;font-size:.66rem;font-weight:700}.bus-seat-legend i{border:1.5px solid #94a3b8;border-radius:3px;flex:none;width:12px;height:12px;display:inline-block}.bus-seat-legend .is-picked{background:#c1efd2;border-color:#16a34a;position:relative}.bus-seat-legend .is-picked:after{content:"✓";color:#fff;text-align:center;background:#16a34a;border-radius:999px;width:8px;height:8px;font-size:6px;font-weight:800;line-height:8px;position:absolute;bottom:-1px;right:-1px}.bus-seat-legend .is-blocked{background:#cbd5e1;border-color:#94a3b8}.bus-seat-map{grid-template-columns:1fr 1fr;gap:6px;display:grid}.bus-seat-map h3{text-align:center;color:#64748b;margin:0 0 4px;font-size:.72rem;font-weight:700}.bus-seat-grid{border:1px solid var(--bus-line);background:#fff;border-radius:10px;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px;padding:6px;display:grid}.bus-seats-panel .bus-seat-grid{gap:3px;padding:5px}.bus-seat{aspect-ratio:1.05;color:#166534;cursor:pointer;text-align:center;box-sizing:border-box;background:#fff;border:2px solid #86efac;border-radius:10px;justify-content:center;align-items:center;margin:0;padding:0;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.bus-seats-panel .bus-seat{aspect-ratio:1;border-width:1.5px;border-radius:6px;min-height:0;padding:0;font-size:.58rem;line-height:1;overflow:hidden;container-type:size}.bus-seats-panel .bus-seat.is-blocked{font-weight:800;position:relative}.bus-seats-panel .bus-seat.is-blocked.kind-driver{color:#64748b;font-size:0}.bus-seats-panel .bus-seat.is-blocked:not(.kind-driver){color:#0000;font-size:0}.bus-seats-panel .bus-seat.is-blocked:not(.kind-driver):not(:has(svg)):after{content:"";pointer-events:none;background-color:#64748b;position:absolute;inset:35%;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M6 6l12 12M18 6L6 18' stroke='black' stroke-width='3.2' stroke-linecap='round'/%3E%3C/svg%3E");-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.bus-seats-panel .bus-seat.kind-driver svg,.bus-seats-panel .bus-seat-driver-icon{color:#64748b;fill:currentColor;flex:none;width:70%;height:70%;display:block}.bus-seat.is-picked{color:#14532d;font-size:inherit;background:#b8eccb;border-color:#16a34a;position:relative;box-shadow:inset 0 0 0 1px #16a34a59}.bus-seats-panel .bus-seat.is-picked{font-size:.58rem}.bus-seat.is-picked:after{content:"✓";color:#fff;text-align:center;pointer-events:none;background:#16a34a;border-radius:999px;width:11px;height:11px;font-size:8px;font-weight:800;line-height:11px;position:absolute;bottom:1px;right:1px;box-shadow:0 0 0 1px #fff}.bus-seats-panel .bus-seat.is-picked:after{width:10px;height:10px;font-size:7px;line-height:10px;bottom:0;right:0}.bus-seat.is-blocked{color:#64748b;cursor:not-allowed;background:#e2e8f0;border-color:#cbd5e1}.bus-variant-modal-backdrop{z-index:60;box-sizing:border-box;background:#0f172a80;justify-content:center;align-items:center;padding:20px 16px;display:flex;position:fixed;inset:0}.bus-variant-modal{text-align:center;background:#fff;border-radius:16px;width:min(100%,340px);padding:18px 16px 14px;box-shadow:0 16px 48px #0f172a38}.bus-variant-modal h3{color:#334155;margin:0 0 4px;font-size:1rem;font-weight:600}.bus-variant-modal h3 strong{color:#0f172a}.bus-variant-modal>p{color:var(--bus-muted);margin:0 0 14px;font-size:.82rem}.bus-variant-modal-actions{gap:8px;display:grid}.bus-variant-option{border:2px solid var(--variant-accent,#fdba74);background:color-mix(in srgb, var(--variant-accent,#fdba74) 22%, #fff);width:100%;font:inherit;cursor:pointer;text-align:left;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;display:flex}.bus-variant-option strong{color:#0f172a;font-size:.95rem}.bus-variant-option span{color:#0f172a;font-size:.9rem;font-weight:700}.bus-variant-option.is-single{--variant-accent:#fdba74}.bus-variant-option.is-double{--variant-accent:#f9a8d4}.bus-variant-option:hover,.bus-variant-option:focus-visible{background:color-mix(in srgb, var(--variant-accent,#fdba74) 38%, #fff);outline:none}.bus-variant-modal-cancel{font:inherit;color:#64748b;cursor:pointer;background:0 0;border:0;width:100%;margin-top:12px;padding:8px;font-size:.88rem;font-weight:600}.bus-vehicle-dock{left:50%;bottom:var(--zalo-bottom-nav-offset,0px);width:min(100%, var(--page-max));max-width:var(--page-max);box-sizing:border-box;z-index:40;border-top:1px solid var(--bus-line);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:#fff;border-radius:16px 16px 0 0;position:fixed;transform:translate(-50%);box-shadow:0 -8px 24px #0f172a1a}.bus-vehicle-dock-title{width:100%;font:inherit;color:#0f172a;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;padding:4px 8px 8px;font-size:.92rem;font-weight:700;display:flex}.bus-vehicle-dock-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:2px;padding:0 4px 2px;display:flex;overflow-x:auto}.bus-vehicle-dock-tabs::-webkit-scrollbar{display:none}.bus-vehicle-dock-tab{font:inherit;color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;padding:8px 10px;font-size:.78rem;font-weight:600;position:relative}.bus-vehicle-dock-tab.is-active{color:#0f172a;box-shadow:inset 0 -2px #0f172a}.bus-vehicle-dock-dot{background:#ef4444;border-radius:999px;width:6px;height:6px;position:absolute;top:6px;right:4px}.bus-vehicle-sheet-backdrop{z-index:50;background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bus-vehicle-sheet{width:min(100%, var(--page-max));background:#fff;border-radius:16px 16px 0 0;flex-direction:column;height:80dvh;max-height:80dvh;display:flex;overflow:hidden;box-shadow:0 -12px 40px #0f172a33}.bus-vehicle-sheet-head{border-bottom:1px solid var(--bus-line);grid-template-columns:40px 1fr 40px;align-items:center;padding:10px 8px;display:grid}.bus-vehicle-sheet-head strong{text-align:center;font-size:1rem}.bus-vehicle-sheet-close{cursor:pointer;width:32px;height:32px;font:inherit;color:#475569;background:#f1f5f9;border:0;border-radius:999px}.bus-vehicle-sheet-tabs{scrollbar-width:none;border-bottom:1px solid var(--bus-line);gap:2px;padding:0 8px;display:flex;overflow-x:auto}.bus-vehicle-sheet-tabs::-webkit-scrollbar{display:none}.bus-vehicle-sheet-tabs button{font:inherit;color:#64748b;cursor:pointer;white-space:nowrap;background:0 0;border:0;flex:none;padding:12px;font-size:.82rem;font-weight:600;box-shadow:inset 0 -2px #0000}.bus-vehicle-sheet-tabs button.is-active{color:#0f172a;box-shadow:inset 0 -2px #0f172a}.bus-vehicle-sheet-body{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:14px 16px 24px;overflow-y:auto}.bus-vehicle-sheet-block h3{margin:12px 0 8px;font-size:.92rem}.bus-vehicle-sheet-block h3:first-child{margin-top:0}.bus-vehicle-sheet-promo{color:#1d4ed8;background:#eff6ff;border-radius:12px;margin:0 0 8px;padding:10px 12px;font-weight:700}.bus-vehicle-sheet-rating{margin:0 0 8px;font-size:1.05rem}.bus-vehicle-sheet-rating span[aria-hidden]{color:#f59e0b}.bus-vehicle-sheet-rating em{color:var(--bus-muted);font-size:.88rem;font-style:normal}.bus-vehicle-stop-kind{background:#f1f5f9;border-radius:12px;grid-template-columns:1fr 1fr;gap:6px;margin:0 0 12px;padding:4px;display:grid}.bus-vehicle-stop-kind button{font:inherit;color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:10px;padding:10px 8px;font-size:.88rem;font-weight:700}.bus-vehicle-stop-kind button.is-active{color:var(--bus-blue);background:#fff;box-shadow:0 1px 3px #0f172a1a}.bus-vehicle-stop-mini{gap:8px;margin:0;padding:0;list-style:none;display:grid}.bus-vehicle-stop-mini li{border:1px solid var(--bus-line);background:#f8fafc;border-radius:10px;grid-template-columns:3.2rem 1fr;gap:2px 8px;padding:8px 10px;font-size:.84rem;display:grid}.bus-vehicle-stop-mini strong{color:var(--bus-blue);grid-row:1/span 2;align-self:center}.bus-vehicle-stop-mini span{color:#0f172a;font-weight:700}.bus-vehicle-stop-mini em{color:var(--bus-muted);grid-column:2;font-size:.78rem;font-style:normal}.bus-vehicle-rating-breakdown{color:#475569;gap:6px;margin:10px 0 0;padding:0;font-size:.84rem;list-style:none;display:grid}.bus-vehicle-rating-breakdown strong{color:#0f172a;font-weight:650}.bus-vehicle-review-list{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.bus-vehicle-review-list li{border:1px solid var(--bus-line);background:#f8fafc;border-radius:12px;padding:10px 12px}.bus-vehicle-review-list strong{margin-bottom:4px;font-size:.84rem;display:block}.bus-vehicle-review-list span{color:#475569;font-size:.82rem}.bus-vehicle-review-list .bus-verified-trip-badge,.bus-vehicle-review-list .bus-verified-trip-badge span{color:#15803d;font-size:.75rem;font-weight:600;display:inline-flex}.bus-verified-trip-badge{color:#15803d;letter-spacing:.01em;align-items:center;gap:4px;margin-top:6px;font-size:.75rem;font-weight:600;display:inline-flex}.bus-verified-trip-badge-icon{color:#16a34a;flex-shrink:0}div.bus-vehicle-gallery{grid-template-columns:minmax(0,1fr);gap:12px;display:grid}div.bus-vehicle-gallery img{background:#e2e8f0;border-radius:12px;width:100%;height:auto}.bus-vehicle-amenity-list{grid-template-columns:1fr 1fr;gap:8px;margin:0;padding:0;list-style:none;display:grid}.bus-vehicle-amenity-list li{border:1px solid var(--bus-line);color:#0f172a;background:#f8fafc;border-radius:10px;align-items:center;gap:8px;min-width:0;padding:10px 12px;font-size:.84rem;font-weight:600;display:flex}.bus-vehicle-amenity-icon{width:28px;height:28px;color:var(--bus-blue);background:#e0f2fe;border-radius:8px;flex:none;place-items:center;display:grid}.bus-vehicle-amenity-list li>span:last-child{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.cabin-fare-field{gap:4px;margin-bottom:8px;font-size:.95rem;display:grid}.cabin-fare-field input{max-width:240px}.bus-book-footer{left:50%;right:auto;bottom:var(--zalo-bottom-nav-offset,0px);width:min(100%, var(--page-max));max-width:var(--page-max);box-sizing:border-box;z-index:40;border-top:1px solid var(--bus-line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:#fff;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid;position:fixed;transform:translate(-50%);box-shadow:0 -6px 20px #0f172a14}.bus-book-footer .bus-book-cta{white-space:nowrap;flex-shrink:0;min-width:120px}.bus-book-footer-price span{color:var(--bus-muted);font-size:.75rem;display:block}.bus-book-footer-price strong{font-size:1.15rem}.bus-book-footer-price small{color:#94a3b8;font-size:.75rem;font-weight:500;text-decoration:line-through;display:block}.bus-book-footer-hint{color:var(--bus-muted);grid-column:1/-1;margin:0;font-size:.72rem}.bus-review-panel{padding-bottom:calc(96px + env(safe-area-inset-bottom));background:#f1f5f9;flex-direction:column;gap:12px;display:flex}.bus-book-panel.has-footer{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.bus-review-card{border:1px solid var(--bus-line);background:#fff;border-radius:14px;overflow:hidden}.bus-review-card-head{border-bottom:1px solid #f1f5f9;justify-content:space-between;align-items:center;gap:8px;padding:12px 14px 8px;display:flex}.bus-review-card-head>div{align-items:center;gap:8px;font-size:.92rem;display:flex}.bus-review-card-icon{font-size:1.05rem}.bus-review-vehicle{grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.bus-review-vehicle-thumb{object-fit:cover;background:#e2e8f0;border-radius:10px;width:56px;height:56px}.bus-review-vehicle-thumb.is-empty{display:block}.bus-review-vehicle-meta{flex-direction:column;gap:2px;min-width:0;display:flex}.bus-review-vehicle-meta strong{font-size:.95rem}.bus-review-vehicle-meta span{color:var(--bus-muted);font-size:.78rem}.bus-review-pax{color:#334155;align-items:center;gap:4px;font-size:.85rem;display:inline-flex}.bus-review-itinerary{flex-direction:column;gap:0;margin:0;padding:4px 14px 12px;list-style:none;display:flex}.bus-review-itinerary>li{grid-template-columns:3.2rem 12px minmax(0,1fr);align-items:start;gap:8px;padding:8px 0;display:grid;position:relative}.bus-review-itinerary-time{color:#0f172a;text-align:right;padding-top:0;font-size:.95rem;font-weight:800;line-height:1.2}.bus-review-itinerary>li.is-pickup .bus-review-itinerary-time{color:var(--bus-blue)}.bus-review-itinerary>li.is-dropoff .bus-review-itinerary-time{color:#ef4444}.bus-review-itinerary-rail{background:var(--bus-blue);z-index:1;border-radius:999px;justify-self:center;width:10px;height:10px;margin-top:3px;position:relative;box-shadow:0 0 0 3px #fff}.bus-review-itinerary>li.is-dropoff .bus-review-itinerary-rail{background:#ef4444;border-radius:2px;width:9px;height:9px;transform:rotate(45deg)}.bus-review-itinerary>li.is-pickup:after{content:"";z-index:0;background:#e2e8f0;width:2px;position:absolute;top:21px;bottom:-8px;left:calc(3.2rem + 13px)}.bus-review-itinerary-body{min-width:0;padding-left:0}.bus-review-itinerary-title-row{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.bus-review-itinerary-title-row strong{font-size:.9rem;line-height:1.3}.bus-review-itinerary-body p{color:var(--bus-muted);margin:4px 0 0;font-size:.75rem;line-height:1.4}.bus-review-cancel-ok{color:#15803d;border-top:1px solid #f1f5f9;align-items:flex-start;gap:6px;margin:0;padding:10px 14px 12px;font-size:.78rem;font-weight:600;line-height:1.35;display:flex}.bus-review-contact{border:1px solid var(--bus-line);background:#fff;border-radius:14px;padding:12px 14px}.bus-review-contact header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.bus-review-contact h2{margin:0;font-size:.95rem}.bus-review-contact dl{flex-direction:column;gap:8px;margin:0;display:flex}.bus-review-contact dl>div{grid-template-columns:5.5rem minmax(0,1fr);gap:8px;font-size:.85rem;display:grid}.bus-review-contact dt{color:var(--bus-muted)}.bus-review-contact dd{word-break:break-word;margin:0;font-weight:600}.bus-pay-methods{flex-direction:column;gap:12px;margin:4px 0 16px;display:flex}.bus-pay-wallet{border:1.5px solid color-mix(in srgb, var(--bus-blue) 28%, var(--bus-line));color:var(--bus-ink,#0f172a);cursor:pointer;background:radial-gradient(120% 90% at 100% 0,#2563eb24,#0000 55%),linear-gradient(165deg,#f8fbff 0%,#eef5ff 100%);border-radius:16px;flex-direction:column;gap:6px;padding:16px 16px 14px;transition:border-color .16s,box-shadow .16s,transform .16s;display:flex;box-shadow:0 8px 20px #0f172a0a}.bus-pay-wallet.is-active.is-ok{border-color:var(--bus-blue);box-shadow:0 10px 24px #2563eb1f}.bus-pay-wallet.is-short{cursor:default;border-color:color-mix(in srgb, #f59e0b 45%, var(--bus-line));background:radial-gradient(120% 90% at 100% 0,#f59e0b29,#0000 55%),linear-gradient(165deg,#fffbeb 0%,#fff7ed 100%)}.bus-pay-wallet-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.bus-pay-wallet-brand{letter-spacing:.01em;color:#334155;font-size:.82rem;font-weight:700}.bus-pay-wallet-badge{color:#1d4ed8;background:#2563eb1f;border-radius:999px;flex:none;padding:3px 8px;font-size:.68rem;font-weight:700}.bus-pay-wallet-badge.is-warn{color:#b45309;background:#f59e0b2e}.bus-pay-wallet-balance{letter-spacing:-.02em;color:#0f172a;margin:2px 0 0;font-size:1.45rem;font-weight:800;line-height:1.15}.bus-pay-wallet-sub{color:#64748b;margin:0;font-size:.78rem}.bus-pay-wallet-hint{color:#1d4ed8;margin:4px 0 0;font-size:.78rem;font-weight:600}.bus-pay-wallet-short{border-top:1px dashed #f59e0b66;flex-direction:column;gap:10px;margin-top:8px;padding-top:10px;display:flex}.bus-pay-wallet-short p{color:#92400e;margin:0;font-size:.8rem;font-weight:600}.bus-pay-wallet-short-line{color:#92400e;margin:8px 0 0;font-size:.8rem;font-weight:600;line-height:1.35}.bus-pay-wallet-topup{appearance:none;color:#fff;cursor:pointer;background:linear-gradient(165deg,#2563eb 0%,#1d4ed8 100%);border:none;border-radius:12px;padding:11px 14px;font-size:.9rem;font-weight:700;box-shadow:0 8px 16px #2563eb38}.bus-pay-wallet-topup:active{transform:translateY(1px)}.bus-pay-wallet-topup:disabled{opacity:.65;cursor:not-allowed}.bus-pay-qr-panel{border:1.5px solid color-mix(in srgb, var(--bus-blue) 22%, var(--bus-line));background:#fff;border-radius:16px;margin:0 0 16px;padding:14px}.bus-pay-qr-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:8px;display:flex}.bus-pay-qr-head strong{font-size:.92rem}.bus-pay-qr-head span{color:#0f172a;font-size:1rem;font-weight:800}.bus-pay-qr-status{color:#64748b;margin:0;font-size:.85rem}.bus-pay-qr-error{color:#b91c1c;margin:0 0 8px;font-size:.82rem;font-weight:600}.bus-pay-qr-countdown{color:#1d4ed8;margin:0 0 8px;font-size:.8rem;font-weight:700}.bus-pay-qr-countdown.is-expired{color:#b45309}.bus-pay-qr-wrap{justify-content:center;padding:8px 0 4px;display:flex}.bus-pay-qr-img{aspect-ratio:1;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:min(100%,220px)}.bus-pay-qr-code{text-align:center;color:#64748b;margin:8px 0 0;font-size:.78rem}.bus-pay-qr-code code{font-size:.78rem}.bus-pay-qr-hint{color:#64748b;text-align:center;margin:10px 0 0;font-size:.78rem;line-height:1.4}.bus-pay-qr-fallback{text-align:center;color:#2563eb;margin-top:8px;font-size:.78rem;display:block}.bus-pay-qr-mock{flex-direction:column;gap:8px;margin-top:10px;display:flex}.bus-pay-qr-retry{appearance:none;color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:10px 14px;font-size:.85rem;font-weight:600}.bus-pay-method{border:1.5px solid var(--bus-line);cursor:pointer;background:#fff;border-radius:12px;grid-template-columns:auto minmax(0,1fr);align-items:flex-start;gap:10px;padding:12px;display:grid}.bus-pay-method.is-active{border-color:var(--bus-blue);background:#eff6ff}.bus-pay-method.is-disabled{opacity:.72;cursor:not-allowed;background:#fff7f7;border-color:#fecaca}.bus-pay-method.is-disabled.is-active{background:#fff7f7;border-color:#fecaca}.bus-pay-method input{margin-top:3px}.bus-pay-method span{flex-direction:column;gap:2px;min-width:0;display:flex}.bus-pay-method strong{font-size:.9rem}.bus-pay-method em{color:var(--bus-muted);font-size:.75rem;font-style:normal}.bus-pay-method-warn{font-weight:600;color:#b91c1c!important}.bus-trip-detail-backdrop{z-index:50;background:#0f172a73;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bus-trip-detail-sheet{width:min(100%, var(--page-max));max-height:min(92vh,760px);padding:14px 14px calc(14px + env(safe-area-inset-bottom));background:#fff;border-radius:16px 16px 0 0;overflow:auto;box-shadow:0 -8px 28px #0f172a2e}.bus-trip-detail-sheet-head{justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.bus-trip-detail-sheet-head strong{font-size:1rem;display:block}.bus-trip-detail-sheet-head p{color:var(--bus-muted);margin:2px 0 0;font-size:.8rem}.bus-trip-detail-facts{border-bottom:1px solid var(--bus-line);flex-direction:column;gap:10px;margin:0;padding-bottom:12px;display:flex}.bus-trip-detail-facts>div{grid-template-columns:7.2rem minmax(0,1fr);align-items:start;gap:8px;font-size:.86rem;display:grid}.bus-trip-detail-facts dt{color:var(--bus-muted)}.bus-trip-detail-facts dd{text-align:right;word-break:break-word;margin:0;font-weight:600}.bus-trip-detail-facts dd.is-price{color:#0f172a;font-weight:800}.bus-trip-detail-stops{flex-direction:column;gap:14px;padding:14px 0;display:flex}.bus-trip-detail-stop{padding-left:18px;position:relative}.bus-trip-detail-stop:before{content:"";background:var(--bus-blue);border-radius:999px;width:9px;height:9px;position:absolute;top:.35rem;left:0}.bus-trip-detail-stop.is-dropoff:before{background:#ef4444;border-radius:2px;width:8px;height:8px;transform:rotate(45deg)}.bus-trip-detail-stop-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.bus-trip-detail-stop-head strong{color:var(--bus-muted);font-size:.82rem;font-weight:600}.bus-trip-detail-stop-name{margin:4px 0 0;font-size:.95rem;font-weight:700}.bus-trip-detail-stop-addr,.bus-trip-detail-stop-eta{color:var(--bus-muted);margin:4px 0 0;font-size:.78rem;line-height:1.4}.bus-trip-detail-sheet-foot{grid-template-columns:1fr 1fr;gap:10px;padding-top:4px;display:grid}.bus-trip-detail-btn{border-radius:10px;padding:12px 14px;font-size:.9rem;font-weight:700}.bus-trip-detail-btn.is-outline{color:#0f172a;background:#fff;border:1px solid #cbd5e1}.bus-trip-detail-btn.is-primary{background:var(--bus-blue);color:#fff;border:0}.bus-stop-change-overlay{z-index:60;width:min(100%, var(--page-max));max-width:var(--page-max);background:#f8fafc;flex-direction:column;display:flex;position:fixed;inset:0 0 0 50%;transform:translate(-50%)}.bus-stop-change-head{background:var(--bus-blue);color:#fff;flex:none;justify-content:center;align-items:center;min-height:48px;padding:12px 56px 12px 16px;display:flex;position:relative}.bus-stop-change-head h2{text-align:center;margin:0;font-size:1rem;font-weight:700}.bus-stop-change-close{color:#fff;background:0 0;border:0;padding:8px 10px;font-size:.9rem;font-weight:700;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.bus-stop-change-body{flex:1;min-height:0;padding:12px 14px 8px;overflow:auto}.bus-stop-change-search{background:#eef2f7;border-radius:999px;align-items:center;gap:8px;margin-bottom:10px;padding:10px 14px;display:flex}.bus-stop-change-search-icon{color:#64748b;display:inline-flex}.bus-stop-change-search input{background:0 0;border:0;outline:none;flex:1;min-width:0;font-size:.9rem}.bus-stop-change-tools{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.bus-stop-change-near{color:var(--bus-muted);text-align:right;max-width:14rem;margin:0;font-size:.72rem;line-height:1.35}.bus-stop-change-list{margin-top:0}.bus-stop-change-foot{border-top:1px solid var(--bus-line);padding:10px 14px calc(12px + env(safe-area-inset-bottom));background:#fff;flex:none}.bus-stop-change-report{color:var(--bus-muted);text-align:center;margin:0 0 10px;font-size:.75rem}.bus-stop-change-report a{color:var(--bus-blue);font-weight:600;text-decoration:none}.bus-stop-change-update{color:#0f172a;background:#facc15;border:0;border-radius:10px;width:100%;padding:14px 16px;font-size:1rem;font-weight:800}.bus-book-auth-backdrop{z-index:80;background:#0f172a73;justify-content:center;align-items:flex-end;padding:12px;display:flex;position:fixed;inset:0}.bus-book-auth-modal{background:#fff;border-radius:16px 16px 12px 12px;width:min(100%,420px);max-height:min(92vh,640px);padding:0 0 16px;overflow:auto;box-shadow:0 16px 48px #0f172a38}.bus-book-auth-head{z-index:1;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px 8px;display:flex;position:sticky;top:0}.bus-book-auth-head h2{color:#0f172a;margin:0;font-size:1.05rem;font-weight:800}.bus-book-auth-close{color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:999px;width:36px;height:36px;font-size:1.4rem;line-height:1}.bus-book-auth-tabs{background:#f1f5f9;border-radius:10px;grid-template-columns:1fr 1fr;gap:6px;margin:0 16px 12px;padding:4px;display:grid}.bus-book-auth-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-radius:8px;padding:10px 8px;font-size:.9rem;font-weight:700}.bus-book-auth-tabs button.is-active{color:#0f172a;background:#fff;box-shadow:0 1px 3px #0f172a14}.bus-book-auth-form{flex-direction:column;gap:14px;padding:0 16px 4px;display:flex}.bus-book-auth-form .auth-field{flex-direction:column;gap:6px;margin:0;display:flex}.bus-book-auth-form .auth-field-label{color:#0f172a;font-size:.8125rem;font-weight:600}.bus-book-auth-form input{box-sizing:border-box;width:100%;min-height:48px;font:inherit;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;padding:12px 14px;font-size:.9375rem;font-weight:400;line-height:1.35}.bus-book-auth-form input:focus{border-color:var(--bus-blue,#2563eb);box-shadow:0 0 0 3px color-mix(in srgb, var(--bus-blue,#2563eb) 18%, transparent);outline:none}.bus-book-auth-form .password-field{display:block;position:relative}.bus-book-auth-form .password-field input{padding-right:44px}.bus-book-auth-form .field-error{color:#dc2626;margin:0;font-size:.8125rem}.bus-book-auth-submit{width:100%;min-height:48px;margin-top:4px}@media (min-width:640px){.bus-book-auth-backdrop{align-items:center}.bus-book-auth-modal{border-radius:16px}}.bus-stop-list{grid-template-columns:1fr;gap:8px;margin:10px 0 0;padding:0;list-style:none;display:grid}.bus-stop-card{border:1px solid var(--bus-line);background:#fff;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.bus-stop-card.is-active{box-shadow:inset 3px 0 0 var(--bus-blue);background:#f8fbff;border-color:#93c5fd}.bus-stop-card-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;display:grid}.bus-stop-card-main{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:0 0;border:0;grid-template-columns:18px minmax(0,1fr);align-items:start;gap:10px;min-width:0;padding:12px;display:grid}.bus-stop-card-body{gap:4px;min-width:0;display:grid}.bus-stop-card-title{color:#0f172a;flex-wrap:wrap;align-items:center;gap:5px;font-size:.84rem;font-weight:600;line-height:1.3;display:flex}.bus-stop-card-title time{font-variant-numeric:tabular-nums}.bus-eta-with-nextday{flex-direction:column;align-items:center;gap:1px;line-height:1.1;display:inline-flex}.bus-eta-nextday{color:#94a3b8;font-variant-numeric:tabular-nums;letter-spacing:.01em;text-align:center;font-size:.68rem;font-weight:600}.bus-trip-time .bus-eta-with-nextday{align-items:center;width:100%}.bus-trip-time .bus-eta-nextday{font-size:.62rem;font-weight:600}.bus-trip-time .bus-eta-time{text-align:center;width:100%;display:block}.bus-stop-card-name-row{color:#0f172a;flex-wrap:wrap;align-items:center;gap:6px;font-size:.92rem;font-weight:700;line-height:1.3;display:flex}.bus-stop-card-name{font-weight:600}.bus-stop-card-addr{color:var(--bus-muted);font-size:.72rem;font-style:normal;line-height:1.35;display:block}.bus-stop-fee-inline{color:#16a34a;font-size:.68rem;font-weight:600}.bus-stop-map-link{min-width:44px;color:var(--bus-blue);background:0 0;border:0;border-radius:8px;flex-direction:column;justify-content:center;align-self:center;align-items:center;gap:1px;margin:8px 8px 8px 0;padding:3px 4px;font-size:.62rem;font-weight:600;line-height:1.15;text-decoration:none;display:flex}.bus-stop-map-link svg{width:15px;height:15px}.bus-stop-map-link:hover{background:#eff6ff}.bus-stop-card .bus-stop-door-field{color:#334155;border-top:1px dashed var(--bus-line);gap:6px;margin:0;padding:10px 12px 12px;font-size:.82rem;font-weight:700;display:grid}.bus-stop-card .bus-stop-door-field .bus-book-search-input{font-weight:600}.bus-stop-item{text-align:left;border:1px solid var(--bus-line);cursor:pointer;background:#fff;border-radius:14px;grid-template-columns:18px minmax(0,1fr) auto;align-items:start;gap:8px;width:100%;min-height:72px;padding:12px;display:grid}.bus-stop-item.is-active{background:#eff6ff;border-color:#93c5fd}.bus-stop-radio{box-sizing:border-box;border:2px solid #94a3b8;border-radius:999px;flex:none;width:18px;height:18px;margin-top:2px}.bus-stop-card.is-active .bus-stop-radio,.bus-stop-item.is-active .bus-stop-radio{border-color:var(--bus-blue);box-shadow:inset 0 0 0 4px var(--bus-blue)}.bus-stop-item strong,.bus-stop-line{flex-wrap:wrap;align-items:center;gap:6px;font-size:.95rem;font-weight:700;line-height:1.3;display:flex}.bus-stop-sep{color:var(--bus-muted);font-weight:600}.bus-stop-door-badge{color:#fff;letter-spacing:.01em;background:#16a34a;border-radius:6px;padding:2px 7px;font-size:.66rem;font-weight:600;display:inline-block}.bus-stop-default-badge{color:#1d4ed8;vertical-align:middle;background:#e8f1ff;border-radius:6px;margin-left:6px;padding:2px 6px;font-size:.62rem;font-weight:700;display:inline-block}.bus-stop-item em{color:var(--bus-muted);margin-top:4px;font-size:.78rem;font-style:normal;display:block}.bus-stop-fee{color:#16a34a;white-space:nowrap;font-size:.72rem;font-weight:700}.bus-book-stop-recap{border:1px solid var(--bus-line);color:#334155;background:#f8fafc;border-radius:12px;gap:4px;margin:0 0 14px;padding:10px 12px;font-size:.88rem;display:grid}.bus-stop-door-field{color:#334155;gap:6px;margin-top:10px;font-size:.82rem;font-weight:700;display:grid}@media (max-width:520px){.bus-stop-list{grid-template-columns:1fr}}.bus-book-section-title{margin:0 0 12px;font-size:1.05rem}.bus-pay-hint{margin:-6px 0 12px;font-size:.85rem}.bus-pay-points-intro{background:#f0f7ff;border:1px solid #dbeafe;border-radius:12px;margin:0 0 14px;padding:10px 12px}.bus-pay-points-intro strong{color:#1d4ed8;margin-bottom:4px;font-size:.88rem;display:block}.bus-pay-points-intro p{color:#475569;margin:0;font-size:.82rem;line-height:1.45}.bus-pay-reward-note{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:10px;margin:14px 0 0;padding:8px 12px;font-size:.82rem;line-height:1.45}.bus-book-policy{border-radius:12px;margin-bottom:12px;padding:10px 12px;font-size:.84rem;line-height:1.4}.bus-book-policy.is-pickup{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe}.bus-book-policy.is-dropoff{color:#9a3412;background:#fff7ed;border:1px solid #fed7aa}.bus-book-stop-toolbar{flex-direction:column;gap:8px;margin-bottom:8px;display:flex}.bus-book-sort{color:var(--bus-muted);justify-content:space-between;align-items:center;gap:8px;font-size:.78rem;font-weight:600;display:flex}.bus-book-sort select{font:inherit;color:#0f172a;border:1px solid var(--bus-line);background:#fff;border-radius:10px;padding:8px 10px;font-weight:700}.bus-stop-badge{color:var(--bus-blue);background:#eff6ff;border-radius:999px;margin-top:4px;padding:2px 8px;font-size:.68rem;font-weight:700;display:inline-block}.bus-book-phone{grid-template-columns:auto 1fr;align-items:stretch;gap:8px;display:grid}.bus-dial-trigger{border:1px solid var(--bus-line);color:#0f172a;height:44px;font:inherit;cursor:pointer;white-space:nowrap;background:#fff;border-radius:12px;align-items:center;gap:6px;padding:0 10px 0 8px;font-size:.92rem;font-weight:700;display:inline-flex}.bus-dial-trigger:focus-visible{outline:2px solid var(--bus-blue);outline-offset:2px}.bus-dial-flag{font-size:1.15rem;line-height:1}.bus-dial-code{font-variant-numeric:tabular-nums}.bus-dial-caret{border-top:5px solid #0f172a;border-left:4px solid #0000;border-right:4px solid #0000;width:0;height:0;margin-left:2px}.bus-dial-sheet{width:min(100%, var(--page-max));max-width:var(--page-max);z-index:calc(var(--zalo-bottom-nav-z,100) + 200);color:#0f172a;background:#fff;flex-direction:column;display:flex;position:fixed;inset:0 auto 0 50%;transform:translate(-50%)}body.bus-dial-sheet-open .zalo-bottom-nav{visibility:hidden;pointer-events:none}.bus-dial-sheet-head{background:var(--bus-blue);color:#fff;align-items:center;gap:8px;min-height:52px;padding:8px 10px;display:flex}.bus-dial-sheet-back{color:#fff;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.bus-dial-sheet-head h2{margin:0;font-size:1.05rem;font-weight:700}.bus-dial-search{background:#f1f5f9;border-radius:12px;align-items:center;gap:8px;min-height:44px;margin:12px 16px 8px;padding:0 12px;display:flex}.bus-dial-search-icon{color:#94a3b8;display:inline-flex}.bus-dial-search input{font:inherit;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:10px 0;font-size:.95rem}.bus-dial-list{flex:1;margin:0;padding:0 8px 24px;list-style:none;overflow:auto}.bus-dial-row{text-align:left;width:100%;font:inherit;color:#0f172a;cursor:pointer;background:0 0;border:0;border-radius:8px;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:14px 10px;font-size:.95rem;display:grid}.bus-dial-row.is-active,.bus-dial-row:hover{background:#f8fafc}.bus-dial-name{min-width:0}.bus-dial-row-code{color:#334155;font-variant-numeric:tabular-nums;white-space:nowrap}.bus-dial-empty{color:var(--bus-muted);padding:24px 16px;font-size:.9rem}.bus-book-check{align-items:center;gap:8px;margin:8px 0 12px;font-size:.88rem;display:flex}.bus-book-empty{color:var(--bus-muted);padding:16px 4px;font-size:.9rem}.bus-book-error{left:50%;right:auto;bottom:calc(var(--zalo-bottom-nav-offset,0px) + 88px);width:min(calc(100% - 24px), calc(var(--page-max) - 24px));max-width:calc(var(--page-max) - 24px);box-sizing:border-box;z-index:40;color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:10px 12px;font-size:.88rem;position:fixed;transform:translate(-50%)}.bus-book-done{padding-bottom:8px}.bus-book-done-hero{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:20px 16px 8px;display:flex}.bus-book-done-clock{color:#ea580c;background:#fff7ed;border:1px solid #fed7aa;border-radius:999px;place-items:center;width:64px;height:64px;display:grid}.bus-book-done-status{letter-spacing:.04em;text-transform:uppercase;color:#9a3412;margin:4px 0 0;font-size:.82rem;font-weight:800;line-height:1.35}.bus-book-done-code-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px 8px;margin-top:2px;display:flex}.bus-book-done-code-label{color:#64748b;font-size:.86rem}.bus-book-done-code{color:#0f172a;letter-spacing:.02em;font-size:1.05rem;font-weight:800}.bus-book-done-copy{color:#2563eb;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;padding:4px 10px;font-size:.78rem;font-weight:700}.bus-book-done-copy:hover{background:#eff6ff;border-color:#93c5fd}.bus-book-done-summary{text-align:left;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:8px;margin:12px 16px;padding:14px 16px;display:flex}.bus-book-done-journey{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin:0 16px 12px;padding:14px 16px 12px}.bus-book-done-journey-title{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0 0 12px;font-size:.78rem;font-weight:800}.bus-book-done-timeline{flex-direction:column;gap:0;margin:0;padding:0;list-style:none;display:flex}.bus-book-done-tl-item{grid-template-columns:18px minmax(0,1fr);gap:10px;padding-bottom:16px;display:grid;position:relative}.bus-book-done-tl-item:last-child{padding-bottom:0}.bus-book-done-tl-item:not(:last-child):before{content:"";background:#e2e8f0;width:2px;position:absolute;top:14px;bottom:0;left:8px;transform:translate(-50%)}.bus-book-done-tl-dot{z-index:1;background:#2563eb;border-radius:999px;justify-self:center;width:12px;height:12px;margin-top:4px;box-shadow:0 0 0 3px #dbeafe}.bus-book-done-tl-item.is-dropoff .bus-book-done-tl-dot{background:#ef4444;border-radius:2px;width:10px;height:10px;margin-top:5px;transform:rotate(45deg);box-shadow:0 0 0 3px #fee2e2}.bus-book-done-tl-label{color:#0f172a;margin:0;font-size:.88rem;font-weight:700}.bus-book-done-tl-label em{color:#64748b;font-style:normal;font-weight:600}.bus-book-done-tl-addr-row{align-items:flex-start;gap:8px;margin-top:4px;display:flex}.bus-book-done-tl-addr{color:#475569;flex:1;min-width:0;margin:0;font-size:.84rem;line-height:1.4}.bus-book-done-maps{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;flex-shrink:0;align-items:center;gap:4px;padding:4px 8px;font-size:.72rem;font-weight:700;line-height:1;text-decoration:none;display:inline-flex}.bus-book-done-maps svg{width:14px;height:14px}.bus-book-done-maps:hover{background:#dbeafe;border-color:#93c5fd}.bus-book-done-org{color:#0f172a;margin:0;font-size:1rem;font-weight:800}.bus-book-done-route{color:#1e293b;flex-wrap:wrap;align-items:center;gap:6px 8px;margin:0;font-size:.95rem;font-weight:700;display:flex}.bus-book-done-route-arrow{color:#94a3b8;letter-spacing:-.06em;font-size:.72rem;font-weight:600}.bus-book-done-when,.bus-book-done-seats,.bus-book-done-price{color:#475569;margin:0;font-size:.88rem;line-height:1.4}.bus-book-done-price strong{color:#0f172a;font-weight:800}.bus-book-done-price em{color:#16a34a;font-style:normal;font-weight:600}.bus-book-done-note{color:#1e3a8a;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;align-items:flex-start;gap:8px;margin:0 16px 14px;padding:10px 12px;font-size:.82rem;line-height:1.45;display:flex}.bus-book-done-note-icon{color:#2563eb;flex-shrink:0;margin-top:1px}.bus-book-done-actions{flex-direction:column;gap:10px;padding:0 16px 20px;display:flex}.bus-book-done-btn{box-sizing:border-box;text-align:center;cursor:pointer;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;width:100%;padding:13px 14px;font-size:.95rem;font-weight:700;line-height:1.25;text-decoration:none;display:flex}.bus-book-done-btn--primary{color:#fff;background:#16a34a;border-color:#15803d}.bus-book-done-btn--primary:hover{background:#15803d}.bus-book-done-btn--ghost{color:#334155;background:#fff;border-color:#cbd5e1}.bus-book-done-btn--ghost:hover{background:#f8fafc;border-color:#94a3b8}.bus-book.is-done{background:#f1f5f9;min-height:100%;padding-bottom:12px}.bus-book-done-card{text-align:center;background:#fff;border-radius:16px;margin:16px;padding:18px}.bus-book-search-input{width:100%;margin-bottom:8px}.bus-cancel-timeline{background:#fff;border-radius:12px;padding:4px 0 8px}.bus-cancel-timeline-head{color:#94a3b8;text-transform:uppercase;letter-spacing:.02em;grid-template-columns:1fr auto;gap:8px;padding:4px 12px 10px 32px;font-size:.72rem;font-weight:700;display:grid}.bus-cancel-timeline ol{margin:0;padding:0;list-style:none}.bus-cancel-row{color:#0f172a;grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px 12px;font-size:.9rem;display:grid;position:relative}.bus-cancel-row i{z-index:1;background:#22c55e;border-radius:999px;width:10px;height:10px;box-shadow:0 0 0 3px #fff}.bus-cancel-row.is-fee-partial i,.bus-cancel-row.is-fee-100 i{background:#ef4444}.bus-cancel-row.is-fee-partial i{background:#f97316}.bus-cancel-row:not(:last-child):before{content:"";border-left:1.5px dashed #cbd5e1;position:absolute;top:22px;bottom:-6px;left:16px}.bus-cancel-row.is-now{background:#f0fdf4;border-radius:10px}.bus-cancel-row.is-now.is-fee-partial{background:#fff7ed}.bus-cancel-row.is-now.is-fee-100{background:#fef2f2}.bus-cancel-row b{color:#16a34a;white-space:nowrap;font-size:.9rem;font-weight:800}.bus-cancel-row.is-fee-partial b{color:#ea580c}.bus-cancel-row.is-fee-100 b{color:#dc2626}.bus-trip-detail{border-top:1px solid #e2e8f0;margin-top:10px;padding-top:10px}.bus-trip-detail-tabs{border-bottom:1px solid #e2e8f0;gap:16px;margin-bottom:8px;display:flex}.bus-trip-detail-tabs button{color:#64748b;cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;margin-bottom:-1px;padding:8px 0;font-size:.9rem;font-weight:700}.bus-trip-detail-tabs button.is-active{color:#0f172a;border-bottom-color:#2563eb}.bus-trip-detail-other{color:#334155;gap:10px;padding:8px 4px 4px;font-size:.86rem;line-height:1.45;display:grid}.bus-trip-detail-other dt{color:#0f172a;font-weight:700}.bus-trip-detail-other dd{margin:2px 0 0}.bus-trip-detail-toggle{color:#2563eb;cursor:pointer;background:0 0;border:0;padding:8px 0 0;font-size:.84rem;font-weight:700}.fleet-booking-ops-detail-vat-flag{color:#b45309;margin:4px 0 0;font-size:.82rem;font-weight:600}.fleet-booking-vat-detail{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;margin:0 0 14px;padding:12px 14px}.fleet-booking-vat-detail header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.fleet-booking-vat-detail header strong{font-size:.92rem}.fleet-booking-ticket-detail{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;margin:0 0 14px;padding:12px 14px}.fleet-booking-ticket-detail header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.fleet-booking-ticket-detail header strong{font-size:.92rem}.fleet-booking-ticket-img-link{display:block}.fleet-booking-ticket-img{object-fit:contain;background:#fff;border:1px solid #dcfce7;border-radius:10px;width:100%;max-height:280px;display:block}.fleet-booking-ticket-note{color:#166534;margin:10px 0 0;font-size:.9rem}.fleet-booking-ticket-note span{font-weight:600}.fleet-booking-ticket-drop{background:#f8fafc;border:1.5px dashed #86efac;border-radius:12px;outline:none;padding:14px}.fleet-booking-ticket-drop:focus{border-color:#16a34a;box-shadow:0 0 0 3px #16a34a26}.fleet-booking-ticket-preview{flex-direction:column;align-items:flex-start;gap:10px;display:flex}.fleet-booking-ticket-preview img{object-fit:contain;background:#fff;border-radius:8px;max-width:100%;max-height:220px}.fleet-booking-ticket-file{color:#166534;flex-direction:column;gap:6px;margin-top:10px;font-size:.85rem;font-weight:600;display:inline-flex}.fleet-booking-ticket-file input[type=file]{font-size:.82rem;font-weight:500}.my-bus-fleet-ticket{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:12px;margin-top:12px;padding:12px}.my-bus-fleet-ticket h3{margin:0 0 10px;font-size:.95rem}.my-bus-fleet-ticket img{object-fit:contain;background:#fff;border-radius:10px;width:100%;max-height:360px;display:block}.my-bus-fleet-ticket-thumb{cursor:zoom-in;background:0 0;border:0;border-radius:10px;width:100%;padding:0;display:block;position:relative;overflow:hidden}.my-bus-fleet-ticket-thumb img{margin:0}.my-bus-fleet-ticket-zoom{color:#fff;background:#0f172ab8;border-radius:999px;padding:4px 10px;font-size:.75rem;font-weight:600;position:absolute;bottom:8px;left:8px}.my-bus-fleet-ticket-actions{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.my-bus-trip-ticket-btn{color:#166534;cursor:pointer;background:#ecfdf5;border:1px solid #86efac;border-radius:999px;padding:6px 12px;font-size:.82rem;font-weight:600}.my-bus-trip-ticket-btn:hover{background:#dcfce7}.my-bus-trip-card-wrap{flex-direction:column;gap:0;display:flex}.my-bus-trip-card-actions{margin-top:-4px;padding:0 14px 12px}.my-bus-ticket-lightbox-backdrop{z-index:calc(var(--zalo-overlay-z) + 10)}.my-bus-ticket-lightbox{width:100%;max-width:var(--page-max);border-radius:16px 16px 0 0;flex-direction:column;max-height:min(88dvh,100dvh - 12px);padding-top:0;padding-left:16px;padding-right:16px;display:flex;overflow:hidden}.my-bus-ticket-lightbox-head{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:12px;padding:4px 0 12px;display:flex}.my-bus-ticket-lightbox-head strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;overflow:hidden}.my-bus-ticket-lightbox-close{cursor:pointer;background:#f1f5f9;border:0;border-radius:999px;flex-shrink:0;padding:6px 12px;font-weight:600}.my-bus-ticket-lightbox-body{-webkit-overflow-scrolling:touch;background:#f8fafc;flex:1;min-height:0;padding:12px 0;overflow:auto}.my-bus-ticket-lightbox-body img{object-fit:contain;background:#fff;border-radius:10px;width:100%;max-height:min(52dvh,420px);display:block}.my-bus-ticket-lightbox-foot{border-top:1px solid #e2e8f0;flex-direction:column;gap:8px;padding:12px 0 4px;display:flex}.my-bus-ticket-lightbox-foot .btn-primary,.my-bus-ticket-lightbox-foot .btn-outline{text-align:center;justify-content:center;width:100%}.my-bus-ticket-lightbox .my-bus-fleet-ticket-note{margin:0;padding:0 0 8px}@media (min-width:520px){.my-bus-ticket-lightbox-backdrop.room-chat-sheet-backdrop{align-items:center;padding:16px}.my-bus-ticket-lightbox{max-height:min(92dvh,860px);padding-bottom:max(20px, var(--safe-bottom));border-radius:16px}.my-bus-ticket-lightbox-foot{flex-direction:row}.my-bus-ticket-lightbox-foot .btn-primary,.my-bus-ticket-lightbox-foot .btn-outline{flex:1 1 0}}.my-bus-fleet-ticket-note{color:#166534;margin:10px 0 0;font-size:.9rem}.fleet-vat-tabs{border:1px solid #e2e8f0;border-radius:10px;display:inline-flex;overflow:hidden}.fleet-vat-tabs button{font:inherit;color:#64748b;cursor:pointer;background:#fff;border:0;padding:8px 12px;font-size:.85rem;font-weight:600}.fleet-vat-tabs button.is-active{color:#fff;background:#0f172a}.fleet-booking-ops-loading{color:#64748b;padding:24px 16px}.fleet-booking-ops{width:100%;max-width:none;min-height:0;font-size:var(--fleet-ops-text,.8125rem);--fleet-ops-text:.8125rem;--fleet-ops-text-sm:.75rem;--fleet-ops-title:1rem;--fleet-ops-gap:10px;background:#f8fafc;border-radius:0;flex-direction:column;margin:0;line-height:1.45;display:flex;overflow:visible}.zalo-app--fleet-desktop .fleet-booking-ops{height:auto;min-height:0}.fleet-booking-ops-side{color:#e2e8f0;background:#0f172a;flex-direction:column;flex:none;width:220px;padding:16px 12px;display:flex}.fleet-booking-ops-brand{flex-direction:column;gap:4px;padding:4px 8px 16px;display:flex}.fleet-booking-ops-brand strong{color:#fff;font-size:1rem}.fleet-booking-ops-brand span{color:#94a3b8;font-size:.72rem}.fleet-booking-ops-nav{flex-direction:column;flex:1;gap:4px;display:flex}.fleet-booking-ops-nav a{color:#cbd5e1;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:10px 12px;font-size:.9rem;font-weight:600;text-decoration:none;display:flex}.fleet-booking-ops-nav a.is-active,.fleet-booking-ops-nav a:hover{color:#fff;background:#1e293b}.fleet-booking-ops-nav-badge{color:#fff;text-align:center;background:#ea580c;border-radius:999px;flex:none;min-width:1.25rem;padding:1px 6px;font-size:.72rem;font-weight:700;line-height:1.35}.fleet-booking-ops-side-foot{border-top:1px solid #334155;flex-direction:column;gap:8px;padding-top:12px;display:flex}.fleet-booking-ops-side-foot a{color:#94a3b8;padding:4px 8px;font-size:.8rem;text-decoration:none}.fleet-booking-ops-main{background:#fff;flex:1;min-width:0;padding:12px 16px 20px;display:block;overflow:visible}.fleet-booking-ops-panel{padding-right:0;overflow:visible}.fleet-booking-ops-panel-head h1{font-size:var(--fleet-ops-title,1rem);margin:0;font-weight:700}.fleet-booking-rating-summary-card{font-size:var(--fleet-ops-text,.8125rem);background:linear-gradient(135deg,#eff6ff 0%,#f8fafc 100%);border:1px solid #dbeafe;border-radius:10px;flex-wrap:wrap;align-items:center;gap:6px 12px;margin:0 0 10px;padding:10px 12px;display:flex}.fleet-booking-rating-summary-card b{color:#0f172a;font-size:1.1rem}.fleet-booking-rating-summary-card span.muted{font-size:.85rem}.fleet-booking-rating-loading{font-size:var(--fleet-ops-text-sm,.75rem);margin:0 0 8px}.fleet-wallet-table-label{flex-direction:column;gap:1px;min-width:0;max-width:22rem;display:flex}.fleet-wallet-table-label code{color:#0f172a;letter-spacing:.01em;font-size:.78rem;font-weight:700}.fleet-wallet-table-context{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;line-height:1.3;overflow:hidden}.fleet-booking-ops-search{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.fleet-booking-ops-search input{border:1px solid #cbd5e1;border-radius:8px;flex:1;min-width:180px;padding:8px 10px}.fleet-booking-rating-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fleet-booking-rating-list li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px 14px}.fleet-booking-rating-row-top{flex-wrap:wrap;justify-content:space-between;gap:6px 12px;margin-bottom:6px;font-size:.9rem;display:flex}.fleet-booking-rating-list p{color:#334155;margin:0 0 4px;font-size:.88rem}.fleet-booking-rating-contact{color:#475569;margin:0 0 6px;font-size:.85rem}.fleet-booking-rating-badges{flex-wrap:wrap;align-items:center;gap:8px 12px;margin-top:8px;font-size:.78rem;display:flex}.fleet-booking-ops-pager{align-items:center;gap:10px;margin-top:14px;display:flex}.fleet-booking-ops-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 10px;margin-bottom:10px;display:flex}.fleet-booking-push-nudge{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;flex-wrap:nowrap;justify-content:space-between;align-items:center;gap:8px 10px;margin:0 0 10px;padding:6px 10px;display:flex}.fleet-booking-push-nudge--help{flex-wrap:wrap;align-items:flex-start}.fleet-booking-push-nudge-copy{flex:auto;min-width:0}.fleet-booking-push-nudge-copy strong{color:#92400e;white-space:nowrap;text-overflow:ellipsis;font-size:.82rem;font-weight:700;line-height:1.25;display:block;overflow:hidden}.fleet-booking-push-nudge--help .fleet-booking-push-nudge-copy strong{white-space:normal}.fleet-booking-push-nudge-copy p{color:#78716c;margin:2px 0 0;font-size:.75rem;line-height:1.35}.fleet-booking-push-nudge-msg{font-weight:600;color:#b45309!important}.fleet-booking-push-nudge-actions{flex-wrap:nowrap;flex-shrink:0;align-items:center;gap:6px;display:flex}.fleet-booking-push-nudge-btn{color:#44403c;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d6d3d1;border-radius:6px;justify-content:center;align-items:center;margin:0;padding:4px 9px;font-size:.75rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.fleet-booking-push-nudge-btn:hover{background:#fafaf9}.fleet-booking-push-nudge-btn--primary{color:#fff;background:#16a34a;border-color:#16a34a}.fleet-booking-push-nudge-btn--primary:hover{background:#15803d}.fleet-booking-push-nudge-btn--primary:disabled{opacity:.65;cursor:wait}@media (max-width:640px){.fleet-booking-push-nudge{flex-wrap:wrap}.fleet-booking-push-nudge-actions{justify-content:flex-end;width:100%}}.fleet-booking-ops-head h1{font-size:var(--fleet-ops-title,1rem);flex:none;margin:0;font-weight:700}.fleet-booking-ops-head--row{flex-wrap:nowrap}.fleet-booking-ops-head--row h1{text-overflow:ellipsis;white-space:nowrap;max-width:9rem;overflow:hidden}.fleet-booking-ops-head--row .fleet-booking-ops-tools{flex:1 1 0;min-width:0}.fleet-booking-ops-date-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;margin-bottom:10px;display:flex}.fleet-booking-ops-date-chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fleet-booking-ops-date-chips button{font:inherit;cursor:pointer;color:#475569;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px 9px;font-size:.78rem}.fleet-booking-ops-date-chips button.is-active{color:#9a3412;background:#fff7ed;border-color:#ea580c;font-weight:600}.fleet-booking-ops-date-picker input{font:inherit;color:#334155;border:1px solid #e2e8f0;border-radius:8px;padding:5px 8px;font-size:.85rem}.fleet-booking-ops-date-summary{color:#64748b;white-space:nowrap;margin:0;font-size:.82rem}.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}.fleet-booking-ops-tools{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.fleet-booking-ops-tools input{width:auto;min-width:0;max-width:none;font-size:var(--fleet-ops-text,.8125rem);background:#fff;border:1px solid #cbd5e1;border-radius:8px;flex:auto;min-height:32px;padding:6px 10px}.fleet-booking-ops-tools .btn-outline,.fleet-booking-ops-tools .btn-primary{width:auto;min-height:32px;font-size:var(--fleet-ops-text-sm,.75rem);white-space:nowrap;flex:none;padding:5px 10px}.fleet-booking-ops-refresh-btn{min-width:0;padding:5px 8px}.fleet-booking-ops-grid{grid-template-columns:minmax(220px,.95fr) minmax(280px,1.15fr);align-items:start;gap:10px;display:grid}.fleet-booking-ops-list{flex-direction:column;gap:8px;display:flex}.fleet-booking-ops-list-pager{flex-wrap:wrap;justify-content:center;margin-top:4px}.fleet-booking-ops-pager-btn{width:auto;min-height:32px;font-size:var(--fleet-ops-text-sm,.75rem);padding:5px 12px}.fleet-booking-ops-pager .muted{font-size:var(--fleet-ops-text-sm,.75rem);white-space:nowrap}.fleet-booking-order-card{text-align:left;cursor:pointer;font-size:var(--fleet-ops-text,.8125rem);background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:6px;padding:9px 11px;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.fleet-booking-order-card:hover{background:#f8fafc;border-color:#cbd5e1}.fleet-booking-order-card.is-active{background:#f8fbff;border-color:#2563eb;box-shadow:0 0 0 2px #2563eb2e}.fleet-booking-order-card-top{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.fleet-booking-order-card-code{font-size:var(--fleet-ops-text,.8125rem);letter-spacing:.01em;color:#0f172a;text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:700;overflow:hidden}.fleet-booking-order-card-status{color:#334155;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;flex-shrink:0;padding:3px 8px;font-size:.72rem;font-weight:600;line-height:1.2}.fleet-booking-order-card-status.is-requested{color:#b45309;background:#fff7ed;border-color:#fed7aa}.fleet-booking-order-card-status.is-confirmed{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.fleet-booking-order-card-status.is-cancelled{color:#b91c1c;background:#fef2f2;border-color:#fecaca}.fleet-booking-order-card-status.is-completed{color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.fleet-booking-order-card.is-active .fleet-booking-order-card-status.is-requested{color:#b45309;background:#fff7ed;border-color:#fed7aa}.fleet-booking-order-card-mid{flex-direction:column;gap:4px;min-width:0;display:flex}.fleet-booking-order-card-price{font-size:var(--fleet-ops-text,.8125rem);color:#0f172a;letter-spacing:-.01em;font-weight:800}.fleet-booking-order-card-contact{color:#475569;min-width:0;font-size:var(--fleet-ops-text-sm,.75rem);flex-wrap:wrap;align-items:center;gap:4px;font-style:normal;line-height:1.35;display:flex}.fleet-booking-order-card-contact>span[aria-hidden]{color:#94a3b8}.fleet-booking-order-card-meta{color:#64748b;font-size:var(--fleet-ops-text-sm,.75rem);border-top:1px solid #f1f5f9;margin:0;padding-top:4px;line-height:1.35}.fleet-booking-ops-detail{font-size:var(--fleet-ops-text,.8125rem);background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:0}.fleet-booking-ops-detail.is-empty{padding:14px 12px}.fleet-booking-ops-detail-head{border-bottom:1px solid #e2e8f0;margin:0;padding:10px 12px 8px}.fleet-booking-ops-detail-head strong{font-size:var(--fleet-ops-text,.8125rem);color:#0f172a;font-weight:700;display:block}.fleet-booking-ops-detail-summary{font-size:var(--fleet-ops-text-sm,.75rem);color:#1e40af;background:#f8fbff;border-bottom:1px solid #e2e8f0;margin:0;padding:8px 12px;font-weight:600;line-height:1.4}.fleet-booking-ops-detail-body{padding:10px 12px}.fleet-booking-ops-detail-actions{background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;gap:6px;padding:8px 12px 10px;display:flex}.fleet-booking-ops-detail-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;margin:0 0 10px;padding:8px 10px}.fleet-booking-ops-detail-section:last-child{margin-bottom:0}.fleet-booking-ops-detail-section-title{font-size:var(--fleet-ops-text-sm,.75rem);letter-spacing:.03em;text-transform:uppercase;color:#64748b;margin:0 0 8px;font-weight:700}.fleet-booking-ops-detail .bus-trip-detail-facts{--bus-muted:#64748b;--bus-line:#e2e8f0;border-bottom:0;gap:6px;padding-bottom:0}.fleet-booking-ops-detail .bus-trip-detail-facts>div{font-size:var(--fleet-ops-text,.8125rem);grid-template-columns:5.5rem minmax(0,1fr);gap:6px}.fleet-booking-ops-detail .bus-trip-detail-stops{--bus-blue:#2563eb;--bus-muted:#64748b;gap:8px;padding:0}.fleet-booking-ops-detail .bus-trip-detail-stop-name,.fleet-booking-ops-detail .bus-trip-detail-stop-eta{font-size:var(--fleet-ops-text-sm,.75rem)}.fleet-booking-ops-detail-code{font-size:var(--fleet-ops-text,.8125rem)}.fleet-booking-ops-detail-status{font-size:var(--fleet-ops-text-sm,.75rem)}.fleet-booking-ops-actions{border:0;flex-wrap:wrap;align-items:center;gap:6px;margin:0;padding:0;display:flex}.fleet-booking-ops-btn{min-height:32px;font-size:var(--fleet-ops-text,.8125rem);padding:6px 12px}.fleet-ops-modal-backdrop{z-index:1200;background:#0f172a73;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.fleet-ops-modal{width:min(100%,420px);max-height:min(90dvh,640px);font-size:var(--fleet-ops-text,.8125rem);background:#fff;border-radius:12px;overflow:auto;box-shadow:0 16px 48px #0f172a38}.fleet-ops-modal-head{border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;display:flex}.fleet-ops-modal-head h3{font-size:var(--fleet-ops-title,1rem);margin:0;font-weight:700}.fleet-ops-modal-close{min-height:32px;font-size:var(--fleet-ops-text-sm,.75rem);padding:4px 10px}.fleet-ops-modal-body{padding:12px}.fleet-ops-modal-foot{background:#f8fafc;border-top:1px solid #e2e8f0;flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:10px 12px;display:flex}.fleet-ops-tabs{border:1px solid #e2e8f0;border-radius:8px;margin-bottom:10px;display:inline-flex;overflow:hidden}.fleet-ops-tabs button{font:inherit;font-size:var(--fleet-ops-text,.8125rem);color:#64748b;cursor:pointer;background:#fff;border:0;padding:6px 12px;font-weight:600}.fleet-ops-tabs button.is-active{color:#fff;background:#0f172a}.fleet-booking-ops-detail-head strong{color:#0f172a;font-size:1.05rem;display:block}.fleet-booking-ops-detail-head p{color:#64748b;margin:4px 0 0;font-size:.82rem}.fleet-booking-ops-detail-meta{flex-direction:column;align-items:flex-start;gap:4px;margin-top:6px;display:flex}.fleet-booking-ops-detail-code-row{align-items:center;gap:8px;max-width:100%;display:flex}.fleet-booking-ops-detail-code{color:#0f172a;font-variant-numeric:tabular-nums;letter-spacing:.02em;word-break:break-all;font-size:.95rem;font-weight:700}.fleet-booking-ops-detail-status{color:#64748b;margin:0;font-size:.82rem}.fleet-booking-ops-detail-processors{font-size:var(--fleet-ops-text-sm,.75rem);color:#334155;margin:4px 0 0;font-weight:600}.fleet-booking-ops-detail-loading{font-size:var(--fleet-ops-text-sm,.75rem);margin:4px 0 0}.fleet-booking-ops-history{gap:8px;margin:0;padding:0;list-style:none;display:grid}.fleet-booking-ops-history li{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.fleet-booking-ops-history-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 10px;margin-bottom:4px;display:flex}.fleet-booking-ops-history-top strong{font-size:var(--fleet-ops-text,.8125rem);color:#0f172a}.fleet-booking-ops-history-actor{font-size:var(--fleet-ops-text-sm,.75rem);color:#475569;margin:0}.fleet-booking-ops-history-note{font-size:var(--fleet-ops-text-sm,.75rem);color:#64748b;margin:4px 0 0}.fleet-booking-copy-value{justify-content:flex-end;align-items:center;gap:8px;min-width:0;max-width:100%;display:inline-flex}.fleet-booking-copy-value>span:first-child{word-break:break-word;min-width:0}.fleet-booking-ops-detail .bus-trip-detail-facts dd:has(.fleet-booking-copy-value){justify-content:flex-end;display:flex}.fleet-booking-copy-btn{color:#64748b;cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;min-width:30px;height:30px;padding:0;line-height:0;display:inline-flex}.fleet-booking-copy-btn svg{flex-shrink:0;display:block}.fleet-booking-copy-btn:hover:not(:disabled){color:#1d4ed8;background:#eff6ff;border-color:#bfdbfe}.fleet-booking-copy-btn:disabled{opacity:.4;cursor:not-allowed}.fleet-booking-copy-btn.is-copied{color:#059669;background:#ecfdf5;border-color:#a7f3d0}.fleet-booking-ops-detail .bus-trip-detail-stop-head{gap:10px}.fleet-booking-ops-detail .bus-trip-detail-stop-head .fleet-booking-copy-btn{margin-left:auto}.fleet-booking-ops-detail .bus-trip-detail-facts{--bus-muted:#64748b;--bus-line:#e2e8f0}.fleet-booking-ops-detail .bus-trip-detail-stops{--bus-blue:#2563eb;--bus-muted:#64748b}.fleet-booking-ops-detail h2{margin:0 0 12px;font-size:1.1rem}.fleet-booking-ops-dl{flex-direction:column;gap:10px;margin:0;display:flex}.fleet-booking-ops-dl div{grid-template-columns:110px 1fr;gap:8px;font-size:.9rem;display:grid}.fleet-booking-ops-dl dt{color:#64748b;margin:0}.fleet-booking-ops-dl dd{color:#0f172a;margin:0;font-weight:600}.fleet-booking-ops-route{background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;gap:0;margin:14px 0 4px;padding:12px 12px 12px 14px;display:flex;position:relative}.fleet-booking-ops-route-row{grid-template-columns:14px minmax(0,1fr);align-items:start;gap:10px;min-width:0;display:grid}.fleet-booking-ops-route-dot{border-radius:50%;justify-self:center;width:10px;height:10px;margin-top:5px;box-shadow:0 0 0 3px #fff}.fleet-booking-ops-route-row.is-pickup .fleet-booking-ops-route-dot{background:#2563eb}.fleet-booking-ops-route-row.is-dropoff .fleet-booking-ops-route-dot{background:#ef4444}.fleet-booking-ops-route-rail{background:linear-gradient(#93c5fd,#fca5a5);border-radius:2px;width:2px;height:10px;margin:2px 0 2px 6px}.fleet-booking-ops-route-text{color:#0f172a;word-break:break-word;margin:0;font-size:.9rem;font-weight:600;line-height:1.4}.fleet-booking-ops-actions{border-top:1px solid #e2e8f0;flex-direction:column;align-items:stretch;gap:10px;margin:12px 0 4px;padding-top:12px;display:flex}.fleet-booking-ops-actions-row{flex-flow:row;align-items:stretch;gap:10px;display:flex}.fleet-booking-reject-note{color:#64748b;flex-direction:column;gap:6px;margin:0;font-size:.82rem;display:flex}.fleet-booking-reject-note textarea{box-sizing:border-box;resize:vertical;width:100%;min-height:64px;font:inherit;color:#0f172a;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px}.fleet-booking-reject-note textarea:focus{outline-offset:1px;border-color:#93c5fd;outline:2px solid #bfdbfe}.fleet-booking-cancel-form{flex-direction:column;gap:12px;width:100%;display:flex}.fleet-booking-cancel-reasons{border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;gap:8px;margin:0;padding:10px 12px;display:flex}.fleet-booking-cancel-reasons legend{color:#64748b;padding:0 4px;font-size:.82rem;font-weight:600}.fleet-booking-cancel-reason{cursor:pointer;color:#0f172a;align-items:flex-start;gap:8px;font-size:.88rem;display:flex}.fleet-booking-cancel-reason input{flex-shrink:0;margin-top:3px}.fleet-booking-cancel-reason strong{font-weight:600;display:block}.fleet-booking-cancel-reason em{color:#64748b;margin-top:2px;font-size:.78rem;font-style:normal;display:block}.fleet-booking-cancel-form .fleet-booking-ops-btn--cancel{flex:none;width:100%}.fleet-booking-order-card-status.is-rejected{color:#991b1b;background:#fef2f2}.fleet-booking-ops-btn{cursor:pointer;border:1px solid #0000;border-radius:10px;flex:1 1 0;min-width:0;margin:0;padding:11px 12px;font-size:.92rem;font-weight:700;line-height:1.2;transition:background .15s,border-color .15s,opacity .15s}.fleet-booking-ops-btn:disabled{opacity:.55;cursor:not-allowed}.fleet-booking-ops-btn--confirm{color:#fff;background:#16a34a;border-color:#15803d}.fleet-booking-ops-btn--confirm:hover:not(:disabled){background:#15803d}.fleet-booking-ops-btn--reject{color:#991b1b;background:#f8fafc;border-color:#cbd5e1}.fleet-booking-ops-btn--reject:hover:not(:disabled){color:#fff;background:#dc2626;border-color:#b91c1c}.fleet-booking-ops-btn--cancel{color:#475569;background:#fff;border-color:#cbd5e1}.fleet-booking-ops-btn--cancel:hover:not(:disabled){background:#f1f5f9;border-color:#94a3b8}.fleet-booking-ops-btn--history{color:#475569;background:#fff;border:1px solid #cbd5e1}.fleet-booking-ops-btn--history:hover:not(:disabled){color:#0f172a;background:#f8fafc;border-color:#64748b}.fleet-booking-ops-history-summary{font-size:var(--fleet-ops-text-sm,.75rem);color:#334155;background:#f1f5f9;border-radius:8px;margin:0 0 10px;padding:8px 10px;font-weight:600}.fleet-booking-ops-detail .bus-trip-detail-stops{padding-top:10px}.fleet-booking-wallet-balance{background:#eff6ff;border-radius:12px;flex-direction:column;gap:6px;margin-bottom:14px;padding:16px;display:flex}.fleet-booking-wallet-balance strong{color:#1d4ed8;font-size:1.5rem}.fleet-booking-wallet-ledger{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fleet-booking-wallet-ledger li{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.fleet-booking-wallet-ledger li div{justify-content:space-between;gap:8px;display:flex}.fleet-booking-wallet-ledger em{color:#64748b;margin-top:4px;font-size:.82rem;font-style:normal;display:block}.fleet-wallet-cards{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr) minmax(0,1fr);gap:12px;margin-bottom:16px;display:grid}@media (max-width:900px){.fleet-wallet-cards{grid-template-columns:1fr 1fr}.fleet-wallet-card--primary{grid-column:1/-1}}@media (max-width:520px){.fleet-wallet-cards{grid-template-columns:1fr}}.fleet-wallet-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;gap:4px;padding:16px;display:flex;box-shadow:0 1px 2px #0f172a0a}.fleet-wallet-card--primary{background:linear-gradient(160deg,#eff6ff 0%,#fff 55%);border-color:#bfdbfe}.fleet-wallet-card--pending{background:linear-gradient(160deg,#fffbeb 0%,#fff 55%);border-color:#fde68a}.fleet-wallet-card--revenue{background:linear-gradient(160deg,#f0fdf4 0%,#fff 55%);border-color:#bbf7d0}.fleet-wallet-card--debt{background:linear-gradient(160deg,#fef2f2 0%,#fff 55%);border-color:#fecaca}.fleet-wallet-card--debt h2{color:#b91c1c}.fleet-wallet-cash-warn{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 16px;padding:12px 14px;font-size:.9rem;display:flex}.fleet-wallet-cash-warn p{flex:200px;margin:0}.fleet-wallet-card h2{letter-spacing:.02em;text-transform:uppercase;color:#64748b;margin:0 0 4px;font-size:.78rem;font-weight:600}.fleet-wallet-card--primary h2{color:#1d4ed8}.fleet-wallet-card--pending h2{color:#b45309}.fleet-wallet-card--revenue h2{color:#15803d}.fleet-wallet-card-actions{scrollbar-width:none;flex-wrap:nowrap;gap:6px;margin-top:12px;display:flex;overflow-x:auto}.fleet-wallet-card-actions::-webkit-scrollbar{display:none}.fleet-wallet-action-btn{min-width:0;font:inherit;cursor:pointer;white-space:nowrap;text-align:center;border:none;border-radius:8px;flex:1 1 0;padding:7px 8px;font-size:.72rem;font-weight:600;line-height:1.25;transition:filter .15s,box-shadow .15s}.fleet-wallet-action-btn:hover{filter:brightness(1.06);box-shadow:0 2px 6px #0f172a1f}.fleet-wallet-action-btn--transfer{color:#fff;background:#2563eb}.fleet-wallet-action-btn--withdraw{color:#fff;background:#059669}.fleet-wallet-action-btn--qr{color:#fff;background:#7c3aed}.fleet-wallet-action-btn--history{color:#475569;background:#f1f5f9;border:1px solid #cbd5e1}.fleet-wallet-card-note{font-size:var(--fleet-ops-text-sm,.75rem);margin:10px 0 0}.fleet-wallet-card-hint{color:#64748b;margin:8px 0 0;font-size:.78rem}.fleet-wallet-card--primary .fleet-wallet-dual strong{color:#1e3a8a}.fleet-wallet-card--pending .fleet-wallet-dual strong{color:#92400e}.fleet-wallet-card--revenue .fleet-wallet-dual strong{color:#166534}.fleet-wallet-dual{flex-direction:column;gap:2px;display:flex}.fleet-wallet-dual strong{color:#0f172a;font-size:1.15rem;font-weight:700;line-height:1.2}.fleet-wallet-unit{color:#94a3b8;margin-left:.15em;font-size:.62em;font-weight:500}.fleet-wallet-dual em{color:#64748b;font-size:.8rem;font-style:normal;line-height:1.2}.fleet-wallet-dual.is-credit strong,.fleet-wallet-micro-sum .is-credit{color:#15803d}.fleet-wallet-dual.is-debit strong,.fleet-wallet-micro-sum .is-debit{color:#b91c1c}.fleet-wallet-dual--compact{align-items:flex-end;gap:0}.fleet-wallet-dual--compact strong{font-variant-numeric:tabular-nums;font-size:.88rem}.fleet-wallet-dual--compact em{color:#94a3b8;font-size:.68rem}.fleet-wallet-dual--compact .fleet-wallet-unit{margin-left:.12em;font-size:.9em}.fleet-wallet-ledger{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-top:4px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.fleet-wallet-filters{background:#f8fafc;border-bottom:1px solid #e2e8f0;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.fleet-wallet-preset-row{flex-wrap:wrap;gap:5px;display:flex}.fleet-wallet-preset-row button{font:inherit;cursor:pointer;color:#475569;white-space:nowrap;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px 9px;font-size:.75rem}.fleet-wallet-preset-row button.is-active{color:#9a3412;background:#fff7ed;border-color:#ea580c;font-weight:600}.fleet-wallet-date-row{flex-wrap:wrap;align-items:flex-end;gap:8px 12px;display:flex}.fleet-wallet-date-row label{color:#64748b;flex-direction:column;gap:3px;font-size:.72rem;display:flex}.fleet-wallet-date-row input{font:inherit;color:#334155;border:1px solid #e2e8f0;border-radius:8px;padding:5px 8px;font-size:.82rem}.fleet-wallet-filter-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.fleet-wallet-dir-inline select{font:inherit;color:#334155;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:4px 8px;font-size:.78rem}.fleet-wallet-micro-sum{flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin:0;font-size:.8rem;font-weight:600;display:flex}.fleet-wallet-micro-sum small{opacity:.75;font-size:.7em;font-weight:500}.fleet-wallet-micro-sep{color:#cbd5e1;font-weight:400}.fleet-wallet-table-wrap{-webkit-overflow-scrolling:touch;overflow-x:auto}.fleet-wallet-table{border-collapse:collapse;width:100%;font-size:.82rem}.fleet-wallet-table th,.fleet-wallet-table td{text-align:left;vertical-align:middle;border-bottom:1px solid #f1f5f9;padding:8px 12px}.fleet-wallet-table th{letter-spacing:.04em;text-transform:uppercase;color:#94a3b8;white-space:nowrap;background:#fff;font-size:.68rem;font-weight:600}.fleet-wallet-table th.is-num,.fleet-wallet-table td.is-num{text-align:right}.fleet-wallet-table tbody tr{cursor:pointer;transition:background .12s}.fleet-wallet-table tbody tr:hover{background:#f8fafc}.fleet-wallet-table tbody tr:last-child td{border-bottom:none}.fleet-wallet-when{white-space:nowrap;flex-direction:column;gap:0;line-height:1.25;display:flex}.fleet-wallet-when b{color:#0f172a;font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:650}.fleet-wallet-when span{color:#94a3b8;font-size:.68rem}.fleet-wallet-type-pill{color:#475569;text-overflow:ellipsis;white-space:nowrap;background:#f1f5f9;border-radius:6px;max-width:9.5rem;padding:2px 7px;font-size:.7rem;font-weight:550;line-height:1.35;display:inline-block;overflow:hidden}.fleet-wallet-pager{color:#64748b;border-top:1px solid #e2e8f0;justify-content:center;align-items:center;gap:10px;padding:10px 12px;font-size:.82rem;display:flex}.fleet-wallet-modal-backdrop{z-index:80;background:#0f172a73;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}@media (min-width:720px){.fleet-wallet-modal-backdrop{align-items:center}}.fleet-wallet-modal{background:#fff;border-radius:16px;width:min(480px,100%);max-height:90vh;padding:16px;overflow:auto;box-shadow:0 16px 40px #0f172a33}.fleet-wallet-modal header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;display:flex}.fleet-wallet-modal h3{margin:0;font-size:1.05rem}.fleet-wallet-modal dl{gap:8px;margin:0;display:grid}.fleet-wallet-modal dt{color:#64748b;font-size:.75rem}.fleet-wallet-modal dd{margin:0}.fleet-wallet-transfer-label{flex-direction:column;gap:6px;margin:12px 0;font-size:.88rem;display:flex}.fleet-wallet-transfer-label input{font:inherit;border:1px solid #e2e8f0;border-radius:8px;padding:10px 12px}@media (max-width:899px){.fleet-booking-ops{border-radius:0;flex-direction:column;min-height:0;overflow:visible}.fleet-booking-ops-side{flex-shrink:0;width:100%;padding:10px 12px 8px}.fleet-booking-ops-brand,.fleet-booking-ops-side-foot{display:none}.fleet-booking-ops-nav{-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-flow:row;gap:6px;overflow-x:auto}.fleet-booking-ops-nav::-webkit-scrollbar{display:none}.fleet-booking-ops-nav a{white-space:nowrap;background:#1e293b;flex:none;padding:8px 12px;font-size:.82rem}.fleet-booking-ops-nav a.is-active{background:#2563eb}.fleet-booking-ops-grid{grid-template-columns:1fr;gap:10px}.fleet-booking-ops-main{padding:10px 12px 16px}.fleet-booking-ops-head--row{flex-wrap:nowrap}.fleet-booking-ops-head--row h1{max-width:6.5rem}.fleet-booking-ops-head--row .fleet-booking-ops-tools{flex:1 1 0;width:auto}}@media (min-width:900px){.zalo-app--fleet-desktop .fleet-booking-ops-grid{grid-template-columns:minmax(260px,.95fr) minmax(320px,1.1fr);gap:12px}.zalo-app--fleet-desktop .fleet-booking-ops-main{padding:14px 18px 24px}}.my-bus-trips{--bus-blue:#0068ff;--bus-blue-deep:#0052cc;--bus-cta:#f5c400;--bus-cta-text:#1a1a1a;--bus-bg:#eef2f7;--bus-card:#fff;--bus-muted:#64748b;--bus-line:#e2e8f0;max-width:720px;min-height:100%;padding:0 0 calc(88px + env(safe-area-inset-bottom));background:var(--bus-bg);color:#0f172a;box-sizing:border-box;margin:0 auto}.my-bus-trips .bus-book-bar.my-bus-bar,.my-bus-bar{z-index:20;background:#0068ff;background:var(--bus-blue,#0068ff);color:#fff;position:sticky;top:0;box-shadow:0 6px 16px #0050c824}.my-bus-trips .bus-book-bar .bus-book-back,.my-bus-trips .bus-book-bar .bus-book-link,.my-bus-trips .bus-book-bar h1,.my-bus-trips .bus-book-bar p{color:#fff}.my-bus-bar-cta{white-space:nowrap;background:#ffffff2e;border:1px solid #ffffff47;border-radius:999px;padding:6px 10px!important;font-weight:700!important}.my-bus-bar-cta:active{background:#ffffff47}.my-bus-trips-body{padding:12px 14px 0}.my-bus-trips-loading{text-align:center;color:var(--bus-muted);margin:24px 0;font-size:.9rem}.my-bus-trips-tabs{border:1px solid var(--bus-line);background:#fff;border-radius:12px;gap:0;margin:0 0 14px;display:flex;overflow:hidden;box-shadow:0 2px 8px #0f172a0a}.my-bus-trips-tabs button{font:inherit;color:var(--bus-muted);cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;align-items:center;gap:2px;min-width:0;padding:10px 6px;font-size:.78rem;font-weight:700;display:flex}.my-bus-trips-tabs button+button{border-left:1px solid var(--bus-line)}.my-bus-tab-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-style:normal;overflow:hidden}.my-bus-tab-count{color:#0f172a;font-variant-numeric:tabular-nums;font-size:.95rem;font-weight:800}.my-bus-trips-tabs button.is-active{background:var(--bus-blue);color:#fff}.my-bus-trips-tabs button.is-active .my-bus-tab-count{color:#fff}.my-bus-trips-empty{text-align:center;background:var(--bus-card);border:1px dashed var(--bus-line);border-radius:16px;flex-direction:column;align-items:center;gap:8px;margin:28px 8px;padding:28px 18px;display:flex}.my-bus-trips-empty strong{color:#0f172a;font-size:1rem}.my-bus-trips-empty p{color:var(--bus-muted);margin:0;font-size:.88rem}.my-bus-trips-empty .bus-book-cta{background:var(--bus-cta);min-height:44px;color:var(--bus-cta-text);border:0;border-radius:12px;justify-content:center;align-items:center;margin-top:8px;padding:0 18px;font-weight:800;text-decoration:none;display:inline-flex}.my-bus-trips-list{flex-direction:column;gap:10px;display:flex}.my-bus-trip-card{color:inherit;background:var(--bus-card);border:1px solid #0000;border-radius:16px;padding:14px;text-decoration:none;transition:border-color .12s,box-shadow .12s;display:block;box-shadow:0 4px 14px #0f172a0f}.my-bus-trip-card:active{border-color:color-mix(in srgb, var(--bus-blue) 35%, var(--bus-line));box-shadow:0 2px 8px #0f172a14}.my-bus-trip-card-top{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.my-bus-trip-card-code{flex-direction:column;gap:2px;min-width:0;display:flex}.my-bus-trip-time{color:#0f172a;font-variant-numeric:tabular-nums;font-size:1.15rem;font-weight:800;line-height:1.15}.my-bus-trip-card-code strong{color:var(--bus-muted);letter-spacing:.02em;font-size:.78rem;font-weight:700}.my-bus-trip-chip{color:var(--bus-blue-deep);background:#eff6ff;border-radius:999px;flex-shrink:0;padding:4px 9px;font-size:.72rem;font-weight:700}.my-bus-trip-chip.is-requested{color:#c2410c;background:#fff7ed}.my-bus-trip-chip.is-confirmed{color:#047857;background:#ecfdf5}.my-bus-trip-chip.is-completed{color:#475569;background:#f1f5f9}.my-bus-trip-chip.is-reject{color:#991b1b;background:#fef2f2}.my-bus-trip-chip.is-cancel,.my-bus-trip-chip.is-cancelled{color:#9a3412;background:#fff7ed}.my-bus-trip-card-route{color:#0f172a;margin:10px 0 2px;font-size:.98rem;font-weight:750}.my-bus-trip-card-org{color:var(--bus-muted);margin:0;font-size:.82rem}.my-bus-trip-card-foot{border-top:1px solid var(--bus-line);color:var(--bus-muted);justify-content:space-between;align-items:baseline;gap:8px;margin-top:10px;padding-top:10px;font-size:.8rem;display:flex}.my-bus-trip-card-foot strong{color:#0f172a;font-size:.95rem;font-weight:800}.my-bus-trip-card-meta,.my-bus-trip-money{color:var(--bus-muted);margin:6px 0 0;font-size:.8rem}.my-bus-trip-pending{color:#b45309;background:#fffbeb;border-radius:8px;margin:8px 0 0;padding:6px 8px;font-size:.78rem;font-weight:650}.my-bus-change-history{flex-direction:column;gap:6px;margin:8px 0 10px;padding:0;list-style:none;display:flex}.my-bus-change-history li{border:1px solid var(--bus-line);background:#f8fafc;border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:10px 12px;font-size:.85rem;display:flex}.my-bus-change-history .is-ok{color:#166534;font-weight:600}.my-bus-change-history .is-no{color:#991b1b;font-weight:600}.my-bus-change-history .is-wait{color:#9a3412;font-weight:600}.my-bus-change-reason{width:100%;color:var(--bus-muted);font-size:.82rem}.my-bus-block{background:var(--bus-card);border:1px solid #0000;border-radius:16px;margin-bottom:12px;padding:14px;box-shadow:0 4px 14px #0f172a0d}.my-bus-block h2{margin:0 0 10px;font-size:.95rem}.my-bus-block dl{gap:8px;margin:0;display:grid}.my-bus-block dt{color:var(--bus-muted);font-size:.72rem;font-weight:650}.my-bus-block dd{margin:2px 0 0;font-size:.92rem;font-weight:650}.my-bus-block dd.is-price{color:#0f172a;font-weight:800}.my-bus-kv{flex-direction:column;gap:0;display:flex}.my-bus-kv-row{border-bottom:1px solid var(--bus-line,#e2e8f0);justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;display:flex}.my-bus-kv-row:last-child{border-bottom:0;padding-bottom:0}.my-bus-kv-row:first-child{padding-top:0}.my-bus-kv-row dt{color:var(--bus-muted,#64748b);flex-shrink:0;margin:0;font-size:.8rem;font-weight:600}.my-bus-kv-row dd{text-align:right;min-width:0;margin:0;font-size:.88rem;font-weight:650;line-height:1.35}.my-bus-trip-view-ticket-btn{width:100%;margin-top:10px}.my-bus-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.my-bus-form{flex-direction:column;gap:10px;margin-top:12px;display:flex}.my-bus-form label{color:var(--bus-muted);flex-direction:column;gap:4px;font-size:.78rem;font-weight:650;display:flex}.my-bus-form input,.my-bus-form textarea,.my-bus-form select{font:inherit;border:1px solid var(--bus-line);color:#0f172a;background:#fff;border-radius:12px;padding:10px 12px}.my-bus-back{color:var(--bus-blue);font:inherit;cursor:pointer;background:0 0;border:0;margin-bottom:6px;padding:0;font-weight:600}.bus-book-sell-hint{color:#1e3a8a;background:#eff6ff;border-radius:8px;margin:0 0 12px;padding:8px 10px;font-size:.8rem;line-height:1.35}.bus-book-partner-earn{margin-top:10px}.bus-sell-ok{color:#166534;margin:0 0 10px;font-size:.9rem}.bus-sell-period-chips{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;margin:0 0 4px;padding:0 0 10px;display:flex;overflow-x:auto}.bus-sell-period-chips::-webkit-scrollbar{display:none}.bus-sell-period-chips button{border:1px solid var(--bus-line);color:#475569;font:inherit;cursor:pointer;background:#fff;border-radius:999px;flex:none;padding:8px 12px;font-size:.82rem;font-weight:650}.bus-sell-period-chips button.is-active{border-color:color-mix(in srgb, var(--bus-blue) 55%, var(--bus-line));background:color-mix(in srgb, var(--bus-blue) 12%, white);color:var(--bus-blue)}.bus-sell-period-label{font-style:normal}@media (max-width:360px){.bus-sell-period-label{font-size:0}.bus-sell-period-label:after{content:attr(data-short);font-size:.78rem}}.bus-sell-totals{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 16px;display:grid}.bus-sell-total-card{background:var(--bus-card);border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex;box-shadow:0 4px 14px #0f172a0f}.bus-sell-total-card span{color:#64748b;font-size:.78rem;font-weight:650}.bus-sell-total-card strong{color:#0f172a;font-size:1.05rem}.bus-sell-total-card em{color:#94a3b8;font-size:.78rem;font-style:normal}.bus-sell-total-card.is-pending{background:#fffbeb;border:1px solid #fde68a}.bus-sell-total-card.is-pending strong{color:#b45309}.bus-sell-total-card.is-paid{background:#ecfdf5;border:1px solid #a7f3d0}.bus-sell-total-card.is-paid strong{color:#166534}.bus-sell-alias-create{margin:0 0 12px}.bus-sell-alias-hint{color:#64748b;margin:0 0 8px;font-size:.86rem;line-height:1.4}.bus-sell-alias-hint code{background:#f1f5f9;border-radius:6px;padding:1px 6px;font-size:.85em}.bus-sell-code-line{color:#334155;margin:0 0 10px;font-size:.9rem}.bus-sell-code-line strong{color:#0f172a}.bus-sell-share{background:var(--bus-card);border-radius:16px;margin:0 0 20px;padding:14px;box-shadow:0 4px 14px #0f172a0f}.bus-sell-share h2{margin:0 0 8px;font-size:1.05rem}.bus-sell-share-hint{color:#64748b;margin:0 0 12px;font-size:.86rem;line-height:1.4}.bus-sell-rates{background:var(--bus-card);border-radius:16px;margin:0 0 20px;padding:14px 16px;box-shadow:0 4px 14px #0f172a0f}.bus-sell-rates h2{margin:0 0 10px;font-size:1.05rem}.bus-sell-rates-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bus-sell-rate-card{border:1px solid var(--bus-line);background:#fff;border-radius:10px;padding:10px 12px}.bus-sell-rate-card span{color:#64748b;font-size:.78rem;display:block}.bus-sell-rate-card strong{color:#0f172a;margin-top:4px;font-size:1.1rem;display:block}.bus-sell-rate-card em{color:#475569;margin-top:2px;font-size:.82rem;font-style:normal;display:block}.bus-sell-share-row{align-items:stretch;gap:8px;display:flex}.bus-sell-share-input{border:1px solid var(--bus-line);min-width:0;font:inherit;background:#fff;border-radius:10px;flex:1;padding:10px 12px;font-size:.82rem}.bus-sell-copy{flex-shrink:0;min-height:44px;padding:0 14px}.bus-sell-behalf-cta{color:var(--bus-blue);margin-top:12px;font-weight:700;text-decoration:none;display:inline-block}.bus-sell-list-wrap{margin-bottom:28px}.bus-sell-list-head{justify-content:space-between;align-items:baseline;gap:10px;margin:0 0 12px;display:flex}.bus-sell-list-head h2{margin:0;font-size:1.05rem}.bus-sell-list-head span{color:#64748b;font-size:.82rem;font-weight:650}.bus-sell-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bus-sell-card{color:inherit;background:var(--bus-card);border:1px solid #0000;border-radius:16px;padding:14px 14px 12px;text-decoration:none;transition:border-color .12s,box-shadow .12s;display:block;box-shadow:0 4px 14px #0f172a0f}.bus-sell-card:active{border-color:color-mix(in srgb, var(--bus-blue) 30%, var(--bus-line));box-shadow:0 2px 8px #0f172a14}.bus-sell-card.is-pending{border-color:#f59e0b47}.bus-sell-card.is-paid{border-color:#10b98147}.bus-sell-card-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.bus-sell-card-route-block{flex-direction:column;gap:4px;min-width:0;display:flex}.bus-sell-card-route{color:#0f172a;font-size:1rem;font-weight:800;line-height:1.25}.bus-sell-card-meta{color:#64748b;font-size:.8rem;line-height:1.35}.bus-sell-payout{white-space:nowrap;border-radius:999px;flex-shrink:0;padding:5px 9px;font-size:.72rem;font-weight:700;line-height:1.2}.bus-sell-payout.is-pending{color:#b45309;background:#fffbeb}.bus-sell-payout.is-paid{color:#166534;background:#ecfdf5}.bus-sell-payout.is-void{color:#64748b;background:#f1f5f9}.bus-sell-card-foot{border-top:1px dashed color-mix(in srgb, var(--bus-line) 85%, transparent);justify-content:space-between;align-items:flex-end;gap:12px;margin-top:12px;padding-top:12px;display:flex}.bus-sell-card-ck{flex-direction:column;gap:2px;min-width:0;display:flex}.bus-sell-card-ck span{color:#94a3b8;letter-spacing:.02em;text-transform:uppercase;font-size:.72rem;font-weight:650}.bus-sell-card-ck strong{color:#0f172a;letter-spacing:-.02em;font-size:1.2rem;font-weight:800}.bus-sell-card.is-pending .bus-sell-card-ck strong{color:#b45309}.bus-sell-card.is-paid .bus-sell-card-ck strong{color:#166534}.bus-sell-card.is-void .bus-sell-card-ck strong{color:#64748b;text-decoration:line-through}.bus-sell-card-side{flex-direction:column;align-items:flex-end;gap:4px;min-width:0;display:flex}.bus-sell-card-code{color:#94a3b8;text-overflow:ellipsis;white-space:nowrap;background:#f8fafc;border-radius:6px;max-width:11rem;padding:3px 7px;font-size:.72rem;font-weight:600;overflow:hidden}.bus-sell-card-ticket{color:#64748b;font-size:.8rem;font-weight:550}.my-bus-trip-route,.my-bus-trip-meta{color:#475569;margin:6px 0 0;font-size:.88rem}@media (max-width:360px){.my-bus-tab-label{font-size:0}.my-bus-tab-label:after{content:attr(data-short);font-size:.78rem}}.fleet-change-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.fleet-change-card{text-align:left;cursor:pointer;width:100%;font:inherit;color:inherit;background:#fff;border:1px solid #e2e8f0;border-radius:12px;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;display:flex}.fleet-change-card.is-selected{background:#fff7ed;border-color:#ea580c;box-shadow:0 0 0 1px #ea580c}.fleet-change-card-meta{color:#475569;font-size:.85rem}.fleet-change-tabs{gap:8px;margin:0 0 14px;display:flex}.fleet-change-tabs button{font:inherit;cursor:pointer;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:6px 14px;font-size:.88rem}.fleet-change-tabs button.is-active{color:#9a3412;background:#fff7ed;border-color:#ea580c;font-weight:600}.fleet-change-buyer-note{color:#334155;background:#f8fafc;border-radius:10px;margin:0 0 12px;padding:10px 12px;font-size:.9rem}.fleet-change-diff{border:1px solid #e2e8f0;border-radius:12px;margin-bottom:14px;overflow:hidden}.fleet-change-diff-head{text-transform:uppercase;letter-spacing:.04em;color:#64748b;background:#f1f5f9;grid-template-columns:1fr 1fr;gap:0;padding:8px 12px;font-size:.75rem;font-weight:700;display:grid}.fleet-change-diff-head span:last-child{text-align:right}.fleet-change-diff-row{border-top:1px solid #e2e8f0;padding:10px 12px}.fleet-change-diff-row.is-changed{background:#fffbeb}.fleet-change-diff-label{color:#64748b;text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px;font-size:.72rem;font-weight:600}.fleet-change-diff-cols{grid-template-columns:1fr 1fr;gap:10px;display:grid}.fleet-change-diff-cell{color:#334155;word-break:break-word;font-size:.9rem}.fleet-change-diff-row.is-changed .fleet-change-diff-cell.is-orig{color:#9a3412;opacity:.85;text-decoration:line-through}.fleet-change-diff-row.is-changed .fleet-change-diff-cell.is-req{color:#166534;font-weight:600}.fleet-change-call-btn{background:#0f766e;border:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex;color:#fff!important}.fleet-change-call-btn:hover{filter:brightness(1.05)}.fleet-change-reject-box{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;flex-direction:column;gap:10px;margin-top:12px;padding:12px;display:flex}.fleet-change-reject-label{color:#991b1b;margin:0;font-size:.88rem;font-weight:600}.fleet-change-reject-presets{flex-wrap:wrap;gap:6px;display:flex}.fleet-change-reject-presets button{font:inherit;cursor:pointer;color:#7f1d1d;text-align:left;background:#fff;border:1px solid #fca5a5;border-radius:8px;padding:6px 10px;font-size:.78rem}.fleet-change-reject-presets button.is-active{background:#fee2e2;border-color:#dc2626;font-weight:600}.fleet-change-reject-box textarea{width:100%;font:inherit;resize:vertical;border:1px solid #fca5a5;border-radius:8px;padding:8px 10px}.fleet-bus-change-lead{color:#334155;flex-direction:column;gap:8px;margin:0 0 8px;font-size:.88rem;display:flex}.fleet-bus-change-lead-row{align-items:center;gap:8px;display:flex}.fleet-bus-change-lead-row input{width:88px;font:inherit;border:1px solid #e2e8f0;border-radius:8px;padding:8px 10px}.fleet-bus-change-lead-row em{color:#64748b;font-style:normal}.fleet-bus-route-stats{padding:.5rem 0 1.5rem}.fleet-bus-route-stats-head h1{margin:0 0 .25rem;font-size:1.25rem}.fleet-bus-route-stats-head p{margin:0 0 .75rem}.bus-route-stats-toolbar{margin:.5rem 0 .75rem}.bus-route-stats-chips{flex-wrap:wrap;gap:.35rem;display:flex}.bus-route-stats-chips button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.4rem;padding:.35rem .7rem;font-size:.85rem}.bus-route-stats-chips button.is-active{color:#0f766e;background:#ccfbf1;border-color:#0f766e;font-weight:600}.bus-route-stats-strip{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.65rem .85rem;margin-bottom:.85rem;padding:.75rem .85rem;display:grid}.bus-route-stats-strip>div{flex-direction:column;gap:.1rem;display:flex}.bus-route-stats-strip span{color:#64748b;font-size:.72rem}.bus-route-stats-strip strong{color:#0f172a;font-variant-numeric:tabular-nums;font-size:1rem}.bus-route-stats-table{border-collapse:collapse;width:100%;font-size:.9rem}.bus-route-stats-table th,.bus-route-stats-table td{text-align:left;vertical-align:top;border-bottom:1px solid #e2e8f0;padding:.55rem .45rem}.bus-route-stats-expand td{background:#f8fafc;padding:.75rem .5rem}.bus-route-stats-tier-table{border-collapse:collapse;width:100%;max-width:28rem;font-size:.85rem}.bus-route-stats-tier-table th,.bus-route-stats-tier-table td{text-align:left;border-bottom:1px solid #e2e8f0;padding:.4rem .35rem}.bus-route-stats-table-wrap{overflow-x:auto}.bus-route-stats-btn{cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:.35rem;padding:.3rem .55rem;font-size:.8rem}.bus-route-stats-btn:disabled{opacity:.45;cursor:not-allowed}.fleet-bus-route-stats-route{color:#64748b;flex-direction:column;gap:.25rem;max-width:28rem;margin:.75rem 0;font-size:.8rem;display:flex}.fleet-bus-route-stats-route select{font:inherit;color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:.4rem;padding:.45rem .55rem}.bus-route-tier-count-strip{background:#f8fafc;border:1px solid #e2e8f0;border-radius:.5rem;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.65rem .85rem;padding:.75rem .85rem;display:grid}.bus-route-tier-count-strip>div{flex-direction:column;gap:.1rem;display:flex}.bus-route-tier-count-strip span{color:#64748b;font-size:.72rem}.bus-route-tier-count-strip strong{color:#0f172a;font-variant-numeric:tabular-nums;font-size:1.1rem}.bus-route-tier-count-strip .is-total strong{color:#0f766e}.bus-route-tier-count-meta{color:#64748b;grid-column:1/-1;margin:0;font-size:.78rem}.bus-route-tier-count-empty{margin:.35rem 0 0}.fleet-extra-phone-row{align-items:center;gap:8px;display:flex}.fleet-extra-phone-row input{flex:auto;min-width:0}.fleet-extra-phone-remove{border:1px solid var(--border,#e2e8f0);color:#64748b;cursor:pointer;background:#fff;border-radius:10px;flex:none;width:34px;height:34px;font-size:14px;line-height:1}.fleet-extra-phone-remove:hover{color:#dc2626;background:#fef2f2;border-color:#fecaca}.fleet-extra-phone-add{color:var(--primary,#2563eb);cursor:pointer;background:0 0;border:none;align-self:flex-start;margin:-2px 0 10px;padding:0;font-size:13px;font-weight:600}.bike-page-shell{background:#f1f5f9;min-height:100dvh}.bike-page{max-width:480px;margin:0 auto;padding:16px 16px 96px}.bike-page--book{background:#fff;width:100%;max-width:480px;min-height:100dvh;margin:0 auto;padding:0}@media (min-width:521px){.bike-page--book{box-shadow:0 0 0 1px #e2e8f0,0 12px 40px #0f172a0f}}.bike-book-shell{flex-direction:column;min-height:100dvh;display:flex}.bike-book-shell--route{min-height:auto;padding-bottom:16px}.bike-dest-screen{background:#fff;flex-direction:column;min-height:100dvh;padding:8px 16px 24px;display:flex}.bike-dest-header{align-items:flex-start;gap:6px;padding:4px 0 8px;display:flex}.bike-dest-back{color:#0f172a;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;margin-top:4px;margin-left:-8px;text-decoration:none;display:inline-flex}.bike-dest-back:hover{background:#f8fafc}.bike-dest-fields{flex-direction:column;flex:1;gap:8px;min-width:0;display:flex}.bike-dest-field{cursor:text;background:#f1f5f9;border:1.5px solid #0000;border-radius:12px;align-items:center;gap:10px;min-width:0;padding:11px 12px;display:flex}.bike-dest-field.is-focused{background:#fff;border-color:#14b8a6;box-shadow:0 0 0 1px #14b8a61f}.bike-dest-field-icon{flex-shrink:0;justify-content:center;align-items:center;width:16px;height:16px;display:inline-flex}.bike-dest-field-icon--pickup{color:#0f172a}.bike-dest-field-icon--drop{background:#facc15;border-radius:2px;width:12px;height:12px;box-shadow:inset 0 0 0 2px #fde047}.bike-dest-field-icon--stop{color:#fff;background:#f59e0b;border-radius:999px;width:16px;height:16px;font-size:10px;font-weight:700;line-height:1}.bike-dest-add-stop{color:#fff;cursor:pointer;background:#14b8a6;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;margin:0;padding:0;font-size:20px;font-weight:700;line-height:1;display:inline-flex;box-shadow:0 1px 2px #0f766e40}.bike-dest-add-stop:hover{background:#0d9488}.bike-dest-add-stop.is-remove{color:#b91c1c;box-shadow:none;background:#fef2f2}.bike-dest-add-stop.is-remove:hover{background:#fee2e2}.bike-dest-field-input{color:#0f172a;background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px;font-weight:600;line-height:1.35}.bike-dest-field-input--drop::placeholder{color:#14b8a6;opacity:.95;font-weight:600}.bike-dest-field-input::placeholder{color:#94a3b8;font-weight:600}.bike-dest-field-input:disabled{color:#64748b;opacity:1}.bike-dest-field-clear{color:#0f172a;cursor:pointer;background:#cbd5e1;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin:0;padding:0;font-size:16px;font-weight:600;line-height:1;display:inline-flex}.bike-dest-field-clear:hover{color:#fff;background:#94a3b8}.bike-dest-hint{color:#64748b;margin:8px 0 0;font-size:12px}.bike-dest-recent{flex:1;margin-top:4px;overflow-y:auto}.bike-dest-empty{text-align:center;padding:24px 8px}.bike-dest-place-list{margin:8px 0 0;padding:0;list-style:none}.bike-dest-place-item{text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #f1f5f9;align-items:flex-start;gap:12px;width:100%;padding:14px 2px;display:flex}.bike-dest-place-item:disabled{opacity:.65;cursor:wait}.bike-dest-place-item--recent{justify-content:flex-start}.bike-dest-place-item:hover{background:#fafafa}.bike-dest-place-lead{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;width:44px;padding-top:1px;display:flex}.bike-dest-place-icon{color:#94a3b8;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.bike-dest-place-icon--gps{color:#14b8a6}.bike-dest-place-icon--history,.bike-dest-place-icon--search{color:#94a3b8}.bike-dest-place-distance{color:#94a3b8;white-space:nowrap;text-align:center;font-size:11px;line-height:1.2}.bike-dest-place-body{flex-direction:column;flex:1;gap:3px;min-width:0;padding-top:1px;display:flex}.bike-dest-place-fav{color:#94a3b8;flex-shrink:0;justify-content:center;align-items:center;padding-top:2px;padding-right:2px;display:inline-flex}.bike-dest-place-body strong{color:#0f172a;font-size:15px;font-weight:700;line-height:1.35}.bike-dest-place-body span{color:#64748b;font-size:13px;line-height:1.35}.bike-dest-foot{margin-top:auto;padding-top:12px}.bike-book-shell--vehicle{flex-direction:column;height:100dvh;min-height:100dvh;padding:0;display:flex;overflow:hidden}.bike-vehicle-map-stage{flex:auto;height:0;min-height:0;position:relative}.bike-vehicle-map-stage .bike-book-map,.bike-vehicle-map-stage .bike-book-map-fallback{width:100%;height:100%;min-height:0;position:absolute;inset:0}.bike-vehicle-map-overlay{z-index:2;pointer-events:none;position:absolute;inset:0}.bike-vehicle-map-overlay>*{pointer-events:auto}.bike-vehicle-map-back{cursor:pointer;color:#0f172a;background:#fff;border:none;border-radius:999px;width:40px;height:40px;font-size:18px;line-height:1;position:absolute;top:12px;left:12px;box-shadow:0 2px 10px #0f172a24}.bike-vehicle-address-stack{flex-direction:column;gap:8px;display:flex;position:absolute;top:12px;left:60px;right:12px}.bike-vehicle-address-card{color:#0f172a;background:#fff;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;font-size:13px;font-weight:500;line-height:1.35;display:flex;box-shadow:0 2px 12px #0f172a1a}.bike-vehicle-route-pill{color:#0f172a;white-space:nowrap;pointer-events:none;background:#fff;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 2px 12px #0f172a1f}.bike-vehicle-sheet{z-index:3;max-height:min(58dvh,520px);padding:14px 16px calc(14px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:22px 22px 0 0;flex-direction:column;flex:0 auto;min-height:0;margin-top:-20px;display:flex;position:relative;box-shadow:0 -8px 32px #0f172a1a}.bike-vehicle-list{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;gap:8px;min-height:0;padding-bottom:4px;display:flex;overflow-y:auto}.bike-vehicle-option{text-align:left;cursor:pointer;background:#fff;border:2px solid #e2e8f0;border-radius:16px;flex-shrink:0;align-items:center;gap:12px;width:100%;margin:0;padding:10px 12px;display:flex}.bike-vehicle-option.is-selected{background:#f0fdfa;border-color:#2dd4bf}.bike-vehicle-option.is-soon{opacity:.72;cursor:not-allowed;background:#f8fafc}.bike-vehicle-option:disabled{cursor:not-allowed}.bike-vehicle-option-icon{flex-shrink:0;line-height:0}.bike-vehicle-svg{flex-shrink:0;display:block}.bike-vehicle-option-body{flex:1;min-width:0}.bike-vehicle-option-title{align-items:center;gap:8px;margin-bottom:2px;display:flex}.bike-vehicle-option-title strong{color:#0f172a;font-size:15px}.bike-vehicle-capacity{color:#64748b;align-items:center;gap:2px;font-size:12px;display:inline-flex}.bike-vehicle-option-eta{color:#64748b;align-items:center;gap:4px;margin:0 0 2px;font-size:12px;display:flex}.bike-vehicle-option-desc{color:#94a3b8;margin:0;font-size:12px}.bike-vehicle-option-price{text-align:right;flex-shrink:0}.bike-vehicle-option-price strong{color:#0f172a;font-size:15px;font-weight:700}.bike-vehicle-option-price strong.is-soon-price{color:#94a3b8;font-size:12px;font-weight:600}.bike-vehicle-pay-chip{text-align:left;cursor:pointer;background:0 0;border:none;flex:auto;align-items:center;gap:8px;min-width:0;padding:0;display:inline-flex}.bike-vehicle-pay-chip-icon{color:#7c3aed;background:#ede9fe;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:34px;height:34px;display:inline-flex}.bike-vehicle-pay-chip-icon.is-cash{color:#0f766e;background:#ecfdf5}.bike-vehicle-pay-chip-icon.is-wallet{color:#7c3aed;background:#ede9fe}.bike-vehicle-pay-chip-text{flex-direction:column;gap:1px;min-width:0;font-size:13px;display:flex}.bike-vehicle-pay-chip-text strong{color:#0f172a;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bike-vehicle-pay-chip-text .bike-muted{white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.bike-vehicle-pay-chip-caret{color:#94a3b8;flex-shrink:0;margin-left:2px;font-size:12px}.bike-vehicle-actionbar{border-top:1px solid #f1f5f9;flex-shrink:0;align-items:center;gap:8px;margin-top:8px;padding-top:12px;display:flex}.bike-vehicle-schedule-btn{color:#0f766e;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;min-width:64px;padding:8px 6px;font-size:11px;font-weight:600;display:inline-flex}.bike-vehicle-schedule-btn .material-symbols-outlined{font-size:22px;line-height:1}.bike-vehicle-schedule-btn:disabled{opacity:.55;cursor:not-allowed}.bike-vehicle-book-btn{color:#fff;cursor:pointer;white-space:nowrap;background:linear-gradient(135deg,#2dd4bf,#14b8a6);border:none;border-radius:999px;flex:auto;min-width:0;padding:14px 18px;font-size:16px;font-weight:700;box-shadow:0 4px 16px #14b8a659}.bike-vehicle-book-btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.bike-pay-sheet-root{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bike-pay-sheet-backdrop{cursor:pointer;background:#0f172a73;border:none;margin:0;padding:0;position:absolute;inset:0}.bike-pay-sheet{z-index:1;width:min(480px,100%);padding:10px 16px calc(20px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:20px 20px 0 0;position:relative;box-shadow:0 -12px 40px #0f172a2e}.bike-pay-sheet-handle{background:#e2e8f0;border-radius:999px;width:40px;height:4px;margin:0 auto 12px}.bike-pay-sheet-title{color:#0f172a;margin:0 0 12px;font-size:17px;font-weight:700}.bike-pay-option{text-align:left;cursor:pointer;background:#fff;border:1.5px solid #e2e8f0;border-radius:14px;align-items:center;gap:12px;width:100%;margin-bottom:10px;padding:12px;display:flex}.bike-pay-option.is-selected{background:#f0fdfa;border-color:#2dd4bf}.bike-pay-option-icon{border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:inline-flex}.bike-pay-option-icon.is-cash{color:#0f766e;background:#ecfdf5}.bike-pay-option-icon.is-wallet{color:#7c3aed;background:#ede9fe}.bike-pay-option-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.bike-pay-option-body strong{color:#0f172a;font-size:15px}.bike-pay-option-body span{color:#64748b;font-size:12px}.bike-pay-option-check{color:#0f766e;font-size:16px;font-weight:700}.bike-book-step-head{padding:0 16px 10px}.bike-book-step-head--vehicle{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bike-book-step-badge{color:#2563eb;background:#eff6ff;border-radius:999px;margin-bottom:6px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.bike-book-step-title{color:#0f172a;margin:0;font-size:18px;font-weight:700}.bike-book-back{color:#2563eb;cursor:pointer;white-space:nowrap;background:0 0;border:none;padding:4px 0;font-size:14px;font-weight:600}.bike-book-step-panel{padding:0 16px 8px}.bike-book-map-wrap--compact{border:1px solid #e2e8f0;border-radius:16px;min-height:28vh;margin:0 16px 12px;overflow:hidden}.bike-book-map-wrap--compact .bike-book-map,.bike-book-map-wrap--compact .bike-book-map-fallback{min-height:28vh}.bike-route-form{flex-direction:column;gap:12px;margin-bottom:10px;display:flex}.bike-route-field{flex-direction:column;gap:6px;display:flex}.bike-route-field-label{color:#475569;align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.bike-route-field-label .bike-history-pin--pickup,.bike-route-field-label .bike-history-pin--dropoff{margin:0}.bike-route-input{box-sizing:border-box;background:#fff;border:1px solid #e2e8f0;border-radius:12px;width:100%;padding:12px 14px;font-size:15px}.bike-route-input:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.bike-route-field-hint{color:#94a3b8;font-size:12px}.bike-suggest-list--form{background:#fff;border:1px solid #e2e8f0;border-radius:12px;max-height:200px;margin:0 0 12px;overflow-y:auto}.bike-route-summary{border-bottom:1px solid #e2e8f0;margin-bottom:12px;padding-bottom:12px}.bike-route-summary p{color:#334155;align-items:flex-start;gap:8px;margin:0;font-size:13px;line-height:1.4;display:flex}.bike-route-summary p+p{margin-top:8px}.bike-route-summary .bike-history-pin{margin-top:4px}.bike-wallet-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:14px;padding:12px 14px}.bike-wallet-card-head{align-items:center;gap:10px;display:flex}.bike-wallet-balance{align-items:baseline;gap:8px;margin:10px 0 0;font-size:15px;display:flex}.bike-wallet-balance strong{color:#0f172a;font-size:18px}.bike-book-map-wrap{flex:auto;min-height:44vh;position:relative}.bike-book-map,.bike-book-map-fallback{width:100%;height:100%;min-height:44vh}.bike-book-map-fallback{background:#f1f5f9;justify-content:center;align-items:center;display:flex}.bike-book-address-overlay{z-index:2;flex-direction:column;gap:8px;display:flex;position:absolute;top:12px;left:12px;right:12px}.bike-address-card{background:#fff;border-radius:12px;align-items:center;gap:10px;padding:10px 12px;display:flex;box-shadow:0 2px 12px #0f172a1a}.bike-address-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px}.bike-address-dot--drop{background:#0f172a}.bike-address-dot--stop{background:#f59e0b;box-shadow:0 0 0 3px #f59e0b38}.bike-address-dot--pickup{background:#2563eb;box-shadow:0 0 0 3px #2563eb33}.bike-address-input{background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:14px}.bike-suggest-list--overlay{max-height:180px;margin:0;overflow-y:auto;box-shadow:0 8px 24px #0f172a1f}.bike-book-sheet{padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));z-index:3;background:#fff;border-radius:20px 20px 0 0;flex-shrink:0;margin-top:-18px;position:relative;box-shadow:0 -6px 28px #0f172a1a}.bike-vehicle-card{border:2px solid var(--border,#e2e8f0);border-radius:14px;align-items:center;gap:12px;margin-bottom:12px;padding:12px;display:flex}.bike-vehicle-card.is-selected{background:#f8fbff;border-color:#2563eb}.bike-vehicle-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.bike-vehicle-body strong{font-size:15px}.bike-vehicle-price{white-space:nowrap;font-size:15px;font-weight:700}.bike-sheet-pay-row{border-top:1px solid var(--border,#e2e8f0);align-items:center;gap:10px;padding:10px 0 14px;display:flex}.bike-sheet-pay-icon{color:#2563eb;flex-shrink:0;display:inline-flex}.bike-book-submit{cursor:pointer;border:none;border-radius:12px;width:100%;padding:14px 16px;font-size:16px;font-weight:600}.bike-book-submit:disabled{opacity:.55;cursor:not-allowed}.bike-page-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.bike-page-head h1{flex:1;margin:0;font-size:20px}.bike-back,.bike-profile-link{color:var(--primary,#2563eb);font-size:14px;text-decoration:none}.bike-panel{border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:14px;margin-bottom:12px;padding:14px}.bike-panel h2{margin:0 0 10px;font-size:15px}.bike-trip-map{border:1px solid var(--border,#e2e8f0);border-radius:12px;width:100%;height:220px;margin-bottom:12px;overflow:hidden}.bike-trip-map-fallback{border:1px dashed var(--border,#e2e8f0);background:#f8fafc;border-radius:12px;min-height:80px;margin-bottom:12px;padding:12px}.bike-live-hint{margin:4px 0 8px;font-size:12px}.bike-approach-eta{color:#115e59;background:#ecfdf5;border:1px solid #99f6e4;border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:6px 12px;margin:0 0 12px;padding:10px 12px;display:flex}.bike-approach-eta strong{font-size:13px;font-weight:700}.bike-approach-eta span{letter-spacing:.01em;font-size:15px;font-weight:800}.bike-push-nudge{color:#1e3a5f;background:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;margin:0 0 12px;padding:10px 12px;font-size:13px;display:flex}.bike-push-nudge-btn{color:#fff;cursor:pointer;background:#2563eb;border:0;border-radius:8px;flex-shrink:0;padding:6px 12px;font-weight:600}.bike-driver-map-marker{cursor:default;filter:drop-shadow(0 2px 4px #2563eb40);width:36px;height:36px}.bike-driver-map-marker svg{animation:2.4s ease-in-out infinite bike-marker-float;display:block}@keyframes bike-marker-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.bike-search-pulse{pointer-events:none;width:88px;height:88px;position:relative}.bike-search-pulse span{border:2px solid #2563eb;border-radius:50%;animation:2.4s ease-out infinite bike-search-ring;position:absolute;inset:0}.bike-search-pulse span:nth-child(2){animation-delay:.8s}.bike-search-pulse span:nth-child(3){animation-delay:1.6s}.bike-search-pulse i{background:#2563eb;border:2px solid #fff;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 4px #2563eb40}@keyframes bike-search-ring{0%{opacity:.75;transform:scale(.35)}to{opacity:0;transform:scale(1.15)}}.bike-trip-map-wrap--searching .bike-trip-map{min-height:260px}.bike-field{flex-direction:column;gap:6px;font-size:13px;display:flex}.bike-field input{border:1px solid var(--border,#e2e8f0);border-radius:10px;padding:10px 12px}.bike-muted{color:#64748b;font-size:13px}.bike-trip-legs{flex-direction:column;gap:8px;margin:0 0 12px;padding:0;list-style:none;display:flex}.bike-trip-leg{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px}.bike-trip-leg.is-focus{border-color:#14b8a6}.bike-trip-leg.is-done{opacity:.65}.bike-trip-leg-label{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin-bottom:4px;font-size:11px;font-weight:700;display:block}.bike-trip-leg-addr{color:#0f172a;font-size:14px;display:block}.bike-error{color:#dc2626;font-size:13px}.bike-suggest-list{border:1px solid var(--border,#e2e8f0);border-radius:10px;margin:8px 0 0;padding:0;list-style:none;overflow:hidden}.bike-suggest-list button{text-align:left;border:none;border-bottom:1px solid var(--border,#e2e8f0);background:#fff;width:100%;padding:10px 12px}.bike-suggest-list button span{color:#64748b;font-size:12px;display:block}.bike-pay-toggle{gap:8px;display:flex}.bike-pay-toggle button{border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:10px;flex:1;padding:10px}.bike-pay-toggle button.is-active{border-color:var(--primary,#2563eb);background:color-mix(in srgb, var(--primary,#2563eb) 10%, white)}.bike-quote .bike-fare{margin:4px 0 0;font-size:22px;font-weight:700}.bike-actions{gap:8px;display:flex}.bike-actions button{border:1px solid var(--border,#e2e8f0);background:#fff;border-radius:12px;flex:1;padding:12px}.bike-actions button.primary{background:var(--primary,#2563eb);color:#fff;border-color:#0000}.bike-actions button:disabled{opacity:.5}.bike-offer-list{margin:0;padding:0;list-style:none}.bike-offer-list li{border-bottom:1px solid var(--border,#e2e8f0);padding:10px 0}.bike-auth-hint{margin-bottom:12px;font-size:13px}.link-btn{color:var(--primary,#2563eb);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.bike-offer-modal{border-color:#f59e0b;box-shadow:0 8px 24px #f59e0b26}.bike-offer-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.bike-offer-timer{color:#dc2626;font-size:1.125rem;font-weight:700}.bike-offer-countdown{flex-direction:column;align-items:flex-end;gap:4px;min-width:120px;display:flex}.bike-offer-countdown-hint{color:#64748b;text-align:right;font-size:.75rem}.bike-offer-countdown-bar{background:#fee2e2;border-radius:999px;width:100%;height:4px;overflow:hidden}.bike-offer-countdown-bar>span{background:#dc2626;height:100%;transition:width .25s linear;display:block}.bike-driver-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:12px;padding:12px 14px}.bike-driver-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.bike-driver-card-identity{flex-wrap:wrap;align-items:center;gap:6px 10px;min-width:0;display:flex}.bike-driver-card-name{margin:0;font-size:16px;line-height:1.3}.bike-driver-card-rating-empty{font-size:12px}.bike-driver-card-plate{letter-spacing:.06em;color:#f8fafc;background:#0f172a;border:1px solid #334155;border-radius:8px;flex-shrink:0;padding:6px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:15px;font-weight:800}.bike-driver-card-vehicle{color:#475569;margin:8px 0 0;font-size:13px;font-weight:600}.bike-driver-fare{flex-wrap:wrap;align-items:baseline;gap:.35rem .5rem;display:inline-flex}.bike-driver-fare-points{color:var(--primary,#2563eb);font-weight:700}.bike-driver-profile .member-profile-wallet,.bike-driver-profile .member-profile-actions{margin-top:12px}.bike-profile-back{color:var(--primary,#2563eb);margin-top:16px;font-weight:600;text-decoration:none;display:inline-block}.bike-empty{text-align:center;color:#64748b;padding:24px}.bike-call-btn{background:var(--primary,#2563eb);color:#fff;border-radius:10px;margin-top:8px;padding:10px 14px;font-weight:600;text-decoration:none;display:inline-block}.bike-cancel-btn{color:#dc2626;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;width:100%;margin-top:12px;padding:10px}.bike-trip-actions{flex-direction:column;gap:8px;margin-top:12px;display:flex}.bike-selected{color:#334155;margin-top:8px;font-size:13px}.bike-tabs{gap:8px;margin-bottom:14px;display:flex}.bike-page--book .bike-tabs{margin-left:16px;margin-right:16px}.bike-history{padding:0 16px 8px}.bike-tabs button{border:1px solid var(--border,#e2e8f0);cursor:pointer;background:#fff;border-radius:999px;flex:1;padding:10px 12px;font-size:14px;font-weight:600}.bike-tabs button.is-active{background:var(--primary,#2563eb);border-color:var(--primary,#2563eb);color:#fff}.bike-history-groups{flex-direction:column;gap:18px;display:flex}.bike-history-group{flex-direction:column;gap:10px;display:flex}.bike-history-date{color:#64748b;margin:0;font-size:14px;font-weight:500}.bike-history-list{flex-direction:column;gap:12px;margin:0;padding:0;list-style:none;display:flex}.bike-history-card{background:#fff;border:1px solid #eef2f6;border-radius:16px;padding:14px 16px;box-shadow:0 1px 2px #0f172a0a}.bike-history-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px;display:flex}.bike-history-service{color:#64748b;font-size:13px}.bike-history-status{white-space:nowrap;font-size:13px;font-weight:600}.bike-history-status--done{color:#0f766e;background:#ccfbf1;border-radius:999px;padding:4px 10px}.bike-history-status--cancel{color:#0f172a;font-weight:500}.bike-history-status--neutral{color:#475569;font-weight:500}.bike-history-card-body{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.bike-history-route{flex:1;gap:10px;min-width:0;display:flex}.bike-history-timeline{flex-direction:column;flex-shrink:0;align-items:center;width:12px;padding-top:4px;display:flex}.bike-history-pin{flex-shrink:0}.bike-history-pin--pickup{box-sizing:border-box;background:0 0;border:2px solid #94a3b8;border-radius:50%;width:10px;height:10px}.bike-history-line{background:#cbd5e1;flex:1;width:1px;min-height:18px;margin:4px 0}.bike-history-pin--dropoff{background:#94a3b8;border-radius:1px;width:8px;height:8px}.bike-history-addresses{flex:1;min-width:0}.bike-history-addresses p{color:#0f172a;margin:0;font-size:15px;font-weight:500;line-height:1.35}.bike-history-addresses p+p{margin-top:10px}.bike-history-vehicle{flex-shrink:0;line-height:0}.bike-history-card-foot{justify-content:space-between;align-items:center;gap:12px;display:flex}.bike-history-price{color:#0f172a;letter-spacing:-.02em;font-size:17px;font-weight:700}.bike-history-rebook{color:#0f172a;cursor:pointer;white-space:nowrap;background:#fff;border:1px solid #cbd5e1;border-radius:10px;padding:8px 16px;font-size:14px;font-weight:500}.bike-history-rebook:hover{background:#f8fafc}.bike-auth-hint a{color:var(--primary,#2563eb);font-weight:600}.bike-driver-shell{--bike-drv-bg:#0b0f14;--bike-drv-panel:#151b24;--bike-drv-text:#f8fafc;--bike-drv-muted:#94a3b8;--bike-drv-accent:#fbbf24;--bike-drv-go:#14b8a6;--bike-drv-danger:#f87171;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:var(--bike-drv-bg);height:100dvh;min-height:0;max-height:100dvh;color:var(--bike-drv-text);padding:0 0 calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;max-width:480px;margin:0 auto;display:flex;overflow:clip auto}.bike-driver-shell.bike-page{padding:0 0 calc(24px + env(safe-area-inset-bottom,0px))}.zalo-app:not(.zalo-app-fullscreen):has(.bike-driver-shell) .bike-driver-shell{height:calc(100dvh - var(--zalo-bottom-nav-offset,calc(56px + env(safe-area-inset-bottom,0px))));max-height:calc(100dvh - var(--zalo-bottom-nav-offset,calc(56px + env(safe-area-inset-bottom,0px))));padding-bottom:8px}.zalo-app:not(.zalo-app-fullscreen):has(.bike-driver-shell) .zalo-main{padding-bottom:0}.bike-driver-shell button,.bike-driver-shell [role=button],.bike-driver-shell .bike-drv-head-link,.bike-driver-shell .bike-drv-profile-back,.bike-driver-shell .bike-drv-sms-item,.bike-driver-shell .bike-swipe-label,.bike-driver-shell .bike-swipe-hint{font-family:inherit}.bike-drv-head{border-bottom:1px solid #1e293b;flex-shrink:0;align-items:center;gap:8px;padding:8px 12px;display:flex}.bike-drv-push-nudge{background:#1e293b;border:1px solid #334155;border-radius:12px;gap:10px;margin:10px 12px 0;padding:12px;display:grid}.bike-drv-push-nudge--help{background:#1c1917;border-color:#b45309}.bike-drv-push-nudge-copy strong{color:var(--bike-drv-text);font-size:14px;display:block}.bike-drv-push-nudge-copy p,.bike-drv-push-nudge-msg{color:var(--bike-drv-muted);margin:6px 0 0;font-size:12px}.bike-drv-push-nudge-actions{flex-wrap:wrap;gap:8px;display:flex}.bike-drv-push-nudge-btn{color:var(--bike-drv-text);cursor:pointer;background:0 0;border:1px solid #475569;border-radius:8px;padding:7px 12px;font-size:13px}.bike-drv-push-nudge-btn--primary{background:var(--bike-drv-accent);border-color:var(--bike-drv-accent);color:#0b0f14;font-weight:700}.bike-drv-push-nudge-btn--primary:disabled{opacity:.6;cursor:wait}.bike-drv-head h1{letter-spacing:.02em;flex:1;margin:0;font-size:18px;font-weight:700}.bike-drv-head-status{background:var(--bike-drv-panel);letter-spacing:.04em;border:1px solid #1e293b;border-radius:999px;flex:1;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 10px;font-size:13px;font-weight:700;display:inline-flex}.bike-drv-head-status strong{font-weight:700}.bike-drv-head-status.is-offline{color:#ffedd5;background:#7c2d12;border-color:#9a3412}.bike-drv-head-status.is-offline .bike-drv-status-dot{background:#fb923c}.bike-drv-head-link{color:var(--bike-drv-accent);flex-shrink:0;justify-content:center;align-items:center;min-width:44px;min-height:44px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.bike-drv-head-spacer{min-width:44px;min-height:44px}.bike-drv-home{flex-direction:column;flex:auto;gap:12px;height:100%;min-height:0;padding:0 16px;display:flex}.bike-drv-home>.bike-drv-head{margin:0 -16px;padding-left:12px;padding-right:12px}.bike-drv-offline-banner{color:#ffedd5;text-align:center;background:#7c2d12;border-radius:10px;padding:10px 12px;font-size:13px;font-weight:600}.bike-drv-error{color:#fecaca;background:#450a0a;border-radius:10px;margin:0;padding:10px 12px;font-size:13px}.bike-drv-status{background:var(--bike-drv-panel);letter-spacing:.04em;border:1px solid #1e293b;border-radius:14px;align-items:center;gap:10px;padding:14px 16px;font-size:20px;display:flex}.bike-drv-status-dot{background:#64748b;border-radius:999px;width:14px;height:14px;box-shadow:0 0 0 4px #64748b40}.bike-drv-status--ON .bike-drv-status-dot{background:#4ade80;box-shadow:0 0 0 4px #4ade8040}.bike-drv-status--TRIP .bike-drv-status-dot,.bike-drv-status--BUSY .bike-drv-status-dot{background:var(--bike-drv-accent);box-shadow:0 0 0 4px #fbbf2440}.bike-drv-status--OFF .bike-drv-status-dot{background:#64748b}.bike-drv-earnings{background:var(--bike-drv-panel);border:1px solid #1e293b;border-radius:14px;grid-template-columns:1fr 1.4fr auto;align-items:center;gap:10px;padding:12px 14px;display:grid}.bike-drv-earnings span{color:var(--bike-drv-muted);text-transform:uppercase;letter-spacing:.04em;font-size:11px;display:block}.bike-drv-earnings strong{margin-top:2px;font-size:15px;display:block}.bike-drv-earnings-sub{color:var(--bike-drv-muted);margin-top:2px;font-size:11px;font-style:normal;display:block}.bike-drv-earnings-link{color:var(--bike-drv-accent);padding:10px;font-weight:700;text-decoration:none}.bike-drv-map-stage{border:1px solid #1e293b;border-radius:16px;flex-direction:column;flex:auto;min-height:min(52dvh,480px);display:flex;position:relative;overflow:hidden}.bike-drv-idle-map-wrap{width:100%;height:100%;min-height:inherit;flex:auto;position:relative}.bike-drv-idle-map,.bike-drv-idle-map-fallback{background:#0f172a;width:100%;height:100%;min-height:0;position:absolute;inset:0}.bike-drv-idle-map-fallback{color:var(--bike-drv-muted);place-items:center;font-size:13px;display:grid}.bike-drv-idle-map-gps,.bike-drv-idle-map-legend{z-index:2;color:#e2e8f0;pointer-events:none;background:#0f172ad1;border-radius:999px;margin:0;padding:6px 10px;font-size:11px;font-weight:600;position:absolute;bottom:10px;left:10px}.bike-drv-idle-map-legend-me,.bike-drv-idle-map-legend-heat{vertical-align:-1px;border-radius:999px;width:10px;height:10px;margin-right:2px;display:inline-block}.bike-drv-idle-map-legend-me{background:#38bdf8;box-shadow:0 0 0 3px #38bdf859}.bike-drv-idle-map-legend-heat{background:#fbbf248c}.bike-driver-map-marker--self{z-index:3;filter:drop-shadow(0 0 8px #38bdf8b3)}.bike-drv-thumb-zone{background:linear-gradient(180deg, transparent, var(--bike-drv-bg) 28%);flex-shrink:0;padding:16px 0 4px;position:sticky;bottom:0}.bike-drv-online-toggle{letter-spacing:.01em;cursor:pointer;color:#422006;text-shadow:0 1px #ffffff59;background:linear-gradient(160deg,#fde68a 0%,#fbbf24 42%,#f59e0b 100%);border:none;border-radius:18px;width:100%;min-height:64px;font-size:17px;font-weight:800;transition:transform .12s,box-shadow .15s,filter .15s;box-shadow:0 0 0 1px #fde68a73,0 8px 22px #f59e0b61,inset 0 1px #ffffff73}.bike-drv-online-toggle:hover:not(:disabled){filter:brightness(1.05)}.bike-drv-online-toggle:active:not(:disabled){transform:scale(.985)}.bike-drv-online-toggle.is-on{color:#042f2e;text-shadow:0 1px #ffffff4d;background:linear-gradient(145deg,#2dd4bf 0%,#14b8a6 45%,#0d9488 100%);box-shadow:0 0 0 1px #2dd4bf8c,0 0 28px #14b8a673,0 8px 20px #0d948859,inset 0 1px #ffffff59}.bike-drv-online-toggle:disabled{opacity:.55;box-shadow:none;filter:grayscale(.25)}.bike-drv-online-hint{color:var(--bike-drv-muted,#94a3b8);text-align:center;margin:0;padding:0 4px;font-size:12px;line-height:1.35}.bike-drv-offer-overlay{z-index:90;background:#020617eb;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.bike-drv-offer-card{border:2px solid var(--bike-drv-accent);width:min(480px,100%);padding:18px 16px calc(16px + env(safe-area-inset-bottom,0px));background:#111827;border-radius:22px 22px 18px 18px;box-shadow:0 0 0 1px #fbbf2433,0 -12px 40px #00000073}.bike-drv-offer-eyebrow{color:var(--bike-drv-accent);text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:700}.bike-drv-offer-timer{margin:8px 0 12px}.bike-drv-offer-timer strong{color:var(--bike-drv-accent);font-size:28px}.bike-drv-offer-timer-bar{background:#1e293b;border-radius:999px;height:6px;margin-top:6px;overflow:hidden}.bike-drv-offer-timer-bar>span{background:linear-gradient(90deg,#f59e0b,#fbbf24);height:100%;transition:width .2s linear;display:block}.bike-drv-offer-fare{margin:8px 0 14px;font-size:22px}.bike-drv-offer-fee{color:#94a3b8;margin:6px 0 0;font-size:13px;font-weight:500}.bike-drv-offer-fare .bike-driver-fare{color:var(--bike-drv-text)}.bike-drv-offer-fare .bike-driver-fare-points{color:var(--bike-drv-accent);font-size:28px}.bike-drv-offer-stats{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px;display:grid}.bike-drv-offer-stats>div{background:#0b1220;border-radius:12px;padding:10px 12px}.bike-drv-offer-stats span{color:var(--bike-drv-muted);font-size:11px;display:block}.bike-drv-offer-stats strong{font-size:18px}.bike-drv-route-stops{flex-direction:column;gap:6px;margin:6px 0 10px;padding:0;list-style:none;display:flex}.bike-drv-route-stop{align-items:flex-start;gap:8px;margin:0;display:flex}.bike-drv-route-stop-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.bike-drv-route-stop-label{letter-spacing:.03em;text-transform:uppercase;color:#94a3b8;font-size:10px;font-weight:700;line-height:1.2}.bike-drv-route-stop.is-pick .bike-drv-route-stop-label{color:#38bdf8}.bike-drv-route-stop.is-stop .bike-drv-route-stop-label{color:#f59e0b}.bike-drv-route-stop.is-drop .bike-drv-route-stop-label{color:#5eead4}.bike-drv-route-stop-addr{color:#e2e8f0;word-break:break-word;font-size:12px;line-height:1.35}.bike-drv-route-stops.is-compact{gap:4px;margin:0 0 8px}.bike-drv-route-stops.is-compact .bike-drv-route-stop{gap:6px}.bike-drv-route-stops.is-compact .bike-drv-dot{width:8px;height:8px;margin-top:4px}.bike-drv-route-stops.is-compact .bike-drv-route-stop-body{grid-template-columns:auto 1fr;align-items:start;column-gap:6px;display:grid}.bike-drv-route-stops.is-compact .bike-drv-route-stop-label{min-width:2.6em;padding-top:1px;font-size:10px}.bike-drv-route-stops.is-compact .bike-drv-route-stop-addr{-webkit-line-clamp:2;color:#cbd5e1;-webkit-box-orient:vertical;font-size:11px;line-height:1.3;display:-webkit-box;overflow:hidden}.bike-drv-route-stops--offer{margin:10px 0 4px}.bike-drv-route-stops--offer .bike-drv-route-stop-addr{font-size:13px}.bike-drv-route-stops--history .bike-drv-route-stop-addr{color:#cbd5e1;font-size:12px}.bike-drv-pay-badge{background:#0f172a;border:1px solid #334155;border-radius:10px;flex-direction:column;gap:1px;margin:8px 0 10px;padding:8px 10px;line-height:1.25;display:flex}.bike-drv-pay-badge strong{color:#f8fafc;font-size:13px;font-weight:800}.bike-drv-pay-badge span{color:#94a3b8;font-size:11px;font-weight:600}.bike-drv-pay-badge.is-compact{border-radius:999px;flex-direction:row;align-items:center;width:fit-content;max-width:100%;margin:0;padding:4px 8px;display:inline-flex}.bike-drv-pay-badge.is-compact strong{white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:700;overflow:hidden}.bike-drv-pay-badge--cash{background:#42200633;border-color:#f59e0b55}.bike-drv-pay-badge--cash strong{color:#fbbf24}.bike-drv-pay-badge--cash span{color:#fcd34d}.bike-drv-pay-badge--wallet{background:#042f2e55;border-color:#14b8a655}.bike-drv-pay-badge--wallet strong{color:#5eead4}.bike-drv-pay-badge--wallet span{color:#99f6e4}.bike-drv-pay-badge--offer{margin:10px 0 0}.bike-drv-pay-badge--history{margin:4px 0 8px}.bike-drv-pay-badge--trip{box-sizing:border-box;width:100%;margin:0}.bike-drv-offer-route p{color:#e2e8f0;align-items:flex-start;gap:10px;margin:0 0 8px;font-size:14px;line-height:1.35;display:flex}.bike-drv-dot{border-radius:999px;flex-shrink:0;width:10px;height:10px;margin-top:5px}.bike-drv-dot--pick{background:#38bdf8}.bike-drv-dot--stop{background:#f59e0b}.bike-drv-dot--drop{background:var(--bike-drv-accent)}.bike-drv-reject-btn{color:#cbd5e1;cursor:pointer;background:0 0;border:1px solid #334155;border-radius:14px;width:100%;min-height:48px;margin-top:10px;font-size:15px;font-weight:600}.bike-swipe{margin-top:12px}.bike-swipe-track{-webkit-user-select:none;user-select:none;touch-action:none;background:#0b1220;border:1px solid #334155;border-radius:999px;justify-content:center;align-items:center;height:64px;display:flex;position:relative;overflow:hidden}.bike-swipe--accept .bike-swipe-track{border-color:#0f766e}.bike-swipe--complete .bike-swipe-track{border-color:#ca8a04}.bike-swipe-hint{color:var(--bike-drv-muted);pointer-events:none;font-size:12px;position:absolute;left:64px;right:16px}.bike-swipe-label{color:var(--bike-drv-text);pointer-events:none;font-size:16px;font-weight:700;position:absolute}.bike-swipe-fill{opacity:.35;pointer-events:none;background:linear-gradient(90deg,#0f766e,#14b8a6);position:absolute;top:0;bottom:0;left:0}.bike-swipe-knob{background:var(--bike-drv-go);color:#042f2e;cursor:grab;z-index:2;touch-action:none;border:none;border-radius:999px;width:56px;height:56px;font-size:22px;font-weight:700;position:absolute;top:4px;left:4px}.bike-swipe--complete .bike-swipe-knob{background:var(--bike-drv-accent);color:#422006}.bike-swipe.is-disabled{opacity:.5;pointer-events:none}.bike-swipe-fallback{background:var(--bike-drv-go);color:#042f2e;cursor:pointer;border:none;border-radius:14px;width:100%;min-height:52px;margin-top:8px;font-size:16px;font-weight:700;display:none}@media (pointer:fine){.bike-swipe-fallback{display:block}}.bike-drv-trip{flex-direction:column;flex:1;gap:0;min-height:0;margin:0 -16px;display:flex}.bike-drv-trip-map{flex:1;min-height:240px}.bike-drv-trip-map .bike-trip-map,.bike-drv-trip-map .bike-book-map-fallback{height:100%;min-height:240px}.bike-drv-trip-sheet{background:var(--bike-drv-panel);padding:14px 16px calc(12px + env(safe-area-inset-bottom,0px));border-top:1px solid #1e293b;border-radius:20px 20px 0 0}.bike-drv-trip-fare{margin-bottom:6px}.bike-drv-trip-fare .bike-driver-fare-points{color:var(--bike-drv-accent);font-size:22px}.bike-drv-trip-addr{color:#e2e8f0;margin:0 0 10px;font-size:14px;line-height:1.35}.bike-drv-trip-tools{gap:8px;margin-bottom:12px;display:flex}.bike-drv-tool-btn{min-height:48px;color:var(--bike-drv-text);cursor:pointer;background:#0b1220;border:1px solid #334155;border-radius:12px;flex:1;justify-content:center;align-items:center;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.bike-drv-primary-btn{color:#042f2e;cursor:pointer;background:linear-gradient(135deg,#0f766e,#14b8a6);border:none;border-radius:16px;width:100%;min-height:56px;margin-bottom:8px;font-size:17px;font-weight:700}.bike-drv-primary-btn:disabled{opacity:.55}.bike-drv-sms-sheet{z-index:95;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bike-drv-sms-backdrop{cursor:pointer;background:#02061712;border:none;position:absolute;inset:0}.bike-drv-sms-panel{z-index:1;width:min(480px,100%);padding:16px 16px calc(20px + env(safe-area-inset-bottom,0px));background:#111827;border-radius:18px 18px 0 0;position:relative}.bike-drv-sms-panel h3{margin:0 0 12px;font-size:16px}.bike-drv-sms-item{color:var(--bike-drv-text);background:#0b1220;border:1px solid #334155;border-radius:12px;margin-bottom:8px;padding:14px 12px;font-weight:600;text-decoration:none;display:block}.bike-ride-chat-sheet{z-index:96;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.bike-ride-chat-backdrop{cursor:pointer;background:#0f172a73;border:none;position:absolute;inset:0}.bike-ride-chat-panel{z-index:1;color:#0f172a;width:min(480px,100%);max-height:min(72dvh,640px);padding:12px 14px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:relative;box-shadow:0 -8px 32px #0f172a2e}.bike-ride-chat-sheet--dark .bike-ride-chat-panel{color:#f8fafc;background:#111827}.bike-ride-chat-sheet--dark .bike-ride-chat-backdrop{background:#020617b8}.bike-ride-chat-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:8px;display:flex}.bike-ride-chat-head h3{margin:0;font-size:16px;font-weight:700}.bike-ride-chat-head p{color:#64748b;margin:2px 0 0;font-size:13px}.bike-ride-chat-sheet--dark .bike-ride-chat-head p{color:#94a3b8}.bike-ride-chat-close{color:#0f172a;cursor:pointer;background:#f1f5f9;border:none;border-radius:999px;width:36px;height:36px;font-size:22px;line-height:1}.bike-ride-chat-sheet--dark .bike-ride-chat-close{color:#e2e8f0;background:#0b1220}.bike-ride-chat-list{flex-direction:column;flex:1;gap:8px;min-height:180px;padding:8px 2px 12px;display:flex;overflow-y:auto}.bike-ride-chat-empty{text-align:center;color:#64748b;margin:24px 8px;font-size:13px}.bike-ride-chat-sheet--dark .bike-ride-chat-empty{color:#94a3b8}.bike-ride-chat-bubble{border-radius:14px;max-width:82%;padding:8px 12px}.bike-ride-chat-bubble p{white-space:pre-wrap;word-break:break-word;margin:0;font-size:14px;line-height:1.4}.bike-ride-chat-bubble time{opacity:.65;margin-top:4px;font-size:11px;display:block}.bike-ride-chat-bubble.is-mine{color:#042f2e;background:#14b8a6;border-bottom-right-radius:4px;align-self:flex-end}.bike-ride-chat-bubble.is-peer{color:#0f172a;background:#f1f5f9;border-bottom-left-radius:4px;align-self:flex-start}.bike-ride-chat-sheet--dark .bike-ride-chat-bubble.is-peer{color:#e2e8f0;background:#0b1220;border:1px solid #334155}.bike-ride-chat-sheet--dark .bike-ride-chat-bubble.is-mine{color:#1c1917;background:#f59e0b}.bike-ride-chat-error{color:#dc2626;margin:0 0 8px;font-size:13px}.bike-ride-chat-quick{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.bike-ride-chat-quick button{color:#0f172a;cursor:pointer;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;padding:6px 10px;font-size:12px;font-weight:600}.bike-ride-chat-sheet--dark .bike-ride-chat-quick button{color:#e2e8f0;background:#0b1220;border-color:#334155}.bike-ride-chat-composer{align-items:center;gap:8px;display:flex}.bike-ride-chat-composer input{color:#0f172a;background:#fff;border:1px solid #cbd5e1;border-radius:12px;flex:1;min-width:0;min-height:44px;padding:0 12px;font-size:14px}.bike-ride-chat-sheet--dark .bike-ride-chat-composer input{color:#f8fafc;background:#0b1220;border-color:#334155}.bike-ride-chat-composer button{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:12px;flex-shrink:0;min-height:44px;padding:0 16px;font-weight:700}.bike-ride-chat-sheet--dark .bike-ride-chat-composer button{color:#1c1917;background:#f59e0b}.bike-ride-chat-composer button:disabled{opacity:.45;cursor:not-allowed}.bike-comms-row{gap:8px;margin-top:10px;display:flex}.bike-comms-row .bike-call-btn,.bike-comms-row .bike-chat-btn{text-align:center;flex:1}.bike-chat-btn{color:#0f766e;cursor:pointer;background:#ecfdf5;border:1px solid #14b8a6;border-radius:12px;justify-content:center;align-items:center;min-height:44px;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.bike-chat-btn:disabled{opacity:.5;cursor:not-allowed}.bike-drv-profile{flex-direction:column;gap:12px;padding:12px 16px 32px;display:flex}.bike-drv-profile-loading{color:var(--bike-drv-muted,#94a3b8);padding:24px 16px}.bdp-identity{background:linear-gradient(160deg,#1a2332 0%,#121820 70%);border:1px solid #243044;border-radius:18px;align-items:flex-start;gap:14px;padding:16px;display:flex}.bdp-avatar{color:#042f2e;background:linear-gradient(145deg,#2dd4bf,#0d9488);border-radius:50%;flex-shrink:0;place-items:center;width:64px;height:64px;font-size:20px;font-weight:800;display:grid;position:relative}.bdp-avatar-ring{pointer-events:none;border:2.5px solid #64748b;border-radius:50%;position:absolute;inset:-3px}.bdp-avatar--online .bdp-avatar-ring,.bdp-avatar--busy .bdp-avatar-ring{border-color:#22c55e}.bdp-avatar--offline .bdp-avatar-ring{border-color:#64748b}.bdp-identity-text{flex:1;min-width:0}.bdp-name-row{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:4px;display:flex}.bdp-name-row h2{color:#f8fafc;margin:0;font-size:18px;font-weight:800;line-height:1.2}.bdp-presence{border-radius:999px;padding:3px 8px;font-size:11px;font-weight:700}.bdp-presence--online,.bdp-presence--busy{color:#4ade80;background:#22c55e2e}.bdp-presence--offline{color:#94a3b8;background:#64748b40}.bdp-id-line,.bdp-vehicle{color:#94a3b8;flex-wrap:wrap;gap:6px;margin:0;font-size:13px;display:flex}.bdp-vehicle{color:#cbd5e1;margin-top:6px;font-weight:600}.bdp-company-badge{color:#99f6e4;background:#134e4a;border:1px solid #2dd4bf;border-radius:999px;margin:8px 0 0;padding:4px 10px;font-size:12px;font-weight:700;display:inline-block}.bdp-metrics{grid-template-columns:1fr 1fr;gap:10px;display:grid}.bdp-metric{background:#151b24;border:1px solid #1e293b;border-radius:14px;flex-direction:column;gap:4px;padding:12px 14px;display:flex}.bdp-metric span{text-transform:uppercase;letter-spacing:.04em;color:#64748b;font-size:11px;font-weight:700}.bdp-metric strong{color:#f8fafc;font-size:20px}.bdp-metric em{color:#94a3b8;font-size:12px;font-style:normal}.bdp-kyc--ok{color:#4ade80!important;font-size:16px!important}.bdp-kyc--warn{color:#fbbf24!important;font-size:16px!important}.bdp-kyc--bad{color:#f87171!important;font-size:16px!important}.bdp-wallet{background:#151b24;border:1px solid #1e293b;border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex}.bdp-wallet-grid{grid-template-columns:1.35fr 1fr;gap:10px;display:grid}.bdp-wallet-cell{background:#0b1220;border-radius:12px;flex-direction:column;gap:2px;padding:10px 12px;display:flex}.bdp-wallet-cell span{color:#64748b;font-size:11px;font-weight:600}.bdp-wallet-cell strong{color:#f8fafc;font-size:18px}.bdp-wallet-cell--main strong{color:#5eead4}.bdp-wallet-cell em{color:#94a3b8;font-size:12px;font-style:normal}.bdp-today{color:inherit;background:#14b8a61a;border:1px solid #2dd4bf40;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:12px;text-decoration:none;display:flex}.bdp-today span{color:#5eead4;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.bdp-today strong{color:#f1f5f9;font-size:14px}.bdp-today em{color:#94a3b8;white-space:nowrap;font-size:13px;font-style:normal}.bdp-wallet-actions{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}@media (max-width:360px){.bdp-wallet-actions{grid-template-columns:1fr}}.bdp-btn{cursor:pointer;border:0;border-radius:12px;padding:12px;font-size:14px;font-weight:700}.bdp-btn--primary{color:#042f2e;background:linear-gradient(135deg,#2dd4bf,#14b8a6)}.bdp-btn--ghost{color:#e2e8f0;background:0 0;border:1px solid #334155}.bdp-service{background:#151b24;border:1px solid #1e293b;border-radius:16px;padding:14px}.bdp-service h3{text-transform:uppercase;letter-spacing:.05em;color:#64748b;margin:0 0 10px;font-size:12px}.bdp-service-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.bdp-service-row strong{color:#f8fafc;font-size:15px;display:block}.bdp-service-row span{color:#94a3b8;font-size:12px}.bdp-service-row em{border-radius:999px;padding:4px 10px;font-size:12px;font-style:normal;font-weight:700}.bdp-service-row em.is-on{color:#4ade80;background:#22c55e29}.bdp-service-row em.is-off{color:#fbbf24;background:#fbbf2424}.bdp-service-note{color:#f87171;margin:10px 0 0;font-size:12px}.bdp-taxi-ready{flex-direction:column;gap:8px;margin-top:14px;display:flex}.bdp-taxi-ready-btn{cursor:pointer;color:#ecfdf5;background:#0f766e;border:none;border-radius:14px;width:100%;min-height:48px;font-size:15px;font-weight:700}.bdp-taxi-ready-btn.is-on{color:#e2e8f0;background:#334155}.bdp-taxi-ready-btn:disabled{opacity:.55;cursor:not-allowed}.bdp-menu{background:#151b24;border:1px solid #1e293b;border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.bdp-menu-item{text-align:left;color:inherit;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;border-bottom:1px solid #1e293b;align-items:center;gap:12px;padding:14px;text-decoration:none;display:flex}.bdp-menu-item:last-child{border-bottom:0}.bdp-menu-item:active{background:#1a2332}.bdp-menu-ico{color:#5eead4;flex-shrink:0;place-items:center;width:28px;display:grid}.bdp-menu-ico svg{display:block}.bdp-menu-label{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.bdp-menu-label strong{color:#f1f5f9;font-size:14px;font-weight:700}.bdp-menu-label em{color:#64748b;font-size:12px;font-style:normal}.bdp-menu-item>span:last-child{color:#64748b;font-size:18px}.bdp-signout{color:#fca5a5;cursor:pointer;background:#7f1d1d40;border:1px solid #f8717173;border-radius:14px;width:100%;margin-top:4px;padding:14px;font-size:15px;font-weight:700}.bdp-signout:active{background:#7f1d1d66}.bike-drv-profile-card{background:var(--bike-drv-panel,#151b24);border:1px solid #1e293b;border-radius:16px;flex-direction:column;gap:12px;padding:14px;display:flex}.bike-drv-profile-hero{background:0 0;border:none;border-radius:0;align-items:center;gap:12px;padding:0;display:flex}.bike-drv-profile-avatar{color:#0b0f14;letter-spacing:.02em;background:linear-gradient(145deg,#fbbf24,#14b8a6);border-radius:14px;flex-shrink:0;place-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:grid}.bike-drv-profile-id{flex-direction:column;gap:2px;min-width:0;display:flex}.bike-drv-profile-name-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.bike-drv-profile-id strong{font-size:16px;font-weight:700;line-height:1.2}.bike-drv-profile-id span{color:var(--bike-drv-muted,#94a3b8);font-size:13px}.bike-drv-profile-badge{color:var(--bike-drv-accent,#fbbf24);letter-spacing:.04em;text-transform:uppercase;background:#fbbf2424;border-radius:999px;margin:0;padding:2px 7px;font-size:10px;font-style:normal;font-weight:700;display:inline-flex}.bike-drv-profile-wallet{grid-template-columns:1.4fr .8fr;gap:8px;display:grid}.bike-drv-profile-wallet-main,.bike-drv-profile-wallet-side{border-radius:12px;flex-direction:column;gap:2px;min-width:0;padding:12px;display:flex}.bike-drv-profile-wallet-main{background:linear-gradient(160deg,#0f766e 0%,#134e4a 55%,#0b1220 100%);border:1px solid #0f766e}.bike-drv-profile-wallet-side{background:#0b1220;border:1px solid #1e293b}.bike-drv-profile-wallet-main span,.bike-drv-profile-wallet-side span{text-transform:uppercase;letter-spacing:.05em;color:#99f6e4;font-size:10px;font-weight:700}.bike-drv-profile-wallet-side span{color:var(--bike-drv-muted,#94a3b8)}.bike-drv-profile-wallet-main strong{font-size:20px;font-weight:700;line-height:1.15}.bike-drv-profile-wallet-side strong{font-size:15px;font-weight:700;line-height:1.2}.bike-drv-profile-wallet-main em{color:#ccfbf1;font-size:12px;font-style:normal}.bike-drv-profile-today{color:inherit;background:#0b1220;border:1px solid #1e293b;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.bike-drv-profile-today span{text-transform:uppercase;letter-spacing:.05em;color:var(--bike-drv-muted,#94a3b8);margin-bottom:2px;font-size:10px;font-weight:700;display:block}.bike-drv-profile-today strong{font-size:13px;font-weight:700;line-height:1.25}.bike-drv-profile-today em{color:var(--bike-drv-accent,#fbbf24);flex-shrink:0;font-size:12px;font-style:normal;font-weight:600}.bike-drv-profile-actions{grid-template-columns:1fr 1fr;gap:8px;display:grid}.bike-drv-profile-topup,.bike-drv-profile-withdraw{cursor:pointer;border:none;border-radius:12px;width:100%;min-height:44px;margin-top:0;font-size:14px;font-weight:700}.bike-drv-profile-topup{background:var(--bike-drv-accent,#fbbf24);color:#422006}.bike-drv-profile-withdraw{color:#99f6e4;background:0 0;border:1.5px solid #0f766e}.bike-drv-profile-topup:active,.bike-drv-profile-withdraw:active{transform:scale(.98)}.bike-drv-profile-notice{color:#99f6e4;background:#14b8a61f;border:1px solid #14b8a659;border-radius:10px;margin:0;padding:10px 12px;font-size:12px}.bike-drv-profile-menu{background:var(--bike-drv-panel,#151b24);border:1px solid #1e293b;border-radius:14px;flex-direction:column;display:flex;overflow:hidden}.bike-drv-profile-menu-item{width:100%;min-height:48px;color:var(--bike-drv-text,#f8fafc);font:inherit;text-align:left;cursor:pointer;background:0 0;border:none;border-bottom:1px solid #1e293b;justify-content:space-between;align-items:center;gap:12px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.bike-drv-profile-menu-item:last-child{border-bottom:none}.bike-drv-profile-menu-item span:last-child{color:var(--bike-drv-muted,#94a3b8);font-weight:500}.bike-drv-profile-menu-item:active{background:#0b1220}.bike-drv-earnings-today{color:inherit;flex-direction:column;gap:2px;min-width:0;text-decoration:none;display:flex}.bike-drv-earnings-today:active{opacity:.85}.bike-drv-history{padding:12px 16px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;gap:14px;display:flex}.bike-drv-history-summary{color:var(--bike-drv-muted,#94a3b8);margin:0;font-size:13px;font-weight:600}.bike-drv-history-empty{text-align:center;color:var(--bike-drv-muted,#94a3b8);margin:24px 0}.bike-drv-history-group h2{color:var(--bike-drv-muted,#94a3b8);text-transform:uppercase;letter-spacing:.04em;margin:8px 0 10px;font-size:13px;font-weight:700}.bike-drv-history-group ul{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bike-drv-history-card{background:var(--bike-drv-panel,#151b24);border:1px solid #1e293b;border-radius:16px;padding:14px}.bike-drv-history-card-head{color:var(--bike-drv-muted,#94a3b8);justify-content:space-between;gap:8px;margin-bottom:10px;font-size:13px;display:flex}.bike-drv-history-status--done{color:#5eead4;font-weight:700}.bike-drv-history-status--cancel{color:#fca5a5;font-weight:700}.bike-drv-history-status--neutral{color:var(--bike-drv-accent,#fbbf24);font-weight:700}.bike-drv-history-route{flex-direction:column;gap:8px;display:flex}.bike-drv-history-route p{color:var(--bike-drv-text,#f8fafc);align-items:flex-start;gap:10px;margin:0;font-size:14px;line-height:1.35;display:flex}.bike-drv-history-card-foot{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-top:12px;display:flex}.bike-drv-history-customer{color:var(--bike-drv-muted,#94a3b8);font-size:12px}.bike-earn-shell{color:#111827;max-width:480px;min-height:100%;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:#f3f4f6;margin:0 auto}.zalo-app-fullscreen:has(.bike-earn-shell) .zalo-main{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;background:#f3f4f6;overflow:clip auto}.bike-earn-head{z-index:2;background:#f3f4f6;align-items:center;gap:8px;padding:12px 12px 8px;display:flex;position:sticky;top:0}.bike-earn-head h1{text-align:center;flex:1;margin:0;font-size:17px;font-weight:700}.bike-earn-back,.bike-earn-head-spacer{color:#111827;border-radius:999px;justify-content:center;align-items:center;width:40px;height:40px;font-size:20px;font-weight:600;text-decoration:none;display:inline-flex}.bike-earn-page{padding:4px 16px 24px}.bike-earn-section{margin:8px 0 12px;font-size:16px;font-weight:700}.bike-earn-status{color:#64748b;margin:12px 0;font-size:14px}.bike-earn-status.is-error{color:#dc2626}.bike-earn-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bike-earn-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 1px 2px #0f172a0a}.bike-earn-card-toggle{width:100%;font:inherit;color:#111827;text-align:left;cursor:pointer;background:#fff;border:none;justify-content:space-between;align-items:center;gap:12px;padding:16px;font-size:15px;font-weight:600;display:flex}.bike-earn-chevron{color:#9ca3af;font-size:18px;line-height:1}.bike-earn-card-body{border-top:1px solid #f3f4f6;padding:0 16px 8px}.bike-earn-row{color:#374151;border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;font-size:14px;display:flex}.bike-earn-row:last-child{border-bottom:none}.bike-earn-row strong{color:#111827;white-space:nowrap;font-weight:700}.bike-earn-row strong.is-neg{color:#111827}.bike-earn-row--sub{border-bottom:1px solid #f3f4f6;margin-top:-8px;padding-top:0}.bike-earn-row--sub em{color:#6b7280;font-size:12px;font-style:normal}.bike-earn-info{color:#6b7280;vertical-align:1px;background:#e5e7eb;border-radius:999px;justify-content:center;align-items:center;width:14px;height:14px;margin-left:6px;font-size:10px;font-style:normal;font-weight:700;display:inline-flex}.bike-earn-history-link{color:#2563eb;margin-top:18px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.bike-drv-trip .bike-trip-detail{color:#0f172a;z-index:2;padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px));background:#f8fafc;border-radius:18px 18px 0 0;margin-top:-12px;position:relative}.bike-trip-detail-title{text-align:center;margin:4px 0 12px;font-size:16px;font-weight:700}.bike-trip-detail-stats{color:#f8fafc;background:#1e293b;border-radius:14px;grid-template-columns:1fr 1fr;gap:10px;padding:14px;display:grid}.bike-trip-detail-stats span{color:#94a3b8;margin-bottom:4px;font-size:12px;display:block}.bike-trip-detail-stats strong{font-size:18px;font-weight:700}.bike-trip-detail-fare-row{justify-content:space-between;align-items:center;gap:12px;margin:12px 0;display:flex}.bike-trip-detail-fare-row .bike-driver-fare{color:#0f172a}.bike-trip-detail-nav{color:#2563eb;font-size:14px;font-weight:700;text-decoration:none}.bike-trip-detail-block{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:10px;padding:14px}.bike-trip-detail-block.is-focus{border-color:#14b8a6;box-shadow:0 0 0 1px #14b8a640}.bike-trip-detail-block.is-done{opacity:.72}.bike-trip-detail-block.is-done .bike-trip-detail-block-head h3{color:#94a3b8}.bike-trip-detail-block-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.bike-trip-detail-block-head h3{letter-spacing:.04em;text-transform:uppercase;color:#64748b;margin:0;font-size:12px;font-weight:700}.bike-trip-detail-cancel{color:#dc2626;font:inherit;cursor:pointer;background:0 0;border:none;padding:4px 0;font-size:13px;font-weight:700}.bike-trip-detail-cancel:disabled{opacity:.5}.bike-trip-detail-place{align-items:flex-start;gap:10px;display:flex}.bike-trip-detail-place strong{font-size:15px;line-height:1.3;display:block}.bike-trip-detail-place p{color:#64748b;margin:4px 0 0;font-size:13px;line-height:1.35}.bike-trip-detail-pin{background:#fff;border:2px solid #0f172a;border-radius:999px;flex-shrink:0;width:14px;height:14px;margin-top:4px}.bike-trip-detail-pin--drop{background:#f59e0b;border-color:#f59e0b;border-radius:2px 2px 2px 10px;transform:rotate(45deg)}.bike-trip-detail-pin--stop{background:#fef3c7;border-color:#f59e0b}.bike-trip-detail-passenger{border-top:1px solid #f1f5f9;margin-top:12px;padding-top:10px}.bike-trip-detail-passenger span{color:#94a3b8;margin-bottom:2px;font-size:12px;display:block}.bike-trip-detail-passenger strong{font-size:15px}.bike-trip-detail-comms{border-top:1px solid #e2e8f0;grid-template-columns:1fr 1fr;margin-top:12px;display:grid}.bike-trip-detail-comm{color:#0f172a;min-height:48px;font:inherit;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:8px;font-size:14px;font-weight:600;text-decoration:none;display:inline-flex}.bike-trip-detail-comm+.bike-trip-detail-comm{border-left:1px solid #e2e8f0}.bike-trip-detail-comm-ico{background:#2563eb;border-radius:4px;width:18px;height:18px;position:relative}.bike-trip-detail-comm-ico--msg:before{content:"";border:2px solid #fff;border-radius:3px;position:absolute;inset:4px 3px 5px}.bike-trip-detail-comm-ico--call{border-radius:999px}.bike-trip-detail-comm-ico--call:before{content:"";border:2px solid #fff;border-radius:2px 2px 40% 40%;width:7px;height:10px;position:absolute;top:4px;left:5px;transform:rotate(-25deg)}.bike-trip-detail-pay{background:#fff;border:1px solid #e2e8f0;border-radius:14px;margin-bottom:12px;padding:14px}.bike-trip-detail-pay-row{justify-content:space-between;align-items:center;gap:12px;font-size:14px;display:flex}.bike-trip-detail-pay-chip{color:#fff;background:#334155;border-radius:10px;align-items:center;min-height:36px;padding:0 14px;font-size:13px;font-weight:700;display:inline-flex}.bike-trip-detail-actions{flex-direction:column;gap:8px;margin-top:4px;display:flex}.bike-trip-detail-actions .bike-drv-primary-btn{color:#fff;background:#0f766e}.bike-trip-detail .bike-swipe-track{background:#e2e8f0;border-color:#cbd5e1}.bike-trip-detail .bike-swipe-label,.bike-trip-detail .bike-swipe-hint{color:#334155}.bike-schedule-root{z-index:90;justify-content:center;align-items:stretch;display:flex;position:fixed;inset:0}.bike-schedule-backdrop{background:#0f172a73;border:0;position:absolute;inset:0}.bike-schedule-sheet{z-index:1;width:min(100%,480px);padding:12px 20px calc(20px + env(safe-area-inset-bottom));background:#fff;flex-direction:column;min-height:100%;margin:0 auto;display:flex;position:relative;overflow:auto}.bike-schedule-head{grid-template-columns:40px 1fr 40px;align-items:center;margin-bottom:8px;display:grid}.bike-schedule-head h2{text-align:center;color:#0f172a;margin:0;font-size:17px;font-weight:700}.bike-schedule-back{color:#0f172a;cursor:pointer;background:0 0;border:0;padding:4px;font-size:22px}.bike-schedule-cal{text-align:center;background:#fff;border:2px solid #5eead4;border-radius:12px;width:72px;height:80px;margin:8px auto 16px;overflow:hidden}.bike-schedule-cal-month{color:#fff;text-transform:lowercase;background:#14b8a6;padding:4px 0;font-size:12px;font-weight:700;display:block}.bike-schedule-cal-day{color:#0f172a;padding-top:6px;font-size:36px;line-height:1.2;display:block}.bike-schedule-title{color:#0f172a;text-align:center;margin:0 0 6px;font-size:22px;font-weight:800}.bike-schedule-hint{text-align:center;color:#64748b;margin:0 0 20px;font-size:14px}.bike-schedule-picker{flex-direction:column;gap:6px;margin-bottom:8px;display:flex}.bike-schedule-row{color:#94a3b8;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:space-between;align-items:center;width:100%;padding:14px 16px;font-size:16px;display:flex}.bike-schedule-row.is-selected{color:#0f172a;background:#ccfbf1;font-weight:700}.bike-schedule-row.is-empty{pointer-events:none;min-height:48px}.bike-schedule-wheel{justify-content:center;gap:24px;margin-bottom:16px;display:flex}.bike-schedule-wheel-btn{cursor:pointer;color:#0f766e;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;width:44px;height:36px}.bike-schedule-wheel-btn:disabled{opacity:.4;cursor:not-allowed}.bike-schedule-summary{color:#475569;background:#f1f5f9;border-radius:14px;margin-bottom:16px;padding:14px 16px;font-size:14px;line-height:1.5}.bike-schedule-summary p{margin:0 0 6px}.bike-schedule-summary p:last-child{margin:0}.bike-schedule-confirm{color:#fff;cursor:pointer;background:#14b8a6;border:0;border-radius:999px;width:100%;margin-top:auto;padding:16px;font-size:17px;font-weight:700}.bike-schedule-trip-when{color:#0f766e;margin:0 0 10px;font-size:14px}.bike-trip-back{color:#0f766e;cursor:pointer;background:0 0;border:none;align-items:center;margin:0 0 10px;padding:0;font-size:14px;font-weight:600;display:inline-flex}.bike-scheduled-banner{background:#f0fdfa;border:1px solid #99f6e4;border-radius:12px;margin:10px 12px 0;padding:10px 12px}.bike-book-shell--vehicle .bike-scheduled-banner{margin:0 0 12px}.bike-scheduled-banner-head{color:#134e4a;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;font-size:13px;display:flex}.bike-scheduled-banner-ok,.bike-scheduled-banner-ok-alone{color:#0f766e;font-size:13px;font-weight:600}.bike-scheduled-banner-ok-alone{background:#f0fdfa;border-radius:10px;margin:10px 12px 0;padding:8px 12px}.bike-book-shell--vehicle .bike-scheduled-banner-ok-alone{margin:0 0 12px}.bike-scheduled-banner-list{flex-direction:column;gap:6px;max-height:220px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.bike-scheduled-banner-item{text-align:left;cursor:pointer;background:#fff;border:1px solid #ccfbf1;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;padding:8px 10px;display:flex}.bike-scheduled-banner-when{color:#0f766e;font-size:13px;font-weight:700}.bike-scheduled-banner-route{color:#475569;font-size:12px;line-height:1.35}.bike-drv-schedule-entry{color:#5eead4;box-sizing:border-box;cursor:pointer;background:#14b8a61f;border:1px solid #2dd4bf;border-radius:14px;justify-content:center;align-items:center;width:100%;margin-bottom:10px;padding:12px 16px;font-size:15px;font-weight:700;text-decoration:none;display:flex}.bike-driver-shell--sched{flex-direction:column;min-height:100%;display:flex}.bike-sched-pool-page{padding:8px 14px calc(24px + env(safe-area-inset-bottom));color:#e2e8f0;flex:1;overflow:auto}.bike-sched-pool-section{margin-bottom:20px}.bike-sched-pool-section h2{text-transform:uppercase;letter-spacing:.04em;color:#94a3b8;align-items:center;gap:8px;margin:4px 0 10px;font-size:13px;font-weight:800;display:flex}.bike-sched-pool-count{color:#5eead4;letter-spacing:0;text-transform:none;background:#134e4a;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.bike-sched-pool-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.bike-sched-pool-card{background:#111827;border:1px solid #1e293b;border-radius:14px;padding:10px 12px}.bike-sched-pool-card.is-claimed{border-color:#14b8a6}.bike-sched-pool-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 10px;margin-bottom:6px;display:flex}.bike-sched-pool-when{color:#5eead4;margin:0;font-size:13px;font-weight:800;line-height:1.25}.bike-sched-pool-top-meta{flex-wrap:wrap;align-items:center;gap:6px 8px;margin-left:auto;display:inline-flex}.bike-sched-pool-fare{color:#f8fafc;margin:0;font-size:13px;font-weight:800}.bike-sched-pool-dist{color:#94a3b8;font-size:12px;font-weight:600}.bike-sched-pool-card .bike-drv-route-stops{margin:0 0 8px}.bike-sched-pool-addr{margin:0 0 4px;font-size:14px}.bike-sched-pool-meta{color:#94a3b8;gap:12px;margin-bottom:10px;font-size:13px;display:flex}.bike-sched-pool-foot{flex-direction:column;align-items:flex-start;gap:8px;display:flex}.bike-sched-pool-status{color:#94a3b8;margin:0;font-size:11px}.bike-sched-pool-claim,.bike-sched-pool-release{cursor:pointer;border:0;border-radius:10px;width:100%;padding:9px;font-size:14px;font-weight:700}.bike-sched-pool-claim{color:#042f2e;background:#14b8a6}.bike-sched-pool-release{color:#e2e8f0;background:0 0;border:1px solid #64748b}.bike-drv-thumb-zone--car-tabs{z-index:20;flex-direction:column;gap:10px;display:flex}.bike-drv-car-tabbar{background:#0f172a;border:1px solid #1e293b;border-radius:16px;grid-template-columns:1fr 1fr;gap:6px;padding:6px;display:grid}.bike-drv-car-tabbar button,.bike-drv-car-tabbar a,.bike-drv-car-tabbar span{cursor:pointer;color:#94a3b8;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;min-height:48px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.bike-drv-car-tabbar .is-active,.bike-drv-car-tabbar button.is-active{color:#042f2e;cursor:default;background:linear-gradient(135deg,#0f766e,#14b8a6)}.bike-sched-pool-seat-hint{color:#94a3b8;margin:0 0 12px;font-size:12px}.bike-sched-pool-seat-badge{letter-spacing:.02em;color:#5eead4;white-space:nowrap;background:#2dd4bf2e;border:1px solid #2dd4bf59;border-radius:999px;margin:0;padding:2px 7px;font-size:10px;font-weight:700;display:inline-block}
