/* Podstrony prawne: regulamin i polityka prywatności */
.legal-page .topbar { align-items: center; padding: 22px 0 21px; }
.legal-page .brand { font-size: clamp(2.2rem, 4vw, 2.8rem); }
.legal-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #60666f;
  font: 700 .75rem/1 Manrope, sans-serif;
  letter-spacing: .075em;
  text-decoration: none;
  white-space: nowrap;
}
.legal-back:hover { color: var(--ink); }

.legal {
  max-width: 820px;
  padding: 44px 0 90px;
  color: #2b2f37;
  font-size: 1rem;
  line-height: 1.7;
}
.legal-kicker {
  color: var(--violet);
  font: 700 .72rem/1 Manrope, sans-serif;
  letter-spacing: .075em;
}
.legal h1 {
  margin: 12px 0 10px;
  font: 800 clamp(2.2rem, 5vw, 3.4rem)/1.05 Manrope, sans-serif;
  letter-spacing: -.06em;
  color: var(--ink);
}
.legal-meta { color: #717781; font-size: .9rem; }
.legal-toc {
  margin: 30px 0 10px;
  padding: 20px 24px;
  border: 1px solid var(--line);
  border-radius: 18px;
  background: #fff;
}
.legal-toc strong { font: 700 .72rem/1 Manrope, sans-serif; letter-spacing: .075em; color: #717781; }
.legal-toc ol { margin: 12px 0 0; padding-left: 20px; columns: 2; column-gap: 32px; font-size: .92rem; }
.legal-toc a { color: inherit; }
.legal h2 {
  margin: 44px 0 12px;
  font: 700 1.35rem/1.25 Manrope, sans-serif;
  letter-spacing: -.035em;
  color: var(--ink);
  scroll-margin-top: 20px;
}
.legal h3 { margin: 22px 0 6px; font: 700 1.02rem/1.3 Manrope, sans-serif; color: var(--ink); }
.legal p { margin: 0 0 12px; }
.legal ol, .legal ul { margin: 0 0 12px; padding-left: 22px; }
.legal li { margin-bottom: 6px; }
.legal a { color: #5a47c9; text-underline-offset: 3px; }
.legal-callout {
  margin: 18px 0;
  padding: 16px 20px;
  border-left: 4px solid var(--violet);
  border-radius: 0 14px 14px 0;
  background: #eeecfb;
}
.legal-table-wrap { overflow-x: auto; margin: 12px 0 16px; }
.legal table { width: 100%; border-collapse: collapse; font-size: .9rem; line-height: 1.5; }
.legal th, .legal td { padding: 10px 12px; border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.legal th { font: 700 .72rem/1.3 Manrope, sans-serif; letter-spacing: .06em; color: #717781; }
/* Dane do uzupełnienia przed publikacją */
.fill { padding: 0 4px; border-radius: 4px; background: #fff1a8; color: #3b3200; font-weight: 600; }

.footer-links { display: flex; gap: 22px; flex-wrap: wrap; }
.footer-links a { color: inherit; }
footer .footer-links a { color: #6e747c; }
footer .footer-links a:hover { color: var(--ink); }
.affiliate-note { margin-top: 8px; }
.affiliate-note a { color: inherit; text-underline-offset: 3px; }
.detail-hero .partner-note { margin-top: 12px; font-size: .78rem; color: #9ea2b0; }
:root[data-theme="light"] .detail-hero .partner-note { color: #6b7080; }

:root[data-theme="dark"] .legal { color: #cfd2dc; }
:root[data-theme="dark"] .legal h1,
:root[data-theme="dark"] .legal h2,
:root[data-theme="dark"] .legal h3 { color: #f4f5fa; }
:root[data-theme="dark"] .legal-meta,
:root[data-theme="dark"] .legal-toc strong,
:root[data-theme="dark"] .legal th,
:root[data-theme="dark"] .legal-back { color: #9ea4b2; }
:root[data-theme="dark"] .legal-back:hover { color: #f4f5fa; }
:root[data-theme="dark"] .legal-toc { background: #1b1d26; border-color: #2f3240; }
:root[data-theme="dark"] .legal a { color: #b3a8ff; }
:root[data-theme="dark"] .legal-kicker { color: #aa9cff; }
:root[data-theme="dark"] .legal-callout { background: #1f1d33; border-left-color: #8f7dff; }
:root[data-theme="dark"] .fill { background: #5c4f00; color: #fff6c2; }
:root[data-theme="dark"] footer .footer-links a { color: #a9adba; }
:root[data-theme="dark"] footer .footer-links a:hover { color: #f4f5fa; }

@media (max-width: 760px) {
  .legal { padding: 30px 0 60px; font-size: .96rem; }
  .legal-toc ol { columns: 1; }
  .legal-back { margin-right: 14px; font-size: 1.1rem; }
  .legal-back span { display: none; }
}
