/* SOULULAB privacy center 3.2.65 — liquid glass, adaptive light/dark theme, legacy popup replacement */
.soulu-privacy[hidden]{display:none!important}
.soulu-privacy{position:fixed;z-index:2147483000;inset:auto 14px calc(14px + env(safe-area-inset-bottom,0px)) auto;pointer-events:none;font-family:Montserrat,Arial,sans-serif;box-sizing:border-box}
.soulu-privacy *, .soulu-privacy *::before, .soulu-privacy *::after{box-sizing:border-box}
.soulu-privacy{
 --sp-card-bg: rgba(255,255,255,.46);
 --sp-card-bg-2: rgba(255,255,255,.20);
 --sp-card-border: rgba(214,193,233,.82);
 --sp-card-shadow: 0 24px 64px rgba(64,45,91,.18);
 --sp-card-text: #2d2840;
 --sp-card-text-soft: #5e5871;
 --sp-chip-bg: rgba(255,255,255,.46);
 --sp-chip-border: rgba(206,183,231,.9);
 --sp-chip-text: #9a24a0;
 --sp-close-bg: rgba(255,255,255,.42);
 --sp-close-border: rgba(196,174,220,.72);
 --sp-close-text: #5f586d;
 --sp-btn-secondary-bg: rgba(255,255,255,.40);
 --sp-btn-secondary-border: rgba(196,174,220,.72);
 --sp-btn-secondary-text: #4f4462;
 --sp-btn-primary-bg: linear-gradient(135deg, rgba(206,43,184,.94), rgba(120,36,240,.92));
 --sp-btn-primary-border: rgba(176,79,223,.75);
 --sp-btn-primary-shadow: 0 18px 34px rgba(165,65,207,.24);
 --sp-legal-text: #726a86;
 --sp-legal-link: #6c547b;
 --sp-focus: #b842c3;
}
.soulu-privacy[data-tone="dark"]{
 --sp-card-bg: rgba(14,18,32,.56);
 --sp-card-bg-2: rgba(51,79,140,.12);
 --sp-card-border: rgba(126,186,255,.34);
 --sp-card-shadow: 0 30px 80px rgba(4,7,15,.42);
 --sp-card-text: #eef3ff;
 --sp-card-text-soft: rgba(222,231,255,.82);
 --sp-chip-bg: rgba(18,30,58,.44);
 --sp-chip-border: rgba(121,188,255,.42);
 --sp-chip-text: #8fd1ff;
 --sp-close-bg: rgba(255,255,255,.08);
 --sp-close-border: rgba(148,200,255,.28);
 --sp-close-text: #eef3ff;
 --sp-btn-secondary-bg: rgba(255,255,255,.06);
 --sp-btn-secondary-border: rgba(144,194,255,.30);
 --sp-btn-secondary-text: #ebf2ff;
 --sp-btn-primary-bg: linear-gradient(135deg, rgba(89,237,255,.90), rgba(86,114,255,.88));
 --sp-btn-primary-border: rgba(115,207,255,.56);
 --sp-btn-primary-shadow: 0 18px 34px rgba(59,128,255,.26);
 --sp-legal-text: rgba(207,221,255,.74);
 --sp-legal-link: #a8dbff;
 --sp-focus: #88d4ff;
}
.soulu-privacy__card{position:relative;width:min(440px,calc(100vw - 28px));max-height:min(78dvh,620px);overflow-y:auto;padding:24px 22px 18px;border:1px solid var(--sp-card-border);border-radius:28px;background:linear-gradient(145deg,var(--sp-card-bg),var(--sp-card-bg-2));color:var(--sp-card-text);box-shadow:var(--sp-card-shadow), inset 0 1px 0 rgba(255,255,255,.22);-webkit-backdrop-filter:blur(28px) saturate(180%);backdrop-filter:blur(28px) saturate(180%);pointer-events:auto;transform:translateY(10px);opacity:0;transition:opacity .25s ease,transform .25s ease,border-color .25s ease;background-clip:padding-box}
.soulu-privacy__card::before{content:"";position:absolute;inset:1px;border-radius:26px;pointer-events:none;background:linear-gradient(180deg, rgba(255,255,255,.22), rgba(255,255,255,0) 36%), radial-gradient(120% 80% at 100% 0%, rgba(255,255,255,.14), transparent 52%);opacity:.95}
.soulu-privacy__card::after{content:"";position:absolute;left:24px;right:24px;bottom:0;height:1px;background:linear-gradient(90deg, transparent, rgba(255,255,255,.28), transparent);pointer-events:none}
.soulu-privacy.is-visible .soulu-privacy__card{opacity:1;transform:translateY(0)}
.soulu-privacy__top{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;z-index:1}
.soulu-privacy__label{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:7px 13px;border-radius:999px;border:1px solid var(--sp-chip-border);background:var(--sp-chip-bg);color:var(--sp-chip-text);font:750 11px/1.25 Montserrat,sans-serif;letter-spacing:.02em;box-shadow:inset 0 1px 0 rgba(255,255,255,.16)}
.soulu-privacy__label svg{width:16px;height:16px;flex:0 0 16px}
.soulu-privacy__close{position:relative;flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;border:1px solid var(--sp-close-border);background:var(--sp-close-bg);color:var(--sp-close-text);font:500 28px/1 Montserrat,sans-serif;cursor:pointer;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 rgba(255,255,255,.15)}
.soulu-privacy h2,.soulu-privacy__text,.soulu-privacy__actions,.soulu-privacy__legal{position:relative;z-index:1}
.soulu-privacy h2{margin:0 0 10px;font:850 28px/1.04 Montserrat,sans-serif;letter-spacing:-.05em;color:var(--sp-card-text)}
.soulu-privacy__text{margin:0 0 18px;font:500 14px/1.62 Montserrat,sans-serif;color:var(--sp-card-text-soft)}
.soulu-privacy__actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.soulu-privacy__actions button{min-height:52px;padding:11px 12px;border-radius:16px;cursor:pointer;font:750 13px/1.28 Montserrat,sans-serif;letter-spacing:-.02em;white-space:normal;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease,color .2s ease}
.soulu-privacy__reject{border:1px solid var(--sp-btn-secondary-border);background:var(--sp-btn-secondary-bg);color:var(--sp-btn-secondary-text);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
.soulu-privacy__accept{border:1px solid var(--sp-btn-primary-border);background:var(--sp-btn-primary-bg);color:#fff;box-shadow:var(--sp-btn-primary-shadow), inset 0 1px 0 rgba(255,255,255,.18)}
.soulu-privacy__actions button:hover{transform:translateY(-1px)}
.soulu-privacy__legal{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:14px 0 0;font:500 11px/1.55 Montserrat,sans-serif;color:var(--sp-legal-text)}
.soulu-privacy__legal a{color:var(--sp-legal-link);text-underline-offset:3px}
.soulu-privacy button:focus-visible,.soulu-privacy a:focus-visible,[data-privacy-settings]:focus-visible{outline:3px solid var(--sp-focus);outline-offset:3px}
.soul-footer__privacy-settings{display:inline-flex;align-items:center;padding:0;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.life-consent[data-life-analytics-consent]{display:none!important}
@media(max-width:768px){
 .soulu-privacy{left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
 .soulu-privacy__card{width:100%;max-height:min(60dvh,540px);padding:18px 16px 15px;border-radius:24px}
 .soulu-privacy__card::before{border-radius:22px}
 .soulu-privacy h2{font-size:23px}
 .soulu-privacy__text{font-size:12.5px;margin-bottom:14px}
 .soulu-privacy__actions button{min-height:48px;font-size:11.5px;border-radius:14px}
 body.soulu-flow-nko-page .soulu-privacy{bottom:calc(94px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:420px){
 .soulu-privacy__actions{grid-template-columns:1fr}
 .soulu-privacy__actions button{min-height:46px}
 .soulu-privacy__legal{font-size:10px}
}
@media(prefers-reduced-motion:reduce){.soulu-privacy__card,.soulu-privacy__actions button{transition:none}}
