.sidebar-card.fk-mortgage { background:#faf9f5; border-color:#d8ddd7; scroll-margin-top:90px; }
.fk-mortgage .fk-mortgage-eyebrow { color:#876c29; font-size:.68rem; letter-spacing:.1em; font-weight:700; margin:0 0 8px; }
.fk-mortgage h3 { margin-bottom:8px; }
.fk-mortgage-intro { font-size:.83rem; color:#52615a; line-height:1.55; margin:0 0 16px; }
.fk-mortgage-result { display:flex; flex-direction:column; gap:5px; background:#2c5545; color:white; border-radius:10px; padding:18px; margin-bottom:18px; }
.fk-mortgage-result span { font-size:.75rem; }
.fk-mortgage-result strong { font-size:clamp(1.8rem,3vw,2.35rem); line-height:1.2; overflow-wrap:anywhere; }
.fk-mortgage-fields { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:13px 10px; }
.fk-mortgage-fields label { font-size:.75rem; font-weight:600; color:#34443c; min-width:0; }
.fk-mortgage-wide { grid-column:1 / -1; }
.fk-mortgage-fields input,.fk-mortgage-fields select { display:block; box-sizing:border-box; width:100%; min-width:0; min-height:44px; border:1px solid #bbc7be; border-radius:7px; background:#fff; color:#263d32; font:inherit; font-size:16px; padding:9px; margin-top:6px; }
.fk-mortgage input:focus,.fk-mortgage select:focus,.fk-mortgage button:focus-visible,.fk-mortgage summary:focus-visible { outline:2px solid #a58742; outline-offset:2px; }
.fk-mortgage .fk-mortgage-note,.fk-mortgage-assumptions { font-size:.73rem; line-height:1.55; color:#52615a; }
.fk-mortgage-note { margin:12px 0 8px; }
.fk-mortgage-reset { padding:4px 0; border:0; background:none; color:#2c5545; text-decoration:underline; font:inherit; font-size:.75rem; cursor:pointer; min-height:32px; }
.fk-mortgage-error { color:#8b2525; font-size:.8rem; line-height:1.5; }
.fk-mortgage-breakdown { margin:14px 0; padding-top:12px; border-top:1px solid #d8ddd7; font-size:.75rem; }
.fk-mortgage-breakdown div { display:flex; justify-content:space-between; gap:10px; margin:7px 0; }
.fk-mortgage-breakdown dd { margin:0; font-weight:600; text-align:right; }
.fk-mortgage-check { display:flex; gap:8px; align-items:flex-start; font-size:.8rem; margin-top:14px; }
.fk-mortgage-assumptions summary { cursor:pointer; color:#2c5545; font-weight:600; padding:8px 0; }
.fk-mortgage-options { margin-top:10px; }
.fk-mortgage-assumptions a { color:#2c5545; text-decoration:underline; }
.fk-mortgage [hidden] { display:none !important; }
