.manual { margin: 0; line-height: 1.85; overflow-wrap: anywhere; }
.manual * { box-sizing: border-box; }
.manual-header { display: flex; flex-wrap: wrap; gap: 16px; align-items: center; padding: 16px max(20px, calc((100% - 1040px) / 2)); border-bottom: 1px solid var(--line); }
.manual-header strong { font-size: 1.15rem; }
.manual-header strong span { font-weight: 400; margin-left: 12px; }
.manual-header nav { margin-left: auto; display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.manual button { padding: 8px 16px; border: 1px solid var(--line); border-radius: 8px; cursor: pointer; font-size: 1rem; }
.manual main { max-width: 1000px; padding: 32px 24px 64px; margin: auto; }
.manual h1 { font-size: 2rem; line-height: 1.5; margin: 12px 0; }
.manual h2 { font-size: 1.45rem; line-height: 1.6; margin: 0 0 16px; }
.manual h3 { font-size: 1.12rem; margin: 28px 0 8px; }
.manual p { margin: 12px 0; }
.manual-intro { max-width: 760px; }
.manual-edition, .manual-footer, #search-status { color: var(--muted); }
.manual-note { padding: 16px 20px; border-left: 3px solid var(--accent); background: var(--panel-strong); }
.manual-search { margin: 32px 0 20px; }
.manual-search label { display: block; margin-bottom: 8px; }
.manual-search > div { display: flex; gap: 12px; }
.manual-search input { min-width: 0; flex: 1; border: 1px solid var(--control-border); border-radius: 8px; padding: 12px; font-size: 1rem; }
.manual-search button { flex-shrink: 0; }
#search-status { min-height: 1.85em; margin: 6px 0; }
.manual-toc { padding: 24px 0; border-block: 1px solid var(--line); }
.manual-toc ol { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 40px; padding-left: 28px; margin: 0; }
.manual-toc a { display: inline-block; padding: 6px 0; }
.manual section { padding: 36px 0; border-bottom: 1px solid var(--line); scroll-margin-top: 20px; }
.manual li { margin: 8px 0; padding-left: 4px; }
.manual ul, .manual ol { padding-left: 26px; }
.manual blockquote { margin: 12px 0; padding: 16px 20px; background: var(--panel-strong); border-left: 3px solid var(--line); }
.manual-flow { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 24px 0; }
.manual-flow span { flex: 1; min-width: 130px; padding: 12px; background: var(--selection); text-align: center; }
.manual-flow b { font-weight: 400; color: var(--muted); }
.manual-table { margin: 20px 0; }
.manual table { width: 100%; table-layout: fixed; border-collapse: collapse; }
.manual th, .manual td { text-align: left; vertical-align: top; padding: 12px; border-bottom: 1px solid var(--line); }
.manual th { font-weight: 600; }
.manual th:first-child { width: 28%; }
.manual pre { padding: 16px; white-space: pre-wrap; overflow-wrap: anywhere; }
.manual code { font-size: .9rem; }
.manual-footer { padding-top: 24px; }
.skip-link { position: absolute; top: -100px; left: 16px; padding: 12px; background: var(--paper); z-index: 2; }
.skip-link:focus { top: 8px; }
@media (max-width: 640px) {
  .manual main { padding: 24px 18px 48px; }
  .manual h1 { font-size: 1.65rem; }
  .manual h2 { font-size: 1.3rem; }
  .manual-toc ol { grid-template-columns: 1fr; }
  .manual-header nav { margin-left: 0; }
  .manual-search > div { flex-wrap: wrap; }
  .manual-search input { flex-basis: 100%; }
  .manual-flow { flex-direction: column; }
  .manual-flow span { width: 100%; }
  .manual-flow b { transform: rotate(90deg); }
  .manual th, .manual td { padding: 10px 6px; }
  .manual th:first-child { width: 30%; }
}
@media print {
  @page { size: A4; margin: 18mm; }
  :root, :root[data-theme="dark"] { color-scheme: light; --bg: #fff; --paper: #fff; --text: #111; --muted: #444; --line: #ccc; --panel-strong: #f4f4f4; --accent: #244f43; --selection: #f1f4f1; }
  .manual { font-size: 10.5pt; }
  .manual main { padding: 0; max-width: none; }
  .manual-header, .manual-search, #no-results, .skip-link, .manual-footer a { display: none !important; }
  .manual section[hidden], .manual-toc li[hidden] { display: block !important; }
  .manual section { padding: 20px 0; }
  .manual h2, .manual h3 { break-after: avoid; }
  .manual tr, .manual-flow, .manual-note, .manual blockquote { break-inside: avoid; }
  .manual thead { display: table-header-group; }
  .manual a { color: inherit; text-decoration: none; }
}
