.commute-view-control{position:relative}
.commute-view-button{color:#315f79}
.commute-view-button:hover{background:#eaf4f9}
.commute-view-popover{position:absolute;top:calc(100% + 7px);left:0;z-index:40;box-sizing:border-box;width:min(1700px,calc(100vw - 18px));max-height:min(78vh,680px);overflow:auto;padding:14px;border:1px solid #cbd8e0;border-radius:6px;background:#fff;box-shadow:0 12px 32px #152b3d38;color:#344553}
.commute-view-popover[hidden]{display:none}
.commute-view-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid #e3e9ed}
.commute-view-eyebrow{margin:0 0 3px;color:#718a9a;font:700 9px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.13em}
.commute-view-heading h2{margin:0;color:#304554;font-size:18px;line-height:1.2}
.commute-view-heading #commute-view-summary{margin:3px 0 0;color:#74838e;font-size:10px}
.commute-view-close{flex:none;width:28px;height:28px;border:0;border-radius:4px;background:transparent;color:#73828d;font-size:22px;line-height:1;cursor:pointer}
.commute-view-close:hover{background:#edf2f5}
.commute-view-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:7px 12px;padding-top:8px}
.commute-connections-toggle{padding:5px 8px;border:1px dashed #aebfc8;border-radius:4px;background:#f7f9fa;color:#405462;font-family:inherit;font-size:10px;font-weight:650;cursor:pointer}
.commute-connections-toggle[aria-pressed="true"]{border-color:#d84545;background:#fff0f0;color:#a42f2f}
.commute-connections-toggle:disabled{border-color:#c8d1d6;background:#f1f3f4;color:#9ca8af;cursor:default;opacity:.65}
.commute-view-legend{display:flex;align-items:center;flex-wrap:wrap;gap:6px 13px;color:#657783;font-size:9px}
.commute-view-legend span{display:inline-flex;align-items:center;gap:5px}
.legend-swatch{display:inline-block;width:10px;height:10px;border-radius:2px;background:#238653}
.legend-swatch.connecting{background:#d84545}
.legend-swatch.direct-inbound{background:#e58a30}
.commute-view-calendar-scroll{overflow:auto;padding-top:9px}
.commute-view-calendar{display:grid;grid-template-columns:repeat(7,140px);width:max-content;min-width:980px;border-top:1px solid #cbd7df;border-left:1px solid #cbd7df}
.commute-view-day{min-width:0;border-right:1px solid #cbd7df;border-bottom:1px solid #cbd7df;background:#f8fafb}
.commute-view-day:nth-child(even){background:#f2f6f8}
.commute-view-day>h3{position:sticky;top:0;z-index:2;margin:0;padding:6px 3px;border-bottom:1px solid #d6e0e6;background:#e8eff3;color:#435866;text-align:center;font:700 10px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.025em}
.commute-view-sides{display:grid;grid-template-columns:1fr 1fr;min-height:0}
.commute-view-direction{min-width:0;padding:4px 2px 5px}
.commute-view-direction+.commute-view-direction{border-left:1px solid #dce5ea}
.commute-view-direction h4{margin:0 0 4px;color:#238653;text-align:center;font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:0}
.commute-view-direction.to-home h4{color:#b96a20}
.commute-view-timeline{position:relative;min-height:0}
.commute-view-timeline{position:relative;min-height:320px;background:linear-gradient(to bottom,#f6faf7 0 49.7%,#dce5ea 49.7% 50.1%,#f8fbf5 50.1% 100%);background-size:100% 320px}
.commute-view-time-mark{position:absolute;left:2px;z-index:0;transform:translateY(-50%);padding:1px 2px;background:#f6faf7;color:#718077;font:700 8px ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.04em}
.commute-view-time-mark:first-child{transform:none}
.commute-view-option{position:absolute;z-index:1;left:3px;right:2px;box-sizing:border-box;min-height:40px;margin:0;padding:0;border-left:3px solid #238653;background:#e8f5ed;color:#394d59;font-size:7px;line-height:1.2;overflow-wrap:anywhere}
.commute-view-direction.to-home .commute-view-option{border-left-color:#e58a30;background:#fff1e3}
.commute-view-option.has-connection,.commute-view-direction.to-home .commute-view-option.has-connection{border-left-color:#d84545;background:#fff0f0}
.commute-view-option strong,.commute-view-option span,.commute-view-option small{display:block}
.commute-view-option strong{margin-bottom:0;color:#314b5a;font:700 7px ui-monospace,SFMono-Regular,Menlo,monospace}
.commute-view-option span{font-variant-numeric:tabular-nums}
.commute-view-option small{margin-top:1px;color:#7a8992;font-size:6px}
.commute-view-none,.commute-view-more{margin:0;color:#89959d;font-size:8px;line-height:1.35}
.commute-view-more{padding:3px 0 0 3px;color:#657884}
.commute-view-empty-timeline{padding:8px 3px}
.commute-view-note{margin:7px 0 0;color:#798791;font-size:9px;line-height:1.4}
.commute-view-empty{grid-column:1/-1;margin:0;padding:24px 12px;color:#6e7d88;text-align:center;font-size:12px}
.commute-view-empty-actions{padding-top:8px;text-align:right}
.commute-view-empty-actions[hidden]{display:none}
.commute-view-empty-actions button{padding:6px 10px;border:1px solid #76a9c1;border-radius:4px;background:#eff7fa;color:#315f79;font-size:10px;font-weight:650;cursor:pointer}
.commute-view-empty-actions button:hover{background:#e1f0f6}
@media(max-width:760px){.commute-view-popover{left:-8px;width:calc(100vw - 16px);padding:10px}.commute-view-calendar{min-width:980px}.commute-view-legend{gap:5px 9px}}
