
.pf-legal-wrap{position:fixed;left:0;right:0;bottom:0;z-index:4200;min-height:32px;padding:5px 14px calc(5px + env(safe-area-inset-bottom));border-top:1px solid #d7e1e4;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap;text-align:center;color:var(--muted);font-size:10.5px;line-height:1.25;box-shadow:0 -2px 12px #001a3008}
.pf-legal-copy{white-space:nowrap;color:#607783}
.pf-legal-links{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin:0}
.pf-legal-links button{border:0!important;background:transparent!important;padding:1px 0!important;color:var(--muted)!important;text-decoration:underline;text-underline-offset:2px;font-size:10.5px;min-height:auto!important}
.pf-legal-note{margin:0;font-size:10px;color:#71858e;white-space:nowrap}
body{padding-bottom:32px}
aside{padding-bottom:52px!important}
#stage{padding-bottom:32px}
.presentation-credit{display:none!important}
.pf-legal-modal[hidden]{display:none!important}.pf-legal-modal{position:fixed;inset:0;z-index:5000;background:#0b24304d;display:grid;place-items:center;padding:18px}
.pf-legal-card{width:min(760px,100%);max-height:min(82vh,780px);overflow:auto;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 22px 70px #001a3040;color:var(--ink)}
.pf-legal-head{position:sticky;top:0;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 18px;border-bottom:1px solid var(--line);z-index:1}
.pf-legal-head h2{margin:0;font-size:17px;text-transform:none;letter-spacing:0}.pf-legal-close{width:36px;height:36px;padding:0!important;font-size:22px;line-height:1;border-radius:50%!important}
.pf-legal-body{padding:18px}.pf-legal-body h3{margin:18px 0 7px;font-size:14px}.pf-legal-body h3:first-child{margin-top:0}.pf-legal-body p,.pf-legal-body li{font-size:12.5px;line-height:1.65;color:#3c525e}.pf-legal-body ul{padding-left:20px}.pf-legal-body strong{color:var(--ink)}
.pf-legal-warning{background:#f3f8f8;border:1px solid #d2e4e4;border-radius:9px;padding:11px 12px;margin:12px 0;color:#27434b!important}
.pf-legal-missing{background:#fff8e8;border:1px solid #ead8a8;border-radius:9px;padding:10px 12px;margin-top:14px}
.pf-stage-legal{display:none;position:absolute;right:10px;bottom:6px;z-index:8;gap:7px;align-items:center;font-size:9px;background:#ffffffc9;border:1px solid #d8e3e6;border-radius:999px;padding:4px 8px;backdrop-filter:blur(5px)}
.pf-stage-legal button{border:0!important;background:transparent!important;padding:0!important;font-size:9px!important;color:#607783!important;text-decoration:underline;min-height:auto!important}.presentation .pf-stage-legal{display:flex}
.pf-legal-card,.pf-legal-head h2,.pf-legal-body strong{color:#193f3c}.pf-legal-close{color:#193f3c!important;background:#edf5f1!important}
@media(max-width:920px){.pf-legal-modal{padding:10px}.pf-legal-card{max-height:88svh}.pf-legal-body{padding:15px}.pf-stage-legal{display:none!important}.pf-legal-wrap{min-height:36px;padding:5px 8px calc(5px + env(safe-area-inset-bottom));gap:6px;font-size:9.5px}.pf-legal-links{gap:6px}.pf-legal-links button{font-size:9.5px}.pf-legal-note{display:none}.pf-legal-copy{font-size:9.5px}body{padding-bottom:36px}aside{padding-bottom:54px!important}#stage{padding-bottom:36px}}

/* Native dialog: focus, Escape and the modal top layer also work over Welcome. */
html[data-theme=dark] .pf-legal-table table{color:#d1dfe5}html[data-theme=dark] .pf-legal-table th{background:#33494c;color:#edf5f4}html[data-theme=dark] .pf-legal-table th,html[data-theme=dark] .pf-legal-table td{border-color:#566a70}
dialog.pf-legal-modal{margin:0;inset:0;width:100vw;height:100svh;max-width:none;max-height:none;box-sizing:border-box;border:0;background:transparent;display:none}dialog.pf-legal-modal[open]{display:grid}dialog.pf-legal-modal::backdrop{background:#102a38b8;backdrop-filter:blur(4px)}.pf-legal-table{overflow:auto}.pf-legal-table table{border-collapse:collapse;width:100%;font:12px/1.6 system-ui;color:#3c525e}.pf-legal-table th,.pf-legal-table td{padding:10px;border:1px solid #d7e4df;text-align:left;vertical-align:top}.pf-legal-table th{background:#edf5f1}.pf-legal-date{padding-top:18px;color:#71838c!important;font-size:11px!important}
