.legal-links { display:flex; flex-wrap:wrap; gap:12px; margin:12px 0; }
.legal-links button { border:0; background:transparent; color:#111; padding:6px 0; font-size:14px; line-height:1.5; text-decoration:underline; text-align:left; }
.legal-reader { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; background:rgba(0,0,0,.6); padding:16px; }
.legal-reader[hidden] { display:none; }
.legal-reader-panel { width:100%; max-width:760px; max-height:calc(100dvh - 32px); overflow:auto; background:#fff; color:#111; padding:24px; border-radius:0; overscroll-behavior:contain; }
.legal-reader-close { display:block; margin-left:auto; border:1px solid #777; padding:8px 14px; background:#fff; color:#111; font-size:14px; }
.legal-reader-panel h2 { font-size:24px; line-height:1.4; letter-spacing:0; overflow-wrap:anywhere; margin:20px 0 12px; }
.legal-reader-panel h3 { font-size:18px; line-height:1.5; letter-spacing:0; margin:24px 0 10px; }
.legal-reader-panel p { font-size:15px; line-height:1.8; overflow-wrap:anywhere; margin:10px 0; }
.legal-reader-panel .legal-reader-status { font-size:13px; color:#555; border-bottom:1px solid #ddd; padding-bottom:16px; }
@media(max-width:600px) { .legal-reader { padding:8px; } .legal-reader-panel { padding:18px; max-height:calc(100dvh - 16px); } }
