/* =====================================================
   INATECH - AUTHENTICATION / REGISTRATION
   Loaded only on login and registration pages
   ===================================================== */

.inatech-auth-layout,
.inatech-register-layout {
    width: 100% !important;
    max-width: 1040px !important;
    margin: 28px auto 42px !important;
}

.inatech-auth-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 22px !important;
}

.inatech-register-layout {
    display: grid !important;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.85fr) !important;
    gap: 22px !important;
}

.inatech-auth-card,
.inatech-register-card,
.inatech-register-benefits {
    background: #ffffff !important;
    border: 1px solid #dfe4ea !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.inatech-auth-card,
.inatech-register-card {
    padding: 28px 32px 30px !important;
}

.inatech-register-benefits {
    padding: 28px 28px 30px !important;
}

.inatech-auth-card-head {
    margin: 0 0 22px !important;
    padding: 0 0 18px !important;
    border-bottom: 1px solid #edf0f2 !important;
}

.inatech-auth-title,
.inatech-register-benefits h2 {
    margin: 0 0 8px !important;
    color: #111827 !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1.2 !important;
    text-transform: none !important;
}

.inatech-register-benefits h2 {
    font-size: 22px !important;
    margin-bottom: 16px !important;
}

.inatech-auth-subtitle {
    margin: 0 !important;
    color: #4b5563 !important;
    font-size: 14px !important;
    line-height: 1.55 !important;
}

.inatech-auth-small-link {
    margin: 12px 0 0 !important;
    color: #374151 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.inatech-auth-small-link a,
.inatech-auth-forgot,
.inatech-auth-card a:not(.inatech-auth-secondary-btn) {
    color: #00a95a !important;
    font-weight: 600 !important;
    text-decoration: none !important;
}

.inatech-auth-small-link a:hover,
.inatech-auth-forgot:hover,
.inatech-auth-card a:not(.inatech-auth-secondary-btn):hover {
    text-decoration: underline !important;
}

.inatech-auth-benefits {
    margin: 0 0 24px !important;
    padding: 0 !important;
    list-style: none !important;
}

.inatech-auth-benefits li {
    position: relative !important;
    margin: 0 0 11px !important;
    padding: 0 0 0 24px !important;
    color: #111827 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.inatech-auth-benefits li::before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    top: 0 !important;
    color: #00a95a !important;
    font-weight: 800 !important;
}

.inatech-auth-form-content,
.inatech-auth-form-inner,
.inatech-register-card .form_content,
.inatech-register-card .form_content_inner {
    padding: 0 !important;
    margin: 0 !important;
}

.inatech-auth-field {
    margin: 0 0 16px !important;
}

.inatech-register-card .row.com_grid_view {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 0 16px !important;
    margin: 0 !important;
}

.inatech-register-card .inatech-auth-field {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 0 16px !important;
}

.inatech-register-card .inatech-auth-field-half {
    grid-column: span 1 !important;
}

.inatech-register-card .inatech-auth-field-full,
.inatech-register-card .inatech-auth-field-newsletter,
.inatech-register-card .inatech-auth-field-psgdpr,
.inatech-register-card .inatech-auth-field-customer_privacy {
    grid-column: 1 / -1 !important;
}

.inatech-auth-page .form-group,
.inatech-register-page .form-group,
.inatech-auth-page .form-control-comment,
.inatech-register-page .form-control-comment {
    margin-bottom: 0 !important;
}

.inatech-auth-page label,
.inatech-register-page label {
    color: #111827 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 1.35 !important;
    margin: 0 0 7px !important;
}

.inatech-auth-page .form-control,
.inatech-register-page .form-control,
.inatech-auth-page input[type="text"],
.inatech-auth-page input[type="email"],
.inatech-auth-page input[type="password"],
.inatech-register-page input[type="text"],
.inatech-register-page input[type="email"],
.inatech-register-page input[type="password"] {
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 12px !important;
    border: 1px solid #d1d5db !important;
    background: #ffffff !important;
    color: #111827 !important;
    font-size: 14px !important;
    line-height: 44px !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

.inatech-auth-page .form-control:focus,
.inatech-register-page .form-control:focus,
.inatech-auth-page input:focus,
.inatech-register-page input:focus {
    border-color: #00a95a !important;
    outline: 0 !important;
    box-shadow: 0 0 0 2px rgba(20, 115, 230, 0.12) !important;
}

.inatech-auth-page .input-group,
.inatech-register-page .input-group {
    display: flex !important;
    width: 100% !important;
}

.inatech-auth-page .input-group .form-control,
.inatech-register-page .input-group .form-control {
    flex: 1 1 auto !important;
}

.inatech-auth-page .input-group .input-group-btn,
.inatech-register-page .input-group .input-group-btn,
.inatech-auth-page .input-group .btn,
.inatech-register-page .input-group .btn {
    height: 44px !important;
    border-radius: 0 !important;
}

.inatech-auth-page .form-control-comment,
.inatech-register-page .form-control-comment,
.inatech-auth-page .help-block,
.inatech-register-page .help-block,
.inatech-auth-page .form-text,
.inatech-register-page .form-text {
    display: block !important;
    margin: 6px 0 0 !important;
    color: #8a94a6 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.inatech-auth-forgot-wrap {
    margin: 2px 0 0 !important;
}

.inatech-auth-footer,
.inatech-register-card .form-footer {
    margin: 20px 0 0 !important;
    padding: 0 !important;
}

.inatech-auth-primary-btn,
.inatech-auth-secondary-btn,
.inatech-register-page .inatech-auth-primary-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    min-height: 44px !important;
    height: 44px !important;
    padding: 0 20px !important;
    border-radius: 0 !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    cursor: pointer !important;
}

.inatech-auth-primary-btn,
.inatech-register-page .inatech-auth-primary-btn {
    border: 1px solid#00a95a !important;
    background: #00a95a !important;
    color: #ffffff !important;
}

.inatech-auth-primary-btn:hover,
.inatech-register-page .inatech-auth-primary-btn:hover {
    border-color: #00a95a !important;
    background: #00a95a !important;
    color: #ffffff !important;
}

.inatech-auth-secondary-btn {
    border: 1px solid #00a95a !important;
    background: #ffffff !important;
    color: #00a95a !important;
}

.inatech-auth-secondary-btn:hover {
    background: #00a95a !important;
    color: #ffffff !important;
}

.inatech-auth-primary-btn i,
.inatech-auth-secondary-btn i {
    margin-right: 8px !important;
}

.inatech-auth-social-login {
    margin: 0 0 18px !important;
}

.inatech-register-page .custom-checkbox,
.inatech-register-page .form-group-newsletter,
.inatech-register-page .inatech-auth-field-newsletter {
    color: #374151 !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

.inatech-register-page input[type="checkbox"] {
    margin-right: 8px !important;
}

.inatech-auth-page .alert,
.inatech-register-page .alert {
    border-radius: 0 !important;
}

/* Normalize Panda login/register old blocks when they still exist inside forms */
.inatech-auth-page .from_blcok,
.inatech-register-page .from_blcok,
.inatech-auth-page .login_form_block,
.inatech-register-page .login_form_block {
    border: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: none !important;
}

@media (max-width: 991px) {
    .inatech-auth-layout,
    .inatech-register-layout {
        max-width: 680px !important;
        display: block !important;
        margin-top: 20px !important;
    }

    .inatech-auth-card,
    .inatech-register-card,
    .inatech-register-benefits {
        margin-bottom: 18px !important;
    }
}

@media (max-width: 767px) {
    .inatech-auth-layout,
    .inatech-register-layout {
        margin: 14px auto 28px !important;
    }

    .inatech-auth-card,
    .inatech-register-card,
    .inatech-register-benefits {
        padding: 18px 16px 20px !important;
    }

    .inatech-auth-card-head {
        margin-bottom: 18px !important;
        padding-bottom: 14px !important;
    }

    .inatech-auth-title,
    .inatech-register-benefits h2 {
        font-size: 21px !important;
    }

    .inatech-auth-subtitle,
    .inatech-auth-benefits li,
    .inatech-auth-small-link {
        font-size: 13px !important;
    }

    .inatech-register-card .row.com_grid_view {
        display: block !important;
    }

    .inatech-register-card .inatech-auth-field,
    .inatech-register-card .inatech-auth-field-half,
    .inatech-register-card .inatech-auth-field-full {
        width: 100% !important;
    }

    .inatech-auth-page .form-control,
    .inatech-register-page .form-control,
    .inatech-auth-page input[type="text"],
    .inatech-auth-page input[type="email"],
    .inatech-auth-page input[type="password"],
    .inatech-register-page input[type="text"],
    .inatech-register-page input[type="email"],
    .inatech-register-page input[type="password"] {
        height: 42px !important;
        min-height: 42px !important;
        line-height: 42px !important;
        font-size: 13px !important;
    }

    .inatech-auth-primary-btn,
    .inatech-auth-secondary-btn,
    .inatech-register-page .inatech-auth-primary-btn {
        height: 42px !important;
        min-height: 42px !important;
        font-size: 14px !important;
    }
}

/* =====================================================
   INATECH AUTH - Equal card height + aligned CTA buttons
   ===================================================== */

.inatech-auth-layout {
    align-items: stretch !important;
}

.inatech-auth-card-login,
.inatech-auth-card-new {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

.inatech-auth-card-login .inatech-auth-card-head,
.inatech-auth-card-new .inatech-auth-card-head {
    flex: 0 0 auto !important;
}

/* Stânga: formularul ocupă restul cardului, iar footer-ul cu butonul merge jos */
.inatech-login-form {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    height: 100% !important;
    margin: 0 !important;
}

.inatech-login-form .inatech-auth-form-content {
    flex: 1 1 auto !important;
}

.inatech-login-form .inatech-auth-footer {
    flex: 0 0 auto !important;
    margin-top: auto !important;
    padding-top: 20px !important;
}

/* Dreapta: lista de beneficii ocupă spațiul, iar butonul merge jos */
.inatech-auth-card-new .inatech-auth-benefits {
    flex: 1 1 auto !important;
    margin-bottom: 0 !important;
}

.inatech-auth-card-new .inatech-auth-social-login {
    flex: 0 0 auto !important;
}

.inatech-auth-card-new .inatech-auth-secondary-btn {
    flex: 0 0 auto !important;
    margin-top: auto !important;
}

/* Aceeași dimensiune vizuală pentru CTA-uri */
.inatech-auth-primary-btn,
.inatech-auth-secondary-btn {
    height: 44px !important;
    min-height: 44px !important;
}

@media (max-width: 991px) {
    .inatech-auth-card-login,
    .inatech-auth-card-new,
    .inatech-login-form {
        height: auto !important;
    }

    .inatech-login-form .inatech-auth-footer,
    .inatech-auth-card-new .inatech-auth-secondary-btn {
        margin-top: 18px !important;
    }
}

/* =====================================================
   INATECH AUTH - Registration design refinements
   ===================================================== */

.inatech-register-layout {
    max-width: 1060px !important;
    grid-template-columns: minmax(0, 1.35fr) minmax(310px, 0.75fr) !important;
    align-items: stretch !important;
}

.inatech-register-card,
.inatech-register-benefits {
    display: flex !important;
    flex-direction: column !important;
    min-height: 0 !important;
}

.inatech-register-card {
    padding: 26px 30px 28px !important;
}

.inatech-register-benefits {
    padding: 26px 26px 28px !important;
}

.inatech-register-page .inatech-auth-card-head {
    margin: 0 0 20px !important;
    padding: 0 0 16px !important;
}

.inatech-register-page .inatech-auth-title {
    font-size: 24px !important;
    line-height: 1.2 !important;
}

.inatech-register-page .inatech-auth-subtitle,
.inatech-register-page .inatech-auth-small-link {
    max-width: 680px !important;
}

.inatech-register-page #customer-form,
.inatech-register-page #customer-form .form_content,
.inatech-register-page #customer-form .form_content_inner {
    width: 100% !important;
}

.inatech-register-card .row.com_grid_view {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 16px !important;
    margin: 0 !important;
}

.inatech-register-card .inatech-auth-field {
    margin: 0 !important;
}

.inatech-register-card .inatech-auth-field-half {
    grid-column: span 1 !important;
}

.inatech-register-card .inatech-auth-field-full,
.inatech-register-card .inatech-auth-field-newsletter,
.inatech-register-card .inatech-auth-field-psgdpr,
.inatech-register-card .inatech-auth-field-customer_privacy,
.inatech-register-card .inatech-auth-field-optin {
    grid-column: 1 / -1 !important;
}

.inatech-register-page label {
    font-size: 13px !important;
    margin-bottom: 6px !important;
}

.inatech-register-page .form-control,
.inatech-register-page input[type="text"],
.inatech-register-page input[type="email"],
.inatech-register-page input[type="password"] {
    height: 42px !important;
    min-height: 42px !important;
    line-height: 42px !important;
}

.inatech-register-page .input-group .input-group-btn,
.inatech-register-page .input-group .btn {
    height: 42px !important;
}

/* Textul de ajutor rămâne vizibil, dar mai discret și mai compact. */
.inatech-register-page .form-control-comment,
.inatech-register-page .help-block,
.inatech-register-page .form-text {
    margin-top: 5px !important;
    color: #8a94a6 !important;
    font-size: 11px !important;
    line-height: 1.3 !important;
}

.inatech-register-page .custom-checkbox,
.inatech-register-page .form-group-newsletter,
.inatech-register-page .inatech-auth-field-newsletter {
    margin-top: 2px !important;
    padding: 12px 0 0 !important;
    border-top: 1px solid #edf0f2 !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

.inatech-register-card .form-footer {
    margin-top: 24px !important;
}

.inatech-register-page .inatech-auth-primary-btn {
    height: 46px !important;
    min-height: 46px !important;
    font-size: 15px !important;
}

.inatech-register-benefits h2 {
    font-size: 22px !important;
    margin-bottom: 18px !important;
}

.inatech-register-benefits .inatech-auth-benefits {
    margin: 0 !important;
}

.inatech-register-benefits .inatech-auth-benefits li {
    margin-bottom: 14px !important;
    font-size: 14px !important;
    line-height: 1.42 !important;
}

@media (max-width: 991px) {
    .inatech-register-layout {
        display: block !important;
        max-width: 720px !important;
    }

    .inatech-register-benefits {
        margin-top: 18px !important;
    }
}

@media (max-width: 767px) {
    .inatech-register-card,
    .inatech-register-benefits {
        padding: 18px 16px 20px !important;
    }

    .inatech-register-card .row.com_grid_view {
        display: block !important;
    }

    .inatech-register-card .inatech-auth-field {
        margin-bottom: 14px !important;
    }

    .inatech-register-page .inatech-auth-title {
        font-size: 21px !important;
    }

    .inatech-register-page .form-control-comment,
    .inatech-register-page .help-block,
    .inatech-register-page .form-text {
        font-size: 11px !important;
    }
}

/* =====================================================
   INATECH AUTH - Forgot / reset password pages
   ===================================================== */

.inatech-password-layout {
    width: 100% !important;
    max-width: 1040px !important;
    margin: 28px auto 42px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1.25fr) minmax(300px, 0.75fr) !important;
    gap: 22px !important;
    align-items: stretch !important;
}

.inatech-password-card,
.inatech-password-help {
    display: flex !important;
    flex-direction: column !important;
    min-height: 315px !important;
}

.inatech-password-card .inatech-auth-card-head,
.inatech-password-help h2 {
    flex: 0 0 auto !important;
}

/* Important: fără height:100%, altfel butoanele cad în footer */
.inatech-password-form {
    display: block !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
}

.inatech-password-form .form-fields {
    display: block !important;
    flex: none !important;
    margin: 0 !important;
}

.inatech-password-success-box {
    flex: 1 1 auto !important;
    margin: 0 !important;
}

.inatech-password-success-item {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    margin: 0 !important;
    padding: 18px 20px !important;
    border: 1px solid #22c55e !important;
    background: #f0fdf4 !important;
    color: #065f46 !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

.inatech-password-success-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 34px !important;
    width: 34px !important;
    height: 34px !important;
    background: #22c55e !important;
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.inatech-password-actions {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 10px !important;
    margin: 24px 0 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    width: 100% !important;
}

.inatech-password-actions-single {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

.inatech-password-actions .inatech-auth-primary-btn,
.inatech-password-actions .inatech-auth-secondary-btn,
.inatech-password-actions a.inatech-auth-primary-btn,
.inatech-password-actions a.inatech-auth-secondary-btn,
.inatech-password-actions button.inatech-auth-primary-btn {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 100% !important;
    height: 44px !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 0 22px !important;
    border-radius: 0 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    text-align: center !important;
    text-indent: 0 !important;
    text-transform: none !important;
    letter-spacing: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
    overflow: visible !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.inatech-password-actions .inatech-auth-primary-btn,
.inatech-password-actions a.inatech-auth-primary-btn,
.inatech-password-actions button.inatech-auth-primary-btn {
    border: 1px solid #00a95a !important;
    background: #00a95a !important;
    color: #ffffff !important;
}

.inatech-password-actions .inatech-auth-secondary-btn,
.inatech-password-actions a.inatech-auth-secondary-btn {
    border: 1px solid #00a95a !important;
    background: #ffffff !important;
    color: #00a95a !important;
}

.inatech-password-actions-single .inatech-auth-primary-btn,
.inatech-password-actions-single .inatech-auth-secondary-btn {
    width: auto !important;
    min-width: 245px !important;
}

.inatech-password-actions .inatech-auth-primary-btn *,
.inatech-password-actions .inatech-auth-secondary-btn * {
    color: inherit !important;
    font-size: inherit !important;
    line-height: inherit !important;
    text-indent: 0 !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* fallback dacă tema golește textul din link */
.inatech-password-actions-single .inatech-auth-primary-btn:empty::after,
.inatech-password-actions-single .inatech-auth-secondary-btn:empty::after {
    content: "Înapoi la autentificare" !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
}

.inatech-password-email-info {
    margin: 0 0 16px !important;
    padding: 12px 14px !important;
    border: 1px solid #edf0f2 !important;
    background: #f8fafc !important;
    color: #374151 !important;
    font-size: 14px !important;
    line-height: 1.4 !important;
}

.inatech-auth-errors {
    margin: 0 0 16px !important;
    padding: 0 !important;
    list-style: none !important;
}

.inatech-auth-errors .item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    margin: 0 0 8px !important;
    padding: 10px 12px !important;
    border: 1px solid #fecaca !important;
    background: #fef2f2 !important;
    color: #991b1b !important;
}

.inatech-auth-errors .item i {
    display: none !important;
}

.inatech-auth-errors .item p {
    margin: 0 !important;
    color: #991b1b !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
}

@media (max-width: 991px) {
    .inatech-password-layout {
        display: block !important;
        max-width: 720px !important;
        margin-top: 20px !important;
    }

    .inatech-password-help {
        margin-top: 18px !important;
    }
}

@media (max-width: 767px) {
    .inatech-password-layout {
        margin: 14px auto 28px !important;
    }

    .inatech-password-card,
    .inatech-password-help {
        min-height: 0 !important;
    }

    .inatech-password-actions,
    .inatech-password-actions-single {
        display: block !important;
    }

    .inatech-password-actions .inatech-auth-primary-btn,
    .inatech-password-actions .inatech-auth-secondary-btn,
    .inatech-password-actions-single .inatech-auth-primary-btn,
    .inatech-password-actions-single .inatech-auth-secondary-btn {
        width: 100% !important;
        min-width: 0 !important;
        margin-top: 8px !important;
    }
}

/* =====================================================
   AUTH - Login inputs same width as login button
   ===================================================== */

.inatech-auth-card-login .inatech-auth-field,
.inatech-auth-card-login .form-group,
.inatech-auth-card-login .form_content,
.inatech-auth-card-login .form_content_inner {
    width: 100% !important;
    max-width: 100% !important;
}

.inatech-auth-card-login .form-control,
.inatech-auth-card-login input[type="email"],
.inatech-auth-card-login input[type="password"] {
    width: 100% !important;
    max-width: 100% !important;
}

.inatech-auth-card-login .input-group {
    width: 100% !important;
    max-width: 100% !important;
}

.inatech-auth-card-login .input-group .form-control {
    width: 100% !important;
    max-width: none !important;
    flex: 1 1 auto !important;
}

.inatech-auth-card-login .inatech-auth-primary-btn {
    width: 100% !important;
}