/* LLM API Comparator V2 Styles */
.calcufacil-llm_api_comparator_v2_calculator.calcufacil-container.full-width-calc {
    max-width: 1000px; 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; /* Override potential flex */
}
.calcufacil-llm_api_comparator_v2_calculator h3 { display: none; } /* Hide base title */

.calcufacil-llm_api_comparator_v2_calculator .calculator-form h2 {
    font-size: 22px; color: #0D6EFD; margin-bottom: 10px; text-align: center;
}
.calcufacil-llm_api_comparator_v2_calculator .instructions {
    text-align: center; font-size: 14px; color: #555; margin-bottom: 25px;
}
/* Fieldsets */
.calcufacil-llm_api_comparator_v2_calculator fieldset {
    border: 1px solid #dee2e6; padding: 15px 20px; border-radius: 6px; margin-bottom: 25px;
}
.calcufacil-llm_api_comparator_v2_calculator legend {
    font-weight: bold; color: #495057; padding: 0 10px; font-size: 16px;
}
.calcufacil-llm_api_comparator_v2_calculator .usage-fieldset .inline-group {
    display: flex; gap: 15px; flex-wrap: wrap;
}
.calcufacil-llm_api_comparator_v2_calculator .usage-fieldset .input-group {
    flex: 1; min-width: 200px; margin-bottom: 5px; /* Reduced margin inside group */
}
.calcufacil-llm_api_comparator_v2_calculator label { display: block; font-weight: bold; color: #333; margin-bottom: 5px; font-size: 13px; }
.calcufacil-llm_api_comparator_v2_calculator input[type="number"] {
    width: 100%; padding: 9px; border: 1px solid #ccc; border-radius: 4px;
    box-sizing: border-box; font-size: 15px; background: #f9f9f9;
}
/* Pricing Grid */
.calcufacil-llm_api_comparator_v2_calculator .pricing-fieldset .verify-prices { color: #dc3545; font-weight: normal; font-size: 0.9em; }
.calcufacil-llm_api_comparator_v2_calculator .pricing-grid {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)); gap: 15px;
}
.calcufacil-llm_api_comparator_v2_calculator .model-price-group {
    background: #f8f9fa; padding: 12px; border-radius: 4px; border: 1px solid #eee;
}
.calcufacil-llm_api_comparator_v2_calculator .model-price-group label.model-name { font-size: 14px; margin-bottom: 8px; color: #212529; }
.calcufacil-llm_api_comparator_v2_calculator .model-price-group .price-inputs { display: flex; gap: 8px; }
.calcufacil-llm_api_comparator_v2_calculator .model-price-group .price-inputs input { font-size: 14px; padding: 8px; }
.calcufacil-llm_api_comparator_v2_calculator input::placeholder { font-size: 12px; color: #888; font-style: italic; }

.calcufacil-llm_api_comparator_v2_calculator button {
    background-color: #0D6EFD; color: #fff; padding: 12px 25px; border: none; border-radius: 4px;
    cursor: pointer; font-size: 16px; display: block; margin: 10px auto 0 auto; /* Center button */
    transition: background-color 0.3s ease;
}
.calcufacil-llm_api_comparator_v2_calculator button:hover { background-color: #0a58ca; }
/* Results */
.calcufacil-llm_api_comparator_v2_calculator .results { background: #e7f1ff; padding: 25px; border-radius: 8px; border: 1px solid #b8d6ff; margin-top: 25px;}
.calcufacil-llm_api_comparator_v2_calculator .results-header { text-align: center; margin-bottom: 15px; }
.calcufacil-llm_api_comparator_v2_calculator .results-header h2 { font-size: 20px; color: #0a58ca; margin: 0; }
.calcufacil-llm_api_comparator_v2_calculator .comparison-summary { text-align: center; font-size: 14px; color: #555; margin-bottom: 20px; }
/* Results Table */
.calcufacil-llm_api_comparator_v2_calculator .comparison-table { width: 100%; border-collapse: collapse; margin-bottom: 20px; font-size: 13px; background-color: #fff; box-shadow: 0 1px 2px rgba(0,0,0,0.05); }
.calcufacil-llm_api_comparator_v2_calculator .comparison-table th,
.calcufacil-llm_api_comparator_v2_calculator .comparison-table td { border: 1px solid #d1e3ff; padding: 9px 11px; text-align: right; }
.calcufacil-llm_api_comparator_v2_calculator .comparison-table th { background-color: #b8d6ff; color: #032b5a; font-weight: bold; text-align: center; }
.calcufacil-llm_api_comparator_v2_calculator .comparison-table td:first-child { text-align: left; }
.calcufacil-llm_api_comparator_v2_calculator .comparison-table td:last-child { font-weight: bold; font-size: 1.1em; }
.calcufacil-llm_api_comparator_v2_calculator .comparison-table tr.cheapest td { background-color: #d1f2eb; font-weight: bold; }
.calcufacil-llm_api_comparator_v2_calculator .cheapest-icon { color: #ffc107; margin-left: 5px; font-size: 0.9em; }

.calcufacil-llm_api_comparator_v2_calculator .note { font-size: 12px; color: #555; text-align: center; margin-top: 15px; font-style: italic; line-height: 1.4; }
.calcufacil-llm_api_comparator_v2_calculator .errors { color: #721c24; background-color: #f8d7da; border: 1px solid #f5c6cb; padding: 10px 15px; border-radius: 4px; margin-top: 15px; margin-bottom: 15px; }
.calcufacil-llm_api_comparator_v2_calculator .errors ul { list-style: none; padding: 0; margin: 0; }
.calcufacil-llm_api_comparator_v2_calculator .errors li { margin-bottom: 5px; }
.calcufacil-llm_api_comparator_v2_calculator .errors li:last-child { margin-bottom: 0; }