/* 오늘의 연습(레슨실) · 성장 기록(내 발성) */
.today-coach[hidden],.growth-board[hidden]{display:none!important}
.today-coach{margin:8px 16px 0;border-color:var(--gold-line,#e6b15c4d);background:linear-gradient(135deg,rgba(230,177,92,.12),var(--surface,#10101a) 60%)}
.growth-board{border-color:var(--line-2,#ffffff21)}
.today-coach .tc-body,.growth-board .tc-body{display:grid;gap:10px}
.tc-heading{font-size:18px}
.tc-focus{margin:0;font-size:17px;font-weight:800;line-height:1.4;color:var(--text,#f3f1ec)}
.tc-reason{margin:0;line-height:1.6;color:var(--text-2,#b9b6ae)}
.tc-target{margin:0;padding:10px 12px;border-radius:12px;border:1px solid var(--gold-line,#e6b15c4d);background:var(--gold-dim,#e6b15c1a);font-size:13px;font-weight:700;line-height:1.5;color:var(--gold-2,#f5d79e)}
.tc-actions{display:flex;flex-wrap:wrap;gap:8px}
.tc-btn{min-height:46px;flex:1 1 150px;font-size:14px;white-space:normal}
.today-coach button:focus-visible,.growth-board button:focus-visible,.growth-board summary:focus-visible{outline:3px solid #e1c481;outline-offset:3px}
.tc-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
.tc-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.tc-stat{display:grid;gap:2px;align-content:start;padding:10px;border-radius:12px;border:1px solid var(--line-2,#ffffff21);background:var(--surface-2,#161623)}
.tc-stat strong{font-size:14px;line-height:1.35;color:var(--gold-2,#f5d79e)}
.tc-stage{border:1px solid var(--line-2,#ffffff21);border-radius:14px;background:var(--surface-2,#161623);padding:0 12px}
.tc-stage[open]{padding-bottom:12px}
.tc-stage__sum{display:grid;gap:2px;padding:12px 0;min-height:44px;cursor:pointer;list-style-position:inside}
.tc-stage__name{font-size:14px;font-weight:800;line-height:1.4;color:var(--text,#f3f1ec)}
.tc-row{display:grid;gap:6px;padding:10px 0;border-top:1px solid var(--line,#ffffff12)}
.tc-row__label{margin:0;font-size:12.5px;line-height:1.5;color:var(--text-2,#b9b6ae)}
.tc-cols{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tc-cols__note{align-self:center;margin:0}
.tc-cell{display:grid;gap:2px;align-content:start;padding:8px 10px;border-radius:10px;background:var(--surface-3,#1d1d2c)}
.tc-cell__value{font-size:15px;line-height:1.4;color:var(--text,#f3f1ec)}
.tc-state{font-size:11.5px;font-weight:700;color:var(--text-2,#b9b6ae)}
.tc-cell__value--none{font-size:13px;font-weight:600;color:var(--text-2,#b9b6ae)}
.tc-state--ok{color:var(--emerald,#34d399)}
.tc-state--warn{color:#fbbf24}
.tc-trend{display:grid;gap:4px;padding-top:10px;border-top:1px solid var(--line,#ffffff12)}
.tc-spark{display:block;width:100%;max-width:280px;height:48px}
.tc-spark__line{stroke:var(--gold,#e6b15c);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.tc-spark__dot{fill:var(--gold-2,#f5d79e)}
@media(max-width:360px){.tc-summary{grid-template-columns:1fr}.tc-cols{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.today-coach *,.growth-board *{animation:none!important;transition:none!important}}
