.coach{gap:1.25rem;padding-bottom:5rem;display:grid}.coach>*{max-width:48rem}.coach .intro{color:var(--cc-muted);justify-items:start;gap:1rem;display:grid}.coach .intro p{margin:0}.coach .chat{gap:.9rem;margin:0;padding:0;list-style:none;display:grid}.coach .chat:empty{display:none}.coach .msg{border:1px solid var(--cc-line-soft);border-radius:var(--cc-radius);background:var(--cc-surface-soft);gap:.2rem;max-width:38rem;padding:.9rem 1.1rem;display:grid}.coach .msg.player{background:color-mix(in srgb, var(--cc-chalk) 7%, transparent);border-color:color-mix(in srgb, var(--cc-chalk) 25%, transparent);justify-self:end}.coach .msg.pending{opacity:.7}.coach .msg .who{color:var(--cc-chalk);font-size:1.15rem;line-height:1}.coach .msg .text{color:var(--cc-ink);white-space:pre-wrap;margin:0}.coach .thinking{justify-self:start;gap:.45rem}.coach .thinking[hidden]{display:none}.coach .thinking .note{color:var(--cc-subtle);font-size:.9rem}.coach .rally{width:11rem;height:auto}.coach .rally .court{fill:#24479a;stroke:#ffffffb3;stroke-width:1px}.coach .rally .net{stroke:#e8e4d8;stroke-width:1.6px;stroke-dasharray:2 1.5}.coach .rally .kitchen{stroke:#ffffff8c;stroke-width:.8px}.coach .rally .ball{fill:var(--cc-chalk);offset-path:path("M 22 30 Q 60 -4 98 14 Q 60 -4 22 30");animation:1.8s ease-in-out infinite coach-rally}@keyframes coach-rally{0%{offset-distance:0%}to{offset-distance:100%}}@media (prefers-reduced-motion:reduce){.coach .rally .ball{offset-distance:25%;animation:none}}.coach .error{border-radius:var(--cc-radius);color:var(--cc-ink);border:1px solid #f2797973;margin:0;padding:.9rem 1.1rem}.coach .answer{gap:.6rem;display:grid}.coach .answer textarea{border:1px solid var(--cc-line);border-radius:var(--cc-radius);background:var(--cc-surface);width:100%;color:var(--cc-ink);font:inherit;resize:vertical;padding:.9rem 1rem}.coach .answer textarea:focus{outline:2px solid var(--cc-chalk);outline-offset:2px}.coach .answer-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.coach .count{color:var(--cc-subtle);font-size:.85rem}.coach .plan{border-top:1px solid var(--cc-line-soft);gap:1.25rem;padding-top:1rem;display:grid}.coach .plan-kicker{color:var(--cc-chalk);margin:0;font-size:1.6rem}.coach .summary{color:var(--cc-ink);margin:0;font-size:1.1rem}.coach .milestones{gap:1rem;margin:0;padding:0;list-style:none;display:grid}.coach .milestone{border:1px solid var(--cc-line-soft);border-radius:var(--cc-radius);background:var(--cc-surface-soft);grid-template-columns:3.5rem 1fr;gap:1rem;padding:1.25rem;display:grid}.coach .num{font-family:var(--cc-serif);color:color-mix(in srgb, var(--cc-chalk) 85%, transparent);font-size:2rem;line-height:1}.coach .milestone h2{margin:0;font-size:1.35rem}.coach .done{color:var(--cc-muted);margin:.4rem 0 .9rem}.coach .done strong{color:var(--cc-ink);font-weight:600}.coach .items{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.coach .item{border:1px solid var(--cc-line-soft);border-radius:12px;grid-template-columns:auto 1fr;gap:.15rem .7rem;padding:.75rem .9rem;text-decoration:none;display:grid}.coach .item:hover{border-color:var(--cc-line-strong)}.coach .kind{border:1px solid var(--cc-line);color:var(--cc-subtle);border-radius:999px;grid-row:span 2;align-self:start;padding:.1rem .55rem;font-size:.78rem;font-weight:600}.coach .kind.drill{color:var(--cc-chalk);border-color:color-mix(in srgb, var(--cc-chalk) 40%, transparent)}.coach .item .title{color:var(--cc-ink-strong);font-weight:600}.coach .item .why{color:var(--cc-muted);font-size:.93rem}.coach .item .why.pending{color:var(--cc-subtle);font-style:italic;animation:1.6s ease-in-out infinite coach-pulse}@keyframes coach-pulse{50%{opacity:.45}}@media (prefers-reduced-motion:reduce){.coach .item .why.pending{animation:none}}.coach .plan-actions{flex-wrap:wrap;gap:.75rem;display:flex}.coach .keep{border:1px dashed color-mix(in srgb, var(--cc-chalk) 50%, transparent);border-radius:var(--cc-radius);gap:.6rem;padding:1.25rem;display:grid}.coach .keep p{color:var(--cc-muted);margin:0}.coach .keep-kicker{font-size:1.5rem;line-height:1;color:var(--cc-chalk)!important}.coach .keep-form{flex-wrap:wrap;gap:.6rem;display:flex}.coach .keep-form input{border:1px solid var(--cc-line);background:var(--cc-surface);color:var(--cc-ink);font:inherit;border-radius:12px;flex:14rem;padding:.7rem .9rem}.coach .keep .fine{color:var(--cc-subtle);font-size:.85rem}.coach .kept{border:1px solid color-mix(in srgb, var(--cc-chalk) 35%, transparent);border-radius:var(--cc-radius);color:var(--cc-ink);margin:0;padding:.9rem 1.1rem}.coach .intro a{color:var(--cc-ink);text-decoration-color:var(--cc-chalk);text-underline-offset:3px}.coach .plan-actions button[disabled]{opacity:.6;cursor:not-allowed}@media (width<=560px){.coach .milestone{grid-template-columns:1fr;gap:.4rem;padding:1rem}.coach .item{grid-template-columns:1fr}.coach .kind{grid-row:auto;justify-self:start}}
