/* Raysor Technologies dense information-surface companion.
   Scope: documentation and legal/policy index surfaces. Content owns height;
   navigation remains locally usable; actions stay touch-safe without wasting space. */

.information-page {
  --info-control: 52px;
  --info-row-gap: clamp(14px, 1.6vw, 20px);
  --info-section-gap: clamp(26px, 3vw, 42px);
}

.information-page :is(.v1-doc-layout, .legal-layout) {
  container-type: inline-size;
  grid-template-columns: minmax(12rem, .30fr) minmax(0, 1fr) !important;
  gap: clamp(18px, 2.6vw, 34px) !important;
  align-items: start !important;
}

.information-page :is(.v1-doc-nav, .legal-nav) {
  max-height: calc(100svh - 132px);
  overflow: auto;
  overscroll-behavior: contain;
  scrollbar-gutter: stable;
}

.information-page :is(.v1-doc-nav, .legal-nav) a {
  min-height: var(--info-control) !important;
  gap: 10px;
  line-height: 1.25;
}

.information-page :is(.v1-doc-content, .legal-copy) {
  min-inline-size: 0;
}

.information-page :is(.v1-doc-content, .legal-copy) > section {
  min-height: 0 !important;
  padding: clamp(24px, 3vw, 36px) !important;
  scroll-margin-top: 118px;
}

.information-page :is(.v1-doc-content, .legal-copy) > section + section {
  margin-top: var(--info-row-gap);
  border-top: 1px solid rgba(210, 234, 250, .08);
}

.information-page :is(.v1-doc-content, .legal-copy) :is(h2, h3) {
  max-inline-size: 22ch;
  margin-block-start: 0;
  text-wrap: balance;
}

.information-page :is(.v1-doc-content, .legal-copy) :is(p, li) {
  max-inline-size: 76ch;
  line-height: 1.68;
  overflow-wrap: anywhere;
  text-wrap: pretty;
}

.information-page :is(.v1-doc-content, .legal-copy) ul {
  display: grid;
  gap: 8px;
  padding-inline-start: 1.25rem;
}

.information-page .v1-doc-content .v1-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 17rem), 1fr)) !important;
  gap: var(--info-row-gap) !important;
  align-items: start !important;
}

.information-page .v1-doc-content .v1-card {
  min-height: 0 !important;
  padding: clamp(20px, 2.3vw, 28px) !important;
}

.information-page .v1-doc-content .v1-card .text-link {
  display: inline-flex;
  align-items: center;
  min-height: var(--info-control);
  margin-top: 12px;
  padding: 10px 0;
}

.information-page .v1-callout {
  margin-top: clamp(18px, 2vw, 26px);
}

.information-page .actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px !important;
  margin-top: clamp(18px, 2vw, 26px);
}

.information-page .actions .button {
  min-height: var(--info-control);
}

.information-page .legal-copy a:not(.button),
.information-page .v1-doc-content a:not(.button) {
  text-underline-offset: .2em;
  overflow-wrap: anywhere;
}

@container (max-width: 48rem) {
  .information-page :is(.v1-doc-layout, .legal-layout) {
    grid-template-columns: minmax(0, 1fr) !important;
  }

  .information-page :is(.v1-doc-nav, .legal-nav) {
    position: relative !important;
    top: auto !important;
    max-height: none;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 10rem), 1fr));
    gap: 6px;
    padding: 10px !important;
  }

  .information-page :is(.v1-doc-nav, .legal-nav) a {
    justify-content: center;
    text-align: center;
  }
}

@container (max-width: 34rem) {
  .information-page :is(.v1-doc-nav, .legal-nav) {
    grid-template-columns: minmax(0, 1fr);
  }

  .information-page :is(.v1-doc-nav, .legal-nav) a {
    justify-content: flex-start;
    text-align: start;
  }

  .information-page .actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
  }

  .information-page .actions .button {
    width: 100%;
  }
}

@media (pointer: coarse) {
  .information-page {
    --info-control: 56px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .information-page :is(.v1-doc-nav, .legal-nav) a,
  .information-page :is(.v1-doc-content, .legal-copy) > section {
    transition: none !important;
    transform: none !important;
  }
}

@media (prefers-reduced-transparency: reduce) {
  .information-page :is(.v1-doc-nav, .legal-nav, .v1-doc-content, .legal-copy, .v1-callout, .v1-card) {
    -webkit-backdrop-filter: none !important;
    backdrop-filter: none !important;
  }
}

@media (forced-colors: active) {
  .information-page :is(.v1-doc-nav, .legal-nav, .v1-doc-content, .legal-copy, .v1-callout, .v1-card) {
    border-color: CanvasText !important;
    background: Canvas !important;
    color: CanvasText !important;
    box-shadow: none !important;
  }

  .information-page :is(.v1-doc-nav, .legal-nav) a:focus-visible,
  .information-page :is(.v1-doc-content, .legal-copy) a:focus-visible {
    outline: 3px solid Highlight !important;
  }
}
