/* --- Main Container --- */ .main-container { display: flex; gap: 6px; width: 100%; max-width: 1200px; flex-wrap: wrap; justify-content: center; } button.copy-content { width: 100%; } button.calculate-btn { background: #218838; padding: 10px 20px; border-radius: 10px; color: #fff; width: 100%; } /* --- Card Styles --- */ .main-container .card { background-color: var(--card-background); border-radius: 8px; box-shadow: 0 4px 8px rgba(0,0,0,0.1); padding: 25px; width: 100%; } .card-title { font-size: 1.5rem; font-weight: 600; margin-bottom: 15px; color: var(--dark-color); border-bottom: 2px solid var(--primary-color); padding-bottom: 0; } /* --- Input Form & Result Card Sizing --- */ .input-card { flex: 1; min-width: 300px; max-width: 300px; } .result-card { flex: 2; min-width: 300px; } /* --- Input Group Styles --- */ .input-group { margin-bottom: 0px; } .input-group label { display: block; margin-bottom: 8px; font-weight: 500; color: var(--secondary-color); } .input-wrapper { position: relative; } .input-wrapper i { position: absolute; left: 15px; top: 40%; transform: translateY(-50%); color: var(--secondary-color); } .input-group input { width: 100%; padding: 5px 5px 5px 50px; border-radius: 5px; font-size: 1rem; } .input-group input:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 5px rgba(0,123,255,0.25); } /* --- Result Display --- */ .result-summary { display: grid; grid-template-columns: repeat(auto-fit, minmax(100px, 1fr)); gap: 20px; margin-bottom: 30px; } .summary-item { padding: 0; background-color: var(--light-color); border-radius: 8px; text-align: left; } .summary-item h3 { font-size: 0.9rem; color: var(--secondary-color); font-weight: 400; } .summary-item p { font-size: 16px; font-weight: 700; color: var(--primary-color); } /* --- Chart & Table Container --- */ .charts-table-container { display: flex; gap: 20px; flex-wrap: wrap; } .chart-container { flex: 1; min-width: 250px; height: 300px; } .table-container { flex: 2; min-width: 300px; } /* --- Table Styles --- */ .accumulation-table { width: 100%; border-collapse: collapse; margin-top: 20px; } .accumulation-table th, .accumulation-table td { padding: 12px; border: 1px solid var(--border-color); text-align: left; } .accumulation-table th { background-color: var(--light-color); font-weight: 600; } .accumulation-table tbody tr:nth-child(even) { background-color: #f2f2f2; } /* --- Responsive Design --- */ @media (max-width: 992px) { .main-container { flex-direction: column; align-items: center; } .input-card, .result-card { max-width: 100%; } .charts-table-container { flex-direction: column; } .input-wrapper { position: relative; min-width: 100%; max-width: 100%; } }