.cic-container {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 1400px; /* Even wider to match image layout */
    margin: 40px auto;
    padding: 32px clamp(20px, 4vw, 40px); /* Responsive padding */
    background: transparent;
    border-radius: 12px;
    box-shadow: 0 2px 12px rgba(32, 176, 195, 0.12);
}

.cic-container h2 {
    color: #20b0c3;
    margin-bottom: 18px;
    font-weight: 700;
}

.cic-results {
    display: flex;
    gap: 18px;
    margin: 18px 0;
    font-size: 1.06em;
    color: #333;
    justify-content: space-around;
}

#cic-form {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Three columns */
    gap: 24px 48px; /* More horizontal gap */
    width: 100%;
    background: rgba(255,255,255,0.7);
    border-radius: 16px;
    padding: 32px;
    box-shadow: 0 2px 12px rgba(32, 176, 195, 0.08);
    margin-bottom: 24px;
}

.cic-form-row {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.cic-form-row label {
    font-weight: 600;
    font-size: 1.08em;
    color: #299c6b;
}

.cic-form-row input,
.cic-form-row select {
    width: 100%;
    padding: 12px;
    font-size: 1.15em;
    border: 1px solid #20b0c3;
    border-radius: 8px;
    background: #fff;
}

/* Special styling for the PLN/% suffix */
.input-with-suffix {
    position: relative;
    display: flex;
    align-items: center;
}

.input-with-suffix input {
    padding-right: 40px; /* Space for suffix */
}

.input-suffix {
    position: absolute;
    right: 12px;
    color: #666;
    font-size: 0.9em;
}

/* Specific column spans 
.cic-form-row.period {
    display: flex;
    flex-direction: row;
    gap: 12px;
    align-items: flex-end;
}
*/
.cic-form-row.period input {
    flex: 2;
}

.cic-form-row.period select {
    flex: 1;
}

.chart-container {
    position: relative;
    width: 100%;
    height: clamp(300px, 50vh, 600px); /* Responsive height */
    margin: 24px 0;
}

#cic-chart {
    width: 100% !important;
    height: 100% !important;
}

/* Add to compound-interest-calculator.css */

/* Blue-Green Theme (Default) */
.theme-blue-green .cic-container {
    box-shadow: 0 2px 12px rgba(32, 176, 195, 0.12);
}

.theme-blue-green .cic-form-row label {
    color: #299c6b;
}

.theme-blue-green .cic-form-row input,
.theme-blue-green .cic-form-row select {
    border-color: #20b0c3;
}

.theme-blue-green #cic-form button {
    background: linear-gradient(90deg, #20b0c3 60%, #2cca73 100%);
}

/* Title color for blue-green theme */
.theme-blue-green .cic-title {
    color: #20b0c3;
}

/* Red-Orange Theme */
.theme-red-orange .cic-container {
    box-shadow: 0 2px 12px rgba(195, 32, 32, 0.12);
}

.theme-red-orange .cic-form-row label {
    color: #c33232;
}

.theme-red-orange .cic-form-row input,
.theme-red-orange .cic-form-row select {
    border-color: #ff5722;
}

.theme-red-orange #cic-chart {
    background: transparent;
}

.theme-red-orange .chart-colors {
    --color1: rgba(195, 32, 32, 0.7);
    --color2: rgba(255, 87, 34, 0.7);
    --color3: rgba(255, 152, 0, 0.7);
}

/* Title color for red-orange theme */
.theme-red-orange .cic-title {
    color: #dc3545;
}