
.legal-links{display:flex;justify-content:center;flex-wrap:wrap;gap:12px;padding:16px;margin:0 auto;max-width:100%;font-size:12px}.legal-links a,.legal-links button{color:var(--color-text-muted,#b4bed2);text-decoration:underline}.legal-links button{border:0;background:none;padding:0;font:inherit;cursor:pointer}
.privacy-notice[hidden]{display:none}.privacy-notice{position:fixed;left:18px;bottom:18px;z-index:26000;max-width:470px;box-sizing:border-box;padding:20px;border:1px solid var(--color-border-strong,#43516e);border-radius:14px;background:var(--color-surface-1,#141b2b);color:var(--color-text,#f0f3fa);box-shadow:0 10px 50px #0006;font:14px/1.6 system-ui,sans-serif}.privacy-notice p{margin:8px 0 14px}.privacy-notice a,.privacy-dialog a{color:var(--color-accent,#8bb5ff)}.privacy-actions{display:flex;gap:10px;flex-wrap:wrap}.privacy-actions button{flex:1;min-width:130px;min-height:44px;padding:10px 14px;border:1px solid var(--color-border-strong,#43516e);background:var(--color-surface-2,#253149);color:inherit;border-radius:8px;cursor:pointer;font:inherit}.privacy-dialog{max-width:560px;width:calc(100% - 24px);max-height:90dvh;overflow:auto;box-sizing:border-box;padding:26px;border:1px solid var(--color-border-strong,#43516e);border-radius:16px;background:var(--color-surface-1,#141b2b);color:var(--color-text,#f0f3fa);font:15px/1.7 system-ui,sans-serif}.privacy-dialog::backdrop{background:#000b}.privacy-dialog h2{font-size:22px;line-height:1.4;margin-top:0}
.legal-page{color-scheme:dark;background:#0d1320;color:#ecf1fa;font:16px/1.8 system-ui,sans-serif;margin:0}.legal-wrap{box-sizing:border-box;max-width:850px;margin:0 auto;padding:36px 22px 80px}.legal-wrap h1{font-size:clamp(28px,5vw,40px);line-height:1.3}.legal-wrap h2{font-size:22px;margin-top:36px;color:#a8c9ff}.legal-wrap a{color:#a8c9ff;overflow-wrap:anywhere}.legal-intro{border-left:3px solid #75a6ff;padding:12px 18px;background:#152038;border-radius:6px}.legal-wrap address{font-style:normal}.legal-wrap table{width:100%;border-collapse:collapse;font-size:14px}.legal-wrap th,.legal-wrap td{padding:12px;border:1px solid #36425a;text-align:left;vertical-align:top}.legal-scroll{overflow:auto}.legal-wrap summary{cursor:pointer;font-weight:600}.legal-wrap :focus-visible,.privacy-actions button:focus-visible{outline:2px solid #8bb5ff;outline-offset:3px}
@media(max-width:600px){.privacy-notice{left:10px;right:10px;bottom:10px;max-width:none;padding:16px;font-size:13px}.privacy-actions{gap:8px}.privacy-actions button{font-size:13px}.legal-links{padding-bottom:12px}.legal-wrap{padding:24px 18px 80px}}

.project-notice{max-width:850px;margin:8px auto 16px;padding:0 16px;text-align:center;font-size:12px;line-height:1.6;color:var(--color-text-muted,#aaa)}

/* Opaque dialog surfaces remain readable in translucent themes. */
.privacy-dialog{position:fixed;inset:0;margin:auto;background:var(--color-bg,#141b2b);z-index:30000}
