/* =============================================================
   AML THRESHOLD CHECKER · /tools/aml-threshold-checker/

   Page-scoped stylesheet. Namespace .igc-atc__*
   (grep-verified clean against main.css before naming).

   Layout:
     hero (countdown timer + stats + disclaimer)
       mode tabs (Scenario | Matrix)
         scenario pane (inputs + results grid)
         matrix pane (dense table)
       drawer (citation detail, shared)
============================================================= */

.igc-atc { color: var(--igc-text, rgba(255,255,255,0.9)); }

/* ----------------------------------------------------------------
   HERO
---------------------------------------------------------------- */
.igc-atc__hero {
	position: relative;
	padding: 3.5rem 0 2.5rem;
	overflow: hidden;
	border-bottom: 1px solid rgba(239,68,68,0.15);
}
.igc-atc__hero-bg {
	position: absolute; inset: 0;
	background:
		radial-gradient(900px 500px at 10% -10%, rgba(239,68,68,0.10), transparent 60%),
		radial-gradient(900px 500px at 90% 0%, rgba(91,141,239,0.10), transparent 60%);
	pointer-events: none; z-index: 0;
}
.igc-atc__hero > .igc-wrap { position: relative; z-index: 1; }

.igc-atc__crumbs {
	display: flex; align-items: center; gap: 0.5rem;
	font: 500 12px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.55);
	letter-spacing: 0.04em;
	margin-bottom: 1.4rem;
}
.igc-atc__crumbs a { color: rgba(255,255,255,0.7); text-decoration: none; }
.igc-atc__crumbs a:hover { color: #fff; }

.igc-atc__hero-eyebrow {
	display: inline-flex; align-items: center; gap: 0.55rem;
	font: 600 11px/1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.18em;
	color: rgba(255,255,255,0.65);
	margin-bottom: 0.9rem;
}
.igc-atc__pulse {
	width: 7px; height: 7px; border-radius: 50%;
	background: #ef4444;
	box-shadow: 0 0 10px rgba(239,68,68,0.7);
	animation: igcAtcPulse 2s ease-in-out infinite;
}
@keyframes igcAtcPulse { 0%,100% { opacity: 1; transform: scale(1); } 50% { opacity: 0.45; transform: scale(0.7); } }
.igc-atc__sep { width: 1px; height: 12px; background: rgba(255,255,255,0.2); }

.igc-atc__title {
	font: 700 clamp(2rem, 4vw, 3rem)/1.08 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	letter-spacing: -0.02em;
	color: #fff;
	margin: 0 0 0.85rem;
	max-width: 920px;
}
.igc-atc__lede {
	font-size: clamp(1rem, 1.3vw, 1.15rem);
	line-height: 1.55;
	color: rgba(255,255,255,0.72);
	max-width: 760px;
	margin: 0 0 1.8rem;
}

/* Refresh + countdown */
.igc-atc__refresh {
	display: flex; align-items: center; justify-content: space-between;
	gap: 1.5rem; flex-wrap: wrap;
	padding: 1rem 1.2rem;
	background: linear-gradient(135deg, rgba(91,141,239,0.06), rgba(239,68,68,0.04));
	border: 1px solid rgba(91,141,239,0.25);
	border-radius: 12px;
	margin-bottom: 1.6rem;
	max-width: 720px;
}
.igc-atc__refresh-left { display: flex; flex-direction: column; gap: 0.25rem; min-width: 0; }
.igc-atc__refresh-label {
	display: inline-flex; align-items: center; gap: 0.45rem;
	font: 600 11.5px/1.2 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: rgba(255,255,255,0.7);
}
.igc-atc__refresh-label strong { color: #fff; font-weight: 700; }
.igc-atc__refresh-meta { font-size: 13px; color: rgba(255,255,255,0.6); }
.igc-atc__refresh-meta strong { color: #fff; font-weight: 600; }
.igc-atc__countdown {
	display: flex; flex-direction: column; align-items: center; justify-content: center;
	min-width: 100px;
	padding: 0.55rem 1rem;
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	border-radius: 10px;
}
.igc-atc__countdown-num {
	font: 700 1.8rem/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	letter-spacing: -0.02em;
	font-variant-numeric: tabular-nums;
}
.igc-atc__countdown-lbl {
	font: 500 9.5px/1.1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	color: rgba(255,255,255,0.55);
	margin-top: 0.25rem;
	text-align: center;
}

/* Stats row */
.igc-atc__stats {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 0.7rem;
	max-width: 720px;
	margin-bottom: 1.4rem;
}
.igc-atc__stat {
	padding: 0.9rem 1rem;
	background: linear-gradient(160deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 10px;
}
.igc-atc__stat--high { border-color: rgba(16,185,129,0.3); }
.igc-atc__stat--med  { border-color: rgba(245,158,11,0.3); }
.igc-atc__stat--low  { border-color: rgba(239,68,68,0.3); }
.igc-atc__stat-num {
	font: 700 1.5rem/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	margin-bottom: 0.2rem;
	font-variant-numeric: tabular-nums;
}
.igc-atc__stat--high .igc-atc__stat-num { color: #6ee7b7; }
.igc-atc__stat--med  .igc-atc__stat-num { color: #fbbf24; }
.igc-atc__stat--low  .igc-atc__stat-num { color: #fca5a5; }
.igc-atc__stat-lbl {
	font: 500 10px/1.2 ui-monospace, monospace;
	color: rgba(255,255,255,0.55);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}

/* Disclaimer */
.igc-atc__disclaimer {
	display: flex; align-items: flex-start; gap: 0.65rem;
	padding: 0.9rem 1.1rem;
	background: rgba(245,158,11,0.06);
	border: 1px solid rgba(245,158,11,0.25);
	border-radius: 10px;
	font-size: 13px;
	line-height: 1.55;
	color: rgba(255,255,255,0.78);
}
.igc-atc__disclaimer svg { color: #fbbf24; flex: 0 0 auto; margin-top: 2px; }
.igc-atc__disclaimer a { color: #fbbf24; text-decoration: underline; text-underline-offset: 2px; }

/* ----------------------------------------------------------------
   MODE TABS
---------------------------------------------------------------- */
.igc-atc__mode {
	position: sticky;
	top: var(--igc-header-h, 64px);
	z-index: 20;
	background: rgba(5,11,26,0.85);
	backdrop-filter: blur(12px);
	-webkit-backdrop-filter: blur(12px);
	border-bottom: 1px solid rgba(255,255,255,0.08);
	padding: 0.7rem 0;
}
.igc-atc__mode-wrap { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; }
.igc-atc__mode-tabs {
	display: inline-flex;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.1);
	border-radius: 999px;
	padding: 3px;
}
.igc-atc__mode-tab {
	display: inline-flex; align-items: center; gap: 0.45rem;
	padding: 0.5rem 1rem;
	background: transparent;
	border: 0;
	color: rgba(255,255,255,0.7);
	font: 500 13px/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	letter-spacing: 0.01em;
	border-radius: 999px;
	cursor: pointer;
	transition: all 0.18s;
}
.igc-atc__mode-tab:hover { color: #fff; }
.igc-atc__mode-tab.is-active {
	background: linear-gradient(135deg, rgba(91,141,239,0.3), rgba(91,141,239,0.18));
	color: #fff;
	box-shadow: 0 4px 14px -6px rgba(91,141,239,0.5);
}
.igc-atc__mode-hint {
	font: 500 12px/1.4 ui-monospace, monospace;
	color: rgba(255,255,255,0.55);
	letter-spacing: 0.02em;
}

/* ----------------------------------------------------------------
   PANES
---------------------------------------------------------------- */
.igc-atc__pane { padding: 2.5rem 0 4rem; }
.igc-atc__pane[hidden] { display: none; }

.igc-atc__layout {
	display: grid;
	grid-template-columns: 380px minmax(0, 1fr);
	gap: 2rem;
	align-items: start;
}

/* ----------------------------------------------------------------
   SCENARIO - INPUTS PANEL
---------------------------------------------------------------- */
.igc-atc__inputs {
	position: sticky;
	top: calc(var(--igc-header-h, 64px) + 60px);
	background: linear-gradient(160deg, rgba(255,255,255,0.04), rgba(255,255,255,0.015));
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 14px;
	padding: 1.3rem;
	max-height: calc(100vh - var(--igc-header-h, 64px) - 90px);
	overflow-y: auto;
}
.igc-atc__input-group { margin-bottom: 1.5rem; }
.igc-atc__input-group:last-of-type { margin-bottom: 1rem; }
.igc-atc__input-head {
	display: flex; align-items: center; gap: 0.5rem;
	font: 600 11px/1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: rgba(255,255,255,0.65);
	margin-bottom: 0.75rem;
}
.igc-atc__input-num {
	display: inline-flex; align-items: center; justify-content: center;
	width: 18px; height: 18px;
	background: rgba(91,141,239,0.2);
	border: 1px solid rgba(91,141,239,0.4);
	border-radius: 50%;
	font: 700 11px/1 ui-monospace, monospace;
	color: #fff;
	letter-spacing: 0;
}
.igc-atc__input-meta {
	margin-left: auto;
	font-size: 10.5px;
	color: rgba(255,255,255,0.45);
	letter-spacing: 0.04em;
}

/* Jurisdiction picker */
.igc-atc__juris-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 0.35rem;
	max-height: 240px;
	overflow-y: auto;
	padding-right: 4px;
}
.igc-atc__juris {
	display: grid;
	grid-template-columns: 22px auto 1fr auto;
	align-items: center;
	gap: 0.5rem;
	padding: 0.5rem 0.6rem;
	background: rgba(255,255,255,0.025);
	border: 1px solid rgba(255,255,255,0.06);
	border-radius: 8px;
	cursor: pointer;
	transition: all 0.15s;
}
.igc-atc__juris:hover {
	background: rgba(255,255,255,0.05);
	border-color: rgba(255,255,255,0.15);
}
.igc-atc__juris.is-selected {
	background: rgba(91,141,239,0.12);
	border-color: rgba(91,141,239,0.45);
}
.igc-atc__juris input { accent-color: #5b8def; cursor: pointer; }
.igc-atc__juris-flag { font-size: 1.05rem; line-height: 1; }
.igc-atc__juris-body { display: flex; flex-direction: column; min-width: 0; }
.igc-atc__juris-name {
	font: 600 12.5px/1.2 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.igc-atc__juris-reg {
	font: 500 10px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.02em;
	margin-top: 2px;
	white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.igc-atc__juris-conf { display: inline-flex; gap: 2px; }
.igc-atc__conf-dot {
	display: inline-flex; align-items: center; justify-content: center;
	min-width: 18px; height: 16px;
	padding: 0 4px;
	border-radius: 3px;
	font: 600 9.5px/1 ui-monospace, monospace;
	color: rgba(0,0,0,0.85);
}
.igc-atc__conf-dot--h { background: rgba(110,231,183,0.7); }
.igc-atc__conf-dot--m { background: rgba(251,191,36,0.7); }
.igc-atc__conf-dot--l { background: rgba(252,165,165,0.7); }

/* Transaction inputs */
.igc-atc__tx { display: flex; flex-direction: column; gap: 0.85rem; }
.igc-atc__field { display: flex; flex-direction: column; gap: 0.4rem; }
.igc-atc__field label {
	font: 500 11.5px/1.2 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: rgba(255,255,255,0.75);
}
.igc-atc__field input[type="number"] {
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	color: #fff;
	font: 600 1.1rem/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	padding: 0.6rem 0.75rem;
	border-radius: 8px;
	font-variant-numeric: tabular-nums;
	outline: 0;
	transition: all 0.15s;
}
.igc-atc__field input[type="number"]:focus {
	background: rgba(255,255,255,0.09);
	border-color: rgba(91,141,239,0.5);
	box-shadow: 0 0 0 3px rgba(91,141,239,0.12);
}
.igc-atc__chips { display: flex; flex-wrap: wrap; gap: 0.3rem; }
.igc-atc__chip {
	padding: 0.4rem 0.7rem;
	background: rgba(255,255,255,0.04);
	border: 1px solid rgba(255,255,255,0.1);
	color: rgba(255,255,255,0.75);
	border-radius: 999px;
	font: 500 11.5px/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	cursor: pointer;
	transition: all 0.15s;
}
.igc-atc__chip:hover { background: rgba(255,255,255,0.08); color: #fff; }
.igc-atc__chip.is-active {
	background: rgba(91,141,239,0.18);
	border-color: rgba(91,141,239,0.5);
	color: #fff;
}
/* AUTO mode: the chip the AUTO setting resolved to gets a soft outline so
   you can see which explicit currency it picked, without lighting up as if
   it were manually locked. */
.igc-atc__chip.is-resolved {
	border-color: rgba(91,141,239,0.35);
	color: rgba(255,255,255,0.95);
	background: rgba(91,141,239,0.06);
}
.igc-atc__chips__note {
	margin-top: 0.4rem;
	font: 500 11px/1.45 ui-monospace, monospace;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.02em;
}
.igc-atc__field-ccy {
	font: 600 11px/1 ui-monospace, monospace;
	color: rgba(91,141,239,0.85);
	letter-spacing: 0.04em;
	margin-left: 0.3rem;
}
.igc-light .igc-atc__chip.is-resolved {
	border-color: rgba(91,141,239,0.35);
	background: rgba(91,141,239,0.06);
	color: #0f172a;
}
.igc-light .igc-atc__chips__note { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__field-ccy { color: #1e40af; }

/* Input footer buttons */
.igc-atc__input-foot {
	display: flex; gap: 0.5rem;
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid rgba(255,255,255,0.08);
}
.igc-atc__btn {
	display: inline-flex; align-items: center; justify-content: center; gap: 0.4rem;
	padding: 0.55rem 0.9rem;
	border-radius: 8px;
	font: 600 12px/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	cursor: pointer;
	transition: all 0.15s;
	flex: 1;
	border: 0;
}
.igc-atc__btn--ghost {
	background: transparent;
	border: 1px solid rgba(255,255,255,0.15);
	color: rgba(255,255,255,0.78);
}
.igc-atc__btn--ghost:hover { background: rgba(255,255,255,0.05); color: #fff; border-color: rgba(255,255,255,0.3); }
.igc-atc__btn--primary {
	background: linear-gradient(135deg, rgba(91,141,239,0.4), rgba(91,141,239,0.25));
	border: 1px solid rgba(91,141,239,0.55);
	color: #fff;
}
.igc-atc__btn--primary:hover {
	background: linear-gradient(135deg, rgba(91,141,239,0.55), rgba(91,141,239,0.35));
	box-shadow: 0 6px 18px -8px rgba(91,141,239,0.6);
}
.igc-atc__btn.is-copied { background: rgba(110,231,183,0.25); border-color: rgba(110,231,183,0.5); color: #6ee7b7; }

/* ----------------------------------------------------------------
   SCENARIO RESULTS
---------------------------------------------------------------- */
.igc-atc__results-head {
	display: flex; justify-content: space-between; align-items: flex-end;
	gap: 1rem; flex-wrap: wrap;
	margin-bottom: 1rem;
	padding-bottom: 0.8rem;
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
.igc-atc__results-eyebrow {
	font: 600 10.5px/1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	color: rgba(255,255,255,0.55);
	margin-bottom: 0.4rem;
}
.igc-atc__results-title {
	font: 600 1.15rem/1.25 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
}
.igc-atc__results-legend { display: flex; gap: 0.85rem; flex-wrap: wrap; }
.igc-atc__legend {
	display: inline-flex; align-items: center; gap: 0.35rem;
	font: 500 11px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.6);
	letter-spacing: 0.03em;
}
.igc-atc__legend-dot { width: 7px; height: 7px; border-radius: 50%; }
.igc-atc__legend-dot--fire  { background: #ef4444; box-shadow: 0 0 6px rgba(239,68,68,0.7); }
.igc-atc__legend-dot--cond  { background: #fbbf24; box-shadow: 0 0 6px rgba(251,191,36,0.6); }
.igc-atc__legend-dot--quiet { background: rgba(255,255,255,0.2); }

.igc-atc__results-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
	gap: 0.85rem;
}
.igc-atc__juris-card {
	background: linear-gradient(160deg, rgba(255,255,255,0.04), rgba(255,255,255,0.01));
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 14px;
	overflow: hidden;
}
.igc-atc__juris-card-head {
	display: flex; justify-content: space-between; align-items: center;
	gap: 0.6rem;
	padding: 0.9rem 1.1rem;
	background: rgba(255,255,255,0.025);
	border-bottom: 1px solid rgba(255,255,255,0.06);
}
.igc-atc__juris-card-id {
	display: flex; align-items: center; gap: 0.6rem;
}
.igc-atc__juris-card-flag { font-size: 1.2rem; }
.igc-atc__juris-card-name {
	font: 600 1rem/1.2 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
}
.igc-atc__juris-card-reg {
	font: 500 10.5px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.55);
	letter-spacing: 0.02em;
	margin-top: 2px;
}
.igc-atc__juris-card-count {
	font: 600 10.5px/1 ui-monospace, monospace;
	color: rgba(239,68,68,0.85);
	letter-spacing: 0.04em;
}
.igc-atc__juris-card-count--quiet { color: rgba(255,255,255,0.5); }

.igc-atc__oblig-list { padding: 0.5rem 0.6rem; }
.igc-atc__oblig {
	display: grid;
	grid-template-columns: 8px 1fr auto;
	gap: 0.6rem;
	padding: 0.6rem 0.55rem;
	border-radius: 8px;
	cursor: pointer;
	transition: background 0.15s;
}
.igc-atc__oblig:hover { background: rgba(255,255,255,0.04); }
.igc-atc__oblig-bar {
	width: 4px;
	background: rgba(255,255,255,0.1);
	border-radius: 2px;
	align-self: stretch;
}
.igc-atc__oblig--fire .igc-atc__oblig-bar  { background: #ef4444; box-shadow: 0 0 6px rgba(239,68,68,0.6); }
.igc-atc__oblig--cond .igc-atc__oblig-bar  { background: #fbbf24; }
.igc-atc__oblig--quiet { opacity: 0.55; }
.igc-atc__oblig-body { display: flex; flex-direction: column; min-width: 0; gap: 0.2rem; }
.igc-atc__oblig-title {
	font: 600 12.5px/1.3 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
}
.igc-atc__oblig-sub {
	font: 500 11.5px/1.4 ui-monospace, monospace;
	color: rgba(255,255,255,0.6);
	letter-spacing: 0.02em;
}
.igc-atc__oblig-meta {
	display: flex; flex-direction: column; align-items: flex-end; gap: 0.2rem;
}
.igc-atc__oblig-amount {
	font: 700 12.5px/1 ui-monospace, monospace;
	color: #fff;
	letter-spacing: 0.02em;
	font-variant-numeric: tabular-nums;
}
.igc-atc__oblig-conf {
	font: 600 9.5px/1 ui-monospace, monospace;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 2px 5px;
	border-radius: 3px;
}
.igc-atc__oblig-conf--high   { background: rgba(110,231,183,0.18); color: #6ee7b7; }
.igc-atc__oblig-conf--medium { background: rgba(251,191,36,0.18);  color: #fbbf24; }
.igc-atc__oblig-conf--low    { background: rgba(252,165,165,0.18); color: #fca5a5; }

/* ----------------------------------------------------------------
   COMPLIANCE MATRIX
---------------------------------------------------------------- */
.igc-atc__matrix-head { margin-bottom: 1.2rem; }
.igc-atc__matrix-title {
	font: 700 1.4rem/1.2 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	margin-bottom: 0.35rem;
}
.igc-atc__matrix-sub {
	font-size: 13.5px;
	line-height: 1.55;
	color: rgba(255,255,255,0.68);
	max-width: 860px;
}
.igc-atc__matrix-sub strong { color: #fff; font-weight: 600; }

.igc-atc__matrix-scroll {
	overflow-x: auto;
	background: rgba(255,255,255,0.02);
	border: 1px solid rgba(255,255,255,0.08);
	border-radius: 12px;
}
.igc-atc__matrix {
	border-collapse: collapse;
	width: 100%;
	min-width: 1200px;
	font: 500 12px/1.4 ui-monospace, 'SF Mono', Menlo, monospace;
}
.igc-atc__matrix thead { background: rgba(91,141,239,0.06); }
.igc-atc__matrix-col {
	padding: 0.7rem 0.5rem;
	text-align: left;
	font: 600 10px/1.3 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	color: rgba(255,255,255,0.65);
	border-bottom: 1px solid rgba(255,255,255,0.1);
	min-width: 110px;
	max-width: 130px;
	white-space: normal;
	vertical-align: bottom;
}
.igc-atc__matrix-corner {
	padding: 0.7rem 0.9rem;
	text-align: left;
	font: 600 10px/1.3 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	color: rgba(255,255,255,0.55);
	border-bottom: 1px solid rgba(255,255,255,0.1);
	position: sticky; left: 0;
	background: rgba(8,15,30,0.95);
	z-index: 2;
}
.igc-atc__matrix-row {
	padding: 0.65rem 0.9rem;
	font-weight: 600;
	color: #fff;
	border-bottom: 1px solid rgba(255,255,255,0.06);
	position: sticky; left: 0;
	background: rgba(8,15,30,0.95);
	min-width: 220px;
	text-align: left;
}
.igc-atc__matrix-row { display: flex; align-items: center; gap: 0.6rem; }
.igc-atc__matrix-flag { font-size: 1.05rem; }
.igc-atc__matrix-jur { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.igc-atc__matrix-jur-name {
	font: 600 12.5px/1.2 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
}
.igc-atc__matrix-jur-reg {
	font: 500 9.5px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.5);
	letter-spacing: 0.02em;
}

.igc-atc__matrix-cell {
	padding: 0.55rem 0.5rem;
	text-align: center;
	border-bottom: 1px solid rgba(255,255,255,0.05);
	border-left: 1px solid rgba(255,255,255,0.04);
	cursor: pointer;
	transition: background 0.15s;
	position: relative;
	font-variant-numeric: tabular-nums;
}
.igc-atc__matrix-cell:hover {
	background: rgba(91,141,239,0.12);
}
.igc-atc__matrix-cell:focus-visible {
	outline: 2px solid rgba(91,141,239,0.6);
	outline-offset: -2px;
}
.igc-atc__matrix-cell::before {
	content: '';
	position: absolute; top: 0; right: 0;
	width: 4px; height: 4px;
	border-radius: 50%;
}
.igc-atc__matrix-cell--high::before   { background: #6ee7b7; }
.igc-atc__matrix-cell--medium::before { background: #fbbf24; }
.igc-atc__matrix-cell--low::before    { background: #fca5a5; }
.igc-atc__matrix-val {
	display: block;
	color: #fff;
	font-weight: 600;
	font-size: 12px;
}
.igc-atc__matrix-basis {
	display: block;
	margin-top: 2px;
	color: rgba(255,255,255,0.5);
	font-size: 10px;
	letter-spacing: 0.04em;
}

.igc-atc__matrix-foot {
	display: flex; justify-content: space-between; align-items: center;
	flex-wrap: wrap; gap: 0.75rem;
	margin-top: 1rem;
	padding: 0.6rem 0.4rem;
	font-size: 11.5px;
	color: rgba(255,255,255,0.55);
}
.igc-atc__matrix-conflegend { display: flex; gap: 1rem; flex-wrap: wrap; }
.igc-atc__matrix-conflegend-item {
	display: inline-flex; align-items: center; gap: 0.4rem;
	font: 500 11px/1 ui-monospace, monospace;
	letter-spacing: 0.04em;
}
.igc-atc__cell-dot { width: 7px; height: 7px; border-radius: 50%; }
.igc-atc__cell-dot--high   { background: #6ee7b7; }
.igc-atc__cell-dot--medium { background: #fbbf24; }
.igc-atc__cell-dot--low    { background: #fca5a5; }

/* ----------------------------------------------------------------
   CITATION DRAWER
---------------------------------------------------------------- */
.igc-atc__drawer { position: fixed; inset: 0; z-index: 60; }
.igc-atc__drawer[hidden] { display: none; }
.igc-atc__drawer-scrim {
	position: absolute; inset: 0;
	background: rgba(2,6,16,0.65);
	backdrop-filter: blur(4px);
	-webkit-backdrop-filter: blur(4px);
	animation: igcAtcFade 0.2s ease;
}
@keyframes igcAtcFade { from { opacity: 0; } to { opacity: 1; } }
.igc-atc__drawer-panel {
	position: absolute; top: 0; right: 0; bottom: 0;
	width: min(560px, 100%);
	background: linear-gradient(180deg, #0a1226 0%, #060d1e 100%);
	border-left: 1px solid rgba(91,141,239,0.25);
	box-shadow: -24px 0 60px -20px rgba(0,0,0,0.6);
	display: flex; flex-direction: column;
	overflow: hidden;
	animation: igcAtcSlide 0.25s cubic-bezier(0.4,0,0.2,1);
}
@keyframes igcAtcSlide { from { transform: translateX(20px); opacity: 0; } to { transform: translateX(0); opacity: 1; } }
.igc-atc__drawer-head {
	display: flex; align-items: flex-start; justify-content: space-between; gap: 0.75rem;
	padding: 1.3rem 1.5rem 1rem;
	border-bottom: 1px solid rgba(255,255,255,0.08);
}
.igc-atc__drawer-eyebrow {
	font: 600 11px/1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.16em;
	color: rgba(91,141,239,0.85);
	margin-bottom: 0.4rem;
}
.igc-atc__drawer-title {
	font: 600 1.15rem/1.3 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	margin: 0;
}
.igc-atc__drawer-close {
	background: rgba(255,255,255,0.06);
	border: 1px solid rgba(255,255,255,0.12);
	color: rgba(255,255,255,0.75);
	width: 32px; height: 32px;
	border-radius: 50%;
	display: inline-flex; align-items: center; justify-content: center;
	cursor: pointer;
	flex: 0 0 auto;
	transition: all 0.15s;
}
.igc-atc__drawer-close:hover { background: rgba(255,255,255,0.12); color: #fff; }
.igc-atc__drawer-body {
	flex: 1; min-height: 0;
	overflow-y: auto;
	padding: 1.3rem 1.5rem 2rem;
}

.igc-atc__drawer-section { margin-bottom: 1.4rem; }
.igc-atc__drawer-section:last-child { margin-bottom: 0; }
.igc-atc__drawer-section h4 {
	font: 600 10.5px/1 ui-monospace, monospace;
	text-transform: uppercase;
	letter-spacing: 0.14em;
	color: rgba(255,255,255,0.55);
	margin: 0 0 0.5rem;
}
.igc-atc__drawer-amount {
	display: flex; align-items: baseline; gap: 0.55rem;
	margin-bottom: 0.5rem;
}
.igc-atc__drawer-amount-val {
	font: 700 1.7rem/1 var(--igc-font, 'DM Sans', system-ui, sans-serif);
	color: #fff;
	letter-spacing: -0.01em;
	font-variant-numeric: tabular-nums;
}
.igc-atc__drawer-amount-basis {
	font: 600 11px/1 ui-monospace, monospace;
	color: rgba(255,255,255,0.55);
	text-transform: uppercase;
	letter-spacing: 0.06em;
}
.igc-atc__drawer-action,
.igc-atc__drawer-notes p {
	font-size: 13.5px;
	line-height: 1.55;
	color: rgba(255,255,255,0.78);
	margin: 0;
}
.igc-atc__drawer-statute {
	display: inline-flex; align-items: center; gap: 0.4rem;
	padding: 0.55rem 0.75rem;
	background: rgba(91,141,239,0.1);
	border: 1px solid rgba(91,141,239,0.3);
	color: #cfd8e3;
	border-radius: 8px;
	font: 500 12.5px/1.3 ui-monospace, monospace;
	text-decoration: none;
	letter-spacing: 0.02em;
	transition: all 0.15s;
}
.igc-atc__drawer-statute:hover {
	background: rgba(91,141,239,0.18);
	border-color: rgba(91,141,239,0.55);
	color: #fff;
}
.igc-atc__drawer-statute--nolink {
	cursor: default;
	opacity: 0.7;
}
.igc-atc__drawer-conf {
	display: inline-flex; align-items: center; gap: 0.45rem;
	padding: 0.4rem 0.7rem;
	border-radius: 999px;
	font: 600 11px/1 ui-monospace, monospace;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}
.igc-atc__drawer-conf--high   { background: rgba(110,231,183,0.15); color: #6ee7b7; border: 1px solid rgba(110,231,183,0.35); }
.igc-atc__drawer-conf--medium { background: rgba(251,191,36,0.15);  color: #fbbf24; border: 1px solid rgba(251,191,36,0.35); }
.igc-atc__drawer-conf--low    { background: rgba(252,165,165,0.15); color: #fca5a5; border: 1px solid rgba(252,165,165,0.35); }
.igc-atc__drawer-conf-dot { width: 6px; height: 6px; border-radius: 50%; background: currentColor; }

/* ----------------------------------------------------------------
   RESPONSIVE
---------------------------------------------------------------- */
@media (max-width: 980px) {
	.igc-atc__layout { grid-template-columns: 1fr; }
	.igc-atc__inputs { position: relative; top: auto; max-height: none; }
	.igc-atc__stats { grid-template-columns: repeat(2, 1fr); }
	.igc-atc__results-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
	.igc-atc__hero { padding: 2.2rem 0 1.8rem; }
	.igc-atc__refresh { flex-direction: column; align-items: stretch; }
	.igc-atc__countdown { align-self: flex-start; }
}

/* ----------------------------------------------------------------
   LIGHT MODE (Variant B)
---------------------------------------------------------------- */
.igc-light .igc-atc { color: var(--igc-text, #0f172a); }
.igc-light .igc-atc__hero { border-bottom-color: rgba(15,23,42,0.08); }
.igc-light .igc-atc__hero-bg { opacity: 0.5; }
.igc-light .igc-atc__crumbs { color: rgba(15,23,42,0.6); }
.igc-light .igc-atc__crumbs a { color: #334155; }
.igc-light .igc-atc__crumbs a:hover { color: #0f172a; }
.igc-light .igc-atc__hero-eyebrow { color: rgba(15,23,42,0.65); }
.igc-light .igc-atc__sep { background: rgba(15,23,42,0.18); }
.igc-light .igc-atc__title { color: #0f172a; }
.igc-light .igc-atc__lede { color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__refresh {
	background: linear-gradient(135deg, rgba(91,141,239,0.06), rgba(239,68,68,0.04));
	border-color: rgba(91,141,239,0.3);
}
.igc-light .igc-atc__refresh-label { color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__refresh-label strong { color: #0f172a; }
.igc-light .igc-atc__refresh-meta { color: rgba(15,23,42,0.6); }
.igc-light .igc-atc__refresh-meta strong { color: #0f172a; }
.igc-light .igc-atc__countdown {
	background: rgba(255,255,255,0.85);
	border-color: rgba(15,23,42,0.12);
}
.igc-light .igc-atc__countdown-num { color: #0f172a; }
.igc-light .igc-atc__countdown-lbl { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__stat {
	background: rgba(255,255,255,0.75);
	border-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__stat-num { color: #0f172a; }
.igc-light .igc-atc__stat--high .igc-atc__stat-num { color: #047857; }
.igc-light .igc-atc__stat--med  .igc-atc__stat-num { color: #b45309; }
.igc-light .igc-atc__stat--low  .igc-atc__stat-num { color: #b91c1c; }
.igc-light .igc-atc__stat-lbl { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__disclaimer {
	background: rgba(245,158,11,0.08);
	color: rgba(15,23,42,0.8);
}
.igc-light .igc-atc__disclaimer svg { color: #b45309; }
.igc-light .igc-atc__disclaimer a { color: #b45309; }

.igc-light .igc-atc__mode {
	background: rgba(255,255,255,0.9);
	border-bottom-color: rgba(15,23,42,0.08);
}
.igc-light .igc-atc__mode-tabs {
	background: rgba(15,23,42,0.04);
	border-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__mode-tab { color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__mode-tab:hover { color: #0f172a; }
.igc-light .igc-atc__mode-tab.is-active {
	background: linear-gradient(135deg, #5b8def, #4f7dd9);
	color: #fff;
}
.igc-light .igc-atc__mode-hint { color: rgba(15,23,42,0.55); }

.igc-light .igc-atc__inputs {
	background: rgba(255,255,255,0.85);
	border-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__input-head { color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__input-num { background: rgba(91,141,239,0.18); border-color: rgba(91,141,239,0.4); color: #1e40af; }
.igc-light .igc-atc__input-meta { color: rgba(15,23,42,0.5); }
.igc-light .igc-atc__juris { background: rgba(15,23,42,0.03); border-color: rgba(15,23,42,0.08); }
.igc-light .igc-atc__juris:hover { background: rgba(15,23,42,0.06); border-color: rgba(15,23,42,0.18); }
.igc-light .igc-atc__juris.is-selected { background: rgba(91,141,239,0.1); border-color: rgba(91,141,239,0.5); }
.igc-light .igc-atc__juris-name { color: #0f172a; }
.igc-light .igc-atc__juris-reg { color: rgba(15,23,42,0.5); }
.igc-light .igc-atc__field label { color: rgba(15,23,42,0.75); }
.igc-light .igc-atc__field input[type="number"] {
	background: #fff;
	border-color: rgba(15,23,42,0.15);
	color: #0f172a;
}
.igc-light .igc-atc__field input[type="number"]:focus {
	border-color: rgba(91,141,239,0.5);
	box-shadow: 0 0 0 3px rgba(91,141,239,0.15);
}
.igc-light .igc-atc__chip {
	background: rgba(15,23,42,0.04);
	border-color: rgba(15,23,42,0.1);
	color: rgba(15,23,42,0.78);
}
.igc-light .igc-atc__chip:hover { background: rgba(15,23,42,0.08); color: #0f172a; }
.igc-light .igc-atc__chip.is-active {
	background: rgba(91,141,239,0.12);
	border-color: rgba(91,141,239,0.5);
	color: #0f172a;
}
.igc-light .igc-atc__input-foot { border-top-color: rgba(15,23,42,0.08); }
.igc-light .igc-atc__btn--ghost { border-color: rgba(15,23,42,0.15); color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__btn--ghost:hover { background: rgba(15,23,42,0.04); color: #0f172a; border-color: rgba(15,23,42,0.3); }

.igc-light .igc-atc__results-head { border-bottom-color: rgba(15,23,42,0.08); }
.igc-light .igc-atc__results-eyebrow { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__results-title { color: #0f172a; }
.igc-light .igc-atc__legend { color: rgba(15,23,42,0.6); }
.igc-light .igc-atc__juris-card {
	background: rgba(255,255,255,0.92);
	border-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__juris-card-head {
	background: rgba(15,23,42,0.025);
	border-bottom-color: rgba(15,23,42,0.06);
}
.igc-light .igc-atc__juris-card-name { color: #0f172a; }
.igc-light .igc-atc__juris-card-reg { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__juris-card-count { color: #b91c1c; }
.igc-light .igc-atc__juris-card-count--quiet { color: rgba(15,23,42,0.5); }
.igc-light .igc-atc__oblig:hover { background: rgba(15,23,42,0.035); }
.igc-light .igc-atc__oblig-title { color: #0f172a; }
.igc-light .igc-atc__oblig-sub { color: rgba(15,23,42,0.6); }
.igc-light .igc-atc__oblig-amount { color: #0f172a; }
.igc-light .igc-atc__oblig-conf--high   { background: rgba(110,231,183,0.25); color: #047857; }
.igc-light .igc-atc__oblig-conf--medium { background: rgba(251,191,36,0.25);  color: #b45309; }
.igc-light .igc-atc__oblig-conf--low    { background: rgba(252,165,165,0.25); color: #b91c1c; }

.igc-light .igc-atc__matrix-title { color: #0f172a; }
.igc-light .igc-atc__matrix-sub { color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__matrix-sub strong { color: #0f172a; }
.igc-light .igc-atc__matrix-scroll {
	background: rgba(255,255,255,0.7);
	border-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__matrix thead { background: rgba(91,141,239,0.08); }
.igc-light .igc-atc__matrix-corner {
	background: rgba(241,245,249,0.98);
	color: rgba(15,23,42,0.65);
	border-bottom-color: rgba(15,23,42,0.1);
}
.igc-light .igc-atc__matrix-col { color: rgba(15,23,42,0.7); border-bottom-color: rgba(15,23,42,0.1); }
.igc-light .igc-atc__matrix-row {
	background: rgba(241,245,249,0.98);
	border-bottom-color: rgba(15,23,42,0.06);
	color: #0f172a;
}
.igc-light .igc-atc__matrix-jur-name { color: #0f172a; }
.igc-light .igc-atc__matrix-jur-reg { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__matrix-cell { border-bottom-color: rgba(15,23,42,0.06); border-left-color: rgba(15,23,42,0.04); }
.igc-light .igc-atc__matrix-cell:hover { background: rgba(91,141,239,0.1); }
.igc-light .igc-atc__matrix-val { color: #0f172a; }
.igc-light .igc-atc__matrix-basis { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__matrix-foot { color: rgba(15,23,42,0.6); }

.igc-light .igc-atc__drawer-scrim { background: rgba(248,250,253,0.78); }
.igc-light .igc-atc__drawer-panel {
	background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
	border-left-color: rgba(91,141,239,0.25);
}
.igc-light .igc-atc__drawer-head { border-bottom-color: rgba(15,23,42,0.08); }
.igc-light .igc-atc__drawer-eyebrow { color: #1e40af; }
.igc-light .igc-atc__drawer-title { color: #0f172a; }
.igc-light .igc-atc__drawer-close { background: rgba(15,23,42,0.06); border-color: rgba(15,23,42,0.12); color: rgba(15,23,42,0.7); }
.igc-light .igc-atc__drawer-close:hover { background: rgba(15,23,42,0.12); color: #0f172a; }
.igc-light .igc-atc__drawer-section h4 { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__drawer-amount-val { color: #0f172a; }
.igc-light .igc-atc__drawer-amount-basis { color: rgba(15,23,42,0.55); }
.igc-light .igc-atc__drawer-action,
.igc-light .igc-atc__drawer-notes p { color: rgba(15,23,42,0.78); }
.igc-light .igc-atc__drawer-statute {
	background: rgba(91,141,239,0.1);
	border-color: rgba(91,141,239,0.35);
	color: #1e40af;
}
.igc-light .igc-atc__drawer-statute:hover {
	background: rgba(91,141,239,0.18);
	color: #0f172a;
}
