.passenger-page{--kz-nav:#12343b;--kz-action:#0f766e;--kz-bg:#f5f7f9;--kz-text:#18343b;--kz-secondary:#52636b;--kz-border:#dbe3e7;background:var(--kz-bg);color:var(--kz-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;margin:0}
.passenger-page *{box-sizing:border-box}
.passenger-page [hidden]{display:none!important}
.passenger-page a{color:#0c6862;text-underline-offset:3px}
.passenger-page :focus-visible{outline:3px solid #b3650b;outline-offset:4px;box-shadow:none}
.passenger-page .skip-link{position:absolute;top:8px;left:8px;z-index:1000;transform:translateY(-180%);background:white;color:var(--kz-text);padding:12px 16px}
.passenger-page .skip-link:focus{transform:none}
.passenger-page h1,.passenger-page h2,.passenger-page h3{color:var(--kz-text);line-height:1.2;font-weight:720;letter-spacing:-.025em}
.passenger-page h1{font-size:clamp(1.75rem,3vw,2.4rem);margin:0 0 8px}.passenger-page h2{font-size:1.25rem}.passenger-page h3{font-size:1.0625rem}
.passenger-page p{margin:0 0 12px}.passenger-page p:last-child{margin-bottom:0}
.passenger-page .kz-muted,.passenger-page .helptext{color:var(--kz-secondary)}.passenger-page .kz-small{font-size:.875rem}
.passenger-page .kz-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:var(--kz-secondary);margin-bottom:8px}
.passenger-page .kz-main *,.passenger-page .kz-shell-header *,.passenger-page .kz-rail *{min-width:0;overflow-wrap:anywhere}
.passenger-page .kz-main{max-width:1320px;margin:0 auto;padding:24px 24px 64px;min-width:0}
.passenger-page .kz-banner{display:flex;align-items:center;gap:8px;color:var(--kz-secondary);font-size:.8125rem;margin:0 0 24px;padding:0 0 16px;border-bottom:1px solid var(--kz-border)}
.passenger-page .kz-beta-dot{width:6px;height:6px;background:#0f766e;border-radius:50%;flex-shrink:0}
.passenger-page .kz-brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-size:1.15rem;font-weight:750;min-height:48px}
.passenger-page .kz-monogram{display:grid;place-items:center;width:32px;height:32px;background:#cbe6df;border-radius:8px;color:#12343b;font-weight:800}
.passenger-page .kz-shell-header{background:white;border-bottom:1px solid var(--kz-border);padding:12px 24px;display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:8px 24px}
.passenger-page .kz-primary-nav{display:flex;gap:8px}.passenger-page .kz-primary-nav a{display:flex;align-items:center;gap:12px;min-height:48px;padding:12px 16px;text-decoration:none;border-radius:8px;color:var(--kz-secondary);font-weight:600}
.passenger-page .kz-primary-nav a[aria-current]{background:#e0f0ec;color:#0d5852}.passenger-page .kz-primary-nav a:hover{background:#edf4f3}
.passenger-page .kz-simple-nav{order:3;width:100%;justify-content:center;border-top:1px solid var(--kz-border);padding-top:8px}.passenger-page .kz-simple-nav a{justify-content:center;flex:1;max-width:320px}
.passenger-page .kz-rail{display:none}.passenger-page .kz-menu{margin:0}.passenger-page .kz-menu summary{min-height:44px;cursor:pointer;padding:10px 12px;font-weight:600}.passenger-page .kz-menu[open]{flex-basis:100%}.passenger-page .kz-menu-content{padding:16px 0 0}.passenger-page .kz-menu-content nav{flex-direction:column}
.passenger-page .kz-account{padding:24px 0 0;margin-top:16px;border-top:1px solid var(--kz-border)}.passenger-page .kz-account a{display:inline-flex;align-items:center;min-height:44px}.passenger-page .kz-username{font-size:.875rem}.passenger-page .kz-login-label{font-size:.75rem;color:var(--kz-secondary);margin-bottom:4px}
.passenger-page .kz-page-heading,.passenger-page .kz-section-heading{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;margin-bottom:24px}.passenger-page .kz-section-heading{margin:24px 0 12px}.passenger-page .kz-section-heading h2{margin:0}
.passenger-page .kz-card{background:white;border:1px solid var(--kz-border);border-radius:12px;padding:24px;margin-bottom:16px}.passenger-page .kz-card h2{margin-bottom:16px}.passenger-page .kz-card dl{margin:0}.passenger-page dt{font-size:.875rem;color:var(--kz-secondary);font-weight:500;margin-top:16px}.passenger-page dd{margin:4px 0 12px;white-space:pre-wrap}
.passenger-page .kz-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:16px}.passenger-page .kz-grid>.kz-card{margin:0}.passenger-page .kz-reading{max-width:760px}.passenger-page .kz-detail-columns{display:grid;gap:24px;align-items:start}.passenger-page .kz-secondary-column{min-width:0}
.passenger-page .btn,.passenger-page button{font:inherit;border-radius:8px;min-height:44px;padding:10px 16px;white-space:normal;font-weight:600}.passenger-page .btn-primary{background:var(--kz-action);border:1px solid var(--kz-action);color:white}.passenger-page .btn-primary:hover{background:#0b5d57;border-color:#0b5d57}.passenger-page .btn-outline-primary{border:1px solid #0f766e;color:#0c6862;background:white}.passenger-page .btn-outline-primary:hover{background:#e0f0ec}.passenger-page .btn-outline-secondary{border:1px solid #b7c6cc;background:white;color:#344f58}.passenger-page .btn-outline-secondary:hover{background:#edf2f4}.passenger-page .btn-outline-danger{color:#9d3130;border-color:#cb8584;background:white}.passenger-page .btn-outline-danger:hover{background:#fff0ed}
.passenger-page input:not([type=checkbox]):not([type=radio]):not([type=hidden]),.passenger-page select,.passenger-page textarea{font:inherit;font-size:16px;line-height:1.5;width:100%;max-width:100%;min-height:48px;border:1px solid #a1b3ba;border-radius:8px;padding:12px;background:white;color:var(--kz-text)}
.passenger-page label{display:block;font-weight:600;margin:0 0 8px}.passenger-page input[type=checkbox]{width:24px;height:24px;vertical-align:middle;margin:8px 12px 8px 0;accent-color:var(--kz-action)}.passenger-page input[type=radio]{accent-color:var(--kz-action)}.passenger-page input[type=file]{padding:10px!important;font-size:.875rem!important}.passenger-page input[type=file]::file-selector-button{padding:6px;margin-right:8px;border:1px solid #a1b3ba;border-radius:4px;background:#edf4f3}
.passenger-page .kz-field{margin-bottom:24px}.passenger-page .kz-field .helptext{font-size:.875rem;margin-top:8px}.passenger-page .kz-field-error input{border-color:#a12c23}.passenger-page .errorlist{color:#a12c23;padding-left:20px;margin:8px 0}.passenger-page fieldset{margin:0 0 24px;border:0;padding:0;min-width:0}.passenger-page legend{font-size:1.0625rem;font-weight:700;margin:0 0 16px}.passenger-page .kz-form-grid{display:grid;gap:0 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.passenger-page .kz-form-grid .kz-wide{grid-column:1/-1}
.passenger-page .kz-actions{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.passenger-page .kz-actions>*{flex:1 1 160px}.passenger-page details.kz-card>summary{min-height:44px;cursor:pointer;font-weight:650;padding:8px 0}.passenger-page details.kz-card[open]>summary{margin-bottom:16px}.passenger-page .kz-secondary-action{margin-top:20px;padding-top:16px;border-top:1px solid var(--kz-border)}
.passenger-page .kz-board-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;background:white;border:1px solid var(--kz-border);border-radius:12px;padding:20px;margin-bottom:24px}.passenger-page .kz-board-toolbar p{font-size:.8125rem}.passenger-page .kz-date-title{font-size:1.125rem;margin-bottom:8px}.passenger-page .kz-day-nav{display:flex;border:1px solid var(--kz-border);border-radius:8px}.passenger-page .kz-day-nav a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;text-decoration:none;font-size:.875rem;font-weight:650}.passenger-page .kz-day-nav a+a{border-left:1px solid var(--kz-border)}.passenger-page .kz-date-picker label{font-size:.75rem;margin-bottom:4px}.passenger-page .kz-date-picker>div{display:flex;gap:8px}.passenger-page .kz-date-picker input{width:164px!important;min-height:44px!important;padding:8px!important}.passenger-page .kz-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 24px}.passenger-page .kz-filters a{display:flex;align-items:center;gap:8px;min-height:44px;border:1px solid var(--kz-border);border-radius:8px;padding:8px 12px;text-decoration:none;font-size:.875rem;color:var(--kz-secondary);background:white;font-weight:600}.passenger-page .kz-filters a[aria-current]{background:#12343b;color:white;border-color:#12343b}.passenger-page .kz-filters span{background:#edf2f4;color:#344f58;border-radius:5px;min-width:24px;text-align:center;padding:2px 5px}.passenger-page .kz-count{font-size:.875rem;color:var(--kz-secondary);font-weight:500;margin-left:8px}
.passenger-page .kz-now-section{margin-bottom:32px}.passenger-page .kz-ride-list{display:grid;gap:12px}.passenger-page .kz-ride-row{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(150px,.8fr) minmax(180px,1fr);gap:24px;padding:24px;background:white;border:1px solid var(--kz-border);border-radius:12px}.passenger-page .kz-route-stop{display:flex;gap:12px;align-items:flex-start;margin-bottom:12px}.passenger-page .kz-route-stop h3,.passenger-page .kz-destination-text{font-size:1rem;font-weight:650;margin:0;line-height:1.45;letter-spacing:0}.passenger-page .kz-route-stop .kz-eyebrow{margin:0 0 4px;font-size:.6875rem}.passenger-page .kz-route-dot{border:2px solid #0f766e;border-radius:50%;width:10px;height:10px;margin-top:5px;flex-shrink:0}.passenger-page .kz-destination{border-radius:2px;background:#0f766e}.passenger-page .kz-reference{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.75rem;color:var(--kz-secondary);margin:16px 0 0}.passenger-page .kz-ride-facts p{font-size:.8125rem}.passenger-page .kz-timing-tag{font-size:.75rem;font-weight:650;display:inline-flex;padding:3px 8px;background:#edf2f4;border-radius:4px;margin-bottom:12px}.passenger-page .kz-status{display:inline-block;border-radius:6px;background:#e1efec;color:#245c54;font-size:.8125rem;line-height:1.4;padding:5px 8px;font-weight:650}.passenger-page .kz-tone-attention{background:#fff0d8;color:#815015}.passenger-page .kz-tone-waiting{background:#eef0fb;color:#49577d}.passenger-page .kz-tone-active{background:#dcf2e8;color:#1d6148}.passenger-page .kz-tone-quiet{background:#edf1f3;color:#52636b}.passenger-page .kz-next-hint{font-size:.875rem;font-weight:550;margin:12px 0 8px}.passenger-page .kz-assignment{font-size:.8125rem;color:var(--kz-secondary)}.passenger-page .kz-row-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:700;font-size:.875rem;text-decoration:none}.passenger-page .kz-row-link:hover{text-decoration:underline}
.passenger-page .kz-pagination{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:16px;font-size:.8125rem;margin:16px 0;color:var(--kz-secondary)}.passenger-page .kz-pagination span{margin-right:auto}.passenger-page .kz-pagination a{display:inline-flex;align-items:center;min-height:44px;font-weight:650}.passenger-page .kz-empty{text-align:center;background:white;border:1px dashed #a1b3ba;border-radius:12px;padding:40px 24px}.passenger-page .kz-empty p{max-width:460px;margin:8px auto 16px;color:var(--kz-secondary)}.passenger-page .kz-empty-mark{display:inline-grid;place-items:center;width:40px;height:40px;background:#e0f0ec;border-radius:50%;margin-bottom:16px}.passenger-page .kz-empty a{display:inline-flex;align-items:center;min-height:44px}
.passenger-page .kz-identity{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.passenger-page .kz-avatar{width:80px;height:80px;border-radius:50%;object-fit:cover;background:#e0f0ec;flex-shrink:0}.passenger-page .kz-initials{display:inline-flex;align-items:center;justify-content:center;font-size:1.6rem;font-weight:700}.passenger-page .kz-driver-name{font-size:1.25rem;font-weight:700;margin-bottom:8px}.passenger-page .kz-plate-label{font-size:.75rem;color:var(--kz-secondary);margin-bottom:4px}.passenger-page .kz-plate{display:inline-block;border:2px solid #12343b;border-radius:6px;padding:4px 12px;font-size:1.4rem;font-weight:750;letter-spacing:.08em;background:#fffaf0}.passenger-page .kz-next-step{border-left:4px solid var(--kz-action)}.passenger-page .kz-trip-route{font-size:clamp(1.25rem,2vw,1.65rem);font-weight:700}.passenger-page .kz-trip-route>span{display:block;color:var(--kz-secondary);font-size:.75rem;font-weight:500;margin:8px 0}.passenger-page #ride-connection{font-size:.8125rem;color:var(--kz-secondary);margin:16px 0}.passenger-page .kz-timing label{display:flex;gap:12px;align-items:center;min-height:56px;border:1px solid #a1b3ba;border-radius:8px;padding:12px;cursor:pointer}.passenger-page .kz-timing input[type=radio]{width:24px;height:24px;flex-shrink:0}.passenger-page .kz-timing label:has(input:checked){background:#e0f0ec;border-color:#0f766e}.passenger-page .kz-login-details{border-top:1px solid var(--kz-border);padding-top:12px;margin-top:16px}.passenger-page .kz-login-details summary{min-height:44px;cursor:pointer;font-size:.875rem;font-weight:600}.passenger-page .kz-copy-result{font-size:.8125rem;min-height:24px;margin-top:4px}.passenger-page .kz-tester-layout{display:grid;gap:24px;align-items:start}.passenger-page .kz-slot-summary{display:inline-flex;align-items:center;border:1px solid var(--kz-border);background:white;padding:12px 16px;border-radius:8px;font-weight:600}
@media(min-width:1100px){.passenger-page .kz-detail-columns{grid-template-columns:minmax(0,1.3fr) minmax(300px,1fr)}.passenger-page .kz-tester-layout{grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr)}}
@media(min-width:1000px){.passenger-page.kz-role-owner{padding-left:232px}.passenger-page .kz-rail{display:flex;flex-direction:column;position:fixed;inset:0 auto 0 0;width:232px;padding:24px 16px;background:var(--kz-nav);color:#d1e3e5;overflow-y:auto}.passenger-page .kz-rail a{color:#eaf2f3}.passenger-page .kz-rail-label{font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:#a4c1c6;margin:32px 16px 12px}.passenger-page .kz-rail nav{flex-direction:column}.passenger-page .kz-rail nav a[aria-current]{background:#27535a;color:white}.passenger-page .kz-rail nav a:hover{background:#22484e}.passenger-page .kz-rail nav span{font-size:1.1rem;width:20px}.passenger-page .kz-rail .kz-account{margin-top:auto;border-color:#36575d;padding:24px 8px 0}.passenger-page .kz-rail .kz-eyebrow,.passenger-page .kz-rail .kz-login-label{color:#a4c1c6}.passenger-page.kz-role-owner .kz-shell-header{display:none}.passenger-page .kz-main{padding:32px 32px 64px}}
@media(max-width:760px){.passenger-page .kz-main{padding:20px 16px 48px}.passenger-page .kz-shell-header{padding:8px 16px}.passenger-page .kz-card{padding:20px}.passenger-page .kz-ride-row{grid-template-columns:minmax(0,1fr);gap:16px;padding:20px}.passenger-page .kz-ride-facts{display:flex;gap:12px;flex-wrap:wrap;border-top:1px solid var(--kz-border);padding-top:16px}.passenger-page .kz-ride-facts p{margin:0}.passenger-page .kz-ride-facts .kz-timing-tag{align-self:flex-start;margin:0}.passenger-page .kz-ride-state{border-top:1px solid var(--kz-border);padding-top:16px}.passenger-page .kz-row-link{min-height:48px}.passenger-page .btn,.passenger-page button{min-height:48px}.passenger-page .kz-board-toolbar{padding:16px;gap:16px}.passenger-page .kz-day-nav{width:100%}.passenger-page .kz-day-nav a{flex:1}.passenger-page .kz-date-picker{width:100%}.passenger-page .kz-date-picker input{width:100%!important}.passenger-page .kz-form-grid{grid-template-columns:minmax(0,1fr)}.passenger-page .kz-form-grid .kz-wide{grid-column:auto}.passenger-page .kz-filters{gap:8px}.passenger-page .kz-filters a{font-size:.8125rem;padding:8px 10px}.passenger-page .kz-banner{font-size:.75rem;align-items:flex-start}.passenger-page .kz-beta-dot{margin-top:6px}}
.passenger-page .kz-date-picker button{flex-shrink:0;min-width:52px;white-space:nowrap}
.passenger-page .kz-date-picker input{flex:1 1 auto;min-width:0}
@media(prefers-reduced-motion:reduce){.passenger-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.kz-attention{padding:1rem 1.2rem;margin:1rem 0;border:1px solid #d7e4e0;border-left:4px solid #188268;border-radius:12px;background:#f5faf8;overflow-wrap:anywhere}
.kz-attention p:last-child{margin-bottom:0}.kz-attention ul:empty{display:none}.kz-sms-contact{padding:1rem;border:1px solid #dce3e1;border-radius:12px;overflow-wrap:anywhere}.kz-sms-contact h3{font-size:1.05rem}

.passenger-page .kz-saved-username{font-family:ui-monospace,Consolas,monospace;font-size:1rem;line-height:1.7;padding:16px;background:#edf4f3;border-radius:8px;overflow-wrap:anywhere}.passenger-page #enrollment-username{margin-bottom:24px}.passenger-page #enrollment-result:not(:empty){display:grid;gap:20px;margin-bottom:24px}.passenger-page .kz-trip-guide{border-color:#b7d6cf;background:#f2f8f6}.passenger-page .kz-account>a{display:flex}.passenger-page .kz-consent-label{font-weight:500}

.kz-route-review{border:1px solid #c5d9d7;border-radius:12px;padding:1rem;margin:1rem 0;background:#f3faf8}.kz-address-results{display:grid;gap:.5rem;margin-top:.5rem}.kz-address-results button{text-align:left;white-space:normal;overflow-wrap:anywhere}.kz-route-review [role=status]{margin:1rem 0;overflow-wrap:anywhere}.kz-maps-attribution{display:inline-block;white-space:nowrap;font:400 14px sans-serif;color:#5e5e5e;letter-spacing:normal;margin:10px 10px 5px}

.kz-maps-attribution img{display:block;height:18px;width:auto;max-width:none}
.kz-attention-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:12px;margin:20px 0}
.kz-attention-grid>a{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid #bed8d2;border-radius:12px;background:white;text-decoration:none;color:#123e3b}
.kz-attention-grid strong{font-size:1.8rem;line-height:1.1}.kz-attention-grid span{font-size:.9rem;font-weight:600}
.kz-attention-grid>.kz-card{display:flex;flex-direction:column;gap:6px;margin:0}
.kz-attention-grid>a:hover,.kz-attention-grid>a:focus-visible{background:#edf8f5;outline:2px solid #0f766e;outline-offset:2px}
.kz-review-details dd{margin-bottom:18px;overflow-wrap:anywhere}
