:root {
  --privacy-bg: #02050b;
  --privacy-panel: rgba(7, 14, 24, 0.86);
  --privacy-border: rgba(109, 163, 202, 0.34);
  --privacy-title: #e7f6ff;
  --privacy-text: #c9d9e8;
  --privacy-muted: #97afc6;
  --privacy-link: #94dcff;
}

.privacy_page {
  min-height: 100svh;
  background: var(--privacy-bg);
  color: var(--privacy-text);
  -webkit-text-size-adjust: 100%;
}

.privacy_wrap {
  width: min(980px, calc(100vw - 28px));
  margin: 0 auto;
  padding: clamp(4.8rem, 7vw, 5.9rem) 0 22px;
}

.privacy_intro {
  margin-bottom: 14px;
}

.privacy_badge {
  margin: 0 0 8px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(120, 176, 216, 0.48);
  border-radius: 999px;
  background: rgba(9, 20, 33, 0.76);
  padding: 5px 10px;
  color: #d8eeff;
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.privacy_title {
  margin: 0;
  color: var(--privacy-title);
  font-size: clamp(1.4rem, 2.8vw, 2rem);
  line-height: 1.16;
}

.privacy_text {
  margin: 8px 0 0;
  color: var(--privacy-text);
  line-height: 1.55;
}

.privacy_note {
  margin-top: 8px;
  color: var(--privacy-muted);
  font-size: 0.85rem;
}

.privacy_cards {
  display: grid;
  gap: 10px;
}

.privacy_card {
  border: 1px solid var(--privacy-border);
  border-radius: 12px;
  background: var(--privacy-panel);
  padding: 12px 14px;
  box-shadow:
    0 12px 28px rgba(0, 0, 0, 0.28),
    inset 0 1px 0 rgba(182, 223, 250, 0.12);
}

.privacy_card h2 {
  margin: 0 0 8px;
  color: var(--privacy-title);
  font-size: 1rem;
  line-height: 1.25;
}

.privacy_card p {
  margin: 0;
  line-height: 1.58;
}

.privacy_card p + p {
  margin-top: 7px;
}

.privacy_card ul {
  margin: 8px 0 0;
  padding-left: 18px;
}

.privacy_card li {
  margin-bottom: 5px;
  line-height: 1.45;
}

.privacy_card a {
  color: var(--privacy-link);
}

.privacy_update {
  margin-top: 10px;
  color: var(--privacy-muted);
  font-size: 0.82rem;
}

@media (max-width: 760px) {
  body.privacy_page .menu {
    right: calc(env(safe-area-inset-right, 0px) + 118px);
    gap: 0.26rem;
    padding-right: 0.1rem;
  }

  body.privacy_page .menu a {
    gap: 0;
    min-width: 35px;
    padding: 0.38rem 0.52rem;
    justify-content: center;
  }

  body.privacy_page .menu a span:not(.material-symbols-outlined) {
    display: none;
  }

  body.privacy_page .site_lang_toggle {
    top: calc(env(safe-area-inset-top, 0px) + 8px);
    right: calc(env(safe-area-inset-right, 0px) + 8px);
    min-width: 106px;
    padding: 0.34rem 0.56rem;
  }

  body.privacy_page .site_lang_toggle_values {
    font-size: 0.68rem;
  }

  .privacy_wrap {
    width: calc(100vw - 12px);
    padding-top: calc(env(safe-area-inset-top) + 4.25rem);
    padding-bottom: 0.48rem;
  }

  .privacy_intro {
    margin-bottom: 11px;
  }

  .privacy_badge {
    font-size: 0.69rem;
    padding: 4px 9px;
  }

  .privacy_title {
    font-size: clamp(1.2rem, 5.4vw, 1.56rem);
    line-height: 1.2;
  }

  .privacy_note {
    margin-top: 7px;
    font-size: 0.8rem;
    line-height: 1.38;
  }

  .privacy_cards {
    gap: 8px;
  }

  .privacy_card {
    border-radius: 11px;
    padding: 10px 10px;
  }

  .privacy_card h2 {
    font-size: 0.94rem;
    margin-bottom: 7px;
  }

  .privacy_text,
  .privacy_card p,
  .privacy_card li {
    font-size: 0.9rem;
    line-height: 1.5;
  }

  .privacy_card ul {
    margin-top: 7px;
    padding-left: 17px;
  }

  .privacy_update {
    margin-top: 8px;
    font-size: 0.78rem;
  }
}

@media (max-width: 420px) {
  body.privacy_page .menu {
    right: calc(env(safe-area-inset-right, 0px) + 104px);
  }

  .privacy_wrap {
    width: calc(100vw - 10px);
    padding-top: calc(env(safe-area-inset-top) + 4.15rem);
  }

  .privacy_card h2 {
    font-size: 0.9rem;
  }

  .privacy_text,
  .privacy_card p,
  .privacy_card li {
    font-size: 0.87rem;
  }
}

