/**
 * We offer the best and most useful modules PrestaShop and modifications for your online store
 *
 * We are experts and professionals in PrestaShop
 *
 * NOTICE OF LICENSE
 *
 * This file is not open source! Each license that you purchased is only available for 1 website only
 * If you want to use this file on more websites (or projects), you need to purchase additional licenses
 * You are not allowed to redistribute, resell, lease, license, sub-license or offer our resources to any third party
 * Please ensure that you are using a valid license for this file.
 *
 * @author PresTeamShop SAS (Registered Trademark) <info@presteamshop.com>
 * @copyright 2011-2026 PresTeamShop SAS, All rights reserved
 * @license https://opensource.org/licenses/AFL-3.0 Academic Free License version 3.0
 *
 * @category PrestaShop
 * @category Module
 */

body#checkout #wrapper > .container,
body#order #wrapper > .container,
body#checkout #content-wrapper,
body#order #content-wrapper,
body#checkout #content,
body#order #content,
body#checkout #opc_content,
body#order #opc_content,
body#checkout #opc_content_main,
body#order #opc_content_main,
body#checkout #opc_steps,
body#order #opc_steps,
body#checkout #opc_steps_content,
body#order #opc_steps_content {
    width: 100% !important;
    max-width: 1800px !important;
    margin-right: auto;
    margin-left: auto;
}

body#checkout #wrapper > .container,
body#order #wrapper > .container,
body#checkout #opc_content,
body#order #opc_content {
    padding-right: 15px;
    padding-left: 15px;
}

body#checkout #opc_steps_content > .row,
body#order #opc_steps_content > .row {
    width: auto;
}

/* Keep the customer account and privacy choices on the same visual axis. */
body#checkout #opc_main #form-field-component_customer .field-container-checkbox,
body#checkout #opc_main #form-field-component_customer .field-container-checkbox-cms,
body#order #opc_main #form-field-component_customer .field-container-checkbox,
body#order #opc_main #form-field-component_customer .field-container-checkbox-cms {
    width: 100% !important;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-label,
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-label {
    display: flex !important;
    align-items: flex-start !important;
    gap: 8px;
    width: 100%;
    margin: 0;
    line-height: 1.45;
    cursor: pointer;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-label > input[type="checkbox"],
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-label > input[type="checkbox"],
body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-label > .checker,
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-label > .checker {
    position: static !important;
    flex: 0 0 18px;
    width: 18px !important;
    height: 18px !important;
    margin: 1px 0 0 !important;
    transform: none !important;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-label .checker input[type="checkbox"],
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-label .checker input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    margin: 0 !important;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-text,
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-text {
    display: block;
    flex: 1 1 auto;
    min-width: 0;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-text p,
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-text p {
    display: inline;
    margin: 0;
}

body#checkout #opc_main #form-field-component_customer .opc-customer-checkbox-text sup,
body#order #opc_main #form-field-component_customer .opc-customer-checkbox-text sup {
    margin-left: 2px;
    line-height: inherit;
}

/* Explain when a visitor can enter a separate invoice address. */
body#checkout #opc_main .opc-addresses__invoice-notice,
body#order #opc_main .opc-addresses__invoice-notice {
    display: flex;
    align-items: flex-start;
    gap: 9px;
    width: 100%;
    margin: 12px 0;
    padding: 10px 12px;
    border-left: 3px solid #527680;
    background: #f3f6f7;
    color: #3f4c50;
    font-size: 13px;
    line-height: 1.45;
}

body#checkout #opc_main .opc-addresses__invoice-notice-icon,
body#order #opc_main .opc-addresses__invoice-notice-icon {
    display: inline-flex;
    flex: 0 0 18px;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    border: 1px solid #527680;
    border-radius: 50%;
    color: #395d67;
    font-size: 12px;
    font-style: normal;
    font-weight: 700;
    line-height: 1;
}

/* Password policy status without relying on the Material Icons webfont. */
#opc_main .password-strength-feedback .requirement-strength {
    gap: 7px;
    line-height: 1.4;
}

#opc_main .password-strength-feedback .requirement-icon {
    position: relative;
    display: inline-flex;
    flex: 0 0 18px;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    margin: 0 !important;
    overflow: hidden;
    border: 2px solid #8a8f94;
    border-radius: 50%;
    color: #5f6368;
    font-family: Arial, sans-serif !important;
    font-size: 0 !important;
    font-style: normal;
    line-height: 1;
}

#opc_main .password-strength-feedback .requirement-icon::before {
    content: "!";
    font-size: 12px;
    font-weight: 700;
}

#opc_main .password-strength-feedback .requirement-icon.text-success {
    border-color: #218348;
    background: #218348;
    color: #fff !important;
}

#opc_main .password-strength-feedback .requirement-icon.text-success::before {
    content: "\2713";
}

#opc_main .password-strength-feedback .strength-text {
    color: #555 !important;
}

#opc_main .password-strength-feedback .strength-text.text-success {
    color: #1b6f3c !important;
    font-weight: 600;
}

.opc-password-popover i.material-icons {
    display: inline-flex;
    flex: 0 0 16px;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border: 1px solid currentColor;
    border-radius: 50%;
    font-family: Arial, sans-serif !important;
    font-size: 0 !important;
    font-style: normal;
    line-height: 1;
}

.opc-password-popover .opc-popover-warning i.material-icons::before {
    content: "!";
    font-size: 11px;
    font-weight: 700;
}

.opc-password-popover .opc-popover-info i.material-icons::before {
    content: "i";
    font-size: 10px;
    font-weight: 700;
}

@media (max-width: 767px) {
    body#checkout #wrapper > .container,
    body#order #wrapper > .container,
    body#checkout #opc_content,
    body#order #opc_content {
        padding-right: 12px;
        padding-left: 12px;
    }
}
