/* T-Bill And Fixed Deposit Ladder: calendar table, timeline and apply notes. */
.ladder-table caption{text-align:left;font-size:.875rem;color:var(--muted);padding:0 0 8px}
.ladder-table th[scope=row]{color:var(--ink);font-weight:600}
#ladder-calendar .ladder-table td:last-child{white-space:nowrap;font-variant-numeric:tabular-nums}
.ladder-table tr.is-payout{background:var(--soft)}
.ladder-timeline{margin:8px 0 6px}
.ladder-row{display:grid;grid-template-columns:4.5em minmax(0,1fr);align-items:center;gap:8px;margin:4px 0}
.ladder-row-label{font-size:.875rem;color:var(--muted)}
.ladder-track{position:relative;height:14px;border-radius:7px;background:var(--soft)}
.ladder-bar{position:absolute;top:3px;height:8px;border-radius:4px;background:var(--line);opacity:.85}
.ladder-bar--fd{background:var(--muted);opacity:.6}
.ladder-dot{position:absolute;top:1px;width:12px;height:12px;margin-left:-6px;border-radius:50%;background:var(--card);border:2px solid var(--ink)}
.ladder-axis{position:relative;height:18px;margin-left:calc(4.5em + 8px);font-size:11px;color:var(--muted)}
.ladder-axis span{position:absolute;transform:translateX(-50%);white-space:nowrap}
.ladder-axis span:first-child{transform:none}.ladder-axis span:last-child{transform:translateX(-100%)}
.ladder-legend{font-size:.875rem;color:var(--muted);display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center;margin:10px 0 0}
.ladder-key{display:inline-block;width:14px;height:8px;border-radius:4px;margin-right:4px;vertical-align:middle;background:var(--line)}
.ladder-key--fd{background:var(--muted);opacity:.6}
.ladder-key--dot{width:10px;height:10px;border-radius:50%;background:var(--card);border:2px solid var(--ink)}
.ladder-apply{max-width:750px;margin-top:42px}
.ladder-apply li{margin:0 0 10px}
#ladder-calendar .ladder-table th[scope=row]{white-space:nowrap}
/* Long page at large text sizes: a short section list near the top (review 6 Oct 2026, Mr Lim). */
.tool-jump{margin:-12px 0 20px;color:var(--muted)}.tool-jump a{color:var(--ink);display:inline-block;min-height:24px}
/* Review 11 (Mr Lim, 200% text at 375px): on phones each table row is a stacked card, so no column is cut off
   and nothing needs a sideways swipe. The column name comes from each cell's data-label. */
@media (max-width:640px){
 .ladder-table,.ladder-table tbody,.ladder-table tr,.ladder-table th,.ladder-table td,.ladder-table caption{display:block;width:auto;text-align:left}
 .ladder-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .ladder-table tr{margin:0 0 8px;padding:8px 12px;border:1px solid var(--hair);border-radius:12px}
 .ladder-table th,.ladder-table td{padding:2px 0;border:0}
 #ladder-calendar .ladder-table th[scope=row],#ladder-calendar .ladder-table td:last-child{white-space:normal}
 .ladder-table td[data-label]::before{content:attr(data-label) ": ";font-weight:600;color:var(--muted)}
}
/* Review 13 Oct 2026 (invest-07): later months and the auction table fold away. */
.ladder-table tr[hidden]{display:none}
.ladder-show-all{margin:4px 0 16px}
.ladder-next-auction{margin:0 0 8px}
.ladder-more{margin:0 0 12px}
.ladder-more>summary{cursor:pointer;font-weight:700;min-height:44px;display:flex;align-items:center}
