.transit-route-option{display:flex;align-items:flex-start;gap:10px;padding:12px;background:#fff;border:1px solid #bfdbfe;border-radius:14px;box-shadow:0 4px 12px rgba(8,47,73,.06)}
.transit-route-content{min-width:0;flex:1}
.transit-route-results{grid-column:1/-1;min-width:0;width:100%}
.transit-results-list{min-width:0;width:100%}
.transit-route-option{min-width:0;width:100%}
.transit-option-overview{display:grid;gap:9px}
.transit-line-summary{display:grid;grid-template-columns:64px minmax(0,1fr);gap:10px;align-items:center}
.transit-line-number{min-width:58px;min-height:42px;padding:5px 7px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:#075985;color:#fff;font-size:1.08rem;font-weight:900;line-height:1.05;text-align:center;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;box-shadow:0 2px 5px rgba(8,47,73,.18)}
.transit-line-copy{min-width:0;display:grid;gap:3px}
.transit-line-copy strong{color:#082f49;font-size:.9rem;line-height:1.35;overflow-wrap:anywhere}
.transit-line-copy small{color:#334e62;font-size:.81rem;font-weight:750;line-height:1.4}
.transit-trip-meta{display:grid;gap:3px;padding:8px 10px;border-radius:10px;background:#eff8fc;color:#123b56;font-size:.78rem;line-height:1.45}
.transit-trip-meta strong{font-size:.83rem;font-variant-numeric:tabular-nums}
.transit-trip-meta span{color:#334e62}
.transit-option-details{margin-top:8px;border-top:1px solid #d8eaf3}
.transit-option-details>summary,.transit-stop-list>summary{min-height:46px;display:flex;align-items:center;gap:7px;color:#075985;font-size:.82rem;font-weight:850;cursor:pointer;touch-action:manipulation}
.transit-option-details>summary::marker,.transit-stop-list>summary::marker{color:#075985}
.transit-timeline{list-style:none;display:grid;gap:7px;margin:0;padding:0}
.transit-timeline>li{min-width:0;padding:9px 10px;border-radius:10px;line-height:1.45}
.transit-walk-step{background:#f0f9ff;border:1px solid #bae6fd}
.transit-wait-step{background:#fff7ed;border:1px solid #fdba74}
.transit-walk-step strong,.transit-wait-step strong{display:block;color:#123b56;font-size:.82rem}
.transit-walk-step small,.transit-wait-step small{display:block;margin-top:3px;color:#334e62;font-size:.76rem;overflow-wrap:anywhere}
.transit-ride-step{background:#f0f7ff;border:1px solid #bfdbfe;border-left:4px solid #075985}
.transit-ride-title{display:flex;align-items:center;gap:9px;margin-bottom:7px}
.transit-ride-title>span:last-child{display:grid;gap:2px;min-width:0}
.transit-ride-title strong{color:#082f49;font-size:.82rem}
.transit-ride-title small{color:#123b56;font-size:.8rem;font-weight:800;overflow-wrap:anywhere}
.transit-ride-step p{margin:4px 0;color:#183b52;font-size:.78rem;line-height:1.45;overflow-wrap:anywhere}
.transit-ride-step p b{font-variant-numeric:tabular-nums}
.transit-ride-metrics{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}
.transit-ride-metrics span{padding:4px 8px;border-radius:999px;background:#dbeafe;color:#123b56;font-size:.74rem;font-weight:800}
.transit-stop-list{margin-top:4px;border-top:1px solid #cbdff0}
.transit-stop-list>summary{min-height:44px;font-size:.76rem}
.transit-stop-list ol{margin:0;padding:0 0 4px 24px;color:#183b52;font-size:.76rem;line-height:1.6}
.transit-stop-unavailable{display:block;margin-top:6px;color:#526575;font-size:.74rem;line-height:1.45}
.transit-route-option>.button{min-height:46px;align-self:center;flex:0 0 auto}
.transit-saved>.transit-route-option{margin:8px 0;background:#fff;border-color:#a7d7c3;box-shadow:none}
.transit-saved>.transit-route-option .transit-trip-meta{background:#f0fdf4}
@media(max-width:480px){.transit-route-option{gap:7px;padding:9px}.transit-line-summary{grid-template-columns:58px minmax(0,1fr);gap:8px}.transit-line-number{min-width:54px;min-height:42px;font-size:1rem}.transit-line-copy strong{font-size:.85rem}.transit-route-option>.button{min-height:44px;padding:0 8px;font-size:.72rem}.transit-option-details>summary{font-size:.78rem}}

/* GTFS credit under every transit result list and saved route (#12): one short line, 班表資料來源（CC BY 4.0）, that opens to
   the full credit with its links. Each layout sizes it. */
@media (max-width: 760px), (max-width: 1000px) and (max-height: 600px){.transit-attribution{margin:2px 0 4px}.transit-attribution>summary{display:list-item;padding:12px 0;line-height:20px;color:#526575;font-size:.8rem;font-weight:700;cursor:pointer;touch-action:manipulation}.transit-attribution>p{margin:0 0 6px;color:#526575;font-size:.76rem;line-height:1.5}.transit-attribution a{color:#075985}}
@media (min-width: 1001px), (min-width: 761px) and (min-height: 601px){.transit-attribution{margin:2px 0 4px}.transit-attribution>summary{display:list-item;padding:6px 0;line-height:20px;color:#526575;font-size:.74rem;font-weight:700;cursor:pointer}.transit-attribution>p{margin:0 0 6px;color:#526575;font-size:.72rem;line-height:1.5}.transit-attribution a{color:#075985}}
