/* Private editorial pilot. Bootstrap and the approved library tokens load first. */
.daily-pilot { --daily-paper:#fffefa; --daily-green:#236253; --daily-dark:#183c32; --daily-pale:#edf2ed; background:var(--daily-paper); color:var(--ink); }
.daily-pilot a { text-underline-offset:.2em; }
.daily-pilot a:hover { text-decoration:underline; }
.daily-pilot :focus-visible { outline:3px solid #725600; outline-offset:4px; }
.daily-pilot .container-xl { max-width:1180px; }
.daily-header { background:#fff; border-bottom:1px solid var(--line); }
.daily-header .container-xl { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:82px; }
.daily-brand { font-size:20px; font-weight:800; letter-spacing:-.03em; color:var(--daily-dark); }
.daily-brand small { display:block; margin-top:1px; font-size:11px; font-weight:550; letter-spacing:.04em; color:var(--muted); }
.daily-nav { display:flex; gap:25px; align-items:center; font-size:14px; }
.daily-nav a[aria-current=page] { font-weight:750; border-bottom:2px solid var(--daily-green); }
.private-bar { padding:10px 0; background:var(--daily-pale); border-bottom:1px solid #d7e1d7; font-size:12px; color:#375b4b; }
.private-bar .container-xl { display:flex; justify-content:space-between; gap:15px; flex-wrap:wrap; }
.private-bar strong { font-weight:750; }
.edition-top { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding-top:37px; color:var(--muted); font-size:12px; letter-spacing:.03em; }
.editorial-hero { display:grid; grid-template-columns:minmax(0,1fr) 245px; gap:60px; padding:23px 0 35px; border-bottom:3px solid var(--daily-dark); }
.editorial-hero h1 { margin:0 0 17px; font-size:clamp(35px,4.4vw,55px); line-height:1.25; letter-spacing:-.055em; font-weight:800; color:var(--daily-dark); word-break:keep-all; overflow-wrap:anywhere; }
.editorial-hero .lead { font-size:18px; line-height:1.8; margin:0; color:#4e6459; max-width:760px; }
.edition-guide { align-self:end; border-top:1px solid #688879; padding-top:15px; }
.edition-guide h2 { font-size:12px; letter-spacing:.06em; font-weight:750; margin:0 0 9px; }
.edition-guide p { font-size:13px; line-height:1.75; margin:0 0 8px; }
.edition-guide .status-label { display:inline-block; color:#725600; background:#f7f1dd; padding:3px 8px; font-size:11px; }
.section-title { font-size:20px; font-weight:750; color:var(--daily-dark); margin:0; }
.filter-bar { display:flex; flex-wrap:wrap; gap:8px; margin:17px 0 11px; }
.filter-button { background:#fff; border:1px solid #cad7ce; border-radius:4px; min-height:40px; padding:7px 13px; color:#415c4e; font-size:13px; cursor:pointer; }
.filter-button span { margin-left:5px; font-variant-numeric:tabular-nums; opacity:.8; }
.filter-button[aria-pressed=true] { background:var(--daily-green); color:#fff; border-color:var(--daily-green); }
.filter-button:hover { border-color:var(--daily-green); }
.list-heading { display:flex; justify-content:space-between; align-items:baseline; gap:16px; padding-top:32px; }
.filter-status { font-size:12px; color:var(--muted); margin:0 0 10px; }
.article-list { list-style:none; margin:0; padding:0; }
.article-list > li { padding:28px 0; border-top:1px solid #d9e1da; }
.article-row { display:grid; grid-template-columns:54px minmax(0,1fr) 138px; gap:18px; }
.article-number { font-size:32px; font-weight:350; line-height:1.2; color:#8aa292; font-variant-numeric:tabular-nums; }
.article-kicker { display:flex; gap:9px; flex-wrap:wrap; align-items:center; margin-bottom:9px; font-size:11px; color:#526d5c; }
.domain-label { font-weight:800; color:var(--daily-green); }
.article-row h2 { font-size:24px; font-weight:750; line-height:1.45; letter-spacing:-.035em; margin:0 0 9px; word-break:keep-all; overflow-wrap:anywhere; }
.article-row h2 a { color:var(--daily-dark); }
.article-row p { font-size:14px; line-height:1.8; margin:0; color:#55685e; word-break:keep-all; overflow-wrap:anywhere; }
.article-side { text-align:right; align-self:center; color:var(--muted); font-size:12px; }
.article-side a { display:block; font-weight:700; margin-top:12px; }
.empty-state { border-top:1px solid var(--line); padding:34px 18px; background:#f4f6f0; color:#516557; text-align:center; font-size:14px; }
.editorial-note { margin:34px 0 42px; padding:22px 25px; border-top:1px solid #aec0b0; background:#f0f4ed; }
.editorial-note h2 { font-size:14px; font-weight:800; margin-bottom:8px; }
.editorial-note p { font-size:13px; line-height:1.85; margin:0; }
.daily-footer { border-top:1px solid var(--line); padding:22px 0 28px; font-size:12px; color:var(--muted); }
.daily-footer .container-xl { display:flex; justify-content:space-between; gap:18px; flex-wrap:wrap; }
.article-shell { max-width:950px; padding-top:28px; }
.article-breadcrumb { font-size:12px; color:var(--muted); margin-bottom:25px; }
.article-header { padding-bottom:28px; border-bottom:2px solid var(--daily-dark); }
.article-header h1 { font-size:clamp(29px,3.6vw,43px); font-weight:800; line-height:1.38; letter-spacing:-.05em; margin:9px 0 19px; color:var(--daily-dark); word-break:keep-all; overflow-wrap:anywhere; }
.article-header .lead { font-size:18px; line-height:1.85; color:#4b6355; margin-bottom:20px; }
.article-meta { font-size:12px; color:var(--muted); display:flex; gap:17px; flex-wrap:wrap; }
.article-body { max-width:800px; margin:0 auto; }
.editorial-section { margin:31px 0; }
.section-kind { display:inline-block; font-size:11px; font-weight:750; padding:3px 8px; margin-bottom:10px; background:#e7efe7; color:#335e47; }
.kind-analysis .section-kind { color:#50645e; background:#edf0ee; }
.kind-check .section-kind { color:#785915; background:#f5efd9; }
.editorial-section h2 { font-size:21px; font-weight:750; line-height:1.5; margin:0 0 12px; color:var(--daily-dark); word-break:keep-all; }
.editorial-section p { font-size:16px; line-height:1.95; margin:0 0 12px; word-break:keep-all; overflow-wrap:anywhere; }
.section-references { margin:9px 0 0; font-size:11px; color:var(--muted); }
.section-references a { font-weight:650; margin-right:8px; }
.limitations { padding:20px 23px; border-top:1px solid #baa977; background:#f7f3e8; margin:28px 0; }
.limitations h2 { font-size:14px; font-weight:750; margin:0 0 10px; }
.limitations ul { padding-left:18px; margin:0; font-size:13px; line-height:1.85; }
.source-ledger { border-top:2px solid var(--daily-green); padding-top:18px; margin:34px 0; }
.source-ledger h2 { font-size:18px; font-weight:750; margin-bottom:14px; }
.source-list { list-style:none; padding:0; margin:0; }
.source-item { border-top:1px solid var(--line); padding:15px 0; font-size:12px; line-height:1.8; overflow-wrap:anywhere; }
.source-item:first-child { border-top:0; padding-top:0; }
.source-item h3 { font-size:13px; line-height:1.6; font-weight:750; margin:0 0 4px; }
.source-item .source-meta { color:#5c6e62; margin:2px 0; }
.source-item .source-url { font-size:10px; }
.article-bottom { display:flex; justify-content:space-between; gap:16px; flex-wrap:wrap; border-top:1px solid var(--line); padding:23px 0 35px; }
.print-toolbar { padding:19px 24px; background:#fff; border-bottom:1px solid var(--line); display:flex; gap:16px; align-items:center; flex-wrap:wrap; font-size:13px; }
.print-toolbar p { flex:1 1 300px; margin:0; color:var(--muted); }
.print-preview { background:#e6ece7; padding:18px 0; }
.sheet { box-sizing:border-box; width:210mm; height:297mm; position:relative; padding:25mm 19mm 21mm; margin:0 auto 18px; background:var(--daily-paper); break-after:page; }
.sheet:last-child { break-after:auto; margin-bottom:0; }
.sheet .flow { display:flow-root; }
.running { position:absolute; left:19mm; right:19mm; top:11mm; display:flex; justify-content:space-between; gap:4mm; padding-bottom:2.5mm; border-bottom:.3mm solid #9fb4a4; color:#536d5c; font-size:8pt; line-height:1.4; }
.folio { position:absolute; left:19mm; right:19mm; bottom:10mm; display:flex; justify-content:space-between; gap:5mm; border-top:.25mm solid #a9bba9; padding-top:2.5mm; color:#556c5c; font-size:7.5pt; line-height:1.5; }
.folio b { color:var(--daily-dark); font-size:10pt; flex-shrink:0; font-variant-numeric:tabular-nums; }
.sheet h1 { color:var(--daily-dark); font-size:25pt; font-weight:800; line-height:1.38; letter-spacing:-.04em; margin:2mm 0 5mm; word-break:keep-all; overflow-wrap:anywhere; }
.sheet .lead { font-size:11.8pt; line-height:1.7; margin:0 0 5mm; color:#4d6556; }
.sheet .article-kicker { font-size:8pt; gap:3mm; margin:0 0 3mm; }
.sheet .article-meta { font-size:8pt; margin-bottom:4mm; }
.sheet .editorial-section { margin:3.5mm 0; }
.sheet .section-kind { font-size:7pt; padding:.5mm 1.7mm; margin-bottom:1.5mm; }
.sheet .editorial-section h2 { font-size:11.7pt; line-height:1.4; margin:0 0 1.5mm; }
.sheet .editorial-section p { font-size:10pt; line-height:1.65; margin:0 0 1.6mm; }
.sheet .section-references { font-size:7pt; margin:1mm 0 0; }
.sheet .limitations { padding:2.7mm 3mm; margin:4mm 0; }
.sheet .limitations h2 { font-size:8.5pt; margin:0 0 1.3mm; }
.sheet .limitations ul { font-size:8pt; line-height:1.55; padding-left:3.7mm; }
.sheet .source-ledger { margin:4mm 0 0; padding-top:2.2mm; border-top:.5mm solid var(--daily-green); }
.sheet .source-ledger h2 { font-size:9.2pt; margin:0 0 2mm; }
.sheet .source-item { font-size:7.1pt; line-height:1.45; padding:1.9mm 0; }
.sheet .source-item h3 { font-size:7.6pt; line-height:1.5; margin:0; }
.sheet .source-item .source-meta { margin:.5mm 0; }
.sheet .source-item .source-url { font-size:6.9pt; line-height:1.3; }
.sheet .article-body { max-width:none; margin:0; }
.cover .cover-brand { font-size:16pt; font-weight:800; border-top:1.7mm solid var(--daily-dark); padding-top:5mm; margin-top:6mm; }
.cover .cover-edition { margin:13mm 0 5mm; color:#58755f; font-size:10pt; letter-spacing:.05em; }
.cover h1 { font-size:38pt; line-height:1.28; margin-bottom:7mm; }
.cover .cover-rule { width:30mm; height:1mm; background:#7b997f; margin:9mm 0; }
.cover .lead { font-size:14pt; line-height:1.75; max-width:155mm; }
.cover .cover-contents { margin-top:11mm; border-top:.5mm solid var(--daily-green); }
.cover-contents h2 { font-size:11pt; margin:4mm 0 1mm; }
.cover-contents ol { list-style:none; padding:0; margin:0; }
.cover-contents li { display:flex; justify-content:space-between; gap:4mm; border-bottom:.25mm solid #cad7ca; padding:3.1mm 0; font-size:10pt; }
.cover-contents li span { min-width:0; overflow-wrap:anywhere; }
.cover-contents li b { color:var(--daily-green); flex-shrink:0; }
.cover .cover-note { margin-top:10mm; padding:4mm; background:var(--daily-pale); font-size:9pt; line-height:1.7; }
.cover .cover-note strong { display:block; margin-bottom:1.4mm; }
.print-preview a { text-decoration:none; }
@media (max-width:720px) {
  .daily-pilot .container-xl { padding-inline:20px; }
  .daily-header .container-xl { min-height:73px; gap:12px; }
  .daily-brand { font-size:18px; }
  .daily-nav { font-size:12px; gap:15px; }
  .private-bar { font-size:11px; }
  .edition-top { padding-top:25px; }
  .editorial-hero { display:block; padding:21px 0 27px; }
  .editorial-hero h1 { font-size:36px; }
  .editorial-hero .lead { font-size:16px; }
  .edition-guide { margin-top:25px; }
  .edition-guide p { font-size:12px; }
  .list-heading { padding-top:25px; }
  .filter-bar { gap:7px; }
  .filter-button { min-height:42px; font-size:12px; padding-inline:10px; }
  .article-row { grid-template-columns:31px minmax(0,1fr); gap:12px; }
  .article-number { font-size:24px; }
  .article-row h2 { font-size:21px; }
  .article-row p { font-size:13px; }
  .article-side { grid-column:2; text-align:left; }
  .article-side a { display:inline-block; margin:0 0 0 14px; }
  .editorial-note { padding:19px; }
  .article-header .lead { font-size:16px; }
  .editorial-section p { font-size:15px; }
  .editorial-section h2 { font-size:19px; }
  .article-meta { gap:8px 15px; }
}
@media screen and (max-width:850px) {
  .print-preview { padding:12px 0; }
  .sheet { width:100%; height:auto; min-height:0; padding:22px 20px; margin:0 0 12px; }
  .running,.folio { position:static; padding-block:10px; margin-bottom:20px; }
  .folio { margin:24px 0 0; }
  .sheet h1 { font-size:28px; }
  .sheet .lead { font-size:16px; }
  .sheet .editorial-section h2 { font-size:18px; }
  .sheet .editorial-section p { font-size:14px; }
  .sheet .source-item,.sheet .source-item h3,.sheet .source-item .source-url { font-size:11px; }
  .sheet .limitations ul { font-size:12px; }
  .cover h1 { font-size:38px; }
  .cover .lead { font-size:17px; }
}
@media print {
  @page { size:A4; margin:0; }
  html,body.daily-pilot { background:#fff; margin:0; }
  /* The shared library prints only its own preview by default. This standalone
     editorial document has a different, explicitly scoped print surface. */
  body.daily-pilot > .print-preview { display:block !important; }
  .print-toolbar,.skip-link { display:none !important; }
  .print-preview { padding:0; background:#fff; }
  .sheet { margin:0; box-shadow:none; }
  .daily-pilot * { -webkit-print-color-adjust:exact; print-color-adjust:exact; }
}
@media (prefers-reduced-motion:reduce) { .daily-pilot * { scroll-behavior:auto !important; transition:none !important; } }

.daily-pilot .article-shell { max-width:950px; }
