@charset "UTF-8";:root{--primary: #0B3B3B;--primary-light: #0B3B3B;--primary-dark: #0B3B3B;--secondary-app: #45dba6;--secondary-light-app: rgba(69, 219, 166, .29);--secondary: #718096;--secondary-light: #a0aec0;--secondary-dark: #4a5568;--accent: #e53e3e;--accent-light: #f56565;--accent-dark: #c53030;--success: #38a169;--warning: #d69e2e;--error: #e53e3e;--gray-100: #f7fafc;--gray-200: #edf2f7;--gray-300: #e2e8f0;--gray-400: #cbd5e0;--gray-500: #a0aec0;--gray-600: #718096;--gray-700: #4a5568;--gray-800: #2d3748;--gray-900: #1a202c;--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--font-family: "Segoe UI", Segoe, sans-serif;--border-radius: .25rem;--box-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--box-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--transition: all .2s ease-in-out}*{margin:0;padding:0;box-sizing:border-box}html{height:100%;font-size:14px}body{min-height:100%;margin:0;font-family:var(--font-family);font-size:14px;font-weight:500;line-height:1.5;color:var(--gray-800);background-color:var(--gray-100);overflow-x:hidden}h1,h2,h3,h4,h5,h6{margin-bottom:var(--space-3);line-height:1.2;font-weight:600;color:var(--gray-900)}h1{font-size:2rem}h2{font-size:1.75rem}h3{font-size:1.5rem}h4{font-size:1.25rem}h5{font-size:1.125rem}h6{font-size:1rem}p{margin-bottom:var(--space-3)}button,.btn{display:inline-flex;align-items:center;justify-content:center;padding:var(--space-2) var(--space-3);font-size:.95rem;font-weight:500;border-radius:var(--border-radius);border:none;cursor:pointer;transition:var(--transition)}.btn-primary{background-color:var(--primary);color:#fff}.btn-primary:hover{background-color:var(--primary-dark)}.btn-secondary{background-color:var(--secondary);color:#fff}.btn-secondary:hover{background-color:var(--secondary-dark)}.btn-outline{background-color:transparent;border:1px solid var(--gray-300);color:var(--gray-700)}.btn-outline:hover{background-color:var(--gray-100)}.card{background-color:#fff;border-radius:var(--border-radius);box-shadow:var(--box-shadow);padding:var(--space-4)}.form-group{margin-bottom:var(--space-3)}.form-label{display:block;margin-bottom:var(--space-1);font-weight:500}.form-control{width:100%;padding:var(--space-2);font-size:.95rem;font-family:inherit;border:1px solid var(--gray-300);border-radius:var(--border-radius);transition:var(--transition)}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #2c52821a}table{width:100%;border-collapse:collapse}th,td{padding:var(--space-2) var(--space-3);text-align:left;border-bottom:1px solid var(--gray-300)}th{font-weight:600;background-color:var(--gray-100)}tr:hover{background-color:var(--gray-100)}.text-center{text-align:center}.text-right{text-align:right}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.ml-1{margin-left:var(--space-1)}.ml-2{margin-left:var(--space-2)}.mr-1{margin-right:var(--space-1)}.mr-2{margin-right:var(--space-2)}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.d-flex{display:flex}.flex-column{flex-direction:column}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.align-center{align-items:center}.flex-wrap{flex-wrap:wrap}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-error{color:var(--error)}.text-primary{color:var(--primary)}.text-secondary{color:var(--secondary)}.fade-in{animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-in-right{animation:slideInRight .3s ease-in-out}@keyframes slideInRight{0%{transform:translate(20px);opacity:0}to{transform:translate(0);opacity:1}}@media(max-width:768px){.hide-mobile{display:none!important}}@media(min-width:769px){.hide-desktop{display:none!important}}.menu{background:#fff;box-shadow:0 2px 8px #0000000f;position:sticky;top:0;z-index:11}.menu ul{list-style:none;margin:0;padding:0 24px;display:flex;align-items:center}.menu .menu-steps{flex:1;display:flex;justify-content:center}.menu .menu-steps ul{display:flex}.menu .menu-steps li{margin:0 24px}.menu a{display:block;padding:18px 0;font-size:1.1rem;color:#1a202c;text-decoration:none;position:relative;cursor:pointer}.menu a.active{color:var(--secondary-app)}.menu a.active:after{width:100%}.menu a:after{content:"";position:absolute;left:0;bottom:10px;height:2px;width:0;background:var(--secondary-app);transition:width .3s}.menu a:hover:after{width:100%}.menu .menu-actions{display:flex;gap:12px;margin-left:auto}.menu .icon-button{background:transparent;border:none;cursor:pointer;padding:8px;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#1a202c}.menu .icon-button:hover{background:#f3f3f3;color:var(--secondary-app)}.menu .icon-button.primary{color:var(--secondary-app)}.menu .icon-button .icon{display:block}.menu .menu-back{margin-right:24px}.menu .menu-back .icon-button{padding:8px;border-radius:6px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;cursor:pointer;color:#1a202c}.menu .menu-back .icon-button:hover{background:#f3f3f3;color:var(--secondary-app)}.note{background:var(--secondary-light-app);padding:10px;border-left:4px solid var(--secondary-app)}select,input{background-color:#d3d3d37d}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000;animation:fadeIn .2s ease-in-out}.modal-content{background:#fff;border-radius:8px;box-shadow:0 4px 24px #00000026;max-width:500px;width:90%;animation:slideIn .3s ease-out}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a202c}.modal-close{background:none;border:none;padding:.25rem;cursor:pointer;color:#6b7280;transition:color .2s;display:flex;align-items:center;justify-content:center}.modal-close:hover{color:#1a202c}.modal-close svg{width:20px;height:20px}.modal-body{padding:1.5rem}.modal-body p{margin:0;color:#4b5563;line-height:1.5}.modal-footer{display:flex;gap:.75rem;padding:1rem 1.5rem;border-top:1px solid #e5e7eb;justify-content:flex-end}.modal-footer .btn{margin:0;font-size:.95rem}@keyframes slideIn{0%{transform:translateY(-20px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:640px){.modal-content{width:95%;margin:1rem}.modal-footer{flex-direction:column}.modal-footer .btn{width:100%}}.required{color:#e53e3e;font-weight:700;margin-left:2px}.form-control.invalid,.form-control.ng-invalid.ng-touched,.form-control.ng-invalid.ng-dirty{border-color:#e53e3e!important;background-color:#fff5f5}.form-control.invalid:focus,.form-control.ng-invalid.ng-touched:focus,.form-control.ng-invalid.ng-dirty:focus{border-color:#e53e3e!important;box-shadow:0 0 0 3px #e53e3e1a}.text-error-msg{color:#e53e3e;background-color:#e53e3e17;padding:.375rem .5rem;border-radius:4px;margin-top:.25rem;font-size:.875rem;display:flex;align-items:center;gap:.25rem}.text-error-msg small{margin:0;line-height:1.4}.text-error-msg:before{content:"\26a0";font-size:1rem}.global-error{background-color:#fff5f5;border:1px solid #fc8181;border-radius:6px;padding:1rem;margin:1rem 0;display:flex;align-items:center;gap:.75rem;color:#c53030;animation:slideDown .3s ease-out}.global-error svg{flex-shrink:0;width:20px;height:20px}.global-error span{font-weight:500;line-height:1.5}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}.form-control.invalid:focus,.form-control.ng-invalid.ng-touched:focus{animation:shake .5s;outline:2px solid #e53e3e;outline-offset:2px}select.form-control.invalid,select.form-control.ng-invalid.ng-touched,select.form-control.ng-invalid.ng-dirty{border-color:#e53e3e!important;background-color:#fff5f5}@media(max-width:768px){.global-error{flex-direction:column;text-align:center}.global-error svg{margin:0 auto}}.alert-indicatif{display:flex;align-items:flex-start;gap:.75rem;padding:.5rem 1rem;margin-bottom:.75rem;border-left:4px solid #3b82f6;background:#eff6ff;color:#1e3a8a;border-radius:4px;font-size:.85rem}.alert-indicatif .alert-icon{font-size:1.1rem;line-height:1}.alert-indicatif .alert-content strong{display:inline;margin-right:.5rem;font-size:.85rem}.alert-indicatif .alert-content p{display:inline;margin:0;line-height:1.3;font-size:.8rem}.recap-grid{display:grid;align-items:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.recap-grid.hyp-image-grid{grid-template-columns:1fr 2fr;gap:1.5rem;align-items:start}.recap-grid.hyp-image-grid>div:last-child{display:flex;max-height:300px}.recap-table{width:100%;border-collapse:collapse}.recap-table th,.recap-table td{border:1px solid #e5e7eb;padding:.5rem .6rem}.recap-table thead th{font-weight:600;text-align:left;background:#fafafa}.recap-table .total-row td{font-weight:700;background:#f9fafb}.recap-table .poste{width:20%}.recap-table .sol{width:24%}.recap-table .qte{width:8%;text-align:right}.recap-table .tot,.recap-table .delta{width:12%;text-align:right}.hyp-list{margin:0;padding-left:1.2rem}.hyp-list li{margin:.25rem 0}.hyp-list .muted{color:#6b7280;font-style:italic;list-style:none;padding-left:0}
