/* Minification failed. Returning unminified contents.
(8,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(9,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(14,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(15,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(16,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(17,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(18,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(19,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(20,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(21,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(22,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(23,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(24,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(25,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(26,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(27,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(28,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(29,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(30,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(31,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(32,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(33,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(34,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(35,3): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10349,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10350,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10351,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10352,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10353,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10354,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10356,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10357,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10358,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10360,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10361,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10362,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10363,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10364,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10366,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10367,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10368,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10369,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10370,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10371,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10372,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10373,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10375,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10376,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10377,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10378,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10379,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10382,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10383,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10384,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10385,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10386,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10387,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10388,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10389,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10394,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10395,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10396,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10397,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10398,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10399,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10400,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10405,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10406,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10407,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10408,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10409,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10410,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10411,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10412,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10414,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10416,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10417,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10418,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10419,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10425,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10426,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10427,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10428,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10429,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10430,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10432,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10433,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10434,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10436,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10437,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10438,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10439,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10440,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10442,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10443,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10444,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10445,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10446,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10447,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10448,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10449,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10451,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10452,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10453,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10454,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10455,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10457,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10458,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10459,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10460,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10461,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10462,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10463,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10464,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10466,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10467,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10468,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10469,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10470,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10471,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10472,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10473,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10474,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10476,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10477,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10483,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10484,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10485,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10486,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10487,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10488,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10489,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10490,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10491,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10492,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10493,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10494,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10495,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10496,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10497,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10498,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10499,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10500,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10501,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10502,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10503,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10504,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10505,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10506,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10507,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10508,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10509,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10510,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10511,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10512,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10513,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10514,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10515,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10516,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10517,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10518,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10519,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10520,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10521,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10522,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10523,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10524,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10525,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10526,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10527,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10528,9): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(10566,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10591,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10593,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(10605,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10626,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(10632,32): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(10636,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(10639,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(10643,36): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(10647,17): run-time error CSS1039: Token not allowed after unary operator: '-info'
(10648,28): run-time error CSS1039: Token not allowed after unary operator: '-info_bg'
(10653,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10656,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10659,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(10662,17): run-time error CSS1039: Token not allowed after unary operator: '-info'
(10665,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(10670,17): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(10673,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10676,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10679,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(10682,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10685,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(10688,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(10695,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(10698,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(10701,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10704,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10707,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(10722,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10754,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(10774,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_green'
(10774,69): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10777,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_teal'
(10777,68): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10780,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_cyan'
(10780,68): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10783,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_amber'
(10783,69): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10786,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_orange'
(10786,70): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10789,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_red'
(10789,67): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10792,47): run-time error CSS1039: Token not allowed after unary operator: '-ctx_purple'
(10792,70): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(10810,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10815,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10822,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(10827,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10961,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10969,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10975,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(10982,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(10991,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(10995,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(11003,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11010,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11061,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(11068,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(11070,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11093,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11119,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(11122,17): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(11128,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(11131,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11134,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(11137,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11150,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11166,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11173,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11183,29): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(11213,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11216,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11221,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11225,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11228,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11233,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11236,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11239,33): run-time error CSS1039: Token not allowed after unary operator: '-status_color'
(11242,17): run-time error CSS1039: Token not allowed after unary operator: '-status_color'
(11263,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_orange'
(11267,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_amber'
(11271,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_amber'
(11275,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_yellow'
(11279,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_cyan'
(11290,44): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11290,59): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11293,44): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(11293,60): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(11296,44): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(11296,59): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(11307,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11310,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11321,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(11322,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11323,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11324,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(11325,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow'
(11333,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(11334,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11342,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11349,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(11355,28): run-time error CSS1039: Token not allowed after unary operator: '-task_axis'
(11368,28): run-time error CSS1039: Token not allowed after unary operator: '-task_axis'
(11375,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(11393,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11402,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11405,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11408,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(11411,28): run-time error CSS1039: Token not allowed after unary operator: '-success'
(11420,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11428,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11429,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11445,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11450,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11453,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(11463,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11464,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11519,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(11520,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11552,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(11553,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11605,13): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11617,13): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11625,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11632,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11633,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11634,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(11644,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11645,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11646,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(11686,22): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(11692,32): run-time error CSS1039: Token not allowed after unary operator: '-navbar_bg'
(11713,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(11714,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11715,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11717,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow_strong'
(11725,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11742,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11749,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11759,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11781,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11788,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11794,22): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11795,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(11801,22): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(11802,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(11818,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(11819,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11822,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11825,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(11828,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11831,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11836,28): run-time error CSS1039: Token not allowed after unary operator: '-navbar_bg'
(11837,35): run-time error CSS1039: Token not allowed after unary operator: '-navbar_border'
(11843,17): run-time error CSS1039: Token not allowed after unary operator: '-navbar_fg'
(11847,17): run-time error CSS1039: Token not allowed after unary operator: '-navbar_fg'
(11848,28): run-time error CSS1039: Token not allowed after unary operator: '-navbar_hover'
(11849,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(11852,17): run-time error CSS1039: Token not allowed after unary operator: '-navbar_muted'
(11855,17): run-time error CSS1039: Token not allowed after unary operator: '-navbar_muted'
(11864,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(11865,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11866,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11870,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11871,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11877,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(11878,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11882,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11883,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(11889,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(11896,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11899,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11903,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11903,64): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(11906,39): run-time error CSS1030: Expected identifier, found '.'
(11906,70): run-time error CSS1031: Expected selector, found ')'
(11906,70): run-time error CSS1025: Expected comma or open brace, found ')'
(11910,39): run-time error CSS1030: Expected identifier, found '.'
(11910,70): run-time error CSS1031: Expected selector, found ')'
(11910,70): run-time error CSS1025: Expected comma or open brace, found ')'
(11919,29): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(11930,39): run-time error CSS1030: Expected identifier, found '.'
(11930,59): run-time error CSS1031: Expected selector, found ')'
(11930,59): run-time error CSS1025: Expected comma or open brace, found ')'
(11941,24): run-time error CSS1030: Expected identifier, found '.'
(11941,44): run-time error CSS1031: Expected selector, found ')'
(11941,44): run-time error CSS1025: Expected comma or open brace, found ')'
(11953,24): run-time error CSS1030: Expected identifier, found '.'
(11953,44): run-time error CSS1031: Expected selector, found ')'
(11953,44): run-time error CSS1025: Expected comma or open brace, found ')'
(11957,24): run-time error CSS1030: Expected identifier, found '.'
(11957,44): run-time error CSS1031: Expected selector, found ')'
(11957,44): run-time error CSS1025: Expected comma or open brace, found ')'
(11981,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(11984,39): run-time error CSS1030: Expected identifier, found '.'
(11984,70): run-time error CSS1031: Expected selector, found ')'
(11984,70): run-time error CSS1025: Expected comma or open brace, found ')'
(11995,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(11998,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12002,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12007,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12011,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12012,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12015,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12028,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12036,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(12041,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12045,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12048,31): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12049,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12052,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12053,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12059,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12060,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12061,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12065,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12066,35): run-time error CSS1039: Token not allowed after unary operator: '-ring'
(12069,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12075,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12076,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12077,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12078,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(12082,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12084,35): run-time error CSS1039: Token not allowed after unary operator: '-ring'
(12087,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12088,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12096,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12097,35): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12109,35): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12110,43): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12111,35): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12112,23): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12120,27): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12131,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12137,28): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12145,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12146,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12147,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12151,28): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(12152,24): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(12153,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12156,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(12157,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12158,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12161,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12162,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12165,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12166,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12169,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12173,36): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12173,63): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12174,39): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12174,69): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12175,39): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12175,69): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12176,38): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12176,67): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12179,37): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12179,69): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12179,91): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12180,43): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(12180,68): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12181,36): run-time error CSS1039: Token not allowed after unary operator: '-navbar_bg'
(12181,68): run-time error CSS1039: Token not allowed after unary operator: '-navbar_bg'
(12181,93): run-time error CSS1039: Token not allowed after unary operator: '-navbar_fg'
(12182,36): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12182,64): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12183,53): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12183,74): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12184,33): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12184,60): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12185,50): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12186,36): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12186,66): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12187,53): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12188,35): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12188,64): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12189,52): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12190,36): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12190,66): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12191,53): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12195,17): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12196,28): run-time error CSS1039: Token not allowed after unary operator: '-success_bg'
(12197,43): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12200,17): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12201,28): run-time error CSS1039: Token not allowed after unary operator: '-info_bg'
(12202,43): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12205,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12206,28): run-time error CSS1039: Token not allowed after unary operator: '-warning_bg'
(12207,43): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12210,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12211,28): run-time error CSS1039: Token not allowed after unary operator: '-danger_bg'
(12212,43): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12215,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12216,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12217,43): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12221,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12222,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12223,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12227,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12228,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12229,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12232,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12233,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12234,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12239,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12242,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12245,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12248,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12251,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12254,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12258,41): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12258,62): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12259,41): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12260,41): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12261,41): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12262,41): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12272,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12279,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12280,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12281,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12284,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12285,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12286,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12292,29): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12295,30): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12298,31): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12301,51): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12301,69): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12304,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12305,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12306,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12309,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12310,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12311,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12333,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12334,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12354,41): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12355,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12367,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12398,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12431,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12432,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12433,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(12434,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow'
(12448,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(12449,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12454,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(12455,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12481,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12482,33): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12483,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow_strong'
(12493,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12494,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12514,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(12515,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(12546,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12560,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12575,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12582,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12590,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12591,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12598,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12613,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12614,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(12615,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12620,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12633,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12641,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12653,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12657,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12663,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(12679,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(12680,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(12681,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(12690,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12695,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12732,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12737,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12741,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12746,17): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12757,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(12788,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12788,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12795,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12795,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12800,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(12800,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12827,44): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12827,57): run-time error CSS1039: Token not allowed after unary operator: '-info'
(12832,44): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12832,55): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(12836,44): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12836,60): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12840,44): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12840,60): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12843,44): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(12843,59): run-time error CSS1039: Token not allowed after unary operator: '-accent'
(12847,44): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12847,59): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12850,44): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12850,64): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12855,44): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12855,59): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12858,44): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12858,60): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12865,44): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12865,59): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(12868,44): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12868,60): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12889,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(12893,28): run-time error CSS1039: Token not allowed after unary operator: '-tint_yellow'
(12928,29): run-time error CSS1039: Token not allowed after unary operator: '-warning'
(12933,29): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12957,28): run-time error CSS1039: Token not allowed after unary operator: '-success'
(12958,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(12964,17): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(12981,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12982,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12983,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12984,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12985,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12986,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12987,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12988,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12989,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12990,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12991,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12992,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12993,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12994,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(12995,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(13003,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13004,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13005,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13008,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13020,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13024,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13036,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13047,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13071,28): run-time error CSS1039: Token not allowed after unary operator: '-field_disabled'
(13072,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13073,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13109,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13110,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13111,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13114,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(13115,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow'
(13119,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13119,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13120,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13125,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13126,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13127,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13136,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13137,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13140,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13144,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13144,38): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13144,51): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13154,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13155,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13160,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13161,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13165,35): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13169,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13174,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13177,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13178,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13188,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13189,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13196,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13198,32): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13211,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13212,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13226,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13227,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13228,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13248,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13253,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13256,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13257,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13264,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13265,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13266,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13272,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13282,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13282,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13286,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13287,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13288,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13291,28): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(13301,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13305,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(13315,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13321,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(13329,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13330,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13331,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13334,28): run-time error CSS1039: Token not allowed after unary operator: '-brand_hover'
(13335,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13342,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13343,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13349,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13353,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13357,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13357,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13358,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13366,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13375,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13376,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13377,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13381,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13385,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(13391,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13392,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13395,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13396,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13400,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13404,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13408,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13408,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13417,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13434,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13458,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13459,28): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13473,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13474,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13483,24): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13495,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13508,22): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13511,37): run-time error CSS1030: Expected identifier, found ':'
(13511,45): run-time error CSS1031: Expected selector, found ')'
(13511,45): run-time error CSS1025: Expected comma or open brace, found ')'
(13515,37): run-time error CSS1030: Expected identifier, found ':'
(13515,45): run-time error CSS1031: Expected selector, found ')'
(13515,45): run-time error CSS1025: Expected comma or open brace, found ')'
(13531,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13532,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13547,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13548,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13552,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13554,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13558,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13572,36): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13577,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13578,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13579,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13583,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13583,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13588,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13601,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13607,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13611,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13620,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13628,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13629,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13630,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13634,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13634,46): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13638,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13641,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13644,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13645,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13646,24): run-time error CSS1039: Token not allowed after unary operator: '-border_strong'
(13647,27): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13647,44): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13650,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13650,65): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13657,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13662,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13663,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13667,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13676,53): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13679,55): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13682,53): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13690,55): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13694,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13700,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13700,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13701,29): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13702,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(13703,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13708,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13709,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13710,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13711,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13718,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(13719,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13725,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13741,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13742,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13743,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13749,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13750,31): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13775,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13780,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13790,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13793,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13801,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13807,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13808,38): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13812,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13813,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13816,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13816,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13817,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13822,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13823,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13826,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13827,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13828,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13829,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13832,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13832,65): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13833,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13838,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13839,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13840,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13843,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13844,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13845,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13846,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(13849,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(13852,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13852,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13853,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13856,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13857,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13858,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13864,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13865,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13880,28): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(13881,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13882,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13885,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13886,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13893,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13899,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13900,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13904,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13912,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13913,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13914,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13919,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13920,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13924,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13924,65): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13925,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13933,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13934,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(13935,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13941,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13946,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13947,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13952,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13953,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13954,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13958,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13959,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13960,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13964,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13965,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13971,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13972,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(13973,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(13976,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(13977,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(13980,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(13986,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(13997,28): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14002,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14002,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14011,28): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(14020,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14021,24): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14025,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14046,28): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14047,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14052,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14053,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(14054,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow_strong'
(14058,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14062,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14065,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14070,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14079,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14080,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14081,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14082,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14086,47): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14086,65): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14093,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(14096,28): run-time error CSS1039: Token not allowed after unary operator: '-danger_bg'
(14101,28): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(14102,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14103,24): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14106,28): run-time error CSS1039: Token not allowed after unary operator: '-danger_bg'
(14107,17): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(14108,24): run-time error CSS1039: Token not allowed after unary operator: '-danger'
(14121,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14122,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14123,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14134,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14144,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14155,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14167,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14171,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14195,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14244,18): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(14266,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14272,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14279,18): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14296,22): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14312,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14320,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14349,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14355,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14377,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14384,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(14424,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14425,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(14426,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14427,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow'
(14435,22): run-time error CSS1039: Token not allowed after unary operator: '-bg'
(14442,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14453,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14454,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14459,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14478,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14480,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14486,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(14487,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14492,29): run-time error CSS1039: Token not allowed after unary operator: '-ring'
(14503,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14504,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14515,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14517,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14522,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(14523,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14527,29): run-time error CSS1039: Token not allowed after unary operator: '-ring'
(14533,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14557,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14564,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14568,29): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14569,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_3'
(14577,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14581,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14595,22): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14596,17): run-time error CSS1039: Token not allowed after unary operator: '-brand_fg'
(14660,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14668,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(14674,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14682,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14686,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(14695,33): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14713,17): run-time error CSS1039: Token not allowed after unary operator: '-text_subtle'
(14723,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14732,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14741,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14750,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14754,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14759,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14764,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14775,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14776,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14777,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14786,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14794,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14811,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14812,25): run-time error CSS1039: Token not allowed after unary operator: '-radius'
(14813,22): run-time error CSS1039: Token not allowed after unary operator: '-surface'
(14814,22): run-time error CSS1039: Token not allowed after unary operator: '-shadow'
(14825,35): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14830,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14837,17): run-time error CSS1039: Token not allowed after unary operator: '-brand'
(14851,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14861,17): run-time error CSS1039: Token not allowed after unary operator: '-text'
(14862,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14863,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14864,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
(14882,32): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14889,17): run-time error CSS1039: Token not allowed after unary operator: '-text_muted'
(14891,28): run-time error CSS1039: Token not allowed after unary operator: '-border'
(14892,25): run-time error CSS1039: Token not allowed after unary operator: '-radius_sm'
(14893,22): run-time error CSS1039: Token not allowed after unary operator: '-surface_2'
 */
/*!
 * Bootstrap v4.6.2 (https://getbootstrap.com/)
 * Copyright 2011-2022 The Bootstrap Authors
 * Copyright 2011-2022 Twitter, Inc.
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #fd7e14;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;
  --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  font-family: sans-serif;
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
  display: block;
}

body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #212529;
  text-align: left;
  background-color: #fff;
}

[tabindex="-1"]:focus:not(:focus-visible) {
  outline: 0 !important;
}

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

p {
  margin-top: 0;
  margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
  cursor: help;
  border-bottom: 0;
  -webkit-text-decoration-skip-ink: none;
  text-decoration-skip-ink: none;
}

address {
  margin-bottom: 1rem;
  font-style: normal;
  line-height: inherit;
}

ol,
ul,
dl {
  margin-top: 0;
  margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
  margin-bottom: 0;
}

dt {
  font-weight: 700;
}

dd {
  margin-bottom: .5rem;
  margin-left: 0;
}

blockquote {
  margin: 0 0 1rem;
}

b,
strong {
  font-weight: bolder;
}

small {
  font-size: 80%;
}

sub,
sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

a {
  color: #007bff;
  text-decoration: none;
  background-color: transparent;
}

a:hover {
  color: #0056b3;
  text-decoration: underline;
}

a:not([href]):not([class]) {
  color: inherit;
  text-decoration: none;
}

a:not([href]):not([class]):hover {
  color: inherit;
  text-decoration: none;
}

pre,
code,
kbd,
samp {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size: 1em;
}

pre {
  margin-top: 0;
  margin-bottom: 1rem;
  overflow: auto;
  -ms-overflow-style: scrollbar;
}

figure {
  margin: 0 0 1rem;
}

img {
  vertical-align: middle;
  border-style: none;
}

svg {
  overflow: hidden;
  vertical-align: middle;
}

table {
  border-collapse: collapse;
}

caption {
  padding-top: 0.75rem;
  padding-bottom: 0.75rem;
  color: #6c757d;
  text-align: left;
  caption-side: bottom;
}

th {
  text-align: inherit;
  text-align: -webkit-match-parent;
}

label {
  display: inline-block;
  margin-bottom: 0.5rem;
}

button {
  border-radius: 0;
}

button:focus:not(:focus-visible) {
  outline: 0;
}

input,
button,
select,
optgroup,
textarea {
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

[role="button"] {
  cursor: pointer;
}

select {
  word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
  cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
  box-sizing: border-box;
  padding: 0;
}

textarea {
  overflow: auto;
  resize: vertical;
}

fieldset {
  min-width: 0;
  padding: 0;
  margin: 0;
  border: 0;
}

legend {
  display: block;
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin-bottom: .5rem;
  font-size: 1.5rem;
  line-height: inherit;
  color: inherit;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

[type="search"] {
  outline-offset: -2px;
  -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  font: inherit;
  -webkit-appearance: button;
}

output {
  display: inline-block;
}

summary {
  display: list-item;
  cursor: pointer;
}

template {
  display: none;
}

[hidden] {
  display: none !important;
}

h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6 {
  margin-bottom: 0.5rem;
  font-weight: 500;
  line-height: 1.2;
}

h1, .h1 {
  font-size: 2.5rem;
}

h2, .h2 {
  font-size: 2rem;
}

h3, .h3 {
  font-size: 1.75rem;
}

h4, .h4 {
  font-size: 1.5rem;
}

h5, .h5 {
  font-size: 1.25rem;
}

h6, .h6 {
  font-size: 1rem;
}

.lead {
  font-size: 1.25rem;
  font-weight: 300;
}

.display-1 {
  font-size: 6rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-2 {
  font-size: 5.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-3 {
  font-size: 4.5rem;
  font-weight: 300;
  line-height: 1.2;
}

.display-4 {
  font-size: 3.5rem;
  font-weight: 300;
  line-height: 1.2;
}

hr {
  margin-top: 1rem;
  margin-bottom: 1rem;
  border: 0;
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

small,
.small {
  font-size: 0.875em;
  font-weight: 400;
}

mark,
.mark {
  padding: 0.2em;
  background-color: #fcf8e3;
}

.list-unstyled {
  padding-left: 0;
  list-style: none;
}

.list-inline {
  padding-left: 0;
  list-style: none;
}

.list-inline-item {
  display: inline-block;
}

.list-inline-item:not(:last-child) {
  margin-right: 0.5rem;
}

.initialism {
  font-size: 90%;
  text-transform: uppercase;
}

.blockquote {
  margin-bottom: 1rem;
  font-size: 1.25rem;
}

.blockquote-footer {
  display: block;
  font-size: 0.875em;
  color: #6c757d;
}

.blockquote-footer::before {
  content: "\2014\00A0";
}

.img-fluid {
  max-width: 100%;
  height: auto;
}

.img-thumbnail {
  padding: 0.25rem;
  background-color: #fff;
  border: 1px solid #dee2e6;
  border-radius: 0.25rem;
  max-width: 100%;
  height: auto;
}

.figure {
  display: inline-block;
}

.figure-img {
  margin-bottom: 0.5rem;
  line-height: 1;
}

.figure-caption {
  font-size: 90%;
  color: #6c757d;
}

code {
  font-size: 87.5%;
  color: #e83e8c;
  word-wrap: break-word;
}

a > code {
  color: inherit;
}

kbd {
  padding: 0.2rem 0.4rem;
  font-size: 87.5%;
  color: #fff;
  background-color: #212529;
  border-radius: 0.2rem;
}

kbd kbd {
  padding: 0;
  font-size: 100%;
  font-weight: 700;
}

pre {
  display: block;
  font-size: 87.5%;
  color: #212529;
}

pre code {
  font-size: inherit;
  color: inherit;
  word-break: normal;
}

.pre-scrollable {
  max-height: 340px;
  overflow-y: scroll;
}

.container,
.container-fluid,
.container-sm,
.container-md,
.container-lg,
.container-xl {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 576px) {
  .container, .container-sm {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  .container, .container-sm, .container-md {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  .container, .container-sm, .container-md, .container-lg {
    max-width: 960px;
  }
}

@media (min-width: 1200px) {
  .container, .container-sm, .container-md, .container-lg, .container-xl {
    max-width: 1140px;
  }
}

.row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -15px;
  margin-left: -15px;
}

.no-gutters {
  margin-right: 0;
  margin-left: 0;
}

.no-gutters > .col,
.no-gutters > [class*="col-"] {
  padding-right: 0;
  padding-left: 0;
}

.col-1, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-10, .col-11, .col-12, .col,
.col-auto, .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm,
.col-sm-auto, .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12, .col-md,
.col-md-auto, .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg,
.col-lg-auto, .col-xl-1, .col-xl-2, .col-xl-3, .col-xl-4, .col-xl-5, .col-xl-6, .col-xl-7, .col-xl-8, .col-xl-9, .col-xl-10, .col-xl-11, .col-xl-12, .col-xl,
.col-xl-auto {
  position: relative;
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
}

.col {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 100%;
}

.row-cols-1 > * {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.row-cols-2 > * {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.row-cols-3 > * {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.row-cols-4 > * {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.row-cols-5 > * {
  -ms-flex: 0 0 20%;
  flex: 0 0 20%;
  max-width: 20%;
}

.row-cols-6 > * {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-auto {
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  width: auto;
  max-width: 100%;
}

.col-1 {
  -ms-flex: 0 0 8.333333%;
  flex: 0 0 8.333333%;
  max-width: 8.333333%;
}

.col-2 {
  -ms-flex: 0 0 16.666667%;
  flex: 0 0 16.666667%;
  max-width: 16.666667%;
}

.col-3 {
  -ms-flex: 0 0 25%;
  flex: 0 0 25%;
  max-width: 25%;
}

.col-4 {
  -ms-flex: 0 0 33.333333%;
  flex: 0 0 33.333333%;
  max-width: 33.333333%;
}

.col-5 {
  -ms-flex: 0 0 41.666667%;
  flex: 0 0 41.666667%;
  max-width: 41.666667%;
}

.col-6 {
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.col-7 {
  -ms-flex: 0 0 58.333333%;
  flex: 0 0 58.333333%;
  max-width: 58.333333%;
}

.col-8 {
  -ms-flex: 0 0 66.666667%;
  flex: 0 0 66.666667%;
  max-width: 66.666667%;
}

.col-9 {
  -ms-flex: 0 0 75%;
  flex: 0 0 75%;
  max-width: 75%;
}

.col-10 {
  -ms-flex: 0 0 83.333333%;
  flex: 0 0 83.333333%;
  max-width: 83.333333%;
}

.col-11 {
  -ms-flex: 0 0 91.666667%;
  flex: 0 0 91.666667%;
  max-width: 91.666667%;
}

.col-12 {
  -ms-flex: 0 0 100%;
  flex: 0 0 100%;
  max-width: 100%;
}

.order-first {
  -ms-flex-order: -1;
  order: -1;
}

.order-last {
  -ms-flex-order: 13;
  order: 13;
}

.order-0 {
  -ms-flex-order: 0;
  order: 0;
}

.order-1 {
  -ms-flex-order: 1;
  order: 1;
}

.order-2 {
  -ms-flex-order: 2;
  order: 2;
}

.order-3 {
  -ms-flex-order: 3;
  order: 3;
}

.order-4 {
  -ms-flex-order: 4;
  order: 4;
}

.order-5 {
  -ms-flex-order: 5;
  order: 5;
}

.order-6 {
  -ms-flex-order: 6;
  order: 6;
}

.order-7 {
  -ms-flex-order: 7;
  order: 7;
}

.order-8 {
  -ms-flex-order: 8;
  order: 8;
}

.order-9 {
  -ms-flex-order: 9;
  order: 9;
}

.order-10 {
  -ms-flex-order: 10;
  order: 10;
}

.order-11 {
  -ms-flex-order: 11;
  order: 11;
}

.order-12 {
  -ms-flex-order: 12;
  order: 12;
}

.offset-1 {
  margin-left: 8.333333%;
}

.offset-2 {
  margin-left: 16.666667%;
}

.offset-3 {
  margin-left: 25%;
}

.offset-4 {
  margin-left: 33.333333%;
}

.offset-5 {
  margin-left: 41.666667%;
}

.offset-6 {
  margin-left: 50%;
}

.offset-7 {
  margin-left: 58.333333%;
}

.offset-8 {
  margin-left: 66.666667%;
}

.offset-9 {
  margin-left: 75%;
}

.offset-10 {
  margin-left: 83.333333%;
}

.offset-11 {
  margin-left: 91.666667%;
}

@media (min-width: 576px) {
  .col-sm {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-sm-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-sm-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-sm-3 > * {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-sm-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-sm-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-sm-6 > * {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-sm-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-sm-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-sm-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-sm-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-sm-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-sm-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-sm-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-sm-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-sm-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-sm-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-sm-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-sm-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-sm-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-sm-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-sm-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-sm-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-sm-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-sm-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-sm-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-sm-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-sm-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-sm-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-sm-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-sm-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-sm-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-sm-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-sm-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-sm-0 {
    margin-left: 0;
  }
  .offset-sm-1 {
    margin-left: 8.333333%;
  }
  .offset-sm-2 {
    margin-left: 16.666667%;
  }
  .offset-sm-3 {
    margin-left: 25%;
  }
  .offset-sm-4 {
    margin-left: 33.333333%;
  }
  .offset-sm-5 {
    margin-left: 41.666667%;
  }
  .offset-sm-6 {
    margin-left: 50%;
  }
  .offset-sm-7 {
    margin-left: 58.333333%;
  }
  .offset-sm-8 {
    margin-left: 66.666667%;
  }
  .offset-sm-9 {
    margin-left: 75%;
  }
  .offset-sm-10 {
    margin-left: 83.333333%;
  }
  .offset-sm-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 768px) {
  .col-md {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-md-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-md-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-md-3 > * {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-md-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-md-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-md-6 > * {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-md-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-md-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-md-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-md-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-md-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-md-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-md-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-md-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-md-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-md-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-md-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-md-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-md-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-md-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-md-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-md-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-md-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-md-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-md-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-md-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-md-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-md-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-md-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-md-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-md-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-md-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-md-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-md-0 {
    margin-left: 0;
  }
  .offset-md-1 {
    margin-left: 8.333333%;
  }
  .offset-md-2 {
    margin-left: 16.666667%;
  }
  .offset-md-3 {
    margin-left: 25%;
  }
  .offset-md-4 {
    margin-left: 33.333333%;
  }
  .offset-md-5 {
    margin-left: 41.666667%;
  }
  .offset-md-6 {
    margin-left: 50%;
  }
  .offset-md-7 {
    margin-left: 58.333333%;
  }
  .offset-md-8 {
    margin-left: 66.666667%;
  }
  .offset-md-9 {
    margin-left: 75%;
  }
  .offset-md-10 {
    margin-left: 83.333333%;
  }
  .offset-md-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 992px) {
  .col-lg {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-lg-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-lg-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-lg-3 > * {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-lg-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-lg-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-lg-6 > * {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-lg-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-lg-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-lg-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-lg-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-lg-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-lg-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-lg-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-lg-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-lg-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-lg-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-lg-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-lg-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-lg-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-lg-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-lg-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-lg-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-lg-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-lg-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-lg-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-lg-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-lg-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-lg-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-lg-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-lg-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-lg-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-lg-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-lg-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-lg-0 {
    margin-left: 0;
  }
  .offset-lg-1 {
    margin-left: 8.333333%;
  }
  .offset-lg-2 {
    margin-left: 16.666667%;
  }
  .offset-lg-3 {
    margin-left: 25%;
  }
  .offset-lg-4 {
    margin-left: 33.333333%;
  }
  .offset-lg-5 {
    margin-left: 41.666667%;
  }
  .offset-lg-6 {
    margin-left: 50%;
  }
  .offset-lg-7 {
    margin-left: 58.333333%;
  }
  .offset-lg-8 {
    margin-left: 66.666667%;
  }
  .offset-lg-9 {
    margin-left: 75%;
  }
  .offset-lg-10 {
    margin-left: 83.333333%;
  }
  .offset-lg-11 {
    margin-left: 91.666667%;
  }
}

@media (min-width: 1200px) {
  .col-xl {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  .row-cols-xl-1 > * {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .row-cols-xl-2 > * {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .row-cols-xl-3 > * {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .row-cols-xl-4 > * {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .row-cols-xl-5 > * {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  .row-cols-xl-6 > * {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-auto {
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  .col-xl-1 {
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  .col-xl-2 {
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  .col-xl-3 {
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  .col-xl-4 {
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  .col-xl-5 {
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  .col-xl-6 {
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  .col-xl-7 {
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  .col-xl-8 {
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  .col-xl-9 {
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  .col-xl-10 {
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  .col-xl-11 {
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  .col-xl-12 {
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  .order-xl-first {
    -ms-flex-order: -1;
    order: -1;
  }
  .order-xl-last {
    -ms-flex-order: 13;
    order: 13;
  }
  .order-xl-0 {
    -ms-flex-order: 0;
    order: 0;
  }
  .order-xl-1 {
    -ms-flex-order: 1;
    order: 1;
  }
  .order-xl-2 {
    -ms-flex-order: 2;
    order: 2;
  }
  .order-xl-3 {
    -ms-flex-order: 3;
    order: 3;
  }
  .order-xl-4 {
    -ms-flex-order: 4;
    order: 4;
  }
  .order-xl-5 {
    -ms-flex-order: 5;
    order: 5;
  }
  .order-xl-6 {
    -ms-flex-order: 6;
    order: 6;
  }
  .order-xl-7 {
    -ms-flex-order: 7;
    order: 7;
  }
  .order-xl-8 {
    -ms-flex-order: 8;
    order: 8;
  }
  .order-xl-9 {
    -ms-flex-order: 9;
    order: 9;
  }
  .order-xl-10 {
    -ms-flex-order: 10;
    order: 10;
  }
  .order-xl-11 {
    -ms-flex-order: 11;
    order: 11;
  }
  .order-xl-12 {
    -ms-flex-order: 12;
    order: 12;
  }
  .offset-xl-0 {
    margin-left: 0;
  }
  .offset-xl-1 {
    margin-left: 8.333333%;
  }
  .offset-xl-2 {
    margin-left: 16.666667%;
  }
  .offset-xl-3 {
    margin-left: 25%;
  }
  .offset-xl-4 {
    margin-left: 33.333333%;
  }
  .offset-xl-5 {
    margin-left: 41.666667%;
  }
  .offset-xl-6 {
    margin-left: 50%;
  }
  .offset-xl-7 {
    margin-left: 58.333333%;
  }
  .offset-xl-8 {
    margin-left: 66.666667%;
  }
  .offset-xl-9 {
    margin-left: 75%;
  }
  .offset-xl-10 {
    margin-left: 83.333333%;
  }
  .offset-xl-11 {
    margin-left: 91.666667%;
  }
}

.table {
  width: 100%;
  margin-bottom: 1rem;
  color: #212529;
}

.table th,
.table td {
  padding: 0.75rem;
  vertical-align: top;
  border-top: 1px solid #dee2e6;
}

.table thead th {
  vertical-align: bottom;
  border-bottom: 2px solid #dee2e6;
}

.table tbody + tbody {
  border-top: 2px solid #dee2e6;
}

.table-sm th,
.table-sm td {
  padding: 0.3rem;
}

.table-bordered {
  border: 1px solid #dee2e6;
}

.table-bordered th,
.table-bordered td {
  border: 1px solid #dee2e6;
}

.table-bordered thead th,
.table-bordered thead td {
  border-bottom-width: 2px;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody + tbody {
  border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05);
}

.table-hover tbody tr:hover {
  color: #212529;
  background-color: rgba(0, 0, 0, 0.075);
}

.table-primary,
.table-primary > th,
.table-primary > td {
  background-color: #b8daff;
}

.table-primary th,
.table-primary td,
.table-primary thead th,
.table-primary tbody + tbody {
  border-color: #7abaff;
}

.table-hover .table-primary:hover {
  background-color: #9fcdff;
}

.table-hover .table-primary:hover > td,
.table-hover .table-primary:hover > th {
  background-color: #9fcdff;
}

.table-secondary,
.table-secondary > th,
.table-secondary > td {
  background-color: #d6d8db;
}

.table-secondary th,
.table-secondary td,
.table-secondary thead th,
.table-secondary tbody + tbody {
  border-color: #b3b7bb;
}

.table-hover .table-secondary:hover {
  background-color: #c8cbcf;
}

.table-hover .table-secondary:hover > td,
.table-hover .table-secondary:hover > th {
  background-color: #c8cbcf;
}

.table-success,
.table-success > th,
.table-success > td {
  background-color: #c3e6cb;
}

.table-success th,
.table-success td,
.table-success thead th,
.table-success tbody + tbody {
  border-color: #8fd19e;
}

.table-hover .table-success:hover {
  background-color: #b1dfbb;
}

.table-hover .table-success:hover > td,
.table-hover .table-success:hover > th {
  background-color: #b1dfbb;
}

.table-info,
.table-info > th,
.table-info > td {
  background-color: #bee5eb;
}

.table-info th,
.table-info td,
.table-info thead th,
.table-info tbody + tbody {
  border-color: #86cfda;
}

.table-hover .table-info:hover {
  background-color: #abdde5;
}

.table-hover .table-info:hover > td,
.table-hover .table-info:hover > th {
  background-color: #abdde5;
}

.table-warning,
.table-warning > th,
.table-warning > td {
  background-color: #ffeeba;
}

.table-warning th,
.table-warning td,
.table-warning thead th,
.table-warning tbody + tbody {
  border-color: #ffdf7e;
}

.table-hover .table-warning:hover {
  background-color: #ffe8a1;
}

.table-hover .table-warning:hover > td,
.table-hover .table-warning:hover > th {
  background-color: #ffe8a1;
}

.table-danger,
.table-danger > th,
.table-danger > td {
  background-color: #f5c6cb;
}

.table-danger th,
.table-danger td,
.table-danger thead th,
.table-danger tbody + tbody {
  border-color: #ed969e;
}

.table-hover .table-danger:hover {
  background-color: #f1b0b7;
}

.table-hover .table-danger:hover > td,
.table-hover .table-danger:hover > th {
  background-color: #f1b0b7;
}

.table-light,
.table-light > th,
.table-light > td {
  background-color: #fdfdfe;
}

.table-light th,
.table-light td,
.table-light thead th,
.table-light tbody + tbody {
  border-color: #fbfcfc;
}

.table-hover .table-light:hover {
  background-color: #ececf6;
}

.table-hover .table-light:hover > td,
.table-hover .table-light:hover > th {
  background-color: #ececf6;
}

.table-dark,
.table-dark > th,
.table-dark > td {
  background-color: #c6c8ca;
}

.table-dark th,
.table-dark td,
.table-dark thead th,
.table-dark tbody + tbody {
  border-color: #95999c;
}

.table-hover .table-dark:hover {
  background-color: #b9bbbe;
}

.table-hover .table-dark:hover > td,
.table-hover .table-dark:hover > th {
  background-color: #b9bbbe;
}

.table-active,
.table-active > th,
.table-active > td {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover {
  background-color: rgba(0, 0, 0, 0.075);
}

.table-hover .table-active:hover > td,
.table-hover .table-active:hover > th {
  background-color: rgba(0, 0, 0, 0.075);
}

.table .thead-dark th {
  color: #fff;
  background-color: #343a40;
  border-color: #454d55;
}

.table .thead-light th {
  color: #495057;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.table-dark {
  color: #fff;
  background-color: #343a40;
}

.table-dark th,
.table-dark td,
.table-dark thead th {
  border-color: #454d55;
}

.table-dark.table-bordered {
  border: 0;
}

.table-dark.table-striped tbody tr:nth-of-type(odd) {
  background-color: rgba(255, 255, 255, 0.05);
}

.table-dark.table-hover tbody tr:hover {
  color: #fff;
  background-color: rgba(255, 255, 255, 0.075);
}

@media (max-width: 575.98px) {
  .table-responsive-sm {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-sm > .table-bordered {
    border: 0;
  }
}

@media (max-width: 767.98px) {
  .table-responsive-md {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-md > .table-bordered {
    border: 0;
  }
}

@media (max-width: 991.98px) {
  .table-responsive-lg {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-lg > .table-bordered {
    border: 0;
  }
}

@media (max-width: 1199.98px) {
  .table-responsive-xl {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .table-responsive-xl > .table-bordered {
    border: 0;
  }
}

.table-responsive {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.table-responsive > .table-bordered {
  border: 0;
}

.form-control {
  display: block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .form-control {
    transition: none;
  }
}

.form-control::-ms-expand {
  background-color: transparent;
  border: 0;
}

.form-control:focus {
  color: #495057;
  background-color: #fff;
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.form-control::-webkit-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-moz-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::-ms-input-placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control::placeholder {
  color: #6c757d;
  opacity: 1;
}

.form-control:disabled, .form-control[readonly] {
  background-color: #e9ecef;
  opacity: 1;
}

input[type="date"].form-control,
input[type="time"].form-control,
input[type="datetime-local"].form-control,
input[type="month"].form-control {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

select.form-control:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

select.form-control:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.form-control-file,
.form-control-range {
  display: block;
  width: 100%;
}

.col-form-label {
  padding-top: calc(0.375rem + 1px);
  padding-bottom: calc(0.375rem + 1px);
  margin-bottom: 0;
  font-size: inherit;
  line-height: 1.5;
}

.col-form-label-lg {
  padding-top: calc(0.5rem + 1px);
  padding-bottom: calc(0.5rem + 1px);
  font-size: 1.25rem;
  line-height: 1.5;
}

.col-form-label-sm {
  padding-top: calc(0.25rem + 1px);
  padding-bottom: calc(0.25rem + 1px);
  font-size: 0.875rem;
  line-height: 1.5;
}

.form-control-plaintext {
  display: block;
  width: 100%;
  padding: 0.375rem 0;
  margin-bottom: 0;
  font-size: 1rem;
  line-height: 1.5;
  color: #212529;
  background-color: transparent;
  border: solid transparent;
  border-width: 1px 0;
}

.form-control-plaintext.form-control-sm, .form-control-plaintext.form-control-lg {
  padding-right: 0;
  padding-left: 0;
}

.form-control-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.form-control-lg {
  height: calc(1.5em + 1rem + 2px);
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

select.form-control[size], select.form-control[multiple] {
  height: auto;
}

textarea.form-control {
  height: auto;
}

.form-group {
  margin-bottom: 1rem;
}

.form-text {
  display: block;
  margin-top: 0.25rem;
}

.form-row {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -5px;
  margin-left: -5px;
}

.form-row > .col,
.form-row > [class*="col-"] {
  padding-right: 5px;
  padding-left: 5px;
}

.form-check {
  position: relative;
  display: block;
  padding-left: 1.25rem;
}

.form-check-input {
  position: absolute;
  margin-top: 0.3rem;
  margin-left: -1.25rem;
}

.form-check-input[disabled] ~ .form-check-label,
.form-check-input:disabled ~ .form-check-label {
  color: #6c757d;
}

.form-check-label {
  margin-bottom: 0;
}

.form-check-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
  align-items: center;
  padding-left: 0;
  margin-right: 0.75rem;
}

.form-check-inline .form-check-input {
  position: static;
  margin-top: 0;
  margin-right: 0.3125rem;
  margin-left: 0;
}

.valid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #28a745;
}

.valid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(40, 167, 69, 0.9);
  border-radius: 0.25rem;
}

.form-row > .col > .valid-tooltip,
.form-row > [class*="col-"] > .valid-tooltip {
  left: 5px;
}

.was-validated :valid ~ .valid-feedback,
.was-validated :valid ~ .valid-tooltip,
.is-valid ~ .valid-feedback,
.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .form-control:valid, .form-control.is-valid {
  border-color: #28a745;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:valid:focus, .form-control.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated select.form-control:valid, select.form-control.is-valid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:valid, textarea.form-control.is-valid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:valid, .custom-select.is-valid {
  border-color: #28a745;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%2328a745' d='M2.3 6.73L.6 4.53c-.4-1.04.46-1.4 1.1-.8l1.1 1.4 3.4-3.8c.6-.63 1.6-.27 1.2.7l-4 4.6c-.43.5-.8.4-1.1.1z'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:valid:focus, .custom-select.is-valid:focus {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .form-check-input:valid ~ .form-check-label, .form-check-input.is-valid ~ .form-check-label {
  color: #28a745;
}

.was-validated .form-check-input:valid ~ .valid-feedback,
.was-validated .form-check-input:valid ~ .valid-tooltip, .form-check-input.is-valid ~ .valid-feedback,
.form-check-input.is-valid ~ .valid-tooltip {
  display: block;
}

.was-validated .custom-control-input:valid ~ .custom-control-label, .custom-control-input.is-valid ~ .custom-control-label {
  color: #28a745;
}

.was-validated .custom-control-input:valid ~ .custom-control-label::before, .custom-control-input.is-valid ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-control-input:valid:checked ~ .custom-control-label::before, .custom-control-input.is-valid:checked ~ .custom-control-label::before {
  border-color: #34ce57;
  background-color: #34ce57;
}

.was-validated .custom-control-input:valid:focus ~ .custom-control-label::before, .custom-control-input.is-valid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.was-validated .custom-control-input:valid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-valid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid ~ .custom-file-label, .custom-file-input.is-valid ~ .custom-file-label {
  border-color: #28a745;
}

.was-validated .custom-file-input:valid:focus ~ .custom-file-label, .custom-file-input.is-valid:focus ~ .custom-file-label {
  border-color: #28a745;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.25);
}

.invalid-feedback {
  display: none;
  width: 100%;
  margin-top: 0.25rem;
  font-size: 0.875em;
  color: #dc3545;
}

.invalid-tooltip {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  display: none;
  max-width: 100%;
  padding: 0.25rem 0.5rem;
  margin-top: .1rem;
  font-size: 0.875rem;
  line-height: 1.5;
  color: #fff;
  background-color: rgba(220, 53, 69, 0.9);
  border-radius: 0.25rem;
}

.form-row > .col > .invalid-tooltip,
.form-row > [class*="col-"] > .invalid-tooltip {
  left: 5px;
}

.was-validated :invalid ~ .invalid-feedback,
.was-validated :invalid ~ .invalid-tooltip,
.is-invalid ~ .invalid-feedback,
.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .form-control:invalid, .form-control.is-invalid {
  border-color: #dc3545;
  padding-right: calc(1.5em + 0.75rem) !important;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right calc(0.375em + 0.1875rem) center;
  background-size: calc(0.75em + 0.375rem) calc(0.75em + 0.375rem);
}

.was-validated .form-control:invalid:focus, .form-control.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated select.form-control:invalid, select.form-control.is-invalid {
  padding-right: 3rem !important;
  background-position: right 1.5rem center;
}

.was-validated textarea.form-control:invalid, textarea.form-control.is-invalid {
  padding-right: calc(1.5em + 0.75rem);
  background-position: top calc(0.375em + 0.1875rem) right calc(0.375em + 0.1875rem);
}

.was-validated .custom-select:invalid, .custom-select.is-invalid {
  border-color: #dc3545;
  padding-right: calc(0.75em + 2.3125rem) !important;
  background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat, #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e") center right 1.75rem/calc(0.75em + 0.375rem) calc(0.75em + 0.375rem) no-repeat;
}

.was-validated .custom-select:invalid:focus, .custom-select.is-invalid:focus {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .form-check-input:invalid ~ .form-check-label, .form-check-input.is-invalid ~ .form-check-label {
  color: #dc3545;
}

.was-validated .form-check-input:invalid ~ .invalid-feedback,
.was-validated .form-check-input:invalid ~ .invalid-tooltip, .form-check-input.is-invalid ~ .invalid-feedback,
.form-check-input.is-invalid ~ .invalid-tooltip {
  display: block;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label, .custom-control-input.is-invalid ~ .custom-control-label {
  color: #dc3545;
}

.was-validated .custom-control-input:invalid ~ .custom-control-label::before, .custom-control-input.is-invalid ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-control-input:invalid:checked ~ .custom-control-label::before, .custom-control-input.is-invalid:checked ~ .custom-control-label::before {
  border-color: #e4606d;
  background-color: #e4606d;
}

.was-validated .custom-control-input:invalid:focus ~ .custom-control-label::before, .custom-control-input.is-invalid:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.was-validated .custom-control-input:invalid:focus:not(:checked) ~ .custom-control-label::before, .custom-control-input.is-invalid:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid ~ .custom-file-label, .custom-file-input.is-invalid ~ .custom-file-label {
  border-color: #dc3545;
}

.was-validated .custom-file-input:invalid:focus ~ .custom-file-label, .custom-file-input.is-invalid:focus ~ .custom-file-label {
  border-color: #dc3545;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.25);
}

.form-inline {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -ms-flex-align: center;
  align-items: center;
}

.form-inline .form-check {
  width: 100%;
}

@media (min-width: 576px) {
  .form-inline label {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 0;
  }
  .form-inline .form-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0;
  }
  .form-inline .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .form-inline .form-control-plaintext {
    display: inline-block;
  }
  .form-inline .input-group,
  .form-inline .custom-select {
    width: auto;
  }
  .form-inline .form-check {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: auto;
    padding-left: 0;
  }
  .form-inline .form-check-input {
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-top: 0;
    margin-right: 0.25rem;
    margin-left: 0;
  }
  .form-inline .custom-control {
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .form-inline .custom-control-label {
    margin-bottom: 0;
  }
}

.btn {
  display: inline-block;
  font-weight: 400;
  color: #212529;
  text-align: center;
  vertical-align: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  background-color: transparent;
  border: 1px solid transparent;
  padding: 0.375rem 0.75rem;
  font-size: 1rem;
  line-height: 1.5;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .btn {
    transition: none;
  }
}

.btn:hover {
  color: #212529;
  text-decoration: none;
}

.btn:focus, .btn.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.btn.disabled, .btn:disabled {
  opacity: 0.65;
}

.btn:not(:disabled):not(.disabled) {
  cursor: pointer;
}

a.btn.disabled,
fieldset:disabled a.btn {
  pointer-events: none;
}

.btn-primary {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:hover {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
}

.btn-primary:focus, .btn-primary.focus {
  color: #fff;
  background-color: #0069d9;
  border-color: #0062cc;
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-primary.disabled, .btn-primary:disabled {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-primary:not(:disabled):not(.disabled):active, .btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle {
  color: #fff;
  background-color: #0062cc;
  border-color: #005cbf;
}

.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(38, 143, 255, 0.5);
}

.btn-secondary {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:hover {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
}

.btn-secondary:focus, .btn-secondary.focus {
  color: #fff;
  background-color: #5a6268;
  border-color: #545b62;
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-secondary.disabled, .btn-secondary:disabled {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-secondary:not(:disabled):not(.disabled):active, .btn-secondary:not(:disabled):not(.disabled).active,
.show > .btn-secondary.dropdown-toggle {
  color: #fff;
  background-color: #545b62;
  border-color: #4e555b;
}

.btn-secondary:not(:disabled):not(.disabled):active:focus, .btn-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(130, 138, 145, 0.5);
}

.btn-success {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:hover {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
}

.btn-success:focus, .btn-success.focus {
  color: #fff;
  background-color: #218838;
  border-color: #1e7e34;
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-success.disabled, .btn-success:disabled {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-success:not(:disabled):not(.disabled):active, .btn-success:not(:disabled):not(.disabled).active,
.show > .btn-success.dropdown-toggle {
  color: #fff;
  background-color: #1e7e34;
  border-color: #1c7430;
}

.btn-success:not(:disabled):not(.disabled):active:focus, .btn-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(72, 180, 97, 0.5);
}

.btn-info {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:hover {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
}

.btn-info:focus, .btn-info.focus {
  color: #fff;
  background-color: #138496;
  border-color: #117a8b;
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-info.disabled, .btn-info:disabled {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-info:not(:disabled):not(.disabled):active, .btn-info:not(:disabled):not(.disabled).active,
.show > .btn-info.dropdown-toggle {
  color: #fff;
  background-color: #117a8b;
  border-color: #10707f;
}

.btn-info:not(:disabled):not(.disabled):active:focus, .btn-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(58, 176, 195, 0.5);
}

.btn-warning {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:hover {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
}

.btn-warning:focus, .btn-warning.focus {
  color: #212529;
  background-color: #e0a800;
  border-color: #d39e00;
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-warning.disabled, .btn-warning:disabled {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-warning:not(:disabled):not(.disabled):active, .btn-warning:not(:disabled):not(.disabled).active,
.show > .btn-warning.dropdown-toggle {
  color: #212529;
  background-color: #d39e00;
  border-color: #c69500;
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .btn-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(222, 170, 12, 0.5);
}

.btn-danger {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:hover {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
}

.btn-danger:focus, .btn-danger.focus {
  color: #fff;
  background-color: #c82333;
  border-color: #bd2130;
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-danger.disabled, .btn-danger:disabled {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-danger:not(:disabled):not(.disabled):active, .btn-danger:not(:disabled):not(.disabled).active,
.show > .btn-danger.dropdown-toggle {
  color: #fff;
  background-color: #bd2130;
  border-color: #b21f2d;
}

.btn-danger:not(:disabled):not(.disabled):active:focus, .btn-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(225, 83, 97, 0.5);
}

.btn-light {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:hover {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
}

.btn-light:focus, .btn-light.focus {
  color: #212529;
  background-color: #e2e6ea;
  border-color: #dae0e5;
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-light.disabled, .btn-light:disabled {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-light:not(:disabled):not(.disabled):active, .btn-light:not(:disabled):not(.disabled).active,
.show > .btn-light.dropdown-toggle {
  color: #212529;
  background-color: #dae0e5;
  border-color: #d3d9df;
}

.btn-light:not(:disabled):not(.disabled):active:focus, .btn-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(216, 217, 219, 0.5);
}

.btn-dark {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:hover {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
}

.btn-dark:focus, .btn-dark.focus {
  color: #fff;
  background-color: #23272b;
  border-color: #1d2124;
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-dark.disabled, .btn-dark:disabled {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-dark:not(:disabled):not(.disabled):active, .btn-dark:not(:disabled):not(.disabled).active,
.show > .btn-dark.dropdown-toggle {
  color: #fff;
  background-color: #1d2124;
  border-color: #171a1d;
}

.btn-dark:not(:disabled):not(.disabled):active:focus, .btn-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(82, 88, 93, 0.5);
}

.btn-outline-primary {
  color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:focus, .btn-outline-primary.focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #007bff;
  background-color: transparent;
}

.btn-outline-primary:not(:disabled):not(.disabled):active, .btn-outline-primary:not(:disabled):not(.disabled).active,
.show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.btn-outline-primary:not(:disabled):not(.disabled):active:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-primary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.btn-outline-secondary {
  color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:hover {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:focus, .btn-outline-secondary.focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-secondary.disabled, .btn-outline-secondary:disabled {
  color: #6c757d;
  background-color: transparent;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active, .btn-outline-secondary:not(:disabled):not(.disabled).active,
.show > .btn-outline-secondary.dropdown-toggle {
  color: #fff;
  background-color: #6c757d;
  border-color: #6c757d;
}

.btn-outline-secondary:not(:disabled):not(.disabled):active:focus, .btn-outline-secondary:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-secondary.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.btn-outline-success {
  color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:focus, .btn-outline-success.focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #28a745;
  background-color: transparent;
}

.btn-outline-success:not(:disabled):not(.disabled):active, .btn-outline-success:not(:disabled):not(.disabled).active,
.show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #28a745;
  border-color: #28a745;
}

.btn-outline-success:not(:disabled):not(.disabled):active:focus, .btn-outline-success:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-success.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.btn-outline-info {
  color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:focus, .btn-outline-info.focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #17a2b8;
  background-color: transparent;
}

.btn-outline-info:not(:disabled):not(.disabled):active, .btn-outline-info:not(:disabled):not(.disabled).active,
.show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #17a2b8;
  border-color: #17a2b8;
}

.btn-outline-info:not(:disabled):not(.disabled):active:focus, .btn-outline-info:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-info.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.btn-outline-warning {
  color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:hover {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:focus, .btn-outline-warning.focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #ffc107;
  background-color: transparent;
}

.btn-outline-warning:not(:disabled):not(.disabled):active, .btn-outline-warning:not(:disabled):not(.disabled).active,
.show > .btn-outline-warning.dropdown-toggle {
  color: #212529;
  background-color: #ffc107;
  border-color: #ffc107;
}

.btn-outline-warning:not(:disabled):not(.disabled):active:focus, .btn-outline-warning:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-warning.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.btn-outline-danger {
  color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:focus, .btn-outline-danger.focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #dc3545;
  background-color: transparent;
}

.btn-outline-danger:not(:disabled):not(.disabled):active, .btn-outline-danger:not(:disabled):not(.disabled).active,
.show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #dc3545;
  border-color: #dc3545;
}

.btn-outline-danger:not(:disabled):not(.disabled):active:focus, .btn-outline-danger:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-danger.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.btn-outline-light {
  color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:hover {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:focus, .btn-outline-light.focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-light.disabled, .btn-outline-light:disabled {
  color: #f8f9fa;
  background-color: transparent;
}

.btn-outline-light:not(:disabled):not(.disabled):active, .btn-outline-light:not(:disabled):not(.disabled).active,
.show > .btn-outline-light.dropdown-toggle {
  color: #212529;
  background-color: #f8f9fa;
  border-color: #f8f9fa;
}

.btn-outline-light:not(:disabled):not(.disabled):active:focus, .btn-outline-light:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-light.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.btn-outline-dark {
  color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:hover {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:focus, .btn-outline-dark.focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-outline-dark.disabled, .btn-outline-dark:disabled {
  color: #343a40;
  background-color: transparent;
}

.btn-outline-dark:not(:disabled):not(.disabled):active, .btn-outline-dark:not(:disabled):not(.disabled).active,
.show > .btn-outline-dark.dropdown-toggle {
  color: #fff;
  background-color: #343a40;
  border-color: #343a40;
}

.btn-outline-dark:not(:disabled):not(.disabled):active:focus, .btn-outline-dark:not(:disabled):not(.disabled).active:focus,
.show > .btn-outline-dark.dropdown-toggle:focus {
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.btn-link {
  font-weight: 400;
  color: #007bff;
  text-decoration: none;
}

.btn-link:hover {
  color: #0056b3;
  text-decoration: underline;
}

.btn-link:focus, .btn-link.focus {
  text-decoration: underline;
}

.btn-link:disabled, .btn-link.disabled {
  color: #6c757d;
  pointer-events: none;
}

.btn-lg, .btn-group-lg > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.btn-sm, .btn-group-sm > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.btn-block {
  display: block;
  width: 100%;
}

.btn-block + .btn-block {
  margin-top: 0.5rem;
}

input[type="submit"].btn-block,
input[type="reset"].btn-block,
input[type="button"].btn-block {
  width: 100%;
}

.fade {
  transition: opacity 0.15s linear;
}

@media (prefers-reduced-motion: reduce) {
  .fade {
    transition: none;
  }
}

.fade:not(.show) {
  opacity: 0;
}

.collapse:not(.show) {
  display: none;
}

.collapsing {
  position: relative;
  height: 0;
  overflow: hidden;
  transition: height 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing {
    transition: none;
  }
}

.collapsing.width {
  width: 0;
  height: auto;
  transition: width 0.35s ease;
}

@media (prefers-reduced-motion: reduce) {
  .collapsing.width {
    transition: none;
  }
}

.dropup,
.dropright,
.dropdown,
.dropleft {
  position: relative;
}

.dropdown-toggle {
  white-space: nowrap;
}

.dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid;
  border-right: 0.3em solid transparent;
  border-bottom: 0;
  border-left: 0.3em solid transparent;
}

.dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  display: none;
  float: left;
  min-width: 10rem;
  padding: 0.5rem 0;
  margin: 0.125rem 0 0;
  font-size: 1rem;
  color: #212529;
  text-align: left;
  list-style: none;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.15);
  border-radius: 0.25rem;
}

.dropdown-menu-left {
  right: auto;
  left: 0;
}

.dropdown-menu-right {
  right: 0;
  left: auto;
}

@media (min-width: 576px) {
  .dropdown-menu-sm-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-sm-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 768px) {
  .dropdown-menu-md-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-md-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 992px) {
  .dropdown-menu-lg-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-lg-right {
    right: 0;
    left: auto;
  }
}

@media (min-width: 1200px) {
  .dropdown-menu-xl-left {
    right: auto;
    left: 0;
  }
  .dropdown-menu-xl-right {
    right: 0;
    left: auto;
  }
}

.dropup .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-top: 0;
  margin-bottom: 0.125rem;
}

.dropup .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0;
  border-right: 0.3em solid transparent;
  border-bottom: 0.3em solid;
  border-left: 0.3em solid transparent;
}

.dropup .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-menu {
  top: 0;
  right: auto;
  left: 100%;
  margin-top: 0;
  margin-left: 0.125rem;
}

.dropright .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0;
  border-bottom: 0.3em solid transparent;
  border-left: 0.3em solid;
}

.dropright .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropright .dropdown-toggle::after {
  vertical-align: 0;
}

.dropleft .dropdown-menu {
  top: 0;
  right: 100%;
  left: auto;
  margin-top: 0;
  margin-right: 0.125rem;
}

.dropleft .dropdown-toggle::after {
  display: inline-block;
  margin-left: 0.255em;
  vertical-align: 0.255em;
  content: "";
}

.dropleft .dropdown-toggle::after {
  display: none;
}

.dropleft .dropdown-toggle::before {
  display: inline-block;
  margin-right: 0.255em;
  vertical-align: 0.255em;
  content: "";
  border-top: 0.3em solid transparent;
  border-right: 0.3em solid;
  border-bottom: 0.3em solid transparent;
}

.dropleft .dropdown-toggle:empty::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle::before {
  vertical-align: 0;
}

.dropdown-menu[x-placement^="top"], .dropdown-menu[x-placement^="right"], .dropdown-menu[x-placement^="bottom"], .dropdown-menu[x-placement^="left"] {
  right: auto;
  bottom: auto;
}

.dropdown-divider {
  height: 0;
  margin: 0.5rem 0;
  overflow: hidden;
  border-top: 1px solid #e9ecef;
}

.dropdown-item {
  display: block;
  width: 100%;
  padding: 0.25rem 1.5rem;
  clear: both;
  font-weight: 400;
  color: #212529;
  text-align: inherit;
  white-space: nowrap;
  background-color: transparent;
  border: 0;
}

.dropdown-item:hover, .dropdown-item:focus {
  color: #16181b;
  text-decoration: none;
  background-color: #e9ecef;
}

.dropdown-item.active, .dropdown-item:active {
  color: #fff;
  text-decoration: none;
  background-color: #007bff;
}

.dropdown-item.disabled, .dropdown-item:disabled {
  color: #adb5bd;
  pointer-events: none;
  background-color: transparent;
}

.dropdown-menu.show {
  display: block;
}

.dropdown-header {
  display: block;
  padding: 0.5rem 1.5rem;
  margin-bottom: 0;
  font-size: 0.875rem;
  color: #6c757d;
  white-space: nowrap;
}

.dropdown-item-text {
  display: block;
  padding: 0.25rem 1.5rem;
  color: #212529;
}

.btn-group,
.btn-group-vertical {
  position: relative;
  display: -ms-inline-flexbox;
  display: inline-flex;
  vertical-align: middle;
}

.btn-group > .btn,
.btn-group-vertical > .btn {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover {
  z-index: 1;
}

.btn-group > .btn:focus, .btn-group > .btn:active, .btn-group > .btn.active,
.btn-group-vertical > .btn:focus,
.btn-group-vertical > .btn:active,
.btn-group-vertical > .btn.active {
  z-index: 1;
}

.btn-toolbar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.btn-toolbar .input-group {
  width: auto;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) {
  margin-left: -1px;
}

.btn-group > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group > .btn-group:not(:last-child) > .btn {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.btn-group > .btn:not(:first-child),
.btn-group > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.dropdown-toggle-split {
  padding-right: 0.5625rem;
  padding-left: 0.5625rem;
}

.dropdown-toggle-split::after,
.dropup .dropdown-toggle-split::after,
.dropright .dropdown-toggle-split::after {
  margin-left: 0;
}

.dropleft .dropdown-toggle-split::before {
  margin-right: 0;
}

.btn-sm + .dropdown-toggle-split, .btn-group-sm > .btn + .dropdown-toggle-split {
  padding-right: 0.375rem;
  padding-left: 0.375rem;
}

.btn-lg + .dropdown-toggle-split, .btn-group-lg > .btn + .dropdown-toggle-split {
  padding-right: 0.75rem;
  padding-left: 0.75rem;
}

.btn-group-vertical {
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: center;
  justify-content: center;
}

.btn-group-vertical > .btn,
.btn-group-vertical > .btn-group {
  width: 100%;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) {
  margin-top: -1px;
}

.btn-group-vertical > .btn:not(:last-child):not(.dropdown-toggle),
.btn-group-vertical > .btn-group:not(:last-child) > .btn {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.btn-group-vertical > .btn:not(:first-child),
.btn-group-vertical > .btn-group:not(:first-child) > .btn {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.btn-group-toggle > .btn,
.btn-group-toggle > .btn-group > .btn {
  margin-bottom: 0;
}

.btn-group-toggle > .btn input[type="radio"],
.btn-group-toggle > .btn input[type="checkbox"],
.btn-group-toggle > .btn-group > .btn input[type="radio"],
.btn-group-toggle > .btn-group > .btn input[type="checkbox"] {
  position: absolute;
  clip: rect(0, 0, 0, 0);
  pointer-events: none;
}

.input-group {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: stretch;
  align-items: stretch;
  width: 100%;
}

.input-group > .form-control,
.input-group > .form-control-plaintext,
.input-group > .custom-select,
.input-group > .custom-file {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  width: 1%;
  min-width: 0;
  margin-bottom: 0;
}

.input-group > .form-control + .form-control,
.input-group > .form-control + .custom-select,
.input-group > .form-control + .custom-file,
.input-group > .form-control-plaintext + .form-control,
.input-group > .form-control-plaintext + .custom-select,
.input-group > .form-control-plaintext + .custom-file,
.input-group > .custom-select + .form-control,
.input-group > .custom-select + .custom-select,
.input-group > .custom-select + .custom-file,
.input-group > .custom-file + .form-control,
.input-group > .custom-file + .custom-select,
.input-group > .custom-file + .custom-file {
  margin-left: -1px;
}

.input-group > .form-control:focus,
.input-group > .custom-select:focus,
.input-group > .custom-file .custom-file-input:focus ~ .custom-file-label {
  z-index: 3;
}

.input-group > .custom-file .custom-file-input:focus {
  z-index: 4;
}

.input-group > .form-control:not(:first-child),
.input-group > .custom-select:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group > .custom-file {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
}

.input-group > .custom-file:not(:last-child) .custom-file-label,
.input-group > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .custom-file:not(:first-child) .custom-file-label {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.input-group:not(.has-validation) > .form-control:not(:last-child),
.input-group:not(.has-validation) > .custom-select:not(:last-child),
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label,
.input-group:not(.has-validation) > .custom-file:not(:last-child) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group.has-validation > .form-control:nth-last-child(n + 3),
.input-group.has-validation > .custom-select:nth-last-child(n + 3),
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label,
.input-group.has-validation > .custom-file:nth-last-child(n + 3) .custom-file-label::after {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group-prepend,
.input-group-append {
  display: -ms-flexbox;
  display: flex;
}

.input-group-prepend .btn,
.input-group-append .btn {
  position: relative;
  z-index: 2;
}

.input-group-prepend .btn:focus,
.input-group-append .btn:focus {
  z-index: 3;
}

.input-group-prepend .btn + .btn,
.input-group-prepend .btn + .input-group-text,
.input-group-prepend .input-group-text + .input-group-text,
.input-group-prepend .input-group-text + .btn,
.input-group-append .btn + .btn,
.input-group-append .btn + .input-group-text,
.input-group-append .input-group-text + .input-group-text,
.input-group-append .input-group-text + .btn {
  margin-left: -1px;
}

.input-group-prepend {
  margin-right: -1px;
}

.input-group-append {
  margin-left: -1px;
}

.input-group-text {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.375rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  text-align: center;
  white-space: nowrap;
  background-color: #e9ecef;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.input-group-text input[type="radio"],
.input-group-text input[type="checkbox"] {
  margin-top: 0;
}

.input-group-lg > .form-control:not(textarea),
.input-group-lg > .custom-select {
  height: calc(1.5em + 1rem + 2px);
}

.input-group-lg > .form-control,
.input-group-lg > .custom-select,
.input-group-lg > .input-group-prepend > .input-group-text,
.input-group-lg > .input-group-append > .input-group-text,
.input-group-lg > .input-group-prepend > .btn,
.input-group-lg > .input-group-append > .btn {
  padding: 0.5rem 1rem;
  font-size: 1.25rem;
  line-height: 1.5;
  border-radius: 0.3rem;
}

.input-group-sm > .form-control:not(textarea),
.input-group-sm > .custom-select {
  height: calc(1.5em + 0.5rem + 2px);
}

.input-group-sm > .form-control,
.input-group-sm > .custom-select,
.input-group-sm > .input-group-prepend > .input-group-text,
.input-group-sm > .input-group-append > .input-group-text,
.input-group-sm > .input-group-prepend > .btn,
.input-group-sm > .input-group-append > .btn {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 0.2rem;
}

.input-group-lg > .custom-select,
.input-group-sm > .custom-select {
  padding-right: 1.75rem;
}

.input-group > .input-group-prepend > .btn,
.input-group > .input-group-prepend > .input-group-text,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .btn,
.input-group:not(.has-validation) > .input-group-append:not(:last-child) > .input-group-text,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .btn,
.input-group.has-validation > .input-group-append:nth-last-child(n + 3) > .input-group-text,
.input-group > .input-group-append:last-child > .btn:not(:last-child):not(.dropdown-toggle),
.input-group > .input-group-append:last-child > .input-group-text:not(:last-child) {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}

.input-group > .input-group-append > .btn,
.input-group > .input-group-append > .input-group-text,
.input-group > .input-group-prepend:not(:first-child) > .btn,
.input-group > .input-group-prepend:not(:first-child) > .input-group-text,
.input-group > .input-group-prepend:first-child > .btn:not(:first-child),
.input-group > .input-group-prepend:first-child > .input-group-text:not(:first-child) {
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}

.custom-control {
  position: relative;
  z-index: 1;
  display: block;
  min-height: 1.5rem;
  padding-left: 1.5rem;
  -webkit-print-color-adjust: exact;
  color-adjust: exact;
  print-color-adjust: exact;
}

.custom-control-inline {
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-right: 1rem;
}

.custom-control-input {
  position: absolute;
  left: 0;
  z-index: -1;
  width: 1rem;
  height: 1.25rem;
  opacity: 0;
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: #fff;
  border-color: #007bff;
  background-color: #007bff;
}

.custom-control-input:focus ~ .custom-control-label::before {
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-control-input:focus:not(:checked) ~ .custom-control-label::before {
  border-color: #80bdff;
}

.custom-control-input:not(:disabled):active ~ .custom-control-label::before {
  color: #fff;
  background-color: #b3d7ff;
  border-color: #b3d7ff;
}

.custom-control-input[disabled] ~ .custom-control-label, .custom-control-input:disabled ~ .custom-control-label {
  color: #6c757d;
}

.custom-control-input[disabled] ~ .custom-control-label::before, .custom-control-input:disabled ~ .custom-control-label::before {
  background-color: #e9ecef;
}

.custom-control-label {
  position: relative;
  margin-bottom: 0;
  vertical-align: top;
}

.custom-control-label::before {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  pointer-events: none;
  content: "";
  background-color: #fff;
  border: 1px solid #adb5bd;
}

.custom-control-label::after {
  position: absolute;
  top: 0.25rem;
  left: -1.5rem;
  display: block;
  width: 1rem;
  height: 1rem;
  content: "";
  background: 50% / 50% 50% no-repeat;
}

.custom-checkbox .custom-control-label::before {
  border-radius: 0.25rem;
}

.custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath fill='%23fff' d='M6.564.75l-3.59 3.612-1.538-1.55L0 4.26l2.974 2.99L8 2.193z'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::before {
  border-color: #007bff;
  background-color: #007bff;
}

.custom-checkbox .custom-control-input:indeterminate ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3e%3cpath stroke='%23fff' d='M0 2h4'/%3e%3c/svg%3e");
}

.custom-checkbox .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-checkbox .custom-control-input:disabled:indeterminate ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-radio .custom-control-label::before {
  border-radius: 50%;
}

.custom-radio .custom-control-input:checked ~ .custom-control-label::after {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

.custom-radio .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-switch {
  padding-left: 2.25rem;
}

.custom-switch .custom-control-label::before {
  left: -2.25rem;
  width: 1.75rem;
  pointer-events: all;
  border-radius: 0.5rem;
}

.custom-switch .custom-control-label::after {
  top: calc(0.25rem + 2px);
  left: calc(-2.25rem + 2px);
  width: calc(1rem - 4px);
  height: calc(1rem - 4px);
  background-color: #adb5bd;
  border-radius: 0.5rem;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: transform 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-switch .custom-control-label::after {
    transition: none;
  }
}

.custom-switch .custom-control-input:checked ~ .custom-control-label::after {
  background-color: #fff;
  -webkit-transform: translateX(0.75rem);
  transform: translateX(0.75rem);
}

.custom-switch .custom-control-input:disabled:checked ~ .custom-control-label::before {
  background-color: rgba(0, 123, 255, 0.5);
}

.custom-select {
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 1.75rem 0.375rem 0.75rem;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  vertical-align: middle;
  background: #fff url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='4' height='5' viewBox='0 0 4 5'%3e%3cpath fill='%23343a40' d='M2 0L0 2h4zm0 5L0 3h4z'/%3e%3c/svg%3e") right 0.75rem center/8px 10px no-repeat;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.custom-select:focus {
  border-color: #80bdff;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-select:focus::-ms-value {
  color: #495057;
  background-color: #fff;
}

.custom-select[multiple], .custom-select[size]:not([size="1"]) {
  height: auto;
  padding-right: 0.75rem;
  background-image: none;
}

.custom-select:disabled {
  color: #6c757d;
  background-color: #e9ecef;
}

.custom-select::-ms-expand {
  display: none;
}

.custom-select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 #495057;
}

.custom-select-sm {
  height: calc(1.5em + 0.5rem + 2px);
  padding-top: 0.25rem;
  padding-bottom: 0.25rem;
  padding-left: 0.5rem;
  font-size: 0.875rem;
}

.custom-select-lg {
  height: calc(1.5em + 1rem + 2px);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  padding-left: 1rem;
  font-size: 1.25rem;
}

.custom-file {
  position: relative;
  display: inline-block;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin-bottom: 0;
}

.custom-file-input {
  position: relative;
  z-index: 2;
  width: 100%;
  height: calc(1.5em + 0.75rem + 2px);
  margin: 0;
  overflow: hidden;
  opacity: 0;
}

.custom-file-input:focus ~ .custom-file-label {
  border-color: #80bdff;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-file-input[disabled] ~ .custom-file-label,
.custom-file-input:disabled ~ .custom-file-label {
  background-color: #e9ecef;
}

.custom-file-input:lang(en) ~ .custom-file-label::after {
  content: "Browse";
}

.custom-file-input ~ .custom-file-label[data-browse]::after {
  content: attr(data-browse);
}

.custom-file-label {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: calc(1.5em + 0.75rem + 2px);
  padding: 0.375rem 0.75rem;
  overflow: hidden;
  font-weight: 400;
  line-height: 1.5;
  color: #495057;
  background-color: #fff;
  border: 1px solid #ced4da;
  border-radius: 0.25rem;
}

.custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(1.5em + 0.75rem);
  padding: 0.375rem 0.75rem;
  line-height: 1.5;
  color: #495057;
  content: "Browse";
  background-color: #e9ecef;
  border-left: inherit;
  border-radius: 0 0.25rem 0.25rem 0;
}

.custom-range {
  width: 100%;
  height: 1.4rem;
  padding: 0;
  background-color: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.custom-range:focus {
  outline: 0;
}

.custom-range:focus::-webkit-slider-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range:focus::-ms-thumb {
  box-shadow: 0 0 0 1px #fff, 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.custom-range::-moz-focus-outer {
  border: 0;
}

.custom-range::-webkit-slider-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: -0.25rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -webkit-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -webkit-appearance: none;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-webkit-slider-thumb {
    -webkit-transition: none;
    transition: none;
  }
}

.custom-range::-webkit-slider-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-webkit-slider-runnable-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-moz-range-thumb {
  width: 1rem;
  height: 1rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -moz-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  -moz-appearance: none;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-moz-range-thumb {
    -moz-transition: none;
    transition: none;
  }
}

.custom-range::-moz-range-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-moz-range-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: #dee2e6;
  border-color: transparent;
  border-radius: 1rem;
}

.custom-range::-ms-thumb {
  width: 1rem;
  height: 1rem;
  margin-top: 0;
  margin-right: 0.2rem;
  margin-left: 0.2rem;
  background-color: #007bff;
  border: 0;
  border-radius: 1rem;
  -ms-transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  appearance: none;
}

@media (prefers-reduced-motion: reduce) {
  .custom-range::-ms-thumb {
    -ms-transition: none;
    transition: none;
  }
}

.custom-range::-ms-thumb:active {
  background-color: #b3d7ff;
}

.custom-range::-ms-track {
  width: 100%;
  height: 0.5rem;
  color: transparent;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
  border-width: 0.5rem;
}

.custom-range::-ms-fill-lower {
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range::-ms-fill-upper {
  margin-right: 15px;
  background-color: #dee2e6;
  border-radius: 1rem;
}

.custom-range:disabled::-webkit-slider-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-webkit-slider-runnable-track {
  cursor: default;
}

.custom-range:disabled::-moz-range-thumb {
  background-color: #adb5bd;
}

.custom-range:disabled::-moz-range-track {
  cursor: default;
}

.custom-range:disabled::-ms-thumb {
  background-color: #adb5bd;
}

.custom-control-label::before,
.custom-file-label,
.custom-select {
  transition: background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .custom-control-label::before,
  .custom-file-label,
  .custom-select {
    transition: none;
  }
}

.nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.nav-link {
  display: block;
  padding: 0.5rem 1rem;
}

.nav-link:hover, .nav-link:focus {
  text-decoration: none;
}

.nav-link.disabled {
  color: #6c757d;
  pointer-events: none;
  cursor: default;
}

.nav-tabs {
  border-bottom: 1px solid #dee2e6;
}

.nav-tabs .nav-link {
  margin-bottom: -1px;
  background-color: transparent;
  border: 1px solid transparent;
  border-top-left-radius: 0.25rem;
  border-top-right-radius: 0.25rem;
}

.nav-tabs .nav-link:hover, .nav-tabs .nav-link:focus {
  isolation: isolate;
  border-color: #e9ecef #e9ecef #dee2e6;
}

.nav-tabs .nav-link.disabled {
  color: #6c757d;
  background-color: transparent;
  border-color: transparent;
}

.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #495057;
  background-color: #fff;
  border-color: #dee2e6 #dee2e6 #fff;
}

.nav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.nav-pills .nav-link {
  background: none;
  border: 0;
  border-radius: 0.25rem;
}

.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #007bff;
}

.nav-fill > .nav-link,
.nav-fill .nav-item {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  text-align: center;
}

.nav-justified > .nav-link,
.nav-justified .nav-item {
  -ms-flex-preferred-size: 0;
  flex-basis: 0;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-align: center;
}

.tab-content > .tab-pane {
  display: none;
}

.tab-content > .active {
  display: block;
}

.navbar {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 0.5rem 1rem;
}

.navbar .container,
.navbar .container-fluid, .navbar .container-sm, .navbar .container-md, .navbar .container-lg, .navbar .container-xl {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.navbar-brand {
  display: inline-block;
  padding-top: 0.3125rem;
  padding-bottom: 0.3125rem;
  margin-right: 1rem;
  font-size: 1.25rem;
  line-height: inherit;
  white-space: nowrap;
}

.navbar-brand:hover, .navbar-brand:focus {
  text-decoration: none;
}

.navbar-nav {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.navbar-nav .nav-link {
  padding-right: 0;
  padding-left: 0;
}

.navbar-nav .dropdown-menu {
  position: static;
  float: none;
}

.navbar-text {
  display: inline-block;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}

.navbar-collapse {
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-align: center;
  align-items: center;
}

.navbar-toggler {
  padding: 0.25rem 0.75rem;
  font-size: 1.25rem;
  line-height: 1;
  background-color: transparent;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.navbar-toggler:hover, .navbar-toggler:focus {
  text-decoration: none;
}

.navbar-toggler-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  vertical-align: middle;
  content: "";
  background: 50% / 100% 100% no-repeat;
}

.navbar-nav-scroll {
  max-height: 75vh;
  overflow-y: auto;
}

@media (max-width: 575.98px) {
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 576px) {
  .navbar-expand-sm {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .navbar-expand-sm .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .navbar-expand-sm .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-sm .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-sm > .container,
  .navbar-expand-sm > .container-fluid, .navbar-expand-sm > .container-sm, .navbar-expand-sm > .container-md, .navbar-expand-sm > .container-lg, .navbar-expand-sm > .container-xl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .navbar-expand-sm .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-sm .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
  .navbar-expand-sm .navbar-toggler {
    display: none;
  }
}

@media (max-width: 767.98px) {
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {
  .navbar-expand-md {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .navbar-expand-md .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .navbar-expand-md .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-md .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md > .container,
  .navbar-expand-md > .container-fluid, .navbar-expand-md > .container-sm, .navbar-expand-md > .container-md, .navbar-expand-md > .container-lg, .navbar-expand-md > .container-xl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .navbar-expand-md .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-md .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
  .navbar-expand-md .navbar-toggler {
    display: none;
  }
}

@media (max-width: 991.98px) {
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 992px) {
  .navbar-expand-lg {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .navbar-expand-lg .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .navbar-expand-lg .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-lg .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-lg > .container,
  .navbar-expand-lg > .container-fluid, .navbar-expand-lg > .container-sm, .navbar-expand-lg > .container-md, .navbar-expand-lg > .container-lg, .navbar-expand-lg > .container-xl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .navbar-expand-lg .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-lg .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
  .navbar-expand-lg .navbar-toggler {
    display: none;
  }
}

@media (max-width: 1199.98px) {
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl {
    -ms-flex-flow: row nowrap;
    flex-flow: row nowrap;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
  .navbar-expand-xl .navbar-nav {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .navbar-expand-xl .navbar-nav .dropdown-menu {
    position: absolute;
  }
  .navbar-expand-xl .navbar-nav .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-xl > .container,
  .navbar-expand-xl > .container-fluid, .navbar-expand-xl > .container-sm, .navbar-expand-xl > .container-md, .navbar-expand-xl > .container-lg, .navbar-expand-xl > .container-xl {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
  .navbar-expand-xl .navbar-nav-scroll {
    overflow: visible;
  }
  .navbar-expand-xl .navbar-collapse {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-preferred-size: auto;
    flex-basis: auto;
  }
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.navbar-expand {
  -ms-flex-flow: row nowrap;
  flex-flow: row nowrap;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  padding-right: 0;
  padding-left: 0;
}

.navbar-expand .navbar-nav {
  -ms-flex-direction: row;
  flex-direction: row;
}

.navbar-expand .navbar-nav .dropdown-menu {
  position: absolute;
}

.navbar-expand .navbar-nav .nav-link {
  padding-right: 0.5rem;
  padding-left: 0.5rem;
}

.navbar-expand > .container,
.navbar-expand > .container-fluid, .navbar-expand > .container-sm, .navbar-expand > .container-md, .navbar-expand > .container-lg, .navbar-expand > .container-xl {
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.navbar-expand .navbar-nav-scroll {
  overflow: visible;
}

.navbar-expand .navbar-collapse {
  display: -ms-flexbox !important;
  display: flex !important;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

.navbar-expand .navbar-toggler {
  display: none;
}

.navbar-light .navbar-brand {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-brand:hover, .navbar-light .navbar-brand:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-nav .nav-link {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-nav .nav-link:hover, .navbar-light .navbar-nav .nav-link:focus {
  color: rgba(0, 0, 0, 0.7);
}

.navbar-light .navbar-nav .nav-link.disabled {
  color: rgba(0, 0, 0, 0.3);
}

.navbar-light .navbar-nav .show > .nav-link,
.navbar-light .navbar-nav .active > .nav-link,
.navbar-light .navbar-nav .nav-link.show,
.navbar-light .navbar-nav .nav-link.active {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-toggler {
  color: rgba(0, 0, 0, 0.5);
  border-color: rgba(0, 0, 0, 0.1);
}

.navbar-light .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-light .navbar-text {
  color: rgba(0, 0, 0, 0.5);
}

.navbar-light .navbar-text a {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-light .navbar-text a:hover, .navbar-light .navbar-text a:focus {
  color: rgba(0, 0, 0, 0.9);
}

.navbar-dark .navbar-brand {
  color: #fff;
}

.navbar-dark .navbar-brand:hover, .navbar-dark .navbar-brand:focus {
  color: #fff;
}

.navbar-dark .navbar-nav .nav-link {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-nav .nav-link:hover, .navbar-dark .navbar-nav .nav-link:focus {
  color: rgba(255, 255, 255, 0.75);
}

.navbar-dark .navbar-nav .nav-link.disabled {
  color: rgba(255, 255, 255, 0.25);
}

.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link,
.navbar-dark .navbar-nav .nav-link.show,
.navbar-dark .navbar-nav .nav-link.active {
  color: #fff;
}

.navbar-dark .navbar-toggler {
  color: rgba(255, 255, 255, 0.5);
  border-color: rgba(255, 255, 255, 0.1);
}

.navbar-dark .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.5%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-dark .navbar-text {
  color: rgba(255, 255, 255, 0.5);
}

.navbar-dark .navbar-text a {
  color: #fff;
}

.navbar-dark .navbar-text a:hover, .navbar-dark .navbar-text a:focus {
  color: #fff;
}

.card {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: border-box;
  border: 1px solid rgba(0, 0, 0, 0.125);
  border-radius: 0.25rem;
}

.card > hr {
  margin-right: 0;
  margin-left: 0;
}

.card > .list-group {
  border-top: inherit;
  border-bottom: inherit;
}

.card > .list-group:first-child {
  border-top-width: 0;
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card > .list-group:last-child {
  border-bottom-width: 0;
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card > .card-header + .list-group,
.card > .list-group + .card-footer {
  border-top: 0;
}

.card-body {
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-height: 1px;
  padding: 1.25rem;
}

.card-title {
  margin-bottom: 0.75rem;
}

.card-subtitle {
  margin-top: -0.375rem;
  margin-bottom: 0;
}

.card-text:last-child {
  margin-bottom: 0;
}

.card-link:hover {
  text-decoration: none;
}

.card-link + .card-link {
  margin-left: 1.25rem;
}

.card-header {
  padding: 0.75rem 1.25rem;
  margin-bottom: 0;
  background-color: rgba(0, 0, 0, 0.03);
  border-bottom: 1px solid rgba(0, 0, 0, 0.125);
}

.card-header:first-child {
  border-radius: calc(0.25rem - 1px) calc(0.25rem - 1px) 0 0;
}

.card-footer {
  padding: 0.75rem 1.25rem;
  background-color: rgba(0, 0, 0, 0.03);
  border-top: 1px solid rgba(0, 0, 0, 0.125);
}

.card-footer:last-child {
  border-radius: 0 0 calc(0.25rem - 1px) calc(0.25rem - 1px);
}

.card-header-tabs {
  margin-right: -0.625rem;
  margin-bottom: -0.75rem;
  margin-left: -0.625rem;
  border-bottom: 0;
}

.card-header-pills {
  margin-right: -0.625rem;
  margin-left: -0.625rem;
}

.card-img-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 1.25rem;
  border-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-top,
.card-img-bottom {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 100%;
}

.card-img,
.card-img-top {
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.card-img,
.card-img-bottom {
  border-bottom-right-radius: calc(0.25rem - 1px);
  border-bottom-left-radius: calc(0.25rem - 1px);
}

.card-deck .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-deck {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-right: -15px;
    margin-left: -15px;
  }
  .card-deck .card {
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    margin-right: 15px;
    margin-bottom: 0;
    margin-left: 15px;
  }
}

.card-group > .card {
  margin-bottom: 15px;
}

@media (min-width: 576px) {
  .card-group {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
  }
  .card-group > .card {
    -ms-flex: 1 0 0%;
    flex: 1 0 0%;
    margin-bottom: 0;
  }
  .card-group > .card + .card {
    margin-left: 0;
    border-left: 0;
  }
  .card-group > .card:not(:last-child) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-top,
  .card-group > .card:not(:last-child) .card-header {
    border-top-right-radius: 0;
  }
  .card-group > .card:not(:last-child) .card-img-bottom,
  .card-group > .card:not(:last-child) .card-footer {
    border-bottom-right-radius: 0;
  }
  .card-group > .card:not(:first-child) {
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-top,
  .card-group > .card:not(:first-child) .card-header {
    border-top-left-radius: 0;
  }
  .card-group > .card:not(:first-child) .card-img-bottom,
  .card-group > .card:not(:first-child) .card-footer {
    border-bottom-left-radius: 0;
  }
}

.card-columns .card {
  margin-bottom: 0.75rem;
}

@media (min-width: 576px) {
  .card-columns {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
    -webkit-column-gap: 1.25rem;
    -moz-column-gap: 1.25rem;
    column-gap: 1.25rem;
    orphans: 1;
    widows: 1;
  }
  .card-columns .card {
    display: inline-block;
    width: 100%;
  }
}

.accordion {
  overflow-anchor: none;
}

.accordion > .card {
  overflow: hidden;
}

.accordion > .card:not(:last-of-type) {
  border-bottom: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.accordion > .card:not(:first-of-type) {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.accordion > .card > .card-header {
  border-radius: 0;
  margin-bottom: -1px;
}

.breadcrumb {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 0.75rem 1rem;
  margin-bottom: 1rem;
  list-style: none;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.breadcrumb-item + .breadcrumb-item {
  padding-left: 0.5rem;
}

.breadcrumb-item + .breadcrumb-item::before {
  float: left;
  padding-right: 0.5rem;
  color: #6c757d;
  content: "/";
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: underline;
}

.breadcrumb-item + .breadcrumb-item:hover::before {
  text-decoration: none;
}

.breadcrumb-item.active {
  color: #6c757d;
}

.pagination {
  display: -ms-flexbox;
  display: flex;
  padding-left: 0;
  list-style: none;
  border-radius: 0.25rem;
}

.page-link {
  position: relative;
  display: block;
  padding: 0.5rem 0.75rem;
  margin-left: -1px;
  line-height: 1.25;
  color: #007bff;
  background-color: #fff;
  border: 1px solid #dee2e6;
}

.page-link:hover {
  z-index: 2;
  color: #0056b3;
  text-decoration: none;
  background-color: #e9ecef;
  border-color: #dee2e6;
}

.page-link:focus {
  z-index: 3;
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.25);
}

.page-item:first-child .page-link {
  margin-left: 0;
  border-top-left-radius: 0.25rem;
  border-bottom-left-radius: 0.25rem;
}

.page-item:last-child .page-link {
  border-top-right-radius: 0.25rem;
  border-bottom-right-radius: 0.25rem;
}

.page-item.active .page-link {
  z-index: 3;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.page-item.disabled .page-link {
  color: #6c757d;
  pointer-events: none;
  cursor: auto;
  background-color: #fff;
  border-color: #dee2e6;
}

.pagination-lg .page-link {
  padding: 0.75rem 1.5rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

.pagination-lg .page-item:first-child .page-link {
  border-top-left-radius: 0.3rem;
  border-bottom-left-radius: 0.3rem;
}

.pagination-lg .page-item:last-child .page-link {
  border-top-right-radius: 0.3rem;
  border-bottom-right-radius: 0.3rem;
}

.pagination-sm .page-link {
  padding: 0.25rem 0.5rem;
  font-size: 0.875rem;
  line-height: 1.5;
}

.pagination-sm .page-item:first-child .page-link {
  border-top-left-radius: 0.2rem;
  border-bottom-left-radius: 0.2rem;
}

.pagination-sm .page-item:last-child .page-link {
  border-top-right-radius: 0.2rem;
  border-bottom-right-radius: 0.2rem;
}

.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .badge {
    transition: none;
  }
}

a.badge:hover, a.badge:focus {
  text-decoration: none;
}

.badge:empty {
  display: none;
}

.btn .badge {
  position: relative;
  top: -1px;
}

.badge-pill {
  padding-right: 0.6em;
  padding-left: 0.6em;
  border-radius: 10rem;
}

.badge-primary {
  color: #fff;
  background-color: #007bff;
}

a.badge-primary:hover, a.badge-primary:focus {
  color: #fff;
  background-color: #0062cc;
}

a.badge-primary:focus, a.badge-primary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(0, 123, 255, 0.5);
}

.badge-secondary {
  color: #fff;
  background-color: #6c757d;
}

a.badge-secondary:hover, a.badge-secondary:focus {
  color: #fff;
  background-color: #545b62;
}

a.badge-secondary:focus, a.badge-secondary.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(108, 117, 125, 0.5);
}

.badge-success {
  color: #fff;
  background-color: #28a745;
}

a.badge-success:hover, a.badge-success:focus {
  color: #fff;
  background-color: #1e7e34;
}

a.badge-success:focus, a.badge-success.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(40, 167, 69, 0.5);
}

.badge-info {
  color: #fff;
  background-color: #17a2b8;
}

a.badge-info:hover, a.badge-info:focus {
  color: #fff;
  background-color: #117a8b;
}

a.badge-info:focus, a.badge-info.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(23, 162, 184, 0.5);
}

.badge-warning {
  color: #212529;
  background-color: #ffc107;
}

a.badge-warning:hover, a.badge-warning:focus {
  color: #212529;
  background-color: #d39e00;
}

a.badge-warning:focus, a.badge-warning.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(255, 193, 7, 0.5);
}

.badge-danger {
  color: #fff;
  background-color: #dc3545;
}

a.badge-danger:hover, a.badge-danger:focus {
  color: #fff;
  background-color: #bd2130;
}

a.badge-danger:focus, a.badge-danger.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(220, 53, 69, 0.5);
}

.badge-light {
  color: #212529;
  background-color: #f8f9fa;
}

a.badge-light:hover, a.badge-light:focus {
  color: #212529;
  background-color: #dae0e5;
}

a.badge-light:focus, a.badge-light.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(248, 249, 250, 0.5);
}

.badge-dark {
  color: #fff;
  background-color: #343a40;
}

a.badge-dark:hover, a.badge-dark:focus {
  color: #fff;
  background-color: #1d2124;
}

a.badge-dark:focus, a.badge-dark.focus {
  outline: 0;
  box-shadow: 0 0 0 0.2rem rgba(52, 58, 64, 0.5);
}

.jumbotron {
  padding: 2rem 1rem;
  margin-bottom: 2rem;
  background-color: #e9ecef;
  border-radius: 0.3rem;
}

@media (min-width: 576px) {
  .jumbotron {
    padding: 4rem 2rem;
  }
}

.jumbotron-fluid {
  padding-right: 0;
  padding-left: 0;
  border-radius: 0;
}

.alert {
  position: relative;
  padding: 0.75rem 1.25rem;
  margin-bottom: 1rem;
  border: 1px solid transparent;
  border-radius: 0.25rem;
}

.alert-heading {
  color: inherit;
}

.alert-link {
  font-weight: 700;
}

.alert-dismissible {
  padding-right: 4rem;
}

.alert-dismissible .close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  padding: 0.75rem 1.25rem;
  color: inherit;
}

.alert-primary {
  color: #004085;
  background-color: #cce5ff;
  border-color: #b8daff;
}

.alert-primary hr {
  border-top-color: #9fcdff;
}

.alert-primary .alert-link {
  color: #002752;
}

.alert-secondary {
  color: #383d41;
  background-color: #e2e3e5;
  border-color: #d6d8db;
}

.alert-secondary hr {
  border-top-color: #c8cbcf;
}

.alert-secondary .alert-link {
  color: #202326;
}

.alert-success {
  color: #155724;
  background-color: #d4edda;
  border-color: #c3e6cb;
}

.alert-success hr {
  border-top-color: #b1dfbb;
}

.alert-success .alert-link {
  color: #0b2e13;
}

.alert-info {
  color: #0c5460;
  background-color: #d1ecf1;
  border-color: #bee5eb;
}

.alert-info hr {
  border-top-color: #abdde5;
}

.alert-info .alert-link {
  color: #062c33;
}

.alert-warning {
  color: #856404;
  background-color: #fff3cd;
  border-color: #ffeeba;
}

.alert-warning hr {
  border-top-color: #ffe8a1;
}

.alert-warning .alert-link {
  color: #533f03;
}

.alert-danger {
  color: #721c24;
  background-color: #f8d7da;
  border-color: #f5c6cb;
}

.alert-danger hr {
  border-top-color: #f1b0b7;
}

.alert-danger .alert-link {
  color: #491217;
}

.alert-light {
  color: #818182;
  background-color: #fefefe;
  border-color: #fdfdfe;
}

.alert-light hr {
  border-top-color: #ececf6;
}

.alert-light .alert-link {
  color: #686868;
}

.alert-dark {
  color: #1b1e21;
  background-color: #d6d8d9;
  border-color: #c6c8ca;
}

.alert-dark hr {
  border-top-color: #b9bbbe;
}

.alert-dark .alert-link {
  color: #040505;
}

@-webkit-keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

@keyframes progress-bar-stripes {
  from {
    background-position: 1rem 0;
  }
  to {
    background-position: 0 0;
  }
}

.progress {
  display: -ms-flexbox;
  display: flex;
  height: 1rem;
  overflow: hidden;
  line-height: 0;
  font-size: 0.75rem;
  background-color: #e9ecef;
  border-radius: 0.25rem;
}

.progress-bar {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  background-color: #007bff;
  transition: width 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar {
    transition: none;
  }
}

.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
  background-size: 1rem 1rem;
}

.progress-bar-animated {
  -webkit-animation: 1s linear infinite progress-bar-stripes;
  animation: 1s linear infinite progress-bar-stripes;
}

@media (prefers-reduced-motion: reduce) {
  .progress-bar-animated {
    -webkit-animation: none;
    animation: none;
  }
}

.media {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
}

.media-body {
  -ms-flex: 1;
  flex: 1;
}

.list-group {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-left: 0;
  margin-bottom: 0;
  border-radius: 0.25rem;
}

.list-group-item-action {
  width: 100%;
  color: #495057;
  text-align: inherit;
}

.list-group-item-action:hover, .list-group-item-action:focus {
  z-index: 1;
  color: #495057;
  text-decoration: none;
  background-color: #f8f9fa;
}

.list-group-item-action:active {
  color: #212529;
  background-color: #e9ecef;
}

.list-group-item {
  position: relative;
  display: block;
  padding: 0.75rem 1.25rem;
  background-color: #fff;
  border: 1px solid rgba(0, 0, 0, 0.125);
}

.list-group-item:first-child {
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}

.list-group-item:last-child {
  border-bottom-right-radius: inherit;
  border-bottom-left-radius: inherit;
}

.list-group-item.disabled, .list-group-item:disabled {
  color: #6c757d;
  pointer-events: none;
  background-color: #fff;
}

.list-group-item.active {
  z-index: 2;
  color: #fff;
  background-color: #007bff;
  border-color: #007bff;
}

.list-group-item + .list-group-item {
  border-top-width: 0;
}

.list-group-item + .list-group-item.active {
  margin-top: -1px;
  border-top-width: 1px;
}

.list-group-horizontal {
  -ms-flex-direction: row;
  flex-direction: row;
}

.list-group-horizontal > .list-group-item:first-child {
  border-bottom-left-radius: 0.25rem;
  border-top-right-radius: 0;
}

.list-group-horizontal > .list-group-item:last-child {
  border-top-right-radius: 0.25rem;
  border-bottom-left-radius: 0;
}

.list-group-horizontal > .list-group-item.active {
  margin-top: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item {
  border-top-width: 1px;
  border-left-width: 0;
}

.list-group-horizontal > .list-group-item + .list-group-item.active {
  margin-left: -1px;
  border-left-width: 1px;
}

@media (min-width: 576px) {
  .list-group-horizontal-sm {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .list-group-horizontal-sm > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-sm > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-sm > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 768px) {
  .list-group-horizontal-md {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .list-group-horizontal-md > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-md > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-md > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 992px) {
  .list-group-horizontal-lg {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .list-group-horizontal-lg > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-lg > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-lg > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

@media (min-width: 1200px) {
  .list-group-horizontal-xl {
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .list-group-horizontal-xl > .list-group-item:first-child {
    border-bottom-left-radius: 0.25rem;
    border-top-right-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item:last-child {
    border-top-right-radius: 0.25rem;
    border-bottom-left-radius: 0;
  }
  .list-group-horizontal-xl > .list-group-item.active {
    margin-top: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item {
    border-top-width: 1px;
    border-left-width: 0;
  }
  .list-group-horizontal-xl > .list-group-item + .list-group-item.active {
    margin-left: -1px;
    border-left-width: 1px;
  }
}

.list-group-flush {
  border-radius: 0;
}

.list-group-flush > .list-group-item {
  border-width: 0 0 1px;
}

.list-group-flush > .list-group-item:last-child {
  border-bottom-width: 0;
}

.list-group-item-primary {
  color: #004085;
  background-color: #b8daff;
}

.list-group-item-primary.list-group-item-action:hover, .list-group-item-primary.list-group-item-action:focus {
  color: #004085;
  background-color: #9fcdff;
}

.list-group-item-primary.list-group-item-action.active {
  color: #fff;
  background-color: #004085;
  border-color: #004085;
}

.list-group-item-secondary {
  color: #383d41;
  background-color: #d6d8db;
}

.list-group-item-secondary.list-group-item-action:hover, .list-group-item-secondary.list-group-item-action:focus {
  color: #383d41;
  background-color: #c8cbcf;
}

.list-group-item-secondary.list-group-item-action.active {
  color: #fff;
  background-color: #383d41;
  border-color: #383d41;
}

.list-group-item-success {
  color: #155724;
  background-color: #c3e6cb;
}

.list-group-item-success.list-group-item-action:hover, .list-group-item-success.list-group-item-action:focus {
  color: #155724;
  background-color: #b1dfbb;
}

.list-group-item-success.list-group-item-action.active {
  color: #fff;
  background-color: #155724;
  border-color: #155724;
}

.list-group-item-info {
  color: #0c5460;
  background-color: #bee5eb;
}

.list-group-item-info.list-group-item-action:hover, .list-group-item-info.list-group-item-action:focus {
  color: #0c5460;
  background-color: #abdde5;
}

.list-group-item-info.list-group-item-action.active {
  color: #fff;
  background-color: #0c5460;
  border-color: #0c5460;
}

.list-group-item-warning {
  color: #856404;
  background-color: #ffeeba;
}

.list-group-item-warning.list-group-item-action:hover, .list-group-item-warning.list-group-item-action:focus {
  color: #856404;
  background-color: #ffe8a1;
}

.list-group-item-warning.list-group-item-action.active {
  color: #fff;
  background-color: #856404;
  border-color: #856404;
}

.list-group-item-danger {
  color: #721c24;
  background-color: #f5c6cb;
}

.list-group-item-danger.list-group-item-action:hover, .list-group-item-danger.list-group-item-action:focus {
  color: #721c24;
  background-color: #f1b0b7;
}

.list-group-item-danger.list-group-item-action.active {
  color: #fff;
  background-color: #721c24;
  border-color: #721c24;
}

.list-group-item-light {
  color: #818182;
  background-color: #fdfdfe;
}

.list-group-item-light.list-group-item-action:hover, .list-group-item-light.list-group-item-action:focus {
  color: #818182;
  background-color: #ececf6;
}

.list-group-item-light.list-group-item-action.active {
  color: #fff;
  background-color: #818182;
  border-color: #818182;
}

.list-group-item-dark {
  color: #1b1e21;
  background-color: #c6c8ca;
}

.list-group-item-dark.list-group-item-action:hover, .list-group-item-dark.list-group-item-action:focus {
  color: #1b1e21;
  background-color: #b9bbbe;
}

.list-group-item-dark.list-group-item-action.active {
  color: #fff;
  background-color: #1b1e21;
  border-color: #1b1e21;
}

.close {
  float: right;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1;
  color: #000;
  text-shadow: 0 1px 0 #fff;
  opacity: .5;
}

.close:hover {
  color: #000;
  text-decoration: none;
}

.close:not(:disabled):not(.disabled):hover, .close:not(:disabled):not(.disabled):focus {
  opacity: .75;
}

button.close {
  padding: 0;
  background-color: transparent;
  border: 0;
}

a.close.disabled {
  pointer-events: none;
}

.toast {
  -ms-flex-preferred-size: 350px;
  flex-basis: 350px;
  max-width: 350px;
  font-size: 0.875rem;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.1);
  box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
  opacity: 0;
  border-radius: 0.25rem;
}

.toast:not(:last-child) {
  margin-bottom: 0.75rem;
}

.toast.showing {
  opacity: 1;
}

.toast.show {
  display: block;
  opacity: 1;
}

.toast.hide {
  display: none;
}

.toast-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.25rem 0.75rem;
  color: #6c757d;
  background-color: rgba(255, 255, 255, 0.85);
  background-clip: padding-box;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  border-top-left-radius: calc(0.25rem - 1px);
  border-top-right-radius: calc(0.25rem - 1px);
}

.toast-body {
  padding: 0.75rem;
}

.modal-open {
  overflow: hidden;
}

.modal-open .modal {
  overflow-x: hidden;
  overflow-y: auto;
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1050;
  display: none;
  width: 100%;
  height: 100%;
  overflow: hidden;
  outline: 0;
}

.modal-dialog {
  position: relative;
  width: auto;
  margin: 0.5rem;
  pointer-events: none;
}

.modal.fade .modal-dialog {
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
  -webkit-transform: translate(0, -50px);
  transform: translate(0, -50px);
}

@media (prefers-reduced-motion: reduce) {
  .modal.fade .modal-dialog {
    transition: none;
  }
}

.modal.show .modal-dialog {
  -webkit-transform: none;
  transform: none;
}

.modal.modal-static .modal-dialog {
  -webkit-transform: scale(1.02);
  transform: scale(1.02);
}

.modal-dialog-scrollable {
  display: -ms-flexbox;
  display: flex;
  max-height: calc(100% - 1rem);
}

.modal-dialog-scrollable .modal-content {
  max-height: calc(100vh - 1rem);
  overflow: hidden;
}

.modal-dialog-scrollable .modal-header,
.modal-dialog-scrollable .modal-footer {
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.modal-dialog-scrollable .modal-body {
  overflow-y: auto;
}

.modal-dialog-centered {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  min-height: calc(100% - 1rem);
}

.modal-dialog-centered::before {
  display: block;
  height: calc(100vh - 1rem);
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
  content: "";
}

.modal-dialog-centered.modal-dialog-scrollable {
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
}

.modal-dialog-centered.modal-dialog-scrollable .modal-content {
  max-height: none;
}

.modal-dialog-centered.modal-dialog-scrollable::before {
  content: none;
}

.modal-content {
  position: relative;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  pointer-events: auto;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
  outline: 0;
}

.modal-backdrop {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1040;
  width: 100vw;
  height: 100vh;
  background-color: #000;
}

.modal-backdrop.fade {
  opacity: 0;
}

.modal-backdrop.show {
  opacity: 0.5;
}

.modal-header {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 1rem 1rem;
  border-bottom: 1px solid #dee2e6;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.modal-header .close {
  padding: 1rem 1rem;
  margin: -1rem -1rem -1rem auto;
}

.modal-title {
  margin-bottom: 0;
  line-height: 1.5;
}

.modal-body {
  position: relative;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 1rem;
}

.modal-footer {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding: 0.75rem;
  border-top: 1px solid #dee2e6;
  border-bottom-right-radius: calc(0.3rem - 1px);
  border-bottom-left-radius: calc(0.3rem - 1px);
}

.modal-footer > * {
  margin: 0.25rem;
}

.modal-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
}

@media (min-width: 576px) {
  .modal-dialog {
    max-width: 500px;
    margin: 1.75rem auto;
  }
  .modal-dialog-scrollable {
    max-height: calc(100% - 3.5rem);
  }
  .modal-dialog-scrollable .modal-content {
    max-height: calc(100vh - 3.5rem);
  }
  .modal-dialog-centered {
    min-height: calc(100% - 3.5rem);
  }
  .modal-dialog-centered::before {
    height: calc(100vh - 3.5rem);
    height: -webkit-min-content;
    height: -moz-min-content;
    height: min-content;
  }
  .modal-sm {
    max-width: 300px;
  }
}

@media (min-width: 992px) {
  .modal-lg,
  .modal-xl {
    max-width: 800px;
  }
}

@media (min-width: 1200px) {
  .modal-xl {
    max-width: 1140px;
  }
}

.tooltip {
  position: absolute;
  z-index: 1070;
  display: block;
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  opacity: 0;
}

.tooltip.show {
  opacity: 0.9;
}

.tooltip .arrow {
  position: absolute;
  display: block;
  width: 0.8rem;
  height: 0.4rem;
}

.tooltip .arrow::before {
  position: absolute;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-tooltip-top, .bs-tooltip-auto[x-placement^="top"] {
  padding: 0.4rem 0;
}

.bs-tooltip-top .arrow, .bs-tooltip-auto[x-placement^="top"] .arrow {
  bottom: 0;
}

.bs-tooltip-top .arrow::before, .bs-tooltip-auto[x-placement^="top"] .arrow::before {
  top: 0;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #000;
}

.bs-tooltip-right, .bs-tooltip-auto[x-placement^="right"] {
  padding: 0 0.4rem;
}

.bs-tooltip-right .arrow, .bs-tooltip-auto[x-placement^="right"] .arrow {
  left: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-right .arrow::before, .bs-tooltip-auto[x-placement^="right"] .arrow::before {
  right: 0;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #000;
}

.bs-tooltip-bottom, .bs-tooltip-auto[x-placement^="bottom"] {
  padding: 0.4rem 0;
}

.bs-tooltip-bottom .arrow, .bs-tooltip-auto[x-placement^="bottom"] .arrow {
  top: 0;
}

.bs-tooltip-bottom .arrow::before, .bs-tooltip-auto[x-placement^="bottom"] .arrow::before {
  bottom: 0;
  border-width: 0 0.4rem 0.4rem;
  border-bottom-color: #000;
}

.bs-tooltip-left, .bs-tooltip-auto[x-placement^="left"] {
  padding: 0 0.4rem;
}

.bs-tooltip-left .arrow, .bs-tooltip-auto[x-placement^="left"] .arrow {
  right: 0;
  width: 0.4rem;
  height: 0.8rem;
}

.bs-tooltip-left .arrow::before, .bs-tooltip-auto[x-placement^="left"] .arrow::before {
  left: 0;
  border-width: 0.4rem 0 0.4rem 0.4rem;
  border-left-color: #000;
}

.tooltip-inner {
  max-width: 200px;
  padding: 0.25rem 0.5rem;
  color: #fff;
  text-align: center;
  background-color: #000;
  border-radius: 0.25rem;
}

.popover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1060;
  display: block;
  max-width: 276px;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-style: normal;
  font-weight: 400;
  line-height: 1.5;
  text-align: left;
  text-align: start;
  text-decoration: none;
  text-shadow: none;
  text-transform: none;
  letter-spacing: normal;
  word-break: normal;
  white-space: normal;
  word-spacing: normal;
  line-break: auto;
  font-size: 0.875rem;
  word-wrap: break-word;
  background-color: #fff;
  background-clip: padding-box;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 0.3rem;
}

.popover .arrow {
  position: absolute;
  display: block;
  width: 1rem;
  height: 0.5rem;
  margin: 0 0.3rem;
}

.popover .arrow::before, .popover .arrow::after {
  position: absolute;
  display: block;
  content: "";
  border-color: transparent;
  border-style: solid;
}

.bs-popover-top, .bs-popover-auto[x-placement^="top"] {
  margin-bottom: 0.5rem;
}

.bs-popover-top > .arrow, .bs-popover-auto[x-placement^="top"] > .arrow {
  bottom: calc(-0.5rem - 1px);
}

.bs-popover-top > .arrow::before, .bs-popover-auto[x-placement^="top"] > .arrow::before {
  bottom: 0;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-top > .arrow::after, .bs-popover-auto[x-placement^="top"] > .arrow::after {
  bottom: 1px;
  border-width: 0.5rem 0.5rem 0;
  border-top-color: #fff;
}

.bs-popover-right, .bs-popover-auto[x-placement^="right"] {
  margin-left: 0.5rem;
}

.bs-popover-right > .arrow, .bs-popover-auto[x-placement^="right"] > .arrow {
  left: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-right > .arrow::before, .bs-popover-auto[x-placement^="right"] > .arrow::before {
  left: 0;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-right > .arrow::after, .bs-popover-auto[x-placement^="right"] > .arrow::after {
  left: 1px;
  border-width: 0.5rem 0.5rem 0.5rem 0;
  border-right-color: #fff;
}

.bs-popover-bottom, .bs-popover-auto[x-placement^="bottom"] {
  margin-top: 0.5rem;
}

.bs-popover-bottom > .arrow, .bs-popover-auto[x-placement^="bottom"] > .arrow {
  top: calc(-0.5rem - 1px);
}

.bs-popover-bottom > .arrow::before, .bs-popover-auto[x-placement^="bottom"] > .arrow::before {
  top: 0;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-bottom > .arrow::after, .bs-popover-auto[x-placement^="bottom"] > .arrow::after {
  top: 1px;
  border-width: 0 0.5rem 0.5rem 0.5rem;
  border-bottom-color: #fff;
}

.bs-popover-bottom .popover-header::before, .bs-popover-auto[x-placement^="bottom"] .popover-header::before {
  position: absolute;
  top: 0;
  left: 50%;
  display: block;
  width: 1rem;
  margin-left: -0.5rem;
  content: "";
  border-bottom: 1px solid #f7f7f7;
}

.bs-popover-left, .bs-popover-auto[x-placement^="left"] {
  margin-right: 0.5rem;
}

.bs-popover-left > .arrow, .bs-popover-auto[x-placement^="left"] > .arrow {
  right: calc(-0.5rem - 1px);
  width: 0.5rem;
  height: 1rem;
  margin: 0.3rem 0;
}

.bs-popover-left > .arrow::before, .bs-popover-auto[x-placement^="left"] > .arrow::before {
  right: 0;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: rgba(0, 0, 0, 0.25);
}

.bs-popover-left > .arrow::after, .bs-popover-auto[x-placement^="left"] > .arrow::after {
  right: 1px;
  border-width: 0.5rem 0 0.5rem 0.5rem;
  border-left-color: #fff;
}

.popover-header {
  padding: 0.5rem 0.75rem;
  margin-bottom: 0;
  font-size: 1rem;
  background-color: #f7f7f7;
  border-bottom: 1px solid #ebebeb;
  border-top-left-radius: calc(0.3rem - 1px);
  border-top-right-radius: calc(0.3rem - 1px);
}

.popover-header:empty {
  display: none;
}

.popover-body {
  padding: 0.5rem 0.75rem;
  color: #212529;
}

.carousel {
  position: relative;
}

.carousel.pointer-event {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.carousel-inner {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.carousel-inner::after {
  display: block;
  clear: both;
  content: "";
}

.carousel-item {
  position: relative;
  display: none;
  float: left;
  width: 100%;
  margin-right: -100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  transition: -webkit-transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out;
  transition: transform 0.6s ease-in-out, -webkit-transform 0.6s ease-in-out;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-item {
    transition: none;
  }
}

.carousel-item.active,
.carousel-item-next,
.carousel-item-prev {
  display: block;
}

.carousel-item-next:not(.carousel-item-left),
.active.carousel-item-right {
  -webkit-transform: translateX(100%);
  transform: translateX(100%);
}

.carousel-item-prev:not(.carousel-item-right),
.active.carousel-item-left {
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%);
}

.carousel-fade .carousel-item {
  opacity: 0;
  transition-property: opacity;
  -webkit-transform: none;
  transform: none;
}

.carousel-fade .carousel-item.active,
.carousel-fade .carousel-item-next.carousel-item-left,
.carousel-fade .carousel-item-prev.carousel-item-right {
  z-index: 1;
  opacity: 1;
}

.carousel-fade .active.carousel-item-left,
.carousel-fade .active.carousel-item-right {
  z-index: 0;
  opacity: 0;
  transition: opacity 0s 0.6s;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-fade .active.carousel-item-left,
  .carousel-fade .active.carousel-item-right {
    transition: none;
  }
}

.carousel-control-prev,
.carousel-control-next {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 15%;
  padding: 0;
  color: #fff;
  text-align: center;
  background: none;
  border: 0;
  opacity: 0.5;
  transition: opacity 0.15s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-control-prev,
  .carousel-control-next {
    transition: none;
  }
}

.carousel-control-prev:hover, .carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
  color: #fff;
  text-decoration: none;
  outline: 0;
  opacity: 0.9;
}

.carousel-control-prev {
  left: 0;
}

.carousel-control-next {
  right: 0;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  background: 50% / 100% 100% no-repeat;
}

.carousel-control-prev-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M5.25 0l-4 4 4 4 1.5-1.5L4.25 4l2.5-2.5L5.25 0z'/%3e%3c/svg%3e");
}

.carousel-control-next-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='%23fff' width='8' height='8' viewBox='0 0 8 8'%3e%3cpath d='M2.75 0l-1.5 1.5L3.75 4l-2.5 2.5L2.75 8l4-4-4-4z'/%3e%3c/svg%3e");
}

.carousel-indicators {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 15;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  padding-left: 0;
  margin-right: 15%;
  margin-left: 15%;
  list-style: none;
}

.carousel-indicators li {
  box-sizing: content-box;
  -ms-flex: 0 1 auto;
  flex: 0 1 auto;
  width: 30px;
  height: 3px;
  margin-right: 3px;
  margin-left: 3px;
  text-indent: -999px;
  cursor: pointer;
  background-color: #fff;
  background-clip: padding-box;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  opacity: .5;
  transition: opacity 0.6s ease;
}

@media (prefers-reduced-motion: reduce) {
  .carousel-indicators li {
    transition: none;
  }
}

.carousel-indicators .active {
  opacity: 1;
}

.carousel-caption {
  position: absolute;
  right: 15%;
  bottom: 20px;
  left: 15%;
  z-index: 10;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #fff;
  text-align: center;
}

@-webkit-keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes spinner-border {
  to {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  border: 0.25em solid currentcolor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: .75s linear infinite spinner-border;
  animation: .75s linear infinite spinner-border;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  50% {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}

.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: -0.125em;
  background-color: currentcolor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: .75s linear infinite spinner-grow;
  animation: .75s linear infinite spinner-grow;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

@media (prefers-reduced-motion: reduce) {
  .spinner-border,
  .spinner-grow {
    -webkit-animation-duration: 1.5s;
    animation-duration: 1.5s;
  }
}

.align-baseline {
  vertical-align: baseline !important;
}

.align-top {
  vertical-align: top !important;
}

.align-middle {
  vertical-align: middle !important;
}

.align-bottom {
  vertical-align: bottom !important;
}

.align-text-bottom {
  vertical-align: text-bottom !important;
}

.align-text-top {
  vertical-align: text-top !important;
}

.bg-primary {
  background-color: #007bff !important;
}

a.bg-primary:hover, a.bg-primary:focus,
button.bg-primary:hover,
button.bg-primary:focus {
  background-color: #0062cc !important;
}

.bg-secondary {
  background-color: #6c757d !important;
}

a.bg-secondary:hover, a.bg-secondary:focus,
button.bg-secondary:hover,
button.bg-secondary:focus {
  background-color: #545b62 !important;
}

.bg-success {
  background-color: #28a745 !important;
}

a.bg-success:hover, a.bg-success:focus,
button.bg-success:hover,
button.bg-success:focus {
  background-color: #1e7e34 !important;
}

.bg-info {
  background-color: #17a2b8 !important;
}

a.bg-info:hover, a.bg-info:focus,
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}

.bg-transparent {
  background-color: transparent !important;
}

.border {
  border: 1px solid #dee2e6 !important;
}

.border-top {
  border-top: 1px solid #dee2e6 !important;
}

.border-right {
  border-right: 1px solid #dee2e6 !important;
}

.border-bottom {
  border-bottom: 1px solid #dee2e6 !important;
}

.border-left {
  border-left: 1px solid #dee2e6 !important;
}

.border-0 {
  border: 0 !important;
}

.border-top-0 {
  border-top: 0 !important;
}

.border-right-0 {
  border-right: 0 !important;
}

.border-bottom-0 {
  border-bottom: 0 !important;
}

.border-left-0 {
  border-left: 0 !important;
}

.border-primary {
  border-color: #007bff !important;
}

.border-secondary {
  border-color: #6c757d !important;
}

.border-success {
  border-color: #28a745 !important;
}

.border-info {
  border-color: #17a2b8 !important;
}

.border-warning {
  border-color: #ffc107 !important;
}

.border-danger {
  border-color: #dc3545 !important;
}

.border-light {
  border-color: #f8f9fa !important;
}

.border-dark {
  border-color: #343a40 !important;
}

.border-white {
  border-color: #fff !important;
}

.rounded-sm {
  border-radius: 0.2rem !important;
}

.rounded {
  border-radius: 0.25rem !important;
}

.rounded-top {
  border-top-left-radius: 0.25rem !important;
  border-top-right-radius: 0.25rem !important;
}

.rounded-right {
  border-top-right-radius: 0.25rem !important;
  border-bottom-right-radius: 0.25rem !important;
}

.rounded-bottom {
  border-bottom-right-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-left {
  border-top-left-radius: 0.25rem !important;
  border-bottom-left-radius: 0.25rem !important;
}

.rounded-lg {
  border-radius: 0.3rem !important;
}

.rounded-circle {
  border-radius: 50% !important;
}

.rounded-pill {
  border-radius: 50rem !important;
}

.rounded-0 {
  border-radius: 0 !important;
}

.clearfix::after {
  display: block;
  clear: both;
  content: "";
}

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-block {
  display: block !important;
}

.d-table {
  display: table !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

@media (min-width: 576px) {
  .d-sm-none {
    display: none !important;
  }
  .d-sm-inline {
    display: inline !important;
  }
  .d-sm-inline-block {
    display: inline-block !important;
  }
  .d-sm-block {
    display: block !important;
  }
  .d-sm-table {
    display: table !important;
  }
  .d-sm-table-row {
    display: table-row !important;
  }
  .d-sm-table-cell {
    display: table-cell !important;
  }
  .d-sm-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-sm-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 768px) {
  .d-md-none {
    display: none !important;
  }
  .d-md-inline {
    display: inline !important;
  }
  .d-md-inline-block {
    display: inline-block !important;
  }
  .d-md-block {
    display: block !important;
  }
  .d-md-table {
    display: table !important;
  }
  .d-md-table-row {
    display: table-row !important;
  }
  .d-md-table-cell {
    display: table-cell !important;
  }
  .d-md-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-md-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 992px) {
  .d-lg-none {
    display: none !important;
  }
  .d-lg-inline {
    display: inline !important;
  }
  .d-lg-inline-block {
    display: inline-block !important;
  }
  .d-lg-block {
    display: block !important;
  }
  .d-lg-table {
    display: table !important;
  }
  .d-lg-table-row {
    display: table-row !important;
  }
  .d-lg-table-cell {
    display: table-cell !important;
  }
  .d-lg-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-lg-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media (min-width: 1200px) {
  .d-xl-none {
    display: none !important;
  }
  .d-xl-inline {
    display: inline !important;
  }
  .d-xl-inline-block {
    display: inline-block !important;
  }
  .d-xl-block {
    display: block !important;
  }
  .d-xl-table {
    display: table !important;
  }
  .d-xl-table-row {
    display: table-row !important;
  }
  .d-xl-table-cell {
    display: table-cell !important;
  }
  .d-xl-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-xl-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

@media print {
  .d-print-none {
    display: none !important;
  }
  .d-print-inline {
    display: inline !important;
  }
  .d-print-inline-block {
    display: inline-block !important;
  }
  .d-print-block {
    display: block !important;
  }
  .d-print-table {
    display: table !important;
  }
  .d-print-table-row {
    display: table-row !important;
  }
  .d-print-table-cell {
    display: table-cell !important;
  }
  .d-print-flex {
    display: -ms-flexbox !important;
    display: flex !important;
  }
  .d-print-inline-flex {
    display: -ms-inline-flexbox !important;
    display: inline-flex !important;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  overflow: hidden;
}

.embed-responsive::before {
  display: block;
  content: "";
}

.embed-responsive .embed-responsive-item,
.embed-responsive iframe,
.embed-responsive embed,
.embed-responsive object,
.embed-responsive video {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
}

.embed-responsive-21by9::before {
  padding-top: 42.857143%;
}

.embed-responsive-16by9::before {
  padding-top: 56.25%;
}

.embed-responsive-4by3::before {
  padding-top: 75%;
}

.embed-responsive-1by1::before {
  padding-top: 100%;
}

.flex-row {
  -ms-flex-direction: row !important;
  flex-direction: row !important;
}

.flex-column {
  -ms-flex-direction: column !important;
  flex-direction: column !important;
}

.flex-row-reverse {
  -ms-flex-direction: row-reverse !important;
  flex-direction: row-reverse !important;
}

.flex-column-reverse {
  -ms-flex-direction: column-reverse !important;
  flex-direction: column-reverse !important;
}

.flex-wrap {
  -ms-flex-wrap: wrap !important;
  flex-wrap: wrap !important;
}

.flex-nowrap {
  -ms-flex-wrap: nowrap !important;
  flex-wrap: nowrap !important;
}

.flex-wrap-reverse {
  -ms-flex-wrap: wrap-reverse !important;
  flex-wrap: wrap-reverse !important;
}

.flex-fill {
  -ms-flex: 1 1 auto !important;
  flex: 1 1 auto !important;
}

.flex-grow-0 {
  -ms-flex-positive: 0 !important;
  flex-grow: 0 !important;
}

.flex-grow-1 {
  -ms-flex-positive: 1 !important;
  flex-grow: 1 !important;
}

.flex-shrink-0 {
  -ms-flex-negative: 0 !important;
  flex-shrink: 0 !important;
}

.flex-shrink-1 {
  -ms-flex-negative: 1 !important;
  flex-shrink: 1 !important;
}

.justify-content-start {
  -ms-flex-pack: start !important;
  justify-content: flex-start !important;
}

.justify-content-end {
  -ms-flex-pack: end !important;
  justify-content: flex-end !important;
}

.justify-content-center {
  -ms-flex-pack: center !important;
  justify-content: center !important;
}

.justify-content-between {
  -ms-flex-pack: justify !important;
  justify-content: space-between !important;
}

.justify-content-around {
  -ms-flex-pack: distribute !important;
  justify-content: space-around !important;
}

.align-items-start {
  -ms-flex-align: start !important;
  align-items: flex-start !important;
}

.align-items-end {
  -ms-flex-align: end !important;
  align-items: flex-end !important;
}

.align-items-center {
  -ms-flex-align: center !important;
  align-items: center !important;
}

.align-items-baseline {
  -ms-flex-align: baseline !important;
  align-items: baseline !important;
}

.align-items-stretch {
  -ms-flex-align: stretch !important;
  align-items: stretch !important;
}

.align-content-start {
  -ms-flex-line-pack: start !important;
  align-content: flex-start !important;
}

.align-content-end {
  -ms-flex-line-pack: end !important;
  align-content: flex-end !important;
}

.align-content-center {
  -ms-flex-line-pack: center !important;
  align-content: center !important;
}

.align-content-between {
  -ms-flex-line-pack: justify !important;
  align-content: space-between !important;
}

.align-content-around {
  -ms-flex-line-pack: distribute !important;
  align-content: space-around !important;
}

.align-content-stretch {
  -ms-flex-line-pack: stretch !important;
  align-content: stretch !important;
}

.align-self-auto {
  -ms-flex-item-align: auto !important;
  align-self: auto !important;
}

.align-self-start {
  -ms-flex-item-align: start !important;
  align-self: flex-start !important;
}

.align-self-end {
  -ms-flex-item-align: end !important;
  align-self: flex-end !important;
}

.align-self-center {
  -ms-flex-item-align: center !important;
  align-self: center !important;
}

.align-self-baseline {
  -ms-flex-item-align: baseline !important;
  align-self: baseline !important;
}

.align-self-stretch {
  -ms-flex-item-align: stretch !important;
  align-self: stretch !important;
}

@media (min-width: 576px) {
  .flex-sm-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-sm-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-sm-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-sm-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-sm-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-sm-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-sm-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-sm-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-sm-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-sm-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-sm-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-sm-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-sm-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-sm-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-sm-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-sm-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-sm-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-sm-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-sm-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-sm-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-sm-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-sm-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-sm-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-sm-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-sm-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-sm-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-sm-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-sm-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-sm-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-sm-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-sm-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-sm-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-sm-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-sm-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}

@media (min-width: 768px) {
  .flex-md-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-md-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-md-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-md-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-md-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-md-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-md-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-md-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-md-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-md-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-md-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-md-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-md-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-md-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-md-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-md-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-md-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-md-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-md-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-md-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-md-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-md-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-md-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-md-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-md-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-md-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-md-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-md-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-md-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-md-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-md-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-md-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-md-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-md-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}

@media (min-width: 992px) {
  .flex-lg-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-lg-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-lg-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-lg-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-lg-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-lg-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-lg-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-lg-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-lg-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-lg-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-lg-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-lg-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-lg-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-lg-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-lg-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-lg-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-lg-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-lg-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-lg-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-lg-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-lg-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-lg-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-lg-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-lg-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-lg-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-lg-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-lg-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-lg-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-lg-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-lg-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-lg-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-lg-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-lg-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-lg-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}

@media (min-width: 1200px) {
  .flex-xl-row {
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  .flex-xl-column {
    -ms-flex-direction: column !important;
    flex-direction: column !important;
  }
  .flex-xl-row-reverse {
    -ms-flex-direction: row-reverse !important;
    flex-direction: row-reverse !important;
  }
  .flex-xl-column-reverse {
    -ms-flex-direction: column-reverse !important;
    flex-direction: column-reverse !important;
  }
  .flex-xl-wrap {
    -ms-flex-wrap: wrap !important;
    flex-wrap: wrap !important;
  }
  .flex-xl-nowrap {
    -ms-flex-wrap: nowrap !important;
    flex-wrap: nowrap !important;
  }
  .flex-xl-wrap-reverse {
    -ms-flex-wrap: wrap-reverse !important;
    flex-wrap: wrap-reverse !important;
  }
  .flex-xl-fill {
    -ms-flex: 1 1 auto !important;
    flex: 1 1 auto !important;
  }
  .flex-xl-grow-0 {
    -ms-flex-positive: 0 !important;
    flex-grow: 0 !important;
  }
  .flex-xl-grow-1 {
    -ms-flex-positive: 1 !important;
    flex-grow: 1 !important;
  }
  .flex-xl-shrink-0 {
    -ms-flex-negative: 0 !important;
    flex-shrink: 0 !important;
  }
  .flex-xl-shrink-1 {
    -ms-flex-negative: 1 !important;
    flex-shrink: 1 !important;
  }
  .justify-content-xl-start {
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }
  .justify-content-xl-end {
    -ms-flex-pack: end !important;
    justify-content: flex-end !important;
  }
  .justify-content-xl-center {
    -ms-flex-pack: center !important;
    justify-content: center !important;
  }
  .justify-content-xl-between {
    -ms-flex-pack: justify !important;
    justify-content: space-between !important;
  }
  .justify-content-xl-around {
    -ms-flex-pack: distribute !important;
    justify-content: space-around !important;
  }
  .align-items-xl-start {
    -ms-flex-align: start !important;
    align-items: flex-start !important;
  }
  .align-items-xl-end {
    -ms-flex-align: end !important;
    align-items: flex-end !important;
  }
  .align-items-xl-center {
    -ms-flex-align: center !important;
    align-items: center !important;
  }
  .align-items-xl-baseline {
    -ms-flex-align: baseline !important;
    align-items: baseline !important;
  }
  .align-items-xl-stretch {
    -ms-flex-align: stretch !important;
    align-items: stretch !important;
  }
  .align-content-xl-start {
    -ms-flex-line-pack: start !important;
    align-content: flex-start !important;
  }
  .align-content-xl-end {
    -ms-flex-line-pack: end !important;
    align-content: flex-end !important;
  }
  .align-content-xl-center {
    -ms-flex-line-pack: center !important;
    align-content: center !important;
  }
  .align-content-xl-between {
    -ms-flex-line-pack: justify !important;
    align-content: space-between !important;
  }
  .align-content-xl-around {
    -ms-flex-line-pack: distribute !important;
    align-content: space-around !important;
  }
  .align-content-xl-stretch {
    -ms-flex-line-pack: stretch !important;
    align-content: stretch !important;
  }
  .align-self-xl-auto {
    -ms-flex-item-align: auto !important;
    align-self: auto !important;
  }
  .align-self-xl-start {
    -ms-flex-item-align: start !important;
    align-self: flex-start !important;
  }
  .align-self-xl-end {
    -ms-flex-item-align: end !important;
    align-self: flex-end !important;
  }
  .align-self-xl-center {
    -ms-flex-item-align: center !important;
    align-self: center !important;
  }
  .align-self-xl-baseline {
    -ms-flex-item-align: baseline !important;
    align-self: baseline !important;
  }
  .align-self-xl-stretch {
    -ms-flex-item-align: stretch !important;
    align-self: stretch !important;
  }
}

.float-left {
  float: left !important;
}

.float-right {
  float: right !important;
}

.float-none {
  float: none !important;
}

@media (min-width: 576px) {
  .float-sm-left {
    float: left !important;
  }
  .float-sm-right {
    float: right !important;
  }
  .float-sm-none {
    float: none !important;
  }
}

@media (min-width: 768px) {
  .float-md-left {
    float: left !important;
  }
  .float-md-right {
    float: right !important;
  }
  .float-md-none {
    float: none !important;
  }
}

@media (min-width: 992px) {
  .float-lg-left {
    float: left !important;
  }
  .float-lg-right {
    float: right !important;
  }
  .float-lg-none {
    float: none !important;
  }
}

@media (min-width: 1200px) {
  .float-xl-left {
    float: left !important;
  }
  .float-xl-right {
    float: right !important;
  }
  .float-xl-none {
    float: none !important;
  }
}

.user-select-all {
  -webkit-user-select: all !important;
  -moz-user-select: all !important;
  user-select: all !important;
}

.user-select-auto {
  -webkit-user-select: auto !important;
  -moz-user-select: auto !important;
  -ms-user-select: auto !important;
  user-select: auto !important;
}

.user-select-none {
  -webkit-user-select: none !important;
  -moz-user-select: none !important;
  -ms-user-select: none !important;
  user-select: none !important;
}

.overflow-auto {
  overflow: auto !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.position-static {
  position: static !important;
}

.position-relative {
  position: relative !important;
}

.position-absolute {
  position: absolute !important;
}

.position-fixed {
  position: fixed !important;
}

.position-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important;
}

.shadow {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15) !important;
}

.shadow-lg {
  box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.175) !important;
}

.shadow-none {
  box-shadow: none !important;
}

.w-25 {
  width: 25% !important;
}

.w-50 {
  width: 50% !important;
}

.w-75 {
  width: 75% !important;
}

.w-100 {
  width: 100% !important;
}

.w-auto {
  width: auto !important;
}

.h-25 {
  height: 25% !important;
}

.h-50 {
  height: 50% !important;
}

.h-75 {
  height: 75% !important;
}

.h-100 {
  height: 100% !important;
}

.h-auto {
  height: auto !important;
}

.mw-100 {
  max-width: 100% !important;
}

.mh-100 {
  max-height: 100% !important;
}

.min-vw-100 {
  min-width: 100vw !important;
}

.min-vh-100 {
  min-height: 100vh !important;
}

.vw-100 {
  width: 100vw !important;
}

.vh-100 {
  height: 100vh !important;
}

.m-0 {
  margin: 0 !important;
}

.mt-0,
.my-0 {
  margin-top: 0 !important;
}

.mr-0,
.mx-0 {
  margin-right: 0 !important;
}

.mb-0,
.my-0 {
  margin-bottom: 0 !important;
}

.ml-0,
.mx-0 {
  margin-left: 0 !important;
}

.m-1 {
  margin: 0.25rem !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

.mr-1,
.mx-1 {
  margin-right: 0.25rem !important;
}

.mb-1,
.my-1 {
  margin-bottom: 0.25rem !important;
}

.ml-1,
.mx-1 {
  margin-left: 0.25rem !important;
}

.m-2 {
  margin: 0.5rem !important;
}

.mt-2,
.my-2 {
  margin-top: 0.5rem !important;
}

.mr-2,
.mx-2 {
  margin-right: 0.5rem !important;
}

.mb-2,
.my-2 {
  margin-bottom: 0.5rem !important;
}

.ml-2,
.mx-2 {
  margin-left: 0.5rem !important;
}

.m-3 {
  margin: 1rem !important;
}

.mt-3,
.my-3 {
  margin-top: 1rem !important;
}

.mr-3,
.mx-3 {
  margin-right: 1rem !important;
}

.mb-3,
.my-3 {
  margin-bottom: 1rem !important;
}

.ml-3,
.mx-3 {
  margin-left: 1rem !important;
}

.m-4 {
  margin: 1.5rem !important;
}

.mt-4,
.my-4 {
  margin-top: 1.5rem !important;
}

.mr-4,
.mx-4 {
  margin-right: 1.5rem !important;
}

.mb-4,
.my-4 {
  margin-bottom: 1.5rem !important;
}

.ml-4,
.mx-4 {
  margin-left: 1.5rem !important;
}

.m-5 {
  margin: 3rem !important;
}

.mt-5,
.my-5 {
  margin-top: 3rem !important;
}

.mr-5,
.mx-5 {
  margin-right: 3rem !important;
}

.mb-5,
.my-5 {
  margin-bottom: 3rem !important;
}

.ml-5,
.mx-5 {
  margin-left: 3rem !important;
}

.p-0 {
  padding: 0 !important;
}

.pt-0,
.py-0 {
  padding-top: 0 !important;
}

.pr-0,
.px-0 {
  padding-right: 0 !important;
}

.pb-0,
.py-0 {
  padding-bottom: 0 !important;
}

.pl-0,
.px-0 {
  padding-left: 0 !important;
}

.p-1 {
  padding: 0.25rem !important;
}

.pt-1,
.py-1 {
  padding-top: 0.25rem !important;
}

.pr-1,
.px-1 {
  padding-right: 0.25rem !important;
}

.pb-1,
.py-1 {
  padding-bottom: 0.25rem !important;
}

.pl-1,
.px-1 {
  padding-left: 0.25rem !important;
}

.p-2 {
  padding: 0.5rem !important;
}

.pt-2,
.py-2 {
  padding-top: 0.5rem !important;
}

.pr-2,
.px-2 {
  padding-right: 0.5rem !important;
}

.pb-2,
.py-2 {
  padding-bottom: 0.5rem !important;
}

.pl-2,
.px-2 {
  padding-left: 0.5rem !important;
}

.p-3 {
  padding: 1rem !important;
}

.pt-3,
.py-3 {
  padding-top: 1rem !important;
}

.pr-3,
.px-3 {
  padding-right: 1rem !important;
}

.pb-3,
.py-3 {
  padding-bottom: 1rem !important;
}

.pl-3,
.px-3 {
  padding-left: 1rem !important;
}

.p-4 {
  padding: 1.5rem !important;
}

.pt-4,
.py-4 {
  padding-top: 1.5rem !important;
}

.pr-4,
.px-4 {
  padding-right: 1.5rem !important;
}

.pb-4,
.py-4 {
  padding-bottom: 1.5rem !important;
}

.pl-4,
.px-4 {
  padding-left: 1.5rem !important;
}

.p-5 {
  padding: 3rem !important;
}

.pt-5,
.py-5 {
  padding-top: 3rem !important;
}

.pr-5,
.px-5 {
  padding-right: 3rem !important;
}

.pb-5,
.py-5 {
  padding-bottom: 3rem !important;
}

.pl-5,
.px-5 {
  padding-left: 3rem !important;
}

.m-n1 {
  margin: -0.25rem !important;
}

.mt-n1,
.my-n1 {
  margin-top: -0.25rem !important;
}

.mr-n1,
.mx-n1 {
  margin-right: -0.25rem !important;
}

.mb-n1,
.my-n1 {
  margin-bottom: -0.25rem !important;
}

.ml-n1,
.mx-n1 {
  margin-left: -0.25rem !important;
}

.m-n2 {
  margin: -0.5rem !important;
}

.mt-n2,
.my-n2 {
  margin-top: -0.5rem !important;
}

.mr-n2,
.mx-n2 {
  margin-right: -0.5rem !important;
}

.mb-n2,
.my-n2 {
  margin-bottom: -0.5rem !important;
}

.ml-n2,
.mx-n2 {
  margin-left: -0.5rem !important;
}

.m-n3 {
  margin: -1rem !important;
}

.mt-n3,
.my-n3 {
  margin-top: -1rem !important;
}

.mr-n3,
.mx-n3 {
  margin-right: -1rem !important;
}

.mb-n3,
.my-n3 {
  margin-bottom: -1rem !important;
}

.ml-n3,
.mx-n3 {
  margin-left: -1rem !important;
}

.m-n4 {
  margin: -1.5rem !important;
}

.mt-n4,
.my-n4 {
  margin-top: -1.5rem !important;
}

.mr-n4,
.mx-n4 {
  margin-right: -1.5rem !important;
}

.mb-n4,
.my-n4 {
  margin-bottom: -1.5rem !important;
}

.ml-n4,
.mx-n4 {
  margin-left: -1.5rem !important;
}

.m-n5 {
  margin: -3rem !important;
}

.mt-n5,
.my-n5 {
  margin-top: -3rem !important;
}

.mr-n5,
.mx-n5 {
  margin-right: -3rem !important;
}

.mb-n5,
.my-n5 {
  margin-bottom: -3rem !important;
}

.ml-n5,
.mx-n5 {
  margin-left: -3rem !important;
}

.m-auto {
  margin: auto !important;
}

.mt-auto,
.my-auto {
  margin-top: auto !important;
}

.mr-auto,
.mx-auto {
  margin-right: auto !important;
}

.mb-auto,
.my-auto {
  margin-bottom: auto !important;
}

.ml-auto,
.mx-auto {
  margin-left: auto !important;
}

@media (min-width: 576px) {
  .m-sm-0 {
    margin: 0 !important;
  }
  .mt-sm-0,
  .my-sm-0 {
    margin-top: 0 !important;
  }
  .mr-sm-0,
  .mx-sm-0 {
    margin-right: 0 !important;
  }
  .mb-sm-0,
  .my-sm-0 {
    margin-bottom: 0 !important;
  }
  .ml-sm-0,
  .mx-sm-0 {
    margin-left: 0 !important;
  }
  .m-sm-1 {
    margin: 0.25rem !important;
  }
  .mt-sm-1,
  .my-sm-1 {
    margin-top: 0.25rem !important;
  }
  .mr-sm-1,
  .mx-sm-1 {
    margin-right: 0.25rem !important;
  }
  .mb-sm-1,
  .my-sm-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-sm-1,
  .mx-sm-1 {
    margin-left: 0.25rem !important;
  }
  .m-sm-2 {
    margin: 0.5rem !important;
  }
  .mt-sm-2,
  .my-sm-2 {
    margin-top: 0.5rem !important;
  }
  .mr-sm-2,
  .mx-sm-2 {
    margin-right: 0.5rem !important;
  }
  .mb-sm-2,
  .my-sm-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-sm-2,
  .mx-sm-2 {
    margin-left: 0.5rem !important;
  }
  .m-sm-3 {
    margin: 1rem !important;
  }
  .mt-sm-3,
  .my-sm-3 {
    margin-top: 1rem !important;
  }
  .mr-sm-3,
  .mx-sm-3 {
    margin-right: 1rem !important;
  }
  .mb-sm-3,
  .my-sm-3 {
    margin-bottom: 1rem !important;
  }
  .ml-sm-3,
  .mx-sm-3 {
    margin-left: 1rem !important;
  }
  .m-sm-4 {
    margin: 1.5rem !important;
  }
  .mt-sm-4,
  .my-sm-4 {
    margin-top: 1.5rem !important;
  }
  .mr-sm-4,
  .mx-sm-4 {
    margin-right: 1.5rem !important;
  }
  .mb-sm-4,
  .my-sm-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-sm-4,
  .mx-sm-4 {
    margin-left: 1.5rem !important;
  }
  .m-sm-5 {
    margin: 3rem !important;
  }
  .mt-sm-5,
  .my-sm-5 {
    margin-top: 3rem !important;
  }
  .mr-sm-5,
  .mx-sm-5 {
    margin-right: 3rem !important;
  }
  .mb-sm-5,
  .my-sm-5 {
    margin-bottom: 3rem !important;
  }
  .ml-sm-5,
  .mx-sm-5 {
    margin-left: 3rem !important;
  }
  .p-sm-0 {
    padding: 0 !important;
  }
  .pt-sm-0,
  .py-sm-0 {
    padding-top: 0 !important;
  }
  .pr-sm-0,
  .px-sm-0 {
    padding-right: 0 !important;
  }
  .pb-sm-0,
  .py-sm-0 {
    padding-bottom: 0 !important;
  }
  .pl-sm-0,
  .px-sm-0 {
    padding-left: 0 !important;
  }
  .p-sm-1 {
    padding: 0.25rem !important;
  }
  .pt-sm-1,
  .py-sm-1 {
    padding-top: 0.25rem !important;
  }
  .pr-sm-1,
  .px-sm-1 {
    padding-right: 0.25rem !important;
  }
  .pb-sm-1,
  .py-sm-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-sm-1,
  .px-sm-1 {
    padding-left: 0.25rem !important;
  }
  .p-sm-2 {
    padding: 0.5rem !important;
  }
  .pt-sm-2,
  .py-sm-2 {
    padding-top: 0.5rem !important;
  }
  .pr-sm-2,
  .px-sm-2 {
    padding-right: 0.5rem !important;
  }
  .pb-sm-2,
  .py-sm-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-sm-2,
  .px-sm-2 {
    padding-left: 0.5rem !important;
  }
  .p-sm-3 {
    padding: 1rem !important;
  }
  .pt-sm-3,
  .py-sm-3 {
    padding-top: 1rem !important;
  }
  .pr-sm-3,
  .px-sm-3 {
    padding-right: 1rem !important;
  }
  .pb-sm-3,
  .py-sm-3 {
    padding-bottom: 1rem !important;
  }
  .pl-sm-3,
  .px-sm-3 {
    padding-left: 1rem !important;
  }
  .p-sm-4 {
    padding: 1.5rem !important;
  }
  .pt-sm-4,
  .py-sm-4 {
    padding-top: 1.5rem !important;
  }
  .pr-sm-4,
  .px-sm-4 {
    padding-right: 1.5rem !important;
  }
  .pb-sm-4,
  .py-sm-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-sm-4,
  .px-sm-4 {
    padding-left: 1.5rem !important;
  }
  .p-sm-5 {
    padding: 3rem !important;
  }
  .pt-sm-5,
  .py-sm-5 {
    padding-top: 3rem !important;
  }
  .pr-sm-5,
  .px-sm-5 {
    padding-right: 3rem !important;
  }
  .pb-sm-5,
  .py-sm-5 {
    padding-bottom: 3rem !important;
  }
  .pl-sm-5,
  .px-sm-5 {
    padding-left: 3rem !important;
  }
  .m-sm-n1 {
    margin: -0.25rem !important;
  }
  .mt-sm-n1,
  .my-sm-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-sm-n1,
  .mx-sm-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-sm-n1,
  .my-sm-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-sm-n1,
  .mx-sm-n1 {
    margin-left: -0.25rem !important;
  }
  .m-sm-n2 {
    margin: -0.5rem !important;
  }
  .mt-sm-n2,
  .my-sm-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-sm-n2,
  .mx-sm-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-sm-n2,
  .my-sm-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-sm-n2,
  .mx-sm-n2 {
    margin-left: -0.5rem !important;
  }
  .m-sm-n3 {
    margin: -1rem !important;
  }
  .mt-sm-n3,
  .my-sm-n3 {
    margin-top: -1rem !important;
  }
  .mr-sm-n3,
  .mx-sm-n3 {
    margin-right: -1rem !important;
  }
  .mb-sm-n3,
  .my-sm-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-sm-n3,
  .mx-sm-n3 {
    margin-left: -1rem !important;
  }
  .m-sm-n4 {
    margin: -1.5rem !important;
  }
  .mt-sm-n4,
  .my-sm-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-sm-n4,
  .mx-sm-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-sm-n4,
  .my-sm-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-sm-n4,
  .mx-sm-n4 {
    margin-left: -1.5rem !important;
  }
  .m-sm-n5 {
    margin: -3rem !important;
  }
  .mt-sm-n5,
  .my-sm-n5 {
    margin-top: -3rem !important;
  }
  .mr-sm-n5,
  .mx-sm-n5 {
    margin-right: -3rem !important;
  }
  .mb-sm-n5,
  .my-sm-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-sm-n5,
  .mx-sm-n5 {
    margin-left: -3rem !important;
  }
  .m-sm-auto {
    margin: auto !important;
  }
  .mt-sm-auto,
  .my-sm-auto {
    margin-top: auto !important;
  }
  .mr-sm-auto,
  .mx-sm-auto {
    margin-right: auto !important;
  }
  .mb-sm-auto,
  .my-sm-auto {
    margin-bottom: auto !important;
  }
  .ml-sm-auto,
  .mx-sm-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 768px) {
  .m-md-0 {
    margin: 0 !important;
  }
  .mt-md-0,
  .my-md-0 {
    margin-top: 0 !important;
  }
  .mr-md-0,
  .mx-md-0 {
    margin-right: 0 !important;
  }
  .mb-md-0,
  .my-md-0 {
    margin-bottom: 0 !important;
  }
  .ml-md-0,
  .mx-md-0 {
    margin-left: 0 !important;
  }
  .m-md-1 {
    margin: 0.25rem !important;
  }
  .mt-md-1,
  .my-md-1 {
    margin-top: 0.25rem !important;
  }
  .mr-md-1,
  .mx-md-1 {
    margin-right: 0.25rem !important;
  }
  .mb-md-1,
  .my-md-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-md-1,
  .mx-md-1 {
    margin-left: 0.25rem !important;
  }
  .m-md-2 {
    margin: 0.5rem !important;
  }
  .mt-md-2,
  .my-md-2 {
    margin-top: 0.5rem !important;
  }
  .mr-md-2,
  .mx-md-2 {
    margin-right: 0.5rem !important;
  }
  .mb-md-2,
  .my-md-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-md-2,
  .mx-md-2 {
    margin-left: 0.5rem !important;
  }
  .m-md-3 {
    margin: 1rem !important;
  }
  .mt-md-3,
  .my-md-3 {
    margin-top: 1rem !important;
  }
  .mr-md-3,
  .mx-md-3 {
    margin-right: 1rem !important;
  }
  .mb-md-3,
  .my-md-3 {
    margin-bottom: 1rem !important;
  }
  .ml-md-3,
  .mx-md-3 {
    margin-left: 1rem !important;
  }
  .m-md-4 {
    margin: 1.5rem !important;
  }
  .mt-md-4,
  .my-md-4 {
    margin-top: 1.5rem !important;
  }
  .mr-md-4,
  .mx-md-4 {
    margin-right: 1.5rem !important;
  }
  .mb-md-4,
  .my-md-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-md-4,
  .mx-md-4 {
    margin-left: 1.5rem !important;
  }
  .m-md-5 {
    margin: 3rem !important;
  }
  .mt-md-5,
  .my-md-5 {
    margin-top: 3rem !important;
  }
  .mr-md-5,
  .mx-md-5 {
    margin-right: 3rem !important;
  }
  .mb-md-5,
  .my-md-5 {
    margin-bottom: 3rem !important;
  }
  .ml-md-5,
  .mx-md-5 {
    margin-left: 3rem !important;
  }
  .p-md-0 {
    padding: 0 !important;
  }
  .pt-md-0,
  .py-md-0 {
    padding-top: 0 !important;
  }
  .pr-md-0,
  .px-md-0 {
    padding-right: 0 !important;
  }
  .pb-md-0,
  .py-md-0 {
    padding-bottom: 0 !important;
  }
  .pl-md-0,
  .px-md-0 {
    padding-left: 0 !important;
  }
  .p-md-1 {
    padding: 0.25rem !important;
  }
  .pt-md-1,
  .py-md-1 {
    padding-top: 0.25rem !important;
  }
  .pr-md-1,
  .px-md-1 {
    padding-right: 0.25rem !important;
  }
  .pb-md-1,
  .py-md-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-md-1,
  .px-md-1 {
    padding-left: 0.25rem !important;
  }
  .p-md-2 {
    padding: 0.5rem !important;
  }
  .pt-md-2,
  .py-md-2 {
    padding-top: 0.5rem !important;
  }
  .pr-md-2,
  .px-md-2 {
    padding-right: 0.5rem !important;
  }
  .pb-md-2,
  .py-md-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-md-2,
  .px-md-2 {
    padding-left: 0.5rem !important;
  }
  .p-md-3 {
    padding: 1rem !important;
  }
  .pt-md-3,
  .py-md-3 {
    padding-top: 1rem !important;
  }
  .pr-md-3,
  .px-md-3 {
    padding-right: 1rem !important;
  }
  .pb-md-3,
  .py-md-3 {
    padding-bottom: 1rem !important;
  }
  .pl-md-3,
  .px-md-3 {
    padding-left: 1rem !important;
  }
  .p-md-4 {
    padding: 1.5rem !important;
  }
  .pt-md-4,
  .py-md-4 {
    padding-top: 1.5rem !important;
  }
  .pr-md-4,
  .px-md-4 {
    padding-right: 1.5rem !important;
  }
  .pb-md-4,
  .py-md-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-md-4,
  .px-md-4 {
    padding-left: 1.5rem !important;
  }
  .p-md-5 {
    padding: 3rem !important;
  }
  .pt-md-5,
  .py-md-5 {
    padding-top: 3rem !important;
  }
  .pr-md-5,
  .px-md-5 {
    padding-right: 3rem !important;
  }
  .pb-md-5,
  .py-md-5 {
    padding-bottom: 3rem !important;
  }
  .pl-md-5,
  .px-md-5 {
    padding-left: 3rem !important;
  }
  .m-md-n1 {
    margin: -0.25rem !important;
  }
  .mt-md-n1,
  .my-md-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-md-n1,
  .mx-md-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-md-n1,
  .my-md-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-md-n1,
  .mx-md-n1 {
    margin-left: -0.25rem !important;
  }
  .m-md-n2 {
    margin: -0.5rem !important;
  }
  .mt-md-n2,
  .my-md-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-md-n2,
  .mx-md-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-md-n2,
  .my-md-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-md-n2,
  .mx-md-n2 {
    margin-left: -0.5rem !important;
  }
  .m-md-n3 {
    margin: -1rem !important;
  }
  .mt-md-n3,
  .my-md-n3 {
    margin-top: -1rem !important;
  }
  .mr-md-n3,
  .mx-md-n3 {
    margin-right: -1rem !important;
  }
  .mb-md-n3,
  .my-md-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-md-n3,
  .mx-md-n3 {
    margin-left: -1rem !important;
  }
  .m-md-n4 {
    margin: -1.5rem !important;
  }
  .mt-md-n4,
  .my-md-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-md-n4,
  .mx-md-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-md-n4,
  .my-md-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-md-n4,
  .mx-md-n4 {
    margin-left: -1.5rem !important;
  }
  .m-md-n5 {
    margin: -3rem !important;
  }
  .mt-md-n5,
  .my-md-n5 {
    margin-top: -3rem !important;
  }
  .mr-md-n5,
  .mx-md-n5 {
    margin-right: -3rem !important;
  }
  .mb-md-n5,
  .my-md-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-md-n5,
  .mx-md-n5 {
    margin-left: -3rem !important;
  }
  .m-md-auto {
    margin: auto !important;
  }
  .mt-md-auto,
  .my-md-auto {
    margin-top: auto !important;
  }
  .mr-md-auto,
  .mx-md-auto {
    margin-right: auto !important;
  }
  .mb-md-auto,
  .my-md-auto {
    margin-bottom: auto !important;
  }
  .ml-md-auto,
  .mx-md-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 992px) {
  .m-lg-0 {
    margin: 0 !important;
  }
  .mt-lg-0,
  .my-lg-0 {
    margin-top: 0 !important;
  }
  .mr-lg-0,
  .mx-lg-0 {
    margin-right: 0 !important;
  }
  .mb-lg-0,
  .my-lg-0 {
    margin-bottom: 0 !important;
  }
  .ml-lg-0,
  .mx-lg-0 {
    margin-left: 0 !important;
  }
  .m-lg-1 {
    margin: 0.25rem !important;
  }
  .mt-lg-1,
  .my-lg-1 {
    margin-top: 0.25rem !important;
  }
  .mr-lg-1,
  .mx-lg-1 {
    margin-right: 0.25rem !important;
  }
  .mb-lg-1,
  .my-lg-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-lg-1,
  .mx-lg-1 {
    margin-left: 0.25rem !important;
  }
  .m-lg-2 {
    margin: 0.5rem !important;
  }
  .mt-lg-2,
  .my-lg-2 {
    margin-top: 0.5rem !important;
  }
  .mr-lg-2,
  .mx-lg-2 {
    margin-right: 0.5rem !important;
  }
  .mb-lg-2,
  .my-lg-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-lg-2,
  .mx-lg-2 {
    margin-left: 0.5rem !important;
  }
  .m-lg-3 {
    margin: 1rem !important;
  }
  .mt-lg-3,
  .my-lg-3 {
    margin-top: 1rem !important;
  }
  .mr-lg-3,
  .mx-lg-3 {
    margin-right: 1rem !important;
  }
  .mb-lg-3,
  .my-lg-3 {
    margin-bottom: 1rem !important;
  }
  .ml-lg-3,
  .mx-lg-3 {
    margin-left: 1rem !important;
  }
  .m-lg-4 {
    margin: 1.5rem !important;
  }
  .mt-lg-4,
  .my-lg-4 {
    margin-top: 1.5rem !important;
  }
  .mr-lg-4,
  .mx-lg-4 {
    margin-right: 1.5rem !important;
  }
  .mb-lg-4,
  .my-lg-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-lg-4,
  .mx-lg-4 {
    margin-left: 1.5rem !important;
  }
  .m-lg-5 {
    margin: 3rem !important;
  }
  .mt-lg-5,
  .my-lg-5 {
    margin-top: 3rem !important;
  }
  .mr-lg-5,
  .mx-lg-5 {
    margin-right: 3rem !important;
  }
  .mb-lg-5,
  .my-lg-5 {
    margin-bottom: 3rem !important;
  }
  .ml-lg-5,
  .mx-lg-5 {
    margin-left: 3rem !important;
  }
  .p-lg-0 {
    padding: 0 !important;
  }
  .pt-lg-0,
  .py-lg-0 {
    padding-top: 0 !important;
  }
  .pr-lg-0,
  .px-lg-0 {
    padding-right: 0 !important;
  }
  .pb-lg-0,
  .py-lg-0 {
    padding-bottom: 0 !important;
  }
  .pl-lg-0,
  .px-lg-0 {
    padding-left: 0 !important;
  }
  .p-lg-1 {
    padding: 0.25rem !important;
  }
  .pt-lg-1,
  .py-lg-1 {
    padding-top: 0.25rem !important;
  }
  .pr-lg-1,
  .px-lg-1 {
    padding-right: 0.25rem !important;
  }
  .pb-lg-1,
  .py-lg-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-lg-1,
  .px-lg-1 {
    padding-left: 0.25rem !important;
  }
  .p-lg-2 {
    padding: 0.5rem !important;
  }
  .pt-lg-2,
  .py-lg-2 {
    padding-top: 0.5rem !important;
  }
  .pr-lg-2,
  .px-lg-2 {
    padding-right: 0.5rem !important;
  }
  .pb-lg-2,
  .py-lg-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-lg-2,
  .px-lg-2 {
    padding-left: 0.5rem !important;
  }
  .p-lg-3 {
    padding: 1rem !important;
  }
  .pt-lg-3,
  .py-lg-3 {
    padding-top: 1rem !important;
  }
  .pr-lg-3,
  .px-lg-3 {
    padding-right: 1rem !important;
  }
  .pb-lg-3,
  .py-lg-3 {
    padding-bottom: 1rem !important;
  }
  .pl-lg-3,
  .px-lg-3 {
    padding-left: 1rem !important;
  }
  .p-lg-4 {
    padding: 1.5rem !important;
  }
  .pt-lg-4,
  .py-lg-4 {
    padding-top: 1.5rem !important;
  }
  .pr-lg-4,
  .px-lg-4 {
    padding-right: 1.5rem !important;
  }
  .pb-lg-4,
  .py-lg-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-lg-4,
  .px-lg-4 {
    padding-left: 1.5rem !important;
  }
  .p-lg-5 {
    padding: 3rem !important;
  }
  .pt-lg-5,
  .py-lg-5 {
    padding-top: 3rem !important;
  }
  .pr-lg-5,
  .px-lg-5 {
    padding-right: 3rem !important;
  }
  .pb-lg-5,
  .py-lg-5 {
    padding-bottom: 3rem !important;
  }
  .pl-lg-5,
  .px-lg-5 {
    padding-left: 3rem !important;
  }
  .m-lg-n1 {
    margin: -0.25rem !important;
  }
  .mt-lg-n1,
  .my-lg-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-lg-n1,
  .mx-lg-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-lg-n1,
  .my-lg-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-lg-n1,
  .mx-lg-n1 {
    margin-left: -0.25rem !important;
  }
  .m-lg-n2 {
    margin: -0.5rem !important;
  }
  .mt-lg-n2,
  .my-lg-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-lg-n2,
  .mx-lg-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-lg-n2,
  .my-lg-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-lg-n2,
  .mx-lg-n2 {
    margin-left: -0.5rem !important;
  }
  .m-lg-n3 {
    margin: -1rem !important;
  }
  .mt-lg-n3,
  .my-lg-n3 {
    margin-top: -1rem !important;
  }
  .mr-lg-n3,
  .mx-lg-n3 {
    margin-right: -1rem !important;
  }
  .mb-lg-n3,
  .my-lg-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-lg-n3,
  .mx-lg-n3 {
    margin-left: -1rem !important;
  }
  .m-lg-n4 {
    margin: -1.5rem !important;
  }
  .mt-lg-n4,
  .my-lg-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-lg-n4,
  .mx-lg-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-lg-n4,
  .my-lg-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-lg-n4,
  .mx-lg-n4 {
    margin-left: -1.5rem !important;
  }
  .m-lg-n5 {
    margin: -3rem !important;
  }
  .mt-lg-n5,
  .my-lg-n5 {
    margin-top: -3rem !important;
  }
  .mr-lg-n5,
  .mx-lg-n5 {
    margin-right: -3rem !important;
  }
  .mb-lg-n5,
  .my-lg-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-lg-n5,
  .mx-lg-n5 {
    margin-left: -3rem !important;
  }
  .m-lg-auto {
    margin: auto !important;
  }
  .mt-lg-auto,
  .my-lg-auto {
    margin-top: auto !important;
  }
  .mr-lg-auto,
  .mx-lg-auto {
    margin-right: auto !important;
  }
  .mb-lg-auto,
  .my-lg-auto {
    margin-bottom: auto !important;
  }
  .ml-lg-auto,
  .mx-lg-auto {
    margin-left: auto !important;
  }
}

@media (min-width: 1200px) {
  .m-xl-0 {
    margin: 0 !important;
  }
  .mt-xl-0,
  .my-xl-0 {
    margin-top: 0 !important;
  }
  .mr-xl-0,
  .mx-xl-0 {
    margin-right: 0 !important;
  }
  .mb-xl-0,
  .my-xl-0 {
    margin-bottom: 0 !important;
  }
  .ml-xl-0,
  .mx-xl-0 {
    margin-left: 0 !important;
  }
  .m-xl-1 {
    margin: 0.25rem !important;
  }
  .mt-xl-1,
  .my-xl-1 {
    margin-top: 0.25rem !important;
  }
  .mr-xl-1,
  .mx-xl-1 {
    margin-right: 0.25rem !important;
  }
  .mb-xl-1,
  .my-xl-1 {
    margin-bottom: 0.25rem !important;
  }
  .ml-xl-1,
  .mx-xl-1 {
    margin-left: 0.25rem !important;
  }
  .m-xl-2 {
    margin: 0.5rem !important;
  }
  .mt-xl-2,
  .my-xl-2 {
    margin-top: 0.5rem !important;
  }
  .mr-xl-2,
  .mx-xl-2 {
    margin-right: 0.5rem !important;
  }
  .mb-xl-2,
  .my-xl-2 {
    margin-bottom: 0.5rem !important;
  }
  .ml-xl-2,
  .mx-xl-2 {
    margin-left: 0.5rem !important;
  }
  .m-xl-3 {
    margin: 1rem !important;
  }
  .mt-xl-3,
  .my-xl-3 {
    margin-top: 1rem !important;
  }
  .mr-xl-3,
  .mx-xl-3 {
    margin-right: 1rem !important;
  }
  .mb-xl-3,
  .my-xl-3 {
    margin-bottom: 1rem !important;
  }
  .ml-xl-3,
  .mx-xl-3 {
    margin-left: 1rem !important;
  }
  .m-xl-4 {
    margin: 1.5rem !important;
  }
  .mt-xl-4,
  .my-xl-4 {
    margin-top: 1.5rem !important;
  }
  .mr-xl-4,
  .mx-xl-4 {
    margin-right: 1.5rem !important;
  }
  .mb-xl-4,
  .my-xl-4 {
    margin-bottom: 1.5rem !important;
  }
  .ml-xl-4,
  .mx-xl-4 {
    margin-left: 1.5rem !important;
  }
  .m-xl-5 {
    margin: 3rem !important;
  }
  .mt-xl-5,
  .my-xl-5 {
    margin-top: 3rem !important;
  }
  .mr-xl-5,
  .mx-xl-5 {
    margin-right: 3rem !important;
  }
  .mb-xl-5,
  .my-xl-5 {
    margin-bottom: 3rem !important;
  }
  .ml-xl-5,
  .mx-xl-5 {
    margin-left: 3rem !important;
  }
  .p-xl-0 {
    padding: 0 !important;
  }
  .pt-xl-0,
  .py-xl-0 {
    padding-top: 0 !important;
  }
  .pr-xl-0,
  .px-xl-0 {
    padding-right: 0 !important;
  }
  .pb-xl-0,
  .py-xl-0 {
    padding-bottom: 0 !important;
  }
  .pl-xl-0,
  .px-xl-0 {
    padding-left: 0 !important;
  }
  .p-xl-1 {
    padding: 0.25rem !important;
  }
  .pt-xl-1,
  .py-xl-1 {
    padding-top: 0.25rem !important;
  }
  .pr-xl-1,
  .px-xl-1 {
    padding-right: 0.25rem !important;
  }
  .pb-xl-1,
  .py-xl-1 {
    padding-bottom: 0.25rem !important;
  }
  .pl-xl-1,
  .px-xl-1 {
    padding-left: 0.25rem !important;
  }
  .p-xl-2 {
    padding: 0.5rem !important;
  }
  .pt-xl-2,
  .py-xl-2 {
    padding-top: 0.5rem !important;
  }
  .pr-xl-2,
  .px-xl-2 {
    padding-right: 0.5rem !important;
  }
  .pb-xl-2,
  .py-xl-2 {
    padding-bottom: 0.5rem !important;
  }
  .pl-xl-2,
  .px-xl-2 {
    padding-left: 0.5rem !important;
  }
  .p-xl-3 {
    padding: 1rem !important;
  }
  .pt-xl-3,
  .py-xl-3 {
    padding-top: 1rem !important;
  }
  .pr-xl-3,
  .px-xl-3 {
    padding-right: 1rem !important;
  }
  .pb-xl-3,
  .py-xl-3 {
    padding-bottom: 1rem !important;
  }
  .pl-xl-3,
  .px-xl-3 {
    padding-left: 1rem !important;
  }
  .p-xl-4 {
    padding: 1.5rem !important;
  }
  .pt-xl-4,
  .py-xl-4 {
    padding-top: 1.5rem !important;
  }
  .pr-xl-4,
  .px-xl-4 {
    padding-right: 1.5rem !important;
  }
  .pb-xl-4,
  .py-xl-4 {
    padding-bottom: 1.5rem !important;
  }
  .pl-xl-4,
  .px-xl-4 {
    padding-left: 1.5rem !important;
  }
  .p-xl-5 {
    padding: 3rem !important;
  }
  .pt-xl-5,
  .py-xl-5 {
    padding-top: 3rem !important;
  }
  .pr-xl-5,
  .px-xl-5 {
    padding-right: 3rem !important;
  }
  .pb-xl-5,
  .py-xl-5 {
    padding-bottom: 3rem !important;
  }
  .pl-xl-5,
  .px-xl-5 {
    padding-left: 3rem !important;
  }
  .m-xl-n1 {
    margin: -0.25rem !important;
  }
  .mt-xl-n1,
  .my-xl-n1 {
    margin-top: -0.25rem !important;
  }
  .mr-xl-n1,
  .mx-xl-n1 {
    margin-right: -0.25rem !important;
  }
  .mb-xl-n1,
  .my-xl-n1 {
    margin-bottom: -0.25rem !important;
  }
  .ml-xl-n1,
  .mx-xl-n1 {
    margin-left: -0.25rem !important;
  }
  .m-xl-n2 {
    margin: -0.5rem !important;
  }
  .mt-xl-n2,
  .my-xl-n2 {
    margin-top: -0.5rem !important;
  }
  .mr-xl-n2,
  .mx-xl-n2 {
    margin-right: -0.5rem !important;
  }
  .mb-xl-n2,
  .my-xl-n2 {
    margin-bottom: -0.5rem !important;
  }
  .ml-xl-n2,
  .mx-xl-n2 {
    margin-left: -0.5rem !important;
  }
  .m-xl-n3 {
    margin: -1rem !important;
  }
  .mt-xl-n3,
  .my-xl-n3 {
    margin-top: -1rem !important;
  }
  .mr-xl-n3,
  .mx-xl-n3 {
    margin-right: -1rem !important;
  }
  .mb-xl-n3,
  .my-xl-n3 {
    margin-bottom: -1rem !important;
  }
  .ml-xl-n3,
  .mx-xl-n3 {
    margin-left: -1rem !important;
  }
  .m-xl-n4 {
    margin: -1.5rem !important;
  }
  .mt-xl-n4,
  .my-xl-n4 {
    margin-top: -1.5rem !important;
  }
  .mr-xl-n4,
  .mx-xl-n4 {
    margin-right: -1.5rem !important;
  }
  .mb-xl-n4,
  .my-xl-n4 {
    margin-bottom: -1.5rem !important;
  }
  .ml-xl-n4,
  .mx-xl-n4 {
    margin-left: -1.5rem !important;
  }
  .m-xl-n5 {
    margin: -3rem !important;
  }
  .mt-xl-n5,
  .my-xl-n5 {
    margin-top: -3rem !important;
  }
  .mr-xl-n5,
  .mx-xl-n5 {
    margin-right: -3rem !important;
  }
  .mb-xl-n5,
  .my-xl-n5 {
    margin-bottom: -3rem !important;
  }
  .ml-xl-n5,
  .mx-xl-n5 {
    margin-left: -3rem !important;
  }
  .m-xl-auto {
    margin: auto !important;
  }
  .mt-xl-auto,
  .my-xl-auto {
    margin-top: auto !important;
  }
  .mr-xl-auto,
  .mx-xl-auto {
    margin-right: auto !important;
  }
  .mb-xl-auto,
  .my-xl-auto {
    margin-bottom: auto !important;
  }
  .ml-xl-auto,
  .mx-xl-auto {
    margin-left: auto !important;
  }
}

.stretched-link::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(0, 0, 0, 0);
}

.text-monospace {
  font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace !important;
}

.text-justify {
  text-align: justify !important;
}

.text-wrap {
  white-space: normal !important;
}

.text-nowrap {
  white-space: nowrap !important;
}

.text-truncate {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

@media (min-width: 576px) {
  .text-sm-left {
    text-align: left !important;
  }
  .text-sm-right {
    text-align: right !important;
  }
  .text-sm-center {
    text-align: center !important;
  }
}

@media (min-width: 768px) {
  .text-md-left {
    text-align: left !important;
  }
  .text-md-right {
    text-align: right !important;
  }
  .text-md-center {
    text-align: center !important;
  }
}

@media (min-width: 992px) {
  .text-lg-left {
    text-align: left !important;
  }
  .text-lg-right {
    text-align: right !important;
  }
  .text-lg-center {
    text-align: center !important;
  }
}

@media (min-width: 1200px) {
  .text-xl-left {
    text-align: left !important;
  }
  .text-xl-right {
    text-align: right !important;
  }
  .text-xl-center {
    text-align: center !important;
  }
}

.text-lowercase {
  text-transform: lowercase !important;
}

.text-uppercase {
  text-transform: uppercase !important;
}

.text-capitalize {
  text-transform: capitalize !important;
}

.font-weight-light {
  font-weight: 300 !important;
}

.font-weight-lighter {
  font-weight: lighter !important;
}

.font-weight-normal {
  font-weight: 400 !important;
}

.font-weight-bold {
  font-weight: 700 !important;
}

.font-weight-bolder {
  font-weight: bolder !important;
}

.font-italic {
  font-style: italic !important;
}

.text-white {
  color: #fff !important;
}

.text-primary {
  color: #007bff !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #0056b3 !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}

.text-decoration-none {
  text-decoration: none !important;
}

.text-break {
  word-break: break-word !important;
  word-wrap: break-word !important;
}

.text-reset {
  color: inherit !important;
}

.visible {
  visibility: visible !important;
}

.invisible {
  visibility: hidden !important;
}

@media print {
  *,
  *::before,
  *::after {
    text-shadow: none !important;
    box-shadow: none !important;
  }
  a:not(.btn) {
    text-decoration: underline;
  }
  abbr[title]::after {
    content: " (" attr(title) ")";
  }
  pre {
    white-space: pre-wrap !important;
  }
  pre,
  blockquote {
    border: 1px solid #adb5bd;
    page-break-inside: avoid;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
  @page {
    size: a3;
  }
  body {
    min-width: 992px !important;
  }
  .container {
    min-width: 992px !important;
  }
  .navbar {
    display: none;
  }
  .badge {
    border: 1px solid #000;
  }
  .table {
    border-collapse: collapse !important;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border: 1px solid #dee2e6 !important;
  }
  .table-dark {
    color: inherit;
  }
  .table-dark th,
  .table-dark td,
  .table-dark thead th,
  .table-dark tbody + tbody {
    border-color: #dee2e6;
  }
  .table .thead-dark th {
    color: inherit;
    border-color: #dee2e6;
  }
}
/*# sourceMappingURL=bootstrap.css.map */
/* SiteTheme.css - ACTIVE DESIGN-TOKEN THEME.
   Loaded in the ~/Content/css bundle BEFORE Site.css, so these :root token values drive the whole UI.
   The selected theme (Configuration/SystemConfig CSS tab) OVERWRITES this file with its ThemeData; the
   built-in default below is Cobalt. For a per-instance tweak use the CSS override box, not this file. */

/*#region Design tokens*/
/* Ticket 0001180 - system-wide theming. A "theme" = one of these token blocks.
   Components are being migrated to read var(--token) instead of hardcoded colors.
   Naming matches the existing --eshop_* tokens in Areas/CRM/Content/eShop.css.
   Dark is a per-user preference: :root[data-theme="dark"] wins over the OS default
   (@media prefers-color-scheme) in both directions. Nothing consumes these yet in
   this first step, so there is no visual change until rules are wired to them. */

/* --- Cobalt (light) - the default theme --- */
:root {
    /* surfaces */
    --bg: #f4f7fb;
    --surface: #ffffff;
    --surface_2: #eef3fa;
    --surface_3: #e4ecf6;
    --border: #e1e8f2;
    --border_strong: #ccd7e6;
    /* text */
    --text: #16202f;
    --text_muted: #566379;
    --text_subtle: #8593a8;
    /* brand */
    --brand: #2563eb;
    --brand_hover: #1d4ed8;
    --brand_fg: #ffffff;
    --accent: #0ea5e9;
    --ring: rgba(37, 99, 235, .35);
    /* status */
    --success: #167c3a;
    --success_bg: #e6f4ea;
    --warning: #a65a06;
    --warning_bg: #fbefdc;
    --danger: #b21e1e;
    --danger_bg: #fbe7e7;
    --info: #0b6ea8;
    --info_bg: #e3f1fb;
    /* navbar (its own scale so it can differ from the page surfaces) - deep cobalt bar */
    --navbar_bg: #1b3a8f;
    --navbar_fg: #ffffff;
    --navbar_muted: rgba(255, 255, 255, .65);
    --navbar_border: rgba(255, 255, 255, .14);
    --navbar_hover: rgba(255, 255, 255, .12);
    /* decorative tints (contextual field highlights, evaluation columns, ...) - kept soft
       so the whole-column field highlights read as gentle groupings, not loud blocks */
    --tint_green: #eef8ea;
    --tint_red: #f9ece9;
    --tint_amber: #faf4dd;
    --tint_orange: #faeade;
    --tint_purple: #f3ecfb;
    --tint_teal: #e9f7f7;
    --tint_cyan: #edfaf7;
    --tint_yellow: #fbf7dc;
    /* contextual field-group accents - a cohesive, muted BLUE -> PURPLE ramp (analogous to the
       cobalt brand) instead of a busy rainbow. Steps run blue (entity/config fields) -> purple
       (money/amount fields). Single values (not per-theme): each card's fill is derived from
       these as color-mix(<ramp> 14%, --surface), so it auto-tints for light AND dark. */
    --ctx_green: #8098cf;
    --ctx_teal: #8895cf;
    --ctx_cyan: #8f90cd;
    --ctx_amber: #988bcb;
    --ctx_orange: #a186c8;
    --ctx_red: #aa83c3;
    --ctx_purple: #b380bf;
    /* categorical chart series (ticket 0001187) - the palette the universal SVG chart component paints with when a
       segment carries no semantic meaning (courses, groups, months). A harmonised blue -> cyan -> teal -> green ->
       amber -> orange -> red -> purple ramp; distinguishable side by side and readable on --surface. Status charts
       keep using the semantic tokens (--success / --warning / --danger / --text_subtle) so they match the counters. */
    --chart_1: #2f6fed;
    --chart_2: #0c94c4;
    --chart_3: #0f9c8b;
    --chart_4: #4f9d3a;
    --chart_5: #c08a12;
    --chart_6: #d9722c;
    --chart_7: #c8443f;
    --chart_8: #8a5cd1;
    /* read-only / disabled field fill - deliberately more distinct than --surface_3 */
    --field_disabled: #d3dcea;
    /* shape */
    --radius: 10px;
    --radius_sm: 6px;
    --shadow: 0 1px 2px rgba(16, 30, 54, .06), 0 4px 14px rgba(16, 30, 54, .07);
    --shadow_strong: 0 10px 34px rgba(16, 30, 54, .16);
}

/* --- Cobalt (dark) - explicit per-user selection --- */
:root[data-theme="dark"] {
    /* surfaces */
    --bg: #0d1321;
    --surface: #151d2f;
    --surface_2: #1c2740;
    --surface_3: #24314f;
    --border: #2a3853;
    --border_strong: #3b4d6d;
    /* text */
    --text: #e7edf8;
    --text_muted: #9aabc5;
    --text_subtle: #6f8098;
    /* brand */
    --brand: #4f8cff;
    --brand_hover: #6ba0ff;
    --brand_fg: #0b1220;
    --accent: #38bdf8;
    --ring: rgba(79, 140, 255, .42);
    /* status */
    --success: #4ac47b;
    --success_bg: #12301f;
    --warning: #e6a33f;
    --warning_bg: #33260f;
    --danger: #f56b6b;
    --danger_bg: #351a1a;
    --info: #4cbdf1;
    --info_bg: #0f2a3a;
    /* navbar - very dark cobalt-navy */
    --navbar_bg: #101d40;
    --navbar_fg: #e7edf8;
    --navbar_muted: #9aabc5;
    --navbar_border: rgba(255, 255, 255, .1);
    --navbar_hover: rgba(255, 255, 255, .07);
    /* decorative tints */
    --tint_green: #16311f;
    --tint_red: #351d1a;
    --tint_amber: #332a12;
    --tint_orange: #3a2812;
    --tint_purple: #271a33;
    --tint_teal: #10312f;
    --tint_cyan: #0f2f2c;
    --tint_yellow: #33300f;
    /* categorical chart series - same ramp lifted and desaturated so it reads on the dark surfaces */
    --chart_1: #6ba0ff;
    --chart_2: #45c0e8;
    --chart_3: #3fc7b0;
    --chart_4: #7fc95f;
    --chart_5: #e6b64a;
    --chart_6: #f0955c;
    --chart_7: #f2726c;
    --chart_8: #b18ef0;
    --field_disabled: #2c3c5c;
    /* shape */
    --shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);
    --shadow_strong: 0 12px 36px rgba(0, 0, 0, .55);
}

/* --- OS preference (before the user picks): dark unless explicitly set to light --- */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) {
        --bg: #0d1321;
        --surface: #151d2f;
        --surface_2: #1c2740;
        --surface_3: #24314f;
        --border: #2a3853;
        --border_strong: #3b4d6d;
        --text: #e7edf8;
        --text_muted: #9aabc5;
        --text_subtle: #6f8098;
        --brand: #4f8cff;
        --brand_hover: #6ba0ff;
        --brand_fg: #0b1220;
        --accent: #38bdf8;
        --ring: rgba(79, 140, 255, .42);
        --success: #4ac47b;
        --success_bg: #12301f;
        --warning: #e6a33f;
        --warning_bg: #33260f;
        --danger: #f56b6b;
        --danger_bg: #351a1a;
        --info: #4cbdf1;
        --info_bg: #0f2a3a;
        --navbar_bg: #101d40;
        --navbar_fg: #e7edf8;
        --navbar_muted: #9aabc5;
        --navbar_border: rgba(255, 255, 255, .1);
        --navbar_hover: rgba(255, 255, 255, .07);
        --tint_green: #16311f;
        --tint_red: #351d1a;
        --tint_amber: #332a12;
        --tint_orange: #3a2812;
        --tint_purple: #271a33;
        --tint_teal: #10312f;
        --tint_cyan: #0f2f2c;
        --tint_yellow: #33300f;
        --chart_1: #6ba0ff;
        --chart_2: #45c0e8;
        --chart_3: #3fc7b0;
        --chart_4: #7fc95f;
        --chart_5: #e6b64a;
        --chart_6: #f0955c;
        --chart_7: #f2726c;
        --chart_8: #b18ef0;
        --field_disabled: #2c3c5c;
        --shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 6px 18px rgba(0, 0, 0, .4);
        --shadow_strong: 0 12px 36px rgba(0, 0, 0, .55);
    }
}
/*#endregion*/

/*#region General*/

body {
    /*padding-top: 50px;*/
    padding-bottom: 60px;
}


/* Set padding to keep content from hitting the edges */
.body-content {
    /*padding-left: 15px;
    padding-right: 15px;*/
    padding: 15px;
}

/* Override the default bootstrap behavior where horizontal description lists 
   will truncate terms that are too long to fit in the left column 
*/
.dl-horizontal dt {
    white-space: normal;
}

/* Set width on the form input elements since they're 100% wide by default */
input,
select,
textarea {
    /*max-width: 280px;*/
}

/* Required field */
.required::after {
    content: " *";
    font-weight: bold;
    color: var(--danger);
}

/* Validation errors styling */
.validation-summary-errors ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* User profile */
.UserProfilePicture {
    width: 30px;
    height: 30px;
    border-radius: 50%;
}


.UserImport_modal-content {
    position: initial;
    display: flex;
    flex-direction: column;
    width: 100%;
    height:100%;
    pointer-events: auto;
    background-color: var(--surface);
    background-clip: padding-box;
    border: 1px solid var(--border);
    border-radius: 0.3rem;
    outline: 0;
}

.staticDiv {
    position: static !important;
}

.loginForm_center_left {
}
.loginForm_center {
    background-color: var(--surface);
    border-radius: 8px;
}
.loginForm_center_right {
}
/*#endregion*/

/*#region CommonClasses*/
.blink {
    animation: blinker 2s step-start infinite;
}
@keyframes blinker {
    50% {
        opacity: 0;
    }
}
.statusbar { }
.footerbar {
    height: 12px;
    width: 200px;
    cursor: pointer;
    background-color: var(--border_strong);
    margin: 0;
    padding: 0;
    border-radius: 5px 5px 0 0;
}
.footerbardet {
    border-top: 2px solid var(--border_strong);
}
/* footer links carry Bootstrap .text-info (fixed cyan); re-point them to the brand so the footer follows the theme */
.footerbardet a {
    color: var(--brand) !important;
}
.footerbardet a:hover {
    color: var(--brand_hover) !important;
}
.tooltipspan:hover {
    cursor: help;
    border-bottom: 1px dotted var(--brand);
}
/* New row style in GridView */
.layout_IsPublic {
    color: var(--info) !important;
    background-color: var(--info_bg);
    font-style: italic;
}
/* Record statuses */
.RecordStatus_Valid {
    color: var(--success) !important;
}
.RecordStatus_Approved {
    color: var(--success) !important;
}
.RecordStatus_Declined {
    color: var(--warning) !important;
}
.RecordStatus_New {
    color: var(--info) !important;
}
.RecordStatus_Locked {
    color: var(--warning) !important;
}
.RecordStatus_Locked:after {
}
.RecordStatus_InProcess {
    color: var(--accent) !important;
}
.RecordStatus_ProcessOK {
    color: var(--success) !important;
}
.RecordStatus_ProcessFailed {
    color: var(--danger) !important;
}
.RecordStatus_Warning {
    color: var(--warning) !important;
}
.RecordStatus_Error {
    color: var(--danger) !important;
}
.RecordStatus_Disabled {
    color: var(--text_subtle) !important;
}
.RecordStatus_Deleted {
    color: var(--text_subtle) !important;
}
/* Study (assigned lesson) statuses. Deliberately the SAME colour vocabulary as the "My current
   courses" dashboard component, so a lesson a user sees as amber "In progress" on the dashboard
   reads amber in the Study lists too: not started = muted, in progress = amber, completed =
   green, failed = red, enrolled for a term = brand. Consumed as a status_pill colour class. */
.AULStatus_NotStarted {
    color: var(--text_subtle) !important;
}
.AULStatus_InProgress {
    color: var(--warning) !important;
}
.AULStatus_Completed {
    color: var(--success) !important;
}
.AULStatus_Failed {
    color: var(--danger) !important;
}
.AULStatus_Subscribed {
    color: var(--brand) !important;
}
/* Status pill: the grid status cell is wrapped in <span class="status_pill RecordStatus_X">
   by GVHTMLDataCellPreparedStatusPillHelper. status_pill gives the badge shape + a leading
   dot; the RecordStatus_X class above supplies the colour, from which the dot (currentColor)
   AND a tinted fill (color-mix) derive - one colour drives text, dot and background. */
.status_pill {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11.5px;
    font-weight: 600;
    line-height: 1.6;
    padding: 2px 9px;
    border-radius: 999px;
    background-color: color-mix(in srgb, currentColor 15%, var(--surface));
}
.status_pill::before {
    content: "";
    flex: none;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background-color: currentColor;
}
/* Contextual field groups (amounts, companies, dates, currency, discount, cost centre, ...).
   Each renders as an INSET tinted card drawn with a ::before, so there is a small gap between
   neighbours (they don't merge into one block) AND the column box keeps its size - so carded
   and plain fields stay aligned (the field layout doesn't shift). Fill = --tint_*, border =
   the soft, muted --ctx_* accents; the content sits above the card by PAINT ORDER (see below). */
.div_id1, .div_parentitem,
.div_amountfinal, .div_amount1, .div_amount2,
.div_datefinal, .div_date1, .div_date2,
.div_currency, .div_discount,
.div_company1, .div_company2, .div_costcenter {
    position: relative;
    background-color: transparent;
}
.div_id1::before, .div_parentitem::before,
.div_amountfinal::before, .div_amount1::before, .div_amount2::before,
.div_datefinal::before, .div_date1::before, .div_date2::before,
.div_currency::before, .div_discount::before,
.div_company1::before, .div_company2::before, .div_costcenter::before {
    content: "";
    position: absolute;
    inset: 2px;
    z-index: 0;
    border-radius: var(--radius_sm);
    pointer-events: none;
}
/* The content sits above the ::before card with position:relative ALONE - deliberately NO z-index.
   A z-index here would make every field a STACKING CONTEXT, which traps any DevExpress drop-down
   rendered inside it (the popup's own z-index:10000 then only counts inside that z-index:1 box), so
   the DateEdit calendar / combo list painted BEHIND the fields of the next group - the group later
   in the DOM won on equal z-index. Without a z-index the card and the fields are both in the
   "positioned, z-index:auto" paint step and resolve in TREE ORDER; ::before is the first child, so
   the fields still paint on top and the drop-downs escape correctly. (ticket 0001191) */
.div_id1 > *, .div_parentitem > *,
.div_amountfinal > *, .div_amount1 > *, .div_amount2 > *,
.div_datefinal > *, .div_date1 > *, .div_date2 > *,
.div_currency > *, .div_discount > *,
.div_company1 > *, .div_company2 > *, .div_costcenter > * {
    position: relative;
}
/* fill only (no border) - a soft wash derived from the blue->purple ramp; the col box is
   unchanged so fields stay aligned, and inset:2px above keeps a gap between neighbours. */
.div_id1::before, .div_parentitem::before {
    background-color: color-mix(in srgb, var(--ctx_green) 22%, var(--surface));
}
.div_company1::before, .div_company2::before {
    background-color: color-mix(in srgb, var(--ctx_teal) 22%, var(--surface));
}
.div_costcenter::before {
    background-color: color-mix(in srgb, var(--ctx_cyan) 22%, var(--surface));
}
.div_datefinal::before, .div_date1::before, .div_date2::before {
    background-color: color-mix(in srgb, var(--ctx_amber) 22%, var(--surface));
}
.div_currency::before {
    background-color: color-mix(in srgb, var(--ctx_orange) 22%, var(--surface));
}
.div_amountfinal::before, .div_amount1::before, .div_amount2::before {
    background-color: color-mix(in srgb, var(--ctx_red) 22%, var(--surface));
}
.div_discount::before {
    background-color: color-mix(in srgb, var(--ctx_purple) 22%, var(--surface));
}
.div_amountfinal {
    font-weight: bolder;
}
/*#endregion*/

/*#region Buttons*/
.exapbtn {
}
.exapbtnInnerText {
    margin-left: 10px;
}
.exapbtnInnerIcon {
}
.exapbtnSave {
}
.exapbtnSave .exapbtnInnerIcon {
    color: var(--success);
}
.exapbtnComplete {
}
.exapbtnComplete .exapbtnInnerIcon {
    color: var(--success);
}
.exapbtnRelatedContent {
}
.exapbtnCancel {
}
.exapbtnCancel .exapbtnInnerIcon {
    color: var(--text_muted);
}
.exapbtnDelete {
}
.exapbtnDelete .exapbtnInnerIcon {
    color: var(--danger);
}
/*#endregion*/

/*#region Study Plan*/

/* Study plan treeview style*/
.studyplan_treeview {
    /*border:1px solid;*/
}
/* Style the arrow */
.studyplan_arrow_course {
    cursor: pointer;
    user-select: none; /* Prevent text selection */
}

/* Declare the arrow */
.studyplan_arrow_course::before {
    content: url("Images/Add_16x16.png");
}

/* Show the arrow icon when clicked on */
.studyplan_arrow_course-down::before {
    content: url("Images/Undo_16x16.png");
}

/* Style the arrow */
.studyplan_arrow_desc {
    cursor: pointer;
    user-select: none; /* Prevent text selection */
}

/* Declare the arrow */
.studyplan_arrow_desc::before {
    content: url("Images/Zoom_16x16.png");
}

/* Show the arrow icon when clicked on */
.studyplan_arrow_desc-down::before {
    content: url("Images/Zoom_16x16.png");
}

/* Style lessondesc arrow*/
.studyplan_arrow_lesson{
    padding-left: 5px;
    user-select: none;
}

/* Hide the nested list */
.nested {
    display: none;
}

/* Show the nested list when the user clicks on the caret/arrow (with JavaScript) */
.active {
    display: block;
}

/* Default state of desv divs */
.desc_hidden {
    display:none;
}

/* Show desc divs */
.desc_active {
    display: block;
}

/* Hide ul list bullets */
ul.studyplan-treeview-ul {
    list-style: none;
    padding-left: 1rem;
    padding-bottom: 0.5rem;
    margin-bottom: 0.25rem;
}

/*Studyplan course rows */
.studyplan-treeview-course-row{
    display:flex;
}

/* Desc arrow span style */
.treeview_span_desc{
    padding-left:10px;
}

/* Success lesson icon */
.studyplan_treeview_statusicon_success {
    content: url("Images/CheckBox_16x16.png");
    padding-left: 10px;
}

/* Fail lesson icon */
.studyplan_treeview_statusicon_fail {
    content: url("Images/Close_16x16.png");
    padding-left: 10px;
}

/* Not finished lesson icon */
.studyplan_treeview_statusicon_empty {
    padding-left: 10px;
    content: url("Images/Close_16x16.png");
    visibility:hidden;
}

/* Desc icon style */
.studyplan_treeview_descriptionicon {
    padding-left: 10px;
}

/* Desc div style */
.studyplan_treeview_descriptiondiv {
    padding: 10px;
    margin:15px;
    border:1px dotted;
    border-radius:15px;
}

/* Course title style */
.studyplan_course_title {
    padding-left: 10px;
    font-size: 20px;    
}

/* Lesson title style */
.studyplan_lesson_title {
    padding-left: 10px;
    font-size: 18px;
}

/* Succeeded lessons number style */
.studyplan_lessoncount_succeeded {
    font-size: large;
    font-weight: bold;
    color: var(--success);
}


/* Failed lessons number style */
.studyplan_lessoncount_failed {
    font-size: large;
    font-weight: bold;
    color: var(--danger);
}

/* Course succeeded title style */
.studyplan_treeview_course_succeeded{
    font-style:italic;
    color: var(--success);
    font-weight:bold;
}

/* Course failed title style */
.studyplan_treeview_course_failed{
    font-style:italic;
    color: var(--danger);
    font-weight:bold;
}

/*#endregion*/

/*#region Study eShop*/

.eShop_card {
    background-color: var(--surface_2);
}

.eShop_card:hover {
    background-color: var(--surface_3);
    cursor: pointer;
}

.eShop_card_img {
    height: 250px;
    width: 100%;
    /*background-color: lightgray;*/
    background-color: var(--surface_2);
}

.eShop_card_img_empty {
    height: 250px;
    width: 100%;
    /*background-color: lightgray;*/
    background-color: var(--surface_2);
}

.eShop_card_CourseTitle {
    font-size: 24px;
}

.eShop_card_CourseDesc {
    font-size: 18px;
    height: 80px;
    width: 200px;
}

.eShop_card_CourseCost {
    font-size: 16px; 
    font-weight: 300;
}

.eShop_detail_Course_Title{
    font-size:24px;
    font-weight:500;
}

.eShop_detail_Course_Description {
    overflow: hidden;
    height: 140px;
    width: 630px;
}

.eShop_detail_Course_Type{
    font-size: 20px;
    font-weight: 400;
}

.eShop_Detail_Lesson_Title {
    padding-top: 25px;
} 

.eShop_Detail_Lesson_Description {
    padding-top: 25px;
}

.eShop_Detail_Lesson_Type {
    padding-top: 25px;
}

.eShop_Detail_Lesson_Term {
}

.eShop_Detail_Img_Empty {
    height: 300px;
    background-color: var(--surface_3);
}

.eEhop_Detail_Card_Custom {
    position: relative;
    min-width: 0;
    word-wrap: break-word;
    background-color: var(--surface);
    background-clip: border-box;
    border: 1px solid var(--border);
    border-radius: 0.25rem;
}
  

/*#region CardView - old*/

.course_title {
    margin: auto;
    display: table;
    font-size: 25px;
}

.course_description {
    overflow: hidden;
    height: 250px;
    width: 200px;
}

.course_footer {
    margin: auto;
    display: table;
    font: italic;
    color: var(--brand);
}

/*#endregion*/

/*#endregion*/

/*#region My Learning cards*/
.myl_row {
    min-height: 330px;
}
.myl_carousel {
    max-width: 350px;
}
.myl_icon {
    width: 64px;
    height: 64px;
}
.myl_coursetitle {
    vertical-align: middle;
}
.myl_lessondesc {
    font-size: smaller;
}
.myl_lessonoptions {
    font-size: smaller;
    color: var(--warning);
}
.myl_lessonistest {
    color: var(--accent);
}
.myl_lessonisoptional {
    font-style: italic;
}
.myl_lessonstatus_subscribed {
    color: var(--warning);
}
.myl_lessonstatus_running {
    color: var(--brand);
}
.myl_lessonstatus_succeeded {
    color: var(--success);
}
.myl_lessonstatus_failed {
    color: var(--danger);
}
.myl_lessonstatusicon {
    width: 15px;
}
.myl_lessonattempts {
}
.myl_lessocredits {
}
.myl_lessonattempts_last {
}
.mylshow_summary {
    min-height: 200px;
    background-color: var(--surface_2);
}
.mylshow_summary_pic {
    width: 300px;
    height: 330px;
    padding: 20px;
    float: right;
    margin: 0;
}
.mylshow_summary_user {
}
.mylshow_summary_user_cert {
    font-size: 22px;
    max-width: 40px;
}
.mylshow_summary_user_cert a {
    color: var(--text);
}
.mylshow_summary_user_eval {
    font-size: 22px;
    max-width: 40px;
}
.mylshow_summary_user_eval a {
    color: var(--text);
}
.mylshow_summary_user_pic {
}
.mylshow_summary_user_name {
    font-size: smaller;
}
.myl_row_tags {
    font-size: inherit;
    margin: 10px 10px 10px 0px;
    border: 1px dotted var(--border_strong);
    border-radius: 5px;
}
.myl_col_tags{
    padding: 5px;
}
.myl_tags {
    padding-right:5px;
}
/* Lesson-type icons (.myl_icon) are dark line-art PNG data-URIs that read fine on the light theme
   but vanish on the dark surface. On dark, invert their lightness (hue-rotate restores any colour so
   coloured icons keep their hue); the light theme is left untouched. Mirrors the token system's two
   dark triggers (explicit toggle + OS preference when not explicitly light). */
:root[data-theme="dark"] .myl_icon {
    filter: invert(1) hue-rotate(180deg) brightness(1.05);
}
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .myl_icon {
        filter: invert(1) hue-rotate(180deg) brightness(1.05);
    }
}
/*#endregion*/

/*#region Status bar*/
/* The edit-page status bar (@Html.StatusBar) shows "Status: X" but every status looked the same.
   The container carries a statusbar_{status} class; map it to a colour and render a thicker LEFT
   STRIPE on the alert plus colour the status text - the SAME status->colour scheme as the grid row
   stripe (info/success/warning/accent/danger, disabled = muted). --status_color is inherited from
   the container down to the alert + the status text. */
.statusbar {
    --status_color: var(--text_subtle);
}
.statusbar_new {
    --status_color: var(--info);
}
.statusbar_valid,
.statusbar_approved,
.statusbar_processok {
    --status_color: var(--success);
}
.statusbar_declined,
.statusbar_locked {
    --status_color: var(--warning);
}
.statusbar_inprocess {
    --status_color: var(--accent);
}
.statusbar_error,
.statusbar_processfailed,
.statusbar_deleted {
    --status_color: var(--danger);
}
.statusbar_disabled {
    --status_color: var(--text_subtle);
}
.statusbar .alert {
    border-left: 5px solid var(--status_color) !important;
}
.statusbar_status {
    color: var(--status_color) !important;
    font-weight: 600 !important;
    font-style: normal !important;
}
/*#endregion*/

/*#region Evaluation/Answers*/

.answer_course_title {
    font: 500;
}

.answer_description {
    font-style : italic;
}

.answer_row {
    background-color : transparent;
}

.eval_col_countnumber{
    background-color: var(--tint_orange);
}

.eval_col_usernumber{
    background-color: var(--tint_amber);
}

.eval_col_cmboxnumber {
    background-color: var(--tint_amber);
}

.eval_col_chkboxnumber {
    background-color: var(--tint_yellow);
}

.eval_col_avgnumber {
    background-color: var(--tint_cyan);
}
/*#endregion*/

/*#region Tasks*/
/* task rows carry a left URGENCY stripe (same mechanism + look as the grid status stripes in
   SiteDevExpress.css); the row-level colour these classes used to set was overridden by the themed
   ".dxgvDataRow_Office365 td { color }" rule, so it read as lost.
   There is deliberately NO "completed" stripe (ticket 0001191): the stripe marks rows that need
   attention, and a green bar on every finished task buried the overdue ones. */
.task_list_row_failed > td:first-child {
    background-image: linear-gradient(var(--danger), var(--danger)) !important;
}
.task_list_row_duetoday > td:first-child {
    background-image: linear-gradient(var(--warning), var(--warning)) !important;
}
.task_list_row_delegated > td:first-child {
    background-image: linear-gradient(var(--accent), var(--accent)) !important;
}
.task_list_row_failed > td:first-child,
.task_list_row_duetoday > td:first-child,
.task_list_row_delegated > td:first-child {
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: 3px calc(100% - 10px) !important;
}
/* task priority text accents (survive the themed td colour rule via higher specificity) */
.dxgvDataRow_Office365 td.task_list_col_pri_High {
    color: var(--danger) !important;
}
.dxgvDataRow_Office365 td.task_list_col_pri_Low {
    color: var(--text_muted) !important;
}
.task_edit_customfield_caption {
    white-space: normal;
    word-wrap: break-word;
}
/* Task/Edit right-hand info panel. Was built from Bootstrap utilities
   ("bg-light p-2 rounded border border-secondary"), which gave it the BOOTSTRAP radius instead of
   --radius and no elevation, so it read as a flat grey block rather than a card. Now the house card:
   --surface + --border + --radius + --shadow. (ticket 0001191) */
.task_edit_info_panel {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
    padding: 0.75rem;
    overflow: hidden;
}
/* ...the related-tasks grid inside it paints itself on --bg (grids are designed to sit flush on the
   page canvas), so on a --surface card it showed as a darker rectangle floating inside the panel.
   Give it its own full-bleed section on --bg, separated by a rule - the accordion pattern. */
.task_edit_info_grid {
    background-color: var(--bg);
    border-top: 1px solid var(--border);
    margin: 0.75rem -0.75rem -0.75rem -0.75rem;
    padding: 0.5rem 0;
}
/* ...the panel head is a DATE AXIS (start -> due) instead of two label/value columns. The rail is
   the task's whole window, the fill is the elapsed part, so "how much time is left" reads at a
   glance. --task_axis is set per state below and drives fill + due-date colour together. */
.task_axis {
    --task_axis: var(--brand);
    padding: 0.25rem 0.25rem 0 0.25rem;
}
.task_axis_rail {
    position: relative;
    height: 6px;
    border-radius: 999px;
    background-color: var(--surface_3);
    overflow: hidden;
}
.task_axis_fill {
    height: 100%;
    border-radius: 999px;
    background-color: var(--task_axis);
    transition: width .3s ease;
}
/* end caps so the rail reads as a span between two fixed points, not an open progress bar */
.task_axis_rail::before,
.task_axis_rail::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    transform: translateY(-50%);
    background-color: var(--task_axis);
}
.task_axis_rail::before {
    left: 0;
}
.task_axis_rail::after {
    right: 0;
    background-color: var(--border_strong);
}
.task_axis_labels {
    display: flex;
    justify-content: space-between;
    gap: 0.5rem;
    margin-top: 0.35rem;
}
.task_axis_label {
    display: flex;
    flex-direction: column;
    min-width: 0;
}
.task_axis_label_end {
    text-align: right;
}
.task_axis_caption {
    font-size: 0.75rem;
    color: var(--text_muted);
    line-height: 1.2;
}
.task_axis_date {
    font-weight: 600;
    white-space: nowrap;
}
/* per-state accent: open = brand, due today = warning, overdue = danger, completed = success */
.task_axis_today {
    --task_axis: var(--warning);
}
.task_axis_overdue {
    --task_axis: var(--danger);
}
.task_axis_done {
    --task_axis: var(--success);
}
.task_axis_done .task_axis_rail::after {
    background-color: var(--success);
}
/* assignee card under the axis: photo + name, status pill pushed to the right */
.task_info_person {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border);
}
.task_info_avatar {
    width: 40px;
    height: 40px;
    flex: 0 0 40px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid var(--border);
    background-color: var(--surface_2);
}
.task_info_person_text {
    display: flex;
    flex-direction: column;
    min-width: 0;
    margin-right: auto;
}
.task_info_person_name {
    font-weight: 600;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.task_info_person_caption {
    font-size: 0.75rem;
    color: var(--text_muted);
    line-height: 1.2;
}
/* due-date emphasis in that panel (text, not a row stripe) */
.task_edit_due_overdue {
    color: var(--danger);
}
.task_edit_due_today {
    color: var(--warning);
}
/*#endregion*/

/*#region CalendarEvents*/
.event_vertical_table { 
    height: 100%;
    width: 100%;
}
.event_vertical_table_tr {
    border-top: 1px solid var(--border);
    border-bottom: 1px solid var(--border);
}
.event_vertical_table_tr_td_left {
    vertical-align: top;
}
.event_vertical_table_tr_td_left_div {
    width: 9px;
}
.event_vertical_table_tr_td_center {
    width: 100%;
    vertical-align: top;
}
.event_vertical_table_tr_td_center_div_top {
    /* holds a status_pill - let it size itself instead of clipping it to the old 10px text line */
    text-align: right;
    line-height: 1;
}
/* the appointment is a small box, so the pill runs at a smaller scale than in a grid */
.event_vertical_table_tr_td_center_div_top .status_pill {
    font-size: 9px;
    padding: 1px 6px;
    gap: 3px;
}
.event_vertical_table_tr_td_center_div_top .status_pill::before {
    width: 4px;
    height: 4px;
}
.event_vertical_table_tr_td_center_div_center { }
.event_vertical_table_tr_td_center_div_center_title {
    padding-left: 2px;
    font-size: smaller;
    font-weight: bolder;
}
.event_vertical_table_tr_td_center_div_center_desc {
    padding-left: 2px;
    font-size: small;
}
.event_vertical_table_tr_td_right {
    vertical-align: bottom;
}
.event_vertical_table_tr_td_right_div {
    width: 9px;
    height: 20px;
    font-size: 0;
    position: relative;
    top: 0px;
}
/* Horizontal (all-day band) appointment template. Moved here out of an inline <style> block in
   _TemplatesHorizontalAppointmentPartial.cshtml - it was emitted once per rendered appointment and
   its colours were hardcoded, so the band never followed the theme (ticket 0001191). The fill under
   these is the CALENDAR's own colour, so the neutral bits are drawn with currentColor mixes rather
   than fixed black/white and stay visible on a light or a dark calendar colour. */
.evtH {
    /* the all-day band is tight: keep padding small and avoid margins */
    padding: 1px 4px;
    border-radius: var(--radius_sm);
    color: var(--text);
    overflow: hidden;
}
/* 3 columns: left accent | flexible text | right glyph */
.evtH_g {
    display: grid;
    grid-template-columns: 4px 1fr auto;
    align-items: center;
    gap: 6px;
}
.evtH_left {
    width: 4px;
    height: 100%;
    background: color-mix(in srgb, currentColor 20%, transparent);
}
.evtH_center {
    min-width: 0; /* allow ellipsis */
}
.evtH_topline {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    line-height: 1.15;
}
/* opaque surface, not a translucent one - the calendar colour behind it would otherwise bleed
   through and take the text's contrast with it */
.evtH_status {
    font-size: 11px;
    line-height: 1.15;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--surface);
    color: var(--text);
    white-space: nowrap;
    max-width: 35%;
    overflow: hidden;
    text-overflow: ellipsis;
}
.evtH_title {
    font-weight: 600;
    font-size: 12px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.evtH_desc {
    font-size: 11px;
    line-height: 1.15;
    opacity: 0.9;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    margin-top: 0;
}
.evtH_right {
    display: flex;
    align-items: flex-start;
    justify-content: flex-end;
    min-width: 14px;
}
.evtH_glyph {
    display: inline-block;
    width: 14px;
    height: 14px;
    background-size: 14px 14px;
}
/*#endregion*/

/*#region TilesMenu*/
.tilescard {
width: 20rem;
}
.tilesimage {
}
.tilesthumbnail {
}
.tilesthumbnail:hover {
opacity: 0.7;
}
.tilescardbody {
}
.tilescardtitle {
}
.tilescardtitle a {
color: var(--text);
}
.tilescardtitle a:hover {
text-decoration: none;
}
.tilescardtext {
}
.tilescardtextul {
}
.tilescardtextli {
}
.tilescardtextli a {
color: var(--text);
}
/*#endregion*/

/*#region Tags token box*/
.tags_tokenbox,
.tags_tokenbox > table {
    border-radius: 12px !important;
    border-color: var(--border) !important;
}
.tags_chip {
    display: inline-block;
    padding: 1px 8px;
    margin: 1px 2px;
    border-radius: 8px;
    border: 1px solid var(--brand);
    background-color: var(--brand);
    color: var(--brand_fg);
    font-size: 0.85em;
    line-height: 1.4;
    white-space: nowrap;
}
.tags_chip_nowrap {
    display: inline-block;
    padding: 1px 8px;
    margin: 1px 2px;
    border-radius: 8px;
    border: 1px solid var(--brand);
    background-color: var(--brand);
    color: var(--brand_fg);
    font-size: 0.7em;
    white-space: nowrap;
}
.tag_chips_wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    vertical-align: middle;
}
/*#endregion*/

/*#region Language switcher (flag dropdown)*/
.lang_flag {
    width: 22px;
    height: 15px;
    object-fit: cover;
    border-radius: 2px;
    vertical-align: middle;
    box-shadow: 0 0 1px rgba(0, 0, 0, 0.5);
}
.navbar-nav .lang_toggle,
.navbar-nav .user_toggle {
    display: flex;
    align-items: center;
}
/* Alert badge over the user thumbnail (e.g. unread emails) */
.user_thumb_wrap {
    position: relative;
    display: inline-block;
    line-height: 0;
}
.user_alert_badge {
    position: absolute;
    top: -4px;
    right: -4px;
    min-width: 15px;
    height: 15px;
    padding: 0 3px;
    border-radius: 50%;
    background: var(--danger);
    color: #fff;
    font-size: 10px;
    line-height: 15px;
    font-weight: 700;
    text-align: center;
    box-shadow: 0 0 0 2px var(--navbar_bg); /* ring matches the navbar it sits on */
}
.dropdown-item.lang_item {
    display: flex;
    align-items: center;
    gap: 8px;
}
/*#endregion*/

/*#region Navbar hover balloon (cart, tasks) - lives here, not eShop.css, because it shows on every page*/
.navbar_flyout_wrap {
    position: relative;
}
.navbar_flyout {
    display: none;
    position: absolute;
    top: 100%;
    right: 0;
    z-index: 1050;
    width: 300px;
    max-width: 90vw;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 8px;
    box-shadow: var(--shadow_strong);
    padding: 10px 12px;
    cursor: default;
}
.navbar_flyout.show {
    display: block;
}
.navbar_flyout_empty {
    color: var(--text_muted);
    font-size: 0.9rem;
    text-align: center;
    padding: 8px 0;
}
.navbar_flyout_list {
    list-style: none;
    margin: 0 0 6px;
    padding: 0;
    max-height: 320px;
    overflow-y: auto;
}
.navbar_flyout_item {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 5px 0;
    border-bottom: 1px solid var(--border);
    font-size: 0.85rem;
}
.navbar_flyout_item_click {
    cursor: pointer;
}
.navbar_flyout_item_click:hover {
    background: var(--surface_2);
}
.navbar_flyout_title {
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.navbar_flyout_meta {
    flex: 0 0 auto;
    color: var(--text_muted);
    white-space: nowrap;
}
.navbar_flyout_amount {
    flex: 0 0 auto;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
}
.navbar_flyout_total {
    display: flex;
    justify-content: flex-end;
    align-items: baseline;
    padding: 8px 0 0;
    font-weight: 700;
}
.navbar_flyout_total_amount {
    font-variant-numeric: tabular-nums;
}
.navbar_flyout_total_exvat {
    margin-left: 4px;
    font-weight: 400;
    font-size: 0.8rem;
    color: var(--text_muted);
    font-variant-numeric: tabular-nums;
}
.navbar_flyout_discount {
    padding-top: 4px;
    font-weight: 400;
    font-size: 0.85rem;
    color: var(--text_muted);
}
.navbar_flyout_btn {
    display: block;
    text-align: center;
    padding: 7px 10px;
    background: var(--brand);
    color: var(--brand_fg);
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 600;
}
.navbar_flyout_btn:hover {
    background: var(--brand_hover);
    color: var(--brand_fg);
    text-decoration: none;
}
/*#endregion*/

/*#region Theme application (ticket 0001180)*/
/* Drives the app chrome from the design tokens above. Appended last so it layers
   over the baseline rules (same "last wins" mechanism as the runtime
   /System/CustomSite.css override) - revert = delete this whole region.
   Light renders the Cobalt theme; dark engages via :root[data-theme="dark"] or the
   OS preference. INTENTIONALLY LEFT for a later on-device pass: the decorative
   one-off colors (contextual .div_*, .eval_col_*, .myl_* accents, named colors) and
   the full DevExpress theme surfaces beyond the starter block below. */

/* --- page --- */
body {
    background-color: var(--bg);
    color: var(--text);
}
a {
    color: var(--brand);
}
a:hover {
    color: var(--brand_hover);
}
hr {
    border-top-color: var(--border);
}
.text-muted {
    color: var(--text_muted) !important;
}

/* --- navbar (Bootstrap .navbar-dark.bg-dark) driven by the navbar tokens --- */
.navbar.bg-dark {
    background-color: var(--navbar_bg) !important;
    border-bottom: 1px solid var(--navbar_border);
}
.navbar-dark .navbar-brand,
.navbar-dark .navbar-nav .nav-link,
.navbar-dark .navbar-nav .show > .nav-link,
.navbar-dark .navbar-nav .active > .nav-link {
    color: var(--navbar_fg);
}
.navbar-dark .navbar-nav .nav-link:hover,
.navbar-dark .navbar-nav .nav-link:focus {
    color: var(--navbar_fg);
    background-color: var(--navbar_hover);
    border-radius: var(--radius_sm);
}
.navbar-dark .navbar-nav .nav-link.disabled {
    color: var(--navbar_muted);
}
.navbar-dark .navbar-text {
    color: var(--navbar_muted);
}

/* --- Bootstrap surfaces --- */
.card,
.modal-content,
.dropdown-menu,
.list-group-item,
.popover {
    background-color: var(--surface);
    color: var(--text);
    border-color: var(--border);
}
.card-header,
.card-footer {
    background-color: var(--surface_2);
    border-color: var(--border);
}
/* #region Accordion (Bootstrap collapse) - branded, stateful */
/* content sits on the page canvas (--bg) so embedded grids/fields blend exactly as on a normal page
   (DevExpress grids paint their own --bg); only the header is the raised branded surface */
.accordion > .card {
    background-color: var(--bg);
    border-color: var(--border);
}
/* header bar: neutral surface with a slot for the brand accent stripe on the left */
.accordion > .card > .card-header {
    background-color: var(--surface_2);
    border-bottom: 1px solid var(--border);
    border-left: 3px solid transparent;
    transition: background-color .12s ease, border-color .12s ease;
}
/* toggle label neutral, its icon carries the brand */
.accordion > .card > .card-header .btn-link {
    color: var(--text);
    font-weight: 600;
    text-decoration: none;
}
.accordion > .card > .card-header .btn-link:hover,
.accordion > .card > .card-header .btn-link:focus {
    text-decoration: none;
    color: var(--brand);
}
.accordion > .card > .card-header .btn-link i {
    color: var(--brand);
}
/* hover hint */
.accordion > .card > .card-header:hover {
    background-color: color-mix(in srgb, var(--brand) 7%, var(--surface_2));
}
/* expanded panel: brand tint + brand left stripe + brand label (same stripe language as grids/status bar) */
.accordion > .card > .card-header:has(.btn-link[aria-expanded="true"]) {
    background-color: color-mix(in srgb, var(--brand) 12%, var(--surface));
    border-left-color: var(--brand);
}
.accordion > .card > .card-header:has(.btn-link[aria-expanded="true"]) .btn-link {
    color: var(--brand);
}
/* kill the browser's default (blue) focus ring on click; keep a themed ring for keyboard focus only */
.accordion > .card > .card-header .btn-link:focus {
    outline: none !important;
    box-shadow: none !important;
}
.accordion > .card > .card-header .btn-link:focus-visible {
    outline: 2px solid var(--brand) !important;
    outline-offset: -3px;
    box-shadow: none !important;
}
/* #endregion */
/* #region Form sections - collapsible header sections of an Edit form
   Generic: any Edit form may group its header fields into accordion sections whose header carries a summary of the
   section's key values, so a collapsed section still tells the user what is inside. Markup is produced by
   SharedHelperStaticClasses.BuildFormSectionSummary and kept current by FormSection (ASISYS.js). */
/* a section header is a divider, not a heading - it stays a thin strip so the fields keep the visual weight.
   Scoped to headers holding a form-section toggle, so other accordions (e.g. ALLEIMA CM) keep their own height. */
.accordion > .card > .card-header:has(.form_section_toggle) {
    padding: 0 .75rem;
}
/* A DevExpress drop-down (combo list, DateEdit calendar) taller than its section was CUT OFF at the section
   border instead of floating over the form. Bootstrap clips every accordion panel (.accordion > .card {
   overflow: hidden }) to keep the card's rounded corners. The .staticDiv wrappers (card / collapse / card-body)
   are NOT enough here: the pop-up is position:absolute and the contextual field groups of ticket 0001191 make
   their children position:relative (.div_costcenter > * etc.), so the pop-up's containing block is a wrapper
   INSIDE the card - and an overflow:hidden ancestor of the containing block does clip. Dropping the clip on
   form-section cards is what lets the pop-up out; the open/close animation is still clipped by .collapsing,
   which carries its own overflow:hidden. (ticket 0001197) */
.accordion > .card:has(.form_section_toggle) {
    overflow: visible;
}
/* The same clip bites an accordion panel marked .staticDiv - that class is precisely the "a pop-up must be able to
   leave this container" marker (it drops the panel out of the positioned chain), yet the card's own overflow:hidden
   still cut the list off at the section border, e.g. the shared combos in the ALLEIMA change management sections.
   (ticket 0001148) */
.accordion > .card.staticDiv {
    overflow: visible;
}
/* the clip was also what kept the square-cornered header inside the card's rounded corners - hand the radii to
   the header of the first section and to the body of the last one so no corner pokes out now that it is gone */
.accordion > .card:has(.form_section_toggle):first-of-type > .card-header {
    border-top-left-radius: calc(.25rem - 1px);
    border-top-right-radius: calc(.25rem - 1px);
}
.accordion > .card:has(.form_section_toggle):last-of-type > .collapse > .card-body {
    border-bottom-left-radius: calc(.25rem - 1px);
    border-bottom-right-radius: calc(.25rem - 1px);
}
.form_section_toggle {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    width: 100%;
    padding: .25rem 0;
    font-size: .9375rem;
    line-height: 1.4;
    white-space: normal;
}
.form_section_title {
    font-weight: 500;
    white-space: nowrap;
}
/* the summary must not compete with the section title - quiet, smaller, never bold */
.form_section_summary {
    margin-left: 1rem;
    min-width: 0;
    font-weight: 400;
    font-size: .875rem;
    color: var(--text_muted);
}
/* an expanded section shows the values in its own fields, so the summary recedes further */
.accordion > .card > .card-header:has(.btn-link[aria-expanded="true"]) .form_section_summary {
    opacity: .6;
}
/* items are separated by "; " - the first item carrying a value drops the separator (class kept in sync client-side) */
.form_section_summary_item::before {
    content: "; ";
}
.form_section_summary_item.form_section_summary_first::before {
    content: "";
}
.form_section_summary_label {
    color: var(--text_subtle);
}
.form_section_summary_value {
    color: var(--text_muted);
}
/* the one value the reader looks for first in the section - full text colour and weight, its label stays quiet */
.form_section_summary_highlight .form_section_summary_value {
    color: var(--text);
    font-weight: 600;
}
/* #endregion */
.dropdown-item {
    color: var(--text);
}
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--surface_2);
    color: var(--text);
}
.dropdown-divider {
    border-top-color: var(--border);
}
/* Bootstrap border utilities carry FIXED greys (.border = #dee2e6, .border-secondary = #6c757d),
   so boxes drawn with them (e.g. the "Use another service to log in" external-login panel) kept a
   hardcoded border that ignored the theme. Retint the neutral border utilities to the token. */
.border,
.border-top,
.border-right,
.border-bottom,
.border-left,
.border-secondary,
.border-light,
.border-dark {
    border-color: var(--border) !important;
}
/* soft corners on full-box border utilities (not the single-edge .border-top/right/bottom/left,
   where rounding one edge would look wrong - e.g. the tab-content panel edges). */
.border,
.border-secondary,
.border-light,
.border-dark {
    border-radius: var(--radius_sm) !important;
}

/* --- Bootstrap tables --- */
.table {
    color: var(--text);
}
.table th,
.table td {
    border-top-color: var(--border);
}
.table thead th {
    border-bottom-color: var(--border_strong);
    color: var(--text_muted);
}
.table-hover tbody tr:hover {
    background-color: var(--surface_2);
    color: var(--text);
}

/* --- Bootstrap forms --- */
.form-control,
.custom-select {
    background-color: var(--surface);
    color: var(--text);
    border-color: var(--border_strong);
}
.form-control:focus,
.custom-select:focus {
    border-color: var(--brand);
    box-shadow: 0 0 0 0.2rem var(--ring);
}
.form-control::placeholder {
    color: var(--text_subtle);
}
/* native <select> (e.g. the Version-history filter drop-downs) render an unthemed white/black OS
   box - theme the closed control like an editor (the option pop-up is OS-drawn and cannot be fully
   styled, but option colours are set where honoured). */
select {
    background-color: var(--surface);
    color: var(--text);
    border: 1px solid var(--border_strong);
    border-radius: var(--radius_sm);
    padding: 4px 8px;
}
select:focus {
    border-color: var(--brand);
    outline: none;
    box-shadow: 0 0 0 0.2rem var(--ring);
}
select option {
    background-color: var(--surface);
    color: var(--text);
}
/* Column header of the list modals (Version history, Workflows, ...): these were coloured Bootstrap
   alert bars (alert-success green / alert-warning orange) used as a table header, out of step with
   the neutral table/grid headers elsewhere. Render as a plain header - muted text with a bottom
   rule. Shared class applied in each modal partial in place of the alert-* class. */
.modal_list_head {
    background-color: transparent;
    color: var(--text_muted);
    border-bottom: 1px solid var(--border_strong);
}
/* Browser autofill: Chrome paints autofilled inputs a fixed light blue (#e8f0fe) with dark
   text, which looks wrong on the dark theme (seen on the login page). Override it - the inset
   box-shadow trick repaints the field with --surface and -webkit-text-fill-color sets the text.
   Applies to any autofilled input incl. the DevExpress login editors. */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
select:-webkit-autofill {
    -webkit-text-fill-color: var(--text) !important;
    -webkit-box-shadow: 0 0 0 1000px var(--surface) inset !important;
    box-shadow: 0 0 0 1000px var(--surface) inset !important;
    caret-color: var(--text);
    transition: background-color 9999s ease-in-out 0s;
}
/* Themed scrollbars: the OS/default scrollbar stayed light on every scroller (page, DevExpress
   list boxes like the Component-type multi-select, combo/lookup dropdowns, memos), which read as
   a bright bar against the dark UI. Style them from the tokens - thin, a muted --border_strong
   thumb on a transparent track - for both Firefox (scrollbar-color) and WebKit (::-webkit-*). */
* {
    scrollbar-color: var(--border_strong) transparent;
    scrollbar-width: thin;
}
::-webkit-scrollbar {
    width: 12px;
    height: 12px;
}
::-webkit-scrollbar-track {
    background: transparent;
}
::-webkit-scrollbar-thumb {
    background-color: var(--border_strong);
    border-radius: 8px;
    border: 3px solid transparent;
    background-clip: padding-box;
}
::-webkit-scrollbar-thumb:hover {
    background-color: var(--text_subtle);
}
::-webkit-scrollbar-corner {
    background: transparent;
}

/* --- Bootstrap buttons --- */
.btn-primary {
    background-color: var(--brand);
    border-color: var(--brand);
    color: var(--brand_fg);
}
.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--brand_hover);
    border-color: var(--brand_hover);
    color: var(--brand_fg);
}
.btn-secondary {
    background-color: var(--surface_3);
    border-color: var(--border_strong);
    color: var(--text);
}
.btn-outline-secondary {
    color: var(--text_muted);
    border-color: var(--border_strong);
}
.btn-outline-secondary:hover {
    background-color: var(--surface_2);
    color: var(--text);
}
.btn-link {
    color: var(--brand);
}
/* remaining contextual button variants (BS4 palette not theme-aware; e.g. the Tasks button).
   Hover darkens via a filter so no extra per-status hover tokens are needed. */
.btn-info { background-color: var(--info); border-color: var(--info); color: #fff; }
.btn-success { background-color: var(--success); border-color: var(--success); color: #fff; }
.btn-warning { background-color: var(--warning); border-color: var(--warning); color: #fff; }
.btn-danger { background-color: var(--danger); border-color: var(--danger); color: #fff; }
.btn-info:hover, .btn-success:hover, .btn-warning:hover, .btn-danger:hover,
.btn-info:focus, .btn-success:focus, .btn-warning:focus, .btn-danger:focus { color: #fff; filter: brightness(0.93); }
.btn-light { background-color: var(--surface_2); border-color: var(--border); color: var(--text); }
.btn-light:hover { background-color: var(--surface_3); color: var(--text); }
.btn-dark { background-color: var(--navbar_bg); border-color: var(--navbar_bg); color: var(--navbar_fg); }
.btn-outline-primary { color: var(--brand); border-color: var(--brand); }
.btn-outline-primary:hover { background-color: var(--brand); color: var(--brand_fg); }
.btn-outline-info { color: var(--info); border-color: var(--info); }
.btn-outline-info:hover { background-color: var(--info); color: #fff; }
.btn-outline-success { color: var(--success); border-color: var(--success); }
.btn-outline-success:hover { background-color: var(--success); color: #fff; }
.btn-outline-danger { color: var(--danger); border-color: var(--danger); }
.btn-outline-danger:hover { background-color: var(--danger); color: #fff; }
.btn-outline-warning { color: var(--warning); border-color: var(--warning); }
.btn-outline-warning:hover { background-color: var(--warning); color: #fff; }

/* --- Bootstrap alerts (called out in the ticket) --- */
.alert-success {
    color: var(--success);
    background-color: var(--success_bg);
    border-color: color-mix(in srgb, var(--success) 30%, transparent);
}
.alert-info {
    color: var(--info);
    background-color: var(--info_bg);
    border-color: color-mix(in srgb, var(--info) 30%, transparent);
}
.alert-warning {
    color: var(--warning);
    background-color: var(--warning_bg);
    border-color: color-mix(in srgb, var(--warning) 30%, transparent);
}
.alert-danger {
    color: var(--danger);
    background-color: var(--danger_bg);
    border-color: color-mix(in srgb, var(--danger) 30%, transparent);
}
.alert-primary {
    color: var(--brand);
    background-color: var(--surface_2);
    border-color: color-mix(in srgb, var(--brand) 30%, transparent);
}
/* status bar uses .alert-secondary; breadcrumb + footer collapse use .bg-light */
.alert-secondary {
    color: var(--text_muted);
    background-color: var(--surface_2);
    border-color: var(--border);
}
/* .alert-dark / .alert-light kept fixed Bootstrap greys (e.g. the Configuration/Setup config box) -> neutral themed panel */
.alert-dark {
    color: var(--text);
    background-color: var(--surface_2);
    border-color: var(--border_strong);
}
.alert-light {
    color: var(--text);
    background-color: var(--surface);
    border-color: var(--border);
}

/* --- Bootstrap contextual utilities + breadcrumb --- */
.bg-light {
    background-color: var(--surface_2) !important;
}
.bg-white {
    background-color: var(--surface) !important;
}
.text-dark {
    color: var(--text) !important;
}
.breadcrumb {
    background-color: var(--surface_2);
}
.breadcrumb-item.active {
    color: var(--text_muted);
}
.breadcrumb-item + .breadcrumb-item::before {
    color: var(--text_subtle);
}

/* --- Bootstrap badges --- */
.badge-primary { background-color: var(--brand); color: var(--brand_fg); }
.badge-success { background-color: var(--success); color: #fff; }
.badge-danger  { background-color: var(--danger); color: #fff; }
.badge-warning { background-color: var(--warning); color: #fff; }
.badge-info    { background-color: var(--info); color: #fff; }

/* --- Bootstrap tabs + pagination --- */
/* Tabs: only a (thicker) TOP border - no left/right/bottom (those were three different
   colours in dark). The active tab shows a brand top bar + a subtly raised surface fill,
   which reads as "this tab, content below". */
.nav-tabs {
    border-bottom: 0;
}
.nav-tabs .nav-link {
    color: var(--text_muted);
    background-color: transparent;
    border: 0 !important;
    border-top: 3px solid transparent !important;
    border-radius: 0;
}
.nav-tabs .nav-link:hover {
    color: var(--text);
    background-color: var(--surface_2);
    border-top-color: var(--border_strong) !important;
}
.nav-tabs .nav-link.active {
    color: var(--brand);
    background-color: var(--surface);
    border-top-color: var(--brand) !important;
}
/* Tab CONTENT panel: hide the Bootstrap left/right/bottom borders (paint them --bg so they
   blend into the page) and keep only a soft, LIGHTER-blue TOP border as the tabs-to-content
   divider (the full cobalt would be too heavy here). */
.tab-content.border-left {
    border-left-color: var(--bg) !important;
}
.tab-content.border-right {
    border-right-color: var(--bg) !important;
}
.tab-content.border-bottom {
    border-bottom-color: var(--bg) !important;
}
.tab-content {
    border-top: 2px solid color-mix(in srgb, var(--brand) 35%, var(--bg)) !important;
}
.page-link {
    color: var(--brand);
    background-color: var(--surface);
    border-color: var(--border);
}
.page-item.active .page-link {
    background-color: var(--brand);
    border-color: var(--brand);
    color: var(--brand_fg);
}

/* Record-status, row-status, task-list, tags, login card, footer bar, tooltip and the
   navbar cart/tasks flyout are variabilized in place in their own regions above - no
   duplicate mapping needed here. */

/*#endregion*/

/*#region Gallery viewer (reusable: flexible-fit main image + thumbnail strip + appearing arrows; source SLKEXT_Galeries)*/
.gallery_viewer {
    display: flex;
    gap: .6rem;
    align-items: flex-start;
}
.gallery_viewer_stage {
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--surface_2);
    border: 1px solid var(--border);
    border-radius: .4rem;
    overflow: hidden;
}
.gallery_viewer_main {
    display: block;
    max-width: 100%;
    max-height: 60vh;
    width: auto;
    height: auto;
    object-fit: contain;
}
.gallery_viewer_arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 2.2rem;
    height: 2.2rem;
    border: none;
    border-radius: 50%;
    background: color-mix(in srgb, var(--surface) 72%, transparent);
    color: var(--text);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    opacity: 0;
    transition: opacity .15s ease, background .15s ease;
}
.gallery_viewer_stage:hover .gallery_viewer_arrow {
    opacity: 1;
}
.gallery_viewer_arrow:hover {
    background: var(--surface);
}
.gallery_viewer_prev {
    left: .5rem;
}
.gallery_viewer_next {
    right: .5rem;
}
.gallery_viewer_thumbs {
    flex: 0 0 auto;
    display: flex;
    flex-direction: column;
    gap: .4rem;
    max-height: 60vh;
    overflow-y: auto;
}
.gallery_viewer_thumb {
    width: 4.5rem;
    height: 4.5rem;
    object-fit: cover;
    border: 2px solid transparent;
    border-radius: .3rem;
    cursor: pointer;
    opacity: .7;
    transition: opacity .15s ease, border-color .15s ease;
}
.gallery_viewer_thumb:hover {
    opacity: 1;
}
.gallery_viewer_thumb_active {
    opacity: 1;
    border-color: var(--brand);
}
/* Mobile: thumbnails drop below the main image as a horizontal strip; arrows stay visible (no hover on touch) */
@media (max-width: 767.98px) {
    .gallery_viewer {
        flex-direction: column;
    }
    .gallery_viewer_thumbs {
        flex-direction: row;
        max-height: none;
        width: 100%;
        overflow-x: auto;
        overflow-y: hidden;
    }
    .gallery_viewer_arrow {
        opacity: 1;
    }
}
/*#endregion*/

/* #region Grid views - universal saved view component in a GridView toolbar */
.gridlayout_toolbar {
    display: flex;
    align-items: center;
    gap: 4px;
}
/*#endregion*/
/*#region Shared combo action menu - flyout of the single menu button (driven by ASISYSComboBox.js)*/
.combo_actions_flyout {
    position: absolute;
    display: none;
    z-index: 1100;
    padding: 3px;
    background-color: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius_sm);
    box-shadow: var(--shadow);
}
.combo_actions_flyout.combo_actions_open {
    display: flex;
}
.combo_actions_item,
.combo_actions_item:hover,
.combo_actions_item:focus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 30px;
    min-height: 30px;
    font-size: 1rem;
    border-radius: var(--radius_sm);
    color: var(--text);
    text-decoration: none;
    cursor: pointer;
}
.combo_actions_item:hover {
    background-color: var(--surface_3);
    color: var(--brand);
}
/*#endregion*/

/*#region Entity side panel - shared read-only preview of a referenced record (host in _Layout, driven by ASISYSSidePanel.js)*/
.side_panel_backdrop {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1040;
    background-color: rgba(0, 0, 0, 0.15);
}
/* No overflow:hidden here - it would clip the header action menu (same trap as the accordion cards) */
.side_panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 400px;
    max-width: 100%;
    z-index: 1045;
    display: flex;
    flex-direction: column;
    background-color: var(--surface);
    border-left: 1px solid var(--border);
    box-shadow: var(--shadow_strong);
    transform: translateX(100%);
    transition: transform 0.2s ease-in-out;
}
.side_panel.side_panel_open {
    transform: translateX(0);
}
/* The band carries the entity bar AND the record title / intro text, so the record is named inside the band */
.side_panel_header {
    padding: 8px 12px 12px 12px;
    background-color: var(--brand);
    color: var(--brand_fg);
}
.side_panel_header_bar {
    display: flex;
    align-items: center;
}
/* The header icons are the only controls of the panel, so give them a comfortable hit area. Direct children
   only (plus the menu toggle) - the action menu items are anchors too and must keep their own styling */
.side_panel_header_bar > a,
.side_panel_header_bar > a:hover,
.side_panel_header_bar > a:focus,
.side_panel_menu_toggle,
.side_panel_menu_toggle:hover,
.side_panel_menu_toggle:focus {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    min-height: 34px;
    font-size: 1.2rem;
    border-radius: var(--radius_sm);
    color: var(--brand_fg);
    text-decoration: none;
    cursor: pointer;
}
.side_panel_header_bar > a:hover,
.side_panel_menu_toggle:hover {
    background-color: rgba(255, 255, 255, 0.18);
}
/* Menu opened by EntitySidePanel (no Popper), so it is placed under its toggle by plain CSS */
.side_panel_menu .dropdown-menu {
    position: absolute;
    top: 100%;
    left: 0;
    margin-top: 2px;
    z-index: 1050;
}
/* Label and its action menu stay together on the left, the edit link is pushed to the right edge */
.side_panel_entity {
    flex: 0 0 auto;
    padding: 0 8px;
    text-transform: uppercase;
    font-size: 0.85rem;
    letter-spacing: 0.04em;
}
.side_panel_edit {
    margin-left: auto;
}
.side_panel_body {
    flex: 1 1 auto;
    overflow-y: auto;
    padding: 12px 16px;
    color: var(--text);
}
/* Title and intro live in the coloured band, so they take the band's foreground colour */
.side_panel_titlerow {
    display: flex;
    align-items: center;
    padding: 6px 4px 0 4px;
}
.side_panel_avatar {
    width: 44px;
    height: 44px;
    margin-right: 10px;
    border-radius: 50%;
    object-fit: cover;
    background-color: var(--surface);
}
.side_panel_title {
    font-size: 1.15rem;
    font-weight: 600;
}
.side_panel_intro {
    padding: 2px 4px 0 4px;
    font-size: 0.85rem;
    opacity: 0.85;
}
/* Values are a supporting detail - one step smaller than the page text */
.side_panel_row {
    margin: 0;
    padding: 6px 0;
    border-top: 1px solid var(--border);
    font-size: 0.85rem;
}
.side_panel_row:first-of-type {
    border-top: none;
}
.side_panel_label {
    color: var(--text_muted);
}
.side_panel_value {
    text-align: right;
    word-break: break-word;
}
.side_panel_footer {
    padding: 8px 16px;
    border-top: 1px solid var(--border);
    color: var(--text_subtle);
    font-size: 0.85rem;
    text-align: center;
}
.side_panel_loading {
    padding: 24px;
    text-align: center;
    color: var(--text_muted);
}
/* Phones: the panel takes the whole width */
@media (max-width: 575.98px) {
    .side_panel {
        width: 100%;
    }
}
/*#endregion*/
/*#region Admin list sub-components - the multilanguage labels editor (_MultilanguageLabelsAdminPartial, used
   all over the system) and the custom-field choice list (_CustomFieldsAdminChoiceListPartial). Both are a stack
   of repeated editor rows plus an Add button; the frame groups them so a host form reads as one block per list
   instead of loose rows. Tokens only, so it follows the active theme in light and dark.*/
.mllabels_component,
.choicelist_component {
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background-color: var(--surface_2);
    padding: 10px 12px 12px 12px;
}
/* Column captions of the choice list sit tight above the first row */
.choicelist_head {
    color: var(--text_muted);
    margin-bottom: 2px;
}
/* The last row carries the block's own bottom padding, so drop its margin */
.mllabels_component .cfadmin_label_row:last-of-type,
.choicelist_component .choicelist_row:last-of-type {
    margin-bottom: 0 !important;
}
/*#endregion*/
/*#region Custom field change history - the entry list under a multi-use memo (_CustomFieldsPartial). The memo APPENDS
   what is typed as a new entry, so the list below it is the record so far, newest first.*/
.cf_history {
    margin-top: 8px;
    border-top: 1px solid var(--border);
    padding-top: 6px;
}
.cf_history_head {
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--text_subtle);
    margin-bottom: 4px;
}
.cf_history_list {
    list-style-type: none;
    padding-left: 0;
    margin-bottom: 0;
}
.cf_history_item {
    padding: 5px 0;
}
.cf_history_item + .cf_history_item {
    border-top: 1px solid var(--border);
}
.cf_history_meta {
    font-size: 11px;
    color: var(--text_muted);
}
/* Entry text keeps the line breaks the author typed into the memo, and long unbroken strings wrap instead of
   pushing the form wider */
.cf_history_text {
    font-size: 13px;
    color: var(--text);
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}
/* Entries past the first page - display:none, not visibility, so they take no space while hidden */
.cf_history_hidden {
    display: none;
}
.cf_history_more {
    padding: 0;
    font-size: 12px;
}
/*#endregion*/
/*#region Custom fields preview - the schema rendered as the end user will see it, under the admin grid. Framed and
   tinted so it reads as an illustration of the form rather than part of the editor itself.*/
.cfadmin_preview {
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background-color: var(--surface_2);
}
.cfadmin_preview_head {
    display: block;
    padding: 8px 12px;
    font-size: 11px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--text_subtle);
    text-decoration: none;
}
.cfadmin_preview_head:hover,
.cfadmin_preview_head:focus {
    color: var(--brand);
    text-decoration: none;
}
/* The caret follows the collapsed state of the panel it toggles */
.cfadmin_preview_head.collapsed .fa-caret-down {
    transform: rotate(-90deg);
}
.cfadmin_preview_body {
    padding: 4px 12px 12px 12px;
}
/* The preview is an illustration, not an input surface - make that unmistakable */
.cfadmin_preview_body {
    cursor: default;
}
/*#endregion*/
/*#region Messages - the compose popup of the Messages component (Message/_MessagesPartial). The form body is capped
   to the viewport and scrolls on its own, so the Review / Send row under it stays reachable however many language
   variants (each a full HtmlEditor) the sender adds; the modal overlay blocks page scrolling, so nothing else would
   bring the buttons back into view.*/
.message_edit_body {
    max-height: calc(100vh - 200px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
}
/* The detail popup body (Message/_ShowPartial, styled by the mailbox_message_* classes in Mailbox.css) - a long body
   scrolls inside the popup the same way */
.message_detail {
    max-height: calc(100vh - 160px);
    overflow-y: auto;
    overflow-x: hidden;
    padding-right: 4px;
}
/*#endregion*/
/*#region Attachments - the shared attachments component (_AttachmentsPartial): action icons, content type icon and the
   lock badge of the files / links grids*/
.attachments_action {
    color: var(--text_muted);
    cursor: pointer;
}
.attachments_action:hover,
.attachments_action:focus-visible {
    color: var(--brand);
    text-decoration: none;
}
.attachments_icon {
    color: var(--brand);
    font-size: 1.1em;
}
/* A span, not the cell: the grid's row rule overrides a colour set on the td itself */
.attachments_lock {
    color: var(--warning);
    white-space: normal;
    overflow-wrap: anywhere;
}
/* Rename dialog: the base name editor with the kept extension right next to it */
.attachments_rename {
    display: flex;
    align-items: center;
    gap: 4px;
}
.attachments_rename_ext {
    color: var(--text_muted);
    white-space: nowrap;
}
.attachments_link_buttons {
    display: flex;
    justify-content: flex-end;
    gap: 4px;
    margin-top: 3px;
}
/*#endregion*/
/* SiteDevExpress.css - all DevExpress (Office365) styling in one place.
   Extracted from Site.css (ticket 0001180). Uses the design tokens defined on :root in
   Site.css, so this file must be bundled together with (and after) Site.css. */

/*#region DevExpress*/
/* DEVEXPRESS Customizations*/
.dxeCaptionCell_Office365.dxeCLTSys, .dxeCaptionCell_Office365.dxeCLBSys {
    padding: 2px !important;
    font-size: 1rem;
}

.dxeEditArea_Office365, .dxeEditAreaSys {
    font-size: 1rem !important;
}

.dxeRoot_Office365 {
    margin-bottom: 10px;
}

/* GridView row highlight on Hover*/
.dxgvDataRowHover_Office365, .dxgvSelectedRow_Office365 {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
    cursor: pointer;
}

/* TreeList row highlight on Hover */
.TreeListWithHotTrack tr[class*="dxgvDataRow"]:hover,
.TreeListWithHotTrack tr[class*="dxtlNode"]:hover {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
    cursor: pointer;
}
.TreeListWithHotTrack [class*="dxtlFocusedNode"],
.TreeListWithHotTrack [class*="dxtlSelectedNode"] {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
}

/* XtraReport "Add New Datasource" button */
.dx-ltr.dx-editors .dxrd-collectioneditor-action {
    float: right;
    display: none !important;
}

/* GridView row styles */
/* TreeList data rows (dxtlNode) are painted a FIXED white at the <tr> level by the Office365
   theme; our cells are transparent, so that white showed through and made the dark-theme rows a
   bright bar with unreadable light text. Reset the row background to transparent so the control's
   --bg shows through, mirroring the grid's clean look. Placed BEFORE the .row_* fills below so a
   status/role row that sets its own background still wins (equal specificity -> later rule wins). */
.dxtlNode_Office365,
.dxtlAltNode_Office365 {
    background-color: transparent !important;
}
/* Row status = a coloured LEFT STRIPE on the first cell (not a full-row tint). Drawn as a
   background-image gradient 3px wide and shorter than the row (10px shorter, split top+bottom)
   so two adjacent differently-coloured stripes read as separate, not one connected bar. The
   status text is shown by the pill in the status column, so the row keeps normal text.
   Uses the DIRECT-CHILD combinator (> td:first-child): a descendant selector would also match the
   first cell of any NESTED table (e.g. the inline edit form rendered inside the row in
   EditFormAndDisplayNode mode), leaking the stripe onto the edit-form fields. */
.row_new > td:first-child {
    background-image: linear-gradient(var(--info), var(--info)) !important;
}
/* Valid = the normal/default status: keep the stripe slot but paint it the page background
   so it's invisible (avoids a coloured bar on every ordinary row). */
.row_valid > td:first-child {
    background-image: linear-gradient(var(--bg), var(--bg)) !important;
}
.row_approved > td:first-child,
.row_processok > td:first-child {
    background-image: linear-gradient(var(--success), var(--success)) !important;
}
.row_declined > td:first-child,
.row_locked > td:first-child {
    background-image: linear-gradient(var(--warning), var(--warning)) !important;
}
.row_inprocess > td:first-child {
    background-image: linear-gradient(var(--accent), var(--accent)) !important;
}
.row_error > td:first-child,
.row_processfailed > td:first-child {
    background-image: linear-gradient(var(--danger), var(--danger)) !important;
}
.row_disabled > td:first-child {
    background-image: linear-gradient(var(--text_subtle), var(--text_subtle)) !important;
}
/* role-based left stripe (TreeList agendas that mark elevated-privilege rows, e.g. MenuConfig):
   same stripe mechanism as the status rows, replacing a former full-row green/red tint. */
.row_role_superadmin > td:first-child {
    background-image: linear-gradient(var(--danger), var(--danger)) !important;
}
.row_role_administrator > td:first-child {
    background-image: linear-gradient(var(--success), var(--success)) !important;
}
/* Study results: the stripe means "needs attention", same as everywhere else - red when the lesson
   was failed, amber while it is not finished yet. A lesson that is completed and passed gets NO
   marking at all: the outcome is already stated by the status pill, and marking every finished row
   buried the ones with work left (the same reasoning as completed tasks, ticket 0001191). */
.row_AULFailed > td:first-child {
    background-image: linear-gradient(var(--danger), var(--danger)) !important;
}
.row_AULOpen > td:first-child {
    background-image: linear-gradient(var(--warning), var(--warning)) !important;
}
.row_new > td:first-child,
.row_valid > td:first-child,
.row_approved > td:first-child,
.row_declined > td:first-child,
.row_inprocess > td:first-child,
.row_processok > td:first-child,
.row_error > td:first-child,
.row_processfailed > td:first-child,
.row_locked > td:first-child,
.row_disabled > td:first-child,
.row_role_superadmin > td:first-child,
.row_role_administrator > td:first-child,
.row_AULFailed > td:first-child,
.row_AULOpen > td:first-child {
    background-repeat: no-repeat !important;
    background-position: left center !important;
    background-size: 3px calc(100% - 10px) !important;
}
.row_disabled {
    color: var(--text_subtle) !important;
    font-style: italic;
}
.row_yellow {
    background-color: var(--tint_yellow) !important;
}

/* SlideImageGalerry ImageArea*/
.dxisControl > .dxis-passePartout {
    background-color: transparent !important;
}

/* Div style for icons at dropdown, combobox, etc... */
.dropdown_lookup_icons {
    align-self: center;
    padding-top: 16px;
}

.icon_cursor_pointer{
    cursor: pointer;
}

/* User comments */
.UserCommentsPicture {
    width: 75px;
    height: 75px;
    border-radius: 50%;
}

.CommentTreeList .dxtlDataTable {
    border: none !important;
}

.CommentTreeList .dxtlPagerBottomPanel_Office365 {
    border: none !important;
}

.Comment_private {
    border-left-style:solid;
    border-left-color: var(--warning);
}

.Comment_disabled {
    border-left-style: solid;
    border-left-color: var(--border_strong);
}

/* --- editor caption wrap (opt-in .dxe_caption_wrap) - merged in from its own region --- */
/* Opt-in: add class "dxe_caption_wrap" to a container to let the DevExpress editor captions inside it wrap
   instead of overflowing their (often narrow) columns (ticket 0001165 #3). Scoped to that container, so no other page is affected.
   Rendered caption classes carry a theme suffix (dxeCaptionCell_Office365, dxeCaption_Office365), so match the stem in the class list. */
.dxe_caption_wrap td[class*="dxeCaptionCell"] {
    white-space: normal !important;
}
/* Caption text on the label stays inline so the required-mark "*" keeps attached to the text instead of wrapping to its own line */
.dxe_caption_wrap label[class*="dxeCaption"] {
    display: inline !important;
    white-space: normal !important;
}

/* DevExpress items TreeList customization for Quotations a Orders*/
.cell_padding_right {
    padding-right: 10px;
}

/* UPDATE button */
body.tl-batch-has-changes
[id*="DXCTMenu1_DXI0_"] .dxm-content {
    background-color: var(--success) !important;
    border: 2px solid var(--border_strong) !important;
    padding: 6px 14px !important;
}
/* UPDATE text */
body.tl-batch-has-changes
[id*="DXCTMenu1_DXI0_"] .dxm-contentText {
    color: var(--surface) !important;
    font-weight: 700;
}
/*#endregion*/

/*#region DevExpress theme (ticket 0001180)*/
/* --- DevExpress (Office365) theme, driven by our tokens --- */
/* Two layers, both verified against the live DOM (ticket 0001180):
   (1) map DevExpress' own --dx-* variables (some components read them);
   (2) explicit class overrides for the surfaces the Office365 BUILD paints with FIXED
       class colors - editors, grids, buttons, toolbars, popups, pager - which the
       variables do NOT drive, so without these they stay white/orange in dark mode.
   "html:root" outranks DevExpress' own ":root" so (1) wins regardless of load order.
   LIMITATION: sprite-based bits (checkbox tick, some grid icons) are baked orange in the
   theme's DXR.axd images and cannot be recolored from CSS - they need a different
   DevExpress theme or replacement sprite assets. */
html:root {
    --dx-color-main-bg: var(--surface);
    --dx-component-color-bg: var(--surface);
    --dx-color-text: var(--text);
    --dx-color-link: var(--brand);
    --dx-color-primary: var(--brand);
    --dx-color-success: var(--success);
    --dx-color-danger: var(--danger);
    --dx-color-warning: var(--warning);
    --dx-color-border: var(--border);
    --dx-color-separator: var(--border);
    --dx-color-icon: var(--text_muted);
    --dx-color-spin-icon: var(--text_muted);
    --dx-color-shadow: rgba(0, 0, 0, .28);
    --dx-texteditor-color-text: var(--text);
    --dx-texteditor-color-label: var(--text_muted);
}
/* editors (text boxes, memos, combo/date button-edit roots, token boxes) */
.dxeEditArea_Office365,
.dxeMemoEditArea_Office365,
.dxeButtonEdit_Office365,
.dxeTextBox_Office365,
.dxeMemo_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border_strong) !important;
}
.dxeEditArea_Office365::placeholder {
    color: var(--text_subtle) !important;
}
/* NullText (combo / text box / memo / date / spin placeholder): DevExpress does not use a native placeholder - it writes
   the text INTO the input and adds dxeNullText_Office365 (on the input or on the editor around it). The editor rule above
   forces var(--text) on the input, which made the placeholder look like a real value; two classes outrank it, so an empty
   field reads as empty in every theme. Covers both placements. */
.dxeEditArea_Office365.dxeNullText_Office365,
.dxeMemoEditArea_Office365.dxeNullText_Office365,
.dxeNullText_Office365 .dxeEditArea_Office365,
.dxeNullText_Office365 .dxeMemoEditArea_Office365,
.dxeNullText_Office365 input,
.dxeNullText_Office365 textarea {
    color: var(--text_subtle) !important;
}
/* editor captions / field labels (were a fixed #333 - too dark to read in dark mode) */
.dxeCaption_Office365 {
    color: var(--text) !important;
}
/* small rounded corners on editors, their inner buttons and DevExpress buttons */
.dxeTextBox_Office365,
.dxeButtonEdit_Office365,
.dxeMemo_Office365,
.dxeEditArea_Office365,
.dxeListBox_Office365,
.dxbButton_Office365,
.dxeButtonEditButton_Office365,
.dxeSpinIncButton_Office365,
.dxeSpinDecButton_Office365 {
    border-radius: var(--radius_sm) !important;
}
/* the memo's inner textarea has SQUARE corners and its own fill, so it poked over the rounded
   memo-table corners (memo looked corner-less). Clip the memo to its rounded shape (same trick as
   the pager combo). */
.dxeMemo_Office365 {
    overflow: hidden !important;
}
/* focus indicator: the Office365 theme puts an ORANGE border on .dxeFocused (seen as the
   orange outline round a focused check-box list / editor) - make it the brand instead. */
.dxeFocused_Office365 {
    border-color: var(--brand) !important;
}
/* read-only / disabled editors: fill the WHOLE editor box uniformly (--field_disabled).
   DevExpress puts dxeReadOnly_Office365 / dxeDisabled_Office365 on the editor ROOT table
   (which also carries the inline background-color:LightGrey). Styling the root + its cells
   + input beats that inline value AND fills the whole box, so the old two-tone (a surface
   input inside a LightGrey table showing through the cell padding) is gone. This is why no
   per-editor code change - swapping the ~527 ReadOnlyStyle.BackColor lines to a CssClass -
   is needed; the class DevExpress already emits is the hook. Covers text boxes, combos,
   memos, spin edits AND the read-only check-box list (dxeCheckBoxList + dxeReadOnly). */
.dxeReadOnly_Office365,
.dxeReadOnly_Office365 td,
.dxeReadOnly_Office365 .dxeEditArea_Office365,
.dxeReadOnly_Office365 input,
.dxeReadOnly_Office365 textarea,
.dxeReadOnly_Office365 [class*="dxeButtonEditButton"],
.dxeReadOnly_Office365 [class*="dxeSpin"],
.dxeDisabled_Office365,
.dxeDisabled_Office365 td,
.dxeDisabled_Office365 .dxeEditArea_Office365,
.dxeDisabled_Office365 input,
.dxeDisabled_Office365 textarea,
.dxeDisabled_Office365 [class*="dxeButtonEditButton"],
.dxeDisabled_Office365 [class*="dxeSpin"] {
    background-color: var(--field_disabled) !important;
    color: var(--text_muted) !important;
    border-color: var(--border_strong) !important;
}
/* read-only CHECK BOX / RADIO glyph. The rule above fills the editor box, but the tick / dot
   itself is a sprite span and DevExpress swaps it for the greyed "...Disabled" sprite ONLY on
   the disabled state - a ReadOnly check box, radio-button list or check-box list therefore
   still paints a fully active-looking control inside the grey box. The glyph is an image, so
   there is no colour token to set; fading it is the theme-neutral equivalent and works in both
   light and dark. The hook is .dxICBReadonlyMarker, which DevExpress puts on every
   non-editable glyph span (single check box: table.dxeReadOnly > td.dxichCellSys > span;
   list: the same span inside each td.dxe item cell).
   IMPORTANT - it is scoped under .dxeReadOnly_Office365 / .dxeDisabled_Office365 on purpose:
   grid check-box COLUMNS render their browse cells with the very same marker but WITHOUT any
   dxeReadOnly ancestor (span sits straight in td.dxgv), and those must keep full strength. */
.dxeReadOnly_Office365 .dxICBReadonlyMarker,
.dxeDisabled_Office365 .dxICBReadonlyMarker {
    opacity: 0.55;
}
.dxeReadOnly_Office365 .dxICBReadonlyMarker,
.dxeReadOnly_Office365 td.dxichCellSys,
.dxeReadOnly_Office365 td.dxichTextCellSys,
.dxeReadOnly_Office365 td.dxichTextCellSys label {
    cursor: default !important;
}
/* combo / list dropdowns + popups.
   .dxpc-mainDiv is the OUTER body wrapper shared by every DevExpress popup (combo + date drop-downs,
   the grid header-filter box, PopupControl) and .dxpc-footer is its button band. The Office365 build
   paints BOTH a fixed white with black text, and the wrapper is taller than the themed .dxpc-content
   inside it - so in dark mode a white frame showed around the content and the whole OK/Cancel band
   stayed white. They must be themed together with the content. (ticket 0001191) */
.dxeListBox_Office365,
.dxeListBoxItem_Office365,
.dxpc-content,
.dxpc-header,
.dxpc-mainDiv,
.dxpc-footer,
.dxpcDrag_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxpc-mainDiv {
    border-radius: var(--radius) !important;
    box-shadow: var(--shadow) !important;
}
.dxeListBoxItemSelected_Office365,
.dxeListBoxItemHover_Office365 {
    background-color: color-mix(in srgb, var(--brand) 16%, var(--surface)) !important;
    color: var(--text) !important;
}
/* the "Enter text to filter..." row of the grid header-filter list is a fixed #eee band */
.dxeListBoxFilter_Office365,
.dxeListBoxSelectAll_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/* "Loading..." panels + their veil (grid callbacks, the header-filter box, callback panels).
   The panel is a fixed white card with #666 text and the veil is white at .7 opacity, so every
   callback flashed a bright block in dark mode. The spinner is CSS-DRAWN (a rotating ring made of
   border colours), not a sprite, so it can simply take the tokens: a --border track with a --brand
   arc, instead of the theme's grey/orange. Attribute selectors so this covers every control's
   variant (dxgv / dxpc / dxca / dxiz / dxlp ...) in one go. */
[class*="LoadingPanel_Office365"] {
    background-color: var(--surface) !important;
    color: var(--text_muted) !important;
}
[class*="LoadingDiv_Office365"] {
    background-color: var(--bg) !important;
}
.dxlp-loadingImage,
.dxeImage_Office365.dxe-loadingImage {
    border-color: var(--border) var(--brand) var(--brand) !important;
}
/* grid + tree list: TRANSPARENT (follows the page --bg) with NO outer border and NO
   vertical column lines - just a light horizontal separator between rows and a stronger
   line under the header. Matches the clean, borderless list look of the design prototype.
   Status rows still set their own row background, so they tint on top of the page colour. */
.dxgvControl_Office365,
.dxgvTable_Office365,
.dxtlControl_Office365,
.dxtlDataTable {
    background-color: var(--bg) !important;
    color: var(--text) !important;
    border-color: transparent !important;
}
.dxgvHeader_Office365,
.dxtlHeader_Office365 {
    background-color: var(--bg) !important;
    color: var(--text_muted) !important;
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--border_strong) !important;
}
.dxgvDataRow_Office365 td,
.dxtlNode_Office365 td {
    color: var(--text) !important;
    background-color: transparent !important;
    border-top: 0 !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 1px solid var(--border) !important;
}
.dxgvGroupRow_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
}
/* total-summary footer + group-footer (the "Sum=..." total line under the data). The Office365
   theme paints it a FIXED light grey (#f4f4f4) with grey text, so in dark mode it showed as a
   bright bar and in light mode it did not follow the tokens. Re-skin it as a subtle summary
   card (--surface_2) with a stronger top separator and bold value cells. */
.dxgvFooter_Office365,
.dxgvGroupFooter_Office365,
.dxgvGroupFooterRow_Office365,
.dxtlFooter_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
}
.dxgvFooter_Office365 td,
.dxgvGroupFooter_Office365 td,
.dxgvGroupFooterRow_Office365 td,
.dxtlFooter_Office365 td {
    background-color: transparent !important;
    color: var(--text) !important;
    font-weight: 600 !important;
    border-top: 1px solid var(--border_strong) !important;
    border-left: 0 !important;
    border-right: 0 !important;
    border-bottom: 0 !important;
}
/* filter row (grid + tree list): the Office365 theme paints it a FIXED light grey (#f4f4f4), so
   it stayed a bright bar in dark mode and ignored the tokens in light. Follow the page bg. */
.dxgvFilterRow_Office365,
.dxgvFilterRow_Office365 td,
.dxgvFilterCell_Office365,
.dxtlFilterRow_Office365,
.dxtlFilterRow_Office365 td,
.dxtlFilterCell_Office365 {
    background-color: var(--bg) !important;
    border-color: var(--border) !important;
}
/* inline EDIT FORM (TreeList EditFormAndDisplayNode, and grid edit form) renders on a FIXED white
   panel, so on a dark theme its light-coloured field captions were invisible. Theme the form
   surface so the captions read normally. */
.dxtlEditFormDisplayNode_Office365,
.dxtlEditFormDisplayNode_Office365 > td,
.dxtlEditForm_Office365,
.dxtlEditFormEditCell_Office365,
.dxgvEditFormDisplayRow_Office365,
.dxgvEditFormDisplayRow_Office365 > td,
.dxgvEditForm_Office365,
.dxgvEditForm_Office365 > td,
.dxgvEditFormEditCell_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/* validated editors in an edit form wrap in a "dynamic" root table that DevExpress renders at an
   inline width:150%, so those editors (e.g. the required "Menu target URL" / "Description") spilled
   PAST their edit cell and their right border landed under the next column, looking border-less on
   the right. Cap the dynamic root table to its cell so each editor fits and shows all four borders. */
.dxtlEditFormEditCell_Office365 .dxeValidDynEditorTable,
.dxtlEditFormEditCell_Office365 table.dxeRoot_Office365,
.dxgvEditFormEditCell_Office365 .dxeValidDynEditorTable,
.dxgvEditFormEditCell_Office365 table.dxeRoot_Office365 {
    width: 100% !important;
}
/* TreeList indent cells carry the node's fixed white background; behind the edit form (which spans
   the full node height) that showed as a white strip down the left. Indent cells never need their
   own fill (the status/role stripe is a background-IMAGE, unaffected), so clear it. */
.dxtlIndent_Office365 {
    background-color: transparent !important;
}
.dxgvPagerBottomPanel_Office365,
.dxtlPagerBottomPanel_Office365 {
    background-color: var(--bg) !important;
    border-color: transparent !important;
}
/* pager numbers (the current page was painted the theme orange) */
.dxp-num {
    color: var(--brand) !important;
}
.dxp-num.dxp-current {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}
/* pager page-size selector (dxp-comboBox / dxp-dropDownButton) - the theme paints these a
   fixed white, so they stayed a white box on the dark pager. Theme them like an editor and
   round the outer corners (value box rounds on the left, arrow button on the right). */
.dxp-comboBox,
.dxp-dropDownButton {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border_strong) !important;
}
/* .dxp-comboBox is the OUTER bordered box that holds the value input AND the arrow button
   inside it - so round all four of ITS corners and clip the inner arrow to the rounded shape
   (rounding only the left, or the inner button, left the right corners square). */
.dxp-comboBox {
    border-radius: var(--radius_sm) !important;
    overflow: hidden !important;
}
/* row hover + selection tint (replaces the old #bce4e4) */
.dxgvDataRowHover_Office365,
.dxgvSelectedRow_Office365,
.TreeListWithHotTrack tr[class*="dxgvDataRow"]:hover,
.TreeListWithHotTrack tr[class*="dxtlNode"]:hover,
.TreeListWithHotTrack [class*="dxtlFocusedNode"],
.TreeListWithHotTrack [class*="dxtlSelectedNode"] {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
}
/* standalone ASPxButton (the Office365 build paints these the theme orange) -> brand */
.dxbButton_Office365 {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
    border-color: var(--brand) !important;
}
.dxbButton_Office365:hover {
    background-color: var(--brand_hover) !important;
}
/* ...but grid COMMAND-column buttons (the edit/delete actions in the command column) also carry
   dxbButton_Office365, so they wrongly picked up the brand fill. Drop the box; and when they are
   TEXT commands (Edit/Delete, not icons) the theme left the text a near-black link colour that was
   invisible on the dark surface - so colour them as brand-text links (icons have no text, unaffected). */
.dxbButton_Office365.dxgvCommandColumnItem_Office365,
.dxgvCommandColumnItem_Office365 {
    background-color: transparent !important;
    border-color: transparent !important;
    color: var(--brand) !important;
}
.dxbButton_Office365.dxgvCommandColumnItem_Office365:hover,
.dxgvCommandColumnItem_Office365:hover {
    color: var(--brand_hover) !important;
    text-decoration: underline !important;
}
/* TreeList command-column buttons are TEXT (Edit/New/Delete) not icons, and the header carries
   the "New" button - both also carry dxbButton_Office365 and picked up the brand fill (a blue
   box). Render them as lightweight brand-text links instead. */
.dxtlCommandCell_Office365 .dxbButton_Office365,
.dxtlHeader_Office365 .dxbButton_Office365 {
    background-color: transparent !important;
    border-color: transparent !important;
    color: var(--brand) !important;
    box-shadow: none !important;
}
.dxtlCommandCell_Office365 .dxbButton_Office365:hover,
.dxtlHeader_Office365 .dxbButton_Office365:hover {
    background-color: transparent !important;
    color: var(--brand_hover) !important;
    text-decoration: underline !important;
}
/* ...EXCEPT the TreeList inline EDIT FORM's commit buttons (Update/Cancel): those are also command
   buttons, but the grid's edit form renders them as real filled buttons and that look is preferred.
   Give the edit-form command buttons the brand FILL so the two edit forms match (row Edit/New/Delete
   stay links; this selector is more specific so it wins). */
.dxtlEditForm_Office365 .dxtlCommandCell_Office365 .dxbButton_Office365 {
    background-color: var(--brand) !important;
    border-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}
.dxtlEditForm_Office365 .dxtlCommandCell_Office365 .dxbButton_Office365:hover {
    background-color: var(--brand_hover) !important;
    color: var(--brand_fg) !important;
    text-decoration: none !important;
}
/* dropdown menu popups (ribbon split-button drop-downs like "Manage", context menus) */
.dxmLite_Office365,
.dxm-popup,
.dxm-popupMain {
    background-color: var(--surface) !important;
    border-color: var(--border) !important;
}
/* menu items: enabled = clear text, disabled = clearly muted (the theme's #666 vs #bbb was
   too close to tell which item is enabled); hovered/selected item was the theme orange. */
.dxm-popup .dxm-item,
.dxm-popup .dxm-item .dxm-content {
    color: var(--text) !important;
}
.dxm-popup .dxm-item.dxm-disabled,
.dxm-popup .dxm-item.dxm-disabled .dxm-content {
    color: var(--text_subtle) !important;
}
.dxm-popup .dxm-item.dxm-selected,
.dxm-popup .dxm-item.dxm-hovered {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
    color: var(--text) !important;
}
/* grid / tree list command toolbar band (Options / Export / New / search) -> the PAGE
   background so it blends into the page. (Not transparent - transparent revealed the white
   grid surface behind it and read as a box; matching --bg makes it seamless.) */
.dxctToolbar_Office365,
.dxgvCTTop,
.dxtlCTTop {
    background-color: var(--bg) !important;
    border-color: transparent !important;
}
/* ...but the toolbar's own buttons (New / Options / Export / Load ...) DO get a surface
   fill + themed border so they read as buttons on the page-coloured band (their default
   light #dfdfdf border showed wrong on the dark ground). */
.dxctToolbar_Office365 .dxm-item,
.dxgvCTTop .dxm-item,
.dxtlCTTop .dxm-item {
    background-color: var(--surface) !important;
    border-color: var(--border_strong) !important;
    border-radius: var(--radius_sm) !important;
}
.dxmLite_Office365 .dxm-content,
.dxctToolbar_Office365 .dxm-content {
    color: var(--text) !important;
}
.dxmLite_Office365 .dxm-item.dxm-hovered,
.dxctToolbar_Office365 .dxm-item.dxm-hovered {
    background-color: var(--surface_3) !important;
}
/* ribbon toolbar (ASPxRibbon: Save / Cancel / Versions history / Manage / ...). The page
   action toolbars are RIBBONS (dxr-* classes), not the menu toolbar above - the visible
   band is .dxr-tabContent (was the theme's #fafafa). */
.dxrControl_Office365 {
    background-color: var(--surface) !important;
    border-color: var(--border) !important;
}
.dxrControl_Office365 .dxr-tabContent {
    background-color: var(--surface_2) !important;
    border-color: var(--border) !important;
}
.dxrControl_Office365 .dxr-item.dxr-buttonItem,
.dxrControl_Office365 .dxr-lblText {
    color: var(--text) !important;
}
.dxrControl_Office365 .dxr-itemDisabled,
.dxrControl_Office365 .dxr-itemDisabled .dxr-lblText {
    color: var(--text_subtle) !important;
}
.dxrControl_Office365 .dxr-item.dxr-buttonItem:hover,
.dxrControl_Office365 .dxr-itemHover {
    background-color: color-mix(in srgb, var(--brand) 14%, var(--surface)) !important;
}
/* spin + combo/date edit buttons (up/down, dropdown, clear). TRANSPARENT so only the icon
   shows on the editor - a filled box read as a "strange coloured box" next to the arrow
   (the clear-button cell stays 35px wide even when its icon is hidden). Just a hover tint. */
.dxeButtonEditButton_Office365,
.dxeSpinIncButton_Office365,
.dxeSpinDecButton_Office365 {
    background-color: transparent !important;
    color: var(--text_muted) !important;
    border-color: transparent !important;
}
/* Hovered editor button: the Office365 theme fills it with the theme ORANGE and swaps the icon
   sprite to its WHITE variant - and it does that through its own dxe*ButtonHover_Office365 CLASS,
   not only through :hover, so both have to be overridden. The fill must stay a SOLID, DARK-ENOUGH
   colour: the hover sprite really is white, so a light tint (the former --surface_3) made the
   drop-down arrow and the spin arrows vanish on hover. --brand keeps DevExpress' own
   "coloured fill + white glyph" intent, just in our colour. */
.dxeButtonEditButton_Office365:hover,
.dxeSpinIncButton_Office365:hover,
.dxeSpinDecButton_Office365:hover,
.dxeButtonEditButtonHover_Office365,
.dxeSpinIncButtonHover_Office365,
.dxeSpinDecButtonHover_Office365,
.dxeSpinLargeIncButtonHover_Office365,
.dxeSpinLargeDecButtonHover_Office365 {
    background-color: var(--brand) !important;
}
/* ...EXCEPT the CLEAR button. It is an overlay-style round glyph sitting INSIDE the text box, so a
   filled square behind it reads as a stray coloured block - it stays transparent. Its hover sprite
   is the orange filled circle, which no background change can fix, so de-saturate it: grayscale
   turns the orange circle into a neutral grey one, a shade darker than the resting icon, which is
   exactly the feedback the hover needs. Done with a filter rather than by pinning the sprite's
   background-position, so a DevExpress upgrade that reshuffles the sprite sheet cannot break it. */
.dxeButtonEditButton_Office365.dxeButtonEditClearButton_Office365:hover,
.dxeButtonEditButtonHover_Office365.dxeButtonEditClearButton_Office365 {
    background-color: transparent !important;
}
.dxeButtonEditButtonHover_Office365 .dxEditors_edtClear_Office365 {
    filter: grayscale(1) !important;
}
/* Checkbox & radio ticks are token-DRAWN, not the DevExpress orange sprite recoloured by a filter (the sprite baked in
   the Office365 orange accent could only be approximated with hue-rotate, and never followed the brand token). The
   sprite is hidden; the box + border come from tokens and the checkmark / radio dot from --brand + --brand_fg, so they
   follow ANY theme (cobalt, orange, ...) in light AND dark with real colours - no filter tricks. */
[class*="dxICheckBox_Office365"],
[class*="dxWeb_edtCheckBox"],
[class*="dxeIRadioButton"],
[class*="dxEditors_edtRadioButton"] {
    background-image: none !important;
    background-color: var(--surface) !important;
    border: 1px solid var(--border_strong) !important;
    box-sizing: border-box !important;
    position: relative !important;
}
[class*="dxICheckBox_Office365"],
[class*="dxWeb_edtCheckBox"] {
    border-radius: 3px !important;
}
[class*="dxeIRadioButton"],
[class*="dxEditors_edtRadioButton"] {
    border-radius: 50% !important;
}
/* checked checkbox = brand-filled box + a checkmark drawn with a rotated border in the on-brand colour */
[class*="dxWeb_edtCheckBoxChecked"] {
    background-color: var(--brand) !important;
    border-color: var(--brand) !important;
}
[class*="dxWeb_edtCheckBoxChecked"]::after {
    content: "";
    position: absolute;
    left: 4px;
    top: 1px;
    width: 4px;
    height: 8px;
    border: solid var(--brand_fg);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
    box-sizing: border-box;
    pointer-events: none;
}
/* selected radio = a brand dot centred in the circle. Two independent rules so neither can invalidate the other:
   (1) the DevExpress "...Checked" class (all its known radio variants), and (2) a class-name-independent :has() that
   detects the actual checked input - robust even if a variant names its checked class differently. */
[class*="dxeIRadioButtonChecked"],
[class*="dxEditors_edtRadioButtonChecked"],
[class*="dxWeb_edtRadioButtonChecked"] {
    border-color: var(--brand) !important;
}
[class*="dxeIRadioButtonChecked"]::after,
[class*="dxEditors_edtRadioButtonChecked"]::after,
[class*="dxWeb_edtRadioButtonChecked"]::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    border-radius: 50%;
    background: var(--brand);
    pointer-events: none;
}
[class*="dxeIRadioButton"]:has(input:checked),
[class*="dxEditors_edtRadioButton"]:has(input:checked) {
    border-color: var(--brand) !important;
}
[class*="dxeIRadioButton"]:has(input:checked)::after,
[class*="dxEditors_edtRadioButton"]:has(input:checked)::after {
    content: "";
    position: absolute;
    left: 50%;
    top: 50%;
    width: 8px;
    height: 8px;
    margin: -4px 0 0 -4px;
    border-radius: 50%;
    background: var(--brand);
    pointer-events: none;
}
/* checkbox / radio LIST containers: lighter border + rounded corners */
.dxeCheckBoxList_Office365,
.dxeRadioButtonList_Office365 {
    border-color: var(--border) !important;
    border-radius: var(--radius_sm) !important;
}
/*#endregion*/
/*#region Grid customization dialog (view chooser: Sorting / Grouping / Filtering / Column Chooser)*/
/* The grid customization dialog (opened from the grid "Columns"/eye toolbar button) ships fully in the
   Office365 orange accent. Theme it through tokens: brand header, surface content, themed item bars.
   Shared - every grid's customization dialog picks this up. */
.dxgvCustDialog_Office365,
.dxgvCustDialogContent_Office365,
.dxgvCustDialogListArea_Office365,
.dxgvCustDialogDragArea_Office365,
.dxgvCustDialogSortingPage_Office365,
.dxgvCustDialogGroupingPage_Office365,
.dxgvCustDialogFilteringPage_Office365,
.dxgvCustDialogColumnChooserPage_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
}
/* header bar -> brand (was orange); kill the Office365 gradient */
.dxgvCustDialogHeader_Office365 {
    background-color: var(--brand) !important;
    background-image: none !important;
    color: var(--brand_fg) !important;
}
.dxgvCustDialogHeader_Office365 a,
.dxgvCustDialogHeader_Office365 span {
    color: var(--brand_fg) !important;
}
.dxgvCustDialogHeader_Office365 .dxbButton_Office365 {
    background-color: transparent !important;
    background-image: none !important;
}
/* close/apply are DevExpress sprite icons (raster) - recolour to the header foreground so no orange shows */
.dxgvCustDialogHeader_Office365 img {
    filter: brightness(0) invert(1) !important;
}
/* tab-strip scroll-shadow indicators are an orange glow box-shadow -> match the brand header so they blend
   in (these were the two stray "orange bands" flanking the tabs) */
.dxgvCD_TSLS,
.dxgvCD_TSRS {
    box-shadow: 0 0 11px 11px var(--brand) !important;
}
/* draggable column / filter item bars */
.dxgvCustDialogColumnItem_Office365,
.dxgvCustDialogFilterItem_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxgvCustDialogColumnItem_Office365:hover,
.dxgvCustDialogFilterItem_Office365:hover {
    background-color: color-mix(in srgb, var(--brand) 10%, var(--surface)) !important;
}
/* dialog internals (drag area, handle cells, drop indicator, unbound-field area): kill the stray
   light backgrounds/borders that Office365 leaves so nothing reads white on the dark theme */
[class*="dxgvCD_"] {
    border-color: var(--border) !important;
}
.dxgvCD_ColumnChooserPage,
.dxgvCD_DAW,
.dxgvCD_DAETC,
.dxgvCD_LAC,
.dxgvCD_LAIW,
.dxgvCD_UF,
.dxgvCD_UFSC,
.dxgvCD_FR,
.dxgvCD_FRM,
.dxgvCD_CAWP,
.dxgvCD_CAPC {
    background-color: var(--surface) !important;
}
.dxgvCD_CIPA {
    background-color: transparent !important;
}
.dxgvCD_DAEB {
    background-color: var(--surface_2) !important;
}
/* drag-and-drop drop indicator -> brand (was a white block) */
.dxgvCD_DI {
    background-color: var(--brand) !important;
}
/*#endregion*/
/*#region Upload control + progress bars (ticket 0001191)*/
/* The ASPxUploadControl (attachments) was untouched by the theme: a fixed-white text box with a
   fixed #eee "browse" button and square corners, an "Upload" button rendered as bare grey text, a
   hard-coded GREEN drop zone, and a progress bar whose indicator is the theme ORANGE (#f87c1d) on a
   fixed #e0e0e0 track. Verified against the live DOM on /Company/Edit -> Attachments. */
.dxucControl_Office365 {
    color: var(--text) !important;
}
/* the "Drop file(s) here" box + its browse button read as ONE control, so they share the pill and
   only round their outer corners */
/* NOTE there are TWO cells carrying dxucTextBox (the input and the clear-button cell), so only the
   FIRST one may round its left side - rounding both punched a notch between the box and the
   browse button. */
.dxucTextBox_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border_strong) !important;
    border-radius: 0 !important;
}
.dxucTextBox_Office365:first-child {
    border-radius: var(--radius_sm) 0 0 var(--radius_sm) !important;
}
.dxucEditArea_Office365 {
    background-color: transparent !important;
    color: var(--text) !important;
}
.dxucNullText_Office365 {
    color: var(--text_subtle) !important;
}
.dxucBrowseButton_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border_strong) !important;
    border-radius: 0 var(--radius_sm) var(--radius_sm) 0 !important;
}
.dxucBrowseButton_Office365:hover {
    background-color: color-mix(in srgb, var(--brand) 12%, var(--surface_2)) !important;
}
/* The UPLOAD command (a <td> holding an <a>; the per-file "Remove" is a <div>, hence the td scope).
   Dropping a file only stages it - it still has to be confirmed - but the command was an indistinct
   grey link in BOTH states, so nobody noticed the second step. Enabled, it now becomes a real brand
   button that BREATHES (a pulsing ring) until it is pressed; disabled it stays a muted link. */
.dxucButton_Office365 {
    color: var(--brand) !important;
    cursor: pointer !important;
}
td.dxucButton_Office365:not(.dxucButtonDisabled_Office365) > a {
    display: inline-block !important;
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
    font-weight: 600 !important;
    text-decoration: none !important;
    padding: 0.35rem 0.9rem !important;
    border-radius: var(--radius_sm) !important;
    animation: upload_breathe 1.8s ease-in-out infinite;
}
/* the icon is a raster sprite in the theme accent - force it white on the brand fill */
td.dxucButton_Office365:not(.dxucButtonDisabled_Office365) > a img {
    filter: brightness(0) invert(1) !important;
}
@keyframes upload_breathe {
    0% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--brand) 55%, transparent);
    }
    70% {
        box-shadow: 0 0 0 9px color-mix(in srgb, var(--brand) 0%, transparent);
    }
    100% {
        box-shadow: 0 0 0 0 color-mix(in srgb, var(--brand) 0%, transparent);
    }
}
/* users who asked the OS for reduced motion get the emphasis as a STATIC ring instead of a pulse -
   the button must still stand out, it just must not move */
@media (prefers-reduced-motion: reduce) {
    td.dxucButton_Office365:not(.dxucButtonDisabled_Office365) > a {
        animation: none !important;
        box-shadow: 0 0 0 4px color-mix(in srgb, var(--brand) 35%, transparent) !important;
    }
}
.dxucButtonDisabled_Office365 {
    color: var(--text_subtle) !important;
    font-weight: 400 !important;
    cursor: default !important;
}
/* drop-target highlight - was a hard-coded green wash */
.dxucDropZone_Office365 {
    background-color: color-mix(in srgb, var(--brand) 12%, var(--surface)) !important;
    border: 2px dashed var(--brand) !important;
    border-radius: var(--radius) !important;
    color: var(--brand) !important;
}
/* the staged-file list: give each entry a visible row so a dropped file is unmistakably "waiting
   to be uploaded" rather than a faint line of grey text */
.dxucFileListItem_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius_sm) !important;
    padding: 0.25rem 0.5rem !important;
    margin-top: 0.25rem !important;
}
/* progress bars (upload control + standalone ASPxProgressBar): brand fill on a token track */
.dxucProgressBar_Office365,
.dxpbControl_Office365 {
    background-color: var(--surface_3) !important;
    border-color: var(--border) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}
.dxucProgressBarIndicator_Office365,
.dxpbIndicator_Office365 {
    background-color: var(--brand) !important;
    background-image: none !important;
}
/*#endregion*/
/*#region Date picker (DateEdit calendar dropdown) (ticket 0001191)*/
/* The ASPxDateEdit drop-down calendar shipped completely untokenized: the popup body and the
   calendar table were a FIXED white (a bright panel in dark mode), the SELECTED day and both the
   weekend and other-month days were painted the Office365 theme ORANGE (#f87c1d), the week-number
   column a fixed #f1f1f1 and the day-header / footer text a fixed #666. Everything below is the
   same token mapping the rest of this file uses, so every DateEdit in the app follows the theme.
   Verified against the live DOM on /CRM/Contract/Edit ("Valid from"). */
/* The popup BODY (.dxpc-mainDiv, the dxdd-cal variant here) is themed with all the other popup
   wrappers in the "combo / list dropdowns + popups" region above - nothing calendar-specific needed.
   calendar table: OPAQUE surface, not transparent - the table can extend past the popup content
   box, and a transparent table let the page underneath show through that band. */
.dxeCalendar_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/* month/year caption bar (specificity kept above the blanket cell-border rule below, so the
   separator under the caption survives) */
.dxeCalendar_Office365 .dxeCalendarHeader_Office365 {
    background-color: transparent !important;
    color: var(--text) !important;
    border-bottom-color: var(--border) !important;
    font-weight: 600 !important;
}
/* the prev/next month + year arrows are RASTER sprites (dark glyphs) - invert them in dark mode
   so they stay visible on the dark surface. Both signals, so the user's theme toggle wins. */
@media (prefers-color-scheme: dark) {
    :root:not([data-theme="light"]) .dxeCalendarHeader_Office365 img {
        filter: brightness(0) invert(1) !important;
    }
}
:root[data-theme="dark"] .dxeCalendarHeader_Office365 img {
    filter: brightness(0) invert(1) !important;
}
:root[data-theme="light"] .dxeCalendarHeader_Office365 img {
    filter: none !important;
}
/* EVERY day / header / week-number cell carries a 6px SOLID WHITE left border that the theme uses
   purely as a column gutter. On the white Office365 calendar it is invisible; on our dark surface
   it drew a bright white bar down the grid and along its bottom edge. Neutralise the COLOUR only -
   the width stays, so the grid spacing is unchanged. */
.dxeCalendar_Office365 td {
    border-color: transparent !important;
}
/* Sun..Sat header row */
.dxeCalendarDayHeader_Office365 {
    color: var(--text_muted) !important;
}
/* week-number gutter (was a fixed #f1f1f1 band) */
.dxeCalendarWeekNumber_Office365 {
    background-color: transparent !important;
    color: var(--text_subtle) !important;
}
/* the corner + spacer cells of that gutter carry the same fixed #f1f1f1 but have NO class of
   their own, so they can only be reached by "unclassed cell inside the calendar" */
.dxeCalendar_Office365 td:not([class]) {
    background-color: transparent !important;
}
/* ordinary days; weekend is only MUTED, not coloured (it was the theme orange, which read as a
   selection/error marker) */
.dxeCalendarDay_Office365 {
    color: var(--text) !important;
}
.dxeCalendarWeekend_Office365 {
    color: var(--text_muted) !important;
}
/* ...disabled / out-of-range days also carry a near-white FILL (#fcfcfc), which showed as a pale
   band across the bottom of the day grid in dark mode - clear it, keep only the muted text */
.dxeCalendarOtherMonth_Office365,
.dxeCalendarOutOfRange_Office365,
.dxeCalendarDayDisabled_Office365 {
    background-color: transparent !important;
    color: var(--text_subtle) !important;
}
/* today = ringed in the brand, selected = filled with the brand. The ring is an INSET box-shadow,
   not a border: the cells' 6px gutter border is load-bearing for the grid spacing, so replacing it
   would shift the whole month. */
.dxeCalendarToday_Office365 {
    color: var(--brand) !important;
    box-shadow: inset 0 0 0 1px var(--brand) !important;
    font-weight: 600 !important;
}
.dxeCalendarSelected_Office365 {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}
.dxeCalendarHover_Office365 {
    background-color: color-mix(in srgb, var(--brand) 16%, var(--surface)) !important;
    color: var(--text) !important;
}
/* footer band + its Today / Clear buttons */
.dxeCalendarFooter_Office365 {
    background-color: transparent !important;
    color: var(--text_muted) !important;
    border-color: var(--border) !important;
}
.dxeCalendarButton_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius_sm) !important;
}
.dxeCalendarButton_Office365:hover {
    background-color: color-mix(in srgb, var(--brand) 12%, var(--surface_2)) !important;
    border-color: var(--brand) !important;
}
/* fast navigation panel (click the caption -> month/year chooser) */
.dxeCalendarFastNav_Office365,
.dxeCalendarFastNavItemArea_Office365 {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxeCalendarFastNavItem_Office365 {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
    border-radius: var(--radius_sm) !important;
}
.dxeCalendarFastNavItemOtherPeriod_Office365 {
    color: var(--text_subtle) !important;
}
.dxeCalendarFastNavItemHover_Office365 {
    background-color: color-mix(in srgb, var(--brand) 16%, var(--surface)) !important;
    color: var(--text) !important;
}
.dxeCalendarFastNavItemSelected_Office365 {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
    border-color: var(--brand) !important;
}
/* time section of a date-TIME editor (ASPxDateEdit with TimeSectionProperties) */
.dxeTimeEdit_Office365,
.dxeTimeEditCell_Office365 {
    background-color: transparent !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/*#endregion*/

/*#region Scheduler (/Calendar/Events) (ticket 0001191)*/
/* The Office365 build paints the whole scheduler with FIXED colours: white surfaces, #eee headers
   and the theme accent #f87c1d for today / selection / the now-marker. In dark mode the component
   therefore stayed a white block on a dark page. Everything below is the same two-layer treatment
   the grids and the DateEdit calendar already get - surfaces and text on tokens, accent on --brand.
   NOTE: this component is scheduled to be replaced by a custom calendar in ticket 0001192; these
   rules die with it, so they deliberately stay a flat colour pass and change no geometry. */

/* --- frame, toolbar, scroll surfaces --- */
.dxscControl_Office365,
.dxscControlSys {
    background-color: var(--bg) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxscToolbarContainer_Office365 {
    background-color: var(--surface) !important;
    border-color: var(--border) !important;
}
.dxscRendererTable,
.dxscNSR,
.dxscEWR,
.dxscAllDayArea_Office365,
.dxsc-all-day-area {
    background-color: var(--surface) !important;
}
.dxscLeftTopCorner_Office365,
.dxscRightTopCorner_Office365,
.dxsc-leftCornerSys,
.dxsc-rightTopCornerSys {
    background-color: var(--surface) !important;
    border-color: var(--border) !important;
}
.dxscControl_Office365 td,
.dxscControl_Office365 th {
    border-color: var(--border) !important;
}

/* --- column / day headers --- */
.dxscDayHeader_Office365,
.dxscDateHeader_Office365,
.dxsc-day-hr,
.dxsc-date-hr {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/* TODAY - a solid accent block in the stock theme */
.dxscAlternateDateHeader_Office365,
.dxsc-date-altHr {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}
/* the day the user has selected/hovered into: a brand tint, not the accent's peach */
.dxsc-HeaderHighlight {
    background-color: color-mix(in srgb, var(--brand) 18%, var(--surface_2)) !important;
    color: var(--text) !important;
}

/* --- time ruler + cells --- */
.dxscTimeRulerHoursItem_Office365,
.dxscTimeRulerMinuteItem_Office365,
.dxsc-tr-hourItem,
.dxsc-tr-minuteItem {
    background-color: var(--surface) !important;
    color: var(--text_muted) !important;
    border-color: var(--border) !important;
}
/* outside working hours - one step away from the working-hour cells, not a fixed grey */
.dxscTimeCellBody_Office365,
.dxsc-time-cell-body,
.dxsc-tl-cell-body {
    background-color: var(--surface_2) !important;
}
.dxscTimeCell_Office365,
.dxscDateCell_Office365 {
    background-color: transparent !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
/* month view: the day-number strip, the day body and today's strip */
.dxscDateCellHeader_Office365,
.dxsc-date-cell-head {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxscDateCellBody_Office365,
.dxsc-date-cell-body {
    background-color: var(--surface) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxscTodayCellHeader_Office365,
.dxsc-today-cell-head {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}

/* timeline view: its own header classes, same today/other split */
.dxscTimelineDateHeader_Office365,
.dxsc-tl-date-head {
    background-color: var(--surface_2) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxscAlternateTimelineDateHeader_Office365 {
    background-color: var(--brand) !important;
    color: var(--brand_fg) !important;
}
.dxscTimelineCellBody_Office365 {
    background-color: var(--surface_2) !important;
}

/* the layer an appointment's own colour is painted over - white would show through a
   semi-transparent calendar colour and punch a light hole in a dark page */
.dxsc-apt-intermediate-bg {
    background-color: var(--surface) !important;
}
/* Appointment TEXT is deliberately NOT themed here. The fill is the calendar's own colour (data,
   anything from pale cyan to deep purple), so neither a fixed colour nor a theme token is readable
   on all of them - the stock #666 vanished on dark fills, --text vanished on light ones in dark
   mode. The colour is computed from the fill's luminance server-side instead, in
   CalendarHelperStaticClasses.GetReadableTextColor, and applied by AppointmentViewInfoCustomizing
   and by both appointment templates. */

/* --- selection --- */
.dxscSel {
    background-color: var(--brand) !important;
}

/* the time ruler echoes the selected cell's row - same brand tint as the selection itself */
.dxsc-TimeRulerHighlight {
    background-color: color-mix(in srgb, var(--brand) 25%, var(--surface)) !important;
}

/* --- "now" marker: red is the universal convention for the current-time line and stays legible
       over the brand-tinted today column, so it is the one accent NOT mapped to --brand. The dot at
       the line's left end is a baked-orange DXR sprite; a hue rotation is the only way to bring it
       to the same red (it cannot be recoloured directly - see the theming guide). --- */
.dxscTimeMarkerLineH_Office365,
.dxscTimeMarkerLineV_Office365 {
    background-color: var(--danger) !important;
}
.dxscTimeMarker_Office365 {
    filter: hue-rotate(-22deg) saturate(1.5) !important;
}

/* --- view tabs (Full Week / Month) - the checked item is accent-underlined --- */
.dxscControl_Office365 .dxm-item.dxm-checked,
.dxscControl_Office365 .dxm-item.dxm-checked .dxm-content {
    color: var(--brand) !important;
    border-color: var(--brand) !important;
}
.dxscViewNavigatorButton_Office365,
.dxscToolbar_Office365 {
    color: var(--text) !important;
}

/* --- prev/next round buttons: baked-orange DXR sprites that cannot be recoloured from CSS
       (see "DevExpress sprite icons" in the theming guide). Desaturate them into a neutral
       control instead of leaving an orange disc floating over the grid. --- */
.dxscNavigationButton_Office365 img {
    filter: grayscale(1) opacity(0.55) !important;
}
.dxscNavigationButton_Office365:hover img {
    filter: grayscale(1) opacity(0.9) !important;
}
.dxscNavigationDisabled_Office365 img {
    filter: grayscale(1) opacity(0.25) !important;
}

/* --- tooltip / error info --- */
.dxsc-dat-header,
.dxsc-dat-middle,
.dxsc-dat-bottom,
.dxsc-dat-callout {
    background-color: var(--surface) !important;
    color: var(--text) !important;
}
/* the appointment tooltip (click on an event) is a dark card in the stock theme: its date / subject / resource
   labels are baked white, which vanish on the themed surface - one bordered card with themed text instead */
.dxsc-dat-container {
    border: 1px solid var(--border) !important;
    border-radius: var(--radius) !important;
    box-shadow: var(--shadow_strong) !important;
    overflow: hidden;
}
.dxsc-dat-callout {
    border-color: var(--border) !important;
}
.dxsc-detailed-apt-tooltip .dxsc-dat-header .dxeBase_Office365,
.dxsc-detailed-apt-tooltip .dxsc-dat-resource-container .dxeBase_Office365 {
    color: var(--text_muted) !important;
}
.dxsc-detailed-apt-tooltip .dxsc-dat-middle > .dxeBase_Office365 {
    color: var(--text) !important;
    font-weight: 600;
}
/* footer: separated from the text, the two actions as light buttons with a gap (not two glued primary blocks) */
.dxsc-dat-bottom {
    border-top: 1px solid var(--border) !important;
    padding: 6px !important;
}
.dxsc-dat-buttons-container {
    display: flex;
    gap: 6px;
}
.dxsc-dat-buttons-container .dxbButton_Office365 {
    flex: 1 1 0;
    background-color: var(--surface_2) !important;
    color: var(--brand) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--radius_sm) !important;
    box-shadow: none !important;
}
.dxsc-dat-buttons-container .dxbButton_Office365:hover {
    background-color: color-mix(in srgb, var(--brand) 10%, var(--surface)) !important;
}
.dxsc-dat-buttons-container .dxbButton_Office365 .dx-vam {
    color: inherit !important;
}
/* the second button is Delete (~, not +: each button is followed by its init SCRIPT element) */
.dxsc-dat-buttons-container .dxbButton_Office365 ~ .dxbButton_Office365 {
    color: var(--danger) !important;
}
.dxsc-dat-buttons-container .dxbButton_Office365 ~ .dxbButton_Office365:hover {
    background-color: var(--danger_bg) !important;
}
.dxscToolTipSquaredCorners_Office365,
.dxscToolTipRoundedCornersTopSide_Office365,
.dxscToolTipRoundedCornersBottomSide_Office365 {
    background-color: var(--surface_3) !important;
    color: var(--text) !important;
    border-color: var(--border) !important;
}
.dxscErrorInfo_Office365 {
    background-color: var(--danger_bg) !important;
    color: var(--danger) !important;
    border-color: var(--danger) !important;
}
/*#endregion*/

/* #region Consent bubble */
/* Universal site-wide consent bubble (rendered by _ConsentBubblePartial): title + excerpt, arrows when several pending */
.consent_bubble {
    position: fixed;
    left: 20px;
    bottom: 60px;
    z-index: 1040;
    width: 340px;
    max-width: calc(100vw - 40px);
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.18);
    padding: 14px 16px;
}
.consent_bubble_nav {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 8px;
    margin-bottom: 6px;
    color: var(--text_muted);
    font-size: 0.85rem;
}
.consent_bubble_arrow {
    border: none;
    background: transparent;
    font-size: 1.3rem;
    line-height: 1;
    padding: 0 6px;
    cursor: pointer;
    color: var(--brand);
}
.consent_bubble_item {
    cursor: pointer;
}
.consent_bubble_title {
    font-weight: 700;
    margin-bottom: 6px;
}
.consent_bubble_excerpt {
    font-size: 0.85rem;
    color: var(--text_muted);
    margin-bottom: 10px;
}
.consent_bubble_footer {
    display: flex;
    justify-content: flex-end;
}
/* #endregion */

/* #region Consent detail popup */
.consent_detail_text {
    font-size: 0.9rem;
    color: var(--text);
    margin-bottom: 12px;
}
.consent_detail_subs {
    border-top: 1px solid var(--border);
    padding-top: 10px;
}
.consent_sub {
    margin-bottom: 12px;
}
.consent_sub_head {
    display: flex;
    align-items: center;
    gap: 8px;
    margin: 0 0 4px 0;
    cursor: pointer;
    font-weight: 600;
}
.consent_toggle_input {
    width: 16px;
    height: 16px;
    flex: 0 0 auto;
}
.consent_sub_title {
    font-size: 0.95rem;
}
.consent_sub_text {
    font-size: 0.85rem;
    color: var(--text_muted);
    margin-left: 24px;
}
/* #endregion */

/* SVGChart.css - the universal server-rendered SVG chart component (ticket 0001187).
   Loaded in the ~/Content/css bundle, so a chart can be used on ANY page, not only on the dashboard.
   Everything here is driven by the design tokens of SiteTheme.css (see UI_Theming_Guide.md) - there is not a single
   hardcoded colour, so light / dark and theme switching work with no JavaScript. The markup is produced by the shared
   partials Views/Shared/_SVGChart*Partial.cshtml from an ASISYS.Core.DAL.SVGChart model. */

/* #region Layout */
/* The chart and its legend side by side; .svgchart_vertical stacks them for narrow boxes */
.svgchart {
    display: flex;
    align-items: center;
    gap: 16px;
    min-width: 0;
}

.svgchart_vertical {
    flex-direction: column;
    align-items: stretch;
}

/* Wrapper of the circular charts - it positions the centre caption over the SVG */
.svgchart_figure {
    position: relative;
    flex: none;
    line-height: 0;
    align-self: center;
}

/* The sparkline / bar charts follow the width of their container */
.svgchart_wide {
    flex: 1 1 auto;
    min-width: 0;
    display: block;
}

.svgchart_svg {
    display: block;
    max-width: 100%;
}
/* #endregion */

/* #region Circular charts */
/* Background ring of a donut / progress ring, drawn under the value arcs */
.svgchart_track {
    stroke: var(--surface_3);
}

/* Centre caption of a donut / progress ring - never captures the pointer */
.svgchart_center {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 1.15;
    text-align: center;
    pointer-events: none;
}

.svgchart_center_value {
    font-size: 1.35rem;
    font-weight: 650;
    color: var(--text);
    font-variant-numeric: tabular-nums;
}

.svgchart_center_label {
    font-size: 0.7rem;
    color: var(--text_muted);
}
/* #endregion */

/* #region Sparkline and bars */
/* Baseline under the bars / the sparkline */
.svgchart_baseline {
    stroke: var(--border);
}

/* Positioning context of a sparkline - the emphasized endpoint sits on top of the stretched SVG */
.svgchart_spark {
    position: relative;
    width: 100%;
}

/* Emphasized last point of a sparkline. Placed in percent (and NOT drawn as an SVG circle) because the sparkline
   scales non-uniformly to fill its box, which would squash a circle into an ellipse. */
.svgchart_endpoint_dot {
    position: absolute;
    width: 7px;
    height: 7px;
    margin: -3.5px 0 0 -3.5px;
    border-radius: 50%;
    background: var(--brand);
    pointer-events: none;
}

/* Axis labels of a bar chart - HTML, not SVG text, so they stay readable at any width */
.svgchart_bar_labels {
    display: flex;
    margin-top: 4px;
}

.svgchart_bar_label {
    flex: 1 1 0;
    min-width: 0;
    padding: 0 2px;
    text-align: center;
    font-size: 0.68rem;
    color: var(--text_muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* A column whose caption leads somewhere (e.g. the list the column was computed from) */
a.svgchart_bar_label_link {
    color: var(--brand);
    text-decoration: none;
}

a.svgchart_bar_label_link:hover {
    text-decoration: underline;
}
/* #endregion */

/* #region Legend */
.svgchart_legend {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

/* Under a sparkline / bar chart the legend reads better as a wrapping row */
.svgchart_legend_row {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 4px 14px;
}

.svgchart_legend_item {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.78rem;
    color: var(--text_muted);
    font-variant-numeric: tabular-nums;
    text-decoration: none;
}

a.svgchart_legend_item:hover {
    color: var(--brand);
    text-decoration: none;
}

.svgchart_legend_dot {
    flex: none;
    width: 9px;
    height: 9px;
    border-radius: 2px;
}

.svgchart_legend_label {
    flex: 1 1 auto;
    min-width: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.svgchart_legend_value {
    flex: none;
    font-weight: 650;
    color: var(--text);
}
/* #endregion */

/* #region Empty state */
.svgchart_empty {
    font-size: 0.8rem;
    color: var(--text_subtle);
}
/* #endregion */

/* #region Mobile */
/* On a phone the side-by-side layout would squeeze both parts - stack them */
@media (max-width: 767.98px) {
    .svgchart {
        flex-direction: column;
        align-items: stretch;
    }
}
/* #endregion */

/* Mailbox.css - the three-pane Mail/My mailbox (folder rail | message list | reading pane) and the message
   rendering shared with the standalone Mail/Show page. Colors, radii and shadows come from the design tokens in
   SiteTheme.css, so the mailbox follows the selected theme and both light and dark mode. */

/* #region Mailbox shell */
/* The height is set by the script to whatever is left below the page header; this is the fallback before it runs */
.mailbox_shell {
    display: grid;
    grid-template-columns: 230px minmax(320px, 1fr) minmax(0, 1.15fr);
    gap: 10px;
    align-items: stretch;
    height: calc(100vh - 300px);
    min-height: 420px;
}

/* Collapsed rail: icons only, the list and the reading pane take the freed space */
.mailbox_shell.mailbox_rail_off {
    grid-template-columns: 52px minmax(320px, 1fr) minmax(0, 1.15fr);
}

.mailbox_rail,
.mailbox_list,
.mailbox_reading {
    display: flex;
    flex-direction: column;
    min-width: 0;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
    overflow: hidden;
}

/* The grid paints the page canvas, so the pane holding it uses the same ground */
.mailbox_list_body {
    flex: 1 1 auto;
    overflow: auto;
    background: var(--bg);
}

.mailbox_reading_body {
    flex: 1 1 auto;
    overflow: auto;
    padding: 14px 16px;
    background: var(--surface);
}
/* #endregion */

/* #region Pane headers */
.mailbox_pane_head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 8px 12px;
    border-bottom: 1px solid var(--border);
    background: var(--surface_2);
}

.mailbox_pane_title {
    font-weight: 600;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mailbox_pane_actions {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.mailbox_pane_action {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 0;
    border-radius: var(--radius_sm);
    background: transparent;
    color: var(--text_muted);
    cursor: pointer;
    text-decoration: none;
}

.mailbox_pane_action:hover {
    background: var(--surface_3);
    color: var(--brand);
    text-decoration: none;
}

.mailbox_pane_action:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: 1px;
}
/* #endregion */

/* #region Folder rail */
.mailbox_rail_head {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    border-bottom: 1px solid var(--border);
    background: var(--surface_2);
}

.mailbox_rail_toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    flex: 0 0 auto;
    border: 0;
    border-radius: var(--radius_sm);
    background: transparent;
    color: var(--text_muted);
    cursor: pointer;
}

.mailbox_rail_toggle:hover {
    background: var(--surface_3);
    color: var(--brand);
}

.mailbox_rail_toggle:focus-visible {
    outline: 2px solid var(--ring);
    outline-offset: 1px;
}

.mailbox_rail_title {
    font-weight: 600;
    color: var(--text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mailbox_rail_body {
    flex: 1 1 auto;
    overflow: auto;
    padding: 6px 0;
}

.mailbox_folders {
    list-style: none;
    margin: 0;
    padding: 0;
}

.mailbox_folder {
    position: relative;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 7px 10px;
    color: var(--text);
    cursor: pointer;
    white-space: nowrap;
    border-left: 3px solid transparent;
}

.mailbox_folder:hover {
    background: var(--surface_2);
}

.mailbox_folder_active {
    border-left-color: var(--brand);
    background: var(--surface_3);
    font-weight: 600;
}

.mailbox_folder_icon {
    flex: 0 0 auto;
    width: 18px;
    text-align: center;
    color: var(--text_muted);
}

.mailbox_folder_active .mailbox_folder_icon {
    color: var(--brand);
}

.mailbox_folder_name {
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
}

.mailbox_folder_badge {
    flex: 0 0 auto;
    min-width: 20px;
    padding: 1px 6px;
    border-radius: 10px;
    background: var(--brand);
    color: var(--brand_fg);
    font-size: 0.75rem;
    font-weight: 600;
    text-align: center;
}

/* Collapsed rail: only the icons stay, the badge shrinks onto the icon */
.mailbox_rail_off .mailbox_rail_title,
.mailbox_rail_off .mailbox_folder_name {
    display: none;
}

.mailbox_rail_off .mailbox_folder {
    justify-content: center;
    padding-left: 0 !important;
    padding-right: 0;
}

.mailbox_rail_off .mailbox_folder_badge {
    position: absolute;
    top: 2px;
    right: 5px;
    min-width: 16px;
    padding: 0 4px;
    font-size: 0.65rem;
}
/* #endregion */

/* #region Message list rows */
/* The row is one templated cell whose lines do not wrap. With the default automatic table layout that text widens
   the table instead of being cut, so both the grid table and the message table are pinned to the pane width and
   the message table is laid out fixed - otherwise the list pane scrolls sideways and the date is pushed out of view. */
.mailbox_list_body > table,
.mailbox_list_body table[id$="_DXMainTable"] {
    width: 100% !important;
    max-width: 100%;
    table-layout: fixed;
}

.mailbox_list_body table[id$="_DXMainTable"] > tbody > tr > td {
    overflow: hidden;
}

/* The header row exists only to carry the select-all checkbox, so it is kept as a thin unobtrusive bar */
.mailbox_list_body table[id$="_DXMainTable"] > tbody > tr > th {
    padding-top: 2px;
    padding-bottom: 2px;
}

.mailbox_item {
    display: block;
    padding: 2px 4px;
    min-width: 0;
    max-width: 100%;
}

.mailbox_item_head {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}

.mailbox_item_from {
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mailbox_item_date {
    flex: 0 0 auto;
    color: var(--text_subtle);
    font-size: 0.8rem;
    white-space: nowrap;
}

.mailbox_item_subject {
    color: var(--text);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mailbox_item_clip {
    margin-right: 5px;
    color: var(--text_muted);
}

.mailbox_item_preview {
    color: var(--text_subtle);
    font-size: 0.82rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Unread: the sender and the subject carry the weight, plus a brand marker on the left */
.mailbox_item_unread {
    border-left: 3px solid var(--brand);
    padding-left: 6px;
}

.mailbox_item_unread .mailbox_item_from,
.mailbox_item_unread .mailbox_item_subject {
    font-weight: 700;
}
/* #endregion */

/* #region Reading pane */
.mailbox_reading_empty {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    height: 100%;
    color: var(--text_subtle);
}

.mailbox_reading_empty i {
    font-size: 2.4rem;
}

.mailbox_message_subject {
    font-size: 1.15rem;
    font-weight: 600;
    color: var(--text);
    margin-bottom: 10px;
}

.mailbox_message_head {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

.mailbox_message_avatar {
    flex: 0 0 auto;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    object-fit: cover;
    background: var(--surface_2);
}

.mailbox_message_meta {
    min-width: 0;
}

.mailbox_message_from {
    font-weight: 600;
    color: var(--brand);
}

.mailbox_message_date {
    color: var(--text_muted);
    font-size: 0.85rem;
}

.mailbox_message_line {
    color: var(--text);
    font-size: 0.85rem;
}

.mailbox_message_label {
    color: var(--text_muted);
    font-weight: 600;
}

.mailbox_message_attachments {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 8px 10px;
    margin-top: 10px;
    border: 1px solid var(--border);
    border-radius: var(--radius_sm);
    background: var(--surface_2);
    font-size: 0.85rem;
}

.mailbox_message_attachment {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    max-width: 220px;
    color: var(--brand);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mailbox_message_body {
    margin-top: 14px;
    color: var(--text);
    overflow-wrap: break-word;
}

/* A message body is foreign HTML - keep it inside the pane instead of stretching the layout */
.mailbox_message_body img {
    max-width: 100%;
    height: auto;
}

.mailbox_message_body table {
    max-width: 100%;
}

/* The standalone Mail/Show page renders the same message block on the page surface */
.mailbox_message_page {
    padding: 14px 16px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background: var(--surface);
    box-shadow: var(--shadow);
}

/* Additions used by the sent-message detail (Message/_ShowPartial), which renders with the same block: an action
   toolbar above the subject, the status pill next to the header, the audience list, one tab per language, the log */
.mailbox_message_toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding-bottom: 8px;
    margin-bottom: 10px;
    border-bottom: 1px solid var(--border);
}

.mailbox_message_address {
    font-weight: 400;
    color: var(--text_muted);
    margin-left: 4px;
}

.mailbox_message_toggle {
    margin-left: 6px;
    font-size: 0.85rem;
    color: var(--brand);
}

.mailbox_message_badges {
    flex: 0 0 auto;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 4px;
}

.mailbox_message_origin {
    font-size: 0.8rem;
    color: var(--text_muted);
}

/* The audience can be thousands of addresses - it scrolls in its own box, collapsed by default */
.mailbox_message_recipients {
    max-height: 110px;
    overflow-y: auto;
    margin-top: 6px;
    padding: 6px 8px;
    font-size: 0.85rem;
    color: var(--text);
    border: 1px solid var(--border);
    border-radius: var(--radius_sm);
    background: var(--surface_2);
    overflow-wrap: anywhere;
}

.mailbox_message_tabs {
    margin-top: 10px;
}

.mailbox_message_flag {
    width: 20px;
    height: 15px;
    margin-right: 6px;
    vertical-align: middle;
}

.mailbox_message_log {
    margin-top: 14px;
    padding-top: 8px;
    border-top: 1px solid var(--border);
}

.mailbox_message_log_text {
    margin: 8px 0 0 0;
    padding: 8px;
    font-size: 0.8rem;
    color: var(--text_muted);
    white-space: pre-wrap;
    border: 1px solid var(--border);
    border-radius: var(--radius_sm);
    background: var(--surface_2);
}
/* #endregion */

/* #region Narrow screens */
@media (max-width: 1200px) {
    /* No room for three panes side by side - the reading pane moves under the list */
    .mailbox_shell,
    .mailbox_shell.mailbox_rail_off {
        grid-template-columns: 52px minmax(0, 1fr);
        grid-template-rows: minmax(220px, 1fr) minmax(220px, 1fr);
        height: auto;
    }

    .mailbox_rail {
        grid-row: 1 / span 2;
    }

    /* The rail is icons-only here whatever the pinned state is */
    .mailbox_shell .mailbox_rail_title,
    .mailbox_shell .mailbox_folder_name {
        display: none;
    }

    .mailbox_shell .mailbox_folder {
        justify-content: center;
        padding-left: 0 !important;
    }
}
/* #endregion */

