:root{--green:#173f32;--gold:#b38c39;--ink:#23382f;--paper:#faf8f2}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;color:var(--ink);background:var(--paper);font:17px/1.5 system-ui,sans-serif}.hero{background:var(--green);color:white;padding:48px max(24px,calc((100vw - 1000px)/2))}.eyebrow{font-size:12px;letter-spacing:.14em;font-weight:800}h1{font-size:clamp(36px,5vw,58px);line-height:1.05;margin:18px 0}h2{font-size:28px;line-height:1.2}.subtitle{font-size:24px;line-height:1.35}main{max-width:1050px;margin:auto;padding:24px}section{background:white;border:1px solid #d8dfd8;border-radius:12px;padding:28px;margin:24px 0}.notice{border:2px solid var(--gold);background:#fff9e9;padding:20px}.notice p{margin-bottom:0}.grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}input[type=number],select{width:100%;padding:11px;border:1px solid #809087;border-radius:5px;font:inherit;background:#fff}input[type=checkbox]{width:20px;height:20px}button{padding:13px 20px;border:0;border-radius:6px;background:var(--green);color:white;font:700 16px system-ui;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.question{padding:18px 0;border-bottom:1px solid #ddd}.question label{display:block;font-weight:650}.question select{max-width:240px;margin-top:10px}.callout{padding:20px;background:#f5f0e4;border-left:4px solid var(--gold);margin:20px 0}.small{font-size:13px}.tablehead,.fieldrow{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid #d8dfd8}.fieldrow label{font-size:15px}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.metric{padding:16px;background:#f2f5f1}.metric strong{display:block;font-size:27px}.metric span{font-size:13px}#error,#ackError{color:#9b291a}#report{max-width:1050px;margin:auto}.sheet{background:white;padding:38px;margin:24px 0;border:1px solid #d8dfd8}.reporthead{background:var(--green);color:white;padding:24px}.reporthead h1{font-size:36px}.reporthead p{margin-bottom:0}table{border-collapse:collapse;width:100%;font-size:14px}th,td{text-align:left;padding:9px;border-bottom:1px solid #ddd}th:not(:first-child),td:not(:first-child){text-align:right}footer{border-top:1px solid #b9c6bc;padding-top:12px;margin-top:22px;font-size:11px}a{color:var(--green)}.sources{font-size:11px;overflow-wrap:anywhere}li{margin:7px 0}@media(max-width:650px){main{padding:14px}section,.sheet{padding:18px}.grid,.metrics{grid-template-columns:1fr}.tablehead,.fieldrow{grid-template-columns:1.2fr 1fr 1fr;gap:7px}.fieldrow input{min-width:0;padding:8px}.fieldrow label{font-size:12px}.subtitle{font-size:20px}h2{font-size:24px}}
@media print{@page{size:letter;margin:0}body{background:white;font-size:10pt;line-height:1.35}.hero,main{display:none!important}#report{display:block;max-width:none}.sheet{width:8.5in;min-height:11in;margin:0;border:0;padding:.48in .55in;break-after:page}.sheet:last-child{break-after:auto}.reporthead{padding:20px;print-color-adjust:exact}.reporthead h1{font-size:28pt;margin:10px 0}.reporthead .subtitle{font-size:15pt}.sheet h2{font-size:15pt;margin:18px 0 8px}.sheet p{margin:8px 0}.notice{padding:12px;font-size:9pt;print-color-adjust:exact}.metrics{gap:10px;grid-template-columns:repeat(3,1fr)}.metric{padding:12px;print-color-adjust:exact}.metric strong{font-size:21pt}.metric span{font-size:9pt}table{font-size:9pt}th,td{padding:7px}footer{font-size:8pt}.small{font-size:9pt}.sources{font-size:8pt}.callout{padding:12px;margin:12px 0;print-color-adjust:exact}.reporthead,.notice,.metrics,tr{break-inside:avoid}.sheet li{margin:5px 0}}

/* Prominent educational notice on both report pages. */
.sheet .notice{font-size:18.667px;line-height:1.3}
@media print{.sheet .notice{font-size:14pt;line-height:1.25}}

/* Keep complete dollar amounts readable on phones without changing desktop or print. */
@media screen and (max-width:650px){
 #fields .fieldrow{grid-template-columns:minmax(0,1fr);gap:6px;padding:16px 0}
 #fields .fieldrow>label{grid-column:1;grid-row:1;font-size:15px;font-weight:650}
 #fields .fieldrow::before{content:"Current";grid-column:1;grid-row:2;font-size:13px;margin-top:4px}
 #fields .fieldrow::after{content:"Review option";grid-column:1;grid-row:4;font-size:13px;margin-top:8px}
 #fields .fieldrow>input{grid-column:1;width:100%;min-width:0;padding:11px;font-size:17px}
 #fields .fieldrow>input:nth-of-type(1){grid-row:3}
 #fields .fieldrow>input:nth-of-type(2){grid-row:5}
 #math .tablehead{display:none}
}
