/* Legal pages and the compact shared footer. */
.site-footer{box-sizing:border-box;display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:32px;padding:7px 20px;font:10px/1.5 system-ui,sans-serif;color:var(--muted,#aaa5b4);background:var(--paper,#17151e);border-top:1px solid var(--line,#35313e)}
.site-footer nav{display:flex;gap:20px}.site-footer a{color:inherit;text-decoration:none}.site-footer a:hover{text-decoration:underline;color:var(--ink,#fff)}.site-footer a:focus-visible{outline:2px solid #b9ee59;outline-offset:4px;border-radius:3px}
body:not(.privacy-page):not(.auth-gated)>.site-footer{position:fixed;bottom:0;left:0;right:0;z-index:21}
body:not(.auth-gated)>.app{height:calc(100dvh - 86px)}
body.auth-gated>.site-footer{background:#17151e;color:#b8b2c3;border-color:#302b3b;position:static}
body.auth-gated #login-page{min-height:calc(100dvh - 34px)}
.privacy-page{margin:0;background:#17151e;color:#f1eef7;font:15px/1.85 'Manrope',system-ui,sans-serif;--paper:#17151e;--ink:#f5f2fa;--muted:#b8b2c3;--line:#35313e;color-scheme:dark}
.privacy-page *{box-sizing:border-box}.privacy-page a{color:#c7afff;text-underline-offset:4px}.privacy-page a:hover{color:#c0f267}.privacy-page .skip-link{position:fixed;left:20px;top:-80px;z-index:50;background:#b9ee59;color:#17151e;padding:10px 18px;border-radius:12px}.privacy-page .skip-link:focus{top:12px}
.legal-header{max-width:1280px;margin:auto;padding:27px 48px;display:flex;justify-content:space-between;align-items:center;gap:18px;border-bottom:1px solid #35313e}.legal-brand{display:inline-flex;align-items:center;gap:10px;color:#fff!important;text-decoration:none;font-weight:750;letter-spacing:-.6px;font-size:20px}.legal-brand img{border-radius:9px}.back-link{font-size:12px;text-decoration:none;color:#d0cadb!important}
.privacy-page main{max-width:1280px;padding:0 48px 80px;margin:auto}.legal-hero{padding:68px 0 48px}.legal-kicker{display:inline-block;font-size:10px;font-weight:750;letter-spacing:1.7px;color:#b9ee59}.legal-hero h1{font-size:clamp(58px,8vw,108px);letter-spacing:-6px;line-height:.99;font-weight:650;margin:25px 0 32px}.legal-hero h1 span{color:#b49be9}.legal-intro{display:flex;align-items:end;justify-content:space-between;gap:30px}.legal-intro p{margin:0;color:#d4cede;font-size:18px;line-height:1.7}.legal-intro .policy-date{font-size:12px;color:#aaa3b6;text-align:right}.preview-note{display:flex;gap:20px;margin-top:36px;border:1px solid #4f445f;border-radius:16px;padding:16px 20px;background:#25202f;font-size:12px;line-height:1.7;color:#c6bed2}.preview-note strong{white-space:nowrap;color:#e3d2ff;font-weight:650}
.legal-layout{display:grid;grid-template-columns:245px minmax(0,1fr);gap:65px;border-top:1px solid #35313e;padding-top:42px}.legal-index{align-self:start;position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto}.legal-index summary{font-size:10px;font-weight:750;letter-spacing:1.4px;color:#aaa3b6;padding:0 0 18px;cursor:pointer}.legal-index nav{display:grid;gap:2px}.legal-index a{display:flex;gap:10px;text-decoration:none;color:#c6bed2;font-size:12px;line-height:1.6;padding:9px 8px;border-radius:9px}.legal-index a:hover{background:#2a2435}.legal-index a span{color:#a28bc3;font-size:10px;padding-top:2px;font-variant-numeric:tabular-nums}
#policy-content{min-width:0}.privacy-summary{background:#b8ed5c;color:#1b2310;padding:25px 28px;border-radius:22px;margin-bottom:48px}.privacy-summary>span{font-size:9px;font-weight:800;letter-spacing:1.5px}.privacy-summary p{font-size:20px;line-height:1.6;letter-spacing:-.4px;margin:12px 0}.privacy-summary a{font-size:12px;color:#24360f;font-weight:700}
.privacy-page section{scroll-margin-top:25px;position:relative;padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid #35313e}.section-number{font-size:11px;color:#ac92dd;font-variant-numeric:tabular-nums}.privacy-page h2{font-size:26px;line-height:1.35;font-weight:650;letter-spacing:-.8px;margin:8px 0 20px}.privacy-page section p,.privacy-page li{font-size:14px;color:#c7c1d0;line-height:1.9}.privacy-page section strong{color:#f0eaf8;font-weight:650}.privacy-page ul{padding-left:20px}.privacy-page li{margin:12px 0}.privacy-page code{font-size:12px;background:#2b2536;color:#ddcafb;border-radius:5px;padding:2px 5px}.table-scroll{overflow:auto;border:1px solid #3a3345;border-radius:15px;margin:22px 0}.privacy-page table{border-collapse:collapse;width:100%;min-width:530px;text-align:left;font-size:12px;line-height:1.85}.privacy-page th{padding:13px 16px;background:#28222f;color:#ded3ee;font-size:10px;text-transform:uppercase;letter-spacing:.6px}.privacy-page td{padding:17px 16px;vertical-align:top;border-top:1px solid #38313f;color:#c7c1d0}.privacy-page td:first-child{width:22%;font-weight:650;color:#eae2f4}.back-top{font-size:12px;text-decoration:none}.privacy-page>.site-footer{max-width:1280px;margin:auto;padding:20px 48px;font-size:11px}.privacy-page :focus-visible{outline:2px solid #b9ee59;outline-offset:5px}
@media(min-width:821px) and (max-width:1000px){body:not(.auth-gated)>.app{height:calc(100dvh - 84px)}}
@media(max-width:820px), (max-height:500px) and (pointer:coarse){body:not(.auth-gated)>.app{height:calc(var(--mobile-vh,100dvh) - 52px - env(safe-area-inset-top,0px) - 114px - env(safe-area-inset-bottom,0px))}body:not(.auth-gated)>.mobile-nav{top:calc(var(--mobile-vh,100dvh) - 98px - env(safe-area-inset-bottom,0px))}body:not(.auth-gated)>.site-footer{min-height:26px;padding:4px 12px calc(4px + env(safe-area-inset-bottom,0px));font-size:9px;gap:8px}.site-footer nav{gap:13px}body.mobile-keyboard>.site-footer{display:none}body.mobile-keyboard>.app{height:calc(var(--mobile-vh,100dvh) - 60px - env(safe-area-inset-top,0px))}.legal-header{padding:22px 24px}.privacy-page main{padding:0 24px 55px}.legal-hero{padding-top:40px}.legal-hero h1{letter-spacing:-3px}.legal-layout{grid-template-columns:1fr;gap:30px;padding-top:25px}.legal-index{position:static;max-height:none}.legal-index nav{grid-template-columns:1fr 1fr}.legal-index summary{padding-bottom:8px}.privacy-page>.site-footer{padding:18px 24px}.preview-note{flex-direction:column;gap:6px}.legal-intro p{font-size:16px}.privacy-page h2{font-size:23px}.privacy-summary{margin-bottom:35px}}
@media(max-width:500px){.legal-header{padding:18px 20px}.legal-brand{font-size:17px}.legal-brand img{width:28px;height:28px}.back-link{font-size:10px}.privacy-page main{padding:0 20px 45px}.legal-hero{padding-bottom:30px}.legal-intro{flex-direction:column;align-items:start;gap:20px}.legal-intro .policy-date{text-align:left}.legal-index a{font-size:11px;padding-left:0}.privacy-summary{padding:22px}.privacy-summary p{font-size:18px}.privacy-page>.site-footer{padding:15px 20px}.privacy-page section p,.privacy-page li{font-size:13px}}
@media print{.privacy-page{background:#fff;color:#111}.legal-index,.back-link,.back-top,.skip-link{display:none}.legal-layout{display:block}.privacy-page main{padding:0}.legal-hero{padding:20px 0}.legal-hero h1{font-size:42px;letter-spacing:-2px}.legal-hero h1 span,.privacy-page a,.privacy-page section p,.privacy-page li,.privacy-page section strong,.privacy-page td,.privacy-page td:first-child{color:#111}.privacy-page th{color:#111;background:#eee}.privacy-summary{background:#eee}.preview-note{background:#eee;color:#111}.preview-note strong{color:#111}.privacy-page section{break-inside:auto}.privacy-page table{min-width:0}.table-scroll{overflow:visible}}
