.account-frame {
    position: relative;
    width: min(760px, 100%);
    margin: 35px auto 55px;
    padding: 45px clamp(20px, 5vw, 58px) 38px;
    border: 5px double #94b8cc;
    border-radius: 24px 5px;
    background: linear-gradient(135deg, #ffffffed, #edf5f8f5 48%, #fff9ed);
    box-shadow: 0 0 0 5px #153e5d, 0 0 0 7px #bfd4dc, 0 16px 35px #102d4a40, inset 0 0 0 8px #fff9;
    color: #17344d;
}
.account-frame::before, .account-frame::after {
    content: '';
    position: absolute;
    width: 65px;
    height: 65px;
    pointer-events: none;
    border: 3px double #b59555;
}
.account-frame::before { top: 10px; left: 10px; border-right: 0; border-bottom: 0; border-radius: 13px 0 0; }
.account-frame::after { bottom: 10px; right: 10px; border-left: 0; border-top: 0; border-radius: 0 0 13px; }
.frame-gem { position: absolute; top: -15px; left: calc(50% - 13px); width: 26px; height: 26px; transform: rotate(45deg); border: 4px double #eafaff; background: #2585b4; box-shadow: 0 0 0 2px #47718a; }
.account-frame h2 { text-align: center; font-family: Cinzel, Georgia, serif; font-size: clamp(25px, 4vw, 36px); color: #143d60; padding-bottom: 20px; margin: 0 0 24px; border-bottom: 3px double #9bb7c4; }
.account-frame p { line-height: 1.6; font-size: 15px; }
.account-frame a { color: #13628b; text-decoration: underline; }
.account-frame .generic-form { margin-top: 26px; }
.account-frame table.generic-form-table { width: 100%; border: 0; background: transparent; border-collapse: separate; border-spacing: 0 10px; }
.account-frame .generic-form-table th, .account-frame .generic-form-table td { border: 0; background: transparent; padding: 8px; text-align: left; }
.account-frame .generic-form-table th { width: 35%; color: #26465e; }
.account-frame input:not([type=submit]):not([type=checkbox]):not([type=radio]), .account-frame select { max-width: 100%; min-height: 42px; border: 1px solid #86a8bb; border-radius: 6px; padding: 9px 12px; background: #fff; color: #17344d; box-shadow: inset 0 2px 5px #183a5312, 0 2px 0 #fff; }
.account-frame input[type=text], .account-frame input[type=password] { width: 100%; }
.account-frame input:focus-visible, .account-frame select:focus-visible { outline: 3px solid #50acc7; outline-offset: 2px; }
.account-frame input[type=submit] { cursor: pointer; padding: 13px 30px; border: 4px double #b9dcea; border-radius: 9px 2px; background: linear-gradient(#286c95, #103b60); color: #fff; font-weight: 700; box-shadow: 0 0 0 1px #42667f, 0 5px 10px #183d5b25; }
.account-frame input[type=submit]:hover { background: #267fa7; }
.account-frame .red { color: #a32727; }
@media(max-width: 600px) {
    .account-frame { margin-block: 28px; padding-inline: 20px; }
    .account-frame .generic-form-table th, .account-frame .generic-form-table td { display: block; width: 100%; padding: 5px 0; }
    .account-frame .generic-form-table tr { display: block; margin-bottom: 15px; }
}