/* BaansBuy features: loan calculator, guides, sell form, reviews (uses tokens from style.css) */
.calc{background:#fff;border:1px solid var(--border);border-radius:12px;padding:24px}
.calc h2{margin:0 0 4px;font-size:22px;color:var(--navy)}
.calc .sub{margin:0 0 16px;font-size:14px;color:var(--muted)}
.calc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
.calc label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#4A5565;font-weight:500}
.calc input,.calc select,.form input,.form select,.form textarea{font:inherit;font-size:16px;color:var(--ink);padding:11px 10px;border:1px solid #CBD3DD;border-radius:8px;background:#fff;width:100%}
.calc select,.form select{height:48px;-webkit-appearance:menulist}
.calc input,.form input{height:48px}
.calc input:focus,.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.calc-out{margin-top:18px;background:var(--navy);color:#fff;border-radius:12px;padding:18px 20px;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}
.calc-out small{display:block;font-size:13px;color:#B9C7D8}
.calc-out b{font-size:20px}
.calc-out .big b{font-size:30px;color:var(--accent)}
.calc-costs{margin-top:14px;border:1px solid var(--border);border-radius:10px;overflow:hidden}
.calc-costs div{display:flex;justify-content:space-between;gap:12px;padding:10px 14px;font-size:15px;border-top:1px solid #EEF1F5}
.calc-costs div:first-child{border-top:0;background:#F0F4F9;font-weight:600;color:var(--navy)}
.calc-costs .tot{font-weight:700;color:var(--navy)}
.calc .note{margin-top:12px}
.chk{flex-direction:row!important;align-items:center;gap:8px!important;font-size:14px!important;margin-top:12px}
.chk input{width:auto}

/* article / guide pages */
.art{max-width:820px}
.art .panel h2{margin-top:6px}
.art .panel h3{margin:18px 0 6px;font-size:18px;color:var(--navy)}
.art ol{margin:0;padding-left:22px}
.art ol li,.art ul li{font-size:16px;line-height:1.8;color:var(--body);margin-bottom:6px}
.art .stack{display:flex;flex-direction:column;gap:20px}
.callout{background:#FFF7DB;border:1px solid #F3DB8A;border-radius:10px;padding:14px 16px;font-size:15px;color:#5A4500}
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th,.tbl td{text-align:left;padding:10px 12px;border-top:1px solid #EEF1F5;vertical-align:top}
.tbl th{background:#F0F4F9;color:var(--navy)}
.tbl-wrap{overflow-x:auto}
.toc{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}
.toc a.box{text-decoration:none;display:block}
.toc a.box:hover{border-color:var(--navy)}
.toc .box small{display:block;margin-top:10px;font-weight:600;color:var(--navy)}
.meta{font-size:14px;color:var(--muted);margin:-10px 0 18px}
.related{display:flex;flex-wrap:wrap;gap:10px}
.related a{background:#fff;border:1px solid var(--border);border-radius:999px;padding:9px 14px;text-decoration:none;font-size:15px}

/* forms */
.form{display:flex;flex-direction:column;gap:12px}
.form .row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
.form label{display:flex;flex-direction:column;gap:4px;font-size:14px;color:#4A5565;font-weight:500}
.form textarea{min-height:96px;resize:vertical}
.form .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.form button{font:inherit;font-size:17px;font-weight:700;background:var(--accent);color:var(--navy);border:0;border-radius:10px;padding:14px;cursor:pointer}
.form button[disabled]{opacity:.6}
.form-msg{font-size:15px;min-height:1.2em}
.form-msg.ok{color:var(--line-green);font-weight:600}
.form-msg.err{color:#B42318}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;counter-reset:s}
.steps .box{position:relative;padding-top:46px}
.steps .box::before{counter-increment:s;content:counter(s);position:absolute;top:16px;left:22px;width:26px;height:26px;border-radius:50%;background:var(--accent);color:var(--navy);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:14px}

/* reviews */
.revs{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.rev{background:#fff;border:1px solid var(--border);border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:8px}
.rev .stars{color:var(--accent);font-size:18px;letter-spacing:2px}
.rev p{margin:0;font-size:15px;color:var(--body)}
.rev .who{font-size:14px;color:var(--muted)}
.empty{background:#fff;border:1px dashed #CBD3DD;border-radius:12px;padding:28px;text-align:center;color:var(--muted)}
.feed-empty{grid-column:1/-1}

@media (max-width:760px){
  .calc{padding:18px}
  .steps{grid-template-columns:1fr 1fr;gap:10px}
  .steps .box{padding:44px 14px 14px}
  .steps .box::before{left:14px;top:14px}
  .steps .box h3{font-size:16px}
  .steps .box p{font-size:14px}
  .calc-out .big b{font-size:26px}
}
