.teg-family-box{margin:18px 0;padding:16px;border:1px solid #c9a13b;border-radius:12px;background:#faf7f0;color:#0b1f44}.teg-family-controls{border:0;margin:0;padding:0;display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;min-width:0}.teg-family-controls legend{font-weight:700;padding:0;margin-bottom:12px}.teg-family-controls label{display:flex;gap:8px;align-items:center;min-width:0}.teg-family-controls input[type=number]{width:68px;max-width:100%;flex-shrink:0}.teg-family-controls input[type=checkbox]{width:18px;height:18px;flex-shrink:0}.teg-family-rule,.teg-family-disclaimer{font-size:12px;line-height:1.6;margin:0 0 12px}.teg-family-disclaimer{margin:12px 0 0}.teg-family-breakdown{width:100%;margin-top:14px;border-collapse:collapse}.teg-family-breakdown th{text-align:left;width:55%;font-weight:500}.teg-family-breakdown td{text-align:right;overflow-wrap:anywhere}.teg-family-breakdown th,.teg-family-breakdown td{padding:8px;border-bottom:1px solid #dedbd1}.teg-family-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}.teg-family-totals p{border:1px solid #dedbd1;border-radius:8px;background:white;padding:10px;font-size:12px}.teg-family-totals strong{display:block;font-size:16px;margin-top:6px}.teg-family-selection-print{display:none}#family-calculator{margin:0 0 16px;padding:16px;background:white;border:1px solid #dedbd1;border-radius:12px}#family-calculator[hidden]{display:none!important}@media(max-width:700px){.teg-family-controls{grid-template-columns:minmax(0,1fr)}.teg-family-controls label{justify-content:space-between}.teg-family-controls label:first-of-type{justify-content:flex-start}.teg-family-totals{grid-template-columns:minmax(0,1fr)}.teg-family-breakdown th{width:48%}}@media print{.teg-family-box{break-inside:auto;padding:10px;margin:10px 0}.teg-family-selection-print{display:block;font-size:11px;margin-bottom:10px}.teg-family-controls{display:none!important}.teg-family-totals{grid-template-columns:repeat(3,minmax(0,1fr))}.teg-family-totals p{padding:6px}.teg-family-breakdown tr{break-inside:avoid}}

.teg-family-warning{color:#9a3412;background:#fff3e0;border:1px solid #e7a63b;border-radius:8px;padding:10px;font-size:12px;line-height:1.6;margin:10px 0;white-space:normal}#oshc-policy-warning{grid-column:1/-1}label:has(#oshc-policy){display:block}

.teg-family-age-hint{grid-column:1/-1;line-height:1.6;color:#526078}.teg-mocktest-cta{margin:20px 0;padding:20px;border:1px solid #c9a13b;border-radius:12px;background:#faf7f0}.teg-mocktest-cta .button{display:block;text-align:center;background:#c9a13b;color:#0b1f44;font-size:18px;padding:16px;white-space:normal}

.teg-family-age-required{margin:12px 0;padding:12px;border:1px solid #cf6a13;border-radius:8px;background:#fff3e0;color:#8a3200;font-size:13px;line-height:1.6}.teg-family-controls input[aria-invalid="true"]{border:2px solid #c44d1c;background:#fffaf5}

.teg-family-controls label:has(.teg-family-age-error){display:grid;grid-template-columns:minmax(0,1fr) auto}.teg-family-age-error{grid-column:1/-1;color:#a73b0c;line-height:1.5;font-weight:500}

.teg-family-controls input[aria-invalid="true"]{border-color:#c62828;background:#fff3f3}.teg-family-age-error{color:#b71c1c}.teg-incomplete-total{display:inline-block;background:#fee2e2;color:#991b1b;border-radius:4px;padding:2px 5px;font-weight:700}.teg-export-locked{opacity:.5;cursor:not-allowed!important}.teg-export-note{flex-basis:100%;margin:6px 0;color:#991b1b;font-size:12px;line-height:1.5}

.teg-child-school-question{grid-column:1/-1;border:1px solid #dedbd1;border-radius:8px;padding:12px;min-width:0}.teg-child-school-question legend{font-size:14px;margin:0;padding:0 5px}.teg-child-school-question[aria-invalid="true"]{border:2px solid #c62828;background:#fff8f6}.teg-school-options{display:flex;gap:24px;margin:6px 0}.teg-school-options label{display:flex;justify-content:flex-start!important;gap:8px}.teg-school-options input[type=radio]{width:18px;height:18px}.teg-family-school-note,.teg-family-school-error{display:block;font-size:12px;line-height:1.6}.teg-family-school-error{color:#b71c1c;font-weight:700;margin:4px 0}.teg-family-school-note{color:#526078;margin-top:6px}

.teg-visa-breakdown{display:block;margin-top:.3rem;font-size:.82em;line-height:1.45;color:#42516a}.teg-family-visa{padding:10px;border:1px solid #dbe2ec;border-radius:8px}
