/* «متى أفعل؟» — /timing/ only. */
.tm { color: var(--ink); padding-bottom: 48px; }
.tm-head { padding: 16px 0 20px; }
.tm-kicker { margin: 0 0 8px; color: var(--rubric); font: 500 14px/22px var(--f-body); }
.tm-head h1 { margin: 0 0 12px; font: 700 30px/42px var(--f-display); }
.tm-lede { margin: 0; max-width: 40em; color: var(--ink-2); font-size: 17px; line-height: 32px; }
.tm-goals { display: flex; gap: 6px; overflow-x: auto; padding: 4px 0 10px; margin: 0 0 16px; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.tm-goals::-webkit-scrollbar { display: none; }
.tm-goal { flex: none; padding: 9px 14px; border-radius: 99px; border: 1px solid var(--rule-strong); background: var(--night-2); color: var(--ink-2); text-decoration: none; font-size: 14px; white-space: nowrap; }
.tm-goal.is-on { background: var(--gold); border-color: var(--gold); color: var(--night); font-weight: 600; }
.tm-best, .tm-cal, .tm-prose { margin: 0 0 32px; }
.tm-best h2, .tm-cal h2, .tm-prose h2 { font: 700 24px/34px var(--f-display); margin: 0 0 10px; }
.tm-best__list { list-style: none; margin: 0 0 12px; padding: 0; display: grid; gap: 6px; }
.tm-best__list a { display: grid; grid-template-columns: minmax(0, 1fr) auto; grid-template-areas: "b i" "s i"; gap: 2px 12px; align-items: center; padding: 10px 14px; background: var(--night-2); border: 1px solid var(--rule); border-inline-start: 3px solid var(--gold); border-radius: 12px; color: var(--ink); text-decoration: none; }
.tm-best__list li.is-mid a { border-inline-start-color: var(--ink-3); }
.tm-best__list b { grid-area: b; font-weight: 600; }
.tm-best__list span { grid-area: s; color: var(--ink-3); font-size: 13px; }
.tm-best__list i { grid-area: i; font: 700 22px/1 var(--f-display); color: var(--gold-hi); font-style: normal; }
.tm-none { color: var(--ink-2); line-height: 1.9; }
.tm-tip { margin: 0; padding: 12px 14px; border-inline-start: 3px solid var(--gold); background: var(--night-2); color: var(--ink-2); line-height: 1.9; border-radius: 0 10px 10px 0; }
.tm-tip b { color: var(--gold-hi); }
.tm-legend { margin: 0 0 10px; color: var(--ink-3); font-size: 13px; display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }
.tm-legend span { display: inline-flex; align-items: center; gap: 6px; }
.tm-legend span::before { content: ""; width: 10px; height: 10px; border-radius: 50%; }
.tm-legend .is-good::before { background: var(--gold); } .tm-legend .is-mid::before { background: #6F6B8C; } .tm-legend .is-wait::before { background: #7F5A9E; }
.tm-grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
.tm-day { min-width: 0; }
.tm-day__b { width: 100%; display: grid; justify-items: center; gap: 3px; padding: 8px 2px; background: var(--night-2); border: 1px solid var(--rule); border-radius: 12px; color: var(--ink-2); font: inherit; cursor: pointer; min-height: 88px; }
.tm-day.is-good .tm-day__b { border-color: var(--gold); background: linear-gradient(180deg, rgba(217, 180, 90, .18), var(--night-2)); }
.tm-day.is-wait .tm-day__b { opacity: .72; }
.tm-day.is-today .tm-day__b { outline: 2px solid var(--gold-hi); outline-offset: 2px; }
.tm-day__b[aria-expanded="true"] { border-color: var(--gold-hi); }
.tm-day__w { font-size: 10px; color: var(--ink-3); }
.tm-day__n { font: 700 20px/1 var(--f-display); color: var(--ink); }
.tm-day__moon { width: 22px; height: 22px; }
.tm-day__s { font-size: 10px; line-height: 1.2; }
.tm-day.is-good .tm-day__s { color: var(--gold-hi); font-weight: 600; } .tm-day.is-wait .tm-day__s { color: #B7A3D1; }
.tm-day__d { grid-column: 1 / -1; margin: 6px 0 2px; padding: 12px 14px; background: var(--night-3); border: 1px solid var(--rule-strong); border-radius: 12px; font-size: 14px; line-height: 1.8; color: var(--ink-2); }
.tm-day__d p { margin: 0 0 6px; color: var(--ink); } .tm-day__d ul { margin: 0; padding-inline-start: 18px; }
.tm-day__d a { color: var(--gold-hi); }
.tm-day.is-open { grid-column: 1 / -1; display: grid; grid-template-columns: 84px minmax(0, 1fr); gap: 8px; align-items: start; }
.tm-day.is-open .tm-day__d { margin: 0; }
.tm-prose p { color: var(--ink-2); line-height: 1.95; margin: 0 0 12px; max-width: 42em; }
.tm-prose p b { color: var(--ink); }
.tm-now { padding: 10px 12px; background: var(--night-2); border-radius: 10px; }
.tm-prose details { border-bottom: 1px solid var(--rule); padding: 10px 0; max-width: 42em; }
.tm-prose summary { cursor: pointer; font-weight: 600; color: var(--ink); }
.tm-prose details p { margin: 8px 0 0; }
@media (min-width: 720px) {
	.tm-head h1 { font-size: 36px; line-height: 50px; }
	.tm-grid { grid-template-columns: repeat(10, minmax(0, 1fr)); gap: 8px; }
	.tm-day__b { min-height: 96px; }
	.tm-day__w { font-size: 11px; } .tm-day__s { font-size: 11px; }
}
