.legal-page{--legal-max:1180px;--legal-bg:#020617;--legal-bg-soft:#0b1120;--legal-card:#0f172ae0;--legal-card-soft:#0f172ab8;--legal-border:#94a3b838;--legal-text:#f8fafc;--legal-muted:#94a3b8;--legal-link:#93c5fd;--legal-accent:#3b82f6;--legal-accent-strong:#2563eb;--legal-accent-glow:#3b82f659;--legal-heading:#f1f5f9;--legal-shadow:0 18px 40px #02061759;min-height:100dvh;color:var(--legal-text);font-family:var(--font-geist-sans,"Inter", system-ui, sans-serif);background:radial-gradient(circle at 10% -6%, #3b82f638, transparent 44%), radial-gradient(circle at 92% 4%, #a855f729, transparent 40%), radial-gradient(circle at 50% 100%, #22c55e14, transparent 50%), linear-gradient(180deg, var(--legal-bg-soft), var(--legal-bg) 60%);line-height:1.55;position:relative;overflow-x:clip}body.dash-theme-light .legal-page,body.theme-light .legal-page{--legal-bg:#f8fafc;--legal-bg-soft:#eef2ff;--legal-card:#fff;--legal-card-soft:#f1f5f9;--legal-border:#64748b38;--legal-text:#0f172a;--legal-muted:#64748b;--legal-link:#1d4ed8;--legal-heading:#0f172a;--legal-shadow:0 18px 40px #0f172a14;--legal-accent-glow:#2563eb33}.legal-page__ambient{pointer-events:none;z-index:0;position:fixed;inset:0}.legal-page__orb{filter:blur(60px);opacity:.55;border-radius:50%;position:absolute}.legal-page__orb--1{background:#3b82f659;width:320px;height:320px;top:-80px;left:-60px}.legal-page__orb--2{background:#a855f747;width:280px;height:280px;top:12%;right:-40px}.legal-page__orb--3{background:#22c55e26;width:360px;height:360px;bottom:-120px;left:35%}.legal-header{z-index:50;border-bottom:1px solid var(--legal-border);background:color-mix(in srgb, var(--legal-bg) 72%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);width:100%;position:sticky;top:0}.legal-header__inner{max-width:var(--legal-max);padding:max(14px, env(safe-area-inset-top,0px)) max(20px, env(safe-area-inset-right,0px)) 14px max(20px, env(safe-area-inset-left,0px));flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:0 auto;display:flex}.legal-header__menu-btn{border:1px solid var(--legal-border);background:var(--legal-card-soft);width:44px;height:44px;color:var(--legal-text);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;display:none}.legal-nav{flex-wrap:wrap;flex:auto;justify-content:flex-end;align-items:center;gap:6px;display:flex}.legal-nav__link{border:1px solid var(--legal-border);background:var(--legal-card-soft);min-height:44px;color:var(--legal-muted);border-radius:999px;align-items:center;padding:9px 14px;font-size:.9rem;font-weight:700;text-decoration:none;transition:color .2s,background .2s,border-color .2s,transform .2s;display:inline-flex}.legal-nav__link:hover{color:var(--legal-text);border-color:color-mix(in srgb, var(--legal-accent) 35%, var(--legal-border));transform:translateY(-1px)}.legal-nav__link.is-active,.legal-nav__link[aria-current=page]{color:var(--legal-accent);background:color-mix(in srgb, var(--legal-accent) 12%, var(--legal-card-soft));border-color:color-mix(in srgb, var(--legal-accent) 40%, var(--legal-border));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--legal-accent) 25%, transparent)}.legal-header__prefs{border:1px solid var(--legal-border);background:var(--legal-card-soft);border-radius:16px;align-items:center;gap:8px;margin-left:auto;padding:4px;display:inline-flex}.legal-header__btn{white-space:nowrap;border:1px solid #0000;border-radius:12px;justify-content:center;align-items:center;padding:10px 16px;font-size:.9rem;font-weight:700;text-decoration:none;transition:transform .2s,box-shadow .25s,background .2s;display:inline-flex}.legal-header__btn--ghost{color:var(--legal-text);background:var(--legal-card-soft);border-color:var(--legal-border)}.legal-header__btn--ghost:hover{background:var(--legal-card);transform:translateY(-1px)}.legal-header__auth-placeholder{visibility:hidden;pointer-events:none;min-width:5.5rem}.legal-header__btn--primary{color:#fff;background:linear-gradient(135deg, var(--legal-accent), var(--legal-accent-strong));box-shadow:0 8px 24px var(--legal-accent-glow)}.legal-header__btn--primary:hover{box-shadow:0 12px 32px var(--legal-accent-glow);transform:translateY(-2px)}.legal-page__body{z-index:1;max-width:var(--legal-max);padding:2rem max(20px, env(safe-area-inset-right,0px)) max(4rem, calc(4rem + env(safe-area-inset-bottom,0px))) max(20px, env(safe-area-inset-left,0px));margin:0 auto;position:relative}.legal-page__body--wide .legal-main{max-width:none}.legal-main{width:100%}.legal-main h1{color:var(--legal-heading);letter-spacing:-.03em;margin:0 0 .6rem;font-size:clamp(1.85rem,4vw,2.45rem)}.legal-subtitle{color:var(--legal-muted);max-width:720px;margin:0 0 .75rem;font-size:1.02rem}.legal-updated{color:var(--legal-muted);margin:0 0 2rem;font-size:.875rem}.legal-section{border:1px solid var(--legal-border);background:color-mix(in srgb, var(--legal-card) 88%, transparent);box-shadow:var(--legal-shadow);border-radius:16px;margin-bottom:2rem;padding:1.25rem 1.35rem;scroll-margin-top:80px}.legal-section h2{color:var(--legal-heading);margin:0 0 .85rem;font-size:1.2rem}.legal-section p{color:color-mix(in srgb, var(--legal-text) 88%, var(--legal-muted));margin:0 0 .75rem;line-height:1.65}.legal-section ul{color:color-mix(in srgb, var(--legal-text) 88%, var(--legal-muted));margin:0;padding-left:1.25rem;line-height:1.65}.legal-section li+li{margin-top:.35rem}.legal-footer{border-top:1px solid var(--legal-border);margin-top:3rem;padding-top:1.75rem}.legal-footer__nav{flex-wrap:wrap;gap:.5rem 1rem;margin-bottom:.85rem;display:flex}.legal-footer__nav a,.legal-footer__link-btn{color:var(--legal-link);font-size:.9rem;font-weight:600;text-decoration:none}.legal-footer__link-btn{cursor:pointer;font:inherit;background:0 0;border:none;padding:0}.legal-footer__nav a:hover,.legal-footer__link-btn:hover{text-decoration:underline}.legal-footer__nav--secondary a{color:var(--legal-muted)}.legal-footer__copy{color:var(--legal-muted);margin:.5rem 0 0;font-size:.82rem}.legal-disclaimer{background:var(--legal-card-soft);border:1px solid var(--legal-border);color:var(--legal-muted);border-radius:12px;margin-top:1.5rem;padding:1rem 1.1rem;font-size:.85rem;line-height:1.5}.cookie-banner,.cookie-modal__panel{--cookie-bg:#0f172a;--cookie-text:#f8fafc;--cookie-muted:#cbd5e1;--cookie-link:#93c5fd;--cookie-border:#94a3b866;--cookie-accent:#2563eb;--cookie-accent-hover:#1d4ed8}.cookie-banner{--cookie-shadow:0 -12px 40px #0206178c, 0 0 0 1px #94a3b833;z-index:99999;background:var(--cookie-bg);color:var(--cookie-text);border-top:1px solid var(--cookie-border);box-shadow:var(--cookie-shadow);padding:1rem 1.25rem;padding-bottom:max(1rem, calc(1rem + env(safe-area-inset-bottom,0px)));padding-left:max(1.25rem, env(safe-area-inset-left,0px));padding-right:max(1.25rem, env(safe-area-inset-right,0px));position:fixed;bottom:0;left:0;right:0}body.dash-theme-light .cookie-banner,body.theme-light .cookie-banner,body.dash-theme-light .cookie-modal__panel,body.theme-light .cookie-modal__panel{--cookie-bg:#fff;--cookie-text:#0f172a;--cookie-muted:#475569;--cookie-link:#1d4ed8;--cookie-border:#64748b59}body.dash-theme-light .cookie-banner,body.theme-light .cookie-banner{--cookie-shadow:0 -12px 40px #0f172a1f, 0 0 0 1px #0f172a14}.cookie-banner__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.25rem;max-width:72rem;margin:0 auto;display:flex}.cookie-banner__content{flex:16rem;min-width:0}.cookie-banner__title{letter-spacing:.01em;color:var(--cookie-text);margin:0 0 .35rem;font-size:.95rem;font-weight:700}.cookie-banner__text{color:var(--cookie-muted);margin:0;font-size:.9375rem;line-height:1.55}.cookie-banner__text a{color:var(--cookie-link);text-underline-offset:2px;font-weight:600;text-decoration:underline}.cookie-banner__text a:hover{color:var(--cookie-accent)}.cookie-banner__actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:.625rem;display:flex}.cookie-banner__btn{cursor:pointer;white-space:nowrap;border:none;border-radius:10px;min-height:44px;padding:.7rem 1.35rem;font-size:.9375rem;font-weight:700;transition:background .15s,transform .15s,box-shadow .15s}.cookie-banner__btn--primary{background:linear-gradient(135deg, var(--cookie-accent,#2563eb), #1e40af);color:#fff;box-shadow:0 4px 14px #2563eb59}.cookie-banner__btn--primary:hover{background:linear-gradient(135deg, var(--cookie-accent-hover,#1d4ed8), #1e3a8a);transform:translateY(-1px)}.cookie-banner__btn--primary:active{transform:translateY(0)}.cookie-banner__btn--secondary{color:var(--cookie-text);border:1px solid var(--cookie-border);background:0 0}.cookie-banner__btn--secondary:hover{background:#94a3b81f}.cookie-banner__btn--ghost{color:var(--cookie-text);background:#94a3b824}.cookie-banner__btn--ghost:hover{background:#94a3b838}.cookie-modal{z-index:100000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.cookie-modal__backdrop{cursor:pointer;background:#0206179e;border:none;position:absolute;inset:0}.cookie-modal__panel{background:var(--cookie-bg);width:min(100%,36rem);max-height:min(90vh,720px);color:var(--cookie-text);border:1px solid var(--cookie-border);border-radius:16px;padding:1.25rem 1.35rem 1.35rem;position:relative;overflow:auto;box-shadow:0 24px 64px #02061773}body.dash-theme-light .cookie-modal__panel,body.theme-light .cookie-modal__panel{box-shadow:0 24px 64px #0f172a26}.cookie-modal__header{justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.75rem;display:flex}.cookie-modal__title{margin:0;font-size:1.125rem;font-weight:700}.cookie-modal__close{color:inherit;cursor:pointer;background:0 0;border:none;border-radius:8px;padding:.15rem .35rem;font-size:1.5rem;line-height:1}.cookie-modal__close:hover{background:#94a3b829}.cookie-modal__intro{color:var(--cookie-muted,#cbd5e1);margin:0 0 1rem;font-size:.9375rem;line-height:1.55}.cookie-modal__intro a{color:var(--cookie-link,#93c5fd);font-weight:600}.cookie-modal__list{gap:.75rem;margin:0 0 1.25rem;padding:0;list-style:none;display:grid}.cookie-modal__item{border:1px solid var(--cookie-border,#94a3b859);border-radius:12px;padding:.85rem .95rem}.cookie-modal__item p{color:var(--cookie-muted,#cbd5e1);margin:.35rem 0 0;font-size:.875rem;line-height:1.5}.cookie-modal__item-head{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.cookie-modal__badge{text-transform:uppercase;letter-spacing:.04em;color:var(--cookie-muted,#94a3b8);font-size:.75rem;font-weight:700}.cookie-modal__toggle{cursor:pointer;align-items:center;display:inline-flex;position:relative}.cookie-modal__toggle input{opacity:0;width:0;height:0;position:absolute}.cookie-modal__toggle-ui{background:#94a3b873;border-radius:999px;width:44px;height:26px;transition:background .15s;position:relative}.cookie-modal__toggle-ui:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px}.cookie-modal__toggle input:checked+.cookie-modal__toggle-ui{background:var(--cookie-accent,#2563eb)}.cookie-modal__toggle input:checked+.cookie-modal__toggle-ui:after{transform:translate(18px)}.cookie-modal__toggle input:focus-visible+.cookie-modal__toggle-ui{outline:2px solid var(--cookie-accent,#2563eb);outline-offset:2px}.cookie-modal__actions{flex-wrap:wrap;justify-content:flex-end;gap:.625rem;display:flex}@media (max-width:640px){.cookie-banner{padding-top:1.125rem;padding-bottom:max(1.125rem, calc(1.125rem + env(safe-area-inset-bottom,0px)))}.cookie-banner__inner{flex-direction:column;align-items:stretch;gap:1rem}.cookie-banner__actions{width:100%}.cookie-banner__btn--primary{justify-content:center;width:100%}.cookie-banner__btn--secondary,.cookie-banner__btn--ghost{width:100%}.cookie-modal__actions{flex-direction:column}.cookie-modal__actions .cookie-banner__btn{width:100%}}@media (max-width:960px){.legal-header__inner{grid-template-columns:1fr auto;align-items:center;display:grid}.legal-header__menu-btn{display:inline-flex}.legal-nav{border-top:1px solid var(--legal-border);flex-direction:column;justify-content:flex-start;align-items:stretch;gap:8px;width:100%;padding-top:14px;display:none}.legal-nav.is-open{grid-column:1/-1;display:flex}.legal-nav__link{justify-content:center}.legal-header__prefs{justify-content:center;width:100%;margin-left:0}.legal-header__btn{text-align:center;width:100%}}@media (hover:none){.legal-nav__link:hover,.legal-header__btn--ghost:hover,.legal-header__btn--primary:hover{transform:none}}
