/*
 * Finobazaar Credit. Built on the theme's tokens and components
 * (fb-card colours, fb-badge, fb-notice, fb-table, fb-field); brand values
 * are fallbacks only. Mobile first, no script needed.
 */
.fbcr {
	--fbcr-green: var(--fb-brand-green, #0b5f55);
	--fbcr-green-dark: var(--fb-brand-green-dark, #084a42);
	--fbcr-green-light: var(--fb-brand-green-light, #e3f0ed);
	--fbcr-surface: var(--fb-brand-green-surface, #f1f7f5);
	--fbcr-navy: var(--fb-heading, #13303f);
	--fbcr-gold: var(--fb-brand-gold, #c68a2e);
	--fbcr-text: var(--fb-text, #1e2a30);
	--fbcr-muted: var(--fb-text-2, #56626a);
	--fbcr-line: var(--fb-border, #e6e1d7);
	--fbcr-r: var(--fb-r-md, 12px);
	color: var(--fbcr-text);
	font-family: var(--fb-font, "IBM Plex Sans", "IBM Plex Sans Devanagari", "Noto Sans Devanagari", system-ui, sans-serif);
	font-size: 1rem;
	line-height: 1.6;
}
.fbcr p { margin: 0 0 .75rem; }
.fbcr h2 { font-size: 1.3125rem; line-height: 1.3; color: var(--fbcr-navy); margin: 0 0 .75rem; }
.fbcr h3 { font-size: 1.0625rem; line-height: 1.35; color: var(--fbcr-navy); margin: 1.25rem 0 .5rem; }
.fbcr-lead { font-size: 1.0625rem; color: var(--fbcr-muted); max-width: 46rem; }
.fbcr-muted { color: var(--fbcr-muted); }
.fbcr-small { font-size: .875rem; }
.fbcr-optional { font-weight: 400; color: var(--fbcr-muted); font-size: .875em; }
.fbcr-sec { margin: 2rem 0; }
.fbcr-more { font-weight: 600; color: var(--fbcr-green); text-underline-offset: 3px; }

/* Lists */
.fbcr-list { margin: 0 0 1rem; padding-inline-start: 1.25rem; }
.fbcr-list li { margin: 0 0 .4rem; padding-inline-start: .15rem; }
.fbcr-list li::marker { color: var(--fbcr-green); }
ol.fbcr-list li::marker { font-weight: 600; }

/* Cards (links) */
.fbcr-cards { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; gap: .75rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 40em) { .fbcr-cards--2, .fbcr-cards--3 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64em) { .fbcr-cards--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.fbcr-cards li { margin: 0; }
.fbcr-card { display: grid; grid-template-columns: auto 1fr; column-gap: .75rem; row-gap: .2rem; align-items: start; height: 100%; padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--fbcr-line); border-radius: var(--fbcr-r); color: var(--fbcr-text); text-decoration: none; box-sizing: border-box; }
.fbcr-card:hover { border-color: var(--fb-brand-green-line, #bfd9d3); box-shadow: var(--fb-sh-1, 0 1px 2px rgba(17, 34, 68, .06)); }
.fbcr-card:focus-visible { outline: 3px solid var(--fb-focus, #084a42); outline-offset: 2px; }
.fbcr-card__icon { grid-row: span 2; display: inline-flex; width: 2.25rem; height: 2.25rem; border-radius: 10px; background: var(--fbcr-green-light); color: var(--fbcr-green-dark); align-items: center; justify-content: center; }
.fbcr-card__icon .fb-icon, .fbcr-card__icon svg { width: 1.2rem; height: 1.2rem; }
.fbcr-card__title { font-weight: 600; color: var(--fbcr-green-dark); line-height: 1.35; }
.fbcr-card__text { grid-column: 2; font-size: .9rem; color: var(--fbcr-muted); line-height: 1.45; }
.fbcr-card:not(:has(.fbcr-card__icon)) { grid-template-columns: 1fr; }
.fbcr-card:not(:has(.fbcr-card__icon)) .fbcr-card__text { grid-column: 1; }

/* Boxes */
.fbcr-two { display: grid; gap: 1rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 48em) { .fbcr-two { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fbcr-box { background: var(--fbcr-surface); border-radius: var(--fbcr-r); padding: 1rem 1.25rem; margin: 0; }
.fbcr-two .fbcr-sec { margin: 0; }

/* Key terms */
.fbcr-terms { margin: 0; display: grid; gap: .5rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 48em) { .fbcr-terms { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fbcr-terms > div { border-inline-start: 3px solid var(--fbcr-gold); padding: .25rem 0 .25rem .85rem; }
.fbcr-terms dt { font-weight: 600; color: var(--fbcr-navy); }
.fbcr-terms dd { margin: 0; color: var(--fbcr-text); }

/* Facts and rules */
.fbcr-ref { font-size: .8125rem; font-weight: 600; text-decoration: none; color: var(--fbcr-green); }
.fbcr-rules { border-top: 1px solid var(--fbcr-line); margin-top: 1rem; padding-top: .5rem; font-size: .9rem; }
.fbcr-rules h3 { margin-top: .5rem; font-size: .9375rem; }
.fbcr-rules ol { margin: 0 0 .5rem; padding-inline-start: 1.25rem; }
.fbcr-rules li { margin-bottom: .4rem; }
.fbcr-rules li:target { background: var(--fb-brand-gold-light, #faf0df); }

/* Official resources */
.fbcr-reslist { list-style: none; margin: 0; padding: 0; display: grid; gap: .6rem; }
.fbcr-reslist li { display: grid; gap: .1rem; padding: .75rem 1rem; border: 1px solid var(--fbcr-line); border-radius: var(--fbcr-r); background: #fff; }
.fbcr-reslist a { font-weight: 600; color: var(--fbcr-green-dark); overflow-wrap: anywhere; }
.fbcr-reslist__what { color: var(--fbcr-text); font-size: .9375rem; }
.fbcr-reslist__extra { color: var(--fbcr-muted); font-size: .875rem; }

/* Notices */
.fbcr-disclaimer { margin-top: 2rem; }
.fbcr-disclaimer p:last-child { margin-bottom: 0; }
.fbcr-ok { border-inline-start-color: var(--fb-ok, #1e6b3f); background: var(--fb-ok-bg, #e9f5ee); }
.fbcr-bad { border-inline-start-color: var(--fb-error, #a12a2a); background: var(--fb-error-bg, #fbeaea); }
.fbcr-warn { border-inline-start-color: var(--fb-warn-dot, #b97800); background: var(--fb-warn-bg, #fdf0d2); }
.fbcr-empty { flex-direction: column; gap: 0; }
.fb-notice p:last-child { margin-bottom: 0; }

/* Forms */
.fbcr-form { background: #fff; border: 1px solid var(--fbcr-line); border-radius: var(--fbcr-r); padding: 1rem; margin: 1rem 0 1.5rem; }
@media (min-width: 40em) { .fbcr-form { padding: 1.25rem 1.5rem; } }
.fbcr-grid2 { display: grid; gap: 0 1.25rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 48em) { .fbcr-grid2 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.fbcr-grid5 { display: grid; gap: 0 1rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 40em) { .fbcr-grid5 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64em) { .fbcr-grid5 { grid-template-columns: 2fr repeat(4, minmax(0, 1fr)); } }
.fbcr-field { margin-bottom: 1rem; }
.fbcr-field .fb-input, .fbcr-field .fb-select { width: 100%; box-sizing: border-box; }
.fbcr-field--checks { grid-column: 1 / -1; }
.fbcr-checks { border: 0; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem 1.25rem; }
.fbcr-checks legend { width: 100%; margin-bottom: .35rem; }
.fbcr-quote { border: 1px solid var(--fbcr-line); border-radius: 10px; padding: .75rem 1rem 0; margin: 0 0 1rem; }
.fbcr-quote legend { font-weight: 600; padding: 0 .35rem; color: var(--fbcr-navy); }
.fbcr-error { color: var(--fb-error, #a12a2a); font-size: .875rem; margin: .35rem 0 0; font-weight: 500; }
.fbcr-actions { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin: .25rem 0 .75rem; }
.fbcr-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.fbcr-pick { border: 0; margin: 0 0 1rem; padding: 0; display: grid; gap: .4rem; }
.fbcr-form--compare .fb-field { max-width: 24rem; }

/* Result */
.fbcr-result { border: 1px solid var(--fbcr-line); border-top: 3px solid var(--fbcr-green); border-radius: var(--fbcr-r); background: #fff; padding: 1rem 1.1rem 1.25rem; margin: 0 0 2rem; }
@media (min-width: 40em) { .fbcr-result { padding: 1.25rem 1.5rem 1.5rem; } }
.fbcr-result:focus { outline: none; }
.fbcr-result h2 { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.fbcr-summary { margin: 0 0 1rem; display: grid; gap: .6rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 40em) { .fbcr-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64em) { .fbcr-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.fbcr-summary > div { background: var(--fbcr-surface); border-radius: 10px; padding: .7rem .85rem; }
.fbcr-summary dt { font-size: .8125rem; color: var(--fbcr-muted); line-height: 1.35; }
.fbcr-summary dd { margin: .15rem 0 0; font-weight: 600; font-size: 1.125rem; color: var(--fbcr-navy); font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.fbcr-summary .is-main { background: var(--fbcr-green); }
.fbcr-summary .is-main dt { color: rgba(255, 255, 255, .85); }
.fbcr-summary .is-main dd { color: #fff; font-size: 1.3125rem; }

/* Tables */
.fbcr .fb-table-wrap { margin: 0 0 .75rem; position: relative; }
.fbcr .fb-table th, .fbcr .fb-table td { vertical-align: top; text-align: start; }
.fbcr-table tbody th { font-weight: 600; color: var(--fbcr-navy); }
.fbcr-kv { min-width: 0; }
.fbcr-kv th { width: 40%; }
.fbcr-ctable thead th { min-width: 12rem; }
.fbcr-ctable thead tr > :first-child { position: sticky; left: 0; z-index: 2; background: var(--fb-ivory, #faf8f4); min-width: 9rem; box-shadow: 1px 0 0 var(--fbcr-line); }
.fbcr-ctable tbody th { position: sticky; left: 0; background: #fff; z-index: 1; min-width: 9rem; box-shadow: 1px 0 0 var(--fbcr-line); }
.fbcr-na { color: var(--fbcr-muted); font-style: italic; }
.fbcr .fb-table-wrap:focus-visible { outline: 3px solid var(--fb-focus, #084a42); outline-offset: 2px; }

/* Directory */
.fbcr-filter .fb-chips { list-style: none; margin: 0 0 1rem; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; }
.fbcr-dir { list-style: none; margin: 0 0 1rem; padding: 0; border-top: 1px solid var(--fbcr-line); }
.fbcr-dir__item { display: flex; flex-wrap: wrap; gap: .25rem .75rem; align-items: center; padding: .75rem 0; border-bottom: 1px solid var(--fbcr-line); }
.fbcr-dir__name { font-weight: 600; color: var(--fbcr-green-dark); flex: 1 1 100%; }
@media (min-width: 48em) { .fbcr-dir__name { flex: 1 1 auto; } }
.fbcr-pages { display: flex; gap: .75rem; align-items: center; flex-wrap: wrap; margin: 1rem 0; }

/* Inside the theme's article: a wider column for tools and tables. */
@media (min-width: 64rem) {
	.fb-article--solo:has(.fbcr) { grid-template-columns: minmax(0, 72rem); }
}
.fb-prose .fbcr p, .fb-prose .fbcr * + p { margin-block: 0 .75rem; }
.fb-prose .fbcr h2 { margin: 0 0 .75rem; }
.fb-prose .fbcr h3 { margin: 1.25rem 0 .5rem; }
.fb-prose .fbcr .fbcr-cards, .fb-prose .fbcr .fbcr-reslist, .fb-prose .fbcr .fbcr-dir, .fb-prose .fbcr .fb-chips { padding-inline-start: 0; }
.fb-prose .fbcr li + li { margin-block-start: 0; }
.fb-prose .fbcr .fbcr-list li + li { margin-block-start: .4rem; }
.fb-prose .fbcr a.fbcr-card, .fb-prose .fbcr a.fb-btn, .fb-prose .fbcr a.fb-chip { text-decoration: none; }
.fb-prose .fbcr .fb-field__hint, .fb-prose .fbcr .fbcr-error { margin-block: .35rem 0; }
.fb-prose .fbcr dl, .fb-prose .fbcr dd { margin-inline-start: 0; }
/* The focusable .fb-table-wrap scrolls; the theme's prose rule would make the table a second, unfocusable scroll box. */
.fb-prose .fbcr .fb-table-wrap > .fb-table { display: table; max-width: none; overflow: visible; }

/* 1.1: category jump list, enquiry types */
.fbcr-jump ul { list-style: none; margin: 0 0 1.5rem; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.fbcr-jump a { display: inline-block; padding: .3rem .75rem; border: 1px solid var(--fbcr-line); border-radius: 999px; color: var(--fbcr-green-dark); text-decoration: none; font-size: .9375rem; background: #fff; }
.fbcr-jump a:hover { border-color: var(--fbcr-green); }
.fbcr-jump a:focus-visible { outline: 3px solid var(--fb-focus, #1a73e8); outline-offset: 2px; }
.fbcr-cat { scroll-margin-top: 5rem; }
.fbcr-cat .fbcr-tcards { margin-bottom: .75rem; }
.fbcr-types .fbcr-card.is-current { border-color: var(--fbcr-green); box-shadow: inset 0 0 0 1px var(--fbcr-green); background: var(--fbcr-surface); }
.fbcr-form--enquiry h2 { margin-top: 0; }
.fb-prose .fbcr a.fb-btn { color: var(--fb-btn-fg); }
.fb-prose .fbcr .fbcr-jump ul { padding-inline-start: 0; }

@media print {
	.fbcr-form, .fbcr-enquiry, .fbcr-cards, .fbcr-filter, .fbcr-pages { display: none; }
	.fbcr .fb-table-wrap { overflow: visible; border: 0; }
}
@media (prefers-reduced-motion: reduce) {
	.fbcr * { transition: none !important; }
}

/* Long status labels wrap on small screens (the theme badge does not). */
.fbcr .fb-badge { white-space: normal; max-width: 100%; }

/* Tool cards on the main page: what it is for, what you need, the action. */
.fbcr-tcards { list-style: none; margin: 0 0 1rem; padding: 0; display: grid; gap: .75rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 48em) { .fbcr-tcards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 72em) { .fbcr-tcards { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.fbcr-tcards > li { margin: 0; }
.fbcr-tcard > article { height: 100%; box-sizing: border-box; display: flex; flex-direction: column; gap: .5rem; padding: 1rem 1.1rem; background: #fff; border: 1px solid var(--fbcr-line); border-radius: var(--fbcr-r); }
.fbcr .fbcr-tcard__title { display: flex; gap: .65rem; align-items: center; margin: 0; font-size: 1.0625rem; color: var(--fbcr-green-dark); }
.fbcr-tcard__title .fbcr-card__icon { grid-row: auto; flex: none; }
.fbcr .fbcr-tcard__text { margin: 0; color: var(--fbcr-muted); font-size: .9375rem; }
.fbcr-tcard__meta { margin: 0; display: grid; gap: .35rem; font-size: .875rem; }
.fbcr-tcard__meta dt { font-weight: 600; color: var(--fbcr-navy); }
.fbcr-tcard__meta dd { margin: 0; color: var(--fbcr-text); }
.fbcr .fbcr-tcard__actions { margin: auto 0 0; padding-top: .35rem; display: flex; flex-wrap: wrap; gap: .5rem 1rem; align-items: center; }
.fbcr-tcard__guide { font-size: .875rem; color: var(--fbcr-green); text-underline-offset: 3px; }
.fb-prose .fbcr .fbcr-tcards { padding-inline-start: 0; }

/* Debts entered row by row. */
.fbcr-row { border: 1px solid var(--fbcr-line); border-radius: 10px; padding: .75rem 1rem 0; margin: 0 0 1rem; min-width: 0; }
.fbcr-row legend { font-weight: 600; padding: 0 .35rem; color: var(--fbcr-navy); }
.fbcr-grid4 { display: grid; gap: 0 1rem; grid-template-columns: minmax(0, 1fr); }
@media (min-width: 40em) { .fbcr-grid4 { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 64em) { .fbcr-grid4 { grid-template-columns: 1.4fr repeat(3, minmax(0, 1fr)); } }
.fbcr-catalog th[scope="row"] { font-weight: 500; }
.fbcr-result h3 { margin-top: 1.5rem; }
/* The theme's ".fb-prose a" colour would win over ".fb-btn" (higher specificity): keep button text readable. */
.fb-prose .fbcr a.fb-btn, .fb-prose .fbcr a.fb-btn:hover, .fb-prose .fbcr a.fb-btn:visited { color: var(--fb-btn-fg); text-decoration: none; }
