/* Minification failed. Returning unminified contents.
(2,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(3,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(5,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(6,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(65,5): run-time error CSS1036: Expected expression, found '}'
(209,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(257,21): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(263,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(311,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(311,83): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(369,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(373,26): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(374,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(379,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(411,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(424,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(425,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(453,21): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(462,76): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(464,31): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(525,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(533,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(557,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(570,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(586,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(633,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(634,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(639,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(659,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(682,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(715,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(716,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(721,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(723,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(743,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(760,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(794,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(834,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(850,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(857,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(876,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(899,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(904,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(909,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(921,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(922,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(931,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(932,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(941,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(946,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(973,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(974,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(995,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(996,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1001,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1010,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(1205,39): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1336,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(1403,45): run-time error CSS1062: Expected semicolon or closing curly-brace, found ':'
(1560,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(1574,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1632,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(1661,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1697,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1709,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(1717,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(2363,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(2374,39): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(2406,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(2482,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(2701,39): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3023,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3041,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3066,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3075,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3357,30): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3413,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3414,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(3507,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3507,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3515,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3521,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3522,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3560,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(3561,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3582,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3597,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3633,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3638,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(3644,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(3673,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3674,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(3678,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(3682,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3686,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(3904,18): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(3957,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(4237,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4238,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4239,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4240,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4241,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4244,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4245,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4246,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4247,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4248,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4251,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4252,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4255,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4256,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4257,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4258,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4259,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4260,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4261,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4262,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4263,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4266,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4267,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4268,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4269,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4270,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4271,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4274,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4275,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4276,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4277,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4278,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4279,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4280,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4281,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4284,5): run-time error CSS1062: Expected semicolon or closing curly-brace, found '-'
(4299,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(4314,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(4330,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(4337,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(4338,18): run-time error CSS1039: Token not allowed after unary operator: '-ssp-header-height'
(4343,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(4380,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4440,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4449,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(4491,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(4494,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(4497,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(4511,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4512,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(4513,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4568,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(4589,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4597,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4599,18): run-time error CSS1039: Token not allowed after unary operator: '-ssp-titlebox-height'
(4600,34): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(4601,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(4609,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4625,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4625,66): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(4626,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4632,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4633,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4643,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-light'
(4643,72): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4644,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4650,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4656,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4663,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4686,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4693,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4720,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4720,66): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(4722,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4727,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4728,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4735,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-light'
(4735,72): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4736,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4743,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4754,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4754,66): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(4756,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4761,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4762,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4770,46): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-light'
(4770,72): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4771,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4777,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4781,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4786,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4793,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4795,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4803,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4805,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4811,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-transition'
(4816,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4817,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4818,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4824,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(4856,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4861,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4888,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4922,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4929,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(4966,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(4978,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(4982,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(4987,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5130,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5185,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5189,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(5207,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5212,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(5213,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(5214,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(5222,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5230,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5238,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5243,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5252,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(5256,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5260,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(5264,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5268,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5277,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5297,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5302,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5307,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5324,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(5325,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5337,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5348,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5374,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5392,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5400,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5483,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(5497,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5501,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5505,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5510,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5534,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(5539,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5587,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5588,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5623,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5628,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5670,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5675,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5704,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5717,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5718,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5727,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(5753,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5754,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(5792,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(5797,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(5851,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(5876,29): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(5901,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(5938,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(5939,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(5970,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6077,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6083,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(6086,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6091,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6122,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6126,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6128,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6146,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6167,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(6180,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6183,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(6221,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6280,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6281,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6292,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6293,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6322,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-subtle'
(6323,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6333,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6340,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6352,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(6359,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6372,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6385,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6465,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6495,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6519,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6526,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6527,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6528,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(6530,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(6532,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6538,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6542,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6543,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6557,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6558,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6559,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(6566,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6567,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6571,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6572,29): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6573,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6578,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6579,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6580,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(6582,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(6597,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6598,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(6599,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6608,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(6618,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(6622,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6638,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6643,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6647,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(6651,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(6667,69): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(6668,68): run-time error CSS1039: Token not allowed after unary operator: '-ssp-info'
(6670,67): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(6671,44): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6671,81): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6672,69): run-time error CSS1039: Token not allowed after unary operator: '-ssp-accent'
(6673,67): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(6684,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6710,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6711,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6727,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6733,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6740,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6755,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6783,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6795,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(6800,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6808,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6812,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6816,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(6817,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(6818,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6827,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6832,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6839,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(6843,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(6848,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6849,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6853,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(6869,51): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6869,86): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6870,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6871,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(6890,63): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6898,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6906,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6911,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(6919,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(6928,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(6932,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(6935,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(6936,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6943,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(6945,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(6946,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(6963,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6964,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6965,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(6967,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(6972,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(6983,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(6986,48): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(6987,47): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(6991,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(6992,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(6993,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(6995,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(7010,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7011,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7012,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7021,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(7031,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7035,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7050,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7054,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7063,54): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(7064,55): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(7076,63): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(7077,66): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(7088,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7097,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7101,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7102,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7103,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7104,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7112,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7113,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7129,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7130,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7131,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(7132,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(7139,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7145,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(7152,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7158,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7168,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7177,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7178,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7179,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7190,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7191,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7196,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7197,29): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7198,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7217,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7218,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7219,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(7221,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(7229,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7232,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(7241,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(7251,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7258,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7264,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7265,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7272,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7273,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7277,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7278,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7283,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7284,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(7286,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7296,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(7297,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7301,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7302,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7303,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7304,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7313,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7314,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7318,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7319,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7320,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7321,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7331,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7332,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7347,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7348,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7350,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7355,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(7364,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7365,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7370,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7388,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7410,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7420,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7421,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7424,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7425,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7426,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7431,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7432,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7437,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7438,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7443,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7473,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7477,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7480,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7481,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(7486,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
(7487,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7495,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7499,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7500,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7501,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7502,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7508,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7509,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7514,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7515,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7518,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7524,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7528,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7530,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7545,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7563,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7564,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7568,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7570,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7574,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7575,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7576,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7580,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7581,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7609,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7622,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7623,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7626,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7627,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7638,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7639,37): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7656,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7669,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7670,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7673,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7674,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(7675,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7686,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7695,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7720,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7721,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7722,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7723,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7724,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7734,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7735,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7736,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7744,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7745,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7746,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(7760,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7761,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7762,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7768,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7780,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7803,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(7804,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7805,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7806,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7807,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(7817,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(7818,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7819,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7827,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7828,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(7829,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-white'
(7841,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(7842,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7843,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(7849,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(7907,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(7971,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(7972,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8010,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8016,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8050,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8065,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(8066,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8067,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(8071,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-shadow'
(8075,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8076,38): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(8084,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(8085,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8106,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8111,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8116,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(8131,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8133,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8157,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8158,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(8161,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(8166,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8188,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8197,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(8205,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8236,32): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8243,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8244,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8246,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(8248,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8253,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8260,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8266,24): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(8279,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius-lg'
(8285,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8301,35): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8319,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(8327,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8372,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(8373,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-light'
(8374,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8387,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8388,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8396,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(8400,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg-white'
(8401,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-secondary'
(8408,33): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8412,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8417,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-bg'
(8438,28): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border'
(8443,23): run-time error CSS1039: Token not allowed after unary operator: '-ssp-font'
(8449,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8541,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text-muted'
(8566,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-text'
(8574,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(8575,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8579,22): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8585,27): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-rgb'
(8586,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8597,17): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8654,25): run-time error CSS1039: Token not allowed after unary operator: '-ssp-border-radius'
(8661,40): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(8661,103): run-time error CSS1039: Token not allowed after unary operator: '-ssp-success'
(8662,40): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger'
(8662,102): run-time error CSS1039: Token not allowed after unary operator: '-ssp-danger-dark'
(8663,40): run-time error CSS1039: Token not allowed after unary operator: '-ssp-info'
(8663,100): run-time error CSS1039: Token not allowed after unary operator: '-ssp-info-dark'
(8664,40): run-time error CSS1039: Token not allowed after unary operator: '-ssp-warning'
(8664,103): run-time error CSS1039: Token not allowed after unary operator: '-ssp-warning'
(8665,40): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary'
(8665,103): run-time error CSS1039: Token not allowed after unary operator: '-ssp-primary-dark'
 */
:root {
    --ssp-primary: #e60000;
    --ssp-primary-dark: #820000;
    --ssp-primary-light: #E60000;
    --ssp-primary-rgb: 230, 0, 0;
    --ssp-success: #A8B400;
}

html, body {
    margin: 0;
    overflow-x: hidden;
}

/* Header container width override — moved from inline style="max-width:1840px" on
   _Header.cshtml to stay CSP-safe under style-src 'self'. */
#header .header-container {
    max-width: 1840px;
}

/* Floating language selector (positioned on login / pre-auth screens). Moved out of
   inline style= on _Layout.cshtml so it's CSP-safe under style-src 'self'. */
.language-selector-global {
    position: fixed;
    top: 35px;
    right: 10px;
    z-index: 9999;
    transform-origin: top right;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: slideInFade 0.4s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

@keyframes slideInFade {
    from { opacity: 0; transform: translateX(30px) translateY(-15px) scale(0.8); }
    to   { opacity: 1; transform: translateX(0) translateY(0) scale(1); }
}

@keyframes slideOutFade {
    from { opacity: 1; transform: translateX(0) translateY(0) scale(1); }
    to   { opacity: 0; transform: translateX(30px) translateY(-15px) scale(0.8); }
}

body {
    background: #FFFFFF;
}

p {
    margin: 0;
}

* {
    font-family: 'Open Sans', sans-serif;
}

    *:focus {
        outline: none;
    }

a {
    text-decoration: none;
}

    a:hover {
        text-decoration: none;
        color:
    }

.ps__thumb-y {
    background-color: #e60000;
}

.box-bgd-white {
    background: #fff;
}

#header {
    background: #fff;
    height: 80px;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 40px;
}

    #header .header-leftSide,
    #header .header-rightSide {
        display: flex;
        justify-content: center;
        align-items: center;
    }

        #header .header-rightSide .header-datetime-text {
            margin-right: 40px;
        }

            #header .header-rightSide .header-datetime-text span {
                font-size: 12px;
                line-height: 20px;
                color: #000;
                font-weight: bold;
            }

        #header .header-leftSide .header-logo {
            background-image: url("../Content/img/Vodacom-Logo.svg");
            width: 135px;
            height: 53px;
            margin-right: 40px;
            background-repeat: no-repeat;
        }

        #header .header-leftSide .header-welcomeText p {
            font-size: 16px;
            color: #e60000;
            line-height: 20px;
            margin-bottom: 0;
            font-weight: bold;
        }

        /* Active partner-customer badge. Lives on the right side, immediately before
           the icon strip, so users see which account is active at a glance. The
           selector is the bare class (no .header-leftSide ancestor) because the badge
           moved out of the left welcome text into the right-hand action area. */
        #header .header-rightSide .header-active-customer {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            margin-right: 12px;
            padding: 4px 12px;
            background: #FFFFFF;
            border-radius: 999px;
            color: #25282B;
            font-size: 13px;
            font-weight: 600;
            max-width: 280px;
            overflow: hidden;
        }

        #header .header-rightSide .header-active-customer-account {
            color: #e60000;
            white-space: nowrap;
            flex: 0 0 auto;
            font-size: 16px;
            font-weight: 700;
        }

        #header .header-rightSide .header-active-customer-name {
            color: #4A4D4E;
            font-weight: normal;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            min-width: 0;
        }

        #header .header-rightSide .header-icons {
            display: flex;
            justify-content: center;
            align-items: center;
            align-self: center;
            gap: 8px;
        }

        #header .header-rightSide .header-icons a {
            display: flex;
            align-items: center;
            justify-content: center;
            width: 42px;
            height: 42px;
            border-radius: 10px;
            transition: all 0.2s ease;
        }

        #header .header-rightSide .header-icons form {
            display: flex;
            margin: 0;
        }

        #header .header-rightSide .header-icons a:hover {
            background: rgba(230,0,0,0.08);
        }

        #header .header-rightSide .header-supportIcon {
            background-image: url("../Content/img/headset-icon.png");
            width: 24px;
            height: 24px;
            background-repeat: no-repeat;
            background-size: contain;
        }

        #header .header-rightSide .header-envelopIcon {
            background-image: url("../Content/img/envelop.png");
            width: 26px;
            height: 26px;
            background-repeat: no-repeat;
            background-size: contain;
            position: relative;
            display: inline-block;
        }

        #header .header-rightSide .header-icons a:hover .header-envelopIcon {
                filter: brightness(0) saturate(100%) invert(12%) sepia(97%) saturate(6264%) hue-rotate(358deg) brightness(94%) contrast(112%);
            }

.circle-number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 18px;
    height: 18px;
    background-color: var(--ssp-primary);
    border-radius: 50%;
    color: white;
    font-size: 10px;
    font-weight: bold;
    line-height: 1;
    position: absolute;
    top: -6px;
    right: -6px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
}

#header .header-rightSide .header-logoutIcon {
    background-image: url("../Content/img/logout-icon.png");
    width: 26px;
    height: 26px;
    background-repeat: no-repeat;
    background-size: contain;
}

#header .header-rightSide .header-icons a:hover .header-logoutIcon {
    filter: brightness(0) saturate(100%) invert(12%) sepia(97%) saturate(6264%) hue-rotate(358deg) brightness(94%) contrast(112%);
}

#header .header-rightSide .header-homeIcon {
    background-image: url("../Content/img/billing-homeIcon.png");
    width: 26px;
    height: 26px;
    background-repeat: no-repeat;
    background-size: contain;
}

    #header .header-rightSide .header-icons a:hover .header-homeIcon {
        filter: brightness(0) saturate(100%) invert(12%) sepia(97%) saturate(6264%) hue-rotate(358deg) brightness(94%) contrast(112%);
    }

/* Profile icon — uses inline SVG (currentColor) instead of a background image so
   we don't need a new asset; matches the colour treatment of the language icon. */
#header .header-rightSide .header-profileIcon {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #4A4D4E;
}

    #header .header-rightSide .header-icons a:hover .header-profileIcon {
        color: var(--ssp-primary, #E60000);
    }

/* ===== Homepage (hp-*) ===== */

.hp-announcement {
    background: var(--ssp-primary);
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    border: none;
    border-radius: 0;
    margin: 0 0 12px;
    padding: 10px 40px 10px 20px;
    overflow: hidden;
    white-space: nowrap;
}

.hp-announcement:hover .hp-announcement-text {
    animation-play-state: paused;
}

.hp-announcement-text {
    display: inline-block;
    animation: hp-marquee 15s linear infinite;
}

@keyframes hp-marquee {
    0%   { transform: translateX(100%); }
    100% { transform: translateX(-100%); }
}

/* Move main content area up by 15px */
.pd-ltr-20.customscroll.height-100-p {
    overflow-x: hidden;
}

.main-container {
    overflow-x: hidden;
}

    .hp-announcement .close {
        color: #fff;
        opacity: .8;
        text-shadow: none;
    }

        .hp-announcement .close:hover {
            opacity: 1;
        }

.hp-welcome {
    text-align: center;
    padding: 35px 15px 28px;
    background: linear-gradient(135deg, var(--ssp-primary-dark, #820000) 0%, var(--ssp-primary, #e60000) 100%);
    color: #fff;
    border-radius: 0 0 16px 16px;
    margin: 0 0 20px;
}

    .hp-welcome h2 {
        font-size: 24px;
        font-weight: 700;
        color: #fff;
        margin: 0 0 4px;
    }

    .hp-welcome p {
        font-size: 14px;
        font-weight: 600;
        color: rgba(255,255,255,0.8);
        margin: 0;
    }

.hp-accounts {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    padding: 0 15px 25px;
    max-width: 100%;
    box-sizing: border-box;
}

    .hp-accounts .hp-account-pill {
        max-width: 100%;
        box-sizing: border-box;
    }

        .hp-accounts .hp-account-pill .hp-pill-name,
        .hp-accounts .hp-account-pill .hp-pill-account {
            max-width: 100%;
            overflow: hidden;
            text-overflow: ellipsis;
            white-space: nowrap;
        }

.hp-account-pill {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    padding: 8px 20px;
    border: 2px solid #4A4D4E;
    border-radius: 30px;
    background: #fff;
    cursor: pointer;
    transition: all .2s ease;
    text-align: center;
    min-width: 140px;
}

    .hp-account-pill:hover {
        border-color: var(--ssp-primary);
    }

    .hp-account-pill--active {
        background: var(--ssp-primary);
        border-color: var(--ssp-primary);
        color: #fff;
    }

        .hp-account-pill--active:hover {
            border-color: var(--ssp-primary-dark);
        }

    /* Account number is now the primary identifier on the pill — bigger and bold so it
       reads at a glance when the user has multiple linked accounts. The customer name
       sits underneath as the subdued secondary. (Previous order had these reversed.) */
    .hp-account-pill .hp-pill-account {
        font-size: 16px;
        font-weight: 700;
    }

    .hp-account-pill .hp-pill-name {
        font-size: 11px;
        opacity: .7;
    }

    .hp-account-pill .badge {
        font-size: 10px;
        margin-top: 2px;
    }

.hp-cards {
    padding: 0 15px 30px;
}

.hp-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: #fff;
    border: 1px solid #4A4D4E;
    border-top: 3px solid var(--ssp-primary, #e60000);
    border-radius: 10px;
    padding: 28px 15px;
    text-align: center;
    cursor: pointer;
    transition: all .25s ease;
    margin-bottom: 20px;
    text-decoration: none;
    color: inherit;
    min-height: 170px;
}

    .hp-card:hover {
        border-color: var(--ssp-primary);
        border-top-color: var(--ssp-primary);
        box-shadow: 0 4px 15px rgba(230, 0, 0, .15);
        transform: translateY(-3px);
        text-decoration: none;
        color: inherit;
    }

    .hp-card img {
        width: 50px;
        height: 50px;
        margin-bottom: 14px;
        object-fit: contain;
    }

    .hp-card .hp-card-title {
        font-size: 15px;
        font-weight: 700;
        color: #25282B;
        margin: 0 0 4px;
    }

    .hp-card .hp-card-text {
        font-size: 12px;
        color: #4A4D4E;
        margin: 0;
    }

    .hp-card:hover .hp-card-title {
        color: var(--ssp-primary);
    }

/* ===== End Homepage ===== */

/* ===== Shared Page Utilities ===== */
.pg-back-icon { margin-left: -18px; }
.pg-payment-card { width: 20rem; height: 155px; }
.pg-payment-brand { height: 55px; display: flex; align-items: center; justify-content: center; }
.pg-payment-brand-text { font-size: 1.8rem; font-weight: bold; color: var(--ssp-primary); }
.sub-link { color: #4A4D4E; }
.sub-link:hover { color: var(--ssp-primary); }
#map { width: 100%; height: 400px; }
.purchase-field-min { min-width: 500px; }
/* ===== End Shared Page Utilities ===== */

/* ===== Modern Page Layout ===== */

/* Page header — clean, no background color */
.titleBox {
    background: transparent !important;
    background-image: none !important;
    height: auto !important;
    padding: 0 0 16px 0 !important;
    border-radius: 0;
    border-top: none !important;
    display: flex;
    align-items: center;
    gap: 12px;
}

.titleBox p {
    color: #25282B !important;
    font-size: 22px !important;
    font-weight: 800;
    line-height: 1.3;
    margin: 0;
    letter-spacing: -0.3px;
}

.titleBox a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: #ffffff;
    border: 1px solid #4A4D4E;
    transition: all 0.2s ease;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}

.titleBox a:hover {
    background: #FFFFFF;
    border-color: #4A4D4E;
}

.titleBox a img.pg-back-icon {
    width: 18px;
    height: 18px;
    opacity: 1;
    margin-left: 0;
    filter: brightness(0);
}

/* Content card — unified rounded card */
.box-bgd-white {
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
    border: 1px solid var(--ssp-bg-subtle);
}

#myProducts .myProducts-wrapper .myProducts-box-padding {
    padding: 24px 30px 30px;
    background: #fff;
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
    border: 1px solid var(--ssp-bg-subtle);
}

#myProducts .myProducts-wrapper .box-bgd-white {
    border-radius: 12px;
}

/* Unified search bar */
.mod-search {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 20px;
}

.mod-search .form-control {
    border-radius: 8px;
    border: 1px solid #4A4D4E;
    padding: 10px 16px;
    font-size: 14px;
    transition: border-color 0.2s;
}

.mod-search .form-control:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(230,0,0,0.08);
}

.mod-search .btn {
    border-radius: 8px;
    padding: 8px 14px;
    border: 1px solid #4A4D4E;
    background: #fff;
    transition: all 0.2s;
}

.mod-search .btn:hover {
    border-color: var(--ssp-primary);
    background: rgba(230, 0, 0, 0.06);
}

.mod-search .btn img {
    width: 20px;
    height: 20px;
    margin: 0;
}

/* Clean data rows replacing form-control readonly inputs */
.data-row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    padding: 12px 0;
    border-bottom: 1px solid var(--ssp-bg-subtle);
}

.data-row:last-child {
    border-bottom: none;
}

.data-row .data-label {
    font-size: 13px;
    font-weight: 600;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    flex-shrink: 0;
    min-width: 140px;
}

.data-row .data-value {
    font-size: 15px;
    font-weight: 600;
    color: #25282B;
    text-align: right;
}

/* Left sidebar list items */
.mod-sidebar-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.mod-sidebar-list li {
    margin-bottom: 4px;
}

.mod-sidebar-list li a {
    display: block;
    padding: 10px 16px;
    border-radius: 8px;
    color: #4A4D4E;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.2s;
    text-decoration: none;
}

.mod-sidebar-list li a:hover {
    background: var(--ssp-bg-subtle);
    color: var(--ssp-primary);
}

.mod-sidebar-list li a.active {
    background: rgba(230,0,0,0.06);
    color: var(--ssp-primary);
    font-weight: 700;
}

/* Payment option cards */
.pay-card {
    background: #fff;
    border: 1px solid #4A4D4E;
    border-radius: 12px;
    padding: 24px;
    width: 220px;
    text-align: center;
    transition: all 0.25s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.pay-card:hover {
    border-color: var(--ssp-primary);
    box-shadow: 0 4px 15px rgba(0,0,0,0.1);
    transform: translateY(-3px);
}

.pay-card img {
    max-height: 45px;
    max-width: 160px;
    object-fit: contain;
}

.pay-card .btn-green {
    width: 100%;
    border-radius: 8px;
    padding: 10px 20px;
}

/* Section heading with accent underline */
.section-title {
    font-size: 16px;
    font-weight: 700;
    color: #25282B;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--ssp-primary);
    display: inline-block;
    margin-bottom: 20px;
}

/* Modern vertical sidebar tabs for profile */
#myProfile .myProfilewrapper ul.nav-tabs {
    flex-direction: column;
    border-bottom: none;
    border-right: 1px solid #4A4D4E;
    padding-right: 0;
    gap: 2px;
}

#myProfile .myProfilewrapper ul.nav-tabs li {
    max-width: none;
    margin: 0;
    padding: 0;
    margin-left: 0;
}

#myProfile .myProfilewrapper ul.nav-tabs li a {
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 500;
    border-radius: 8px 0 0 8px;
    color: #4A4D4E;
    border: none;
    transition: all 0.2s;
    display: block;
}

#myProfile .myProfilewrapper ul.nav-tabs li a:hover {
    background: var(--ssp-bg-subtle);
    color: var(--ssp-primary);
}

#myProfile .myProfilewrapper .nav-tabs .nav-link.active {
    background: rgba(230,0,0,0.06);
    color: var(--ssp-primary);
    font-weight: 700;
    border-left: 3px solid var(--ssp-primary);
    border-bottom: none;
    padding-left: 17px;
}

/* Order cards in accordion */
.mod-order-card {
    border: 1px solid #4A4D4E;
    border-radius: 10px;
    margin-bottom: 12px;
    overflow: hidden;
    transition: box-shadow 0.2s;
}

.mod-order-card:hover {
    box-shadow: 0 2px 10px rgba(0,0,0,0.06);
}

.mod-order-card .card-header {
    background: #fff;
    border-bottom: 1px solid var(--ssp-bg-subtle);
    padding: 16px 20px;
}

.mod-order-card .card-header button {
    font-size: 15px;
    font-weight: 700;
    color: #25282B;
    text-decoration: none;
}

.mod-order-card .card-body {
    padding: 20px;
}

/* Override the heavy red-bordered category headers */
#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle {
    border-left: 3px solid var(--ssp-primary);
    background: #FFFFFF;
    padding: 10px 16px;
    border-radius: 6px;
    width: 100%;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle p {
    font-size: 13px;
    font-weight: 700;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Map container styling */
.mod-map-container {
    border-radius: 10px;
    overflow: hidden;
}

/* M-Pesa modal styling — applies to both #mpesaModal (USSD Push) and
   #mpesaPayBillModal (PayBill) across the Purchase, Dealer, and ISP flows.
   Vodacom red header + red CTA / spinner / success accent. */
#mpesaModal .modal-content,
#mpesaPayBillModal .modal-content {
    border: none;
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 8px 30px rgba(0,0,0,0.15);
}

#mpesaModal .modal-header,
#mpesaPayBillModal .modal-header {
    background: var(--ssp-primary);
    color: #fff;
    border-bottom: none;
    padding: 18px 24px;
}

#mpesaModal .modal-header .modal-title,
#mpesaPayBillModal .modal-header .modal-title {
    font-size: 18px;
    font-weight: 700;
}

#mpesaModal .modal-header .close,
#mpesaPayBillModal .modal-header .close {
    color: #fff;
    opacity: 0.8;
    text-shadow: none;
}

#mpesaModal .modal-header .close:hover,
#mpesaPayBillModal .modal-header .close:hover {
    opacity: 1;
}

#mpesaModal .modal-body,
#mpesaPayBillModal .modal-body {
    padding: 24px;
}

#mpesaModal .modal-body .form-control,
#mpesaPayBillModal .modal-body .form-control {
    border-radius: 8px;
    border: 1px solid #4A4D4E;
    padding: 10px 16px;
    font-size: 15px;
    transition: border-color 0.2s;
}

#mpesaModal .modal-body .form-control:focus,
#mpesaPayBillModal .modal-body .form-control:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(230,0,0,0.08);
}

#mpesaModal .modal-body label,
#mpesaPayBillModal .modal-body label {
    font-weight: 600;
    color: #4A4D4E;
    font-size: 13px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 6px;
}

#mpesaModal .modal-footer,
#mpesaPayBillModal .modal-footer {
    border-top: 1px solid var(--ssp-bg-subtle);
    padding: 16px 24px;
    gap: 10px;
}

#mpesaModal .modal-footer .btn-secondary,
#mpesaPayBillModal .modal-footer .btn-secondary {
    background: var(--ssp-bg-subtle);
    color: #4A4D4E;
    border: none;
    border-radius: 8px;
    padding: 10px 24px;
    font-weight: 600;
    transition: all 0.2s;
}

#mpesaModal .modal-footer .btn-secondary:hover,
#mpesaPayBillModal .modal-footer .btn-secondary:hover {
    background: #4A4D4E;
}

#mpesaModal .modal-footer .btn-success,
#mpesaModal .modal-footer #mpesaPayBtn,
#mpesaModal .modal-footer #mpesaRetryBtn,
#mpesaPayBillModal .modal-footer .btn-success,
#mpesaPayBillModal .modal-footer #mpesaPayBillSubmitBtn {
    background: var(--ssp-primary);
    border: none;
    border-radius: 8px;
    padding: 10px 24px;
    font-weight: 700;
    font-size: 14px;
    color: #fff;
    transition: all 0.2s;
    box-shadow: 0 2px 6px rgba(230,0,0,0.3);
}

#mpesaModal .modal-footer .btn-success:hover,
#mpesaModal .modal-footer #mpesaPayBtn:hover,
#mpesaModal .modal-footer #mpesaRetryBtn:hover,
#mpesaPayBillModal .modal-footer .btn-success:hover,
#mpesaPayBillModal .modal-footer #mpesaPayBillSubmitBtn:hover {
    background: #820000;
    box-shadow: 0 4px 10px rgba(230,0,0,0.4);
    transform: translateY(-1px);
}

#mpesaModal .spinner-border,
#mpesaPayBillModal .spinner-border {
    color: var(--ssp-primary) !important;
}

#mpesaModal .text-success,
#mpesaPayBillModal .text-success {
    color: var(--ssp-primary) !important;
}

/* Override Bootstrap green/blue accents to Vodacom red */
.badge-success {
    background-color: var(--ssp-primary) !important;
}

.badge-info {
    background-color: #4A4D4E !important;
}

.badge-primary {
    background-color: #820000 !important;
}

.btn-success {
    background-color: var(--ssp-primary) !important;
    border-color: var(--ssp-primary) !important;
}

.btn-success:hover {
    background-color: #820000 !important;
    border-color: #820000 !important;
}

.btn-primary {
    background-color: var(--ssp-primary) !important;
    border-color: var(--ssp-primary) !important;
}

.btn-primary:hover {
    background-color: #820000 !important;
    border-color: #820000 !important;
}

.text-success {
    color: var(--ssp-primary) !important;
}

/* Language dropdown modern styling */
.language-btn {
    background: var(--ssp-primary) !important;
    color: white !important;
    border: none !important;
    border-radius: 8px !important;
    padding: 8px 16px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    cursor: pointer;
    transition: all 0.2s;
}

.language-btn:hover {
    background: #820000 !important;
}

.language-dropdown-content {
    border-radius: 8px !important;
    border: 1px solid #4A4D4E !important;
    box-shadow: 0 4px 15px rgba(0,0,0,0.1) !important;
    overflow: hidden;
}

.language-dropdown-content a {
    transition: background 0.2s;
}

.language-dropdown-content a:hover {
    background: var(--ssp-bg-subtle) !important;
    color: var(--ssp-primary) !important;
}

/* Billing titleBox - covered by generic .titleBox rule above */

/* Modern billing sidebar list */
#billing .billing-wrapper .billing-leftSideBox ul li {
    background: none;
    margin-bottom: 4px;
}

#billing .billing-wrapper .billing-leftSideBox ul li a {
    padding: 10px 16px;
    border-radius: 8px;
    color: #4A4D4E;
    font-weight: 500;
    font-size: 14px;
    transition: all 0.2s;
}

#billing .billing-wrapper .billing-leftSideBox ul li a:hover {
    background: var(--ssp-bg-subtle);
    color: var(--ssp-primary);
}

#billing .billing-wrapper .nav-tabs .nav-link.active {
    background: rgba(230,0,0,0.06);
    color: var(--ssp-primary);
    font-weight: 700;
}

/* ===== End Modern Page Layout ===== */

/*myProducts page*/

.borderBox {
    border: 1px solid var(--ssp-border);
    padding: 0 20px !important;
}

#myProducts .myProducts-wrapper .myProducts-box-padding {
    /* padding handled by modern override above */
}

#myProducts .myProducts-wrapper .myProducts-searchBox {
    margin: 25px 0 40px 0;
}

    #myProducts .myProducts-wrapper .myProducts-searchBox input {
        width: 100%;
        padding: 11px 20px;
        background: #FFFFFF;
        border: 1px solid #4A4D4E;
        border-radius: 5px;
    }

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox {
    height: 340px;
    position: relative;
    overflow-y: scroll;
}

/* myProducts-leftSide-boxTitle - handled by modern override above */

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul {
    margin: 30px 0;
}

    #myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul li {
        font-size: 16px;
        font-weight: 400;
        line-height: 24px;
        color: #4A4D4E;
        margin-bottom: 20px;
    }

 .button-buyMoreProducts {
    width: 100%;
    max-width: 168px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(135deg, #e60000, #820000);
    border-radius: 5px;
    color: #fff;
    font-size: 15px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(230, 0, 0, 0.4);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 30px 0;
    float: right;
}

    /* Hover effect */
     .button-buyMoreProducts:hover {
        background: linear-gradient(135deg, #E60000, #820000);
        box-shadow: 0 6px 12px rgba(230, 0, 0, 0.5);
        transform: translateY(-2px);
    }

    /* Active click effect */
     .button-buyMoreProducts:active {
        transform: translateY(1px);
        box-shadow: 0 3px 6px rgba(230, 0, 0, 0.4);
    }

    .button-buyMoreProducts a {
        color: #fff;
        text-decoration: none;
    }

        .button-buyMoreProducts a:hover {
            color: #fff; /* Keep it white on hover */
            text-decoration: underline; /* Optional hover effect */
        }

 .btn-payNow {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    padding: 10px 20px;
    background: linear-gradient(135deg, #e60000, #820000);
    border-radius: 5px;
    color: #fff !important;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(230, 0, 0, 0.4);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
}

    /* Hover effect */
     .btn-payNow:hover {
        background: linear-gradient(135deg, #E60000, #820000);
        box-shadow: 0 6px 12px rgba(230, 0, 0, 0.5);
        transform: translateY(-2px);
        text-decoration: none;
    }

    /* Active effect */
     .btn-payNow:active {
        transform: translateY(1px);
        box-shadow: 0 3px 6px rgba(230, 0, 0, 0.4);
    }

/* Base green button style */
.btn-green {
    background: linear-gradient(135deg, #820000, #820000);
    color: #fff !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(230, 0, 0, 0.3);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    /* Hover */
    .btn-green:hover {
        background: linear-gradient(135deg, #E60000, #820000);
        box-shadow: 0 6px 12px rgba(230, 0, 0, 0.4);
        transform: translateY(-2px);
    }

    /* Active */
    .btn-green:active {
        transform: translateY(1px);
        box-shadow: 0 3px 6px rgba(230, 0, 0, 0.3);
    }


.btn-grey {
    background: linear-gradient(135deg, #4A4D4E, #25282B); /* Light grey to dark grey */
    color: #fff !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(74, 77, 78, 0.4); /* Grey shadow */
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    /* Hover */
    .btn-grey:hover {
        background: linear-gradient(135deg, #4A4D4E, #25282B); /* Slightly lighter hover */
        box-shadow: 0 6px 12px rgba(74, 77, 78, 0.5);
        transform: translateY(-2px);
    }

    /* Active */
    .btn-grey:active {
        transform: translateY(1px);
        box-shadow: 0 3px 6px rgba(74, 77, 78, 0.4);
    }


/*myProducts rightside*/

#myProducts .myProducts-wrapper .rightSide-padding {
    padding: 0 20px
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title {
    margin-bottom: 30px;
}

    #myProducts .myProducts-wrapper .myProducts-rightSide-title p {
        border-bottom: 3px solid var(--ssp-primary);
        width: max-content;
        padding-bottom: 10px;
        font-size: 16px;
        font-weight: 700;
        color: #25282B;
        line-height: 1.3;
    }

    #myProducts .myProducts-wrapper .myProducts-rightSide-title hr {
        margin: 0;
    }

#myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox ul {
    height: 385px;
    position: relative;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox .infoBox {
    border: 1px solid #4A4D4E;
    margin-bottom: 15px;
    padding: 13px 20px;
    width: 100%;
    max-width: 560px;
}

 .infoBoxOrd {
    border: 1px solid #4A4D4E;
    margin-bottom: 15px;
    padding: 13px 20px;
    width: 100%;
    max-width: 560px;
}

    #myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox .infoBox p {
        font-size: 14px;
        font-weight: 400;
        line-height: 14px;
    }

#myProducts .myProducts-wrapper .myproducts-rightSide-icons {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: center;
    padding: 0 13px 0 0;
}

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons a {
        margin-right: 75px;
    }

        #myProducts .myProducts-wrapper .myproducts-rightSide-icons a:last-child {
            margin-right: 0;
        }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5 {
        width: 53px;
        height: 52px;
        background-repeat: no-repeat;
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1 {
        background-image: url("../Content/img/myProducts-icon1.png");
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2 {
        background-image: url("../Content/img/myProducts-icon2.png");
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3 {
        background-image: url("../Content/img/myProducts-icon3.png");
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4 {
        background-image: url("../Content/img/myProducts-icon4.png");
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5 {
        background-image: url("../Content/img/myProducts-icon5.png");
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1:hover,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2:hover,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3:hover,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4:hover,
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5:hover {
        filter: brightness(0) saturate(100%) invert(12%) sepia(97%) saturate(6264%) hue-rotate(358deg) brightness(94%) contrast(112%);
    }

/*billing page*/

#billing .billing-wrapper .billing-leftSideBox ul {
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
}

/* billing sidebar & nav-link - handled by modern override above */

/* billing titleBox - handled by modern override above */

#billing .billing-wrapper .billing-box-padding {
    padding: 40px 0 40px 40px;
}

#billing .billing-wrapper .billing-monthBox p {
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 14px;
    font-weight: bold;
}

#billing .billing-wrapper .billing-monthBox select {
    width: 100%;
    max-width: 510px;
    padding: 14px 20px;
    font-size: 18px;
    color: #4A4D4E;
    border: 0;
    background: #FFFFFF;
    margin-bottom: 30px;
}

#billing .billing-wrapper .tab-content {
    border: 2px solid var(--ssp-border);
    width: 400px;
    margin-left: 25px;
    float: left;
}

    #billing .billing-wrapper .tab-content .tab-pane {
        padding: 30px;
    }

        #billing .billing-wrapper .tab-content .tab-pane h5 {
            font-size: 20px;
            font-weight: bold;
            line-height: 14px;
            margin-bottom: 30px;
        }

        #billing .billing-wrapper .tab-content .tab-pane p {
            margin-bottom: 30px;
            font-size: 14px;
            line-height: 24px;
        }

#billing .billing-wrapper .billing-leftSideBox {
    margin-bottom: 50px;
}

    #billing .billing-wrapper .billing-leftSideBox p {
        font-size: 20px;
        font-weight: bold;
        line-height: 14px;
        margin-bottom: 20px;
    }

#billing .billing-wrapper .button-pay-billing {
    text-align: center;
}

    #billing .billing-wrapper .button-pay-billing span {
        font-size: 20px;
        font-weight: bold;
        line-height: 14px;
        margin-right: 20px;
    }

    #billing .billing-wrapper .button-pay-billing a {
        font-size: 18px;
        line-height: 14px;
        color: #fff;
        background: #820000;
        padding: 15px 40px;
        border-radius: 5px;
    }

#billing .billing-wrapper .billing-printerIcon {
    background-image: url(../Content/img/billing-download.png);
    width: 49px;
    height: 49px;
    background-repeat: no-repeat;
    background-position: center;
}

#billing .billing-wrapper .billing-homeIcon {
    background-image: url(../Content/img/billing-homeIcon.png);
    width: 37px;
    height: 35px;
    background-repeat: no-repeat;
    background-position: center margin-right: 20px;
}

.PrintInvIcon {
    background-image: url(../Content/img/invoice.png);
}

#billing .billing-wrapper .billing-iconsBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
}

/*myProfile*/

/* myProfile titleBox - handled by modern override above */

#myProfile .myProfilewrapper .box-bgd-white {
    padding-top: 30px;
    padding-bottom: 80px;
    width: 100%;
}

/* myProfile tabs - handled by modern override above */

#myProfile .myProfilewrapper .myProfile-rightSide {
    border: none;
    padding: 10px 0 30px;
}


#myProfile .myProfilewrapper .mydetails-group form .form-group {
    width: 100%;
    max-width: 480px;
    height: 50px;
    margin: 0 auto;
    margin-bottom: 30px;
}

    #myProfile .myProfilewrapper .mydetails-group form .form-group label {
        font-size: 14px;
        line-height: 14px;
        color: #4A4D4E;
    }


#myProfile .myProfilewrapper .myprofile-formGroup h5 {
    text-align: left;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.3;
    color: #25282B;
    margin-top: 0;
}


#myProfile .myProfilewrapper .mydetails-group form .form-group input {
    border: 1px solid #4A4D4E;
}

#myProfile .myProfilewrapper .myprofile-formGroup {
    padding-right: 30px;
    padding-left: 30px;
}

#myProfile .myProfilewrapper .myProfile-buttons {
    text-align: left;
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 16px;
}



    #myProfile .myProfilewrapper .myProfile-buttons .btn-update {
        background: #820000;
    }

#myProfile .myProfilewrapper .myProfile-history-checkboxes {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

    #myProfile .myProfilewrapper .myProfile-history-checkboxes input {
        margin-top: 5px;
        z-index: 999999;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-textBox img {
        float: left;
        margin-right: 20px;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-textBox p.leadp {
        font-size: 14px;
        font-weight: bold;
        color: #e60000;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-textBox p.secondp {
        font-size: 11px;
        color: #4A4D4E;
        width: 80%;
    }


    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-status h4 {
        font-size: 24px;
        font-weight: bold;
        line-height: 14px;
        color: #e60000;
    }

#myProfile .myProfilewrapper .custom-control-label:before {
    background-color: transparent;
}

#myProfile .myProfilewrapper .custom-checkbox .custom-control-input:checked ~ .custom-control-label::before {
    background-color: #e60000;
    border: 1px solid #e60000;
    padding: 2px;
}


#myProfile .myProfilewrapper .custom-checkbox .custom-control-input:checked ~ .custom-control-label::after {
    background-image: none;
}

#myProfile .myProfilewrapper .form-control-lg {
    height: auto;
    padding: 0;
    margin: 0;
    line-height: normal;
    margin-right: 25px;
}

#myProfile .myProfilewrapper .custom-control-label::before {
    top: 5px;
    left: 0;
    width: 13px;
    height: 13px;
}

#myProfile .myProfilewrapper .custom-checkbox .custom-control-label::before {
    border-radius: unset;
}

#myProfile .myProfilewrapper .custom-control-label::after {
    top: 0;
    left: 0;
}

#myProfile .myProfilewrapper .form-check {
    border: 1px solid var(--ssp-border);
    padding: 27px 10px;
    padding-right: 40px;
    padding-left: 25px;
    margin-bottom: 20px;
}

#myProfile .myProfilewrapper .myprofile-formGroup h5.form-history-title {
    text-align: left;
    margin-bottom: 24px;
    font-size: 18px;
    font-weight: 700;
    color: #25282B;
    padding-bottom: 12px;
    border-bottom: 3px solid var(--ssp-primary);
    display: inline-block;
}

/* Modern profile detail rows (MyDetails partial) */
#myProfile .mydetails-group form .d-flex.justify-content-between {
    background: #FFFFFF;
    border-radius: 8px;
    padding: 14px 20px;
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    align-items: center;
}

#myProfile .mydetails-group form .d-flex.justify-content-between .control-label {
    font-size: 12px;
    font-weight: 700;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0;
    min-width: 120px;
    flex-shrink: 0;
}

#myProfile .mydetails-group form .d-flex.justify-content-between .form-control[readonly] {
    background: transparent;
    border: none;
    box-shadow: none;
    font-size: 15px;
    font-weight: 600;
    color: #25282B;
    padding: 0;
    height: auto;
    text-align: right;
}

/* Modern profile tables (History, Messages) */
#myProfile .table {
    border: none !important;
    border-collapse: separate;
    border-spacing: 0;
}

#myProfile .table thead th {
    background: #FFFFFF;
    border: none !important;
    border-bottom: 2px solid #4A4D4E !important;
    font-size: 11px;
    font-weight: 700;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 12px 16px;
}

#myProfile .table tbody td {
    border: none !important;
    border-bottom: 1px solid var(--ssp-bg-subtle) !important;
    padding: 14px 16px;
    font-size: 14px;
    color: #25282B;
    vertical-align: middle;
}

#myProfile .table tbody tr:hover {
    background: #FFFFFF;
}

#myProfile .table.table-striped tbody tr:nth-of-type(odd) {
    background: transparent;
}

#myProfile .table.table-striped tbody tr:nth-of-type(odd):hover {
    background: #FFFFFF;
}

/* Modern password form fields */
#myProfile .mydetails-group .form-control {
    border: 1px solid #4A4D4E;
    border-radius: 8px;
    padding: 10px 16px;
    font-size: 14px;
    transition: border-color 0.2s;
}

#myProfile .mydetails-group .form-control:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(230,0,0,0.08);
}

/* OTP / Change Password section */
#myProfile .mydetails-group .form-group label {
    font-size: 12px;
    font-weight: 700;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

/* Message filter buttons row */
#myProfile .MyMessages .myProfile-buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

#myProfile .MyMessages .myProfile-buttons .btn-green,
#myProfile .MyMessages .myProfile-buttons .btn-grey {
    border-radius: 8px;
    font-size: 13px;
    padding: 8px 18px;
}

/* DataTables overrides inside profile */
#myProfile .dataTables_wrapper .dataTables_filter input {
    border: 1px solid #4A4D4E;
    border-radius: 8px;
    padding: 6px 12px;
    font-size: 13px;
}

#myProfile .dataTables_wrapper .dataTables_filter input:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(230,0,0,0.08);
    outline: none;
}

#myProfile .dataTables_wrapper .dataTables_length select {
    border: 1px solid #4A4D4E;
    border-radius: 6px;
    padding: 4px 8px;
}

#myProfile .dataTables_wrapper .dataTables_paginate .paginate_button.current {
    background: var(--ssp-primary) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px;
}

#myProfile .dataTables_wrapper .dataTables_paginate .paginate_button:hover {
    background: rgba(230,0,0,0.08) !important;
    color: var(--ssp-primary) !important;
    border: none !important;
    border-radius: 6px;
}


/* ==========================================================================
   LOGIN — Vodacom Tanzania dark + red diagonal, fibre network animation
   ========================================================================== */

body.loginPage {
    background: #25282B;
    min-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    position: relative;
    font-family: 'Open Sans', sans-serif;
}

/* Single scroll surface only. The body owns vertical scrolling when content
   exceeds 100vh; #login-page no longer sets its own overflow-y, which was
   creating a second nested scrollbar on top of the body's. */
#login-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow-x: hidden;
}

/* Pin the floating language selector to the top-right of the viewport — globally,
   not scoped to login. The element is rendered with both classes
   (.language-selector-global.header-lang-wrap), and ssp-theme.css has a global
   .header-lang-wrap { position: relative } that would otherwise pull this floater
   into normal document flow at the bottom of <body>. !important is used because
   the loaded order of theme stylesheets is environment-dependent (bundled vs
   debug-mode separate files) and we don't want the position regressing depending
   on which file wins specificity-by-source-order. */
.language-selector-global.header-lang-wrap,
.language-selector-global {
    position: fixed !important;
    top: 35px !important;
    right: 10px !important;
    bottom: auto !important;
    left: auto !important;
    z-index: 9999 !important;
}

/* ── Dot grid background texture ── */
#login-page .login-dot-grid {
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle, rgba(255,255,255,0.07) 1px, transparent 1px);
    background-size: 28px 28px;
    z-index: 0;
    pointer-events: none;
}

/* ── Fibre network SVG background ── */
#login-page .login-bg-network {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0.07;
    z-index: 0;
    pointer-events: none;
}

/* ── Diagonal red block ── */
#login-page .login-bg-red {
    position: absolute;
    top: 0;
    right: 0;
    width: 52%;
    height: 100%;
    background: #E60000;
    clip-path: polygon(18% 0%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 1;
    pointer-events: none;
}

#login-page .login-bg-red-accent {
    position: absolute;
    top: 0;
    right: 0;
    width: 52%;
    height: 100%;
    background: linear-gradient(160deg, rgba(255,255,255,0.08) 0%, transparent 50%);
    clip-path: polygon(18% 0%, 100% 0%, 100% 100%, 0% 100%);
    z-index: 2;
    pointer-events: none;
}

/* ── Fibre light streaks at the diagonal edge ── */
#login-page .login-fibre-streak {
    position: absolute;
    z-index: 3;
    top: 0;
    bottom: 0;
    left: 47%;
    width: 3px;
    background: linear-gradient(180deg, transparent 0%, rgba(255,255,255,0.9) 30%, rgba(255,255,255,0.6) 60%, transparent 100%);
    filter: blur(1px);
    animation: login-streakPulse 3s ease-in-out infinite;
    pointer-events: none;
}

#login-page .login-fibre-streak-2 {
    position: absolute;
    z-index: 3;
    top: 0;
    bottom: 0;
    left: 48.2%;
    width: 1.5px;
    background: linear-gradient(180deg, transparent 0%, rgba(230,0,0,0.7) 40%, rgba(230,0,0,0.4) 70%, transparent 100%);
    filter: blur(0.5px);
    animation: login-streakPulse 3s ease-in-out 0.8s infinite;
    pointer-events: none;
}

@keyframes login-streakPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 1; }
}

/* ── Gradient vignette ── */
#login-page .login-vignette {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at center, transparent 40%, rgba(0,0,0,0.6) 100%);
    z-index: 4;
    pointer-events: none;
}

/* ── Corner accents ── */
#login-page .login-corner-tl {
    position: absolute;
    top: 3vh;
    left: 3vw;
    width: 2vw;
    height: 2vw;
    border-top: 2px solid rgba(255,255,255,0.2);
    border-left: 2px solid rgba(255,255,255,0.2);
    z-index: 11;
    pointer-events: none;
}

#login-page .login-corner-bl {
    position: absolute;
    bottom: 3vh;
    left: 3vw;
    width: 2vw;
    height: 2vw;
    border-bottom: 2px solid rgba(255,255,255,0.2);
    border-left: 2px solid rgba(255,255,255,0.2);
    z-index: 11;
    pointer-events: none;
}

/* ── Animated visual on the red side (rotating rings + pulsing center) ── */
#login-page .login-visual {
    position: absolute;
    right: 12%;
    top: 50%;
    transform: translateY(-50%);
    width: 340px;
    height: 340px;
    z-index: 5;
    pointer-events: none;
}

#login-page .login-visual .ring-outer {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.12);
    animation: login-rotateSlow 30s linear infinite;
}

#login-page .login-visual .ring-outer::before {
    content: '';
    position: absolute;
    top: -2px;
    left: 30%;
    width: 30%;
    height: 4px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.6), transparent);
    border-radius: 2px;
}

#login-page .login-visual .ring-mid {
    position: absolute;
    top: 15%;
    left: 15%;
    width: 70%;
    height: 70%;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.2);
    animation: login-rotateSlow 20s linear reverse infinite;
}

#login-page .login-visual .ring-mid::before {
    content: '';
    position: absolute;
    top: -2px;
    left: 20%;
    width: 40%;
    height: 3px;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.8), transparent);
    border-radius: 2px;
}

#login-page .login-visual .ring-inner {
    position: absolute;
    top: 25%;
    left: 25%;
    width: 50%;
    height: 50%;
    border-radius: 50%;
    border: 2px solid rgba(255,255,255,0.3);
    animation: login-rotateSlow 12s linear infinite;
}

#login-page .login-visual .center-glow {
    position: absolute;
    top: 35%;
    left: 35%;
    width: 30%;
    height: 30%;
    border-radius: 50%;
    background: radial-gradient(circle at 40% 35%, rgba(255,255,255,0.25), rgba(255,255,255,0.05));
    box-shadow: 0 0 40px rgba(255,255,255,0.15), 0 0 80px rgba(255,255,255,0.05);
    animation: login-centerPulse 3s ease-in-out infinite;
}

/* Orbiting nodes */
#login-page .login-visual .node {
    position: absolute;
    width: 8px;
    height: 8px;
    background: rgba(255,255,255,0.8);
    border-radius: 50%;
    box-shadow: 0 0 10px rgba(255,255,255,0.5);
}

#login-page .login-visual .node-1 { top: -4px; left: 50%; transform: translateX(-50%); }
#login-page .login-visual .node-2 { top: 50%; right: -4px; transform: translateY(-50%); }
#login-page .login-visual .node-3 { bottom: -4px; left: 50%; transform: translateX(-50%); }
#login-page .login-visual .node-4 { top: 50%; left: -4px; transform: translateY(-50%); }
#login-page .login-visual .node-5 { top: 15%; right: 15%; width: 6px; height: 6px; }
#login-page .login-visual .node-6 { bottom: 15%; left: 15%; width: 6px; height: 6px; }

@keyframes login-rotateSlow {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes login-centerPulse {
    0%, 100% { box-shadow: 0 0 40px rgba(255,255,255,0.15), 0 0 80px rgba(255,255,255,0.05); }
    50% { box-shadow: 0 0 60px rgba(255,255,255,0.25), 0 0 120px rgba(255,255,255,0.1); }
}

/* ── Content wrapper ── */
#login-page .login-content {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    width: 100%;
    min-height: 100vh;
    padding: 40px 0;
    position: relative;
    z-index: 10;
}

/* Center content vertically when enough room */
@media (min-height: 700px) {
    #login-page .login-content {
        align-items: center;
        padding: 0;
    }
}

/* ── Frosted glass card ── */
.login-glass-card {
    background: rgba(0, 0, 0, 0.55);
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    padding: 50px 40px;
    max-width: 460px;
    width: 100%;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
    position: relative;
    z-index: 1;
}

/* Logo */
.login-glass-card .loginPage-logo {
    width: 100%;
    text-align: center;
    margin-bottom: 24px;
}

.login-glass-card .loginPage-logo img {
    max-width: 220px;
    width: 100%;
    height: auto;
}

/* Welcome text */
.login-glass-card .loginPage-welcometextBox h4 {
    font-size: 26px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    margin-bottom: 6px;
}

.login-glass-card .loginPage-welcometextBox p {
    font-size: 14px;
    font-weight: 400;
    text-align: center;
    color: rgba(255, 255, 255, 0.55);
    margin-bottom: 30px;
}

/* Labels */
.login-glass-card .loginPage-labels {
    display: flex;
    justify-content: space-between;
    width: 100%;
    align-items: center;
    margin-bottom: 6px;
}

.login-glass-card .loginPage-labels label {
    font-size: 12px;
    font-weight: 600;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0;
}

/* Inputs */
.login-glass-card .input-group {
    margin-bottom: 18px;
    flex-wrap: wrap;
}

.login-glass-card input.form-control {
    width: 100%;
    max-width: 100%;
    height: 50px;
    background: rgba(255, 255, 255, 0.08);
    border: 1px solid rgba(255, 255, 255, 0.15);
    border-radius: 10px;
    color: #fff;
    font-size: 15px;
    padding: 12px 20px;
    transition: border-color 0.2s, box-shadow 0.2s, background 0.2s;
}

.login-glass-card input.form-control::placeholder {
    color: rgba(255, 255, 255, 0.35);
}

.login-glass-card input.form-control:focus {
    background: rgba(255, 255, 255, 0.12);
    border-color: rgba(230, 0, 0, 0.6);
    box-shadow: 0 0 0 3px rgba(230, 0, 0, 0.15);
    outline: none;
    color: #fff;
}

/* Forgot password link */
.login-glass-card .forgotPassword {
    font-size: 12px;
    color: rgba(255, 255, 255, 0.6);
    font-weight: 500;
    transition: color 0.2s;
}

.login-glass-card .forgotPassword:hover {
    color: #fff;
}

/* Password toggle — anchored to the input, not the group, so error messages below don't shift it */
.login-glass-card .input-group {
    position: relative;
}

.login-glass-card .input-group-append {
    position: absolute;
    right: 12px;
    top: 65px; /* matches input height + label-row offset */
    transform: translateY(-100%);
    z-index: 5;
}

.login-glass-card .hidePasswordIconStyle,
.login-glass-card .showPasswordIconStyle {
    /* Override the PNG-based icons with inline SVG eye icons */
    background-color: transparent !important;
    border: none !important;
    width: 36px;
    height: 36px;
    padding: 6px;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
    filter: none;
    background-size: 20px 20px;
    background-position: center;
    background-repeat: no-repeat;
}

.login-glass-card .hidePasswordIconStyle {
    /* Eye-off icon — white SVG for dark glass background */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E");
}

.login-glass-card .showPasswordIconStyle {
    /* Eye icon — white SVG for dark glass background */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E");
}

.login-glass-card .hidePasswordIconStyle:hover,
.login-glass-card .showPasswordIconStyle:hover {
    opacity: 1;
}

/* Change-password / profile screens use the same modern inline-SVG eye
   as the login glass card so the password-visibility affordance is
   consistent across the app. The login card has a dark glass background
   so the SVG stroke there is white; the profile area has a light
   background, so this block re-renders the same icon shapes with a
   dark stroke (#25282B) — otherwise the icon would be invisible against
   the light card. Without this override .profile-input-wrap falls back
   to the legacy .hidePasswordIconStyle PNG (eyeClosed.png, ~77px wide)
   which is the green/oversized eye reported in QA. */
.profile-input-wrap .hidePasswordIconStyle,
.profile-input-wrap .showPasswordIconStyle {
    /* !important on size + background to guarantee the legacy PNG rule
       further down Style.css (.hidePasswordIconStyle at 77px white-bg)
       loses regardless of source-order cascading or any minifier-induced
       quirks in the bundled output. */
    background-color: transparent !important;
    border: none !important;
    width: 36px !important;
    height: 36px !important;
    padding: 6px !important;
    cursor: pointer;
    opacity: 0.7;
    transition: opacity 0.2s;
    filter: none !important;
    background-size: 20px 20px !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}

.profile-input-wrap .hidePasswordIconStyle {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M17.94 17.94A10.07 10.07 0 0 1 12 20c-7 0-11-8-11-8a18.45 18.45 0 0 1 5.06-5.94M9.9 4.24A9.12 9.12 0 0 1 12 4c7 0 11 8 11 8a18.5 18.5 0 0 1-2.16 3.19m-6.72-1.07a3 3 0 1 1-4.24-4.24'/%3E%3Cline x1='1' y1='1' x2='23' y2='23'/%3E%3C/svg%3E") !important;
}

.profile-input-wrap .showPasswordIconStyle {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23333333' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") !important;
}

.profile-input-wrap .hidePasswordIconStyle:hover,
.profile-input-wrap .showPasswordIconStyle:hover {
    opacity: 1;
}

/* Anchor the eye control inside its input wrapper. The legacy PNG used a
   77px-wide span that the parent's flex layout positioned awkwardly; we
   need the new 36px control absolutely positioned so it sits flush at
   the right of the input regardless of the input's width. */
.profile-input-wrap {
    position: relative;
}

.profile-input-wrap .hidePasswordIconStyle,
.profile-input-wrap .showPasswordIconStyle {
    position: absolute;
    right: 6px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

/* Error text */
.login-glass-card .text-danger,
.login-glass-card font[color="red"] {
    color: #E60000 !important;
}

.login-glass-card #statusMessage {
    color: #E60000 !important;
}

/* Validation messages */
.login-glass-card span[style="color:red"] {
    color: #E60000 !important;
}

/* Login button */
.login-glass-card .button-login {
    text-align: center;
    margin-top: 8px;
}

.login-glass-card .btn-login,
.login-glass-card .btn-green {
    width: 100%;
    padding: 14px 40px;
    background: #E60000;
    border-radius: 10px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(230, 0, 0, 0.4);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.login-glass-card .btn-login:hover,
.login-glass-card .btn-green:hover {
    background: #E60000;
    box-shadow: 0 6px 25px rgba(230, 0, 0, 0.5);
    transform: translateY(-2px);
}

.login-glass-card .btn-login:active,
.login-glass-card .btn-green:active {
    transform: translateY(1px);
    box-shadow: 0 3px 10px rgba(230, 0, 0, 0.3);
}

/* Hide old left-panel elements if any remain */
.login-registration-bgd {
    display: none !important;
}

/* Hide loginPage-rightsideBox wrapper — content moved to glass card */
.loginPage-rightsideBox {
    display: contents;
}

.loginPage-rightSide-content {
    display: contents;
}

/* Registration panel (inside glass card) */
.login-glass-card ul#myTab2 {
    border: 0;
    justify-content: center;
    margin-bottom: 20px;
    display: flex;
    gap: 8px;
}

.login-glass-card ul#myTab2 li a {
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    padding: 6px 24px;
    color: rgba(255, 255, 255, 0.7);
    font-size: 14px;
    transition: all 0.2s;
}

.login-glass-card ul#myTab2 .nav-link.active {
    background: #E60000;
    color: #fff;
    border-color: #E60000;
}

/* Non-scoped fallbacks for button-login and btn-login outside glass card */
.button-login {
    text-align: center;
}

.btn-login {
    padding: 14px 40px;
    background: #E60000;
    border-radius: 10px;
    color: #fff;
    font-size: 16px;
    font-weight: 700;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(230, 0, 0, 0.4);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.btn-login:hover {
    background: #E60000;
    box-shadow: 0 6px 25px rgba(230, 0, 0, 0.5);
    transform: translateY(-2px);
}

.btn-login:active {
    transform: translateY(1px);
    box-shadow: 0 3px 10px rgba(230, 0, 0, 0.3);
}


.purchase-wrapper .purchase-box-padding {
    padding: 30px 20px 30px 20px;
}


.filterDiv {
    display: none; /* Hidden by default */
}

/* The "show" class is added to the filtered elements */
.filterDiv.show {
    display: block;
}

/* Style the filter buttons (scoped to filter container) */
#myBtnContainer .btn {
    border: none;
    outline: none;
    background-color: #fff;
    cursor: pointer;
    height: 40px;
    width: 40px;
}

    #myBtnContainer .btn:hover {
        background-color: #fff;
    }


#myBtnContainer {
    width: 272px;
    border: 1px solid var(--ssp-bg-subtle)
}

    #myBtnContainer button {
        display: block;
        width: 270px;
        text-align: left;
        font-size: 16px;
        color: #4A4D4E;
        background-color: #fff;
        border-radius: 0;
        border-bottom: 1px solid var(--ssp-bg-subtle)
    }

        #myBtnContainer button.active {
            background-color: #FFFFFF;
            border-left: 4px solid #e60000;
            font-size: 16px;
            color: #e60000;
            font-weight: bold;
        }

.btn:focus {
    outline: 0;
    box-shadow: none;
}

.filterproductsBox h4 {
    font-size: 18px;
    font-weight: bold;
    color: #e60000;
    margin-top: 40px;
    margin-bottom: 30px;
}

.filterproductsBox p {
    font-size: 14px;
    color: #4A4D4E;
    line-height: 24px;
}

.filterDiv {
    text-align: center;
    border: 1px solid var(--ssp-border);
    margin-bottom: 40px;
    padding-top: 30px;
    padding-bottom: 40px;
    padding-left: 30px;
    padding-right: 30px;
    height: 375px;
}

    .filterDiv .smartBox {
        margin-bottom: 30px;
    }

        .filterDiv .smartBox span {
            font-size: 39px;
            background: #EB9700;
            padding: 15px;
            border-radius: 50%;
            font-weight: bold;
            color: #fff;
        }

.filterproductsSpecialBox h5 {
    font-weight: bold;
    font-size: 14px;
    color: #e60000;
    line-height: 14px;
    margin-bottom: 30px;
}

.filterproductsSpecialBox p {
    font-size: 14px;
    color: #4A4D4E;
    margin-bottom: 5px;
    position: relative;
    padding-left: 60px;
    text-align: left;
    line-height: 18px;
}

.filter-rightSide-textBox {
    margin-bottom: 30px;
}

.filter-smart-button {
    width: 128px;
    height: 34px;
    background: #e60000;
    line-height: 34px;
    border-radius: 5px;
    text-align: center;
    margin: 0 auto;
    color: #fff;
    font-weight: bold;
    font-size: 14px;
}

.filterproductsSpecialBox .filter-rightSide-textBox p::before {
    background-image: url(../img/specialBox-nikeIcon.png);
    width: 12px;
    height: 11px;
    display: block;
    position: absolute;
    left: 10px;
    content: '';
    top: 6px;
}

.filter-box {
    margin-left: 30px;
    margin-bottom: 30px;
}

.purchase-leftSide-priceSliderBox,
.purchase-leftSide-list {
    width: 272px;
    border: 1px solid var(--ssp-border);
    border-radius: 5px;
}

.purchase-checkBox-title {
    display: block;
    width: 270px;
    text-align: left;
    font-size: 16px;
    font-weight: bold;
    color: #e60000;
    padding: 14px 20px;
    background: #FFFFFF;
    border-left: 4px solid #e60000;
}

.purchase-leftSide-checkBox {
    display: block;
    width: 270px;
    text-align: left;
    font-size: 16px;
    color: #4A4D4E;
    background-color: #fff;
    border-radius: 0;
}

.purchase-leftSide-priceSliderBox .card-body,
.purchase-leftSide-list .card-body {
    border: 0;
}

    .purchase-leftSide-list .card-body label {
        font-size: 12px;
        color: #25282B;
    }

    .purchase-leftSide-list .card-body .form-check {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        margin-bottom: 10px;
    }

        .purchase-leftSide-list .card-body .form-check input {
            margin-top: 0;
        }

.purchase-leftSide-filter1Box,
.purchase-leftSide-priceSliderBox {
    margin-bottom: 20px;
}

.show-more-products {
    text-align: center;
}

    .show-more-products a {
        padding: 16px 36px;
        text-align: center;
        margin: 0 auto;
        background: #A8B400;
        color: #fff;
        border-radius: 5px;
    }

/* purchase titleBox - handled by modern override above */

.range-slider {
    position: relative;
    height: 80px;
}

.irs-min,
.irs-max {
    visibility: hidden;
    display: none;
}

.irs--round .irs-bar {
    background-color: #e60000;
}

.irs--round .irs-handle {
    top: 33px;
    width: 10px;
    height: 10px;
    border: 4px solid #e60000;
    background-color: #e60000;
    border-radius: 24px;
    box-shadow: none;
}

.irs--round .irs-from:before,
.irs--round .irs-to:before {
    display: none;
}

.irs--round .irs-from,
.irs--round .irs-to {
    top: 50px;
    background-color: transparent;
    color: #000;
}

    .irs--round .irs-from::after {
        content: '€';
        visibility: visible;
        display: block;
        position: absolute;
        padding-left: 25px;
        top: 3px;
    }

    .irs--round .irs-to::after {
        content: '€';
        visibility: visible;
        display: block;
        position: absolute;
        padding-left: 25px;
        top: 3px;
    }

@media (max-width: 1200px) {
    .purchase-checkBox-title {
        width: 200px;
    }

    .purchase-leftSide-priceSliderBox, .purchase-leftSide-list {
        width: 202px;
    }

    #myBtnContainer button {
        width: 200px;
    }

    #myBtnContainer {
        width: 202px;
    }

    .filterproductsSpecialBox p {
        padding-left: 40px;
    }

    .filterDiv {
        height: auto;
        padding-left: 10px;
        padding-right: 10px;
    }

    .filterproductsBox h4 {
        margin-bottom: 35px;
    }
}

@media (max-width: 1024px) {
    #billing .billing-wrapper .billing-leftSideBox ul li,
    #billing .billing-wrapper .billing-monthBox select {
        max-width: 100%;
    }

    #billing .billing-wrapper .billing-box-padding {
        padding: 40px;
    }

    #billing .billing-wrapper .tab-content {
        width: 100%;
        margin-left: 0;
        margin-top: 50px;
    }

    #billing .billing-wrapper .billing-iconsBox {
        flex-direction: row;
        margin-top: 30px;
    }
}

@media (max-width: 991px) {
    .login-glass-card {
        margin: 20px;
        padding: 40px 30px;
    }

    /* Hide diagonal red and visual on small screens — full dark bg */
    #login-page .login-bg-red,
    #login-page .login-bg-red-accent,
    #login-page .login-fibre-streak,
    #login-page .login-fibre-streak-2,
    #login-page .login-visual {
        display: none;
    }

    #myProducts .myProducts-wrapper .myProducts-rightSide-title {
        margin-top: 30px;
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons {
        justify-content: center;
    }

        #myProducts .myProducts-wrapper .myproducts-rightSide-icons a {
            margin-right: 50px;
        }

    #myProfile .myProfilewrapper ul.nav-tabs {
        flex-direction: row;
        justify-content: center;
        border-right: none;
        border-bottom: 1px solid #4A4D4E;
        gap: 0;
    }

    #myProfile .myProfilewrapper ul.nav-tabs li a {
        border-radius: 8px 8px 0 0;
        padding: 10px 16px;
        text-align: center;
    }

    #myProfile .myProfilewrapper .nav-tabs .nav-link.active {
        border-left: none;
        border-bottom: 3px solid var(--ssp-primary);
        padding-left: 16px;
    }

    #myProducts .myProducts-wrapper .myProducts-box-padding {
        padding: 40px;
    }

    .filterproductsBox h4 {
        margin-bottom: 30px;
    }

    .purchase-leftSide-scrollBox {
        display: flex;
        justify-content: space-between;
    }

    .purchase-leftSide-checkBox,
    .purchase-leftSide-list,
    .purchase-checkBox-title {
        width: auto;
    }

    .filter-box {
        margin-left: 0;
    }
}

@media (max-width: 768px) {
    #myProducts .myProducts-wrapper .myproducts-rightSide-icons a {
        margin-right: 20px;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes {
        display: block;
    }

        #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-textBox img {
            float: none;
            margin-bottom: 20px;
            margin-right: 0;
        }

    #myProfile .myProfilewrapper .form-check {
        padding-right: 25px;
    }

    #myProfile .myProfilewrapper .form-control-lg {
        text-align: center;
        margin-right: 15px;
    }

    .myProfile-history-checkboxes-textBox {
        text-align: center;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-textBox p.secondp {
        width: 100%;
        margin-bottom: 30px;
    }

    #myProfile .myProfilewrapper .myProfile-history-checkboxes .myProfile-history-checkboxes-status h4 {
        text-align: center;
    }

    #myProducts .myProducts-wrapper .myProducts-rightSide-title p {
        width: auto;
        line-height: 28px;
    }

    #myProducts .myProducts-wrapper .myproducts-rightSide-icons {
        padding: 0;
    }

    .purchase-leftSide-scrollBox {
        display: block;
        margin-bottom: 50px;
    }

    .purchase-leftSide-priceSliderBox {
        width: auto;
    }
}


@media (max-width: 480px) {
    #billing .billing-wrapper .button-pay-billing span {
        display: block;
        margin-bottom: 30px;
    }

    .login-glass-card {
        margin: 16px;
        padding: 30px 20px;
        border-radius: 16px;
    }
}

.has-error .help-block {
    color: red;
}

.has-danger .help-block {
    color: red;
}




.has-error .form-control, .has-error .form-control:active, .has-error .form-control:focus, .has-error .form-control:active:focus {
    border-color: red;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}



.has-error .required {
    background-color: red;
}



.required {
    margin-left: 5px;
    width: 6px;
    height: 6px;
    background: #00B0CA;
    display: inline-block;
    vertical-align: middle;
    -webkit-border-radius: 15px;
    -moz-border-radius: 15px;
    border-radius: 15px;
}


/* mobile nav */
#myAccounts,
#billing,
#myProducts,
#myProfile,
#purchase {
    position: relative;
    overflow: hidden;
}

.nav-icon {
    display: none;
}

.responsive-nav {
    position: absolute;
    right: -320px;
    top: 80px;
    width: 300px;
    background: #fff;
    height: 100vh;
    z-index: 2;
    transition: 0.2s linear all;
    overflow: hidden;
}

    .responsive-nav.openned {
        right: 0;
    }

    .responsive-nav .header-leftSide .header-welcomeText p {
        font-size: 16px;
        color: #e60000;
        line-height: 20px;
        margin-bottom: 0;
        font-weight: bold;
    }

    .responsive-nav .header-logo {
        background-image: url(../Content/img/Vodacom-Logo.svg);
        width: 135px;
        height: 53px;
        margin-right: 40px;
        background-repeat: no-repeat;
        margin: 0 auto;
        margin-bottom: 30px;
    }

    .responsive-nav .header-rightSide .header-datetime-text span {
        font-size: 12px;
        line-height: 20px;
        color: #000;
        font-weight: bold;
        margin-bottom: 30px;
    }

    .responsive-nav .header-welcomeText,
    .responsive-nav .header-datetime-text {
        margin-bottom: 30px;
        text-align: center;
    }

    .responsive-nav .header-rightSide .header-supportIcon {
        background-image: url(../Content/img/headset-icon.png);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .responsive-nav .header-rightSide .header-envelopIcon {
        background-image: url(../Content/img/envelop.png);
        width: 26px;
        height: 26px;
        margin-right: 16px;
        background-repeat: no-repeat;
        background-size: contain;
        position: relative;
        display: inline-block;
    }

        .responsive-nav .header-rightSide .header-envelopIcon:hover {
            filter: brightness(0) saturate(100%) invert(12%) sepia(97%) saturate(6264%) hue-rotate(358deg) brightness(94%) contrast(112%);
        }


    .responsive-nav .header-rightSide .header-icons {
        display: flex;
        justify-content: center;
        align-items: center;
        align-self: center;
        gap: 8px;
    }

    .responsive-nav .header-rightSide .header-logoutIcon {
        background-image: url(../Content/img/logout-icon.png);
        width: 24px;
        height: 24px;
        background-repeat: no-repeat;
        background-size: contain;
    }

    .responsive-nav .header-rightSide .header-homeIcon {
        background-image: url(../Content/img/billing-homeIcon.png);
        width: 24px;
        height: 24px;
        margin-right: 16px;
        background-repeat: no-repeat;
        background-size: contain;
    }

.nav-icon {
    width: 30px;
    height: 25px;
}

    .nav-icon span {
        display: block;
        width: 100%;
        height: 5px;
        border-radius: 3px;
        margin-bottom: 5px;
        background: #e60000;
    }

#nav-icon span:last-of-type {
    margin-bottom: 0;
}

@media (max-width: 1024px) {
    #myAccounts, #billing, #myProducts, #myProfile, #purchase {
        overflow-x: hidden;
        overflow-y: auto;
    }

    .filter-box {
        margin-bottom: 0;
    }
}

@media (max-width: 991px) {
    .nav-icon {
        display: block;
    }

    #header .header-leftSide,
    #header .header-rightSide {
        display: none;
    }

    .filter-box {
        margin-top: 30px;
    }
}

.BtnGradient {
    background: #820000;
    background: linear-gradient(0deg, #820000 12%, #E60000 70%);
    border: 2px solid rgba(255, 255, 255, 0.4);
    padding: 10px 20px;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    transition: box-shadow 0.3s ease, background 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
}

.BtnGradientSecondary {
    background: #E60000;
    background: linear-gradient(0deg, #E60000 12%, #E60000 70%);
}

    /* Button Active State */
    .BtnGradient:active, .BtnGradientSecondary:active {
        background: #820000;
        background: linear-gradient(0deg, #820000 12%, #820000 70%);
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
    }

    /* Button Hover State for better effect */
    .BtnGradient:hover, .BtnGradientSecondary:hover {
        box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
    }

.numberCircle {
    background-color: var(--ssp-primary);
    border-radius: 50%;
    color: #fff;
    padding: 0.4rem;
    width: 50%;
}

/*admin slider section*/

.Slkbtn {
    width: 35px;
    height: 35px;
    border-radius: 52%;
    border: 3px solid black;
    background-size: contain;
}

.Slkbtn:hover {
    border-color: var(--ssp-primary);
    transform: scale(1.2);
}

.btnNavNext {
    background-image: url('img/nextbtn.png');
    /*background-image: url(../../../../Content/img/nextBtn.png);*/
    position: relative;
    left: 97%;
    bottom: 101px;
    z-index: 10;
}

.btnNavPrev {
    background-image: url('img/prevbtn.png');
    /*background-image: url(../../../../Content/img/prevBtn.png);*/
    position: relative;
    top: 100px;
    z-index: 10;
}


/*admin slider section*/
/* peach payment card widget slider */
.wpwl-form {
    background: var(--ssp-bg-subtle);
    margin-top: 2rem;
}

.wpwl-label-brand {
    display: none
}

.wpwl-form-card {
    background: var(--ssp-bg-subtle);
    border: 0px solid transparent
}


.wpwl-form-card {
    background-color: white;
}


.wpwl-control, input.wpwl-control {
    background: white;
    border: 1px solid #4A4D4E;
    box-shadow: none;
    border-radius: 0px;
    font-family: "ff-good-headline-web-pro-con", "Pathway Gothic One", sans-serif;
    text-transform: none;
    padding: 10px;
    font-size: 18px;
    height: 50px;
}

.input-text:focus, input[type=text]:focus, input[type=tel]:focus, input[type=url]:focus, input[type=password]:focus, input[type=search]:focus, textarea:focus {
    background-color: white;
}

.wpwl-brand-SOFORTUEBERWEISUNG, .wpwl-brand-GIROPAY {
    cursor: pointer
}

.wpwl-brand, .wpwl-img {
    margin: 0 0 0 auto;
}


/* peach payment card widget slider */


/*payment status page stling*/

.filtered {
    filter: hue-rotate(-100deg) saturate(2);
}

h4#text:first-letter {
    text-transform: uppercase;
}

.Bcg {
    /*background-image: url("../../Content/img/welcome-bgd.png");*/
    background-image: url('img/welcome-bgd.png');
}


/*payment status page stling*/


/* payment option */

.demoStyle {
    position: relative;
    top: -170px;
    left: 100px;
    background-color: #E60000;
}

/* payment option */

.login-logo {
    width: 500px !important; /*css style change*/
    height: 200px !important; /*css style change*/
    padding: 20px; /*css style change*/
}


.pagerHist > a {
    background-color: #007C92;
    border: none;
    color: white;
    padding: 7px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 14px;
    margin: 4px 3px;
    border-radius: 4px;
}

.selectedPageNumber {
    background-color: black;
    color: white;
    border-radius: 50%;
    padding: 5px 10px;
    margin-left: 10px;
    margin-right: 10px;
    text-align: center; /* Center the text horizontally */
    font-weight: bold; /* Make the text bold */
    display: flex;
    justify-content: center; /* Center the text horizontally */
    align-items: center; /* Center the text vertically */
}


.backgroundblock {
    position: fixed;
    top: 0;
    left: 0;
    background-color: black;
    z-index: 99;
    opacity: 1;
    filter: opacity(80);
    min-height: 0%;
    width: 0%;
}

.loadingscreen {
    font-family: Arial;
    font-size: 15pt;
    opacity: 0.8;
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    background-color: White;
    padding-top: 10%;
    z-index: 999;
}

.loadingscreen img {
    width: 80px;
    height: 80px;
}


.showPasswordIconStyle {
    background-image: url(../Content/img/eyeOpen.png);
    width: 77px;
    height: auto;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    padding: 18px 20px;
    background-color: #fff;
    border: 1px solid #4A4D4E;
    border-radius: .25rem;

}

.hidePasswordIconStyle {
    background-image: url(../Content/img/eyeClosed.png);
    width: 77px;
    height: auto;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    padding: 18px 20px;
    background-color: #fff;
    border: 1px solid #4A4D4E;
    border-radius: .25rem;
}



.EditNotAllowed {
    pointer-events: none;
}


.userCreationTitle {
    border-bottom: 6px solid #e60000;
    padding-bottom: 15px;
    padding-left: 1.7rem;
    padding-right: 1.7rem;
    font-weight: bold;
    line-height: 14px;
    font-size: 1rem;
    margin-top: .8rem;
    margin-bottom: 2.3rem;
    display: inline-block;
}


.btn-signup {
    padding: 8px 16px;
    background: #820000;
    border-radius: 5px;
    color: #fff;
    font-size: 16px;
    font-weight: bold;
}
.secondHeading{
    text-align: center;
    margin: 25px 0;
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    color: #000;
}

.inboxImg {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

.btn-signup-outline {
    padding: 10px 20px;
    border: 2px solid #820000;
    border-radius: 8px;
    color: #820000;
    background: transparent;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    cursor: pointer;
}

    /* Hover effect */
    .btn-signup-outline:hover {
        background: #820000;
        color: #fff;
        box-shadow: 0 4px 10px rgba(168, 180, 0, 0.4);
        transform: translateY(-1px);
    }

    /* Active click effect */
    .btn-signup-outline:active {
        transform: translateY(1px);
        box-shadow: 0 2px 5px rgba(168, 180, 0, 0.3);
    }




.switchToggle {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

    .switchToggle input {
        display: none;
    }

.sliderToggle {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #4A4D4E;
    transition: .4s;
}

    .sliderToggle:before {
        position: absolute;
        content: "";
        height: 26px;
        width: 26px;
        left: 4px;
        bottom: 4px;
        background-color: white;
        transition: .4s;
    }

/* include generated hidden field here */
input[type="checkbox"]:checked + input[type="hidden"] + .sliderToggle,
input[type="checkbox"]:checked + .sliderToggle {
    background-color: #820000;
}
/* include generated hidden field here */
input[type="checkbox"] + input[type="hidden"] + .sliderMode,
input[type="checkbox"] + .sliderMode {
    background-color: #E60000;
}
/* include generated hidden field here */
input[type="checkbox"]:focus + input[type="hidden"] + .sliderToggle,
input[type="checkbox"]:focus + .sliderToggle {
    box-shadow: 0 0 1px var(--ssp-primary);
}

/* include generated hidden field here */
input[type="checkbox"]:checked + input[type="hidden"] + .sliderToggle:before,
input[type="checkbox"]:checked + .sliderToggle:before {
    transform: translateX(26px);
}

/* Rounded sliders */
.sliderToggle.roundToggle {
    border-radius: 34px;
}

    .sliderToggle.roundToggle:before {
        border-radius: 50%;
    }


.searchResearch {
    margin-top: -5px;
    margin-left: -5px;
    height: 40px;
    width: 40px;
}


.scrollit {
    overflow: scroll;
    height: 100px;
}

/* Define the keyframes for the shake animation */
@keyframes shake {
    0% {
        transform: translateX(0);
    }

    10%, 30%, 50%, 70%, 90% {
        transform: translateX(-10px);
    }

    20%, 40%, 60%, 80% {
        transform: translateX(10px);
    }

    100% {
        transform: translateX(0);
    }
}

/* Style for the box element */
.box {
    display: inline-block;
    padding: 20px;
    font-size: 24px;
    background-color: var(--ssp-bg-subtle);
    border: 1px solid var(--ssp-border);
    border-radius: 5px;
    margin-bottom: 20px;
}

        .slick-next.slick-arrow:hover::before {
            color: #820000 !important;
        }
#headerNew {
    z-index: 997;
    transition: all 0.5s;
    padding: 8px 0;
    background-image: linear-gradient(#A8B400, #fff, #00B0CA);
    height: 80px;
    display: flex;
    margin-bottom: 60px;
}
/* Shake animation class */
.shake {
    animation: shake 0.5s ease-in-out;
}

#headerNew {
    z-index: 997;
    transition: all 0.5s;
    padding: 8px 0;
    background-image: linear-gradient(#A8B400, #fff, #00B0CA);
    height: 80px;
    display: flex;
    margin-bottom: 60px;
}

.retryMessage {
    font-size: 16px !important;
}

.btn-cancel {
    background: linear-gradient(135deg, #E60000, #820000);
    color: #fff !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(230, 0, 0, 0.4);
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

    /* Hover */
    .btn-cancel:hover {
        background: linear-gradient(135deg, #E60000, #820000);
        box-shadow: 0 6px 12px rgba(230, 0, 0, 0.5);
        transform: translateY(-2px);
    }

    /* Active */
    .btn-cancel:active {
        transform: translateY(1px);
        box-shadow: 0 3px 6px rgba(230, 0, 0, 0.4);
    }

/* ==========================================================
   SUBSCRIPTIONS PAGE — Modern Restyle
   ========================================================== */

/* Wrapper cleanup */
#myProducts .myProducts-wrapper {
    padding: 0;
}

#myProducts .myProducts-wrapper .container {
    max-width: 1200px;
}

/* Left sidebar — clean card look */
.borderBox {
    border: none !important;
    padding: 0 !important;
    background: transparent;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox {
    height: auto;
    max-height: 420px;
    overflow-y: auto;
    padding: 0;
    scrollbar-width: thin;
    scrollbar-color: var(--ssp-primary) var(--ssp-bg-subtle);
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox::-webkit-scrollbar {
    width: 4px;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox::-webkit-scrollbar-thumb {
    background: var(--ssp-primary);
    border-radius: 4px;
}

/* Subscription category headers */
#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle {
    border-left: 3px solid var(--ssp-primary);
    background: var(--ssp-bg-subtle);
    padding: 10px 16px;
    border-radius: 0 6px 6px 0;
    margin-bottom: 4px;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle p {
    font-size: 12px;
    font-weight: 700;
    color: #4A4D4E;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0;
}

/* Subscription list items */
#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul {
    margin: 0 0 12px 0;
    padding: 0;
    list-style: none;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul li {
    margin-bottom: 2px;
    font-size: 14px;
    line-height: 1.4;
}

.sub-link {
    display: block;
    padding: 10px 16px;
    color: #25282B !important;
    border-radius: 6px;
    transition: all 0.15s ease;
    font-weight: 500;
}

.sub-link:hover {
    background: rgba(var(--ssp-primary-rgb), 0.06);
    color: var(--ssp-primary) !important;
}

/* Right side detail panel */
.rightSide-padding {
    padding: 0 0 0 24px !important;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title {
    margin-top: 0;
    margin-bottom: 8px;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title p {
    font-size: 18px;
    font-weight: 700;
    color: #25282B;
    margin: 0;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title hr {
    border-top: 2px solid var(--ssp-primary);
    opacity: 0.3;
    margin: 12px 0;
}

.myproducts-rightSide-underTitleLine {
    display: none;
}

/* Data rows — modern key-value layout */
.data-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 14px 0;
    border-bottom: 1px solid var(--ssp-bg-subtle);
    gap: 16px;
}

.data-row:last-child {
    border-bottom: none;
}

.data-row .data-label {
    font-size: 13px;
    font-weight: 700;
    color: #25282B;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    flex-shrink: 0;
    min-width: 140px;
}

.data-row .data-value {
    font-size: 14px;
    font-weight: 500;
    color: #4A4D4E;
    text-align: right;
}

/* Status badges */
.data-row .badge {
    font-size: 11px;
    font-weight: 600;
    padding: 5px 12px;
    border-radius: 20px;
    letter-spacing: 0.3px;
}

/* View Products button */
.button-buyMoreProducts {
    background: var(--ssp-primary);
    border-radius: 8px;
    padding: 0 24px;
    height: 44px;
    max-width: 200px;
    box-shadow: 0 2px 8px rgba(var(--ssp-primary-rgb), 0.3);
    float: right;
    margin: 24px 0;
}

.button-buyMoreProducts:hover {
    background: var(--ssp-primary-dark);
}

.button-buyMoreProducts a {
    font-size: 13px;
    letter-spacing: 0.3px;
}

/* Reactivate button */
#ReactivateSub,
.reactivate-btn {
    background: #A8B400;
    border-color: #A8B400;
    border-radius: 6px;
    padding: 5px 14px;
    font-size: 12px;
    font-weight: 600;
}

#ReactivateSub:hover,
.reactivate-btn:hover {
    background: #A8B400;
    border-color: #A8B400;
}

/* Floating action button — rethemed */
.floating-btn {
    width: 56px;
    height: 56px;
    background: var(--ssp-primary) !important;
    box-shadow: 0 4px 16px rgba(var(--ssp-primary-rgb), 0.4);
}

.floating-btn:hover {
    box-shadow: 0 6px 24px rgba(var(--ssp-primary-rgb), 0.5);
}

.option-btn:hover {
    border-color: var(--ssp-primary);
}

.option-btn.option-1:hover {
    border-color: var(--ssp-primary);
    background: rgba(230, 0, 0, 0.06);
}

/* Search bar refinements */
.mod-search {
    gap: 6px;
}

.mod-search .form-control {
    height: 42px;
    border-radius: 8px;
}

.mod-search .btn {
    height: 42px;
    width: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding: 0;
    flex-shrink: 0;
}

/* No subscriptions message */
#myProducts .d-flex.justify-content-center.text-danger {
    color: #4A4D4E !important;
    font-size: 14px;
    padding: 40px 0;
}

/* ==========================================================
   SUBSCRIPTIONS PAGE — Mobile Responsive
   ========================================================== */
@media (max-width: 991px) {
    /* Stack columns vertically */
    #myProducts .col-lg-5.borderBox {
        border: none !important;
        padding: 0 !important;
        margin-bottom: 16px;
    }

    #myProducts .col-lg-7.rightSide-padding {
        padding: 0 !important;
    }

    .rightSide-padding {
        padding: 0 !important;
    }

    #myProducts .myProducts-wrapper .myProducts-box-padding {
        padding: 16px !important;
    }

    #myProducts .myProducts-wrapper .myProducts-rightSide-title {
        margin-top: 16px;
    }

    /* Subscription list collapses to horizontal scroll or accordion feel */
    #myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox {
        max-height: 250px;
    }
}

@media (max-width: 767px) {
    /* Full-width on mobile */
    #myProducts .myProducts-wrapper .myProducts-box-padding {
        padding: 12px !important;
        border-radius: 10px;
    }

    .titleBox {
        padding: 0 0 12px 0 !important;
    }

    .titleBox p {
        font-size: 18px !important;
    }

    .titleBox a {
        width: 32px;
        height: 32px;
        border-radius: 8px;
    }

    /* Search bar full width */
    .mod-search {
        margin-bottom: 12px;
    }

    .mod-search .form-control {
        font-size: 14px;
        height: 40px;
    }

    .mod-search .btn {
        height: 40px;
        width: 40px;
    }

    /* Left sidebar subscription list */
    #myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox {
        max-height: 200px;
        margin-bottom: 8px;
    }

    .sub-link {
        padding: 10px 14px;
        font-size: 13px;
    }

    /* Data rows become stacked on small screens */
    .data-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
        padding: 12px 0;
    }

    .data-row .data-label {
        min-width: 0;
        font-size: 12px;
    }

    .data-row .data-value {
        text-align: left;
        font-size: 14px;
        width: 100%;
    }

    /* View Products button */
    .button-buyMoreProducts {
        float: none;
        max-width: 100%;
        width: 100%;
        margin: 16px 0;
    }

    /* Floating button */
    .floating-btn-container {
        bottom: 20px;
        right: 16px;
    }

    .floating-btn {
        width: 50px;
        height: 50px;
        font-size: 20px;
    }

    .option-btn {
        width: 180px;
        padding: 10px 14px;
        font-size: 13px;
    }

    .options-menu {
        bottom: 65px;
    }
}

@media (max-width: 480px) {
    #myProducts .myProducts-wrapper .myProducts-box-padding {
        padding: 10px !important;
    }

    .data-row .data-label {
        font-size: 11px;
    }

    .data-row .data-value {
        font-size: 13px;
    }

    .floating-btn-container {
        bottom: 16px;
        right: 12px;
    }
}



/* MPesa PayBill "payment pending" banner on HomePage — set via TempData. */
.hp-paybill-banner {
    margin: 16px 16px 0;
    border-radius: 8px;
    font-weight: 600;
}


.cardCustStyle {
border: 2px double green;
box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
}


.MultiCarousel {
float: left;
overflow: hidden;
padding: 15px;
width: 100%;
position: relative;
}

.MultiCarousel .MultiCarousel-inner {
transition: 1s ease all;
float: left;
}

.MultiCarousel .MultiCarousel-inner .item {
float: left;
}

.MultiCarousel .MultiCarousel-inner .item > div {
text-align: center;
padding: 10px;
margin: 10px;
background: var(--ssp-bg-subtle);
color: #4A4D4E;
}

.MultiCarousel .leftLst, .MultiCarousel .rightLst {
position: absolute;
border-radius: 50%;
top: calc(50% - 20px);
}

.MultiCarousel .leftLst {
left: 0;
}

.MultiCarousel .rightLst {
right: 0;
}

.MultiCarousel .leftLst.over, .MultiCarousel .rightLst.over {
    pointer-events: none;
    background: #4A4D4E;
}





.triangle-left {
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-right: 50px solid #4A4D4E;
    border-bottom: 25px solid transparent;
}

.shape {
    border-style: solid;
    border-top: 25px solid transparent;
    border-right: 50px solid #4A4D4E;
    border-bottom: 25px solid transparent;
    /* padding: 8px;*/
    padding-right: 8px;
    float: right;
    height: 0px;
    width: 0px;
    /*-ms-transform: rotate(360deg);*/ /* IE 9 */
    /*-o-transform: rotate(360deg);*/ /* Opera 10.5 */
    /*-webkit-transform: rotate(360deg);*/ /* Safari and Chrome */
    /*transform: rotate(360deg);*/
}

.listing {
    background: #fff;
    border: 1px solid var(--ssp-border);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
    margin: 15px 0;
    overflow: hidden;
}

    .listing:hover {
        -webkit-transform: scale(1.1);
        -moz-transform: scale(1.1);
        -ms-transform: scale(1.1);
        -o-transform: scale(1.1);
        transform: rotate scale(1.1);
        -webkit-transition: all 0.4s ease-in-out;
        -moz-transition: all 0.4s ease-in-out;
        -o-transition: all 0.4s ease-in-out;
        transition: all 0.4s ease-in-out;
        cursor: pointer;
    }


    /*process checkout page*/
.shape {
    border-color: rgba(255,255,255,0) #E60000 rgba(255,255,255,0) rgba(255,255,255,0);
    /*-ms-transform: rotate(30deg);*/ /* IE 9 */
    /*-o-transform: rotate(360deg);*/ /* Opera 10.5 */
    /*-webkit-transform: rotate(30deg);*/ /* Safari and Chrome */
    /*transform: rotate(90deg);*/
}

.listing-radius {
    border-radius: 7px;
}

.listing-danger {
    border-color: #E60000;
}

    .listing-danger .shape {
        border-color: transparent #E60000 transparent transparent;
    }

.listing-success {
    border-color: #A8B400;
}

    .listing-success .shape {
        border-color: transparent #A8B400 transparent transparent;
    }

.listing-default {
    border-color: #4A4D4E;
}

    .listing-default .shape {
        border-color: transparent #4A4D4E transparent transparent;
    }

.listing-primary {
    border-color: #00B0CA;
}

    .listing-primary .shape {
        border-color: transparent #007C92 transparent transparent;
    }

.listing-info {
    border-color: #00B0CA;
}

    .listing-info .shape {
        border-color: transparent #00B0CA transparent transparent;
    }

.listing-warning {
    border-color: #EB9700;
}

    .listing-warning .shape {
        border-color: transparent #EB9700 transparent transparent;
    }

.shape-text {
    color: #fff;
    font-size: 12px;
    font-weight: bold;
    position: relative;
    right: -30px;
    top: -10px;
    white-space: nowrap;
    /*-ms-transform: rotate(30deg);*/ /* IE 9 */
    /*-o-transform: rotate(360deg);*/ /* Opera 10.5 */
    /*-webkit-transform: rotate(30deg);*/ /* Safari and Chrome */
    /*transform: rotate(30deg);*/
}

.bundleWit {
    position: relative;
    right: -45px;
    top: 0px;
    white-space: nowrap;
}

.hotBundle {
    position: relative;
    right: -40px;
    top: -10px;
    white-space: nowrap;
}

.listing-content {
    /*padding: 0 20px 10px;*/
    margin: 0 0 24px 0;
    padding-top: 35px;
}

section.pricingDetails {
    /*      background: #00B0CA;
        background: linear-gradient(to right, #A8B400, #A8B400);*/
    background-image: url("../Content/img/PurchaseOptions-BG2.PNG");
    object-fit: cover;
    /*object-position: 15% 30%;*/
    background-size: 100% 100%;
    background-position-y: -12%;
    background-repeat: no-repeat;
    /*style ="background-color: #A8B400;"*/
}

/*process checkout page*/

/*purchase details*/

section.pricing {
    /*      background: #00B0CA;
        background: linear-gradient(to right, #A8B400, #A8B400);*/
    background-image: url("../Content/img/PurchaseOptions-BG.PNG");
    object-fit: cover;
    /*object-position: 15% 30%;*/
    background-size: 100% 100%;
    background-position-y: -12%;
    background-repeat: no-repeat;
}

.pricing .card {
    border: none;
    border-radius: 1rem;
    transition: all 0.2s;
    box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
}

.pricing hr {
    margin: 1.5rem 0;
}

.pricing .card-title {
    margin: 0.5rem 0;
    font-size: 0.9rem;
    letter-spacing: .1rem;
    font-weight: bold;
}

.pricing .card-price {
    font-size: 3rem;
    margin: 0;
}

    .pricing .card-price .period {
        font-size: 0.8rem;
    }

.pricing ul li {
    margin-bottom: 1rem;
}

.pricing .text-muted {
    opacity: 0.7;
}

.pricing .btn {
    font-size: 80%;
    border-radius: 5rem;
    letter-spacing: .1rem;
    font-weight: bold;
    padding: 1rem;
    opacity: 0.7;
    transition: all 0.2s;
}

/* Hover Effects on Card */

@media (min-width: 992px) {
    .pricing .card:hover {
        margin-top: -.25rem;
        margin-bottom: .25rem;
        box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.3);
    }

        .pricing .card:hover .btn {
            opacity: 1;
        }
}




/*purchase details*/
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switch input {
    display: none;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #4A4D4E;
    transition: .4s;
}

    .slider:before {
        position: absolute;
        content: "";
        height: 26px;
        width: 26px;
        left: 4px;
        bottom: 4px;
        background-color: white;
        transition: .4s;
    }

/* include generated hidden field here */
input[type="checkbox"]:checked + input[type="hidden"] + .slider,
input[type="checkbox"]:checked + .slider {
    background-color: #e60000;
}
/* include generated hidden field here */
input[type="checkbox"] + input[type="hidden"] + .sliderMode,
input[type="checkbox"] + .sliderMode {
    background-color: #E60000;
}
/* include generated hidden field here */
input[type="checkbox"]:focus + input[type="hidden"] + .slider,
input[type="checkbox"]:focus + .slider {
    box-shadow: 0 0 1px #e60000;
}

/* include generated hidden field here */
input[type="checkbox"]:checked + input[type="hidden"] + .slider:before,
input[type="checkbox"]:checked + .slider:before {
    transform: translateX(26px);
}

/* Rounded sliders */
.slider.round {
    border-radius: 34px;
}

    .slider.round:before {
        border-radius: 50%;
    }


/* ============================================================
   SSP Theme - Unified Stylesheet
   Consolidates Style.css, purchaseStyle.css, paymentGatewaySwitch.css
   ============================================================ */

/* ============================================================
   1. CSS Custom Properties (Theme Variables)
   ============================================================ */
:root {
    /* Primary brand colors - Vodafone Red */
    --ssp-primary: #E60000;         /* Vodafone Red */
    --ssp-primary-dark: #820000;    /* Gradient dark - hovers/pressed */
    --ssp-primary-light: #E60000;   /* no lighter red in palette -> same red */
    --ssp-primary-rgb: 230, 0, 0;
    --ssp-gradient: linear-gradient(90deg, #820000 0%, #E60000 100%);

    /* Neutrals - only two greys allowed (Slate Grey + Vodafone Grey) */
    --ssp-slate: #25282B;           /* Slate Grey - headings / darkest text */
    --ssp-grey: #4A4D4E;            /* Vodafone Grey - body / muted text */
    --ssp-slate-rgb: 37, 40, 43;
    --ssp-grey-rgb: 74, 77, 78;
    --ssp-black: #000000;

    /* Secondary / accent */
    --ssp-accent: #25282B;          /* Slate Grey */
    --ssp-accent-light: #4A4D4E;    /* Vodafone Grey */

    /* Neutral palette */
    --ssp-bg: #FFFFFF;              /* off-white flattens to white */
    --ssp-bg-white: #FFFFFF;
    --ssp-bg-subtle: #D2DADC;   /* Light Grey - hover / zebra fill */
    --ssp-border: #D2DADC;      /* Light Grey - borders */
    --ssp-border-light: #D2DADC;
    --ssp-text: #25282B;           /* primary text = Slate */
    --ssp-text-secondary: #4A4D4E; /* secondary/body = Vodafone Grey */
    --ssp-text-muted: #4A4D4E;     /* muted collapses to Vodafone Grey */
    --ssp-text-white: #FFFFFF;

    /* Status colors - secondary palette */
    --ssp-success: #A8B400;        /* Spring Green  (black text on fill) */
    --ssp-warning: #EB9700;        /* Fresh Orange  (black text on fill) */
    --ssp-danger: #E60000;         /* Vodafone Red */
    --ssp-danger-dark: #820000;    /* Gradient dark - danger hover */
    --ssp-info: #00B0CA;           /* Aqua Blue */
    --ssp-info-dark: #007C92;      /* Turquoise - info hover */

    /* Component tokens */
    --ssp-header-height: 80px;
    --ssp-titlebox-height: 80px;
    --ssp-border-radius: 8px;
    --ssp-border-radius-lg: 10px;
    --ssp-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    --ssp-shadow-md: 0 4px 12px rgba(0, 0, 0, 0.12);
    --ssp-shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.16);
    --ssp-transition: all 0.3s ease;

    /* Font */
    --ssp-font: 'Open Sans', sans-serif;
}

/* ============================================================
   2. Base / Reset
   ============================================================ */
html, body {
    margin: 0;
}

html {
    height: 100%;
}

body {
    background: var(--ssp-bg);
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

.main-container {
    flex: 1;
}

p {
    margin: 0;
}

* {
    font-family: var(--ssp-font);
}

*:focus {
    outline: none;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

.box-bgd-white {
    background: var(--ssp-bg-white);
}

/* ============================================================
   3. Header
   ============================================================ */
#header {
    background: var(--ssp-bg-white);
    height: var(--ssp-header-height);
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 60px;
    box-shadow: var(--ssp-shadow);
}

#header .header-leftSide,
#header .header-rightSide {
    display: flex;
    justify-content: center;
    align-items: center;
}

#header .header-rightSide .header-datetime-text {
    margin-right: 40px;
}

#header .header-rightSide .header-datetime-text span {
    font-size: 12px;
    line-height: 20px;
    color: #000;
    font-weight: bold;
}

#header .header-leftSide .header-logo {
    background-image: url("../Content/img/Vodacom-Logo.svg");
    width: 200px;
    height: 100px;
    margin-right: 40px;
    background-repeat: no-repeat;
    background-size: contain;
}

img.header-logo {
    height: 100px;
    width: auto;
}

#header .header-leftSide .header-welcomeText p {
    font-size: 16px;
    color: var(--ssp-primary);
    line-height: 20px;
    margin-bottom: 0;
    font-weight: bold;
}

#header .header-rightSide .header-icons {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    gap: 6px;
}

/* Unified icon button wrapper */
#header .header-icon-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 8px;
    transition: background 0.15s;
    text-decoration: none;
}

#header .header-icon-btn:hover {
    background: rgba(0, 0, 0, 0.06);
}

#header .header-rightSide .header-supportIcon {
    background-image: url("../Content/img/headset-icon.png");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#header .header-rightSide .header-envelopIcon {
    background-image: url("../Content/img/envelop.png");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    position: relative;
    display: inline-block;
}

#header .header-rightSide .header-envelopIcon:hover {
    background-image: url("../Content/img/envelopHov.png");
}

.circle-number {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 18px;
    height: 18px;
    background-color: var(--ssp-primary);
    border-radius: 50%;
    color: white;
    font-size: 10px;
    font-weight: 700;
    line-height: 1;
    position: absolute;
    top: -6px;
    right: -6px;
    border: 2px solid var(--ssp-bg-white);
}

#header .header-rightSide .header-logoutIcon {
    background-image: url("../Content/img/logout-icon.png");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#header .header-rightSide .header-logoutIcon:hover {
    background-image: url("../Content/img/logout-iconHov.png");
}

#header .header-rightSide .header-homeIcon {
    background-image: url("../Content/img/billing-homeIcon.png");
    width: 24px;
    height: 24px;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
}

#header .header-rightSide .header-homeIcon:hover {
    background-image: url("../Content/img/billing-homeIconHov.png");
}

/* Language Dropdown */
.header-lang-wrap {
    position: relative;
    margin-left: 8px;
    z-index: 1050;
}

button.header-lang-btn,
.header-lang-btn {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    background: none !important;
    border: 1px solid var(--ssp-border) !important;
    border-radius: 8px !important;
    padding: 7px 12px !important;
    font-family: var(--ssp-font) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: var(--ssp-text-secondary) !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    height: 40px !important;
    line-height: 1 !important;
    margin: 0 !important;
    outline: none !important;
    box-shadow: none !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

button.header-lang-btn:hover,
.header-lang-btn:hover {
    border-color: var(--ssp-primary) !important;
    color: var(--ssp-text) !important;
    background: rgba(var(--ssp-primary-rgb), 0.04) !important;
}

/* Login page — language button on dark/red background */
.language-selector-global .header-lang-btn,
.language-selector-global button.header-lang-btn {
    color: #fff !important;
    border-color: rgba(255, 255, 255, 0.4) !important;
    background: rgba(255, 255, 255, 0.1) !important;
}

.language-selector-global .header-lang-btn:hover,
.language-selector-global button.header-lang-btn:hover {
    border-color: rgba(255, 255, 255, 0.7) !important;
    color: #fff !important;
    background: rgba(255, 255, 255, 0.2) !important;
}

.header-lang-current {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.5px !important;
}

div.header-lang-dropdown,
.header-lang-dropdown {
    display: none !important;
    position: absolute !important;
    top: calc(100% + 2px) !important;
    right: 0 !important;
    left: auto !important;
    background: #fff !important;
    border: 1px solid #4A4D4E !important;
    border-radius: 6px !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.12) !important;
    overflow: hidden !important;
    z-index: 1051 !important;
    padding: 4px 0 !important;
    min-width: 100% !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    transform: none !important;
}

div.header-lang-dropdown.show,
.header-lang-dropdown.show {
    display: block !important;
}

.header-lang-dropdown .header-lang-option,
.header-lang-dropdown a.header-lang-option,
a.header-lang-option {
    display: block !important;
    padding: 8px 16px !important;
    font-family: var(--ssp-font) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #25282B !important;
    text-decoration: none !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
    text-align: left !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

.header-lang-dropdown .header-lang-option:hover,
.header-lang-dropdown a.header-lang-option:hover,
a.header-lang-option:hover {
    background: #FFFFFF !important;
    color: var(--ssp-primary) !important;
    text-decoration: none !important;
}

/* ============================================================
   4. Title Box (shared across all pages)
   ============================================================ */
.titleBox {
    background: var(--ssp-primary);
    width: 100%;
    height: var(--ssp-titlebox-height);
    border-top-left-radius: var(--ssp-border-radius-lg);
    border-top-right-radius: var(--ssp-border-radius-lg);
    display: flex;
    justify-content: flex-start;
    align-items: center;
    padding-left: 45px;
}

.titleBox p {
    color: var(--ssp-text-white);
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

.titleBox a img {
    margin-left: -18px;
}

/* ============================================================
   5. Buttons
   ============================================================ */

/* Primary button (replaces .btn-green) */
.btn-green {
    background: linear-gradient(135deg, var(--ssp-primary), var(--ssp-primary-dark));
    color: var(--ssp-text-white) !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(var(--ssp-primary-rgb), 0.3);
    transition: var(--ssp-transition);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-green:hover {
    background: linear-gradient(135deg, var(--ssp-primary-light), var(--ssp-primary));
    box-shadow: 0 6px 12px rgba(var(--ssp-primary-rgb), 0.4);
    transform: translateY(-2px);
}

.btn-green:active {
    transform: translateY(1px);
    box-shadow: 0 3px 6px rgba(var(--ssp-primary-rgb), 0.3);
}

/* Grey button */
.btn-grey {
    background: linear-gradient(135deg, #4A4D4E, #25282B);
    color: var(--ssp-text-white) !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(74, 77, 78, 0.4);
    transition: var(--ssp-transition);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-grey:hover {
    background: linear-gradient(135deg, #4A4D4E, #25282B);
    box-shadow: 0 6px 12px rgba(74, 77, 78, 0.5);
    transform: translateY(-2px);
}

.btn-grey:active {
    transform: translateY(1px);
    box-shadow: 0 3px 6px rgba(74, 77, 78, 0.4);
}

/* Cancel button */
.btn-cancel {
    background: linear-gradient(135deg, #E60000, #820000);
    color: var(--ssp-text-white) !important;
    border-radius: 5px;
    padding: 10px 20px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(230, 0, 0, 0.4);
    transition: var(--ssp-transition);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-cancel:hover {
    background: linear-gradient(135deg, #E60000, #820000);
    box-shadow: 0 6px 12px rgba(230, 0, 0, 0.5);
    transform: translateY(-2px);
}

.btn-cancel:active {
    transform: translateY(1px);
    box-shadow: 0 3px 6px rgba(230, 0, 0, 0.4);
}

/* Pay Now button */
.btn-payNow {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 50%;
    padding: 10px 20px;
    background: linear-gradient(135deg, var(--ssp-primary), var(--ssp-primary-dark));
    border-radius: 5px;
    color: var(--ssp-text-white) !important;
    font-size: 16px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(var(--ssp-primary-rgb), 0.3);
    transition: var(--ssp-transition);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    text-decoration: none;
}

.btn-payNow:hover {
    background: linear-gradient(135deg, var(--ssp-primary-light), var(--ssp-primary));
    box-shadow: 0 6px 12px rgba(var(--ssp-primary-rgb), 0.4);
    transform: translateY(-2px);
    text-decoration: none;
}

.btn-payNow:active {
    transform: translateY(1px);
    box-shadow: 0 3px 6px rgba(var(--ssp-primary-rgb), 0.3);
}

/* Buy More Products button */
.button-buyMoreProducts {
    width: 100%;
    max-width: 168px;
    height: 40px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: linear-gradient(135deg, var(--ssp-primary), var(--ssp-primary-dark));
    border-radius: 5px;
    color: var(--ssp-text-white);
    font-size: 15px;
    font-weight: bold;
    border: none;
    cursor: pointer;
    box-shadow: 0 4px 8px rgba(var(--ssp-primary-rgb), 0.3);
    transition: var(--ssp-transition);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 30px 0;
    float: right;
}

.button-buyMoreProducts:hover {
    background: linear-gradient(135deg, var(--ssp-primary-light), var(--ssp-primary));
    box-shadow: 0 6px 12px rgba(var(--ssp-primary-rgb), 0.4);
    transform: translateY(-2px);
}

.button-buyMoreProducts:active {
    transform: translateY(1px);
    box-shadow: 0 3px 6px rgba(var(--ssp-primary-rgb), 0.3);
}

.button-buyMoreProducts a {
    color: var(--ssp-text-white);
    text-decoration: none;
}

.button-buyMoreProducts a:hover {
    color: var(--ssp-text-white);
    text-decoration: underline;
}

/* Signup button */
.btn-signup {
    padding: 8px 16px;
    background: var(--ssp-primary);
    border-radius: 5px;
    color: var(--ssp-text-white);
    font-size: 16px;
    font-weight: bold;
}

/* Signup outline button */
.btn-signup-outline {
    padding: 10px 20px;
    border: 2px solid var(--ssp-primary);
    border-radius: 8px;
    color: var(--ssp-primary);
    background: transparent;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: var(--ssp-transition);
    cursor: pointer;
}

.btn-signup-outline:hover {
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
    box-shadow: 0 4px 10px rgba(var(--ssp-primary-rgb), 0.4);
    transform: translateY(-1px);
}

.btn-signup-outline:active {
    transform: translateY(1px);
    box-shadow: 0 2px 5px rgba(var(--ssp-primary-rgb), 0.3);
}

/* Gradient buttons (purchase flow) */
.BtnGradient {
    background: linear-gradient(0deg, #820000 12%, #E60000 70%);
    border: 2px solid rgba(255, 255, 255, 0.4);
    padding: 10px 20px;
    border-radius: 5px;
    color: white;
    cursor: pointer;
    transition: box-shadow 0.3s ease, background 0.3s ease;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
}

.BtnGradientSecondary {
    background: linear-gradient(0deg, #E60000 12%, #E60000 70%);
}

.BtnGradient:active, .BtnGradientSecondary:active {
    background: linear-gradient(0deg, #820000 12%, #820000 70%);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
}

.BtnGradient:hover, .BtnGradientSecondary:hover {
    box-shadow: 0 6px 8px rgba(0, 0, 0, 0.15), 0 -2px 4px rgba(255, 255, 255, 0.2) inset;
}

/* ============================================================
   6. MyAccounts (Home Page)
   ============================================================ */
#myAccounts .myAccounts-wrapper .titleBox {
    background: var(--ssp-primary);
    background-image: none;
}

#myAccounts .myAccounts-wrapper .titleBox p {
    color: var(--ssp-text-white);
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

#myAccounts .myAccounts-wrapper .welcomeBox-bgd {
    width: 100%;
    height: 157px;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #000;
}

#myAccounts .myAccounts-wrapper .textAnimationwelcomeBox-bgd {
    background-image: url("../Content/img/welcome-bgd-announce.png");
    width: 100%;
    height: 157px;
    background-position: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: var(--ssp-text-white);
}

#myAccounts .myAccounts-wrapper .welcomeBox-bgd h2 {
    font-size: 30px;
    line-height: 48px;
    font-weight: bold;
    margin-bottom: 0;
}

#myAccounts .myAccounts-wrapper .welcomeBox-bgd p {
    font-size: 30px;
    line-height: 48px;
    font-weight: 400;
}

#myAccounts .myAccounts-wrapper .textAnimationwelcomeBox-bgd marquee {
    font-size: 30px;
    line-height: 48px;
    font-weight: 400;
    white-space: nowrap;
}

/* Accounts slider */
#myAccounts .myAccounts-wrapper .myAccountsBox p.myAccounts-sliderTitle {
    text-align: center;
    margin: 25px 0;
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    color: #000;
}

#myAccounts .myAccounts-wrapper .center .slick-center {
    background: var(--ssp-primary);
    width: 200px !important;
    text-align: center;
    height: 100px;
}

#myAccounts .myAccounts-wrapper .center .slick-center p {
    color: var(--ssp-text-white);
}

#myAccounts .myAccounts-wrapper .myAccounts-slider {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
}

#myAccounts .myAccounts-wrapper .myAccounts-slider button {
    font-size: 0;
    border: none;
    background: none;
}

#myAccounts .myAccounts-wrapper .slider.center.slick-initialized.slick-slider {
    max-width: 710px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    margin: 0 -15px;
}

#myAccounts .myAccounts-wrapper .myAccounts-slider .slick-list.draggable {
    padding: 0px;
    width: 630px;
    margin: 0 20px;
}

#myAccounts .myAccounts-wrapper .slick-initialized .slick-slide p.myAccounts-slider-idText {
    color: #000;
}

#myAccounts .myAccounts-wrapper .slick-initialized .slick-slide p.myAccounts-slider-strongText {
    font-weight: bold;
    color: var(--ssp-primary);
}

#myAccounts .myAccounts-wrapper .slick-initialized .slick-slide {
    display: flex;
    width: 180px !important;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: center;
    height: 100px;
    border: 1px solid var(--ssp-border);
    padding: 10px;
    margin-right: 15px;
    margin-left: 15px;
    border-radius: var(--ssp-border-radius-lg);
    cursor: pointer;
}

#myAccounts .myAccounts-wrapper .slick-initialized .slick-slide.slick-center p {
    color: var(--ssp-text-white);
}

#myAccounts .myAccounts-wrapper .slick-slide.slick-active:first-child,
.slick-slide.slick-active:last-child {
    margin: 0;
}

#myAccounts .myAccounts-wrapper .myAccountsBox {
    margin-bottom: 30px;
}

#myAccounts .myAccounts-wrapper .box-bgd-white {
    padding-top: 30px;
    padding-bottom: 80px;
    width: 100%;
}

/* Card slider */
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-list.draggable a {
    color: #4A4D4E;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active p.myCardsBox-slider-strongText {
    color: #4A4D4E;
    font-size: 18px;
    font-weight: bold;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active p.myCardsBox-slider-text {
    font-size: 14px;
    color: #4A4D4E;
}

/* Card icons */
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card1 {
    background-image: url("../Content/img/subsNom.png");
    width: 42px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card15 {
    background-image: url("../Content/img/ordersNom.png");
    width: 42px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card2 {
    background-image: url("../Content/img/purchaseNom.png");
    width: 51px; height: 51px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card13 {
    background-image: url("../Content/img/paymentGateNom.png");
    width: 51px; height: 51px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card3 {
    background-image: url("../Content/img/billingNom.png");
    width: 45px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card4 {
    background-image: url("../Content/img/userNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card5 {
    background-image: url("../Content/img/settingNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card6 {
    background-image: url("../Content/img/myAccounts-card6-icon.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card7 {
    background-image: url("../Content/img/announcementsNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card8 {
    background-image: url("../Content/img/messegesNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card11 {
    background-image: url("../Content/img/manageUsrsNor.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card9 {
    background-image: url("../Content/img/pgNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card10 {
    background-image: url("../Content/img/historyNom.png");
    width: 46px; height: 52px;
    background-repeat: no-repeat; background-position: center; margin: 0 auto;
}

/* Card hover states */
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card1 {
    background-image: url("img/subsHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card15 {
    background-image: url("img/ordersHover.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card2 {
    background-image: url("img/purchaseHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card13 {
    background-image: url("img/paymentGateHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card3 {
    background-image: url("img/billingHover.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card4 {
    background-image: url("img/userHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card5 {
    background-image: url("img/settingHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card6 {
    background-image: url("img/myAccounts-card6-icon-green.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card7 {
    background-image: url("img/announcementsHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card8 {
    background-image: url("img/messegesHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card11 {
    background-image: url("img/manageUsrsHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card9 {
    background-image: url("img/paymentGateHov.png"); background-repeat: no-repeat;
}
#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover .slider-card10 {
    background-image: url("img/historyHov.png"); background-repeat: no-repeat;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover p.myCardsBox-slider-strongText {
    color: var(--ssp-primary);
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider button {
    font-size: 0;
    border: none;
    background: none;
}

#myAccounts .myAccounts-wrapper .myAccounts-slider button.slick-prev {
    background-image: url(img/myAccounts-left-arrow.png);
    min-width: 34px;
    min-height: 34px;
    display: block;
    background-repeat: no-repeat;
}

#myAccounts .myAccounts-wrapper .myAccounts-slider button.slick-next {
    background-image: url(img/myAccounts-right-arrow.png);
    min-width: 34px;
    min-height: 34px;
    display: block;
    background-repeat: no-repeat;
}

button.slick-next:focus,
button.slick-prev:focus {
    outline: none;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slider.slick-initialized.slick-slider {
    max-width: 1085px;
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
    margin: 0 -15px;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide {
    display: flex;
    width: 221px !important;
    text-align: center;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-self: center;
    height: 160px;
    border: 1px solid var(--ssp-border);
    padding: 10px;
    margin-right: 15px;
    margin-left: 15px;
    border-radius: var(--ssp-border-radius-lg);
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide:last-child {
    margin-right: 0;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-current {
    margin-left: 15px;
}

#myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-list.draggable {
    width: 1010px;
    margin: 0 20px;
}

/* myAccounts green page (legacy support) */
body.myAccounts-green {
    background: var(--ssp-primary);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .titleBox {
    background-image: none;
    background: var(--ssp-bg-white);
    border-bottom-left-radius: var(--ssp-border-radius-lg);
    border-bottom-right-radius: var(--ssp-border-radius-lg);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .titleBox p {
    color: #000;
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .box-bgd-white {
    background: var(--ssp-primary);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .welcomeBox-bgd {
    background-image: url(img/welcome-bgd-whitepage.png);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .welcomeBox-bgd h2 {
    color: var(--ssp-primary);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .welcomeBox-bgd p {
    color: #000;
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myAccountsBox p.myAccounts-sliderTitle {
    color: var(--ssp-text-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .slick-initialized .slick-slide p.myAccounts-slider-idText,
body.myAccounts-green #myAccounts .myAccounts-wrapper .slick-initialized .slick-slide p.myAccounts-slider-strongText {
    color: var(--ssp-text-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .slick-initialized .slick-slide {
    border: none;
    background: rgba(255,255,255,0.15);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .center .slick-center {
    background: var(--ssp-bg-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .slick-initialized .slick-slide.slick-center p {
    color: var(--ssp-primary);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox .slick-initialized .slick-slide.slick-active:hover {
    background: var(--ssp-bg-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover p.myCardsBox-slider-strongText {
    color: var(--ssp-primary);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-list.draggable a {
    color: var(--ssp-text-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active:hover p.myCardsBox-slider-text {
    color: #4A4D4E;
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active p.myCardsBox-slider-strongText,
body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slick-initialized .slick-slide.slick-active p.myCardsBox-slider-text {
    color: var(--ssp-text-white);
}

body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card1 {
    background-image: url("img/myAccounts-card1-icon-white.png");
}
body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card2 {
    background-image: url("img/myAccounts-card2-icon-white.png");
}
body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card3 {
    background-image: url("img/myAccounts-card3-icon-white.png");
}
body.myAccounts-green #myAccounts .myAccounts-wrapper .myCardsBox-slider .slider-card4 {
    background-image: url("img/myAccounts-card4-icon-white.png");
}

/* ============================================================
   7. myProducts Page
   ============================================================ */
.borderBox {
    border: 1px solid var(--ssp-border);
    padding: 0 20px !important;
}

#myProducts .myProducts-wrapper .titleBox {
    background: var(--ssp-primary);
    background-image: none;
}

#myProducts .myProducts-wrapper .titleBox p {
    color: var(--ssp-text-white);
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

#myProducts .myProducts-wrapper .myProducts-box-padding {
    padding: 40px 0 40px 40px;
}

#myProducts .myProducts-wrapper .myProducts-searchBox {
    margin: 25px 0 40px 0;
}

#myProducts .myProducts-wrapper .myProducts-searchBox input {
    width: 100%;
    padding: 11px 20px;
    background: var(--ssp-bg);
    border: 1px solid var(--ssp-border);
    border-radius: 5px;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox {
    height: 340px;
    position: relative;
    overflow-y: scroll;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle {
    padding: 13px 0;
    border-left: 4px solid var(--ssp-primary);
    background: #FFFFFF;
    padding-left: 20px;
    width: 385px;
    border-radius: 5px;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-boxTitle p {
    font-size: 16px;
    font-weight: bold;
    line-height: 24px;
    color: var(--ssp-primary);
    text-transform: uppercase;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul {
    margin: 30px 0;
}

#myProducts .myProducts-wrapper .myProducts-leftSide-scrollBox ul li {
    font-size: 16px;
    font-weight: 400;
    line-height: 24px;
    color: #4A4D4E;
    margin-bottom: 20px;
}

/* myProducts right side */
#myProducts .myProducts-wrapper .rightSide-padding {
    padding: 0 20px;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title {
    margin-bottom: 30px;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title p {
    border-bottom: 6px solid var(--ssp-primary);
    width: max-content;
    padding-bottom: 15px;
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

#myProducts .myProducts-wrapper .myProducts-rightSide-title hr {
    margin: 0;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox ul {
    height: 385px;
    position: relative;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox .infoBox {
    border: 1px solid var(--ssp-border);
    margin-bottom: 15px;
    padding: 13px 20px;
    width: 100%;
    max-width: 560px;
}

.infoBoxOrd {
    border: 1px solid var(--ssp-border);
    margin-bottom: 15px;
    padding: 13px 20px;
    width: 100%;
    max-width: 560px;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-scrollBox .infoBox p {
    font-size: 14px;
    font-weight: 400;
    line-height: 14px;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons {
    margin-top: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: center;
    padding: 0 13px 0 0;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons a {
    margin-right: 75px;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons a:last-child {
    margin-right: 0;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1,
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2,
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3,
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4,
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5 {
    width: 53px;
    height: 52px;
    background-repeat: no-repeat;
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1 {
    background-image: url("../Content/img/myProducts-icon1.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2 {
    background-image: url("../Content/img/myProducts-icon2.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3 {
    background-image: url("../Content/img/myProducts-icon3.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4 {
    background-image: url("../Content/img/myProducts-icon4.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5 {
    background-image: url("../Content/img/myProducts-icon5.png");
}

#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon1:hover {
    background-image: url("../Content/img/myProducts-icon1-green.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon2:hover {
    background-image: url("../Content/img/myProducts-icon2-green.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon3:hover {
    background-image: url("../Content/img/myProducts-icon3-green.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon4:hover {
    background-image: url("../Content/img/myProducts-icon4-green.png");
}
#myProducts .myProducts-wrapper .myproducts-rightSide-icons .myproducts-rightSide-icon5:hover {
    background-image: url("../Content/img/myProducts-icon5-green.png");
}

/* ============================================================
   8. Billing Page
   ============================================================ */
#billing .billing-wrapper .billing-leftSideBox ul {
    margin: 0; padding: 0; border: 0; background: none;
}

#billing .billing-wrapper .billing-leftSideBox ul li {
    width: 100%;
    max-width: 510px;
    border: 0; margin: 0; padding: 0;
    background: var(--ssp-bg);
    margin-bottom: 20px;
}

#billing .billing-wrapper .billing-leftSideBox ul li a {
    border: none;
    padding: 18px 20px;
    color: #000;
    font-weight: bold;
    font-size: 16px;
    line-height: 14px;
}

#billing .billing-wrapper .nav-tabs .nav-link.active {
    background: var(--ssp-primary);
    font-size: 16px;
    font-weight: bold;
    line-height: 14px;
    color: var(--ssp-text-white);
}

#billing .billing-wrapper .titleBox {
    background: var(--ssp-primary);
    background-image: none;
}

#billing .billing-wrapper .titleBox p {
    color: var(--ssp-text-white);
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

#billing .billing-wrapper .billing-box-padding {
    padding: 40px 0 40px 40px;
}

#billing .billing-wrapper .billing-monthBox p {
    margin-bottom: 20px;
    font-size: 20px;
    line-height: 14px;
    font-weight: bold;
}

#billing .billing-wrapper .billing-monthBox select {
    width: 100%;
    max-width: 510px;
    padding: 14px 20px;
    font-size: 18px;
    color: #4A4D4E;
    border: 0;
    background: var(--ssp-bg);
    margin-bottom: 30px;
}

#billing .billing-wrapper .tab-content {
    border: 2px solid var(--ssp-border);
    width: 400px;
    margin-left: 25px;
    float: left;
}

#billing .billing-wrapper .tab-content .tab-pane {
    padding: 30px;
}

#billing .billing-wrapper .tab-content .tab-pane h5 {
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    margin-bottom: 30px;
}

#billing .billing-wrapper .tab-content .tab-pane p {
    margin-bottom: 30px;
    font-size: 14px;
    line-height: 24px;
}

#billing .billing-wrapper .billing-leftSideBox {
    margin-bottom: 50px;
}

#billing .billing-wrapper .billing-leftSideBox p {
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    margin-bottom: 20px;
}

#billing .billing-wrapper .button-pay-billing {
    text-align: center;
}

#billing .billing-wrapper .button-pay-billing span {
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    margin-right: 20px;
}

#billing .billing-wrapper .button-pay-billing a {
    font-size: 18px;
    line-height: 14px;
    color: var(--ssp-text-white);
    background: var(--ssp-primary);
    padding: 15px 40px;
    border-radius: 5px;
}

#billing .billing-wrapper .billing-printerIcon {
    background-image: url(../Content/img/billing-download.png);
    width: 49px; height: 49px;
    background-repeat: no-repeat; background-position: center;
}

#billing .billing-wrapper .billing-homeIcon {
    background-image: url(../Content/img/billing-homeIcon.png);
    width: 37px; height: 35px;
    background-repeat: no-repeat;
    background-position: center;
    margin-right: 20px;
}

.PrintInvIcon {
    background-image: url(../Content/img/invoice.png);
}

#billing .billing-wrapper .billing-iconsBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    flex-direction: column;
}

/* ============================================================
   9. MyProfile Page
   ============================================================ */
#myProfile .myProfilewrapper .titleBox {
    background: var(--ssp-primary);
    background-image: none;
}

#myProfile .myProfilewrapper .titleBox p {
    color: var(--ssp-text-white);
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
}

#myProfile .myProfilewrapper .box-bgd-white {
    padding-top: 30px;
    padding-bottom: 80px;
    width: 100%;
}

#myProfile .myProfilewrapper ul {
    display: flex;
    flex-direction: column;
    border: 0; margin: 0; padding: 0;
    background: none;
}

#myProfile .myProfilewrapper ul li {
    width: 100%;
    max-width: 205px;
    border: 0; margin: 0; padding: 0;
    margin-bottom: 10px;
    padding-left: 0px;
    margin-left: 20px;
}

#myProfile .myProfilewrapper ul li a {
    border: none;
    padding: 20px 20px;
    color: #4A4D4E;
    font-weight: bold;
    font-size: 18px;
    line-height: 14px;
    padding-left: 40px;
    border-radius: 5px;
}

#myProfile .myProfilewrapper .nav-tabs .nav-link.active {
    background: #FFFFFF;
    font-weight: bold;
    color: var(--ssp-primary);
    padding-left: 40px;
}

#myProfile .myProfilewrapper .myprofile-formGroup .myProfile-rightSide {
    border: 1px solid var(--ssp-border);
    padding: 0 40px;
    padding-bottom: 30px;
}

#myProfile .myProfilewrapper .mydetails-group form .form-group {
    width: 100%;
    max-width: 480px;
    height: 50px;
    margin: 0 auto;
    margin-bottom: 30px;
}

#myProfile .myProfilewrapper .mydetails-group form .form-group label {
    font-size: 14px;
    line-height: 14px;
    color: #4A4D4E;
}

#myProfile .myProfilewrapper .myprofile-formGroup h5 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    color: #000;
    margin-top: 30px;
}

#myProfile .myProfilewrapper .mydetails-group form .form-group input {
    border: 1px solid var(--ssp-border);
}

#myProfile .myProfilewrapper .myprofile-formGroup {
    padding-right: 50px;
    padding-left: 20px;
}

#myProfile .myProfilewrapper .myProfile-buttons {
    text-align: center;
}

#myProfile .myProfilewrapper .myProfile-buttons .btn-update {
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
    border: none;
    padding: 10px 40px;
    border-radius: 5px;
    font-weight: bold;
    cursor: pointer;
}

#myProfile .myProfilewrapper .myProfile-buttons .btn-update:hover {
    background: var(--ssp-primary-dark);
}

/* Profile history checkboxes */
.checkboxStyle {
    position: relative;
    display: inline-block;
}

.checkboxStyle label {
    width: 100%;
    max-width: 510px;
    display: block;
    padding: 18px 20px;
    color: #000;
    font-weight: bold;
    font-size: 16px;
    line-height: 14px;
    margin-bottom: 0;
}

.checkboxStyle input {
    display: none;
}

.checkboxStyle input:checked ~ label {
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
}

/* ============================================================
   10. Toggle Switches (consolidated from paymentGatewaySwitch.css)
   ============================================================ */
.switch {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switch input {
    display: none;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #D2DADC;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    transition: .4s;
}

input[type="checkbox"]:checked + input[type="hidden"] + .slider,
input[type="checkbox"]:checked + .slider {
    background-color: var(--ssp-success);
}

input[type="checkbox"] + input[type="hidden"] + .sliderMode,
input[type="checkbox"] + .sliderMode {
    background-color: var(--ssp-danger);
}

input[type="checkbox"]:focus + input[type="hidden"] + .slider,
input[type="checkbox"]:focus + .slider {
    box-shadow: 0 0 1px #00B0CA;
}

input[type="checkbox"]:checked + input[type="hidden"] + .slider:before,
input[type="checkbox"]:checked + .slider:before {
    transform: translateX(26px);
}

.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

/* Switch toggle (profile settings) */
.switchToggle {
    position: relative;
    display: inline-block;
    width: 60px;
    height: 34px;
}

.switchToggle input {
    display: none;
}

.sliderToggle {
    position: absolute;
    cursor: pointer;
    top: 0; left: 0; right: 0; bottom: 0;
    background-color: #D2DADC;
    transition: .4s;
}

.sliderToggle:before {
    position: absolute;
    content: "";
    height: 26px;
    width: 26px;
    left: 4px;
    bottom: 4px;
    background-color: white;
    transition: .4s;
}

input[type="checkbox"]:checked + input[type="hidden"] + .sliderToggle,
input[type="checkbox"]:checked + .sliderToggle {
    background-color: var(--ssp-success);
}

input[type="checkbox"]:focus + input[type="hidden"] + .sliderToggle,
input[type="checkbox"]:focus + .sliderToggle {
    box-shadow: 0 0 1px #00B0CA;
}

input[type="checkbox"]:checked + input[type="hidden"] + .sliderToggle:before,
input[type="checkbox"]:checked + .sliderToggle:before {
    transform: translateX(26px);
}

.sliderToggle.roundToggle {
    border-radius: 34px;
}

.sliderToggle.roundToggle:before {
    border-radius: 50%;
}

/* ============================================================
   11. Purchase / Product Catalog Styles (from purchaseStyle.css)
   ============================================================ */
.cardCustStyle {
    border: 2px double var(--ssp-primary);
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 3px 10px 0 rgba(0, 0, 0, 0.19);
}

.MultiCarousel {
    float: left;
    overflow: hidden;
    padding: 15px;
    width: 100%;
    position: relative;
}

.MultiCarousel .MultiCarousel-inner {
    transition: 1s ease all;
    float: left;
}

.MultiCarousel .MultiCarousel-inner .item {
    float: left;
}

.MultiCarousel .MultiCarousel-inner .item > div {
    text-align: center;
    padding: 10px;
    margin: 10px;
    background: var(--ssp-bg-subtle);
    color: #4A4D4E;
}

.MultiCarousel .leftLst, .MultiCarousel .rightLst {
    position: absolute;
    border-radius: 50%;
    top: calc(50% - 20px);
}

.MultiCarousel .leftLst { left: 0; }
.MultiCarousel .rightLst { right: 0; }

.MultiCarousel .leftLst.over, .MultiCarousel .rightLst.over {
    pointer-events: none;
    background: #D2DADC;
}

/* Triangle shapes for badges */
.triangle-left {
    width: 0; height: 0;
    border-top: 25px solid transparent;
    border-right: 50px solid #4A4D4E;
    border-bottom: 25px solid transparent;
}

.shape {
    border-style: solid;
    border-top: 25px solid transparent;
    border-right: 50px solid #4A4D4E;
    border-bottom: 25px solid transparent;
    padding-right: 8px;
    float: right;
    height: 0px; width: 0px;
}

.listing {
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2);
    margin: 15px 0;
    overflow: hidden;
}

.listing:hover {
    transform: scale(1.1);
    transition: all 0.4s ease-in-out;
    cursor: pointer;
}

.shape {
    border-color: rgba(255,255,255,0) #E60000 rgba(255,255,255,0) rgba(255,255,255,0);
}

.listing-radius { border-radius: 7px; }
.listing-danger { border-color: #E60000; }
.listing-danger .shape { border-color: transparent #E60000 transparent transparent; }
.listing-success { border-color: #A8B400; }
.listing-success .shape { border-color: transparent #A8B400 transparent transparent; }
.listing-default { border-color: #4A4D4E; }
.listing-default .shape { border-color: transparent #4A4D4E transparent transparent; }
.listing-primary { border-color: #00B0CA; }
.listing-primary .shape { border-color: transparent #007C92 transparent transparent; }
.listing-info { border-color: #00B0CA; }
.listing-info .shape { border-color: transparent #00B0CA transparent transparent; }
.listing-warning { border-color: #EB9700; }
.listing-warning .shape { border-color: transparent #EB9700 transparent transparent; }

.shape-text {
    color: var(--ssp-text-white);
    font-size: 12px;
    font-weight: bold;
    position: relative;
    right: -30px;
    top: -10px;
    white-space: nowrap;
}

.bundleWit {
    position: relative;
    right: -45px;
    top: 0px;
    white-space: nowrap;
}

.hotBundle {
    position: relative;
    right: -40px;
    top: -10px;
    white-space: nowrap;
}

.listing-content {
    margin: 0 0 24px 0;
    padding-top: 35px;
}

section.pricingDetails {
    background-image: url("../Content/img/PurchaseOptions-BG2.PNG");
    object-fit: cover;
    background-size: 100% 100%;
    background-position-y: -12%;
    background-repeat: no-repeat;
}

section.pricing {
    background-image: url("../Content/img/PurchaseOptions-BG.PNG");
    object-fit: cover;
    background-size: 100% 100%;
    background-position-y: -12%;
    background-repeat: no-repeat;
}

.pricing .card {
    border: none;
    border-radius: 1rem;
    transition: all 0.2s;
    box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
}

.pricing hr { margin: 1.5rem 0; }

.pricing .card-title {
    margin: 0.5rem 0;
    font-size: 0.9rem;
    letter-spacing: .1rem;
    font-weight: bold;
}

.pricing .card-price {
    font-size: 3rem;
    margin: 0;
}

.pricing .card-price .period {
    font-size: 0.8rem;
}

.pricing ul li { margin-bottom: 1rem; }
.pricing .text-muted { opacity: 0.7; }

.pricing .btn {
    font-size: 80%;
    border-radius: 5rem;
    letter-spacing: .1rem;
    font-weight: bold;
    padding: 1rem;
    opacity: 0.7;
    transition: all 0.2s;
}

@media (min-width: 992px) {
    .pricing .card:hover {
        margin-top: -.25rem;
        margin-bottom: .25rem;
        box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.3);
    }
    .pricing .card:hover .btn { opacity: 1; }
}

/* ============================================================
   12. Login / Registration Page
   NOTE: Main login styles (background, glass card, inputs) are
   now in Style.css. This section only provides minimal fallbacks.
   ============================================================ */

.login-logo {
    width: 500px !important;
    height: 200px !important;
    padding: 20px;
}

/* ============================================================
   13. Purchase Page
   ============================================================ */
#purchase .purchase-wrapper .titleBox {
    background: var(--ssp-primary);
    background-image: none;
}

.filter-box {
    padding: 20px 30px;
    background: var(--ssp-bg-subtle);
    border-radius: 8px;
    margin-bottom: 30px;
    border: 1px solid var(--ssp-border);
}

/* User creation title (used across purchase/signup flow) */
.userCreationTitle {
    border-bottom: 6px solid var(--ssp-primary);
    padding-bottom: 15px;
    padding-left: 1.7rem;
    padding-right: 1.7rem;
    font-weight: bold;
    line-height: 14px;
    font-size: 1rem;
    margin-top: .8rem;
    margin-bottom: 2.3rem;
    display: inline-block;
}

.secondHeading {
    text-align: center;
    margin: 25px 0;
    font-size: 20px;
    font-weight: bold;
    line-height: 14px;
    color: #000;
}

.inboxImg {
    width: 100px;
    height: 100px;
    object-fit: contain;
}

/* ============================================================
   14. Miscellaneous Utilities
   ============================================================ */
.ps__thumb-y {
    background-color: var(--ssp-primary);
}

.numberCircle {
    background-color: var(--ssp-primary);
    border-radius: 50%;
    color: var(--ssp-text-white);
    padding: 0.4rem;
    width: 50%;
}

.EditNotAllowed {
    pointer-events: none;
}

/* Admin slider nav buttons */
.Slkbtn {
    width: 35px; height: 35px;
    border-radius: 52%;
    border: 3px solid black;
    background-size: contain;
}

.Slkbtn:hover {
    border-color: var(--ssp-primary);
    transform: scale(1.2);
}

.btnNavNext {
    background-image: url('img/nextbtn.png');
    position: relative;
    left: 97%;
    bottom: 101px;
    z-index: 10;
}

.btnNavPrev {
    background-image: url('img/prevbtn.png');
    position: relative;
    top: 100px;
    z-index: 10;
}

/* Peach payment card widget */
.wpwl-form {
    background: var(--ssp-bg-subtle);
    margin-top: 2rem;
}

.wpwl-label-brand { display: none; }

.wpwl-form-card {
    background-color: white;
    border: 0px;
}

.wpwl-control, input.wpwl-control {
    background: white;
    border: 1px solid var(--ssp-primary);
    box-shadow: none;
    border-radius: 0px;
    font-family: var(--ssp-font);
    text-transform: none;
    padding: 10px;
    font-size: 18px;
    height: 50px;
}

.input-text:focus, input[type=text]:focus, input[type=tel]:focus,
input[type=url]:focus, input[type=password]:focus, input[type=search]:focus,
textarea:focus {
    background-color: white;
}

.wpwl-brand-SOFORTUEBERWEISUNG, .wpwl-brand-GIROPAY { cursor: pointer; }
.wpwl-brand, .wpwl-img { margin: 0 0 0 auto; }

/* Payment status page */
.filtered {
    filter: hue-rotate(-100deg) saturate(2);
}

h4#text:first-letter {
    text-transform: uppercase;
}

.Bcg {
    background-image: url('img/welcome-bgd.png');
}

.demoStyle {
    position: relative;
    top: -170px;
    left: 100px;
    background-color: #E60000;
}

/* History pagination */
.pagerHist > a {
    background-color: var(--ssp-primary);
    border: none;
    color: white;
    padding: 7px;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    font-size: 14px;
    margin: 4px 3px;
    border-radius: 4px;
}

.selectedPageNumber {
    background-color: black;
    color: white;
    border-radius: 50%;
    padding: 5px 10px;
    margin-left: 10px;
    margin-right: 10px;
    text-align: center;
    font-weight: bold;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Background block overlay */
.backgroundblock {
    position: fixed;
    top: 0; left: 0;
    background-color: black;
    z-index: 99;
    opacity: 1;
    filter: opacity(80);
    min-height: 0%; width: 0%;
}

/* Loading screen */
.loadingscreen {
    font-family: Arial;
    font-size: 15pt;
    opacity: 0.8;
    width: 100%;
    height: 100%;
    display: none;
    position: fixed;
    background-color: White;
    padding-top: 10%;
    z-index: 999;
}

/* Password visibility toggle */
.showPasswordIconStyle {
    background-image: url(../Content/img/eyeOpen.png);
    width: 77px; height: auto;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    padding: 18px 20px;
    background-color: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: .25rem;
}

.hidePasswordIconStyle {
    background-image: url(../Content/img/eyeClosed.png);
    width: 77px; height: auto;
    background-position: center;
    background-repeat: no-repeat;
    text-align: center;
    padding: 18px 20px;
    background-color: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: .25rem;
}

/* Search icon */
.searchResearch {
    margin-top: -5px;
    margin-left: -5px;
    height: 40px;
    width: 40px;
}

.scrollit {
    overflow: scroll;
    height: 100px;
}

/* Shake animation */
@keyframes shake {
    0% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-10px); }
    20%, 40%, 60%, 80% { transform: translateX(10px); }
    100% { transform: translateX(0); }
}

.box {
    display: inline-block;
    padding: 20px;
    font-size: 24px;
    background-color: var(--ssp-bg-subtle);
    border: 1px solid var(--ssp-border);
    border-radius: 5px;
    margin-bottom: 20px;
}

.shake {
    animation: shake 0.5s ease-in-out;
}

.slick-next.slick-arrow:hover::before {
    color: var(--ssp-primary) !important;
}

#headerNew {
    z-index: 997;
    transition: all 0.5s;
    padding: 8px 0;
    background: var(--ssp-primary);
    height: 80px;
    display: flex;
    margin-bottom: 60px;
}

.retryMessage {
    font-size: 16px !important;
}

/* Message button styles */
.btn-selected {
    border-bottom: 6px solid var(--ssp-primary-dark);
}

.btn-message-label {
    margin-top: 5px;
    font-size: 1rem;
    font-weight: bold;
    color: var(--ssp-primary);
    text-align: center;
}

/* ============================================================
   15. Responsive / Mobile Navigation
   ============================================================ */
.responsive-nav {
    position: fixed;
    top: 0;
    right: -300px;
    padding-top: 80px;
    width: 300px;
    background: var(--ssp-bg-white);
    height: 100vh;
    z-index: 2;
    transition: 0.2s linear all;
    overflow: hidden;
}

.responsive-nav.openned {
    right: 0;
}

.responsive-nav .header-leftSide .header-welcomeText p {
    font-size: 16px;
    color: var(--ssp-primary);
    line-height: 20px;
    margin-bottom: 0;
    font-weight: bold;
}

.responsive-nav .header-logo {
    background-image: url(../img/logo.png);
    width: 200px; height: 100px;
    margin-right: 40px;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
    margin-bottom: 30px;
}

.responsive-nav .header-rightSide .header-datetime-text span {
    font-size: 12px;
    line-height: 20px;
    color: #000;
    font-weight: bold;
    margin-bottom: 30px;
}

.responsive-nav .header-welcomeText,
.responsive-nav .header-datetime-text {
    margin-bottom: 30px;
    text-align: center;
}

.responsive-nav .header-rightSide .header-supportIcon {
    background-image: url(../Content/img/headset-icon.png);
    width: 33px; height: 31px;
    margin-right: 25px;
    background-repeat: no-repeat;
}

.responsive-nav .header-rightSide .header-envelopIcon {
    background-image: url(../Content/img/envelop.png);
    width: 37px; height: 38px;
    margin-right: 25px;
    background-repeat: no-repeat;
    position: relative;
    display: inline-block;
}

.responsive-nav .header-rightSide .header-envelopIcon:hover {
    background-image: url(../Content/img/envelopHov.png);
}

.responsive-nav .header-rightSide .header-icons {
    display: flex;
    justify-content: center;
    align-items: center;
    align-self: center;
}

.responsive-nav .header-rightSide .header-logoutIcon {
    background-image: url(../Content/img/logout-icon.png);
    width: 27px; height: 27px;
    background-repeat: no-repeat;
}

.responsive-nav .header-rightSide .header-homeIcon {
    background-image: url(../Content/img/billing-homeIcon.png);
    width: 33px; height: 31px;
    margin-right: 25px;
    background-repeat: no-repeat;
}

.nav-icon {
    width: 30px; height: 25px;
}

.nav-icon span {
    display: block;
    width: 100%;
    height: 5px;
    border-radius: 3px;
    margin-bottom: 5px;
    background: var(--ssp-primary);
}

#nav-icon span:last-of-type {
    margin-bottom: 0;
}

/* ============================================================
   16. Media Queries
   ============================================================ */
@media (max-width: 1024px) {
    #myAccounts, #billing, #myProducts, #myProfile, #purchase {
        overflow-x: hidden;
        overflow-y: auto;
    }
    .filter-box { margin-bottom: 0; }
}

@media (max-width: 991px) {
    .nav-icon { display: block; }
    #header .header-leftSide,
    #header .header-rightSide { display: none; }
    .filter-box { margin-top: 30px; }
}

/* ============================================================
   Orders Page — Table + Drawer
   ============================================================ */
.orders-page-subtitle {
    font-size: 13px;
    color: var(--ssp-text-muted);
    margin-top: 3px;
}

.orders-toolbar {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 18px;
}

.orders-search-wrap {
    position: relative;
    flex: 1;
    min-width: 180px;
    max-width: 300px;
}

.orders-search-wrap .search-icon {
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--ssp-text-muted);
    pointer-events: none;
    font-size: 16px;
}

.orders-search-wrap .search-input {
    width: 100%;
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    padding: 9px 12px 9px 34px;
    font-family: var(--ssp-font);
    font-size: 13px;
    color: var(--ssp-text);
    outline: none;
    transition: border-color 0.2s;
}

.orders-search-wrap .search-input::placeholder {
    color: var(--ssp-text-muted);
}

.orders-search-wrap .search-input:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(var(--ssp-primary-rgb), 0.08);
}

.orders-filter-tabs {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.orders-filter-tabs .otab {
    font-size: 12px;
    font-weight: 600;
    padding: 7px 14px;
    border-radius: 20px;
    border: 1px solid var(--ssp-border);
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    cursor: pointer;
    transition: all 0.14s;
    white-space: nowrap;
}

.orders-filter-tabs .otab:hover {
    color: var(--ssp-text);
    border-color: var(--ssp-primary);
}

.orders-filter-tabs .otab.active {
    background: rgba(var(--ssp-primary-rgb), 0.08);
    border-color: rgba(var(--ssp-primary-rgb), 0.35);
    color: var(--ssp-primary);
}

/* Orders Table */
.orders-table-wrap {
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius-lg);
    overflow: hidden;
    box-shadow: var(--ssp-shadow);
}

.orders-table {
    width: 100%;
    border-collapse: collapse;
}

.orders-table thead th {
    padding: 12px 18px;
    text-align: left;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.9px;
    text-transform: uppercase;
    color: var(--ssp-text-muted);
    background: var(--ssp-bg);
    border-bottom: 1px solid var(--ssp-border);
    white-space: nowrap;
}

.orders-table thead th:last-child {
    text-align: right;
}

.orders-table tbody tr {
    border-bottom: 1px solid var(--ssp-border-light);
    cursor: pointer;
    transition: background 0.12s;
}

.orders-table tbody tr:last-child {
    border-bottom: none;
}

.orders-table tbody tr:hover {
    background: var(--ssp-bg);
}

.orders-table tbody tr.selected {
    background: rgba(var(--ssp-primary-rgb), 0.05);
}

.orders-table tbody td {
    padding: 14px 18px;
    font-size: 13px;
    vertical-align: middle;
}

.orders-table tbody td:last-child {
    text-align: right;
}

.orders-table .order-num {
    font-weight: 700;
    font-size: 13px;
    color: var(--ssp-primary);
}

.orders-table .order-package {
    font-weight: 500;
    color: var(--ssp-text);
}

.orders-table .order-type-text {
    color: var(--ssp-text-secondary);
}

.orders-table .order-date {
    color: var(--ssp-text-secondary);
    white-space: nowrap;
}

/* Status badges */
.orders-table .o-badge {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 20px;
    white-space: nowrap;
}

.o-badge-review    { background: rgba(235,151,0,0.1);  color: #EB9700; }
.o-badge-active    { background: rgba(168,180,0,0.1);   color: var(--ssp-success); }
.o-badge-pending   { background: rgba(0,176,202,0.1);  color: var(--ssp-info); }
.o-badge-completed { background: rgba(74,77,78,0.1); color: #4A4D4E; }
.o-badge-cancelled { background: rgba(230,0,0,0.1);   color: var(--ssp-danger); }
.o-badge-new       { background: rgba(var(--ssp-primary-rgb),0.08); color: var(--ssp-primary); }
.o-badge-processing{ background: rgba(37,40,43,0.1);    color: var(--ssp-accent); }
.o-badge-failed    { background: rgba(230,0,0,0.1);   color: var(--ssp-danger); }
.o-badge-pending-payment { background: rgba(235,151,0,0.1); color: #EB9700; }

/* Responsive: hide columns */
.orders-col-type, .orders-col-modified { display: none; }
@media (min-width: 640px) { .orders-col-type { display: table-cell; } }
@media (min-width: 860px) { .orders-col-modified { display: table-cell; } }

.orders-table-empty {
    text-align: center;
    padding: 40px;
    color: var(--ssp-text-muted);
    font-size: 13px;
}

/* Order Drawer */
.order-drawer-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 1050;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s ease;
}

.order-drawer-overlay.open {
    opacity: 1;
    pointer-events: all;
}

.order-drawer {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: min(480px, 100vw);
    background: var(--ssp-bg-white);
    border-left: 1px solid var(--ssp-border);
    z-index: 1060;
    display: flex;
    flex-direction: column;
    transform: translateX(100%);
    transition: transform 0.28s cubic-bezier(0.4,0,0.2,1);
    overflow: hidden;
    box-shadow: -4px 0 24px rgba(0,0,0,0.12);
}

.order-drawer.open {
    transform: translateX(0);
}

.order-drawer-header {
    padding: 20px 22px;
    border-bottom: 1px solid var(--ssp-border);
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    flex-shrink: 0;
    background: var(--ssp-primary);
}

.order-drawer-header .drawer-title {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -0.3px;
    color: var(--ssp-text-white);
}

.order-drawer-header .drawer-sub {
    font-size: 12px;
    color: rgba(255,255,255,0.8);
    margin-top: 3px;
}

.order-drawer-close {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    border: 1px solid rgba(255,255,255,0.3);
    background: rgba(255,255,255,0.15);
    color: var(--ssp-text-white);
    font-size: 16px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.14s;
}

.order-drawer-close:hover {
    background: rgba(255,255,255,0.3);
}

.order-drawer-body {
    flex: 1;
    overflow-y: auto;
    padding: 22px;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.order-drawer-body .section-title {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--ssp-text-muted);
    margin-bottom: 12px;
}

.order-detail-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px;
}

.order-detail-cell {
    padding: 8px 0;
    border-bottom: 1px solid var(--ssp-border-light);
}

.order-detail-cell .detail-label {
    font-size: 11px;
    color: var(--ssp-text-muted);
    font-weight: 500;
    margin-bottom: 2px;
}

.order-detail-cell .detail-value {
    font-size: 14px;
    font-weight: 600;
    color: var(--ssp-text);
}

.order-detail-cell .detail-value.primary {
    color: var(--ssp-primary);
}

.order-service-item {
    background: var(--ssp-bg);
    border: 1px solid var(--ssp-border-light);
    border-left: 3px solid var(--ssp-primary);
    border-radius: 4px;
    padding: 8px 12px;
    font-size: 13px;
    margin-bottom: 6px;
}

.order-drawer-footer {
    padding: 16px 22px;
    border-top: 1px solid var(--ssp-border);
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
    flex-shrink: 0;
    background: var(--ssp-bg-white);
}

.order-drawer-footer .btn-drawer-primary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--ssp-font);
    font-size: 13px;
    font-weight: 600;
    padding: 9px 18px;
    border-radius: var(--ssp-border-radius);
    border: none;
    cursor: pointer;
    transition: all 0.14s ease;
    white-space: nowrap;
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
}

.order-drawer-footer .btn-drawer-primary:hover {
    background: var(--ssp-primary-dark);
    transform: translateY(-1px);
}

.order-drawer-footer .btn-drawer-primary svg {
    width: 16px;
    height: 16px;
    fill: #fff;
}

/* ============================================================
   Billing Page — Table + Drawer
   ============================================================ */

/* Outstanding Balance Banner */
.billing-banner {
    background: linear-gradient(135deg, rgba(var(--ssp-primary-rgb),0.08), rgba(var(--ssp-primary-rgb),0.03));
    border: 1px solid rgba(var(--ssp-primary-rgb),0.18);
    border-radius: var(--ssp-border-radius-lg);
    padding: 22px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 24px;
    position: relative;
    overflow: hidden;
}

.billing-banner::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(var(--ssp-primary-rgb),0.4), transparent);
}

.billing-banner .banner-label {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 1px;
    text-transform: uppercase;
    color: var(--ssp-text-muted);
    margin-bottom: 6px;
}

.billing-banner .banner-amount {
    font-size: clamp(22px,5vw,32px);
    font-weight: 800;
    letter-spacing: -0.8px;
    color: var(--ssp-text);
}

.billing-banner .banner-amount span {
    font-size: 0.5em;
    color: var(--ssp-text-secondary);
    vertical-align: super;
    margin-right: 3px;
    font-weight: 600;
}

.billing-banner .banner-due {
    font-size: 12px;
    color: var(--ssp-danger);
    margin-top: 5px;
    font-weight: 500;
}

.billing-banner .btn-pay {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-family: var(--ssp-font);
    font-size: 14px;
    font-weight: 700;
    padding: 12px 28px;
    border-radius: var(--ssp-border-radius);
    border: none;
    cursor: pointer;
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
    transition: all 0.15s;
    white-space: nowrap;
    text-decoration: none;
}

.billing-banner .btn-pay:hover {
    background: var(--ssp-primary-dark);
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(var(--ssp-primary-rgb),0.25);
    color: var(--ssp-text-white);
    text-decoration: none;
}

/* Billing Stats Row */
.billing-stats-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
    margin-bottom: 24px;
}

@media (min-width: 640px) {
    .billing-stats-row { grid-template-columns: repeat(4, 1fr); }
}

.billing-stat-cell {
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    padding: 14px 16px;
    box-shadow: var(--ssp-shadow);
}

.billing-stat-label {
    font-size: 10px;
    color: var(--ssp-text-muted);
    font-weight: 600;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.billing-stat-value {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: -0.3px;
    color: var(--ssp-text);
}

.billing-stat-value.text-success { color: var(--ssp-success); }
.billing-stat-value.text-danger { color: var(--ssp-danger); }

/* Billing Table */
.billing-table-wrap {
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius-lg);
    overflow: hidden;
    box-shadow: var(--ssp-shadow);
}

.billing-table {
    width: 100%;
    border-collapse: collapse;
}

.billing-table thead th {
    padding: 12px 18px;
    text-align: left;
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.9px;
    text-transform: uppercase;
    color: var(--ssp-text-muted);
    background: var(--ssp-bg);
    border-bottom: 1px solid var(--ssp-border);
    white-space: nowrap;
}

.billing-table thead th.text-right {
    text-align: right;
}

.billing-table tbody tr {
    border-bottom: 1px solid var(--ssp-border-light);
    cursor: pointer;
    transition: background 0.12s;
}

.billing-table tbody tr:last-child {
    border-bottom: none;
}

.billing-table tbody tr:hover {
    background: var(--ssp-bg);
}

.billing-table tbody tr.selected {
    background: rgba(var(--ssp-primary-rgb), 0.05);
}

.billing-table tbody td {
    padding: 15px 18px;
    font-size: 13px;
    vertical-align: middle;
}

.billing-table tbody td.text-right {
    text-align: right;
}

.billing-table .inv-id {
    font-weight: 700;
    color: var(--ssp-primary);
}

.billing-table .inv-date {
    color: var(--ssp-text-secondary);
    white-space: nowrap;
}

.billing-table .inv-amount {
    font-weight: 600;
    white-space: nowrap;
}

.billing-table .inv-amount.text-danger { color: var(--ssp-danger); }
.billing-table .inv-amount.text-success { color: var(--ssp-success); }

/* Billing status badges */
.billing-table .b-badge {
    display: inline-flex;
    font-size: 11px;
    font-weight: 600;
    padding: 3px 10px;
    border-radius: 20px;
    white-space: nowrap;
}

.b-badge-overdue { background: rgba(230,0,0,0.1); color: var(--ssp-danger); }
.b-badge-paid    { background: rgba(168,180,0,0.1);  color: var(--ssp-success); }
.b-badge-pending { background: rgba(235,151,0,0.1); color: #EB9700; }

/* Responsive hide */
.billing-col-due, .billing-col-acc { display: none; }
@media (min-width: 640px) { .billing-col-due { display: table-cell; } }
@media (min-width: 860px) { .billing-col-acc { display: table-cell; } }

.billing-table-empty {
    text-align: center;
    padding: 40px;
    color: var(--ssp-text-muted);
    font-size: 13px;
}

/* Billing Drawer (reuses order drawer base) */
.billing-drawer-footer .btn-drawer-ghost {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--ssp-font);
    font-size: 13px;
    font-weight: 600;
    padding: 9px 18px;
    border-radius: var(--ssp-border-radius);
    border: 1px solid var(--ssp-border);
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    cursor: pointer;
    transition: all 0.14s;
    white-space: nowrap;
    text-decoration: none;
}

.billing-drawer-footer .btn-drawer-ghost:hover {
    border-color: var(--ssp-primary);
    color: var(--ssp-text);
    transform: translateY(-1px);
    text-decoration: none;
}

/* ============================================================
   Profile Page
   ============================================================ */

/* Profile Header Card */
.profile-header-card {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 28px;
    padding: 24px;
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius-lg);
    box-shadow: var(--ssp-shadow);
}

.profile-avatar {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--ssp-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 22px;
    font-weight: 700;
    color: var(--ssp-text-white);
    flex-shrink: 0;
}

.profile-header-info h2 {
    font-size: 20px;
    font-weight: 700;
    color: var(--ssp-text);
    margin: 0 0 2px;
}

.profile-header-info p {
    font-size: 13px;
    color: var(--ssp-text-muted);
    margin: 0;
}

/* Profile Tabs */
.profile-tabs {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
    margin-bottom: 24px;
    border-bottom: 1px solid var(--ssp-border);
    padding-bottom: 12px;
}

.profile-tabs .ptab {
    font-size: 13px;
    font-weight: 600;
    padding: 9px 18px;
    border-radius: 20px;
    border: 1px solid var(--ssp-border);
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    cursor: pointer;
    transition: all 0.14s;
    white-space: nowrap;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    gap: 6px;
}

.profile-tabs .ptab:hover {
    color: var(--ssp-text);
    border-color: var(--ssp-primary);
    text-decoration: none;
}

.profile-tabs .ptab.active {
    background: rgba(var(--ssp-primary-rgb), 0.08);
    border-color: rgba(var(--ssp-primary-rgb), 0.35);
    color: var(--ssp-primary);
}

.profile-tabs .ptab .ptab-icon {
    font-size: 15px;
    line-height: 1;
}

/* Profile Tab Content */
.profile-tab-content {
    display: none;
}

.profile-tab-content.active {
    display: block;
}

/* Profile Section Card */
.profile-section {
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius-lg);
    padding: 24px;
    box-shadow: var(--ssp-shadow);
    margin-top: 20px;
    margin-bottom: 20px;
}

.profile-section-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--ssp-text);
    margin: 0 0 20px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--ssp-border-light);
}

/* Profile form fields */
.profile-field {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid var(--ssp-border-light);
}

.profile-field:last-child {
    border-bottom: none;
}

.profile-field-label {
    font-size: 13px;
    font-weight: 600;
    color: var(--ssp-text-muted);
    min-width: 140px;
}

.profile-field-value {
    font-size: 14px;
    font-weight: 600;
    color: var(--ssp-text);
    text-align: right;
}

/* Override partial form styles within profile sections */
.profile-section .form-control {
    border-radius: var(--ssp-border-radius);
    border: 1px solid var(--ssp-border);
    padding: 10px 14px;
    font-size: 14px;
    transition: border-color 0.2s;
}

.profile-section .form-control:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(var(--ssp-primary-rgb), 0.08);
}

.profile-section .form-control[readonly] {
    background: var(--ssp-bg);
    color: var(--ssp-text-secondary);
}

.profile-section .btn-green,
.profile-section .btn-signup-outline {
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
    border: none;
    border-radius: var(--ssp-border-radius);
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.profile-section .btn-green:hover,
.profile-section .btn-signup-outline:hover {
    background: var(--ssp-primary-dark);
    box-shadow: 0 4px 14px rgba(var(--ssp-primary-rgb), 0.2);
}

.profile-section .btn-cancel {
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    padding: 10px 24px;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
}

.profile-section .btn-cancel:hover {
    border-color: var(--ssp-primary);
    color: var(--ssp-text);
}

.profile-section .btn-grey {
    background: var(--ssp-bg);
    color: var(--ssp-text-secondary);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    padding: 8px 16px;
    font-size: 13px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s;
    text-decoration: none;
}

.profile-section .btn-grey:hover {
    border-color: var(--ssp-primary);
    color: var(--ssp-text);
}

/* Profile tables */
.profile-section .table {
    border-collapse: collapse;
    width: 100%;
    font-size: 13px;
}

.profile-section .table thead th {
    font-size: 10px;
    font-weight: 600;
    letter-spacing: 0.9px;
    text-transform: uppercase;
    color: var(--ssp-text-muted);
    background: var(--ssp-bg);
    padding: 10px 14px;
    border-bottom: 1px solid var(--ssp-border);
}

.profile-section .table tbody td {
    padding: 12px 14px;
    border-bottom: 1px solid var(--ssp-border-light);
    vertical-align: middle;
}

.profile-section .table tbody tr:last-child td {
    border-bottom: none;
}

.profile-section .table-bordered {
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    overflow: hidden;
}

.profile-section .table-striped tbody tr:nth-of-type(odd) {
    background: var(--ssp-bg);
}

/* Messages filter buttons */
.profile-section .myProfile-buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.profile-section .myProfile-buttons .btn-green {
    padding: 8px 16px;
    font-size: 12px;
    border-radius: 20px;
}

.profile-section .myProfile-buttons .btn-green.btn-selected {
    border-bottom: none;
    box-shadow: 0 0 0 2px rgba(var(--ssp-primary-rgb), 0.3);
}

@media (max-width: 640px) {
    .profile-header-card {
        flex-direction: column;
        text-align: center;
    }
    .profile-tabs {
        justify-content: center;
    }
}

/* Profile Form Elements */
.profile-form-group {
    margin-bottom: 20px;
}

.profile-form-label {
    display: block;
    font-size: 12px;
    font-weight: 600;
    color: var(--ssp-text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 6px;
}

.profile-form-input {
    width: 100%;
    max-width: 400px;
    height: 44px;
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    padding: 0 14px;
    font-size: 14px;
    font-family: var(--ssp-font);
    color: var(--ssp-text);
    background: var(--ssp-bg-white);
    transition: border-color 0.2s, box-shadow 0.2s;
}

.profile-form-input:focus {
    border-color: var(--ssp-primary);
    box-shadow: 0 0 0 3px rgba(var(--ssp-primary-rgb), 0.08);
    outline: none;
}

.profile-form-input[readonly] {
    background: var(--ssp-bg);
    color: var(--ssp-text-secondary);
    cursor: default;
}

.profile-form-input::placeholder {
    color: var(--ssp-text-muted);
}

.profile-input-wrap {
    position: relative;
    max-width: 400px;
}

.profile-input-wrap .profile-form-input {
    max-width: 100%;
}

.profile-input-wrap .hidePasswordIconStyle {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    cursor: pointer;
}

.profile-form-actions {
    display: flex;
    gap: 10px;
    margin-top: 24px;
}

.profile-btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--ssp-font);
    font-size: 14px;
    font-weight: 600;
    padding: 10px 24px;
    border-radius: var(--ssp-border-radius);
    border: none;
    cursor: pointer;
    background: var(--ssp-primary);
    color: var(--ssp-text-white);
    transition: all 0.2s;
}

.profile-btn-primary:hover {
    background: var(--ssp-primary-dark);
    box-shadow: 0 4px 14px rgba(var(--ssp-primary-rgb), 0.2);
    transform: translateY(-1px);
}

.profile-btn-outline {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: var(--ssp-font);
    font-size: 14px;
    font-weight: 600;
    padding: 10px 24px;
    border-radius: var(--ssp-border-radius);
    border: 1px solid var(--ssp-border);
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    cursor: pointer;
    transition: all 0.2s;
}

.profile-btn-outline:hover {
    border-color: var(--ssp-primary);
    color: var(--ssp-text);
}

/* Syncfusion DatePicker inside drawer/forms */
.profile-datepicker.e-input-group {
    border: 1px solid var(--ssp-border) !important;
    border-radius: var(--ssp-border-radius) !important;
    height: 44px !important;
    padding: 0 14px !important;
    font-family: var(--ssp-font) !important;
    font-size: 14px !important;
}

.profile-datepicker.e-input-group:hover,
.profile-datepicker.e-input-group.e-input-focus {
    border-color: var(--ssp-primary) !important;
}

.profile-datepicker.e-input-group .e-input {
    font-family: var(--ssp-font) !important;
    font-size: 14px !important;
    color: var(--ssp-text) !important;
}

/* Settings toggle */
.profile-toggle-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 400px;
    padding: 12px 0;
}

.profile-toggle-checkbox {
    width: 20px;
    height: 20px;
    accent-color: var(--ssp-primary);
    cursor: pointer;
}

/* Message action buttons */
.msg-action-btn {
    display: inline-flex;
    align-items: center;
    font-size: 11px;
    font-weight: 600;
    padding: 4px 12px;
    border-radius: 20px;
    text-decoration: none;
    transition: all 0.14s;
    cursor: pointer;
}

.msg-action-read {
    background: rgba(var(--ssp-primary-rgb), 0.08);
    color: var(--ssp-primary);
}

.msg-action-read:hover {
    background: rgba(var(--ssp-primary-rgb), 0.15);
    text-decoration: none;
    color: var(--ssp-primary);
}

.msg-action-unread {
    background: var(--ssp-bg);
    color: var(--ssp-text-secondary);
    border: 1px solid var(--ssp-border);
}

.msg-action-unread:hover {
    border-color: var(--ssp-primary);
    color: var(--ssp-text);
    text-decoration: none;
}

/* Message filter tabs */
.msg-filter-tabs {
    margin-bottom: 0;
}

/* ============================================================
   DataTables Theme Override (Profile History & Messages)
   Targets both DT 2.x (dt-*) and legacy (dataTables_*) classes
   ============================================================ */

/* Search / filter input */
#myProfile .dt-search,
.profile-section .dt-search,
#myProfile .dataTables_filter,
.profile-section .dataTables_filter {
    margin-bottom: 0;
}

#myProfile .dt-search label,
.profile-section .dt-search label,
#myProfile .dataTables_filter label,
.profile-section .dataTables_filter label {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--ssp-text-secondary) !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

#myProfile .dt-search input,
.profile-section .dt-search input,
#myProfile .dataTables_filter input,
.profile-section .dataTables_filter input {
    border: 1px solid var(--ssp-border) !important;
    border-radius: var(--ssp-border-radius) !important;
    padding: 8px 14px !important;
    font-size: 13px !important;
    font-family: var(--ssp-font) !important;
    color: var(--ssp-text) !important;
    outline: none !important;
    transition: border-color 0.2s;
    min-width: 200px;
    height: 38px !important;
}

#myProfile .dt-search input:focus,
.profile-section .dt-search input:focus,
#myProfile .dataTables_filter input:focus,
.profile-section .dataTables_filter input:focus {
    border-color: var(--ssp-primary) !important;
    box-shadow: 0 0 0 3px rgba(var(--ssp-primary-rgb), 0.08) !important;
}

/* Length menu */
#myProfile .dt-length,
.profile-section .dt-length,
#myProfile .dataTables_length,
.profile-section .dataTables_length {
    margin-bottom: 0;
}

#myProfile .dt-length label,
.profile-section .dt-length label,
#myProfile .dataTables_length label,
.profile-section .dataTables_length label {
    font-size: 13px !important;
    font-weight: 500 !important;
    color: var(--ssp-text-secondary) !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    margin: 0 !important;
}

#myProfile .dt-length select,
.profile-section .dt-length select,
#myProfile .dataTables_length select,
.profile-section .dataTables_length select {
    border: 1px solid var(--ssp-border) !important;
    border-radius: var(--ssp-border-radius) !important;
    padding: 6px 30px 6px 10px !important;
    font-size: 13px !important;
    font-family: var(--ssp-font) !important;
    color: var(--ssp-text) !important;
    background: var(--ssp-bg-white) !important;
    outline: none !important;
    cursor: pointer;
    height: 38px !important;
    transition: border-color 0.2s;
}

#myProfile .dt-length select:focus,
.profile-section .dt-length select:focus,
#myProfile .dataTables_length select:focus,
.profile-section .dataTables_length select:focus {
    border-color: var(--ssp-primary) !important;
}

/* Info text (Showing X to Y of Z) */
#myProfile .dt-info,
.profile-section .dt-info,
#myProfile .dataTables_info,
.profile-section .dataTables_info {
    font-size: 13px !important;
    color: var(--ssp-text-secondary) !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Pagination — DT 2.x */
#myProfile .dt-paging,
.profile-section .dt-paging {
    padding: 12px 0;
    display: flex;
    justify-content: flex-end;
    gap: 4px;
    flex-wrap: wrap;
}

#myProfile .dt-paging .dt-paging-button,
.profile-section .dt-paging .dt-paging-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    height: 34px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: var(--ssp-font);
    color: var(--ssp-text-secondary) !important;
    background: var(--ssp-bg-white) !important;
    border: 1px solid var(--ssp-border) !important;
    border-radius: var(--ssp-border-radius) !important;
    cursor: pointer;
    transition: all 0.14s;
    text-decoration: none !important;
    background-image: none !important;
    box-shadow: none !important;
}

#myProfile .dt-paging .dt-paging-button:hover,
.profile-section .dt-paging .dt-paging-button:hover {
    background: var(--ssp-bg) !important;
    border-color: var(--ssp-primary) !important;
    color: var(--ssp-primary) !important;
    box-shadow: none !important;
}

#myProfile .dt-paging .dt-paging-button.current,
.profile-section .dt-paging .dt-paging-button.current,
#myProfile .dt-paging .dt-paging-button.current:hover,
.profile-section .dt-paging .dt-paging-button.current:hover {
    background: var(--ssp-primary) !important;
    border-color: var(--ssp-primary) !important;
    color: var(--ssp-text-white) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

#myProfile .dt-paging .dt-paging-button.disabled,
.profile-section .dt-paging .dt-paging-button.disabled,
#myProfile .dt-paging .dt-paging-button.disabled:hover,
.profile-section .dt-paging .dt-paging-button.disabled:hover,
#myProfile .dt-paging .dt-paging-button.disabled:active,
.profile-section .dt-paging .dt-paging-button.disabled:active {
    opacity: 0.4 !important;
    cursor: default !important;
    pointer-events: none;
    background: var(--ssp-bg-white) !important;
    color: var(--ssp-text-muted) !important;
    border-color: var(--ssp-border) !important;
    box-shadow: none !important;
}

#myProfile .dt-paging .dt-paging-button:active,
.profile-section .dt-paging .dt-paging-button:active {
    background: rgba(var(--ssp-primary-rgb), 0.12) !important;
    box-shadow: none !important;
}

#myProfile .dt-paging .ellipsis,
.profile-section .dt-paging .ellipsis {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    height: 34px !important;
    font-size: 12px !important;
    color: var(--ssp-text-muted) !important;
}

/* Pagination — Legacy DT classes */
#myProfile .dataTables_paginate,
.profile-section .dataTables_paginate {
    padding: 12px 0;
    display: flex;
    justify-content: flex-end;
    gap: 4px;
    flex-wrap: wrap;
}

#myProfile .dataTables_paginate .paginate_button,
.profile-section .dataTables_paginate .paginate_button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 34px !important;
    height: 34px !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    font-family: var(--ssp-font);
    color: var(--ssp-text-secondary) !important;
    background: var(--ssp-bg-white) !important;
    border: 1px solid var(--ssp-border) !important;
    border-radius: var(--ssp-border-radius) !important;
    cursor: pointer;
    transition: all 0.14s;
    text-decoration: none !important;
    background-image: none !important;
    box-shadow: none !important;
}

#myProfile .dataTables_paginate .paginate_button:hover,
.profile-section .dataTables_paginate .paginate_button:hover {
    background: var(--ssp-bg) !important;
    border-color: var(--ssp-primary) !important;
    color: var(--ssp-primary) !important;
    box-shadow: none !important;
}

#myProfile .dataTables_paginate .paginate_button.current,
.profile-section .dataTables_paginate .paginate_button.current,
#myProfile .dataTables_paginate .paginate_button.current:hover,
.profile-section .dataTables_paginate .paginate_button.current:hover {
    background: var(--ssp-primary) !important;
    border-color: var(--ssp-primary) !important;
    color: var(--ssp-text-white) !important;
    font-weight: 700 !important;
    box-shadow: none !important;
}

#myProfile .dataTables_paginate .paginate_button.disabled,
.profile-section .dataTables_paginate .paginate_button.disabled,
#myProfile .dataTables_paginate .paginate_button.disabled:hover,
.profile-section .dataTables_paginate .paginate_button.disabled:hover {
    opacity: 0.4 !important;
    cursor: default !important;
    pointer-events: none;
    background: var(--ssp-bg-white) !important;
    color: var(--ssp-text-muted) !important;
    border-color: var(--ssp-border) !important;
    box-shadow: none !important;
}

#myProfile .dataTables_paginate .paginate_button:active,
.profile-section .dataTables_paginate .paginate_button:active {
    background: rgba(var(--ssp-primary-rgb), 0.12) !important;
    box-shadow: none !important;
}

/* Sorting icons */
#myProfile .orders-table thead th.sorting,
.profile-section .orders-table thead th.sorting,
#myProfile .orders-table thead th.sorting_asc,
.profile-section .orders-table thead th.sorting_asc,
#myProfile .orders-table thead th.sorting_desc,
.profile-section .orders-table thead th.sorting_desc,
#myProfile .orders-table thead th.dt-orderable-asc,
.profile-section .orders-table thead th.dt-orderable-asc,
#myProfile .orders-table thead th.dt-orderable-desc,
.profile-section .orders-table thead th.dt-orderable-desc {
    cursor: pointer;
    position: relative;
    padding-right: 24px !important;
}

/* Hide default DT sort icons */
#myProfile .orders-table thead th .dt-column-order,
.profile-section .orders-table thead th .dt-column-order {
    display: none !important;
}

/* DataTables wrapper spacing */
#myProfile .dt-container,
.profile-section .dt-container,
#myProfile .dataTables_wrapper,
.profile-section .dataTables_wrapper {
    padding: 0;
}

#myProfile .dt-container > .row,
.profile-section .dt-container > .row,
#myProfile .dataTables_wrapper > .row,
.profile-section .dataTables_wrapper > .row {
    margin: 0;
    align-items: center;
}

#myProfile .dt-container > .row > div,
.profile-section .dt-container > .row > div,
#myProfile .dataTables_wrapper > .row > div,
.profile-section .dataTables_wrapper > .row > div {
    padding: 4px 0;
}

/* (DT layout grid rules consolidated below) */

/* Empty table message */
#myProfile .dt-empty,
.profile-section .dt-empty,
#myProfile .dataTables_empty,
.profile-section .dataTables_empty {
    text-align: center;
    padding: 40px !important;
    color: var(--ssp-text-muted) !important;
    font-size: 13px !important;
}

/* ============================================================
   Profile — Reset legacy #myProfile styles that break new layout
   ============================================================ */

/* Stop old ul styles from affecting profile-tabs, DataTables, etc. */
#myProfile .profile-tabs {
    flex-direction: row !important;
    border: 0 !important;
    background: none !important;
}

#myProfile .profile-section ul {
    display: initial;
    flex-direction: initial;
}

#myProfile .profile-section ul li {
    width: auto;
    max-width: none;
    margin-left: 0;
    margin-bottom: 0;
    padding-left: 0;
}

#myProfile .profile-section ul li a {
    padding: initial;
    font-size: initial;
    font-weight: initial;
    line-height: initial;
    border-radius: initial;
    color: initial;
}

/* Fix DataTables pagination ul/li */
#myProfile .dt-paging,
.profile-section .dt-paging {
    flex-direction: row !important;
}

#myProfile .dt-paging button,
.profile-section .dt-paging button {
    width: auto !important;
    max-width: none !important;
    margin-left: 0 !important;
    padding-left: initial !important;
}

#myProfile .dataTables_paginate,
.profile-section .dataTables_paginate {
    flex-direction: row !important;
}

#myProfile .dataTables_paginate a,
.profile-section .dataTables_paginate a,
#myProfile .dataTables_paginate span a,
.profile-section .dataTables_paginate span a {
    padding: 0 10px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    line-height: 34px !important;
    color: var(--ssp-text-secondary) !important;
    border-radius: var(--ssp-border-radius) !important;
}

/* Subtitle spacing */
#myProfile .orders-page-subtitle {
    margin-top: 20px;
    margin-bottom: 20px;
}

/* Profile section breathing room */
#myProfile .profile-section {
    margin-bottom: 0;
}

/* Table wrap inside profile-section — remove double border */
.profile-section .orders-table-wrap {
    border: none;
    box-shadow: none;
    border-radius: 0;
    overflow: visible;
}

/* DT layout rows — proper flex spacing */
#myProfile .dt-layout-row,
.profile-section .dt-layout-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    flex-wrap: wrap !important;
    padding: 10px 0 !important;
    margin: 0 !important;
    gap: 12px;
}

#myProfile .dt-layout-row:first-child,
.profile-section .dt-layout-row:first-child {
    padding-top: 4px !important;
    padding-bottom: 14px !important;
    border-bottom: 1px solid var(--ssp-border-light);
    margin-bottom: 0 !important;
}

#myProfile .dt-layout-row:last-child,
.profile-section .dt-layout-row:last-child {
    border-top: 1px solid var(--ssp-border-light);
    padding-top: 14px !important;
    padding-bottom: 4px !important;
    margin-top: 0 !important;
}

/* DT 2.x layout cells */
#myProfile .dt-layout-cell,
.profile-section .dt-layout-cell {
    padding: 0 !important;
    flex-shrink: 0;
}

/* Table inside profile should have proper spacing */
#myProfile .orders-table thead th,
.profile-section .orders-table thead th {
    padding: 12px 18px !important;
}

#myProfile .orders-table tbody td,
.profile-section .orders-table tbody td {
    padding: 14px 18px !important;
}

/* ============================================================
   Management Dashboard
   ============================================================ */
.mgmt-welcome {
    padding: 24px 0 8px;
}

.mgmt-welcome h2 {
    font-size: 22px;
    font-weight: 700;
    color: var(--ssp-text);
    margin: 0 0 4px;
}

.mgmt-cards {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 16px;
    padding: 16px 0 40px;
}

.mgmt-card {
    display: flex;
    align-items: center;
    gap: 16px;
    background: var(--ssp-bg-white);
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius-lg);
    padding: 20px;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: var(--ssp-shadow);
}

.mgmt-card:hover {
    border-color: var(--ssp-primary);
    box-shadow: 0 4px 16px rgba(var(--ssp-primary-rgb), 0.12);
    transform: translateY(-2px);
    text-decoration: none;
}

.mgmt-card-icon {
    width: 48px;
    height: 48px;
    background: rgba(var(--ssp-primary-rgb), 0.06);
    border-radius: var(--ssp-border-radius);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mgmt-card-icon img {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.mgmt-card-body {
    flex: 1;
    min-width: 0;
}

.mgmt-card-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--ssp-text);
    margin: 0 0 2px;
}

.mgmt-card:hover .mgmt-card-title {
    color: var(--ssp-primary);
}

.mgmt-card-text {
    font-size: 12px;
    color: var(--ssp-text-muted);
    margin: 0;
}

@media (max-width: 640px) {
    .mgmt-cards {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   Purchase Page
   ============================================================ */
.purchase-map-wrap {
    margin-bottom: 20px;
    border-radius: var(--ssp-border-radius);
    overflow: hidden;
    border: 1px solid var(--ssp-border);
}

.purchase-map-wrap .mod-map-container {
    height: 350px;
    width: 100%;
}

.purchase-search-wrap {
    max-width: 500px;
    margin: 0 auto;
    text-align: center;
}

.purchase-search-wrap .profile-form-label {
    text-align: center;
}

.purchase-search-wrap .mod-search {
    margin: 0 auto;
}

/* Installation Address Card (shared across all order flows) */
.install-address-card {
    border: 1px solid var(--ssp-border, #4A4D4E);
    border-radius: var(--ssp-border-radius-lg, 10px);
    overflow: hidden;
    margin-bottom: 24px;
    background: var(--ssp-bg-white, #ffffff);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.install-address-header {
    background: var(--ssp-primary, #e60000);
    color: #fff;
    padding: 12px 20px;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
    letter-spacing: 0.3px;
}

.install-address-body {
    padding: 20px;
}

.install-address-row {
    padding: 8px 0;
}

.install-address-row--full {
    padding-bottom: 14px;
    margin-bottom: 8px;
    border-bottom: 1px solid var(--ssp-border-light, #4A4D4E);
}

.install-address-label {
    display: block;
    font-size: 10px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    color: var(--ssp-text-muted, #4A4D4E);
    margin-bottom: 3px;
}

.install-address-value {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--ssp-text, #25282B);
    word-break: break-word;
    line-height: 1.4;
}

.install-address-pairs {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 4px 24px;
}

.install-address-pairs .install-address-row {
    border-bottom: none;
    padding: 8px 0;
}

@media (max-width: 768px) {
    .install-address-pairs {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    .install-address-pairs {
        grid-template-columns: 1fr;
    }
}

.install-address-date {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid var(--ssp-border-light, #4A4D4E);
}

.install-address-date-input {
    width: 100%;
    max-width: 280px;
    height: 40px;
    border: 1px solid var(--ssp-border, #4A4D4E);
    border-radius: var(--ssp-border-radius, 8px);
    padding: 0 12px;
    font-family: var(--ssp-font, 'Open Sans', sans-serif);
    font-size: 14px;
    color: var(--ssp-text, #25282B);
    margin-top: 4px;
}

.install-address-date-input:focus {
    border-color: var(--ssp-primary, #e60000);
    outline: none;
    box-shadow: 0 0 0 3px rgba(230, 0, 0, 0.08);
}

/* Only show invalid state after user interaction */
.install-address-date-input:invalid {
    border-color: var(--ssp-border, #4A4D4E);
    box-shadow: none;
}

.install-address-date-input:user-invalid,
form.was-validated .install-address-date-input:invalid {
    border-color: var(--ssp-danger, #E60000);
    box-shadow: 0 0 0 3px rgba(230, 0, 0, 0.08);
}

.purchase-products-section {
    margin-top: 28px;
    padding-bottom: 40px;
}

/* Location Details Card */
.purchase-location-card {
    margin-top: 20px;
    border: 1px solid rgba(230, 0, 0, 0.3);
    border-radius: var(--ssp-border-radius-lg);
    overflow: hidden;
    background: #fff;
}

.purchase-location-badge {
    background: var(--ssp-primary);
    color: #fff;
    padding: 10px 20px;
    font-size: 14px;
    font-weight: 700;
    display: flex;
    align-items: center;
    gap: 8px;
}

.purchase-location-body {
    padding: 16px 20px;
}

.purchase-location-row {
    padding: 8px 0;
    border-bottom: 1px solid var(--ssp-border-light);
}

.purchase-location-row:last-child {
    border-bottom: none;
}

.purchase-location-row--full {
    padding-bottom: 12px;
    margin-bottom: 4px;
}

.purchase-location-label {
    display: block;
    font-size: 10px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--ssp-text-muted);
    margin-bottom: 2px;
}

.purchase-location-value {
    display: block;
    font-size: 14px;
    font-weight: 600;
    color: var(--ssp-text);
    word-break: break-word;
}

.purchase-location-pairs {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 24px;
}

.purchase-location-pairs .purchase-location-row {
    border-bottom: none;
    padding: 6px 0;
}

@media (max-width: 768px) {
    .purchase-location-pairs {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 480px) {
    .purchase-location-pairs {
        grid-template-columns: 1fr;
    }
}

/* Terms & Conditions checkbox grid */
.purchase-tc-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
}

@media (max-width: 640px) {
    .purchase-tc-grid {
        grid-template-columns: 1fr;
    }
}

.purchase-tc-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 16px;
    background: var(--ssp-bg);
    border: 1px solid var(--ssp-border-light);
    border-radius: var(--ssp-border-radius);
    font-size: 13px;
}

.purchase-tc-item a {
    flex: 1;
}

/* Purchase — User Toggle (Existing / New) */
.purchase-user-toggle {
    display: flex;
    gap: 0;
    margin-bottom: 20px;
    border: 1px solid var(--ssp-border);
    border-radius: var(--ssp-border-radius);
    overflow: hidden;
    max-width: 320px;
}

.purchase-toggle-btn {
    flex: 1;
    padding: 10px 20px;
    font-family: var(--ssp-font);
    font-size: 13px;
    font-weight: 600;
    border: none;
    background: var(--ssp-bg-white);
    color: var(--ssp-text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    text-align: center;
}

.purchase-toggle-btn + .purchase-toggle-btn {
    border-left: 1px solid var(--ssp-border);
}

.purchase-toggle-btn.active {
    background: var(--ssp-primary);
    color: #fff;
}

.purchase-toggle-btn:hover:not(.active) {
    background: var(--ssp-bg);
}

/* Purchase — Form Grid */
.purchase-form-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 24px;
}

@media (max-width: 640px) {
    .purchase-form-grid {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   jQuery UI Datepicker — Vodacom Theme
   ============================================================ */
.ui-datepicker {
    background: #fff;
    border: 1px solid var(--ssp-border, #4A4D4E);
    border-radius: 10px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    padding: 0;
    width: 300px;
    font-family: var(--ssp-font, 'Open Sans', sans-serif);
    z-index: 1060 !important;
    overflow: hidden;
}

.ui-datepicker-header {
    background: var(--ssp-primary, #e60000);
    color: #fff;
    border: none;
    border-radius: 0;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 700;
}

.ui-datepicker-header .ui-datepicker-title {
    font-size: 15px;
    font-weight: 700;
    color: #fff;
    display: flex;
    align-items: center;
    gap: 6px;
}

.ui-datepicker-header .ui-datepicker-title select {
    background: rgba(255, 255, 255, 0.2);
    color: #fff;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 4px;
    padding: 2px 4px;
    font-size: 13px;
    font-weight: 600;
    font-family: inherit;
    cursor: pointer;
    outline: none;
}

.ui-datepicker-header .ui-datepicker-title select option {
    background: #fff;
    color: #25282B;
}

.ui-datepicker-header .ui-datepicker-prev,
.ui-datepicker-header .ui-datepicker-next {
    cursor: pointer;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.15);
    border: none;
    transition: background 0.15s;
    top: auto;
    position: relative;
}

.ui-datepicker-header .ui-datepicker-prev:hover,
.ui-datepicker-header .ui-datepicker-next:hover {
    background: rgba(255, 255, 255, 0.3);
}

.ui-datepicker-header .ui-datepicker-prev span,
.ui-datepicker-header .ui-datepicker-next span {
    display: none;
}

.ui-datepicker-header .ui-datepicker-prev::after {
    content: '\2039';
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.ui-datepicker-header .ui-datepicker-next::after {
    content: '\203A';
    color: #fff;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
}

.ui-datepicker-calendar {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    padding: 8px;
}

.ui-datepicker-calendar thead th {
    padding: 8px 0;
    text-align: center;
    font-size: 11px;
    font-weight: 700;
    color: var(--ssp-text-muted, #4A4D4E);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border: none;
    background: none;
}

.ui-datepicker-calendar tbody td {
    padding: 2px;
    text-align: center;
    border: none;
    background: none;
}

.ui-datepicker-calendar tbody td a,
.ui-datepicker-calendar tbody td span {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    margin: 0 auto;
    border-radius: 50%;
    font-size: 13px;
    font-weight: 500;
    color: var(--ssp-text, #25282B);
    text-decoration: none;
    transition: all 0.12s;
    border: none;
    background: none;
}

.ui-datepicker-calendar tbody td a:hover {
    background: rgba(var(--ssp-primary-rgb, 230, 0, 0), 0.08);
    color: var(--ssp-primary, #e60000);
}

.ui-datepicker-calendar tbody td .ui-state-active {
    background: var(--ssp-primary, #e60000) !important;
    color: #fff !important;
    font-weight: 700;
}

.ui-datepicker-calendar tbody td .ui-state-highlight {
    background: rgba(var(--ssp-primary-rgb, 230, 0, 0), 0.06);
    color: var(--ssp-primary, #e60000);
    font-weight: 700;
}

.ui-datepicker-calendar tbody td.ui-datepicker-unselectable span {
    color: #4A4D4E;
    cursor: default;
}

.ui-datepicker-calendar tbody td.ui-datepicker-today a {
    font-weight: 700;
    color: var(--ssp-primary, #e60000);
}

/* Remove default jQuery UI background images/sprites */
.ui-datepicker .ui-widget-header,
.ui-datepicker .ui-state-default,
.ui-datepicker .ui-state-hover,
.ui-datepicker .ui-state-active {
    background-image: none !important;
}

.ui-datepicker .ui-corner-all {
    border-radius: 0;
}

/* ── Homepage footer ── */
.hp-footer {
    background-color: #4A4D4E;
    color: rgba(255, 255, 255, 0.7);
    font-size: 13px;
    padding: 14px 24px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.hp-footer-links {
    display: flex;
    align-items: center;
    gap: 32px;
    flex-wrap: wrap;
}

.hp-footer-links a {
    color: rgba(255, 255, 255, 0.7);
    text-decoration: none;
    white-space: nowrap;
}

.hp-footer-links a:hover {
    color: #fff;
    text-decoration: underline;
}

.hp-footer-copyright {
    color: rgba(255, 255, 255, 0.7);
    white-space: nowrap;
}

/* ============================================================
   Shared alert / banner components (Vodafone palette)
   Black text on bright fills (Spring Green / Fresh Orange),
   white on Red / Aqua Blue.
   ============================================================ */
.ssp-alert {
    border-radius: var(--ssp-border-radius, 8px);
    padding: 14px 20px;
    margin: 16px auto;
    max-width: 1100px;
    font-size: 0.95rem;
    font-weight: 600;
}
.ssp-alert--success { background: var(--ssp-success, #A8B400); color: #000000; border: 1px solid var(--ssp-success, #A8B400); }
.ssp-alert--error   { background: var(--ssp-danger, #E60000); color: #FFFFFF; border: 1px solid var(--ssp-danger-dark, #820000); }
.ssp-alert--info    { background: var(--ssp-info, #00B0CA); color: #FFFFFF; border: 1px solid var(--ssp-info-dark, #007C92); }
.ssp-alert--warning { background: var(--ssp-warning, #EB9700); color: #000000; border: 1px solid var(--ssp-warning, #EB9700); }
.ssp-alert--brand   { background: var(--ssp-primary, #E60000); color: #FFFFFF; border: 1px solid var(--ssp-primary-dark, #820000); text-align: center; box-shadow: 0 2px 6px rgba(230, 0, 0, 0.25); }

