/* Shared styles for the Add-ons Bundle legal and help pages. */
:root { --ink: #0b0b0f; --ink-2: #3a3a42; --muted: #66666f; --line: #e6e6eb; --surface: #f5f5f7; --accent: #0a5cff; --accent-soft: #eaf0ff; }
*, *::before, *::after { box-sizing: border-box; }
html { scroll-padding-top: 88px; -webkit-text-size-adjust: 100%; text-size-adjust: 100%; }
body { margin: 0; background: #fbfbfd; color: var(--ink-2); font: 400 17px/1.7 "Geist", system-ui, -apple-system, "Segoe UI", sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--accent); }
.skip-link { position: absolute; left: 1rem; top: -100px; z-index: 100; padding: .6rem 1rem; background: #000; color: #fff; border-radius: 8px; }
.skip-link:focus { top: 1rem; }
.top { position: sticky; top: 0; z-index: 10; background: rgba(251, 251, 253, .86); backdrop-filter: saturate(180%) blur(16px); -webkit-backdrop-filter: saturate(180%) blur(16px); border-bottom: 1px solid var(--line); }
.top__in, main, .foot__in { width: min(780px, 100% - 40px); margin-inline: auto; }
.top__in { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 64px; }
.brand { display: inline-flex; align-items: center; gap: 10px; color: var(--ink); text-decoration: none; font: 700 17px/1 "Inter Tight", system-ui, sans-serif; letter-spacing: -.02em; }
.brand img { width: 28px; height: 28px; }
.brand span span { color: var(--muted); font-weight: 600; }
.back { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; background: var(--ink); color: #fff; font-weight: 600; font-size: 14px; text-decoration: none; white-space: nowrap; }
main { padding: 56px 0 80px; }
.eyebrow { margin: 0 0 10px; font: 500 12.5px/1 "Geist Mono", ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; color: var(--accent); }
h1 { margin: 0 0 12px; font: 700 clamp(32px, 5vw, 46px)/1.08 "Inter Tight", system-ui, sans-serif; letter-spacing: -.03em; color: var(--ink); text-wrap: balance; }
.updated { margin: 0 0 32px; color: var(--muted); font-size: 15px; }
.summary { margin: 0 0 40px; padding: 22px 24px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.summary h2 { margin: 0 0 8px; font-size: 17px; letter-spacing: 0; }
.summary ul { margin: 0; padding-left: 20px; }
.toc { margin: 0 0 48px; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 8px; }
.toc a { display: inline-block; padding: 6px 12px; border: 1px solid var(--line); border-radius: 999px; background: #fff; color: var(--ink-2); font-size: 14px; text-decoration: none; }
.toc a:hover { border-color: var(--ink-2); }
section { padding: 8px 0 24px; border-top: 1px solid var(--line); }
h2 { margin: 28px 0 10px; font: 700 24px/1.2 "Inter Tight", system-ui, sans-serif; letter-spacing: -.02em; color: var(--ink); }
h3 { margin: 20px 0 6px; font-size: 17px; color: var(--ink); }
p, li { margin: 0 0 12px; }
ul, ol { padding-left: 22px; }
b, strong { color: var(--ink); }
.note { padding: 14px 18px; border-radius: 14px; background: var(--surface); font-size: 15.5px; }
table { width: 100%; margin: 8px 0 20px; border-collapse: collapse; font-size: 15px; }
th, td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
th { font-weight: 600; color: var(--ink); background: var(--surface); }
.table-wrap { overflow-x: auto; }
.cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin: 0 0 40px; }
.card { padding: 22px; border: 1px solid var(--line); border-radius: 18px; background: #fff; }
.card h2 { margin: 0 0 6px; font-size: 19px; }
.card p { margin: 0 0 6px; }
.card a.btn { display: inline-flex; align-items: center; min-height: 44px; margin-top: 8px; padding: 0 18px; border-radius: 999px; background: var(--accent); color: #fff; font-weight: 600; text-decoration: none; }
.foot { border-top: 1px solid var(--line); background: #fff; }
.foot__in { display: grid; gap: 14px; padding: 28px 0 40px; font-size: 14px; color: var(--muted); }
.foot nav { display: flex; flex-wrap: wrap; gap: 8px 18px; }
.foot a { color: var(--ink-2); text-decoration: none; }
.foot a:hover, .foot a[aria-current="page"] { color: var(--ink); text-decoration: underline; }
:focus-visible { outline: 3px solid var(--accent); outline-offset: 3px; border-radius: 4px; }
@media (max-width: 640px) {
  body { font-size: 16px; }
  main { padding-top: 36px; }
  .brand span span { display: none; }
  .cards { grid-template-columns: 1fr; }
}
