/* ── CA Internship Quiz – Public Styles ─────────────────────────── */
:root{
  --caiq-primary:#1a3a5c;
  --caiq-accent:#c9a84c;
  --caiq-success:#2e7d32;
  --caiq-danger:#c62828;
  --caiq-light:#f5f8fa;
  --caiq-border:#dce3eb;
  --caiq-radius:10px;
  --caiq-shadow:0 4px 24px rgba(26,58,92,.10);
}
#caiq-wrap{
  max-width:780px;margin:32px auto;padding:0 16px;
  font-family:'Segoe UI',Arial,sans-serif;color:#222;
}
.caiq-step{
  background:#fff;border-radius:var(--caiq-radius);
  box-shadow:var(--caiq-shadow);overflow:hidden;
}
/* Header */
.caiq-header{
  background:linear-gradient(135deg,var(--caiq-primary) 0%,#2a5a8c 100%);
  color:#fff;text-align:center;padding:36px 24px 28px;
}
.caiq-logo{font-size:48px;line-height:1;margin-bottom:8px;}
.caiq-header h2{margin:0 0 6px;font-size:26px;font-weight:700;}
.caiq-header p{margin:0;opacity:.85;font-size:15px;}
/* Form */
#caiq-details-form{padding:28px 32px 32px;}
.caiq-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:18px;}
@media(max-width:600px){.caiq-grid-2{grid-template-columns:1fr;}}
.caiq-full{grid-column:1/-1;}
.caiq-field{display:flex;flex-direction:column;gap:5px;}
.caiq-field label{font-size:13px;font-weight:600;color:#444;}
.caiq-field input,.caiq-field select,.caiq-field textarea{
  padding:10px 13px;border:1.5px solid var(--caiq-border);
  border-radius:7px;font-size:14px;transition:border .2s;outline:none;
  background:#fafbfc;
}
.caiq-field input:focus,.caiq-field select:focus,.caiq-field textarea:focus{
  border-color:var(--caiq-primary);background:#fff;
}
.req{color:var(--caiq-danger);}
/* Buttons */
.caiq-actions{margin-top:24px;text-align:right;}
.caiq-btn{
  padding:11px 28px;border:none;border-radius:7px;
  font-size:15px;font-weight:600;cursor:pointer;transition:.2s;
}
.caiq-btn-primary{background:var(--caiq-primary);color:#fff;}
.caiq-btn-primary:hover{background:#12294a;}
.caiq-btn-outline{background:#fff;color:var(--caiq-primary);border:2px solid var(--caiq-primary);}
.caiq-btn-outline:hover{background:var(--caiq-light);}
.caiq-btn-success{background:var(--caiq-success);color:#fff;}
.caiq-btn-success:hover{background:#1b5e20;}
/* Quiz header */
.caiq-quiz-header{
  background:var(--caiq-primary);color:#fff;padding:18px 24px 12px;
}
.caiq-quiz-meta{
  display:flex;justify-content:space-between;align-items:center;
  font-size:14px;margin-bottom:10px;
}
.caiq-timer{
  background:rgba(255,255,255,.15);padding:4px 14px;
  border-radius:20px;font-weight:700;font-size:15px;
}
.caiq-timer.danger{background:#c62828;animation:pulse 1s infinite;}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.7}}
.caiq-progress-bar{height:6px;background:rgba(255,255,255,.25);border-radius:3px;}
#caiq-progress{height:100%;background:var(--caiq-accent);border-radius:3px;transition:width .4s;}
.caiq-badge{
  margin-top:10px;display:inline-block;
  padding:3px 12px;border-radius:20px;
  background:rgba(255,255,255,.18);font-size:12px;font-weight:600;text-transform:uppercase;
}
/* Question area */
#caiq-question-area{padding:28px 32px;}
.caiq-question-text{
  font-size:17px;font-weight:600;line-height:1.6;margin-bottom:22px;
  color:var(--caiq-primary);
}
.caiq-options{display:flex;flex-direction:column;gap:11px;}
.caiq-option{
  display:flex;align-items:center;gap:13px;
  padding:13px 18px;border:2px solid var(--caiq-border);
  border-radius:8px;cursor:pointer;transition:.18s;
  background:#fafbfc;
}
.caiq-option:hover{border-color:var(--caiq-primary);background:var(--caiq-light);}
.caiq-option.selected{border-color:var(--caiq-primary);background:#e8f0fb;}
.caiq-option-key{
  width:32px;height:32px;border-radius:50%;
  background:var(--caiq-primary);color:#fff;
  display:flex;align-items:center;justify-content:center;
  font-weight:700;font-size:13px;flex-shrink:0;
}
.caiq-option.selected .caiq-option-key{background:var(--caiq-accent);}
.caiq-text-answer{
  width:100%;padding:12px;border:1.5px solid var(--caiq-border);
  border-radius:8px;font-size:14px;min-height:90px;resize:vertical;
}
.caiq-quiz-nav{
  padding:16px 24px 24px;display:flex;gap:12px;justify-content:flex-end;
  border-top:1px solid var(--caiq-border);
}
/* Result */
.caiq-result-wrap{
  text-align:center;padding:48px 32px;
}
.caiq-result-icon{font-size:64px;line-height:1;margin-bottom:12px;}
.caiq-result-wrap h2{font-size:26px;color:var(--caiq-primary);margin:0 0 24px;}
.caiq-score-circle{
  width:130px;height:130px;border-radius:50%;
  background:linear-gradient(135deg,var(--caiq-primary),#2a5a8c);
  color:#fff;display:flex;align-items:center;justify-content:center;
  margin:0 auto 16px;
  box-shadow:0 6px 24px rgba(26,58,92,.3);
}
#caiq-score-pct{font-size:32px;font-weight:800;}
.caiq-result-msg{
  margin:16px auto;max-width:420px;padding:14px 18px;
  border-radius:8px;font-size:15px;font-weight:600;
}
.caiq-result-msg.shortlisted{background:#e8f5e9;color:var(--caiq-success);border:1.5px solid #a5d6a7;}
.caiq-result-msg.not-shortlisted{background:#fff3e0;color:#e65100;border:1.5px solid #ffcc80;}
.caiq-result-note{color:#777;font-size:13px;max-width:420px;margin:12px auto 0;}
/* Loading */
.caiq-loading{
  position:fixed;inset:0;background:rgba(255,255,255,.88);
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  z-index:9999;font-size:16px;font-weight:600;color:var(--caiq-primary);
}
.caiq-spinner{
  width:48px;height:48px;border:5px solid var(--caiq-border);
  border-top-color:var(--caiq-primary);border-radius:50%;
  animation:spin .8s linear infinite;margin-bottom:14px;
}
@keyframes spin{to{transform:rotate(360deg)}}
.caiq-error{color:var(--caiq-danger);font-size:13px;margin-top:8px;}
