/* Fichier genere depuis design.php */
:root {
    --bs-body-bg: #f4f6f8;
    --bs-body-color: #1f2933;
    --bs-body-font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --bs-heading-color: #1f2933;
    --bs-primary: #0b5f73;
    --bs-secondary: #62717f;
    --bs-link-color: #0b5f73;
    --bs-link-hover-color: #095162;
}

body {
    background-color: #f4f6f8;
    color: #1f2933;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
    color: #1f2933;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

h1, .h1 { font-size: 40px; }
h2, .h2 { font-size: 32px; }
h3, .h3 { font-size: 26px; }

a { color: #0b5f73; }
a:hover { color: #095162; }

.btn {
    --bs-btn-bg: #0b5f73;
    --bs-btn-border-color: #0b5f73;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #095365;
    --bs-btn-hover-border-color: #095365;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #095365;
    --bs-btn-active-border-color: #095365;
    --bs-btn-active-color: #ffffff;
    background-color: #0b5f73 !important;
    border-color: #0b5f73 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn:hover,
.btn:active {
    background-color: #095365 !important;
    border-color: #095365 !important;
    color: #ffffff !important;
}

.btn:focus,
.btn:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(11, 95, 115, .25);
}

.btn-primary {
    --bs-btn-bg: #0d6efd;
    --bs-btn-border-color: #0d6efd;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #0b60de;
    --bs-btn-hover-border-color: #0b60de;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #0b60de;
    --bs-btn-active-border-color: #0b60de;
    --bs-btn-active-color: #ffffff;
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-primary:hover,
.btn-primary:active {
    background-color: #0b60de !important;
    border-color: #0b60de !important;
    color: #ffffff !important;
}

.btn-primary:focus,
.btn-primary:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .25);
}

.btn-secondary {
    --bs-btn-bg: #6c757d;
    --bs-btn-border-color: #6c757d;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #5f666e;
    --bs-btn-hover-border-color: #5f666e;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #5f666e;
    --bs-btn-active-border-color: #5f666e;
    --bs-btn-active-color: #ffffff;
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-secondary:hover,
.btn-secondary:active {
    background-color: #5f666e !important;
    border-color: #5f666e !important;
    color: #ffffff !important;
}

.btn-secondary:focus,
.btn-secondary:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(108, 117, 125, .25);
}

.btn-success {
    --bs-btn-bg: #198754;
    --bs-btn-border-color: #198754;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #167649;
    --bs-btn-hover-border-color: #167649;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #167649;
    --bs-btn-active-border-color: #167649;
    --bs-btn-active-color: #ffffff;
    background-color: #198754 !important;
    border-color: #198754 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-success:hover,
.btn-success:active {
    background-color: #167649 !important;
    border-color: #167649 !important;
    color: #ffffff !important;
}

.btn-success:focus,
.btn-success:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(25, 135, 84, .25);
}

.btn-danger {
    --bs-btn-bg: #dc3545;
    --bs-btn-border-color: #dc3545;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #c12e3c;
    --bs-btn-hover-border-color: #c12e3c;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #c12e3c;
    --bs-btn-active-border-color: #c12e3c;
    --bs-btn-active-color: #ffffff;
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-danger:hover,
.btn-danger:active {
    background-color: #c12e3c !important;
    border-color: #c12e3c !important;
    color: #ffffff !important;
}

.btn-danger:focus,
.btn-danger:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(220, 53, 69, .25);
}

.btn-warning {
    --bs-btn-bg: #ffc107;
    --bs-btn-border-color: #ffc107;
    --bs-btn-color: #000000;
    --bs-btn-hover-bg: #e0a906;
    --bs-btn-hover-border-color: #e0a906;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #e0a906;
    --bs-btn-active-border-color: #e0a906;
    --bs-btn-active-color: #000000;
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #000000 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-warning:hover,
.btn-warning:active {
    background-color: #e0a906 !important;
    border-color: #e0a906 !important;
    color: #000000 !important;
}

.btn-warning:focus,
.btn-warning:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(255, 193, 7, .25);
}

.btn-info {
    --bs-btn-bg: #0dcaf0;
    --bs-btn-border-color: #0dcaf0;
    --bs-btn-color: #000000;
    --bs-btn-hover-bg: #0bb1d3;
    --bs-btn-hover-border-color: #0bb1d3;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #0bb1d3;
    --bs-btn-active-border-color: #0bb1d3;
    --bs-btn-active-color: #000000;
    background-color: #0dcaf0 !important;
    border-color: #0dcaf0 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #000000 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-info:hover,
.btn-info:active {
    background-color: #0bb1d3 !important;
    border-color: #0bb1d3 !important;
    color: #000000 !important;
}

.btn-info:focus,
.btn-info:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(13, 202, 240, .25);
}

.btn-light {
    --bs-btn-bg: #f8f9fa;
    --bs-btn-border-color: #f8f9fa;
    --bs-btn-color: #000000;
    --bs-btn-hover-bg: #dadbdc;
    --bs-btn-hover-border-color: #dadbdc;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #dadbdc;
    --bs-btn-active-border-color: #dadbdc;
    --bs-btn-active-color: #000000;
    background-color: #f8f9fa !important;
    border-color: #f8f9fa !important;
    border-radius: 6px;
    border-width: 1px;
    color: #000000 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-light:hover,
.btn-light:active {
    background-color: #dadbdc !important;
    border-color: #dadbdc !important;
    color: #000000 !important;
}

.btn-light:focus,
.btn-light:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(248, 249, 250, .25);
}

.btn-dark {
    --bs-btn-bg: #212529;
    --bs-btn-border-color: #212529;
    --bs-btn-color: #ffffff;
    --bs-btn-hover-bg: #1d2024;
    --bs-btn-hover-border-color: #1d2024;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #1d2024;
    --bs-btn-active-border-color: #1d2024;
    --bs-btn-active-color: #ffffff;
    background-color: #212529 !important;
    border-color: #212529 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffffff !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-dark:hover,
.btn-dark:active {
    background-color: #1d2024 !important;
    border-color: #1d2024 !important;
    color: #ffffff !important;
}

.btn-dark:focus,
.btn-dark:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(33, 37, 41, .25);
}

.btn-link {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #ffffff;
    --bs-btn-color: #0d6efd;
    --bs-btn-hover-bg: #e0e0e0;
    --bs-btn-hover-border-color: #e0e0e0;
    --bs-btn-hover-color: #0d6efd;
    --bs-btn-active-bg: #e0e0e0;
    --bs-btn-active-border-color: #e0e0e0;
    --bs-btn-active-color: #0d6efd;
    background-color: #ffffff !important;
    border-color: #ffffff !important;
    border-radius: 6px;
    border-width: 1px;
    color: #0d6efd !important;
    font-size: 16px;
    font-weight: 400;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-link:hover,
.btn-link:active {
    background-color: #e0e0e0 !important;
    border-color: #e0e0e0 !important;
    color: #0d6efd !important;
}

.btn-link:focus,
.btn-link:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(255, 255, 255, .25);
}

.btn-outline-primary {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #0d6efd;
    --bs-btn-color: #0d6efd;
    --bs-btn-hover-bg: #0d6efd;
    --bs-btn-hover-border-color: #0d6efd;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #0d6efd;
    --bs-btn-active-border-color: #0d6efd;
    --bs-btn-active-color: #ffffff;
    background-color: #ffffff !important;
    border-color: #0d6efd !important;
    border-radius: 6px;
    border-width: 1px;
    color: #0d6efd !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-primary:hover,
.btn-outline-primary:active {
    background-color: #0d6efd !important;
    border-color: #0d6efd !important;
    color: #ffffff !important;
}

.btn-outline-primary:focus,
.btn-outline-primary:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(13, 110, 253, .25);
}

.btn-outline-secondary {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #6c757d;
    --bs-btn-color: #6c757d;
    --bs-btn-hover-bg: #6c757d;
    --bs-btn-hover-border-color: #6c757d;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #6c757d;
    --bs-btn-active-border-color: #6c757d;
    --bs-btn-active-color: #ffffff;
    background-color: #ffffff !important;
    border-color: #6c757d !important;
    border-radius: 6px;
    border-width: 1px;
    color: #6c757d !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-secondary:hover,
.btn-outline-secondary:active {
    background-color: #6c757d !important;
    border-color: #6c757d !important;
    color: #ffffff !important;
}

.btn-outline-secondary:focus,
.btn-outline-secondary:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(108, 117, 125, .25);
}

.btn-outline-success {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #198754;
    --bs-btn-color: #198754;
    --bs-btn-hover-bg: #198754;
    --bs-btn-hover-border-color: #198754;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #198754;
    --bs-btn-active-border-color: #198754;
    --bs-btn-active-color: #ffffff;
    background-color: #ffffff !important;
    border-color: #198754 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #198754 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-success:hover,
.btn-outline-success:active {
    background-color: #198754 !important;
    border-color: #198754 !important;
    color: #ffffff !important;
}

.btn-outline-success:focus,
.btn-outline-success:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(25, 135, 84, .25);
}

.btn-outline-danger {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #dc3545;
    --bs-btn-color: #dc3545;
    --bs-btn-hover-bg: #dc3545;
    --bs-btn-hover-border-color: #dc3545;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #dc3545;
    --bs-btn-active-border-color: #dc3545;
    --bs-btn-active-color: #ffffff;
    background-color: #ffffff !important;
    border-color: #dc3545 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #dc3545 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-danger:hover,
.btn-outline-danger:active {
    background-color: #dc3545 !important;
    border-color: #dc3545 !important;
    color: #ffffff !important;
}

.btn-outline-danger:focus,
.btn-outline-danger:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(220, 53, 69, .25);
}

.btn-outline-warning {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #ffc107;
    --bs-btn-color: #ffc107;
    --bs-btn-hover-bg: #ffc107;
    --bs-btn-hover-border-color: #ffc107;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #ffc107;
    --bs-btn-active-border-color: #ffc107;
    --bs-btn-active-color: #000000;
    background-color: #ffffff !important;
    border-color: #ffc107 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #ffc107 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-warning:hover,
.btn-outline-warning:active {
    background-color: #ffc107 !important;
    border-color: #ffc107 !important;
    color: #000000 !important;
}

.btn-outline-warning:focus,
.btn-outline-warning:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(255, 193, 7, .25);
}

.btn-outline-info {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #0dcaf0;
    --bs-btn-color: #0dcaf0;
    --bs-btn-hover-bg: #0dcaf0;
    --bs-btn-hover-border-color: #0dcaf0;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #0dcaf0;
    --bs-btn-active-border-color: #0dcaf0;
    --bs-btn-active-color: #000000;
    background-color: #ffffff !important;
    border-color: #0dcaf0 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #0dcaf0 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-info:hover,
.btn-outline-info:active {
    background-color: #0dcaf0 !important;
    border-color: #0dcaf0 !important;
    color: #000000 !important;
}

.btn-outline-info:focus,
.btn-outline-info:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(13, 202, 240, .25);
}

.btn-outline-light {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #f8f9fa;
    --bs-btn-color: #6c757d;
    --bs-btn-hover-bg: #f8f9fa;
    --bs-btn-hover-border-color: #f8f9fa;
    --bs-btn-hover-color: #000000;
    --bs-btn-active-bg: #f8f9fa;
    --bs-btn-active-border-color: #f8f9fa;
    --bs-btn-active-color: #000000;
    background-color: #ffffff !important;
    border-color: #f8f9fa !important;
    border-radius: 6px;
    border-width: 1px;
    color: #6c757d !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-light:hover,
.btn-outline-light:active {
    background-color: #f8f9fa !important;
    border-color: #f8f9fa !important;
    color: #000000 !important;
}

.btn-outline-light:focus,
.btn-outline-light:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(248, 249, 250, .25);
}

.btn-outline-dark {
    --bs-btn-bg: #ffffff;
    --bs-btn-border-color: #212529;
    --bs-btn-color: #212529;
    --bs-btn-hover-bg: #212529;
    --bs-btn-hover-border-color: #212529;
    --bs-btn-hover-color: #ffffff;
    --bs-btn-active-bg: #212529;
    --bs-btn-active-border-color: #212529;
    --bs-btn-active-color: #ffffff;
    background-color: #ffffff !important;
    border-color: #212529 !important;
    border-radius: 6px;
    border-width: 1px;
    color: #212529 !important;
    font-size: 16px;
    font-weight: 600;
    padding: 8px 16px;
    text-decoration: none;
    text-transform: none;
    transition: background-color .15s ease-in-out, border-color .15s ease-in-out, color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.btn-outline-dark:hover,
.btn-outline-dark:active {
    background-color: #212529 !important;
    border-color: #212529 !important;
    color: #ffffff !important;
}

.btn-outline-dark:focus,
.btn-outline-dark:focus-visible {
    box-shadow: 0 0 0 .22rem rgba(33, 37, 41, .25);
}

.admin-panel,
.settings-panel,
.public-page-content,
.site-section,
.card,
.modal-content,
.design-preview-box,
.design-button-preview,
.design-block-preview {
    background-color: #ffffff;
    border-color: #d9e0e7 !important;
    border-style: solid;
    border-width: 1px !important;
    border-radius: 8px;
    box-shadow: none;
    color: #1f2933;
    margin-top: 0px;
    margin-bottom: 24px;
}

.admin-panel,
.settings-panel,
.public-page-content,
.site-section,
.design-preview-box,
.design-button-preview,
.design-block-preview,
.card-body,
.modal-body,
.modal-header,
.modal-footer {
    padding: 24px 24px;
}

.text-primary { color: #0b5f73 !important; }
.bg-primary { background-color: #0b5f73 !important; }
.border-primary { border-color: #0b5f73 !important; }
