.legal-modal {
  width: min(880px, calc(100% - 32px));
  max-width: none;
  height: min(820px, calc(100dvh - 40px));
  max-height: none;
  padding: 0;
  border: 1px solid rgba(34, 37, 44, .12);
  border-radius: 24px;
  background: #f8f7f2;
  color: #202229;
  box-shadow: 0 28px 90px rgba(11, 14, 21, .28);
}
.legal-modal::backdrop { background: rgba(13, 15, 20, .62); backdrop-filter: blur(6px); }
.legal-modal__panel { display: grid; grid-template-rows: auto minmax(0, 1fr) auto; height: 100%; }
.legal-modal__header, .legal-modal__footer { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 20px 24px; }
.legal-modal__header { border-bottom: 1px solid rgba(34, 37, 44, .1); }
.legal-modal__header h2 { margin: 0; font: 700 clamp(20px, 3vw, 28px)/1.15 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.legal-modal__version { margin: 6px 0 0; color: #696c73; font: 500 13px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.legal-modal__close { flex: 0 0 42px; width: 42px; height: 42px; border: 0; border-radius: 50%; background: #e9e8e2; color: #202229; font: 300 30px/1 sans-serif; cursor: pointer; }
.legal-modal__content { overflow: auto; padding: 24px clamp(22px, 5vw, 54px) 36px; font: 400 16px/1.65 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; overscroll-behavior: contain; overflow-wrap: anywhere; }
.legal-modal__content > h1 { display: none; }
.legal-modal__content h2 { margin: 30px 0 12px; font-size: 20px; line-height: 1.3; }
.legal-modal__content p { margin: 0 0 13px; }
.legal-modal__content .legal-meta, .legal-modal__content .legal-subtitle { color: #696c73; }
.legal-modal__content .legal-intro { font-weight: 550; }
.legal-modal__content .legal-list { padding-left: 22px; }
.legal-modal__state { padding-top: 20px; color: #696c73; }
.legal-modal__footer { border-top: 1px solid rgba(34, 37, 44, .1); }
.legal-modal__page-link { color: #5558b8; font: 600 14px/1.4 -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; }
.legal-modal__done { min-height: 42px; padding: 0 20px; border: 0; border-radius: 999px; background: #202229; color: #fff; font-weight: 700; cursor: pointer; }
.legal-modal-open { overflow: hidden; }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal { border-color: rgba(255,255,255,.12); background: #171920; color: #f2f3f7; }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__header,
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__footer { border-color: rgba(255,255,255,.1); }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__version,
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__content .legal-meta,
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__content .legal-subtitle,
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__state { color: #aeb1bb; }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__close { background: #292c35; color: #f2f3f7; }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__page-link { color: #cbf078; }
html:not([data-theme="light"]) body:not(.access-page):not(.tariffs-page) .legal-modal__done { background: #cbf078; color: #151713; }
@media (max-width: 600px) {
  .legal-modal { width: 100%; height: 100dvh; border: 0; border-radius: 0; }
  .legal-modal__header, .legal-modal__footer { padding: 16px; }
  .legal-modal__footer { align-items: stretch; flex-direction: column; }
  .legal-modal__page-link { text-align: center; }
  .legal-modal__content { padding: 20px 18px 32px; font-size: 15px; }
}
