.legal-footer { display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px; padding:16px 24px 26px; font-size:12px; color:#a8bac4; }
.legal-footer a, .legal-inline a { color:#b5c7ce; text-decoration:underline; text-underline-offset:4px; }
.legal-footer a:hover, .legal-inline a:hover { color:#65ff79; }
.legal-inline { font-size:12px; line-height:1.6; color:#afc1cb; margin:12px 0; }
#legal-dialog { box-sizing:border-box; width:min(760px,calc(100vw - 28px)); max-height:calc(100dvh - 40px); padding:0; margin:auto; border:1px solid #34554c; border-radius:16px; background:#0b151c; color:#edf5f6; box-shadow:0 24px 100px #0009; }
#legal-dialog[open] { display:flex; flex-direction:column; }
#legal-dialog::backdrop { background:#000b; }
.legal-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; border-bottom:1px solid #2c424b; }
.legal-heading h2 { font-size:22px; margin:0; }
#legal-dialog button { font:inherit; cursor:pointer; color:#eaf8ef; background:#162d25; border:1px solid #4e795f; border-radius:8px; padding:10px 14px; }
#legal-dialog :focus-visible, .legal-footer a:focus-visible { outline:2px solid #65ff79; outline-offset:3px; }
#legal-content { overflow-y:auto; padding:8px 24px 24px; min-height:0; line-height:1.7; font-size:14px; }
#legal-content h3 { color:#71eea4; font-size:16px; margin:24px 0 8px; }
#legal-content p { white-space:pre-line; overflow-wrap:anywhere; margin:0 0 14px; color:#d0dce2; }
#legal-content .legal-draft { border-left:3px solid #dcc46b; padding:10px 14px; background:#26241a; margin-top:16px; color:#f6e5a5; }
.legal-actions { display:flex; align-items:center; flex-wrap:wrap; gap:12px; padding:16px 24px; border-top:1px solid #2c424b; }
.legal-actions span { font-size:12px; color:#afc1cb; }
@media(max-width:480px) { .legal-heading { padding:16px; } .legal-heading h2 { font-size:19px; } #legal-content { padding:8px 16px 20px; } .legal-actions { padding:14px 16px; } }
