
@media (hover: hover) and (pointer: fine) {
  :root {
    --d-bg: #fbfaf7; --d-paper: #ffffff; --d-ink: #25251f; --d-muted: #66655f;
    --d-line: #deddd5; --d-hero: #f1eee5; --d-accent: #b44220; --d-soft: #f6e6da; --d-on-accent: #ffffff;
  }
}
@media (hover: hover) and (pointer: fine) and (prefers-color-scheme: dark) {
  :root {
    --d-bg: #181b19; --d-paper: #222623; --d-ink: #f1eee5; --d-muted: #b4b8af;
    --d-line: #3e443e; --d-hero: #252c26; --d-accent: #f2a37a; --d-soft: #3b3029; --d-on-accent: #271a14;
  }
}
@media (hover: hover) and (pointer: fine) {
  body.docx { background: var(--d-bg) !important; color: var(--d-ink) !important; }

  .docx-head { background: var(--d-hero); border-bottom: 1px solid var(--d-line); }
  .docx-head-in { max-width: 1160px; margin: 0 auto; padding: 34px 20px 30px; }
  .docx-crumb { font-size: 12.5px; color: var(--d-muted); margin-bottom: 10px; }
  .docx-crumb a { color: var(--d-muted); text-decoration: none; }
  .docx-crumb a:hover { color: var(--d-accent); text-decoration: underline; text-underline-offset: 3px; }
  .docx-eyebrow { display: block; font-size: 11px; letter-spacing: 1.6px; color: var(--d-accent); font-weight: 600; margin-bottom: 8px; }
  .docx-title { margin: 0 0 8px; font-size: 32px; letter-spacing: -.6px; color: var(--d-ink); line-height: 1.25; }
  .docx-sub { margin: 0; font-size: 13.5px; color: var(--d-muted); line-height: 1.7; word-break: keep-all; max-width: 860px; }

  body.docx .doc-wrap { max-width: 1160px !important; display: grid; grid-template-columns: 260px minmax(0, 1fr); gap: 30px; align-items: start; padding: 30px 20px 60px !important; }
  body.docx .doc-wrap > .back-link { display: none; }
  body.docx .doc-card { background: var(--d-paper) !important; border: 1px solid var(--d-line) !important; border-radius: 14px !important; padding: 40px 38px !important; }
  body.docx .doc-card > h1, body.docx .doc-card > .doc-date { display: none; }
  body.docx h2 { color: var(--d-ink) !important; border-top-color: var(--d-line) !important; font-size: 17px !important; margin: 34px 0 12px !important; padding-top: 22px !important; scroll-margin-top: 24px; }
  body.docx .doc-card > h2:first-of-type { margin-top: 0 !important; padding-top: 0 !important; border-top: 0 !important; }
  body.docx p, body.docx li { color: var(--d-ink) !important; font-size: 14.5px !important; line-height: 1.85 !important; }
  body.docx li { margin-bottom: 6px; }
  body.docx a { color: var(--d-accent); }
  body.docx .highlight-box { background: var(--d-soft) !important; border-color: var(--d-accent) !important; color: var(--d-ink) !important; }

  .docx-toc { position: sticky; top: 24px; align-self: start; background: var(--d-paper); border: 1px solid var(--d-line); border-radius: 12px; overflow: hidden; }
  .docx-toc-h { padding: 13px 16px; background: var(--d-hero); font-size: 14px; font-weight: 700; color: var(--d-ink); }
  .docx-toc ol { list-style: none; margin: 0; padding: 10px; display: flex; flex-direction: column; gap: 2px; }
  .docx-toc a { display: block; padding: 8px 10px; border-radius: 7px; font-size: 13px; line-height: 1.5; color: var(--d-muted); text-decoration: none; word-break: keep-all; }
  .docx-toc a:hover { background: var(--d-hero); color: var(--d-accent); }
  .docx-toc a.on { background: var(--d-soft); color: var(--d-accent); font-weight: 600; }

  .docx-foot { max-width: 1160px; margin: 0 auto; padding: 0 20px 70px; }
  .docx-foot-card { display: flex; align-items: center; justify-content: space-between; gap: 20px; flex-wrap: wrap; background: var(--d-paper); border: 1px solid var(--d-line); border-radius: 12px; padding: 20px 24px; }
  .docx-foot-card p { margin: 0; font-size: 13.5px; color: var(--d-muted) !important; }
  .docx-foot-card a { display: inline-flex; align-items: center; min-height: 42px; padding: 11px 18px; border-radius: 8px; background: var(--d-accent); color: var(--d-on-accent) !important; font-size: 13.5px; font-weight: 600; text-decoration: none; }
  .docx-foot-card a:hover { filter: brightness(1.06); }

  @media (max-width: 980px) {
    body.docx .doc-wrap { grid-template-columns: 1fr; }
    .docx-toc { position: static; }
  }
}
