/* ============================================================
   NUTSHELL — Legal & information pages
   Shares tokens from nutshell.css + dark mode from nutshell-theme.css
   ============================================================ */

.doc-nav {
  position: sticky; top: 0; z-index: 800; height: 72px; display: flex; align-items: center;
  background: rgba(251,249,244,.85); backdrop-filter: blur(18px) saturate(1.3);
  -webkit-backdrop-filter: blur(18px) saturate(1.3); border-bottom: 1px solid rgba(23,37,40,.07);
}
html[data-theme="dark"] .doc-nav { background: rgba(14,25,27,.85); border-bottom-color: rgba(180,197,177,.1); }
.doc-nav__inner { width: var(--container-wide); margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 18px; }
.doc-nav__logo img { height: 32px; width: auto; }
html[data-theme="dark"] .doc-nav__logo img { filter: brightness(0) invert(1); }
.doc-nav__right { display: flex; align-items: center; gap: 14px; }
.doc-back { display: inline-flex; align-items: center; gap: 8px; font-size: .9rem; font-weight: 600; color: var(--ink-70); transition: color .25s, gap .25s; }
.doc-back svg { width: 16px; height: 16px; }
.doc-back:hover { color: var(--copper-deep); gap: 11px; }
html[data-theme="dark"] .doc-back { color: var(--ink-70); }

/* hero */
.doc-hero { padding: clamp(48px,7vw,88px) 0 clamp(28px,4vw,44px); background: linear-gradient(180deg, var(--moss-wash), var(--cream)); border-bottom: 1px solid rgba(23,37,40,.06); }
html[data-theme="dark"] .doc-hero { background: linear-gradient(180deg, #14252A, var(--d-bg)); border-bottom-color: rgba(180,197,177,.1); }
.doc-hero__inner { width: var(--container-sm); margin-inline: auto; }
.doc-hero .eyebrow { margin-bottom: 16px; }
.doc-hero h1 { font-family: var(--serif); font-weight: 500; font-size: clamp(2.2rem,5vw,3.4rem); line-height: 1.08; letter-spacing: -.015em; color: var(--charcoal); }
html[data-theme="dark"] .doc-hero h1 { color: var(--d-text); }
.doc-hero__meta { margin-top: 16px; display: flex; gap: 18px; flex-wrap: wrap; font-size: .88rem; color: var(--ink-muted); }
.doc-hero__meta b { color: var(--charcoal); font-weight: 600; }
html[data-theme="dark"] .doc-hero__meta b { color: var(--d-text); }

/* article */
.doc { padding: clamp(40px,6vw,72px) 0 clamp(56px,8vw,96px); }
.doc__inner { width: var(--container-sm); margin-inline: auto; }
.doc__intro { font-size: 1.12rem; line-height: 1.7; color: var(--ink-55); margin-bottom: 36px; padding-bottom: 32px; border-bottom: 1px solid rgba(23,37,40,.08); text-wrap: pretty; }
html[data-theme="dark"] .doc__intro { border-color: rgba(180,197,177,.14); }

.doc h2 { font-family: var(--serif); font-weight: 600; font-size: clamp(1.5rem,2.8vw,2rem); color: var(--charcoal); margin: 44px 0 14px; line-height: 1.15; }
html[data-theme="dark"] .doc h2 { color: var(--d-text); }
.doc h2:first-of-type { margin-top: 0; }
.doc h3 { font-size: 1.15rem; font-weight: 700; color: var(--charcoal); margin: 28px 0 10px; }
html[data-theme="dark"] .doc h3 { color: var(--d-text); }
.doc p { font-size: 1.04rem; line-height: 1.75; color: var(--ink-70); margin-bottom: 16px; text-wrap: pretty; }
.doc a.inline { color: var(--copper-deep); font-weight: 600; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1.5px; }
.doc ul, .doc ol { margin: 6px 0 20px; padding-left: 4px; display: grid; gap: 10px; }
.doc li { display: flex; gap: 12px; align-items: flex-start; font-size: 1.02rem; line-height: 1.6; color: var(--ink-70); }
.doc ul li::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: var(--copper); flex-shrink: 0; margin-top: 9px; }
.doc ol { counter-reset: n; }
.doc ol li { counter-increment: n; }
.doc ol li::before { content: counter(n); width: 22px; height: 22px; border-radius: 50%; background: var(--moss-pale); color: var(--moss-deeper); font-size: .78rem; font-weight: 700; display: grid; place-items: center; flex-shrink: 0; }
html[data-theme="dark"] .doc ol li::before { background: rgba(180,197,177,.14); color: var(--moss); }

/* callout */
.doc-note {
  display: flex; gap: 16px; padding: 22px 24px; border-radius: var(--r-lg); margin: 28px 0;
  background: var(--moss-wash); border: 1px solid var(--moss-light);
}
html[data-theme="dark"] .doc-note { background: var(--d-bg2); border-color: var(--d-border); }
.doc-note__ico { width: 40px; height: 40px; border-radius: 11px; background: var(--white); display: grid; place-items: center; flex-shrink: 0; box-shadow: var(--sh-xs); }
.doc-note__ico svg { width: 22px; height: 22px; color: var(--copper-deep); }
html[data-theme="dark"] .doc-note__ico { background: var(--d-surf); }
.doc-note p { margin: 0; font-size: .98rem; color: var(--ink-70); }
.doc-note b { color: var(--charcoal); }
html[data-theme="dark"] .doc-note b { color: var(--d-text); }

.doc-note--warn { background: var(--copper-wash); border-color: var(--copper-soft); }
html[data-theme="dark"] .doc-note--warn { background: rgba(201,123,99,.12); border-color: rgba(201,123,99,.28); }

/* table */
.doc-table { width: 100%; border-collapse: collapse; margin: 20px 0 28px; border-radius: var(--r-md); overflow: hidden; box-shadow: var(--sh-xs); border: 1px solid rgba(23,37,40,.08); }
html[data-theme="dark"] .doc-table { border-color: var(--d-border); }
.doc-table th, .doc-table td { text-align: left; padding: 13px 16px; font-size: .92rem; line-height: 1.5; border-bottom: 1px solid rgba(23,37,40,.07); }
html[data-theme="dark"] .doc-table th, html[data-theme="dark"] .doc-table td { border-color: var(--d-border); }
.doc-table th { background: var(--moss-wash); font-weight: 700; color: var(--charcoal); }
html[data-theme="dark"] .doc-table th { background: var(--d-bg2); color: var(--d-text); }
.doc-table td { color: var(--ink-70); background: var(--white); }
html[data-theme="dark"] .doc-table td { background: var(--d-surf); }
.doc-table tr:last-child td { border-bottom: none; }

/* contact card */
.doc-contact { background: var(--white); border: 1px solid rgba(23,37,40,.08); border-radius: var(--r-lg); padding: 28px 30px; margin-top: 40px; box-shadow: var(--sh-sm); }
html[data-theme="dark"] .doc-contact { background: var(--d-surf); border-color: var(--d-border); }
.doc-contact h3 { margin-top: 0; }
.doc-contact__row { display: flex; align-items: center; gap: 11px; padding: 7px 0; font-size: 1rem; color: var(--ink-70); }
.doc-contact__row svg { width: 18px; height: 18px; color: var(--copper-deep); flex-shrink: 0; }
.doc-contact__row a { color: var(--charcoal); font-weight: 600; }
html[data-theme="dark"] .doc-contact__row a { color: var(--d-text); }

/* page nav (other policies) */
.doc-links { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 44px; padding-top: 32px; border-top: 1px solid rgba(23,37,40,.08); }
html[data-theme="dark"] .doc-links { border-color: var(--d-border); }
.doc-links a { display: inline-flex; align-items: center; gap: 7px; padding: 9px 16px; border-radius: var(--r-pill); background: var(--moss-wash); border: 1px solid var(--moss-light); font-size: .88rem; font-weight: 600; color: var(--charcoal); transition: all .3s; }
.doc-links a:hover { background: var(--moss-deeper); color: #fff; border-color: var(--moss-deeper); }
html[data-theme="dark"] .doc-links a { background: var(--d-bg2); border-color: var(--d-border); color: var(--d-text); }

@media (max-width: 700px){
  .doc-back span { display: none; }
}
