:root{color-scheme:light;--ink:#1d3557;--muted:#526177;--line:#ccd3dd;--paper:#f5f7fa;--surface:#fff;--tint:#e9eef5;--control:#8492a5;--focus:#764ba2;--good:#216048;--good-bg:#e6f2eb;--warn:#795015;--warn-bg:#fff2d9;--error:#a52c36;--primary:#1d3557;--on-primary:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}a{color:var(--ink);text-underline-offset:4px}::selection{background:#ddcfee;color:#1d3557}:focus-visible{outline:3px solid var(--focus);outline-offset:4px}main:focus{outline:none}
h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.2;letter-spacing:-.02em}h2{font-size:24px;line-height:1.3}h3{font-size:20px}p{max-width:68ch}p+p{margin-top:12px}.help,.muted,.bottom-note{color:var(--muted)}.help,small{font-size:16px}.help{margin-top:10px}
button,.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:12px 20px;border:1px solid var(--control);border-radius:8px;background:var(--surface);color:var(--ink);cursor:pointer;text-decoration:none;font-weight:600;line-height:1.35;transition:background .16s ease-out}button:hover,.button:hover{background:var(--tint)}button:active,.button:active{background:var(--line)}button:disabled{opacity:.6;cursor:not-allowed}.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.primary:hover:not(:disabled){background:#304c70;color:#fff}.text-button{border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:4px;padding-inline:4px}.danger{color:var(--error)}
label{display:block;font-size:18px;font-weight:600;margin-bottom:10px}input,select{width:100%;min-height:54px;padding:12px;border:1px solid var(--control);border-radius:8px;background:var(--surface);color:var(--ink);caret-color:var(--focus)}input::placeholder{color:var(--muted)}input:disabled,select:disabled{opacity:.65}input[type=checkbox]{width:23px;height:23px;min-height:23px;margin:0;flex-shrink:0;accent-color:var(--ink)}fieldset{min-width:0;border:0;padding:0;margin:0}legend{font-size:18px;font-weight:650;margin-bottom:14px}.field{margin-bottom:26px}.field-heading{display:block;margin:26px 0 14px;font-weight:650}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-grid .field{margin:0}.check{display:flex;align-items:center;gap:12px;min-height:52px;font-weight:400;margin-bottom:8px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:22px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:12px;top:-100px;z-index:10;padding:14px;background:var(--surface)}.skip-link:focus{top:12px}.prototype-banner{padding:9px 16px;text-align:center;background:var(--tint);color:var(--muted);font-size:15px}.prototype-banner span{margin-left:8px}
.sidebar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px max(24px,calc((100% - 940px)/2));background:var(--surface);border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;white-space:nowrap;font-size:22px;font-weight:750;text-decoration:none;line-height:1.3}.brand small{display:block;font-size:15px;font-weight:400;color:var(--muted)}.sidebar-note{display:none}nav{display:flex;gap:8px}nav a{display:flex;align-items:center;gap:8px;min-height:52px;padding:12px 16px;border-radius:8px;font-size:17px;text-decoration:none;font-weight:600}nav a:hover,nav a[aria-current=page]{background:var(--tint)}.icon{width:22px;height:22px;flex-shrink:0;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round}
main{max-width:960px;width:100%;min-width:0;margin:auto;padding:42px 24px 70px}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.page-heading p{margin-top:12px;color:var(--muted)}.page-heading .button{flex-shrink:0}
.alert-list{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:0 30px}.alert-row{padding:30px 0;border-bottom:1px solid var(--line)}.alert-row:last-child{border-bottom:0}.row-title{display:flex;align-items:start;justify-content:space-between;gap:16px;margin-bottom:20px}.row-title h2{display:flex;align-items:center;flex-wrap:wrap;gap:12px;overflow-wrap:anywhere}.route-chips{display:inline-flex;gap:6px}.route-chip{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:34px;padding:2px 9px;background:var(--ink);color:var(--surface);border-radius:5px;font-size:20px;font-weight:750}.state{font-size:16px;font-weight:600;color:var(--good);background:var(--good-bg);border-radius:6px;padding:6px 10px;white-space:nowrap}.state.quiet{color:var(--muted);background:var(--tint)}.state.warn{color:var(--warn);background:var(--warn-bg)}.alert-stop{margin-bottom:8px}.alert-schedule{margin:20px 0 8px}.return-link{display:inline-flex;min-height:52px;align-items:center;margin-top:16px;font-weight:600}.bottom-note{font-size:16px;margin-top:28px}
.optional,.preview-tools{margin-top:26px;padding-top:14px;border-top:1px solid var(--line)}summary{cursor:pointer;min-height:52px;padding:10px 0;font-size:17px;font-weight:600}details[open]>summary{margin-bottom:16px}details .field:first-of-type{margin-top:12px}.compact{margin-top:12px;padding-top:0;border:0}.saved-message{border:1px solid var(--control);padding:26px;background:var(--surface);border-radius:12px;margin-bottom:26px}.saved-message p{margin:12px 0 18px}.saved-message button{margin:0 10px 10px 0}
.notice{padding:18px;margin:20px 0;border-radius:8px;background:var(--tint)}.notice.warning{color:var(--warn);background:var(--warn-bg)}.notice.error{color:var(--error);background:var(--surface);border:1px solid var(--error)}.notice p{margin-top:8px}
.simple-editor{max-width:720px;margin:auto}.simple-editor form{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:32px}.simple-editor form>h2{margin-bottom:28px}.steps{list-style:none;padding:0;margin:0 0 28px;display:flex;gap:18px;counter-reset:step}.steps li{flex:1;color:var(--muted);font-size:16px;border-bottom:2px solid var(--line);padding:0 0 12px}.steps li::before{counter-increment:step;content:counter(step) ". "}.steps li[aria-current=step]{color:var(--ink);font-weight:700;border-color:var(--ink)}.editor-actions{display:flex;justify-content:space-between;gap:16px;margin-top:32px;padding-top:24px;border-top:1px solid var(--line)}.editor-actions .primary{min-width:160px}.save-later{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin-top:16px}.save-later .help{margin:0}
.day-presets{display:flex;gap:10px;margin-bottom:16px}.day-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.day-picker label{display:flex;gap:9px;align-items:center;min-height:56px;border:1px solid var(--control);border-radius:8px;padding:10px;margin:0;font-size:16px;font-weight:400;cursor:pointer}.day-picker label:has(:checked){background:var(--tint);border-color:var(--ink)}.slot+.slot{margin-top:34px;padding-top:26px;border-top:1px solid var(--line)}.frequency{margin-top:28px}.number-unit{display:flex;align-items:center;gap:14px}.number-unit input{max-width:100px}.warning-field{margin-top:32px;padding-top:26px;border-top:1px solid var(--line)}.return-note{margin:-10px 0 24px;color:var(--muted)}
.review-facts{margin:0}.review-facts>div{padding:18px 0;border-bottom:1px solid var(--line)}.review-facts>div:first-child{padding-top:0}.review-facts dt{color:var(--muted);font-size:16px;margin-bottom:6px}.review-facts dd{margin:0;font-weight:600;overflow-wrap:anywhere}.review-facts dd p{font-weight:400}.timing-explanation{margin-top:24px}.notification{border:1px solid var(--control);border-radius:8px;padding:20px;margin-top:12px}.notification strong{display:block;margin-bottom:12px}
.empty{padding:36px;background:var(--surface);border-radius:12px;border:1px solid var(--line)}.empty h2{margin-bottom:12px}.empty .button{margin-top:24px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:28px;min-width:0}.two-column{display:grid;grid-template-columns:1.2fr 1fr;gap:30px;align-items:start}.narrow{max-width:720px}.context-label{display:block;color:var(--muted);font-size:16px;margin-bottom:8px}.stop-name{font-size:24px}.stop-letter{display:inline-flex;align-items:center;justify-content:center;min-width:34px;height:34px;padding:0 7px;border:1px solid var(--control);border-radius:50%;font-size:17px}.direction{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px}.destination{margin-top:14px;color:var(--muted)}.schedule-copy{margin-top:22px}.section-heading{margin:28px 0 16px}.back-link{display:inline-flex;align-items:center;min-height:52px;margin-bottom:16px}
.arrival-list{padding:0;list-style:none;margin:20px 0}.arrival-list li{display:flex;justify-content:space-between;align-items:center;gap:18px;padding:22px 0;border-top:1px solid var(--line)}.arrival-list li strong{font-size:26px;font-variant-numeric:tabular-nums}.arrival-list small{display:block;color:var(--muted)}.device-row{padding:26px 0;border-bottom:1px solid var(--line)}.device-row:first-child{padding-top:0}.device-row p{margin-top:8px}.device-row>.state{display:none}.account-entry{max-width:520px;margin:auto}.account-entry h1{margin-bottom:16px}.account-entry form{margin-top:24px}.account-entry .primary{width:100%}.activity-row{padding:24px 0;border-bottom:1px solid var(--line)}.activity-row small{display:block;margin-top:12px}.toggle-group{display:flex;flex-wrap:wrap;gap:10px}.toggle-group [aria-pressed=true]{background:var(--tint);border-color:var(--ink)}
:root[data-theme=dark]{color-scheme:dark;--ink:#e2eaf5;--muted:#adbace;--line:#3e5067;--paper:#152236;--surface:#1d3048;--tint:#2a405d;--control:#7d91ac;--focus:#ceb1ed;--good:#a4e0c2;--good-bg:#234637;--warn:#f5d493;--warn-bg:#493b28;--error:#ffb0b6;--primary:#b9cee8;--on-primary:#152236}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--ink:#e2eaf5;--muted:#adbace;--line:#3e5067;--paper:#152236;--surface:#1d3048;--tint:#2a405d;--control:#7d91ac;--focus:#ceb1ed;--good:#a4e0c2;--good-bg:#234637;--warn:#f5d493;--warn-bg:#493b28;--error:#ffb0b6;--primary:#b9cee8;--on-primary:#152236}}
@media(max-width:767px){.prototype-banner{font-size:14px}.prototype-banner span{display:block;margin:0}.sidebar{display:block;padding:16px 20px}.brand{font-size:21px}.brand small{display:inline;margin-left:10px}nav{position:fixed;z-index:5;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(3,1fr);gap:4px;border-top:1px solid var(--line);background:var(--surface);padding:8px 10px calc(8px + env(safe-area-inset-bottom))}nav a{flex-direction:column;gap:3px;padding:6px;font-size:15px}main{padding:28px 18px 120px}h1{font-size:28px}h2{font-size:23px}.page-heading{align-items:stretch;flex-direction:column;gap:22px;margin-bottom:28px}.page-heading .button{align-self:start}.alert-list{padding:0 20px}.alert-row{padding:26px 0}.row-title{flex-direction:column;gap:12px}.simple-editor form{padding:24px 20px}.day-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.steps{gap:12px}.steps li{font-size:16px}.steps li::before{display:block;margin-bottom:3px}.two-column{grid-template-columns:1fr}.panel,.empty{padding:24px 20px}.form-grid{gap:12px}.editor-actions .primary{min-width:0}.number-unit{gap:12px}.number-unit input{max-width:84px}}
@media(max-width:359px){.form-grid{grid-template-columns:1fr}.day-picker{grid-template-columns:1fr}.editor-actions{flex-wrap:wrap}.editor-actions .primary{flex-grow:1}.simple-editor form{padding:22px 16px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}
/* Keep focused fields clear of the phone navigation bar. */
html{scroll-padding-bottom:110px}input,select,button,a,summary{scroll-margin-block:16px 110px}
.account-address{overflow-wrap:anywhere}
.device-row h3{overflow-wrap:anywhere}
#phone-connect-form{margin-top:22px}
.form-grid>*{min-width:0}input,select{min-width:0;max-width:100%}
.optional>.form-grid{margin-bottom:26px}
@media(max-width:767px){.form-grid:has(input[type=date]){grid-template-columns:1fr}}
.stop-picker summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:12px;border:1px solid var(--control);border-radius:8px;background:var(--surface);cursor:pointer;list-style:none;font-weight:400}
.stop-picker summary::-webkit-details-marker{display:none}.stop-picker summary:hover{background:var(--tint)}.stop-picker summary span{overflow-wrap:anywhere}.stop-picker svg{flex-shrink:0;fill:none;stroke:currentColor;stroke-width:2}.stop-picker[open] svg{transform:rotate(180deg)}
.stop-picker-panel{padding:12px;margin-top:8px;border:1px solid var(--control);border-radius:8px;background:var(--surface)}
#stop-picker-results{max-height:300px;overflow-y:auto;overscroll-behavior:contain;margin-top:10px;scrollbar-color:var(--control) var(--surface)}
#stop-picker-results [role=option]{min-height:54px;padding:14px 12px;border-bottom:1px solid var(--line);cursor:pointer;overflow-wrap:anywhere}
#stop-picker-results [role=option]:hover,#stop-picker-results .is-active{background:var(--tint)}#stop-picker-results [aria-selected=true]{font-weight:700}
#stop-picker-results .is-active{outline:2px solid var(--focus);outline-offset:-2px}
.window-preview{padding-inline-start:24px}.window-preview li,.live-matches li{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.window-preview p,.live-matches p{margin-top:8px}.live-matches{padding:0;list-style:none}.live-matches strong{font-variant-numeric:tabular-nums}
