/* JagMag Signals — DPDP consent card. Theme tokens (jl-tokens.css) with safe fallbacks. */
.jl-privacy{
	position:fixed; z-index:99980; right:20px; bottom:96px;
	width:380px; max-width:calc(100vw - 32px); box-sizing:border-box;
	background:var(--jl2-color-cream,#faf8f2); color:var(--jl2-color-ink,#14140f);
	border:1px solid var(--jl2-color-line,rgba(20,20,15,.1));
	border-radius:var(--jl2-radius-lg,30px);
	box-shadow:var(--jl2-shadow-lg,0 28px 60px rgba(20,20,15,.12));
	font-family:var(--jl2-font-sans,"Open Sans",sans-serif);
	padding:22px 22px 18px;
	opacity:0; transform:translateY(16px);
	transition:opacity .32s ease, transform .36s cubic-bezier(.2,.7,.2,1);
	& *{ box-sizing:border-box; }
	&.jl-privacy--in{ opacity:1; transform:translateY(0); }
	&.jl-privacy--custom .jl-privacy__choices{ display:block; }
	&.jl-privacy--custom .jl-privacy__quick{ display:none; }
}
.jl-privacy__head{ display:flex; align-items:flex-start; gap:12px; }
.jl-privacy__icon{ font-size:26px; line-height:1; flex:0 0 auto; margin-top:2px; }
.jl-privacy__title{ font-family:var(--jl2-font-display,"Sriracha",sans-serif); font-weight:400; font-size:21px; line-height:1.2; margin:0 0 4px; }
.jl-privacy__lang{
	margin-left:auto; flex:0 0 auto; border:1px solid var(--jl2-color-line,rgba(20,20,15,.1));
	background:transparent; color:var(--jl2-color-mute,#6b6660); cursor:pointer;
	border-radius:var(--jl2-radius-pill,999px); font-size:12px; padding:4px 10px; line-height:1.3; font-family:inherit;
	&:hover{ color:var(--jl2-color-ink,#14140f); border-color:var(--jl2-color-line-strong,rgba(20,20,15,.2)); }
}
.jl-privacy__text{ font-size:13.5px; line-height:1.55; color:var(--jl2-color-mute-soft,#58544e); margin:8px 0 14px; }
.jl-privacy__actions{ display:flex; gap:8px; flex-wrap:wrap; }
.jl-privacy__btn{
	flex:1 1 auto; border:1.5px solid var(--jl2-color-mehndi,#4d6b1f); cursor:pointer;
	border-radius:var(--jl2-radius-pill,999px); padding:11px 16px;
	font-size:14px; font-weight:600; font-family:inherit; line-height:1.2;
	transition:background .18s ease, color .18s ease;
	background:transparent; color:var(--jl2-color-mehndi-deep,#3d551a);
	&:not(.jl-privacy__btn--primary):hover{ background:var(--jl2-color-mehndi-wash,#eef3e2); }
	&.jl-privacy__btn--primary{ background:var(--jl2-color-mehndi,#4d6b1f); color:var(--jl2-color-white,#fff); }
	&.jl-privacy__btn--primary:hover{ background:var(--jl2-color-mehndi-deep,#3d551a); border-color:var(--jl2-color-mehndi-deep,#3d551a); }
}
.jl-privacy__btn:focus-visible,.jl-privacy__lang:focus-visible,.jl-privacy__link:focus-visible{ outline:2px solid var(--jl2-color-gold,#8f6b3d); outline-offset:2px; }
.jl-privacy__link{ display:inline-block; margin-top:10px; border:0; background:transparent; padding:0; cursor:pointer; font-size:12.5px; color:var(--jl2-color-mute,#6b6660); text-decoration:underline; font-family:inherit; &:hover{ color:var(--jl2-color-ink,#14140f); } }
.jl-privacy__choices{ display:none; margin:6px 0 12px; border-top:1px solid var(--jl2-color-line-soft,rgba(20,20,15,.05)); padding-top:10px; }
.jl-privacy__row{ display:flex; align-items:flex-start; gap:12px; padding:9px 0; & + &{ border-top:1px solid var(--jl2-color-line-soft,rgba(20,20,15,.05)); } }
.jl-privacy__row-text{ flex:1 1 auto; min-width:0; }
.jl-privacy__row-title{ font-size:14px; font-weight:600; margin:0 0 2px; display:flex; align-items:center; gap:8px; }
.jl-privacy__tag{ font-size:10.5px; font-weight:600; letter-spacing:.02em; text-transform:uppercase; color:var(--jl2-color-gold-deep,#6e4d11); background:var(--jl2-color-gold-soft,rgba(143,107,61,.16)); border-radius:var(--jl2-radius-pill,999px); padding:2px 8px; }
.jl-privacy__row-sub{ font-size:12.5px; line-height:1.45; color:var(--jl2-color-mute,#6b6660); margin:0; }
.jl-privacy__switch{ position:relative; flex:0 0 auto; width:42px; height:24px; margin-top:1px;
	& input{ position:absolute; opacity:0; width:0; height:0; }
	& input:checked + .jl-privacy__track{ background:var(--jl2-color-mehndi,#4d6b1f); }
	& input:checked + .jl-privacy__track::after{ transform:translateX(18px); }
	& input:disabled + .jl-privacy__track{ opacity:.55; cursor:default; }
	& input:focus-visible + .jl-privacy__track{ outline:2px solid var(--jl2-color-gold,#8f6b3d); outline-offset:2px; }
}
.jl-privacy__track{ position:absolute; inset:0; border-radius:999px; cursor:pointer; background:var(--jl2-color-line-strong,rgba(20,20,15,.2)); transition:background .18s ease;
	&::after{ content:""; position:absolute; top:3px; left:3px; width:18px; height:18px; border-radius:50%; background:var(--jl2-color-white,#fff); box-shadow:0 1px 3px rgba(0,0,0,.25); transition:transform .18s ease; }
}
.jl-privacy__rights{ font-size:11.5px; line-height:1.5; color:var(--jl2-color-mute,#6b6660); margin:12px 0 0; & a{ color:inherit; text-decoration:underline; } }
.jl-privacy__toast{
	position:fixed; z-index:99981; left:50%; bottom:24px; transform:translate(-50%,10px);
	background:var(--jl2-color-ink,#14140f); color:var(--jl2-color-cream,#faf8f2);
	border-radius:var(--jl2-radius-pill,999px); padding:10px 18px; font-size:13.5px;
	font-family:var(--jl2-font-sans,"Open Sans",sans-serif); box-shadow:var(--jl2-shadow-md,0 18px 40px rgba(20,20,15,.12));
	opacity:0; transition:opacity .25s ease, transform .25s ease; pointer-events:none; max-width:calc(100vw - 32px); text-align:center;
	&.jl-privacy__toast--in{ opacity:1; transform:translate(-50%,0); }
}
.jl-privacy-pill{
	position:fixed; z-index:99970; left:14px; bottom:14px; display:inline-flex; align-items:center; gap:6px;
	background:rgba(var(--jl2-color-cream-rgb,250,248,242),.92); color:var(--jl2-color-mute-soft,#58544e);
	border:1px solid var(--jl2-color-line,rgba(20,20,15,.1)); border-radius:var(--jl2-radius-pill,999px);
	padding:6px 12px 6px 10px; font-size:12px; font-family:var(--jl2-font-sans,"Open Sans",sans-serif);
	cursor:pointer; box-shadow:var(--jl2-shadow-sm,0 8px 20px rgba(20,20,15,.05));
	-webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); opacity:.85; transition:opacity .18s ease, transform .18s ease;
	&:hover{ opacity:1; transform:translateY(-1px); color:var(--jl2-color-ink,#14140f); }
	&[hidden]{ display:none; }
}
@media (max-width:640px){
	.jl-privacy{ right:0; left:0; bottom:0; width:auto; max-width:none; border-radius:var(--jl2-radius-lg,30px) var(--jl2-radius-lg,30px) 0 0; padding:20px 18px calc(16px + env(safe-area-inset-bottom)); max-height:82vh; overflow:auto; }
	.jl-privacy__actions{ flex-direction:column; }
	.jl-privacy__btn{ width:100%; }
	.jl-privacy-pill{ left:10px; bottom:calc(10px + env(safe-area-inset-bottom)); padding:5px 10px 5px 8px; }
	.jl-privacy-pill__label{ display:none; }
}
@media (prefers-reduced-motion:reduce){ .jl-privacy,.jl-privacy__toast,.jl-privacy-pill{ transition:none; } }
