/* CoreIQ Office — Readiness · Checklist. Rules copied verbatim by script from the design's
   qx-checklist.css (2026-10-16). Left out: the 31 AI-intake rules (.qi, .qi-*) for the design's
   qx-intake.jsx, which is not ported — Office's own document intake is live. */
.qc{display:flex;flex-direction:column;gap:14px}
.qc-hero{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;padding:20px 22px}
.qc-hero-n{display:flex;flex-direction:column;align-items:center;line-height:1}
.qc-hero-n b{font-size:44px;font-weight:600;letter-spacing:-.02em}
.qc-hero-n span{font-size:12px;color:var(--text-muted);margin-top:4px}
.qc-hero-body{display:flex;flex-direction:column;gap:8px;min-width:0}
.qc-hero-body h3{margin:0;font-size:18px;font-weight:600}
.qc-hero-body p{margin:0;font-size:13px;color:var(--text-muted);text-wrap:pretty}
.qc-hero-bar{height:8px;border-radius:4px;background:var(--bg-subtle);overflow:hidden}
.qc-hero-bar i{display:block;height:100%;background:var(--paid);border-radius:4px}
@media (max-width:640px){.qc-hero{grid-template-columns:1fr}.qc-hero-n{align-items:flex-start}}
.qc-list{padding:0;overflow:hidden}
.qc-line{display:grid;grid-template-columns:84px minmax(0,1fr) minmax(0,170px) auto;gap:14px;align-items:center;padding:14px 16px;border-top:1px solid var(--border-subtle);cursor:pointer}
.qc-line:first-child{border-top:0}
.qc-line:hover{background:var(--bg-subtle)}
.qc-line--done .qc-body b{font-weight:500;color:var(--text-muted)}
.qc-st{display:inline-flex;align-items:center;gap:4px;justify-self:start;font-size:11px;font-weight:600;padding:3px 9px;border-radius:99px;white-space:nowrap}
.qc-st--void{background:var(--void-bg);color:var(--void-text)}.qc-st--hold{background:var(--hold-bg);color:var(--hold-text)}.qc-st--paid{background:var(--paid-bg);color:var(--paid-text)}
.qf-dh .qc-st{align-self:flex-start;margin-bottom:4px}
.qc-body{display:flex;flex-direction:column;gap:3px;min-width:0}
.qc-body b{font-size:14px;font-weight:600}
.qc-need{font-size:13px;color:var(--text-muted);text-wrap:pretty}
.qc-found{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text);min-width:0;flex-wrap:wrap}
.qc-found svg{color:var(--text-subtle);flex:none}
.qc-found i{font-style:normal;color:var(--text-subtle)}
.qc-none{color:var(--text-subtle)}
.qc-meta{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-muted);min-width:0}
.qc-meta span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qc-act .btn{white-space:nowrap}
@media (max-width:820px){.qc-line{grid-template-columns:minmax(0,1fr) auto}.qc-st{grid-column:1/-1}.qc-meta{grid-column:1;flex-direction:row;gap:10px}.qc-act{grid-column:2;grid-row:2/4}}
.qc-pb{padding:16px 20px 24px;display:flex;flex-direction:column;gap:12px}
.qc-box{border:1px solid var(--border);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:10px}
.qc-box h4{margin:0;font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}
.qc-box p{margin:0;font-size:14px;line-height:1.5;text-wrap:pretty}
.qc-filecard{display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:8px;background:var(--bg-subtle)}
.qc-filecard span{display:flex;flex-direction:column;min-width:0}
.qc-filecard b{font-size:13px;font-weight:500}
.qc-filecard i{font-style:normal;font-size:12px;color:var(--text-muted)}
.qc-checks{display:flex;flex-direction:column;gap:8px}
.qc-checks label{display:flex;gap:10px;align-items:flex-start;font-size:14px;line-height:1.4;cursor:pointer}
.qc-checks input{margin-top:3px;width:16px;height:16px;flex:none}
.qc-field{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--text-muted)}
.qc-btns{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.qc-btns .qs-warn{font-size:12px}
.qc-drop{display:flex;flex-direction:column;align-items:center;gap:6px;padding:28px 16px;border:2px dashed var(--border);border-radius:12px;background:var(--bg-subtle);cursor:pointer;font:inherit;color:var(--text)}
.qc-drop:hover{border-color:var(--teal-500);background:var(--surface)}
.qc-drop b{font-size:14px;font-weight:600}
.qc-drop span{font-size:12px;color:var(--text-muted)}
.qc-reading{display:flex;align-items:center;gap:10px;font-size:14px;padding:16px 4px}
.qc-spin{width:16px;height:16px;border-radius:50%;border:2px solid var(--border);border-top-color:var(--teal-600);animation:qcspin .8s linear infinite}
@keyframes qcspin{to{transform:rotate(360deg)}}
.qc-facts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:14px}
.qc-facts li{display:flex;gap:8px;align-items:center}
.qc-facts svg{color:var(--paid)}
.qc-draft{border:1px solid var(--border-subtle);border-radius:8px;padding:12px 14px;background:var(--bg-subtle);display:flex;flex-direction:column;gap:6px}
.qc-draft p{font-size:13px}
.qc-ok{display:grid;grid-template-columns:auto minmax(0,1fr);gap:14px;align-items:center;padding:16px;border-radius:12px;background:var(--paid-bg);border:1px solid var(--paid-border)}
.qc-ok div{display:flex;flex-direction:column;gap:3px}
.qc-ok b{font-size:15px}
.qc-ok span{font-size:13px;color:var(--text-muted)}
.qc-ok .btn{grid-column:1/-1;justify-self:start}
.qc-more{font-size:13px;color:var(--text-muted)}
.qc-more summary{cursor:pointer;padding:4px 0}
.qc-more p{margin:6px 0 0;line-height:1.5}
.qc-vnote{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:10px;background:var(--bg-subtle);border:1px solid var(--border);font-size:13px;margin-bottom:12px}
.qc-vnote span{flex:1;min-width:0}
.qc-vnote svg{color:var(--text-subtle);flex:none}
.qc-inq{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--paid-text)}
