.reference-page{padding-top:32px}.reference-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:24px 0}.reference-controls label{display:flex;flex-direction:column;gap:8px}.reference-controls select,.reference-controls input{width:100%;padding:12px;border:1px solid #b6c1b5;border-radius:6px;background:#fff}.reference-note{padding:18px 22px;background:#f6f1e5;border-left:4px solid #b09247;line-height:1.8}.reference-totals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.reference-totals article{background:#edf2e9;border-radius:10px;padding:20px}.reference-totals strong{display:block;font-size:1.45rem;margin-top:10px}.reference-table-wrap{overflow:auto;margin:18px 0 30px;max-width:100%}.reference-table{width:100%;border-collapse:collapse;font-size:.92rem}.reference-table th,.reference-table td{padding:12px;border-bottom:1px solid #d6ddd2;text-align:left;vertical-align:top}.reference-table thead{background:#2c4a2b;color:#fff}.reference-table .number{text-align:right;white-space:nowrap}.reference-table td:last-child{min-width:180px}.reference-table caption{text-align:left;padding:10px 0;font-weight:700}.reference-section{margin:42px 0}.reference-links{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0}.reference-checks{display:flex;flex-wrap:wrap;gap:10px;padding:16px 0}.reference-checks label{border:1px solid #bbc9b8;padding:9px 12px;border-radius:20px}.reference-source-list{font-size:.9rem;line-height:1.8}.reference-warn{color:#963c1d;font-weight:600}.reference-select-label{display:flex;gap:16px;align-items:center;margin:16px 0}.reference-select-label select{padding:10px;max-width:200px}.reference-table .selected{background:#eaf0e7}@media(max-width:720px){.reference-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.reference-totals{grid-template-columns:1fr}.reference-totals strong{font-size:1.3rem}.reference-note{padding:14px}.reference-table{min-width:680px}.reference-page h1{font-size:2rem}.reference-controls label{font-size:.9rem}}

/* Preserve desktop tables; mobile rows carry their own labels. */
.reference-page{padding-top:28px}.reference-assumptions{margin:16px 0}.reference-controls{margin:20px 0}.reference-totals{margin:20px 0}.reference-section>summary{min-height:44px;font-size:19px;font-weight:600;cursor:pointer}.reference-source-list{font-size:14px}.reference-checks label{min-height:44px;display:flex;align-items:center;gap:6px}.reference-checks input{width:20px;height:20px;accent-color:#2c4a2b}.reference-controls label{font-size:15px}.reference-controls select{font-size:16px;min-height:48px}.reference-totals small{font-size:14px}
@media(max-width:720px){.reference-totals{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.reference-totals article{padding:14px;font-size:14px}.reference-totals article:last-child{grid-column:1/-1;grid-row:1}.reference-totals strong{font-size:20px;overflow-wrap:anywhere}.reference-table-wrap{overflow:visible;margin-bottom:18px}.reference-table{min-width:0;width:100%;font-size:15px;display:block}.reference-table caption{display:block;font-size:14px}.reference-table thead{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.reference-table tbody{display:block}.reference-table tr{display:block;margin-bottom:12px;border:1px solid #d6ddd2;border-radius:12px;background:white;padding:14px}.reference-table td{display:block;min-width:0!important;padding:7px 0;border:0;overflow-wrap:anywhere}.reference-table td:before{content:attr(data-label);display:block;font-size:14px;color:#52624f;margin-bottom:3px}.reference-table td:first-child{font-size:18px;font-weight:700;color:#2c4a2b}.reference-table td:first-child:before{display:none}.reference-table td:last-child{padding-bottom:0}.reference-section{margin:28px 0}.reference-page h1{font-size:28px}.reference-controls{gap:12px}.reference-totals strong{font-size:19px}}
