@import url('fonts.css'); @import url('range-selector.css'); :root { --orange-credit-direct: #F76622; --text-dark: #333333; --background-light: #f5f5f5; } .load_simulator { /* display: -webkit-flex; display: flex; */ color: #192c4a; } .cout_total_value.final { font-size: 16px; font-weight: 800; } .ls_result_label.final { font-size: 16px; font-weight: 800; } h3.simulator_title { font-size: 30px !important; color: #001954 !important; text-align: center; margin-top: 3rem !important; margin-bottom: 1rem !important; } h4.simulator_subtitle { font-size: 18px !important; color: #001954 !important; margin: 2em 0 1em 0; } .load_simulator label { vertical-align: baseline; color: #192c4a; } .widget-input-text { border: 1px #E8E8E8 solid; padding: 5px; } #date-range-selector { margin: 0; text-align: center; margin-bottom: 10px; margin-top: 10px; padding: 0px; } .date-range-buttons { display: grid; grid-template-columns: repeat(2, 1fr); gap: 4px; } .date-range-buttons li:last-child:nth-child(odd) { grid-column: 1 / -1; } li.months-inactive, li.months-active { list-style: none; display: inline-block; padding: 5px 10px; /* border-bottom: 2px solid #274471; */ color: #274471; font-weight: 700; cursor: pointer; } li.months-inactive, li.months-active { box-shadow: 0 5px 10px 0 rgba(184, 184, 184, 0.1); border-radius: 8px; border: 1px solid #e0e0e0; margin: 6px; transition: all ease-in 0.3s; font-size: 0.9em; font-weight: normal; } li.months-active .mensualite { font-size: 1.2em; font-weight: 700; } li.months-inactive { border-color: #c3c3c3; color: #c3c3c3; cursor: default; } li.months-active.selected, li.months-active:hover { /* border-bottom: 2px solid #fe8c1e; */ background: #fe8c1e; color: #fff; } .stimulator-slider-control { border: none; border-radius: 50%; width: 22px; background-color: #274471; color: #fff; float: left; } .slider-count-wrapper { width: calc(100% - 44px); display: block; float: left; margin-top: 5px; background: linear-gradient(#e9e9e9, #fff); border-color: #1c3050; color: #fff; } div.stimulator_info_block { display: inline-block; } .stimulator_label, .stimulator_value { font-size: 12px; margin-bottom: 5px; } #additional_messages, .disclaimer p { font-size: 12px; text-align: justify; margin: 1.5rem 0 1rem 0 !important; } .disclaimer p.credit-example { color: #192c4a; font-size: 12px; margin: 0 !important; } p em { color: #192c4a; font-size: 10px; margin: 0 !important; } .exemple-info p em { font-size: 0.8em; } .disclaimer p.credit-example strong { font-weight: 900; } #additional_messages { color: #fd841f } #additional_messages:empty { display: none; } .stimulated-results { background: url("images/blug-abstract-bg.png"); background-size: cover; min-height: 387px !important; } .load_simulator .vc_col-md-8, .load_simulator .vc_col-md-4 { padding: 20px; } .ls_result_label { float: left; font-size: 15px; font-weight: 700; color: #fff; text-transform: uppercase; margin-bottom: 20px; } .ls_result_value { float: right; } .ls_result_value, .ls_result_value span { font-size: 15px; font-weight: 700; color: #fff; } .btn.stimulator_result_btn {} .load_simulator .vc_col-md-12 { width: 100%; } .load_simulator .vc_col-md-12, .load_simulator .vc_col-md-6, .load_simulator .vc_col-lg-4 { padding: 0; display: inline-block; } form.load_simulator>div, div.load_simulator>div { padding: 10px 20px !important; /* background-color: #f5f5f5; */ } .first-col { background: #fff; background-size: cover; min-height: 387px !important; box-shadow: 0 4px 19px 0 rgba(8, 41, 78, .15); border-radius: 15px; /* margin: 1rem; */ } .stimulated-results { background: #fff; background-size: cover; min-height: 387px !important; box-shadow: 0 4px 19px 0 rgba(8, 41, 78, .15); border-radius: 15px; /* margin: 1rem; */ } .advice-text { color: #192c4a; } .ls_result_label { float: left; font-size: 14px; font-weight: 700; color: #192c4a; margin-bottom: 20px; text-transform: none; } .ls_result_value { float: right; } .ls_result_value, .ls_result_value span { font-size: 15px; font-weight: 700; color: #192c4a; } .stimulator_result_btn { font-size: 20px !important; width: 100%; padding: 25px 0 !important; font-weight: 600 !important; } .show-on-mobile { display: none; } .btn { display: inline-block; padding: 6px 12px; margin-bottom: 0; font-size: 14px; font-weight: 400; line-height: 1.42857143; text-align: center; white-space: nowrap; vertical-align: middle; -ms-touch-action: manipulation; touch-action: manipulation; cursor: pointer; -webkit-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; background-image: none; border: 1px solid transparent; border-radius: 8px; margin-top: 1rem; } .btn-warning, .vc_btn3-color-warning, .vc_btn3.vc_btn3-color-warning.vc_btn3-style-modern { color: #fff !important; border-color: #ff921d !important; background: #ff921d !important; background: #ff921d !important; background: #ff921d !important; background: #ff921d!important; font-weight: bolder !important; font-size: 14px !important; } .stimulator_result_btn { font-size: 15px !important; width: 100%; padding: 15px 0 !important; font-weight: 600 !important; } .ui-slider-input { display: none !important; } .range_selector { display: inline-block; width: 100%; } .slider-count-wrapper { margin-left: 1.5rem; } .icon-check label.form-check-label:hover, .icon-check label.form-check-label.active { background-color: #fe8c1e; color: white; } .icon-check label.form-check-label:active { background-color: #fe8c1e !important; color: white!important; } .range_selector.selected_months { margin-bottom: 10px; } .stimulator_value { float: right; font-weight: 700; } .stimulator_label { float: left; font-weight: 700; } .stimulator_label, .stimulator_value { font-size: 12px; margin-bottom: 5px; } input.widget-input-text.col-lg-8 { width: 66.66666667%; } .stimulator-slider-control { border: none; border-radius: 6px; /* padding: 4px 12px; */ margin: 0 6px; /* width: 22px; */ height: 20px; line-height: 2px; background-color: #1c3050; color: #fff; float: left; font-weight: 700; } .slider-count-wrapper { position: relative; width: calc(100% - 8px); display: block; float: left; margin-top: 5px; background-color: #d6d7db; border-color: #1c3050; color: #fff; /* margin: 50px 0 20px 0; */ margin: 15px 0 20px 0; } /* .slider-count-wrapper::after { content: ''; position: absolute; height: 12px; width: 100%; top: 0; border-radius: 8px; background-color: #f76622; } */ .slider-count-wrapper .after_bar { position: absolute; height: 12px; width: 100%; top: 0; border-radius: 8px; } .after_bar_month { position: absolute; height: 12px; width: 100%; top: 0; border-radius: 8px; background-color: #fe8c1e; } .slider-count-wrapper .after_bar.active { background-color: #fe8c1e; } .slider-count-wrapper {} .ui-slider-horizontal span { font-weight: bold; } #selected_capital { /* margin-bottom: 10px; */ } #selected_months { /* display: none; color: #f6931f; */ font-weight: bold; } .simulator_selectors>.form-group>label { padding: 5px 0; margin-bottom: 0; } .stimulated-results .disclaimer-results { margin-top: 20px; } .stimulated-results, .stimulated-results .disclaimer-results p, .stimulated-results .disclaimer-results p em, .stimulated-results .disclaimer-results a { color: #fff; font-weight: 300; font-size: 12px; } h3.ui-accordion-header { color: #333; background: none; border: none; border-bottom: 1px solid #284776; font-size: 1.4em; padding-bottom: 5px; border-radius: 0; cursor: pointer; } h3.ui-accordion-header i { color: #284776; } .wp-credit-form { padding: 25px 0; } .wp-credit-form input[type="number"], .wp-credit-form input[type="date"], .wp-credit-form input[type="text"], .wp-credit-form input[type="tel"], .wp-credit-form input[type="email"], #selected_capital { border: 1px solid #ccc; } .form-group { margin-top: 15px; } label { display: inline-block; max-width: 100%; margin-bottom: 5px; font-weight: 700; font-size: 10px; } .form-control { display: block; width: 100%; height: var(--form_input_height); padding: 6px 12px; font-size: 14px; line-height: 1.42857143; color: #555; background-color: #fff; background-image: none; border: 1px solid #ccc; border-radius: 4px; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; } .hidden { display: none; } .date-range-buttons .mensualite { display: block; margin-top: 8px; text-align: center; } ul.credit_type, div.loan_type_radio { padding-left: 0; margin-left: -7.5px; margin-right: -7.5px; } .credit_type li, .loan_type_radio .form_check { list-style: none; padding: 0 8px; margin-bottom: 16px; } .credit_type li a { display: block; height: 100%; padding: 8px 12px; border: 1px solid #ccc; border-radius: 4px; transition: all ease-in 0.3s; } .loan_type_radio .loan_type, .loan_type_radio .sub_loan_type, .loan_type_radio .sub_auto_loan_type { display: none; } /* .sub_auto { margin-top: 15px 0; padding: 15px 0; border-top: 1px solid #f2f3f5; } */ .sub_radio_sel { margin-top: 15px; padding: 12px; border-radius: 8px; background: 1px solid #f2f3f5; } .loan_type_radio label { display: inline-block; width: 100%; height: 100%; cursor: pointer; text-align: center; line-height: normal; border-radius: 8px; border: 1px solid #cfcdcd; transition: all ease-in 0.3s; font-size: 0.7em; font-weight: normal; padding: 15px 5px 10px 5px; } /* .col-md-4 { padding: 10px 20px !important; } */ /* .col-md-12:not(.co-emprunteur) { padding: 0px !important; } */ .loan_type_radio label i { display: inline-block; text-align: center; font-size: 1.3em; padding: 5px; } .loan_type_radio label .label_text { display: inline-block; /* margin-top: 15px; */ width: 100%; font-weight: bold; } .simu_step { display: inline-block; width: 30px; height: 30px; border-radius: 50%; background-color: #ff921d; color: #fff; text-align: center; font-size: 0.8em; line-height: 30px; font-weight: 700; margin-right: 8px; } .credit_type li a:hover, .loan_type_radio label:hover i, .loan_type_radio .loan_type:checked+label, .loan_type_radio .sub_loan_type:checked+label i, .loan_type_radio .sub_auto_loan_type:checked+label i, .credit_type li a.active { text-decoration: none; } /**multistep progress**/ .progressbar { display: flex; justify-content: center; list-style: none; counter-reset: container 0; } .progressbar li { /* display: flex; */ text-align: center; list-style: none; text-transform: uppercase; counter-increment: container 1; position: relative; /* margin-right: 133px; margin-top: 20px; */ width: 33.33%; /* float: left; */ letter-spacing: 1px; } /* .progressbar li.active-step::before { background-color: #f76622; border: none; color: #fff; } */ .progressbar li.active-step:before, .progressbar li.active-step:after { background: #f76622; color: white; } .progressbar li::before { /* content: counter(container); position: absolute; height: 40px; width: 40px; border-radius: 50%; border: 2px solid #f76622; color: #f76622; text-align: center; line-height: 40px; z-index: 10; background-color: #fff; font-weight: 700; */ content: counter(container); position: relative; counter-increment: step; width: 40px; height: 40px; line-height: 35px; display: block; font-size: 12px; color: #f76622; text-align: center; background: white; border: 2px solid #f76622; border-radius: 50%; margin: 0 auto 10px auto; font-size: 1.2em; z-index: 1; } .progressbar li::after { /* content: ''; position: absolute; height: 2px; width: 140px; background-color: #f76622; top: 12px; right: -10px; */ content: ''; width: 100%; height: 2px; background: #f76622; position: absolute; left: -50%; top: 18px; z-index: 0; } .progressbar li:first-child::after { content: none; } #selected_capital_range { background-color: #d6d7db; box-shadow: none; border-radius: 8px; height: 12px; } .outside_box_wrapper { display: flex; justify-content: center; margin-top: 15px; align-items: center; } .outside_box{ border-color: #1c3050; background: #1c3050; min-width: 1.2em; min-height: 1.2em; cursor: grab; padding: 4px 8px; text-wrap: nowrap; border-radius: 4px; font-size: 1.25em; line-height: 22px; font-weight: 700; } .ui-slider-horizontal .ui-slider-handle .slider_capital_box, .ui-slider-horizontal .ui-slider-handle .slider_duree_box { display: none; position: absolute; top: -38px; border-color: #1c3050; background: #1c3050; min-width: 1.2em; min-height: 1.2em; cursor: grab; padding: 2px 6px; text-wrap: nowrap; border-radius: 4px; left: -50px; } .ui-slider-horizontal .ui-slider-handle .slider_duree_box { left: -22px; } .ui-slider-horizontal .ui-slider-handle { display: inline-block; text-align: center; font-size: 1.25em; line-height: 22px; width: 26px; height: 26px; border-radius: 50%; background: #1c3050; border: 0; cursor: pointer; -webkit-box-shadow: none; box-shadow: 0px 0px 0px 4px rgba(28, 48, 80, 0.3); } #selected_months_range { background-color: #d6d7db; box-shadow: none; border-radius: 8px; height: 12px; margin: 0; } #selected_months_range .ui-slider-handle { display: inline-block; text-align: center; font-size: 1.25em; line-height: 23px; width: 26px; height: 26px; border-radius: 50%; background: #1c3050; border: 0; cursor: pointer; -webkit-box-shadow: none; box-shadow: 0px 0px 0px 4px rgba(28, 48, 80, 0.3); } #selected_months_range .ui-slider-handle .slider_months_box { position: absolute; top: -38px; border-color: #1c3050; background: #1c3050; min-width: 1.2em; min-height: 1.2em; cursor: grab; padding: 2px 6px; text-wrap: nowrap; border-radius: 4px; left: -50px; } /*.active-step { display: block !important; } */ .pivot-value { color: #f76622 !important; } #selected_capital_range { position: relative; overflow: visible; } .pivot-zone { border-radius: 0 8px 8px 0; z-index: 1; background-color: rgba(247, 102, 34, 0.15) !important; } .stimulator_result_btn.disabled { opacity: 0.6; cursor: not-allowed; background: #cccccc !important; border-color: #cccccc !important; } .credit-recap { background-color: #fff; padding: 20px 0; /* box-shadow: 0 2px 4px rgba(0,0,0,0.05); */ /* border: 1px solid #e0e0e0; */ } .infos-credits-top { background-color: #f8f9fa; padding: 20px 0; margin: 0 -15px; } .steps-holder { /* background-color: #f8f9fa; padding: 20px 0; margin: 0 -15px; */ /* box-shadow: 0 2px 4px rgba(0,0,0,0.05); */ /* border: 1px solid #e0e0e0; */ } .credit-recap-holder { padding: 3rem 0; width: 100%; } .credit-recap-container { max-width: 1200px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; /* padding: 0 30px; */ } .credit-info { display: flex; align-items: stretch; gap: 0; width: 100%; } .credit-item { display: flex; flex-direction: column; gap: 8px; min-width: 140px; border: 1px solid #e0e0e0; padding: 10px 15px; background-color: #fff; margin-left: -1px; flex: 1; } .credit-item:first-child { margin-left: 0; } .credit-label { font-size: 14px; color: #666; font-weight: normal; } .credit-value { font-size: 18px; font-weight: bold; color: var(--text-dark); } .credit-value.highlight { color: var(--orange-credit-direct); } .progress-steps { display: flex; justify-content: space-between; max-width: 1200px; margin: 20px auto; padding: 0 15px; } .step { display: flex; align-items: center; gap: 10px; } .step-number { width: 24px; height: 24px; border-radius: 50%; background-color: #fff; border: 2px solid #ddd; display: flex; align-items: center; justify-content: center; font-weight: bold; font-size: 14px; } .step.active .step-number { background-color: var(--orange-credit-direct); border-color: var(--orange-credit-direct); color: white; } .step-text { color: #999; font-size: 14px; } .step.active .step-text { color: var(--text-dark); font-weight: bold; } .credit-step-header { background-color: #001954; color: #fff; padding: 40px 20px; margin: 0 -20px; } .credit-step-header h2 { color: #fff; margin-bottom: 0; } .iziModal-header.inner-header { background: none; box-shadow: none; border-bottom: none; } .comment_fieldset { margin-top: 20px; } .stimulated-results.info_active .btn_holder { position: relative; right: 0; left: 0; width: 100%; } @media (max-width: 768px) { .credit-info { flex-wrap: wrap; gap: 15px; } .credit-item { flex: 1 1 calc(50% - 15px); } .progress-steps { flex-wrap: wrap; gap: 20px; } .step { flex: 1 1 calc(50% - 10px); } body .container { width: 100%; } } @media (max-width: 480px) { .credit-item { flex: 1 1 100%; } .step { flex: 1 1 100%; } } /**end progress bar**/ @media (max-width: 600px) { .show-on-mobile { display: block; } .hide-on-mobile { display: none !important; } .master-slider-parent { display: none; } } @media (max-width: 648px) { .form-body .nav-justified>li { width: 20%; display: inline-block; margin: 0; box-sizing: border-box; float: left; } .form-wizard ul li span.number { width: 48px; padding: 7px 4px; font-size: 12px; } .form-body>ul { display: flex; } .form-wizard ul li span.desc { font-size: 12px; font-weight: 900; word-wrap: break-word; } } /* Styles pour les colonnes de crédit */ /* .credit-cols { display: flex; flex-wrap: wrap; margin: 0 -15px; } */ .credit-cols .wpcf-borrower, .credit-cols .wpcf-coborrower { padding: 15px; transition: all 0.3s ease; } /* Style pour le mode deux colonnes */ .credit-cols .wpcf-borrower.col-md-6, .credit-cols .wpcf-coborrower.col-md-6 { width: 50%; border-right: 1px solid #dee2e6; } /* Ajustements responsives */ @media (max-width: 768px) { .credit-cols .wpcf-borrower.col-md-6, .credit-cols .wpcf-coborrower.col-md-6 { width: 100%; border-right: none; border-bottom: 1px solid #dee2e6; } .credit-cols .wpcf-borrower.col-md-6:last-child, .credit-cols .wpcf-coborrower.col-md-6:last-child { border-bottom: none; } } /* Animation pour l'apparition/disparition */ .wpcf-coborrower { opacity: 1; transition: opacity 0.3s ease; } .wpcf-coborrower.d-none { opacity: 0; display: none !important; } legend.sub-section { margin-top: 15px; } /* Styles pour le rappel de crédit */ .credit-reminder { position: fixed; bottom: 20px; left: 20px; max-width: 400px; z-index: 9999; box-shadow: 0 2px 10px rgba(0,0,0,0.1); border-radius: 8px; background-color: #fff; border: 1px solid #e0e0e0; transition: all 0.3s ease; } .credit-reminder:hover { box-shadow: 0 4px 15px rgba(0,0,0,0.15); transform: translateY(-2px); } .credit-reminder .button { background-color: #007bff; color: white; padding: 8px 15px; text-decoration: none; border-radius: 4px; display: inline-block; transition: background-color 0.3s ease; } .credit-reminder .button:hover { background-color: #0056b3; } .credit-reminder h4 { margin: 0 0 10px 0; color: #333; font-size: 1.1em; } .credit-reminder p { margin: 0 0 5px 0; color: #666; font-size: 0.95em; line-height: 1.4; } .credit-reminder .time-info { color: #999; font-size: 0.85em; margin-top: 8px; } .col-sim { position: relative; } .active_btn { background: #ff921d !important; border: none !important; } /* Credit Reminder Button Styles */ .credit-reminder-wrapper { position: fixed; bottom: 75px; left: 15px; z-index: 9999; } .credit-reminder-btn { background: #fff; border-radius: 50%; width: 45px; height: 45px; display: flex; align-items: center; justify-content: center; box-shadow: 0 2px 10px rgba(0,0,0,0.2); cursor: pointer; transition: all 0.3s ease; padding: 8px; position: relative; } .credit-reminder-btn:hover { transform: scale(1.1); box-shadow: 0 4px 15px rgba(0,0,0,0.3); } .credit-reminder-btn img { width: 100%; height: 100%; object-fit: contain; } .notification-badge { position: absolute; top: -5px; right: -5px; background: #ff6b00; color: white; border-radius: 50%; width: 22px; height: 22px; display: flex; align-items: center; justify-content: center; font-size: 12px; font-weight: bold; border: 2px solid #fff; box-shadow: 0 2px 5px rgba(0,0,0,0.2); } .stimulated-results .btn_holder { position: absolute; bottom: 15px; left: 15px; right: 15px; width: calc(100% - 30px); } /**modal override**/ .modal-backdrop.fade.show { opacity: 0.5 !important; /* ou 1 selon votre préférence */ z-index: 1050 !important; /* valeur Bootstrap standard, à ajuster si besoin */ } .modal.fade.show { opacity: 1 !important; } section.co-emprunteur { padding: 12px; border-radius: 6px; } .credit-incentive { text-align: center; } .fusion-tb-header .main-header-container { z-index: 999 !important; } .iziModal-overlay { z-index: 1000 !important; } #creditReminderModal { z-index: 1001 !important; } @media (max-width: 768px) { .credit-reminder { left: 10px; right: 10px; bottom: 10px; max-width: none; } .credit-reminder > div { flex-direction: column; text-align: center; } .credit-reminder .button { margin-top: 10px; width: 100%; text-align: center; } .credit-reminder-wrapper { bottom: 75px; left: 15px; } .credit-reminder-btn { width: 35px; height: 35px; padding: 6px; } .notification-badge { width: 18px; height: 18px; font-size: 10px; } } /* Spinner de chargement */ .cd-loading-spinner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1000; width: 40px; height: 40px; border: 4px solid #f3f3f3; border-top: 4px solid #ff6b00; border-radius: 50%; animation: cd-spin 1s linear infinite; } @keyframes cd-spin { 0% { transform: translate(-50%, -50%) rotate(0deg); } 100% { transform: translate(-50%, -50%) rotate(360deg); } } /* Animations de transition */ @keyframes slideInUp { 0% { transform: translateY(100%); } 100% { transform: translateY(0); } } @keyframes slideOutDown { 0% { transform: translateY(0); } 100% { transform: translateY(100%); } } .animate-slide-in-up { animation: slideInUp 0.5s ease-out forwards; } .animate-slide-out-down { animation: slideOutDown 0.5s ease-in forwards; } .fade-out { animation: fadeOut 0.3s ease-out forwards; } .fade-in { animation: fadeIn 0.3s ease-in forwards; } @keyframes fadeOut { from { opacity: 1; } to { opacity: 0; } } @keyframes fadeIn { from { opacity: 0; } to { opacity: 1; } } /* Styles pour les boutons de navigation entre étapes */ section.bottom-form { width: 100%; } .form-buttons { display: flex; justify-content: space-between; align-items: center; gap: 20px; } .form-buttons .btn { flex: 1; max-width: 200px; } .form-buttons .btn-secondary { background-color: #6c757d; border-color: #6c757d; color: #fff; } .form-buttons .btn-secondary:hover { background-color: #5a6268; border-color: #545b62; color: #fff; } button.wpcf-btn-retirer { padding: 8px 6px; border-radius: 6px; border: 1px solid #c0392b; background-color: #fff; color: #000; font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; transition: all 0.3s ease; } button.wpcf-btn-retirer:hover { background-color: #c0392b; color: #fff; } @media (max-width: 768px) { .form-buttons { flex-direction: column; gap: 15px; } .form-buttons .btn { max-width: 100%; width: 100%; } } /* ======================================== SYSTÈME DE SAUVEGARDE AUTOMATIQUE LOCALSTORAGE ======================================== */ /* Indicateur de sauvegarde */ .auto-save-indicator { position: fixed; top: 20px; right: 20px; background: #28a745; color: white; padding: 10px 15px; border-radius: 5px; font-size: 14px; z-index: 9999; opacity: 0; transform: translateY(-20px); transition: all 0.3s ease; box-shadow: 0 2px 10px rgba(0,0,0,0.1); } .auto-save-indicator.show { opacity: 1; transform: translateY(0); } .auto-save-indicator.saving { background: #ffc107; color: #212529; } .auto-save-indicator.error { background: #dc3545; } /* Animation de pulsation pour indiquer la sauvegarde */ .auto-save-indicator.saving::before { content: ''; display: inline-block; width: 12px; height: 12px; border: 2px solid currentColor; border-radius: 50%; border-top-color: transparent; animation: spin 1s linear infinite; margin-right: 8px; } @keyframes spin { to { transform: rotate(360deg); } } /* Style pour les champs modifiés */ .field-modified { border-color: #28a745 !important; box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25) !important; transition: all 0.3s ease; } /* Style pour les champs restaurés */ .field-restored { border-color: #17a2b8 !important; box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.25) !important; transition: all 0.3s ease; } /* Message d'information localStorage */ .localstorage-info { background: #e7f3ff; border: 1px solid #b3d9ff; border-radius: 5px; padding: 10px 15px; margin-bottom: 20px; font-size: 14px; color: #0056b3; } .localstorage-info .icon { margin-right: 8px; font-weight: bold; } /* Bouton pour effacer les données sauvegardées */ .clear-storage-btn { background: #6c757d; color: white; border: none; padding: 5px 10px; border-radius: 3px; font-size: 12px; cursor: pointer; margin-left: 10px; } .clear-storage-btn:hover { background: #5a6268; } .simu_steps { display: grid; gap: 20px; grid-template-columns: repeat(3, 1fr); grid-template-rows: 1fr; } .first-col, .second-col, .third-col { padding: 15px; } @media screen and (max-width: 992px) { .simu_steps { grid-template-columns: 1fr; grid-template-rows: 1fr; } .stimulated-results .btn_holder { position: relative; } } /* Responsive pour la sauvegarde automatique */ @media (max-width: 768px) { .auto-save-indicator { top: 10px; right: 10px; left: 10px; text-align: center; } }