/* Parent-driven scene: no independent animation, timer, or scroll listener. */
.legal-scene{--legal-opacity:0;--legal-enter:0;--legal-review:0;position:relative;z-index:3;width:100%;max-width:800px;margin-inline:auto;opacity:var(--legal-opacity);color:var(--ink,#eeede9);font-family:inherit;pointer-events:auto}
.legal-scene[hidden]{display:none!important}.legal-scene[inert]{pointer-events:none}
.legal-scene *{box-sizing:border-box}.legal-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:20px}.legal-kicker{font:10px/1.5 var(--mono,monospace);letter-spacing:1px;color:#98b2bc}.legal-heading h3{font-size:23px;letter-spacing:-.7px;font-weight:450;line-height:1.25;margin:6px 0 0;color:#dce7ea}
.legal-versions{display:flex;gap:3px;padding:3px;border:1px solid #afced433;border-radius:5px;background:#000000}.legal-versions button{min-height:36px;padding:7px 12px;border:1px solid transparent;border-radius:3px;background:transparent;color:#9eafb7;font:12px/1.3 var(--mono,monospace);cursor:pointer}.legal-versions button[aria-pressed="true"]{border-color:#aacfd950;background:#000000;color:#d0f1f2}.legal-versions button:hover{color:#f0fcfc}.legal-versions button:focus-visible{outline:2px solid var(--cyan,#a7dce0);outline-offset:3px}
.legal-pair{position:relative;display:grid;grid-template-columns:.8fr 1.2fr;gap:32px;align-items:stretch}.legal-source-link{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none;color:var(--cyan,#a7dce0)}.legal-source-link path{fill:none;stroke:currentColor;stroke-width:1;vector-effect:non-scaling-stroke}.legal-link-guide{opacity:.2}.legal-link-trace{stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--legal-enter));opacity:.8}.legal-source-link circle{fill:#b5e8ed}.legal-sheet{position:relative;border:1px solid #abcbd337;border-radius:4px;background:#000000;box-shadow:0 16px 40px #0002;overflow:hidden}.legal-sheet-label{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:40px;padding:10px 16px;border-bottom:1px solid #c7dce01c;font:11px/1.4 var(--mono,monospace);color:#bed0d7}.legal-sheet-label>span:last-child{font-size:10px;color:#94abb6;white-space:nowrap}.legal-source{transform:translateY(calc((1 - var(--legal-enter))*12px))}.legal-model{transform:translateY(calc((1 - var(--legal-enter))*-12px))}
.legal-clause{margin:24px 20px 20px;font-size:25px;line-height:1.45;letter-spacing:-.6px;color:#e1e7e9}.legal-term{white-space:nowrap}.legal-term strong{font-weight:500;color:var(--cyan,#a7dce0);border-bottom:1px solid #a7dce063}.legal-term del{font-size:19px;color:#a7a0aa;text-decoration-color:#cf9bb8;margin-right:5px}.legal-anchor,.legal-change{display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin:0 20px;padding:10px 0;border-top:1px solid #afced41c;font:11px/1.5 var(--mono,monospace);color:#8fa7b1}.legal-anchor strong,.legal-change strong{font-weight:400;color:#beced4;text-align:right}.legal-change strong{color:var(--cyan,#a7dce0)}.legal-author{margin:12px 20px 17px;font:10px/1.6 var(--mono,monospace);color:#a6b5be}
.legal-model pre{margin:18px 16px 12px;white-space:pre-wrap;overflow-wrap:normal;font:12px/1.8 var(--mono,monospace);color:#b2c0ca;tab-size:2}.legal-model code{font:inherit}.legal-code-type{color:#b6edf0}.legal-code-string{color:#c8d1c5}.legal-code-muted{color:#8ca4b0}.legal-model b{font-weight:500;color:#ccfaff;background:#a7dce018;border-bottom:1px solid #a7dce080;padding:1px 3px}.legal-model-note{margin:0 16px 17px;font:10px/1.6 var(--mono,monospace);color:#829ba7}
.legal-review{margin-top:18px;transform:translateY(calc((1 - var(--legal-review))*8px));border-top:1px solid #b7d7df40;padding-top:13px}.legal-review-heading{display:flex;justify-content:space-between;align-items:center;font:11px/1.5 var(--mono,monospace);color:#a5bcc6}.legal-review-heading>span:last-child{color:var(--cyan,#a7dce0)}.legal-route{display:flex;list-style:none;padding:0;margin:15px 0 0;gap:24px}.legal-route li{position:relative;display:flex;gap:12px;flex:1;align-items:flex-start;color:#8298a4}.legal-route li:not(:last-child):after{content:'';position:absolute;top:6px;right:0;width:18px;height:1px;background:#b4d6dc48}.legal-route i{display:block;flex-shrink:0;width:12px;height:12px;margin-top:2px;border:1px solid #597581;border-radius:50%;background:#000000}.legal-route .legal-route-done i{background:#98cbd0;border-color:#b5e2e5}.legal-route .legal-route-current i{border-color:#b5e2e5;box-shadow:0 0 0 3px #a7dce01c}.legal-route strong{display:block;font-size:12px;line-height:1.3;font-weight:450;color:#b5c6ce}.legal-route span{display:block;font:10px/1.5 var(--mono,monospace);margin-top:4px}.legal-route-current span{color:#a6d5db}.legal-bottom{display:flex;justify-content:space-between;gap:15px;margin-top:17px;font:10px/1.5 var(--mono,monospace);color:#7f949e}.legal-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(max-height:800px){.legal-heading{margin-bottom:16px}.legal-heading h3{font-size:21px}.legal-clause{font-size:23px;margin-top:19px;margin-bottom:16px}.legal-model pre{line-height:1.7;margin-top:14px}.legal-review{margin-top:15px}.legal-bottom{margin-top:13px}}
@media(min-width:1400px){.legal-model pre{font-size:13px}.legal-clause{font-size:27px}}
@media(max-width:1050px){.legal-heading h3{font-size:18px}.legal-versions button{font-size:10px;padding-inline:8px}.legal-clause{font-size:21px}.legal-model pre{font-size:10px}.legal-sheet-label{padding-inline:12px;font-size:10px}.legal-anchor,.legal-change{font-size:9px}.legal-route{gap:10px}.legal-route span{font-size:9px}}
@media(prefers-reduced-motion:reduce){.legal-source,.legal-model,.legal-review{transform:none}}
