/* Shared course stylesheet for Claude training lessons. */
:root{
  --ink:#1f2933;--muted:#5d6673;--paper:#fffdf8;--panel:#ffffff;--line:#e7dfd1;
  --accent:#7c4dff;--accent-soft:#efe8ff;--good:#147d52;--bad:#b42318;--note:#f8f1df;
}
*{box-sizing:border-box} body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.55 Georgia, 'Times New Roman', serif}
main{max-width:880px;margin:0 auto;padding:48px 24px 72px} header{border-bottom:1px solid var(--line);margin-bottom:28px;padding-bottom:20px}
h1{font-size:2.35rem;line-height:1.05;margin:0 0 10px;letter-spacing:-.03em} h2{font-size:1.45rem;margin:34px 0 10px} h3{font-size:1.1rem;margin:22px 0 8px}
p{margin:10px 0} a{color:#4b32b3;text-decoration-thickness:1px;text-underline-offset:3px}.subtitle{font-size:1.1rem;color:var(--muted);max-width:720px}
.card,.practice,.sourcebox{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:20px;margin:18px 0;box-shadow:0 8px 24px rgba(31,41,51,.04)}
.note{background:var(--note);border-left:5px solid #d6a63a;padding:14px 16px;border-radius:10px;margin:18px 0}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px}
.kicker{text-transform:uppercase;letter-spacing:.12em;font:700 .75rem system-ui,sans-serif;color:var(--accent);margin-bottom:8px}.small{font-size:.93rem;color:var(--muted)}
button{font:700 1rem system-ui,sans-serif;border:1px solid #cfc6e9;background:var(--accent-soft);color:#2f216f;border-radius:999px;padding:10px 16px;cursor:pointer;margin:6px 6px 6px 0}button:hover{filter:brightness(.98)}
.feedback{font:1rem system-ui,sans-serif;margin-top:10px;padding:12px;border-radius:12px;display:none}.feedback.good{display:block;background:#eaf7f0;color:var(--good)}.feedback.bad{display:block;background:#fff0ee;color:var(--bad)}
blockquote{border-left:4px solid var(--line);margin:16px 0;padding:6px 0 6px 16px;color:#394452} code{background:#f4efe6;border:1px solid #eadfcd;border-radius:6px;padding:1px 5px;font-family:ui-monospace,Menlo,monospace;font-size:.92em}
footer{margin-top:40px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.95rem}
@media print{body{background:#fff}main{padding:24px}.card,.practice,.sourcebox{box-shadow:none}button,.feedback{display:none!important}a{color:#000}}
