:root{--primary-color: #48C9B0;--secondary-color: #5DADE2;--success-color: #52BE80;--danger-color: #EC7063;--warning-color: #F39C12;--info-color: #3498DB;--dark-color: #34495E;--perf-color: #8E44AD;--invest-color: #F1C40F;--dashboard-color: #FEFDEB;--dashboard-border: #F9E79F;--immobilier-color: #C0392B;--input-bg-immobilier: #FAEAEB;--background-color: #ECF0F1;--text-color: #2C3E50;--card-background: #FFFFFF;--border-color: #BDC3C7;--result-row-odd: #F8F9FA;--result-row-even: #FFFFFF;--input-bg-capital: #E8F8F5;--input-bg-objectif: #EBF5FB;--input-bg-retrait: #FEF9E7;--input-bg-performance: #F4ECF7;--input-bg-plan: #E8F6F3;--input-bg-remboursement: #FADBD8;--budget-revenu-bg: #EBF5FB;--budget-epargne-bg: #E8F8F5;--budget-depense-bg: #FEF9E7;--budget-actifs-bg: #FEFDEB;--input-group-cluster-bg: rgba(93, 173, 226, .05);--watchlist-color: #7f8c8d;--watchlist-hover-color: #6c7a7b}@keyframes animateGlow{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.animated-border-card{position:relative;background:var(--card-background)!important;z-index:1;border-radius:12px}.animated-border-card:before{content:"";position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;background:linear-gradient(60deg,#f79533,#f37055,#ef4e7b,#a166ab,#5073b8,#1098ad,#07b39b,#6fba82);background-size:300% 300%;border-radius:14px;z-index:-1;animation:animateGlow 4s ease infinite}.animated-border-card:after{content:"";position:absolute;top:-3px;left:-3px;right:-3px;bottom:-3px;background:linear-gradient(60deg,#f79533,#f37055,#ef4e7b,#a166ab,#5073b8,#1098ad,#07b39b,#6fba82);background-size:300% 300%;border-radius:14px;z-index:-2;filter:blur(8px);opacity:.6;animation:animateGlow 4s ease infinite}[data-theme=dark]{--primary-color: #48C9B0;--secondary-color: #5DADE2;--success-color: #52BE80;--danger-color: #EC7063;--warning-color: #F39C12;--info-color: #5DADE2;--dark-color: #ECF0F1;--perf-color: #9B59B6;--invest-color: #F39C12;--dashboard-color: #3D3B30;--dashboard-border: #F9E79F;--immobilier-color: #C0392B;--input-bg-immobilier: #423030;--background-color: #1A1A1A;--text-color: #ECF0F1;--card-background: #2C2C2C;--border-color: #3A3A3A;--result-row-odd: #2C2C2C;--result-row-even: #333333;--input-bg-capital: #1F3A33;--input-bg-objectif: #2C3A47;--input-bg-retrait: #4A3B29;--fieldset-bg: rgba(255, 255, 255, .05);--gauge-bg: rgba(255, 255, 255, .35);--input-bg-performance: #3B2A42;--input-bg-plan: #2C473A;--input-bg-remboursement: #4A3035;--budget-revenu-bg: #2C3A47;--budget-epargne-bg: #2C473A;--budget-depense-bg: #4A3B29;--budget-actifs-bg: #3D3B30;--input-group-cluster-bg: rgba(93, 173, 226, .1);--watchlist-color: #95a5a6;--watchlist-hover-color: #7f8c8d}.dash-card-blue{background-color:var(--budget-revenu-bg)}.dash-card-red{background-color:var(--input-bg-remboursement)}.dash-card-yellow{background-color:var(--budget-depense-bg)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--background-color);border-radius:5px}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:5px;border:2px solid var(--background-color);transition:background .3s ease}::-webkit-scrollbar-thumb:hover{background:var(--secondary-color)}html,body,#root{scrollbar-width:auto;scrollbar-color:var(--border-color) var(--background-color)}*{scrollbar-width:auto;-ms-overflow-style:auto}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--background-color);color:var(--text-color);line-height:1.6;padding:0;margin:0;width:100%;max-width:100vw;transition:background-color .3s,color .3s;overflow-x:hidden}h1,h2,h3,h4{font-weight:600;margin-bottom:15px}h1{font-family:Montserrat,Segoe UI,sans-serif;font-weight:600;font-size:2.8rem;color:var(--text-color)}h2{font-size:1.6rem;color:var(--secondary-color)}.header{display:grid;grid-template-columns:auto 1fr;gap:10px 30px;align-items:center;padding:20px 20px 15px;margin-bottom:20px;border-bottom:1px solid var(--border-color);background-color:var(--card-background)}.header-left{grid-column:1 / 2;grid-row:1 / 2}.header-right{grid-column:2 / 3;grid-row:1 / 2;display:flex;justify-content:flex-end;align-items:center;gap:20px;flex-wrap:wrap}.header-center{grid-column:1 / -1;grid-row:2 / 3;display:flex;justify-content:flex-end;margin-top:5px}.header-controls{display:flex;gap:15px;flex-wrap:wrap;align-items:center}.control-group{display:flex;align-items:center;gap:8px}button,.icon-btn{padding:10px 20px;border:none;border-radius:6px;font-size:.95rem;cursor:pointer;transition:all .3s ease;font-weight:500;white-space:nowrap}.icon-btn{width:40px;height:40px;padding:0;display:inline-flex;justify-content:center;align-items:center;font-size:1.2rem;background-color:var(--card-background);border:1px solid var(--border-color);color:var(--text-color)}.icon-btn svg{width:20px;height:20px;display:block}.icon-btn:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000001a}.btn-success{background-color:var(--success-color)!important;color:#fff!important;border:1px solid var(--success-color)}.btn-info{background-color:var(--info-color)!important;color:#fff!important;border:1px solid var(--info-color)}.btn-danger{background-color:var(--danger-color)!important;color:#fff!important;border:1px solid var(--danger-color)}.btn-warning{background-color:var(--warning-color)!important;color:#fff!important}.btn-perf{background-color:var(--perf-color);color:#fff}.btn-secondary{background-color:var(--watchlist-color);color:#fff}.btn-calculate-plan{background:linear-gradient(135deg,var(--secondary-color),#2980B9)!important;color:#fff!important;font-size:1.1rem!important;padding:12px 30px!important;box-shadow:0 4px 15px #3498db66}.mode-buttons{display:flex;align-items:center;gap:0}.mode-buttons button{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;background-color:transparent;color:var(--text-color);font-size:.95rem;font-weight:500;border-radius:6px;transition:all .2s ease;white-space:nowrap}.mode-buttons button svg{width:20px;height:20px}.mode-buttons button:hover:not(.active){background-color:#0000000d;transform:translateY(-2px)}.nav-separator{width:1px;height:20px;background-color:var(--border-color);margin:0 5px;opacity:.5}#mode-dashboard-btn.active{background-color:var(--success-color);color:#fff!important;font-weight:700}#mode-budget-btn.active{background-color:#5dade2;color:#fff!important;font-weight:700}#mode-budget-btn:hover:not(.active){color:#5dade2!important}#mode-projections-btn.active{background-color:var(--primary-color);color:#fff!important;font-weight:700}#mode-projections-btn:hover:not(.active){color:var(--primary-color)!important}#mode-plan-btn.active{background-color:#2ecc71;color:#fff!important;font-weight:700}#mode-plan-btn:hover:not(.active){color:#2ecc71!important}#mode-remb-btn.active{background-color:#e74c3c;color:#fff!important;font-weight:700}#mode-remb-btn:hover:not(.active){color:#e74c3c!important}#mode-investissement-btn.active{background-color:var(--invest-color);color:#333!important;font-weight:700}#mode-investissement-btn:hover:not(.active){color:var(--invest-color)!important}#mode-analyse-btn.active{background-color:#2874a6;color:#fff!important;font-weight:700}#mode-analyse-btn:hover:not(.active){color:#2874a6!important}#mode-immobilier-btn.active{background-color:var(--immobilier-color);color:#fff!important;font-weight:700}#mode-immobilier-btn:hover:not(.active){color:var(--immobilier-color)!important}#mode-perf-btn.active{background-color:var(--perf-color);color:#fff!important;font-weight:700}#mode-perf-btn:hover:not(.active){color:var(--perf-color)!important}.module-content{background-color:var(--card-background);padding:30px;border-radius:12px;box-shadow:0 8px 25px #00000012;border-top:5px solid var(--primary-color);position:relative}.module-content.plan-active{border-top-color:#2ecc71}.dashboard-container{display:flex;flex-direction:column;gap:20px}.dashboard-main-card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:25px;text-align:center;display:flex;flex-direction:column;align-items:center}.dashboard-card-value{font-size:3.5rem;font-weight:700;line-height:1.1}.card-value.positive{color:var(--success-color)}.card-value.negative{color:var(--danger-color)}.card-value.neutral{color:var(--text-color)}.dashboard-main-breakdown{display:flex;justify-content:center;gap:30px;width:100%;margin-top:10px;padding-top:15px;border-top:1px dashed var(--dashboard-border)}.dashboard-sub-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;width:100%}.dashboard-card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;flex-direction:column;justify-content:space-between;box-shadow:0 4px 10px #00000008;transition:transform .3s ease}.dashboard-card:hover{transform:translateY(-5px)}.dashboard-card-links{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--border-color);padding-top:12px;margin-top:auto}.dashboard-graph-container{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dashboard-graph-card{background-color:var(--card-background);border:1px solid var(--border-color);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:15px;box-shadow:0 4px 10px #00000008}.thermometer{width:100%;display:flex;flex-direction:column;gap:12px}.thermometer-track{width:100%;height:30px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:15px;overflow:hidden}.thermometer-progress{height:100%;background-color:var(--success-color);border-radius:15px 0 0 15px;transition:width .5s ease-out;display:flex;align-items:center;justify-content:center}.thermometer-label{font-size:.9rem;font-weight:700;color:#fff;text-shadow:1px 1px 2px rgba(0,0,0,.4)}.thermometer-legend{display:flex;justify-content:space-between;padding:0 5px;font-size:.9rem}.legend-item{display:flex;align-items:center;gap:6px}.legend-dot{width:12px;height:12px;border-radius:50%}.mini-thermometer-container{margin-top:20px;padding-top:15px;border-top:1px dashed var(--border-color);display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:15px}.mini-thermometer-item{display:flex;flex-direction:column;gap:5px}.mini-thermometer-labels{display:flex;justify-content:space-between;align-items:center;gap:10px}.mini-label{font-size:.9rem;font-weight:600;color:var(--text-color);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mini-value{font-size:.85rem;font-weight:500;color:var(--secondary-color);white-space:nowrap}.mini-thermometer-track{width:100%;height:12px;background-color:var(--background-color);border:1px solid var(--border-color);border-radius:6px;overflow:hidden}.mini-thermometer-progress{height:100%;background-color:var(--success-color);border-radius:6px 0 0 6px;transition:width .5s ease-out}.budget-card{border-radius:8px;padding:20px;margin-bottom:20px;box-shadow:0 2px 5px #0000000d;border:1px solid rgba(0,0,0,.05)}.bg-revenus{background-color:#f0f8ff;border-top:4px solid #3498DB}.bg-depenses{background-color:#fef9e7;border-top:4px solid #F39C12}.bg-epargne{background-color:#e8f8f5;border-top:4px solid var(--primary-color)}.bg-actifs{background-color:#fdfefe;border-top:4px solid #2C3E50}.budget-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.budget-card-header h4{margin:0;font-size:1.1rem;font-weight:700;color:#34495e}.input-white{background-color:#fff!important;border:1px solid #D5DBDB;border-radius:6px;padding:8px 10px;width:100%;transition:border-color .3s,box-shadow .3s;font-size:.95rem}.input-white:focus{border-color:var(--info-color);box-shadow:0 0 0 3px #3498db26;outline:none}.input-pale-blue{background-color:#ebf5fb!important;border:1px solid #AED6F1;border-radius:6px;padding:8px 10px;width:100%;transition:border-color .3s,box-shadow .3s;font-size:.95rem;color:#2c3e50;cursor:pointer}.input-pale-blue:focus{border-color:var(--info-color);box-shadow:0 0 0 3px #3498db26;outline:none}.budget-header-row{display:grid;grid-template-columns:32px 32px 2fr 150px 1fr 1fr 1fr;gap:10px;padding-bottom:8px;margin-bottom:10px;border-bottom:2px solid var(--primary-color);font-size:.85rem;font-weight:700;color:#16a085;align-items:center}.budget-header-row.actifs-header{grid-template-columns:32px 32px 2fr 1fr}.budget-item{display:grid;grid-template-columns:32px 32px 2fr 150px 1fr 1fr 1fr;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid rgba(0,0,0,.05)}.budget-item.actif-item{grid-template-columns:32px 32px 2fr 1fr}.budget-header-row.income-header{grid-template-columns:32px 32px 2fr 150px 1fr 1fr 1fr}.budget-item.income-item{grid-template-columns:32px 32px 2fr 115px 1fr 1fr 1fr}@media (max-width: 900px){.budget-item{display:flex;flex-direction:column;align-items:stretch;gap:10px;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000000d;margin-bottom:10px}.budget-item .drag-handle{align-self:flex-start}.budget-trash-col{position:absolute;top:0;right:10px}.budget-item{position:relative}}.budget-item:last-child{border-bottom:none}.btn-add-line{background-color:#ebf5fb;color:#3498db;border:1px solid #AED6F1;padding:8px 20px;border-radius:20px;font-weight:600;font-size:.9rem;cursor:pointer;display:inline-flex;align-items:center;gap:5px;transition:all .2s}.btn-add-line:hover{background-color:#3498db;color:#fff;border-color:#3498db}.budget-card-footer{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding-top:15px;border-top:1px dashed #BDC3C7}.icon-clean{background:transparent!important;border:none!important;padding:0!important;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:transform .2s}.icon-clean:hover{transform:scale(1.2)}.icon-red{color:#e74c3c;opacity:.7}.icon-red:hover{opacity:1}.icon-blue{color:#3498db}.budget-item input[type=date]{font-family:inherit;padding:8px 4px;border:1px solid #D5DBDB;border-radius:4px;background-color:#fff;width:100%;text-align:center}@keyframes pulse-red{0%{transform:scale(1);opacity:1}50%{transform:scale(1.02);opacity:.9}to{transform:scale(1);opacity:1}}.budget-warning-pulse{color:#000;font-weight:800;font-size:1.1rem;margin-bottom:12px;text-align:center;animation:pulse-red 2s infinite;border:2px solid var(--danger-color);padding:12px;border-radius:6px;background-color:#e74c3c1a;box-shadow:0 4px 12px #e74c3c4d;z-index:10;width:100%}.comparison-table-header th{background-color:var(--card-background)!important;color:var(--text-color)!important;border-bottom:2px solid var(--secondary-color)!important;font-size:1rem;padding:12px;font-weight:600!important}.plan-winner{color:var(--info-color)!important;font-weight:800;font-size:1.1rem}.plan-loser{color:var(--danger-color)!important;font-weight:600}.plan-neutral{color:var(--text-color)}#plan-debts-table th,#plan-debts-table td{text-align:center!important;vertical-align:middle}#plan-debts-table th:first-child,#plan-debts-table td:first-child{text-align:left!important}#plan-debts-table input{width:100%;padding:6px;border:1px solid var(--border-color);border-radius:4px}.date-input-group-row{display:flex;align-items:flex-end;gap:8px;width:100%}.date-input-wrapper{flex-grow:1}.today-btn-wrapper{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:1px;min-width:50px}.today-label{font-size:.6rem;color:var(--secondary-color);font-weight:700;text-transform:uppercase;margin-bottom:3px;line-height:1;white-space:nowrap}.today-btn-wrapper .icon-btn{width:44px!important;height:40px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:4px!important;border:1px solid var(--border-color)!important;background-color:var(--card-background)!important}.today-btn-wrapper .icon-btn svg{width:24px!important;height:24px!important;display:block!important;color:var(--text-color)!important}.today-btn-wrapper .icon-btn:hover{background-color:var(--primary-color)!important;color:#fff!important}.today-btn-wrapper .icon-btn:hover svg{color:#fff!important}.plan-switch-container{display:flex;align-items:center;gap:15px;background:var(--card-background);padding:5px 20px;border-radius:50px;border:1px solid var(--border-color);width:fit-content;margin:0 auto;box-shadow:0 2px 5px #0000000d}.toggle-switch{position:relative;display:inline-block;width:50px;height:26px;flex-shrink:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#ccc;transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%;box-shadow:0 1px 3px #0000004d}input:checked+.toggle-slider{background-color:var(--info-color)}input:checked+.toggle-slider:before{transform:translate(24px)}.plan-switch-label{font-size:.95rem;color:var(--secondary-color);font-weight:500;transition:all .3s;cursor:pointer}.plan-switch-label.active{color:var(--text-color);font-weight:800;transform:scale(1.05)}.timeline-scroll-container{overflow-x:auto;padding-bottom:15px;margin-top:40px;background-color:var(--card-background);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 2px 8px #00000008}.timeline-scroll-container::-webkit-scrollbar{display:block!important;height:8px!important;width:auto!important;background:#f1f1f1!important}.timeline-scroll-container::-webkit-scrollbar-thumb{background:#888!important;border-radius:4px!important}.timeline-scroll-container::-webkit-scrollbar-thumb:hover{background:#555!important}.timeline-years-row{display:flex;background-color:#5dade21a;border-bottom:1px solid var(--border-color)}.timeline-year-block{text-align:center;font-weight:700;font-size:.85rem;color:var(--secondary-color);padding:4px 0;border-right:1px solid var(--border-color)}.timeline-months-row{display:flex}.timeline-month-box{width:35px;min-width:35px;height:35px;display:flex;align-items:center;justify-content:center;border-right:1px solid #eee;font-size:.75rem;color:#aaa;cursor:default;position:relative}.timeline-month-box.payoff{background-color:var(--success-color);color:#fff;font-weight:800;font-size:.9rem}.timeline-year-block:first-child{border-top-left-radius:8px}.timeline-month-box:first-child{border-bottom-left-radius:8px}.plan-explanation-box{background-color:var(--background-color);border:1px solid var(--border-color);border-left:4px solid var(--info-color);padding:15px;margin:10px 0 20px;border-radius:6px;font-size:.95rem;line-height:1.6}.plan-explanation-box strong{color:var(--info-color);font-weight:700}fieldset{border:2px solid var(--border-color);border-radius:8px;padding:20px;margin-bottom:20px;background-color:var(--fieldset-bg, rgba(255, 255, 255, .5))}legend{font-weight:600;color:var(--secondary-color);padding:0 10px;font-size:1.1rem}.fieldset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;align-items:end}.input-group{display:flex;flex-direction:column;gap:5px}.input-group label{font-weight:600;color:var(--text-color);font-size:1.1rem;margin-bottom:5px}.input-group input,.input-group select{padding:12px;border-radius:6px;border:1px solid var(--border-color);font-size:1rem;width:100%}.module-header-with-reset{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.module-header-with-reset h2{margin:0}.table-container{overflow-x:auto;margin-top:25px;max-height:400px}table{width:100%;border-collapse:collapse}th,td{padding:12px;text-align:left;border-bottom:1px solid var(--border-color)}th{position:sticky;top:0;background-color:var(--card-background);z-index:10}.results-with-chart{display:flex;gap:30px;margin-top:30px;flex-wrap:wrap}.chart-container{background-color:var(--card-background);padding:15px;border-radius:8px;border:1px solid var(--border-color);height:350px;flex:1;position:relative;min-width:0;overflow:hidden}.budget-overview{margin-top:25px;padding-top:25px;border-top:2px solid var(--primary-color);display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:20px}.overview-box{background-color:var(--background-color);padding:15px;border-radius:8px;text-align:center;border:1px solid var(--border-color)}.overview-box .value{font-size:1.5rem;font-weight:700;margin-top:5px}.fade-in{animation:fadeIn .5s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tooltip-fade-in{animation:tooltipFadeIn .15s ease-out}@keyframes tooltipFadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media print{body,#root,.App{background-color:#fff!important;color:#000!important;margin:0!important;padding:0!important}html,body,#root,.container,.main-content,.module-wrapper{height:auto!important;min-height:0!important;width:100%!important;overflow:visible!important;display:block!important;position:static!important}.module-content,.dashboard-container,.budget-container,.table-container,.chart-container{display:block!important;overflow:visible!important;height:auto!important;max-height:none!important;page-break-inside:auto}table,tr,td,th,.budget-card,.dashboard-card{page-break-inside:avoid}.no-print,.header-controls,.header-center,.mode-buttons,button,.icon-btn,.add-item-btn-small{display:none!important}.dashboard-chart-wrapper{width:100%}.dashboard-chart-wrapper canvas{max-width:100%}.dashboard-main-breakdown div{display:flex;align-items:center;gap:5px;font-size:1.1rem}}@media (max-width: 900px){.budget-header-row{display:none}.budget-item{grid-template-columns:1fr 1fr;gap:5px;display:flex;flex-direction:column;padding:15px;background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000000d;margin-bottom:10px}.budget-item input,.budget-item select{width:100%}}.switch-container{display:flex;align-items:center;gap:10px;background:var(--card-background);padding:5px 15px;border-radius:50px;border:1px solid var(--border-color);width:fit-content;box-shadow:0 2px 5px #0000000d}.toggle-switch{position:relative;display:inline-block;width:46px;height:24px;flex-shrink:0}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:#bdc3c7;transition:.4s;border-radius:34px}.toggle-slider:before{position:absolute;content:"";height:18px;width:18px;left:3px;bottom:3px;background-color:#fff;transition:.4s;border-radius:50%;box-shadow:0 1px 3px #0000004d}input:checked+.toggle-slider{background-color:var(--warning-color)}input:checked+.toggle-slider:before{transform:translate(22px)}.switch-label{font-size:.9rem;font-weight:600;color:var(--text-color);-webkit-user-select:none;user-select:none;cursor:pointer}@keyframes flash-pulse{0%{transform:scale(1);box-shadow:0 0 #3498dbb3}70%{transform:scale(1.05);box-shadow:0 0 0 10px #3498db00}to{transform:scale(1);box-shadow:0 0 #3498db00}}.btn-view-details{margin-top:15px;font-size:1rem;color:var(--text-color);text-decoration:none;font-weight:700;border:2px solid var(--info-color);padding:8px 16px;border-radius:8px;animation:flash-pulse 2s infinite;text-align:center;background-color:#3498db1a;transition:all .3s ease;width:fit-content;align-self:center;display:block}.btn-view-details:hover{background-color:var(--info-color);color:#fff;text-decoration:none;animation:none;transform:scale(1.05);box-shadow:0 4px 12px #3498db66}@keyframes rainbowMove{0%{background-position:0% 0%}to{background-position:100% 0%}}.rainbow-separator{height:5px;width:100%;background:linear-gradient(90deg,#000,red,#ff0,#000,red,#ff0,#000);background-size:200% 100%;animation:rainbowMove 6s linear infinite;z-index:50}.mobile-only{display:none}.app-container-wrapper{max-width:var(--user-max-width, 100%);transition:max-width .3s}@media (max-width: 1366px){h1{font-size:1.6rem}.header{grid-template-columns:1fr auto;grid-template-rows:auto;padding:10px 15px;gap:10px;align-items:center}.header-left{grid-column:1 / 2;grid-row:1 / 2}.header-right{grid-column:2 / 3;grid-row:1 / 2;justify-content:flex-end;gap:10px}.header-controls,.header-center{display:none!important}.dashboard-main-breakdown{flex-direction:column;align-items:stretch;gap:15px}.dashboard-sub-cards{grid-template-columns:1fr;gap:15px}.dashboard-graph-container{display:flex;flex-direction:column;gap:20px}.module-content{padding:15px;width:100%;overflow-x:hidden}.main-content{padding:0 10px 80px}@media (hover: none) and (orientation: landscape){html{font-size:80%}.app-container-wrapper{max-width:100%!important;padding-left:20px!important;padding-right:20px!important;margin:0!important}}button,input,select{min-height:44px;font-size:16px}.table-container{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;display:block;border:1px solid var(--border-color)}.mobile-only{display:flex!important}.desktop-only{display:none!important}.investment-charts-grid{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin-top:40px}@media (max-width: 1024px){.investment-charts-grid{grid-template-columns:1fr;gap:20px}}}@media (max-width: 1400px){.app-container-wrapper{max-width:100%!important;padding-left:10px!important;padding-right:10px!important;margin:0!important}}@media (max-width: 1024px) and (orientation: landscape){.holding-card-container{display:grid!important;grid-template-columns:.8fr .8fr 1fr 1fr 1fr 1fr 1fr auto!important;align-items:center!important;gap:5px!important;padding:5px 10px!important;margin-bottom:5px!important;border-left-width:5px!important}.card-label{display:none!important}.holding-card-container div{font-size:.85rem!important}.holding-card-container .card-value{font-size:.9rem!important}}@media print{body:has(.modal-overlay)>*:not(#root){display:none!important}.App:has(.modal-overlay)>*:not(.modal-overlay){display:none!important}body{background-color:#fff!important;margin:0!important;padding:0!important}.modal-overlay{position:absolute!important;top:0!important;left:0!important;background:transparent!important;display:block!important;height:auto!important;width:100%!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;overflow:visible!important;padding:0!important}.modal-container{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:none!important;border-radius:0!important;background:transparent!important;height:auto!important;overflow:visible!important;display:block!important;float:none!important}.modal-sidebar,.pdf-hide{display:none!important}.modal-content{width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important;padding:0!important;margin:0!important;display:block!important;box-sizing:border-box!important}.holding-card-container .card-value{font-size:.9rem!important}}.repayment-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:stretch}.repayment-results-grid>div{min-width:0}@media (max-width: 1024px){.repayment-results-grid{grid-template-columns:1fr}}.remboursement-switch-container{display:flex;flex-direction:column;align-items:center;gap:15px;margin-bottom:25px;position:relative;width:100%}.remboursement-add-btn{order:-1;width:auto}.remboursement-toggle-wrapper{width:100%;max-width:300px}@media (min-width: 768px){.remboursement-switch-container{display:grid;grid-template-columns:200px 1fr 200px;align-items:center;justify-items:center;gap:0}.remboursement-add-btn{grid-column:1;justify-self:start;margin:0!important;order:0}.remboursement-toggle-wrapper{grid-column:2;margin:0!important;justify-self:center}}.responsive-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(450px,1fr));gap:25px;align-items:stretch}.responsive-card-split{display:grid;grid-template-columns:55% 40%;gap:5%;align-items:center}@media (max-width: 768px){.responsive-dashboard-grid{grid-template-columns:1fr!important}.responsive-card-split{display:flex!important;flex-direction:column;gap:20px}.fieldset-grid{grid-template-columns:1fr!important}}@media (max-width: 1200px){.app-container-wrapper{max-width:100%!important;--user-max-width: 100% !important;padding:0 15px 40px!important}}.chart-container,.dashboard-card-fix,.card-hover-fix{position:relative;transition:transform .2s,background-color .3s,z-index 0s}.chart-container:hover,.dashboard-card-fix:hover,.card-hover-fix:hover{z-index:100}@media print{body:has(.modal-overlay)>*:not(#root){display:none!important}.App:has(.modal-overlay)>*:not(.modal-overlay){display:none!important}body{background-color:#fff!important;margin:0!important;padding:0!important}.modal-overlay{position:absolute!important;top:0!important;left:0!important;background:transparent!important;display:block!important;height:auto!important;width:100%!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;overflow:visible!important;padding:0!important}.modal-container{width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;box-shadow:none!important;border:none!important;border-radius:0!important;background:transparent!important;height:auto!important;overflow:visible!important;display:block!important;float:none!important}.modal-sidebar,.pdf-hide{display:none!important}.modal-content{width:100%!important;max-width:100%!important;height:auto!important;overflow:visible!important;padding:0!important;margin:0!important;display:block!important;box-sizing:border-box!important}*{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.modal-content>div,section,li{page-break-inside:avoid}}textarea::placeholder,input::placeholder{color:var(--secondary-color)!important;opacity:1}[data-theme=dark] input[type=date]::-webkit-calendar-picker-indicator,[data-theme=dark] input[type=time]::-webkit-calendar-picker-indicator{filter:invert(1)}@media (max-width: 768px){.dashboard-inner-grid{grid-template-columns:1fr!important;grid-template-rows:auto!important;gap:15px!important}}@media (max-width: 1024px){.global-modal-content{width:100%!important;max-width:100%!important;height:100%!important;max-height:100vh!important;max-height:100dvh!important;border-radius:0!important;margin:0!important}}.budget-charts-grid{display:grid;grid-template-columns:1fr 350px;gap:30px;align-items:start}.budget-charts-grid.single{grid-template-columns:1fr}@media (max-width: 1024px){.budget-charts-grid{grid-template-columns:1fr!important}}.landscape-blocker-overlay{display:none}@media screen and (max-width: 850px) and (orientation: portrait){.analyse-module-wrapper>div:not(.landscape-blocker-overlay){display:none!important}.landscape-blocker-overlay{display:flex;flex-direction:column;align-items:center;justify-content:center;height:60vh;text-align:center;padding:30px;background-color:var(--card-background);border:2px dashed var(--info-color);border-radius:16px;margin-top:30px}.landscape-blocker-overlay svg{width:80px;height:80px;margin-bottom:25px;color:var(--info-color);animation:rotatePhone 2.5s infinite ease-in-out}}@keyframes rotatePhone{0%{transform:rotate(0)}50%{transform:rotate(-90deg)}to{transform:rotate(-90deg)}}@media (max-width: 600px){.hide-on-mobile{display:none!important}}.market-pulse-green{animation:pulse-green-glow 2s infinite}@keyframes pulse-green-glow{0%{transform:scale(1);box-shadow:0 0 #27ae60b3;background-color:#27ae60}70%{transform:scale(1.3);box-shadow:0 0 0 5px #27ae6000;background-color:#2ecc71}to{transform:scale(1);box-shadow:0 0 #27ae6000;background-color:#27ae60}}.express-progress-bar{transition:width .5s cubic-bezier(.4,0,.2,1)}.dashboard-container,.dashboard-main-card,.dashboard-card-fix,.card-hover-fix{overflow:visible!important}@keyframes landingFloat{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-10px) scale(1.02)}to{transform:translateY(0) scale(1)}}@keyframes landingPulse{0%{opacity:.3}50%{opacity:.6}to{opacity:.3}}.landing-root button,.landing-root a{transition:all .2s cubic-bezier(.4,0,.2,1)}.landing-root .guest-btn-hover:hover{background-color:#ffffff1a;border-color:#fff}.landing-root button:hover{transform:translateY(-2px)}.landing-root button:active{transform:translateY(1px)}.landing-root .animated-border-card:before{content:"";position:absolute;top:-2px;left:-2px;right:-2px;bottom:-2px;background:linear-gradient(90deg,var(--primary-color),var(--secondary-color),var(--perf-color),var(--primary-color));background-size:400%;border-radius:18px;z-index:-1;opacity:.15;transition:opacity .3s;animation:animateGlow 12s linear infinite}.landing-root .animated-border-card:hover:before{opacity:.4}@media (max-width: 768px){.landing-root nav{padding:15px 20px!important}.landing-root nav .logoText{font-size:1.1rem!important}.landing-root nav img{height:30px!important}.landing-root nav button{padding:6px 12px!important;font-size:.8rem!important}.landing-root header{padding:60px 15px 40px!important}.landing-root header h1{font-size:2.2rem!important;line-height:1.2!important}.landing-root header p{font-size:1rem!important;margin-bottom:25px!important}.landing-root .stats-grid{grid-template-columns:1fr!important;gap:25px!important}.landing-root .stat-num{font-size:2rem!important}.landing-root .feature-display-card{grid-template-columns:1fr!important;gap:30px!important;padding:25px!important}.landing-root .feature-visual-col{order:-1;height:200px!important}.landing-root .pricing-card{padding:30px 20px!important}.landing-root .price-value{font-size:2.8rem!important}.landing-root .faq-question{font-size:.95rem!important}}.landing-root{--primary-color: #C8FF00}
