.account-wizard{display:grid;gap:14px;min-width:0;padding:18px 0}.account-wizard label{display:grid;gap:7px;font-weight:600}.account-wizard input,.account-wizard select{box-sizing:border-box;max-width:100%;width:100%;min-height:46px;font:inherit;padding:11px 12px;border:1px solid rgba(27,38,34,.22);border-radius:12px;background:#fff;color:#202020}.account-wizard input:focus,.account-wizard select:focus{outline:2px solid currentColor;outline-offset:2px}.account-wizard input[type=checkbox]{width:22px;min-height:22px}.account-wizard button{min-height:44px;white-space:normal}.account-wizard a{overflow-wrap:anywhere}.account-wizard [role=status]{min-height:1.5em}.account-auth-surface{border:1px solid rgba(27,38,34,.13);border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(249,248,244,.96));box-shadow:0 14px 34px rgba(20,30,25,.08);padding:0 18px 18px;margin:10px 0 18px}.account-auth-surface>.account-auth-hero{margin:0 -18px}.account-auth-hero{display:grid;gap:7px;padding:20px 18px 4px}.account-auth-hero>span{font-size:.72rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;opacity:.66}.account-auth-hero h3{font-size:1.55rem;line-height:1.1;margin:0}.account-auth-hero p{margin:0;line-height:1.45}.account-benefits{display:grid;gap:8px;margin:8px 0 2px;padding-left:22px;line-height:1.4}.account-primary{width:100%;border:0;border-radius:12px;padding:11px 14px;background:#171b19;color:#fff;font-weight:800}.account-link-button{border:0;background:transparent;text-decoration:underline;text-underline-offset:3px;padding:7px 2px;color:inherit}.account-switch,.account-auth-links{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}.account-auth-links{justify-content:space-between}.account-check-row{grid-template-columns:28px 1fr!important;align-items:start;gap:9px!important;font-weight:500!important}.account-check-row input{margin-top:1px}.account-privacy-link{font-size:.9rem}.account-confirm-email{font-size:1.05rem;overflow-wrap:anywhere}.account-status{margin:0;font-size:.92rem}.account-wizard small{line-height:1.35;opacity:.72}.account-danger{background:#8b1d1d!important;color:#fff!important;border-color:#8b1d1d!important}.account-danger-outline{background:transparent!important;color:#8b1d1d!important;border:1px solid #8b1d1d!important}.cookie-layer{position:fixed;inset:0;z-index:20000;display:flex;align-items:flex-end;justify-content:center;padding:16px;background:rgba(0,0,0,.22)}.cookie-card{width:min(680px,100%);display:grid;gap:12px;padding:18px;background:#fff;border:1px solid #d8d8d8;border-radius:16px;box-shadow:0 18px 55px rgba(0,0,0,.18);color:#202020}.cookie-card>p,.cookie-settings>p{margin:0;line-height:1.5}.cookie-actions{display:flex;flex-wrap:wrap;gap:8px}.cookie-actions button{min-height:42px;padding:9px 13px;border-radius:10px;border:1px solid #bbb;background:#fff;color:inherit;font:inherit}.cookie-actions button:focus-visible,.cookie-card a:focus-visible{outline:3px solid currentColor;outline-offset:2px}.cookie-settings{display:grid;gap:12px}.cookie-settings h3{margin:0}.cookie-choice{display:grid;grid-template-columns:26px 1fr;gap:9px;align-items:start}.cookie-choice input{width:20px;height:20px;margin:1px 0}.cookie-card a{color:inherit;text-decoration:underline}@media(max-width:520px){.account-auth-surface{margin-inline:-2px}.cookie-actions{display:grid;grid-template-columns:1fr}.cookie-actions button{width:100%}}
.account-dedicated-view{max-width:720px;margin:0 auto;width:100%}.account-profile-card{width:100%;text-align:left;cursor:pointer;position:relative;padding-right:48px;border:1px solid rgba(23,27,25,.18)!important;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(249,246,239,.98))!important}.account-profile-card .account-profile-action{display:inline-flex;margin-top:8px;font-weight:800;text-decoration:underline;text-underline-offset:3px}.account-profile-card:after{content:'→';position:absolute;right:18px;top:50%;transform:translateY(-50%);font-size:1.4rem;font-weight:800}.account-dedicated-view .account-auth-surface{margin-top:4px}


/* M10 account workspace */
.account-dedicated-view{max-width:860px}
.account-dedicated-view .account-wizard{max-width:820px;margin:0 auto;padding:10px 0 28px}
.account-home-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;padding:18px;border:1px solid rgba(27,38,34,.12);border-radius:22px;background:linear-gradient(135deg,#fff,#f5f0e8)}
.account-avatar{display:grid;place-items:center;width:58px;height:58px;border-radius:20px 20px 20px 7px;background:#b6174b;color:#fff;font-family:'Bricolage Grotesque',Inter,sans-serif;font-size:21px;font-weight:800;letter-spacing:.03em}
.account-home-identity{min-width:0}.account-home-identity>span{font-size:.7rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;opacity:.6}.account-home-identity h3{margin:3px 0 2px;font-size:1.55rem}.account-home-identity p{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
.account-active-pill{align-self:start;display:inline-flex;padding:6px 9px;border-radius:999px;background:#e6f3e8;color:#285a35;font-size:.72rem;font-weight:800;white-space:nowrap}
.account-complete-card{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px dashed rgba(182,23,75,.35);border-radius:16px;background:rgba(182,23,75,.04)}.account-complete-card strong{display:block}.account-complete-card p{margin:3px 0 0;color:var(--muted);line-height:1.4}
.account-section-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.account-summary-card{display:flex;flex-direction:column;min-width:0;padding:16px;border:1px solid rgba(27,38,34,.13);border-radius:18px;background:#fff}
.account-summary-head h4{margin:0 0 4px;font-size:1rem}.account-summary-head p{margin:0 0 12px;color:var(--muted);font-size:.84rem;line-height:1.4}
.account-summary-body{display:grid;gap:8px;margin-bottom:14px}.account-summary-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid rgba(27,38,34,.08);font-size:.84rem}.account-summary-row span{color:var(--muted)}.account-summary-row strong{text-align:right;font-size:.84rem}
.account-card-action{margin-top:auto;border:0;background:transparent;color:var(--brand,#b6174b);font-weight:800;text-align:left;padding:8px 0}
.account-shortcuts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.account-shortcut{min-height:48px;border:1px solid rgba(27,38,34,.14);border-radius:14px;background:#fff;font-weight:750}
.account-security{border-top:1px solid rgba(27,38,34,.12);padding-top:12px}.account-security>summary{cursor:pointer;font-weight:800;min-height:44px;display:flex;align-items:center}.account-security-actions{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:4px 0 10px}.account-security-actions>a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.profile-auth-card{display:grid;gap:10px;margin:14px 0;padding:18px;border:1px solid rgba(27,38,34,.14);border-radius:18px;background:linear-gradient(135deg,#fff,#f7f2eb)}.profile-auth-card>svg{width:34px;height:34px;color:var(--brand)}.profile-auth-card h3,.profile-auth-card p{margin:0}.profile-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:4px}.profile-auth-actions button{min-height:48px}
@media(max-width:760px){.account-section-grid{grid-template-columns:1fr}.account-home-hero{grid-template-columns:auto minmax(0,1fr)}.account-active-pill{grid-column:2;justify-self:start}.account-complete-card{align-items:flex-start;flex-direction:column}.account-shortcuts{grid-template-columns:1fr 1fr}}
@media(max-width:420px){.profile-auth-actions,.account-shortcuts{grid-template-columns:1fr}.account-home-hero{padding:15px}.account-avatar{width:52px;height:52px}}

/* M10 account mobility hub: journey first, account settings secondary. */
.account-mobility-hub{display:grid;gap:15px;min-width:0}
.account-mobility-heading{display:grid;gap:4px}
.account-overline{color:var(--brand,#b6174b);font-size:.7rem;font-weight:850;letter-spacing:.12em}
.account-mobility-heading h3{margin:0;font-size:clamp(1.28rem,3vw,1.8rem);line-height:1.18}
.account-mobility-heading p{margin:0;color:var(--muted);line-height:1.5}
.account-mobility-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.account-mobility-stat{display:grid;gap:3px;min-width:0;border:1px solid rgba(27,38,34,.12);background:#fff;padding:13px;border-radius:16px}
.account-mobility-stat strong{font-size:1.7rem;line-height:1.15;font-variant-numeric:tabular-nums}
.account-mobility-stat span{font-size:.79rem;color:var(--muted);overflow-wrap:anywhere}
.account-mobility-actions,.account-entry-actions,.saved-auth-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.account-hub-primary,.account-hub-secondary{border-radius:14px;min-height:48px;font-weight:780;padding:10px 14px}
.account-hub-primary{background:var(--brand,#b6174b);color:#fff;border:1px solid var(--brand,#b6174b)}
.account-hub-secondary{background:#fff;border:1px solid rgba(27,38,34,.23);color:inherit}
.account-mobility-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.account-mobility-card{display:grid;align-content:start;gap:8px;min-width:0;padding:15px;border:1px solid rgba(27,38,34,.13);background:#fff;border-radius:18px}
.account-mobility-card h4{margin:0 0 3px;font-size:1.02rem;line-height:1.3}
.account-mobility-item{display:flex;flex-direction:column;gap:2px;min-width:0;min-height:52px;text-align:left;background:#fcfaf7;border:1px solid rgba(27,38,34,.11);border-radius:12px;padding:10px 12px}
.account-mobility-item strong{font-size:.9rem;overflow-wrap:anywhere}
.account-mobility-item span{font-size:.78rem;color:var(--muted)}
.account-mobility-empty,.account-mobility-footnote{margin:0;color:var(--muted);font-size:.9rem;line-height:1.5}
.account-mobility-offline{display:grid;gap:9px;padding:15px;border:1px solid rgba(27,38,34,.17);border-radius:15px;background:#f9f6f0}
.account-mobility-offline p{margin:0}
.account-settings-details,.account-security{border-top:1px solid rgba(27,38,34,.14);padding-top:9px;min-width:0}
.account-settings-details>summary,.account-security>summary{display:flex;align-items:center;min-height:46px;cursor:pointer;font-weight:760}
.account-settings-details .account-section-grid{margin:8px 0 12px}
.account-driver-feature{display:flex;justify-content:space-between;align-items:center;gap:15px;background:#f8f3ed;border:1px solid rgba(27,38,34,.13);border-radius:16px;padding:15px}
.account-driver-feature p{margin:4px 0 0;color:var(--muted)}
.account-return-hint{margin:0;color:var(--muted)}
.account-logout-inline{justify-self:start;border:0;background:none;padding:6px 0;color:var(--muted);text-decoration:underline}
.saved-auth-entry{display:grid;gap:10px;padding:16px;border:1px solid rgba(182,23,75,.2);border-radius:18px;background:#fff9f8;margin:10px 0}
.saved-auth-entry h3,.saved-auth-entry p{margin:0}
.saved-auth-entry>p{line-height:1.45}
.saved-auth-actions button{min-height:48px;border-radius:12px}
.account-wizard button:focus-visible,.saved-auth-actions button:focus-visible,.account-settings-details summary:focus-visible{outline:3px solid var(--brand,#b6174b);outline-offset:3px}
@media(max-width:760px){.account-mobility-overview{grid-template-columns:1fr}}
@media(max-width:420px){.account-mobility-stat{padding:10px 8px}.account-mobility-stat strong{font-size:1.4rem}.account-mobility-stat span{font-size:.72rem}.account-mobility-actions,.account-entry-actions,.saved-auth-actions{grid-template-columns:1fr}.account-driver-feature{flex-direction:column;align-items:stretch}}
@media(prefers-reduced-motion:reduce){.account-mobility-hub *{scroll-behavior:auto}}

.saved-auth-entry[hidden]{display:none!important}

/* M10 — welcoming profile consent and functional line-stop bookmarks */
.account-consent-invite{display:grid;gap:7px;padding:18px;border:1px solid rgba(182,23,75,.13);border-radius:19px;background:linear-gradient(135deg,#fff8f6,#f8f3ea)}
.account-consent-invite>span{font-size:.74rem;letter-spacing:.09em;text-transform:uppercase;font-weight:800;color:var(--brand,#b6174b)}
.account-consent-invite h3{margin:0;font-size:1.45rem;line-height:1.2}
.account-consent-invite p{margin:0;color:var(--muted);line-height:1.5}
.account-consent-choice{display:grid!important;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:12px!important;padding:15px;border:1px solid rgba(27,38,34,.16);border-radius:15px;background:#fff;cursor:pointer;line-height:1.4}
.account-consent-choice input{width:22px!important;min-height:22px!important}
.account-consent-choice:focus-within{outline:2px solid var(--brand,#b6174b);outline-offset:2px}
.cookie-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}
.cookie-actions button{min-width:0;min-height:46px;font-weight:700;white-space:normal}
.cookie-settings .cookie-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
.cookie-card>strong{font-size:1.18rem}
.favorite-timetable,.favorite-route-timetable{align-items:stretch}
.favorite-row .favorite-map-action{flex:0 0 auto;min-height:44px;border:1px solid rgba(27,38,34,.2);border-radius:10px;background:#fff}
.favorite-row .favorite-open{min-width:0;overflow-wrap:anywhere}
.station-saved-route-results{display:grid;gap:8px;min-width:0}
.station-saved-route-results .station-line{width:100%;min-width:0;text-align:left;overflow-wrap:anywhere}
#stationContent input[type=search]{display:block;width:100%;min-height:48px;box-sizing:border-box;border-radius:12px;border:1px solid rgba(27,38,34,.24);padding:11px 13px;font:inherit}
#stationContent .station-save-board{width:100%;min-height:48px;border-radius:13px;background:var(--brand,#b6174b);color:#fff;border:1px solid var(--brand,#b6174b);font-weight:800}
.account-mobility-stats{grid-template-columns:repeat(auto-fit,minmax(95px,1fr))}
@media(max-width:520px){.cookie-actions,.cookie-settings .cookie-actions{grid-template-columns:1fr}.cookie-actions button{width:100%}.account-mobility-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* M10 station: a first-class full-height workspace with a single natural scroll container. */
#view-station{width:100%;min-width:0;min-height:100%;box-sizing:border-box}
#stationContent{display:grid;align-content:start;gap:18px;width:100%;max-width:790px;min-width:0;margin-inline:auto;padding:4px 0 24px;box-sizing:border-box}
#view-station .station-overview{position:sticky;top:-9px;z-index:5;display:flex;flex-direction:column;gap:13px;padding:17px 17px 16px;margin:-4px -2px 0;background:var(--paper,#fff);border:1px solid var(--line,#e1e3dc);border-radius:19px;box-shadow:0 4px 17px #25291c0a}
#view-station .station-overview-copy{display:grid;gap:5px;min-width:0}
#view-station .station-eyebrow{color:var(--brand,#b6174b);font-weight:800;letter-spacing:.1em;font-size:.7rem}
#view-station .station-title{margin:0;font-size:clamp(1.4rem,4.8vw,2rem);line-height:1.14;overflow-wrap:anywhere}
#view-station .station-caption{margin:0;color:var(--muted,#5e665d);font-size:.83rem;overflow-wrap:anywhere}
#view-station .station-overview-actions{display:flex;gap:9px;flex-wrap:wrap}
#view-station .station-save-stop,#view-station .station-back-route{font:inherit;font-size:.86rem;min-height:44px;padding:9px 13px;border-radius:12px;border:1px solid var(--line,#d8ded5);background:#fff;color:var(--ink,#232821);text-align:left;white-space:normal}
#view-station .station-save-stop[aria-pressed=true]{background:#f6e7ed;color:var(--brand,#b6174b);border-color:#e7afc2}
#view-station .station-back-route{color:var(--brand,#b6174b);background:#fff7f9}
#view-station .station-section{display:grid;gap:14px;min-width:0}
#view-station .station-section h4{margin:0;font-size:1.17rem;line-height:1.25}
#view-station .station-section-hint{margin:0;color:var(--muted,#5e665d);font-size:.88rem;line-height:1.45}
#view-station .station-lines-list,#view-station .station-saved-route-results{display:grid;gap:10px;min-width:0}
#view-station .station-line{display:flex;align-items:center;gap:13px;width:100%;min-width:0;min-height:72px;padding:13px 15px;text-align:left;font:inherit;color:var(--ink,#232821);border:1px solid var(--line,#d8ded5);border-radius:16px;background:#fff;box-shadow:0 3px 12px #25291c08}
#view-station .station-line:focus-visible,#view-station button:focus-visible,#view-station select:focus-visible,#view-station input:focus-visible{outline:3px solid var(--brand,#b6174b);outline-offset:2px}
#view-station .station-line-chip,#view-station .station-route-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:48px;min-height:42px;padding:7px 10px;background:#f4e8ed;color:var(--brand,#b6174b);border-radius:12px;font-size:1rem;font-weight:800;line-height:1.1;text-align:center}
#view-station .station-line-copy{display:grid;gap:4px;flex:1;min-width:0}
#view-station .station-line-copy strong{font-weight:800}
#view-station .station-line-copy small{color:var(--muted,#5e665d);font-size:.8rem;line-height:1.35;overflow-wrap:anywhere}
#view-station .station-line-arrow{margin-left:auto;font-size:1.5rem;line-height:1;color:var(--muted,#5e665d)}
#view-station .station-subnav{display:flex;align-items:center;gap:8px}
#view-station .station-all-lines{min-height:44px;border-radius:12px;padding:9px 13px;background:#f1f3ec;border:1px solid var(--line,#d8ded5);color:var(--ink,#232821);font-weight:700}
#view-station .station-route-header{display:flex;gap:12px;align-items:center;padding:4px 0}
#view-station .station-route-heading{display:grid;gap:4px}
#view-station .station-route-badge{min-width:60px;min-height:55px;font-size:1.15rem}
#view-station .station-time-options{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
#view-station .station-time-label{font-size:.86rem;font-weight:700}
#view-station #stationHours{width:auto;min-width:120px;min-height:45px;padding:8px 12px;border:1px solid var(--line,#d8ded5);border-radius:12px;background:#fff;color:inherit;font:inherit}
#view-station .station-updated,#view-station .station-list-count{margin:0;color:var(--muted,#5e665d);font-size:.78rem}
#view-station .station-departures{display:grid;gap:9px;min-width:0}
#view-station .station-departure-date{font-size:.85rem;font-weight:800;margin:12px 0 0;text-transform:capitalize;color:var(--muted,#5e665d)}
#view-station .station-departure-item{display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:14px;padding:14px 15px;min-height:78px;border:1px solid var(--line,#d8ded5);border-radius:15px;background:#fff}
#view-station .station-departure-clock{font-size:1.35rem;font-variant-numeric:tabular-nums;letter-spacing:-.035em}
#view-station .station-departure-detail{display:grid;gap:6px;min-width:0}
#view-station .station-departure-destination{font-size:.89rem;font-weight:700;overflow-wrap:anywhere}
#view-station .station-departure-status{display:inline-flex;width:max-content;max-width:100%;padding:3px 8px;border-radius:7px;background:#eef1eb;color:#536052;font-size:.72rem;font-weight:700}
#view-station .station-departure-status.station-is-live{background:#e5f5e9;color:#236c43}
#view-station .station-save-board{margin:0;border-radius:13px;font-weight:800}
#view-station .station-refresh{min-height:46px;border:1px solid var(--line,#d8ded5);border-radius:12px;background:#f1f3ec;color:var(--ink,#232821);font-size:.9rem;font-weight:700}
#view-station .station-route-search{position:sticky;top:121px;z-index:4;background:var(--paper,#fff);padding:3px 0 7px}
#view-station .station-route-stop{display:grid;grid-template-columns:minmax(0,1fr) auto 15px;gap:10px;align-items:center}
#view-station .station-route-stop-name{font-weight:700;min-width:0;overflow-wrap:anywhere}
#view-station .station-route-stop small{font-size:.73rem;color:var(--muted,#5e665d)}
#view-station .station-empty{margin:4px 0;padding:18px;background:#f6f7f2;border:1px dashed var(--line,#d8ded5);border-radius:14px;line-height:1.5}
#view-station .station-wait{display:flex;align-items:center;gap:12px;min-height:110px;padding:16px;border-radius:14px;background:#f6f7f2}
#view-station .station-wait p{margin:0}
#view-station .station-wait-spinner{width:23px;height:23px;border:3px solid #d5ded2;border-top-color:var(--brand,#b6174b);border-radius:50%;animation:uv-station-spin .9s linear infinite}
@keyframes uv-station-spin{to{transform:rotate(360deg)}}
@media(min-width:800px){#view-station .station-lines-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){#stationContent{gap:14px}#view-station .station-overview{padding:13px}#view-station .station-departure-item{grid-template-columns:69px minmax(0,1fr);gap:11px;padding:12px}#view-station .station-departure-clock{font-size:1.19rem}#view-station .station-route-stop{grid-template-columns:minmax(0,1fr) 15px}#view-station .station-route-stop small{display:none}#view-station .station-route-search{top:115px}}
@media(prefers-reduced-motion:reduce){#view-station .station-wait-spinner{animation:none}}

/* Version 9: account-only Operations entry. Backend is always authoritative. */
.account-admin-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border-radius:16px;border:1px solid var(--line,#d8ded5);background:#faf0f4;color:var(--brand,#b6174b);font-weight:800;text-decoration:none;margin:4px 0 12px}.account-admin-link:hover{background:#f7e4eb}.account-admin-link:focus-visible{outline:3px solid var(--brand,#b6174b);outline-offset:2px}
