
.ciq * { box-sizing: border-box; }
.ciq { font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:#111827; }
.ciq h1 { margin:0 0 .25rem; font-size:1.5rem; font-weight:700; }
.ciq .sub { color:#6b7280; margin:.25rem 0 1rem; }
.ciq .card { background:#fff; border:1px solid #e5e7eb; border-radius:16px; padding:20px; box-shadow:0 1px 2px rgba(0,0,0,.04); }
.ciq .choices button { width:100%; text-align:left; padding:12px 14px; border:1px solid #e5e7eb; border-radius:12px; background:#fff; cursor:pointer; }
.ciq .choices button+button { margin-top:8px; }
.ciq .choices button:hover { background:#f9fafb; }
.ciq .choices button.active { background:#6d28d9; color:#fff; border-color:#6d28d9; }
.ciq .row { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; }
.ciq .btn { display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:12px; border:1px solid #e5e7eb; background:#fff; color:#374151; cursor:pointer; }
.ciq .btn.primary { background:#6d28d9; color:#fff; border-color:#6d28d9; }
.ciq .btn:disabled { opacity:.5; cursor:not-allowed; }
.ciq .muted { color:#6b7280; }
.ciq .score { display:flex; align-items:center; gap:6px; font-size:.9rem; color:#4b5563; }
.ciq .pill { display:inline-flex; align-items:center; gap:6px; font-size:.7rem; padding:4px 8px; border-radius:999px; background:#eff6ff; color:#1d4ed8; border:1px solid #bfdbfe; }
.ciq .progress { height:8px; width:100%; background:#e5e7eb; border-radius:999px; overflow:hidden; margin-top:8px; }
.ciq .progress > span { display:block; height:100%; background:#6d28d9; }
.ciq .stack { display:grid; gap:12px; }
.ciq ul { padding-left:18px; }
.ciq .result { border:1px solid #e5e7eb; border-radius:16px; background:#f9fafb; padding:16px; }
.ciq .badge { display:inline-block; padding:4px 8px; border-radius:8px; font-size:.75rem; }
.ciq .badge.warn { background:#fef3c7; color:#92400e; border:1px solid #fde68a; }
.ciq .badge.danger { background:#fee2e2; color:#991b1b; border:1px solid #fecaca; }
.ciq .badge.ok { background:#dcfce7; color:#166534; border:1px solid #bbf7d0; }
.ciq .rec-list li+li { margin-top:4px; }
.ciq .footer { margin-top:16px; color:#6b7280; font-size:.8rem; }
