/* Korean entry only: shared assessment screens and other locales are unchanged. */
.bdsm-entry .entry-top { display:grid; grid-template-columns:minmax(0,1fr) minmax(340px,.85fr); gap:64px; align-items:start; }
.bdsm-entry .entry-hero { padding:20px 0; }
.bdsm-entry .entry-kicker { color:#ff7184; font-size:12px; font-weight:750; letter-spacing:.06em; margin:0 0 18px; }
.bdsm-entry .entry-hero h1 { margin:0; color:#f7f5f7; font-size:clamp(34px,4.5vw,56px); line-height:1.16; letter-spacing:-.055em; word-break:keep-all; }
.bdsm-entry .entry-lead { color:#cfccd3; font-size:17px; line-height:1.75; margin:24px 0; }
.bdsm-entry .entry-facts { color:#b9b5bf; font-size:13px; margin:0 0 24px; }
.bdsm-entry .entry-facts span { margin:0 8px; }
.bdsm-entry .entry-text-link { display:inline-flex; align-items:center; gap:12px; min-height:44px; color:#f1c8cf; text-underline-offset:5px; font-size:14px; }
.bdsm-entry .entry-picker { padding:24px; border:1px solid #363039; border-radius:22px; background:#131114; }
.bdsm-entry fieldset { border:0; min-width:0; padding:0; margin:0; }
.bdsm-entry legend { padding:0; font-size:20px; font-weight:750; letter-spacing:-.03em; }
.bdsm-entry .entry-picker-note { margin:8px 0 20px; color:#b9b5bf; font-size:13px; line-height:1.6; }
.bdsm-entry .entry-choice { display:flex; gap:14px; align-items:center; margin-top:8px; padding:16px; border:1px solid #3c3640; border-radius:14px; background:#1a171c; cursor:pointer; }
.bdsm-entry .entry-choice:hover { border-color:#a07883; }
.bdsm-entry .entry-choice:has(input:checked) { border-color:#ff7184; background:#2d1a22; }
.bdsm-entry .entry-choice:has(input:focus-visible) { outline:2px solid #fff; outline-offset:3px; }
.bdsm-entry input[type=radio] { appearance:auto; width:19px; height:19px; accent-color:#ff7184; flex-shrink:0; margin:0; cursor:pointer; }
.bdsm-entry .entry-choice-copy { display:grid; gap:6px; min-width:0; }
.bdsm-entry .entry-choice strong { color:#f7f5f7; font-size:16px; line-height:1.4; }
.bdsm-entry .entry-choice-copy > span { color:#d0cbd4; font-size:13px; line-height:1.5; word-break:keep-all; overflow-wrap:anywhere; }
.bdsm-entry .entry-choice small { color:#bcb5c2; font-size:12px; line-height:1.5; }
.bdsm-entry .entry-choice i { font-style:normal; margin:0 6px; }
.bdsm-entry .entry-choice em { display:inline-block; font-style:normal; font-size:10px; color:#ffc4cf; font-weight:650; margin-left:5px; vertical-align:middle; }
.bdsm-entry .entry-start { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:54px; margin:18px 0 0; padding:14px 18px; border:0; border-radius:12px; background:#ff7184; color:#21060d; font:inherit; font-size:16px; font-weight:800; cursor:pointer; }
.bdsm-entry .entry-start:hover { background:#ff8c9b; }
.bdsm-entry .entry-under-action { margin:12px 0 0; color:#b9b5bf; font-size:12px; line-height:1.6; text-align:center; }
.bdsm-entry .entry-result { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:48px; margin-top:64px; padding:36px 0; border-top:1px solid #342e38; border-bottom:1px solid #342e38; scroll-margin-top:24px; }
.bdsm-entry .entry-result h2,.bdsm-entry .entry-help h2 { color:#f7f5f7; margin:0 0 14px; font-size:24px; line-height:1.4; letter-spacing:-.04em; word-break:keep-all; }
.bdsm-entry .entry-result p { color:#c4beca; line-height:1.8; font-size:14px; margin:0 0 12px; }
.bdsm-entry .entry-example { margin:0; padding:24px; border:1px solid #3c3440; border-radius:18px; background:#17131a; }
.bdsm-entry .entry-example figcaption { color:#eee6f0; font-weight:700; font-size:14px; line-height:1.7; }
.bdsm-entry .entry-example figcaption span { display:block; color:#bcb5c2; font-size:11px; font-weight:400; }
.bdsm-entry .entry-axis { display:flex; justify-content:space-between; color:#e5d9e9; font-size:12px; margin:24px 0 10px; }
.bdsm-entry .entry-axis-bar { height:8px; border-radius:20px; background:#655273; overflow:hidden; margin-bottom:12px; }
.bdsm-entry .entry-axis-bar span { display:block; height:100%; width:62%; background:#ff7184; border-right:3px solid #17131a; }
.bdsm-entry .entry-example p { font-size:12px; }
.bdsm-entry .entry-example ul { padding:14px 0 0 16px; margin:16px 0 0; border-top:1px solid #39313e; color:#c4beca; font-size:12px; line-height:1.9; }
.bdsm-entry .entry-help { max-width:760px; margin:40px auto 0; }
.bdsm-entry .entry-help details { border-bottom:1px solid #342e38; }
.bdsm-entry .entry-help summary { min-height:52px; padding:18px 0; color:#e9e3ec; font-size:15px; cursor:pointer; line-height:1.6; }
.bdsm-entry .entry-help details p { margin:0 0 20px; color:#c4beca; font-size:14px; line-height:1.85; }
.bdsm-entry .entry-privacy { margin:24px 0 0; color:#b9b5bf; font-size:12px; line-height:1.8; }
.bdsm-entry .entry-privacy a { color:#e8c0ca; text-underline-offset:4px; }
.bdsm-entry :is(a,button,summary):focus-visible { outline:2px solid #fff; outline-offset:4px; }
@media(max-width:900px) {
 .bdsm-entry .entry-top { grid-template-columns:1fr; gap:24px; max-width:600px; margin:auto; }
 .bdsm-entry .entry-hero { padding:0; }
 .bdsm-entry .entry-result { grid-template-columns:1fr; gap:24px; max-width:600px; margin:40px auto 0; }
 .bdsm-entry .entry-help { max-width:600px; }
}
@media(max-width:600px) {
 .bdsm-entry main.intro-layout { padding-top:18px; }
 .bdsm-entry .entry-kicker { margin-bottom:12px; font-size:11px; }
 .bdsm-entry .entry-hero h1 { font-size:34px; }
 .bdsm-entry .entry-lead { margin:10px 0; font-size:15px; line-height:1.65; }
 .bdsm-entry .entry-facts { margin-bottom:4px; font-size:12px; }
 .bdsm-entry .entry-top { gap:8px; }
 .bdsm-entry .entry-hero .entry-text-link { min-height:36px; }
 .bdsm-entry .entry-picker { padding:16px; border-radius:18px; }
 .bdsm-entry legend { font-size:18px; }
 .bdsm-entry .entry-picker-note { margin-bottom:12px; font-size:12px; }
 .bdsm-entry .entry-choice { padding:9px 12px; gap:10px; }
 .bdsm-entry .entry-choice-copy { gap:3px; }
 .bdsm-entry .entry-choice strong { font-size:15px; }
 .bdsm-entry .entry-choice-copy > span { font-size:12px; }
 .bdsm-entry .entry-start { margin-top:14px; }
 .bdsm-entry .entry-result h2,.bdsm-entry .entry-help h2 { font-size:22px; }
 .bdsm-entry .entry-example { padding:20px; }
}

/* bdsm-discovery-context */
.bdsm-entry .entry-context { max-width:760px; margin:40px auto 0; }
.bdsm-entry .entry-context h2 { color:#f7f5f7; font-size:22px; line-height:1.5; letter-spacing:-.035em; word-break:keep-all; margin:0 0 14px; }
.bdsm-entry .entry-context p { color:#c4beca; font-size:14px; line-height:1.85; margin:0 0 12px; overflow-wrap:anywhere; }
@media(max-width:900px) { .bdsm-entry .entry-context { max-width:600px; } }
