/* Shared styles for the guide pages (excel-mac-*.html, alt-e-s-mac.html). */
  :root { --bg:#fbfbf9; --surface:#fff; --text:#16201b; --muted:#5c6862; --line:#e3e6e2; --accent:#1f7a4d; --accent-ink:#fff; --accent-soft:#e6f2ea; --key:#fff; --key-edge:#cfd5d0; --key-shadow:#b7beb9; }
  @media (prefers-color-scheme: dark) {
    :root { --bg:#0f1412; --surface:#161d1a; --text:#e9eeeb; --muted:#9aa69f; --line:#26302c; --accent:#3fb47a; --accent-ink:#07130d; --accent-soft:#15291f; --key:#1d2622; --key-edge:#33403a; --key-shadow:#0a0e0c; }
  }
  * { box-sizing:border-box; }
  body { margin:0; background:var(--bg); color:var(--text); font:16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif; -webkit-font-smoothing:antialiased; }
  main { max-width:820px; margin:0 auto; padding:24px 20px 64px; }
  nav { display:flex; justify-content:space-between; align-items:center; padding:12px 0 28px; }
  .logo { display:flex; align-items:center; gap:10px; font-weight:700; text-decoration:none; color:inherit; }
  .logo-mark { width:28px; height:28px; border-radius:7px; background:var(--accent); color:var(--accent-ink); display:grid; place-items:center; font:600 15px ui-monospace, "SF Mono", Menlo, monospace; }
  .cta-small { padding:8px 14px; border-radius:8px; background:var(--accent); color:var(--accent-ink); font-weight:600; text-decoration:none; font-size:15px; }
  h1 { font-size:clamp(30px, 4.6vw, 44px); line-height:1.12; letter-spacing:-0.025em; margin:0 0 14px; }
  h2 { font-size:26px; letter-spacing:-0.02em; margin:48px 0 10px; }
  h3 { font-size:19px; margin:32px 0 8px; }
  p, li { color:var(--muted); }
  b, strong { color:var(--text); }
  a { color:var(--accent); }
  .lead { font-size:19px; }
  .k { display:inline-block; min-width:22px; padding:1px 6px; margin-right:3px; border:1px solid var(--key-edge); border-radius:5px; background:var(--key); text-align:center; font:600 13px ui-monospace, "SF Mono", Menlo, monospace; box-shadow:0 1px 0 var(--key-shadow); color:var(--text); }
  .table-wrap { overflow-x:auto; background:var(--surface); border:1px solid var(--line); border-radius:12px; padding:4px 10px; margin:10px 0; }
  table { width:100%; border-collapse:collapse; font-size:15px; }
  th, td { text-align:left; padding:9px 10px; border-bottom:1px solid var(--line); vertical-align:top; }
  tr:last-child td { border-bottom:0; }
  th { font-size:12px; text-transform:uppercase; letter-spacing:.06em; color:var(--muted); font-weight:600; }
  td:first-child, td:nth-child(2) { white-space:nowrap; }
  .note { font-size:14px; }
  .who { font-size:13px; color:var(--muted); white-space:nowrap; }
  .box { background:var(--accent-soft); border-radius:12px; padding:18px 20px; margin:24px 0; }
  .box p { margin:0; color:var(--text); }
  .toc { display:flex; flex-wrap:wrap; gap:6px 14px; }
  .toc a { white-space:nowrap; }
  .btn { display:inline-block; padding:12px 20px; border-radius:10px; font-weight:600; text-decoration:none; margin:6px 8px 0 0; }
  .btn-primary { background:var(--accent); color:var(--accent-ink); }
  .btn-ghost { border:1px solid var(--line); color:var(--text); }
  footer { border-top:1px solid var(--line); margin-top:56px; padding-top:20px; font-size:14px; color:var(--muted); }
  footer a { color:var(--muted); }
