/* Riskernel site v2, lane C (content engine): teardowns, newsletter, quiz, Fraud Circles, briefing.
   Page-only styles on top of css/cf.css. Everything is prefixed ct-. Components worth promoting to cf.css are
   listed in the lane report (ct-note, ct-entries, ct-signup, ct-opt). */

.ct-h1{font-size:var(--cf-fs-3xl);line-height:var(--cf-lh-tight);letter-spacing:var(--cf-track-h1)}
.ct-h2{font-size:var(--cf-fs-xl)}

/* Honesty note (second-hand detail, how to read the tags) */
.ct-note{margin-top:var(--cf-s-5);padding:var(--cf-s-4) var(--cf-s-5);background:var(--cf-paper-2);border:1px solid var(--cf-line);border-left:3px solid var(--cf-blue-light);border-radius:var(--cf-r-2);font-size:var(--cf-fs-sm);line-height:1.55;color:var(--cf-ink-2)}
.ct-note>* + *{margin-top:var(--cf-s-3)}
.ct-note a{text-decoration:underline}
.ct-note--wide{margin-top:var(--cf-s-7)}
.ct-facts{margin-top:var(--cf-s-4);font-size:var(--cf-fs-sm);color:var(--cf-ink-3)}
.ct-facts span{margin-right:var(--cf-s-2);font-family:var(--cf-font-mono);font-size:var(--cf-fs-xs);text-transform:uppercase;letter-spacing:var(--cf-track-label);color:var(--cf-blue)}

/* Teardown article: wide band for tree and findings, text columns around it */
.ct-wide{margin-top:var(--cf-s-8)}
.cf-article .ct-wide .cf-tree{margin-top:var(--cf-s-6)}
.cf-article .ct-after{margin-top:var(--cf-s-8);counter-reset:cf-sec 1}
.cf-article .cf-article__next{margin-top:var(--cf-s-7)}
.ct-sources{overflow-wrap:anywhere}
.ct-sources li{scroll-margin-top:5rem}
.ct-source-note{font-size:var(--cf-fs-sm);color:var(--cf-ink-3)}
.cf-finding{scroll-margin-top:5rem}
.cf-finding__meta dd{overflow-wrap:anywhere}
.cf-prose a[href^="#src-"]{padding:0 .1em;text-decoration:none;font-family:var(--cf-font-mono);font-size:.85em;color:var(--cf-blue)}
.cf-prose a[href^="#src-"]:hover{text-decoration:underline}
.ct-note a[href^="#src-"]{font-family:var(--cf-font-mono);text-decoration:none;color:var(--cf-blue)}
.ct-aside-title{font-weight:var(--cf-w-semibold);font-size:var(--cf-fs-lg);color:var(--cf-ink)}
.ct-next{font-size:var(--cf-fs-sm);color:var(--cf-ink-3)}
.ct-next a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline}

/* Teardown index */
.ct-entries{list-style:none;margin:var(--cf-s-6) 0 0;padding:0;display:grid;gap:var(--cf-s-4)}
.ct-entry{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--cf-s-2);padding:var(--cf-s-5);background:var(--cf-paper);border:1px solid var(--cf-line);border-radius:var(--cf-r-3);box-shadow:var(--cf-shadow-1)}
.ct-entry__num{font-family:var(--cf-font-mono);font-weight:var(--cf-w-bold);font-size:var(--cf-fs-xl);color:var(--cf-blue)}
.ct-entry__title{font-size:var(--cf-fs-xl)}
.ct-entry__title a{display:inline-block;min-height:44px;color:var(--cf-ink);text-decoration:none}
.ct-entry__title a:hover{color:var(--cf-blue);text-decoration:underline}
.ct-entry__dek{margin-top:var(--cf-s-2);color:var(--cf-ink-3)}
.ct-entry__meta{margin-top:var(--cf-s-3);display:flex;flex-wrap:wrap;gap:var(--cf-s-2);align-items:center;font-size:var(--cf-fs-sm);color:var(--cf-ink-3)}
.ct-entry__meta span{margin-right:var(--cf-s-2)}
@media (min-width:48rem){.ct-entry{grid-template-columns:5rem minmax(0,1fr);gap:var(--cf-s-5);padding:var(--cf-s-6)}}

/* Newsletter landing, briefing */
.ct-split{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--cf-s-7);margin-top:var(--cf-s-6);align-items:start}
.ct-lede{margin-top:0}
.ct-signup{padding:var(--cf-s-5);background:var(--cf-blue-wash);border:1px solid var(--cf-line);border-radius:var(--cf-r-3)}
.ct-signup>* + *{margin-top:var(--cf-s-4)}
.ct-signup__title{font-size:var(--cf-fs-xl)}
.ct-signup .cf-form--inline{padding:0;background:transparent;border:0;box-shadow:none}
.ct-signup--solo{max-width:var(--cf-measure);margin-top:var(--cf-s-6)}
.cf-article__next .cf-form--inline{margin-top:var(--cf-s-3)}
.ct-issues{list-style:none;margin:var(--cf-s-4) 0 0;padding:0}
.ct-issues a{display:flex;flex-wrap:wrap;gap:var(--cf-s-2) var(--cf-s-4);align-items:baseline;min-height:44px;padding:var(--cf-s-3) 0;border-bottom:1px solid var(--cf-line-strong);color:var(--cf-ink);text-decoration:none}
.ct-issues a:hover .ct-issues__t{color:var(--cf-blue);text-decoration:underline}
.ct-issues__no{font-family:var(--cf-font-mono);font-size:var(--cf-fs-sm);font-weight:var(--cf-w-bold);color:var(--cf-blue)}
.ct-issues__t{font-size:var(--cf-fs-lg);font-weight:var(--cf-w-semibold)}
.ct-note-from{font-style:italic}
@media (min-width:62rem){.ct-split{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:var(--cf-s-8)}}

/* Quiz */
.ct-quiz{margin-top:var(--cf-s-6);display:grid;gap:var(--cf-s-5)}
.ct-q{min-width:0;margin:0;padding:var(--cf-s-5);background:var(--cf-paper);border:1px solid var(--cf-line);border-radius:var(--cf-r-3);box-shadow:var(--cf-shadow-1)}
.ct-q legend{float:left;width:100%;padding:0;font-size:var(--cf-fs-lg);font-weight:var(--cf-w-semibold);line-height:1.3;color:var(--cf-ink)}
.ct-q legend + *{clear:both}
.ct-q__no{display:block;margin-bottom:var(--cf-s-2);font-family:var(--cf-font-mono);font-size:var(--cf-fs-xs);font-weight:var(--cf-w-bold);text-transform:uppercase;letter-spacing:var(--cf-track-label);color:var(--cf-blue)}
.ct-opt{display:flex;gap:var(--cf-s-3);align-items:flex-start;min-height:44px;margin-top:var(--cf-s-3);padding:var(--cf-s-3) var(--cf-s-4);border:1px solid var(--cf-line-strong);border-radius:var(--cf-r-2);cursor:pointer;transition:border-color var(--cf-d-1) var(--cf-ease-out),background-color var(--cf-d-1) var(--cf-ease-out)}
.ct-opt:hover{border-color:var(--cf-ink-3)}
.ct-opt:has(input:checked){background:var(--cf-blue-tint);border-color:var(--cf-blue)}
.ct-opt input{flex:0 0 auto;width:1.25rem;height:1.25rem;margin:.1rem 0 0;accent-color:var(--cf-blue)}
.ct-opt span{min-width:0;color:var(--cf-ink-2)}
.ct-quiz__status{margin:0;font-size:var(--cf-fs-sm);color:var(--cf-loss-high)}
.ct-quiz__status:empty{display:none}
.ct-result{margin-top:var(--cf-s-6);scroll-margin-top:5rem}
.ct-result:focus{outline:none}
.ct-band{padding:var(--cf-s-5);background:var(--cf-blue-wash);border:1px solid var(--cf-line-strong);border-left:3px solid var(--cf-blue);border-radius:var(--cf-r-3)}
.ct-band[hidden]{display:none}
.ct-band>* + *{margin-top:var(--cf-s-3)}
.ct-band__label{font-family:var(--cf-font-mono);font-size:var(--cf-fs-xs);font-weight:var(--cf-w-bold);text-transform:uppercase;letter-spacing:var(--cf-track-label);color:var(--cf-blue)}
.ct-band__title{font-size:var(--cf-fs-xl)}
.ct-band__sub{font-weight:var(--cf-w-semibold);color:var(--cf-ink)}
.ct-band ul{padding-left:1.4em}
.ct-band li::marker{color:var(--cf-blue)}
.ct-band [hidden]{display:none}

/* Fraud Circles */
.ct-outline{margin-top:var(--cf-s-6);display:grid;gap:var(--cf-s-6);max-width:var(--cf-measure)}
.ct-outline__item>* + *{margin-top:var(--cf-s-3)}
.ct-outline__item p{color:var(--cf-ink-2)}
.ct-outline__cta{margin-top:var(--cf-s-7)}

/* Blog index (integrator): post cards have no number column, group headings sit between lists */
.ct-entries--posts .ct-entry{grid-template-columns:minmax(0,1fr)}
.ct-group{margin-top:var(--cf-s-8,3rem);font-size:var(--cf-fs-2xl,1.5rem)}
