.rk-cc{
	--ink:#231018;
	--muted:rgba(35,16,24,.66);
	--pink:#D258B7;
	--pink-d:#B03E96;
	--line:rgba(35,16,24,.12);
	--body:"Montserrat",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
	--disp:"Shantell Sans","Montserrat",cursive;

	position:fixed;
	inset:0;
	z-index:2147482000;
	pointer-events:none;
	font-family:var(--body);
	color:var(--ink);
	-webkit-font-smoothing:antialiased;
}
.rk-cc[hidden]{ display:none; }
.rk-cc *,.rk-cc *::before,.rk-cc *::after{ box-sizing:border-box; margin:0; padding:0; }

.rk-cc__scrim{
	position:absolute;
	inset:0;
	background:rgba(35,16,24,.5);
	opacity:0;
	pointer-events:auto;
	transition:opacity .35s ease;
}
.rk-cc.is-panel .rk-cc__scrim{ opacity:1; }
.rk-cc__scrim[hidden]{ display:none; }

.rk-cc__bar{
	position:absolute;
	left:0;
	right:0;
	bottom:0;
	pointer-events:auto;
	background:#fff;
	border-top:1px solid var(--line);
	box-shadow:0 -20px 50px -30px rgba(35,16,24,.5);
	transform:translateY(102%);
	transition:transform .5s cubic-bezier(.22,1,.36,1);
}
.rk-cc.is-bar .rk-cc__bar{ transform:none; }
.rk-cc.is-panel .rk-cc__bar{ transform:translateY(102%); }

.rk-cc__bar-in{
	max-width:1400px;
	margin:0 auto;
	padding:20px clamp(18px,4vw,56px) calc(20px + env(safe-area-inset-bottom,0px));
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:clamp(16px,2.4vw,40px);
	flex-wrap:wrap;
}

.rk-cc__copy{ flex:1 1 340px; min-width:0; }
.rk-cc__t{
	font-family:var(--disp);
	font-size:17px;
	font-weight:700;
	color:var(--pink);
	margin-bottom:5px;
}
.rk-cc__p{
	font-size:13px;
	line-height:1.7;
	color:var(--muted);
	max-width:76ch;
}
.rk-cc__p a{ color:var(--pink-d); text-decoration:underline; text-underline-offset:3px; }

.rk-cc__acts{ display:flex; align-items:center; gap:9px; flex-wrap:wrap; flex:none; }

.rk-cc__b{
	position:relative;
	isolation:isolate;
	overflow:hidden;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	min-height:46px;
	padding:0 24px;
	border:1px solid transparent;
	border-radius:999px;
	font-family:var(--body);
	font-size:12.5px;
	font-weight:600;
	line-height:1.3;
	white-space:nowrap;
	cursor:pointer;
	background:transparent;
	color:var(--ink);
	transition:background-color .3s ease,color .3s ease,border-color .3s ease,transform .35s cubic-bezier(.22,1,.36,1);
}
.rk-cc__b--main{
	background:var(--pink);
	color:#fff;
	box-shadow:0 14px 28px -16px rgba(210,88,183,.95);
}
.rk-cc__b--main::before{
	content:"";
	position:absolute;
	inset:0;
	z-index:-1;
	background:var(--pink-d);
	transform:translateY(101%);
	transition:transform .45s cubic-bezier(.65,0,.35,1);
}
.rk-cc__b--main:hover{ color:#fff; transform:translateY(-2px); }
.rk-cc__b--main:hover::before{ transform:translateY(0); }

.rk-cc__b--ghost{ border-color:var(--line); background:#fff; }
.rk-cc__b--ghost:hover{ border-color:var(--pink); color:var(--pink); }

.rk-cc__b--link{
	padding:0 10px;
	color:var(--muted);
	text-decoration:underline;
	text-underline-offset:3px;
}
.rk-cc__b--link:hover{ color:var(--pink); }
.rk-cc__b:focus-visible{ outline:2px solid var(--pink-d); outline-offset:3px; }

.rk-cc__panel{
	position:absolute;
	left:50%;
	top:50%;
	width:min(560px,calc(100% - 32px));
	max-height:min(86vh,720px);
	transform:translate(-50%,-46%);
	display:flex;
	flex-direction:column;
	pointer-events:auto;
	background:#FBF7F5;
	border-radius:22px;
	overflow:hidden;
	opacity:0;
	box-shadow:0 40px 80px -40px rgba(35,16,24,.6);
	transition:opacity .35s ease,transform .45s cubic-bezier(.22,1,.36,1);
}
.rk-cc.is-panel .rk-cc__panel{ opacity:1; transform:translate(-50%,-50%); }
.rk-cc__panel[hidden]{ display:none; }

.rk-cc__panel-in{ display:flex; flex-direction:column; min-height:0; }

.rk-cc__head{
	flex:none;
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	padding:20px 22px;
	background:#fff;
	border-bottom:1px solid var(--line);
}
.rk-cc__head-t{ font-family:var(--disp); font-size:19px; font-weight:700; color:var(--pink); }
.rk-cc__x{
	width:40px;
	height:40px;
	flex:none;
	border:1px solid var(--line);
	border-radius:50%;
	background:#FBF7F5;
	color:var(--ink);
	display:inline-flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	transition:background-color .3s ease,color .3s ease,transform .3s cubic-bezier(.22,1,.36,1);
}
.rk-cc__x svg{ width:19px; height:19px; }
.rk-cc__x:hover{ background:var(--pink); color:#fff; transform:rotate(90deg); }

.rk-cc__scroll{
	flex:1 1 auto;
	overflow-y:auto;
	overscroll-behavior:contain;
	-webkit-overflow-scrolling:touch;
	padding:20px 22px;
}
.rk-cc__lead{ font-size:13px; line-height:1.72; color:var(--muted); margin-bottom:18px; }
.rk-cc__lead a{ color:var(--pink-d); text-decoration:underline; text-underline-offset:3px; }

.rk-cc__cat{
	padding:16px 18px;
	margin-bottom:10px;
	border-radius:14px;
	background:#fff;
	border:1px solid var(--line);
}
.rk-cc__cat-top{
	display:flex;
	align-items:center;
	justify-content:space-between;
	gap:14px;
	margin-bottom:8px;
}
.rk-cc__cat-n{ font-size:14px; font-weight:700; color:var(--ink); }
.rk-cc__cat-d{ font-size:12.5px; line-height:1.65; color:var(--muted); }
.rk-cc__cat-i{
	font-size:11px;
	line-height:1.5;
	color:rgba(35,16,24,.45);
	margin-top:8px;
	padding-top:8px;
	border-top:1px solid var(--line);
	word-break:break-word;
}
.rk-cc__lock{
	font-size:10.5px;
	font-weight:700;
	letter-spacing:.08em;
	text-transform:uppercase;
	color:var(--muted);
	flex:none;
}

.rk-cc__sw{ position:relative; flex:none; cursor:pointer; display:inline-flex; }
.rk-cc__sw input{
	position:absolute;
	opacity:0;
	width:100%;
	height:100%;
	margin:0;
	cursor:pointer;
}
.rk-cc__sw-t{
	display:block;
	width:46px;
	height:26px;
	border-radius:999px;
	background:rgba(35,16,24,.18);
	transition:background-color .3s ease;
}
.rk-cc__sw-t::after{
	content:"";
	position:absolute;
	top:3px;
	left:3px;
	width:20px;
	height:20px;
	border-radius:50%;
	background:#fff;
	box-shadow:0 2px 6px rgba(35,16,24,.3);
	transition:transform .34s cubic-bezier(.22,1,.36,1);
}
.rk-cc__sw input:checked + .rk-cc__sw-t{ background:var(--pink); }
.rk-cc__sw input:checked + .rk-cc__sw-t::after{ transform:translateX(20px); }
.rk-cc__sw input:focus-visible + .rk-cc__sw-t{ outline:2px solid var(--pink-d); outline-offset:3px; }

.rk-cc__foot{
	flex:none;
	display:flex;
	gap:9px;
	padding:16px 22px calc(18px + env(safe-area-inset-bottom,0px));
	background:#fff;
	border-top:1px solid var(--line);
}
.rk-cc__foot .rk-cc__b{ flex:1 1 auto; }

.rk-cc__fab{
	position:fixed;
	bottom:22px;
	z-index:2147481500;
	width:46px;
	height:46px;
	border:1px solid var(--line, rgba(35,16,24,.12));
	border-radius:50%;
	background:#fff;
	color:#D258B7;
	display:inline-flex;
	align-items:center;
	justify-content:center;
	cursor:pointer;
	box-shadow:0 14px 30px -18px rgba(35,16,24,.5);
	opacity:0;
	transform:scale(.7);
	transition:opacity .4s ease,transform .45s cubic-bezier(.22,1,.36,1),background-color .3s ease,color .3s ease;
}
.rk-cc__fab[hidden]{ display:none; }
.rk-cc__fab.is-in{ opacity:1; transform:none; }
.rk-cc__fab svg{ width:23px; height:23px; }
.rk-cc__fab:hover{ background:#D258B7; color:#fff; transform:translateY(-3px); }
.rk-cc[data-pos="bottom-left"] ~ .rk-cc__fab,
.rk-cc__fab{ left:22px; }
.rk-cc[data-pos="bottom-right"] ~ .rk-cc__fab{ left:auto; right:22px; }

@media (max-width:820px){
	.rk-cc__bar-in{ flex-direction:column; align-items:stretch; gap:16px; }
	.rk-cc__acts{ flex-direction:column-reverse; align-items:stretch; }
	.rk-cc__b{ width:100%; }
	.rk-cc__b--link{ min-height:36px; }
}
@media (max-width:520px){
	.rk-cc__foot{ flex-direction:column-reverse; }
	.rk-cc__fab{ bottom:16px; left:16px; }
	.rk-cc[data-pos="bottom-right"] ~ .rk-cc__fab{ left:auto; right:16px; }
}

@media (prefers-reduced-motion:reduce){
	.rk-cc__bar,.rk-cc__panel,.rk-cc__scrim,.rk-cc__b,.rk-cc__b--main::before,.rk-cc__x,.rk-cc__sw-t,.rk-cc__sw-t::after,.rk-cc__fab{ transition:none !important; }
}
