/* Basic modern styling; ensure preset buttons show visible text (no hover-only) */
.fif-advancer-calculator{ 
  --fif-primary: #0b4aa6; /* Finance In Florida blue-ish */
  --fif-bg: #f7f9fc;
  --fif-card: #ffffff;
  --fif-border: #d9e2ef;
  --radius: 14px;
  background: var(--fif-bg);
  border: 1px solid var(--fif-border);
  border-radius: var(--radius);
  padding: 18px;
  box-shadow: 0 6px 18px rgba(0,0,0,0.06);
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
}

.fif-header h2{
  margin: 0 0 6px 0;
  color: var(--fif-primary);
  font-size: 1.35rem;
}
.fif-sub{ margin: 0 0 14px 0; color: #334e68; font-size: 0.92rem; }

.fif-form .fif-grid{
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 12px;
}
.fif-form label{
  display: flex; flex-direction: column; gap: 6px;
}
.fif-form label span{ font-weight: 600; color: #243b53; }
.fif-form input{
  padding: 10px 12px;
  border: 1px solid var(--fif-border);
  border-radius: 10px;
  background: #fff; color: #102a43;
}

.fif-index-presets{
  display: flex; align-items: center; gap: 8px; margin-top: 10px; flex-wrap: wrap;
}
.fif-presets-title{ font-weight: 600; color:#243b53; margin-right: 4px; }
.fif-index-btn{
  border: 1px solid var(--fif-border);
  background: #ffffff;
  color: #0b4aa6; /* ensure visible text at rest */
  padding: 8px 12px;
  border-radius: 999px;
  cursor: pointer;
  transition: transform .05s ease, background .2s ease, color .2s ease;
  font-weight: 600;
}
.fif-index-btn:hover{ background: #eaf1ff; transform: translateY(-1px); }
.fif-note{ color:#486581; }

.fif-actions{ margin-top: 12px; display:flex; gap:10px; }
.fif-actions button{
  background: var(--fif-primary);
  color: #fff;
  border: none;
  padding: 10px 14px;
  border-radius: 10px;
  font-weight: 700;
  cursor: pointer;
}
.fif-actions button.alt{ background:#6b7c93; }

.fif-cards{ display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:12px; margin-top: 16px; }
.fif-card{ background: var(--fif-card); border:1px solid var(--fif-border); border-radius: var(--radius); padding: 14px; }
.fif-card-title{ color:#486581; font-size:.85rem; }
.fif-card-value{ color:#102a43; font-weight:800; font-size:1.15rem; margin:4px 0; }
.fif-card-sub{ color:#627d98; font-size:.8rem; }

.fif-schedule-wrap{ margin-top: 18px; }
.fif-table{ width:100%; border-collapse: collapse; background:#fff; border-radius: var(--radius); overflow: hidden; border:1px solid var(--fif-border); }
.fif-table th, .fif-table td{ padding: 10px 12px; border-bottom:1px solid var(--fif-border); text-align:right; }
.fif-table th:nth-child(1), .fif-table td:nth-child(1){ text-align:center; }
.fif-table thead th{ background:#f0f4f8; color:#334e68; font-weight:700; }
.fif-table tbody tr:hover{ background:#f8fbff; }

/* Mobile */
@media (max-width: 800px){
  .fif-form .fif-grid{ grid-template-columns: 1fr; }
  .fif-cards{ grid-template-columns: 1fr; }
}
