/**
 * Single post: disable text selection inside article body (parent theme .post-content).
 * Scoped to body.single-post to avoid affecting other templates.
 */
body.single-post article.post-content {
    -webkit-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}

/* Allow interaction with links/buttons inside paywall UI etc. */
body.single-post article.post-content a,
body.single-post article.post-content button {
    cursor: pointer;
}

/* Media: block drag-to-save (WebKit); keep pointer-events so links on images still work if any */
body.single-post article.post-content img,
body.single-post article.post-content video,
body.single-post article.post-content audio {
    -webkit-user-drag: none;
}

/* Prompt examples: allow text selection after unlock (no separate "复制提示词" button — .bn-code-copy handles copy). */
body.single-post article.post-content .ripro-prompt-copy-block {
    -webkit-user-select: text;
    user-select: text;
    -webkit-touch-callout: default;
}

body.single-post article.post-content .ripro-prompt-copy-block code {
    -webkit-user-select: text;
    user-select: text;
    -webkit-touch-callout: default;
}

body.single-post article.post-content .bn-post-content-lock {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 18px 0;
    padding: 18px 20px;
    border: 1px dashed rgba(201, 100, 66, .35);
    border-radius: 16px;
    background:
        linear-gradient(135deg, rgba(201, 100, 66, .08), rgba(45, 189, 182, .05)),
        rgba(255, 255, 255, .72);
    color: var(--bn-ink, #1f1f1f);
    -webkit-user-select: none;
    user-select: none;
}

body.single-post article.post-content .bn-post-content-lock__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    border-radius: 999px;
    background: rgba(201, 100, 66, .12);
    color: var(--bn-primary, #c96442);
}

body.single-post article.post-content .bn-post-content-lock__body {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
    line-height: 1.45;
}

body.single-post article.post-content .bn-post-content-lock__body strong {
    font-size: 15px;
    font-weight: 700;
}

body.single-post article.post-content .bn-post-content-lock__body em {
    color: var(--bn-muted, #6b6b6b);
    font-size: 13px;
    font-style: normal;
}

body.single-post article.post-content .bn-post-content-lock__btn {
    align-self: flex-start;
    margin-top: 6px;
    padding: 7px 16px;
    line-height: 1.25;
    text-decoration: none;
    -webkit-user-select: none;
    user-select: none;
}

body.single-post article.post-content .bn-post-content-lock--image,
body.single-post article.post-content .bn-post-content-lock--video {
    min-height: 132px;
    justify-content: center;
    text-align: left;
}

body.single-post article.post-content .bn-post-content-lock--prompt {
    font-family: Inter, 'Microsoft YaHei', system-ui, sans-serif;
}

[data-bs-theme="dark"] body.single-post article.post-content .bn-post-content-lock {
    border-color: rgba(252, 213, 53, .32);
    background:
        linear-gradient(135deg, rgba(252, 213, 53, .08), rgba(59, 130, 246, .06)),
        rgba(30, 35, 41, .72);
    color: #eaecef;
}

[data-bs-theme="dark"] body.single-post article.post-content .bn-post-content-lock__icon {
    background: rgba(252, 213, 53, .12);
    color: #fcd535;
}

[data-bs-theme="dark"] body.single-post article.post-content .bn-post-content-lock__body em {
    color: #848e9c;
}

@media (max-width: 575.98px) {
    body.single-post article.post-content .ripro-prompt-copy-block {
        max-width: 100%;
        overflow-x: auto;
    }

    body.single-post article.post-content .bn-post-content-lock {
        align-items: flex-start;
        gap: 12px;
        padding: 15px;
    }

    body.single-post article.post-content .bn-post-content-lock__btn {
        width: 100%;
        justify-content: center;
        text-align: center;
    }

    body.single-post article.post-content .bn-post-content-lock--image,
    body.single-post article.post-content .bn-post-content-lock--video {
        min-height: 104px;
    }
}
