/* Match the catalog's DeLuca colors and shared compact spacing scale. */
body.deluca-account-guest {
    --dl-account-accent: #c90000;
    --dl-account-ink: #252525;
    --dl-account-muted: #656060;
    --dl-account-line: #e7e5e5;
    --dl-account-field-line: #c9c5c5;
    --dl-account-surface: #fffdfd;
    --dl-account-focus: #a60000;
}
body.deluca-account-guest #content-wrap { width: 90%; max-width: 1040px; }
body.deluca-account-guest #site-content { float: none; width: 100%; max-width: none; }
body.deluca-account-guest #sidebar { display: none; }
body.deluca-account-guest #customer_login {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--dl-space-block, 24px);
}
body.deluca-account-guest #customer_login::before,
body.deluca-account-guest #customer_login::after { content: none; }
body.deluca-account-guest #customer_login > :is(.u-column1,.u-column2) {
    display: flex;
    flex-direction: column;
    float: none;
    width: auto;
    min-width: 0;
    padding: var(--dl-space-block, 24px);
    border: 1px solid var(--dl-account-line);
    border-radius: 4px;
    background: var(--dl-account-surface);
}
body.deluca-account-guest #customer_login h2,
body.deluca-account-guest .deluca-recovery-title {
    margin: 0 0 var(--dl-space-tiny, 8px);
    color: var(--dl-account-ink);
    font-size: 26px;
    font-weight: 600;
    line-height: 1.3;
    letter-spacing: 0;
}
body.deluca-account-guest #customer_login form {
    flex: 1;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
}
body.deluca-account-guest .woocommerce form .deluca-account-intro {
    margin: 0 0 var(--dl-space-block, 24px);
    color: var(--dl-account-muted);
    font-size: 14px;
    line-height: 1.6;
}
body.deluca-account-guest .woocommerce form .form-row {
    float: none;
    width: 100%;
    margin: 0 0 var(--dl-space-item, 16px);
    padding: 0;
}
body.deluca-account-guest .woocommerce form .form-row > label {
    margin-bottom: var(--dl-space-tiny, 8px);
    color: var(--dl-account-ink);
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
}
body.deluca-account-guest .woocommerce form .form-row input.input-text {
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 10px var(--dl-space-small, 12px);
    border: 1px solid var(--dl-account-field-line);
    border-radius: 3px;
    background: var(--dl-account-surface);
    color: var(--dl-account-ink);
    font-size: 16px;
    line-height: 1.5;
    box-shadow: none;
}
body.deluca-account-guest .woocommerce form .password-input { position: relative; width: 100%; }
body.deluca-account-guest .woocommerce form .password-input input { padding-right: 52px; }
body.deluca-account-guest .woocommerce form .show-password-input {
    top: 2px;
    right: 2px;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    margin: 0;
    padding: 0;
    border: 0;
    background-color: transparent;
    color: var(--dl-account-muted);
    transform: none;
}
body.deluca-account-guest .woocommerce form .show-password-input::after { margin: 0; }
body.deluca-account-guest .woocommerce form .form-row:has(.woocommerce-form-login__submit) {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: var(--dl-space-small, 12px);
}
body.deluca-account-guest .woocommerce form .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    align-self: flex-start;
    gap: var(--dl-space-tiny, 8px);
    min-height: 44px;
    margin: -8px 0 0;
    cursor: pointer;
}
body.deluca-account-guest .woocommerce form input[type="checkbox"] {
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--dl-account-accent);
}
body.deluca-account-guest .woocommerce form button.button {
    float: none;
    width: 100%;
    min-height: 48px;
    margin: 0;
    padding: 12px 16px;
    border: 1px solid var(--dl-account-accent);
    border-radius: 3px;
    background: var(--dl-account-accent);
    color: var(--dl-account-surface);
    font-size: 15px;
    font-weight: 600;
    line-height: 1.5;
    letter-spacing: 0;
    text-transform: none;
}
body.deluca-account-guest .woocommerce form button.woocommerce-form-register__submit {
    border-color: var(--dl-account-ink);
    background: transparent;
    color: var(--dl-account-ink);
}
body.deluca-account-guest .woocommerce form button.button:hover {
    border-color: var(--dl-account-ink);
    background: var(--dl-account-ink);
    color: var(--dl-account-surface);
}
body.deluca-account-guest .woocommerce form button.button:disabled {
    opacity: .55;
    cursor: not-allowed;
}
body.deluca-account-guest .woocommerce .woocommerce-privacy-policy-text {
    margin: 0 0 var(--dl-space-item, 16px);
    color: var(--dl-account-muted);
    font-size: 14px;
    line-height: 1.65;
}
body.deluca-account-guest .woocommerce .woocommerce-privacy-policy-text p { margin: 0; }
body.deluca-account-guest .woocommerce form > p:last-child { margin-bottom: 0; }
body.deluca-account-guest .woocommerce .lost_password { margin: 0; }
body.deluca-account-guest .woocommerce .lost_password a,
body.deluca-account-guest .deluca-account-return a { display: inline-flex; align-items: center; min-height: 44px; }
body.deluca-account-guest .woocommerce :is(.lost_password,.woocommerce-privacy-policy-text,.deluca-account-return) a {
    color: var(--dl-account-accent);
    text-decoration: underline;
    text-underline-offset: 3px;
}
body.deluca-account-guest .woocommerce :is(input,button,a):focus-visible {
    outline: 2px solid var(--dl-account-focus);
    outline-offset: 3px;
}
body.deluca-account-guest .woocommerce :is(.woocommerce-error,.woocommerce-message,.woocommerce-info) {
    margin: 0 0 var(--dl-space-block, 24px);
    border: 1px solid var(--dl-account-line);
    padding-block: var(--dl-space-item, 16px);
    color: var(--dl-account-ink);
}
body.deluca-account-guest .woocommerce .woocommerce-password-hint { font-size: 14px; line-height: 1.5; }
body.deluca-account-guest .deluca-recovery-title,
body.deluca-account-guest .woocommerce .lost_reset_password,
body.deluca-account-guest .deluca-account-return { max-width: 560px; margin-inline: auto; }
body.deluca-account-guest .woocommerce .lost_reset_password {
    margin-top: var(--dl-space-block, 24px);
    padding: var(--dl-space-block, 24px);
    border: 1px solid var(--dl-account-line);
    border-radius: 4px;
    background: var(--dl-account-surface);
}
body.deluca-account-guest .woocommerce .lost_reset_password > p:first-child { margin-bottom: var(--dl-space-item, 16px); }
body.deluca-account-guest .woocommerce form.lost_reset_password .woocommerce-Button.button { margin: 0; }
body.deluca-account-guest .deluca-account-return { margin-top: var(--dl-space-small, 12px); }
@media (max-width: 767px) {
    body.deluca-account-guest #customer_login { grid-template-columns: minmax(0, 1fr); }
    body.deluca-account-guest #customer_login h2,
    body.deluca-account-guest .deluca-recovery-title { font-size: 24px; }
}
