/* Reference blocks shared by the CSE pages and their companion pages
   (summary panel, court decisions, procedure cards, letter template, update log).
   Loaded after cse-editorial-v2.css. Text sizes follow the floors of readability.css:
   running text 16-17 px, cards and tables 15 px, notes 14 px, meta 13 px, labels 11 px. */

.cse-editorial-v2 .ref-crumb { margin: 0 0 18px; color: var(--muted); font: 400 13px/1.5 var(--sans); }
.cse-editorial-v2 .ref-crumb a,
.cse-editorial-v2 .cse-brief a,
.cse-editorial-v2 .ref-answer a,
.cse-editorial-v2 .ref-prose a,
.cse-editorial-v2 .ref-points a,
.cse-editorial-v2 .ref-note a,
.cse-editorial-v2 .ref-caveat a,
.cse-editorial-v2 .ref-cite a,
.cse-editorial-v2 .cse-heading > p a,
.cse-editorial-v2 .faq-list p a { color: var(--brick); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; }

/* Summary panel ("En bref") */
.cse-editorial-v2 .cse-brief-section { padding-top: 0; padding-bottom: 60px; }
.cse-editorial-v2 .cse-brief { border: 1px solid var(--line-strong); background: var(--paper-soft); }
.cse-editorial-v2 .cse-brief-head { padding: 20px 28px; border-bottom: 1px solid var(--line-strong); display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: 8px 20px; }
.cse-editorial-v2 .cse-brief-head h2 { margin: 0; font-family: var(--serif); font-size: 30px; font-weight: 500; letter-spacing: -0.02em; line-height: 1.1; }
.cse-editorial-v2 .cse-brief-head p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.5; }
.cse-editorial-v2 .cse-brief dl { margin: 0; }
.cse-editorial-v2 .cse-brief dl > div { padding: 18px 28px; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 6px 28px; }
.cse-editorial-v2 .cse-brief dl > div:last-child { border-bottom: 0; }
.cse-editorial-v2 .cse-brief dt { padding-top: 4px; color: var(--brick); font: 600 11px/1.5 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.cse-editorial-v2 .cse-brief dd { margin: 0; color: var(--ink); font-size: 16px; line-height: 1.6; }

/* Short answer at the top of a companion page */
.cse-editorial-v2 .ref-answer { max-width: 900px; padding: 26px 28px; border: 1px solid var(--line-strong); background: var(--paper-soft); }
.cse-editorial-v2 .ref-answer > span { display: block; margin-bottom: 12px; color: var(--brick); font: 600 11px/1.5 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.cse-editorial-v2 .ref-answer p { margin: 0; color: var(--ink); font-family: var(--serif); font-size: 21px; line-height: 1.48; }
.cse-editorial-v2 .ref-answer p + p { margin-top: 14px; }

/* Cards: procedure, health levers, legal texts */
.cse-editorial-v2 .cse-procedure { border-bottom: 1px solid var(--line); background: var(--paper-deep); }
.cse-editorial-v2 .cse-related { border-top: 1px solid var(--line); background: var(--paper-deep); }
.cse-editorial-v2 .ref-section-alt { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: var(--paper-deep); }
.cse-editorial-v2 .ref-grid { margin-top: 35px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }
.cse-editorial-v2 .health-grid + .ref-grid { margin-top: 18px; }
.cse-editorial-v2 .ref-grid > article { padding: 28px; border: 1px solid var(--line); display: flex; flex-direction: column; background: var(--paper-soft); }
.cse-editorial-v2 .ref-grid > article > span { color: var(--brick); font: 600 11px/1.4 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.cse-editorial-v2 .ref-grid h3 { margin: 22px 0 12px; font-family: var(--serif); font-size: 26px; font-weight: 500; letter-spacing: -0.01em; line-height: 1.14; }
.cse-editorial-v2 .ref-grid p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.62; }
.cse-editorial-v2 .ref-grid p + p { margin-top: 10px; }
.cse-editorial-v2 .ref-grid > article > div { margin-top: auto; padding-top: 20px; display: flex; flex-wrap: wrap; gap: 8px 22px; }
.cse-editorial-v2 .ref-grid a { color: var(--brick); font-size: 14px; font-weight: 600; text-decoration: underline; text-underline-offset: 4px; }
.cse-editorial-v2 .ref-subhead { margin: 52px 0 0; font-family: var(--serif); font-size: 30px; font-weight: 500; letter-spacing: -0.02em; line-height: 1.12; }
.cse-editorial-v2 .ref-caveat { max-width: 860px; margin: 20px 0 0; color: var(--muted); font-size: 14px; line-height: 1.6; }
.cse-editorial-v2 .ref-more { margin: 22px 0 0; }

/* Court decisions: full table and short list */
.cse-editorial-v2 .ruling-table { width: 100%; margin-top: 35px; border-collapse: collapse; border-top: 1px solid var(--line-strong); }
.cse-editorial-v2 .ruling-table caption { padding: 0 0 14px; color: var(--muted); font-size: 14px; line-height: 1.5; text-align: left; caption-side: top; }
.cse-editorial-v2 .ruling-table th { padding: 13px 20px 13px 0; border-bottom: 1px solid var(--line-strong); color: var(--muted); font: 600 11px/1.4 var(--mono); letter-spacing: 0.08em; text-align: left; text-transform: uppercase; }
.cse-editorial-v2 .ruling-table td { padding: 24px 22px 24px 0; border-bottom: 1px solid var(--line); color: var(--ink-soft); font-size: 15px; line-height: 1.6; vertical-align: top; }
.cse-editorial-v2 .ruling-table tr > :nth-child(1) { width: 22%; }
.cse-editorial-v2 .ruling-table tr > :nth-child(2) { width: 26%; }
.cse-editorial-v2 .ruling-table tr > :nth-child(3) { width: 33%; }
.cse-editorial-v2 .ruling-table tr > :nth-child(4) { width: 19%; padding-right: 0; }
.cse-editorial-v2 .ruling-table tr:target td { background: var(--paper-soft); }
.cse-editorial-v2 .ruling-date { display: block; color: var(--ink); font-family: var(--serif); font-size: 22px; font-weight: 500; line-height: 1.2; }
.cse-editorial-v2 .ruling-court { display: block; margin-top: 7px; color: var(--ink); font-size: 15px; font-weight: 600; line-height: 1.4; }
.cse-editorial-v2 .ruling-ref { display: block; margin-top: 4px; color: var(--muted); font-size: 13px; line-height: 1.45; }
.cse-editorial-v2 .ruling-tag { display: inline-block; margin: 0 0 10px; padding: 4px 9px; border: 1px solid var(--line-strong); color: var(--ink); background: var(--paper-soft); font: 600 11px/1.35 var(--mono); letter-spacing: 0.05em; text-transform: uppercase; }
.cse-editorial-v2 .ruling-tag.is-yes { border-color: var(--prevention); color: var(--prevention); }
.cse-editorial-v2 .ruling-tag.is-no { border-color: var(--muted); color: var(--ink-soft); }
.cse-editorial-v2 .ruling-tag.is-health { border-color: var(--brick); color: var(--brick); }
.cse-editorial-v2 .ruling-table td p { margin: 0; }
.cse-editorial-v2 .ruling-table td a { display: block; margin-bottom: 9px; color: var(--brick); font-size: 14px; font-weight: 600; line-height: 1.45; text-decoration: underline; text-underline-offset: 3px; }
.cse-editorial-v2 .ruling-brief { margin: 24px 0 0; padding: 0; border-top: 1px solid var(--line-strong); list-style: none; }
.cse-editorial-v2 .ruling-brief li { padding: 17px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 140px minmax(0, 1fr) 230px; align-items: start; gap: 8px 26px; }
.cse-editorial-v2 .ruling-brief time { padding-top: 2px; color: var(--brick); font: 600 12px/1.6 var(--mono); letter-spacing: 0.04em; }
.cse-editorial-v2 .ruling-brief strong { color: var(--ink); font-size: 15px; }
.cse-editorial-v2 .ruling-brief p { margin: 2px 0 0; color: var(--ink-soft); font-size: 15px; line-height: 1.55; }
.cse-editorial-v2 .ruling-brief .ruling-tag { margin: 2px 0 0; justify-self: start; }

.cse-editorial-v2 .ref-cite { margin: 18px 0 0; color: var(--muted); font-size: 15px; line-height: 1.6; }
.cse-editorial-v2 .ref-grid p a { font-size: inherit; }
.cse-editorial-v2 .ruling-brief strong a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }

/* Reading column, numbered takeaways, notes */
.cse-editorial-v2 .ref-prose { max-width: 820px; margin-top: 30px; }
.cse-editorial-v2 .ref-prose p, .cse-editorial-v2 .ref-prose li { color: var(--ink-soft); font-size: 17px; line-height: 1.65; }
.cse-editorial-v2 .ref-prose p { margin: 0 0 16px; }
.cse-editorial-v2 .ref-prose ul, .cse-editorial-v2 .ref-prose ol { margin: 0 0 16px; padding-left: 22px; }
.cse-editorial-v2 .ref-prose li { margin-bottom: 8px; }
.cse-editorial-v2 .ref-points { max-width: 900px; margin: 35px 0 0; padding: 0; border-top: 1px solid var(--line-strong); list-style: none; counter-reset: point; }
.cse-editorial-v2 .ref-points > li { padding: 24px 0; border-bottom: 1px solid var(--line); display: grid; grid-template-columns: 56px minmax(0, 1fr); gap: 0 18px; counter-increment: point; }
.cse-editorial-v2 .ref-points > li::before { padding-top: 5px; color: var(--brick); content: counter(point, decimal-leading-zero); font: 600 12px/1.4 var(--mono); letter-spacing: 0.08em; }
.cse-editorial-v2 .ref-points h3 { margin: 0 0 8px; font-family: var(--serif); font-size: 24px; font-weight: 500; line-height: 1.2; }
.cse-editorial-v2 .ref-points p { margin: 0; color: var(--ink-soft); font-size: 16px; line-height: 1.65; }
.cse-editorial-v2 .ref-note { max-width: 900px; margin-top: 30px; padding: 22px 24px; border: 1px solid var(--line); background: var(--paper-soft); }
.cse-editorial-v2 .ref-note > strong { display: block; margin-bottom: 8px; color: var(--muted); font: 600 11px/1.5 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.cse-editorial-v2 .ref-note p { margin: 0; color: var(--ink-soft); font-size: 15px; line-height: 1.65; }
.cse-editorial-v2 .ref-note p + p { margin-top: 10px; }

/* Situations table (when to update the risk assessment) */
.cse-editorial-v2 .ref-table { width: 100%; margin-top: 35px; border-collapse: collapse; border-top: 1px solid var(--line-strong); }
.cse-editorial-v2 .ref-table th { padding: 13px 20px 13px 0; border-bottom: 1px solid var(--line-strong); color: var(--muted); font: 600 11px/1.4 var(--mono); letter-spacing: 0.08em; text-align: left; text-transform: uppercase; }
.cse-editorial-v2 .ref-table td { padding: 20px 22px 20px 0; border-bottom: 1px solid var(--line); color: var(--ink-soft); font-size: 15px; line-height: 1.6; vertical-align: top; }
.cse-editorial-v2 .ref-table td:first-child { width: 34%; color: var(--ink); font-weight: 600; }
.cse-editorial-v2 .ref-table td:last-child { padding-right: 0; }

/* Letter template */
.cse-editorial-v2 .letter-sheet { max-width: 880px; margin-top: 35px; padding: 42px 46px; border: 1px solid var(--line-strong); color: var(--ink); background: #fffdf8; font-family: var(--serif); font-size: 18px; line-height: 1.62; }
.cse-editorial-v2 .letter-sheet p { margin: 0 0 16px; }
.cse-editorial-v2 .letter-sheet ol { margin: 0 0 16px; padding-left: 26px; }
.cse-editorial-v2 .letter-sheet li { margin-bottom: 8px; }
.cse-editorial-v2 .letter-sheet .letter-object { font-weight: 600; }
.cse-editorial-v2 .letter-sheet .ph { padding: 1px 5px; color: var(--brick); background: var(--paper-deep); font-family: var(--sans); font-size: 15px; }
.cse-editorial-v2 .letter-actions { margin-top: 18px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; }
.cse-editorial-v2 .letter-actions [role="status"] { color: var(--muted); font-size: 14px; }

/* Update log */
.cse-editorial-v2 .update-log { max-width: 900px; margin-top: 36px; padding-top: 22px; border-top: 1px solid var(--line-strong); }
.cse-editorial-v2 .update-log h3 { margin: 0 0 10px; color: var(--muted); font: 600 11px/1.5 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
.cse-editorial-v2 .update-log ol { margin: 0; padding: 0; list-style: none; }
.cse-editorial-v2 .update-log li { padding: 8px 0; display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 2px 24px; color: var(--ink-soft); font-size: 14px; line-height: 1.6; }
.cse-editorial-v2 .update-log time { color: var(--ink); font-weight: 600; }

/* Related pages */
.cse-editorial-v2 .ref-links { margin-top: 35px; border-top: 1px solid var(--line-strong); border-left: 1px solid var(--line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.cse-editorial-v2 .ref-links a { padding: 22px 24px 24px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); display: flex; flex-direction: column; gap: 8px; color: inherit; background: var(--paper-soft); text-decoration: none; }
.cse-editorial-v2 .ref-links a strong { font-family: var(--serif); font-size: 21px; font-weight: 500; line-height: 1.2; }
.cse-editorial-v2 .ref-links a span { color: var(--muted); font-size: 14px; line-height: 1.5; }
.cse-editorial-v2 .ref-links a:hover { background: #ede5d8; }
.cse-editorial-v2 .ref-links a:hover strong { color: var(--brick); }

@media (max-width: 900px) {
  .cse-editorial-v2 .ref-links { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cse-editorial-v2 .ruling-brief li { grid-template-columns: 120px minmax(0, 1fr); }
  .cse-editorial-v2 .ruling-brief .ruling-tag { grid-column: 2; }
  .cse-editorial-v2 .ruling-table, .cse-editorial-v2 .ruling-table tbody, .cse-editorial-v2 .ruling-table tr, .cse-editorial-v2 .ruling-table td,
  .cse-editorial-v2 .ref-table, .cse-editorial-v2 .ref-table tbody, .cse-editorial-v2 .ref-table tr, .cse-editorial-v2 .ref-table td { display: block; width: 100% !important; }
  .cse-editorial-v2 .ruling-table thead, .cse-editorial-v2 .ref-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
  .cse-editorial-v2 .ruling-table caption { display: block; }
  .cse-editorial-v2 .ruling-table tr, .cse-editorial-v2 .ref-table tr { padding: 22px 0; border-bottom: 1px solid var(--line); }
  .cse-editorial-v2 .ruling-table td, .cse-editorial-v2 .ref-table td { padding: 0 0 14px; border: 0; }
  .cse-editorial-v2 .ruling-table td:last-child, .cse-editorial-v2 .ref-table td:last-child { padding-bottom: 0; }
  .cse-editorial-v2 .ruling-table td[data-label]::before, .cse-editorial-v2 .ref-table td[data-label]::before { display: block; margin-bottom: 4px; color: var(--muted); content: attr(data-label); font: 600 11px/1.4 var(--mono); letter-spacing: 0.08em; text-transform: uppercase; }
}
@media (max-width: 760px) {
  .cse-editorial-v2 .cse-brief-section { padding-bottom: 44px; }
  .cse-editorial-v2 .cse-brief-head, .cse-editorial-v2 .cse-brief dl > div { padding-inline: 20px; }
  .cse-editorial-v2 .cse-brief dl > div, .cse-editorial-v2 .update-log li, .cse-editorial-v2 .ruling-brief li { grid-template-columns: 1fr; }
  .cse-editorial-v2 .ruling-brief .ruling-tag { grid-column: 1; }
  .cse-editorial-v2 .ref-grid, .cse-editorial-v2 .ref-links { grid-template-columns: 1fr; }
  .cse-editorial-v2 .ref-grid > article { padding: 24px; }
  .cse-editorial-v2 .ref-answer { padding: 22px 20px; }
  .cse-editorial-v2 .ref-answer p { font-size: 19px; }
  .cse-editorial-v2 .ref-points > li { grid-template-columns: 40px minmax(0, 1fr); gap: 0 10px; }
  .cse-editorial-v2 .ref-subhead { margin-top: 40px; font-size: 26px; }
  .cse-editorial-v2 .letter-sheet { padding: 26px 20px; font-size: 17px; }
}
@media print {
  .cse-editorial-v2 .site-system-header, .cse-editorial-v2 .site-system-footer, .cse-editorial-v2 .cse-actions, .cse-editorial-v2 .letter-actions, .cse-editorial-v2 .cse-related { display: none !important; }
  .cse-editorial-v2 .letter-sheet { max-width: none; padding: 0; border: 0; background: #fff; }
}
