/* --- TOOL CARD --- */
.tool-card {
    background: var(--bg-card); 
    padding: 30px; 
    border-radius: 15px; 
    border: 1px solid var(--border); 
    box-shadow: 0 10px 40px rgba(0,0,0,0.05); 
    margin: 40px 0; 
}

/* --- INPUT SECTION --- */
.input-section { margin-bottom: 30px; }
.input-group-clean label {
    font-weight: 800; color: var(--brand-blue); display: block; margin-bottom: 8px; text-transform: uppercase; font-size: 12px;
}
.input-group-clean input {
    width: 100%; padding: 14px; border: 1.5px solid var(--border); border-radius: 8px; font-size: 20px; font-weight: 700; background: var(--bg-body); box-sizing: border-box;
}

/* --- TOGGLE SWITCH --- */
.toggle-box { display: flex; align-items: center; margin-top: 15px; background: rgba(11, 87, 208, 0.05); padding: 10px; border-radius: 8px; }
.switch { position: relative; display: inline-block; width: 40px; height: 22px; margin-right: 10px; }
.switch input { opacity: 0; width: 0; height: 0; }
.slider { position: absolute; cursor: pointer; top: 0; left: 0; right: 0; bottom: 0; background-color: #ccc; transition: .4s; border-radius: 34px; }
.slider:before { position: absolute; content: ""; height: 16px; width: 16px; left: 3px; bottom: 3px; background-color: white; transition: .4s; border-radius: 50%; }
input:checked + .slider { background-color: #25D366; }
input:checked + .slider:before { transform: translateX(18px); }
.toggle-label { font-size: 13px; font-weight: 700; color: var(--brand-blue); }

/* --- PREDICTION ZONE --- */
.prediction-zone { background: #f8f9fa; padding: 20px; border-radius: 12px; border: 1px solid var(--border); margin-bottom: 30px; }
.prediction-zone h3 { font-size: 14px; color: var(--text-muted); margin-top: 0; margin-bottom: 15px; text-transform: uppercase; }
.checkbox-grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 10px; }
.custom-checkbox { font-size: 13px; font-weight: 600; display: flex; align-items: center; cursor: pointer; }
.custom-checkbox input { margin-right: 8px; accent-color: #0b57d0; width: 16px; height: 16px; }

/* --- RESULTS DASHBOARD --- */
.results-dashboard { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 15px; margin-top: 20px; }
.result-card { background: var(--bg-body); padding: 20px; border-radius: 10px; border: 1px solid var(--border); text-align: center; }
.result-card h4 { font-size: 12px; color: var(--text-muted); margin: 0 0 10px 0; text-transform: uppercase; }
.tax-amount { font-size: 22px; font-weight: 900; color: var(--brand-blue); }
.sub-text { font-size: 11px; color: #666; margin-top: 5px; }

/* Highlight the Predicted Winner */
.highlight-card { border: 2px solid #25D366; background: #f0fdf4; position: relative; }
.highlight-card:after { content: "2026"; position: absolute; top: -10px; right: 10px; background: #25D366; color: #fff; font-size: 10px; padding: 2px 8px; border-radius: 10px; font-weight: 800; }
.highlight-card .tax-amount { color: #166534; }

.salary-impact-box { margin-top: 20px; padding: 15px; background: #e0f2fe; color: #075985; border-radius: 8px; font-size: 14px; text-align: center; border: 1px solid #bae6fd; }

/* --- MOBILE RESPONSIVENESS --- */
@media (max-width: 768px) {
    .checkbox-grid { grid-template-columns: 1fr; }
    .results-dashboard { grid-template-columns: 1fr; }
}