/* Cookie consent modal / settings, restyled with the site tokens (library: frontend/libs/cookieconsent). */
#cc_div, .cc_div {
    --cc-bg: var(--hv-surface, #14161a); --cc-text: var(--hv-text, #f1f3f0); --cc-block-text: var(--hv-muted, #98a29d);
    --cc-btn-primary-bg: var(--hv-accent, #469346); --cc-btn-primary-text: #fff; --cc-btn-primary-hover-bg: color-mix(in srgb, var(--hv-accent, #469346) 84%, #fff);
    --cc-btn-secondary-bg: transparent; --cc-btn-secondary-text: var(--hv-text, #f1f3f0); --cc-btn-secondary-hover-bg: color-mix(in srgb, var(--hv-text, #f1f3f0) 8%, transparent);
    --cc-btn-border-radius: 999px; --cc-border-radius: 18px;
    --cc-toggle-bg-off: color-mix(in srgb, var(--hv-text, #f1f3f0) 24%, transparent); --cc-toggle-bg-on: var(--hv-accent, #469346); --cc-toggle-bg-readonly: color-mix(in srgb, var(--hv-accent, #469346) 45%, transparent);
    --cc-cookie-category-block-bg: transparent; --cc-cookie-category-block-bg-hover: color-mix(in srgb, var(--hv-text, #f1f3f0) 5%, transparent);
    --cc-section-border: var(--hv-line, rgba(255,255,255,.1)); --cc-cookie-table-border: var(--hv-line, rgba(255,255,255,.1));
    --cc-overlay-bg: rgba(4, 6, 8, .72); font-family: var(--bs-body-font-family, 'Pretendard Variable', sans-serif);
}
/* first-visit banner: a quiet bottom-left sheet */
#cm { border: 1.5px solid var(--hv-line, rgba(255,255,255,.1)); border-radius: 18px; box-shadow: 0 30px 70px -30px rgba(0,0,0,.7); max-width: 26rem; padding: 1.5rem 1.6rem 1.6rem; left: 1.25rem; right: auto; bottom: 1.25rem; }
#cm.box.middle { top: auto; }
#c-ttl { font-size: 1.1rem; font-weight: 800; letter-spacing: -.02em; margin-bottom: .6rem; }
#c-txt { font-size: .9rem; line-height: 1.7; color: var(--hv-muted, #98a29d); word-break: keep-all; }
#c-txt a, .cc_div .cc-link { color: var(--hv-accent, #469346); border-bottom: 1px solid transparent; font-weight: 700; }
#c-txt a:hover, .cc_div .cc-link:hover { border-bottom-color: currentColor; }
.cc_div #c-bns { margin-top: 1.3rem; gap: .6rem; flex-wrap: wrap; }
.cc_div .c-bn { flex: 1 1 auto; font-size: .9rem; font-weight: 800; padding: .85rem 1.2rem; border: 1.5px solid var(--hv-line, rgba(255,255,255,.14)); transition: background-color .2s, border-color .2s, color .2s !important; }
#c-bns button:first-child, #s-bns button:first-child { border-color: transparent; }
#c-bns button:first-child:hover, #s-bns button:first-child:hover { color: #fff; }
/* settings dialog */
#s-inr { border: 1.5px solid var(--hv-line, rgba(255,255,255,.1)); border-radius: 22px; box-shadow: 0 40px 90px -30px rgba(0,0,0,.8); }
#s-hdr { border-bottom-color: var(--hv-line, rgba(255,255,255,.1)); }
#s-ttl { font-size: 1.15rem; font-weight: 800; letter-spacing: -.02em; }
#s-bns { border-top-color: var(--hv-line, rgba(255,255,255,.1)); }
#s-bl .c-bl { border: 0; border-top: 1.5px solid var(--hv-line, rgba(255,255,255,.1)); border-radius: 0; margin-bottom: 0; padding: 1.2rem 0; }
#s-bl .c-bl:first-child { border-top: 0; margin-bottom: 0; padding-top: 0; }
#s-bl .c-bl.b-ex { border-radius: 0; }
#s-cnt .b-bn .b-tl { padding-left: 2.7em; font-weight: 800; border-radius: 0; }
#s-cnt .p { font-size: .9rem; line-height: 1.7; }
#s-c-bn { border: 0 !important; border-radius: 50%; }
#s-c-bn:hover { background: color-mix(in srgb, var(--hv-text, #f1f3f0) 8%, transparent); }
html[data-hv="light"] #cm { box-shadow: 0 30px 70px -34px rgba(10,11,13,.4); }
@media (max-width: 688px) { #cm, #cm.cloud, #cm.left { left: .75rem; right: .75rem; bottom: .75rem; border-radius: 16px; } #s-inr { border-radius: 0; border: 0; } }
@media (prefers-reduced-motion: no-preference) { .c--anim #cm { transition: visibility .3s linear, opacity .5s ease, transform .6s cubic-bezier(.16,1,.3,1) !important; } }
