/* Mobile Plan Comparator Styles - Tech Theme */
.calcufacil-mobile_plan_comparator_calculator.calcufacil-container.full-width-calc {
    max-width: 1100px; margin: 20px auto; background: #fff; padding: 25px;
    border-radius: 8px; box-shadow: 0 0 15px rgba(0, 0, 0, 0.1);
    font-family: Arial, sans-serif; display: block;
}
.calcufacil-mobile_plan_comparator_calculator h3 { display: none; }

.calcufacil-mobile_plan_comparator_calculator .calculator-form h2 {
    font-size: 22px; color: #0dcaf0; /* Cyan */ margin-bottom: 10px; text-align: center;
}
.calcufacil-mobile_plan_comparator_calculator .instructions {
    text-align: center; font-size: 14px; color: #555; margin-bottom: 25px;
}
/* Fieldsets */
.calcufacil-mobile_plan_comparator_calculator fieldset {
    border: 1px solid #beeef8; padding: 15px 20px; border-radius: 6px; margin-bottom: 25px;
}
.calcufacil-mobile_plan_comparator_calculator legend {
    font-weight: bold; color: #0a8aa5; padding: 0 10px; font-size: 16px;
}
.calcufacil-mobile_plan_comparator_calculator label { display: block; font-weight: bold; color: #333; margin-bottom: 5px; font-size: 13px; }
.calcufacil-mobile_plan_comparator_calculator input[type="number"],
.calcufacil-mobile_plan_comparator_calculator input[type="text"] { /* Allow text for 'INF' */
    width: 100%; padding: 9px; border: 1px solid #ccc; border-radius: 4px;
    box-sizing: border-box; font-size: 15px; background: #f9f9f9;
}
/* Comparison Grid */
.calcufacil-mobile_plan_comparator_calculator .comparison-grid.plans-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px;
}
.calcufacil-mobile_plan_comparator_calculator .comparison-group.plan-group {
    background: #f8f9fa; padding: 15px; border-radius: 4px; border: 1px solid #eee;
}
.calcufacil-mobile_plan_comparator_calculator .comparison-group label.group-label {
     font-size: 15px; margin-bottom: 10px; color: #0dcaf0; display: block; text-align: center;
}
.calcufacil-mobile_plan_comparator_calculator .comparison-group .input-group { margin-bottom: 10px;}

.calcufacil-mobile_plan_comparator_calculator button {
    background-color: #0dcaf0; color: #000; padding: 12px 25px; border: none; border-radius: 4px;
    cursor: pointer; font-size: 16px; display: block; margin: 10px auto 0 auto; font-weight: bold;
    transition: background-color 0.3s ease;
}
.calcufacil-mobile_plan_comparator_calculator button:hover { background-color: #0baccc; }
/* Results */
.calcufacil-mobile_plan_comparator_calculator .results { background: #ebfafd; padding: 25px; border-radius: 8px; border: 1px solid #beeef8; margin-top: 25px;}
.calcufacil-mobile_plan_comparator_calculator .results-header { text-align: center; margin-bottom: 15px; }
.calcufacil-mobile_plan_comparator_calculator .results-header h2 { font-size: 20px; color: #0a8aa5; margin: 0; }
.calcufacil-mobile_plan_comparator_calculator .comparison-summary { text-align: center; font-size: 14px; color: #555; margin-bottom: 20px; }
/* Results Table */
.calcufacil-mobile_plan_comparator_calculator .comparison-table-container { overflow-x: auto; }
.calcufacil-mobile_plan_comparator_calculator .comparison-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; font-size: 12px; background-color: #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.05); min-width: 800px; }
.calcufacil-mobile_plan_comparator_calculator .comparison-table th,
.calcufacil-mobile_plan_comparator_calculator .comparison-table td { border: 1px solid #d1f3f9; padding: 8px 10px; text-align: center; vertical-align: middle; }
.calcufacil-mobile_plan_comparator_calculator .comparison-table thead th { background-color: #beeef8; color: #055160; font-weight: bold; }
.calcufacil-mobile_plan_comparator_calculator .comparison-table td:first-child { text-align: left; font-weight: bold; } /* Plan name */
.calcufacil-mobile_plan_comparator_calculator .comparison-table td:nth-child(5) { font-style: italic; color: #555;} /* Cost per GB */

.calcufacil-mobile_plan_comparator_calculator .note { font-size: 12px; color: #555; text-align: center; margin-top: 15px; font-style: italic; line-height: 1.4; }
.calcufacil-mobile_plan_comparator_calculator .errors { color: #721c24; background-color: #f8d7da; border: 1px solid #f5c6cb; padding: 10px 15px; border-radius: 4px; margin-top: 15px; margin-bottom: 15px; }
.calcufacil-mobile_plan_comparator_calculator .errors ul { list-style: none; padding: 0; margin: 0; }
.calcufacil-mobile_plan_comparator_calculator .errors li { margin-bottom: 5px; }
.calcufacil-mobile_plan_comparator_calculator .errors li:last-child { margin-bottom: 0; }