/* Different times on some days (3.9.26): the week strip, the one-day chips, Home's line, the confirm sheet.
   Colours are the theme's own tokens (every palette and dark mode); spacing in steps of 4 (REPORT.md Design rules). */
.dt-body { padding: 4px var(--edge) calc(var(--sp-6) + var(--safe-bot)); }
.dt-lead { margin: 0 0 var(--sp-5); font-size: var(--fs-body); line-height: 1.5; color: var(--muted); }
.dt-lead b { color: var(--text); font-weight: 700; }
.dt-week { display: flex; gap: 6px; }
.dt-day { flex: 1 1 0; min-width: 0; min-height: 68px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; border-radius: var(--r-chip); background: var(--surface-2); color: var(--text); box-shadow: inset 0 0 0 1px var(--line); transition: background-color .2s, color .2s, transform .12s; }
.dt-day:active { transform: scale(.97); }
.dt-wd { font-size: var(--fs-label); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--muted); }
.dt-t { font-size: var(--fs-detail); font-weight: 700; font-variant-numeric: tabular-nums; color: var(--muted); }
.dt-day.own .dt-t { color: var(--accent); }
.dt-day.on { background: var(--main-bg); color: var(--main-fg); box-shadow: none; }
.dt-day.on .dt-wd, .dt-day.on .dt-t, .dt-day.on.own .dt-t { color: var(--main-fg); }
.dt-edit { margin-top: var(--sp-6); }
.dt-for { margin: 0 0 var(--sp-3); font-size: var(--fs-body); line-height: 1.5; }
.dt-chips { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-bottom: var(--sp-3); }
.dt-chip { min-height: 44px; padding: 0 var(--sp-5); border-radius: var(--r-pill); background: var(--surface-2); box-shadow: inset 0 0 0 1px var(--line); font-size: var(--fs-body); font-weight: 700; font-variant-numeric: tabular-nums; color: var(--text); transition: background-color .2s, color .2s, transform .12s; }
.dt-chip:active { transform: scale(.97); }
.dt-chip[aria-pressed="true"], .dt-chip[aria-expanded="true"] { background: var(--main-bg); color: var(--main-fg); box-shadow: none; }
.dt-big { flex-wrap: nowrap; }
.dt-big .dt-chip { flex: 1 1 0; min-width: 0; min-height: var(--btn-h); padding: 0 var(--sp-2); }
.dt-more { font-weight: 600; }
.dt-other { margin-bottom: var(--sp-3); box-shadow: inset 0 0 0 1px var(--line); background: var(--surface-2); }
.dt-hint { margin: var(--sp-5) 0 0; font-size: var(--fs-detail); line-height: 1.5; color: var(--muted); }
.dt-done { margin-top: var(--sp-6); }
.dt-back { display: block; margin: var(--sp-3) auto 0; padding: var(--sp-3) var(--sp-4); text-align: center; }
.dt-card { margin: 0; }
.dt-hero { margin: var(--sp-2) 0 var(--sp-1); font-size: var(--fs-card); font-weight: 700; line-height: 1.2; }
.dt-hero b { display: block; font-size: 40px; font-weight: 800; letter-spacing: -.02em; line-height: 1.1; font-variant-numeric: tabular-nums; }
.dt-when { margin: var(--sp-2) 0 0; font-size: var(--fs-row); font-weight: 600; color: var(--accent); }
.dt-rest { margin: var(--sp-1) 0 0; font-size: var(--fs-detail); color: var(--muted); }
/* Me → a place: the quiet row under a time box */
.dt-row { display: flex; align-items: center; gap: var(--sp-3); width: 100%; min-height: 56px; margin: -2px 0 var(--sp-3); padding: 0 var(--sp-1); text-align: left; color: var(--text); }
.dt-row .ico { display: grid; place-items: center; width: 36px; height: 36px; border-radius: var(--r-chip); background: var(--surface-2); color: var(--muted); flex: none; }
.dt-row b { display: block; font-size: var(--fs-body); font-weight: 600; }
.dt-row small { display: block; font-size: var(--fs-detail); color: var(--muted); line-height: 1.35; }
.dt-row > .i { color: var(--muted); }
/* Home's card: the day's own time, or the one quiet link */
.h-chg { display: flex; align-items: center; flex-wrap: wrap; gap: var(--sp-1) var(--sp-3); margin-top: var(--sp-3); font-size: var(--fs-detail); color: var(--muted); }
.h-chg > .i { color: var(--accent); }
.h-chg b { color: var(--text); font-variant-numeric: tabular-nums; }
.h-chg .link { font-size: var(--fs-detail); padding: var(--sp-1) 0; min-height: 36px; }
.h-chg.q { margin-top: var(--sp-1); }
.h-chg.q .link { min-height: 32px; }
@media (max-width: 380px) { .dt-body { padding-left: 16px; padding-right: 16px; } .dt-day { min-height: 64px; } .dt-week { gap: 4px; } .dt-hero b { font-size: 34px; } }
/* v59: Home's "Changed for tomorrow" line, and the "Tomorrow's trip" sheet (big rows; fits 360 px) */
.h-changed { align-items: stretch; flex-wrap: nowrap; padding: var(--sp-2) var(--sp-3); border-radius: var(--r-chip); background: var(--accent-soft, var(--surface-2)); color: var(--text); }
.h-chg-sum { flex: 1 1 auto; min-width: 0; display: flex; gap: var(--sp-2); align-items: flex-start; text-align: left; min-height: 44px; padding: var(--sp-1) 0; color: var(--text); font-size: var(--fs-detail); line-height: 1.35; }
.h-chg-sum > .i { color: var(--accent); flex: none; margin-top: 2px; }
.h-chg-sum b { display: block; color: var(--accent); font-size: var(--fs-label); letter-spacing: .04em; text-transform: uppercase; }
.h-changed .link { flex: none; min-height: 44px; font-weight: 700; }
.h-skip { color: var(--text); }
.tm-rows { display: flex; flex-direction: column; gap: var(--sp-2); }
.tm-row { border-radius: var(--r-card, 16px); background: var(--surface-2); box-shadow: inset 0 0 0 1px var(--line); overflow: hidden; }
.tm-row.changed { box-shadow: inset 0 0 0 2px var(--accent); }
.tm-head { display: flex; align-items: center; gap: var(--sp-3); width: 100%; min-height: 60px; padding: 0 var(--sp-4); text-align: left; color: var(--text); }
.tm-head:disabled { opacity: .45; }
.tm-label { flex: 1 1 auto; min-width: 0; font-size: var(--fs-body); font-weight: 600; }
.tm-val { flex: 0 1 auto; min-width: 0; max-width: 55%; text-align: right; font-size: var(--fs-body); font-weight: 700; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.tm-row.changed .tm-val { color: var(--accent); }
.tm-head > .i { flex: none; color: var(--muted); transition: transform .2s; }
.tm-row.open .tm-head > .i { transform: rotate(90deg); }
.tm-edit { padding: 0 var(--sp-4) var(--sp-4); }
.tm-edit .dt-chips { margin-bottom: var(--sp-2); }
.tm-seg { display: flex; margin-bottom: var(--sp-3); }
.tm-seg button { flex: 1 1 0; min-width: 0; min-height: 48px; padding: 0 var(--sp-1); font-size: var(--fs-detail); line-height: 1.2; }
.tm-pick, .tm-bus { width: 100%; min-height: 56px; border-radius: var(--r-chip); text-align: left; }
.tm-bus { display: flex; align-items: center; gap: var(--sp-3); padding: var(--sp-2) var(--sp-2); }
.tm-bus small { display: block; font-size: var(--fs-detail); color: var(--muted); }
.tm-bus.on { background: var(--surface); box-shadow: inset 0 0 0 2px var(--accent); }
.tm-places { display: flex; flex-wrap: wrap; gap: var(--sp-2); margin-bottom: var(--sp-3); }
.tm-places .chip { min-height: 44px; }
.tm-places .chip[aria-pressed="true"] { background: var(--main-bg); color: var(--main-fg); }
.tm-search { position: relative; background: var(--surface); }
.tm-skip .tm-val { color: var(--bad, var(--text)); }
.tm-skip.changed { box-shadow: inset 0 0 0 2px var(--bad, var(--accent)); }
.tm-normal { margin-top: var(--sp-5); }
@media (max-width: 380px) { .tm-head { padding: 0 var(--sp-3); gap: var(--sp-2); } .tm-edit { padding: 0 var(--sp-3) var(--sp-3); } .tm-val { max-width: 50%; } }
/* v72: "🚶 Walking · 🚗 Dropped off" on Home's routine card (that day only, "Always" for the usual) and at the top of the wizard's bus step */
.h-gt { display: flex; align-items: center; gap: 3px; margin-top: var(--sp-2); padding: 3px; border-radius: 12px; background: var(--surface-2); }
.h-gt button[data-m] { flex: 1 1 0; min-width: 0; min-height: 44px; border-radius: 10px; font-weight: 600; font-size: var(--fs-sub); color: var(--muted); white-space: nowrap; }
.h-gt button[aria-pressed="true"] { background: var(--surface); color: var(--accent); font-weight: 700; box-shadow: 0 1px 4px rgba(0, 0, 0, .1), inset 0 0 0 1.5px var(--accent); }
.h-gt .h-gt-always { flex: none; min-height: 44px; padding: 0 var(--sp-2); font-weight: 700; }
.gt-usual { margin: 0 0 var(--sp-4); }
.gt-usual .gt-label { margin: 0 4px 8px; }
.gt-usual .gt-stop { display: inline-flex; align-items: center; gap: 6px; min-height: 44px; margin: 4px 4px 0; }
.tm-cards { margin-bottom: var(--sp-2); }
.tm-or { margin: var(--sp-2) 4px; }
.bc-from { display: flex; gap: 6px; align-items: center; margin: 0 4px var(--sp-2); color: var(--muted); font-size: var(--fs-detail); }
.h-notdrop-acts { display: flex; flex-wrap: wrap; gap: var(--sp-3); margin-top: 4px; }
.h-notdrop-acts .link { min-height: 44px; font-weight: 700; }
