h2{color:#333;text-align:center;margin-bottom:15px;font-size:1.6rem;font-weight:700}.calculator-container{background:#fff;border-radius:10px;max-width:1000px;margin:0 auto 15px;padding:15px;box-shadow:0 4px 12px #0000001a}.calculator-layout{flex-wrap:wrap;gap:15px;display:flex}.calculator-form-container{flex:1 1 0;min-width:0}.calculator-form{flex-shrink:1;gap:12px;width:100%;min-width:0;display:grid}.form-group{flex-direction:column;flex:1;display:flex}.form-group label{color:#333;margin-bottom:3px;font-size:.85rem}.form-group input{background-color:#f9f9f9;border:1px solid #ccc;border-radius:6px;padding:7px;font-size:.9rem}.percentage-input{align-items:center;display:flex}.percentage-input input{border-radius:0 6px 6px 0;flex-grow:1}.percentage-symbol{text-align:center;background-color:#f0f0f0;border:1px solid #ccc;border-right:none;border-radius:6px 0 0 6px;min-width:20px;padding:7px}.currency-input{align-items:center;display:flex}.currency-input input{border-radius:0 6px 6px 0;flex-grow:1}.currency-symbol{text-align:center;background-color:#f0f0f0;border:1px solid #ccc;border-right:none;border-radius:6px 0 0 6px;min-width:20px;padding:7px}.form-row{flex-flow:row;gap:1rem;margin-top:.5rem;display:flex}.form-row input,.form-row div{flex:1 1 0;width:100%}.form-row small{color:#666;margin-top:.25rem;display:block}@media (width<=800px){.calculator-layout{flex-wrap:wrap;gap:10px}.calculator-form-container,.result-container{flex:100%;min-width:0}.form-row input,.form-row div{min-width:30 px;flex:100%}}button{color:#fff;cursor:pointer;background-color:#3498db;border:none;border-radius:6px;margin-top:5px;padding:8px 16px;font-size:.9rem;transition:background-color .3s}button:hover{background-color:#2980b9}.open-breakdown-btn{color:#fff;cursor:pointer;background-color:#2c7be5;border:none;border-radius:4px;margin-top:1rem;padding:8px 16px;font-size:1rem}.result-container{flex:1;width:100%;display:none}.result{background:#f4f7f9;border-radius:8px;margin-bottom:12px;padding:12px;box-shadow:0 2px 6px #0000001a}.result h3{color:#333;margin-bottom:8px;font-size:1.2rem}.result p{color:#555;margin-bottom:6px;font-size:.95rem}.result-currency-symbol{margin-right:4px}#investmentChart{width:100%;height:300px}.info-container{background:#f8f9fa;border-radius:10px;max-width:1000px;margin:0 auto 15px;padding:15px;box-shadow:0 4px 12px #0000001a}.info-container h3{color:#2c3e50;border-bottom:2px solid #3498db;margin-bottom:12px;padding-bottom:8px;font-size:1.4rem}.info-container p{color:#555;margin-bottom:10px;font-size:.9rem;line-height:1.4}.info-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:15px;width:100%;margin-top:12px;display:grid}.info-card{background:#fff;border-radius:8px;width:100%;padding:12px;box-shadow:0 2px 4px #0000000d}.info-card.margin-top-20{margin-top:20px}.info-card h4{color:#2980b9;margin-bottom:8px;font-size:1.05rem}.info-card ul{margin-top:8px;padding-left:20px}.info-card table{border-collapse:collapse;width:100%;margin-top:12px}.info-card table td{border-bottom:1px solid #eee;padding:8px}.info-card .footnote{color:#666;margin-top:12px;font-size:.85rem}.parameter-table{border-collapse:collapse;width:100%;margin-top:12px}.parameter-table th,.parameter-table td{text-align:left;border-bottom:1px solid #eee;padding:8px;font-size:.9rem}.parameter-table th{color:#333;background-color:#f4f7f9;font-weight:600}.parameter-table tr:last-child td{border-bottom:none}.monthly-breakdown-table{border-collapse:collapse;table-layout:fixed;width:100%;margin-top:1rem}.monthly-breakdown-table th,.monthly-breakdown-table td{border:2px solid #ccc;padding:8px;text-align:center!important;vertical-align:middle!important}.modal{z-index:9999;background:#00000080;justify-content:center;align-items:center;width:100%;height:100%;margin-left:auto;margin-right:auto;display:flex;position:fixed;top:0;left:0;right:0;overflow:hidden}.modal.hidden{display:none}.modal-content{background:#fff;border-radius:8px;flex-direction:column;width:90%;max-width:500px;max-height:90%;display:flex;overflow:hidden}.modal-header{z-index:1;vertical-align:middle;background:#f1f1f1;border-bottom:1px solid #ccc;justify-content:space-between;align-items:center;padding:1rem;display:flex;position:sticky}.modal-header h2{text-align:center;vertical-align:middle;margin:auto;left:0;right:0}.modal-close{cursor:pointer;color:#333;background:red;border:none;margin:0;padding:10px;font-size:2rem;line-height:1}.modal-body{flex:auto;padding:1rem;overflow-y:auto}.noscroll{overflow:hidden}