.legal-page{background:var(--catso-bg-root);min-height:100vh;color:var(--catso-text);font-family:var(--ma-font-interface), system-ui, sans-serif;flex-direction:column;line-height:1.75;display:flex}.legal-header{z-index:1;background:var(--catso-bg-root);border-bottom:1px solid var(--catso-line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem clamp(1rem,5vw,4rem);display:flex;position:sticky;top:0}.legal-brand{min-height:2.75rem;color:var(--catso-text);align-items:flex-start;text-decoration:none;display:inline-flex}.legal-brand__wordmark{font-family:var(--ma-font-display);letter-spacing:.04em;font-size:clamp(1.4rem,3vw,2rem);line-height:1}.legal-brand__tm{color:var(--catso-life);font-family:var(--ma-font-interface), system-ui, sans-serif;margin:-.1rem 0 0 .18rem;font-size:.55em;font-weight:700;line-height:1}.legal-header-back{min-height:2.75rem;color:var(--catso-text-secondary);align-items:center;font-size:.82rem;font-weight:600;text-decoration:none;display:inline-flex}.legal-header-back:hover,.legal-header-back:focus-visible{color:var(--catso-focus);text-underline-offset:.22rem;text-decoration:underline}.legal-main{flex:1;width:min(100%,960px);margin:0 auto;padding:clamp(2.5rem,7vw,5.5rem) clamp(1rem,5vw,2.5rem) 5rem}.legal-doc{overflow-wrap:anywhere;box-shadow:none;background:0 0;border:0;border-radius:0;padding:0}.legal-doc-title{max-width:24ch;color:var(--catso-text);font-family:var(--ma-font-interface), system-ui, sans-serif;overflow-wrap:anywhere;margin:0 0 1rem;font-size:clamp(2rem,4vw,3rem);font-weight:600;line-height:1.15}.legal-doc-intro{max-width:68ch;color:var(--catso-text-secondary);margin:0;font-size:clamp(1rem,1.5vw,1.12rem);line-height:1.75}.legal-doc-updated{color:var(--catso-text-muted);margin:.85rem 0 0;font-size:.82rem;line-height:1.5}.legal-section{margin:0;padding:2.25rem 0}.legal-section+.legal-section{border-top:1px solid var(--catso-line)}.legal-section h2{color:var(--catso-text);font-family:var(--ma-font-interface), system-ui, sans-serif;letter-spacing:normal;text-transform:none;margin:0 0 .95rem;font-size:clamp(.95rem,1.5vw,1rem);font-weight:600;line-height:1.4}.legal-section p,.legal-section ul{max-width:72ch}.legal-section p{color:var(--catso-text);margin:0 0 1rem}.legal-section ul{margin:0 0 1rem;padding-left:1.35rem}.legal-section li{margin-bottom:.6rem;padding-left:.25rem}.legal-section li::marker{color:var(--catso-text-muted)}.legal-section a{color:var(--catso-focus);text-underline-offset:.2em;text-decoration:underline}.legal-section a:hover{color:var(--catso-text)}.legal-section code{max-width:100%;color:var(--catso-text);background:var(--catso-bg-secondary);border:1px solid var(--catso-line);border-radius:var(--plain-radius-control);font-family:var(--ma-font-tech), ui-monospace, monospace;overflow-wrap:anywhere;padding:.12rem .35rem;font-size:.9em}.legal-beta-notice{color:var(--catso-text-secondary);border-top:1px solid var(--catso-line);background:0 0;margin:1.5rem 0 0;padding:1.25rem 0 0;font-size:.9rem;line-height:1.65}.legal-beta-notice p{max-width:72ch;margin:0}.legal-beta-notice strong{color:var(--catso-text);font-weight:600}.legal-footer{color:var(--catso-text-muted);border-top:1px solid var(--catso-line);background:0 0;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding:1.5rem clamp(1rem,5vw,4rem);font-size:.78rem;display:flex}.legal-footer-nav{flex-wrap:wrap;gap:.35rem 1.1rem;display:flex}.legal-footer a{min-height:2.5rem;color:var(--catso-focus);align-items:center;text-decoration:none;display:inline-flex}.legal-footer a:hover,.legal-footer a[aria-current=page]{color:var(--catso-text);text-underline-offset:.22rem;text-decoration:underline}.legal-page a:focus-visible{outline:2px solid var(--catso-focus);outline-offset:3px;border-radius:var(--plain-radius-control)}@media (prefers-reduced-motion:reduce){.legal-page *{scroll-behavior:auto;transition-duration:0s!important}}@media (max-width:640px){.legal-header{align-items:flex-start;position:static}.legal-header-back{font-size:.78rem}.legal-main{padding-top:2.5rem}.legal-section{padding:1.8rem 0}.legal-footer{align-items:flex-start}.legal-footer-nav{width:100%}}