html[data-content-protected="true"] body {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
}

html[data-content-protected="true"] input,
html[data-content-protected="true"] textarea,
html[data-content-protected="true"] select,
html[data-content-protected="true"] [contenteditable="true"],
html[data-content-protected="true"] .allow-copy,
html[data-content-protected="true"] .allow-copy * {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
    -webkit-touch-callout: default;
}

html[data-content-protected="true"] table.dataTable td,
html[data-content-protected="true"] table.dataTable th,
html[data-content-protected="true"] .admin-table-card,
html[data-content-protected="true"] .admin-table-card *:not(input):not(textarea):not(select):not(.allow-copy):not(.allow-copy *) {
    -webkit-user-select: none !important;
    -moz-user-select: none !important;
    -ms-user-select: none !important;
    user-select: none !important;
}

html.content-security-blur body > *:not(#content-security-overlay):not(#content-security-watermark) {
    filter: blur(22px);
}

#content-security-overlay {
    position: fixed;
    inset: 0;
    z-index: 999998;
    background: rgb(15 23 42 / 0.96);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.12s ease;
}

#content-security-overlay.is-active {
    opacity: 1;
    pointer-events: auto;
}

#content-security-watermark {
    position: fixed;
    inset: 0;
    z-index: 999997;
    pointer-events: none;
    opacity: 0.045;
    background-image: repeating-linear-gradient(
        -32deg,
        transparent,
        transparent 120px,
        rgb(99 102 241) 120px,
        rgb(99 102 241) 121px
    );
}

#content-security-watermark::after {
    content: attr(data-label);
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(-24deg);
    font-size: clamp(1.5rem, 4vw, 3rem);
    font-weight: 700;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    color: rgb(99 102 241);
    white-space: nowrap;
}
