/* 训练完成情况：计划小项下方的打勾与备注（今日要做的事 + 每日计划表共用） */
.ck-slot:empty { display: none; }
.ck-slot { margin-top: .3rem; }
.ck {
    display: block; padding: .3rem .5rem .32rem; border-radius: 3px;
    background: #eef3f0; border-left: 2px solid var(--accent);
    font-size: 12px; line-height: 1.5; color: var(--ink);
}
.ck + .ck { margin-top: .25rem; }
.ck-line { display: block; }
.ck-ico { display: inline-block; width: 1.25em; text-align: center; margin-right: .15rem; }
.ck-st { font-weight: 600; color: var(--accent); margin-right: .35rem; white-space: nowrap; }
.ck-did { color: var(--ink); }
.ck-q { display: block; margin-top: .1rem; padding-left: 1.45em; color: var(--ink-muted); position: relative; }
.ck-q::before { content: ""; position: absolute; left: .45em; top: .62em; width: 6px; height: 6px; border-radius: 50%; background: #c9cdc8; }
.ck-q.g-good::before { background: var(--accent); }
.ck-q.g-ok::before { background: var(--warn); }
.ck-q.g-poor::before { background: var(--danger); }
.ck-q.g-poor { color: var(--danger); }

.ck-partial { background: #fbf8f1; border-left-color: var(--warn); }
.ck-partial .ck-st { color: var(--warn); }
.ck-changed { background: #f1f5f8; border-left-color: #315f79; }
.ck-changed .ck-st { color: #315f79; }
.ck-skipped { background: #f7f6f3; border-left-color: #c9cdc8; }
.ck-skipped .ck-st, .ck-skipped .ck-did { color: var(--ink-muted); }
.ck-extra { background: #fff; border: 1px dashed #cfdcd4; border-left: 2px solid var(--accent); }

/* 表格里更紧凑 */
.daily-table .ck { font-size: 11px; padding: .22rem .38rem; }
.daily-table .ck-q { padding-left: 1.35em; }
.daily-table td.ck-has { background-image: linear-gradient(var(--accent), var(--accent)); background-size: 2px 100%; background-repeat: no-repeat; }

/* 今日要做的事：已完成的小项整行变淡底 */
.tp-list li.ck-has .tp-name { color: var(--accent); }
.tp-ck-bar { display: flex; align-items: center; flex-wrap: wrap; gap: .35rem .75rem; margin: -.35rem 0 .75rem; font-size: 12.5px; color: var(--ink-muted); }
.tp-ck-count { font-weight: 600; color: var(--accent); background: #eef3f0; border-radius: 2px; padding: 1px 8px; font-variant-numeric: tabular-nums; }
.tp-ck-count:empty { display: none; }
.tp-ck-summary:empty { display: none; }
.tp-ck-state { display: none; align-items: center; gap: .35rem; color: var(--accent); }
.tp-ck-state.on { display: inline-flex; }
.tp-ck-state i { width: 5px; height: 5px; border-radius: 50%; background: currentColor; animation: ckDot 1s infinite ease-in-out; }
.tp-ck-state i:nth-child(2) { animation-delay: .15s; }
.tp-ck-state i:nth-child(3) { animation-delay: .3s; }
.tp-ck-state.err { color: var(--danger); }
.tp-ck-state.err i { display: none; }
@keyframes ckDot { 0%, 80%, 100% { opacity: .25; } 40% { opacity: 1; } }
.tp-ck-redo { font-size: 12px; color: var(--ink-muted); background: none; border: 0; padding: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.tp-ck-redo:hover { color: var(--accent); }
body:not(.coach-on) .tp-ck-redo { display: none; }
body:not(.coach-on) .ck-edit-btn { display: none; }
.ck-edit-btn {
    display: inline-block; margin-top: .35rem; font-size: 12px; color: var(--ink-muted);
    background: none; border: 0; padding: 0; text-decoration: underline; text-underline-offset: 3px; cursor: pointer;
}
.ck-edit-btn:hover { color: var(--accent); }
.ck-editor {
    position: fixed; z-index: 40; width: min(320px, calc(100vw - 24px));
    background: #fff; border: 1px solid var(--line); border-radius: 4px;
    box-shadow: 0 8px 28px rgba(40, 40, 30, .12); padding: .75rem;
}
.ck-editor p { margin: 0 0 .45rem; font-size: 13px; font-weight: 600; }
.ck-editor label { display: block; margin: .4rem 0 .15rem; font-size: 12px; color: var(--ink-muted); }
.ck-editor select, .ck-editor input, .ck-editor textarea {
    width: 100%; box-sizing: border-box; font: inherit; font-size: 13px;
    border: 1px solid var(--line); border-radius: 3px; padding: .35rem .45rem; background: #fff;
}
.ck-editor textarea { min-height: 3.2rem; resize: vertical; }
.ck-editor .ck-editor-row { display: grid; gap: .35rem; margin-bottom: .45rem; padding-bottom: .45rem; border-bottom: 1px solid var(--line); }
.ck-editor .ck-editor-actions { display: flex; gap: .5rem; margin-top: .55rem; }
.ck-editor button { font: inherit; font-size: 12px; border-radius: 3px; padding: .3rem .6rem; cursor: pointer; }
.ck-editor .ck-editor-save { background: var(--accent); color: #fff; border: 0; }
.ck-editor .ck-editor-ghost { background: none; border: 0; color: var(--ink-muted); text-decoration: underline; text-underline-offset: 3px; padding-left: 0; }
.tp-foot .ck-slot[data-ck-key="_extra"]::before { content: "计划外："; display: block; font-weight: 600; color: var(--ink); margin-bottom: .2rem; }
