/* RadioPrep theme: loaded after site.css and app.css. Navy and signal cyan on cool grey-blue, raspberry accent.
   Deliberately unlike the green/orange HortPass family and Lemon Prep's yellow/green: a different segment. */
:root {
  --green: #1d3a6b; --green-deep: #12213d; --green-soft: #dbe7f5; --moss: #0e8fa6;
  --orange: #0b7d93; --orange-soft: #d7eef3;
  --paper: #eef2f7; --cream: #e4eaf2; --card: #ffffff;
  --ink: #14213a; --muted: #566482; --line: #d3dbe6;
  --accent: #c2185b;
}
.eyebrow { color: var(--accent); }
.btn-primary:hover { background: #09697c; }
header.site { background: rgba(238,242,247,.94); }
.hero::after { background: linear-gradient(90deg, rgba(12,22,42,.9) 0%, rgba(12,22,42,.68) 42%, rgba(12,22,42,.1) 78%); }
@media (max-width: 860px) { .hero::after { background: linear-gradient(180deg, rgba(12,22,42,.55) 0%, rgba(12,22,42,.82) 45%, rgba(12,22,42,.92) 100%); } }
.hero .chip b, .app-head .eyebrow { color: #7fe0f0; }
.hero p.sub { color: #e8eef7; }
.stats span, .bundle p, .cta-band p, .page-hero p { color: #d3ddee; }
.bundle .price s, .crumbs, .crumbs-dark, .exambar .saved { color: #a9b8d2; }
.crumbs a, .crumbs-dark a, footer a, .app-foot a { color: #e3eaf5; }
.final::after { background: rgba(12,22,42,.74); }
.final p { color: #e3eaf5; }
footer { color: #c3cee2; }
footer .disclaimer, .app-foot { color: #a3b2cc; }
footer .credits, .app-foot .seller { color: #8898b6; }
.page-hero.photo::after { background: linear-gradient(90deg, rgba(12,22,42,.92) 0%, rgba(12,22,42,.72) 55%, rgba(12,22,42,.28) 100%); }
.sample-card .dur { background: rgba(12,22,42,.85); }
.app-head .muted, .app-head p { color: #d3ddee; }
.exambar .timer.over { color: #7fe0f0; }
.xtabs button.on small { color: #d3ddee; }
.err, .tag-test { color: #7a1036; }
.check-row.consent { background: #eef7fa; }
.cchoice.on, .mchip.on { background: #eef4fb; }
.marking .model, .other .model { background: #eef4fb; border-color: #c9d6e8; }
mark.dev, .lg-dev, .mock .hl-d, .answer .d { background: #fde2ec; }

/* level cards on the home page */
.levels { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; margin-top: 28px; }
.level { background: var(--card); border: 1px solid var(--line); border-radius: var(--r); padding: 26px; display: flex; flex-direction: column; gap: 8px; }
.level.live { border: 2px solid var(--moss); box-shadow: 0 10px 30px rgba(12,22,42,.08); }
.level h3 { margin: 0; } .level .price { font: 700 2rem/1 var(--serif); color: var(--green); margin-top: auto; }
.level .price small { display: block; font: 400 .85rem var(--sans); color: var(--muted); margin-top: 4px; }
.level .btn { align-self: flex-start; margin-top: 8px; }
@media (max-width: 860px) { .levels { grid-template-columns: 1fr; } }
.sq { margin-bottom: 18px; } .sq .eyebrow { margin-bottom: 6px; }
