/* CSTC MasterStudy Offline Pricing v1.2.2 – all styles scoped */
.cstc-offline-option,.cstc-choice-panel { box-sizing:border-box; width:100%; }
.cstc-offline-option *, .cstc-choice-panel * { box-sizing:border-box; }
.cstc-offline-option { border:1px solid #d9e1e8; border-radius:6px; background:#fff; color:#162435; font-size:14px; direction:rtl; overflow:hidden; }
.cstc-offline-option.cstc-mounted-native { margin:3px 0; }
.cstc-offline-option.cstc-mounted-fallback { margin:0; }
.cstc-offline-toggle { width:100%; display:flex; align-items:center; padding:14px 12px; gap:10px; background:transparent; border:0; color:inherit; font:inherit; text-align:right; cursor:pointer; }
.cstc-offline-toggle:hover,.cstc-offline-toggle:focus-visible { background:#f4f7fb; outline-offset:-2px; }
.cstc-offline-radio { width:19px; height:19px; border:2px solid #cfd8e2; border-radius:50%; flex:0 0 19px; }
.cstc-active .cstc-offline-radio { border-color:#ff9700; }
.cstc-active .cstc-offline-radio::after { content:''; width:9px; height:9px; background:#ff9700; border-radius:50%; display:block; margin:3px; }
.cstc-offline-option.cstc-active { border-color:#ffad3b; background:#f7f9fc; }
.cstc-offline-copy { min-width:0; flex:1; display:flex; flex-direction:row; align-items:baseline; gap:12px; line-height:1.35; text-align:right; }
.cstc-offline-copy strong { font-weight:500; direction:ltr; unicode-bidi:isolate; }
.cstc-offline-copy small { font-size:12px; font-weight:400; color:#68798b; direction:rtl; }
/* Match the native One Time Purchase card: price and CTA appear only when selected. */
.cstc-offline-details { padding:6px 18px 16px; direction:rtl; text-align:right; background:#eef2f8; }
.cstc-offline-details-label { direction:ltr; text-align:left; font-weight:600; font-size:13px; margin:0 0 10px; }
.cstc-offline-details-price { font-size:18px; font-weight:700; margin:0 0 14px; text-align:right; }
.cstc-offline-buy { display:block; width:100%; background:#ff9800; color:#fff !important; border:0; border-radius:4px; padding:12px 8px; font-weight:700; font-size:13px; text-decoration:none !important; cursor:pointer; text-align:center; }
.cstc-offline-buy:hover,.cstc-offline-buy:focus-visible { background:#e68800; color:#fff !important; }
.cstc-offline-details form { margin:0; }
.cstc-choice-panel { background:#fff; border:1px solid #dae0e7; border-radius:8px; margin:7px 0 14px; box-shadow:0 9px 22px rgba(10,26,40,.12); overflow:hidden; position:relative; z-index:8; }
.cstc-online-choice { width:100%; background:#fff; display:flex; align-items:center; gap:12px; text-align:left; border:0; border-bottom:1px solid #e8edf1; padding:14px 12px; color:#162435; cursor:pointer; font-size:14px; }
.cstc-online-choice:hover,.cstc-online-choice:focus-visible { background:#f4f7fb; }
.cstc-choice-hint { margin-left:auto; font-size:12px; color:#68798b; }
.cstc-choice-panel .cstc-offline-option { border:0; border-radius:0; }
.cstc-login-modal[hidden],.cstc-offline-details[hidden],.cstc-choice-panel[hidden] { display:none !important; }
.cstc-login-open { overflow:hidden; }
.cstc-login-modal { position:fixed; z-index:999999; inset:0; background:rgba(0,0,0,.5); display:flex; align-items:center; justify-content:center; padding:16px; }
.cstc-login-dialog { position:relative; background:#fff; color:#0b2439; border-radius:10px; width:min(100%,540px); padding:28px; max-height:calc(100vh - 40px); overflow-y:auto; box-shadow:0 15px 40px rgba(0,0,0,.23); direction:rtl; }
.cstc-login-close { position:absolute; top:9px; left:10px; border:0; background:#f0f3f7; width:28px; height:28px; border-radius:50%; font-size:22px; cursor:pointer; color:#64748b; }
.cstc-login-note { font-size:12px; color:#65748a; margin:14px 0 0; }
@media (max-width:650px) { .cstc-login-dialog { padding:18px; } .cstc-offline-toggle { gap:8px; padding:13px 9px; } .cstc-offline-copy { gap:7px; } }

/* The Online fallback is a choice first, and a purchase action only afterward. */
.cstc-online-option { border-bottom:1px solid #e8edf1; background:#fff; }
.cstc-online-option.cstc-active { background:#eef2f8; }
.cstc-online-option.cstc-active .cstc-offline-radio { border-color:#ff9700; }
.cstc-online-option.cstc-active .cstc-offline-radio::after { content:''; width:9px; height:9px; background:#ff9700; border-radius:50%; display:block; margin:3px; }
.cstc-online-choice { border-bottom:0; }
.cstc-online-details { padding:3px 18px 16px; text-align:right; }
.cstc-online-details[hidden] { display:none !important; }
.cstc-online-details-label { text-align:left; font-weight:600; font-size:13px; margin:0 0 10px; }
.cstc-online-price { text-align:right; direction:rtl; font-size:18px; font-weight:700; margin:0 0 14px; }
.cstc-online-buy { display:block; width:100%; text-align:center; border:0; border-radius:4px; background:#ff9800; color:white; font-size:13px; font-weight:700; padding:12px 8px; cursor:pointer; }
.cstc-online-buy:hover,.cstc-online-buy:focus-visible { background:#e68800; }
