/* Legal Center. Clearwave tokens, light + dark, prints cleanly. */
.lg-hero { padding: 2.6rem 0 2rem; background: radial-gradient(900px 320px at 20% 0%, var(--cw-seafoam-soft), transparent 70%); border-bottom: 1px solid var(--cw-line); }
.lg-crumbs { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; font-size: .82rem; color: var(--cw-ink-faint); margin-bottom: 1rem; }
.lg-crumbs a { color: var(--cw-ink-soft); text-decoration: none; }
.lg-crumbs a:hover { color: var(--cw-teal); }
.lg-crumbs i { font-size: .7rem; }
.lg-hero__row { display: flex; gap: 1rem; align-items: center; }
.lg-hero__icon { width: 58px; height: 58px; border-radius: 16px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 1.6rem; color: var(--cw-teal); background: var(--cw-surface); border: 1px solid var(--cw-line); box-shadow: var(--cw-shadow-sm); }
.lg-hero h1 { font-size: clamp(1.7rem, 3.6vw, 2.5rem); font-weight: 800; letter-spacing: -.02em; color: var(--cw-ink); margin: 0 0 .35rem; }
.lg-meta { display: flex; flex-wrap: wrap; gap: .4rem 1.1rem; align-items: center; margin: 0; color: var(--cw-ink-soft); font-size: .86rem; }
.lg-meta i { margin-right: .2rem; }
.lg-print { border: 1px solid var(--cw-line); background: var(--cw-surface); color: var(--cw-ink-soft); border-radius: 999px; padding: .2rem .7rem; font-size: .8rem; font-weight: 700; cursor: pointer; }
.lg-print:hover { border-color: var(--cw-teal); color: var(--cw-teal); }

.lg-grid { display: grid; grid-template-columns: 240px minmax(0, 1fr) 220px; gap: 2rem; padding-top: 2rem; padding-bottom: 4rem; align-items: start; }
.lg-docs, .lg-toc { position: sticky; top: 90px; }
.lg-docs ul { list-style: none; padding: 0; margin: 0 0 1rem; display: grid; gap: .15rem; }
.lg-docs li a { display: flex; gap: .6rem; align-items: center; padding: .5rem .7rem; border-radius: 10px; color: var(--cw-ink-soft); font-weight: 600; font-size: .88rem; text-decoration: none; }
.lg-docs li a:hover { background: var(--cw-bg-tint); color: var(--cw-ink); }
.lg-docs li a.on { background: var(--cw-seafoam-soft); color: var(--cw-teal); font-weight: 800; }
.lg-docs__pick, .lg-docs__select { display: none; }
.lg-help { display: grid; gap: .3rem; padding: 1rem; border-radius: 14px; border: 1px solid var(--cw-line); background: var(--cw-surface); font-size: .84rem; }
.lg-help b { color: var(--cw-ink); }
.lg-help span { color: var(--cw-ink-soft); }
.lg-help a { color: var(--cw-teal); font-weight: 700; word-break: break-all; text-decoration: none; }
.lg-help button { margin-top: .3rem; border: 0; border-radius: 10px; padding: .45rem .7rem; background: var(--cw-teal); color: #fff; font-weight: 700; cursor: pointer; }

.lg-doc { min-width: 0; color: var(--cw-ink-soft); line-height: 1.7; font-size: .97rem; }
.lg-doc h2 { position: relative; font-size: 1.25rem; font-weight: 800; color: var(--cw-ink); margin: 2.2rem 0 .7rem; scroll-margin-top: 95px; }
.lg-doc h3 { font-size: 1.02rem; font-weight: 800; color: var(--cw-ink); margin: 1.3rem 0 .4rem; }
.lg-doc p, .lg-doc ul, .lg-doc ol { margin: 0 0 .9rem; }
.lg-doc li { margin-bottom: .35rem; }
.lg-doc strong { color: var(--cw-ink); }
.lg-doc a { color: var(--cw-teal); font-weight: 600; }
.lg-anchor { margin-left: .4rem; opacity: 0; color: var(--cw-ink-faint) !important; text-decoration: none; font-weight: 400; }
.lg-doc h2:hover .lg-anchor { opacity: 1; }
.lg-summary { padding: 1.3rem 1.4rem; border-radius: 18px; border: 1px solid color-mix(in srgb, var(--cw-teal) 30%, var(--cw-line)); background: color-mix(in srgb, var(--cw-teal) 6%, var(--cw-surface)); }
.lg-summary .lg-summary__h { margin: 0 0 .6rem; font-size: 1.05rem; display: flex; gap: .5rem; align-items: center; }
.lg-summary .lg-summary__h i { color: var(--cw-teal); }
.lg-summary ul { margin-bottom: .5rem; }
.lg-summary__note { font-size: .8rem; color: var(--cw-ink-faint); margin: 0 !important; }
.lg-table { width: 100%; border-collapse: collapse; margin: 0 0 1rem; font-size: .88rem; display: block; overflow-x: auto; }
.lg-table th, .lg-table td { text-align: left; padding: .6rem .7rem; border: 1px solid var(--cw-line); vertical-align: top; }
.lg-table th { background: var(--cw-bg-tint); color: var(--cw-ink); font-weight: 800; }
.lg-note { display: flex; gap: .7rem; padding: .85rem 1rem; border-radius: 12px; background: var(--cw-bg-tint); border: 1px solid var(--cw-line); margin: 0 0 1rem; font-size: .92rem; }
.lg-note i { color: var(--cw-teal); font-size: 1.1rem; }
.lg-note--warn { background: #fffbeb; border-color: #fcd34d; color: #422006; }
.lg-note--warn i { color: #b45309; }
.lg-who { margin-top: 2.5rem; padding-top: .5rem; border-top: 1px solid var(--cw-line); }

.lg-toc { font-size: .84rem; }
.lg-toc b { display: block; color: var(--cw-ink); margin-bottom: .5rem; font-size: .78rem; text-transform: uppercase; letter-spacing: .06em; }
.lg-toc ol { list-style: none; padding: 0 0 0 .1rem; margin: 0 0 1rem; border-left: 2px solid var(--cw-line); max-height: calc(100vh - 220px); overflow-y: auto; }
.lg-toc li a { display: block; padding: .28rem .8rem; margin-left: -2px; border-left: 2px solid transparent; color: var(--cw-ink-soft); text-decoration: none; line-height: 1.35; }
.lg-toc li a:hover { color: var(--cw-ink); }
.lg-toc li a.on { color: var(--cw-teal); border-left-color: var(--cw-teal); font-weight: 700; }
.lg-top { color: var(--cw-ink-faint); text-decoration: none; font-weight: 700; }

/* Hub */
.lg-cards { display: grid; grid-template-columns: repeat(2, 1fr); gap: 1rem; padding: 2rem 0 1rem; }
.lg-card { display: flex; gap: 1rem; padding: 1.2rem; border-radius: 16px; border: 1px solid var(--cw-line); background: var(--cw-surface); text-decoration: none; color: var(--cw-ink); transition: border-color .2s, transform .2s; }
.lg-card:hover { border-color: var(--cw-teal); transform: translateY(-2px); color: var(--cw-ink); }
.lg-card > i { width: 46px; height: 46px; border-radius: 12px; flex-shrink: 0; display: inline-flex; align-items: center; justify-content: center; font-size: 1.3rem; color: var(--cw-teal); background: var(--cw-seafoam-soft); }
.lg-card b { display: block; font-size: 1rem; margin-bottom: .2rem; }
.lg-card span { color: var(--cw-ink-soft); font-size: .88rem; }
.lg-hubfoot { padding-bottom: 4rem; color: var(--cw-ink-soft); font-size: .92rem; }

@media (max-width: 1199px) { .lg-grid { grid-template-columns: 220px minmax(0, 1fr); } .lg-toc { display: none; } }
@media (max-width: 860px) {
  .lg-grid { grid-template-columns: 1fr; gap: 1.2rem; padding-top: 1.2rem; }
  .lg-docs { position: static; }
  .lg-docs ul, .lg-help { display: none; }
  .lg-docs__pick { display: block; font-size: .78rem; font-weight: 800; color: var(--cw-ink-faint); margin-bottom: .3rem; text-transform: uppercase; letter-spacing: .05em; }
  .lg-docs__select { display: block; width: 100%; padding: .65rem .8rem; border-radius: 12px; border: 1px solid var(--cw-line); background: var(--cw-surface); color: var(--cw-ink); font-weight: 700; }
  .lg-cards { grid-template-columns: 1fr; }
  .lg-hero__icon { width: 46px; height: 46px; font-size: 1.25rem; }
}
@media print {
  .cw-header, .cw-nav, header.cw-topbar, .cw-footer, .lg-docs, .lg-toc, .lg-print, .lg-crumbs, .lg-anchor { display: none !important; }
  .lg-grid { display: block; padding: 0; }
  .lg-hero { background: none; padding: 0 0 1rem; }
  .lg-doc { color: #000; font-size: 11pt; }
  .lg-doc a { color: #000; text-decoration: underline; }
}
