/* css/coach.css：v1 留下、v2 仍在用的部件（tt-cc-*：纸面页签计数、时间轴、关键决定页、复盘卡；「演示到头的提示」10-29 挪进控制带）。
   v1 的回合状态行、约定、旧提议卡、旧流程节点等已在 v2 清掉（2026-10-28）。
   规矩照 10-24：内容是纸，玻璃只围团团栏外框；黄只给主按钮；状态不用黄。 */
:root { --tt-flash: rgb(45 140 90 / .16); }
:root[data-theme="dark"] { --tt-flash: rgb(110 200 150 / .18); }

/* ── 项目头：变了的一格闪一下（底色由 js 动画淡出） ── */
.tt-cv-metric { border-radius: 8px; }
.tt-cv-metric dd b { max-width: 220px; overflow: hidden; text-overflow: ellipsis; }

/* ── 纸面栏页签：「关键决定」后面的条数；新增时写「+1」并换深色 ── */
.tt-cc-tabs button { display: inline-flex; align-items: center; gap: 6px; }
.tt-cc-count { display: inline-grid; place-items: center; min-width: 20px; height: 18px; padding: 0 5px; border-radius: 9px; font-size: var(--b-fs-12); font-weight: 600; line-height: 1; color: var(--b-text-2); background: var(--b-neutral-tint); font-variant-numeric: tabular-nums; }
.tt-cc-count.is-new { color: var(--b-bg-card); background: var(--b-text-1); }

.tt-cc-scroll { min-height: 0; overflow: auto; overscroll-behavior: contain; scrollbar-width: thin; }
.tt-cc-empty { display: grid; gap: 6px; align-content: center; justify-items: center; min-height: 220px; padding: var(--b-sp-6); text-align: center; font-size: var(--b-fs-13); color: var(--b-text-3); }
.tt-cc-empty b { font-size: var(--b-fs-15); font-weight: 600; color: var(--b-text-2); }

/* ── 时间轴：名称列放宽到 300，事项名两行；每天 30px ── */
.tt-cc-tlscroll { --tl-name: 300px; padding-bottom: var(--b-sp-6); }
.tt-cc-tl .tt-cv-tl-axis { top: 0; }
.tt-cc-tl .tt-cv-tl-name b { white-space: normal; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; line-height: 1.4; }
.tt-cc-tl .tt-cv-tl-axis .tt-cv-tl-name small { font-size: var(--b-fs-12); color: var(--b-text-3); }
.tt-cc-row { height: 62px; }
.tt-cc-row .tt-cv-tl-bar { top: 27px; }
.tt-cc-row .tt-cv-tl-date { top: 22px; display: inline-flex; align-items: center; gap: 6px; }
.tt-cc-tick { padding-left: 4px; font-size: 11px; }
.tt-cc-tick.is-month { font-weight: 600; color: var(--b-text-2); }
.tt-cc-row.is-added .tt-cv-tl-name { box-shadow: inset 3px 0 0 var(--b-ok); }
.tt-cc-row.is-changed .tt-cv-tl-name { box-shadow: inset 3px 0 0 var(--b-text-3); }
.tt-cc-chip { display: inline-flex; align-items: center; height: 18px; padding: 0 6px; border-radius: 6px; font-size: var(--b-fs-12); font-weight: 600; line-height: 1; color: var(--b-text-1); box-shadow: inset 0 0 0 1px var(--b-line-strong); }
.tt-cc-chip.is-mark { color: var(--b-ok); box-shadow: inset 0 0 0 1px currentColor; }

/* ── 关键决定 ── */
.tt-cc-dec { padding: var(--b-sp-5) var(--b-sp-5) var(--b-sp-8); }
.tt-cc-dec-head h2 { font-size: var(--b-fs-20); font-weight: 700; letter-spacing: var(--b-ls-title); }
.tt-cc-dec-head p { margin-top: 4px; font-size: var(--b-fs-13); line-height: 1.6; color: var(--b-text-2); }
.tt-cc-dec-cols, .tt-cc-dec-row { display: grid; grid-template-columns: 64px minmax(0, 1.25fr) minmax(0, 1fr) minmax(0, 1fr); gap: var(--b-sp-4); }
.tt-cc-dec-cols { margin-top: var(--b-sp-5); padding-bottom: var(--b-sp-2); border-bottom: 1px solid var(--b-line); font-size: var(--b-fs-12); font-weight: 600; letter-spacing: var(--b-ls-cap); color: var(--b-text-3); }
.tt-cc-dec-list { display: grid; }
.tt-cc-dec-row { padding: var(--b-sp-4) 0; border-bottom: 1px solid var(--b-line); font-size: var(--b-fs-13); line-height: 1.6; color: var(--b-text-1); }
.tt-cc-dec-row.is-fresh { animation: tt-cc-fresh 2.4s ease-out; }
@keyframes tt-cc-fresh { from { background: var(--tt-flash); } to { background: transparent; } }
.tt-cc-dec-date { display: grid; align-content: start; gap: 2px; }
.tt-cc-dec-date b { font-size: var(--b-fs-15); font-weight: 600; font-variant-numeric: tabular-nums; }
.tt-cc-landed { white-space: nowrap; }
.tt-cc-dec-date small, .tt-cc-dec-what small { font-size: var(--b-fs-12); color: var(--b-text-3); }
.tt-cc-dec-what p { text-wrap: pretty; }
.tt-cc-method + .tt-cc-method { margin-top: var(--b-sp-3); }
.tt-cc-mname { display: inline; padding: 0; font-size: var(--b-fs-13); font-weight: 600; line-height: 1.6; color: var(--b-text-1); text-align: left; text-decoration: underline; text-decoration-color: var(--b-line-strong); text-underline-offset: 3px; }
.tt-cc-mname:hover { text-decoration-color: var(--b-text-1); }
.tt-cc-mname span { color: var(--b-text-3); font-weight: 400; }
.tt-cc-src { display: block; font-size: var(--b-fs-12); line-height: 1.5; color: var(--b-text-3); }
.tt-cc-mdetail { display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 4px var(--b-sp-2); margin: var(--b-sp-2) 0 0; padding: var(--b-sp-2) var(--b-sp-3); border-radius: 10px; background: var(--b-bg-inset); font-size: var(--b-fs-12); line-height: 1.6; }
.tt-cc-mdetail dt { color: var(--b-text-3); }
.tt-cc-mdetail dd { margin: 0; color: var(--b-text-1); }
.tt-cc-dec-after { text-wrap: pretty; }
.tt-cc-dec-after.is-pending { color: var(--b-text-3); }
.tt-cc-dec-wrong { margin-top: var(--b-sp-5); padding: var(--b-sp-3) var(--b-sp-4); border-radius: var(--b-radius-inner); background: var(--b-bg-inset); font-size: var(--b-fs-13); line-height: 1.6; }
.tt-cc-dec-wrong b { font-size: var(--b-fs-12); font-weight: 600; letter-spacing: var(--b-ls-cap); color: var(--b-text-3); }
