.home-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:1.5rem; align-items:start; }
.home-fields { display:grid; grid-template-columns:minmax(0,1fr); gap:1rem; margin-top:1rem; }
.home-wide { grid-column:1/-1; }
.home-help { font-size:.8125rem; line-height:1.6; color:var(--text-secondary); margin-top:.6rem; }
.home-buyer { border:0; border-top:2px solid var(--border-main); margin-top:1.2rem; padding-top:1rem; min-width:0; }
.home-buyer legend { font-weight:800; padding:0 .5rem; font-size:1rem; }
.home-fields label { padding-right:0; font-size:.8125rem; }
.home-fields label span { display:block; }
.home-fields input,.home-fields select { min-width:0; max-width:100%; }
.home-actions { display:flex; flex-wrap:wrap; gap:.75rem; }
.home-button,.home-secondary { padding:.8rem 1rem; min-height:44px; border-radius:1rem; border:2px solid var(--border-main); font-weight:800; }
.home-button { background:#176d68; color:white; }
.home-secondary { background:var(--bg-surface); color:var(--text-primary); }
.home-metrics { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.home-progress { height:12px; background:rgba(255,255,255,.25); border-radius:1rem; overflow:hidden; margin-top:1.2rem; }
.home-progress span { display:block; height:100%; background:#f7d777; width:0; }
.home-breakdown { margin-top:1rem; }
.home-breakdown div { display:flex; justify-content:space-between; gap:1rem; padding:.65rem 0; border-bottom:1px solid var(--border-main); font-size:.875rem; }
.home-breakdown dd { font-weight:800; text-align:right; }
.home-comparison { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.home-comparison > div { background:var(--bg-secondary); border:2px solid var(--border-main); border-radius:1rem; padding:1rem; }
.home-comparison h3 { font-size:.875rem; font-weight:800; }
.home-link,.home-sources a { color:var(--accent-emerald); text-decoration:underline; text-underline-offset:3px; font-weight:700; }
.home-link { font-size:.875rem; }
.home-table-scroll { overflow-x:auto; margin-top:1rem; }
.home-table-scroll caption { text-align:left; color:var(--text-secondary); font-size:.8125rem; margin-bottom:.75rem; }
.home-table-scroll th,.home-table-scroll td { white-space:nowrap; }
.home-warning { border-left:4px solid var(--accent-gold); background:var(--bg-secondary); border-radius:.5rem; padding:1rem; font-size:.875rem; line-height:1.6; }
.home-warning:empty { display:none; }
.home-faq details { border-bottom:1px solid var(--border-main); padding:1rem 0; }
.home-faq summary { cursor:pointer; font-weight:700; min-height:44px; }
.home-faq p { color:var(--text-secondary); line-height:1.7; margin-top:.75rem; }
.home-sources { list-style:disc; padding-left:1.25rem; font-size:.875rem; line-height:1.8; }
#home-methodology p { color:var(--text-secondary); line-height:1.7; }
#home-results { scroll-margin-top:7rem; min-width:0; }
@media(min-width:640px) { .home-fields { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(min-width:1100px) { .home-layout { grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); gap:2rem; } }
@media(max-width:380px) { .home-metrics,.home-comparison { grid-template-columns:minmax(0,1fr); } }
