/* UniCBT Pro — Public CSS v2.1 | Mobile-First */
:root{
  --cbt-primary:#3B82F6;--cbt-accent:#10B981;--cbt-danger:#EF4444;
  --cbt-warn:#F59E0B;--cbt-dark:#0F172A;--cbt-slate:#1E293B;
  --cbt-gray:#64748B;--cbt-light:#F8FAFC;--cbt-border:#E2E8F0;
  --cbt-radius:14px;--cbt-radius-sm:10px;
  --cbt-shadow:0 4px 24px rgba(0,0,0,.08);
  --cbt-shadow-lg:0 12px 48px rgba(0,0,0,.15);
}
#cbt-app,#cbt-app *{box-sizing:border-box;font-family:'Inter',system-ui,sans-serif}
#cbt-app button{cursor:pointer}
.cbt-launcher-wrap{max-width:760px;margin:0 auto;padding:0 1rem 4rem}

/* Hero */
.cbt-launcher-hero{text-align:center;padding:2.5rem 1rem 1.5rem;background:linear-gradient(135deg,#1E293B,#0F172A);border-radius:var(--cbt-radius);color:#fff;margin-bottom:1.5rem;position:relative;overflow:hidden}
.cbt-launcher-hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 70% 50%,rgba(59,130,246,.2),transparent 70%);pointer-events:none}
.cbt-launcher-badge{display:inline-flex;align-items:center;gap:.5rem;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);padding:.35rem 1rem;border-radius:20px;font-size:.75rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin-bottom:1rem}
.cbt-pulse{width:8px;height:8px;background:#10B981;border-radius:50%;animation:cbt-pulse 2s infinite;flex-shrink:0}
@keyframes cbt-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.6;transform:scale(1.4)}}
.cbt-launcher-title{margin:0 0 .5rem;font-size:clamp(1.5rem,5vw,2.25rem);font-weight:900;line-height:1.1;letter-spacing:-.02em;color:#fff}
.cbt-launcher-tagline{margin:0;color:rgba(255,255,255,.7);font-size:.95rem}

/* Progress */
.cbt-progress-bar{height:4px;background:var(--cbt-border);border-radius:2px;margin-bottom:.75rem;overflow:hidden}
.cbt-progress-fill{height:100%;background:linear-gradient(90deg,var(--cbt-primary),var(--cbt-accent));border-radius:2px;transition:width .4s ease}
.cbt-step-labels{display:flex;justify-content:center;gap:.5rem;margin-bottom:1.5rem;flex-wrap:wrap}
.cbt-step-dot{width:28px;height:28px;border-radius:50%;background:var(--cbt-border);color:var(--cbt-gray);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:center;transition:.3s}
.cbt-step-dot.active{background:var(--cbt-primary);color:#fff;transform:scale(1.1)}
.cbt-step-dot.done{background:var(--cbt-accent);color:#fff}

/* Steps */
.cbt-form-step{display:none;animation:cbt-fadein .3s ease}
.cbt-form-step.active{display:block}
@keyframes cbt-fadein{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.cbt-step-title{font-size:1.05rem;font-weight:700;color:var(--cbt-dark);margin:0 0 1rem}

/* Country cards */
.cbt-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}
.cbt-card-btn{background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:.875rem .75rem;display:flex;flex-direction:column;align-items:center;gap:.4rem;transition:.2s;font-size:.875rem;width:100%}
.cbt-card-btn:hover,.cbt-card-btn.selected{border-color:var(--cbt-primary);background:#EFF6FF;transform:translateY(-2px);box-shadow:var(--cbt-shadow)}
.cbt-card-code{font-size:1.25rem;font-weight:800;color:var(--cbt-primary)}
.cbt-card-name{font-size:.75rem;font-weight:600;color:var(--cbt-dark);text-align:center}

/* Selects */
.cbt-select-wrap{position:relative}
.cbt-select{width:100%;padding:.75rem 2.5rem .75rem 1rem;background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);font-size:.95rem;color:var(--cbt-dark);appearance:none;transition:.2s;font-weight:500;font-family:inherit}
.cbt-select:focus{outline:none;border-color:var(--cbt-primary);box-shadow:0 0 0 3px rgba(59,130,246,.12)}
.cbt-select:disabled{background:var(--cbt-light);color:#94A3B8;cursor:not-allowed}
.cbt-select-arrow{position:absolute;right:.875rem;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--cbt-gray);font-size:.85rem}
.cbt-loader{font-size:.85rem;color:var(--cbt-gray);padding:.5rem 0;font-style:italic}

/* Level buttons */
.cbt-level-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:.75rem}
@media(max-width:440px){.cbt-level-grid{grid-template-columns:repeat(3,1fr)}}
.cbt-level-btn{background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:1rem .5rem;display:flex;flex-direction:column;align-items:center;gap:.2rem;font-size:1.15rem;font-weight:800;color:var(--cbt-dark);transition:.2s;width:100%}
.cbt-level-btn small{font-size:.65rem;font-weight:600;color:var(--cbt-gray);text-transform:uppercase;letter-spacing:.05em}
.cbt-level-btn:hover,.cbt-level-btn.selected{border-color:var(--cbt-primary);background:var(--cbt-primary);color:#fff;box-shadow:0 4px 16px rgba(59,130,246,.3)}
.cbt-level-btn.selected small{color:rgba(255,255,255,.8)}

/* Semester buttons */
.cbt-sem-grid{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}
.cbt-sem-btn{background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:1.25rem 1rem;display:flex;flex-direction:column;align-items:center;gap:.5rem;transition:.2s;width:100%}
.cbt-sem-btn:hover,.cbt-sem-btn.selected{border-color:var(--cbt-primary);background:var(--cbt-primary);color:#fff;box-shadow:0 4px 16px rgba(59,130,246,.3)}
.cbt-sem-icon{font-size:1.75rem;line-height:1}
.cbt-sem-lbl{font-size:.9rem;font-weight:700}

/* Course list */
.cbt-course-list{display:flex;flex-direction:column;gap:.5rem}
.cbt-course-item{display:flex;align-items:center;justify-content:space-between;background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:.875rem 1rem;transition:.2s;gap:1rem;cursor:pointer}
.cbt-course-item:hover,.cbt-course-item.selected{border-color:var(--cbt-primary);background:#EFF6FF}
.cbt-course-item.selected{border-left:4px solid var(--cbt-primary)}
.cbt-course-item.cbt-course-disabled{opacity:.5;cursor:not-allowed}
.cbt-course-left{display:flex;flex-direction:column;gap:.2rem;flex:1;min-width:0}
.cbt-course-code{font-size:.82rem;font-weight:800;color:var(--cbt-primary)}
.cbt-course-title-text{font-size:.9rem;font-weight:600;color:var(--cbt-dark)}
.cbt-course-meta{font-size:.72rem;color:var(--cbt-gray)}
.cbt-course-q-badge{background:#F0FDF4;color:var(--cbt-accent);border:1px solid #BBF7D0;border-radius:20px;padding:.2rem .6rem;font-size:.72rem;font-weight:700;white-space:nowrap;flex-shrink:0}
.cbt-course-q-badge.empty{background:#FEF3C7;color:#B45309;border-color:#FDE68A}
.cbt-course-check{width:22px;height:22px;min-width:22px;border-radius:50%;border:2px solid var(--cbt-border);display:flex;align-items:center;justify-content:center;font-size:.8rem;color:transparent;flex-shrink:0;transition:.2s}
.cbt-course-item.selected .cbt-course-check{background:var(--cbt-primary);border-color:var(--cbt-primary);color:#fff}
.cbt-course-empty{text-align:center;padding:2rem;color:var(--cbt-gray);font-size:.9rem;background:var(--cbt-light);border-radius:var(--cbt-radius-sm)}

/* Settings */
.cbt-settings-section{background:var(--cbt-light);border-radius:var(--cbt-radius-sm);padding:1.25rem;margin-bottom:1rem;border:1px solid var(--cbt-border)}
.cbt-settings-sub{margin:0 0 .875rem;font-size:.8rem;font-weight:700;color:var(--cbt-dark);text-transform:uppercase;letter-spacing:.05em}
.cbt-input-row{display:grid;grid-template-columns:1fr 1fr;gap:.875rem}
@media(max-width:520px){.cbt-input-row{grid-template-columns:1fr}}
.cbt-options-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.875rem}
@media(max-width:520px){.cbt-options-row{grid-template-columns:1fr}}
.cbt-input-label{display:block;font-size:.8rem;font-weight:600;color:var(--cbt-dark);margin-bottom:.35rem}
.cbt-req{color:var(--cbt-danger)}
.cbt-input{width:100%;padding:.7rem .9rem;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);font-size:.95rem;color:var(--cbt-dark);background:#fff;transition:.2s;font-family:inherit}
.cbt-input:focus{outline:none;border-color:var(--cbt-primary);box-shadow:0 0 0 3px rgba(59,130,246,.12)}

/* Summary */
.cbt-summary-box{background:#fff;border:2px solid var(--cbt-border)}
#cbt-summary-content{display:flex;flex-direction:column;gap:.4rem}
.cbt-summary-row{display:flex;justify-content:space-between;align-items:center;font-size:.875rem;padding:.3rem 0;border-bottom:1px dashed var(--cbt-border)}
.cbt-summary-row:last-child{border-bottom:none}
.cbt-summary-key{color:var(--cbt-gray);font-weight:500}
.cbt-summary-val{color:var(--cbt-dark);font-weight:700;text-align:right}

/* Notice */
.cbt-notice{padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;margin-bottom:.875rem}
.cbt-notice-error{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA}

/* Launch button */
.cbt-launch-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:1rem;background:linear-gradient(135deg,var(--cbt-primary),#6366F1);color:#fff;border:none;border-radius:var(--cbt-radius-sm);font-size:1.05rem;font-weight:700;margin-top:1.25rem;transition:.2s;box-shadow:0 4px 20px rgba(59,130,246,.4)}
.cbt-launch-btn:hover{transform:translateY(-1px);box-shadow:0 8px 30px rgba(59,130,246,.5)}
.cbt-launch-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}
.cbt-spinner{display:inline-block;width:16px;height:16px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:cbt-spin .7s linear infinite}
@keyframes cbt-spin{to{transform:rotate(360deg)}}

/* Nav */
.cbt-nav-row{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;min-height:2rem}
.cbt-nav-back{background:none;border:none;color:var(--cbt-gray);font-size:.875rem;font-weight:600;padding:.5rem 0;display:flex;align-items:center;gap:.3rem}
.cbt-nav-back:hover{color:var(--cbt-dark)}
.cbt-breadcrumb{font-size:.72rem;color:var(--cbt-gray);text-align:right;line-height:1.6;max-width:60%}

/* ── EXAM ── */
.cbt-exam-wrap{max-width:860px;margin:0 auto;padding:0 .5rem 4rem}
.cbt-exam-topbar{background:var(--cbt-dark);color:#fff;border-radius:var(--cbt-radius);padding:.875rem 1.25rem;margin-bottom:1rem;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;position:sticky;top:0;z-index:100;box-shadow:var(--cbt-shadow-lg)}
@media(max-width:600px){.cbt-exam-topbar{grid-template-columns:1fr 1fr;grid-template-rows:auto auto}}
.cbt-exam-course{font-size:.85rem;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cbt-exam-meta{font-size:.7rem;color:rgba(255,255,255,.5);margin-top:.1rem}
.cbt-exam-topbar-center{text-align:center}
.cbt-timer-wrap{display:inline-flex;align-items:center;gap:.4rem;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);padding:.5rem 1rem;border-radius:8px}
.cbt-timer-icon{font-size:.9rem}
.cbt-timer-display{font-size:1.1rem;font-weight:800;font-variant-numeric:tabular-nums;color:#fff;letter-spacing:.05em}
.cbt-timer-wrap.cbt-timer-warn .cbt-timer-display{color:#FCD34D}
.cbt-timer-wrap.cbt-timer-critical{animation:cbt-blink 1s step-end infinite}
.cbt-timer-wrap.cbt-timer-critical .cbt-timer-display{color:#FCA5A5}
@keyframes cbt-blink{50%{opacity:.5}}
.cbt-exam-topbar-right{display:flex;align-items:center;justify-content:flex-end;gap:.75rem}
.cbt-exam-progress-text{font-size:.8rem;color:rgba(255,255,255,.65);font-weight:600;white-space:nowrap}
.cbt-submit-btn-top{background:rgba(239,68,68,.15);border:1px solid rgba(239,68,68,.3);color:#FCA5A5;padding:.4rem .875rem;border-radius:6px;font-size:.78rem;font-weight:700;transition:.2s}
.cbt-submit-btn-top:hover{background:var(--cbt-danger);color:#fff;border-color:var(--cbt-danger)}
.cbt-q-navigator{display:flex;flex-wrap:wrap;gap:6px;padding:.75rem 0;margin-bottom:.5rem;max-height:96px;overflow-y:auto}
.cbt-nav-dot{width:30px;height:30px;border-radius:6px;border:2px solid var(--cbt-border);background:#fff;font-size:.72rem;font-weight:700;color:var(--cbt-gray);transition:.2s;display:flex;align-items:center;justify-content:center}
.cbt-nav-dot:hover{border-color:var(--cbt-primary);color:var(--cbt-primary)}
.cbt-nav-dot.current{border-color:var(--cbt-primary);background:var(--cbt-primary);color:#fff;transform:scale(1.1)}
.cbt-nav-dot.answered{border-color:var(--cbt-accent);background:var(--cbt-accent);color:#fff}
.cbt-nav-dot.flagged{background:#FEF3C7;border-color:var(--cbt-warn);color:#92400E}
.cbt-exam-body{padding:0 .25rem}
.cbt-question-card{background:#fff;border:1px solid var(--cbt-border);border-radius:var(--cbt-radius);padding:1.5rem;margin-bottom:1rem;box-shadow:var(--cbt-shadow)}
.cbt-q-badge{display:flex;align-items:center;gap:.5rem;margin-bottom:.875rem}
.cbt-q-num{background:var(--cbt-primary);color:#fff;font-size:.72rem;font-weight:800;padding:.2rem .65rem;border-radius:5px;text-transform:uppercase;letter-spacing:.04em}
.cbt-q-diff-badge{font-size:.72rem;font-weight:600;padding:.2rem .6rem;border-radius:5px}
.cbt-diff-easy{background:#D1FAE5;color:#065F46}
.cbt-diff-medium{background:#FEF3C7;color:#92400E}
.cbt-diff-hard{background:#FEE2E2;color:#991B1B}
.cbt-q-text{font-size:1.05rem;font-weight:600;color:var(--cbt-dark);line-height:1.6}
.cbt-q-image{max-width:100%;border-radius:8px;margin-top:.875rem;border:1px solid var(--cbt-border)}
.cbt-options-wrap{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1rem}
.cbt-option-btn{display:flex;align-items:flex-start;gap:.875rem;background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:.875rem 1rem;text-align:left;transition:.2s;width:100%}
.cbt-option-btn:hover:not(:disabled){border-color:var(--cbt-primary);background:#EFF6FF;transform:translateX(3px)}
.cbt-option-btn.selected{border-color:var(--cbt-primary);background:#EFF6FF}
.cbt-option-btn.selected .cbt-opt-letter{background:var(--cbt-primary);color:#fff;border-color:var(--cbt-primary)}
.cbt-option-btn.correct{border-color:var(--cbt-accent);background:#D1FAE5}
.cbt-option-btn.wrong{border-color:var(--cbt-danger);background:#FEE2E2}
.cbt-opt-letter{width:30px;height:30px;min-width:30px;border-radius:50%;border:2px solid var(--cbt-border);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:.78rem;color:var(--cbt-gray);transition:.2s;flex-shrink:0}
.cbt-opt-text{font-size:.95rem;color:var(--cbt-dark);font-weight:500;line-height:1.5}
.cbt-exam-nav{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:1rem}
.cbt-exam-prev,.cbt-exam-next{background:#fff;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:.7rem 1.25rem;font-size:.9rem;font-weight:700;color:var(--cbt-dark);transition:.2s;font-family:inherit}
.cbt-exam-prev:hover,.cbt-exam-next:hover{border-color:var(--cbt-primary);color:var(--cbt-primary)}
.cbt-exam-prev:disabled,.cbt-exam-next:disabled{opacity:.4;cursor:not-allowed}
.cbt-exam-flag{background:none;border:2px solid var(--cbt-border);border-radius:var(--cbt-radius-sm);padding:.65rem .875rem;color:var(--cbt-gray);font-size:.85rem;font-weight:600;transition:.2s;font-family:inherit}
.cbt-exam-flag:hover{border-color:var(--cbt-warn);color:var(--cbt-warn)}
.cbt-exam-flag.flagged{border-color:var(--cbt-warn);background:#FEF3C7;color:#92400E}
.cbt-exam-warning{background:#FEF3C7;border:1px solid #FDE68A;border-radius:8px;padding:.75rem 1rem;font-size:.875rem;color:#92400E;font-weight:600;margin-bottom:.875rem;text-align:center}
.cbt-submit-area{background:var(--cbt-light);border:1px solid var(--cbt-border);border-radius:var(--cbt-radius);padding:1.5rem;text-align:center}
.cbt-submit-summary{font-size:.9rem;color:var(--cbt-dark);margin-bottom:1.25rem;line-height:1.8}
.cbt-submit-actions{display:flex;gap:.75rem;justify-content:center;flex-wrap:wrap}
.cbt-btn-submit{background:linear-gradient(135deg,var(--cbt-accent),#059669);color:#fff;border:none;padding:.875rem 2rem;border-radius:var(--cbt-radius-sm);font-size:1rem;font-weight:700;box-shadow:0 4px 16px rgba(16,185,129,.35);transition:.2s;font-family:inherit}
.cbt-btn-submit:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(16,185,129,.45)}
.cbt-btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}
.cbt-btn-back-to-exam{background:#fff;border:2px solid var(--cbt-border);color:var(--cbt-dark);padding:.85rem 1.5rem;border-radius:var(--cbt-radius-sm);font-size:.95rem;font-weight:600;transition:.2s;font-family:inherit}
.cbt-btn-back-to-exam:hover{border-color:var(--cbt-primary);color:var(--cbt-primary)}
.cbt-anticheat-overlay{position:fixed;inset:0;background:rgba(15,23,42,.92);z-index:99999;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(6px)}
.cbt-anticheat-box{background:#fff;border-radius:var(--cbt-radius);padding:2.5rem;text-align:center;max-width:400px;margin:1rem;box-shadow:var(--cbt-shadow-lg)}
.cbt-anticheat-icon{font-size:3rem;margin-bottom:1rem}
.cbt-anticheat-box h3{margin:0 0 .75rem;color:var(--cbt-dark);font-size:1.25rem}
.cbt-anticheat-box p{color:var(--cbt-gray);margin:0 0 1.5rem;font-size:.9rem}

/* ── RESULT ── */
.cbt-result-wrap{max-width:760px;margin:0 auto;padding:0 1rem 4rem}
.cbt-score-card{background:linear-gradient(135deg,#1E293B,#0F172A);border-radius:var(--cbt-radius);padding:2rem;color:#fff;display:flex;align-items:center;gap:2rem;flex-wrap:wrap;margin-bottom:1.5rem;position:relative;overflow:hidden}
.cbt-score-card::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 20% 50%,rgba(59,130,246,.2),transparent 60%);pointer-events:none}
.cbt-result-ring-wrap{position:relative;flex-shrink:0}
.cbt-result-ring{width:130px;height:130px}
.cbt-ring-score{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.cbt-ring-pct{font-size:1.65rem;font-weight:900;color:#fff;line-height:1}
.cbt-ring-grade{font-size:.95rem;font-weight:700;margin-top:.25rem;background:rgba(255,255,255,.15);border-radius:6px;padding:.15rem .5rem}
.cbt-score-details{flex:1;min-width:200px;display:flex;flex-direction:column;gap:.45rem}
.cbt-score-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.3rem 0;border-bottom:1px solid rgba(255,255,255,.08)}
.cbt-score-row:last-child{border-bottom:none}
.cbt-score-lbl{color:rgba(255,255,255,.5);font-size:.78rem;font-weight:500}
.cbt-score-val{color:#fff;font-size:.875rem;font-weight:700;text-align:right}
@media(max-width:480px){.cbt-score-card{flex-direction:column;text-align:center}.cbt-score-details{width:100%}.cbt-score-row{flex-direction:column;align-items:flex-start;gap:.1rem}}
.cbt-result-message{text-align:center;padding:1rem 1.5rem;font-size:1rem;font-weight:600;border-radius:var(--cbt-radius-sm);margin-bottom:1.25rem}
.cbt-msg-a{background:#D1FAE5;color:#065F46;border:1px solid #A7F3D0}
.cbt-msg-b{background:#DBEAFE;color:#1E40AF;border:1px solid #BFDBFE}
.cbt-msg-c{background:#FEF3C7;color:#92400E;border:1px solid #FDE68A}
.cbt-msg-d{background:#FFEDD5;color:#C2410C;border:1px solid #FED7AA}
.cbt-msg-f{background:#FEE2E2;color:#991B1B;border:1px solid #FECACA}
.cbt-result-actions{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:1.5rem;justify-content:center}
.cbt-result-btn{padding:.75rem 1.5rem;border-radius:var(--cbt-radius-sm);font-weight:700;font-size:.9rem;border:none;transition:.2s;display:flex;align-items:center;gap:.4rem;font-family:inherit;cursor:pointer}
.cbt-result-btn-review{background:var(--cbt-light);border:2px solid var(--cbt-border);color:var(--cbt-dark)}
.cbt-result-btn-review:hover{border-color:var(--cbt-primary);color:var(--cbt-primary)}
.cbt-result-btn-retry{background:var(--cbt-primary);color:#fff;box-shadow:0 4px 14px rgba(59,130,246,.3)}
.cbt-result-btn-retry:hover{transform:translateY(-1px)}
.cbt-result-btn-new{background:var(--cbt-accent);color:#fff;box-shadow:0 4px 14px rgba(16,185,129,.25)}
.cbt-result-btn-new:hover{transform:translateY(-1px)}
.cbt-review-section{background:#fff;border:1px solid var(--cbt-border);border-radius:var(--cbt-radius);overflow:hidden}
.cbt-review-title{padding:1.25rem 1.5rem;margin:0;font-size:1rem;font-weight:700;color:var(--cbt-dark);border-bottom:1px solid var(--cbt-border)}
.cbt-review-filter{display:flex;gap:.5rem;padding:.875rem 1.25rem;border-bottom:1px solid var(--cbt-border);flex-wrap:wrap}
.cbt-rev-filter{background:var(--cbt-light);border:1.5px solid var(--cbt-border);border-radius:20px;padding:.35rem .875rem;font-size:.78rem;font-weight:600;color:var(--cbt-gray);transition:.2s;cursor:pointer;font-family:inherit}
.cbt-rev-filter.active{background:var(--cbt-primary);color:#fff;border-color:var(--cbt-primary)}
.cbt-review-list{display:flex;flex-direction:column}
.cbt-review-item{padding:1.25rem 1.5rem;border-bottom:1px solid var(--cbt-border)}
.cbt-review-item:last-child{border-bottom:none}
.cbt-review-item.hidden{display:none}
.cbt-review-item-hd{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.875rem}
.cbt-review-num{font-size:.72rem;font-weight:800;color:var(--cbt-gray);background:var(--cbt-light);border-radius:5px;padding:.2rem .5rem;flex-shrink:0;margin-top:.2rem}
.cbt-review-q-text{font-size:.95rem;font-weight:600;color:var(--cbt-dark);line-height:1.5}
.cbt-review-opts{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}
@media(max-width:480px){.cbt-review-opts{grid-template-columns:1fr}}
.cbt-rev-opt{display:flex;align-items:center;gap:.5rem;padding:.55rem .75rem;border-radius:8px;font-size:.85rem;border:1.5px solid var(--cbt-border)}
.cbt-rev-opt.correct{border-color:var(--cbt-accent);background:#D1FAE5}
.cbt-rev-opt.wrong{border-color:var(--cbt-danger);background:#FEE2E2}
.cbt-rev-opt-letter{width:22px;height:22px;min-width:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.72rem;font-weight:800;background:var(--cbt-border);color:var(--cbt-gray);flex-shrink:0}
.cbt-rev-opt.correct .cbt-rev-opt-letter{background:var(--cbt-accent);color:#fff}
.cbt-rev-opt.wrong .cbt-rev-opt-letter{background:var(--cbt-danger);color:#fff}
.cbt-rev-explain{margin-top:.875rem;padding:.75rem;background:#F0FDF4;border-radius:8px;font-size:.83rem;color:#065F46;border-left:3px solid var(--cbt-accent);line-height:1.6}
