/* Legal & error pages */
.legal { max-width: 820px; margin: 40px auto 80px; padding: 40px 44px; }
.legal h1 { margin-bottom: 6px; }
.legal .updated { color: var(--text-3); margin-bottom: 28px; }
.legal h2 { font-size: 1.15rem; margin: 28px 0 10px; color: var(--sun-300); }
.legal p, .legal li { color: var(--text-2); }
.legal ul { padding-left: 20px; }
.legal .note { padding: 14px 16px; border-radius: 14px; background: rgba(96,165,250,.1); border: 1px solid rgba(96,165,250,.3); color: #cfe2ff; font-size: .88rem; }
.notfound { min-height: calc(100vh - 160px); display: grid; place-items: center; text-align: center; padding: 40px 16px; }
.notfound .big { font-size: clamp(5rem, 16vw, 9rem); font-weight: 800; line-height: 1; background: linear-gradient(120deg, var(--sun-300), var(--sun-500), var(--aqua-400)); -webkit-background-clip: text; background-clip: text; color: transparent; }
.notfound p { color: var(--text-2); max-width: 420px; margin: 10px auto 26px; }
@media (max-width: 640px) { .legal { padding: 26px 20px; margin-top: 20px; } }
