div.encrypted {
    --border-width: 2px;
    border: var(--border-width) outset;
    margin: 2em 0;
}

div.encrypted div.plaintext {
    padding: 10px;
}


div.encrypted .warning {
    visibility: hidden;
    display: none;
}

div.encrypted.warn-unencrypted .warning {
    visibility: visible;
    display: block;

    font-size: 200%;
    background: red;
    width: 100%;
    text-align: center;
}

div.encrypted.warn-unencrypted {
    background-color: #ff7c7c;
}

div.encrypted.decrypted .prompt {
    visibility: hidden;
    display: none;
}

div.encrypted .prompt {
    display: grid;
}

div.encrypted .prompt .title {
    border-bottom: var(--border-width) solid black;
    width: 100%;
    padding: 6px 1em;
}

div.encrypted .prompt form {
    padding: 1em;
    height: 200px;
    justify-self: center;
    align-content: end;
}

div.encrypted .prompt .error {
    text-align: center;
    font-size: 80%;
    color: darkred
}


div.encrypted .prompt input[type='password'] {
    border: 2px inset black;
}

div.encrypted .prompt input[type='submit'] {
    border: 2px outset black;
    padding: 0 1ex;
}
