/* IDFC home page blocks (Procurement Rules 1.4.0; bulletin 1.4.1; cards 1.4.3). Scoped to .idfc-hb so Avada styles stay untouched.
   Colours and fonts follow the site: blue #06549c, green #32b34c, Libre Franklin headings, Open Sans text.
   Override any token on .idfc-hb in Avada's custom CSS if the brand changes. */
.idfc-hb {
	--idfc-blue: #06549c; --idfc-blue-d: #043a6c; --idfc-blue-t: #e6eef6; --idfc-green: #32b34c; --idfc-green-d: #23863a;
	--idfc-ink: #222; --idfc-text: #444; --idfc-muted: #686d74; --idfc-rule: #e1e1e1; --idfc-rule-2: #c9d3de; --idfc-paper: #fff;
	--idfc-today: #b42318; --idfc-soon: #9a4a06; --idfc-soon-rule: #d9822b;
	--idfc-hf: var(--awb-typography1-font-family, "Libre Franklin"), "Libre Franklin", "Helvetica Neue", Arial, sans-serif;
	color: var(--idfc-text); font-size: 16px; line-height: 1.6; text-align: left; position: relative;
}
.idfc-hb *, .idfc-hb *::before, .idfc-hb *::after { box-sizing: border-box; }
.idfc-hb ul, .idfc-hb ol, .idfc-hb li { list-style: none; margin: 0; padding: 0; }
.idfc-hb li::before { content: none; }
.idfc-hb p { margin: 0; }
.idfc-hb h3 { margin: 0; padding: 0; }
.idfc-hb a { color: var(--idfc-blue); }
.idfc-hb svg { fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.idfc-hb button, .idfc-hb select, .idfc-hb input { font: inherit; letter-spacing: inherit; text-transform: none; margin: 0; box-shadow: none; min-height: 0; line-height: 1.3; }
.idfc-hb [hidden] { display: none !important; }
.idfc-hb :focus-visible { outline: 3px solid var(--idfc-green); outline-offset: 2px; }
.idfc-vh { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; }

/* shared */
.idfc-mast { display: flex; justify-content: space-between; align-items: baseline; gap: 6px 16px; flex-wrap: wrap; border-bottom: 3px double var(--idfc-ink); padding-bottom: 8px; }
.idfc-hb .idfc-mast h3 { font: 600 13px/1.2 var(--idfc-hf); letter-spacing: .14em; text-transform: uppercase; color: var(--idfc-ink); }
.idfc-mast > span { font-size: 13px; color: var(--idfc-muted); }
.idfc-ref { font: 600 14px/1.4 var(--idfc-hf); color: var(--idfc-blue); letter-spacing: .02em; font-variant-numeric: tabular-nums; }
.idfc-hb .idfc-btn { display: inline-flex; align-items: center; gap: 8px; border-radius: 4px; padding: 8px 16px; font: 500 15px/1.3 var(--idfc-hf); text-decoration: none; cursor: pointer; border: 1px solid var(--idfc-blue); background: var(--idfc-paper); color: var(--idfc-blue); }
.idfc-hb .idfc-btn:hover { background: var(--idfc-blue-t); }
.idfc-hb .idfc-btn.is-pri { background: var(--idfc-blue); color: #fff; }
.idfc-hb .idfc-btn.is-pri:hover { background: var(--idfc-blue-d); }
.idfc-hb .idfc-btn.is-go { background: var(--idfc-green-d); border-color: var(--idfc-green-d); color: #fff; }
.idfc-hb .idfc-btn.is-go:hover { filter: brightness(.92); }
.idfc-hb .idfc-btn svg { width: 16px; height: 16px; flex: none; }
.idfc-acts { display: flex; gap: 10px; flex-wrap: wrap; }
.idfc-board-foot { display: flex; gap: 10px 24px; flex-wrap: wrap; padding-top: 18px; font-size: 15px; }
.idfc-hb .idfc-board-foot a { font-weight: 600; text-decoration: none; }
.idfc-hb .idfc-board-foot a:hover { text-decoration: underline; }
.idfc-later { font-size: 14px; color: var(--idfc-muted); padding-top: 12px; }

/* [idfc_tender_search] */
.idfc-find { width: 100%; max-width: 640px; margin: 0 auto; }
.idfc-find-box { position: relative; }
.idfc-find form { display: flex; background: #fff; border-radius: 4px; padding: 5px; gap: 6px; border: 1px solid transparent; }
.idfc-find.is-light form { border-color: var(--idfc-rule-2); }
.idfc-find form:focus-within { box-shadow: 0 0 0 3px rgba(50, 179, 76, .55); }
.idfc-hb.idfc-find input { flex: 1; min-width: 0; border: 0; outline: 0; padding: 10px 12px; color: var(--idfc-ink); background: transparent; font-size: 16px; height: auto; }
.idfc-hb.idfc-find input::-webkit-search-cancel-button { cursor: pointer; }
.idfc-hb.idfc-find button { border: 0; border-radius: 4px; background: var(--idfc-green); color: #fff; padding: 0 22px; font: 500 16px var(--idfc-hf); cursor: pointer; }
.idfc-hb.idfc-find button:hover { background: var(--idfc-green-d); }
.idfc-find-res { position: absolute; left: 0; right: 0; top: calc(100% + 6px); background: #fff; border-radius: 4px; box-shadow: 0 12px 32px rgba(0, 0, 0, .25); z-index: 50; max-height: 380px; overflow: auto; text-align: left; }
.idfc-hb .idfc-find-res a { display: grid; grid-template-columns: 160px minmax(0, 1fr) auto; gap: 12px; padding: 10px 14px; border-bottom: 1px solid var(--idfc-rule); text-decoration: none; color: var(--idfc-text); font-size: 14px; line-height: 1.45; align-items: baseline; }
.idfc-hb .idfc-find-res a[aria-selected="true"], .idfc-hb .idfc-find-res a:hover { background: var(--idfc-blue-t); }
.idfc-find-res .idfc-ref { font-size: 13px; }
.idfc-find-res .idfc-when { font-size: 12px; color: var(--idfc-muted); white-space: nowrap; }
.idfc-hb .idfc-find-res a.is-all { display: block; color: var(--idfc-blue); font-weight: 600; border-bottom: 0; }
.idfc-find-res .idfc-none { padding: 12px 14px; font-size: 14px; color: var(--idfc-text); }
.idfc-facts { display: flex; flex-wrap: wrap; justify-content: center; gap: 4px 0; margin-top: 14px !important; font-size: 14px; }
.idfc-hb .idfc-facts a { color: #fff; text-decoration: none; padding: 2px 14px; border-left: 1px solid rgba(255, 255, 255, .4); }
.idfc-hb .idfc-facts a:first-child { border-left: 0; }
.idfc-hb .idfc-facts a:hover { text-decoration: underline; }
.idfc-hb.is-light .idfc-facts a { color: var(--idfc-ink); border-left-color: var(--idfc-rule-2); }
.idfc-facts b { font-weight: 700; }

/* Cards (1.4.3, flat from 1.5.0): white, 1 px border, rounded - "Open Tenders & RFQs", "This week", "Next briefing", diary. */
.idfc-hb { --idfc-tile: #eef2f6; --idfc-tile-h: #e3e9f0; --idfc-sel: #2a9a40; --idfc-sel-d: #23863a; --idfc-r: 16px;
	--idfc-card-line: #e3e8ee; }
/* 1.5.0: flat cards - no shadow, a 1 px border so they still read on a white page. */
.idfc-board, .idfc-diary, .idfc-week, .idfc-nb, .idfc-tp .idfc-card { background: var(--idfc-paper); border: 1px solid var(--idfc-card-line); border-radius: var(--idfc-r); box-shadow: none; overflow: hidden; }
.idfc-bh { display: flex; justify-content: space-between; align-items: center; gap: 12px 20px; flex-wrap: wrap; padding: 24px 24px 16px; }
.idfc-hb .idfc-bh h3 { font: 600 21px/1.25 var(--idfc-hf); color: #0f1b2d; letter-spacing: -.01em; }
.idfc-bh-sub { font-size: 14px; color: var(--idfc-muted); margin-top: 3px !important; }

/* [idfc_open_now] */
.idfc-seg { display: inline-flex; background: var(--idfc-tile); border-radius: 12px; padding: 4px; gap: 2px; }
.idfc-hb .idfc-seg button { background: none; border: 0; border-radius: 9px; padding: 7px 14px; cursor: pointer; color: var(--idfc-text); font: 500 14px/1.2 var(--idfc-hf); }
.idfc-hb .idfc-seg button:hover { color: var(--idfc-ink); }
.idfc-hb .idfc-seg button[aria-pressed="true"] { background: #fff; color: var(--idfc-ink); box-shadow: inset 0 0 0 1px var(--idfc-card-line); }
.idfc-seg i { font-style: normal; color: var(--idfc-muted); margin-left: 4px; font-variant-numeric: tabular-nums; }
.idfc-hb .idfc-seg button[aria-pressed="true"] i { color: var(--idfc-sel); font-weight: 600; }
.idfc-q { margin: 0 24px 8px !important; padding: 10px 14px; font-size: 14px; background: var(--idfc-blue-t); border-radius: 10px; }
.idfc-hb .idfc-q button { background: none; border: 0; padding: 0; color: var(--idfc-blue); cursor: pointer; text-decoration: underline; font-size: 14px; }
.idfc-list { padding: 0 12px !important; }
.idfc-item + .idfc-item { border-top: 1px solid #edf0f3; }
.idfc-hb .idfc-item > a { display: grid; grid-template-columns: 62px minmax(0, 1fr) auto 18px; gap: 18px; align-items: center; padding: 14px 12px; margin: 4px 0; border-radius: 12px; color: inherit; text-decoration: none; transition: background .15s; }
.idfc-hb .idfc-item > a:hover, .idfc-hb .idfc-item > a:focus-visible { background: #f5f7fa; }
.idfc-hb .idfc-item > a:focus-visible { outline-offset: -2px; }
.idfc-date { display: block; text-align: center; background: var(--idfc-tile); border-radius: 12px; padding: 8px 0; line-height: 1; font-variant-numeric: tabular-nums; }
.idfc-date small { display: block; font: 500 12px/1.25 var(--idfc-hf); color: var(--idfc-muted); }
.idfc-date b { display: block; font: 700 22px/1.2 var(--idfc-hf); color: #0f1b2d; }
.idfc-date.is-today { background: var(--idfc-sel); box-shadow: inset 0 0 0 2px var(--idfc-sel-d); }
.idfc-date.is-today small, .idfc-date.is-today b { color: #fff; }
.idfc-body { display: block; min-width: 0; }
.idfc-kicker { display: block; font: 600 11px/1.4 var(--idfc-hf); letter-spacing: .08em; text-transform: uppercase; color: var(--idfc-sel-d); }
.idfc-title { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 600 16px/1.4 var(--idfc-hf); color: #0f1b2d; margin: 3px 0 6px; }
.idfc-hb .idfc-item > a:hover .idfc-title { color: var(--idfc-blue); }
.idfc-foot { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 14px; font-size: 13px; line-height: 1.4; color: var(--idfc-muted); }
.idfc-foot .idfc-ref { font: 600 13px/1.4 var(--idfc-hf); color: var(--idfc-text); }
.idfc-brf { display: inline-flex; align-items: center; gap: 5px; color: var(--idfc-blue-d); }
.idfc-brf.is-req { color: var(--idfc-today); }
.idfc-brf svg { width: 14px; height: 14px; flex: none; }
/* Time left: a tile that mirrors the date tile - grey, amber when close, red on the day. */
.idfc-left { display: block; text-align: center; line-height: 1.2; white-space: nowrap; font-variant-numeric: tabular-nums; min-width: 104px; background: var(--idfc-tile); border-radius: 12px; padding: 9px 12px; }
.idfc-left b { display: block; font: 700 16px/1.25 var(--idfc-hf); color: #0f1b2d; }
.idfc-left > span:not(.idfc-vh) { font-size: 12px; color: var(--idfc-muted); }
.idfc-item.soon .idfc-left { background: #fdf1e3; }
.idfc-item.soon .idfc-left b { color: var(--idfc-soon); }
.idfc-item.today .idfc-left { background: #fdeceb; }
.idfc-item.today .idfc-left b { color: var(--idfc-today); }
.idfc-item > a > svg { width: 18px; height: 18px; color: #c3ccd6; transition: transform .15s, color .15s; }
.idfc-hb .idfc-item > a:hover > svg { color: var(--idfc-blue); transform: translateX(3px); }
.idfc-empty { padding: 24px 12px; color: var(--idfc-muted); }
.idfc-bf { display: flex; justify-content: space-between; align-items: center; gap: 12px 20px; flex-wrap: wrap; padding: 14px 24px 22px; }
.idfc-bf-note { font-size: 13px; color: var(--idfc-muted); }
.idfc-hb .idfc-bf .idfc-btn { border-radius: 12px; padding: 10px 16px; font-weight: 600; border: 1px solid #d5dce4; color: #0f1b2d; background: #fff; }
.idfc-hb .idfc-bf .idfc-btn:hover { border-color: var(--idfc-sel); background: #fff; color: var(--idfc-sel-d); }
.idfc-hb .idfc-bf .idfc-btn:first-child { background: var(--idfc-sel); border-color: var(--idfc-sel); color: #fff; }
.idfc-hb .idfc-bf .idfc-btn:first-child:hover { background: var(--idfc-sel-d); }
.idfc-bf .idfc-btn i { font-style: normal; font: 600 12px/1 var(--idfc-hf); background: var(--idfc-tile); color: var(--idfc-ink); border-radius: 10px; padding: 3px 7px; font-variant-numeric: tabular-nums; }
.idfc-hb .idfc-bf .idfc-btn:first-child i { background: rgba(255, 255, 255, .22); color: #fff; }

/* [idfc_closing_diary] - same card */
.idfc-diary .idfc-day, .idfc-diary .idfc-later { padding-left: 24px; padding-right: 24px; }
.idfc-diary .idfc-later { padding-bottom: 18px; }
.idfc-diary .idfc-day:last-of-type { border-bottom: 0; }
.idfc-day { display: grid; grid-template-columns: 54px minmax(0, 1fr); gap: 14px; padding: 14px 0; border-top: 1px solid #edf0f3; }
.idfc-d { text-align: center; line-height: 1; background: var(--idfc-tile); border-radius: 12px; padding: 8px 0; align-self: start; }
.idfc-d small { display: block; font: 500 12px/1.25 var(--idfc-hf); color: var(--idfc-muted); }
.idfc-d b { font: 700 20px/1.2 var(--idfc-hf); color: #0f1b2d; }
.idfc-day.is-today .idfc-d { background: var(--idfc-sel); box-shadow: inset 0 0 0 2px var(--idfc-sel-d); }
.idfc-day.is-today .idfc-d small, .idfc-day.is-today .idfc-d b { color: #fff; }
.idfc-ev { font-size: 14px; line-height: 1.45; }
.idfc-ev + .idfc-ev { margin-top: 12px; }
.idfc-k { display: block; font: 600 11px/1.5 var(--idfc-hf); letter-spacing: .1em; text-transform: uppercase; color: var(--idfc-ink); }
.idfc-k.is-b { color: var(--idfc-blue); }
.idfc-k.is-req { color: var(--idfc-today); }
.idfc-hb .idfc-ev > a { color: var(--idfc-ink); text-decoration: none; }
.idfc-hb .idfc-ev > a:hover { color: var(--idfc-blue); text-decoration: underline; }
.idfc-ev .idfc-ref { font-size: 13px; }
.idfc-meta { display: block; font-size: 12px; color: var(--idfc-muted); }
.idfc-ev .idfc-acts { margin-top: 8px; }
.idfc-hb .idfc-ev .idfc-btn { padding: 5px 12px; font-size: 13px; border-radius: 10px; }

/* [idfc_this_week] */
.idfc-week .idfc-bh, .idfc-nb .idfc-bh { padding: 24px 22px 14px; }
.idfc-bh-sub .idfc-dot { margin: 0 5px 0 0; }
.idfc-bh-sub .idfc-dot.is-b { margin-left: 12px; }
.idfc-dot { display: inline-block; width: 7px; height: 7px; border-radius: 50%; vertical-align: 1px; }
.idfc-dot.is-c { background: var(--idfc-today); }
.idfc-dot.is-b { background: var(--idfc-blue); }
.idfc-wk { display: grid; grid-template-columns: repeat(var(--idfc-days, 7), minmax(0, 1fr)); gap: 6px; padding: 0 22px; }
.idfc-hb .idfc-wk button { display: block; text-align: center; background: var(--idfc-tile); border: 0; border-radius: 12px; padding: 9px 0 6px; cursor: pointer; color: #0f1b2d; min-width: 0; line-height: 1.15; transition: background .15s; }
.idfc-hb .idfc-wk button:hover { background: var(--idfc-tile-h); }
.idfc-wk small { display: block; font: 500 13px/1.3 var(--idfc-hf); color: var(--idfc-muted); }
.idfc-wk b { display: block; font: 700 18px/1.25 var(--idfc-hf); font-variant-numeric: tabular-nums; }
.idfc-dots { display: flex; justify-content: center; gap: 3px; height: 9px; padding-top: 2px; }
.idfc-dots .idfc-dot { width: 6px; height: 6px; }
.idfc-hb .idfc-wk button.is-today { box-shadow: inset 0 0 0 2px var(--idfc-sel); }
.idfc-hb .idfc-wk button[aria-selected="true"] { background: var(--idfc-sel); box-shadow: inset 0 0 0 2px var(--idfc-sel-d); color: #fff; }
.idfc-hb .idfc-wk button[aria-selected="true"] small { color: rgba(255, 255, 255, .85); }
.idfc-hb .idfc-wk button[aria-selected="true"] .idfc-dot { background: #fff; }
.idfc-wk-day { padding: 16px 22px 22px; }
.idfc-wk-h { font: 600 13px/1.4 var(--idfc-hf); color: #0f1b2d; margin-bottom: 6px !important; }
.idfc-wk-day .idfc-later { padding-top: 0; font-size: 15px; }
.idfc-week .idfc-ev { padding: 9px 0; border-top: 1px solid #edf0f3; }
.idfc-week .idfc-ev + .idfc-ev { margin-top: 0; }
.idfc-k .idfc-dot { margin-right: 6px; vertical-align: 1px; }
.idfc-hb.idfc-week .idfc-ev > a, .idfc-hb.idfc-nb a:not(.idfc-btn) { color: var(--idfc-ink); text-decoration: none; }
.idfc-hb.idfc-week .idfc-ev > a:hover, .idfc-hb.idfc-nb a:not(.idfc-btn):hover { color: var(--idfc-blue); text-decoration: underline; }

/* [idfc_next_briefing] */
.idfc-nb-box { margin: 0 22px 22px; padding: 18px 18px 18px; border-radius: 14px; background: var(--idfc-blue-t); }
.idfc-nb-box.is-req { background: #fce9e7; }
.idfc-nb-box .idfc-k { color: var(--idfc-blue); font-size: 12px; }
.idfc-nb-box.is-req .idfc-k { color: var(--idfc-today); }
.idfc-nb-when { font: 700 21px/1.3 var(--idfc-hf); color: #0f1b2d; margin-top: 8px !important; letter-spacing: -.01em; }
.idfc-nb-in { font: 600 14px/1.4 ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace; color: var(--idfc-blue-d); margin: 6px 0 12px !important; }
.idfc-nb-box.is-req .idfc-nb-in { color: var(--idfc-today); }
.idfc-nb-what { font-size: 14px; line-height: 1.55; color: var(--idfc-text); }
.idfc-nb-what .idfc-ref { font-size: 13px; color: var(--idfc-ink); }
.idfc-nb-box .idfc-meta { margin: 6px 0 14px !important; font-size: 13px; }
.idfc-hb .idfc-nb-box .idfc-btn { border-radius: 12px; padding: 10px 16px; font-weight: 600; background: #fff; color: #0f1b2d; border: 1px solid #e3d6d4; }
.idfc-hb .idfc-nb-box:not(.is-req) .idfc-btn { border-color: #cfdcea; }
.idfc-hb .idfc-nb-box .idfc-btn:hover { border-color: var(--idfc-ink); }
.idfc-hb .idfc-nb-box .idfc-btn.is-go { background: var(--idfc-sel); border-color: var(--idfc-sel); color: #fff; }
.idfc-nb-then { font-size: 13px; color: var(--idfc-muted); padding: 0 22px 20px; margin-top: -8px !important; }
.idfc-nb-none { padding: 0 22px 22px; }

/* [idfc_figures] */
.idfc-figs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)) minmax(0, 1.6fr); border-top: 1px solid var(--idfc-ink); border-bottom: 1px solid var(--idfc-rule); }
.idfc-fig { padding: 22px 20px; border-left: 1px solid var(--idfc-rule); }
.idfc-fig:first-child { border-left: 0; padding-left: 0; }
.idfc-fig b { display: block; font: 600 40px/1.1 var(--idfc-hf); color: var(--idfc-ink); font-variant-numeric: tabular-nums; }
.idfc-fig span { display: block; font-size: 13px; color: var(--idfc-muted); line-height: 1.4; margin-top: 6px; }
.idfc-fig em { font-style: normal; color: var(--idfc-text); }
.idfc-spark { padding: 18px 0 14px 24px; border-left: 1px solid var(--idfc-rule); min-width: 0; }
.idfc-spark-h { display: flex; justify-content: space-between; gap: 8px; flex-wrap: wrap; margin: 0 0 6px !important; font: 600 12px/1.4 var(--idfc-hf); letter-spacing: .1em; text-transform: uppercase; color: var(--idfc-muted); }
.idfc-spark-h span { display: inline-flex; gap: 12px; letter-spacing: 0; text-transform: none; font-weight: 400; }
.idfc-spark-h i { font-style: normal; }
.idfc-spark-h i::before { content: ""; display: inline-block; width: 10px; height: 10px; border-radius: 2px; margin-right: 5px; vertical-align: -1px; }
.idfc-spark-h i.is-rfq::before { background: var(--idfc-blue); }
.idfc-spark-h i.is-tender::before { background: var(--idfc-green); }
.idfc-spark svg { width: 100%; height: 96px; display: block; overflow: visible; stroke: none; }
.idfc-spark svg text { font: 11px sans-serif; font-family: inherit; fill: var(--idfc-muted); stroke: none; }
.idfc-spark svg text.is-cur { fill: var(--idfc-ink); font-weight: 600; }
.idfc-spark .idfc-b-rfq { fill: var(--idfc-blue); }
.idfc-spark .idfc-b-tender { fill: var(--idfc-green); }
.idfc-spark .idfc-b-zero { fill: var(--idfc-rule-2); }
.idfc-spark .idfc-b-none { fill: var(--idfc-rule); }
.idfc-spark .idfc-hit { fill: transparent; }
.idfc-spark .idfc-hit:hover { fill: rgba(6, 84, 156, .07); }
.idfc-figs-src { font-size: 12px; color: var(--idfc-muted); margin-top: 8px !important; }
.idfc-tip { position: fixed; pointer-events: none; z-index: 100000; background: #222; color: #fff; font: 12px/1.5 sans-serif; padding: 6px 10px; border-radius: 4px; opacity: 0; transition: opacity .12s; }
.idfc-tip.on { opacity: 1; }

/* [idfc_awards] */
.idfc-reg { overflow-x: auto; border-top: 1px solid var(--idfc-ink); }
.idfc-hb .idfc-reg table { width: 100%; border-collapse: collapse; min-width: 760px; font-size: 14px; margin: 0; border: 0; background: none; }
.idfc-hb .idfc-reg th { text-align: left; font: 600 12px/1.4 var(--idfc-hf); letter-spacing: .08em; text-transform: uppercase; color: var(--idfc-muted); padding: 12px 12px 10px 0; border: 0; border-bottom: 1px solid var(--idfc-rule-2); background: none; }
.idfc-hb .idfc-reg td { padding: 16px 12px 16px 0; border: 0; border-bottom: 1px solid var(--idfc-rule); vertical-align: top; color: var(--idfc-ink); background: none; }
.idfc-hb .idfc-reg td a { color: var(--idfc-ink); text-decoration: none; }
.idfc-hb .idfc-reg td a:hover { color: var(--idfc-blue); text-decoration: underline; }
.idfc-hb .idfc-reg .is-v { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.idfc-hb .idfc-reg .is-nw { white-space: nowrap; }

/* [idfc_tender_page] (1.5.0) */
.idfc-tp { --idfc-page: #f5f7fa; }
.idfc-crumbs { display: flex; flex-wrap: wrap; gap: 4px 8px; font-size: 13px; color: var(--idfc-muted); margin-bottom: 16px; }
.idfc-hb .idfc-crumbs a { color: var(--idfc-muted); text-decoration: none; }
.idfc-hb .idfc-crumbs a:hover { color: var(--idfc-blue); text-decoration: underline; }
.idfc-crumbs [aria-current] { color: #0f1b2d; font-weight: 600; }
.idfc-tp-grid { display: grid; grid-template-columns: minmax(0, 1fr) 370px; gap: 28px; align-items: start; }
.idfc-tp-main { display: grid; gap: 22px; min-width: 0; }
.idfc-tp-aside { position: sticky; top: 24px; min-width: 0; }
.idfc-tp .idfc-card { padding: 26px; min-width: 0; }
.idfc-hb .idfc-tp-head h1 { font: 700 30px/1.25 var(--idfc-hf); color: #0f1b2d; margin: 6px 0 12px; letter-spacing: -.015em; text-wrap: balance; text-transform: none; }
.idfc-hb.idfc-tp h2 { font: 600 19px/1.3 var(--idfc-hf); color: #0f1b2d; margin: 0 0 4px; letter-spacing: -.01em; text-transform: none; }
.idfc-tp .idfc-kicker { font-size: 12px; }
.idfc-sub { font-size: 14px; color: var(--idfc-muted); margin-bottom: 16px !important; }
.idfc-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 18px !important; }
.idfc-chip { display: inline-flex; align-items: center; gap: 6px; background: var(--idfc-tile); color: #0f1b2d; border-radius: 999px; padding: 5px 12px; font: 600 13px/1.3 var(--idfc-hf); }
.idfc-chip svg { width: 15px; height: 15px; color: var(--idfc-sel-d); }
.idfc-official { background: var(--idfc-page); border-radius: 12px; padding: 14px 16px; font-size: 14px; line-height: 1.6; color: var(--idfc-text); }
.idfc-official b { display: block; font: 600 12px/1.4 var(--idfc-hf); letter-spacing: .06em; text-transform: uppercase; color: var(--idfc-muted); margin-bottom: 4px; }
.idfc-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin: 18px 0 0; }
.idfc-facts > div { background: var(--idfc-tile); border-radius: 12px; padding: 12px 14px; min-width: 0; }
.idfc-facts dt { font-size: 12px; color: var(--idfc-muted); font-weight: 400; margin: 0; }
.idfc-facts dd { margin: 2px 0 0; font: 600 15px/1.35 var(--idfc-hf); color: #0f1b2d; overflow-wrap: anywhere; }
.idfc-hb .idfc-copy { border: 0; background: none; padding: 0 0 0 6px; color: var(--idfc-blue); cursor: pointer; vertical-align: -3px; }
.idfc-copy svg { width: 16px; height: 16px; }
.idfc-none { display: flex; gap: 12px; align-items: center; background: var(--idfc-tile); border-radius: 14px; padding: 14px 16px; font-size: 14px; color: var(--idfc-text); }
.idfc-none svg { width: 20px; height: 20px; color: var(--idfc-muted); flex: none; }
.idfc-tp .idfc-nb-box { margin: 0; }
.idfc-nb-box.is-past { background: var(--idfc-tile); }
.idfc-nb-box.is-past .idfc-k { color: var(--idfc-muted); }
.idfc-warn { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; color: var(--idfc-today); margin: 0 0 12px !important; }
.idfc-warn svg { width: 18px; height: 18px; flex: none; margin-top: 2px; }
.idfc-brdl { display: grid; grid-template-columns: 90px minmax(0, 1fr); gap: 6px 12px; margin: 10px 0 14px; font-size: 14px; }
.idfc-brdl dt { color: var(--idfc-muted); font-weight: 400; margin: 0; }
.idfc-brdl dd { margin: 0; color: #0f1b2d; overflow-wrap: anywhere; }
.idfc-nlist { display: grid; gap: 8px; }
.idfc-hb .idfc-nlist a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 14px; border-radius: 12px; background: var(--idfc-page); text-decoration: none; color: #0f1b2d; font-size: 15px; }
.idfc-hb .idfc-nlist a:hover { background: var(--idfc-tile); }
.idfc-ntag { font: 600 11px/1 var(--idfc-hf); letter-spacing: .06em; text-transform: uppercase; border-radius: 999px; padding: 5px 9px; background: #fdf1e3; color: var(--idfc-soon); white-space: nowrap; }
.idfc-nd { font-size: 13px; color: var(--idfc-muted); white-space: nowrap; }
.idfc-tl { margin: 4px 0 0 !important; }
.idfc-tl li { position: relative; display: grid; grid-template-columns: 26px minmax(0, 1fr) auto; gap: 12px; padding: 0 0 18px !important; }
.idfc-tl li:last-child { padding-bottom: 0 !important; }
.idfc-tl li::after { content: ""; position: absolute; left: 12px; top: 24px; bottom: -2px; width: 2px; background: var(--idfc-rule-2); }
.idfc-tl li:last-child::after { display: none; }
.idfc-tl li.is-done::after { background: var(--idfc-sel); }
.idfc-tdot { width: 26px; height: 26px; border-radius: 50%; background: var(--idfc-tile); display: grid; place-items: center; position: relative; z-index: 1; }
.idfc-tdot svg { width: 14px; height: 14px; color: #fff; stroke-width: 3; }
.idfc-tl li.is-done .idfc-tdot { background: var(--idfc-sel); }
.idfc-tl li.is-next .idfc-tdot { background: #fff; box-shadow: inset 0 0 0 2px var(--idfc-sel); }
.idfc-tl li.is-next .idfc-tdot::after { content: ""; width: 10px; height: 10px; border-radius: 50%; background: var(--idfc-sel); }
.idfc-tt b { display: block; font: 600 15px/1.35 var(--idfc-hf); color: #0f1b2d; }
.idfc-tt small { font-size: 13px; color: var(--idfc-muted); }
.idfc-tw { font: 600 13px/1.6 var(--idfc-hf); color: #0f1b2d; white-space: nowrap; text-align: right; }
.idfc-tl li.is-next .idfc-tw { color: var(--idfc-sel-d); }
.idfc-mlist { display: grid; gap: 4px; margin-bottom: 14px !important; }
.idfc-hb .idfc-mlist a { display: grid; grid-template-columns: 52px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 10px; border-radius: 12px; text-decoration: none; color: inherit; }
.idfc-hb .idfc-mlist a:hover { background: var(--idfc-page); }
.idfc-mlist .idfc-date b { font-size: 18px; }
.idfc-mt b { display: block; font: 600 15px/1.35 var(--idfc-hf); color: #0f1b2d; }
.idfc-mt small { font-size: 12px; color: var(--idfc-muted); }
.idfc-ml { font: 600 13px var(--idfc-hf); color: var(--idfc-ink); white-space: nowrap; }
.idfc-ml.is-soon { color: var(--idfc-soon); }
.idfc-status { display: inline-flex; align-items: center; gap: 8px; border-radius: 999px; padding: 5px 12px; font: 600 13px/1.3 var(--idfc-hf); background: #e8f5eb; color: var(--idfc-sel-d); }
.idfc-status i { width: 8px; height: 8px; border-radius: 50%; background: var(--idfc-sel); }
.idfc-status.is-closed, .idfc-status.is-archived { background: var(--idfc-tile); color: var(--idfc-muted); }
.idfc-status.is-closed i, .idfc-status.is-archived i { background: var(--idfc-muted); }
.idfc-closing { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 16px; align-items: center; margin: 18px 0; }
.idfc-date.is-big { border-radius: 14px; padding: 10px 0; }
.idfc-date.is-big b { font-size: 28px; }
.idfc-lbl { display: block; font-size: 13px; color: var(--idfc-muted); }
.idfc-closing b { font: 600 17px/1.35 var(--idfc-hf); color: #0f1b2d; }
.idfc-leftbox { border-radius: 14px; padding: 14px 16px; background: #fdf1e3; margin-bottom: 18px; }
.idfc-leftbox.is-today { background: #fce9e7; }
.idfc-leftbox.is-calm { background: var(--idfc-tile); }
.idfc-lt { display: flex; justify-content: space-between; align-items: baseline; gap: 10px; }
.idfc-lt b { font: 700 22px/1.2 var(--idfc-hf); color: var(--idfc-soon); font-variant-numeric: tabular-nums; }
.idfc-leftbox.is-today .idfc-lt b { color: var(--idfc-today); }
.idfc-leftbox.is-calm .idfc-lt b { color: #0f1b2d; }
.idfc-lt span { font-size: 13px; color: var(--idfc-muted); }
.idfc-bar { display: block; height: 6px; background: rgba(15, 27, 45, .08); border-radius: 6px; margin-top: 10px; overflow: hidden; }
.idfc-bar i { display: block; height: 100%; background: var(--idfc-soon); border-radius: 6px; }
.idfc-leftbox.is-today .idfc-bar i { background: var(--idfc-today); }
.idfc-leftbox.is-calm .idfc-bar i { background: var(--idfc-sel); }
.idfc-ends { display: flex; justify-content: space-between; font-size: 12px; color: var(--idfc-muted); margin-top: 6px !important; }
.idfc-closedbox { background: var(--idfc-tile); border-radius: 14px; padding: 14px 16px; margin: 0 0 16px !important; font-size: 14px; color: var(--idfc-text); }
.idfc-closedbox b { color: #0f1b2d; }
.idfc-stack { display: grid; gap: 10px; }
.idfc-hb .idfc-tp .idfc-btn, .idfc-hb.idfc-tp .idfc-btn { border-radius: 12px; padding: 11px 16px; font: 600 15px/1.25 var(--idfc-hf); border: 1px solid #d5dce4; background: #fff; color: #0f1b2d; justify-content: center; flex-wrap: wrap; column-gap: 8px; row-gap: 2px; }
.idfc-hb.idfc-tp .idfc-btn:hover { border-color: var(--idfc-sel); color: var(--idfc-sel-d); background: #fff; }
.idfc-hb.idfc-tp .idfc-btn.is-pri, .idfc-hb.idfc-tp .idfc-btn.is-go { background: var(--idfc-sel); border-color: var(--idfc-sel); color: #fff; }
.idfc-hb.idfc-tp .idfc-btn.is-pri:hover, .idfc-hb.idfc-tp .idfc-btn.is-go:hover { background: var(--idfc-sel-d); color: #fff; }
.idfc-btn small { font: 500 12px/1.2 inherit; font-family: inherit; opacity: .85; white-space: nowrap; }
/* 1.13.0: side card buttons never run past the card: long winner names wrap under the label, file details drop to their own line. */
.idfc-hb.idfc-tp .idfc-stack > .idfc-btn { box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; white-space: normal; text-align: center; overflow-wrap: anywhere; }
.idfc-hb.idfc-tp .idfc-stack > .idfc-btn > svg { flex: 0 0 auto; }
.idfc-hb.idfc-tp .idfc-stack > .idfc-btn small { white-space: normal; overflow-wrap: anywhere; max-width: 100%; }
.idfc-hb.idfc-tp .idfc-stack > .idfc-btn[href="#idfc-tp-aw"] small { flex-basis: 100%; line-height: 1.35; }
.idfc-hb.idfc-tp .idfc-nb-box .idfc-btn:not(.is-go) { border-color: #e3d6d4; }
.idfc-tp .idfc-acts { gap: 10px; }
.idfc-share { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #edf0f3; }
.idfc-share > span { grid-column: 1 / -1; font-size: 13px; color: var(--idfc-muted); }
.idfc-hb .idfc-share button, .idfc-hb .idfc-share a { display: inline-flex; align-items: center; justify-content: center; gap: 6px; border: 0; background: var(--idfc-tile); border-radius: 10px; padding: 8px 6px; font: 500 13px/1.2 var(--idfc-hf); color: #0f1b2d; cursor: pointer; text-decoration: none; }
.idfc-hb .idfc-share button:hover, .idfc-hb .idfc-share a:hover { background: var(--idfc-tile-h); }
.idfc-share svg { width: 15px; height: 15px; flex: none; }
.idfc-toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 16px); background: #0f1b2d; color: #fff; padding: 10px 16px; border-radius: 10px; font: 14px/1.4 sans-serif; opacity: 0; transition: .2s; z-index: 100000; pointer-events: none; }
.idfc-toast.on { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 1080px) {
	.idfc-tp-grid { grid-template-columns: minmax(0, 1fr); }
	.idfc-tp-aside { position: static; order: -1; }
	.idfc-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 560px) {
	.idfc-tp .idfc-card { padding: 20px 18px; }
	.idfc-hb .idfc-tp-head h1 { font-size: 24px; }
	.idfc-brdl { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.idfc-brdl dd { margin-bottom: 6px; }
	.idfc-hb .idfc-nlist a { grid-template-columns: minmax(0, 1fr); gap: 4px; justify-items: start; }
	.idfc-tl li { grid-template-columns: 26px minmax(0, 1fr); }
	.idfc-tw { grid-column: 2; text-align: left; }
}

/* [idfc_listing] (1.6.0) - replaces Posts Table Pro on the public lists */
.idfc-ls { --idfc-page: #f5f7fa; }
.idfc-ls-views { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.idfc-hb .idfc-ls-views a { display: inline-flex; align-items: center; gap: 8px; text-decoration: none; color: var(--idfc-text); background: var(--idfc-tile); border-radius: 12px; padding: 9px 16px; font: 600 15px/1.2 var(--idfc-hf); }
.idfc-hb .idfc-ls-views a:hover { background: var(--idfc-tile-h); color: #0f1b2d; }
.idfc-hb .idfc-ls-views a[aria-current] { background: var(--idfc-sel); color: #fff; }
.idfc-ls-views i { font-style: normal; font: 600 12px/1 var(--idfc-hf); background: rgba(255, 255, 255, .75); color: #0f1b2d; border-radius: 999px; padding: 4px 8px; }
.idfc-ls-views a[aria-current] i { background: rgba(255, 255, 255, .22); color: #fff; }
.idfc-ls-tools, .idfc-ls-card { background: var(--idfc-paper); border: 1px solid var(--idfc-card-line); border-radius: var(--idfc-r); }
.idfc-ls-tools { padding: 18px 20px; display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)); gap: 12px; align-items: end; margin: 0; }
.idfc-ls-tools label { display: grid; gap: 5px; font-size: 13px; color: var(--idfc-muted); min-width: 0; margin: 0; }
.idfc-field { display: flex; align-items: center; gap: 8px; background: var(--idfc-page); border: 1px solid var(--idfc-card-line); border-radius: 12px; padding: 0 12px; height: 44px; }
.idfc-field:focus-within { border-color: var(--idfc-sel); box-shadow: 0 0 0 3px rgba(42, 154, 64, .18); }
.idfc-field svg { width: 18px; height: 18px; color: var(--idfc-muted); flex: none; }
.idfc-hb .idfc-field input, .idfc-hb .idfc-field select { border: 0; outline: 0; background: transparent; width: 100%; min-width: 0; height: 42px; padding: 0; color: #0f1b2d; font-size: 15px; box-shadow: none; }
.idfc-hb .idfc-field select { cursor: pointer; }
.idfc-ls-chips, .idfc-ls-fy { grid-column: 1 / -1; display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.idfc-ls-chips > span, .idfc-ls-fy > span { font-size: 13px; color: var(--idfc-muted); margin-right: 4px; }
.idfc-hb .idfc-ls-chips button { border: 0; background: var(--idfc-tile); border-radius: 999px; padding: 6px 12px; font: 600 13px/1.2 var(--idfc-hf); color: var(--idfc-text); cursor: pointer; }
.idfc-hb .idfc-ls-chips button[aria-pressed="true"] { background: #0f1b2d; color: #fff; }
.idfc-hb .idfc-ls-fy a { border: 1px solid var(--idfc-card-line); background: #fff; border-radius: 10px; padding: 6px 12px; font: 600 14px/1.2 var(--idfc-hf); color: #0f1b2d; text-decoration: none; }
.idfc-hb .idfc-ls-fy a[aria-current] { background: var(--idfc-sel); border-color: var(--idfc-sel); color: #fff; }
.idfc-ls-card { margin-top: 18px; overflow: hidden; }
.idfc-ls-head { display: flex; justify-content: space-between; align-items: baseline; gap: 6px 16px; flex-wrap: wrap; padding: 20px 24px 6px; }
.idfc-hb .idfc-ls-head h2 { font: 600 20px/1.3 var(--idfc-hf); color: #0f1b2d; margin: 0; text-transform: none; letter-spacing: -.01em; }
.idfc-ls-head p { font-size: 14px; color: var(--idfc-muted); }
.idfc-hb .idfc-ls-head button { border: 0; background: none; color: var(--idfc-blue); font-size: 14px; text-decoration: underline; cursor: pointer; padding: 0; }
.idfc-ls-rows { padding: 0 12px 8px !important; }
.idfc-ls-month { padding: 14px 12px 4px !important; font: 600 12px/1.4 var(--idfc-hf); letter-spacing: .1em; text-transform: uppercase; color: var(--idfc-muted); }
.idfc-ls-item + .idfc-ls-item { border-top: 1px solid #edf0f3; }
.idfc-hb .idfc-ls-row { display: grid; grid-template-columns: 62px minmax(0, 1fr) auto 18px; gap: 18px; align-items: center; padding: 14px 12px; margin: 4px 0; border-radius: 12px; text-decoration: none; color: inherit; }
.idfc-hb .idfc-ls-row.is-static { grid-template-columns: 62px minmax(0, 1fr) auto auto; }
.idfc-hb a.idfc-ls-row:hover { background: var(--idfc-page); }
.idfc-hb a.idfc-ls-row:hover .idfc-ls-t, .idfc-hb .idfc-ls-body-link:hover .idfc-ls-t { color: var(--idfc-blue); }
.idfc-hb .idfc-ls-body-link { text-decoration: none; color: inherit; min-width: 0; }
.idfc-ls-body { display: block; min-width: 0; }
.idfc-kicker.is-past { color: var(--idfc-muted); }
.idfc-ls-t { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font: 600 16px/1.4 var(--idfc-hf); color: #0f1b2d; margin: 3px 0 6px; }
.idfc-ls-f { display: flex; flex-wrap: wrap; gap: 4px 14px; font-size: 13px; line-height: 1.5; color: var(--idfc-muted); align-items: center; }
.idfc-ls-f b { color: #0f1b2d; font-weight: 600; }
.idfc-ls-n { font: 600 13px/1.4 var(--idfc-hf); color: var(--idfc-text); }
.idfc-ls-tag { display: inline-flex; align-items: center; background: var(--idfc-tile); color: #0f1b2d; border-radius: 999px; padding: 2px 9px; font: 600 12px/1.5 var(--idfc-hf); }
.idfc-ls-tag.is-g { background: #e8f5eb; color: var(--idfc-sel-d); }
.idfc-ls-tag.is-a { background: #fdf1e3; color: var(--idfc-soon); }
.idfc-ls-st { display: block; text-align: center; white-space: nowrap; background: var(--idfc-tile); border-radius: 12px; padding: 9px 12px; min-width: 104px; line-height: 1.2; font-variant-numeric: tabular-nums; }
.idfc-ls-st b { display: block; font: 700 16px/1.25 var(--idfc-hf); color: #0f1b2d; }
.idfc-ls-st span { font-size: 12px; color: var(--idfc-muted); }
.idfc-ls-st.is-soon { background: #fdf1e3; } .idfc-ls-st.is-soon b { color: var(--idfc-soon); }
.idfc-ls-st.is-today { background: #fce9e7; } .idfc-ls-st.is-today b { color: var(--idfc-today); }
.idfc-ls-st.is-closed b { color: var(--idfc-muted); font-weight: 600; }
.idfc-ls-st.is-ok { background: #e8f5eb; } .idfc-ls-st.is-ok b { color: var(--idfc-sel-d); }
.idfc-ls-row > svg { width: 18px; height: 18px; color: #c3ccd6; }
.idfc-hb a.idfc-ls-row:hover > svg { color: var(--idfc-blue); }
.idfc-hb .idfc-ls-row .idfc-btn { border-radius: 10px; padding: 7px 12px; font: 600 13px/1.2 var(--idfc-hf); border: 1px solid #d5dce4; background: #fff; color: #0f1b2d; white-space: nowrap; }
.idfc-hb .idfc-ls-row .idfc-btn:hover { border-color: var(--idfc-sel); color: var(--idfc-sel-d); }
.idfc-ls-empty { padding: 30px 24px 34px; text-align: center; color: var(--idfc-muted); }
.idfc-ls-empty b { display: block; font: 600 17px/1.4 var(--idfc-hf); color: #0f1b2d; margin-bottom: 4px; }
.idfc-ls-pager { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; padding: 12px 24px 20px; border-top: 1px solid #edf0f3; font-size: 14px; color: var(--idfc-muted); }
.idfc-ls-pg { display: flex; gap: 6px; flex-wrap: wrap; }
.idfc-hb .idfc-ls-pg button { min-width: 38px; height: 38px; border: 1px solid var(--idfc-card-line); background: #fff; border-radius: 10px; cursor: pointer; font: 600 14px/1 var(--idfc-hf); color: #0f1b2d; padding: 0 10px; }
.idfc-hb .idfc-ls-pg button[aria-current] { background: var(--idfc-sel); border-color: var(--idfc-sel); color: #fff; }
.idfc-hb .idfc-ls-pg button:disabled { opacity: .4; cursor: default; }
.idfc-ls-help { margin-top: 18px !important; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.idfc-hb .idfc-ls-help a { display: block; text-decoration: none; background: var(--idfc-page); border: 1px solid var(--idfc-card-line); border-radius: 14px; padding: 14px 16px; color: #0f1b2d; }
.idfc-hb .idfc-ls-help a:hover { border-color: var(--idfc-sel); }
.idfc-ls-help b { display: block; font: 600 15px/1.4 var(--idfc-hf); }
.idfc-ls-help span { font-size: 13px; color: var(--idfc-muted); }
@media (max-width: 900px) {
	.idfc-ls-tools { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); }
	.idfc-ls-tools .is-q { grid-column: 1 / -1; }
	.idfc-ls-help { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 600px) {
	.idfc-hb .idfc-ls-row, .idfc-hb .idfc-ls-row.is-static { grid-template-columns: 52px minmax(0, 1fr); gap: 10px 14px; align-items: start; padding: 14px 10px; }
	.idfc-ls-row > svg { display: none; }
	.idfc-ls-st { grid-column: 2; justify-self: start; display: inline-flex; gap: 6px; align-items: baseline; min-width: 0; padding: 5px 10px; border-radius: 10px; }
	.idfc-ls-st b { display: inline; font-size: 14px; }
	.idfc-hb .idfc-ls-row .idfc-btn { grid-column: 2; justify-self: start; }
	.idfc-ls-head, .idfc-ls-pager { padding-left: 16px; padding-right: 16px; }
	.idfc-ls-rows { padding: 0 4px 8px !important; }
	.idfc-ls-t { -webkit-line-clamp: 3; }
	.idfc-ls-tools { padding: 16px; }
	.idfc-ls-tools > label:nth-of-type(4) { display: none; } /* "Show n per page" - not needed on phones */
}

@media (prefers-reduced-motion: reduce) { .idfc-hb *, .idfc-tip { transition: none !important; } }

@media (max-width: 1080px) {
	.idfc-figs { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.idfc-fig:nth-child(3) { border-left: 0; padding-left: 0; }
	.idfc-fig:nth-child(-n+2) { border-bottom: 1px solid var(--idfc-rule); }
	.idfc-spark { grid-column: 1 / -1; border-left: 0; border-top: 1px solid var(--idfc-rule); padding-left: 0; }
}
@media (max-width: 720px) {
	.idfc-bh, .idfc-bf { padding-left: 16px; padding-right: 16px; }
	.idfc-list { padding: 0 4px !important; }
	.idfc-hb .idfc-item > a { grid-template-columns: 52px minmax(0, 1fr); gap: 10px 14px; padding: 14px 12px; align-items: start; }
	.idfc-item > a > svg { display: none; }
	.idfc-left { grid-column: 2; justify-self: start; text-align: left; display: inline-flex; gap: 6px; align-items: baseline; min-width: 0; padding: 5px 10px; border-radius: 10px; }
	.idfc-left b { display: inline; font-size: 14px; }
	.idfc-wk { gap: 4px; padding: 0 16px; }
	.idfc-week .idfc-bh, .idfc-nb .idfc-bh, .idfc-wk-day { padding-left: 16px; padding-right: 16px; }
	.idfc-nb-box { margin: 0 16px 16px; }
	.idfc-nb-then { padding: 0 16px 18px; }
	.idfc-date b { font-size: 20px; }
	.idfc-title { font-size: 16px; -webkit-line-clamp: 3; }
	.idfc-bf .idfc-acts { width: 100%; }
	.idfc-bf .idfc-btn { flex: 1 1 auto; justify-content: center; }
	.idfc-hb .idfc-find-res a { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.idfc-fig b { font-size: 32px; }
	.idfc-hb .idfc-facts a { padding: 2px 10px; }
	.idfc-hb.idfc-find button { padding: 0 16px; }
	/* awards: one card per award instead of a wide table */
	.idfc-hb .idfc-reg table { min-width: 0; }
	.idfc-hb .idfc-reg thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
	.idfc-hb .idfc-reg tr { display: block; padding: 14px 0; border-bottom: 1px solid var(--idfc-rule); }
	.idfc-hb .idfc-reg td { display: grid; grid-template-columns: 100px minmax(0, 1fr); gap: 12px; padding: 2px 0; border: 0; text-align: left; white-space: normal; }
	.idfc-hb .idfc-reg td.is-ref, .idfc-hb .idfc-reg td.is-t { display: block; }
	.idfc-hb .idfc-reg td.is-t { padding-bottom: 8px; font-size: 15px; }
	.idfc-hb .idfc-reg td.is-v, .idfc-hb .idfc-reg td.is-nw { text-align: left; }
	.idfc-hb .idfc-reg td[data-l]::before { content: attr(data-l); color: var(--idfc-muted); font-size: 13px; }
}

/* Bid documents card on the tender page (1.8.0) */
.idfc-dhead { display: flex; justify-content: space-between; align-items: flex-start; gap: 10px 16px; flex-wrap: wrap; margin-bottom: 14px; }
.idfc-dhead .idfc-sub { margin-bottom: 0 !important; }
.idfc-dgroup { font: 600 12px/1.4 var(--idfc-hf); letter-spacing: .08em; text-transform: uppercase; color: var(--idfc-muted); margin: 18px 0 8px !important; }
.idfc-hb .idfc-dlist { display: grid; gap: 8px; list-style: none; margin: 0 !important; padding: 0 !important; }
.idfc-hb .idfc-dlist li { margin: 0 !important; padding: 0 !important; list-style: none; }
.idfc-hb .idfc-dl { display: grid; grid-template-columns: 40px minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 14px; border: 1px solid var(--idfc-card-line); border-radius: 12px; background: var(--idfc-paper); text-decoration: none; color: inherit; }
.idfc-hb .idfc-dl:hover { border-color: var(--idfc-sel); background: #fbfdfb; }
.idfc-hb .idfc-dl.is-main { background: #e8f5eb; border-color: #cfe8d5; }
.idfc-ft { width: 40px; height: 46px; border-radius: 7px; display: grid; place-items: end center; padding-bottom: 7px; font: 700 10px/1 var(--idfc-hf); letter-spacing: .04em; color: #fff; background: #c0392b; }
.idfc-ft.is-xls { background: #1d7a43; } .idfc-ft.is-doc { background: #2b5fb4; } .idfc-ft.is-zip { background: #6b5b3e; } .idfc-ft.is-cad { background: #8a3fa0; } .idfc-ft.is-img { background: #0f7c8c; }
.idfc-dlb { min-width: 0; }
.idfc-dlk { display: block; font: 600 11px/1.4 var(--idfc-hf); letter-spacing: .07em; text-transform: uppercase; color: var(--idfc-blue); }
.idfc-dlt { display: block; font: 600 15px/1.35 var(--idfc-hf); color: #0f1b2d; overflow-wrap: anywhere; }
.idfc-dlm { display: flex; flex-wrap: wrap; gap: 2px 12px; font-size: 13px; color: var(--idfc-muted); margin-top: 2px; }
.idfc-todo { font: 600 12px/1.6 var(--idfc-hf); color: var(--idfc-soon); background: #fdf1e3; border-radius: 999px; padding: 0 9px; }
.idfc-dlgo { display: inline-flex; align-items: center; gap: 6px; font: 600 14px var(--idfc-hf); color: var(--idfc-sel-d); white-space: nowrap; }
.idfc-dlgo svg { width: 18px; height: 18px; }
@media (max-width: 600px) {
	.idfc-hb .idfc-dl { grid-template-columns: 40px minmax(0, 1fr); }
	.idfc-dlgo { grid-column: 2; }
}

/* Addenda on the tender page (1.9.0) */
.idfc-hb .idfc-nlist .idfc-nrow { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 14px; align-items: center; padding: 12px 14px; border-radius: 12px; background: var(--idfc-page); color: #0f1b2d; font-size: 15px; }
.idfc-nt small { display: block; font-size: 13px; color: var(--idfc-muted); margin-top: 2px; }
.idfc-chg { display: flex; gap: 8px; align-items: flex-start; background: var(--idfc-blue-t); color: var(--idfc-blue-d); border-radius: 12px; padding: 10px 12px; font-size: 13px; margin: -6px 0 16px !important; }
.idfc-chg svg, .idfc-moved svg { width: 16px; height: 16px; flex: none; margin-top: 3px; }
.idfc-chg del, .idfc-moved del { color: var(--idfc-muted); }
.idfc-moved { display: flex; gap: 8px; align-items: flex-start; background: #fff; border: 1px solid #f1c9c4; border-radius: 10px; padding: 10px 12px; font-size: 14px; color: #0f1b2d; margin: 0 0 12px !important; }
.idfc-moved svg { color: var(--idfc-today); }
.idfc-rev { font: 600 12px/1.6 var(--idfc-hf); color: var(--idfc-blue-d); background: var(--idfc-blue-t); border-radius: 999px; padding: 0 9px; }
.idfc-hb .idfc-dl.is-old { opacity: .72; background: var(--idfc-page); }
.idfc-hb .idfc-dl.is-old .idfc-ft { background: #8a94a3; }
.idfc-hb .idfc-dl.is-old .idfc-dlgo { color: var(--idfc-muted); }
.idfc-status.is-cancelled { background: #fce9e7; color: var(--idfc-today); }
.idfc-status.is-cancelled i { background: var(--idfc-today); }
.idfc-closedbox.is-cxl { background: #fce9e7; }
@media (max-width: 600px) { .idfc-hb .idfc-nlist .idfc-nrow { grid-template-columns: minmax(0, 1fr); gap: 4px; } }
.idfc-ls-tag.is-x { background: #fce9e7; color: var(--idfc-today); }

/* 1.9.5: document cards that hold links (stretched download link), superseded / latest BOQ */
.idfc-hb .idfc-dl.has-links { position: relative; }
.idfc-hb .idfc-dl.has-links:hover, .idfc-hb .idfc-dl.has-links:focus-within { border-color: var(--idfc-sel); background: #fbfdfb; }
.idfc-hb .idfc-dl .idfc-stretch { color: inherit; text-decoration: none; }
.idfc-hb .idfc-dl .idfc-stretch::after { content: ""; position: absolute; inset: 0; border-radius: 12px; }
.idfc-hb .idfc-dl .idfc-stretch:focus-visible { outline: none; }
.idfc-hb .idfc-dl .idfc-stretch:focus-visible::after { outline: 2px solid var(--idfc-blue); outline-offset: 2px; }
.idfc-hb .idfc-dl a.idfc-rev { position: relative; z-index: 1; text-decoration: none; }
.idfc-hb .idfc-dl a.idfc-rev:hover { text-decoration: underline; }
.idfc-rev.is-warn, .idfc-todo.is-warn { color: #8a3b12; background: #fde8d8; }
.idfc-latest { font: 600 12px/1.6 var(--idfc-hf); color: #fff; background: var(--idfc-sel-d); border-radius: 999px; padding: 0 9px; }
.idfc-hb .idfc-dl.is-latest { border-color: #9fd3ab; }
.idfc-hb .idfc-dl.is-sup { background: var(--idfc-page); }
.idfc-hb .idfc-dl.is-sup .idfc-dlt { color: #4a5565; }
.idfc-hb .idfc-nlist li:target > a, .idfc-hb .idfc-nlist li:target > .idfc-nrow { box-shadow: 0 0 0 2px var(--idfc-blue); border-radius: 12px; }

/* 1.9.6: [idfc_news] News & Notices */
.idfc-nw .idfc-kicker { color: var(--idfc-blue); }
.idfc-nw .idfc-kicker.is-notice { color: #a24a12; }
.idfc-ls-tag.is-pin { background: #fde8d8; color: #8a3b12; }
.idfc-nw .idfc-ls-item.is-pin .idfc-ls-row { background: #fffaf5; }
.idfc-nw .idfc-ls-f span { color: var(--idfc-muted); }
.idfc-nw-more { display: flex; justify-content: center; padding: 14px 0 18px; margin: 0 !important; }
.idfc-nw-more [hidden] { display: none !important; }
.idfc-nw .idfc-ls-chips i { font-style: normal; color: var(--idfc-muted); margin-left: 2px; }

/* 1.10.0: tender page result card (intention to award / award / not awarded) */
.idfc-hb .idfc-aw-tbl { overflow-x: auto; margin: 0 0 14px; }
.idfc-hb .idfc-aw-tbl table { width: 100%; border-collapse: collapse; font-size: 15px; }
.idfc-hb .idfc-aw-tbl th { text-align: left; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; color: var(--idfc-muted); font-weight: 600; padding: 8px 10px; border-bottom: 1px solid var(--idfc-rule); }
.idfc-hb .idfc-aw-tbl td { padding: 10px; border-bottom: 1px solid var(--idfc-rule); color: var(--idfc-text); vertical-align: top; }
.idfc-hb .idfc-aw-tbl td b { color: #0f1b2d; }
.idfc-hb .idfc-aw-tbl .is-v { text-align: right; white-space: nowrap; font-variant-numeric: tabular-nums; }
.idfc-hb .idfc-aw-note { background: var(--idfc-tile); border-radius: 12px; padding: 12px 14px; font-size: 14px; color: var(--idfc-text); margin: 0 0 14px !important; }
.idfc-hb .idfc-tp-aw:target { box-shadow: 0 0 0 2px var(--idfc-blue); }
@media (max-width: 600px) {
	.idfc-hb .idfc-aw-tbl thead { display: none; }
	.idfc-hb .idfc-aw-tbl tr { display: grid; gap: 2px; padding: 10px 0; border-bottom: 1px solid var(--idfc-rule); }
	.idfc-hb .idfc-aw-tbl td { border: 0; padding: 0; text-align: left !important; }
	.idfc-hb .idfc-aw-tbl td[data-l]:not(:first-child)::before { content: attr(data-l) ": "; color: var(--idfc-muted); font-size: 13px; }
}
