/* Finance Calculator Shared Styles */
.fin-wrap   { max-width:980px; }
.fin-grid   { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
@media(max-width:700px){ .fin-grid{ grid-template-columns:1fr; } }
.fin-card   { background:#fff; border:1px solid #e5e7eb; border-radius:12px; padding:24px; }
.fin-card h3 { margin:0 0 16px; font-size:15px; font-weight:700; color:#1e3a5f; border-bottom:2px solid #DA4453; padding-bottom:6px; }
.fin-field  { margin-bottom:14px; }
.fin-field label { display:block; font-size:13px; font-weight:600; color:#374151; margin-bottom:4px; }
.fin-field input,.fin-field select { width:100%; padding:9px 12px; border:1px solid #d1d5db; border-radius:8px; font-size:14px; background:#fff; transition:border-color .2s; box-sizing:border-box; }
.fin-field input:focus,.fin-field select:focus { outline:none; border-color:#DA4453; box-shadow:0 0 0 3px rgba(218,68,83,.1); }
.fin-field .hint { font-size:11px; color:#9ca3af; margin-top:3px; }
.fin-result-hero { background:linear-gradient(135deg,#1e3a5f 0%,#2563eb 100%); color:#fff; border-radius:14px; padding:28px; text-align:center; margin-bottom:18px; }
.fin-result-hero .big  { font-size:52px; font-weight:900; line-height:1.1; }
.fin-result-hero .sub  { font-size:15px; opacity:.85; margin-top:6px; }
.fin-kpi    { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin-bottom:18px; }
@media(max-width:650px){ .fin-kpi{ grid-template-columns:1fr 1fr; } }
.fin-kpi-box { border-radius:10px; padding:14px; text-align:center; }
.fin-kpi-box.blue   { background:#eff6ff; border:1px solid #bfdbfe; }
.fin-kpi-box.green  { background:#f0fdf4; border:1px solid #bbf7d0; }
.fin-kpi-box.amber  { background:#fffbeb; border:1px solid #fde68a; }
.fin-kpi-box.red    { background:#fff1f2; border:1px solid #fecdd3; }
.fin-kpi-box.purple { background:#faf5ff; border:1px solid #e9d5ff; }
.fin-kpi-box.teal   { background:#f0fdfa; border:1px solid #99f6e4; }
.fin-kpi-label { font-size:11px; color:#6b7280; text-transform:uppercase; letter-spacing:.4px; margin-bottom:4px; }
.fin-kpi-value { font-size:22px; font-weight:800; color:#111827; }
.fin-kpi-value.sm { font-size:16px; }
.break-bar  { height:20px; border-radius:6px; display:flex; overflow:hidden; margin:10px 0; }
.break-bar div { height:100%; }
.break-legend { font-size:12px; color:#555; }
.break-legend span { display:inline-block; width:12px; height:12px; border-radius:2px; vertical-align:middle; margin-right:4px; }
.fin-table  { width:100%; border-collapse:collapse; font-size:13px; }
.fin-table th { background:#1e3a5f; color:#fff; padding:8px 10px; text-align:right; }
.fin-table th:first-child { text-align:left; }
.fin-table td { padding:7px 10px; border-bottom:1px solid #f3f4f6; text-align:right; }
.fin-table td:first-child { text-align:left; font-weight:600; }
.fin-table tr:hover td { background:#eff6ff; }
.fin-table tr.yr-row td { background:#f0fdf4; font-weight:700; }
.info-card  { background:#fafafa; border:1px solid #e5e7eb; border-radius:8px; padding:14px 16px; margin-top:12px; }
.info-card h4 { margin:0 0 8px; font-size:14px; color:#1e3a5f; }
.ref-table  { width:100%; border-collapse:collapse; font-size:13px; }
.ref-table th { background:#f3f4f6; padding:7px 10px; text-align:left; border-bottom:2px solid #e5e7eb; }
.ref-table td { padding:7px 10px; border-bottom:1px solid #f3f4f6; }
.ref-table tr:hover td { background:#eff6ff; }
.formula-box { font-family:monospace; background:#f9fafb; border:1px solid #e5e7eb; padding:10px 14px; border-radius:6px; font-size:13px; color:#1e3a5f; margin:6px 0; }
.toggle-link { cursor:pointer; color:#2563eb; font-size:13px; font-weight:600; margin-top:8px; display:inline-block; text-decoration:underline; }
.calc-btn   { background:#DA4453; color:#fff; border:none; border-radius:8px; padding:14px 20px; font-size:15px; font-weight:700; cursor:pointer; width:100%; transition:background .2s; letter-spacing:.3px; }
.calc-btn:hover { background:#b83040; }
.updated-badge { font-size:11px; color:#9ca3af; background:#f9fafb; border:1px solid #e5e7eb; border-radius:4px; padding:4px 10px; display:inline-block; margin-top:6px; }
.alert-box  { padding:12px 16px; border-radius:8px; margin-bottom:14px; font-size:13px; }
.alert-box.warn { background:#fffbeb; border:1px solid #fde68a; color:#92400e; }
.alert-box.good { background:#f0fdf4; border:1px solid #bbf7d0; color:#166534; }
/* Country selector nav */
.country-nav { display:flex; flex-wrap:wrap; gap:8px; margin:10px 0 16px; }
.country-nav a,.country-nav span { display:inline-flex; align-items:center; gap:5px; padding:7px 14px; border-radius:20px; font-size:13px; font-weight:600; text-decoration:none; border:2px solid #e5e7eb; background:#fff; color:#374151; transition:all .2s; cursor:pointer; }
.country-nav a:hover { border-color:#DA4453; color:#DA4453; background:#fff1f2; }
.country-nav span.active { background:#1e3a5f; color:#fff; border-color:#1e3a5f; cursor:default; }
