/* Statutory facts form, disclosure checklist and the standards-catalogue ask panel (questionnaire screen). */
.statutory-facts-panel,.disclosure-checklist-panel{display:grid;gap:18px;margin-top:6px}
.statutory-facts-header,.checklist-header{display:grid;gap:8px}
.statutory-facts-header h2,.checklist-header h2{margin:0}
.statutory-facts-intro,.checklist-intro{margin:0;color:var(--muted);font-size:12px;line-height:1.7;max-width:80ch}
.statutory-facts-count,.checklist-meta{margin:0;font-size:12px;font-weight:550}
.checklist-targets{margin:0;font-size:12px;line-height:1.7;padding:8px 12px;border-radius:6px;border:1px solid var(--line);background:#f5f6f2;color:var(--ink)}
.checklist-targets.from-working-accounts{background:#e8f1ec;border-color:#b9d3c6;color:#1f5e4d}
.checklist-targets.stale{background:#fff4d6;border-color:#ecd28c;color:#7a5a12}
.statutory-facts-header input[type=search]{max-width:420px;padding:9px 12px;border:1px solid #d4decc;border-radius:6px;background:white}
.statutory-facts-groups,.checklist-sections{display:grid;gap:12px}
.statutory-facts-group,.checklist-section{padding:0;overflow:hidden}
.statutory-facts-group>summary,.checklist-section>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 18px;cursor:pointer;font-weight:550;list-style:none}
.statutory-facts-group>summary::-webkit-details-marker,.checklist-section>summary::-webkit-details-marker{display:none}
.statutory-facts-group>summary::before,.checklist-section>summary::before{content:"▸";color:var(--accent);margin-right:6px}
.statutory-facts-group[open]>summary::before,.checklist-section[open]>summary::before{content:"▾"}
.statutory-facts-group-title,.checklist-section-title{flex:1;min-width:200px}
.statutory-facts-group-count,.checklist-section-count{font-size:11px;color:var(--muted);font-weight:500}
.statutory-facts-group-description{margin:0;padding:0 18px 12px;color:var(--muted);font-size:12px;line-height:1.7}
.statutory-facts-list{display:grid;gap:14px;padding:0 18px 18px}
.statutory-facts-list-compact{gap:8px}
.statutory-facts-filters{display:flex;gap:16px;align-items:end;flex-wrap:wrap}
.statutory-facts-search{display:grid;gap:4px;font-size:12px;font-weight:550;flex:1 1 260px;max-width:420px;min-width:0}
.statutory-facts-search input[type=search]{max-width:100%}
.statutory-facts-only-asked{display:flex;gap:8px;align-items:center;font-size:12px;font-weight:550;min-height:40px;padding:0 12px;border:1px solid #d4decc;border-radius:6px;background:white;cursor:pointer;min-width:0;flex-wrap:wrap}
.statutory-facts-only-asked input{width:16px;height:16px;flex:none;accent-color:var(--accent)}
.statutory-facts-asked-count{color:var(--muted);font-weight:400}
.statutory-facts-asked-note{margin:0;line-height:1.7;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.statutory-facts-progress{height:4px;margin:0 18px 10px;background:#e6eae2;border-radius:2px;overflow:hidden}
.statutory-facts-progress span{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width .2s}
.statutory-facts-empty{margin:0;padding:18px;border:1px dashed #c5d1bd;border-radius:9px;background:#f6f8f2}
.statutory-fact{display:grid;gap:6px;padding:12px 14px;border:1px solid var(--line);border-radius:9px;background:white;position:relative}
/* Three visual states: unanswered (dashed amber, nothing recorded), answered (green), negative (an explicit no / none - slate, still an answer). */
.statutory-fact.unanswered{border:1px dashed #d9b562;background:#fffcf3}
.statutory-fact.answered{border-color:#b9d3c6;background:#f6fbf8}
.statutory-fact.negative{border-color:#b7c3cf;background:#f4f7fa}
.statutory-fact.invalid{border-color:#c98a80;background:#fff6f4}
.statutory-fact.asked{box-shadow:inset 4px 0 0 #d9b562}
.statutory-fact.asked.answered,.statutory-fact.asked.negative{box-shadow:none}
.statutory-fact.highlight{outline:3px solid var(--accent);outline-offset:2px}
.statutory-facts-list-compact .statutory-fact{grid-template-columns:minmax(0,1fr) minmax(160px,220px) auto;align-items:center;gap:12px;padding:8px 12px}
.statutory-facts-list-compact .statutory-fact .statutory-fact-help,.statutory-facts-list-compact .statutory-fact .statutory-fact-why,.statutory-facts-list-compact .statutory-fact .statutory-fact-particulars{grid-column:1/-1}
.statutory-fact-label{display:grid;gap:2px;font-size:12px;font-weight:550;line-height:1.5;padding-right:150px}
.statutory-facts-list-compact .statutory-fact-label{padding-right:0}
.statutory-fact-id{font-size:10px;color:var(--muted);font-weight:400;word-break:break-all}
.statutory-fact-help{color:var(--muted);font-size:11px;line-height:1.6}
.statutory-fact input,.statutory-fact select,.statutory-fact textarea{width:100%;min-width:0;padding:8px 10px;border:1px solid #d4decc;border-radius:6px;background:white;color:var(--ink);font:inherit}
.statutory-fact textarea{resize:vertical}
.statutory-fact-particulars{display:grid;gap:4px;font-size:11px;color:var(--muted)}
.statutory-fact-state{position:absolute;top:10px;right:12px;font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:#8a6a1f;max-width:140px;text-align:right;line-height:1.4}
.statutory-fact.answered .statutory-fact-state{color:#2f6b4f}
.statutory-fact.negative .statutory-fact-state{color:#4c5f72}
.statutory-facts-list-compact .statutory-fact-state{position:static;justify-self:end;max-width:none;text-align:left}
.statutory-fact-why{font-size:11px;line-height:1.6;color:var(--ink);border-top:1px dashed var(--line);padding-top:6px;margin-top:2px}
.statutory-fact-why>summary{cursor:pointer;font-weight:550;color:#7a5a12}
.statutory-fact-why p{margin:6px 0 0;color:var(--muted)}
.statutory-fact-why small{display:block;margin-top:4px;color:var(--muted)}
.checklist-toolbar{margin:4px 0 0}
.checklist-toolbar .review-field{flex:0 1 320px}
.checklist-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px}
.review-metric.applicable strong{color:#2f6b4f}.review-metric.unknown strong{color:#8a6a1f}.review-metric.covered strong{color:#1f5e4d}
.checklist-ask-next h3{margin-top:0}
.checklist-ask-intro{font-size:12px;color:var(--muted);line-height:1.7}
.checklist-ask-list{display:grid;gap:8px;padding-left:22px;margin:0}
.checklist-ask-list li{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:8px 10px;border:1px solid var(--line);border-radius:8px;background:white;font-size:12px;line-height:1.6}
.checklist-ask-list li>div{flex:1;min-width:220px;display:grid;gap:2px}
.checklist-ask-count{color:var(--muted);font-size:11px}
.checklist-ask-jump{white-space:nowrap}
.checklist-item{display:grid;gap:8px;padding:14px 18px;border-top:1px solid var(--line);background:white}
.checklist-item.applicability-not_applicable{background:#fafaf8;color:#4c5a55}
.checklist-item.applicability-unknown{background:#fffdf5}
.checklist-item.status-covered{border-left:4px solid #2f6b4f}
.checklist-item.status-missing{border-left:4px solid #a54032}
.checklist-item.status-deferred{border-left:4px solid #8a6a1f}
.checklist-item.status-not_applicable_confirmed{border-left:4px solid #9aa39e}
.checklist-item.has-draft .checklist-record{outline:2px solid #e2b93b;outline-offset:2px}
.checklist-item-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;align-items:flex-start}
.checklist-item-head h4{margin:0;font-size:14px;flex:1;min-width:220px}
.checklist-badges{display:flex;gap:6px;flex-wrap:wrap}
.checklist-badge{font-size:10px;letter-spacing:.04em;text-transform:uppercase;padding:3px 8px;border-radius:999px;border:1px solid var(--line);background:#f5f6f2;color:var(--muted);white-space:nowrap}
.checklist-badge.severity-mandatory{background:#e8f1ec;color:#1f5e4d;border-color:#b9d3c6}
.checklist-badge.severity-if_applicable{background:#f2f4ef;color:#4c5a55}
.checklist-badge.severity-best_practice{background:#eef2fa;color:#3a5384;border-color:#c8d3ea}
.checklist-badge.applicability-applicable{background:#e8f1ec;color:#1f5e4d;border-color:#b9d3c6}
.checklist-badge.applicability-unknown{background:#fff4d6;color:#7a5a12;border-color:#ecd28c}
.checklist-badge.applicability-not_applicable{background:#f0f0ee;color:#66736e}
.checklist-badge.status-covered{background:#1f5e4d;color:white;border-color:#1f5e4d}
.checklist-badge.status-missing{background:#a54032;color:white;border-color:#a54032}
.checklist-badge.status-deferred{background:#8a6a1f;color:white;border-color:#8a6a1f}
.checklist-badge.status-not_applicable_confirmed{background:#66736e;color:white;border-color:#66736e}
.checklist-requirement{margin:0;font-size:13px;line-height:1.7}
.checklist-authority,.checklist-missing,.checklist-evidence-hint,.checklist-notes,.checklist-template,.checklist-authority{margin:0;font-size:11px;color:var(--muted);line-height:1.7}
.checklist-authority-ref{font-weight:550;color:var(--ink)}
.checklist-reasons{margin:0;padding-left:18px;font-size:11px;color:#7a5a12;line-height:1.7}
.checklist-fact-link{font-size:11px}
.checklist-conclusion{display:grid;gap:10px;padding:12px;border:1px dashed var(--line);border-radius:8px;background:#fbfcfa}
.checklist-conclusion .review-actions{margin:0}
.checklist-evidence h5{margin:0 0 6px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}
.checklist-evidence .review-evidence-row{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-bottom:6px}
.standards-ask h3{margin-top:0}
.standards-ask-form{display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start}
.standards-ask-form textarea{grid-column:1;width:100%;min-width:0;padding:10px 12px;border:1px solid #d4decc;border-radius:6px;background:white;font:inherit;resize:vertical}
.standards-ask-form .standards-ask-counter{grid-column:1;color:var(--muted);font-size:11px}
.standards-ask-form .standards-ask-label{grid-column:1/-1;grid-row:1;font-size:12px;font-weight:600}
.standards-ask-form textarea{grid-row:2}
.standards-ask-form .standards-ask-submit{grid-column:2;grid-row:2}
.standards-ask-scope{margin:0 0 6px}
.standards-ask-stale{margin:0 0 8px;padding:8px 12px;border-radius:6px;font-size:12px;color:#7a2e0e;background:#fff4ed;border:1px solid #f2b08a}
.standards-ask-status{margin:0;font-weight:550;font-size:12px}
.standards-ask-status.status-answered{color:#1f5e4d}.standards-ask-status.status-partial{color:#7a5a12}.standards-ask-status.status-not_covered{color:#a54032}
.standards-ask-not-covered{font-size:12px;line-height:1.7}
.standards-ask-matches{display:grid;gap:10px;padding-left:22px;margin:0}
.standards-ask-match{display:grid;gap:6px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:white;font-size:12px;line-height:1.6}
.standards-ask-match-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:flex-start}
.standards-ask-summary{margin:0;padding:8px 12px;border-left:3px solid var(--accent);background:#f6fbf8;font-style:normal;white-space:pre-wrap;overflow-wrap:anywhere}
.standards-ask-source,.standards-ask-related,.standards-ask-notes{margin:0;font-size:11px;color:var(--muted);line-height:1.7}
.standards-ask-notes{padding-left:18px}
.standards-ask-caveat{margin:8px 0 0;font-size:11px;color:#7a5a12;line-height:1.7;border-top:1px solid var(--line);padding-top:8px}
@media(max-width:760px){.statutory-facts-list-compact .statutory-fact{grid-template-columns:1fr}.statutory-facts-list-compact .statutory-fact-state{justify-self:start}.statutory-fact-label{padding-right:0}.statutory-fact-state{position:static;text-align:left;max-width:none}.statutory-facts-search{max-width:100%}.statutory-facts-only-asked{min-height:36px}.standards-ask-form{grid-template-columns:1fr}.standards-ask-form .standards-ask-submit{grid-column:1;grid-row:auto}.checklist-item{padding:12px}}
