/* CDLPassNow brand tokens v1.0 */
:root{
  --orange:#FF6B1A; --orange-600:#E8560A; --orange-700:#C2410C; /* use 700 for orange text on white */
  --teal:#10343B; --teal-600:#1C4E57; --mint:#3DDC97; --mint-700:#0B7A53; --sun:#FFC233; --red:#F2545B; --red-700:#C2363D;
  --ink:#1B2430; --muted:#5B6573; --line:#ECE3DA; --cream:#FFF3EA; --surface:#FFFFFF;
  --primary:var(--orange-600); /* white text on #FF6B1A is 2.85:1, so buttons use 600 (3.64:1, AA large text >=18px bold) */  --primary-hover:var(--orange-600); --on-primary:#FFFFFF;
  --success:var(--mint-700); --success-bg:#E6FAF1; --error:var(--red-700); --error-bg:#FDECEC;
  --font-display:'Nunito',ui-rounded,system-ui,sans-serif; --font-body:'Nunito Sans',system-ui,-apple-system,'Segoe UI',sans-serif;
  --fw-display:900; --tracking-display:-0.03em;
  --radius-sm:12px; --radius:20px; --radius-lg:28px; --radius-pill:999px;
  --shadow-1:0 2px 0 rgba(16,52,59,.08),0 8px 24px rgba(16,52,59,.08);
  --shadow-btn:0 4px 0 var(--orange-700); /* tactile Duolingo-style press */
  --ease-bounce:cubic-bezier(.34,1.56,.64,1); --dur-fast:150ms; --dur:300ms;
}
.btn-primary{background:var(--primary);color:var(--on-primary);font:800 18px var(--font-display);border:0;border-radius:var(--radius-pill);padding:16px 28px;box-shadow:var(--shadow-btn);transition:transform var(--dur-fast),box-shadow var(--dur-fast)}
.btn-primary:active{transform:translateY(4px);box-shadow:none}
/* Rigby animations (CSS only) */
@keyframes rigby-idle{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes rigby-pop{0%{transform:scale(.6) rotate(-8deg)}60%{transform:scale(1.12) rotate(4deg)}100%{transform:scale(1) rotate(0)}}
@keyframes rigby-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-6px)}75%{transform:translateX(6px)}}
@keyframes badge-unlock{0%{transform:scale(0) rotate(-30deg);opacity:0}70%{transform:scale(1.15) rotate(6deg);opacity:1}100%{transform:scale(1)}}
.rigby-idle{animation:rigby-idle 2.4s ease-in-out infinite}
.rigby-correct{animation:rigby-pop .5s var(--ease-bounce)}
.rigby-wrong{animation:rigby-shake .35s ease}
.badge-unlock{animation:badge-unlock .6s var(--ease-bounce)}
@media (prefers-reduced-motion:reduce){.rigby-idle,.rigby-correct,.rigby-wrong,.badge-unlock{animation:none}}
