/* D2 reading and reference templates. Data and publish gates live in other lanes. */
.page-template{min-width:0}.template-heading{margin-bottom:var(--space-6);max-width:52rem}
.template-heading>h1,.template-heading>h2,.template-heading>h3{font-size:var(--text-xl);margin-block:1rem}
.template-heading>p:not(.eyebrow){color:var(--muted);margin-top:.75rem}.template-heading .button{margin-top:1rem}
.review-line{font-size:var(--text-xs);color:var(--muted);font-weight:600}
.topic-grid{display:grid;gap:var(--space-5)}.topic-grid>*{min-width:0}
.topic-card,.fact-card{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}
.topic-card>.eyebrow{margin-bottom:.75rem}.topic-card>h2,.topic-card>h3,.topic-card>h4,.fact-card>h2,.fact-card>h3,.fact-card>h4{font-size:1.25rem;margin-bottom:.75rem;line-height:1.3;letter-spacing:-.025em}
.topic-card>p:not(.eyebrow),.fact-card>p:not(.eyebrow){font-size:var(--text-sm);color:var(--muted)}.fact-card>p+p{margin-top:.75rem}.fact-card>.eyebrow{margin-bottom:.75rem}
.resource-list{list-style:none;padding:0;margin-top:1rem}.resource-list>li{border-top:1px solid var(--subtle);padding-block:.75rem}
.resource-list a{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem 1rem;min-height:44px;font-size:var(--text-sm);font-weight:650;overflow-wrap:anywhere}.resource-list a span{flex-shrink:0}.resource-list .fine{display:block}
.related-tools,.review-box{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft)}
.related-tools>h2,.related-tools>h3,.related-tools>h4,.review-box>h2,.review-box>h3,.review-box>h4{font-size:1.125rem;letter-spacing:-.015em;margin-bottom:.75rem}
.article .related-tools>h2,.article .related-tools>h3,.article .related-tools>h4{margin:0 0 .75rem}
.source-list{margin-top:var(--space-6);padding-top:var(--space-5);border-top:1px solid var(--border)}.source-list>h2,.source-list>h3,.source-list>h4{font-size:1.125rem;letter-spacing:-.015em;margin-bottom:1rem}
.source-list ol{padding-left:1.25rem;font-size:var(--text-sm)}.source-list li+li{margin-top:1rem}.source-list .fine{display:block;margin-top:.3rem}
.alphabet{display:flex;flex-wrap:wrap;gap:.3rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);margin-bottom:var(--space-6)}
.alphabet>a,.alphabet>span{display:grid;place-items:center;min-width:44px;min-height:44px;font-size:var(--text-sm);font-weight:700;border-radius:.35rem}.alphabet>span{color:var(--muted)}.alphabet>a{border:1px solid var(--border)}.alphabet>a:hover{background:var(--accent-soft)}
.glossary-group{margin-top:var(--space-6)}.glossary-group>h2,.glossary-group>h3,.glossary-group>h4{font-size:1.5rem;color:var(--accent);margin-bottom:1rem}
.glossary-group dl>div{padding-block:1.25rem;border-top:1px solid var(--border);scroll-margin-top:1.5rem}.glossary-group dt{font-size:1.125rem;font-weight:750;overflow-wrap:anywhere}.glossary-group dd{margin:.65rem 0 0;color:var(--muted);font-size:var(--text-sm)}
.topic-jumps{margin-bottom:var(--space-6)}.faq-topic+.faq-topic{margin-top:var(--space-6)}.faq-topic>h2,.faq-topic>h3,.faq-topic>h4{font-size:1.25rem;margin-bottom:1rem}
.worked-example{margin-block:var(--space-6);padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.worked-example>h2,.worked-example>h3,.worked-example>h4{font-size:1.25rem;margin-block:.75rem 1rem}.worked-example>p:not(.eyebrow){font-size:var(--text-sm);color:var(--muted)}
.review-box p+p{margin-top:.75rem}.review-box>p{font-size:var(--text-sm);color:var(--muted)}
.principles-list{margin-block:var(--space-6)}.principles-list>section{display:flex;gap:var(--space-5);padding-block:var(--space-5);border-top:1px solid var(--border)}.principles-list>section>div{min-width:0}
.principle-number{color:var(--accent);font-variant-numeric:tabular-nums;font-size:var(--text-sm);font-weight:750}.principles-list h2,.principles-list h3,.principles-list h4{font-size:1.25rem;margin-bottom:.75rem}.principles-list p{color:var(--muted);font-size:var(--text-sm)}
.tool-slot{margin-block:var(--space-6)}.tool-explainer{max-width:var(--measure);margin-block:var(--space-7)}.tool-explainer>h2,.tool-explainer>h3,.tool-explainer>h4{font-size:1.5rem;margin-bottom:1rem}.tool-explainer>p{color:var(--muted)}


/* Findings: words and distinct icons are essential; color is supplementary. */
.quote-result{min-width:0;container:quote-result / inline-size}.quote-summary{display:grid;gap:var(--space-5);padding:var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);margin-bottom:var(--space-5)}.quote-summary>div{min-width:0}
.quote-summary h1,.quote-summary h2,.quote-summary h3{font-size:var(--text-xl);margin-block:1rem}.quote-summary p:not(.eyebrow){color:var(--muted);font-size:var(--text-sm)}
.quote-grade{border-top:1px solid var(--subtle);padding-top:var(--space-5)}.quote-grade .score{flex-wrap:wrap}.quote-summary .quote-grade .score-number{font-size:2.5rem;line-height:1.2;color:var(--ink);font-weight:750;letter-spacing:-.04em;margin-block:.75rem}.score-number>span{font-size:1rem;font-weight:550;letter-spacing:0;color:var(--muted)}
.score-pending{font-weight:750;display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.5rem}.score-pending>span{font-size:2rem}
.reconciliation-notice{margin-bottom:var(--space-5)}.reconciliation-notice h2,.reconciliation-notice h3,.reconciliation-notice h4{font-size:1.125rem;line-height:1.4;margin-bottom:.75rem}.reconciliation-notice p+p{margin-top:.75rem}.reconciliation-notice .fine{color:inherit}
.inference-note{padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-soft);font-size:var(--text-sm);margin-bottom:var(--space-5)}.inference-note ul{padding-left:1.25rem;margin-block:.5rem}
.findings-list{list-style:none;padding:0;display:grid;gap:var(--space-5)}
.finding{--finding-ink:var(--ink);--finding-bg:var(--surface-soft);padding:var(--space-5);border:1px solid var(--border);border-left:4px solid var(--finding-ink);border-radius:var(--radius);background:var(--surface);min-width:0}
.finding--red{--finding-ink:var(--danger-ink);--finding-bg:var(--danger-bg)}.finding--amber{--finding-ink:var(--warning-ink);--finding-bg:var(--warning-bg)}.finding--green{--finding-ink:var(--accent-ink);--finding-bg:var(--accent-soft)}
.finding .finding-severity{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;width:fit-content;max-width:100%;background:var(--finding-bg);color:var(--finding-ink);padding:.35rem .6rem;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:750;margin-bottom:1rem;overflow-wrap:anywhere}.finding-severity svg{width:1rem;height:1rem}
.finding h2,.finding h3,.finding h4,.finding h5{font-size:1.25rem;line-height:1.3;margin-bottom:.75rem}.finding>p:not(.finding-severity){font-size:var(--text-sm);color:var(--muted)}
.finding-amount{margin-top:1rem}.finding-amount strong{color:var(--ink);font-variant-numeric:tabular-nums}
.reply-block{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--canvas)}.reply-block blockquote{margin:.75rem 0 1rem;font-size:var(--text-sm);overflow-wrap:anywhere}.reply-block .field-label{color:var(--ink)}
.copy-controls{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem}.manual-copy{margin-top:.75rem}.copy-status:empty{display:none}.report-limits{margin-top:var(--space-5)}
.negotiation-worksheet{max-width:55rem}.worksheet-context{padding:1.25rem;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-soft);margin-bottom:var(--space-6)}.worksheet-context h2,.worksheet-context h3,.worksheet-context h4{font-size:1.125rem;margin-bottom:.75rem}.worksheet-context p{font-size:var(--text-sm);color:var(--muted)}
.worksheet-questions{padding-left:1.5rem}.worksheet-questions>li{padding-left:.5rem;margin-top:var(--space-6);break-inside:avoid}.worksheet-questions h2,.worksheet-questions h3,.worksheet-questions h4{font-size:1.25rem;line-height:1.4}.worksheet-questions blockquote{margin:1rem 0;color:var(--muted);font-size:var(--text-sm)}
.write-in{color:var(--muted);font-size:var(--text-xs)}.write-in>div{height:2rem;border-bottom:1px solid var(--input-border)}.worksheet-reminder{margin-top:var(--space-6)}.print-attribution{margin-top:var(--space-6);padding-top:1rem;border-top:1px solid var(--border);font-size:var(--text-xs);color:var(--muted)}
@media(min-width:48rem){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* A result can occupy one half of a wide page. Split its summary only when
 * the component itself has room; the fallback stays in one readable column. */
@media screen{
 @container quote-result (min-width:48rem){.quote-summary{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--space-6);padding:var(--space-6)}.quote-grade{border-top:0;border-left:1px solid var(--subtle);padding:0 0 0 var(--space-6)}}
}
@media(forced-colors:active){.finding,.reply-block,.quote-summary,.fact-card,.review-box,.topic-card{border-color:CanvasText}.finding-severity,.preview-note{border:1px solid CanvasText}.finding{border-left-width:4px}.write-in>div{border-color:CanvasText}}
