/* The course shell. Site tokens from the layout; cards share the trainer's look. */
#course-app{margin:26px 0;border:1px solid var(--rule);border-radius:14px;padding:16px 18px;background:#fff}
.cs-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--rule);margin-bottom:12px}
.cs-score{font-family:var(--display);font-size:.95rem;color:var(--green)}
.cs-wait,.cs-start p{color:var(--muted)}
.cs-spot{display:grid;gap:10px}
.cs-board,.cs-hand{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.cs-board b,.cs-hand b{min-width:64px;font-weight:800}
.cards-row{display:inline-flex;gap:4px}
.pc{display:inline-grid;place-items:center;width:40px;height:56px;border-radius:5px;background:#fff;border:1px solid #d9d4c8;color:#171a17;font-weight:800;font-size:1rem;line-height:1;box-shadow:0 1px 3px rgba(0,0,0,.25)}
.pc i{font-style:normal;font-size:1.05rem;display:block}
.pc.r{color:#d0261a}
.cs-colours{display:flex;gap:6px;flex-wrap:wrap}
.cs-c{border:2px solid transparent;border-radius:999px;padding:6px 14px;font-weight:800;color:#fff;cursor:pointer;font-family:var(--body);font-size:.95rem;text-transform:capitalize}
.cs-c.red{background:#e0321f}.cs-c.orange{background:#e8891d}.cs-c.yellow{background:#d8b020;color:#171a17}.cs-c.grey{background:#8a8578}
.cs-c.picked{border-color:#171a17;box-shadow:0 0 0 3px rgba(23,26,23,.15)}
.cs-c:disabled{opacity:.6;cursor:default}
.cs-options{display:flex;gap:8px;flex-wrap:wrap}
.cs-options .btn{font-size:.98rem;padding:10px 16px}
.cs-options .btn:disabled{opacity:.55;cursor:default}
.cs-q{font-weight:600;margin:4px 0}
.cs-strip{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px}
.cs-p{flex:0 0 auto;border:1px solid var(--rule);border-radius:8px;padding:4px 8px;font-size:.82rem;display:grid;line-height:1.25}
.cs-p small{color:var(--muted)}.cs-p.me{border-color:var(--green);background:var(--tint)}.cs-p.out{opacity:.5}.cs-p i{font-style:normal;color:var(--gold);font-weight:800}
.cs-verdict{font-weight:800;padding:8px 12px;border-radius:8px;margin-top:6px}
.cs-verdict.ok{background:var(--tint);color:var(--green-deep)}.cs-verdict.no{background:#fdecea;color:#7a1a15}
#cs-feedback ul{margin:6px 0;padding-left:20px}
.col{display:inline-block;border-radius:999px;padding:0 9px;font-size:.8rem;font-weight:800;color:#fff;vertical-align:1px}
.col.red{background:#e0321f}.col.orange{background:#e8891d}.col.yellow{background:#d8b020;color:#171a17}.col.grey{background:#8a8578}
.cs-done{padding:12px 14px;border-radius:10px;font-size:1.05rem}
.cs-done.ok{background:var(--tint);color:var(--green-deep)}.cs-done.no{background:#fdecea;color:#7a1a15}
.cs-gate{display:grid;gap:8px}
.cs-gate details{margin-top:6px}.cs-gate summary{cursor:pointer;font-weight:600;color:var(--green)}
.cs-recover{display:grid;gap:8px;margin-top:8px}
.cs-recover label{display:grid;gap:4px;font-weight:600}
.cs-recover input{font:inherit;padding:9px 12px;border:1.5px solid var(--rule);border-radius:8px}
.cs-strip.cs-days{display:flex}
#course-app .cs-strip:has(.cs-day){flex-wrap:wrap}
.cs-day{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;border:2px solid var(--rule);text-decoration:none;color:var(--ink);font-weight:800;font-size:.9rem}
.cs-day.done{background:var(--green);border-color:var(--green);color:#fff}
.cs-day.locked{color:var(--muted);border-style:dashed}
.cs-sum{color:var(--muted);margin:10px 0 0}
