/* 18+ 年龄确认弹窗 */
html.eighteen-ok .eighteen {
display: none !important;
}
.eighteen {
position: fixed;
inset: 0;
z-index: 300;
display: none;
align-items: center;
justify-content: center;
padding: 24px;
}
.eighteen.is-open {
display: flex;
}
.eighteen__mask {
position: absolute;
inset: 0;
background: rgba(0, 0, 0, 0.7);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
.eighteen__dialog {
position: relative;
z-index: 1;
display: flex;
flex-direction: column;
align-items: center;
gap: 20px;
width: min(100%, 480px);
padding: 32px;
background: #141417;
border: 1px solid var(--line);
border-radius: var(--radius-xl);
box-shadow: 0 24px 64px rgba(0, 0, 0, 0.55);
}
.eighteen__badge {
display: inline-flex;
align-items: center;
justify-content: center;
width: 64px;
height: 64px;
border-radius: 999px;
background: rgba(236, 35, 127, 0.1);
border: 1px solid rgba(236, 35, 127, 0.3);
color: var(--accent-hot);
font-family: Inter, var(--font);
font-size: 20px;
font-weight: 600;
line-height: 26px;
}
.eighteen__title {
margin: 0;
text-align: center;
color: var(--text);
font-size: 22px;
font-weight: 600;
line-height: 30px;
}
.eighteen__desc {
margin: 0;
align-self: stretch;
text-align: center;
color: var(--text-muted);
font-size: 14px;
font-weight: 400;
line-height: 22px;
}
.eighteen__enter {
align-self: stretch;
height: 52px;
padding: 0 28px;
font-size: 16px;
line-height: 24px;
}
.eighteen__exit {
text-align: center;
color: var(--text-muted);
font-size: 14px;
font-weight: 400;
line-height: 22px;
cursor: pointer;
}
.eighteen__exit:hover {
color: var(--text);
}
body.eighteen-locked {
overflow: hidden;
}
@media (max-width: 768px) {
.eighteen {
padding: 24px;
}
.eighteen__dialog {
width: min(100%, 327px);
padding: 24px;
gap: 16px;
border-radius: 20px;
}
.eighteen__badge {
width: 56px;
height: 56px;
}
.eighteen__title {
font-size: 20px;
line-height: 28px;
}
.eighteen__desc {
font-size: 13px;
line-height: 20px;
}
.eighteen__enter {
height: 48px;
padding: 0 22px;
font-size: 15px;
line-height: 22px;
}
.eighteen__exit {
font-size: 13px;
line-height: 20px;
}
}