/* RS Thomas quiz – checkout add-on. Works on top of the existing #rstQ quiz styles. */
#rstQ{--rq-navy:#0a1628;--rq-red:#c8102e;--rq-ink:rgba(26,26,46,.62);--rq-line:rgba(200,16,46,.16)}
#rstQ .rst-fg{display:grid;gap:14px}
#rstQ .rst-cc{background:#fff;border:1.5px solid var(--rq-line);border-radius:16px;padding:22px;box-shadow:0 3px 14px rgba(10,22,40,.05)}
#rstQ .rst-cc.top{border:2px solid var(--rq-red);box-shadow:0 10px 30px rgba(200,16,46,.12)}
#rstQ .rst-ce{display:inline-block;background:var(--rq-navy);color:#fff!important;text-decoration:none;border-radius:9px;padding:12px 20px;font-weight:700;font-size:.9rem}
#rstQ .rst-ce:hover{background:var(--rq-red)}
#rstQ .rstqc-unlock{margin-top:16px;background:#fff7e6;border:1px dashed #e0a100;border-radius:10px;padding:11px 14px;font-size:.86rem;color:#6b4b00}
#rstQ .rstqc-sub{color:var(--rq-ink);font-size:.92rem;margin:0}
#rstQ .rstqc-loading{text-align:center;padding:44px 16px;color:var(--rq-ink);font-size:.92rem}
#rstQ .rstqc-spin{width:34px;height:34px;margin:0 auto 14px;border:3px solid rgba(200,16,46,.15);border-top-color:var(--rq-red);border-radius:50%;animation:rstqcSpin .8s linear infinite}
@keyframes rstqcSpin{to{transform:rotate(360deg)}}

/* offer banner */
#rstQ .rstqc-offer{display:flex;gap:16px;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#0a1628,#1b2d4f);color:#fff;border-radius:16px;padding:18px 20px;margin:0 0 18px}
#rstQ .rstqc-offer-k{font-size:.7rem;text-transform:uppercase;letter-spacing:.14em;color:#ffb3c0;font-weight:700;margin-bottom:4px}
#rstQ .rstqc-offer-t{font-size:1.02rem;line-height:1.35}
#rstQ .rstqc-offer-t b{color:#fff;font-size:1.25rem}
#rstQ .rstqc-offer-c{font-size:.78rem;opacity:.75;margin-top:4px}
#rstQ .rstqc-offer-c code{background:rgba(255,255,255,.12);color:#fff;padding:1px 6px;border-radius:4px}
#rstQ .rstqc-cd{text-align:center;background:var(--rq-red);border-radius:12px;padding:10px 14px;min-width:120px}
#rstQ .rstqc-cd-l{font-size:.66rem;text-transform:uppercase;letter-spacing:.12em;opacity:.9}
#rstQ .rstqc-cd-v{font-size:1.25rem;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em}

/* date picker */
#rstQ .rstqc-pick.collapsed{display:none}
#rstQ .rstqc-ph{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--rq-red);margin:6px 0 8px}
#rstQ .rstqc-dates{display:grid;gap:8px;margin-bottom:14px}
#rstQ .rstqc-date{display:flex;align-items:center;gap:12px;width:100%;text-align:left;background:#fff;border:1.5px solid var(--rq-line);border-radius:11px;padding:12px 14px;cursor:pointer;font-family:inherit;transition:all .15s;color:var(--rq-navy)}
#rstQ .rstqc-date:hover{border-color:var(--rq-red);background:rgba(200,16,46,.03)}
#rstQ .rstqc-date.on{border:2px solid var(--rq-red);background:rgba(200,16,46,.06)}
#rstQ .rstqc-radio{width:18px;height:18px;min-width:18px;border:2px solid rgba(10,22,40,.25);border-radius:50%;position:relative}
#rstQ .rstqc-date.multi .rstqc-radio{border-radius:5px}
#rstQ .rstqc-date.on .rstqc-radio{border-color:var(--rq-red);background:var(--rq-red);box-shadow:inset 0 0 0 3px #fff}
#rstQ .rstqc-dl{flex:1;display:flex;flex-wrap:wrap;gap:6px;align-items:center}
#rstQ .rstqc-dt{font-weight:600;font-size:.92rem}
#rstQ .rstqc-badge{font-size:.68rem;font-weight:700;border-radius:99px;padding:2px 8px;background:#eef2ff;color:#2a3d8f}
#rstQ .rstqc-pr{white-space:nowrap;font-size:.92rem}
#rstQ .rstqc-pr s{color:rgba(26,26,46,.4);font-size:.8rem;margin-right:2px}
#rstQ .rstqc-pr b{color:var(--rq-navy)}
#rstQ .rstqc-buy{display:block;width:100%;background:var(--rq-red);color:#fff;border:0;border-radius:11px;padding:16px 18px;font-family:inherit;font-size:1.02rem;font-weight:800;cursor:pointer;box-shadow:0 8px 20px rgba(200,16,46,.25);transition:transform .15s,background .15s}
#rstQ .rstqc-buy:hover{background:#a50d26;transform:translateY(-1px)}
#rstQ .rstqc-buy[disabled]{opacity:.6;cursor:wait;transform:none}
#rstQ .rstqc-buy small{font-weight:600;opacity:.9}
#rstQ .rstqc-expand{background:none;border:1.5px solid rgba(10,22,40,.15);border-radius:9px;padding:10px 16px;font-family:inherit;font-weight:700;font-size:.86rem;color:var(--rq-navy);cursor:pointer}
#rstQ .rstqc-expand:hover{border-color:var(--rq-red);color:var(--rq-red)}
#rstQ .rstqc-trust{display:flex;flex-wrap:wrap;gap:6px 16px;justify-content:center;margin-top:10px;font-size:.74rem;color:rgba(26,26,46,.55)}
#rstQ .rstqc-note{font-size:.78rem;color:var(--rq-ink);margin-top:8px}
#rstQ .rstqc-help{text-align:center;margin-bottom:16px}
#rstQ .rstqc-help p{margin:0 0 4px;font-size:.84rem;color:rgba(26,26,46,.5)}
#rstQ .rstqc-help-p a{color:var(--rq-red);font-weight:700;text-decoration:none;font-size:.95rem}

/* checkout */
#rstQ .rstqc-co-h{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:16px 0 10px}
#rstQ .rstqc-co-h h3{margin:0;font-size:1.4rem;font-weight:900;color:var(--rq-navy)}
#rstQ .rstqc-mini{font-size:.8rem;background:rgba(200,16,46,.08);color:var(--rq-red);border-radius:99px;padding:5px 12px}
#rstQ .rstqc-sum{background:#f7f8fb;border-radius:12px;padding:12px 16px;margin-bottom:14px}
#rstQ .rstqc-li{display:flex;justify-content:space-between;gap:12px;padding:7px 0;font-size:.9rem;color:var(--rq-navy);border-bottom:1px dashed rgba(10,22,40,.08)}
#rstQ .rstqc-li:last-child{border:0}
#rstQ .rstqc-li small{color:var(--rq-ink)}
#rstQ .rstqc-li.disc{color:#0a7a3e;font-weight:600}
#rstQ .rstqc-li.tot{font-weight:800;font-size:1.02rem}
#rstQ .rstqc-frame-wrap{position:relative;border:1.5px solid var(--rq-line);border-radius:14px;overflow:hidden;background:#fff;min-height:500px}
#rstQ #rstqcFrame{display:block;width:100%;height:900px;border:0;opacity:0;transition:opacity .3s}
#rstQ #rstqcFL{position:absolute;inset:0}
#rstQ .rstqc-trust.c{margin-top:12px}

/* success */
#rstQ .rstqc-done{text-align:center;background:#fff;border:2px solid #a8e6c2;border-radius:18px;padding:34px 22px}
#rstQ .rstqc-check{width:62px;height:62px;margin:0 auto 14px;border-radius:50%;background:#0a7a3e;color:#fff;font-size:2rem;line-height:62px;font-weight:800}
#rstQ .rstqc-done h3{font-size:1.6rem;font-weight:900;color:var(--rq-navy);margin:0 0 8px}
#rstQ .rstqc-done p{color:var(--rq-ink)}
#rstQ .rstqc-next{display:grid;gap:8px;text-align:left;max-width:420px;margin:18px auto 0;font-size:.9rem;color:var(--rq-navy)}

@media(max-width:560px){
  #rstQ .rstqc-offer{flex-direction:column;align-items:stretch;text-align:center}
  #rstQ .rstqc-date{padding:11px 12px;gap:10px}
  #rstQ .rstqc-pr{font-size:.85rem}
  #rstQ .rst-cc{padding:18px 14px}
}
