.siedge-protection-strict body {
    -webkit-user-select: none;
    user-select: none;
}

.siedge-protection-strict input,
.siedge-protection-strict textarea,
.siedge-protection-strict select,
.siedge-protection-strict [contenteditable="true"],
.siedge-protection-strict .allow-copy {
    -webkit-user-select: text;
    user-select: text;
}

.siedge-security-watermark {
    position: fixed;
    inset: 0;
    z-index: 9996;
    display: grid;
    grid-template-columns: repeat(
        4,
        minmax(220px, 1fr)
    );
    gap: 5rem 2rem;
    align-content: center;
    overflow: hidden;
    pointer-events: none;
    opacity: .075;
    transform: rotate(-24deg) scale(1.2);
}

.siedge-security-watermark span {
    color: #123f67;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .07em;
    white-space: nowrap;
    text-transform: uppercase;
}

.siedge-protection-toast {
    position: fixed;
    z-index: 10001;
    right: 1rem;
    bottom: 1rem;
    max-width: 360px;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: .65rem;
    align-items: center;
    padding: .85rem;
    border: 1px solid rgba(31, 104, 155, .22);
    border-radius: 16px;
    color: #173650;
    background: #ffffff;
    box-shadow: 0 24px 70px rgba(4, 35, 66, .22);
    opacity: 0;
    pointer-events: none;
    transform: translateY(20px);
    transition:
        opacity .2s ease,
        transform .2s ease;
}

.siedge-protection-toast.is-visible {
    opacity: 1;
    transform: translateY(0);
}

.siedge-protection-toast > span {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    color: #ffffff;
    background: linear-gradient(
        135deg,
        #1468b6,
        #159b8c
    );
}

.siedge-protection-toast strong,
.siedge-protection-toast small {
    display: block;
}

.siedge-protection-toast small {
    margin-top: .15rem;
    color: #687f94;
}

.siedge-screen-curtain-active body::after {
    content:
        "CONTEÚDO PROTEGIDO\A"
        "Retorne à janela para continuar";
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    padding: 2rem;
    color: #ffffff;
    background:
        radial-gradient(
            circle at center,
            rgba(32, 191, 212, .18),
            transparent 35%
        ),
        rgba(2, 13, 26, .985);
    font-size: clamp(1.2rem, 4vw, 2.5rem);
    font-weight: 950;
    line-height: 1.4;
    text-align: center;
    white-space: pre-line;
    letter-spacing: -.03em;
}

@media print {
    body > * {
        display: none !important;
    }

    body::before {
        content:
            "IMPRESSÃO BLOQUEADA\A"
            "Conteúdo protegido pelo SIEDGE";
        display: block !important;
        padding: 4rem;
        color: #111111;
        font-size: 24pt;
        font-weight: 900;
        text-align: center;
        white-space: pre-line;
    }
}