.legal-dialog { box-sizing:border-box; width:min(540px,calc(100vw - 32px)); max-height:calc(100vh - 32px); overflow:auto; border:1px solid var(--border-default,#ddd); border-radius:16px; padding:24px; color:var(--text-primary,#222); background:var(--surface-raised,#fff); font:14px/1.55 system-ui,sans-serif; }
.legal-dialog::backdrop { background:rgb(0 0 0 / .35); }
.legal-dialog h2 { margin:0 0 12px; font-size:22px; line-height:1.25; }
.legal-dialog p { margin:12px 0; }
.legal-dialog label { display:flex; align-items:flex-start; gap:10px; margin:14px 0; }
.legal-dialog input[type=checkbox] { flex:0 0 16px; width:16px; height:16px; margin:3px 0 0; accent-color:var(--text-primary,#333); }
.legal-docs,.legal-actions { display:flex; flex-wrap:wrap; gap:12px; }
.legal-dialog a { color:inherit; text-decoration:underline; }
.legal-actions button { padding:9px 12px; border:1px solid var(--border-default,#ccc); border-radius:8px; font:inherit; color:inherit; background:var(--surface-base,#f6f6f6); cursor:pointer; }
.legal-actions button[type=submit] { color:var(--surface-raised,#fff); background:var(--text-primary,#222); }
.legal-dialog :focus-visible { outline:2px solid var(--accent,#5358e6); outline-offset:3px; }
.legal-error { color:var(--danger,#b42318); }
