.usy-honeypot {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.usy-turnstile-wrap {
    width: min(100%, 380px);
    margin: 12px 0;
}

.usy-password-section {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(320px, 1.15fr);
    gap: clamp(30px, 5vw, 76px);
    overflow: hidden;
    background:
        radial-gradient(circle at var(--usy-x, 85%) var(--usy-y, 18%), rgba(200,150,50,.12), transparent 24%),
        linear-gradient(135deg, #fffaf1 0 47%, #fff 47%);
}

.usy-password-section::after {
    content: "";
    position: absolute;
    right: -80px;
    bottom: -120px;
    width: 280px;
    height: 280px;
    border: 1px solid rgba(200,150,50,.28);
    border-radius: 50%;
    pointer-events: none;
}

.usy-password-copy,
.usy-password-form {
    position: relative;
    z-index: 1;
}

.usy-password-copy h2 {
    margin: 8px 0 16px;
    color: #10263c;
    font: 700 clamp(2rem, 4vw, 3.2rem)/1.05 Georgia, serif;
}

.usy-password-copy ul {
    margin: 24px 0 0;
    padding-left: 20px;
    color: #596b7c;
}

.usy-password-form {
    display: grid;
    gap: 15px;
    padding: clamp(22px, 4vw, 38px);
    border: 1px solid rgba(16,38,60,.13);
    border-radius: 16px;
    background: rgba(255,255,255,.92);
    box-shadow: 0 20px 54px rgba(16,38,60,.1);
}

.usy-password-form label {
    color: #10263c;
    font-weight: 700;
}

.usy-secure-field {
    position: relative;
    display: block;
    margin-top: 7px;
}

.usy-secure-field input {
    width: 100%;
    min-height: 48px;
    padding: 10px 104px 10px 13px;
    border: 1px solid #cbd3dc;
    border-radius: 7px;
}

.usy-secure-field .usy-field-toggle {
    position: absolute;
    top: 50%;
    right: 7px;
    padding: 6px 8px;
    color: #10263c;
    border: 0;
    background: transparent;
    font-size: .75rem;
    font-weight: 800;
    transform: translateY(-50%);
    cursor: pointer;
}

.usy-password-form > button {
    min-height: 50px;
    color: #10263c;
    border: 0;
    border-radius: 7px;
    background: #d29b2d;
    font-weight: 800;
    cursor: pointer;
    transition: transform .2s ease, box-shadow .2s ease;
}

.usy-password-form > button:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 24px rgba(200,150,50,.25);
}

@media (max-width: 760px) {
    .usy-password-section { grid-template-columns: 1fr; }
}

.usy-reset-shell {
    --usy-x: 78%;
    --usy-y: 22%;
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(260px, .75fr);
    gap: clamp(28px, 5vw, 70px);
    width: min(1180px, calc(100% - 32px));
    min-height: 570px;
    margin: 48px auto;
    padding: clamp(30px, 5vw, 64px);
    overflow: hidden;
    align-items: center;
    color: #fff;
    border: 1px solid rgba(229,189,99,.34);
    border-radius: 22px;
    background:
        radial-gradient(circle at var(--usy-x) var(--usy-y), rgba(229,189,99,.18), transparent 26%),
        linear-gradient(135deg, #102d49, #071522);
    box-shadow: 0 28px 70px rgba(7,21,34,.2);
}
.usy-reset-copy,
.usy-reset-art { position: relative; z-index: 2; }
.usy-reset-copy h1 {
    margin: 10px 0 16px;
    color: #fff !important;
    font: 700 clamp(2.35rem, 5vw, 4.4rem)/1.02 Georgia, serif;
}
.usy-reset-copy > p { max-width: 680px; color: #c8d4df; line-height: 1.7; }
.usy-reset-form {
    display: grid;
    gap: 15px;
    width: min(100%, 550px);
    margin-top: 25px;
}
.usy-reset-form label { display: grid; gap: 7px; color: #fff; font-weight: 700; }
.usy-reset-form input {
    width: 100%;
    min-height: 50px;
    padding: 11px 13px;
    border: 1px solid rgba(255,255,255,.32);
    border-radius: 8px;
    background: #f8fbff;
    color: #10263c;
}
.usy-reset-form > button {
    width: fit-content;
    min-width: 190px;
    min-height: 50px;
    padding: 11px 20px;
    color: #071522;
    border: 1px solid #e5bd63;
    border-radius: 8px;
    background: #d39b2e;
    font-weight: 800;
    cursor: pointer;
    transition: transform .24s ease, box-shadow .24s ease;
}
.usy-reset-form > button:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(229,189,99,.24); }
.usy-reset-back { display: inline-block; margin-top: 18px; color: #e8c46f; text-underline-offset: 4px; }
.usy-reset-art {
    min-height: 340px;
    border: 1px solid rgba(229,189,99,.25);
    border-radius: 46% 54% 42% 58%;
    transform: translate(var(--usy-shift-x, 0px), var(--usy-shift-y, 0px)) rotate(7deg);
    transition: transform .18s ease-out;
}
.usy-reset-art::before,
.usy-reset-art::after,
.usy-reset-art span {
    content: "";
    position: absolute;
    border: 1px solid rgba(229,189,99,.28);
}
.usy-reset-art::before { inset: 38px; border-radius: 50%; }
.usy-reset-art::after { inset: 78px; transform: rotate(45deg); }
.usy-reset-art span:nth-child(1) { width: 22px; height: 22px; top: 24px; left: 50%; border-radius: 50%; background: #d39b2e; }
.usy-reset-art span:nth-child(2) { width: 80px; left: -34px; top: 52%; border-width: 1px 0 0; }
.usy-reset-art svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 92px;
    height: 92px;
    fill: none;
    stroke: #e8c46f;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
    transform: translate(-50%, -50%) rotate(-7deg);
}
.usy-reset-shell:hover .usy-reset-art { transform: translate(var(--usy-shift-x, 0px), var(--usy-shift-y, 0px)) rotate(13deg) scale(1.025); }
.usy-reset-form .usy-secure-field { margin: 0; }

@media (max-width: 760px) {
    .usy-reset-shell { grid-template-columns: 1fr; margin: 20px auto; padding: 28px 22px; }
    .usy-reset-art { display: none; }
    .usy-reset-form > button { width: 100%; }
}
