/* Minification failed. Returning unminified contents.
(7,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(9,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(24,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(25,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(29,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(30,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(31,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(32,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(35,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(36,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(37,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(38,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(39,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(40,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(41,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(42,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(43,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(44,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(45,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(46,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(49,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(50,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(51,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(52,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(53,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(54,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(55,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(58,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(61,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(62,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(63,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(64,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(65,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(66,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(67,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(68,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(71,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(72,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(73,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(74,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(75,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(76,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(77,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(78,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(79,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(80,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(81,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(82,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(83,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(84,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(85,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(86,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(89,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(92,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(93,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(94,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(95,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(97,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(100,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(101,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(102,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(109,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(110,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(111,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(112,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(115,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(116,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(117,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(118,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(119,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(120,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(123,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(124,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(125,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(126,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(127,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(128,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(129,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(130,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(131,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(132,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(133,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(134,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(139,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(140,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(141,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(142,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(143,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(144,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(145,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(148,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(151,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(152,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(153,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(154,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(155,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(156,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(157,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(158,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(161,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(162,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(163,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(164,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(165,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(166,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(167,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(168,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(169,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(170,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(171,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(172,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(173,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(174,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(175,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(176,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(179,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(182,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(183,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(184,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(185,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(186,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(189,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(190,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(191,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(194,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(195,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(196,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(197,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(198,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(203,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(206,22): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(224,46): run-time error CSS1039: Token not allowed after unary operator: '-scrollbar-track'
(225,46): run-time error CSS1039: Token not allowed after unary operator: '-scrollbar-thumb'
(226,52): run-time error CSS1039: Token not allowed after unary operator: '-scrollbar-thumb-hover'
(236,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-page'
(237,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(296,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(297,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(298,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(302,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(303,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(306,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(307,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(308,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(313,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(316,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(317,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(318,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(321,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(322,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(323,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(326,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(327,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(328,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(329,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(334,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(335,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(340,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(341,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(345,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(346,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(350,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(351,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(354,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(355,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(358,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(362,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(365,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(366,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(367,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(373,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(374,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(375,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(378,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(383,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(386,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(387,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(388,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(392,24): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(395,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(400,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(401,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(422,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(423,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(426,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(436,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(440,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(441,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(444,28): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(449,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(450,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(453,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(454,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(455,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(458,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(463,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(464,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(467,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(468,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(476,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(482,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(483,29): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(484,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(487,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(488,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(494,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(498,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(501,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(505,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(509,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(514,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(515,24): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(516,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(519,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(522,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(523,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(528,28): run-time error CSS1039: Token not allowed after unary operator: '-status-info-bg'
(529,17): run-time error CSS1039: Token not allowed after unary operator: '-status-info-text'
(530,24): run-time error CSS1039: Token not allowed after unary operator: '-status-info'
(533,28): run-time error CSS1039: Token not allowed after unary operator: '-status-success-bg'
(534,17): run-time error CSS1039: Token not allowed after unary operator: '-status-success-text'
(535,24): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(538,28): run-time error CSS1039: Token not allowed after unary operator: '-status-warning-bg'
(539,17): run-time error CSS1039: Token not allowed after unary operator: '-status-warning-text'
(542,28): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(543,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(544,24): run-time error CSS1039: Token not allowed after unary operator: '-status-danger'
(549,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(550,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(551,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(554,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(555,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(556,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(559,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(560,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(565,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(570,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(576,28): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(581,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(586,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(589,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(592,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(595,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(604,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(611,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(615,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(621,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(626,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(629,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(632,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(637,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(649,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(652,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(657,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(668,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(674,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(682,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(689,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(694,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(700,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(706,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(711,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-bright'
(718,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(721,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(724,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(727,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(728,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(731,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(735,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(738,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(742,31): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(745,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(746,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(747,31): run-time error CSS1039: Token not allowed after unary operator: '-border-light'
(752,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(757,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(760,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(761,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(764,22): run-time error CSS1039: Token not allowed after unary operator: '-status-success-bg'
(765,17): run-time error CSS1039: Token not allowed after unary operator: '-status-success-text'
(768,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(772,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(775,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(778,29): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(782,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(785,22): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(786,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(789,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(790,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(793,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(794,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(803,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(806,35): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(813,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(818,35): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(834,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(835,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(840,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(845,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(850,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(858,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(861,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(864,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(867,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(870,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(873,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(876,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(879,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(882,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(888,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(891,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(891,70): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(892,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(893,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(901,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(904,58): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(905,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(908,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(909,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(923,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(924,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(935,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(936,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(937,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(943,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(951,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(957,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(957,70): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(958,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(965,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(970,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(980,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(988,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(996,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1002,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1003,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(1009,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1010,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1016,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1021,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1022,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1023,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1026,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1027,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1032,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1041,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1046,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1047,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1056,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1057,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1058,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1061,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1062,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1071,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1073,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1076,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1077,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1087,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1089,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1093,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(1094,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1098,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1099,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1108,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-bright'
(1110,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-bright'
(1165,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1166,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1167,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1170,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1181,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1182,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1185,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1186,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1193,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1201,43): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1201,92): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1202,44): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1202,92): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1203,43): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1203,88): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1204,43): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1204,87): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1205,30): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1206,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1207,31): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1208,32): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1209,34): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1210,30): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1211,32): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1212,32): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(1213,41): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1214,40): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1215,39): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1216,39): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1217,41): run-time error CSS1039: Token not allowed after unary operator: '-status-success-bg'
(1218,40): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1219,41): run-time error CSS1039: Token not allowed after unary operator: '-status-warning-bg'
(1220,39): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1221,40): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1222,41): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1239,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1239,79): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1240,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(1244,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1248,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1253,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1254,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1258,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1259,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1263,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1267,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1268,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1269,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1273,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1277,22): run-time error CSS1039: Token not allowed after unary operator: '-status-success-bg'
(1278,24): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(1282,17): run-time error CSS1039: Token not allowed after unary operator: '-status-success-text'
(1286,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1286,79): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1287,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(1288,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1291,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-soft'
(1294,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1298,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1299,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1302,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1311,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1312,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1315,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1315,70): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1316,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1317,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1320,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1323,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1324,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1325,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1328,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-page'
(1331,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1334,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1335,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1338,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1341,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1345,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1345,70): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1346,29): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1347,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1350,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1353,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1354,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1357,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-page'
(1358,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1368,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1371,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1376,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1381,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1382,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1387,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1390,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1395,28): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1398,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1402,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1409,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(1414,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1415,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent-bright'
(1418,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1419,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1424,22): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1425,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1428,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1429,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(1441,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1442,24): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1445,28): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1449,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1450,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1460,28): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(1461,24): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(1469,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1470,28): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(1473,28): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1477,28): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1478,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1489,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1495,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1496,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1499,22): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1500,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1503,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1504,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1509,22): run-time error CSS1039: Token not allowed after unary operator: '-status-info-bg'
(1510,17): run-time error CSS1039: Token not allowed after unary operator: '-status-info-text'
(1513,22): run-time error CSS1039: Token not allowed after unary operator: '-status-success-bg'
(1514,17): run-time error CSS1039: Token not allowed after unary operator: '-status-success-text'
(1517,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(1518,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1521,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(1528,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1533,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1538,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1552,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1557,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1558,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1561,22): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1562,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(1567,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1570,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1589,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1590,17): run-time error CSS1039: Token not allowed after unary operator: '-text-tertiary'
(1591,32): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1596,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1597,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1600,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1606,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1607,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1612,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1613,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1614,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1617,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1620,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1623,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1624,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1627,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(1628,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1631,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1634,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1637,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1638,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1641,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1644,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1647,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1648,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1653,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1654,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1657,22): run-time error CSS1039: Token not allowed after unary operator: '-status-danger-bg'
(1658,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1663,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1668,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1669,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1672,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1675,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1676,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1682,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1690,22): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1691,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary-on-accent'
(1696,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1697,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1698,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1701,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1702,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1711,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1712,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1715,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1716,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1719,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1722,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1733,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1736,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1739,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1744,28): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1749,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1752,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-gold-tint'
(1795,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1796,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1797,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1809,79): run-time error CSS1030: Expected identifier, found '*'
(1809,80): run-time error CSS1031: Expected selector, found ')'
(1809,80): run-time error CSS1025: Expected comma or open brace, found ')'
(1818,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1821,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(1825,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1828,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1835,17): run-time error CSS1039: Token not allowed after unary operator: '-cp-brand-nav-text'
(1835,42): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(1842,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(1846,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-muted'
(1870,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1883,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1893,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1894,24): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1897,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1898,24): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1901,58): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(1902,24): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(1905,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1908,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1919,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(1920,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1921,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(1930,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(1933,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1936,17): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(1939,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(1945,17): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(1995,22): run-time error CSS1039: Token not allowed after unary operator: '-status-info-bg'
(1996,17): run-time error CSS1039: Token not allowed after unary operator: '-status-info-text'
(1997,24): run-time error CSS1039: Token not allowed after unary operator: '-status-info-border'
(2002,46): run-time error CSS1039: Token not allowed after unary operator: '-bg-subtle'
(2002,76): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(2003,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(2025,28): run-time error CSS1039: Token not allowed after unary operator: '-bg-surface'
(2026,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(2120,51): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(2121,33): run-time error CSS1039: Token not allowed after unary operator: '-brand-primary'
(2124,51): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(2125,33): run-time error CSS1039: Token not allowed after unary operator: '-status-success'
(2128,51): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(2129,33): run-time error CSS1039: Token not allowed after unary operator: '-brand-accent'
(2132,51): run-time error CSS1039: Token not allowed after unary operator: '-status-info'
(2133,33): run-time error CSS1039: Token not allowed after unary operator: '-status-info'
(2136,51): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(2137,33): run-time error CSS1039: Token not allowed after unary operator: '-brand-danger'
(2140,51): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(2141,33): run-time error CSS1039: Token not allowed after unary operator: '-text-secondary'
(2144,51): run-time error CSS1039: Token not allowed after unary operator: '-status-warning-alt'
(2145,33): run-time error CSS1039: Token not allowed after unary operator: '-status-warning-alt'
(2148,51): run-time error CSS1039: Token not allowed after unary operator: '-accent-purple'
(2149,33): run-time error CSS1039: Token not allowed after unary operator: '-accent-purple'
(2161,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(2162,31): run-time error CSS1039: Token not allowed after unary operator: '-border-strong'
(2165,17): run-time error CSS1039: Token not allowed after unary operator: '-text-body'
(2166,31): run-time error CSS1039: Token not allowed after unary operator: '-border-default'
(2169,22): run-time error CSS1039: Token not allowed after unary operator: '-bg-purple-tint'
(2172,17): run-time error CSS1039: Token not allowed after unary operator: '-text-primary'
(2191,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2192,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2193,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2194,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2195,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2196,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2197,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2198,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2199,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2200,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2201,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2202,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2203,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2204,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2205,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2206,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2207,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2208,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2209,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2210,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2211,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2212,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2213,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2214,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2215,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2216,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2217,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2218,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2219,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2220,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2221,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2222,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2223,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2224,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2225,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2226,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2227,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2228,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2229,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2230,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2231,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2232,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2233,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2234,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2235,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2236,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2247,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2248,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2249,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2250,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2251,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2252,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2253,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2254,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2255,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2256,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2257,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2258,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2259,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2260,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2261,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2266,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2267,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2268,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2269,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2270,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2271,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2272,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2275,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2276,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2277,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2278,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2279,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2280,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2283,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2284,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2287,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2288,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2289,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2294,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2295,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2296,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2297,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2298,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2299,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2300,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2301,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2302,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2303,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2304,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2305,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2306,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2307,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2308,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2311,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2312,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2313,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2316,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2317,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2318,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2319,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2320,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2321,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2324,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2325,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2328,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2329,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2330,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
 */
/* theme-tokens.css -- Dark Mode Token Definitions
   Light mode defaults in :root, dark mode overrides in [data-theme="dark"]
   All CSS files reference tokens via var(--token, #fallback) syntax */

:root {
    /* Brand */
    --brand-primary: #3d1a6f;
    --brand-accent: #fdb913;
    --brand-danger: #ed174c;
    --brand-magenta: #7d1d61;

    /* Icon fonts -- SSOT for the FontAwesome family. Site loads FA7 Pro (assets/fontawesome).
       Pseudo-element icons (::before/::after { content:'\fXXX' }) MUST reference these tokens,
       never a raw "Font Awesome 6 Free"/"Font Awesome 5 Free"/FA4 "FontAwesome" literal -- those
       families are NOT loaded and render as a tofu box. Class-based <i class="fa-solid fa-x">
       icons resolve via the FA stylesheet automatically and need no token.
       Next FA major upgrade = change these two lines only. Enforced by .claude/scripts/lint-fa-family.ps1. */
    --bh-fa-family: "Font Awesome 7 Pro", "Font Awesome 6 Pro", "Font Awesome 5 Free", "FontAwesome";
    --bh-fa-family-all: "Font Awesome 7 Pro", "Font Awesome 7 Brands", "Font Awesome 7 Duotone", "Font Awesome 7 Sharp", "Font Awesome 7 Sharp Duotone";

    /* Drag-to-reorder clone visual -- SSOT for the SortableJS drag-clone "pulled by the collar" tilt
       + lift. Consumed by .sortable-drag / .sortable-fallback / .nwc-file-drag-clone in BUZZHub.css.
       Change the drag look here once; never re-type the rotate/scale/shadow in a rule. */
    --bh-drag-tilt: rotate(-1.5deg) scale(1.02);
    --bh-drag-lift-shadow: drop-shadow(0 18px 40px rgba(61, 26, 111, 0.35));

    /* Campaign-type judging bar arms (2026-08-05): Outlet size / Tone / Message / Being
       the story. CVD-validated categorical set; dark values overridden below. */
    --bh-arm-tier: #6D4FC2;
    --bh-arm-sent: #0DA37F;
    --bh-arm-msg: #BF7E0A;
    --bh-arm-prom: #C74A6E;

    /* Surfaces */
    --bg-page: #f5f5f5;
    --bg-surface: #ffffff;
    --bg-card: #ffffff;                 /* alias for --bg-surface -- legacy callers (ActivityLog, Admin, ClientPortal, stories-calendar) reference --bg-card without ever defining it; aliasing prevents ghost-text bug in dark mode */
    --card-bg: #ffffff;                 /* alias, word-order twin of --bg-card -- ~10 callers (MyWork rows, snooze menu, outreach tiers, booking grid) reference it undefined; their light fallbacks leaked into dark mode (found 2026-08-03) */
    --subtle-bg: #fafafa;               /* alias, word-order twin of --bg-subtle -- same class of undefined-token bug */
    --bg-subtle: #fafafa;
    --bg-muted: #f0f0f0;
    --bg-purple-tint: #f0ebf7;
    --bg-gold-tint: #fff5dc;
    --bg-slate-tint: #f1f0f4;           /* neutral grey-purple section band -- replaces gold for section headers */
    --bg-slate-tint-2: #f8f7fa;         /* gradient stop for slate band */
    --bg-danger-subtle: #fff5f5;

    /* Text */
    --text-primary: #333333;
    --text-body: #555555;
    --text-secondary: #666666;
    --text-tertiary: #888888;
    --text-muted: #999999;
    --text-color: #333333;              /* alias for --text-primary -- undefined-token twin (found 2026-08-03) */
    --text-on-dark: #ffffff;

    /* Page header */
    --page-title-color: #3d1a6f;

    /* Borders */
    --border-color: #dddddd;            /* alias for --border-default -- ~30 callers app-wide (score arm controls, EngagementHub tabs, NewsWire cards, MyWork, page-local styles) reference it undefined, so their light fallbacks fired in BOTH themes (found 2026-08-03) */
    --border-subtle: #e5e5ea;           /* quietest neutral border -- referenced ~60x app-wide but was undefined; centralised so dark mode can govern it */
    --border-light: #e9ecef;
    --border-default: #dddddd;
    --border-strong: #cccccc;
    --border-brand: #e0d4f0;
    --border-gold-soft: #e8dfa8;        /* muted gold, replaces aggressive 2px #fdb913 */
    --border-gold-softer: #f0e6b5;      /* even paler, for thin variants */

    /* Status */
    --status-success: #28a745;
    --status-success-bg: #d4edda;
    --status-success-text: #155724;
    --status-warning: #ffc107;
    --status-warning-bg: #fff3cd;
    --status-warning-text: #856404;
    --status-danger: #dc3545;
    --status-danger-bg: #f8d7da;
    --status-info: #17a2b8;
    --status-info-bg: #d1ecf1;
    --status-info-text: #0c5460;
    --status-success-border: #c3e6cb;
    --status-danger-border: #f5c6cb;
    --status-danger-text: #721c24;
    --status-warning-border: #ffeeba;
    --status-info-border: #bee5eb;

    /* Accents */
    --accent-purple: #6c5ce7;

    /* Shadows & Overlays */
    --shadow-color: rgba(0,0,0,0.1);
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.12);
    --overlay-bg: rgba(0,0,0,0.5);
    /* Subtle wash used by loading-state overlays (page-loader, bh-loading, kanban-loading, etc.) -- distinct from --overlay-bg which is for full modal backdrops. */
    --loader-overlay-bg: rgba(255,255,255,0.8);

    /* Scrollbar */
    --scrollbar-track: #f1f1f1;
    --scrollbar-thumb: #c1c1c1;
    --scrollbar-thumb-hover: #a1a1a1;
}

/* Dark mode overrides -- activated by data-theme="dark" on <html> */
/* WCAG AA contrast targets: 4.5:1 normal text, 3:1 large text on #141414 surface */
[data-theme="dark"] {
    /* Judging bar arms, dark-surface steps (validated against the dark surface) */
    --bh-arm-tier: #8B72D6;
    --bh-arm-sent: #27A08F;
    --bh-arm-msg: #B57E12;
    --bh-arm-prom: #D26185;

    /* Brand -- lifted for readability on dark backgrounds */
    --brand-primary: #a76bdf;       /* electric violet -- 5.2:1 on #141414, more presence than lavender */
    --brand-accent: #d4a824;        /* amber gold -- clean, rich, 6.4:1 contrast on #141414 */
    --brand-accent-bright: #fdb913; /* bright gold ONLY for active tab indicators */
    --brand-accent-soft: #8a6d18;   /* subtle warm gold for decorative-only borders */
    --brand-danger: #f44060;        /* vivid rose -- punchy red, 4.8:1 contrast */
    --brand-magenta: #d470b8;       /* magenta lifted */

    /* Surfaces */
    --bg-page: #0a0a0a;
    --bg-surface: #141414;
    --bg-card: #141414;                 /* dark-mode alias for --bg-surface */
    --card-bg: #141414;                 /* dark twin of the --card-bg alias */
    --subtle-bg: #1a1a1a;               /* dark twin of the --subtle-bg alias */
    --bg-subtle: #1a1a1a;
    --bg-muted: #1e1e1e;
    --bg-purple-tint: #1e1430;
    --bg-gold-tint: #1e1a0e;        /* darker gold tint, less cream */
    --bg-slate-tint: #1c1a22;       /* dark slate section band -- pairs with light slate */
    --bg-slate-tint-2: #16151c;     /* gradient stop, dark */
    --bg-danger-subtle: #2a0f12;

    /* Text -- all comfortably pass WCAG AA on #141414.
       Dark-mode eyes need brighter muted tones than a naive inversion suggests;
       tertiary/muted bumped so "dim grey on black" stops feeling unreadable. */
    --text-primary: #e8e8e8;        /* 15:1 on #141414 */
    --text-body: #d4d4d4;           /* 12:1 -- body copy */
    --text-secondary: #bcbcbc;      /* 9:1 -- secondary labels */
    --text-tertiary: #a5a5a5;       /* 7:1 -- tertiary meta (was #909090 = 5.5:1, felt dim) */
    --text-muted: #b0b0b0;          /* 7.8:1 -- muted detail (was #959595 = 5.8:1, felt dark-grey-on-black) */
    --text-color: #e8e8e8;          /* dark twin of the --text-color alias */
    --text-on-dark: #ffffff;

    /* Page header */
    --page-title-color: #e5d9ff;    /* soft lavender -- 13:1 on #141414 */

    /* Borders */
    --border-color: #2a2a2a;            /* dark twin of the --border-color alias */
    --border-subtle: #232328;           /* subtle border, dark -- quieter than --border-default; replaces the near-white fallbacks that leaked into dark mode */
    --border-light: #1e1e1e;
    --border-default: #2a2a2a;
    --border-strong: #3a3a3a;
    --border-brand: #2a1a3a;
    --border-gold-soft: #3a3620;        /* muted dark gold, pairs with dark bg-gold-tint */
    --border-gold-softer: #2e2b1a;

    /* Status */
    --status-success: #28a745;
    --status-success-bg: #0d2818;
    --status-success-text: #6ddf8b;
    --status-warning: #ffc107;
    --status-warning-bg: #1a1608;
    --status-warning-text: #d4a824;
    --status-danger: #dc3545;
    --status-danger-bg: #2a0f12;
    --status-info: #17a2b8;
    --status-info-bg: #0a1e24;
    --status-info-text: #5dc8db;
    --status-success-border: #1a4a2a;
    --status-danger-border: #3a1520;
    --status-danger-text: #ff8a9a;
    --status-warning-border: #2a2010;
    --status-info-border: #0e2a30;

    /* Accents */
    --accent-purple: #9b8ce8;

    /* Shadows & Overlays */
    --shadow-color: rgba(0,0,0,0.4);
    --shadow-sm: 0 1px 3px rgba(0,0,0,0.3);
    --shadow-md: 0 4px 12px rgba(0,0,0,0.4);
    --overlay-bg: rgba(0,0,0,0.7);
    --loader-overlay-bg: rgba(0,0,0,0.55);

    /* Scrollbar -- brand gold thumb for dark mode */
    --scrollbar-track: #1a1a1a;
    --scrollbar-thumb: var(--brand-accent, #d4a824);
    --scrollbar-thumb-hover: #fdb913;

    /* Bootstrap 4 native variable overrides */
    --primary: #fdb913;
    --secondary: #a76bdf;
    --blue: #a76bdf;
    --light: #1a1a1a;
    --dark: #e0e0e0;
}

/* Pseudo-element overrides for dark mode */
[data-theme="dark"] ::placeholder {
    color: var(--text-muted, #666) !important;
}
[data-theme="dark"] ::selection {
    background: var(--brand-primary, #a76bdf);
    color: #fff;
}

/* Native date/time/month/week picker indicator -- black glyph by default,
   invisible on dark surfaces. Invert + brighten to match icon-on-dark token. */
[data-theme="dark"] input[type="date"]::-webkit-calendar-picker-indicator,
[data-theme="dark"] input[type="datetime-local"]::-webkit-calendar-picker-indicator,
[data-theme="dark"] input[type="month"]::-webkit-calendar-picker-indicator,
[data-theme="dark"] input[type="week"]::-webkit-calendar-picker-indicator,
[data-theme="dark"] input[type="time"]::-webkit-calendar-picker-indicator {
    filter: invert(1) brightness(0.85);
    cursor: pointer;
    opacity: 0.9;
}

/* Scrollbar styling */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--scrollbar-track, #f1f1f1); }
::-webkit-scrollbar-thumb { background: var(--scrollbar-thumb, #c1c1c1); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: var(--scrollbar-thumb-hover, #a1a1a1); }

/* =============================================
   Dark Mode Component Overrides
   Catches Bootstrap defaults and hardcoded values
   that the token migration could not reach
   ============================================= */

/* --- Body & Page --- */
[data-theme="dark"] body {
    background-color: var(--bg-page) !important;
    color: var(--text-primary) !important;
}

/* --- RTE-rendered surfaces in dark mode ---
   User-authored RTE content (tickets, AskRalph, Help articles, the editor itself, future RTE
   surfaces) carries inline style="color:rgb(0,0,0)" on every block from the editor's save path.
   Inline style beats normal CSS specificity, so the only way to override it is !important.
   Approach: dark surface + wildcard !important descendant rule forcing light text. Mirrors the
   existing pattern at RichTextEditor.css :659. Trade-off: user-pasted text colour is reset to
   light. Accepted for visual integration with dark mode chrome. Authorised inline 2026-05-02
   by George (option A from Documentation/rte-dark-paper-mockup.html). */
[data-theme="dark"] .ticket-update-bubble,
[data-theme="dark"] .ticket-details-html,
[data-theme="dark"] .helppage,
[data-theme="dark"] .askralph-msg-bubble,
[data-theme="dark"] .bh-rte-editor,
[data-theme="dark"] .bh-rte-paper,
[data-theme="dark"] .email-preview-body {
    background-color: #1e1e1e !important;
}
[data-theme="dark"] .ticket-update-bubble *,
[data-theme="dark"] .ticket-details-html *,
[data-theme="dark"] .helppage *,
[data-theme="dark"] .askralph-msg-bubble *,
[data-theme="dark"] .bh-rte-editor *,
[data-theme="dark"] .bh-rte-paper *,
[data-theme="dark"] .email-preview-body * {
    color: #e8e8e8 !important;
}
[data-theme="dark"] .ticket-update-bubble :is(h1, h2, h3, h4),
[data-theme="dark"] .ticket-details-html :is(h1, h2, h3, h4),
[data-theme="dark"] .helppage :is(h1, h2, h3, h4),
[data-theme="dark"] .askralph-msg-bubble :is(h1, h2, h3, h4),
[data-theme="dark"] .bh-rte-editor :is(h1, h2, h3, h4),
[data-theme="dark"] .bh-rte-paper :is(h1, h2, h3, h4),
[data-theme="dark"] .email-preview-body :is(h1, h2, h3, h4) {
    color: #e5d9ff !important;
}
[data-theme="dark"] .ticket-update-bubble a,
[data-theme="dark"] .ticket-details-html a,
[data-theme="dark"] .helppage a,
[data-theme="dark"] .askralph-msg-bubble a,
[data-theme="dark"] .bh-rte-editor a,
[data-theme="dark"] .bh-rte-paper a,
[data-theme="dark"] .email-preview-body a {
    color: #d4b3ff !important;
}
[data-theme="dark"] .ticket-update-bubble .update-meta,
[data-theme="dark"] .ticket-update-bubble .update-meta *,
[data-theme="dark"] .ticket-details-html .update-meta,
[data-theme="dark"] .ticket-details-html .update-meta * {
    color: #a5a5a5 !important;
}

/* --- Form Controls --- */
[data-theme="dark"] .form-control,
[data-theme="dark"] .form-control:focus,
[data-theme="dark"] select.form-control,
[data-theme="dark"] textarea.form-control {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] .form-control:disabled,
[data-theme="dark"] .form-control[readonly] {
    background-color: var(--bg-subtle) !important;
    color: var(--text-tertiary) !important;
}
[data-theme="dark"] .input-group-text {
    background-color: var(--bg-muted);
    color: var(--text-secondary);
    border-color: var(--border-strong);
}

/* --- Nav Tabs --- */
[data-theme="dark"] .nav-tabs {
    border-bottom-color: var(--border-default) !important;
}
[data-theme="dark"] .nav-tabs .nav-link {
    background-color: var(--bg-subtle) !important;
    color: var(--text-secondary) !important;
    border-color: var(--border-default) !important;
}
[data-theme="dark"] .nav-tabs .nav-link:hover {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] .nav-tabs .nav-link.active {
    background-color: var(--brand-primary) !important;
    color: var(--text-on-dark) !important;
    border-color: var(--brand-primary) !important;
    border-bottom-color: var(--brand-accent) !important;
}

/* --- Tab Content --- */
[data-theme="dark"] .tab-content {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-default) !important;
}

/* --- Cards --- */
[data-theme="dark"] .card {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-default) !important;
}
/* .card-header dark mode is in the consolidated .bh-gold-header block below */
[data-theme="dark"] .card-footer {
    background: var(--bg-subtle) !important;
    border-top-color: var(--border-default) !important;
}
/* Checkboxes and radio buttons - visible borders in dark mode */
[data-theme="dark"] .form-check-input {
    background-color: var(--bg-muted, #1e1e1e);
    border-color: var(--border-strong, #3a3a3a);
}
[data-theme="dark"] .form-check-input:checked {
    background-color: var(--brand-primary);
    border-color: var(--brand-primary);
}
[data-theme="dark"] .form-check-label {
    color: var(--text-secondary, #b0b0b0);
}
/* CRM contact/brand card body text */
[data-theme="dark"] .crm-contact-card .card-body {
    color: var(--text-primary, #e8e8e8);
}
[data-theme="dark"] .crm-contact-card .badge-contact {
    background-color: var(--bg-subtle, #1a1a1a);
    border-color: var(--border-default, #2a2a2a);
    color: var(--text-secondary, #b0b0b0);
}

/* --- Panels (BUZZHub custom) --- */
[data-theme="dark"] .panel h2,
[data-theme="dark"] .panelcollapsed h2 {
    background-color: var(--bg-subtle) !important;
    border-color: var(--border-default) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .panelcontent {
    background-color: var(--bg-surface) !important;
}

/* --- Tables --- */
[data-theme="dark"] .table {
    color: var(--text-primary);
}
[data-theme="dark"] .table thead th {
    background-color: var(--bg-subtle) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-default) !important;
}
[data-theme="dark"] .table td,
[data-theme="dark"] .table th {
    border-color: var(--border-light) !important;
}
[data-theme="dark"] .table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--bg-subtle) !important;
}
[data-theme="dark"] .table-hover tbody tr:hover,
[data-theme="dark"] .table-hover tbody tr:hover > td,
[data-theme="dark"] .table-hover tbody tr:hover > th {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
}

/* --- Modals --- */
/* Elevation pattern: modal surface sits ~10% lighter than page,
   stronger shadow + brighter hairline border so it pops clear of the dim backdrop. */
[data-theme="dark"] .modal-content {
    background-color: #1e1e24 !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    box-shadow: 0 20px 56px rgba(0, 0, 0, 0.70), 0 4px 14px rgba(0, 0, 0, 0.55) !important;
}
[data-theme="dark"] .modalPopup {
    background-color: #1e1e24 !important;
    border: 1px solid rgba(255, 255, 255, 0.10) !important;
    box-shadow: 0 20px 56px rgba(0, 0, 0, 0.70), 0 4px 14px rgba(0, 0, 0, 0.55) !important;
}
[data-theme="dark"] .modalBackground {
    background-color: #000 !important;
    opacity: 0.65 !important;
}
[data-theme="dark"] .modal-header {
    border-bottom-color: var(--border-default) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .modal-footer {
    border-top-color: var(--border-default) !important;
}

/* --- Dropdowns --- */
[data-theme="dark"] .dropdown-menu {
    background-color: #0d0d12 !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.6), 0 2px 6px rgba(0, 0, 0, 0.4) !important;
}
[data-theme="dark"] .dropdown-item {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .dropdown-item:hover,
[data-theme="dark"] .dropdown-item:focus {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .dropdown-divider {
    border-top-color: var(--border-light) !important;
}

/* --- Popovers --- */
[data-theme="dark"] .popover {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-default) !important;
}
[data-theme="dark"] .popover-header {
    background-color: var(--bg-subtle) !important;
    border-bottom-color: var(--border-default) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .popover .arrow::after {
    border-top-color: var(--bg-surface) !important;
}

/* --- Badges --- */
[data-theme="dark"] .badge-soft-secondary {
    background-color: var(--bg-muted) !important;
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .badge-light {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
}

/* --- Progress bars & skeletons --- */
[data-theme="dark"] .progress,
[data-theme="dark"] .bh-progress-bar,
[data-theme="dark"] .skeleton-line,
[data-theme="dark"] .skeleton-circle {
    background-color: var(--bg-muted) !important;
}

/* --- Dropzone.js (CDN CSS hardcodes white bg) --- */
[data-theme="dark"] .dropzone,
[data-theme="dark"] .dropzone.dz-clickable {
    background: var(--bg-subtle) !important;
    border: 2px dashed var(--border-strong) !important;
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .dropzone:hover {
    background: var(--bg-muted) !important;
    border-color: var(--brand-primary) !important;
}
[data-theme="dark"] .dropzone .dz-message,
[data-theme="dark"] .dropzone .dz-message h5,
[data-theme="dark"] .dropzone .dz-message p,
[data-theme="dark"] .dropzone .dz-message .text-muted {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .dropzone .dz-message i,
[data-theme="dark"] .dropzone .dz-message .fa {
    color: var(--text-tertiary) !important;
}
[data-theme="dark"] .dropzone .dz-preview .dz-image {
    background: var(--bg-muted) !important;
}
[data-theme="dark"] .dropzone .dz-preview .dz-details {
    background: rgba(0,0,0,0.6) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .dropzone .dz-preview .dz-filename,
[data-theme="dark"] .dropzone .dz-preview .dz-size {
    color: var(--text-primary) !important;
}

/* --- List groups --- */
[data-theme="dark"] .list-group-item {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-light) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .list-group-item:hover {
    background-color: var(--bg-subtle) !important;
}
[data-theme="dark"] .list-group-item.active {
    background-color: var(--brand-primary) !important;
    border-color: var(--brand-primary) !important;
}

/* --- Alerts --- */
[data-theme="dark"] .alert-info {
    background-color: var(--status-info-bg) !important;
    color: var(--status-info-text) !important;
    border-color: var(--status-info) !important;
}
[data-theme="dark"] .alert-success {
    background-color: var(--status-success-bg) !important;
    color: var(--status-success-text) !important;
    border-color: var(--status-success) !important;
}
[data-theme="dark"] .alert-warning {
    background-color: var(--status-warning-bg) !important;
    color: var(--status-warning-text) !important;
}
[data-theme="dark"] .alert-danger {
    background-color: var(--status-danger-bg) !important;
    color: var(--text-primary) !important;
    border-color: var(--status-danger) !important;
}

/* --- Pagination --- */
[data-theme="dark"] .page-link {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-default) !important;
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .page-item.active .page-link {
    background-color: var(--brand-primary) !important;
    border-color: var(--brand-primary) !important;
    color: var(--text-on-dark) !important;
}
[data-theme="dark"] .page-item.disabled .page-link {
    background-color: var(--bg-muted) !important;
    color: var(--text-muted) !important;
}

/* --- Breadcrumbs --- */
[data-theme="dark"] .breadcrumb {
    background-color: var(--bg-subtle) !important;
}

/* --- Close button --- */
[data-theme="dark"] .close {
    color: var(--text-primary) !important;
    text-shadow: none !important;
}

/* --- HR --- */
[data-theme="dark"] hr {
    border-top-color: var(--border-light) !important;
}

/* --- Jumbotron --- */
[data-theme="dark"] .jumbotron {
    background-color: var(--bg-subtle) !important;
}

/* --- Well / BG utilities --- */
[data-theme="dark"] .bg-white {
    background-color: var(--bg-surface) !important;
}
[data-theme="dark"] .bg-light {
    background-color: var(--bg-subtle) !important;
}
[data-theme="dark"] .text-dark {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .text-muted {
    color: var(--text-muted) !important;
}

/* Loader / empty-state contrast in dark mode.
   Covers the site-wide '<i class="fa fa-spinner fa-spin"></i><p>...</p>' pattern
   and the '<i class="fa fa-search fa-3x"></i><p>...</p>' empty-state pattern.
   Without this, loader text in .text-muted wrappers rendered too dim. */
[data-theme="dark"] .fa-spinner.fa-spin,
[data-theme="dark"] .spinner-border {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .text-center.py-5.text-muted,
[data-theme="dark"] .text-center.py-5.text-muted p,
[data-theme="dark"] .text-center.py-5 p,
[data-theme="dark"] .empty-state,
[data-theme="dark"] .empty-state p {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .empty-state h5,
[data-theme="dark"] .text-center.py-5 h5 {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .empty-state i,
[data-theme="dark"] .text-center.py-5 > .fa-search,
[data-theme="dark"] .text-center.py-5 > i.fa-inbox,
[data-theme="dark"] .text-center.py-5 > i[class*="fa-3x"] {
    color: var(--text-tertiary) !important;
    opacity: 1 !important;
}

[data-theme="dark"] .border {
    border-color: var(--border-default) !important;
}
[data-theme="dark"] .border-bottom {
    border-bottom-color: var(--border-default) !important;
}
[data-theme="dark"] .border-top {
    border-top-color: var(--border-default) !important;
}

/* --- Navbar header --- */
[data-theme="dark"] .navbar {
    border-bottom-color: var(--border-default) !important;
}

/* =============================================
   Jen's Dark Mode Design Refinements
   Principle: Content is king. Chrome recedes.
   Gold borders become muted warm borders.
   Bright gold only on interactive/active elements.
   ============================================= */

/* --- Mute ALL decorative gold card borders --- */
[data-theme="dark"] .card-body {
    border-color: var(--brand-accent-soft) !important;
}
[data-theme="dark"] .profile-card-header.yellow {
    border-left-color: var(--brand-accent) !important;
}

/* --- Dashboard card gold headers: warm and subtle, not screaming --- */
[data-theme="dark"] .dashboard-card .card-header {
    border-left-color: var(--brand-accent-soft) !important;
}

/* --- News Agenda: content readability is critical --- */
[data-theme="dark"] .news-headline,
[data-theme="dark"] .agenda-item,
[data-theme="dark"] .agenda-item a,
[data-theme="dark"] .card-body-scroll li,
[data-theme="dark"] .card-body-scroll a,
[data-theme="dark"] .card-body-scroll p,
[data-theme="dark"] .card-body-scroll span {
    color: var(--text-body) !important;
}
[data-theme="dark"] .card-body-scroll h5,
[data-theme="dark"] .card-body-scroll h4,
[data-theme="dark"] .card-body-scroll strong,
[data-theme="dark"] .card-body-scroll b {
    color: var(--text-primary) !important;
}

/* --- Badge text on coloured backgrounds: ensure readability --- */
[data-theme="dark"] .badge {
    font-size: 0.8em;
}
[data-theme="dark"] .badge-pill {
    color: var(--text-on-dark) !important;
}

/* --- Mail Stats: numbers must be readable --- */
[data-theme="dark"] .stat-value,
[data-theme="dark"] .mail-stat-value,
[data-theme="dark"] .kpi-value {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .stat-label,
[data-theme="dark"] .mail-stat-label,
[data-theme="dark"] .kpi-label {
    color: var(--text-secondary) !important;
}

/* --- Horizontal gold divider lines: mute to warm grey --- */
[data-theme="dark"] hr[style*="border"],
[data-theme="dark"] hr[style*="fdb913"] {
    border-color: var(--brand-accent-soft) !important;
}

/* --- Card body borders throughout: muted warm, not bright gold --- */
[data-theme="dark"] [style*="border"][style*="fdb913"],
[data-theme="dark"] [style*="border"][style*="FDB913"] {
    border-color: var(--brand-accent-soft) !important;
}

/* --- Active tab indicator: this IS the one place gold should be bright --- */
[data-theme="dark"] .nav-tabs .nav-link.active {
    border-bottom-color: var(--brand-accent-bright, #fdb913) !important;
}

/* =============================================
   News Agenda dark mode readability
   ============================================= */
[data-theme="dark"] .news-tabs {
    border-bottom-color: var(--border-default) !important;
}
[data-theme="dark"] .news-tab {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .news-tab:hover {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .news-tab.active {
    color: var(--brand-primary) !important;
    border-bottom-color: var(--brand-primary) !important;
}
[data-theme="dark"] .news-article-count {
    color: var(--text-muted) !important;
}
/* Outlet section headers - organizational, should be visible */
[data-theme="dark"] .outlet-name {
    color: var(--text-primary) !important;
}
[data-theme="dark"] .outlet-name small {
    color: var(--text-secondary) !important;
}
/* Story clusters */
[data-theme="dark"] .story-cluster {
    border-bottom-color: var(--border-light) !important;
}
[data-theme="dark"] .story-cluster.multi-outlet {
    background: var(--bg-purple-tint) !important;
    border-left-color: var(--brand-primary) !important;
    border-bottom-color: var(--border-light) !important;
}
[data-theme="dark"] .cluster-headline,
[data-theme="dark"] .cluster-headline a,
[data-theme="dark"] .cluster-sub-article a {
    color: var(--text-body) !important;
}
[data-theme="dark"] .cluster-headline:hover,
[data-theme="dark"] .cluster-headline a:hover,
[data-theme="dark"] .cluster-sub-article a:hover {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .cluster-outlet-badge {
    background: var(--bg-purple-tint) !important;
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .cluster-tier1-badge {
    background: var(--status-success-bg) !important;
    color: var(--status-success-text) !important;
}
[data-theme="dark"] .cluster-topic {
    color: var(--text-muted) !important;
}
[data-theme="dark"] .cluster-time,
[data-theme="dark"] .cluster-sub-article .sub-pub {
    color: var(--text-muted) !important;
}
[data-theme="dark"] .cluster-expand {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .cluster-articles-list {
    border-left-color: var(--border-default) !important;
}
/* News spike pills */
[data-theme="dark"] .news-spike-pill {
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] .news-spike-pill.spiking-hot {
    background: var(--status-danger-bg) !important;
    color: var(--brand-danger) !important;
}
[data-theme="dark"] .news-spike-pill.spiking-warm {
    background: var(--bg-purple-tint) !important;
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .news-spike-pill.spiking-cool {
    background: var(--bg-muted) !important;
    color: var(--text-secondary) !important;
}

/* =============================================
   Border continuity fix
   Card borders should form a continuous outline,
   not disconnected segments
   ============================================= */
[data-theme="dark"] .dashboard-card {
    border: 1px solid var(--border-default) !important;
}
[data-theme="dark"] .dashboard-card .card-header {
    border-bottom: 1px solid var(--border-default) !important;
}
[data-theme="dark"] .dashboard-card .card-body {
    border: none !important;
}
/* Profile cards: continuous border */
[data-theme="dark"] .profile-card {
    border: 1px solid var(--border-default) !important;
    border-radius: 8px !important;
    overflow: hidden;
}
[data-theme="dark"] .profile-card-header {
    border-bottom: 1px solid var(--border-default) !important;
}
[data-theme="dark"] .profile-card-body {
    border: none !important;
}

/* --- Footer (authenticated/user pages: Site.Master + portal masters using .footer/.bg-white) ---
   Bumped specificity so the dark rule always wins over .bg-white:
   - footer.footer (0,2,1) beats [data-theme="dark"] .bg-white (0,2,0)
   - .footer.bg-white (0,3,0) beats [data-theme="dark"] .bg-white (0,2,0)
   Public/login masters (Buzzhub, Middle, LoginMaster) use class="bs-footer" with their own
   brand-styled footer in Buzzscribed.css -- intentionally NOT overridden here. */
[data-theme="dark"] footer.footer,
[data-theme="dark"] .footer.bg-white,
[data-theme="dark"] footer#footer {
    background-color: #000 !important;
    color: var(--text-secondary) !important;
    border-top-color: var(--border-default) !important;
}
[data-theme="dark"] footer.footer a,
[data-theme="dark"] .footer.bg-white a,
[data-theme="dark"] footer#footer a {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] footer.footer a:hover,
[data-theme="dark"] .footer.bg-white a:hover,
[data-theme="dark"] footer#footer a:hover {
    color: var(--text-primary) !important;
}

/* --- Links (global) --- */
[data-theme="dark"] a {
    color: var(--brand-primary);
}
[data-theme="dark"] a:hover {
    color: #c9a4e8;
}
/* Buttons rendered as <a> (asp:LinkButton) must keep their own text color.
   Must use !important to beat .footer a rule above. */
[data-theme="dark"] a.btn {
    color: var(--text-on-dark, #fff) !important;
}
[data-theme="dark"] a.btn:hover {
    color: var(--text-on-dark, #fff) !important;
}
[data-theme="dark"] a.btn-outline-primary {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] a.btn-outline-primary:hover {
    color: var(--text-on-dark, #fff) !important;
}
[data-theme="dark"] a.btn-default {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] a.btn-default:hover {
    color: var(--text-on-dark, #fff) !important;
}
[data-theme="dark"] a.btn-outline-secondary {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] a.btn-link {
    color: var(--brand-primary) !important;
}
[data-theme="dark"] a.btn-danger {
    color: var(--text-on-dark, #fff) !important;
}

/* --- Profile cards (Campaign Builder section headers) --- */
/* These have cream/gold gradients in light mode - must go dark */
[data-theme="dark"] .profile-card {
    background-color: var(--bg-surface) !important;
}
[data-theme="dark"] .profile-card-header.yellow {
    background: linear-gradient(135deg, var(--bg-gold-tint) 0%, var(--bg-subtle) 100%) !important;
    color: var(--text-primary) !important;
    border-left-color: var(--brand-accent) !important;
}
[data-theme="dark"] .profile-card-header.yellow h4,
[data-theme="dark"] .profile-card-header.yellow h3,
[data-theme="dark"] .profile-card-header.yellow .profile-card-title,
[data-theme="dark"] .dashboard-card .card-header,
[data-theme="dark"] .dashboard-card .card-header .card-title,
[data-theme="dark"] .dashboard-card .card-header .card-title i {
    color: var(--brand-accent) !important;
}
[data-theme="dark"] .profile-card-header {
    background: linear-gradient(135deg, #1a1430 0%, var(--bg-subtle) 100%) !important;
    color: var(--text-on-dark) !important;
}
[data-theme="dark"] .profile-card-body {
    background-color: var(--bg-surface) !important;
    color: var(--text-primary) !important;
}

/* --- All remaining gold-tint / cream backgrounds (inline styles) --- */
[data-theme="dark"] [style*="fff5dc"],
[data-theme="dark"] [style*="FFF5DC"],
[data-theme="dark"] [style*="fcf8e3"],
[data-theme="dark"] [style*="FCF8E3"],
[data-theme="dark"] [style*="fffbf0"],
[data-theme="dark"] [style*="FFFBF0"],
[data-theme="dark"] [style*="fff8e1"],
[data-theme="dark"] [style*="FFF8E1"],
[data-theme="dark"] [style*="fef9e7"],
[data-theme="dark"] [style*="FEF9E7"] {
    background: var(--bg-gold-tint) !important;
    color: var(--text-primary) !important;
}
/* Catch cream gradients -- browsers may normalize hex to rgb() so match both */
[data-theme="dark"] .alert[style*="fff5dc"],
[data-theme="dark"] .alert[style*="fffbf0"],
[data-theme="dark"] div[style*="fff5dc"],
[data-theme="dark"] div[style*="fffbf0"],
[data-theme="dark"] [style*="rgb(255, 245, 220)"],
[data-theme="dark"] [style*="rgb(255, 251, 240)"],
[data-theme="dark"] [style*="rgb(252, 248, 227)"],
[data-theme="dark"] #smartAutoFillPrompt {
    background: var(--bg-gold-tint) !important;
    border-color: var(--brand-accent-soft) !important;
    color: var(--text-primary) !important;
}
/* Force text colour on children with inline color:#333 inside dark gold-tint panels */
[data-theme="dark"] #smartAutoFillPrompt *,
[data-theme="dark"] [style*="rgb(255, 245, 220)"] *,
[data-theme="dark"] [style*="fff5dc"] * {
    color: var(--text-primary) !important;
}

/* --- Content area catch-all for remaining light backgrounds --- */
[data-theme="dark"] .content-area,
[data-theme="dark"] .main-content,
[data-theme="dark"] #ContentPlaceHolder1,
[data-theme="dark"] [id*="ContentPlaceHolder"] {
    color: var(--text-primary);
}

/* --- Sub-content profile card overrides (CampaignBuilder uses !important) --- */
[data-theme="dark"] .sub-content .profile-card-header.yellow,
[data-theme="dark"] .smallside .profile-card-header.yellow {
    background: linear-gradient(135deg, var(--bg-gold-tint) 0%, var(--bg-subtle) 100%) !important;
    color: var(--text-primary) !important;
}

/* --- Section divider lines (gold hr/borders under section headings) --- */
/* These are the bright yellow lines under KEY DATES, SPECIFIC OBJECTIVES etc. */
[data-theme="dark"] .profile-card-body hr,
[data-theme="dark"] .profile-card-body .section-divider {
    border-color: var(--brand-accent-soft) !important;
}
/* Catch-all: any gold border inside content panels - mute it */
[data-theme="dark"] .profile-card-body [style*="border"],
[data-theme="dark"] .tab-content [style*="border"] {
    border-color: var(--brand-accent-soft) !important;
}

/* --- Content panel text readability (Campaign Builder, all pages) --- */
[data-theme="dark"] .profile-card-body p,
[data-theme="dark"] .profile-card-body span,
[data-theme="dark"] .profile-card-body div,
[data-theme="dark"] .profile-card-body li,
[data-theme="dark"] .profile-card-body td,
[data-theme="dark"] .profile-card-body label {
    color: var(--text-body);
}
[data-theme="dark"] .profile-card-body h1,
[data-theme="dark"] .profile-card-body h2,
[data-theme="dark"] .profile-card-body h3,
[data-theme="dark"] .profile-card-body h4,
[data-theme="dark"] .profile-card-body h5,
[data-theme="dark"] .profile-card-body h6 {
    color: var(--text-primary);
}

/* --- FormView / DetailsView content panels --- */
[data-theme="dark"] .formview-content,
[data-theme="dark"] .details-content,
[data-theme="dark"] [id*="FormView"],
[data-theme="dark"] [id*="DetailsView"] {
    color: var(--text-body) !important;
}

/* --- Section heading text (KEY DATES & TIMELINE etc.) --- */
[data-theme="dark"] .section-heading,
[data-theme="dark"] .bp-section-heading {
    color: var(--brand-accent) !important;
    border-bottom-color: var(--brand-accent-soft) !important;
}

/* --- Specific BUZZHub component fixes --- */
/* KPI cards */
[data-theme="dark"] .kpi-card {
    background-color: var(--bg-surface) !important;
    border-color: var(--border-default) !important;
}

/* Stat cards on dashboard */
[data-theme="dark"] .stat-card,
[data-theme="dark"] .dashboard-card {
    background-color: var(--bg-surface) !important;
}

/* Select dropdowns (native) */
[data-theme="dark"] select {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] select option {
    background-color: var(--bg-surface);
    color: var(--text-primary);
}

/* Checkbox and radio labels */
[data-theme="dark"] .custom-control-label {
    color: var(--text-primary);
}

/* ASP.NET GridView / table rows with inline white backgrounds */
[data-theme="dark"] tr[style*="background-color: White"],
[data-theme="dark"] tr[style*="background-color:White"],
[data-theme="dark"] tr[style*="background-color: white"],
[data-theme="dark"] td[style*="background-color: White"],
[data-theme="dark"] td[style*="background-color:White"] {
    background-color: var(--bg-surface) !important;
}

/* --- Buttons --- */
[data-theme="dark"] .btn-outline-danger {
    color: var(--brand-danger) !important;
    border-color: var(--brand-danger) !important;
}
[data-theme="dark"] .btn-outline-danger:hover,
[data-theme="dark"] .btn-outline-danger:focus,
[data-theme="dark"] .btn-outline-danger:active,
[data-theme="dark"] .btn-outline-danger.active,
[data-theme="dark"] .btn-outline-danger:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-outline-danger:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-outline-danger.dropdown-toggle {
    background-color: var(--brand-danger) !important;
    color: var(--text-on-dark) !important;
    border-color: var(--brand-danger) !important;
}
[data-theme="dark"] .btn-outline-primary {
    color: var(--brand-primary) !important;
    border-color: var(--brand-primary) !important;
}
[data-theme="dark"] .btn-outline-primary:hover,
[data-theme="dark"] .btn-outline-primary:focus,
[data-theme="dark"] .btn-outline-primary:active,
[data-theme="dark"] .btn-outline-primary.active,
[data-theme="dark"] .btn-outline-primary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-outline-primary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-outline-primary.dropdown-toggle {
    background-color: var(--brand-primary) !important;
    color: #fff !important;
    border-color: var(--brand-primary) !important;
}
[data-theme="dark"] .btn-outline-secondary {
    color: var(--text-secondary) !important;
    border-color: var(--border-strong) !important;
    background-color: transparent !important;
}
[data-theme="dark"] .btn-outline-secondary:hover,
[data-theme="dark"] .btn-outline-secondary:focus,
[data-theme="dark"] .btn-outline-secondary:active,
[data-theme="dark"] .btn-outline-secondary.active,
[data-theme="dark"] .btn-outline-secondary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-outline-secondary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-outline-secondary.dropdown-toggle {
    background-color: var(--brand-primary) !important;
    color: #fff !important;
    border-color: var(--brand-primary) !important;
}
[data-theme="dark"] .btn-outline-secondary:disabled,
[data-theme="dark"] .btn-outline-secondary.disabled {
    color: var(--text-tertiary) !important;
    border-color: var(--border-default) !important;
    background-color: transparent !important;
}
[data-theme="dark"] .btn-outline-warning {
    color: var(--brand-accent) !important;
    border-color: var(--brand-accent) !important;
}
[data-theme="dark"] .btn-outline-warning:hover,
[data-theme="dark"] .btn-outline-warning:focus,
[data-theme="dark"] .btn-outline-warning:active,
[data-theme="dark"] .btn-outline-warning.active,
[data-theme="dark"] .btn-outline-warning:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-outline-warning:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-outline-warning.dropdown-toggle {
    background-color: var(--brand-accent-bright) !important;
    color: #1a1a1a !important;
    border-color: var(--brand-accent-bright) !important;
}
/* btn-secondary (amber gold bg): light violet --brand-primary is unreadable on
   amber. Force deep purple text for contrast; keeps brand look. */
[data-theme="dark"] .btn-secondary,
[data-theme="dark"] .btn-secondary:hover,
[data-theme="dark"] .btn-secondary:focus,
[data-theme="dark"] .btn-secondary:active,
[data-theme="dark"] .btn-secondary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-secondary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .btn-secondary.disabled,
[data-theme="dark"] .btn-secondary:disabled {
    color: #3d1a6f !important;
}
/* btn-warning (gold bg): same problem as btn-secondary -- light-mode
   --brand-primary text flips to light violet in dark mode and disappears
   on the gold background. Force deep purple. */
[data-theme="dark"] .btn-warning,
[data-theme="dark"] .btn-warning:hover,
[data-theme="dark"] .btn-warning:focus,
[data-theme="dark"] .btn-warning:active,
[data-theme="dark"] .btn-warning:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-warning:not(:disabled):not(.disabled).active,
[data-theme="dark"] .btn-warning.disabled,
[data-theme="dark"] .btn-warning:disabled {
    color: #3d1a6f !important;
}
/* btn-primary (solid violet bg) in dark mode: previous #5a2d9e was AA-safe but
   read as muted/disabled against dark surfaces. 2026-05-08: bumped to a more
   vivid mid-violet that still supports white text:
     #7c3fc6 normal vs #fff = 5.84:1 (AA pass)
     #8e54d9 hover  vs #fff = 4.81:1 (AA pass)
     disabled keeps #5a2d9e so disabled state is visually distinct from active. */
[data-theme="dark"] .btn-primary {
    background-color: #7c3fc6 !important;
    border-color: #7c3fc6 !important;
}
[data-theme="dark"] .btn-primary.disabled,
[data-theme="dark"] .btn-primary:disabled {
    background-color: #4a2682 !important;
    border-color: #4a2682 !important;
    opacity: 0.65;
}
[data-theme="dark"] .btn-primary:hover,
[data-theme="dark"] .btn-primary:focus,
[data-theme="dark"] .btn-primary.focus,
[data-theme="dark"] .btn-primary:active,
[data-theme="dark"] .btn-primary:not(:disabled):not(.disabled):active,
[data-theme="dark"] .btn-primary:not(:disabled):not(.disabled).active,
[data-theme="dark"] .show > .btn-primary.dropdown-toggle {
    background-color: #8e54d9 !important;
    border-color: #8e54d9 !important;
    box-shadow: 0 0 0 0.15rem rgba(167, 107, 223, 0.35) !important;
}
[data-theme="dark"] .btn-light {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] .btn-danger {
    color: var(--text-on-dark) !important;
}
[data-theme="dark"] .btn-outline-light {
    color: #fff !important;
    border-color: rgba(255,255,255,0.5) !important;
}
[data-theme="dark"] .btn-outline-light:hover {
    background-color: rgba(255,255,255,0.15) !important;
    color: #fff !important;
}
[data-theme="dark"] .btn-outline-dark {
    color: var(--text-primary) !important;
    border-color: var(--border-strong) !important;
}
[data-theme="dark"] .btn-outline-dark:hover {
    background-color: var(--bg-muted) !important;
    color: var(--text-primary) !important;
}

/* --- Small text readability boost --- */
[data-theme="dark"] small,
[data-theme="dark"] .small,
[data-theme="dark"] .text-sm {
    color: var(--text-secondary);
}

/* =============================================
   ASP.NET GridView / FormView style utility classes
   Replace ForeColor/BackColor attributes with CssClass
   Also usable in VB code-behind: cell.CssClass = "bh-header-brand"
   ============================================= */
.bh-header-brand { background-color: var(--brand-primary, #3d1a6f) !important; color: var(--text-on-dark, #fff) !important; }
.bh-header-accent { background-color: var(--brand-accent, #fdb913) !important; color: var(--text-primary, #333) !important; }
.bh-header-light { background-color: var(--bg-subtle, #f8f9fa) !important; color: var(--text-primary, #333) !important; }
.bh-header-muted { background-color: var(--bg-muted, #e9ecef) !important; color: var(--text-primary, #333) !important; }
.bh-text-brand { color: var(--brand-primary, #3d1a6f) !important; }
.bh-text-accent { color: var(--brand-accent, #fdb913) !important; }
.bh-text-danger { color: var(--brand-danger, #ed174c) !important; }
.bh-text-primary { color: var(--text-primary, #333) !important; }
.bh-text-secondary { color: var(--text-secondary, #666) !important; }
.bh-text-muted { color: var(--text-muted, #999) !important; }
.bh-text-on-dark { color: var(--text-on-dark, #fff) !important; }
.bh-text-success { color: var(--status-success, #28a745) !important; }
.bh-bg-surface { background-color: var(--bg-surface, #fff) !important; }
.bh-bg-subtle { background-color: var(--bg-subtle, #fafafa) !important; }
.bh-bg-muted { background-color: var(--bg-muted, #e9ecef) !important; }
.bh-bg-brand { background-color: var(--brand-primary, #3d1a6f) !important; }
.bh-bg-success { background-color: var(--status-success-bg, #d4edda) !important; }
.bh-bg-danger { background-color: var(--status-danger-bg, #f8d7da) !important; }
.bh-bg-warning { background-color: var(--status-warning-bg, #fff3cd) !important; }
.bh-border-brand { border-color: var(--brand-primary, #3d1a6f) !important; }
.bh-border-accent { border-color: var(--brand-accent, #fdb913) !important; }
.bh-border-default { border-color: var(--border-default, #ddd) !important; }

/* =============================================
   Font Scale -- Accessibility
   Applied via class on <html> element
   ============================================= */
html.font-medium {
    font-size: 110% !important;
}
html.font-large {
    font-size: 120% !important;
}

/* =============================================
   SMART KPI Seeding Banner -- dark mode overrides
   ============================================= */
[data-theme="dark"] .smart-kpi-seed-banner {
    background: linear-gradient(135deg, var(--bg-gold-tint, #1e1a0e) 0%, var(--bg-subtle, #1a1a1a) 100%);
    border-color: var(--brand-accent-soft, #8a6d18);
}

[data-theme="dark"] .smart-kpi-seed-banner h6 {
    color: var(--text-primary, #e0e0e0);
}

[data-theme="dark"] .smart-kpi-seed-banner .smart-context {
    color: var(--text-body, #ccc);
    background: rgba(0,0,0,0.3);
}

[data-theme="dark"] .smart-kpi-seed-section h6 {
    color: var(--text-secondary, #b0b0b0);
    border-bottom-color: var(--border-default, #2a2a2a);
}

[data-theme="dark"] .smart-kpi-card {
    background: var(--bg-surface, #141414);
    border-color: var(--border-strong, #3a3a3a);
}

[data-theme="dark"] .smart-kpi-card .kpi-type {
    color: var(--text-primary, #e0e0e0);
}

[data-theme="dark"] .smart-kpi-card .kpi-target-input {
    background: var(--bg-muted, #1e1e1e);
    border-color: var(--border-strong, #3a3a3a);
    color: var(--text-primary, #e0e0e0);
}

[data-theme="dark"] .smart-kpi-card .kpi-rationale {
    color: var(--text-muted, #808080);
}

[data-theme="dark"] .smart-kpi-card.accepted {
    background: var(--status-success-bg, #0d2818);
    border-color: var(--status-success, #28a745);
}

[data-theme="dark"] .smart-kpi-card.accepted::after {
    color: var(--status-success-text, #6ddf8b);
}

[data-theme="dark"] .outcome-evidence-banner {
    background: linear-gradient(135deg, var(--bg-gold-tint, #1e1a0e) 0%, var(--bg-subtle, #1a1a1a) 100%);
    border-color: var(--brand-accent-soft, #8a6d18);
    color: var(--text-primary, #e0e0e0);
}
[data-theme="dark"] .outcome-needs-actual {
    border-left-color: var(--brand-accent-soft, #8a6d18) !important;
}
[data-theme="dark"] .outcome-hint {
    color: var(--text-muted, #808080);
}

[data-theme="dark"] .planning-readiness-badge {
    background: var(--bg-surface, #141414);
    border-color: var(--border-strong, #3a3a3a);
}
[data-theme="dark"] .readiness-label {
    color: var(--text-primary, #e0e0e0);
}

/* =============================================
   Setup Branding dark mode overrides
   Card headers have hardcoded cream gradients,
   dimensions badge has hardcoded light border
   ============================================= */
[data-theme="dark"] .branding-logo-card {
    border-color: var(--border-default) !important;
    background: var(--bg-surface) !important;
}
[data-theme="dark"] .branding-logo-card-header {
    background: linear-gradient(135deg, var(--bg-gold-tint) 0%, var(--bg-subtle) 100%) !important;
    border-left-color: var(--brand-accent) !important;
    border-bottom-color: var(--border-default) !important;
}
[data-theme="dark"] .branding-logo-card-header h5 {
    color: var(--brand-accent) !important;
}
[data-theme="dark"] .branding-logo-dimensions {
    background: var(--bg-muted) !important;
    border-color: var(--border-strong) !important;
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .branding-logo-preview {
    background: var(--bg-page) !important;
}
[data-theme="dark"] .branding-logo-empty {
    color: var(--text-muted) !important;
}
[data-theme="dark"] .branding-logo-actions {
    background: var(--bg-surface) !important;
    border-top-color: var(--border-default) !important;
}
[data-theme="dark"] .branding-colour-label {
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .branding-colour-swatch {
    border-color: var(--border-strong) !important;
}
/* Crop dialog */
[data-theme="dark"] .branding-crop-header {
    background: linear-gradient(135deg, var(--bg-gold-tint) 0%, var(--bg-subtle) 100%) !important;
    border-left-color: var(--brand-accent) !important;
    border-bottom-color: var(--border-default) !important;
}
[data-theme="dark"] .branding-crop-header h5 {
    color: var(--brand-accent) !important;
}
[data-theme="dark"] .branding-crop-dialog {
    background: var(--bg-surface) !important;
    border: 1px solid var(--border-default);
}
[data-theme="dark"] .branding-crop-container {
    background: var(--bg-page) !important;
    border-color: var(--border-default) !important;
}

/* =============================================================================
   DARK MODE SWEEP (2026-04-02) -- Comprehensive overrides for hardcoded
   light-mode colours throughout BUZZHub.css and page-level styles.
   ============================================================================= */

/* --- Talent page --- */
[data-theme="dark"] .talent-photo {
    background: var(--bg-surface) !important;
}
[data-theme="dark"] .talent-section-label {
    background: var(--bg-surface) !important;
}

/* --- NewsWire filename badge --- */
[data-theme="dark"] .nw-filename-badge {
    background-color: var(--bg-subtle) !important;
}

/* --- Unavailable/disabled blocks --- */
[data-theme="dark"] .unavailable-block {
    background: var(--bg-subtle) !important;
    color: var(--text-muted) !important;
}

/* --- Scrollbar tracks (global) --- */
[data-theme="dark"] ::-webkit-scrollbar-track {
    background: var(--bg-subtle, #1a1a1a) !important;
}
[data-theme="dark"] .infinite-scroll-container::-webkit-scrollbar-track {
    background: var(--bg-subtle) !important;
}

/* --- Sub-brand contact row statuses --- */
[data-theme="dark"] .sub-brand-contact-row.status-bounced {
    background-color: var(--status-danger-bg, #2a0f12) !important;
}
[data-theme="dark"] .sub-brand-contact-row.status-unsubscribed {
    background-color: var(--bg-subtle) !important;
}
[data-theme="dark"] .crm-contact-card.status-unsubscribed .card-header,
[data-theme="dark"] .crm-contact-card.status-bounced .card-header {
    background: var(--bg-subtle) !important;
}

/* --- Row selection states (EDM, GridView) --- */
[data-theme="dark"] .edm-contacts-table tbody tr.gv-row-selected,
[data-theme="dark"] .edm-row.edm-row-selected,
[data-theme="dark"] .edm-row:nth-child(even).edm-row-selected {
    background: var(--bg-purple-tint) !important;
}

/* --- Conversation reception pills --- */
[data-theme="dark"] .conversation-reception.reception-lukewarm {
    background: var(--bg-gold-tint) !important;
    color: var(--brand-accent-bright) !important;
}
[data-theme="dark"] .conversation-reception.reception-icecold {
    background: var(--bg-muted) !important;
    color: var(--text-body) !important;
}

/* --- News spike pills --- */
[data-theme="dark"] .news-spike-pill.spiking-hot {
    background: var(--status-danger-bg) !important;
    color: var(--brand-danger, #f44060) !important;
}
[data-theme="dark"] .news-spike-pill.spiking-cool {
    background: var(--bg-subtle) !important;
    color: var(--text-tertiary) !important;
}

/* --- Custom Switch -- dark state legibility (reworked 2026-07-12, George/Jen).
   The old "gold at rest" treatment gave the UNCHECKED switch a gold knob +
   amber border, and its !importants also beat the checked gold-track rules
   (which carry none in BUZZHub.css) -- so ON and OFF both rendered as a muted
   track with a gold knob, distinguishable only by knob position. OFF is now
   neutral (muted track, strong border, grey knob); ON re-asserts the gold
   track + white knob with matching weight. Covers the standard
   .custom-control-input path AND the .bh-switch-hit postback variant. --- */
[data-theme="dark"] .custom-control-label::before {
    background-color: var(--bg-muted, #1e1e1e) !important;
    border-color: var(--border-strong, #3a3a42) !important;
}
[data-theme="dark"] .custom-switch .custom-control-label::after {
    background-color: var(--text-muted, #959595) !important;
}
[data-theme="dark"] .custom-control-input:checked ~ .custom-control-label::before,
[data-theme="dark"] .custom-switch .bh-switch-hit > input[type="checkbox"]:checked ~ .custom-control-label::before {
    background-color: var(--brand-accent, #d4a824) !important;
    border-color: var(--brand-accent, #d4a824) !important;
}
[data-theme="dark"] .custom-switch .custom-control-input:checked ~ .custom-control-label::after,
[data-theme="dark"] .custom-switch .bh-switch-hit > input[type="checkbox"]:checked ~ .custom-control-label::after {
    background-color: #ffffff !important;
}
/* Publish toggle keeps its green ON semantics (its light-mode green carries no
   !important, so the gold re-assert above would clobber it). Higher specificity
   + !important restores green in dark. */
[data-theme="dark"] .nwc-publish-toggle .custom-switch .custom-control-input:checked ~ .custom-control-label::before {
    background-color: var(--status-success, #28a745) !important;
    border-color: var(--status-success, #28a745) !important;
}

/* --- Legacy .switch/.slider toggle (ClientEDM, Reporting, MailQueue,
   DeliveryPlanner, InterviewCoverage). Light-mode thumb uses --bg-surface
   which collapses to #141414 in dark mode -> invisible circle. Same
   state-legibility rework as .custom-switch: neutral at rest, gold when on. --- */
[data-theme="dark"] .slider {
    background-color: var(--bg-muted, #1e1e1e) !important;
    border: 1px solid var(--border-strong, #3a3a42);
}
[data-theme="dark"] .slider:before {
    background-color: var(--text-muted, #959595) !important;
}
/* Checked: track gold, thumb stays white for contrast against gold */
[data-theme="dark"] input:checked + .slider {
    background-color: var(--brand-accent, #d4a824) !important;
    border-color: var(--brand-accent, #d4a824);
}
[data-theme="dark"] input:checked + .slider:before {
    background-color: #ffffff !important;
}

/* --- Action button backgrounds --- */
/* Primary: lighter violet from --brand-primary gives poor contrast with white
   icons in dark mode. Force a deeper saturated violet for clarity. */
[data-theme="dark"] .action-btn-primary {
    background: #6a3daf !important;
    color: var(--text-on-dark, #fff) !important;
}
[data-theme="dark"] .action-btn-primary:hover {
    background: #8559c9 !important;
}
[data-theme="dark"] .action-btn-secondary {
    background: var(--bg-subtle) !important;
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .action-btn-danger {
    background: var(--status-danger-bg) !important;
    color: var(--brand-danger, #f44060) !important;
}
[data-theme="dark"] .action-btn-none {
    background: var(--bg-subtle) !important;
    color: var(--text-muted) !important;
}

/* --- Engagement badges --- */
[data-theme="dark"] .engagement-badge.downloads {
    background: var(--status-info-bg) !important;
    color: var(--status-info-text) !important;
}
[data-theme="dark"] .engagement-badge.bookings {
    background: var(--status-success-bg) !important;
    color: var(--status-success-text) !important;
}
[data-theme="dark"] .engagement-badge.emails {
    background: var(--bg-purple-tint) !important;
    color: var(--brand-primary) !important;
}
[data-theme="dark"] .engagement-badge.clickable.active {
    background-color: var(--bg-purple-tint) !important;
}

/* --- Top engaged cards (gold/silver/bronze) ---
   Soften the bright metallic gradients in dark mode -- subtle left-border
   accent only, no glossy gradient fill. Keep medal rank badges legible. */
[data-theme="dark"] .top-engaged-card.gold {
    background: var(--bg-surface, #141414) !important;
    border-left: 3px solid rgba(253, 185, 19, 0.55) !important;
    box-shadow: inset 4px 0 0 rgba(253, 185, 19, 0.12);
}
[data-theme="dark"] .top-engaged-card.silver {
    background: var(--bg-surface, #141414) !important;
    border-left: 3px solid rgba(192, 192, 192, 0.45) !important;
    box-shadow: inset 4px 0 0 rgba(192, 192, 192, 0.10);
}
[data-theme="dark"] .top-engaged-card.bronze {
    background: var(--bg-surface, #141414) !important;
    border-left: 3px solid rgba(205, 127, 50, 0.45) !important;
    box-shadow: inset 4px 0 0 rgba(205, 127, 50, 0.10);
}
[data-theme="dark"] .top-engaged-card.gold .top-engaged-rank {
    background: rgba(253, 185, 19, 0.85) !important;
    color: #1a1a1a !important;
}
[data-theme="dark"] .top-engaged-card.silver .top-engaged-rank {
    background: rgba(192, 192, 192, 0.75) !important;
    color: #1a1a1a !important;
}
[data-theme="dark"] .top-engaged-card.bronze .top-engaged-rank {
    background: rgba(205, 127, 50, 0.85) !important;
    color: var(--text-on-dark, #fff) !important;
}

/* --- Email status badges --- */
[data-theme="dark"] .edm-badge-muted {
    background: var(--bg-muted) !important;
    color: var(--text-secondary) !important;
}
[data-theme="dark"] .bl-badge-bounced {
    background: var(--status-danger-bg) !important;
    color: var(--brand-danger, #f44060) !important;
}

/* --- JournoIntel publisher badges --- */
[data-theme="dark"] .ji-pub-badge {
    background: var(--bg-subtle) !important;
}
[data-theme="dark"] .ji-card.dismissed .ji-pub-badge {
    background: var(--bg-muted) !important;
}

/* --- Journalist Intel hover badge (CRM/EmailPitching contact cards) ---
   Light gradient (#667eea -> #764ba2) bottoms out too dark on dark surfaces;
   white "Intel" text + 0.75 chevron opacity wash out. Lift the gradient,
   full-opacity chevron, ring to separate from the card. */
[data-theme="dark"] .journalist-intel-badge {
    background: linear-gradient(135deg, #8b6dff 0%, #b378ff 100%) !important;
    color: #fff !important;
    box-shadow: 0 0 0 1px rgba(167, 107, 223, 0.35);
}
[data-theme="dark"] .journalist-intel-badge:hover {
    box-shadow: 0 2px 10px rgba(167, 107, 223, 0.5);
}
[data-theme="dark"] .journalist-intel-badge .badge-chevron {
    opacity: 1;
}
[data-theme="dark"] .journalist-intel-badge.no-intel {
    background: var(--bg-subtle, #1a1a1a) !important;
    color: var(--text-tertiary, #999) !important;
    box-shadow: 0 0 0 1px var(--border-default, #2a2a2a);
}

/* --- InterviewCoverage booking cards --- */
[data-theme="dark"] .booking-card-header {
    background: var(--bg-subtle, #1a1a1a) !important;
    border-bottom-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .booking-datetime .time {
    color: var(--brand-primary, #b89cf0) !important;
}
[data-theme="dark"] .outlet-logo {
    background: #fff !important; /* keep white so logos with transparent bg remain visible */
}
[data-theme="dark"] .booking-date-group .date-header {
    background: var(--bg-subtle, #1a1a1a) !important;
    color: var(--brand-primary, #b89cf0) !important;
}

/* --- JournoIntel quick import banner & outlet expansion --- */
[data-theme="dark"] .ji-quick-import {
    background: var(--bg-subtle, #1a1a1a) !important;
    border-color: var(--border-default, #2a2a2a) !important;
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .ji-quick-import .text-muted {
    color: var(--text-secondary, #a0a0a0) !important;
}
[data-theme="dark"] .ji-outlet-group {
    border-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .ji-outlet-header {
    background: var(--bg-subtle, #1a1a1a) !important;
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .ji-outlet-header .badge-light {
    background: var(--bg-purple-tint, #1e1430) !important;
    color: var(--brand-primary, #b89cf0) !important;
}
[data-theme="dark"] .ji-outlet-body {
    background: var(--bg-surface, #121212) !important;
}
[data-theme="dark"] .ji-outlet-body .ji-card {
    border-bottom-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .ji-outlet-actions .btn {
    border-color: var(--border-default, #2a2a2a) !important;
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .ji-outlet-actions .btn:hover {
    background: var(--bg-muted, #222) !important;
}
[data-theme="dark"] .ji-filter-bar {
    background: var(--bg-subtle, #1a1a1a) !important;
}
[data-theme="dark"] .ji-bulk-bar {
    background: var(--bg-gold-tint, #2a2410) !important;
    color: var(--text-primary, #e8e8e8) !important;
}

/* --- AI quota warnings --- */
[data-theme="dark"] .ai-quota-warning {
    background: var(--bg-gold-tint) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .ai-quota-exhausted {
    background: var(--status-danger-bg) !important;
    color: var(--text-primary) !important;
}

/* --- Merge token pills --- */
[data-theme="dark"] .merge-token-pill.story-token {
    background: var(--bg-gold-tint) !important;
}

/* --- EmailPitching field category headers and items --- */
[data-theme="dark"] .field-category-header {
    background: var(--bg-subtle) !important;
    color: var(--text-primary) !important;
}
[data-theme="dark"] .field-category-header:hover {
    background: var(--bg-muted) !important;
}
[data-theme="dark"] .field-item {
    background: var(--bg-muted) !important;
    color: var(--text-primary) !important;
}

/* --- Filter card badges (shared bh-filter-card primitives) --- */
[data-theme="dark"] .bh-filter-badge,
[data-theme="dark"] .ep-filter-pill {
    background: var(--bg-subtle) !important;
}
/* Preserve the amber "Needed" cue and the amber "n of m" counter in dark mode
   (updateFilterBadges adds .needed / .counter at runtime). Both need the explicit
   override because the neutral .bh-filter-badge rule above is !important. Scoped to
   the section header so it does not affect neutral badges. */
[data-theme="dark"] .bh-filter-section-header .bh-filter-badge.needed,
[data-theme="dark"] .bh-filter-section-header .bh-filter-badge.counter {
    background: var(--brand-accent, #d4a824) !important;
    color: var(--brand-primary-on-accent, #1a1a1a) !important;
}

/* --- EmailPitching: Compose form labels and field picker panel --- */
[data-theme="dark"] .ep-prepend-label {
    background: var(--bg-subtle) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-default) !important;
}
[data-theme="dark"] .emailfieldpicker {
    background: var(--bg-subtle) !important;
    border-color: var(--border-default) !important;
}

/* --- Email Preview: dark mode adopts theme surface --- */
/* Frame + header chrome only. The body itself is handled by the RTE-rendered  */
/* surfaces block above (inline style="color:rgb(0,0,0)" from the editor needs */
/* !important wildcard override; .email-preview-body is added to that list).   */
/* Use Send Self Test to view the email as the recipient sees it (white).      */
[data-theme="dark"] .email-preview-frame {
    background: var(--bg-surface, #141414) !important;
    border-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .email-preview-header {
    background: var(--bg-subtle, #1a1a1a) !important;
    border-bottom-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .email-preview-header .ep-field-label {
    color: var(--text-muted, #b0b0b0) !important;
}
[data-theme="dark"] .email-preview-header .ep-field-value {
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .email-preview-body iframe {
    background: #1e1e1e !important;
}

/* --- Public page alternating sections --- */
[data-theme="dark"] .cq-section-alt,
[data-theme="dark"] .sm-section-alt,
[data-theme="dark"] .prm-section-alt,
[data-theme="dark"] .sm-game-wrap {
    background: var(--bg-subtle) !important;
}
[data-theme="dark"] .ps-wheel-info {
    background: var(--bg-subtle) !important;
}
[data-theme="dark"] .bs-compare-category {
    background: var(--bg-subtle) !important;
}

/* --- Collapsible profile section headers (CRM detail view) --- */
[data-theme="dark"] .profile-section-collapsible {
    border-top-color: var(--border-default) !important;
}

/* --- Landing/marketing button variants --- */
[data-theme="dark"] .btn-landing-primary {
    background: var(--bg-subtle) !important;
}
[data-theme="dark"] .bs-button-main {
    background: var(--bg-gold-tint) !important;
}

/* --- BH Gold Header dark mode (matches .bh-gold-header master list in BUZZHub.css) --- */
[data-theme="dark"] .bh-gold-header,
[data-theme="dark"] .profile-card-header.yellow,
[data-theme="dark"] .card-header,
[data-theme="dark"] .info-section-card h4,
[data-theme="dark"] .qa-card-header,
[data-theme="dark"] .portal-card-header,
[data-theme="dark"] .portal-section-header,
[data-theme="dark"] .media-release-questions,
[data-theme="dark"] .coverage-panel-header,
[data-theme="dark"] .survey-import-zone,
[data-theme="dark"] .survey-table th,
[data-theme="dark"] .agreement-card-header,
[data-theme="dark"] .report-link-card,
[data-theme="dark"] .calendar-options-header,
[data-theme="dark"] .crm-top-contacts-header,
[data-theme="dark"] .crm-section-header,
[data-theme="dark"] .crm-modal-header,
[data-theme="dark"] .group-members-header,
[data-theme="dark"] .group-members-panel table thead th,
[data-theme="dark"] .table-blocked-emails th,
[data-theme="dark"] .table-condensed > tbody > tr > th,
[data-theme="dark"] .key-messages-modal .modal-header,
[data-theme="dark"] .edm-groups-header,
[data-theme="dark"] .ji-country-pack,
[data-theme="dark"] .branding-logo-card-header,
[data-theme="dark"] .branding-crop-header,
[data-theme="dark"] .sp-tips-card-header,
[data-theme="dark"] .brand-header-card,
[data-theme="dark"] .form-card h3, [data-theme="dark"] .form-card h4,
[data-theme="dark"] .form-card .form-header,
[data-theme="dark"] .storybuilder-form h3, [data-theme="dark"] .storybuilder-form h4,
[data-theme="dark"] .sub-brand-expandable.expanded .sub-brand-header-row,
[data-theme="dark"] .crm-contact-card .card-header,
[data-theme="dark"] .slideout-body .qa-card-header,
[data-theme="dark"] .modalPopup .input-group .input-group-text,
[data-theme="dark"] .modal-body .input-group .input-group-text,
[data-theme="dark"] .form-view-modern .input-group .input-group-text,
[data-theme="dark"] .sub-content .profile-card-header.yellow,
[data-theme="dark"] .smallside .profile-card-header.yellow {
    background: var(--bg-subtle, #1a1a1a) !important;
    color: var(--text-primary, #e8e8e8) !important;
    border-bottom-color: var(--border-default, #2a2a2a) !important;
}

/* Schedule portal: RTE / Word-pasted content carries inline color styles (HtmlSanitiser
   does not strip the style attribute) that ignore dark mode -> dark text on a dark card.
   Force readable text on the content surfaces; re-colour links and the questions heading. */
[data-theme="dark"] .schedule-portal .info-section-content,
[data-theme="dark"] .schedule-portal .info-section-content *,
[data-theme="dark"] .schedule-portal .media-release-content,
[data-theme="dark"] .schedule-portal .media-release-content *,
[data-theme="dark"] .schedule-portal .media-release-bullets,
[data-theme="dark"] .schedule-portal .media-release-bullets *,
[data-theme="dark"] .schedule-portal .media-release-questions :not(h5):not(h5 *) {
    color: var(--text-body, #d4d4d4) !important;
}
[data-theme="dark"] .schedule-portal .info-section-content a,
[data-theme="dark"] .schedule-portal .media-release-content a,
[data-theme="dark"] .schedule-portal .media-release-questions a {
    color: #9db8ff !important;
}
[data-theme="dark"] .schedule-portal .media-release-questions h5 {
    color: var(--text-primary, #e5e5e5) !important;
}
[data-theme="dark"] .schedule-portal .media-release-questions h5 i {
    color: var(--brand-accent, #fdb913) !important;
}
/* jQuery Knob writes the value text colour inline (= fgColor); keep it legible on the dark card. */
[data-theme="dark"] .schedule-portal .support-stat-dial input.dial {
    color: var(--text-primary, #e5e5e5) !important;
}
[data-theme="dark"] .schedule-portal .support-stat-caption {
    color: var(--text-body, #d4d4d4) !important;
}
/* Media-release headline sits on the brand-primary header -- use the brand's contrast-safe
   nav-text (its own Text colour, else auto white/black), enforced in BOTH modes and over any
   inline colour pasted into the Headline field. Was hard white for the old purple masthead. */
.schedule-portal .media-release-title h4,
.schedule-portal .media-release-title h4 * {
    color: var(--cp-brand-nav-text, var(--text-on-dark, #ffffff)) !important;
    font-size: 1rem !important;
    font-weight: 600 !important;
}

/* Selected row states with gold background */
[data-theme="dark"] .outlet-contact-row.selected {
    background: var(--bg-purple-tint, #1e1430) !important;
}
/* Survey import zone hover */
[data-theme="dark"] .survey-import-zone:hover {
    background: var(--bg-muted, #1e1e1e) !important;
}

/* =============================================
   Modal body text / headings -- dark mode
   Naked <h4>/<h5>/<h6> section headings inside
   .modalPopup .body inherit dim colour from
   somewhere in the cascade and become unreadable
   on dark surfaces. Force --text-primary.
   ============================================= */
[data-theme="dark"] .modalPopup,
[data-theme="dark"] .modalPopup .body,
[data-theme="dark"] .modalPopup .body h1,
[data-theme="dark"] .modalPopup .body h2,
[data-theme="dark"] .modalPopup .body h3,
[data-theme="dark"] .modalPopup .body h4,
[data-theme="dark"] .modalPopup .body h5,
[data-theme="dark"] .modalPopup .body h6,
[data-theme="dark"] .modal-body h1,
[data-theme="dark"] .modal-body h2,
[data-theme="dark"] .modal-body h3,
[data-theme="dark"] .modal-body h4,
[data-theme="dark"] .modal-body h5,
[data-theme="dark"] .modal-body h6 {
    color: var(--text-primary, #e8e8e8) !important;
}

/* =============================================
   Section headings -- dark mode
   Naked h5/h6 inside card-style section headers (Outreach Groups,
   Syndication Groups, EDM Groups panels) and ClientEDM engagement
   stat labels inherit a dim colour from the cascade and render as
   dark-grey-on-black. Force --text-primary.
   ============================================= */
[data-theme="dark"] .groups-header h5,
[data-theme="dark"] .groups-header h6,
[data-theme="dark"] #engagements .row.text-center > [class*="col-"] > h5 {
    color: var(--text-primary, #e8e8e8) !important;
}

/* =============================================
   EDM Group card -- selected state in dark mode
   Hardcoded cream gradient (f0fff4 -> fff) becomes unreadable when
   .group-name text (--text-primary) flips to near-white. Swap to a
   subtle dark panel and keep the green border as the selected signal.
   ============================================= */
[data-theme="dark"] .group-card {
    background: var(--bg-surface, #141414) !important;
    border-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .group-card:hover {
    background: var(--bg-subtle, #1a1a1a) !important;
    border-color: var(--brand-primary, #a76bdf) !important;
}
[data-theme="dark"] .group-card.selected {
    background: linear-gradient(135deg, #0d2818 0%, var(--bg-surface, #141414) 100%) !important;
    border-color: var(--status-success, #28a745) !important;
}
[data-theme="dark"] .group-card .group-name {
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .group-card .group-meta {
    color: var(--text-secondary, #bcbcbc) !important;
}

/* =============================================
   EDM Email Groups list -- dark mode
   BUZZHub.css sets per-column colours on .edm-col-* which overrides
   the .edm-list-header brand-primary. Email column has no override
   so its header reads purple and the cell inherits dim body text.
   Force a single readable palette in dark mode for header and cells.
   ============================================= */
[data-theme="dark"] .edm-list-header {
    background: var(--bg-subtle, #1a1a1a) !important;
    color: var(--text-primary, #e8e8e8) !important;
    border-bottom-color: var(--border-default, #2a2a2a) !important;
}
[data-theme="dark"] .edm-list-header .edm-col-name,
[data-theme="dark"] .edm-list-header .edm-col-email,
[data-theme="dark"] .edm-list-header .edm-col-sent,
[data-theme="dark"] .edm-list-header .edm-col-open,
[data-theme="dark"] .edm-list-header .edm-col-brand,
[data-theme="dark"] .edm-list-header .edm-col-state,
[data-theme="dark"] .edm-list-header .edm-col-pos {
    color: var(--text-primary, #e8e8e8) !important;
}
[data-theme="dark"] .edm-row .edm-col-email {
    color: var(--text-body, #d4d4d4);
}
[data-theme="dark"] .edm-row .edm-col-email a {
    color: var(--brand-primary, #a76bdf);
}
[data-theme="dark"] .edm-row .edm-col-brand {
    color: var(--text-body, #d4d4d4);
}
[data-theme="dark"] .edm-row .edm-col-state,
[data-theme="dark"] .edm-row .edm-col-sent,
[data-theme="dark"] .edm-row .edm-col-open,
[data-theme="dark"] .edm-row .edm-col-pos {
    color: var(--text-secondary, #bcbcbc);
}

/* =============================================
   Inline #ffc107 (warning yellow) badges -- dark mode
   Several pages build status pills with
   `background:#ffc107; color:var(--text-primary, #333)`.
   In dark mode --text-primary flips to near-white,
   leaving white-on-gold = unreadable. Force dark ink
   on any element that carries a yellow background
   via inline style.
   ============================================= */
[data-theme="dark"] [style*="background:#ffc107"],
[data-theme="dark"] [style*="background: #ffc107"],
[data-theme="dark"] [style*="background-color:#ffc107"],
[data-theme="dark"] [style*="background-color: #ffc107"],
[data-theme="dark"] [style*="background:#fdb913"],
[data-theme="dark"] [style*="background: #fdb913"],
[data-theme="dark"] [style*="background-color:#fdb913"],
[data-theme="dark"] [style*="background-color: #fdb913"] {
    color: #1a1a1a !important;
}

/* =============================================
   Class-level hardcoded warning yellow -- dark mode
   Same pattern as the inline rule above but for CSS classes
   declared in page-level <style> blocks.
   ============================================= */
[data-theme="dark"] .priority-P3,
[data-theme="dark"] .priority-P2,
[data-theme="dark"] .status-onhold,
[data-theme="dark"] .review-status.amber,
[data-theme="dark"] .top-engaged-card.gold .top-engaged-rank {
    color: #1a1a1a !important;
}

/* =============================================
   Inline light-blue / pale-blue backgrounds -- dark mode
   Common pattern for info banners (e.g. pipeline context help).
   ============================================= */
[data-theme="dark"] [style*="background:#f0f4ff"],
[data-theme="dark"] [style*="background: #f0f4ff"],
[data-theme="dark"] [style*="background:#e8f0fe"],
[data-theme="dark"] [style*="background: #e8f0fe"],
[data-theme="dark"] [style*="background:#e3f2fd"],
[data-theme="dark"] [style*="background: #e3f2fd"],
[data-theme="dark"] [style*="background:#d1ecf1"],
[data-theme="dark"] [style*="background: #d1ecf1"],
[data-theme="dark"] [style*="background-color:#f0f4ff"],
[data-theme="dark"] [style*="background-color: #f0f4ff"] {
    background: var(--status-info-bg, #0a1e24) !important;
    color: var(--status-info-text, #5dc8db) !important;
    border-color: var(--status-info-border, #0e2a30) !important;
}
/* Linear-gradient variants */
[data-theme="dark"] [style*="linear-gradient(135deg,#f0f4ff"],
[data-theme="dark"] [style*="linear-gradient(135deg, #f0f4ff"] {
    background: linear-gradient(135deg, var(--bg-subtle, #1a1a1a) 0%, var(--bg-surface, #141414) 100%) !important;
    color: var(--text-primary, #e8e8e8) !important;
}

/* =============================================
   Inline pure-white backgrounds -- dark mode
   Small catch-all so hardcoded `style="background:#fff"` does not
   keep a white card stranded on the dark page. Applies only when
   the inline style sets the background; page-level white classes
   such as `.bg-white` are handled separately above.
   ============================================= */
[data-theme="dark"] [style*="background:#fff;"],
[data-theme="dark"] [style*="background: #fff;"],
[data-theme="dark"] [style*="background:#ffffff;"],
[data-theme="dark"] [style*="background: #ffffff;"],
[data-theme="dark"] [style*="background:#fafafa;"],
[data-theme="dark"] [style*="background: #fafafa;"],
[data-theme="dark"] [style*="background:#f8f9fa;"],
[data-theme="dark"] [style*="background: #f8f9fa;"],
[data-theme="dark"] [style*="background-color:#fff;"],
[data-theme="dark"] [style*="background-color: #fff;"],
[data-theme="dark"] [style*="background-color:#ffffff;"],
[data-theme="dark"] [style*="background-color: #ffffff;"] {
    background-color: var(--bg-surface, #141414) !important;
    color: var(--text-primary, #e8e8e8);
}

/* =============================================
   Dark mode card elevation lift (2026-04-21)
   Cards that rely on soft light-mode shadows (rgba(0,0,0,0.05-0.08))
   read flat on #0a0a0a page bg because the shadow alpha is invisible.
   Solution: lift surface one step above --bg-surface, beef shadow alpha,
   strengthen border. Preserves light mode (scoped to [data-theme="dark"]).
   If you add a new card class anywhere, add it here too.
   See .claude/scripts/dark-mode-lint.ps1 for audit helper.
   ============================================= */
[data-theme="dark"] .ji-pack-card,
[data-theme="dark"] .ji-stat-card,
[data-theme="dark"] .ji-country-card,
[data-theme="dark"] .ji-card,
[data-theme="dark"] .coverage-card,
[data-theme="dark"] .coverage-stats-bar .kpi-card,
[data-theme="dark"] .pitch-stat-card,
[data-theme="dark"] .bh-data-card,
[data-theme="dark"] .compose-card,
[data-theme="dark"] .nwcard,
[data-theme="dark"] .crm-stat-card,
[data-theme="dark"] .contact-card,
[data-theme="dark"] .search-result-card,
[data-theme="dark"] .crm-contact-card,
[data-theme="dark"] .top-engaged-card,
[data-theme="dark"] .outlet-contact-card,
[data-theme="dark"] .top-contact-card,
[data-theme="dark"] .group-card,
[data-theme="dark"] .blocked-stat-card,
[data-theme="dark"] .profile-card,
[data-theme="dark"] .edm-stat-card,
[data-theme="dark"] .inbox-message-card,
[data-theme="dark"] .mi-stat-card,
[data-theme="dark"] .portal-metric-card,
[data-theme="dark"] .bh-summary-card,
[data-theme="dark"] .media-release-card,
[data-theme="dark"] .sub-brand-item,
[data-theme="dark"] .conversation-item,
[data-theme="dark"] .outlet-syndication-card,
[data-theme="dark"] .form-section,
[data-theme="dark"] .outlet-profile,
[data-theme="dark"] .edm-groups-sidebar,
[data-theme="dark"] .edm-group-panel,
[data-theme="dark"] .nwc-card,
[data-theme="dark"] .social-stat-card,
[data-theme="dark"] .media-stat-card,
[data-theme="dark"] .kpi-card,
[data-theme="dark"] .kpi-stat,
[data-theme="dark"] .analytics-card,
[data-theme="dark"] .analytics-panel,
[data-theme="dark"] .dashboard-widget,
[data-theme="dark"] .pipeline-stat-card,
[data-theme="dark"] .pitch-list-card,
[data-theme="dark"] .pitch-contact-card,
[data-theme="dark"] .focus-card,
[data-theme="dark"] .task-stat-box,
[data-theme="dark"] .decline-stat-card,
[data-theme="dark"] .mail-stat-card,
[data-theme="dark"] .callback-card,
[data-theme="dark"] .history-item,
[data-theme="dark"] .graphic-card,
[data-theme="dark"] .dc-editor,
[data-theme="dark"] .dc-share,
[data-theme="dark"] .dc-preview-card,
[data-theme="dark"] .task-card,
[data-theme="dark"] .pipeline-table-view,
[data-theme="dark"] .pipeline-chart-view,
[data-theme="dark"] .ji-panel,
[data-theme="dark"] .ji-feed-panel,
[data-theme="dark"] .ra-stat-card,
[data-theme="dark"] .bh-kpi,
[data-theme="dark"] .bh-eng-summary-tile,
[data-theme="dark"] .nw-story-card,
[data-theme="dark"] .skel-card,
[data-theme="dark"] .health-card {
    background-color: #1d1e24 !important;
    /* Override only 3 sides -- preserve border-left-color so coloured
       accent borders (brand/success/danger/warning) stay visible. */
    border-top-color: #3a3a42 !important;
    border-right-color: #3a3a42 !important;
    border-bottom-color: #3a3a42 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.5) !important;
}

/* Compact KPI strip palette wash -- dark twin of engagement-design-system
   section 0 (2026-07-12, George/Jen: compact chips read as plain boxes).
   The dark-card flattener above would erase the light wash, and the cascade
   greys the coloured left edge in dark, so both are re-asserted per palette.
   Media query mirrors section 0 (short + wide laptops only). Fallbacks are
   the dark-theme token values. */
@media (max-height: 900px) and (min-width: 992px) {
    [data-theme="dark"] .bh-kpi.primary, [data-theme="dark"] .crm-stat-card.primary, [data-theme="dark"] .pipeline-stat-card.primary, [data-theme="dark"] .kpi-card.primary, [data-theme="dark"] .ra-stat-card.primary, [data-theme="dark"] .pitch-stat-card.primary {
        background-color: color-mix(in srgb, var(--brand-primary, #a76bdf) 20%, #1d1e24) !important;
        border-left-color: var(--brand-primary, #a76bdf) !important;
    }
    [data-theme="dark"] .bh-kpi.success, [data-theme="dark"] .crm-stat-card.success, [data-theme="dark"] .pipeline-stat-card.success, [data-theme="dark"] .kpi-card.success, [data-theme="dark"] .ra-stat-card.success, [data-theme="dark"] .pitch-stat-card.success {
        background-color: color-mix(in srgb, var(--status-success, #28a745) 20%, #1d1e24) !important;
        border-left-color: var(--status-success, #28a745) !important;
    }
    [data-theme="dark"] .bh-kpi.warning, [data-theme="dark"] .crm-stat-card.warning, [data-theme="dark"] .pipeline-stat-card.warning, [data-theme="dark"] .kpi-card.warning, [data-theme="dark"] .ra-stat-card.warning, [data-theme="dark"] .pitch-stat-card.warning {
        background-color: color-mix(in srgb, var(--brand-accent, #d4a824) 20%, #1d1e24) !important;
        border-left-color: var(--brand-accent, #d4a824) !important;
    }
    [data-theme="dark"] .bh-kpi.info, [data-theme="dark"] .crm-stat-card.info, [data-theme="dark"] .pipeline-stat-card.info, [data-theme="dark"] .ra-stat-card.info, [data-theme="dark"] .pitch-stat-card.info {
        background-color: color-mix(in srgb, var(--status-info, #17a2b8) 20%, #1d1e24) !important;
        border-left-color: var(--status-info, #17a2b8) !important;
    }
    [data-theme="dark"] .bh-kpi.danger, [data-theme="dark"] .crm-stat-card.danger, [data-theme="dark"] .pipeline-stat-card.danger, [data-theme="dark"] .kpi-card.danger, [data-theme="dark"] .ra-stat-card.danger, [data-theme="dark"] .pitch-stat-card.danger {
        background-color: color-mix(in srgb, var(--brand-danger, #f44060) 18%, #1d1e24) !important;
        border-left-color: var(--brand-danger, #f44060) !important;
    }
    [data-theme="dark"] .bh-kpi.secondary, [data-theme="dark"] .crm-stat-card.secondary, [data-theme="dark"] .ra-stat-card.secondary {
        background-color: color-mix(in srgb, var(--text-secondary, #bcbcbc) 14%, #1d1e24) !important;
        border-left-color: var(--text-secondary, #bcbcbc) !important;
    }
    [data-theme="dark"] .bh-kpi.risk, [data-theme="dark"] .crm-stat-card.risk {
        background-color: color-mix(in srgb, var(--status-warning-alt, #e8a824) 18%, #1d1e24) !important;
        border-left-color: var(--status-warning-alt, #e8a824) !important;
    }
    [data-theme="dark"] .crm-stat-card.inbox-stat {
        background-color: color-mix(in srgb, var(--accent-purple, #6f42c1) 20%, #1d1e24) !important;
        border-left-color: var(--accent-purple, #6f42c1) !important;
    }
}

/* =============================================
   Time Report table (CRMClients Activity) -- dark mode
   th uses --brand-primary text on --bg-purple-tint -> light violet
   on dark violet, low contrast. td has no explicit colour and
   inherits a dim cascade colour, reading as grey-on-grey. Force
   white headers and full --text-body on cells.
   ============================================= */
[data-theme="dark"] .time-report-table th {
    color: var(--text-on-dark, #ffffff) !important;
    border-bottom-color: var(--border-strong, #3a3a42) !important;
}
[data-theme="dark"] .time-report-table td {
    color: var(--text-body, #d4d4d4);
    border-bottom-color: var(--border-default, #2a2a2a);
}
[data-theme="dark"] .time-report-table tr:hover td {
    background: var(--bg-purple-tint, #1e1430) !important;
}
[data-theme="dark"] .time-report-table tfoot td {
    color: var(--text-primary, #e8e8e8);
}

/* CRM contact cards -- hover pop in dark mode.
   Base elevation handled above. Hover adds a subtle purple-tinted glow
   so the card edge reads crisp against #0a0a0a page bg. */
[data-theme="dark"] .crm-contact-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 2px 4px rgba(0,0,0,0.55),
                0 12px 28px rgba(0,0,0,0.6),
                0 0 0 1px rgba(253, 185, 19, 0.08) !important;
    border-top-color: #4a4a55 !important;
    border-right-color: #4a4a55 !important;
    border-bottom-color: #4a4a55 !important;
}

/* Print reset -- forces light mode for printing */
@media print {
    :root, [data-theme="dark"] {
        --brand-primary: #3d1a6f;
        --brand-accent: #fdb913;
        --brand-danger: #ed174c;
        --brand-magenta: #7d1d61;
        --bg-page: #ffffff;
        --bg-surface: #ffffff;
        --bg-subtle: #fafafa;
        --bg-muted: #f0f0f0;
        --bg-purple-tint: #f0ebf7;
        --bg-gold-tint: #fff5dc;
        --text-primary: #333333;
        --text-body: #555555;
        --text-secondary: #666666;
        --text-tertiary: #888888;
        --text-muted: #999999;
        --text-on-dark: #ffffff;
        --page-title-color: #3d1a6f;
        --border-subtle: #e5e5ea;
        --border-light: #e9ecef;
        --border-default: #dddddd;
        --border-strong: #cccccc;
        --border-brand: #e0d4f0;
        --status-success: #28a745;
        --status-success-bg: #d4edda;
        --status-success-text: #155724;
        --status-warning: #ffc107;
        --status-warning-bg: #fff3cd;
        --status-warning-text: #856404;
        --status-danger: #dc3545;
        --status-danger-bg: #f8d7da;
        --status-info: #17a2b8;
        --status-info-bg: #d1ecf1;
        --status-info-text: #0c5460;
        --status-success-border: #c3e6cb;
        --status-danger-border: #f5c6cb;
        --status-danger-text: #721c24;
        --status-warning-border: #ffeeba;
        --status-info-border: #bee5eb;
        --accent-purple: #6c5ce7;
        --shadow-color: rgba(0,0,0,0.1);
        --shadow-sm: 0 1px 3px rgba(0,0,0,0.08);
        --shadow-md: 0 4px 12px rgba(0,0,0,0.12);
        --overlay-bg: rgba(0,0,0,0.5);
        --scrollbar-track: #f1f1f1;
        --scrollbar-thumb: #c1c1c1;
        --scrollbar-thumb-hover: #a1a1a1;
    }
}

/* =============================================================================
   Engagement Lifecycle Redesign tokens (added 2026-05-10)
   Spec: .claude/buzzscribed/engagement-design-system-2026-05-10.md sec 1.2
   All additive -- no existing token redefined.
   ============================================================================= */
:root {
    /* Engagement State badges (axis A2) */
    --es-provisional-bg: #fff5dc;
    --es-provisional-fg: #8a6d00;
    --es-provisional-border: #fdb913;
    --es-draft-bg: #e3f2fd;
    --es-draft-fg: #0d47a1;
    --es-draft-border: #90caf9;
    --es-pending-bg: #fff3cd;
    --es-pending-fg: #856404;
    --es-pending-border: #ffeaa7;
    --es-active-bg: #d4edda;
    --es-active-fg: #155724;
    --es-active-border: #c3e6cb;
    --es-closed-bg: #e9ecef;
    --es-closed-fg: #495057;
    --es-closed-border: #ced4da;

    /* Work Lifecycle layer rendering (axis A3)
       2026-05-15: forecast stripe alpha softened (0.6 -> 0.22) so labels stay legible
       on the striped background. Pattern density also lowered in engagement-design-system.css. */
    --wl-forecast-stripe-color: rgba(125, 95, 195, 0.22);
    --wl-forecast-base-bg: var(--bg-purple-tint);
    --wl-forecast-opacity: 0.6;
    --wl-committed-bg: var(--brand-primary);
    --wl-committed-fg: #ffffff;
    --wl-actual-progress-bg: var(--brand-accent);
    --wl-actual-text: #1a1024;

    /* Execution Health (axis A5) */
    --eh-ontrack: #28a745;
    --eh-ontrack-bg: #d4edda;
    --eh-over: #ed174c;
    --eh-over-bg: #fde0e6;
    --eh-under: #fd7e14;
    --eh-under-bg: #fff0e0;

    /* Resource conflict overlay */
    --conflict-overlay: rgba(237, 23, 76, 0.18);
    --conflict-icon: #ed174c;

    /* LSE legacy badge */
    --legacy-bg: #ede7f6;
    --legacy-fg: #4527a0;
    --legacy-border: #b39ddb;
}

[data-theme="dark"] {
    /* Engagement State (dark variants -- WCAG AA 4.5:1 minimum) */
    --es-provisional-bg: #3a2f10;
    --es-provisional-fg: #ffd966;
    --es-provisional-border: #fdb913;
    --es-draft-bg: #0d2438;
    --es-draft-fg: #90caf9;
    --es-draft-border: #1e3a5f;
    --es-pending-bg: #3a2f10;
    --es-pending-fg: #ffd966;
    --es-pending-border: #856404;
    --es-active-bg: #14361e;
    --es-active-fg: #6cd189;
    --es-active-border: #1e5028;
    --es-closed-bg: #2a2a2a;
    --es-closed-fg: #adb5bd;
    --es-closed-border: #3a3a3a;

    /* Work Lifecycle (dark) -- alpha softened in parallel with light theme (2026-05-15). */
    --wl-forecast-stripe-color: rgba(180, 150, 255, 0.2);
    --wl-committed-bg: #6b3eb0;
    --wl-actual-progress-bg: #ffd966;

    /* Execution Health (dark variants) */
    --eh-ontrack: #6cd189;
    --eh-ontrack-bg: #14361e;
    --eh-over: #ff5577;
    --eh-over-bg: #401822;
    --eh-under: #ff9c40;
    --eh-under-bg: #3a2410;

    /* Resource conflict */
    --conflict-overlay: rgba(255, 85, 119, 0.22);
    --conflict-icon: #ff5577;

    /* Legacy badge */
    --legacy-bg: #2a2238;
    --legacy-fg: #d1c4e9;
    --legacy-border: #4527a0;
}

