/* CalcMango Interest Calculator — scoped under .cm-interest. Navy #0B1220 / cyan #22D3EE. */
.cm-interest { max-width: 760px; margin: 0 auto; font-family: inherit; color: #0B1220; box-sizing: border-box; }
.cm-interest *, .cm-interest *::before, .cm-interest *::after { box-sizing: border-box; }
.cm-interest-form { background: #F1F5F9; border: 1px solid #E2E8F0; border-radius: 12px; padding: 20px; }
.cm-interest-fieldset { border: 0; margin: 0 0 18px; padding: 0; }
.cm-interest-fieldset legend { font-weight: 700; font-size: 1.05rem; margin-bottom: 10px; }
.cm-interest-row { margin-bottom: 14px; }
.cm-interest-label { display: block; font-weight: 600; margin-bottom: 6px; }
.cm-interest input[type="number"], .cm-interest select { width: 100%; padding: 10px 12px; border: 1px solid #CBD5E1; border-radius: 8px; font-size: 1rem; background: #fff; color: #0B1220; }
.cm-interest input[type="number"]:focus, .cm-interest select:focus { outline: 2px solid #22D3EE; border-color: #22D3EE; }
.cm-interest-time-row .cm-interest-inline { display: inline-block; margin-right: 16px; font-weight: 600; }
.cm-interest-time-row .cm-interest-inline input { width: 90px; margin-right: 4px; }
.cm-interest-radio-row { display: flex; flex-wrap: wrap; gap: 14px; }
.cm-interest-radio { font-weight: 600; cursor: pointer; }
.cm-interest-hint { font-size: 0.875rem; color: #475569; margin: 6px 0 0; }
.cm-interest-submit { display: block; width: 100%; padding: 13px; background: #67E8F9; color: #0B1220; border: 0; border-radius: 8px; font-size: 1.05rem; font-weight: 700; cursor: pointer; }
.cm-interest-submit:hover, .cm-interest-submit:focus { background: #22D3EE; outline: none; }
.cm-interest-errors { margin-top: 16px; padding: 12px 14px; background: #FEF2F2; border: 1px solid #FECACA; color: #991B1B; border-radius: 8px; font-weight: 600; }
.cm-interest-results { margin-top: 24px; }
.cm-interest-results-title { font-size: 1.3rem; margin: 0 0 14px; }
.cm-interest-subhead { font-size: 1.05rem; margin: 24px 0 10px; }
.cm-interest-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; }
.cm-interest-card { background: #0B1220; color: #fff; border-radius: 10px; padding: 14px; }
.cm-interest-card-main { background: #0B1220; border-bottom: 4px solid #22D3EE; }
.cm-interest-card-label { display: block; font-size: 0.85rem; color: #CBD5E1; margin-bottom: 4px; }
.cm-interest-card-value { font-size: 1.35rem; font-weight: 700; }
.cm-interest-card-value small { font-size: 0.85rem; font-weight: 400; }
.cm-interest-table { width: 100%; border-collapse: collapse; font-size: 0.95rem; }
.cm-interest-table th, .cm-interest-table td { text-align: left; padding: 8px 10px; border-bottom: 1px solid #E2E8F0; }
.cm-interest-table thead th { background: #0B1220; color: #fff; }
.cm-interest-bar { display: flex; height: 22px; border-radius: 6px; overflow: hidden; margin-top: 24px; }
.cm-interest-bar-principal { background: #0B1220; height: 100%; }
.cm-interest-bar-interest { background: #22D3EE; height: 100%; }
.cm-interest-legend { font-size: 0.875rem; color: #475569; margin: 8px 0 0; }
.cm-interest-dot { display: inline-block; width: 12px; height: 12px; border-radius: 50%; vertical-align: middle; }
.cm-interest-dot-p { background: #0B1220; }
.cm-interest-dot-i { background: #22D3EE; }
.cm-interest-note { font-size: 0.9rem; color: #475569; line-height: 1.5; }
@media (max-width: 480px) {
  .cm-interest-form { padding: 14px; }
  .cm-interest-card-value { font-size: 1.15rem; }
}
