/* BSF Advanced Learning Hub — SM-2 Flashcards (corporate / Bloomberg aesthetic) */
.bsf-lh-app, .bsf-lh-gate {
	--bsf-navy: #0b1f3a;
	--bsf-navy-2: #13294b;
	--bsf-gold: #c9a227;
	--bsf-ink: #1a2230;
	--bsf-line: #e4e8ef;
	--bsf-good: #1d8a52;
	--bsf-bad: #b3341f;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
	max-width: 720px;
	margin: 0 auto;
	color: var(--bsf-ink);
}

/* Header / stats */
.bsf-lh-head {
	display: flex; justify-content: space-between; align-items: center;
	background: var(--bsf-navy); color: #fff;
	border-radius: 12px 12px 0 0; padding: 14px 20px; gap: 12px;
}
.bsf-lh-head .bsf-lh-stat { text-align: center; font-size: 12px; letter-spacing: .04em; text-transform: uppercase; opacity: .85; }
.bsf-lh-head .bsf-lh-stat b { display: block; font-size: 20px; color: var(--bsf-gold); letter-spacing: 0; }

/* Card */
.bsf-lh-card {
	border: 1px solid var(--bsf-line); border-top: none;
	background: #fff; padding: 36px 28px; min-height: 220px;
	display: flex; flex-direction: column; justify-content: center;
}
.bsf-lh-q { font-size: 20px; font-weight: 600; line-height: 1.45; }
.bsf-lh-divider { height: 1px; background: var(--bsf-line); margin: 22px 0; }
.bsf-lh-a { font-size: 17px; line-height: 1.6; color: #33405a; }
.bsf-lh-a.hidden { display: none; }

/* Buttons */
.bsf-lh-actions { display: flex; gap: 10px; padding: 16px 20px; border: 1px solid var(--bsf-line); border-top: none; border-radius: 0 0 12px 12px; background: #fafbfd; }
.bsf-lh-btn {
	flex: 1; text-align: center; cursor: pointer; border: none;
	padding: 14px 10px; border-radius: 8px; font-size: 14px; font-weight: 700;
	color: #fff; background: var(--bsf-navy-2); text-decoration: none; transition: transform .06s ease, filter .15s ease;
}
.bsf-lh-btn:hover { filter: brightness(1.08); }
.bsf-lh-btn:active { transform: translateY(1px); }
.bsf-lh-show { width: 100%; background: var(--bsf-gold); color: var(--bsf-navy); }
.bsf-lh-grade { display: flex; gap: 10px; width: 100%; }
.bsf-grade-0 { background: var(--bsf-bad); }
.bsf-grade-3 { background: #6b7280; }
.bsf-grade-4 { background: #2563a8; }
.bsf-grade-5 { background: var(--bsf-good); }
.bsf-lh-grade small { display: block; font-weight: 500; font-size: 11px; opacity: .85; }

/* States */
.bsf-lh-loading, .bsf-lh-done, .bsf-lh-error { padding: 40px; text-align: center; color: #5b6675; }
.bsf-lh-done h3 { color: var(--bsf-navy); font-size: 22px; }
.bsf-lh-toast { text-align: center; font-size: 13px; color: var(--bsf-good); height: 18px; margin-top: 8px; }

/* Gate */
.bsf-lh-gate { border: 1px solid var(--bsf-line); border-radius: 12px; padding: 32px; text-align: center; background: #fff; }
.bsf-lh-gate h3 { color: var(--bsf-navy); margin-top: 0; }
.bsf-lh-gate .bsf-lh-btn { display: inline-block; max-width: 280px; margin-top: 8px; }
