/* Fact Check List — /fact-check/ */
.fc-grid{display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:1.2rem; align-items:start}
@media (max-width:64rem){ .fc-grid{grid-template-columns:minmax(0,1fr)} }
.fc-in{position:sticky; top:calc(var(--bar-h) + 1rem)}
@media (max-width:64rem){ .fc-in{position:static} }
.fc-body{padding:0}
.fc-ta{width:100%; min-height:clamp(14rem,50vh,34rem); max-height:72vh; border:0; border-radius:0; background:transparent; padding:1rem 1.15rem; font:400 1rem/1.65 var(--f-serif); resize:vertical; box-shadow:none}
.fc-ta:focus{outline:none; box-shadow:inset 0 0 0 2px var(--accent-wash)}

/* ── the checklist ─────────────────────────────────────────────────── */
.fc-list{min-width:0}
.fc-head{display:flex; flex-wrap:wrap; align-items:center; gap:.6rem 1rem; margin-bottom:.8rem}
.fc-head .h3{margin-right:auto}
.fc-progress{display:flex; align-items:center; gap:.6rem; font:500 var(--t-sm)/1.3 var(--f-ui); color:var(--ink-2); order:3; width:100%}
.fc-progress:empty{display:none}
.fc-bar{flex:none; display:flex; width:7rem; height:.45rem; border-radius:999px; background:var(--bg-2); overflow:hidden}
.fc-bar i{display:block; height:100%; transition:width .25s}
.fc-bar .ok{background:var(--good)} .fc-bar .bad{background:var(--bad)}
.fc-items{display:flex; flex-direction:column; gap:.6rem}
.fc-empty{font:400 1rem/1.55 var(--f-serif); color:var(--ink-3); padding:1.2rem; border:1px dashed var(--line); border-radius:var(--r-lg)}
.fc-band{font:italic 400 1.05rem/1.2 var(--f-head); color:var(--ink-2); margin:.7rem 0 0; padding-left:.2rem}
.fc-band:first-child{margin-top:0}
.fc-item{--rk:var(--ink-3); position:relative; padding:.85rem 1rem .8rem 1.15rem; background:var(--panel); border:1px solid var(--line); border-radius:var(--r-lg); box-shadow:inset 3px 0 0 var(--rk)}
.fc-item[data-risk="3"],.fc-m[data-risk="3"],.fc-tag[data-risk="3"]{--rk:var(--bad)}
.fc-item[data-risk="2"],.fc-m[data-risk="2"],.fc-tag[data-risk="2"]{--rk:var(--hi)}
.fc-item[data-risk="1"],.fc-m[data-risk="1"],.fc-tag[data-risk="1"]{--rk:var(--ink-3)}
.fc-item[data-state="ok"]{--rk:var(--good); background:linear-gradient(var(--good-wash),var(--good-wash)),var(--panel)}
.fc-item[data-state="bad"]{--rk:var(--bad); background:linear-gradient(var(--bad-wash),var(--bad-wash)),var(--panel)}
.fc-item[data-state="bad"] .fc-s{text-decoration:line-through; text-decoration-color:color-mix(in srgb, var(--bad) 60%, transparent)}
.fc-tags{display:flex; flex-wrap:wrap; gap:.3rem}
.fc-tag{font:600 var(--t-2xs)/1 var(--f-ui); color:var(--ink-2); padding:.3rem .45rem; border-radius:999px; background:color-mix(in srgb, var(--rk) 12%, transparent)}
.fc-s{font:400 1.02rem/1.55 var(--f-serif); color:var(--ink); margin-top:.45rem}
.fc-m{background:color-mix(in srgb, var(--rk) 14%, transparent); color:inherit; border-radius:3px; box-shadow:inset 0 -2px 0 color-mix(in srgb, var(--rk) 65%, transparent); padding:0 .04em}
.fc-why{font:400 var(--t-sm)/1.45 var(--f-ui); color:var(--ink-3); margin-top:.35rem}
.fc-row{display:flex; flex-wrap:wrap; align-items:center; gap:.5rem 1rem; margin-top:.65rem}
.fc-links{display:flex; flex-wrap:wrap; gap:.3rem .9rem}
.fc-links a{font:600 var(--t-sm)/1.3 var(--f-ui); color:var(--accent); text-decoration:none}
.fc-links a:hover{text-decoration:underline}
.fc-mark{margin-left:auto; display:flex; gap:.35rem}
.fc-b{font:600 var(--t-xs)/1 var(--f-ui); padding:.45rem .7rem; border-radius:999px; border:1px solid var(--line); background:var(--field); color:var(--ink-2); cursor:pointer; min-height:2rem}
.fc-b:hover{border-color:var(--ink-3)}
.fc-b.ok[aria-pressed="true"]{background:var(--good); border-color:var(--good); color:#fff}
.fc-b.bad[aria-pressed="true"]{background:var(--bad); border-color:var(--bad); color:#fff}
:root[data-theme="dark"] .fc-b[aria-pressed="true"]{color:#0B0D0E}
@media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .fc-b[aria-pressed="true"]{color:#0B0D0E} }

/* ── after: prompts ────────────────────────────────────────────────── */
.fc-after{display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:1.2rem; margin-top:1.4rem}
@media (max-width:60rem){ .fc-after{grid-template-columns:minmax(0,1fr)} }
.fc-out .panel-body{display:flex; flex-direction:column; gap:.7rem; padding:1rem}
.fc-pre{max-height:16rem; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; margin:0}
.fc-out .panel-foot{display:flex; flex-wrap:wrap; gap:.5rem; align-items:center; padding:.7rem 1rem; border-top:1px solid var(--line-2)}
.fc-faq details{border-top:1px solid var(--line); padding:.8rem 0}
.fc-faq summary{cursor:pointer; font:600 1rem/1.4 var(--f-ui); color:var(--ink)}
.fc-faq p{margin-top:.5rem}
