.user-form-part{padding-top:30px}.user-form-logo{text-align:center;margin-bottom:25px}.user-form-logo img{width:200px}.user-form-card{padding:30px;border-radius:8px;margin-bottom:20px;background:var(--white);border:1px solid var(--border)}.user-form-title{text-align:center;margin-bottom:30px}.user-form-title h2{font-size:28px;line-height:36px;margin-bottom:5px;color:var(--primary)}.user-form-title p{text-transform:capitalize}.user-form-group{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:flex-start;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start}.user-form-social{width:100%}.user-form-social li{margin-bottom:20px}.user-form-social li a{width:100%;font-size:15px;padding:10px 0px;border-radius:8px;letter-spacing:0.3px;text-align:center;text-transform:capitalize;color:var(--white);background:var(--primary)}.user-form-social li a i{font-size:16px;margin-right:10px}.user-form-social li:last-child{margin-bottom:0px}.user-form-social .facebook{background:var(--facebook)}.user-form-social .twitter{background:var(--twitter)}.user-form-social .google{background:var(--google)}.user-form-social .instagram{background:var(--instagram)}.user-form-divider{width:1px;height:240px;margin:0px 50px;background:var(--border);position:relative;z-index:1}.user-form-divider p{width:40px;height:40px;font-size:14px;font-weight:500;margin:0 auto;font-style:italic;line-height:38px;border-radius:50%;text-align:center;color:var(--gray);background:var(--white);border:1px solid var(--border);position:absolute;top:50%;left:50%;z-index:2;-webkit-transform:translate(-50%, -50%);transform:translate(-50%, -50%)}.user-form{width:100%}.user-form .form-group{margin-bottom:20px}.form-button{text-align:center}.form-button button{width:100%;height:45px;font-size:14px;font-weight:500;line-height:45px;border-radius:8px;letter-spacing:0.3px;text-align:center;text-transform:uppercase;color:var(--white);background:var(--primary)}.form-button p{font-size:15px;margin-top:12px;text-transform:capitalize}.form-button p a{font-weight:500;margin-left:5px;color:var(--primary)}.form-button p a:hover{text-decoration:underline}.user-form-remind{padding:20px;border-radius:8px;text-align:center;background:var(--white);border:1px solid var(--border)}.user-form-remind p{font-size:15px;text-transform:capitalize}.user-form-remind p a{font-weight:500;margin-left:5px;color:var(--primary)}.user-form-remind p a:hover{text-decoration:underline}.user-form-footer{text-align:center;margin-top:25px;margin-bottom:40px}.user-form-footer p{font-size:14px;color:var(--gray)}.user-form-footer p a{color:var(--primary);transition:all linear .3s;-webkit-transition:all linear .3s;-moz-transition:all linear .3s;-ms-transition:all linear .3s;-o-transition:all linear .3s}.user-form-footer p a:hover{text-decoration:underline}@media (max-width: 575px){.user-form-card{padding:20px}}@media (max-width: 767px){.user-form-group{display:inherit}.user-form-divider{width:100%;height:1px;margin:50px 0px}}
.auth-card-flat{margin:0;padding:25px;background:#fff;border-radius:8px;box-shadow:0 15px 50px rgba(0,0,0,.1);border:none}.auth-card-flat .user-form-title{margin-bottom:20px}.auth-card-flat .user-form-title h2{font-size:24px;line-height:1.3;color:#333}.auth-card-flat .user-form-group{display:block;width:100%;clear:both}.auth-google-wrap{display:block;width:100%;margin-bottom:20px;clear:both}.auth-google-btn{display:flex;align-items:center;justify-content:center;background:#fff;color:#3c4043;border:1px solid #dadce0;padding:10px 15px;border-radius:4px;text-decoration:none;font-family:'Roboto',Arial,sans-serif;font-weight:500;transition:box-shadow .218s;box-shadow:0 1px 2px 0 rgba(60,64,67,.3),0 1px 3px 1px rgba(60,64,67,.15);width:100%;white-space:nowrap;box-sizing:border-box}.auth-google-btn:hover{color:#202124;box-shadow:0 1px 3px 0 rgba(60,64,67,.3),0 4px 8px 3px rgba(60,64,67,.15)}.auth-google-icon{margin-right:12px;flex-shrink:0}.auth-google-text{font-size:15px}.auth-divider-inline{display:block;width:100%;margin:20px 0;border-bottom:2px solid #f0f0f0;position:relative;text-align:center;height:1px;clear:both;background:none}.auth-divider-inline span{position:absolute;top:-11px;background:#fff;padding:0 10px;color:#70757a;left:50%;transform:translateX(-50%);font-size:13px;white-space:nowrap}.auth-form-block{display:block;width:100%;clear:both}.auth-link-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px}.auth-help-copy{font-size:15px;margin:0;color:#555}.auth-help-copy a,.auth-remind-box p a{color:#72b01d;font-weight:700;text-decoration:none}.auth-help-copy a{font-weight:600}.auth-submit-wrap{text-align:right}.auth-submit-btn{background:#72b01d;color:#fff;padding:10px 20px;border-radius:4px;border:none;font-weight:700;width:100%;letter-spacing:.5px;font-size:14px;display:flex;align-items:center;justify-content:center;min-height:46px;line-height:1}.auth-submit-btn i{margin-right:8px}.auth-remind-wrap{margin-top:25px;text-align:center;padding:0;border:none;background:transparent}.auth-remind-box{border:1px solid #e8e8e8;border-radius:12px;padding:15px;background:#fff;margin:0 10px}.auth-remind-box p{font-size:14px;color:#777;margin:0}.auth-register-layout{display:flex;flex-wrap:wrap;align-items:stretch;margin-top:20px}.auth-register-social,.auth-register-form{min-width:250px}.auth-register-social{flex:1;display:flex;flex-direction:column;justify-content:center;padding:10px}.auth-register-form{flex:1.2;padding:20px}.auth-register-divider{width:40px;position:relative;padding:0 10px;display:flex;align-items:center;justify-content:center}.auth-register-divider-line{height:100%;width:1px;background:#e8e8e8}.auth-register-divider-text{position:absolute;background:#fff;padding:10px 0;color:#70757a;font-size:14px;white-space:nowrap;transform:rotate(270deg)}.auth-register-submit .auth-google-text{font-size:16px}.auth-register-spacer{margin:0}.auth-auth-gap-sm{gap:0}.auth-footer-spacer{height:0}.auth-link-row .col-md-5,.auth-link-row .col-md-7{padding-left:15px;padding-right:15px}.auth-link-col-left{text-align:left}.auth-link-col-right{width:100%}.auth-register-group .auth-google-btn{padding:12px 15px}.auth-register-group .auth-google-text{font-size:16px}.auth-recovery-layout{max-width:700px;margin:40px auto 0;display:flex;align-items:stretch}.auth-recovery-divider{width:1px;background:#e8e8e8;margin-right:40px;flex:0 0 1px}.auth-recovery-form{flex:1}.auth-recovery-input{padding:15px 20px!important;font-size:16px!important;background:#f9f9f9!important;border:1px solid #eee!important;min-height:54px}.auth-recovery-button-col{margin-left:auto}.admin-topbar-nav{margin-bottom:0}@media (max-width:767px){.auth-link-row{flex-direction:column;align-items:stretch}.auth-link-col-left,.auth-submit-wrap{text-align:left}.auth-register-layout{flex-direction:column}.auth-register-divider{width:100%;height:60px}.auth-register-divider-line{height:1px;width:100%}.auth-register-divider-text{transform:none;padding:0 10px}.auth-register-form{padding:10px 0 0}.auth-register-social{padding:0 0 10px}.auth-recovery-layout{display:block;margin-top:28px}.auth-recovery-divider{display:none}}@media (max-width:575px){.auth-card-flat{padding:20px}.auth-remind-box{margin:0}}

.auth-kicker{
display:inline-flex;
align-items:center;
justify-content:center;
padding:6px 14px;
border-radius:999px;
background:#eef7f0;
color:#1f6b46;
font-size:12px;
font-weight:700;
letter-spacing:.12em;
text-transform:uppercase;
margin-bottom:14px
}

/* Semantic page headings retain the existing authentication-page appearance. */
.user-form-title h1,
.auth-card-flat .user-form-title h1,
.auth-register-head h1 {
    margin-bottom: 5px;
    color: var(--primary, #2d6a4f);
    font-size: 28px;
    font-weight: 700;
    line-height: 1.3;
}
.auth-register-shell{
padding:38px 42px 34px;
border-radius:28px;
border:1px solid #dbe9dd;
box-shadow:0 24px 60px rgba(20,72,47,.10);
background:linear-gradient(180deg,#ffffff 0%,#fbfdfb 100%)
}
.auth-register-head{
margin-bottom:28px!important
}
.auth-register-head h2{
font-size:44px!important;
line-height:1.1!important;
font-weight:800!important;
color:#15492f!important;
margin-bottom:10px!important
}
.auth-register-head p{
max-width:560px;
margin:0 auto;
font-size:16px;
line-height:1.7;
color:#5b6f61
}
.auth-register-stack{
display:block!important
}
.auth-register-group-full{
margin-bottom:28px
}
.auth-google-btn-lg{
min-height:62px;
border-radius:18px;
border-color:#d9e4dc;
box-shadow:0 12px 24px rgba(20,72,47,.08);
font-size:16px;
font-weight:700;
padding:14px 18px
}
.auth-google-btn-lg:hover{
transform:translateY(-1px)
}
.auth-divider-inline-wide{
margin:0 0 26px
}
.auth-register-form-full{
padding:0
}
.auth-register-form-grid .row{
margin-left:-10px;
margin-right:-10px
}
.auth-register-form-grid .row>[class*=col-]{
padding-left:10px;
padding-right:10px
}
.auth-form-group{
margin-bottom:18px!important
}
.auth-field-label{
display:block;
margin-bottom:8px;
font-size:13px;
font-weight:700;
letter-spacing:.04em;
text-transform:uppercase;
color:#315441
}
.auth-input{
height:58px!important;
padding:16px 18px!important;
border:1px solid #d7e4da!important;
border-radius:16px!important;
background:#f8fbf8!important;
font-size:16px!important;
color:#183624!important;
box-shadow:none!important
}
.auth-input:focus{
border-color:#66a87f!important;
background:#fff!important;
box-shadow:0 0 0 4px rgba(114,176,29,.12)!important
}
.auth-check{
display:flex;
align-items:center;
gap:10px;
margin:4px 0 22px!important
}
.auth-check .form-check-input{
margin-top:0;
border-color:#bfd3c4
}
.auth-check-label{
font-size:14px;
color:#5f7063
}
.auth-submit-wrap-full{
text-align:center
}
.auth-submit-btn{
min-height:58px;
border-radius:16px;
font-size:16px;
font-weight:800;
letter-spacing:.04em;
background:linear-gradient(135deg,#1f6b46 0%,#2d8a5d 100%);
box-shadow:0 18px 34px rgba(31,107,70,.22)
}
.auth-submit-btn:hover{
color:#fff;
transform:translateY(-1px);
box-shadow:0 22px 38px rgba(31,107,70,.28)
}
.auth-remind-wrap{
margin-top:18px
}
.auth-remind-box{
border-radius:18px;
padding:18px 22px;
border-color:#dce8df;
box-shadow:0 10px 25px rgba(20,72,47,.06)
}
.auth-remind-box p{
font-size:15px;
color:#52675a
}
.auth-remind-box p a{
color:#1f6b46
}
.auth-login-modal-dialog {
    max-width: 380px;
    margin: 1.75rem auto;
}
.login-modal-surface {
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    overflow: hidden;
    background: #fff;
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.15);
}
.login-modal-card {
    width: 100%;
    margin: 0;
    padding: 22px 24px 18px !important;
    position: relative;
    background: transparent;
}
.login-modal-title,
.login-modal-group,
.login-modal-form {
    display: block !important;
    width: 100%;
    clear: both;
}
.login-modal-title {
    position: relative;
    margin-bottom: 12px;
    text-align: center;
}
.login-modal-heading {
    margin: 0;
    font-size: 22px;
    line-height: 1.15;
    font-weight: 700;
    color: #1e293b;
}
.login-modal-subcopy {
    display: none !important;
}
.login-modal-close {
    position: absolute;
    top: -6px;
    right: -8px;
    opacity: 0.6;
    font-size: 11px;
}
.login-modal-google-wrap {
    margin-bottom: 12px;
}
.login-modal-google-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    text-decoration: none;
    min-height: 38px !important;
    padding: 6px 12px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04) !important;
    color: #334155 !important;
    background: #fff !important;
}
.login-modal-google-btn:hover {
    text-decoration: none;
    background: #f8fafc !important;
    border-color: #cbd5e1 !important;
}
.login-modal-google-icon {
    margin-right: 8px;
    flex-shrink: 0;
}
.login-modal-google-text {
    font-size: 13px;
}
.login-modal-divider {
    position: relative;
    height: 1px;
    margin: 0 0 14px;
    clear: both;
    text-align: center;
    border-bottom: 1px solid #e2e8f0;
}
.login-modal-divider-text {
    position: absolute;
    top: -9px;
    left: 50%;
    padding: 0 8px;
    background: #fff;
    color: #94a3b8;
    font-size: 11px;
    font-weight: 500;
    white-space: nowrap;
    transform: translateX(-50%);
}
.login-modal-error {
    padding: 8px 12px;
    margin-bottom: 10px;
    border-radius: 8px;
    font-size: 12.5px;
    text-align: left;
}
.login-modal-error[hidden] {
    display: none !important;
}
.login-modal-input {
    min-height: 38px !important;
    height: 38px !important;
    padding: 6px 12px !important;
    border-radius: 8px !important;
    border: 1px solid #cbd5e1 !important;
    background: #f8fafc !important;
    font-size: 13.5px !important;
    color: #1e293b !important;
}
.login-modal-input:focus {
    border-color: #2d6a4f !important;
    background: #fff !important;
    box-shadow: 0 0 0 3px rgba(45, 106, 79, 0.12) !important;
}
.auth-field-label {
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 3px !important;
    display: block !important;
}
.login-modal-check,
.login-modal-forgot-col {
    text-align: left;
}
.login-modal-check-label {
    font-size: 12px;
    color: #64748b;
}
.login-modal-action-row {
    row-gap: 8px;
    margin-top: 6px;
}
.login-modal-forgot-copy,
.login-modal-register-copy {
    margin: 0;
    font-size: 12.5px;
    color: #64748b;
}
.login-modal-link {
    color: var(--primary, #2d6a4f);
    font-weight: 600;
    text-decoration: none;
}
.login-modal-button-wrap {
    text-align: center;
}
.login-modal-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    width: 100%;
    min-height: 40px !important;
    height: 40px !important;
    padding: 6px 18px !important;
    border-radius: 8px !important;
    font-size: 13.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    background: var(--primary, #2d6a4f) !important;
    color: #fff !important;
    border: none !important;
    box-shadow: 0 4px 12px rgba(45, 106, 79, 0.25) !important;
}
.login-modal-submit:hover {
    color: #fff !important;
    background: #1b4332 !important;
    transform: translateY(-1px);
}
.login-modal-submit-icon {
    margin-right: 4px;
}
.login-modal-remind {
    margin-top: 14px;
    text-align: center;
}
.login-modal-register-box {
    margin: 0;
    padding: 0;
    border: none;
    background: transparent;
    box-shadow: none;
}
.login-modal-register-link {
    margin-left: 3px;
    font-weight: 700;
}

.login-modal-action-row {
    margin-top: 6px;
    font-size: 12px;
}

.login-modal-check {
    min-height: auto;
    margin-bottom: 0;
}

.login-modal-check-input {
    width: 14px;
    height: 14px;
    margin-top: 2px;
    cursor: pointer;
}

.login-modal-check-label {
    margin-left: 3px;
    color: #64748b;
    font-size: 12px;
    cursor: pointer;
}

.login-modal-forgot-link {
    font-size: 12px;
}
@media (max-width:767px){
.auth-login-modal-dialog{
max-width:calc(100% - 20px);
margin:12px auto
}
.login-modal-card{
padding:16px 12px 12px
}
.login-modal-heading{
font-size:20px
}
.login-modal-subcopy{
font-size:14px
}
.login-modal-button-wrap{
text-align:left
}
}
/* Ensure ALL Bootstrap Modals stay above backdrop and sidebars */
.modal {
    z-index: 1600 !important;
}
.modal-backdrop {
    z-index: 1590 !important;
}
.modal-content.login-modal-surface {
    background: #ffffff !important;
    opacity: 1 !important;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.25) !important;
}

/* ==========================================================================
   ENHANCED LOGIN VIEW STYLING (MODERN D2C / BOTANICAL THEME)
   ========================================================================== */

.auth-login-section {
    background: linear-gradient(180deg, #f2f8f4 0%, #edf5ef 55%, #ffffff 100%);
    padding: 24px 0 40px;
    min-height: calc(100vh - 440px);
    display: flex;
    align-items: center;
}

.auth-login-shell {
    max-width: 460px;
    margin: 0 auto;
    padding: 28px 32px 24px !important;
    border-radius: 22px !important;
    border: 1px solid #dce8df !important;
    box-shadow: 0 16px 38px -8px rgba(20, 72, 47, 0.12), 0 4px 12px -2px rgba(0, 0, 0, 0.03) !important;
    background: #ffffff !important;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.auth-login-head {
    margin-bottom: 16px !important;
    text-align: center;
}

.auth-login-head .auth-kicker {
    margin-bottom: 8px;
    padding: 4px 12px;
    font-size: 11px;
    letter-spacing: 0.08em;
    background: #eaf5ed;
    color: #1b5e3d;
    font-weight: 700;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
}

.auth-login-head .auth-login-title {
    font-size: 25px !important;
    font-weight: 800 !important;
    color: #14462d !important;
    margin-bottom: 4px !important;
    line-height: 1.25 !important;
    letter-spacing: -0.02em;
}

.auth-login-head .auth-login-subtitle {
    font-size: 13px;
    color: #5c7263;
    line-height: 1.45;
    margin: 0 auto 12px;
    max-width: 370px;
}

.auth-login-shell .auth-alert {
    border-radius: 12px;
    padding: 10px 14px;
    font-size: 13px;
    margin-bottom: 14px;
    text-align: left;
    border: 1px solid transparent;
}
.auth-login-shell .alert-danger {
    background-color: #fef2f2;
    border-color: #fecaca;
    color: #991b1b;
}
.auth-login-shell .alert-success {
    background-color: #f0fdf4;
    border-color: #bbf7d0;
    color: #166534;
}

.auth-login-body {
    display: block !important;
    width: 100% !important;
}

/* Google Sign-in button modern update */
.auth-login-shell .auth-google-btn-lg {
    min-height: 46px;
    border-radius: 12px;
    border: 1.5px solid #dbe6de;
    background: #ffffff;
    color: #2d3748;
    font-size: 14px;
    font-weight: 600;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.03);
    transition: all 0.2s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.auth-login-shell .auth-google-btn-lg:hover {
    background: #f8fbf9;
    border-color: #cbdcd0;
    box-shadow: 0 4px 12px rgba(20, 72, 47, 0.08);
    transform: translateY(-1px);
    color: #1a202c;
}

.auth-login-shell .auth-divider-inline-wide {
    margin: 16px 0;
    border-bottom: 1px solid #e5ede7;
    position: relative;
    text-align: center;
    height: 1px;
}

.auth-login-shell .auth-divider-inline-wide span {
    position: absolute;
    top: -9px;
    background: #ffffff;
    padding: 0 12px;
    color: #7d9385;
    font-size: 11.5px;
    font-weight: 500;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

/* Input Fields & Affixes */
.auth-login-shell .auth-field-label {
    font-size: 11.5px !important;
    font-weight: 700 !important;
    color: #274b35 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    margin-bottom: 5px !important;
    display: block !important;
}

.auth-input-affix-wrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

.auth-input-prefix {
    position: absolute;
    left: 14px;
    color: #8da495;
    font-size: 14px;
    pointer-events: none;
    z-index: 3;
    transition: color 0.2s ease;
}

.auth-input-affix-wrap:focus-within .auth-input-prefix {
    color: #1f6b46;
}

.auth-login-shell .auth-input {
    height: 46px !important;
    min-height: 46px !important;
    border: 1.5px solid #d5e3d8 !important;
    border-radius: 12px !important;
    background: #fbfdfb !important;
    font-size: 14px !important;
    color: #173823 !important;
    box-shadow: none !important;
    transition: all 0.2s ease-in-out !important;
    width: 100% !important;
}

.auth-login-shell .auth-input::placeholder {
    color: #92a89a !important;
    font-size: 13px !important;
}

.auth-login-shell .auth-input-with-prefix {
    padding-left: 42px !important;
}

.auth-login-shell .auth-input-with-suffix {
    padding-right: 44px !important;
}

.auth-login-shell .auth-input:focus {
    border-color: #2d8a5d !important;
    background: #ffffff !important;
    box-shadow: 0 0 0 4px rgba(45, 138, 93, 0.12) !important;
    outline: none !important;
}

/* Chrome autofill override */
.auth-login-shell .auth-input:-webkit-autofill,
.auth-login-shell .auth-input:-webkit-autofill:hover,
.auth-login-shell .auth-input:-webkit-autofill:focus,
.auth-login-shell .auth-input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px #f8fbf8 inset !important;
    -webkit-text-fill-color: #173823 !important;
    transition: background-color 5000s ease-in-out 0s;
}

/* Field validation error message */
.auth-field-error {
    color: #dc2626;
    font-size: 11.5px;
    font-weight: 600;
    margin-top: 3px;
    min-height: 14px;
    line-height: 1.25;
}

/* Password Eye Toggle */
.auth-password-toggle-btn {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    color: #8da495;
    width: 34px;
    height: 34px;
    font-size: 14px;
    cursor: pointer;
    border-radius: 8px;
    transition: all 0.2s ease;
    z-index: 10;
    display: flex;
    align-items: center;
    justify-content: center;
}

.auth-password-toggle-btn:hover {
    color: #1f6b46;
    background: rgba(31, 107, 70, 0.08);
}

.auth-password-toggle-btn:focus {
    outline: none;
    color: #1f6b46;
}

/* Options Row (Remember Me & Forgot Link) */
.auth-options-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 10px;
    margin-bottom: 16px;
}

.auth-login-shell .auth-check {
    display: flex;
    align-items: center;
    gap: 7px;
    margin: 0 !important;
    cursor: pointer;
}

.auth-login-shell .auth-check .form-check-input {
    width: 16px;
    height: 16px;
    margin-top: 0;
    border-color: #b8cebf;
    cursor: pointer;
    border-radius: 4px;
}

.auth-login-shell .auth-check .form-check-input:checked {
    background-color: #1f6b46;
    border-color: #1f6b46;
}

.auth-login-shell .auth-check .form-check-input:focus {
    box-shadow: 0 0 0 3px rgba(31, 107, 70, 0.15);
    border-color: #1f6b46;
}

.auth-login-shell .auth-check-label {
    font-size: 12.5px;
    color: #556c5c;
    cursor: pointer;
    user-select: none;
    margin-bottom: 0;
}

.auth-forgot-link {
    font-size: 12px;
    font-weight: 600;
    color: #2d8a5d;
    text-decoration: none;
    transition: color 0.2s ease;
}

.auth-forgot-link:hover {
    color: #14462d;
    text-decoration: underline;
}

/* Submit Button */
.auth-submit-btn-full {
    width: 100% !important;
    min-height: 48px !important;
    border-radius: 12px !important;
    font-size: 14.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    background: linear-gradient(135deg, #1f6b46 0%, #2d8a5d 100%) !important;
    border: none !important;
    color: #ffffff !important;
    box-shadow: 0 8px 20px rgba(31, 107, 70, 0.22) !important;
    transition: all 0.25s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
    cursor: pointer;
}

.auth-submit-btn-full:hover {
    background: linear-gradient(135deg, #185738 0%, #25754f 100%) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 12px 24px rgba(31, 107, 70, 0.28) !important;
    color: #ffffff !important;
}

.auth-submit-btn-full:active {
    transform: translateY(0) !important;
    box-shadow: 0 4px 12px rgba(31, 107, 70, 0.18) !important;
}

/* Security Trust Badge */
.auth-security-badge {
    font-size: 11.5px;
    color: #71887a;
    font-weight: 500;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 12px;
}

.auth-security-badge i {
    color: #2d8a5d;
    font-size: 12px;
    margin-right: 5px;
}

/* Register Remind Box */
.auth-login-remind {
    max-width: 460px;
    margin: 14px auto 0;
}

.auth-login-remind .auth-remind-box {
    border-radius: 14px;
    padding: 13px 18px;
    border: 1px solid #dce8df;
    background: #ffffff;
    box-shadow: 0 4px 14px rgba(20, 72, 47, 0.04);
    text-align: center;
}

.auth-login-remind .auth-remind-box p {
    font-size: 13.5px;
    color: #4e6456;
    margin: 0;
    font-weight: 500;
}

.auth-login-remind .auth-register-link {
    color: #1f6b46;
    font-weight: 700;
    text-decoration: none;
    margin-left: 4px;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
}

.auth-login-remind .auth-register-link:hover {
    color: #13452c;
    text-decoration: underline;
}

@media (max-width: 575px) {
    .auth-login-section {
        padding: 20px 0 35px;
    }
    .auth-login-shell {
        padding: 22px 16px 18px !important;
        border-radius: 18px !important;
    }
    .auth-login-head .auth-login-title {
        font-size: 22px !important;
    }
    .auth-login-remind .auth-remind-box {
        border-radius: 12px;
        padding: 11px 14px;
    }
}

/* Anti-bot and Cloudflare Turnstile styles */
.auth-turnstile-wrap {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 18px 0;
    min-height: 65px;
}

.auth-hp-field {
    display: none !important;
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
    overflow: hidden !important;
}
