:root {
  color-scheme: dark;
  --privacy-bg: #0c0c0e;
  --privacy-text: #f2efe8;
  --privacy-muted: #b1ada5;
  --privacy-line: #2b2b2e;
  --privacy-accent: #e5c878;
}
.privacy-document, .privacy-document * { box-sizing: border-box; }
.privacy-document {
  margin: 0;
  background: var(--privacy-bg);
  color: var(--privacy-text);
  font: 16px/1.75 Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
  scrollbar-color: var(--privacy-line) var(--privacy-bg);
}
.privacy-document ::selection { background: var(--privacy-accent); color: var(--privacy-bg); }
.privacy-document a { color: var(--privacy-accent); text-underline-offset: .22em; overflow-wrap: anywhere; }
.privacy-document a:hover { color: var(--privacy-text); }
.privacy-document a:focus-visible { outline: 2px solid var(--privacy-accent); outline-offset: 5px; border-radius: 2px; }
.privacy-skip { position: absolute; top: 8px; left: 20px; transform: translateY(-180%); padding: 10px 16px; background: var(--privacy-bg); z-index: 2; }
.privacy-skip:focus { transform: none; }
.privacy-header {
  max-width: 1120px;
  margin-inline: auto;
  padding: 24px 32px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px 24px;
  border-bottom: 1px solid var(--privacy-line);
}
.privacy-header a { display: inline-flex; min-height: 44px; align-items: center; }
.privacy-brand { gap: 12px; color: var(--privacy-text) !important; font-weight: 650; text-decoration: none; }
.privacy-brand img { width: 36px; height: 36px; }
.privacy-languages { display: flex; align-items: center; gap: 20px; font-size: 14px; }
.privacy-languages span { color: var(--privacy-muted); }
.privacy-layout { max-width: 1120px; margin: 56px auto 0; padding: 0 32px 64px; display: grid; grid-template-columns: 210px minmax(0, 1fr); gap: 64px; align-items: start; }
.privacy-toc { position: sticky; top: 28px; font-size: 14px; }
.privacy-toc p { margin: 0 0 12px; font-weight: 650; }
.privacy-toc ul { list-style: none; margin: 0; padding: 0; }
.privacy-toc a { display: block; min-height: 44px; padding-block: 10px; color: var(--privacy-muted); text-decoration: none; line-height: 1.5; }
.privacy-toc a:hover { color: var(--privacy-accent); text-decoration: underline; }
.privacy-article { min-width: 0; max-width: 72ch; }
.privacy-article h1 { font-size: clamp(30px, 3.6vw, 44px); line-height: 1.16; letter-spacing: -.025em; font-weight: 700; margin: 0 0 20px; text-wrap: balance; overflow-wrap: anywhere; }
.privacy-updated { color: var(--privacy-muted); font-size: 14px; margin: 0 0 28px; }
.privacy-intro { font-size: 18px; line-height: 1.7; }
.privacy-article section { scroll-margin-top: 28px; }
.privacy-article h2 { margin: 44px 0 14px; font-size: 23px; line-height: 1.35; letter-spacing: -.015em; text-wrap: balance; }
.privacy-article p { margin: 0 0 16px; }
.privacy-article li { margin-bottom: 12px; padding-left: 4px; }
.privacy-article ul { padding-left: 22px; margin: 16px 0 24px; }
.privacy-article strong { font-weight: 650; }
.privacy-contacts { padding-block: 20px; border-block: 1px solid var(--privacy-line); font-style: normal; }
.privacy-contacts a { display: inline-block; min-height: 44px; padding-block: 8px; }
.privacy-footer { margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--privacy-line); color: var(--privacy-muted); font-size: 14px; }
.privacy-footer a { display: inline-flex; align-items: center; min-height: 44px; }
/* Only these small entry points affect the player. */
.privacy-entry { color: var(--vault-muted, #b1ada5); font-size: 13px; line-height: 1.55; }
.privacy-entry a { color: var(--vault-muted, #b1ada5); text-underline-offset: 3px; }
.privacy-entry a:hover { color: var(--vault-gold, #e5c878); }
.privacy-entry a:focus-visible { outline: 2px solid var(--vault-gold, #e5c878); outline-offset: 4px; border-radius: 2px; }
#librarySidebar > .privacy-entry { order: 1; margin-top: auto; padding: 16px 0 0; }
#librarySidebar > .privacy-entry a { display: flex; align-items: center; min-height: 44px; }
.settings-content > .privacy-entry { margin: 20px 0 0; padding-top: 16px; border-top: 1px solid var(--vault-line, #2b2b2e); }
.settings-content > .privacy-entry a { display: inline-flex; align-items: center; min-height: 44px; }
#authModal .privacy-entry { margin: 16px 0 0; text-align: center; }
#telegramSignupDialog .privacy-entry { margin: 16px 0; }
@media (max-width: 760px) {
  .privacy-header { padding: 16px 20px; }
  .privacy-layout { margin-top: 32px; padding: 0 20px 40px; grid-template-columns: minmax(0, 1fr); gap: 32px; }
  .privacy-toc { position: static; border-bottom: 1px solid var(--privacy-line); padding-bottom: 20px; }
  .privacy-toc ul { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 20px; }
  .privacy-toc a { padding-block: 10px; }
}
@media print {
  :root { color-scheme: light; }
  .privacy-document { --privacy-bg: #fff; --privacy-text: #111; --privacy-muted: #444; --privacy-line: #bbb; --privacy-accent: #111; font-size: 11pt; }
  .privacy-header, .privacy-toc, .privacy-footer, .privacy-skip { display: none; }
  .privacy-layout { display: block; margin: 0; padding: 0; max-width: none; }
  .privacy-article { max-width: none; }
  .privacy-article h2 { break-after: avoid; }
}
