/* Minification failed. Returning unminified contents.
(34,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 '-'
(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 '-'
(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 '-'
(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 '-'
(47,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 '-'
(56,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(57,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 '-'
(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 '-'
(69,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(70,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 '-'
(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 '-'
(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 '-'
(87,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(88,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 '-'
(90,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(91,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 '-'
(96,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 '-'
(98,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(99,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 '-'
(103,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(104,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(105,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(106,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(107,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 '-'
(113,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(114,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 '-'
(120,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(121,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(122,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 '-'
(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 '-'
(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 '-'
(135,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(136,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(137,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 '-'
(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 '-'
(146,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(147,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 '-'
(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 '-'
(160,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 '-'
(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 '-'
(168,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 '-'
(180,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(181,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 '-'
(187,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(188,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 '-'
(192,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(193,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 '-'
(198,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(199,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(200,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(201,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(202,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(203,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(204,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(205,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(208,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(209,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(210,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(211,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(214,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(215,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(216,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(217,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(218,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(219,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(222,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(223,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(224,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(227,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(228,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(229,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(232,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(233,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(234,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(237,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(238,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(241,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(242,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(243,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(244,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(245,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(248,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(249,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(252,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(253,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(254,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(255,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(256,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(257,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(258,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(259,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(260,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(261,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(262,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(263,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(264,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(265,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(266,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(267,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(268,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(271,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(272,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(273,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(274,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(275,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(276,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(277,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(280,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(281,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(282,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(283,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(284,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(285,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(286,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(287,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(288,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(289,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(290,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(291,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(292,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(293,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(294,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(295,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(296,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(297,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(298,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(301,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(302,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(304,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(307,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(308,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(311,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(312,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(315,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(316,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(319,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(320,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(322,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(325,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(326,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(327,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(328,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(329,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(330,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(331,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(335,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(336,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(337,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(340,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(341,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(344,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(345,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(348,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(351,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(352,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(353,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(354,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(355,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(356,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(357,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(358,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(359,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(360,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(361,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(362,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(363,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(364,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(365,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(366,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(367,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(368,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(369,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(370,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(371,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(372,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(373,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(374,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(375,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(376,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(377,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(378,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(379,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(380,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(381,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(382,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(385,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(386,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(387,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(388,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(389,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(390,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(391,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(392,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(393,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(394,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(397,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(398,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(399,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(400,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(401,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(402,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(405,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(406,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(409,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(410,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(411,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(412,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(413,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(414,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(415,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(423,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(424,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(425,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(426,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(429,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(430,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(431,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(434,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(435,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(436,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(437,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(438,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(439,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(442,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(443,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(446,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(447,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(448,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(449,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(450,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(453,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(454,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(455,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(456,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(457,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(458,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(461,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(462,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(463,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(464,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(465,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(466,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(469,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(470,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(471,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(472,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(475,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(478,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(481,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(484,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(485,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(486,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(487,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(488,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(489,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(490,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(491,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(492,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(493,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(494,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(495,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(496,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(497,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(498,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(499,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(500,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(501,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(502,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(505,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(506,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(509,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(510,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(511,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(512,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(515,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(516,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(517,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(520,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(521,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(524,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(525,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(526,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(529,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(530,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(533,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(654,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(658,28): run-time error CSS1039: Token not allowed after unary operator: '-bglight'
(665,28): run-time error CSS1039: Token not allowed after unary operator: '-page-grid'
(665,46): run-time error CSS1039: Token not allowed after unary operator: '-page-bg'
(674,26): run-time error CSS1039: Token not allowed after unary operator: '-page-overlay'
(679,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(681,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(681,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(685,21): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(689,33): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(730,23): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(731,26): run-time error CSS1039: Token not allowed after unary operator: '-space-6'
(735,36): run-time error CSS1039: Token not allowed after unary operator: '-container-max-width'
(741,24): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(752,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(756,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(762,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(762,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(762,89): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(762,113): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(776,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(777,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(778,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-96'
(779,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(787,33): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(794,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(809,27): run-time error CSS1039: Token not allowed after unary operator: '-container-max-width'
(812,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(813,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-page'
(817,25): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-radius'
(818,18): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-border'
(833,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(839,27): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(840,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(850,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(854,27): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(859,31): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(878,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(889,41): run-time error CSS1039: Token not allowed after unary operator: '-container-max-width'
(893,38): run-time error CSS1039: Token not allowed after unary operator: '-container-max-width'
(921,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(940,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(948,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(955,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(962,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(966,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(972,17): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(987,28): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(988,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-input'
(992,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(993,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(993,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(993,100): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(993,124): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(993,159): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(993,183): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(995,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(1007,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1009,32): run-time error CSS1039: Token not allowed after unary operator: '-white'
(1010,41): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(1022,28): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(1034,32): run-time error CSS1039: Token not allowed after unary operator: '-whitegray'
(1035,21): run-time error CSS1039: Token not allowed after unary operator: '-darkgray'
(1037,28): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1045,28): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-500'
(1046,32): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-050'
(1051,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(1077,36): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1077,60): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1082,25): run-time error CSS1039: Token not allowed after unary operator: '-black'
(1091,36): run-time error CSS1039: Token not allowed after unary operator: '-checkbox-border-color'
(1092,36): run-time error CSS1039: Token not allowed after unary operator: '-checkbox-background-color'
(1097,34): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1097,58): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1098,40): run-time error CSS1039: Token not allowed after unary operator: '-color-black-a-02'
(1104,30): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(1105,46): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1112,44): run-time error CSS1039: Token not allowed after unary operator: '-color-black-a-02'
(1117,36): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1118,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1119,40): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1124,37): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1126,36): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(1146,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1147,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1148,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1149,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1150,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1151,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1156,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1156,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1156,91): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1156,115): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1156,156): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1156,180): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1156,217): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1156,241): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1156,271): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1156,295): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1169,36): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1173,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1174,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1175,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1176,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1177,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1178,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1179,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1180,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1181,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1182,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1183,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1184,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(1190,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1194,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1195,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1196,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1197,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1198,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1203,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1209,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-input'
(1210,24): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(1211,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-09'
(1212,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(1219,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1220,41): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(1225,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(1226,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(1227,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-dropdown'
(1231,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-86'
(1231,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-mint-92'
(1237,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(1237,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-mint-96'
(1248,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-42'
(1248,75): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-06'
(1248,109): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(1257,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-04'
(1257,71): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-06'
(1257,105): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(1262,31): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(1263,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1271,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1285,22): run-time error CSS1039: Token not allowed after unary operator: '-overlay-scrim-strong'
(1293,17): run-time error CSS1039: Token not allowed after unary operator: '-black'
(1295,28): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1307,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1307,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1307,100): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1307,124): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1307,154): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1307,178): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1307,212): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1307,236): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1321,33): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1327,28): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color'
(1328,28): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1329,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(1333,32): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(1334,28): run-time error CSS1039: Token not allowed after unary operator: '-submit-button-background-color-hover'
(1339,28): run-time error CSS1039: Token not allowed after unary operator: '-button-background-color'
(1340,28): run-time error CSS1039: Token not allowed after unary operator: '-gray'
(1344,32): run-time error CSS1039: Token not allowed after unary operator: '-button-background-color-hover'
(1345,28): run-time error CSS1039: Token not allowed after unary operator: '-button-background-color-hover'
(1351,28): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-background-color'
(1352,17): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-text-color'
(1353,28): run-time error CSS1039: Token not allowed after unary operator: '-disabled-button-border-color'
(1360,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1367,28): run-time error CSS1039: Token not allowed after unary operator: '-active-button-background-color'
(1368,24): run-time error CSS1039: Token not allowed after unary operator: '-active-button-border-color'
(1384,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(1387,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1387,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1402,37): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(1402,60): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(1410,32): run-time error CSS1039: Token not allowed after unary operator: '-bs-success-border-subtle'
(1414,32): run-time error CSS1039: Token not allowed after unary operator: '-bs-warning-border-subtle'
(1418,32): run-time error CSS1039: Token not allowed after unary operator: '-bs-danger-border-subtle'
(1439,38): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1439,62): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1454,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(1456,28): run-time error CSS1039: Token not allowed after unary operator: '-color-black-a-06'
(1457,17): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(1459,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1459,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1459,95): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1459,119): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1463,32): run-time error CSS1039: Token not allowed after unary operator: '-color-black-a-08'
(1484,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1485,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1485,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1485,84): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1485,108): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1491,21): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(1504,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(1505,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted'
(1507,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1507,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1507,100): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1507,124): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1511,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted-strong'
(1512,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(1518,36): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1533,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(1534,32): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-10'
(1536,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1536,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1536,86): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1536,110): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1552,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(1554,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(1555,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1557,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1557,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1557,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1557,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1557,154): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1557,178): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1557,213): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1557,237): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1561,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-strong'
(1562,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(1574,19): run-time error CSS1039: Token not allowed after unary operator: '-component-icon-button-padding'
(1575,28): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(1577,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(1578,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1579,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(1580,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1580,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1580,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1580,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1580,151): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1580,175): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1580,210): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1580,234): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1580,271): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1580,295): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1584,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(1599,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-strong'
(1600,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(1601,32): run-time error CSS1039: Token not allowed after unary operator: '-component-icon-button-hover-translate-y'
(1609,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-35'
(1610,32): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(1626,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(1634,15): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-gap'
(1635,22): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-min-height'
(1636,19): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-padding'
(1637,25): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-radius'
(1637,62): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(1638,18): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-border'
(1638,65): run-time error CSS1039: Token not allowed after unary operator: '-border-brand-soft'
(1639,22): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-bg'
(1639,55): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-09'
(1640,22): run-time error CSS1039: Token not allowed after unary operator: '-component-content-card-shadow'
(1640,59): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(1648,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-stripe-gradient'
(1661,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1661,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1661,88): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1661,112): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1669,22): run-time error CSS1039: Token not allowed after unary operator: '-topbar-height'
(1671,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(1673,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-topbar-bg'
(1676,32): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-04'
(1691,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1710,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-14'
(1715,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(1738,21): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(1744,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1749,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(1750,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(1751,42): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-42'
(1755,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(1759,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(1760,36): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-12'
(1764,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(1798,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(1810,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(1812,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(1813,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-dropdown'
(1822,28): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1824,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(1829,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(1830,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-06'
(1867,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1867,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1867,88): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1867,112): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1868,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1873,28): run-time error CSS1039: Token not allowed after unary operator: '-header-offset-dynamic'
(1873,57): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(1873,81): run-time error CSS1039: Token not allowed after unary operator: '-page-shell-gap'
(1886,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-border'
(1887,29): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-radius'
(1888,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-78'
(1889,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-header'
(1892,34): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1892,58): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1892,99): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1892,123): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1892,158): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1892,182): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1892,219): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1892,243): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1892,277): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1892,301): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1901,26): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1901,50): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1913,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1913,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1913,90): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1913,114): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1917,17): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-link-color'
(1922,28): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1923,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(1924,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted'
(1930,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1930,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1930,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1930,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1930,152): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1930,176): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1930,208): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1930,232): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1934,21): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-link-hover-color'
(1935,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted-strong'
(1958,28): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-box-border'
(1959,25): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-box-radius'
(1960,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-box-bg'
(1961,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-box-shadow'
(1963,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1963,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1963,92): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1963,116): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1963,157): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(1963,181): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(1974,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(1979,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1980,23): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1981,35): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(1988,21): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(1996,26): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-input-focus-bg'
(2001,33): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(2004,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-submit-bg'
(2005,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(2009,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2009,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2009,97): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2009,121): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2014,21): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(2015,26): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-submit-hover-bg'
(2025,28): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-dropdown-border'
(2026,25): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-dropdown-radius'
(2027,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-dropdown-bg'
(2028,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-dropdown-shadow'
(2040,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(2047,33): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(2048,28): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(2068,31): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(2073,31): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(2084,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(2085,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2085,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2089,26): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-item-hover-bg'
(2096,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-thumb'
(2097,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-thumb-bg'
(2108,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(2120,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2125,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(2156,22): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-results-link-bg'
(2157,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(2164,26): run-time error CSS1039: Token not allowed after unary operator: '-smartsearch-results-link-hover-bg'
(2165,21): run-time error CSS1039: Token not allowed after unary operator: '-accent-strong'
(2172,26): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2172,50): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2196,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2202,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(2221,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(2222,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2223,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-border-translucent'
(2224,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(2233,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(2237,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(2238,21): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(2268,35): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-06'
(2272,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2272,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2272,89): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2272,113): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2272,144): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2272,168): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2272,200): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2272,224): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2272,261): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2272,285): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2302,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2311,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(2319,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2346,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(2355,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2369,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(2371,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(2371,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-filter-92'
(2372,33): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-04'
(2382,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(2390,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(2399,22): run-time error CSS1039: Token not allowed after unary operator: '-overlay-scrim-soft'
(2404,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2404,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2417,31): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(2425,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-66'
(2426,24): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(2427,33): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-08'
(2454,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2461,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-35'
(2462,32): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(2489,32): run-time error CSS1039: Token not allowed after unary operator: '-color-neutral-900'
(2491,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2491,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2509,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2510,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2532,30): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(2542,37): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2542,61): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2542,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2542,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2542,148): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2542,172): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2542,204): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2542,228): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2542,265): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2542,289): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2556,39): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-06'
(2595,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2597,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(2626,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(2678,24): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(2686,34): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2686,58): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2686,92): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2686,116): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2686,151): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(2686,175): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(2716,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(2717,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-94'
(2718,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(2723,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(2724,21): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(2725,33): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(2731,37): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(2737,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-thumb'
(2761,43): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(2763,32): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(2765,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-84'
(2765,75): run-time error CSS1039: Token not allowed after unary operator: '-surface-layer-94'
(2766,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(2779,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(2789,43): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(2791,32): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(2793,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-84'
(2793,75): run-time error CSS1039: Token not allowed after unary operator: '-surface-layer-94'
(2794,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(2810,32): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(2812,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(2812,75): run-time error CSS1039: Token not allowed after unary operator: '-surface-filter-92'
(2813,37): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-a-04'
(2854,32): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(2856,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(2863,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(2873,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(2903,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-96'
(2904,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(2924,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(2925,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-84'
(2925,75): run-time error CSS1039: Token not allowed after unary operator: '-surface-layer-94'
(2933,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(2959,24): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(2993,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3002,45): run-time error CSS1039: Token not allowed after unary operator: '-container-max-width'
(3129,22): run-time error CSS1039: Token not allowed after unary operator: '-overlay-scrim-soft'
(3134,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3134,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3139,20): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(3142,35): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(3147,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3147,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3147,88): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3147,112): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3166,28): run-time error CSS1039: Token not allowed after unary operator: '-surface-border-translucent'
(3167,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(3168,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-84'
(3168,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-layer-94'
(3169,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(3181,50): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-42'
(3181,75): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(3181,104): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-05'
(3196,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3201,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3221,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3222,17): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(3246,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3270,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3271,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(3272,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-52'
(3281,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(3304,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3315,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3326,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3333,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3346,29): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(3347,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(3348,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(3356,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3367,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3373,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3378,17): run-time error CSS1039: Token not allowed after unary operator: '-color-success'
(3385,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3397,33): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3398,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3479,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3482,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-cloud-84'
(3495,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3501,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3501,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3501,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3501,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3505,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(3506,21): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3510,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-14'
(3526,33): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3527,34): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3558,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3560,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3560,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3560,100): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3560,124): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3560,154): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3560,178): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3595,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3596,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3633,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3634,17): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(3659,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-52'
(3660,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3669,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(3670,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3680,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3699,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3734,18): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-border'
(3735,25): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-radius'
(3736,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-86'
(3736,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-layer-96'
(3737,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-shadow'
(3755,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(3771,18): run-time error CSS1039: Token not allowed after unary operator: '-surface-panel-border'
(3772,25): run-time error CSS1039: Token not allowed after unary operator: '-surface-panel-radius-sm'
(3773,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(3774,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-panel-shadow'
(3774,50): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(3777,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3777,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3777,88): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3777,112): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3777,147): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3777,171): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3777,208): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3777,232): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3777,273): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3777,297): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3789,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3789,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3793,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(3797,33): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(3816,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-strong'
(3831,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(3832,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-96'
(3832,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-sage-92'
(3833,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(3840,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(3841,21): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(3845,37): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(3856,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3862,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(3874,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3875,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(3876,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-86'
(3876,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-sage-96'
(3877,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(3899,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(3903,17): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(3908,20): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(3923,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3924,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(3925,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-54'
(3934,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(3935,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3960,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3963,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-cloud-84'
(3986,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(3988,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(3990,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3990,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3991,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3991,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(3992,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(3992,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(4057,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(4063,33): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4065,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4078,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4079,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-cloud-92'
(4085,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(4089,21): run-time error CSS1039: Token not allowed after unary operator: '-highlight'
(4109,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4110,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-input'
(4111,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-cloud-92'
(4114,31): run-time error CSS1030: Expected identifier, found ':'
(4114,39): run-time error CSS1031: Expected selector, found ')'
(4114,39): run-time error CSS1025: Expected comma or open brace, found ')'
(4125,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(4140,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-16'
(4142,46): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(4142,71): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-94'
(4149,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4150,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4151,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(4162,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4176,29): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(4177,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4178,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(4194,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(4210,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4211,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4212,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-56'
(4237,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4238,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4239,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-52'
(4247,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4262,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(4263,46): run-time error CSS1039: Token not allowed after unary operator: '-accent-alpha-08'
(4263,70): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-95'
(4264,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-brand-soft'
(4270,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4407,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(4519,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4520,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(4551,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(4552,51): run-time error CSS1039: Token not allowed after unary operator: '-client-success-rgb'
(4552,85): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-95'
(4553,33): run-time error CSS1039: Token not allowed after unary operator: '-client-success-rgb'
(4564,27): run-time error CSS1039: Token not allowed after unary operator: '-client-success-rgb'
(4570,16): run-time error CSS1047: Expected number or percentage value in rgb function, found 'var('
(4570,20): run-time error CSS1046: Expect comma, found '-'
(4570,21): run-time error CSS1047: Expected number or percentage value in rgb function, found '-client-success-rgb'
(4570,40): run-time error CSS1046: Expect comma, found ')'
(4570,41): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')'
(4576,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4581,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(4590,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4591,27): run-time error CSS1039: Token not allowed after unary operator: '-client-success-rgb'
(4592,33): run-time error CSS1039: Token not allowed after unary operator: '-client-success-rgb'
(4597,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(4605,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4610,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4625,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4626,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4627,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-54'
(4638,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4668,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4673,16): run-time error CSS1047: Expected number or percentage value in rgb function, found 'var('
(4673,20): run-time error CSS1046: Expect comma, found '-'
(4673,21): run-time error CSS1047: Expected number or percentage value in rgb function, found '-client-danger-rgb'
(4673,39): run-time error CSS1046: Expect comma, found ')'
(4673,40): run-time error CSS1062: Expected semicolon or closing curly-brace, found ')'
(4683,29): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(4684,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(4685,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(4692,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(4710,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(4727,17): run-time error CSS1039: Token not allowed after unary operator: '-color-success'
(4746,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(4796,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(4804,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4805,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(4806,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(4807,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(4813,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(4813,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(4814,34): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(4814,58): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(4815,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(4815,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(4827,14): run-time error CSS1030: Expected identifier, found '.'
(4827,43): run-time error CSS1031: Expected selector, found ')'
(4827,43): run-time error CSS1025: Expected comma or open brace, found ')'
(4841,29): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(4848,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(4859,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(4860,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4874,38): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(4879,14): run-time error CSS1030: Expected identifier, found '.'
(4879,43): run-time error CSS1031: Expected selector, found ')'
(4879,43): run-time error CSS1025: Expected comma or open brace, found ')'
(4919,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(4921,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(4922,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(4923,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(4928,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-600'
(4929,24): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-200'
(4933,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-600'
(4934,24): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-300'
(4959,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(4968,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(4970,37): run-time error CSS1039: Token not allowed after unary operator: '-accent-rgb'
(4974,22): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-500'
(4979,22): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(4985,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(4999,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5007,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5007,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5011,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(5026,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5032,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-strong'
(5036,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(5063,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-18'
(5064,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(5065,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-05'
(5066,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(5071,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5071,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5072,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5072,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5073,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5073,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5078,26): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5079,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5080,21): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(5109,26): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(5110,28): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(5123,25): run-time error CSS1039: Token not allowed after unary operator: '-bs-border-radius'
(5123,49): run-time error CSS1039: Token not allowed after unary operator: '-bs-border-radius'
(5124,22): run-time error CSS1039: Token not allowed after unary operator: '-bs-tertiary-bg'
(5141,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5171,38): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5191,37): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5206,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-07'
(5207,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(5208,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-78'
(5208,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-filter-92'
(5209,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(5219,28): run-time error CSS1039: Token not allowed after unary operator: '-products-hero-border'
(5220,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(5221,22): run-time error CSS1039: Token not allowed after unary operator: '-products-hero-bg'
(5222,22): run-time error CSS1039: Token not allowed after unary operator: '-products-hero-shadow'
(5229,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5230,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted-strong'
(5231,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(5239,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5244,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(5255,29): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(5256,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(5257,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(5268,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted'
(5269,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(5279,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5286,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5311,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5323,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-14'
(5324,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(5325,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(5326,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-panel-shadow'
(5345,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(5347,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5361,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(5370,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(5371,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-35'
(5372,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(5390,20): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(5391,35): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(5395,27): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(5404,26): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(5418,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5418,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5423,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg'
(5453,28): run-time error CSS1039: Token not allowed after unary operator: '-border-cool-soft'
(5455,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-border-translucent'
(5477,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5501,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5501,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5506,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg'
(5525,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(5535,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5536,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5549,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5556,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5586,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(5589,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-16'
(5594,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg'
(5595,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-24'
(5599,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(5610,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(5611,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5622,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(5626,35): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(5647,28): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-border'
(5648,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(5649,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-bg'
(5650,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-shadow'
(5664,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5671,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5680,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5701,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(5710,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5715,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5715,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5716,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5716,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5721,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg'
(5722,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5727,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg-hover'
(5728,21): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(5738,33): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(5747,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5755,21): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(5770,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(5774,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(5775,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-10'
(5776,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5776,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5777,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5777,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5782,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg-hover'
(5783,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5803,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-20'
(5804,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(5805,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(5806,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(5807,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(5828,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg-hover'
(5829,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-30'
(5830,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(5845,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(5856,26): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-mobile-bg'
(5857,38): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(5908,43): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5915,40): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(5935,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-thumb'
(5960,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5960,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5960,89): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5960,113): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5960,154): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(5960,178): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(5965,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(6013,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6014,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6015,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6020,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6027,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6038,37): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6057,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6075,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6077,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6092,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6093,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6108,30): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6109,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(6122,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6138,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6139,41): run-time error CSS1039: Token not allowed after unary operator: '-primary-rgb'
(6145,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6158,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(6159,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6160,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(6185,29): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6195,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6208,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6378,28): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-border'
(6379,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6380,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-bg'
(6381,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-shadow'
(6383,20): run-time error CSS1039: Token not allowed after unary operator: '-header-offset'
(6398,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(6407,22): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(6409,37): run-time error CSS1039: Token not allowed after unary operator: '-accent-rgb'
(6413,22): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-500'
(6418,22): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(6425,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6447,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6452,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(6458,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6479,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6485,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-strong'
(6491,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6498,17): run-time error CSS1039: Token not allowed after unary operator: '-color-success-600'
(6503,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6517,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6531,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(6544,30): run-time error CSS1039: Token not allowed after unary operator: '-border-muted'
(6546,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(6547,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(6552,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6552,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6553,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6553,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6554,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6554,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6558,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-35'
(6559,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(6560,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6564,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6565,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(6566,21): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6585,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(6586,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6588,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(6591,38): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(6593,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6593,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6594,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6594,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6595,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6595,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6600,26): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(6600,48): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(6601,42): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(6602,21): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(6636,26): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(6655,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6656,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(6657,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6665,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(6671,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(6679,28): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-border'
(6680,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(6681,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-bg'
(6682,22): run-time error CSS1039: Token not allowed after unary operator: '-products-sidebar-shadow'
(6687,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6691,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6706,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6716,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6723,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(6730,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(6736,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6750,21): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(6755,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(6770,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6773,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6773,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6783,26): run-time error CSS1039: Token not allowed after unary operator: '-interaction-quiet-bg'
(6794,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(6795,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6811,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6815,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(6815,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(6819,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(6823,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(6828,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(6920,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(6921,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(6922,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(6923,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(6929,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-600'
(6930,24): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-200'
(6934,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(6935,24): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-300'
(6990,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7003,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(7010,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7064,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7081,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7086,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7098,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(7099,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7103,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7103,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7121,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7121,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7121,89): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7121,113): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7121,147): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7121,171): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7133,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7134,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7135,46): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(7135,69): run-time error CSS1039: Token not allowed after unary operator: '-surface-pane-95'
(7151,28): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-500'
(7152,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7153,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(7154,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(7158,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(7191,28): run-time error CSS1039: Token not allowed after unary operator: '-border-hero'
(7192,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7193,46): run-time error CSS1039: Token not allowed after unary operator: '-hero-gradient-start-strong'
(7193,81): run-time error CSS1039: Token not allowed after unary operator: '-hero-gradient-end-soft'
(7194,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-page'
(7195,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(7206,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-24'
(7207,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-32'
(7210,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(7224,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7225,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-14'
(7242,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-muted'
(7257,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7258,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-14'
(7259,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(7269,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(7277,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-soft'
(7301,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(7302,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7303,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(7304,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(7316,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7318,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7324,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7324,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7325,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7325,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7329,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(7330,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7335,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(7336,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7341,17): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7351,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(7352,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7352,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7365,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7369,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-600'
(7374,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(7390,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(7391,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7392,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(7393,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(7399,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7400,46): run-time error CSS1039: Token not allowed after unary operator: '-surface-pane-95'
(7400,70): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(7406,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7411,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7420,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7427,46): run-time error CSS1039: Token not allowed after unary operator: '-surface-pane-95'
(7427,70): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(7432,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7442,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-16'
(7443,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7444,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(7445,17): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(7461,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7468,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7481,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7482,28): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-alt-a-05'
(7483,46): run-time error CSS1039: Token not allowed after unary operator: '-surface-pane-95'
(7483,70): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(7488,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7499,32): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-alt-a-08'
(7500,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-input'
(7501,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-96'
(7502,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7506,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7506,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7507,37): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7507,61): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7513,32): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7514,40): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-12'
(7518,26): run-time error CSS1039: Token not allowed after unary operator: '-surface-pane-95-alt'
(7519,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7535,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7552,35): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7553,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7553,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7561,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(7571,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7576,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7592,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7603,22): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(7608,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7622,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white'
(7623,28): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7635,46): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-04'
(7635,71): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-09'
(7640,21): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7651,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-accent-soft'
(7652,17): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(7661,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7662,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-bg'
(7663,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-color'
(7664,28): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-border'
(7675,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(7676,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-subtle'
(7683,22): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-alt-a-08'
(7692,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7692,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7693,43): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(7693,67): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(7694,26): run-time error CSS1039: Token not allowed after unary operator: '-color-warning-700'
(7699,30): run-time error CSS1039: Token not allowed after unary operator: '-color-warning-700'
(7703,30): run-time error CSS1039: Token not allowed after unary operator: '-color-warning-500'
(7707,30): run-time error CSS1039: Token not allowed after unary operator: '-color-success-500'
(7712,30): run-time error CSS1039: Token not allowed after unary operator: '-color-success-700'
(7720,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7724,21): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(7735,39): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(7762,32): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(7763,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7764,26): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(7765,26): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(7775,65): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-92'
(7777,31): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7777,50): run-time error CSS1039: Token not allowed after unary operator: '-radius-card'
(7805,29): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7810,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-16'
(7814,28): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-16'
(7879,29): run-time error CSS1039: Token not allowed after unary operator: '-client-ink-rgb'
(7883,29): run-time error CSS1039: Token not allowed after unary operator: '-client-ink-rgb'
(7888,29): run-time error CSS1039: Token not allowed after unary operator: '-client-ink-rgb'
(7892,27): run-time error CSS1039: Token not allowed after unary operator: '-client-ink-rgb'
(7896,27): run-time error CSS1039: Token not allowed after unary operator: '-client-ink-rgb'
(7906,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(7917,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(7924,17): run-time error CSS1039: Token not allowed after unary operator: '-color-danger-700'
(7930,64): run-time error CSS1039: Token not allowed after unary operator: '-accent-alpha-12'
(7930,88): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(7930,159): run-time error CSS1039: Token not allowed after unary operator: '-primary-alpha-08'
(7930,184): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(7930,215): run-time error CSS1039: Token not allowed after unary operator: '-page-grid'
(7930,233): run-time error CSS1039: Token not allowed after unary operator: '-page-bg'
(7952,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-07'
(7954,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-94'
(7954,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-mint-94'
(7955,34): run-time error CSS1039: Token not allowed after unary operator: '-color-ink-soft-a-12'
(7969,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(7970,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-bg'
(7971,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-color'
(7972,28): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-border'
(7981,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(7988,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8002,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(8019,50): run-time error CSS1039: Token not allowed after unary operator: '-accent-alpha-16'
(8019,74): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(8074,18): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-border'
(8075,25): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-radius'
(8076,59): run-time error CSS1039: Token not allowed after unary operator: '-hero-radial-glow'
(8076,84): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(8076,139): run-time error CSS1039: Token not allowed after unary operator: '-hero-deep-start'
(8076,163): run-time error CSS1039: Token not allowed after unary operator: '-hero-deep-end'
(8077,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-page'
(8078,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8092,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(8093,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-12'
(8111,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-muted'
(8126,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-14'
(8127,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel'
(8128,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-01'
(8149,28): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-12'
(8150,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(8151,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-12'
(8152,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8163,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-soft'
(8177,21): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-muted'
(8190,54): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-95'
(8190,79): run-time error CSS1039: Token not allowed after unary operator: '-hero-highlight-soft'
(8191,44): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(8201,18): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-border'
(8202,25): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-radius'
(8203,46): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-96'
(8203,71): run-time error CSS1039: Token not allowed after unary operator: '-surface-mint-90'
(8204,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-card-shadow'
(8218,25): run-time error CSS1039: Token not allowed after unary operator: '-shape-pill'
(8219,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-bg'
(8220,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-color'
(8221,28): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-border'
(8231,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(8239,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(8253,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8254,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8255,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8256,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8257,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8263,21): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(8271,21): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(8287,54): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(8287,83): run-time error CSS1039: Token not allowed after unary operator: '-color-accent-a-09'
(8291,50): run-time error CSS1039: Token not allowed after unary operator: '-surface-mint-96'
(8291,74): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(8295,50): run-time error CSS1039: Token not allowed after unary operator: '-surface-warm-96'
(8295,74): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(8299,50): run-time error CSS1039: Token not allowed after unary operator: '-surface-cool-96'
(8299,74): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-98'
(8308,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-bg'
(8309,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-color'
(8310,28): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-border'
(8322,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(8325,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8325,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8329,21): run-time error CSS1039: Token not allowed after unary operator: '-accent-strong'
(8335,46): run-time error CSS1039: Token not allowed after unary operator: '-hero-deep-start'
(8335,70): run-time error CSS1039: Token not allowed after unary operator: '-service-band-end'
(8336,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8340,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-soft'
(8344,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-12'
(8345,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8359,21): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-muted'
(8372,30): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-09'
(8373,44): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-08'
(8382,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8383,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8384,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8385,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8386,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8387,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8391,22): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-bg'
(8392,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-color'
(8393,28): run-time error CSS1039: Token not allowed after unary operator: '-accent-badge-border'
(8403,21): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(8421,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8422,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8423,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8424,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8433,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(8439,17): run-time error CSS1039: Token not allowed after unary operator: '-text-soft'
(8522,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8523,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-footer-top'
(8524,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(8528,46): run-time error CSS1039: Token not allowed after unary operator: '-footer-dark-start'
(8528,72): run-time error CSS1039: Token not allowed after unary operator: '-footer-dark-end'
(8529,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8549,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8568,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-soft'
(8574,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8577,30): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8577,54): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8581,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark'
(8596,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-soft'
(8604,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-dark-subtle'
(8608,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-footer-top'
(8628,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(8646,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8651,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8653,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8653,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8658,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(8671,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(8672,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-brand-soft'
(8673,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-accent-soft'
(8674,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent-brand'
(8679,33): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8679,57): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8679,91): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8679,115): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8679,152): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8679,176): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8689,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-accent-muted'
(8690,24): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-brand'
(8696,32): run-time error CSS1039: Token not allowed after unary operator: '-focus-outline-color'
(8702,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(8710,32): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(8711,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-footer-bottom'
(8726,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8733,17): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(8736,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8736,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8736,84): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8736,108): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8740,17): run-time error CSS1039: Token not allowed after unary operator: '-accent-muted'
(8752,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8755,28): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8755,52): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8759,17): run-time error CSS1039: Token not allowed after unary operator: '-text-accent'
(8776,28): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-brand-soft'
(8777,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(8780,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8829,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8830,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8831,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8832,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8833,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8834,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8835,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8836,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8837,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8838,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8839,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8840,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8841,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8842,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8843,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8854,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(8861,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(8862,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-soft'
(8868,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(8872,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-pill'
(8877,24): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(8882,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8883,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8887,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8888,41): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(8892,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8893,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8894,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8898,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8899,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8900,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8901,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8902,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8903,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8904,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8905,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(8932,24): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(8933,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-input'
(8934,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-09'
(8936,35): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8936,59): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8936,94): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8936,118): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8936,159): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8936,183): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8948,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8960,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8961,41): run-time error CSS1039: Token not allowed after unary operator: '-highlight-rgb'
(8968,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(8979,32): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8979,56): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8979,97): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8979,121): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8979,158): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8979,182): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8979,212): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(8979,236): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(8989,22): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8990,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(8991,17): run-time error CSS1039: Token not allowed after unary operator: '-text-on-primary'
(8996,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(8997,24): run-time error CSS1039: Token not allowed after unary operator: '-primary-strong'
(9001,22): run-time error CSS1039: Token not allowed after unary operator: '-color-white-a-88'
(9002,24): run-time error CSS1039: Token not allowed after unary operator: '-border-accent-soft'
(9003,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(9014,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(9015,25): run-time error CSS1039: Token not allowed after unary operator: '-radius-panel-sm'
(9016,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow-medium'
(9017,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-base'
(9027,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(9033,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(9040,24): run-time error CSS1039: Token not allowed after unary operator: '-border-soft'
(9050,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted'
(9056,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(9057,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(9064,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(9070,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(9071,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(9076,24): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(9077,28): run-time error CSS1039: Token not allowed after unary operator: '-primary'
(9082,22): run-time error CSS1039: Token not allowed after unary operator: '-color-transparent'
(9083,17): run-time error CSS1039: Token not allowed after unary operator: '-text-muted'
(9101,17): run-time error CSS1039: Token not allowed after unary operator: '-text-default'
(9103,39): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(9103,63): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(9103,93): run-time error CSS1039: Token not allowed after unary operator: '-transition-speed'
(9103,117): run-time error CSS1039: Token not allowed after unary operator: '-transition-ease'
(9108,22): run-time error CSS1039: Token not allowed after unary operator: '-surface-muted'
(9109,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
(9118,22): run-time error CSS1039: Token not allowed after unary operator: '-primary-soft'
(9119,17): run-time error CSS1039: Token not allowed after unary operator: '-text-strong'
 */
:root {
    /*
        Klantcontract (RGB-only)
        Alles hieronder wordt hieruit afgeleid.

        Required (invullen per klant):
        - --client-primary-rgb       brand primary (bijv. groen)
        - --client-accent-rgb        brand accent  (bijv. oranje/koper)

        Optional (kan je overslaan; fallback staat al hieronder):
        - --client-page-bg-start
        - --client-page-bg-end
        - --client-surface-rgb
        - --client-ink-rgb
        - --client-hero-start-rgb    (default afgeleid van primary)
        - --client-hero-end-rgb      (default afgeleid van primary)
        - --client-footer-start-rgb  (default afgeleid van primary)
        - --client-footer-end-rgb    (default afgeleid van primary)
        - --client-success-rgb
        - --client-warning-rgb
        - --client-danger-rgb

        Dark mode gebruikt hetzelfde contract en wordt automatisch afgeleid.
        Alleen indien nodig kan je dark tokens apart overriden in :root[data-theme="dark"].

        Breakpoint contract (max-width):
        - xl-down: 1199.98px
        - lg-down: 991.98px
        - md-down: 767.98px
        - sm-down: 575.98px
    */

    /* Brand base */
    --db-primary-rgb:      41, 70, 59;
    --db-accent-rgb:       194, 122, 69;

    --client-primary-rgb:  var(--db-primary-rgb);
    --client-accent-rgb:   var(--db-accent-rgb);

    --db-primary:          rgb(var(--db-primary-rgb));
    --db-accent:           rgb(var(--db-accent-rgb));

    /*  Page canvas */
    --client-page-bg-start:  #f8faf9;
    --client-page-bg-end:    #f0f4f2;
    --client-surface-rgb:    255, 255, 255;
    --client-ink-rgb:        17, 28, 24;

    /*  Hero / footer gradients (default = primary)  */
    --client-hero-start-rgb:   var(--client-primary-rgb);
    --client-hero-end-rgb:     var(--client-primary-rgb);
    --client-footer-start-rgb: var(--client-primary-rgb);
    --client-footer-end-rgb:   var(--client-primary-rgb);

    /*  Semantic status  */
    --client-success-rgb: 47, 122, 83;
    --client-warning-rgb: 210, 157, 60;
    --client-danger-rgb:  220, 53, 69;

    /* 
       THEME PRIMITIVES � single source of truth for every component
        */

    /* Primary */
    --primary-rgb:    var(--client-primary-rgb);
    --primary:        rgb(var(--primary-rgb));

    /* Accent � kept as fallback; enhanced via @supports color-mix below */
    --accent-rgb:     var(--client-accent-rgb);
    --accent:         rgb(var(--accent-rgb));

    /* Derived brand tones � fallbacks (no color-mix) */
    --primary-strong: #1d342c;     /* darkened primary        */
    --primary-soft:   #e9f0ec;     /* very light tint         */
    --highlight:      #35584a;     /* mid-bright primary      */
    --highlight-rgb:  var(--primary-rgb);

    /* Accent tones � fallbacks */
    --accent-strong:  #a05a28;     /* darkened accent         */
    --accent-soft:    #f8ede3;     /* very light accent tint  */
    --accent-muted:   #d49060;     /* softened accent         */

    /*  Neutral base  */
    --gray:       #dce3df;
    --darkgray:   #8d9a94;
    --whitegray:  #f2f5f3;
    --white:      rgb(var(--client-surface-rgb));
    --white-rgb:  var(--client-surface-rgb);
    --bglight:    var(--client-page-bg-start);
    --black:      rgb(var(--client-ink-rgb));
    --black-rgb:  0, 0, 0;

    /*  Primary alpha helpers  */
    --primary-alpha-04: rgba(var(--primary-rgb), 0.04);
    --primary-alpha-05: rgba(var(--primary-rgb), 0.05);
    --primary-alpha-06: rgba(var(--primary-rgb), 0.06);
    --primary-alpha-08: rgba(var(--primary-rgb), 0.08);
    --primary-alpha-10: rgba(var(--primary-rgb), 0.1);
    --primary-alpha-12: rgba(var(--primary-rgb), 0.12);
    --primary-alpha-14: rgba(var(--primary-rgb), 0.14);
    --primary-alpha-16: rgba(var(--primary-rgb), 0.16);
    --primary-alpha-18: rgba(var(--primary-rgb), 0.18);
    --primary-alpha-20: rgba(var(--primary-rgb), 0.2);
    --primary-alpha-22: rgba(var(--primary-rgb), 0.22);
    --primary-alpha-24: rgba(var(--primary-rgb), 0.24);
    --primary-alpha-35: rgba(var(--primary-rgb), 0.35);
    --primary-alpha-90: rgba(var(--primary-rgb), 0.9);

    /*  Highlight alpha helpers  */
    --highlight-alpha-04: rgba(var(--highlight-rgb), 0.04);
    --highlight-alpha-06: rgba(var(--highlight-rgb), 0.06);
    --highlight-alpha-08: rgba(var(--highlight-rgb), 0.08);
    --highlight-alpha-09: rgba(var(--highlight-rgb), 0.09);
    --highlight-alpha-12: rgba(var(--highlight-rgb), 0.12);
    --highlight-alpha-18: rgba(var(--highlight-rgb), 0.18);
    --highlight-alpha-22: rgba(var(--highlight-rgb), 0.22);
    --highlight-alpha-90: rgba(var(--highlight-rgb), 0.9);

    /*  Accent alpha helpers  */
    --accent-alpha-08:  rgba(var(--accent-rgb), 0.08);
    --accent-alpha-10:  rgba(var(--accent-rgb), 0.1);
    --accent-alpha-12:  rgba(var(--accent-rgb), 0.12);
    --accent-alpha-16:  rgba(var(--accent-rgb), 0.16);
    --accent-alpha-20:  rgba(var(--accent-rgb), 0.2);
    --accent-alpha-24:  rgba(var(--accent-rgb), 0.24);

    /*  Global page tokens  */
    --page-bg:      linear-gradient(180deg, var(--client-page-bg-start) 0%, var(--client-page-bg-end) 100%);
    --page-grid:    radial-gradient(circle at top, var(--primary-alpha-04), transparent 38%);
    --page-overlay: linear-gradient(180deg, var(--color-white-a-55), var(--color-white-a-00));

    /*  Surface tokens  */
    --surface-base:        rgba(255, 255, 255, 0.98);
    --surface-subtle:      #fafbfa;
    --surface-muted:       var(--primary-alpha-04);
    --surface-muted-strong: var(--primary-alpha-08);
    --surface-strong:      #f2f5f3;

    /*  Text tokens  */
    --ink-rgb:        var(--client-ink-rgb);
    --ink-alt-rgb:    24, 33, 30;
    --ink-soft-rgb:   18, 30, 27;

    --text-strong:    rgb(var(--ink-rgb));
    --text-default:   #2d3b36;
    --text-muted:     #5f6e68;
    --text-soft:      #7a8580;
    --text-accent:    var(--primary);

    /* Accent-coloured text � use where you want the accent brand colour visible */
    --text-accent-brand: var(--accent);

    --text-on-primary:     #ffffff;
    --text-on-dark:        #f9fcfa;
    --text-on-dark-muted:  #e8f2ec;
    --text-on-dark-soft:   #d6e4dc;
    --text-on-dark-subtle: #c4d4cc;

    /*  Border tokens  */
    --border-soft:       rgba(24, 33, 30, 0.06);
    --border-muted:      rgba(24, 33, 30, 0.1);
    --border-accent-soft: var(--primary-alpha-10);

    /* Accent-coloured borders */
    --border-accent-brand:     rgba(var(--accent-rgb), 0.22);
    --border-accent-brand-soft: rgba(var(--accent-rgb), 0.12);

    --border-hero:       var(--primary-alpha-10);

    /*  Shadow tokens  */
    --shadow-soft:     0 2px 8px rgba(var(--ink-soft-rgb), 0.04), 0 4px 16px rgba(var(--ink-soft-rgb), 0.03);
    --shadow-medium:   0 4px 12px rgba(var(--ink-soft-rgb), 0.05), 0 8px 24px rgba(var(--ink-soft-rgb), 0.04);
    --shadow-dropdown: 0 8px 24px rgba(var(--ink-soft-rgb), 0.08), 0 16px 40px rgba(var(--ink-soft-rgb), 0.06);
    --shadow-hero:     0 8px 32px rgba(var(--ink-alt-rgb), 0.06);
    --shadow-page:     0 4px 20px rgba(var(--ink-rgb), 0.04);
    --shadow-header:   0 2px 12px rgba(var(--ink-rgb), 0.04);

    /*  Radius tokens  */
    --radius-card:     16px;
    --radius-panel:    14px;
    --radius-panel-sm: 12px;
    --radius-thumb:    10px;
    --radius-input:    10px;
    --radius-pill:     999px;

    /*  Shape / component contracts  */
    --shape-pill:              999px;
    --surface-card-border:     1px solid var(--border-soft);
    --surface-card-radius:     var(--radius-card);
    --surface-card-shadow:     var(--shadow-soft);
    --surface-panel-border:    1px solid var(--border-soft);
    --surface-panel-radius:    var(--radius-panel);
    --surface-panel-radius-sm: var(--radius-panel-sm);
    --surface-panel-bg:        var(--surface-base);
    --surface-panel-shadow:    var(--shadow-soft);

    /*  Spacing tokens  */
    --space-1: 0.25rem;
    --space-2: 0.5rem;
    --space-3: 0.75rem;
    --space-4: 1rem;
    --space-5: 1.25rem;
    --space-6: 1.5rem;
    --space-7: 2rem;
    --space-8: 3rem;

    /*  Layout tokens  */
    --container-max-width: 1280px;
    --header-height:       72px;
    --topbar-height:       38px;
    --header-offset:       calc(var(--topbar-height) + var(--header-height));

    /*  Button tokens  */
    --submit-button-background-color:       var(--primary);
    --submit-button-background-color-hover: var(--primary-strong);
    --button-background-color:              var(--surface-base);
    --button-background-color-hover:        var(--surface-strong);
    --active-button-background-color:       var(--primary-soft);
    --active-button-border-color:           var(--primary);

    /* Accent button (use for secondary CTA where accent colour should show) */
    --accent-button-background-color:       var(--accent);
    --accent-button-background-color-hover: var(--accent-strong);
    --accent-button-text-color:             #ffffff;

    /* Disabled */
    --disabled-button-background-color: var(--whitegray);
    --disabled-button-text-color:       #74817b;
    --disabled-button-border-color:     #c4cdc8;

    /*  Focus tokens  */
    --focus-outline-color: var(--primary-alpha-35);
    --focus-ring-soft:     rgba(var(--highlight-rgb), 0.1);
    --focus-ring-medium:   rgba(var(--highlight-rgb), 0.12);

    /*  Checkbox tokens  */
    --checkbox-background-color: #fafbfa;
    --checkbox-border-color:     var(--gray);

    /*  Typography scale  */
    --font-size-xs:   0.75rem;
    --font-size-sm:   0.8125rem;
    --font-size-base: 0.9375rem;
    --font-size-md:   1rem;
    --font-size-lg:   1.125rem;

    /*  Transitions  */
    --transition-speed: 140ms;
    --transition-ease:  cubic-bezier(0.2, 0, 0.2, 1);

    /*  Smart search tokens  */
    --smartsearch-link-color:          var(--text-default);
    --smartsearch-link-hover-color:    var(--text-accent);
    --smartsearch-box-bg:              var(--surface-base);
    --smartsearch-box-border:          var(--border-accent-soft);
    --smartsearch-box-radius:          var(--radius-panel);
    --smartsearch-box-shadow:          var(--shadow-soft);
    --smartsearch-input-focus-bg:      var(--highlight-alpha-04);
    --smartsearch-submit-bg:           var(--submit-button-background-color);
    --smartsearch-submit-hover-bg:     var(--submit-button-background-color-hover);
    --smartsearch-dropdown-bg:         var(--surface-base);
    --smartsearch-dropdown-border:     var(--border-accent-soft);
    --smartsearch-dropdown-radius:     var(--radius-panel-sm);
    --smartsearch-dropdown-shadow:     var(--shadow-dropdown);
    --smartsearch-item-hover-bg:       var(--surface-muted);
    --smartsearch-results-link-bg:     var(--surface-muted);
    --smartsearch-results-link-hover-bg: var(--surface-muted-strong);
    --smartsearch-thumb-bg:            var(--surface-subtle);

    /*  Products page tokens  */
    --products-hero-bg:            linear-gradient(135deg, rgba(var(--client-surface-rgb), 0.98), rgba(var(--client-surface-rgb), 1));
    --products-hero-border:        var(--border-hero);
    --products-hero-shadow:        var(--shadow-hero);
    --products-sidebar-bg:         var(--surface-base);
    --products-sidebar-mobile-bg:  #f8faf9;
    --products-sidebar-border:     var(--border-hero);
    --products-sidebar-shadow:     var(--shadow-medium);

    /*  Component colour tokens  */
    --surface-topbar-bg:   rgba(250, 252, 251, 0.94);
    --surface-mint-88:     rgba(248, 252, 250, 0.88);
    --surface-mint-90:     rgba(248, 252, 250, 0.9);
    --surface-mint-92:     rgba(248, 252, 250, 0.92);
    --surface-mint-94:     rgba(248, 252, 250, 0.94);
    --surface-mint-96:     rgba(248, 252, 250, 0.96);
    --surface-layer-94:    rgba(248, 251, 249, 0.94);
    --surface-layer-96:    rgba(248, 251, 249, 0.96);
    --surface-sage-92:     rgba(240, 245, 242, 0.92);
    --surface-sage-96:     rgba(248, 251, 249, 0.96);
    --surface-cloud-92:    rgba(250, 251, 250, 0.92);
    --surface-cloud-84:    rgba(250, 251, 250, 0.84);
    --surface-filter-92:   rgba(248, 252, 250, 0.92);
    --surface-pane-95:     rgba(250, 252, 251, 0.95);
    --surface-pane-95-alt: rgba(245, 248, 246, 0.95);
    --surface-warm-96:     rgba(255, 250, 245, 0.96);
    --surface-cool-96:     rgba(245, 250, 255, 0.96);
    --surface-footer-top:  rgba(250, 252, 251, 0.96);
    --surface-footer-bottom: rgba(245, 248, 246, 0.98);

    /* Accent-tinted surface � gebruik voor highlight-secties, badges, CTAs */
    --surface-accent-soft: rgba(var(--accent-rgb), 0.06);
    --surface-accent-muted: rgba(var(--accent-rgb), 0.1);

    --surface-border-translucent: rgba(255, 255, 255, 0.72);

    /*  Overlay / scrim tokens  */
    --overlay-scrim-strong: rgba(16, 23, 21, 0.18);
    --overlay-scrim-soft:   rgba(17, 24, 21, 0.1);

    /*  Interaction tokens  */
    --interaction-quiet-bg:       var(--primary-alpha-06);
    --interaction-quiet-bg-hover: var(--primary-alpha-10);

    /* Accent interaction � use on accent-coloured elements */
    --interaction-accent-bg:       var(--accent-alpha-08);
    --interaction-accent-bg-hover: var(--accent-alpha-16);

    /*  Brand-derived border/shadow helpers  */
    --border-cool-soft:  rgba(var(--ink-alt-rgb), 0.06);
    --border-brand-soft: rgba(var(--primary-rgb), 0.08);

    --shadow-green-soft: rgba(var(--ink-alt-rgb), 0.04);

    /*  Hero tokens  */
    --hero-radial-glow:      rgba(var(--primary-rgb), 0.22);
    --hero-highlight-soft:   rgba(var(--primary-rgb), 0.88);
    --hero-deep-start:       rgba(var(--client-hero-start-rgb), 0.96);
    --hero-deep-end:         rgba(var(--client-hero-end-rgb), 0.82);
    --hero-gradient-start-strong: rgba(var(--client-hero-start-rgb), 0.94);
    --hero-gradient-end-soft: rgba(var(--client-hero-end-rgb), 0.82);
    --service-band-end:      rgba(var(--client-hero-end-rgb), 0.9);

    /*  Accent hero / badge tokens  */
    /* Use these to sprinkle the accent colour into sections / badges  */
    --accent-badge-bg:    rgba(var(--accent-rgb), 0.1);
    --accent-badge-color: var(--accent-strong);
    --accent-badge-border: rgba(var(--accent-rgb), 0.2);

    /* Accent stripe (top-border decorators on cards, section dividers) */
    --accent-stripe-color: var(--accent);
    --accent-stripe-gradient: linear-gradient(90deg, var(--accent), rgba(var(--accent-rgb), 0.5));

    /*  Footer tokens  */
    --footer-dark-start: rgba(var(--client-footer-start-rgb), 0.98);
    --footer-dark-end:   rgba(var(--client-footer-end-rgb), 0.96);

    /*  Semantic colour layer  */
    --color-transparent: transparent;

    /* White alphas */
    --color-white-a-55: rgba(var(--white-rgb), 0.55);
    --color-white-a-00: rgba(var(--white-rgb), 0);
    --color-white-a-01: rgba(var(--white-rgb), 0.1);
    --color-white-a-02: rgba(var(--white-rgb), 0.2);
    --color-white-a-04: rgba(var(--white-rgb), 0.4);
    --color-white-a-06: rgba(var(--white-rgb), 0.06);
    --color-white-a-07: rgba(var(--white-rgb), 0.7);
    --color-white-a-08: rgba(var(--white-rgb), 0.8);
    --color-white-a-09: rgba(var(--white-rgb), 0.9);
    --color-white-a-12: rgba(var(--white-rgb), 0.12);
    --color-white-a-14: rgba(var(--white-rgb), 0.14);
    --color-white-a-18: rgba(var(--white-rgb), 0.18);
    --color-white-a-28: rgba(var(--white-rgb), 0.28);
    --color-white-a-42: rgba(var(--white-rgb), 0.42);
    --color-white-a-50: rgba(var(--white-rgb), 0.5);
    --color-white-a-52: rgba(var(--white-rgb), 0.52);
    --color-white-a-54: rgba(var(--white-rgb), 0.54);
    --color-white-a-56: rgba(var(--white-rgb), 0.56);
    --color-white-a-62: rgba(var(--white-rgb), 0.62);
    --color-white-a-66: rgba(var(--white-rgb), 0.66);
    --color-white-a-74: rgba(var(--white-rgb), 0.74);
    --color-white-a-76: rgba(var(--white-rgb), 0.76);
    --color-white-a-78: rgba(var(--white-rgb), 0.78);
    --color-white-a-84: rgba(var(--white-rgb), 0.84);
    --color-white-a-86: rgba(var(--white-rgb), 0.86);
    --color-white-a-88: rgba(var(--white-rgb), 0.88);
    --color-white-a-92: rgba(var(--white-rgb), 0.92);
    --color-white-a-94: rgba(var(--white-rgb), 0.94);
    --color-white-a-95: rgba(var(--white-rgb), 0.95);
    --color-white-a-96: rgba(var(--white-rgb), 0.96);
    --color-white-a-98: rgba(var(--white-rgb), 0.98);
    --color-white:      var(--white);

    /* Ink alphas */
    --color-ink-a-04:      rgba(var(--ink-rgb), 0.04);
    --color-ink-a-05:      rgba(var(--ink-rgb), 0.05);
    --color-ink-a-06:      rgba(var(--ink-rgb), 0.06);
    --color-ink-a-08:      rgba(var(--ink-rgb), 0.08);
    --color-ink-a-10:      rgba(var(--ink-rgb), 0.1);
    --color-ink-a-12:      rgba(var(--ink-rgb), 0.12);
    --color-ink-a-16:      rgba(var(--ink-rgb), 0.16);
    --color-ink-alt-a-05:  rgba(var(--ink-alt-rgb), 0.05);
    --color-ink-alt-a-08:  rgba(var(--ink-alt-rgb), 0.08);
    --color-ink-soft-a-12: rgba(var(--ink-soft-rgb), 0.12);

    /* Neutrals */
    --color-neutral-900: #2d3b36;
    --color-black-a-02:  rgba(var(--black-rgb), 0.2);
    --color-black-a-06:  rgba(var(--black-rgb), 0.6);
    --color-black-a-08:  rgba(var(--black-rgb), 0.8);
    --color-black-a-15:  rgba(var(--black-rgb), 0.15);
    --color-black-a-22:  rgba(var(--black-rgb), 0.22);

    /* Accent semantic */
    --color-accent-a-09: rgba(var(--accent-rgb), 0.9);
    --color-accent-a-16: rgba(var(--accent-rgb), 0.16);

    /* Status */
    --color-danger-500:  rgb(var(--client-danger-rgb));
    --color-danger-050:  #fef5f5;
    --color-warning-500: rgb(var(--client-warning-rgb));
    --color-warning-700: rgb(var(--client-warning-rgb));
    --color-success-500: rgb(var(--client-success-rgb));
    --color-success-700: rgb(var(--client-success-rgb));
    --color-success-010: #f9fcfa;
}

/* 
   DARK MODE � only tokens that need to change are listed here
    */
:root[data-theme="dark"] {
    /* Canvas */
    --client-page-bg-start: #0f1614;
    --client-page-bg-end:   #0b1110;
    --client-surface-rgb:   24, 33, 31;
    --client-ink-rgb:       232, 240, 236;

    /* Neutrals */
    --gray:      #33413c;
    --darkgray:  #8ca098;
    --whitegray: #2a3633;

    /* Surface */
    --surface-base:          rgba(var(--client-surface-rgb), 0.98);
    --surface-subtle:        rgba(var(--client-surface-rgb), 0.9);
    --surface-muted:         rgba(var(--client-surface-rgb), 0.84);
    --surface-muted-strong:  rgba(var(--highlight-rgb), 0.18);
    --surface-strong:        rgba(var(--client-surface-rgb), 1);
    --surface-border-translucent: rgba(var(--client-ink-rgb), 0.32);

    /* Accent soft surfaces */
    --surface-accent-soft:  rgba(var(--accent-rgb), 0.1);
    --surface-accent-muted: rgba(var(--accent-rgb), 0.16);

    /* Text */
    --text-default:      rgb(var(--client-ink-rgb));
    --text-muted:        rgba(var(--client-ink-rgb), 0.75);
    --text-soft:         rgba(var(--client-ink-rgb), 0.6);
    --text-accent:       #a2d0bc;
    --text-accent-brand: var(--accent-muted);

    /* Border */
    --border-soft:             rgba(var(--client-ink-rgb), 0.28);
    --border-muted:            rgba(var(--client-ink-rgb), 0.36);
    --border-accent-soft:      rgba(var(--client-ink-rgb), 0.32);
    --border-accent-brand:     rgba(var(--accent-rgb), 0.32);
    --border-accent-brand-soft: rgba(var(--accent-rgb), 0.18);
    --border-hero:             rgba(var(--client-ink-rgb), 0.3);

    /* Shadow */
    --shadow-soft:     0 2px 8px rgba(0, 0, 0, 0.24), 0 4px 16px rgba(0, 0, 0, 0.18);
    --shadow-medium:   0 4px 12px rgba(0, 0, 0, 0.28), 0 8px 24px rgba(0, 0, 0, 0.22);
    --shadow-dropdown: 0 8px 24px rgba(0, 0, 0, 0.36), 0 16px 40px rgba(0, 0, 0, 0.28);
    --shadow-hero:     0 8px 32px rgba(0, 0, 0, 0.3);
    --shadow-page:     0 4px 20px rgba(0, 0, 0, 0.28);
    --shadow-header:   0 2px 12px rgba(0, 0, 0, 0.32);

    /* Checkbox / disabled */
    --checkbox-background-color:        rgba(var(--client-surface-rgb), 0.94);
    --disabled-button-background-color: rgba(var(--client-surface-rgb), 0.94);
    --disabled-button-text-color:       rgba(var(--client-ink-rgb), 0.58);
    --disabled-button-border-color:     rgba(var(--client-ink-rgb), 0.22);

    /* Focus */
    --focus-outline-color: rgba(var(--highlight-rgb), 0.45);

    /* Smart search */
    --smartsearch-thumb-bg: rgba(var(--client-surface-rgb), 0.92);

    /* Products */
    --products-sidebar-mobile-bg: rgba(var(--client-surface-rgb), 0.96);

    /* Component surfaces */
    --surface-topbar-bg:   rgba(var(--client-surface-rgb), 0.92);
    --surface-mint-88:     rgba(var(--client-surface-rgb), 0.88);
    --surface-mint-90:     rgba(var(--client-surface-rgb), 0.9);
    --surface-mint-92:     rgba(var(--client-surface-rgb), 0.92);
    --surface-mint-94:     rgba(var(--client-surface-rgb), 0.94);
    --surface-mint-96:     rgba(var(--client-surface-rgb), 0.96);
    --surface-layer-94:    rgba(var(--client-surface-rgb), 0.94);
    --surface-layer-96:    rgba(var(--client-surface-rgb), 0.96);
    --surface-sage-92:     rgba(var(--client-surface-rgb), 0.92);
    --surface-sage-96:     rgba(var(--client-surface-rgb), 0.96);
    --surface-cloud-92:    rgba(var(--client-surface-rgb), 0.92);
    --surface-cloud-84:    rgba(var(--client-surface-rgb), 0.84);
    --surface-filter-92:   rgba(var(--client-surface-rgb), 0.92);
    --surface-pane-95:     rgba(var(--client-surface-rgb), 0.95);
    --surface-pane-95-alt: rgba(var(--client-surface-rgb), 0.93);
    --surface-warm-96:     rgba(var(--client-surface-rgb), 0.96);
    --surface-cool-96:     rgba(var(--client-surface-rgb), 0.96);
    --surface-footer-top:  rgba(var(--client-surface-rgb), 0.95);
    --surface-footer-bottom: rgba(var(--client-surface-rgb), 0.92);

    /* Overlay */
    --overlay-scrim-strong: rgba(3, 5, 4, 0.6);
    --overlay-scrim-soft:   rgba(3, 5, 4, 0.45);

    /* Interaction */
    --interaction-quiet-bg:       rgba(var(--highlight-rgb), 0.18);
    --interaction-quiet-bg-hover: rgba(var(--highlight-rgb), 0.26);
    --interaction-accent-bg:      rgba(var(--accent-rgb), 0.14);
    --interaction-accent-bg-hover: rgba(var(--accent-rgb), 0.22);

    /* Brand-derived border/shadow */
    --border-cool-soft:  rgba(var(--client-ink-rgb), 0.14);
    --border-brand-soft: rgba(var(--highlight-rgb), 0.24);
    --shadow-green-soft: rgba(0, 0, 0, 0.28);

    /* Hero */
    --hero-radial-glow:    rgba(var(--highlight-rgb), 0.2);
    --hero-highlight-soft: rgba(var(--highlight-rgb), 0.72);

    /* Accent badge */
    --accent-badge-bg:     rgba(var(--accent-rgb), 0.16);
    --accent-badge-color:  var(--accent-muted);
    --accent-badge-border: rgba(var(--accent-rgb), 0.28);

    /* Misc */
    --color-neutral-900: rgb(var(--client-ink-rgb));
    --color-success-010: #e8f5ec;

    /* Page overlay */
    --page-overlay: linear-gradient(180deg, rgba(8, 12, 11, 0.2), rgba(8, 12, 11, 0));
}

/* 
   COLOR-MIX ENHANCEMENTS (progressive � only where supported)
    */
@supports (color: color-mix(in srgb, black, white)) {
    :root {
        /* Primary tones � fully derived from --primary */
        --primary-strong: color-mix(in srgb, var(--primary) 78%, black);
        --primary-soft:   color-mix(in srgb, var(--primary) 8%, white);
        --highlight:      color-mix(in srgb, var(--primary) 88%, white);

        /* Accent tones � fully derived from --accent */
        --accent:         color-mix(in srgb, var(--primary) 60%, #de8d46);
        --accent-strong:  color-mix(in srgb, var(--accent) 78%, black);
        --accent-soft:    color-mix(in srgb, var(--accent) 10%, white);
        --accent-muted:   color-mix(in srgb, var(--accent) 72%, white);

        /* Accent badge � derived */
        --accent-badge-color: color-mix(in srgb, var(--accent) 80%, black);

        /* Neutral from primary */
        --color-neutral-900: color-mix(in srgb, var(--primary) 40%, #1a1a1a);

        /* Products hero */
        --products-hero-bg: linear-gradient(
            135deg,
            color-mix(in srgb, var(--client-page-bg-end) 70%, rgb(var(--client-surface-rgb))),
            rgba(var(--client-surface-rgb), 0.98)
        );

        /* Hero gradients */
        --hero-deep-start:            color-mix(in srgb, rgb(var(--client-hero-start-rgb)) 80%, black);
        --hero-deep-end:              color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 68%, white);
        --hero-gradient-start-strong: color-mix(in srgb, rgb(var(--client-hero-start-rgb)) 86%, black);
        --hero-gradient-end-soft:     color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 76%, white);
        --service-band-end:           color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 74%, white);

        /* Footer gradients */
        --footer-dark-start: color-mix(in srgb, rgb(var(--client-footer-start-rgb)) 88%, black);
        --footer-dark-end:   color-mix(in srgb, rgb(var(--client-footer-end-rgb)) 82%, black);

        /* Status */
        --color-success-700: color-mix(in srgb, var(--color-success-500) 80%, black);
        --color-warning-700: color-mix(in srgb, var(--color-warning-500) 74%, black);
        --color-danger-050:  color-mix(in srgb, var(--color-danger-500) 6%, white);

        /* Accent stripe � enhanced */
        --accent-stripe-gradient: linear-gradient(
            90deg,
            var(--accent),
            color-mix(in srgb, var(--accent) 55%, white)
        );
    }

    :root[data-theme="dark"] {
        /* Canvas */
        --client-page-bg-start: color-mix(in srgb, var(--primary) 48%, black);
        --client-page-bg-end:   color-mix(in srgb, var(--primary) 66%, black);

        /* Primary tones */
        --primary-soft:  color-mix(in srgb, var(--primary) 22%, black);
        --highlight:     color-mix(in srgb, var(--primary) 60%, white);
        --text-accent:   color-mix(in srgb, var(--primary) 64%, white);

        /* Accent tones */
        --accent-strong: color-mix(in srgb, var(--accent) 68%, black);
        --accent-soft:   color-mix(in srgb, var(--accent) 18%, black);
        --accent-muted:  color-mix(in srgb, var(--accent) 60%, white);
        --text-accent-brand: color-mix(in srgb, var(--accent) 72%, white);
        --accent-badge-color: color-mix(in srgb, var(--accent) 68%, white);

        /* Surface */
        --surface-subtle: color-mix(in srgb, var(--primary) 16%, black);
        --surface-strong: color-mix(in srgb, var(--primary) 24%, black);

        /* Hero */
        --hero-deep-start:            color-mix(in srgb, rgb(var(--client-hero-start-rgb)) 36%, black);
        --hero-deep-end:              color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 44%, black);
        --hero-gradient-start-strong: color-mix(in srgb, rgb(var(--client-hero-start-rgb)) 40%, black);
        --hero-gradient-end-soft:     color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 50%, black);
        --service-band-end:           color-mix(in srgb, rgb(var(--client-hero-end-rgb)) 52%, black);

        /* Footer */
        --footer-dark-start: color-mix(in srgb, rgb(var(--client-footer-start-rgb)) 36%, black);
        --footer-dark-end:   color-mix(in srgb, rgb(var(--client-footer-end-rgb)) 44%, black);
    }
}



/* Base: reset, document defaults and shell layout (no domain components) */
*,
*::before,
*::after {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    width: 100%;
    min-height: 100%;
    scroll-behavior: smooth;
    -webkit-text-size-adjust: 100%;
    overflow-y: scroll;
}

body {
    width: 100%;
    min-height: 100vh;
}

html,
body {
    font-family: 'Manrope', 'Inter', system-ui, -apple-system, sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    text-decoration: none;
    color: var(--text-default);
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    background-color: var(--bglight);
}

body {
    position: relative;
    display: flex;
    flex-direction: column;
    background-image: var(--page-grid), var(--page-bg);
    background-attachment: fixed;
}

    body::before {
        content: "";
        position: fixed;
        inset: 0;
        pointer-events: none;
        background: var(--page-overlay);
        z-index: -1;
    }

a {
    color: var(--text-accent);
    text-decoration: none;
    transition: color var(--transition-speed) var(--transition-ease);
}

    a:hover {
        color: var(--primary-strong);
    }

    a:focus-visible {
        outline: 2px solid var(--focus-outline-color);
        outline-offset: 2px;
        border-radius: 2px;
    }

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.icon-sprite {
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

.icon {
    display: inline-block;
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
    vertical-align: middle;
    fill: currentColor;
}

.icon-stroke {
    fill: currentColor;
}

.icon-sm {
    width: 1.125rem;
    height: 1.125rem;
}

.button-icon {
    margin-right: 0.4rem;
}

section {
    padding-top: var(--space-6);
    padding-bottom: var(--space-6);
}

.container {
    width: min(100% - 1.5rem, var(--container-max-width));
    margin-inline: auto;
}

.page-shell {
    flex: 1 0 auto;
    padding: calc(var(--header-offset) + 1.5rem) 0 2rem;
}

/* --- Loading overlay --- */
#loadingOverlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    background: var(--color-white-a-08);
    display: flex;
    justify-content: center;
    align-items: center;
    color: var(--primary);
}

.loading-overlay {
    opacity: 1;
    visibility: visible;
    transition: opacity var(--transition-speed) var(--transition-ease), visibility var(--transition-speed) var(--transition-ease);
}

    .loading-overlay.is-hidden {
        opacity: 0;
        visibility: hidden;
        pointer-events: none;
    }

.loading-overlay-card {
    display: inline-flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--color-white-a-96);
    box-shadow: var(--shadow-soft);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
}

.loading-overlay-spinner {
    width: 1rem;
    height: 1rem;
    border: 2px solid rgba(var(--highlight-rgb), 0.14);
    border-top-color: currentColor;
    border-radius: 50%;
    animation: overlay-spin 0.7s linear infinite;
}

.loading-overlay-text {
    color: var(--text-strong);
    font-size: 0.875rem;
    font-weight: 600;
}

@keyframes overlay-spin {
    to {
        transform: rotate(360deg);
    }
}


/* --- Base layout and framework --- */
.body-content {
    flex: 1 0 auto;
    width: min(100%, var(--container-max-width));
    container-type: inline-size;
    container-name: content-shell;
    background: var(--surface-base);
    box-shadow: var(--shadow-page);
    margin-top: 0;
    overflow-x: clip; /* was: hidden � clip doesn't create a scroll container, so sticky still works */
    position: relative;
    border-radius: var(--surface-card-radius);
    border: var(--surface-card-border);
    padding: clamp(1rem, 2vw, 1.5rem);
}

footer {
    flex-shrink: 0;
    padding: 0 0 1.5rem;
}

    footer .container {
        padding: 0.75rem 1rem 0;
    }

    footer p {
        margin: 0;
        color: var(--text-muted);
        font-size: 0.85rem;
    }

/* --- Selection highlight --- */
::selection {
    background: rgba(var(--highlight-rgb), 0.16);
    color: var(--text-strong);
}

/* --- Scrollbar styling (Webkit) --- */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}

::-webkit-scrollbar-track {
    background: var(--color-transparent);
}

::-webkit-scrollbar-thumb {
    background: rgba(var(--highlight-rgb), 0.14);
    border-radius: 999px;
}

    ::-webkit-scrollbar-thumb:hover {
        background: rgba(var(--highlight-rgb), 0.22);
    }

/* --- Reduced motion --- */
@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
        transition-duration: 0.01ms !important;
        scroll-behavior: auto !important;
    }
}

/* --- Responsive breakpoints --- */
@media (max-width: 1199.98px) {
    .body-content {
        padding: 1rem;
        border-radius: var(--radius-panel-sm);
    }
}

@media (max-width: 575.98px) {
    html,
    body {
        font-size: 15px;
    }

    .body-content {
        width: min(100% - 0.75rem, var(--container-max-width));
    }

    .container {
        width: min(100% - 1rem, var(--container-max-width));
    }
}



/* TypographyForms: shared headings, text and native form field patterns */
/* --- Reusable components --- */
p {
    margin-bottom: 0.875rem;
    line-height: 1.65;
    font-weight: 400;
}

h1 strong,
h2 strong,
h3 strong,
h4 strong,
h5 strong {
    font-weight: bold;
}

h1 {
    font-size: clamp(1.75rem, 3vw, 2.75rem);
    margin-bottom: 0.875rem;
    line-height: 1.1;
    font-weight: 800;
    letter-spacing: -0.025em;
    color: var(--text-strong);
    text-wrap: balance;
}

    h1 span {
        font-weight: 500;
        line-height: 1;
    }

        h1 span.sub {
            font-size: 0.5em;
        }

h2 {
    font-size: clamp(1.4rem, 2.2vw, 2rem);
    margin-bottom: 0.75rem;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: var(--text-strong);
    text-wrap: balance;
}

h3 {
    font-size: clamp(1.15rem, 1.8vw, 1.5rem);
    line-height: 1.2;
    font-weight: 700;
    color: var(--text-strong);
}

h4 {
    font-size: 1.25rem;
    line-height: 1.25;
    font-weight: 700;
    color: var(--text-strong);
}

h5 {
    font-size: 1.0625rem;
    line-height: 1.2;
    font-weight: 700;
    color: var(--text-strong);
}

.primary-color {
    color: var(--primary);
}


/* Accent colour utility � use where you explicitly want the brand accent */
.accent-color {
    color: var(--accent);
}


/* --- Form field base styling --- */
input[type="text"]:not(.k-input-inner),
input[type="password"],
input[type="number"],
input[type="date"],
input[type="email"],
input[type="tel"],
select,
textarea {
    width: 100%;
    padding: 0.65rem 0.85rem;
    border: 1px solid var(--border-muted);
    border-radius: var(--radius-input);
    box-sizing: border-box;
    margin-bottom: 0.5em;
    resize: vertical;
    background-color: var(--color-white-a-92);
    transition: border-color var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease);
    font-size: 0.9375rem;
    color: var(--text-default);
}

    /* Focus state */
    input[type="text"]:focus:not(.k-input-inner),
    input[type="password"]:focus,
    input[type="number"]:focus,
    input[type="date"]:focus,
    input[type="email"]:focus,
    input[type="tel"]:focus,
    select:focus,
    textarea:focus {
        border-color: var(--primary);
        outline: none;
        background-color: var(--white);
        box-shadow: 0 0 0 3px rgba(var(--highlight-rgb), 0.1);
    }

    /* Hover state */
    input[type="text"]:hover:not(.k-input-inner):not(:focus),
    input[type="password"]:hover:not(:focus),
    input[type="number"]:hover:not(:focus),
    input[type="date"]:hover:not(:focus),
    input[type="email"]:hover:not(:focus),
    input[type="tel"]:hover:not(:focus),
    select:hover:not(:focus),
    textarea:hover:not(:focus) {
        border-color: var(--darkgray);
    }

    /* Disabled state */
    input[type="text"]:disabled,
    input[type="password"]:disabled,
    input[type="number"]:disabled,
    input[type="date"]:disabled,
    input[type="email"]:disabled,
    input[type="tel"]:disabled,
    select:disabled,
    textarea:disabled {
        background-color: var(--whitegray);
        color: var(--darkgray);
        cursor: not-allowed;
        border-color: var(--gray);
        opacity: 0.6;
    }

    /* Invalid input styling */
    input:invalid:not(:placeholder-shown),
    textarea:invalid:not(:placeholder-shown),
    select:invalid {
        border-color: var(--color-danger-500);
        background-color: var(--color-danger-050);
    }

/* Placeholder styling */
::placeholder {
    color: var(--text-soft);
    opacity: 0.7;
}


/* --- Checkbox styles --- */
.mvc-checkbox {
    width: 100%;
    margin: 0.4em 0;
    box-sizing: border-box;
}

    /* Hide the actual checkbox */
    .mvc-checkbox input[type="checkbox"] {
        display: none;
    }

        /* Custom label styling */
        .mvc-checkbox input[type="checkbox"] + input + label {
            display: block;
            position: relative;
            padding-left: 32px;
            cursor: pointer;
            user-select: none;
            font-size: 0.9375rem;
            line-height: 1.5;
            transition: color var(--transition-speed) var(--transition-ease);
        }

        /* Hover on text */
        .mvc-checkbox input[type="checkbox"]:hover + input + label:hover {
            color: var(--black);
        }

        /* Custom checkbox box */
        .mvc-checkbox input[type="checkbox"] + input + label:before {
            content: "";
            display: block;
            width: 1.25em;
            height: 1.25em;
            border: 1px solid var(--checkbox-border-color);
            background-color: var(--checkbox-background-color);
            position: absolute;
            left: 0;
            top: 0;
            border-radius: 4px;
            transition: all var(--transition-speed) var(--transition-ease);
            box-shadow: 0 1px 2px var(--color-black-a-02);
        }

        /* Hover and focus on checkbox */
        .mvc-checkbox input[type="checkbox"]:hover + input + label:before,
        .mvc-checkbox input[type="checkbox"]:focus + input + label:before {
            background: var(--highlight);
            box-shadow: inset 0 0 0 1px var(--gray);
            transform: scale(1.04);
        }

        /* Active press state */
        .mvc-checkbox input[type="checkbox"]:active + input + label:before {
            transform: scale(0.96);
            box-shadow: inset 0 0 4px var(--color-black-a-02);
        }

        /* Checked state */
        .mvc-checkbox input[type="checkbox"]:checked + input + label:before {
            background-color: var(--primary);
            border-color: var(--primary);
            box-shadow: 0 0 0 1px var(--gray);
        }

        /* Clear focus outline */
        .mvc-checkbox input[type="checkbox"]:focus + input + label:before {
            outline: 3px solid var(--focus-outline-color);
            outline-offset: 2px;
            background-color: var(--highlight);
        }









/* Components: reusable UI blocks and Bootstrap component skinning */

/* --- Shared button spinner --- */
@keyframes btn-spinner {
    to { transform: rotate(360deg); }
}

/* --- Bootstrap component skinning --- */
.btn {
    --bs-btn-padding-x: 0.95rem;
    --bs-btn-padding-y: 0.65rem;
    --bs-btn-font-size: 0.9375rem;
    --bs-btn-font-weight: 600;
    --bs-btn-border-radius: 10px;
    --bs-btn-box-shadow: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    transition: transform var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease);
}

    .btn:hover {
        transform: translateY(-1px);
    }

    .btn:active {
        transform: translateY(0) scale(0.98);
    }

    .btn:focus-visible,
    .btn-check:focus-visible + .btn {
        box-shadow: 0 0 0 3px var(--focus-outline-color);
    }

.btn-primary {
    --bs-btn-bg: var(--submit-button-background-color);
    --bs-btn-border-color: var(--submit-button-background-color);
    --bs-btn-hover-bg: var(--submit-button-background-color-hover);
    --bs-btn-hover-border-color: var(--submit-button-background-color-hover);
    --bs-btn-active-bg: var(--primary-strong);
    --bs-btn-active-border-color: var(--primary-strong);
    --bs-btn-disabled-bg: var(--disabled-button-background-color);
    --bs-btn-disabled-border-color: var(--disabled-button-border-color);
    --bs-btn-color: var(--text-on-primary);
    --bs-btn-hover-color: var(--text-on-primary);
    --bs-btn-active-color: var(--text-on-primary);
    box-shadow: var(--shadow-soft);
}

.btn-outline-secondary,
.btn-outline-danger,
.btn-light {
    --bs-btn-bg: var(--color-white-a-86);
}

.btn-outline-secondary {
    --bs-btn-color: var(--text-default);
    --bs-btn-border-color: var(--border-muted);
    --bs-btn-hover-bg: var(--surface-strong);
    --bs-btn-hover-border-color: var(--primary-alpha-22);
    --bs-btn-hover-color: var(--text-strong);
}

.btn-danger,
.btn-outline-danger {
    --bs-btn-hover-color: var(--color-white);
}

.form-control,
.form-select {
    min-height: 46px;
    border-radius: var(--radius-input);
    border-color: var(--border-muted);
    background-color: var(--color-white-a-09);
    color: var(--text-default);
    font-size: 0.9375rem;
    box-shadow: none;
}

    .form-control:focus,
    .form-select:focus {
        border-color: var(--primary);
        box-shadow: 0 0 0 3px rgba(var(--highlight-rgb), 0.1);
    }

.offcanvas,
.modal-content {
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel);
    box-shadow: var(--shadow-dropdown);
}

.offcanvas {
    background: linear-gradient(180deg, var(--color-white-a-86), var(--surface-mint-92));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

.modal-content {
    background: linear-gradient(180deg, var(--color-white-a-08), var(--surface-mint-96));
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

    .modal-content::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        pointer-events: none;
        background: linear-gradient(135deg, var(--color-white-a-42), var(--color-white-a-06) 40%, rgba(var(--highlight-rgb), 0.04));
    }

.offcanvas::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: inherit;
    pointer-events: none;
    background: linear-gradient(135deg, var(--color-white-a-04), var(--color-white-a-06) 40%, rgba(var(--highlight-rgb), 0.04));
}

.offcanvas-header,
.modal-header {
    border-bottom-color: var(--border-soft);
    background: var(--color-transparent);
    position: relative;
    z-index: 1;
    padding: 1rem 1.25rem;
}

.offcanvas-title,
.modal-title {
    color: var(--text-strong);
    font-size: 1rem;
    font-weight: 700;
}

.offcanvas-body,
.modal-body,
.modal-footer {
    position: relative;
    z-index: 1;
    padding: 1rem 1.25rem;
}

.offcanvas-backdrop {
    background: var(--overlay-scrim-strong);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* --- Legacy MVC controls (keep until markup migration) --- */
/* Base Button Styles */
.mvc-btn {
    color: var(--black);
    padding: 0.625rem 1rem;
    border: 1px solid var(--gray);
    border-radius: 8px;
    cursor: pointer;
    text-align: center;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.4;
    transition: background-color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
    user-select: none;
    touch-action: manipulation;
    outline: none;
    background-clip: padding-box;
    min-width: 140px;
}

    .mvc-btn:hover {
        filter: brightness(1.03);
        transform: translateY(-1px);
    }

    .mvc-btn:focus-visible {
        outline: 2px solid var(--focus-outline-color);
        outline-offset: 2px;
    }

/* Primary Button */
.mvc-btn--primary {
    background-color: var(--submit-button-background-color);
    border: 1px solid var(--color-transparent);
    color: var(--text-on-primary);
}

    .mvc-btn--primary:hover {
        background-color: var(--submit-button-background-color-hover);
        border-color: var(--submit-button-background-color-hover);
    }

/* Secondary Button */
.mvc-btn--secondary {
    background-color: var(--button-background-color);
    border: 1px solid var(--gray);
}

    .mvc-btn--secondary:hover {
        background-color: var(--button-background-color-hover);
        border-color: var(--button-background-color-hover);
    }

/* Disabled State */
.mvc-btn:disabled,
.mvc-btn--disabled {
    background-color: var(--disabled-button-background-color);
    color: var(--disabled-button-text-color);
    border: 1px solid var(--disabled-button-border-color);
    cursor: not-allowed;
    pointer-events: none;
    filter: grayscale(1);
}

.mvc-btn:focus {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 3px;
}

/* Active State */
.mvc-btn:active {
    transform: scale(0.98);
    background-color: var(--active-button-background-color);
    border-color: var(--active-button-border-color);
}

/* ---- Alerts ----*/
.alert-container {
    position: fixed;
    top: 16px;
    right: 16px;
    width: auto;
    max-width: 380px;
    z-index: 9999;
}

    .alert-container .alert {
        position: relative;
        margin-bottom: 8px;
        border-radius: var(--radius-panel-sm);
        opacity: 1;
        font-size: 0.875rem;
        transition: all var(--transition-speed) var(--transition-ease);
    }

        .alert-container .alert:hover {
            opacity: 0.85;
        }

        .alert-container .alert.alert-timer::after {
            content: '';
            position: absolute;
            bottom: 0;
            left: 0;
            height: 2px;
            transition: width 5s ease-out;
            width: 100%;
            border-radius: 0 0 var(--radius-panel-sm) var(--radius-panel-sm);
        }

        .alert-container .alert.alert-timer.alert-timer-start::after {
            width: 0%;
        }

    .alert-container .alert-success::after {
        background-color: var(--bs-success-border-subtle);
    }

    .alert-container .alert-warning::after {
        background-color: var(--bs-warning-border-subtle);
    }

    .alert-container .alert-danger::after {
        background-color: var(--bs-danger-border-subtle);
    }

/* --- Socials ---*/
.socials {
    display: flex;
    gap: 8px;
    align-items: center;
}

    .socials a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        width: 32px;
        height: 32px;
    }

        .socials a img {
            width: 100%;
            height: auto;
            transition: opacity var(--transition-speed) var(--transition-ease);
        }

        .socials a:hover img {
            opacity: 0.75;
        }

/* --- Cookie consent --- */
.cookie-consent {
    position: fixed;
    bottom: 0;
    left: 0;
    max-width: 720px;
    margin: 0.75rem;
    padding: 1rem;
    border-radius: var(--radius-panel-sm);
    display: none;
    background-color: var(--color-black-a-06);
    color: var(--color-white);
    z-index: 1050;
    transition: background-color var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease);
}

    .cookie-consent:hover {
        background-color: var(--color-black-a-08);
    }

    .cookie-consent p {
        margin: 0;
        padding: 0 0.75rem;
        font-size: 0.8125rem;
        line-height: 1.6;
    }

/* --- Price mode toggle --- */
.price-mode-toggle {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
}

.price-mode-option {
    font-size: 0.75rem;
    line-height: 1;
    font-weight: 600;
    color: var(--text-muted);
    transition: color var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease);
    opacity: 0.8;
    user-select: none;
}

    .price-mode-option.is-active {
        color: var(--text-accent);
        opacity: 1;
    }

.price-mode-switch {
    position: relative;
    display: inline-flex;
    align-items: center;
    min-width: 36px;
    width: 36px;
    height: 20px;
    padding: 0;
    border-radius: 999px;
    border: 1px solid var(--border-accent-soft);
    background: var(--surface-muted);
    cursor: pointer;
    transition: background-color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease);
}

    .price-mode-switch:hover {
        background: var(--surface-muted-strong);
        border-color: var(--primary-alpha-20);
        transform: none;
    }

    .price-mode-switch:focus-visible {
        outline: none;
        box-shadow: 0 0 0 3px var(--focus-outline-color);
    }

    .price-mode-switch:active .price-mode-switch-knob {
        width: 16px;
    }

.price-mode-switch-knob {
    position: absolute;
    top: 2px;
    left: 2px;
    display: block;
    width: 14px;
    height: 14px;
    border-radius: 999px;
    background: var(--color-white);
    box-shadow: 0 1px 3px var(--color-ink-a-10);
    transform: translateX(0);
    transition: transform var(--transition-speed) var(--transition-ease), width var(--transition-speed) var(--transition-ease);
    pointer-events: none;
}

.price-mode-toggle.is-excl .price-mode-switch-knob {
    transform: translateX(16px);
}

.price-mode-toggle.is-excl .price-mode-switch:active .price-mode-switch-knob {
    transform: translateX(14px);
}

/* --- Shared reusable controls/cards --- */
.component-inline-control,
.topbar-locale-trigger,
.topbar-theme-toggle {
    border: 1px solid var(--primary-alpha-10);
    border-radius: 8px;
    background: var(--color-white-a-98);
    color: var(--text-strong);
    box-shadow: none;
    transition: background-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease);
}

.topbar-theme-toggle:hover {
    background: var(--surface-strong);
    color: var(--text-accent);
}

.component-icon-button,
.header-cart-button,
.header-search-toggle,
.navbar-toggler {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 42px;
    padding: var(--component-icon-button-padding, 0.55rem);
    border: 1px solid var(--border-muted);
    border-radius: 12px;
    background: var(--color-white-a-92);
    color: var(--text-strong);
    box-shadow: var(--shadow-soft);
    transition: background-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease);
}

.header-cart-button {
    --component-icon-button-padding: 0.55rem 0.7rem;
}

.component-icon-button .icon,
.header-cart-button .icon,
.header-search-toggle i,
.navbar-toggler .icon {
    width: 1.125rem;
    height: 1.125rem;
}

.component-icon-button:hover,
.header-cart-button:hover,
.header-search-toggle:hover,
.navbar-toggler:hover {
    background: var(--surface-strong);
    color: var(--text-accent);
    transform: translateY(var(--component-icon-button-hover-translate-y, 0));
}

.component-icon-button:focus-visible,
.header-cart-button:focus-visible,
.header-search-toggle:focus-visible,
.navbar-toggler:focus-visible {
    outline: none;
    border-color: var(--primary-alpha-35);
    box-shadow: 0 0 0 3px var(--focus-outline-color);
}

.navbar.is-compact .component-icon-button,
.navbar.is-compact .header-cart-button,
.navbar.is-compact .header-search-toggle,
.navbar.is-compact .navbar-toggler {
    min-height: 38px;
}

.component-summary-row,
.cart-summary-row,
.checkout-summary-row {
    display: flex;
    justify-content: space-between;
    gap: 0.75rem;
    color: var(--text-default);
}

.component-content-card,
.home-info-card,
.home-showcase-card,
.legal-card {
    display: grid;
    gap: var(--component-content-card-gap, 0.55rem);
    min-height: var(--component-content-card-min-height, auto);
    padding: var(--component-content-card-padding, 1rem);
    border-radius: var(--component-content-card-radius, var(--radius-panel));
    border: var(--component-content-card-border, 1px solid var(--border-brand-soft));
    background: var(--component-content-card-bg, var(--color-white-a-09));
    box-shadow: var(--component-content-card-shadow, var(--shadow-soft));
}

.home-showcase-card::before {
    content: "";
    position: absolute;
    inset: 0 0 auto;
    height: 3px;
    background: var(--accent-stripe-gradient);
}



/* Header: topbar, navigation and smart-search */
.site-topbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1035;
    padding: 0.35rem 0 0;
    transition: transform var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease);
}

.site-topbar-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-height: var(--topbar-height);
    padding: 0.4rem 0.85rem;
    border: 1px solid var(--primary-alpha-10);
    border-radius: 12px;
    background: var(--surface-topbar-bg);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    box-shadow: 0 2px 8px var(--color-ink-a-04);
}

.site-topbar-meta {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.35rem 0.6rem;
    min-width: 0;
}

.site-topbar-item {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    color: var(--text-muted);
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-decoration: none;
}

.site-topbar-meta .site-topbar-item + .site-topbar-item {
    position: relative;
    padding-left: 0.65rem;
}

    .site-topbar-meta .site-topbar-item + .site-topbar-item::before {
        content: "";
        position: absolute;
        left: 0;
        top: 50%;
        width: 1px;
        height: 0.8rem;
        background: var(--primary-alpha-14);
        transform: translateY(-50%);
    }

a.site-topbar-item:hover {
    color: var(--text-accent);
}

.topbar-tools {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    flex: 0 0 auto;
}

.header-topline-desktop {
    display: flex;
}

.header-topline-mobile {
    display: none;
}

.topbar-price-mode-toggle {
    padding: 0.15rem 0.4rem;
}

    .topbar-price-mode-toggle .price-mode-option {
        color: var(--text-default);
        font-weight: 700;
        opacity: 0.75;
    }

    .topbar-price-mode-toggle .price-mode-option.is-active {
        color: var(--text-strong);
        opacity: 1;
    }

    .topbar-price-mode-toggle .price-mode-switch {
        border-color: var(--primary-alpha-20);
        background: var(--color-white-a-92);
        box-shadow: inset 0 0 0 1px var(--color-white-a-42);
    }

    .topbar-price-mode-toggle .price-mode-switch:hover {
        background: var(--color-white-a-98);
    }

    .topbar-price-mode-toggle .price-mode-switch-knob {
        background: var(--primary-strong);
        box-shadow: 0 1px 4px var(--color-ink-a-12);
    }

    .topbar-price-mode-toggle.is-excl .price-mode-switch-knob {
        background: var(--primary);
    }

.topbar-locale-switcher {
    position: relative;
    flex: 0 0 auto;
    z-index: 5;
}

    .topbar-locale-switcher summary {
        list-style: none;
    }

        .topbar-locale-switcher summary::-webkit-details-marker {
            display: none;
        }

.topbar-locale-trigger {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 30px;
    padding: 0.3rem 0.65rem;
    cursor: pointer;
    font-size: 0.8125rem;
}

    .topbar-locale-trigger strong,
    .topbar-locale-option strong {
        min-width: 2rem;
    }

    .topbar-locale-trigger span,
    .topbar-locale-option span {
        color: var(--text-muted);
        font-size: 0.8rem;
    }

.topbar-locale-options {
    position: absolute;
    top: calc(100% + 0.35rem);
    right: 0;
    display: grid;
    gap: 0.35rem;
    min-width: 210px;
    padding: 0.4rem;
    border: 1px solid var(--primary-alpha-10);
    border-radius: 10px;
    background: var(--color-white-a-98);
    box-shadow: var(--shadow-dropdown);
    z-index: 40;
}

.topbar-locale-option {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.5rem 0.6rem;
    border: 1px solid var(--color-transparent);
    border-radius: 6px;
    color: var(--text-default);
    text-decoration: none;
}

    .topbar-locale-option.is-active {
        border-color: var(--primary-alpha-10);
        background: var(--primary-alpha-06);
    }

.topbar-theme-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    padding: 0;
}

.theme-toggle-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.theme-toggle-icon-sun {
    display: none;
}

:root[data-theme="dark"] .theme-toggle-icon-moon {
    display: none;
}

:root[data-theme="dark"] .theme-toggle-icon-sun {
    display: inline-flex;
}

.navbar {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 1030;
    padding: 0.75rem 0 0;
    transition: padding var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
    background: var(--color-transparent);
    border-bottom: 0;
}

.page-shell {
    padding-top: calc(var(--header-offset-dynamic, var(--header-offset)) + var(--page-shell-gap, 1rem));
}

    .navbar .container {
        display: grid;
        grid-template-columns: auto minmax(320px, 1fr) auto auto;
        grid-template-areas:
            "topline topline topline topline"
            "brand search actions cart";
        column-gap: 0.7rem;
        row-gap: 0.4rem;
        align-items: center;
        padding: 0.7rem 0.85rem;
        border: var(--surface-card-border);
        border-radius: var(--surface-card-radius);
        background: var(--color-white-a-78);
        box-shadow: var(--shadow-header);
        backdrop-filter: blur(16px);
        -webkit-backdrop-filter: blur(16px);
        transition: padding var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
    }

.header-brand-wrap {
    grid-area: brand;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    min-width: 0;
    transition: gap var(--transition-speed) var(--transition-ease);
}

.navbar-brand {
    display: inline-flex;
    align-items: center;
    margin-right: 0;
}

    .navbar-brand img {
        width: clamp(110px, 12vw, 160px);
        height: auto;
        transition: width var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
    }

.header-products-link {
    color: var(--smartsearch-link-color);
    display: inline-flex;
    align-items: center;
    min-height: 38px;
    padding: 0 0.75rem;
    border: 1px solid var(--color-transparent);
    border-radius: var(--radius-pill);
    background: var(--surface-muted);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    letter-spacing: 0.01em;
    opacity: 1;
    transition: background-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease), min-height var(--transition-speed) var(--transition-ease), padding var(--transition-speed) var(--transition-ease);
}

    .header-products-link:hover {
        color: var(--smartsearch-link-hover-color);
        background: var(--surface-muted-strong);
    }

.header-search {
    grid-area: search;
    position: relative;
    width: 100%;
    max-width: none;
}

.header-search-form {
    margin: 0;
}

    .header-search-form.is-submitting .header-search-submit {
        pointer-events: none;
        opacity: 0.85;
    }

.header-search-box {
    display: flex;
    align-items: stretch;
    min-height: 46px;
    border: 1px solid var(--smartsearch-box-border);
    border-radius: var(--smartsearch-box-radius);
    background: var(--smartsearch-box-bg);
    box-shadow: var(--smartsearch-box-shadow);
    overflow: hidden;
    transition: min-height var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease);
}

.header-search-input,
input.header-search-input[type="search"] {
    flex: 1 1 auto;
    width: 100%;
    margin: 0;
    padding: 0.75rem 0.9rem;
    border: 0;
    border-radius: 0;
    background: var(--color-transparent);
    box-shadow: none;
    font-size: 0.9375rem;
    font-weight: 500;
    line-height: 1.2;
    color: var(--text-strong);
    caret-color: var(--text-strong);
    -webkit-text-fill-color: var(--text-strong);
    appearance: none;
    -webkit-appearance: none;
}

    .header-search-input::placeholder,
    input.header-search-input[type="search"]::placeholder {
        color: var(--text-soft);
        opacity: 1;
    }

    .header-search-input:focus,
    input.header-search-input[type="search"]:focus {
        outline: none;
        box-shadow: none;
        background: var(--smartsearch-input-focus-bg);
    }

.header-search-submit {
    border: 0;
    border-left: 1px solid var(--border-accent-soft);
    min-width: 100px;
    padding: 0 1rem;
    background: var(--smartsearch-submit-bg);
    color: var(--text-on-primary);
    font-size: 0.9375rem;
    font-weight: 600;
    letter-spacing: 0.02em;
    transition: background-color var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
}

    .header-search-submit:hover,
    .header-search-submit:focus {
        color: var(--text-on-primary);
        background: var(--smartsearch-submit-hover-bg);
        transform: translateY(-1px);
    }

.header-search-dropdown {
    position: absolute;
    top: calc(100% + 0.35rem);
    left: 0;
    right: 0;
    z-index: 1200;
    border: 1px solid var(--smartsearch-dropdown-border);
    border-radius: var(--smartsearch-dropdown-radius);
    background: var(--smartsearch-dropdown-bg);
    box-shadow: var(--smartsearch-dropdown-shadow);
    overflow: hidden;
    max-height: min(65vh, 500px);
    pointer-events: auto;
}

.header-search-loading,
.header-search-empty {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.75rem 0.9rem;
    color: var(--text-soft);
    font-size: 0.9rem;
}

.header-search-spinner {
    width: 0.9rem;
    height: 0.9rem;
    border: 2px solid rgba(var(--highlight-rgb), 0.18);
    border-top-color: var(--text-accent);
    border-radius: 50%;
    flex: 0 0 0.9rem;
    animation: overlay-spin 0.7s linear infinite;
}

.header-search-list {
    display: flex;
    flex-direction: column;
    max-height: min(54vh, 380px);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
}

    .header-search-list::-webkit-scrollbar {
        width: 6px;
    }

    .header-search-list::-webkit-scrollbar-thumb {
        background: rgba(var(--highlight-rgb), 0.16);
        border-radius: 999px;
    }

    .header-search-list::-webkit-scrollbar-track {
        background: rgba(var(--highlight-rgb), 0.04);
    }

.header-search-item {
    display: grid;
    grid-template-columns: 56px minmax(0, 1fr) auto;
    gap: 0.6rem;
    align-items: center;
    padding: 0.65rem 0.9rem;
    text-decoration: none;
    color: inherit;
    border-bottom: 1px solid var(--border-soft);
    transition: background-color var(--transition-speed) var(--transition-ease);
}

    .header-search-item:hover {
        background: var(--smartsearch-item-hover-bg);
    }

.header-search-thumb {
    width: 56px;
    height: 56px;
    object-fit: contain;
    border-radius: var(--radius-thumb);
    background: var(--smartsearch-thumb-bg);
    padding: 0.3rem;
}

.header-search-copy {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.header-search-title {
    color: var(--text-strong);
    font-size: 0.9rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.header-search-meta {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: var(--text-muted);
    font-size: 0.825rem;
}

.header-search-price {
    color: var(--text-accent-brand);
    font-weight: 700;
    white-space: nowrap;
}

.header-search-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 0.9rem;
    height: 0.9rem;
    flex: 0 0 0.9rem;
    color: currentColor;
}

    .header-search-icon svg {
        width: 100%;
        height: 100%;
        fill: currentColor;
    }

.header-search-icon-arrow {
    width: 0.85rem;
    height: 0.85rem;
}

.header-search-results-link {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.7rem 0.9rem;
    background: var(--smartsearch-results-link-bg);
    color: var(--text-accent-brand);
    font-weight: 600;
    font-size: 0.9375rem;
    text-decoration: none;
}

    .header-search-results-link:hover {
        background: var(--smartsearch-results-link-hover-bg);
        color: var(--accent-strong);
    }

.header-actions {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    transition: gap var(--transition-speed) var(--transition-ease);
}

.header-actions-desktop {
    grid-area: actions;
    justify-self: end;
}

.header-cart-button {
    grid-area: cart;
    justify-self: end;
}

    .header-actions .btn,
    .header-search-toggle {
        white-space: nowrap;
    }

.header-account-button {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    min-height: 42px;
    padding: 0.45rem 0.65rem;
    border-radius: var(--radius-pill);
    font-size: 0.9375rem;
    line-height: 1;
}

    .header-account-button.is-authenticated {
        box-shadow: var(--shadow-soft);
        gap: 0.35rem;
    }

.header-account-group {
    display: inline-flex;
    align-items: stretch;
}

    .header-account-group .header-account-button {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
    }

.header-logout-button {
    display: inline-flex;
    align-items: center;
    min-height: 42px;
    padding: 0.45rem 0.7rem;
    border: 1px solid var(--border-accent-soft);
    border-radius: var(--radius-pill);
    background: var(--surface-border-translucent);
    color: var(--text-default);
    font-weight: 600;
    font-size: 0.9375rem;
}

    .header-account-group .header-logout-button {
        margin-left: -1px;
        border-top-left-radius: 0;
        border-bottom-left-radius: 0;
        box-shadow: var(--shadow-soft);
    }

    .header-logout-button:hover {
        background: var(--surface-base);
        color: var(--primary-strong);
    }

.header-search-toggle {
    display: none;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
}

.header-search-toggle-label {
    display: inline-flex;
    align-items: center;
    font-size: 0.825rem;
    font-weight: 700;
}

.navbar.is-compact {
    padding-top: 0.25rem;
}

.header-topline {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.7rem;
    width: 100%;
    margin-bottom: 0.1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--primary-alpha-06);
    overflow: visible;
    opacity: 1;
    max-height: 70px;
    transition: max-height var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease), margin var(--transition-speed) var(--transition-ease), padding var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease);
}

    .header-topline .site-topbar-meta {
        flex: 1 1 auto;
    }

.header-topline-mobile.header-topline {
    display: none;
}

.header-mobile-menu-content {
    display: none;
}

.header-mobile-menu-intro {
    display: grid;
    gap: 0.25rem;
    padding-bottom: 0.15rem;
}

.header-mobile-menu-intro-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.header-mobile-menu-eyebrow {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.74rem;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.header-mobile-menu-title {
    margin: 0;
    color: var(--text-strong);
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1.2;
}

.header-mobile-menu-summary {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.82rem;
    line-height: 1.4;
}

.header-mobile-menu-close {
    min-width: 40px;
    min-height: 40px;
    padding: 0;
    border-radius: 14px;
    flex: 0 0 auto;
    font-size: 1.4rem;
    line-height: 1;
}

.header-mobile-menu-section {
    display: grid;
    gap: 0.75rem;
}

.header-mobile-menu-heading {
    display: grid;
    gap: 0.18rem;
}

.header-mobile-section-title {
    margin: 0;
    color: var(--text-default);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.header-mobile-section-description {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.79rem;
    line-height: 1.38;
}

.header-mobile-preference-list {
    display: grid;
    gap: 0.7rem;
}

.header-mobile-preference-item {
    display: grid;
    gap: 0.55rem;
    padding: 0.75rem 0.8rem;
    border: 1px solid var(--primary-alpha-08);
    border-radius: 16px;
    background: linear-gradient(180deg, var(--color-white-a-98), var(--surface-filter-92));
    box-shadow: 0 6px 16px var(--color-ink-a-04);
}

.header-mobile-preference-copy {
    display: grid;
    gap: 0.2rem;
}

.header-mobile-preference-label {
    margin: 0;
    color: var(--text-strong);
    font-size: 0.92rem;
    font-weight: 700;
    line-height: 1.25;
}

.header-mobile-preference-description {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.78rem;
    line-height: 1.4;
}

.header-menu-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1025;
    background: var(--overlay-scrim-soft);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-speed) var(--transition-ease);
}

body.mobile-menu-open .header-menu-backdrop {
    opacity: 1;
    pointer-events: auto;
}

.navbar.is-compact .header-topline-desktop {
    opacity: 0;
    max-height: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom-color: var(--color-transparent);
    overflow: hidden;
    pointer-events: none;
}

.navbar.is-compact .container {
    row-gap: 0;
    padding: 0.5rem 0.7rem;
    background: var(--color-white-a-66);
    border-color: var(--border-muted);
    box-shadow: 0 4px 16px var(--color-ink-a-08);
}

.navbar.is-compact .navbar-brand img {
    width: clamp(100px, 10vw, 140px);
}

.navbar.is-compact .header-brand-wrap,
.navbar.is-compact .header-actions {
    gap: 0.5rem;
}

.navbar.is-compact .header-products-link {
    min-height: 34px;
    padding: 0 0.65rem;
}

.navbar.is-compact .header-search-box {
    min-height: 40px;
}

.navbar.is-compact .header-actions .btn {
    min-height: 38px;
}

.navbar-toggler {
    display: inline-flex;
    --component-icon-button-hover-translate-y: -1px;
}

.topbar-locale-trigger:focus-visible,
.topbar-theme-toggle:focus-visible,
.header-search-submit:focus-visible {
    outline: none;
    border-color: var(--primary-alpha-35);
    box-shadow: 0 0 0 3px var(--focus-outline-color);
}

/* Hamburger menu stijl */
.hamburger-container {
    z-index: 1100;
    display: flex;
    justify-content: center;
    align-items: center;
}

.hamburger-menu {
    background: none;
    border: none;
    cursor: pointer;
    padding: 8px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 36px;
    width: 36px;
}

    .hamburger-menu span {
        display: block;
        height: 2px;
        width: 100%;
        background-color: var(--color-neutral-900);
        border-radius: 2px;
        transition: all var(--transition-speed) var(--transition-ease);
    }

/* Geanimeerde overgang bij openen/sluiten */
.navbar-container.toggled .hamburger-menu span:nth-child(1) {
    transform: translateY(8px) rotate(45deg);
}

.navbar-container.toggled .hamburger-menu span:nth-child(2) {
    opacity: 0;
}

.navbar-container.toggled .hamburger-menu span:nth-child(3) {
    transform: translateY(-8px) rotate(-45deg);
}

@media (max-width: 1199.98px) {
    :root {
        --topbar-height: 0px;
        --header-offset: calc(var(--header-height) + 4rem);
    }

    .site-topbar {
        display: none;
    }

    .navbar {
        top: 0;
    }

        .navbar .container {
            display: grid;
            grid-template-columns: minmax(0, 1fr) auto auto auto;
            grid-template-areas:
                "topline topline topline topline"
                "brand   search  cart    toggler";
            grid-template-rows: auto auto;
            column-gap: 0.4rem;
            row-gap: 0.45rem;
            padding: 0.7rem;
            align-items: center;
            background: var(--color-white-a-92);
/*            backdrop-filter: none;
            -webkit-backdrop-filter: none;*/
        }

    .header-topline {
        margin-bottom: 0.1rem;
        padding-bottom: 0.45rem;
        overflow: visible;
        opacity: 1;
        transition: max-height var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease), margin var(--transition-speed) var(--transition-ease), padding var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease);
    }

    .header-topline-desktop {
        display: none;
    }

    .header-topline-mobile {
        grid-area: topline;
        display: flex;
        align-items: center;
        justify-content: flex-start;
        gap: 0.6rem;
        padding-bottom: 0.45rem;
        border-bottom: 1px solid var(--primary-alpha-06);
        max-height: 70px;
    }

    .header-topline-mobile.header-topline {
        display: flex;
    }

        .header-topline-mobile .site-topbar-meta {
            flex: 1 1 auto;
            gap: 0.3rem 0.55rem;
        }

        .header-topline-mobile .site-topbar-item {
            min-height: 22px;
            font-size: 0.75rem;
        }

        .header-topline-mobile .site-topbar-meta .site-topbar-item + .site-topbar-item {
            padding-left: 0.55rem;
        }

    .navbar.is-compact .header-topline-mobile {
        max-height: 54px;
        margin-bottom: 0;
        padding-bottom: 0.25rem;
        opacity: 0.92;
    }

    .navbar-toggler {
        grid-area: toggler;
    }

    .header-search-toggle {
        grid-area: search;
        display: inline-flex;
        min-width: 52px;
        min-height: 44px;
        padding: 0 0.95rem;
        border-radius: var(--radius-pill);
        justify-self: end;
        box-shadow: var(--shadow-soft);
    }

    .navbar.is-compact .header-search-toggle {
        min-width: 44px;
        min-height: 40px;
        padding: 0 0.7rem;
    }

    .navbar.is-compact .header-search-toggle-label {
        display: none;
    }

    .header-search {
        width: 100%;
        max-width: none;
    }

    .header-actions {
        gap: 0.4rem;
    }

    .header-actions-desktop {
        display: none;
    }

    .header-account-button {
        min-height: 38px;
        padding: 0.4rem 0.5rem;
        border-radius: var(--radius-pill);
    }

    .header-account-group {
        display: inline-flex;
    }

    .navbar-brand img {
        width: clamp(80px, 18vw, 110px);
    }

    .navbar.is-compact .navbar-brand img {
        width: clamp(76px, 16vw, 104px);
    }

    .header-brand-wrap {
        flex-wrap: nowrap;
        gap: 0.4rem;
    }

    .header-products-link {
        min-height: 38px;
        padding: 0 0.75rem;
        font-size: 0.86rem;
        font-weight: 700;
    }

    .navbar.is-compact .header-products-link {
        min-height: 34px;
        padding: 0 0.6rem;
        font-size: 0.8rem;
    }

    .navbar .container {
        position: relative;
    }

    .header-search-toggle,
    .navbar-toggler,
    .header-cart-button {
        min-height: 38px;
        justify-content: center;
    }

    .navbar-toggler,
    .header-cart-button {
        width: 44px;
        padding: 0;
    }

    .header-search {
        position: fixed;
        top: calc(var(--header-offset) - 0.55rem);
        left: 0.7rem;
        right: 0.7rem;
        z-index: 1065;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-6px);
        pointer-events: none;
        transition: opacity var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease), visibility var(--transition-speed) var(--transition-ease);
    }

    .header-search-form,
    .header-search-box {
        width: 100%;
    }

    .header-search-box {
        min-width: 0;
    }

    .header-search-input,
    input.header-search-input[type="search"] {
        min-width: 0;
    }

    .navbar.is-search-open .header-search {
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
        pointer-events: auto;
    }

    .navbar.is-search-open .navbar-collapse.show {
        display: none !important;
    }

    .header-search-box {
        flex-direction: row;
        border-radius: var(--radius-panel);
        background: var(--color-white-a-94);
        box-shadow: var(--shadow-medium);
        overflow: hidden;
    }

    .navbar.is-search-open .header-search-toggle {
        background: var(--primary-soft);
        color: var(--text-accent);
        border-color: rgba(var(--highlight-rgb), 0.2);
    }

    .header-search-submit {
        min-width: 108px;
        min-height: 48px;
        border-left: 1px solid var(--border-accent-soft);
        border-top: 0;
    }

    .header-search-dropdown {
        top: calc(100% + 0.3rem);
        border-radius: var(--radius-thumb);
        max-height: min(56vh, 460px);
    }

    .header-search-item {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 0.55rem;
    }

    .header-search-thumb {
        width: 48px;
        height: 48px;
    }

    .header-search-price {
        grid-column: 2;
    }

    .navbar-collapse {
        position: absolute;
        top: calc(100% + 0.45rem);
        right: 0.7rem;
        left: 0.7rem;
        z-index: 1060;
        max-height: min(calc(100vh - var(--header-offset) - 1.2rem), 620px);
        padding: 0.9rem;
        border: 1px solid var(--primary-alpha-10);
        border-radius: 24px;
        background: linear-gradient(180deg, var(--color-white-a-84), var(--surface-layer-94));
        box-shadow: var(--shadow-medium);
        backdrop-filter: blur(24px) saturate(135%);
        -webkit-backdrop-filter: blur(24px) saturate(135%);
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .navbar.is-menu-open::after {
        content: none;
    }

    .navbar-collapse.show {
        box-shadow: var(--shadow-medium);
    }

    .navbar-collapse.collapsing {
        position: absolute;
        top: calc(100% + 0.45rem);
        right: 0.7rem;
        left: 0.7rem;
        z-index: 1060;
        height: auto !important;
        max-height: min(calc(100vh - var(--header-offset) - 1.2rem), 620px);
        padding: 0.9rem;
        border: 1px solid var(--primary-alpha-10);
        border-radius: 24px;
        background: linear-gradient(180deg, var(--color-white-a-84), var(--surface-layer-94));
        box-shadow: var(--shadow-medium);
        backdrop-filter: blur(24px) saturate(135%);
        -webkit-backdrop-filter: blur(24px) saturate(135%);
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
    }

    .header-mobile-menu-content {
        display: grid;
        gap: 0.85rem;
    }

    .header-mobile-menu-section {
        gap: 0.7rem;
        padding: 0.8rem;
        border: 1px solid var(--primary-alpha-08);
        border-radius: 18px;
        background: linear-gradient(180deg, var(--color-white-a-98), var(--surface-filter-92));
        box-shadow: 0 8px 20px var(--color-ink-a-04);
    }

    .header-account-group-mobile {
        width: 100%;
    }

    .header-account-group-mobile .header-account-button,
    .header-account-group-mobile .header-logout-button,
    .header-account-button-mobile {
        width: 100%;
        justify-content: center;
        min-height: 50px;
    }

    .header-mobile-preferences {
        gap: 0.8rem;
    }

    .header-mobile-preferences-body {
        display: grid;
        gap: 0.7rem;
    }

    .header-mobile-preferences .topbar-price-mode-toggle {
        display: inline-flex;
        justify-self: start;
        padding: 0;
    }

    .header-mobile-preferences .topbar-locale-options {
        left: 0;
        right: 0;
        min-width: 100%;
    }

    .header-mobile-preferences .topbar-locale-trigger {
        justify-content: space-between;
        width: 100%;
        min-height: 48px;
        padding: 0.55rem 0.8rem;
        border: 1px solid var(--primary-alpha-10);
        border-radius: 16px;
        background: var(--color-white-a-98);
    }

    .header-mobile-preferences .topbar-theme-toggle {
        width: 46px;
        height: 46px;
        border-radius: 14px;
        box-shadow: var(--shadow-soft);
    }

    .header-mobile-preference-item .topbar-theme-toggle {
        justify-self: start;
    }
}

@media (min-width: 768px) and (max-width: 1199.98px) {
    :root {
        --header-offset: calc(var(--header-height) + 4.6rem);
    }

    .navbar .container {
        grid-template-columns: auto minmax(320px, 1fr) auto auto;
        grid-template-areas:
            "topline topline topline topline"
            "brand   searchpanel cart toggler";
        row-gap: 0.65rem;
    }

    .header-search-toggle {
        display: none;
    }

    .header-search {
        grid-area: searchpanel;
        position: static;
        width: 100%;
        max-width: none;
        justify-self: stretch;
        opacity: 1;
        visibility: visible;
        transform: none;
        pointer-events: auto;
    }

    .header-search-box {
        min-height: 36px;
        border-radius: 18px;
        background: var(--color-white-a-96);
        box-shadow: var(--shadow-medium);
    }

    .header-search-input,
    input.header-search-input[type="search"] {
        padding: 0.56rem 0.72rem;
        font-size: 0.84rem;
    }

    .header-search-submit {
        min-width: 76px;
        padding: 0 0.7rem;
        font-size: 0.8rem;
    }

    .navbar-collapse {
        left: auto;
        right: 1rem;
        width: min(360px, calc(100vw - 2rem));
        top: calc(100% + 0.75rem);
        border-radius: var(--radius-panel);
        background: linear-gradient(180deg, var(--color-white-a-84), var(--surface-layer-94));
    }

    .navbar-collapse.collapsing {
        left: auto;
        right: 1rem;
        width: min(360px, calc(100vw - 2rem));
        top: calc(100% + 0.75rem);
        border-radius: var(--radius-panel);
    }

    .navbar.is-menu-open::after {
        display: none;
    }

    .header-cart-button,
    .navbar-toggler {
        width: 48px;
        min-height: 48px;
    }

    .header-products-link {
        min-height: 38px;
        padding: 0 0.7rem;
        font-size: 0.875rem;
    }
}

@media (max-width: 767.98px) {
    .header-search {
        left: 0.5rem;
        right: 0.5rem;
        width: auto;
        max-width: none;
        top: calc(var(--header-offset) - 0.45rem);
    }

    .header-search-form {
        display: block;
        width: 100%;
        max-width: none;
    }

    .header-search-box {
        display: grid;
        grid-template-columns: minmax(0, 1fr) 96px;
        align-items: stretch;
        width: 100%;
        min-width: 0;
        min-height: 48px;
    }

    .header-search-input,
    input.header-search-input[type="search"] {
        flex: initial;
        width: 100%;
        min-width: 0;
    }

    .header-search-submit {
        flex: initial;
        width: 96px;
        min-width: 96px;
    }
}

@media (max-width: 575.98px) {
    :root {
        --header-offset: calc(var(--header-height) + 4.65rem);
    }

    .navbar {
        padding-top: 0.6rem;
        padding-bottom: 0;
    }

        .navbar .container {
            width: min(100% - 0.75rem, var(--container-max-width));
        }

    .header-actions .btn {
        min-width: 100%;
    }

    .header-account-group,
    .header-logout-button {
        width: 100%;
    }

    .header-topline-mobile {
        align-items: stretch;
    }

    .site-topbar-inner {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.45rem;
        padding: 0.55rem 0.7rem;
    }

    .header-topline-mobile .site-topbar-meta,
    .site-topbar-meta {
        gap: 0.3rem 0.5rem;
    }

    .header-topline-mobile .site-topbar-item {
        font-size: 0.72rem;
    }

    .header-search-toggle {
        min-width: 44px;
        padding: 0 0.75rem;
    }

    .header-search-toggle-label {
        display: none;
    }

    .topbar-price-mode-toggle {
        align-self: flex-start;
    }

    .header-search-input,
    input.header-search-input[type="search"] {
        padding: 0.7rem 0.75rem;
        font-size: 0.9375rem;
    }

    .header-search-submit {
        width: 92px;
        min-width: 92px;
    }

    .header-mobile-preferences {
        padding: 0.85rem;
    }

    .navbar-collapse {
        position: fixed;
        top: 0.55rem;
        right: 0.5rem;
        bottom: 0.5rem;
        left: 0.5rem;
        max-height: none;
        padding: 0.85rem;
        border-radius: 28px;
        z-index: 1060;
    }

    .navbar-collapse.collapsing {
        position: fixed;
        top: 0.55rem;
        right: 0.5rem;
        bottom: 0.5rem;
        left: 0.5rem;
        height: auto !important;
        max-height: none;
        padding: 0.85rem;
        border-radius: 28px;
        z-index: 1060;
    }

    .header-mobile-section-description {
        font-size: 0.78rem;
    }

    .header-mobile-menu-title {
        font-size: 0.98rem;
    }

    .header-mobile-menu-summary,
    .header-mobile-preference-description {
        font-size: 0.78rem;
    }

    .header-mobile-menu-content {
        align-content: start;
        min-height: 100%;
        padding-bottom: 0.5rem;
    }
}

@media (max-width: 767.98px) {
    .header-account-button,
    .header-logout-button {
        flex: 0 1 auto;
        justify-content: center;
    }

    .header-account-group {
        width: 100%;
    }
}

/* Cart: header cart trigger, flyout and cart-offcanvas layout */
.header-cart-button {
    justify-self: end;
    white-space: nowrap;
}

.cart-flyout-backdrop {
    position: fixed;
    inset: 0;
    z-index: 1070;
    background: var(--overlay-scrim-soft);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    opacity: 0;
    pointer-events: none;
    transition: opacity var(--transition-speed) var(--transition-ease);
}

.cart-flyout-shell {
    position: fixed;
    top: calc(var(--header-offset) + 1.1rem);
    right: 1.25rem;
    width: min(380px, calc(100vw - 2rem));
    max-height: calc(100vh - var(--header-offset) - 2rem);
    z-index: 1080;
    opacity: 0;
    transform: translate3d(1.25rem, 0, 0) scale(0.98);
    pointer-events: none;
    transition: opacity var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
}

body.cart-open .cart-flyout-backdrop {
    opacity: 1;
    pointer-events: auto;
}

body.cart-open .cart-flyout-shell {
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
    pointer-events: auto;
}

.cart-flyout-panel {
    position: relative;
    display: flex;
    flex-direction: column;
    max-height: inherit;
    border: 1px solid var(--surface-border-translucent);
    border-radius: var(--radius-panel);
    background: linear-gradient(180deg, var(--color-white-a-84), var(--surface-layer-94));
    box-shadow: var(--shadow-medium);
    backdrop-filter: blur(24px) saturate(135%);
    -webkit-backdrop-filter: blur(24px) saturate(135%);
    overflow: hidden;
}

    .cart-flyout-panel::before {
        content: "";
        position: absolute;
        inset: 0;
        border-radius: inherit;
        pointer-events: none;
        background: linear-gradient(135deg, var(--color-white-a-42), var(--color-white-a-08) 42%, var(--primary-alpha-05));
    }

.cart-flyout-header,
.cart-flyout-body {
    position: relative;
    z-index: 1;
}

.cart-flyout-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1rem 0.85rem;
    border-bottom: 1px solid var(--border-soft);
}

.cart-flyout-kicker {
    margin-bottom: 0.2rem;
    color: var(--text-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.cart-flyout-title {
    margin: 0;
}

.cart-flyout-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.5rem;
    height: 1.5rem;
    padding: 0 0.35rem;
    margin-left: 0.35rem;
    border-radius: 99px;
    background: var(--primary);
    color: var(--color-white);
    font-size: 0.78rem;
    font-weight: 800;
    line-height: 1;
    vertical-align: middle;
}

.cart-flyout-body {
    min-height: 0;
    padding: 0.85rem 1rem 1rem;
}

.cart-flyout-empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.5rem 0.5rem;
}

.cart-flyout-empty-icon {
    width: 2.5rem;
    height: 2.5rem;
    margin-bottom: 0.75rem;
    color: var(--text-muted);
    opacity: 0.5;
}

.cart-line-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-height: 0;
    margin-bottom: 0;
    padding-right: 0.2rem;
    overflow-y: auto;
    max-height: min(48vh, 440px);
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    flex: 1 1 auto;
}

.cart-line-item {
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 0.65rem;
    align-items: start;
    padding: 0.7rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--color-white-a-52);
    transition: opacity 0.2s ease;
}

.cart-line-thumb {
    width: 48px;
    height: 48px;
    object-fit: contain;
    border-radius: 10px;
    background: var(--surface-subtle);
    padding: 0.25rem;
}

.cart-line-body {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    min-width: 0;
}

.cart-line-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
}

.cart-line-copy {
    min-width: 0;
}

.cart-line-title {
    color: var(--text-strong);
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.cart-line-code {
    margin-top: 0.1rem;
    color: var(--text-muted);
    font-size: 0.78rem;
}

.cart-line-bottom {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.cart-line-unit {
    color: var(--text-muted);
    font-size: 0.8rem;
    white-space: nowrap;
    margin-left: auto;
}

.cart-line-total {
    color: var(--text-strong);
    font-size: 0.92rem;
    font-weight: 700;
    white-space: nowrap;
}

/* --- Shipping row in cart flyout panel --- */
.cart-shipping-row {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-bottom: 0.75rem;
    padding: 0.55rem 0.75rem;
    border: 1px dashed var(--primary-alpha-20);
    border-radius: var(--radius-panel-sm);
    background: var(--primary-alpha-04);
    font-size: 0.88rem;
}

.cart-shipping-icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    color: var(--primary);
}

.cart-shipping-icon-svg {
    width: 1.15rem;
    height: 1.15rem;
}

.cart-shipping-label {
    flex: 1 1 auto;
    font-weight: 600;
    color: var(--text-strong);
}

.cart-shipping-price {
    flex: 0 0 auto;
    font-weight: 700;
    color: var(--text-strong);
    white-space: nowrap;
}

.cart-shipping-free {
    color: var(--color-success, #198754);
    font-weight: 700;
}

.cart-flyout-summary {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-soft);
}

.cart-summary-row {
    align-items: center;
    margin-bottom: 0.4rem;
    font-size: 0.92rem;
}

.cart-summary-row-total {
    margin-top: 0.55rem;
    padding-top: 0.55rem;
    border-top: 1px dashed var(--border-soft);
    color: var(--text-strong);
    font-size: 1rem;
}

#cart-offcanvas,
#cart-offcanvas .offcanvas-body,
#cart-panel {
    height: 100%;
}

#cart-panel {
    display: flex;
    flex-direction: column;
}

.cart-offcanvas-body {
    min-height: 0;
    overflow: hidden;
}

.cart-line-list {
    min-height: 0;
    overflow-y: auto;
    padding-right: 0.35rem;
}

@media (max-width: 1199.98px) {
    .header-cart-button {
        grid-area: cart;
        margin-left: 0;
    }

    .cart-flyout-shell {
        top: auto;
        right: 1rem;
        bottom: 1rem;
        width: min(420px, calc(100vw - 1.5rem));
        max-height: min(72vh, 760px);
        transform: translate3d(0, 1.25rem, 0) scale(0.98);
    }
}

@media (max-width: 575.98px) {
    .cart-flyout-shell {
        right: 0.5rem;
        left: 0.5rem;
        bottom: 0.5rem;
        width: auto;
        max-height: min(78vh, 680px);
    }

    .cart-flyout-panel {
        border-radius: 18px;
    }

    .cart-flyout-header,
    .cart-flyout-body {
        padding-left: 0.85rem;
        padding-right: 0.85rem;
    }

    .cart-line-list {
        max-height: min(42vh, 360px);
    }

    .cart-line-item {
        grid-template-columns: 42px minmax(0, 1fr);
    }

    .cart-line-thumb {
        width: 42px;
        height: 42px;
    }
}

/* --- Cart line stepper +/- --- */
.cart-line-stepper {
    display: inline-flex;
    align-items: center;
    gap: 0;
    width: auto;
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    overflow: hidden;
    background: var(--surface-cloud-84);
    flex: 0 0 auto;
}

.cart-stepper-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    background: transparent;
    border: none;
    color: var(--text-strong);
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    flex: 0 0 auto;
    transition: background-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease);
}

    .cart-stepper-btn:hover:not(:disabled) {
        background: var(--primary-alpha-08);
        color: var(--primary);
    }

    .cart-stepper-btn:active:not(:disabled) {
        background: var(--primary-alpha-14);
    }

    .cart-stepper-btn:disabled {
        opacity: 0.4;
        cursor: default;
    }

.cart-stepper-input {
    width: 40px !important;
    height: 34px;
    min-height: unset;
    padding: 0.2rem 0.15rem !important;
    text-align: center;
    border: none !important;
    border-radius: 0 !important;
    border-left: 1px solid var(--border-soft) !important;
    border-right: 1px solid var(--border-soft) !important;
    background: transparent !important;
    box-shadow: none !important;
    font-weight: 700;
    font-size: 0.9rem;
    -moz-appearance: textfield;
    margin-bottom: 0 !important;
}

    .cart-stepper-input::-webkit-inner-spin-button,
    .cart-stepper-input::-webkit-outer-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }

/* --- Cart line icon-remove button --- */
.cart-line-remove {
    flex: 0 0 auto;
    margin-left: 0;
}

.cart-line-remove-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    padding: 0;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 10px;
    color: var(--text-muted);
    cursor: pointer;
    transition: background-color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease);
}

    .cart-line-remove-btn:hover:not(:disabled) {
        background: rgba(220, 53, 69, 0.08);
        border-color: rgba(220, 53, 69, 0.22);
        color: #dc3545;
    }

    .cart-line-remove-btn:disabled {
        opacity: 0.35;
        cursor: default;
    }

.cart-line-remove-icon {
    width: 1.1rem;
    height: 1.1rem;
    pointer-events: none;
}

/* --- Cart line loading state --- */
.cart-line-item.is-updating {
    opacity: 0.45;
    pointer-events: none;
    transition: opacity 0.18s ease;
}

    .cart-line-item.is-updating::after {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        width: 1.25rem;
        height: 1.25rem;
        margin: -0.625rem 0 0 -0.625rem;
        border: 2px solid var(--border-soft);
        border-top-color: var(--primary);
        border-radius: 50%;
        animation: cart-spin 0.6s linear infinite;
    }

.cart-line-item {
    position: relative;
}

@keyframes cart-spin {
    to {
        transform: rotate(360deg);
    }
}

/* --- Panel-level lock while any cart update is in flight --- */
.cart-flyout-panel.is-cart-updating .cart-line-list {
    pointer-events: none;
}

    .cart-flyout-panel.is-cart-updating .cart-line-item:not(.is-updating) {
        opacity: 0.6;
        transition: opacity 0.18s ease;
    }

/* Checkout: stepper, forms, summary and checkout-specific responsive rules */

/* --- Compacte artikellijst in de order-summary sidebar --- */
.checkout-summary-count {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 1.4rem;
    height: 1.4rem;
    padding: 0 0.3rem;
    margin-left: auto;
    border-radius: 99px;
    background: var(--primary);
    color: var(--color-white);
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
}

.checkout-summary-lines {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    margin-bottom: 0;
    padding: 0;
    max-height: 280px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
}

.checkout-summary-line {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr);
    align-items: center;
    gap: 0.7rem;
    padding: 0.45rem 0.5rem;
    border-radius: 8px;
    background: var(--color-white-a-52);
    border: 1px solid var(--border-soft);
    font-size: 0.82rem;
}

.checkout-summary-line-thumb {
    width: 52px;
    height: 52px;
    border-radius: 12px;
    object-fit: contain;
    background: var(--color-white);
    border: 1px solid var(--border-soft);
    padding: 0.25rem;
}

.checkout-summary-line-content {
    min-width: 0;
}

.checkout-summary-line-desc {
    font-weight: 600;
    color: var(--text-strong);
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.checkout-summary-line-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.15rem;
    font-size: 0.78rem;
}

.checkout-summary-totals {
    margin-top: 0.85rem;
    padding-top: 0.85rem;
    border-top: 1px solid var(--border-soft);
}

/* Bevestigingspagina: grid dezelfde breedte als de andere stappen */
.checkout-confirmation-grid {
    align-items: start;
}

.checkout-confirmation-card {
    min-width: 0;
}

.checkout-page {
    padding: 1rem 0 4rem;
}

.checkout-steps-wrap {
    overflow-x: auto;
    padding: 0.2rem 0 0.4rem;
    margin-bottom: 1.5rem;
    scrollbar-width: none;
    scroll-behavior: smooth;
}

    .checkout-steps-wrap::-webkit-scrollbar {
        display: none;
    }

.checkout-header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1.25rem;
    margin-bottom: 1.5rem;
    padding: clamp(1.1rem, 2vw, 1.5rem);
    border: var(--surface-card-border);
    border-radius: var(--surface-card-radius);
    background: linear-gradient(135deg, var(--color-white-a-86), var(--surface-layer-96));
    box-shadow: var(--surface-card-shadow);
}

    .checkout-header > div:first-child {
        max-width: 52rem;
    }

    .checkout-header .btn {
        min-width: 180px;
        justify-self: end;
    }

    .checkout-header p.text-muted {
        max-width: 42rem;
    }

.checkout-eyebrow {
    margin-bottom: 0.5rem;
    color: var(--text-accent-brand);
    font-size: 0.8rem;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
}

.checkout-steps {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.75rem;
    margin-bottom: 0;
    min-width: 0;
}

.checkout-step {
    border: var(--surface-panel-border);
    border-radius: var(--surface-panel-radius-sm);
    background: var(--color-white-a-08);
    box-shadow: var(--surface-panel-shadow, var(--shadow-soft));
    opacity: 0.8;
    transform: scale(0.985);
    transition: opacity var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease);
}

.checkout-step-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    min-height: 76px;
    padding: 0.9rem 1rem;
    color: inherit;
    text-decoration: none;
    transition: background-color var(--transition-speed) var(--transition-ease);
}

    .checkout-step-link:hover:not(.is-disabled) {
        background: var(--primary-alpha-04);
    }

    .checkout-step-link:focus-visible {
        outline: 2px solid var(--focus-outline-color);
        outline-offset: -2px;
        border-radius: inherit;
    }

    .checkout-step-link.is-disabled {
        opacity: 0.82;
        cursor: default;
    }

.checkout-step-number {
    min-width: 2.85rem;
    height: 2.85rem;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: center;
    padding: 0 0.6rem;
    border-radius: 14px;
    background: var(--surface-strong);
    font-weight: 800;
}

.checkout-step-number-text {
    line-height: 1;
    font-size: 1rem;
}

.checkout-step-icon {
    width: 1.3rem;
    height: 1.3rem;
}

.checkout-step.is-active {
    border-color: var(--primary-alpha-20);
    background: linear-gradient(135deg, var(--color-white-a-96), var(--surface-sage-92));
    box-shadow: var(--shadow-medium);
    opacity: 1;
    transform: translateY(-1px) scale(1);
}

    .checkout-step.is-active .checkout-step-number,
    .checkout-step.is-done .checkout-step-number {
        background: var(--primary);
        color: var(--color-white);
    }

    .checkout-step.is-active .checkout-step-number {
        box-shadow: 0 8px 20px var(--primary-alpha-20);
    }

.checkout-step.is-done {
    opacity: 0.92;
    transform: scale(0.992);
}

.checkout-step-label {
    font-weight: 700;
    font-size: 0.96rem;
    color: var(--text-muted);
    line-height: 1.3;
}

.checkout-step.is-active .checkout-step-label,
.checkout-step.is-done .checkout-step-label {
    color: var(--text-strong);
}

.checkout-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.55fr) minmax(300px, 0.82fr);
    gap: 1.25rem;
    align-items: start;
}

.checkout-card {
    padding: clamp(1rem, 1.8vw, 1.35rem);
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-card);
    background: linear-gradient(180deg, var(--color-white-a-86), var(--surface-sage-96));
    box-shadow: var(--shadow-medium);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.checkout-section-heading {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

    .checkout-section-heading h1,
    .checkout-section-heading h2,
    .checkout-section-heading h3 {
        margin-bottom: 0;
    }

.checkout-section-icon {
    width: 1.4rem;
    height: 1.4rem;
    flex: 0 0 auto;
    color: var(--text-accent-brand);
}

.checkout-section-icon-success {
    color: var(--highlight);
}

.checkout-summary-card {
    position: sticky;
    top: calc(var(--header-offset) + 1rem);
    min-width: 0;
}

.checkout-line-list {
    display: grid;
    gap: 0.85rem;
}

.checkout-line-item {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    gap: 1rem;
    align-items: center;
    padding: 0.95rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--color-white-a-54);
    position: relative;
}

.checkout-line-image {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    object-fit: contain;
    background: var(--color-white);
    border: 1px solid var(--border-soft);
    padding: 0.35rem;
    align-self: flex-start;
}

.checkout-line-copy {
    min-width: 0;
}

    .checkout-line-copy .fw-semibold {
        line-height: 1.3;
    }

.checkout-line-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Checkout stepper +/- */
.checkout-line-stepper {
    display: inline-flex;
    align-items: center;
    gap: 0;
    width: auto;
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    overflow: hidden;
    background: var(--surface-cloud-84);
}

    .checkout-line-stepper .cart-stepper-input {
        width: 48px !important;
        height: 38px;
        font-weight: 700;
    }

    .checkout-line-stepper .cart-stepper-btn {
        width: 38px;
        height: 38px;
    }

/* Checkout icon remove button */
.checkout-line-remove-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 38px;
    height: 38px;
    padding: 0;
    background: transparent;
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    color: var(--text-muted);
    cursor: pointer;
    transition: background-color var(--transition-speed) var(--transition-ease),
                border-color var(--transition-speed) var(--transition-ease),
                color var(--transition-speed) var(--transition-ease);
}

    .checkout-line-remove-btn:hover:not(:disabled) {
        background: rgba(220, 53, 69, 0.08);
        border-color: rgba(220, 53, 69, 0.22);
        color: #dc3545;
    }

    .checkout-line-remove-btn:disabled {
        opacity: 0.35;
        cursor: default;
    }

.checkout-line-remove-icon {
    width: 1.15rem;
    height: 1.15rem;
    pointer-events: none;
}

.checkout-line-remove-form {
    display: inline-flex;
}

.checkout-line-qty-form {
    display: inline-flex;
    align-items: center;
    gap: 0;
    flex-wrap: nowrap;
}

    .checkout-line-qty-form .btn {
        min-height: 38px;
        border-radius: 10px;
        font-weight: 700;
        padding-inline: 0.95rem;
    }

.checkout-line-item > .checkout-line-pricing {
    align-self: center;
    text-align: right;
    min-width: 80px;
}

.checkout-line-pricing .small {
    font-size: 0.95rem;
}

.checkout-line-pricing .fw-semibold {
    font-size: 1.35rem;
    line-height: 1.1;
}

.checkout-line-item > .checkout-line-pricing {
    min-width: 86px;
    text-align: right;
}

.checkout-summary-row {
    margin-bottom: 0.75rem;
}

.checkout-summary-label {
    display: inline-flex;
    align-items: center;
    color: var(--text-muted);
}

.checkout-summary-total {
    padding-top: 0.85rem;
    margin-top: 0.85rem;
    border-top: 1px dashed var(--border-soft);
    font-size: 1.05rem;
    color: var(--text-strong);
}

.checkout-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.checkout-email-validation-box {
    margin-top: 1rem;
    padding: 0.9rem 1rem;
    border-radius: 14px;
    border: 1px solid var(--border-soft);
    background: var(--surface-cloud-92);
}

.checkout-email-validation-note {
    margin-top: 0.55rem;
    font-size: 0.92rem;
    color: var(--text-muted);
}

    .checkout-email-validation-note.is-pending {
        color: var(--highlight);
        font-weight: 600;
    }

.form-group-span-2 {
    grid-column: span 2;
}

.checkout-choice-group {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.checkout-choice {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 54px;
    padding: 0.85rem 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-input);
    background: var(--surface-cloud-92);
}

    .checkout-choice:has(input:checked) {
        border-color: var(--primary-alpha-22);
        background: var(--primary-soft);
        box-shadow: inset 0 0 0 1px var(--primary-alpha-08);
    }

.checkout-choice-icon,
.checkout-inline-icon {
    width: 1.15rem;
    height: 1.15rem;
    flex: 0 0 auto;
    color: var(--text-accent);
}

.checkout-inline-icon {
    margin-right: 0.55rem;
    vertical-align: -0.12em;
}

.checkout-choice-icon {
    width: 1.3rem;
    height: 1.3rem;
}

.checkout-login-panel {
    padding: 1rem 1.1rem;
    border: 1px solid var(--primary-alpha-16);
    border-radius: 18px;
    background: linear-gradient(135deg, var(--primary-alpha-08), var(--color-white-a-94));
}

/* --- Delivery address toggle in step 2 --- */
.checkout-delivery-toggle {
    margin-top: 1.25rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--surface-subtle);
}

.checkout-delivery-same-check {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    cursor: pointer;
    margin: 0;
    font-weight: 600;
    font-size: 0.92rem;
    color: var(--text-strong);
}

    .checkout-delivery-same-check .form-check-input {
        flex-shrink: 0;
        width: 1.15rem;
        height: 1.15rem;
        margin: 0;
        cursor: pointer;
    }

.checkout-delivery-section {
    margin-top: 0.85rem;
    padding: 1rem;
    border: 1px dashed var(--primary-alpha-20);
    border-radius: var(--radius-panel-sm);
    background: var(--primary-alpha-04);
    animation: fadeSlideIn 0.18s ease;
}

@keyframes fadeSlideIn {
    from { opacity: 0; transform: translateY(-6px); }
    to   { opacity: 1; transform: translateY(0); }
}

.checkout-section-divider {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.9rem;
    font-weight: 700;
    font-size: 0.88rem;
    color: var(--primary);
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

    .checkout-section-divider svg {
        width: 1rem;
        height: 1rem;
        flex-shrink: 0;
    }

.checkout-checkboxes {
    display: grid;
    gap: 0.6rem;
    margin-top: 1.25rem;
    padding: 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--color-white-a-56);
}

.checkout-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    justify-content: flex-start;
    align-items: center;
    margin-top: 1.5rem;
}

    .checkout-actions .btn,
    .checkout-actions form {
        min-width: 0;
    }

.checkout-review-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.25rem;
}

    .checkout-review-grid > section {
        padding: 1rem;
        border: 1px solid var(--border-soft);
        border-radius: var(--radius-panel-sm);
        background: var(--color-white-a-52);
    }

.checkout-review-title {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.75rem;
    color: var(--text-strong);
}

.checkout-pay-card,
.checkout-confirmation-card {
    max-width: 860px;
}

.checkout-pay-box {
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    align-items: center;
    padding: 1.25rem;
    margin-top: 1.25rem;
    border-radius: var(--radius-panel);
    background: linear-gradient(135deg, var(--accent-alpha-08), var(--color-white-a-95));
    border: 1px solid var(--border-accent-brand-soft);
}

.checkout-pay-amount {
    font-size: clamp(1.8rem, 3vw, 2.6rem);
    font-weight: 800;
    color: var(--text-strong);
}

@media (max-width: 1199.98px) {
    .checkout-header {
        grid-template-columns: 1fr;
        align-items: start;
    }

        .checkout-header .btn {
            justify-self: start;
        }

    .checkout-steps {
        grid-template-columns: repeat(auto-fit, minmax(148px, 1fr));
    }

    .checkout-grid {
        grid-template-columns: minmax(0, 1.3fr) minmax(280px, 0.9fr);
    }
}

@media (max-width: 991.98px) {
    .checkout-header,
    .checkout-grid,
    .checkout-review-grid,
    .checkout-form-grid {
        grid-template-columns: 1fr;
    }

    .checkout-steps {
        display: flex;
        min-width: max-content;
        gap: 0.65rem;
        padding-bottom: 0.1rem;
        scroll-snap-type: x proximity;
    }

    .checkout-steps-wrap {
        scroll-padding-left: 1rem;
        scroll-padding-right: 1rem;
    }

    .checkout-step {
        min-width: 184px;
        scroll-snap-align: start;
    }

    .checkout-header {
        padding: 1.1rem;
    }

    .form-group-span-2 {
        grid-column: auto;
    }

    .checkout-line-item {
        grid-template-columns: auto minmax(0, 1fr);
    }

        .checkout-line-item > .checkout-line-pricing {
            grid-column: 2;
            text-align: left;
        }

    .checkout-summary-card {
        position: static;
    }

    .checkout-actions > .btn,
    .checkout-actions > form,
    .checkout-actions > a {
        width: 100%;
    }

    .checkout-actions form .btn {
        width: 100%;
    }

    .checkout-pay-box {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 767.98px) {
    .checkout-page {
        padding: 0.5rem 0 3rem;
    }

    .checkout-header {
        gap: 1rem;
        margin-bottom: 1.1rem;
    }

        .checkout-header .btn {
            width: 100%;
            justify-self: stretch;
        }

    .checkout-step {
        min-width: 176px;
        scroll-snap-align: center;
    }

        .checkout-step:not(.is-active) {
            opacity: 0.68;
        }

    .checkout-step-link {
        min-height: 64px;
        gap: 0.6rem;
        padding: 0.7rem 0.8rem;
    }

    .checkout-step-number {
        min-width: 2.3rem;
        height: 2.3rem;
        padding: 0 0.45rem;
        border-radius: 12px;
    }

    .checkout-step-icon {
        width: 1rem;
        height: 1rem;
    }

    .checkout-step-number-text {
        font-size: 0.86rem;
    }

    .checkout-step-label {
        font-size: 0.84rem;
    }

    .checkout-card {
        padding: 1rem;
        border-radius: var(--radius-panel);
    }

    .checkout-section-heading {
        margin-bottom: 0.85rem;
        gap: 0.6rem;
    }

    .checkout-section-icon {
        width: 1.2rem;
        height: 1.2rem;
    }

    .checkout-line-item {
        grid-template-columns: auto minmax(0, 1fr);
        gap: 0.8rem;
        padding: 0.85rem;
    }

    .checkout-line-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }

    .checkout-line-item > .checkout-line-pricing {
        grid-column: 1 / -1;
        text-align: left;
    }

    .checkout-choice-group {
        display: grid;
        grid-template-columns: 1fr;
    }

    .checkout-choice {
        width: 100%;
    }

    .checkout-review-grid {
        gap: 0.9rem;
    }

    .checkout-checkboxes {
        padding: 0.9rem;
    }

    .checkout-summary-row {
        font-size: 0.92rem;
    }

    .checkout-pay-amount {
        font-size: clamp(1.45rem, 8vw, 2rem);
    }
}

@media (max-width: 479.98px) {
    .checkout-header {
        padding: 0.95rem;
    }

    .checkout-step {
        min-width: 156px;
    }

        .checkout-step:not(.is-active) {
            transform: scale(0.98);
        }

    .checkout-step-link {
        min-height: 58px;
        padding: 0.65rem 0.7rem;
    }

    .checkout-step-number {
        min-width: 2.1rem;
        height: 2.1rem;
    }

    .checkout-card {
        padding: 0.9rem;
    }

    .checkout-line-item {
        grid-template-columns: 48px minmax(0, 1fr);
    }

    .checkout-line-image {
        width: 48px;
        height: 48px;
    }
}

/* Verberg de handmatige Update-knop zodra JS beschikbaar is */
.js .checkout-qty-fallback-btn {
    display: none;
}

/* Checkout line loading state */
.checkout-line-item.is-updating {
    opacity: 0.45;
    pointer-events: none;
    transition: opacity 0.18s ease;
}

.checkout-line-item.is-updating::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1.25rem;
    height: 1.25rem;
    margin: -0.625rem 0 0 -0.625rem;
    border: 2px solid var(--border-soft);
    border-top-color: var(--primary);
    border-radius: 50%;
    animation: cart-spin 0.6s linear infinite;
}

/* Checkout grid-level loading state during AJAX update */
.is-checkout-updating {
    pointer-events: none;
}

    .is-checkout-updating .checkout-line-item:not(.is-updating) {
        opacity: 0.6;
        transition: opacity 0.18s ease;
    }

/* =====================================================
   Confirmation / Success page
   ===================================================== */

.checkout-confirmation-page {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.checkout-success-banner {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.25rem 1.5rem;
    padding: 1.75rem 2rem;
    border-radius: var(--radius-panel);
    background: linear-gradient(135deg, rgba(var(--client-success-rgb), 0.07), var(--color-white-a-95));
    border: 1px solid rgba(var(--client-success-rgb), 0.22);
}

.checkout-success-icon-wrap {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: rgba(var(--client-success-rgb), 0.12);
}

.checkout-success-icon {
    width: 2rem;
    height: 2rem;
    color: rgb(var(--client-success-rgb));
}

.checkout-success-title {
    margin-bottom: 0.25rem;
    font-size: clamp(1.1rem, 2.5vw, 1.45rem);
    color: var(--text-strong);
}

.checkout-success-copy {
    margin-bottom: 0;
    color: var(--text-muted);
}

.checkout-success-ref-badge {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.15rem;
    padding: 0.65rem 1rem;
    border-radius: var(--radius-panel-sm);
    background: rgba(var(--client-success-rgb), 0.08);
    border: 1px solid rgba(var(--client-success-rgb), 0.16);
}

.checkout-success-ref-label {
    font-size: 0.78rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.checkout-success-ref-value {
    font-size: 1.05rem;
    font-weight: 700;
    color: var(--text-strong);
    font-variant-numeric: tabular-nums;
}

.checkout-confirmation-order > .checkout-card {
    border: 1px solid var(--border-soft);
    box-shadow: none;
}

.checkout-confirmation-order .checkout-summary-lines {
    display: grid;
    gap: 0.65rem;
}

.checkout-confirmation-order .checkout-summary-line {
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr);
    align-items: start;
    gap: 0.5rem 1.25rem;
    padding: 0.85rem 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--color-white-a-54);
}

.checkout-confirmation-order .checkout-summary-line-thumb {
    width: 64px;
    height: 64px;
}

.checkout-confirmation-order .checkout-summary-line-desc {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-strong);
}

.checkout-confirmation-order .checkout-summary-line-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
    white-space: normal;
}

.checkout-confirmation-order .checkout-summary-line-meta .text-muted {
    font-size: 0.88rem;
}

.checkout-confirmation-order .checkout-summary-line-meta .fw-semibold {
    font-size: 1.05rem;
}

.checkout-confirmation-order .checkout-summary-totals {
    margin-top: 1rem;
    padding-top: 0.25rem;
}

.checkout-confirmation-order .checkout-summary-total {
    font-size: 1.1rem;
}

.checkout-confirmation-actions {
    padding-top: 1.25rem;
    border-top: 1px solid var(--border-soft);
    margin-top: 0;
}

.checkout-section-icon-error {
    color: rgb(var(--client-danger-rgb));
}

/* --- Shipping row in checkout step 1 line list --- */
.checkout-shipping-row {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    margin-top: 0.65rem;
    padding: 0.75rem 0.95rem;
    border: 1px dashed var(--primary-alpha-20);
    border-radius: var(--radius-panel-sm);
    background: var(--primary-alpha-04);
}

.checkout-shipping-icon {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    color: var(--primary);
}

.checkout-shipping-icon-svg {
    width: 1.25rem;
    height: 1.25rem;
}

.checkout-shipping-copy {
    flex: 1 1 auto;
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 0.1rem;
}

.checkout-shipping-label {
    font-weight: 700;
    color: var(--text-strong);
    font-size: 0.9rem;
}

.checkout-shipping-desc {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.checkout-shipping-price {
    flex: 0 0 auto;
    white-space: nowrap;
    font-size: 0.95rem;
}

.checkout-shipping-free {
    color: var(--color-success, #198754);
    font-weight: 700;
}

/* --- Shipping row in order summary sidebar --- */
.checkout-summary-row-shipping {
    padding: 0.35rem 0;
    border-radius: 6px;
}

.checkout-summary-shipping-label {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
}

.checkout-summary-shipping-icon {
    width: 1rem;
    height: 1rem;
    color: var(--primary);
    opacity: 0.8;
    flex-shrink: 0;
}

@media (max-width: 767.98px) {
    .checkout-summary-line {
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 0.6rem;
    }

    .checkout-summary-line-thumb {
        width: 44px;
        height: 44px;
        border-radius: 10px;
    }

    .checkout-success-banner {
        grid-template-columns: auto 1fr;
        padding: 1.25rem;
        gap: 1rem;
    }

    .checkout-success-ref-badge {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
    }

    .checkout-confirmation-actions > .btn {
        width: 100%;
    }
}

/* ============================================================
   Products: cards, listing controls, sidebar filters, gallery
   ============================================================ */

/*  Product card  */

/* Full-card clickable area — sits behind the card content */
.col {
    position: relative;
}

.product-card-area-link {
    position: absolute;
    inset: 0;
    z-index: 1;
    border-radius: var(--radius-card);
    /* no focus ring here — the title link handles keyboard */
}

.product-card {
    display: flex;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-card);
    background: var(--surface-base);
    box-shadow: var(--shadow-soft);
    container-type: inline-size;
    /* Lift card above the area link for form clicks */
    position: relative;
    z-index: 2;
    pointer-events: none;   /* let area-link handle navigation... */
    transition: box-shadow var(--transition-speed) var(--transition-ease),
                transform   var(--transition-speed) var(--transition-ease),
                border-color var(--transition-speed) var(--transition-ease);
}

/* ...but re-enable pointer-events on interactive children */
.product-card *,
.product-card-link,
.product-card-add-button,
.product-card-add-form {
    pointer-events: auto;
}

@media (hover: hover) {
    .col:has(.product-card-area-link:hover) .product-card,
    .product-card:hover {
        box-shadow: var(--shadow-medium);
        transform: translateY(-2px);
        border-color: var(--primary-alpha-16);
    }
}

.product-card-link {
    color: inherit;
    text-decoration: none;
}

.product-card-title-link:focus-visible {
    outline: 2px solid var(--focus-outline-color);
    outline-offset: 2px;
    border-radius: 4px;
}

.product-card-link:hover .product-card-title,
.product-card-title-link:focus-visible .product-card-title {
    color: var(--text-accent);
}

/* Thumbnail */
.product-card .thumb-frame {
    position: relative;
    height: 190px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface-subtle);
    border-bottom: 1px solid var(--border-soft);
}

.product-card .thumb-frame.is-image-pending {
    background: #fff;
}

.product-card .thumb-img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    object-position: center;
    padding: 0.5rem;
    transition: transform 0.35s var(--transition-ease);
}

@media (hover: hover) {
    .product-card:hover .thumb-img,
    .col:has(.product-card-area-link:hover) .thumb-img {
        transform: scale(1.05);
    }
}

.product-card .thumb-frame.is-image-pending::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(245, 245, 245, 0.95) 50%,
        rgba(255, 255, 255, 0) 100%
    );
    transform: translateX(-100%);
    animation: image-pending-sweep 1.25s ease-in-out infinite;
    pointer-events: none;
}

@keyframes image-pending-sweep {
    to {
        transform: translateX(100%);
    }
}

.product-favorite-form {
    position: absolute;
    top: 0.45rem;
    right: 0.45rem;
    z-index: 6;
    pointer-events: auto;
}

.product-favorite-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid var(--border-soft);
    border-radius: 999px;
    background: var(--color-white-a-92);
    color: var(--text-soft);
    box-shadow: var(--shadow-soft);
}

.product-favorite-button:hover,
.product-favorite-button:focus-visible {
    color: var(--color-danger-600, #dc3545);
    border-color: var(--color-danger-200, #f5c2c7);
}

.product-favorite-button.is-active {
    color: var(--color-danger-600, #dc3545);
    border-color: var(--color-danger-300, #f1aeb5);
    background: rgba(220, 53, 69, 0.09);
}

/* Badge overlay */
.product-card-badges {
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    z-index: 2;
    pointer-events: none;
}

/* Badge is only visible when it has children */
.product-card-badges:empty {
    display: none;
}

.product-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.15rem 0.5rem;
    border-radius: var(--radius-pill);
    font-size: 0.7rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.4;
}

.product-badge--discount {
    background: var(--accent);
    color: #fff;
    box-shadow: 0 2px 6px rgba(var(--accent-rgb), 0.35);
}

.product-badge--promo {
    background: var(--color-danger-500);
    color: #fff;
}

.product-badge--new {
    background: var(--color-success-500);
    color: #fff;
}

.product-badge--favorite {
    background: rgba(220, 53, 69, 0.12);
    color: var(--color-danger-700, #b02a37);
    border: 1px solid rgba(220, 53, 69, 0.25);
}

/* Card body */
.product-card-body {
    display: grid;
    gap: 0.22rem;
    align-content: start;
    padding: 0.8rem 0.85rem 0.45rem;
}

.product-card-title {
    margin: 0;
    color: var(--text-strong);
    font-size: 0.88rem;
    font-weight: 700;
    line-height: 1.35;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    transition: color var(--transition-speed) var(--transition-ease);
}

.product-card-code {
    color: var(--text-soft);
    font-size: 0.74rem;
    display: block;
}

/* Pricing */
.product-card-pricing {
    display: flex;
    align-items: baseline;
    gap: 0.4rem;
    flex-wrap: wrap;
    margin-top: 0.25rem;
}

.product-card-price {
    color: var(--text-strong);
    font-size: 1.05rem;
    font-weight: 800;
}

.product-card-price--deal {
    color: var(--accent-strong);
}

.product-card-price-was {
    color: var(--text-soft);
    font-size: 0.82rem;
    font-weight: 500;
    text-decoration: line-through;
}

/* Footer */
.product-card-footer {
    margin-top: auto;
    display: flex;
    justify-content: stretch;
    padding: 0 0.85rem 0.8rem;
}

.product-card-add-form {
    width: 100%;
}

.product-card-add-button {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    width: 100%;
    min-height: 38px;
    padding: 0.45rem 0.85rem;
    border: 1px solid var(--primary-alpha-18);
    border-radius: var(--shape-pill);
    background: var(--primary-alpha-05);
    color: var(--text-default);
    font-size: 0.82rem;
    font-weight: 700;
    box-shadow: none;
    overflow: visible;
    transition: background-color var(--transition-speed) var(--transition-ease),
                border-color     var(--transition-speed) var(--transition-ease),
                color            var(--transition-speed) var(--transition-ease);
}

    .product-card-add-button:hover,
    .product-card-add-button:focus-visible {
        background: var(--primary);
        border-color: var(--primary);
        color: var(--text-on-primary);
    }

    /* Loading state */
    .product-card-add-button.is-loading {
        pointer-events: none;
        opacity: 0.82;
    }

    .product-card-add-button.is-loading .product-card-add-icon,
    .product-card-add-button.is-loading .product-card-add-label {
        opacity: 0;
    }

    .product-card-add-button.is-loading::after {
        content: '';
        position: absolute;
        inset: 0;
        margin: auto;
        width: 1.1rem;
        height: 1.1rem;
        border: 2px solid currentColor;
        border-right-color: transparent;
        border-radius: 50%;
        animation: btn-spinner 0.65s linear infinite;
    }

    /* Success state */
    .product-card-add-button.is-added {
        background: var(--color-success-500, #22c55e);
        border-color: var(--color-success-500, #22c55e);
        color: #fff;
        pointer-events: none;
    }

.product-card-add-icon {
    flex-shrink: 0;
}

/* Skeleton */
.product-card .skeleton-thumb {
    height: 190px;
    display: block;
    border-radius: var(--bs-border-radius) var(--bs-border-radius) 0 0;
    background: var(--bs-tertiary-bg);
    animation: skeleton-pulse 1.2s ease-in-out infinite;
}

@keyframes skeleton-pulse {
    0%   { opacity: .6; }
    50%  { opacity: .9; }
    100% { opacity: .6; }
}

/* Grid: fixed minimum height */
#product-list.products-list--grid .product-card:not(.skeleton) {
    min-height: 340px;
}

/*  Result count  */
.products-result-count {
    color: var(--text-muted);
    font-size: 0.84rem;
    font-weight: 600;
    white-space: nowrap;
    min-height: 1.2em; /* prevent layout jump when text loads */
}

/*  List mode  */
#product-list.products-list--list > .col {
    width: 100%;
}

#product-list.products-list--list .product-card:not(.skeleton) {
    flex-direction: row;
    align-items: stretch;
    min-height: 178px;
    height: 178px;
}

    #product-list.products-list--list .product-card:not(.skeleton) .product-card-link:first-child {
        width: 178px;
        min-width: 178px;
        height: 176px;
        flex: 0 0 178px;
    }

    #product-list.products-list--list .product-card:not(.skeleton) .thumb-frame {
        height: 176px;
        min-height: 176px;
        max-height: 176px;
        border-right: 1px solid var(--border-soft);
        border-bottom: 0;
    }

    #product-list.products-list--list .product-card:not(.skeleton) .product-card-body {
        flex: 1 1 auto;
        min-height: 0;
        gap: 0.2rem;
        padding: 0.8rem 0.9rem;
        align-content: center;
    }

    #product-list.products-list--list .product-card:not(.skeleton) .product-card-title {
        -webkit-line-clamp: 2;
    }

    #product-list.products-list--list .product-card:not(.skeleton) .product-card-footer {
        min-width: 164px;
        flex: 0 0 164px;
        padding: 0.8rem 0.9rem;
        border-left: 1px solid var(--border-soft);
        align-items: center;
        justify-content: center;
    }

/*  Breadcrumb  */
.breadcrumb-row {
    margin-bottom: 1.25rem;
}

.product-breadcrumb-shell {
    display: flex;
    align-items: center;
    min-height: 58px;
    padding: 0.65rem 0.9rem;
    border: 1px solid var(--color-white-a-07);
    border-radius: var(--radius-panel-sm);
    background: linear-gradient(180deg, var(--color-white-a-78), var(--surface-filter-92));
    box-shadow: var(--shadow-soft);
    backdrop-filter: blur(18px) saturate(125%);
    -webkit-backdrop-filter: blur(18px) saturate(125%);
}

/*  Search results hero  */
.products-results-hero {
    display: block;
    width: 100%;
    padding: 1.15rem 1.3rem;
    border: 1px solid var(--products-hero-border);
    border-radius: var(--radius-card);
    background: var(--products-hero-bg);
    box-shadow: var(--products-hero-shadow);
}

.products-results-kicker {
    display: inline-block;
    margin-bottom: 0.45rem;
    padding: 0.25rem 0.65rem;
    border-radius: var(--radius-pill);
    background: var(--surface-muted-strong);
    color: var(--text-accent);
    font-size: 0.82rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.products-results-title {
    color: var(--text-strong);
    font-size: 1.7rem;
}

.products-results-copy {
    color: var(--text-soft);
}

/*  Empty state  */
.products-empty-state {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3.5rem 1.5rem;
    text-align: center;
    border: 1px dashed var(--border-muted);
    border-radius: var(--radius-card);
    background: var(--surface-subtle);
    gap: 0.65rem;
}

.products-empty-icon {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: var(--surface-muted);
    color: var(--text-soft);
}

.products-empty-svg {
    width: 28px;
    height: 28px;
}

.products-empty-title {
    margin: 0;
    color: var(--text-strong);
    font-size: 1.05rem;
    font-weight: 700;
}

.products-empty-copy {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.92rem;
}

/*  Controls bar  */
.products-list-controls {
    position: static;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    margin-bottom: 0.65rem;
    padding: 0;
    background: transparent;
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
    border-radius: 0;
}

.products-list-controls-left {
    flex: 1 1 auto;
    min-width: 0;
}

.products-result-count {
    color: var(--text-muted);
    font-size: 0.84rem;
    font-weight: 600;
    white-space: nowrap;
    min-height: 1.2em; /* prevent layout jump when text loads */
}

.products-list-controls-inner {
    display: inline-flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.35rem;
    border: 1px solid var(--primary-alpha-14);
    border-radius: var(--shape-pill);
    background: var(--color-white-a-92);
    box-shadow: var(--surface-panel-shadow);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
}

.products-sort {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.products-sort-select {
    min-height: 0;
    height: 32px;
    line-height: 1.1;
    padding: 0.22rem 1rem 0.22rem 0.45rem;
    font-size: 0.78rem;
    width: fit-content;
    min-width: 0;
    border-radius: var(--shape-pill);
    margin: 0;
    border-color: var(--border-soft);
    background-color: transparent;
}

.products-view-toggle .btn {
    min-height: 32px;
    min-width: 32px;
    width: 32px;
    padding: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    line-height: 1;
    border-radius: var(--shape-pill);
}

.products-view-toggle-icon {
    width: 0.95rem;
    height: 0.95rem;
}

.products-view-toggle .btn.active {
    color: var(--text-accent);
    border-color: var(--primary-alpha-35);
    background: var(--primary-alpha-08);
}

/*  Layout  */
.products-layout {
    /* Remove align-items: start — columns must stretch to full row height
       so the sticky sidebar has room to travel as the product list scrolls */
    align-items: stretch;
}

/* Sticky sidebar: the column stretches to the row height (= product list height),
   the inner wrapper is sticky within that tall column */
.products-sidebar-sticky-col {
    align-self: stretch;
}

.products-sidebar-sticky-col > .products-sidebar-desktop {
    position: sticky;
    top: calc(var(--header-offset, 110px) + 1rem);
    max-height: calc(100vh - var(--header-offset, 110px) - 2rem);
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-width: thin;
    scrollbar-color: var(--border-muted) transparent;
    padding-right: 2px;
}

    .products-sidebar-sticky-col > .products-sidebar-desktop::-webkit-scrollbar {
        width: 4px;
    }

    .products-sidebar-sticky-col > .products-sidebar-desktop::-webkit-scrollbar-thumb {
        background: var(--border-muted);
        border-radius: 4px;
    }

/*  Filter checkboxes — reset Bootstrap conflicts  */
/* Bootstrap .form-check adds padding-left: 1.5em and floats the input.
   Our flex layout needs position: static and margin: 0 on the input. */
.products-filter-check.form-check {
    display: flex;
    align-items: center;        /* vertically centred — not flex-start */
    gap: 0.55rem;
    padding: 0.3rem 0.4rem;     /* override Bootstrap's padding-left: 1.5em */
    border-radius: 8px;
    margin-bottom: 0;
    transition: background-color var(--transition-speed) var(--transition-ease);
    cursor: pointer;
}

    .products-filter-check.form-check:hover {
        background: var(--interaction-quiet-bg);
    }

.products-filter-check .form-check-input {
    /* Reset Bootstrap float/margin positioning */
    position: static;
    float: none;
    margin: 0;
    flex: 0 0 auto;
    width: 1rem;
    height: 1rem;
    cursor: pointer;
}

.products-filter-check .form-check-label {
    font-size: 0.88rem;
    line-height: 1.3;
    cursor: pointer;
    flex: 1 1 auto;
    margin: 0;                   /* remove Bootstrap label margin */
}

/*  Filter panel — compact  */
.products-filter-panel {
    display: grid;
    gap: 0.3rem;
}

.products-filter-section {
    padding: 0.45rem 0.6rem 0.4rem;
    border: 1px solid var(--border-cool-soft);
    border-radius: 8px;
    background: var(--surface-border-translucent);
}

.products-filter-section-head {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    margin-bottom: 0.25rem;
    cursor: default;
    user-select: text;
    pointer-events: none;
}

    .products-filter-section-head:hover .products-filter-title,
    .products-sidebar-section-head:hover .products-sidebar-title {
        color: inherit;
    }

.products-filter-title {
    margin: 0;
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-muted);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.products-filter-title-row {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    min-width: 0;
}

.products-filter-options {
    display: grid;
    gap: 0;
}

.products-filter-check.form-check {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    padding: 0.15rem 0.25rem;
    border-radius: 5px;
    margin-bottom: 0;
    transition: background-color var(--transition-speed) var(--transition-ease);
    cursor: pointer;
}

    .products-filter-check.form-check:hover {
        background: var(--interaction-quiet-bg);
    }

.products-filter-check .form-check-input {
    position: static;
    float: none;
    margin: 0;
    flex: 0 0 auto;
    width: 0.875rem;
    height: 0.875rem;
    cursor: pointer;
}

.products-filter-check .form-check-label {
    font-size: 0.82rem;
    line-height: 1.2;
    cursor: pointer;
    flex: 1 1 auto;
    margin: 0;
    color: var(--text-default);
}

.products-filter-count-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 16px;
    height: 16px;
    padding: 0 0.28rem;
    border-radius: var(--radius-pill);
    background: var(--primary);
    color: #fff;
    font-size: 0.65rem;
    font-weight: 800;
    line-height: 1;
    flex-shrink: 0;
}

.products-filter-apply-row {
    display: flex;
    justify-content: stretch;
    margin-top: 0.35rem;
    padding-top: 0.35rem;
    border-top: 1px solid var(--border-soft);
}

.products-filter-apply {
    width: 100%;
    min-height: 28px;
    padding: 0.18rem 0.75rem;
    border-radius: var(--radius-pill);
    font-size: 0.78rem;
    font-weight: 700;
    text-align: center;
    justify-content: center;
    display: flex;
    align-items: center;
}

/* Hide chevron — filters are always open */
.products-filter-chevron {
    display: none;
}

/*  Mobile toolbar  */
.products-mobile-toolbar {
    position: sticky;
    top: 0.5rem;
    z-index: 20;
}

.products-mobile-trigger {
    width: 100%;
    min-height: 46px;
    border-radius: 14px;
    font-weight: 700;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    background: var(--color-white-a-92);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    border-color: var(--primary-alpha-16);
}

    .products-mobile-trigger:hover,
    .products-mobile-trigger:focus-visible {
        background: var(--interaction-quiet-bg);
        border-color: var(--primary-alpha-24);
    }

.products-mobile-trigger-icon {
    color: var(--text-accent);
    flex-shrink: 0;
}

.products-mobile-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 0.35rem;
    border-radius: var(--radius-pill);
    background: var(--primary);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 800;
    line-height: 1;
    margin-left: 0.15rem;
}

/*  Sidebar sections  */
.products-sidebar.offcanvas-lg {
    border: 0;
    background: var(--color-transparent);
}

.products-sidebar-header {
    border-bottom: 1px solid var(--border-muted);
}

.products-sidebar-body {
    display: block;
    width: 100%;
    flex: 0 0 auto;
    padding: 0;
}

.products-sidebar-mobile .products-sidebar-body {
    height: calc(100vh - 72px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
}

.products-sidebar-section {
    display: block;
    width: 100%;
    margin-bottom: 0.85rem;
    padding: 0.95rem 1rem;
    border: 1px solid var(--products-sidebar-border);
    border-radius: var(--radius-panel);
    background: var(--products-sidebar-bg);
    box-shadow: var(--products-sidebar-shadow);
}

    .products-sidebar-section:last-child {
        margin-bottom: 0;
    }

.products-sidebar-section-head {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 0.15rem;
    margin-bottom: 0.65rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-soft);
    cursor: default;
    user-select: text;
}

.products-sidebar-kicker {
    display: inline-block;
    color: var(--text-muted);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.products-sidebar-title {
    margin: 0;
    color: var(--text-strong);
    font-size: 1rem;
    font-weight: 700;
}

/*  Product tree  */
.products-tree-list,
.products-tree-list ul,
.products-tree-children .products-tree-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.products-tree-item {
    margin: 0;
}

/* Root-level links */
.products-tree-list > .products-tree-item > .products-tree-link {
    font-weight: 600;
    color: var(--text-default);
}

.products-tree-link {
    display: flex;
    align-items: center;
    width: 100%;
    padding: 0.28rem 0.55rem;
    border-radius: 8px;
    color: var(--text-muted);
    font-size: 0.88rem;
    font-weight: 500;
    text-decoration: none;
    line-height: 1.3;
    transition: background-color var(--transition-speed) var(--transition-ease),
                color var(--transition-speed) var(--transition-ease);
}

    .products-tree-link:hover,
    .products-tree-link:focus-visible {
        background: var(--interaction-quiet-bg);
        color: var(--text-strong);
        outline: none;
    }

    .products-tree-link.is-selected {
        background: var(--interaction-quiet-bg-hover);
        color: var(--primary);
        font-weight: 700;
    }

/* Nested children — indented with accent left border */
.products-tree-children {
    display: none;
    margin-top: 0.1rem;
    margin-left: 0.85rem;
    padding-left: 0.6rem;
    border-left: 2px solid var(--primary-alpha-10);
}

    .products-tree-children.is-open {
        display: block;
    }

    .products-tree-children .products-tree-link {
        font-size: 0.84rem;
        color: var(--text-muted);
        font-weight: 500;
        padding: 0.22rem 0.5rem;
    }

    .products-tree-children .products-tree-children .products-tree-link {
        font-size: 0.82rem;
        padding: 0.18rem 0.45rem;
        color: var(--text-soft);
    }

.products-tree-item.is-selected > .products-tree-children {
    display: block;
}

/* Tree back link */
.products-tree-back {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin-bottom: 0.45rem;
    padding: 0.25rem 0.5rem;
    border-radius: 8px;
    color: var(--text-muted);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    background: var(--primary-alpha-04);
    border: 1px solid var(--primary-alpha-10);
    transition: background-color var(--transition-speed) var(--transition-ease),
                color var(--transition-speed) var(--transition-ease);
}

    .products-tree-back:hover,
    .products-tree-back:focus-visible {
        background: var(--interaction-quiet-bg-hover);
        color: var(--text-strong);
        outline: none;
    }

.products-tree-back-icon {
    transform: rotate(180deg);
    width: 0.8rem;
    height: 0.8rem;
    display: block;
    flex-shrink: 0;
}

/*  Back to top  */
.products-back-to-top {
    position: fixed;
    right: 1.25rem;
    bottom: 1.5rem;
    z-index: 1200;
    width: 44px;
    height: 44px;
    border: 1px solid var(--primary-alpha-20);
    border-radius: var(--shape-pill);
    background: var(--surface-base);
    color: var(--text-accent);
    box-shadow: var(--shadow-medium);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transform: translateY(10px);
    transition: opacity 160ms ease, transform 160ms ease, visibility 160ms ease,
                background-color 160ms ease, border-color 160ms ease;
}

    .products-back-to-top.is-visible {
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        transform: translateY(0);
    }

    .products-back-to-top:hover,
    .products-back-to-top:focus-visible {
        background: var(--interaction-quiet-bg-hover);
        border-color: var(--primary-alpha-30);
        color: var(--text-strong);
        outline: none;
    }

.products-back-to-top-icon {
    transform: rotate(-90deg);
    width: 1.1rem;
    height: 1.1rem;
    display: block;
}

/*  Responsive tweaks  */
@media (max-width: 1199.98px) {
    .products-results-hero {
        padding: 0.95rem 1rem;
        border-radius: var(--radius-panel-sm);
    }

    .products-results-title {
        font-size: 1.4rem;
    }
}

@media (max-width: 991.98px) {
    .products-sidebar.offcanvas-lg {
        width: min(92vw, 400px);
        background: var(--products-sidebar-mobile-bg);
        border-right: 1px solid var(--border-muted);
    }

    .products-sidebar-body {
        display: block;
        padding: 1rem;
    }

    .products-filter-section {
        padding: 0.5rem 0.65rem;
    }
}

@media (max-width: 767.98px) {
    .products-list-controls {
        margin-bottom: 0.5rem;
    }

    .products-list-controls-inner {
        gap: 0.35rem;
        padding: 0.3rem;
    }

    .products-sort-select {
        min-width: 54px;
        width: 54px;
        font-size: 0.75rem;
        height: 30px;
    }

    #product-list.products-list--list .product-card:not(.skeleton) {
        flex-direction: column;
        height: auto;
        min-height: 0;
    }

        #product-list.products-list--list .product-card:not(.skeleton) .product-card-body {
            flex: 0 1 auto;
            align-content: start;
        }

        #product-list.products-list--list .product-card:not(.skeleton) .product-card-link:first-child {
            width: 100%;
            min-width: 0;
            height: auto;
        }

        #product-list.products-list--list .product-card:not(.skeleton) .thumb-frame {
            min-height: 156px;
            height: 156px;
            border-right: 0;
            border-bottom: 1px solid var(--border-soft);
        }

        #product-list.products-list--list .product-card:not(.skeleton) .product-card-footer {
            min-width: 0;
            flex: none;
            border-left: 0;
            border-top: 1px solid var(--border-soft);
        }
}

@media (max-width: 575.98px) {
    .products-mobile-toolbar {
        top: 0.4rem;
    }

    .products-back-to-top {
        right: 0.75rem;
        bottom: 0.75rem;
    }

    .products-sidebar-body {
        padding: 0.85rem;
    }

    .products-sidebar-section {
        padding: 0.85rem;
        border-radius: var(--radius-thumb);
    }

    .products-list-controls-inner {
        padding: 0.24rem;
    }

    .products-sort-select {
        min-width: 50px;
        width: 50px;
    }
}











.product-favorite-button {
    text-decoration: none;
    transition: color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease);
}

.product-favorite-button.is-loading {
    pointer-events: none;
    color: var(--text-soft);
}

.product-favorite-button.is-loading .icon {
    opacity: 0;
}

.product-favorite-button {
    position: relative;
    line-height: 1;
}
.product-favorite-button .icon {
    display: block;
    margin: 0;
}
.product-favorite-button.is-loading::after {
    content: '';
    width: 0.95rem;
    height: 0.95rem;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: btn-spinner 0.65s linear infinite;
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
}

/* ============================================================
   PDP � Product Detail Page
   ============================================================ */

/*  Shell  */
.pdp-shell {
    display: grid;
    gap: 0;
}

/*  Gallery  */
.pdp-gallery {
    display: flex;
    flex-direction: column;
    gap: 0.6rem;
}

.pdp-gallery-main {
    position: relative;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel);
    background: var(--surface-subtle);
    overflow: hidden;
}

.pdp-gallery-main .pg-carousel .carousel-inner {
    border-radius: var(--radius-panel);
}

.pdp-gallery-main .pg-frame-main {
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface-subtle);
    min-height: 380px;
    cursor: zoom-in;
}

.pdp-gallery-main .pg-img {
    width: 100%;
    height: 380px;
    object-fit: contain;
    object-position: center;
    padding: 1rem;
    transition: transform 0.3s var(--transition-ease);
}

@media (hover: hover) {
    .pdp-gallery-main .pg-frame-main:hover .pg-img {
        transform: scale(1.03);
    }
}

/* Zoom hint overlay */
.pdp-gallery-zoom-hint {
    position: absolute;
    bottom: 0.65rem;
    right: 0.75rem;
    z-index: 4;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.6rem;
    border-radius: var(--radius-pill);
    background: rgba(0, 0, 0, 0.45);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    color: #fff;
    font-size: 0.72rem;
    font-weight: 600;
    pointer-events: none;
    opacity: 1;
    transition: opacity 0.2s ease;
}

.pdp-gallery-main:hover .pdp-gallery-zoom-hint {
    opacity: 0;
}

/* Empty (no image) */
.pdp-gallery-empty {
    border-radius: var(--radius-panel);
    height: 380px;
    border: 1px solid var(--border-soft);
}

/* Thumbnails � strip tray */
.pdp-gallery-thumbs {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.4rem;
    overflow-x: auto;
    overflow-y: visible;
    scroll-behavior: smooth;
    scroll-snap-type: x proximity;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    /* tray container */
    background: var(--surface-subtle);
    border: 1px solid var(--border-soft);
    border-radius: 10px;
    padding: 6px 7px 7px;
}

.pdp-gallery-thumbs::-webkit-scrollbar {
    display: none;
}

.pdp-thumb-btn {
    flex: 0 0 auto;
    width: 72px;
    height: 72px;
    border-radius: 7px !important;
    overflow: hidden;
    border: 1.5px solid var(--border-soft) !important;
    background: var(--surface-base, #fff) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.07);
    opacity: 0.6;
    scroll-snap-align: start;
    transition: border-color 0.16s ease,
                box-shadow 0.16s ease,
                opacity 0.16s ease;
}

    .pdp-thumb-btn .pg-thumb {
        width: 72px;
        height: 72px;
        object-fit: contain;
        background: var(--surface-subtle);
        display: block;
        padding: 4px;
    }

    .pdp-thumb-btn--lg {
        width: 88px;
        height: 88px;
    }

    .pdp-thumb-btn--lg .pg-thumb {
        width: 88px;
        height: 88px;
    }

    .btn-check:checked + .pdp-thumb-btn {
        border: 2px solid var(--primary) !important;
        box-shadow: 0 0 0 3px rgba(var(--primary-rgb, 0,100,210), 0.18),
                    0 2px 6px rgba(0,0,0,0.12);
        opacity: 1;
    }

    .pdp-thumb-btn:hover {
        border-color: var(--primary) !important;
        box-shadow: 0 2px 6px rgba(0,0,0,0.10);
        opacity: 1;
    }

/* Carousel controls */
.pdp-gallery-main .carousel-control-prev,
.pdp-gallery-main .carousel-control-next {
    width: 40px;
    height: 40px;
    top: 50%;
    bottom: auto;
    border-radius: 50%;
    background: var(--color-white-a-92);
    border: 1px solid var(--border-soft);
    box-shadow: var(--shadow-soft);
    opacity: 0.4;
    transition: opacity 0.2s ease, box-shadow 0.15s ease;
    transform: translateY(-50%);
}

.pdp-gallery-main:hover .carousel-control-prev,
.pdp-gallery-main:hover .carousel-control-next {
    opacity: 1;
}

.pdp-gallery-main .carousel-control-prev:hover,
.pdp-gallery-main .carousel-control-next:hover {
    box-shadow: 0 4px 14px rgba(0,0,0,0.18);
    background: #fff;
}

.pdp-gallery-main .carousel-control-prev:active,
.pdp-gallery-main .carousel-control-next:active {
    box-shadow: inset 0 1px 4px rgba(0,0,0,0.12);
}

.pdp-gallery-main .carousel-control-prev:focus-visible,
.pdp-gallery-main .carousel-control-next:focus-visible {
    opacity: 1;
    outline: 2px solid var(--primary);
    outline-offset: 2px;
}

.pdp-gallery-main .carousel-control-prev { left: 0.6rem; }
.pdp-gallery-main .carousel-control-next { right: 0.6rem; }

.product-carousel-icon {
    width: 1rem;
    height: 1rem;
    color: var(--text-strong);
}

/* Crossfade speed tweak � Bootstrap's carousel-fade uses this transition */
.pdp-gallery-main .carousel-item,
#pgZoomModal .carousel-item {
    transition-duration: 0.35s;
}

/* ?? Zoom modal � lightbox ?? */
#pgZoomModal .modal-content {
    background: #0f0f0f;
    border: none;
    border-radius: var(--radius-panel);
    overflow: hidden;
    box-shadow: 0 24px 80px rgba(0,0,0,0.7);
}

/* Header overlays the image */
#pgZoomModal .modal-header {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 20;
    background: linear-gradient(to bottom, rgba(0,0,0,0.62) 0%, transparent 100%);
    border-bottom: none;
    padding: 0.85rem 1.1rem 1.5rem;
    pointer-events: none;
}

#pgZoomModal .modal-header > * {
    pointer-events: auto;
}

#pgZoomModal .modal-title {
    color: rgba(255,255,255,0.88);
    font-size: 0.85rem;
    font-weight: 600;
    letter-spacing: 0.01em;
    text-shadow: 0 1px 4px rgba(0,0,0,0.5);
}

#pgZoomModal .btn-close {
    filter: invert(1) grayscale(1);
    opacity: 0.75;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background-color: rgba(255,255,255,0.1) !important;
    background-size: 0.8em;
    transition: opacity 0.15s ease, background-color 0.15s ease;
}

#pgZoomModal .btn-close:hover {
    opacity: 1;
    background-color: rgba(255,255,255,0.22) !important;
}

/* Body: full black for focus */
#pgZoomModal .modal-body {
    padding: 0;
    background: #0f0f0f;
    overflow: hidden;
}

/* Image frame */
.pg-frame-modal {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 55vh;
    max-height: 72vh;
    background: #0f0f0f;
    overflow: hidden;
}

#pgZoomModal .pg-img {
    display: block;
    width: 100%;
    max-height: 72vh;
    height: auto;
    object-fit: contain;
    padding: 2rem;
    transition: transform 0.3s ease;
}

/* Modal carousel controls */
#pgZoomModal .carousel-control-prev,
#pgZoomModal .carousel-control-next {
    width: 44px;
    height: 44px;
    top: 50%;
    bottom: auto;
    transform: translateY(-50%);
    border-radius: 50%;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.18);
    backdrop-filter: blur(6px);
    -webkit-backdrop-filter: blur(6px);
    opacity: 0.55;
    transition: opacity 0.2s ease, background 0.15s ease;
}

#pgZoomModal .modal-body:hover .carousel-control-prev,
#pgZoomModal .modal-body:hover .carousel-control-next {
    opacity: 1;
}

#pgZoomModal .carousel-control-prev:hover,
#pgZoomModal .carousel-control-next:hover {
    background: rgba(255,255,255,0.22);
}

#pgZoomModal .carousel-control-prev { left: 0.75rem; }
#pgZoomModal .carousel-control-next { right: 0.75rem; }

#pgZoomModal .product-carousel-icon {
    color: #fff;
    width: 1.15rem;
    height: 1.15rem;
}

/* Footer: dark thumb strip */
#pgZoomModal .modal-footer {
    background: rgba(0,0,0,0.75);
    border-top: 1px solid rgba(255,255,255,0.08);
    padding: 0.75rem 1rem;
    justify-content: center;
}

#pgZoomModal .pdp-gallery-thumbs {
    justify-content: center;
    background: transparent;
    border-color: rgba(255,255,255,0.08);
    padding: 4px 6px 5px;
}

#pgZoomModal .pdp-thumb-btn--lg {
    background: rgba(255,255,255,0.06) !important;
    border-color: rgba(255,255,255,0.14) !important;
    box-shadow: none;
}

#pgZoomModal .btn-check:checked + .pdp-thumb-btn--lg {
    border-color: #fff !important;
    box-shadow: 0 0 0 2px rgba(255,255,255,0.3);
    background: rgba(255,255,255,0.12) !important;
}

#pgZoomModal .pdp-thumb-btn--lg:hover {
    border-color: rgba(255,255,255,0.5) !important;
    background: rgba(255,255,255,0.1) !important;
}

#pgZoomModal .pdp-thumb-btn--lg .pg-thumb {
    background: transparent;
}

/* Fullscreen on mobile: fill screen properly */
@media (max-width: 767.98px) {
    #pgZoomModal .modal-content {
        border-radius: 0;
    }

    .pg-frame-modal {
        min-height: 50vh;
        max-height: 65vh;
    }

    #pgZoomModal .pg-img {
        padding: 1rem;
        max-height: 65vh;
    }
}

/*  Buy panel  */
.pdp-buy-panel {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    padding: 1.4rem 1.5rem;
    border: 1px solid var(--products-sidebar-border);
    border-radius: var(--radius-panel);
    background: var(--products-sidebar-bg);
    box-shadow: var(--products-sidebar-shadow);
    position: sticky;
    top: calc(var(--header-offset, 110px) + 1rem);
}

/* Badges */
.pdp-buy-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-height: 1px; /* keep flow even when empty */
}

.pdp-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.6rem;
    border-radius: var(--radius-pill);
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    line-height: 1.4;
}

.pdp-badge--deal {
    background: var(--accent);
    color: #fff;
    box-shadow: 0 2px 6px rgba(var(--accent-rgb), 0.35);
}

.pdp-badge--promo {
    background: var(--color-danger-500);
    color: #fff;
}

.pdp-badge--new {
    background: var(--color-success-500);
    color: #fff;
}

/* Title */
.pdp-title {
    margin: 0;
    color: var(--text-strong);
    font-size: clamp(1.15rem, 2.2vw, 1.55rem);
    font-weight: 800;
    line-height: 1.22;
}

/* Codes */
.pdp-codes {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem 1rem;
    margin-top: 0.35rem;
}

.pdp-code-item {
    display: flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
}

.pdp-code-label {
    color: var(--text-muted);
    font-weight: 600;
}

.pdp-code-val {
    color: var(--text-soft);
}

/* Divider */
.pdp-divider {
    margin: 0;
    border-color: var(--border-soft);
    opacity: 1;
}

/*  Price block  */
.pdp-price-block {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

.pdp-price-row {
    display: flex;
    align-items: baseline;
    gap: 0.65rem;
    flex-wrap: wrap;
}

.pdp-price-current {
    font-size: clamp(1.6rem, 3vw, 2rem);
    font-weight: 900;
    color: var(--text-strong);
    letter-spacing: -0.02em;
    line-height: 1;
}

.pdp-price--deal {
    color: var(--accent-strong);
}

.pdp-price-was {
    font-size: 1rem;
    font-weight: 500;
    color: var(--text-muted);
    text-decoration: line-through;
}

.pdp-price-saving {
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--color-success-600, #16a34a);
}

.pdp-price-tax {
    font-size: 0.78rem;
    color: var(--text-muted);
    margin-top: 0.1rem;
}

/*  Variants  */
.pdp-variants {
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
}

.pdp-variants-label {
    font-size: 0.75rem;
    font-weight: 700;
    color: var(--text-muted);
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.pdp-variant-line {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.pdp-variant-type {
    font-size: 0.82rem;
    font-weight: 700;
    color: var(--text-default);
}

.pdp-variant-options {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.pdp-variant-chip {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0.75rem;
    border: 1.5px solid var(--border-muted);
    border-radius: 8px;
    background: var(--surface-base);
    color: var(--text-default);
    font-size: 0.82rem;
    font-weight: 600;
    text-decoration: none;
    line-height: 1.3;
    transition: border-color var(--transition-speed) var(--transition-ease),
                background-color var(--transition-speed) var(--transition-ease),
                color var(--transition-speed) var(--transition-ease);
}

    .pdp-variant-chip:hover {
        border-color: var(--primary-alpha-35);
        background: var(--primary-alpha-04);
        color: var(--text-strong);
    }

    .pdp-variant-chip.is-active {
        border-color: var(--primary);
        background: var(--primary-alpha-08);
        color: var(--primary);
        font-weight: 700;
        cursor: default;
        pointer-events: none;
    }

/*  Add-to-cart button  */
.pdp-atc-form {
    display: flex;
}

.pdp-atc-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    flex: 1;
    min-height: 52px;
    padding: 0.7rem 1.5rem;
    border-radius: var(--shape-pill);
    background: var(--primary);
    border: none;
    color: var(--text-on-primary);
    font-size: 1rem;
    font-weight: 700;
    box-shadow: 0 4px 14px rgba(var(--highlight-rgb), 0.25);
    position: relative;
    transition: background-color var(--transition-speed) var(--transition-ease),
                box-shadow var(--transition-speed) var(--transition-ease),
                transform var(--transition-speed) var(--transition-ease);
}

    .pdp-atc-btn:hover,
    .pdp-atc-btn:focus-visible {
        background: var(--primary-strong, var(--primary));
        box-shadow: 0 6px 20px rgba(var(--highlight-rgb), 0.35);
        color: var(--text-on-primary);
        transform: translateY(-1px);
    }

    .pdp-atc-btn:active {
        transform: translateY(0) scale(0.98);
    }

    /* Loading state */
    .pdp-atc-btn.is-loading {
        pointer-events: none;
        opacity: 0.82;
    }

    .pdp-atc-btn.is-loading .pdp-atc-icon,
    .pdp-atc-btn.is-loading .pdp-atc-label {
        opacity: 0;
    }

    .pdp-atc-btn.is-loading::after {
        content: '';
        position: absolute;
        inset: 0;
        margin: auto;
        width: 1.35rem;
        height: 1.35rem;
        border: 2.5px solid currentColor;
        border-right-color: transparent;
        border-radius: 50%;
        animation: btn-spinner 0.65s linear infinite;
    }

    /* Success state */
    .pdp-atc-btn.is-added {
        background: var(--color-success-500, #22c55e);
        box-shadow: none;
        pointer-events: none;
    }

.pdp-atc-icon {
    width: 1.2rem;
    height: 1.2rem;
    flex-shrink: 0;
}

/*  Trust list  */
.pdp-trust-list {
    list-style: none;
    margin: 0;
    padding: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.55rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel-sm);
    background: var(--surface-subtle);
}

.pdp-trust-item {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.83rem;
    color: var(--text-soft);
    line-height: 1.4;
}

.pdp-trust-icon {
    flex-shrink: 0;
    color: var(--text-accent);
    width: 1rem;
    height: 1rem;
}

/*  Cards (bottom section)  */
.pdp-card {
    padding: 1.25rem 1.35rem;
    border: 1px solid var(--products-sidebar-border);
    border-radius: var(--radius-panel);
    background: var(--products-sidebar-bg);
    box-shadow: var(--products-sidebar-shadow);
}

.pdp-card-title {
    margin: 0 0 0.85rem;
    color: var(--text-strong);
    font-size: 1rem;
    font-weight: 700;
    padding-bottom: 0.65rem;
    border-bottom: 1px solid var(--border-soft);
}

/* Specs table */
.pdp-specs-list {
    display: grid;
    gap: 0;
    margin: 0;
}

.pdp-spec-row {
    display: grid;
    grid-template-columns: minmax(120px, 35%) 1fr;
    gap: 0.5rem 1rem;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-soft);
    align-items: baseline;
}

    .pdp-spec-row:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }

.pdp-spec-row dt {
    color: var(--text-muted);
    font-size: 0.82rem;
    font-weight: 700;
}

.pdp-spec-row dd {
    margin: 0;
    color: var(--text-default);
    font-size: 0.85rem;
    word-break: break-word;
}

/* Rich text */
.pdp-richtext {
    color: var(--text-default);
    font-size: 0.9375rem;
    line-height: 1.7;
}

    .pdp-richtext h2, .pdp-richtext h3, .pdp-richtext h4 {
        color: var(--text-strong);
        margin-top: 1.25rem;
        margin-bottom: 0.5rem;
    }

    .pdp-richtext ul, .pdp-richtext ol {
        padding-left: 1.35rem;
    }

    .pdp-richtext li {
        margin-bottom: 0.3rem;
    }

    .pdp-richtext a {
        color: var(--text-accent);
    }

.pdp-info-intro {
    font-weight: 500;
    color: var(--text-soft);
}

/*  Related / recently viewed  */
.pdp-related-list {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.pdp-related-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0;
    border-bottom: 1px solid var(--border-soft);
    text-decoration: none;
    color: inherit;
    transition: background-color var(--transition-speed) var(--transition-ease);
    border-radius: 6px;
}

    .pdp-related-item:last-child {
        border-bottom: 0;
        padding-bottom: 0;
    }

    .pdp-related-item:hover {
        background: var(--interaction-quiet-bg);
        padding-left: 0.35rem;
        padding-right: 0.35rem;
    }

.pdp-related-img {
    width: 52px;
    height: 52px;
    flex-shrink: 0;
    object-fit: contain;
    border-radius: 6px;
    background: var(--surface-subtle);
    border: 1px solid var(--border-soft);
    padding: 2px;
}

.pdp-related-body {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-width: 0;
}

.pdp-related-title {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    color: var(--text-strong);
    font-size: 0.84rem;
    font-weight: 600;
    line-height: 1.3;
    transition: color var(--transition-speed) var(--transition-ease);
}

.pdp-related-item:hover .pdp-related-title {
    color: var(--text-accent);
}

.pdp-related-code {
    color: var(--text-muted);
    font-size: 0.72rem;
}

.pdp-related-price {
    color: var(--text-strong);
    font-size: 0.85rem;
    font-weight: 700;
}

/*  Responsive  */
@media (max-width: 991.98px) {
    /* Panel no longer sticky on mobile � it's in natural flow */
    .pdp-buy-panel {
        /*position: static;*/
        padding: 1.1rem 1.15rem;
    }

    .pdp-gallery-main .pg-frame-main,
    .pdp-gallery-empty {
        min-height: 300px;
    }

    .pdp-gallery-main .pg-img {
        height: 300px;
    }

    .pdp-atc-btn {
        min-height: 48px;
        font-size: 0.95rem;
    }
}

@media (max-width: 767.98px) {
    .pdp-title {
        font-size: 1.2rem;
    }

    .pdp-price-current {
        font-size: 1.65rem;
    }

    .pdp-gallery-main .pg-frame-main,
    .pdp-gallery-empty {
        min-height: 260px;
    }

    .pdp-gallery-main .pg-img {
        height: 260px;
    }

    .pdp-gallery-main .carousel-control-prev,
    .pdp-gallery-main .carousel-control-next {
        opacity: 1; /* always visible on touch */
    }

    .pdp-card {
        padding: 0.95rem;
    }

    .pdp-buy-panel {
        padding: 0.95rem 1rem;
        gap: 0.85rem;
    }

    .pdp-spec-row {
        grid-template-columns: 1fr;
        gap: 0.1rem;
    }
}

@media (max-width: 575.98px) {
    .pdp-atc-btn {
        min-height: 46px;
        font-size: 0.9rem;
    }

    .pdp-thumb-btn .pg-thumb {
        height: 54px;
    }
}




.pdp-favorite-form {
    display: flex;
    margin-top: 0.15rem;
}

.pdp-favorite-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    width: 100%;
    min-height: 44px;
    border-radius: var(--shape-pill);
    border: 1px solid var(--border-soft);
    background: var(--surface-base);
    color: var(--text-default);
    font-weight: 700;
}

.pdp-favorite-btn:hover,
.pdp-favorite-btn:focus-visible {
    color: var(--color-danger-600, #dc3545);
    border-color: var(--color-danger-200, #f5c2c7);
}

.pdp-favorite-btn.is-active {
    color: var(--color-danger-700, #b02a37);
    border-color: var(--color-danger-300, #f1aeb5);
    background: rgba(220, 53, 69, 0.08);
}

.pdp-title-row {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
}

.pdp-title-row .pdp-title {
    margin: 0;
}

.pdp-title-row .pdp-favorite-form {
    margin: 0;
    flex: 0 0 auto;
}

.pdp-title-row .pdp-favorite-btn {
    width: 2.4rem;
    min-width: 2.4rem;
    height: 2.4rem;
    min-height: 2.4rem;
    padding: 0;
    border-radius: 999px;
}

@media (max-width: 767.98px) {
    .pdp-title-row .pdp-favorite-btn {
        width: 2.15rem;
        min-width: 2.15rem;
        height: 2.15rem;
        min-height: 2.15rem;
    }
}

.pdp-favorite-rail {
    position: absolute;
    top: 0.6rem;
    right: 0.6rem;
    z-index: 2;
}
.pdp-favorite-rail .pdp-favorite-btn {
    width: 1.95rem;
    min-width: 1.95rem;
    height: 1.95rem;
    min-height: 1.95rem;
    padding: 0;
    line-height: 1;
    border-radius: 999px;
    box-shadow: none;
    border-color: transparent;
    background: transparent;
    color: var(--text-muted);
}
.pdp-favorite-rail .pdp-favorite-btn .icon {
    display: block;
    margin: 0;
}
.pdp-favorite-rail .pdp-favorite-btn:hover,
.pdp-favorite-rail .pdp-favorite-btn:focus-visible {
    background: rgba(220, 53, 69, 0.08);
    border-color: rgba(220, 53, 69, 0.2);
}

.pdp-favorite-rail .pdp-favorite-btn.is-active {
    color: var(--color-danger-700, #b02a37);
    border-color: rgba(220, 53, 69, 0.28);
    background: rgba(220, 53, 69, 0.12);
}

.pdp-favorite-btn.is-loading {
    pointer-events: none;
    color: var(--text-muted);
}
.pdp-favorite-btn.is-loading .icon {
    opacity: 0;
}
.pdp-favorite-btn.is-loading::after {
    content: '';
    width: 0.95rem;
    height: 0.95rem;
    border: 2px solid currentColor;
    border-right-color: transparent;
    border-radius: 50%;
    animation: btn-spinner 0.65s linear infinite;
    position: absolute;
    inset: 0;
    margin: auto;
    display: block;
}

/* Account: dashboard, profile forms and account-specific responsive rules */
#loginModalBody {
    position: relative;
    z-index: 1;
}

.auth-login-shell {
    display: grid;
    gap: 1rem;
}

.auth-modal-back-row {
    display: flex;
    justify-content: flex-start;
    margin-bottom: 0.85rem;
}

.auth-login-column {
    min-width: 0;
}

.auth-login-column > form {
    display: grid;
    gap: 0.75rem;
}

.auth-registration-column {
    min-width: 0;
}

.auth-registration-block {
    display: grid;
    gap: 0.75rem;
    margin-top: 1rem;
    padding-top: 0.95rem;
    border-top: 1px solid var(--border-soft);
}

.auth-registration-launcher {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.9rem;
    text-align: left;
}

.auth-registration-launcher-text {
    display: grid;
    gap: 0.15rem;
}

.auth-registration-launcher-text strong {
    color: var(--text-strong);
    font-size: 0.98rem;
}

.auth-registration-launcher-text small {
    color: var(--text-muted);
    font-size: 0.82rem;
    line-height: 1.45;
}

.auth-registration-launcher-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 999px;
    background: var(--primary-soft);
    color: var(--primary);
    font-size: 1.15rem;
    font-weight: 700;
    flex: 0 0 auto;
    transition: transform var(--transition-speed) var(--transition-ease);
}

.auth-registration-launcher-icon::before {
    content: "+";
    line-height: 1;
}

.auth-registration-launcher.is-open .auth-registration-launcher-icon {
    transform: rotate(45deg);
}

.auth-registration-panel {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transform: translateY(-6px);
    pointer-events: none;
    transition: max-height var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease);
}

.auth-registration-panel.is-open {
    max-height: 2400px;
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.auth-registration-panel-inner {
    padding: 1rem;
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-panel);
    background: linear-gradient(180deg, var(--surface-subtle), var(--surface-pane-95));
}

.auth-registration-form {
    display: grid;
    gap: 0.75rem;
}

.auth-registration-form .form-group {
    margin-bottom: 0;
}

.auth-registration-error {
    display: grid;
    gap: 0.45rem;
    padding: 0.8rem 0.9rem;
    border: 1px solid var(--color-danger-500);
    border-radius: var(--radius-panel);
    background: var(--surface-subtle);
    color: var(--color-danger-700);
}

.auth-registration-error strong {
    color: var(--color-danger-700);
    font-size: 0.9rem;
}

.auth-registration-error ul {
    margin: 0;
    padding-left: 1.05rem;
}

.auth-registration-grid {
    display: grid;
    gap: 0.75rem;
}

.auth-registration-field-full {
    grid-column: 1 / -1;
}



/*  Account Page Layout  */

.account-page {
    display: grid;
    gap: 1.5rem;
}

/* Hero */
.account-page-hero {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.5rem 1.75rem;
    border: 1px solid var(--border-hero);
    border-radius: var(--radius-card);
    background: linear-gradient(135deg, var(--hero-gradient-start-strong), var(--hero-gradient-end-soft));
    box-shadow: var(--shadow-page);
    color: var(--text-on-primary);
}

.account-page-hero-avatar {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 3.5rem;
    height: 3.5rem;
    border-radius: 50%;
    background: var(--color-white-a-24);
    border: 2px solid var(--color-white-a-32);
    font-size: 1.5rem;
    font-weight: 800;
    color: var(--text-on-primary);
    line-height: 1;
    user-select: none;
}

.account-page-hero-info {
    flex: 1;
    min-width: 0;
}

.account-page-hero-eyebrow {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.6rem;
    border-radius: var(--radius-pill);
    background: var(--color-white-a-14);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    margin-bottom: 0.5rem;
}

.account-page-hero-name {
    margin: 0 0 0.25rem;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    font-weight: 800;
    line-height: 1.1;
}

.account-page-hero-sub {
    margin: 0;
    color: var(--text-on-dark-muted);
    font-size: 0.92rem;
    line-height: 1.5;
}

.account-page-hero-stats {
    display: flex;
    gap: 0.75rem;
    flex-shrink: 0;
}

.account-page-stat {
    display: grid;
    gap: 0.1rem;
    padding: 0.7rem 1.1rem;
    border-radius: var(--radius-panel);
    border: 1px solid var(--color-white-a-14);
    background: var(--color-white-a-08);
    backdrop-filter: blur(14px);
    text-align: center;
    min-width: 72px;
}

.account-page-stat strong {
    font-size: 1.6rem;
    font-weight: 800;
    line-height: 1;
    color: var(--text-on-primary);
}

.account-page-stat span {
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-on-dark-soft);
    white-space: nowrap;
}

/* Body: sidenav + panels */
.account-page-body {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 1.5rem;
    align-items: start;
}

/* On desktop the wrapper is transparent — the sidenav owns its own card styling */
.account-sidenav-wrap {
    min-width: 0;
}

/* Sidenav  */

.account-sidenav {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    padding: 0.75rem;
    border: 1px solid var(--border-accent-soft);
    border-radius: var(--radius-card);
    background: var(--color-white-a-92);
    box-shadow: var(--shadow-soft);
    position: sticky;
    top: 80px;
}

.account-sidenav-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    width: 100%;
    padding: 0.7rem 0.9rem;
    border: none;
    border-radius: var(--radius-panel);
    background: transparent;
    color: var(--text-muted);
    font-size: 0.92rem;
    font-weight: 600;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: background-color var(--transition-speed) var(--transition-ease),
                color var(--transition-speed) var(--transition-ease);
}

.account-sidenav-item:hover {
    background: var(--primary-soft);
    color: var(--primary);
    text-decoration: none;
}

.account-sidenav-item.is-active {
    background: var(--primary-soft);
    color: var(--primary);
    font-weight: 700;
}

.account-sidenav-item.is-active .account-sidenav-icon {
    color: var(--primary);
}

.account-sidenav-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 1.6rem;
    height: 1.6rem;
    color: var(--text-soft);
    transition: color var(--transition-speed) var(--transition-ease);
}

.account-sidenav-label {
    flex: 1;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.account-sidenav-divider {
    margin: 0.4rem 0;
    border-top: 1px solid var(--border-soft);
}

.account-sidenav-item-logout {
    color: var(--color-danger-600, #dc3545);
}

.account-sidenav-item-logout:hover {
    background: rgba(220, 53, 69, 0.08);
    color: var(--color-danger-700, #b02a37);
}

/*  Panels  */

.account-panels {
    min-width: 0;
}

.account-panel {
    display: none;
}

.account-panel.is-active {
    display: grid;
    gap: 0;
    border: 1px solid var(--border-accent-soft);
    border-radius: var(--radius-card);
    background: var(--color-white-a-92);
    box-shadow: var(--shadow-soft);
    overflow: hidden;
}

.account-panel-header {
    padding: 1.5rem 1.75rem 1.25rem;
    border-bottom: 1px solid var(--border-soft);
    background: linear-gradient(180deg, var(--surface-pane-95), var(--color-white-a-98));
}

.account-panel-header h2 {
    margin: 0 0 0.3rem;
    font-size: 1.25rem;
    color: var(--text-strong);
}

.account-panel-header p {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.92rem;
    line-height: 1.55;
}

.account-panel-section {
    display: grid;
    gap: 1rem;
    padding: 1.5rem 1.75rem;
    border-bottom: 1px solid var(--border-soft);
}

.account-panel-footer {
    display: grid;
    gap: 0.75rem;
    padding: 1.25rem 1.75rem;
    background: linear-gradient(180deg, var(--surface-pane-95), var(--color-white-a-98));
}

.account-panel-footnote {
    margin: 0;
    color: var(--text-muted);
    font-size: 0.85rem;
    line-height: 1.55;
}

/*  Feedback / messages  */

.account-feedback-message {
    margin: 0 1.75rem;
    padding: 0.9rem 1rem;
    border: 1px solid var(--primary-alpha-16);
    border-radius: var(--radius-panel);
    background: var(--primary-alpha-08);
    color: var(--primary-strong);
    font-weight: 700;
    line-height: 1.5;
}

.account-panel.is-active > .account-feedback-message {
    margin-top: 1.25rem;
    margin-bottom: -0.25rem;
}

/*  Form layout  */

.account-section-label {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--text-strong);
    font-size: 0.82rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    opacity: 0.85;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-soft);
}

.account-form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.9rem;
}

.account-form-field {
    display: grid;
    gap: 0.4rem;
    padding: 0.85rem 0.9rem;
    border-radius: var(--radius-panel);
    border: 1px solid var(--color-ink-alt-a-05);
    background: linear-gradient(180deg, var(--surface-pane-95), var(--color-white-a-98));
    align-content: start;
}

    .account-form-field label {
        color: var(--text-muted);
        font-size: 0.78rem;
        font-weight: 700;
        letter-spacing: 0.02em;
        text-transform: uppercase;
    }

    .account-form-field input,
    .account-form-field select {
        width: 100%;
        min-height: 44px;
        border: 1px solid var(--color-ink-alt-a-08);
        border-radius: var(--radius-input);
        background: var(--color-white-a-96);
        color: var(--text-strong);
        padding: 0.7rem 0.85rem;
        font-size: 0.97rem;
        font-weight: 600;
        transition: border-color var(--transition-speed) var(--transition-ease),
                    box-shadow var(--transition-speed) var(--transition-ease);
    }

        .account-form-field input:focus,
        .account-form-field select:focus {
            outline: none;
            border-color: var(--primary);
            box-shadow: 0 0 0 3px var(--primary-alpha-12);
        }

    .account-form-field.is-readonly input {
        background: var(--surface-pane-95-alt);
        color: var(--text-muted);
    }

.account-form-field-full {
    grid-column: 1 / -1;
}

.account-card-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
}

    .account-card-actions .btn {
        min-height: 44px;
        padding: 0.7rem 1.2rem;
        border-radius: var(--radius-pill);
        font-weight: 800;
    }

/*  Lists (orders / favorites)  */

.account-list {
    display: grid;
    gap: 0;
}

.account-list-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.75rem;
    border-bottom: 1px solid var(--border-soft);
    transition: background-color var(--transition-speed) var(--transition-ease);
}

.account-list-item:last-child {
    border-bottom: none;
}

.account-list-item:hover {
    background: var(--primary-alpha-04);
}

.account-list-item-primary {
    display: grid;
    gap: 0.2rem;
    min-width: 0;
}

    .account-list-item-primary strong {
        color: var(--text-strong);
        font-size: 0.97rem;
    }

    .account-list-item-primary span {
        color: var(--text-muted);
        font-size: 0.85rem;
    }

.account-list-item-secondary {
    display: grid;
    gap: 0.2rem;
    text-align: right;
    flex-shrink: 0;
}

.account-order-status {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.4rem;
    color: var(--text-strong);
    font-size: 0.88rem;
    font-weight: 700;
}

.account-order-status::before {
    content: '';
    display: inline-block;
    width: 0.45rem;
    height: 0.45rem;
    border-radius: 50%;
    background: var(--color-success-500);
    flex-shrink: 0;
}

.account-list-item-amount {
    color: var(--text-muted);
    font-size: 0.85rem;
    text-align: right;
}

.account-favorite-media {
    flex: 0 0 auto;
}

.account-favorite-thumb {
    width: 64px;
    height: 64px;
    border-radius: 14px;
    object-fit: contain;
    background: var(--color-white);
    border: 1px solid var(--border-soft);
    padding: 0.3rem;
}

/*  Empty states  */

.account-empty-state {
    display: grid;
    justify-items: center;
    gap: 0.9rem;
    padding: 3rem 1.75rem;
    text-align: center;
    background: linear-gradient(180deg, var(--primary-alpha-04), var(--color-white-a-09));
}

    .account-empty-state p {
        margin: 0;
        color: var(--text-muted);
        font-size: 0.95rem;
    }

.account-empty-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 1rem;
    background: var(--surface-accent-soft);
    color: var(--accent);
}

/*  Tags  */

.account-tag {
    display: inline-flex;
    align-items: center;
    padding: 0.3rem 0.65rem;
    border-radius: var(--radius-pill);
    background: var(--accent-badge-bg);
    color: var(--accent-badge-color);
    border: 1px solid var(--accent-badge-border);
    font-size: 0.8rem;
    font-weight: 700;
}

/*  Password strength (reused in panel)  */

.account-password-strength {
    display: grid;
    gap: 0.55rem;
    padding: 1rem 1.1rem;
    border-radius: var(--radius-panel);
    background: var(--surface-subtle);
}

.account-password-strength-bar {
    width: 100%;
    height: 0.55rem;
    border-radius: 999px;
    background: var(--color-ink-alt-a-08);
    overflow: hidden;
}

    .account-password-strength-bar span {
        display: block;
        height: 100%;
        width: 20%;
        border-radius: inherit;
        transition: width var(--transition-speed) var(--transition-ease),
                    background-color var(--transition-speed) var(--transition-ease);
        background: var(--color-warning-700);
    }

        .account-password-strength-bar span.is-score-0,
        .account-password-strength-bar span.is-score-1 {
            background: var(--color-warning-700);
        }

        .account-password-strength-bar span.is-score-2 {
            background: var(--color-warning-500);
        }

        .account-password-strength-bar span.is-score-3 {
            background: var(--color-success-500);
        }

        .account-password-strength-bar span.is-score-4,
        .account-password-strength-bar span.is-score-5 {
            background: var(--color-success-700);
        }

.account-password-checklist {
    display: grid;
    gap: 0.5rem;
    margin: 0;
    padding: 0.1rem 0 0 1.1rem;
    color: var(--text-muted);
}

    .account-password-checklist li.is-valid {
        color: var(--primary);
        font-weight: 700;
    }

.account-password-form {
    display: grid;
    gap: 0;
}

    .account-password-form > * {
        padding: 1.25rem 1.75rem;
        border-bottom: 1px solid var(--border-soft);
    }

    .account-password-form > *:last-child {
        border-bottom: none;
    }

/*  Responsive  */

@media (max-width: 991.98px) {
    .account-page-hero {
        flex-wrap: wrap;
    }

    .account-page-hero-stats {
        flex-wrap: wrap;
    }

    .account-page-body {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    /* Scroll wrapper with right-edge fade to hint at more items */
    .account-sidenav-wrap {
        position: relative;
        overflow: hidden;
        border: 1px solid var(--border-accent-soft);
        border-radius: var(--radius-card);
        background: var(--color-white-a-92);
        box-shadow: var(--shadow-soft);
    }

    .account-sidenav-wrap::after {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 2.5rem;
        background: linear-gradient(to right, transparent, var(--color-white-a-92));
        pointer-events: none;
        border-radius: 0 var(--radius-card) var(--radius-card) 0;
    }

    .account-sidenav {
        position: static;
        flex-direction: row;
        flex-wrap: nowrap;
        overflow-x: auto;
        scrollbar-width: none;
        /* Remove own border/bg/shadow — the wrapper owns those */
        border: none;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
        padding: 0.5rem 0.5rem;
        gap: 0.3rem;
    }

    .account-sidenav::-webkit-scrollbar {
        display: none;
    }

    /* CRITICAL: override width:100% so items don't each fill the viewport */
    .account-sidenav-item {
        flex-shrink: 0;
        width: auto;
        padding: 0.5rem 0.9rem;
        font-size: 0.85rem;
        border-radius: var(--radius-pill);
        border: 1px solid transparent;
    }

    .account-sidenav-item:hover {
        border-color: var(--primary-alpha-16);
    }

    .account-sidenav-item.is-active {
        border-color: var(--primary-alpha-16);
    }

    .account-sidenav-divider {
        display: none;
    }

    /* On mobile the logout is visible in the header; tuck it at the natural end */
    .account-sidenav-item-logout {
        margin-left: 0;
        opacity: 0.75;
    }

    .account-form-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 575.98px) {
    .account-page-hero {
        padding: 1.25rem;
    }

    .account-page-hero-stats {
        display: none;
    }

    .account-panel-header,
    .account-panel-section,
    .account-panel-footer {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }

    .account-list-item {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .account-list-item-secondary {
        text-align: left;
    }

    .account-favorite-thumb {
        width: 52px;
        height: 52px;
        border-radius: 12px;
    }

    .account-order-status {
        justify-content: flex-start;
    }

    .account-feedback-message {
        margin-left: 1.25rem;
        margin-right: 1.25rem;
    }
}

/*  Dark mode  */

:root[data-theme="dark"] .account-sidenav,
:root[data-theme="dark"] .account-panel.is-active {
    border-color: rgba(var(--client-ink-rgb), 0.36);
}

:root[data-theme="dark"] .account-form-field {
    border-color: rgba(var(--client-ink-rgb), 0.28);
}

:root[data-theme="dark"] .account-form-field input,
:root[data-theme="dark"] .account-form-field select {
    border-color: rgba(var(--client-ink-rgb), 0.36);
}

:root[data-theme="dark"] .account-password-strength-bar {
    background: rgba(var(--client-ink-rgb), 0.22);
}

:root[data-theme="dark"] .account-list-item:hover {
    background: rgba(var(--client-ink-rgb), 0.05);
}

.account-favorite-link {
    color: inherit;
    text-decoration: none;
}

.account-favorite-link:hover,
.account-favorite-link:focus-visible {
    color: var(--text-accent);
    text-decoration: underline;
}

.account-favorite-form {
    margin: 0;
}

.account-favorite-remove {
    padding: 0;
    border: 0;
    color: var(--text-muted);
    font-size: 0.82rem;
    text-decoration: underline;
}

.account-favorite-remove:hover,
.account-favorite-remove:focus-visible {
    color: var(--color-danger-700, #b02a37);
}

/* Pages: error, home and legal page sections */
.error-page {
    min-height: 100vh;
    background-image: radial-gradient(circle at top left, var(--accent-alpha-12), var(--color-transparent) 28%), radial-gradient(circle at bottom right, var(--primary-alpha-08), var(--color-transparent) 30%), var(--page-grid), var(--page-bg);
}

    .error-page::before {
        display: none;
    }

.error-page-shell {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.5rem 1rem;
}

.error-card {
    width: min(100%, 1000px);
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(240px, 380px);
    gap: clamp(1.25rem, 3.5vw, 2.5rem);
    align-items: center;
    padding: clamp(1.25rem, 3.5vw, 2.5rem);
    border: 1px solid var(--color-white-a-07);
    border-radius: 24px;
    background: linear-gradient(145deg, var(--color-white-a-94), var(--surface-mint-94));
    box-shadow: 0 20px 50px var(--color-ink-soft-a-12);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.error-copy {
    max-width: 32rem;
}

.error-eyebrow {
    display: inline-flex;
    align-items: center;
    margin-bottom: 0.75rem;
    padding: 0.35rem 0.65rem;
    border-radius: var(--radius-pill);
    background: var(--accent-badge-bg);
    color: var(--accent-badge-color);
    border: 1px solid var(--accent-badge-border);
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.error-title {
    margin-bottom: 0.75rem;
    color: var(--text-strong);
    font-size: clamp(1.75rem, 3.2vw, 3rem);
    line-height: 1.08;
}

.error-text {
    margin-bottom: 1.25rem;
    color: var(--text-default);
    font-size: 0.9375rem;
    line-height: 1.65;
}

.error-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.7rem;
}

.error-reference {
    margin-top: 1rem;
    margin-bottom: 0;
    color: var(--text-soft);
    font-size: 0.75rem;
    line-height: 1.5;
    opacity: 0.8;
    word-break: break-word;
}

.error-art {
    position: relative;
}

    .error-art::before {
        content: "";
        position: absolute;
        inset: 8% 12% auto;
        height: 60%;
        border-radius: 50%;
        background: radial-gradient(circle, var(--accent-alpha-16), var(--color-transparent) 65%);
        filter: blur(10px);
        z-index: 0;
    }

.error-illustration {
    position: relative;
    z-index: 1;
    width: 100%;
    height: auto;
    display: block;
}

@media (max-width: 991.98px) {
    .error-card {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .error-copy {
        max-width: none;
    }

    .error-actions {
        justify-content: center;
    }

    .error-art {
        max-width: 380px;
        margin: 0 auto;
    }
}

@media (max-width: 575.98px) {
    .error-page-shell {
        padding: 0.75rem;
    }

    .error-card {
        padding: 1.15rem;
        border-radius: 20px;
    }

    .error-actions .btn {
        width: 100%;
    }
}

.home-hero {
    display: grid;
    grid-template-columns: minmax(0, 1.5fr) minmax(260px, 0.85fr);
    gap: 1.25rem;
    align-items: stretch;
    margin-bottom: 1.25rem;
    padding: 1.5rem;
    border: var(--surface-card-border);
    border-radius: var(--surface-card-radius);
    background: radial-gradient(circle at top right, var(--hero-radial-glow), var(--color-transparent) 32%), linear-gradient(135deg, var(--hero-deep-start), var(--hero-deep-end));
    box-shadow: var(--shadow-page);
    color: var(--text-on-dark);
}

.home-hero-copy {
    display: grid;
    gap: 0.85rem;
}

.home-hero-eyebrow,
.legal-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 0.3rem 0.65rem;
    border-radius: var(--shape-pill);
    background: var(--color-white-a-12);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.home-hero h1,
.legal-page h1 {
    margin: 0;
    font-size: clamp(1.75rem, 3.5vw, 2.75rem);
    line-height: 1.06;
}

.home-hero p,
.legal-intro {
    margin: 0;
    max-width: 54ch;
    color: var(--text-on-dark-muted);
    line-height: 1.65;
}

.home-hero-actions {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.home-hero-card {
    display: grid;
    gap: 0.75rem;
    align-content: center;
    padding: 1.1rem;
    border: 1px solid var(--color-white-a-14);
    border-radius: var(--radius-panel);
    background: var(--color-white-a-01);
    backdrop-filter: blur(14px);
}

    .home-hero-card h2 {
        margin: 0;
        font-size: clamp(1.2rem, 1.8vw, 1.5rem);
        line-height: 1.2;
    }

.home-hero-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.home-hero-pill {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0.35rem 0.65rem;
    border: 1px solid var(--color-white-a-12);
    border-radius: var(--shape-pill);
    background: var(--color-white-a-12);
    color: var(--text-on-dark);
    font-size: 0.825rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}

.home-hero-card-label {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-on-dark-soft);
}

.home-hero-checklist {
    display: grid;
    gap: 0.55rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .home-hero-checklist li {
        position: relative;
        padding-left: 1.35rem;
        color: var(--text-on-dark-muted);
        line-height: 1.5;
        font-size: 0.9rem;
    }

        .home-hero-checklist li::before {
            content: "";
            position: absolute;
            top: 0.4rem;
            left: 0;
            width: 0.6rem;
            height: 0.6rem;
            border-radius: 50%;
            background: linear-gradient(180deg, var(--color-white-a-95), var(--hero-highlight-soft));
            box-shadow: 0 0 0 0.15rem var(--color-white-a-08);
        }

.home-intro,
.home-showcase,
.home-service-band {
    display: grid;
    gap: 1rem;
    margin-bottom: 1.25rem;
    padding: 1.35rem;
    border: var(--surface-card-border);
    border-radius: var(--surface-card-radius);
    background: linear-gradient(180deg, var(--color-white-a-96), var(--surface-mint-90));
    box-shadow: var(--surface-card-shadow);
}

.home-section-heading {
    display: grid;
    gap: 0.45rem;
    max-width: 48rem;
}

.home-section-eyebrow {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 0.28rem 0.6rem;
    border-radius: var(--shape-pill);
    background: var(--accent-badge-bg);
    color: var(--accent-badge-color);
    border: 1px solid var(--accent-badge-border);
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.home-section-heading h2,
.home-service-copy h2 {
    margin: 0;
    color: var(--text-strong);
    font-size: clamp(1.35rem, 2.2vw, 2rem);
    line-height: 1.14;
}

.home-section-heading p,
.home-service-copy p {
    margin: 0;
    color: var(--text-soft);
    line-height: 1.65;
    font-size: 0.9375rem;
}

.home-intro-grid,
.home-showcase-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.85rem;
}

.home-info-card,
.home-showcase-card {
    --component-content-card-min-height: 100%;
    --component-content-card-padding: 0.9rem;
    --component-content-card-border: 1px solid var(--border-brand-soft);
    --component-content-card-bg: var(--color-white-a-09);
    --component-content-card-shadow: var(--shadow-soft);
}

    .home-info-card h3,
    .home-showcase-card h3 {
        margin: 0;
        color: var(--text-strong);
        font-size: 1rem;
        line-height: 1.3;
    }

    .home-info-card p,
    .home-showcase-card p {
        margin: 0;
        color: var(--text-soft);
        line-height: 1.65;
        font-size: 0.875rem;
    }

.home-showcase-card {
    align-content: start;
    position: relative;
    overflow: hidden;
}

    .home-showcase-card::before {
        content: "";
        position: absolute;
        inset: 0 0 auto;
        height: 3px;
        background: linear-gradient(90deg, rgba(var(--highlight-rgb), 0.85), var(--color-accent-a-09));
    }

    .home-showcase-card.is-featured {
        background: linear-gradient(180deg, var(--surface-mint-96), var(--color-white-a-98));
    }

    .home-showcase-card.is-promo {
        background: linear-gradient(180deg, var(--surface-warm-96), var(--color-white-a-98));
    }

    .home-showcase-card.is-new {
        background: linear-gradient(180deg, var(--surface-cool-96), var(--color-white-a-98));
    }

.home-showcase-label {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    padding: 0.3rem 0.55rem;
    border-radius: 999px;
    background: var(--accent-badge-bg);
    color: var(--accent-badge-color);
    border: 1px solid var(--accent-badge-border);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.home-text-link {
    display: inline-flex;
    align-items: center;
    width: fit-content;
    margin-top: 0.25rem;
    color: var(--text-accent-brand);
    font-weight: 700;
    font-size: 0.875rem;
    transition: color var(--transition-speed) var(--transition-ease);
}

    .home-text-link:hover {
        color: var(--accent-strong);
    }

.home-service-band {
    grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr) auto;
    align-items: center;
    background: linear-gradient(135deg, var(--hero-deep-start), var(--service-band-end));
    color: var(--text-on-dark);
}

.home-service-copy p {
    color: var(--text-on-dark-soft);
}

.home-service-band .home-section-eyebrow {
    background: var(--color-white-a-12);
    color: var(--text-on-dark);
}

.home-service-points {
    display: grid;
    gap: 0.6rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

    .home-service-points li {
        position: relative;
        padding-left: 1.25rem;
        color: var(--text-on-dark-muted);
        line-height: 1.5;
        font-size: 0.875rem;
    }

        .home-service-points li::before {
            content: "";
            position: absolute;
            top: 0.42rem;
            left: 0;
            width: 0.5rem;
            height: 0.5rem;
            border-radius: 50%;
            background: var(--color-white-a-09);
            box-shadow: 0 0 0 0.15rem var(--color-white-a-08);
        }

.home-service-action {
    justify-self: end;
}

.home-hero .btn-outline-secondary,
.home-service-band .btn-outline-secondary {
    --bs-btn-bg: var(--color-white-a-96);
    --bs-btn-border-color: var(--color-white-a-28);
    --bs-btn-color: var(--primary-strong);
    --bs-btn-hover-bg: var(--color-white);
    --bs-btn-hover-border-color: var(--color-white-a-50);
    --bs-btn-hover-color: var(--primary-strong);
}

.legal-eyebrow {
    background: var(--accent-badge-bg);
    color: var(--accent-badge-color);
    border: 1px solid var(--accent-badge-border);
}

.legal-page {
    display: grid;
    gap: 0.85rem;
    padding: 0.85rem 0 0;
}

    .legal-page:not(.contact-page) .legal-intro {
        color: var(--text-soft);
    }

.legal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.legal-link-list {
    list-style: none;
    padding: 0;
    display: grid;
    gap: 0.55rem;
    align-content: start;
}

.legal-card {
    --component-content-card-padding: 1.1rem;
    --component-content-card-border: 1px solid var(--surface-border-translucent);
    --component-content-card-bg: linear-gradient(180deg, var(--color-white-a-96), var(--surface-mint-90));
    --component-content-card-shadow: var(--shadow-soft);
}

.legal-card-wide {
    grid-column: 1 / -1;
}

.legal-card h2 {
    margin: 0;
    color: var(--text-strong);
    font-size: 1rem;
}

.legal-card p,
.legal-link-list {
    color: var(--text-soft);
    line-height: 1.6;
    font-size: 0.875rem;
}

@container content-shell (max-width: 900px) {
    .home-hero,
    .legal-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-intro-grid,
    .home-showcase-grid,
    .home-service-band {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-service-action {
        justify-self: start;
    }
}

@media (max-width: 575.98px) {
    .home-hero,
    .home-intro,
    .home-showcase,
    .home-service-band {
        padding: 1rem;
    }

    .home-hero-actions .btn,
    .home-service-action .btn {
        width: 100%;
        justify-content: center;
        text-align: center;
    }
}

@media (max-width: 991.98px) {
    /* Home and legal columns */
    .home-hero,
    .legal-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-intro-grid,
    .home-showcase-grid,
    .home-service-band {
        grid-template-columns: minmax(0, 1fr);
    }

    .home-service-action {
        justify-self: start;
    }
}

@media (max-width: 767.98px) {
    /* CTA stacks */
    .home-hero-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .col.d-flex.flex-column > form.d-inline,
    .col.d-flex.flex-column > .d-inline {
        width: 100%;
    }

        .col.d-flex.flex-column > form.d-inline .btn,
        .col.d-flex.flex-column > .d-inline .btn {
            width: 100%;
            justify-content: center;
        }
}






/* Footer redesign: top, subfooter and bottom strip */
.site-footer {
    margin-top: 2.5rem;
    color: var(--text-default);
    background: var(--surface-footer-top);
    border-top: 1px solid var(--border-soft);
}

.site-footer-top {
    background: linear-gradient(135deg, var(--footer-dark-start), var(--footer-dark-end));
    color: var(--text-on-dark);
}

.site-footer-top-inner {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 3rem;
    padding: 2.6rem 0;
}

.site-footer-company,
.site-footer-showroom {
    display: grid;
    gap: 0.8rem;
    align-content: start;
}

.site-footer-company h2,
.site-footer-showroom h3 {
    margin: 0;
    color: var(--text-on-dark);
    line-height: 1.15;
}

.site-footer-company h2 {
    font-size: clamp(1.8rem, 3vw, 2.7rem);
    font-weight: 800;
}

.site-footer-showroom h3 {
    font-size: clamp(1.5rem, 2.2vw, 2.1rem);
    font-weight: 800;
}

.site-footer-company p {
    margin: 0;
    max-width: 60ch;
    font-size: 1.04rem;
    line-height: 1.65;
    color: var(--text-on-dark-soft);
}

.site-footer-inline-link {
    display: inline-flex;
    width: fit-content;
    color: var(--text-on-dark);
    text-decoration: none;
    font-weight: 700;
    transition: opacity var(--transition-speed) var(--transition-ease);
}

.site-footer-inline-link:hover {
    color: var(--text-on-dark);
    opacity: 0.85;
}

.site-footer-meta-list {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 1rem;
}

.site-footer-meta-list li {
    display: grid;
    gap: 0.18rem;
    color: var(--text-on-dark-soft);
}

.site-footer-meta-label {
    font-size: 0.83rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-on-dark-subtle);
}

.site-footer-sub {
    background: var(--surface-footer-top);
}

.site-footer-sub-inner {
    padding: 2.5rem 0 2.8rem;
    display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 0.9fr) minmax(0, 0.95fr);
    gap: 2.2rem;
}

.site-footer-col {
    display: grid;
    gap: 0.75rem;
    align-content: start;
}

.site-footer-col h4 {
    margin: 0;
    font-size: 1.2rem;
    font-weight: 800;
    color: var(--text-strong);
}

.site-footer-link-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem 1.2rem;
}

.site-footer-links {
    margin: 0;
    padding: 0;
    list-style: none;
    display: grid;
    gap: 0.52rem;
}

.site-footer-links li {
    color: var(--text-default);
    line-height: 1.45;
}

.site-footer-links a {
    color: var(--text-default);
    text-decoration: none;
    transition: color var(--transition-speed) var(--transition-ease);
}

.site-footer-links a:hover {
    text-decoration: underline;
    color: var(--text-accent);
}

.site-footer-social-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.site-footer-social-row a {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: var(--radius-pill);
    border: 1px solid var(--border-accent-brand-soft);
    background: var(--surface-accent-soft);
    color: var(--text-accent-brand);
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: background var(--transition-speed) var(--transition-ease), transform var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease);
}

.site-footer-social-row .icon {
    width: 1rem;
    height: 1rem;
    fill: currentColor;
}

.site-footer-social-row a:hover {
    background: var(--surface-accent-muted);
    border-color: var(--border-accent-brand);
    transform: translateY(-1px);
}

.site-footer-social-row a:focus-visible {
    outline: none;
    box-shadow: 0 0 0 3px var(--focus-outline-color);
}

.site-footer-tax-note {
    margin: 0.3rem 0 0;
    font-size: 0.92rem;
    color: var(--text-muted);
}

.footer-price-mode-toggle {
    margin-top: 0.5rem;
}

.site-footer-bottom {
    border-top: 1px solid var(--border-soft);
    background: var(--surface-footer-bottom);
}

.site-footer-bottom-inner {
    padding: 1.25rem 0 1.45rem;
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 1.5rem;
}

.site-footer-bottom-copy {
    display: grid;
    gap: 0.3rem;
    font-size: 0.95rem;
    color: var(--text-default);
}

.site-footer-logo {
    font-size: 2rem;
    font-weight: 900;
    letter-spacing: -0.03em;
    color: var(--accent);
    text-decoration: none;
    line-height: 1;
    transition: color var(--transition-speed) var(--transition-ease), opacity var(--transition-speed) var(--transition-ease);
}

.site-footer-logo:hover {
    color: var(--accent-muted);
    opacity: 0.9;
}

.site-footer-legal-links {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
}

.site-footer-legal-links a {
    color: var(--text-default);
    text-decoration: none;
    font-size: 0.95rem;
    transition: color var(--transition-speed) var(--transition-ease);
}

.site-footer-legal-links a:hover {
    color: var(--text-accent);
    text-decoration: underline;
}

.site-footer-payments {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 0.4rem;
}

.site-footer-payment-pill {
    display: inline-flex;
    align-items: center;
    min-height: 1.8rem;
    padding: 0.2rem 0.6rem;
    border-radius: 0.35rem;
    border: 1px solid var(--border-accent-brand-soft);
    background: var(--surface-base);
    font-size: 0.8rem;
    font-weight: 700;
    color: var(--text-default);
    user-select: none;
}

@media (max-width: 1199.98px) {
    .site-footer-sub-inner {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 991.98px) {
    .site-footer-top-inner {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.8rem;
    }

    .site-footer-sub-inner {
        grid-template-columns: minmax(0, 1fr);
        gap: 1.65rem;
    }

    .site-footer-bottom-inner {
        grid-template-columns: minmax(0, 1fr);
        justify-items: start;
    }

    .site-footer-legal-links {
        justify-content: flex-start;
    }

    .site-footer-payments {
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .site-footer-top-inner,
    .site-footer-sub-inner,
    .site-footer-bottom-inner {
        padding-left: 0.15rem;
        padding-right: 0.15rem;
    }

    .site-footer-link-columns {
        grid-template-columns: minmax(0, 1fr);
    }
}

:root {
    --bs-body-bg: var(--color-transparent);
    --bs-body-color: var(--text-default);
    --bs-body-font-size: 1rem;
    --bs-primary: var(--primary);
    --bs-primary-rgb: var(--primary-rgb);
    --bs-secondary-color: var(--text-muted);
    --bs-border-color: var(--border-soft);
    --bs-border-radius: var(--radius-input);
    --bs-border-radius-lg: var(--radius-panel-sm);
    --bs-border-radius-xl: var(--radius-panel);
    --bs-box-shadow: var(--shadow-soft);
    --bs-link-color: var(--text-accent);
    --bs-link-hover-color: var(--primary-strong);
    --bs-heading-color: var(--text-strong);
    --bs-body-font-family: 'Manrope', 'Open Sans', Arial, sans-serif;
}

.card,
.dropdown-menu,
.alert,
.table,
.list-group-item,
.accordion-item,
.popover,
.tooltip-inner {
    border-color: var(--border-soft);
}

.card,
.dropdown-menu,
.accordion-item,
.popover {
    border-radius: var(--radius-panel-sm);
    box-shadow: var(--shadow-soft);
}

.card,
.accordion-item,
.list-group-item {
    background: var(--surface-base);
}

.badge {
    border-radius: var(--radius-pill);
    font-weight: 700;
}

.form-check-input {
    border-color: var(--border-accent-soft);
    box-shadow: none;
}

.form-check-input:checked {
    background-color: var(--primary);
    border-color: var(--primary);
}

.form-check-input:focus {
    border-color: var(--primary);
    box-shadow: 0 0 0 0.25rem rgba(var(--highlight-rgb), 0.14);
}

.table {
    --bs-table-bg: var(--color-transparent);
    --bs-table-striped-bg: rgba(var(--highlight-rgb), 0.03);
    --bs-table-hover-bg: rgba(var(--highlight-rgb), 0.05);
}

.pagination {
    --bs-pagination-border-radius: 14px;
    --bs-pagination-color: var(--text-default);
    --bs-pagination-border-color: var(--border-accent-soft);
    --bs-pagination-hover-color: var(--text-strong);
    --bs-pagination-hover-bg: var(--surface-strong);
    --bs-pagination-hover-border-color: var(--primary);
    --bs-pagination-active-bg: var(--primary);
    --bs-pagination-active-border-color: var(--primary);
}

/* Telerik / Kendo */
.k-input,
.k-picker,
.k-textbox,
.k-input-inner,
.k-dropdownlist,
.k-combobox,
.k-multiselect,
.k-numerictextbox,
.k-datepicker,
.k-timepicker {
    font-family: 'Manrope', 'Open Sans', Arial, sans-serif;
}

.k-input,
.k-picker,
.k-textbox,
.k-dropdownlist,
.k-combobox,
.k-multiselect,
.k-numerictextbox,
.k-datepicker,
.k-timepicker {
    min-height: 50px;
    border-color: var(--border-accent-soft) !important;
    border-radius: var(--radius-input) !important;
    background: var(--color-white-a-09) !important;
    box-shadow: none !important;
    transition: border-color var(--transition-speed) var(--transition-ease), box-shadow var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease) !important;
}

.k-input:hover,
.k-picker:hover,
.k-textbox:hover,
.k-dropdownlist:hover,
.k-combobox:hover,
.k-multiselect:hover,
.k-numerictextbox:hover,
.k-datepicker:hover,
.k-timepicker:hover {
    border-color: var(--primary) !important;
}

.k-input:focus-within,
.k-picker:focus-within,
.k-textbox:focus-within,
.k-dropdownlist.k-focus,
.k-combobox.k-focus,
.k-multiselect.k-focus,
.k-numerictextbox.k-focus,
.k-datepicker.k-focus,
.k-timepicker.k-focus {
    border-color: var(--primary) !important;
    box-shadow: 0 0 0 0.25rem rgba(var(--highlight-rgb), 0.12) !important;
}

.k-input-inner,
.k-input-md .k-input-inner,
.k-picker-md .k-input-inner {
    padding: 0.8rem 0.95rem !important;
    color: var(--text-default) !important;
}

.k-button,
.k-button-solid-base,
.k-button-solid-primary {
    min-height: 48px;
    font-size: 0.9375rem !important;
    border-radius: 16px !important;
    font-weight: 700 !important;
    box-shadow: none !important;
    transition: transform var(--transition-speed) var(--transition-ease), background-color var(--transition-speed) var(--transition-ease), border-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease) !important;
}

.k-button:hover,
.k-button-solid-base:hover,
.k-button-solid-primary:hover {
    transform: translateY(-1px);
}

.k-button-solid-primary {
    background: var(--primary) !important;
    border-color: var(--primary) !important;
    color: var(--text-on-primary) !important;
}

.k-button-solid-primary:hover,
.k-button-solid-primary.k-hover {
    background: var(--primary-strong) !important;
    border-color: var(--primary-strong) !important;
}

.k-button-solid-base {
    background: var(--color-white-a-88) !important;
    border-color: var(--border-accent-soft) !important;
    color: var(--text-default) !important;
}

.k-popup,
.k-animation-container .k-popup,
.k-list-container,
.k-menu-popup,
.k-grid,
.k-window,
.k-dialog,
.k-card {
    border-color: var(--border-soft) !important;
    border-radius: var(--radius-panel-sm) !important;
    box-shadow: var(--shadow-medium) !important;
    background: var(--surface-base) !important;
}

.k-list,
.k-list-content,
.k-menu-group,
.k-table,
.k-grid-content,
.k-grid-header,
.k-grid-toolbar {
    background: var(--color-transparent) !important;
}

.k-grid-header,
.k-grid-toolbar,
.k-table-thead {
    border-color: var(--border-soft) !important;
}

.k-grid td,
.k-grid th,
.k-table td,
.k-table th {
    border-color: var(--border-soft) !important;
}

.k-table-row:hover,
.k-master-row:hover,
.k-list-item:hover,
.k-treeview-leaf:hover,
.k-treeview-toggle:hover,
.k-treeview .k-in:hover,
.k-treeview .k-link:hover {
    background: var(--surface-muted) !important;
}

.k-selected,
.k-list-item.k-selected,
.k-selected:hover {
    background: var(--primary-soft) !important;
    color: var(--text-strong) !important;
}

.k-treeview .k-in,
.k-treeview .k-link {
    padding: 0.45rem 0.65rem !important;
    border-radius: 12px !important;
    color: var(--text-default) !important;
}

.k-treeview .k-state-selected > .k-in,
.k-treeview .k-selected > .k-link,
.k-treeview .k-state-selected > .k-link {
    background: var(--primary-soft) !important;
    color: var(--text-strong) !important;
}

.k-checkbox:checked,
.k-checkbox.k-checked {
    border-color: var(--primary) !important;
    background-color: var(--primary) !important;
}

.k-breadcrumb {
    width: 100%;
    background: var(--color-transparent) !important;
    color: var(--text-muted) !important;
    font-family: 'Manrope', 'Open Sans', Arial, sans-serif !important;
}

.k-breadcrumb-root-link,
.k-breadcrumb-link,
.k-breadcrumb-current-item,
.k-breadcrumb-delimiter-icon {
    color: inherit !important;
}

.k-breadcrumb-link,
.k-breadcrumb-root-link {
    display: inline-flex !important;
    align-items: center;
    min-height: 34px;
    padding: 0.35rem 0.7rem !important;
    border-radius: 12px !important;
    color: var(--text-default) !important;
    font-weight: 600 !important;
    transition: background-color var(--transition-speed) var(--transition-ease), color var(--transition-speed) var(--transition-ease) !important;
}

.k-breadcrumb-link:hover,
.k-breadcrumb-root-link:hover {
    background: var(--surface-muted) !important;
    color: var(--text-strong) !important;
}

.k-breadcrumb-current-item {
    display: inline-flex !important;
    align-items: center;
    min-height: 34px;
    padding: 0.35rem 0.7rem !important;
    border-radius: 12px !important;
    background: var(--primary-soft) !important;
    color: var(--text-strong) !important;
    font-weight: 700 !important;
}

.k-breadcrumb-delimiter-icon {
    opacity: 0.55;
}





