Medi Share Calculator
.medi-share-calculator-container {
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
background-color: #f9f9f9;
border: 1px solid #ddd;
border-radius: 8px;
padding: 25px;
max-width: 800px;
margin: 20px auto;
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
color: #333;
}
.medi-share-calculator-container h2 {
color: #2c3e50;
text-align: center;
margin-bottom: 20px;
font-size: 1.8em;
}
.medi-share-calculator-container h3 {
color: #34495e;
margin-top: 25px;
margin-bottom: 15px;
font-size: 1.4em;
border-bottom: 1px solid #eee;
padding-bottom: 5px;
}
.medi-share-calculator-container h4 {
color: #34495e;
margin-top: 20px;
margin-bottom: 10px;
font-size: 1.2em;
}
.calculator-form .form-group {
margin-bottom: 18px;
display: flex;
flex-direction: column;
}
.calculator-form label {
margin-bottom: 8px;
font-weight: bold;
color: #555;
font-size: 1em;
}
.calculator-form input[type="number"] {
padding: 12px 15px;
border: 1px solid #ccc;
border-radius: 5px;
font-size: 1.1em;
width: 100%;
box-sizing: border-box;
transition: border-color 0.3s ease;
}
.calculator-form input[type="number"]:focus {
border-color: #007bff;
outline: none;
box-shadow: 0 0 5px rgba(0, 123, 255, 0.3);
}
.calculate-button {
display: block;
width: 100%;
padding: 14px 20px;
background-color: #28a745;
color: white;
border: none;
border-radius: 5px;
font-size: 1.2em;
font-weight: bold;
cursor: pointer;
transition: background-color 0.3s ease, transform 0.2s ease;
margin-top: 25px;
}
.calculate-button:hover {
background-color: #218838;
transform: translateY(-2px);
}
.calculator-results {
background-color: #e9f7ef;
border: 1px solid #d4edda;
border-radius: 8px;
padding: 20px;
margin-top: 30px;
font-size: 1.1em;
line-height: 1.6;
}
.calculator-results h3 {
color: #155724;
margin-top: 0;
margin-bottom: 15px;
text-align: center;
font-size: 1.5em;
}
.calculator-results p {
margin-bottom: 10px;
display: flex;
justify-content: space-between;
align-items: center;
padding: 5px 0;
border-bottom: 1px dashed #c3e6cb;
}
.calculator-results p:last-child {
border-bottom: none;
font-size: 1.2em;
font-weight: bold;
color: #007bff;
margin-top: 15px;
padding-top: 10px;
border-top: 2px solid #007bff;
}
.calculator-results span {
font-weight: bold;
color: #007bff;
}
.calculator-article {
margin-top: 30px;
line-height: 1.7;
color: #444;
}
.calculator-article p, .calculator-article ul, .calculator-article ol {
margin-bottom: 15px;
font-size: 1em;
}
.calculator-article ul, .calculator-article ol {
margin-left: 25px;
padding-left: 0;
}
.calculator-article li {
margin-bottom: 8px;
}
function calculateMediShare() {
var monthlyShareAmount = parseFloat(document.getElementById('monthlyShareAmount').value);
var annualHouseholdPortion = parseFloat(document.getElementById('annualHouseholdPortion').value);
var estimatedAnnualMedicalBills = parseFloat(document.getElementById('estimatedAnnualMedicalBills').value);
// Validate inputs
if (isNaN(monthlyShareAmount) || monthlyShareAmount < 0) {
alert('Please enter a valid Monthly Share Amount.');
return;
}
if (isNaN(annualHouseholdPortion) || annualHouseholdPortion < 0) {
alert('Please enter a valid Annual Household Portion (AHP).');
return;
}
if (isNaN(estimatedAnnualMedicalBills) || estimatedAnnualMedicalBills < 0) {
alert('Please enter valid Estimated Annual Eligible Medical Bills.');
return;
}
var totalAnnualMonthlyShares = monthlyShareAmount * 12;
var outOfPocketBeforeSharing = Math.min(estimatedAnnualMedicalBills, annualHouseholdPortion);
var sharedAmount = Math.max(0, estimatedAnnualMedicalBills – annualHouseholdPortion);
var totalAnnualMemberCost = totalAnnualMonthlyShares + outOfPocketBeforeSharing;
document.getElementById('totalAnnualMonthlyShares').innerText = '$' + totalAnnualMonthlyShares.toFixed(2);
document.getElementById('outOfPocketBeforeSharing').innerText = '$' + outOfPocketBeforeSharing.toFixed(2);
document.getElementById('sharedAmount').innerText = '$' + sharedAmount.toFixed(2);
document.getElementById('totalAnnualMemberCost').innerText = '$' + totalAnnualMemberCost.toFixed(2);
}
// Run calculation on page load with default values
document.addEventListener('DOMContentLoaded', function() {
calculateMediShare();
});